Linux Audio

Check our new training course

Embedded Linux training

Mar 10-20, 2025, special US time zones
Register
Loading...
v6.13.7
  1# SPDX-License-Identifier: GPL-2.0-only
  2config STMMAC_ETH
  3	tristate "STMicroelectronics Multi-Gigabit Ethernet driver"
  4	depends on HAS_IOMEM && HAS_DMA
  5	depends on PTP_1588_CLOCK_OPTIONAL
  6	select MII
  7	select PCS_XPCS
  8	select PAGE_POOL
  9	select PHYLINK
 10	select CRC32
 11	select RESET_CONTROLLER
 12	help
 13	  This is the driver for the Ethernet IPs built around a
 14	  Synopsys IP Core.
 15
 16if STMMAC_ETH
 17
 18config STMMAC_SELFTESTS
 19	bool "Support for STMMAC Selftests"
 20	depends on INET
 21	depends on STMMAC_ETH
 22	default n
 23	help
 24	  This adds support for STMMAC Selftests using ethtool. Enable this
 25	  feature if you are facing problems with your HW and submit the test
 26	  results to the netdev Mailing List.
 27
 28config STMMAC_PLATFORM
 29	tristate "STMMAC Platform bus support"
 30	depends on STMMAC_ETH
 31	select MFD_SYSCON
 32	default y
 33	help
 34	  This selects the platform specific bus support for the stmmac driver.
 35	  This is the driver used on several SoCs:
 36	  STi, Allwinner, Amlogic Meson, Altera SOCFPGA.
 37
 38	  If you have a controller with this interface, say Y or M here.
 39
 40	  If unsure, say N.
 41
 42if STMMAC_PLATFORM
 43
 44config DWMAC_DWC_QOS_ETH
 45	tristate "Support for snps,dwc-qos-ethernet.txt DT binding."
 46	select CRC32
 47	select MII
 48	depends on OF && HAS_DMA
 49	help
 50	  Support for chips using the snps,dwc-qos-ethernet.txt DT binding.
 51
 52config DWMAC_GENERIC
 53	tristate "Generic driver for DWMAC"
 54	default STMMAC_PLATFORM
 55	help
 56	  Generic DWMAC driver for platforms that don't require any
 57	  platform specific code to function or is using platform
 58	  data for setup.
 59
 60config DWMAC_ANARION
 61	tristate "Adaptrum Anarion GMAC support"
 62	default ARC
 63	depends on OF && (ARC || COMPILE_TEST)
 64	help
 65	  Support for Adaptrum Anarion GMAC Ethernet controller.
 66
 67	  This selects the Anarion SoC glue layer support for the stmmac driver.
 68
 69config DWMAC_INGENIC
 70	tristate "Ingenic MAC support"
 71	default MACH_INGENIC
 72	depends on OF && HAS_IOMEM && (MACH_INGENIC || COMPILE_TEST)
 73	select MFD_SYSCON
 74	help
 75	  Support for ethernet controller on Ingenic SoCs.
 76
 77	  This selects Ingenic SoCs glue layer support for the stmmac
 78	  device driver. This driver is used on for the Ingenic SoCs
 79	  MAC ethernet controller.
 80
 81config DWMAC_IPQ806X
 82	tristate "QCA IPQ806x DWMAC support"
 83	default ARCH_QCOM
 84	depends on OF && (ARCH_QCOM || COMPILE_TEST)
 85	select MFD_SYSCON
 86	help
 87	  Support for QCA IPQ806X DWMAC Ethernet.
 88
 89	  This selects the IPQ806x SoC glue layer support for the stmmac
 90	  device driver. This driver does not use any of the hardware
 91	  acceleration features available on this SoC. Network devices
 92	  will behave like standard non-accelerated ethernet interfaces.
 93
 94	  Select the QCOM_SOCINFO config flag to enable specific dwmac
 95	  fixup based on the ipq806x SoC revision.
 96
 97config DWMAC_LPC18XX
 98	tristate "NXP LPC18xx/43xx DWMAC support"
 99	default ARCH_LPC18XX
