e054bec46ed9f1e9272247e9822ba2293c549e0c
[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
5 config ETH
6         def_bool y
7
8 config DM_ETH
9         bool "Enable Driver Model for Ethernet drivers"
10         depends on DM
11         help
12           Enable driver model for Ethernet.
13
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.
17
18 config DM_MDIO
19         bool "Enable Driver Model for MDIO devices"
20         depends on DM_ETH && PHYLIB
21         help
22           Enable driver model for MDIO devices
23
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
27           Ethernet interfaces.
28           This is currently implemented in net/mdio-uclass.c
29           Look in include/miiphy.h for details.
30
31 config DM_MDIO_MUX
32         bool "Enable Driver Model for MDIO MUX devices"
33         depends on DM_MDIO
34         help
35           Enable driver model for MDIO MUX devices
36
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
39           the MDIO bus.
40           This is currently implemented in net/mdio-mux-uclass.c
41           Look in include/miiphy.h for details.
42
43 config DM_DSA
44         bool "Enable Driver Model for DSA switches"
45         depends on DM_ETH && DM_MDIO
46         depends on PHY_FIXED
47         help
48           Enable driver model for DSA switches
49
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.
57
58 config MDIO_SANDBOX
59         depends on DM_MDIO && SANDBOX
60         default y
61         bool "Sandbox: Mocked MDIO driver"
62         help
63           This driver implements dummy read/write/reset MDIO functions mimicking
64           a bus with a single PHY.
65
66           This driver is used in for testing in test/dm/mdio.c
67
68 config MDIO_MUX_SANDBOX
69         depends on DM_MDIO_MUX && MDIO_SANDBOX
70         default y
71         bool "Sandbox: Mocked MDIO-MUX driver"
72         help
73           This driver implements dummy select/deselect ops mimicking a MUX on
74           the MDIO bux.  It uses mdio_sandbox driver as parent MDIO.
75
76           This driver is used for testing in test/dm/mdio.c
77
78 config DM_ETH_PHY
79         bool "Enable Driver Model for Ethernet Generic PHY drivers"
80         depends on DM
81         help
82           Enable driver model for Ethernet Generic PHY .
83
84 config DSA_SANDBOX
85         depends on DM_DSA && SANDBOX
86         default y
87         bool "Sandbox: Mocked DSA driver"
88         help
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.
92
93 menuconfig NETDEVICES
94         bool "Network device support"
95         depends on NET
96         default y if DM_ETH
97         help
98           You must select Y to enable any network device support
99           Generally if you have any networking support this is a given
100
101           If unsure, say Y
102
103 if NETDEVICES
104
105 config PHY_GIGE
106         bool "Enable GbE PHY status parsing and configuration"
107         help
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).
111
112 config AG7XXX
113         bool "Atheros AG7xxx Ethernet MAC support"
114         depends on DM_ETH && ARCH_ATH79
115         select PHYLIB
116         help
117           This driver supports the Atheros AG7xxx Ethernet MAC. This MAC is
118           present in the Atheros AR7xxx, AR9xxx and QCA9xxx MIPS chips.
119
120
121 config ALTERA_TSE
122         bool "Altera Triple-Speed Ethernet MAC support"
123         depends on DM_ETH
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 DM_ETH && 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 DM_ETH && 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         depends on DM_ETH
175         select PHYLIB
176         help
177           This driver supports the BCMGENET Ethernet MAC.
178
179 config CORTINA_NI_ENET
180         bool "Cortina-Access Ethernet driver"
181         depends on DM_ETH && CORTINA_PLATFORM
182         help
183           This driver supports the Cortina-Access Ethernet MAC for
184           all supported CAxxxx SoCs.
185
186 config CALXEDA_XGMAC
187         bool "Calxeda XGMAC support"
188         depends on DM_ETH
189         help
190           This driver supports the XGMAC in Calxeda Highbank and Midway
191           machines.
192
193 config DWC_ETH_QOS
194         bool "Synopsys DWC Ethernet QOS device support"
195         depends on DM_ETH
196         select PHYLIB
197         help
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.
201
202 config DWC_ETH_QOS_IMX
203         bool "Synopsys DWC Ethernet QOS device support for IMX"
204         depends on DWC_ETH_QOS
205         help
206           The Synopsys Designware Ethernet QOS IP block with the specific
207           configuration used in IMX soc.
208
209 config DWC_ETH_QOS_STM32
210         bool "Synopsys DWC Ethernet QOS device support for STM32"
211         depends on DWC_ETH_QOS
212         select DM_ETH_PHY
213         default y if ARCH_STM32MP
214         help
215           The Synopsys Designware Ethernet QOS IP block with the specific
216           configuration used in STM32MP soc.
217
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
222         help
223           The Synopsys Designware Ethernet QOS IP block with specific
224           configuration used in NVIDIA's Tegra186 chip.
225
226 config E1000
227         bool "Intel PRO/1000 Gigabit Ethernet support"
228         help
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:
232
233           <http://support.intel.com/support/network/adapter/pro100/21397.htm>
234
235 config E1000_SPI_GENERIC
236         bool "Allow access to the Intel 8257x SPI bus"
237         depends on E1000
238         help
239           Allow generic access to the SPI bus on the Intel 8257x, for
240           example with the "sspi" command.
241
242 config E1000_SPI
243         bool "Enable SPI bus utility code"
244         depends on E1000
245         help
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.
249
250 config CMD_E1000
251         bool "Enable the e1000 command"
252         depends on E1000
253         help
254           This enables the 'e1000' management command for E1000 devices. When
255           used on devices with SPI support you can reprogram the EEPROM from
256           U-Boot.
257
258 config EEPRO100
259         bool "Intel PRO/100 82557/82559/82559ER Fast Ethernet support"
260         help
261           This driver supports Intel(R) PRO/100 82557/82559/82559ER fast
262           ethernet family of adapters.
263
264 config ETH_SANDBOX
265         depends on DM_ETH && SANDBOX
266         default y
267         bool "Sandbox: Mocked Ethernet driver"
268         help
269           This driver simply responds with fake ARP replies and ping
270           replies that are used to verify network stack functionality
271
272           This driver is particularly useful in the test/dm/eth.c tests
273
274 config ETH_SANDBOX_RAW
275         depends on DM_ETH && SANDBOX
276         default y
277         bool "Sandbox: Bridge to Linux Raw Sockets"
278         help
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.
283
284 config ETH_DESIGNWARE
285         bool "Synopsys Designware Ethernet MAC"
286         select PHYLIB
287         imply ETH_DESIGNWARE_SOCFPGA if ARCH_SOCFPGA
288         help
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).
292
293 config ETH_DESIGNWARE_MESON8B
294         bool "Amlogic Meson8b and later glue driver for Synopsys Designware Ethernet MAC"
295         depends on DM_ETH
296         select ETH_DESIGNWARE
297         help
298           This provides glue layer to use Synopsys Designware Ethernet MAC
299           present on the Amlogic Meson8b, GX, AXG & G12A SoCs.
300
301 config ETH_DESIGNWARE_SOCFPGA
302         select REGMAP
303         select SYSCON
304         bool "Altera SoCFPGA extras for Synopsys Designware Ethernet MAC"
305         depends on DM_ETH && ETH_DESIGNWARE
306         help
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.
310
311 config ETH_DESIGNWARE_S700
312         bool "Actins S700 glue driver for Synopsys Designware Ethernet MAC"
313         depends on DM_ETH && ETH_DESIGNWARE
314         help
315           This provides glue layer to use Synopsys Designware Ethernet MAC
316           present on Actions S700 SoC.
317
318 config ETHOC
319         bool "OpenCores 10/100 Mbps Ethernet MAC"
320         help
321           This MAC is present in OpenRISC and Xtensa XTFPGA boards.
322
323 config FEC_MXC_SHARE_MDIO
324         bool "Share the MDIO bus for FEC controller"
325         depends on FEC_MXC
326
327 config FEC_MXC_MDIO_BASE
328         hex "MDIO base address for the FEC controller"
329         depends on FEC_MXC_SHARE_MDIO
330         help
331           This specifies the MDIO registers base address. It is used when
332           two FEC controllers share MDIO bus.
333
334 config FEC_MXC
335         bool "FEC Ethernet controller"
336         depends on MX28 || MX5 || MX6 || MX7 || IMX8 || IMX8M || IMX8ULP || VF610
337         help
338           This driver supports the 10/100 Fast Ethernet controller for
339           NXP i.MX processors.
340
341 config FMAN_ENET
342         bool "Freescale FMan ethernet support"
343         depends on ARM || PPC
344         help
345           This driver support the Freescale FMan Ethernet controller
346
347 config SYS_FMAN_FW_ADDR
348         hex "FMAN Firmware Address"
349         depends on FMAN_ENET
350         default 0x0
351
352 config SYS_QE_FMAN_FW_LENGTH
353         hex "FMAN QE Firmware length"
354         depends on FMAN_ENET || QE || U_QE
355         default 0x10000
356
357 config FTMAC100
358         bool "Ftmac100 Ethernet Support"
359         help
360           This MAC is present in Andestech SoCs.
361
362 config FTGMAC100
363         bool "Ftgmac100 Ethernet Support"
364         depends on DM_ETH
365         select PHYLIB
366         help
367           This driver supports the Faraday's FTGMAC100 Gigabit SoC
368           Ethernet controller that can be found on Aspeed SoCs (which
369           include NCSI).
370
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.
381
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
385           applications.
386
387
388 config MCFFEC
389         bool "ColdFire Ethernet Support"
390         depends on DM_ETH
391         select PHYLIB
392         help
393           This driver supports the network interface units in the
394           ColdFire family.
395
396 config FSLDMAFEC
397         bool "ColdFire DMA Ethernet Support"
398         depends on DM_ETH
399         select PHYLIB
400         help
401           This driver supports the network interface units in the
402           ColdFire family.
403
404 config KS8851_MLL
405         bool "Microchip KS8851-MLL controller driver"
406         help
407           The Microchip KS8851 parallel bus external ethernet interface chip.
408
409 if KS8851_MLL
410 if !DM_ETH
411 config KS8851_MLL_BASEADDR
412         hex "Microchip KS8851-MLL Base Address"
413         help
414           Define this to hold the physical address of the device (I/O space)
415 endif #DM_ETH
416 endif #KS8851_MLL
417
418 config KSZ9477
419         bool "Microchip KSZ9477 I2C controller driver"
420         depends on DM_DSA && DM_I2C
421         help
422           This driver implements a DSA switch driver for the KSZ9477 family
423           of GbE switches using the I2C interface.
424
425 config MVGBE
426         bool "Marvell Orion5x/Kirkwood network interface support"
427         depends on ARCH_KIRKWOOD || ARCH_ORION5X
428         select PHYLIB if DM_ETH
429         help
430           This driver supports the network interface units in the
431           Marvell Orion5x and Kirkwood SoCs
432
433 config MVNETA
434         bool "Marvell Armada XP/385/3700 network interface support"
435         depends on ARMADA_XP || ARMADA_38X || ARMADA_3700
436         select PHYLIB
437         help
438           This driver supports the network interface units in the
439           Marvell ARMADA XP, ARMADA 38X and ARMADA 3700 SoCs
440
441 config MVPP2
442         bool "Marvell Armada 375/7K/8K network interface support"
443         depends on ARMADA_375 || ARMADA_8K
444         select PHYLIB
445         select MVMDIO
446         select DM_MDIO
447         help
448           This driver supports the network interface units in the
449           Marvell ARMADA 375, 7K and 8K SoCs.
450
451 config MACB
452         bool "Cadence MACB/GEM Ethernet Interface"
453         select PHYLIB
454         help
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.
459
460 config MACB_ZYNQ
461         bool "Cadence MACB/GEM Ethernet Interface for Xilinx Zynq"
462         depends on MACB
463         help
464           The Cadence MACB ethernet interface was used on Zynq platform.
465           Say Y to enable support for the MACB/GEM in Zynq chip.
466
467 config MT7620_ETH
468         bool "MediaTek MT7620 Ethernet Interface"
469         depends on SOC_MT7620
470         select PHYLIB
471         select DM_RESET
472         select DM_GPIO
473         select CLK
474         help
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.
478
479 config MT7628_ETH
480         bool "MediaTek MT7628 Ethernet Interface"
481         depends on SOC_MT7628
482         select PHYLIB
483         help
484           The MediaTek MT7628 ethernet interface is used on MT7628 and
485           MT7688 based boards.
486
487 config NET_OCTEONTX
488         bool "OcteonTX Ethernet support"
489         depends on ARCH_OCTEONTX
490         depends on PCI_SRIOV
491         help
492           You must select Y to enable network device support for
493           OcteonTX SoCs. If unsure, say n
494
495 config NET_OCTEONTX2
496         bool "OcteonTX2 Ethernet support"
497         depends on ARCH_OCTEONTX2
498         select OCTEONTX2_CGX_INTF
499         help
500           You must select Y to enable network device support for
501           OcteonTX2 SoCs. If unsure, say n
502
503 config OCTEONTX_SMI
504         bool "OcteonTX SMI Device support"
505         depends on ARCH_OCTEONTX || ARCH_OCTEONTX2
506         help
507           You must select Y to enable SMI controller support for
508           OcteonTX or OcteonTX2 SoCs. If unsure, say n
509
510 config OCTEONTX2_CGX_INTF
511         bool "OcteonTX2 CGX ATF interface support"
512         depends on ARCH_OCTEONTX2
513         default y if ARCH_OCTEONTX2
514         help
515           You must select Y to enable CGX ATF interface support for
516           OcteonTX2 SoCs. If unsure, say n
517
518 config PCH_GBE
519         bool "Intel Platform Controller Hub EG20T GMAC driver"
520         depends on DM_ETH
521         select PHYLIB
522         help
523           This MAC is present in Intel Platform Controller Hub EG20T. It
524           supports 10/100/1000 Mbps operation.
525
526 config RGMII
527         bool "Enable RGMII"
528         help
529           Enable the support of the Reduced Gigabit Media-Independent
530           Interface (RGMII).
531
532 config MII
533         bool "Enable MII"
534         help
535           Enable support of the Media-Independent Interface (MII)
536
537 config PCNET
538         bool "AMD PCnet series Ethernet controller driver"
539         help
540           This driver supports AMD PCnet series fast ethernet family of
541           PCI chipsets/adapters.
542
543 source "drivers/net/qe/Kconfig"
544
545 config RTL8139
546         bool "Realtek 8139 series Ethernet controller driver"
547         help
548           This driver supports Realtek 8139 series fast ethernet family of
549           PCI chipsets/adapters.
550
551 config RTL8169
552         bool "Realtek 8169 series Ethernet controller driver"
553         help
554           This driver supports Realtek 8169 series gigabit ethernet family of
555           PCI/PCIe chipsets/adapters.
556
557 config SJA1105
558         bool "NXP SJA1105 Ethernet switch family driver"
559         depends on DM_DSA && DM_SPI
560         select BITREVERSE
561         help
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)
572
573 config SMC911X
574         bool "SMSC LAN911x and LAN921x controller driver"
575
576 if SMC911X
577
578 if !DM_ETH
579 config SMC911X_BASE
580         hex "SMC911X Base Address"
581         help
582           Define this to hold the physical address
583           of the device (I/O space)
584 endif #DM_ETH
585
586 config SMC911X_32_BIT
587         bool "Enable SMC911X 32-bit interface"
588         help
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".
592
593 endif #SMC911X
594
595 config SUN7I_GMAC
596         bool "Enable Allwinner GMAC Ethernet support"
597         help
598           Enable the support for Sun7i GMAC Ethernet controller
599
600 config SUN7I_GMAC_FORCE_TXERR
601         bool "Force PA17 as gmac function"
602         depends on SUN7I_GMAC
603         help
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.
607
608 config SUN4I_EMAC
609         bool "Allwinner Sun4i Ethernet MAC support"
610         depends on DM_ETH
611         select PHYLIB
612         help
613           This driver supports the Allwinner based SUN4I Ethernet MAC.
614
615 config SUN8I_EMAC
616         bool "Allwinner Sun8i Ethernet MAC support"
617         depends on DM_ETH
618         select PHYLIB
619         select PHY_GIGE
620         help
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.
624
625 config SH_ETHER
626         bool "Renesas SH Ethernet MAC"
627         select PHYLIB
628         help
629           This driver supports the Ethernet for Renesas SH and ARM SoCs.
630
631 source "drivers/net/ti/Kconfig"
632
633 config TULIP
634         bool "DEC Tulip DC2114x Ethernet support"
635         help
636           This driver supports DEC DC2114x Fast ethernet chips.
637
638 config XILINX_AXIEMAC
639         depends on DM_ETH
640         select PHYLIB
641         select MII
642         bool "Xilinx AXI Ethernet"
643         help
644           This MAC is present in Xilinx Microblaze, Zynq and ZynqMP SoCs.
645
646 config XILINX_AXIMRMAC
647         depends on DM_ETH && ARCH_VERSAL
648         bool "Xilinx AXI MRMAC"
649         help
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
653           Versal designs.
654
655 config XILINX_EMACLITE
656         depends on DM_ETH
657         select PHYLIB
658         select MII
659         bool "Xilinx Ethernetlite"
660         help
661           This MAC is present in Xilinx Microblaze, Zynq and ZynqMP SoCs.
662
663 config ZYNQ_GEM
664         depends on DM_ETH
665         select PHYLIB
666         bool "Xilinx Ethernet GEM"
667         help
668           This MAC is present in Xilinx Zynq and ZynqMP SoCs.
669
670 config PIC32_ETH
671         bool "Microchip PIC32 Ethernet Support"
672         depends on DM_ETH && MACH_PIC32
673         select PHYLIB
674         help
675           This driver implements 10/100 Mbps Ethernet and MAC layer for
676           Microchip PIC32 microcontrollers.
677
678 config GMAC_ROCKCHIP
679         bool "Rockchip Synopsys Designware Ethernet MAC"
680         depends on DM_ETH && ETH_DESIGNWARE
681         help
682           This driver provides Rockchip SoCs network support based on the
683           Synopsys Designware driver.
684
685 config RENESAS_RAVB
686         bool "Renesas Ethernet AVB MAC"
687         depends on DM_ETH && RCAR_GEN3
688         select PHYLIB
689         help
690           This driver implements support for the Ethernet AVB block in
691           Renesas M3 and H3 SoCs.
692
693 config MPC8XX_FEC
694         bool "Fast Ethernet Controller on MPC8XX"
695         depends on MPC8xx
696         select MII
697         help
698           This driver implements support for the Fast Ethernet Controller
699           on MPC8XX
700
701 config SNI_AVE
702         bool "Socionext AVE Ethernet support"
703         depends on DM_ETH && ARCH_UNIPHIER
704         select PHYLIB
705         select SYSCON
706         select REGMAP
707         help
708           This driver implements support for the Socionext AVE Ethernet
709           controller, as found on the Socionext UniPhier family.
710
711 config SNI_NETSEC
712         bool "Socionext NETSEC Ethernet support"
713         depends on DM_ETH && SYNQUACER_SPI
714         select PHYLIB
715         help
716           This driver implements support for the Socionext SynQuacer NETSEC
717           ethernet controller, as found on the Socionext SynQuacer family.
718
719 source "drivers/net/mscc_eswitch/Kconfig"
720
721 config ETHER_ON_FEC1
722         bool "FEC1"
723         depends on MPC8XX_FEC
724         default y
725
726 config FEC1_PHY
727         int "FEC1 PHY"
728         depends on ETHER_ON_FEC1
729         default -1
730         help
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
735
736           When set to -1, means to probe for first available.
737
738 config PHY_NORXERR
739         bool "PHY_NORXERR"
740         depends on ETHER_ON_FEC1
741         help
742           The PHY does not have a RXERR line (RMII only).
743           (so program the FEC to ignore it).
744
745 config ETHER_ON_FEC2
746         bool "FEC2"
747         depends on MPC8XX_FEC && MPC885
748         default y
749
750 config FEC2_PHY
751         int "FEC2 PHY"
752         depends on ETHER_ON_FEC2
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 FEC2_PHY_NORXERR
763         bool "PHY_NORXERR"
764         depends on ETHER_ON_FEC2
765         help
766           The PHY does not have a RXERR line (RMII only).
767           (so program the FEC to ignore it).
768
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 || \
773                      ARCH_B4420 || \
774                      ARCH_P1023 || \
775                      ARCH_P2041 || \
776                      ARCH_T1024 || \
777                      ARCH_T1040 || \
778                      ARCH_T1042 || \
779                      ARCH_T2080 || \
780                      ARCH_T4240 || \
781                      ARCH_P4080 || \
782                      ARCH_P3041 || \
783                      ARCH_P5040 || \
784                      ARCH_LS1043A || \
785                      ARCH_LS1046A
786         help
787           QBman fixups to allow deep sleep in DPAA 1 SOCs
788
789 config TSEC_ENET
790         select PHYLIB
791         bool "Enable Three-Speed Ethernet Controller"
792         help
793           This driver implements support for the (Enhanced) Three-Speed
794           Ethernet Controller found on Freescale SoCs.
795
796 config MEDIATEK_ETH
797         bool "MediaTek Ethernet GMAC Driver"
798         depends on DM_ETH
799         select PHYLIB
800         select DM_GPIO
801         select DM_RESET
802         help
803           This Driver support MediaTek Ethernet GMAC
804           Say Y to enable support for the MediaTek Ethernet GMAC.
805
806 config HIGMACV300_ETH
807         bool "HiSilicon Gigabit Ethernet Controller"
808         depends on DM_ETH
809         select DM_RESET
810         select PHYLIB
811         help
812           This driver supports HIGMACV300 Ethernet controller found on
813           HiSilicon SoCs.
814
815 config FSL_ENETC
816         bool "NXP ENETC Ethernet controller"
817         depends on DM_ETH && DM_MDIO
818         help
819           This driver supports the NXP ENETC Ethernet controller found on some
820           of the NXP SoCs.
821
822 config MDIO_MUX_I2CREG
823         bool "MDIO MUX accessed as a register over I2C"
824         depends on DM_MDIO_MUX && DM_I2C
825         help
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.
829
830 config MDIO_IPQ4019
831         bool "Qualcomm IPQ4019 MDIO interface support"
832         depends on DM_MDIO
833         help
834           This driver supports the MDIO interface found in Qualcomm
835           IPQ40xx series Soc-s.
836
837 config MVMDIO
838         bool "Marvell MDIO interface support"
839         depends on DM_MDIO
840         help
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).
844
845           This driver is used by the MVPP2 and MVNETA drivers.
846
847 config FSL_LS_MDIO
848         bool "NXP Layerscape MDIO interface support"
849         depends on DM_MDIO
850         help
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).
853
854 config ASPEED_MDIO
855         bool "Aspeed MDIO interface support"
856         depends on DM_MDIO
857         help
858           This driver supports the MDIO bus of Aspeed AST2600 SOC.  The driver
859           currently supports Clause 22.
860
861 config MDIO_MUX_MMIOREG
862         bool "MDIO MUX accessed as a MMIO register access"
863         depends on DM_MDIO_MUX
864         help
865           This driver is used for MDIO muxes driven by writing to a register in
866           the MMIO physical memory.
867
868 config MDIO_MUX_MESON_G12A
869         bool "MDIO MUX for Amlogic Meson G12A SoCs"
870         depends on DM_MDIO_MUX
871         help
872           This driver is used for the MDIO mux found on the Amlogic G12A & compatible
873           SoCs.
874
875 endif # NETDEVICES