summaryrefslogtreecommitdiff
path: root/drivers/net/phy/Kconfig
blob: 1df0595c5ba9fbbc4f7a5a802f00c2a538994824 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
# SPDX-License-Identifier: GPL-2.0-only
#
# PHY Layer Configuration
#

config PHYLINK
	tristate
	depends on NETDEVICES
	select PHYLIB
	select SWPHY
	help
	  PHYlink models the link between the PHY and MAC, allowing fixed
	  configuration links, PHYs, and Serdes links with MAC level
	  autonegotiation modes.

menuconfig PHYLIB
	tristate "PHY Device support and infrastructure"
	depends on NETDEVICES
	select MDIO_DEVICE
	select MDIO_DEVRES
	help
	  Ethernet controllers are usually attached to PHY
	  devices.  This option provides infrastructure for
	  managing PHY devices.

if PHYLIB

config SWPHY
	bool

config LED_TRIGGER_PHY
	bool "Support LED triggers for tracking link state"
	depends on LEDS_TRIGGERS
	help
	  Adds support for a set of LED trigger events per-PHY.  Link
	  state change will trigger the events, for consumption by an
	  LED class driver.  There are triggers for each link speed currently
	  supported by the PHY and also a one common "link" trigger as a
	  logical-or of all the link speed ones.
	  All these triggers are named according to the following pattern:
	      <mii bus id>:<phy>:<speed>

	  Where speed is in the form:
		<Speed in megabits>Mbps OR <Speed in gigabits>Gbps OR link
		for any speed known to the PHY.

config PHYLIB_LEDS
	def_bool OF
	depends on LEDS_CLASS=y || LEDS_CLASS=PHYLIB
	help
	  When LED class support is enabled, phylib can automatically
	  probe LED setting from device tree.

config FIXED_PHY
	tristate "MDIO Bus/PHY emulation with fixed speed/link PHYs"
	select SWPHY
	help
	  Adds the platform "fixed" MDIO Bus to cover the boards that use
	  PHYs that are not connected to the real MDIO bus.

	  Currently tested with mpc866ads and mpc8349e-mitx.

config RUST_PHYLIB_ABSTRACTIONS
        bool "Rust PHYLIB abstractions support"
        depends on RUST
        depends on PHYLIB=y
        help
          Adds support needed for PHY drivers written in Rust. It provides
          a wrapper around the C phylib core.

config SFP
	tristate "SFP cage support"
	depends on I2C && PHYLINK
	depends on HWMON || HWMON=n
	select MDIO_I2C

comment "MII PHY device drivers"

config AMD_PHY
	tristate "AMD and Altima PHYs"
	help
	  Currently supports the AMD am79c874 and Altima AC101L.

config MESON_GXL_PHY
	tristate "Amlogic Meson GXL Internal PHY"
	depends on ARCH_MESON || COMPILE_TEST
	select SMSC_PHY
	help
	  Currently has a driver for the Amlogic Meson GXL Internal PHY

config ADIN_PHY
	tristate "Analog Devices Industrial Ethernet PHYs"
	help
	  Adds support for the Analog Devices Industrial Ethernet PHYs.
	  Currently supports the:
	  - ADIN1200 - Robust,Industrial, Low Power 10/100 Ethernet PHY
	  - ADIN1300 - Robust,Industrial, Low Latency 10/100/1000 Gigabit
	    Ethernet PHY

config ADIN1100_PHY
	tristate "Analog Devices Industrial Ethernet T1L PHYs"
	help
	  Adds support for the Analog Devices Industrial T1L Ethernet PHYs.
	  Currently supports the:
	  - ADIN1100 - Robust,Industrial, Low Power 10BASE-T1L Ethernet PHY

source "drivers/net/phy/aquantia/Kconfig"

config AX88796B_PHY
	tristate "Asix PHYs"
	help
	  Currently supports the Asix Electronics PHY found in the X-Surf 100
	  AX88796B package.

