xref: /openbmc/u-boot/drivers/net/phy/Kconfig (revision d397f7c45b0b87a7e1083c57a320c559e7848268)
1af2cbfd6SAlex
2af2cbfd6SAlexconfig BITBANGMII
3af2cbfd6SAlex	bool "Bit-banged ethernet MII management channel support"
4af2cbfd6SAlex
5af2cbfd6SAlexconfig MV88E6352_SWITCH
6af2cbfd6SAlex	bool "Marvell 88E6352 switch support"
7af2cbfd6SAlex
8af2cbfd6SAlexmenuconfig PHYLIB
9af2cbfd6SAlex	bool "Ethernet PHY (physical media interface) support"
10af2cbfd6SAlex	help
11af2cbfd6SAlex	  Enable Ethernet PHY (physical media interface) support.
12af2cbfd6SAlex
13af2cbfd6SAlexif PHYLIB
14af2cbfd6SAlex
15af2cbfd6SAlexconfig MV88E61XX_SWITCH
16af2cbfd6SAlex	bool "Marvel MV88E61xx Ethernet switch PHY support."
17af2cbfd6SAlex
18b4f4b0f5STim Harveyif MV88E61XX_SWITCH
19b4f4b0f5STim Harvey
20b4f4b0f5STim Harveyconfig MV88E61XX_CPU_PORT
21b4f4b0f5STim Harvey	int "CPU Port"
22b4f4b0f5STim Harvey
23b4f4b0f5STim Harveyconfig MV88E61XX_PHY_PORTS
24b4f4b0f5STim Harvey	hex "Bitmask of PHY Ports"
25b4f4b0f5STim Harvey
26b4f4b0f5STim Harveyconfig MV88E61XX_FIXED_PORTS
27b4f4b0f5STim Harvey	hex "Bitmask of PHYless serdes Ports"
28b4f4b0f5STim Harvey
29b4f4b0f5STim Harveyendif # MV88E61XX_SWITCH
30b4f4b0f5STim Harvey
31af2cbfd6SAlexconfig PHYLIB_10G
32af2cbfd6SAlex	bool "Generic 10G PHY support"
33af2cbfd6SAlex
34af2cbfd6SAlexconfig PHY_AQUANTIA
35af2cbfd6SAlex	bool "Aquantia Ethernet PHYs support"
36af2cbfd6SAlex
37af2cbfd6SAlexconfig PHY_ATHEROS
38af2cbfd6SAlex	bool "Atheros Ethernet PHYs support"
39af2cbfd6SAlex
40af2cbfd6SAlexconfig PHY_BROADCOM
41af2cbfd6SAlex	bool "Broadcom Ethernet PHYs support"
42af2cbfd6SAlex
43af2cbfd6SAlexconfig PHY_CORTINA
44af2cbfd6SAlex	bool "Cortina Ethernet PHYs support"
45af2cbfd6SAlex
46af2cbfd6SAlexconfig PHY_DAVICOM
47af2cbfd6SAlex	bool "Davicom Ethernet PHYs support"
48af2cbfd6SAlex
49af2cbfd6SAlexconfig PHY_ET1011C
50af2cbfd6SAlex	bool "LSI TruePHY ET1011C support"
51af2cbfd6SAlex
52af2cbfd6SAlexconfig PHY_LXT
53af2cbfd6SAlex	bool "LXT971 Ethernet PHY support"
54af2cbfd6SAlex
55af2cbfd6SAlexconfig PHY_MARVELL
56af2cbfd6SAlex	bool "Marvell Ethernet PHYs support"
57af2cbfd6SAlex
58af2cbfd6SAlexconfig PHY_MICREL
59af2cbfd6SAlex	bool "Micrel Ethernet PHYs support"
60449ea2cdSPhilipp Tomsich	help
61449ea2cdSPhilipp Tomsich	  Enable support for the GbE PHYs manufactured by Micrel (now
62449ea2cdSPhilipp Tomsich	  a part of Microchip). This includes drivers for the KSZ804,
63449ea2cdSPhilipp Tomsich	  KSZ8031, KSZ8051, KSZ8081, KSZ8895, KSZ886x, KSZ8721
64449ea2cdSPhilipp Tomsich	  either/or KSZ9021 (see the "Micrel KSZ9021 family support"
65449ea2cdSPhilipp Tomsich	  config option for details), and KSZ9031 (if configured).
66449ea2cdSPhilipp Tomsich
67449ea2cdSPhilipp Tomsichif PHY_MICREL
68449ea2cdSPhilipp Tomsich
69449ea2cdSPhilipp Tomsichconfig PHY_MICREL_KSZ9021
70449ea2cdSPhilipp Tomsich	bool "Micrel KSZ9021 family support"
71449ea2cdSPhilipp Tomsich	select PHY_GIGE
72*d397f7c4SAlexandru Gagniuc	select PHY_MICREL_KSZ90X1
73449ea2cdSPhilipp Tomsich	help
74449ea2cdSPhilipp Tomsich	  Enable support for the Micrel KSZ9021 GbE PHY family.  If
75449ea2cdSPhilipp Tomsich	  enabled, the extended register read/write for KSZ9021 PHYs
76449ea2cdSPhilipp Tomsich	  is supported through the 'mdio' command and any RGMII signal
77449ea2cdSPhilipp Tomsich	  delays configured in the device tree will be applied to the
78449ea2cdSPhilipp Tomsich	  PHY during initialisation.
79449ea2cdSPhilipp Tomsich
80449ea2cdSPhilipp Tomsich	  Note that the KSZ9021 uses the same part number os the
81449ea2cdSPhilipp Tomsich	  KSZ8921BL, so enabling this option disables support for the
82449ea2cdSPhilipp Tomsich	  KSZ8721BL.
83449ea2cdSPhilipp Tomsich
84*d397f7c4SAlexandru Gagniuc	  Deprecated. Use PHY_MICREL_KSZ90X1 instead.
85*d397f7c4SAlexandru Gagniuc
86449ea2cdSPhilipp Tomsichconfig PHY_MICREL_KSZ9031
87449ea2cdSPhilipp Tomsich	bool "Micrel KSZ9031 family support"
88449ea2cdSPhilipp Tomsich	select PHY_GIGE
89*d397f7c4SAlexandru Gagniuc	select PHY_MICREL_KSZ90X1
90449ea2cdSPhilipp Tomsich	help
91449ea2cdSPhilipp Tomsich	  Enable support for the Micrel KSZ9031 GbE PHY family.  If
92449ea2cdSPhilipp Tomsich	  enabled, the extended register read/write for KSZ9021 PHYs
93449ea2cdSPhilipp Tomsich	  is supported through the 'mdio' command and any RGMII signal
94449ea2cdSPhilipp Tomsich	  delays configured in the device tree will be applied to the
95449ea2cdSPhilipp Tomsich	  PHY during initialisatioin.
96449ea2cdSPhilipp Tomsich
97*d397f7c4SAlexandru Gagniuc	  Deprecated. Use PHY_MICREL_KSZ90X1 instead.
98*d397f7c4SAlexandru Gagniuc
99*d397f7c4SAlexandru Gagniucconfig PHY_MICREL_KSZ90X1
100*d397f7c4SAlexandru Gagniuc	bool "Micrel KSZ90x1 family support"
101*d397f7c4SAlexandru Gagniuc	select PHY_GIGE
102*d397f7c4SAlexandru Gagniuc	help
103*d397f7c4SAlexandru Gagniuc	  Enable support for the Micrel KSZ9021 and KSZ9031 GbE PHYs. If
104*d397f7c4SAlexandru Gagniuc	  enabled, the extended register read/write for KSZ90x1 PHYs
105*d397f7c4SAlexandru Gagniuc	  is supported through the 'mdio' command and any RGMII signal
106*d397f7c4SAlexandru Gagniuc	  delays configured in the device tree will be applied to the
107*d397f7c4SAlexandru Gagniuc	  PHY during initialization.
108*d397f7c4SAlexandru Gagniuc
109*d397f7c4SAlexandru Gagniuc	  This should not be enabled at the same time with PHY_MICREL_KSZ8XXX
110*d397f7c4SAlexandru Gagniuc	  as the KSZ9021 and KS8721 share the same ID.
111*d397f7c4SAlexandru Gagniuc
112*d397f7c4SAlexandru Gagniucconfig PHY_MICREL_KSZ8XXX
113*d397f7c4SAlexandru Gagniuc	bool "Micrel KSZ8xxx family support"
114*d397f7c4SAlexandru Gagniuc	default y if !PHY_MICREL_KSZ90X1
115*d397f7c4SAlexandru Gagniuc	help
116*d397f7c4SAlexandru Gagniuc	  Enable support for the 8000 series GbE PHYs manufactured by Micrel
117*d397f7c4SAlexandru Gagniuc	  (now a part of Microchip). This includes drivers for the KSZ804,
118*d397f7c4SAlexandru Gagniuc	  KSZ8031, KSZ8051, KSZ8081, KSZ8895, KSZ886x, and KSZ8721.
119*d397f7c4SAlexandru Gagniuc
120*d397f7c4SAlexandru Gagniuc	  This should not be enabled at the same time with PHY_MICREL_KSZ90X1
121*d397f7c4SAlexandru Gagniuc	  as the KSZ9021 and KS8721 share the same ID.
122*d397f7c4SAlexandru Gagniuc
123449ea2cdSPhilipp Tomsichendif # PHY_MICREL
124af2cbfd6SAlex
125a5fd13adSJohn Haechtenconfig PHY_MSCC
126a5fd13adSJohn Haechten	bool "Microsemi Corp Ethernet PHYs support"
127a5fd13adSJohn Haechten
128af2cbfd6SAlexconfig PHY_NATSEMI
129af2cbfd6SAlex	bool "National Semiconductor Ethernet PHYs support"
130af2cbfd6SAlex
131af2cbfd6SAlexconfig PHY_REALTEK
132af2cbfd6SAlex	bool "Realtek Ethernet PHYs support"
133af2cbfd6SAlex
134af2cbfd6SAlexconfig RTL8211X_PHY_FORCE_MASTER
135af2cbfd6SAlex	bool "Ethernet PHY RTL8211x: force 1000BASE-T master mode"
136af2cbfd6SAlex	depends on PHY_REALTEK
137af2cbfd6SAlex	help
138af2cbfd6SAlex	  Force master mode for 1000BASE-T on RTl8211x PHYs (except for RTL8211F).
139af2cbfd6SAlex	  This can work around link stability and data corruption issues on gigabit
140af2cbfd6SAlex	  links which can occur in slave mode on certain PHYs, e.g. on the
141af2cbfd6SAlex	  RTL8211C(L).
142af2cbfd6SAlex
143af2cbfd6SAlex	  Please note that two directly connected devices (i.e. via crossover cable)
144af2cbfd6SAlex	  will not be able to establish a link between each other if they both force
145af2cbfd6SAlex	  master mode. Multiple devices forcing master mode when connected by a
146af2cbfd6SAlex	  network switch do not pose a problem as the switch configures its affected
147af2cbfd6SAlex	  ports into slave mode.
148af2cbfd6SAlex
149af2cbfd6SAlex	  This option only affects gigabit links. If you must establish a direct
150af2cbfd6SAlex	  connection between two devices which both force master mode, try forcing
151af2cbfd6SAlex	  the link speed to 100MBit/s.
152af2cbfd6SAlex
153af2cbfd6SAlex	  If unsure, say N.
154af2cbfd6SAlex
155af2cbfd6SAlexconfig PHY_SMSC
156af2cbfd6SAlex	bool  "Microchip(SMSC) Ethernet PHYs support"
157af2cbfd6SAlex
158af2cbfd6SAlexconfig PHY_TERANETICS
159af2cbfd6SAlex	bool "Teranetics Ethernet PHYs support"
160af2cbfd6SAlex
161af2cbfd6SAlexconfig PHY_TI
162af2cbfd6SAlex	bool "Texas Instruments Ethernet PHYs support"
163af2cbfd6SAlex
164af2cbfd6SAlexconfig PHY_VITESSE
165af2cbfd6SAlex	bool "Vitesse Ethernet PHYs support"
166af2cbfd6SAlex
167af2cbfd6SAlexconfig PHY_XILINX
168af2cbfd6SAlex	bool "Xilinx Ethernet PHYs support"
169af2cbfd6SAlex
170db40c1aaSHannes Schmelzerconfig PHY_FIXED
171db40c1aaSHannes Schmelzer	bool "Fixed-Link PHY"
172db40c1aaSHannes Schmelzer	depends on DM_ETH
173db40c1aaSHannes Schmelzer	help
174db40c1aaSHannes Schmelzer	  Fixed PHY is used for having a 'fixed-link' to another MAC with a direct
175db40c1aaSHannes Schmelzer	  connection (MII, RGMII, ...).
176db40c1aaSHannes Schmelzer	  There is nothing like autoneogation and so
177db40c1aaSHannes Schmelzer	  on, the link is always up with fixed speed and fixed duplex-setting.
178db40c1aaSHannes Schmelzer	  More information: doc/device-tree-bindings/net/fixed-link.txt
179db40c1aaSHannes Schmelzer
180af2cbfd6SAlexendif #PHYLIB
181