xref: /linux/drivers/net/wireless/intel/iwlwifi/Kconfig (revision e00c6d8d491b3b8b93eeac1aae51c78a5217cde6)
1ec8f24b7SThomas Gleixner# SPDX-License-Identifier: GPL-2.0-only
2e705c121SKalle Valoconfig IWLWIFI
3e705c121SKalle Valo	tristate "Intel Wireless WiFi Next Gen AGN - Wireless-N/Advanced-N/Ultimate-N (iwlwifi) "
4ec5aecc0SLuca Coelho	depends on PCI && HAS_IOMEM && CFG80211
5e705c121SKalle Valo	select FW_LOADER
6e705c121SKalle Valo	---help---
7e705c121SKalle Valo	  Select to build the driver supporting the:
8e705c121SKalle Valo
9e705c121SKalle Valo	  Intel Wireless WiFi Link Next-Gen AGN
10e705c121SKalle Valo
11e705c121SKalle Valo	  This option enables support for use with the following hardware:
12e705c121SKalle Valo		Intel Wireless WiFi Link 6250AGN Adapter
13e705c121SKalle Valo		Intel 6000 Series Wi-Fi Adapters (6200AGN and 6300AGN)
14e705c121SKalle Valo		Intel WiFi Link 1000BGN
15e705c121SKalle Valo		Intel Wireless WiFi 5150AGN
16e705c121SKalle Valo		Intel Wireless WiFi 5100AGN, 5300AGN, and 5350AGN
17e705c121SKalle Valo		Intel 6005 Series Wi-Fi Adapters
18e705c121SKalle Valo		Intel 6030 Series Wi-Fi Adapters
19e705c121SKalle Valo		Intel Wireless WiFi Link 6150BGN 2 Adapter
20e705c121SKalle Valo		Intel 100 Series Wi-Fi Adapters (100BGN and 130BGN)
21e705c121SKalle Valo		Intel 2000 Series Wi-Fi Adapters
22e705c121SKalle Valo		Intel 7260 Wi-Fi Adapter
23e705c121SKalle Valo		Intel 3160 Wi-Fi Adapter
24e705c121SKalle Valo		Intel 7265 Wi-Fi Adapter
25e705c121SKalle Valo		Intel 8260 Wi-Fi Adapter
26e705c121SKalle Valo		Intel 3165 Wi-Fi Adapter
27e705c121SKalle Valo
28e705c121SKalle Valo
29e705c121SKalle Valo	  This driver uses the kernel's mac80211 subsystem.
30e705c121SKalle Valo
31e705c121SKalle Valo	  In order to use this driver, you will need a firmware
32e705c121SKalle Valo	  image for it. You can obtain the microcode from:
33e705c121SKalle Valo
34*e00c6d8dSFlavio Suligoi	          <https://wireless.wiki.kernel.org/en/users/Drivers/iwlwifi>.
35e705c121SKalle Valo
36e705c121SKalle Valo	  The firmware is typically installed in /lib/firmware. You can
37e705c121SKalle Valo	  look in the hotplug script /etc/hotplug/firmware.agent to
38e705c121SKalle Valo	  determine which directory FIRMWARE_DIR is set to when the script
39e705c121SKalle Valo	  runs.
40e705c121SKalle Valo
41e705c121SKalle Valo	  If you want to compile the driver as a module ( = code which can be
42e705c121SKalle Valo	  inserted in and removed from the running kernel whenever you want),
43cd238effSMauro Carvalho Chehab	  say M here and read <file:Documentation/kbuild/modules.rst>.  The
44e705c121SKalle Valo	  module will be called iwlwifi.
45e705c121SKalle Valo
46e705c121SKalle Valoif IWLWIFI
47e705c121SKalle Valo
48e705c121SKalle Valoconfig IWLWIFI_LEDS
49e705c121SKalle Valo	bool
50e705c121SKalle Valo	depends on LEDS_CLASS=y || LEDS_CLASS=IWLWIFI
51ec5aecc0SLuca Coelho	depends on IWLMVM || IWLDVM
52e705c121SKalle Valo	select LEDS_TRIGGERS
53e705c121SKalle Valo	select MAC80211_LEDS
54e705c121SKalle Valo	default y
55e705c121SKalle Valo
56e705c121SKalle Valoconfig IWLDVM
57e705c121SKalle Valo	tristate "Intel Wireless WiFi DVM Firmware support"
58aca432f0SLuca Coelho	depends on MAC80211
59e705c121SKalle Valo	help
60e705c121SKalle Valo	  This is the driver that supports the DVM firmware. The list
61e705c121SKalle Valo	  of the devices that use this firmware is available here:
62e705c121SKalle Valo	  https://wireless.wiki.kernel.org/en/users/drivers/iwlwifi#firmware
63e705c121SKalle Valo
64e705c121SKalle Valoconfig IWLMVM
65e705c121SKalle Valo	tristate "Intel Wireless WiFi MVM Firmware support"
66e705c121SKalle Valo	select WANT_DEV_COREDUMP
67aca432f0SLuca Coelho	depends on MAC80211
68e705c121SKalle Valo	help
69e705c121SKalle Valo	  This is the driver that supports the MVM firmware. The list
70e705c121SKalle Valo	  of the devices that use this firmware is available here:
71e705c121SKalle Valo	  https://wireless.wiki.kernel.org/en/users/drivers/iwlwifi#firmware
72e705c121SKalle Valo
73e705c121SKalle Valo# don't call it _MODULE -- will confuse Kconfig/fixdep/...
74e705c121SKalle Valoconfig IWLWIFI_OPMODE_MODULAR
75e705c121SKalle Valo	bool
76e705c121SKalle Valo	default y if IWLDVM=m
77e705c121SKalle Valo	default y if IWLMVM=m
78e705c121SKalle Valo
79e705c121SKalle Valocomment "WARNING: iwlwifi is useless without IWLDVM or IWLMVM"
80e705c121SKalle Valo	depends on IWLDVM=n && IWLMVM=n
81e705c121SKalle Valo
82e705c121SKalle Valoconfig IWLWIFI_BCAST_FILTERING
83e705c121SKalle Valo	bool "Enable broadcast filtering"
84e705c121SKalle Valo	depends on IWLMVM
85e705c121SKalle Valo	help
86e705c121SKalle Valo	  Say Y here to enable default bcast filtering configuration.
87e705c121SKalle Valo
88e705c121SKalle Valo	  Enabling broadcast filtering will drop any incoming wireless
89e705c121SKalle Valo	  broadcast frames, except some very specific predefined
90e705c121SKalle Valo	  patterns (e.g. incoming arp requests).
91e705c121SKalle Valo
92e705c121SKalle Valo	  If unsure, don't enable this option, as some programs might
93e705c121SKalle Valo	  expect incoming broadcasts for their normal operations.
94e705c121SKalle Valo
95e705c121SKalle Valomenu "Debugging Options"
96e705c121SKalle Valo
97e705c121SKalle Valoconfig IWLWIFI_DEBUG
98e705c121SKalle Valo	bool "Enable full debugging output in the iwlwifi driver"
99e705c121SKalle Valo	---help---
100e705c121SKalle Valo	  This option will enable debug tracing output for the iwlwifi drivers
101e705c121SKalle Valo
102e705c121SKalle Valo	  This will result in the kernel module being ~100k larger.  You can
103e705c121SKalle Valo	  control which debug output is sent to the kernel log by setting the
104e705c121SKalle Valo	  value in
105e705c121SKalle Valo
106e705c121SKalle Valo		/sys/module/iwlwifi/parameters/debug
107e705c121SKalle Valo
108e705c121SKalle Valo	  This entry will only exist if this option is enabled.
109e705c121SKalle Valo
110e705c121SKalle Valo	  To set a value, simply echo an 8-byte hex value to the same file:
111e705c121SKalle Valo
112e705c121SKalle Valo		  % echo 0x43fff > /sys/module/iwlwifi/parameters/debug
113e705c121SKalle Valo
114e705c121SKalle Valo	  You can find the list of debug mask values in:
115e705c121SKalle Valo		  drivers/net/wireless/iwlwifi/iwl-debug.h
116e705c121SKalle Valo
117e705c121SKalle Valo	  If this is your first time using this driver, you should say Y here
118e705c121SKalle Valo	  as the debug information can assist others in helping you resolve
119e705c121SKalle Valo	  any problems you may encounter.
120e705c121SKalle Valo
121e705c121SKalle Valoconfig IWLWIFI_DEBUGFS
122e705c121SKalle Valo	bool "iwlwifi debugfs support"
123e705c121SKalle Valo	depends on MAC80211_DEBUGFS
124e705c121SKalle Valo	---help---
125e705c121SKalle Valo	  Enable creation of debugfs files for the iwlwifi drivers. This
126e705c121SKalle Valo	  is a low-impact option that allows getting insight into the
127e705c121SKalle Valo	  driver's state at runtime.
128e705c121SKalle Valo
129e705c121SKalle Valoconfig IWLWIFI_DEVICE_TRACING
130e705c121SKalle Valo	bool "iwlwifi device access tracing"
131e705c121SKalle Valo	depends on EVENT_TRACING
132e705c121SKalle Valo	default y
133e705c121SKalle Valo	help
134e705c121SKalle Valo	  Say Y here to trace all commands, including TX frames and IO
135e705c121SKalle Valo	  accesses, sent to the device. If you say yes, iwlwifi will
136e705c121SKalle Valo	  register with the ftrace framework for event tracing and dump
137e705c121SKalle Valo	  all this information to the ringbuffer, you may need to
138e705c121SKalle Valo	  increase the ringbuffer size. See the ftrace documentation
139e705c121SKalle Valo	  for more information.
140e705c121SKalle Valo
141e705c121SKalle Valo	  When tracing is not enabled, this option still has some
142e705c121SKalle Valo	  (though rather small) overhead.
143e705c121SKalle Valo
144e705c121SKalle Valo	  If unsure, say Y so we can help you better when problems
145e705c121SKalle Valo	  occur.
146e705c121SKalle Valoendmenu
147e705c121SKalle Valo
148e705c121SKalle Valoendif
149