blob: 8b10148579e8dc014a8a9d4984cfc6ea94578b6a [file] [log] [blame]
Alex89e50d92017-02-06 19:17:34 -08001source "drivers/net/phy/Kconfig"
Calvin Johnson0e6101a2018-03-08 15:30:35 +05302source "drivers/net/pfe_eth/Kconfig"
Florinel Iordachedfd4c0f2019-05-15 09:09:21 +00003source "drivers/net/fsl-mc/Kconfig"
Alex89e50d92017-02-06 19:17:34 -08004
Joe Hershbergerc7eceaf2015-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 Hershberger54214e62018-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 Hershbergerc7eceaf2015-03-22 17:09:10 -050013 Look in include/net.h for details.
Joe Hershberger6ab76992015-03-22 17:09:13 -050014
Alex Marginean1a5b0982019-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 Margineanab8c2a52019-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 Manoilc0566c22021-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 Marginean0daa53a2019-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 Marginean0649be52019-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 Licd5bb772020-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 Manoild9eaa922021-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 Hershberger6ab76992015-03-22 17:09:13 -050090menuconfig NETDEVICES
91 bool "Network device support"
92 depends on NET
Joe Hershberger5a9d7f12015-06-22 16:15:30 -050093 default y if DM_ETH
Joe Hershberger6ab76992015-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 Tomsich00c33612017-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 Vasut0a3d0e12016-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 Chouec06dd82015-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 Velupillaid2f677a2017-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 Rojas204fd5e2018-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 Rojasb0b22542018-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 Tomar8f656c52020-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 Tsengebcdddd2021-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 Przywara7352fb92021-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 Warren50709602016-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 Delaunay68083902020-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
Patrick Delaunayd9dc80c2021-07-20 20:09:55 +0200209 select DM_ETH_PHY
Patrick Delaunay68083902020-06-08 11:27:19 +0200210 default y if ARCH_STM32MP
211 help
212 The Synopsys Designware Ethernet QOS IP block with the specific
213 configuration used in STM32MP soc.
214
215config DWC_ETH_QOS_TEGRA186
216 bool "Synopsys DWC Ethernet QOS device support for TEGRA186"
217 depends on DWC_ETH_QOS
218 default y if TEGRA186
219 help
220 The Synopsys Designware Ethernet QOS IP block with specific
221 configuration used in NVIDIA's Tegra186 chip.
Stephen Warren50709602016-10-21 14:46:47 -0600222
Simon Glassa83ccd52015-08-19 09:33:41 -0600223config E1000
224 bool "Intel PRO/1000 Gigabit Ethernet support"
Madalin Bucur5fd3ff72020-04-29 08:26:17 +0300225 depends on (DM_ETH && DM_PCI) || !DM_ETH
Simon Glassa83ccd52015-08-19 09:33:41 -0600226 help
227 This driver supports Intel(R) PRO/1000 gigabit ethernet family of
228 adapters. For more information on how to identify your adapter, go
229 to the Adapter & Driver ID Guide at:
230
231 <http://support.intel.com/support/network/adapter/pro100/21397.htm>
232
233config E1000_SPI_GENERIC
234 bool "Allow access to the Intel 8257x SPI bus"
235 depends on E1000
236 help
237 Allow generic access to the SPI bus on the Intel 8257x, for
238 example with the "sspi" command.
239
240config E1000_SPI
241 bool "Enable SPI bus utility code"
242 depends on E1000
243 help
244 Utility code for direct access to the SPI bus on Intel 8257x.
245 This does not do anything useful unless you set at least one
246 of CONFIG_CMD_E1000 or CONFIG_E1000_SPI_GENERIC.
247
248config CMD_E1000
249 bool "Enable the e1000 command"
250 depends on E1000
251 help
252 This enables the 'e1000' management command for E1000 devices. When
253 used on devices with SPI support you can reprogram the EEPROM from
254 U-Boot.
255
Marek Vasut2dcaf852020-05-23 18:07:53 +0200256config EEPRO100
257 bool "Intel PRO/100 82557/82559/82559ER Fast Ethernet support"
258 help
259 This driver supports Intel(R) PRO/100 82557/82559/82559ER fast
260 ethernet family of adapters.
261
Joe Hershberger6ab76992015-03-22 17:09:13 -0500262config ETH_SANDBOX
263 depends on DM_ETH && SANDBOX
264 default y
265 bool "Sandbox: Mocked Ethernet driver"
266 help
267 This driver simply responds with fake ARP replies and ping
268 replies that are used to verify network stack functionality
269
270 This driver is particularly useful in the test/dm/eth.c tests
271
Joe Hershberger586cbd12015-03-22 17:09:21 -0500272config ETH_SANDBOX_RAW
273 depends on DM_ETH && SANDBOX
274 default y
275 bool "Sandbox: Bridge to Linux Raw Sockets"
276 help
277 This driver is a bridge from the bottom of the network stack
278 in U-Boot to the RAW AF_PACKET API in Linux. This allows real
279 network traffic to be tested from within sandbox. See
Keerthyfa002552019-07-29 13:52:04 +0530280 doc/arch/index.rst for more details.
Joe Hershberger586cbd12015-03-22 17:09:21 -0500281
Simon Glass6e378742015-04-05 16:07:34 -0600282config ETH_DESIGNWARE
283 bool "Synopsys Designware Ethernet MAC"
Thomas Chou7a0dfa62015-12-07 20:53:29 +0800284 select PHYLIB
Simon Goldschmidtad588932019-01-13 19:58:41 +0100285 imply ETH_DESIGNWARE_SOCFPGA if ARCH_SOCFPGA
Simon Glass6e378742015-04-05 16:07:34 -0600286 help
287 This MAC is present in SoCs from various vendors. It supports
288 100Mbit and 1 Gbit operation. You must enable CONFIG_PHYLIB to
289 provide the PHY (physical media interface).
290
Neil Armstrong145aff72021-02-24 20:33:56 +0100291config ETH_DESIGNWARE_MESON8B
292 bool "Amlogic Meson8b and later glue driver for Synopsys Designware Ethernet MAC"
293 depends on DM_ETH
294 select ETH_DESIGNWARE
295 help
296 This provides glue layer to use Synopsys Designware Ethernet MAC
297 present on the Amlogic Meson8b, GX, AXG & G12A SoCs.
298
Marek Vasut0d9a4a02018-08-13 19:32:14 +0200299config ETH_DESIGNWARE_SOCFPGA
Simon Goldschmidtb50afc82019-01-13 19:58:40 +0100300 select REGMAP
301 select SYSCON
Marek Vasut0d9a4a02018-08-13 19:32:14 +0200302 bool "Altera SoCFPGA extras for Synopsys Designware Ethernet MAC"
303 depends on DM_ETH && ETH_DESIGNWARE
304 help
305 The Altera SoCFPGA requires additional configuration of the
306 Altera system manager to correctly interface with the PHY.
307 This code handles those SoC specifics.
308
Amit Singh Tomar03d6edb2020-05-09 19:55:12 +0530309config ETH_DESIGNWARE_S700
310 bool "Actins S700 glue driver for Synopsys Designware Ethernet MAC"
311 depends on DM_ETH && ETH_DESIGNWARE
312 help
313 This provides glue layer to use Synopsys Designware Ethernet MAC
314 present on Actions S700 SoC.
315
Max Filippove07d3d22016-08-05 18:26:15 +0300316config ETHOC
317 bool "OpenCores 10/100 Mbps Ethernet MAC"
318 help
319 This MAC is present in OpenRISC and Xtensa XTFPGA boards.
320
Peng Fana65e0362018-03-28 20:54:14 +0800321config FEC_MXC_SHARE_MDIO
322 bool "Share the MDIO bus for FEC controller"
323 depends on FEC_MXC
324
325config FEC_MXC_MDIO_BASE
326 hex "MDIO base address for the FEC controller"
327 depends on FEC_MXC_SHARE_MDIO
328 help
329 This specifies the MDIO registers base address. It is used when
330 two FEC controllers share MDIO bus.
331
Jagan Tekia48af852016-10-08 18:00:12 +0530332config FEC_MXC
333 bool "FEC Ethernet controller"
Peng Fan6dd84442019-10-22 03:29:58 +0000334 depends on MX28 || MX5 || MX6 || MX7 || IMX8 || IMX8M || VF610
Jagan Tekia48af852016-10-08 18:00:12 +0530335 help
336 This driver supports the 10/100 Fast Ethernet controller for
337 NXP i.MX processors.
338
Tom Rinifa911f82019-05-12 07:59:12 -0400339config FMAN_ENET
340 bool "Freescale FMan ethernet support"
341 depends on ARM || PPC
342 help
343 This driver support the Freescale FMan Ethernet controller
344
Tom Rinic5ea8ed2017-05-26 11:18:53 -0400345config FTMAC100
346 bool "Ftmac100 Ethernet Support"
347 help
348 This MAC is present in Andestech SoCs.
349
Cédric Le Goater38b33e92018-10-29 07:06:31 +0100350config FTGMAC100
351 bool "Ftgmac100 Ethernet Support"
352 depends on DM_ETH
353 select PHYLIB
354 help
355 This driver supports the Faraday's FTGMAC100 Gigabit SoC
356 Ethernet controller that can be found on Aspeed SoCs (which
357 include NCSI).
358
359 It is fully compliant with IEEE 802.3 specification for
360 10/100 Mbps Ethernet and IEEE 802.3z specification for 1000
361 Mbps Ethernet and includes Reduced Media Independent
362 Interface (RMII) and Reduced Gigabit Media Independent
363 Interface (RGMII) interfaces. It adopts an AHB bus interface
364 and integrates a link list DMA engine with direct M-Bus
365 accesses for transmitting and receiving packets. It has
366 independent TX/RX fifos, supports half and full duplex (1000
367 Mbps mode only supports full duplex), flow control for full
368 duplex and backpressure for half duplex.
369
370 The FTGMAC100 also implements IP, TCP, UDP checksum offloads
371 and supports IEEE 802.1Q VLAN tag insertion and removal. It
372 offers high-priority transmit queue for QoS and CoS
373 applications.
374
375
Angelo Durgehelloa1d3d9f2019-11-15 23:54:17 +0100376config MCFFEC
377 bool "ColdFire Ethernet Support"
378 depends on DM_ETH
379 select PHYLIB
380 help
381 This driver supports the network interface units in the
382 ColdFire family.
383
384config FSLDMAFEC
385 bool "ColdFire DMA Ethernet Support"
386 depends on DM_ETH
387 select PHYLIB
388 help
389 This driver supports the network interface units in the
390 ColdFire family.
391
Marek Vasutf4622282020-03-25 19:08:59 +0100392config KS8851_MLL
393 bool "Microchip KS8851-MLL controller driver"
394 help
395 The Microchip KS8851 parallel bus external ethernet interface chip.
396
397if KS8851_MLL
398if !DM_ETH
399config KS8851_MLL_BASEADDR
400 hex "Microchip KS8851-MLL Base Address"
401 help
402 Define this to hold the physical address of the device (I/O space)
403endif #DM_ETH
404endif #KS8851_MLL
405
Tim Harvey06dea1e2021-06-30 16:50:08 -0700406config KSZ9477
407 bool "Microchip KSZ9477 I2C controller driver"
408 depends on DM_DSA && DM_I2C
409 help
410 This driver implements a DSA switch driver for the KSZ9477 family
411 of GbE switches using the I2C interface.
412
Chris Packham943679d2018-05-03 23:00:35 +1200413config MVGBE
414 bool "Marvell Orion5x/Kirkwood network interface support"
Trevor Woernerbb7ab072020-05-06 08:02:40 -0400415 depends on ARCH_KIRKWOOD || ARCH_ORION5X
Chris Packham1de16f72018-07-09 21:34:00 +1200416 select PHYLIB if DM_ETH
Chris Packham943679d2018-05-03 23:00:35 +1200417 help
418 This driver supports the network interface units in the
419 Marvell Orion5x and Kirkwood SoCs
420
Chris Packham919041c2017-08-21 20:17:03 +1200421config MVNETA
Miquel Raynal59d42cd2017-12-28 15:43:09 +0100422 bool "Marvell Armada XP/385/3700 network interface support"
423 depends on ARMADA_XP || ARMADA_38X || ARMADA_3700
Chris Packham919041c2017-08-21 20:17:03 +1200424 select PHYLIB
425 help
426 This driver supports the network interface units in the
Miquel Raynal59d42cd2017-12-28 15:43:09 +0100427 Marvell ARMADA XP, ARMADA 38X and ARMADA 3700 SoCs
Chris Packham919041c2017-08-21 20:17:03 +1200428
Stefan Roese96c19042016-02-10 07:22:10 +0100429config MVPP2
Stefan Roese78a112b2017-02-15 11:42:59 +0100430 bool "Marvell Armada 375/7K/8K network interface support"
431 depends on ARMADA_375 || ARMADA_8K
Stefan Roese96c19042016-02-10 07:22:10 +0100432 select PHYLIB
Nevo Hed5da38842019-08-15 18:08:45 -0400433 select MVMDIO
434 select DM_MDIO
Stefan Roese96c19042016-02-10 07:22:10 +0100435 help
436 This driver supports the network interface units in the
Stefan Roese78a112b2017-02-15 11:42:59 +0100437 Marvell ARMADA 375, 7K and 8K SoCs.
Stefan Roese96c19042016-02-10 07:22:10 +0100438
Wenyou Yange7183de2016-11-02 10:06:55 +0800439config MACB
440 bool "Cadence MACB/GEM Ethernet Interface"
441 depends on DM_ETH
442 select PHYLIB
443 help
444 The Cadence MACB ethernet interface is found on many Atmel
445 AT91 and SAMA5 parts. This driver also supports the Cadence
446 GEM (Gigabit Ethernet MAC) found in some ARM SoC devices.
447 Say Y to include support for the MACB/GEM chip.
448
Wilson Lee41d6d1e2017-08-22 20:25:07 -0700449config MACB_ZYNQ
450 bool "Cadence MACB/GEM Ethernet Interface for Xilinx Zynq"
451 depends on MACB
452 help
453 The Cadence MACB ethernet interface was used on Zynq platform.
454 Say Y to enable support for the MACB/GEM in Zynq chip.
455
developer7b4c8be2020-11-12 16:36:53 +0800456config MT7620_ETH
457 bool "MediaTek MT7620 Ethernet Interface"
458 depends on SOC_MT7620
459 select PHYLIB
460 select DM_RESET
461 select DM_GPIO
462 select CLK
463 help
464 The MediaTek MT7620 ethernet interface is used on MT7620 based
465 boards. It has a built-in switch with two configurable ports which
466 can connect to external PHY/MACs.
467
Stefan Roesef9947682018-10-26 14:53:27 +0200468config MT7628_ETH
469 bool "MediaTek MT7628 Ethernet Interface"
developer89f051b2019-04-30 11:13:58 +0800470 depends on SOC_MT7628
developera5644112019-09-25 17:45:33 +0800471 select PHYLIB
Stefan Roesef9947682018-10-26 14:53:27 +0200472 help
473 The MediaTek MT7628 ethernet interface is used on MT7628 and
474 MT7688 based boards.
475
Suneel Garapati53dc4482020-08-26 14:37:33 +0200476config NET_OCTEONTX
477 bool "OcteonTX Ethernet support"
478 depends on ARCH_OCTEONTX
479 depends on PCI_SRIOV
480 help
481 You must select Y to enable network device support for
482 OcteonTX SoCs. If unsure, say n
Suneel Garapati8666ae82020-08-26 14:37:42 +0200483
484config NET_OCTEONTX2
485 bool "OcteonTX2 Ethernet support"
486 depends on ARCH_OCTEONTX2
487 select OCTEONTX2_CGX_INTF
488 help
489 You must select Y to enable network device support for
490 OcteonTX2 SoCs. If unsure, say n
491
Suneel Garapati53dc4482020-08-26 14:37:33 +0200492config OCTEONTX_SMI
493 bool "OcteonTX SMI Device support"
494 depends on ARCH_OCTEONTX || ARCH_OCTEONTX2
495 help
496 You must select Y to enable SMI controller support for
497 OcteonTX or OcteonTX2 SoCs. If unsure, say n
498
Suneel Garapati8666ae82020-08-26 14:37:42 +0200499config OCTEONTX2_CGX_INTF
500 bool "OcteonTX2 CGX ATF interface support"
501 depends on ARCH_OCTEONTX2
502 default y if ARCH_OCTEONTX2
503 help
504 You must select Y to enable CGX ATF interface support for
505 OcteonTX2 SoCs. If unsure, say n
506
Bin Meng64d3dca2015-08-27 22:25:58 -0700507config PCH_GBE
508 bool "Intel Platform Controller Hub EG20T GMAC driver"
509 depends on DM_ETH && DM_PCI
510 select PHYLIB
511 help
512 This MAC is present in Intel Platform Controller Hub EG20T. It
513 supports 10/100/1000 Mbps operation.
514
Mylène Josserande44eb3a2017-04-02 12:59:08 +0200515config RGMII
516 bool "Enable RGMII"
517 help
518 Enable the support of the Reduced Gigabit Media-Independent
519 Interface (RGMII).
520
Adam Ford53705472018-07-20 23:03:57 -0500521config MII
522 bool "Enable MII"
523 help
524 Enable support of the Media-Independent Interface (MII)
525
Marek Vasut7275b622020-05-17 18:14:17 +0200526config PCNET
527 bool "AMD PCnet series Ethernet controller driver"
528 help
529 This driver supports AMD PCnet series fast ethernet family of
530 PCI chipsets/adapters.
531
Heiko Schocher41b64a82020-02-06 09:48:16 +0100532source "drivers/net/qe/Kconfig"
533
Bin Menga6448df2016-03-21 06:47:41 -0700534config RTL8139
535 bool "Realtek 8139 series Ethernet controller driver"
536 help
537 This driver supports Realtek 8139 series fast ethernet family of
538 PCI chipsets/adapters.
539
Bin Meng29971222016-03-21 06:47:42 -0700540config RTL8169
541 bool "Realtek 8169 series Ethernet controller driver"
542 help
543 This driver supports Realtek 8169 series gigabit ethernet family of
544 PCI/PCIe chipsets/adapters.
545
Adam Ford0a044f82017-09-05 15:20:44 -0500546config SMC911X
547 bool "SMSC LAN911x and LAN921x controller driver"
548
549if SMC911X
550
Marek Vasut55399442020-03-15 17:39:01 +0100551if !DM_ETH
Adam Ford0a044f82017-09-05 15:20:44 -0500552config SMC911X_BASE
553 hex "SMC911X Base Address"
554 help
555 Define this to hold the physical address
556 of the device (I/O space)
Marek Vasut55399442020-03-15 17:39:01 +0100557endif #DM_ETH
Adam Ford0a044f82017-09-05 15:20:44 -0500558
Adam Ford0a044f82017-09-05 15:20:44 -0500559config SMC911X_32_BIT
Andre Przywara30301e52021-06-28 14:30:30 +0100560 bool "Enable SMC911X 32-bit interface"
561 default n
Adam Ford0a044f82017-09-05 15:20:44 -0500562 help
Andre Przywara30301e52021-06-28 14:30:30 +0100563 Define this if data bus is 32 bits. If your processor use a
564 narrower 16 bit bus or cannot convert one 32 bit word to two 16 bit
565 words, leave this to "n".
Adam Ford0a044f82017-09-05 15:20:44 -0500566
Adam Ford0a044f82017-09-05 15:20:44 -0500567endif #SMC911X
568
Mylène Josserandc1506ef2017-04-02 12:59:03 +0200569config SUN7I_GMAC
570 bool "Enable Allwinner GMAC Ethernet support"
571 help
572 Enable the support for Sun7i GMAC Ethernet controller
573
Stefan Mavrodieveaee8582017-11-03 08:56:51 +0200574config SUN7I_GMAC_FORCE_TXERR
575 bool "Force PA17 as gmac function"
576 depends on SUN7I_GMAC
577 help
578 Some ethernet phys needs TXERR control. Since the GMAC
579 doesn't have such signal, setting PA17 as GMAC function
580 makes the pin output low, which enables data transmission.
581
Mylène Josserand43ef1842017-04-02 12:59:07 +0200582config SUN4I_EMAC
583 bool "Allwinner Sun4i Ethernet MAC support"
584 depends on DM_ETH
Artturi Alm8ed09172017-11-08 05:08:58 +0200585 select PHYLIB
Mylène Josserand43ef1842017-04-02 12:59:07 +0200586 help
587 This driver supports the Allwinner based SUN4I Ethernet MAC.
588
Amit Singh Tomard194c0e2016-07-06 17:59:44 +0530589config SUN8I_EMAC
590 bool "Allwinner Sun8i Ethernet MAC support"
591 depends on DM_ETH
592 select PHYLIB
Philipp Tomsich00c33612017-03-26 18:50:23 +0200593 select PHY_GIGE
Amit Singh Tomard194c0e2016-07-06 17:59:44 +0530594 help
595 This driver supports the Allwinner based SUN8I/SUN50I Ethernet MAC.
596 It can be found in H3/A64/A83T based SoCs and compatible with both
Tom Rini1eee1172017-02-20 09:38:03 -0500597 External and Internal PHYs.
Amit Singh Tomard194c0e2016-07-06 17:59:44 +0530598
Nobuhiro Iwamatsuf593ecb2017-12-01 16:08:03 +0900599config SH_ETHER
600 bool "Renesas SH Ethernet MAC"
601 select PHYLIB
602 help
603 This driver supports the Ethernet for Renesas SH and ARM SoCs.
604
Grygorii Strashko5693dee2018-10-31 16:21:39 -0500605source "drivers/net/ti/Kconfig"
Adam Ford53705472018-07-20 23:03:57 -0500606
Marek Vasut880287c2020-06-20 17:43:29 +0200607config TULIP
608 bool "DEC Tulip DC2114x Ethernet support"
609 depends on (DM_ETH && DM_PCI) || !DM_ETH
610 help
611 This driver supports DEC DC2114x Fast ethernet chips.
612
Michal Simek07d204f2015-12-09 16:54:42 +0100613config XILINX_AXIEMAC
Michal Simekc28665d2020-08-06 15:18:36 +0200614 depends on DM_ETH
Michal Simek07d204f2015-12-09 16:54:42 +0100615 select PHYLIB
616 select MII
617 bool "Xilinx AXI Ethernet"
618 help
619 This MAC is present in Xilinx Microblaze, Zynq and ZynqMP SoCs.
620
Ashok Reddy Soma6f5480c2021-07-02 04:40:34 -0600621config XILINX_AXIMRMAC
622 depends on DM_ETH && ARCH_VERSAL
623 bool "Xilinx AXI MRMAC"
624 help
625 MRMAC is a high performance, low latency, adaptable Ethernet
626 integrated hard IP. This can be configured up to four ports with MAC
627 rates from 10GE to 100GE. This could be present in some of the Xilinx
628 Versal designs.
629
Michal Simekeaee95a2015-12-11 09:41:49 +0100630config XILINX_EMACLITE
Michal Simekc28665d2020-08-06 15:18:36 +0200631 depends on DM_ETH
Michal Simekeaee95a2015-12-11 09:41:49 +0100632 select PHYLIB
633 select MII
634 bool "Xilinx Ethernetlite"
635 help
636 This MAC is present in Xilinx Microblaze, Zynq and ZynqMP SoCs.
637
Michal Simek3d7285f2015-11-30 14:34:52 +0100638config ZYNQ_GEM
Michal Simekc28665d2020-08-06 15:18:36 +0200639 depends on DM_ETH
Michal Simek27ba0902015-12-11 09:14:31 +0100640 select PHYLIB
Michal Simek3d7285f2015-11-30 14:34:52 +0100641 bool "Xilinx Ethernet GEM"
642 help
Michal Simek7fb1d232015-12-09 16:53:52 +0100643 This MAC is present in Xilinx Zynq and ZynqMP SoCs.
Michal Simek3d7285f2015-11-30 14:34:52 +0100644
Purna Chandra Mandal6b731c92016-01-28 15:30:21 +0530645config PIC32_ETH
646 bool "Microchip PIC32 Ethernet Support"
647 depends on DM_ETH && MACH_PIC32
648 select PHYLIB
649 help
650 This driver implements 10/100 Mbps Ethernet and MAC layer for
651 Microchip PIC32 microcontrollers.
652
Sjoerd Simons54c46f92017-01-11 11:46:11 +0100653config GMAC_ROCKCHIP
654 bool "Rockchip Synopsys Designware Ethernet MAC"
655 depends on DM_ETH && ETH_DESIGNWARE
656 help
657 This driver provides Rockchip SoCs network support based on the
658 Synopsys Designware driver.
659
Marek Vasut17714cb2017-05-13 15:54:28 +0200660config RENESAS_RAVB
661 bool "Renesas Ethernet AVB MAC"
662 depends on DM_ETH && RCAR_GEN3
663 select PHYLIB
664 help
665 This driver implements support for the Ethernet AVB block in
666 Renesas M3 and H3 SoCs.
667
Christophe Leroy56ef30a2017-07-06 10:33:23 +0200668config MPC8XX_FEC
669 bool "Fast Ethernet Controller on MPC8XX"
Christophe Leroyb3510fb2018-03-16 17:20:41 +0100670 depends on MPC8xx
Christophe Leroy56ef30a2017-07-06 10:33:23 +0200671 select MII
672 help
673 This driver implements support for the Fast Ethernet Controller
674 on MPC8XX
675
Kunihiko Hayashi7dcdc222018-05-24 19:24:37 +0900676config SNI_AVE
677 bool "Socionext AVE Ethernet support"
678 depends on DM_ETH && ARCH_UNIPHIER
679 select PHYLIB
680 select SYSCON
681 select REGMAP
682 help
683 This driver implements support for the Socionext AVE Ethernet
684 controller, as found on the Socionext UniPhier family.
685
Jassi Brar29c58b02021-06-04 18:44:38 +0900686config SNI_NETSEC
687 bool "Socionext NETSEC Ethernet support"
688 depends on DM_ETH && SYNQUACER_SPI
689 select PHYLIB
690 help
691 This driver implements support for the Socionext SynQuacer NETSEC
692 ethernet controller, as found on the Socionext SynQuacer family.
693
Horatiu Vulturad2bf652019-01-31 15:30:33 +0100694source "drivers/net/mscc_eswitch/Kconfig"
Gregory CLEMENTeca26c82019-01-17 17:07:13 +0100695
Christophe Leroy56ef30a2017-07-06 10:33:23 +0200696config ETHER_ON_FEC1
697 bool "FEC1"
698 depends on MPC8XX_FEC
699 default y
700
701config FEC1_PHY
702 int "FEC1 PHY"
703 depends on ETHER_ON_FEC1
704 default -1
705 help
706 Define to the hardcoded PHY address which corresponds
707 to the given FEC; i. e.
708 #define CONFIG_FEC1_PHY 4
709 means that the PHY with address 4 is connected to FEC1
710
711 When set to -1, means to probe for first available.
712
713config PHY_NORXERR
714 bool "PHY_NORXERR"
715 depends on ETHER_ON_FEC1
716 default n
717 help
718 The PHY does not have a RXERR line (RMII only).
719 (so program the FEC to ignore it).
720
721config ETHER_ON_FEC2
722 bool "FEC2"
723 depends on MPC8XX_FEC && MPC885
724 default y
725
726config FEC2_PHY
727 int "FEC2 PHY"
728 depends on ETHER_ON_FEC2
729 default -1
730 help
731 Define to the hardcoded PHY address which corresponds
732 to the given FEC; i. e.
733 #define CONFIG_FEC1_PHY 4
734 means that the PHY with address 4 is connected to FEC1
735
736 When set to -1, means to probe for first available.
737
738config FEC2_PHY_NORXERR
739 bool "PHY_NORXERR"
740 depends on ETHER_ON_FEC2
741 default n
742 help
743 The PHY does not have a RXERR line (RMII only).
744 (so program the FEC to ignore it).
745
Ahmed Mansour816bc412017-12-15 16:01:01 -0500746config SYS_DPAA_QBMAN
747 bool "Device tree fixup for QBMan on freescale SOCs"
748 depends on (ARM || PPC) && !SPL_BUILD
749 default y if ARCH_B4860 || \
750 ARCH_B4420 || \
751 ARCH_P1023 || \
752 ARCH_P2041 || \
Ahmed Mansour816bc412017-12-15 16:01:01 -0500753 ARCH_T1024 || \
754 ARCH_T1040 || \
755 ARCH_T1042 || \
756 ARCH_T2080 || \
Ahmed Mansour816bc412017-12-15 16:01:01 -0500757 ARCH_T4240 || \
Ahmed Mansour816bc412017-12-15 16:01:01 -0500758 ARCH_P4080 || \
759 ARCH_P3041 || \
760 ARCH_P5040 || \
Ahmed Mansour816bc412017-12-15 16:01:01 -0500761 ARCH_LS1043A || \
762 ARCH_LS1046A
763 help
764 QBman fixups to allow deep sleep in DPAA 1 SOCs
765
Mario Sixda4fc932018-03-28 14:38:18 +0200766config TSEC_ENET
767 select PHYLIB
768 bool "Enable Three-Speed Ethernet Controller"
769 help
770 This driver implements support for the (Enhanced) Three-Speed
771 Ethernet Controller found on Freescale SoCs.
772
developerc3ac93d2018-12-20 16:12:53 +0800773config MEDIATEK_ETH
774 bool "MediaTek Ethernet GMAC Driver"
775 depends on DM_ETH
776 select PHYLIB
777 select DM_GPIO
778 select DM_RESET
779 help
780 This Driver support MediaTek Ethernet GMAC
781 Say Y to enable support for the MediaTek Ethernet GMAC.
782
Shawn Guo0e1cc912019-03-20 15:32:40 +0800783config HIGMACV300_ETH
784 bool "HiSilicon Gigabit Ethernet Controller"
785 depends on DM_ETH
786 select DM_RESET
787 select PHYLIB
788 help
789 This driver supports HIGMACV300 Ethernet controller found on
790 HiSilicon SoCs.
791
Alex Marginean7a910c12019-07-03 12:11:40 +0300792config FSL_ENETC
793 bool "NXP ENETC Ethernet controller"
Alex Marginean02155392019-07-03 12:11:41 +0300794 depends on DM_PCI && DM_ETH && DM_MDIO
Alex Marginean7a910c12019-07-03 12:11:40 +0300795 help
796 This driver supports the NXP ENETC Ethernet controller found on some
797 of the NXP SoCs.
798
Alex Marginean3234a5e2019-07-16 11:21:17 +0300799config MDIO_MUX_I2CREG
800 bool "MDIO MUX accessed as a register over I2C"
801 depends on DM_MDIO_MUX && DM_I2C
802 help
803 This driver is used for MDIO muxes driven by writing to a register of
804 an I2C chip. The board it was developed for uses a mux controlled by
805 on-board FPGA which in turn is accessed as a chip over I2C.
806
Robert Marko90dfaeb2020-10-08 22:05:11 +0200807config MDIO_IPQ4019
808 bool "Qualcomm IPQ4019 MDIO interface support"
809 depends on DM_MDIO
810 help
811 This driver supports the MDIO interface found in Qualcomm
812 IPQ40xx series Soc-s.
813
Alex Margineande3e55b2019-07-25 12:33:19 +0300814config MVMDIO
815 bool "Marvell MDIO interface support"
816 depends on DM_MDIO
817 help
818 This driver supports the MDIO interface found in the network
819 interface units of the Marvell EBU SoCs (Kirkwood, Orion5x,
820 Dove, Armada 370, Armada XP, Armada 37xx and Armada7K/8K/8KP).
821
822 This driver is used by the MVPP2 and MVNETA drivers.
823
Ioana Ciornei799a4432020-03-18 16:47:36 +0200824config FSL_LS_MDIO
825 bool "NXP Layerscape MDIO interface support"
826 depends on DM_MDIO
827 help
828 This driver supports the MDIO bus found on the Fman 10G Ethernet MACs and
829 on the mEMAC (which supports both Clauses 22 and 45).
830
Neil Armstrongb66cbb32021-02-24 15:02:23 +0100831config MDIO_MUX_MMIOREG
832 bool "MDIO MUX accessed as a MMIO register access"
833 depends on DM_MDIO_MUX
834 help
835 This driver is used for MDIO muxes driven by writing to a register in
836 the MMIO physical memory.
837
Neil Armstrongd0ddbb92021-02-24 17:31:53 +0100838config MDIO_MUX_MESON_G12A
839 bool "MDIO MUX for Amlogic Meson G12A SoCs"
840 depends on DM_MDIO_MUX
841 help
842 This driver is used for the MDIO mux found on the Amlogic G12A & compatible
843 SoCs.
844
Joe Hershberger6ab76992015-03-22 17:09:13 -0500845endif # NETDEVICES