blob: 726ad36b7cf98b5070b74ec30f669055cde4bd42 [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
Joe Hershberger05c3e682015-03-22 17:09:10 -05005config DM_ETH
6 bool "Enable Driver Model for Ethernet drivers"
7 depends on DM
8 help
9 Enable driver model for Ethernet.
10
Joe Hershbergerc25f4062018-07-02 14:47:48 -050011 The eth_*() interface will be implemented by the UCLASS_ETH class
12 This is currently implemented in net/eth-uclass.c
Joe Hershberger05c3e682015-03-22 17:09:10 -050013 Look in include/net.h for details.
Joe Hershberger3ea143a2015-03-22 17:09:13 -050014
Alex Margineanc3452b52019-06-03 19:10:30 +030015config DM_MDIO
16 bool "Enable Driver Model for MDIO devices"
17 depends on DM_ETH && PHYLIB
18 help
19 Enable driver model for MDIO devices
20
21 Adds UCLASS_MDIO DM class supporting MDIO buses that are probed as
22 stand-alone devices. Useful in particular for systems that support
23 DM_ETH and have a stand-alone MDIO hardware block shared by multiple
24 Ethernet interfaces.
25 This is currently implemented in net/mdio-uclass.c
26 Look in include/miiphy.h for details.
27
Alex Marginean8880edb2019-07-12 10:13:50 +030028config DM_MDIO_MUX
29 bool "Enable Driver Model for MDIO MUX devices"
30 depends on DM_MDIO
31 help
32 Enable driver model for MDIO MUX devices
33
34 Adds UCLASS_MDIO_MUX DM class supporting MDIO MUXes. Useful for
35 systems that support DM_MDIO and integrate one or multiple muxes on
36 the MDIO bus.
37 This is currently implemented in net/mdio-mux-uclass.c
38 Look in include/miiphy.h for details.
39
Claudiu Manoilfc054d52021-01-25 14:23:53 +020040config DM_DSA
41 bool "Enable Driver Model for DSA switches"
42 depends on DM_ETH && DM_MDIO
43 depends on PHY_FIXED
44 help
45 Enable driver model for DSA switches
46
47 Adds UCLASS_DSA class supporting switches that follow the Distributed
48 Switch Architecture (DSA). These switches rely on the presence of a
49 management switch port connected to an Ethernet controller capable of
50 receiving frames from the switch. This host Ethernet controller is
51 called the "master" Ethernet interface in DSA terminology.
52 This is currently implemented in net/dsa-uclass.c, refer to
53 include/net/dsa.h for API details.
54
Alex Margineanec9594a2019-06-03 19:12:28 +030055config MDIO_SANDBOX
56 depends on DM_MDIO && SANDBOX
57 default y
58 bool "Sandbox: Mocked MDIO driver"
59 help
60 This driver implements dummy read/write/reset MDIO functions mimicking
61 a bus with a single PHY.
62
63 This driver is used in for testing in test/dm/mdio.c
64
Alex Margineanc3d9f3f2019-07-12 10:13:53 +030065config MDIO_MUX_SANDBOX
66 depends on DM_MDIO_MUX && MDIO_SANDBOX
67 default y
68 bool "Sandbox: Mocked MDIO-MUX driver"
69 help
70 This driver implements dummy select/deselect ops mimicking a MUX on
71 the MDIO bux. It uses mdio_sandbox driver as parent MDIO.
72
73 This driver is used for testing in test/dm/mdio.c
74
Ye Li5fe419e2020-05-03 22:41:14 +080075config DM_ETH_PHY
76 bool "Enable Driver Model for Ethernet Generic PHY drivers"
77 depends on DM
78 help
79 Enable driver model for Ethernet Generic PHY .
80
Claudiu Manoilff98da02021-03-14 20:14:57 +080081config DSA_SANDBOX
82 depends on DM_DSA && SANDBOX
83 default y
84 bool "Sandbox: Mocked DSA driver"
85 help
86 This driver implements a dummy DSA switch connected to a dummy sandbox
87 Ethernet device used as DSA master, to test DSA class code, including
88 exported DSA API and datapath processing of Ethernet traffic.
89
Joe Hershberger3ea143a2015-03-22 17:09:13 -050090menuconfig NETDEVICES
91 bool "Network device support"
92 depends on NET
Joe Hershbergeref0f2f52015-06-22 16:15:30 -050093 default y if DM_ETH
Joe Hershberger3ea143a2015-03-22 17:09:13 -050094 help
95 You must select Y to enable any network device support
96 Generally if you have any networking support this is a given
97
98 If unsure, say Y
99
100if NETDEVICES
101
Philipp Tomsich449ea2c2017-03-26 18:50:23 +0200102config PHY_GIGE
103 bool "Enable GbE PHY status parsing and configuration"
104 help
105 Enables support for parsing the status output and for
106 configuring GbE PHYs (affects the inner workings of some
107 commands and miiphyutil.c).
108
Marek Vasute40095f2016-05-24 23:29:09 +0200109config AG7XXX
110 bool "Atheros AG7xxx Ethernet MAC support"
111 depends on DM_ETH && ARCH_ATH79
112 select PHYLIB
113 help
114 This driver supports the Atheros AG7xxx Ethernet MAC. This MAC is
115 present in the Atheros AR7xxx, AR9xxx and QCA9xxx MIPS chips.
116
117
Thomas Chou96fa1e42015-10-22 15:29:11 +0800118config ALTERA_TSE
119 bool "Altera Triple-Speed Ethernet MAC support"
120 depends on DM_ETH
121 select PHYLIB
122 help
123 This driver supports the Altera Triple-Speed (TSE) Ethernet MAC.
124 Please find details on the "Triple-Speed Ethernet MegaCore Function
125 Resource Center" of Altera.
126
Suji Velupillaic89782d2017-07-10 14:05:41 -0700127config BCM_SF2_ETH
128 bool "Broadcom SF2 (Starfighter2) Ethernet support"
129 select PHYLIB
130 help
131 This is an abstract framework which provides a generic interface
132 to MAC and DMA management for multiple Broadcom SoCs such as
133 Cygnus, NSP and bcm28155_ap platforms.
134
135config BCM_SF2_ETH_DEFAULT_PORT
136 int "Broadcom SF2 (Starfighter2) Ethernet default port number"
137 depends on BCM_SF2_ETH
138 default 0
139 help
140 Default port number for the Starfighter2 ethernet driver.
141
142config BCM_SF2_ETH_GMAC
143 bool "Broadcom SF2 (Starfighter2) GMAC Ethernet support"
144 depends on BCM_SF2_ETH
145 help
146 This flag enables the ethernet support for Broadcom platforms with
147 GMAC such as Cygnus. This driver is based on the framework provided
148 by the BCM_SF2_ETH driver.
149 Say Y to any bcmcygnus based platforms.
150
Álvaro Fernández Rojas55e55fe2018-12-01 19:00:24 +0100151config BCM6348_ETH
152 bool "BCM6348 EMAC support"
153 depends on DM_ETH && ARCH_BMIPS
154 select DMA
155 select DMA_CHANNELS
156 select MII
157 select PHYLIB
158 help
159 This driver supports the BCM6348 Ethernet MAC.
160
Álvaro Fernández Rojas96229722018-12-01 19:00:32 +0100161config BCM6368_ETH
162 bool "BCM6368 EMAC support"
163 depends on DM_ETH && ARCH_BMIPS
164 select DMA
165 select MII
166 help
167 This driver supports the BCM6368 Ethernet MAC.
168
Amit Singh Tomard53e3fa2020-01-27 01:14:42 +0000169config BCMGENET
170 bool "BCMGENET V5 support"
171 depends on DM_ETH
172 select PHYLIB
173 help
174 This driver supports the BCMGENET Ethernet MAC.
175
Aaron Tsengfebe13b2021-01-14 13:34:11 -0800176config CORTINA_NI_ENET
177 bool "Cortina-Access Ethernet driver"
178 depends on DM_ETH && CORTINA_PLATFORM
179 help
180 This driver supports the Cortina-Access Ethernet MAC for
181 all supported CAxxxx SoCs.
182
Andre Przywaradebb07b2021-04-12 01:04:52 +0100183config CALXEDA_XGMAC
184 bool "Calxeda XGMAC support"
185 depends on DM_ETH
186 help
187 This driver supports the XGMAC in Calxeda Highbank and Midway
188 machines.
189
Stephen Warrenba4dfef2016-10-21 14:46:47 -0600190config DWC_ETH_QOS
191 bool "Synopsys DWC Ethernet QOS device support"
192 depends on DM_ETH
193 select PHYLIB
194 help
195 This driver supports the Synopsys Designware Ethernet QOS (Quality
196 Of Service) IP block. The IP supports many options for bus type,
Patrick Delaunaya08f2f72020-06-08 11:27:19 +0200197 clocking/reset structure, and feature list.
198
199config DWC_ETH_QOS_IMX
200 bool "Synopsys DWC Ethernet QOS device support for IMX"
201 depends on DWC_ETH_QOS
202 help
203 The Synopsys Designware Ethernet QOS IP block with the specific
204 configuration used in IMX soc.
205
206config DWC_ETH_QOS_STM32
207 bool "Synopsys DWC Ethernet QOS device support for STM32"
208 depends on DWC_ETH_QOS
209 default y if ARCH_STM32MP
210 help
211 The Synopsys Designware Ethernet QOS IP block with the specific
212 configuration used in STM32MP soc.
213
214config DWC_ETH_QOS_TEGRA186
215 bool "Synopsys DWC Ethernet QOS device support for TEGRA186"
216 depends on DWC_ETH_QOS
217 default y if TEGRA186
218 help
219 The Synopsys Designware Ethernet QOS IP block with specific
220 configuration used in NVIDIA's Tegra186 chip.
Stephen Warrenba4dfef2016-10-21 14:46:47 -0600221
Simon Glassc294ac52015-08-19 09:33:41 -0600222config E1000
223 bool "Intel PRO/1000 Gigabit Ethernet support"
Madalin Bucur94472222020-04-29 08:26:17 +0300224 depends on (DM_ETH && DM_PCI) || !DM_ETH
Simon Glassc294ac52015-08-19 09:33:41 -0600225 help
226 This driver supports Intel(R) PRO/1000 gigabit ethernet family of
227 adapters. For more information on how to identify your adapter, go
228 to the Adapter & Driver ID Guide at:
229
230 <http://support.intel.com/support/network/adapter/pro100/21397.htm>
231
232config E1000_SPI_GENERIC
233 bool "Allow access to the Intel 8257x SPI bus"
234 depends on E1000
235 help
236 Allow generic access to the SPI bus on the Intel 8257x, for
237 example with the "sspi" command.
238
239config E1000_SPI
240 bool "Enable SPI bus utility code"
241 depends on E1000
242 help
243 Utility code for direct access to the SPI bus on Intel 8257x.
244 This does not do anything useful unless you set at least one
245 of CONFIG_CMD_E1000 or CONFIG_E1000_SPI_GENERIC.
246
247config CMD_E1000
248 bool "Enable the e1000 command"
249 depends on E1000
250 help
251 This enables the 'e1000' management command for E1000 devices. When
252 used on devices with SPI support you can reprogram the EEPROM from
253 U-Boot.
254
Marek Vasut6463b732020-05-23 18:07:53 +0200255config EEPRO100
256 bool "Intel PRO/100 82557/82559/82559ER Fast Ethernet support"
257 help
258 This driver supports Intel(R) PRO/100 82557/82559/82559ER fast
259 ethernet family of adapters.
260
Joe Hershberger3ea143a2015-03-22 17:09:13 -0500261config ETH_SANDBOX
262 depends on DM_ETH && SANDBOX
263 default y
264 bool "Sandbox: Mocked Ethernet driver"
265 help
266 This driver simply responds with fake ARP replies and ping
267 replies that are used to verify network stack functionality
268
269 This driver is particularly useful in the test/dm/eth.c tests
270
Joe Hershbergera346ca72015-03-22 17:09:21 -0500271config ETH_SANDBOX_RAW
272 depends on DM_ETH && SANDBOX
273 default y
274 bool "Sandbox: Bridge to Linux Raw Sockets"
275 help
276 This driver is a bridge from the bottom of the network stack
277 in U-Boot to the RAW AF_PACKET API in Linux. This allows real
278 network traffic to be tested from within sandbox. See
Keerthy5917d0b2019-07-29 13:52:04 +0530279 doc/arch/index.rst for more details.
Joe Hershbergera346ca72015-03-22 17:09:21 -0500280
Simon Glassef48f6d2015-04-05 16:07:34 -0600281config ETH_DESIGNWARE
282 bool "Synopsys Designware Ethernet MAC"
Thomas Chou25af71c2015-12-07 20:53:29 +0800283 select PHYLIB
Simon Goldschmidt6fb1eb12019-01-13 19:58:41 +0100284 imply ETH_DESIGNWARE_SOCFPGA if ARCH_SOCFPGA
Simon Glassef48f6d2015-04-05 16:07:34 -0600285 help
286 This MAC is present in SoCs from various vendors. It supports
287 100Mbit and 1 Gbit operation. You must enable CONFIG_PHYLIB to
288 provide the PHY (physical media interface).
289
Neil Armstrong798424e2021-02-24 20:33:56 +0100290config ETH_DESIGNWARE_MESON8B
291 bool "Amlogic Meson8b and later glue driver for Synopsys Designware Ethernet MAC"
292 depends on DM_ETH
293 select ETH_DESIGNWARE
294 help
295 This provides glue layer to use Synopsys Designware Ethernet MAC
296 present on the Amlogic Meson8b, GX, AXG & G12A SoCs.
297
Marek Vasut215a0652018-08-13 19:32:14 +0200298config ETH_DESIGNWARE_SOCFPGA
Simon Goldschmidt4f1267c2019-01-13 19:58:40 +0100299 select REGMAP
300 select SYSCON
Marek Vasut215a0652018-08-13 19:32:14 +0200301 bool "Altera SoCFPGA extras for Synopsys Designware Ethernet MAC"
302 depends on DM_ETH && ETH_DESIGNWARE
303 help
304 The Altera SoCFPGA requires additional configuration of the
305 Altera system manager to correctly interface with the PHY.
306 This code handles those SoC specifics.
307
Amit Singh Tomar3c5c4ee2020-05-09 19:55:12 +0530308config ETH_DESIGNWARE_S700
309 bool "Actins S700 glue driver for Synopsys Designware Ethernet MAC"
310 depends on DM_ETH && ETH_DESIGNWARE
311 help
312 This provides glue layer to use Synopsys Designware Ethernet MAC
313 present on Actions S700 SoC.
314
Max Filippovf0727122016-08-05 18:26:15 +0300315config ETHOC
316 bool "OpenCores 10/100 Mbps Ethernet MAC"
317 help
318 This MAC is present in OpenRISC and Xtensa XTFPGA boards.
319
Peng Fanfbada482018-03-28 20:54:14 +0800320config FEC_MXC_SHARE_MDIO
321 bool "Share the MDIO bus for FEC controller"
322 depends on FEC_MXC
323
324config FEC_MXC_MDIO_BASE
325 hex "MDIO base address for the FEC controller"
326 depends on FEC_MXC_SHARE_MDIO
327 help
328 This specifies the MDIO registers base address. It is used when
329 two FEC controllers share MDIO bus.
330
Jagan Teki97d29ca2016-10-08 18:00:12 +0530331config FEC_MXC
332 bool "FEC Ethernet controller"
Peng Fan81dc2ac2019-10-22 03:29:58 +0000333 depends on MX28 || MX5 || MX6 || MX7 || IMX8 || IMX8M || VF610
Jagan Teki97d29ca2016-10-08 18:00:12 +0530334 help
335 This driver supports the 10/100 Fast Ethernet controller for
336 NXP i.MX processors.
337
Tom Rinicc1e98b2019-05-12 07:59:12 -0400338config FMAN_ENET
339 bool "Freescale FMan ethernet support"
340 depends on ARM || PPC
341 help
342 This driver support the Freescale FMan Ethernet controller
343
Tom Rini8dc1b172017-05-26 11:18:53 -0400344config FTMAC100
345 bool "Ftmac100 Ethernet Support"
346 help
347 This MAC is present in Andestech SoCs.
348
Cédric Le Goaterf95de0b2018-10-29 07:06:31 +0100349config FTGMAC100
350 bool "Ftgmac100 Ethernet Support"
351 depends on DM_ETH
352 select PHYLIB
353 help
354 This driver supports the Faraday's FTGMAC100 Gigabit SoC
355 Ethernet controller that can be found on Aspeed SoCs (which
356 include NCSI).
357
358 It is fully compliant with IEEE 802.3 specification for
359 10/100 Mbps Ethernet and IEEE 802.3z specification for 1000
360 Mbps Ethernet and includes Reduced Media Independent
361 Interface (RMII) and Reduced Gigabit Media Independent
362 Interface (RGMII) interfaces. It adopts an AHB bus interface
363 and integrates a link list DMA engine with direct M-Bus
364 accesses for transmitting and receiving packets. It has
365 independent TX/RX fifos, supports half and full duplex (1000
366 Mbps mode only supports full duplex), flow control for full
367 duplex and backpressure for half duplex.
368
369 The FTGMAC100 also implements IP, TCP, UDP checksum offloads
370 and supports IEEE 802.1Q VLAN tag insertion and removal. It
371 offers high-priority transmit queue for QoS and CoS
372 applications.
373
374
Angelo Durgehello080bcc52019-11-15 23:54:17 +0100375config MCFFEC
376 bool "ColdFire Ethernet Support"
377 depends on DM_ETH
378 select PHYLIB
379 help
380 This driver supports the network interface units in the
381 ColdFire family.
382
383config FSLDMAFEC
384 bool "ColdFire DMA Ethernet Support"
385 depends on DM_ETH
386 select PHYLIB
387 help
388 This driver supports the network interface units in the
389 ColdFire family.
390
Marek Vasutdf4c4832020-03-25 19:08:59 +0100391config KS8851_MLL
392 bool "Microchip KS8851-MLL controller driver"
393 help
394 The Microchip KS8851 parallel bus external ethernet interface chip.
395
396if KS8851_MLL
397if !DM_ETH
398config KS8851_MLL_BASEADDR
399 hex "Microchip KS8851-MLL Base Address"
400 help
401 Define this to hold the physical address of the device (I/O space)
402endif #DM_ETH
403endif #KS8851_MLL
404
Tim Harvey668e2052021-06-30 16:50:08 -0700405config KSZ9477
406 bool "Microchip KSZ9477 I2C controller driver"
407 depends on DM_DSA && DM_I2C
408 help
409 This driver implements a DSA switch driver for the KSZ9477 family
410 of GbE switches using the I2C interface.
411
Chris Packhamed52ea52018-05-03 23:00:35 +1200412config MVGBE
413 bool "Marvell Orion5x/Kirkwood network interface support"
Trevor Woernerbb0fb4c2020-05-06 08:02:40 -0400414 depends on ARCH_KIRKWOOD || ARCH_ORION5X
Chris Packhamfb731072018-07-09 21:34:00 +1200415 select PHYLIB if DM_ETH
Chris Packhamed52ea52018-05-03 23:00:35 +1200416 help
417 This driver supports the network interface units in the
418 Marvell Orion5x and Kirkwood SoCs
419
Chris Packham7654f622017-08-21 20:17:03 +1200420config MVNETA
Miquel Raynale7ab2cc2017-12-28 15:43:09 +0100421 bool "Marvell Armada XP/385/3700 network interface support"
422 depends on ARMADA_XP || ARMADA_38X || ARMADA_3700
Chris Packham7654f622017-08-21 20:17:03 +1200423 select PHYLIB
424 help
425 This driver supports the network interface units in the
Miquel Raynale7ab2cc2017-12-28 15:43:09 +0100426 Marvell ARMADA XP, ARMADA 38X and ARMADA 3700 SoCs
Chris Packham7654f622017-08-21 20:17:03 +1200427
Stefan Roese99d4c6d2016-02-10 07:22:10 +0100428config MVPP2
Stefan Roesee7935c42017-02-15 11:42:59 +0100429 bool "Marvell Armada 375/7K/8K network interface support"
430 depends on ARMADA_375 || ARMADA_8K
Stefan Roese99d4c6d2016-02-10 07:22:10 +0100431 select PHYLIB
Nevo Hed17caaf82019-08-15 18:08:45 -0400432 select MVMDIO
433 select DM_MDIO
Stefan Roese99d4c6d2016-02-10 07:22:10 +0100434 help
435 This driver supports the network interface units in the
Stefan Roesee7935c42017-02-15 11:42:59 +0100436 Marvell ARMADA 375, 7K and 8K SoCs.
Stefan Roese99d4c6d2016-02-10 07:22:10 +0100437
Wenyou Yangebcb40a2016-11-02 10:06:55 +0800438config MACB
439 bool "Cadence MACB/GEM Ethernet Interface"
440 depends on DM_ETH
441 select PHYLIB
442 help
443 The Cadence MACB ethernet interface is found on many Atmel
444 AT91 and SAMA5 parts. This driver also supports the Cadence
445 GEM (Gigabit Ethernet MAC) found in some ARM SoC devices.
446 Say Y to include support for the MACB/GEM chip.
447
Wilson Lee4bf56912017-08-22 20:25:07 -0700448config MACB_ZYNQ
449 bool "Cadence MACB/GEM Ethernet Interface for Xilinx Zynq"
450 depends on MACB
451 help
452 The Cadence MACB ethernet interface was used on Zynq platform.
453 Say Y to enable support for the MACB/GEM in Zynq chip.
454
Weijie Gao17ade702020-11-12 16:36:53 +0800455config MT7620_ETH
456 bool "MediaTek MT7620 Ethernet Interface"
457 depends on SOC_MT7620
458 select PHYLIB
459 select DM_RESET
460 select DM_GPIO
461 select CLK
462 help
463 The MediaTek MT7620 ethernet interface is used on MT7620 based
464 boards. It has a built-in switch with two configurable ports which
465 can connect to external PHY/MACs.
466
Stefan Roesec895ef42018-10-26 14:53:27 +0200467config MT7628_ETH
468 bool "MediaTek MT7628 Ethernet Interface"
Weijie Gao16b94902019-04-30 11:13:58 +0800469 depends on SOC_MT7628
Weijie Gaof0793212019-09-25 17:45:33 +0800470 select PHYLIB
Stefan Roesec895ef42018-10-26 14:53:27 +0200471 help
472 The MediaTek MT7628 ethernet interface is used on MT7628 and
473 MT7688 based boards.
474
Suneel Garapati0008e9a2020-08-26 14:37:33 +0200475config NET_OCTEONTX
476 bool "OcteonTX Ethernet support"
477 depends on ARCH_OCTEONTX
478 depends on PCI_SRIOV
479 help
480 You must select Y to enable network device support for
481 OcteonTX SoCs. If unsure, say n
Suneel Garapati4684a7a2020-08-26 14:37:42 +0200482
483config NET_OCTEONTX2
484 bool "OcteonTX2 Ethernet support"
485 depends on ARCH_OCTEONTX2
486 select OCTEONTX2_CGX_INTF
487 help
488 You must select Y to enable network device support for
489 OcteonTX2 SoCs. If unsure, say n
490
Suneel Garapati0008e9a2020-08-26 14:37:33 +0200491config OCTEONTX_SMI
492 bool "OcteonTX SMI Device support"
493 depends on ARCH_OCTEONTX || ARCH_OCTEONTX2
494 help
495 You must select Y to enable SMI controller support for
496 OcteonTX or OcteonTX2 SoCs. If unsure, say n
497
Suneel Garapati4684a7a2020-08-26 14:37:42 +0200498config OCTEONTX2_CGX_INTF
499 bool "OcteonTX2 CGX ATF interface support"
500 depends on ARCH_OCTEONTX2
501 default y if ARCH_OCTEONTX2
502 help
503 You must select Y to enable CGX ATF interface support for
504 OcteonTX2 SoCs. If unsure, say n
505
Bin Mengb68fe152015-08-27 22:25:58 -0700506config PCH_GBE
507 bool "Intel Platform Controller Hub EG20T GMAC driver"
508 depends on DM_ETH && DM_PCI
509 select PHYLIB
510 help
511 This MAC is present in Intel Platform Controller Hub EG20T. It
512 supports 10/100/1000 Mbps operation.
513
Mylène Josserand751b0be2017-04-02 12:59:08 +0200514config RGMII
515 bool "Enable RGMII"
516 help
517 Enable the support of the Reduced Gigabit Media-Independent
518 Interface (RGMII).
519
Adam Fordd7869b22018-07-20 23:03:57 -0500520config MII
521 bool "Enable MII"
522 help
523 Enable support of the Media-Independent Interface (MII)
524
Marek Vasutd789a822020-05-17 18:14:17 +0200525config PCNET
526 bool "AMD PCnet series Ethernet controller driver"
527 help
528 This driver supports AMD PCnet series fast ethernet family of
529 PCI chipsets/adapters.
530
Heiko Schocher6e31c622020-02-06 09:48:16 +0100531source "drivers/net/qe/Kconfig"
532
Bin Meng86e9dc82016-03-21 06:47:41 -0700533config RTL8139
534 bool "Realtek 8139 series Ethernet controller driver"
535 help
536 This driver supports Realtek 8139 series fast ethernet family of
537 PCI chipsets/adapters.
538
Bin Meng0764f242016-03-21 06:47:42 -0700539config RTL8169
540 bool "Realtek 8169 series Ethernet controller driver"
541 help
542 This driver supports Realtek 8169 series gigabit ethernet family of
543 PCI/PCIe chipsets/adapters.
544
Adam Ford8daec2d2017-09-05 15:20:44 -0500545config SMC911X
546 bool "SMSC LAN911x and LAN921x controller driver"
547
548if SMC911X
549
Marek Vasut81486932020-03-15 17:39:01 +0100550if !DM_ETH
Adam Ford8daec2d2017-09-05 15:20:44 -0500551config SMC911X_BASE
552 hex "SMC911X Base Address"
553 help
554 Define this to hold the physical address
555 of the device (I/O space)
Marek Vasut81486932020-03-15 17:39:01 +0100556endif #DM_ETH
Adam Ford8daec2d2017-09-05 15:20:44 -0500557
Adam Ford8daec2d2017-09-05 15:20:44 -0500558config SMC911X_32_BIT
Andre Przywaraf26c9d72021-06-28 14:30:30 +0100559 bool "Enable SMC911X 32-bit interface"
560 default n
Adam Ford8daec2d2017-09-05 15:20:44 -0500561 help
Andre Przywaraf26c9d72021-06-28 14:30:30 +0100562 Define this if data bus is 32 bits. If your processor use a
563 narrower 16 bit bus or cannot convert one 32 bit word to two 16 bit
564 words, leave this to "n".
Adam Ford8daec2d2017-09-05 15:20:44 -0500565
Adam Ford8daec2d2017-09-05 15:20:44 -0500566endif #SMC911X
567
Mylène Josserand4d43d062017-04-02 12:59:03 +0200568config SUN7I_GMAC
569 bool "Enable Allwinner GMAC Ethernet support"
570 help
571 Enable the support for Sun7i GMAC Ethernet controller
572
Stefan Mavrodievaba39242017-11-03 08:56:51 +0200573config SUN7I_GMAC_FORCE_TXERR
574 bool "Force PA17 as gmac function"
575 depends on SUN7I_GMAC
576 help
577 Some ethernet phys needs TXERR control. Since the GMAC
578 doesn't have such signal, setting PA17 as GMAC function
579 makes the pin output low, which enables data transmission.
580
Mylène Josserandabc3e4d2017-04-02 12:59:07 +0200581config SUN4I_EMAC
582 bool "Allwinner Sun4i Ethernet MAC support"
583 depends on DM_ETH
Artturi Alm6270a3f2017-11-08 05:08:58 +0200584 select PHYLIB
Mylène Josserandabc3e4d2017-04-02 12:59:07 +0200585 help
586 This driver supports the Allwinner based SUN4I Ethernet MAC.
587
Amit Singh Tomara29710c2016-07-06 17:59:44 +0530588config SUN8I_EMAC
589 bool "Allwinner Sun8i Ethernet MAC support"
590 depends on DM_ETH
591 select PHYLIB
Philipp Tomsich449ea2c2017-03-26 18:50:23 +0200592 select PHY_GIGE
Amit Singh Tomara29710c2016-07-06 17:59:44 +0530593 help
594 This driver supports the Allwinner based SUN8I/SUN50I Ethernet MAC.
595 It can be found in H3/A64/A83T based SoCs and compatible with both
Tom Rini7131d2d2017-02-20 09:38:03 -0500596 External and Internal PHYs.
Amit Singh Tomara29710c2016-07-06 17:59:44 +0530597
Nobuhiro Iwamatsudcd18ea2017-12-01 16:08:03 +0900598config SH_ETHER
599 bool "Renesas SH Ethernet MAC"
600 select PHYLIB
601 help
602 This driver supports the Ethernet for Renesas SH and ARM SoCs.
603
Grygorii Strashkoffad5fa2018-10-31 16:21:39 -0500604source "drivers/net/ti/Kconfig"
Adam Fordd7869b22018-07-20 23:03:57 -0500605
Marek Vasuta410f132020-06-20 17:43:29 +0200606config TULIP
607 bool "DEC Tulip DC2114x Ethernet support"
608 depends on (DM_ETH && DM_PCI) || !DM_ETH
609 help
610 This driver supports DEC DC2114x Fast ethernet chips.
611
Michal Simek338a5f22015-12-09 16:54:42 +0100612config XILINX_AXIEMAC
Michal Simek664e16c2020-08-06 15:18:36 +0200613 depends on DM_ETH
Michal Simek338a5f22015-12-09 16:54:42 +0100614 select PHYLIB
615 select MII
616 bool "Xilinx AXI Ethernet"
617 help
618 This MAC is present in Xilinx Microblaze, Zynq and ZynqMP SoCs.
619
Michal Simek3229c862015-12-11 09:41:49 +0100620config XILINX_EMACLITE
Michal Simek664e16c2020-08-06 15:18:36 +0200621 depends on DM_ETH
Michal Simek3229c862015-12-11 09:41:49 +0100622 select PHYLIB
623 select MII
624 bool "Xilinx Ethernetlite"
625 help
626 This MAC is present in Xilinx Microblaze, Zynq and ZynqMP SoCs.
627
Michal Simek596e5782015-11-30 14:34:52 +0100628config ZYNQ_GEM
Michal Simek664e16c2020-08-06 15:18:36 +0200629 depends on DM_ETH
Michal Simek7bccc752015-12-11 09:14:31 +0100630 select PHYLIB
Michal Simek596e5782015-11-30 14:34:52 +0100631 bool "Xilinx Ethernet GEM"
632 help
Michal Simekc9428102015-12-09 16:53:52 +0100633 This MAC is present in Xilinx Zynq and ZynqMP SoCs.
Michal Simek596e5782015-11-30 14:34:52 +0100634
Purna Chandra Mandal23e75782016-01-28 15:30:21 +0530635config PIC32_ETH
636 bool "Microchip PIC32 Ethernet Support"
637 depends on DM_ETH && MACH_PIC32
638 select PHYLIB
639 help
640 This driver implements 10/100 Mbps Ethernet and MAC layer for
641 Microchip PIC32 microcontrollers.
642
Sjoerd Simons0125bcf2017-01-11 11:46:11 +0100643config GMAC_ROCKCHIP
644 bool "Rockchip Synopsys Designware Ethernet MAC"
645 depends on DM_ETH && ETH_DESIGNWARE
646 help
647 This driver provides Rockchip SoCs network support based on the
648 Synopsys Designware driver.
649
Marek Vasut8ae51b62017-05-13 15:54:28 +0200650config RENESAS_RAVB
651 bool "Renesas Ethernet AVB MAC"
652 depends on DM_ETH && RCAR_GEN3
653 select PHYLIB
654 help
655 This driver implements support for the Ethernet AVB block in
656 Renesas M3 and H3 SoCs.
657
Christophe Leroyfad51ac2017-07-06 10:33:23 +0200658config MPC8XX_FEC
659 bool "Fast Ethernet Controller on MPC8XX"
Christophe Leroyee1e6002018-03-16 17:20:41 +0100660 depends on MPC8xx
Christophe Leroyfad51ac2017-07-06 10:33:23 +0200661 select MII
662 help
663 This driver implements support for the Fast Ethernet Controller
664 on MPC8XX
665
Kunihiko Hayashia8927792018-05-24 19:24:37 +0900666config SNI_AVE
667 bool "Socionext AVE Ethernet support"
668 depends on DM_ETH && ARCH_UNIPHIER
669 select PHYLIB
670 select SYSCON
671 select REGMAP
672 help
673 This driver implements support for the Socionext AVE Ethernet
674 controller, as found on the Socionext UniPhier family.
675
Jassi Brareab447b2021-06-04 18:44:38 +0900676config SNI_NETSEC
677 bool "Socionext NETSEC Ethernet support"
678 depends on DM_ETH && SYNQUACER_SPI
679 select PHYLIB
680 help
681 This driver implements support for the Socionext SynQuacer NETSEC
682 ethernet controller, as found on the Socionext SynQuacer family.
683
Horatiu Vultur4c661572019-01-31 15:30:33 +0100684source "drivers/net/mscc_eswitch/Kconfig"
Gregory CLEMENTc8546162019-01-17 17:07:13 +0100685
Christophe Leroyfad51ac2017-07-06 10:33:23 +0200686config ETHER_ON_FEC1
687 bool "FEC1"
688 depends on MPC8XX_FEC
689 default y
690
691config FEC1_PHY
692 int "FEC1 PHY"
693 depends on ETHER_ON_FEC1
694 default -1
695 help
696 Define to the hardcoded PHY address which corresponds
697 to the given FEC; i. e.
698 #define CONFIG_FEC1_PHY 4
699 means that the PHY with address 4 is connected to FEC1
700
701 When set to -1, means to probe for first available.
702
703config PHY_NORXERR
704 bool "PHY_NORXERR"
705 depends on ETHER_ON_FEC1
706 default n
707 help
708 The PHY does not have a RXERR line (RMII only).
709 (so program the FEC to ignore it).
710
711config ETHER_ON_FEC2
712 bool "FEC2"
713 depends on MPC8XX_FEC && MPC885
714 default y
715
716config FEC2_PHY
717 int "FEC2 PHY"
718 depends on ETHER_ON_FEC2
719 default -1
720 help
721 Define to the hardcoded PHY address which corresponds
722 to the given FEC; i. e.
723 #define CONFIG_FEC1_PHY 4
724 means that the PHY with address 4 is connected to FEC1
725
726 When set to -1, means to probe for first available.
727
728config FEC2_PHY_NORXERR
729 bool "PHY_NORXERR"
730 depends on ETHER_ON_FEC2
731 default n
732 help
733 The PHY does not have a RXERR line (RMII only).
734 (so program the FEC to ignore it).
735
Ahmed Mansour541d5762017-12-15 16:01:01 -0500736config SYS_DPAA_QBMAN
737 bool "Device tree fixup for QBMan on freescale SOCs"
738 depends on (ARM || PPC) && !SPL_BUILD
739 default y if ARCH_B4860 || \
740 ARCH_B4420 || \
741 ARCH_P1023 || \
742 ARCH_P2041 || \
Ahmed Mansour541d5762017-12-15 16:01:01 -0500743 ARCH_T1024 || \
744 ARCH_T1040 || \
745 ARCH_T1042 || \
746 ARCH_T2080 || \
Ahmed Mansour541d5762017-12-15 16:01:01 -0500747 ARCH_T4240 || \
Ahmed Mansour541d5762017-12-15 16:01:01 -0500748 ARCH_P4080 || \
749 ARCH_P3041 || \
750 ARCH_P5040 || \
Ahmed Mansour541d5762017-12-15 16:01:01 -0500751 ARCH_LS1043A || \
752 ARCH_LS1046A
753 help
754 QBman fixups to allow deep sleep in DPAA 1 SOCs
755
Mario Six17151052018-03-28 14:38:18 +0200756config TSEC_ENET
757 select PHYLIB
758 bool "Enable Three-Speed Ethernet Controller"
759 help
760 This driver implements support for the (Enhanced) Three-Speed
761 Ethernet Controller found on Freescale SoCs.
762
Weijie Gao23f17162018-12-20 16:12:53 +0800763config MEDIATEK_ETH
764 bool "MediaTek Ethernet GMAC Driver"
765 depends on DM_ETH
766 select PHYLIB
767 select DM_GPIO
768 select DM_RESET
769 help
770 This Driver support MediaTek Ethernet GMAC
771 Say Y to enable support for the MediaTek Ethernet GMAC.
772
Shawn Guo1d5b5d22019-03-20 15:32:40 +0800773config HIGMACV300_ETH
774 bool "HiSilicon Gigabit Ethernet Controller"
775 depends on DM_ETH
776 select DM_RESET
777 select PHYLIB
778 help
779 This driver supports HIGMACV300 Ethernet controller found on
780 HiSilicon SoCs.
781
Alex Marginean120b5ef2019-07-03 12:11:40 +0300782config FSL_ENETC
783 bool "NXP ENETC Ethernet controller"
Alex Marginean1d995342019-07-03 12:11:41 +0300784 depends on DM_PCI && DM_ETH && DM_MDIO
Alex Marginean120b5ef2019-07-03 12:11:40 +0300785 help
786 This driver supports the NXP ENETC Ethernet controller found on some
787 of the NXP SoCs.
788
Alex Marginean74dd3832019-07-16 11:21:17 +0300789config MDIO_MUX_I2CREG
790 bool "MDIO MUX accessed as a register over I2C"
791 depends on DM_MDIO_MUX && DM_I2C
792 help
793 This driver is used for MDIO muxes driven by writing to a register of
794 an I2C chip. The board it was developed for uses a mux controlled by
795 on-board FPGA which in turn is accessed as a chip over I2C.
796
Robert Marko975151d2020-10-08 22:05:11 +0200797config MDIO_IPQ4019
798 bool "Qualcomm IPQ4019 MDIO interface support"
799 depends on DM_MDIO
800 help
801 This driver supports the MDIO interface found in Qualcomm
802 IPQ40xx series Soc-s.
803
Alex Marginean8bd37ce2019-07-25 12:33:19 +0300804config MVMDIO
805 bool "Marvell MDIO interface support"
806 depends on DM_MDIO
807 help
808 This driver supports the MDIO interface found in the network
809 interface units of the Marvell EBU SoCs (Kirkwood, Orion5x,
810 Dove, Armada 370, Armada XP, Armada 37xx and Armada7K/8K/8KP).
811
812 This driver is used by the MVPP2 and MVNETA drivers.
813
Ioana Ciornei52e16ec2020-03-18 16:47:36 +0200814config FSL_LS_MDIO
815 bool "NXP Layerscape MDIO interface support"
816 depends on DM_MDIO
817 help
818 This driver supports the MDIO bus found on the Fman 10G Ethernet MACs and
819 on the mEMAC (which supports both Clauses 22 and 45).
820
Neil Armstrong6c7bc9f2021-02-24 15:02:23 +0100821config MDIO_MUX_MMIOREG
822 bool "MDIO MUX accessed as a MMIO register access"
823 depends on DM_MDIO_MUX
824 help
825 This driver is used for MDIO muxes driven by writing to a register in
826 the MMIO physical memory.
827
Neil Armstrong8120ce12021-02-24 17:31:53 +0100828config MDIO_MUX_MESON_G12A
829 bool "MDIO MUX for Amlogic Meson G12A SoCs"
830 depends on DM_MDIO_MUX
831 help
832 This driver is used for the MDIO mux found on the Amlogic G12A & compatible
833 SoCs.
834
Joe Hershberger3ea143a2015-03-22 17:09:13 -0500835endif # NETDEVICES