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 204*6e3bac3eSIvan Bornyakovconfig MARVELL_88X2222_PHY 205*6e3bac3eSIvan Bornyakov tristate "Marvell 88X2222 PHY" 206*6e3bac3eSIvan Bornyakov help 207*6e3bac3eSIvan Bornyakov Support for the Marvell 88X2222 Dual-port Multi-speed Ethernet 208*6e3bac3eSIvan Bornyakov Transceiver. 209*6e3bac3eSIvan Bornyakov 210d75b4a22SAndrew Lunnconfig MICREL_PHY 21197c84389SAndrew Lunn tristate "Micrel PHYs" 212a7f7f624SMasahiro Yamada help 213d75b4a22SAndrew Lunn Supports the KSZ9021, VSC8201, KS8001 PHYs. 214d75b4a22SAndrew Lunn 215d75b4a22SAndrew Lunnconfig MICROCHIP_PHY 21697c84389SAndrew Lunn tristate "Microchip PHYs" 21743b3cf66SIyappan Subramanian help 218d75b4a22SAndrew Lunn Supports the LAN88XX PHYs. 21943b3cf66SIyappan Subramanian 2203e50d2daSNisar Sayedconfig MICROCHIP_T1_PHY 2213e50d2daSNisar Sayed tristate "Microchip T1 PHYs" 222a7f7f624SMasahiro Yamada help 2233e50d2daSNisar Sayed Supports the LAN87XX PHYs. 2243e50d2daSNisar Sayed 225d50736a8SRaju Lakkarajuconfig MICROSEMI_PHY 22697c84389SAndrew Lunn tristate "Microsemi PHYs" 22728c5107aSAntoine Tenart depends on MACSEC || MACSEC=n 2285a3235e5SArd Biesheuvel select CRYPTO_LIB_AES if MACSEC 229a7f7f624SMasahiro Yamada help 230e4f9ba64SKavya Sree Kotagiri Currently supports VSC8514, VSC8530, VSC8531, VSC8540 and VSC8541 PHYs 231d50736a8SRaju Lakkaraju 232d75b4a22SAndrew Lunnconfig NATIONAL_PHY 23397c84389SAndrew Lunn tristate "National Semiconductor PHYs" 234a7f7f624SMasahiro Yamada help 235d75b4a22SAndrew Lunn Currently supports the DP83865 PHY. 236d75b4a22SAndrew Lunn 237ddf6ddb0SMarek Vasutconfig NXP_TJA11XX_PHY 238ddf6ddb0SMarek Vasut tristate "NXP TJA11xx PHYs support" 239ddf6ddb0SMarek Vasut depends on HWMON 240a7f7f624SMasahiro Yamada help 241ddf6ddb0SMarek Vasut Currently supports the NXP TJA1100 and TJA1101 PHY. 242ddf6ddb0SMarek Vasut 2434985dffcSMichael Walleconfig AT803X_PHY 2444985dffcSMichael Walle tristate "Qualcomm Atheros AR803X PHYs" 245dddb318bSMadalin Bucur depends on REGULATOR 2464985dffcSMichael Walle help 247428061f7SMichael Walle Currently supports the AR8030, AR8031, AR8033 and AR8035 model 2484985dffcSMichael Walle 249d75b4a22SAndrew Lunnconfig QSEMI_PHY 25097c84389SAndrew Lunn tristate "Quality Semiconductor PHYs" 251a7f7f624SMasahiro Yamada help 252d75b4a22SAndrew Lunn Currently supports the qs6612 253d75b4a22SAndrew Lunn 254d75b4a22SAndrew Lunnconfig REALTEK_PHY 25597c84389SAndrew Lunn tristate "Realtek PHYs" 256a7f7f624SMasahiro Yamada help 257d75b4a22SAndrew Lunn Supports the Realtek 821x PHY. 258d75b4a22SAndrew Lunn 259812b5ca7SBernd Edlingerconfig RENESAS_PHY 2600457eb26SAndrew Lunn tristate "Renesas PHYs" 261a7f7f624SMasahiro Yamada help 262812b5ca7SBernd Edlinger Supports the Renesas PHYs uPD60620 and uPD60620A. 263812b5ca7SBernd Edlinger 264baf6ee81SDavid Wuconfig ROCKCHIP_PHY 2650457eb26SAndrew Lunn tristate "Rockchip Ethernet PHYs" 266a7f7f624SMasahiro Yamada help 267baf6ee81SDavid Wu Currently supports the integrated Ethernet PHY. 268baf6ee81SDavid Wu 269d75b4a22SAndrew Lunnconfig SMSC_PHY 27097c84389SAndrew Lunn tristate "SMSC PHYs" 271a7f7f624SMasahiro Yamada help 272d75b4a22SAndrew Lunn Currently supports the LAN83C185, LAN8187 and LAN8700 PHYs 273d75b4a22SAndrew Lunn 274d75b4a22SAndrew Lunnconfig STE10XP 27597c84389SAndrew Lunn tristate "STMicroelectronics STe10Xp PHYs" 276a7f7f624SMasahiro Yamada help 277d75b4a22SAndrew Lunn This is the driver for the STe100p and STe101p PHYs. 278d75b4a22SAndrew Lunn 279d75b4a22SAndrew Lunnconfig TERANETICS_PHY 28097c84389SAndrew Lunn tristate "Teranetics PHYs" 281a7f7f624SMasahiro Yamada help 282d75b4a22SAndrew Lunn Currently supports the Teranetics TN2020 283d75b4a22SAndrew Lunn 2840457eb26SAndrew Lunnconfig DP83822_PHY 2850457eb26SAndrew Lunn tristate "Texas Instruments DP83822/825/826 PHYs" 2860457eb26SAndrew Lunn help 2870457eb26SAndrew Lunn Supports the DP83822, DP83825I, DP83825CM, DP83825CS, DP83825S, 2880457eb26SAndrew Lunn DP83826C and DP83826NC PHYs. 2890457eb26SAndrew Lunn 2900457eb26SAndrew Lunnconfig DP83TC811_PHY 2910457eb26SAndrew Lunn tristate "Texas Instruments DP83TC811 PHY" 2920457eb26SAndrew Lunn help 2930457eb26SAndrew Lunn Supports the DP83TC811 PHY. 2940457eb26SAndrew Lunn 2950457eb26SAndrew Lunnconfig DP83848_PHY 2960457eb26SAndrew Lunn tristate "Texas Instruments DP83848 PHY" 2970457eb26SAndrew Lunn help 2980457eb26SAndrew Lunn Supports the DP83848 PHY. 2990457eb26SAndrew Lunn 3000457eb26SAndrew Lunnconfig DP83867_PHY 3010457eb26SAndrew Lunn tristate "Texas Instruments DP83867 Gigabit PHY" 3020457eb26SAndrew Lunn help 3030457eb26SAndrew Lunn Currently supports the DP83867 PHY. 3040457eb26SAndrew Lunn 3050457eb26SAndrew Lunnconfig DP83869_PHY 3060457eb26SAndrew Lunn tristate "Texas Instruments DP83869 Gigabit PHY" 3070457eb26SAndrew Lunn help 3080457eb26SAndrew Lunn Currently supports the DP83869 PHY. This PHY supports copper and 3090457eb26SAndrew Lunn fiber connections. 3100457eb26SAndrew Lunn 311d75b4a22SAndrew Lunnconfig VITESSE_PHY 31297c84389SAndrew Lunn tristate "Vitesse PHYs" 313a7f7f624SMasahiro Yamada help 314d75b4a22SAndrew Lunn Currently supports the vsc8244 315d75b4a22SAndrew Lunn 316f411a616SAppana Durga Kedareswara Raoconfig XILINX_GMII2RGMII 317f411a616SAppana Durga Kedareswara Rao tristate "Xilinx GMII2RGMII converter driver" 318a7f7f624SMasahiro Yamada help 319f411a616SAppana Durga Kedareswara Rao This driver support xilinx GMII to RGMII IP core it provides 320f411a616SAppana Durga Kedareswara Rao the Reduced Gigabit Media Independent Interface(RGMII) between 321f411a616SAppana Durga Kedareswara Rao Ethernet physical media devices and the Gigabit Ethernet controller. 322f411a616SAppana Durga Kedareswara Rao 32353f99941SJan Engelhardtendif # PHYLIB 324a8e510f6SFrederic LAMBERT 325a8e510f6SFrederic LAMBERTconfig MICREL_KS8995MA 326a8e510f6SFrederic LAMBERT tristate "Micrel KS8995MA 5-ports 10/100 managed Ethernet switch" 327a8e510f6SFrederic LAMBERT depends on SPI 328