blob: aeb6a483b3bc881e4b45c6dad7aacc9ae57bde37 [file] [log] [blame]
Jiri Bencf0706e82007-05-05 11:45:53 -07001config MAC80211
2 tristate "Generic IEEE 802.11 Networking Stack (mac80211)"
Johannes Berg0aa82042009-06-03 18:30:31 +02003 depends on CFG80211
Jiri Bencf0706e82007-05-05 11:45:53 -07004 select CRYPTO
Jiri Bencf0706e82007-05-05 11:45:53 -07005 select CRYPTO_ARC4
6 select CRYPTO_AES
Ard Biesheuvel7ec7c4a2013-10-10 09:55:20 +02007 select CRYPTO_CCM
Jiri Bencf0706e82007-05-05 11:45:53 -07008 select CRC32
Bruno Randolf541a45a2010-12-02 19:12:43 +09009 select AVERAGE
Jiri Bencf0706e82007-05-05 11:45:53 -070010 ---help---
John W. Linvillec40896d2007-12-21 00:44:59 -050011 This option enables the hardware independent IEEE 802.11
12 networking stack.
Jiri Bencf0706e82007-05-05 11:45:53 -070013
Johannes Berg0aa82042009-06-03 18:30:31 +020014comment "CFG80211 needs to be enabled for MAC80211"
15 depends on CFG80211=n
16
Luis R. Rodriguezabd8ea22009-09-01 08:22:46 -070017if MAC80211 != n
Johannes Bergac71c692007-10-28 14:17:44 +010018
Andres Salomonc2ef3552010-02-25 19:18:47 -050019config MAC80211_HAS_RC
Jan Beulich540005c2011-02-17 13:36:19 +000020 bool
Andres Salomonc2ef3552010-02-25 19:18:47 -050021
Felix Fietkaucccf1292008-10-05 18:07:45 +020022config MAC80211_RC_MINSTREL
David Rientjes6a108a12011-01-20 14:44:16 -080023 bool "Minstrel" if EXPERT
Andres Salomonc2ef3552010-02-25 19:18:47 -050024 select MAC80211_HAS_RC
Luis R. Rodriguez8eb41c92008-11-14 17:44:53 -080025 default y
Felix Fietkaucccf1292008-10-05 18:07:45 +020026 ---help---
27 This option enables the 'minstrel' TX rate control algorithm
28
Felix Fietkauec8aa662010-05-13 16:48:03 +020029config MAC80211_RC_MINSTREL_HT
David Rientjes6a108a12011-01-20 14:44:16 -080030 bool "Minstrel 802.11n support" if EXPERT
Felix Fietkauec8aa662010-05-13 16:48:03 +020031 depends on MAC80211_RC_MINSTREL
32 default y
33 ---help---
34 This option enables the 'minstrel_ht' TX rate control algorithm
35
Stefano Brivioc21b39a2007-12-19 01:26:16 +010036choice
37 prompt "Default rate control algorithm"
Andres Salomonc2ef3552010-02-25 19:18:47 -050038 depends on MAC80211_HAS_RC
Luis R. Rodriguez8eb41c92008-11-14 17:44:53 -080039 default MAC80211_RC_DEFAULT_MINSTREL
Stefano Brivioc21b39a2007-12-19 01:26:16 +010040 ---help---
41 This option selects the default rate control algorithm
42 mac80211 will use. Note that this default can still be
Matt LaPlante692105b2009-01-26 11:12:25 +010043 overridden through the ieee80211_default_rc_algo module
Johannes Berg4b475892008-01-02 15:17:03 +010044 parameter if different algorithms are available.
Johannes Bergac71c692007-10-28 14:17:44 +010045
Felix Fietkaucccf1292008-10-05 18:07:45 +020046config MAC80211_RC_DEFAULT_MINSTREL
47 bool "Minstrel"
48 depends on MAC80211_RC_MINSTREL
49 ---help---
50 Select Minstrel as the default rate control algorithm.
51
52
Stefano Brivioc21b39a2007-12-19 01:26:16 +010053endchoice
54
55config MAC80211_RC_DEFAULT
56 string
Helmut Schaa92b50c42010-06-30 08:48:42 +020057 default "minstrel_ht" if MAC80211_RC_DEFAULT_MINSTREL && MAC80211_RC_MINSTREL_HT
Felix Fietkaucccf1292008-10-05 18:07:45 +020058 default "minstrel" if MAC80211_RC_DEFAULT_MINSTREL
Stefano Brivioc21b39a2007-12-19 01:26:16 +010059 default ""
60
Luis R. Rodriguezabd8ea22009-09-01 08:22:46 -070061endif
Mattias Nisslerad018372007-12-19 01:25:57 +010062
Andres Salomonc2ef3552010-02-25 19:18:47 -050063comment "Some wireless drivers require a rate control algorithm"
Johannes Berge46395a2011-03-01 17:18:26 +010064 depends on MAC80211 && MAC80211_HAS_RC=n
Andres Salomonc2ef3552010-02-25 19:18:47 -050065
Johannes Berg2f5ce792008-02-23 15:17:21 +010066config MAC80211_MESH
67 bool "Enable mac80211 mesh networking (pre-802.11s) support"
Kees Cook48f6edc2012-10-02 11:19:53 -070068 depends on MAC80211
Johannes Berg2f5ce792008-02-23 15:17:21 +010069 ---help---
Johannes Berg5c142e82008-02-25 10:13:31 +010070 This options enables support of Draft 802.11s mesh networking.
Javier Cardona18889232009-08-10 12:15:52 -070071 The implementation is based on Draft 2.08 of the Mesh Networking
72 amendment. However, no compliance with that draft is claimed or even
73 possible, as drafts leave a number of identifiers to be defined after
74 ratification. For more information visit http://o11s.org/.
Johannes Berg2f5ce792008-02-23 15:17:21 +010075
Jiri Bencf0706e82007-05-05 11:45:53 -070076config MAC80211_LEDS
77 bool "Enable LED triggers"
Luca Tettamantibd8fd212008-04-27 15:34:55 -070078 depends on MAC80211
Johannes Berg0bae35e2010-12-02 14:31:14 -080079 depends on LEDS_CLASS
Luca Tettamantibd8fd212008-04-27 15:34:55 -070080 select LEDS_TRIGGERS
Jiri Bencf0706e82007-05-05 11:45:53 -070081 ---help---
John W. Linvillec40896d2007-12-21 00:44:59 -050082 This option enables a few LED triggers for different
83 packet receive/transmit events.
Jiri Bencf0706e82007-05-05 11:45:53 -070084
Jiri Bence9f207f2007-05-05 11:46:38 -070085config MAC80211_DEBUGFS
86 bool "Export mac80211 internals in DebugFS"
87 depends on MAC80211 && DEBUG_FS
88 ---help---
89 Select this to see extensive information about
90 the internal state of mac80211 in debugfs.
91
92 Say N unless you know you need this.
93
Johannes Berg3fae0272012-06-22 13:36:25 +020094config MAC80211_MESSAGE_TRACING
95 bool "Trace all mac80211 debug messages"
96 depends on MAC80211
97 ---help---
98 Select this option to have mac80211 register the
99 mac80211_msg trace subsystem with tracepoints to
100 collect all debugging messages, independent of
101 printing them into the kernel log.
102
103 The overhead in this option is that all the messages
104 need to be present in the binary and formatted at
105 runtime for tracing.
106
Johannes Bergf4ea83d2008-06-30 15:10:46 +0200107menuconfig MAC80211_DEBUG_MENU
108 bool "Select mac80211 debugging features"
109 depends on MAC80211
110 ---help---
111 This option collects various mac80211 debug settings.
112
Johannes Bergf4ea83d2008-06-30 15:10:46 +0200113config MAC80211_NOINLINE
114 bool "Do not inline TX/RX handlers"
115 depends on MAC80211_DEBUG_MENU
Jiri Bencf0706e82007-05-05 11:45:53 -0700116 ---help---
Johannes Bergf4ea83d2008-06-30 15:10:46 +0200117 This option affects code generation in mac80211, when
118 selected some functions are marked "noinline" to allow
119 easier debugging of problems in the transmit and receive
120 paths.
Jiri Bencf0706e82007-05-05 11:45:53 -0700121
Johannes Bergf4ea83d2008-06-30 15:10:46 +0200122 This option increases code size a bit and inserts a lot
123 of function calls in the code, but is otherwise safe to
124 enable.
125
126 If unsure, say N unless you expect to be finding problems
127 in mac80211.
128
129config MAC80211_VERBOSE_DEBUG
130 bool "Verbose debugging output"
131 depends on MAC80211_DEBUG_MENU
132 ---help---
133 Selecting this option causes mac80211 to print out
134 many debugging messages. It should not be selected
135 on production systems as some of the messages are
136 remotely triggerable.
137
138 Do not select this option.
Jiri Bencf0706e82007-05-05 11:45:53 -0700139
Johannes Bergbdcbd8e2012-06-22 11:29:50 +0200140config MAC80211_MLME_DEBUG
141 bool "Verbose managed MLME output"
142 depends on MAC80211_DEBUG_MENU
143 ---help---
144 Selecting this option causes mac80211 to print out
145 debugging messages for the managed-mode MLME. It
146 should not be selected on production systems as some
147 of the messages are remotely triggerable.
148
149 Do not select this option.
150
151config MAC80211_STA_DEBUG
152 bool "Verbose station debugging"
153 depends on MAC80211_DEBUG_MENU
154 ---help---
155 Selecting this option causes mac80211 to print out
156 debugging messages for station addition/removal.
157
158 Do not select this option.
159
Ron Rindjunsky82b3cad2007-12-16 16:09:26 -0800160config MAC80211_HT_DEBUG
Johannes Bergf4ea83d2008-06-30 15:10:46 +0200161 bool "Verbose HT debugging"
162 depends on MAC80211_DEBUG_MENU
John W. Linvillec40896d2007-12-21 00:44:59 -0500163 ---help---
164 This option enables 802.11n High Throughput features
165 debug tracing output.
Ron Rindjunsky82b3cad2007-12-16 16:09:26 -0800166
Johannes Bergf4ea83d2008-06-30 15:10:46 +0200167 It should not be selected on production systems as some
168 of the messages are remotely triggerable.
Ron Rindjunsky82b3cad2007-12-16 16:09:26 -0800169
Johannes Bergf4ea83d2008-06-30 15:10:46 +0200170 Do not select this option.
171
Johannes Bergf4ea83d2008-06-30 15:10:46 +0200172config MAC80211_IBSS_DEBUG
173 bool "Verbose IBSS debugging"
174 depends on MAC80211_DEBUG_MENU
175 ---help---
176 Selecting this option causes mac80211 to print out
177 very verbose IBSS debugging messages. It should not
178 be selected on production systems as those messages
179 are remotely triggerable.
180
181 Do not select this option.
182
Johannes Bergbdcbd8e2012-06-22 11:29:50 +0200183config MAC80211_PS_DEBUG
Johannes Bergf4ea83d2008-06-30 15:10:46 +0200184 bool "Verbose powersave mode debugging"
185 depends on MAC80211_DEBUG_MENU
186 ---help---
187 Selecting this option causes mac80211 to print out very
188 verbose power save mode debugging messages (when mac80211
189 is an AP and has power saving stations.)
190 It should not be selected on production systems as those
191 messages are remotely triggerable.
192
193 Do not select this option.
194
Johannes Bergbdcbd8e2012-06-22 11:29:50 +0200195config MAC80211_MPL_DEBUG
Johannes Bergf4ea83d2008-06-30 15:10:46 +0200196 bool "Verbose mesh peer link debugging"
197 depends on MAC80211_DEBUG_MENU
198 depends on MAC80211_MESH
199 ---help---
200 Selecting this option causes mac80211 to print out very
201 verbose mesh peer link debugging messages (when mac80211
202 is taking part in a mesh network).
203 It should not be selected on production systems as those
204 messages are remotely triggerable.
205
206 Do not select this option.
Jiri Bencf0706e82007-05-05 11:45:53 -0700207
Johannes Bergbdcbd8e2012-06-22 11:29:50 +0200208config MAC80211_MPATH_DEBUG
Javier Cardona76468872011-08-09 16:45:04 -0700209 bool "Verbose mesh path debugging"
210 depends on MAC80211_DEBUG_MENU
211 depends on MAC80211_MESH
212 ---help---
213 Selecting this option causes mac80211 to print out very
214 verbose mesh path selection debugging messages (when mac80211
215 is taking part in a mesh network).
216 It should not be selected on production systems as those
217 messages are remotely triggerable.
218
219 Do not select this option.
220
Johannes Bergbdcbd8e2012-06-22 11:29:50 +0200221config MAC80211_MHWMP_DEBUG
Rui Paulo27db2e42009-11-09 23:46:45 +0000222 bool "Verbose mesh HWMP routing debugging"
223 depends on MAC80211_DEBUG_MENU
224 depends on MAC80211_MESH
225 ---help---
226 Selecting this option causes mac80211 to print out very
227 verbose mesh routing (HWMP) debugging messages (when mac80211
228 is taking part in a mesh network).
229 It should not be selected on production systems as those
230 messages are remotely triggerable.
231
232 Do not select this option.
233
Johannes Bergbdcbd8e2012-06-22 11:29:50 +0200234config MAC80211_MESH_SYNC_DEBUG
Marco Porschf53c6a02012-10-17 20:21:30 -0700235 bool "Verbose mesh synchronization debugging"
Javier Cardonadbf498f2012-03-31 11:31:32 -0700236 depends on MAC80211_DEBUG_MENU
237 depends on MAC80211_MESH
238 ---help---
239 Selecting this option causes mac80211 to print out very verbose mesh
240 synchronization debugging messages (when mac80211 is taking part in a
241 mesh network).
242
243 Do not select this option.
244
Chun-Yeow Yeoh8f2535b2013-10-14 19:08:27 -0700245config MAC80211_MESH_CSA_DEBUG
246 bool "Verbose mesh channel switch debugging"
247 depends on MAC80211_DEBUG_MENU
248 depends on MAC80211_MESH
249 ---help---
250 Selecting this option causes mac80211 to print out very verbose mesh
251 channel switch debugging messages (when mac80211 is taking part in a
252 mesh network).
253
254 Do not select this option.
255
Marco Porsch3f52b7e2013-01-30 18:14:08 +0100256config MAC80211_MESH_PS_DEBUG
257 bool "Verbose mesh powersave debugging"
258 depends on MAC80211_DEBUG_MENU
259 depends on MAC80211_MESH
260 ---help---
261 Selecting this option causes mac80211 to print out very verbose mesh
262 powersave debugging messages (when mac80211 is taking part in a
263 mesh network).
264
265 Do not select this option.
266
Johannes Bergbdcbd8e2012-06-22 11:29:50 +0200267config MAC80211_TDLS_DEBUG
Arik Nemtsovdfe018b2011-09-28 14:12:52 +0300268 bool "Verbose TDLS debugging"
269 depends on MAC80211_DEBUG_MENU
270 ---help---
271 Selecting this option causes mac80211 to print out very
272 verbose TDLS selection debugging messages (when mac80211
273 is a TDLS STA).
274 It should not be selected on production systems as those
275 messages are remotely triggerable.
276
277 Do not select this option.
278
Jiri Bencf0706e82007-05-05 11:45:53 -0700279config MAC80211_DEBUG_COUNTERS
280 bool "Extra statistics for TX/RX debugging"
Johannes Bergf4ea83d2008-06-30 15:10:46 +0200281 depends on MAC80211_DEBUG_MENU
282 depends on MAC80211_DEBUGFS
Jiri Bencf0706e82007-05-05 11:45:53 -0700283 ---help---
Johannes Bergf4ea83d2008-06-30 15:10:46 +0200284 Selecting this option causes mac80211 to keep additional
285 and very verbose statistics about TX and RX handler use
286 and show them in debugfs.
Jiri Bencf0706e82007-05-05 11:45:53 -0700287
Johannes Bergf4ea83d2008-06-30 15:10:46 +0200288 If unsure, say N.