Merge tag 'riscv-for-linus-6.2-mw1' of git://git.kernel.org/pub/scm/linux/kernel...
[linux-block.git] / drivers / net / phy / Kconfig
1 # SPDX-License-Identifier: GPL-2.0-only
2 #
3 # PHY Layer Configuration
4 #
5
6 config 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
16 menuconfig 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
26 if PHYLIB
27
28 config SWPHY
29         bool
30
31 config 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
48 config FIXED_PHY
49         tristate "MDIO Bus/PHY emulation with fixed speed/link PHYs"
50         select SWPHY
51         help
52           Adds the platform "fixed" MDIO Bus to cover the boards that use
53           PHYs that are not connected to the real MDIO bus.
54
55           Currently tested with mpc866ads and mpc8349e-mitx.
56
57 config SFP
58         tristate "SFP cage support"
59         depends on I2C && PHYLINK
60         depends on HWMON || HWMON=n
61         select MDIO_I2C
62
63 comment "MII PHY device drivers"
64
65 config AMD_PHY
66         tristate "AMD PHYs"
67         help
68           Currently supports the am79c874
69
70 config MESON_GXL_PHY
71         tristate "Amlogic Meson GXL Internal PHY"
72         depends on ARCH_MESON || COMPILE_TEST
73         help
74           Currently has a driver for the Amlogic Meson GXL Internal PHY
75
76 config ADIN_PHY
77         tristate "Analog Devices Industrial Ethernet PHYs"
78         help
79           Adds support for the Analog Devices Industrial Ethernet PHYs.
80           Currently supports the:
81           - ADIN1200 - Robust,Industrial, Low Power 10/100 Ethernet PHY
82           - ADIN1300 - Robust,Industrial, Low Latency 10/100/1000 Gigabit
83             Ethernet PHY
84
85 config ADIN1100_PHY
86         tristate "Analog Devices Industrial Ethernet T1L PHYs"
87         help
88           Adds support for the Analog Devices Industrial T1L Ethernet PHYs.
89           Currently supports the:
90           - ADIN1100 - Robust,Industrial, Low Power 10BASE-T1L Ethernet PHY
91
92 config AQUANTIA_PHY
93         tristate "Aquantia PHYs"
94         help
95           Currently supports the Aquantia AQ1202, AQ2104, AQR105, AQR405
96
97 config AX88796B_PHY
98         tristate "Asix PHYs"
99         help
100           Currently supports the Asix Electronics PHY found in the X-Surf 100
101           AX88796B package.
102
103 config BROADCOM_PHY
104         tristate "Broadcom 54XX PHYs"
105         select BCM_NET_PHYLIB
106         select BCM_NET_PHYPTP if NETWORK_PHY_TIMESTAMPING
107         depends on PTP_1588_CLOCK_OPTIONAL
108         help
109           Currently supports the BCM5411, BCM5421, BCM5461, BCM54616S, BCM5464,
110           BCM5481, BCM54810 and BCM5482 PHYs.
111
112 config BCM54140_PHY
113         tristate "Broadcom BCM54140 PHY"
114         depends on HWMON || HWMON=n
115         select BCM_NET_PHYLIB
116         help
117           Support the Broadcom BCM54140 Quad SGMII/QSGMII PHY.
118
119           This driver also supports the hardware monitoring of this PHY and
120           exposes voltage and temperature sensors.
121
122 config BCM63XX_PHY
123         tristate "Broadcom 63xx SOCs internal PHY"
124         depends on BCM63XX || COMPILE_TEST
125         select BCM_NET_PHYLIB
126         help
127           Currently supports the 6348 and 6358 PHYs.
128
129 config BCM7XXX_PHY
130         tristate "Broadcom 7xxx SOCs internal PHYs"
131         select BCM_NET_PHYLIB
132         help
133           Currently supports the BCM7366, BCM7439, BCM7445, and
134           40nm and 65nm generation of BCM7xxx Set Top Box SoCs.
135
136 config BCM84881_PHY
137         tristate "Broadcom BCM84881 PHY"
138         help
139           Support the Broadcom BCM84881 PHY.
140
141 config BCM87XX_PHY
142         tristate "Broadcom BCM8706 and BCM8727 PHYs"
143         help
144           Currently supports the BCM8706 and BCM8727 10G Ethernet PHYs.
145
146 config BCM_CYGNUS_PHY
147         tristate "Broadcom Cygnus/Omega SoC internal PHY"
148         depends on ARCH_BCM_IPROC || COMPILE_TEST
149         depends on MDIO_BCM_IPROC
150         select BCM_NET_PHYLIB
151         help
152           This PHY driver is for the 1G internal PHYs of the Broadcom
153           Cygnus and Omega Family SoC.
154
155           Currently supports internal PHY's used in the BCM11300,
156           BCM11320, BCM11350, BCM11360, BCM58300, BCM58302,
157           BCM58303 & BCM58305 Broadcom Cygnus SoCs.
158
159 config BCM_NET_PHYLIB
160         tristate
161
162 config BCM_NET_PHYPTP
163         tristate
164
165 config CICADA_PHY
166         tristate "Cicada PHYs"
167         help
168           Currently supports the cis8204
169
170 config CORTINA_PHY
171         tristate "Cortina EDC CDR 10G Ethernet PHY"
172         help
173           Currently supports the CS4340 phy.
174
175 config DAVICOM_PHY
176         tristate "Davicom PHYs"
177         help
178           Currently supports dm9161e and dm9131
179
180 config ICPLUS_PHY
181         tristate "ICPlus PHYs"
182         help
183           Currently supports the IP175C and IP1001 PHYs.
184
185 config LXT_PHY
186         tristate "Intel LXT PHYs"
187         help
188           Currently supports the lxt970, lxt971
189
190 config INTEL_XWAY_PHY
191         tristate "Intel XWAY PHYs"
192         help
193           Supports the Intel XWAY (former Lantiq) 11G and 22E PHYs.
194           These PHYs are marked as standalone chips under the names
195           PEF 7061, PEF 7071 and PEF 7072 or integrated into the Intel
196           SoCs xRX200, xRX300, xRX330, xRX350 and xRX550.
197
198 config LSI_ET1011C_PHY
199         tristate "LSI ET1011C PHY"
200         help
201           Supports the LSI ET1011C PHY.
202
203 config MARVELL_PHY
204         tristate "Marvell Alaska PHYs"
205         help
206           Currently has a driver for the 88E1XXX
207
208 config MARVELL_10G_PHY
209         tristate "Marvell Alaska 10Gbit PHYs"
210         help
211           Support for the Marvell Alaska MV88X3310 and compatible PHYs.
212
213 config MARVELL_88X2222_PHY
214         tristate "Marvell 88X2222 PHY"
215         help
216           Support for the Marvell 88X2222 Dual-port Multi-speed Ethernet
217           Transceiver.
218
219 config MAXLINEAR_GPHY
220         tristate "Maxlinear Ethernet PHYs"
221         select POLYNOMIAL if HWMON
222         depends on HWMON || HWMON=n
223         help
224           Support for the Maxlinear GPY115, GPY211, GPY212, GPY215,
225           GPY241, GPY245 PHYs.
226
227 config MEDIATEK_GE_PHY
228         tristate "MediaTek Gigabit Ethernet PHYs"
229         help
230           Supports the MediaTek Gigabit Ethernet PHYs.
231
232 config MICREL_PHY
233         tristate "Micrel PHYs"
234         depends on PTP_1588_CLOCK_OPTIONAL
235         help
236           Supports the KSZ9021, VSC8201, KS8001 PHYs.
237
238 config MICROCHIP_PHY
239         tristate "Microchip PHYs"
240         help
241           Supports the LAN88XX PHYs.
242
243 config MICROCHIP_T1_PHY
244         tristate "Microchip T1 PHYs"
245         help
246           Supports the LAN87XX PHYs.
247
248 config MICROSEMI_PHY
249         tristate "Microsemi PHYs"
250         depends on MACSEC || MACSEC=n
251         depends on PTP_1588_CLOCK_OPTIONAL || !NETWORK_PHY_TIMESTAMPING
252         select CRYPTO_LIB_AES if MACSEC
253         help
254           Currently supports VSC8514, VSC8530, VSC8531, VSC8540 and VSC8541 PHYs
255
256 config MOTORCOMM_PHY
257         tristate "Motorcomm PHYs"
258         help
259           Enables support for Motorcomm network PHYs.
260           Currently supports the YT8511, YT8521, YT8531S Gigabit Ethernet PHYs.
261
262 config NATIONAL_PHY
263         tristate "National Semiconductor PHYs"
264         help
265           Currently supports the DP83865 PHY.
266
267 config NXP_C45_TJA11XX_PHY
268         tristate "NXP C45 TJA11XX PHYs"
269         depends on PTP_1588_CLOCK_OPTIONAL
270         help
271           Enable support for NXP C45 TJA11XX PHYs.
272           Currently supports only the TJA1103 PHY.
273
274 config NXP_TJA11XX_PHY
275         tristate "NXP TJA11xx PHYs support"
276         depends on HWMON
277         help
278           Currently supports the NXP TJA1100 and TJA1101 PHY.
279
280 config AT803X_PHY
281         tristate "Qualcomm Atheros AR803X PHYs and QCA833x PHYs"
282         depends on REGULATOR
283         help
284           Currently supports the AR8030, AR8031, AR8033, AR8035 and internal
285           QCA8337(Internal qca8k PHY) model
286
287 config QSEMI_PHY
288         tristate "Quality Semiconductor PHYs"
289         help
290           Currently supports the qs6612
291
292 config REALTEK_PHY
293         tristate "Realtek PHYs"
294         help
295           Supports the Realtek 821x PHY.
296
297 config RENESAS_PHY
298         tristate "Renesas PHYs"
299         help
300           Supports the Renesas PHYs uPD60620 and uPD60620A.
301
302 config ROCKCHIP_PHY
303         tristate "Rockchip Ethernet PHYs"
304         help
305           Currently supports the integrated Ethernet PHY.
306
307 config SMSC_PHY
308         tristate "SMSC PHYs"
309         help
310           Currently supports the LAN83C185, LAN8187 and LAN8700 PHYs
311
312 config STE10XP
313         tristate "STMicroelectronics STe10Xp PHYs"
314         help
315           This is the driver for the STe100p and STe101p PHYs.
316
317 config TERANETICS_PHY
318         tristate "Teranetics PHYs"
319         help
320           Currently supports the Teranetics TN2020
321
322 config DP83822_PHY
323         tristate "Texas Instruments DP83822/825/826 PHYs"
324         help
325           Supports the DP83822, DP83825I, DP83825CM, DP83825CS, DP83825S,
326           DP83826C and DP83826NC PHYs.
327
328 config DP83TC811_PHY
329         tristate "Texas Instruments DP83TC811 PHY"
330         help
331           Supports the DP83TC811 PHY.
332
333 config DP83848_PHY
334         tristate "Texas Instruments DP83848 PHY"
335         help
336           Supports the DP83848 PHY.
337
338 config DP83867_PHY
339         tristate "Texas Instruments DP83867 Gigabit PHY"
340         help
341           Currently supports the DP83867 PHY.
342
343 config DP83869_PHY
344         tristate "Texas Instruments DP83869 Gigabit PHY"
345         help
346           Currently supports the DP83869 PHY.  This PHY supports copper and
347           fiber connections.
348
349 config DP83TD510_PHY
350         tristate "Texas Instruments DP83TD510 Ethernet 10Base-T1L PHY"
351         help
352           Support for the DP83TD510 Ethernet 10Base-T1L PHY. This PHY supports
353           a 10M single pair Ethernet connection for up to 1000 meter cable.
354
355 config VITESSE_PHY
356         tristate "Vitesse PHYs"
357         help
358           Currently supports the vsc8244
359
360 config XILINX_GMII2RGMII
361         tristate "Xilinx GMII2RGMII converter driver"
362         help
363           This driver support xilinx GMII to RGMII IP core it provides
364           the Reduced Gigabit Media Independent Interface(RGMII) between
365           Ethernet physical media devices and the Gigabit Ethernet controller.
366
367 endif # PHYLIB
368
369 config MICREL_KS8995MA
370         tristate "Micrel KS8995MA 5-ports 10/100 managed Ethernet switch"
371         depends on SPI