1ec8f24b7SThomas Gleixner# SPDX-License-Identifier: GPL-2.0-only 200db8189SAndy Fleming# 300db8189SAndy Fleming# PHY Layer Configuration 400db8189SAndy Fleming# 500db8189SAndy Fleming 69525ae83SRussell Kingconfig PHYLINK 79525ae83SRussell King tristate 89525ae83SRussell King depends on NETDEVICES 99525ae83SRussell King select PHYLIB 109525ae83SRussell King select SWPHY 119525ae83SRussell King help 129525ae83SRussell King PHYlink models the link between the PHY and MAC, allowing fixed 139525ae83SRussell King configuration links, PHYs, and Serdes links with MAC level 149525ae83SRussell King autonegotiation modes. 159525ae83SRussell King 166073512cSJerome Brunetmenuconfig PHYLIB 179e8d438eSFlorian Fainelli tristate "PHY Device support and infrastructure" 186073512cSJerome Brunet depends on NETDEVICES 196073512cSJerome Brunet select MDIO_DEVICE 201814cff2SBartosz Golaszewski select MDIO_DEVRES 216073512cSJerome Brunet help 226073512cSJerome Brunet Ethernet controllers are usually attached to PHY 236073512cSJerome Brunet devices. This option provides infrastructure for 246073512cSJerome Brunet managing PHY devices. 256073512cSJerome Brunet 2690eff909SFlorian Fainelliif PHYLIB 2790eff909SFlorian Fainelli 2890eff909SFlorian Fainelliconfig SWPHY 2990eff909SFlorian Fainelli bool 3090eff909SFlorian Fainelli 3190eff909SFlorian Fainelliconfig LED_TRIGGER_PHY 3290eff909SFlorian Fainelli bool "Support LED triggers for tracking link state" 3390eff909SFlorian Fainelli depends on LEDS_TRIGGERS 34a7f7f624SMasahiro Yamada help 3590eff909SFlorian Fainelli Adds support for a set of LED trigger events per-PHY. Link 3690eff909SFlorian Fainelli state change will trigger the events, for consumption by an 3790eff909SFlorian Fainelli LED class driver. There are triggers for each link speed currently 383928ee64SMaciej S. Szmigiero supported by the PHY and also a one common "link" trigger as a 393928ee64SMaciej S. Szmigiero logical-or of all the link speed ones. 403928ee64SMaciej S. Szmigiero All these triggers are named according to the following pattern: 4190eff909SFlorian Fainelli <mii bus id>:<phy>:<speed> 4290eff909SFlorian Fainelli 4390eff909SFlorian Fainelli Where speed is in the form: 443928ee64SMaciej S. Szmigiero <Speed in megabits>Mbps OR <Speed in gigabits>Gbps OR link 453928ee64SMaciej S. Szmigiero for any speed known to the PHY. 4690eff909SFlorian Fainelli 4790eff909SFlorian Fainelli 480457eb26SAndrew Lunnconfig FIXED_PHY 490457eb26SAndrew Lunn tristate "MDIO Bus/PHY emulation with fixed speed/link PHYs" 500457eb26SAndrew Lunn depends on PHYLIB 510457eb26SAndrew Lunn select SWPHY 520457eb26SAndrew Lunn help 530457eb26SAndrew Lunn Adds the platform "fixed" MDIO Bus to cover the boards that use 540457eb26SAndrew Lunn PHYs that are not connected to the real MDIO bus. 550457eb26SAndrew Lunn 560457eb26SAndrew Lunn Currently tested with mpc866ads and mpc8349e-mitx. 57d75b4a22SAndrew Lunn 5873970055SRussell Kingconfig SFP 5973970055SRussell King tristate "SFP cage support" 6073970055SRussell King depends on I2C && PHYLINK 61b5293443SGuenter Roeck depends on HWMON || HWMON=n 6273970055SRussell King select MDIO_I2C 6373970055SRussell King 640457eb26SAndrew Lunncomment "MII PHY device drivers" 650457eb26SAndrew Lunn 660457eb26SAndrew Lunnconfig AMD_PHY 670457eb26SAndrew Lunn tristate "AMD PHYs" 680457eb26SAndrew Lunn help 690457eb26SAndrew Lunn Currently supports the am79c874 700457eb26SAndrew Lunn 710457eb26SAndrew Lunnconfig MESON_GXL_PHY 720457eb26SAndrew Lunn tristate "Amlogic Meson GXL Internal PHY" 730457eb26SAndrew Lunn depends on ARCH_MESON || COMPILE_TEST 740457eb26SAndrew Lunn help 750457eb26SAndrew Lunn Currently has a driver for the Amlogic Meson GXL Internal PHY 760457eb26SAndrew Lunn 779c102981SAlexandru Ardeleanconfig ADIN_PHY 789c102981SAlexandru Ardelean tristate "Analog Devices Industrial Ethernet PHYs" 799c102981SAlexandru Ardelean help 809c102981SAlexandru Ardelean Adds support for the Analog Devices Industrial Ethernet PHYs. 819c102981SAlexandru Ardelean Currently supports the: 829c102981SAlexandru Ardelean - ADIN1200 - Robust,Industrial, Low Power 10/100 Ethernet PHY 839c102981SAlexandru Ardelean - ADIN1300 - Robust,Industrial, Low Latency 10/100/1000 Gigabit 849c102981SAlexandru Ardelean Ethernet PHY 859c102981SAlexandru Ardelean 86*7eaf9132SAlexandru Ardeleanconfig ADIN1100_PHY 87*7eaf9132SAlexandru Ardelean tristate "Analog Devices Industrial Ethernet T1L PHYs" 88*7eaf9132SAlexandru Ardelean help 89*7eaf9132SAlexandru Ardelean Adds support for the Analog Devices Industrial T1L Ethernet PHYs. 90*7eaf9132SAlexandru Ardelean Currently supports the: 91*7eaf9132SAlexandru Ardelean - ADIN1100 - Robust,Industrial, Low Power 10BASE-T1L Ethernet PHY 92*7eaf9132SAlexandru Ardelean 93d75b4a22SAndrew Lunnconfig AQUANTIA_PHY 9497c84389SAndrew Lunn tristate "Aquantia PHYs" 95a7f7f624SMasahiro Yamada help 96d75b4a22SAndrew Lunn Currently supports the Aquantia AQ1202, AQ2104, AQR105, AQR405 97d75b4a22SAndrew Lunn 98a9520543SMichael Schmitzconfig AX88796B_PHY 9931dd83b9SMichael Schmitz tristate "Asix PHYs" 10031dd83b9SMichael Schmitz help 10131dd83b9SMichael Schmitz Currently supports the Asix Electronics PHY found in the X-Surf 100 10231dd83b9SMichael Schmitz AX88796B package. 10331dd83b9SMichael Schmitz 1040457eb26SAndrew Lunnconfig BROADCOM_PHY 1050457eb26SAndrew Lunn tristate "Broadcom 54XX PHYs" 1060457eb26SAndrew Lunn select BCM_NET_PHYLIB 1070457eb26SAndrew Lunn help 1080457eb26SAndrew Lunn Currently supports the BCM5411, BCM5421, BCM5461, BCM54616S, BCM5464, 1090457eb26SAndrew Lunn BCM5481, BCM54810 and BCM5482 PHYs. 1100457eb26SAndrew Lunn 1110457eb26SAndrew Lunnconfig BCM54140_PHY 1120457eb26SAndrew Lunn tristate "Broadcom BCM54140 PHY" 1130457eb26SAndrew Lunn depends on PHYLIB 1140457eb26SAndrew Lunn depends on HWMON || HWMON=n 1150457eb26SAndrew Lunn select BCM_NET_PHYLIB 1160457eb26SAndrew Lunn help 1170457eb26SAndrew Lunn Support the Broadcom BCM54140 Quad SGMII/QSGMII PHY. 1180457eb26SAndrew Lunn 1190457eb26SAndrew Lunn This driver also supports the hardware monitoring of this PHY and 1200457eb26SAndrew Lunn exposes voltage and temperature sensors. 1210457eb26SAndrew Lunn 122d75b4a22SAndrew Lunnconfig BCM63XX_PHY 12397c84389SAndrew Lunn tristate "Broadcom 63xx SOCs internal PHY" 12415d8daf7SAndrew Lunn depends on BCM63XX || COMPILE_TEST 125d75b4a22SAndrew Lunn select BCM_NET_PHYLIB 126a7f7f624SMasahiro Yamada help 127d75b4a22SAndrew Lunn Currently supports the 6348 and 6358 PHYs. 128d75b4a22SAndrew Lunn 129d75b4a22SAndrew Lunnconfig BCM7XXX_PHY 13097c84389SAndrew Lunn tristate "Broadcom 7xxx SOCs internal PHYs" 131d75b4a22SAndrew Lunn select BCM_NET_PHYLIB 132a7f7f624SMasahiro Yamada help 133d75b4a22SAndrew Lunn Currently supports the BCM7366, BCM7439, BCM7445, and 134d75b4a22SAndrew Lunn 40nm and 65nm generation of BCM7xxx Set Top Box SoCs. 135d75b4a22SAndrew Lunn 1360457eb26SAndrew Lunnconfig BCM84881_PHY 1370457eb26SAndrew Lunn tristate "Broadcom BCM84881 PHY" 1380457eb26SAndrew Lunn depends on PHYLIB 1390457eb26SAndrew Lunn help 1400457eb26SAndrew Lunn Support the Broadcom BCM84881 PHY. 1410457eb26SAndrew Lunn 142d75b4a22SAndrew Lunnconfig BCM87XX_PHY 14397c84389SAndrew Lunn tristate "Broadcom BCM8706 and BCM8727 PHYs" 144d75b4a22SAndrew Lunn help 145d75b4a22SAndrew Lunn Currently supports the BCM8706 and BCM8727 10G Ethernet PHYs. 146d75b4a22SAndrew Lunn 147d75b4a22SAndrew Lunnconfig BCM_CYGNUS_PHY 148a7a01ab3SFlorian Fainelli tristate "Broadcom Cygnus/Omega SoC internal PHY" 14917cc9821SFlorian Fainelli depends on ARCH_BCM_IPROC || COMPILE_TEST 150d75b4a22SAndrew Lunn depends on MDIO_BCM_IPROC 151d75b4a22SAndrew Lunn select BCM_NET_PHYLIB 152a7f7f624SMasahiro Yamada help 153d75b4a22SAndrew Lunn This PHY driver is for the 1G internal PHYs of the Broadcom 15417cc9821SFlorian Fainelli Cygnus and Omega Family SoC. 155d75b4a22SAndrew Lunn 156d75b4a22SAndrew Lunn Currently supports internal PHY's used in the BCM11300, 157d75b4a22SAndrew Lunn BCM11320, BCM11350, BCM11360, BCM58300, BCM58302, 158d75b4a22SAndrew Lunn BCM58303 & BCM58305 Broadcom Cygnus SoCs. 159d75b4a22SAndrew Lunn 160d75b4a22SAndrew Lunnconfig BCM_NET_PHYLIB 161d75b4a22SAndrew Lunn tristate 162d75b4a22SAndrew Lunn 163d75b4a22SAndrew Lunnconfig CICADA_PHY 16497c84389SAndrew Lunn tristate "Cicada PHYs" 165a7f7f624SMasahiro Yamada help 166d75b4a22SAndrew Lunn Currently supports the cis8204 167d75b4a22SAndrew Lunn 16815b9e533SBogdan Purcareataconfig CORTINA_PHY 16915b9e533SBogdan Purcareata tristate "Cortina EDC CDR 10G Ethernet PHY" 170a7f7f624SMasahiro Yamada help 17115b9e533SBogdan Purcareata Currently supports the CS4340 phy. 17215b9e533SBogdan Purcareata 173d75b4a22SAndrew Lunnconfig DAVICOM_PHY 17497c84389SAndrew Lunn tristate "Davicom PHYs" 175a7f7f624SMasahiro Yamada help 176d75b4a22SAndrew Lunn Currently supports dm9161e and dm9131 177d75b4a22SAndrew Lunn 178d75b4a22SAndrew Lunnconfig ICPLUS_PHY 17997c84389SAndrew Lunn tristate "ICPlus PHYs" 180a7f7f624SMasahiro Yamada help 181d75b4a22SAndrew Lunn Currently supports the IP175C and IP1001 PHYs. 182ddc24ae1SArun Parameswaran 1830457eb26SAndrew Lunnconfig LXT_PHY 1840457eb26SAndrew Lunn tristate "Intel LXT PHYs" 1850457eb26SAndrew Lunn help 1860457eb26SAndrew Lunn Currently supports the lxt970, lxt971 1870457eb26SAndrew Lunn 188112b558dSHauke Mehrtensconfig INTEL_XWAY_PHY 18997c84389SAndrew Lunn tristate "Intel XWAY PHYs" 190a7f7f624SMasahiro Yamada help 191112b558dSHauke Mehrtens Supports the Intel XWAY (former Lantiq) 11G and 22E PHYs. 192112b558dSHauke Mehrtens These PHYs are marked as standalone chips under the names 193112b558dSHauke Mehrtens PEF 7061, PEF 7071 and PEF 7072 or integrated into the Intel 194112b558dSHauke Mehrtens SoCs xRX200, xRX300, xRX330, xRX350 and xRX550. 195112b558dSHauke Mehrtens 196d75b4a22SAndrew Lunnconfig LSI_ET1011C_PHY 19797c84389SAndrew Lunn tristate "LSI ET1011C PHY" 198a7f7f624SMasahiro Yamada help 199d75b4a22SAndrew Lunn Supports the LSI ET1011C PHY. 2004960e4b1SDongpo Li 201d75b4a22SAndrew Lunnconfig MARVELL_PHY 2020457eb26SAndrew Lunn tristate "Marvell Alaska PHYs" 203a7f7f624SMasahiro Yamada help 2040457eb26SAndrew Lunn Currently has a driver for the 88E1XXX 205d75b4a22SAndrew Lunn 20620b2af32SRussell Kingconfig MARVELL_10G_PHY 20720b2af32SRussell King tristate "Marvell Alaska 10Gbit PHYs" 208a7f7f624SMasahiro Yamada help 20920b2af32SRussell King Support for the Marvell Alaska MV88X3310 and compatible PHYs. 21020b2af32SRussell King 2116e3bac3eSIvan Bornyakovconfig MARVELL_88X2222_PHY 2126e3bac3eSIvan Bornyakov tristate "Marvell 88X2222 PHY" 2136e3bac3eSIvan Bornyakov help 2146e3bac3eSIvan Bornyakov Support for the Marvell 88X2222 Dual-port Multi-speed Ethernet 2156e3bac3eSIvan Bornyakov Transceiver. 2166e3bac3eSIvan Bornyakov 2177d901a1eSXu Liangconfig MAXLINEAR_GPHY 2187d901a1eSXu Liang tristate "Maxlinear Ethernet PHYs" 2197d901a1eSXu Liang help 2207d901a1eSXu Liang Support for the Maxlinear GPY115, GPY211, GPY212, GPY215, 2217d901a1eSXu Liang GPY241, GPY245 PHYs. 2227d901a1eSXu Liang 223e40d2ccaSDENG Qingfangconfig MEDIATEK_GE_PHY 224e40d2ccaSDENG Qingfang tristate "MediaTek Gigabit Ethernet PHYs" 225e40d2ccaSDENG Qingfang help 226e40d2ccaSDENG Qingfang Supports the MediaTek Gigabit Ethernet PHYs. 227e40d2ccaSDENG Qingfang 228d75b4a22SAndrew Lunnconfig MICREL_PHY 22997c84389SAndrew Lunn tristate "Micrel PHYs" 230231fdac3SAnders Roxell depends on PTP_1588_CLOCK_OPTIONAL 231a7f7f624SMasahiro Yamada help 232d75b4a22SAndrew Lunn Supports the KSZ9021, VSC8201, KS8001 PHYs. 233d75b4a22SAndrew Lunn 234d75b4a22SAndrew Lunnconfig MICROCHIP_PHY 23597c84389SAndrew Lunn tristate "Microchip PHYs" 23643b3cf66SIyappan Subramanian help 237d75b4a22SAndrew Lunn Supports the LAN88XX PHYs. 23843b3cf66SIyappan Subramanian 2393e50d2daSNisar Sayedconfig MICROCHIP_T1_PHY 2403e50d2daSNisar Sayed tristate "Microchip T1 PHYs" 241a7f7f624SMasahiro Yamada help 2423e50d2daSNisar Sayed Supports the LAN87XX PHYs. 2433e50d2daSNisar Sayed 244d50736a8SRaju Lakkarajuconfig MICROSEMI_PHY 24597c84389SAndrew Lunn tristate "Microsemi PHYs" 24628c5107aSAntoine Tenart depends on MACSEC || MACSEC=n 247e5f31552SArnd Bergmann depends on PTP_1588_CLOCK_OPTIONAL || !NETWORK_PHY_TIMESTAMPING 2485a3235e5SArd Biesheuvel select CRYPTO_LIB_AES if MACSEC 249a7f7f624SMasahiro Yamada help 250e4f9ba64SKavya Sree Kotagiri Currently supports VSC8514, VSC8530, VSC8531, VSC8540 and VSC8541 PHYs 251d50736a8SRaju Lakkaraju 25248e8c6f1SPeter Geisconfig MOTORCOMM_PHY 25348e8c6f1SPeter Geis tristate "Motorcomm PHYs" 25448e8c6f1SPeter Geis help 25548e8c6f1SPeter Geis Enables support for Motorcomm network PHYs. 25648e8c6f1SPeter Geis Currently supports the YT8511 gigabit PHY. 25748e8c6f1SPeter Geis 258d75b4a22SAndrew Lunnconfig NATIONAL_PHY 25997c84389SAndrew Lunn tristate "National Semiconductor PHYs" 260a7f7f624SMasahiro Yamada help 261d75b4a22SAndrew Lunn Currently supports the DP83865 PHY. 262d75b4a22SAndrew Lunn 263b050f2f1SRadu Pirea (NXP OSS)config NXP_C45_TJA11XX_PHY 264b050f2f1SRadu Pirea (NXP OSS) tristate "NXP C45 TJA11XX PHYs" 265e5f31552SArnd Bergmann depends on PTP_1588_CLOCK_OPTIONAL 266b050f2f1SRadu Pirea (NXP OSS) help 267b050f2f1SRadu Pirea (NXP OSS) Enable support for NXP C45 TJA11XX PHYs. 268b050f2f1SRadu Pirea (NXP OSS) Currently supports only the TJA1103 PHY. 269b050f2f1SRadu Pirea (NXP OSS) 270ddf6ddb0SMarek Vasutconfig NXP_TJA11XX_PHY 271ddf6ddb0SMarek Vasut tristate "NXP TJA11xx PHYs support" 272ddf6ddb0SMarek Vasut depends on HWMON 273a7f7f624SMasahiro Yamada help 274ddf6ddb0SMarek Vasut Currently supports the NXP TJA1100 and TJA1101 PHY. 275ddf6ddb0SMarek Vasut 2764985dffcSMichael Walleconfig AT803X_PHY 277272833b9SAnsuel Smith tristate "Qualcomm Atheros AR803X PHYs and QCA833x PHYs" 278dddb318bSMadalin Bucur depends on REGULATOR 2794985dffcSMichael Walle help 280272833b9SAnsuel Smith Currently supports the AR8030, AR8031, AR8033, AR8035 and internal 281272833b9SAnsuel Smith QCA8337(Internal qca8k PHY) model 2824985dffcSMichael Walle 283d75b4a22SAndrew Lunnconfig QSEMI_PHY 28497c84389SAndrew Lunn tristate "Quality Semiconductor PHYs" 285a7f7f624SMasahiro Yamada help 286d75b4a22SAndrew Lunn Currently supports the qs6612 287d75b4a22SAndrew Lunn 288d75b4a22SAndrew Lunnconfig REALTEK_PHY 28997c84389SAndrew Lunn tristate "Realtek PHYs" 290a7f7f624SMasahiro Yamada help 291d75b4a22SAndrew Lunn Supports the Realtek 821x PHY. 292d75b4a22SAndrew Lunn 293812b5ca7SBernd Edlingerconfig RENESAS_PHY 2940457eb26SAndrew Lunn tristate "Renesas PHYs" 295a7f7f624SMasahiro Yamada help 296812b5ca7SBernd Edlinger Supports the Renesas PHYs uPD60620 and uPD60620A. 297812b5ca7SBernd Edlinger 298baf6ee81SDavid Wuconfig ROCKCHIP_PHY 2990457eb26SAndrew Lunn tristate "Rockchip Ethernet PHYs" 300a7f7f624SMasahiro Yamada help 301baf6ee81SDavid Wu Currently supports the integrated Ethernet PHY. 302baf6ee81SDavid Wu 303d75b4a22SAndrew Lunnconfig SMSC_PHY 30497c84389SAndrew Lunn tristate "SMSC PHYs" 305a7f7f624SMasahiro Yamada help 306d75b4a22SAndrew Lunn Currently supports the LAN83C185, LAN8187 and LAN8700 PHYs 307d75b4a22SAndrew Lunn 308d75b4a22SAndrew Lunnconfig STE10XP 30997c84389SAndrew Lunn tristate "STMicroelectronics STe10Xp PHYs" 310a7f7f624SMasahiro Yamada help 311d75b4a22SAndrew Lunn This is the driver for the STe100p and STe101p PHYs. 312d75b4a22SAndrew Lunn 313d75b4a22SAndrew Lunnconfig TERANETICS_PHY 31497c84389SAndrew Lunn tristate "Teranetics PHYs" 315a7f7f624SMasahiro Yamada help 316d75b4a22SAndrew Lunn Currently supports the Teranetics TN2020 317d75b4a22SAndrew Lunn 3180457eb26SAndrew Lunnconfig DP83822_PHY 3190457eb26SAndrew Lunn tristate "Texas Instruments DP83822/825/826 PHYs" 3200457eb26SAndrew Lunn help 3210457eb26SAndrew Lunn Supports the DP83822, DP83825I, DP83825CM, DP83825CS, DP83825S, 3220457eb26SAndrew Lunn DP83826C and DP83826NC PHYs. 3230457eb26SAndrew Lunn 3240457eb26SAndrew Lunnconfig DP83TC811_PHY 3250457eb26SAndrew Lunn tristate "Texas Instruments DP83TC811 PHY" 3260457eb26SAndrew Lunn help 3270457eb26SAndrew Lunn Supports the DP83TC811 PHY. 3280457eb26SAndrew Lunn 3290457eb26SAndrew Lunnconfig DP83848_PHY 3300457eb26SAndrew Lunn tristate "Texas Instruments DP83848 PHY" 3310457eb26SAndrew Lunn help 3320457eb26SAndrew Lunn Supports the DP83848 PHY. 3330457eb26SAndrew Lunn 3340457eb26SAndrew Lunnconfig DP83867_PHY 3350457eb26SAndrew Lunn tristate "Texas Instruments DP83867 Gigabit PHY" 3360457eb26SAndrew Lunn help 3370457eb26SAndrew Lunn Currently supports the DP83867 PHY. 3380457eb26SAndrew Lunn 3390457eb26SAndrew Lunnconfig DP83869_PHY 3400457eb26SAndrew Lunn tristate "Texas Instruments DP83869 Gigabit PHY" 3410457eb26SAndrew Lunn help 3420457eb26SAndrew Lunn Currently supports the DP83869 PHY. This PHY supports copper and 3430457eb26SAndrew Lunn fiber connections. 3440457eb26SAndrew Lunn 345d75b4a22SAndrew Lunnconfig VITESSE_PHY 34697c84389SAndrew Lunn tristate "Vitesse PHYs" 347a7f7f624SMasahiro Yamada help 348d75b4a22SAndrew Lunn Currently supports the vsc8244 349d75b4a22SAndrew Lunn 350f411a616SAppana Durga Kedareswara Raoconfig XILINX_GMII2RGMII 351f411a616SAppana Durga Kedareswara Rao tristate "Xilinx GMII2RGMII converter driver" 352a7f7f624SMasahiro Yamada help 353f411a616SAppana Durga Kedareswara Rao This driver support xilinx GMII to RGMII IP core it provides 354f411a616SAppana Durga Kedareswara Rao the Reduced Gigabit Media Independent Interface(RGMII) between 355f411a616SAppana Durga Kedareswara Rao Ethernet physical media devices and the Gigabit Ethernet controller. 356f411a616SAppana Durga Kedareswara Rao 35753f99941SJan Engelhardtendif # PHYLIB 358a8e510f6SFrederic LAMBERT 359a8e510f6SFrederic LAMBERTconfig MICREL_KS8995MA 360a8e510f6SFrederic LAMBERT tristate "Micrel KS8995MA 5-ports 10/100 managed Ethernet switch" 361a8e510f6SFrederic LAMBERT depends on SPI 362