100	depends on OF && (ARCH_LPC18XX || COMPILE_TEST)
101	select MFD_SYSCON
102	help
103	  Support for NXP LPC18xx/43xx DWMAC Ethernet.
104
105config DWMAC_MEDIATEK
106	tristate "MediaTek MT27xx GMAC support"
107	depends on OF && (ARCH_MEDIATEK || COMPILE_TEST)
108	help
109	  Support for MediaTek GMAC Ethernet controller.
110
111	  This selects the MT2712 SoC support for the stmmac driver.
112
113config DWMAC_MESON
114	tristate "Amlogic Meson dwmac support"
115	default ARCH_MESON
116	depends on OF && COMMON_CLK && (ARCH_MESON || COMPILE_TEST)
117	help
118	  Support for Ethernet controller on Amlogic Meson SoCs.
119
120	  This selects the Amlogic Meson SoC glue layer support for
121	  the stmmac device driver. This driver is used for Meson6,
122	  Meson8, Meson8b and GXBB SoCs.
123
 
 
 
 
 
 
 
 
 
 
 
124config DWMAC_QCOM_ETHQOS
125	tristate "Qualcomm ETHQOS support"
126	default ARCH_QCOM
127	depends on OF && (ARCH_QCOM || COMPILE_TEST)
128	help
129	  Support for the Qualcomm ETHQOS core.
130
131	  This selects the Qualcomm ETHQOS glue layer support for the
132	  stmmac device driver.
133
134config DWMAC_ROCKCHIP
135	tristate "Rockchip dwmac support"
136	default ARCH_ROCKCHIP
137	depends on OF && (ARCH_ROCKCHIP || COMPILE_TEST)
138	select MFD_SYSCON
139	help
140	  Support for Ethernet controller on Rockchip RK3288 SoC.
141
142	  This selects the Rockchip RK3288 SoC glue layer support for
143	  the stmmac device driver.
144
145config DWMAC_RZN1
146	tristate "Renesas RZ/N1 dwmac support"
147	default ARCH_RZN1
148	depends on OF && (ARCH_RZN1 || COMPILE_TEST)
149	select PCS_RZN1_MIIC
150	help
151	  Support for Ethernet controller on Renesas RZ/N1 SoC family.
152
153	  This selects the Renesas RZ/N1 SoC glue layer support for
154	  the stmmac device driver. This support can make use of a custom MII
155	  converter PCS device.
156
157config DWMAC_SOCFPGA
158	tristate "SOCFPGA dwmac support"
159	default ARCH_INTEL_SOCFPGA
160	depends on OF && (ARCH_INTEL_SOCFPGA || COMPILE_TEST)
161	select MFD_SYSCON
162	select MDIO_REGMAP
163	select REGMAP_MMIO
164	select PCS_LYNX
165	help
166	  Support for ethernet controller on Altera SOCFPGA
167
168	  This selects the Altera SOCFPGA SoC glue layer support
169	  for the stmmac device driver. This driver is used for
170	  arria5 and cyclone5 FPGA SoCs.
171
172config DWMAC_STARFIVE
173	tristate "StarFive dwmac support"
174	depends on OF && (ARCH_STARFIVE || COMPILE_TEST)
175	select MFD_SYSCON
176	default m if ARCH_STARFIVE
177	help
178	  Support for ethernet controllers on StarFive RISC-V SoCs
179
180	  This selects the StarFive platform specific glue layer support
181	  for the stmmac device driver. This driver is used for the
182	  StarFive JH7100 and JH7110 ethernet controllers.
183
184config DWMAC_STI
185	tristate "STi GMAC support"
186	default ARCH_STI
187	depends on OF && (ARCH_STI || COMPILE_TEST)
188	select MFD_SYSCON
189	help
190	  Support for ethernet controller on STi SOCs.
191
192	  This selects STi SoC glue layer support for the stmmac
193	  device driver. This driver is used on for the STi series
194	  SOCs GMAC ethernet controller.
195
196config DWMAC_STM32
197	tristate "STM32 DWMAC support"
198	default ARCH_STM32
199	depends on OF && HAS_IOMEM && (ARCH_STM32 || COMPILE_TEST)
200	select MFD_SYSCON
201	help
202	  Support for ethernet controller on STM32 SOCs.
203
204	  This selects STM32 SoC glue layer support for the stmmac
205	  device driver. This driver is used on for the STM32 series
206	  SOCs GMAC ethernet controller.
207
208config DWMAC_SUNXI
209	tristate "Allwinner GMAC support"
210	default ARCH_SUNXI
211	depends on OF && (ARCH_SUNXI || COMPILE_TEST)
212	help
213	  Support for Allwinner A20/A31 GMAC ethernet controllers.
214
215	  This selects Allwinner SoC glue layer support for the
216	  stmmac device driver. This driver is used for A20/A31
217	  GMAC ethernet controller.
218
219config DWMAC_SUN8I
220	tristate "Allwinner sun8i GMAC support"
221	default ARCH_SUNXI
222	depends on OF && (ARCH_SUNXI || COMPILE_TEST)
223	select MDIO_BUS_MUX
224	help
225	  Support for Allwinner H3 A83T A64 EMAC ethernet controllers.
226
227	  This selects Allwinner SoC glue layer support for the
228	  stmmac device driver. This driver is used for H3/A83T/A64
229	  EMAC ethernet controller.
230
231config DWMAC_THEAD
232	tristate "T-HEAD dwmac support"
233	depends on OF && (ARCH_THEAD || COMPILE_TEST)
234	help
235	  Support for ethernet controllers on T-HEAD RISC-V SoCs
236
237	  This selects the T-HEAD platform specific glue layer support for
238	  the stmmac device driver. This driver is used for T-HEAD TH1520
239	  ethernet controller.
240
241config DWMAC_IMX8
242	tristate "NXP IMX8 DWMAC support"
243	default ARCH_MXC
244	depends on OF && (ARCH_MXC || COMPILE_TEST)
245	select MFD_SYSCON
246	help
247	  Support for ethernet controller on NXP i.MX8 SOCs.
248
249	  This selects NXP SoC glue layer support for the stmmac
250	  device driver. This driver is used for i.MX8 series like
251	  iMX8MP/iMX8DXL GMAC ethernet controller.
252
253config DWMAC_INTEL_PLAT
254	tristate "Intel dwmac support"
255	depends on OF && COMMON_CLK
256	depends on STMMAC_ETH
257	help
258	  Support for ethernet controllers on Intel SoCs
259
260	  This selects the Intel platform specific glue layer support for
261	  the stmmac device driver. This driver is used for the Intel Keem Bay
262	  SoC.
263
264config DWMAC_LOONGSON1
265	tristate "Loongson1 GMAC support"
266	default MACH_LOONGSON32
267	depends on OF && (MACH_LOONGSON32 || COMPILE_TEST)
268	help
269	  Support for ethernet controller on Loongson1 SoC.
270
271	  This selects Loongson1 SoC glue layer support for the stmmac
272	  device driver. This driver is used for Loongson1-based boards
273	  like Loongson LS1B/LS1C.
274
275config DWMAC_TEGRA
276	tristate "NVIDIA Tegra MGBE support"
277	depends on ARCH_TEGRA || COMPILE_TEST
278	help
279	  This selects the Multi-GigaBit Ethernet (MGBE) Controller that is
280	  found on the NVIDIA Tegra SoC devices. This driver provides the glue
281	  layer on top of the stmmac driver required for these NVIDIA Tegra SoC
282	  devices.
283
284config DWMAC_VISCONTI
285	tristate "Toshiba Visconti DWMAC support"
286	default ARCH_VISCONTI
287	depends on OF && COMMON_CLK && (ARCH_VISCONTI || COMPILE_TEST)
288	help
289	  Support for ethernet controller on Visconti SoCs.
290
291endif
292
293config DWMAC_INTEL
294	tristate "Intel GMAC support"
295	default X86
296	depends on X86 && STMMAC_ETH && PCI
297	depends on COMMON_CLK
298	help
299	  This selects the Intel platform specific bus support for the
300	  stmmac driver. This driver is used for Intel Quark/EHL/TGL.
301
302config DWMAC_LOONGSON
303	tristate "Loongson PCI DWMAC support"
304	default MACH_LOONGSON64
305	depends on (MACH_LOONGSON64 || COMPILE_TEST) && STMMAC_ETH && PCI
306	depends on COMMON_CLK
307	help
308	  This selects the LOONGSON PCI bus support for the stmmac driver,
309	  Support for ethernet controller on Loongson-2K1000 SoC and LS7A1000 bridge.
310
311config STMMAC_PCI
312	tristate "STMMAC PCI bus support"
313	depends on STMMAC_ETH && PCI
314	depends on COMMON_CLK
315	help
316	  This selects the platform specific bus support for the stmmac driver.
317	  This driver was tested on XLINX XC2V3000 FF1152AMT0221
318	  D1215994A VIRTEX FPGA board and SNPS QoS IPK Prototyping Kit.
319
320	  If you have a controller with this interface, say Y or M here.
321
322	  If unsure, say N.
323endif
v6.2
  1# SPDX-License-Identifier: GPL-2.0-only
  2config STMMAC_ETH
  3	tristate "STMicroelectronics Multi-Gigabit Ethernet driver"
  4	depends on HAS_IOMEM && HAS_DMA
  5	depends on PTP_1588_CLOCK_OPTIONAL
  6	select MII
  7	select PCS_XPCS
  8	select PAGE_POOL
  9	select PHYLINK
 10	select CRC32
 11	select RESET_CONTROLLER
 12	help
 13	  This is the driver for the Ethernet IPs built around a
 14	  Synopsys IP Core.
 15
 16if STMMAC_ETH
 17
 18config STMMAC_SELFTESTS
 19	bool "Support for STMMAC Selftests"
 20	depends on INET
 21	depends on STMMAC_ETH
 22	default n
 23	help
 24	  This adds support for STMMAC Selftests using ethtool. Enable this
 25	  feature if you are facing problems with your HW and submit the test
 26	  results to the netdev Mailing List.
 27
 28config STMMAC_PLATFORM
 29	tristate "STMMAC Platform bus support"
 30	depends on STMMAC_ETH
 31	select MFD_SYSCON
 32	default y
 33	help
 34	  This selects the platform specific bus support for the stmmac driver.
 35	  This is the driver used on several SoCs:
 36	  STi, Allwinner, Amlogic Meson, Altera SOCFPGA.
 37
 38	  If you have a controller with this interface, say Y or M here.
 39
 40	  If unsure, say N.
 41
 42if STMMAC_PLATFORM
 43
 44config DWMAC_DWC_QOS_ETH
 45	tristate "Support for snps,dwc-qos-ethernet.txt DT binding."
 46	select CRC32
 47	select MII
 48	depends on OF && HAS_DMA
 49	help
 50	  Support for chips using the snps,dwc-qos-ethernet.txt DT binding.
 51
 52config DWMAC_GENERIC
 53	tristate "Generic driver for DWMAC"
 54	default STMMAC_PLATFORM
 55	help
 56	  Generic DWMAC driver for platforms that don't require any
 57	  platform specific code to function or is using platform
 58	  data for setup.
 59
 60config DWMAC_ANARION
 61	tristate "Adaptrum Anarion GMAC support"
 62	default ARC
 63	depends on OF && (ARC || COMPILE_TEST)
 64	help
 65	  Support for Adaptrum Anarion GMAC Ethernet controller.
 66
 67	  This selects the Anarion SoC glue layer support for the stmmac driver.
 68
 69config DWMAC_INGENIC
 70	tristate "Ingenic MAC support"
 71	default MACH_INGENIC
 72	depends on OF && HAS_IOMEM && (MACH_INGENIC || COMPILE_TEST)
 73	select MFD_SYSCON
 74	help
 75	  Support for ethernet controller on Ingenic SoCs.
 76
 77	  This selects Ingenic SoCs glue layer support for the stmmac
 78	  device driver. This driver is used on for the Ingenic SoCs
 79	  MAC ethernet controller.
 80
 81config DWMAC_IPQ806X
 82	tristate "QCA IPQ806x DWMAC support"
 83	default ARCH_QCOM
 84	depends on OF && (ARCH_QCOM || COMPILE_TEST)
 85	select MFD_SYSCON
 86	help
 87	  Support for QCA IPQ806X DWMAC Ethernet.
 88
 89	  This selects the IPQ806x SoC glue layer support for the stmmac
 90	  device driver. This driver does not use any of the hardware
 91	  acceleration features available on this SoC. Network devices
 92	  will behave like standard non-accelerated ethernet interfaces.
 93
 94	  Select the QCOM_SOCINFO config flag to enable specific dwmac
 95	  fixup based on the ipq806x SoC revision.
 96
 97config DWMAC_LPC18XX
 98	tristate "NXP LPC18xx/43xx DWMAC support"
 99	default ARCH_LPC18XX
