xref: /openbmc/linux/drivers/net/phy/Kconfig (revision 0ca7111a38f053ae7b8829ee32fca6f9ef47550a)
100db8189SAndy Fleming#
200db8189SAndy Fleming# PHY Layer Configuration
300db8189SAndy Fleming#
400db8189SAndy Fleming
553f99941SJan Engelhardtmenuconfig PHYLIB
6fc0b927dSBen Hutchings	tristate "PHY Device support and infrastructure"
753f99941SJan Engelhardt	depends on !S390
8cba86f2eSRandy Dunlap	depends on NETDEVICES
900db8189SAndy Fleming	help
1000db8189SAndy Fleming	  Ethernet controllers are usually attached to PHY
1100db8189SAndy Fleming	  devices.  This option provides infrastructure for
1200db8189SAndy Fleming	  managing PHY devices.
1300db8189SAndy Fleming
1453f99941SJan Engelhardtif PHYLIB
1553f99941SJan Engelhardt
1600db8189SAndy Flemingcomment "MII PHY device drivers"
1700db8189SAndy Fleming
18*0ca7111aSMatus Ujhelyiconfig AT803X_PHY
19*0ca7111aSMatus Ujhelyi	tristate "Drivers for Atheros AT803X PHYs"
20*0ca7111aSMatus Ujhelyi	---help---
21*0ca7111aSMatus Ujhelyi	  Currently supports the AT8030 and AT8035 model
22*0ca7111aSMatus Ujhelyi
2349099122SHeiko Schocherconfig AMD_PHY
2449099122SHeiko Schocher	tristate "Drivers for the AMD PHYs"
2549099122SHeiko Schocher	---help---
2649099122SHeiko Schocher	  Currently supports the am79c874
2749099122SHeiko Schocher
2800db8189SAndy Flemingconfig MARVELL_PHY
2967c4f3faSJeff Garzik	tristate "Drivers for Marvell PHYs"
3000db8189SAndy Fleming	---help---
3100db8189SAndy Fleming	  Currently has a driver for the 88E1011S
3200db8189SAndy Fleming
3300db8189SAndy Flemingconfig DAVICOM_PHY
3467c4f3faSJeff Garzik	tristate "Drivers for Davicom PHYs"
3500db8189SAndy Fleming	---help---
3600db8189SAndy Fleming	  Currently supports dm9161e and dm9131
3700db8189SAndy Fleming
3800db8189SAndy Flemingconfig QSEMI_PHY
3967c4f3faSJeff Garzik	tristate "Drivers for Quality Semiconductor PHYs"
4000db8189SAndy Fleming	---help---
4100db8189SAndy Fleming	  Currently supports the qs6612
4200db8189SAndy Fleming
4300db8189SAndy Flemingconfig LXT_PHY
4467c4f3faSJeff Garzik	tristate "Drivers for the Intel LXT PHYs"
4500db8189SAndy Fleming	---help---
4600db8189SAndy Fleming	  Currently supports the lxt970, lxt971
4700db8189SAndy Fleming
4800db8189SAndy Flemingconfig CICADA_PHY
4967c4f3faSJeff Garzik	tristate "Drivers for the Cicada PHYs"
5000db8189SAndy Fleming	---help---
5100db8189SAndy Fleming	  Currently supports the cis8204
5253f99941SJan Engelhardt
53ef82a306SJon Loeligerconfig VITESSE_PHY
54ef82a306SJon Loeliger        tristate "Drivers for the Vitesse PHYs"
55ef82a306SJon Loeliger        ---help---
56ef82a306SJon Loeliger          Currently supports the vsc8244
5700db8189SAndy Fleming
58c9e055acSHerbert Valerio Riedelconfig SMSC_PHY
59c9e055acSHerbert Valerio Riedel	tristate "Drivers for SMSC PHYs"
60c9e055acSHerbert Valerio Riedel	---help---
614d9b1a02SSteve Glendinning	  Currently supports the LAN83C185, LAN8187 and LAN8700 PHYs
62c9e055acSHerbert Valerio Riedel
63c4b41c9fSMaciej W. Rozyckiconfig BROADCOM_PHY
64c4b41c9fSMaciej W. Rozycki	tristate "Drivers for Broadcom PHYs"
65c4b41c9fSMaciej W. Rozycki	---help---
661b0771abSMaciej W. Rozycki	  Currently supports the BCM5411, BCM5421, BCM5461, BCM5464, BCM5481
671b0771abSMaciej W. Rozycki	  and BCM5482 PHYs.
68c4b41c9fSMaciej W. Rozycki
6909bb9aa0SMaxime Bizonconfig BCM63XX_PHY
7009bb9aa0SMaxime Bizon	tristate "Drivers for Broadcom 63xx SOCs internal PHY"
71f1dc045eSRalf Baechle	depends on BCM63XX
7209bb9aa0SMaxime Bizon	---help---
7309bb9aa0SMaxime Bizon	  Currently supports the 6348 and 6358 PHYs.
7409bb9aa0SMaxime Bizon
75e9976d7cSDavid Daneyconfig BCM87XX_PHY
76e9976d7cSDavid Daney	tristate "Driver for Broadcom BCM8706 and BCM8727 PHYs"
77e9976d7cSDavid Daney	help
78e9976d7cSDavid Daney	  Currently supports the BCM8706 and BCM8727 10G Ethernet PHYs.
79e9976d7cSDavid Daney
800cefeebaSMichael Barkowskiconfig ICPLUS_PHY
810cefeebaSMichael Barkowski	tristate "Drivers for ICPlus PHYs"
820cefeebaSMichael Barkowski	---help---
83377ecca9SGiuseppe CAVALLARO	  Currently supports the IP175C and IP1001 PHYs.
840cefeebaSMichael Barkowski
85097c2aa8SJohnson Leungconfig REALTEK_PHY
86097c2aa8SJohnson Leung	tristate "Drivers for Realtek PHYs"
87097c2aa8SJohnson Leung	---help---
88097c2aa8SJohnson Leung	  Supports the Realtek 821x PHY.
89097c2aa8SJohnson Leung
90914804b9SGiuseppe Cavallaroconfig NATIONAL_PHY
91914804b9SGiuseppe Cavallaro	tristate "Drivers for National Semiconductor PHYs"
92914804b9SGiuseppe Cavallaro	---help---
93914804b9SGiuseppe Cavallaro	  Currently supports the DP83865 PHY.
94914804b9SGiuseppe Cavallaro
95f95be180SGiuseppe Cavallaroconfig STE10XP
96f95be180SGiuseppe Cavallaro	tristate "Driver for STMicroelectronics STe10Xp PHYs"
97f95be180SGiuseppe Cavallaro	---help---
98f95be180SGiuseppe Cavallaro	  This is the driver for the STe100p and STe101p PHYs.
99f95be180SGiuseppe Cavallaro
100dbb7a95dSChaithrika U Sconfig LSI_ET1011C_PHY
101dbb7a95dSChaithrika U S	tristate "Driver for LSI ET1011C PHY"
102dbb7a95dSChaithrika U S	---help---
103dbb7a95dSChaithrika U S	  Supports the LSI ET1011C PHY.
104dbb7a95dSChaithrika U S
105d0507009SDavid J. Choiconfig MICREL_PHY
106d0507009SDavid J. Choi	tristate "Driver for Micrel PHYs"
107d0507009SDavid J. Choi	---help---
108d0507009SDavid J. Choi	  Supports the KSZ9021, VSC8201, KS8001 PHYs.
109d0507009SDavid J. Choi
11011b0bacdSVitaly Bordugconfig FIXED_PHY
111a79d8e93SVitaly Bordug	bool "Driver for MDIO Bus/PHY emulation with fixed speed/link PHYs"
112f9e7d100SAdrian Bunk	depends on PHYLIB=y
11311b0bacdSVitaly Bordug	---help---
114a79d8e93SVitaly Bordug	  Adds the platform "fixed" MDIO Bus to cover the boards that use
115a79d8e93SVitaly Bordug	  PHYs that are not connected to the real MDIO bus.
11611b0bacdSVitaly Bordug
117a79d8e93SVitaly Bordug	  Currently tested with mpc866ads and mpc8349e-mitx.
1187c32f470SVitaly Bordug
119e2ec4581SScott Woodconfig MDIO_BITBANG
120e2ec4581SScott Wood	tristate "Support for bitbanged MDIO buses"
121e2ec4581SScott Wood	help
122e2ec4581SScott Wood	  This module implements the MDIO bus protocol in software,
123e2ec4581SScott Wood	  for use by low level drivers that export the ability to
124e2ec4581SScott Wood	  drive the relevant pins.
125e2ec4581SScott Wood
126e2ec4581SScott Wood	  If in doubt, say N.
127e2ec4581SScott Wood
12872af187fSPaulius Zaleckasconfig MDIO_GPIO
129a5edeccbSLaurent Pinchart	tristate "Support for GPIO lib-based bitbanged MDIO buses"
130f004f3eaSPaulius Zaleckas	depends on MDIO_BITBANG && GENERIC_GPIO
131a5edeccbSLaurent Pinchart	---help---
132a5edeccbSLaurent Pinchart	  Supports GPIO lib-based MDIO busses.
133a5edeccbSLaurent Pinchart
134f004f3eaSPaulius Zaleckas	  To compile this driver as a module, choose M here: the module
135f004f3eaSPaulius Zaleckas	  will be called mdio-gpio.
136f004f3eaSPaulius Zaleckas
13725d967b7SDavid Daneyconfig MDIO_OCTEON
13825d967b7SDavid Daney	tristate "Support for MDIO buses on Octeon SOCs"
13925d967b7SDavid Daney	depends on  CPU_CAVIUM_OCTEON
14025d967b7SDavid Daney	default y
14125d967b7SDavid Daney	help
14225d967b7SDavid Daney
14325d967b7SDavid Daney	  This module provides a driver for the Octeon MDIO busses.
14425d967b7SDavid Daney	  It is required by the Octeon Ethernet device drivers.
14525d967b7SDavid Daney
14625d967b7SDavid Daney	  If in doubt, say Y.
14725d967b7SDavid Daney
1480ca2997dSDavid Daneyconfig MDIO_BUS_MUX
1490ca2997dSDavid Daney	tristate
1500ca2997dSDavid Daney	depends on OF_MDIO
1510ca2997dSDavid Daney	help
1520ca2997dSDavid Daney	  This module provides a driver framework for MDIO bus
1530ca2997dSDavid Daney	  multiplexers which connect one of several child MDIO busses
1540ca2997dSDavid Daney	  to a parent bus.  Switching between child busses is done by
1550ca2997dSDavid Daney	  device specific drivers.
1560ca2997dSDavid Daney
157416912a1SDavid Daneyconfig MDIO_BUS_MUX_GPIO
158416912a1SDavid Daney	tristate "Support for GPIO controlled MDIO bus multiplexers"
159416912a1SDavid Daney	depends on OF_GPIO && OF_MDIO
160416912a1SDavid Daney	select MDIO_BUS_MUX
161416912a1SDavid Daney	help
162416912a1SDavid Daney	  This module provides a driver for MDIO bus multiplexers that
163416912a1SDavid Daney	  are controlled via GPIO lines.  The multiplexer connects one of
164416912a1SDavid Daney	  several child MDIO busses to a parent bus.  Child bus
165416912a1SDavid Daney	  selection is under the control of GPIO lines.
166416912a1SDavid Daney
1676cc2ff82STimur Tabiconfig MDIO_BUS_MUX_MMIOREG
1686cc2ff82STimur Tabi	tristate "Support for MMIO device-controlled MDIO bus multiplexers"
1696cc2ff82STimur Tabi	depends on OF_MDIO
1706cc2ff82STimur Tabi	select MDIO_BUS_MUX
1716cc2ff82STimur Tabi	help
1726cc2ff82STimur Tabi	  This module provides a driver for MDIO bus multiplexers that
1736cc2ff82STimur Tabi	  are controlled via a simple memory-mapped device, like an FPGA.
1746cc2ff82STimur Tabi	  The multiplexer connects one of several child MDIO busses to a
1756cc2ff82STimur Tabi	  parent bus.  Child bus selection is under the control of one of
1766cc2ff82STimur Tabi	  the FPGA's registers.
1776cc2ff82STimur Tabi
1786cc2ff82STimur Tabi	  Currently, only 8-bit registers are supported.
1796cc2ff82STimur Tabi
18053f99941SJan Engelhardtendif # PHYLIB
181a8e510f6SFrederic LAMBERT
182a8e510f6SFrederic LAMBERTconfig MICREL_KS8995MA
183a8e510f6SFrederic LAMBERT	tristate "Micrel KS8995MA 5-ports 10/100 managed Ethernet switch"
184a8e510f6SFrederic LAMBERT	depends on SPI
185