Commit | Line | Data |
---|---|---|
f0706e82 JB |
1 | config MAC80211 |
2 | tristate "Generic IEEE 802.11 Networking Stack (mac80211)" | |
0aa8204b | 3 | depends on CFG80211 |
f0706e82 | 4 | select CRYPTO |
f0706e82 JB |
5 | select CRYPTO_ARC4 |
6 | select CRYPTO_AES | |
7ec7c4a9 | 7 | select CRYPTO_CCM |
00b9cfa3 | 8 | select CRYPTO_GCM |
f0706e82 | 9 | select CRC32 |
f0706e82 | 10 | ---help--- |
c40896de JL |
11 | This option enables the hardware independent IEEE 802.11 |
12 | networking stack. | |
f0706e82 | 13 | |
0aa8204b JB |
14 | comment "CFG80211 needs to be enabled for MAC80211" |
15 | depends on CFG80211=n | |
16 | ||
abd8ea22 | 17 | if MAC80211 != n |
c21b39ac | 18 | |
c2ef355b | 19 | config MAC80211_HAS_RC |
540005c7 | 20 | bool |
c2ef355b | 21 | |
cccf129f | 22 | config MAC80211_RC_MINSTREL |
6a108a14 | 23 | bool "Minstrel" if EXPERT |
c2ef355b | 24 | select MAC80211_HAS_RC |
8eb41c93 | 25 | default y |
cccf129f FF |
26 | ---help--- |
27 | This option enables the 'minstrel' TX rate control algorithm | |
28 | ||
ec8aa669 | 29 | config MAC80211_RC_MINSTREL_HT |
6a108a14 | 30 | bool "Minstrel 802.11n support" if EXPERT |
ec8aa669 FF |
31 | depends on MAC80211_RC_MINSTREL |
32 | default y | |
33 | ---help--- | |
34 | This option enables the 'minstrel_ht' TX rate control algorithm | |
35 | ||
9208247d KB |
36 | config MAC80211_RC_MINSTREL_VHT |
37 | bool "Minstrel 802.11ac support" if EXPERT | |
38 | depends on MAC80211_RC_MINSTREL_HT | |
39 | default n | |
40 | ---help--- | |
41 | This option enables VHT in the 'minstrel_ht' TX rate control algorithm | |
42 | ||
c21b39ac SB |
43 | choice |
44 | prompt "Default rate control algorithm" | |
c2ef355b | 45 | depends on MAC80211_HAS_RC |
8eb41c93 | 46 | default MAC80211_RC_DEFAULT_MINSTREL |
c21b39ac SB |
47 | ---help--- |
48 | This option selects the default rate control algorithm | |
49 | mac80211 will use. Note that this default can still be | |
692105b8 | 50 | overridden through the ieee80211_default_rc_algo module |
4b475898 | 51 | parameter if different algorithms are available. |
c21b39ac | 52 | |
cccf129f FF |
53 | config MAC80211_RC_DEFAULT_MINSTREL |
54 | bool "Minstrel" | |
55 | depends on MAC80211_RC_MINSTREL | |
56 | ---help--- | |
57 | Select Minstrel as the default rate control algorithm. | |
58 | ||
59 | ||
c21b39ac | 60 | endchoice |
ac71c691 | 61 | |
c21b39ac SB |
62 | config MAC80211_RC_DEFAULT |
63 | string | |
92b50c4b | 64 | default "minstrel_ht" if MAC80211_RC_DEFAULT_MINSTREL && MAC80211_RC_MINSTREL_HT |
cccf129f | 65 | default "minstrel" if MAC80211_RC_DEFAULT_MINSTREL |
c21b39ac SB |
66 | default "" |
67 | ||
abd8ea22 | 68 | endif |
ad018375 | 69 | |
c2ef355b | 70 | comment "Some wireless drivers require a rate control algorithm" |
e46395a4 | 71 | depends on MAC80211 && MAC80211_HAS_RC=n |
c2ef355b | 72 | |
2f5ce793 JB |
73 | config MAC80211_MESH |
74 | bool "Enable mac80211 mesh networking (pre-802.11s) support" | |
48f6edce | 75 | depends on MAC80211 |
2f5ce793 | 76 | ---help--- |
5c142e8d | 77 | This options enables support of Draft 802.11s mesh networking. |
18889231 JC |
78 | The implementation is based on Draft 2.08 of the Mesh Networking |
79 | amendment. However, no compliance with that draft is claimed or even | |
80 | possible, as drafts leave a number of identifiers to be defined after | |
81 | ratification. For more information visit http://o11s.org/. | |
2f5ce793 | 82 | |
f0706e82 JB |
83 | config MAC80211_LEDS |
84 | bool "Enable LED triggers" | |
bd8fd21d | 85 | depends on MAC80211 |
0bae35e1 | 86 | depends on LEDS_CLASS |
bd8fd21d | 87 | select LEDS_TRIGGERS |
f0706e82 | 88 | ---help--- |
c40896de JL |
89 | This option enables a few LED triggers for different |
90 | packet receive/transmit events. | |
f0706e82 | 91 | |
e9f207f0 JB |
92 | config MAC80211_DEBUGFS |
93 | bool "Export mac80211 internals in DebugFS" | |
94 | depends on MAC80211 && DEBUG_FS | |
95 | ---help--- | |
96 | Select this to see extensive information about | |
97 | the internal state of mac80211 in debugfs. | |
98 | ||
99 | Say N unless you know you need this. | |
100 | ||
3fae0273 JB |
101 | config MAC80211_MESSAGE_TRACING |
102 | bool "Trace all mac80211 debug messages" | |
103 | depends on MAC80211 | |
104 | ---help--- | |
105 | Select this option to have mac80211 register the | |
106 | mac80211_msg trace subsystem with tracepoints to | |
107 | collect all debugging messages, independent of | |
108 | printing them into the kernel log. | |
109 | ||
110 | The overhead in this option is that all the messages | |
111 | need to be present in the binary and formatted at | |
112 | runtime for tracing. | |
113 | ||
f4ea83dd JB |
114 | menuconfig MAC80211_DEBUG_MENU |
115 | bool "Select mac80211 debugging features" | |
116 | depends on MAC80211 | |
117 | ---help--- | |
118 | This option collects various mac80211 debug settings. | |
119 | ||
f4ea83dd JB |
120 | config MAC80211_NOINLINE |
121 | bool "Do not inline TX/RX handlers" | |
122 | depends on MAC80211_DEBUG_MENU | |
f0706e82 | 123 | ---help--- |
f4ea83dd JB |
124 | This option affects code generation in mac80211, when |
125 | selected some functions are marked "noinline" to allow | |
126 | easier debugging of problems in the transmit and receive | |
127 | paths. | |
128 | ||
129 | This option increases code size a bit and inserts a lot | |
130 | of function calls in the code, but is otherwise safe to | |
131 | enable. | |
f0706e82 | 132 | |
f4ea83dd JB |
133 | If unsure, say N unless you expect to be finding problems |
134 | in mac80211. | |
135 | ||
136 | config MAC80211_VERBOSE_DEBUG | |
137 | bool "Verbose debugging output" | |
138 | depends on MAC80211_DEBUG_MENU | |
139 | ---help--- | |
140 | Selecting this option causes mac80211 to print out | |
141 | many debugging messages. It should not be selected | |
142 | on production systems as some of the messages are | |
143 | remotely triggerable. | |
144 | ||
145 | Do not select this option. | |
82b3cad9 | 146 | |
bdcbd8e0 JB |
147 | config MAC80211_MLME_DEBUG |
148 | bool "Verbose managed MLME output" | |
149 | depends on MAC80211_DEBUG_MENU | |
150 | ---help--- | |
151 | Selecting this option causes mac80211 to print out | |
152 | debugging messages for the managed-mode MLME. It | |
153 | should not be selected on production systems as some | |
154 | of the messages are remotely triggerable. | |
155 | ||
156 | Do not select this option. | |
157 | ||
158 | config MAC80211_STA_DEBUG | |
159 | bool "Verbose station debugging" | |
160 | depends on MAC80211_DEBUG_MENU | |
161 | ---help--- | |
162 | Selecting this option causes mac80211 to print out | |
163 | debugging messages for station addition/removal. | |
164 | ||
165 | Do not select this option. | |
166 | ||
82b3cad9 | 167 | config MAC80211_HT_DEBUG |
f4ea83dd JB |
168 | bool "Verbose HT debugging" |
169 | depends on MAC80211_DEBUG_MENU | |
c40896de JL |
170 | ---help--- |
171 | This option enables 802.11n High Throughput features | |
172 | debug tracing output. | |
173 | ||
f4ea83dd JB |
174 | It should not be selected on production systems as some |
175 | of the messages are remotely triggerable. | |
f0706e82 | 176 | |
f4ea83dd JB |
177 | Do not select this option. |
178 | ||
239281f8 RL |
179 | config MAC80211_OCB_DEBUG |
180 | bool "Verbose OCB debugging" | |
181 | depends on MAC80211_DEBUG_MENU | |
182 | ---help--- | |
183 | Selecting this option causes mac80211 to print out | |
184 | very verbose OCB debugging messages. It should not | |
185 | be selected on production systems as those messages | |
186 | are remotely triggerable. | |
187 | ||
188 | Do not select this option. | |
189 | ||
f4ea83dd JB |
190 | config MAC80211_IBSS_DEBUG |
191 | bool "Verbose IBSS debugging" | |
192 | depends on MAC80211_DEBUG_MENU | |
193 | ---help--- | |
194 | Selecting this option causes mac80211 to print out | |
195 | very verbose IBSS debugging messages. It should not | |
196 | be selected on production systems as those messages | |
197 | are remotely triggerable. | |
198 | ||
199 | Do not select this option. | |
200 | ||
bdcbd8e0 | 201 | config MAC80211_PS_DEBUG |
f4ea83dd JB |
202 | bool "Verbose powersave mode debugging" |
203 | depends on MAC80211_DEBUG_MENU | |
204 | ---help--- | |
205 | Selecting this option causes mac80211 to print out very | |
206 | verbose power save mode debugging messages (when mac80211 | |
207 | is an AP and has power saving stations.) | |
208 | It should not be selected on production systems as those | |
209 | messages are remotely triggerable. | |
210 | ||
211 | Do not select this option. | |
212 | ||
bdcbd8e0 | 213 | config MAC80211_MPL_DEBUG |
f4ea83dd JB |
214 | bool "Verbose mesh peer link debugging" |
215 | depends on MAC80211_DEBUG_MENU | |
216 | depends on MAC80211_MESH | |
217 | ---help--- | |
218 | Selecting this option causes mac80211 to print out very | |
219 | verbose mesh peer link debugging messages (when mac80211 | |
220 | is taking part in a mesh network). | |
221 | It should not be selected on production systems as those | |
222 | messages are remotely triggerable. | |
223 | ||
224 | Do not select this option. | |
f0706e82 | 225 | |
bdcbd8e0 | 226 | config MAC80211_MPATH_DEBUG |
7646887a JC |
227 | bool "Verbose mesh path debugging" |
228 | depends on MAC80211_DEBUG_MENU | |
229 | depends on MAC80211_MESH | |
230 | ---help--- | |
231 | Selecting this option causes mac80211 to print out very | |
232 | verbose mesh path selection debugging messages (when mac80211 | |
233 | is taking part in a mesh network). | |
234 | It should not be selected on production systems as those | |
235 | messages are remotely triggerable. | |
236 | ||
237 | Do not select this option. | |
238 | ||
bdcbd8e0 | 239 | config MAC80211_MHWMP_DEBUG |
27db2e42 RP |
240 | bool "Verbose mesh HWMP routing debugging" |
241 | depends on MAC80211_DEBUG_MENU | |
242 | depends on MAC80211_MESH | |
243 | ---help--- | |
244 | Selecting this option causes mac80211 to print out very | |
245 | verbose mesh routing (HWMP) debugging messages (when mac80211 | |
246 | is taking part in a mesh network). | |
247 | It should not be selected on production systems as those | |
248 | messages are remotely triggerable. | |
249 | ||
250 | Do not select this option. | |
251 | ||
bdcbd8e0 | 252 | config MAC80211_MESH_SYNC_DEBUG |
f53c6a0d | 253 | bool "Verbose mesh synchronization debugging" |
dbf498fb JC |
254 | depends on MAC80211_DEBUG_MENU |
255 | depends on MAC80211_MESH | |
256 | ---help--- | |
257 | Selecting this option causes mac80211 to print out very verbose mesh | |
258 | synchronization debugging messages (when mac80211 is taking part in a | |
259 | mesh network). | |
260 | ||
261 | Do not select this option. | |
8f2535b9 CYY |
262 | |
263 | config MAC80211_MESH_CSA_DEBUG | |
264 | bool "Verbose mesh channel switch debugging" | |
265 | depends on MAC80211_DEBUG_MENU | |
266 | depends on MAC80211_MESH | |
267 | ---help--- | |
268 | Selecting this option causes mac80211 to print out very verbose mesh | |
269 | channel switch debugging messages (when mac80211 is taking part in a | |
270 | mesh network). | |
271 | ||
272 | Do not select this option. | |
dbf498fb | 273 | |
3f52b7e3 MP |
274 | config MAC80211_MESH_PS_DEBUG |
275 | bool "Verbose mesh powersave debugging" | |
276 | depends on MAC80211_DEBUG_MENU | |
277 | depends on MAC80211_MESH | |
278 | ---help--- | |
279 | Selecting this option causes mac80211 to print out very verbose mesh | |
280 | powersave debugging messages (when mac80211 is taking part in a | |
281 | mesh network). | |
282 | ||
283 | Do not select this option. | |
284 | ||
bdcbd8e0 | 285 | config MAC80211_TDLS_DEBUG |
dfe018bf AN |
286 | bool "Verbose TDLS debugging" |
287 | depends on MAC80211_DEBUG_MENU | |
288 | ---help--- | |
289 | Selecting this option causes mac80211 to print out very | |
290 | verbose TDLS selection debugging messages (when mac80211 | |
291 | is a TDLS STA). | |
292 | It should not be selected on production systems as those | |
293 | messages are remotely triggerable. | |
294 | ||
295 | Do not select this option. | |
296 | ||
f0706e82 JB |
297 | config MAC80211_DEBUG_COUNTERS |
298 | bool "Extra statistics for TX/RX debugging" | |
f4ea83dd JB |
299 | depends on MAC80211_DEBUG_MENU |
300 | depends on MAC80211_DEBUGFS | |
f0706e82 | 301 | ---help--- |
f4ea83dd JB |
302 | Selecting this option causes mac80211 to keep additional |
303 | and very verbose statistics about TX and RX handler use | |
c206ca67 JB |
304 | as well as a few selected dot11 counters. These will be |
305 | exposed in debugfs. | |
306 | ||
307 | Note that some of the counters are not concurrency safe | |
308 | and may thus not always be accurate. | |
2f5ce793 | 309 | |
f4ea83dd | 310 | If unsure, say N. |
ebd82b39 JB |
311 | |
312 | config MAC80211_STA_HASH_MAX_SIZE | |
313 | int "Station hash table maximum size" if MAC80211_DEBUG_MENU | |
314 | default 0 | |
315 | ---help--- | |
316 | Setting this option to a low value (e.g. 4) allows testing the | |
317 | hash table with collisions relatively deterministically (just | |
318 | connect more stations than the number selected here.) | |
319 | ||
320 | If unsure, leave the default of 0. |