xref: /openbmc/u-boot/drivers/net/Kconfig (revision c895ef465059c399fdfd3f581848c67017226741)
1source "drivers/net/phy/Kconfig"
2source "drivers/net/pfe_eth/Kconfig"
3
4config DM_ETH
5	bool "Enable Driver Model for Ethernet drivers"
6	depends on DM
7	help
8	  Enable driver model for Ethernet.
9
10	  The eth_*() interface will be implemented by the UCLASS_ETH class
11	  This is currently implemented in net/eth-uclass.c
12	  Look in include/net.h for details.
13
14config DRIVER_TI_CPSW
15	bool "TI Common Platform Ethernet Switch"
16	select PHYLIB
17	help
18	  This driver supports the TI three port switch gigabit ethernet
19	  subsystem found in the TI SoCs.
20
21menuconfig NETDEVICES
22	bool "Network device support"
23	depends on NET
24	default y if DM_ETH
25	help
26	  You must select Y to enable any network device support
27	  Generally if you have any networking support this is a given
28
29	  If unsure, say Y
30
31if NETDEVICES
32
33config PHY_GIGE
34	bool "Enable GbE PHY status parsing and configuration"
35	help
36	  Enables support for parsing the status output and for
37	  configuring GbE PHYs (affects the inner workings of some
38	  commands and miiphyutil.c).
39
40config AG7XXX
41	bool "Atheros AG7xxx Ethernet MAC support"
42	depends on DM_ETH && ARCH_ATH79
43	select PHYLIB
44	help
45	  This driver supports the Atheros AG7xxx Ethernet MAC. This MAC is
46	  present in the Atheros AR7xxx, AR9xxx and QCA9xxx MIPS chips.
47
48
49config ALTERA_TSE
50	bool "Altera Triple-Speed Ethernet MAC support"
51	depends on DM_ETH
52	select PHYLIB
53	help
54	  This driver supports the Altera Triple-Speed (TSE) Ethernet MAC.
55	  Please find details on the "Triple-Speed Ethernet MegaCore Function
56	  Resource Center" of Altera.
57
58config BCM_SF2_ETH
59	bool "Broadcom SF2 (Starfighter2) Ethernet support"
60	select PHYLIB
61	help
62	  This is an abstract framework which provides a generic interface
63	  to MAC and DMA management for multiple Broadcom SoCs such as
64	  Cygnus, NSP and bcm28155_ap platforms.
65
66config BCM_SF2_ETH_DEFAULT_PORT
67	int "Broadcom SF2 (Starfighter2) Ethernet default port number"
68	depends on BCM_SF2_ETH
69	default 0
70	help
71	  Default port number for the Starfighter2 ethernet driver.
72
73config BCM_SF2_ETH_GMAC
74	bool "Broadcom SF2 (Starfighter2) GMAC Ethernet support"
75	depends on BCM_SF2_ETH
76	help
77	  This flag enables the ethernet support for Broadcom platforms with
78	  GMAC such as Cygnus. This driver is based on the framework provided
79	  by the BCM_SF2_ETH driver.
80	  Say Y to any bcmcygnus based platforms.
81
82config DWC_ETH_QOS
83	bool "Synopsys DWC Ethernet QOS device support"
84	depends on DM_ETH
85	select PHYLIB
86	help
87	  This driver supports the Synopsys Designware Ethernet QOS (Quality
88	  Of Service) IP block. The IP supports many options for bus type,
89	  clocking/reset structure, and feature list. This driver currently
90	  supports the specific configuration used in NVIDIA's Tegra186 chip,
91	  but should be extensible to other combinations quite easily.
92
93config E1000
94	bool "Intel PRO/1000 Gigabit Ethernet support"
95	help
96	  This driver supports Intel(R) PRO/1000 gigabit ethernet family of
97	  adapters.  For more information on how to identify your adapter, go
98	  to the Adapter & Driver ID Guide at:
99
100	  <http://support.intel.com/support/network/adapter/pro100/21397.htm>
101
102config E1000_SPI_GENERIC
103	bool "Allow access to the Intel 8257x SPI bus"
104	depends on E1000
105	help
106	  Allow generic access to the SPI bus on the Intel 8257x, for
107	  example with the "sspi" command.
108
109config E1000_SPI
110	bool "Enable SPI bus utility code"
111	depends on E1000
112	help
113	  Utility code for direct access to the SPI bus on Intel 8257x.
114	  This does not do anything useful unless you set at least one
115	  of CONFIG_CMD_E1000 or CONFIG_E1000_SPI_GENERIC.
116
117config CMD_E1000
118	bool "Enable the e1000 command"
119	depends on E1000
120	help
121	  This enables the 'e1000' management command for E1000 devices. When
122	  used on devices with SPI support you can reprogram the EEPROM from
123	  U-Boot.
124
125config ETH_SANDBOX
126	depends on DM_ETH && SANDBOX
127	default y
128	bool "Sandbox: Mocked Ethernet driver"
129	help
130	  This driver simply responds with fake ARP replies and ping
131	  replies that are used to verify network stack functionality
132
133	  This driver is particularly useful in the test/dm/eth.c tests
134
135config ETH_SANDBOX_RAW
136	depends on DM_ETH && SANDBOX
137	default y
138	bool "Sandbox: Bridge to Linux Raw Sockets"
139	help
140	  This driver is a bridge from the bottom of the network stack
141	  in U-Boot to the RAW AF_PACKET API in Linux. This allows real
142	  network traffic to be tested from within sandbox. See
143	  board/sandbox/README.sandbox for more details.
144
145config ETH_DESIGNWARE
146	bool "Synopsys Designware Ethernet MAC"
147	select PHYLIB
148	help
149	  This MAC is present in SoCs from various vendors. It supports
150	  100Mbit and 1 Gbit operation. You must enable CONFIG_PHYLIB to
151	  provide the PHY (physical media interface).
152
153config ETH_DESIGNWARE_SOCFPGA
154	bool "Altera SoCFPGA extras for Synopsys Designware Ethernet MAC"
155	depends on DM_ETH && ETH_DESIGNWARE
156	help
157	  The Altera SoCFPGA requires additional configuration of the
158	  Altera system manager to correctly interface with the PHY.
159	  This code handles those SoC specifics.
160
161config ETHOC
162	bool "OpenCores 10/100 Mbps Ethernet MAC"
163	help
164	  This MAC is present in OpenRISC and Xtensa XTFPGA boards.
165
166config FEC_MXC_SHARE_MDIO
167	bool "Share the MDIO bus for FEC controller"
168	depends on FEC_MXC
169
170config FEC_MXC_MDIO_BASE
171	hex "MDIO base address for the FEC controller"
172	depends on FEC_MXC_SHARE_MDIO
173	help
174	  This specifies the MDIO registers base address. It is used when
175	  two FEC controllers share MDIO bus.
176
177config FEC_MXC
178	bool "FEC Ethernet controller"
179	depends on MX5 || MX6 || MX7 || IMX8
180	help
181	  This driver supports the 10/100 Fast Ethernet controller for
182	  NXP i.MX processors.
183
184config FTMAC100
185	bool "Ftmac100 Ethernet Support"
186	help
187	  This MAC is present in Andestech SoCs.
188
189config MVGBE
190	bool "Marvell Orion5x/Kirkwood network interface support"
191	depends on KIRKWOOD || ORION5X
192	select PHYLIB if DM_ETH
193	help
194	  This driver supports the network interface units in the
195	  Marvell Orion5x and Kirkwood SoCs
196
197config MVNETA
198	bool "Marvell Armada XP/385/3700 network interface support"
199	depends on ARMADA_XP || ARMADA_38X || ARMADA_3700
200	select PHYLIB
201	help
202	  This driver supports the network interface units in the
203	  Marvell ARMADA XP, ARMADA 38X and ARMADA 3700 SoCs
204
205config MVPP2
206	bool "Marvell Armada 375/7K/8K network interface support"
207	depends on ARMADA_375 || ARMADA_8K
208	select PHYLIB
209	help
210	  This driver supports the network interface units in the
211	  Marvell ARMADA 375, 7K and 8K SoCs.
212
213config MACB
214	bool "Cadence MACB/GEM Ethernet Interface"
215	depends on DM_ETH
216	select PHYLIB
217	help
218	  The Cadence MACB ethernet interface is found on many Atmel
219	  AT91 and SAMA5 parts.  This driver also supports the Cadence
220	  GEM (Gigabit Ethernet MAC) found in some ARM SoC devices.
221	  Say Y to include support for the MACB/GEM chip.
222
223config MACB_ZYNQ
224	bool "Cadence MACB/GEM Ethernet Interface for Xilinx Zynq"
225	depends on MACB
226	help
227	  The Cadence MACB ethernet interface was used on Zynq platform.
228	  Say Y to enable support for the MACB/GEM in Zynq chip.
229
230config MT7628_ETH
231	bool "MediaTek MT7628 Ethernet Interface"
232	depends on ARCH_MT7620
233	help
234	  The MediaTek MT7628 ethernet interface is used on MT7628 and
235	  MT7688 based boards.
236
237config PCH_GBE
238	bool "Intel Platform Controller Hub EG20T GMAC driver"
239	depends on DM_ETH && DM_PCI
240	select PHYLIB
241	help
242	  This MAC is present in Intel Platform Controller Hub EG20T. It
243	  supports 10/100/1000 Mbps operation.
244
245config RGMII
246	bool "Enable RGMII"
247	help
248	  Enable the support of the Reduced Gigabit Media-Independent
249	  Interface (RGMII).
250
251config MII
252	bool "Enable MII"
253	help
254	  Enable support of the Media-Independent Interface (MII)
255
256config RTL8139
257	bool "Realtek 8139 series Ethernet controller driver"
258	help
259	  This driver supports Realtek 8139 series fast ethernet family of
260	  PCI chipsets/adapters.
261
262config RTL8169
263	bool "Realtek 8169 series Ethernet controller driver"
264	help
265	  This driver supports Realtek 8169 series gigabit ethernet family of
266	  PCI/PCIe chipsets/adapters.
267
268config SMC911X
269	bool "SMSC LAN911x and LAN921x controller driver"
270
271if SMC911X
272
273config SMC911X_BASE
274	hex "SMC911X Base Address"
275	help
276	  Define this to hold the physical address
277	  of the device (I/O space)
278
279choice
280	prompt "SMC911X bus width"
281	default SMC911X_16_BIT
282
283config SMC911X_32_BIT
284	bool "Enable 32-bit interface"
285
286config SMC911X_16_BIT
287	bool "Enable 16-bit interface"
288	help
289	  Define this if data bus is 16 bits. If your processor
290	  automatically converts one 32 bit word to two 16 bit
291	  words you may also try CONFIG_SMC911X_32_BIT.
292
293endchoice
294endif #SMC911X
295
296config SUN7I_GMAC
297	bool "Enable Allwinner GMAC Ethernet support"
298	help
299	  Enable the support for Sun7i GMAC Ethernet controller
300
301config SUN7I_GMAC_FORCE_TXERR
302	bool "Force PA17 as gmac function"
303	depends on SUN7I_GMAC
304	help
305	  Some ethernet phys needs TXERR control. Since the GMAC
306	  doesn't have such signal, setting PA17 as GMAC function
307	  makes the pin output low, which enables data transmission.
308
309config SUN4I_EMAC
310	bool "Allwinner Sun4i Ethernet MAC support"
311	depends on DM_ETH
312	select PHYLIB
313	help
314	  This driver supports the Allwinner based SUN4I Ethernet MAC.
315
316config SUN8I_EMAC
317        bool "Allwinner Sun8i Ethernet MAC support"
318        depends on DM_ETH
319        select PHYLIB
320	select PHY_GIGE
321        help
322          This driver supports the  Allwinner based SUN8I/SUN50I Ethernet MAC.
323	  It can be found in H3/A64/A83T based SoCs and compatible with both
324	  External and Internal PHYs.
325
326config SH_ETHER
327	bool "Renesas SH Ethernet MAC"
328	select PHYLIB
329	help
330	  This driver supports the Ethernet for Renesas SH and ARM SoCs.
331
332config DRIVER_TI_EMAC
333	bool "TI Davinci EMAC"
334	help
335	   Support for davinci emac
336
337config XILINX_AXIEMAC
338	depends on DM_ETH && (MICROBLAZE || ARCH_ZYNQ || ARCH_ZYNQMP)
339	select PHYLIB
340	select MII
341	bool "Xilinx AXI Ethernet"
342	help
343	  This MAC is present in Xilinx Microblaze, Zynq and ZynqMP SoCs.
344
345config XILINX_EMACLITE
346	depends on DM_ETH && (MICROBLAZE || ARCH_ZYNQ || ARCH_ZYNQMP || MIPS)
347	select PHYLIB
348	select MII
349	bool "Xilinx Ethernetlite"
350	help
351	  This MAC is present in Xilinx Microblaze, Zynq and ZynqMP SoCs.
352
353config ZYNQ_GEM
354	depends on DM_ETH && (ARCH_ZYNQ || ARCH_ZYNQMP || ARCH_VERSAL)
355	select PHYLIB
356	bool "Xilinx Ethernet GEM"
357	help
358	  This MAC is present in Xilinx Zynq and ZynqMP SoCs.
359
360config PIC32_ETH
361	bool "Microchip PIC32 Ethernet Support"
362	depends on DM_ETH && MACH_PIC32
363	select PHYLIB
364	help
365	  This driver implements 10/100 Mbps Ethernet and MAC layer for
366	  Microchip PIC32 microcontrollers.
367
368config GMAC_ROCKCHIP
369	bool "Rockchip Synopsys Designware Ethernet MAC"
370	depends on DM_ETH && ETH_DESIGNWARE
371	help
372	  This driver provides Rockchip SoCs network support based on the
373	  Synopsys Designware driver.
374
375config RENESAS_RAVB
376	bool "Renesas Ethernet AVB MAC"
377	depends on DM_ETH && RCAR_GEN3
378	select PHYLIB
379	help
380	  This driver implements support for the Ethernet AVB block in
381	  Renesas M3 and H3 SoCs.
382
383config MPC8XX_FEC
384	bool "Fast Ethernet Controller on MPC8XX"
385	depends on MPC8xx
386	select MII
387	help
388	  This driver implements support for the Fast Ethernet Controller
389	  on MPC8XX
390
391config SNI_AVE
392	bool "Socionext AVE Ethernet support"
393	depends on DM_ETH && ARCH_UNIPHIER
394	select PHYLIB
395	select SYSCON
396	select REGMAP
397	help
398	  This driver implements support for the Socionext AVE Ethernet
399	  controller, as found on the Socionext UniPhier family.
400
401config ETHER_ON_FEC1
402	bool "FEC1"
403	depends on MPC8XX_FEC
404	default y
405
406config FEC1_PHY
407	int "FEC1 PHY"
408	depends on ETHER_ON_FEC1
409	default -1
410	help
411	  Define to the hardcoded PHY address which corresponds
412	  to the given FEC; i. e.
413		#define CONFIG_FEC1_PHY 4
414	  means that the PHY with address 4 is connected to FEC1
415
416	  When set to -1, means to probe for first available.
417
418config PHY_NORXERR
419	bool "PHY_NORXERR"
420	depends on ETHER_ON_FEC1
421	default n
422	help
423	  The PHY does not have a RXERR line (RMII only).
424	  (so program the FEC to ignore it).
425
426config ETHER_ON_FEC2
427	bool "FEC2"
428	depends on MPC8XX_FEC && MPC885
429	default y
430
431config FEC2_PHY
432	int "FEC2 PHY"
433	depends on ETHER_ON_FEC2
434	default -1
435	help
436	  Define to the hardcoded PHY address which corresponds
437	  to the given FEC; i. e.
438		#define CONFIG_FEC1_PHY 4
439	  means that the PHY with address 4 is connected to FEC1
440
441	  When set to -1, means to probe for first available.
442
443config FEC2_PHY_NORXERR
444	bool "PHY_NORXERR"
445	depends on ETHER_ON_FEC2
446	default n
447	help
448	  The PHY does not have a RXERR line (RMII only).
449	  (so program the FEC to ignore it).
450
451config SYS_DPAA_QBMAN
452	bool "Device tree fixup for QBMan on freescale SOCs"
453	depends on (ARM || PPC) && !SPL_BUILD
454	default y if ARCH_B4860 || \
455		     ARCH_B4420 || \
456		     ARCH_P1023 || \
457		     ARCH_P2041 || \
458		     ARCH_T1023 || \
459		     ARCH_T1024 || \
460		     ARCH_T1040 || \
461		     ARCH_T1042 || \
462		     ARCH_T2080 || \
463		     ARCH_T2081 || \
464		     ARCH_T4240 || \
465		     ARCH_T4160 || \
466		     ARCH_P4080 || \
467		     ARCH_P3041 || \
468		     ARCH_P5040 || \
469		     ARCH_P5020 || \
470		     ARCH_LS1043A || \
471		     ARCH_LS1046A
472	help
473	  QBman fixups to allow deep sleep in DPAA 1 SOCs
474
475config TSEC_ENET
476	select PHYLIB
477	bool "Enable Three-Speed Ethernet Controller"
478	help
479	  This driver implements support for the (Enhanced) Three-Speed
480	  Ethernet Controller found on Freescale SoCs.
481
482endif # NETDEVICES
483