1 source "drivers/net/phy/Kconfig"
2 source "drivers/net/pfe_eth/Kconfig"
3 source "drivers/net/fsl-mc/Kconfig"
4 source "drivers/net/bnxt/Kconfig"
10 bool "Enable Driver Model for Ethernet drivers"
13 Enable driver model for Ethernet.
15 The eth_*() interface will be implemented by the UCLASS_ETH class
16 This is currently implemented in net/eth-uclass.c
17 Look in include/net.h for details.
20 bool "Enable Driver Model for MDIO devices"
21 depends on DM_ETH && PHYLIB
23 Enable driver model for MDIO devices
25 Adds UCLASS_MDIO DM class supporting MDIO buses that are probed as
26 stand-alone devices. Useful in particular for systems that support
27 DM_ETH and have a stand-alone MDIO hardware block shared by multiple
29 This is currently implemented in net/mdio-uclass.c
30 Look in include/miiphy.h for details.
33 bool "Enable Driver Model for MDIO MUX devices"
36 Enable driver model for MDIO MUX devices
38 Adds UCLASS_MDIO_MUX DM class supporting MDIO MUXes. Useful for
39 systems that support DM_MDIO and integrate one or multiple muxes on
41 This is currently implemented in net/mdio-mux-uclass.c
42 Look in include/miiphy.h for details.
45 bool "Enable Driver Model for DSA switches"
46 depends on DM_ETH && DM_MDIO
49 Enable driver model for DSA switches
51 Adds UCLASS_DSA class supporting switches that follow the Distributed
52 Switch Architecture (DSA). These switches rely on the presence of a
53 management switch port connected to an Ethernet controller capable of
54 receiving frames from the switch. This host Ethernet controller is
55 called the "master" Ethernet interface in DSA terminology.
56 This is currently implemented in net/dsa-uclass.c, refer to
57 include/net/dsa.h for API details.
60 depends on DM_MDIO && SANDBOX
62 bool "Sandbox: Mocked MDIO driver"
64 This driver implements dummy read/write/reset MDIO functions mimicking
65 a bus with a single PHY.
67 This driver is used in for testing in test/dm/mdio.c
69 config MDIO_MUX_SANDBOX
70 depends on DM_MDIO_MUX && MDIO_SANDBOX
72 bool "Sandbox: Mocked MDIO-MUX driver"
74 This driver implements dummy select/deselect ops mimicking a MUX on
75 the MDIO bux. It uses mdio_sandbox driver as parent MDIO.
77 This driver is used for testing in test/dm/mdio.c
80 bool "Enable Driver Model for Ethernet Generic PHY drivers"
83 Enable driver model for Ethernet Generic PHY .
86 depends on DM_DSA && SANDBOX
88 bool "Sandbox: Mocked DSA driver"
90 This driver implements a dummy DSA switch connected to a dummy sandbox
91 Ethernet device used as DSA master, to test DSA class code, including
92 exported DSA API and datapath processing of Ethernet traffic.
95 bool "Network device support"
99 You must select Y to enable any network device support
100 Generally if you have any networking support this is a given
107 bool "Enable GbE PHY status parsing and configuration"
109 Enables support for parsing the status output and for
110 configuring GbE PHYs (affects the inner workings of some
111 commands and miiphyutil.c).
114 bool "Atheros AG7xxx Ethernet MAC support"
115 depends on DM_ETH && ARCH_ATH79
118 This driver supports the Atheros AG7xxx Ethernet MAC. This MAC is
119 present in the Atheros AR7xxx, AR9xxx and QCA9xxx MIPS chips.
123 bool "Altera Triple-Speed Ethernet MAC support"
127 This driver supports the Altera Triple-Speed (TSE) Ethernet MAC.
128 Please find details on the "Triple-Speed Ethernet MegaCore Function
129 Resource Center" of Altera.
132 bool "Broadcom SF2 (Starfighter2) Ethernet support"
135 This is an abstract framework which provides a generic interface
136 to MAC and DMA management for multiple Broadcom SoCs such as
137 Cygnus, NSP and bcm28155_ap platforms.
139 config BCM_SF2_ETH_DEFAULT_PORT
140 int "Broadcom SF2 (Starfighter2) Ethernet default port number"
141 depends on BCM_SF2_ETH
144 Default port number for the Starfighter2 ethernet driver.
146 config BCM_SF2_ETH_GMAC
147 bool "Broadcom SF2 (Starfighter2) GMAC Ethernet support"
148 depends on BCM_SF2_ETH
150 This flag enables the ethernet support for Broadcom platforms with
151 GMAC such as Cygnus. This driver is based on the framework provided
152 by the BCM_SF2_ETH driver.
153 Say Y to any bcmcygnus based platforms.
156 bool "BCM6348 EMAC support"
157 depends on DM_ETH && ARCH_BMIPS
163 This driver supports the BCM6348 Ethernet MAC.
166 bool "BCM6368 EMAC support"
167 depends on DM_ETH && ARCH_BMIPS
171 This driver supports the BCM6368 Ethernet MAC.
174 bool "BCMGENET V5 support"
178 This driver supports the BCMGENET Ethernet MAC.
180 config CORTINA_NI_ENET
181 bool "Cortina-Access Ethernet driver"
182 depends on DM_ETH && CORTINA_PLATFORM
184 This driver supports the Cortina-Access Ethernet MAC for
185 all supported CAxxxx SoCs.
188 bool "Calxeda XGMAC support"
191 This driver supports the XGMAC in Calxeda Highbank and Midway
195 bool "Davicom DM9000 controller driver"
197 The Davicom DM9000 parallel bus external ethernet interface chip.
200 bool "Synopsys DWC Ethernet QOS device support"
204 This driver supports the Synopsys Designware Ethernet QOS (Quality
205 Of Service) IP block. The IP supports many options for bus type,
206 clocking/reset structure, and feature list.
208 config DWC_ETH_QOS_IMX
209 bool "Synopsys DWC Ethernet QOS device support for IMX"
210 depends on DWC_ETH_QOS
212 The Synopsys Designware Ethernet QOS IP block with the specific
213 configuration used in IMX soc.
215 config DWC_ETH_QOS_STM32
216 bool "Synopsys DWC Ethernet QOS device support for STM32"
217 depends on DWC_ETH_QOS
219 default y if ARCH_STM32MP
221 The Synopsys Designware Ethernet QOS IP block with the specific
222 configuration used in STM32MP soc.
224 config DWC_ETH_QOS_TEGRA186
225 bool "Synopsys DWC Ethernet QOS device support for TEGRA186"
226 depends on DWC_ETH_QOS
227 default y if TEGRA186
229 The Synopsys Designware Ethernet QOS IP block with specific
230 configuration used in NVIDIA's Tegra186 chip.
233 bool "Intel PRO/1000 Gigabit Ethernet support"
235 This driver supports Intel(R) PRO/1000 gigabit ethernet family of
236 adapters. For more information on how to identify your adapter, go
237 to the Adapter & Driver ID Guide at:
239 <http://support.intel.com/support/network/adapter/pro100/21397.htm>
241 config E1000_SPI_GENERIC
242 bool "Allow access to the Intel 8257x SPI bus"
245 Allow generic access to the SPI bus on the Intel 8257x, for
246 example with the "sspi" command.
249 bool "Enable SPI bus utility code"
252 Utility code for direct access to the SPI bus on Intel 8257x.
253 This does not do anything useful unless you set at least one
254 of CONFIG_CMD_E1000 or CONFIG_E1000_SPI_GENERIC.
257 bool "Enable the e1000 command"
260 This enables the 'e1000' management command for E1000 devices. When
261 used on devices with SPI support you can reprogram the EEPROM from
265 bool "Intel PRO/100 82557/82559/82559ER Fast Ethernet support"
267 This driver supports Intel(R) PRO/100 82557/82559/82559ER fast
268 ethernet family of adapters.
271 depends on DM_ETH && SANDBOX
273 bool "Sandbox: Mocked Ethernet driver"
275 This driver simply responds with fake ARP replies and ping
276 replies that are used to verify network stack functionality
278 This driver is particularly useful in the test/dm/eth.c tests
280 config ETH_SANDBOX_RAW
281 depends on DM_ETH && SANDBOX
283 bool "Sandbox: Bridge to Linux Raw Sockets"
285 This driver is a bridge from the bottom of the network stack
286 in U-Boot to the RAW AF_PACKET API in Linux. This allows real
287 network traffic to be tested from within sandbox. See
288 doc/arch/index.rst for more details.
290 config ETH_DESIGNWARE
291 bool "Synopsys Designware Ethernet MAC"
293 imply ETH_DESIGNWARE_SOCFPGA if ARCH_SOCFPGA
295 This MAC is present in SoCs from various vendors. It supports
296 100Mbit and 1 Gbit operation. You must enable CONFIG_PHYLIB to
297 provide the PHY (physical media interface).
299 config ETH_DESIGNWARE_MESON8B
300 bool "Amlogic Meson8b and later glue driver for Synopsys Designware Ethernet MAC"
302 select ETH_DESIGNWARE
304 This provides glue layer to use Synopsys Designware Ethernet MAC
305 present on the Amlogic Meson8b, GX, AXG & G12A SoCs.
307 config ETH_DESIGNWARE_SOCFPGA
310 bool "Altera SoCFPGA extras for Synopsys Designware Ethernet MAC"
311 depends on DM_ETH && ETH_DESIGNWARE
313 The Altera SoCFPGA requires additional configuration of the
314 Altera system manager to correctly interface with the PHY.
315 This code handles those SoC specifics.
317 config ETH_DESIGNWARE_S700
318 bool "Actins S700 glue driver for Synopsys Designware Ethernet MAC"
319 depends on DM_ETH && ETH_DESIGNWARE
321 This provides glue layer to use Synopsys Designware Ethernet MAC
322 present on Actions S700 SoC.
325 bool "OpenCores 10/100 Mbps Ethernet MAC"
327 This MAC is present in OpenRISC and Xtensa XTFPGA boards.
329 config FEC_MXC_SHARE_MDIO
330 bool "Share the MDIO bus for FEC controller"
333 config FEC_MXC_MDIO_BASE
334 hex "MDIO base address for the FEC controller"
335 depends on FEC_MXC_SHARE_MDIO
337 This specifies the MDIO registers base address. It is used when
338 two FEC controllers share MDIO bus.
341 bool "FEC Ethernet controller"
342 depends on MX28 || MX5 || MX6 || MX7 || IMX8 || IMX8M || IMX8ULP || VF610
344 This driver supports the 10/100 Fast Ethernet controller for
348 bool "Freescale FMan ethernet support"
349 depends on ARM || PPC
351 This driver support the Freescale FMan Ethernet controller
353 config SYS_FMAN_FW_ADDR
354 hex "FMAN Firmware Address"
358 config SYS_QE_FMAN_FW_LENGTH
359 hex "FMAN QE Firmware length"
360 depends on FMAN_ENET || QE || U_QE
364 bool "Ftmac100 Ethernet Support"
366 This MAC is present in Andestech SoCs.
369 bool "Ftgmac100 Ethernet Support"
373 This driver supports the Faraday's FTGMAC100 Gigabit SoC
374 Ethernet controller that can be found on Aspeed SoCs (which
377 It is fully compliant with IEEE 802.3 specification for
378 10/100 Mbps Ethernet and IEEE 802.3z specification for 1000
379 Mbps Ethernet and includes Reduced Media Independent
380 Interface (RMII) and Reduced Gigabit Media Independent
381 Interface (RGMII) interfaces. It adopts an AHB bus interface
382 and integrates a link list DMA engine with direct M-Bus
383 accesses for transmitting and receiving packets. It has
384 independent TX/RX fifos, supports half and full duplex (1000
385 Mbps mode only supports full duplex), flow control for full
386 duplex and backpressure for half duplex.
388 The FTGMAC100 also implements IP, TCP, UDP checksum offloads
389 and supports IEEE 802.1Q VLAN tag insertion and removal. It
390 offers high-priority transmit queue for QoS and CoS
395 bool "ColdFire Ethernet Support"
399 This driver supports the network interface units in the
403 bool "ColdFire DMA Ethernet Support"
407 This driver supports the network interface units in the
411 bool "Microchip KS8851-MLL controller driver"
413 The Microchip KS8851 parallel bus external ethernet interface chip.
417 config KS8851_MLL_BASEADDR
418 hex "Microchip KS8851-MLL Base Address"
420 Define this to hold the physical address of the device (I/O space)
425 bool "Microchip KSZ9477 I2C controller driver"
426 depends on DM_DSA && DM_I2C
428 This driver implements a DSA switch driver for the KSZ9477 family
429 of GbE switches using the I2C interface.
432 bool "LPC32xx Ethernet MAC interface driver"
433 depends on ARCH_LPC32XX
437 bool "Marvell Orion5x/Kirkwood network interface support"
438 depends on ARCH_KIRKWOOD || ARCH_ORION5X
439 select PHYLIB if DM_ETH
441 This driver supports the network interface units in the
442 Marvell Orion5x and Kirkwood SoCs
445 bool "Marvell Armada XP/385/3700 network interface support"
446 depends on ARMADA_XP || ARMADA_38X || ARMADA_3700
449 This driver supports the network interface units in the
450 Marvell ARMADA XP, ARMADA 38X and ARMADA 3700 SoCs
453 bool "Marvell Armada 375/7K/8K network interface support"
454 depends on ARMADA_375 || ARMADA_8K
459 This driver supports the network interface units in the
460 Marvell ARMADA 375, 7K and 8K SoCs.
463 bool "Cadence MACB/GEM Ethernet Interface"
466 The Cadence MACB ethernet interface is found on many Atmel
467 AT91 and SAMA5 parts. This driver also supports the Cadence
468 GEM (Gigabit Ethernet MAC) found in some ARM SoC devices.
469 Say Y to include support for the MACB/GEM chip.
472 bool "Cadence MACB/GEM Ethernet Interface for Xilinx Zynq"
475 The Cadence MACB ethernet interface was used on Zynq platform.
476 Say Y to enable support for the MACB/GEM in Zynq chip.
479 bool "MediaTek MT7620 Ethernet Interface"
480 depends on SOC_MT7620
486 The MediaTek MT7620 ethernet interface is used on MT7620 based
487 boards. It has a built-in switch with two configurable ports which
488 can connect to external PHY/MACs.
491 bool "MediaTek MT7628 Ethernet Interface"
492 depends on SOC_MT7628
495 The MediaTek MT7628 ethernet interface is used on MT7628 and
499 bool "MIPS Octeon ethernet support"
500 depends on ARCH_OCTEON
502 You must select Y to enable network device support for
503 MIPS Octeon SoCs. If unsure, say n
506 bool "OcteonTX Ethernet support"
507 depends on ARCH_OCTEONTX
510 You must select Y to enable network device support for
511 OcteonTX SoCs. If unsure, say n
514 bool "OcteonTX2 Ethernet support"
515 depends on ARCH_OCTEONTX2
516 select OCTEONTX2_CGX_INTF
518 You must select Y to enable network device support for
519 OcteonTX2 SoCs. If unsure, say n
522 bool "OcteonTX SMI Device support"
523 depends on ARCH_OCTEONTX || ARCH_OCTEONTX2
525 You must select Y to enable SMI controller support for
526 OcteonTX or OcteonTX2 SoCs. If unsure, say n
528 config OCTEONTX2_CGX_INTF
529 bool "OcteonTX2 CGX ATF interface support"
530 depends on ARCH_OCTEONTX2
531 default y if ARCH_OCTEONTX2
533 You must select Y to enable CGX ATF interface support for
534 OcteonTX2 SoCs. If unsure, say n
537 bool "Intel Platform Controller Hub EG20T GMAC driver"
541 This MAC is present in Intel Platform Controller Hub EG20T. It
542 supports 10/100/1000 Mbps operation.
547 Enable the support of the Reduced Gigabit Media-Independent
553 Enable support of the Media-Independent Interface (MII)
558 Enable support of the Reduced Media-Independent Interface (MII)
561 bool "AMD PCnet series Ethernet controller driver"
563 This driver supports AMD PCnet series fast ethernet family of
564 PCI chipsets/adapters.
566 source "drivers/net/qe/Kconfig"
569 bool "Realtek 8139 series Ethernet controller driver"
571 This driver supports Realtek 8139 series fast ethernet family of
572 PCI chipsets/adapters.
575 bool "Realtek 8169 series Ethernet controller driver"
577 This driver supports Realtek 8169 series gigabit ethernet family of
578 PCI/PCIe chipsets/adapters.
581 bool "NXP SJA1105 Ethernet switch family driver"
582 depends on DM_DSA && DM_SPI
585 This is the driver for the NXP SJA1105 automotive Ethernet switch
586 family. These are 5-port devices and are managed over an SPI
587 interface. Probing is handled based on OF bindings. The driver
588 supports the following revisions:
589 - SJA1105E (Gen. 1, No TT-Ethernet)
590 - SJA1105T (Gen. 1, TT-Ethernet)
591 - SJA1105P (Gen. 2, No SGMII, No TT-Ethernet)
592 - SJA1105Q (Gen. 2, No SGMII, TT-Ethernet)
593 - SJA1105R (Gen. 2, SGMII, No TT-Ethernet)
594 - SJA1105S (Gen. 2, SGMII, TT-Ethernet)
597 bool "SMSC LAN911x and LAN921x controller driver"
603 hex "SMC911X Base Address"
605 Define this to hold the physical address
606 of the device (I/O space)
609 config SMC911X_32_BIT
610 bool "Enable SMC911X 32-bit interface"
612 Define this if data bus is 32 bits. If your processor use a
613 narrower 16 bit bus or cannot convert one 32 bit word to two 16 bit
614 words, leave this to "n".
619 bool "Enable Allwinner GMAC Ethernet support"
621 Enable the support for Sun7i GMAC Ethernet controller
623 config SUN7I_GMAC_FORCE_TXERR
624 bool "Force PA17 as gmac function"
625 depends on SUN7I_GMAC
627 Some ethernet phys needs TXERR control. Since the GMAC
628 doesn't have such signal, setting PA17 as GMAC function
629 makes the pin output low, which enables data transmission.
632 bool "Allwinner Sun4i Ethernet MAC support"
636 This driver supports the Allwinner based SUN4I Ethernet MAC.
639 bool "Allwinner Sun8i Ethernet MAC support"
644 This driver supports the Allwinner based SUN8I/SUN50I Ethernet MAC.
645 It can be found in H3/A64/A83T based SoCs and compatible with both
646 External and Internal PHYs.
649 bool "Renesas SH Ethernet MAC"
652 This driver supports the Ethernet for Renesas SH and ARM SoCs.
654 source "drivers/net/ti/Kconfig"
657 bool "DEC Tulip DC2114x Ethernet support"
659 This driver supports DEC DC2114x Fast ethernet chips.
661 config XILINX_AXIEMAC
665 bool "Xilinx AXI Ethernet"
667 This MAC is present in Xilinx Microblaze, Zynq and ZynqMP SoCs.
669 config XILINX_AXIMRMAC
670 depends on DM_ETH && ARCH_VERSAL
671 bool "Xilinx AXI MRMAC"
673 MRMAC is a high performance, low latency, adaptable Ethernet
674 integrated hard IP. This can be configured up to four ports with MAC
675 rates from 10GE to 100GE. This could be present in some of the Xilinx
678 config XILINX_EMACLITE
682 bool "Xilinx Ethernetlite"
684 This MAC is present in Xilinx Microblaze, Zynq and ZynqMP SoCs.
689 bool "Xilinx Ethernet GEM"
691 This MAC is present in Xilinx Zynq and ZynqMP SoCs.
694 bool "Microchip PIC32 Ethernet Support"
695 depends on DM_ETH && MACH_PIC32
698 This driver implements 10/100 Mbps Ethernet and MAC layer for
699 Microchip PIC32 microcontrollers.
702 bool "Rockchip Synopsys Designware Ethernet MAC"
703 depends on DM_ETH && ETH_DESIGNWARE
705 This driver provides Rockchip SoCs network support based on the
706 Synopsys Designware driver.
709 bool "Renesas Ethernet AVB MAC"
710 depends on DM_ETH && RCAR_GEN3
713 This driver implements support for the Ethernet AVB block in
714 Renesas M3 and H3 SoCs.
717 bool "Fast Ethernet Controller on MPC8XX"
721 This driver implements support for the Fast Ethernet Controller
725 bool "Socionext AVE Ethernet support"
726 depends on DM_ETH && ARCH_UNIPHIER
731 This driver implements support for the Socionext AVE Ethernet
732 controller, as found on the Socionext UniPhier family.
735 bool "Socionext NETSEC Ethernet support"
736 depends on DM_ETH && SYNQUACER_SPI
739 This driver implements support for the Socionext SynQuacer NETSEC
740 ethernet controller, as found on the Socionext SynQuacer family.
742 source "drivers/net/mscc_eswitch/Kconfig"
746 depends on MPC8XX_FEC
751 depends on ETHER_ON_FEC1
754 Define to the hardcoded PHY address which corresponds
755 to the given FEC; i. e.
756 #define CONFIG_FEC1_PHY 4
757 means that the PHY with address 4 is connected to FEC1
759 When set to -1, means to probe for first available.
763 depends on ETHER_ON_FEC1
765 The PHY does not have a RXERR line (RMII only).
766 (so program the FEC to ignore it).
770 depends on MPC8XX_FEC && MPC885
775 depends on ETHER_ON_FEC2
778 Define to the hardcoded PHY address which corresponds
779 to the given FEC; i. e.
780 #define CONFIG_FEC1_PHY 4
781 means that the PHY with address 4 is connected to FEC1
783 When set to -1, means to probe for first available.
785 config FEC2_PHY_NORXERR
787 depends on ETHER_ON_FEC2
789 The PHY does not have a RXERR line (RMII only).
790 (so program the FEC to ignore it).
792 config SYS_DPAA_QBMAN
793 bool "Device tree fixup for QBMan on freescale SOCs"
794 depends on (ARM || PPC) && !SPL_BUILD
795 default y if ARCH_B4860 || \
810 QBman fixups to allow deep sleep in DPAA 1 SOCs
814 bool "Enable Three-Speed Ethernet Controller"
816 This driver implements support for the (Enhanced) Three-Speed
817 Ethernet Controller found on Freescale SoCs.
820 bool "MediaTek Ethernet GMAC Driver"
826 This Driver support MediaTek Ethernet GMAC
827 Say Y to enable support for the MediaTek Ethernet GMAC.
829 config HIGMACV300_ETH
830 bool "HiSilicon Gigabit Ethernet Controller"
835 This driver supports HIGMACV300 Ethernet controller found on
839 bool "NXP ENETC Ethernet controller"
840 depends on DM_ETH && DM_MDIO
842 This driver supports the NXP ENETC Ethernet controller found on some
845 config MDIO_MUX_I2CREG
846 bool "MDIO MUX accessed as a register over I2C"
847 depends on DM_MDIO_MUX && DM_I2C
849 This driver is used for MDIO muxes driven by writing to a register of
850 an I2C chip. The board it was developed for uses a mux controlled by
851 on-board FPGA which in turn is accessed as a chip over I2C.
854 bool "Qualcomm IPQ4019 MDIO interface support"
857 This driver supports the MDIO interface found in Qualcomm
858 IPQ40xx series Soc-s.
861 bool "Marvell MDIO interface support"
864 This driver supports the MDIO interface found in the network
865 interface units of the Marvell EBU SoCs (Kirkwood, Orion5x,
866 Dove, Armada 370, Armada XP, Armada 37xx and Armada7K/8K/8KP).
868 This driver is used by the MVPP2 and MVNETA drivers.
871 bool "NXP Layerscape MDIO interface support"
874 This driver supports the MDIO bus found on the Fman 10G Ethernet MACs and
875 on the mEMAC (which supports both Clauses 22 and 45).
878 bool "Aspeed MDIO interface support"
881 This driver supports the MDIO bus of Aspeed AST2600 SOC. The driver
882 currently supports Clause 22.
884 config MDIO_MUX_MMIOREG
885 bool "MDIO MUX accessed as a MMIO register access"
886 depends on DM_MDIO_MUX
888 This driver is used for MDIO muxes driven by writing to a register in
889 the MMIO physical memory.
891 config MDIO_MUX_MESON_G12A
892 bool "MDIO MUX for Amlogic Meson G12A SoCs"
893 depends on DM_MDIO_MUX
895 This driver is used for the MDIO mux found on the Amlogic G12A & compatible