xref: /openbmc/linux/drivers/net/phy/Kconfig (revision 0457eb26861f608f2ebb6f4b177d56a793340f26)
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
48*0457eb26SAndrew Lunnconfig FIXED_PHY
49*0457eb26SAndrew Lunn	tristate "MDIO Bus/PHY emulation with fixed speed/link PHYs"
50*0457eb26SAndrew Lunn	depends on PHYLIB
51*0457eb26SAndrew Lunn	select SWPHY
52*0457eb26SAndrew Lunn	help
53*0457eb26SAndrew Lunn	  Adds the platform "fixed" MDIO Bus to cover the boards that use
54*0457eb26SAndrew Lunn	  PHYs that are not connected to the real MDIO bus.
55*0457eb26SAndrew Lunn
56*0457eb26SAndrew 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
64*0457eb26SAndrew Lunncomment "MII PHY device drivers"
65*0457eb26SAndrew Lunn
66*0457eb26SAndrew Lunnconfig AMD_PHY
67*0457eb26SAndrew Lunn	tristate "AMD PHYs"
68*0457eb26SAndrew Lunn	help
69*0457eb26SAndrew Lunn	  Currently supports the am79c874
70*0457eb26SAndrew Lunn
71*0457eb26SAndrew Lunnconfig MESON_GXL_PHY
72*0457eb26SAndrew Lunn	tristate "Amlogic Meson GXL Internal PHY"
73*0457eb26SAndrew Lunn	depends on ARCH_MESON || COMPILE_TEST
74*0457eb26SAndrew Lunn	help
75*0457eb26SAndrew Lunn	  Currently has a driver for the Amlogic Meson GXL Internal PHY
76*0457eb26SAndrew 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
97*0457eb26SAndrew Lunnconfig BROADCOM_PHY
98*0457eb26SAndrew Lunn	tristate "Broadcom 54XX PHYs"
99*0457eb26SAndrew Lunn	select BCM_NET_PHYLIB
100*0457eb26SAndrew Lunn	help
101*0457eb26SAndrew Lunn	  Currently supports the BCM5411, BCM5421, BCM5461, BCM54616S, BCM5464,
102*0457eb26SAndrew Lunn	  BCM5481, BCM54810 and BCM5482 PHYs.
103*0457eb26SAndrew Lunn
104*0457eb26SAndrew Lunnconfig BCM54140_PHY
105*0457eb26SAndrew Lunn	tristate "Broadcom BCM54140 PHY"
106*0457eb26SAndrew Lunn	depends on PHYLIB
107*0457eb26SAndrew Lunn	depends on HWMON || HWMON=n
108*0457eb26SAndrew Lunn	select BCM_NET_PHYLIB
109*0457eb26SAndrew Lunn	help
110*0457eb26SAndrew Lunn	  Support the Broadcom BCM54140 Quad SGMII/QSGMII PHY.
111*0457eb26SAndrew Lunn
112*0457eb26SAndrew Lunn	  This driver also supports the hardware monitoring of this PHY and
113*0457eb26SAndrew Lunn	  exposes voltage and temperature sensors.
114*0457eb26SAndrew 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
129*0457eb26SAndrew Lunnconfig BCM84881_PHY
130*0457eb26SAndrew Lunn	tristate "Broadcom BCM84881 PHY"
131*0457eb26SAndrew Lunn	depends on PHYLIB
132*0457eb26SAndrew Lunn	help
133*0457eb26SAndrew Lunn	  Support the Broadcom BCM84881 PHY.
134*0457eb26SAndrew 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
176*0457eb26SAndrew Lunnconfig LXT_PHY
177*0457eb26SAndrew Lunn	tristate "Intel LXT PHYs"
178*0457eb26SAndrew Lunn	help
179*0457eb26SAndrew Lunn	  Currently supports the lxt970, lxt971
180*0457eb26SAndrew 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
195*0457eb26SAndrew Lunn	tristate "Marvell Alaska PHYs"
196a7f7f624SMasahiro Yamada	help
197*0457eb26SAndrew 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
204d75b4a22SAndrew Lunnconfig MICREL_PHY
20597c84389SAndrew Lunn	tristate "Micrel PHYs"
206a7f7f624SMasahiro Yamada	help
207d75b4a22SAndrew Lunn	  Supports the KSZ9021, VSC8201, KS8001 PHYs.
208d75b4a22SAndrew Lunn
209d75b4a22SAndrew Lunnconfig MICROCHIP_PHY
21097c84389SAndrew Lunn	tristate "Microchip PHYs"
21143b3cf66SIyappan Subramanian	help
212d75b4a22SAndrew Lunn	  Supports the LAN88XX PHYs.
21343b3cf66SIyappan Subramanian
2143e50d2daSNisar Sayedconfig MICROCHIP_T1_PHY
2153e50d2daSNisar Sayed	tristate "Microchip T1 PHYs"
216a7f7f624SMasahiro Yamada	help
2173e50d2daSNisar Sayed	  Supports the LAN87XX PHYs.
2183e50d2daSNisar Sayed
219d50736a8SRaju Lakkarajuconfig MICROSEMI_PHY
22097c84389SAndrew Lunn	tristate "Microsemi PHYs"
22128c5107aSAntoine Tenart	depends on MACSEC || MACSEC=n
2225a3235e5SArd Biesheuvel	select CRYPTO_LIB_AES if MACSEC
223a7f7f624SMasahiro Yamada	help
224e4f9ba64SKavya Sree Kotagiri	  Currently supports VSC8514, VSC8530, VSC8531, VSC8540 and VSC8541 PHYs
225d50736a8SRaju Lakkaraju
226d75b4a22SAndrew Lunnconfig NATIONAL_PHY
22797c84389SAndrew Lunn	tristate "National Semiconductor PHYs"
228a7f7f624SMasahiro Yamada	help
229d75b4a22SAndrew Lunn	  Currently supports the DP83865 PHY.
230d75b4a22SAndrew Lunn
231ddf6ddb0SMarek Vasutconfig NXP_TJA11XX_PHY
232ddf6ddb0SMarek Vasut	tristate "NXP TJA11xx PHYs support"
233ddf6ddb0SMarek Vasut	depends on HWMON
234a7f7f624SMasahiro Yamada	help
235ddf6ddb0SMarek Vasut	  Currently supports the NXP TJA1100 and TJA1101 PHY.
236ddf6ddb0SMarek Vasut
2374985dffcSMichael Walleconfig AT803X_PHY
2384985dffcSMichael Walle	tristate "Qualcomm Atheros AR803X PHYs"
239dddb318bSMadalin Bucur	depends on REGULATOR
2404985dffcSMichael Walle	help
241428061f7SMichael Walle	  Currently supports the AR8030, AR8031, AR8033 and AR8035 model
2424985dffcSMichael Walle
243d75b4a22SAndrew Lunnconfig QSEMI_PHY
24497c84389SAndrew Lunn	tristate "Quality Semiconductor PHYs"
245a7f7f624SMasahiro Yamada	help
246d75b4a22SAndrew Lunn	  Currently supports the qs6612
247d75b4a22SAndrew Lunn
248d75b4a22SAndrew Lunnconfig REALTEK_PHY
24997c84389SAndrew Lunn	tristate "Realtek PHYs"
250a7f7f624SMasahiro Yamada	help
251d75b4a22SAndrew Lunn	  Supports the Realtek 821x PHY.
252d75b4a22SAndrew Lunn
253812b5ca7SBernd Edlingerconfig RENESAS_PHY
254*0457eb26SAndrew Lunn	tristate "Renesas PHYs"
255a7f7f624SMasahiro Yamada	help
256812b5ca7SBernd Edlinger	  Supports the Renesas PHYs uPD60620 and uPD60620A.
257812b5ca7SBernd Edlinger
258baf6ee81SDavid Wuconfig ROCKCHIP_PHY
259*0457eb26SAndrew Lunn	tristate "Rockchip Ethernet PHYs"
260a7f7f624SMasahiro Yamada	help
261baf6ee81SDavid Wu	  Currently supports the integrated Ethernet PHY.
262baf6ee81SDavid Wu
263d75b4a22SAndrew Lunnconfig SMSC_PHY
26497c84389SAndrew Lunn	tristate "SMSC PHYs"
265a7f7f624SMasahiro Yamada	help
266d75b4a22SAndrew Lunn	  Currently supports the LAN83C185, LAN8187 and LAN8700 PHYs
267d75b4a22SAndrew Lunn
268d75b4a22SAndrew Lunnconfig STE10XP
26997c84389SAndrew Lunn	tristate "STMicroelectronics STe10Xp PHYs"
270a7f7f624SMasahiro Yamada	help
271d75b4a22SAndrew Lunn	  This is the driver for the STe100p and STe101p PHYs.
272d75b4a22SAndrew Lunn
273d75b4a22SAndrew Lunnconfig TERANETICS_PHY
27497c84389SAndrew Lunn	tristate "Teranetics PHYs"
275a7f7f624SMasahiro Yamada	help
276d75b4a22SAndrew Lunn	  Currently supports the Teranetics TN2020
277d75b4a22SAndrew Lunn
278*0457eb26SAndrew Lunnconfig DP83822_PHY
279*0457eb26SAndrew Lunn	tristate "Texas Instruments DP83822/825/826 PHYs"
280*0457eb26SAndrew Lunn	help
281*0457eb26SAndrew Lunn	  Supports the DP83822, DP83825I, DP83825CM, DP83825CS, DP83825S,
282*0457eb26SAndrew Lunn	  DP83826C and DP83826NC PHYs.
283*0457eb26SAndrew Lunn
284*0457eb26SAndrew Lunnconfig DP83TC811_PHY
285*0457eb26SAndrew Lunn	tristate "Texas Instruments DP83TC811 PHY"
286*0457eb26SAndrew Lunn	help
287*0457eb26SAndrew Lunn	  Supports the DP83TC811 PHY.
288*0457eb26SAndrew Lunn
289*0457eb26SAndrew Lunnconfig DP83848_PHY
290*0457eb26SAndrew Lunn	tristate "Texas Instruments DP83848 PHY"
291*0457eb26SAndrew Lunn	help
292*0457eb26SAndrew Lunn	  Supports the DP83848 PHY.
293*0457eb26SAndrew Lunn
294*0457eb26SAndrew Lunnconfig DP83867_PHY
295*0457eb26SAndrew Lunn	tristate "Texas Instruments DP83867 Gigabit PHY"
296*0457eb26SAndrew Lunn	help
297*0457eb26SAndrew Lunn	  Currently supports the DP83867 PHY.
298*0457eb26SAndrew Lunn
299*0457eb26SAndrew Lunnconfig DP83869_PHY
300*0457eb26SAndrew Lunn	tristate "Texas Instruments DP83869 Gigabit PHY"
301*0457eb26SAndrew Lunn	help
302*0457eb26SAndrew Lunn	  Currently supports the DP83869 PHY.  This PHY supports copper and
303*0457eb26SAndrew Lunn	  fiber connections.
304*0457eb26SAndrew Lunn
305d75b4a22SAndrew Lunnconfig VITESSE_PHY
30697c84389SAndrew Lunn	tristate "Vitesse PHYs"
307a7f7f624SMasahiro Yamada	help
308d75b4a22SAndrew Lunn	  Currently supports the vsc8244
309d75b4a22SAndrew Lunn
310f411a616SAppana Durga Kedareswara Raoconfig XILINX_GMII2RGMII
311f411a616SAppana Durga Kedareswara Rao	tristate "Xilinx GMII2RGMII converter driver"
312a7f7f624SMasahiro Yamada	help
313f411a616SAppana Durga Kedareswara Rao	  This driver support xilinx GMII to RGMII IP core it provides
314f411a616SAppana Durga Kedareswara Rao	  the Reduced Gigabit Media Independent Interface(RGMII) between
315f411a616SAppana Durga Kedareswara Rao	  Ethernet physical media devices and the Gigabit Ethernet controller.
316f411a616SAppana Durga Kedareswara Rao
31753f99941SJan Engelhardtendif # PHYLIB
318a8e510f6SFrederic LAMBERT
319a8e510f6SFrederic LAMBERTconfig MICREL_KS8995MA
320a8e510f6SFrederic LAMBERT	tristate "Micrel KS8995MA 5-ports 10/100 managed Ethernet switch"
321a8e510f6SFrederic LAMBERT	depends on SPI
322