blob: 3ce46c84907668293034ba76d1955c085adbf15a [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
Alex Kiernanf1531ad2018-04-01 09:22:34 +000014config 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
Joe Hershberger6ab76992015-03-22 17:09:13 -050021menuconfig NETDEVICES
22 bool "Network device support"
23 depends on NET
Joe Hershberger5a9d7f12015-06-22 16:15:30 -050024 default y if DM_ETH
Joe Hershberger6ab76992015-03-22 17:09:13 -050025 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
Philipp Tomsich00c33612017-03-26 18:50:23 +020033config 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
Marek Vasut0a3d0e12016-05-24 23:29:09 +020040config 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
Thomas Chouec06dd82015-10-22 15:29:11 +080049config 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
Suji Velupillaid2f677a2017-07-10 14:05:41 -070058config 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
Stephen Warren50709602016-10-21 14:46:47 -060082config 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
Simon Glassa83ccd52015-08-19 09:33:41 -060093config 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
Joe Hershberger6ab76992015-03-22 17:09:13 -0500125config 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
Joe Hershberger586cbd12015-03-22 17:09:21 -0500135config 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
Simon Glass6e378742015-04-05 16:07:34 -0600145config ETH_DESIGNWARE
146 bool "Synopsys Designware Ethernet MAC"
Thomas Chou7a0dfa62015-12-07 20:53:29 +0800147 select PHYLIB
Simon Glass6e378742015-04-05 16:07:34 -0600148 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
Marek Vasut0d9a4a02018-08-13 19:32:14 +0200153config 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
Max Filippove07d3d22016-08-05 18:26:15 +0300161config ETHOC
162 bool "OpenCores 10/100 Mbps Ethernet MAC"
163 help
164 This MAC is present in OpenRISC and Xtensa XTFPGA boards.
165
Peng Fana65e0362018-03-28 20:54:14 +0800166config 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
Jagan Tekia48af852016-10-08 18:00:12 +0530177config FEC_MXC
178 bool "FEC Ethernet controller"
Anatolij Gustschinb71fc5e2018-10-18 16:15:11 +0200179 depends on MX5 || MX6 || MX7 || IMX8
Jagan Tekia48af852016-10-08 18:00:12 +0530180 help
181 This driver supports the 10/100 Fast Ethernet controller for
182 NXP i.MX processors.
183
Tom Rinic5ea8ed2017-05-26 11:18:53 -0400184config FTMAC100
185 bool "Ftmac100 Ethernet Support"
186 help
187 This MAC is present in Andestech SoCs.
188
Chris Packham943679d2018-05-03 23:00:35 +1200189config MVGBE
190 bool "Marvell Orion5x/Kirkwood network interface support"
191 depends on KIRKWOOD || ORION5X
Chris Packham1de16f72018-07-09 21:34:00 +1200192 select PHYLIB if DM_ETH
Chris Packham943679d2018-05-03 23:00:35 +1200193 help
194 This driver supports the network interface units in the
195 Marvell Orion5x and Kirkwood SoCs
196
Chris Packham919041c2017-08-21 20:17:03 +1200197config MVNETA
Miquel Raynal59d42cd2017-12-28 15:43:09 +0100198 bool "Marvell Armada XP/385/3700 network interface support"
199 depends on ARMADA_XP || ARMADA_38X || ARMADA_3700
Chris Packham919041c2017-08-21 20:17:03 +1200200 select PHYLIB
201 help
202 This driver supports the network interface units in the
Miquel Raynal59d42cd2017-12-28 15:43:09 +0100203 Marvell ARMADA XP, ARMADA 38X and ARMADA 3700 SoCs
Chris Packham919041c2017-08-21 20:17:03 +1200204
Stefan Roese96c19042016-02-10 07:22:10 +0100205config MVPP2
Stefan Roese78a112b2017-02-15 11:42:59 +0100206 bool "Marvell Armada 375/7K/8K network interface support"
207 depends on ARMADA_375 || ARMADA_8K
Stefan Roese96c19042016-02-10 07:22:10 +0100208 select PHYLIB
209 help
210 This driver supports the network interface units in the
Stefan Roese78a112b2017-02-15 11:42:59 +0100211 Marvell ARMADA 375, 7K and 8K SoCs.
Stefan Roese96c19042016-02-10 07:22:10 +0100212
Wenyou Yange7183de2016-11-02 10:06:55 +0800213config 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
Wilson Lee41d6d1e2017-08-22 20:25:07 -0700223config 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
Stefan Roesef9947682018-10-26 14:53:27 +0200230config 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
Bin Meng64d3dca2015-08-27 22:25:58 -0700237config 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
Mylène Josserande44eb3a2017-04-02 12:59:08 +0200245config RGMII
246 bool "Enable RGMII"
247 help
248 Enable the support of the Reduced Gigabit Media-Independent
249 Interface (RGMII).
250
Adam Ford53705472018-07-20 23:03:57 -0500251config MII
252 bool "Enable MII"
253 help
254 Enable support of the Media-Independent Interface (MII)
255
Bin Menga6448df2016-03-21 06:47:41 -0700256config 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
Bin Meng29971222016-03-21 06:47:42 -0700262config 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
Adam Ford0a044f82017-09-05 15:20:44 -0500268config 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
Mylène Josserandc1506ef2017-04-02 12:59:03 +0200296config SUN7I_GMAC
297 bool "Enable Allwinner GMAC Ethernet support"
298 help
299 Enable the support for Sun7i GMAC Ethernet controller
300
Stefan Mavrodieveaee8582017-11-03 08:56:51 +0200301config 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
Mylène Josserand43ef1842017-04-02 12:59:07 +0200309config SUN4I_EMAC
310 bool "Allwinner Sun4i Ethernet MAC support"
311 depends on DM_ETH
Artturi Alm8ed09172017-11-08 05:08:58 +0200312 select PHYLIB
Mylène Josserand43ef1842017-04-02 12:59:07 +0200313 help
314 This driver supports the Allwinner based SUN4I Ethernet MAC.
315
Amit Singh Tomard194c0e2016-07-06 17:59:44 +0530316config SUN8I_EMAC
317 bool "Allwinner Sun8i Ethernet MAC support"
318 depends on DM_ETH
319 select PHYLIB
Philipp Tomsich00c33612017-03-26 18:50:23 +0200320 select PHY_GIGE
Amit Singh Tomard194c0e2016-07-06 17:59:44 +0530321 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
Tom Rini1eee1172017-02-20 09:38:03 -0500324 External and Internal PHYs.
Amit Singh Tomard194c0e2016-07-06 17:59:44 +0530325
Nobuhiro Iwamatsuf593ecb2017-12-01 16:08:03 +0900326config 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
Adam Ford53705472018-07-20 23:03:57 -0500332config DRIVER_TI_EMAC
333 bool "TI Davinci EMAC"
334 help
335 Support for davinci emac
336
Michal Simek07d204f2015-12-09 16:54:42 +0100337config 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
Michal Simekeaee95a2015-12-11 09:41:49 +0100345config XILINX_EMACLITE
Zubair Lutfullah Kakakhelc6811092016-07-27 12:25:09 +0100346 depends on DM_ETH && (MICROBLAZE || ARCH_ZYNQ || ARCH_ZYNQMP || MIPS)
Michal Simekeaee95a2015-12-11 09:41:49 +0100347 select PHYLIB
348 select MII
349 bool "Xilinx Ethernetlite"
350 help
351 This MAC is present in Xilinx Microblaze, Zynq and ZynqMP SoCs.
352
Michal Simek3d7285f2015-11-30 14:34:52 +0100353config ZYNQ_GEM
Michal Simek4b066a12018-08-22 14:55:27 +0200354 depends on DM_ETH && (ARCH_ZYNQ || ARCH_ZYNQMP || ARCH_VERSAL)
Michal Simek27ba0902015-12-11 09:14:31 +0100355 select PHYLIB
Michal Simek3d7285f2015-11-30 14:34:52 +0100356 bool "Xilinx Ethernet GEM"
357 help
Michal Simek7fb1d232015-12-09 16:53:52 +0100358 This MAC is present in Xilinx Zynq and ZynqMP SoCs.
Michal Simek3d7285f2015-11-30 14:34:52 +0100359
Purna Chandra Mandal6b731c92016-01-28 15:30:21 +0530360config 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
Sjoerd Simons54c46f92017-01-11 11:46:11 +0100368config 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
Marek Vasut17714cb2017-05-13 15:54:28 +0200375config 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
Christophe Leroy56ef30a2017-07-06 10:33:23 +0200383config MPC8XX_FEC
384 bool "Fast Ethernet Controller on MPC8XX"
Christophe Leroyb3510fb2018-03-16 17:20:41 +0100385 depends on MPC8xx
Christophe Leroy56ef30a2017-07-06 10:33:23 +0200386 select MII
387 help
388 This driver implements support for the Fast Ethernet Controller
389 on MPC8XX
390
Kunihiko Hayashi7dcdc222018-05-24 19:24:37 +0900391config 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
Christophe Leroy56ef30a2017-07-06 10:33:23 +0200401config 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
Ahmed Mansour816bc412017-12-15 16:01:01 -0500451config 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
Mario Sixda4fc932018-03-28 14:38:18 +0200475config 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
Joe Hershberger6ab76992015-03-22 17:09:13 -0500482endif # NETDEVICES