config AX88796B_RUST_PHY
	bool "Rust reference driver for Asix PHYs"
	depends on RUST_PHYLIB_ABSTRACTIONS && AX88796B_PHY
	help
	  Uses the Rust reference driver for Asix PHYs (ax88796b_rust.ko).
	  The features are equivalent. It supports the Asix Electronics PHY
	  found in the X-Surf 100 AX88796B package.

config BROADCOM_PHY
	tristate "Broadcom 54XX PHYs"
	select BCM_NET_PHYLIB
	select BCM_NET_PHYPTP if NETWORK_PHY_TIMESTAMPING
	depends on PTP_1588_CLOCK_OPTIONAL
	help
	  Currently supports the BCM5411, BCM5421, BCM5461, BCM54616S, BCM5464,
	  BCM5481, BCM54810 and BCM5482 PHYs.

config BCM54140_PHY
	tristate "Broadcom BCM54140 PHY"
	depends on HWMON || HWMON=n
	select BCM_NET_PHYLIB
	help
	  Support the Broadcom BCM54140 Quad SGMII/QSGMII PHY.

	  This driver also supports the hardware monitoring of this PHY and
	  exposes voltage and temperature sensors.

config BCM63XX_PHY
	tristate "Broadcom 63xx SOCs internal PHY"
	depends on BCM63XX || COMPILE_TEST
	select BCM_NET_PHYLIB
	help
	  Currently supports the 6348 and 6358 PHYs.

config BCM7XXX_PHY
	tristate "Broadcom 7xxx SOCs internal PHYs"
	select BCM_NET_PHYLIB
	help
	  Currently supports the BCM7366, BCM7439, BCM7445, and
	  40nm and 65nm generation of BCM7xxx Set Top Box SoCs.

config BCM84881_PHY
	tristate "Broadcom BCM84881 PHY"
	help
	  Support the Broadcom BCM84881 PHY.

config BCM87XX_PHY
	tristate "Broadcom BCM8706 and BCM8727 PHYs"
	help
	  Currently supports the BCM8706 and BCM8727 10G Ethernet PHYs.

config BCM_CYGNUS_PHY
	tristate "Broadcom Cygnus/Omega SoC internal PHY"
	depends on ARCH_BCM_IPROC || COMPILE_TEST
	depends on MDIO_BCM_IPROC
	select BCM_NET_PHYLIB
	help
	  This PHY driver is for the 1G internal PHYs of the Broadcom
	  Cygnus and Omega Family SoC.

	  Currently supports internal PHY's used in the BCM11300,
	  BCM11320, BCM11350, BCM11360, BCM58300, BCM58302,
	  BCM58303 & BCM58305 Broadcom Cygnus SoCs.

config BCM_NET_PHYLIB
	tristate

config BCM_NET_PHYPTP
	tristate

config CICADA_PHY
	tristate "Cicada PHYs"
	help
	  Currently supports the cis8204

config CORTINA_PHY
	tristate "Cortina EDC CDR 10G Ethernet PHY"
	help
	  Currently supports the CS4340 phy.

config DAVICOM_PHY
	tristate "Davicom PHYs"
	help
	  Currently supports dm9161e and dm9131

config ICPLUS_PHY
	tristate "ICPlus PHYs"
	help
	  Currently supports the IP175C and IP1001 PHYs.

config LXT_PHY
	tristate "Intel LXT PHYs"
	help
	  Currently supports the lxt970, lxt971

config INTEL_XWAY_PHY
	tristate "Intel XWAY PHYs"
	help
	  Supports the Intel XWAY (former Lantiq) 11G and 22E PHYs.
	  These PHYs are marked as standalone chips under the names
	  PEF 7061, PEF 7071 and PEF 7072 or integrated into the Intel
	  SoCs xRX200, xRX300, xRX330, xRX350 and xRX550.

