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