| # SPDX-License-Identifier: GPL-2.0-only | |
| config STMMAC_ETH | |
| tristate "STMicroelectronics Multi-Gigabit Ethernet driver" | |
| depends on HAS_IOMEM && HAS_DMA | |
| depends on PTP_1588_CLOCK_OPTIONAL | |
| depends on ETHTOOL_NETLINK | |
| select MII | |
| select PCS_XPCS | |
| select PAGE_POOL | |
| select PHYLINK | |
| select CRC32 | |
| select RESET_CONTROLLER | |
| select NET_DEVLINK | |
| 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 | |
| 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" | |
| 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_EIC7700 | |
| tristate "Support for Eswin eic7700 ethernet driver" | |
| depends on OF && HAS_DMA && ARCH_ESWIN || COMPILE_TEST | |
| help | |
| This driver supports the Eswin EIC7700 Ethernet controller, | |
| which integrates Synopsys DesignWare QoS features. It enables | |
| high-speed networking with DMA acceleration and is optimized | |
| for embedded systems. | |
| 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. | |
| Select the QCOM_SOCINFO config flag to enable specific dwmac | |
| fixup based on the ipq806x SoC revision. | |
| 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_NUVOTON | |
| tristate "Nuvoton MA35 dwmac support" | |
| default ARCH_MA35 | |
| depends on OF && (ARCH_MA35 || COMPILE_TEST) | |
| select MFD_SYSCON | |
| help | |
| Support for Ethernet controller on Nuvoton MA35 series SoC. | |
| This selects the Nuvoton MA35 series SoC glue layer support | |
| for the stmmac device driver. The nuvoton-dwmac driver is | |
| used for MA35 series SoCs. | |
| 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_RENESAS_GBETH | |
| tristate "Renesas RZ/V2H(P) GBETH and RZ/T2H, RZ/N2H GMAC support" | |
| default ARCH_RENESAS | |
| depends on OF && (ARCH_RENESAS || COMPILE_TEST) | |
| select PCS_RZN1_MIIC | |
| help | |
| Support for Gigabit Ethernet Interface (GBETH)/ Ethernet MAC (GMAC) | |
| on Renesas SoCs. | |
| This selects Renesas SoC glue layer support for the stmmac device | |
| driver. This driver is used for the RZ/V2H(P) family, RZ/T2H and | |
| RZ/N2H SoCs. | |
| 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_RZN1 | |
| tristate "Renesas RZ/N1 dwmac support" | |
| default ARCH_RZN1 | |
| depends on OF && (ARCH_RZN1 || COMPILE_TEST) | |
| select PCS_RZN1_MIIC | |
| help | |
| Support for Ethernet controller on Renesas RZ/N1 SoC family. | |
| This selects the Renesas RZ/N1 SoC glue layer support for | |
| the stmmac device driver. This support can make use of a custom MII | |
| converter PCS device. | |
| config DWMAC_S32 | |
| tristate "NXP S32G/S32R GMAC support" | |
| default ARCH_S32 | |
| depends on OF && (ARCH_S32 || COMPILE_TEST) | |
| help | |
| Support for ethernet controller on NXP S32CC SOCs. | |
| This selects NXP SoC glue layer support for the stmmac | |
| device driver. This driver is used for the S32CC series | |
| SOCs GMAC ethernet controller, ie. S32G2xx, S32G3xx and | |
| S32R45. | |
| config DWMAC_SOCFPGA | |
| tristate "SOCFPGA dwmac support" | |
| default ARCH_INTEL_SOCFPGA | |
| depends on OF && (ARCH_INTEL_SOCFPGA || COMPILE_TEST) | |
| select MFD_SYSCON | |
| select MDIO_REGMAP | |
| select REGMAP_MMIO | |
| select PCS_LYNX | |
| 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_SOPHGO | |
| tristate "Sophgo dwmac support" | |
| depends on OF && (ARCH_SOPHGO || COMPILE_TEST) | |
| default m if ARCH_SOPHGO | |
| help | |
| Support for ethernet controllers on Sophgo RISC-V SoCs | |
| This selects the Sophgo SoC specific glue layer support | |
| for the stmmac device driver. This driver is used for the | |
| ethernet controllers on various Sophgo SoCs. | |
| config DWMAC_SPACEMIT | |
| tristate "Spacemit dwmac support" | |
| depends on OF && (ARCH_SPACEMIT || COMPILE_TEST) | |
| select MFD_SYSCON | |
| default m if ARCH_SPACEMIT | |
| help | |
| Support for ethernet controllers on Spacemit RISC-V SoCs | |
| This selects the Spacemit platform specific glue layer support | |
| for the stmmac device driver. This driver is used for the | |
| Spacemit K3 ethernet controllers. | |
| config DWMAC_STARFIVE | |
| tristate "StarFive dwmac support" | |
| depends on OF && (ARCH_STARFIVE || COMPILE_TEST) | |
| select MFD_SYSCON | |
| default m if ARCH_STARFIVE | |
| help | |
| Support for ethernet controllers on StarFive RISC-V SoCs | |
| This selects the StarFive platform specific glue layer support | |
| for the stmmac device driver. This driver is used for the | |
| StarFive JH7100 and JH7110 ethernet controllers. | |
| 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_SUN55I | |
| tristate "Allwinner sun55i GMAC200 support" | |
| default ARCH_SUNXI | |
| depends on OF && (ARCH_SUNXI || COMPILE_TEST) | |
| select MDIO_BUS_MUX | |
| help | |
| Support for Allwinner A523/T527 GMAC200 ethernet controllers. | |
| This selects Allwinner SoC glue layer support for the | |
| stmmac device driver. This driver is used for A523/T527 | |
| GMAC200 ethernet controller. | |
| config DWMAC_THEAD | |
| tristate "T-HEAD dwmac support" | |
| depends on OF && (ARCH_THEAD || COMPILE_TEST) | |
| help | |
| Support for ethernet controllers on T-HEAD RISC-V SoCs | |
| This selects the T-HEAD platform specific glue layer support for | |
| the stmmac device driver. This driver is used for T-HEAD TH1520 | |
| 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 | |
| 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_LOONGSON1 | |
| tristate "Loongson1 GMAC support" | |
| default MACH_LOONGSON32 | |
| depends on OF && (MACH_LOONGSON32 || COMPILE_TEST) | |
| help | |
| Support for ethernet controller on Loongson1 SoC. | |
| This selects Loongson1 SoC glue layer support for the stmmac | |
| device driver. This driver is used for Loongson1-based boards | |
| like Loongson LS1B/LS1C. | |
| config DWMAC_TEGRA | |
| tristate "NVIDIA Tegra MGBE support" | |
| depends on ARCH_TEGRA || COMPILE_TEST | |
| help | |
| This selects the Multi-GigaBit Ethernet (MGBE) Controller that is | |
| found on the NVIDIA Tegra SoC devices. This driver provides the glue | |
| layer on top of the stmmac driver required for these NVIDIA Tegra SoC | |
| devices. | |
| 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 # STMMAC_PLATFORM | |
| config STMMAC_LIBPCI | |
| tristate | |
| help | |
| This option enables the PCI bus helpers for the stmmac driver. | |
| config DWMAC_INTEL | |
| tristate "Intel GMAC support" | |
| default X86 | |
| depends on X86 && PCI | |
| depends on COMMON_CLK | |
| depends on ACPI | |
| 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 (MACH_LOONGSON64 || COMPILE_TEST) && PCI | |
| depends on COMMON_CLK | |
| select STMMAC_LIBPCI | |
| help | |
| This selects the LOONGSON PCI bus support for the stmmac driver, | |
| Support for ethernet controller on Loongson-2K1000 SoC and LS7A1000 bridge. | |
| config DWMAC_MOTORCOMM | |
| tristate "Motorcomm PCI DWMAC support" | |
| depends on PCI | |
| select MOTORCOMM_PHY | |
| select STMMAC_LIBPCI | |
| help | |
| This enables glue driver for Motorcomm DWMAC-based PCI Ethernet | |
| controllers. Currently only YT6801 is supported. | |
| config STMMAC_PCI | |
| tristate "STMMAC PCI bus support" | |
| depends on PCI | |
| depends on COMMON_CLK | |
| select STMMAC_LIBPCI | |
| 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 # STMMAC_ETH |