Kconfig 27 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966
  1. source "drivers/net/phy/Kconfig"
  2. source "drivers/net/pfe_eth/Kconfig"
  3. source "drivers/net/fsl-mc/Kconfig"
  4. config ETH
  5. def_bool y
  6. config DM_ETH
  7. bool
  8. depends on DM
  9. help
  10. Enable driver model for Ethernet.
  11. The eth_*() interface will be implemented by the UCLASS_ETH class
  12. This is currently implemented in net/eth-uclass.c
  13. Look in include/net.h for details.
  14. config SPL_DM_ETH
  15. depends on SPL_NET
  16. def_bool y
  17. config DM_MDIO
  18. bool "Enable Driver Model for MDIO devices"
  19. depends on PHYLIB
  20. help
  21. Enable driver model for MDIO devices
  22. Adds UCLASS_MDIO DM class supporting MDIO buses that are probed as
  23. stand-alone devices. Useful in particular for systems that support
  24. DM_ETH and have a stand-alone MDIO hardware block shared by multiple
  25. Ethernet interfaces.
  26. This is currently implemented in net/mdio-uclass.c
  27. Look in include/miiphy.h for details.
  28. config DM_MDIO_MUX
  29. bool "Enable Driver Model for MDIO MUX devices"
  30. depends on DM_MDIO
  31. help
  32. Enable driver model for MDIO MUX devices
  33. Adds UCLASS_MDIO_MUX DM class supporting MDIO MUXes. Useful for
  34. systems that support DM_MDIO and integrate one or multiple muxes on
  35. the MDIO bus.
  36. This is currently implemented in net/mdio-mux-uclass.c
  37. Look in include/miiphy.h for details.
  38. config DM_DSA
  39. bool "Enable Driver Model for DSA switches"
  40. depends on DM_MDIO
  41. depends on PHY_FIXED
  42. help
  43. Enable driver model for DSA switches
  44. Adds UCLASS_DSA class supporting switches that follow the Distributed
  45. Switch Architecture (DSA). These switches rely on the presence of a
  46. management switch port connected to an Ethernet controller capable of
  47. receiving frames from the switch. This host Ethernet controller is
  48. called the "master" Ethernet interface in DSA terminology.
  49. This is currently implemented in net/dsa-uclass.c, refer to
  50. include/net/dsa.h for API details.
  51. config MDIO_SANDBOX
  52. depends on DM_MDIO && SANDBOX
  53. default y
  54. bool "Sandbox: Mocked MDIO driver"
  55. help
  56. This driver implements dummy read/write/reset MDIO functions mimicking
  57. a bus with a single PHY.
  58. This driver is used in for testing in test/dm/mdio.c
  59. config MDIO_MUX_SANDBOX
  60. depends on DM_MDIO_MUX && MDIO_SANDBOX
  61. default y
  62. bool "Sandbox: Mocked MDIO-MUX driver"
  63. help
  64. This driver implements dummy select/deselect ops mimicking a MUX on
  65. the MDIO bux. It uses mdio_sandbox driver as parent MDIO.
  66. This driver is used for testing in test/dm/mdio.c
  67. config DM_ETH_PHY
  68. bool "Enable Driver Model for Ethernet Generic PHY drivers"
  69. depends on DM
  70. help
  71. Enable driver model for Ethernet Generic PHY .
  72. config DSA_SANDBOX
  73. depends on DM_DSA && SANDBOX
  74. default y
  75. bool "Sandbox: Mocked DSA driver"
  76. help
  77. This driver implements a dummy DSA switch connected to a dummy sandbox
  78. Ethernet device used as DSA master, to test DSA class code, including
  79. exported DSA API and datapath processing of Ethernet traffic.
  80. menuconfig NETDEVICES
  81. bool "Network device support"
  82. depends on NET
  83. select DM_ETH
  84. help
  85. You must select Y to enable any network device support
  86. Generally if you have any networking support this is a given
  87. If unsure, say Y
  88. if NETDEVICES
  89. config PHY_GIGE
  90. bool "Enable GbE PHY status parsing and configuration"
  91. help
  92. Enables support for parsing the status output and for
  93. configuring GbE PHYs (affects the inner workings of some
  94. commands and miiphyutil.c).
  95. config AG7XXX
  96. bool "Atheros AG7xxx Ethernet MAC support"
  97. depends on ARCH_ATH79
  98. select PHYLIB
  99. help
  100. This driver supports the Atheros AG7xxx Ethernet MAC. This MAC is
  101. present in the Atheros AR7xxx, AR9xxx and QCA9xxx MIPS chips.
  102. config ALTERA_TSE
  103. bool "Altera Triple-Speed Ethernet MAC support"
  104. select PHYLIB
  105. help
  106. This driver supports the Altera Triple-Speed (TSE) Ethernet MAC.
  107. Please find details on the "Triple-Speed Ethernet MegaCore Function
  108. Resource Center" of Altera.
  109. config BCM_SF2_ETH
  110. bool "Broadcom SF2 (Starfighter2) Ethernet support"
  111. select PHYLIB
  112. help
  113. This is an abstract framework which provides a generic interface
  114. to MAC and DMA management for multiple Broadcom SoCs such as
  115. Cygnus, NSP and bcm28155_ap platforms.
  116. config BCM_SF2_ETH_DEFAULT_PORT
  117. int "Broadcom SF2 (Starfighter2) Ethernet default port number"
  118. depends on BCM_SF2_ETH
  119. default 0
  120. help
  121. Default port number for the Starfighter2 ethernet driver.
  122. config BCM_SF2_ETH_GMAC
  123. bool "Broadcom SF2 (Starfighter2) GMAC Ethernet support"
  124. depends on BCM_SF2_ETH
  125. help
  126. This flag enables the ethernet support for Broadcom platforms with
  127. GMAC such as Cygnus. This driver is based on the framework provided
  128. by the BCM_SF2_ETH driver.
  129. Say Y to any bcmcygnus based platforms.
  130. config BCM6348_ETH
  131. bool "BCM6348 EMAC support"
  132. depends on ARCH_BMIPS
  133. select DMA
  134. select DMA_CHANNELS
  135. select MII
  136. select PHYLIB
  137. help
  138. This driver supports the BCM6348 Ethernet MAC.
  139. config BCM6368_ETH
  140. bool "BCM6368 EMAC support"
  141. depends on ARCH_BMIPS
  142. select DMA
  143. select MII
  144. help
  145. This driver supports the BCM6368 Ethernet MAC.
  146. config BCMGENET
  147. bool "BCMGENET V5 support"
  148. select PHYLIB
  149. help
  150. This driver supports the BCMGENET Ethernet MAC.
  151. source "drivers/net/bnxt/Kconfig"
  152. config CORTINA_NI_ENET
  153. bool "Cortina-Access Ethernet driver"
  154. depends on CORTINA_PLATFORM
  155. help
  156. This driver supports the Cortina-Access Ethernet MAC for
  157. all supported CAxxxx SoCs.
  158. config CALXEDA_XGMAC
  159. bool "Calxeda XGMAC support"
  160. help
  161. This driver supports the XGMAC in Calxeda Highbank and Midway
  162. machines.
  163. config DRIVER_DM9000
  164. bool "Davicom DM9000 controller driver"
  165. help
  166. The Davicom DM9000 parallel bus external ethernet interface chip.
  167. config DM9000_BYTE_SWAPPED
  168. bool "Byte swapped access for DM9000"
  169. depends on DRIVER_DM9000
  170. config DM9000_NO_SROM
  171. bool "No SROM on DM9000"
  172. depends on DRIVER_DM9000
  173. config DM9000_USE_16BIT
  174. bool "Use 16bit access in DM9000"
  175. depends on DRIVER_DM9000
  176. config DWC_ETH_QOS
  177. bool "Synopsys DWC Ethernet QOS device support"
  178. select PHYLIB
  179. help
  180. This driver supports the Synopsys Designware Ethernet QOS (Quality
  181. Of Service) IP block. The IP supports many options for bus type,
  182. clocking/reset structure, and feature list.
  183. config DWC_ETH_QOS_IMX
  184. bool "Synopsys DWC Ethernet QOS device support for IMX"
  185. depends on DWC_ETH_QOS
  186. help
  187. The Synopsys Designware Ethernet QOS IP block with the specific
  188. configuration used in IMX soc.
  189. config DWC_ETH_QOS_STM32
  190. bool "Synopsys DWC Ethernet QOS device support for STM32"
  191. depends on DWC_ETH_QOS
  192. select DM_ETH_PHY
  193. default y if ARCH_STM32MP
  194. help
  195. The Synopsys Designware Ethernet QOS IP block with the specific
  196. configuration used in STM32MP soc.
  197. config DWC_ETH_QOS_TEGRA186
  198. bool "Synopsys DWC Ethernet QOS device support for TEGRA186"
  199. depends on DWC_ETH_QOS
  200. default y if TEGRA186
  201. help
  202. The Synopsys Designware Ethernet QOS IP block with specific
  203. configuration used in NVIDIA's Tegra186 chip.
  204. config DWC_ETH_QOS_QCOM
  205. bool "Synopsys DWC Ethernet QOS device support for Qcom SoCs"
  206. depends on DWC_ETH_QOS
  207. help
  208. The Synopsys Designware Ethernet QOS IP block with specific
  209. configuration used in Qcom QCS404 SoC.
  210. config DWC_ETH_QOS_STARFIVE
  211. bool "Synopsys DWC Ethernet QOS device support for STARFIVE"
  212. depends on DWC_ETH_QOS
  213. help
  214. The Synopsys Designware Ethernet QOS IP block with specific
  215. configuration used in STARFIVE JH7110 soc.
  216. config E1000
  217. bool "Intel PRO/1000 Gigabit Ethernet support"
  218. depends on PCI
  219. help
  220. This driver supports Intel(R) PRO/1000 gigabit ethernet family of
  221. adapters. For more information on how to identify your adapter, go
  222. to the Adapter & Driver ID Guide at:
  223. <http://support.intel.com/support/network/adapter/pro100/21397.htm>
  224. config E1000_NO_NVM
  225. bool "Intel PRO/1000 has no NVMEM / EEPROM"
  226. depends on E1000
  227. config E1000_SPI_GENERIC
  228. bool "Allow access to the Intel 8257x SPI bus"
  229. depends on E1000
  230. help
  231. Allow generic access to the SPI bus on the Intel 8257x, for
  232. example with the "sspi" command.
  233. config E1000_SPI
  234. bool "Enable SPI bus utility code"
  235. depends on E1000
  236. help
  237. Utility code for direct access to the SPI bus on Intel 8257x.
  238. This does not do anything useful unless you set at least one
  239. of CONFIG_CMD_E1000 or CONFIG_E1000_SPI_GENERIC.
  240. config CMD_E1000
  241. bool "Enable the e1000 command"
  242. depends on E1000
  243. help
  244. This enables the 'e1000' management command for E1000 devices. When
  245. used on devices with SPI support you can reprogram the EEPROM from
  246. U-Boot.
  247. config EEPRO100
  248. bool "Intel PRO/100 82557/82559/82559ER Fast Ethernet support"
  249. help
  250. This driver supports Intel(R) PRO/100 82557/82559/82559ER fast
  251. ethernet family of adapters.
  252. config ETH_SANDBOX
  253. depends on SANDBOX
  254. default y
  255. bool "Sandbox: Mocked Ethernet driver"
  256. help
  257. This driver simply responds with fake ARP replies and ping
  258. replies that are used to verify network stack functionality
  259. This driver is particularly useful in the test/dm/eth.c tests
  260. config ETH_SANDBOX_RAW
  261. depends on SANDBOX
  262. default y
  263. bool "Sandbox: Bridge to Linux Raw Sockets"
  264. help
  265. This driver is a bridge from the bottom of the network stack
  266. in U-Boot to the RAW AF_PACKET API in Linux. This allows real
  267. network traffic to be tested from within sandbox. See
  268. doc/arch/index.rst for more details.
  269. config ETH_DESIGNWARE
  270. bool "Synopsys Designware Ethernet MAC"
  271. select PHYLIB
  272. imply ETH_DESIGNWARE_SOCFPGA if ARCH_SOCFPGA
  273. help
  274. This MAC is present in SoCs from various vendors. It supports
  275. 100Mbit and 1 Gbit operation. You must enable CONFIG_PHYLIB to
  276. provide the PHY (physical media interface).
  277. config ETH_DESIGNWARE_MESON8B
  278. bool "Amlogic Meson8b and later glue driver for Synopsys Designware Ethernet MAC"
  279. select ETH_DESIGNWARE
  280. help
  281. This provides glue layer to use Synopsys Designware Ethernet MAC
  282. present on the Amlogic Meson8b, GX, AXG & G12A SoCs.
  283. config ETH_DESIGNWARE_SOCFPGA
  284. select REGMAP
  285. select SYSCON
  286. select DW_ALTDESCRIPTOR
  287. bool "Altera SoCFPGA extras for Synopsys Designware Ethernet MAC"
  288. depends on ETH_DESIGNWARE
  289. help
  290. The Altera SoCFPGA requires additional configuration of the
  291. Altera system manager to correctly interface with the PHY.
  292. This code handles those SoC specifics.
  293. config ETH_DESIGNWARE_S700
  294. bool "Actins S700 glue driver for Synopsys Designware Ethernet MAC"
  295. depends on ETH_DESIGNWARE
  296. help
  297. This provides glue layer to use Synopsys Designware Ethernet MAC
  298. present on Actions S700 SoC.
  299. config DW_ALTDESCRIPTOR
  300. bool "Designware Ethernet MAC uses alternate (enhanced) descriptors"
  301. depends on ETH_DESIGNWARE
  302. config ETHOC
  303. bool "OpenCores 10/100 Mbps Ethernet MAC"
  304. help
  305. This MAC is present in OpenRISC and Xtensa XTFPGA boards.
  306. config FEC_MXC_SHARE_MDIO
  307. bool "Share the MDIO bus for FEC controller"
  308. depends on FEC_MXC
  309. config FEC_MXC_MDIO_BASE
  310. hex "MDIO base address for the FEC controller"
  311. depends on FEC_MXC_SHARE_MDIO
  312. help
  313. This specifies the MDIO registers base address. It is used when
  314. two FEC controllers share MDIO bus.
  315. config FEC_MXC
  316. bool "FEC Ethernet controller"
  317. depends on MX28 || MX5 || MX6 || MX7 || IMX8 || IMX8M || IMX8ULP || IMX93 || VF610
  318. help
  319. This driver supports the 10/100 Fast Ethernet controller for
  320. NXP i.MX processors.
  321. config FMAN_ENET
  322. bool "Freescale FMan ethernet support"
  323. depends on ARM || PPC
  324. select SYS_FMAN_V3 if ARCH_B4420 || ARCH_B4860 || ARCH_LS1043A || \
  325. ARCH_LS1046A || ARCH_T1024 || ARCH_T1040 || ARCH_T1042 || \
  326. ARCH_T2080 || ARCH_T4240
  327. select FSL_FM_10GEC_REGULAR_NOTATION if ARCH_T1024
  328. help
  329. This driver support the Freescale FMan Ethernet controller
  330. config SYS_FMAN_FW_ADDR
  331. hex "FMAN Firmware Address"
  332. depends on FMAN_ENET
  333. default 0x0
  334. config SYS_QE_FMAN_FW_LENGTH
  335. hex "FMAN QE Firmware length"
  336. depends on FMAN_ENET || QE || U_QE
  337. default 0x10000
  338. config SYS_FMAN_V3
  339. bool
  340. select FSL_MEMAC
  341. help
  342. SoC has FMan v3 with mEMAC
  343. config FSL_FM_10GEC_REGULAR_NOTATION
  344. bool
  345. help
  346. On SoCs T4240, T2080, LS1043A, etc, the notation between 10GEC and
  347. MAC as below:
  348. 10GEC1->MAC9, 10GEC2->MAC10, 10GEC3->MAC1, 10GEC4->MAC2
  349. While on SoCs T1024, etc, the notation between 10GEC and MAC as below:
  350. 10GEC1->MAC1, 10GEC2->MAC2
  351. so we introduce CONFIG_FSL_FM_10GEC_REGULAR_NOTATION to identify the
  352. new SoCs on which 10GEC enumeration is consistent with MAC
  353. enumeration.
  354. config FTMAC100
  355. bool "Ftmac100 Ethernet Support"
  356. select MII
  357. help
  358. This MAC is present in Andestech SoCs.
  359. config FTGMAC100
  360. bool "Ftgmac100 Ethernet Support"
  361. select PHYLIB
  362. help
  363. This driver supports the Faraday's FTGMAC100 Gigabit SoC
  364. Ethernet controller that can be found on Aspeed SoCs (which
  365. include NCSI).
  366. It is fully compliant with IEEE 802.3 specification for
  367. 10/100 Mbps Ethernet and IEEE 802.3z specification for 1000
  368. Mbps Ethernet and includes Reduced Media Independent
  369. Interface (RMII) and Reduced Gigabit Media Independent
  370. Interface (RGMII) interfaces. It adopts an AHB bus interface
  371. and integrates a link list DMA engine with direct M-Bus
  372. accesses for transmitting and receiving packets. It has
  373. independent TX/RX fifos, supports half and full duplex (1000
  374. Mbps mode only supports full duplex), flow control for full
  375. duplex and backpressure for half duplex.
  376. The FTGMAC100 also implements IP, TCP, UDP checksum offloads
  377. and supports IEEE 802.1Q VLAN tag insertion and removal. It
  378. offers high-priority transmit queue for QoS and CoS
  379. applications.
  380. config SYS_DISCOVER_PHY
  381. bool
  382. config MCFFEC
  383. bool "ColdFire Ethernet Support"
  384. select PHYLIB
  385. select SYS_DISCOVER_PHY
  386. help
  387. This driver supports the network interface units in the
  388. ColdFire family.
  389. config SYS_UNIFY_CACHE
  390. depends on MCFFEC
  391. bool "Invalidate icache during ethernet operations"
  392. config FSLDMAFEC
  393. bool "ColdFire DMA Ethernet Support"
  394. select PHYLIB
  395. select SYS_DISCOVER_PHY
  396. help
  397. This driver supports the network interface units in the
  398. ColdFire family.
  399. config KS8851_MLL
  400. bool "Microchip KS8851-MLL controller driver"
  401. help
  402. The Microchip KS8851 parallel bus external ethernet interface chip.
  403. config KSZ9477
  404. bool "Microchip KSZ9477 I2C controller driver"
  405. depends on DM_DSA && DM_I2C
  406. help
  407. This driver implements a DSA switch driver for the KSZ9477 family
  408. of GbE switches using the I2C interface.
  409. config LITEETH
  410. bool "LiteX LiteEth Ethernet MAC"
  411. help
  412. Driver for the LiteEth Ethernet MAC from LiteX.
  413. config MV88E6XXX
  414. bool "Marvell MV88E6xxx Ethernet switch DSA driver"
  415. depends on DM_DSA && DM_MDIO
  416. help
  417. This driver implements a DSA switch driver for the MV88E6xxx family
  418. of Ethernet switches using the MDIO interface
  419. config MVGBE
  420. bool "Marvell Orion5x/Kirkwood network interface support"
  421. depends on ARCH_KIRKWOOD || ARCH_ORION5X
  422. select PHYLIB
  423. help
  424. This driver supports the network interface units in the
  425. Marvell Orion5x and Kirkwood SoCs
  426. config MVNETA
  427. bool "Marvell Armada XP/385/3700 network interface support"
  428. depends on ARMADA_XP || ARMADA_38X || ARMADA_3700 || ALLEYCAT_5
  429. select PHYLIB
  430. select DM_MDIO
  431. help
  432. This driver supports the network interface units in the
  433. Marvell ARMADA XP, ARMADA 38X and ARMADA 3700 SoCs
  434. config MVPP2
  435. bool "Marvell Armada 375/7K/8K network interface support"
  436. depends on ARMADA_375 || ARMADA_8K
  437. select PHYLIB
  438. select MVMDIO
  439. select DM_MDIO
  440. help
  441. This driver supports the network interface units in the
  442. Marvell ARMADA 375, 7K and 8K SoCs.
  443. config MACB
  444. bool "Cadence MACB/GEM Ethernet Interface"
  445. select PHYLIB
  446. help
  447. The Cadence MACB ethernet interface is found on many Atmel
  448. AT91 and SAMA5 parts. This driver also supports the Cadence
  449. GEM (Gigabit Ethernet MAC) found in some ARM SoC devices.
  450. Say Y to include support for the MACB/GEM chip.
  451. config MACB_ZYNQ
  452. bool "Cadence MACB/GEM Ethernet Interface for Xilinx Zynq"
  453. depends on MACB
  454. help
  455. The Cadence MACB ethernet interface was used on Zynq platform.
  456. Say Y to enable support for the MACB/GEM in Zynq chip.
  457. config MT7620_ETH
  458. bool "MediaTek MT7620 Ethernet Interface"
  459. depends on SOC_MT7620
  460. select PHYLIB
  461. select DM_RESET
  462. select DM_GPIO
  463. select CLK
  464. help
  465. The MediaTek MT7620 ethernet interface is used on MT7620 based
  466. boards. It has a built-in switch with two configurable ports which
  467. can connect to external PHY/MACs.
  468. config MT7628_ETH
  469. bool "MediaTek MT7628 Ethernet Interface"
  470. depends on SOC_MT7628
  471. select PHYLIB
  472. help
  473. The MediaTek MT7628 ethernet interface is used on MT7628 and
  474. MT7688 based boards.
  475. config NET_NPCM750
  476. bool "Nuvoton NPCM750 Ethernet MAC"
  477. help
  478. support NPCM750 EMAC
  479. config NET_OCTEON
  480. bool "MIPS Octeon ethernet support"
  481. depends on ARCH_OCTEON
  482. help
  483. You must select Y to enable network device support for
  484. MIPS Octeon SoCs. If unsure, say n
  485. config NET_OCTEONTX
  486. bool "OcteonTX Ethernet support"
  487. depends on ARCH_OCTEONTX
  488. depends on PCI_SRIOV
  489. help
  490. You must select Y to enable network device support for
  491. OcteonTX SoCs. If unsure, say n
  492. config NET_OCTEONTX2
  493. bool "OcteonTX2 Ethernet support"
  494. depends on ARCH_OCTEONTX2
  495. select OCTEONTX2_CGX_INTF
  496. help
  497. You must select Y to enable network device support for
  498. OcteonTX2 SoCs. If unsure, say n
  499. config OCTEONTX_SMI
  500. bool "OcteonTX SMI Device support"
  501. depends on ARCH_OCTEONTX || ARCH_OCTEONTX2
  502. help
  503. You must select Y to enable SMI controller support for
  504. OcteonTX or OcteonTX2 SoCs. If unsure, say n
  505. config OCTEONTX2_CGX_INTF
  506. bool "OcteonTX2 CGX ATF interface support"
  507. depends on ARCH_OCTEONTX2
  508. default y if ARCH_OCTEONTX2
  509. help
  510. You must select Y to enable CGX ATF interface support for
  511. OcteonTX2 SoCs. If unsure, say n
  512. config PCH_GBE
  513. bool "Intel Platform Controller Hub EG20T GMAC driver"
  514. select PHYLIB
  515. help
  516. This MAC is present in Intel Platform Controller Hub EG20T. It
  517. supports 10/100/1000 Mbps operation.
  518. config RGMII
  519. bool "Enable RGMII"
  520. help
  521. Enable the support of the Reduced Gigabit Media-Independent
  522. Interface (RGMII).
  523. config MII
  524. bool "Enable MII"
  525. help
  526. Enable support of the Media-Independent Interface (MII)
  527. config RMII
  528. bool "Enable RMII"
  529. help
  530. Enable support of the Reduced Media-Independent Interface (MII)
  531. config PCNET
  532. bool "AMD PCnet series Ethernet controller driver"
  533. help
  534. This driver supports AMD PCnet series fast ethernet family of
  535. PCI chipsets/adapters.
  536. source "drivers/net/qe/Kconfig"
  537. config RTL8139
  538. bool "Realtek 8139 series Ethernet controller driver"
  539. help
  540. This driver supports Realtek 8139 series fast ethernet family of
  541. PCI chipsets/adapters.
  542. config RTL8169
  543. bool "Realtek 8169 series Ethernet controller driver"
  544. depends on PCI
  545. help
  546. This driver supports Realtek 8169 series gigabit ethernet family of
  547. PCI/PCIe chipsets/adapters.
  548. config SJA1105
  549. bool "NXP SJA1105 Ethernet switch family driver"
  550. depends on DM_DSA && DM_SPI
  551. select BITREVERSE
  552. help
  553. This is the driver for the NXP SJA1105 automotive Ethernet switch
  554. family. These are 5-port devices and are managed over an SPI
  555. interface. Probing is handled based on OF bindings. The driver
  556. supports the following revisions:
  557. - SJA1105E (Gen. 1, No TT-Ethernet)
  558. - SJA1105T (Gen. 1, TT-Ethernet)
  559. - SJA1105P (Gen. 2, No SGMII, No TT-Ethernet)
  560. - SJA1105Q (Gen. 2, No SGMII, TT-Ethernet)
  561. - SJA1105R (Gen. 2, SGMII, No TT-Ethernet)
  562. - SJA1105S (Gen. 2, SGMII, TT-Ethernet)
  563. config SMC911X
  564. bool "SMSC LAN911x and LAN921x controller driver"
  565. config SMC911X_32_BIT
  566. bool "Enable SMC911X 32-bit interface"
  567. depends on SMC911X
  568. help
  569. Define this if data bus is 32 bits. If your processor use a
  570. narrower 16 bit bus or cannot convert one 32 bit word to two 16 bit
  571. words, leave this to "n".
  572. config SUN7I_GMAC
  573. bool "Enable Allwinner GMAC Ethernet support"
  574. help
  575. Enable the support for Sun7i GMAC Ethernet controller
  576. config SUN7I_GMAC_FORCE_TXERR
  577. bool "Force PA17 as gmac function"
  578. depends on SUN7I_GMAC
  579. help
  580. Some ethernet phys needs TXERR control. Since the GMAC
  581. doesn't have such signal, setting PA17 as GMAC function
  582. makes the pin output low, which enables data transmission.
  583. config SUN4I_EMAC
  584. bool "Allwinner Sun4i Ethernet MAC support"
  585. select PHYLIB
  586. help
  587. This driver supports the Allwinner based SUN4I Ethernet MAC.
  588. config SUN8I_EMAC
  589. bool "Allwinner Sun8i Ethernet MAC support"
  590. select PHYLIB
  591. select PHY_GIGE
  592. help
  593. This driver supports the Allwinner based SUN8I/SUN50I Ethernet MAC.
  594. It can be found in H3/A64/A83T based SoCs and compatible with both
  595. External and Internal PHYs.
  596. config SH_ETHER
  597. bool "Renesas SH Ethernet MAC"
  598. select PHYLIB
  599. select PHY_ETHERNET_ID
  600. help
  601. This driver supports the Ethernet for Renesas SH and ARM SoCs.
  602. source "drivers/net/ti/Kconfig"
  603. config TULIP
  604. bool "DEC Tulip DC2114x Ethernet support"
  605. help
  606. This driver supports DEC DC2114x Fast ethernet chips.
  607. config XILINX_AXIEMAC
  608. select PHYLIB
  609. select MII
  610. bool "Xilinx AXI Ethernet"
  611. help
  612. This MAC is present in Xilinx Microblaze, Zynq and ZynqMP SoCs.
  613. config XILINX_AXIMRMAC
  614. depends on ARCH_VERSAL
  615. bool "Xilinx AXI MRMAC"
  616. help
  617. MRMAC is a high performance, low latency, adaptable Ethernet
  618. integrated hard IP. This can be configured up to four ports with MAC
  619. rates from 10GE to 100GE. This could be present in some of the Xilinx
  620. Versal designs.
  621. config VSC7385_ENET
  622. bool "Vitesse 7385 Switch Firmware Upload driver"
  623. config XILINX_EMACLITE
  624. select PHYLIB
  625. select MII
  626. bool "Xilinx Ethernetlite"
  627. help
  628. This MAC is present in Xilinx Microblaze, Zynq and ZynqMP SoCs.
  629. config ZYNQ_GEM
  630. select PHYLIB
  631. bool "Xilinx Ethernet GEM"
  632. help
  633. This MAC is present in Xilinx Zynq and ZynqMP SoCs.
  634. config PIC32_ETH
  635. bool "Microchip PIC32 Ethernet Support"
  636. depends on MACH_PIC32
  637. select PHYLIB
  638. help
  639. This driver implements 10/100 Mbps Ethernet and MAC layer for
  640. Microchip PIC32 microcontrollers.
  641. config GMAC_ROCKCHIP
  642. bool "Rockchip Synopsys Designware Ethernet MAC"
  643. depends on ETH_DESIGNWARE
  644. help
  645. This driver provides Rockchip SoCs network support based on the
  646. Synopsys Designware driver.
  647. config RENESAS_ETHER_SWITCH
  648. bool "Renesas Ethernet Switch support"
  649. depends on DM_ETH && R8A779F0
  650. select PHYLIB
  651. help
  652. This driver implements support for the Renesas Ethernet Switch
  653. which is available on R-Car S4 SoC (r8a779f0).
  654. config RENESAS_RAVB
  655. bool "Renesas Ethernet AVB MAC"
  656. depends on RCAR_64
  657. select PHYLIB
  658. select PHY_ETHERNET_ID
  659. help
  660. This driver implements support for the Ethernet AVB block in
  661. Renesas M3 and H3 SoCs.
  662. config MPC8XX_FEC
  663. bool "Fast Ethernet Controller on MPC8XX"
  664. depends on MPC8xx
  665. select MII
  666. select SYS_DISCOVER_PHY
  667. help
  668. This driver implements support for the Fast Ethernet Controller
  669. on MPC8XX
  670. config SNI_AVE
  671. bool "Socionext AVE Ethernet support"
  672. depends on ARCH_UNIPHIER
  673. select PHYLIB
  674. select SYSCON
  675. select REGMAP
  676. help
  677. This driver implements support for the Socionext AVE Ethernet
  678. controller, as found on the Socionext UniPhier family.
  679. config SNI_NETSEC
  680. bool "Socionext NETSEC Ethernet support"
  681. depends on SYNQUACER_SPI
  682. select PHYLIB
  683. help
  684. This driver implements support for the Socionext SynQuacer NETSEC
  685. ethernet controller, as found on the Socionext SynQuacer family.
  686. source "drivers/net/mscc_eswitch/Kconfig"
  687. config ETHER_ON_FEC1
  688. bool "FEC1"
  689. depends on MPC8XX_FEC
  690. default y
  691. config FEC1_PHY
  692. int "FEC1 PHY"
  693. depends on ETHER_ON_FEC1
  694. default -1
  695. help
  696. Define to the hardcoded PHY address which corresponds
  697. to the given FEC; i. e.
  698. #define CONFIG_FEC1_PHY 4
  699. means that the PHY with address 4 is connected to FEC1
  700. When set to -1, means to probe for first available.
  701. config PHY_NORXERR
  702. bool "PHY_NORXERR"
  703. depends on ETHER_ON_FEC1
  704. help
  705. The PHY does not have a RXERR line (RMII only).
  706. (so program the FEC to ignore it).
  707. config ETHER_ON_FEC2
  708. bool "FEC2"
  709. depends on MPC8XX_FEC && MPC885
  710. default y
  711. config FEC2_PHY
  712. int "FEC2 PHY"
  713. depends on ETHER_ON_FEC2
  714. default -1
  715. help
  716. Define to the hardcoded PHY address which corresponds
  717. to the given FEC; i. e.
  718. #define CONFIG_FEC1_PHY 4
  719. means that the PHY with address 4 is connected to FEC1
  720. When set to -1, means to probe for first available.
  721. config FEC2_PHY_NORXERR
  722. bool "PHY_NORXERR"
  723. depends on ETHER_ON_FEC2
  724. help
  725. The PHY does not have a RXERR line (RMII only).
  726. (so program the FEC to ignore it).
  727. config SYS_DPAA_QBMAN
  728. bool "Device tree fixup for QBMan on freescale SOCs"
  729. depends on (ARM || PPC) && !SPL_BUILD
  730. default y if ARCH_B4860 || \
  731. ARCH_B4420 || \
  732. ARCH_P1023 || \
  733. ARCH_P2041 || \
  734. ARCH_T1024 || \
  735. ARCH_T1040 || \
  736. ARCH_T1042 || \
  737. ARCH_T2080 || \
  738. ARCH_T4240 || \
  739. ARCH_P4080 || \
  740. ARCH_P3041 || \
  741. ARCH_P5040 || \
  742. ARCH_LS1043A || \
  743. ARCH_LS1046A
  744. help
  745. QBman fixups to allow deep sleep in DPAA 1 SOCs
  746. config SYS_FSL_QMAN_V3
  747. bool # QMAN version 3
  748. depends on SYS_DPAA_QBMAN
  749. config TSEC_ENET
  750. select PHYLIB
  751. bool "Enable Three-Speed Ethernet Controller"
  752. help
  753. This driver implements support for the (Enhanced) Three-Speed
  754. Ethernet Controller found on Freescale SoCs.
  755. config MEDIATEK_ETH
  756. bool "MediaTek Ethernet GMAC Driver"
  757. select PHYLIB
  758. select DM_GPIO
  759. select DM_RESET
  760. help
  761. This Driver support MediaTek Ethernet GMAC
  762. Say Y to enable support for the MediaTek Ethernet GMAC.
  763. config HIGMACV300_ETH
  764. bool "HiSilicon Gigabit Ethernet Controller"
  765. select DM_RESET
  766. select PHYLIB
  767. help
  768. This driver supports HIGMACV300 Ethernet controller found on
  769. HiSilicon SoCs.
  770. config FSL_ENETC
  771. bool "NXP ENETC Ethernet controller"
  772. depends on DM_MDIO
  773. help
  774. This driver supports the NXP ENETC Ethernet controller found on some
  775. of the NXP SoCs.
  776. config MDIO_MUX_I2CREG
  777. bool "MDIO MUX accessed as a register over I2C"
  778. depends on DM_MDIO_MUX && DM_I2C
  779. help
  780. This driver is used for MDIO muxes driven by writing to a register of
  781. an I2C chip. The board it was developed for uses a mux controlled by
  782. on-board FPGA which in turn is accessed as a chip over I2C.
  783. config MDIO_IPQ4019
  784. bool "Qualcomm IPQ4019 MDIO interface support"
  785. depends on DM_MDIO
  786. help
  787. This driver supports the MDIO interface found in Qualcomm
  788. IPQ40xx series Soc-s.
  789. config MVMDIO
  790. bool "Marvell MDIO interface support"
  791. depends on DM_MDIO
  792. help
  793. This driver supports the MDIO interface found in the network
  794. interface units of the Marvell EBU SoCs (Kirkwood, Orion5x,
  795. Dove, Armada 370, Armada XP, Armada 37xx and Armada7K/8K/8KP).
  796. This driver is used by the MVPP2 and MVNETA drivers.
  797. config FSL_LS_MDIO
  798. bool "NXP Layerscape MDIO interface support"
  799. depends on DM_MDIO
  800. help
  801. This driver supports the MDIO bus found on the Fman 10G Ethernet MACs and
  802. on the mEMAC (which supports both Clauses 22 and 45).
  803. config ASPEED_MDIO
  804. bool "Aspeed MDIO interface support"
  805. depends on DM_MDIO
  806. help
  807. This driver supports the MDIO bus of Aspeed AST2600 SOC. The driver
  808. currently supports Clause 22.
  809. config MDIO_MUX_MMIOREG
  810. bool "MDIO MUX accessed as a MMIO register access"
  811. depends on DM_MDIO_MUX
  812. help
  813. This driver is used for MDIO muxes driven by writing to a register in
  814. the MMIO physical memory.
  815. config MDIO_MUX_MESON_G12A
  816. bool "MDIO MUX for Amlogic Meson G12A SoCs"
  817. depends on DM_MDIO_MUX
  818. help
  819. This driver is used for the MDIO mux found on the Amlogic G12A & compatible
  820. SoCs.
  821. endif # NETDEVICES