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