17ac6653aSJeff Kirsherconfig STMMAC_ETH
27ac6653aSJeff Kirsher	tristate "STMicroelectronics 10/100/1000 Ethernet driver"
3fd1eb9e6SGeert Uytterhoeven	depends on HAS_IOMEM && HAS_DMA
47ac6653aSJeff Kirsher	select MII
57ac6653aSJeff Kirsher	select PHYLIB
67ac6653aSJeff Kirsher	select CRC32
792ba6888SRayagond Kokatanur	select PTP_1588_CLOCK
8c5e4ddbdSChen-Yu Tsai	select RESET_CONTROLLER
97ac6653aSJeff Kirsher	---help---
107ac6653aSJeff Kirsher	  This is the driver for the Ethernet IPs are built around a
117ac6653aSJeff Kirsher	  Synopsys IP Core and only tested on the STMicroelectronics
127ac6653aSJeff Kirsher	  platforms.
137ac6653aSJeff Kirsher
147ac6653aSJeff Kirsherif STMMAC_ETH
157ac6653aSJeff Kirsher
16bfab27a1SGiuseppe CAVALLAROconfig STMMAC_PLATFORM
17b2e2f0c7SAndy Shevchenko	tristate "STMMAC Platform bus support"
18bfab27a1SGiuseppe CAVALLARO	depends on STMMAC_ETH
19b1c17215SMathieu Olivari	select MFD_SYSCON
2033d5e332SGiuseppe CAVALLARO	default y
21bfab27a1SGiuseppe CAVALLARO	---help---
22c0d54066SGiuseppe CAVALLARO	  This selects the platform specific bus support for the stmmac driver.
23c0d54066SGiuseppe CAVALLARO	  This is the driver used on several SoCs:
24c0d54066SGiuseppe CAVALLARO	  STi, Allwinner, Amlogic Meson, Altera SOCFPGA.
25c0d54066SGiuseppe CAVALLARO
26bfab27a1SGiuseppe CAVALLARO	  If you have a controller with this interface, say Y or M here.
27bfab27a1SGiuseppe CAVALLARO
28bfab27a1SGiuseppe CAVALLARO	  If unsure, say N.
29bfab27a1SGiuseppe CAVALLARO
30ba25020eSJoachim Eastwoodif STMMAC_PLATFORM
31ba25020eSJoachim Eastwood
32ba25020eSJoachim Eastwoodconfig DWMAC_GENERIC
33ba25020eSJoachim Eastwood	tristate "Generic driver for DWMAC"
34ba25020eSJoachim Eastwood	default STMMAC_PLATFORM
35ba25020eSJoachim Eastwood	---help---
36ba25020eSJoachim Eastwood	  Generic DWMAC driver for platforms that don't require any
37ba25020eSJoachim Eastwood	  platform specific code to function or is using platform
38ba25020eSJoachim Eastwood	  data for setup.
39ba25020eSJoachim Eastwood
40b1c17215SMathieu Olivariconfig DWMAC_IPQ806X
41b1c17215SMathieu Olivari	tristate "QCA IPQ806x DWMAC support"
42b1c17215SMathieu Olivari	default ARCH_QCOM
432e280c18SPeter Robinson	depends on OF && (ARCH_QCOM || COMPILE_TEST)
44b1c17215SMathieu Olivari	select MFD_SYSCON
45b1c17215SMathieu Olivari	help
46b1c17215SMathieu Olivari	  Support for QCA IPQ806X DWMAC Ethernet.
47b1c17215SMathieu Olivari
48b1c17215SMathieu Olivari	  This selects the IPQ806x SoC glue layer support for the stmmac
49b1c17215SMathieu Olivari	  device driver. This driver does not use any of the hardware
50b1c17215SMathieu Olivari	  acceleration features available on this SoC. Network devices
51b1c17215SMathieu Olivari	  will behave like standard non-accelerated ethernet interfaces.
52b1c17215SMathieu Olivari
5369bdd2d4SJoachim Eastwoodconfig DWMAC_LPC18XX
5469bdd2d4SJoachim Eastwood	tristate "NXP LPC18xx/43xx DWMAC support"
5569bdd2d4SJoachim Eastwood	default ARCH_LPC18XX
562e280c18SPeter Robinson	depends on OF && (ARCH_LPC18XX || COMPILE_TEST)
5769bdd2d4SJoachim Eastwood	select MFD_SYSCON
5869bdd2d4SJoachim Eastwood	---help---
5969bdd2d4SJoachim Eastwood	  Support for NXP LPC18xx/43xx DWMAC Ethernet.
6069bdd2d4SJoachim Eastwood
6140e6b0baSJoachim Eastwoodconfig DWMAC_MESON
6240e6b0baSJoachim Eastwood	tristate "Amlogic Meson dwmac support"
6340e6b0baSJoachim Eastwood	default ARCH_MESON
64566e8251SMartin Blumenstingl	depends on OF && COMMON_CLK && (ARCH_MESON || COMPILE_TEST)
6540e6b0baSJoachim Eastwood	help
6640e6b0baSJoachim Eastwood	  Support for Ethernet controller on Amlogic Meson SoCs.
6740e6b0baSJoachim Eastwood
6840e6b0baSJoachim Eastwood	  This selects the Amlogic Meson SoC glue layer support for
69566e8251SMartin Blumenstingl	  the stmmac device driver. This driver is used for Meson6,
70566e8251SMartin Blumenstingl	  Meson8, Meson8b and GXBB SoCs.
7140e6b0baSJoachim Eastwood
72e0fb4013SJoachim Eastwoodconfig DWMAC_ROCKCHIP
73e0fb4013SJoachim Eastwood	tristate "Rockchip dwmac support"
74e0fb4013SJoachim Eastwood	default ARCH_ROCKCHIP
752e280c18SPeter Robinson	depends on OF && (ARCH_ROCKCHIP || COMPILE_TEST)
76e0fb4013SJoachim Eastwood	select MFD_SYSCON
77e0fb4013SJoachim Eastwood	help
78e0fb4013SJoachim Eastwood	  Support for Ethernet controller on Rockchip RK3288 SoC.
79e0fb4013SJoachim Eastwood
80e0fb4013SJoachim Eastwood	  This selects the Rockchip RK3288 SoC glue layer support for
81e0fb4013SJoachim Eastwood	  the stmmac device driver.
82e0fb4013SJoachim Eastwood
83c7c52ae7SJoachim Eastwoodconfig DWMAC_SOCFPGA
84c7c52ae7SJoachim Eastwood	tristate "SOCFPGA dwmac support"
85c7c52ae7SJoachim Eastwood	default ARCH_SOCFPGA
862e280c18SPeter Robinson	depends on OF && (ARCH_SOCFPGA || COMPILE_TEST)
87c7c52ae7SJoachim Eastwood	select MFD_SYSCON
88c7c52ae7SJoachim Eastwood	help
89c7c52ae7SJoachim Eastwood	  Support for ethernet controller on Altera SOCFPGA
90c7c52ae7SJoachim Eastwood
91c7c52ae7SJoachim Eastwood	  This selects the Altera SOCFPGA SoC glue layer support
92c7c52ae7SJoachim Eastwood	  for the stmmac device driver. This driver is used for
93c7c52ae7SJoachim Eastwood	  arria5 and cyclone5 FPGA SoCs.
94c7c52ae7SJoachim Eastwood
952a321798SJoachim Eastwoodconfig DWMAC_STI
962a321798SJoachim Eastwood	tristate "STi GMAC support"
972a321798SJoachim Eastwood	default ARCH_STI
982e280c18SPeter Robinson	depends on OF && (ARCH_STI || COMPILE_TEST)
992a321798SJoachim Eastwood	select MFD_SYSCON
1002a321798SJoachim Eastwood	---help---
1012a321798SJoachim Eastwood	  Support for ethernet controller on STi SOCs.
1022a321798SJoachim Eastwood
1032a321798SJoachim Eastwood	  This selects STi SoC glue layer support for the stmmac
1042a321798SJoachim Eastwood	  device driver. This driver is used on for the STi series
1052a321798SJoachim Eastwood	  SOCs GMAC ethernet controller.
1062a321798SJoachim Eastwood
1074198b7dbSJoachim Eastwoodconfig DWMAC_SUNXI
1084198b7dbSJoachim Eastwood	tristate "Allwinner GMAC support"
1094198b7dbSJoachim Eastwood	default ARCH_SUNXI
1102e280c18SPeter Robinson	depends on OF && (ARCH_SUNXI || COMPILE_TEST)
1114198b7dbSJoachim Eastwood	---help---
1124198b7dbSJoachim Eastwood	  Support for Allwinner A20/A31 GMAC ethernet controllers.
1134198b7dbSJoachim Eastwood
1144198b7dbSJoachim Eastwood	  This selects Allwinner SoC glue layer support for the
1154198b7dbSJoachim Eastwood	  stmmac device driver. This driver is used for A20/A31
1164198b7dbSJoachim Eastwood	  GMAC ethernet controller.
117ba25020eSJoachim Eastwoodendif
118ba25020eSJoachim Eastwood
119bfab27a1SGiuseppe CAVALLAROconfig STMMAC_PCI
120b2e2f0c7SAndy Shevchenko	tristate "STMMAC PCI bus support"
1216e1215adSKees Cook	depends on STMMAC_ETH && PCI
122bfab27a1SGiuseppe CAVALLARO	---help---
123bfab27a1SGiuseppe CAVALLARO	  This is to select the Synopsys DWMAC available on PCI devices,
124bfab27a1SGiuseppe CAVALLARO	  if you have a controller with this interface, say Y or M here.
125bfab27a1SGiuseppe CAVALLARO
126bfab27a1SGiuseppe CAVALLARO	  This PCI support is tested on XLINX XC2V3000 FF1152AMT0221
127bfab27a1SGiuseppe CAVALLARO	  D1215994A VIRTEX FPGA board.
128bfab27a1SGiuseppe CAVALLARO
129bfab27a1SGiuseppe CAVALLARO	  If unsure, say N.
1307ac6653aSJeff Kirsherendif
131