100	depends on OF && (ARCH_LPC18XX || COMPILE_TEST)
101	select MFD_SYSCON
102	help
103	  Support for NXP LPC18xx/43xx DWMAC Ethernet.
104
105config DWMAC_MEDIATEK
106	tristate "MediaTek MT27xx GMAC support"
107	depends on OF && (ARCH_MEDIATEK || COMPILE_TEST)
108	help
109	  Support for MediaTek GMAC Ethernet controller.
110
111	  This selects the MT2712 SoC support for the stmmac driver.
112
113config DWMAC_MESON
114	tristate "Amlogic Meson dwmac support"
115	default ARCH_MESON
116	depends on OF && COMMON_CLK && (ARCH_MESON || COMPILE_TEST)
117	help
118	  Support for Ethernet controller on Amlogic Meson SoCs.
119
120	  This selects the Amlogic Meson SoC glue layer support for
121	  the stmmac device driver. This driver is used for Meson6,
122	  Meson8, Meson8b and GXBB SoCs.
123
124config DWMAC_OXNAS
125	tristate "Oxford Semiconductor OXNAS dwmac support"
126	default ARCH_OXNAS
127	depends on OF && COMMON_CLK && (ARCH_OXNAS || COMPILE_TEST)
128	select MFD_SYSCON
129	help
130	  Support for Ethernet controller on Oxford Semiconductor OXNAS SoCs.
131
132	  This selects the Oxford Semiconductor OXNASSoC glue layer support for
133	  the stmmac device driver. This driver is used for OX820.
134
135config DWMAC_QCOM_ETHQOS
136	tristate "Qualcomm ETHQOS support"
137	default ARCH_QCOM
138	depends on OF && (ARCH_QCOM || COMPILE_TEST)
139	help
140	  Support for the Qualcomm ETHQOS core.
141
142	  This selects the Qualcomm ETHQOS glue layer support for the
143	  stmmac device driver.
144
145config DWMAC_ROCKCHIP
146	tristate "Rockchip dwmac support"
147	default ARCH_ROCKCHIP
148	depends on OF && (ARCH_ROCKCHIP || COMPILE_TEST)
149	select MFD_SYSCON
150	help
151	  Support for Ethernet controller on Rockchip RK3288 SoC.
152
153	  This selects the Rockchip RK3288 SoC glue layer support for
154	  the stmmac device driver.
155
 
 
 
 
 
 
 
 
 
 
 
 
156config DWMAC_SOCFPGA
157	tristate "SOCFPGA dwmac support"
158	default ARCH_INTEL_SOCFPGA
159	depends on OF && (ARCH_INTEL_SOCFPGA || COMPILE_TEST)
160	select MFD_SYSCON
 
 
 
