| .. | .. | 
|---|
 | 1 | +# SPDX-License-Identifier: GPL-2.0-only  | 
|---|
| 1 | 2 |  config STMMAC_ETH | 
|---|
| 2 |  | -	tristate "STMicroelectronics 10/100/1000/EQOS Ethernet driver"  | 
|---|
 | 3 | +	tristate "STMicroelectronics Multi-Gigabit Ethernet driver"  | 
|---|
| 3 | 4 |  	depends on HAS_IOMEM && HAS_DMA | 
|---|
| 4 | 5 |  	select MII | 
|---|
| 5 |  | -	select PHYLIB  | 
|---|
 | 6 | +	select PCS_XPCS  | 
|---|
 | 7 | +	select PAGE_POOL  | 
|---|
 | 8 | +	select PHYLINK  | 
|---|
| 6 | 9 |  	select CRC32 | 
|---|
| 7 | 10 |  	imply PTP_1588_CLOCK | 
|---|
| 8 | 11 |  	select RESET_CONTROLLER | 
|---|
| 9 |  | -	---help---  | 
|---|
 | 12 | +	help  | 
|---|
| 10 | 13 |  	  This is the driver for the Ethernet IPs built around a | 
|---|
| 11 | 14 |  	  Synopsys IP Core. | 
|---|
| 12 | 15 |   | 
|---|
| 13 | 16 |  if STMMAC_ETH | 
|---|
 | 17 | +  | 
|---|
 | 18 | +config 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 | +  | 
|---|
 | 28 | +config STMMAC_UIO  | 
|---|
 | 29 | +	tristate "STMMAC_UIO ethernet controller"  | 
|---|
 | 30 | +	default n  | 
|---|
 | 31 | +	select UIO  | 
|---|
 | 32 | +	help  | 
|---|
 | 33 | +	  Say M here if you want to use the stmmac_uio.ko for DPDK.  | 
|---|
 | 34 | +  | 
|---|
 | 35 | +config STMMAC_ETHTOOL  | 
|---|
 | 36 | +	bool "Ethtool feature for STMMAC"  | 
|---|
 | 37 | +	default STMMAC_ETH if !ROCKCHIP_MINI_KERNEL  | 
|---|
 | 38 | +	help  | 
|---|
 | 39 | +	  This selects the ethtool function, default is Y.  | 
|---|
 | 40 | +  | 
|---|
 | 41 | +config STMMAC_FULL  | 
|---|
 | 42 | +	bool "Support full driver for STMMAC"  | 
|---|
 | 43 | +	default STMMAC_ETH if !ROCKCHIP_MINI_KERNEL  | 
|---|
 | 44 | +	help  | 
|---|
 | 45 | +	  This selects the full function, default is Y, full-featured version  | 
|---|
 | 46 | +	  includes 4.10 and other versions, if it is N, only 4.10 core working.  | 
|---|
| 14 | 47 |   | 
|---|
| 15 | 48 |  config STMMAC_PLATFORM | 
|---|
| 16 | 49 |  	tristate "STMMAC Platform bus support" | 
|---|
| 17 | 50 |  	depends on STMMAC_ETH | 
|---|
| 18 | 51 |  	select MFD_SYSCON | 
|---|
| 19 | 52 |  	default y | 
|---|
| 20 |  | -	---help---  | 
|---|
 | 53 | +	help  | 
|---|
| 21 | 54 |  	  This selects the platform specific bus support for the stmmac driver. | 
|---|
| 22 | 55 |  	  This is the driver used on several SoCs: | 
|---|
| 23 | 56 |  	  STi, Allwinner, Amlogic Meson, Altera SOCFPGA. | 
|---|
| .. | .. | 
|---|
| 30 | 63 |   | 
|---|
| 31 | 64 |  config DWMAC_DWC_QOS_ETH | 
|---|
| 32 | 65 |  	tristate "Support for snps,dwc-qos-ethernet.txt DT binding." | 
|---|
| 33 |  | -	select PHYLIB  | 
|---|
| 34 | 66 |  	select CRC32 | 
|---|
| 35 | 67 |  	select MII | 
|---|
| 36 | 68 |  	depends on OF && HAS_DMA | 
|---|
| .. | .. | 
|---|
| 40 | 72 |  config DWMAC_GENERIC | 
|---|
| 41 | 73 |  	tristate "Generic driver for DWMAC" | 
|---|
| 42 | 74 |  	default STMMAC_PLATFORM | 
|---|
| 43 |  | -	---help---  | 
|---|
 | 75 | +	help  | 
