blob: 2b7cec8804b390916f14512228828df91d8bc74a [file] [log] [blame]
Alex89e50d92017-02-06 19:17:34 -08001source "drivers/net/phy/Kconfig"
Calvin Johnson0e6101a2018-03-08 15:30:35 +05302source "drivers/net/pfe_eth/Kconfig"
Alex89e50d92017-02-06 19:17:34 -08003
Joe Hershbergerc7eceaf2015-03-22 17:09:10 -05004config DM_ETH
5 bool "Enable Driver Model for Ethernet drivers"
6 depends on DM
7 help
8 Enable driver model for Ethernet.
9
Joe Hershberger54214e62018-07-02 14:47:48 -050010 The eth_*() interface will be implemented by the UCLASS_ETH class
11 This is currently implemented in net/eth-uclass.c
Joe Hershbergerc7eceaf2015-03-22 17:09:10 -050012 Look in include/net.h for details.
Joe Hershberger6ab76992015-03-22 17:09:13 -050013
14menuconfig NETDEVICES
15 bool "Network device support"
16 depends on NET
Joe Hershberger5a9d7f12015-06-22 16:15:30 -050017 default y if DM_ETH
Joe Hershberger6ab76992015-03-22 17:09:13 -050018 help
19 You must select Y to enable any network device support
20 Generally if you have any networking support this is a given
21
22 If unsure, say Y
23
24if NETDEVICES
25
Philipp Tomsich00c33612017-03-26 18:50:23 +020026config PHY_GIGE
27 bool "Enable GbE PHY status parsing and configuration"
28 help
29 Enables support for parsing the status output and for
30 configuring GbE PHYs (affects the inner workings of some
31 commands and miiphyutil.c).
32
Marek Vasut0a3d0e12016-05-24 23:29:09 +020033config AG7XXX
34 bool "Atheros AG7xxx Ethernet MAC support"
35 depends on DM_ETH && ARCH_ATH79
36 select PHYLIB
37 help
38 This driver supports the Atheros AG7xxx Ethernet MAC. This MAC is
39 present in the Atheros AR7xxx, AR9xxx and QCA9xxx MIPS chips.
40
41
Thomas Chouec06dd82015-10-22 15:29:11 +080042config ALTERA_TSE
43 bool "Altera Triple-Speed Ethernet MAC support"
44 depends on DM_ETH
45 select PHYLIB
46 help
47 This driver supports the Altera Triple-Speed (TSE) Ethernet MAC.
48 Please find details on the "Triple-Speed Ethernet MegaCore Function
49 Resource Center" of Altera.
50
Suji Velupillaid2f677a2017-07-10 14:05:41 -070051config BCM_SF2_ETH
52 bool "Broadcom SF2 (Starfighter2) Ethernet support"
53 select PHYLIB
54 help
55 This is an abstract framework which provides a generic interface
56 to MAC and DMA management for multiple Broadcom SoCs such as
57 Cygnus, NSP and bcm28155_ap platforms.
58
59config BCM_SF2_ETH_DEFAULT_PORT
60 int "Broadcom SF2 (Starfighter2) Ethernet default port number"
61 depends on BCM_SF2_ETH
62 default 0
63 help
64 Default port number for the Starfighter2 ethernet driver.
65
66config BCM_SF2_ETH_GMAC
67 bool "Broadcom SF2 (Starfighter2) GMAC Ethernet support"
68 depends on BCM_SF2_ETH
69 help
70 This flag enables the ethernet support for Broadcom platforms with
71 GMAC such as Cygnus. This driver is based on the framework provided
72 by the BCM_SF2_ETH driver.
73 Say Y to any bcmcygnus based platforms.
74
Álvaro Fernández Rojas204fd5e2018-12-01 19:00:24 +010075config BCM6348_ETH
76 bool "BCM6348 EMAC support"
77 depends on DM_ETH && ARCH_BMIPS
78 select DMA
79 select DMA_CHANNELS
80 select MII
81 select PHYLIB
82 help
83 This driver supports the BCM6348 Ethernet MAC.
84
Stephen Warren50709602016-10-21 14:46:47 -060085config DWC_ETH_QOS
86 bool "Synopsys DWC Ethernet QOS device support"
87 depends on DM_ETH
88 select PHYLIB
89 help
90 This driver supports the Synopsys Designware Ethernet QOS (Quality
91 Of Service) IP block. The IP supports many options for bus type,
92 clocking/reset structure, and feature list. This driver currently
93 supports the specific configuration used in NVIDIA's Tegra186 chip,
94 but should be extensible to other combinations quite easily.
95
Simon Glassa83ccd52015-08-19 09:33:41 -060096config E1000
97 bool "Intel PRO/1000 Gigabit Ethernet support"
98 help
99 This driver supports Intel(R) PRO/1000 gigabit ethernet family of
100 adapters. For more information on how to identify your adapter, go
101 to the Adapter & Driver ID Guide at:
102
103 <http://support.intel.com/support/network/adapter/pro100/21397.htm>
104
105config E1000_SPI_GENERIC
106 bool "Allow access to the Intel 8257x SPI bus"
107 depends on E1000
108 help
109 Allow generic access to the SPI bus on the Intel 8257x, for
110 example with the "sspi" command.
111
112config E1000_SPI
113 bool "Enable SPI bus utility code"
114 depends on E1000
115 help
116 Utility code for direct access to the SPI bus on Intel 8257x.
117 This does not do anything useful unless you set at least one
118 of CONFIG_CMD_E1000 or CONFIG_E1000_SPI_GENERIC.
119
120config CMD_E1000
121 bool "Enable the e1000 command"
122 depends on E1000
123 help
124 This enables the 'e1000' management command for E1000 devices. When
125 used on devices with SPI support you can reprogram the EEPROM from
126 U-Boot.
127
Joe Hershberger6ab76992015-03-22 17:09:13 -0500128config ETH_SANDBOX
129 depends on DM_ETH && SANDBOX
130 default y
131 bool "Sandbox: Mocked Ethernet driver"
132 help
133 This driver simply responds with fake ARP replies and ping
134 replies that are used to verify network stack functionality
135
136 This driver is particularly useful in the test/dm/eth.c tests
137
Joe Hershberger586cbd12015-03-22 17:09:21 -0500138config ETH_SANDBOX_RAW
139 depends on DM_ETH && SANDBOX
140 default y
141 bool "Sandbox: Bridge to Linux Raw Sockets"
142 help
143 This driver is a bridge from the bottom of the network stack
144 in U-Boot to the RAW AF_PACKET API in Linux. This allows real
145 network traffic to be tested from within sandbox. See
146 board/sandbox/README.sandbox for more details.
147
Simon Glass6e378742015-04-05 16:07:34 -0600148config ETH_DESIGNWARE
149 bool "Synopsys Designware Ethernet MAC"
Thomas Chou7a0dfa62015-12-07 20:53:29 +0800150 select PHYLIB
Simon Glass6e378742015-04-05 16:07:34 -0600151 help
152 This MAC is present in SoCs from various vendors. It supports
153 100Mbit and 1 Gbit operation. You must enable CONFIG_PHYLIB to
154 provide the PHY (physical media interface).
155
Marek Vasut0d9a4a02018-08-13 19:32:14 +0200156config ETH_DESIGNWARE_SOCFPGA
157 bool "Altera SoCFPGA extras for Synopsys Designware Ethernet MAC"
158 depends on DM_ETH && ETH_DESIGNWARE
159 help
160 The Altera SoCFPGA requires additional configuration of the
161 Altera system manager to correctly interface with the PHY.
162 This code handles those SoC specifics.
163
Max Filippove07d3d22016-08-05 18:26:15 +0300164config ETHOC
165 bool "OpenCores 10/100 Mbps Ethernet MAC"
166 help
167 This MAC is present in OpenRISC and Xtensa XTFPGA boards.
168
Peng Fana65e0362018-03-28 20:54:14 +0800169config FEC_MXC_SHARE_MDIO
170 bool "Share the MDIO bus for FEC controller"
171 depends on FEC_MXC
172
173config FEC_MXC_MDIO_BASE
174 hex "MDIO base address for the FEC controller"
175 depends on FEC_MXC_SHARE_MDIO
176 help
177 This specifies the MDIO registers base address. It is used when
178 two FEC controllers share MDIO bus.
179
Jagan Tekia48af852016-10-08 18:00:12 +0530180config FEC_MXC
181 bool "FEC Ethernet controller"
Anatolij Gustschinb71fc5e2018-10-18 16:15:11 +0200182 depends on MX5 || MX6 || MX7 || IMX8
Jagan Tekia48af852016-10-08 18:00:12 +0530183 help
184 This driver supports the 10/100 Fast Ethernet controller for
185 NXP i.MX processors.
186
Tom Rinic5ea8ed2017-05-26 11:18:53 -0400187config FTMAC100
188 bool "Ftmac100 Ethernet Support"
189 help
190 This MAC is present in Andestech SoCs.
191
Cédric Le Goater38b33e92018-10-29 07:06:31 +0100192config FTGMAC100
193 bool "Ftgmac100 Ethernet Support"
194 depends on DM_ETH
195 select PHYLIB
196 help
197 This driver supports the Faraday's FTGMAC100 Gigabit SoC
198 Ethernet controller that can be found on Aspeed SoCs (which
199 include NCSI).
200
201 It is fully compliant with IEEE 802.3 specification for
202 10/100 Mbps Ethernet and IEEE 802.3z specification for 1000
203 Mbps Ethernet and includes Reduced Media Independent
204 Interface (RMII) and Reduced Gigabit Media Independent
205 Interface (RGMII) interfaces. It adopts an AHB bus interface
206 and integrates a link list DMA engine with direct M-Bus
207 accesses for transmitting and receiving packets. It has
208 independent TX/RX fifos, supports half and full duplex (1000
209 Mbps mode only supports full duplex), flow control for full
210 duplex and backpressure for half duplex.
211
212 The FTGMAC100 also implements IP, TCP, UDP checksum offloads
213 and supports IEEE 802.1Q VLAN tag insertion and removal. It
214 offers high-priority transmit queue for QoS and CoS
215 applications.
216
217
Chris Packham943679d2018-05-03 23:00:35 +1200218config MVGBE
219 bool "Marvell Orion5x/Kirkwood network interface support"
220 depends on KIRKWOOD || ORION5X
Chris Packham1de16f72018-07-09 21:34:00 +1200221 select PHYLIB if DM_ETH
Chris Packham943679d2018-05-03 23:00:35 +1200222 help
223 This driver supports the network interface units in the
224 Marvell Orion5x and Kirkwood SoCs
225
Chris Packham919041c2017-08-21 20:17:03 +1200226config MVNETA
Miquel Raynal59d42cd2017-12-28 15:43:09 +0100227 bool "Marvell Armada XP/385/3700 network interface support"
228 depends on ARMADA_XP || ARMADA_38X || ARMADA_3700
Chris Packham919041c2017-08-21 20:17:03 +1200229 select PHYLIB
230 help
231 This driver supports the network interface units in the
Miquel Raynal59d42cd2017-12-28 15:43:09 +0100232 Marvell ARMADA XP, ARMADA 38X and ARMADA 3700 SoCs
Chris Packham919041c2017-08-21 20:17:03 +1200233
Stefan Roese96c19042016-02-10 07:22:10 +0100234config MVPP2
Stefan Roese78a112b2017-02-15 11:42:59 +0100235 bool "Marvell Armada 375/7K/8K network interface support"
236 depends on ARMADA_375 || ARMADA_8K
Stefan Roese96c19042016-02-10 07:22:10 +0100237 select PHYLIB
238 help
239 This driver supports the network interface units in the
Stefan Roese78a112b2017-02-15 11:42:59 +0100240 Marvell ARMADA 375, 7K and 8K SoCs.
Stefan Roese96c19042016-02-10 07:22:10 +0100241
Wenyou Yange7183de2016-11-02 10:06:55 +0800242config MACB
243 bool "Cadence MACB/GEM Ethernet Interface"
244 depends on DM_ETH
245 select PHYLIB
246 help
247 The Cadence MACB ethernet interface is found on many Atmel
248 AT91 and SAMA5 parts. This driver also supports the Cadence
249 GEM (Gigabit Ethernet MAC) found in some ARM SoC devices.
250 Say Y to include support for the MACB/GEM chip.
251
Wilson Lee41d6d1e2017-08-22 20:25:07 -0700252config MACB_ZYNQ
253 bool "Cadence MACB/GEM Ethernet Interface for Xilinx Zynq"
254 depends on MACB
255 help
256 The Cadence MACB ethernet interface was used on Zynq platform.
257 Say Y to enable support for the MACB/GEM in Zynq chip.
258
Stefan Roesef9947682018-10-26 14:53:27 +0200259config MT7628_ETH
260 bool "MediaTek MT7628 Ethernet Interface"
261 depends on ARCH_MT7620
262 help
263 The MediaTek MT7628 ethernet interface is used on MT7628 and
264 MT7688 based boards.
265
Bin Meng64d3dca2015-08-27 22:25:58 -0700266config PCH_GBE
267 bool "Intel Platform Controller Hub EG20T GMAC driver"
268 depends on DM_ETH && DM_PCI
269 select PHYLIB
270 help
271 This MAC is present in Intel Platform Controller Hub EG20T. It
272 supports 10/100/1000 Mbps operation.
273
Mylène Josserande44eb3a2017-04-02 12:59:08 +0200274config RGMII
275 bool "Enable RGMII"
276 help
277 Enable the support of the Reduced Gigabit Media-Independent
278 Interface (RGMII).
279
Adam Ford53705472018-07-20 23:03:57 -0500280config MII
281 bool "Enable MII"
282 help
283 Enable support of the Media-Independent Interface (MII)
284
Bin Menga6448df2016-03-21 06:47:41 -0700285config RTL8139
286 bool "Realtek 8139 series Ethernet controller driver"
287 help
288 This driver supports Realtek 8139 series fast ethernet family of
289 PCI chipsets/adapters.
290
Bin Meng29971222016-03-21 06:47:42 -0700291config RTL8169
292 bool "Realtek 8169 series Ethernet controller driver"
293 help
294 This driver supports Realtek 8169 series gigabit ethernet family of
295 PCI/PCIe chipsets/adapters.
296
Adam Ford0a044f82017-09-05 15:20:44 -0500297config SMC911X
298 bool "SMSC LAN911x and LAN921x controller driver"
299
300if SMC911X
301
302config SMC911X_BASE
303 hex "SMC911X Base Address"
304 help
305 Define this to hold the physical address
306 of the device (I/O space)
307
308choice
309 prompt "SMC911X bus width"
310 default SMC911X_16_BIT
311
312config SMC911X_32_BIT
313 bool "Enable 32-bit interface"
314
315config SMC911X_16_BIT
316 bool "Enable 16-bit interface"
317 help
318 Define this if data bus is 16 bits. If your processor
319 automatically converts one 32 bit word to two 16 bit
320 words you may also try CONFIG_SMC911X_32_BIT.
321
322endchoice
323endif #SMC911X
324
Mylène Josserandc1506ef2017-04-02 12:59:03 +0200325config SUN7I_GMAC
326 bool "Enable Allwinner GMAC Ethernet support"
327 help
328 Enable the support for Sun7i GMAC Ethernet controller
329
Stefan Mavrodieveaee8582017-11-03 08:56:51 +0200330config SUN7I_GMAC_FORCE_TXERR
331 bool "Force PA17 as gmac function"
332 depends on SUN7I_GMAC
333 help
334 Some ethernet phys needs TXERR control. Since the GMAC
335 doesn't have such signal, setting PA17 as GMAC function
336 makes the pin output low, which enables data transmission.
337
Mylène Josserand43ef1842017-04-02 12:59:07 +0200338config SUN4I_EMAC
339 bool "Allwinner Sun4i Ethernet MAC support"
340 depends on DM_ETH
Artturi Alm8ed09172017-11-08 05:08:58 +0200341 select PHYLIB
Mylène Josserand43ef1842017-04-02 12:59:07 +0200342 help
343 This driver supports the Allwinner based SUN4I Ethernet MAC.
344
Amit Singh Tomard194c0e2016-07-06 17:59:44 +0530345config SUN8I_EMAC
346 bool "Allwinner Sun8i Ethernet MAC support"
347 depends on DM_ETH
348 select PHYLIB
Philipp Tomsich00c33612017-03-26 18:50:23 +0200349 select PHY_GIGE
Amit Singh Tomard194c0e2016-07-06 17:59:44 +0530350 help
351 This driver supports the Allwinner based SUN8I/SUN50I Ethernet MAC.
352 It can be found in H3/A64/A83T based SoCs and compatible with both
Tom Rini1eee1172017-02-20 09:38:03 -0500353 External and Internal PHYs.
Amit Singh Tomard194c0e2016-07-06 17:59:44 +0530354
Nobuhiro Iwamatsuf593ecb2017-12-01 16:08:03 +0900355config SH_ETHER
356 bool "Renesas SH Ethernet MAC"
357 select PHYLIB
358 help
359 This driver supports the Ethernet for Renesas SH and ARM SoCs.
360
Grygorii Strashko5693dee2018-10-31 16:21:39 -0500361source "drivers/net/ti/Kconfig"
Adam Ford53705472018-07-20 23:03:57 -0500362
Michal Simek07d204f2015-12-09 16:54:42 +0100363config XILINX_AXIEMAC
364 depends on DM_ETH && (MICROBLAZE || ARCH_ZYNQ || ARCH_ZYNQMP)
365 select PHYLIB
366 select MII
367 bool "Xilinx AXI Ethernet"
368 help
369 This MAC is present in Xilinx Microblaze, Zynq and ZynqMP SoCs.
370
Michal Simekeaee95a2015-12-11 09:41:49 +0100371config XILINX_EMACLITE
Zubair Lutfullah Kakakhelc6811092016-07-27 12:25:09 +0100372 depends on DM_ETH && (MICROBLAZE || ARCH_ZYNQ || ARCH_ZYNQMP || MIPS)
Michal Simekeaee95a2015-12-11 09:41:49 +0100373 select PHYLIB
374 select MII
375 bool "Xilinx Ethernetlite"
376 help
377 This MAC is present in Xilinx Microblaze, Zynq and ZynqMP SoCs.
378
Michal Simek3d7285f2015-11-30 14:34:52 +0100379config ZYNQ_GEM
Michal Simek4b066a12018-08-22 14:55:27 +0200380 depends on DM_ETH && (ARCH_ZYNQ || ARCH_ZYNQMP || ARCH_VERSAL)
Michal Simek27ba0902015-12-11 09:14:31 +0100381 select PHYLIB
Michal Simek3d7285f2015-11-30 14:34:52 +0100382 bool "Xilinx Ethernet GEM"
383 help
Michal Simek7fb1d232015-12-09 16:53:52 +0100384 This MAC is present in Xilinx Zynq and ZynqMP SoCs.
Michal Simek3d7285f2015-11-30 14:34:52 +0100385
Purna Chandra Mandal6b731c92016-01-28 15:30:21 +0530386config PIC32_ETH
387 bool "Microchip PIC32 Ethernet Support"
388 depends on DM_ETH && MACH_PIC32
389 select PHYLIB
390 help
391 This driver implements 10/100 Mbps Ethernet and MAC layer for
392 Microchip PIC32 microcontrollers.
393
Sjoerd Simons54c46f92017-01-11 11:46:11 +0100394config GMAC_ROCKCHIP
395 bool "Rockchip Synopsys Designware Ethernet MAC"
396 depends on DM_ETH && ETH_DESIGNWARE
397 help
398 This driver provides Rockchip SoCs network support based on the
399 Synopsys Designware driver.
400
Marek Vasut17714cb2017-05-13 15:54:28 +0200401config RENESAS_RAVB
402 bool "Renesas Ethernet AVB MAC"
403 depends on DM_ETH && RCAR_GEN3
404 select PHYLIB
405 help
406 This driver implements support for the Ethernet AVB block in
407 Renesas M3 and H3 SoCs.
408
Christophe Leroy56ef30a2017-07-06 10:33:23 +0200409config MPC8XX_FEC
410 bool "Fast Ethernet Controller on MPC8XX"
Christophe Leroyb3510fb2018-03-16 17:20:41 +0100411 depends on MPC8xx
Christophe Leroy56ef30a2017-07-06 10:33:23 +0200412 select MII
413 help
414 This driver implements support for the Fast Ethernet Controller
415 on MPC8XX
416
Kunihiko Hayashi7dcdc222018-05-24 19:24:37 +0900417config SNI_AVE
418 bool "Socionext AVE Ethernet support"
419 depends on DM_ETH && ARCH_UNIPHIER
420 select PHYLIB
421 select SYSCON
422 select REGMAP
423 help
424 This driver implements support for the Socionext AVE Ethernet
425 controller, as found on the Socionext UniPhier family.
426
Christophe Leroy56ef30a2017-07-06 10:33:23 +0200427config ETHER_ON_FEC1
428 bool "FEC1"
429 depends on MPC8XX_FEC
430 default y
431
432config FEC1_PHY
433 int "FEC1 PHY"
434 depends on ETHER_ON_FEC1
435 default -1
436 help
437 Define to the hardcoded PHY address which corresponds
438 to the given FEC; i. e.
439 #define CONFIG_FEC1_PHY 4
440 means that the PHY with address 4 is connected to FEC1
441
442 When set to -1, means to probe for first available.
443
444config PHY_NORXERR
445 bool "PHY_NORXERR"
446 depends on ETHER_ON_FEC1
447 default n
448 help
449 The PHY does not have a RXERR line (RMII only).
450 (so program the FEC to ignore it).
451
452config ETHER_ON_FEC2
453 bool "FEC2"
454 depends on MPC8XX_FEC && MPC885
455 default y
456
457config FEC2_PHY
458 int "FEC2 PHY"
459 depends on ETHER_ON_FEC2
460 default -1
461 help
462 Define to the hardcoded PHY address which corresponds
463 to the given FEC; i. e.
464 #define CONFIG_FEC1_PHY 4
465 means that the PHY with address 4 is connected to FEC1
466
467 When set to -1, means to probe for first available.
468
469config FEC2_PHY_NORXERR
470 bool "PHY_NORXERR"
471 depends on ETHER_ON_FEC2
472 default n
473 help
474 The PHY does not have a RXERR line (RMII only).
475 (so program the FEC to ignore it).
476
Ahmed Mansour816bc412017-12-15 16:01:01 -0500477config SYS_DPAA_QBMAN
478 bool "Device tree fixup for QBMan on freescale SOCs"
479 depends on (ARM || PPC) && !SPL_BUILD
480 default y if ARCH_B4860 || \
481 ARCH_B4420 || \
482 ARCH_P1023 || \
483 ARCH_P2041 || \
484 ARCH_T1023 || \
485 ARCH_T1024 || \
486 ARCH_T1040 || \
487 ARCH_T1042 || \
488 ARCH_T2080 || \
489 ARCH_T2081 || \
490 ARCH_T4240 || \
491 ARCH_T4160 || \
492 ARCH_P4080 || \
493 ARCH_P3041 || \
494 ARCH_P5040 || \
495 ARCH_P5020 || \
496 ARCH_LS1043A || \
497 ARCH_LS1046A
498 help
499 QBman fixups to allow deep sleep in DPAA 1 SOCs
500
Mario Sixda4fc932018-03-28 14:38:18 +0200501config TSEC_ENET
502 select PHYLIB
503 bool "Enable Three-Speed Ethernet Controller"
504 help
505 This driver implements support for the (Enhanced) Three-Speed
506 Ethernet Controller found on Freescale SoCs.
507
Joe Hershberger6ab76992015-03-22 17:09:13 -0500508endif # NETDEVICES