161	help
162	  Support for ethernet controller on Altera SOCFPGA
163
164	  This selects the Altera SOCFPGA SoC glue layer support
165	  for the stmmac device driver. This driver is used for
166	  arria5 and cyclone5 FPGA SoCs.
167
 
 
 
 
 
 
 
 
 
 
 
 
168config DWMAC_STI
169	tristate "STi GMAC support"
170	default ARCH_STI
171	depends on OF && (ARCH_STI || COMPILE_TEST)
172	select MFD_SYSCON
173	help
174	  Support for ethernet controller on STi SOCs.
175
176	  This selects STi SoC glue layer support for the stmmac
177	  device driver. This driver is used on for the STi series
178	  SOCs GMAC ethernet controller.
179
180config DWMAC_STM32
181	tristate "STM32 DWMAC support"
182	default ARCH_STM32
183	depends on OF && HAS_IOMEM && (ARCH_STM32 || COMPILE_TEST)
184	select MFD_SYSCON
185	help
186	  Support for ethernet controller on STM32 SOCs.
187
188	  This selects STM32 SoC glue layer support for the stmmac
189	  device driver. This driver is used on for the STM32 series
190	  SOCs GMAC ethernet controller.
191
192config DWMAC_SUNXI
193	tristate "Allwinner GMAC support"
194	default ARCH_SUNXI
195	depends on OF && (ARCH_SUNXI || COMPILE_TEST)
196	help
197	  Support for Allwinner A20/A31 GMAC ethernet controllers.
198
199	  This selects Allwinner SoC glue layer support for the
200	  stmmac device driver. This driver is used for A20/A31
201	  GMAC ethernet controller.
202
203config DWMAC_SUN8I
204	tristate "Allwinner sun8i GMAC support"
205	default ARCH_SUNXI
206	depends on OF && (ARCH_SUNXI || COMPILE_TEST)
207	select MDIO_BUS_MUX
208	help
209	  Support for Allwinner H3 A83T A64 EMAC ethernet controllers.
210
211	  This selects Allwinner SoC glue layer support for the
212	  stmmac device driver. This driver is used for H3/A83T/A64
213	  EMAC ethernet controller.
214
 
 
 
 
 
 
 
 
 
 
215config DWMAC_IMX8
216	tristate "NXP IMX8 DWMAC support"
217	default ARCH_MXC
218	depends on OF && (ARCH_MXC || COMPILE_TEST)
219	select MFD_SYSCON
220	help
221	  Support for ethernet controller on NXP i.MX8 SOCs.
222
223	  This selects NXP SoC glue layer support for the stmmac
224	  device driver. This driver is used for i.MX8 series like
225	  iMX8MP/iMX8DXL GMAC ethernet controller.
226
227config DWMAC_INTEL_PLAT
228	tristate "Intel dwmac support"
229	depends on OF && COMMON_CLK
230	depends on STMMAC_ETH
231	help
232	  Support for ethernet controllers on Intel SoCs
233
234	  This selects the Intel platform specific glue layer support for
235	  the stmmac device driver. This driver is used for the Intel Keem Bay
236	  SoC.
237
 
 
 
 
 
 
 
 
 
 
 
