100db8189SAndy Fleming# 200db8189SAndy Fleming# PHY Layer Configuration 300db8189SAndy Fleming# 400db8189SAndy Fleming 590eff909SFlorian Fainellimenuconfig MDIO_DEVICE 690eff909SFlorian Fainelli tristate "MDIO bus device drivers" 700db8189SAndy Fleming help 890eff909SFlorian Fainelli MDIO devices and driver infrastructure code. 900db8189SAndy Fleming 1090eff909SFlorian Fainelliif MDIO_DEVICE 1100db8189SAndy Fleming 12d75b4a22SAndrew Lunnconfig MDIO_BCM_IPROC 13d75b4a22SAndrew Lunn tristate "Broadcom iProc MDIO bus controller" 14d75b4a22SAndrew Lunn depends on ARCH_BCM_IPROC || COMPILE_TEST 15d75b4a22SAndrew Lunn depends on HAS_IOMEM && OF_MDIO 16e9976d7cSDavid Daney help 17d75b4a22SAndrew Lunn This module provides a driver for the MDIO busses found in the 18d75b4a22SAndrew Lunn Broadcom iProc SoC's. 19e9976d7cSDavid Daney 20d75b4a22SAndrew Lunnconfig MDIO_BCM_UNIMAC 21d75b4a22SAndrew Lunn tristate "Broadcom UniMAC MDIO bus controller" 2217487eebSFlorian Fainelli depends on HAS_IOMEM && OF_MDIO 23792aec47SWoojung.Huh@microchip.com help 24d75b4a22SAndrew Lunn This module provides a driver for the Broadcom UniMAC MDIO busses. 25d75b4a22SAndrew Lunn This hardware can be found in the Broadcom GENET Ethernet MAC 26d75b4a22SAndrew Lunn controllers as well as some Broadcom Ethernet switches such as the 27d75b4a22SAndrew Lunn Starfighter 2 switches. 287c32f470SVitaly Bordug 29e2ec4581SScott Woodconfig MDIO_BITBANG 3097c84389SAndrew Lunn tristate "Bitbanged MDIO buses" 3190eff909SFlorian Fainelli depends on !(MDIO_DEVICE=y && PHYLIB=m) 32e2ec4581SScott Wood help 33e2ec4581SScott Wood This module implements the MDIO bus protocol in software, 34e2ec4581SScott Wood for use by low level drivers that export the ability to 35e2ec4581SScott Wood drive the relevant pins. 36e2ec4581SScott Wood 37e2ec4581SScott Wood If in doubt, say N. 38e2ec4581SScott Wood 390ca2997dSDavid Daneyconfig MDIO_BUS_MUX 400ca2997dSDavid Daney tristate 410ca2997dSDavid Daney depends on OF_MDIO 420ca2997dSDavid Daney help 430ca2997dSDavid Daney This module provides a driver framework for MDIO bus 440ca2997dSDavid Daney multiplexers which connect one of several child MDIO busses 450ca2997dSDavid Daney to a parent bus. Switching between child busses is done by 460ca2997dSDavid Daney device specific drivers. 470ca2997dSDavid Daney 48d75b4a22SAndrew Lunnconfig MDIO_BUS_MUX_BCM_IPROC 4997c84389SAndrew Lunn tristate "Broadcom iProc based MDIO bus multiplexers" 50d75b4a22SAndrew Lunn depends on OF && OF_MDIO && (ARCH_BCM_IPROC || COMPILE_TEST) 51d75b4a22SAndrew Lunn select MDIO_BUS_MUX 52d75b4a22SAndrew Lunn default ARCH_BCM_IPROC 53d75b4a22SAndrew Lunn help 54d75b4a22SAndrew Lunn This module provides a driver for MDIO bus multiplexers found in 55d75b4a22SAndrew Lunn iProc based Broadcom SoCs. This multiplexer connects one of several 56d75b4a22SAndrew Lunn child MDIO bus to a parent bus. Buses could be internal as well as 57d75b4a22SAndrew Lunn external and selection logic lies inside the same multiplexer. 58d75b4a22SAndrew Lunn 59416912a1SDavid Daneyconfig MDIO_BUS_MUX_GPIO 6097c84389SAndrew Lunn tristate "GPIO controlled MDIO bus multiplexers" 61416912a1SDavid Daney depends on OF_GPIO && OF_MDIO 62416912a1SDavid Daney select MDIO_BUS_MUX 63416912a1SDavid Daney help 64416912a1SDavid Daney This module provides a driver for MDIO bus multiplexers that 65416912a1SDavid Daney are controlled via GPIO lines. The multiplexer connects one of 66416912a1SDavid Daney several child MDIO busses to a parent bus. Child bus 67416912a1SDavid Daney selection is under the control of GPIO lines. 68416912a1SDavid Daney 696cc2ff82STimur Tabiconfig MDIO_BUS_MUX_MMIOREG 7097c84389SAndrew Lunn tristate "MMIO device-controlled MDIO bus multiplexers" 71cfa52005SRob Herring depends on OF_MDIO && HAS_IOMEM 726cc2ff82STimur Tabi select MDIO_BUS_MUX 736cc2ff82STimur Tabi help 746cc2ff82STimur Tabi This module provides a driver for MDIO bus multiplexers that 756cc2ff82STimur Tabi are controlled via a simple memory-mapped device, like an FPGA. 766cc2ff82STimur Tabi The multiplexer connects one of several child MDIO busses to a 776cc2ff82STimur Tabi parent bus. Child bus selection is under the control of one of 786cc2ff82STimur Tabi the FPGA's registers. 796cc2ff82STimur Tabi 806cc2ff82STimur Tabi Currently, only 8-bit registers are supported. 816cc2ff82STimur Tabi 82d75b4a22SAndrew Lunnconfig MDIO_CAVIUM 83d75b4a22SAndrew Lunn tristate 8498bc865aSPramod Kumar 85d75b4a22SAndrew Lunnconfig MDIO_GPIO 8697c84389SAndrew Lunn tristate "GPIO lib-based bitbanged MDIO buses" 87d75b4a22SAndrew Lunn depends on MDIO_BITBANG && GPIOLIB 88d75b4a22SAndrew Lunn ---help--- 89d75b4a22SAndrew Lunn Supports GPIO lib-based MDIO busses. 90ddc24ae1SArun Parameswaran 91d75b4a22SAndrew Lunn To compile this driver as a module, choose M here: the module 92d75b4a22SAndrew Lunn will be called mdio-gpio. 93d75b4a22SAndrew Lunn 94d75b4a22SAndrew Lunnconfig MDIO_HISI_FEMAC 95d75b4a22SAndrew Lunn tristate "Hisilicon FEMAC MDIO bus controller" 96ddc24ae1SArun Parameswaran depends on HAS_IOMEM && OF_MDIO 97ddc24ae1SArun Parameswaran help 98ddc24ae1SArun Parameswaran This module provides a driver for the MDIO busses found in the 99d75b4a22SAndrew Lunn Hisilicon SoC that have an Fast Ethernet MAC. 100d75b4a22SAndrew Lunn 101d75b4a22SAndrew Lunnconfig MDIO_MOXART 102d75b4a22SAndrew Lunn tristate "MOXA ART MDIO interface support" 103d75b4a22SAndrew Lunn depends on ARCH_MOXART 104d75b4a22SAndrew Lunn help 105d75b4a22SAndrew Lunn This driver supports the MDIO interface found in the network 106d75b4a22SAndrew Lunn interface units of the MOXA ART SoC 107d75b4a22SAndrew Lunn 108d75b4a22SAndrew Lunnconfig MDIO_OCTEON 10997c84389SAndrew Lunn tristate "Octeon and some ThunderX SOCs MDIO buses" 110d75b4a22SAndrew Lunn depends on 64BIT 111*cd47512eSRandy Dunlap depends on HAS_IOMEM && OF_MDIO 112d75b4a22SAndrew Lunn select MDIO_CAVIUM 113d75b4a22SAndrew Lunn help 114d75b4a22SAndrew Lunn This module provides a driver for the Octeon and ThunderX MDIO 115d75b4a22SAndrew Lunn buses. It is required by the Octeon and ThunderX ethernet device 116d75b4a22SAndrew Lunn drivers on some systems. 117d75b4a22SAndrew Lunn 118d75b4a22SAndrew Lunnconfig MDIO_SUN4I 119d75b4a22SAndrew Lunn tristate "Allwinner sun4i MDIO interface support" 120d75b4a22SAndrew Lunn depends on ARCH_SUNXI 121d75b4a22SAndrew Lunn help 122d75b4a22SAndrew Lunn This driver supports the MDIO interface found in the network 123d75b4a22SAndrew Lunn interface units of the Allwinner SoC that have an EMAC (A10, 124d75b4a22SAndrew Lunn A12, A10s, etc.) 125d75b4a22SAndrew Lunn 126d75b4a22SAndrew Lunnconfig MDIO_THUNDER 12797c84389SAndrew Lunn tristate "ThunderX SOCs MDIO buses" 128d75b4a22SAndrew Lunn depends on 64BIT 129d75b4a22SAndrew Lunn depends on PCI 130d75b4a22SAndrew Lunn select MDIO_CAVIUM 131d75b4a22SAndrew Lunn help 132d75b4a22SAndrew Lunn This driver supports the MDIO interfaces found on Cavium 133d75b4a22SAndrew Lunn ThunderX SoCs when the MDIO bus device appears as a PCI 134d75b4a22SAndrew Lunn device. 135d75b4a22SAndrew Lunn 136d75b4a22SAndrew Lunnconfig MDIO_XGENE 137d75b4a22SAndrew Lunn tristate "APM X-Gene SoC MDIO bus controller" 1387aa6ec22SLaura Abbott depends on ARCH_XGENE || COMPILE_TEST 139d75b4a22SAndrew Lunn help 140d75b4a22SAndrew Lunn This module provides a driver for the MDIO busses found in the 141d75b4a22SAndrew Lunn APM X-Gene SoC's. 142d75b4a22SAndrew Lunn 14390eff909SFlorian Fainelliendif 14490eff909SFlorian Fainelli 14590eff909SFlorian Fainellimenuconfig PHYLIB 14690eff909SFlorian Fainelli tristate "PHY Device support and infrastructure" 14790eff909SFlorian Fainelli depends on NETDEVICES 14890eff909SFlorian Fainelli select MDIO_DEVICE 14990eff909SFlorian Fainelli help 15090eff909SFlorian Fainelli Ethernet controllers are usually attached to PHY 15190eff909SFlorian Fainelli devices. This option provides infrastructure for 15290eff909SFlorian Fainelli managing PHY devices. 15390eff909SFlorian Fainelli 15490eff909SFlorian Fainelliif PHYLIB 15590eff909SFlorian Fainelli 15690eff909SFlorian Fainelliconfig SWPHY 15790eff909SFlorian Fainelli bool 15890eff909SFlorian Fainelli 15990eff909SFlorian Fainelliconfig LED_TRIGGER_PHY 16090eff909SFlorian Fainelli bool "Support LED triggers for tracking link state" 16190eff909SFlorian Fainelli depends on LEDS_TRIGGERS 16290eff909SFlorian Fainelli ---help--- 16390eff909SFlorian Fainelli Adds support for a set of LED trigger events per-PHY. Link 16490eff909SFlorian Fainelli state change will trigger the events, for consumption by an 16590eff909SFlorian Fainelli LED class driver. There are triggers for each link speed currently 16690eff909SFlorian Fainelli supported by the phy, and are of the form: 16790eff909SFlorian Fainelli <mii bus id>:<phy>:<speed> 16890eff909SFlorian Fainelli 16990eff909SFlorian Fainelli Where speed is in the form: 17090eff909SFlorian Fainelli <Speed in megabits>Mbps or <Speed in gigabits>Gbps 17190eff909SFlorian Fainelli 17290eff909SFlorian Fainelli 173d75b4a22SAndrew Lunncomment "MII PHY device drivers" 174d75b4a22SAndrew Lunn 175d75b4a22SAndrew Lunnconfig AMD_PHY 17697c84389SAndrew Lunn tristate "AMD PHYs" 177d75b4a22SAndrew Lunn ---help--- 178d75b4a22SAndrew Lunn Currently supports the am79c874 179d75b4a22SAndrew Lunn 180d75b4a22SAndrew Lunnconfig AQUANTIA_PHY 18197c84389SAndrew Lunn tristate "Aquantia PHYs" 182d75b4a22SAndrew Lunn ---help--- 183d75b4a22SAndrew Lunn Currently supports the Aquantia AQ1202, AQ2104, AQR105, AQR405 184d75b4a22SAndrew Lunn 185d75b4a22SAndrew Lunnconfig AT803X_PHY 18697c84389SAndrew Lunn tristate "AT803X PHYs" 187d75b4a22SAndrew Lunn ---help--- 188d75b4a22SAndrew Lunn Currently supports the AT8030 and AT8035 model 189d75b4a22SAndrew Lunn 190d75b4a22SAndrew Lunnconfig BCM63XX_PHY 19197c84389SAndrew Lunn tristate "Broadcom 63xx SOCs internal PHY" 192d75b4a22SAndrew Lunn depends on BCM63XX 193d75b4a22SAndrew Lunn select BCM_NET_PHYLIB 194d75b4a22SAndrew Lunn ---help--- 195d75b4a22SAndrew Lunn Currently supports the 6348 and 6358 PHYs. 196d75b4a22SAndrew Lunn 197d75b4a22SAndrew Lunnconfig BCM7XXX_PHY 19897c84389SAndrew Lunn tristate "Broadcom 7xxx SOCs internal PHYs" 199d75b4a22SAndrew Lunn select BCM_NET_PHYLIB 200d75b4a22SAndrew Lunn ---help--- 201d75b4a22SAndrew Lunn Currently supports the BCM7366, BCM7439, BCM7445, and 202d75b4a22SAndrew Lunn 40nm and 65nm generation of BCM7xxx Set Top Box SoCs. 203d75b4a22SAndrew Lunn 204d75b4a22SAndrew Lunnconfig BCM87XX_PHY 20597c84389SAndrew Lunn tristate "Broadcom BCM8706 and BCM8727 PHYs" 206d75b4a22SAndrew Lunn help 207d75b4a22SAndrew Lunn Currently supports the BCM8706 and BCM8727 10G Ethernet PHYs. 208d75b4a22SAndrew Lunn 209d75b4a22SAndrew Lunnconfig BCM_CYGNUS_PHY 21097c84389SAndrew Lunn tristate "Broadcom Cygnus SoC internal PHY" 211d75b4a22SAndrew Lunn depends on ARCH_BCM_CYGNUS || COMPILE_TEST 212d75b4a22SAndrew Lunn depends on MDIO_BCM_IPROC 213d75b4a22SAndrew Lunn select BCM_NET_PHYLIB 214d75b4a22SAndrew Lunn ---help--- 215d75b4a22SAndrew Lunn This PHY driver is for the 1G internal PHYs of the Broadcom 216d75b4a22SAndrew Lunn Cygnus Family SoC. 217d75b4a22SAndrew Lunn 218d75b4a22SAndrew Lunn Currently supports internal PHY's used in the BCM11300, 219d75b4a22SAndrew Lunn BCM11320, BCM11350, BCM11360, BCM58300, BCM58302, 220d75b4a22SAndrew Lunn BCM58303 & BCM58305 Broadcom Cygnus SoCs. 221d75b4a22SAndrew Lunn 222d75b4a22SAndrew Lunnconfig BCM_NET_PHYLIB 223d75b4a22SAndrew Lunn tristate 224d75b4a22SAndrew Lunn 225d75b4a22SAndrew Lunnconfig BROADCOM_PHY 22697c84389SAndrew Lunn tristate "Broadcom PHYs" 227d75b4a22SAndrew Lunn select BCM_NET_PHYLIB 228d75b4a22SAndrew Lunn ---help--- 229d75b4a22SAndrew Lunn Currently supports the BCM5411, BCM5421, BCM5461, BCM54616S, BCM5464, 230b14995acSJon Mason BCM5481, BCM54810 and BCM5482 PHYs. 231d75b4a22SAndrew Lunn 232d75b4a22SAndrew Lunnconfig CICADA_PHY 23397c84389SAndrew Lunn tristate "Cicada PHYs" 234d75b4a22SAndrew Lunn ---help--- 235d75b4a22SAndrew Lunn Currently supports the cis8204 236d75b4a22SAndrew Lunn 237d75b4a22SAndrew Lunnconfig DAVICOM_PHY 23897c84389SAndrew Lunn tristate "Davicom PHYs" 239d75b4a22SAndrew Lunn ---help--- 240d75b4a22SAndrew Lunn Currently supports dm9161e and dm9131 241d75b4a22SAndrew Lunn 242d75b4a22SAndrew Lunnconfig DP83848_PHY 24397c84389SAndrew Lunn tristate "Texas Instruments DP83848 PHY" 244d75b4a22SAndrew Lunn ---help--- 245d75b4a22SAndrew Lunn Supports the DP83848 PHY. 246d75b4a22SAndrew Lunn 247d75b4a22SAndrew Lunnconfig DP83867_PHY 24897c84389SAndrew Lunn tristate "Texas Instruments DP83867 Gigabit PHY" 249d75b4a22SAndrew Lunn ---help--- 250d75b4a22SAndrew Lunn Currently supports the DP83867 PHY. 251d75b4a22SAndrew Lunn 252d75b4a22SAndrew Lunnconfig FIXED_PHY 25397c84389SAndrew Lunn tristate "MDIO Bus/PHY emulation with fixed speed/link PHYs" 254d75b4a22SAndrew Lunn depends on PHYLIB 255d75b4a22SAndrew Lunn select SWPHY 256d75b4a22SAndrew Lunn ---help--- 257d75b4a22SAndrew Lunn Adds the platform "fixed" MDIO Bus to cover the boards that use 258d75b4a22SAndrew Lunn PHYs that are not connected to the real MDIO bus. 259d75b4a22SAndrew Lunn 260d75b4a22SAndrew Lunn Currently tested with mpc866ads and mpc8349e-mitx. 261d75b4a22SAndrew Lunn 262d75b4a22SAndrew Lunnconfig ICPLUS_PHY 26397c84389SAndrew Lunn tristate "ICPlus PHYs" 264d75b4a22SAndrew Lunn ---help--- 265d75b4a22SAndrew Lunn Currently supports the IP175C and IP1001 PHYs. 266ddc24ae1SArun Parameswaran 267112b558dSHauke Mehrtensconfig INTEL_XWAY_PHY 26897c84389SAndrew Lunn tristate "Intel XWAY PHYs" 269112b558dSHauke Mehrtens ---help--- 270112b558dSHauke Mehrtens Supports the Intel XWAY (former Lantiq) 11G and 22E PHYs. 271112b558dSHauke Mehrtens These PHYs are marked as standalone chips under the names 272112b558dSHauke Mehrtens PEF 7061, PEF 7071 and PEF 7072 or integrated into the Intel 273112b558dSHauke Mehrtens SoCs xRX200, xRX300, xRX330, xRX350 and xRX550. 274112b558dSHauke Mehrtens 275d75b4a22SAndrew Lunnconfig LSI_ET1011C_PHY 27697c84389SAndrew Lunn tristate "LSI ET1011C PHY" 277d75b4a22SAndrew Lunn ---help--- 278d75b4a22SAndrew Lunn Supports the LSI ET1011C PHY. 2794960e4b1SDongpo Li 280d75b4a22SAndrew Lunnconfig LXT_PHY 28197c84389SAndrew Lunn tristate "Intel LXT PHYs" 282d75b4a22SAndrew Lunn ---help--- 283d75b4a22SAndrew Lunn Currently supports the lxt970, lxt971 284d75b4a22SAndrew Lunn 285d75b4a22SAndrew Lunnconfig MARVELL_PHY 28697c84389SAndrew Lunn tristate "Marvell PHYs" 287d75b4a22SAndrew Lunn ---help--- 288d75b4a22SAndrew Lunn Currently has a driver for the 88E1011S 289d75b4a22SAndrew Lunn 2907334b3e4SNeil Armstrongconfig MESON_GXL_PHY 2917334b3e4SNeil Armstrong tristate "Amlogic Meson GXL Internal PHY" 2922ebae8bdSJean Delvare depends on ARCH_MESON || COMPILE_TEST 2937334b3e4SNeil Armstrong ---help--- 2947334b3e4SNeil Armstrong Currently has a driver for the Amlogic Meson GXL Internal PHY 2957334b3e4SNeil Armstrong 296d75b4a22SAndrew Lunnconfig MICREL_PHY 29797c84389SAndrew Lunn tristate "Micrel PHYs" 298d75b4a22SAndrew Lunn ---help--- 299d75b4a22SAndrew Lunn Supports the KSZ9021, VSC8201, KS8001 PHYs. 300d75b4a22SAndrew Lunn 301d75b4a22SAndrew Lunnconfig MICROCHIP_PHY 30297c84389SAndrew Lunn tristate "Microchip PHYs" 30343b3cf66SIyappan Subramanian help 304d75b4a22SAndrew Lunn Supports the LAN88XX PHYs. 30543b3cf66SIyappan Subramanian 306d50736a8SRaju Lakkarajuconfig MICROSEMI_PHY 30797c84389SAndrew Lunn tristate "Microsemi PHYs" 308d50736a8SRaju Lakkaraju ---help--- 309af1fee98SRaju Lakkaraju Currently supports VSC8530, VSC8531, VSC8540 and VSC8541 PHYs 310d50736a8SRaju Lakkaraju 311d75b4a22SAndrew Lunnconfig NATIONAL_PHY 31297c84389SAndrew Lunn tristate "National Semiconductor PHYs" 313d75b4a22SAndrew Lunn ---help--- 314d75b4a22SAndrew Lunn Currently supports the DP83865 PHY. 315d75b4a22SAndrew Lunn 316d75b4a22SAndrew Lunnconfig QSEMI_PHY 31797c84389SAndrew Lunn tristate "Quality Semiconductor PHYs" 318d75b4a22SAndrew Lunn ---help--- 319d75b4a22SAndrew Lunn Currently supports the qs6612 320d75b4a22SAndrew Lunn 321d75b4a22SAndrew Lunnconfig REALTEK_PHY 32297c84389SAndrew Lunn tristate "Realtek PHYs" 323d75b4a22SAndrew Lunn ---help--- 324d75b4a22SAndrew Lunn Supports the Realtek 821x PHY. 325d75b4a22SAndrew Lunn 326d75b4a22SAndrew Lunnconfig SMSC_PHY 32797c84389SAndrew Lunn tristate "SMSC PHYs" 328d75b4a22SAndrew Lunn ---help--- 329d75b4a22SAndrew Lunn Currently supports the LAN83C185, LAN8187 and LAN8700 PHYs 330d75b4a22SAndrew Lunn 331d75b4a22SAndrew Lunnconfig STE10XP 33297c84389SAndrew Lunn tristate "STMicroelectronics STe10Xp PHYs" 333d75b4a22SAndrew Lunn ---help--- 334d75b4a22SAndrew Lunn This is the driver for the STe100p and STe101p PHYs. 335d75b4a22SAndrew Lunn 336d75b4a22SAndrew Lunnconfig TERANETICS_PHY 33797c84389SAndrew Lunn tristate "Teranetics PHYs" 338d75b4a22SAndrew Lunn ---help--- 339d75b4a22SAndrew Lunn Currently supports the Teranetics TN2020 340d75b4a22SAndrew Lunn 341d75b4a22SAndrew Lunnconfig VITESSE_PHY 34297c84389SAndrew Lunn tristate "Vitesse PHYs" 343d75b4a22SAndrew Lunn ---help--- 344d75b4a22SAndrew Lunn Currently supports the vsc8244 345d75b4a22SAndrew Lunn 346f411a616SAppana Durga Kedareswara Raoconfig XILINX_GMII2RGMII 347f411a616SAppana Durga Kedareswara Rao tristate "Xilinx GMII2RGMII converter driver" 348f411a616SAppana Durga Kedareswara Rao ---help--- 349f411a616SAppana Durga Kedareswara Rao This driver support xilinx GMII to RGMII IP core it provides 350f411a616SAppana Durga Kedareswara Rao the Reduced Gigabit Media Independent Interface(RGMII) between 351f411a616SAppana Durga Kedareswara Rao Ethernet physical media devices and the Gigabit Ethernet controller. 352f411a616SAppana Durga Kedareswara Rao 35353f99941SJan Engelhardtendif # PHYLIB 354a8e510f6SFrederic LAMBERT 355a8e510f6SFrederic LAMBERTconfig MICREL_KS8995MA 356a8e510f6SFrederic LAMBERT tristate "Micrel KS8995MA 5-ports 10/100 managed Ethernet switch" 357a8e510f6SFrederic LAMBERT depends on SPI 358