treewide: Add SPDX license identifier - Makefile/Kconfig
[linux-2.6-microblaze.git] / drivers / net / ethernet / stmicro / stmmac / Kconfig
1 # SPDX-License-Identifier: GPL-2.0-only
2 config 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
14 if STMMAC_ETH
15
16 config 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
30 if STMMAC_PLATFORM
31
32 config 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
41 config 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
49 config 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
58 config 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
71 config 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
79 config 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
87 config 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
98 config 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
109 config 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
119 config 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
130 config 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
142 config 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
154 config 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
166 config 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
177 config 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.
188 endif
189
190 config 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.
201 endif