18c2ecf20Sopenharmony_ci# SPDX-License-Identifier: GPL-2.0-only 28c2ecf20Sopenharmony_ci# 38c2ecf20Sopenharmony_ci# HISILICON device configuration 48c2ecf20Sopenharmony_ci# 58c2ecf20Sopenharmony_ci 68c2ecf20Sopenharmony_ciconfig NET_VENDOR_HISILICON 78c2ecf20Sopenharmony_ci bool "Hisilicon devices" 88c2ecf20Sopenharmony_ci default y 98c2ecf20Sopenharmony_ci depends on OF || ACPI 108c2ecf20Sopenharmony_ci depends on ARM || ARM64 || COMPILE_TEST 118c2ecf20Sopenharmony_ci help 128c2ecf20Sopenharmony_ci If you have a network (Ethernet) card belonging to this class, say Y. 138c2ecf20Sopenharmony_ci 148c2ecf20Sopenharmony_ci Note that the answer to this question doesn't directly affect the 158c2ecf20Sopenharmony_ci kernel: saying N will just cause the configurator to skip all 168c2ecf20Sopenharmony_ci the questions about Hisilicon devices. If you say Y, you will be asked 178c2ecf20Sopenharmony_ci for your specific card in the following questions. 188c2ecf20Sopenharmony_ci 198c2ecf20Sopenharmony_ciif NET_VENDOR_HISILICON 208c2ecf20Sopenharmony_ci 218c2ecf20Sopenharmony_ciconfig HIX5HD2_GMAC 228c2ecf20Sopenharmony_ci tristate "Hisilicon HIX5HD2 Family Network Device Support" 238c2ecf20Sopenharmony_ci select PHYLIB 248c2ecf20Sopenharmony_ci help 258c2ecf20Sopenharmony_ci This selects the hix5hd2 mac family network device. 268c2ecf20Sopenharmony_ci 278c2ecf20Sopenharmony_ciconfig HISI_FEMAC 288c2ecf20Sopenharmony_ci tristate "Hisilicon Fast Ethernet MAC device support" 298c2ecf20Sopenharmony_ci depends on HAS_IOMEM 308c2ecf20Sopenharmony_ci select PHYLIB 318c2ecf20Sopenharmony_ci select RESET_CONTROLLER 328c2ecf20Sopenharmony_ci help 338c2ecf20Sopenharmony_ci This selects the Hisilicon Fast Ethernet MAC device(FEMAC). 348c2ecf20Sopenharmony_ci The FEMAC receives and transmits data over Ethernet 358c2ecf20Sopenharmony_ci ports at 10/100 Mbps in full-duplex or half-duplex mode. 368c2ecf20Sopenharmony_ci The FEMAC exchanges data with the CPU, and supports 378c2ecf20Sopenharmony_ci the energy efficient Ethernet (EEE). 388c2ecf20Sopenharmony_ci 398c2ecf20Sopenharmony_ciconfig HIP04_ETH 408c2ecf20Sopenharmony_ci tristate "HISILICON P04 Ethernet support" 418c2ecf20Sopenharmony_ci depends on HAS_IOMEM # For MFD_SYSCON 428c2ecf20Sopenharmony_ci select MARVELL_PHY 438c2ecf20Sopenharmony_ci select MFD_SYSCON 448c2ecf20Sopenharmony_ci select HNS_MDIO 458c2ecf20Sopenharmony_ci help 468c2ecf20Sopenharmony_ci If you wish to compile a kernel for a hardware with hisilicon p04 SoC and 478c2ecf20Sopenharmony_ci want to use the internal ethernet then you should answer Y to this. 488c2ecf20Sopenharmony_ci 498c2ecf20Sopenharmony_ciconfig HI13X1_GMAC 508c2ecf20Sopenharmony_ci bool "Hisilicon HI13X1 Network Device Support" 518c2ecf20Sopenharmony_ci depends on HIP04_ETH 528c2ecf20Sopenharmony_ci help 538c2ecf20Sopenharmony_ci If you wish to compile a kernel for a hardware with hisilicon hi13x1_gamc 548c2ecf20Sopenharmony_ci then you should answer Y to this. This makes this driver suitable for use 558c2ecf20Sopenharmony_ci on certain boards such as the HI13X1. 568c2ecf20Sopenharmony_ci 578c2ecf20Sopenharmony_ci If you are unsure, say N. 588c2ecf20Sopenharmony_ci 598c2ecf20Sopenharmony_ciconfig HNS_MDIO 608c2ecf20Sopenharmony_ci tristate 618c2ecf20Sopenharmony_ci select PHYLIB 628c2ecf20Sopenharmony_ci help 638c2ecf20Sopenharmony_ci This selects the HNS MDIO support. It is needed by HNS_DSAF to access 648c2ecf20Sopenharmony_ci the PHY 658c2ecf20Sopenharmony_ci 668c2ecf20Sopenharmony_ciconfig HNS 678c2ecf20Sopenharmony_ci tristate 688c2ecf20Sopenharmony_ci help 698c2ecf20Sopenharmony_ci This selects the framework support for Hisilicon Network Subsystem. It 708c2ecf20Sopenharmony_ci is needed by any driver which provides HNS acceleration engine or make 718c2ecf20Sopenharmony_ci use of the engine 728c2ecf20Sopenharmony_ci 738c2ecf20Sopenharmony_ciconfig HNS_DSAF 748c2ecf20Sopenharmony_ci tristate "Hisilicon HNS DSAF device Support" 758c2ecf20Sopenharmony_ci select HNS 768c2ecf20Sopenharmony_ci select HNS_MDIO 778c2ecf20Sopenharmony_ci help 788c2ecf20Sopenharmony_ci This selects the DSAF (Distributed System Area Frabric) network 798c2ecf20Sopenharmony_ci acceleration engine support. The engine is used in Hisilicon hip05, 808c2ecf20Sopenharmony_ci Hi1610 and further ICT SoC 818c2ecf20Sopenharmony_ci 828c2ecf20Sopenharmony_ciconfig HNS_ENET 838c2ecf20Sopenharmony_ci tristate "Hisilicon HNS Ethernet Device Support" 848c2ecf20Sopenharmony_ci select PHYLIB 858c2ecf20Sopenharmony_ci select HNS 868c2ecf20Sopenharmony_ci help 878c2ecf20Sopenharmony_ci This selects the general ethernet driver for HNS. This module make 888c2ecf20Sopenharmony_ci use of any HNS AE driver, such as HNS_DSAF 898c2ecf20Sopenharmony_ci 908c2ecf20Sopenharmony_ciconfig HNS3 918c2ecf20Sopenharmony_ci tristate "Hisilicon Network Subsystem Support HNS3 (Framework)" 928c2ecf20Sopenharmony_ci depends on PCI 938c2ecf20Sopenharmony_ci help 948c2ecf20Sopenharmony_ci This selects the framework support for Hisilicon Network Subsystem 3. 958c2ecf20Sopenharmony_ci This layer facilitates clients like ENET, RoCE and user-space ethernet 968c2ecf20Sopenharmony_ci drivers(like ODP)to register with HNAE devices and their associated 978c2ecf20Sopenharmony_ci operations. 988c2ecf20Sopenharmony_ci 998c2ecf20Sopenharmony_ciif HNS3 1008c2ecf20Sopenharmony_ci 1018c2ecf20Sopenharmony_ciconfig HNS3_HCLGE 1028c2ecf20Sopenharmony_ci tristate "Hisilicon HNS3 HCLGE Acceleration Engine & Compatibility Layer Support" 1038c2ecf20Sopenharmony_ci default m 1048c2ecf20Sopenharmony_ci depends on PCI_MSI 1058c2ecf20Sopenharmony_ci help 1068c2ecf20Sopenharmony_ci This selects the HNS3_HCLGE network acceleration engine & its hardware 1078c2ecf20Sopenharmony_ci compatibility layer. The engine would be used in Hisilicon hip08 family of 1088c2ecf20Sopenharmony_ci SoCs and further upcoming SoCs. 1098c2ecf20Sopenharmony_ci 1108c2ecf20Sopenharmony_ciconfig HNS3_DCB 1118c2ecf20Sopenharmony_ci bool "Hisilicon HNS3 Data Center Bridge Support" 1128c2ecf20Sopenharmony_ci default n 1138c2ecf20Sopenharmony_ci depends on HNS3_HCLGE && DCB 1148c2ecf20Sopenharmony_ci help 1158c2ecf20Sopenharmony_ci Say Y here if you want to use Data Center Bridging (DCB) in the HNS3 driver. 1168c2ecf20Sopenharmony_ci 1178c2ecf20Sopenharmony_ci If unsure, say N. 1188c2ecf20Sopenharmony_ci 1198c2ecf20Sopenharmony_ciconfig HNS3_HCLGEVF 1208c2ecf20Sopenharmony_ci tristate "Hisilicon HNS3VF Acceleration Engine & Compatibility Layer Support" 1218c2ecf20Sopenharmony_ci depends on PCI_MSI 1228c2ecf20Sopenharmony_ci depends on HNS3_HCLGE 1238c2ecf20Sopenharmony_ci help 1248c2ecf20Sopenharmony_ci This selects the HNS3 VF drivers network acceleration engine & its hardware 1258c2ecf20Sopenharmony_ci compatibility layer. The engine would be used in Hisilicon hip08 family of 1268c2ecf20Sopenharmony_ci SoCs and further upcoming SoCs. 1278c2ecf20Sopenharmony_ci 1288c2ecf20Sopenharmony_ciconfig HNS3_ENET 1298c2ecf20Sopenharmony_ci tristate "Hisilicon HNS3 Ethernet Device Support" 1308c2ecf20Sopenharmony_ci default m 1318c2ecf20Sopenharmony_ci depends on 64BIT && PCI 1328c2ecf20Sopenharmony_ci depends on INET 1338c2ecf20Sopenharmony_ci help 1348c2ecf20Sopenharmony_ci This selects the Ethernet Driver for Hisilicon Network Subsystem 3 for hip08 1358c2ecf20Sopenharmony_ci family of SoCs. This module depends upon HNAE3 driver to access the HNAE3 1368c2ecf20Sopenharmony_ci devices and their associated operations. 1378c2ecf20Sopenharmony_ci 1388c2ecf20Sopenharmony_ciendif #HNS3 1398c2ecf20Sopenharmony_ci 1408c2ecf20Sopenharmony_ciendif # NET_VENDOR_HISILICON 141