global: Move remaining CONFIG_SYS_* to CFG_SYS_*
[platform/kernel/u-boot.git] / drivers / net / Kconfig
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"
5
6 config ETH
7         def_bool y
8
9 config DM_ETH
10         bool
11         depends on DM
12         help
13           Enable driver model for Ethernet.
14
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.
18
19 config DM_MDIO
20         bool "Enable Driver Model for MDIO devices"
21         depends on PHYLIB
22         help
23           Enable driver model for MDIO devices
24
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
28           Ethernet interfaces.
29           This is currently implemented in net/mdio-uclass.c
30           Look in include/miiphy.h for details.
31
32 config DM_MDIO_MUX
33         bool "Enable Driver Model for MDIO MUX devices"
34         depends on DM_MDIO
35         help
36           Enable driver model for MDIO MUX devices
37
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
40           the MDIO bus.
41           This is currently implemented in net/mdio-mux-uclass.c
42           Look in include/miiphy.h for details.
43
44 config DM_DSA
45         bool "Enable Driver Model for DSA switches"
46         depends on DM_MDIO
47         depends on PHY_FIXED
48         help
49           Enable driver model for DSA switches
50
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.
58
59 config MDIO_SANDBOX
60         depends on DM_MDIO && SANDBOX
61         default y
62         bool "Sandbox: Mocked MDIO driver"
63         help
64           This driver implements dummy read/write/reset MDIO functions mimicking
65           a bus with a single PHY.
66
67           This driver is used in for testing in test/dm/mdio.c
68
69 config MDIO_MUX_SANDBOX
70         depends on DM_MDIO_MUX && MDIO_SANDBOX
71         default y
72         bool "Sandbox: Mocked MDIO-MUX driver"
73         help
74           This driver implements dummy select/deselect ops mimicking a MUX on
75           the MDIO bux.  It uses mdio_sandbox driver as parent MDIO.
76
77           This driver is used for testing in test/dm/mdio.c
78
79 config DM_ETH_PHY
80         bool "Enable Driver Model for Ethernet Generic PHY drivers"
81         depends on DM
82         help
83           Enable driver model for Ethernet Generic PHY .
84
85 config DSA_SANDBOX
86         depends on DM_DSA && SANDBOX
87         default y
88         bool "Sandbox: Mocked DSA driver"
89         help
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.
93
94 menuconfig NETDEVICES
95         bool "Network device support"
96         depends on NET
97         select DM_ETH
98         help
99           You must select Y to enable any network device support
100           Generally if you have any networking support this is a given
101
102           If unsure, say Y
103
104 if NETDEVICES
105
106 config PHY_GIGE
107         bool "Enable GbE PHY status parsing and configuration"
108         help
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).
112
113 config AG7XXX
114         bool "Atheros AG7xxx Ethernet MAC support"
115         depends on ARCH_ATH79
116         select PHYLIB
117         help
118           This driver supports the Atheros AG7xxx Ethernet MAC. This MAC is
119           present in the Atheros AR7xxx, AR9xxx and QCA9xxx MIPS chips.
120
121
122 config ALTERA_TSE
123         bool "Altera Triple-Speed Ethernet MAC support"
124         select PHYLIB
125         help
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.
129
130 config BCM_SF2_ETH
131         bool "Broadcom SF2 (Starfighter2) Ethernet support"
132         select PHYLIB
133         help
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.
137
138 config BCM_SF2_ETH_DEFAULT_PORT
139         int "Broadcom SF2 (Starfighter2) Ethernet default port number"
140         depends on BCM_SF2_ETH
141         default 0
142         help
143           Default port number for the Starfighter2 ethernet driver.
144
145 config BCM_SF2_ETH_GMAC
146         bool "Broadcom SF2 (Starfighter2) GMAC Ethernet support"
147         depends on BCM_SF2_ETH
148         help
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.
153
154 config BCM6348_ETH
155         bool "BCM6348 EMAC support"
156         depends on ARCH_BMIPS
157         select DMA
158         select DMA_CHANNELS
159         select MII
160         select PHYLIB
161         help
162           This driver supports the BCM6348 Ethernet MAC.
163
164 config BCM6368_ETH
165         bool "BCM6368 EMAC support"
166         depends on ARCH_BMIPS
167         select DMA
168         select MII
169         help
170           This driver supports the BCM6368 Ethernet MAC.
171
172 config BCMGENET
173         bool "BCMGENET V5 support"
174         select PHYLIB
175         help
176           This driver supports the BCMGENET Ethernet MAC.
177
178 config CORTINA_NI_ENET
179         bool "Cortina-Access Ethernet driver"
180         depends on CORTINA_PLATFORM
181         help
182           This driver supports the Cortina-Access Ethernet MAC for
183           all supported CAxxxx SoCs.
184
185 config CALXEDA_XGMAC
186         bool "Calxeda XGMAC support"
187         help
188           This driver supports the XGMAC in Calxeda Highbank and Midway
189           machines.
190
191 config DRIVER_DM9000
192         bool "Davicom DM9000 controller driver"
193         help
194           The Davicom DM9000 parallel bus external ethernet interface chip.
195
196 config DWC_ETH_QOS
197         bool "Synopsys DWC Ethernet QOS device support"
198         select PHYLIB
199         help
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.
203
204 config DWC_ETH_QOS_IMX
205         bool "Synopsys DWC Ethernet QOS device support for IMX"
206         depends on DWC_ETH_QOS
207         help
208           The Synopsys Designware Ethernet QOS IP block with the specific
209           configuration used in IMX soc.
210
211 config DWC_ETH_QOS_STM32
212         bool "Synopsys DWC Ethernet QOS device support for STM32"
213         depends on DWC_ETH_QOS
214         select DM_ETH_PHY
215         default y if ARCH_STM32MP
216         help
217           The Synopsys Designware Ethernet QOS IP block with the specific
218           configuration used in STM32MP soc.
219
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
224         help
225           The Synopsys Designware Ethernet QOS IP block with specific
226           configuration used in NVIDIA's Tegra186 chip.
227
228 config E1000
229         bool "Intel PRO/1000 Gigabit Ethernet support"
230         depends on PCI
231         help
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:
235
236           <http://support.intel.com/support/network/adapter/pro100/21397.htm>
237
238 config E1000_NO_NVM
239         bool "Intel PRO/1000 has no NVMEM / EEPROM"
240         depends on E1000
241
242 config E1000_SPI_GENERIC
243         bool "Allow access to the Intel 8257x SPI bus"
244         depends on E1000
245         help
246           Allow generic access to the SPI bus on the Intel 8257x, for
247           example with the "sspi" command.
248
249 config E1000_SPI
250         bool "Enable SPI bus utility code"
251         depends on E1000
252         help
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.
256
257 config CMD_E1000
258         bool "Enable the e1000 command"
259         depends on E1000
260         help
261           This enables the 'e1000' management command for E1000 devices. When
262           used on devices with SPI support you can reprogram the EEPROM from
263           U-Boot.
264
265 config EEPRO100
266         bool "Intel PRO/100 82557/82559/82559ER Fast Ethernet support"
267         help
268           This driver supports Intel(R) PRO/100 82557/82559/82559ER fast
269           ethernet family of adapters.
270
271 config ETH_SANDBOX
272         depends on SANDBOX
273         default y
274         bool "Sandbox: Mocked Ethernet driver"
275         help
276           This driver simply responds with fake ARP replies and ping
277           replies that are used to verify network stack functionality
278
279           This driver is particularly useful in the test/dm/eth.c tests
280
281 config ETH_SANDBOX_RAW
282         depends on SANDBOX
283         default y
284         bool "Sandbox: Bridge to Linux Raw Sockets"
285         help
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.
290
291 config ETH_DESIGNWARE
292         bool "Synopsys Designware Ethernet MAC"
293         select PHYLIB
294         imply ETH_DESIGNWARE_SOCFPGA if ARCH_SOCFPGA
295         help
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).
299
300 config ETH_DESIGNWARE_MESON8B
301         bool "Amlogic Meson8b and later glue driver for Synopsys Designware Ethernet MAC"
302         select ETH_DESIGNWARE
303         help
304           This provides glue layer to use Synopsys Designware Ethernet MAC
305           present on the Amlogic Meson8b, GX, AXG & G12A SoCs.
306
307 config ETH_DESIGNWARE_SOCFPGA
308         select REGMAP
309         select SYSCON
310         select DW_ALTDESCRIPTOR
311         bool "Altera SoCFPGA extras for Synopsys Designware Ethernet MAC"
312         depends on ETH_DESIGNWARE
313         help
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.
317
318 config ETH_DESIGNWARE_S700
319         bool "Actins S700 glue driver for Synopsys Designware Ethernet MAC"
320         depends on ETH_DESIGNWARE
321         help
322           This provides glue layer to use Synopsys Designware Ethernet MAC
323           present on Actions S700 SoC.
324
325 config DW_ALTDESCRIPTOR
326         bool "Designware Ethernet MAC uses alternate (enhanced) descriptors"
327         depends on ETH_DESIGNWARE
328
329 config ETHOC
330         bool "OpenCores 10/100 Mbps Ethernet MAC"
331         help
332           This MAC is present in OpenRISC and Xtensa XTFPGA boards.
333
334 config FEC_MXC_SHARE_MDIO
335         bool "Share the MDIO bus for FEC controller"
336         depends on FEC_MXC
337
338 config FEC_MXC_MDIO_BASE
339         hex "MDIO base address for the FEC controller"
340         depends on FEC_MXC_SHARE_MDIO
341         help
342           This specifies the MDIO registers base address. It is used when
343           two FEC controllers share MDIO bus.
344
345 config FEC_MXC
346         bool "FEC Ethernet controller"
347         depends on MX28 || MX5 || MX6 || MX7 || IMX8 || IMX8M || IMX8ULP || IMX93 || VF610
348         help
349           This driver supports the 10/100 Fast Ethernet controller for
350           NXP i.MX processors.
351
352 config FMAN_ENET
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
358         help
359           This driver support the Freescale FMan Ethernet controller
360
361 config SYS_FMAN_FW_ADDR
362         hex "FMAN Firmware Address"
363         depends on FMAN_ENET
364         default 0x0
365
366 config SYS_QE_FMAN_FW_LENGTH
367         hex "FMAN QE Firmware length"
368         depends on FMAN_ENET || QE || U_QE
369         default 0x10000
370
371 config SYS_FMAN_V3
372         bool
373         select FSL_MEMAC
374         help
375           SoC has FMan v3 with mEMAC
376
377 config FTMAC100
378         bool "Ftmac100 Ethernet Support"
379         help
380           This MAC is present in Andestech SoCs.
381
382 config FTGMAC100
383         bool "Ftgmac100 Ethernet Support"
384         select PHYLIB
385         help
386           This driver supports the Faraday's FTGMAC100 Gigabit SoC
387           Ethernet controller that can be found on Aspeed SoCs (which
388           include NCSI).
389
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.
400
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
404           applications.
405
406 config SYS_DISCOVER_PHY
407         bool
408
409 config MCFFEC
410         bool "ColdFire Ethernet Support"
411         select PHYLIB
412         select SYS_DISCOVER_PHY
413         help
414           This driver supports the network interface units in the
415           ColdFire family.
416
417 config SYS_UNIFY_CACHE
418         depends on MCFFEC
419         bool "Invalidate icache during ethernet operations"
420
421 config FSLDMAFEC
422         bool "ColdFire DMA Ethernet Support"
423         select PHYLIB
424         select SYS_DISCOVER_PHY
425         help
426           This driver supports the network interface units in the
427           ColdFire family.
428
429 config KS8851_MLL
430         bool "Microchip KS8851-MLL controller driver"
431         help
432           The Microchip KS8851 parallel bus external ethernet interface chip.
433
434 config KSZ9477
435         bool "Microchip KSZ9477 I2C controller driver"
436         depends on DM_DSA && DM_I2C
437         help
438           This driver implements a DSA switch driver for the KSZ9477 family
439           of GbE switches using the I2C interface.
440
441 config LITEETH
442         bool "LiteX LiteEth Ethernet MAC"
443         help
444          Driver for the LiteEth Ethernet MAC from LiteX.
445
446 config MVGBE
447         bool "Marvell Orion5x/Kirkwood network interface support"
448         depends on ARCH_KIRKWOOD || ARCH_ORION5X
449         select PHYLIB
450         help
451           This driver supports the network interface units in the
452           Marvell Orion5x and Kirkwood SoCs
453
454 config MVNETA
455         bool "Marvell Armada XP/385/3700 network interface support"
456         depends on ARMADA_XP || ARMADA_38X || ARMADA_3700 || ALLEYCAT_5
457         select PHYLIB
458         select DM_MDIO
459         help
460           This driver supports the network interface units in the
461           Marvell ARMADA XP, ARMADA 38X and ARMADA 3700 SoCs
462
463 config MVPP2
464         bool "Marvell Armada 375/7K/8K network interface support"
465         depends on ARMADA_375 || ARMADA_8K
466         select PHYLIB
467         select MVMDIO
468         select DM_MDIO
469         help
470           This driver supports the network interface units in the
471           Marvell ARMADA 375, 7K and 8K SoCs.
472
473 config MACB
474         bool "Cadence MACB/GEM Ethernet Interface"
475         select PHYLIB
476         help
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.
481
482 config MACB_ZYNQ
483         bool "Cadence MACB/GEM Ethernet Interface for Xilinx Zynq"
484         depends on MACB
485         help
486           The Cadence MACB ethernet interface was used on Zynq platform.
487           Say Y to enable support for the MACB/GEM in Zynq chip.
488
489 config MT7620_ETH
490         bool "MediaTek MT7620 Ethernet Interface"
491         depends on SOC_MT7620
492         select PHYLIB
493         select DM_RESET
494         select DM_GPIO
495         select CLK
496         help
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.
500
501 config MT7628_ETH
502         bool "MediaTek MT7628 Ethernet Interface"
503         depends on SOC_MT7628
504         select PHYLIB
505         help
506           The MediaTek MT7628 ethernet interface is used on MT7628 and
507           MT7688 based boards.
508
509 config NET_NPCM750
510         bool "Nuvoton NPCM750 Ethernet MAC"
511         help
512           support NPCM750 EMAC
513
514 config NET_OCTEON
515         bool "MIPS Octeon ethernet support"
516         depends on ARCH_OCTEON
517         help
518           You must select Y to enable network device support for
519           MIPS Octeon SoCs. If unsure, say n
520
521 config NET_OCTEONTX
522         bool "OcteonTX Ethernet support"
523         depends on ARCH_OCTEONTX
524         depends on PCI_SRIOV
525         help
526           You must select Y to enable network device support for
527           OcteonTX SoCs. If unsure, say n
528
529 config NET_OCTEONTX2
530         bool "OcteonTX2 Ethernet support"
531         depends on ARCH_OCTEONTX2
532         select OCTEONTX2_CGX_INTF
533         help
534           You must select Y to enable network device support for
535           OcteonTX2 SoCs. If unsure, say n
536
537 config OCTEONTX_SMI
538         bool "OcteonTX SMI Device support"
539         depends on ARCH_OCTEONTX || ARCH_OCTEONTX2
540         help
541           You must select Y to enable SMI controller support for
542           OcteonTX or OcteonTX2 SoCs. If unsure, say n
543
544 config OCTEONTX2_CGX_INTF
545         bool "OcteonTX2 CGX ATF interface support"
546         depends on ARCH_OCTEONTX2
547         default y if ARCH_OCTEONTX2
548         help
549           You must select Y to enable CGX ATF interface support for
550           OcteonTX2 SoCs. If unsure, say n
551
552 config PCH_GBE
553         bool "Intel Platform Controller Hub EG20T GMAC driver"
554         select PHYLIB
555         help
556           This MAC is present in Intel Platform Controller Hub EG20T. It
557           supports 10/100/1000 Mbps operation.
558
559 config RGMII
560         bool "Enable RGMII"
561         help
562           Enable the support of the Reduced Gigabit Media-Independent
563           Interface (RGMII).
564
565 config MII
566         bool "Enable MII"
567         help
568           Enable support of the Media-Independent Interface (MII)
569
570 config RMII
571         bool "Enable RMII"
572         help
573           Enable support of the Reduced Media-Independent Interface (MII)
574
575 config PCNET
576         bool "AMD PCnet series Ethernet controller driver"
577         help
578           This driver supports AMD PCnet series fast ethernet family of
579           PCI chipsets/adapters.
580
581 source "drivers/net/qe/Kconfig"
582
583 config RTL8139
584         bool "Realtek 8139 series Ethernet controller driver"
585         help
586           This driver supports Realtek 8139 series fast ethernet family of
587           PCI chipsets/adapters.
588
589 config RTL8169
590         bool "Realtek 8169 series Ethernet controller driver"
591         help
592           This driver supports Realtek 8169 series gigabit ethernet family of
593           PCI/PCIe chipsets/adapters.
594
595 config SJA1105
596         bool "NXP SJA1105 Ethernet switch family driver"
597         depends on DM_DSA && DM_SPI
598         select BITREVERSE
599         help
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)
610
611 config SMC911X
612         bool "SMSC LAN911x and LAN921x controller driver"
613
614 config SMC911X_32_BIT
615         bool "Enable SMC911X 32-bit interface"
616         depends on SMC911X
617         help
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".
621
622 config SUN7I_GMAC
623         bool "Enable Allwinner GMAC Ethernet support"
624         help
625           Enable the support for Sun7i GMAC Ethernet controller
626
627 config SUN7I_GMAC_FORCE_TXERR
628         bool "Force PA17 as gmac function"
629         depends on SUN7I_GMAC
630         help
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.
634
635 config SUN4I_EMAC
636         bool "Allwinner Sun4i Ethernet MAC support"
637         select PHYLIB
638         help
639           This driver supports the Allwinner based SUN4I Ethernet MAC.
640
641 config SUN8I_EMAC
642         bool "Allwinner Sun8i Ethernet MAC support"
643         select PHYLIB
644         select PHY_GIGE
645         help
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.
649
650 config SH_ETHER
651         bool "Renesas SH Ethernet MAC"
652         select PHYLIB
653         help
654           This driver supports the Ethernet for Renesas SH and ARM SoCs.
655
656 source "drivers/net/ti/Kconfig"
657
658 config TULIP
659         bool "DEC Tulip DC2114x Ethernet support"
660         help
661           This driver supports DEC DC2114x Fast ethernet chips.
662
663 config XILINX_AXIEMAC
664         select PHYLIB
665         select MII
666         bool "Xilinx AXI Ethernet"
667         help
668           This MAC is present in Xilinx Microblaze, Zynq and ZynqMP SoCs.
669
670 config XILINX_AXIMRMAC
671         depends on ARCH_VERSAL
672         bool "Xilinx AXI MRMAC"
673         help
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
677           Versal designs.
678
679 config XILINX_EMACLITE
680         select PHYLIB
681         select MII
682         bool "Xilinx Ethernetlite"
683         help
684           This MAC is present in Xilinx Microblaze, Zynq and ZynqMP SoCs.
685
686 config ZYNQ_GEM
687         select PHYLIB
688         bool "Xilinx Ethernet GEM"
689         help
690           This MAC is present in Xilinx Zynq and ZynqMP SoCs.
691
692 config PIC32_ETH
693         bool "Microchip PIC32 Ethernet Support"
694         depends on MACH_PIC32
695         select PHYLIB
696         help
697           This driver implements 10/100 Mbps Ethernet and MAC layer for
698           Microchip PIC32 microcontrollers.
699
700 config GMAC_ROCKCHIP
701         bool "Rockchip Synopsys Designware Ethernet MAC"
702         depends on ETH_DESIGNWARE
703         help
704           This driver provides Rockchip SoCs network support based on the
705           Synopsys Designware driver.
706
707 config RENESAS_RAVB
708         bool "Renesas Ethernet AVB MAC"
709         depends on RCAR_GEN3
710         select PHYLIB
711         help
712           This driver implements support for the Ethernet AVB block in
713           Renesas M3 and H3 SoCs.
714
715 config MPC8XX_FEC
716         bool "Fast Ethernet Controller on MPC8XX"
717         depends on MPC8xx
718         depends on DM_ETH
719         select MII
720         select SYS_DISCOVER_PHY
721         help
722           This driver implements support for the Fast Ethernet Controller
723           on MPC8XX
724
725 config SNI_AVE
726         bool "Socionext AVE Ethernet support"
727         depends on ARCH_UNIPHIER
728         select PHYLIB
729         select SYSCON
730         select REGMAP
731         help
732           This driver implements support for the Socionext AVE Ethernet
733           controller, as found on the Socionext UniPhier family.
734
735 config SNI_NETSEC
736         bool "Socionext NETSEC Ethernet support"
737         depends on SYNQUACER_SPI
738         select PHYLIB
739         help
740           This driver implements support for the Socionext SynQuacer NETSEC
741           ethernet controller, as found on the Socionext SynQuacer family.
742
743 source "drivers/net/mscc_eswitch/Kconfig"
744
745 config ETHER_ON_FEC1
746         bool "FEC1"
747         depends on MPC8XX_FEC
748         default y
749
750 config FEC1_PHY
751         int "FEC1 PHY"
752         depends on ETHER_ON_FEC1
753         default -1
754         help
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
759
760           When set to -1, means to probe for first available.
761
762 config PHY_NORXERR
763         bool "PHY_NORXERR"
764         depends on ETHER_ON_FEC1
765         help
766           The PHY does not have a RXERR line (RMII only).
767           (so program the FEC to ignore it).
768
769 config ETHER_ON_FEC2
770         bool "FEC2"
771         depends on MPC8XX_FEC && MPC885
772         default y
773
774 config FEC2_PHY
775         int "FEC2 PHY"
776         depends on ETHER_ON_FEC2
777         default -1
778         help
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
783
784           When set to -1, means to probe for first available.
785
786 config FEC2_PHY_NORXERR
787         bool "PHY_NORXERR"
788         depends on ETHER_ON_FEC2
789         help
790           The PHY does not have a RXERR line (RMII only).
791           (so program the FEC to ignore it).
792
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 || \
797                      ARCH_B4420 || \
798                      ARCH_P1023 || \
799                      ARCH_P2041 || \
800                      ARCH_T1024 || \
801                      ARCH_T1040 || \
802                      ARCH_T1042 || \
803                      ARCH_T2080 || \
804                      ARCH_T4240 || \
805                      ARCH_P4080 || \
806                      ARCH_P3041 || \
807                      ARCH_P5040 || \
808                      ARCH_LS1043A || \
809                      ARCH_LS1046A
810         help
811           QBman fixups to allow deep sleep in DPAA 1 SOCs
812
813 config SYS_FSL_QMAN_V3
814         bool # QMAN version 3
815         depends on SYS_DPAA_QBMAN
816
817 config TSEC_ENET
818         select PHYLIB
819         bool "Enable Three-Speed Ethernet Controller"
820         help
821           This driver implements support for the (Enhanced) Three-Speed
822           Ethernet Controller found on Freescale SoCs.
823
824 config MEDIATEK_ETH
825         bool "MediaTek Ethernet GMAC Driver"
826         select PHYLIB
827         select DM_GPIO
828         select DM_RESET
829         help
830           This Driver support MediaTek Ethernet GMAC
831           Say Y to enable support for the MediaTek Ethernet GMAC.
832
833 config HIGMACV300_ETH
834         bool "HiSilicon Gigabit Ethernet Controller"
835         select DM_RESET
836         select PHYLIB
837         help
838           This driver supports HIGMACV300 Ethernet controller found on
839           HiSilicon SoCs.
840
841 config FSL_ENETC
842         bool "NXP ENETC Ethernet controller"
843         depends on DM_MDIO
844         help
845           This driver supports the NXP ENETC Ethernet controller found on some
846           of the NXP SoCs.
847
848 config MDIO_MUX_I2CREG
849         bool "MDIO MUX accessed as a register over I2C"
850         depends on DM_MDIO_MUX && DM_I2C
851         help
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.
855
856 config MDIO_IPQ4019
857         bool "Qualcomm IPQ4019 MDIO interface support"
858         depends on DM_MDIO
859         help
860           This driver supports the MDIO interface found in Qualcomm
861           IPQ40xx series Soc-s.
862
863 config MVMDIO
864         bool "Marvell MDIO interface support"
865         depends on DM_MDIO
866         help
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).
870
871           This driver is used by the MVPP2 and MVNETA drivers.
872
873 config FSL_LS_MDIO
874         bool "NXP Layerscape MDIO interface support"
875         depends on DM_MDIO
876         help
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).
879
880 config ASPEED_MDIO
881         bool "Aspeed MDIO interface support"
882         depends on DM_MDIO
883         help
884           This driver supports the MDIO bus of Aspeed AST2600 SOC.  The driver
885           currently supports Clause 22.
886
887 config MDIO_MUX_MMIOREG
888         bool "MDIO MUX accessed as a MMIO register access"
889         depends on DM_MDIO_MUX
890         help
891           This driver is used for MDIO muxes driven by writing to a register in
892           the MMIO physical memory.
893
894 config MDIO_MUX_MESON_G12A
895         bool "MDIO MUX for Amlogic Meson G12A SoCs"
896         depends on DM_MDIO_MUX
897         help
898           This driver is used for the MDIO mux found on the Amlogic G12A & compatible
899           SoCs.
900
901 endif # NETDEVICES