Training courses

Kernel and Embedded Linux

Bootlin training courses

Embedded Linux, kernel,
Yocto Project, Buildroot, real-time,
graphics, boot time, debugging...

Bootlin logo

Elixir Cross Referencer

# SPDX-License-Identifier: GPL-2.0-only
#
# Marvell device configuration
#

config CONFIG_NET_VENDOR_MARVELL
	bool "Marvell devices"
	default y
	depends on CONFIG_PCI || CONFIG_CPU_PXA168 || CONFIG_MV64X60 || CONFIG_PPC32 || CONFIG_PLAT_ORION || CONFIG_INET || CONFIG_COMPILE_TEST
	---help---
	  If you have a network (Ethernet) card belonging to this class, say Y.

	  Note that the answer to this question doesn't directly affect the
	  kernel: saying N will just cause the configurator to skip all
	  the questions about Marvell devices. If you say Y, you will be
	  asked for your specific card in the following questions.

if CONFIG_NET_VENDOR_MARVELL

config CONFIG_MV643XX_ETH
	tristate "Marvell Discovery (643XX) and Orion ethernet support"
	depends on CONFIG_MV64X60 || CONFIG_PPC32 || CONFIG_PLAT_ORION || CONFIG_COMPILE_TEST
	depends on CONFIG_INET
	select CONFIG_PHYLIB
	select CONFIG_MVMDIO
	---help---
	  This driver supports the gigabit ethernet MACs in the
	  Marvell Discovery CONFIG_PPC/CONFIG_MIPS chipset family (MV643XX) and
	  in the Marvell Orion CONFIG_ARM SoC family.

	  Some boards that use the Discovery chipset are the Momenco
	  Ocelot CONFIG_C and Jaguar ATX and Pegasos II.

config CONFIG_MVMDIO
	tristate "Marvell MDIO interface support"
	depends on CONFIG_HAS_IOMEM
	select CONFIG_PHYLIB
	---help---
	  This driver supports the CONFIG_MDIO interface found in the network
	  interface units of the Marvell EBU SoCs (Kirkwood, Orion5x,
	  Dove, Armada 370 and Armada XP).

	  This driver is used by the CONFIG_MV643XX_ETH and CONFIG_MVNETA drivers.

config CONFIG_MVNETA_BM_ENABLE
	tristate "Marvell Armada 38x/XP network interface BM support"
	depends on CONFIG_MVNETA
	depends on !CONFIG_64BIT
	---help---
	  This driver supports auxiliary block of the network
	  interface units in the Marvell ARMADA XP and ARMADA 38x SoC
	  family, which is called buffer manager.

	  This driver, when enabled, strictly cooperates with mvneta
	  driver and is common for all network ports of the devices,
	  even for Armada 370 SoC, which doesn't support hardware
	  buffer management.

config CONFIG_MVNETA
	tristate "Marvell Armada 370/38x/XP/37xx network interface support"
	depends on CONFIG_ARCH_MVEBU || CONFIG_COMPILE_TEST
	select CONFIG_MVMDIO
	select CONFIG_PHYLINK
	---help---
	  This driver supports the network interface units in the
	  Marvell ARMADA XP, ARMADA 370, ARMADA 38x and
	  ARMADA 37xx SoC family.

	  Note that this driver is distinct from the mv643xx_eth
	  driver, which should be used for the older Marvell SoCs
	  (Dove, Orion, Discovery, Kirkwood).

config CONFIG_MVNETA_BM
	tristate
	depends on !CONFIG_64BIT
	default y if CONFIG_MVNETA=y && CONFIG_MVNETA_BM_ENABLE!=n
	default CONFIG_MVNETA_BM_ENABLE
	select CONFIG_HWBM
	select CONFIG_GENERIC_ALLOCATOR
	help
	  CONFIG_MVNETA_BM must not be 'm' if CONFIG_MVNETA=y, so this symbol ensures
	  that all dependencies are met.

config CONFIG_MVPP2
	tristate "Marvell Armada 375/7K/8K network interface support"
	depends on CONFIG_ARCH_MVEBU || CONFIG_COMPILE_TEST
	select CONFIG_MVMDIO
	select CONFIG_PHYLINK
	---help---
	  This driver supports the network interface units in the
	  Marvell ARMADA 375, 7K and 8K SoCs.

config CONFIG_PXA168_ETH
	tristate "Marvell pxa168 ethernet support"
	depends on CONFIG_HAS_IOMEM
	depends on CONFIG_CPU_PXA168 || CONFIG_ARCH_BERLIN || CONFIG_COMPILE_TEST
	select CONFIG_PHYLIB
	---help---
	  This driver supports the pxa168 Ethernet ports.

	  To compile this driver as a module, choose CONFIG_M here. The module
	  will be called pxa168_eth.

config CONFIG_SKGE
	tristate "Marvell Yukon Gigabit Ethernet support"
	depends on CONFIG_PCI
	select CONFIG_CRC32
	---help---
	  This driver support the Marvell Yukon or SysKonnect SK-98xx/SK-95xx
	  and related Gigabit Ethernet adapters. It is a new smaller driver
	  with better performance and more complete ethtool support.

	  It does not support the link failover and network management
	  features that "portable" vendor supplied sk98lin driver does.

	  This driver supports adapters based on the original Yukon chipset:
	  Marvell 88E8001, Belkin F5D5005, CNet GigaCard, DLink DGE-530T,
	  Linksys EG1032/EG1064, 3Com 3C940/3C940B, SysKonnect SK-9871/9872.

	  It does not support the newer Yukon2 chipset: a separate driver,
	  sky2, is provided for these adapters.

	  To compile this driver as a module, choose CONFIG_M here: the module
	  will be called skge.  This is recommended.

config CONFIG_SKGE_DEBUG
	bool "Debugging interface"
	depends on CONFIG_SKGE && CONFIG_DEBUG_FS
	---help---
	  This option adds the ability to dump driver state for debugging.
	  The file /sys/kernel/debug/skge/ethX displays the state of the internal
	  transmit and receive rings.

	  If unsure, say N.

config CONFIG_SKGE_GENESIS
	bool "Support for older SysKonnect Genesis boards"
	depends on CONFIG_SKGE
	---help---
	 This enables support for the older and uncommon SysKonnect Genesis
	 chips, which support CONFIG_MII via an external transceiver, instead of
	 an internal one. Disabling this option will save some memory
	 by making code smaller. If unsure say Y.

config CONFIG_SKY2
	tristate "Marvell Yukon 2 support"
	depends on CONFIG_PCI
	select CONFIG_CRC32
	---help---
	  This driver supports Gigabit Ethernet adapters based on the
	  Marvell Yukon 2 chipset:
	  Marvell 88E8021/88E8022/88E8035/88E8036/88E8038/88E8050/88E8052/
	  88E8053/88E8055/88E8061/88E8062, SysKonnect SK-9E21D/SK-9S21

	  There is companion driver for the older Marvell Yukon and
	  SysKonnect Genesis based adapters: skge.

	  To compile this driver as a module, choose CONFIG_M here: the module
	  will be called sky2.  This is recommended.

config CONFIG_SKY2_DEBUG
	bool "Debugging interface"
	depends on CONFIG_SKY2 && CONFIG_DEBUG_FS
	---help---
	  This option adds the ability to dump driver state for debugging.
	  The file /sys/kernel/debug/sky2/ethX displays the state of the internal
	  transmit and receive rings.

	  If unsure, say N.


source "drivers/net/ethernet/marvell/octeontx2/Kconfig"

endif # CONFIG_NET_VENDOR_MARVELL