|---|
| 44 | 76 |  	  Generic DWMAC driver for platforms that don't require any | 
|---|
| 45 | 77 |  	  platform specific code to function or is using platform | 
|---|
| 46 | 78 |  	  data for setup. | 
|---|
| .. | .. | 
|---|
| 72 | 104 |  	default ARCH_LPC18XX | 
|---|
| 73 | 105 |  	depends on OF && (ARCH_LPC18XX || COMPILE_TEST) | 
|---|
| 74 | 106 |  	select MFD_SYSCON | 
|---|
| 75 |  | -	---help---  | 
|---|
 | 107 | +	help  | 
|---|
| 76 | 108 |  	  Support for NXP LPC18xx/43xx DWMAC Ethernet. | 
|---|
 | 109 | +  | 
|---|
 | 110 | +config DWMAC_MEDIATEK  | 
|---|
 | 111 | +	tristate "MediaTek MT27xx GMAC support"  | 
|---|
 | 112 | +	depends on OF && (ARCH_MEDIATEK || COMPILE_TEST)  | 
|---|
 | 113 | +	help  | 
|---|
 | 114 | +	  Support for MediaTek GMAC Ethernet controller.  | 
|---|
 | 115 | +  | 
|---|
 | 116 | +	  This selects the MT2712 SoC support for the stmmac driver.  | 
|---|
| 77 | 117 |   | 
|---|
| 78 | 118 |  config DWMAC_MESON | 
|---|
| 79 | 119 |  	tristate "Amlogic Meson dwmac support" | 
|---|
| .. | .. | 
|---|
| 97 | 137 |  	  This selects the Oxford Semiconductor OXNASSoC glue layer support for | 
|---|
| 98 | 138 |  	  the stmmac device driver. This driver is used for OX820. | 
|---|
| 99 | 139 |   | 
|---|
 | 140 | +config DWMAC_QCOM_ETHQOS  | 
|---|
 | 141 | +	tristate "Qualcomm ETHQOS support"  | 
|---|
 | 142 | +	default ARCH_QCOM  | 
|---|
 | 143 | +	depends on OF && (ARCH_QCOM || COMPILE_TEST)  | 
|---|
 | 144 | +	help  | 
|---|
 | 145 | +	  Support for the Qualcomm ETHQOS core.  | 
|---|
 | 146 | +  | 
|---|
 | 147 | +	  This selects the Qualcomm ETHQOS glue layer support for the  | 
|---|
 | 148 | +	  stmmac device driver.  | 
|---|
 | 149 | +  | 
|---|
| 100 | 150 |  config DWMAC_ROCKCHIP | 
|---|
| 101 | 151 |  	tristate "Rockchip dwmac support" | 
|---|
| 102 | 152 |  	default ARCH_ROCKCHIP | 
|---|
| .. | .. | 
|---|
| 107 | 157 |   | 
|---|
| 108 | 158 |  	  This selects the Rockchip RK3288 SoC glue layer support for | 
|---|
| 109 | 159 |  	  the stmmac device driver. | 
|---|
 | 160 | +  | 
|---|
 | 161 | +config DWMAC_ROCKCHIP_TOOL  | 
|---|
 | 162 | +	bool "Rockchip dwmac tool support"  | 
|---|
 | 163 | +	depends on DWMAC_ROCKCHIP  | 
|---|
 | 164 | +	default DWMAC_ROCKCHIP if !ROCKCHIP_MINI_KERNEL  | 
|---|
 | 165 | +	help  | 
|---|
 | 166 | +	  Support for Ethernet functions on Rockchip SoCs.  | 
|---|
 | 167 | +  | 
|---|
 | 168 | +	  This selects the features for Rockchip's Ethernet, include PHY loopback,  | 
|---|
 | 169 | +	  MAC loopback, and delayline scanning of RGMII mode.  | 
|---|
| 110 | 170 |   | 
|---|
| 111 | 171 |  config DWMAC_SOCFPGA | 
|---|
| 112 | 172 |  	tristate "SOCFPGA dwmac support" | 
|---|
| .. | .. | 
|---|
| 125 | 185 |  	default ARCH_STI | 
|---|
| 126 | 186 |  	depends on OF && (ARCH_STI || COMPILE_TEST) | 
|---|
| 127 | 187 |  	select MFD_SYSCON | 
|---|
| 128 |  | -	---help---  | 
|---|
 | 188 | +	help  | 
|---|
| 129 | 189 |  	  Support for ethernet controller on STi SOCs. | 
|---|
| 130 | 190 |   | 
|---|
| 131 | 191 |  	  This selects STi SoC glue layer support for the stmmac | 
|---|
| .. | .. | 
|---|
| 137 | 197 |  	default ARCH_STM32 | 
|---|
| 138 | 198 |  	depends on OF && HAS_IOMEM && (ARCH_STM32 || COMPILE_TEST) | 
|---|
| 139 | 199 |  	select MFD_SYSCON | 
|---|
| 140 |  | -	---help---  | 
|---|
 | 200 | +	help  | 