config LSI_ET1011C_PHY
	tristate "LSI ET1011C PHY"
	help
	  Supports the LSI ET1011C PHY.

config MARVELL_PHY
	tristate "Marvell Alaska PHYs"
	help
	  Currently has a driver for the 88E1XXX

config MARVELL_10G_PHY
	tristate "Marvell Alaska 10Gbit PHYs"
	help
	  Support for the Marvell Alaska MV88X3310 and compatible PHYs.

config MARVELL_88Q2XXX_PHY
	tristate "Marvell 88Q2XXX PHY"
	depends on HWMON || HWMON=n
	help
	  Support for the Marvell 88Q2XXX 100/1000BASE-T1 Automotive Ethernet
	  PHYs.

config MARVELL_88X2222_PHY
	tristate "Marvell 88X2222 PHY"
	help
	  Support for the Marvell 88X2222 Dual-port Multi-speed Ethernet
	  Transceiver.

config MAXLINEAR_GPHY
	tristate "Maxlinear Ethernet PHYs"
	select POLYNOMIAL if HWMON
	depends on HWMON || HWMON=n
	help
	  Support for the Maxlinear GPY115, GPY211, GPY212, GPY215,
	  GPY241, GPY245 PHYs.

config MEDIATEK_GE_PHY
	tristate "MediaTek Gigabit Ethernet PHYs"
	help
	  Supports the MediaTek Gigabit Ethernet PHYs.

config MEDIATEK_GE_SOC_PHY
	tristate "MediaTek SoC Ethernet PHYs"
	depends on (ARM64 && ARCH_MEDIATEK) || COMPILE_TEST
	depends on NVMEM_MTK_EFUSE
	help
	  Supports MediaTek SoC built-in Gigabit Ethernet PHYs.

	  Include support for built-in Ethernet PHYs which are present in
	  the MT7981 and MT7988 SoCs. These PHYs need calibration data
	  present in the SoCs efuse and will dynamically calibrate VCM
	  (common-mode voltage) during startup.

config MICREL_PHY
	tristate "Micrel PHYs"
	depends on PTP_1588_CLOCK_OPTIONAL
	help
	  Supports the KSZ9021, VSC8201, KS8001 PHYs.

config MICROCHIP_T1S_PHY
	tristate "Microchip 10BASE-T1S Ethernet PHYs"
	help
	  Currently supports the LAN8670/1/2 Rev.B1 and LAN8650/1 Rev.B0 Internal
	  PHYs.

config MICROCHIP_PHY
	tristate "Microchip PHYs"
	help
	  Supports the LAN88XX PHYs.

config MICROCHIP_T1_PHY
	tristate "Microchip T1 PHYs"
	help
	  Supports the LAN87XX PHYs.

config MICROSEMI_PHY
	tristate "Microsemi PHYs"
	depends on MACSEC || MACSEC=n
	depends on PTP_1588_CLOCK_OPTIONAL || !NETWORK_PHY_TIMESTAMPING
	select CRYPTO_LIB_AES if MACSEC
	help
	  Currently supports VSC8514, VSC8530, VSC8531, VSC8540 and VSC8541 PHYs

config MOTORCOMM_PHY
	tristate "Motorcomm PHYs"
	help
	  Enables support for Motorcomm network PHYs.
	  Currently supports YT85xx Gigabit Ethernet PHYs.

config NATIONAL_PHY
	tristate "National Semiconductor PHYs"
	help
	  Currently supports the DP83865 PHY.

config NXP_CBTX_PHY
	tristate "NXP 100BASE-TX PHYs"
	help
	  Support the 100BASE-TX PHY integrated on the SJA1110 automotive
	  switch family.

config NXP_C45_TJA11XX_PHY
	tristate "NXP C45 TJA11XX PHYs"
	depends on PTP_1588_CLOCK_OPTIONAL
	depends on MACSEC || !MACSEC
	help
	  Enable support for NXP C45 TJA11XX PHYs.
	  Currently supports the TJA1103, TJA1104 and TJA1120 PHYs.

