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
#
# HISILICON device configuration
#

config CONFIG_NET_VENDOR_HISILICON
	bool "Hisilicon devices"
	default y
	depends on CONFIG_OF || CONFIG_ACPI
	depends on CONFIG_ARM || CONFIG_ARM64 || 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 Hisilicon devices. If you say Y, you will be asked
	  for your specific card in the following questions.

if CONFIG_NET_VENDOR_HISILICON

config CONFIG_HIX5HD2_GMAC
	tristate "Hisilicon HIX5HD2 Family Network Device Support"
	select CONFIG_PHYLIB
	help
	  This selects the hix5hd2 mac family network device.

config CONFIG_HISI_FEMAC
	tristate "Hisilicon Fast Ethernet MAC device support"
	depends on CONFIG_HAS_IOMEM
	select CONFIG_PHYLIB
	select CONFIG_RESET_CONTROLLER
	help
	  This selects the Hisilicon Fast Ethernet CONFIG_MAC device(FEMAC).
	  The FEMAC receives and transmits data over Ethernet
	  ports at 10/100 Mbps in full-duplex or half-duplex mode.
	  The FEMAC exchanges data with the CPU, and supports
	  the energy efficient Ethernet (EEE).

config CONFIG_HIP04_ETH
	tristate "HISILICON P04 Ethernet support"
	depends on CONFIG_HAS_IOMEM	# For CONFIG_MFD_SYSCON
	select CONFIG_MARVELL_PHY
	select CONFIG_MFD_SYSCON
	select CONFIG_HNS_MDIO
	---help---
	  If you wish to compile a kernel for a hardware with hisilicon p04 SoC and
	  want to use the internal ethernet then you should answer Y to this.

config CONFIG_HI13X1_GMAC
	bool "Hisilicon HI13X1 Network Device Support"
	depends on CONFIG_HIP04_ETH
	help
	  If you wish to compile a kernel for a hardware with hisilicon hi13x1_gamc
	  then you should answer Y to this. This makes this driver suitable for use
	  on certain boards such as the HI13X1.

	  If you are unsure, say N.

config CONFIG_HNS_MDIO
	tristate
	select CONFIG_PHYLIB
	---help---
	  This selects the CONFIG_HNS CONFIG_MDIO support. It is needed by CONFIG_HNS_DSAF to access
	  the PHY

config CONFIG_HNS
	tristate "Hisilicon Network Subsystem Support (Framework)"
	---help---
	  This selects the framework support for Hisilicon Network Subsystem. It
	  is needed by any driver which provides CONFIG_HNS acceleration engine or make
	  use of the engine

config CONFIG_HNS_DSAF
	tristate "Hisilicon HNS DSAF device Support"
	select CONFIG_HNS
	select CONFIG_HNS_MDIO
	---help---
	  This selects the DSAF (Distributed System Area Frabric) network
	  acceleration engine support. The engine is used in Hisilicon hip05,
	  Hi1610 and further ICT SoC

config CONFIG_HNS_ENET
	tristate "Hisilicon HNS Ethernet Device Support"
	select CONFIG_PHYLIB
	select CONFIG_HNS
	---help---
	  This selects the general ethernet driver for CONFIG_HNS.  This module make
	  use of any CONFIG_HNS AE driver, such as CONFIG_HNS_DSAF

config CONFIG_HNS3
	tristate "Hisilicon Network Subsystem Support HNS3 (Framework)"
	depends on CONFIG_PCI
	---help---
	  This selects the framework support for Hisilicon Network Subsystem 3.
	  This layer facilitates clients like ENET, RoCE and user-space ethernet
	  drivers(like ODP)to register with HNAE devices and their associated
	  operations.

if CONFIG_HNS3

config CONFIG_HNS3_HCLGE
	tristate "Hisilicon HNS3 HCLGE Acceleration Engine & Compatibility Layer Support"
	default m
	depends on CONFIG_PCI_MSI
	---help---
	  This selects the CONFIG_HNS3_HCLGE network acceleration engine & its hardware
	  compatibility layer. The engine would be used in Hisilicon hip08 family of
	  SoCs and further upcoming SoCs.

config CONFIG_HNS3_DCB
	bool "Hisilicon HNS3 Data Center Bridge Support"
	default n
	depends on CONFIG_HNS3_HCLGE && CONFIG_DCB
	---help---
	  Say Y here if you want to use Data Center Bridging (CONFIG_DCB) in the CONFIG_HNS3 driver.

	  If unsure, say N.

config CONFIG_HNS3_HCLGEVF
	tristate "Hisilicon HNS3VF Acceleration Engine & Compatibility Layer Support"
	depends on CONFIG_PCI_MSI
	depends on CONFIG_HNS3_HCLGE
    ---help---
	  This selects the CONFIG_HNS3 VF drivers network acceleration engine & its hardware
	  compatibility layer. The engine would be used in Hisilicon hip08 family of
	  SoCs and further upcoming SoCs.

config CONFIG_HNS3_ENET
	tristate "Hisilicon HNS3 Ethernet Device Support"
	default m
	depends on CONFIG_64BIT && CONFIG_PCI
	depends on CONFIG_INET
	---help---
	  This selects the Ethernet Driver for Hisilicon Network Subsystem 3 for hip08
	  family of SoCs. This module depends upon HNAE3 driver to access the HNAE3
	  devices and their associated operations.

endif #CONFIG_HNS3

endif # CONFIG_NET_VENDOR_HISILICON