blob: 21d6481db9a11cd07f8852c47878a045d2cf5cca [file] [log] [blame]
Alex89e50d92017-02-06 19:17:34 -08001source "drivers/net/phy/Kconfig"
Calvin Johnson0e6101a2018-03-08 15:30:35 +05302source "drivers/net/pfe_eth/Kconfig"
Florinel Iordachedfd4c0f2019-05-15 09:09:21 +00003source "drivers/net/fsl-mc/Kconfig"
Bharat Gootyb48ee742021-11-08 14:46:10 -08004source "drivers/net/bnxt/Kconfig"
Alex89e50d92017-02-06 19:17:34 -08005
Simon Glass1d926242021-08-08 12:20:31 -06006config ETH
7 def_bool y
8
Joe Hershbergerc7eceaf2015-03-22 17:09:10 -05009config DM_ETH
10 bool "Enable Driver Model for Ethernet drivers"
11 depends on DM
12 help
13 Enable driver model for Ethernet.
14
Joe Hershberger54214e62018-07-02 14:47:48 -050015 The eth_*() interface will be implemented by the UCLASS_ETH class
16 This is currently implemented in net/eth-uclass.c
Joe Hershbergerc7eceaf2015-03-22 17:09:10 -050017 Look in include/net.h for details.
Joe Hershberger6ab76992015-03-22 17:09:13 -050018
Alex Marginean1a5b0982019-06-03 19:10:30 +030019config DM_MDIO
20 bool "Enable Driver Model for MDIO devices"
21 depends on DM_ETH && 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
Alex Margineanab8c2a52019-07-12 10:13:50 +030032config 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
Claudiu Manoilc0566c22021-01-25 14:23:53 +020044config DM_DSA
45 bool "Enable Driver Model for DSA switches"
46 depends on DM_ETH && 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
Alex Marginean0daa53a2019-06-03 19:12:28 +030059config 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
Alex Marginean0649be52019-07-12 10:13:53 +030069config 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
Ye Licd5bb772020-05-03 22:41:14 +080079config 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
Claudiu Manoild9eaa922021-03-14 20:14:57 +080085config 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
Joe Hershberger6ab76992015-03-22 17:09:13 -050094menuconfig NETDEVICES
95 bool "Network device support"
96 depends on NET
Joe Hershberger5a9d7f12015-06-22 16:15:30 -050097 default y if DM_ETH
Joe Hershberger6ab76992015-03-22 17:09:13 -050098 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
104if NETDEVICES
105
Philipp Tomsich00c33612017-03-26 18:50:23 +0200106config 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
Marek Vasut0a3d0e12016-05-24 23:29:09 +0200113config AG7XXX
114 bool "Atheros AG7xxx Ethernet MAC support"
115 depends on DM_ETH && 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
Thomas Chouec06dd82015-10-22 15:29:11 +0800122config ALTERA_TSE
123 bool "Altera Triple-Speed Ethernet MAC support"
124 depends on DM_ETH
125 select PHYLIB
126 help
127 This driver supports the Altera Triple-Speed (TSE) Ethernet MAC.
128 Please find details on the "Triple-Speed Ethernet MegaCore Function
129 Resource Center" of Altera.
130
Suji Velupillaid2f677a2017-07-10 14:05:41 -0700131config BCM_SF2_ETH
132 bool "Broadcom SF2 (Starfighter2) Ethernet support"
133 select PHYLIB
134 help
135 This is an abstract framework which provides a generic interface
136 to MAC and DMA management for multiple Broadcom SoCs such as
137 Cygnus, NSP and bcm28155_ap platforms.
138
139config BCM_SF2_ETH_DEFAULT_PORT
140 int "Broadcom SF2 (Starfighter2) Ethernet default port number"
141 depends on BCM_SF2_ETH
142 default 0
143 help
144 Default port number for the Starfighter2 ethernet driver.
145
146config BCM_SF2_ETH_GMAC
147 bool "Broadcom SF2 (Starfighter2) GMAC Ethernet support"
148 depends on BCM_SF2_ETH
149 help
150 This flag enables the ethernet support for Broadcom platforms with
151 GMAC such as Cygnus. This driver is based on the framework provided
152 by the BCM_SF2_ETH driver.
153 Say Y to any bcmcygnus based platforms.
154
Álvaro Fernández Rojas204fd5e2018-12-01 19:00:24 +0100155config BCM6348_ETH
156 bool "BCM6348 EMAC support"
157 depends on DM_ETH && ARCH_BMIPS
158 select DMA
159 select DMA_CHANNELS
160 select MII
161 select PHYLIB
162 help
163 This driver supports the BCM6348 Ethernet MAC.
164
Álvaro Fernández Rojasb0b22542018-12-01 19:00:32 +0100165config BCM6368_ETH
166 bool "BCM6368 EMAC support"
167 depends on DM_ETH && ARCH_BMIPS
168 select DMA
169 select MII
170 help
171 This driver supports the BCM6368 Ethernet MAC.
172
Amit Singh Tomar8f656c52020-01-27 01:14:42 +0000173config BCMGENET
174 bool "BCMGENET V5 support"
175 depends on DM_ETH
176 select PHYLIB
177 help
178 This driver supports the BCMGENET Ethernet MAC.
179
Aaron Tsengebcdddd2021-01-14 13:34:11 -0800180config CORTINA_NI_ENET
181 bool "Cortina-Access Ethernet driver"
182 depends on DM_ETH && CORTINA_PLATFORM
183 help
184 This driver supports the Cortina-Access Ethernet MAC for
185 all supported CAxxxx SoCs.
186
Andre Przywara7352fb92021-04-12 01:04:52 +0100187config CALXEDA_XGMAC
188 bool "Calxeda XGMAC support"
189 depends on DM_ETH
190 help
191 This driver supports the XGMAC in Calxeda Highbank and Midway
192 machines.
193
Marek Vasutd2105972022-04-13 04:15:38 +0200194config DRIVER_DM9000
195 bool "Davicom DM9000 controller driver"
196 help
197 The Davicom DM9000 parallel bus external ethernet interface chip.
198
Stephen Warren50709602016-10-21 14:46:47 -0600199config DWC_ETH_QOS
200 bool "Synopsys DWC Ethernet QOS device support"
201 depends on DM_ETH
202 select PHYLIB
203 help
204 This driver supports the Synopsys Designware Ethernet QOS (Quality
205 Of Service) IP block. The IP supports many options for bus type,
Patrick Delaunay68083902020-06-08 11:27:19 +0200206 clocking/reset structure, and feature list.
207
208config DWC_ETH_QOS_IMX
209 bool "Synopsys DWC Ethernet QOS device support for IMX"
210 depends on DWC_ETH_QOS
211 help
212 The Synopsys Designware Ethernet QOS IP block with the specific
213 configuration used in IMX soc.
214
215config DWC_ETH_QOS_STM32
216 bool "Synopsys DWC Ethernet QOS device support for STM32"
217 depends on DWC_ETH_QOS
Patrick Delaunayd9dc80c2021-07-20 20:09:55 +0200218 select DM_ETH_PHY
Patrick Delaunay68083902020-06-08 11:27:19 +0200219 default y if ARCH_STM32MP
220 help
221 The Synopsys Designware Ethernet QOS IP block with the specific
222 configuration used in STM32MP soc.
223
224config DWC_ETH_QOS_TEGRA186
225 bool "Synopsys DWC Ethernet QOS device support for TEGRA186"
226 depends on DWC_ETH_QOS
227 default y if TEGRA186
228 help
229 The Synopsys Designware Ethernet QOS IP block with specific
230 configuration used in NVIDIA's Tegra186 chip.
Stephen Warren50709602016-10-21 14:46:47 -0600231
Simon Glassa83ccd52015-08-19 09:33:41 -0600232config E1000
233 bool "Intel PRO/1000 Gigabit Ethernet support"
Sean Andersond22315a2022-04-26 14:35:33 -0400234 depends on PCI
Simon Glassa83ccd52015-08-19 09:33:41 -0600235 help
236 This driver supports Intel(R) PRO/1000 gigabit ethernet family of
237 adapters. For more information on how to identify your adapter, go
238 to the Adapter & Driver ID Guide at:
239
240 <http://support.intel.com/support/network/adapter/pro100/21397.htm>
241
Tom Rinia35003b2022-06-08 08:24:23 -0400242config E1000_NO_NVM
243 bool "Intel PRO/1000 has no NVMEM / EEPROM"
244 depends on E1000
245
Simon Glassa83ccd52015-08-19 09:33:41 -0600246config E1000_SPI_GENERIC
247 bool "Allow access to the Intel 8257x SPI bus"
248 depends on E1000
249 help
250 Allow generic access to the SPI bus on the Intel 8257x, for
251 example with the "sspi" command.
252
253config E1000_SPI
254 bool "Enable SPI bus utility code"
255 depends on E1000
256 help
257 Utility code for direct access to the SPI bus on Intel 8257x.
258 This does not do anything useful unless you set at least one
259 of CONFIG_CMD_E1000 or CONFIG_E1000_SPI_GENERIC.
260
261config CMD_E1000
262 bool "Enable the e1000 command"
263 depends on E1000
264 help
265 This enables the 'e1000' management command for E1000 devices. When
266 used on devices with SPI support you can reprogram the EEPROM from
267 U-Boot.
268
Marek Vasut2dcaf852020-05-23 18:07:53 +0200269config EEPRO100
270 bool "Intel PRO/100 82557/82559/82559ER Fast Ethernet support"
271 help
272 This driver supports Intel(R) PRO/100 82557/82559/82559ER fast
273 ethernet family of adapters.
274
Joe Hershberger6ab76992015-03-22 17:09:13 -0500275config ETH_SANDBOX
276 depends on DM_ETH && SANDBOX
277 default y
278 bool "Sandbox: Mocked Ethernet driver"
279 help
280 This driver simply responds with fake ARP replies and ping
281 replies that are used to verify network stack functionality
282
283 This driver is particularly useful in the test/dm/eth.c tests
284
Joe Hershberger586cbd12015-03-22 17:09:21 -0500285config ETH_SANDBOX_RAW
286 depends on DM_ETH && SANDBOX
287 default y
288 bool "Sandbox: Bridge to Linux Raw Sockets"
289 help
290 This driver is a bridge from the bottom of the network stack
291 in U-Boot to the RAW AF_PACKET API in Linux. This allows real
292 network traffic to be tested from within sandbox. See
Keerthyfa002552019-07-29 13:52:04 +0530293 doc/arch/index.rst for more details.
Joe Hershberger586cbd12015-03-22 17:09:21 -0500294
Simon Glass6e378742015-04-05 16:07:34 -0600295config ETH_DESIGNWARE
296 bool "Synopsys Designware Ethernet MAC"
Thomas Chou7a0dfa62015-12-07 20:53:29 +0800297 select PHYLIB
Simon Goldschmidtad588932019-01-13 19:58:41 +0100298 imply ETH_DESIGNWARE_SOCFPGA if ARCH_SOCFPGA
Simon Glass6e378742015-04-05 16:07:34 -0600299 help
300 This MAC is present in SoCs from various vendors. It supports
301 100Mbit and 1 Gbit operation. You must enable CONFIG_PHYLIB to
302 provide the PHY (physical media interface).
303
Neil Armstrong145aff72021-02-24 20:33:56 +0100304config ETH_DESIGNWARE_MESON8B
305 bool "Amlogic Meson8b and later glue driver for Synopsys Designware Ethernet MAC"
306 depends on DM_ETH
307 select ETH_DESIGNWARE
308 help
309 This provides glue layer to use Synopsys Designware Ethernet MAC
310 present on the Amlogic Meson8b, GX, AXG & G12A SoCs.
311
Marek Vasut0d9a4a02018-08-13 19:32:14 +0200312config ETH_DESIGNWARE_SOCFPGA
Simon Goldschmidtb50afc82019-01-13 19:58:40 +0100313 select REGMAP
314 select SYSCON
Tom Rini7ac21a32022-06-15 12:03:43 -0400315 select DW_ALTDESCRIPTOR
Marek Vasut0d9a4a02018-08-13 19:32:14 +0200316 bool "Altera SoCFPGA extras for Synopsys Designware Ethernet MAC"
317 depends on DM_ETH && ETH_DESIGNWARE
318 help
319 The Altera SoCFPGA requires additional configuration of the
320 Altera system manager to correctly interface with the PHY.
321 This code handles those SoC specifics.
322
Amit Singh Tomar03d6edb2020-05-09 19:55:12 +0530323config ETH_DESIGNWARE_S700
324 bool "Actins S700 glue driver for Synopsys Designware Ethernet MAC"
325 depends on DM_ETH && ETH_DESIGNWARE
326 help
327 This provides glue layer to use Synopsys Designware Ethernet MAC
328 present on Actions S700 SoC.
329
Tom Rini7ac21a32022-06-15 12:03:43 -0400330config DW_ALTDESCRIPTOR
331 bool "Designware Ethernet MAC uses alternate (enhanced) descriptors"
332 depends on ETH_DESIGNWARE
333
Max Filippove07d3d22016-08-05 18:26:15 +0300334config ETHOC
335 bool "OpenCores 10/100 Mbps Ethernet MAC"
336 help
337 This MAC is present in OpenRISC and Xtensa XTFPGA boards.
338
Peng Fana65e0362018-03-28 20:54:14 +0800339config FEC_MXC_SHARE_MDIO
340 bool "Share the MDIO bus for FEC controller"
341 depends on FEC_MXC
342
343config FEC_MXC_MDIO_BASE
344 hex "MDIO base address for the FEC controller"
345 depends on FEC_MXC_SHARE_MDIO
346 help
347 This specifies the MDIO registers base address. It is used when
348 two FEC controllers share MDIO bus.
349
Jagan Tekia48af852016-10-08 18:00:12 +0530350config FEC_MXC
351 bool "FEC Ethernet controller"
Peng Fanfad6d902022-07-26 16:41:12 +0800352 depends on MX28 || MX5 || MX6 || MX7 || IMX8 || IMX8M || IMX8ULP || IMX93 || VF610
Jagan Tekia48af852016-10-08 18:00:12 +0530353 help
354 This driver supports the 10/100 Fast Ethernet controller for
355 NXP i.MX processors.
356
Tom Rinifa911f82019-05-12 07:59:12 -0400357config FMAN_ENET
358 bool "Freescale FMan ethernet support"
359 depends on ARM || PPC
Tom Rini82a703b2022-07-23 13:05:06 -0400360 select SYS_FMAN_V3 if ARCH_B4420 || ARCH_B4860 || ARCH_LS1043A || \
361 ARCH_LS1046A || ARCH_T1024 || ARCH_T1040 || ARCH_T1042 || \
362 ARCH_T2080 || ARCH_T4240
Tom Rinifa911f82019-05-12 07:59:12 -0400363 help
364 This driver support the Freescale FMan Ethernet controller
365
Rajesh Bhagataec38012021-11-09 16:30:38 +0530366config SYS_FMAN_FW_ADDR
367 hex "FMAN Firmware Address"
368 depends on FMAN_ENET
369 default 0x0
370
371config SYS_QE_FMAN_FW_LENGTH
372 hex "FMAN QE Firmware length"
373 depends on FMAN_ENET || QE || U_QE
374 default 0x10000
375
Tom Rini82a703b2022-07-23 13:05:06 -0400376config SYS_FMAN_V3
377 bool
378 help
379 SoC has FMan v3 with mEMAC
380
Tom Rinic5ea8ed2017-05-26 11:18:53 -0400381config FTMAC100
382 bool "Ftmac100 Ethernet Support"
383 help
384 This MAC is present in Andestech SoCs.
385
Cédric Le Goater38b33e92018-10-29 07:06:31 +0100386config FTGMAC100
387 bool "Ftgmac100 Ethernet Support"
388 depends on DM_ETH
389 select PHYLIB
390 help
391 This driver supports the Faraday's FTGMAC100 Gigabit SoC
392 Ethernet controller that can be found on Aspeed SoCs (which
393 include NCSI).
394
395 It is fully compliant with IEEE 802.3 specification for
396 10/100 Mbps Ethernet and IEEE 802.3z specification for 1000
397 Mbps Ethernet and includes Reduced Media Independent
398 Interface (RMII) and Reduced Gigabit Media Independent
399 Interface (RGMII) interfaces. It adopts an AHB bus interface
400 and integrates a link list DMA engine with direct M-Bus
401 accesses for transmitting and receiving packets. It has
402 independent TX/RX fifos, supports half and full duplex (1000
403 Mbps mode only supports full duplex), flow control for full
404 duplex and backpressure for half duplex.
405
406 The FTGMAC100 also implements IP, TCP, UDP checksum offloads
407 and supports IEEE 802.1Q VLAN tag insertion and removal. It
408 offers high-priority transmit queue for QoS and CoS
409 applications.
410
Tom Rinibd8253d2022-06-25 11:02:36 -0400411config SYS_DISCOVER_PHY
412 bool
Cédric Le Goater38b33e92018-10-29 07:06:31 +0100413
Angelo Durgehelloa1d3d9f2019-11-15 23:54:17 +0100414config MCFFEC
415 bool "ColdFire Ethernet Support"
416 depends on DM_ETH
417 select PHYLIB
Tom Rinibd8253d2022-06-25 11:02:36 -0400418 select SYS_DISCOVER_PHY
Angelo Durgehelloa1d3d9f2019-11-15 23:54:17 +0100419 help
420 This driver supports the network interface units in the
421 ColdFire family.
422
Tom Rini74d888f2022-06-25 11:02:35 -0400423config SYS_UNIFY_CACHE
424 depends on MCFFEC
425 bool "Invalidate icache during ethernet operations"
426
Angelo Durgehelloa1d3d9f2019-11-15 23:54:17 +0100427config FSLDMAFEC
428 bool "ColdFire DMA Ethernet Support"
429 depends on DM_ETH
430 select PHYLIB
Tom Rinibd8253d2022-06-25 11:02:36 -0400431 select SYS_DISCOVER_PHY
Angelo Durgehelloa1d3d9f2019-11-15 23:54:17 +0100432 help
433 This driver supports the network interface units in the
434 ColdFire family.
435
Marek Vasutf4622282020-03-25 19:08:59 +0100436config KS8851_MLL
437 bool "Microchip KS8851-MLL controller driver"
438 help
439 The Microchip KS8851 parallel bus external ethernet interface chip.
440
441if KS8851_MLL
442if !DM_ETH
443config KS8851_MLL_BASEADDR
444 hex "Microchip KS8851-MLL Base Address"
445 help
446 Define this to hold the physical address of the device (I/O space)
447endif #DM_ETH
448endif #KS8851_MLL
449
Tim Harvey06dea1e2021-06-30 16:50:08 -0700450config KSZ9477
451 bool "Microchip KSZ9477 I2C controller driver"
452 depends on DM_DSA && DM_I2C
453 help
454 This driver implements a DSA switch driver for the KSZ9477 family
455 of GbE switches using the I2C interface.
456
Tom Rini6b408bb2022-03-18 08:38:24 -0400457config LPC32XX_ETH
458 bool "LPC32xx Ethernet MAC interface driver"
459 depends on ARCH_LPC32XX
460 default y
461
Chris Packham943679d2018-05-03 23:00:35 +1200462config MVGBE
463 bool "Marvell Orion5x/Kirkwood network interface support"
Trevor Woernerbb7ab072020-05-06 08:02:40 -0400464 depends on ARCH_KIRKWOOD || ARCH_ORION5X
Chris Packham1de16f72018-07-09 21:34:00 +1200465 select PHYLIB if DM_ETH
Chris Packham943679d2018-05-03 23:00:35 +1200466 help
467 This driver supports the network interface units in the
468 Marvell Orion5x and Kirkwood SoCs
469
Chris Packham919041c2017-08-21 20:17:03 +1200470config MVNETA
Miquel Raynal59d42cd2017-12-28 15:43:09 +0100471 bool "Marvell Armada XP/385/3700 network interface support"
472 depends on ARMADA_XP || ARMADA_38X || ARMADA_3700
Chris Packham919041c2017-08-21 20:17:03 +1200473 select PHYLIB
Marek Behún99e296f2022-04-27 12:41:46 +0200474 select DM_MDIO
Chris Packham919041c2017-08-21 20:17:03 +1200475 help
476 This driver supports the network interface units in the
Miquel Raynal59d42cd2017-12-28 15:43:09 +0100477 Marvell ARMADA XP, ARMADA 38X and ARMADA 3700 SoCs
Chris Packham919041c2017-08-21 20:17:03 +1200478
Stefan Roese96c19042016-02-10 07:22:10 +0100479config MVPP2
Stefan Roese78a112b2017-02-15 11:42:59 +0100480 bool "Marvell Armada 375/7K/8K network interface support"
481 depends on ARMADA_375 || ARMADA_8K
Stefan Roese96c19042016-02-10 07:22:10 +0100482 select PHYLIB
Nevo Hed5da38842019-08-15 18:08:45 -0400483 select MVMDIO
484 select DM_MDIO
Stefan Roese96c19042016-02-10 07:22:10 +0100485 help
486 This driver supports the network interface units in the
Stefan Roese78a112b2017-02-15 11:42:59 +0100487 Marvell ARMADA 375, 7K and 8K SoCs.
Stefan Roese96c19042016-02-10 07:22:10 +0100488
Wenyou Yange7183de2016-11-02 10:06:55 +0800489config MACB
490 bool "Cadence MACB/GEM Ethernet Interface"
Wenyou Yange7183de2016-11-02 10:06:55 +0800491 select PHYLIB
492 help
493 The Cadence MACB ethernet interface is found on many Atmel
494 AT91 and SAMA5 parts. This driver also supports the Cadence
495 GEM (Gigabit Ethernet MAC) found in some ARM SoC devices.
496 Say Y to include support for the MACB/GEM chip.
497
Wilson Lee41d6d1e2017-08-22 20:25:07 -0700498config MACB_ZYNQ
499 bool "Cadence MACB/GEM Ethernet Interface for Xilinx Zynq"
500 depends on MACB
501 help
502 The Cadence MACB ethernet interface was used on Zynq platform.
503 Say Y to enable support for the MACB/GEM in Zynq chip.
504
developer7b4c8be2020-11-12 16:36:53 +0800505config MT7620_ETH
506 bool "MediaTek MT7620 Ethernet Interface"
507 depends on SOC_MT7620
508 select PHYLIB
509 select DM_RESET
510 select DM_GPIO
511 select CLK
512 help
513 The MediaTek MT7620 ethernet interface is used on MT7620 based
514 boards. It has a built-in switch with two configurable ports which
515 can connect to external PHY/MACs.
516
Stefan Roesef9947682018-10-26 14:53:27 +0200517config MT7628_ETH
518 bool "MediaTek MT7628 Ethernet Interface"
developer89f051b2019-04-30 11:13:58 +0800519 depends on SOC_MT7628
developera5644112019-09-25 17:45:33 +0800520 select PHYLIB
Stefan Roesef9947682018-10-26 14:53:27 +0200521 help
522 The MediaTek MT7628 ethernet interface is used on MT7628 and
523 MT7688 based boards.
524
Stefan Roesec404ac72022-04-07 09:11:52 +0200525config NET_OCTEON
526 bool "MIPS Octeon ethernet support"
527 depends on ARCH_OCTEON
528 help
529 You must select Y to enable network device support for
530 MIPS Octeon SoCs. If unsure, say n
531
Suneel Garapati53dc4482020-08-26 14:37:33 +0200532config NET_OCTEONTX
533 bool "OcteonTX Ethernet support"
534 depends on ARCH_OCTEONTX
535 depends on PCI_SRIOV
536 help
537 You must select Y to enable network device support for
538 OcteonTX SoCs. If unsure, say n
Suneel Garapati8666ae82020-08-26 14:37:42 +0200539
540config NET_OCTEONTX2
541 bool "OcteonTX2 Ethernet support"
542 depends on ARCH_OCTEONTX2
543 select OCTEONTX2_CGX_INTF
544 help
545 You must select Y to enable network device support for
546 OcteonTX2 SoCs. If unsure, say n
547
Suneel Garapati53dc4482020-08-26 14:37:33 +0200548config OCTEONTX_SMI
549 bool "OcteonTX SMI Device support"
550 depends on ARCH_OCTEONTX || ARCH_OCTEONTX2
551 help
552 You must select Y to enable SMI controller support for
553 OcteonTX or OcteonTX2 SoCs. If unsure, say n
554
Suneel Garapati8666ae82020-08-26 14:37:42 +0200555config OCTEONTX2_CGX_INTF
556 bool "OcteonTX2 CGX ATF interface support"
557 depends on ARCH_OCTEONTX2
558 default y if ARCH_OCTEONTX2
559 help
560 You must select Y to enable CGX ATF interface support for
561 OcteonTX2 SoCs. If unsure, say n
562
Bin Meng64d3dca2015-08-27 22:25:58 -0700563config PCH_GBE
564 bool "Intel Platform Controller Hub EG20T GMAC driver"
Simon Glass3933d292021-08-01 18:54:44 -0600565 depends on DM_ETH
Bin Meng64d3dca2015-08-27 22:25:58 -0700566 select PHYLIB
567 help
568 This MAC is present in Intel Platform Controller Hub EG20T. It
569 supports 10/100/1000 Mbps operation.
570
Mylène Josserande44eb3a2017-04-02 12:59:08 +0200571config RGMII
572 bool "Enable RGMII"
573 help
574 Enable the support of the Reduced Gigabit Media-Independent
575 Interface (RGMII).
576
Adam Ford53705472018-07-20 23:03:57 -0500577config MII
578 bool "Enable MII"
579 help
580 Enable support of the Media-Independent Interface (MII)
581
Tom Rinie09aab12022-03-18 08:38:22 -0400582config RMII
583 bool "Enable RMII"
584 help
585 Enable support of the Reduced Media-Independent Interface (MII)
586
Marek Vasut7275b622020-05-17 18:14:17 +0200587config PCNET
588 bool "AMD PCnet series Ethernet controller driver"
589 help
590 This driver supports AMD PCnet series fast ethernet family of
591 PCI chipsets/adapters.
592
Heiko Schocher41b64a82020-02-06 09:48:16 +0100593source "drivers/net/qe/Kconfig"
594
Bin Menga6448df2016-03-21 06:47:41 -0700595config RTL8139
596 bool "Realtek 8139 series Ethernet controller driver"
597 help
598 This driver supports Realtek 8139 series fast ethernet family of
599 PCI chipsets/adapters.
600
Bin Meng29971222016-03-21 06:47:42 -0700601config RTL8169
602 bool "Realtek 8169 series Ethernet controller driver"
603 help
604 This driver supports Realtek 8169 series gigabit ethernet family of
605 PCI/PCIe chipsets/adapters.
606
Vladimir Oltean67bfc852021-09-29 18:04:41 +0300607config SJA1105
608 bool "NXP SJA1105 Ethernet switch family driver"
609 depends on DM_DSA && DM_SPI
610 select BITREVERSE
611 help
612 This is the driver for the NXP SJA1105 automotive Ethernet switch
613 family. These are 5-port devices and are managed over an SPI
614 interface. Probing is handled based on OF bindings. The driver
615 supports the following revisions:
616 - SJA1105E (Gen. 1, No TT-Ethernet)
617 - SJA1105T (Gen. 1, TT-Ethernet)
618 - SJA1105P (Gen. 2, No SGMII, No TT-Ethernet)
619 - SJA1105Q (Gen. 2, No SGMII, TT-Ethernet)
620 - SJA1105R (Gen. 2, SGMII, No TT-Ethernet)
621 - SJA1105S (Gen. 2, SGMII, TT-Ethernet)
622
Adam Ford0a044f82017-09-05 15:20:44 -0500623config SMC911X
624 bool "SMSC LAN911x and LAN921x controller driver"
625
626if SMC911X
627
Marek Vasut55399442020-03-15 17:39:01 +0100628if !DM_ETH
Adam Ford0a044f82017-09-05 15:20:44 -0500629config SMC911X_BASE
630 hex "SMC911X Base Address"
631 help
632 Define this to hold the physical address
633 of the device (I/O space)
Marek Vasut55399442020-03-15 17:39:01 +0100634endif #DM_ETH
Adam Ford0a044f82017-09-05 15:20:44 -0500635
Adam Ford0a044f82017-09-05 15:20:44 -0500636config SMC911X_32_BIT
Andre Przywara30301e52021-06-28 14:30:30 +0100637 bool "Enable SMC911X 32-bit interface"
Adam Ford0a044f82017-09-05 15:20:44 -0500638 help
Andre Przywara30301e52021-06-28 14:30:30 +0100639 Define this if data bus is 32 bits. If your processor use a
640 narrower 16 bit bus or cannot convert one 32 bit word to two 16 bit
641 words, leave this to "n".
Adam Ford0a044f82017-09-05 15:20:44 -0500642
Adam Ford0a044f82017-09-05 15:20:44 -0500643endif #SMC911X
644
Mylène Josserandc1506ef2017-04-02 12:59:03 +0200645config SUN7I_GMAC
646 bool "Enable Allwinner GMAC Ethernet support"
647 help
648 Enable the support for Sun7i GMAC Ethernet controller
649
Stefan Mavrodieveaee8582017-11-03 08:56:51 +0200650config SUN7I_GMAC_FORCE_TXERR
651 bool "Force PA17 as gmac function"
652 depends on SUN7I_GMAC
653 help
654 Some ethernet phys needs TXERR control. Since the GMAC
655 doesn't have such signal, setting PA17 as GMAC function
656 makes the pin output low, which enables data transmission.
657
Mylène Josserand43ef1842017-04-02 12:59:07 +0200658config SUN4I_EMAC
659 bool "Allwinner Sun4i Ethernet MAC support"
660 depends on DM_ETH
Artturi Alm8ed09172017-11-08 05:08:58 +0200661 select PHYLIB
Mylène Josserand43ef1842017-04-02 12:59:07 +0200662 help
663 This driver supports the Allwinner based SUN4I Ethernet MAC.
664
Amit Singh Tomard194c0e2016-07-06 17:59:44 +0530665config SUN8I_EMAC
666 bool "Allwinner Sun8i Ethernet MAC support"
667 depends on DM_ETH
668 select PHYLIB
Philipp Tomsich00c33612017-03-26 18:50:23 +0200669 select PHY_GIGE
Amit Singh Tomard194c0e2016-07-06 17:59:44 +0530670 help
671 This driver supports the Allwinner based SUN8I/SUN50I Ethernet MAC.
672 It can be found in H3/A64/A83T based SoCs and compatible with both
Tom Rini1eee1172017-02-20 09:38:03 -0500673 External and Internal PHYs.
Amit Singh Tomard194c0e2016-07-06 17:59:44 +0530674
Nobuhiro Iwamatsuf593ecb2017-12-01 16:08:03 +0900675config SH_ETHER
676 bool "Renesas SH Ethernet MAC"
677 select PHYLIB
678 help
679 This driver supports the Ethernet for Renesas SH and ARM SoCs.
680
Grygorii Strashko5693dee2018-10-31 16:21:39 -0500681source "drivers/net/ti/Kconfig"
Adam Ford53705472018-07-20 23:03:57 -0500682
Marek Vasut880287c2020-06-20 17:43:29 +0200683config TULIP
684 bool "DEC Tulip DC2114x Ethernet support"
Marek Vasut880287c2020-06-20 17:43:29 +0200685 help
686 This driver supports DEC DC2114x Fast ethernet chips.
687
Michal Simek07d204f2015-12-09 16:54:42 +0100688config XILINX_AXIEMAC
Michal Simekc28665d2020-08-06 15:18:36 +0200689 depends on DM_ETH
Michal Simek07d204f2015-12-09 16:54:42 +0100690 select PHYLIB
691 select MII
692 bool "Xilinx AXI Ethernet"
693 help
694 This MAC is present in Xilinx Microblaze, Zynq and ZynqMP SoCs.
695
Ashok Reddy Soma6f5480c2021-07-02 04:40:34 -0600696config XILINX_AXIMRMAC
697 depends on DM_ETH && ARCH_VERSAL
698 bool "Xilinx AXI MRMAC"
699 help
700 MRMAC is a high performance, low latency, adaptable Ethernet
701 integrated hard IP. This can be configured up to four ports with MAC
702 rates from 10GE to 100GE. This could be present in some of the Xilinx
703 Versal designs.
704
Michal Simekeaee95a2015-12-11 09:41:49 +0100705config XILINX_EMACLITE
Michal Simekc28665d2020-08-06 15:18:36 +0200706 depends on DM_ETH
Michal Simekeaee95a2015-12-11 09:41:49 +0100707 select PHYLIB
708 select MII
709 bool "Xilinx Ethernetlite"
710 help
711 This MAC is present in Xilinx Microblaze, Zynq and ZynqMP SoCs.
712
Michal Simek3d7285f2015-11-30 14:34:52 +0100713config ZYNQ_GEM
Michal Simekc28665d2020-08-06 15:18:36 +0200714 depends on DM_ETH
Michal Simek27ba0902015-12-11 09:14:31 +0100715 select PHYLIB
Michal Simek3d7285f2015-11-30 14:34:52 +0100716 bool "Xilinx Ethernet GEM"
717 help
Michal Simek7fb1d232015-12-09 16:53:52 +0100718 This MAC is present in Xilinx Zynq and ZynqMP SoCs.
Michal Simek3d7285f2015-11-30 14:34:52 +0100719
Purna Chandra Mandal6b731c92016-01-28 15:30:21 +0530720config PIC32_ETH
721 bool "Microchip PIC32 Ethernet Support"
722 depends on DM_ETH && MACH_PIC32
723 select PHYLIB
724 help
725 This driver implements 10/100 Mbps Ethernet and MAC layer for
726 Microchip PIC32 microcontrollers.
727
Sjoerd Simons54c46f92017-01-11 11:46:11 +0100728config GMAC_ROCKCHIP
729 bool "Rockchip Synopsys Designware Ethernet MAC"
730 depends on DM_ETH && ETH_DESIGNWARE
731 help
732 This driver provides Rockchip SoCs network support based on the
733 Synopsys Designware driver.
734
Marek Vasut17714cb2017-05-13 15:54:28 +0200735config RENESAS_RAVB
736 bool "Renesas Ethernet AVB MAC"
737 depends on DM_ETH && RCAR_GEN3
738 select PHYLIB
739 help
740 This driver implements support for the Ethernet AVB block in
741 Renesas M3 and H3 SoCs.
742
Christophe Leroy56ef30a2017-07-06 10:33:23 +0200743config MPC8XX_FEC
744 bool "Fast Ethernet Controller on MPC8XX"
Christophe Leroyb3510fb2018-03-16 17:20:41 +0100745 depends on MPC8xx
Christophe Leroy56ef30a2017-07-06 10:33:23 +0200746 select MII
Tom Rinibd8253d2022-06-25 11:02:36 -0400747 select SYS_DISCOVER_PHY
Christophe Leroy56ef30a2017-07-06 10:33:23 +0200748 help
749 This driver implements support for the Fast Ethernet Controller
750 on MPC8XX
751
Kunihiko Hayashi7dcdc222018-05-24 19:24:37 +0900752config SNI_AVE
753 bool "Socionext AVE Ethernet support"
754 depends on DM_ETH && ARCH_UNIPHIER
755 select PHYLIB
756 select SYSCON
757 select REGMAP
758 help
759 This driver implements support for the Socionext AVE Ethernet
760 controller, as found on the Socionext UniPhier family.
761
Jassi Brar29c58b02021-06-04 18:44:38 +0900762config SNI_NETSEC
763 bool "Socionext NETSEC Ethernet support"
764 depends on DM_ETH && SYNQUACER_SPI
765 select PHYLIB
766 help
767 This driver implements support for the Socionext SynQuacer NETSEC
768 ethernet controller, as found on the Socionext SynQuacer family.
769
Horatiu Vulturad2bf652019-01-31 15:30:33 +0100770source "drivers/net/mscc_eswitch/Kconfig"
Gregory CLEMENTeca26c82019-01-17 17:07:13 +0100771
Christophe Leroy56ef30a2017-07-06 10:33:23 +0200772config ETHER_ON_FEC1
773 bool "FEC1"
774 depends on MPC8XX_FEC
775 default y
776
777config FEC1_PHY
778 int "FEC1 PHY"
779 depends on ETHER_ON_FEC1
780 default -1
781 help
782 Define to the hardcoded PHY address which corresponds
783 to the given FEC; i. e.
784 #define CONFIG_FEC1_PHY 4
785 means that the PHY with address 4 is connected to FEC1
786
787 When set to -1, means to probe for first available.
788
789config PHY_NORXERR
790 bool "PHY_NORXERR"
791 depends on ETHER_ON_FEC1
Christophe Leroy56ef30a2017-07-06 10:33:23 +0200792 help
793 The PHY does not have a RXERR line (RMII only).
794 (so program the FEC to ignore it).
795
796config ETHER_ON_FEC2
797 bool "FEC2"
798 depends on MPC8XX_FEC && MPC885
799 default y
800
801config FEC2_PHY
802 int "FEC2 PHY"
803 depends on ETHER_ON_FEC2
804 default -1
805 help
806 Define to the hardcoded PHY address which corresponds
807 to the given FEC; i. e.
808 #define CONFIG_FEC1_PHY 4
809 means that the PHY with address 4 is connected to FEC1
810
811 When set to -1, means to probe for first available.
812
813config FEC2_PHY_NORXERR
814 bool "PHY_NORXERR"
815 depends on ETHER_ON_FEC2
Christophe Leroy56ef30a2017-07-06 10:33:23 +0200816 help
817 The PHY does not have a RXERR line (RMII only).
818 (so program the FEC to ignore it).
819
Ahmed Mansour816bc412017-12-15 16:01:01 -0500820config SYS_DPAA_QBMAN
821 bool "Device tree fixup for QBMan on freescale SOCs"
822 depends on (ARM || PPC) && !SPL_BUILD
823 default y if ARCH_B4860 || \
824 ARCH_B4420 || \
825 ARCH_P1023 || \
826 ARCH_P2041 || \
Ahmed Mansour816bc412017-12-15 16:01:01 -0500827 ARCH_T1024 || \
828 ARCH_T1040 || \
829 ARCH_T1042 || \
830 ARCH_T2080 || \
Ahmed Mansour816bc412017-12-15 16:01:01 -0500831 ARCH_T4240 || \
Ahmed Mansour816bc412017-12-15 16:01:01 -0500832 ARCH_P4080 || \
833 ARCH_P3041 || \
834 ARCH_P5040 || \
Ahmed Mansour816bc412017-12-15 16:01:01 -0500835 ARCH_LS1043A || \
836 ARCH_LS1046A
837 help
838 QBman fixups to allow deep sleep in DPAA 1 SOCs
839
Mario Sixda4fc932018-03-28 14:38:18 +0200840config TSEC_ENET
841 select PHYLIB
842 bool "Enable Three-Speed Ethernet Controller"
843 help
844 This driver implements support for the (Enhanced) Three-Speed
845 Ethernet Controller found on Freescale SoCs.
846
developerc3ac93d2018-12-20 16:12:53 +0800847config MEDIATEK_ETH
848 bool "MediaTek Ethernet GMAC Driver"
849 depends on DM_ETH
850 select PHYLIB
851 select DM_GPIO
852 select DM_RESET
853 help
854 This Driver support MediaTek Ethernet GMAC
855 Say Y to enable support for the MediaTek Ethernet GMAC.
856
Shawn Guo0e1cc912019-03-20 15:32:40 +0800857config HIGMACV300_ETH
858 bool "HiSilicon Gigabit Ethernet Controller"
859 depends on DM_ETH
860 select DM_RESET
861 select PHYLIB
862 help
863 This driver supports HIGMACV300 Ethernet controller found on
864 HiSilicon SoCs.
865
Alex Marginean7a910c12019-07-03 12:11:40 +0300866config FSL_ENETC
867 bool "NXP ENETC Ethernet controller"
Simon Glass3933d292021-08-01 18:54:44 -0600868 depends on DM_ETH && DM_MDIO
Alex Marginean7a910c12019-07-03 12:11:40 +0300869 help
870 This driver supports the NXP ENETC Ethernet controller found on some
871 of the NXP SoCs.
872
Alex Marginean3234a5e2019-07-16 11:21:17 +0300873config MDIO_MUX_I2CREG
874 bool "MDIO MUX accessed as a register over I2C"
875 depends on DM_MDIO_MUX && DM_I2C
876 help
877 This driver is used for MDIO muxes driven by writing to a register of
878 an I2C chip. The board it was developed for uses a mux controlled by
879 on-board FPGA which in turn is accessed as a chip over I2C.
880
Robert Marko90dfaeb2020-10-08 22:05:11 +0200881config MDIO_IPQ4019
882 bool "Qualcomm IPQ4019 MDIO interface support"
883 depends on DM_MDIO
884 help
885 This driver supports the MDIO interface found in Qualcomm
886 IPQ40xx series Soc-s.
887
Alex Margineande3e55b2019-07-25 12:33:19 +0300888config MVMDIO
889 bool "Marvell MDIO interface support"
890 depends on DM_MDIO
891 help
892 This driver supports the MDIO interface found in the network
893 interface units of the Marvell EBU SoCs (Kirkwood, Orion5x,
894 Dove, Armada 370, Armada XP, Armada 37xx and Armada7K/8K/8KP).
895
896 This driver is used by the MVPP2 and MVNETA drivers.
897
Ioana Ciornei799a4432020-03-18 16:47:36 +0200898config FSL_LS_MDIO
899 bool "NXP Layerscape MDIO interface support"
900 depends on DM_MDIO
901 help
902 This driver supports the MDIO bus found on the Fman 10G Ethernet MACs and
903 on the mEMAC (which supports both Clauses 22 and 45).
904
Dylan Hungb450ee62021-11-02 13:41:54 +0800905config ASPEED_MDIO
906 bool "Aspeed MDIO interface support"
907 depends on DM_MDIO
908 help
909 This driver supports the MDIO bus of Aspeed AST2600 SOC. The driver
910 currently supports Clause 22.
911
Neil Armstrongb66cbb32021-02-24 15:02:23 +0100912config MDIO_MUX_MMIOREG
913 bool "MDIO MUX accessed as a MMIO register access"
914 depends on DM_MDIO_MUX
915 help
916 This driver is used for MDIO muxes driven by writing to a register in
917 the MMIO physical memory.
918
Neil Armstrongd0ddbb92021-02-24 17:31:53 +0100919config MDIO_MUX_MESON_G12A
920 bool "MDIO MUX for Amlogic Meson G12A SoCs"
921 depends on DM_MDIO_MUX
922 help
923 This driver is used for the MDIO mux found on the Amlogic G12A & compatible
924 SoCs.
925
Joe Hershberger6ab76992015-03-22 17:09:13 -0500926endif # NETDEVICES