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"
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"
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"
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 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"
126 This driver supports the Altera Triple-Speed (TSE) Ethernet MAC.
127 Please find details on the "Triple-Speed Ethernet MegaCore Function
128 Resource Center" of Altera.
131 bool "Broadcom SF2 (Starfighter2) Ethernet support"
134 This is an abstract framework which provides a generic interface
135 to MAC and DMA management for multiple Broadcom SoCs such as
136 Cygnus, NSP and bcm28155_ap platforms.
138 config BCM_SF2_ETH_DEFAULT_PORT
139 int "Broadcom SF2 (Starfighter2) Ethernet default port number"
140 depends on BCM_SF2_ETH
143 Default port number for the Starfighter2 ethernet driver.
145 config BCM_SF2_ETH_GMAC
146 bool "Broadcom SF2 (Starfighter2) GMAC Ethernet support"
147 depends on BCM_SF2_ETH
149 This flag enables the ethernet support for Broadcom platforms with
150 GMAC such as Cygnus. This driver is based on the framework provided
151 by the BCM_SF2_ETH driver.
152 Say Y to any bcmcygnus based platforms.
155 bool "BCM6348 EMAC support"
156 depends on ARCH_BMIPS
162 This driver supports the BCM6348 Ethernet MAC.
165 bool "BCM6368 EMAC support"
166 depends on ARCH_BMIPS
170 This driver supports the BCM6368 Ethernet MAC.
173 bool "BCMGENET V5 support"
176 This driver supports the BCMGENET Ethernet MAC.
178 config CORTINA_NI_ENET
179 bool "Cortina-Access Ethernet driver"
180 depends on CORTINA_PLATFORM
182 This driver supports the Cortina-Access Ethernet MAC for
183 all supported CAxxxx SoCs.
186 bool "Calxeda XGMAC support"
188 This driver supports the XGMAC in Calxeda Highbank and Midway
192 bool "Davicom DM9000 controller driver"
194 The Davicom DM9000 parallel bus external ethernet interface chip.
197 bool "Synopsys DWC Ethernet QOS device support"
200 This driver supports the Synopsys Designware Ethernet QOS (Quality
201 Of Service) IP block. The IP supports many options for bus type,
202 clocking/reset structure, and feature list.
204 config DWC_ETH_QOS_IMX
205 bool "Synopsys DWC Ethernet QOS device support for IMX"
206 depends on DWC_ETH_QOS
208 The Synopsys Designware Ethernet QOS IP block with the specific
209 configuration used in IMX soc.
211 config DWC_ETH_QOS_STM32
212 bool "Synopsys DWC Ethernet QOS device support for STM32"
213 depends on DWC_ETH_QOS
215 default y if ARCH_STM32MP
217 The Synopsys Designware Ethernet QOS IP block with the specific
218 configuration used in STM32MP soc.
220 config DWC_ETH_QOS_TEGRA186
221 bool "Synopsys DWC Ethernet QOS device support for TEGRA186"
222 depends on DWC_ETH_QOS
223 default y if TEGRA186
225 The Synopsys Designware Ethernet QOS IP block with specific
226 configuration used in NVIDIA's Tegra186 chip.
229 bool "Intel PRO/1000 Gigabit Ethernet support"
232 This driver supports Intel(R) PRO/1000 gigabit ethernet family of
233 adapters. For more information on how to identify your adapter, go
234 to the Adapter & Driver ID Guide at:
236 <http://support.intel.com/support/network/adapter/pro100/21397.htm>
239 bool "Intel PRO/1000 has no NVMEM / EEPROM"
242 config E1000_SPI_GENERIC
243 bool "Allow access to the Intel 8257x SPI bus"
246 Allow generic access to the SPI bus on the Intel 8257x, for
247 example with the "sspi" command.
250 bool "Enable SPI bus utility code"
253 Utility code for direct access to the SPI bus on Intel 8257x.
254 This does not do anything useful unless you set at least one
255 of CONFIG_CMD_E1000 or CONFIG_E1000_SPI_GENERIC.
258 bool "Enable the e1000 command"
261 This enables the 'e1000' management command for E1000 devices. When
262 used on devices with SPI support you can reprogram the EEPROM from
266 bool "Intel PRO/100 82557/82559/82559ER Fast Ethernet support"
268 This driver supports Intel(R) PRO/100 82557/82559/82559ER fast
269 ethernet family of adapters.
274 bool "Sandbox: Mocked Ethernet driver"
276 This driver simply responds with fake ARP replies and ping
277 replies that are used to verify network stack functionality
279 This driver is particularly useful in the test/dm/eth.c tests
281 config ETH_SANDBOX_RAW
284 bool "Sandbox: Bridge to Linux Raw Sockets"
286 This driver is a bridge from the bottom of the network stack
287 in U-Boot to the RAW AF_PACKET API in Linux. This allows real
288 network traffic to be tested from within sandbox. See
289 doc/arch/index.rst for more details.
291 config ETH_DESIGNWARE
292 bool "Synopsys Designware Ethernet MAC"
294 imply ETH_DESIGNWARE_SOCFPGA if ARCH_SOCFPGA
296 This MAC is present in SoCs from various vendors. It supports
297 100Mbit and 1 Gbit operation. You must enable CONFIG_PHYLIB to
298 provide the PHY (physical media interface).
300 config ETH_DESIGNWARE_MESON8B
301 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 select DW_ALTDESCRIPTOR
311 bool "Altera SoCFPGA extras for Synopsys Designware Ethernet MAC"
312 depends on ETH_DESIGNWARE
314 The Altera SoCFPGA requires additional configuration of the
315 Altera system manager to correctly interface with the PHY.
316 This code handles those SoC specifics.
318 config ETH_DESIGNWARE_S700
319 bool "Actins S700 glue driver for Synopsys Designware Ethernet MAC"
320 depends on ETH_DESIGNWARE
322 This provides glue layer to use Synopsys Designware Ethernet MAC
323 present on Actions S700 SoC.
325 config DW_ALTDESCRIPTOR
326 bool "Designware Ethernet MAC uses alternate (enhanced) descriptors"
327 depends on ETH_DESIGNWARE
330 bool "OpenCores 10/100 Mbps Ethernet MAC"
332 This MAC is present in OpenRISC and Xtensa XTFPGA boards.
334 config FEC_MXC_SHARE_MDIO
335 bool "Share the MDIO bus for FEC controller"
338 config FEC_MXC_MDIO_BASE
339 hex "MDIO base address for the FEC controller"
340 depends on FEC_MXC_SHARE_MDIO
342 This specifies the MDIO registers base address. It is used when
343 two FEC controllers share MDIO bus.
346 bool "FEC Ethernet controller"
347 depends on MX28 || MX5 || MX6 || MX7 || IMX8 || IMX8M || IMX8ULP || IMX93 || VF610
349 This driver supports the 10/100 Fast Ethernet controller for
353 bool "Freescale FMan ethernet support"
354 depends on ARM || PPC
355 select SYS_FMAN_V3 if ARCH_B4420 || ARCH_B4860 || ARCH_LS1043A || \
356 ARCH_LS1046A || ARCH_T1024 || ARCH_T1040 || ARCH_T1042 || \
357 ARCH_T2080 || ARCH_T4240
359 This driver support the Freescale FMan Ethernet controller
361 config SYS_FMAN_FW_ADDR
362 hex "FMAN Firmware Address"
366 config SYS_QE_FMAN_FW_LENGTH
367 hex "FMAN QE Firmware length"
368 depends on FMAN_ENET || QE || U_QE
375 SoC has FMan v3 with mEMAC
378 bool "Ftmac100 Ethernet Support"
380 This MAC is present in Andestech SoCs.
383 bool "Ftgmac100 Ethernet Support"
386 This driver supports the Faraday's FTGMAC100 Gigabit SoC
387 Ethernet controller that can be found on Aspeed SoCs (which
390 It is fully compliant with IEEE 802.3 specification for
391 10/100 Mbps Ethernet and IEEE 802.3z specification for 1000
392 Mbps Ethernet and includes Reduced Media Independent
393 Interface (RMII) and Reduced Gigabit Media Independent
394 Interface (RGMII) interfaces. It adopts an AHB bus interface
395 and integrates a link list DMA engine with direct M-Bus
396 accesses for transmitting and receiving packets. It has
397 independent TX/RX fifos, supports half and full duplex (1000
398 Mbps mode only supports full duplex), flow control for full
399 duplex and backpressure for half duplex.
401 The FTGMAC100 also implements IP, TCP, UDP checksum offloads
402 and supports IEEE 802.1Q VLAN tag insertion and removal. It
403 offers high-priority transmit queue for QoS and CoS
406 config SYS_DISCOVER_PHY
410 bool "ColdFire Ethernet Support"
412 select SYS_DISCOVER_PHY
414 This driver supports the network interface units in the
417 config SYS_UNIFY_CACHE
419 bool "Invalidate icache during ethernet operations"
422 bool "ColdFire DMA Ethernet Support"
424 select SYS_DISCOVER_PHY
426 This driver supports the network interface units in the
430 bool "Microchip KS8851-MLL controller driver"
432 The Microchip KS8851 parallel bus external ethernet interface chip.
435 bool "Microchip KSZ9477 I2C controller driver"
436 depends on DM_DSA && DM_I2C
438 This driver implements a DSA switch driver for the KSZ9477 family
439 of GbE switches using the I2C interface.
442 bool "LiteX LiteEth Ethernet MAC"
444 Driver for the LiteEth Ethernet MAC from LiteX.
447 bool "Marvell Orion5x/Kirkwood network interface support"
448 depends on ARCH_KIRKWOOD || ARCH_ORION5X
451 This driver supports the network interface units in the
452 Marvell Orion5x and Kirkwood SoCs
455 bool "Marvell Armada XP/385/3700 network interface support"
456 depends on ARMADA_XP || ARMADA_38X || ARMADA_3700 || ALLEYCAT_5
460 This driver supports the network interface units in the
461 Marvell ARMADA XP, ARMADA 38X and ARMADA 3700 SoCs
464 bool "Marvell Armada 375/7K/8K network interface support"
465 depends on ARMADA_375 || ARMADA_8K
470 This driver supports the network interface units in the
471 Marvell ARMADA 375, 7K and 8K SoCs.
474 bool "Cadence MACB/GEM Ethernet Interface"
477 The Cadence MACB ethernet interface is found on many Atmel
478 AT91 and SAMA5 parts. This driver also supports the Cadence
479 GEM (Gigabit Ethernet MAC) found in some ARM SoC devices.
480 Say Y to include support for the MACB/GEM chip.
483 bool "Cadence MACB/GEM Ethernet Interface for Xilinx Zynq"
486 The Cadence MACB ethernet interface was used on Zynq platform.
487 Say Y to enable support for the MACB/GEM in Zynq chip.
490 bool "MediaTek MT7620 Ethernet Interface"
491 depends on SOC_MT7620
497 The MediaTek MT7620 ethernet interface is used on MT7620 based
498 boards. It has a built-in switch with two configurable ports which
499 can connect to external PHY/MACs.
502 bool "MediaTek MT7628 Ethernet Interface"
503 depends on SOC_MT7628
506 The MediaTek MT7628 ethernet interface is used on MT7628 and
510 bool "Nuvoton NPCM750 Ethernet MAC"
515 bool "MIPS Octeon ethernet support"
516 depends on ARCH_OCTEON
518 You must select Y to enable network device support for
519 MIPS Octeon SoCs. If unsure, say n
522 bool "OcteonTX Ethernet support"
523 depends on ARCH_OCTEONTX
526 You must select Y to enable network device support for
527 OcteonTX SoCs. If unsure, say n
530 bool "OcteonTX2 Ethernet support"
531 depends on ARCH_OCTEONTX2
532 select OCTEONTX2_CGX_INTF
534 You must select Y to enable network device support for
535 OcteonTX2 SoCs. If unsure, say n
538 bool "OcteonTX SMI Device support"
539 depends on ARCH_OCTEONTX || ARCH_OCTEONTX2
541 You must select Y to enable SMI controller support for
542 OcteonTX or OcteonTX2 SoCs. If unsure, say n
544 config OCTEONTX2_CGX_INTF
545 bool "OcteonTX2 CGX ATF interface support"
546 depends on ARCH_OCTEONTX2
547 default y if ARCH_OCTEONTX2
549 You must select Y to enable CGX ATF interface support for
550 OcteonTX2 SoCs. If unsure, say n
553 bool "Intel Platform Controller Hub EG20T GMAC driver"
556 This MAC is present in Intel Platform Controller Hub EG20T. It
557 supports 10/100/1000 Mbps operation.
562 Enable the support of the Reduced Gigabit Media-Independent
568 Enable support of the Media-Independent Interface (MII)
573 Enable support of the Reduced Media-Independent Interface (MII)
576 bool "AMD PCnet series Ethernet controller driver"
578 This driver supports AMD PCnet series fast ethernet family of
579 PCI chipsets/adapters.
581 source "drivers/net/qe/Kconfig"
584 bool "Realtek 8139 series Ethernet controller driver"
586 This driver supports Realtek 8139 series fast ethernet family of
587 PCI chipsets/adapters.
590 bool "Realtek 8169 series Ethernet controller driver"
592 This driver supports Realtek 8169 series gigabit ethernet family of
593 PCI/PCIe chipsets/adapters.
596 bool "NXP SJA1105 Ethernet switch family driver"
597 depends on DM_DSA && DM_SPI
600 This is the driver for the NXP SJA1105 automotive Ethernet switch
601 family. These are 5-port devices and are managed over an SPI
602 interface. Probing is handled based on OF bindings. The driver
603 supports the following revisions:
604 - SJA1105E (Gen. 1, No TT-Ethernet)
605 - SJA1105T (Gen. 1, TT-Ethernet)
606 - SJA1105P (Gen. 2, No SGMII, No TT-Ethernet)
607 - SJA1105Q (Gen. 2, No SGMII, TT-Ethernet)
608 - SJA1105R (Gen. 2, SGMII, No TT-Ethernet)
609 - SJA1105S (Gen. 2, SGMII, TT-Ethernet)
612 bool "SMSC LAN911x and LAN921x controller driver"
614 config SMC911X_32_BIT
615 bool "Enable SMC911X 32-bit interface"
618 Define this if data bus is 32 bits. If your processor use a
619 narrower 16 bit bus or cannot convert one 32 bit word to two 16 bit
620 words, leave this to "n".
623 bool "Enable Allwinner GMAC Ethernet support"
625 Enable the support for Sun7i GMAC Ethernet controller
627 config SUN7I_GMAC_FORCE_TXERR
628 bool "Force PA17 as gmac function"
629 depends on SUN7I_GMAC
631 Some ethernet phys needs TXERR control. Since the GMAC
632 doesn't have such signal, setting PA17 as GMAC function
633 makes the pin output low, which enables data transmission.
636 bool "Allwinner Sun4i Ethernet MAC support"
639 This driver supports the Allwinner based SUN4I Ethernet MAC.
642 bool "Allwinner Sun8i Ethernet MAC support"
646 This driver supports the Allwinner based SUN8I/SUN50I Ethernet MAC.
647 It can be found in H3/A64/A83T based SoCs and compatible with both
648 External and Internal PHYs.
651 bool "Renesas SH Ethernet MAC"
654 This driver supports the Ethernet for Renesas SH and ARM SoCs.
656 source "drivers/net/ti/Kconfig"
659 bool "DEC Tulip DC2114x Ethernet support"
661 This driver supports DEC DC2114x Fast ethernet chips.
663 config XILINX_AXIEMAC
666 bool "Xilinx AXI Ethernet"
668 This MAC is present in Xilinx Microblaze, Zynq and ZynqMP SoCs.
670 config XILINX_AXIMRMAC
671 depends on ARCH_VERSAL
672 bool "Xilinx AXI MRMAC"
674 MRMAC is a high performance, low latency, adaptable Ethernet
675 integrated hard IP. This can be configured up to four ports with MAC
676 rates from 10GE to 100GE. This could be present in some of the Xilinx
679 config XILINX_EMACLITE
682 bool "Xilinx Ethernetlite"
684 This MAC is present in Xilinx Microblaze, Zynq and ZynqMP SoCs.
688 bool "Xilinx Ethernet GEM"
690 This MAC is present in Xilinx Zynq and ZynqMP SoCs.
693 bool "Microchip PIC32 Ethernet Support"
694 depends on MACH_PIC32
697 This driver implements 10/100 Mbps Ethernet and MAC layer for
698 Microchip PIC32 microcontrollers.
701 bool "Rockchip Synopsys Designware Ethernet MAC"
702 depends on ETH_DESIGNWARE
704 This driver provides Rockchip SoCs network support based on the
705 Synopsys Designware driver.
708 bool "Renesas Ethernet AVB MAC"
712 This driver implements support for the Ethernet AVB block in
713 Renesas M3 and H3 SoCs.
716 bool "Fast Ethernet Controller on MPC8XX"
720 select SYS_DISCOVER_PHY
722 This driver implements support for the Fast Ethernet Controller
726 bool "Socionext AVE Ethernet support"
727 depends on ARCH_UNIPHIER
732 This driver implements support for the Socionext AVE Ethernet
733 controller, as found on the Socionext UniPhier family.
736 bool "Socionext NETSEC Ethernet support"
737 depends on SYNQUACER_SPI
740 This driver implements support for the Socionext SynQuacer NETSEC
741 ethernet controller, as found on the Socionext SynQuacer family.
743 source "drivers/net/mscc_eswitch/Kconfig"
747 depends on MPC8XX_FEC
752 depends on ETHER_ON_FEC1
755 Define to the hardcoded PHY address which corresponds
756 to the given FEC; i. e.
757 #define CONFIG_FEC1_PHY 4
758 means that the PHY with address 4 is connected to FEC1
760 When set to -1, means to probe for first available.
764 depends on ETHER_ON_FEC1
766 The PHY does not have a RXERR line (RMII only).
767 (so program the FEC to ignore it).
771 depends on MPC8XX_FEC && MPC885
776 depends on ETHER_ON_FEC2
779 Define to the hardcoded PHY address which corresponds
780 to the given FEC; i. e.
781 #define CONFIG_FEC1_PHY 4
782 means that the PHY with address 4 is connected to FEC1
784 When set to -1, means to probe for first available.
786 config FEC2_PHY_NORXERR
788 depends on ETHER_ON_FEC2
790 The PHY does not have a RXERR line (RMII only).
791 (so program the FEC to ignore it).
793 config SYS_DPAA_QBMAN
794 bool "Device tree fixup for QBMan on freescale SOCs"
795 depends on (ARM || PPC) && !SPL_BUILD
796 default y if ARCH_B4860 || \
811 QBman fixups to allow deep sleep in DPAA 1 SOCs
813 config SYS_FSL_QMAN_V3
814 bool # QMAN version 3
815 depends on SYS_DPAA_QBMAN
819 bool "Enable Three-Speed Ethernet Controller"
821 This driver implements support for the (Enhanced) Three-Speed
822 Ethernet Controller found on Freescale SoCs.
825 bool "MediaTek Ethernet GMAC Driver"
830 This Driver support MediaTek Ethernet GMAC
831 Say Y to enable support for the MediaTek Ethernet GMAC.
833 config HIGMACV300_ETH
834 bool "HiSilicon Gigabit Ethernet Controller"
838 This driver supports HIGMACV300 Ethernet controller found on
842 bool "NXP ENETC Ethernet controller"
845 This driver supports the NXP ENETC Ethernet controller found on some
848 config MDIO_MUX_I2CREG
849 bool "MDIO MUX accessed as a register over I2C"
850 depends on DM_MDIO_MUX && DM_I2C
852 This driver is used for MDIO muxes driven by writing to a register of
853 an I2C chip. The board it was developed for uses a mux controlled by
854 on-board FPGA which in turn is accessed as a chip over I2C.
857 bool "Qualcomm IPQ4019 MDIO interface support"
860 This driver supports the MDIO interface found in Qualcomm
861 IPQ40xx series Soc-s.
864 bool "Marvell MDIO interface support"
867 This driver supports the MDIO interface found in the network
868 interface units of the Marvell EBU SoCs (Kirkwood, Orion5x,
869 Dove, Armada 370, Armada XP, Armada 37xx and Armada7K/8K/8KP).
871 This driver is used by the MVPP2 and MVNETA drivers.
874 bool "NXP Layerscape MDIO interface support"
877 This driver supports the MDIO bus found on the Fman 10G Ethernet MACs and
878 on the mEMAC (which supports both Clauses 22 and 45).
881 bool "Aspeed MDIO interface support"
884 This driver supports the MDIO bus of Aspeed AST2600 SOC. The driver
885 currently supports Clause 22.
887 config MDIO_MUX_MMIOREG
888 bool "MDIO MUX accessed as a MMIO register access"
889 depends on DM_MDIO_MUX
891 This driver is used for MDIO muxes driven by writing to a register in
892 the MMIO physical memory.
894 config MDIO_MUX_MESON_G12A
895 bool "MDIO MUX for Amlogic Meson G12A SoCs"
896 depends on DM_MDIO_MUX
898 This driver is used for the MDIO mux found on the Amlogic G12A & compatible