Merge tag 'trace-printf-v6.13' of git://git.kernel.org/pub/scm/linux/kernel/git/trace...
[drm/drm-misc.git] / drivers / net / ethernet / hisilicon / Kconfig
blob65302c41bfb1474bead99dbcfd6015545b5f3b3f
1 # SPDX-License-Identifier: GPL-2.0-only
3 # HISILICON device configuration
6 config NET_VENDOR_HISILICON
7         bool "Hisilicon devices"
8         default y
9         depends on OF || ACPI
10         help
11           If you have a network (Ethernet) card belonging to this class, say Y.
13           Note that the answer to this question doesn't directly affect the
14           kernel: saying N will just cause the configurator to skip all
15           the questions about Hisilicon devices. If you say Y, you will be asked
16           for your specific card in the following questions.
18 if NET_VENDOR_HISILICON
20 if ARM || ARM64 || COMPILE_TEST
22 config HIX5HD2_GMAC
23         tristate "Hisilicon HIX5HD2 Family Network Device Support"
24         select PHYLIB
25         help
26           This selects the hix5hd2 mac family network device.
28 config HISI_FEMAC
29         tristate "Hisilicon Fast Ethernet MAC device support"
30         depends on HAS_IOMEM
31         select PHYLIB
32         select RESET_CONTROLLER
33         help
34           This selects the Hisilicon Fast Ethernet MAC device(FEMAC).
35           The FEMAC receives and transmits data over Ethernet
36           ports at 10/100 Mbps in full-duplex or half-duplex mode.
37           The FEMAC exchanges data with the CPU, and supports
38           the energy efficient Ethernet (EEE).
40 config HIP04_ETH
41         tristate "HISILICON P04 Ethernet support"
42         depends on HAS_IOMEM    # For MFD_SYSCON
43         select MARVELL_PHY
44         select MFD_SYSCON
45         select HNS_MDIO
46         help
47           If you wish to compile a kernel for a hardware with hisilicon p04 SoC and
48           want to use the internal ethernet then you should answer Y to this.
50 config HI13X1_GMAC
51         bool "Hisilicon HI13X1 Network Device Support"
52         depends on HIP04_ETH
53         help
54           If you wish to compile a kernel for a hardware with hisilicon hi13x1_gamc
55           then you should answer Y to this. This makes this driver suitable for use
56           on certain boards such as the HI13X1.
58           If you are unsure, say N.
60 config HNS_MDIO
61         tristate
62         select PHYLIB
63         help
64           This selects the HNS MDIO support. It is needed by HNS_DSAF to access
65           the PHY
67 config HNS
68         tristate
69         help
70           This selects the framework support for Hisilicon Network Subsystem. It
71           is needed by any driver which provides HNS acceleration engine or make
72           use of the engine
74 config HNS_DSAF
75         tristate "Hisilicon HNS DSAF device Support"
76         select HNS
77         select HNS_MDIO
78         help
79           This selects the DSAF (Distributed System Area Frabric) network
80           acceleration engine support. The engine is used in Hisilicon hip05,
81           Hi1610 and further ICT SoC
83 config HNS_ENET
84         tristate "Hisilicon HNS Ethernet Device Support"
85         select PHYLIB
86         select HNS
87         help
88           This selects the general ethernet driver for HNS.  This module make
89           use of any HNS AE driver, such as HNS_DSAF
91 config HNS3
92         tristate "Hisilicon Network Subsystem Support HNS3 (Framework)"
93         depends on PCI
94         select NET_DEVLINK
95         select PAGE_POOL
96         help
97           This selects the framework support for Hisilicon Network Subsystem 3.
98           This layer facilitates clients like ENET, RoCE and user-space ethernet
99           drivers(like ODP)to register with HNAE devices and their associated
100           operations.
102 if HNS3
104 config HNS3_HCLGE
105         tristate "Hisilicon HNS3 HCLGE Acceleration Engine & Compatibility Layer Support"
106         default m
107         depends on PCI_MSI
108         depends on PTP_1588_CLOCK_OPTIONAL
109         help
110           This selects the HNS3_HCLGE network acceleration engine & its hardware
111           compatibility layer. The engine would be used in Hisilicon hip08 family of
112           SoCs and further upcoming SoCs.
114 config HNS3_DCB
115         bool "Hisilicon HNS3 Data Center Bridge Support"
116         default n
117         depends on HNS3_HCLGE && DCB
118         help
119           Say Y here if you want to use Data Center Bridging (DCB) in the HNS3 driver.
121           If unsure, say N.
123 config HNS3_HCLGEVF
124         tristate "Hisilicon HNS3VF Acceleration Engine & Compatibility Layer Support"
125         depends on PCI_MSI
126         depends on HNS3_HCLGE
127         help
128           This selects the HNS3 VF drivers network acceleration engine & its hardware
129           compatibility layer. The engine would be used in Hisilicon hip08 family of
130           SoCs and further upcoming SoCs.
132 config HNS3_ENET
133         tristate "Hisilicon HNS3 Ethernet Device Support"
134         default m
135         depends on 64BIT && PCI
136         depends on INET
137         select DIMLIB
138         help
139           This selects the Ethernet Driver for Hisilicon Network Subsystem 3 for hip08
140           family of SoCs. This module depends upon HNAE3 driver to access the HNAE3
141           devices and their associated operations.
143 endif #HNS3
145 endif # ARM || ARM64 || COMPILE_TEST
147 config HIBMCGE
148         tristate "Hisilicon BMC Gigabit Ethernet Device Support"
149         depends on PCI && PCI_MSI
150         select PHYLIB
151         select MOTORCOMM_PHY
152         select REALTEK_PHY
153         help
154           If you wish to compile a kernel for a BMC with HIBMC-xx_gmac
155           then you should answer Y to this. This makes this driver suitable for use
156           on certain boards such as the HIBMC-210.
158           If you are unsure, say N.
160 endif # NET_VENDOR_HISILICON