"Das U-Boot" Source Tree
1source "drivers/net/phy/Kconfig"
2source "drivers/net/pfe_eth/Kconfig"
3source "drivers/net/fsl-mc/Kconfig"
4
5config ETH
6 def_bool y
7
8config DM_ETH
9 bool
10 depends on DM
11 help
12 Enable driver model for Ethernet.
13
14 The eth_*() interface will be implemented by the UCLASS_ETH class
15 This is currently implemented in net/eth-uclass.c
16 Look in include/net.h for details.
17
18config SPL_DM_ETH
19 depends on SPL_NET
20 def_bool y
21
22config DM_MDIO
23 bool "Enable Driver Model for MDIO devices"
24 depends on PHYLIB
25 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
35config 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
47config DM_DSA
48 bool "Enable Driver Model for DSA switches"
49 depends on DM_MDIO
50 depends on PHY_FIXED
51 depends on !NET_LWIP
52 help
53 Enable driver model for DSA switches
54
55 Adds UCLASS_DSA class supporting switches that follow the Distributed
56 Switch Architecture (DSA). These switches rely on the presence of a
57 management switch port connected to an Ethernet controller capable of
58 receiving frames from the switch. This host Ethernet controller is
59 called the "master" Ethernet interface in DSA terminology.
60 This is currently implemented in net/dsa-uclass.c, refer to
61 include/net/dsa.h for API details.
62
63config MDIO_SANDBOX
64 depends on DM_MDIO && SANDBOX
65 default y
66 bool "Sandbox: Mocked MDIO driver"
67 help
68 This driver implements dummy read/write/reset MDIO functions mimicking
69 a bus with a single PHY.
70
71 This driver is used in for testing in test/dm/mdio.c
72
73config MDIO_MUX_SANDBOX
74 depends on DM_MDIO_MUX && MDIO_SANDBOX
75 default y
76 bool "Sandbox: Mocked MDIO-MUX driver"
77 help
78 This driver implements dummy select/deselect ops mimicking a MUX on
79 the MDIO bux. It uses mdio_sandbox driver as parent MDIO.
80
81 This driver is used for testing in test/dm/mdio.c
82
83config DM_ETH_PHY
84 bool "Enable Driver Model for Ethernet Generic PHY drivers"
85 depends on DM
86 help
87 Enable driver model for Ethernet Generic PHY .
88
89config DSA_SANDBOX
90 depends on DM_DSA && SANDBOX
91 default y
92 bool "Sandbox: Mocked DSA driver"
93 help
94 This driver implements a dummy DSA switch connected to a dummy sandbox
95 Ethernet device used as DSA master, to test DSA class code, including
96 exported DSA API and datapath processing of Ethernet traffic.
97
98menuconfig NETDEVICES
99 bool "Network device support"
100 depends on NET || NET_LWIP
101 select DM_ETH
102 help
103 You must select Y to enable any network device support
104 Generally if you have any networking support this is a given
105
106 If unsure, say Y
107
108if NETDEVICES
109
110config PHY_GIGE
111 bool "Enable GbE PHY status parsing and configuration"
112 help
113 Enables support for parsing the status output and for
114 configuring GbE PHYs (affects the inner workings of some
115 commands and miiphyutil.c).
116
117config AG7XXX
118 bool "Atheros AG7xxx Ethernet MAC support"
119 depends on ARCH_ATH79
120 select PHYLIB
121 help
122 This driver supports the Atheros AG7xxx Ethernet MAC. This MAC is
123 present in the Atheros AR7xxx, AR9xxx and QCA9xxx MIPS chips.
124
125
126config ALTERA_TSE
127 bool "Altera Triple-Speed Ethernet MAC support"
128 select PHYLIB
129 help
130 This driver supports the Altera Triple-Speed (TSE) Ethernet MAC.
131 Please find details on the "Triple-Speed Ethernet MegaCore Function
132 Resource Center" of Altera.
133
134config BCM_SF2_ETH
135 bool "Broadcom SF2 (Starfighter2) Ethernet support"
136 select PHYLIB
137 help
138 This is an abstract framework which provides a generic interface
139 to MAC and DMA management for multiple Broadcom SoCs such as
140 Cygnus, NSP and bcm28155_ap platforms.
141
142config BCM_SF2_ETH_DEFAULT_PORT
143 int "Broadcom SF2 (Starfighter2) Ethernet default port number"
144 depends on BCM_SF2_ETH
145 default 0
146 help
147 Default port number for the Starfighter2 ethernet driver.
148
149config BCM_SF2_ETH_GMAC
150 bool "Broadcom SF2 (Starfighter2) GMAC Ethernet support"
151 depends on BCM_SF2_ETH
152 help
153 This flag enables the ethernet support for Broadcom platforms with
154 GMAC such as Cygnus. This driver is based on the framework provided
155 by the BCM_SF2_ETH driver.
156 Say Y to any bcmcygnus based platforms.
157
158config BCM6348_ETH
159 bool "BCM6348 EMAC support"
160 depends on ARCH_BMIPS
161 select DMA
162 select DMA_CHANNELS
163 select MII
164 select PHYLIB
165 help
166 This driver supports the BCM6348 Ethernet MAC.
167
168config BCM6368_ETH
169 bool "BCM6368 EMAC support"
170 depends on ARCH_BMIPS
171 select DMA
172 select MII
173 help
174 This driver supports the BCM6368 Ethernet MAC.
175
176config BCMGENET
177 bool "BCMGENET V5 support"
178 select PHYLIB
179 help
180 This driver supports the BCMGENET Ethernet MAC.
181
182source "drivers/net/bnxt/Kconfig"
183
184config CORTINA_NI_ENET
185 bool "Cortina-Access Ethernet driver"
186 depends on CORTINA_PLATFORM
187 help
188 This driver supports the Cortina-Access Ethernet MAC for
189 all supported CAxxxx SoCs.
190
191config CALXEDA_XGMAC
192 bool "Calxeda XGMAC support"
193 help
194 This driver supports the XGMAC in Calxeda Highbank and Midway
195 machines.
196
197config DWC_ETH_XGMAC
198 bool "Synopsys DWC Ethernet XGMAC device support"
199 select PHYLIB
200 help
201 This driver supports the Synopsys Designware Ethernet XGMAC (10G
202 Ethernet MAC) IP block. The IP supports many options for bus type,
203 clocking/reset structure, and feature list.
204
205config DWC_ETH_XGMAC_SOCFPGA
206 bool "Synopsys DWC Ethernet XGMAC device support for SOCFPGA"
207 select REGMAP
208 select SYSCON
209 depends on DWC_ETH_XGMAC
210 default y if TARGET_SOCFPGA_AGILEX5
211 help
212 The Synopsys Designware Ethernet XGMAC IP block with specific
213 configuration used in Intel SoC FPGA chip.
214
215config DRIVER_DM9000
216 bool "Davicom DM9000 controller driver"
217 help
218 The Davicom DM9000 parallel bus external ethernet interface chip.
219
220config DM9000_BYTE_SWAPPED
221 bool "Byte swapped access for DM9000"
222 depends on DRIVER_DM9000
223
224config DM9000_NO_SROM
225 bool "No SROM on DM9000"
226 depends on DRIVER_DM9000
227
228config DM9000_USE_16BIT
229 bool "Use 16bit access in DM9000"
230 depends on DRIVER_DM9000
231
232config DWC_ETH_QOS
233 bool "Synopsys DWC Ethernet QOS device support"
234 select PHYLIB
235 help
236 This driver supports the Synopsys Designware Ethernet QOS (Quality
237 Of Service) IP block. The IP supports many options for bus type,
238 clocking/reset structure, and feature list.
239
240config DWC_ETH_QOS_IMX
241 bool "Synopsys DWC Ethernet QOS device support for IMX"
242 depends on DWC_ETH_QOS
243 help
244 The Synopsys Designware Ethernet QOS IP block with the specific
245 configuration used in IMX soc.
246
247config DWC_ETH_QOS_INTEL
248 bool "Synopsys DWC Ethernet QOS device support for Intel"
249 depends on DWC_ETH_QOS
250 help
251 The Synopsys Designware Ethernet QOS IP block with the specific
252 configuration used in the Intel Elkhart-Lake soc.
253
254config DWC_ETH_QOS_ROCKCHIP
255 bool "Synopsys DWC Ethernet QOS device support for Rockchip SoCs"
256 depends on DWC_ETH_QOS
257 select DM_ETH_PHY
258 help
259 The Synopsys Designware Ethernet QOS IP block with specific
260 configuration used in Rockchip SoCs.
261
262config DWC_ETH_QOS_STM32
263 bool "Synopsys DWC Ethernet QOS device support for STM32"
264 depends on DWC_ETH_QOS
265 select DM_ETH_PHY
266 default y if ARCH_STM32MP
267 help
268 The Synopsys Designware Ethernet QOS IP block with the specific
269 configuration used in STM32MP soc.
270
271config DWC_ETH_QOS_TEGRA186
272 bool "Synopsys DWC Ethernet QOS device support for TEGRA186"
273 depends on DWC_ETH_QOS
274 default y if TEGRA186
275 help
276 The Synopsys Designware Ethernet QOS IP block with specific
277 configuration used in NVIDIA's Tegra186 chip.
278
279config DWC_ETH_QOS_QCOM
280 bool "Synopsys DWC Ethernet QOS device support for Qcom SoCs"
281 depends on DWC_ETH_QOS
282 help
283 The Synopsys Designware Ethernet QOS IP block with specific
284 configuration used in Qcom QCS404 SoC.
285
286config DWC_ETH_QOS_STARFIVE
287 bool "Synopsys DWC Ethernet QOS device support for STARFIVE"
288 depends on DWC_ETH_QOS
289 help
290 The Synopsys Designware Ethernet QOS IP block with specific
291 configuration used in STARFIVE JH7110 soc.
292
293config E1000
294 bool "Intel PRO/1000 Gigabit Ethernet support"
295 depends on PCI
296 help
297 This driver supports Intel(R) PRO/1000 gigabit ethernet family of
298 adapters. For more information on how to identify your adapter, go
299 to the Adapter & Driver ID Guide at:
300
301 <http://support.intel.com/support/network/adapter/pro100/21397.htm>
302
303config E1000_NO_NVM
304 bool "Intel PRO/1000 has no NVMEM / EEPROM"
305 depends on E1000
306
307config E1000_SPI_GENERIC
308 bool "Allow access to the Intel 8257x SPI bus"
309 depends on E1000
310 help
311 Allow generic access to the SPI bus on the Intel 8257x, for
312 example with the "sspi" command.
313
314config E1000_SPI
315 bool "Enable SPI bus utility code"
316 depends on E1000
317 help
318 Utility code for direct access to the SPI bus on Intel 8257x.
319 This does not do anything useful unless you set at least one
320 of CONFIG_CMD_E1000 or CONFIG_E1000_SPI_GENERIC.
321
322config CMD_E1000
323 bool "Enable the e1000 command"
324 depends on E1000
325 help
326 This enables the 'e1000' management command for E1000 devices. When
327 used on devices with SPI support you can reprogram the EEPROM from
328 U-Boot.
329
330config EEPRO100
331 bool "Intel PRO/100 82557/82559/82559ER Fast Ethernet support"
332 help
333 This driver supports Intel(R) PRO/100 82557/82559/82559ER fast
334 ethernet family of adapters.
335
336config ESSEDMA
337 bool "Qualcomm ESS Edma support"
338 depends on DM_ETH && ARCH_IPQ40XX
339 select PHYLIB
340 help
341 This driver supports ethernet DMA adapter found in
342 Qualcomm IPQ40xx series SoC-s.
343
344config ETH_SANDBOX
345 depends on SANDBOX
346 depends on NET
347 default y
348 bool "Sandbox: Mocked Ethernet driver"
349 help
350 This driver simply responds with fake ARP replies and ping
351 replies that are used to verify network stack functionality
352
353 This driver is particularly useful in the test/dm/eth.c tests
354
355config ETH_SANDBOX_LWIP
356 depends on SANDBOX
357 depends on NET_LWIP
358 default y
359 bool "Sandbox: Mocked Ethernet driver (for NET_LWIP)"
360 help
361 This driver is meant as a replacement for ETH_SANDBOX when
362 the network stack is NET_LWIP rather than NET. It currently
363 does nothing, i.e. it drops the sent packets and never receives
364 data.
365
366config ETH_SANDBOX_RAW
367 depends on SANDBOX
368 depends on NET
369 default y
370 bool "Sandbox: Bridge to Linux Raw Sockets"
371 help
372 This driver is a bridge from the bottom of the network stack
373 in U-Boot to the RAW AF_PACKET API in Linux. This allows real
374 network traffic to be tested from within sandbox. See
375 doc/arch/index.rst for more details.
376
377config ETH_DESIGNWARE
378 bool "Synopsys Designware Ethernet MAC"
379 select PHYLIB
380 imply ETH_DESIGNWARE_SOCFPGA if ARCH_SOCFPGA
381 help
382 This MAC is present in SoCs from various vendors. It supports
383 100Mbit and 1 Gbit operation. You must enable CONFIG_PHYLIB to
384 provide the PHY (physical media interface).
385
386config ETH_DESIGNWARE_MESON8B
387 bool "Amlogic Meson8b and later glue driver for Synopsys Designware Ethernet MAC"
388 select ETH_DESIGNWARE
389 help
390 This provides glue layer to use Synopsys Designware Ethernet MAC
391 present on the Amlogic Meson8b, GX, AXG & G12A SoCs.
392
393config ETH_DESIGNWARE_SOCFPGA
394 select REGMAP
395 select SYSCON
396 select DW_ALTDESCRIPTOR
397 bool "Altera SoCFPGA extras for Synopsys Designware Ethernet MAC"
398 depends on ETH_DESIGNWARE
399 help
400 The Altera SoCFPGA requires additional configuration of the
401 Altera system manager to correctly interface with the PHY.
402 This code handles those SoC specifics.
403
404config ETH_DESIGNWARE_S700
405 bool "Actins S700 glue driver for Synopsys Designware Ethernet MAC"
406 depends on ETH_DESIGNWARE
407 help
408 This provides glue layer to use Synopsys Designware Ethernet MAC
409 present on Actions S700 SoC.
410
411config DW_ALTDESCRIPTOR
412 bool "Designware Ethernet MAC uses alternate (enhanced) descriptors"
413 depends on ETH_DESIGNWARE
414
415config ETHOC
416 bool "OpenCores 10/100 Mbps Ethernet MAC"
417 help
418 This MAC is present in OpenRISC and Xtensa XTFPGA boards.
419
420config FEC_MXC_SHARE_MDIO
421 bool "Share the MDIO bus for FEC controller"
422 depends on FEC_MXC
423
424config FEC_MXC_MDIO_BASE
425 hex "MDIO base address for the FEC controller"
426 depends on FEC_MXC_SHARE_MDIO
427 help
428 This specifies the MDIO registers base address. It is used when
429 two FEC controllers share MDIO bus.
430
431config FEC_MXC
432 bool "FEC Ethernet controller"
433 depends on MX28 || MX5 || MX6 || MX7 || IMX8 || IMX8M || IMX8ULP || IMX93 || VF610
434 help
435 This driver supports the 10/100 Fast Ethernet controller for
436 NXP i.MX processors.
437
438config FMAN_ENET
439 bool "Freescale FMan ethernet support"
440 depends on ARM || PPC
441 select SYS_FMAN_V3 if ARCH_B4420 || ARCH_B4860 || ARCH_LS1043A || \
442 ARCH_LS1046A || ARCH_T1024 || ARCH_T1040 || ARCH_T1042 || \
443 ARCH_T2080 || ARCH_T4240
444 select FSL_FM_10GEC_REGULAR_NOTATION if ARCH_T1024
445 help
446 This driver support the Freescale FMan Ethernet controller
447
448config SYS_FMAN_FW_ADDR
449 hex "FMAN Firmware Address"
450 depends on FMAN_ENET
451 default 0x0
452
453config SYS_QE_FMAN_FW_LENGTH
454 hex "FMAN QE Firmware length"
455 depends on FMAN_ENET || QE || U_QE
456 default 0x10000
457
458config SYS_FMAN_V3
459 bool
460 select FSL_MEMAC
461 help
462 SoC has FMan v3 with mEMAC
463
464config FSL_FM_10GEC_REGULAR_NOTATION
465 bool
466 help
467 On SoCs T4240, T2080, LS1043A, etc, the notation between 10GEC and
468 MAC as below:
469 10GEC1->MAC9, 10GEC2->MAC10, 10GEC3->MAC1, 10GEC4->MAC2
470 While on SoCs T1024, etc, the notation between 10GEC and MAC as below:
471 10GEC1->MAC1, 10GEC2->MAC2
472 so we introduce CONFIG_FSL_FM_10GEC_REGULAR_NOTATION to identify the
473 new SoCs on which 10GEC enumeration is consistent with MAC
474 enumeration.
475
476config FTMAC100
477 bool "Ftmac100 Ethernet Support"
478 select MII
479 help
480 This MAC is present in Andestech SoCs.
481
482config FTGMAC100
483 bool "Ftgmac100 Ethernet Support"
484 select PHYLIB
485 depends on NET
486 help
487 This driver supports the Faraday's FTGMAC100 Gigabit SoC
488 Ethernet controller that can be found on Aspeed SoCs (which
489 include NCSI).
490
491 It is fully compliant with IEEE 802.3 specification for
492 10/100 Mbps Ethernet and IEEE 802.3z specification for 1000
493 Mbps Ethernet and includes Reduced Media Independent
494 Interface (RMII) and Reduced Gigabit Media Independent
495 Interface (RGMII) interfaces. It adopts an AHB bus interface
496 and integrates a link list DMA engine with direct M-Bus
497 accesses for transmitting and receiving packets. It has
498 independent TX/RX fifos, supports half and full duplex (1000
499 Mbps mode only supports full duplex), flow control for full
500 duplex and backpressure for half duplex.
501
502 The FTGMAC100 also implements IP, TCP, UDP checksum offloads
503 and supports IEEE 802.1Q VLAN tag insertion and removal. It
504 offers high-priority transmit queue for QoS and CoS
505 applications.
506
507config SYS_DISCOVER_PHY
508 bool
509
510config MCFFEC
511 bool "ColdFire Ethernet Support"
512 select PHYLIB
513 select SYS_DISCOVER_PHY
514 help
515 This driver supports the network interface units in the
516 ColdFire family.
517
518config SYS_UNIFY_CACHE
519 depends on MCFFEC
520 bool "Invalidate icache during ethernet operations"
521
522config KS8851_MLL
523 bool "Microchip KS8851-MLL controller driver"
524 help
525 The Microchip KS8851 parallel bus external ethernet interface chip.
526
527config KSZ9477
528 bool "Microchip KSZ9477 controller driver"
529 depends on DM_DSA && (DM_I2C || DM_SPI)
530 help
531 This driver implements a DSA switch driver for the KSZ9477 family
532 of GbE switches using the I2C or SPI interface.
533
534config LITEETH
535 bool "LiteX LiteEth Ethernet MAC"
536 help
537 Driver for the LiteEth Ethernet MAC from LiteX.
538
539config MV88E6XXX
540 bool "Marvell MV88E6xxx Ethernet switch DSA driver"
541 depends on DM_DSA && DM_MDIO
542 help
543 This driver implements a DSA switch driver for the MV88E6xxx family
544 of Ethernet switches using the MDIO interface
545
546config MVGBE
547 bool "Marvell Orion5x/Kirkwood network interface support"
548 depends on ARCH_KIRKWOOD || ARCH_ORION5X
549 select PHYLIB
550 help
551 This driver supports the network interface units in the
552 Marvell Orion5x and Kirkwood SoCs
553
554config MVNETA
555 bool "Marvell Armada XP/385/3700 network interface support"
556 depends on ARMADA_XP || ARMADA_38X || ARMADA_3700 || ALLEYCAT_5
557 select PHYLIB
558 select DM_MDIO
559 help
560 This driver supports the network interface units in the
561 Marvell ARMADA XP, ARMADA 38X and ARMADA 3700 SoCs
562
563config MVPP2
564 bool "Marvell Armada 375/7K/8K network interface support"
565 depends on ARMADA_375 || ARMADA_8K
566 select PHYLIB
567 select MVMDIO
568 select DM_MDIO
569 help
570 This driver supports the network interface units in the
571 Marvell ARMADA 375, 7K and 8K SoCs.
572
573config MACB
574 bool "Cadence MACB/GEM Ethernet Interface"
575 select PHYLIB
576 help
577 The Cadence MACB ethernet interface is found on many Atmel
578 AT91 and SAMA5 parts. This driver also supports the Cadence
579 GEM (Gigabit Ethernet MAC) found in some ARM SoC devices.
580 Say Y to include support for the MACB/GEM chip.
581
582config MACB_ZYNQ
583 bool "Cadence MACB/GEM Ethernet Interface for Xilinx Zynq"
584 depends on MACB
585 help
586 The Cadence MACB ethernet interface was used on Zynq platform.
587 Say Y to enable support for the MACB/GEM in Zynq chip.
588
589config MT7620_ETH
590 bool "MediaTek MT7620 Ethernet Interface"
591 depends on SOC_MT7620
592 select PHYLIB
593 select DM_RESET
594 select DM_GPIO
595 select CLK
596 help
597 The MediaTek MT7620 ethernet interface is used on MT7620 based
598 boards. It has a built-in switch with two configurable ports which
599 can connect to external PHY/MACs.
600
601config MT7628_ETH
602 bool "MediaTek MT7628 Ethernet Interface"
603 depends on SOC_MT7628
604 select PHYLIB
605 help
606 The MediaTek MT7628 ethernet interface is used on MT7628 and
607 MT7688 based boards.
608
609config NET_NPCM750
610 bool "Nuvoton NPCM750 Ethernet MAC"
611 help
612 support NPCM750 EMAC
613
614config NET_OCTEON
615 bool "MIPS Octeon ethernet support"
616 depends on ARCH_OCTEON
617 help
618 You must select Y to enable network device support for
619 MIPS Octeon SoCs. If unsure, say n
620
621config NET_OCTEONTX
622 bool "OcteonTX Ethernet support"
623 depends on ARCH_OCTEONTX
624 depends on PCI_SRIOV
625 help
626 You must select Y to enable network device support for
627 OcteonTX SoCs. If unsure, say n
628
629config NET_OCTEONTX2
630 bool "OcteonTX2 Ethernet support"
631 depends on ARCH_OCTEONTX2
632 select OCTEONTX2_CGX_INTF
633 help
634 You must select Y to enable network device support for
635 OcteonTX2 SoCs. If unsure, say n
636
637config OCTEONTX_SMI
638 bool "OcteonTX SMI Device support"
639 depends on ARCH_OCTEONTX || ARCH_OCTEONTX2
640 help
641 You must select Y to enable SMI controller support for
642 OcteonTX or OcteonTX2 SoCs. If unsure, say n
643
644config OCTEONTX2_CGX_INTF
645 bool "OcteonTX2 CGX ATF interface support"
646 depends on ARCH_OCTEONTX2
647 default y if ARCH_OCTEONTX2
648 help
649 You must select Y to enable CGX ATF interface support for
650 OcteonTX2 SoCs. If unsure, say n
651
652config PCH_GBE
653 bool "Intel Platform Controller Hub EG20T GMAC driver"
654 select PHYLIB
655 help
656 This MAC is present in Intel Platform Controller Hub EG20T. It
657 supports 10/100/1000 Mbps operation.
658
659config RGMII
660 bool "Enable RGMII"
661 help
662 Enable the support of the Reduced Gigabit Media-Independent
663 Interface (RGMII).
664
665config MII
666 bool "Enable MII"
667 help
668 Enable support of the Media-Independent Interface (MII)
669
670config RMII
671 bool "Enable RMII"
672 help
673 Enable support of the Reduced Media-Independent Interface (MII)
674
675config PCNET
676 bool "AMD PCnet series Ethernet controller driver"
677 help
678 This driver supports AMD PCnet series fast ethernet family of
679 PCI chipsets/adapters.
680
681source "drivers/net/qe/Kconfig"
682
683config RTL8139
684 bool "Realtek 8139 series Ethernet controller driver"
685 help
686 This driver supports Realtek 8139 series fast ethernet family of
687 PCI chipsets/adapters.
688
689config RTL8169
690 bool "Realtek 8169 series Ethernet controller driver"
691 depends on PCI
692 help
693 This driver supports Realtek 8169 series gigabit ethernet family of
694 PCI/PCIe chipsets/adapters.
695
696config SJA1105
697 bool "NXP SJA1105 Ethernet switch family driver"
698 depends on DM_DSA && DM_SPI
699 select BITREVERSE
700 help
701 This is the driver for the NXP SJA1105 automotive Ethernet switch
702 family. These are 5-port devices and are managed over an SPI
703 interface. Probing is handled based on OF bindings. The driver
704 supports the following revisions:
705 - SJA1105E (Gen. 1, No TT-Ethernet)
706 - SJA1105T (Gen. 1, TT-Ethernet)
707 - SJA1105P (Gen. 2, No SGMII, No TT-Ethernet)
708 - SJA1105Q (Gen. 2, No SGMII, TT-Ethernet)
709 - SJA1105R (Gen. 2, SGMII, No TT-Ethernet)
710 - SJA1105S (Gen. 2, SGMII, TT-Ethernet)
711
712config SMC911X
713 bool "SMSC LAN911x and LAN921x controller driver"
714
715config SMC911X_32_BIT
716 bool "Enable SMC911X 32-bit interface"
717 depends on SMC911X
718 help
719 Define this if data bus is 32 bits. If your processor use a
720 narrower 16 bit bus or cannot convert one 32 bit word to two 16 bit
721 words, leave this to "n".
722
723config SUN7I_GMAC
724 bool "Enable Allwinner GMAC Ethernet support"
725 help
726 Enable the support for Sun7i GMAC Ethernet controller
727
728config SUN7I_GMAC_FORCE_TXERR
729 bool "Force PA17 as gmac function"
730 depends on SUN7I_GMAC
731 help
732 Some ethernet phys needs TXERR control. Since the GMAC
733 doesn't have such signal, setting PA17 as GMAC function
734 makes the pin output low, which enables data transmission.
735
736config SUN4I_EMAC
737 bool "Allwinner Sun4i Ethernet MAC support"
738 select PHYLIB
739 help
740 This driver supports the Allwinner based SUN4I Ethernet MAC.
741
742config SUN8I_EMAC
743 bool "Allwinner Sun8i Ethernet MAC support"
744 select PHYLIB
745 select PHY_GIGE
746 help
747 This driver supports the Allwinner based SUN8I/SUN50I Ethernet MAC.
748 It can be found in H3/A64/A83T based SoCs and compatible with both
749 External and Internal PHYs.
750
751config SH_ETHER
752 bool "Renesas SH Ethernet MAC"
753 select PHYLIB
754 select PHY_ETHERNET_ID
755 help
756 This driver supports the Ethernet for Renesas SH and ARM SoCs.
757
758source "drivers/net/ti/Kconfig"
759
760config TULIP
761 bool "DEC Tulip DC2114x Ethernet support"
762 help
763 This driver supports DEC DC2114x Fast ethernet chips.
764
765config TULIP_SUPPORT_NON_PCI
766 bool "No PCI controller"
767 depends on TULIP
768 default n
769 help
770 Say Y to this and you can run this driver on platforms that do not
771 have PCI controllers.
772
773config TULIP_IGNORE_TX_NO_CARRIER
774 bool "Ignore tx no carrier error"
775 depends on TULIP
776 default n
777 help
778 Some IP cores of dc2114x or its variants do not comply so well with
779 the behaviors described by the official document. A packet could be
780 sent successfully but reported with No Carrier error. Latest drivers
781 of this IP core do not detect this error anymore. Say Y to this could
782 disable handling of this error.
783
784config TULIP_MULTIPLE_TX_DESC
785 bool "Use multiple tx descriptors"
786 depends on TULIP
787 default n
788 help
789 Some IP cores of dc2114x or its variants do not comply so well with
790 the behaviors described by the official document. Originally this
791 driver uses only one tx descriptor and organizes it as a ring buffer,
792 which would lead to a problem that one packet would be sent twice.
793 Say Y to this could prevent this bug if you are using IP cores with
794 this issue, by using multiple tx descriptors and organizing them as
795 a real well-defined ring buffer.
796
797config XILINX_AXIEMAC
798 select PHYLIB
799 select MII
800 bool "Xilinx AXI Ethernet"
801 help
802 This MAC is present in Xilinx Microblaze, Zynq and ZynqMP SoCs.
803
804config XILINX_AXIMRMAC
805 depends on ARCH_VERSAL
806 bool "Xilinx AXI MRMAC"
807 help
808 MRMAC is a high performance, low latency, adaptable Ethernet
809 integrated hard IP. This can be configured up to four ports with MAC
810 rates from 10GE to 100GE. This could be present in some of the Xilinx
811 Versal designs.
812
813config VSC7385_ENET
814 bool "Vitesse 7385 Switch Firmware Upload driver"
815
816config XILINX_EMACLITE
817 select PHYLIB
818 select MII
819 bool "Xilinx Ethernetlite"
820 help
821 This MAC is present in Xilinx Microblaze, Zynq and ZynqMP SoCs.
822
823config ZYNQ_GEM
824 select PHYLIB
825 bool "Xilinx Ethernet GEM"
826 help
827 This MAC is present in Xilinx Zynq and ZynqMP SoCs.
828
829config PIC32_ETH
830 bool "Microchip PIC32 Ethernet Support"
831 depends on MACH_PIC32
832 select PHYLIB
833 help
834 This driver implements 10/100 Mbps Ethernet and MAC layer for
835 Microchip PIC32 microcontrollers.
836
837config GMAC_ROCKCHIP
838 bool "Rockchip Synopsys Designware Ethernet MAC"
839 depends on ETH_DESIGNWARE
840 help
841 This driver provides Rockchip SoCs network support based on the
842 Synopsys Designware driver.
843
844config RENESAS_ETHER_SWITCH
845 bool "Renesas Ethernet Switch support"
846 depends on DM_ETH && R8A779F0
847 select PHYLIB
848 help
849 This driver implements support for the Renesas Ethernet Switch
850 which is available on R-Car S4 SoC (r8a779f0).
851
852config RENESAS_RAVB
853 bool "Renesas Ethernet AVB MAC"
854 depends on RCAR_64
855 select PHYLIB
856 select PHY_ETHERNET_ID
857 help
858 This driver implements support for the Ethernet AVB block in
859 Renesas M3 and H3 SoCs.
860
861config MPC8XX_FEC
862 bool "Fast Ethernet Controller on MPC8XX"
863 depends on MPC8xx
864 select MII
865 select SYS_DISCOVER_PHY
866 help
867 This driver implements support for the Fast Ethernet Controller
868 on MPC8XX
869
870config SNI_AVE
871 bool "Socionext AVE Ethernet support"
872 depends on ARCH_UNIPHIER
873 select PHYLIB
874 select SYSCON
875 select REGMAP
876 help
877 This driver implements support for the Socionext AVE Ethernet
878 controller, as found on the Socionext UniPhier family.
879
880config SNI_NETSEC
881 bool "Socionext NETSEC Ethernet support"
882 depends on SYNQUACER_SPI
883 select PHYLIB
884 help
885 This driver implements support for the Socionext SynQuacer NETSEC
886 ethernet controller, as found on the Socionext SynQuacer family.
887
888source "drivers/net/mscc_eswitch/Kconfig"
889
890config ETHER_ON_FEC1
891 bool "FEC1"
892 depends on MPC8XX_FEC
893 default y
894
895config FEC1_PHY
896 int "FEC1 PHY"
897 depends on ETHER_ON_FEC1
898 default -1
899 help
900 Define to the hardcoded PHY address which corresponds
901 to the given FEC; i. e.
902 #define CONFIG_FEC1_PHY 4
903 means that the PHY with address 4 is connected to FEC1
904
905 When set to -1, means to probe for first available.
906
907config PHY_NORXERR
908 bool "PHY_NORXERR"
909 depends on ETHER_ON_FEC1
910 help
911 The PHY does not have a RXERR line (RMII only).
912 (so program the FEC to ignore it).
913
914config ETHER_ON_FEC2
915 bool "FEC2"
916 depends on MPC8XX_FEC && MPC885
917 default y
918
919config FEC2_PHY
920 int "FEC2 PHY"
921 depends on ETHER_ON_FEC2
922 default -1
923 help
924 Define to the hardcoded PHY address which corresponds
925 to the given FEC; i. e.
926 #define CONFIG_FEC1_PHY 4
927 means that the PHY with address 4 is connected to FEC1
928
929 When set to -1, means to probe for first available.
930
931config FEC2_PHY_NORXERR
932 bool "PHY_NORXERR"
933 depends on ETHER_ON_FEC2
934 help
935 The PHY does not have a RXERR line (RMII only).
936 (so program the FEC to ignore it).
937
938config SYS_DPAA_QBMAN
939 bool "Device tree fixup for QBMan on freescale SOCs"
940 depends on ARM || PPC
941 default y if ARCH_B4860 || \
942 ARCH_B4420 || \
943 ARCH_P1023 || \
944 ARCH_P2041 || \
945 ARCH_T1024 || \
946 ARCH_T1040 || \
947 ARCH_T1042 || \
948 ARCH_T2080 || \
949 ARCH_T4240 || \
950 ARCH_P4080 || \
951 ARCH_P3041 || \
952 ARCH_P5040 || \
953 ARCH_LS1043A || \
954 ARCH_LS1046A
955 help
956 QBman fixups to allow deep sleep in DPAA 1 SOCs
957
958config SYS_FSL_QMAN_V3
959 bool # QMAN version 3
960 depends on SYS_DPAA_QBMAN
961
962config TSEC_ENET
963 select PHYLIB
964 bool "Enable Three-Speed Ethernet Controller"
965 help
966 This driver implements support for the (Enhanced) Three-Speed
967 Ethernet Controller found on Freescale SoCs.
968
969source "drivers/net/mtk_eth/Kconfig"
970
971config HIFEMAC_ETH
972 bool "HiSilicon Fast Ethernet Controller"
973 select DM_CLK
974 select DM_RESET
975 select PHYLIB
976 help
977 This driver supports HIFEMAC Ethernet controller found on
978 HiSilicon SoCs.
979
980config HIFEMAC_MDIO
981 bool "HiSilicon Fast Ethernet Controller MDIO interface"
982 depends on DM_MDIO
983 select DM_CLK
984 help
985 This driver supports the internal MDIO interface of HIFEMAC
986 Ethernet controller.
987
988config HIGMACV300_ETH
989 bool "HiSilicon Gigabit Ethernet Controller"
990 select DM_RESET
991 select PHYLIB
992 help
993 This driver supports HIGMACV300 Ethernet controller found on
994 HiSilicon SoCs.
995
996config FSL_ENETC
997 bool "NXP ENETC Ethernet controller"
998 depends on DM_MDIO
999 help
1000 This driver supports the NXP ENETC Ethernet controller found on some
1001 of the NXP SoCs.
1002
1003config FSL_ENETC_NETC_BLK_CTRL
1004 bool "NXP ENETC NETC blocks control driver"
1005 depends on FSL_ENETC && IMX95
1006 default y if IMX95
1007 help
1008 This driver configures Integrated Endpoint Register Block (IERB) and
1009 Privileged Register Block (PRB) of NETC. For i.MX platforms, it also
1010 includes the configuration of NETCMIX block.
1011 The IERB contains registers that are used for pre-boot initialization,
1012 debug, and non-customer configuration. The PRB controls global reset
1013 and global error handling for NETC. The NETCMIX block is mainly used
1014 to set MII protocol and PCS protocol of the links, it also contains
1015 settings for some other functions.
1016
1017config MDIO_GPIO_BITBANG
1018 bool "GPIO bitbanging MDIO driver"
1019 depends on DM_MDIO && DM_GPIO
1020 help
1021 Driver for bitbanging MDIO
1022
1023config MDIO_MUX_I2CREG
1024 bool "MDIO MUX accessed as a register over I2C"
1025 depends on DM_MDIO_MUX && DM_I2C
1026 help
1027 This driver is used for MDIO muxes driven by writing to a register of
1028 an I2C chip. The board it was developed for uses a mux controlled by
1029 on-board FPGA which in turn is accessed as a chip over I2C.
1030
1031config MDIO_IPQ4019
1032 bool "Qualcomm IPQ4019 MDIO interface support"
1033 depends on DM_MDIO
1034 help
1035 This driver supports the MDIO interface found in Qualcomm
1036 IPQ40xx series Soc-s.
1037
1038config MVMDIO
1039 bool "Marvell MDIO interface support"
1040 depends on DM_MDIO
1041 help
1042 This driver supports the MDIO interface found in the network
1043 interface units of the Marvell EBU SoCs (Kirkwood, Orion5x,
1044 Dove, Armada 370, Armada XP, Armada 37xx and Armada7K/8K/8KP).
1045
1046 This driver is used by the MVPP2 and MVNETA drivers.
1047
1048config FSL_LS_MDIO
1049 bool "NXP Layerscape MDIO interface support"
1050 depends on DM_MDIO
1051 help
1052 This driver supports the MDIO bus found on the Fman 10G Ethernet MACs and
1053 on the mEMAC (which supports both Clauses 22 and 45).
1054
1055config ASPEED_MDIO
1056 bool "Aspeed MDIO interface support"
1057 depends on DM_MDIO
1058 help
1059 This driver supports the MDIO bus of Aspeed AST2600 SOC. The driver
1060 currently supports Clause 22.
1061
1062config MDIO_MUX_MMIOREG
1063 bool "MDIO MUX accessed as a MMIO register access"
1064 depends on DM_MDIO_MUX
1065 help
1066 This driver is used for MDIO muxes driven by writing to a register in
1067 the MMIO physical memory.
1068
1069config MDIO_MUX_MESON_G12A
1070 bool "MDIO MUX for Amlogic Meson G12A SoCs"
1071 depends on DM_MDIO_MUX
1072 help
1073 This driver is used for the MDIO mux found on the Amlogic G12A & compatible
1074 SoCs.
1075
1076config MDIO_MUX_MESON_GXL
1077 bool "MDIO MUX for Amlogic Meson GXL SoCs"
1078 depends on DM_MDIO_MUX
1079 help
1080 This driver is used for the MDIO mux found on the Amlogic GXL & compatible
1081 SoCs.
1082
1083endif # NETDEVICES