# 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_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_INGENIC
	tristate "Ingenic MAC support"
	default MACH_INGENIC
	depends on OF && HAS_IOMEM && (MACH_INGENIC || COMPILE_TEST)
	select MFD_SYSCON
	help
	  Support for ethernet controller on Ingenic SoCs.

	  This selects Ingenic SoCs glue layer support for the stmmac
	  device driver. This driver is used on for the Ingenic SoCs
	  MAC ethernet controller.

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_SOCFPGA
	tristate "SOCFPGA dwmac support"
	default ARCH_INTEL_SOCFPGA
	depends on OF && (ARCH_INTEL_SOCFPGA || 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.

config DWMAC_VISCONTI
	tristate "Toshiba Visconti DWMAC support"
	default ARCH_VISCONTI
	depends on OF && COMMON_CLK && (ARCH_VISCONTI || COMPILE_TEST)
	help
	  Support for ethernet controller on Visconti SoCs.

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 DWMAC_LOONGSON
	tristate "Loongson PCI DWMAC support"
	default MACH_LOONGSON64
	depends on STMMAC_ETH && PCI
	depends on COMMON_CLK
	help
	  This selects the LOONGSON PCI bus support for the stmmac driver,
	  Support for ethernet controller on Loongson-2K1000 SoC and LS7A1000 bridge.

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
