1 # SPDX-License-Identifier: GPL-2.0-only 1 # SPDX-License-Identifier: GPL-2.0-only 2 config WIRELESS_EXT 2 config WIRELESS_EXT 3 bool 3 bool 4 4 5 config WEXT_CORE 5 config WEXT_CORE 6 def_bool y 6 def_bool y 7 depends on CFG80211_WEXT || WIRELESS_E 7 depends on CFG80211_WEXT || WIRELESS_EXT 8 8 9 config WEXT_PROC 9 config WEXT_PROC 10 def_bool y 10 def_bool y 11 depends on PROC_FS 11 depends on PROC_FS 12 depends on WEXT_CORE 12 depends on WEXT_CORE 13 13 14 config WEXT_SPY 14 config WEXT_SPY 15 bool 15 bool 16 16 17 config WEXT_PRIV 17 config WEXT_PRIV 18 bool 18 bool 19 19 20 config CFG80211 20 config CFG80211 21 tristate "cfg80211 - wireless configur 21 tristate "cfg80211 - wireless configuration API" 22 depends on RFKILL || !RFKILL 22 depends on RFKILL || !RFKILL 23 select FW_LOADER 23 select FW_LOADER 24 select CRC32 24 select CRC32 25 # may need to update this when certifi 25 # may need to update this when certificates are changed and are 26 # using a different algorithm, though 26 # using a different algorithm, though right now they shouldn't 27 # (this is here rather than below to a 27 # (this is here rather than below to allow it to be a module) 28 select CRYPTO_SHA256 if CFG80211_USE_K 28 select CRYPTO_SHA256 if CFG80211_USE_KERNEL_REGDB_KEYS 29 help 29 help 30 cfg80211 is the Linux wireless LAN ( 30 cfg80211 is the Linux wireless LAN (802.11) configuration API. 31 Enable this if you have a wireless d 31 Enable this if you have a wireless device. 32 32 33 For more information refer to docume 33 For more information refer to documentation on the wireless wiki: 34 34 35 https://wireless.wiki.kernel.org/en/ 35 https://wireless.wiki.kernel.org/en/developers/Documentation/cfg80211 36 36 37 When built as a module it will be ca 37 When built as a module it will be called cfg80211. 38 38 39 if CFG80211 39 if CFG80211 40 40 41 config NL80211_TESTMODE 41 config NL80211_TESTMODE 42 bool "nl80211 testmode command" 42 bool "nl80211 testmode command" 43 help 43 help 44 The nl80211 testmode command helps i 44 The nl80211 testmode command helps implementing things like 45 factory calibration or validation to 45 factory calibration or validation tools for wireless chips. 46 46 47 Select this option ONLY for kernels 47 Select this option ONLY for kernels that are specifically 48 built for such purposes. 48 built for such purposes. 49 49 50 Debugging tools that are supposed to 50 Debugging tools that are supposed to end up in the hands of 51 users should better be implemented w 51 users should better be implemented with debugfs. 52 52 53 Say N. 53 Say N. 54 54 55 config CFG80211_DEVELOPER_WARNINGS 55 config CFG80211_DEVELOPER_WARNINGS 56 bool "enable developer warnings" 56 bool "enable developer warnings" 57 default n 57 default n 58 help 58 help 59 This option enables some additional 59 This option enables some additional warnings that help 60 cfg80211 developers and driver devel 60 cfg80211 developers and driver developers, but beware that 61 they can also trigger due to races w 61 they can also trigger due to races with userspace. 62 62 63 For example, when a driver reports t 63 For example, when a driver reports that it was disconnected 64 from the AP, but the user disconnect 64 from the AP, but the user disconnects manually at the same 65 time, the warning might trigger spur 65 time, the warning might trigger spuriously due to races. 66 66 67 Say Y only if you are developing cfg 67 Say Y only if you are developing cfg80211 or a driver based 68 on it (or mac80211). 68 on it (or mac80211). 69 69 70 70 71 config CFG80211_CERTIFICATION_ONUS 71 config CFG80211_CERTIFICATION_ONUS 72 bool "cfg80211 certification onus" 72 bool "cfg80211 certification onus" 73 depends on EXPERT 73 depends on EXPERT 74 default n 74 default n 75 help 75 help 76 You should disable this option unles 76 You should disable this option unless you are both capable 77 and willing to ensure your system wi 77 and willing to ensure your system will remain regulatory 78 compliant with the features availabl 78 compliant with the features available under this option. 79 Some options may still be under heav 79 Some options may still be under heavy development and 80 for whatever reason regulatory compl 80 for whatever reason regulatory compliance has not or 81 cannot yet be verified. Regulatory v 81 cannot yet be verified. Regulatory verification may at 82 times only be possible until you hav 82 times only be possible until you have the final system 83 in place. 83 in place. 84 84 85 This option should only be enabled b 85 This option should only be enabled by system integrators 86 or distributions that have done work 86 or distributions that have done work necessary to ensure 87 regulatory certification on the syst 87 regulatory certification on the system with the enabled 88 features. Alternatively you can enab 88 features. Alternatively you can enable this option if 89 you are a wireless researcher and ar 89 you are a wireless researcher and are working in a controlled 90 and approved environment by your loc 90 and approved environment by your local regulatory agency. 91 91 92 config CFG80211_REQUIRE_SIGNED_REGDB 92 config CFG80211_REQUIRE_SIGNED_REGDB 93 bool "require regdb signature" if CFG8 93 bool "require regdb signature" if CFG80211_CERTIFICATION_ONUS 94 default y 94 default y 95 select SYSTEM_DATA_VERIFICATION 95 select SYSTEM_DATA_VERIFICATION 96 help 96 help 97 Require that in addition to the "reg 97 Require that in addition to the "regulatory.db" file a 98 "regulatory.db.p7s" can be loaded wi 98 "regulatory.db.p7s" can be loaded with a valid PKCS#7 99 signature for the regulatory.db file 99 signature for the regulatory.db file made by one of the 100 keys in the certs/ directory. 100 keys in the certs/ directory. 101 101 102 config CFG80211_USE_KERNEL_REGDB_KEYS 102 config CFG80211_USE_KERNEL_REGDB_KEYS 103 bool "allow regdb keys shipped with th 103 bool "allow regdb keys shipped with the kernel" if CFG80211_CERTIFICATION_ONUS 104 default y 104 default y 105 depends on CFG80211_REQUIRE_SIGNED_REG 105 depends on CFG80211_REQUIRE_SIGNED_REGDB 106 help 106 help 107 Allow the regulatory database to be 107 Allow the regulatory database to be signed by one of the keys for 108 which certificates are part of the k 108 which certificates are part of the kernel sources 109 (in net/wireless/certs/). 109 (in net/wireless/certs/). 110 110 111 This is currently only Seth Forshee' 111 This is currently only Seth Forshee's key, who is the regulatory 112 database maintainer. 112 database maintainer. 113 113 114 config CFG80211_EXTRA_REGDB_KEYDIR 114 config CFG80211_EXTRA_REGDB_KEYDIR 115 string "additional regdb key directory 115 string "additional regdb key directory" if CFG80211_CERTIFICATION_ONUS 116 depends on CFG80211_REQUIRE_SIGNED_REG 116 depends on CFG80211_REQUIRE_SIGNED_REGDB 117 help 117 help 118 If selected, point to a directory wi 118 If selected, point to a directory with DER-encoded X.509 119 certificates like in the kernel sour 119 certificates like in the kernel sources (net/wireless/certs/) 120 that shall be accepted for a signed 120 that shall be accepted for a signed regulatory database. 121 121 122 Note that you need to also select th 122 Note that you need to also select the correct CRYPTO_<hash> modules 123 for your certificates, and if cfg802 123 for your certificates, and if cfg80211 is built-in they also must be. 124 124 125 config CFG80211_REG_CELLULAR_HINTS 125 config CFG80211_REG_CELLULAR_HINTS 126 bool "cfg80211 regulatory support for 126 bool "cfg80211 regulatory support for cellular base station hints" 127 depends on CFG80211_CERTIFICATION_ONUS 127 depends on CFG80211_CERTIFICATION_ONUS 128 help 128 help 129 This option enables support for pars 129 This option enables support for parsing regulatory hints 130 from cellular base stations. If enab 130 from cellular base stations. If enabled and at least one driver 131 claims support for parsing cellular 131 claims support for parsing cellular base station hints the 132 regulatory core will allow and parse 132 regulatory core will allow and parse these regulatory hints. 133 The regulatory core will only apply 133 The regulatory core will only apply these regulatory hints on 134 drivers that support this feature. Y 134 drivers that support this feature. You should only enable this 135 feature if you have tested and valid 135 feature if you have tested and validated this feature on your 136 systems. 136 systems. 137 137 138 config CFG80211_REG_RELAX_NO_IR 138 config CFG80211_REG_RELAX_NO_IR 139 bool "cfg80211 support for NO_IR relax 139 bool "cfg80211 support for NO_IR relaxation" 140 depends on CFG80211_CERTIFICATION_ONUS 140 depends on CFG80211_CERTIFICATION_ONUS 141 help 141 help 142 This option enables support for relax 142 This option enables support for relaxation of the NO_IR flag for 143 situations that certain regulatory bo 143 situations that certain regulatory bodies have provided clarifications 144 on how relaxation can occur. This fea 144 on how relaxation can occur. This feature has an inherent dependency on 145 userspace features which must have be 145 userspace features which must have been properly tested and as such is 146 not enabled by default. 146 not enabled by default. 147 147 148 A relaxation feature example is allow 148 A relaxation feature example is allowing the operation of a P2P group 149 owner (GO) on channels marked with NO 149 owner (GO) on channels marked with NO_IR if there is an additional BSS 150 interface which associated to an AP w 150 interface which associated to an AP which userspace assumes or confirms 151 to be an authorized master, i.e., wit 151 to be an authorized master, i.e., with radar detection support and DFS 152 capabilities. However, note that in o 152 capabilities. However, note that in order to not create daisy chain 153 scenarios, this relaxation is not all 153 scenarios, this relaxation is not allowed in cases where the BSS client 154 is associated to P2P GO and in additi 154 is associated to P2P GO and in addition the P2P GO instantiated on 155 a channel due to this relaxation shou 155 a channel due to this relaxation should not allow connection from 156 non P2P clients. 156 non P2P clients. 157 157 158 The regulatory core will apply these 158 The regulatory core will apply these relaxations only for drivers that 159 support this feature by declaring the 159 support this feature by declaring the appropriate channel flags and 160 capabilities in their registration fl 160 capabilities in their registration flow. 161 161 162 config CFG80211_DEFAULT_PS 162 config CFG80211_DEFAULT_PS 163 bool "enable powersave by default" 163 bool "enable powersave by default" 164 default y 164 default y 165 help 165 help 166 This option enables powersave mode b 166 This option enables powersave mode by default. 167 167 168 If this causes your applications to 168 If this causes your applications to misbehave you should fix your 169 applications instead -- they need to 169 applications instead -- they need to register their network 170 latency requirement, see Documentati 170 latency requirement, see Documentation/power/pm_qos_interface.rst. 171 171 172 config CFG80211_DEBUGFS 172 config CFG80211_DEBUGFS 173 bool "cfg80211 DebugFS entries" 173 bool "cfg80211 DebugFS entries" 174 depends on DEBUG_FS 174 depends on DEBUG_FS 175 help 175 help 176 You can enable this if you want debu 176 You can enable this if you want debugfs entries for cfg80211. 177 177 178 If unsure, say N. 178 If unsure, say N. 179 179 180 config CFG80211_CRDA_SUPPORT 180 config CFG80211_CRDA_SUPPORT 181 bool "support CRDA" if EXPERT 181 bool "support CRDA" if EXPERT 182 default y 182 default y 183 help 183 help 184 You should enable this option unless 184 You should enable this option unless you know for sure you have no 185 need for it, for example when using 185 need for it, for example when using the regulatory database loaded as 186 a firmware file. 186 a firmware file. 187 187 188 If unsure, say Y. 188 If unsure, say Y. 189 189 190 config CFG80211_WEXT 190 config CFG80211_WEXT 191 bool "cfg80211 wireless extensions com 191 bool "cfg80211 wireless extensions compatibility" if !CFG80211_WEXT_EXPORT 192 select WEXT_CORE 192 select WEXT_CORE 193 default y if CFG80211_WEXT_EXPORT 193 default y if CFG80211_WEXT_EXPORT 194 help 194 help 195 Enable this option if you need old u 195 Enable this option if you need old userspace for wireless 196 extensions with cfg80211-based drive 196 extensions with cfg80211-based drivers. 197 197 198 config CFG80211_WEXT_EXPORT 198 config CFG80211_WEXT_EXPORT 199 bool 199 bool 200 help 200 help 201 Drivers should select this option if 201 Drivers should select this option if they require cfg80211's 202 wext compatibility symbols to be exp 202 wext compatibility symbols to be exported. 203 203 204 config CFG80211_KUNIT_TEST 204 config CFG80211_KUNIT_TEST 205 tristate "KUnit tests for cfg80211" if 205 tristate "KUnit tests for cfg80211" if !KUNIT_ALL_TESTS 206 depends on KUNIT 206 depends on KUNIT 207 depends on CFG80211 207 depends on CFG80211 208 default KUNIT_ALL_TESTS 208 default KUNIT_ALL_TESTS >> 209 depends on !KERNEL_6_2 209 help 210 help 210 Enable this option to test cfg80211 211 Enable this option to test cfg80211 functions with kunit. 211 212 212 If unsure, say N. 213 If unsure, say N. 213 214 214 endif # CFG80211 215 endif # CFG80211 215 216 216 config LIB80211 217 config LIB80211 217 tristate 218 tristate 218 default n 219 default n 219 help 220 help 220 This options enables a library of co 221 This options enables a library of common routines used 221 by IEEE802.11 wireless LAN drivers. 222 by IEEE802.11 wireless LAN drivers. 222 223 223 Drivers should select this themselve 224 Drivers should select this themselves if needed. 224 225 225 config LIB80211_CRYPT_WEP 226 config LIB80211_CRYPT_WEP 226 tristate 227 tristate 227 select CRYPTO_LIB_ARC4 228 select CRYPTO_LIB_ARC4 228 229 229 config LIB80211_CRYPT_CCMP 230 config LIB80211_CRYPT_CCMP 230 tristate 231 tristate 231 select CRYPTO 232 select CRYPTO 232 select CRYPTO_AES 233 select CRYPTO_AES 233 select CRYPTO_CCM 234 select CRYPTO_CCM 234 235 235 config LIB80211_CRYPT_TKIP 236 config LIB80211_CRYPT_TKIP 236 tristate 237 tristate 237 select CRYPTO_LIB_ARC4 238 select CRYPTO_LIB_ARC4 238 239 239 config LIB80211_DEBUG 240 config LIB80211_DEBUG 240 bool "lib80211 debugging messages" 241 bool "lib80211 debugging messages" 241 depends on LIB80211 242 depends on LIB80211 242 default n 243 default n 243 help 244 help 244 You can enable this if you want verb 245 You can enable this if you want verbose debugging messages 245 from lib80211. 246 from lib80211. 246 247 247 If unsure, say N. 248 If unsure, say N.
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.