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