xref: /linux/net/mac80211/Kconfig (revision 6000fc4d6f3e55ad52cce8d76317187fe01af2aa)
1config 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
14comment "CFG80211 needs to be enabled for MAC80211"
15	depends on CFG80211=n
16
17config MAC80211_DEFAULT_PS
18	bool "enable powersave by default"
19	depends on MAC80211
20	default y
21	help
22	  This option enables powersave mode by default.
23
24	  If this causes your applications to misbehave you should fix your
25	  applications instead -- they need to register their network
26	  latency requirement, see Documentation/power/pm_qos_interface.txt.
27
28config MAC80211_DEFAULT_PS_VALUE
29	int
30	default 1 if MAC80211_DEFAULT_PS
31	default 0
32
33menu "Rate control algorithm selection"
34	depends on MAC80211 != n
35
36config MAC80211_RC_PID
37	bool "PID controller based rate control algorithm" if EMBEDDED
38	---help---
39	  This option enables a TX rate control algorithm for
40	  mac80211 that uses a PID controller to select the TX
41	  rate.
42
43config MAC80211_RC_MINSTREL
44	bool "Minstrel" if EMBEDDED
45	default y
46	---help---
47	  This option enables the 'minstrel' TX rate control algorithm
48
49choice
50	prompt "Default rate control algorithm"
51	default MAC80211_RC_DEFAULT_MINSTREL
52	---help---
53	  This option selects the default rate control algorithm
54	  mac80211 will use. Note that this default can still be
55	  overridden through the ieee80211_default_rc_algo module
56	  parameter if different algorithms are available.
57
58config MAC80211_RC_DEFAULT_PID
59	bool "PID controller based rate control algorithm"
60	depends on MAC80211_RC_PID
61	---help---
62	  Select the PID controller based rate control as the
63	  default rate control algorithm. You should choose
64	  this unless you know what you are doing.
65
66config MAC80211_RC_DEFAULT_MINSTREL
67	bool "Minstrel"
68	depends on MAC80211_RC_MINSTREL
69	---help---
70	  Select Minstrel as the default rate control algorithm.
71
72
73endchoice
74
75config MAC80211_RC_DEFAULT
76	string
77	default "minstrel" if MAC80211_RC_DEFAULT_MINSTREL
78	default "pid" if MAC80211_RC_DEFAULT_PID
79	default ""
80
81endmenu
82
83config MAC80211_MESH
84	bool "Enable mac80211 mesh networking (pre-802.11s) support"
85	depends on MAC80211 && EXPERIMENTAL
86	depends on BROKEN
87	---help---
88	 This options enables support of Draft 802.11s mesh networking.
89	 The implementation is based on Draft 1.08 of the Mesh Networking
90	 amendment. For more information visit http://o11s.org/.
91
92
93config MAC80211_LEDS
94	bool "Enable LED triggers"
95	depends on MAC80211
96	select NEW_LEDS
97	select LEDS_TRIGGERS
98	---help---
99	  This option enables a few LED triggers for different
100	  packet receive/transmit events.
101
102config 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
111menuconfig MAC80211_DEBUG_MENU
112	bool "Select mac80211 debugging features"
113	depends on MAC80211
114	---help---
115	  This option collects various mac80211 debug settings.
116
117config MAC80211_DEBUG_PACKET_ALIGNMENT
118	bool "Enable packet alignment debugging"
119	depends on MAC80211_DEBUG_MENU
120	---help---
121	  This option is recommended for driver authors and strongly
122	  discouraged for everybody else, it will trigger a warning
123	  when a driver hands mac80211 a buffer that is aligned in
124	  a way that will cause problems with the IP stack on some
125	  architectures.
126
127	  Say N unless you're writing a mac80211 based driver.
128
129config MAC80211_NOINLINE
130	bool "Do not inline TX/RX handlers"
131	depends on MAC80211_DEBUG_MENU
132	---help---
133	  This option affects code generation in mac80211, when
134	  selected some functions are marked "noinline" to allow
135	  easier debugging of problems in the transmit and receive
136	  paths.
137
138	  This option increases code size a bit and inserts a lot
139	  of function calls in the code, but is otherwise safe to
140	  enable.
141
142	  If unsure, say N unless you expect to be finding problems
143	  in mac80211.
144
145config MAC80211_VERBOSE_DEBUG
146	bool "Verbose debugging output"
147	depends on MAC80211_DEBUG_MENU
148	---help---
149	  Selecting this option causes mac80211 to print out
150	  many debugging messages. It should not be selected
151	  on production systems as some of the messages are
152	  remotely triggerable.
153
154	  Do not select this option.
155
156config MAC80211_HT_DEBUG
157	bool "Verbose HT debugging"
158	depends on MAC80211_DEBUG_MENU
159	---help---
160	  This option enables 802.11n High Throughput features
161	  debug tracing output.
162
163	  It should not be selected on production systems as some
164	  of the messages are remotely triggerable.
165
166	  Do not select this option.
167
168config MAC80211_TKIP_DEBUG
169	bool "Verbose TKIP debugging"
170	depends on MAC80211_DEBUG_MENU
171	---help---
172	  Selecting this option causes mac80211 to print out
173	  very verbose TKIP debugging messages. It should not
174	  be selected on production systems as those messages
175	  are remotely triggerable.
176
177	  Do not select this option.
178
179config MAC80211_IBSS_DEBUG
180	bool "Verbose IBSS debugging"
181	depends on MAC80211_DEBUG_MENU
182	---help---
183	  Selecting this option causes mac80211 to print out
184	  very verbose IBSS debugging messages. It should not
185	  be selected on production systems as those messages
186	  are remotely triggerable.
187
188	  Do not select this option.
189
190config MAC80211_VERBOSE_PS_DEBUG
191	bool "Verbose powersave mode debugging"
192	depends on MAC80211_DEBUG_MENU
193	---help---
194	  Selecting this option causes mac80211 to print out very
195	  verbose power save mode debugging messages (when mac80211
196	  is an AP and has power saving stations.)
197	  It should not be selected on production systems as those
198	  messages are remotely triggerable.
199
200	  Do not select this option.
201
202config MAC80211_VERBOSE_MPL_DEBUG
203	bool "Verbose mesh peer link 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 peer link 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
215config 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.
223
224	  If unsure, say N.
225