blob: 7873538cc2df70635b9450d7a58b451a43a0d451 [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
Tom Rini94633c32022-08-02 07:33:47 -04009 bool
Joe Hershberger05c3e682015-03-22 17:09:10 -050010 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
Tom Rinie524f3a2022-11-27 10:25:36 -050018config SPL_DM_ETH
19 depends on SPL_NET
20 def_bool y
21
Alex Margineanc3452b52019-06-03 19:10:30 +030022config DM_MDIO
23 bool "Enable Driver Model for MDIO devices"
Tom Rini94633c32022-08-02 07:33:47 -040024 depends on PHYLIB
Alex Margineanc3452b52019-06-03 19:10:30 +030025 help
26 Enable driver model for MDIO devices
27
28 Adds UCLASS_MDIO DM class supporting MDIO buses that are probed as
29 stand-alone devices. Useful in particular for systems that support
30 DM_ETH and have a stand-alone MDIO hardware block shared by multiple
31 Ethernet interfaces.
32 This is currently implemented in net/mdio-uclass.c
33 Look in include/miiphy.h for details.
34
Alex Marginean8880edb2019-07-12 10:13:50 +030035config DM_MDIO_MUX
36 bool "Enable Driver Model for MDIO MUX devices"
37 depends on DM_MDIO
38 help
39 Enable driver model for MDIO MUX devices
40
41 Adds UCLASS_MDIO_MUX DM class supporting MDIO MUXes. Useful for
42 systems that support DM_MDIO and integrate one or multiple muxes on
43 the MDIO bus.
44 This is currently implemented in net/mdio-mux-uclass.c
45 Look in include/miiphy.h for details.
46
Claudiu Manoilfc054d52021-01-25 14:23:53 +020047config DM_DSA
48 bool "Enable Driver Model for DSA switches"
Tom Rini94633c32022-08-02 07:33:47 -040049 depends on DM_MDIO
Claudiu Manoilfc054d52021-01-25 14:23:53 +020050 depends on PHY_FIXED
51 help
52 Enable driver model for DSA switches
53
54 Adds UCLASS_DSA class supporting switches that follow the Distributed
55 Switch Architecture (DSA). These switches rely on the presence of a
56 management switch port connected to an Ethernet controller capable of
57 receiving frames from the switch. This host Ethernet controller is
58 called the "master" Ethernet interface in DSA terminology.
59 This is currently implemented in net/dsa-uclass.c, refer to
60 include/net/dsa.h for API details.
61
Alex Margineanec9594a2019-06-03 19:12:28 +030062config MDIO_SANDBOX
63 depends on DM_MDIO && SANDBOX
64 default y
65 bool "Sandbox: Mocked MDIO driver"
66 help
67 This driver implements dummy read/write/reset MDIO functions mimicking
68 a bus with a single PHY.
69
70 This driver is used in for testing in test/dm/mdio.c
71
Alex Margineanc3d9f3f2019-07-12 10:13:53 +030072config MDIO_MUX_SANDBOX
73 depends on DM_MDIO_MUX && MDIO_SANDBOX
74 default y
75 bool "Sandbox: Mocked MDIO-MUX driver"
76 help
77 This driver implements dummy select/deselect ops mimicking a MUX on
78 the MDIO bux. It uses mdio_sandbox driver as parent MDIO.
79
80 This driver is used for testing in test/dm/mdio.c
81
Ye Li5fe419e2020-05-03 22:41:14 +080082config DM_ETH_PHY
83 bool "Enable Driver Model for Ethernet Generic PHY drivers"
84 depends on DM
85 help
86 Enable driver model for Ethernet Generic PHY .
87
Claudiu Manoilff98da02021-03-14 20:14:57 +080088config DSA_SANDBOX
89 depends on DM_DSA && SANDBOX
90 default y
91 bool "Sandbox: Mocked DSA driver"
92 help
93 This driver implements a dummy DSA switch connected to a dummy sandbox
94 Ethernet device used as DSA master, to test DSA class code, including
95 exported DSA API and datapath processing of Ethernet traffic.
96
Joe Hershberger3ea143a2015-03-22 17:09:13 -050097menuconfig NETDEVICES
98 bool "Network device support"
99 depends on NET
Tom Rini94633c32022-08-02 07:33:47 -0400100 select DM_ETH
Joe Hershberger3ea143a2015-03-22 17:09:13 -0500101 help
102 You must select Y to enable any network device support
103 Generally if you have any networking support this is a given
104
105 If unsure, say Y
106
107if NETDEVICES
108
Philipp Tomsich449ea2c2017-03-26 18:50:23 +0200109config PHY_GIGE
110 bool "Enable GbE PHY status parsing and configuration"
111 help
112 Enables support for parsing the status output and for
113 configuring GbE PHYs (affects the inner workings of some
114 commands and miiphyutil.c).
115
Marek Vasute40095f2016-05-24 23:29:09 +0200116config AG7XXX
117 bool "Atheros AG7xxx Ethernet MAC support"
Tom Rini94633c32022-08-02 07:33:47 -0400118 depends on ARCH_ATH79
Marek Vasute40095f2016-05-24 23:29:09 +0200119 select PHYLIB
120 help
121 This driver supports the Atheros AG7xxx Ethernet MAC. This MAC is
122 present in the Atheros AR7xxx, AR9xxx and QCA9xxx MIPS chips.
123
124
Thomas Chou96fa1e42015-10-22 15:29:11 +0800125config ALTERA_TSE
126 bool "Altera Triple-Speed Ethernet MAC support"
Thomas Chou96fa1e42015-10-22 15:29:11 +0800127 select PHYLIB
128 help
129 This driver supports the Altera Triple-Speed (TSE) Ethernet MAC.
130 Please find details on the "Triple-Speed Ethernet MegaCore Function
131 Resource Center" of Altera.
132
Suji Velupillaic89782d2017-07-10 14:05:41 -0700133config BCM_SF2_ETH
134 bool "Broadcom SF2 (Starfighter2) Ethernet support"
135 select PHYLIB
136 help
137 This is an abstract framework which provides a generic interface
138 to MAC and DMA management for multiple Broadcom SoCs such as
139 Cygnus, NSP and bcm28155_ap platforms.
140
141config BCM_SF2_ETH_DEFAULT_PORT
142 int "Broadcom SF2 (Starfighter2) Ethernet default port number"
143 depends on BCM_SF2_ETH
144 default 0
145 help
146 Default port number for the Starfighter2 ethernet driver.
147
148config BCM_SF2_ETH_GMAC
149 bool "Broadcom SF2 (Starfighter2) GMAC Ethernet support"
150 depends on BCM_SF2_ETH
151 help
152 This flag enables the ethernet support for Broadcom platforms with
153 GMAC such as Cygnus. This driver is based on the framework provided
154 by the BCM_SF2_ETH driver.
155 Say Y to any bcmcygnus based platforms.
156
Álvaro Fernández Rojas55e55fe2018-12-01 19:00:24 +0100157config BCM6348_ETH
158 bool "BCM6348 EMAC support"
Tom Rini94633c32022-08-02 07:33:47 -0400159 depends on ARCH_BMIPS
Álvaro Fernández Rojas55e55fe2018-12-01 19:00:24 +0100160 select DMA
161 select DMA_CHANNELS
162 select MII
163 select PHYLIB
164 help
165 This driver supports the BCM6348 Ethernet MAC.
166
Álvaro Fernández Rojas96229722018-12-01 19:00:32 +0100167config BCM6368_ETH
168 bool "BCM6368 EMAC support"
Tom Rini94633c32022-08-02 07:33:47 -0400169 depends on ARCH_BMIPS
Álvaro Fernández Rojas96229722018-12-01 19:00:32 +0100170 select DMA
171 select MII
172 help
173 This driver supports the BCM6368 Ethernet MAC.
174
Amit Singh Tomard53e3fa2020-01-27 01:14:42 +0000175config BCMGENET
176 bool "BCMGENET V5 support"
Amit Singh Tomard53e3fa2020-01-27 01:14:42 +0000177 select PHYLIB
178 help
179 This driver supports the BCMGENET Ethernet MAC.
180
Tom Rinif6301702022-11-27 10:25:02 -0500181source "drivers/net/bnxt/Kconfig"
182
Aaron Tsengfebe13b2021-01-14 13:34:11 -0800183config CORTINA_NI_ENET
184 bool "Cortina-Access Ethernet driver"
Tom Rini94633c32022-08-02 07:33:47 -0400185 depends on CORTINA_PLATFORM
Aaron Tsengfebe13b2021-01-14 13:34:11 -0800186 help
187 This driver supports the Cortina-Access Ethernet MAC for
188 all supported CAxxxx SoCs.
189
Andre Przywaradebb07b2021-04-12 01:04:52 +0100190config CALXEDA_XGMAC
191 bool "Calxeda XGMAC support"
Andre Przywaradebb07b2021-04-12 01:04:52 +0100192 help
193 This driver supports the XGMAC in Calxeda Highbank and Midway
194 machines.
195
Marek Vasutf478da92022-04-13 04:15:38 +0200196config DRIVER_DM9000
197 bool "Davicom DM9000 controller driver"
198 help
199 The Davicom DM9000 parallel bus external ethernet interface chip.
200
Tom Rini9b0240f2022-12-02 16:42:18 -0500201config DM9000_BYTE_SWAPPED
202 bool "Byte swapped access for DM9000"
203 depends on DRIVER_DM9000
204
205config DM9000_NO_SROM
206 bool "No SROM on DM9000"
207 depends on DRIVER_DM9000
208
209config DM9000_USE_16BIT
210 bool "Use 16bit access in DM9000"
211 depends on DRIVER_DM9000
212
Stephen Warrenba4dfef2016-10-21 14:46:47 -0600213config DWC_ETH_QOS
214 bool "Synopsys DWC Ethernet QOS device support"
Stephen Warrenba4dfef2016-10-21 14:46:47 -0600215 select PHYLIB
216 help
217 This driver supports the Synopsys Designware Ethernet QOS (Quality
218 Of Service) IP block. The IP supports many options for bus type,
Patrick Delaunaya08f2f72020-06-08 11:27:19 +0200219 clocking/reset structure, and feature list.
220
221config DWC_ETH_QOS_IMX
222 bool "Synopsys DWC Ethernet QOS device support for IMX"
223 depends on DWC_ETH_QOS
224 help
225 The Synopsys Designware Ethernet QOS IP block with the specific
226 configuration used in IMX soc.
227
228config DWC_ETH_QOS_STM32
229 bool "Synopsys DWC Ethernet QOS device support for STM32"
230 depends on DWC_ETH_QOS
Patrick Delaunay9dbdc232021-07-20 20:09:55 +0200231 select DM_ETH_PHY
Patrick Delaunaya08f2f72020-06-08 11:27:19 +0200232 default y if ARCH_STM32MP
233 help
234 The Synopsys Designware Ethernet QOS IP block with the specific
235 configuration used in STM32MP soc.
236
237config DWC_ETH_QOS_TEGRA186
238 bool "Synopsys DWC Ethernet QOS device support for TEGRA186"
239 depends on DWC_ETH_QOS
240 default y if TEGRA186
241 help
242 The Synopsys Designware Ethernet QOS IP block with specific
243 configuration used in NVIDIA's Tegra186 chip.
Stephen Warrenba4dfef2016-10-21 14:46:47 -0600244
Simon Glassc294ac52015-08-19 09:33:41 -0600245config E1000
246 bool "Intel PRO/1000 Gigabit Ethernet support"
Sean Andersond64ac852022-04-26 14:35:33 -0400247 depends on PCI
Simon Glassc294ac52015-08-19 09:33:41 -0600248 help
249 This driver supports Intel(R) PRO/1000 gigabit ethernet family of
250 adapters. For more information on how to identify your adapter, go
251 to the Adapter & Driver ID Guide at:
252
253 <http://support.intel.com/support/network/adapter/pro100/21397.htm>
254
Tom Rini5c511ea2022-06-08 08:24:23 -0400255config E1000_NO_NVM
256 bool "Intel PRO/1000 has no NVMEM / EEPROM"
257 depends on E1000
258
Simon Glassc294ac52015-08-19 09:33:41 -0600259config E1000_SPI_GENERIC
260 bool "Allow access to the Intel 8257x SPI bus"
261 depends on E1000
262 help
263 Allow generic access to the SPI bus on the Intel 8257x, for
264 example with the "sspi" command.
265
266config E1000_SPI
267 bool "Enable SPI bus utility code"
268 depends on E1000
269 help
270 Utility code for direct access to the SPI bus on Intel 8257x.
271 This does not do anything useful unless you set at least one
272 of CONFIG_CMD_E1000 or CONFIG_E1000_SPI_GENERIC.
273
274config CMD_E1000
275 bool "Enable the e1000 command"
276 depends on E1000
277 help
278 This enables the 'e1000' management command for E1000 devices. When
279 used on devices with SPI support you can reprogram the EEPROM from
280 U-Boot.
281
Marek Vasut6463b732020-05-23 18:07:53 +0200282config EEPRO100
283 bool "Intel PRO/100 82557/82559/82559ER Fast Ethernet support"
284 help
285 This driver supports Intel(R) PRO/100 82557/82559/82559ER fast
286 ethernet family of adapters.
287
Joe Hershberger3ea143a2015-03-22 17:09:13 -0500288config ETH_SANDBOX
Tom Rini94633c32022-08-02 07:33:47 -0400289 depends on SANDBOX
Joe Hershberger3ea143a2015-03-22 17:09:13 -0500290 default y
291 bool "Sandbox: Mocked Ethernet driver"
292 help
293 This driver simply responds with fake ARP replies and ping
294 replies that are used to verify network stack functionality
295
296 This driver is particularly useful in the test/dm/eth.c tests
297
Joe Hershbergera346ca72015-03-22 17:09:21 -0500298config ETH_SANDBOX_RAW
Tom Rini94633c32022-08-02 07:33:47 -0400299 depends on SANDBOX
Joe Hershbergera346ca72015-03-22 17:09:21 -0500300 default y
301 bool "Sandbox: Bridge to Linux Raw Sockets"
302 help
303 This driver is a bridge from the bottom of the network stack
304 in U-Boot to the RAW AF_PACKET API in Linux. This allows real
305 network traffic to be tested from within sandbox. See
Keerthy5917d0b2019-07-29 13:52:04 +0530306 doc/arch/index.rst for more details.
Joe Hershbergera346ca72015-03-22 17:09:21 -0500307
Simon Glassef48f6d2015-04-05 16:07:34 -0600308config ETH_DESIGNWARE
309 bool "Synopsys Designware Ethernet MAC"
Thomas Chou25af71c2015-12-07 20:53:29 +0800310 select PHYLIB
Simon Goldschmidt6fb1eb12019-01-13 19:58:41 +0100311 imply ETH_DESIGNWARE_SOCFPGA if ARCH_SOCFPGA
Simon Glassef48f6d2015-04-05 16:07:34 -0600312 help
313 This MAC is present in SoCs from various vendors. It supports
314 100Mbit and 1 Gbit operation. You must enable CONFIG_PHYLIB to
315 provide the PHY (physical media interface).
316
Neil Armstrong798424e2021-02-24 20:33:56 +0100317config ETH_DESIGNWARE_MESON8B
318 bool "Amlogic Meson8b and later glue driver for Synopsys Designware Ethernet MAC"
Neil Armstrong798424e2021-02-24 20:33:56 +0100319 select ETH_DESIGNWARE
320 help
321 This provides glue layer to use Synopsys Designware Ethernet MAC
322 present on the Amlogic Meson8b, GX, AXG & G12A SoCs.
323
Marek Vasut215a0652018-08-13 19:32:14 +0200324config ETH_DESIGNWARE_SOCFPGA
Simon Goldschmidt4f1267c2019-01-13 19:58:40 +0100325 select REGMAP
326 select SYSCON
Tom Rini89d888e2022-06-15 12:03:43 -0400327 select DW_ALTDESCRIPTOR
Marek Vasut215a0652018-08-13 19:32:14 +0200328 bool "Altera SoCFPGA extras for Synopsys Designware Ethernet MAC"
Tom Rini94633c32022-08-02 07:33:47 -0400329 depends on ETH_DESIGNWARE
Marek Vasut215a0652018-08-13 19:32:14 +0200330 help
331 The Altera SoCFPGA requires additional configuration of the
332 Altera system manager to correctly interface with the PHY.
333 This code handles those SoC specifics.
334
Amit Singh Tomar3c5c4ee2020-05-09 19:55:12 +0530335config ETH_DESIGNWARE_S700
336 bool "Actins S700 glue driver for Synopsys Designware Ethernet MAC"
Tom Rini94633c32022-08-02 07:33:47 -0400337 depends on ETH_DESIGNWARE
Amit Singh Tomar3c5c4ee2020-05-09 19:55:12 +0530338 help
339 This provides glue layer to use Synopsys Designware Ethernet MAC
340 present on Actions S700 SoC.
341
Tom Rini89d888e2022-06-15 12:03:43 -0400342config DW_ALTDESCRIPTOR
343 bool "Designware Ethernet MAC uses alternate (enhanced) descriptors"
344 depends on ETH_DESIGNWARE
345
Max Filippovf0727122016-08-05 18:26:15 +0300346config ETHOC
347 bool "OpenCores 10/100 Mbps Ethernet MAC"
348 help
349 This MAC is present in OpenRISC and Xtensa XTFPGA boards.
350
Peng Fanfbada482018-03-28 20:54:14 +0800351config FEC_MXC_SHARE_MDIO
352 bool "Share the MDIO bus for FEC controller"
353 depends on FEC_MXC
354
355config FEC_MXC_MDIO_BASE
356 hex "MDIO base address for the FEC controller"
357 depends on FEC_MXC_SHARE_MDIO
358 help
359 This specifies the MDIO registers base address. It is used when
360 two FEC controllers share MDIO bus.
361
Jagan Teki97d29ca2016-10-08 18:00:12 +0530362config FEC_MXC
363 bool "FEC Ethernet controller"
Peng Fan09de5652022-07-26 16:41:12 +0800364 depends on MX28 || MX5 || MX6 || MX7 || IMX8 || IMX8M || IMX8ULP || IMX93 || VF610
Jagan Teki97d29ca2016-10-08 18:00:12 +0530365 help
366 This driver supports the 10/100 Fast Ethernet controller for
367 NXP i.MX processors.
368
Tom Rinicc1e98b2019-05-12 07:59:12 -0400369config FMAN_ENET
370 bool "Freescale FMan ethernet support"
371 depends on ARM || PPC
Tom Rini2d752b02022-07-23 13:05:06 -0400372 select SYS_FMAN_V3 if ARCH_B4420 || ARCH_B4860 || ARCH_LS1043A || \
373 ARCH_LS1046A || ARCH_T1024 || ARCH_T1040 || ARCH_T1042 || \
374 ARCH_T2080 || ARCH_T4240
Tom Rini3a581af2022-12-02 16:42:21 -0500375 select FSL_FM_10GEC_REGULAR_NOTATION if ARCH_T1024
Tom Rinicc1e98b2019-05-12 07:59:12 -0400376 help
377 This driver support the Freescale FMan Ethernet controller
378
Rajesh Bhagata97a0712021-11-09 16:30:38 +0530379config SYS_FMAN_FW_ADDR
380 hex "FMAN Firmware Address"
381 depends on FMAN_ENET
382 default 0x0
383
384config SYS_QE_FMAN_FW_LENGTH
385 hex "FMAN QE Firmware length"
386 depends on FMAN_ENET || QE || U_QE
387 default 0x10000
388
Tom Rini2d752b02022-07-23 13:05:06 -0400389config SYS_FMAN_V3
390 bool
Tom Rini612f7a62022-07-23 13:05:10 -0400391 select FSL_MEMAC
Tom Rini2d752b02022-07-23 13:05:06 -0400392 help
393 SoC has FMan v3 with mEMAC
394
Tom Rini3a581af2022-12-02 16:42:21 -0500395config FSL_FM_10GEC_REGULAR_NOTATION
396 bool
397 help
398 On SoCs T4240, T2080, LS1043A, etc, the notation between 10GEC and
399 MAC as below:
400 10GEC1->MAC9, 10GEC2->MAC10, 10GEC3->MAC1, 10GEC4->MAC2
401 While on SoCs T1024, etc, the notation between 10GEC and MAC as below:
402 10GEC1->MAC1, 10GEC2->MAC2
403 so we introduce CONFIG_FSL_FM_10GEC_REGULAR_NOTATION to identify the
404 new SoCs on which 10GEC enumeration is consistent with MAC
405 enumeration.
406
Tom Rini8dc1b172017-05-26 11:18:53 -0400407config FTMAC100
408 bool "Ftmac100 Ethernet Support"
409 help
410 This MAC is present in Andestech SoCs.
411
Cédric Le Goaterf95de0b2018-10-29 07:06:31 +0100412config FTGMAC100
413 bool "Ftgmac100 Ethernet Support"
Cédric Le Goaterf95de0b2018-10-29 07:06:31 +0100414 select PHYLIB
415 help
416 This driver supports the Faraday's FTGMAC100 Gigabit SoC
417 Ethernet controller that can be found on Aspeed SoCs (which
418 include NCSI).
419
420 It is fully compliant with IEEE 802.3 specification for
421 10/100 Mbps Ethernet and IEEE 802.3z specification for 1000
422 Mbps Ethernet and includes Reduced Media Independent
423 Interface (RMII) and Reduced Gigabit Media Independent
424 Interface (RGMII) interfaces. It adopts an AHB bus interface
425 and integrates a link list DMA engine with direct M-Bus
426 accesses for transmitting and receiving packets. It has
427 independent TX/RX fifos, supports half and full duplex (1000
428 Mbps mode only supports full duplex), flow control for full
429 duplex and backpressure for half duplex.
430
431 The FTGMAC100 also implements IP, TCP, UDP checksum offloads
432 and supports IEEE 802.1Q VLAN tag insertion and removal. It
433 offers high-priority transmit queue for QoS and CoS
434 applications.
435
Tom Rini0d121ad2022-06-25 11:02:36 -0400436config SYS_DISCOVER_PHY
437 bool
Cédric Le Goaterf95de0b2018-10-29 07:06:31 +0100438
Angelo Durgehello080bcc52019-11-15 23:54:17 +0100439config MCFFEC
440 bool "ColdFire Ethernet Support"
Angelo Durgehello080bcc52019-11-15 23:54:17 +0100441 select PHYLIB
Tom Rini0d121ad2022-06-25 11:02:36 -0400442 select SYS_DISCOVER_PHY
Angelo Durgehello080bcc52019-11-15 23:54:17 +0100443 help
444 This driver supports the network interface units in the
445 ColdFire family.
446
Tom Rini7675a522022-06-25 11:02:35 -0400447config SYS_UNIFY_CACHE
448 depends on MCFFEC
449 bool "Invalidate icache during ethernet operations"
450
Angelo Durgehello080bcc52019-11-15 23:54:17 +0100451config FSLDMAFEC
452 bool "ColdFire DMA Ethernet Support"
Angelo Durgehello080bcc52019-11-15 23:54:17 +0100453 select PHYLIB
Tom Rini0d121ad2022-06-25 11:02:36 -0400454 select SYS_DISCOVER_PHY
Angelo Durgehello080bcc52019-11-15 23:54:17 +0100455 help
456 This driver supports the network interface units in the
457 ColdFire family.
458
Marek Vasutdf4c4832020-03-25 19:08:59 +0100459config KS8851_MLL
460 bool "Microchip KS8851-MLL controller driver"
461 help
462 The Microchip KS8851 parallel bus external ethernet interface chip.
463
Tim Harvey668e2052021-06-30 16:50:08 -0700464config KSZ9477
465 bool "Microchip KSZ9477 I2C controller driver"
466 depends on DM_DSA && DM_I2C
467 help
468 This driver implements a DSA switch driver for the KSZ9477 family
469 of GbE switches using the I2C interface.
470
Joel Stanley3167b4d2022-09-26 15:35:58 +0930471config LITEETH
472 bool "LiteX LiteEth Ethernet MAC"
473 help
474 Driver for the LiteEth Ethernet MAC from LiteX.
475
Chris Packhamed52ea52018-05-03 23:00:35 +1200476config MVGBE
477 bool "Marvell Orion5x/Kirkwood network interface support"
Trevor Woernerbb0fb4c2020-05-06 08:02:40 -0400478 depends on ARCH_KIRKWOOD || ARCH_ORION5X
Tom Rini94633c32022-08-02 07:33:47 -0400479 select PHYLIB
Chris Packhamed52ea52018-05-03 23:00:35 +1200480 help
481 This driver supports the network interface units in the
482 Marvell Orion5x and Kirkwood SoCs
483
Chris Packham7654f622017-08-21 20:17:03 +1200484config MVNETA
Miquel Raynale7ab2cc2017-12-28 15:43:09 +0100485 bool "Marvell Armada XP/385/3700 network interface support"
Chris Packhamaaee5722022-11-05 17:23:56 +1300486 depends on ARMADA_XP || ARMADA_38X || ARMADA_3700 || ALLEYCAT_5
Chris Packham7654f622017-08-21 20:17:03 +1200487 select PHYLIB
Marek Behúnda84e402022-04-27 12:41:46 +0200488 select DM_MDIO
Chris Packham7654f622017-08-21 20:17:03 +1200489 help
490 This driver supports the network interface units in the
Miquel Raynale7ab2cc2017-12-28 15:43:09 +0100491 Marvell ARMADA XP, ARMADA 38X and ARMADA 3700 SoCs
Chris Packham7654f622017-08-21 20:17:03 +1200492
Stefan Roese99d4c6d2016-02-10 07:22:10 +0100493config MVPP2
Stefan Roesee7935c42017-02-15 11:42:59 +0100494 bool "Marvell Armada 375/7K/8K network interface support"
495 depends on ARMADA_375 || ARMADA_8K
Stefan Roese99d4c6d2016-02-10 07:22:10 +0100496 select PHYLIB
Nevo Hed17caaf82019-08-15 18:08:45 -0400497 select MVMDIO
498 select DM_MDIO
Stefan Roese99d4c6d2016-02-10 07:22:10 +0100499 help
500 This driver supports the network interface units in the
Stefan Roesee7935c42017-02-15 11:42:59 +0100501 Marvell ARMADA 375, 7K and 8K SoCs.
Stefan Roese99d4c6d2016-02-10 07:22:10 +0100502
Wenyou Yangebcb40a2016-11-02 10:06:55 +0800503config MACB
504 bool "Cadence MACB/GEM Ethernet Interface"
Wenyou Yangebcb40a2016-11-02 10:06:55 +0800505 select PHYLIB
506 help
507 The Cadence MACB ethernet interface is found on many Atmel
508 AT91 and SAMA5 parts. This driver also supports the Cadence
509 GEM (Gigabit Ethernet MAC) found in some ARM SoC devices.
510 Say Y to include support for the MACB/GEM chip.
511
Wilson Lee4bf56912017-08-22 20:25:07 -0700512config MACB_ZYNQ
513 bool "Cadence MACB/GEM Ethernet Interface for Xilinx Zynq"
514 depends on MACB
515 help
516 The Cadence MACB ethernet interface was used on Zynq platform.
517 Say Y to enable support for the MACB/GEM in Zynq chip.
518
Weijie Gao17ade702020-11-12 16:36:53 +0800519config MT7620_ETH
520 bool "MediaTek MT7620 Ethernet Interface"
521 depends on SOC_MT7620
522 select PHYLIB
523 select DM_RESET
524 select DM_GPIO
525 select CLK
526 help
527 The MediaTek MT7620 ethernet interface is used on MT7620 based
528 boards. It has a built-in switch with two configurable ports which
529 can connect to external PHY/MACs.
530
Stefan Roesec895ef42018-10-26 14:53:27 +0200531config MT7628_ETH
532 bool "MediaTek MT7628 Ethernet Interface"
Weijie Gao16b94902019-04-30 11:13:58 +0800533 depends on SOC_MT7628
Weijie Gaof0793212019-09-25 17:45:33 +0800534 select PHYLIB
Stefan Roesec895ef42018-10-26 14:53:27 +0200535 help
536 The MediaTek MT7628 ethernet interface is used on MT7628 and
537 MT7688 based boards.
538
Jim Liu52503d82022-05-17 16:28:11 +0800539config NET_NPCM750
540 bool "Nuvoton NPCM750 Ethernet MAC"
541 help
542 support NPCM750 EMAC
543
Stefan Roese8e0f8ef2022-04-07 09:11:52 +0200544config NET_OCTEON
545 bool "MIPS Octeon ethernet support"
546 depends on ARCH_OCTEON
547 help
548 You must select Y to enable network device support for
549 MIPS Octeon SoCs. If unsure, say n
550
Suneel Garapati0008e9a2020-08-26 14:37:33 +0200551config NET_OCTEONTX
552 bool "OcteonTX Ethernet support"
553 depends on ARCH_OCTEONTX
554 depends on PCI_SRIOV
555 help
556 You must select Y to enable network device support for
557 OcteonTX SoCs. If unsure, say n
Suneel Garapati4684a7a2020-08-26 14:37:42 +0200558
559config NET_OCTEONTX2
560 bool "OcteonTX2 Ethernet support"
561 depends on ARCH_OCTEONTX2
562 select OCTEONTX2_CGX_INTF
563 help
564 You must select Y to enable network device support for
565 OcteonTX2 SoCs. If unsure, say n
566
Suneel Garapati0008e9a2020-08-26 14:37:33 +0200567config OCTEONTX_SMI
568 bool "OcteonTX SMI Device support"
569 depends on ARCH_OCTEONTX || ARCH_OCTEONTX2
570 help
571 You must select Y to enable SMI controller support for
572 OcteonTX or OcteonTX2 SoCs. If unsure, say n
573
Suneel Garapati4684a7a2020-08-26 14:37:42 +0200574config OCTEONTX2_CGX_INTF
575 bool "OcteonTX2 CGX ATF interface support"
576 depends on ARCH_OCTEONTX2
577 default y if ARCH_OCTEONTX2
578 help
579 You must select Y to enable CGX ATF interface support for
580 OcteonTX2 SoCs. If unsure, say n
581
Bin Mengb68fe152015-08-27 22:25:58 -0700582config PCH_GBE
583 bool "Intel Platform Controller Hub EG20T GMAC driver"
Bin Mengb68fe152015-08-27 22:25:58 -0700584 select PHYLIB
585 help
586 This MAC is present in Intel Platform Controller Hub EG20T. It
587 supports 10/100/1000 Mbps operation.
588
Mylène Josserand751b0be2017-04-02 12:59:08 +0200589config RGMII
590 bool "Enable RGMII"
591 help
592 Enable the support of the Reduced Gigabit Media-Independent
593 Interface (RGMII).
594
Adam Fordd7869b22018-07-20 23:03:57 -0500595config MII
596 bool "Enable MII"
597 help
598 Enable support of the Media-Independent Interface (MII)
599
Tom Rini03d14cc2022-03-18 08:38:22 -0400600config RMII
601 bool "Enable RMII"
602 help
603 Enable support of the Reduced Media-Independent Interface (MII)
604
Marek Vasutd789a822020-05-17 18:14:17 +0200605config PCNET
606 bool "AMD PCnet series Ethernet controller driver"
607 help
608 This driver supports AMD PCnet series fast ethernet family of
609 PCI chipsets/adapters.
610
Heiko Schocher6e31c622020-02-06 09:48:16 +0100611source "drivers/net/qe/Kconfig"
612
Bin Meng86e9dc82016-03-21 06:47:41 -0700613config RTL8139
614 bool "Realtek 8139 series Ethernet controller driver"
615 help
616 This driver supports Realtek 8139 series fast ethernet family of
617 PCI chipsets/adapters.
618
Bin Meng0764f242016-03-21 06:47:42 -0700619config RTL8169
620 bool "Realtek 8169 series Ethernet controller driver"
621 help
622 This driver supports Realtek 8169 series gigabit ethernet family of
623 PCI/PCIe chipsets/adapters.
624
Vladimir Olteanf24b6662021-09-29 18:04:41 +0300625config SJA1105
626 bool "NXP SJA1105 Ethernet switch family driver"
627 depends on DM_DSA && DM_SPI
628 select BITREVERSE
629 help
630 This is the driver for the NXP SJA1105 automotive Ethernet switch
631 family. These are 5-port devices and are managed over an SPI
632 interface. Probing is handled based on OF bindings. The driver
633 supports the following revisions:
634 - SJA1105E (Gen. 1, No TT-Ethernet)
635 - SJA1105T (Gen. 1, TT-Ethernet)
636 - SJA1105P (Gen. 2, No SGMII, No TT-Ethernet)
637 - SJA1105Q (Gen. 2, No SGMII, TT-Ethernet)
638 - SJA1105R (Gen. 2, SGMII, No TT-Ethernet)
639 - SJA1105S (Gen. 2, SGMII, TT-Ethernet)
640
Adam Ford8daec2d2017-09-05 15:20:44 -0500641config SMC911X
642 bool "SMSC LAN911x and LAN921x controller driver"
643
Adam Ford8daec2d2017-09-05 15:20:44 -0500644config SMC911X_32_BIT
Andre Przywaraf26c9d72021-06-28 14:30:30 +0100645 bool "Enable SMC911X 32-bit interface"
Tom Rini94633c32022-08-02 07:33:47 -0400646 depends on SMC911X
Adam Ford8daec2d2017-09-05 15:20:44 -0500647 help
Andre Przywaraf26c9d72021-06-28 14:30:30 +0100648 Define this if data bus is 32 bits. If your processor use a
649 narrower 16 bit bus or cannot convert one 32 bit word to two 16 bit
650 words, leave this to "n".
Adam Ford8daec2d2017-09-05 15:20:44 -0500651
Mylène Josserand4d43d062017-04-02 12:59:03 +0200652config SUN7I_GMAC
653 bool "Enable Allwinner GMAC Ethernet support"
654 help
655 Enable the support for Sun7i GMAC Ethernet controller
656
Stefan Mavrodievaba39242017-11-03 08:56:51 +0200657config SUN7I_GMAC_FORCE_TXERR
658 bool "Force PA17 as gmac function"
659 depends on SUN7I_GMAC
660 help
661 Some ethernet phys needs TXERR control. Since the GMAC
662 doesn't have such signal, setting PA17 as GMAC function
663 makes the pin output low, which enables data transmission.
664
Mylène Josserandabc3e4d2017-04-02 12:59:07 +0200665config SUN4I_EMAC
666 bool "Allwinner Sun4i Ethernet MAC support"
Artturi Alm6270a3f2017-11-08 05:08:58 +0200667 select PHYLIB
Mylène Josserandabc3e4d2017-04-02 12:59:07 +0200668 help
669 This driver supports the Allwinner based SUN4I Ethernet MAC.
670
Amit Singh Tomara29710c2016-07-06 17:59:44 +0530671config SUN8I_EMAC
672 bool "Allwinner Sun8i Ethernet MAC support"
Amit Singh Tomara29710c2016-07-06 17:59:44 +0530673 select PHYLIB
Philipp Tomsich449ea2c2017-03-26 18:50:23 +0200674 select PHY_GIGE
Amit Singh Tomara29710c2016-07-06 17:59:44 +0530675 help
676 This driver supports the Allwinner based SUN8I/SUN50I Ethernet MAC.
677 It can be found in H3/A64/A83T based SoCs and compatible with both
Tom Rini7131d2d2017-02-20 09:38:03 -0500678 External and Internal PHYs.
Amit Singh Tomara29710c2016-07-06 17:59:44 +0530679
Nobuhiro Iwamatsudcd18ea2017-12-01 16:08:03 +0900680config SH_ETHER
681 bool "Renesas SH Ethernet MAC"
682 select PHYLIB
683 help
684 This driver supports the Ethernet for Renesas SH and ARM SoCs.
685
Grygorii Strashkoffad5fa2018-10-31 16:21:39 -0500686source "drivers/net/ti/Kconfig"
Adam Fordd7869b22018-07-20 23:03:57 -0500687
Marek Vasuta410f132020-06-20 17:43:29 +0200688config TULIP
689 bool "DEC Tulip DC2114x Ethernet support"
Marek Vasuta410f132020-06-20 17:43:29 +0200690 help
691 This driver supports DEC DC2114x Fast ethernet chips.
692
Michal Simek338a5f22015-12-09 16:54:42 +0100693config XILINX_AXIEMAC
Michal Simek338a5f22015-12-09 16:54:42 +0100694 select PHYLIB
695 select MII
696 bool "Xilinx AXI Ethernet"
697 help
698 This MAC is present in Xilinx Microblaze, Zynq and ZynqMP SoCs.
699
Ashok Reddy Soma258ce792021-07-02 04:40:34 -0600700config XILINX_AXIMRMAC
Tom Rini94633c32022-08-02 07:33:47 -0400701 depends on ARCH_VERSAL
Ashok Reddy Soma258ce792021-07-02 04:40:34 -0600702 bool "Xilinx AXI MRMAC"
703 help
704 MRMAC is a high performance, low latency, adaptable Ethernet
705 integrated hard IP. This can be configured up to four ports with MAC
706 rates from 10GE to 100GE. This could be present in some of the Xilinx
707 Versal designs.
708
Tom Rinibe3bea22022-11-19 18:45:39 -0500709config VSC7385_ENET
710 bool "Vitesse 7385 Switch Firmware Upload driver"
711
Michal Simek3229c862015-12-11 09:41:49 +0100712config XILINX_EMACLITE
Michal Simek3229c862015-12-11 09:41:49 +0100713 select PHYLIB
714 select MII
715 bool "Xilinx Ethernetlite"
716 help
717 This MAC is present in Xilinx Microblaze, Zynq and ZynqMP SoCs.
718
Michal Simek596e5782015-11-30 14:34:52 +0100719config ZYNQ_GEM
Michal Simek7bccc752015-12-11 09:14:31 +0100720 select PHYLIB
Michal Simek596e5782015-11-30 14:34:52 +0100721 bool "Xilinx Ethernet GEM"
722 help
Michal Simekc9428102015-12-09 16:53:52 +0100723 This MAC is present in Xilinx Zynq and ZynqMP SoCs.
Michal Simek596e5782015-11-30 14:34:52 +0100724
Purna Chandra Mandal23e75782016-01-28 15:30:21 +0530725config PIC32_ETH
726 bool "Microchip PIC32 Ethernet Support"
Tom Rini94633c32022-08-02 07:33:47 -0400727 depends on MACH_PIC32
Purna Chandra Mandal23e75782016-01-28 15:30:21 +0530728 select PHYLIB
729 help
730 This driver implements 10/100 Mbps Ethernet and MAC layer for
731 Microchip PIC32 microcontrollers.
732
Sjoerd Simons0125bcf2017-01-11 11:46:11 +0100733config GMAC_ROCKCHIP
734 bool "Rockchip Synopsys Designware Ethernet MAC"
Tom Rini94633c32022-08-02 07:33:47 -0400735 depends on ETH_DESIGNWARE
Sjoerd Simons0125bcf2017-01-11 11:46:11 +0100736 help
737 This driver provides Rockchip SoCs network support based on the
738 Synopsys Designware driver.
739
Marek Vasut8ae51b62017-05-13 15:54:28 +0200740config RENESAS_RAVB
741 bool "Renesas Ethernet AVB MAC"
Tom Rini94633c32022-08-02 07:33:47 -0400742 depends on RCAR_GEN3
Marek Vasut8ae51b62017-05-13 15:54:28 +0200743 select PHYLIB
744 help
745 This driver implements support for the Ethernet AVB block in
746 Renesas M3 and H3 SoCs.
747
Christophe Leroyfad51ac2017-07-06 10:33:23 +0200748config MPC8XX_FEC
749 bool "Fast Ethernet Controller on MPC8XX"
Christophe Leroyee1e6002018-03-16 17:20:41 +0100750 depends on MPC8xx
Christophe Leroyfad51ac2017-07-06 10:33:23 +0200751 select MII
Tom Rini0d121ad2022-06-25 11:02:36 -0400752 select SYS_DISCOVER_PHY
Christophe Leroyfad51ac2017-07-06 10:33:23 +0200753 help
754 This driver implements support for the Fast Ethernet Controller
755 on MPC8XX
756
Kunihiko Hayashia8927792018-05-24 19:24:37 +0900757config SNI_AVE
758 bool "Socionext AVE Ethernet support"
Tom Rini94633c32022-08-02 07:33:47 -0400759 depends on ARCH_UNIPHIER
Kunihiko Hayashia8927792018-05-24 19:24:37 +0900760 select PHYLIB
761 select SYSCON
762 select REGMAP
763 help
764 This driver implements support for the Socionext AVE Ethernet
765 controller, as found on the Socionext UniPhier family.
766
Jassi Brareab447b2021-06-04 18:44:38 +0900767config SNI_NETSEC
768 bool "Socionext NETSEC Ethernet support"
Tom Rini94633c32022-08-02 07:33:47 -0400769 depends on SYNQUACER_SPI
Jassi Brareab447b2021-06-04 18:44:38 +0900770 select PHYLIB
771 help
772 This driver implements support for the Socionext SynQuacer NETSEC
773 ethernet controller, as found on the Socionext SynQuacer family.
774
Horatiu Vultur4c661572019-01-31 15:30:33 +0100775source "drivers/net/mscc_eswitch/Kconfig"
Gregory CLEMENTc8546162019-01-17 17:07:13 +0100776
Christophe Leroyfad51ac2017-07-06 10:33:23 +0200777config ETHER_ON_FEC1
778 bool "FEC1"
779 depends on MPC8XX_FEC
780 default y
781
782config FEC1_PHY
783 int "FEC1 PHY"
784 depends on ETHER_ON_FEC1
785 default -1
786 help
787 Define to the hardcoded PHY address which corresponds
788 to the given FEC; i. e.
789 #define CONFIG_FEC1_PHY 4
790 means that the PHY with address 4 is connected to FEC1
791
792 When set to -1, means to probe for first available.
793
794config PHY_NORXERR
795 bool "PHY_NORXERR"
796 depends on ETHER_ON_FEC1
Christophe Leroyfad51ac2017-07-06 10:33:23 +0200797 help
798 The PHY does not have a RXERR line (RMII only).
799 (so program the FEC to ignore it).
800
801config ETHER_ON_FEC2
802 bool "FEC2"
803 depends on MPC8XX_FEC && MPC885
804 default y
805
806config FEC2_PHY
807 int "FEC2 PHY"
808 depends on ETHER_ON_FEC2
809 default -1
810 help
811 Define to the hardcoded PHY address which corresponds
812 to the given FEC; i. e.
813 #define CONFIG_FEC1_PHY 4
814 means that the PHY with address 4 is connected to FEC1
815
816 When set to -1, means to probe for first available.
817
818config FEC2_PHY_NORXERR
819 bool "PHY_NORXERR"
820 depends on ETHER_ON_FEC2
Christophe Leroyfad51ac2017-07-06 10:33:23 +0200821 help
822 The PHY does not have a RXERR line (RMII only).
823 (so program the FEC to ignore it).
824
Ahmed Mansour541d5762017-12-15 16:01:01 -0500825config SYS_DPAA_QBMAN
826 bool "Device tree fixup for QBMan on freescale SOCs"
827 depends on (ARM || PPC) && !SPL_BUILD
828 default y if ARCH_B4860 || \
829 ARCH_B4420 || \
830 ARCH_P1023 || \
831 ARCH_P2041 || \
Ahmed Mansour541d5762017-12-15 16:01:01 -0500832 ARCH_T1024 || \
833 ARCH_T1040 || \
834 ARCH_T1042 || \
835 ARCH_T2080 || \
Ahmed Mansour541d5762017-12-15 16:01:01 -0500836 ARCH_T4240 || \
Ahmed Mansour541d5762017-12-15 16:01:01 -0500837 ARCH_P4080 || \
838 ARCH_P3041 || \
839 ARCH_P5040 || \
Ahmed Mansour541d5762017-12-15 16:01:01 -0500840 ARCH_LS1043A || \
841 ARCH_LS1046A
842 help
843 QBman fixups to allow deep sleep in DPAA 1 SOCs
844
Tom Riniff4e87c2022-07-31 21:08:29 -0400845config SYS_FSL_QMAN_V3
846 bool # QMAN version 3
847 depends on SYS_DPAA_QBMAN
848
Mario Six17151052018-03-28 14:38:18 +0200849config TSEC_ENET
850 select PHYLIB
851 bool "Enable Three-Speed Ethernet Controller"
852 help
853 This driver implements support for the (Enhanced) Three-Speed
854 Ethernet Controller found on Freescale SoCs.
855
Weijie Gao23f17162018-12-20 16:12:53 +0800856config MEDIATEK_ETH
857 bool "MediaTek Ethernet GMAC Driver"
Weijie Gao23f17162018-12-20 16:12:53 +0800858 select PHYLIB
859 select DM_GPIO
860 select DM_RESET
861 help
862 This Driver support MediaTek Ethernet GMAC
863 Say Y to enable support for the MediaTek Ethernet GMAC.
864
Shawn Guo1d5b5d22019-03-20 15:32:40 +0800865config HIGMACV300_ETH
866 bool "HiSilicon Gigabit Ethernet Controller"
Shawn Guo1d5b5d22019-03-20 15:32:40 +0800867 select DM_RESET
868 select PHYLIB
869 help
870 This driver supports HIGMACV300 Ethernet controller found on
871 HiSilicon SoCs.
872
Alex Marginean120b5ef2019-07-03 12:11:40 +0300873config FSL_ENETC
874 bool "NXP ENETC Ethernet controller"
Tom Rini94633c32022-08-02 07:33:47 -0400875 depends on DM_MDIO
Alex Marginean120b5ef2019-07-03 12:11:40 +0300876 help
877 This driver supports the NXP ENETC Ethernet controller found on some
878 of the NXP SoCs.
879
Alex Marginean74dd3832019-07-16 11:21:17 +0300880config MDIO_MUX_I2CREG
881 bool "MDIO MUX accessed as a register over I2C"
882 depends on DM_MDIO_MUX && DM_I2C
883 help
884 This driver is used for MDIO muxes driven by writing to a register of
885 an I2C chip. The board it was developed for uses a mux controlled by
886 on-board FPGA which in turn is accessed as a chip over I2C.
887
Robert Marko975151d2020-10-08 22:05:11 +0200888config MDIO_IPQ4019
889 bool "Qualcomm IPQ4019 MDIO interface support"
890 depends on DM_MDIO
891 help
892 This driver supports the MDIO interface found in Qualcomm
893 IPQ40xx series Soc-s.
894
Alex Marginean8bd37ce2019-07-25 12:33:19 +0300895config MVMDIO
896 bool "Marvell MDIO interface support"
897 depends on DM_MDIO
898 help
899 This driver supports the MDIO interface found in the network
900 interface units of the Marvell EBU SoCs (Kirkwood, Orion5x,
901 Dove, Armada 370, Armada XP, Armada 37xx and Armada7K/8K/8KP).
902
903 This driver is used by the MVPP2 and MVNETA drivers.
904
Ioana Ciornei52e16ec2020-03-18 16:47:36 +0200905config FSL_LS_MDIO
906 bool "NXP Layerscape MDIO interface support"
907 depends on DM_MDIO
908 help
909 This driver supports the MDIO bus found on the Fman 10G Ethernet MACs and
910 on the mEMAC (which supports both Clauses 22 and 45).
911
Dylan Hung8b41ded2021-11-02 13:41:54 +0800912config ASPEED_MDIO
913 bool "Aspeed MDIO interface support"
914 depends on DM_MDIO
915 help
916 This driver supports the MDIO bus of Aspeed AST2600 SOC. The driver
917 currently supports Clause 22.
918
Neil Armstrong6c7bc9f2021-02-24 15:02:23 +0100919config MDIO_MUX_MMIOREG
920 bool "MDIO MUX accessed as a MMIO register access"
921 depends on DM_MDIO_MUX
922 help
923 This driver is used for MDIO muxes driven by writing to a register in
924 the MMIO physical memory.
925
Neil Armstrong8120ce12021-02-24 17:31:53 +0100926config MDIO_MUX_MESON_G12A
927 bool "MDIO MUX for Amlogic Meson G12A SoCs"
928 depends on DM_MDIO_MUX
929 help
930 This driver is used for the MDIO mux found on the Amlogic G12A & compatible
931 SoCs.
932
Joe Hershberger3ea143a2015-03-22 17:09:13 -0500933endif # NETDEVICES