config NXP_TJA11XX_PHY
	tristate "NXP TJA11xx PHYs support"
	depends on HWMON
	help
	  Currently supports the NXP TJA1100 and TJA1101 PHY.

config NCN26000_PHY
	tristate "Onsemi 10BASE-T1S Ethernet PHY"
	help
	  Adds support for the onsemi 10BASE-T1S Ethernet PHY.
	  Currently supports the NCN26000 10BASE-T1S Industrial PHY
	  with MII interface.

source "drivers/net/phy/qcom/Kconfig"

config QSEMI_PHY
	tristate "Quality Semiconductor PHYs"
	help
	  Currently supports the qs6612

config REALTEK_PHY
	tristate "Realtek PHYs"
	help
	  Supports the Realtek 821x PHY.

config RENESAS_PHY
	tristate "Renesas PHYs"
	help
	  Supports the Renesas PHYs uPD60620 and uPD60620A.

config ROCKCHIP_PHY
	tristate "Rockchip Ethernet PHYs"
	help
	  Currently supports the integrated Ethernet PHY.

config SMSC_PHY
	tristate "SMSC PHYs"
	select CRC16
	help
	  Currently supports the LAN83C185, LAN8187 and LAN8700 PHYs

config STE10XP
	tristate "STMicroelectronics STe10Xp PHYs"
	help
	  This is the driver for the STe100p and STe101p PHYs.

config TERANETICS_PHY
	tristate "Teranetics PHYs"
	help
	  Currently supports the Teranetics TN2020

config DP83822_PHY
	tristate "Texas Instruments DP83822/825/826 PHYs"
	help
	  Supports the DP83822, DP83825I, DP83825CM, DP83825CS, DP83825S,
	  DP83826C and DP83826NC PHYs.

config DP83TC811_PHY
	tristate "Texas Instruments DP83TC811 PHY"
	help
	  Supports the DP83TC811 PHY.

config DP83848_PHY
	tristate "Texas Instruments DP83848 PHY"
	help
	  Supports the DP83848 PHY.

config DP83867_PHY
	tristate "Texas Instruments DP83867 Gigabit PHY"
	help
	  Currently supports the DP83867 PHY.

config DP83869_PHY
	tristate "Texas Instruments DP83869 Gigabit PHY"
	help
	  Currently supports the DP83869 PHY.  This PHY supports copper and
	  fiber connections.

config DP83TD510_PHY
	tristate "Texas Instruments DP83TD510 Ethernet 10Base-T1L PHY"
	help
	  Support for the DP83TD510 Ethernet 10Base-T1L PHY. This PHY supports
	  a 10M single pair Ethernet connection for up to 1000 meter cable.

config DP83TG720_PHY
	tristate "Texas Instruments DP83TG720 Ethernet 1000Base-T1 PHY"
	help
	  The DP83TG720S-Q1 is an automotive Ethernet physical layer
	  transceiver compliant with IEEE 802.3bp and Open Alliance
	  standards. It supports key functions necessary for
	  transmitting and receiving data over both unshielded and
	  shielded single twisted-pair cables. This device offers
	  flexible xMII interface options, including support for both
	  RGMII and SGMII MAC interfaces. It's suitable for applications
	  requiring high-speed data transmission in automotive
	  networking environments.

config VITESSE_PHY
	tristate "Vitesse PHYs"
	help
	  Currently supports the vsc8244

config XILINX_GMII2RGMII
	tristate "Xilinx GMII2RGMII converter driver"
	help
	  This driver support xilinx GMII to RGMII IP core it provides
	  the Reduced Gigabit Media Independent Interface(RGMII) between
	  Ethernet physical media devices and the Gigabit Ethernet controller.

endif # PHYLIB

config MICREL_KS8995MA
	tristate "Micrel KS8995MA 5-ports 10/100 managed Ethernet switch"
	depends on SPI