blob: c1a49173c28358b22b5a4e9acda06c90fb254d02 [file] [log] [blame]
Alexaf2cbfd2017-02-06 19:17:34 -08001source "drivers/net/phy/Kconfig"
Calvin Johnsona802d1e2018-03-08 15:30:35 +05302source "drivers/net/pfe_eth/Kconfig"
Florinel Iordache1bad9912019-05-15 09:09:21 +00003source "drivers/net/fsl-mc/Kconfig"
Alexaf2cbfd2017-02-06 19:17:34 -08004
Simon Glass9f664922021-08-08 12:20:31 -06005config ETH
6 def_bool y
7
Joe Hershberger05c3e682015-03-22 17:09:10 -05008config DM_ETH
9 bool "Enable Driver Model for Ethernet drivers"
10 depends on DM
11 help
12 Enable driver model for Ethernet.
13
Joe Hershbergerc25f4062018-07-02 14:47:48 -050014 The eth_*() interface will be implemented by the UCLASS_ETH class
15 This is currently implemented in net/eth-uclass.c
Joe Hershberger05c3e682015-03-22 17:09:10 -050016 Look in include/net.h for details.
Joe Hershberger3ea143a2015-03-22 17:09:13 -050017
Alex Margineanc3452b52019-06-03 19:10:30 +030018config DM_MDIO
19 bool "Enable Driver Model for MDIO devices"
20 depends on DM_ETH && PHYLIB
21 help
22 Enable driver model for MDIO devices
23
24 Adds UCLASS_MDIO DM class supporting MDIO buses that are probed as
25 stand-alone devices. Useful in particular for systems that support
26 DM_ETH and have a stand-alone MDIO hardware block shared by multiple
27 Ethernet interfaces.
28 This is currently implemented in net/mdio-uclass.c
29 Look in include/miiphy.h for details.
30
Alex Marginean8880edb2019-07-12 10:13:50 +030031config DM_MDIO_MUX
32 bool "Enable Driver Model for MDIO MUX devices"
33 depends on DM_MDIO
34 help
35 Enable driver model for MDIO MUX devices
36
37 Adds UCLASS_MDIO_MUX DM class supporting MDIO MUXes. Useful for
38 systems that support DM_MDIO and integrate one or multiple muxes on
39 the MDIO bus.
40 This is currently implemented in net/mdio-mux-uclass.c
41 Look in include/miiphy.h for details.
42
Claudiu Manoilfc054d52021-01-25 14:23:53 +020043config DM_DSA
44 bool "Enable Driver Model for DSA switches"
45 depends on DM_ETH && DM_MDIO
46 depends on PHY_FIXED
47 help
48 Enable driver model for DSA switches
49
50 Adds UCLASS_DSA class supporting switches that follow the Distributed
51 Switch Architecture (DSA). These switches rely on the presence of a
52 management switch port connected to an Ethernet controller capable of
53 receiving frames from the switch. This host Ethernet controller is
54 called the "master" Ethernet interface in DSA terminology.
55 This is currently implemented in net/dsa-uclass.c, refer to
56 include/net/dsa.h for API details.
57
Alex Margineanec9594a2019-06-03 19:12:28 +030058config MDIO_SANDBOX
59 depends on DM_MDIO && SANDBOX
60 default y
61 bool "Sandbox: Mocked MDIO driver"
62 help
63 This driver implements dummy read/write/reset MDIO functions mimicking
64 a bus with a single PHY.
65
66 This driver is used in for testing in test/dm/mdio.c
67
Alex Margineanc3d9f3f2019-07-12 10:13:53 +030068config MDIO_MUX_SANDBOX
69 depends on DM_MDIO_MUX && MDIO_SANDBOX
70 default y
71 bool "Sandbox: Mocked MDIO-MUX driver"
72 help
73 This driver implements dummy select/deselect ops mimicking a MUX on
74 the MDIO bux. It uses mdio_sandbox driver as parent MDIO.
75
76 This driver is used for testing in test/dm/mdio.c
77
Ye Li5fe419e2020-05-03 22:41:14 +080078config DM_ETH_PHY
79 bool "Enable Driver Model for Ethernet Generic PHY drivers"
80 depends on DM
81 help
82 Enable driver model for Ethernet Generic PHY .
83
Claudiu Manoilff98da02021-03-14 20:14:57 +080084config DSA_SANDBOX
85 depends on DM_DSA && SANDBOX
86 default y
87 bool "Sandbox: Mocked DSA driver"
88 help
89 This driver implements a dummy DSA switch connected to a dummy sandbox
90 Ethernet device used as DSA master, to test DSA class code, including
91 exported DSA API and datapath processing of Ethernet traffic.
92
Joe Hershberger3ea143a2015-03-22 17:09:13 -050093menuconfig NETDEVICES
94 bool "Network device support"
95 depends on NET
Joe Hershbergeref0f2f52015-06-22 16:15:30 -050096 default y if DM_ETH
Joe Hershberger3ea143a2015-03-22 17:09:13 -050097 help
98 You must select Y to enable any network device support
99 Generally if you have any networking support this is a given
100
101 If unsure, say Y
102
103if NETDEVICES
104
Philipp Tomsich449ea2c2017-03-26 18:50:23 +0200105config PHY_GIGE
106 bool "Enable GbE PHY status parsing and configuration"
107 help
108 Enables support for parsing the status output and for
109 configuring GbE PHYs (affects the inner workings of some
110 commands and miiphyutil.c).
111
Marek Vasute40095f2016-05-24 23:29:09 +0200112config AG7XXX
113 bool "Atheros AG7xxx Ethernet MAC support"
114 depends on DM_ETH && ARCH_ATH79
115 select PHYLIB
116 help
117 This driver supports the Atheros AG7xxx Ethernet MAC. This MAC is
118 present in the Atheros AR7xxx, AR9xxx and QCA9xxx MIPS chips.
119
120
Thomas Chou96fa1e42015-10-22 15:29:11 +0800121config ALTERA_TSE
122 bool "Altera Triple-Speed Ethernet MAC support"
123 depends on DM_ETH
124 select PHYLIB
125 help
126 This driver supports the Altera Triple-Speed (TSE) Ethernet MAC.
127 Please find details on the "Triple-Speed Ethernet MegaCore Function
128 Resource Center" of Altera.
129
Suji Velupillaic89782d2017-07-10 14:05:41 -0700130config BCM_SF2_ETH
131 bool "Broadcom SF2 (Starfighter2) Ethernet support"
132 select PHYLIB
133 help
134 This is an abstract framework which provides a generic interface
135 to MAC and DMA management for multiple Broadcom SoCs such as
136 Cygnus, NSP and bcm28155_ap platforms.
137
138config BCM_SF2_ETH_DEFAULT_PORT
139 int "Broadcom SF2 (Starfighter2) Ethernet default port number"
140 depends on BCM_SF2_ETH
141 default 0
142 help
143 Default port number for the Starfighter2 ethernet driver.
144
145config BCM_SF2_ETH_GMAC
146 bool "Broadcom SF2 (Starfighter2) GMAC Ethernet support"
147 depends on BCM_SF2_ETH
148 help
149 This flag enables the ethernet support for Broadcom platforms with
150 GMAC such as Cygnus. This driver is based on the framework provided
151 by the BCM_SF2_ETH driver.
152 Say Y to any bcmcygnus based platforms.
153
Álvaro Fernández Rojas55e55fe2018-12-01 19:00:24 +0100154config BCM6348_ETH
155 bool "BCM6348 EMAC support"
156 depends on DM_ETH && ARCH_BMIPS
157 select DMA
158 select DMA_CHANNELS
159 select MII
160 select PHYLIB
161 help
162 This driver supports the BCM6348 Ethernet MAC.
163
Álvaro Fernández Rojas96229722018-12-01 19:00:32 +0100164config BCM6368_ETH
165 bool "BCM6368 EMAC support"
166 depends on DM_ETH && ARCH_BMIPS
167 select DMA
168 select MII
169 help
170 This driver supports the BCM6368 Ethernet MAC.
171
Amit Singh Tomard53e3fa2020-01-27 01:14:42 +0000172config BCMGENET
173 bool "BCMGENET V5 support"
174 depends on DM_ETH
175 select PHYLIB
176 help
177 This driver supports the BCMGENET Ethernet MAC.
178
Aaron Tsengfebe13b2021-01-14 13:34:11 -0800179config CORTINA_NI_ENET
180 bool "Cortina-Access Ethernet driver"
181 depends on DM_ETH && CORTINA_PLATFORM
182 help
183 This driver supports the Cortina-Access Ethernet MAC for
184 all supported CAxxxx SoCs.
185
Andre Przywaradebb07b2021-04-12 01:04:52 +0100186config CALXEDA_XGMAC
187 bool "Calxeda XGMAC support"
188 depends on DM_ETH
189 help
190 This driver supports the XGMAC in Calxeda Highbank and Midway
191 machines.
192
Stephen Warrenba4dfef2016-10-21 14:46:47 -0600193config DWC_ETH_QOS
194 bool "Synopsys DWC Ethernet QOS device support"
195 depends on DM_ETH
196 select PHYLIB
197 help
198 This driver supports the Synopsys Designware Ethernet QOS (Quality
199 Of Service) IP block. The IP supports many options for bus type,
Patrick Delaunaya08f2f72020-06-08 11:27:19 +0200200 clocking/reset structure, and feature list.
201
202config DWC_ETH_QOS_IMX
203 bool "Synopsys DWC Ethernet QOS device support for IMX"
204 depends on DWC_ETH_QOS
205 help
206 The Synopsys Designware Ethernet QOS IP block with the specific
207 configuration used in IMX soc.
208
209config DWC_ETH_QOS_STM32
210 bool "Synopsys DWC Ethernet QOS device support for STM32"
211 depends on DWC_ETH_QOS
Patrick Delaunay9dbdc232021-07-20 20:09:55 +0200212 select DM_ETH_PHY
Patrick Delaunaya08f2f72020-06-08 11:27:19 +0200213 default y if ARCH_STM32MP
214 help
215 The Synopsys Designware Ethernet QOS IP block with the specific
216 configuration used in STM32MP soc.
217
218config DWC_ETH_QOS_TEGRA186
219 bool "Synopsys DWC Ethernet QOS device support for TEGRA186"
220 depends on DWC_ETH_QOS
221 default y if TEGRA186
222 help
223 The Synopsys Designware Ethernet QOS IP block with specific
224 configuration used in NVIDIA's Tegra186 chip.
Stephen Warrenba4dfef2016-10-21 14:46:47 -0600225
Simon Glassc294ac52015-08-19 09:33:41 -0600226config E1000
227 bool "Intel PRO/1000 Gigabit Ethernet support"
228 help
229 This driver supports Intel(R) PRO/1000 gigabit ethernet family of
230 adapters. For more information on how to identify your adapter, go
231 to the Adapter & Driver ID Guide at:
232
233 <http://support.intel.com/support/network/adapter/pro100/21397.htm>
234
235config E1000_SPI_GENERIC
236 bool "Allow access to the Intel 8257x SPI bus"
237 depends on E1000
238 help
239 Allow generic access to the SPI bus on the Intel 8257x, for
240 example with the "sspi" command.
241
242config E1000_SPI
243 bool "Enable SPI bus utility code"
244 depends on E1000
245 help
246 Utility code for direct access to the SPI bus on Intel 8257x.
247 This does not do anything useful unless you set at least one
248 of CONFIG_CMD_E1000 or CONFIG_E1000_SPI_GENERIC.
249
250config CMD_E1000
251 bool "Enable the e1000 command"
252 depends on E1000
253 help
254 This enables the 'e1000' management command for E1000 devices. When
255 used on devices with SPI support you can reprogram the EEPROM from
256 U-Boot.
257
Marek Vasut6463b732020-05-23 18:07:53 +0200258config EEPRO100
259 bool "Intel PRO/100 82557/82559/82559ER Fast Ethernet support"
260 help
261 This driver supports Intel(R) PRO/100 82557/82559/82559ER fast
262 ethernet family of adapters.
263
Joe Hershberger3ea143a2015-03-22 17:09:13 -0500264config ETH_SANDBOX
265 depends on DM_ETH && SANDBOX
266 default y
267 bool "Sandbox: Mocked Ethernet driver"
268 help
269 This driver simply responds with fake ARP replies and ping
270 replies that are used to verify network stack functionality
271
272 This driver is particularly useful in the test/dm/eth.c tests
273
Joe Hershbergera346ca72015-03-22 17:09:21 -0500274config ETH_SANDBOX_RAW
275 depends on DM_ETH && SANDBOX
276 default y
277 bool "Sandbox: Bridge to Linux Raw Sockets"
278 help
279 This driver is a bridge from the bottom of the network stack
280 in U-Boot to the RAW AF_PACKET API in Linux. This allows real
281 network traffic to be tested from within sandbox. See
Keerthy5917d0b2019-07-29 13:52:04 +0530282 doc/arch/index.rst for more details.
Joe Hershbergera346ca72015-03-22 17:09:21 -0500283
Simon Glassef48f6d2015-04-05 16:07:34 -0600284config ETH_DESIGNWARE
285 bool "Synopsys Designware Ethernet MAC"
Thomas Chou25af71c2015-12-07 20:53:29 +0800286 select PHYLIB
Simon Goldschmidt6fb1eb12019-01-13 19:58:41 +0100287 imply ETH_DESIGNWARE_SOCFPGA if ARCH_SOCFPGA
Simon Glassef48f6d2015-04-05 16:07:34 -0600288 help
289 This MAC is present in SoCs from various vendors. It supports
290 100Mbit and 1 Gbit operation. You must enable CONFIG_PHYLIB to
291 provide the PHY (physical media interface).
292
Neil Armstrong798424e2021-02-24 20:33:56 +0100293config ETH_DESIGNWARE_MESON8B
294 bool "Amlogic Meson8b and later glue driver for Synopsys Designware Ethernet MAC"
295 depends on DM_ETH
296 select ETH_DESIGNWARE
297 help
298 This provides glue layer to use Synopsys Designware Ethernet MAC
299 present on the Amlogic Meson8b, GX, AXG & G12A SoCs.
300
Marek Vasut215a0652018-08-13 19:32:14 +0200301config ETH_DESIGNWARE_SOCFPGA
Simon Goldschmidt4f1267c2019-01-13 19:58:40 +0100302 select REGMAP
303 select SYSCON
Marek Vasut215a0652018-08-13 19:32:14 +0200304 bool "Altera SoCFPGA extras for Synopsys Designware Ethernet MAC"
305 depends on DM_ETH && ETH_DESIGNWARE
306 help
307 The Altera SoCFPGA requires additional configuration of the
308 Altera system manager to correctly interface with the PHY.
309 This code handles those SoC specifics.
310
Amit Singh Tomar3c5c4ee2020-05-09 19:55:12 +0530311config ETH_DESIGNWARE_S700
312 bool "Actins S700 glue driver for Synopsys Designware Ethernet MAC"
313 depends on DM_ETH && ETH_DESIGNWARE
314 help
315 This provides glue layer to use Synopsys Designware Ethernet MAC
316 present on Actions S700 SoC.
317
Max Filippovf0727122016-08-05 18:26:15 +0300318config ETHOC
319 bool "OpenCores 10/100 Mbps Ethernet MAC"
320 help
321 This MAC is present in OpenRISC and Xtensa XTFPGA boards.
322
Peng Fanfbada482018-03-28 20:54:14 +0800323config FEC_MXC_SHARE_MDIO
324 bool "Share the MDIO bus for FEC controller"
325 depends on FEC_MXC
326
327config FEC_MXC_MDIO_BASE
328 hex "MDIO base address for the FEC controller"
329 depends on FEC_MXC_SHARE_MDIO
330 help
331 This specifies the MDIO registers base address. It is used when
332 two FEC controllers share MDIO bus.
333
Jagan Teki97d29ca2016-10-08 18:00:12 +0530334config FEC_MXC
335 bool "FEC Ethernet controller"
Peng Fan06918de2021-08-07 16:00:42 +0800336 depends on MX28 || MX5 || MX6 || MX7 || IMX8 || IMX8M || IMX8ULP || VF610
Jagan Teki97d29ca2016-10-08 18:00:12 +0530337 help
338 This driver supports the 10/100 Fast Ethernet controller for
339 NXP i.MX processors.
340
Tom Rinicc1e98b2019-05-12 07:59:12 -0400341config FMAN_ENET
342 bool "Freescale FMan ethernet support"
343 depends on ARM || PPC
344 help
345 This driver support the Freescale FMan Ethernet controller
346
Rajesh Bhagata97a0712021-11-09 16:30:38 +0530347config SYS_FMAN_FW_ADDR
348 hex "FMAN Firmware Address"
349 depends on FMAN_ENET
350 default 0x0
351
352config SYS_QE_FMAN_FW_LENGTH
353 hex "FMAN QE Firmware length"
354 depends on FMAN_ENET || QE || U_QE
355 default 0x10000
356
Tom Rini8dc1b172017-05-26 11:18:53 -0400357config FTMAC100
358 bool "Ftmac100 Ethernet Support"
359 help
360 This MAC is present in Andestech SoCs.
361
Cédric Le Goaterf95de0b2018-10-29 07:06:31 +0100362config FTGMAC100
363 bool "Ftgmac100 Ethernet Support"
364 depends on DM_ETH
365 select PHYLIB
366 help
367 This driver supports the Faraday's FTGMAC100 Gigabit SoC
368 Ethernet controller that can be found on Aspeed SoCs (which
369 include NCSI).
370
371 It is fully compliant with IEEE 802.3 specification for
372 10/100 Mbps Ethernet and IEEE 802.3z specification for 1000
373 Mbps Ethernet and includes Reduced Media Independent
374 Interface (RMII) and Reduced Gigabit Media Independent
375 Interface (RGMII) interfaces. It adopts an AHB bus interface
376 and integrates a link list DMA engine with direct M-Bus
377 accesses for transmitting and receiving packets. It has
378 independent TX/RX fifos, supports half and full duplex (1000
379 Mbps mode only supports full duplex), flow control for full
380 duplex and backpressure for half duplex.
381
382 The FTGMAC100 also implements IP, TCP, UDP checksum offloads
383 and supports IEEE 802.1Q VLAN tag insertion and removal. It
384 offers high-priority transmit queue for QoS and CoS
385 applications.
386
387
Angelo Durgehello080bcc52019-11-15 23:54:17 +0100388config MCFFEC
389 bool "ColdFire Ethernet Support"
390 depends on DM_ETH
391 select PHYLIB
392 help
393 This driver supports the network interface units in the
394 ColdFire family.
395
396config FSLDMAFEC
397 bool "ColdFire DMA Ethernet Support"
398 depends on DM_ETH
399 select PHYLIB
400 help
401 This driver supports the network interface units in the
402 ColdFire family.
403
Marek Vasutdf4c4832020-03-25 19:08:59 +0100404config KS8851_MLL
405 bool "Microchip KS8851-MLL controller driver"
406 help
407 The Microchip KS8851 parallel bus external ethernet interface chip.
408
409if KS8851_MLL
410if !DM_ETH
411config KS8851_MLL_BASEADDR
412 hex "Microchip KS8851-MLL Base Address"
413 help
414 Define this to hold the physical address of the device (I/O space)
415endif #DM_ETH
416endif #KS8851_MLL
417
Tim Harvey668e2052021-06-30 16:50:08 -0700418config KSZ9477
419 bool "Microchip KSZ9477 I2C controller driver"
420 depends on DM_DSA && DM_I2C
421 help
422 This driver implements a DSA switch driver for the KSZ9477 family
423 of GbE switches using the I2C interface.
424
Chris Packhamed52ea52018-05-03 23:00:35 +1200425config MVGBE
426 bool "Marvell Orion5x/Kirkwood network interface support"
Trevor Woernerbb0fb4c2020-05-06 08:02:40 -0400427 depends on ARCH_KIRKWOOD || ARCH_ORION5X
Chris Packhamfb731072018-07-09 21:34:00 +1200428 select PHYLIB if DM_ETH
Chris Packhamed52ea52018-05-03 23:00:35 +1200429 help
430 This driver supports the network interface units in the
431 Marvell Orion5x and Kirkwood SoCs
432
Chris Packham7654f622017-08-21 20:17:03 +1200433config MVNETA
Miquel Raynale7ab2cc2017-12-28 15:43:09 +0100434 bool "Marvell Armada XP/385/3700 network interface support"
435 depends on ARMADA_XP || ARMADA_38X || ARMADA_3700
Chris Packham7654f622017-08-21 20:17:03 +1200436 select PHYLIB
437 help
438 This driver supports the network interface units in the
Miquel Raynale7ab2cc2017-12-28 15:43:09 +0100439 Marvell ARMADA XP, ARMADA 38X and ARMADA 3700 SoCs
Chris Packham7654f622017-08-21 20:17:03 +1200440
Stefan Roese99d4c6d2016-02-10 07:22:10 +0100441config MVPP2
Stefan Roesee7935c42017-02-15 11:42:59 +0100442 bool "Marvell Armada 375/7K/8K network interface support"
443 depends on ARMADA_375 || ARMADA_8K
Stefan Roese99d4c6d2016-02-10 07:22:10 +0100444 select PHYLIB
Nevo Hed17caaf82019-08-15 18:08:45 -0400445 select MVMDIO
446 select DM_MDIO
Stefan Roese99d4c6d2016-02-10 07:22:10 +0100447 help
448 This driver supports the network interface units in the
Stefan Roesee7935c42017-02-15 11:42:59 +0100449 Marvell ARMADA 375, 7K and 8K SoCs.
Stefan Roese99d4c6d2016-02-10 07:22:10 +0100450
Wenyou Yangebcb40a2016-11-02 10:06:55 +0800451config MACB
452 bool "Cadence MACB/GEM Ethernet Interface"
Wenyou Yangebcb40a2016-11-02 10:06:55 +0800453 select PHYLIB
454 help
455 The Cadence MACB ethernet interface is found on many Atmel
456 AT91 and SAMA5 parts. This driver also supports the Cadence
457 GEM (Gigabit Ethernet MAC) found in some ARM SoC devices.
458 Say Y to include support for the MACB/GEM chip.
459
Wilson Lee4bf56912017-08-22 20:25:07 -0700460config MACB_ZYNQ
461 bool "Cadence MACB/GEM Ethernet Interface for Xilinx Zynq"
462 depends on MACB
463 help
464 The Cadence MACB ethernet interface was used on Zynq platform.
465 Say Y to enable support for the MACB/GEM in Zynq chip.
466
Weijie Gao17ade702020-11-12 16:36:53 +0800467config MT7620_ETH
468 bool "MediaTek MT7620 Ethernet Interface"
469 depends on SOC_MT7620
470 select PHYLIB
471 select DM_RESET
472 select DM_GPIO
473 select CLK
474 help
475 The MediaTek MT7620 ethernet interface is used on MT7620 based
476 boards. It has a built-in switch with two configurable ports which
477 can connect to external PHY/MACs.
478
Stefan Roesec895ef42018-10-26 14:53:27 +0200479config MT7628_ETH
480 bool "MediaTek MT7628 Ethernet Interface"
Weijie Gao16b94902019-04-30 11:13:58 +0800481 depends on SOC_MT7628
Weijie Gaof0793212019-09-25 17:45:33 +0800482 select PHYLIB
Stefan Roesec895ef42018-10-26 14:53:27 +0200483 help
484 The MediaTek MT7628 ethernet interface is used on MT7628 and
485 MT7688 based boards.
486
Suneel Garapati0008e9a2020-08-26 14:37:33 +0200487config NET_OCTEONTX
488 bool "OcteonTX Ethernet support"
489 depends on ARCH_OCTEONTX
490 depends on PCI_SRIOV
491 help
492 You must select Y to enable network device support for
493 OcteonTX SoCs. If unsure, say n
Suneel Garapati4684a7a2020-08-26 14:37:42 +0200494
495config NET_OCTEONTX2
496 bool "OcteonTX2 Ethernet support"
497 depends on ARCH_OCTEONTX2
498 select OCTEONTX2_CGX_INTF
499 help
500 You must select Y to enable network device support for
501 OcteonTX2 SoCs. If unsure, say n
502
Suneel Garapati0008e9a2020-08-26 14:37:33 +0200503config OCTEONTX_SMI
504 bool "OcteonTX SMI Device support"
505 depends on ARCH_OCTEONTX || ARCH_OCTEONTX2
506 help
507 You must select Y to enable SMI controller support for
508 OcteonTX or OcteonTX2 SoCs. If unsure, say n
509
Suneel Garapati4684a7a2020-08-26 14:37:42 +0200510config OCTEONTX2_CGX_INTF
511 bool "OcteonTX2 CGX ATF interface support"
512 depends on ARCH_OCTEONTX2
513 default y if ARCH_OCTEONTX2
514 help
515 You must select Y to enable CGX ATF interface support for
516 OcteonTX2 SoCs. If unsure, say n
517
Bin Mengb68fe152015-08-27 22:25:58 -0700518config PCH_GBE
519 bool "Intel Platform Controller Hub EG20T GMAC driver"
Simon Glass3232bdf2021-08-01 18:54:44 -0600520 depends on DM_ETH
Bin Mengb68fe152015-08-27 22:25:58 -0700521 select PHYLIB
522 help
523 This MAC is present in Intel Platform Controller Hub EG20T. It
524 supports 10/100/1000 Mbps operation.
525
Mylène Josserand751b0be2017-04-02 12:59:08 +0200526config RGMII
527 bool "Enable RGMII"
528 help
529 Enable the support of the Reduced Gigabit Media-Independent
530 Interface (RGMII).
531
Adam Fordd7869b22018-07-20 23:03:57 -0500532config MII
533 bool "Enable MII"
534 help
535 Enable support of the Media-Independent Interface (MII)
536
Marek Vasutd789a822020-05-17 18:14:17 +0200537config PCNET
538 bool "AMD PCnet series Ethernet controller driver"
539 help
540 This driver supports AMD PCnet series fast ethernet family of
541 PCI chipsets/adapters.
542
Heiko Schocher6e31c622020-02-06 09:48:16 +0100543source "drivers/net/qe/Kconfig"
544
Bin Meng86e9dc82016-03-21 06:47:41 -0700545config RTL8139
546 bool "Realtek 8139 series Ethernet controller driver"
547 help
548 This driver supports Realtek 8139 series fast ethernet family of
549 PCI chipsets/adapters.
550
Bin Meng0764f242016-03-21 06:47:42 -0700551config RTL8169
552 bool "Realtek 8169 series Ethernet controller driver"
553 help
554 This driver supports Realtek 8169 series gigabit ethernet family of
555 PCI/PCIe chipsets/adapters.
556
Adam Ford8daec2d2017-09-05 15:20:44 -0500557config SMC911X
558 bool "SMSC LAN911x and LAN921x controller driver"
559
560if SMC911X
561
Marek Vasut81486932020-03-15 17:39:01 +0100562if !DM_ETH
Adam Ford8daec2d2017-09-05 15:20:44 -0500563config SMC911X_BASE
564 hex "SMC911X Base Address"
565 help
566 Define this to hold the physical address
567 of the device (I/O space)
Marek Vasut81486932020-03-15 17:39:01 +0100568endif #DM_ETH
Adam Ford8daec2d2017-09-05 15:20:44 -0500569
Adam Ford8daec2d2017-09-05 15:20:44 -0500570config SMC911X_32_BIT
Andre Przywaraf26c9d72021-06-28 14:30:30 +0100571 bool "Enable SMC911X 32-bit interface"
Adam Ford8daec2d2017-09-05 15:20:44 -0500572 help
Andre Przywaraf26c9d72021-06-28 14:30:30 +0100573 Define this if data bus is 32 bits. If your processor use a
574 narrower 16 bit bus or cannot convert one 32 bit word to two 16 bit
575 words, leave this to "n".
Adam Ford8daec2d2017-09-05 15:20:44 -0500576
Adam Ford8daec2d2017-09-05 15:20:44 -0500577endif #SMC911X
578
Mylène Josserand4d43d062017-04-02 12:59:03 +0200579config SUN7I_GMAC
580 bool "Enable Allwinner GMAC Ethernet support"
581 help
582 Enable the support for Sun7i GMAC Ethernet controller
583
Stefan Mavrodievaba39242017-11-03 08:56:51 +0200584config SUN7I_GMAC_FORCE_TXERR
585 bool "Force PA17 as gmac function"
586 depends on SUN7I_GMAC
587 help
588 Some ethernet phys needs TXERR control. Since the GMAC
589 doesn't have such signal, setting PA17 as GMAC function
590 makes the pin output low, which enables data transmission.
591
Mylène Josserandabc3e4d2017-04-02 12:59:07 +0200592config SUN4I_EMAC
593 bool "Allwinner Sun4i Ethernet MAC support"
594 depends on DM_ETH
Artturi Alm6270a3f2017-11-08 05:08:58 +0200595 select PHYLIB
Mylène Josserandabc3e4d2017-04-02 12:59:07 +0200596 help
597 This driver supports the Allwinner based SUN4I Ethernet MAC.
598
Amit Singh Tomara29710c2016-07-06 17:59:44 +0530599config SUN8I_EMAC
600 bool "Allwinner Sun8i Ethernet MAC support"
601 depends on DM_ETH
602 select PHYLIB
Philipp Tomsich449ea2c2017-03-26 18:50:23 +0200603 select PHY_GIGE
Amit Singh Tomara29710c2016-07-06 17:59:44 +0530604 help
605 This driver supports the Allwinner based SUN8I/SUN50I Ethernet MAC.
606 It can be found in H3/A64/A83T based SoCs and compatible with both
Tom Rini7131d2d2017-02-20 09:38:03 -0500607 External and Internal PHYs.
Amit Singh Tomara29710c2016-07-06 17:59:44 +0530608
Nobuhiro Iwamatsudcd18ea2017-12-01 16:08:03 +0900609config SH_ETHER
610 bool "Renesas SH Ethernet MAC"
611 select PHYLIB
612 help
613 This driver supports the Ethernet for Renesas SH and ARM SoCs.
614
Grygorii Strashkoffad5fa2018-10-31 16:21:39 -0500615source "drivers/net/ti/Kconfig"
Adam Fordd7869b22018-07-20 23:03:57 -0500616
Marek Vasuta410f132020-06-20 17:43:29 +0200617config TULIP
618 bool "DEC Tulip DC2114x Ethernet support"
Marek Vasuta410f132020-06-20 17:43:29 +0200619 help
620 This driver supports DEC DC2114x Fast ethernet chips.
621
Michal Simek338a5f22015-12-09 16:54:42 +0100622config XILINX_AXIEMAC
Michal Simek664e16c2020-08-06 15:18:36 +0200623 depends on DM_ETH
Michal Simek338a5f22015-12-09 16:54:42 +0100624 select PHYLIB
625 select MII
626 bool "Xilinx AXI Ethernet"
627 help
628 This MAC is present in Xilinx Microblaze, Zynq and ZynqMP SoCs.
629
Ashok Reddy Soma258ce792021-07-02 04:40:34 -0600630config XILINX_AXIMRMAC
631 depends on DM_ETH && ARCH_VERSAL
632 bool "Xilinx AXI MRMAC"
633 help
634 MRMAC is a high performance, low latency, adaptable Ethernet
635 integrated hard IP. This can be configured up to four ports with MAC
636 rates from 10GE to 100GE. This could be present in some of the Xilinx
637 Versal designs.
638
Michal Simek3229c862015-12-11 09:41:49 +0100639config XILINX_EMACLITE
Michal Simek664e16c2020-08-06 15:18:36 +0200640 depends on DM_ETH
Michal Simek3229c862015-12-11 09:41:49 +0100641 select PHYLIB
642 select MII
643 bool "Xilinx Ethernetlite"
644 help
645 This MAC is present in Xilinx Microblaze, Zynq and ZynqMP SoCs.
646
Michal Simek596e5782015-11-30 14:34:52 +0100647config ZYNQ_GEM
Michal Simek664e16c2020-08-06 15:18:36 +0200648 depends on DM_ETH
Michal Simek7bccc752015-12-11 09:14:31 +0100649 select PHYLIB
Michal Simek596e5782015-11-30 14:34:52 +0100650 bool "Xilinx Ethernet GEM"
651 help
Michal Simekc9428102015-12-09 16:53:52 +0100652 This MAC is present in Xilinx Zynq and ZynqMP SoCs.
Michal Simek596e5782015-11-30 14:34:52 +0100653
Purna Chandra Mandal23e75782016-01-28 15:30:21 +0530654config PIC32_ETH
655 bool "Microchip PIC32 Ethernet Support"
656 depends on DM_ETH && MACH_PIC32
657 select PHYLIB
658 help
659 This driver implements 10/100 Mbps Ethernet and MAC layer for
660 Microchip PIC32 microcontrollers.
661
Sjoerd Simons0125bcf2017-01-11 11:46:11 +0100662config GMAC_ROCKCHIP
663 bool "Rockchip Synopsys Designware Ethernet MAC"
664 depends on DM_ETH && ETH_DESIGNWARE
665 help
666 This driver provides Rockchip SoCs network support based on the
667 Synopsys Designware driver.
668
Marek Vasut8ae51b62017-05-13 15:54:28 +0200669config RENESAS_RAVB
670 bool "Renesas Ethernet AVB MAC"
671 depends on DM_ETH && RCAR_GEN3
672 select PHYLIB
673 help
674 This driver implements support for the Ethernet AVB block in
675 Renesas M3 and H3 SoCs.
676
Christophe Leroyfad51ac2017-07-06 10:33:23 +0200677config MPC8XX_FEC
678 bool "Fast Ethernet Controller on MPC8XX"
Christophe Leroyee1e6002018-03-16 17:20:41 +0100679 depends on MPC8xx
Christophe Leroyfad51ac2017-07-06 10:33:23 +0200680 select MII
681 help
682 This driver implements support for the Fast Ethernet Controller
683 on MPC8XX
684
Kunihiko Hayashia8927792018-05-24 19:24:37 +0900685config SNI_AVE
686 bool "Socionext AVE Ethernet support"
687 depends on DM_ETH && ARCH_UNIPHIER
688 select PHYLIB
689 select SYSCON
690 select REGMAP
691 help
692 This driver implements support for the Socionext AVE Ethernet
693 controller, as found on the Socionext UniPhier family.
694
Jassi Brareab447b2021-06-04 18:44:38 +0900695config SNI_NETSEC
696 bool "Socionext NETSEC Ethernet support"
697 depends on DM_ETH && SYNQUACER_SPI
698 select PHYLIB
699 help
700 This driver implements support for the Socionext SynQuacer NETSEC
701 ethernet controller, as found on the Socionext SynQuacer family.
702
Horatiu Vultur4c661572019-01-31 15:30:33 +0100703source "drivers/net/mscc_eswitch/Kconfig"
Gregory CLEMENTc8546162019-01-17 17:07:13 +0100704
Christophe Leroyfad51ac2017-07-06 10:33:23 +0200705config ETHER_ON_FEC1
706 bool "FEC1"
707 depends on MPC8XX_FEC
708 default y
709
710config FEC1_PHY
711 int "FEC1 PHY"
712 depends on ETHER_ON_FEC1
713 default -1
714 help
715 Define to the hardcoded PHY address which corresponds
716 to the given FEC; i. e.
717 #define CONFIG_FEC1_PHY 4
718 means that the PHY with address 4 is connected to FEC1
719
720 When set to -1, means to probe for first available.
721
722config PHY_NORXERR
723 bool "PHY_NORXERR"
724 depends on ETHER_ON_FEC1
Christophe Leroyfad51ac2017-07-06 10:33:23 +0200725 help
726 The PHY does not have a RXERR line (RMII only).
727 (so program the FEC to ignore it).
728
729config ETHER_ON_FEC2
730 bool "FEC2"
731 depends on MPC8XX_FEC && MPC885
732 default y
733
734config FEC2_PHY
735 int "FEC2 PHY"
736 depends on ETHER_ON_FEC2
737 default -1
738 help
739 Define to the hardcoded PHY address which corresponds
740 to the given FEC; i. e.
741 #define CONFIG_FEC1_PHY 4
742 means that the PHY with address 4 is connected to FEC1
743
744 When set to -1, means to probe for first available.
745
746config FEC2_PHY_NORXERR
747 bool "PHY_NORXERR"
748 depends on ETHER_ON_FEC2
Christophe Leroyfad51ac2017-07-06 10:33:23 +0200749 help
750 The PHY does not have a RXERR line (RMII only).
751 (so program the FEC to ignore it).
752
Ahmed Mansour541d5762017-12-15 16:01:01 -0500753config SYS_DPAA_QBMAN
754 bool "Device tree fixup for QBMan on freescale SOCs"
755 depends on (ARM || PPC) && !SPL_BUILD
756 default y if ARCH_B4860 || \
757 ARCH_B4420 || \
758 ARCH_P1023 || \
759 ARCH_P2041 || \
Ahmed Mansour541d5762017-12-15 16:01:01 -0500760 ARCH_T1024 || \
761 ARCH_T1040 || \
762 ARCH_T1042 || \
763 ARCH_T2080 || \
Ahmed Mansour541d5762017-12-15 16:01:01 -0500764 ARCH_T4240 || \
Ahmed Mansour541d5762017-12-15 16:01:01 -0500765 ARCH_P4080 || \
766 ARCH_P3041 || \
767 ARCH_P5040 || \
Ahmed Mansour541d5762017-12-15 16:01:01 -0500768 ARCH_LS1043A || \
769 ARCH_LS1046A
770 help
771 QBman fixups to allow deep sleep in DPAA 1 SOCs
772
Mario Six17151052018-03-28 14:38:18 +0200773config TSEC_ENET
774 select PHYLIB
775 bool "Enable Three-Speed Ethernet Controller"
776 help
777 This driver implements support for the (Enhanced) Three-Speed
778 Ethernet Controller found on Freescale SoCs.
779
Weijie Gao23f17162018-12-20 16:12:53 +0800780config MEDIATEK_ETH
781 bool "MediaTek Ethernet GMAC Driver"
782 depends on DM_ETH
783 select PHYLIB
784 select DM_GPIO
785 select DM_RESET
786 help
787 This Driver support MediaTek Ethernet GMAC
788 Say Y to enable support for the MediaTek Ethernet GMAC.
789
Shawn Guo1d5b5d22019-03-20 15:32:40 +0800790config HIGMACV300_ETH
791 bool "HiSilicon Gigabit Ethernet Controller"
792 depends on DM_ETH
793 select DM_RESET
794 select PHYLIB
795 help
796 This driver supports HIGMACV300 Ethernet controller found on
797 HiSilicon SoCs.
798
Alex Marginean120b5ef2019-07-03 12:11:40 +0300799config FSL_ENETC
800 bool "NXP ENETC Ethernet controller"
Simon Glass3232bdf2021-08-01 18:54:44 -0600801 depends on DM_ETH && DM_MDIO
Alex Marginean120b5ef2019-07-03 12:11:40 +0300802 help
803 This driver supports the NXP ENETC Ethernet controller found on some
804 of the NXP SoCs.
805
Alex Marginean74dd3832019-07-16 11:21:17 +0300806config MDIO_MUX_I2CREG
807 bool "MDIO MUX accessed as a register over I2C"
808 depends on DM_MDIO_MUX && DM_I2C
809 help
810 This driver is used for MDIO muxes driven by writing to a register of
811 an I2C chip. The board it was developed for uses a mux controlled by
812 on-board FPGA which in turn is accessed as a chip over I2C.
813
Robert Marko975151d2020-10-08 22:05:11 +0200814config MDIO_IPQ4019
815 bool "Qualcomm IPQ4019 MDIO interface support"
816 depends on DM_MDIO
817 help
818 This driver supports the MDIO interface found in Qualcomm
819 IPQ40xx series Soc-s.
820
Alex Marginean8bd37ce2019-07-25 12:33:19 +0300821config MVMDIO
822 bool "Marvell MDIO interface support"
823 depends on DM_MDIO
824 help
825 This driver supports the MDIO interface found in the network
826 interface units of the Marvell EBU SoCs (Kirkwood, Orion5x,
827 Dove, Armada 370, Armada XP, Armada 37xx and Armada7K/8K/8KP).
828
829 This driver is used by the MVPP2 and MVNETA drivers.
830
Ioana Ciornei52e16ec2020-03-18 16:47:36 +0200831config FSL_LS_MDIO
832 bool "NXP Layerscape MDIO interface support"
833 depends on DM_MDIO
834 help
835 This driver supports the MDIO bus found on the Fman 10G Ethernet MACs and
836 on the mEMAC (which supports both Clauses 22 and 45).
837
Neil Armstrong6c7bc9f2021-02-24 15:02:23 +0100838config MDIO_MUX_MMIOREG
839 bool "MDIO MUX accessed as a MMIO register access"
840 depends on DM_MDIO_MUX
841 help
842 This driver is used for MDIO muxes driven by writing to a register in
843 the MMIO physical memory.
844
Neil Armstrong8120ce12021-02-24 17:31:53 +0100845config MDIO_MUX_MESON_G12A
846 bool "MDIO MUX for Amlogic Meson G12A SoCs"
847 depends on DM_MDIO_MUX
848 help
849 This driver is used for the MDIO mux found on the Amlogic G12A & compatible
850 SoCs.
851
Joe Hershberger3ea143a2015-03-22 17:09:13 -0500852endif # NETDEVICES