blob: 72822eaec4b8b173a70a0b5562665c5a3640228a [file] [log] [blame]
Alexaf2cbfd2017-02-06 19:17:34 -08001source "drivers/net/phy/Kconfig"
Calvin Johnsona802d1e2018-03-08 15:30:35 +05302source "drivers/net/pfe_eth/Kconfig"
Florinel Iordache1bad9912019-05-15 09:09:21 +00003source "drivers/net/fsl-mc/Kconfig"
Alexaf2cbfd2017-02-06 19:17:34 -08004
Joe Hershberger05c3e682015-03-22 17:09:10 -05005config DM_ETH
6 bool "Enable Driver Model for Ethernet drivers"
7 depends on DM
8 help
9 Enable driver model for Ethernet.
10
Joe Hershbergerc25f4062018-07-02 14:47:48 -050011 The eth_*() interface will be implemented by the UCLASS_ETH class
12 This is currently implemented in net/eth-uclass.c
Joe Hershberger05c3e682015-03-22 17:09:10 -050013 Look in include/net.h for details.
Joe Hershberger3ea143a2015-03-22 17:09:13 -050014
Alex Margineanc3452b52019-06-03 19:10:30 +030015config DM_MDIO
16 bool "Enable Driver Model for MDIO devices"
17 depends on DM_ETH && PHYLIB
18 help
19 Enable driver model for MDIO devices
20
21 Adds UCLASS_MDIO DM class supporting MDIO buses that are probed as
22 stand-alone devices. Useful in particular for systems that support
23 DM_ETH and have a stand-alone MDIO hardware block shared by multiple
24 Ethernet interfaces.
25 This is currently implemented in net/mdio-uclass.c
26 Look in include/miiphy.h for details.
27
Alex Marginean8880edb2019-07-12 10:13:50 +030028config DM_MDIO_MUX
29 bool "Enable Driver Model for MDIO MUX devices"
30 depends on DM_MDIO
31 help
32 Enable driver model for MDIO MUX devices
33
34 Adds UCLASS_MDIO_MUX DM class supporting MDIO MUXes. Useful for
35 systems that support DM_MDIO and integrate one or multiple muxes on
36 the MDIO bus.
37 This is currently implemented in net/mdio-mux-uclass.c
38 Look in include/miiphy.h for details.
39
Claudiu Manoilfc054d52021-01-25 14:23:53 +020040config DM_DSA
41 bool "Enable Driver Model for DSA switches"
42 depends on DM_ETH && DM_MDIO
43 depends on PHY_FIXED
44 help
45 Enable driver model for DSA switches
46
47 Adds UCLASS_DSA class supporting switches that follow the Distributed
48 Switch Architecture (DSA). These switches rely on the presence of a
49 management switch port connected to an Ethernet controller capable of
50 receiving frames from the switch. This host Ethernet controller is
51 called the "master" Ethernet interface in DSA terminology.
52 This is currently implemented in net/dsa-uclass.c, refer to
53 include/net/dsa.h for API details.
54
Alex Margineanec9594a2019-06-03 19:12:28 +030055config MDIO_SANDBOX
56 depends on DM_MDIO && SANDBOX
57 default y
58 bool "Sandbox: Mocked MDIO driver"
59 help
60 This driver implements dummy read/write/reset MDIO functions mimicking
61 a bus with a single PHY.
62
63 This driver is used in for testing in test/dm/mdio.c
64
Alex Margineanc3d9f3f2019-07-12 10:13:53 +030065config MDIO_MUX_SANDBOX
66 depends on DM_MDIO_MUX && MDIO_SANDBOX
67 default y
68 bool "Sandbox: Mocked MDIO-MUX driver"
69 help
70 This driver implements dummy select/deselect ops mimicking a MUX on
71 the MDIO bux. It uses mdio_sandbox driver as parent MDIO.
72
73 This driver is used for testing in test/dm/mdio.c
74
Ye Li5fe419e2020-05-03 22:41:14 +080075config DM_ETH_PHY
76 bool "Enable Driver Model for Ethernet Generic PHY drivers"
77 depends on DM
78 help
79 Enable driver model for Ethernet Generic PHY .
80
Claudiu Manoilff98da02021-03-14 20:14:57 +080081config DSA_SANDBOX
82 depends on DM_DSA && SANDBOX
83 default y
84 bool "Sandbox: Mocked DSA driver"
85 help
86 This driver implements a dummy DSA switch connected to a dummy sandbox
87 Ethernet device used as DSA master, to test DSA class code, including
88 exported DSA API and datapath processing of Ethernet traffic.
89
Joe Hershberger3ea143a2015-03-22 17:09:13 -050090menuconfig NETDEVICES
91 bool "Network device support"
92 depends on NET
Joe Hershbergeref0f2f52015-06-22 16:15:30 -050093 default y if DM_ETH
Joe Hershberger3ea143a2015-03-22 17:09:13 -050094 help
95 You must select Y to enable any network device support
96 Generally if you have any networking support this is a given
97
98 If unsure, say Y
99
100if NETDEVICES
101
Philipp Tomsich449ea2c2017-03-26 18:50:23 +0200102config PHY_GIGE
103 bool "Enable GbE PHY status parsing and configuration"
104 help
105 Enables support for parsing the status output and for
106 configuring GbE PHYs (affects the inner workings of some
107 commands and miiphyutil.c).
108
Marek Vasute40095f2016-05-24 23:29:09 +0200109config AG7XXX
110 bool "Atheros AG7xxx Ethernet MAC support"
111 depends on DM_ETH && ARCH_ATH79
112 select PHYLIB
113 help
114 This driver supports the Atheros AG7xxx Ethernet MAC. This MAC is
115 present in the Atheros AR7xxx, AR9xxx and QCA9xxx MIPS chips.
116
117
Thomas Chou96fa1e42015-10-22 15:29:11 +0800118config ALTERA_TSE
119 bool "Altera Triple-Speed Ethernet MAC support"
120 depends on DM_ETH
121 select PHYLIB
122 help
123 This driver supports the Altera Triple-Speed (TSE) Ethernet MAC.
124 Please find details on the "Triple-Speed Ethernet MegaCore Function
125 Resource Center" of Altera.
126
Suji Velupillaic89782d2017-07-10 14:05:41 -0700127config BCM_SF2_ETH
128 bool "Broadcom SF2 (Starfighter2) Ethernet support"
129 select PHYLIB
130 help
131 This is an abstract framework which provides a generic interface
132 to MAC and DMA management for multiple Broadcom SoCs such as
133 Cygnus, NSP and bcm28155_ap platforms.
134
135config BCM_SF2_ETH_DEFAULT_PORT
136 int "Broadcom SF2 (Starfighter2) Ethernet default port number"
137 depends on BCM_SF2_ETH
138 default 0
139 help
140 Default port number for the Starfighter2 ethernet driver.
141
142config BCM_SF2_ETH_GMAC
143 bool "Broadcom SF2 (Starfighter2) GMAC Ethernet support"
144 depends on BCM_SF2_ETH
145 help
146 This flag enables the ethernet support for Broadcom platforms with
147 GMAC such as Cygnus. This driver is based on the framework provided
148 by the BCM_SF2_ETH driver.
149 Say Y to any bcmcygnus based platforms.
150
Álvaro Fernández Rojas55e55fe2018-12-01 19:00:24 +0100151config BCM6348_ETH
152 bool "BCM6348 EMAC support"
153 depends on DM_ETH && ARCH_BMIPS
154 select DMA
155 select DMA_CHANNELS
156 select MII
157 select PHYLIB
158 help
159 This driver supports the BCM6348 Ethernet MAC.
160
Álvaro Fernández Rojas96229722018-12-01 19:00:32 +0100161config BCM6368_ETH
162 bool "BCM6368 EMAC support"
163 depends on DM_ETH && ARCH_BMIPS
164 select DMA
165 select MII
166 help
167 This driver supports the BCM6368 Ethernet MAC.
168
Amit Singh Tomard53e3fa2020-01-27 01:14:42 +0000169config BCMGENET
170 bool "BCMGENET V5 support"
171 depends on DM_ETH
172 select PHYLIB
173 help
174 This driver supports the BCMGENET Ethernet MAC.
175
Aaron Tsengfebe13b2021-01-14 13:34:11 -0800176config CORTINA_NI_ENET
177 bool "Cortina-Access Ethernet driver"
178 depends on DM_ETH && CORTINA_PLATFORM
179 help
180 This driver supports the Cortina-Access Ethernet MAC for
181 all supported CAxxxx SoCs.
182
Stephen Warrenba4dfef2016-10-21 14:46:47 -0600183config DWC_ETH_QOS
184 bool "Synopsys DWC Ethernet QOS device support"
185 depends on DM_ETH
186 select PHYLIB
187 help
188 This driver supports the Synopsys Designware Ethernet QOS (Quality
189 Of Service) IP block. The IP supports many options for bus type,
Patrick Delaunaya08f2f72020-06-08 11:27:19 +0200190 clocking/reset structure, and feature list.
191
192config DWC_ETH_QOS_IMX
193 bool "Synopsys DWC Ethernet QOS device support for IMX"
194 depends on DWC_ETH_QOS
195 help
196 The Synopsys Designware Ethernet QOS IP block with the specific
197 configuration used in IMX soc.
198
199config DWC_ETH_QOS_STM32
200 bool "Synopsys DWC Ethernet QOS device support for STM32"
201 depends on DWC_ETH_QOS
202 default y if ARCH_STM32MP
203 help
204 The Synopsys Designware Ethernet QOS IP block with the specific
205 configuration used in STM32MP soc.
206
207config DWC_ETH_QOS_TEGRA186
208 bool "Synopsys DWC Ethernet QOS device support for TEGRA186"
209 depends on DWC_ETH_QOS
210 default y if TEGRA186
211 help
212 The Synopsys Designware Ethernet QOS IP block with specific
213 configuration used in NVIDIA's Tegra186 chip.
Stephen Warrenba4dfef2016-10-21 14:46:47 -0600214
Simon Glassc294ac52015-08-19 09:33:41 -0600215config E1000
216 bool "Intel PRO/1000 Gigabit Ethernet support"
Madalin Bucur94472222020-04-29 08:26:17 +0300217 depends on (DM_ETH && DM_PCI) || !DM_ETH
Simon Glassc294ac52015-08-19 09:33:41 -0600218 help
219 This driver supports Intel(R) PRO/1000 gigabit ethernet family of
220 adapters. For more information on how to identify your adapter, go
221 to the Adapter & Driver ID Guide at:
222
223 <http://support.intel.com/support/network/adapter/pro100/21397.htm>
224
225config E1000_SPI_GENERIC
226 bool "Allow access to the Intel 8257x SPI bus"
227 depends on E1000
228 help
229 Allow generic access to the SPI bus on the Intel 8257x, for
230 example with the "sspi" command.
231
232config E1000_SPI
233 bool "Enable SPI bus utility code"
234 depends on E1000
235 help
236 Utility code for direct access to the SPI bus on Intel 8257x.
237 This does not do anything useful unless you set at least one
238 of CONFIG_CMD_E1000 or CONFIG_E1000_SPI_GENERIC.
239
240config CMD_E1000
241 bool "Enable the e1000 command"
242 depends on E1000
243 help
244 This enables the 'e1000' management command for E1000 devices. When
245 used on devices with SPI support you can reprogram the EEPROM from
246 U-Boot.
247
Marek Vasut6463b732020-05-23 18:07:53 +0200248config EEPRO100
249 bool "Intel PRO/100 82557/82559/82559ER Fast Ethernet support"
250 help
251 This driver supports Intel(R) PRO/100 82557/82559/82559ER fast
252 ethernet family of adapters.
253
Joe Hershberger3ea143a2015-03-22 17:09:13 -0500254config ETH_SANDBOX
255 depends on DM_ETH && SANDBOX
256 default y
257 bool "Sandbox: Mocked Ethernet driver"
258 help
259 This driver simply responds with fake ARP replies and ping
260 replies that are used to verify network stack functionality
261
262 This driver is particularly useful in the test/dm/eth.c tests
263
Joe Hershbergera346ca72015-03-22 17:09:21 -0500264config ETH_SANDBOX_RAW
265 depends on DM_ETH && SANDBOX
266 default y
267 bool "Sandbox: Bridge to Linux Raw Sockets"
268 help
269 This driver is a bridge from the bottom of the network stack
270 in U-Boot to the RAW AF_PACKET API in Linux. This allows real
271 network traffic to be tested from within sandbox. See
Keerthy5917d0b2019-07-29 13:52:04 +0530272 doc/arch/index.rst for more details.
Joe Hershbergera346ca72015-03-22 17:09:21 -0500273
Simon Glassef48f6d2015-04-05 16:07:34 -0600274config ETH_DESIGNWARE
275 bool "Synopsys Designware Ethernet MAC"
Thomas Chou25af71c2015-12-07 20:53:29 +0800276 select PHYLIB
Simon Goldschmidt6fb1eb12019-01-13 19:58:41 +0100277 imply ETH_DESIGNWARE_SOCFPGA if ARCH_SOCFPGA
Simon Glassef48f6d2015-04-05 16:07:34 -0600278 help
279 This MAC is present in SoCs from various vendors. It supports
280 100Mbit and 1 Gbit operation. You must enable CONFIG_PHYLIB to
281 provide the PHY (physical media interface).
282
Neil Armstrong798424e2021-02-24 20:33:56 +0100283config ETH_DESIGNWARE_MESON8B
284 bool "Amlogic Meson8b and later glue driver for Synopsys Designware Ethernet MAC"
285 depends on DM_ETH
286 select ETH_DESIGNWARE
287 help
288 This provides glue layer to use Synopsys Designware Ethernet MAC
289 present on the Amlogic Meson8b, GX, AXG & G12A SoCs.
290
Marek Vasut215a0652018-08-13 19:32:14 +0200291config ETH_DESIGNWARE_SOCFPGA
Simon Goldschmidt4f1267c2019-01-13 19:58:40 +0100292 select REGMAP
293 select SYSCON
Marek Vasut215a0652018-08-13 19:32:14 +0200294 bool "Altera SoCFPGA extras for Synopsys Designware Ethernet MAC"
295 depends on DM_ETH && ETH_DESIGNWARE
296 help
297 The Altera SoCFPGA requires additional configuration of the
298 Altera system manager to correctly interface with the PHY.
299 This code handles those SoC specifics.
300
Amit Singh Tomar3c5c4ee2020-05-09 19:55:12 +0530301config ETH_DESIGNWARE_S700
302 bool "Actins S700 glue driver for Synopsys Designware Ethernet MAC"
303 depends on DM_ETH && ETH_DESIGNWARE
304 help
305 This provides glue layer to use Synopsys Designware Ethernet MAC
306 present on Actions S700 SoC.
307
Max Filippovf0727122016-08-05 18:26:15 +0300308config ETHOC
309 bool "OpenCores 10/100 Mbps Ethernet MAC"
310 help
311 This MAC is present in OpenRISC and Xtensa XTFPGA boards.
312
Peng Fanfbada482018-03-28 20:54:14 +0800313config FEC_MXC_SHARE_MDIO
314 bool "Share the MDIO bus for FEC controller"
315 depends on FEC_MXC
316
317config FEC_MXC_MDIO_BASE
318 hex "MDIO base address for the FEC controller"
319 depends on FEC_MXC_SHARE_MDIO
320 help
321 This specifies the MDIO registers base address. It is used when
322 two FEC controllers share MDIO bus.
323
Jagan Teki97d29ca2016-10-08 18:00:12 +0530324config FEC_MXC
325 bool "FEC Ethernet controller"
Peng Fan81dc2ac2019-10-22 03:29:58 +0000326 depends on MX28 || MX5 || MX6 || MX7 || IMX8 || IMX8M || VF610
Jagan Teki97d29ca2016-10-08 18:00:12 +0530327 help
328 This driver supports the 10/100 Fast Ethernet controller for
329 NXP i.MX processors.
330
Tom Rinicc1e98b2019-05-12 07:59:12 -0400331config FMAN_ENET
332 bool "Freescale FMan ethernet support"
333 depends on ARM || PPC
334 help
335 This driver support the Freescale FMan Ethernet controller
336
Tom Rini8dc1b172017-05-26 11:18:53 -0400337config FTMAC100
338 bool "Ftmac100 Ethernet Support"
339 help
340 This MAC is present in Andestech SoCs.
341
Cédric Le Goaterf95de0b2018-10-29 07:06:31 +0100342config FTGMAC100
343 bool "Ftgmac100 Ethernet Support"
344 depends on DM_ETH
345 select PHYLIB
346 help
347 This driver supports the Faraday's FTGMAC100 Gigabit SoC
348 Ethernet controller that can be found on Aspeed SoCs (which
349 include NCSI).
350
351 It is fully compliant with IEEE 802.3 specification for
352 10/100 Mbps Ethernet and IEEE 802.3z specification for 1000
353 Mbps Ethernet and includes Reduced Media Independent
354 Interface (RMII) and Reduced Gigabit Media Independent
355 Interface (RGMII) interfaces. It adopts an AHB bus interface
356 and integrates a link list DMA engine with direct M-Bus
357 accesses for transmitting and receiving packets. It has
358 independent TX/RX fifos, supports half and full duplex (1000
359 Mbps mode only supports full duplex), flow control for full
360 duplex and backpressure for half duplex.
361
362 The FTGMAC100 also implements IP, TCP, UDP checksum offloads
363 and supports IEEE 802.1Q VLAN tag insertion and removal. It
364 offers high-priority transmit queue for QoS and CoS
365 applications.
366
367
Angelo Durgehello080bcc52019-11-15 23:54:17 +0100368config MCFFEC
369 bool "ColdFire Ethernet Support"
370 depends on DM_ETH
371 select PHYLIB
372 help
373 This driver supports the network interface units in the
374 ColdFire family.
375
376config FSLDMAFEC
377 bool "ColdFire DMA 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
Marek Vasutdf4c4832020-03-25 19:08:59 +0100384config KS8851_MLL
385 bool "Microchip KS8851-MLL controller driver"
386 help
387 The Microchip KS8851 parallel bus external ethernet interface chip.
388
389if KS8851_MLL
390if !DM_ETH
391config KS8851_MLL_BASEADDR
392 hex "Microchip KS8851-MLL Base Address"
393 help
394 Define this to hold the physical address of the device (I/O space)
395endif #DM_ETH
396endif #KS8851_MLL
397
Chris Packhamed52ea52018-05-03 23:00:35 +1200398config MVGBE
399 bool "Marvell Orion5x/Kirkwood network interface support"
Trevor Woernerbb0fb4c2020-05-06 08:02:40 -0400400 depends on ARCH_KIRKWOOD || ARCH_ORION5X
Chris Packhamfb731072018-07-09 21:34:00 +1200401 select PHYLIB if DM_ETH
Chris Packhamed52ea52018-05-03 23:00:35 +1200402 help
403 This driver supports the network interface units in the
404 Marvell Orion5x and Kirkwood SoCs
405
Chris Packham7654f622017-08-21 20:17:03 +1200406config MVNETA
Miquel Raynale7ab2cc2017-12-28 15:43:09 +0100407 bool "Marvell Armada XP/385/3700 network interface support"
408 depends on ARMADA_XP || ARMADA_38X || ARMADA_3700
Chris Packham7654f622017-08-21 20:17:03 +1200409 select PHYLIB
410 help
411 This driver supports the network interface units in the
Miquel Raynale7ab2cc2017-12-28 15:43:09 +0100412 Marvell ARMADA XP, ARMADA 38X and ARMADA 3700 SoCs
Chris Packham7654f622017-08-21 20:17:03 +1200413
Stefan Roese99d4c6d2016-02-10 07:22:10 +0100414config MVPP2
Stefan Roesee7935c42017-02-15 11:42:59 +0100415 bool "Marvell Armada 375/7K/8K network interface support"
416 depends on ARMADA_375 || ARMADA_8K
Stefan Roese99d4c6d2016-02-10 07:22:10 +0100417 select PHYLIB
Nevo Hed17caaf82019-08-15 18:08:45 -0400418 select MVMDIO
419 select DM_MDIO
Stefan Roese99d4c6d2016-02-10 07:22:10 +0100420 help
421 This driver supports the network interface units in the
Stefan Roesee7935c42017-02-15 11:42:59 +0100422 Marvell ARMADA 375, 7K and 8K SoCs.
Stefan Roese99d4c6d2016-02-10 07:22:10 +0100423
Wenyou Yangebcb40a2016-11-02 10:06:55 +0800424config MACB
425 bool "Cadence MACB/GEM Ethernet Interface"
426 depends on DM_ETH
427 select PHYLIB
428 help
429 The Cadence MACB ethernet interface is found on many Atmel
430 AT91 and SAMA5 parts. This driver also supports the Cadence
431 GEM (Gigabit Ethernet MAC) found in some ARM SoC devices.
432 Say Y to include support for the MACB/GEM chip.
433
Wilson Lee4bf56912017-08-22 20:25:07 -0700434config MACB_ZYNQ
435 bool "Cadence MACB/GEM Ethernet Interface for Xilinx Zynq"
436 depends on MACB
437 help
438 The Cadence MACB ethernet interface was used on Zynq platform.
439 Say Y to enable support for the MACB/GEM in Zynq chip.
440
Weijie Gao17ade702020-11-12 16:36:53 +0800441config MT7620_ETH
442 bool "MediaTek MT7620 Ethernet Interface"
443 depends on SOC_MT7620
444 select PHYLIB
445 select DM_RESET
446 select DM_GPIO
447 select CLK
448 help
449 The MediaTek MT7620 ethernet interface is used on MT7620 based
450 boards. It has a built-in switch with two configurable ports which
451 can connect to external PHY/MACs.
452
Stefan Roesec895ef42018-10-26 14:53:27 +0200453config MT7628_ETH
454 bool "MediaTek MT7628 Ethernet Interface"
Weijie Gao16b94902019-04-30 11:13:58 +0800455 depends on SOC_MT7628
Weijie Gaof0793212019-09-25 17:45:33 +0800456 select PHYLIB
Stefan Roesec895ef42018-10-26 14:53:27 +0200457 help
458 The MediaTek MT7628 ethernet interface is used on MT7628 and
459 MT7688 based boards.
460
Suneel Garapati0008e9a2020-08-26 14:37:33 +0200461config NET_OCTEONTX
462 bool "OcteonTX Ethernet support"
463 depends on ARCH_OCTEONTX
464 depends on PCI_SRIOV
465 help
466 You must select Y to enable network device support for
467 OcteonTX SoCs. If unsure, say n
Suneel Garapati4684a7a2020-08-26 14:37:42 +0200468
469config NET_OCTEONTX2
470 bool "OcteonTX2 Ethernet support"
471 depends on ARCH_OCTEONTX2
472 select OCTEONTX2_CGX_INTF
473 help
474 You must select Y to enable network device support for
475 OcteonTX2 SoCs. If unsure, say n
476
Suneel Garapati0008e9a2020-08-26 14:37:33 +0200477config OCTEONTX_SMI
478 bool "OcteonTX SMI Device support"
479 depends on ARCH_OCTEONTX || ARCH_OCTEONTX2
480 help
481 You must select Y to enable SMI controller support for
482 OcteonTX or OcteonTX2 SoCs. If unsure, say n
483
Suneel Garapati4684a7a2020-08-26 14:37:42 +0200484config OCTEONTX2_CGX_INTF
485 bool "OcteonTX2 CGX ATF interface support"
486 depends on ARCH_OCTEONTX2
487 default y if ARCH_OCTEONTX2
488 help
489 You must select Y to enable CGX ATF interface support for
490 OcteonTX2 SoCs. If unsure, say n
491
Bin Mengb68fe152015-08-27 22:25:58 -0700492config PCH_GBE
493 bool "Intel Platform Controller Hub EG20T GMAC driver"
494 depends on DM_ETH && DM_PCI
495 select PHYLIB
496 help
497 This MAC is present in Intel Platform Controller Hub EG20T. It
498 supports 10/100/1000 Mbps operation.
499
Mylène Josserand751b0be2017-04-02 12:59:08 +0200500config RGMII
501 bool "Enable RGMII"
502 help
503 Enable the support of the Reduced Gigabit Media-Independent
504 Interface (RGMII).
505
Adam Fordd7869b22018-07-20 23:03:57 -0500506config MII
507 bool "Enable MII"
508 help
509 Enable support of the Media-Independent Interface (MII)
510
Marek Vasutd789a822020-05-17 18:14:17 +0200511config PCNET
512 bool "AMD PCnet series Ethernet controller driver"
513 help
514 This driver supports AMD PCnet series fast ethernet family of
515 PCI chipsets/adapters.
516
Heiko Schocher6e31c622020-02-06 09:48:16 +0100517source "drivers/net/qe/Kconfig"
518
Bin Meng86e9dc82016-03-21 06:47:41 -0700519config RTL8139
520 bool "Realtek 8139 series Ethernet controller driver"
521 help
522 This driver supports Realtek 8139 series fast ethernet family of
523 PCI chipsets/adapters.
524
Bin Meng0764f242016-03-21 06:47:42 -0700525config RTL8169
526 bool "Realtek 8169 series Ethernet controller driver"
527 help
528 This driver supports Realtek 8169 series gigabit ethernet family of
529 PCI/PCIe chipsets/adapters.
530
Adam Ford8daec2d2017-09-05 15:20:44 -0500531config SMC911X
532 bool "SMSC LAN911x and LAN921x controller driver"
533
534if SMC911X
535
Marek Vasut81486932020-03-15 17:39:01 +0100536if !DM_ETH
Adam Ford8daec2d2017-09-05 15:20:44 -0500537config SMC911X_BASE
538 hex "SMC911X Base Address"
539 help
540 Define this to hold the physical address
541 of the device (I/O space)
Marek Vasut81486932020-03-15 17:39:01 +0100542endif #DM_ETH
Adam Ford8daec2d2017-09-05 15:20:44 -0500543
544choice
545 prompt "SMC911X bus width"
546 default SMC911X_16_BIT
547
548config SMC911X_32_BIT
549 bool "Enable 32-bit interface"
550
551config SMC911X_16_BIT
552 bool "Enable 16-bit interface"
553 help
554 Define this if data bus is 16 bits. If your processor
555 automatically converts one 32 bit word to two 16 bit
556 words you may also try CONFIG_SMC911X_32_BIT.
557
558endchoice
559endif #SMC911X
560
Mylène Josserand4d43d062017-04-02 12:59:03 +0200561config SUN7I_GMAC
562 bool "Enable Allwinner GMAC Ethernet support"
563 help
564 Enable the support for Sun7i GMAC Ethernet controller
565
Stefan Mavrodievaba39242017-11-03 08:56:51 +0200566config SUN7I_GMAC_FORCE_TXERR
567 bool "Force PA17 as gmac function"
568 depends on SUN7I_GMAC
569 help
570 Some ethernet phys needs TXERR control. Since the GMAC
571 doesn't have such signal, setting PA17 as GMAC function
572 makes the pin output low, which enables data transmission.
573
Mylène Josserandabc3e4d2017-04-02 12:59:07 +0200574config SUN4I_EMAC
575 bool "Allwinner Sun4i Ethernet MAC support"
576 depends on DM_ETH
Artturi Alm6270a3f2017-11-08 05:08:58 +0200577 select PHYLIB
Mylène Josserandabc3e4d2017-04-02 12:59:07 +0200578 help
579 This driver supports the Allwinner based SUN4I Ethernet MAC.
580
Amit Singh Tomara29710c2016-07-06 17:59:44 +0530581config SUN8I_EMAC
582 bool "Allwinner Sun8i Ethernet MAC support"
583 depends on DM_ETH
584 select PHYLIB
Philipp Tomsich449ea2c2017-03-26 18:50:23 +0200585 select PHY_GIGE
Amit Singh Tomara29710c2016-07-06 17:59:44 +0530586 help
587 This driver supports the Allwinner based SUN8I/SUN50I Ethernet MAC.
588 It can be found in H3/A64/A83T based SoCs and compatible with both
Tom Rini7131d2d2017-02-20 09:38:03 -0500589 External and Internal PHYs.
Amit Singh Tomara29710c2016-07-06 17:59:44 +0530590
Nobuhiro Iwamatsudcd18ea2017-12-01 16:08:03 +0900591config SH_ETHER
592 bool "Renesas SH Ethernet MAC"
593 select PHYLIB
594 help
595 This driver supports the Ethernet for Renesas SH and ARM SoCs.
596
Grygorii Strashkoffad5fa2018-10-31 16:21:39 -0500597source "drivers/net/ti/Kconfig"
Adam Fordd7869b22018-07-20 23:03:57 -0500598
Marek Vasuta410f132020-06-20 17:43:29 +0200599config TULIP
600 bool "DEC Tulip DC2114x Ethernet support"
601 depends on (DM_ETH && DM_PCI) || !DM_ETH
602 help
603 This driver supports DEC DC2114x Fast ethernet chips.
604
Michal Simek338a5f22015-12-09 16:54:42 +0100605config XILINX_AXIEMAC
Michal Simek664e16c2020-08-06 15:18:36 +0200606 depends on DM_ETH
Michal Simek338a5f22015-12-09 16:54:42 +0100607 select PHYLIB
608 select MII
609 bool "Xilinx AXI Ethernet"
610 help
611 This MAC is present in Xilinx Microblaze, Zynq and ZynqMP SoCs.
612
Michal Simek3229c862015-12-11 09:41:49 +0100613config XILINX_EMACLITE
Michal Simek664e16c2020-08-06 15:18:36 +0200614 depends on DM_ETH
Michal Simek3229c862015-12-11 09:41:49 +0100615 select PHYLIB
616 select MII
617 bool "Xilinx Ethernetlite"
618 help
619 This MAC is present in Xilinx Microblaze, Zynq and ZynqMP SoCs.
620
Michal Simek596e5782015-11-30 14:34:52 +0100621config ZYNQ_GEM
Michal Simek664e16c2020-08-06 15:18:36 +0200622 depends on DM_ETH
Michal Simek7bccc752015-12-11 09:14:31 +0100623 select PHYLIB
Michal Simek596e5782015-11-30 14:34:52 +0100624 bool "Xilinx Ethernet GEM"
625 help
Michal Simekc9428102015-12-09 16:53:52 +0100626 This MAC is present in Xilinx Zynq and ZynqMP SoCs.
Michal Simek596e5782015-11-30 14:34:52 +0100627
Purna Chandra Mandal23e75782016-01-28 15:30:21 +0530628config PIC32_ETH
629 bool "Microchip PIC32 Ethernet Support"
630 depends on DM_ETH && MACH_PIC32
631 select PHYLIB
632 help
633 This driver implements 10/100 Mbps Ethernet and MAC layer for
634 Microchip PIC32 microcontrollers.
635
Sjoerd Simons0125bcf2017-01-11 11:46:11 +0100636config GMAC_ROCKCHIP
637 bool "Rockchip Synopsys Designware Ethernet MAC"
638 depends on DM_ETH && ETH_DESIGNWARE
639 help
640 This driver provides Rockchip SoCs network support based on the
641 Synopsys Designware driver.
642
Marek Vasut8ae51b62017-05-13 15:54:28 +0200643config RENESAS_RAVB
644 bool "Renesas Ethernet AVB MAC"
645 depends on DM_ETH && RCAR_GEN3
646 select PHYLIB
647 help
648 This driver implements support for the Ethernet AVB block in
649 Renesas M3 and H3 SoCs.
650
Christophe Leroyfad51ac2017-07-06 10:33:23 +0200651config MPC8XX_FEC
652 bool "Fast Ethernet Controller on MPC8XX"
Christophe Leroyee1e6002018-03-16 17:20:41 +0100653 depends on MPC8xx
Christophe Leroyfad51ac2017-07-06 10:33:23 +0200654 select MII
655 help
656 This driver implements support for the Fast Ethernet Controller
657 on MPC8XX
658
Kunihiko Hayashia8927792018-05-24 19:24:37 +0900659config SNI_AVE
660 bool "Socionext AVE Ethernet support"
661 depends on DM_ETH && ARCH_UNIPHIER
662 select PHYLIB
663 select SYSCON
664 select REGMAP
665 help
666 This driver implements support for the Socionext AVE Ethernet
667 controller, as found on the Socionext UniPhier family.
668
Horatiu Vultur4c661572019-01-31 15:30:33 +0100669source "drivers/net/mscc_eswitch/Kconfig"
Gregory CLEMENTc8546162019-01-17 17:07:13 +0100670
Christophe Leroyfad51ac2017-07-06 10:33:23 +0200671config ETHER_ON_FEC1
672 bool "FEC1"
673 depends on MPC8XX_FEC
674 default y
675
676config FEC1_PHY
677 int "FEC1 PHY"
678 depends on ETHER_ON_FEC1
679 default -1
680 help
681 Define to the hardcoded PHY address which corresponds
682 to the given FEC; i. e.
683 #define CONFIG_FEC1_PHY 4
684 means that the PHY with address 4 is connected to FEC1
685
686 When set to -1, means to probe for first available.
687
688config PHY_NORXERR
689 bool "PHY_NORXERR"
690 depends on ETHER_ON_FEC1
691 default n
692 help
693 The PHY does not have a RXERR line (RMII only).
694 (so program the FEC to ignore it).
695
696config ETHER_ON_FEC2
697 bool "FEC2"
698 depends on MPC8XX_FEC && MPC885
699 default y
700
701config FEC2_PHY
702 int "FEC2 PHY"
703 depends on ETHER_ON_FEC2
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 FEC2_PHY_NORXERR
714 bool "PHY_NORXERR"
715 depends on ETHER_ON_FEC2
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
Ahmed Mansour541d5762017-12-15 16:01:01 -0500721config SYS_DPAA_QBMAN
722 bool "Device tree fixup for QBMan on freescale SOCs"
723 depends on (ARM || PPC) && !SPL_BUILD
724 default y if ARCH_B4860 || \
725 ARCH_B4420 || \
726 ARCH_P1023 || \
727 ARCH_P2041 || \
728 ARCH_T1023 || \
729 ARCH_T1024 || \
730 ARCH_T1040 || \
731 ARCH_T1042 || \
732 ARCH_T2080 || \
Ahmed Mansour541d5762017-12-15 16:01:01 -0500733 ARCH_T4240 || \
734 ARCH_T4160 || \
735 ARCH_P4080 || \
736 ARCH_P3041 || \
737 ARCH_P5040 || \
Ahmed Mansour541d5762017-12-15 16:01:01 -0500738 ARCH_LS1043A || \
739 ARCH_LS1046A
740 help
741 QBman fixups to allow deep sleep in DPAA 1 SOCs
742
Mario Six17151052018-03-28 14:38:18 +0200743config TSEC_ENET
744 select PHYLIB
745 bool "Enable Three-Speed Ethernet Controller"
746 help
747 This driver implements support for the (Enhanced) Three-Speed
748 Ethernet Controller found on Freescale SoCs.
749
Weijie Gao23f17162018-12-20 16:12:53 +0800750config MEDIATEK_ETH
751 bool "MediaTek Ethernet GMAC Driver"
752 depends on DM_ETH
753 select PHYLIB
754 select DM_GPIO
755 select DM_RESET
756 help
757 This Driver support MediaTek Ethernet GMAC
758 Say Y to enable support for the MediaTek Ethernet GMAC.
759
Shawn Guo1d5b5d22019-03-20 15:32:40 +0800760config HIGMACV300_ETH
761 bool "HiSilicon Gigabit Ethernet Controller"
762 depends on DM_ETH
763 select DM_RESET
764 select PHYLIB
765 help
766 This driver supports HIGMACV300 Ethernet controller found on
767 HiSilicon SoCs.
768
Alex Marginean120b5ef2019-07-03 12:11:40 +0300769config FSL_ENETC
770 bool "NXP ENETC Ethernet controller"
Alex Marginean1d995342019-07-03 12:11:41 +0300771 depends on DM_PCI && DM_ETH && DM_MDIO
Alex Marginean120b5ef2019-07-03 12:11:40 +0300772 help
773 This driver supports the NXP ENETC Ethernet controller found on some
774 of the NXP SoCs.
775
Alex Marginean74dd3832019-07-16 11:21:17 +0300776config MDIO_MUX_I2CREG
777 bool "MDIO MUX accessed as a register over I2C"
778 depends on DM_MDIO_MUX && DM_I2C
779 help
780 This driver is used for MDIO muxes driven by writing to a register of
781 an I2C chip. The board it was developed for uses a mux controlled by
782 on-board FPGA which in turn is accessed as a chip over I2C.
783
Robert Marko975151d2020-10-08 22:05:11 +0200784config MDIO_IPQ4019
785 bool "Qualcomm IPQ4019 MDIO interface support"
786 depends on DM_MDIO
787 help
788 This driver supports the MDIO interface found in Qualcomm
789 IPQ40xx series Soc-s.
790
Alex Marginean8bd37ce2019-07-25 12:33:19 +0300791config MVMDIO
792 bool "Marvell MDIO interface support"
793 depends on DM_MDIO
794 help
795 This driver supports the MDIO interface found in the network
796 interface units of the Marvell EBU SoCs (Kirkwood, Orion5x,
797 Dove, Armada 370, Armada XP, Armada 37xx and Armada7K/8K/8KP).
798
799 This driver is used by the MVPP2 and MVNETA drivers.
800
Ioana Ciornei52e16ec2020-03-18 16:47:36 +0200801config FSL_LS_MDIO
802 bool "NXP Layerscape MDIO interface support"
803 depends on DM_MDIO
804 help
805 This driver supports the MDIO bus found on the Fman 10G Ethernet MACs and
806 on the mEMAC (which supports both Clauses 22 and 45).
807
Neil Armstrong6c7bc9f2021-02-24 15:02:23 +0100808config MDIO_MUX_MMIOREG
809 bool "MDIO MUX accessed as a MMIO register access"
810 depends on DM_MDIO_MUX
811 help
812 This driver is used for MDIO muxes driven by writing to a register in
813 the MMIO physical memory.
814
Neil Armstrong8120ce12021-02-24 17:31:53 +0100815config MDIO_MUX_MESON_G12A
816 bool "MDIO MUX for Amlogic Meson G12A SoCs"
817 depends on DM_MDIO_MUX
818 help
819 This driver is used for the MDIO mux found on the Amlogic G12A & compatible
820 SoCs.
821
Joe Hershberger3ea143a2015-03-22 17:09:13 -0500822endif # NETDEVICES