xref: /linux/drivers/net/phy/Kconfig (revision 8e185d6997bb67068f0ca8f062a50caa2608cf1b)
100db8189SAndy Fleming#
200db8189SAndy Fleming# PHY Layer Configuration
300db8189SAndy Fleming#
400db8189SAndy Fleming
553f99941SJan Engelhardtmenuconfig PHYLIB
6fc0b927dSBen Hutchings	tristate "PHY Device support and infrastructure"
7cba86f2eSRandy Dunlap	depends on NETDEVICES
800db8189SAndy Fleming	help
900db8189SAndy Fleming	  Ethernet controllers are usually attached to PHY
1000db8189SAndy Fleming	  devices.  This option provides infrastructure for
1100db8189SAndy Fleming	  managing PHY devices.
1200db8189SAndy Fleming
1353f99941SJan Engelhardtif PHYLIB
1453f99941SJan Engelhardt
1500db8189SAndy Flemingcomment "MII PHY device drivers"
1600db8189SAndy Fleming
17bee8259dSShaohui Xieconfig AQUANTIA_PHY
18bee8259dSShaohui Xie        tristate "Drivers for the Aquantia PHYs"
19bee8259dSShaohui Xie        ---help---
20bee8259dSShaohui Xie          Currently supports the Aquantia AQ1202, AQ2104, AQR105, AQR405
21bee8259dSShaohui Xie
220ca7111aSMatus Ujhelyiconfig AT803X_PHY
230ca7111aSMatus Ujhelyi	tristate "Drivers for Atheros AT803X PHYs"
240ca7111aSMatus Ujhelyi	---help---
250ca7111aSMatus Ujhelyi	  Currently supports the AT8030 and AT8035 model
260ca7111aSMatus Ujhelyi
2749099122SHeiko Schocherconfig AMD_PHY
2849099122SHeiko Schocher	tristate "Drivers for the AMD PHYs"
2949099122SHeiko Schocher	---help---
3049099122SHeiko Schocher	  Currently supports the am79c874
3149099122SHeiko Schocher
3200db8189SAndy Flemingconfig MARVELL_PHY
3367c4f3faSJeff Garzik	tristate "Drivers for Marvell PHYs"
3400db8189SAndy Fleming	---help---
3500db8189SAndy Fleming	  Currently has a driver for the 88E1011S
3600db8189SAndy Fleming
3700db8189SAndy Flemingconfig DAVICOM_PHY
3867c4f3faSJeff Garzik	tristate "Drivers for Davicom PHYs"
3900db8189SAndy Fleming	---help---
4000db8189SAndy Fleming	  Currently supports dm9161e and dm9131
4100db8189SAndy Fleming
4200db8189SAndy Flemingconfig QSEMI_PHY
4367c4f3faSJeff Garzik	tristate "Drivers for Quality Semiconductor PHYs"
4400db8189SAndy Fleming	---help---
4500db8189SAndy Fleming	  Currently supports the qs6612
4600db8189SAndy Fleming
4700db8189SAndy Flemingconfig LXT_PHY
4867c4f3faSJeff Garzik	tristate "Drivers for the Intel LXT PHYs"
4900db8189SAndy Fleming	---help---
5000db8189SAndy Fleming	  Currently supports the lxt970, lxt971
5100db8189SAndy Fleming
5200db8189SAndy Flemingconfig CICADA_PHY
5367c4f3faSJeff Garzik	tristate "Drivers for the Cicada PHYs"
5400db8189SAndy Fleming	---help---
5500db8189SAndy Fleming	  Currently supports the cis8204
5653f99941SJan Engelhardt
57ef82a306SJon Loeligerconfig VITESSE_PHY
58ef82a306SJon Loeliger        tristate "Drivers for the Vitesse PHYs"
59ef82a306SJon Loeliger        ---help---
60ef82a306SJon Loeliger          Currently supports the vsc8244
6100db8189SAndy Fleming
62f61687c0SShaohui Xieconfig TERANETICS_PHY
63f61687c0SShaohui Xie        tristate "Drivers for the Teranetics PHYs"
64f61687c0SShaohui Xie        ---help---
65f61687c0SShaohui Xie          Currently supports the Teranetics TN2020
66f61687c0SShaohui Xie
67c9e055acSHerbert Valerio Riedelconfig SMSC_PHY
68c9e055acSHerbert Valerio Riedel	tristate "Drivers for SMSC PHYs"
69c9e055acSHerbert Valerio Riedel	---help---
704d9b1a02SSteve Glendinning	  Currently supports the LAN83C185, LAN8187 and LAN8700 PHYs
71c9e055acSHerbert Valerio Riedel
72a1cba561SArun Parameswaranconfig BCM_NET_PHYLIB
73a1cba561SArun Parameswaran	tristate
74a1cba561SArun Parameswaran
75c4b41c9fSMaciej W. Rozyckiconfig BROADCOM_PHY
76c4b41c9fSMaciej W. Rozycki	tristate "Drivers for Broadcom PHYs"
77a1cba561SArun Parameswaran	select BCM_NET_PHYLIB
78c4b41c9fSMaciej W. Rozycki	---help---
793bca4cf6SAlessio Igor Bogani	  Currently supports the BCM5411, BCM5421, BCM5461, BCM54616S, BCM5464,
803bca4cf6SAlessio Igor Bogani	  BCM5481 and BCM5482 PHYs.
81c4b41c9fSMaciej W. Rozycki
82*8e185d69SArun Parameswaranconfig BCM_CYGNUS_PHY
83*8e185d69SArun Parameswaran	tristate "Drivers for Broadcom Cygnus SoC internal PHY"
84*8e185d69SArun Parameswaran	depends on ARCH_BCM_CYGNUS || COMPILE_TEST
85*8e185d69SArun Parameswaran	depends on MDIO_BCM_IPROC
86*8e185d69SArun Parameswaran	select BCM_NET_PHYLIB
87*8e185d69SArun Parameswaran	---help---
88*8e185d69SArun Parameswaran	  This PHY driver is for the 1G internal PHYs of the Broadcom
89*8e185d69SArun Parameswaran	  Cygnus Family SoC.
90*8e185d69SArun Parameswaran
91*8e185d69SArun Parameswaran	  Currently supports internal PHY's used in the BCM11300,
92*8e185d69SArun Parameswaran	  BCM11320, BCM11350, BCM11360, BCM58300, BCM58302,
93*8e185d69SArun Parameswaran	  BCM58303 & BCM58305 Broadcom Cygnus SoCs.
94*8e185d69SArun Parameswaran
9509bb9aa0SMaxime Bizonconfig BCM63XX_PHY
9609bb9aa0SMaxime Bizon	tristate "Drivers for Broadcom 63xx SOCs internal PHY"
97f1dc045eSRalf Baechle	depends on BCM63XX
98a1cba561SArun Parameswaran	select BCM_NET_PHYLIB
9909bb9aa0SMaxime Bizon	---help---
10009bb9aa0SMaxime Bizon	  Currently supports the 6348 and 6358 PHYs.
10109bb9aa0SMaxime Bizon
102b560a58cSFlorian Fainelliconfig BCM7XXX_PHY
103b560a58cSFlorian Fainelli	tristate "Drivers for Broadcom 7xxx SOCs internal PHYs"
104a1cba561SArun Parameswaran	select BCM_NET_PHYLIB
105b560a58cSFlorian Fainelli	---help---
106b560a58cSFlorian Fainelli	  Currently supports the BCM7366, BCM7439, BCM7445, and
107b560a58cSFlorian Fainelli	  40nm and 65nm generation of BCM7xxx Set Top Box SoCs.
108b560a58cSFlorian Fainelli
109e9976d7cSDavid Daneyconfig BCM87XX_PHY
110e9976d7cSDavid Daney	tristate "Driver for Broadcom BCM8706 and BCM8727 PHYs"
111e9976d7cSDavid Daney	help
112e9976d7cSDavid Daney	  Currently supports the BCM8706 and BCM8727 10G Ethernet PHYs.
113e9976d7cSDavid Daney
1140cefeebaSMichael Barkowskiconfig ICPLUS_PHY
1150cefeebaSMichael Barkowski	tristate "Drivers for ICPlus PHYs"
1160cefeebaSMichael Barkowski	---help---
117377ecca9SGiuseppe CAVALLARO	  Currently supports the IP175C and IP1001 PHYs.
1180cefeebaSMichael Barkowski
119097c2aa8SJohnson Leungconfig REALTEK_PHY
120097c2aa8SJohnson Leung	tristate "Drivers for Realtek PHYs"
121097c2aa8SJohnson Leung	---help---
122097c2aa8SJohnson Leung	  Supports the Realtek 821x PHY.
123097c2aa8SJohnson Leung
124914804b9SGiuseppe Cavallaroconfig NATIONAL_PHY
125914804b9SGiuseppe Cavallaro	tristate "Drivers for National Semiconductor PHYs"
126914804b9SGiuseppe Cavallaro	---help---
127914804b9SGiuseppe Cavallaro	  Currently supports the DP83865 PHY.
128914804b9SGiuseppe Cavallaro
129f95be180SGiuseppe Cavallaroconfig STE10XP
130f95be180SGiuseppe Cavallaro	tristate "Driver for STMicroelectronics STe10Xp PHYs"
131f95be180SGiuseppe Cavallaro	---help---
132f95be180SGiuseppe Cavallaro	  This is the driver for the STe100p and STe101p PHYs.
133f95be180SGiuseppe Cavallaro
134dbb7a95dSChaithrika U Sconfig LSI_ET1011C_PHY
135dbb7a95dSChaithrika U S	tristate "Driver for LSI ET1011C PHY"
136dbb7a95dSChaithrika U S	---help---
137dbb7a95dSChaithrika U S	  Supports the LSI ET1011C PHY.
138dbb7a95dSChaithrika U S
139d0507009SDavid J. Choiconfig MICREL_PHY
140d0507009SDavid J. Choi	tristate "Driver for Micrel PHYs"
141d0507009SDavid J. Choi	---help---
142d0507009SDavid J. Choi	  Supports the KSZ9021, VSC8201, KS8001 PHYs.
143d0507009SDavid J. Choi
1442a10154aSDan Murphyconfig DP83867_PHY
1452a10154aSDan Murphy	tristate "Drivers for Texas Instruments DP83867 Gigabit PHY"
1462a10154aSDan Murphy	---help---
1472a10154aSDan Murphy	  Currently supports the DP83867 PHY.
1482a10154aSDan Murphy
149792aec47SWoojung.Huh@microchip.comconfig MICROCHIP_PHY
150792aec47SWoojung.Huh@microchip.com	tristate "Drivers for Microchip PHYs"
151792aec47SWoojung.Huh@microchip.com	help
152792aec47SWoojung.Huh@microchip.com	  Supports the LAN88XX PHYs.
153792aec47SWoojung.Huh@microchip.com
15411b0bacdSVitaly Bordugconfig FIXED_PHY
1556539c44dSDavid S. Miller	tristate "Driver for MDIO Bus/PHY emulation with fixed speed/link PHYs"
1566539c44dSDavid S. Miller	depends on PHYLIB
15711b0bacdSVitaly Bordug	---help---
158a79d8e93SVitaly Bordug	  Adds the platform "fixed" MDIO Bus to cover the boards that use
159a79d8e93SVitaly Bordug	  PHYs that are not connected to the real MDIO bus.
16011b0bacdSVitaly Bordug
161a79d8e93SVitaly Bordug	  Currently tested with mpc866ads and mpc8349e-mitx.
1627c32f470SVitaly Bordug
163e2ec4581SScott Woodconfig MDIO_BITBANG
164e2ec4581SScott Wood	tristate "Support for bitbanged MDIO buses"
165e2ec4581SScott Wood	help
166e2ec4581SScott Wood	  This module implements the MDIO bus protocol in software,
167e2ec4581SScott Wood	  for use by low level drivers that export the ability to
168e2ec4581SScott Wood	  drive the relevant pins.
169e2ec4581SScott Wood
170e2ec4581SScott Wood	  If in doubt, say N.
171e2ec4581SScott Wood
17272af187fSPaulius Zaleckasconfig MDIO_GPIO
173a5edeccbSLaurent Pinchart	tristate "Support for GPIO lib-based bitbanged MDIO buses"
17476ec9d18SAlexandre Courbot	depends on MDIO_BITBANG && GPIOLIB
175a5edeccbSLaurent Pinchart	---help---
176a5edeccbSLaurent Pinchart	  Supports GPIO lib-based MDIO busses.
177a5edeccbSLaurent Pinchart
178f004f3eaSPaulius Zaleckas	  To compile this driver as a module, choose M here: the module
179f004f3eaSPaulius Zaleckas	  will be called mdio-gpio.
180f004f3eaSPaulius Zaleckas
18125d967b7SDavid Daneyconfig MDIO_OCTEON
182a6d67864SRadha Mohan Chintakuntla	tristate "Support for MDIO buses on Octeon and ThunderX SOCs"
183a6d67864SRadha Mohan Chintakuntla	depends on 64BIT
18425d967b7SDavid Daney	help
18525d967b7SDavid Daney
186a6d67864SRadha Mohan Chintakuntla	  This module provides a driver for the Octeon and ThunderX MDIO
187a6d67864SRadha Mohan Chintakuntla	  busses. It is required by the Octeon and ThunderX ethernet device
188a6d67864SRadha Mohan Chintakuntla	  drivers.
18925d967b7SDavid Daney
19025d967b7SDavid Daney	  If in doubt, say Y.
19125d967b7SDavid Daney
1924bdcb1ddSMaxime Ripardconfig MDIO_SUN4I
1934bdcb1ddSMaxime Ripard	tristate "Allwinner sun4i MDIO interface support"
1944bdcb1ddSMaxime Ripard	depends on ARCH_SUNXI
1954bdcb1ddSMaxime Ripard	help
1964bdcb1ddSMaxime Ripard	  This driver supports the MDIO interface found in the network
1974bdcb1ddSMaxime Ripard	  interface units of the Allwinner SoC that have an EMAC (A10,
1984bdcb1ddSMaxime Ripard	  A12, A10s, etc.)
1994bdcb1ddSMaxime Ripard
200b0db7b0cSJonas Jensenconfig MDIO_MOXART
201b0db7b0cSJonas Jensen        tristate "MOXA ART MDIO interface support"
202b0db7b0cSJonas Jensen        depends on ARCH_MOXART
203b0db7b0cSJonas Jensen        help
204b0db7b0cSJonas Jensen          This driver supports the MDIO interface found in the network
205b0db7b0cSJonas Jensen          interface units of the MOXA ART SoC
206b0db7b0cSJonas Jensen
2070ca2997dSDavid Daneyconfig MDIO_BUS_MUX
2080ca2997dSDavid Daney	tristate
2090ca2997dSDavid Daney	depends on OF_MDIO
2100ca2997dSDavid Daney	help
2110ca2997dSDavid Daney	  This module provides a driver framework for MDIO bus
2120ca2997dSDavid Daney	  multiplexers which connect one of several child MDIO busses
2130ca2997dSDavid Daney	  to a parent bus.  Switching between child busses is done by
2140ca2997dSDavid Daney	  device specific drivers.
2150ca2997dSDavid Daney
216416912a1SDavid Daneyconfig MDIO_BUS_MUX_GPIO
217416912a1SDavid Daney	tristate "Support for GPIO controlled MDIO bus multiplexers"
218416912a1SDavid Daney	depends on OF_GPIO && OF_MDIO
219416912a1SDavid Daney	select MDIO_BUS_MUX
220416912a1SDavid Daney	help
221416912a1SDavid Daney	  This module provides a driver for MDIO bus multiplexers that
222416912a1SDavid Daney	  are controlled via GPIO lines.  The multiplexer connects one of
223416912a1SDavid Daney	  several child MDIO busses to a parent bus.  Child bus
224416912a1SDavid Daney	  selection is under the control of GPIO lines.
225416912a1SDavid Daney
2266cc2ff82STimur Tabiconfig MDIO_BUS_MUX_MMIOREG
2276cc2ff82STimur Tabi	tristate "Support for MMIO device-controlled MDIO bus multiplexers"
228cfa52005SRob Herring	depends on OF_MDIO && HAS_IOMEM
2296cc2ff82STimur Tabi	select MDIO_BUS_MUX
2306cc2ff82STimur Tabi	help
2316cc2ff82STimur Tabi	  This module provides a driver for MDIO bus multiplexers that
2326cc2ff82STimur Tabi	  are controlled via a simple memory-mapped device, like an FPGA.
2336cc2ff82STimur Tabi	  The multiplexer connects one of several child MDIO busses to a
2346cc2ff82STimur Tabi	  parent bus.  Child bus selection is under the control of one of
2356cc2ff82STimur Tabi	  the FPGA's registers.
2366cc2ff82STimur Tabi
2376cc2ff82STimur Tabi	  Currently, only 8-bit registers are supported.
2386cc2ff82STimur Tabi
2392ba1b163SFlorian Fainelliconfig MDIO_BCM_UNIMAC
2402ba1b163SFlorian Fainelli	tristate "Broadcom UniMAC MDIO bus controller"
241b3a00c91SChen Gang	depends on HAS_IOMEM
2422ba1b163SFlorian Fainelli	help
2432ba1b163SFlorian Fainelli	  This module provides a driver for the Broadcom UniMAC MDIO busses.
2442ba1b163SFlorian Fainelli	  This hardware can be found in the Broadcom GENET Ethernet MAC
2452ba1b163SFlorian Fainelli	  controllers as well as some Broadcom Ethernet switches such as the
2462ba1b163SFlorian Fainelli	  Starfighter 2 switches.
247ddc24ae1SArun Parameswaran
248ddc24ae1SArun Parameswaranconfig MDIO_BCM_IPROC
249ddc24ae1SArun Parameswaran	tristate "Broadcom iProc MDIO bus controller"
250ddc24ae1SArun Parameswaran	depends on ARCH_BCM_IPROC || COMPILE_TEST
251ddc24ae1SArun Parameswaran	depends on HAS_IOMEM && OF_MDIO
252ddc24ae1SArun Parameswaran	help
253ddc24ae1SArun Parameswaran	  This module provides a driver for the MDIO busses found in the
254ddc24ae1SArun Parameswaran	  Broadcom iProc SoC's.
255ddc24ae1SArun Parameswaran
25653f99941SJan Engelhardtendif # PHYLIB
257a8e510f6SFrederic LAMBERT
258a8e510f6SFrederic LAMBERTconfig MICREL_KS8995MA
259a8e510f6SFrederic LAMBERT	tristate "Micrel KS8995MA 5-ports 10/100 managed Ethernet switch"
260a8e510f6SFrederic LAMBERT	depends on SPI
261