xref: /openbmc/linux/drivers/net/phy/Kconfig (revision 7d901a1e878a1cf8dd3ba7b4c057ad5eb7a40af0)
1ec8f24b7SThomas Gleixner# SPDX-License-Identifier: GPL-2.0-only
200db8189SAndy Fleming#
300db8189SAndy Fleming# PHY Layer Configuration
400db8189SAndy Fleming#
500db8189SAndy Fleming
69525ae83SRussell Kingconfig PHYLINK
79525ae83SRussell King	tristate
89525ae83SRussell King	depends on NETDEVICES
99525ae83SRussell King	select PHYLIB
109525ae83SRussell King	select SWPHY
119525ae83SRussell King	help
129525ae83SRussell King	  PHYlink models the link between the PHY and MAC, allowing fixed
139525ae83SRussell King	  configuration links, PHYs, and Serdes links with MAC level
149525ae83SRussell King	  autonegotiation modes.
159525ae83SRussell King
166073512cSJerome Brunetmenuconfig PHYLIB
179e8d438eSFlorian Fainelli	tristate "PHY Device support and infrastructure"
186073512cSJerome Brunet	depends on NETDEVICES
196073512cSJerome Brunet	select MDIO_DEVICE
201814cff2SBartosz Golaszewski	select MDIO_DEVRES
216073512cSJerome Brunet	help
226073512cSJerome Brunet	  Ethernet controllers are usually attached to PHY
236073512cSJerome Brunet	  devices.  This option provides infrastructure for
246073512cSJerome Brunet	  managing PHY devices.
256073512cSJerome Brunet
2690eff909SFlorian Fainelliif PHYLIB
2790eff909SFlorian Fainelli
2890eff909SFlorian Fainelliconfig SWPHY
2990eff909SFlorian Fainelli	bool
3090eff909SFlorian Fainelli
3190eff909SFlorian Fainelliconfig LED_TRIGGER_PHY
3290eff909SFlorian Fainelli	bool "Support LED triggers for tracking link state"
3390eff909SFlorian Fainelli	depends on LEDS_TRIGGERS
34a7f7f624SMasahiro Yamada	help
3590eff909SFlorian Fainelli	  Adds support for a set of LED trigger events per-PHY.  Link
3690eff909SFlorian Fainelli	  state change will trigger the events, for consumption by an
3790eff909SFlorian Fainelli	  LED class driver.  There are triggers for each link speed currently
383928ee64SMaciej S. Szmigiero	  supported by the PHY and also a one common "link" trigger as a
393928ee64SMaciej S. Szmigiero	  logical-or of all the link speed ones.
403928ee64SMaciej S. Szmigiero	  All these triggers are named according to the following pattern:
4190eff909SFlorian Fainelli	      <mii bus id>:<phy>:<speed>
4290eff909SFlorian Fainelli
4390eff909SFlorian Fainelli	  Where speed is in the form:
443928ee64SMaciej S. Szmigiero		<Speed in megabits>Mbps OR <Speed in gigabits>Gbps OR link
453928ee64SMaciej S. Szmigiero		for any speed known to the PHY.
4690eff909SFlorian Fainelli
4790eff909SFlorian Fainelli
480457eb26SAndrew Lunnconfig FIXED_PHY
490457eb26SAndrew Lunn	tristate "MDIO Bus/PHY emulation with fixed speed/link PHYs"
500457eb26SAndrew Lunn	depends on PHYLIB
510457eb26SAndrew Lunn	select SWPHY
520457eb26SAndrew Lunn	help
530457eb26SAndrew Lunn	  Adds the platform "fixed" MDIO Bus to cover the boards that use
540457eb26SAndrew Lunn	  PHYs that are not connected to the real MDIO bus.
550457eb26SAndrew Lunn
560457eb26SAndrew Lunn	  Currently tested with mpc866ads and mpc8349e-mitx.
57d75b4a22SAndrew Lunn
5873970055SRussell Kingconfig SFP
5973970055SRussell King	tristate "SFP cage support"
6073970055SRussell King	depends on I2C && PHYLINK
61b5293443SGuenter Roeck	depends on HWMON || HWMON=n
6273970055SRussell King	select MDIO_I2C
6373970055SRussell King
640457eb26SAndrew Lunncomment "MII PHY device drivers"
650457eb26SAndrew Lunn
660457eb26SAndrew Lunnconfig AMD_PHY
670457eb26SAndrew Lunn	tristate "AMD PHYs"
680457eb26SAndrew Lunn	help
690457eb26SAndrew Lunn	  Currently supports the am79c874
700457eb26SAndrew Lunn
710457eb26SAndrew Lunnconfig MESON_GXL_PHY
720457eb26SAndrew Lunn	tristate "Amlogic Meson GXL Internal PHY"
730457eb26SAndrew Lunn	depends on ARCH_MESON || COMPILE_TEST
740457eb26SAndrew Lunn	help
750457eb26SAndrew Lunn	  Currently has a driver for the Amlogic Meson GXL Internal PHY
760457eb26SAndrew Lunn
779c102981SAlexandru Ardeleanconfig ADIN_PHY
789c102981SAlexandru Ardelean	tristate "Analog Devices Industrial Ethernet PHYs"
799c102981SAlexandru Ardelean	help
809c102981SAlexandru Ardelean	  Adds support for the Analog Devices Industrial Ethernet PHYs.
819c102981SAlexandru Ardelean	  Currently supports the:
829c102981SAlexandru Ardelean	  - ADIN1200 - Robust,Industrial, Low Power 10/100 Ethernet PHY
839c102981SAlexandru Ardelean	  - ADIN1300 - Robust,Industrial, Low Latency 10/100/1000 Gigabit
849c102981SAlexandru Ardelean	    Ethernet PHY
859c102981SAlexandru Ardelean
86d75b4a22SAndrew Lunnconfig AQUANTIA_PHY
8797c84389SAndrew Lunn	tristate "Aquantia PHYs"
88a7f7f624SMasahiro Yamada	help
89d75b4a22SAndrew Lunn	  Currently supports the Aquantia AQ1202, AQ2104, AQR105, AQR405
90d75b4a22SAndrew Lunn
91a9520543SMichael Schmitzconfig AX88796B_PHY
9231dd83b9SMichael Schmitz	tristate "Asix PHYs"
9331dd83b9SMichael Schmitz	help
9431dd83b9SMichael Schmitz	  Currently supports the Asix Electronics PHY found in the X-Surf 100
9531dd83b9SMichael Schmitz	  AX88796B package.
9631dd83b9SMichael Schmitz
970457eb26SAndrew Lunnconfig BROADCOM_PHY
980457eb26SAndrew Lunn	tristate "Broadcom 54XX PHYs"
990457eb26SAndrew Lunn	select BCM_NET_PHYLIB
1000457eb26SAndrew Lunn	help
1010457eb26SAndrew Lunn	  Currently supports the BCM5411, BCM5421, BCM5461, BCM54616S, BCM5464,
1020457eb26SAndrew Lunn	  BCM5481, BCM54810 and BCM5482 PHYs.
1030457eb26SAndrew Lunn
1040457eb26SAndrew Lunnconfig BCM54140_PHY
1050457eb26SAndrew Lunn	tristate "Broadcom BCM54140 PHY"
1060457eb26SAndrew Lunn	depends on PHYLIB
1070457eb26SAndrew Lunn	depends on HWMON || HWMON=n
1080457eb26SAndrew Lunn	select BCM_NET_PHYLIB
1090457eb26SAndrew Lunn	help
1100457eb26SAndrew Lunn	  Support the Broadcom BCM54140 Quad SGMII/QSGMII PHY.
1110457eb26SAndrew Lunn
1120457eb26SAndrew Lunn	  This driver also supports the hardware monitoring of this PHY and
1130457eb26SAndrew Lunn	  exposes voltage and temperature sensors.
1140457eb26SAndrew Lunn
115d75b4a22SAndrew Lunnconfig BCM63XX_PHY
11697c84389SAndrew Lunn	tristate "Broadcom 63xx SOCs internal PHY"
11715d8daf7SAndrew Lunn	depends on BCM63XX || COMPILE_TEST
118d75b4a22SAndrew Lunn	select BCM_NET_PHYLIB
119a7f7f624SMasahiro Yamada	help
120d75b4a22SAndrew Lunn	  Currently supports the 6348 and 6358 PHYs.
121d75b4a22SAndrew Lunn
122d75b4a22SAndrew Lunnconfig BCM7XXX_PHY
12397c84389SAndrew Lunn	tristate "Broadcom 7xxx SOCs internal PHYs"
124d75b4a22SAndrew Lunn	select BCM_NET_PHYLIB
125a7f7f624SMasahiro Yamada	help
126d75b4a22SAndrew Lunn	  Currently supports the BCM7366, BCM7439, BCM7445, and
127d75b4a22SAndrew Lunn	  40nm and 65nm generation of BCM7xxx Set Top Box SoCs.
128d75b4a22SAndrew Lunn
1290457eb26SAndrew Lunnconfig BCM84881_PHY
1300457eb26SAndrew Lunn	tristate "Broadcom BCM84881 PHY"
1310457eb26SAndrew Lunn	depends on PHYLIB
1320457eb26SAndrew Lunn	help
1330457eb26SAndrew Lunn	  Support the Broadcom BCM84881 PHY.
1340457eb26SAndrew Lunn
135d75b4a22SAndrew Lunnconfig BCM87XX_PHY
13697c84389SAndrew Lunn	tristate "Broadcom BCM8706 and BCM8727 PHYs"
137d75b4a22SAndrew Lunn	help
138d75b4a22SAndrew Lunn	  Currently supports the BCM8706 and BCM8727 10G Ethernet PHYs.
139d75b4a22SAndrew Lunn
140d75b4a22SAndrew Lunnconfig BCM_CYGNUS_PHY
141a7a01ab3SFlorian Fainelli	tristate "Broadcom Cygnus/Omega SoC internal PHY"
14217cc9821SFlorian Fainelli	depends on ARCH_BCM_IPROC || COMPILE_TEST
143d75b4a22SAndrew Lunn	depends on MDIO_BCM_IPROC
144d75b4a22SAndrew Lunn	select BCM_NET_PHYLIB
145a7f7f624SMasahiro Yamada	help
146d75b4a22SAndrew Lunn	  This PHY driver is for the 1G internal PHYs of the Broadcom
14717cc9821SFlorian Fainelli	  Cygnus and Omega Family SoC.
148d75b4a22SAndrew Lunn
149d75b4a22SAndrew Lunn	  Currently supports internal PHY's used in the BCM11300,
150d75b4a22SAndrew Lunn	  BCM11320, BCM11350, BCM11360, BCM58300, BCM58302,
151d75b4a22SAndrew Lunn	  BCM58303 & BCM58305 Broadcom Cygnus SoCs.
152d75b4a22SAndrew Lunn
153d75b4a22SAndrew Lunnconfig BCM_NET_PHYLIB
154d75b4a22SAndrew Lunn	tristate
155d75b4a22SAndrew Lunn
156d75b4a22SAndrew Lunnconfig CICADA_PHY
15797c84389SAndrew Lunn	tristate "Cicada PHYs"
158a7f7f624SMasahiro Yamada	help
159d75b4a22SAndrew Lunn	  Currently supports the cis8204
160d75b4a22SAndrew Lunn
16115b9e533SBogdan Purcareataconfig CORTINA_PHY
16215b9e533SBogdan Purcareata	tristate "Cortina EDC CDR 10G Ethernet PHY"
163a7f7f624SMasahiro Yamada	help
16415b9e533SBogdan Purcareata	  Currently supports the CS4340 phy.
16515b9e533SBogdan Purcareata
166d75b4a22SAndrew Lunnconfig DAVICOM_PHY
16797c84389SAndrew Lunn	tristate "Davicom PHYs"
168a7f7f624SMasahiro Yamada	help
169d75b4a22SAndrew Lunn	  Currently supports dm9161e and dm9131
170d75b4a22SAndrew Lunn
171d75b4a22SAndrew Lunnconfig ICPLUS_PHY
17297c84389SAndrew Lunn	tristate "ICPlus PHYs"
173a7f7f624SMasahiro Yamada	help
174d75b4a22SAndrew Lunn	  Currently supports the IP175C and IP1001 PHYs.
175ddc24ae1SArun Parameswaran
1760457eb26SAndrew Lunnconfig LXT_PHY
1770457eb26SAndrew Lunn	tristate "Intel LXT PHYs"
1780457eb26SAndrew Lunn	help
1790457eb26SAndrew Lunn	  Currently supports the lxt970, lxt971
1800457eb26SAndrew Lunn
181112b558dSHauke Mehrtensconfig INTEL_XWAY_PHY
18297c84389SAndrew Lunn	tristate "Intel XWAY PHYs"
183a7f7f624SMasahiro Yamada	help
184112b558dSHauke Mehrtens	  Supports the Intel XWAY (former Lantiq) 11G and 22E PHYs.
185112b558dSHauke Mehrtens	  These PHYs are marked as standalone chips under the names
186112b558dSHauke Mehrtens	  PEF 7061, PEF 7071 and PEF 7072 or integrated into the Intel
187112b558dSHauke Mehrtens	  SoCs xRX200, xRX300, xRX330, xRX350 and xRX550.
188112b558dSHauke Mehrtens
189d75b4a22SAndrew Lunnconfig LSI_ET1011C_PHY
19097c84389SAndrew Lunn	tristate "LSI ET1011C PHY"
191a7f7f624SMasahiro Yamada	help
192d75b4a22SAndrew Lunn	  Supports the LSI ET1011C PHY.
1934960e4b1SDongpo Li
194d75b4a22SAndrew Lunnconfig MARVELL_PHY
1950457eb26SAndrew Lunn	tristate "Marvell Alaska PHYs"
196a7f7f624SMasahiro Yamada	help
1970457eb26SAndrew Lunn	  Currently has a driver for the 88E1XXX
198d75b4a22SAndrew Lunn
19920b2af32SRussell Kingconfig MARVELL_10G_PHY
20020b2af32SRussell King	tristate "Marvell Alaska 10Gbit PHYs"
201a7f7f624SMasahiro Yamada	help
20220b2af32SRussell King	  Support for the Marvell Alaska MV88X3310 and compatible PHYs.
20320b2af32SRussell King
2046e3bac3eSIvan Bornyakovconfig MARVELL_88X2222_PHY
2056e3bac3eSIvan Bornyakov	tristate "Marvell 88X2222 PHY"
2066e3bac3eSIvan Bornyakov	help
2076e3bac3eSIvan Bornyakov	  Support for the Marvell 88X2222 Dual-port Multi-speed Ethernet
2086e3bac3eSIvan Bornyakov	  Transceiver.
2096e3bac3eSIvan Bornyakov
210*7d901a1eSXu Liangconfig MAXLINEAR_GPHY
211*7d901a1eSXu Liang	tristate "Maxlinear Ethernet PHYs"
212*7d901a1eSXu Liang	help
213*7d901a1eSXu Liang	  Support for the Maxlinear GPY115, GPY211, GPY212, GPY215,
214*7d901a1eSXu Liang	  GPY241, GPY245 PHYs.
215*7d901a1eSXu Liang
216e40d2ccaSDENG Qingfangconfig MEDIATEK_GE_PHY
217e40d2ccaSDENG Qingfang	tristate "MediaTek Gigabit Ethernet PHYs"
218e40d2ccaSDENG Qingfang	help
219e40d2ccaSDENG Qingfang	  Supports the MediaTek Gigabit Ethernet PHYs.
220e40d2ccaSDENG Qingfang
221d75b4a22SAndrew Lunnconfig MICREL_PHY
22297c84389SAndrew Lunn	tristate "Micrel PHYs"
223a7f7f624SMasahiro Yamada	help
224d75b4a22SAndrew Lunn	  Supports the KSZ9021, VSC8201, KS8001 PHYs.
225d75b4a22SAndrew Lunn
226d75b4a22SAndrew Lunnconfig MICROCHIP_PHY
22797c84389SAndrew Lunn	tristate "Microchip PHYs"
22843b3cf66SIyappan Subramanian	help
229d75b4a22SAndrew Lunn	  Supports the LAN88XX PHYs.
23043b3cf66SIyappan Subramanian
2313e50d2daSNisar Sayedconfig MICROCHIP_T1_PHY
2323e50d2daSNisar Sayed	tristate "Microchip T1 PHYs"
233a7f7f624SMasahiro Yamada	help
2343e50d2daSNisar Sayed	  Supports the LAN87XX PHYs.
2353e50d2daSNisar Sayed
236d50736a8SRaju Lakkarajuconfig MICROSEMI_PHY
23797c84389SAndrew Lunn	tristate "Microsemi PHYs"
23828c5107aSAntoine Tenart	depends on MACSEC || MACSEC=n
2395a3235e5SArd Biesheuvel	select CRYPTO_LIB_AES if MACSEC
240a7f7f624SMasahiro Yamada	help
241e4f9ba64SKavya Sree Kotagiri	  Currently supports VSC8514, VSC8530, VSC8531, VSC8540 and VSC8541 PHYs
242d50736a8SRaju Lakkaraju
24348e8c6f1SPeter Geisconfig MOTORCOMM_PHY
24448e8c6f1SPeter Geis	tristate "Motorcomm PHYs"
24548e8c6f1SPeter Geis	help
24648e8c6f1SPeter Geis	  Enables support for Motorcomm network PHYs.
24748e8c6f1SPeter Geis	  Currently supports the YT8511 gigabit PHY.
24848e8c6f1SPeter Geis
249d75b4a22SAndrew Lunnconfig NATIONAL_PHY
25097c84389SAndrew Lunn	tristate "National Semiconductor PHYs"
251a7f7f624SMasahiro Yamada	help
252d75b4a22SAndrew Lunn	  Currently supports the DP83865 PHY.
253d75b4a22SAndrew Lunn
254b050f2f1SRadu Pirea (NXP OSS)config NXP_C45_TJA11XX_PHY
255b050f2f1SRadu Pirea (NXP OSS)	tristate "NXP C45 TJA11XX PHYs"
256b050f2f1SRadu Pirea (NXP OSS)	help
257b050f2f1SRadu Pirea (NXP OSS)	  Enable support for NXP C45 TJA11XX PHYs.
258b050f2f1SRadu Pirea (NXP OSS)	  Currently supports only the TJA1103 PHY.
259b050f2f1SRadu Pirea (NXP OSS)
260ddf6ddb0SMarek Vasutconfig NXP_TJA11XX_PHY
261ddf6ddb0SMarek Vasut	tristate "NXP TJA11xx PHYs support"
262ddf6ddb0SMarek Vasut	depends on HWMON
263a7f7f624SMasahiro Yamada	help
264ddf6ddb0SMarek Vasut	  Currently supports the NXP TJA1100 and TJA1101 PHY.
265ddf6ddb0SMarek Vasut
2664985dffcSMichael Walleconfig AT803X_PHY
267272833b9SAnsuel Smith	tristate "Qualcomm Atheros AR803X PHYs and QCA833x PHYs"
268dddb318bSMadalin Bucur	depends on REGULATOR
2694985dffcSMichael Walle	help
270272833b9SAnsuel Smith	  Currently supports the AR8030, AR8031, AR8033, AR8035 and internal
271272833b9SAnsuel Smith	  QCA8337(Internal qca8k PHY) model
2724985dffcSMichael Walle
273d75b4a22SAndrew Lunnconfig QSEMI_PHY
27497c84389SAndrew Lunn	tristate "Quality Semiconductor PHYs"
275a7f7f624SMasahiro Yamada	help
276d75b4a22SAndrew Lunn	  Currently supports the qs6612
277d75b4a22SAndrew Lunn
278d75b4a22SAndrew Lunnconfig REALTEK_PHY
27997c84389SAndrew Lunn	tristate "Realtek PHYs"
280a7f7f624SMasahiro Yamada	help
281d75b4a22SAndrew Lunn	  Supports the Realtek 821x PHY.
282d75b4a22SAndrew Lunn
283812b5ca7SBernd Edlingerconfig RENESAS_PHY
2840457eb26SAndrew Lunn	tristate "Renesas PHYs"
285a7f7f624SMasahiro Yamada	help
286812b5ca7SBernd Edlinger	  Supports the Renesas PHYs uPD60620 and uPD60620A.
287812b5ca7SBernd Edlinger
288baf6ee81SDavid Wuconfig ROCKCHIP_PHY
2890457eb26SAndrew Lunn	tristate "Rockchip Ethernet PHYs"
290a7f7f624SMasahiro Yamada	help
291baf6ee81SDavid Wu	  Currently supports the integrated Ethernet PHY.
292baf6ee81SDavid Wu
293d75b4a22SAndrew Lunnconfig SMSC_PHY
29497c84389SAndrew Lunn	tristate "SMSC PHYs"
295a7f7f624SMasahiro Yamada	help
296d75b4a22SAndrew Lunn	  Currently supports the LAN83C185, LAN8187 and LAN8700 PHYs
297d75b4a22SAndrew Lunn
298d75b4a22SAndrew Lunnconfig STE10XP
29997c84389SAndrew Lunn	tristate "STMicroelectronics STe10Xp PHYs"
300a7f7f624SMasahiro Yamada	help
301d75b4a22SAndrew Lunn	  This is the driver for the STe100p and STe101p PHYs.
302d75b4a22SAndrew Lunn
303d75b4a22SAndrew Lunnconfig TERANETICS_PHY
30497c84389SAndrew Lunn	tristate "Teranetics PHYs"
305a7f7f624SMasahiro Yamada	help
306d75b4a22SAndrew Lunn	  Currently supports the Teranetics TN2020
307d75b4a22SAndrew Lunn
3080457eb26SAndrew Lunnconfig DP83822_PHY
3090457eb26SAndrew Lunn	tristate "Texas Instruments DP83822/825/826 PHYs"
3100457eb26SAndrew Lunn	help
3110457eb26SAndrew Lunn	  Supports the DP83822, DP83825I, DP83825CM, DP83825CS, DP83825S,
3120457eb26SAndrew Lunn	  DP83826C and DP83826NC PHYs.
3130457eb26SAndrew Lunn
3140457eb26SAndrew Lunnconfig DP83TC811_PHY
3150457eb26SAndrew Lunn	tristate "Texas Instruments DP83TC811 PHY"
3160457eb26SAndrew Lunn	help
3170457eb26SAndrew Lunn	  Supports the DP83TC811 PHY.
3180457eb26SAndrew Lunn
3190457eb26SAndrew Lunnconfig DP83848_PHY
3200457eb26SAndrew Lunn	tristate "Texas Instruments DP83848 PHY"
3210457eb26SAndrew Lunn	help
3220457eb26SAndrew Lunn	  Supports the DP83848 PHY.
3230457eb26SAndrew Lunn
3240457eb26SAndrew Lunnconfig DP83867_PHY
3250457eb26SAndrew Lunn	tristate "Texas Instruments DP83867 Gigabit PHY"
3260457eb26SAndrew Lunn	help
3270457eb26SAndrew Lunn	  Currently supports the DP83867 PHY.
3280457eb26SAndrew Lunn
3290457eb26SAndrew Lunnconfig DP83869_PHY
3300457eb26SAndrew Lunn	tristate "Texas Instruments DP83869 Gigabit PHY"
3310457eb26SAndrew Lunn	help
3320457eb26SAndrew Lunn	  Currently supports the DP83869 PHY.  This PHY supports copper and
3330457eb26SAndrew Lunn	  fiber connections.
3340457eb26SAndrew Lunn
335d75b4a22SAndrew Lunnconfig VITESSE_PHY
33697c84389SAndrew Lunn	tristate "Vitesse PHYs"
337a7f7f624SMasahiro Yamada	help
338d75b4a22SAndrew Lunn	  Currently supports the vsc8244
339d75b4a22SAndrew Lunn
340f411a616SAppana Durga Kedareswara Raoconfig XILINX_GMII2RGMII
341f411a616SAppana Durga Kedareswara Rao	tristate "Xilinx GMII2RGMII converter driver"
342a7f7f624SMasahiro Yamada	help
343f411a616SAppana Durga Kedareswara Rao	  This driver support xilinx GMII to RGMII IP core it provides
344f411a616SAppana Durga Kedareswara Rao	  the Reduced Gigabit Media Independent Interface(RGMII) between
345f411a616SAppana Durga Kedareswara Rao	  Ethernet physical media devices and the Gigabit Ethernet controller.
346f411a616SAppana Durga Kedareswara Rao
34753f99941SJan Engelhardtendif # PHYLIB
348a8e510f6SFrederic LAMBERT
349a8e510f6SFrederic LAMBERTconfig MICREL_KS8995MA
350a8e510f6SFrederic LAMBERT	tristate "Micrel KS8995MA 5-ports 10/100 managed Ethernet switch"
351a8e510f6SFrederic LAMBERT	depends on SPI
352