blob: 5d90a924aab20bfd7c5db95955adf2856ac826c2 [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"
Bharat Gooty5a5bba02021-11-08 14:46:10 -08004source "drivers/net/bnxt/Kconfig"
Alexaf2cbfd2017-02-06 19:17:34 -08005
Simon Glass9f664922021-08-08 12:20:31 -06006config ETH
7 def_bool y
8
Joe Hershberger05c3e682015-03-22 17:09:10 -05009config DM_ETH
10 bool "Enable Driver Model for Ethernet drivers"
11 depends on DM
12 help
13 Enable driver model for Ethernet.
14
Joe Hershbergerc25f4062018-07-02 14:47:48 -050015 The eth_*() interface will be implemented by the UCLASS_ETH class
16 This is currently implemented in net/eth-uclass.c
Joe Hershberger05c3e682015-03-22 17:09:10 -050017 Look in include/net.h for details.
Joe Hershberger3ea143a2015-03-22 17:09:13 -050018
Alex Margineanc3452b52019-06-03 19:10:30 +030019config DM_MDIO
20 bool "Enable Driver Model for MDIO devices"
21 depends on DM_ETH && PHYLIB
22 help
23 Enable driver model for MDIO devices
24
25 Adds UCLASS_MDIO DM class supporting MDIO buses that are probed as
26 stand-alone devices. Useful in particular for systems that support
27 DM_ETH and have a stand-alone MDIO hardware block shared by multiple
28 Ethernet interfaces.
29 This is currently implemented in net/mdio-uclass.c
30 Look in include/miiphy.h for details.
31
Alex Marginean8880edb2019-07-12 10:13:50 +030032config DM_MDIO_MUX
33 bool "Enable Driver Model for MDIO MUX devices"
34 depends on DM_MDIO
35 help
36 Enable driver model for MDIO MUX devices
37
38 Adds UCLASS_MDIO_MUX DM class supporting MDIO MUXes. Useful for
39 systems that support DM_MDIO and integrate one or multiple muxes on
40 the MDIO bus.
41 This is currently implemented in net/mdio-mux-uclass.c
42 Look in include/miiphy.h for details.
43
Claudiu Manoilfc054d52021-01-25 14:23:53 +020044config DM_DSA
45 bool "Enable Driver Model for DSA switches"
46 depends on DM_ETH && DM_MDIO
47 depends on PHY_FIXED
48 help
49 Enable driver model for DSA switches
50
51 Adds UCLASS_DSA class supporting switches that follow the Distributed
52 Switch Architecture (DSA). These switches rely on the presence of a
53 management switch port connected to an Ethernet controller capable of
54 receiving frames from the switch. This host Ethernet controller is
55 called the "master" Ethernet interface in DSA terminology.
56 This is currently implemented in net/dsa-uclass.c, refer to
57 include/net/dsa.h for API details.
58
Alex Margineanec9594a2019-06-03 19:12:28 +030059config MDIO_SANDBOX
60 depends on DM_MDIO && SANDBOX
61 default y
62 bool "Sandbox: Mocked MDIO driver"
63 help
64 This driver implements dummy read/write/reset MDIO functions mimicking
65 a bus with a single PHY.
66
67 This driver is used in for testing in test/dm/mdio.c
68
Alex Margineanc3d9f3f2019-07-12 10:13:53 +030069config MDIO_MUX_SANDBOX
70 depends on DM_MDIO_MUX && MDIO_SANDBOX
71 default y
72 bool "Sandbox: Mocked MDIO-MUX driver"
73 help
74 This driver implements dummy select/deselect ops mimicking a MUX on
75 the MDIO bux. It uses mdio_sandbox driver as parent MDIO.
76
77 This driver is used for testing in test/dm/mdio.c
78
Ye Li5fe419e2020-05-03 22:41:14 +080079config DM_ETH_PHY
80 bool "Enable Driver Model for Ethernet Generic PHY drivers"
81 depends on DM
82 help
83 Enable driver model for Ethernet Generic PHY .
84
Claudiu Manoilff98da02021-03-14 20:14:57 +080085config DSA_SANDBOX
86 depends on DM_DSA && SANDBOX
87 default y
88 bool "Sandbox: Mocked DSA driver"
89 help
90 This driver implements a dummy DSA switch connected to a dummy sandbox
91 Ethernet device used as DSA master, to test DSA class code, including
92 exported DSA API and datapath processing of Ethernet traffic.
93
Joe Hershberger3ea143a2015-03-22 17:09:13 -050094menuconfig NETDEVICES
95 bool "Network device support"
96 depends on NET
Joe Hershbergeref0f2f52015-06-22 16:15:30 -050097 default y if DM_ETH
Joe Hershberger3ea143a2015-03-22 17:09:13 -050098 help
99 You must select Y to enable any network device support
100 Generally if you have any networking support this is a given
101
102 If unsure, say Y
103
104if NETDEVICES
105
Philipp Tomsich449ea2c2017-03-26 18:50:23 +0200106config PHY_GIGE
107 bool "Enable GbE PHY status parsing and configuration"
108 help
109 Enables support for parsing the status output and for
110 configuring GbE PHYs (affects the inner workings of some
111 commands and miiphyutil.c).
112
Marek Vasute40095f2016-05-24 23:29:09 +0200113config AG7XXX
114 bool "Atheros AG7xxx Ethernet MAC support"
115 depends on DM_ETH && ARCH_ATH79
116 select PHYLIB
117 help
118 This driver supports the Atheros AG7xxx Ethernet MAC. This MAC is
119 present in the Atheros AR7xxx, AR9xxx and QCA9xxx MIPS chips.
120
121
Thomas Chou96fa1e42015-10-22 15:29:11 +0800122config ALTERA_TSE
123 bool "Altera Triple-Speed Ethernet MAC support"
124 depends on DM_ETH
125 select PHYLIB
126 help
127 This driver supports the Altera Triple-Speed (TSE) Ethernet MAC.
128 Please find details on the "Triple-Speed Ethernet MegaCore Function
129 Resource Center" of Altera.
130
Suji Velupillaic89782d2017-07-10 14:05:41 -0700131config BCM_SF2_ETH
132 bool "Broadcom SF2 (Starfighter2) Ethernet support"
133 select PHYLIB
134 help
135 This is an abstract framework which provides a generic interface
136 to MAC and DMA management for multiple Broadcom SoCs such as
137 Cygnus, NSP and bcm28155_ap platforms.
138
139config BCM_SF2_ETH_DEFAULT_PORT
140 int "Broadcom SF2 (Starfighter2) Ethernet default port number"
141 depends on BCM_SF2_ETH
142 default 0
143 help
144 Default port number for the Starfighter2 ethernet driver.
145
146config BCM_SF2_ETH_GMAC
147 bool "Broadcom SF2 (Starfighter2) GMAC Ethernet support"
148 depends on BCM_SF2_ETH
149 help
150 This flag enables the ethernet support for Broadcom platforms with
151 GMAC such as Cygnus. This driver is based on the framework provided
152 by the BCM_SF2_ETH driver.
153 Say Y to any bcmcygnus based platforms.
154
Álvaro Fernández Rojas55e55fe2018-12-01 19:00:24 +0100155config BCM6348_ETH
156 bool "BCM6348 EMAC support"
157 depends on DM_ETH && ARCH_BMIPS
158 select DMA
159 select DMA_CHANNELS
160 select MII
161 select PHYLIB
162 help
163 This driver supports the BCM6348 Ethernet MAC.
164
Álvaro Fernández Rojas96229722018-12-01 19:00:32 +0100165config BCM6368_ETH
166 bool "BCM6368 EMAC support"
167 depends on DM_ETH && ARCH_BMIPS
168 select DMA
169 select MII
170 help
171 This driver supports the BCM6368 Ethernet MAC.
172
Amit Singh Tomard53e3fa2020-01-27 01:14:42 +0000173config BCMGENET
174 bool "BCMGENET V5 support"
175 depends on DM_ETH
176 select PHYLIB
177 help
178 This driver supports the BCMGENET Ethernet MAC.
179
Aaron Tsengfebe13b2021-01-14 13:34:11 -0800180config CORTINA_NI_ENET
181 bool "Cortina-Access Ethernet driver"
182 depends on DM_ETH && CORTINA_PLATFORM
183 help
184 This driver supports the Cortina-Access Ethernet MAC for
185 all supported CAxxxx SoCs.
186
Andre Przywaradebb07b2021-04-12 01:04:52 +0100187config CALXEDA_XGMAC
188 bool "Calxeda XGMAC support"
189 depends on DM_ETH
190 help
191 This driver supports the XGMAC in Calxeda Highbank and Midway
192 machines.
193
Marek Vasutf478da92022-04-13 04:15:38 +0200194config DRIVER_DM9000
195 bool "Davicom DM9000 controller driver"
196 help
197 The Davicom DM9000 parallel bus external ethernet interface chip.
198
Stephen Warrenba4dfef2016-10-21 14:46:47 -0600199config DWC_ETH_QOS
200 bool "Synopsys DWC Ethernet QOS device support"
201 depends on DM_ETH
202 select PHYLIB
203 help
204 This driver supports the Synopsys Designware Ethernet QOS (Quality
205 Of Service) IP block. The IP supports many options for bus type,
Patrick Delaunaya08f2f72020-06-08 11:27:19 +0200206 clocking/reset structure, and feature list.
207
208config DWC_ETH_QOS_IMX
209 bool "Synopsys DWC Ethernet QOS device support for IMX"
210 depends on DWC_ETH_QOS
211 help
212 The Synopsys Designware Ethernet QOS IP block with the specific
213 configuration used in IMX soc.
214
215config DWC_ETH_QOS_STM32
216 bool "Synopsys DWC Ethernet QOS device support for STM32"
217 depends on DWC_ETH_QOS
Patrick Delaunay9dbdc232021-07-20 20:09:55 +0200218 select DM_ETH_PHY
Patrick Delaunaya08f2f72020-06-08 11:27:19 +0200219 default y if ARCH_STM32MP
220 help
221 The Synopsys Designware Ethernet QOS IP block with the specific
222 configuration used in STM32MP soc.
223
224config DWC_ETH_QOS_TEGRA186
225 bool "Synopsys DWC Ethernet QOS device support for TEGRA186"
226 depends on DWC_ETH_QOS
227 default y if TEGRA186
228 help
229 The Synopsys Designware Ethernet QOS IP block with specific
230 configuration used in NVIDIA's Tegra186 chip.
Stephen Warrenba4dfef2016-10-21 14:46:47 -0600231
Simon Glassc294ac52015-08-19 09:33:41 -0600232config E1000
233 bool "Intel PRO/1000 Gigabit Ethernet support"
Sean Andersond64ac852022-04-26 14:35:33 -0400234 depends on PCI
Simon Glassc294ac52015-08-19 09:33:41 -0600235 help
236 This driver supports Intel(R) PRO/1000 gigabit ethernet family of
237 adapters. For more information on how to identify your adapter, go
238 to the Adapter & Driver ID Guide at:
239
240 <http://support.intel.com/support/network/adapter/pro100/21397.htm>
241
Tom Rini5c511ea2022-06-08 08:24:23 -0400242config E1000_NO_NVM
243 bool "Intel PRO/1000 has no NVMEM / EEPROM"
244 depends on E1000
245
Simon Glassc294ac52015-08-19 09:33:41 -0600246config E1000_SPI_GENERIC
247 bool "Allow access to the Intel 8257x SPI bus"
248 depends on E1000
249 help
250 Allow generic access to the SPI bus on the Intel 8257x, for
251 example with the "sspi" command.
252
253config E1000_SPI
254 bool "Enable SPI bus utility code"
255 depends on E1000
256 help
257 Utility code for direct access to the SPI bus on Intel 8257x.
258 This does not do anything useful unless you set at least one
259 of CONFIG_CMD_E1000 or CONFIG_E1000_SPI_GENERIC.
260
261config CMD_E1000
262 bool "Enable the e1000 command"
263 depends on E1000
264 help
265 This enables the 'e1000' management command for E1000 devices. When
266 used on devices with SPI support you can reprogram the EEPROM from
267 U-Boot.
268
Marek Vasut6463b732020-05-23 18:07:53 +0200269config EEPRO100
270 bool "Intel PRO/100 82557/82559/82559ER Fast Ethernet support"
271 help
272 This driver supports Intel(R) PRO/100 82557/82559/82559ER fast
273 ethernet family of adapters.
274
Joe Hershberger3ea143a2015-03-22 17:09:13 -0500275config ETH_SANDBOX
276 depends on DM_ETH && SANDBOX
277 default y
278 bool "Sandbox: Mocked Ethernet driver"
279 help
280 This driver simply responds with fake ARP replies and ping
281 replies that are used to verify network stack functionality
282
283 This driver is particularly useful in the test/dm/eth.c tests
284
Joe Hershbergera346ca72015-03-22 17:09:21 -0500285config ETH_SANDBOX_RAW
286 depends on DM_ETH && SANDBOX
287 default y
288 bool "Sandbox: Bridge to Linux Raw Sockets"
289 help
290 This driver is a bridge from the bottom of the network stack
291 in U-Boot to the RAW AF_PACKET API in Linux. This allows real
292 network traffic to be tested from within sandbox. See
Keerthy5917d0b2019-07-29 13:52:04 +0530293 doc/arch/index.rst for more details.
Joe Hershbergera346ca72015-03-22 17:09:21 -0500294
Simon Glassef48f6d2015-04-05 16:07:34 -0600295config ETH_DESIGNWARE
296 bool "Synopsys Designware Ethernet MAC"
Thomas Chou25af71c2015-12-07 20:53:29 +0800297 select PHYLIB
Simon Goldschmidt6fb1eb12019-01-13 19:58:41 +0100298 imply ETH_DESIGNWARE_SOCFPGA if ARCH_SOCFPGA
Simon Glassef48f6d2015-04-05 16:07:34 -0600299 help
300 This MAC is present in SoCs from various vendors. It supports
301 100Mbit and 1 Gbit operation. You must enable CONFIG_PHYLIB to
302 provide the PHY (physical media interface).
303
Neil Armstrong798424e2021-02-24 20:33:56 +0100304config ETH_DESIGNWARE_MESON8B
305 bool "Amlogic Meson8b and later glue driver for Synopsys Designware Ethernet MAC"
306 depends on DM_ETH
307 select ETH_DESIGNWARE
308 help
309 This provides glue layer to use Synopsys Designware Ethernet MAC
310 present on the Amlogic Meson8b, GX, AXG & G12A SoCs.
311
Marek Vasut215a0652018-08-13 19:32:14 +0200312config ETH_DESIGNWARE_SOCFPGA
Simon Goldschmidt4f1267c2019-01-13 19:58:40 +0100313 select REGMAP
314 select SYSCON
Tom Rini89d888e2022-06-15 12:03:43 -0400315 select DW_ALTDESCRIPTOR
Marek Vasut215a0652018-08-13 19:32:14 +0200316 bool "Altera SoCFPGA extras for Synopsys Designware Ethernet MAC"
317 depends on DM_ETH && ETH_DESIGNWARE
318 help
319 The Altera SoCFPGA requires additional configuration of the
320 Altera system manager to correctly interface with the PHY.
321 This code handles those SoC specifics.
322
Amit Singh Tomar3c5c4ee2020-05-09 19:55:12 +0530323config ETH_DESIGNWARE_S700
324 bool "Actins S700 glue driver for Synopsys Designware Ethernet MAC"
325 depends on DM_ETH && ETH_DESIGNWARE
326 help
327 This provides glue layer to use Synopsys Designware Ethernet MAC
328 present on Actions S700 SoC.
329
Tom Rini89d888e2022-06-15 12:03:43 -0400330config DW_ALTDESCRIPTOR
331 bool "Designware Ethernet MAC uses alternate (enhanced) descriptors"
332 depends on ETH_DESIGNWARE
333
Max Filippovf0727122016-08-05 18:26:15 +0300334config ETHOC
335 bool "OpenCores 10/100 Mbps Ethernet MAC"
336 help
337 This MAC is present in OpenRISC and Xtensa XTFPGA boards.
338
Peng Fanfbada482018-03-28 20:54:14 +0800339config FEC_MXC_SHARE_MDIO
340 bool "Share the MDIO bus for FEC controller"
341 depends on FEC_MXC
342
343config FEC_MXC_MDIO_BASE
344 hex "MDIO base address for the FEC controller"
345 depends on FEC_MXC_SHARE_MDIO
346 help
347 This specifies the MDIO registers base address. It is used when
348 two FEC controllers share MDIO bus.
349
Jagan Teki97d29ca2016-10-08 18:00:12 +0530350config FEC_MXC
351 bool "FEC Ethernet controller"
Peng Fan09de5652022-07-26 16:41:12 +0800352 depends on MX28 || MX5 || MX6 || MX7 || IMX8 || IMX8M || IMX8ULP || IMX93 || VF610
Jagan Teki97d29ca2016-10-08 18:00:12 +0530353 help
354 This driver supports the 10/100 Fast Ethernet controller for
355 NXP i.MX processors.
356
Tom Rinicc1e98b2019-05-12 07:59:12 -0400357config FMAN_ENET
358 bool "Freescale FMan ethernet support"
359 depends on ARM || PPC
360 help
361 This driver support the Freescale FMan Ethernet controller
362
Rajesh Bhagata97a0712021-11-09 16:30:38 +0530363config SYS_FMAN_FW_ADDR
364 hex "FMAN Firmware Address"
365 depends on FMAN_ENET
366 default 0x0
367
368config SYS_QE_FMAN_FW_LENGTH
369 hex "FMAN QE Firmware length"
370 depends on FMAN_ENET || QE || U_QE
371 default 0x10000
372
Tom Rini8dc1b172017-05-26 11:18:53 -0400373config FTMAC100
374 bool "Ftmac100 Ethernet Support"
375 help
376 This MAC is present in Andestech SoCs.
377
Cédric Le Goaterf95de0b2018-10-29 07:06:31 +0100378config FTGMAC100
379 bool "Ftgmac100 Ethernet Support"
380 depends on DM_ETH
381 select PHYLIB
382 help
383 This driver supports the Faraday's FTGMAC100 Gigabit SoC
384 Ethernet controller that can be found on Aspeed SoCs (which
385 include NCSI).
386
387 It is fully compliant with IEEE 802.3 specification for
388 10/100 Mbps Ethernet and IEEE 802.3z specification for 1000
389 Mbps Ethernet and includes Reduced Media Independent
390 Interface (RMII) and Reduced Gigabit Media Independent
391 Interface (RGMII) interfaces. It adopts an AHB bus interface
392 and integrates a link list DMA engine with direct M-Bus
393 accesses for transmitting and receiving packets. It has
394 independent TX/RX fifos, supports half and full duplex (1000
395 Mbps mode only supports full duplex), flow control for full
396 duplex and backpressure for half duplex.
397
398 The FTGMAC100 also implements IP, TCP, UDP checksum offloads
399 and supports IEEE 802.1Q VLAN tag insertion and removal. It
400 offers high-priority transmit queue for QoS and CoS
401 applications.
402
Tom Rini0d121ad2022-06-25 11:02:36 -0400403config SYS_DISCOVER_PHY
404 bool
Cédric Le Goaterf95de0b2018-10-29 07:06:31 +0100405
Angelo Durgehello080bcc52019-11-15 23:54:17 +0100406config MCFFEC
407 bool "ColdFire Ethernet Support"
408 depends on DM_ETH
409 select PHYLIB
Tom Rini0d121ad2022-06-25 11:02:36 -0400410 select SYS_DISCOVER_PHY
Angelo Durgehello080bcc52019-11-15 23:54:17 +0100411 help
412 This driver supports the network interface units in the
413 ColdFire family.
414
Tom Rini7675a522022-06-25 11:02:35 -0400415config SYS_UNIFY_CACHE
416 depends on MCFFEC
417 bool "Invalidate icache during ethernet operations"
418
Angelo Durgehello080bcc52019-11-15 23:54:17 +0100419config FSLDMAFEC
420 bool "ColdFire DMA Ethernet Support"
421 depends on DM_ETH
422 select PHYLIB
Tom Rini0d121ad2022-06-25 11:02:36 -0400423 select SYS_DISCOVER_PHY
Angelo Durgehello080bcc52019-11-15 23:54:17 +0100424 help
425 This driver supports the network interface units in the
426 ColdFire family.
427
Marek Vasutdf4c4832020-03-25 19:08:59 +0100428config KS8851_MLL
429 bool "Microchip KS8851-MLL controller driver"
430 help
431 The Microchip KS8851 parallel bus external ethernet interface chip.
432
433if KS8851_MLL
434if !DM_ETH
435config KS8851_MLL_BASEADDR
436 hex "Microchip KS8851-MLL Base Address"
437 help
438 Define this to hold the physical address of the device (I/O space)
439endif #DM_ETH
440endif #KS8851_MLL
441
Tim Harvey668e2052021-06-30 16:50:08 -0700442config KSZ9477
443 bool "Microchip KSZ9477 I2C controller driver"
444 depends on DM_DSA && DM_I2C
445 help
446 This driver implements a DSA switch driver for the KSZ9477 family
447 of GbE switches using the I2C interface.
448
Tom Rini6329dda2022-03-18 08:38:24 -0400449config LPC32XX_ETH
450 bool "LPC32xx Ethernet MAC interface driver"
451 depends on ARCH_LPC32XX
452 default y
453
Chris Packhamed52ea52018-05-03 23:00:35 +1200454config MVGBE
455 bool "Marvell Orion5x/Kirkwood network interface support"
Trevor Woernerbb0fb4c2020-05-06 08:02:40 -0400456 depends on ARCH_KIRKWOOD || ARCH_ORION5X
Chris Packhamfb731072018-07-09 21:34:00 +1200457 select PHYLIB if DM_ETH
Chris Packhamed52ea52018-05-03 23:00:35 +1200458 help
459 This driver supports the network interface units in the
460 Marvell Orion5x and Kirkwood SoCs
461
Chris Packham7654f622017-08-21 20:17:03 +1200462config MVNETA
Miquel Raynale7ab2cc2017-12-28 15:43:09 +0100463 bool "Marvell Armada XP/385/3700 network interface support"
464 depends on ARMADA_XP || ARMADA_38X || ARMADA_3700
Chris Packham7654f622017-08-21 20:17:03 +1200465 select PHYLIB
Marek Behúnda84e402022-04-27 12:41:46 +0200466 select DM_MDIO
Chris Packham7654f622017-08-21 20:17:03 +1200467 help
468 This driver supports the network interface units in the
Miquel Raynale7ab2cc2017-12-28 15:43:09 +0100469 Marvell ARMADA XP, ARMADA 38X and ARMADA 3700 SoCs
Chris Packham7654f622017-08-21 20:17:03 +1200470
Stefan Roese99d4c6d2016-02-10 07:22:10 +0100471config MVPP2
Stefan Roesee7935c42017-02-15 11:42:59 +0100472 bool "Marvell Armada 375/7K/8K network interface support"
473 depends on ARMADA_375 || ARMADA_8K
Stefan Roese99d4c6d2016-02-10 07:22:10 +0100474 select PHYLIB
Nevo Hed17caaf82019-08-15 18:08:45 -0400475 select MVMDIO
476 select DM_MDIO
Stefan Roese99d4c6d2016-02-10 07:22:10 +0100477 help
478 This driver supports the network interface units in the
Stefan Roesee7935c42017-02-15 11:42:59 +0100479 Marvell ARMADA 375, 7K and 8K SoCs.
Stefan Roese99d4c6d2016-02-10 07:22:10 +0100480
Wenyou Yangebcb40a2016-11-02 10:06:55 +0800481config MACB
482 bool "Cadence MACB/GEM Ethernet Interface"
Wenyou Yangebcb40a2016-11-02 10:06:55 +0800483 select PHYLIB
484 help
485 The Cadence MACB ethernet interface is found on many Atmel
486 AT91 and SAMA5 parts. This driver also supports the Cadence
487 GEM (Gigabit Ethernet MAC) found in some ARM SoC devices.
488 Say Y to include support for the MACB/GEM chip.
489
Wilson Lee4bf56912017-08-22 20:25:07 -0700490config MACB_ZYNQ
491 bool "Cadence MACB/GEM Ethernet Interface for Xilinx Zynq"
492 depends on MACB
493 help
494 The Cadence MACB ethernet interface was used on Zynq platform.
495 Say Y to enable support for the MACB/GEM in Zynq chip.
496
Weijie Gao17ade702020-11-12 16:36:53 +0800497config MT7620_ETH
498 bool "MediaTek MT7620 Ethernet Interface"
499 depends on SOC_MT7620
500 select PHYLIB
501 select DM_RESET
502 select DM_GPIO
503 select CLK
504 help
505 The MediaTek MT7620 ethernet interface is used on MT7620 based
506 boards. It has a built-in switch with two configurable ports which
507 can connect to external PHY/MACs.
508
Stefan Roesec895ef42018-10-26 14:53:27 +0200509config MT7628_ETH
510 bool "MediaTek MT7628 Ethernet Interface"
Weijie Gao16b94902019-04-30 11:13:58 +0800511 depends on SOC_MT7628
Weijie Gaof0793212019-09-25 17:45:33 +0800512 select PHYLIB
Stefan Roesec895ef42018-10-26 14:53:27 +0200513 help
514 The MediaTek MT7628 ethernet interface is used on MT7628 and
515 MT7688 based boards.
516
Stefan Roese8e0f8ef2022-04-07 09:11:52 +0200517config NET_OCTEON
518 bool "MIPS Octeon ethernet support"
519 depends on ARCH_OCTEON
520 help
521 You must select Y to enable network device support for
522 MIPS Octeon SoCs. If unsure, say n
523
Suneel Garapati0008e9a2020-08-26 14:37:33 +0200524config NET_OCTEONTX
525 bool "OcteonTX Ethernet support"
526 depends on ARCH_OCTEONTX
527 depends on PCI_SRIOV
528 help
529 You must select Y to enable network device support for
530 OcteonTX SoCs. If unsure, say n
Suneel Garapati4684a7a2020-08-26 14:37:42 +0200531
532config NET_OCTEONTX2
533 bool "OcteonTX2 Ethernet support"
534 depends on ARCH_OCTEONTX2
535 select OCTEONTX2_CGX_INTF
536 help
537 You must select Y to enable network device support for
538 OcteonTX2 SoCs. If unsure, say n
539
Suneel Garapati0008e9a2020-08-26 14:37:33 +0200540config OCTEONTX_SMI
541 bool "OcteonTX SMI Device support"
542 depends on ARCH_OCTEONTX || ARCH_OCTEONTX2
543 help
544 You must select Y to enable SMI controller support for
545 OcteonTX or OcteonTX2 SoCs. If unsure, say n
546
Suneel Garapati4684a7a2020-08-26 14:37:42 +0200547config OCTEONTX2_CGX_INTF
548 bool "OcteonTX2 CGX ATF interface support"
549 depends on ARCH_OCTEONTX2
550 default y if ARCH_OCTEONTX2
551 help
552 You must select Y to enable CGX ATF interface support for
553 OcteonTX2 SoCs. If unsure, say n
554
Bin Mengb68fe152015-08-27 22:25:58 -0700555config PCH_GBE
556 bool "Intel Platform Controller Hub EG20T GMAC driver"
Simon Glass3232bdf2021-08-01 18:54:44 -0600557 depends on DM_ETH
Bin Mengb68fe152015-08-27 22:25:58 -0700558 select PHYLIB
559 help
560 This MAC is present in Intel Platform Controller Hub EG20T. It
561 supports 10/100/1000 Mbps operation.
562
Mylène Josserand751b0be2017-04-02 12:59:08 +0200563config RGMII
564 bool "Enable RGMII"
565 help
566 Enable the support of the Reduced Gigabit Media-Independent
567 Interface (RGMII).
568
Adam Fordd7869b22018-07-20 23:03:57 -0500569config MII
570 bool "Enable MII"
571 help
572 Enable support of the Media-Independent Interface (MII)
573
Tom Rini03d14cc2022-03-18 08:38:22 -0400574config RMII
575 bool "Enable RMII"
576 help
577 Enable support of the Reduced Media-Independent Interface (MII)
578
Marek Vasutd789a822020-05-17 18:14:17 +0200579config PCNET
580 bool "AMD PCnet series Ethernet controller driver"
581 help
582 This driver supports AMD PCnet series fast ethernet family of
583 PCI chipsets/adapters.
584
Heiko Schocher6e31c622020-02-06 09:48:16 +0100585source "drivers/net/qe/Kconfig"
586
Bin Meng86e9dc82016-03-21 06:47:41 -0700587config RTL8139
588 bool "Realtek 8139 series Ethernet controller driver"
589 help
590 This driver supports Realtek 8139 series fast ethernet family of
591 PCI chipsets/adapters.
592
Bin Meng0764f242016-03-21 06:47:42 -0700593config RTL8169
594 bool "Realtek 8169 series Ethernet controller driver"
595 help
596 This driver supports Realtek 8169 series gigabit ethernet family of
597 PCI/PCIe chipsets/adapters.
598
Vladimir Olteanf24b6662021-09-29 18:04:41 +0300599config SJA1105
600 bool "NXP SJA1105 Ethernet switch family driver"
601 depends on DM_DSA && DM_SPI
602 select BITREVERSE
603 help
604 This is the driver for the NXP SJA1105 automotive Ethernet switch
605 family. These are 5-port devices and are managed over an SPI
606 interface. Probing is handled based on OF bindings. The driver
607 supports the following revisions:
608 - SJA1105E (Gen. 1, No TT-Ethernet)
609 - SJA1105T (Gen. 1, TT-Ethernet)
610 - SJA1105P (Gen. 2, No SGMII, No TT-Ethernet)
611 - SJA1105Q (Gen. 2, No SGMII, TT-Ethernet)
612 - SJA1105R (Gen. 2, SGMII, No TT-Ethernet)
613 - SJA1105S (Gen. 2, SGMII, TT-Ethernet)
614
Adam Ford8daec2d2017-09-05 15:20:44 -0500615config SMC911X
616 bool "SMSC LAN911x and LAN921x controller driver"
617
618if SMC911X
619
Marek Vasut81486932020-03-15 17:39:01 +0100620if !DM_ETH
Adam Ford8daec2d2017-09-05 15:20:44 -0500621config SMC911X_BASE
622 hex "SMC911X Base Address"
623 help
624 Define this to hold the physical address
625 of the device (I/O space)
Marek Vasut81486932020-03-15 17:39:01 +0100626endif #DM_ETH
Adam Ford8daec2d2017-09-05 15:20:44 -0500627
Adam Ford8daec2d2017-09-05 15:20:44 -0500628config SMC911X_32_BIT
Andre Przywaraf26c9d72021-06-28 14:30:30 +0100629 bool "Enable SMC911X 32-bit interface"
Adam Ford8daec2d2017-09-05 15:20:44 -0500630 help
Andre Przywaraf26c9d72021-06-28 14:30:30 +0100631 Define this if data bus is 32 bits. If your processor use a
632 narrower 16 bit bus or cannot convert one 32 bit word to two 16 bit
633 words, leave this to "n".
Adam Ford8daec2d2017-09-05 15:20:44 -0500634
Adam Ford8daec2d2017-09-05 15:20:44 -0500635endif #SMC911X
636
Mylène Josserand4d43d062017-04-02 12:59:03 +0200637config SUN7I_GMAC
638 bool "Enable Allwinner GMAC Ethernet support"
639 help
640 Enable the support for Sun7i GMAC Ethernet controller
641
Stefan Mavrodievaba39242017-11-03 08:56:51 +0200642config SUN7I_GMAC_FORCE_TXERR
643 bool "Force PA17 as gmac function"
644 depends on SUN7I_GMAC
645 help
646 Some ethernet phys needs TXERR control. Since the GMAC
647 doesn't have such signal, setting PA17 as GMAC function
648 makes the pin output low, which enables data transmission.
649
Mylène Josserandabc3e4d2017-04-02 12:59:07 +0200650config SUN4I_EMAC
651 bool "Allwinner Sun4i Ethernet MAC support"
652 depends on DM_ETH
Artturi Alm6270a3f2017-11-08 05:08:58 +0200653 select PHYLIB
Mylène Josserandabc3e4d2017-04-02 12:59:07 +0200654 help
655 This driver supports the Allwinner based SUN4I Ethernet MAC.
656
Amit Singh Tomara29710c2016-07-06 17:59:44 +0530657config SUN8I_EMAC
658 bool "Allwinner Sun8i Ethernet MAC support"
659 depends on DM_ETH
660 select PHYLIB
Philipp Tomsich449ea2c2017-03-26 18:50:23 +0200661 select PHY_GIGE
Amit Singh Tomara29710c2016-07-06 17:59:44 +0530662 help
663 This driver supports the Allwinner based SUN8I/SUN50I Ethernet MAC.
664 It can be found in H3/A64/A83T based SoCs and compatible with both
Tom Rini7131d2d2017-02-20 09:38:03 -0500665 External and Internal PHYs.
Amit Singh Tomara29710c2016-07-06 17:59:44 +0530666
Nobuhiro Iwamatsudcd18ea2017-12-01 16:08:03 +0900667config SH_ETHER
668 bool "Renesas SH Ethernet MAC"
669 select PHYLIB
670 help
671 This driver supports the Ethernet for Renesas SH and ARM SoCs.
672
Grygorii Strashkoffad5fa2018-10-31 16:21:39 -0500673source "drivers/net/ti/Kconfig"
Adam Fordd7869b22018-07-20 23:03:57 -0500674
Marek Vasuta410f132020-06-20 17:43:29 +0200675config TULIP
676 bool "DEC Tulip DC2114x Ethernet support"
Marek Vasuta410f132020-06-20 17:43:29 +0200677 help
678 This driver supports DEC DC2114x Fast ethernet chips.
679
Michal Simek338a5f22015-12-09 16:54:42 +0100680config XILINX_AXIEMAC
Michal Simek664e16c2020-08-06 15:18:36 +0200681 depends on DM_ETH
Michal Simek338a5f22015-12-09 16:54:42 +0100682 select PHYLIB
683 select MII
684 bool "Xilinx AXI Ethernet"
685 help
686 This MAC is present in Xilinx Microblaze, Zynq and ZynqMP SoCs.
687
Ashok Reddy Soma258ce792021-07-02 04:40:34 -0600688config XILINX_AXIMRMAC
689 depends on DM_ETH && ARCH_VERSAL
690 bool "Xilinx AXI MRMAC"
691 help
692 MRMAC is a high performance, low latency, adaptable Ethernet
693 integrated hard IP. This can be configured up to four ports with MAC
694 rates from 10GE to 100GE. This could be present in some of the Xilinx
695 Versal designs.
696
Michal Simek3229c862015-12-11 09:41:49 +0100697config XILINX_EMACLITE
Michal Simek664e16c2020-08-06 15:18:36 +0200698 depends on DM_ETH
Michal Simek3229c862015-12-11 09:41:49 +0100699 select PHYLIB
700 select MII
701 bool "Xilinx Ethernetlite"
702 help
703 This MAC is present in Xilinx Microblaze, Zynq and ZynqMP SoCs.
704
Michal Simek596e5782015-11-30 14:34:52 +0100705config ZYNQ_GEM
Michal Simek664e16c2020-08-06 15:18:36 +0200706 depends on DM_ETH
Michal Simek7bccc752015-12-11 09:14:31 +0100707 select PHYLIB
Michal Simek596e5782015-11-30 14:34:52 +0100708 bool "Xilinx Ethernet GEM"
709 help
Michal Simekc9428102015-12-09 16:53:52 +0100710 This MAC is present in Xilinx Zynq and ZynqMP SoCs.
Michal Simek596e5782015-11-30 14:34:52 +0100711
Purna Chandra Mandal23e75782016-01-28 15:30:21 +0530712config PIC32_ETH
713 bool "Microchip PIC32 Ethernet Support"
714 depends on DM_ETH && MACH_PIC32
715 select PHYLIB
716 help
717 This driver implements 10/100 Mbps Ethernet and MAC layer for
718 Microchip PIC32 microcontrollers.
719
Sjoerd Simons0125bcf2017-01-11 11:46:11 +0100720config GMAC_ROCKCHIP
721 bool "Rockchip Synopsys Designware Ethernet MAC"
722 depends on DM_ETH && ETH_DESIGNWARE
723 help
724 This driver provides Rockchip SoCs network support based on the
725 Synopsys Designware driver.
726
Marek Vasut8ae51b62017-05-13 15:54:28 +0200727config RENESAS_RAVB
728 bool "Renesas Ethernet AVB MAC"
729 depends on DM_ETH && RCAR_GEN3
730 select PHYLIB
731 help
732 This driver implements support for the Ethernet AVB block in
733 Renesas M3 and H3 SoCs.
734
Christophe Leroyfad51ac2017-07-06 10:33:23 +0200735config MPC8XX_FEC
736 bool "Fast Ethernet Controller on MPC8XX"
Christophe Leroyee1e6002018-03-16 17:20:41 +0100737 depends on MPC8xx
Christophe Leroyfad51ac2017-07-06 10:33:23 +0200738 select MII
Tom Rini0d121ad2022-06-25 11:02:36 -0400739 select SYS_DISCOVER_PHY
Christophe Leroyfad51ac2017-07-06 10:33:23 +0200740 help
741 This driver implements support for the Fast Ethernet Controller
742 on MPC8XX
743
Kunihiko Hayashia8927792018-05-24 19:24:37 +0900744config SNI_AVE
745 bool "Socionext AVE Ethernet support"
746 depends on DM_ETH && ARCH_UNIPHIER
747 select PHYLIB
748 select SYSCON
749 select REGMAP
750 help
751 This driver implements support for the Socionext AVE Ethernet
752 controller, as found on the Socionext UniPhier family.
753
Jassi Brareab447b2021-06-04 18:44:38 +0900754config SNI_NETSEC
755 bool "Socionext NETSEC Ethernet support"
756 depends on DM_ETH && SYNQUACER_SPI
757 select PHYLIB
758 help
759 This driver implements support for the Socionext SynQuacer NETSEC
760 ethernet controller, as found on the Socionext SynQuacer family.
761
Horatiu Vultur4c661572019-01-31 15:30:33 +0100762source "drivers/net/mscc_eswitch/Kconfig"
Gregory CLEMENTc8546162019-01-17 17:07:13 +0100763
Christophe Leroyfad51ac2017-07-06 10:33:23 +0200764config ETHER_ON_FEC1
765 bool "FEC1"
766 depends on MPC8XX_FEC
767 default y
768
769config FEC1_PHY
770 int "FEC1 PHY"
771 depends on ETHER_ON_FEC1
772 default -1
773 help
774 Define to the hardcoded PHY address which corresponds
775 to the given FEC; i. e.
776 #define CONFIG_FEC1_PHY 4
777 means that the PHY with address 4 is connected to FEC1
778
779 When set to -1, means to probe for first available.
780
781config PHY_NORXERR
782 bool "PHY_NORXERR"
783 depends on ETHER_ON_FEC1
Christophe Leroyfad51ac2017-07-06 10:33:23 +0200784 help
785 The PHY does not have a RXERR line (RMII only).
786 (so program the FEC to ignore it).
787
788config ETHER_ON_FEC2
789 bool "FEC2"
790 depends on MPC8XX_FEC && MPC885
791 default y
792
793config FEC2_PHY
794 int "FEC2 PHY"
795 depends on ETHER_ON_FEC2
796 default -1
797 help
798 Define to the hardcoded PHY address which corresponds
799 to the given FEC; i. e.
800 #define CONFIG_FEC1_PHY 4
801 means that the PHY with address 4 is connected to FEC1
802
803 When set to -1, means to probe for first available.
804
805config FEC2_PHY_NORXERR
806 bool "PHY_NORXERR"
807 depends on ETHER_ON_FEC2
Christophe Leroyfad51ac2017-07-06 10:33:23 +0200808 help
809 The PHY does not have a RXERR line (RMII only).
810 (so program the FEC to ignore it).
811
Ahmed Mansour541d5762017-12-15 16:01:01 -0500812config SYS_DPAA_QBMAN
813 bool "Device tree fixup for QBMan on freescale SOCs"
814 depends on (ARM || PPC) && !SPL_BUILD
815 default y if ARCH_B4860 || \
816 ARCH_B4420 || \
817 ARCH_P1023 || \
818 ARCH_P2041 || \
Ahmed Mansour541d5762017-12-15 16:01:01 -0500819 ARCH_T1024 || \
820 ARCH_T1040 || \
821 ARCH_T1042 || \
822 ARCH_T2080 || \
Ahmed Mansour541d5762017-12-15 16:01:01 -0500823 ARCH_T4240 || \
Ahmed Mansour541d5762017-12-15 16:01:01 -0500824 ARCH_P4080 || \
825 ARCH_P3041 || \
826 ARCH_P5040 || \
Ahmed Mansour541d5762017-12-15 16:01:01 -0500827 ARCH_LS1043A || \
828 ARCH_LS1046A
829 help
830 QBman fixups to allow deep sleep in DPAA 1 SOCs
831
Mario Six17151052018-03-28 14:38:18 +0200832config TSEC_ENET
833 select PHYLIB
834 bool "Enable Three-Speed Ethernet Controller"
835 help
836 This driver implements support for the (Enhanced) Three-Speed
837 Ethernet Controller found on Freescale SoCs.
838
Weijie Gao23f17162018-12-20 16:12:53 +0800839config MEDIATEK_ETH
840 bool "MediaTek Ethernet GMAC Driver"
841 depends on DM_ETH
842 select PHYLIB
843 select DM_GPIO
844 select DM_RESET
845 help
846 This Driver support MediaTek Ethernet GMAC
847 Say Y to enable support for the MediaTek Ethernet GMAC.
848
Shawn Guo1d5b5d22019-03-20 15:32:40 +0800849config HIGMACV300_ETH
850 bool "HiSilicon Gigabit Ethernet Controller"
851 depends on DM_ETH
852 select DM_RESET
853 select PHYLIB
854 help
855 This driver supports HIGMACV300 Ethernet controller found on
856 HiSilicon SoCs.
857
Alex Marginean120b5ef2019-07-03 12:11:40 +0300858config FSL_ENETC
859 bool "NXP ENETC Ethernet controller"
Simon Glass3232bdf2021-08-01 18:54:44 -0600860 depends on DM_ETH && DM_MDIO
Alex Marginean120b5ef2019-07-03 12:11:40 +0300861 help
862 This driver supports the NXP ENETC Ethernet controller found on some
863 of the NXP SoCs.
864
Alex Marginean74dd3832019-07-16 11:21:17 +0300865config MDIO_MUX_I2CREG
866 bool "MDIO MUX accessed as a register over I2C"
867 depends on DM_MDIO_MUX && DM_I2C
868 help
869 This driver is used for MDIO muxes driven by writing to a register of
870 an I2C chip. The board it was developed for uses a mux controlled by
871 on-board FPGA which in turn is accessed as a chip over I2C.
872
Robert Marko975151d2020-10-08 22:05:11 +0200873config MDIO_IPQ4019
874 bool "Qualcomm IPQ4019 MDIO interface support"
875 depends on DM_MDIO
876 help
877 This driver supports the MDIO interface found in Qualcomm
878 IPQ40xx series Soc-s.
879
Alex Marginean8bd37ce2019-07-25 12:33:19 +0300880config MVMDIO
881 bool "Marvell MDIO interface support"
882 depends on DM_MDIO
883 help
884 This driver supports the MDIO interface found in the network
885 interface units of the Marvell EBU SoCs (Kirkwood, Orion5x,
886 Dove, Armada 370, Armada XP, Armada 37xx and Armada7K/8K/8KP).
887
888 This driver is used by the MVPP2 and MVNETA drivers.
889
Ioana Ciornei52e16ec2020-03-18 16:47:36 +0200890config FSL_LS_MDIO
891 bool "NXP Layerscape MDIO interface support"
892 depends on DM_MDIO
893 help
894 This driver supports the MDIO bus found on the Fman 10G Ethernet MACs and
895 on the mEMAC (which supports both Clauses 22 and 45).
896
Dylan Hung8b41ded2021-11-02 13:41:54 +0800897config ASPEED_MDIO
898 bool "Aspeed MDIO interface support"
899 depends on DM_MDIO
900 help
901 This driver supports the MDIO bus of Aspeed AST2600 SOC. The driver
902 currently supports Clause 22.
903
Neil Armstrong6c7bc9f2021-02-24 15:02:23 +0100904config MDIO_MUX_MMIOREG
905 bool "MDIO MUX accessed as a MMIO register access"
906 depends on DM_MDIO_MUX
907 help
908 This driver is used for MDIO muxes driven by writing to a register in
909 the MMIO physical memory.
910
Neil Armstrong8120ce12021-02-24 17:31:53 +0100911config MDIO_MUX_MESON_G12A
912 bool "MDIO MUX for Amlogic Meson G12A SoCs"
913 depends on DM_MDIO_MUX
914 help
915 This driver is used for the MDIO mux found on the Amlogic G12A & compatible
916 SoCs.
917
Joe Hershberger3ea143a2015-03-22 17:09:13 -0500918endif # NETDEVICES