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