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