Merge branch 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jgarzi...
[linux-2.6/next.git] / net / mac80211 / Kconfig
blobf5fdfcbf552a100d45e703455ed07145789e36bc
1 config MAC80211
2         tristate "Generic IEEE 802.11 Networking Stack (mac80211)"
3         depends on CFG80211
4         select CRYPTO
5         select CRYPTO_ARC4
6         select CRYPTO_AES
7         select CRC32
8         select AVERAGE
9         ---help---
10           This option enables the hardware independent IEEE 802.11
11           networking stack.
13 comment "CFG80211 needs to be enabled for MAC80211"
14         depends on CFG80211=n
16 if MAC80211 != n
18 config MAC80211_HAS_RC
19         bool
21 config MAC80211_RC_PID
22         bool "PID controller based rate control algorithm" if EXPERT
23         select MAC80211_HAS_RC
24         ---help---
25           This option enables a TX rate control algorithm for
26           mac80211 that uses a PID controller to select the TX
27           rate.
29 config MAC80211_RC_MINSTREL
30         bool "Minstrel" if EXPERT
31         select MAC80211_HAS_RC
32         default y
33         ---help---
34           This option enables the 'minstrel' TX rate control algorithm
36 config MAC80211_RC_MINSTREL_HT
37         bool "Minstrel 802.11n support" if EXPERT
38         depends on MAC80211_RC_MINSTREL
39         default y
40         ---help---
41           This option enables the 'minstrel_ht' TX rate control algorithm
43 choice
44         prompt "Default rate control algorithm"
45         depends on MAC80211_HAS_RC
46         default MAC80211_RC_DEFAULT_MINSTREL
47         ---help---
48           This option selects the default rate control algorithm
49           mac80211 will use. Note that this default can still be
50           overridden through the ieee80211_default_rc_algo module
51           parameter if different algorithms are available.
53 config MAC80211_RC_DEFAULT_PID
54         bool "PID controller based rate control algorithm"
55         depends on MAC80211_RC_PID
56         ---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.
61 config MAC80211_RC_DEFAULT_MINSTREL
62         bool "Minstrel"
63         depends on MAC80211_RC_MINSTREL
64         ---help---
65           Select Minstrel as the default rate control algorithm.
68 endchoice
70 config MAC80211_RC_DEFAULT
71         string
72         default "minstrel_ht" if MAC80211_RC_DEFAULT_MINSTREL && MAC80211_RC_MINSTREL_HT
73         default "minstrel" if MAC80211_RC_DEFAULT_MINSTREL
74         default "pid" if MAC80211_RC_DEFAULT_PID
75         default ""
77 endif
79 comment "Some wireless drivers require a rate control algorithm"
80         depends on MAC80211 && MAC80211_HAS_RC=n
82 config MAC80211_MESH
83         bool "Enable mac80211 mesh networking (pre-802.11s) support"
84         depends on MAC80211 && EXPERIMENTAL
85         ---help---
86          This options enables support of Draft 802.11s mesh networking.
87          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/.
92 config MAC80211_LEDS
93         bool "Enable LED triggers"
94         depends on MAC80211
95         depends on LEDS_CLASS
96         select LEDS_TRIGGERS
97         ---help---
98           This option enables a few LED triggers for different
99           packet receive/transmit events.
101 config 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.
108           Say N unless you know you need this.
110 menuconfig MAC80211_DEBUG_MENU
111         bool "Select mac80211 debugging features"
112         depends on MAC80211
113         ---help---
114           This option collects various mac80211 debug settings.
116 config MAC80211_NOINLINE
117         bool "Do not inline TX/RX handlers"
118         depends on MAC80211_DEBUG_MENU
119         ---help---
120           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.
125           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.
129           If unsure, say N unless you expect to be finding problems
130           in mac80211.
132 config 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.
141           Do not select this option.
143 config MAC80211_HT_DEBUG
144         bool "Verbose HT debugging"
145         depends on MAC80211_DEBUG_MENU
146         ---help---
147           This option enables 802.11n High Throughput features
148           debug tracing output.
150           It should not be selected on production systems as some
151           of the messages are remotely triggerable.
153           Do not select this option.
155 config 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.
164           Do not select this option.
166 config 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.
175           Do not select this option.
177 config 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.
187           Do not select this option.
189 config 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.
200           Do not select this option.
202 config 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.
213           Do not select this option.
215 config MAC80211_DEBUG_COUNTERS
216         bool "Extra statistics for TX/RX debugging"
217         depends on MAC80211_DEBUG_MENU
218         depends on MAC80211_DEBUGFS
219         ---help---
220           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.
224           If unsure, say N.
226 config 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
232           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.
236           If unsure, say Y.