|---|
| 141 | 201 |  	  Support for ethernet controller on STM32 SOCs. | 
|---|
| 142 | 202 |   | 
|---|
| 143 | 203 |  	  This selects STM32 SoC glue layer support for the stmmac | 
|---|
| .. | .. | 
|---|
| 148 | 208 |  	tristate "Allwinner GMAC support" | 
|---|
| 149 | 209 |  	default ARCH_SUNXI | 
|---|
| 150 | 210 |  	depends on OF && (ARCH_SUNXI || COMPILE_TEST) | 
|---|
| 151 |  | -	---help---  | 
|---|
 | 211 | +	help  | 
|---|
| 152 | 212 |  	  Support for Allwinner A20/A31 GMAC ethernet controllers. | 
|---|
| 153 | 213 |   | 
|---|
| 154 | 214 |  	  This selects Allwinner SoC glue layer support for the | 
|---|
| .. | .. | 
|---|
| 160 | 220 |  	default ARCH_SUNXI | 
|---|
| 161 | 221 |  	depends on OF && (ARCH_SUNXI || COMPILE_TEST) | 
|---|
| 162 | 222 |  	select MDIO_BUS_MUX | 
|---|
| 163 |  | -	---help---  | 
|---|
 | 223 | +	help  | 
|---|
| 164 | 224 |  	  Support for Allwinner H3 A83T A64 EMAC ethernet controllers. | 
|---|
| 165 | 225 |   | 
|---|
| 166 | 226 |  	  This selects Allwinner SoC glue layer support for the | 
|---|
| 167 | 227 |  	  stmmac device driver. This driver is used for H3/A83T/A64 | 
|---|
| 168 | 228 |  	  EMAC ethernet controller. | 
|---|
 | 229 | +  | 
|---|
 | 230 | +config DWMAC_IMX8  | 
|---|
 | 231 | +	tristate "NXP IMX8 DWMAC support"  | 
|---|
 | 232 | +	default ARCH_MXC  | 
|---|
 | 233 | +	depends on OF && (ARCH_MXC || COMPILE_TEST)  | 
|---|
 | 234 | +	select MFD_SYSCON  | 
|---|
 | 235 | +	help  | 
|---|
 | 236 | +	  Support for ethernet controller on NXP i.MX8 SOCs.  | 
|---|
 | 237 | +  | 
|---|
 | 238 | +	  This selects NXP SoC glue layer support for the stmmac  | 
|---|
 | 239 | +	  device driver. This driver is used for i.MX8 series like  | 
|---|
 | 240 | +	  iMX8MP/iMX8DXL GMAC ethernet controller.  | 
|---|
 | 241 | +  | 
|---|
 | 242 | +config DWMAC_INTEL_PLAT  | 
|---|
 | 243 | +	tristate "Intel dwmac support"  | 
|---|
 | 244 | +	depends on OF && COMMON_CLK  | 
|---|
 | 245 | +	depends on STMMAC_ETH  | 
|---|
 | 246 | +	help  | 
|---|
 | 247 | +	  Support for ethernet controllers on Intel SoCs  | 
|---|
 | 248 | +  | 
|---|
 | 249 | +	  This selects the Intel platform specific glue layer support for  | 
|---|
 | 250 | +	  the stmmac device driver. This driver is used for the Intel Keem Bay  | 
|---|
 | 251 | +	  SoC.  | 
|---|
| 169 | 252 |  endif | 
|---|
 | 253 | +  | 
|---|
 | 254 | +config DWMAC_INTEL  | 
|---|
 | 255 | +	tristate "Intel GMAC support"  | 
|---|
 | 256 | +	default X86  | 
|---|
 | 257 | +	depends on X86 && STMMAC_ETH && PCI  | 
|---|
 | 258 | +	depends on COMMON_CLK  | 
|---|
 | 259 | +	help  | 
|---|
 | 260 | +	  This selects the Intel platform specific bus support for the  | 
|---|
 | 261 | +	  stmmac driver. This driver is used for Intel Quark/EHL/TGL.  | 
|---|
| 170 | 262 |   | 
|---|
| 171 | 263 |  config STMMAC_PCI | 
|---|
| 172 | 264 |  	tristate "STMMAC PCI bus support" | 
|---|
| 173 | 265 |  	depends on STMMAC_ETH && PCI | 
|---|
| 174 |  | -	---help---  | 
|---|
 | 266 | +	depends on COMMON_CLK  | 
|---|
 | 267 | +	help  | 
|---|
| 175 | 268 |  	  This selects the platform specific bus support for the stmmac driver. | 
|---|
| 176 | 269 |  	  This driver was tested on XLINX XC2V3000 FF1152AMT0221 | 
|---|
| 177 | 270 |  	  D1215994A VIRTEX FPGA board and SNPS QoS IPK Prototyping Kit. | 
|---|