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 84# don't call it _MODULE -- will confuse Kconfig/fixdep/... 85config IWLWIFI_OPMODE_MODULAR 86 bool 87 default y if IWLDVM=m 88 default y if IWLMVM=m 89 90comment "WARNING: iwlwifi is useless without IWLDVM or IWLMVM" 91 depends on IWLDVM=n && IWLMVM=n 92 93menu "Debugging Options" 94 95config IWLWIFI_DEBUG 96 bool "Enable full debugging output in the iwlwifi driver" 97 help 98 This option will enable debug tracing output for the iwlwifi drivers 99 100 This will result in the kernel module being ~100k larger. You can 101 control which debug output is sent to the kernel log by setting the 102 value in 103 104 /sys/module/iwlwifi/parameters/debug 105 106 This entry will only exist if this option is enabled. 107 108 To set a value, simply echo an 8-byte hex value to the same file: 109 110 % echo 0x43fff > /sys/module/iwlwifi/parameters/debug 111 112 You can find the list of debug mask values in: 113 drivers/net/wireless/iwlwifi/iwl-debug.h 114 115 If this is your first time using this driver, you should say Y here 116 as the debug information can assist others in helping you resolve 117 any problems you may encounter. 118 119config IWLWIFI_DEBUGFS 120 bool "iwlwifi debugfs support" 121 depends on MAC80211_DEBUGFS 122 help 123 Enable creation of debugfs files for the iwlwifi drivers. This 124 is a low-impact option that allows getting insight into the 125 driver's state at runtime. 126 127config IWLWIFI_DEVICE_TRACING 128 bool "iwlwifi device access tracing" 129 depends on EVENT_TRACING 130 default y 131 help 132 Say Y here to trace all commands, including TX frames and IO 133 accesses, sent to the device. If you say yes, iwlwifi will 134 register with the ftrace framework for event tracing and dump 135 all this information to the ringbuffer, you may need to 136 increase the ringbuffer size. See the ftrace documentation 137 for more information. 138 139 When tracing is not enabled, this option still has some 140 (though rather small) overhead. 141 142 If unsure, say Y so we can help you better when problems 143 occur. 144endmenu 145 146endif 147 148config IWLMEI 149 tristate "Intel Management Engine communication over WLAN" 150 depends on INTEL_MEI 151 depends on PM 152 depends on CFG80211 153 depends on BROKEN 154 help 155 Enables the iwlmei kernel module. 156 157 CSME stands for Converged Security and Management Engine. It is a CPU 158 on the chipset and runs a dedicated firmware. AMT (Active Management 159 Technology) is one of the applications that run on that CPU. AMT 160 allows to control the platform remotely. 161 162 This kernel module allows to communicate with the Intel Management 163 Engine over Wifi. This is supported starting from Tiger Lake 164 platforms and has been tested on 9260 devices only. 165 If AMT is configured not to use the wireless device, this module is 166 harmless (and useless). 167 Enabling this option on a platform that has a different device and 168 has Wireless enabled on AMT can prevent WiFi from working correctly. 169 170 For more information see 171 <https://software.intel.com/en-us/manageability/> 172 173 If unsure, say N. 174