hc
2024-01-05 071106ecf68c401173c58808b1cf5f68cc50d390
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
# SPDX-License-Identifier: GPL-2.0-only
config STMMAC_ETH
   tristate "STMicroelectronics Multi-Gigabit Ethernet driver"
   depends on HAS_IOMEM && HAS_DMA
   select MII
   select PCS_XPCS
   select PAGE_POOL
   select PHYLINK
   select CRC32
   imply PTP_1588_CLOCK
   select RESET_CONTROLLER
   help
     This is the driver for the Ethernet IPs built around a
     Synopsys IP Core.
 
if STMMAC_ETH
 
config STMMAC_SELFTESTS
   bool "Support for STMMAC Selftests"
   depends on INET
   depends on STMMAC_ETH
   default n
   help
     This adds support for STMMAC Selftests using ethtool. Enable this
     feature if you are facing problems with your HW and submit the test
     results to the netdev Mailing List.
 
config STMMAC_UIO
   tristate "STMMAC_UIO ethernet controller"
   default n
   select UIO
   help
     Say M here if you want to use the stmmac_uio.ko for DPDK.
 
config STMMAC_ETHTOOL
   bool "Ethtool feature for STMMAC"
   default STMMAC_ETH if !ROCKCHIP_MINI_KERNEL
   help
     This selects the ethtool function, default is Y.
 
config STMMAC_FULL
   bool "Support full driver for STMMAC"
   default STMMAC_ETH if !ROCKCHIP_MINI_KERNEL
   help
     This selects the full function, default is Y, full-featured version
     includes 4.10 and other versions, if it is N, only 4.10 core working.
 
config STMMAC_PLATFORM
   tristate "STMMAC Platform bus support"
   depends on STMMAC_ETH
   select MFD_SYSCON
   default y
   help
     This selects the platform specific bus support for the stmmac driver.
     This is the driver used on several SoCs:
     STi, Allwinner, Amlogic Meson, Altera SOCFPGA.
 
     If you have a controller with this interface, say Y or M here.
 
     If unsure, say N.
 
if STMMAC_PLATFORM
 
config DWMAC_DWC_QOS_ETH
   tristate "Support for snps,dwc-qos-ethernet.txt DT binding."
   select CRC32
   select MII
   depends on OF && HAS_DMA
   help
     Support for chips using the snps,dwc-qos-ethernet.txt DT binding.
 
config DWMAC_GENERIC
   tristate "Generic driver for DWMAC"
   default STMMAC_PLATFORM
   help
     Generic DWMAC driver for platforms that don't require any
     platform specific code to function or is using platform
     data for setup.
 
config DWMAC_ANARION
   tristate "Adaptrum Anarion GMAC support"
   default ARC
   depends on OF && (ARC || COMPILE_TEST)
   help
     Support for Adaptrum Anarion GMAC Ethernet controller.
 
     This selects the Anarion SoC glue layer support for the stmmac driver.
 
config DWMAC_IPQ806X
   tristate "QCA IPQ806x DWMAC support"
   default ARCH_QCOM
   depends on OF && (ARCH_QCOM || COMPILE_TEST)
   select MFD_SYSCON
   help
     Support for QCA IPQ806X DWMAC Ethernet.
 
     This selects the IPQ806x SoC glue layer support for the stmmac
     device driver. This driver does not use any of the hardware
     acceleration features available on this SoC. Network devices
     will behave like standard non-accelerated ethernet interfaces.
 
config DWMAC_LPC18XX
   tristate "NXP LPC18xx/43xx DWMAC support"
   default ARCH_LPC18XX
   depends on OF && (ARCH_LPC18XX || COMPILE_TEST)
   select MFD_SYSCON
   help
     Support for NXP LPC18xx/43xx DWMAC Ethernet.
 
config DWMAC_MEDIATEK
   tristate "MediaTek MT27xx GMAC support"
   depends on OF && (ARCH_MEDIATEK || COMPILE_TEST)
   help
     Support for MediaTek GMAC Ethernet controller.
 
     This selects the MT2712 SoC support for the stmmac driver.
 
config DWMAC_MESON
   tristate "Amlogic Meson dwmac support"
   default ARCH_MESON
   depends on OF && COMMON_CLK && (ARCH_MESON || COMPILE_TEST)
   help
     Support for Ethernet controller on Amlogic Meson SoCs.
 
     This selects the Amlogic Meson SoC glue layer support for
     the stmmac device driver. This driver is used for Meson6,
     Meson8, Meson8b and GXBB SoCs.
 
config DWMAC_OXNAS
   tristate "Oxford Semiconductor OXNAS dwmac support"
   default ARCH_OXNAS
   depends on OF && COMMON_CLK && (ARCH_OXNAS || COMPILE_TEST)
   select MFD_SYSCON
   help
     Support for Ethernet controller on Oxford Semiconductor OXNAS SoCs.
 
     This selects the Oxford Semiconductor OXNASSoC glue layer support for
     the stmmac device driver. This driver is used for OX820.
 
