1 # SPDX-License-Identifier: GPL-2.0-only
3 # PHY Layer Configuration
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.
17 tristate "PHY Device support and infrastructure"
22 Ethernet controllers are usually attached to PHY
23 devices. This option provides infrastructure for
31 config LED_TRIGGER_PHY
32 bool "Support LED triggers for tracking link state"
33 depends on LEDS_TRIGGERS
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>
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.
49 depends on LEDS_CLASS=y || LEDS_CLASS=PHYLIB
51 When LED class support is enabled, phylib can automatically
52 probe LED setting from device tree.
55 tristate "MDIO Bus/PHY emulation with fixed speed/link PHYs"
58 Adds the platform "fixed" MDIO Bus to cover the boards that use
59 PHYs that are not connected to the real MDIO bus.
61 Currently tested with mpc866ads and mpc8349e-mitx.
63 config RUST_PHYLIB_ABSTRACTIONS
64 bool "Rust PHYLIB abstractions support"
68 Adds support needed for PHY drivers written in Rust. It provides
69 a wrapper around the C phylib core.
72 tristate "SFP cage support"
73 depends on I2C && PHYLINK
74 depends on HWMON || HWMON=n
77 comment "MII PHY device drivers"
80 tristate "AMD and Altima PHYs"
82 Currently supports the AMD am79c874 and Altima AC101L.
85 tristate "Amlogic Meson GXL Internal PHY"
86 depends on ARCH_MESON || COMPILE_TEST
89 Currently has a driver for the Amlogic Meson GXL Internal PHY
92 tristate "Analog Devices Industrial Ethernet PHYs"
94 Adds support for the Analog Devices Industrial Ethernet PHYs.
95 Currently supports the:
96 - ADIN1200 - Robust,Industrial, Low Power 10/100 Ethernet PHY
97 - ADIN1300 - Robust,Industrial, Low Latency 10/100/1000 Gigabit
101 tristate "Analog Devices Industrial Ethernet T1L PHYs"
103 Adds support for the Analog Devices Industrial T1L Ethernet PHYs.
104 Currently supports the:
105 - ADIN1100 - Robust,Industrial, Low Power 10BASE-T1L Ethernet PHY
107 source "drivers/net/phy/aquantia/Kconfig"
112 Currently supports the Asix Electronics PHY found in the X-Surf 100
115 config AX88796B_RUST_PHY
116 bool "Rust reference driver for Asix PHYs"
117 depends on RUST_PHYLIB_ABSTRACTIONS && AX88796B_PHY
119 Uses the Rust reference driver for Asix PHYs (ax88796b_rust.ko).
120 The features are equivalent. It supports the Asix Electronics PHY
121 found in the X-Surf 100 AX88796B package.
124 tristate "Broadcom 54XX PHYs"
125 select BCM_NET_PHYLIB
126 select BCM_NET_PHYPTP if NETWORK_PHY_TIMESTAMPING
127 depends on PTP_1588_CLOCK_OPTIONAL
129 Currently supports the BCM5411, BCM5421, BCM5461, BCM54616S, BCM5464,
130 BCM5481, BCM54810 and BCM5482 PHYs.
133 tristate "Broadcom BCM54140 PHY"
134 depends on HWMON || HWMON=n
135 select BCM_NET_PHYLIB
137 Support the Broadcom BCM54140 Quad SGMII/QSGMII PHY.
139 This driver also supports the hardware monitoring of this PHY and
140 exposes voltage and temperature sensors.
143 tristate "Broadcom 63xx SOCs internal PHY"
144 depends on BCM63XX || COMPILE_TEST
145 select BCM_NET_PHYLIB
147 Currently supports the 6348 and 6358 PHYs.
150 tristate "Broadcom 7xxx SOCs internal PHYs"
151 select BCM_NET_PHYLIB
153 Currently supports the BCM7366, BCM7439, BCM7445, and
154 40nm and 65nm generation of BCM7xxx Set Top Box SoCs.
157 tristate "Broadcom BCM84881 PHY"
159 Support the Broadcom BCM84881 PHY.
162 tristate "Broadcom BCM8706 and BCM8727 PHYs"
164 Currently supports the BCM8706 and BCM8727 10G Ethernet PHYs.
166 config BCM_CYGNUS_PHY
167 tristate "Broadcom Cygnus/Omega SoC internal PHY"
168 depends on ARCH_BCM_IPROC || COMPILE_TEST
169 depends on MDIO_BCM_IPROC
170 select BCM_NET_PHYLIB
172 This PHY driver is for the 1G internal PHYs of the Broadcom
173 Cygnus and Omega Family SoC.
175 Currently supports internal PHY's used in the BCM11300,
176 BCM11320, BCM11350, BCM11360, BCM58300, BCM58302,
177 BCM58303 & BCM58305 Broadcom Cygnus SoCs.
179 config BCM_NET_PHYLIB
182 config BCM_NET_PHYPTP
186 tristate "Cicada PHYs"
188 Currently supports the cis8204
191 tristate "Cortina EDC CDR 10G Ethernet PHY"
193 Currently supports the CS4340 phy.
196 tristate "Davicom PHYs"
198 Currently supports dm9161e and dm9131
201 tristate "ICPlus PHYs"
203 Currently supports the IP175C and IP1001 PHYs.
206 tristate "Intel LXT PHYs"
208 Currently supports the lxt970, lxt971
210 config INTEL_XWAY_PHY
211 tristate "Intel XWAY PHYs"
213 Supports the Intel XWAY (former Lantiq) 11G and 22E PHYs.
214 These PHYs are marked as standalone chips under the names
215 PEF 7061, PEF 7071 and PEF 7072 or integrated into the Intel
216 SoCs xRX200, xRX300, xRX330, xRX350 and xRX550.
218 config LSI_ET1011C_PHY
219 tristate "LSI ET1011C PHY"
221 Supports the LSI ET1011C PHY.
224 tristate "Marvell Alaska PHYs"
226 Currently has a driver for the 88E1XXX
228 config MARVELL_10G_PHY
229 tristate "Marvell Alaska 10Gbit PHYs"
231 Support for the Marvell Alaska MV88X3310 and compatible PHYs.
233 config MARVELL_88Q2XXX_PHY
234 tristate "Marvell 88Q2XXX PHY"
235 depends on HWMON || HWMON=n
237 Support for the Marvell 88Q2XXX 100/1000BASE-T1 Automotive Ethernet
240 config MARVELL_88X2222_PHY
241 tristate "Marvell 88X2222 PHY"
243 Support for the Marvell 88X2222 Dual-port Multi-speed Ethernet
246 config MAXLINEAR_GPHY
247 tristate "Maxlinear Ethernet PHYs"
248 select POLYNOMIAL if HWMON
249 depends on HWMON || HWMON=n
251 Support for the Maxlinear GPY115, GPY211, GPY212, GPY215,
254 config MEDIATEK_GE_PHY
255 tristate "MediaTek Gigabit Ethernet PHYs"
257 Supports the MediaTek Gigabit Ethernet PHYs.
259 config MEDIATEK_GE_SOC_PHY
260 tristate "MediaTek SoC Ethernet PHYs"
261 depends on (ARM64 && ARCH_MEDIATEK) || COMPILE_TEST
262 depends on NVMEM_MTK_EFUSE
264 Supports MediaTek SoC built-in Gigabit Ethernet PHYs.
266 Include support for built-in Ethernet PHYs which are present in
267 the MT7981 and MT7988 SoCs. These PHYs need calibration data
268 present in the SoCs efuse and will dynamically calibrate VCM
269 (common-mode voltage) during startup.
272 tristate "Micrel PHYs"
273 depends on PTP_1588_CLOCK_OPTIONAL
275 Supports the KSZ9021, VSC8201, KS8001 PHYs.
277 config MICROCHIP_T1S_PHY
278 tristate "Microchip 10BASE-T1S Ethernet PHYs"
280 Currently supports the LAN8670/1/2 Rev.B1 and LAN8650/1 Rev.B0 Internal
284 tristate "Microchip PHYs"
286 Supports the LAN88XX PHYs.
288 config MICROCHIP_T1_PHY
289 tristate "Microchip T1 PHYs"
291 Supports the LAN87XX PHYs.
294 tristate "Microsemi PHYs"
295 depends on MACSEC || MACSEC=n
296 depends on PTP_1588_CLOCK_OPTIONAL || !NETWORK_PHY_TIMESTAMPING
297 select CRYPTO_LIB_AES if MACSEC
299 Currently supports VSC8514, VSC8530, VSC8531, VSC8540 and VSC8541 PHYs
302 tristate "Motorcomm PHYs"
304 Enables support for Motorcomm network PHYs.
305 Currently supports YT85xx Gigabit Ethernet PHYs.
308 tristate "National Semiconductor PHYs"
310 Currently supports the DP83865 PHY.
313 tristate "NXP 100BASE-TX PHYs"
315 Support the 100BASE-TX PHY integrated on the SJA1110 automotive
318 config NXP_C45_TJA11XX_PHY
319 tristate "NXP C45 TJA11XX PHYs"
320 depends on PTP_1588_CLOCK_OPTIONAL
321 depends on MACSEC || !MACSEC
323 Enable support for NXP C45 TJA11XX PHYs.
324 Currently supports the TJA1103, TJA1104 and TJA1120 PHYs.
326 config NXP_TJA11XX_PHY
327 tristate "NXP TJA11xx PHYs support"
330 Currently supports the NXP TJA1100 and TJA1101 PHY.
333 tristate "Onsemi 10BASE-T1S Ethernet PHY"
335 Adds support for the onsemi 10BASE-T1S Ethernet PHY.
336 Currently supports the NCN26000 10BASE-T1S Industrial PHY
339 source "drivers/net/phy/qcom/Kconfig"
342 tristate "Quality Semiconductor PHYs"
344 Currently supports the qs6612
347 tristate "Realtek PHYs"
349 Supports the Realtek 821x PHY.
352 tristate "Renesas PHYs"
354 Supports the Renesas PHYs uPD60620 and uPD60620A.
357 tristate "Rockchip Ethernet PHYs"
359 Currently supports the integrated Ethernet PHY.
365 Currently supports the LAN83C185, LAN8187 and LAN8700 PHYs
368 tristate "STMicroelectronics STe10Xp PHYs"
370 This is the driver for the STe100p and STe101p PHYs.
372 config TERANETICS_PHY
373 tristate "Teranetics PHYs"
375 Currently supports the Teranetics TN2020
378 tristate "Texas Instruments DP83822/825/826 PHYs"
380 Supports the DP83822, DP83825I, DP83825CM, DP83825CS, DP83825S,
381 DP83826C and DP83826NC PHYs.
384 tristate "Texas Instruments DP83TC811 PHY"
386 Supports the DP83TC811 PHY.
389 tristate "Texas Instruments DP83848 PHY"
391 Supports the DP83848 PHY.
394 tristate "Texas Instruments DP83867 Gigabit PHY"
396 Currently supports the DP83867 PHY.
399 tristate "Texas Instruments DP83869 Gigabit PHY"
401 Currently supports the DP83869 PHY. This PHY supports copper and
405 tristate "Texas Instruments DP83TD510 Ethernet 10Base-T1L PHY"
407 Support for the DP83TD510 Ethernet 10Base-T1L PHY. This PHY supports
408 a 10M single pair Ethernet connection for up to 1000 meter cable.
411 tristate "Texas Instruments DP83TG720 Ethernet 1000Base-T1 PHY"
413 The DP83TG720S-Q1 is an automotive Ethernet physical layer
414 transceiver compliant with IEEE 802.3bp and Open Alliance
415 standards. It supports key functions necessary for
416 transmitting and receiving data over both unshielded and
417 shielded single twisted-pair cables. This device offers
418 flexible xMII interface options, including support for both
419 RGMII and SGMII MAC interfaces. It's suitable for applications
420 requiring high-speed data transmission in automotive
421 networking environments.
424 tristate "Vitesse PHYs"
426 Currently supports the vsc8244
428 config XILINX_GMII2RGMII
429 tristate "Xilinx GMII2RGMII converter driver"
431 This driver support xilinx GMII to RGMII IP core it provides
432 the Reduced Gigabit Media Independent Interface(RGMII) between
433 Ethernet physical media devices and the Gigabit Ethernet controller.
437 config MICREL_KS8995MA
438 tristate "Micrel KS8995MA 5-ports 10/100 managed Ethernet switch"