xref: /openbmc/u-boot/drivers/net/Kconfig (revision 9925f1dbc38c0ef7220c6fca5968c708b8e48764)
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 UC_ETH class
11	  This is currently implemented in net/eth.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 ETHOC
154	bool "OpenCores 10/100 Mbps Ethernet MAC"
155	help
156	  This MAC is present in OpenRISC and Xtensa XTFPGA boards.
157
158config FEC_MXC
159	bool "FEC Ethernet controller"
160	depends on MX5 || MX6
161	help
162	  This driver supports the 10/100 Fast Ethernet controller for
163	  NXP i.MX processors.
164
165config FTMAC100
166	bool "Ftmac100 Ethernet Support"
167	help
168	  This MAC is present in Andestech SoCs.
169
170config MVNETA
171	bool "Marvell Armada XP/385/3700 network interface support"
172	depends on ARMADA_XP || ARMADA_38X || ARMADA_3700
173	select PHYLIB
174	help
175	  This driver supports the network interface units in the
176	  Marvell ARMADA XP, ARMADA 38X and ARMADA 3700 SoCs
177
178config MVPP2
179	bool "Marvell Armada 375/7K/8K network interface support"
180	depends on ARMADA_375 || ARMADA_8K
181	select PHYLIB
182	help
183	  This driver supports the network interface units in the
184	  Marvell ARMADA 375, 7K and 8K SoCs.
185
186config MACB
187	bool "Cadence MACB/GEM Ethernet Interface"
188	depends on DM_ETH
189	select PHYLIB
190	help
191	  The Cadence MACB ethernet interface is found on many Atmel
192	  AT91 and SAMA5 parts.  This driver also supports the Cadence
193	  GEM (Gigabit Ethernet MAC) found in some ARM SoC devices.
194	  Say Y to include support for the MACB/GEM chip.
195
196config MACB_ZYNQ
197	bool "Cadence MACB/GEM Ethernet Interface for Xilinx Zynq"
198	depends on MACB
199	help
200	  The Cadence MACB ethernet interface was used on Zynq platform.
201	  Say Y to enable support for the MACB/GEM in Zynq chip.
202
203config PCH_GBE
204	bool "Intel Platform Controller Hub EG20T GMAC driver"
205	depends on DM_ETH && DM_PCI
206	select PHYLIB
207	help
208	  This MAC is present in Intel Platform Controller Hub EG20T. It
209	  supports 10/100/1000 Mbps operation.
210
211config RGMII
212	bool "Enable RGMII"
213	help
214	  Enable the support of the Reduced Gigabit Media-Independent
215	  Interface (RGMII).
216
217config RTL8139
218	bool "Realtek 8139 series Ethernet controller driver"
219	help
220	  This driver supports Realtek 8139 series fast ethernet family of
221	  PCI chipsets/adapters.
222
223config RTL8169
224	bool "Realtek 8169 series Ethernet controller driver"
225	help
226	  This driver supports Realtek 8169 series gigabit ethernet family of
227	  PCI/PCIe chipsets/adapters.
228
229config SMC911X
230	bool "SMSC LAN911x and LAN921x controller driver"
231
232if SMC911X
233
234config SMC911X_BASE
235	hex "SMC911X Base Address"
236	help
237	  Define this to hold the physical address
238	  of the device (I/O space)
239
240choice
241	prompt "SMC911X bus width"
242	default SMC911X_16_BIT
243
244config SMC911X_32_BIT
245	bool "Enable 32-bit interface"
246
247config SMC911X_16_BIT
248	bool "Enable 16-bit interface"
249	help
250	  Define this if data bus is 16 bits. If your processor
251	  automatically converts one 32 bit word to two 16 bit
252	  words you may also try CONFIG_SMC911X_32_BIT.
253
254endchoice
255endif #SMC911X
256
257config SUN7I_GMAC
258	bool "Enable Allwinner GMAC Ethernet support"
259	help
260	  Enable the support for Sun7i GMAC Ethernet controller
261
262config SUN7I_GMAC_FORCE_TXERR
263	bool "Force PA17 as gmac function"
264	depends on SUN7I_GMAC
265	help
266	  Some ethernet phys needs TXERR control. Since the GMAC
267	  doesn't have such signal, setting PA17 as GMAC function
268	  makes the pin output low, which enables data transmission.
269
270config SUN4I_EMAC
271	bool "Allwinner Sun4i Ethernet MAC support"
272	depends on DM_ETH
273	select PHYLIB
274	help
275	  This driver supports the Allwinner based SUN4I Ethernet MAC.
276
277config SUN8I_EMAC
278        bool "Allwinner Sun8i Ethernet MAC support"
279        depends on DM_ETH
280        select PHYLIB
281	select PHY_GIGE
282        help
283          This driver supports the  Allwinner based SUN8I/SUN50I Ethernet MAC.
284	  It can be found in H3/A64/A83T based SoCs and compatible with both
285	  External and Internal PHYs.
286
287config SH_ETHER
288	bool "Renesas SH Ethernet MAC"
289	select PHYLIB
290	help
291	  This driver supports the Ethernet for Renesas SH and ARM SoCs.
292
293config XILINX_AXIEMAC
294	depends on DM_ETH && (MICROBLAZE || ARCH_ZYNQ || ARCH_ZYNQMP)
295	select PHYLIB
296	select MII
297	bool "Xilinx AXI Ethernet"
298	help
299	  This MAC is present in Xilinx Microblaze, Zynq and ZynqMP SoCs.
300
301config XILINX_EMACLITE
302	depends on DM_ETH && (MICROBLAZE || ARCH_ZYNQ || ARCH_ZYNQMP || MIPS)
303	select PHYLIB
304	select MII
305	bool "Xilinx Ethernetlite"
306	help
307	  This MAC is present in Xilinx Microblaze, Zynq and ZynqMP SoCs.
308
309config ZYNQ_GEM
310	depends on DM_ETH && (ARCH_ZYNQ || ARCH_ZYNQMP)
311	select PHYLIB
312	bool "Xilinx Ethernet GEM"
313	help
314	  This MAC is present in Xilinx Zynq and ZynqMP SoCs.
315
316config PIC32_ETH
317	bool "Microchip PIC32 Ethernet Support"
318	depends on DM_ETH && MACH_PIC32
319	select PHYLIB
320	help
321	  This driver implements 10/100 Mbps Ethernet and MAC layer for
322	  Microchip PIC32 microcontrollers.
323
324config GMAC_ROCKCHIP
325	bool "Rockchip Synopsys Designware Ethernet MAC"
326	depends on DM_ETH && ETH_DESIGNWARE
327	help
328	  This driver provides Rockchip SoCs network support based on the
329	  Synopsys Designware driver.
330
331config RENESAS_RAVB
332	bool "Renesas Ethernet AVB MAC"
333	depends on DM_ETH && RCAR_GEN3
334	select PHYLIB
335	help
336	  This driver implements support for the Ethernet AVB block in
337	  Renesas M3 and H3 SoCs.
338
339config MPC8XX_FEC
340	bool "Fast Ethernet Controller on MPC8XX"
341	depends on MPC8xx
342	select MII
343	help
344	  This driver implements support for the Fast Ethernet Controller
345	  on MPC8XX
346
347config ETHER_ON_FEC1
348	bool "FEC1"
349	depends on MPC8XX_FEC
350	default y
351
352config FEC1_PHY
353	int "FEC1 PHY"
354	depends on ETHER_ON_FEC1
355	default -1
356	help
357	  Define to the hardcoded PHY address which corresponds
358	  to the given FEC; i. e.
359		#define CONFIG_FEC1_PHY 4
360	  means that the PHY with address 4 is connected to FEC1
361
362	  When set to -1, means to probe for first available.
363
364config PHY_NORXERR
365	bool "PHY_NORXERR"
366	depends on ETHER_ON_FEC1
367	default n
368	help
369	  The PHY does not have a RXERR line (RMII only).
370	  (so program the FEC to ignore it).
371
372config ETHER_ON_FEC2
373	bool "FEC2"
374	depends on MPC8XX_FEC && MPC885
375	default y
376
377config FEC2_PHY
378	int "FEC2 PHY"
379	depends on ETHER_ON_FEC2
380	default -1
381	help
382	  Define to the hardcoded PHY address which corresponds
383	  to the given FEC; i. e.
384		#define CONFIG_FEC1_PHY 4
385	  means that the PHY with address 4 is connected to FEC1
386
387	  When set to -1, means to probe for first available.
388
389config FEC2_PHY_NORXERR
390	bool "PHY_NORXERR"
391	depends on ETHER_ON_FEC2
392	default n
393	help
394	  The PHY does not have a RXERR line (RMII only).
395	  (so program the FEC to ignore it).
396
397config SYS_DPAA_QBMAN
398	bool "Device tree fixup for QBMan on freescale SOCs"
399	depends on (ARM || PPC) && !SPL_BUILD
400	default y if ARCH_B4860 || \
401		     ARCH_B4420 || \
402		     ARCH_P1023 || \
403		     ARCH_P2041 || \
404		     ARCH_T1023 || \
405		     ARCH_T1024 || \
406		     ARCH_T1040 || \
407		     ARCH_T1042 || \
408		     ARCH_T2080 || \
409		     ARCH_T2081 || \
410		     ARCH_T4240 || \
411		     ARCH_T4160 || \
412		     ARCH_P4080 || \
413		     ARCH_P3041 || \
414		     ARCH_P5040 || \
415		     ARCH_P5020 || \
416		     ARCH_LS1043A || \
417		     ARCH_LS1046A
418	help
419	  QBman fixups to allow deep sleep in DPAA 1 SOCs
420
421config TSEC_ENET
422	select PHYLIB
423	bool "Enable Three-Speed Ethernet Controller"
424	help
425	  This driver implements support for the (Enhanced) Three-Speed
426	  Ethernet Controller found on Freescale SoCs.
427
428endif # NETDEVICES
429