config DWMAC_QCOM_ETHQOS
   tristate "Qualcomm ETHQOS support"
   default ARCH_QCOM
   depends on OF && (ARCH_QCOM || COMPILE_TEST)
   help
     Support for the Qualcomm ETHQOS core.
 
     This selects the Qualcomm ETHQOS glue layer support for the
     stmmac device driver.
 
config DWMAC_ROCKCHIP
   tristate "Rockchip dwmac support"
   default ARCH_ROCKCHIP
   depends on OF && (ARCH_ROCKCHIP || COMPILE_TEST)
   select MFD_SYSCON
   help
     Support for Ethernet controller on Rockchip RK3288 SoC.
 
     This selects the Rockchip RK3288 SoC glue layer support for
     the stmmac device driver.
 
config DWMAC_ROCKCHIP_TOOL
   bool "Rockchip dwmac tool support"
   depends on DWMAC_ROCKCHIP
   default DWMAC_ROCKCHIP if !ROCKCHIP_MINI_KERNEL
   help
     Support for Ethernet functions on Rockchip SoCs.
 
     This selects the features for Rockchip's Ethernet, include PHY loopback,
     MAC loopback, and delayline scanning of RGMII mode.
 
config DWMAC_SOCFPGA
   tristate "SOCFPGA dwmac support"
   default (ARCH_SOCFPGA || ARCH_STRATIX10)
   depends on OF && (ARCH_SOCFPGA || ARCH_STRATIX10 || COMPILE_TEST)
   select MFD_SYSCON
   help
     Support for ethernet controller on Altera SOCFPGA
 
     This selects the Altera SOCFPGA SoC glue layer support
     for the stmmac device driver. This driver is used for
     arria5 and cyclone5 FPGA SoCs.
 
config DWMAC_STI
   tristate "STi GMAC support"
   default ARCH_STI
   depends on OF && (ARCH_STI || COMPILE_TEST)
   select MFD_SYSCON
   help
     Support for ethernet controller on STi SOCs.
 
     This selects STi SoC glue layer support for the stmmac
     device driver. This driver is used on for the STi series
     SOCs GMAC ethernet controller.
 
config DWMAC_STM32
   tristate "STM32 DWMAC support"
   default ARCH_STM32
   depends on OF && HAS_IOMEM && (ARCH_STM32 || COMPILE_TEST)
   select MFD_SYSCON
   help
     Support for ethernet controller on STM32 SOCs.
 
     This selects STM32 SoC glue layer support for the stmmac
     device driver. This driver is used on for the STM32 series
     SOCs GMAC ethernet controller.
 
config DWMAC_SUNXI
   tristate "Allwinner GMAC support"
   default ARCH_SUNXI
   depends on OF && (ARCH_SUNXI || COMPILE_TEST)
   help
     Support for Allwinner A20/A31 GMAC ethernet controllers.
 
     This selects Allwinner SoC glue layer support for the
     stmmac device driver. This driver is used for A20/A31
     GMAC ethernet controller.
 
config DWMAC_SUN8I
   tristate "Allwinner sun8i GMAC support"
   default ARCH_SUNXI
   depends on OF && (ARCH_SUNXI || COMPILE_TEST)
   select MDIO_BUS_MUX
   help
     Support for Allwinner H3 A83T A64 EMAC ethernet controllers.
 
     This selects Allwinner SoC glue layer support for the
     stmmac device driver. This driver is used for H3/A83T/A64
     EMAC ethernet controller.
 
config DWMAC_IMX8
   tristate "NXP IMX8 DWMAC support"
   default ARCH_MXC
   depends on OF && (ARCH_MXC || COMPILE_TEST)
   select MFD_SYSCON
   help
     Support for ethernet controller on NXP i.MX8 SOCs.
 
     This selects NXP SoC glue layer support for the stmmac
     device driver. This driver is used for i.MX8 series like
     iMX8MP/iMX8DXL GMAC ethernet controller.
 
config DWMAC_INTEL_PLAT
   tristate "Intel dwmac support"
   depends on OF && COMMON_CLK
   depends on STMMAC_ETH
   help
     Support for ethernet controllers on Intel SoCs
 
     This selects the Intel platform specific glue layer support for
     the stmmac device driver. This driver is used for the Intel Keem Bay
     SoC.
endif
 
config DWMAC_INTEL
   tristate "Intel GMAC support"
   default X86
   depends on X86 && STMMAC_ETH && PCI
   depends on COMMON_CLK
   help
     This selects the Intel platform specific bus support for the
     stmmac driver. This driver is used for Intel Quark/EHL/TGL.
 
config STMMAC_PCI
   tristate "STMMAC PCI bus support"
   depends on STMMAC_ETH && PCI
   depends on COMMON_CLK
   help
     This selects the platform specific bus support for the stmmac driver.
     This driver was tested on XLINX XC2V3000 FF1152AMT0221
     D1215994A VIRTEX FPGA board and SNPS QoS IPK Prototyping Kit.
 
     If you have a controller with this interface, say Y or M here.
 
     If unsure, say N.
endif