Merge tag 'pci-v5.15-changes' of git://git.kernel.org/pub/scm/linux/kernel/git/helgaa...
[linux-2.6-microblaze.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         help
101           Currently supports the BCM5411, BCM5421, BCM5461, BCM54616S, BCM5464,
102           BCM5481, BCM54810 and BCM5482 PHYs.
103
104 config 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
115 config 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
122 config 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
129 config BCM84881_PHY
130         tristate "Broadcom BCM84881 PHY"
131         depends on PHYLIB
132         help
133           Support the Broadcom BCM84881 PHY.
134
135 config BCM87XX_PHY
136         tristate "Broadcom BCM8706 and BCM8727 PHYs"
137         help
138           Currently supports the BCM8706 and BCM8727 10G Ethernet PHYs.
139
140 config 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
153 config BCM_NET_PHYLIB
154         tristate
155
156 config CICADA_PHY
157         tristate "Cicada PHYs"
158         help
159           Currently supports the cis8204
160
161 config CORTINA_PHY
162         tristate "Cortina EDC CDR 10G Ethernet PHY"
163         help
164           Currently supports the CS4340 phy.
165
166 config DAVICOM_PHY
167         tristate "Davicom PHYs"
168         help
169           Currently supports dm9161e and dm9131
170
171 config ICPLUS_PHY
172         tristate "ICPlus PHYs"
173         help
174           Currently supports the IP175C and IP1001 PHYs.
175
176 config LXT_PHY
177         tristate "Intel LXT PHYs"
178         help
179           Currently supports the lxt970, lxt971
180
181 config 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
189 config LSI_ET1011C_PHY
190         tristate "LSI ET1011C PHY"
191         help
192           Supports the LSI ET1011C PHY.
193
194 config MARVELL_PHY
195         tristate "Marvell Alaska PHYs"
196         help
197           Currently has a driver for the 88E1XXX
198
199 config MARVELL_10G_PHY
200         tristate "Marvell Alaska 10Gbit PHYs"
201         help
202           Support for the Marvell Alaska MV88X3310 and compatible PHYs.
203
204 config MARVELL_88X2222_PHY
205         tristate "Marvell 88X2222 PHY"
206         help
207           Support for the Marvell 88X2222 Dual-port Multi-speed Ethernet
208           Transceiver.
209
210 config MAXLINEAR_GPHY
211         tristate "Maxlinear Ethernet PHYs"
212         help
213           Support for the Maxlinear GPY115, GPY211, GPY212, GPY215,
214           GPY241, GPY245 PHYs.
215
216 config MEDIATEK_GE_PHY
217         tristate "MediaTek Gigabit Ethernet PHYs"
218         help
219           Supports the MediaTek Gigabit Ethernet PHYs.
220
221 config MICREL_PHY
222         tristate "Micrel PHYs"
223         help
224           Supports the KSZ9021, VSC8201, KS8001 PHYs.
225
226 config MICROCHIP_PHY
227         tristate "Microchip PHYs"
228         help
229           Supports the LAN88XX PHYs.
230
231 config MICROCHIP_T1_PHY
232         tristate "Microchip T1 PHYs"
233         help
234           Supports the LAN87XX PHYs.
235
236 config MICROSEMI_PHY
237         tristate "Microsemi PHYs"
238         depends on MACSEC || MACSEC=n
239         depends on PTP_1588_CLOCK_OPTIONAL || !NETWORK_PHY_TIMESTAMPING
240         select CRYPTO_LIB_AES if MACSEC
241         help
242           Currently supports VSC8514, VSC8530, VSC8531, VSC8540 and VSC8541 PHYs
243
244 config MOTORCOMM_PHY
245         tristate "Motorcomm PHYs"
246         help
247           Enables support for Motorcomm network PHYs.
248           Currently supports the YT8511 gigabit PHY.
249
250 config NATIONAL_PHY
251         tristate "National Semiconductor PHYs"
252         help
253           Currently supports the DP83865 PHY.
254
255 config NXP_C45_TJA11XX_PHY
256         tristate "NXP C45 TJA11XX PHYs"
257         depends on PTP_1588_CLOCK_OPTIONAL
258         help
259           Enable support for NXP C45 TJA11XX PHYs.
260           Currently supports only the TJA1103 PHY.
261
262 config NXP_TJA11XX_PHY
263         tristate "NXP TJA11xx PHYs support"
264         depends on HWMON
265         help
266           Currently supports the NXP TJA1100 and TJA1101 PHY.
267
268 config AT803X_PHY
269         tristate "Qualcomm Atheros AR803X PHYs and QCA833x PHYs"
270         depends on REGULATOR
271         help
272           Currently supports the AR8030, AR8031, AR8033, AR8035 and internal
273           QCA8337(Internal qca8k PHY) model
274
275 config QSEMI_PHY
276         tristate "Quality Semiconductor PHYs"
277         help
278           Currently supports the qs6612
279
280 config REALTEK_PHY
281         tristate "Realtek PHYs"
282         help
283           Supports the Realtek 821x PHY.
284
285 config RENESAS_PHY
286         tristate "Renesas PHYs"
287         help
288           Supports the Renesas PHYs uPD60620 and uPD60620A.
289
290 config ROCKCHIP_PHY
291         tristate "Rockchip Ethernet PHYs"
292         help
293           Currently supports the integrated Ethernet PHY.
294
295 config SMSC_PHY
296         tristate "SMSC PHYs"
297         help
298           Currently supports the LAN83C185, LAN8187 and LAN8700 PHYs
299
300 config STE10XP
301         tristate "STMicroelectronics STe10Xp PHYs"
302         help
303           This is the driver for the STe100p and STe101p PHYs.
304
305 config TERANETICS_PHY
306         tristate "Teranetics PHYs"
307         help
308           Currently supports the Teranetics TN2020
309
310 config DP83822_PHY
311         tristate "Texas Instruments DP83822/825/826 PHYs"
312         help
313           Supports the DP83822, DP83825I, DP83825CM, DP83825CS, DP83825S,
314           DP83826C and DP83826NC PHYs.
315
316 config DP83TC811_PHY
317         tristate "Texas Instruments DP83TC811 PHY"
318         help
319           Supports the DP83TC811 PHY.
320
321 config DP83848_PHY
322         tristate "Texas Instruments DP83848 PHY"
323         help
324           Supports the DP83848 PHY.
325
326 config DP83867_PHY
327         tristate "Texas Instruments DP83867 Gigabit PHY"
328         help
329           Currently supports the DP83867 PHY.
330
331 config DP83869_PHY
332         tristate "Texas Instruments DP83869 Gigabit PHY"
333         help
334           Currently supports the DP83869 PHY.  This PHY supports copper and
335           fiber connections.
336
337 config VITESSE_PHY
338         tristate "Vitesse PHYs"
339         help
340           Currently supports the vsc8244
341
342 config XILINX_GMII2RGMII
343         tristate "Xilinx GMII2RGMII converter driver"
344         help
345           This driver support xilinx GMII to RGMII IP core it provides
346           the Reduced Gigabit Media Independent Interface(RGMII) between
347           Ethernet physical media devices and the Gigabit Ethernet controller.
348
349 endif # PHYLIB
350
351 config MICREL_KS8995MA
352         tristate "Micrel KS8995MA 5-ports 10/100 managed Ethernet switch"
353         depends on SPI