1# 2# PHY Layer Configuration 3# 4 5menuconfig PHYLIB 6 tristate "PHY Device support and infrastructure" 7 depends on NETDEVICES 8 help 9 Ethernet controllers are usually attached to PHY 10 devices. This option provides infrastructure for 11 managing PHY devices. 12 13if PHYLIB 14 15config SWPHY 16 bool 17 18config LED_TRIGGER_PHY 19 bool "Support LED triggers for tracking link state" 20 depends on LEDS_TRIGGERS 21 ---help--- 22 Adds support for a set of LED trigger events per-PHY. Link 23 state change will trigger the events, for consumption by an 24 LED class driver. There are triggers for each link speed currently 25 supported by the phy, and are of the form: 26 <mii bus id>:<phy>:<speed> 27 28 Where speed is in the form: 29 <Speed in megabits>Mbps or <Speed in gigabits>Gbps 30 31comment "MDIO bus device drivers" 32 33config MDIO_BCM_IPROC 34 tristate "Broadcom iProc MDIO bus controller" 35 depends on ARCH_BCM_IPROC || COMPILE_TEST 36 depends on HAS_IOMEM && OF_MDIO 37 help 38 This module provides a driver for the MDIO busses found in the 39 Broadcom iProc SoC's. 40 41config MDIO_BCM_UNIMAC 42 tristate "Broadcom UniMAC MDIO bus controller" 43 depends on HAS_IOMEM 44 help 45 This module provides a driver for the Broadcom UniMAC MDIO busses. 46 This hardware can be found in the Broadcom GENET Ethernet MAC 47 controllers as well as some Broadcom Ethernet switches such as the 48 Starfighter 2 switches. 49 50config MDIO_BITBANG 51 tristate "Bitbanged MDIO buses" 52 help 53 This module implements the MDIO bus protocol in software, 54 for use by low level drivers that export the ability to 55 drive the relevant pins. 56 57 If in doubt, say N. 58 59config MDIO_BUS_MUX 60 tristate 61 depends on OF_MDIO 62 help 63 This module provides a driver framework for MDIO bus 64 multiplexers which connect one of several child MDIO busses 65 to a parent bus. Switching between child busses is done by 66 device specific drivers. 67 68config MDIO_BUS_MUX_BCM_IPROC 69 tristate "Broadcom iProc based MDIO bus multiplexers" 70 depends on OF && OF_MDIO && (ARCH_BCM_IPROC || COMPILE_TEST) 71 select MDIO_BUS_MUX 72 default ARCH_BCM_IPROC 73 help 74 This module provides a driver for MDIO bus multiplexers found in 75 iProc based Broadcom SoCs. This multiplexer connects one of several 76 child MDIO bus to a parent bus. Buses could be internal as well as 77 external and selection logic lies inside the same multiplexer. 78 79config MDIO_BUS_MUX_GPIO 80 tristate "GPIO controlled MDIO bus multiplexers" 81 depends on OF_GPIO && OF_MDIO 82 select MDIO_BUS_MUX 83 help 84 This module provides a driver for MDIO bus multiplexers that 85 are controlled via GPIO lines. The multiplexer connects one of 86 several child MDIO busses to a parent bus. Child bus 87 selection is under the control of GPIO lines. 88 89config MDIO_BUS_MUX_MMIOREG 90 tristate "MMIO device-controlled MDIO bus multiplexers" 91 depends on OF_MDIO && HAS_IOMEM 92 select MDIO_BUS_MUX 93 help 94 This module provides a driver for MDIO bus multiplexers that 95 are controlled via a simple memory-mapped device, like an FPGA. 96 The multiplexer connects one of several child MDIO busses to a 97 parent bus. Child bus selection is under the control of one of 98 the FPGA's registers. 99 100 Currently, only 8-bit registers are supported. 101 102config MDIO_CAVIUM 103 tristate 104 105config MDIO_GPIO 106 tristate "GPIO lib-based bitbanged MDIO buses" 107 depends on MDIO_BITBANG && GPIOLIB 108 ---help--- 109 Supports GPIO lib-based MDIO busses. 110 111 To compile this driver as a module, choose M here: the module 112 will be called mdio-gpio. 113 114config MDIO_HISI_FEMAC 115 tristate "Hisilicon FEMAC MDIO bus controller" 116 depends on HAS_IOMEM && OF_MDIO 117 help 118 This module provides a driver for the MDIO busses found in the 119 Hisilicon SoC that have an Fast Ethernet MAC. 120 121config MDIO_MOXART 122 tristate "MOXA ART MDIO interface support" 123 depends on ARCH_MOXART 124 help 125 This driver supports the MDIO interface found in the network 126 interface units of the MOXA ART SoC 127 128config MDIO_OCTEON 129 tristate "Octeon and some ThunderX SOCs MDIO buses" 130 depends on 64BIT 131 depends on HAS_IOMEM 132 select MDIO_CAVIUM 133 help 134 This module provides a driver for the Octeon and ThunderX MDIO 135 buses. It is required by the Octeon and ThunderX ethernet device 136 drivers on some systems. 137 138config MDIO_SUN4I 139 tristate "Allwinner sun4i MDIO interface support" 140 depends on ARCH_SUNXI 141 help 142 This driver supports the MDIO interface found in the network 143 interface units of the Allwinner SoC that have an EMAC (A10, 144 A12, A10s, etc.) 145 146config MDIO_THUNDER 147 tristate "ThunderX SOCs MDIO buses" 148 depends on 64BIT 149 depends on PCI 150 select MDIO_CAVIUM 151 help 152 This driver supports the MDIO interfaces found on Cavium 153 ThunderX SoCs when the MDIO bus device appears as a PCI 154 device. 155 156config MDIO_XGENE 157 tristate "APM X-Gene SoC MDIO bus controller" 158 depends on ARCH_XGENE || COMPILE_TEST 159 help 160 This module provides a driver for the MDIO busses found in the 161 APM X-Gene SoC's. 162 163comment "MII PHY device drivers" 164 165config AMD_PHY 166 tristate "AMD PHYs" 167 ---help--- 168 Currently supports the am79c874 169 170config AQUANTIA_PHY 171 tristate "Aquantia PHYs" 172 ---help--- 173 Currently supports the Aquantia AQ1202, AQ2104, AQR105, AQR405 174 175config AT803X_PHY 176 tristate "AT803X PHYs" 177 ---help--- 178 Currently supports the AT8030 and AT8035 model 179 180config BCM63XX_PHY 181 tristate "Broadcom 63xx SOCs internal PHY" 182 depends on BCM63XX 183 select BCM_NET_PHYLIB 184 ---help--- 185 Currently supports the 6348 and 6358 PHYs. 186 187config BCM7XXX_PHY 188 tristate "Broadcom 7xxx SOCs internal PHYs" 189 select BCM_NET_PHYLIB 190 ---help--- 191 Currently supports the BCM7366, BCM7439, BCM7445, and 192 40nm and 65nm generation of BCM7xxx Set Top Box SoCs. 193 194config BCM87XX_PHY 195 tristate "Broadcom BCM8706 and BCM8727 PHYs" 196 help 197 Currently supports the BCM8706 and BCM8727 10G Ethernet PHYs. 198 199config BCM_CYGNUS_PHY 200 tristate "Broadcom Cygnus SoC internal PHY" 201 depends on ARCH_BCM_CYGNUS || COMPILE_TEST 202 depends on MDIO_BCM_IPROC 203 select BCM_NET_PHYLIB 204 ---help--- 205 This PHY driver is for the 1G internal PHYs of the Broadcom 206 Cygnus Family SoC. 207 208 Currently supports internal PHY's used in the BCM11300, 209 BCM11320, BCM11350, BCM11360, BCM58300, BCM58302, 210 BCM58303 & BCM58305 Broadcom Cygnus SoCs. 211 212config BCM_NET_PHYLIB 213 tristate 214 215config BROADCOM_PHY 216 tristate "Broadcom PHYs" 217 select BCM_NET_PHYLIB 218 ---help--- 219 Currently supports the BCM5411, BCM5421, BCM5461, BCM54616S, BCM5464, 220 BCM5481, BCM54810 and BCM5482 PHYs. 221 222config CICADA_PHY 223 tristate "Cicada PHYs" 224 ---help--- 225 Currently supports the cis8204 226 227config DAVICOM_PHY 228 tristate "Davicom PHYs" 229 ---help--- 230 Currently supports dm9161e and dm9131 231 232config DP83848_PHY 233 tristate "Texas Instruments DP83848 PHY" 234 ---help--- 235 Supports the DP83848 PHY. 236 237config DP83867_PHY 238 tristate "Texas Instruments DP83867 Gigabit PHY" 239 ---help--- 240 Currently supports the DP83867 PHY. 241 242config FIXED_PHY 243 tristate "MDIO Bus/PHY emulation with fixed speed/link PHYs" 244 depends on PHYLIB 245 select SWPHY 246 ---help--- 247 Adds the platform "fixed" MDIO Bus to cover the boards that use 248 PHYs that are not connected to the real MDIO bus. 249 250 Currently tested with mpc866ads and mpc8349e-mitx. 251 252config ICPLUS_PHY 253 tristate "ICPlus PHYs" 254 ---help--- 255 Currently supports the IP175C and IP1001 PHYs. 256 257config INTEL_XWAY_PHY 258 tristate "Intel XWAY PHYs" 259 ---help--- 260 Supports the Intel XWAY (former Lantiq) 11G and 22E PHYs. 261 These PHYs are marked as standalone chips under the names 262 PEF 7061, PEF 7071 and PEF 7072 or integrated into the Intel 263 SoCs xRX200, xRX300, xRX330, xRX350 and xRX550. 264 265config LSI_ET1011C_PHY 266 tristate "LSI ET1011C PHY" 267 ---help--- 268 Supports the LSI ET1011C PHY. 269 270config LXT_PHY 271 tristate "Intel LXT PHYs" 272 ---help--- 273 Currently supports the lxt970, lxt971 274 275config MARVELL_PHY 276 tristate "Marvell PHYs" 277 ---help--- 278 Currently has a driver for the 88E1011S 279 280config MESON_GXL_PHY 281 tristate "Amlogic Meson GXL Internal PHY" 282 depends on ARCH_MESON || COMPILE_TEST 283 ---help--- 284 Currently has a driver for the Amlogic Meson GXL Internal PHY 285 286config MICREL_PHY 287 tristate "Micrel PHYs" 288 ---help--- 289 Supports the KSZ9021, VSC8201, KS8001 PHYs. 290 291config MICROCHIP_PHY 292 tristate "Microchip PHYs" 293 help 294 Supports the LAN88XX PHYs. 295 296config MICROSEMI_PHY 297 tristate "Microsemi PHYs" 298 ---help--- 299 Currently supports VSC8530, VSC8531, VSC8540 and VSC8541 PHYs 300 301config NATIONAL_PHY 302 tristate "National Semiconductor PHYs" 303 ---help--- 304 Currently supports the DP83865 PHY. 305 306config QSEMI_PHY 307 tristate "Quality Semiconductor PHYs" 308 ---help--- 309 Currently supports the qs6612 310 311config REALTEK_PHY 312 tristate "Realtek PHYs" 313 ---help--- 314 Supports the Realtek 821x PHY. 315 316config SMSC_PHY 317 tristate "SMSC PHYs" 318 ---help--- 319 Currently supports the LAN83C185, LAN8187 and LAN8700 PHYs 320 321config STE10XP 322 tristate "STMicroelectronics STe10Xp PHYs" 323 ---help--- 324 This is the driver for the STe100p and STe101p PHYs. 325 326config TERANETICS_PHY 327 tristate "Teranetics PHYs" 328 ---help--- 329 Currently supports the Teranetics TN2020 330 331config VITESSE_PHY 332 tristate "Vitesse PHYs" 333 ---help--- 334 Currently supports the vsc8244 335 336config XILINX_GMII2RGMII 337 tristate "Xilinx GMII2RGMII converter driver" 338 ---help--- 339 This driver support xilinx GMII to RGMII IP core it provides 340 the Reduced Gigabit Media Independent Interface(RGMII) between 341 Ethernet physical media devices and the Gigabit Ethernet controller. 342 343endif # PHYLIB 344 345config MICREL_KS8995MA 346 tristate "Micrel KS8995MA 5-ports 10/100 managed Ethernet switch" 347 depends on SPI 348