blob: 9a47c5aec91a41832efdbd047e222e3e865b12d0 [file] [log] [blame]
# 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 MDIO_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_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_SOCFPGA || ARCH_STRATIX10)
depends on OF && (ARCH_SOCFPGA || ARCH_STRATIX10 || 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.
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 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