blob: 4d6f8653ec8819a7e69cdb9cb447b77c1e7e7047 [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
Jiri Bencf0706e82007-05-05 11:45:53 -07009 ---help---
John W. Linvillec40896d2007-12-21 00:44:59 -050010 This option enables the hardware independent IEEE 802.11
11 networking stack.
Jiri Bencf0706e82007-05-05 11:45:53 -070012
Johannes Berg0aa82042009-06-03 18:30:31 +020013comment "CFG80211 needs to be enabled for MAC80211"
14 depends on CFG80211=n
15
Luis R. Rodriguezabd8ea22009-09-01 08:22:46 -070016if MAC80211 != n
Johannes Bergac71c692007-10-28 14:17:44 +010017
Andres Salomonc2ef3552010-02-25 19:18:47 -050018config MAC80211_HAS_RC
19 def_bool n
20
Adrian Bunke5f5e732008-06-26 13:38:13 +030021config MAC80211_RC_PID
22 bool "PID controller based rate control algorithm" if EMBEDDED
Andres Salomonc2ef3552010-02-25 19:18:47 -050023 select MAC80211_HAS_RC
Adrian Bunke5f5e732008-06-26 13:38:13 +030024 ---help---
25 This option enables a TX rate control algorithm for
26 mac80211 that uses a PID controller to select the TX
27 rate.
28
Felix Fietkaucccf1292008-10-05 18:07:45 +020029config MAC80211_RC_MINSTREL
Luis R. Rodriguez8eb41c92008-11-14 17:44:53 -080030 bool "Minstrel" if EMBEDDED
Andres Salomonc2ef3552010-02-25 19:18:47 -050031 select MAC80211_HAS_RC
Luis R. Rodriguez8eb41c92008-11-14 17:44:53 -080032 default y
Felix Fietkaucccf1292008-10-05 18:07:45 +020033 ---help---
34 This option enables the 'minstrel' TX rate control algorithm
35
Felix Fietkauec8aa662010-05-13 16:48:03 +020036config MAC80211_RC_MINSTREL_HT
37 bool "Minstrel 802.11n support" if EMBEDDED
38 depends on MAC80211_RC_MINSTREL
39 default y
40 ---help---
41 This option enables the 'minstrel_ht' TX rate control algorithm
42
Stefano Brivioc21b39a2007-12-19 01:26:16 +010043choice
44 prompt "Default rate control algorithm"
Andres Salomonc2ef3552010-02-25 19:18:47 -050045 depends on MAC80211_HAS_RC
Luis R. Rodriguez8eb41c92008-11-14 17:44:53 -080046 default MAC80211_RC_DEFAULT_MINSTREL
Stefano Brivioc21b39a2007-12-19 01:26:16 +010047 ---help---
48 This option selects the default rate control algorithm
49 mac80211 will use. Note that this default can still be
Matt LaPlante692105b2009-01-26 11:12:25 +010050 overridden through the ieee80211_default_rc_algo module
Johannes Berg4b475892008-01-02 15:17:03 +010051 parameter if different algorithms are available.
Johannes Bergac71c692007-10-28 14:17:44 +010052
Stefano Brivioc21b39a2007-12-19 01:26:16 +010053config MAC80211_RC_DEFAULT_PID
54 bool "PID controller based rate control algorithm"
Adrian Bunke5f5e732008-06-26 13:38:13 +030055 depends on MAC80211_RC_PID
Stefano Brivioc21b39a2007-12-19 01:26:16 +010056 ---help---
57 Select the PID controller based rate control as the
58 default rate control algorithm. You should choose
59 this unless you know what you are doing.
60
Felix Fietkaucccf1292008-10-05 18:07:45 +020061config MAC80211_RC_DEFAULT_MINSTREL
62 bool "Minstrel"
63 depends on MAC80211_RC_MINSTREL
64 ---help---
65 Select Minstrel as the default rate control algorithm.
66
67
Stefano Brivioc21b39a2007-12-19 01:26:16 +010068endchoice
69
70config MAC80211_RC_DEFAULT
71 string
Helmut Schaa92b50c42010-06-30 08:48:42 +020072 default "minstrel_ht" if MAC80211_RC_DEFAULT_MINSTREL && MAC80211_RC_MINSTREL_HT
Felix Fietkaucccf1292008-10-05 18:07:45 +020073 default "minstrel" if MAC80211_RC_DEFAULT_MINSTREL
Luis R. Rodriguez8eb41c92008-11-14 17:44:53 -080074 default "pid" if MAC80211_RC_DEFAULT_PID
Stefano Brivioc21b39a2007-12-19 01:26:16 +010075 default ""
76
Luis R. Rodriguezabd8ea22009-09-01 08:22:46 -070077endif
Mattias Nisslerad018372007-12-19 01:25:57 +010078
Andres Salomonc2ef3552010-02-25 19:18:47 -050079comment "Some wireless drivers require a rate control algorithm"
80 depends on MAC80211_HAS_RC=n
81
Johannes Berg2f5ce792008-02-23 15:17:21 +010082config MAC80211_MESH
83 bool "Enable mac80211 mesh networking (pre-802.11s) support"
Luis Carlos Cobo37659ff2008-02-29 12:13:38 -080084 depends on MAC80211 && EXPERIMENTAL
Johannes Berg2f5ce792008-02-23 15:17:21 +010085 ---help---
Johannes Berg5c142e82008-02-25 10:13:31 +010086 This options enables support of Draft 802.11s mesh networking.
Javier Cardona18889232009-08-10 12:15:52 -070087 The implementation is based on Draft 2.08 of the Mesh Networking
88 amendment. However, no compliance with that draft is claimed or even
89 possible, as drafts leave a number of identifiers to be defined after
90 ratification. For more information visit http://o11s.org/.
Johannes Berg2f5ce792008-02-23 15:17:21 +010091
Jiri Bencf0706e82007-05-05 11:45:53 -070092config MAC80211_LEDS
93 bool "Enable LED triggers"
Luca Tettamantibd8fd212008-04-27 15:34:55 -070094 depends on MAC80211
95 select NEW_LEDS
96 select LEDS_TRIGGERS
Jiri Bencf0706e82007-05-05 11:45:53 -070097 ---help---
John W. Linvillec40896d2007-12-21 00:44:59 -050098 This option enables a few LED triggers for different
99 packet receive/transmit events.
Jiri Bencf0706e82007-05-05 11:45:53 -0700100
Jiri Bence9f207f2007-05-05 11:46:38 -0700101config MAC80211_DEBUGFS
102 bool "Export mac80211 internals in DebugFS"
103 depends on MAC80211 && DEBUG_FS
104 ---help---
105 Select this to see extensive information about
106 the internal state of mac80211 in debugfs.
107
108 Say N unless you know you need this.
109
Johannes Bergf4ea83d2008-06-30 15:10:46 +0200110menuconfig MAC80211_DEBUG_MENU
111 bool "Select mac80211 debugging features"
112 depends on MAC80211
113 ---help---
114 This option collects various mac80211 debug settings.
115
Johannes Bergf4ea83d2008-06-30 15:10:46 +0200116config MAC80211_NOINLINE
117 bool "Do not inline TX/RX handlers"
118 depends on MAC80211_DEBUG_MENU
Jiri Bencf0706e82007-05-05 11:45:53 -0700119 ---help---
Johannes Bergf4ea83d2008-06-30 15:10:46 +0200120 This option affects code generation in mac80211, when
121 selected some functions are marked "noinline" to allow
122 easier debugging of problems in the transmit and receive
123 paths.
Jiri Bencf0706e82007-05-05 11:45:53 -0700124
Johannes Bergf4ea83d2008-06-30 15:10:46 +0200125 This option increases code size a bit and inserts a lot
126 of function calls in the code, but is otherwise safe to
127 enable.
128
129 If unsure, say N unless you expect to be finding problems
130 in mac80211.
131
132config MAC80211_VERBOSE_DEBUG
133 bool "Verbose debugging output"
134 depends on MAC80211_DEBUG_MENU
135 ---help---
136 Selecting this option causes mac80211 to print out
137 many debugging messages. It should not be selected
138 on production systems as some of the messages are
139 remotely triggerable.
140
141 Do not select this option.
Jiri Bencf0706e82007-05-05 11:45:53 -0700142
Ron Rindjunsky82b3cad2007-12-16 16:09:26 -0800143config MAC80211_HT_DEBUG
Johannes Bergf4ea83d2008-06-30 15:10:46 +0200144 bool "Verbose HT debugging"
145 depends on MAC80211_DEBUG_MENU
John W. Linvillec40896d2007-12-21 00:44:59 -0500146 ---help---
147 This option enables 802.11n High Throughput features
148 debug tracing output.
Ron Rindjunsky82b3cad2007-12-16 16:09:26 -0800149
Johannes Bergf4ea83d2008-06-30 15:10:46 +0200150 It should not be selected on production systems as some
151 of the messages are remotely triggerable.
Ron Rindjunsky82b3cad2007-12-16 16:09:26 -0800152
Johannes Bergf4ea83d2008-06-30 15:10:46 +0200153 Do not select this option.
154
155config MAC80211_TKIP_DEBUG
156 bool "Verbose TKIP debugging"
157 depends on MAC80211_DEBUG_MENU
158 ---help---
159 Selecting this option causes mac80211 to print out
160 very verbose TKIP debugging messages. It should not
161 be selected on production systems as those messages
162 are remotely triggerable.
163
164 Do not select this option.
165
166config MAC80211_IBSS_DEBUG
167 bool "Verbose IBSS debugging"
168 depends on MAC80211_DEBUG_MENU
169 ---help---
170 Selecting this option causes mac80211 to print out
171 very verbose IBSS debugging messages. It should not
172 be selected on production systems as those messages
173 are remotely triggerable.
174
175 Do not select this option.
176
177config MAC80211_VERBOSE_PS_DEBUG
178 bool "Verbose powersave mode debugging"
179 depends on MAC80211_DEBUG_MENU
180 ---help---
181 Selecting this option causes mac80211 to print out very
182 verbose power save mode debugging messages (when mac80211
183 is an AP and has power saving stations.)
184 It should not be selected on production systems as those
185 messages are remotely triggerable.
186
187 Do not select this option.
188
189config MAC80211_VERBOSE_MPL_DEBUG
190 bool "Verbose mesh peer link debugging"
191 depends on MAC80211_DEBUG_MENU
192 depends on MAC80211_MESH
193 ---help---
194 Selecting this option causes mac80211 to print out very
195 verbose mesh peer link debugging messages (when mac80211
196 is taking part in a mesh network).
197 It should not be selected on production systems as those
198 messages are remotely triggerable.
199
200 Do not select this option.
Jiri Bencf0706e82007-05-05 11:45:53 -0700201
Rui Paulo27db2e42009-11-09 23:46:45 +0000202config MAC80211_VERBOSE_MHWMP_DEBUG
203 bool "Verbose mesh HWMP routing debugging"
204 depends on MAC80211_DEBUG_MENU
205 depends on MAC80211_MESH
206 ---help---
207 Selecting this option causes mac80211 to print out very
208 verbose mesh routing (HWMP) debugging messages (when mac80211
209 is taking part in a mesh network).
210 It should not be selected on production systems as those
211 messages are remotely triggerable.
212
213 Do not select this option.
214
Jiri Bencf0706e82007-05-05 11:45:53 -0700215config MAC80211_DEBUG_COUNTERS
216 bool "Extra statistics for TX/RX debugging"
Johannes Bergf4ea83d2008-06-30 15:10:46 +0200217 depends on MAC80211_DEBUG_MENU
218 depends on MAC80211_DEBUGFS
Jiri Bencf0706e82007-05-05 11:45:53 -0700219 ---help---
Johannes Bergf4ea83d2008-06-30 15:10:46 +0200220 Selecting this option causes mac80211 to keep additional
221 and very verbose statistics about TX and RX handler use
222 and show them in debugfs.
Jiri Bencf0706e82007-05-05 11:45:53 -0700223
Johannes Bergf4ea83d2008-06-30 15:10:46 +0200224 If unsure, say N.
Johannes Berg0a2b8bb2009-07-07 13:46:22 +0200225
226config MAC80211_DRIVER_API_TRACER
227 bool "Driver API tracer"
228 depends on MAC80211_DEBUG_MENU
229 depends on EVENT_TRACING
230 help
231 Say Y here to make mac80211 register with the ftrace
Johannes Bergb5878a22010-04-07 16:48:40 +0200232 framework for the driver API -- you can then see which
233 driver methods it is calling and which API functions
234 drivers are calling by looking at the trace.
Johannes Berg0a2b8bb2009-07-07 13:46:22 +0200235
Johannes Bergb5878a22010-04-07 16:48:40 +0200236 If unsure, say Y.