1# SPDX-License-Identifier: GPL-2.0-only 2config STMMAC_ETH 3 tristate "STMicroelectronics 10/100/1000/EQOS Ethernet driver" 4 depends on HAS_IOMEM && HAS_DMA 5 select MII 6 select PHYLIB 7 select CRC32 8 imply PTP_1588_CLOCK 9 select RESET_CONTROLLER 10 ---help--- 11 This is the driver for the Ethernet IPs built around a 12 Synopsys IP Core. 13 14if STMMAC_ETH 15 16config STMMAC_PLATFORM 17 tristate "STMMAC Platform bus support" 18 depends on STMMAC_ETH 19 select MFD_SYSCON 20 default y 21 ---help--- 22 This selects the platform specific bus support for the stmmac driver. 23 This is the driver used on several SoCs: 24 STi, Allwinner, Amlogic Meson, Altera SOCFPGA. 25 26 If you have a controller with this interface, say Y or M here. 27 28 If unsure, say N. 29 30if STMMAC_PLATFORM 31 32config DWMAC_DWC_QOS_ETH 33 tristate "Support for snps,dwc-qos-ethernet.txt DT binding." 34 select PHYLIB 35 select CRC32 36 select MII 37 depends on OF && HAS_DMA 38 help 39 Support for chips using the snps,dwc-qos-ethernet.txt DT binding. 40 41config DWMAC_GENERIC 42 tristate "Generic driver for DWMAC" 43 default STMMAC_PLATFORM 44 ---help--- 45 Generic DWMAC driver for platforms that don't require any 46 platform specific code to function or is using platform 47 data for setup. 48 49config DWMAC_ANARION 50 tristate "Adaptrum Anarion GMAC support" 51 default ARC 52 depends on OF && (ARC || COMPILE_TEST) 53 help 54 Support for Adaptrum Anarion GMAC Ethernet controller. 55 56 This selects the Anarion SoC glue layer support for the stmmac driver. 57 58config DWMAC_IPQ806X 59 tristate "QCA IPQ806x DWMAC support" 60 default ARCH_QCOM 61 depends on OF && (ARCH_QCOM || COMPILE_TEST) 62 select MFD_SYSCON 63 help 64 Support for QCA IPQ806X DWMAC Ethernet. 65 66 This selects the IPQ806x SoC glue layer support for the stmmac 67 device driver. This driver does not use any of the hardware 68 acceleration features available on this SoC. Network devices 69 will behave like standard non-accelerated ethernet interfaces. 70 71config DWMAC_LPC18XX 72 tristate "NXP LPC18xx/43xx DWMAC support" 73 default ARCH_LPC18XX 74 depends on OF && (ARCH_LPC18XX || COMPILE_TEST) 75 select MFD_SYSCON 76 ---help--- 77 Support for NXP LPC18xx/43xx DWMAC Ethernet. 78 79config DWMAC_MEDIATEK 80 tristate "MediaTek MT27xx GMAC support" 81 depends on OF && (ARCH_MEDIATEK || COMPILE_TEST) 82 help 83 Support for MediaTek GMAC Ethernet controller. 84 85 This selects the MT2712 SoC support for the stmmac driver. 86 87config DWMAC_MESON 88 tristate "Amlogic Meson dwmac support" 89 default ARCH_MESON 90 depends on OF && COMMON_CLK && (ARCH_MESON || COMPILE_TEST) 91 help 92 Support for Ethernet controller on Amlogic Meson SoCs. 93 94 This selects the Amlogic Meson SoC glue layer support for 95 the stmmac device driver. This driver is used for Meson6, 96 Meson8, Meson8b and GXBB SoCs. 97 98config DWMAC_OXNAS 99 tristate "Oxford Semiconductor OXNAS dwmac support" 100 default ARCH_OXNAS 101 depends on OF && COMMON_CLK && (ARCH_OXNAS || COMPILE_TEST) 102 select MFD_SYSCON 103 help 104 Support for Ethernet controller on Oxford Semiconductor OXNAS SoCs. 105 106 This selects the Oxford Semiconductor OXNASSoC glue layer support for 107 the stmmac device driver. This driver is used for OX820. 108 109config DWMAC_QCOM_ETHQOS 110 tristate "Qualcomm ETHQOS support" 111 default ARCH_QCOM 112 depends on OF && (ARCH_QCOM || COMPILE_TEST) 113 help 114 Support for the Qualcomm ETHQOS core. 115 116 This selects the Qualcomm ETHQOS glue layer support for the 117 stmmac device driver. 118 119config DWMAC_ROCKCHIP 120 tristate "Rockchip dwmac support" 121 default ARCH_ROCKCHIP 122 depends on OF && (ARCH_ROCKCHIP || COMPILE_TEST) 123 select MFD_SYSCON 124 help 125 Support for Ethernet controller on Rockchip RK3288 SoC. 126 127 This selects the Rockchip RK3288 SoC glue layer support for 128 the stmmac device driver. 129 130config DWMAC_SOCFPGA 131 tristate "SOCFPGA dwmac support" 132 default (ARCH_SOCFPGA || ARCH_STRATIX10) 133 depends on OF && (ARCH_SOCFPGA || ARCH_STRATIX10 || COMPILE_TEST) 134 select MFD_SYSCON 135 help 136 Support for ethernet controller on Altera SOCFPGA 137 138 This selects the Altera SOCFPGA SoC glue layer support 139 for the stmmac device driver. This driver is used for 140 arria5 and cyclone5 FPGA SoCs. 141 142config DWMAC_STI 143 tristate "STi GMAC support" 144 default ARCH_STI 145 depends on OF && (ARCH_STI || COMPILE_TEST) 146 select MFD_SYSCON 147 ---help--- 148 Support for ethernet controller on STi SOCs. 149 150 This selects STi SoC glue layer support for the stmmac 151 device driver. This driver is used on for the STi series 152 SOCs GMAC ethernet controller. 153 154config DWMAC_STM32 155 tristate "STM32 DWMAC support" 156 default ARCH_STM32 157 depends on OF && HAS_IOMEM && (ARCH_STM32 || COMPILE_TEST) 158 select MFD_SYSCON 159 ---help--- 160 Support for ethernet controller on STM32 SOCs. 161 162 This selects STM32 SoC glue layer support for the stmmac 163 device driver. This driver is used on for the STM32 series 164 SOCs GMAC ethernet controller. 165 166config DWMAC_SUNXI 167 tristate "Allwinner GMAC support" 168 default ARCH_SUNXI 169 depends on OF && (ARCH_SUNXI || COMPILE_TEST) 170 ---help--- 171 Support for Allwinner A20/A31 GMAC ethernet controllers. 172 173 This selects Allwinner SoC glue layer support for the 174 stmmac device driver. This driver is used for A20/A31 175 GMAC ethernet controller. 176 177config DWMAC_SUN8I 178 tristate "Allwinner sun8i GMAC support" 179 default ARCH_SUNXI 180 depends on OF && (ARCH_SUNXI || COMPILE_TEST) 181 select MDIO_BUS_MUX 182 ---help--- 183 Support for Allwinner H3 A83T A64 EMAC ethernet controllers. 184 185 This selects Allwinner SoC glue layer support for the 186 stmmac device driver. This driver is used for H3/A83T/A64 187 EMAC ethernet controller. 188endif 189 190config STMMAC_PCI 191 tristate "STMMAC PCI bus support" 192 depends on STMMAC_ETH && PCI 193 ---help--- 194 This selects the platform specific bus support for the stmmac driver. 195 This driver was tested on XLINX XC2V3000 FF1152AMT0221 196 D1215994A VIRTEX FPGA board and SNPS QoS IPK Prototyping Kit. 197 198 If you have a controller with this interface, say Y or M here. 199 200 If unsure, say N. 201endif 202