1 source "drivers/net/phy/Kconfig"
2 source "drivers/net/pfe_eth/Kconfig"
3 source "drivers/net/fsl-mc/Kconfig"
6 bool "Enable Driver Model for Ethernet drivers"
9 Enable driver model for Ethernet.
11 The eth_*() interface will be implemented by the UCLASS_ETH class
12 This is currently implemented in net/eth-uclass.c
13 Look in include/net.h for details.
16 bool "Enable Driver Model for MDIO devices"
17 depends on DM_ETH && PHYLIB
19 Enable driver model for MDIO devices
21 Adds UCLASS_MDIO DM class supporting MDIO buses that are probed as
22 stand-alone devices. Useful in particular for systems that support
23 DM_ETH and have a stand-alone MDIO hardware block shared by multiple
25 This is currently implemented in net/mdio-uclass.c
26 Look in include/miiphy.h for details.
29 bool "Enable Driver Model for MDIO MUX devices"
32 Enable driver model for MDIO MUX devices
34 Adds UCLASS_MDIO_MUX DM class supporting MDIO MUXes. Useful for
35 systems that support DM_MDIO and integrate one or multiple muxes on
37 This is currently implemented in net/mdio-mux-uclass.c
38 Look in include/miiphy.h for details.
41 bool "Enable Driver Model for DSA switches"
42 depends on DM_ETH && DM_MDIO
45 Enable driver model for DSA switches
47 Adds UCLASS_DSA class supporting switches that follow the Distributed
48 Switch Architecture (DSA). These switches rely on the presence of a
49 management switch port connected to an Ethernet controller capable of
50 receiving frames from the switch. This host Ethernet controller is
51 called the "master" Ethernet interface in DSA terminology.
52 This is currently implemented in net/dsa-uclass.c, refer to
53 include/net/dsa.h for API details.
56 depends on DM_MDIO && SANDBOX
58 bool "Sandbox: Mocked MDIO driver"
60 This driver implements dummy read/write/reset MDIO functions mimicking
61 a bus with a single PHY.
63 This driver is used in for testing in test/dm/mdio.c
65 config MDIO_MUX_SANDBOX
66 depends on DM_MDIO_MUX && MDIO_SANDBOX
68 bool "Sandbox: Mocked MDIO-MUX driver"
70 This driver implements dummy select/deselect ops mimicking a MUX on
71 the MDIO bux. It uses mdio_sandbox driver as parent MDIO.
73 This driver is used for testing in test/dm/mdio.c
76 bool "Enable Driver Model for Ethernet Generic PHY drivers"
79 Enable driver model for Ethernet Generic PHY .
82 depends on DM_DSA && SANDBOX
84 bool "Sandbox: Mocked DSA driver"
86 This driver implements a dummy DSA switch connected to a dummy sandbox
87 Ethernet device used as DSA master, to test DSA class code, including
88 exported DSA API and datapath processing of Ethernet traffic.
91 bool "Network device support"
95 You must select Y to enable any network device support
96 Generally if you have any networking support this is a given
103 bool "Enable GbE PHY status parsing and configuration"
105 Enables support for parsing the status output and for
106 configuring GbE PHYs (affects the inner workings of some
107 commands and miiphyutil.c).
110 bool "Atheros AG7xxx Ethernet MAC support"
111 depends on DM_ETH && ARCH_ATH79
114 This driver supports the Atheros AG7xxx Ethernet MAC. This MAC is
115 present in the Atheros AR7xxx, AR9xxx and QCA9xxx MIPS chips.
119 bool "Altera Triple-Speed Ethernet MAC support"
123 This driver supports the Altera Triple-Speed (TSE) Ethernet MAC.
124 Please find details on the "Triple-Speed Ethernet MegaCore Function
125 Resource Center" of Altera.
128 bool "Broadcom SF2 (Starfighter2) Ethernet support"
131 This is an abstract framework which provides a generic interface
132 to MAC and DMA management for multiple Broadcom SoCs such as
133 Cygnus, NSP and bcm28155_ap platforms.
135 config BCM_SF2_ETH_DEFAULT_PORT
136 int "Broadcom SF2 (Starfighter2) Ethernet default port number"
137 depends on BCM_SF2_ETH
140 Default port number for the Starfighter2 ethernet driver.
142 config BCM_SF2_ETH_GMAC
143 bool "Broadcom SF2 (Starfighter2) GMAC Ethernet support"
144 depends on BCM_SF2_ETH
146 This flag enables the ethernet support for Broadcom platforms with
147 GMAC such as Cygnus. This driver is based on the framework provided
148 by the BCM_SF2_ETH driver.
149 Say Y to any bcmcygnus based platforms.
152 bool "BCM6348 EMAC support"
153 depends on DM_ETH && ARCH_BMIPS
159 This driver supports the BCM6348 Ethernet MAC.
162 bool "BCM6368 EMAC support"
163 depends on DM_ETH && ARCH_BMIPS
167 This driver supports the BCM6368 Ethernet MAC.
170 bool "BCMGENET V5 support"
174 This driver supports the BCMGENET Ethernet MAC.
176 config CORTINA_NI_ENET
177 bool "Cortina-Access Ethernet driver"
178 depends on DM_ETH && CORTINA_PLATFORM
180 This driver supports the Cortina-Access Ethernet MAC for
181 all supported CAxxxx SoCs.
184 bool "Calxeda XGMAC support"
187 This driver supports the XGMAC in Calxeda Highbank and Midway
191 bool "Synopsys DWC Ethernet QOS device support"
195 This driver supports the Synopsys Designware Ethernet QOS (Quality
196 Of Service) IP block. The IP supports many options for bus type,
197 clocking/reset structure, and feature list.
199 config DWC_ETH_QOS_IMX
200 bool "Synopsys DWC Ethernet QOS device support for IMX"
201 depends on DWC_ETH_QOS
203 The Synopsys Designware Ethernet QOS IP block with the specific
204 configuration used in IMX soc.
206 config DWC_ETH_QOS_STM32
207 bool "Synopsys DWC Ethernet QOS device support for STM32"
208 depends on DWC_ETH_QOS
210 default y if ARCH_STM32MP
212 The Synopsys Designware Ethernet QOS IP block with the specific
213 configuration used in STM32MP soc.
215 config DWC_ETH_QOS_TEGRA186
216 bool "Synopsys DWC Ethernet QOS device support for TEGRA186"
217 depends on DWC_ETH_QOS
218 default y if TEGRA186
220 The Synopsys Designware Ethernet QOS IP block with specific
221 configuration used in NVIDIA's Tegra186 chip.
224 bool "Intel PRO/1000 Gigabit Ethernet support"
225 depends on (DM_ETH && DM_PCI) || !DM_ETH
227 This driver supports Intel(R) PRO/1000 gigabit ethernet family of
228 adapters. For more information on how to identify your adapter, go
229 to the Adapter & Driver ID Guide at:
231 <http://support.intel.com/support/network/adapter/pro100/21397.htm>
233 config E1000_SPI_GENERIC
234 bool "Allow access to the Intel 8257x SPI bus"
237 Allow generic access to the SPI bus on the Intel 8257x, for
238 example with the "sspi" command.
241 bool "Enable SPI bus utility code"
244 Utility code for direct access to the SPI bus on Intel 8257x.
245 This does not do anything useful unless you set at least one
246 of CONFIG_CMD_E1000 or CONFIG_E1000_SPI_GENERIC.
249 bool "Enable the e1000 command"
252 This enables the 'e1000' management command for E1000 devices. When
253 used on devices with SPI support you can reprogram the EEPROM from
257 bool "Intel PRO/100 82557/82559/82559ER Fast Ethernet support"
259 This driver supports Intel(R) PRO/100 82557/82559/82559ER fast
260 ethernet family of adapters.
263 depends on DM_ETH && SANDBOX
265 bool "Sandbox: Mocked Ethernet driver"
267 This driver simply responds with fake ARP replies and ping
268 replies that are used to verify network stack functionality
270 This driver is particularly useful in the test/dm/eth.c tests
272 config ETH_SANDBOX_RAW
273 depends on DM_ETH && SANDBOX
275 bool "Sandbox: Bridge to Linux Raw Sockets"
277 This driver is a bridge from the bottom of the network stack
278 in U-Boot to the RAW AF_PACKET API in Linux. This allows real
279 network traffic to be tested from within sandbox. See
280 doc/arch/index.rst for more details.
282 config ETH_DESIGNWARE
283 bool "Synopsys Designware Ethernet MAC"
285 imply ETH_DESIGNWARE_SOCFPGA if ARCH_SOCFPGA
287 This MAC is present in SoCs from various vendors. It supports
288 100Mbit and 1 Gbit operation. You must enable CONFIG_PHYLIB to
289 provide the PHY (physical media interface).
291 config ETH_DESIGNWARE_MESON8B
292 bool "Amlogic Meson8b and later glue driver for Synopsys Designware Ethernet MAC"
294 select ETH_DESIGNWARE
296 This provides glue layer to use Synopsys Designware Ethernet MAC
297 present on the Amlogic Meson8b, GX, AXG & G12A SoCs.
299 config ETH_DESIGNWARE_SOCFPGA
302 bool "Altera SoCFPGA extras for Synopsys Designware Ethernet MAC"
303 depends on DM_ETH && ETH_DESIGNWARE
305 The Altera SoCFPGA requires additional configuration of the
306 Altera system manager to correctly interface with the PHY.
307 This code handles those SoC specifics.
309 config ETH_DESIGNWARE_S700
310 bool "Actins S700 glue driver for Synopsys Designware Ethernet MAC"
311 depends on DM_ETH && ETH_DESIGNWARE
313 This provides glue layer to use Synopsys Designware Ethernet MAC
314 present on Actions S700 SoC.
317 bool "OpenCores 10/100 Mbps Ethernet MAC"
319 This MAC is present in OpenRISC and Xtensa XTFPGA boards.
321 config FEC_MXC_SHARE_MDIO
322 bool "Share the MDIO bus for FEC controller"
325 config FEC_MXC_MDIO_BASE
326 hex "MDIO base address for the FEC controller"
327 depends on FEC_MXC_SHARE_MDIO
329 This specifies the MDIO registers base address. It is used when
330 two FEC controllers share MDIO bus.
333 bool "FEC Ethernet controller"
334 depends on MX28 || MX5 || MX6 || MX7 || IMX8 || IMX8M || IMX8ULP || VF610
336 This driver supports the 10/100 Fast Ethernet controller for
340 bool "Freescale FMan ethernet support"
341 depends on ARM || PPC
343 This driver support the Freescale FMan Ethernet controller
346 bool "Ftmac100 Ethernet Support"
348 This MAC is present in Andestech SoCs.
351 bool "Ftgmac100 Ethernet Support"
355 This driver supports the Faraday's FTGMAC100 Gigabit SoC
356 Ethernet controller that can be found on Aspeed SoCs (which
359 It is fully compliant with IEEE 802.3 specification for
360 10/100 Mbps Ethernet and IEEE 802.3z specification for 1000
361 Mbps Ethernet and includes Reduced Media Independent
362 Interface (RMII) and Reduced Gigabit Media Independent
363 Interface (RGMII) interfaces. It adopts an AHB bus interface
364 and integrates a link list DMA engine with direct M-Bus
365 accesses for transmitting and receiving packets. It has
366 independent TX/RX fifos, supports half and full duplex (1000
367 Mbps mode only supports full duplex), flow control for full
368 duplex and backpressure for half duplex.
370 The FTGMAC100 also implements IP, TCP, UDP checksum offloads
371 and supports IEEE 802.1Q VLAN tag insertion and removal. It
372 offers high-priority transmit queue for QoS and CoS
377 bool "ColdFire Ethernet Support"
381 This driver supports the network interface units in the
385 bool "ColdFire DMA Ethernet Support"
389 This driver supports the network interface units in the
393 bool "Microchip KS8851-MLL controller driver"
395 The Microchip KS8851 parallel bus external ethernet interface chip.
399 config KS8851_MLL_BASEADDR
400 hex "Microchip KS8851-MLL Base Address"
402 Define this to hold the physical address of the device (I/O space)
407 bool "Microchip KSZ9477 I2C controller driver"
408 depends on DM_DSA && DM_I2C
410 This driver implements a DSA switch driver for the KSZ9477 family
411 of GbE switches using the I2C interface.
414 bool "Marvell Orion5x/Kirkwood network interface support"
415 depends on ARCH_KIRKWOOD || ARCH_ORION5X
416 select PHYLIB if DM_ETH
418 This driver supports the network interface units in the
419 Marvell Orion5x and Kirkwood SoCs
422 bool "Marvell Armada XP/385/3700 network interface support"
423 depends on ARMADA_XP || ARMADA_38X || ARMADA_3700
426 This driver supports the network interface units in the
427 Marvell ARMADA XP, ARMADA 38X and ARMADA 3700 SoCs
430 bool "Marvell Armada 375/7K/8K network interface support"
431 depends on ARMADA_375 || ARMADA_8K
436 This driver supports the network interface units in the
437 Marvell ARMADA 375, 7K and 8K SoCs.
440 bool "Cadence MACB/GEM Ethernet Interface"
444 The Cadence MACB ethernet interface is found on many Atmel
445 AT91 and SAMA5 parts. This driver also supports the Cadence
446 GEM (Gigabit Ethernet MAC) found in some ARM SoC devices.
447 Say Y to include support for the MACB/GEM chip.
450 bool "Cadence MACB/GEM Ethernet Interface for Xilinx Zynq"
453 The Cadence MACB ethernet interface was used on Zynq platform.
454 Say Y to enable support for the MACB/GEM in Zynq chip.
457 bool "MediaTek MT7620 Ethernet Interface"
458 depends on SOC_MT7620
464 The MediaTek MT7620 ethernet interface is used on MT7620 based
465 boards. It has a built-in switch with two configurable ports which
466 can connect to external PHY/MACs.
469 bool "MediaTek MT7628 Ethernet Interface"
470 depends on SOC_MT7628
473 The MediaTek MT7628 ethernet interface is used on MT7628 and
477 bool "OcteonTX Ethernet support"
478 depends on ARCH_OCTEONTX
481 You must select Y to enable network device support for
482 OcteonTX SoCs. If unsure, say n
485 bool "OcteonTX2 Ethernet support"
486 depends on ARCH_OCTEONTX2
487 select OCTEONTX2_CGX_INTF
489 You must select Y to enable network device support for
490 OcteonTX2 SoCs. If unsure, say n
493 bool "OcteonTX SMI Device support"
494 depends on ARCH_OCTEONTX || ARCH_OCTEONTX2
496 You must select Y to enable SMI controller support for
497 OcteonTX or OcteonTX2 SoCs. If unsure, say n
499 config OCTEONTX2_CGX_INTF
500 bool "OcteonTX2 CGX ATF interface support"
501 depends on ARCH_OCTEONTX2
502 default y if ARCH_OCTEONTX2
504 You must select Y to enable CGX ATF interface support for
505 OcteonTX2 SoCs. If unsure, say n
508 bool "Intel Platform Controller Hub EG20T GMAC driver"
509 depends on DM_ETH && DM_PCI
512 This MAC is present in Intel Platform Controller Hub EG20T. It
513 supports 10/100/1000 Mbps operation.
518 Enable the support of the Reduced Gigabit Media-Independent
524 Enable support of the Media-Independent Interface (MII)
527 bool "AMD PCnet series Ethernet controller driver"
529 This driver supports AMD PCnet series fast ethernet family of
530 PCI chipsets/adapters.
532 source "drivers/net/qe/Kconfig"
535 bool "Realtek 8139 series Ethernet controller driver"
537 This driver supports Realtek 8139 series fast ethernet family of
538 PCI chipsets/adapters.
541 bool "Realtek 8169 series Ethernet controller driver"
543 This driver supports Realtek 8169 series gigabit ethernet family of
544 PCI/PCIe chipsets/adapters.
547 bool "SMSC LAN911x and LAN921x controller driver"
553 hex "SMC911X Base Address"
555 Define this to hold the physical address
556 of the device (I/O space)
559 config SMC911X_32_BIT
560 bool "Enable SMC911X 32-bit interface"
562 Define this if data bus is 32 bits. If your processor use a
563 narrower 16 bit bus or cannot convert one 32 bit word to two 16 bit
564 words, leave this to "n".
569 bool "Enable Allwinner GMAC Ethernet support"
571 Enable the support for Sun7i GMAC Ethernet controller
573 config SUN7I_GMAC_FORCE_TXERR
574 bool "Force PA17 as gmac function"
575 depends on SUN7I_GMAC
577 Some ethernet phys needs TXERR control. Since the GMAC
578 doesn't have such signal, setting PA17 as GMAC function
579 makes the pin output low, which enables data transmission.
582 bool "Allwinner Sun4i Ethernet MAC support"
586 This driver supports the Allwinner based SUN4I Ethernet MAC.
589 bool "Allwinner Sun8i Ethernet MAC support"
594 This driver supports the Allwinner based SUN8I/SUN50I Ethernet MAC.
595 It can be found in H3/A64/A83T based SoCs and compatible with both
596 External and Internal PHYs.
599 bool "Renesas SH Ethernet MAC"
602 This driver supports the Ethernet for Renesas SH and ARM SoCs.
604 source "drivers/net/ti/Kconfig"
607 bool "DEC Tulip DC2114x Ethernet support"
608 depends on (DM_ETH && DM_PCI) || !DM_ETH
610 This driver supports DEC DC2114x Fast ethernet chips.
612 config XILINX_AXIEMAC
616 bool "Xilinx AXI Ethernet"
618 This MAC is present in Xilinx Microblaze, Zynq and ZynqMP SoCs.
620 config XILINX_AXIMRMAC
621 depends on DM_ETH && ARCH_VERSAL
622 bool "Xilinx AXI MRMAC"
624 MRMAC is a high performance, low latency, adaptable Ethernet
625 integrated hard IP. This can be configured up to four ports with MAC
626 rates from 10GE to 100GE. This could be present in some of the Xilinx
629 config XILINX_EMACLITE
633 bool "Xilinx Ethernetlite"
635 This MAC is present in Xilinx Microblaze, Zynq and ZynqMP SoCs.
640 bool "Xilinx Ethernet GEM"
642 This MAC is present in Xilinx Zynq and ZynqMP SoCs.
645 bool "Microchip PIC32 Ethernet Support"
646 depends on DM_ETH && MACH_PIC32
649 This driver implements 10/100 Mbps Ethernet and MAC layer for
650 Microchip PIC32 microcontrollers.
653 bool "Rockchip Synopsys Designware Ethernet MAC"
654 depends on DM_ETH && ETH_DESIGNWARE
656 This driver provides Rockchip SoCs network support based on the
657 Synopsys Designware driver.
660 bool "Renesas Ethernet AVB MAC"
661 depends on DM_ETH && RCAR_GEN3
664 This driver implements support for the Ethernet AVB block in
665 Renesas M3 and H3 SoCs.
668 bool "Fast Ethernet Controller on MPC8XX"
672 This driver implements support for the Fast Ethernet Controller
676 bool "Socionext AVE Ethernet support"
677 depends on DM_ETH && ARCH_UNIPHIER
682 This driver implements support for the Socionext AVE Ethernet
683 controller, as found on the Socionext UniPhier family.
686 bool "Socionext NETSEC Ethernet support"
687 depends on DM_ETH && SYNQUACER_SPI
690 This driver implements support for the Socionext SynQuacer NETSEC
691 ethernet controller, as found on the Socionext SynQuacer family.
693 source "drivers/net/mscc_eswitch/Kconfig"
697 depends on MPC8XX_FEC
702 depends on ETHER_ON_FEC1
705 Define to the hardcoded PHY address which corresponds
706 to the given FEC; i. e.
707 #define CONFIG_FEC1_PHY 4
708 means that the PHY with address 4 is connected to FEC1
710 When set to -1, means to probe for first available.
714 depends on ETHER_ON_FEC1
716 The PHY does not have a RXERR line (RMII only).
717 (so program the FEC to ignore it).
721 depends on MPC8XX_FEC && MPC885
726 depends on ETHER_ON_FEC2
729 Define to the hardcoded PHY address which corresponds
730 to the given FEC; i. e.
731 #define CONFIG_FEC1_PHY 4
732 means that the PHY with address 4 is connected to FEC1
734 When set to -1, means to probe for first available.
736 config FEC2_PHY_NORXERR
738 depends on ETHER_ON_FEC2
740 The PHY does not have a RXERR line (RMII only).
741 (so program the FEC to ignore it).
743 config SYS_DPAA_QBMAN
744 bool "Device tree fixup for QBMan on freescale SOCs"
745 depends on (ARM || PPC) && !SPL_BUILD
746 default y if ARCH_B4860 || \
761 QBman fixups to allow deep sleep in DPAA 1 SOCs
765 bool "Enable Three-Speed Ethernet Controller"
767 This driver implements support for the (Enhanced) Three-Speed
768 Ethernet Controller found on Freescale SoCs.
771 bool "MediaTek Ethernet GMAC Driver"
777 This Driver support MediaTek Ethernet GMAC
778 Say Y to enable support for the MediaTek Ethernet GMAC.
780 config HIGMACV300_ETH
781 bool "HiSilicon Gigabit Ethernet Controller"
786 This driver supports HIGMACV300 Ethernet controller found on
790 bool "NXP ENETC Ethernet controller"
791 depends on DM_PCI && DM_ETH && DM_MDIO
793 This driver supports the NXP ENETC Ethernet controller found on some
796 config MDIO_MUX_I2CREG
797 bool "MDIO MUX accessed as a register over I2C"
798 depends on DM_MDIO_MUX && DM_I2C
800 This driver is used for MDIO muxes driven by writing to a register of
801 an I2C chip. The board it was developed for uses a mux controlled by
802 on-board FPGA which in turn is accessed as a chip over I2C.
805 bool "Qualcomm IPQ4019 MDIO interface support"
808 This driver supports the MDIO interface found in Qualcomm
809 IPQ40xx series Soc-s.
812 bool "Marvell MDIO interface support"
815 This driver supports the MDIO interface found in the network
816 interface units of the Marvell EBU SoCs (Kirkwood, Orion5x,
817 Dove, Armada 370, Armada XP, Armada 37xx and Armada7K/8K/8KP).
819 This driver is used by the MVPP2 and MVNETA drivers.
822 bool "NXP Layerscape MDIO interface support"
825 This driver supports the MDIO bus found on the Fman 10G Ethernet MACs and
826 on the mEMAC (which supports both Clauses 22 and 45).
828 config MDIO_MUX_MMIOREG
829 bool "MDIO MUX accessed as a MMIO register access"
830 depends on DM_MDIO_MUX
832 This driver is used for MDIO muxes driven by writing to a register in
833 the MMIO physical memory.
835 config MDIO_MUX_MESON_G12A
836 bool "MDIO MUX for Amlogic Meson G12A SoCs"
837 depends on DM_MDIO_MUX
839 This driver is used for the MDIO mux found on the Amlogic G12A & compatible