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 depends on ARCH_XGENE || COMPILE_TEST 146 help 147 This module provides a driver for the MDIO busses found in the 148 APM X-Gene SoC's. 149 150comment "MII PHY device drivers" 151 152config AMD_PHY 153 tristate "AMD PHYs" 154 ---help--- 155 Currently supports the am79c874 156 157config AQUANTIA_PHY 158 tristate "Aquantia PHYs" 159 ---help--- 160 Currently supports the Aquantia AQ1202, AQ2104, AQR105, AQR405 161 162config AT803X_PHY 163 tristate "AT803X PHYs" 164 ---help--- 165 Currently supports the AT8030 and AT8035 model 166 167config BCM63XX_PHY 168 tristate "Broadcom 63xx SOCs internal PHY" 169 depends on BCM63XX 170 select BCM_NET_PHYLIB 171 ---help--- 172 Currently supports the 6348 and 6358 PHYs. 173 174config BCM7XXX_PHY 175 tristate "Broadcom 7xxx SOCs internal PHYs" 176 select BCM_NET_PHYLIB 177 ---help--- 178 Currently supports the BCM7366, BCM7439, BCM7445, and 179 40nm and 65nm generation of BCM7xxx Set Top Box SoCs. 180 181config BCM87XX_PHY 182 tristate "Broadcom BCM8706 and BCM8727 PHYs" 183 help 184 Currently supports the BCM8706 and BCM8727 10G Ethernet PHYs. 185 186config BCM_CYGNUS_PHY 187 tristate "Broadcom Cygnus SoC internal PHY" 188 depends on ARCH_BCM_CYGNUS || COMPILE_TEST 189 depends on MDIO_BCM_IPROC 190 select BCM_NET_PHYLIB 191 ---help--- 192 This PHY driver is for the 1G internal PHYs of the Broadcom 193 Cygnus Family SoC. 194 195 Currently supports internal PHY's used in the BCM11300, 196 BCM11320, BCM11350, BCM11360, BCM58300, BCM58302, 197 BCM58303 & BCM58305 Broadcom Cygnus SoCs. 198 199config BCM_NET_PHYLIB 200 tristate 201 202config BROADCOM_PHY 203 tristate "Broadcom PHYs" 204 select BCM_NET_PHYLIB 205 ---help--- 206 Currently supports the BCM5411, BCM5421, BCM5461, BCM54616S, BCM5464, 207 BCM5481 and BCM5482 PHYs. 208 209config CICADA_PHY 210 tristate "Cicada PHYs" 211 ---help--- 212 Currently supports the cis8204 213 214config DAVICOM_PHY 215 tristate "Davicom PHYs" 216 ---help--- 217 Currently supports dm9161e and dm9131 218 219config DP83848_PHY 220 tristate "Texas Instruments DP83848 PHY" 221 ---help--- 222 Supports the DP83848 PHY. 223 224config DP83867_PHY 225 tristate "Texas Instruments DP83867 Gigabit PHY" 226 ---help--- 227 Currently supports the DP83867 PHY. 228 229config FIXED_PHY 230 tristate "MDIO Bus/PHY emulation with fixed speed/link PHYs" 231 depends on PHYLIB 232 select SWPHY 233 ---help--- 234 Adds the platform "fixed" MDIO Bus to cover the boards that use 235 PHYs that are not connected to the real MDIO bus. 236 237 Currently tested with mpc866ads and mpc8349e-mitx. 238 239config ICPLUS_PHY 240 tristate "ICPlus PHYs" 241 ---help--- 242 Currently supports the IP175C and IP1001 PHYs. 243 244config INTEL_XWAY_PHY 245 tristate "Intel XWAY PHYs" 246 ---help--- 247 Supports the Intel XWAY (former Lantiq) 11G and 22E PHYs. 248 These PHYs are marked as standalone chips under the names 249 PEF 7061, PEF 7071 and PEF 7072 or integrated into the Intel 250 SoCs xRX200, xRX300, xRX330, xRX350 and xRX550. 251 252config LSI_ET1011C_PHY 253 tristate "LSI ET1011C PHY" 254 ---help--- 255 Supports the LSI ET1011C PHY. 256 257config LXT_PHY 258 tristate "Intel LXT PHYs" 259 ---help--- 260 Currently supports the lxt970, lxt971 261 262config MARVELL_PHY 263 tristate "Marvell PHYs" 264 ---help--- 265 Currently has a driver for the 88E1011S 266 267config MICREL_PHY 268 tristate "Micrel PHYs" 269 ---help--- 270 Supports the KSZ9021, VSC8201, KS8001 PHYs. 271 272config MICROCHIP_PHY 273 tristate "Microchip PHYs" 274 help 275 Supports the LAN88XX PHYs. 276 277config MICROSEMI_PHY 278 tristate "Microsemi PHYs" 279 ---help--- 280 Currently supports the VSC8531 and VSC8541 PHYs 281 282config NATIONAL_PHY 283 tristate "National Semiconductor PHYs" 284 ---help--- 285 Currently supports the DP83865 PHY. 286 287config QSEMI_PHY 288 tristate "Quality Semiconductor PHYs" 289 ---help--- 290 Currently supports the qs6612 291 292config REALTEK_PHY 293 tristate "Realtek PHYs" 294 ---help--- 295 Supports the Realtek 821x PHY. 296 297config SMSC_PHY 298 tristate "SMSC PHYs" 299 ---help--- 300 Currently supports the LAN83C185, LAN8187 and LAN8700 PHYs 301 302config STE10XP 303 tristate "STMicroelectronics STe10Xp PHYs" 304 ---help--- 305 This is the driver for the STe100p and STe101p PHYs. 306 307config TERANETICS_PHY 308 tristate "Teranetics PHYs" 309 ---help--- 310 Currently supports the Teranetics TN2020 311 312config VITESSE_PHY 313 tristate "Vitesse PHYs" 314 ---help--- 315 Currently supports the vsc8244 316 317config XILINX_GMII2RGMII 318 tristate "Xilinx GMII2RGMII converter driver" 319 ---help--- 320 This driver support xilinx GMII to RGMII IP core it provides 321 the Reduced Gigabit Media Independent Interface(RGMII) between 322 Ethernet physical media devices and the Gigabit Ethernet controller. 323 324endif # PHYLIB 325 326config MICREL_KS8995MA 327 tristate "Micrel KS8995MA 5-ports 10/100 managed Ethernet switch" 328 depends on SPI 329