123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329 |
- # 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
- select MII
- select PCS_XPCS
- select PAGE_POOL
- select PHYLINK
- select CRC32
- 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 EMAC_MDIO_FE
- tristate "Support for the mdio front end driver"
- help
- Adding support for EMAC MDIO Front end driver. This enables single
- mdio for the dual mac feature support on HQX. The front end driver
- get request from GVM and send it to the Backend mdio driver.The
- request is handled on the backend for the mdio read/write operation.
- 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.
- 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_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_QCOM_VER3
- tristate "EMAC ETHQOS support for direwolf"
- default ARCH_QCOM
- depends on OF && (ARCH_QCOM || COMPILE_TEST)
- help
- Support for the EMAC ETHQOS core 3.
- This selects the EMAC ETHQOS glue layer DMA and MTL offsets for
- the stmmac device driver for direwolf. With this config different
- base address for various MTL and DMA registers are selected.
- This config is only applicable for EMAC version 3.
- 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.
- config DWXGMAC_QCOM_4K
- bool "Support for 4K Virtualization of XGMAC registers"
- depends on (ARCH_SDXPINN || ARCH_SA525)
- default y
- help
- This selects 4K virtualization of DMA and MTL offsets for the
- stmmac device driver. With this config different base addresses
- for various MTL and DMA registers are selected. This config is
- only applicable for XGMAC2 HW version.
- config ETHQOS_QCOM_VER4
- bool "Emac ethqos support for HW version 4"
- depends on (ARCH_SDXPINN || ARCH_SA525)
- default y
- help
- Support for the EMAC ETHQOS core 4.
- This selects proper registers and corresponding bit mapping
- for the configuration of IO Macro block. This config is
- only applicable for EMAC version 4.
- config ETHQOS_QCOM_SERDES
- tristate "Enable Serdes driver"
- depends on STMMAC_ETH
- default n
- help
- SerDes is to provide data transmission over a single line or
- a differential pair in order to minimize the number of I/O pins
- and interconnects.
- Serdes driver by default comes up on 1Gbps mode in SGMII and USXGMII
- due to h/w limitation.
- 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
|