mac80211: driver operation debugging
[pandora-kernel.git] / net / mac80211 / Kconfig
1 config MAC80211
2         tristate "Generic IEEE 802.11 Networking Stack (mac80211)"
3         depends on CFG80211
4         select CRYPTO
5         select CRYPTO_ECB
6         select CRYPTO_ARC4
7         select CRYPTO_AES
8         select CRC32
9         select WIRELESS_EXT
10         ---help---
11           This option enables the hardware independent IEEE 802.11
12           networking stack.
13
14 comment "CFG80211 needs to be enabled for MAC80211"
15         depends on CFG80211=n
16
17 menu "Rate control algorithm selection"
18         depends on MAC80211 != n
19
20 config MAC80211_RC_PID
21         bool "PID controller based rate control algorithm" if EMBEDDED
22         ---help---
23           This option enables a TX rate control algorithm for
24           mac80211 that uses a PID controller to select the TX
25           rate.
26
27 config MAC80211_RC_MINSTREL
28         bool "Minstrel" if EMBEDDED
29         default y
30         ---help---
31           This option enables the 'minstrel' TX rate control algorithm
32
33 choice
34         prompt "Default rate control algorithm"
35         default MAC80211_RC_DEFAULT_MINSTREL
36         ---help---
37           This option selects the default rate control algorithm
38           mac80211 will use. Note that this default can still be
39           overridden through the ieee80211_default_rc_algo module
40           parameter if different algorithms are available.
41
42 config MAC80211_RC_DEFAULT_PID
43         bool "PID controller based rate control algorithm"
44         depends on MAC80211_RC_PID
45         ---help---
46           Select the PID controller based rate control as the
47           default rate control algorithm. You should choose
48           this unless you know what you are doing.
49
50 config MAC80211_RC_DEFAULT_MINSTREL
51         bool "Minstrel"
52         depends on MAC80211_RC_MINSTREL
53         ---help---
54           Select Minstrel as the default rate control algorithm.
55
56
57 endchoice
58
59 config MAC80211_RC_DEFAULT
60         string
61         default "minstrel" if MAC80211_RC_DEFAULT_MINSTREL
62         default "pid" if MAC80211_RC_DEFAULT_PID
63         default ""
64
65 endmenu
66
67 config MAC80211_MESH
68         bool "Enable mac80211 mesh networking (pre-802.11s) support"
69         depends on MAC80211 && EXPERIMENTAL
70         depends on BROKEN
71         ---help---
72          This options enables support of Draft 802.11s mesh networking.
73          The implementation is based on Draft 1.08 of the Mesh Networking
74          amendment. For more information visit http://o11s.org/.
75
76
77 config MAC80211_LEDS
78         bool "Enable LED triggers"
79         depends on MAC80211
80         select NEW_LEDS
81         select LEDS_TRIGGERS
82         ---help---
83           This option enables a few LED triggers for different
84           packet receive/transmit events.
85
86 config MAC80211_DEBUGFS
87         bool "Export mac80211 internals in DebugFS"
88         depends on MAC80211 && DEBUG_FS
89         ---help---
90           Select this to see extensive information about
91           the internal state of mac80211 in debugfs.
92
93           Say N unless you know you need this.
94
95 menuconfig MAC80211_DEBUG_MENU
96         bool "Select mac80211 debugging features"
97         depends on MAC80211
98         ---help---
99           This option collects various mac80211 debug settings.
100
101 config MAC80211_DEBUG_PACKET_ALIGNMENT
102         bool "Enable packet alignment debugging"
103         depends on MAC80211_DEBUG_MENU
104         ---help---
105           This option is recommended for driver authors and strongly
106           discouraged for everybody else, it will trigger a warning
107           when a driver hands mac80211 a buffer that is aligned in
108           a way that will cause problems with the IP stack on some
109           architectures.
110
111           Say N unless you're writing a mac80211 based driver.
112
113 config MAC80211_NOINLINE
114         bool "Do not inline TX/RX handlers"
115         depends on MAC80211_DEBUG_MENU
116         ---help---
117           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.
121
122           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
129 config 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.
139
140 config MAC80211_HT_DEBUG
141         bool "Verbose HT debugging"
142         depends on MAC80211_DEBUG_MENU
143         ---help---
144           This option enables 802.11n High Throughput features
145           debug tracing output.
146
147           It should not be selected on production systems as some
148           of the messages are remotely triggerable.
149
150           Do not select this option.
151
152 config MAC80211_TKIP_DEBUG
153         bool "Verbose TKIP debugging"
154         depends on MAC80211_DEBUG_MENU
155         ---help---
156           Selecting this option causes mac80211 to print out
157           very verbose TKIP debugging messages. It should not
158           be selected on production systems as those messages
159           are remotely triggerable.
160
161           Do not select this option.
162
163 config MAC80211_IBSS_DEBUG
164         bool "Verbose IBSS debugging"
165         depends on MAC80211_DEBUG_MENU
166         ---help---
167           Selecting this option causes mac80211 to print out
168           very verbose IBSS debugging messages. It should not
169           be selected on production systems as those messages
170           are remotely triggerable.
171
172           Do not select this option.
173
174 config MAC80211_VERBOSE_PS_DEBUG
175         bool "Verbose powersave mode debugging"
176         depends on MAC80211_DEBUG_MENU
177         ---help---
178           Selecting this option causes mac80211 to print out very
179           verbose power save mode debugging messages (when mac80211
180           is an AP and has power saving stations.)
181           It should not be selected on production systems as those
182           messages are remotely triggerable.
183
184           Do not select this option.
185
186 config MAC80211_VERBOSE_MPL_DEBUG
187         bool "Verbose mesh peer link debugging"
188         depends on MAC80211_DEBUG_MENU
189         depends on MAC80211_MESH
190         ---help---
191           Selecting this option causes mac80211 to print out very
192           verbose mesh peer link debugging messages (when mac80211
193           is taking part in a mesh network).
194           It should not be selected on production systems as those
195           messages are remotely triggerable.
196
197           Do not select this option.
198
199 config MAC80211_DEBUG_COUNTERS
200         bool "Extra statistics for TX/RX debugging"
201         depends on MAC80211_DEBUG_MENU
202         depends on MAC80211_DEBUGFS
203         ---help---
204           Selecting this option causes mac80211 to keep additional
205           and very verbose statistics about TX and RX handler use
206           and show them in debugfs.
207
208           If unsure, say N.
209
210 config MAC80211_DRIVER_API_TRACER
211         bool "Driver API tracer"
212         depends on MAC80211_DEBUG_MENU
213         depends on EVENT_TRACING
214         help
215           Say Y here to make mac80211 register with the ftrace
216           framework for the driver API -- you can see which
217           driver methods it is calling then by looking at the
218           trace.
219
220           If unsure, say N.