rjw | 1f88458 | 2022-01-06 17:20:42 +0800 | [diff] [blame^] | 1 | # |
| 2 | # PHY Layer Configuration |
| 3 | # |
| 4 | |
| 5 | menuconfig MDIO_DEVICE |
| 6 | tristate "MDIO bus device drivers" |
| 7 | help |
| 8 | MDIO devices and driver infrastructure code. |
| 9 | |
| 10 | config 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 | |
| 19 | if MDIO_BUS |
| 20 | |
| 21 | config 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 | |
| 29 | config MDIO_BCM_UNIMAC |
| 30 | tristate "Broadcom UniMAC MDIO bus controller" |
| 31 | depends on HAS_IOMEM && OF_MDIO |
| 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 | |
| 38 | config 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 | |
| 47 | config 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 | |
| 56 | config 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 | |
| 67 | config 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 | |
| 77 | config 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 | |
| 90 | config MDIO_CAVIUM |
| 91 | tristate |
| 92 | |
| 93 | config MDIO_GPIO |
| 94 | tristate "GPIO lib-based bitbanged MDIO buses" |
| 95 | depends on MDIO_BITBANG && GPIOLIB |
| 96 | ---help--- |
| 97 | Supports GPIO lib-based MDIO busses. |
| 98 | |
| 99 | To compile this driver as a module, choose M here: the module |
| 100 | will be called mdio-gpio. |
| 101 | |
| 102 | config MDIO_HISI_FEMAC |
| 103 | tristate "Hisilicon FEMAC MDIO bus controller" |
| 104 | depends on HAS_IOMEM && OF_MDIO |
| 105 | help |
| 106 | This module provides a driver for the MDIO busses found in the |
| 107 | Hisilicon SoC that have an Fast Ethernet MAC. |
| 108 | |
| 109 | config MDIO_I2C |
| 110 | tristate |
| 111 | depends on I2C |
| 112 | help |
| 113 | Support I2C based PHYs. This provides a MDIO bus bridged |
| 114 | to I2C to allow PHYs connected in I2C mode to be accessed |
| 115 | using the existing infrastructure. |
| 116 | |
| 117 | This is library mode. |
| 118 | |
| 119 | config MDIO_MOXART |
| 120 | tristate "MOXA ART MDIO interface support" |
| 121 | depends on ARCH_MOXART |
| 122 | help |
| 123 | This driver supports the MDIO interface found in the network |
| 124 | interface units of the MOXA ART SoC |
| 125 | |
| 126 | config MDIO_OCTEON |
| 127 | tristate "Octeon and some ThunderX SOCs MDIO buses" |
| 128 | depends on 64BIT |
| 129 | depends on HAS_IOMEM && OF_MDIO |
| 130 | select MDIO_CAVIUM |
| 131 | help |
| 132 | This module provides a driver for the Octeon and ThunderX MDIO |
| 133 | buses. It is required by the Octeon and ThunderX ethernet device |
| 134 | drivers on some systems. |
| 135 | |
| 136 | config MDIO_SUN4I |
| 137 | tristate "Allwinner sun4i MDIO interface support" |
| 138 | depends on ARCH_SUNXI |
| 139 | help |
| 140 | This driver supports the MDIO interface found in the network |
| 141 | interface units of the Allwinner SoC that have an EMAC (A10, |
| 142 | A12, A10s, etc.) |
| 143 | |
| 144 | config MDIO_THUNDER |
| 145 | tristate "ThunderX SOCs MDIO buses" |
| 146 | depends on 64BIT |
| 147 | depends on PCI |
| 148 | select MDIO_CAVIUM |
| 149 | help |
| 150 | This driver supports the MDIO interfaces found on Cavium |
| 151 | ThunderX SoCs when the MDIO bus device appears as a PCI |
| 152 | device. |
| 153 | |
| 154 | config MDIO_XGENE |
| 155 | tristate "APM X-Gene SoC MDIO bus controller" |
| 156 | depends on ARCH_XGENE || COMPILE_TEST |
| 157 | help |
| 158 | This module provides a driver for the MDIO busses found in the |
| 159 | APM X-Gene SoC's. |
| 160 | |
| 161 | endif |
| 162 | |
| 163 | config PHYLINK |
| 164 | tristate |
| 165 | depends on NETDEVICES |
| 166 | select PHYLIB |
| 167 | select SWPHY |
| 168 | help |
| 169 | PHYlink models the link between the PHY and MAC, allowing fixed |
| 170 | configuration links, PHYs, and Serdes links with MAC level |
| 171 | autonegotiation modes. |
| 172 | |
| 173 | menuconfig PHYLIB |
| 174 | tristate "PHY Device support and infrastructure" |
| 175 | depends on NETDEVICES |
| 176 | select MDIO_DEVICE |
| 177 | help |
| 178 | Ethernet controllers are usually attached to PHY |
| 179 | devices. This option provides infrastructure for |
| 180 | managing PHY devices. |
| 181 | |
| 182 | if PHYLIB |
| 183 | |
| 184 | config SWPHY |
| 185 | bool |
| 186 | |
| 187 | config LED_TRIGGER_PHY |
| 188 | bool "Support LED triggers for tracking link state" |
| 189 | depends on LEDS_TRIGGERS |
| 190 | ---help--- |
| 191 | Adds support for a set of LED trigger events per-PHY. Link |
| 192 | state change will trigger the events, for consumption by an |
| 193 | LED class driver. There are triggers for each link speed currently |
| 194 | supported by the phy, and are of the form: |
| 195 | <mii bus id>:<phy>:<speed> |
| 196 | |
| 197 | Where speed is in the form: |
| 198 | <Speed in megabits>Mbps or <Speed in gigabits>Gbps |
| 199 | |
| 200 | |
| 201 | comment "MII PHY device drivers" |
| 202 | |
| 203 | config SFP |
| 204 | tristate "SFP cage support" |
| 205 | depends on I2C && PHYLINK |
| 206 | select MDIO_I2C |
| 207 | |
| 208 | config AMD_PHY |
| 209 | tristate "AMD PHYs" |
| 210 | ---help--- |
| 211 | Currently supports the am79c874 |
| 212 | |
| 213 | config AQUANTIA_PHY |
| 214 | tristate "Aquantia PHYs" |
| 215 | ---help--- |
| 216 | Currently supports the Aquantia AQ1202, AQ2104, AQR105, AQR405 |
| 217 | |
| 218 | config AT803X_PHY |
| 219 | tristate "AT803X PHYs" |
| 220 | ---help--- |
| 221 | Currently supports the AT8030 and AT8035 model |
| 222 | |
| 223 | config BCM63XX_PHY |
| 224 | tristate "Broadcom 63xx SOCs internal PHY" |
| 225 | depends on BCM63XX |
| 226 | select BCM_NET_PHYLIB |
| 227 | ---help--- |
| 228 | Currently supports the 6348 and 6358 PHYs. |
| 229 | |
| 230 | config BCM7XXX_PHY |
| 231 | tristate "Broadcom 7xxx SOCs internal PHYs" |
| 232 | select BCM_NET_PHYLIB |
| 233 | ---help--- |
| 234 | Currently supports the BCM7366, BCM7439, BCM7445, and |
| 235 | 40nm and 65nm generation of BCM7xxx Set Top Box SoCs. |
| 236 | |
| 237 | config BCM87XX_PHY |
| 238 | tristate "Broadcom BCM8706 and BCM8727 PHYs" |
| 239 | help |
| 240 | Currently supports the BCM8706 and BCM8727 10G Ethernet PHYs. |
| 241 | |
| 242 | config BCM_CYGNUS_PHY |
| 243 | tristate "Broadcom Cygnus SoC internal PHY" |
| 244 | depends on ARCH_BCM_CYGNUS || COMPILE_TEST |
| 245 | depends on MDIO_BCM_IPROC |
| 246 | select BCM_NET_PHYLIB |
| 247 | ---help--- |
| 248 | This PHY driver is for the 1G internal PHYs of the Broadcom |
| 249 | Cygnus Family SoC. |
| 250 | |
| 251 | Currently supports internal PHY's used in the BCM11300, |
| 252 | BCM11320, BCM11350, BCM11360, BCM58300, BCM58302, |
| 253 | BCM58303 & BCM58305 Broadcom Cygnus SoCs. |
| 254 | |
| 255 | config BCM_NET_PHYLIB |
| 256 | tristate |
| 257 | |
| 258 | config BROADCOM_PHY |
| 259 | tristate "Broadcom PHYs" |
| 260 | select BCM_NET_PHYLIB |
| 261 | ---help--- |
| 262 | Currently supports the BCM5411, BCM5421, BCM5461, BCM54616S, BCM5464, |
| 263 | BCM5481, BCM54810 and BCM5482 PHYs. |
| 264 | |
| 265 | config CICADA_PHY |
| 266 | tristate "Cicada PHYs" |
| 267 | ---help--- |
| 268 | Currently supports the cis8204 |
| 269 | |
| 270 | config CORTINA_PHY |
| 271 | tristate "Cortina EDC CDR 10G Ethernet PHY" |
| 272 | ---help--- |
| 273 | Currently supports the CS4340 phy. |
| 274 | |
| 275 | config DAVICOM_PHY |
| 276 | tristate "Davicom PHYs" |
| 277 | ---help--- |
| 278 | Currently supports dm9161e and dm9131 |
| 279 | |
| 280 | config DP83848_PHY |
| 281 | tristate "Texas Instruments DP83848 PHY" |
| 282 | ---help--- |
| 283 | Supports the DP83848 PHY. |
| 284 | |
| 285 | config DP83867_PHY |
| 286 | tristate "Texas Instruments DP83867 Gigabit PHY" |
| 287 | ---help--- |
| 288 | Currently supports the DP83867 PHY. |
| 289 | |
| 290 | config FIXED_PHY |
| 291 | tristate "MDIO Bus/PHY emulation with fixed speed/link PHYs" |
| 292 | depends on PHYLIB |
| 293 | select SWPHY |
| 294 | ---help--- |
| 295 | Adds the platform "fixed" MDIO Bus to cover the boards that use |
| 296 | PHYs that are not connected to the real MDIO bus. |
| 297 | |
| 298 | Currently tested with mpc866ads and mpc8349e-mitx. |
| 299 | |
| 300 | config ICPLUS_PHY |
| 301 | tristate "ICPlus PHYs" |
| 302 | ---help--- |
| 303 | Currently supports the IP175C and IP1001 PHYs. |
| 304 | |
| 305 | config INTEL_XWAY_PHY |
| 306 | tristate "Intel XWAY PHYs" |
| 307 | ---help--- |
| 308 | Supports the Intel XWAY (former Lantiq) 11G and 22E PHYs. |
| 309 | These PHYs are marked as standalone chips under the names |
| 310 | PEF 7061, PEF 7071 and PEF 7072 or integrated into the Intel |
| 311 | SoCs xRX200, xRX300, xRX330, xRX350 and xRX550. |
| 312 | |
| 313 | config LSI_ET1011C_PHY |
| 314 | tristate "LSI ET1011C PHY" |
| 315 | ---help--- |
| 316 | Supports the LSI ET1011C PHY. |
| 317 | |
| 318 | config LXT_PHY |
| 319 | tristate "Intel LXT PHYs" |
| 320 | ---help--- |
| 321 | Currently supports the lxt970, lxt971 |
| 322 | |
| 323 | config MARVELL_PHY |
| 324 | tristate "Marvell PHYs" |
| 325 | ---help--- |
| 326 | Currently has a driver for the 88E1011S |
| 327 | |
| 328 | config MARVELL_10G_PHY |
| 329 | tristate "Marvell Alaska 10Gbit PHYs" |
| 330 | ---help--- |
| 331 | Support for the Marvell Alaska MV88X3310 and compatible PHYs. |
| 332 | |
| 333 | config MARVELL_88Q_PHY |
| 334 | tristate "Marvell 88Q PHYs" |
| 335 | help |
| 336 | Currently supports the 88Q2110 PHYs. |
| 337 | |
| 338 | config MESON_GXL_PHY |
| 339 | tristate "Amlogic Meson GXL Internal PHY" |
| 340 | depends on ARCH_MESON || COMPILE_TEST |
| 341 | ---help--- |
| 342 | Currently has a driver for the Amlogic Meson GXL Internal PHY |
| 343 | |
| 344 | config MICREL_PHY |
| 345 | tristate "Micrel PHYs" |
| 346 | ---help--- |
| 347 | Supports the KSZ9021, VSC8201, KS8001 PHYs. |
| 348 | |
| 349 | config MICROCHIP_PHY |
| 350 | tristate "Microchip PHYs" |
| 351 | help |
| 352 | Supports the LAN88XX PHYs. |
| 353 | |
| 354 | config MICROSEMI_PHY |
| 355 | tristate "Microsemi PHYs" |
| 356 | ---help--- |
| 357 | Currently supports VSC8530, VSC8531, VSC8540 and VSC8541 PHYs |
| 358 | |
| 359 | config NATIONAL_PHY |
| 360 | tristate "National Semiconductor PHYs" |
| 361 | ---help--- |
| 362 | Currently supports the DP83865 PHY. |
| 363 | |
| 364 | config NXP_TJA1100_PHY |
| 365 | tristate "NXP TJA1100 PHY" |
| 366 | help |
| 367 | Currently supports the TJA1100 PHY. |
| 368 | |
| 369 | config QSEMI_PHY |
| 370 | tristate "Quality Semiconductor PHYs" |
| 371 | ---help--- |
| 372 | Currently supports the qs6612 |
| 373 | |
| 374 | config REALTEK_PHY |
| 375 | tristate "Realtek PHYs" |
| 376 | ---help--- |
| 377 | Supports the Realtek 821x PHY. |
| 378 | |
| 379 | config ROCKCHIP_PHY |
| 380 | tristate "Driver for Rockchip Ethernet PHYs" |
| 381 | ---help--- |
| 382 | Currently supports the integrated Ethernet PHY. |
| 383 | |
| 384 | config SMSC_PHY |
| 385 | tristate "SMSC PHYs" |
| 386 | ---help--- |
| 387 | Currently supports the LAN83C185, LAN8187 and LAN8700 PHYs |
| 388 | |
| 389 | config STE10XP |
| 390 | tristate "STMicroelectronics STe10Xp PHYs" |
| 391 | ---help--- |
| 392 | This is the driver for the STe100p and STe101p PHYs. |
| 393 | |
| 394 | config TERANETICS_PHY |
| 395 | tristate "Teranetics PHYs" |
| 396 | ---help--- |
| 397 | Currently supports the Teranetics TN2020 |
| 398 | |
| 399 | config VITESSE_PHY |
| 400 | tristate "Vitesse PHYs" |
| 401 | ---help--- |
| 402 | Currently supports the vsc8244 |
| 403 | |
| 404 | config XILINX_GMII2RGMII |
| 405 | tristate "Xilinx GMII2RGMII converter driver" |
| 406 | ---help--- |
| 407 | This driver support xilinx GMII to RGMII IP core it provides |
| 408 | the Reduced Gigabit Media Independent Interface(RGMII) between |
| 409 | Ethernet physical media devices and the Gigabit Ethernet controller. |
| 410 | |
| 411 | endif # PHYLIB |
| 412 | |
| 413 | config MICREL_KS8995MA |
| 414 | tristate "Micrel KS8995MA 5-ports 10/100 managed Ethernet switch" |
| 415 | depends on SPI |