blob: 8fb365fc5d2a64165dff2a4f003499f73759e68a [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
Stephen Warren50709602016-10-21 14:46:47 -060075config DWC_ETH_QOS
76 bool "Synopsys DWC Ethernet QOS device support"
77 depends on DM_ETH
78 select PHYLIB
79 help
80 This driver supports the Synopsys Designware Ethernet QOS (Quality
81 Of Service) IP block. The IP supports many options for bus type,
82 clocking/reset structure, and feature list. This driver currently
83 supports the specific configuration used in NVIDIA's Tegra186 chip,
84 but should be extensible to other combinations quite easily.
85
Simon Glassa83ccd52015-08-19 09:33:41 -060086config E1000
87 bool "Intel PRO/1000 Gigabit Ethernet support"
88 help
89 This driver supports Intel(R) PRO/1000 gigabit ethernet family of
90 adapters. For more information on how to identify your adapter, go
91 to the Adapter & Driver ID Guide at:
92
93 <http://support.intel.com/support/network/adapter/pro100/21397.htm>
94
95config E1000_SPI_GENERIC
96 bool "Allow access to the Intel 8257x SPI bus"
97 depends on E1000
98 help
99 Allow generic access to the SPI bus on the Intel 8257x, for
100 example with the "sspi" command.
101
102config E1000_SPI
103 bool "Enable SPI bus utility code"
104 depends on E1000
105 help
106 Utility code for direct access to the SPI bus on Intel 8257x.
107 This does not do anything useful unless you set at least one
108 of CONFIG_CMD_E1000 or CONFIG_E1000_SPI_GENERIC.
109
110config CMD_E1000
111 bool "Enable the e1000 command"
112 depends on E1000
113 help
114 This enables the 'e1000' management command for E1000 devices. When
115 used on devices with SPI support you can reprogram the EEPROM from
116 U-Boot.
117
Joe Hershberger6ab76992015-03-22 17:09:13 -0500118config ETH_SANDBOX
119 depends on DM_ETH && SANDBOX
120 default y
121 bool "Sandbox: Mocked Ethernet driver"
122 help
123 This driver simply responds with fake ARP replies and ping
124 replies that are used to verify network stack functionality
125
126 This driver is particularly useful in the test/dm/eth.c tests
127
Joe Hershberger586cbd12015-03-22 17:09:21 -0500128config ETH_SANDBOX_RAW
129 depends on DM_ETH && SANDBOX
130 default y
131 bool "Sandbox: Bridge to Linux Raw Sockets"
132 help
133 This driver is a bridge from the bottom of the network stack
134 in U-Boot to the RAW AF_PACKET API in Linux. This allows real
135 network traffic to be tested from within sandbox. See
136 board/sandbox/README.sandbox for more details.
137
Simon Glass6e378742015-04-05 16:07:34 -0600138config ETH_DESIGNWARE
139 bool "Synopsys Designware Ethernet MAC"
Thomas Chou7a0dfa62015-12-07 20:53:29 +0800140 select PHYLIB
Simon Glass6e378742015-04-05 16:07:34 -0600141 help
142 This MAC is present in SoCs from various vendors. It supports
143 100Mbit and 1 Gbit operation. You must enable CONFIG_PHYLIB to
144 provide the PHY (physical media interface).
145
Marek Vasut0d9a4a02018-08-13 19:32:14 +0200146config ETH_DESIGNWARE_SOCFPGA
147 bool "Altera SoCFPGA extras for Synopsys Designware Ethernet MAC"
148 depends on DM_ETH && ETH_DESIGNWARE
149 help
150 The Altera SoCFPGA requires additional configuration of the
151 Altera system manager to correctly interface with the PHY.
152 This code handles those SoC specifics.
153
Max Filippove07d3d22016-08-05 18:26:15 +0300154config ETHOC
155 bool "OpenCores 10/100 Mbps Ethernet MAC"
156 help
157 This MAC is present in OpenRISC and Xtensa XTFPGA boards.
158
Peng Fana65e0362018-03-28 20:54:14 +0800159config FEC_MXC_SHARE_MDIO
160 bool "Share the MDIO bus for FEC controller"
161 depends on FEC_MXC
162
163config FEC_MXC_MDIO_BASE
164 hex "MDIO base address for the FEC controller"
165 depends on FEC_MXC_SHARE_MDIO
166 help
167 This specifies the MDIO registers base address. It is used when
168 two FEC controllers share MDIO bus.
169
Jagan Tekia48af852016-10-08 18:00:12 +0530170config FEC_MXC
171 bool "FEC Ethernet controller"
Anatolij Gustschinb71fc5e2018-10-18 16:15:11 +0200172 depends on MX5 || MX6 || MX7 || IMX8
Jagan Tekia48af852016-10-08 18:00:12 +0530173 help
174 This driver supports the 10/100 Fast Ethernet controller for
175 NXP i.MX processors.
176
Tom Rinic5ea8ed2017-05-26 11:18:53 -0400177config FTMAC100
178 bool "Ftmac100 Ethernet Support"
179 help
180 This MAC is present in Andestech SoCs.
181
Cédric Le Goater38b33e92018-10-29 07:06:31 +0100182config FTGMAC100
183 bool "Ftgmac100 Ethernet Support"
184 depends on DM_ETH
185 select PHYLIB
186 help
187 This driver supports the Faraday's FTGMAC100 Gigabit SoC
188 Ethernet controller that can be found on Aspeed SoCs (which
189 include NCSI).
190
191 It is fully compliant with IEEE 802.3 specification for
192 10/100 Mbps Ethernet and IEEE 802.3z specification for 1000
193 Mbps Ethernet and includes Reduced Media Independent
194 Interface (RMII) and Reduced Gigabit Media Independent
195 Interface (RGMII) interfaces. It adopts an AHB bus interface
196 and integrates a link list DMA engine with direct M-Bus
197 accesses for transmitting and receiving packets. It has
198 independent TX/RX fifos, supports half and full duplex (1000
199 Mbps mode only supports full duplex), flow control for full
200 duplex and backpressure for half duplex.
201
202 The FTGMAC100 also implements IP, TCP, UDP checksum offloads
203 and supports IEEE 802.1Q VLAN tag insertion and removal. It
204 offers high-priority transmit queue for QoS and CoS
205 applications.
206
207
Chris Packham943679d2018-05-03 23:00:35 +1200208config MVGBE
209 bool "Marvell Orion5x/Kirkwood network interface support"
210 depends on KIRKWOOD || ORION5X
Chris Packham1de16f72018-07-09 21:34:00 +1200211 select PHYLIB if DM_ETH
Chris Packham943679d2018-05-03 23:00:35 +1200212 help
213 This driver supports the network interface units in the
214 Marvell Orion5x and Kirkwood SoCs
215
Chris Packham919041c2017-08-21 20:17:03 +1200216config MVNETA
Miquel Raynal59d42cd2017-12-28 15:43:09 +0100217 bool "Marvell Armada XP/385/3700 network interface support"
218 depends on ARMADA_XP || ARMADA_38X || ARMADA_3700
Chris Packham919041c2017-08-21 20:17:03 +1200219 select PHYLIB
220 help
221 This driver supports the network interface units in the
Miquel Raynal59d42cd2017-12-28 15:43:09 +0100222 Marvell ARMADA XP, ARMADA 38X and ARMADA 3700 SoCs
Chris Packham919041c2017-08-21 20:17:03 +1200223
Stefan Roese96c19042016-02-10 07:22:10 +0100224config MVPP2
Stefan Roese78a112b2017-02-15 11:42:59 +0100225 bool "Marvell Armada 375/7K/8K network interface support"
226 depends on ARMADA_375 || ARMADA_8K
Stefan Roese96c19042016-02-10 07:22:10 +0100227 select PHYLIB
228 help
229 This driver supports the network interface units in the
Stefan Roese78a112b2017-02-15 11:42:59 +0100230 Marvell ARMADA 375, 7K and 8K SoCs.
Stefan Roese96c19042016-02-10 07:22:10 +0100231
Wenyou Yange7183de2016-11-02 10:06:55 +0800232config MACB
233 bool "Cadence MACB/GEM Ethernet Interface"
234 depends on DM_ETH
235 select PHYLIB
236 help
237 The Cadence MACB ethernet interface is found on many Atmel
238 AT91 and SAMA5 parts. This driver also supports the Cadence
239 GEM (Gigabit Ethernet MAC) found in some ARM SoC devices.
240 Say Y to include support for the MACB/GEM chip.
241
Wilson Lee41d6d1e2017-08-22 20:25:07 -0700242config MACB_ZYNQ
243 bool "Cadence MACB/GEM Ethernet Interface for Xilinx Zynq"
244 depends on MACB
245 help
246 The Cadence MACB ethernet interface was used on Zynq platform.
247 Say Y to enable support for the MACB/GEM in Zynq chip.
248
Stefan Roesef9947682018-10-26 14:53:27 +0200249config MT7628_ETH
250 bool "MediaTek MT7628 Ethernet Interface"
251 depends on ARCH_MT7620
252 help
253 The MediaTek MT7628 ethernet interface is used on MT7628 and
254 MT7688 based boards.
255
Bin Meng64d3dca2015-08-27 22:25:58 -0700256config PCH_GBE
257 bool "Intel Platform Controller Hub EG20T GMAC driver"
258 depends on DM_ETH && DM_PCI
259 select PHYLIB
260 help
261 This MAC is present in Intel Platform Controller Hub EG20T. It
262 supports 10/100/1000 Mbps operation.
263
Mylène Josserande44eb3a2017-04-02 12:59:08 +0200264config RGMII
265 bool "Enable RGMII"
266 help
267 Enable the support of the Reduced Gigabit Media-Independent
268 Interface (RGMII).
269
Adam Ford53705472018-07-20 23:03:57 -0500270config MII
271 bool "Enable MII"
272 help
273 Enable support of the Media-Independent Interface (MII)
274
Bin Menga6448df2016-03-21 06:47:41 -0700275config RTL8139
276 bool "Realtek 8139 series Ethernet controller driver"
277 help
278 This driver supports Realtek 8139 series fast ethernet family of
279 PCI chipsets/adapters.
280
Bin Meng29971222016-03-21 06:47:42 -0700281config RTL8169
282 bool "Realtek 8169 series Ethernet controller driver"
283 help
284 This driver supports Realtek 8169 series gigabit ethernet family of
285 PCI/PCIe chipsets/adapters.
286
Adam Ford0a044f82017-09-05 15:20:44 -0500287config SMC911X
288 bool "SMSC LAN911x and LAN921x controller driver"
289
290if SMC911X
291
292config SMC911X_BASE
293 hex "SMC911X Base Address"
294 help
295 Define this to hold the physical address
296 of the device (I/O space)
297
298choice
299 prompt "SMC911X bus width"
300 default SMC911X_16_BIT
301
302config SMC911X_32_BIT
303 bool "Enable 32-bit interface"
304
305config SMC911X_16_BIT
306 bool "Enable 16-bit interface"
307 help
308 Define this if data bus is 16 bits. If your processor
309 automatically converts one 32 bit word to two 16 bit
310 words you may also try CONFIG_SMC911X_32_BIT.
311
312endchoice
313endif #SMC911X
314
Mylène Josserandc1506ef2017-04-02 12:59:03 +0200315config SUN7I_GMAC
316 bool "Enable Allwinner GMAC Ethernet support"
317 help
318 Enable the support for Sun7i GMAC Ethernet controller
319
Stefan Mavrodieveaee8582017-11-03 08:56:51 +0200320config SUN7I_GMAC_FORCE_TXERR
321 bool "Force PA17 as gmac function"
322 depends on SUN7I_GMAC
323 help
324 Some ethernet phys needs TXERR control. Since the GMAC
325 doesn't have such signal, setting PA17 as GMAC function
326 makes the pin output low, which enables data transmission.
327
Mylène Josserand43ef1842017-04-02 12:59:07 +0200328config SUN4I_EMAC
329 bool "Allwinner Sun4i Ethernet MAC support"
330 depends on DM_ETH
Artturi Alm8ed09172017-11-08 05:08:58 +0200331 select PHYLIB
Mylène Josserand43ef1842017-04-02 12:59:07 +0200332 help
333 This driver supports the Allwinner based SUN4I Ethernet MAC.
334
Amit Singh Tomard194c0e2016-07-06 17:59:44 +0530335config SUN8I_EMAC
336 bool "Allwinner Sun8i Ethernet MAC support"
337 depends on DM_ETH
338 select PHYLIB
Philipp Tomsich00c33612017-03-26 18:50:23 +0200339 select PHY_GIGE
Amit Singh Tomard194c0e2016-07-06 17:59:44 +0530340 help
341 This driver supports the Allwinner based SUN8I/SUN50I Ethernet MAC.
342 It can be found in H3/A64/A83T based SoCs and compatible with both
Tom Rini1eee1172017-02-20 09:38:03 -0500343 External and Internal PHYs.
Amit Singh Tomard194c0e2016-07-06 17:59:44 +0530344
Nobuhiro Iwamatsuf593ecb2017-12-01 16:08:03 +0900345config SH_ETHER
346 bool "Renesas SH Ethernet MAC"
347 select PHYLIB
348 help
349 This driver supports the Ethernet for Renesas SH and ARM SoCs.
350
Grygorii Strashko5693dee2018-10-31 16:21:39 -0500351source "drivers/net/ti/Kconfig"
Adam Ford53705472018-07-20 23:03:57 -0500352
Michal Simek07d204f2015-12-09 16:54:42 +0100353config XILINX_AXIEMAC
354 depends on DM_ETH && (MICROBLAZE || ARCH_ZYNQ || ARCH_ZYNQMP)
355 select PHYLIB
356 select MII
357 bool "Xilinx AXI Ethernet"
358 help
359 This MAC is present in Xilinx Microblaze, Zynq and ZynqMP SoCs.
360
Michal Simekeaee95a2015-12-11 09:41:49 +0100361config XILINX_EMACLITE
Zubair Lutfullah Kakakhelc6811092016-07-27 12:25:09 +0100362 depends on DM_ETH && (MICROBLAZE || ARCH_ZYNQ || ARCH_ZYNQMP || MIPS)
Michal Simekeaee95a2015-12-11 09:41:49 +0100363 select PHYLIB
364 select MII
365 bool "Xilinx Ethernetlite"
366 help
367 This MAC is present in Xilinx Microblaze, Zynq and ZynqMP SoCs.
368
Michal Simek3d7285f2015-11-30 14:34:52 +0100369config ZYNQ_GEM
Michal Simek4b066a12018-08-22 14:55:27 +0200370 depends on DM_ETH && (ARCH_ZYNQ || ARCH_ZYNQMP || ARCH_VERSAL)
Michal Simek27ba0902015-12-11 09:14:31 +0100371 select PHYLIB
Michal Simek3d7285f2015-11-30 14:34:52 +0100372 bool "Xilinx Ethernet GEM"
373 help
Michal Simek7fb1d232015-12-09 16:53:52 +0100374 This MAC is present in Xilinx Zynq and ZynqMP SoCs.
Michal Simek3d7285f2015-11-30 14:34:52 +0100375
Purna Chandra Mandal6b731c92016-01-28 15:30:21 +0530376config PIC32_ETH
377 bool "Microchip PIC32 Ethernet Support"
378 depends on DM_ETH && MACH_PIC32
379 select PHYLIB
380 help
381 This driver implements 10/100 Mbps Ethernet and MAC layer for
382 Microchip PIC32 microcontrollers.
383
Sjoerd Simons54c46f92017-01-11 11:46:11 +0100384config GMAC_ROCKCHIP
385 bool "Rockchip Synopsys Designware Ethernet MAC"
386 depends on DM_ETH && ETH_DESIGNWARE
387 help
388 This driver provides Rockchip SoCs network support based on the
389 Synopsys Designware driver.
390
Marek Vasut17714cb2017-05-13 15:54:28 +0200391config RENESAS_RAVB
392 bool "Renesas Ethernet AVB MAC"
393 depends on DM_ETH && RCAR_GEN3
394 select PHYLIB
395 help
396 This driver implements support for the Ethernet AVB block in
397 Renesas M3 and H3 SoCs.
398
Christophe Leroy56ef30a2017-07-06 10:33:23 +0200399config MPC8XX_FEC
400 bool "Fast Ethernet Controller on MPC8XX"
Christophe Leroyb3510fb2018-03-16 17:20:41 +0100401 depends on MPC8xx
Christophe Leroy56ef30a2017-07-06 10:33:23 +0200402 select MII
403 help
404 This driver implements support for the Fast Ethernet Controller
405 on MPC8XX
406
Kunihiko Hayashi7dcdc222018-05-24 19:24:37 +0900407config SNI_AVE
408 bool "Socionext AVE Ethernet support"
409 depends on DM_ETH && ARCH_UNIPHIER
410 select PHYLIB
411 select SYSCON
412 select REGMAP
413 help
414 This driver implements support for the Socionext AVE Ethernet
415 controller, as found on the Socionext UniPhier family.
416
Christophe Leroy56ef30a2017-07-06 10:33:23 +0200417config ETHER_ON_FEC1
418 bool "FEC1"
419 depends on MPC8XX_FEC
420 default y
421
422config FEC1_PHY
423 int "FEC1 PHY"
424 depends on ETHER_ON_FEC1
425 default -1
426 help
427 Define to the hardcoded PHY address which corresponds
428 to the given FEC; i. e.
429 #define CONFIG_FEC1_PHY 4
430 means that the PHY with address 4 is connected to FEC1
431
432 When set to -1, means to probe for first available.
433
434config PHY_NORXERR
435 bool "PHY_NORXERR"
436 depends on ETHER_ON_FEC1
437 default n
438 help
439 The PHY does not have a RXERR line (RMII only).
440 (so program the FEC to ignore it).
441
442config ETHER_ON_FEC2
443 bool "FEC2"
444 depends on MPC8XX_FEC && MPC885
445 default y
446
447config FEC2_PHY
448 int "FEC2 PHY"
449 depends on ETHER_ON_FEC2
450 default -1
451 help
452 Define to the hardcoded PHY address which corresponds
453 to the given FEC; i. e.
454 #define CONFIG_FEC1_PHY 4
455 means that the PHY with address 4 is connected to FEC1
456
457 When set to -1, means to probe for first available.
458
459config FEC2_PHY_NORXERR
460 bool "PHY_NORXERR"
461 depends on ETHER_ON_FEC2
462 default n
463 help
464 The PHY does not have a RXERR line (RMII only).
465 (so program the FEC to ignore it).
466
Ahmed Mansour816bc412017-12-15 16:01:01 -0500467config SYS_DPAA_QBMAN
468 bool "Device tree fixup for QBMan on freescale SOCs"
469 depends on (ARM || PPC) && !SPL_BUILD
470 default y if ARCH_B4860 || \
471 ARCH_B4420 || \
472 ARCH_P1023 || \
473 ARCH_P2041 || \
474 ARCH_T1023 || \
475 ARCH_T1024 || \
476 ARCH_T1040 || \
477 ARCH_T1042 || \
478 ARCH_T2080 || \
479 ARCH_T2081 || \
480 ARCH_T4240 || \
481 ARCH_T4160 || \
482 ARCH_P4080 || \
483 ARCH_P3041 || \
484 ARCH_P5040 || \
485 ARCH_P5020 || \
486 ARCH_LS1043A || \
487 ARCH_LS1046A
488 help
489 QBman fixups to allow deep sleep in DPAA 1 SOCs
490
Mario Sixda4fc932018-03-28 14:38:18 +0200491config TSEC_ENET
492 select PHYLIB
493 bool "Enable Three-Speed Ethernet Controller"
494 help
495 This driver implements support for the (Enhanced) Three-Speed
496 Ethernet Controller found on Freescale SoCs.
497
Joe Hershberger6ab76992015-03-22 17:09:13 -0500498endif # NETDEVICES