1 source "drivers/net/phy/Kconfig"
2 source "drivers/net/pfe_eth/Kconfig"
3 source "drivers/net/fsl-mc/Kconfig"
9 bool "Enable Driver Model for Ethernet drivers"
12 Enable driver model for Ethernet.
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.
19 bool "Enable Driver Model for MDIO devices"
20 depends on DM_ETH && PHYLIB
22 Enable driver model for MDIO devices
24 Adds UCLASS_MDIO DM class supporting MDIO buses that are probed as
25 stand-alone devices. Useful in particular for systems that support
26 DM_ETH and have a stand-alone MDIO hardware block shared by multiple
28 This is currently implemented in net/mdio-uclass.c
29 Look in include/miiphy.h for details.
32 bool "Enable Driver Model for MDIO MUX devices"
35 Enable driver model for MDIO MUX devices
37 Adds UCLASS_MDIO_MUX DM class supporting MDIO MUXes. Useful for
38 systems that support DM_MDIO and integrate one or multiple muxes on
40 This is currently implemented in net/mdio-mux-uclass.c
41 Look in include/miiphy.h for details.
44 bool "Enable Driver Model for DSA switches"
45 depends on DM_ETH && DM_MDIO
48 Enable driver model for DSA switches
50 Adds UCLASS_DSA class supporting switches that follow the Distributed
51 Switch Architecture (DSA). These switches rely on the presence of a
52 management switch port connected to an Ethernet controller capable of
53 receiving frames from the switch. This host Ethernet controller is
54 called the "master" Ethernet interface in DSA terminology.
55 This is currently implemented in net/dsa-uclass.c, refer to
56 include/net/dsa.h for API details.
59 depends on DM_MDIO && SANDBOX
61 bool "Sandbox: Mocked MDIO driver"
63 This driver implements dummy read/write/reset MDIO functions mimicking
64 a bus with a single PHY.
66 This driver is used in for testing in test/dm/mdio.c
68 config MDIO_MUX_SANDBOX
69 depends on DM_MDIO_MUX && MDIO_SANDBOX
71 bool "Sandbox: Mocked MDIO-MUX driver"
73 This driver implements dummy select/deselect ops mimicking a MUX on
74 the MDIO bux. It uses mdio_sandbox driver as parent MDIO.
76 This driver is used for testing in test/dm/mdio.c
79 bool "Enable Driver Model for Ethernet Generic PHY drivers"
82 Enable driver model for Ethernet Generic PHY .
85 depends on DM_DSA && SANDBOX
87 bool "Sandbox: Mocked DSA driver"
89 This driver implements a dummy DSA switch connected to a dummy sandbox
90 Ethernet device used as DSA master, to test DSA class code, including
91 exported DSA API and datapath processing of Ethernet traffic.
94 bool "Network device support"
98 You must select Y to enable any network device support
99 Generally if you have any networking support this is a given
106 bool "Enable GbE PHY status parsing and configuration"
108 Enables support for parsing the status output and for
109 configuring GbE PHYs (affects the inner workings of some
110 commands and miiphyutil.c).
113 bool "Atheros AG7xxx Ethernet MAC support"
114 depends on DM_ETH && ARCH_ATH79
117 This driver supports the Atheros AG7xxx Ethernet MAC. This MAC is
118 present in the Atheros AR7xxx, AR9xxx and QCA9xxx MIPS chips.
122 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 DM_ETH && ARCH_BMIPS
162 This driver supports the BCM6348 Ethernet MAC.
165 bool "BCM6368 EMAC support"
166 depends on DM_ETH && ARCH_BMIPS
170 This driver supports the BCM6368 Ethernet MAC.
173 bool "BCMGENET V5 support"
177 This driver supports the BCMGENET Ethernet MAC.
179 config CORTINA_NI_ENET
180 bool "Cortina-Access Ethernet driver"
181 depends on DM_ETH && CORTINA_PLATFORM
183 This driver supports the Cortina-Access Ethernet MAC for
184 all supported CAxxxx SoCs.
187 bool "Calxeda XGMAC support"
190 This driver supports the XGMAC in Calxeda Highbank and Midway
194 bool "Synopsys DWC Ethernet QOS device support"
198 This driver supports the Synopsys Designware Ethernet QOS (Quality
199 Of Service) IP block. The IP supports many options for bus type,
200 clocking/reset structure, and feature list.
202 config DWC_ETH_QOS_IMX
203 bool "Synopsys DWC Ethernet QOS device support for IMX"
204 depends on DWC_ETH_QOS
206 The Synopsys Designware Ethernet QOS IP block with the specific
207 configuration used in IMX soc.
209 config DWC_ETH_QOS_STM32
210 bool "Synopsys DWC Ethernet QOS device support for STM32"
211 depends on DWC_ETH_QOS
213 default y if ARCH_STM32MP
215 The Synopsys Designware Ethernet QOS IP block with the specific
216 configuration used in STM32MP soc.
218 config DWC_ETH_QOS_TEGRA186
219 bool "Synopsys DWC Ethernet QOS device support for TEGRA186"
220 depends on DWC_ETH_QOS
221 default y if TEGRA186
223 The Synopsys Designware Ethernet QOS IP block with specific
224 configuration used in NVIDIA's Tegra186 chip.
227 bool "Intel PRO/1000 Gigabit Ethernet support"
229 This driver supports Intel(R) PRO/1000 gigabit ethernet family of
230 adapters. For more information on how to identify your adapter, go
231 to the Adapter & Driver ID Guide at:
233 <http://support.intel.com/support/network/adapter/pro100/21397.htm>
235 config E1000_SPI_GENERIC
236 bool "Allow access to the Intel 8257x SPI bus"
239 Allow generic access to the SPI bus on the Intel 8257x, for
240 example with the "sspi" command.
243 bool "Enable SPI bus utility code"
246 Utility code for direct access to the SPI bus on Intel 8257x.
247 This does not do anything useful unless you set at least one
248 of CONFIG_CMD_E1000 or CONFIG_E1000_SPI_GENERIC.
251 bool "Enable the e1000 command"
254 This enables the 'e1000' management command for E1000 devices. When
255 used on devices with SPI support you can reprogram the EEPROM from
259 bool "Intel PRO/100 82557/82559/82559ER Fast Ethernet support"
261 This driver supports Intel(R) PRO/100 82557/82559/82559ER fast
262 ethernet family of adapters.
265 depends on DM_ETH && SANDBOX
267 bool "Sandbox: Mocked Ethernet driver"
269 This driver simply responds with fake ARP replies and ping
270 replies that are used to verify network stack functionality
272 This driver is particularly useful in the test/dm/eth.c tests
274 config ETH_SANDBOX_RAW
275 depends on DM_ETH && SANDBOX
277 bool "Sandbox: Bridge to Linux Raw Sockets"
279 This driver is a bridge from the bottom of the network stack
280 in U-Boot to the RAW AF_PACKET API in Linux. This allows real
281 network traffic to be tested from within sandbox. See
282 doc/arch/index.rst for more details.
284 config ETH_DESIGNWARE
285 bool "Synopsys Designware Ethernet MAC"
287 imply ETH_DESIGNWARE_SOCFPGA if ARCH_SOCFPGA
289 This MAC is present in SoCs from various vendors. It supports
290 100Mbit and 1 Gbit operation. You must enable CONFIG_PHYLIB to
291 provide the PHY (physical media interface).
293 config ETH_DESIGNWARE_MESON8B
294 bool "Amlogic Meson8b and later glue driver for Synopsys Designware Ethernet MAC"
296 select ETH_DESIGNWARE
298 This provides glue layer to use Synopsys Designware Ethernet MAC
299 present on the Amlogic Meson8b, GX, AXG & G12A SoCs.
301 config ETH_DESIGNWARE_SOCFPGA
304 bool "Altera SoCFPGA extras for Synopsys Designware Ethernet MAC"
305 depends on DM_ETH && ETH_DESIGNWARE
307 The Altera SoCFPGA requires additional configuration of the
308 Altera system manager to correctly interface with the PHY.
309 This code handles those SoC specifics.
311 config ETH_DESIGNWARE_S700
312 bool "Actins S700 glue driver for Synopsys Designware Ethernet MAC"
313 depends on DM_ETH && ETH_DESIGNWARE
315 This provides glue layer to use Synopsys Designware Ethernet MAC
316 present on Actions S700 SoC.
319 bool "OpenCores 10/100 Mbps Ethernet MAC"
321 This MAC is present in OpenRISC and Xtensa XTFPGA boards.
323 config FEC_MXC_SHARE_MDIO
324 bool "Share the MDIO bus for FEC controller"
327 config FEC_MXC_MDIO_BASE
328 hex "MDIO base address for the FEC controller"
329 depends on FEC_MXC_SHARE_MDIO
331 This specifies the MDIO registers base address. It is used when
332 two FEC controllers share MDIO bus.
335 bool "FEC Ethernet controller"
336 depends on MX28 || MX5 || MX6 || MX7 || IMX8 || IMX8M || IMX8ULP || VF610
338 This driver supports the 10/100 Fast Ethernet controller for
342 bool "Freescale FMan ethernet support"
343 depends on ARM || PPC
345 This driver support the Freescale FMan Ethernet controller
347 config SYS_FMAN_FW_ADDR
348 hex "FMAN Firmware Address"
352 config SYS_QE_FMAN_FW_LENGTH
353 hex "FMAN QE Firmware length"
354 depends on FMAN_ENET || QE || U_QE
358 bool "Ftmac100 Ethernet Support"
360 This MAC is present in Andestech SoCs.
363 bool "Ftgmac100 Ethernet Support"
367 This driver supports the Faraday's FTGMAC100 Gigabit SoC
368 Ethernet controller that can be found on Aspeed SoCs (which
371 It is fully compliant with IEEE 802.3 specification for
372 10/100 Mbps Ethernet and IEEE 802.3z specification for 1000
373 Mbps Ethernet and includes Reduced Media Independent
374 Interface (RMII) and Reduced Gigabit Media Independent
375 Interface (RGMII) interfaces. It adopts an AHB bus interface
376 and integrates a link list DMA engine with direct M-Bus
377 accesses for transmitting and receiving packets. It has
378 independent TX/RX fifos, supports half and full duplex (1000
379 Mbps mode only supports full duplex), flow control for full
380 duplex and backpressure for half duplex.
382 The FTGMAC100 also implements IP, TCP, UDP checksum offloads
383 and supports IEEE 802.1Q VLAN tag insertion and removal. It
384 offers high-priority transmit queue for QoS and CoS
389 bool "ColdFire Ethernet Support"
393 This driver supports the network interface units in the
397 bool "ColdFire DMA Ethernet Support"
401 This driver supports the network interface units in the
405 bool "Microchip KS8851-MLL controller driver"
407 The Microchip KS8851 parallel bus external ethernet interface chip.
411 config KS8851_MLL_BASEADDR
412 hex "Microchip KS8851-MLL Base Address"
414 Define this to hold the physical address of the device (I/O space)
419 bool "Microchip KSZ9477 I2C controller driver"
420 depends on DM_DSA && DM_I2C
422 This driver implements a DSA switch driver for the KSZ9477 family
423 of GbE switches using the I2C interface.
426 bool "Marvell Orion5x/Kirkwood network interface support"
427 depends on ARCH_KIRKWOOD || ARCH_ORION5X
428 select PHYLIB if DM_ETH
430 This driver supports the network interface units in the
431 Marvell Orion5x and Kirkwood SoCs
434 bool "Marvell Armada XP/385/3700 network interface support"
435 depends on ARMADA_XP || ARMADA_38X || ARMADA_3700
438 This driver supports the network interface units in the
439 Marvell ARMADA XP, ARMADA 38X and ARMADA 3700 SoCs
442 bool "Marvell Armada 375/7K/8K network interface support"
443 depends on ARMADA_375 || ARMADA_8K
448 This driver supports the network interface units in the
449 Marvell ARMADA 375, 7K and 8K SoCs.
452 bool "Cadence MACB/GEM Ethernet Interface"
455 The Cadence MACB ethernet interface is found on many Atmel
456 AT91 and SAMA5 parts. This driver also supports the Cadence
457 GEM (Gigabit Ethernet MAC) found in some ARM SoC devices.
458 Say Y to include support for the MACB/GEM chip.
461 bool "Cadence MACB/GEM Ethernet Interface for Xilinx Zynq"
464 The Cadence MACB ethernet interface was used on Zynq platform.
465 Say Y to enable support for the MACB/GEM in Zynq chip.
468 bool "MediaTek MT7620 Ethernet Interface"
469 depends on SOC_MT7620
475 The MediaTek MT7620 ethernet interface is used on MT7620 based
476 boards. It has a built-in switch with two configurable ports which
477 can connect to external PHY/MACs.
480 bool "MediaTek MT7628 Ethernet Interface"
481 depends on SOC_MT7628
484 The MediaTek MT7628 ethernet interface is used on MT7628 and
488 bool "OcteonTX Ethernet support"
489 depends on ARCH_OCTEONTX
492 You must select Y to enable network device support for
493 OcteonTX SoCs. If unsure, say n
496 bool "OcteonTX2 Ethernet support"
497 depends on ARCH_OCTEONTX2
498 select OCTEONTX2_CGX_INTF
500 You must select Y to enable network device support for
501 OcteonTX2 SoCs. If unsure, say n
504 bool "OcteonTX SMI Device support"
505 depends on ARCH_OCTEONTX || ARCH_OCTEONTX2
507 You must select Y to enable SMI controller support for
508 OcteonTX or OcteonTX2 SoCs. If unsure, say n
510 config OCTEONTX2_CGX_INTF
511 bool "OcteonTX2 CGX ATF interface support"
512 depends on ARCH_OCTEONTX2
513 default y if ARCH_OCTEONTX2
515 You must select Y to enable CGX ATF interface support for
516 OcteonTX2 SoCs. If unsure, say n
519 bool "Intel Platform Controller Hub EG20T GMAC driver"
523 This MAC is present in Intel Platform Controller Hub EG20T. It
524 supports 10/100/1000 Mbps operation.
529 Enable the support of the Reduced Gigabit Media-Independent
535 Enable support of the Media-Independent Interface (MII)
538 bool "AMD PCnet series Ethernet controller driver"
540 This driver supports AMD PCnet series fast ethernet family of
541 PCI chipsets/adapters.
543 source "drivers/net/qe/Kconfig"
546 bool "Realtek 8139 series Ethernet controller driver"
548 This driver supports Realtek 8139 series fast ethernet family of
549 PCI chipsets/adapters.
552 bool "Realtek 8169 series Ethernet controller driver"
554 This driver supports Realtek 8169 series gigabit ethernet family of
555 PCI/PCIe chipsets/adapters.
558 bool "NXP SJA1105 Ethernet switch family driver"
559 depends on DM_DSA && DM_SPI
562 This is the driver for the NXP SJA1105 automotive Ethernet switch
563 family. These are 5-port devices and are managed over an SPI
564 interface. Probing is handled based on OF bindings. The driver
565 supports the following revisions:
566 - SJA1105E (Gen. 1, No TT-Ethernet)
567 - SJA1105T (Gen. 1, TT-Ethernet)
568 - SJA1105P (Gen. 2, No SGMII, No TT-Ethernet)
569 - SJA1105Q (Gen. 2, No SGMII, TT-Ethernet)
570 - SJA1105R (Gen. 2, SGMII, No TT-Ethernet)
571 - SJA1105S (Gen. 2, SGMII, TT-Ethernet)
574 bool "SMSC LAN911x and LAN921x controller driver"
580 hex "SMC911X Base Address"
582 Define this to hold the physical address
583 of the device (I/O space)
586 config SMC911X_32_BIT
587 bool "Enable SMC911X 32-bit interface"
589 Define this if data bus is 32 bits. If your processor use a
590 narrower 16 bit bus or cannot convert one 32 bit word to two 16 bit
591 words, leave this to "n".
596 bool "Enable Allwinner GMAC Ethernet support"
598 Enable the support for Sun7i GMAC Ethernet controller
600 config SUN7I_GMAC_FORCE_TXERR
601 bool "Force PA17 as gmac function"
602 depends on SUN7I_GMAC
604 Some ethernet phys needs TXERR control. Since the GMAC
605 doesn't have such signal, setting PA17 as GMAC function
606 makes the pin output low, which enables data transmission.
609 bool "Allwinner Sun4i Ethernet MAC support"
613 This driver supports the Allwinner based SUN4I Ethernet MAC.
616 bool "Allwinner Sun8i Ethernet MAC support"
621 This driver supports the Allwinner based SUN8I/SUN50I Ethernet MAC.
622 It can be found in H3/A64/A83T based SoCs and compatible with both
623 External and Internal PHYs.
626 bool "Renesas SH Ethernet MAC"
629 This driver supports the Ethernet for Renesas SH and ARM SoCs.
631 source "drivers/net/ti/Kconfig"
634 bool "DEC Tulip DC2114x Ethernet support"
636 This driver supports DEC DC2114x Fast ethernet chips.
638 config XILINX_AXIEMAC
642 bool "Xilinx AXI Ethernet"
644 This MAC is present in Xilinx Microblaze, Zynq and ZynqMP SoCs.
646 config XILINX_AXIMRMAC
647 depends on DM_ETH && ARCH_VERSAL
648 bool "Xilinx AXI MRMAC"
650 MRMAC is a high performance, low latency, adaptable Ethernet
651 integrated hard IP. This can be configured up to four ports with MAC
652 rates from 10GE to 100GE. This could be present in some of the Xilinx
655 config XILINX_EMACLITE
659 bool "Xilinx Ethernetlite"
661 This MAC is present in Xilinx Microblaze, Zynq and ZynqMP SoCs.
666 bool "Xilinx Ethernet GEM"
668 This MAC is present in Xilinx Zynq and ZynqMP SoCs.
671 bool "Microchip PIC32 Ethernet Support"
672 depends on DM_ETH && MACH_PIC32
675 This driver implements 10/100 Mbps Ethernet and MAC layer for
676 Microchip PIC32 microcontrollers.
679 bool "Rockchip Synopsys Designware Ethernet MAC"
680 depends on DM_ETH && ETH_DESIGNWARE
682 This driver provides Rockchip SoCs network support based on the
683 Synopsys Designware driver.
686 bool "Renesas Ethernet AVB MAC"
687 depends on DM_ETH && RCAR_GEN3
690 This driver implements support for the Ethernet AVB block in
691 Renesas M3 and H3 SoCs.
694 bool "Fast Ethernet Controller on MPC8XX"
698 This driver implements support for the Fast Ethernet Controller
702 bool "Socionext AVE Ethernet support"
703 depends on DM_ETH && ARCH_UNIPHIER
708 This driver implements support for the Socionext AVE Ethernet
709 controller, as found on the Socionext UniPhier family.
712 bool "Socionext NETSEC Ethernet support"
713 depends on DM_ETH && SYNQUACER_SPI
716 This driver implements support for the Socionext SynQuacer NETSEC
717 ethernet controller, as found on the Socionext SynQuacer family.
719 source "drivers/net/mscc_eswitch/Kconfig"
723 depends on MPC8XX_FEC
728 depends on ETHER_ON_FEC1
731 Define to the hardcoded PHY address which corresponds
732 to the given FEC; i. e.
733 #define CONFIG_FEC1_PHY 4
734 means that the PHY with address 4 is connected to FEC1
736 When set to -1, means to probe for first available.
740 depends on ETHER_ON_FEC1
742 The PHY does not have a RXERR line (RMII only).
743 (so program the FEC to ignore it).
747 depends on MPC8XX_FEC && MPC885
752 depends on ETHER_ON_FEC2
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.
762 config FEC2_PHY_NORXERR
764 depends on ETHER_ON_FEC2
766 The PHY does not have a RXERR line (RMII only).
767 (so program the FEC to ignore it).
769 config SYS_DPAA_QBMAN
770 bool "Device tree fixup for QBMan on freescale SOCs"
771 depends on (ARM || PPC) && !SPL_BUILD
772 default y if ARCH_B4860 || \
787 QBman fixups to allow deep sleep in DPAA 1 SOCs
791 bool "Enable Three-Speed Ethernet Controller"
793 This driver implements support for the (Enhanced) Three-Speed
794 Ethernet Controller found on Freescale SoCs.
797 bool "MediaTek Ethernet GMAC Driver"
803 This Driver support MediaTek Ethernet GMAC
804 Say Y to enable support for the MediaTek Ethernet GMAC.
806 config HIGMACV300_ETH
807 bool "HiSilicon Gigabit Ethernet Controller"
812 This driver supports HIGMACV300 Ethernet controller found on
816 bool "NXP ENETC Ethernet controller"
817 depends on DM_ETH && DM_MDIO
819 This driver supports the NXP ENETC Ethernet controller found on some
822 config MDIO_MUX_I2CREG
823 bool "MDIO MUX accessed as a register over I2C"
824 depends on DM_MDIO_MUX && DM_I2C
826 This driver is used for MDIO muxes driven by writing to a register of
827 an I2C chip. The board it was developed for uses a mux controlled by
828 on-board FPGA which in turn is accessed as a chip over I2C.
831 bool "Qualcomm IPQ4019 MDIO interface support"
834 This driver supports the MDIO interface found in Qualcomm
835 IPQ40xx series Soc-s.
838 bool "Marvell MDIO interface support"
841 This driver supports the MDIO interface found in the network
842 interface units of the Marvell EBU SoCs (Kirkwood, Orion5x,
843 Dove, Armada 370, Armada XP, Armada 37xx and Armada7K/8K/8KP).
845 This driver is used by the MVPP2 and MVNETA drivers.
848 bool "NXP Layerscape MDIO interface support"
851 This driver supports the MDIO bus found on the Fman 10G Ethernet MACs and
852 on the mEMAC (which supports both Clauses 22 and 45).
855 bool "Aspeed MDIO interface support"
858 This driver supports the MDIO bus of Aspeed AST2600 SOC. The driver
859 currently supports Clause 22.
861 config MDIO_MUX_MMIOREG
862 bool "MDIO MUX accessed as a MMIO register access"
863 depends on DM_MDIO_MUX
865 This driver is used for MDIO muxes driven by writing to a register in
866 the MMIO physical memory.
868 config MDIO_MUX_MESON_G12A
869 bool "MDIO MUX for Amlogic Meson G12A SoCs"
870 depends on DM_MDIO_MUX
872 This driver is used for the MDIO mux found on the Amlogic G12A & compatible