1ec8f24b7SThomas Gleixner# SPDX-License-Identifier: GPL-2.0-only
257c5bc9aSZhangfei Gao#
357c5bc9aSZhangfei Gao# HISILICON device configuration
457c5bc9aSZhangfei Gao#
557c5bc9aSZhangfei Gao
657c5bc9aSZhangfei Gaoconfig NET_VENDOR_HISILICON
757c5bc9aSZhangfei Gao	bool "Hisilicon devices"
857c5bc9aSZhangfei Gao	default y
9e020797bSGeert Uytterhoeven	depends on OF || ACPI
103870502aSGeert Uytterhoeven	depends on ARM || ARM64 || COMPILE_TEST
1157c5bc9aSZhangfei Gao	---help---
12138b15edSPaul Gortmaker	  If you have a network (Ethernet) card belonging to this class, say Y.
1357c5bc9aSZhangfei Gao
1457c5bc9aSZhangfei Gao	  Note that the answer to this question doesn't directly affect the
1557c5bc9aSZhangfei Gao	  kernel: saying N will just cause the configurator to skip all
1657c5bc9aSZhangfei Gao	  the questions about Hisilicon devices. If you say Y, you will be asked
1757c5bc9aSZhangfei Gao	  for your specific card in the following questions.
1857c5bc9aSZhangfei Gao
1957c5bc9aSZhangfei Gaoif NET_VENDOR_HISILICON
2057c5bc9aSZhangfei Gao
2157c5bc9aSZhangfei Gaoconfig HIX5HD2_GMAC
2257c5bc9aSZhangfei Gao	tristate "Hisilicon HIX5HD2 Family Network Device Support"
2357c5bc9aSZhangfei Gao	select PHYLIB
2457c5bc9aSZhangfei Gao	help
2557c5bc9aSZhangfei Gao	  This selects the hix5hd2 mac family network device.
2657c5bc9aSZhangfei Gao
27542ae60aSDongpo Liconfig HISI_FEMAC
28542ae60aSDongpo Li	tristate "Hisilicon Fast Ethernet MAC device support"
29542ae60aSDongpo Li	depends on HAS_IOMEM
30542ae60aSDongpo Li	select PHYLIB
31542ae60aSDongpo Li	select RESET_CONTROLLER
32542ae60aSDongpo Li	help
33542ae60aSDongpo Li	  This selects the Hisilicon Fast Ethernet MAC device(FEMAC).
34542ae60aSDongpo Li	  The FEMAC receives and transmits data over Ethernet
35542ae60aSDongpo Li	  ports at 10/100 Mbps in full-duplex or half-duplex mode.
36542ae60aSDongpo Li	  The FEMAC exchanges data with the CPU, and supports
37542ae60aSDongpo Li	  the energy efficient Ethernet (EEE).
38542ae60aSDongpo Li
394a841ee9SZhangfei Gaoconfig HIP04_ETH
404a841ee9SZhangfei Gao	tristate "HISILICON P04 Ethernet support"
41979d804eSKrzysztof Kozlowski	depends on HAS_IOMEM	# For MFD_SYSCON
424a841ee9SZhangfei Gao	select MARVELL_PHY
434a841ee9SZhangfei Gao	select MFD_SYSCON
445b904d39Shuangdaode	select HNS_MDIO
454a841ee9SZhangfei Gao	---help---
464a841ee9SZhangfei Gao	  If you wish to compile a kernel for a hardware with hisilicon p04 SoC and
474a841ee9SZhangfei Gao	  want to use the internal ethernet then you should answer Y to this.
484a841ee9SZhangfei Gao
495b904d39Shuangdaodeconfig HNS_MDIO
500fa28877SArnd Bergmann	tristate
510fa28877SArnd Bergmann	select PHYLIB
525b904d39Shuangdaode	---help---
535b904d39Shuangdaode	  This selects the HNS MDIO support. It is needed by HNS_DSAF to access
545b904d39Shuangdaode	  the PHY
555b904d39Shuangdaode
566fe6611fShuangdaodeconfig HNS
576fe6611fShuangdaode	tristate "Hisilicon Network Subsystem Support (Framework)"
586fe6611fShuangdaode	---help---
596fe6611fShuangdaode	  This selects the framework support for Hisilicon Network Subsystem. It
606fe6611fShuangdaode	  is needed by any driver which provides HNS acceleration engine or make
616fe6611fShuangdaode	  use of the engine
626fe6611fShuangdaode
63511e6bc0Shuangdaodeconfig HNS_DSAF
64511e6bc0Shuangdaode	tristate "Hisilicon HNS DSAF device Support"
65511e6bc0Shuangdaode	select HNS
66511e6bc0Shuangdaode	select HNS_MDIO
67511e6bc0Shuangdaode	---help---
68511e6bc0Shuangdaode	  This selects the DSAF (Distributed System Area Frabric) network
69511e6bc0Shuangdaode	  acceleration engine support. The engine is used in Hisilicon hip05,
70511e6bc0Shuangdaode	  Hi1610 and further ICT SoC
71511e6bc0Shuangdaode
72b5996f11Shuangdaodeconfig HNS_ENET
73b5996f11Shuangdaode	tristate "Hisilicon HNS Ethernet Device Support"
74b5996f11Shuangdaode	select PHYLIB
75b5996f11Shuangdaode	select HNS
76b5996f11Shuangdaode	---help---
77b5996f11Shuangdaode	  This selects the general ethernet driver for HNS.  This module make
78b5996f11Shuangdaode	  use of any HNS AE driver, such as HNS_DSAF
79b5996f11Shuangdaode
8015e8e5ffSSalilconfig HNS3
8115e8e5ffSSalil	tristate "Hisilicon Network Subsystem Support HNS3 (Framework)"
8215e8e5ffSSalil	depends on PCI
8315e8e5ffSSalil	---help---
8415e8e5ffSSalil	  This selects the framework support for Hisilicon Network Subsystem 3.
8515e8e5ffSSalil	  This layer facilitates clients like ENET, RoCE and user-space ethernet
8615e8e5ffSSalil	  drivers(like ODP)to register with HNAE devices and their associated
8715e8e5ffSSalil	  operations.
8815e8e5ffSSalil
897a7056e3SHuazhong Tanif HNS3
907a7056e3SHuazhong Tan
9115e8e5ffSSalilconfig HNS3_HCLGE
9215e8e5ffSSalil	tristate "Hisilicon HNS3 HCLGE Acceleration Engine & Compatibility Layer Support"
937a7056e3SHuazhong Tan	default m
9415e8e5ffSSalil	depends on PCI_MSI
9515e8e5ffSSalil	---help---
9615e8e5ffSSalil	  This selects the HNS3_HCLGE network acceleration engine & its hardware
9715e8e5ffSSalil	  compatibility layer. The engine would be used in Hisilicon hip08 family of
9815e8e5ffSSalil	  SoCs and further upcoming SoCs.
9915e8e5ffSSalil
100cacde272SYunsheng Linconfig HNS3_DCB
101cacde272SYunsheng Lin	bool "Hisilicon HNS3 Data Center Bridge Support"
102cacde272SYunsheng Lin	default n
1037a7056e3SHuazhong Tan	depends on HNS3_HCLGE && DCB
104cacde272SYunsheng Lin	---help---
105cacde272SYunsheng Lin	  Say Y here if you want to use Data Center Bridging (DCB) in the HNS3 driver.
106cacde272SYunsheng Lin
107cacde272SYunsheng Lin	  If unsure, say N.
108cacde272SYunsheng Lin
109e963cb78SSalil Mehtaconfig HNS3_HCLGEVF
110e963cb78SSalil Mehta	tristate "Hisilicon HNS3VF Acceleration Engine & Compatibility Layer Support"
111e963cb78SSalil Mehta	depends on PCI_MSI
112e963cb78SSalil Mehta	depends on HNS3_HCLGE
113e963cb78SSalil Mehta    ---help---
114e963cb78SSalil Mehta	  This selects the HNS3 VF drivers network acceleration engine & its hardware
115e963cb78SSalil Mehta	  compatibility layer. The engine would be used in Hisilicon hip08 family of
116e963cb78SSalil Mehta	  SoCs and further upcoming SoCs.
117e963cb78SSalil Mehta
118e963cb78SSalil Mehtaconfig HNS3_ENET
119e963cb78SSalil Mehta	tristate "Hisilicon HNS3 Ethernet Device Support"
1207a7056e3SHuazhong Tan	default m
121e963cb78SSalil Mehta	depends on 64BIT && PCI
1222aa55dccSArnd Bergmann	depends on INET
123e963cb78SSalil Mehta	---help---
124e963cb78SSalil Mehta	  This selects the Ethernet Driver for Hisilicon Network Subsystem 3 for hip08
125e963cb78SSalil Mehta	  family of SoCs. This module depends upon HNAE3 driver to access the HNAE3
126e963cb78SSalil Mehta	  devices and their associated operations.
127e963cb78SSalil Mehta
1287a7056e3SHuazhong Tanendif #HNS3
1297a7056e3SHuazhong Tan
13057c5bc9aSZhangfei Gaoendif # NET_VENDOR_HISILICON
131