xref: /openbmc/u-boot/drivers/net/phy/Kconfig (revision 0d1d4e81)
1
2config BITBANGMII
3	bool "Bit-banged ethernet MII management channel support"
4
5config MV88E6352_SWITCH
6	bool "Marvell 88E6352 switch support"
7
8menuconfig PHYLIB
9	bool "Ethernet PHY (physical media interface) support"
10	depends on NET
11	help
12	  Enable Ethernet PHY (physical media interface) support.
13
14if PHYLIB
15
16config PHY_ADDR_ENABLE
17	bool "Limit phy address"
18	default y if ARCH_SUNXI
19	help
20	  Select this if you want to control which phy address is used
21
22if PHY_ADDR_ENABLE
23config PHY_ADDR
24	int "PHY address"
25	default 1 if ARCH_SUNXI
26	default 0
27	help
28	  The address of PHY on MII bus. Usually in range of 0 to 31.
29endif
30
31config B53_SWITCH
32	bool "Broadcom BCM53xx (RoboSwitch) Ethernet switch PHY support."
33	help
34	  Enable support for Broadcom BCM53xx (RoboSwitch) Ethernet switches.
35	  This currently supports BCM53125 and similar models.
36
37if B53_SWITCH
38
39config B53_CPU_PORT
40	int "CPU port"
41	default 8
42
43config B53_PHY_PORTS
44	hex "Bitmask of PHY ports"
45
46endif # B53_SWITCH
47
48config MV88E61XX_SWITCH
49	bool "Marvel MV88E61xx Ethernet switch PHY support."
50
51if MV88E61XX_SWITCH
52
53config MV88E61XX_CPU_PORT
54	int "CPU Port"
55
56config MV88E61XX_PHY_PORTS
57	hex "Bitmask of PHY Ports"
58
59config MV88E61XX_FIXED_PORTS
60	hex "Bitmask of PHYless serdes Ports"
61
62endif # MV88E61XX_SWITCH
63
64config PHYLIB_10G
65	bool "Generic 10G PHY support"
66
67menuconfig PHY_AQUANTIA
68	bool "Aquantia Ethernet PHYs support"
69	select PHY_GIGE
70	select PHYLIB_10G
71
72config PHY_AQUANTIA_UPLOAD_FW
73	bool "Aquantia firmware loading support"
74	default n
75	depends on PHY_AQUANTIA
76	help
77		Aquantia PHYs use firmware which can be either loaded automatically
78		from storage directly attached to the phy or loaded by the boot loader
79		via MDIO commands.  The firmware is loaded from a file, specified by
80		the PHY_AQUANTIA_FW_PART and PHY_AQUANTIA_FW_NAME options.
81
82config PHY_AQUANTIA_FW_PART
83	string "Aquantia firmware partition"
84	depends on PHY_AQUANTIA_UPLOAD_FW
85	help
86		Partition containing the firmware file.
87
88config PHY_AQUANTIA_FW_NAME
89	string "Aquantia firmware filename"
90	depends on PHY_AQUANTIA_UPLOAD_FW
91	help
92		Firmware filename.
93
94config PHY_ATHEROS
95	bool "Atheros Ethernet PHYs support"
96
97config PHY_BROADCOM
98	bool "Broadcom Ethernet PHYs support"
99
100config PHY_CORTINA
101	bool "Cortina Ethernet PHYs support"
102
103config PHY_DAVICOM
104	bool "Davicom Ethernet PHYs support"
105
106config PHY_ET1011C
107	bool "LSI TruePHY ET1011C support"
108
109config PHY_LXT
110	bool "LXT971 Ethernet PHY support"
111
112config PHY_MARVELL
113	bool "Marvell Ethernet PHYs support"
114
115config PHY_MESON_GXL
116	bool "Amlogic Meson GXL Internal PHY support"
117
118config PHY_MICREL
119	bool "Micrel Ethernet PHYs support"
120	help
121	  Enable support for the GbE PHYs manufactured by Micrel (now
122	  a part of Microchip). This includes drivers for the KSZ804,
123	  KSZ8031, KSZ8051, KSZ8081, KSZ8895, KSZ886x, KSZ8721
124	  either/or KSZ9021 (see the "Micrel KSZ9021 family support"
125	  config option for details), and KSZ9031 (if configured).
126
127if PHY_MICREL
128
129config PHY_MICREL_KSZ9021
130	bool
131	select PHY_GIGE
132	select PHY_MICREL_KSZ90X1
133
134config PHY_MICREL_KSZ9031
135	bool
136	select PHY_GIGE
137	select PHY_MICREL_KSZ90X1
138
139config PHY_MICREL_KSZ90X1
140	bool "Micrel KSZ90x1 family support"
141	select PHY_GIGE
142	help
143	  Enable support for the Micrel KSZ9021 and KSZ9031 GbE PHYs. If
144	  enabled, the extended register read/write for KSZ90x1 PHYs
145	  is supported through the 'mdio' command and any RGMII signal
146	  delays configured in the device tree will be applied to the
147	  PHY during initialization.
148
149	  This should not be enabled at the same time with PHY_MICREL_KSZ8XXX
150	  as the KSZ9021 and KS8721 share the same ID.
151
152config PHY_MICREL_KSZ8XXX
153	bool "Micrel KSZ8xxx family support"
154	default y if !PHY_MICREL_KSZ90X1
155	help
156	  Enable support for the 8000 series GbE PHYs manufactured by Micrel
157	  (now a part of Microchip). This includes drivers for the KSZ804,
158	  KSZ8031, KSZ8051, KSZ8081, KSZ8895, KSZ886x, and KSZ8721.
159
160	  This should not be enabled at the same time with PHY_MICREL_KSZ90X1
161	  as the KSZ9021 and KS8721 share the same ID.
162
163endif # PHY_MICREL
164
165config PHY_MSCC
166	bool "Microsemi Corp Ethernet PHYs support"
167
168config PHY_NATSEMI
169	bool "National Semiconductor Ethernet PHYs support"
170
171config PHY_REALTEK
172	bool "Realtek Ethernet PHYs support"
173
174config RTL8211E_PINE64_GIGABIT_FIX
175	bool "Fix gigabit throughput on some Pine64+ models"
176	depends on PHY_REALTEK
177	help
178	  Configure the Realtek RTL8211E found on some Pine64+ models differently to
179	  fix throughput on Gigabit links, turning off all internal delays in the
180	  process. The settings that this touches are not documented in the CONFREG
181	  section of the RTL8211E datasheet, but come from Realtek by way of the
182	  Pine64 engineering team.
183
184config RTL8211X_PHY_FORCE_MASTER
185	bool "Ethernet PHY RTL8211x: force 1000BASE-T master mode"
186	depends on PHY_REALTEK
187	help
188	  Force master mode for 1000BASE-T on RTl8211x PHYs (except for RTL8211F).
189	  This can work around link stability and data corruption issues on gigabit
190	  links which can occur in slave mode on certain PHYs, e.g. on the
191	  RTL8211C(L).
192
193	  Please note that two directly connected devices (i.e. via crossover cable)
194	  will not be able to establish a link between each other if they both force
195	  master mode. Multiple devices forcing master mode when connected by a
196	  network switch do not pose a problem as the switch configures its affected
197	  ports into slave mode.
198
199	  This option only affects gigabit links. If you must establish a direct
200	  connection between two devices which both force master mode, try forcing
201	  the link speed to 100MBit/s.
202
203	  If unsure, say N.
204
205config PHY_SMSC
206	bool  "Microchip(SMSC) Ethernet PHYs support"
207
208config PHY_TERANETICS
209	bool "Teranetics Ethernet PHYs support"
210
211config PHY_TI
212	bool "Texas Instruments Ethernet PHYs support"
213
214config PHY_VITESSE
215	bool "Vitesse Ethernet PHYs support"
216
217config PHY_XILINX
218	bool "Xilinx Ethernet PHYs support"
219
220config PHY_FIXED
221	bool "Fixed-Link PHY"
222	depends on DM_ETH
223	help
224	  Fixed PHY is used for having a 'fixed-link' to another MAC with a direct
225	  connection (MII, RGMII, ...).
226	  There is nothing like autoneogation and so
227	  on, the link is always up with fixed speed and fixed duplex-setting.
228	  More information: doc/device-tree-bindings/net/fixed-link.txt
229
230config PHY_NCSI
231	bool "NC-SI based PHY"
232	depends on DM_ETH
233
234endif #PHYLIB
235