Merge tag 'trace-printf-v6.13' of git://git.kernel.org/pub/scm/linux/kernel/git/trace...
[drm/drm-misc.git] / drivers / net / ethernet / intel / Kconfig
blob20bc40eec487a3449ff1ac7432b2b029cb2b1155
1 # SPDX-License-Identifier: GPL-2.0-only
3 # Intel network device configuration
6 config NET_VENDOR_INTEL
7         bool "Intel devices"
8         default y
9         help
10           If you have a network (Ethernet) card belonging to this class, say Y.
12           Note that the answer to this question doesn't directly affect the
13           kernel: saying N will just cause the configurator to skip all
14           the questions about Intel cards. If you say Y, you will be asked for
15           your specific card in the following questions.
17 if NET_VENDOR_INTEL
19 source "drivers/net/ethernet/intel/libeth/Kconfig"
20 source "drivers/net/ethernet/intel/libie/Kconfig"
22 config E100
23         tristate "Intel(R) PRO/100+ support"
24         depends on PCI
25         select MII
26         help
27           This driver supports Intel(R) PRO/100 family of adapters.
28           To verify that your adapter is supported, find the board ID number
29           on the adapter. Look for a label that has a barcode and a number
30           in the format 123456-001 (six digits hyphen three digits).
32           Use the above information and the Adapter & Driver ID Guide that
33           can be located at:
35           <http://support.intel.com>
37           to identify the adapter.
39           More specific information on configuring the driver is in
40           <file:Documentation/networking/device_drivers/ethernet/intel/e100.rst>.
42           To compile this driver as a module, choose M here. The module
43           will be called e100.
45 config E1000
46         tristate "Intel(R) PRO/1000 Gigabit Ethernet support"
47         depends on PCI && HAS_IOPORT
48         help
49           This driver supports Intel(R) PRO/1000 gigabit ethernet family of
50           adapters.  For more information on how to identify your adapter, go
51           to the Adapter & Driver ID Guide that can be located at:
53           <http://support.intel.com>
55           More specific information on configuring the driver is in
56           <file:Documentation/networking/device_drivers/ethernet/intel/e1000.rst>.
58           To compile this driver as a module, choose M here. The module
59           will be called e1000.
61 config E1000E
62         tristate "Intel(R) PRO/1000 PCI-Express Gigabit Ethernet support"
63         depends on PCI && (!SPARC32 || BROKEN)
64         depends on PTP_1588_CLOCK_OPTIONAL
65         select CRC32
66         help
67           This driver supports the PCI-Express Intel(R) PRO/1000 gigabit
68           ethernet family of adapters. For PCI or PCI-X e1000 adapters,
69           use the regular e1000 driver For more information on how to
70           identify your adapter, go to the Adapter & Driver ID Guide that
71           can be located at:
73           <http://support.intel.com>
75           More specific information on configuring the driver is in
76           <file:Documentation/networking/device_drivers/ethernet/intel/e1000e.rst>.
78           To compile this driver as a module, choose M here. The module
79           will be called e1000e.
81 config E1000E_HWTS
82         bool "Support HW cross-timestamp on PCH devices"
83         default y
84         depends on E1000E && X86
85         help
86          Say Y to enable hardware supported cross-timestamping on PCH
87          devices. The cross-timestamp is available through the PTP clock
88          driver precise cross-timestamp ioctl (PTP_SYS_OFFSET_PRECISE).
90 config IGB
91         tristate "Intel(R) 82575/82576 PCI-Express Gigabit Ethernet support"
92         depends on PCI
93         depends on PTP_1588_CLOCK_OPTIONAL
94         select I2C
95         select I2C_ALGOBIT
96         help
97           This driver supports Intel(R) 82575/82576 gigabit ethernet family of
98           adapters.  For more information on how to identify your adapter, go
99           to the Adapter & Driver ID Guide that can be located at:
101           <http://support.intel.com>
103           More specific information on configuring the driver is in
104           <file:Documentation/networking/device_drivers/ethernet/intel/igb.rst>.
106           To compile this driver as a module, choose M here. The module
107           will be called igb.
109 config IGB_HWMON
110         bool "Intel(R) PCI-Express Gigabit adapters HWMON support"
111         default y
112         depends on IGB && HWMON && !(IGB=y && HWMON=m)
113         help
114           Say Y if you want to expose thermal sensor data on Intel devices.
116           Some of our devices contain thermal sensors, both external and internal.
117           This data is available via the hwmon sysfs interface and exposes
118           the onboard sensors.
120 config IGB_DCA
121         bool "Direct Cache Access (DCA) Support"
122         default y
123         depends on IGB && DCA && !(IGB=y && DCA=m)
124         help
125           Say Y here if you want to use Direct Cache Access (DCA) in the
126           driver.  DCA is a method for warming the CPU cache before data
127           is used, with the intent of lessening the impact of cache misses.
129 config IGBVF
130         tristate "Intel(R) 82576 Virtual Function Ethernet support"
131         depends on PCI
132         help
133           This driver supports Intel(R) 82576 virtual functions.  For more
134           information on how to identify your adapter, go to the Adapter &
135           Driver ID Guide that can be located at:
137           <http://support.intel.com>
139           More specific information on configuring the driver is in
140           <file:Documentation/networking/device_drivers/ethernet/intel/igbvf.rst>.
142           To compile this driver as a module, choose M here. The module
143           will be called igbvf.
145 config IXGBE
146         tristate "Intel(R) 10GbE PCI Express adapters support"
147         depends on PCI
148         depends on PTP_1588_CLOCK_OPTIONAL
149         select MDIO
150         select PHYLIB
151         help
152           This driver supports Intel(R) 10GbE PCI Express family of
153           adapters.  For more information on how to identify your adapter, go
154           to the Adapter & Driver ID Guide that can be located at:
156           <http://support.intel.com>
158           More specific information on configuring the driver is in
159           <file:Documentation/networking/device_drivers/ethernet/intel/ixgbe.rst>.
161           To compile this driver as a module, choose M here. The module
162           will be called ixgbe.
164 config IXGBE_HWMON
165         bool "Intel(R) 10GbE PCI Express adapters HWMON support"
166         default y
167         depends on IXGBE && HWMON && !(IXGBE=y && HWMON=m)
168         help
169           Say Y if you want to expose the thermal sensor data on some of
170           our cards, via a hwmon sysfs interface.
172 config IXGBE_DCA
173         bool "Direct Cache Access (DCA) Support"
174         default y
175         depends on IXGBE && DCA && !(IXGBE=y && DCA=m)
176         help
177           Say Y here if you want to use Direct Cache Access (DCA) in the
178           driver.  DCA is a method for warming the CPU cache before data
179           is used, with the intent of lessening the impact of cache misses.
181 config IXGBE_DCB
182         bool "Data Center Bridging (DCB) Support"
183         default n
184         depends on IXGBE && DCB
185         help
186           Say Y here if you want to use Data Center Bridging (DCB) in the
187           driver.
189           If unsure, say N.
191 config IXGBE_IPSEC
192         bool "IPSec XFRM cryptography-offload acceleration"
193         depends on IXGBE
194         depends on XFRM_OFFLOAD
195         default y
196         select XFRM_ALGO
197         help
198           Enable support for IPSec offload in ixgbe.ko
200 config IXGBEVF
201         tristate "Intel(R) 10GbE PCI Express Virtual Function Ethernet support"
202         depends on PCI_MSI
203         help
204           This driver supports Intel(R) PCI Express virtual functions for the
205           Intel(R) ixgbe driver.  For more information on how to identify your
206           adapter, go to the Adapter & Driver ID Guide that can be located at:
208           <http://support.intel.com>
210           More specific information on configuring the driver is in
211           <file:Documentation/networking/device_drivers/ethernet/intel/ixgbevf.rst>.
213           To compile this driver as a module, choose M here. The module
214           will be called ixgbevf.  MSI-X interrupt support is required
215           for this driver to work correctly.
217 config IXGBEVF_IPSEC
218         bool "IPSec XFRM cryptography-offload acceleration"
219         depends on IXGBEVF
220         depends on XFRM_OFFLOAD
221         default y
222         select XFRM_ALGO
223         help
224           Enable support for IPSec offload in ixgbevf.ko
226 config I40E
227         tristate "Intel(R) Ethernet Controller XL710 Family support"
228         depends on PTP_1588_CLOCK_OPTIONAL
229         depends on PCI
230         select AUXILIARY_BUS
231         select LIBIE
232         select NET_DEVLINK
233         help
234           This driver supports Intel(R) Ethernet Controller XL710 Family of
235           devices.  For more information on how to identify your adapter, go
236           to the Adapter & Driver ID Guide that can be located at:
238           <http://support.intel.com>
240           More specific information on configuring the driver is in
241           <file:Documentation/networking/device_drivers/ethernet/intel/i40e.rst>.
243           To compile this driver as a module, choose M here. The module
244           will be called i40e.
246 config I40E_DCB
247         bool "Data Center Bridging (DCB) Support"
248         default n
249         depends on I40E && DCB
250         help
251           Say Y here if you want to use Data Center Bridging (DCB) in the
252           driver.
254           If unsure, say N.
256 # this is here to allow seamless migration from I40EVF --> IAVF name
257 # so that CONFIG_IAVF symbol will always mirror the state of CONFIG_I40EVF
258 config IAVF
259         tristate
260         select LIBIE
261         select NET_SHAPER
263 config I40EVF
264         tristate "Intel(R) Ethernet Adaptive Virtual Function support"
265         select IAVF
266         depends on PCI_MSI
267         help
268           This driver supports virtual functions for Intel XL710,
269           X710, X722, XXV710, and all devices advertising support for
270           Intel Ethernet Adaptive Virtual Function devices. For more
271           information on how to identify your adapter, go to the Adapter
272           & Driver ID Guide that can be located at:
274           <https://support.intel.com>
276           This driver was formerly named i40evf.
278           More specific information on configuring the driver is in
279           <file:Documentation/networking/device_drivers/ethernet/intel/iavf.rst>.
281           To compile this driver as a module, choose M here. The module
282           will be called iavf.  MSI-X interrupt support is required
283           for this driver to work correctly.
285 config ICE
286         tristate "Intel(R) Ethernet Connection E800 Series Support"
287         default n
288         depends on PCI_MSI
289         depends on PTP_1588_CLOCK_OPTIONAL
290         depends on GNSS || GNSS = n
291         select AUXILIARY_BUS
292         select DIMLIB
293         select LIBIE
294         select NET_DEVLINK
295         select PLDMFW
296         select DPLL
297         help
298           This driver supports Intel(R) Ethernet Connection E800 Series of
299           devices.  For more information on how to identify your adapter, go
300           to the Adapter & Driver ID Guide that can be located at:
302           <http://support.intel.com>
304           More specific information on configuring the driver is in
305           <file:Documentation/networking/device_drivers/ethernet/intel/ice.rst>.
307           To compile this driver as a module, choose M here. The module
308           will be called ice.
310 config ICE_HWMON
311         bool "Intel(R) Ethernet Connection E800 Series Support HWMON support"
312         default y
313         depends on ICE && HWMON && !(ICE=y && HWMON=m)
314         help
315           Say Y if you want to expose thermal sensor data on Intel devices.
317           Some of our devices contain internal thermal sensors.
318           This data is available via the hwmon sysfs interface and exposes
319           the onboard sensors.
321 config ICE_SWITCHDEV
322         bool "Switchdev Support"
323         default y
324         depends on ICE && NET_SWITCHDEV
325         help
326           Switchdev support provides internal SRIOV packet steering and switching.
328           To enable it on running kernel use devlink tool:
329           #devlink dev eswitch set pci/0000:XX:XX.X mode switchdev
331           Say Y here if you want to use Switchdev in the driver.
333           If unsure, say N.
335 config ICE_HWTS
336         bool "Support HW cross-timestamp on platforms with PTM support"
337         default y
338         depends on ICE && X86
339         help
340           Say Y to enable hardware supported cross-timestamping on platforms
341           with PCIe PTM support. The cross-timestamp is available through
342           the PTP clock driver precise cross-timestamp ioctl
343           (PTP_SYS_OFFSET_PRECISE).
345 config FM10K
346         tristate "Intel(R) FM10000 Ethernet Switch Host Interface Support"
347         default n
348         depends on PCI_MSI
349         depends on PTP_1588_CLOCK_OPTIONAL
350         help
351           This driver supports Intel(R) FM10000 Ethernet Switch Host
352           Interface.  For more information on how to identify your adapter,
353           go to the Adapter & Driver ID Guide that can be located at:
355           <http://support.intel.com>
357           More specific information on configuring the driver is in
358           <file:Documentation/networking/device_drivers/ethernet/intel/fm10k.rst>.
360           To compile this driver as a module, choose M here. The module
361           will be called fm10k.  MSI-X interrupt support is required
363 config IGC
364         tristate "Intel(R) Ethernet Controller I225-LM/I225-V support"
365         default n
366         depends on PCI
367         depends on PTP_1588_CLOCK_OPTIONAL
368         help
369           This driver supports Intel(R) Ethernet Controller I225-LM/I225-V
370           family of adapters.
372           For more information on how to identify your adapter, go
373           to the Adapter & Driver ID Guide that can be located at:
375           <http://support.intel.com>
377           To compile this driver as a module, choose M here. The module
378           will be called igc.
380 config IGC_LEDS
381         def_bool LEDS_TRIGGER_NETDEV
382         depends on IGC && LEDS_CLASS
383         depends on LEDS_CLASS=y || IGC=m
384         help
385           Optional support for controlling the NIC LED's with the netdev
386           LED trigger.
388 source "drivers/net/ethernet/intel/idpf/Kconfig"
390 endif # NET_VENDOR_INTEL