blob: dbf5e4006bc1475a17acff920f38bade34e7e5a2 [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
5 select CRYPTO_ECB
6 select CRYPTO_ARC4
7 select CRYPTO_AES
8 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
Adrian Bunke5f5e732008-06-26 13:38:13 +030022config MAC80211_RC_PID
David Rientjes6a108a12011-01-20 14:44:16 -080023 bool "PID controller based rate control algorithm" if EXPERT
Andres Salomonc2ef3552010-02-25 19:18:47 -050024 select MAC80211_HAS_RC
Adrian Bunke5f5e732008-06-26 13:38:13 +030025 ---help---
26 This option enables a TX rate control algorithm for
27 mac80211 that uses a PID controller to select the TX
28 rate.
29
Felix Fietkaucccf1292008-10-05 18:07:45 +020030config MAC80211_RC_MINSTREL
David Rientjes6a108a12011-01-20 14:44:16 -080031 bool "Minstrel" if EXPERT
Andres Salomonc2ef3552010-02-25 19:18:47 -050032 select MAC80211_HAS_RC
Luis R. Rodriguez8eb41c92008-11-14 17:44:53 -080033 default y
Felix Fietkaucccf1292008-10-05 18:07:45 +020034 ---help---
35 This option enables the 'minstrel' TX rate control algorithm
36
Felix Fietkauec8aa662010-05-13 16:48:03 +020037config MAC80211_RC_MINSTREL_HT
David Rientjes6a108a12011-01-20 14:44:16 -080038 bool "Minstrel 802.11n support" if EXPERT
Felix Fietkauec8aa662010-05-13 16:48:03 +020039 depends on MAC80211_RC_MINSTREL
40 default y
41 ---help---
42 This option enables the 'minstrel_ht' TX rate control algorithm
43
Stefano Brivioc21b39a2007-12-19 01:26:16 +010044choice
45 prompt "Default rate control algorithm"
Andres Salomonc2ef3552010-02-25 19:18:47 -050046 depends on MAC80211_HAS_RC
Luis R. Rodriguez8eb41c92008-11-14 17:44:53 -080047 default MAC80211_RC_DEFAULT_MINSTREL
Stefano Brivioc21b39a2007-12-19 01:26:16 +010048 ---help---
49 This option selects the default rate control algorithm
50 mac80211 will use. Note that this default can still be
Matt LaPlante692105b2009-01-26 11:12:25 +010051 overridden through the ieee80211_default_rc_algo module
Johannes Berg4b475892008-01-02 15:17:03 +010052 parameter if different algorithms are available.
Johannes Bergac71c692007-10-28 14:17:44 +010053
Stefano Brivioc21b39a2007-12-19 01:26:16 +010054config MAC80211_RC_DEFAULT_PID
55 bool "PID controller based rate control algorithm"
Adrian Bunke5f5e732008-06-26 13:38:13 +030056 depends on MAC80211_RC_PID
Stefano Brivioc21b39a2007-12-19 01:26:16 +010057 ---help---
58 Select the PID controller based rate control as the
59 default rate control algorithm. You should choose
60 this unless you know what you are doing.
61
Felix Fietkaucccf1292008-10-05 18:07:45 +020062config MAC80211_RC_DEFAULT_MINSTREL
63 bool "Minstrel"
64 depends on MAC80211_RC_MINSTREL
65 ---help---
66 Select Minstrel as the default rate control algorithm.
67
68
Stefano Brivioc21b39a2007-12-19 01:26:16 +010069endchoice
70
71config MAC80211_RC_DEFAULT
72 string
Helmut Schaa92b50c42010-06-30 08:48:42 +020073 default "minstrel_ht" if MAC80211_RC_DEFAULT_MINSTREL && MAC80211_RC_MINSTREL_HT
Felix Fietkaucccf1292008-10-05 18:07:45 +020074 default "minstrel" if MAC80211_RC_DEFAULT_MINSTREL
Luis R. Rodriguez8eb41c92008-11-14 17:44:53 -080075 default "pid" if MAC80211_RC_DEFAULT_PID
Stefano Brivioc21b39a2007-12-19 01:26:16 +010076 default ""
77
Luis R. Rodriguezabd8ea22009-09-01 08:22:46 -070078endif
Mattias Nisslerad018372007-12-19 01:25:57 +010079
Andres Salomonc2ef3552010-02-25 19:18:47 -050080comment "Some wireless drivers require a rate control algorithm"
81 depends on MAC80211_HAS_RC=n
82
Johannes Berg2f5ce792008-02-23 15:17:21 +010083config MAC80211_MESH
84 bool "Enable mac80211 mesh networking (pre-802.11s) support"
Luis Carlos Cobo37659ff2008-02-29 12:13:38 -080085 depends on MAC80211 && EXPERIMENTAL
Johannes Berg2f5ce792008-02-23 15:17:21 +010086 ---help---
Johannes Berg5c142e82008-02-25 10:13:31 +010087 This options enables support of Draft 802.11s mesh networking.
Javier Cardona18889232009-08-10 12:15:52 -070088 The implementation is based on Draft 2.08 of the Mesh Networking
89 amendment. However, no compliance with that draft is claimed or even
90 possible, as drafts leave a number of identifiers to be defined after
91 ratification. For more information visit http://o11s.org/.
Johannes Berg2f5ce792008-02-23 15:17:21 +010092
Jiri Bencf0706e82007-05-05 11:45:53 -070093config MAC80211_LEDS
94 bool "Enable LED triggers"
Luca Tettamantibd8fd212008-04-27 15:34:55 -070095 depends on MAC80211
Johannes Berg0bae35e2010-12-02 14:31:14 -080096 depends on LEDS_CLASS
Luca Tettamantibd8fd212008-04-27 15:34:55 -070097 select LEDS_TRIGGERS
Jiri Bencf0706e82007-05-05 11:45:53 -070098 ---help---
John W. Linvillec40896d2007-12-21 00:44:59 -050099 This option enables a few LED triggers for different
100 packet receive/transmit events.
Jiri Bencf0706e82007-05-05 11:45:53 -0700101
Jiri Bence9f207f2007-05-05 11:46:38 -0700102config MAC80211_DEBUGFS
103 bool "Export mac80211 internals in DebugFS"
104 depends on MAC80211 && DEBUG_FS
105 ---help---
106 Select this to see extensive information about
107 the internal state of mac80211 in debugfs.
108
109 Say N unless you know you need this.
110
Johannes Bergf4ea83d2008-06-30 15:10:46 +0200111menuconfig MAC80211_DEBUG_MENU
112 bool "Select mac80211 debugging features"
113 depends on MAC80211
114 ---help---
115 This option collects various mac80211 debug settings.
116
Johannes Bergf4ea83d2008-06-30 15:10:46 +0200117config MAC80211_NOINLINE
118 bool "Do not inline TX/RX handlers"
119 depends on MAC80211_DEBUG_MENU
Jiri Bencf0706e82007-05-05 11:45:53 -0700120 ---help---
Johannes Bergf4ea83d2008-06-30 15:10:46 +0200121 This option affects code generation in mac80211, when
122 selected some functions are marked "noinline" to allow
123 easier debugging of problems in the transmit and receive
124 paths.
Jiri Bencf0706e82007-05-05 11:45:53 -0700125
Johannes Bergf4ea83d2008-06-30 15:10:46 +0200126 This option increases code size a bit and inserts a lot
127 of function calls in the code, but is otherwise safe to
128 enable.
129
130 If unsure, say N unless you expect to be finding problems
131 in mac80211.
132
133config MAC80211_VERBOSE_DEBUG
134 bool "Verbose debugging output"
135 depends on MAC80211_DEBUG_MENU
136 ---help---
137 Selecting this option causes mac80211 to print out
138 many debugging messages. It should not be selected
139 on production systems as some of the messages are
140 remotely triggerable.
141
142 Do not select this option.
Jiri Bencf0706e82007-05-05 11:45:53 -0700143
Ron Rindjunsky82b3cad2007-12-16 16:09:26 -0800144config MAC80211_HT_DEBUG
Johannes Bergf4ea83d2008-06-30 15:10:46 +0200145 bool "Verbose HT debugging"
146 depends on MAC80211_DEBUG_MENU
John W. Linvillec40896d2007-12-21 00:44:59 -0500147 ---help---
148 This option enables 802.11n High Throughput features
149 debug tracing output.
Ron Rindjunsky82b3cad2007-12-16 16:09:26 -0800150
Johannes Bergf4ea83d2008-06-30 15:10:46 +0200151 It should not be selected on production systems as some
152 of the messages are remotely triggerable.
Ron Rindjunsky82b3cad2007-12-16 16:09:26 -0800153
Johannes Bergf4ea83d2008-06-30 15:10:46 +0200154 Do not select this option.
155
156config MAC80211_TKIP_DEBUG
157 bool "Verbose TKIP debugging"
158 depends on MAC80211_DEBUG_MENU
159 ---help---
160 Selecting this option causes mac80211 to print out
161 very verbose TKIP debugging messages. It should not
162 be selected on production systems as those messages
163 are remotely triggerable.
164
165 Do not select this option.
166
167config MAC80211_IBSS_DEBUG
168 bool "Verbose IBSS debugging"
169 depends on MAC80211_DEBUG_MENU
170 ---help---
171 Selecting this option causes mac80211 to print out
172 very verbose IBSS debugging messages. It should not
173 be selected on production systems as those messages
174 are remotely triggerable.
175
176 Do not select this option.
177
178config MAC80211_VERBOSE_PS_DEBUG
179 bool "Verbose powersave mode debugging"
180 depends on MAC80211_DEBUG_MENU
181 ---help---
182 Selecting this option causes mac80211 to print out very
183 verbose power save mode debugging messages (when mac80211
184 is an AP and has power saving stations.)
185 It should not be selected on production systems as those
186 messages are remotely triggerable.
187
188 Do not select this option.
189
190config MAC80211_VERBOSE_MPL_DEBUG
191 bool "Verbose mesh peer link debugging"
192 depends on MAC80211_DEBUG_MENU
193 depends on MAC80211_MESH
194 ---help---
195 Selecting this option causes mac80211 to print out very
196 verbose mesh peer link debugging messages (when mac80211
197 is taking part in a mesh network).
198 It should not be selected on production systems as those
199 messages are remotely triggerable.
200
201 Do not select this option.
Jiri Bencf0706e82007-05-05 11:45:53 -0700202
Rui Paulo27db2e42009-11-09 23:46:45 +0000203config MAC80211_VERBOSE_MHWMP_DEBUG
204 bool "Verbose mesh HWMP routing debugging"
205 depends on MAC80211_DEBUG_MENU
206 depends on MAC80211_MESH
207 ---help---
208 Selecting this option causes mac80211 to print out very
209 verbose mesh routing (HWMP) debugging messages (when mac80211
210 is taking part in a mesh network).
211 It should not be selected on production systems as those
212 messages are remotely triggerable.
213
214 Do not select this option.
215
Jiri Bencf0706e82007-05-05 11:45:53 -0700216config MAC80211_DEBUG_COUNTERS
217 bool "Extra statistics for TX/RX debugging"
Johannes Bergf4ea83d2008-06-30 15:10:46 +0200218 depends on MAC80211_DEBUG_MENU
219 depends on MAC80211_DEBUGFS
Jiri Bencf0706e82007-05-05 11:45:53 -0700220 ---help---
Johannes Bergf4ea83d2008-06-30 15:10:46 +0200221 Selecting this option causes mac80211 to keep additional
222 and very verbose statistics about TX and RX handler use
223 and show them in debugfs.
Jiri Bencf0706e82007-05-05 11:45:53 -0700224
Johannes Bergf4ea83d2008-06-30 15:10:46 +0200225 If unsure, say N.
Johannes Berg0a2b8bb2009-07-07 13:46:22 +0200226
227config MAC80211_DRIVER_API_TRACER
228 bool "Driver API tracer"
229 depends on MAC80211_DEBUG_MENU
230 depends on EVENT_TRACING
231 help
232 Say Y here to make mac80211 register with the ftrace
Johannes Bergb5878a22010-04-07 16:48:40 +0200233 framework for the driver API -- you can then see which
234 driver methods it is calling and which API functions
235 drivers are calling by looking at the trace.
Johannes Berg0a2b8bb2009-07-07 13:46:22 +0200236
Johannes Bergb5878a22010-04-07 16:48:40 +0200237 If unsure, say Y.