| .. | .. |
|---|
| 1 | +# SPDX-License-Identifier: GPL-2.0-only |
|---|
| 1 | 2 | config MAC80211 |
|---|
| 2 | 3 | tristate "Generic IEEE 802.11 Networking Stack (mac80211)" |
|---|
| 3 | 4 | depends on CFG80211 |
|---|
| 4 | 5 | select CRYPTO |
|---|
| 5 | | - select CRYPTO_ARC4 |
|---|
| 6 | + select CRYPTO_LIB_ARC4 |
|---|
| 6 | 7 | select CRYPTO_AES |
|---|
| 7 | 8 | select CRYPTO_CCM |
|---|
| 8 | 9 | select CRYPTO_GCM |
|---|
| 9 | 10 | select CRYPTO_CMAC |
|---|
| 10 | 11 | select CRC32 |
|---|
| 11 | | - ---help--- |
|---|
| 12 | + help |
|---|
| 12 | 13 | This option enables the hardware independent IEEE 802.11 |
|---|
| 13 | 14 | networking stack. |
|---|
| 14 | 15 | |
|---|
| .. | .. |
|---|
| 24 | 25 | bool "Minstrel" if EXPERT |
|---|
| 25 | 26 | select MAC80211_HAS_RC |
|---|
| 26 | 27 | default y |
|---|
| 27 | | - ---help--- |
|---|
| 28 | + help |
|---|
| 28 | 29 | This option enables the 'minstrel' TX rate control algorithm |
|---|
| 29 | | - |
|---|
| 30 | | -config MAC80211_RC_MINSTREL_HT |
|---|
| 31 | | - bool "Minstrel 802.11n support" if EXPERT |
|---|
| 32 | | - depends on MAC80211_RC_MINSTREL |
|---|
| 33 | | - default y |
|---|
| 34 | | - ---help--- |
|---|
| 35 | | - This option enables the 'minstrel_ht' TX rate control algorithm |
|---|
| 36 | | - |
|---|
| 37 | | -config MAC80211_RC_MINSTREL_VHT |
|---|
| 38 | | - bool "Minstrel 802.11ac support" if EXPERT |
|---|
| 39 | | - depends on MAC80211_RC_MINSTREL_HT |
|---|
| 40 | | - default n |
|---|
| 41 | | - ---help--- |
|---|
| 42 | | - This option enables VHT in the 'minstrel_ht' TX rate control algorithm |
|---|
| 43 | 30 | |
|---|
| 44 | 31 | choice |
|---|
| 45 | 32 | prompt "Default rate control algorithm" |
|---|
| 46 | 33 | depends on MAC80211_HAS_RC |
|---|
| 47 | 34 | default MAC80211_RC_DEFAULT_MINSTREL |
|---|
| 48 | | - ---help--- |
|---|
| 35 | + help |
|---|
| 49 | 36 | This option selects the default rate control algorithm |
|---|
| 50 | 37 | mac80211 will use. Note that this default can still be |
|---|
| 51 | 38 | overridden through the ieee80211_default_rc_algo module |
|---|
| .. | .. |
|---|
| 54 | 41 | config MAC80211_RC_DEFAULT_MINSTREL |
|---|
| 55 | 42 | bool "Minstrel" |
|---|
| 56 | 43 | depends on MAC80211_RC_MINSTREL |
|---|
| 57 | | - ---help--- |
|---|
| 44 | + help |
|---|
| 58 | 45 | Select Minstrel as the default rate control algorithm. |
|---|
| 59 | 46 | |
|---|
| 60 | 47 | |
|---|
| .. | .. |
|---|
| 62 | 49 | |
|---|
| 63 | 50 | config MAC80211_RC_DEFAULT |
|---|
| 64 | 51 | string |
|---|
| 65 | | - default "minstrel_ht" if MAC80211_RC_DEFAULT_MINSTREL && MAC80211_RC_MINSTREL_HT |
|---|
| 66 | | - default "minstrel" if MAC80211_RC_DEFAULT_MINSTREL |
|---|
| 52 | + default "minstrel_ht" if MAC80211_RC_DEFAULT_MINSTREL |
|---|
| 67 | 53 | default "" |
|---|
| 68 | 54 | |
|---|
| 69 | 55 | endif |
|---|
| .. | .. |
|---|
| 72 | 58 | depends on MAC80211 && MAC80211_HAS_RC=n |
|---|
| 73 | 59 | |
|---|
| 74 | 60 | config MAC80211_MESH |
|---|
| 75 | | - bool "Enable mac80211 mesh networking (pre-802.11s) support" |
|---|
| 61 | + bool "Enable mac80211 mesh networking support" |
|---|
| 76 | 62 | depends on MAC80211 |
|---|
| 77 | | - ---help--- |
|---|
| 78 | | - This options enables support of Draft 802.11s mesh networking. |
|---|
| 79 | | - The implementation is based on Draft 2.08 of the Mesh Networking |
|---|
| 80 | | - amendment. However, no compliance with that draft is claimed or even |
|---|
| 81 | | - possible, as drafts leave a number of identifiers to be defined after |
|---|
| 82 | | - ratification. For more information visit http://o11s.org/. |
|---|
| 63 | + help |
|---|
| 64 | + Select this option to enable 802.11 mesh operation in mac80211 |
|---|
| 65 | + drivers that support it. 802.11 mesh connects multiple stations |
|---|
| 66 | + over (possibly multi-hop) wireless links to form a single logical |
|---|
| 67 | + LAN. |
|---|
| 83 | 68 | |
|---|
| 84 | 69 | config MAC80211_LEDS |
|---|
| 85 | 70 | bool "Enable LED triggers" |
|---|
| 86 | 71 | depends on MAC80211 |
|---|
| 87 | | - depends on LEDS_CLASS |
|---|
| 72 | + depends on LEDS_CLASS=y || LEDS_CLASS=MAC80211 |
|---|
| 88 | 73 | select LEDS_TRIGGERS |
|---|
| 89 | | - ---help--- |
|---|
| 74 | + help |
|---|
| 90 | 75 | This option enables a few LED triggers for different |
|---|
| 91 | 76 | packet receive/transmit events. |
|---|
| 92 | 77 | |
|---|
| 93 | 78 | config MAC80211_DEBUGFS |
|---|
| 94 | 79 | bool "Export mac80211 internals in DebugFS" |
|---|
| 95 | 80 | depends on MAC80211 && DEBUG_FS |
|---|
| 96 | | - ---help--- |
|---|
| 81 | + help |
|---|
| 97 | 82 | Select this to see extensive information about |
|---|
| 98 | 83 | the internal state of mac80211 in debugfs. |
|---|
| 99 | 84 | |
|---|
| .. | .. |
|---|
| 102 | 87 | config MAC80211_MESSAGE_TRACING |
|---|
| 103 | 88 | bool "Trace all mac80211 debug messages" |
|---|
| 104 | 89 | depends on MAC80211 |
|---|
| 105 | | - ---help--- |
|---|
| 90 | + help |
|---|
| 106 | 91 | Select this option to have mac80211 register the |
|---|
| 107 | 92 | mac80211_msg trace subsystem with tracepoints to |
|---|
| 108 | 93 | collect all debugging messages, independent of |
|---|
| .. | .. |
|---|
| 115 | 100 | menuconfig MAC80211_DEBUG_MENU |
|---|
| 116 | 101 | bool "Select mac80211 debugging features" |
|---|
| 117 | 102 | depends on MAC80211 |
|---|
| 118 | | - ---help--- |
|---|
| 103 | + help |
|---|
| 119 | 104 | This option collects various mac80211 debug settings. |
|---|
| 120 | 105 | |
|---|
| 121 | 106 | config MAC80211_NOINLINE |
|---|
| 122 | 107 | bool "Do not inline TX/RX handlers" |
|---|
| 123 | 108 | depends on MAC80211_DEBUG_MENU |
|---|
| 124 | | - ---help--- |
|---|
| 109 | + help |
|---|
| 125 | 110 | This option affects code generation in mac80211, when |
|---|
| 126 | 111 | selected some functions are marked "noinline" to allow |
|---|
| 127 | 112 | easier debugging of problems in the transmit and receive |
|---|
| .. | .. |
|---|
| 137 | 122 | config MAC80211_VERBOSE_DEBUG |
|---|
| 138 | 123 | bool "Verbose debugging output" |
|---|
| 139 | 124 | depends on MAC80211_DEBUG_MENU |
|---|
| 140 | | - ---help--- |
|---|
| 125 | + help |
|---|
| 141 | 126 | Selecting this option causes mac80211 to print out |
|---|
| 142 | 127 | many debugging messages. It should not be selected |
|---|
| 143 | 128 | on production systems as some of the messages are |
|---|
| .. | .. |
|---|
| 148 | 133 | config MAC80211_MLME_DEBUG |
|---|
| 149 | 134 | bool "Verbose managed MLME output" |
|---|
| 150 | 135 | depends on MAC80211_DEBUG_MENU |
|---|
| 151 | | - ---help--- |
|---|
| 136 | + help |
|---|
| 152 | 137 | Selecting this option causes mac80211 to print out |
|---|
| 153 | 138 | debugging messages for the managed-mode MLME. It |
|---|
| 154 | 139 | should not be selected on production systems as some |
|---|
| .. | .. |
|---|
| 159 | 144 | config MAC80211_STA_DEBUG |
|---|
| 160 | 145 | bool "Verbose station debugging" |
|---|
| 161 | 146 | depends on MAC80211_DEBUG_MENU |
|---|
| 162 | | - ---help--- |
|---|
| 147 | + help |
|---|
| 163 | 148 | Selecting this option causes mac80211 to print out |
|---|
| 164 | 149 | debugging messages for station addition/removal. |
|---|
| 165 | 150 | |
|---|
| .. | .. |
|---|
| 168 | 153 | config MAC80211_HT_DEBUG |
|---|
| 169 | 154 | bool "Verbose HT debugging" |
|---|
| 170 | 155 | depends on MAC80211_DEBUG_MENU |
|---|
| 171 | | - ---help--- |
|---|
| 156 | + help |
|---|
| 172 | 157 | This option enables 802.11n High Throughput features |
|---|
| 173 | 158 | debug tracing output. |
|---|
| 174 | 159 | |
|---|
| .. | .. |
|---|
| 180 | 165 | config MAC80211_OCB_DEBUG |
|---|
| 181 | 166 | bool "Verbose OCB debugging" |
|---|
| 182 | 167 | depends on MAC80211_DEBUG_MENU |
|---|
| 183 | | - ---help--- |
|---|
| 168 | + help |
|---|
| 184 | 169 | Selecting this option causes mac80211 to print out |
|---|
| 185 | 170 | very verbose OCB debugging messages. It should not |
|---|
| 186 | 171 | be selected on production systems as those messages |
|---|
| .. | .. |
|---|
| 191 | 176 | config MAC80211_IBSS_DEBUG |
|---|
| 192 | 177 | bool "Verbose IBSS debugging" |
|---|
| 193 | 178 | depends on MAC80211_DEBUG_MENU |
|---|
| 194 | | - ---help--- |
|---|
| 179 | + help |
|---|
| 195 | 180 | Selecting this option causes mac80211 to print out |
|---|
| 196 | 181 | very verbose IBSS debugging messages. It should not |
|---|
| 197 | 182 | be selected on production systems as those messages |
|---|
| .. | .. |
|---|
| 202 | 187 | config MAC80211_PS_DEBUG |
|---|
| 203 | 188 | bool "Verbose powersave mode debugging" |
|---|
| 204 | 189 | depends on MAC80211_DEBUG_MENU |
|---|
| 205 | | - ---help--- |
|---|
| 190 | + help |
|---|
| 206 | 191 | Selecting this option causes mac80211 to print out very |
|---|
| 207 | 192 | verbose power save mode debugging messages (when mac80211 |
|---|
| 208 | 193 | is an AP and has power saving stations.) |
|---|
| .. | .. |
|---|
| 215 | 200 | bool "Verbose mesh peer link debugging" |
|---|
| 216 | 201 | depends on MAC80211_DEBUG_MENU |
|---|
| 217 | 202 | depends on MAC80211_MESH |
|---|
| 218 | | - ---help--- |
|---|
| 203 | + help |
|---|
| 219 | 204 | Selecting this option causes mac80211 to print out very |
|---|
| 220 | 205 | verbose mesh peer link debugging messages (when mac80211 |
|---|
| 221 | 206 | is taking part in a mesh network). |
|---|
| .. | .. |
|---|
| 228 | 213 | bool "Verbose mesh path debugging" |
|---|
| 229 | 214 | depends on MAC80211_DEBUG_MENU |
|---|
| 230 | 215 | depends on MAC80211_MESH |
|---|
| 231 | | - ---help--- |
|---|
| 216 | + help |
|---|
| 232 | 217 | Selecting this option causes mac80211 to print out very |
|---|
| 233 | 218 | verbose mesh path selection debugging messages (when mac80211 |
|---|
| 234 | 219 | is taking part in a mesh network). |
|---|
| .. | .. |
|---|
| 241 | 226 | bool "Verbose mesh HWMP routing debugging" |
|---|
| 242 | 227 | depends on MAC80211_DEBUG_MENU |
|---|
| 243 | 228 | depends on MAC80211_MESH |
|---|
| 244 | | - ---help--- |
|---|
| 229 | + help |
|---|
| 245 | 230 | Selecting this option causes mac80211 to print out very |
|---|
| 246 | 231 | verbose mesh routing (HWMP) debugging messages (when mac80211 |
|---|
| 247 | 232 | is taking part in a mesh network). |
|---|
| .. | .. |
|---|
| 254 | 239 | bool "Verbose mesh synchronization debugging" |
|---|
| 255 | 240 | depends on MAC80211_DEBUG_MENU |
|---|
| 256 | 241 | depends on MAC80211_MESH |
|---|
| 257 | | - ---help--- |
|---|
| 242 | + help |
|---|
| 258 | 243 | Selecting this option causes mac80211 to print out very verbose mesh |
|---|
| 259 | 244 | synchronization debugging messages (when mac80211 is taking part in a |
|---|
| 260 | 245 | mesh network). |
|---|
| .. | .. |
|---|
| 265 | 250 | bool "Verbose mesh channel switch debugging" |
|---|
| 266 | 251 | depends on MAC80211_DEBUG_MENU |
|---|
| 267 | 252 | depends on MAC80211_MESH |
|---|
| 268 | | - ---help--- |
|---|
| 253 | + help |
|---|
| 269 | 254 | Selecting this option causes mac80211 to print out very verbose mesh |
|---|
| 270 | 255 | channel switch debugging messages (when mac80211 is taking part in a |
|---|
| 271 | 256 | mesh network). |
|---|
| .. | .. |
|---|
| 276 | 261 | bool "Verbose mesh powersave debugging" |
|---|
| 277 | 262 | depends on MAC80211_DEBUG_MENU |
|---|
| 278 | 263 | depends on MAC80211_MESH |
|---|
| 279 | | - ---help--- |
|---|
| 264 | + help |
|---|
| 280 | 265 | Selecting this option causes mac80211 to print out very verbose mesh |
|---|
| 281 | 266 | powersave debugging messages (when mac80211 is taking part in a |
|---|
| 282 | 267 | mesh network). |
|---|
| .. | .. |
|---|
| 286 | 271 | config MAC80211_TDLS_DEBUG |
|---|
| 287 | 272 | bool "Verbose TDLS debugging" |
|---|
| 288 | 273 | depends on MAC80211_DEBUG_MENU |
|---|
| 289 | | - ---help--- |
|---|
| 274 | + help |
|---|
| 290 | 275 | Selecting this option causes mac80211 to print out very |
|---|
| 291 | 276 | verbose TDLS selection debugging messages (when mac80211 |
|---|
| 292 | 277 | is a TDLS STA). |
|---|
| .. | .. |
|---|
| 299 | 284 | bool "Extra statistics for TX/RX debugging" |
|---|
| 300 | 285 | depends on MAC80211_DEBUG_MENU |
|---|
| 301 | 286 | depends on MAC80211_DEBUGFS |
|---|
| 302 | | - ---help--- |
|---|
| 287 | + help |
|---|
| 303 | 288 | Selecting this option causes mac80211 to keep additional |
|---|
| 304 | 289 | and very verbose statistics about TX and RX handler use |
|---|
| 305 | 290 | as well as a few selected dot11 counters. These will be |
|---|
| .. | .. |
|---|
| 313 | 298 | config MAC80211_STA_HASH_MAX_SIZE |
|---|
| 314 | 299 | int "Station hash table maximum size" if MAC80211_DEBUG_MENU |
|---|
| 315 | 300 | default 0 |
|---|
| 316 | | - ---help--- |
|---|
| 301 | + help |
|---|
| 317 | 302 | Setting this option to a low value (e.g. 4) allows testing the |
|---|
| 318 | 303 | hash table with collisions relatively deterministically (just |
|---|
| 319 | 304 | connect more stations than the number selected here.) |
|---|