blob: db61c27e013fa38686173988bed5fdf9a70bcedc [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"
Alex89e50d92017-02-06 19:17:34 -08004
Simon Glass1d926242021-08-08 12:20:31 -06005config ETH
6 def_bool y
7
Joe Hershbergerc7eceaf2015-03-22 17:09:10 -05008config DM_ETH
Tom Rini4c40e732022-08-02 07:33:47 -04009 bool
Joe Hershbergerc7eceaf2015-03-22 17:09:10 -050010 depends on DM
11 help
12 Enable driver model for Ethernet.
13
Joe Hershberger54214e62018-07-02 14:47:48 -050014 The eth_*() interface will be implemented by the UCLASS_ETH class
15 This is currently implemented in net/eth-uclass.c
Joe Hershbergerc7eceaf2015-03-22 17:09:10 -050016 Look in include/net.h for details.
Joe Hershberger6ab76992015-03-22 17:09:13 -050017
Alex Marginean1a5b0982019-06-03 19:10:30 +030018config DM_MDIO
19 bool "Enable Driver Model for MDIO devices"
Tom Rini4c40e732022-08-02 07:33:47 -040020 depends on PHYLIB
Alex Marginean1a5b0982019-06-03 19:10:30 +030021 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
Alex Margineanab8c2a52019-07-12 10:13:50 +030031config 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
Claudiu Manoilc0566c22021-01-25 14:23:53 +020043config DM_DSA
44 bool "Enable Driver Model for DSA switches"
Tom Rini4c40e732022-08-02 07:33:47 -040045 depends on DM_MDIO
Claudiu Manoilc0566c22021-01-25 14:23:53 +020046 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
Alex Marginean0daa53a2019-06-03 19:12:28 +030058config 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
Alex Marginean0649be52019-07-12 10:13:53 +030068config 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
Ye Licd5bb772020-05-03 22:41:14 +080078config 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
Claudiu Manoild9eaa922021-03-14 20:14:57 +080084config 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
Joe Hershberger6ab76992015-03-22 17:09:13 -050093menuconfig NETDEVICES
94 bool "Network device support"
95 depends on NET
Tom Rini4c40e732022-08-02 07:33:47 -040096 select DM_ETH
Joe Hershberger6ab76992015-03-22 17:09:13 -050097 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
103if NETDEVICES
104
Philipp Tomsich00c33612017-03-26 18:50:23 +0200105config 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
Marek Vasut0a3d0e12016-05-24 23:29:09 +0200112config AG7XXX
113 bool "Atheros AG7xxx Ethernet MAC support"
Tom Rini4c40e732022-08-02 07:33:47 -0400114 depends on ARCH_ATH79
Marek Vasut0a3d0e12016-05-24 23:29:09 +0200115 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
Thomas Chouec06dd82015-10-22 15:29:11 +0800121config ALTERA_TSE
122 bool "Altera Triple-Speed Ethernet MAC support"
Thomas Chouec06dd82015-10-22 15:29:11 +0800123 select PHYLIB
124 help
125 This driver supports the Altera Triple-Speed (TSE) Ethernet MAC.
126 Please find details on the "Triple-Speed Ethernet MegaCore Function
127 Resource Center" of Altera.
128
Suji Velupillaid2f677a2017-07-10 14:05:41 -0700129config BCM_SF2_ETH
130 bool "Broadcom SF2 (Starfighter2) Ethernet support"
131 select PHYLIB
132 help
133 This is an abstract framework which provides a generic interface
134 to MAC and DMA management for multiple Broadcom SoCs such as
135 Cygnus, NSP and bcm28155_ap platforms.
136
137config BCM_SF2_ETH_DEFAULT_PORT
138 int "Broadcom SF2 (Starfighter2) Ethernet default port number"
139 depends on BCM_SF2_ETH
140 default 0
141 help
142 Default port number for the Starfighter2 ethernet driver.
143
144config BCM_SF2_ETH_GMAC
145 bool "Broadcom SF2 (Starfighter2) GMAC Ethernet support"
146 depends on BCM_SF2_ETH
147 help
148 This flag enables the ethernet support for Broadcom platforms with
149 GMAC such as Cygnus. This driver is based on the framework provided
150 by the BCM_SF2_ETH driver.
151 Say Y to any bcmcygnus based platforms.
152
Álvaro Fernández Rojas204fd5e2018-12-01 19:00:24 +0100153config BCM6348_ETH
154 bool "BCM6348 EMAC support"
Tom Rini4c40e732022-08-02 07:33:47 -0400155 depends on ARCH_BMIPS
Álvaro Fernández Rojas204fd5e2018-12-01 19:00:24 +0100156 select DMA
157 select DMA_CHANNELS
158 select MII
159 select PHYLIB
160 help
161 This driver supports the BCM6348 Ethernet MAC.
162
Álvaro Fernández Rojasb0b22542018-12-01 19:00:32 +0100163config BCM6368_ETH
164 bool "BCM6368 EMAC support"
Tom Rini4c40e732022-08-02 07:33:47 -0400165 depends on ARCH_BMIPS
Álvaro Fernández Rojasb0b22542018-12-01 19:00:32 +0100166 select DMA
167 select MII
168 help
169 This driver supports the BCM6368 Ethernet MAC.
170
Amit Singh Tomar8f656c52020-01-27 01:14:42 +0000171config BCMGENET
172 bool "BCMGENET V5 support"
Amit Singh Tomar8f656c52020-01-27 01:14:42 +0000173 select PHYLIB
174 help
175 This driver supports the BCMGENET Ethernet MAC.
176
Tom Rinifc42f2c2022-11-27 10:25:02 -0500177source "drivers/net/bnxt/Kconfig"
178
Aaron Tsengebcdddd2021-01-14 13:34:11 -0800179config CORTINA_NI_ENET
180 bool "Cortina-Access Ethernet driver"
Tom Rini4c40e732022-08-02 07:33:47 -0400181 depends on CORTINA_PLATFORM
Aaron Tsengebcdddd2021-01-14 13:34:11 -0800182 help
183 This driver supports the Cortina-Access Ethernet MAC for
184 all supported CAxxxx SoCs.
185
Andre Przywara7352fb92021-04-12 01:04:52 +0100186config CALXEDA_XGMAC
187 bool "Calxeda XGMAC support"
Andre Przywara7352fb92021-04-12 01:04:52 +0100188 help
189 This driver supports the XGMAC in Calxeda Highbank and Midway
190 machines.
191
Marek Vasutd2105972022-04-13 04:15:38 +0200192config DRIVER_DM9000
193 bool "Davicom DM9000 controller driver"
194 help
195 The Davicom DM9000 parallel bus external ethernet interface chip.
196
Stephen Warren50709602016-10-21 14:46:47 -0600197config DWC_ETH_QOS
198 bool "Synopsys DWC Ethernet QOS device support"
Stephen Warren50709602016-10-21 14:46:47 -0600199 select PHYLIB
200 help
201 This driver supports the Synopsys Designware Ethernet QOS (Quality
202 Of Service) IP block. The IP supports many options for bus type,
Patrick Delaunay68083902020-06-08 11:27:19 +0200203 clocking/reset structure, and feature list.
204
205config DWC_ETH_QOS_IMX
206 bool "Synopsys DWC Ethernet QOS device support for IMX"
207 depends on DWC_ETH_QOS
208 help
209 The Synopsys Designware Ethernet QOS IP block with the specific
210 configuration used in IMX soc.
211
212config DWC_ETH_QOS_STM32
213 bool "Synopsys DWC Ethernet QOS device support for STM32"
214 depends on DWC_ETH_QOS
Patrick Delaunayd9dc80c2021-07-20 20:09:55 +0200215 select DM_ETH_PHY
Patrick Delaunay68083902020-06-08 11:27:19 +0200216 default y if ARCH_STM32MP
217 help
218 The Synopsys Designware Ethernet QOS IP block with the specific
219 configuration used in STM32MP soc.
220
221config DWC_ETH_QOS_TEGRA186
222 bool "Synopsys DWC Ethernet QOS device support for TEGRA186"
223 depends on DWC_ETH_QOS
224 default y if TEGRA186
225 help
226 The Synopsys Designware Ethernet QOS IP block with specific
227 configuration used in NVIDIA's Tegra186 chip.
Stephen Warren50709602016-10-21 14:46:47 -0600228
Simon Glassa83ccd52015-08-19 09:33:41 -0600229config E1000
230 bool "Intel PRO/1000 Gigabit Ethernet support"
Sean Andersond22315a2022-04-26 14:35:33 -0400231 depends on PCI
Simon Glassa83ccd52015-08-19 09:33:41 -0600232 help
233 This driver supports Intel(R) PRO/1000 gigabit ethernet family of
234 adapters. For more information on how to identify your adapter, go
235 to the Adapter & Driver ID Guide at:
236
237 <http://support.intel.com/support/network/adapter/pro100/21397.htm>
238
Tom Rinia35003b2022-06-08 08:24:23 -0400239config E1000_NO_NVM
240 bool "Intel PRO/1000 has no NVMEM / EEPROM"
241 depends on E1000
242
Simon Glassa83ccd52015-08-19 09:33:41 -0600243config E1000_SPI_GENERIC
244 bool "Allow access to the Intel 8257x SPI bus"
245 depends on E1000
246 help
247 Allow generic access to the SPI bus on the Intel 8257x, for
248 example with the "sspi" command.
249
250config E1000_SPI
251 bool "Enable SPI bus utility code"
252 depends on E1000
253 help
254 Utility code for direct access to the SPI bus on Intel 8257x.
255 This does not do anything useful unless you set at least one
256 of CONFIG_CMD_E1000 or CONFIG_E1000_SPI_GENERIC.
257
258config CMD_E1000
259 bool "Enable the e1000 command"
260 depends on E1000
261 help
262 This enables the 'e1000' management command for E1000 devices. When
263 used on devices with SPI support you can reprogram the EEPROM from
264 U-Boot.
265
Marek Vasut2dcaf852020-05-23 18:07:53 +0200266config EEPRO100
267 bool "Intel PRO/100 82557/82559/82559ER Fast Ethernet support"
268 help
269 This driver supports Intel(R) PRO/100 82557/82559/82559ER fast
270 ethernet family of adapters.
271
Joe Hershberger6ab76992015-03-22 17:09:13 -0500272config ETH_SANDBOX
Tom Rini4c40e732022-08-02 07:33:47 -0400273 depends on SANDBOX
Joe Hershberger6ab76992015-03-22 17:09:13 -0500274 default y
275 bool "Sandbox: Mocked Ethernet driver"
276 help
277 This driver simply responds with fake ARP replies and ping
278 replies that are used to verify network stack functionality
279
280 This driver is particularly useful in the test/dm/eth.c tests
281
Joe Hershberger586cbd12015-03-22 17:09:21 -0500282config ETH_SANDBOX_RAW
Tom Rini4c40e732022-08-02 07:33:47 -0400283 depends on SANDBOX
Joe Hershberger586cbd12015-03-22 17:09:21 -0500284 default y
285 bool "Sandbox: Bridge to Linux Raw Sockets"
286 help
287 This driver is a bridge from the bottom of the network stack
288 in U-Boot to the RAW AF_PACKET API in Linux. This allows real
289 network traffic to be tested from within sandbox. See
Keerthyfa002552019-07-29 13:52:04 +0530290 doc/arch/index.rst for more details.
Joe Hershberger586cbd12015-03-22 17:09:21 -0500291
Simon Glass6e378742015-04-05 16:07:34 -0600292config ETH_DESIGNWARE
293 bool "Synopsys Designware Ethernet MAC"
Thomas Chou7a0dfa62015-12-07 20:53:29 +0800294 select PHYLIB
Simon Goldschmidtad588932019-01-13 19:58:41 +0100295 imply ETH_DESIGNWARE_SOCFPGA if ARCH_SOCFPGA
Simon Glass6e378742015-04-05 16:07:34 -0600296 help
297 This MAC is present in SoCs from various vendors. It supports
298 100Mbit and 1 Gbit operation. You must enable CONFIG_PHYLIB to
299 provide the PHY (physical media interface).
300
Neil Armstrong145aff72021-02-24 20:33:56 +0100301config ETH_DESIGNWARE_MESON8B
302 bool "Amlogic Meson8b and later glue driver for Synopsys Designware Ethernet MAC"
Neil Armstrong145aff72021-02-24 20:33:56 +0100303 select ETH_DESIGNWARE
304 help
305 This provides glue layer to use Synopsys Designware Ethernet MAC
306 present on the Amlogic Meson8b, GX, AXG & G12A SoCs.
307
Marek Vasut0d9a4a02018-08-13 19:32:14 +0200308config ETH_DESIGNWARE_SOCFPGA
Simon Goldschmidtb50afc82019-01-13 19:58:40 +0100309 select REGMAP
310 select SYSCON
Tom Rini7ac21a32022-06-15 12:03:43 -0400311 select DW_ALTDESCRIPTOR
Marek Vasut0d9a4a02018-08-13 19:32:14 +0200312 bool "Altera SoCFPGA extras for Synopsys Designware Ethernet MAC"
Tom Rini4c40e732022-08-02 07:33:47 -0400313 depends on ETH_DESIGNWARE
Marek Vasut0d9a4a02018-08-13 19:32:14 +0200314 help
315 The Altera SoCFPGA requires additional configuration of the
316 Altera system manager to correctly interface with the PHY.
317 This code handles those SoC specifics.
318
Amit Singh Tomar03d6edb2020-05-09 19:55:12 +0530319config ETH_DESIGNWARE_S700
320 bool "Actins S700 glue driver for Synopsys Designware Ethernet MAC"
Tom Rini4c40e732022-08-02 07:33:47 -0400321 depends on ETH_DESIGNWARE
Amit Singh Tomar03d6edb2020-05-09 19:55:12 +0530322 help
323 This provides glue layer to use Synopsys Designware Ethernet MAC
324 present on Actions S700 SoC.
325
Tom Rini7ac21a32022-06-15 12:03:43 -0400326config DW_ALTDESCRIPTOR
327 bool "Designware Ethernet MAC uses alternate (enhanced) descriptors"
328 depends on ETH_DESIGNWARE
329
Max Filippove07d3d22016-08-05 18:26:15 +0300330config ETHOC
331 bool "OpenCores 10/100 Mbps Ethernet MAC"
332 help
333 This MAC is present in OpenRISC and Xtensa XTFPGA boards.
334
Peng Fana65e0362018-03-28 20:54:14 +0800335config FEC_MXC_SHARE_MDIO
336 bool "Share the MDIO bus for FEC controller"
337 depends on FEC_MXC
338
339config FEC_MXC_MDIO_BASE
340 hex "MDIO base address for the FEC controller"
341 depends on FEC_MXC_SHARE_MDIO
342 help
343 This specifies the MDIO registers base address. It is used when
344 two FEC controllers share MDIO bus.
345
Jagan Tekia48af852016-10-08 18:00:12 +0530346config FEC_MXC
347 bool "FEC Ethernet controller"
Peng Fanfad6d902022-07-26 16:41:12 +0800348 depends on MX28 || MX5 || MX6 || MX7 || IMX8 || IMX8M || IMX8ULP || IMX93 || VF610
Jagan Tekia48af852016-10-08 18:00:12 +0530349 help
350 This driver supports the 10/100 Fast Ethernet controller for
351 NXP i.MX processors.
352
Tom Rinifa911f82019-05-12 07:59:12 -0400353config FMAN_ENET
354 bool "Freescale FMan ethernet support"
355 depends on ARM || PPC
Tom Rini82a703b2022-07-23 13:05:06 -0400356 select SYS_FMAN_V3 if ARCH_B4420 || ARCH_B4860 || ARCH_LS1043A || \
357 ARCH_LS1046A || ARCH_T1024 || ARCH_T1040 || ARCH_T1042 || \
358 ARCH_T2080 || ARCH_T4240
Tom Rinifa911f82019-05-12 07:59:12 -0400359 help
360 This driver support the Freescale FMan Ethernet controller
361
Rajesh Bhagataec38012021-11-09 16:30:38 +0530362config SYS_FMAN_FW_ADDR
363 hex "FMAN Firmware Address"
364 depends on FMAN_ENET
365 default 0x0
366
367config SYS_QE_FMAN_FW_LENGTH
368 hex "FMAN QE Firmware length"
369 depends on FMAN_ENET || QE || U_QE
370 default 0x10000
371
Tom Rini82a703b2022-07-23 13:05:06 -0400372config SYS_FMAN_V3
373 bool
Tom Rini33ae6a72022-07-23 13:05:10 -0400374 select FSL_MEMAC
Tom Rini82a703b2022-07-23 13:05:06 -0400375 help
376 SoC has FMan v3 with mEMAC
377
Tom Rinic5ea8ed2017-05-26 11:18:53 -0400378config FTMAC100
379 bool "Ftmac100 Ethernet Support"
380 help
381 This MAC is present in Andestech SoCs.
382
Cédric Le Goater38b33e92018-10-29 07:06:31 +0100383config FTGMAC100
384 bool "Ftgmac100 Ethernet Support"
Cédric Le Goater38b33e92018-10-29 07:06:31 +0100385 select PHYLIB
386 help
387 This driver supports the Faraday's FTGMAC100 Gigabit SoC
388 Ethernet controller that can be found on Aspeed SoCs (which
389 include NCSI).
390
391 It is fully compliant with IEEE 802.3 specification for
392 10/100 Mbps Ethernet and IEEE 802.3z specification for 1000
393 Mbps Ethernet and includes Reduced Media Independent
394 Interface (RMII) and Reduced Gigabit Media Independent
395 Interface (RGMII) interfaces. It adopts an AHB bus interface
396 and integrates a link list DMA engine with direct M-Bus
397 accesses for transmitting and receiving packets. It has
398 independent TX/RX fifos, supports half and full duplex (1000
399 Mbps mode only supports full duplex), flow control for full
400 duplex and backpressure for half duplex.
401
402 The FTGMAC100 also implements IP, TCP, UDP checksum offloads
403 and supports IEEE 802.1Q VLAN tag insertion and removal. It
404 offers high-priority transmit queue for QoS and CoS
405 applications.
406
Tom Rinibd8253d2022-06-25 11:02:36 -0400407config SYS_DISCOVER_PHY
408 bool
Cédric Le Goater38b33e92018-10-29 07:06:31 +0100409
Angelo Durgehelloa1d3d9f2019-11-15 23:54:17 +0100410config MCFFEC
411 bool "ColdFire Ethernet Support"
Angelo Durgehelloa1d3d9f2019-11-15 23:54:17 +0100412 select PHYLIB
Tom Rinibd8253d2022-06-25 11:02:36 -0400413 select SYS_DISCOVER_PHY
Angelo Durgehelloa1d3d9f2019-11-15 23:54:17 +0100414 help
415 This driver supports the network interface units in the
416 ColdFire family.
417
Tom Rini74d888f2022-06-25 11:02:35 -0400418config SYS_UNIFY_CACHE
419 depends on MCFFEC
420 bool "Invalidate icache during ethernet operations"
421
Angelo Durgehelloa1d3d9f2019-11-15 23:54:17 +0100422config FSLDMAFEC
423 bool "ColdFire DMA Ethernet Support"
Angelo Durgehelloa1d3d9f2019-11-15 23:54:17 +0100424 select PHYLIB
Tom Rinibd8253d2022-06-25 11:02:36 -0400425 select SYS_DISCOVER_PHY
Angelo Durgehelloa1d3d9f2019-11-15 23:54:17 +0100426 help
427 This driver supports the network interface units in the
428 ColdFire family.
429
Marek Vasutf4622282020-03-25 19:08:59 +0100430config KS8851_MLL
431 bool "Microchip KS8851-MLL controller driver"
432 help
433 The Microchip KS8851 parallel bus external ethernet interface chip.
434
Tim Harvey06dea1e2021-06-30 16:50:08 -0700435config KSZ9477
436 bool "Microchip KSZ9477 I2C controller driver"
437 depends on DM_DSA && DM_I2C
438 help
439 This driver implements a DSA switch driver for the KSZ9477 family
440 of GbE switches using the I2C interface.
441
Joel Stanley705017a2022-09-26 15:35:58 +0930442config LITEETH
443 bool "LiteX LiteEth Ethernet MAC"
444 help
445 Driver for the LiteEth Ethernet MAC from LiteX.
446
Chris Packham943679d2018-05-03 23:00:35 +1200447config MVGBE
448 bool "Marvell Orion5x/Kirkwood network interface support"
Trevor Woernerbb7ab072020-05-06 08:02:40 -0400449 depends on ARCH_KIRKWOOD || ARCH_ORION5X
Tom Rini4c40e732022-08-02 07:33:47 -0400450 select PHYLIB
Chris Packham943679d2018-05-03 23:00:35 +1200451 help
452 This driver supports the network interface units in the
453 Marvell Orion5x and Kirkwood SoCs
454
Chris Packham919041c2017-08-21 20:17:03 +1200455config MVNETA
Miquel Raynal59d42cd2017-12-28 15:43:09 +0100456 bool "Marvell Armada XP/385/3700 network interface support"
Chris Packham44b7cc72022-11-05 17:23:56 +1300457 depends on ARMADA_XP || ARMADA_38X || ARMADA_3700 || ALLEYCAT_5
Chris Packham919041c2017-08-21 20:17:03 +1200458 select PHYLIB
Marek Behún99e296f2022-04-27 12:41:46 +0200459 select DM_MDIO
Chris Packham919041c2017-08-21 20:17:03 +1200460 help
461 This driver supports the network interface units in the
Miquel Raynal59d42cd2017-12-28 15:43:09 +0100462 Marvell ARMADA XP, ARMADA 38X and ARMADA 3700 SoCs
Chris Packham919041c2017-08-21 20:17:03 +1200463
Stefan Roese96c19042016-02-10 07:22:10 +0100464config MVPP2
Stefan Roese78a112b2017-02-15 11:42:59 +0100465 bool "Marvell Armada 375/7K/8K network interface support"
466 depends on ARMADA_375 || ARMADA_8K
Stefan Roese96c19042016-02-10 07:22:10 +0100467 select PHYLIB
Nevo Hed5da38842019-08-15 18:08:45 -0400468 select MVMDIO
469 select DM_MDIO
Stefan Roese96c19042016-02-10 07:22:10 +0100470 help
471 This driver supports the network interface units in the
Stefan Roese78a112b2017-02-15 11:42:59 +0100472 Marvell ARMADA 375, 7K and 8K SoCs.
Stefan Roese96c19042016-02-10 07:22:10 +0100473
Wenyou Yange7183de2016-11-02 10:06:55 +0800474config MACB
475 bool "Cadence MACB/GEM Ethernet Interface"
Wenyou Yange7183de2016-11-02 10:06:55 +0800476 select PHYLIB
477 help
478 The Cadence MACB ethernet interface is found on many Atmel
479 AT91 and SAMA5 parts. This driver also supports the Cadence
480 GEM (Gigabit Ethernet MAC) found in some ARM SoC devices.
481 Say Y to include support for the MACB/GEM chip.
482
Wilson Lee41d6d1e2017-08-22 20:25:07 -0700483config MACB_ZYNQ
484 bool "Cadence MACB/GEM Ethernet Interface for Xilinx Zynq"
485 depends on MACB
486 help
487 The Cadence MACB ethernet interface was used on Zynq platform.
488 Say Y to enable support for the MACB/GEM in Zynq chip.
489
developer7b4c8be2020-11-12 16:36:53 +0800490config MT7620_ETH
491 bool "MediaTek MT7620 Ethernet Interface"
492 depends on SOC_MT7620
493 select PHYLIB
494 select DM_RESET
495 select DM_GPIO
496 select CLK
497 help
498 The MediaTek MT7620 ethernet interface is used on MT7620 based
499 boards. It has a built-in switch with two configurable ports which
500 can connect to external PHY/MACs.
501
Stefan Roesef9947682018-10-26 14:53:27 +0200502config MT7628_ETH
503 bool "MediaTek MT7628 Ethernet Interface"
developer89f051b2019-04-30 11:13:58 +0800504 depends on SOC_MT7628
developera5644112019-09-25 17:45:33 +0800505 select PHYLIB
Stefan Roesef9947682018-10-26 14:53:27 +0200506 help
507 The MediaTek MT7628 ethernet interface is used on MT7628 and
508 MT7688 based boards.
509
Jim Liueaddbcb2022-05-17 16:28:11 +0800510config NET_NPCM750
511 bool "Nuvoton NPCM750 Ethernet MAC"
512 help
513 support NPCM750 EMAC
514
Stefan Roesec404ac72022-04-07 09:11:52 +0200515config NET_OCTEON
516 bool "MIPS Octeon ethernet support"
517 depends on ARCH_OCTEON
518 help
519 You must select Y to enable network device support for
520 MIPS Octeon SoCs. If unsure, say n
521
Suneel Garapati53dc4482020-08-26 14:37:33 +0200522config NET_OCTEONTX
523 bool "OcteonTX Ethernet support"
524 depends on ARCH_OCTEONTX
525 depends on PCI_SRIOV
526 help
527 You must select Y to enable network device support for
528 OcteonTX SoCs. If unsure, say n
Suneel Garapati8666ae82020-08-26 14:37:42 +0200529
530config NET_OCTEONTX2
531 bool "OcteonTX2 Ethernet support"
532 depends on ARCH_OCTEONTX2
533 select OCTEONTX2_CGX_INTF
534 help
535 You must select Y to enable network device support for
536 OcteonTX2 SoCs. If unsure, say n
537
Suneel Garapati53dc4482020-08-26 14:37:33 +0200538config OCTEONTX_SMI
539 bool "OcteonTX SMI Device support"
540 depends on ARCH_OCTEONTX || ARCH_OCTEONTX2
541 help
542 You must select Y to enable SMI controller support for
543 OcteonTX or OcteonTX2 SoCs. If unsure, say n
544
Suneel Garapati8666ae82020-08-26 14:37:42 +0200545config OCTEONTX2_CGX_INTF
546 bool "OcteonTX2 CGX ATF interface support"
547 depends on ARCH_OCTEONTX2
548 default y if ARCH_OCTEONTX2
549 help
550 You must select Y to enable CGX ATF interface support for
551 OcteonTX2 SoCs. If unsure, say n
552
Bin Meng64d3dca2015-08-27 22:25:58 -0700553config PCH_GBE
554 bool "Intel Platform Controller Hub EG20T GMAC driver"
Bin Meng64d3dca2015-08-27 22:25:58 -0700555 select PHYLIB
556 help
557 This MAC is present in Intel Platform Controller Hub EG20T. It
558 supports 10/100/1000 Mbps operation.
559
Mylène Josserande44eb3a2017-04-02 12:59:08 +0200560config RGMII
561 bool "Enable RGMII"
562 help
563 Enable the support of the Reduced Gigabit Media-Independent
564 Interface (RGMII).
565
Adam Ford53705472018-07-20 23:03:57 -0500566config MII
567 bool "Enable MII"
568 help
569 Enable support of the Media-Independent Interface (MII)
570
Tom Rinie09aab12022-03-18 08:38:22 -0400571config RMII
572 bool "Enable RMII"
573 help
574 Enable support of the Reduced Media-Independent Interface (MII)
575
Marek Vasut7275b622020-05-17 18:14:17 +0200576config PCNET
577 bool "AMD PCnet series Ethernet controller driver"
578 help
579 This driver supports AMD PCnet series fast ethernet family of
580 PCI chipsets/adapters.
581
Heiko Schocher41b64a82020-02-06 09:48:16 +0100582source "drivers/net/qe/Kconfig"
583
Bin Menga6448df2016-03-21 06:47:41 -0700584config RTL8139
585 bool "Realtek 8139 series Ethernet controller driver"
586 help
587 This driver supports Realtek 8139 series fast ethernet family of
588 PCI chipsets/adapters.
589
Bin Meng29971222016-03-21 06:47:42 -0700590config RTL8169
591 bool "Realtek 8169 series Ethernet controller driver"
592 help
593 This driver supports Realtek 8169 series gigabit ethernet family of
594 PCI/PCIe chipsets/adapters.
595
Vladimir Oltean67bfc852021-09-29 18:04:41 +0300596config SJA1105
597 bool "NXP SJA1105 Ethernet switch family driver"
598 depends on DM_DSA && DM_SPI
599 select BITREVERSE
600 help
601 This is the driver for the NXP SJA1105 automotive Ethernet switch
602 family. These are 5-port devices and are managed over an SPI
603 interface. Probing is handled based on OF bindings. The driver
604 supports the following revisions:
605 - SJA1105E (Gen. 1, No TT-Ethernet)
606 - SJA1105T (Gen. 1, TT-Ethernet)
607 - SJA1105P (Gen. 2, No SGMII, No TT-Ethernet)
608 - SJA1105Q (Gen. 2, No SGMII, TT-Ethernet)
609 - SJA1105R (Gen. 2, SGMII, No TT-Ethernet)
610 - SJA1105S (Gen. 2, SGMII, TT-Ethernet)
611
Adam Ford0a044f82017-09-05 15:20:44 -0500612config SMC911X
613 bool "SMSC LAN911x and LAN921x controller driver"
614
Adam Ford0a044f82017-09-05 15:20:44 -0500615config SMC911X_32_BIT
Andre Przywara30301e52021-06-28 14:30:30 +0100616 bool "Enable SMC911X 32-bit interface"
Tom Rini4c40e732022-08-02 07:33:47 -0400617 depends on SMC911X
Adam Ford0a044f82017-09-05 15:20:44 -0500618 help
Andre Przywara30301e52021-06-28 14:30:30 +0100619 Define this if data bus is 32 bits. If your processor use a
620 narrower 16 bit bus or cannot convert one 32 bit word to two 16 bit
621 words, leave this to "n".
Adam Ford0a044f82017-09-05 15:20:44 -0500622
Mylène Josserandc1506ef2017-04-02 12:59:03 +0200623config SUN7I_GMAC
624 bool "Enable Allwinner GMAC Ethernet support"
625 help
626 Enable the support for Sun7i GMAC Ethernet controller
627
Stefan Mavrodieveaee8582017-11-03 08:56:51 +0200628config SUN7I_GMAC_FORCE_TXERR
629 bool "Force PA17 as gmac function"
630 depends on SUN7I_GMAC
631 help
632 Some ethernet phys needs TXERR control. Since the GMAC
633 doesn't have such signal, setting PA17 as GMAC function
634 makes the pin output low, which enables data transmission.
635
Mylène Josserand43ef1842017-04-02 12:59:07 +0200636config SUN4I_EMAC
637 bool "Allwinner Sun4i Ethernet MAC support"
Artturi Alm8ed09172017-11-08 05:08:58 +0200638 select PHYLIB
Mylène Josserand43ef1842017-04-02 12:59:07 +0200639 help
640 This driver supports the Allwinner based SUN4I Ethernet MAC.
641
Amit Singh Tomard194c0e2016-07-06 17:59:44 +0530642config SUN8I_EMAC
643 bool "Allwinner Sun8i Ethernet MAC support"
Amit Singh Tomard194c0e2016-07-06 17:59:44 +0530644 select PHYLIB
Philipp Tomsich00c33612017-03-26 18:50:23 +0200645 select PHY_GIGE
Amit Singh Tomard194c0e2016-07-06 17:59:44 +0530646 help
647 This driver supports the Allwinner based SUN8I/SUN50I Ethernet MAC.
648 It can be found in H3/A64/A83T based SoCs and compatible with both
Tom Rini1eee1172017-02-20 09:38:03 -0500649 External and Internal PHYs.
Amit Singh Tomard194c0e2016-07-06 17:59:44 +0530650
Nobuhiro Iwamatsuf593ecb2017-12-01 16:08:03 +0900651config SH_ETHER
652 bool "Renesas SH Ethernet MAC"
653 select PHYLIB
654 help
655 This driver supports the Ethernet for Renesas SH and ARM SoCs.
656
Grygorii Strashko5693dee2018-10-31 16:21:39 -0500657source "drivers/net/ti/Kconfig"
Adam Ford53705472018-07-20 23:03:57 -0500658
Marek Vasut880287c2020-06-20 17:43:29 +0200659config TULIP
660 bool "DEC Tulip DC2114x Ethernet support"
Marek Vasut880287c2020-06-20 17:43:29 +0200661 help
662 This driver supports DEC DC2114x Fast ethernet chips.
663
Michal Simek07d204f2015-12-09 16:54:42 +0100664config XILINX_AXIEMAC
Michal Simek07d204f2015-12-09 16:54:42 +0100665 select PHYLIB
666 select MII
667 bool "Xilinx AXI Ethernet"
668 help
669 This MAC is present in Xilinx Microblaze, Zynq and ZynqMP SoCs.
670
Ashok Reddy Soma6f5480c2021-07-02 04:40:34 -0600671config XILINX_AXIMRMAC
Tom Rini4c40e732022-08-02 07:33:47 -0400672 depends on ARCH_VERSAL
Ashok Reddy Soma6f5480c2021-07-02 04:40:34 -0600673 bool "Xilinx AXI MRMAC"
674 help
675 MRMAC is a high performance, low latency, adaptable Ethernet
676 integrated hard IP. This can be configured up to four ports with MAC
677 rates from 10GE to 100GE. This could be present in some of the Xilinx
678 Versal designs.
679
Tom Rini3d439872022-11-19 18:45:39 -0500680config VSC7385_ENET
681 bool "Vitesse 7385 Switch Firmware Upload driver"
682
683config VSC9953
684 bool "Vitesse VSC9953 L2 Switch driver"
685
Michal Simekeaee95a2015-12-11 09:41:49 +0100686config XILINX_EMACLITE
Michal Simekeaee95a2015-12-11 09:41:49 +0100687 select PHYLIB
688 select MII
689 bool "Xilinx Ethernetlite"
690 help
691 This MAC is present in Xilinx Microblaze, Zynq and ZynqMP SoCs.
692
Michal Simek3d7285f2015-11-30 14:34:52 +0100693config ZYNQ_GEM
Michal Simek27ba0902015-12-11 09:14:31 +0100694 select PHYLIB
Michal Simek3d7285f2015-11-30 14:34:52 +0100695 bool "Xilinx Ethernet GEM"
696 help
Michal Simek7fb1d232015-12-09 16:53:52 +0100697 This MAC is present in Xilinx Zynq and ZynqMP SoCs.
Michal Simek3d7285f2015-11-30 14:34:52 +0100698
Purna Chandra Mandal6b731c92016-01-28 15:30:21 +0530699config PIC32_ETH
700 bool "Microchip PIC32 Ethernet Support"
Tom Rini4c40e732022-08-02 07:33:47 -0400701 depends on MACH_PIC32
Purna Chandra Mandal6b731c92016-01-28 15:30:21 +0530702 select PHYLIB
703 help
704 This driver implements 10/100 Mbps Ethernet and MAC layer for
705 Microchip PIC32 microcontrollers.
706
Sjoerd Simons54c46f92017-01-11 11:46:11 +0100707config GMAC_ROCKCHIP
708 bool "Rockchip Synopsys Designware Ethernet MAC"
Tom Rini4c40e732022-08-02 07:33:47 -0400709 depends on ETH_DESIGNWARE
Sjoerd Simons54c46f92017-01-11 11:46:11 +0100710 help
711 This driver provides Rockchip SoCs network support based on the
712 Synopsys Designware driver.
713
Marek Vasut17714cb2017-05-13 15:54:28 +0200714config RENESAS_RAVB
715 bool "Renesas Ethernet AVB MAC"
Tom Rini4c40e732022-08-02 07:33:47 -0400716 depends on RCAR_GEN3
Marek Vasut17714cb2017-05-13 15:54:28 +0200717 select PHYLIB
718 help
719 This driver implements support for the Ethernet AVB block in
720 Renesas M3 and H3 SoCs.
721
Christophe Leroy56ef30a2017-07-06 10:33:23 +0200722config MPC8XX_FEC
723 bool "Fast Ethernet Controller on MPC8XX"
Christophe Leroyb3510fb2018-03-16 17:20:41 +0100724 depends on MPC8xx
Christophe Leroy56ef30a2017-07-06 10:33:23 +0200725 select MII
Tom Rinibd8253d2022-06-25 11:02:36 -0400726 select SYS_DISCOVER_PHY
Christophe Leroy56ef30a2017-07-06 10:33:23 +0200727 help
728 This driver implements support for the Fast Ethernet Controller
729 on MPC8XX
730
Kunihiko Hayashi7dcdc222018-05-24 19:24:37 +0900731config SNI_AVE
732 bool "Socionext AVE Ethernet support"
Tom Rini4c40e732022-08-02 07:33:47 -0400733 depends on ARCH_UNIPHIER
Kunihiko Hayashi7dcdc222018-05-24 19:24:37 +0900734 select PHYLIB
735 select SYSCON
736 select REGMAP
737 help
738 This driver implements support for the Socionext AVE Ethernet
739 controller, as found on the Socionext UniPhier family.
740
Jassi Brar29c58b02021-06-04 18:44:38 +0900741config SNI_NETSEC
742 bool "Socionext NETSEC Ethernet support"
Tom Rini4c40e732022-08-02 07:33:47 -0400743 depends on SYNQUACER_SPI
Jassi Brar29c58b02021-06-04 18:44:38 +0900744 select PHYLIB
745 help
746 This driver implements support for the Socionext SynQuacer NETSEC
747 ethernet controller, as found on the Socionext SynQuacer family.
748
Horatiu Vulturad2bf652019-01-31 15:30:33 +0100749source "drivers/net/mscc_eswitch/Kconfig"
Gregory CLEMENTeca26c82019-01-17 17:07:13 +0100750
Christophe Leroy56ef30a2017-07-06 10:33:23 +0200751config ETHER_ON_FEC1
752 bool "FEC1"
753 depends on MPC8XX_FEC
754 default y
755
756config FEC1_PHY
757 int "FEC1 PHY"
758 depends on ETHER_ON_FEC1
759 default -1
760 help
761 Define to the hardcoded PHY address which corresponds
762 to the given FEC; i. e.
763 #define CONFIG_FEC1_PHY 4
764 means that the PHY with address 4 is connected to FEC1
765
766 When set to -1, means to probe for first available.
767
768config PHY_NORXERR
769 bool "PHY_NORXERR"
770 depends on ETHER_ON_FEC1
Christophe Leroy56ef30a2017-07-06 10:33:23 +0200771 help
772 The PHY does not have a RXERR line (RMII only).
773 (so program the FEC to ignore it).
774
775config ETHER_ON_FEC2
776 bool "FEC2"
777 depends on MPC8XX_FEC && MPC885
778 default y
779
780config FEC2_PHY
781 int "FEC2 PHY"
782 depends on ETHER_ON_FEC2
783 default -1
784 help
785 Define to the hardcoded PHY address which corresponds
786 to the given FEC; i. e.
787 #define CONFIG_FEC1_PHY 4
788 means that the PHY with address 4 is connected to FEC1
789
790 When set to -1, means to probe for first available.
791
792config FEC2_PHY_NORXERR
793 bool "PHY_NORXERR"
794 depends on ETHER_ON_FEC2
Christophe Leroy56ef30a2017-07-06 10:33:23 +0200795 help
796 The PHY does not have a RXERR line (RMII only).
797 (so program the FEC to ignore it).
798
Ahmed Mansour816bc412017-12-15 16:01:01 -0500799config SYS_DPAA_QBMAN
800 bool "Device tree fixup for QBMan on freescale SOCs"
801 depends on (ARM || PPC) && !SPL_BUILD
802 default y if ARCH_B4860 || \
803 ARCH_B4420 || \
804 ARCH_P1023 || \
805 ARCH_P2041 || \
Ahmed Mansour816bc412017-12-15 16:01:01 -0500806 ARCH_T1024 || \
807 ARCH_T1040 || \
808 ARCH_T1042 || \
809 ARCH_T2080 || \
Ahmed Mansour816bc412017-12-15 16:01:01 -0500810 ARCH_T4240 || \
Ahmed Mansour816bc412017-12-15 16:01:01 -0500811 ARCH_P4080 || \
812 ARCH_P3041 || \
813 ARCH_P5040 || \
Ahmed Mansour816bc412017-12-15 16:01:01 -0500814 ARCH_LS1043A || \
815 ARCH_LS1046A
816 help
817 QBman fixups to allow deep sleep in DPAA 1 SOCs
818
Tom Rini8d7aa572022-07-31 21:08:29 -0400819config SYS_FSL_QMAN_V3
820 bool # QMAN version 3
821 depends on SYS_DPAA_QBMAN
822
Mario Sixda4fc932018-03-28 14:38:18 +0200823config TSEC_ENET
824 select PHYLIB
825 bool "Enable Three-Speed Ethernet Controller"
826 help
827 This driver implements support for the (Enhanced) Three-Speed
828 Ethernet Controller found on Freescale SoCs.
829
developerc3ac93d2018-12-20 16:12:53 +0800830config MEDIATEK_ETH
831 bool "MediaTek Ethernet GMAC Driver"
developerc3ac93d2018-12-20 16:12:53 +0800832 select PHYLIB
833 select DM_GPIO
834 select DM_RESET
835 help
836 This Driver support MediaTek Ethernet GMAC
837 Say Y to enable support for the MediaTek Ethernet GMAC.
838
Shawn Guo0e1cc912019-03-20 15:32:40 +0800839config HIGMACV300_ETH
840 bool "HiSilicon Gigabit Ethernet Controller"
Shawn Guo0e1cc912019-03-20 15:32:40 +0800841 select DM_RESET
842 select PHYLIB
843 help
844 This driver supports HIGMACV300 Ethernet controller found on
845 HiSilicon SoCs.
846
Alex Marginean7a910c12019-07-03 12:11:40 +0300847config FSL_ENETC
848 bool "NXP ENETC Ethernet controller"
Tom Rini4c40e732022-08-02 07:33:47 -0400849 depends on DM_MDIO
Alex Marginean7a910c12019-07-03 12:11:40 +0300850 help
851 This driver supports the NXP ENETC Ethernet controller found on some
852 of the NXP SoCs.
853
Alex Marginean3234a5e2019-07-16 11:21:17 +0300854config MDIO_MUX_I2CREG
855 bool "MDIO MUX accessed as a register over I2C"
856 depends on DM_MDIO_MUX && DM_I2C
857 help
858 This driver is used for MDIO muxes driven by writing to a register of
859 an I2C chip. The board it was developed for uses a mux controlled by
860 on-board FPGA which in turn is accessed as a chip over I2C.
861
Robert Marko90dfaeb2020-10-08 22:05:11 +0200862config MDIO_IPQ4019
863 bool "Qualcomm IPQ4019 MDIO interface support"
864 depends on DM_MDIO
865 help
866 This driver supports the MDIO interface found in Qualcomm
867 IPQ40xx series Soc-s.
868
Alex Margineande3e55b2019-07-25 12:33:19 +0300869config MVMDIO
870 bool "Marvell MDIO interface support"
871 depends on DM_MDIO
872 help
873 This driver supports the MDIO interface found in the network
874 interface units of the Marvell EBU SoCs (Kirkwood, Orion5x,
875 Dove, Armada 370, Armada XP, Armada 37xx and Armada7K/8K/8KP).
876
877 This driver is used by the MVPP2 and MVNETA drivers.
878
Ioana Ciornei799a4432020-03-18 16:47:36 +0200879config FSL_LS_MDIO
880 bool "NXP Layerscape MDIO interface support"
881 depends on DM_MDIO
882 help
883 This driver supports the MDIO bus found on the Fman 10G Ethernet MACs and
884 on the mEMAC (which supports both Clauses 22 and 45).
885
Dylan Hungb450ee62021-11-02 13:41:54 +0800886config ASPEED_MDIO
887 bool "Aspeed MDIO interface support"
888 depends on DM_MDIO
889 help
890 This driver supports the MDIO bus of Aspeed AST2600 SOC. The driver
891 currently supports Clause 22.
892
Neil Armstrongb66cbb32021-02-24 15:02:23 +0100893config MDIO_MUX_MMIOREG
894 bool "MDIO MUX accessed as a MMIO register access"
895 depends on DM_MDIO_MUX
896 help
897 This driver is used for MDIO muxes driven by writing to a register in
898 the MMIO physical memory.
899
Neil Armstrongd0ddbb92021-02-24 17:31:53 +0100900config MDIO_MUX_MESON_G12A
901 bool "MDIO MUX for Amlogic Meson G12A SoCs"
902 depends on DM_MDIO_MUX
903 help
904 This driver is used for the MDIO mux found on the Amlogic G12A & compatible
905 SoCs.
906
Joe Hershberger6ab76992015-03-22 17:09:13 -0500907endif # NETDEVICES