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 86d75b4a22SAndrew Lunnconfig AQUANTIA_PHY 8797c84389SAndrew Lunn tristate "Aquantia PHYs" 88a7f7f624SMasahiro Yamada help 89d75b4a22SAndrew Lunn Currently supports the Aquantia AQ1202, AQ2104, AQR105, AQR405 90d75b4a22SAndrew Lunn 91a9520543SMichael Schmitzconfig AX88796B_PHY 9231dd83b9SMichael Schmitz tristate "Asix PHYs" 9331dd83b9SMichael Schmitz help 9431dd83b9SMichael Schmitz Currently supports the Asix Electronics PHY found in the X-Surf 100 9531dd83b9SMichael Schmitz AX88796B package. 9631dd83b9SMichael Schmitz 970457eb26SAndrew Lunnconfig BROADCOM_PHY 980457eb26SAndrew Lunn tristate "Broadcom 54XX PHYs" 990457eb26SAndrew Lunn select BCM_NET_PHYLIB 1000457eb26SAndrew Lunn help 1010457eb26SAndrew Lunn Currently supports the BCM5411, BCM5421, BCM5461, BCM54616S, BCM5464, 1020457eb26SAndrew Lunn BCM5481, BCM54810 and BCM5482 PHYs. 1030457eb26SAndrew Lunn 1040457eb26SAndrew Lunnconfig BCM54140_PHY 1050457eb26SAndrew Lunn tristate "Broadcom BCM54140 PHY" 1060457eb26SAndrew Lunn depends on PHYLIB 1070457eb26SAndrew Lunn depends on HWMON || HWMON=n 1080457eb26SAndrew Lunn select BCM_NET_PHYLIB 1090457eb26SAndrew Lunn help 1100457eb26SAndrew Lunn Support the Broadcom BCM54140 Quad SGMII/QSGMII PHY. 1110457eb26SAndrew Lunn 1120457eb26SAndrew Lunn This driver also supports the hardware monitoring of this PHY and 1130457eb26SAndrew Lunn exposes voltage and temperature sensors. 1140457eb26SAndrew Lunn 115d75b4a22SAndrew Lunnconfig BCM63XX_PHY 11697c84389SAndrew Lunn tristate "Broadcom 63xx SOCs internal PHY" 11715d8daf7SAndrew Lunn depends on BCM63XX || COMPILE_TEST 118d75b4a22SAndrew Lunn select BCM_NET_PHYLIB 119a7f7f624SMasahiro Yamada help 120d75b4a22SAndrew Lunn Currently supports the 6348 and 6358 PHYs. 121d75b4a22SAndrew Lunn 122d75b4a22SAndrew Lunnconfig BCM7XXX_PHY 12397c84389SAndrew Lunn tristate "Broadcom 7xxx SOCs internal PHYs" 124d75b4a22SAndrew Lunn select BCM_NET_PHYLIB 125a7f7f624SMasahiro Yamada help 126d75b4a22SAndrew Lunn Currently supports the BCM7366, BCM7439, BCM7445, and 127d75b4a22SAndrew Lunn 40nm and 65nm generation of BCM7xxx Set Top Box SoCs. 128d75b4a22SAndrew Lunn 1290457eb26SAndrew Lunnconfig BCM84881_PHY 1300457eb26SAndrew Lunn tristate "Broadcom BCM84881 PHY" 1310457eb26SAndrew Lunn depends on PHYLIB 1320457eb26SAndrew Lunn help 1330457eb26SAndrew Lunn Support the Broadcom BCM84881 PHY. 1340457eb26SAndrew Lunn 135d75b4a22SAndrew Lunnconfig BCM87XX_PHY 13697c84389SAndrew Lunn tristate "Broadcom BCM8706 and BCM8727 PHYs" 137d75b4a22SAndrew Lunn help 138d75b4a22SAndrew Lunn Currently supports the BCM8706 and BCM8727 10G Ethernet PHYs. 139d75b4a22SAndrew Lunn 140d75b4a22SAndrew Lunnconfig BCM_CYGNUS_PHY 141a7a01ab3SFlorian Fainelli tristate "Broadcom Cygnus/Omega SoC internal PHY" 14217cc9821SFlorian Fainelli depends on ARCH_BCM_IPROC || COMPILE_TEST 143d75b4a22SAndrew Lunn depends on MDIO_BCM_IPROC 144d75b4a22SAndrew Lunn select BCM_NET_PHYLIB 145a7f7f624SMasahiro Yamada help 146d75b4a22SAndrew Lunn This PHY driver is for the 1G internal PHYs of the Broadcom 14717cc9821SFlorian Fainelli Cygnus and Omega Family SoC. 148d75b4a22SAndrew Lunn 149d75b4a22SAndrew Lunn Currently supports internal PHY's used in the BCM11300, 150d75b4a22SAndrew Lunn BCM11320, BCM11350, BCM11360, BCM58300, BCM58302, 151d75b4a22SAndrew Lunn BCM58303 & BCM58305 Broadcom Cygnus SoCs. 152d75b4a22SAndrew Lunn 153d75b4a22SAndrew Lunnconfig BCM_NET_PHYLIB 154d75b4a22SAndrew Lunn tristate 155d75b4a22SAndrew Lunn 156d75b4a22SAndrew Lunnconfig CICADA_PHY 15797c84389SAndrew Lunn tristate "Cicada PHYs" 158a7f7f624SMasahiro Yamada help 159d75b4a22SAndrew Lunn Currently supports the cis8204 160d75b4a22SAndrew Lunn 16115b9e533SBogdan Purcareataconfig CORTINA_PHY 16215b9e533SBogdan Purcareata tristate "Cortina EDC CDR 10G Ethernet PHY" 163a7f7f624SMasahiro Yamada help 16415b9e533SBogdan Purcareata Currently supports the CS4340 phy. 16515b9e533SBogdan Purcareata 166d75b4a22SAndrew Lunnconfig DAVICOM_PHY 16797c84389SAndrew Lunn tristate "Davicom PHYs" 168a7f7f624SMasahiro Yamada help 169d75b4a22SAndrew Lunn Currently supports dm9161e and dm9131 170d75b4a22SAndrew Lunn 171d75b4a22SAndrew Lunnconfig ICPLUS_PHY 17297c84389SAndrew Lunn tristate "ICPlus PHYs" 173a7f7f624SMasahiro Yamada help 174d75b4a22SAndrew Lunn Currently supports the IP175C and IP1001 PHYs. 175ddc24ae1SArun Parameswaran 1760457eb26SAndrew Lunnconfig LXT_PHY 1770457eb26SAndrew Lunn tristate "Intel LXT PHYs" 1780457eb26SAndrew Lunn help 1790457eb26SAndrew Lunn Currently supports the lxt970, lxt971 1800457eb26SAndrew Lunn 181112b558dSHauke Mehrtensconfig INTEL_XWAY_PHY 18297c84389SAndrew Lunn tristate "Intel XWAY PHYs" 183a7f7f624SMasahiro Yamada help 184112b558dSHauke Mehrtens Supports the Intel XWAY (former Lantiq) 11G and 22E PHYs. 185112b558dSHauke Mehrtens These PHYs are marked as standalone chips under the names 186112b558dSHauke Mehrtens PEF 7061, PEF 7071 and PEF 7072 or integrated into the Intel 187112b558dSHauke Mehrtens SoCs xRX200, xRX300, xRX330, xRX350 and xRX550. 188112b558dSHauke Mehrtens 189d75b4a22SAndrew Lunnconfig LSI_ET1011C_PHY 19097c84389SAndrew Lunn tristate "LSI ET1011C PHY" 191a7f7f624SMasahiro Yamada help 192d75b4a22SAndrew Lunn Supports the LSI ET1011C PHY. 1934960e4b1SDongpo Li 194d75b4a22SAndrew Lunnconfig MARVELL_PHY 1950457eb26SAndrew Lunn tristate "Marvell Alaska PHYs" 196a7f7f624SMasahiro Yamada help 1970457eb26SAndrew Lunn Currently has a driver for the 88E1XXX 198d75b4a22SAndrew Lunn 19920b2af32SRussell Kingconfig MARVELL_10G_PHY 20020b2af32SRussell King tristate "Marvell Alaska 10Gbit PHYs" 201a7f7f624SMasahiro Yamada help 20220b2af32SRussell King Support for the Marvell Alaska MV88X3310 and compatible PHYs. 20320b2af32SRussell King 2046e3bac3eSIvan Bornyakovconfig MARVELL_88X2222_PHY 2056e3bac3eSIvan Bornyakov tristate "Marvell 88X2222 PHY" 2066e3bac3eSIvan Bornyakov help 2076e3bac3eSIvan Bornyakov Support for the Marvell 88X2222 Dual-port Multi-speed Ethernet 2086e3bac3eSIvan Bornyakov Transceiver. 2096e3bac3eSIvan Bornyakov 210*7d901a1eSXu Liangconfig MAXLINEAR_GPHY 211*7d901a1eSXu Liang tristate "Maxlinear Ethernet PHYs" 212*7d901a1eSXu Liang help 213*7d901a1eSXu Liang Support for the Maxlinear GPY115, GPY211, GPY212, GPY215, 214*7d901a1eSXu Liang GPY241, GPY245 PHYs. 215*7d901a1eSXu Liang 216e40d2ccaSDENG Qingfangconfig MEDIATEK_GE_PHY 217e40d2ccaSDENG Qingfang tristate "MediaTek Gigabit Ethernet PHYs" 218e40d2ccaSDENG Qingfang help 219e40d2ccaSDENG Qingfang Supports the MediaTek Gigabit Ethernet PHYs. 220e40d2ccaSDENG Qingfang 221d75b4a22SAndrew Lunnconfig MICREL_PHY 22297c84389SAndrew Lunn tristate "Micrel PHYs" 223a7f7f624SMasahiro Yamada help 224d75b4a22SAndrew Lunn Supports the KSZ9021, VSC8201, KS8001 PHYs. 225d75b4a22SAndrew Lunn 226d75b4a22SAndrew Lunnconfig MICROCHIP_PHY 22797c84389SAndrew Lunn tristate "Microchip PHYs" 22843b3cf66SIyappan Subramanian help 229d75b4a22SAndrew Lunn Supports the LAN88XX PHYs. 23043b3cf66SIyappan Subramanian 2313e50d2daSNisar Sayedconfig MICROCHIP_T1_PHY 2323e50d2daSNisar Sayed tristate "Microchip T1 PHYs" 233a7f7f624SMasahiro Yamada help 2343e50d2daSNisar Sayed Supports the LAN87XX PHYs. 2353e50d2daSNisar Sayed 236d50736a8SRaju Lakkarajuconfig MICROSEMI_PHY 23797c84389SAndrew Lunn tristate "Microsemi PHYs" 23828c5107aSAntoine Tenart depends on MACSEC || MACSEC=n 2395a3235e5SArd Biesheuvel select CRYPTO_LIB_AES if MACSEC 240a7f7f624SMasahiro Yamada help 241e4f9ba64SKavya Sree Kotagiri Currently supports VSC8514, VSC8530, VSC8531, VSC8540 and VSC8541 PHYs 242d50736a8SRaju Lakkaraju 24348e8c6f1SPeter Geisconfig MOTORCOMM_PHY 24448e8c6f1SPeter Geis tristate "Motorcomm PHYs" 24548e8c6f1SPeter Geis help 24648e8c6f1SPeter Geis Enables support for Motorcomm network PHYs. 24748e8c6f1SPeter Geis Currently supports the YT8511 gigabit PHY. 24848e8c6f1SPeter Geis 249d75b4a22SAndrew Lunnconfig NATIONAL_PHY 25097c84389SAndrew Lunn tristate "National Semiconductor PHYs" 251a7f7f624SMasahiro Yamada help 252d75b4a22SAndrew Lunn Currently supports the DP83865 PHY. 253d75b4a22SAndrew Lunn 254b050f2f1SRadu Pirea (NXP OSS)config NXP_C45_TJA11XX_PHY 255b050f2f1SRadu Pirea (NXP OSS) tristate "NXP C45 TJA11XX PHYs" 256b050f2f1SRadu Pirea (NXP OSS) help 257b050f2f1SRadu Pirea (NXP OSS) Enable support for NXP C45 TJA11XX PHYs. 258b050f2f1SRadu Pirea (NXP OSS) Currently supports only the TJA1103 PHY. 259b050f2f1SRadu Pirea (NXP OSS) 260ddf6ddb0SMarek Vasutconfig NXP_TJA11XX_PHY 261ddf6ddb0SMarek Vasut tristate "NXP TJA11xx PHYs support" 262ddf6ddb0SMarek Vasut depends on HWMON 263a7f7f624SMasahiro Yamada help 264ddf6ddb0SMarek Vasut Currently supports the NXP TJA1100 and TJA1101 PHY. 265ddf6ddb0SMarek Vasut 2664985dffcSMichael Walleconfig AT803X_PHY 267272833b9SAnsuel Smith tristate "Qualcomm Atheros AR803X PHYs and QCA833x PHYs" 268dddb318bSMadalin Bucur depends on REGULATOR 2694985dffcSMichael Walle help 270272833b9SAnsuel Smith Currently supports the AR8030, AR8031, AR8033, AR8035 and internal 271272833b9SAnsuel Smith QCA8337(Internal qca8k PHY) model 2724985dffcSMichael Walle 273d75b4a22SAndrew Lunnconfig QSEMI_PHY 27497c84389SAndrew Lunn tristate "Quality Semiconductor PHYs" 275a7f7f624SMasahiro Yamada help 276d75b4a22SAndrew Lunn Currently supports the qs6612 277d75b4a22SAndrew Lunn 278d75b4a22SAndrew Lunnconfig REALTEK_PHY 27997c84389SAndrew Lunn tristate "Realtek PHYs" 280a7f7f624SMasahiro Yamada help 281d75b4a22SAndrew Lunn Supports the Realtek 821x PHY. 282d75b4a22SAndrew Lunn 283812b5ca7SBernd Edlingerconfig RENESAS_PHY 2840457eb26SAndrew Lunn tristate "Renesas PHYs" 285a7f7f624SMasahiro Yamada help 286812b5ca7SBernd Edlinger Supports the Renesas PHYs uPD60620 and uPD60620A. 287812b5ca7SBernd Edlinger 288baf6ee81SDavid Wuconfig ROCKCHIP_PHY 2890457eb26SAndrew Lunn tristate "Rockchip Ethernet PHYs" 290a7f7f624SMasahiro Yamada help 291baf6ee81SDavid Wu Currently supports the integrated Ethernet PHY. 292baf6ee81SDavid Wu 293d75b4a22SAndrew Lunnconfig SMSC_PHY 29497c84389SAndrew Lunn tristate "SMSC PHYs" 295a7f7f624SMasahiro Yamada help 296d75b4a22SAndrew Lunn Currently supports the LAN83C185, LAN8187 and LAN8700 PHYs 297d75b4a22SAndrew Lunn 298d75b4a22SAndrew Lunnconfig STE10XP 29997c84389SAndrew Lunn tristate "STMicroelectronics STe10Xp PHYs" 300a7f7f624SMasahiro Yamada help 301d75b4a22SAndrew Lunn This is the driver for the STe100p and STe101p PHYs. 302d75b4a22SAndrew Lunn 303d75b4a22SAndrew Lunnconfig TERANETICS_PHY 30497c84389SAndrew Lunn tristate "Teranetics PHYs" 305a7f7f624SMasahiro Yamada help 306d75b4a22SAndrew Lunn Currently supports the Teranetics TN2020 307d75b4a22SAndrew Lunn 3080457eb26SAndrew Lunnconfig DP83822_PHY 3090457eb26SAndrew Lunn tristate "Texas Instruments DP83822/825/826 PHYs" 3100457eb26SAndrew Lunn help 3110457eb26SAndrew Lunn Supports the DP83822, DP83825I, DP83825CM, DP83825CS, DP83825S, 3120457eb26SAndrew Lunn DP83826C and DP83826NC PHYs. 3130457eb26SAndrew Lunn 3140457eb26SAndrew Lunnconfig DP83TC811_PHY 3150457eb26SAndrew Lunn tristate "Texas Instruments DP83TC811 PHY" 3160457eb26SAndrew Lunn help 3170457eb26SAndrew Lunn Supports the DP83TC811 PHY. 3180457eb26SAndrew Lunn 3190457eb26SAndrew Lunnconfig DP83848_PHY 3200457eb26SAndrew Lunn tristate "Texas Instruments DP83848 PHY" 3210457eb26SAndrew Lunn help 3220457eb26SAndrew Lunn Supports the DP83848 PHY. 3230457eb26SAndrew Lunn 3240457eb26SAndrew Lunnconfig DP83867_PHY 3250457eb26SAndrew Lunn tristate "Texas Instruments DP83867 Gigabit PHY" 3260457eb26SAndrew Lunn help 3270457eb26SAndrew Lunn Currently supports the DP83867 PHY. 3280457eb26SAndrew Lunn 3290457eb26SAndrew Lunnconfig DP83869_PHY 3300457eb26SAndrew Lunn tristate "Texas Instruments DP83869 Gigabit PHY" 3310457eb26SAndrew Lunn help 3320457eb26SAndrew Lunn Currently supports the DP83869 PHY. This PHY supports copper and 3330457eb26SAndrew Lunn fiber connections. 3340457eb26SAndrew Lunn 335d75b4a22SAndrew Lunnconfig VITESSE_PHY 33697c84389SAndrew Lunn tristate "Vitesse PHYs" 337a7f7f624SMasahiro Yamada help 338d75b4a22SAndrew Lunn Currently supports the vsc8244 339d75b4a22SAndrew Lunn 340f411a616SAppana Durga Kedareswara Raoconfig XILINX_GMII2RGMII 341f411a616SAppana Durga Kedareswara Rao tristate "Xilinx GMII2RGMII converter driver" 342a7f7f624SMasahiro Yamada help 343f411a616SAppana Durga Kedareswara Rao This driver support xilinx GMII to RGMII IP core it provides 344f411a616SAppana Durga Kedareswara Rao the Reduced Gigabit Media Independent Interface(RGMII) between 345f411a616SAppana Durga Kedareswara Rao Ethernet physical media devices and the Gigabit Ethernet controller. 346f411a616SAppana Durga Kedareswara Rao 34753f99941SJan Engelhardtendif # PHYLIB 348a8e510f6SFrederic LAMBERT 349a8e510f6SFrederic LAMBERTconfig MICREL_KS8995MA 350a8e510f6SFrederic LAMBERT tristate "Micrel KS8995MA 5-ports 10/100 managed Ethernet switch" 351a8e510f6SFrederic LAMBERT depends on SPI 352