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