1# SPDX-License-Identifier: GPL-2.0 2# Makefile for Linux PHY drivers and MDIO bus drivers 3 4libphy-y := phy.o phy-c45.o phy-core.o phy_device.o 5mdio-bus-y += mdio_bus.o mdio_device.o 6 7ifdef CONFIG_MDIO_DEVICE 8obj-y += mdio-boardinfo.o 9endif 10 11# PHYLIB implies MDIO_DEVICE, in that case, we have a bunch of circular 12# dependencies that does not make it possible to split mdio-bus objects into a 13# dedicated loadable module, so we bundle them all together into libphy.ko 14ifdef CONFIG_PHYLIB 15libphy-y += $(mdio-bus-y) 16else 17obj-$(CONFIG_MDIO_DEVICE) += mdio-bus.o 18endif 19libphy-$(CONFIG_SWPHY) += swphy.o 20libphy-$(CONFIG_LED_TRIGGER_PHY) += phy_led_triggers.o 21 22obj-$(CONFIG_PHYLINK) += phylink.o 23obj-$(CONFIG_PHYLIB) += libphy.o 24 25obj-$(CONFIG_MDIO_BCM_IPROC) += mdio-bcm-iproc.o 26obj-$(CONFIG_MDIO_BCM_UNIMAC) += mdio-bcm-unimac.o 27obj-$(CONFIG_MDIO_BITBANG) += mdio-bitbang.o 28obj-$(CONFIG_MDIO_BUS_MUX) += mdio-mux.o 29obj-$(CONFIG_MDIO_BUS_MUX_BCM_IPROC) += mdio-mux-bcm-iproc.o 30obj-$(CONFIG_MDIO_BUS_MUX_GPIO) += mdio-mux-gpio.o 31obj-$(CONFIG_MDIO_BUS_MUX_MESON_G12A) += mdio-mux-meson-g12a.o 32obj-$(CONFIG_MDIO_BUS_MUX_MMIOREG) += mdio-mux-mmioreg.o 33obj-$(CONFIG_MDIO_BUS_MUX_MULTIPLEXER) += mdio-mux-multiplexer.o 34obj-$(CONFIG_MDIO_CAVIUM) += mdio-cavium.o 35obj-$(CONFIG_MDIO_GPIO) += mdio-gpio.o 36obj-$(CONFIG_MDIO_HISI_FEMAC) += mdio-hisi-femac.o 37obj-$(CONFIG_MDIO_I2C) += mdio-i2c.o 38obj-$(CONFIG_MDIO_MOXART) += mdio-moxart.o 39obj-$(CONFIG_MDIO_MSCC_MIIM) += mdio-mscc-miim.o 40obj-$(CONFIG_MDIO_OCTEON) += mdio-octeon.o 41obj-$(CONFIG_MDIO_SUN4I) += mdio-sun4i.o 42obj-$(CONFIG_MDIO_THUNDER) += mdio-thunder.o 43obj-$(CONFIG_MDIO_XGENE) += mdio-xgene.o 44 45obj-$(CONFIG_SFP) += sfp.o 46sfp-obj-$(CONFIG_SFP) += sfp-bus.o 47obj-y += $(sfp-obj-y) $(sfp-obj-m) 48 49obj-$(CONFIG_AMD_PHY) += amd.o 50aquantia-objs += aquantia_main.o 51ifdef CONFIG_HWMON 52aquantia-objs += aquantia_hwmon.o 53endif 54obj-$(CONFIG_AQUANTIA_PHY) += aquantia.o 55obj-$(CONFIG_ASIX_PHY) += asix.o 56obj-$(CONFIG_AT803X_PHY) += at803x.o 57obj-$(CONFIG_BCM63XX_PHY) += bcm63xx.o 58obj-$(CONFIG_BCM7XXX_PHY) += bcm7xxx.o 59obj-$(CONFIG_BCM87XX_PHY) += bcm87xx.o 60obj-$(CONFIG_BCM_CYGNUS_PHY) += bcm-cygnus.o 61obj-$(CONFIG_BCM_NET_PHYLIB) += bcm-phy-lib.o 62obj-$(CONFIG_BROADCOM_PHY) += broadcom.o 63obj-$(CONFIG_CICADA_PHY) += cicada.o 64obj-$(CONFIG_CORTINA_PHY) += cortina.o 65obj-$(CONFIG_DAVICOM_PHY) += davicom.o 66obj-$(CONFIG_DP83640_PHY) += dp83640.o 67obj-$(CONFIG_DP83822_PHY) += dp83822.o 68obj-$(CONFIG_DP83TC811_PHY) += dp83tc811.o 69obj-$(CONFIG_DP83848_PHY) += dp83848.o 70obj-$(CONFIG_DP83867_PHY) += dp83867.o 71obj-$(CONFIG_FIXED_PHY) += fixed_phy.o 72obj-$(CONFIG_ICPLUS_PHY) += icplus.o 73obj-$(CONFIG_INTEL_XWAY_PHY) += intel-xway.o 74obj-$(CONFIG_LSI_ET1011C_PHY) += et1011c.o 75obj-$(CONFIG_LXT_PHY) += lxt.o 76obj-$(CONFIG_MARVELL_PHY) += marvell.o 77obj-$(CONFIG_MARVELL_10G_PHY) += marvell10g.o 78obj-$(CONFIG_MESON_GXL_PHY) += meson-gxl.o 79obj-$(CONFIG_MICREL_KS8995MA) += spi_ks8995.o 80obj-$(CONFIG_MICREL_PHY) += micrel.o 81obj-$(CONFIG_MICROCHIP_PHY) += microchip.o 82obj-$(CONFIG_MICROCHIP_T1_PHY) += microchip_t1.o 83obj-$(CONFIG_MICROSEMI_PHY) += mscc.o 84obj-$(CONFIG_NATIONAL_PHY) += national.o 85obj-$(CONFIG_QSEMI_PHY) += qsemi.o 86obj-$(CONFIG_REALTEK_PHY) += realtek.o 87obj-$(CONFIG_RENESAS_PHY) += uPD60620.o 88obj-$(CONFIG_ROCKCHIP_PHY) += rockchip.o 89obj-$(CONFIG_SMSC_PHY) += smsc.o 90obj-$(CONFIG_STE10XP) += ste10Xp.o 91obj-$(CONFIG_TERANETICS_PHY) += teranetics.o 92obj-$(CONFIG_VITESSE_PHY) += vitesse.o 93obj-$(CONFIG_XILINX_GMII2RGMII) += xilinx_gmii2rgmii.o 94