xref: /linux/drivers/net/phy/Kconfig (revision 3bca4cf6022ee2ff1ff2142bed28a6fca00d3a44)
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
170ca7111aSMatus Ujhelyiconfig AT803X_PHY
180ca7111aSMatus Ujhelyi	tristate "Drivers for Atheros AT803X PHYs"
190ca7111aSMatus Ujhelyi	---help---
200ca7111aSMatus Ujhelyi	  Currently supports the AT8030 and AT8035 model
210ca7111aSMatus Ujhelyi
2249099122SHeiko Schocherconfig AMD_PHY
2349099122SHeiko Schocher	tristate "Drivers for the AMD PHYs"
2449099122SHeiko Schocher	---help---
2549099122SHeiko Schocher	  Currently supports the am79c874
2649099122SHeiko Schocher
271ebe98dcSLendacky, Thomasconfig AMD_XGBE_PHY
281ebe98dcSLendacky, Thomas	tristate "Driver for the AMD 10GbE (amd-xgbe) PHYs"
2982a19035SLendacky, Thomas	depends on (OF || ACPI) && HAS_IOMEM
301ebe98dcSLendacky, Thomas	---help---
311ebe98dcSLendacky, Thomas	  Currently supports the AMD 10GbE PHY
321ebe98dcSLendacky, Thomas
3300db8189SAndy Flemingconfig MARVELL_PHY
3467c4f3faSJeff Garzik	tristate "Drivers for Marvell PHYs"
3500db8189SAndy Fleming	---help---
3600db8189SAndy Fleming	  Currently has a driver for the 88E1011S
3700db8189SAndy Fleming
3800db8189SAndy Flemingconfig DAVICOM_PHY
3967c4f3faSJeff Garzik	tristate "Drivers for Davicom PHYs"
4000db8189SAndy Fleming	---help---
4100db8189SAndy Fleming	  Currently supports dm9161e and dm9131
4200db8189SAndy Fleming
4300db8189SAndy Flemingconfig QSEMI_PHY
4467c4f3faSJeff Garzik	tristate "Drivers for Quality Semiconductor PHYs"
4500db8189SAndy Fleming	---help---
4600db8189SAndy Fleming	  Currently supports the qs6612
4700db8189SAndy Fleming
4800db8189SAndy Flemingconfig LXT_PHY
4967c4f3faSJeff Garzik	tristate "Drivers for the Intel LXT PHYs"
5000db8189SAndy Fleming	---help---
5100db8189SAndy Fleming	  Currently supports the lxt970, lxt971
5200db8189SAndy Fleming
5300db8189SAndy Flemingconfig CICADA_PHY
5467c4f3faSJeff Garzik	tristate "Drivers for the Cicada PHYs"
5500db8189SAndy Fleming	---help---
5600db8189SAndy Fleming	  Currently supports the cis8204
5753f99941SJan Engelhardt
58ef82a306SJon Loeligerconfig VITESSE_PHY
59ef82a306SJon Loeliger        tristate "Drivers for the Vitesse PHYs"
60ef82a306SJon Loeliger        ---help---
61ef82a306SJon Loeliger          Currently supports the vsc8244
6200db8189SAndy Fleming
63c9e055acSHerbert Valerio Riedelconfig SMSC_PHY
64c9e055acSHerbert Valerio Riedel	tristate "Drivers for SMSC PHYs"
65c9e055acSHerbert Valerio Riedel	---help---
664d9b1a02SSteve Glendinning	  Currently supports the LAN83C185, LAN8187 and LAN8700 PHYs
67c9e055acSHerbert Valerio Riedel
68c4b41c9fSMaciej W. Rozyckiconfig BROADCOM_PHY
69c4b41c9fSMaciej W. Rozycki	tristate "Drivers for Broadcom PHYs"
70c4b41c9fSMaciej W. Rozycki	---help---
71*3bca4cf6SAlessio Igor Bogani	  Currently supports the BCM5411, BCM5421, BCM5461, BCM54616S, BCM5464,
72*3bca4cf6SAlessio Igor Bogani	  BCM5481 and BCM5482 PHYs.
73c4b41c9fSMaciej W. Rozycki
7409bb9aa0SMaxime Bizonconfig BCM63XX_PHY
7509bb9aa0SMaxime Bizon	tristate "Drivers for Broadcom 63xx SOCs internal PHY"
76f1dc045eSRalf Baechle	depends on BCM63XX
7709bb9aa0SMaxime Bizon	---help---
7809bb9aa0SMaxime Bizon	  Currently supports the 6348 and 6358 PHYs.
7909bb9aa0SMaxime Bizon
80b560a58cSFlorian Fainelliconfig BCM7XXX_PHY
81b560a58cSFlorian Fainelli	tristate "Drivers for Broadcom 7xxx SOCs internal PHYs"
82b560a58cSFlorian Fainelli	---help---
83b560a58cSFlorian Fainelli	  Currently supports the BCM7366, BCM7439, BCM7445, and
84b560a58cSFlorian Fainelli	  40nm and 65nm generation of BCM7xxx Set Top Box SoCs.
85b560a58cSFlorian Fainelli
86e9976d7cSDavid Daneyconfig BCM87XX_PHY
87e9976d7cSDavid Daney	tristate "Driver for Broadcom BCM8706 and BCM8727 PHYs"
88e9976d7cSDavid Daney	help
89e9976d7cSDavid Daney	  Currently supports the BCM8706 and BCM8727 10G Ethernet PHYs.
90e9976d7cSDavid Daney
910cefeebaSMichael Barkowskiconfig ICPLUS_PHY
920cefeebaSMichael Barkowski	tristate "Drivers for ICPlus PHYs"
930cefeebaSMichael Barkowski	---help---
94377ecca9SGiuseppe CAVALLARO	  Currently supports the IP175C and IP1001 PHYs.
950cefeebaSMichael Barkowski
96097c2aa8SJohnson Leungconfig REALTEK_PHY
97097c2aa8SJohnson Leung	tristate "Drivers for Realtek PHYs"
98097c2aa8SJohnson Leung	---help---
99097c2aa8SJohnson Leung	  Supports the Realtek 821x PHY.
100097c2aa8SJohnson Leung
101914804b9SGiuseppe Cavallaroconfig NATIONAL_PHY
102914804b9SGiuseppe Cavallaro	tristate "Drivers for National Semiconductor PHYs"
103914804b9SGiuseppe Cavallaro	---help---
104914804b9SGiuseppe Cavallaro	  Currently supports the DP83865 PHY.
105914804b9SGiuseppe Cavallaro
106f95be180SGiuseppe Cavallaroconfig STE10XP
107f95be180SGiuseppe Cavallaro	tristate "Driver for STMicroelectronics STe10Xp PHYs"
108f95be180SGiuseppe Cavallaro	---help---
109f95be180SGiuseppe Cavallaro	  This is the driver for the STe100p and STe101p PHYs.
110f95be180SGiuseppe Cavallaro
111dbb7a95dSChaithrika U Sconfig LSI_ET1011C_PHY
112dbb7a95dSChaithrika U S	tristate "Driver for LSI ET1011C PHY"
113dbb7a95dSChaithrika U S	---help---
114dbb7a95dSChaithrika U S	  Supports the LSI ET1011C PHY.
115dbb7a95dSChaithrika U S
116d0507009SDavid J. Choiconfig MICREL_PHY
117d0507009SDavid J. Choi	tristate "Driver for Micrel PHYs"
118d0507009SDavid J. Choi	---help---
119d0507009SDavid J. Choi	  Supports the KSZ9021, VSC8201, KS8001 PHYs.
120d0507009SDavid J. Choi
12111b0bacdSVitaly Bordugconfig FIXED_PHY
1226539c44dSDavid S. Miller	tristate "Driver for MDIO Bus/PHY emulation with fixed speed/link PHYs"
1236539c44dSDavid S. Miller	depends on PHYLIB
12411b0bacdSVitaly Bordug	---help---
125a79d8e93SVitaly Bordug	  Adds the platform "fixed" MDIO Bus to cover the boards that use
126a79d8e93SVitaly Bordug	  PHYs that are not connected to the real MDIO bus.
12711b0bacdSVitaly Bordug
128a79d8e93SVitaly Bordug	  Currently tested with mpc866ads and mpc8349e-mitx.
1297c32f470SVitaly Bordug
130e2ec4581SScott Woodconfig MDIO_BITBANG
131e2ec4581SScott Wood	tristate "Support for bitbanged MDIO buses"
132e2ec4581SScott Wood	help
133e2ec4581SScott Wood	  This module implements the MDIO bus protocol in software,
134e2ec4581SScott Wood	  for use by low level drivers that export the ability to
135e2ec4581SScott Wood	  drive the relevant pins.
136e2ec4581SScott Wood
137e2ec4581SScott Wood	  If in doubt, say N.
138e2ec4581SScott Wood
13972af187fSPaulius Zaleckasconfig MDIO_GPIO
140a5edeccbSLaurent Pinchart	tristate "Support for GPIO lib-based bitbanged MDIO buses"
14176ec9d18SAlexandre Courbot	depends on MDIO_BITBANG && GPIOLIB
142a5edeccbSLaurent Pinchart	---help---
143a5edeccbSLaurent Pinchart	  Supports GPIO lib-based MDIO busses.
144a5edeccbSLaurent Pinchart
145f004f3eaSPaulius Zaleckas	  To compile this driver as a module, choose M here: the module
146f004f3eaSPaulius Zaleckas	  will be called mdio-gpio.
147f004f3eaSPaulius Zaleckas
14825d967b7SDavid Daneyconfig MDIO_OCTEON
14925d967b7SDavid Daney	tristate "Support for MDIO buses on Octeon SOCs"
1509ddebc46SDavid Daney	depends on CAVIUM_OCTEON_SOC
15125d967b7SDavid Daney	default y
15225d967b7SDavid Daney	help
15325d967b7SDavid Daney
15425d967b7SDavid Daney	  This module provides a driver for the Octeon MDIO busses.
15525d967b7SDavid Daney	  It is required by the Octeon Ethernet device drivers.
15625d967b7SDavid Daney
15725d967b7SDavid Daney	  If in doubt, say Y.
15825d967b7SDavid Daney
1594bdcb1ddSMaxime Ripardconfig MDIO_SUN4I
1604bdcb1ddSMaxime Ripard	tristate "Allwinner sun4i MDIO interface support"
1614bdcb1ddSMaxime Ripard	depends on ARCH_SUNXI
1624bdcb1ddSMaxime Ripard	help
1634bdcb1ddSMaxime Ripard	  This driver supports the MDIO interface found in the network
1644bdcb1ddSMaxime Ripard	  interface units of the Allwinner SoC that have an EMAC (A10,
1654bdcb1ddSMaxime Ripard	  A12, A10s, etc.)
1664bdcb1ddSMaxime Ripard
167b0db7b0cSJonas Jensenconfig MDIO_MOXART
168b0db7b0cSJonas Jensen        tristate "MOXA ART MDIO interface support"
169b0db7b0cSJonas Jensen        depends on ARCH_MOXART
170b0db7b0cSJonas Jensen        help
171b0db7b0cSJonas Jensen          This driver supports the MDIO interface found in the network
172b0db7b0cSJonas Jensen          interface units of the MOXA ART SoC
173b0db7b0cSJonas Jensen
1740ca2997dSDavid Daneyconfig MDIO_BUS_MUX
1750ca2997dSDavid Daney	tristate
1760ca2997dSDavid Daney	depends on OF_MDIO
1770ca2997dSDavid Daney	help
1780ca2997dSDavid Daney	  This module provides a driver framework for MDIO bus
1790ca2997dSDavid Daney	  multiplexers which connect one of several child MDIO busses
1800ca2997dSDavid Daney	  to a parent bus.  Switching between child busses is done by
1810ca2997dSDavid Daney	  device specific drivers.
1820ca2997dSDavid Daney
183416912a1SDavid Daneyconfig MDIO_BUS_MUX_GPIO
184416912a1SDavid Daney	tristate "Support for GPIO controlled MDIO bus multiplexers"
185416912a1SDavid Daney	depends on OF_GPIO && OF_MDIO
186416912a1SDavid Daney	select MDIO_BUS_MUX
187416912a1SDavid Daney	help
188416912a1SDavid Daney	  This module provides a driver for MDIO bus multiplexers that
189416912a1SDavid Daney	  are controlled via GPIO lines.  The multiplexer connects one of
190416912a1SDavid Daney	  several child MDIO busses to a parent bus.  Child bus
191416912a1SDavid Daney	  selection is under the control of GPIO lines.
192416912a1SDavid Daney
1936cc2ff82STimur Tabiconfig MDIO_BUS_MUX_MMIOREG
1946cc2ff82STimur Tabi	tristate "Support for MMIO device-controlled MDIO bus multiplexers"
1956cc2ff82STimur Tabi	depends on OF_MDIO
1966cc2ff82STimur Tabi	select MDIO_BUS_MUX
1976cc2ff82STimur Tabi	help
1986cc2ff82STimur Tabi	  This module provides a driver for MDIO bus multiplexers that
1996cc2ff82STimur Tabi	  are controlled via a simple memory-mapped device, like an FPGA.
2006cc2ff82STimur Tabi	  The multiplexer connects one of several child MDIO busses to a
2016cc2ff82STimur Tabi	  parent bus.  Child bus selection is under the control of one of
2026cc2ff82STimur Tabi	  the FPGA's registers.
2036cc2ff82STimur Tabi
2046cc2ff82STimur Tabi	  Currently, only 8-bit registers are supported.
2056cc2ff82STimur Tabi
2062ba1b163SFlorian Fainelliconfig MDIO_BCM_UNIMAC
2072ba1b163SFlorian Fainelli	tristate "Broadcom UniMAC MDIO bus controller"
208b3a00c91SChen Gang	depends on HAS_IOMEM
2092ba1b163SFlorian Fainelli	help
2102ba1b163SFlorian Fainelli	  This module provides a driver for the Broadcom UniMAC MDIO busses.
2112ba1b163SFlorian Fainelli	  This hardware can be found in the Broadcom GENET Ethernet MAC
2122ba1b163SFlorian Fainelli	  controllers as well as some Broadcom Ethernet switches such as the
2132ba1b163SFlorian Fainelli	  Starfighter 2 switches.
2142ba1b163SFlorian Fainelli
21553f99941SJan Engelhardtendif # PHYLIB
216a8e510f6SFrederic LAMBERT
217a8e510f6SFrederic LAMBERTconfig MICREL_KS8995MA
218a8e510f6SFrederic LAMBERT	tristate "Micrel KS8995MA 5-ports 10/100 managed Ethernet switch"
219a8e510f6SFrederic LAMBERT	depends on SPI
220