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