238config DWMAC_TEGRA
239	tristate "NVIDIA Tegra MGBE support"
240	depends on ARCH_TEGRA || COMPILE_TEST
241	help
242	  This selects the Multi-GigaBit Ethernet (MGBE) Controller that is
243	  found on the NVIDIA Tegra SoC devices. This driver provides the glue
244	  layer on top of the stmmac driver required for these NVIDIA Tegra SoC
245	  devices.
246
247config DWMAC_VISCONTI
248	tristate "Toshiba Visconti DWMAC support"
249	default ARCH_VISCONTI
250	depends on OF && COMMON_CLK && (ARCH_VISCONTI || COMPILE_TEST)
251	help
252	  Support for ethernet controller on Visconti SoCs.
253
254endif
255
256config DWMAC_INTEL
257	tristate "Intel GMAC support"
258	default X86
259	depends on X86 && STMMAC_ETH && PCI
260	depends on COMMON_CLK
261	help
262	  This selects the Intel platform specific bus support for the
263	  stmmac driver. This driver is used for Intel Quark/EHL/TGL.
264
265config DWMAC_LOONGSON
266	tristate "Loongson PCI DWMAC support"
267	default MACH_LOONGSON64
268	depends on STMMAC_ETH && PCI
269	depends on COMMON_CLK
270	help
271	  This selects the LOONGSON PCI bus support for the stmmac driver,
272	  Support for ethernet controller on Loongson-2K1000 SoC and LS7A1000 bridge.
273
274config STMMAC_PCI
275	tristate "STMMAC PCI bus support"
276	depends on STMMAC_ETH && PCI
277	depends on COMMON_CLK
278	help
279	  This selects the platform specific bus support for the stmmac driver.
280	  This driver was tested on XLINX XC2V3000 FF1152AMT0221
281	  D1215994A VIRTEX FPGA board and SNPS QoS IPK Prototyping Kit.
282
283	  If you have a controller with this interface, say Y or M here.
284
285	  If unsure, say N.
286endif