Thomas Gleixner | ec8f24b | 2019-05-19 13:07:45 +0100 | [diff] [blame] | 1 | # SPDX-License-Identifier: GPL-2.0-only |
Don Fry | 3c607d2 | 2011-09-30 11:40:20 -0700 | [diff] [blame] | 2 | config IWLWIFI |
| 3 | tristate "Intel Wireless WiFi Next Gen AGN - Wireless-N/Advanced-N/Ultimate-N (iwlwifi) " |
Luca Coelho | ec5aecc | 2019-01-14 13:00:23 +0200 | [diff] [blame] | 4 | depends on PCI && HAS_IOMEM && CFG80211 |
Reinette Chatre | 80bc539 | 2009-02-13 11:51:19 -0800 | [diff] [blame] | 5 | select FW_LOADER |
Masahiro Yamada | a7f7f62 | 2020-06-14 01:50:22 +0900 | [diff] [blame] | 6 | help |
Wey-Yi Guy | be663ab | 2011-02-21 11:27:26 -0800 | [diff] [blame] | 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 |
Luciano Coelho | 3b1995ad | 2013-08-12 21:58:36 +0300 | [diff] [blame] | 22 | Intel 7260 Wi-Fi Adapter |
| 23 | Intel 3160 Wi-Fi Adapter |
Emmanuel Grumbach | ae7486a | 2014-07-07 09:25:42 +0300 | [diff] [blame] | 24 | Intel 7265 Wi-Fi Adapter |
Emmanuel Grumbach | 8741145 | 2015-04-19 09:57:09 +0300 | [diff] [blame] | 25 | Intel 8260 Wi-Fi Adapter |
Emmanuel Grumbach | ed65918 | 2015-04-30 09:29:06 +0300 | [diff] [blame] | 26 | Intel 3165 Wi-Fi Adapter |
Wey-Yi Guy | be663ab | 2011-02-21 11:27:26 -0800 | [diff] [blame] | 27 | |
| 28 | |
| 29 | This driver uses the kernel's mac80211 subsystem. |
| 30 | |
Emmanuel Grumbach | ae7486a | 2014-07-07 09:25:42 +0300 | [diff] [blame] | 31 | In order to use this driver, you will need a firmware |
Wey-Yi Guy | be663ab | 2011-02-21 11:27:26 -0800 | [diff] [blame] | 32 | image for it. You can obtain the microcode from: |
| 33 | |
Flavio Suligoi | e00c6d8 | 2020-06-05 17:41:09 +0200 | [diff] [blame] | 34 | <https://wireless.wiki.kernel.org/en/users/Drivers/iwlwifi>. |
Wey-Yi Guy | be663ab | 2011-02-21 11:27:26 -0800 | [diff] [blame] | 35 | |
Emmanuel Grumbach | ae7486a | 2014-07-07 09:25:42 +0300 | [diff] [blame] | 36 | The firmware is typically installed in /lib/firmware. You can |
Wey-Yi Guy | be663ab | 2011-02-21 11:27:26 -0800 | [diff] [blame] | 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), |
Mauro Carvalho Chehab | cd238ef | 2019-06-12 14:52:48 -0300 | [diff] [blame] | 43 | say M here and read <file:Documentation/kbuild/modules.rst>. The |
Don Fry | 3c607d2 | 2011-09-30 11:40:20 -0700 | [diff] [blame] | 44 | module will be called iwlwifi. |
Mohamed Abbas | ab53d8a | 2008-03-25 16:33:36 -0700 | [diff] [blame] | 45 | |
Emmanuel Grumbach | ae7486a | 2014-07-07 09:25:42 +0300 | [diff] [blame] | 46 | if IWLWIFI |
| 47 | |
Johannes Berg | c43e933 | 2014-04-24 16:31:08 +0200 | [diff] [blame] | 48 | config IWLWIFI_LEDS |
| 49 | bool |
Arnd Bergmann | efdbfa0 | 2021-12-04 18:38:33 +0100 | [diff] [blame] | 50 | depends on LEDS_CLASS=y || LEDS_CLASS=MAC80211 |
Luca Coelho | ec5aecc | 2019-01-14 13:00:23 +0200 | [diff] [blame] | 51 | depends on IWLMVM || IWLDVM |
Johannes Berg | c43e933 | 2014-04-24 16:31:08 +0200 | [diff] [blame] | 52 | select LEDS_TRIGGERS |
| 53 | select MAC80211_LEDS |
| 54 | default y |
| 55 | |
Don Fry | cc5f7e3 | 2012-05-16 22:54:27 +0200 | [diff] [blame] | 56 | config IWLDVM |
Johannes Berg | 8ca151b | 2013-01-24 14:25:36 +0100 | [diff] [blame] | 57 | tristate "Intel Wireless WiFi DVM Firmware support" |
Luca Coelho | aca432f | 2018-08-27 13:02:19 +0300 | [diff] [blame] | 58 | depends on MAC80211 |
Johannes Berg | 8ca151b | 2013-01-24 14:25:36 +0100 | [diff] [blame] | 59 | help |
Emmanuel Grumbach | 8741145 | 2015-04-19 09:57:09 +0300 | [diff] [blame] | 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 |
Johannes Berg | 8ca151b | 2013-01-24 14:25:36 +0100 | [diff] [blame] | 63 | |
| 64 | config IWLMVM |
| 65 | tristate "Intel Wireless WiFi MVM Firmware support" |
Emmanuel Grumbach | 3e4b1b4 | 2014-10-31 13:08:50 +0200 | [diff] [blame] | 66 | select WANT_DEV_COREDUMP |
Luca Coelho | aca432f | 2018-08-27 13:02:19 +0300 | [diff] [blame] | 67 | depends on MAC80211 |
Johannes Berg | 8ca151b | 2013-01-24 14:25:36 +0100 | [diff] [blame] | 68 | help |
Emmanuel Grumbach | 8741145 | 2015-04-19 09:57:09 +0300 | [diff] [blame] | 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 |
Don Fry | cc5f7e3 | 2012-05-16 22:54:27 +0200 | [diff] [blame] | 72 | |
Johannes Berg | 48e2934 | 2013-03-01 00:13:33 +0100 | [diff] [blame] | 73 | # don't call it _MODULE -- will confuse Kconfig/fixdep/... |
| 74 | config IWLWIFI_OPMODE_MODULAR |
| 75 | bool |
| 76 | default y if IWLDVM=m |
| 77 | default y if IWLMVM=m |
| 78 | |
Johannes Berg | 1218206 | 2013-03-01 00:05:26 +0100 | [diff] [blame] | 79 | comment "WARNING: iwlwifi is useless without IWLDVM or IWLMVM" |
Emmanuel Grumbach | ae7486a | 2014-07-07 09:25:42 +0300 | [diff] [blame] | 80 | depends on IWLDVM=n && IWLMVM=n |
Johannes Berg | 1218206 | 2013-03-01 00:05:26 +0100 | [diff] [blame] | 81 | |
Johannes Berg | a34529e | 2014-01-20 22:57:21 +0100 | [diff] [blame] | 82 | config 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 | |
Jay Sternberg | 110ff6db | 2010-08-12 12:15:55 -0700 | [diff] [blame] | 95 | menu "Debugging Options" |
Jay Sternberg | 110ff6db | 2010-08-12 12:15:55 -0700 | [diff] [blame] | 96 | |
Tomas Winkler | 4fc22b2 | 2008-07-21 18:54:42 +0300 | [diff] [blame] | 97 | config IWLWIFI_DEBUG |
Don Fry | 3c607d2 | 2011-09-30 11:40:20 -0700 | [diff] [blame] | 98 | bool "Enable full debugging output in the iwlwifi driver" |
Masahiro Yamada | a7f7f62 | 2020-06-14 01:50:22 +0900 | [diff] [blame] | 99 | help |
Tomas Winkler | 4fc22b2 | 2008-07-21 18:54:42 +0300 | [diff] [blame] | 100 | This option will enable debug tracing output for the iwlwifi drivers |
| 101 | |
| 102 | This will result in the kernel module being ~100k larger. You can |
| 103 | control which debug output is sent to the kernel log by setting the |
| 104 | value in |
| 105 | |
Wey-Yi Guy | add6ff1 | 2011-10-10 07:27:07 -0700 | [diff] [blame] | 106 | /sys/module/iwlwifi/parameters/debug |
Tomas Winkler | 4fc22b2 | 2008-07-21 18:54:42 +0300 | [diff] [blame] | 107 | |
| 108 | This entry will only exist if this option is enabled. |
| 109 | |
| 110 | To set a value, simply echo an 8-byte hex value to the same file: |
| 111 | |
Wey-Yi Guy | add6ff1 | 2011-10-10 07:27:07 -0700 | [diff] [blame] | 112 | % echo 0x43fff > /sys/module/iwlwifi/parameters/debug |
Tomas Winkler | 4fc22b2 | 2008-07-21 18:54:42 +0300 | [diff] [blame] | 113 | |
| 114 | You can find the list of debug mask values in: |
| 115 | drivers/net/wireless/iwlwifi/iwl-debug.h |
| 116 | |
| 117 | If this is your first time using this driver, you should say Y here |
| 118 | as the debug information can assist others in helping you resolve |
| 119 | any problems you may encounter. |
| 120 | |
| 121 | config IWLWIFI_DEBUGFS |
Krzysztof Kozlowski | 02bc5eb | 2019-09-23 17:52:43 +0200 | [diff] [blame] | 122 | bool "iwlwifi debugfs support" |
| 123 | depends on MAC80211_DEBUGFS |
Masahiro Yamada | a7f7f62 | 2020-06-14 01:50:22 +0900 | [diff] [blame] | 124 | help |
Johannes Berg | d73e492 | 2010-05-06 12:18:41 -0700 | [diff] [blame] | 125 | Enable creation of debugfs files for the iwlwifi drivers. This |
| 126 | is a low-impact option that allows getting insight into the |
| 127 | driver's state at runtime. |
Tomas Winkler | 4fc22b2 | 2008-07-21 18:54:42 +0300 | [diff] [blame] | 128 | |
Johannes Berg | be1a71a | 2009-10-02 13:44:02 -0700 | [diff] [blame] | 129 | config IWLWIFI_DEVICE_TRACING |
| 130 | bool "iwlwifi device access tracing" |
Johannes Berg | be1a71a | 2009-10-02 13:44:02 -0700 | [diff] [blame] | 131 | depends on EVENT_TRACING |
Johannes Berg | acf9de3 | 2015-09-04 20:54:35 +0200 | [diff] [blame] | 132 | default y |
Johannes Berg | be1a71a | 2009-10-02 13:44:02 -0700 | [diff] [blame] | 133 | help |
| 134 | Say Y here to trace all commands, including TX frames and IO |
| 135 | accesses, sent to the device. If you say yes, iwlwifi will |
| 136 | register with the ftrace framework for event tracing and dump |
| 137 | all this information to the ringbuffer, you may need to |
| 138 | increase the ringbuffer size. See the ftrace documentation |
| 139 | for more information. |
| 140 | |
| 141 | When tracing is not enabled, this option still has some |
| 142 | (though rather small) overhead. |
| 143 | |
| 144 | If unsure, say Y so we can help you better when problems |
| 145 | occur. |
Jay Sternberg | 110ff6db | 2010-08-12 12:15:55 -0700 | [diff] [blame] | 146 | endmenu |
Emmanuel Grumbach | ae7486a | 2014-07-07 09:25:42 +0300 | [diff] [blame] | 147 | |
| 148 | endif |