1 # SPDX-License-Identifier: GPL-2.0-only << 2 config MAC80211 1 config MAC80211 3 tristate "Generic IEEE 802.11 Networki 2 tristate "Generic IEEE 802.11 Networking Stack (mac80211)" 4 depends on CFG80211 3 depends on CFG80211 5 select CRYPTO 4 select CRYPTO 6 select CRYPTO_LIB_ARC4 !! 5 select CRYPTO_ARC4 7 select CRYPTO_AES 6 select CRYPTO_AES 8 select CRYPTO_CCM << 9 select CRYPTO_GCM << 10 select CRYPTO_CMAC << 11 select CRC32 7 select CRC32 12 help !! 8 select AVERAGE >> 9 ---help--- 13 This option enables the hardware ind 10 This option enables the hardware independent IEEE 802.11 14 networking stack. 11 networking stack. 15 12 16 comment "CFG80211 needs to be enabled for MAC8 13 comment "CFG80211 needs to be enabled for MAC80211" 17 depends on CFG80211=n 14 depends on CFG80211=n 18 15 19 if MAC80211 != n 16 if MAC80211 != n 20 17 21 config MAC80211_HAS_RC 18 config MAC80211_HAS_RC 22 bool 19 bool 23 20 >> 21 config MAC80211_RC_PID >> 22 bool "PID controller based rate control algorithm" if EXPERT >> 23 select MAC80211_HAS_RC >> 24 ---help--- >> 25 This option enables a TX rate control algorithm for >> 26 mac80211 that uses a PID controller to select the TX >> 27 rate. >> 28 24 config MAC80211_RC_MINSTREL 29 config MAC80211_RC_MINSTREL 25 bool "Minstrel" if EXPERT 30 bool "Minstrel" if EXPERT 26 select MAC80211_HAS_RC 31 select MAC80211_HAS_RC 27 default y 32 default y 28 help !! 33 ---help--- 29 This option enables the 'minstrel' T 34 This option enables the 'minstrel' TX rate control algorithm 30 35 >> 36 config MAC80211_RC_MINSTREL_HT >> 37 bool "Minstrel 802.11n support" if EXPERT >> 38 depends on MAC80211_RC_MINSTREL >> 39 default y >> 40 ---help--- >> 41 This option enables the 'minstrel_ht' TX rate control algorithm >> 42 31 choice 43 choice 32 prompt "Default rate control algorithm 44 prompt "Default rate control algorithm" 33 depends on MAC80211_HAS_RC 45 depends on MAC80211_HAS_RC 34 default MAC80211_RC_DEFAULT_MINSTREL 46 default MAC80211_RC_DEFAULT_MINSTREL 35 help !! 47 ---help--- 36 This option selects the default rate 48 This option selects the default rate control algorithm 37 mac80211 will use. Note that this de 49 mac80211 will use. Note that this default can still be 38 overridden through the ieee80211_def 50 overridden through the ieee80211_default_rc_algo module 39 parameter if different algorithms ar 51 parameter if different algorithms are available. 40 52 >> 53 config MAC80211_RC_DEFAULT_PID >> 54 bool "PID controller based rate control algorithm" >> 55 depends on MAC80211_RC_PID >> 56 ---help--- >> 57 Select the PID controller based rate control as the >> 58 default rate control algorithm. You should choose >> 59 this unless you know what you are doing. >> 60 41 config MAC80211_RC_DEFAULT_MINSTREL 61 config MAC80211_RC_DEFAULT_MINSTREL 42 bool "Minstrel" 62 bool "Minstrel" 43 depends on MAC80211_RC_MINSTREL 63 depends on MAC80211_RC_MINSTREL 44 help !! 64 ---help--- 45 Select Minstrel as the default rate 65 Select Minstrel as the default rate control algorithm. 46 66 47 67 48 endchoice 68 endchoice 49 69 50 config MAC80211_RC_DEFAULT 70 config MAC80211_RC_DEFAULT 51 string 71 string 52 default "minstrel_ht" if MAC80211_RC_D !! 72 default "minstrel_ht" if MAC80211_RC_DEFAULT_MINSTREL && MAC80211_RC_MINSTREL_HT >> 73 default "minstrel" if MAC80211_RC_DEFAULT_MINSTREL >> 74 default "pid" if MAC80211_RC_DEFAULT_PID 53 default "" 75 default "" 54 76 55 endif 77 endif 56 78 57 comment "Some wireless drivers require a rate 79 comment "Some wireless drivers require a rate control algorithm" 58 depends on MAC80211 && MAC80211_HAS_RC 80 depends on MAC80211 && MAC80211_HAS_RC=n 59 81 60 config MAC80211_KUNIT_TEST << 61 tristate "KUnit tests for mac80211" if << 62 depends on KUNIT << 63 depends on MAC80211 << 64 default KUNIT_ALL_TESTS << 65 help << 66 Enable this option to test mac80211 << 67 << 68 If unsure, say N. << 69 << 70 config MAC80211_MESH 82 config MAC80211_MESH 71 bool "Enable mac80211 mesh networking !! 83 bool "Enable mac80211 mesh networking (pre-802.11s) support" 72 depends on MAC80211 84 depends on MAC80211 73 help !! 85 ---help--- 74 Select this option to enable 802.11 !! 86 This options enables support of Draft 802.11s mesh networking. 75 drivers that support it. 802.11 mes !! 87 The implementation is based on Draft 2.08 of the Mesh Networking 76 over (possibly multi-hop) wireless l !! 88 amendment. However, no compliance with that draft is claimed or even 77 LAN. !! 89 possible, as drafts leave a number of identifiers to be defined after >> 90 ratification. For more information visit http://o11s.org/. 78 91 79 config MAC80211_LEDS 92 config MAC80211_LEDS 80 bool "Enable LED triggers" 93 bool "Enable LED triggers" 81 depends on MAC80211 94 depends on MAC80211 82 depends on LEDS_CLASS=y || LEDS_CLASS= !! 95 depends on LEDS_CLASS 83 select LEDS_TRIGGERS 96 select LEDS_TRIGGERS 84 help !! 97 ---help--- 85 This option enables a few LED trigge 98 This option enables a few LED triggers for different 86 packet receive/transmit events. 99 packet receive/transmit events. 87 100 88 config MAC80211_DEBUGFS 101 config MAC80211_DEBUGFS 89 bool "Export mac80211 internals in Deb 102 bool "Export mac80211 internals in DebugFS" 90 depends on MAC80211 && CFG80211_DEBUGF !! 103 depends on MAC80211 && DEBUG_FS 91 help !! 104 ---help--- 92 Select this to see extensive informa 105 Select this to see extensive information about 93 the internal state of mac80211 in de 106 the internal state of mac80211 in debugfs. 94 107 95 Say N unless you know you need this. 108 Say N unless you know you need this. 96 109 97 config MAC80211_MESSAGE_TRACING 110 config MAC80211_MESSAGE_TRACING 98 bool "Trace all mac80211 debug message 111 bool "Trace all mac80211 debug messages" 99 depends on MAC80211 && TRACING !! 112 depends on MAC80211 100 help !! 113 ---help--- 101 Select this option to have mac80211 114 Select this option to have mac80211 register the 102 mac80211_msg trace subsystem with tr 115 mac80211_msg trace subsystem with tracepoints to 103 collect all debugging messages, inde 116 collect all debugging messages, independent of 104 printing them into the kernel log. 117 printing them into the kernel log. 105 118 106 The overhead in this option is that 119 The overhead in this option is that all the messages 107 need to be present in the binary and 120 need to be present in the binary and formatted at 108 runtime for tracing. 121 runtime for tracing. 109 122 110 menuconfig MAC80211_DEBUG_MENU 123 menuconfig MAC80211_DEBUG_MENU 111 bool "Select mac80211 debugging featur 124 bool "Select mac80211 debugging features" 112 depends on MAC80211 125 depends on MAC80211 113 help !! 126 ---help--- 114 This option collects various mac8021 127 This option collects various mac80211 debug settings. 115 128 116 config MAC80211_NOINLINE 129 config MAC80211_NOINLINE 117 bool "Do not inline TX/RX handlers" 130 bool "Do not inline TX/RX handlers" 118 depends on MAC80211_DEBUG_MENU 131 depends on MAC80211_DEBUG_MENU 119 help !! 132 ---help--- 120 This option affects code generation 133 This option affects code generation in mac80211, when 121 selected some functions are marked " 134 selected some functions are marked "noinline" to allow 122 easier debugging of problems in the 135 easier debugging of problems in the transmit and receive 123 paths. 136 paths. 124 137 125 This option increases code size a bi 138 This option increases code size a bit and inserts a lot 126 of function calls in the code, but i 139 of function calls in the code, but is otherwise safe to 127 enable. 140 enable. 128 141 129 If unsure, say N unless you expect t 142 If unsure, say N unless you expect to be finding problems 130 in mac80211. 143 in mac80211. 131 144 132 config MAC80211_VERBOSE_DEBUG 145 config MAC80211_VERBOSE_DEBUG 133 bool "Verbose debugging output" 146 bool "Verbose debugging output" 134 depends on MAC80211_DEBUG_MENU 147 depends on MAC80211_DEBUG_MENU 135 help !! 148 ---help--- 136 Selecting this option causes mac8021 149 Selecting this option causes mac80211 to print out 137 many debugging messages. It should n 150 many debugging messages. It should not be selected 138 on production systems as some of the 151 on production systems as some of the messages are 139 remotely triggerable. 152 remotely triggerable. 140 153 141 Do not select this option. 154 Do not select this option. 142 155 143 config MAC80211_MLME_DEBUG 156 config MAC80211_MLME_DEBUG 144 bool "Verbose managed MLME output" 157 bool "Verbose managed MLME output" 145 depends on MAC80211_DEBUG_MENU 158 depends on MAC80211_DEBUG_MENU 146 help !! 159 ---help--- 147 Selecting this option causes mac8021 160 Selecting this option causes mac80211 to print out 148 debugging messages for the managed-m 161 debugging messages for the managed-mode MLME. It 149 should not be selected on production 162 should not be selected on production systems as some 150 of the messages are remotely trigger 163 of the messages are remotely triggerable. 151 164 152 Do not select this option. 165 Do not select this option. 153 166 154 config MAC80211_STA_DEBUG 167 config MAC80211_STA_DEBUG 155 bool "Verbose station debugging" 168 bool "Verbose station debugging" 156 depends on MAC80211_DEBUG_MENU 169 depends on MAC80211_DEBUG_MENU 157 help !! 170 ---help--- 158 Selecting this option causes mac8021 171 Selecting this option causes mac80211 to print out 159 debugging messages for station addit 172 debugging messages for station addition/removal. 160 173 161 Do not select this option. 174 Do not select this option. 162 175 163 config MAC80211_HT_DEBUG 176 config MAC80211_HT_DEBUG 164 bool "Verbose HT debugging" 177 bool "Verbose HT debugging" 165 depends on MAC80211_DEBUG_MENU 178 depends on MAC80211_DEBUG_MENU 166 help !! 179 ---help--- 167 This option enables 802.11n High Thr 180 This option enables 802.11n High Throughput features 168 debug tracing output. 181 debug tracing output. 169 182 170 It should not be selected on product 183 It should not be selected on production systems as some 171 of the messages are remotely trigger 184 of the messages are remotely triggerable. 172 185 173 Do not select this option. 186 Do not select this option. 174 187 175 config MAC80211_OCB_DEBUG << 176 bool "Verbose OCB debugging" << 177 depends on MAC80211_DEBUG_MENU << 178 help << 179 Selecting this option causes mac8021 << 180 very verbose OCB debugging messages. << 181 be selected on production systems as << 182 are remotely triggerable. << 183 << 184 Do not select this option. << 185 << 186 config MAC80211_IBSS_DEBUG 188 config MAC80211_IBSS_DEBUG 187 bool "Verbose IBSS debugging" 189 bool "Verbose IBSS debugging" 188 depends on MAC80211_DEBUG_MENU 190 depends on MAC80211_DEBUG_MENU 189 help !! 191 ---help--- 190 Selecting this option causes mac8021 192 Selecting this option causes mac80211 to print out 191 very verbose IBSS debugging messages 193 very verbose IBSS debugging messages. It should not 192 be selected on production systems as 194 be selected on production systems as those messages 193 are remotely triggerable. 195 are remotely triggerable. 194 196 195 Do not select this option. 197 Do not select this option. 196 198 197 config MAC80211_PS_DEBUG 199 config MAC80211_PS_DEBUG 198 bool "Verbose powersave mode debugging 200 bool "Verbose powersave mode debugging" 199 depends on MAC80211_DEBUG_MENU 201 depends on MAC80211_DEBUG_MENU 200 help !! 202 ---help--- 201 Selecting this option causes mac8021 203 Selecting this option causes mac80211 to print out very 202 verbose power save mode debugging me 204 verbose power save mode debugging messages (when mac80211 203 is an AP and has power saving statio 205 is an AP and has power saving stations.) 204 It should not be selected on product 206 It should not be selected on production systems as those 205 messages are remotely triggerable. 207 messages are remotely triggerable. 206 208 207 Do not select this option. 209 Do not select this option. 208 210 209 config MAC80211_MPL_DEBUG 211 config MAC80211_MPL_DEBUG 210 bool "Verbose mesh peer link debugging 212 bool "Verbose mesh peer link debugging" 211 depends on MAC80211_DEBUG_MENU 213 depends on MAC80211_DEBUG_MENU 212 depends on MAC80211_MESH 214 depends on MAC80211_MESH 213 help !! 215 ---help--- 214 Selecting this option causes mac8021 216 Selecting this option causes mac80211 to print out very 215 verbose mesh peer link debugging mes 217 verbose mesh peer link debugging messages (when mac80211 216 is taking part in a mesh network). 218 is taking part in a mesh network). 217 It should not be selected on product 219 It should not be selected on production systems as those 218 messages are remotely triggerable. 220 messages are remotely triggerable. 219 221 220 Do not select this option. 222 Do not select this option. 221 223 222 config MAC80211_MPATH_DEBUG 224 config MAC80211_MPATH_DEBUG 223 bool "Verbose mesh path debugging" 225 bool "Verbose mesh path debugging" 224 depends on MAC80211_DEBUG_MENU 226 depends on MAC80211_DEBUG_MENU 225 depends on MAC80211_MESH 227 depends on MAC80211_MESH 226 help !! 228 ---help--- 227 Selecting this option causes mac8021 229 Selecting this option causes mac80211 to print out very 228 verbose mesh path selection debuggin 230 verbose mesh path selection debugging messages (when mac80211 229 is taking part in a mesh network). 231 is taking part in a mesh network). 230 It should not be selected on product 232 It should not be selected on production systems as those 231 messages are remotely triggerable. 233 messages are remotely triggerable. 232 234 233 Do not select this option. 235 Do not select this option. 234 236 235 config MAC80211_MHWMP_DEBUG 237 config MAC80211_MHWMP_DEBUG 236 bool "Verbose mesh HWMP routing debugg 238 bool "Verbose mesh HWMP routing debugging" 237 depends on MAC80211_DEBUG_MENU 239 depends on MAC80211_DEBUG_MENU 238 depends on MAC80211_MESH 240 depends on MAC80211_MESH 239 help !! 241 ---help--- 240 Selecting this option causes mac8021 242 Selecting this option causes mac80211 to print out very 241 verbose mesh routing (HWMP) debuggin 243 verbose mesh routing (HWMP) debugging messages (when mac80211 242 is taking part in a mesh network). 244 is taking part in a mesh network). 243 It should not be selected on product 245 It should not be selected on production systems as those 244 messages are remotely triggerable. 246 messages are remotely triggerable. 245 247 246 Do not select this option. 248 Do not select this option. 247 249 248 config MAC80211_MESH_SYNC_DEBUG 250 config MAC80211_MESH_SYNC_DEBUG 249 bool "Verbose mesh synchronization deb 251 bool "Verbose mesh synchronization debugging" 250 depends on MAC80211_DEBUG_MENU 252 depends on MAC80211_DEBUG_MENU 251 depends on MAC80211_MESH 253 depends on MAC80211_MESH 252 help !! 254 ---help--- 253 Selecting this option causes mac8021 255 Selecting this option causes mac80211 to print out very verbose mesh 254 synchronization debugging messages ( 256 synchronization debugging messages (when mac80211 is taking part in a 255 mesh network). 257 mesh network). 256 258 257 Do not select this option. 259 Do not select this option. 258 260 259 config MAC80211_MESH_CSA_DEBUG << 260 bool "Verbose mesh channel switch debu << 261 depends on MAC80211_DEBUG_MENU << 262 depends on MAC80211_MESH << 263 help << 264 Selecting this option causes mac8021 << 265 channel switch debugging messages (w << 266 mesh network). << 267 << 268 Do not select this option. << 269 << 270 config MAC80211_MESH_PS_DEBUG 261 config MAC80211_MESH_PS_DEBUG 271 bool "Verbose mesh powersave debugging 262 bool "Verbose mesh powersave debugging" 272 depends on MAC80211_DEBUG_MENU 263 depends on MAC80211_DEBUG_MENU 273 depends on MAC80211_MESH 264 depends on MAC80211_MESH 274 help !! 265 ---help--- 275 Selecting this option causes mac8021 266 Selecting this option causes mac80211 to print out very verbose mesh 276 powersave debugging messages (when m 267 powersave debugging messages (when mac80211 is taking part in a 277 mesh network). 268 mesh network). 278 269 279 Do not select this option. 270 Do not select this option. 280 271 281 config MAC80211_TDLS_DEBUG 272 config MAC80211_TDLS_DEBUG 282 bool "Verbose TDLS debugging" 273 bool "Verbose TDLS debugging" 283 depends on MAC80211_DEBUG_MENU 274 depends on MAC80211_DEBUG_MENU 284 help !! 275 ---help--- 285 Selecting this option causes mac8021 276 Selecting this option causes mac80211 to print out very 286 verbose TDLS selection debugging mes 277 verbose TDLS selection debugging messages (when mac80211 287 is a TDLS STA). 278 is a TDLS STA). 288 It should not be selected on product 279 It should not be selected on production systems as those 289 messages are remotely triggerable. 280 messages are remotely triggerable. 290 281 291 Do not select this option. 282 Do not select this option. 292 283 293 config MAC80211_DEBUG_COUNTERS 284 config MAC80211_DEBUG_COUNTERS 294 bool "Extra statistics for TX/RX debug 285 bool "Extra statistics for TX/RX debugging" 295 depends on MAC80211_DEBUG_MENU 286 depends on MAC80211_DEBUG_MENU 296 depends on MAC80211_DEBUGFS 287 depends on MAC80211_DEBUGFS 297 help !! 288 ---help--- 298 Selecting this option causes mac8021 289 Selecting this option causes mac80211 to keep additional 299 and very verbose statistics about TX 290 and very verbose statistics about TX and RX handler use 300 as well as a few selected dot11 coun !! 291 and show them in debugfs. 301 exposed in debugfs. << 302 << 303 Note that some of the counters are n << 304 and may thus not always be accurate. << 305 292 306 If unsure, say N. 293 If unsure, say N. 307 << 308 config MAC80211_STA_HASH_MAX_SIZE << 309 int "Station hash table maximum size" << 310 default 0 << 311 help << 312 Setting this option to a low value ( << 313 hash table with collisions relativel << 314 connect more stations than the numbe << 315 << 316 If unsure, leave the default of 0. <<
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.