1# SPDX-License-Identifier: GPL-2.0 2# Makefile for Linux PHY 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) 17# the stubs are built-in whenever PHYLIB is built-in or module 18obj-y += stubs.o 19else 20obj-$(CONFIG_MDIO_DEVICE) += mdio-bus.o 21endif 22obj-$(CONFIG_MDIO_DEVRES) += mdio_devres.o 23libphy-$(CONFIG_SWPHY) += swphy.o 24libphy-$(CONFIG_LED_TRIGGER_PHY) += phy_led_triggers.o 25 26obj-$(CONFIG_PHYLINK) += phylink.o 27obj-$(CONFIG_PHYLIB) += libphy.o 28 29obj-$(CONFIG_NETWORK_PHY_TIMESTAMPING) += mii_timestamper.o 30 31obj-$(CONFIG_SFP) += sfp.o 32sfp-obj-$(CONFIG_SFP) += sfp-bus.o 33obj-y += $(sfp-obj-y) $(sfp-obj-m) 34 35obj-$(CONFIG_ADIN_PHY) += adin.o 36obj-$(CONFIG_ADIN1100_PHY) += adin1100.o 37obj-$(CONFIG_AIR_EN8811H_PHY) += air_en8811h.o 38obj-$(CONFIG_AMD_PHY) += amd.o 39obj-$(CONFIG_AQUANTIA_PHY) += aquantia/ 40ifdef CONFIG_AX88796B_RUST_PHY 41 obj-$(CONFIG_AX88796B_PHY) += ax88796b_rust.o 42else 43 obj-$(CONFIG_AX88796B_PHY) += ax88796b.o 44endif 45obj-$(CONFIG_BCM54140_PHY) += bcm54140.o 46obj-$(CONFIG_BCM63XX_PHY) += bcm63xx.o 47obj-$(CONFIG_BCM7XXX_PHY) += bcm7xxx.o 48obj-$(CONFIG_BCM84881_PHY) += bcm84881.o 49obj-$(CONFIG_BCM87XX_PHY) += bcm87xx.o 50obj-$(CONFIG_BCM_CYGNUS_PHY) += bcm-cygnus.o 51obj-$(CONFIG_BCM_NET_PHYLIB) += bcm-phy-lib.o 52obj-$(CONFIG_BCM_NET_PHYPTP) += bcm-phy-ptp.o 53obj-$(CONFIG_BROADCOM_PHY) += broadcom.o 54obj-$(CONFIG_CICADA_PHY) += cicada.o 55obj-$(CONFIG_CORTINA_PHY) += cortina.o 56obj-$(CONFIG_DAVICOM_PHY) += davicom.o 57obj-$(CONFIG_DP83640_PHY) += dp83640.o 58obj-$(CONFIG_DP83822_PHY) += dp83822.o 59obj-$(CONFIG_DP83848_PHY) += dp83848.o 60obj-$(CONFIG_DP83867_PHY) += dp83867.o 61obj-$(CONFIG_DP83869_PHY) += dp83869.o 62obj-$(CONFIG_DP83TC811_PHY) += dp83tc811.o 63obj-$(CONFIG_DP83TD510_PHY) += dp83td510.o 64obj-$(CONFIG_DP83TG720_PHY) += dp83tg720.o 65obj-$(CONFIG_FIXED_PHY) += fixed_phy.o 66obj-$(CONFIG_ICPLUS_PHY) += icplus.o 67obj-$(CONFIG_INTEL_XWAY_PHY) += intel-xway.o 68obj-$(CONFIG_LSI_ET1011C_PHY) += et1011c.o 69obj-$(CONFIG_LXT_PHY) += lxt.o 70obj-$(CONFIG_MARVELL_10G_PHY) += marvell10g.o 71obj-$(CONFIG_MARVELL_PHY) += marvell.o 72obj-$(CONFIG_MARVELL_88Q2XXX_PHY) += marvell-88q2xxx.o 73obj-$(CONFIG_MARVELL_88X2222_PHY) += marvell-88x2222.o 74obj-$(CONFIG_MAXLINEAR_GPHY) += mxl-gpy.o 75obj-$(CONFIG_MEDIATEK_GE_PHY) += mediatek-ge.o 76obj-$(CONFIG_MEDIATEK_GE_SOC_PHY) += mediatek-ge-soc.o 77obj-$(CONFIG_MESON_GXL_PHY) += meson-gxl.o 78obj-$(CONFIG_MICREL_KS8995MA) += spi_ks8995.o 79obj-$(CONFIG_MICREL_PHY) += micrel.o 80obj-$(CONFIG_MICROCHIP_PHY) += microchip.o 81obj-$(CONFIG_MICROCHIP_T1_PHY) += microchip_t1.o 82obj-$(CONFIG_MICROCHIP_T1S_PHY) += microchip_t1s.o 83obj-$(CONFIG_MICROSEMI_PHY) += mscc/ 84obj-$(CONFIG_MOTORCOMM_PHY) += motorcomm.o 85obj-$(CONFIG_NATIONAL_PHY) += national.o 86obj-$(CONFIG_NCN26000_PHY) += ncn26000.o 87nxp-c45-tja-objs += nxp-c45-tja11xx.o 88ifdef CONFIG_MACSEC 89nxp-c45-tja-objs += nxp-c45-tja11xx-macsec.o 90endif 91obj-$(CONFIG_NXP_C45_TJA11XX_PHY) += nxp-c45-tja.o 92obj-$(CONFIG_NXP_CBTX_PHY) += nxp-cbtx.o 93obj-$(CONFIG_NXP_TJA11XX_PHY) += nxp-tja11xx.o 94obj-y += qcom/ 95obj-$(CONFIG_QSEMI_PHY) += qsemi.o 96obj-$(CONFIG_REALTEK_PHY) += realtek.o 97obj-$(CONFIG_RENESAS_PHY) += uPD60620.o 98obj-$(CONFIG_ROCKCHIP_PHY) += rockchip.o 99obj-$(CONFIG_SMSC_PHY) += smsc.o 100obj-$(CONFIG_STE10XP) += ste10Xp.o 101obj-$(CONFIG_TERANETICS_PHY) += teranetics.o 102obj-$(CONFIG_VITESSE_PHY) += vitesse.o 103obj-$(CONFIG_XILINX_GMII2RGMII) += xilinx_gmii2rgmii.o 104