blob: ff55e03d3fd22ba98d5ffcd6ec185b1bada60c22 [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
Álvaro Fernández Rojasb0b22542018-12-01 19:00:32 +010085config BCM6368_ETH
86 bool "BCM6368 EMAC support"
87 depends on DM_ETH && ARCH_BMIPS
88 select DMA
89 select MII
90 help
91 This driver supports the BCM6368 Ethernet MAC.
92
Stephen Warren50709602016-10-21 14:46:47 -060093config DWC_ETH_QOS
94 bool "Synopsys DWC Ethernet QOS device support"
95 depends on DM_ETH
96 select PHYLIB
97 help
98 This driver supports the Synopsys Designware Ethernet QOS (Quality
99 Of Service) IP block. The IP supports many options for bus type,
100 clocking/reset structure, and feature list. This driver currently
101 supports the specific configuration used in NVIDIA's Tegra186 chip,
102 but should be extensible to other combinations quite easily.
103
Simon Glassa83ccd52015-08-19 09:33:41 -0600104config E1000
105 bool "Intel PRO/1000 Gigabit Ethernet support"
106 help
107 This driver supports Intel(R) PRO/1000 gigabit ethernet family of
108 adapters. For more information on how to identify your adapter, go
109 to the Adapter & Driver ID Guide at:
110
111 <http://support.intel.com/support/network/adapter/pro100/21397.htm>
112
113config E1000_SPI_GENERIC
114 bool "Allow access to the Intel 8257x SPI bus"
115 depends on E1000
116 help
117 Allow generic access to the SPI bus on the Intel 8257x, for
118 example with the "sspi" command.
119
120config E1000_SPI
121 bool "Enable SPI bus utility code"
122 depends on E1000
123 help
124 Utility code for direct access to the SPI bus on Intel 8257x.
125 This does not do anything useful unless you set at least one
126 of CONFIG_CMD_E1000 or CONFIG_E1000_SPI_GENERIC.
127
128config CMD_E1000
129 bool "Enable the e1000 command"
130 depends on E1000
131 help
132 This enables the 'e1000' management command for E1000 devices. When
133 used on devices with SPI support you can reprogram the EEPROM from
134 U-Boot.
135
Joe Hershberger6ab76992015-03-22 17:09:13 -0500136config ETH_SANDBOX
137 depends on DM_ETH && SANDBOX
138 default y
139 bool "Sandbox: Mocked Ethernet driver"
140 help
141 This driver simply responds with fake ARP replies and ping
142 replies that are used to verify network stack functionality
143
144 This driver is particularly useful in the test/dm/eth.c tests
145
Joe Hershberger586cbd12015-03-22 17:09:21 -0500146config ETH_SANDBOX_RAW
147 depends on DM_ETH && SANDBOX
148 default y
149 bool "Sandbox: Bridge to Linux Raw Sockets"
150 help
151 This driver is a bridge from the bottom of the network stack
152 in U-Boot to the RAW AF_PACKET API in Linux. This allows real
153 network traffic to be tested from within sandbox. See
154 board/sandbox/README.sandbox for more details.
155
Simon Glass6e378742015-04-05 16:07:34 -0600156config ETH_DESIGNWARE
157 bool "Synopsys Designware Ethernet MAC"
Thomas Chou7a0dfa62015-12-07 20:53:29 +0800158 select PHYLIB
Simon Glass6e378742015-04-05 16:07:34 -0600159 help
160 This MAC is present in SoCs from various vendors. It supports
161 100Mbit and 1 Gbit operation. You must enable CONFIG_PHYLIB to
162 provide the PHY (physical media interface).
163
Marek Vasut0d9a4a02018-08-13 19:32:14 +0200164config ETH_DESIGNWARE_SOCFPGA
165 bool "Altera SoCFPGA extras for Synopsys Designware Ethernet MAC"
166 depends on DM_ETH && ETH_DESIGNWARE
167 help
168 The Altera SoCFPGA requires additional configuration of the
169 Altera system manager to correctly interface with the PHY.
170 This code handles those SoC specifics.
171
Max Filippove07d3d22016-08-05 18:26:15 +0300172config ETHOC
173 bool "OpenCores 10/100 Mbps Ethernet MAC"
174 help
175 This MAC is present in OpenRISC and Xtensa XTFPGA boards.
176
Peng Fana65e0362018-03-28 20:54:14 +0800177config FEC_MXC_SHARE_MDIO
178 bool "Share the MDIO bus for FEC controller"
179 depends on FEC_MXC
180
181config FEC_MXC_MDIO_BASE
182 hex "MDIO base address for the FEC controller"
183 depends on FEC_MXC_SHARE_MDIO
184 help
185 This specifies the MDIO registers base address. It is used when
186 two FEC controllers share MDIO bus.
187
Jagan Tekia48af852016-10-08 18:00:12 +0530188config FEC_MXC
189 bool "FEC Ethernet controller"
Anatolij Gustschinb71fc5e2018-10-18 16:15:11 +0200190 depends on MX5 || MX6 || MX7 || IMX8
Jagan Tekia48af852016-10-08 18:00:12 +0530191 help
192 This driver supports the 10/100 Fast Ethernet controller for
193 NXP i.MX processors.
194
Tom Rinic5ea8ed2017-05-26 11:18:53 -0400195config FTMAC100
196 bool "Ftmac100 Ethernet Support"
197 help
198 This MAC is present in Andestech SoCs.
199
Cédric Le Goater38b33e92018-10-29 07:06:31 +0100200config FTGMAC100
201 bool "Ftgmac100 Ethernet Support"
202 depends on DM_ETH
203 select PHYLIB
204 help
205 This driver supports the Faraday's FTGMAC100 Gigabit SoC
206 Ethernet controller that can be found on Aspeed SoCs (which
207 include NCSI).
208
209 It is fully compliant with IEEE 802.3 specification for
210 10/100 Mbps Ethernet and IEEE 802.3z specification for 1000
211 Mbps Ethernet and includes Reduced Media Independent
212 Interface (RMII) and Reduced Gigabit Media Independent
213 Interface (RGMII) interfaces. It adopts an AHB bus interface
214 and integrates a link list DMA engine with direct M-Bus
215 accesses for transmitting and receiving packets. It has
216 independent TX/RX fifos, supports half and full duplex (1000
217 Mbps mode only supports full duplex), flow control for full
218 duplex and backpressure for half duplex.
219
220 The FTGMAC100 also implements IP, TCP, UDP checksum offloads
221 and supports IEEE 802.1Q VLAN tag insertion and removal. It
222 offers high-priority transmit queue for QoS and CoS
223 applications.
224
225
Chris Packham943679d2018-05-03 23:00:35 +1200226config MVGBE
227 bool "Marvell Orion5x/Kirkwood network interface support"
228 depends on KIRKWOOD || ORION5X
Chris Packham1de16f72018-07-09 21:34:00 +1200229 select PHYLIB if DM_ETH
Chris Packham943679d2018-05-03 23:00:35 +1200230 help
231 This driver supports the network interface units in the
232 Marvell Orion5x and Kirkwood SoCs
233
Chris Packham919041c2017-08-21 20:17:03 +1200234config MVNETA
Miquel Raynal59d42cd2017-12-28 15:43:09 +0100235 bool "Marvell Armada XP/385/3700 network interface support"
236 depends on ARMADA_XP || ARMADA_38X || ARMADA_3700
Chris Packham919041c2017-08-21 20:17:03 +1200237 select PHYLIB
238 help
239 This driver supports the network interface units in the
Miquel Raynal59d42cd2017-12-28 15:43:09 +0100240 Marvell ARMADA XP, ARMADA 38X and ARMADA 3700 SoCs
Chris Packham919041c2017-08-21 20:17:03 +1200241
Stefan Roese96c19042016-02-10 07:22:10 +0100242config MVPP2
Stefan Roese78a112b2017-02-15 11:42:59 +0100243 bool "Marvell Armada 375/7K/8K network interface support"
244 depends on ARMADA_375 || ARMADA_8K
Stefan Roese96c19042016-02-10 07:22:10 +0100245 select PHYLIB
246 help
247 This driver supports the network interface units in the
Stefan Roese78a112b2017-02-15 11:42:59 +0100248 Marvell ARMADA 375, 7K and 8K SoCs.
Stefan Roese96c19042016-02-10 07:22:10 +0100249
Wenyou Yange7183de2016-11-02 10:06:55 +0800250config MACB
251 bool "Cadence MACB/GEM Ethernet Interface"
252 depends on DM_ETH
253 select PHYLIB
254 help
255 The Cadence MACB ethernet interface is found on many Atmel
256 AT91 and SAMA5 parts. This driver also supports the Cadence
257 GEM (Gigabit Ethernet MAC) found in some ARM SoC devices.
258 Say Y to include support for the MACB/GEM chip.
259
Wilson Lee41d6d1e2017-08-22 20:25:07 -0700260config MACB_ZYNQ
261 bool "Cadence MACB/GEM Ethernet Interface for Xilinx Zynq"
262 depends on MACB
263 help
264 The Cadence MACB ethernet interface was used on Zynq platform.
265 Say Y to enable support for the MACB/GEM in Zynq chip.
266
Stefan Roesef9947682018-10-26 14:53:27 +0200267config MT7628_ETH
268 bool "MediaTek MT7628 Ethernet Interface"
269 depends on ARCH_MT7620
270 help
271 The MediaTek MT7628 ethernet interface is used on MT7628 and
272 MT7688 based boards.
273
Bin Meng64d3dca2015-08-27 22:25:58 -0700274config PCH_GBE
275 bool "Intel Platform Controller Hub EG20T GMAC driver"
276 depends on DM_ETH && DM_PCI
277 select PHYLIB
278 help
279 This MAC is present in Intel Platform Controller Hub EG20T. It
280 supports 10/100/1000 Mbps operation.
281
Mylène Josserande44eb3a2017-04-02 12:59:08 +0200282config RGMII
283 bool "Enable RGMII"
284 help
285 Enable the support of the Reduced Gigabit Media-Independent
286 Interface (RGMII).
287
Adam Ford53705472018-07-20 23:03:57 -0500288config MII
289 bool "Enable MII"
290 help
291 Enable support of the Media-Independent Interface (MII)
292
Bin Menga6448df2016-03-21 06:47:41 -0700293config RTL8139
294 bool "Realtek 8139 series Ethernet controller driver"
295 help
296 This driver supports Realtek 8139 series fast ethernet family of
297 PCI chipsets/adapters.
298
Bin Meng29971222016-03-21 06:47:42 -0700299config RTL8169
300 bool "Realtek 8169 series Ethernet controller driver"
301 help
302 This driver supports Realtek 8169 series gigabit ethernet family of
303 PCI/PCIe chipsets/adapters.
304
Adam Ford0a044f82017-09-05 15:20:44 -0500305config SMC911X
306 bool "SMSC LAN911x and LAN921x controller driver"
307
308if SMC911X
309
310config SMC911X_BASE
311 hex "SMC911X Base Address"
312 help
313 Define this to hold the physical address
314 of the device (I/O space)
315
316choice
317 prompt "SMC911X bus width"
318 default SMC911X_16_BIT
319
320config SMC911X_32_BIT
321 bool "Enable 32-bit interface"
322
323config SMC911X_16_BIT
324 bool "Enable 16-bit interface"
325 help
326 Define this if data bus is 16 bits. If your processor
327 automatically converts one 32 bit word to two 16 bit
328 words you may also try CONFIG_SMC911X_32_BIT.
329
330endchoice
331endif #SMC911X
332
Mylène Josserandc1506ef2017-04-02 12:59:03 +0200333config SUN7I_GMAC
334 bool "Enable Allwinner GMAC Ethernet support"
335 help
336 Enable the support for Sun7i GMAC Ethernet controller
337
Stefan Mavrodieveaee8582017-11-03 08:56:51 +0200338config SUN7I_GMAC_FORCE_TXERR
339 bool "Force PA17 as gmac function"
340 depends on SUN7I_GMAC
341 help
342 Some ethernet phys needs TXERR control. Since the GMAC
343 doesn't have such signal, setting PA17 as GMAC function
344 makes the pin output low, which enables data transmission.
345
Mylène Josserand43ef1842017-04-02 12:59:07 +0200346config SUN4I_EMAC
347 bool "Allwinner Sun4i Ethernet MAC support"
348 depends on DM_ETH
Artturi Alm8ed09172017-11-08 05:08:58 +0200349 select PHYLIB
Mylène Josserand43ef1842017-04-02 12:59:07 +0200350 help
351 This driver supports the Allwinner based SUN4I Ethernet MAC.
352
Amit Singh Tomard194c0e2016-07-06 17:59:44 +0530353config SUN8I_EMAC
354 bool "Allwinner Sun8i Ethernet MAC support"
355 depends on DM_ETH
356 select PHYLIB
Philipp Tomsich00c33612017-03-26 18:50:23 +0200357 select PHY_GIGE
Amit Singh Tomard194c0e2016-07-06 17:59:44 +0530358 help
359 This driver supports the Allwinner based SUN8I/SUN50I Ethernet MAC.
360 It can be found in H3/A64/A83T based SoCs and compatible with both
Tom Rini1eee1172017-02-20 09:38:03 -0500361 External and Internal PHYs.
Amit Singh Tomard194c0e2016-07-06 17:59:44 +0530362
Nobuhiro Iwamatsuf593ecb2017-12-01 16:08:03 +0900363config SH_ETHER
364 bool "Renesas SH Ethernet MAC"
365 select PHYLIB
366 help
367 This driver supports the Ethernet for Renesas SH and ARM SoCs.
368
Grygorii Strashko5693dee2018-10-31 16:21:39 -0500369source "drivers/net/ti/Kconfig"
Adam Ford53705472018-07-20 23:03:57 -0500370
Michal Simek07d204f2015-12-09 16:54:42 +0100371config XILINX_AXIEMAC
372 depends on DM_ETH && (MICROBLAZE || ARCH_ZYNQ || ARCH_ZYNQMP)
373 select PHYLIB
374 select MII
375 bool "Xilinx AXI Ethernet"
376 help
377 This MAC is present in Xilinx Microblaze, Zynq and ZynqMP SoCs.
378
Michal Simekeaee95a2015-12-11 09:41:49 +0100379config XILINX_EMACLITE
Zubair Lutfullah Kakakhelc6811092016-07-27 12:25:09 +0100380 depends on DM_ETH && (MICROBLAZE || ARCH_ZYNQ || ARCH_ZYNQMP || MIPS)
Michal Simekeaee95a2015-12-11 09:41:49 +0100381 select PHYLIB
382 select MII
383 bool "Xilinx Ethernetlite"
384 help
385 This MAC is present in Xilinx Microblaze, Zynq and ZynqMP SoCs.
386
Michal Simek3d7285f2015-11-30 14:34:52 +0100387config ZYNQ_GEM
Michal Simek4b066a12018-08-22 14:55:27 +0200388 depends on DM_ETH && (ARCH_ZYNQ || ARCH_ZYNQMP || ARCH_VERSAL)
Michal Simek27ba0902015-12-11 09:14:31 +0100389 select PHYLIB
Michal Simek3d7285f2015-11-30 14:34:52 +0100390 bool "Xilinx Ethernet GEM"
391 help
Michal Simek7fb1d232015-12-09 16:53:52 +0100392 This MAC is present in Xilinx Zynq and ZynqMP SoCs.
Michal Simek3d7285f2015-11-30 14:34:52 +0100393
Purna Chandra Mandal6b731c92016-01-28 15:30:21 +0530394config PIC32_ETH
395 bool "Microchip PIC32 Ethernet Support"
396 depends on DM_ETH && MACH_PIC32
397 select PHYLIB
398 help
399 This driver implements 10/100 Mbps Ethernet and MAC layer for
400 Microchip PIC32 microcontrollers.
401
Sjoerd Simons54c46f92017-01-11 11:46:11 +0100402config GMAC_ROCKCHIP
403 bool "Rockchip Synopsys Designware Ethernet MAC"
404 depends on DM_ETH && ETH_DESIGNWARE
405 help
406 This driver provides Rockchip SoCs network support based on the
407 Synopsys Designware driver.
408
Marek Vasut17714cb2017-05-13 15:54:28 +0200409config RENESAS_RAVB
410 bool "Renesas Ethernet AVB MAC"
411 depends on DM_ETH && RCAR_GEN3
412 select PHYLIB
413 help
414 This driver implements support for the Ethernet AVB block in
415 Renesas M3 and H3 SoCs.
416
Christophe Leroy56ef30a2017-07-06 10:33:23 +0200417config MPC8XX_FEC
418 bool "Fast Ethernet Controller on MPC8XX"
Christophe Leroyb3510fb2018-03-16 17:20:41 +0100419 depends on MPC8xx
Christophe Leroy56ef30a2017-07-06 10:33:23 +0200420 select MII
421 help
422 This driver implements support for the Fast Ethernet Controller
423 on MPC8XX
424
Kunihiko Hayashi7dcdc222018-05-24 19:24:37 +0900425config SNI_AVE
426 bool "Socionext AVE Ethernet support"
427 depends on DM_ETH && ARCH_UNIPHIER
428 select PHYLIB
429 select SYSCON
430 select REGMAP
431 help
432 This driver implements support for the Socionext AVE Ethernet
433 controller, as found on the Socionext UniPhier family.
434
Christophe Leroy56ef30a2017-07-06 10:33:23 +0200435config ETHER_ON_FEC1
436 bool "FEC1"
437 depends on MPC8XX_FEC
438 default y
439
440config FEC1_PHY
441 int "FEC1 PHY"
442 depends on ETHER_ON_FEC1
443 default -1
444 help
445 Define to the hardcoded PHY address which corresponds
446 to the given FEC; i. e.
447 #define CONFIG_FEC1_PHY 4
448 means that the PHY with address 4 is connected to FEC1
449
450 When set to -1, means to probe for first available.
451
452config PHY_NORXERR
453 bool "PHY_NORXERR"
454 depends on ETHER_ON_FEC1
455 default n
456 help
457 The PHY does not have a RXERR line (RMII only).
458 (so program the FEC to ignore it).
459
460config ETHER_ON_FEC2
461 bool "FEC2"
462 depends on MPC8XX_FEC && MPC885
463 default y
464
465config FEC2_PHY
466 int "FEC2 PHY"
467 depends on ETHER_ON_FEC2
468 default -1
469 help
470 Define to the hardcoded PHY address which corresponds
471 to the given FEC; i. e.
472 #define CONFIG_FEC1_PHY 4
473 means that the PHY with address 4 is connected to FEC1
474
475 When set to -1, means to probe for first available.
476
477config FEC2_PHY_NORXERR
478 bool "PHY_NORXERR"
479 depends on ETHER_ON_FEC2
480 default n
481 help
482 The PHY does not have a RXERR line (RMII only).
483 (so program the FEC to ignore it).
484
Ahmed Mansour816bc412017-12-15 16:01:01 -0500485config SYS_DPAA_QBMAN
486 bool "Device tree fixup for QBMan on freescale SOCs"
487 depends on (ARM || PPC) && !SPL_BUILD
488 default y if ARCH_B4860 || \
489 ARCH_B4420 || \
490 ARCH_P1023 || \
491 ARCH_P2041 || \
492 ARCH_T1023 || \
493 ARCH_T1024 || \
494 ARCH_T1040 || \
495 ARCH_T1042 || \
496 ARCH_T2080 || \
497 ARCH_T2081 || \
498 ARCH_T4240 || \
499 ARCH_T4160 || \
500 ARCH_P4080 || \
501 ARCH_P3041 || \
502 ARCH_P5040 || \
503 ARCH_P5020 || \
504 ARCH_LS1043A || \
505 ARCH_LS1046A
506 help
507 QBman fixups to allow deep sleep in DPAA 1 SOCs
508
Mario Sixda4fc932018-03-28 14:38:18 +0200509config TSEC_ENET
510 select PHYLIB
511 bool "Enable Three-Speed Ethernet Controller"
512 help
513 This driver implements support for the (Enhanced) Three-Speed
514 Ethernet Controller found on Freescale SoCs.
515
developerc3ac93d2018-12-20 16:12:53 +0800516config MEDIATEK_ETH
517 bool "MediaTek Ethernet GMAC Driver"
518 depends on DM_ETH
519 select PHYLIB
520 select DM_GPIO
521 select DM_RESET
522 help
523 This Driver support MediaTek Ethernet GMAC
524 Say Y to enable support for the MediaTek Ethernet GMAC.
525
Joe Hershberger6ab76992015-03-22 17:09:13 -0500526endif # NETDEVICES