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