Revert "net/sched: flower: Fix wrong handle assignment during filter change"
[linux-block.git] / net / mac80211 / Kconfig
CommitLineData
ec8f24b7 1# SPDX-License-Identifier: GPL-2.0-only
f0706e82
JB
2config MAC80211
3 tristate "Generic IEEE 802.11 Networking Stack (mac80211)"
0aa8204b 4 depends on CFG80211
f0706e82 5 select CRYPTO
5fdb3735 6 select CRYPTO_LIB_ARC4
f0706e82 7 select CRYPTO_AES
7ec7c4a9 8 select CRYPTO_CCM
00b9cfa3 9 select CRYPTO_GCM
fe8de3da 10 select CRYPTO_CMAC
f0706e82 11 select CRC32
a7f7f624 12 help
c40896de
JL
13 This option enables the hardware independent IEEE 802.11
14 networking stack.
f0706e82 15
0aa8204b
JB
16comment "CFG80211 needs to be enabled for MAC80211"
17 depends on CFG80211=n
18
abd8ea22 19if MAC80211 != n
c21b39ac 20
c2ef355b 21config MAC80211_HAS_RC
540005c7 22 bool
c2ef355b 23
cccf129f 24config MAC80211_RC_MINSTREL
6a108a14 25 bool "Minstrel" if EXPERT
c2ef355b 26 select MAC80211_HAS_RC
8eb41c93 27 default y
a7f7f624 28 help
cccf129f
FF
29 This option enables the 'minstrel' TX rate control algorithm
30
c21b39ac
SB
31choice
32 prompt "Default rate control algorithm"
c2ef355b 33 depends on MAC80211_HAS_RC
8eb41c93 34 default MAC80211_RC_DEFAULT_MINSTREL
a7f7f624 35 help
c21b39ac
SB
36 This option selects the default rate control algorithm
37 mac80211 will use. Note that this default can still be
692105b8 38 overridden through the ieee80211_default_rc_algo module
4b475898 39 parameter if different algorithms are available.
c21b39ac 40
cccf129f
FF
41config MAC80211_RC_DEFAULT_MINSTREL
42 bool "Minstrel"
43 depends on MAC80211_RC_MINSTREL
a7f7f624 44 help
cccf129f
FF
45 Select Minstrel as the default rate control algorithm.
46
47
c21b39ac 48endchoice
ac71c691 49
c21b39ac
SB
50config MAC80211_RC_DEFAULT
51 string
b1c4f683 52 default "minstrel_ht" if MAC80211_RC_DEFAULT_MINSTREL
c21b39ac
SB
53 default ""
54
abd8ea22 55endif
ad018375 56
c2ef355b 57comment "Some wireless drivers require a rate control algorithm"
e46395a4 58 depends on MAC80211 && MAC80211_HAS_RC=n
c2ef355b 59
2f5ce793 60config MAC80211_MESH
c8d10cbd 61 bool "Enable mac80211 mesh networking support"
48f6edce 62 depends on MAC80211
a7f7f624 63 help
c8d10cbd
BC
64 Select this option to enable 802.11 mesh operation in mac80211
65 drivers that support it. 802.11 mesh connects multiple stations
66 over (possibly multi-hop) wireless links to form a single logical
67 LAN.
2f5ce793 68
f0706e82
JB
69config MAC80211_LEDS
70 bool "Enable LED triggers"
bd8fd21d 71 depends on MAC80211
b64acb28 72 depends on LEDS_CLASS=y || LEDS_CLASS=MAC80211
bd8fd21d 73 select LEDS_TRIGGERS
a7f7f624 74 help
c40896de
JL
75 This option enables a few LED triggers for different
76 packet receive/transmit events.
f0706e82 77
e9f207f0
JB
78config MAC80211_DEBUGFS
79 bool "Export mac80211 internals in DebugFS"
80 depends on MAC80211 && DEBUG_FS
a7f7f624 81 help
e9f207f0
JB
82 Select this to see extensive information about
83 the internal state of mac80211 in debugfs.
84
85 Say N unless you know you need this.
86
3fae0273
JB
87config MAC80211_MESSAGE_TRACING
88 bool "Trace all mac80211 debug messages"
89 depends on MAC80211
a7f7f624 90 help
3fae0273
JB
91 Select this option to have mac80211 register the
92 mac80211_msg trace subsystem with tracepoints to
93 collect all debugging messages, independent of
94 printing them into the kernel log.
95
96 The overhead in this option is that all the messages
97 need to be present in the binary and formatted at
98 runtime for tracing.
99
f4ea83dd
JB
100menuconfig MAC80211_DEBUG_MENU
101 bool "Select mac80211 debugging features"
102 depends on MAC80211
a7f7f624 103 help
f4ea83dd
JB
104 This option collects various mac80211 debug settings.
105
f4ea83dd
JB
106config MAC80211_NOINLINE
107 bool "Do not inline TX/RX handlers"
108 depends on MAC80211_DEBUG_MENU
a7f7f624 109 help
f4ea83dd
JB
110 This option affects code generation in mac80211, when
111 selected some functions are marked "noinline" to allow
112 easier debugging of problems in the transmit and receive
113 paths.
114
115 This option increases code size a bit and inserts a lot
116 of function calls in the code, but is otherwise safe to
117 enable.
f0706e82 118
f4ea83dd
JB
119 If unsure, say N unless you expect to be finding problems
120 in mac80211.
121
122config MAC80211_VERBOSE_DEBUG
123 bool "Verbose debugging output"
124 depends on MAC80211_DEBUG_MENU
a7f7f624 125 help
f4ea83dd
JB
126 Selecting this option causes mac80211 to print out
127 many debugging messages. It should not be selected
128 on production systems as some of the messages are
129 remotely triggerable.
130
131 Do not select this option.
82b3cad9 132
bdcbd8e0
JB
133config MAC80211_MLME_DEBUG
134 bool "Verbose managed MLME output"
135 depends on MAC80211_DEBUG_MENU
a7f7f624 136 help
bdcbd8e0
JB
137 Selecting this option causes mac80211 to print out
138 debugging messages for the managed-mode MLME. It
139 should not be selected on production systems as some
140 of the messages are remotely triggerable.
141
142 Do not select this option.
143
144config MAC80211_STA_DEBUG
145 bool "Verbose station debugging"
146 depends on MAC80211_DEBUG_MENU
a7f7f624 147 help
bdcbd8e0
JB
148 Selecting this option causes mac80211 to print out
149 debugging messages for station addition/removal.
150
151 Do not select this option.
152
82b3cad9 153config MAC80211_HT_DEBUG
f4ea83dd
JB
154 bool "Verbose HT debugging"
155 depends on MAC80211_DEBUG_MENU
a7f7f624 156 help
c40896de
JL
157 This option enables 802.11n High Throughput features
158 debug tracing output.
159
f4ea83dd
JB
160 It should not be selected on production systems as some
161 of the messages are remotely triggerable.
f0706e82 162
f4ea83dd
JB
163 Do not select this option.
164
239281f8
RL
165config MAC80211_OCB_DEBUG
166 bool "Verbose OCB debugging"
167 depends on MAC80211_DEBUG_MENU
a7f7f624 168 help
239281f8
RL
169 Selecting this option causes mac80211 to print out
170 very verbose OCB debugging messages. It should not
171 be selected on production systems as those messages
172 are remotely triggerable.
173
174 Do not select this option.
175
f4ea83dd
JB
176config MAC80211_IBSS_DEBUG
177 bool "Verbose IBSS debugging"
178 depends on MAC80211_DEBUG_MENU
a7f7f624 179 help
f4ea83dd
JB
180 Selecting this option causes mac80211 to print out
181 very verbose IBSS debugging messages. It should not
182 be selected on production systems as those messages
183 are remotely triggerable.
184
185 Do not select this option.
186
bdcbd8e0 187config MAC80211_PS_DEBUG
f4ea83dd
JB
188 bool "Verbose powersave mode debugging"
189 depends on MAC80211_DEBUG_MENU
a7f7f624 190 help
f4ea83dd
JB
191 Selecting this option causes mac80211 to print out very
192 verbose power save mode debugging messages (when mac80211
193 is an AP and has power saving stations.)
194 It should not be selected on production systems as those
195 messages are remotely triggerable.
196
197 Do not select this option.
198
bdcbd8e0 199config MAC80211_MPL_DEBUG
f4ea83dd
JB
200 bool "Verbose mesh peer link debugging"
201 depends on MAC80211_DEBUG_MENU
202 depends on MAC80211_MESH
a7f7f624 203 help
f4ea83dd
JB
204 Selecting this option causes mac80211 to print out very
205 verbose mesh peer link debugging messages (when mac80211
206 is taking part in a mesh network).
207 It should not be selected on production systems as those
208 messages are remotely triggerable.
209
210 Do not select this option.
f0706e82 211
bdcbd8e0 212config MAC80211_MPATH_DEBUG
7646887a
JC
213 bool "Verbose mesh path debugging"
214 depends on MAC80211_DEBUG_MENU
215 depends on MAC80211_MESH
a7f7f624 216 help
7646887a
JC
217 Selecting this option causes mac80211 to print out very
218 verbose mesh path selection debugging messages (when mac80211
219 is taking part in a mesh network).
220 It should not be selected on production systems as those
221 messages are remotely triggerable.
222
223 Do not select this option.
224
bdcbd8e0 225config MAC80211_MHWMP_DEBUG
27db2e42
RP
226 bool "Verbose mesh HWMP routing debugging"
227 depends on MAC80211_DEBUG_MENU
228 depends on MAC80211_MESH
a7f7f624 229 help
27db2e42
RP
230 Selecting this option causes mac80211 to print out very
231 verbose mesh routing (HWMP) debugging messages (when mac80211
232 is taking part in a mesh network).
233 It should not be selected on production systems as those
234 messages are remotely triggerable.
235
236 Do not select this option.
237
bdcbd8e0 238config MAC80211_MESH_SYNC_DEBUG
f53c6a0d 239 bool "Verbose mesh synchronization debugging"
dbf498fb
JC
240 depends on MAC80211_DEBUG_MENU
241 depends on MAC80211_MESH
a7f7f624 242 help
dbf498fb
JC
243 Selecting this option causes mac80211 to print out very verbose mesh
244 synchronization debugging messages (when mac80211 is taking part in a
245 mesh network).
246
247 Do not select this option.
8f2535b9
CYY
248
249config MAC80211_MESH_CSA_DEBUG
250 bool "Verbose mesh channel switch debugging"
251 depends on MAC80211_DEBUG_MENU
252 depends on MAC80211_MESH
a7f7f624 253 help
8f2535b9
CYY
254 Selecting this option causes mac80211 to print out very verbose mesh
255 channel switch debugging messages (when mac80211 is taking part in a
256 mesh network).
257
258 Do not select this option.
dbf498fb 259
3f52b7e3
MP
260config MAC80211_MESH_PS_DEBUG
261 bool "Verbose mesh powersave debugging"
262 depends on MAC80211_DEBUG_MENU
263 depends on MAC80211_MESH
a7f7f624 264 help
3f52b7e3
MP
265 Selecting this option causes mac80211 to print out very verbose mesh
266 powersave debugging messages (when mac80211 is taking part in a
267 mesh network).
268
269 Do not select this option.
270
bdcbd8e0 271config MAC80211_TDLS_DEBUG
dfe018bf
AN
272 bool "Verbose TDLS debugging"
273 depends on MAC80211_DEBUG_MENU
a7f7f624 274 help
dfe018bf
AN
275 Selecting this option causes mac80211 to print out very
276 verbose TDLS selection debugging messages (when mac80211
277 is a TDLS STA).
278 It should not be selected on production systems as those
279 messages are remotely triggerable.
280
281 Do not select this option.
282
f0706e82
JB
283config MAC80211_DEBUG_COUNTERS
284 bool "Extra statistics for TX/RX debugging"
f4ea83dd
JB
285 depends on MAC80211_DEBUG_MENU
286 depends on MAC80211_DEBUGFS
a7f7f624 287 help
f4ea83dd
JB
288 Selecting this option causes mac80211 to keep additional
289 and very verbose statistics about TX and RX handler use
c206ca67
JB
290 as well as a few selected dot11 counters. These will be
291 exposed in debugfs.
292
293 Note that some of the counters are not concurrency safe
294 and may thus not always be accurate.
2f5ce793 295
f4ea83dd 296 If unsure, say N.
ebd82b39
JB
297
298config MAC80211_STA_HASH_MAX_SIZE
299 int "Station hash table maximum size" if MAC80211_DEBUG_MENU
300 default 0
a7f7f624 301 help
ebd82b39
JB
302 Setting this option to a low value (e.g. 4) allows testing the
303 hash table with collisions relatively deterministically (just
304 connect more stations than the number selected here.)
305
306 If unsure, leave the default of 0.