100db8189SAndy Fleming# 200db8189SAndy Fleming# PHY Layer Configuration 300db8189SAndy Fleming# 400db8189SAndy Fleming 553f99941SJan Engelhardtmenuconfig PHYLIB 6fc0b927dSBen Hutchings tristate "PHY Device support and infrastructure" 7cba86f2eSRandy Dunlap depends on NETDEVICES 800db8189SAndy Fleming help 900db8189SAndy Fleming Ethernet controllers are usually attached to PHY 1000db8189SAndy Fleming devices. This option provides infrastructure for 1100db8189SAndy Fleming managing PHY devices. 1200db8189SAndy Fleming 1353f99941SJan Engelhardtif PHYLIB 1453f99941SJan Engelhardt 155ae68b0cSRussell Kingconfig SWPHY 165ae68b0cSRussell King bool 175ae68b0cSRussell King 182e0bc452SZach Brownconfig LED_TRIGGER_PHY 192e0bc452SZach Brown bool "Support LED triggers for tracking link state" 202e0bc452SZach Brown depends on LEDS_TRIGGERS 212e0bc452SZach Brown ---help--- 222e0bc452SZach Brown Adds support for a set of LED trigger events per-PHY. Link 232e0bc452SZach Brown state change will trigger the events, for consumption by an 242e0bc452SZach Brown LED class driver. There are triggers for each link speed currently 252e0bc452SZach Brown supported by the phy, and are of the form: 262e0bc452SZach Brown <mii bus id>:<phy>:<speed> 272e0bc452SZach Brown 282e0bc452SZach Brown Where speed is in the form: 292e0bc452SZach Brown <Speed in megabits>Mbps or <Speed in gigabits>Gbps 302e0bc452SZach Brown 31d75b4a22SAndrew Lunncomment "MDIO bus device drivers" 3200db8189SAndy Fleming 33d75b4a22SAndrew Lunnconfig MDIO_BCM_IPROC 34d75b4a22SAndrew Lunn tristate "Broadcom iProc MDIO bus controller" 35d75b4a22SAndrew Lunn depends on ARCH_BCM_IPROC || COMPILE_TEST 36d75b4a22SAndrew Lunn depends on HAS_IOMEM && OF_MDIO 37e9976d7cSDavid Daney help 38d75b4a22SAndrew Lunn This module provides a driver for the MDIO busses found in the 39d75b4a22SAndrew Lunn Broadcom iProc SoC's. 40e9976d7cSDavid Daney 41d75b4a22SAndrew Lunnconfig MDIO_BCM_UNIMAC 42d75b4a22SAndrew Lunn tristate "Broadcom UniMAC MDIO bus controller" 43d75b4a22SAndrew Lunn depends on HAS_IOMEM 44792aec47SWoojung.Huh@microchip.com help 45d75b4a22SAndrew Lunn This module provides a driver for the Broadcom UniMAC MDIO busses. 46d75b4a22SAndrew Lunn This hardware can be found in the Broadcom GENET Ethernet MAC 47d75b4a22SAndrew Lunn controllers as well as some Broadcom Ethernet switches such as the 48d75b4a22SAndrew Lunn Starfighter 2 switches. 497c32f470SVitaly Bordug 50e2ec4581SScott Woodconfig MDIO_BITBANG 5197c84389SAndrew Lunn tristate "Bitbanged MDIO buses" 52e2ec4581SScott Wood help 53e2ec4581SScott Wood This module implements the MDIO bus protocol in software, 54e2ec4581SScott Wood for use by low level drivers that export the ability to 55e2ec4581SScott Wood drive the relevant pins. 56e2ec4581SScott Wood 57e2ec4581SScott Wood If in doubt, say N. 58e2ec4581SScott Wood 590ca2997dSDavid Daneyconfig MDIO_BUS_MUX 600ca2997dSDavid Daney tristate 610ca2997dSDavid Daney depends on OF_MDIO 620ca2997dSDavid Daney help 630ca2997dSDavid Daney This module provides a driver framework for MDIO bus 640ca2997dSDavid Daney multiplexers which connect one of several child MDIO busses 650ca2997dSDavid Daney to a parent bus. Switching between child busses is done by 660ca2997dSDavid Daney device specific drivers. 670ca2997dSDavid Daney 68d75b4a22SAndrew Lunnconfig MDIO_BUS_MUX_BCM_IPROC 6997c84389SAndrew Lunn tristate "Broadcom iProc based MDIO bus multiplexers" 70d75b4a22SAndrew Lunn depends on OF && OF_MDIO && (ARCH_BCM_IPROC || COMPILE_TEST) 71d75b4a22SAndrew Lunn select MDIO_BUS_MUX 72d75b4a22SAndrew Lunn default ARCH_BCM_IPROC 73d75b4a22SAndrew Lunn help 74d75b4a22SAndrew Lunn This module provides a driver for MDIO bus multiplexers found in 75d75b4a22SAndrew Lunn iProc based Broadcom SoCs. This multiplexer connects one of several 76d75b4a22SAndrew Lunn child MDIO bus to a parent bus. Buses could be internal as well as 77d75b4a22SAndrew Lunn external and selection logic lies inside the same multiplexer. 78d75b4a22SAndrew Lunn 79416912a1SDavid Daneyconfig MDIO_BUS_MUX_GPIO 8097c84389SAndrew Lunn tristate "GPIO controlled MDIO bus multiplexers" 81416912a1SDavid Daney depends on OF_GPIO && OF_MDIO 82416912a1SDavid Daney select MDIO_BUS_MUX 83416912a1SDavid Daney help 84416912a1SDavid Daney This module provides a driver for MDIO bus multiplexers that 85416912a1SDavid Daney are controlled via GPIO lines. The multiplexer connects one of 86416912a1SDavid Daney several child MDIO busses to a parent bus. Child bus 87416912a1SDavid Daney selection is under the control of GPIO lines. 88416912a1SDavid Daney 896cc2ff82STimur Tabiconfig MDIO_BUS_MUX_MMIOREG 9097c84389SAndrew Lunn tristate "MMIO device-controlled MDIO bus multiplexers" 91cfa52005SRob Herring depends on OF_MDIO && HAS_IOMEM 926cc2ff82STimur Tabi select MDIO_BUS_MUX 936cc2ff82STimur Tabi help 946cc2ff82STimur Tabi This module provides a driver for MDIO bus multiplexers that 956cc2ff82STimur Tabi are controlled via a simple memory-mapped device, like an FPGA. 966cc2ff82STimur Tabi The multiplexer connects one of several child MDIO busses to a 976cc2ff82STimur Tabi parent bus. Child bus selection is under the control of one of 986cc2ff82STimur Tabi the FPGA's registers. 996cc2ff82STimur Tabi 1006cc2ff82STimur Tabi Currently, only 8-bit registers are supported. 1016cc2ff82STimur Tabi 102d75b4a22SAndrew Lunnconfig MDIO_CAVIUM 103d75b4a22SAndrew Lunn tristate 10498bc865aSPramod Kumar 105d75b4a22SAndrew Lunnconfig MDIO_GPIO 10697c84389SAndrew Lunn tristate "GPIO lib-based bitbanged MDIO buses" 107d75b4a22SAndrew Lunn depends on MDIO_BITBANG && GPIOLIB 108d75b4a22SAndrew Lunn ---help--- 109d75b4a22SAndrew Lunn Supports GPIO lib-based MDIO busses. 110ddc24ae1SArun Parameswaran 111d75b4a22SAndrew Lunn To compile this driver as a module, choose M here: the module 112d75b4a22SAndrew Lunn will be called mdio-gpio. 113d75b4a22SAndrew Lunn 114d75b4a22SAndrew Lunnconfig MDIO_HISI_FEMAC 115d75b4a22SAndrew Lunn tristate "Hisilicon FEMAC MDIO bus controller" 116ddc24ae1SArun Parameswaran depends on HAS_IOMEM && OF_MDIO 117ddc24ae1SArun Parameswaran help 118ddc24ae1SArun Parameswaran This module provides a driver for the MDIO busses found in the 119d75b4a22SAndrew Lunn Hisilicon SoC that have an Fast Ethernet MAC. 120d75b4a22SAndrew Lunn 121d75b4a22SAndrew Lunnconfig MDIO_MOXART 122d75b4a22SAndrew Lunn tristate "MOXA ART MDIO interface support" 123d75b4a22SAndrew Lunn depends on ARCH_MOXART 124d75b4a22SAndrew Lunn help 125d75b4a22SAndrew Lunn This driver supports the MDIO interface found in the network 126d75b4a22SAndrew Lunn interface units of the MOXA ART SoC 127d75b4a22SAndrew Lunn 128d75b4a22SAndrew Lunnconfig MDIO_OCTEON 12997c84389SAndrew Lunn tristate "Octeon and some ThunderX SOCs MDIO buses" 130d75b4a22SAndrew Lunn depends on 64BIT 131d75b4a22SAndrew Lunn depends on HAS_IOMEM 132d75b4a22SAndrew Lunn select MDIO_CAVIUM 133d75b4a22SAndrew Lunn help 134d75b4a22SAndrew Lunn This module provides a driver for the Octeon and ThunderX MDIO 135d75b4a22SAndrew Lunn buses. It is required by the Octeon and ThunderX ethernet device 136d75b4a22SAndrew Lunn drivers on some systems. 137d75b4a22SAndrew Lunn 138d75b4a22SAndrew Lunnconfig MDIO_SUN4I 139d75b4a22SAndrew Lunn tristate "Allwinner sun4i MDIO interface support" 140d75b4a22SAndrew Lunn depends on ARCH_SUNXI 141d75b4a22SAndrew Lunn help 142d75b4a22SAndrew Lunn This driver supports the MDIO interface found in the network 143d75b4a22SAndrew Lunn interface units of the Allwinner SoC that have an EMAC (A10, 144d75b4a22SAndrew Lunn A12, A10s, etc.) 145d75b4a22SAndrew Lunn 146d75b4a22SAndrew Lunnconfig MDIO_THUNDER 14797c84389SAndrew Lunn tristate "ThunderX SOCs MDIO buses" 148d75b4a22SAndrew Lunn depends on 64BIT 149d75b4a22SAndrew Lunn depends on PCI 150d75b4a22SAndrew Lunn select MDIO_CAVIUM 151d75b4a22SAndrew Lunn help 152d75b4a22SAndrew Lunn This driver supports the MDIO interfaces found on Cavium 153d75b4a22SAndrew Lunn ThunderX SoCs when the MDIO bus device appears as a PCI 154d75b4a22SAndrew Lunn device. 155d75b4a22SAndrew Lunn 156d75b4a22SAndrew Lunnconfig MDIO_XGENE 157d75b4a22SAndrew Lunn tristate "APM X-Gene SoC MDIO bus controller" 1587aa6ec22SLaura Abbott depends on ARCH_XGENE || COMPILE_TEST 159d75b4a22SAndrew Lunn help 160d75b4a22SAndrew Lunn This module provides a driver for the MDIO busses found in the 161d75b4a22SAndrew Lunn APM X-Gene SoC's. 162d75b4a22SAndrew Lunn 163d75b4a22SAndrew Lunncomment "MII PHY device drivers" 164d75b4a22SAndrew Lunn 165d75b4a22SAndrew Lunnconfig AMD_PHY 16697c84389SAndrew Lunn tristate "AMD PHYs" 167d75b4a22SAndrew Lunn ---help--- 168d75b4a22SAndrew Lunn Currently supports the am79c874 169d75b4a22SAndrew Lunn 170d75b4a22SAndrew Lunnconfig AQUANTIA_PHY 17197c84389SAndrew Lunn tristate "Aquantia PHYs" 172d75b4a22SAndrew Lunn ---help--- 173d75b4a22SAndrew Lunn Currently supports the Aquantia AQ1202, AQ2104, AQR105, AQR405 174d75b4a22SAndrew Lunn 175d75b4a22SAndrew Lunnconfig AT803X_PHY 17697c84389SAndrew Lunn tristate "AT803X PHYs" 177d75b4a22SAndrew Lunn ---help--- 178d75b4a22SAndrew Lunn Currently supports the AT8030 and AT8035 model 179d75b4a22SAndrew Lunn 180d75b4a22SAndrew Lunnconfig BCM63XX_PHY 18197c84389SAndrew Lunn tristate "Broadcom 63xx SOCs internal PHY" 182d75b4a22SAndrew Lunn depends on BCM63XX 183d75b4a22SAndrew Lunn select BCM_NET_PHYLIB 184d75b4a22SAndrew Lunn ---help--- 185d75b4a22SAndrew Lunn Currently supports the 6348 and 6358 PHYs. 186d75b4a22SAndrew Lunn 187d75b4a22SAndrew Lunnconfig BCM7XXX_PHY 18897c84389SAndrew Lunn tristate "Broadcom 7xxx SOCs internal PHYs" 189d75b4a22SAndrew Lunn select BCM_NET_PHYLIB 190d75b4a22SAndrew Lunn ---help--- 191d75b4a22SAndrew Lunn Currently supports the BCM7366, BCM7439, BCM7445, and 192d75b4a22SAndrew Lunn 40nm and 65nm generation of BCM7xxx Set Top Box SoCs. 193d75b4a22SAndrew Lunn 194d75b4a22SAndrew Lunnconfig BCM87XX_PHY 19597c84389SAndrew Lunn tristate "Broadcom BCM8706 and BCM8727 PHYs" 196d75b4a22SAndrew Lunn help 197d75b4a22SAndrew Lunn Currently supports the BCM8706 and BCM8727 10G Ethernet PHYs. 198d75b4a22SAndrew Lunn 199d75b4a22SAndrew Lunnconfig BCM_CYGNUS_PHY 20097c84389SAndrew Lunn tristate "Broadcom Cygnus SoC internal PHY" 201d75b4a22SAndrew Lunn depends on ARCH_BCM_CYGNUS || COMPILE_TEST 202d75b4a22SAndrew Lunn depends on MDIO_BCM_IPROC 203d75b4a22SAndrew Lunn select BCM_NET_PHYLIB 204d75b4a22SAndrew Lunn ---help--- 205d75b4a22SAndrew Lunn This PHY driver is for the 1G internal PHYs of the Broadcom 206d75b4a22SAndrew Lunn Cygnus Family SoC. 207d75b4a22SAndrew Lunn 208d75b4a22SAndrew Lunn Currently supports internal PHY's used in the BCM11300, 209d75b4a22SAndrew Lunn BCM11320, BCM11350, BCM11360, BCM58300, BCM58302, 210d75b4a22SAndrew Lunn BCM58303 & BCM58305 Broadcom Cygnus SoCs. 211d75b4a22SAndrew Lunn 212d75b4a22SAndrew Lunnconfig BCM_NET_PHYLIB 213d75b4a22SAndrew Lunn tristate 214d75b4a22SAndrew Lunn 215d75b4a22SAndrew Lunnconfig BROADCOM_PHY 21697c84389SAndrew Lunn tristate "Broadcom PHYs" 217d75b4a22SAndrew Lunn select BCM_NET_PHYLIB 218d75b4a22SAndrew Lunn ---help--- 219d75b4a22SAndrew Lunn Currently supports the BCM5411, BCM5421, BCM5461, BCM54616S, BCM5464, 220d75b4a22SAndrew Lunn BCM5481 and BCM5482 PHYs. 221d75b4a22SAndrew Lunn 222d75b4a22SAndrew Lunnconfig CICADA_PHY 22397c84389SAndrew Lunn tristate "Cicada PHYs" 224d75b4a22SAndrew Lunn ---help--- 225d75b4a22SAndrew Lunn Currently supports the cis8204 226d75b4a22SAndrew Lunn 227d75b4a22SAndrew Lunnconfig DAVICOM_PHY 22897c84389SAndrew Lunn tristate "Davicom PHYs" 229d75b4a22SAndrew Lunn ---help--- 230d75b4a22SAndrew Lunn Currently supports dm9161e and dm9131 231d75b4a22SAndrew Lunn 232d75b4a22SAndrew Lunnconfig DP83848_PHY 23397c84389SAndrew Lunn tristate "Texas Instruments DP83848 PHY" 234d75b4a22SAndrew Lunn ---help--- 235d75b4a22SAndrew Lunn Supports the DP83848 PHY. 236d75b4a22SAndrew Lunn 237d75b4a22SAndrew Lunnconfig DP83867_PHY 23897c84389SAndrew Lunn tristate "Texas Instruments DP83867 Gigabit PHY" 239d75b4a22SAndrew Lunn ---help--- 240d75b4a22SAndrew Lunn Currently supports the DP83867 PHY. 241d75b4a22SAndrew Lunn 242d75b4a22SAndrew Lunnconfig FIXED_PHY 24397c84389SAndrew Lunn tristate "MDIO Bus/PHY emulation with fixed speed/link PHYs" 244d75b4a22SAndrew Lunn depends on PHYLIB 245d75b4a22SAndrew Lunn select SWPHY 246d75b4a22SAndrew Lunn ---help--- 247d75b4a22SAndrew Lunn Adds the platform "fixed" MDIO Bus to cover the boards that use 248d75b4a22SAndrew Lunn PHYs that are not connected to the real MDIO bus. 249d75b4a22SAndrew Lunn 250d75b4a22SAndrew Lunn Currently tested with mpc866ads and mpc8349e-mitx. 251d75b4a22SAndrew Lunn 252d75b4a22SAndrew Lunnconfig ICPLUS_PHY 25397c84389SAndrew Lunn tristate "ICPlus PHYs" 254d75b4a22SAndrew Lunn ---help--- 255d75b4a22SAndrew Lunn Currently supports the IP175C and IP1001 PHYs. 256ddc24ae1SArun Parameswaran 257112b558dSHauke Mehrtensconfig INTEL_XWAY_PHY 25897c84389SAndrew Lunn tristate "Intel XWAY PHYs" 259112b558dSHauke Mehrtens ---help--- 260112b558dSHauke Mehrtens Supports the Intel XWAY (former Lantiq) 11G and 22E PHYs. 261112b558dSHauke Mehrtens These PHYs are marked as standalone chips under the names 262112b558dSHauke Mehrtens PEF 7061, PEF 7071 and PEF 7072 or integrated into the Intel 263112b558dSHauke Mehrtens SoCs xRX200, xRX300, xRX330, xRX350 and xRX550. 264112b558dSHauke Mehrtens 265d75b4a22SAndrew Lunnconfig LSI_ET1011C_PHY 26697c84389SAndrew Lunn tristate "LSI ET1011C PHY" 267d75b4a22SAndrew Lunn ---help--- 268d75b4a22SAndrew Lunn Supports the LSI ET1011C PHY. 2694960e4b1SDongpo Li 270d75b4a22SAndrew Lunnconfig LXT_PHY 27197c84389SAndrew Lunn tristate "Intel LXT PHYs" 272d75b4a22SAndrew Lunn ---help--- 273d75b4a22SAndrew Lunn Currently supports the lxt970, lxt971 274d75b4a22SAndrew Lunn 275d75b4a22SAndrew Lunnconfig MARVELL_PHY 27697c84389SAndrew Lunn tristate "Marvell PHYs" 277d75b4a22SAndrew Lunn ---help--- 278d75b4a22SAndrew Lunn Currently has a driver for the 88E1011S 279d75b4a22SAndrew Lunn 280d75b4a22SAndrew Lunnconfig MICREL_PHY 28197c84389SAndrew Lunn tristate "Micrel PHYs" 282d75b4a22SAndrew Lunn ---help--- 283d75b4a22SAndrew Lunn Supports the KSZ9021, VSC8201, KS8001 PHYs. 284d75b4a22SAndrew Lunn 285d75b4a22SAndrew Lunnconfig MICROCHIP_PHY 28697c84389SAndrew Lunn tristate "Microchip PHYs" 28743b3cf66SIyappan Subramanian help 288d75b4a22SAndrew Lunn Supports the LAN88XX PHYs. 28943b3cf66SIyappan Subramanian 290d50736a8SRaju Lakkarajuconfig MICROSEMI_PHY 29197c84389SAndrew Lunn tristate "Microsemi PHYs" 292d50736a8SRaju Lakkaraju ---help--- 293*af1fee98SRaju Lakkaraju Currently supports VSC8530, VSC8531, VSC8540 and VSC8541 PHYs 294d50736a8SRaju Lakkaraju 295d75b4a22SAndrew Lunnconfig NATIONAL_PHY 29697c84389SAndrew Lunn tristate "National Semiconductor PHYs" 297d75b4a22SAndrew Lunn ---help--- 298d75b4a22SAndrew Lunn Currently supports the DP83865 PHY. 299d75b4a22SAndrew Lunn 300d75b4a22SAndrew Lunnconfig QSEMI_PHY 30197c84389SAndrew Lunn tristate "Quality Semiconductor PHYs" 302d75b4a22SAndrew Lunn ---help--- 303d75b4a22SAndrew Lunn Currently supports the qs6612 304d75b4a22SAndrew Lunn 305d75b4a22SAndrew Lunnconfig REALTEK_PHY 30697c84389SAndrew Lunn tristate "Realtek PHYs" 307d75b4a22SAndrew Lunn ---help--- 308d75b4a22SAndrew Lunn Supports the Realtek 821x PHY. 309d75b4a22SAndrew Lunn 310d75b4a22SAndrew Lunnconfig SMSC_PHY 31197c84389SAndrew Lunn tristate "SMSC PHYs" 312d75b4a22SAndrew Lunn ---help--- 313d75b4a22SAndrew Lunn Currently supports the LAN83C185, LAN8187 and LAN8700 PHYs 314d75b4a22SAndrew Lunn 315d75b4a22SAndrew Lunnconfig STE10XP 31697c84389SAndrew Lunn tristate "STMicroelectronics STe10Xp PHYs" 317d75b4a22SAndrew Lunn ---help--- 318d75b4a22SAndrew Lunn This is the driver for the STe100p and STe101p PHYs. 319d75b4a22SAndrew Lunn 320d75b4a22SAndrew Lunnconfig TERANETICS_PHY 32197c84389SAndrew Lunn tristate "Teranetics PHYs" 322d75b4a22SAndrew Lunn ---help--- 323d75b4a22SAndrew Lunn Currently supports the Teranetics TN2020 324d75b4a22SAndrew Lunn 325d75b4a22SAndrew Lunnconfig VITESSE_PHY 32697c84389SAndrew Lunn tristate "Vitesse PHYs" 327d75b4a22SAndrew Lunn ---help--- 328d75b4a22SAndrew Lunn Currently supports the vsc8244 329d75b4a22SAndrew Lunn 330f411a616SAppana Durga Kedareswara Raoconfig XILINX_GMII2RGMII 331f411a616SAppana Durga Kedareswara Rao tristate "Xilinx GMII2RGMII converter driver" 332f411a616SAppana Durga Kedareswara Rao ---help--- 333f411a616SAppana Durga Kedareswara Rao This driver support xilinx GMII to RGMII IP core it provides 334f411a616SAppana Durga Kedareswara Rao the Reduced Gigabit Media Independent Interface(RGMII) between 335f411a616SAppana Durga Kedareswara Rao Ethernet physical media devices and the Gigabit Ethernet controller. 336f411a616SAppana Durga Kedareswara Rao 33753f99941SJan Engelhardtendif # PHYLIB 338a8e510f6SFrederic LAMBERT 339a8e510f6SFrederic LAMBERTconfig MICREL_KS8995MA 340a8e510f6SFrederic LAMBERT tristate "Micrel KS8995MA 5-ports 10/100 managed Ethernet switch" 341a8e510f6SFrederic LAMBERT depends on SPI 342