xref: /openbmc/linux/drivers/net/phy/Kconfig (revision 99a15348)
1# SPDX-License-Identifier: GPL-2.0-only
2#
3# PHY Layer Configuration
4#
5
6config PHYLINK
7	tristate
8	depends on NETDEVICES
9	select PHYLIB
10	select SWPHY
11	help
12	  PHYlink models the link between the PHY and MAC, allowing fixed
13	  configuration links, PHYs, and Serdes links with MAC level
14	  autonegotiation modes.
15
16menuconfig PHYLIB
17	tristate "PHY Device support and infrastructure"
18	depends on NETDEVICES
19	select MDIO_DEVICE
20	select MDIO_DEVRES
21	help
22	  Ethernet controllers are usually attached to PHY
23	  devices.  This option provides infrastructure for
24	  managing PHY devices.
25
26if PHYLIB
27
28config SWPHY
29	bool
30
31config LED_TRIGGER_PHY
32	bool "Support LED triggers for tracking link state"
33	depends on LEDS_TRIGGERS
34	help
35	  Adds support for a set of LED trigger events per-PHY.  Link
36	  state change will trigger the events, for consumption by an
37	  LED class driver.  There are triggers for each link speed currently
38	  supported by the PHY and also a one common "link" trigger as a
39	  logical-or of all the link speed ones.
40	  All these triggers are named according to the following pattern:
41	      <mii bus id>:<phy>:<speed>
42
43	  Where speed is in the form:
44		<Speed in megabits>Mbps OR <Speed in gigabits>Gbps OR link
45		for any speed known to the PHY.
46
47
48config FIXED_PHY
49	tristate "MDIO Bus/PHY emulation with fixed speed/link PHYs"
50	depends on PHYLIB
51	select SWPHY
52	help
53	  Adds the platform "fixed" MDIO Bus to cover the boards that use
54	  PHYs that are not connected to the real MDIO bus.
55
56	  Currently tested with mpc866ads and mpc8349e-mitx.
57
58config SFP
59	tristate "SFP cage support"
60	depends on I2C && PHYLINK
61	depends on HWMON || HWMON=n
62	select MDIO_I2C
63
64comment "MII PHY device drivers"
65
66config AMD_PHY
67	tristate "AMD PHYs"
68	help
69	  Currently supports the am79c874
70
71config MESON_GXL_PHY
72	tristate "Amlogic Meson GXL Internal PHY"
73	depends on ARCH_MESON || COMPILE_TEST
74	help
75	  Currently has a driver for the Amlogic Meson GXL Internal PHY
76
77config ADIN_PHY
78	tristate "Analog Devices Industrial Ethernet PHYs"
79	help
80	  Adds support for the Analog Devices Industrial Ethernet PHYs.
81	  Currently supports the:
82	  - ADIN1200 - Robust,Industrial, Low Power 10/100 Ethernet PHY
83	  - ADIN1300 - Robust,Industrial, Low Latency 10/100/1000 Gigabit
84	    Ethernet PHY
85
86config AQUANTIA_PHY
87	tristate "Aquantia PHYs"
88	help
89	  Currently supports the Aquantia AQ1202, AQ2104, AQR105, AQR405
90
91config AX88796B_PHY
92	tristate "Asix PHYs"
93	help
94	  Currently supports the Asix Electronics PHY found in the X-Surf 100
95	  AX88796B package.
96
97config BROADCOM_PHY
98	tristate "Broadcom 54XX PHYs"
99	select BCM_NET_PHYLIB
100	help
101	  Currently supports the BCM5411, BCM5421, BCM5461, BCM54616S, BCM5464,
102	  BCM5481, BCM54810 and BCM5482 PHYs.
103
104config BCM54140_PHY
105	tristate "Broadcom BCM54140 PHY"
106	depends on PHYLIB
107	depends on HWMON || HWMON=n
108	select BCM_NET_PHYLIB
109	help
110	  Support the Broadcom BCM54140 Quad SGMII/QSGMII PHY.
111
112	  This driver also supports the hardware monitoring of this PHY and
113	  exposes voltage and temperature sensors.
114
115config BCM63XX_PHY
116	tristate "Broadcom 63xx SOCs internal PHY"
117	depends on BCM63XX || COMPILE_TEST
118	select BCM_NET_PHYLIB
119	help
120	  Currently supports the 6348 and 6358 PHYs.
121
122config BCM7XXX_PHY
123	tristate "Broadcom 7xxx SOCs internal PHYs"
124	select BCM_NET_PHYLIB
125	help
126	  Currently supports the BCM7366, BCM7439, BCM7445, and
127	  40nm and 65nm generation of BCM7xxx Set Top Box SoCs.
128
129config BCM84881_PHY
130	tristate "Broadcom BCM84881 PHY"
131	depends on PHYLIB
132	help
133	  Support the Broadcom BCM84881 PHY.
134
135config BCM87XX_PHY
136	tristate "Broadcom BCM8706 and BCM8727 PHYs"
137	help
138	  Currently supports the BCM8706 and BCM8727 10G Ethernet PHYs.
139
140config BCM_CYGNUS_PHY
141	tristate "Broadcom Cygnus/Omega SoC internal PHY"
142	depends on ARCH_BCM_IPROC || COMPILE_TEST
143	depends on MDIO_BCM_IPROC
144	select BCM_NET_PHYLIB
145	help
146	  This PHY driver is for the 1G internal PHYs of the Broadcom
147	  Cygnus and Omega Family SoC.
148
149	  Currently supports internal PHY's used in the BCM11300,
150	  BCM11320, BCM11350, BCM11360, BCM58300, BCM58302,
151	  BCM58303 & BCM58305 Broadcom Cygnus SoCs.
152
153config BCM_NET_PHYLIB
154	tristate
155
156config CICADA_PHY
157	tristate "Cicada PHYs"
158	help
159	  Currently supports the cis8204
160
161config CORTINA_PHY
162	tristate "Cortina EDC CDR 10G Ethernet PHY"
163	help
164	  Currently supports the CS4340 phy.
165
166config DAVICOM_PHY
167	tristate "Davicom PHYs"
168	help
169	  Currently supports dm9161e and dm9131
170
171config ICPLUS_PHY
172	tristate "ICPlus PHYs"
173	help
174	  Currently supports the IP175C and IP1001 PHYs.
175
176config LXT_PHY
177	tristate "Intel LXT PHYs"
178	help
179	  Currently supports the lxt970, lxt971
180
181config INTEL_XWAY_PHY
182	tristate "Intel XWAY PHYs"
183	help
184	  Supports the Intel XWAY (former Lantiq) 11G and 22E PHYs.
185	  These PHYs are marked as standalone chips under the names
186	  PEF 7061, PEF 7071 and PEF 7072 or integrated into the Intel
187	  SoCs xRX200, xRX300, xRX330, xRX350 and xRX550.
188
189config LSI_ET1011C_PHY
190	tristate "LSI ET1011C PHY"
191	help
192	  Supports the LSI ET1011C PHY.
193
194config MARVELL_PHY
195	tristate "Marvell Alaska PHYs"
196	help
197	  Currently has a driver for the 88E1XXX
198
199config MARVELL_10G_PHY
200	tristate "Marvell Alaska 10Gbit PHYs"
201	help
202	  Support for the Marvell Alaska MV88X3310 and compatible PHYs.
203
204config MARVELL_88X2222_PHY
205	tristate "Marvell 88X2222 PHY"
206	help
207	  Support for the Marvell 88X2222 Dual-port Multi-speed Ethernet
208	  Transceiver.
209
210config MAXLINEAR_GPHY
211	tristate "Maxlinear Ethernet PHYs"
212	help
213	  Support for the Maxlinear GPY115, GPY211, GPY212, GPY215,
214	  GPY241, GPY245 PHYs.
215
216config MEDIATEK_GE_PHY
217	tristate "MediaTek Gigabit Ethernet PHYs"
218	help
219	  Supports the MediaTek Gigabit Ethernet PHYs.
220
221config MICREL_PHY
222	tristate "Micrel PHYs"
223	depends on PTP_1588_CLOCK_OPTIONAL
224	help
225	  Supports the KSZ9021, VSC8201, KS8001 PHYs.
226
227config MICROCHIP_PHY
228	tristate "Microchip PHYs"
229	help
230	  Supports the LAN88XX PHYs.
231
232config MICROCHIP_T1_PHY
233	tristate "Microchip T1 PHYs"
234	help
235	  Supports the LAN87XX PHYs.
236
237config MICROSEMI_PHY
238	tristate "Microsemi PHYs"
239	depends on MACSEC || MACSEC=n
240	depends on PTP_1588_CLOCK_OPTIONAL || !NETWORK_PHY_TIMESTAMPING
241	select CRYPTO_LIB_AES if MACSEC
242	help
243	  Currently supports VSC8514, VSC8530, VSC8531, VSC8540 and VSC8541 PHYs
244
245config MOTORCOMM_PHY
246	tristate "Motorcomm PHYs"
247	help
248	  Enables support for Motorcomm network PHYs.
249	  Currently supports the YT8511 gigabit PHY.
250
251config NATIONAL_PHY
252	tristate "National Semiconductor PHYs"
253	help
254	  Currently supports the DP83865 PHY.
255
256config NXP_C45_TJA11XX_PHY
257	tristate "NXP C45 TJA11XX PHYs"
258	depends on PTP_1588_CLOCK_OPTIONAL
259	help
260	  Enable support for NXP C45 TJA11XX PHYs.
261	  Currently supports only the TJA1103 PHY.
262
263config NXP_TJA11XX_PHY
264	tristate "NXP TJA11xx PHYs support"
265	depends on HWMON
266	help
267	  Currently supports the NXP TJA1100 and TJA1101 PHY.
268
269config AT803X_PHY
270	tristate "Qualcomm Atheros AR803X PHYs and QCA833x PHYs"
271	depends on REGULATOR
272	help
273	  Currently supports the AR8030, AR8031, AR8033, AR8035 and internal
274	  QCA8337(Internal qca8k PHY) model
275
276config QSEMI_PHY
277	tristate "Quality Semiconductor PHYs"
278	help
279	  Currently supports the qs6612
280
281config REALTEK_PHY
282	tristate "Realtek PHYs"
283	help
284	  Supports the Realtek 821x PHY.
285
286config RENESAS_PHY
287	tristate "Renesas PHYs"
288	help
289	  Supports the Renesas PHYs uPD60620 and uPD60620A.
290
291config ROCKCHIP_PHY
292	tristate "Rockchip Ethernet PHYs"
293	help
294	  Currently supports the integrated Ethernet 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 DP83822_PHY
312	tristate "Texas Instruments DP83822/825/826 PHYs"
313	help
314	  Supports the DP83822, DP83825I, DP83825CM, DP83825CS, DP83825S,
315	  DP83826C and DP83826NC PHYs.
316
317config DP83TC811_PHY
318	tristate "Texas Instruments DP83TC811 PHY"
319	help
320	  Supports the DP83TC811 PHY.
321
322config DP83848_PHY
323	tristate "Texas Instruments DP83848 PHY"
324	help
325	  Supports the DP83848 PHY.
326
327config DP83867_PHY
328	tristate "Texas Instruments DP83867 Gigabit PHY"
329	help
330	  Currently supports the DP83867 PHY.
331
332config DP83869_PHY
333	tristate "Texas Instruments DP83869 Gigabit PHY"
334	help
335	  Currently supports the DP83869 PHY.  This PHY supports copper and
336	  fiber connections.
337
338config VITESSE_PHY
339	tristate "Vitesse PHYs"
340	help
341	  Currently supports the vsc8244
342
343config XILINX_GMII2RGMII
344	tristate "Xilinx GMII2RGMII converter driver"
345	help
346	  This driver support xilinx GMII to RGMII IP core it provides
347	  the Reduced Gigabit Media Independent Interface(RGMII) between
348	  Ethernet physical media devices and the Gigabit Ethernet controller.
349
350endif # PHYLIB
351
352config MICREL_KS8995MA
353	tristate "Micrel KS8995MA 5-ports 10/100 managed Ethernet switch"
354	depends on SPI
355