blob: 029bf3872aa5dcd83006c16eeb51241f2fe6a3ed [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
Tom Rini4c40e732022-08-02 07:33:47 -040010 bool
Joe Hershbergerc7eceaf2015-03-22 17:09:10 -050011 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"
Tom Rini4c40e732022-08-02 07:33:47 -040021 depends on PHYLIB
Alex Marginean1a5b0982019-06-03 19:10:30 +030022 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"
Tom Rini4c40e732022-08-02 07:33:47 -040046 depends on DM_MDIO
Claudiu Manoilc0566c22021-01-25 14:23:53 +020047 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
Tom Rini4c40e732022-08-02 07:33:47 -040097 select 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"
Tom Rini4c40e732022-08-02 07:33:47 -0400115 depends on ARCH_ATH79
Marek Vasut0a3d0e12016-05-24 23:29:09 +0200116 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"
Thomas Chouec06dd82015-10-22 15:29:11 +0800124 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
Suji Velupillaid2f677a2017-07-10 14:05:41 -0700130config 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
138config 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
145config 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
Álvaro Fernández Rojas204fd5e2018-12-01 19:00:24 +0100154config BCM6348_ETH
155 bool "BCM6348 EMAC support"
Tom Rini4c40e732022-08-02 07:33:47 -0400156 depends on ARCH_BMIPS
Álvaro Fernández Rojas204fd5e2018-12-01 19:00:24 +0100157 select DMA
158 select DMA_CHANNELS
159 select MII
160 select PHYLIB
161 help
162 This driver supports the BCM6348 Ethernet MAC.
163
Álvaro Fernández Rojasb0b22542018-12-01 19:00:32 +0100164config BCM6368_ETH
165 bool "BCM6368 EMAC support"
Tom Rini4c40e732022-08-02 07:33:47 -0400166 depends on ARCH_BMIPS
Álvaro Fernández Rojasb0b22542018-12-01 19:00:32 +0100167 select DMA
168 select MII
169 help
170 This driver supports the BCM6368 Ethernet MAC.
171
Amit Singh Tomar8f656c52020-01-27 01:14:42 +0000172config BCMGENET
173 bool "BCMGENET V5 support"
Amit Singh Tomar8f656c52020-01-27 01:14:42 +0000174 select PHYLIB
175 help
176 This driver supports the BCMGENET Ethernet MAC.
177
Aaron Tsengebcdddd2021-01-14 13:34:11 -0800178config CORTINA_NI_ENET
179 bool "Cortina-Access Ethernet driver"
Tom Rini4c40e732022-08-02 07:33:47 -0400180 depends on CORTINA_PLATFORM
Aaron Tsengebcdddd2021-01-14 13:34:11 -0800181 help
182 This driver supports the Cortina-Access Ethernet MAC for
183 all supported CAxxxx SoCs.
184
Andre Przywara7352fb92021-04-12 01:04:52 +0100185config CALXEDA_XGMAC
186 bool "Calxeda XGMAC support"
Andre Przywara7352fb92021-04-12 01:04:52 +0100187 help
188 This driver supports the XGMAC in Calxeda Highbank and Midway
189 machines.
190
Marek Vasutd2105972022-04-13 04:15:38 +0200191config DRIVER_DM9000
192 bool "Davicom DM9000 controller driver"
193 help
194 The Davicom DM9000 parallel bus external ethernet interface chip.
195
Stephen Warren50709602016-10-21 14:46:47 -0600196config DWC_ETH_QOS
197 bool "Synopsys DWC Ethernet QOS device support"
Stephen Warren50709602016-10-21 14:46:47 -0600198 select PHYLIB
199 help
200 This driver supports the Synopsys Designware Ethernet QOS (Quality
201 Of Service) IP block. The IP supports many options for bus type,
Patrick Delaunay68083902020-06-08 11:27:19 +0200202 clocking/reset structure, and feature list.
203
204config DWC_ETH_QOS_IMX
205 bool "Synopsys DWC Ethernet QOS device support for IMX"
206 depends on DWC_ETH_QOS
207 help
208 The Synopsys Designware Ethernet QOS IP block with the specific
209 configuration used in IMX soc.
210
211config DWC_ETH_QOS_STM32
212 bool "Synopsys DWC Ethernet QOS device support for STM32"
213 depends on DWC_ETH_QOS
Patrick Delaunayd9dc80c2021-07-20 20:09:55 +0200214 select DM_ETH_PHY
Patrick Delaunay68083902020-06-08 11:27:19 +0200215 default y if ARCH_STM32MP
216 help
217 The Synopsys Designware Ethernet QOS IP block with the specific
218 configuration used in STM32MP soc.
219
220config DWC_ETH_QOS_TEGRA186
221 bool "Synopsys DWC Ethernet QOS device support for TEGRA186"
222 depends on DWC_ETH_QOS
223 default y if TEGRA186
224 help
225 The Synopsys Designware Ethernet QOS IP block with specific
226 configuration used in NVIDIA's Tegra186 chip.
Stephen Warren50709602016-10-21 14:46:47 -0600227
Simon Glassa83ccd52015-08-19 09:33:41 -0600228config E1000
229 bool "Intel PRO/1000 Gigabit Ethernet support"
Sean Andersond22315a2022-04-26 14:35:33 -0400230 depends on PCI
Simon Glassa83ccd52015-08-19 09:33:41 -0600231 help
232 This driver supports Intel(R) PRO/1000 gigabit ethernet family of
233 adapters. For more information on how to identify your adapter, go
234 to the Adapter & Driver ID Guide at:
235
236 <http://support.intel.com/support/network/adapter/pro100/21397.htm>
237
Tom Rinia35003b2022-06-08 08:24:23 -0400238config E1000_NO_NVM
239 bool "Intel PRO/1000 has no NVMEM / EEPROM"
240 depends on E1000
241
Simon Glassa83ccd52015-08-19 09:33:41 -0600242config E1000_SPI_GENERIC
243 bool "Allow access to the Intel 8257x SPI bus"
244 depends on E1000
245 help
246 Allow generic access to the SPI bus on the Intel 8257x, for
247 example with the "sspi" command.
248
249config E1000_SPI
250 bool "Enable SPI bus utility code"
251 depends on E1000
252 help
253 Utility code for direct access to the SPI bus on Intel 8257x.
254 This does not do anything useful unless you set at least one
255 of CONFIG_CMD_E1000 or CONFIG_E1000_SPI_GENERIC.
256
257config CMD_E1000
258 bool "Enable the e1000 command"
259 depends on E1000
260 help
261 This enables the 'e1000' management command for E1000 devices. When
262 used on devices with SPI support you can reprogram the EEPROM from
263 U-Boot.
264
Marek Vasut2dcaf852020-05-23 18:07:53 +0200265config EEPRO100
266 bool "Intel PRO/100 82557/82559/82559ER Fast Ethernet support"
267 help
268 This driver supports Intel(R) PRO/100 82557/82559/82559ER fast
269 ethernet family of adapters.
270
Joe Hershberger6ab76992015-03-22 17:09:13 -0500271config ETH_SANDBOX
Tom Rini4c40e732022-08-02 07:33:47 -0400272 depends on SANDBOX
Joe Hershberger6ab76992015-03-22 17:09:13 -0500273 default y
274 bool "Sandbox: Mocked Ethernet driver"
275 help
276 This driver simply responds with fake ARP replies and ping
277 replies that are used to verify network stack functionality
278
279 This driver is particularly useful in the test/dm/eth.c tests
280
Joe Hershberger586cbd12015-03-22 17:09:21 -0500281config ETH_SANDBOX_RAW
Tom Rini4c40e732022-08-02 07:33:47 -0400282 depends on SANDBOX
Joe Hershberger586cbd12015-03-22 17:09:21 -0500283 default y
284 bool "Sandbox: Bridge to Linux Raw Sockets"
285 help
286 This driver is a bridge from the bottom of the network stack
287 in U-Boot to the RAW AF_PACKET API in Linux. This allows real
288 network traffic to be tested from within sandbox. See
Keerthyfa002552019-07-29 13:52:04 +0530289 doc/arch/index.rst for more details.
Joe Hershberger586cbd12015-03-22 17:09:21 -0500290
Simon Glass6e378742015-04-05 16:07:34 -0600291config ETH_DESIGNWARE
292 bool "Synopsys Designware Ethernet MAC"
Thomas Chou7a0dfa62015-12-07 20:53:29 +0800293 select PHYLIB
Simon Goldschmidtad588932019-01-13 19:58:41 +0100294 imply ETH_DESIGNWARE_SOCFPGA if ARCH_SOCFPGA
Simon Glass6e378742015-04-05 16:07:34 -0600295 help
296 This MAC is present in SoCs from various vendors. It supports
297 100Mbit and 1 Gbit operation. You must enable CONFIG_PHYLIB to
298 provide the PHY (physical media interface).
299
Neil Armstrong145aff72021-02-24 20:33:56 +0100300config ETH_DESIGNWARE_MESON8B
301 bool "Amlogic Meson8b and later glue driver for Synopsys Designware Ethernet MAC"
Neil Armstrong145aff72021-02-24 20:33:56 +0100302 select ETH_DESIGNWARE
303 help
304 This provides glue layer to use Synopsys Designware Ethernet MAC
305 present on the Amlogic Meson8b, GX, AXG & G12A SoCs.
306
Marek Vasut0d9a4a02018-08-13 19:32:14 +0200307config ETH_DESIGNWARE_SOCFPGA
Simon Goldschmidtb50afc82019-01-13 19:58:40 +0100308 select REGMAP
309 select SYSCON
Tom Rini7ac21a32022-06-15 12:03:43 -0400310 select DW_ALTDESCRIPTOR
Marek Vasut0d9a4a02018-08-13 19:32:14 +0200311 bool "Altera SoCFPGA extras for Synopsys Designware Ethernet MAC"
Tom Rini4c40e732022-08-02 07:33:47 -0400312 depends on ETH_DESIGNWARE
Marek Vasut0d9a4a02018-08-13 19:32:14 +0200313 help
314 The Altera SoCFPGA requires additional configuration of the
315 Altera system manager to correctly interface with the PHY.
316 This code handles those SoC specifics.
317
Amit Singh Tomar03d6edb2020-05-09 19:55:12 +0530318config ETH_DESIGNWARE_S700
319 bool "Actins S700 glue driver for Synopsys Designware Ethernet MAC"
Tom Rini4c40e732022-08-02 07:33:47 -0400320 depends on ETH_DESIGNWARE
Amit Singh Tomar03d6edb2020-05-09 19:55:12 +0530321 help
322 This provides glue layer to use Synopsys Designware Ethernet MAC
323 present on Actions S700 SoC.
324
Tom Rini7ac21a32022-06-15 12:03:43 -0400325config DW_ALTDESCRIPTOR
326 bool "Designware Ethernet MAC uses alternate (enhanced) descriptors"
327 depends on ETH_DESIGNWARE
328
Max Filippove07d3d22016-08-05 18:26:15 +0300329config ETHOC
330 bool "OpenCores 10/100 Mbps Ethernet MAC"
331 help
332 This MAC is present in OpenRISC and Xtensa XTFPGA boards.
333
Peng Fana65e0362018-03-28 20:54:14 +0800334config FEC_MXC_SHARE_MDIO
335 bool "Share the MDIO bus for FEC controller"
336 depends on FEC_MXC
337
338config FEC_MXC_MDIO_BASE
339 hex "MDIO base address for the FEC controller"
340 depends on FEC_MXC_SHARE_MDIO
341 help
342 This specifies the MDIO registers base address. It is used when
343 two FEC controllers share MDIO bus.
344
Jagan Tekia48af852016-10-08 18:00:12 +0530345config FEC_MXC
346 bool "FEC Ethernet controller"
Peng Fanfad6d902022-07-26 16:41:12 +0800347 depends on MX28 || MX5 || MX6 || MX7 || IMX8 || IMX8M || IMX8ULP || IMX93 || VF610
Jagan Tekia48af852016-10-08 18:00:12 +0530348 help
349 This driver supports the 10/100 Fast Ethernet controller for
350 NXP i.MX processors.
351
Tom Rinifa911f82019-05-12 07:59:12 -0400352config FMAN_ENET
353 bool "Freescale FMan ethernet support"
354 depends on ARM || PPC
Tom Rini82a703b2022-07-23 13:05:06 -0400355 select SYS_FMAN_V3 if ARCH_B4420 || ARCH_B4860 || ARCH_LS1043A || \
356 ARCH_LS1046A || ARCH_T1024 || ARCH_T1040 || ARCH_T1042 || \
357 ARCH_T2080 || ARCH_T4240
Tom Rinifa911f82019-05-12 07:59:12 -0400358 help
359 This driver support the Freescale FMan Ethernet controller
360
Rajesh Bhagataec38012021-11-09 16:30:38 +0530361config SYS_FMAN_FW_ADDR
362 hex "FMAN Firmware Address"
363 depends on FMAN_ENET
364 default 0x0
365
366config SYS_QE_FMAN_FW_LENGTH
367 hex "FMAN QE Firmware length"
368 depends on FMAN_ENET || QE || U_QE
369 default 0x10000
370
Tom Rini82a703b2022-07-23 13:05:06 -0400371config SYS_FMAN_V3
372 bool
Tom Rini33ae6a72022-07-23 13:05:10 -0400373 select FSL_MEMAC
Tom Rini82a703b2022-07-23 13:05:06 -0400374 help
375 SoC has FMan v3 with mEMAC
376
Tom Rinic5ea8ed2017-05-26 11:18:53 -0400377config FTMAC100
378 bool "Ftmac100 Ethernet Support"
379 help
380 This MAC is present in Andestech SoCs.
381
Cédric Le Goater38b33e92018-10-29 07:06:31 +0100382config FTGMAC100
383 bool "Ftgmac100 Ethernet Support"
Cédric Le Goater38b33e92018-10-29 07:06:31 +0100384 select PHYLIB
385 help
386 This driver supports the Faraday's FTGMAC100 Gigabit SoC
387 Ethernet controller that can be found on Aspeed SoCs (which
388 include NCSI).
389
390 It is fully compliant with IEEE 802.3 specification for
391 10/100 Mbps Ethernet and IEEE 802.3z specification for 1000
392 Mbps Ethernet and includes Reduced Media Independent
393 Interface (RMII) and Reduced Gigabit Media Independent
394 Interface (RGMII) interfaces. It adopts an AHB bus interface
395 and integrates a link list DMA engine with direct M-Bus
396 accesses for transmitting and receiving packets. It has
397 independent TX/RX fifos, supports half and full duplex (1000
398 Mbps mode only supports full duplex), flow control for full
399 duplex and backpressure for half duplex.
400
401 The FTGMAC100 also implements IP, TCP, UDP checksum offloads
402 and supports IEEE 802.1Q VLAN tag insertion and removal. It
403 offers high-priority transmit queue for QoS and CoS
404 applications.
405
Tom Rinibd8253d2022-06-25 11:02:36 -0400406config SYS_DISCOVER_PHY
407 bool
Cédric Le Goater38b33e92018-10-29 07:06:31 +0100408
Angelo Durgehelloa1d3d9f2019-11-15 23:54:17 +0100409config MCFFEC
410 bool "ColdFire Ethernet Support"
Angelo Durgehelloa1d3d9f2019-11-15 23:54:17 +0100411 select PHYLIB
Tom Rinibd8253d2022-06-25 11:02:36 -0400412 select SYS_DISCOVER_PHY
Angelo Durgehelloa1d3d9f2019-11-15 23:54:17 +0100413 help
414 This driver supports the network interface units in the
415 ColdFire family.
416
Tom Rini74d888f2022-06-25 11:02:35 -0400417config SYS_UNIFY_CACHE
418 depends on MCFFEC
419 bool "Invalidate icache during ethernet operations"
420
Angelo Durgehelloa1d3d9f2019-11-15 23:54:17 +0100421config FSLDMAFEC
422 bool "ColdFire DMA Ethernet Support"
Angelo Durgehelloa1d3d9f2019-11-15 23:54:17 +0100423 select PHYLIB
Tom Rinibd8253d2022-06-25 11:02:36 -0400424 select SYS_DISCOVER_PHY
Angelo Durgehelloa1d3d9f2019-11-15 23:54:17 +0100425 help
426 This driver supports the network interface units in the
427 ColdFire family.
428
Marek Vasutf4622282020-03-25 19:08:59 +0100429config KS8851_MLL
430 bool "Microchip KS8851-MLL controller driver"
431 help
432 The Microchip KS8851 parallel bus external ethernet interface chip.
433
Tim Harvey06dea1e2021-06-30 16:50:08 -0700434config KSZ9477
435 bool "Microchip KSZ9477 I2C controller driver"
436 depends on DM_DSA && DM_I2C
437 help
438 This driver implements a DSA switch driver for the KSZ9477 family
439 of GbE switches using the I2C interface.
440
Joel Stanley705017a2022-09-26 15:35:58 +0930441config LITEETH
442 bool "LiteX LiteEth Ethernet MAC"
443 help
444 Driver for the LiteEth Ethernet MAC from LiteX.
445
Chris Packham943679d2018-05-03 23:00:35 +1200446config MVGBE
447 bool "Marvell Orion5x/Kirkwood network interface support"
Trevor Woernerbb7ab072020-05-06 08:02:40 -0400448 depends on ARCH_KIRKWOOD || ARCH_ORION5X
Tom Rini4c40e732022-08-02 07:33:47 -0400449 select PHYLIB
Chris Packham943679d2018-05-03 23:00:35 +1200450 help
451 This driver supports the network interface units in the
452 Marvell Orion5x and Kirkwood SoCs
453
Chris Packham919041c2017-08-21 20:17:03 +1200454config MVNETA
Miquel Raynal59d42cd2017-12-28 15:43:09 +0100455 bool "Marvell Armada XP/385/3700 network interface support"
Chris Packham44b7cc72022-11-05 17:23:56 +1300456 depends on ARMADA_XP || ARMADA_38X || ARMADA_3700 || ALLEYCAT_5
Chris Packham919041c2017-08-21 20:17:03 +1200457 select PHYLIB
Marek Behún99e296f2022-04-27 12:41:46 +0200458 select DM_MDIO
Chris Packham919041c2017-08-21 20:17:03 +1200459 help
460 This driver supports the network interface units in the
Miquel Raynal59d42cd2017-12-28 15:43:09 +0100461 Marvell ARMADA XP, ARMADA 38X and ARMADA 3700 SoCs
Chris Packham919041c2017-08-21 20:17:03 +1200462
Stefan Roese96c19042016-02-10 07:22:10 +0100463config MVPP2
Stefan Roese78a112b2017-02-15 11:42:59 +0100464 bool "Marvell Armada 375/7K/8K network interface support"
465 depends on ARMADA_375 || ARMADA_8K
Stefan Roese96c19042016-02-10 07:22:10 +0100466 select PHYLIB
Nevo Hed5da38842019-08-15 18:08:45 -0400467 select MVMDIO
468 select DM_MDIO
Stefan Roese96c19042016-02-10 07:22:10 +0100469 help
470 This driver supports the network interface units in the
Stefan Roese78a112b2017-02-15 11:42:59 +0100471 Marvell ARMADA 375, 7K and 8K SoCs.
Stefan Roese96c19042016-02-10 07:22:10 +0100472
Wenyou Yange7183de2016-11-02 10:06:55 +0800473config MACB
474 bool "Cadence MACB/GEM Ethernet Interface"
Wenyou Yange7183de2016-11-02 10:06:55 +0800475 select PHYLIB
476 help
477 The Cadence MACB ethernet interface is found on many Atmel
478 AT91 and SAMA5 parts. This driver also supports the Cadence
479 GEM (Gigabit Ethernet MAC) found in some ARM SoC devices.
480 Say Y to include support for the MACB/GEM chip.
481
Wilson Lee41d6d1e2017-08-22 20:25:07 -0700482config MACB_ZYNQ
483 bool "Cadence MACB/GEM Ethernet Interface for Xilinx Zynq"
484 depends on MACB
485 help
486 The Cadence MACB ethernet interface was used on Zynq platform.
487 Say Y to enable support for the MACB/GEM in Zynq chip.
488
developer7b4c8be2020-11-12 16:36:53 +0800489config MT7620_ETH
490 bool "MediaTek MT7620 Ethernet Interface"
491 depends on SOC_MT7620
492 select PHYLIB
493 select DM_RESET
494 select DM_GPIO
495 select CLK
496 help
497 The MediaTek MT7620 ethernet interface is used on MT7620 based
498 boards. It has a built-in switch with two configurable ports which
499 can connect to external PHY/MACs.
500
Stefan Roesef9947682018-10-26 14:53:27 +0200501config MT7628_ETH
502 bool "MediaTek MT7628 Ethernet Interface"
developer89f051b2019-04-30 11:13:58 +0800503 depends on SOC_MT7628
developera5644112019-09-25 17:45:33 +0800504 select PHYLIB
Stefan Roesef9947682018-10-26 14:53:27 +0200505 help
506 The MediaTek MT7628 ethernet interface is used on MT7628 and
507 MT7688 based boards.
508
Jim Liueaddbcb2022-05-17 16:28:11 +0800509config NET_NPCM750
510 bool "Nuvoton NPCM750 Ethernet MAC"
511 help
512 support NPCM750 EMAC
513
Stefan Roesec404ac72022-04-07 09:11:52 +0200514config NET_OCTEON
515 bool "MIPS Octeon ethernet support"
516 depends on ARCH_OCTEON
517 help
518 You must select Y to enable network device support for
519 MIPS Octeon SoCs. If unsure, say n
520
Suneel Garapati53dc4482020-08-26 14:37:33 +0200521config NET_OCTEONTX
522 bool "OcteonTX Ethernet support"
523 depends on ARCH_OCTEONTX
524 depends on PCI_SRIOV
525 help
526 You must select Y to enable network device support for
527 OcteonTX SoCs. If unsure, say n
Suneel Garapati8666ae82020-08-26 14:37:42 +0200528
529config NET_OCTEONTX2
530 bool "OcteonTX2 Ethernet support"
531 depends on ARCH_OCTEONTX2
532 select OCTEONTX2_CGX_INTF
533 help
534 You must select Y to enable network device support for
535 OcteonTX2 SoCs. If unsure, say n
536
Suneel Garapati53dc4482020-08-26 14:37:33 +0200537config OCTEONTX_SMI
538 bool "OcteonTX SMI Device support"
539 depends on ARCH_OCTEONTX || ARCH_OCTEONTX2
540 help
541 You must select Y to enable SMI controller support for
542 OcteonTX or OcteonTX2 SoCs. If unsure, say n
543
Suneel Garapati8666ae82020-08-26 14:37:42 +0200544config OCTEONTX2_CGX_INTF
545 bool "OcteonTX2 CGX ATF interface support"
546 depends on ARCH_OCTEONTX2
547 default y if ARCH_OCTEONTX2
548 help
549 You must select Y to enable CGX ATF interface support for
550 OcteonTX2 SoCs. If unsure, say n
551
Bin Meng64d3dca2015-08-27 22:25:58 -0700552config PCH_GBE
553 bool "Intel Platform Controller Hub EG20T GMAC driver"
Bin Meng64d3dca2015-08-27 22:25:58 -0700554 select PHYLIB
555 help
556 This MAC is present in Intel Platform Controller Hub EG20T. It
557 supports 10/100/1000 Mbps operation.
558
Mylène Josserande44eb3a2017-04-02 12:59:08 +0200559config RGMII
560 bool "Enable RGMII"
561 help
562 Enable the support of the Reduced Gigabit Media-Independent
563 Interface (RGMII).
564
Adam Ford53705472018-07-20 23:03:57 -0500565config MII
566 bool "Enable MII"
567 help
568 Enable support of the Media-Independent Interface (MII)
569
Tom Rinie09aab12022-03-18 08:38:22 -0400570config RMII
571 bool "Enable RMII"
572 help
573 Enable support of the Reduced Media-Independent Interface (MII)
574
Marek Vasut7275b622020-05-17 18:14:17 +0200575config PCNET
576 bool "AMD PCnet series Ethernet controller driver"
577 help
578 This driver supports AMD PCnet series fast ethernet family of
579 PCI chipsets/adapters.
580
Heiko Schocher41b64a82020-02-06 09:48:16 +0100581source "drivers/net/qe/Kconfig"
582
Bin Menga6448df2016-03-21 06:47:41 -0700583config RTL8139
584 bool "Realtek 8139 series Ethernet controller driver"
585 help
586 This driver supports Realtek 8139 series fast ethernet family of
587 PCI chipsets/adapters.
588
Bin Meng29971222016-03-21 06:47:42 -0700589config RTL8169
590 bool "Realtek 8169 series Ethernet controller driver"
591 help
592 This driver supports Realtek 8169 series gigabit ethernet family of
593 PCI/PCIe chipsets/adapters.
594
Vladimir Oltean67bfc852021-09-29 18:04:41 +0300595config SJA1105
596 bool "NXP SJA1105 Ethernet switch family driver"
597 depends on DM_DSA && DM_SPI
598 select BITREVERSE
599 help
600 This is the driver for the NXP SJA1105 automotive Ethernet switch
601 family. These are 5-port devices and are managed over an SPI
602 interface. Probing is handled based on OF bindings. The driver
603 supports the following revisions:
604 - SJA1105E (Gen. 1, No TT-Ethernet)
605 - SJA1105T (Gen. 1, TT-Ethernet)
606 - SJA1105P (Gen. 2, No SGMII, No TT-Ethernet)
607 - SJA1105Q (Gen. 2, No SGMII, TT-Ethernet)
608 - SJA1105R (Gen. 2, SGMII, No TT-Ethernet)
609 - SJA1105S (Gen. 2, SGMII, TT-Ethernet)
610
Adam Ford0a044f82017-09-05 15:20:44 -0500611config SMC911X
612 bool "SMSC LAN911x and LAN921x controller driver"
613
Adam Ford0a044f82017-09-05 15:20:44 -0500614config SMC911X_32_BIT
Andre Przywara30301e52021-06-28 14:30:30 +0100615 bool "Enable SMC911X 32-bit interface"
Tom Rini4c40e732022-08-02 07:33:47 -0400616 depends on SMC911X
Adam Ford0a044f82017-09-05 15:20:44 -0500617 help
Andre Przywara30301e52021-06-28 14:30:30 +0100618 Define this if data bus is 32 bits. If your processor use a
619 narrower 16 bit bus or cannot convert one 32 bit word to two 16 bit
620 words, leave this to "n".
Adam Ford0a044f82017-09-05 15:20:44 -0500621
Mylène Josserandc1506ef2017-04-02 12:59:03 +0200622config SUN7I_GMAC
623 bool "Enable Allwinner GMAC Ethernet support"
624 help
625 Enable the support for Sun7i GMAC Ethernet controller
626
Stefan Mavrodieveaee8582017-11-03 08:56:51 +0200627config SUN7I_GMAC_FORCE_TXERR
628 bool "Force PA17 as gmac function"
629 depends on SUN7I_GMAC
630 help
631 Some ethernet phys needs TXERR control. Since the GMAC
632 doesn't have such signal, setting PA17 as GMAC function
633 makes the pin output low, which enables data transmission.
634
Mylène Josserand43ef1842017-04-02 12:59:07 +0200635config SUN4I_EMAC
636 bool "Allwinner Sun4i Ethernet MAC support"
Artturi Alm8ed09172017-11-08 05:08:58 +0200637 select PHYLIB
Mylène Josserand43ef1842017-04-02 12:59:07 +0200638 help
639 This driver supports the Allwinner based SUN4I Ethernet MAC.
640
Amit Singh Tomard194c0e2016-07-06 17:59:44 +0530641config SUN8I_EMAC
642 bool "Allwinner Sun8i Ethernet MAC support"
Amit Singh Tomard194c0e2016-07-06 17:59:44 +0530643 select PHYLIB
Philipp Tomsich00c33612017-03-26 18:50:23 +0200644 select PHY_GIGE
Amit Singh Tomard194c0e2016-07-06 17:59:44 +0530645 help
646 This driver supports the Allwinner based SUN8I/SUN50I Ethernet MAC.
647 It can be found in H3/A64/A83T based SoCs and compatible with both
Tom Rini1eee1172017-02-20 09:38:03 -0500648 External and Internal PHYs.
Amit Singh Tomard194c0e2016-07-06 17:59:44 +0530649
Nobuhiro Iwamatsuf593ecb2017-12-01 16:08:03 +0900650config SH_ETHER
651 bool "Renesas SH Ethernet MAC"
652 select PHYLIB
653 help
654 This driver supports the Ethernet for Renesas SH and ARM SoCs.
655
Grygorii Strashko5693dee2018-10-31 16:21:39 -0500656source "drivers/net/ti/Kconfig"
Adam Ford53705472018-07-20 23:03:57 -0500657
Marek Vasut880287c2020-06-20 17:43:29 +0200658config TULIP
659 bool "DEC Tulip DC2114x Ethernet support"
Marek Vasut880287c2020-06-20 17:43:29 +0200660 help
661 This driver supports DEC DC2114x Fast ethernet chips.
662
Michal Simek07d204f2015-12-09 16:54:42 +0100663config XILINX_AXIEMAC
Michal Simek07d204f2015-12-09 16:54:42 +0100664 select PHYLIB
665 select MII
666 bool "Xilinx AXI Ethernet"
667 help
668 This MAC is present in Xilinx Microblaze, Zynq and ZynqMP SoCs.
669
Ashok Reddy Soma6f5480c2021-07-02 04:40:34 -0600670config XILINX_AXIMRMAC
Tom Rini4c40e732022-08-02 07:33:47 -0400671 depends on ARCH_VERSAL
Ashok Reddy Soma6f5480c2021-07-02 04:40:34 -0600672 bool "Xilinx AXI MRMAC"
673 help
674 MRMAC is a high performance, low latency, adaptable Ethernet
675 integrated hard IP. This can be configured up to four ports with MAC
676 rates from 10GE to 100GE. This could be present in some of the Xilinx
677 Versal designs.
678
Michal Simekeaee95a2015-12-11 09:41:49 +0100679config XILINX_EMACLITE
Michal Simekeaee95a2015-12-11 09:41:49 +0100680 select PHYLIB
681 select MII
682 bool "Xilinx Ethernetlite"
683 help
684 This MAC is present in Xilinx Microblaze, Zynq and ZynqMP SoCs.
685
Michal Simek3d7285f2015-11-30 14:34:52 +0100686config ZYNQ_GEM
Michal Simek27ba0902015-12-11 09:14:31 +0100687 select PHYLIB
Michal Simek3d7285f2015-11-30 14:34:52 +0100688 bool "Xilinx Ethernet GEM"
689 help
Michal Simek7fb1d232015-12-09 16:53:52 +0100690 This MAC is present in Xilinx Zynq and ZynqMP SoCs.
Michal Simek3d7285f2015-11-30 14:34:52 +0100691
Purna Chandra Mandal6b731c92016-01-28 15:30:21 +0530692config PIC32_ETH
693 bool "Microchip PIC32 Ethernet Support"
Tom Rini4c40e732022-08-02 07:33:47 -0400694 depends on MACH_PIC32
Purna Chandra Mandal6b731c92016-01-28 15:30:21 +0530695 select PHYLIB
696 help
697 This driver implements 10/100 Mbps Ethernet and MAC layer for
698 Microchip PIC32 microcontrollers.
699
Sjoerd Simons54c46f92017-01-11 11:46:11 +0100700config GMAC_ROCKCHIP
701 bool "Rockchip Synopsys Designware Ethernet MAC"
Tom Rini4c40e732022-08-02 07:33:47 -0400702 depends on ETH_DESIGNWARE
Sjoerd Simons54c46f92017-01-11 11:46:11 +0100703 help
704 This driver provides Rockchip SoCs network support based on the
705 Synopsys Designware driver.
706
Marek Vasut17714cb2017-05-13 15:54:28 +0200707config RENESAS_RAVB
708 bool "Renesas Ethernet AVB MAC"
Tom Rini4c40e732022-08-02 07:33:47 -0400709 depends on RCAR_GEN3
Marek Vasut17714cb2017-05-13 15:54:28 +0200710 select PHYLIB
711 help
712 This driver implements support for the Ethernet AVB block in
713 Renesas M3 and H3 SoCs.
714
Christophe Leroy56ef30a2017-07-06 10:33:23 +0200715config MPC8XX_FEC
716 bool "Fast Ethernet Controller on MPC8XX"
Christophe Leroyb3510fb2018-03-16 17:20:41 +0100717 depends on MPC8xx
Christophe Leroy69ef96d2022-05-12 15:48:51 +0200718 depends on DM_ETH
Christophe Leroy56ef30a2017-07-06 10:33:23 +0200719 select MII
Tom Rinibd8253d2022-06-25 11:02:36 -0400720 select SYS_DISCOVER_PHY
Christophe Leroy56ef30a2017-07-06 10:33:23 +0200721 help
722 This driver implements support for the Fast Ethernet Controller
723 on MPC8XX
724
Kunihiko Hayashi7dcdc222018-05-24 19:24:37 +0900725config SNI_AVE
726 bool "Socionext AVE Ethernet support"
Tom Rini4c40e732022-08-02 07:33:47 -0400727 depends on ARCH_UNIPHIER
Kunihiko Hayashi7dcdc222018-05-24 19:24:37 +0900728 select PHYLIB
729 select SYSCON
730 select REGMAP
731 help
732 This driver implements support for the Socionext AVE Ethernet
733 controller, as found on the Socionext UniPhier family.
734
Jassi Brar29c58b02021-06-04 18:44:38 +0900735config SNI_NETSEC
736 bool "Socionext NETSEC Ethernet support"
Tom Rini4c40e732022-08-02 07:33:47 -0400737 depends on SYNQUACER_SPI
Jassi Brar29c58b02021-06-04 18:44:38 +0900738 select PHYLIB
739 help
740 This driver implements support for the Socionext SynQuacer NETSEC
741 ethernet controller, as found on the Socionext SynQuacer family.
742
Horatiu Vulturad2bf652019-01-31 15:30:33 +0100743source "drivers/net/mscc_eswitch/Kconfig"
Gregory CLEMENTeca26c82019-01-17 17:07:13 +0100744
Christophe Leroy56ef30a2017-07-06 10:33:23 +0200745config ETHER_ON_FEC1
746 bool "FEC1"
747 depends on MPC8XX_FEC
748 default y
749
750config FEC1_PHY
751 int "FEC1 PHY"
752 depends on ETHER_ON_FEC1
753 default -1
754 help
755 Define to the hardcoded PHY address which corresponds
756 to the given FEC; i. e.
757 #define CONFIG_FEC1_PHY 4
758 means that the PHY with address 4 is connected to FEC1
759
760 When set to -1, means to probe for first available.
761
762config PHY_NORXERR
763 bool "PHY_NORXERR"
764 depends on ETHER_ON_FEC1
Christophe Leroy56ef30a2017-07-06 10:33:23 +0200765 help
766 The PHY does not have a RXERR line (RMII only).
767 (so program the FEC to ignore it).
768
769config ETHER_ON_FEC2
770 bool "FEC2"
771 depends on MPC8XX_FEC && MPC885
772 default y
773
774config FEC2_PHY
775 int "FEC2 PHY"
776 depends on ETHER_ON_FEC2
777 default -1
778 help
779 Define to the hardcoded PHY address which corresponds
780 to the given FEC; i. e.
781 #define CONFIG_FEC1_PHY 4
782 means that the PHY with address 4 is connected to FEC1
783
784 When set to -1, means to probe for first available.
785
786config FEC2_PHY_NORXERR
787 bool "PHY_NORXERR"
788 depends on ETHER_ON_FEC2
Christophe Leroy56ef30a2017-07-06 10:33:23 +0200789 help
790 The PHY does not have a RXERR line (RMII only).
791 (so program the FEC to ignore it).
792
Ahmed Mansour816bc412017-12-15 16:01:01 -0500793config SYS_DPAA_QBMAN
794 bool "Device tree fixup for QBMan on freescale SOCs"
795 depends on (ARM || PPC) && !SPL_BUILD
796 default y if ARCH_B4860 || \
797 ARCH_B4420 || \
798 ARCH_P1023 || \
799 ARCH_P2041 || \
Ahmed Mansour816bc412017-12-15 16:01:01 -0500800 ARCH_T1024 || \
801 ARCH_T1040 || \
802 ARCH_T1042 || \
803 ARCH_T2080 || \
Ahmed Mansour816bc412017-12-15 16:01:01 -0500804 ARCH_T4240 || \
Ahmed Mansour816bc412017-12-15 16:01:01 -0500805 ARCH_P4080 || \
806 ARCH_P3041 || \
807 ARCH_P5040 || \
Ahmed Mansour816bc412017-12-15 16:01:01 -0500808 ARCH_LS1043A || \
809 ARCH_LS1046A
810 help
811 QBman fixups to allow deep sleep in DPAA 1 SOCs
812
Tom Rini8d7aa572022-07-31 21:08:29 -0400813config SYS_FSL_QMAN_V3
814 bool # QMAN version 3
815 depends on SYS_DPAA_QBMAN
816
Mario Sixda4fc932018-03-28 14:38:18 +0200817config TSEC_ENET
818 select PHYLIB
819 bool "Enable Three-Speed Ethernet Controller"
820 help
821 This driver implements support for the (Enhanced) Three-Speed
822 Ethernet Controller found on Freescale SoCs.
823
developerc3ac93d2018-12-20 16:12:53 +0800824config MEDIATEK_ETH
825 bool "MediaTek Ethernet GMAC Driver"
developerc3ac93d2018-12-20 16:12:53 +0800826 select PHYLIB
827 select DM_GPIO
828 select DM_RESET
829 help
830 This Driver support MediaTek Ethernet GMAC
831 Say Y to enable support for the MediaTek Ethernet GMAC.
832
Shawn Guo0e1cc912019-03-20 15:32:40 +0800833config HIGMACV300_ETH
834 bool "HiSilicon Gigabit Ethernet Controller"
Shawn Guo0e1cc912019-03-20 15:32:40 +0800835 select DM_RESET
836 select PHYLIB
837 help
838 This driver supports HIGMACV300 Ethernet controller found on
839 HiSilicon SoCs.
840
Alex Marginean7a910c12019-07-03 12:11:40 +0300841config FSL_ENETC
842 bool "NXP ENETC Ethernet controller"
Tom Rini4c40e732022-08-02 07:33:47 -0400843 depends on DM_MDIO
Alex Marginean7a910c12019-07-03 12:11:40 +0300844 help
845 This driver supports the NXP ENETC Ethernet controller found on some
846 of the NXP SoCs.
847
Alex Marginean3234a5e2019-07-16 11:21:17 +0300848config MDIO_MUX_I2CREG
849 bool "MDIO MUX accessed as a register over I2C"
850 depends on DM_MDIO_MUX && DM_I2C
851 help
852 This driver is used for MDIO muxes driven by writing to a register of
853 an I2C chip. The board it was developed for uses a mux controlled by
854 on-board FPGA which in turn is accessed as a chip over I2C.
855
Robert Marko90dfaeb2020-10-08 22:05:11 +0200856config MDIO_IPQ4019
857 bool "Qualcomm IPQ4019 MDIO interface support"
858 depends on DM_MDIO
859 help
860 This driver supports the MDIO interface found in Qualcomm
861 IPQ40xx series Soc-s.
862
Alex Margineande3e55b2019-07-25 12:33:19 +0300863config MVMDIO
864 bool "Marvell MDIO interface support"
865 depends on DM_MDIO
866 help
867 This driver supports the MDIO interface found in the network
868 interface units of the Marvell EBU SoCs (Kirkwood, Orion5x,
869 Dove, Armada 370, Armada XP, Armada 37xx and Armada7K/8K/8KP).
870
871 This driver is used by the MVPP2 and MVNETA drivers.
872
Ioana Ciornei799a4432020-03-18 16:47:36 +0200873config FSL_LS_MDIO
874 bool "NXP Layerscape MDIO interface support"
875 depends on DM_MDIO
876 help
877 This driver supports the MDIO bus found on the Fman 10G Ethernet MACs and
878 on the mEMAC (which supports both Clauses 22 and 45).
879
Dylan Hungb450ee62021-11-02 13:41:54 +0800880config ASPEED_MDIO
881 bool "Aspeed MDIO interface support"
882 depends on DM_MDIO
883 help
884 This driver supports the MDIO bus of Aspeed AST2600 SOC. The driver
885 currently supports Clause 22.
886
Neil Armstrongb66cbb32021-02-24 15:02:23 +0100887config MDIO_MUX_MMIOREG
888 bool "MDIO MUX accessed as a MMIO register access"
889 depends on DM_MDIO_MUX
890 help
891 This driver is used for MDIO muxes driven by writing to a register in
892 the MMIO physical memory.
893
Neil Armstrongd0ddbb92021-02-24 17:31:53 +0100894config MDIO_MUX_MESON_G12A
895 bool "MDIO MUX for Amlogic Meson G12A SoCs"
896 depends on DM_MDIO_MUX
897 help
898 This driver is used for the MDIO mux found on the Amlogic G12A & compatible
899 SoCs.
900
Joe Hershberger6ab76992015-03-22 17:09:13 -0500901endif # NETDEVICES