2019-05-19 15:07:45 +03:00
|
|
|
# SPDX-License-Identifier: GPL-2.0-only
|
2007-05-05 22:45:53 +04:00
|
|
|
config MAC80211
|
|
|
|
tristate "Generic IEEE 802.11 Networking Stack (mac80211)"
|
2009-06-03 20:30:31 +04:00
|
|
|
depends on CFG80211
|
2007-05-05 22:45:53 +04:00
|
|
|
select CRYPTO
|
2019-06-12 19:19:54 +03:00
|
|
|
select CRYPTO_LIB_ARC4
|
2007-05-05 22:45:53 +04:00
|
|
|
select CRYPTO_AES
|
2013-10-10 11:55:20 +04:00
|
|
|
select CRYPTO_CCM
|
2015-01-24 20:52:06 +03:00
|
|
|
select CRYPTO_GCM
|
2017-02-06 13:49:27 +03:00
|
|
|
select CRYPTO_CMAC
|
2007-05-05 22:45:53 +04:00
|
|
|
select CRC32
|
2020-06-13 19:50:22 +03:00
|
|
|
help
|
2007-12-21 08:44:59 +03:00
|
|
|
This option enables the hardware independent IEEE 802.11
|
|
|
|
networking stack.
|
2007-05-05 22:45:53 +04:00
|
|
|
|
2009-06-03 20:30:31 +04:00
|
|
|
comment "CFG80211 needs to be enabled for MAC80211"
|
|
|
|
depends on CFG80211=n
|
|
|
|
|
2009-09-01 19:22:46 +04:00
|
|
|
if MAC80211 != n
|
2007-12-19 03:26:16 +03:00
|
|
|
|
2010-02-26 03:18:47 +03:00
|
|
|
config MAC80211_HAS_RC
|
2011-02-17 16:36:19 +03:00
|
|
|
bool
|
2010-02-26 03:18:47 +03:00
|
|
|
|
2008-10-05 20:07:45 +04:00
|
|
|
config MAC80211_RC_MINSTREL
|
2011-01-21 01:44:16 +03:00
|
|
|
bool "Minstrel" if EXPERT
|
2010-02-26 03:18:47 +03:00
|
|
|
select MAC80211_HAS_RC
|
2008-11-15 04:44:53 +03:00
|
|
|
default y
|
2020-06-13 19:50:22 +03:00
|
|
|
help
|
2008-10-05 20:07:45 +04:00
|
|
|
This option enables the 'minstrel' TX rate control algorithm
|
|
|
|
|
2007-12-19 03:26:16 +03:00
|
|
|
choice
|
|
|
|
prompt "Default rate control algorithm"
|
2010-02-26 03:18:47 +03:00
|
|
|
depends on MAC80211_HAS_RC
|
2008-11-15 04:44:53 +03:00
|
|
|
default MAC80211_RC_DEFAULT_MINSTREL
|
2020-06-13 19:50:22 +03:00
|
|
|
help
|
2007-12-19 03:26:16 +03:00
|
|
|
This option selects the default rate control algorithm
|
|
|
|
mac80211 will use. Note that this default can still be
|
2009-01-26 13:12:25 +03:00
|
|
|
overridden through the ieee80211_default_rc_algo module
|
2008-01-02 17:17:03 +03:00
|
|
|
parameter if different algorithms are available.
|
2007-12-19 03:26:16 +03:00
|
|
|
|
2008-10-05 20:07:45 +04:00
|
|
|
config MAC80211_RC_DEFAULT_MINSTREL
|
|
|
|
bool "Minstrel"
|
|
|
|
depends on MAC80211_RC_MINSTREL
|
2020-06-13 19:50:22 +03:00
|
|
|
help
|
2008-10-05 20:07:45 +04:00
|
|
|
Select Minstrel as the default rate control algorithm.
|
|
|
|
|
|
|
|
|
2007-12-19 03:26:16 +03:00
|
|
|
endchoice
|
2007-10-28 16:17:44 +03:00
|
|
|
|
2007-12-19 03:26:16 +03:00
|
|
|
config MAC80211_RC_DEFAULT
|
|
|
|
string
|
2018-10-06 20:35:01 +03:00
|
|
|
default "minstrel_ht" if MAC80211_RC_DEFAULT_MINSTREL
|
2007-12-19 03:26:16 +03:00
|
|
|
default ""
|
|
|
|
|
2009-09-01 19:22:46 +04:00
|
|
|
endif
|
2007-12-19 03:25:57 +03:00
|
|
|
|
2010-02-26 03:18:47 +03:00
|
|
|
comment "Some wireless drivers require a rate control algorithm"
|
2011-03-01 19:18:26 +03:00
|
|
|
depends on MAC80211 && MAC80211_HAS_RC=n
|
2010-02-26 03:18:47 +03:00
|
|
|
|
2008-02-23 17:17:21 +03:00
|
|
|
config MAC80211_MESH
|
2018-12-04 18:22:00 +03:00
|
|
|
bool "Enable mac80211 mesh networking support"
|
2012-10-02 22:19:53 +04:00
|
|
|
depends on MAC80211
|
2020-06-13 19:50:22 +03:00
|
|
|
help
|
2018-12-04 18:22:00 +03:00
|
|
|
Select this option to enable 802.11 mesh operation in mac80211
|
|
|
|
drivers that support it. 802.11 mesh connects multiple stations
|
|
|
|
over (possibly multi-hop) wireless links to form a single logical
|
|
|
|
LAN.
|
2008-02-23 17:17:21 +03:00
|
|
|
|
2007-05-05 22:45:53 +04:00
|
|
|
config MAC80211_LEDS
|
|
|
|
bool "Enable LED triggers"
|
2008-04-28 02:34:55 +04:00
|
|
|
depends on MAC80211
|
2021-01-25 14:36:42 +03:00
|
|
|
depends on LEDS_CLASS=y || LEDS_CLASS=MAC80211
|
2008-04-28 02:34:55 +04:00
|
|
|
select LEDS_TRIGGERS
|
2020-06-13 19:50:22 +03:00
|
|
|
help
|
2007-12-21 08:44:59 +03:00
|
|
|
This option enables a few LED triggers for different
|
|
|
|
packet receive/transmit events.
|
2007-05-05 22:45:53 +04:00
|
|
|
|
2007-05-05 22:46:38 +04:00
|
|
|
config MAC80211_DEBUGFS
|
|
|
|
bool "Export mac80211 internals in DebugFS"
|
|
|
|
depends on MAC80211 && DEBUG_FS
|
2020-06-13 19:50:22 +03:00
|
|
|
help
|
2007-05-05 22:46:38 +04:00
|
|
|
Select this to see extensive information about
|
|
|
|
the internal state of mac80211 in debugfs.
|
|
|
|
|
|
|
|
Say N unless you know you need this.
|
|
|
|
|
2012-06-22 15:36:25 +04:00
|
|
|
config MAC80211_MESSAGE_TRACING
|
|
|
|
bool "Trace all mac80211 debug messages"
|
|
|
|
depends on MAC80211
|
2020-06-13 19:50:22 +03:00
|
|
|
help
|
2012-06-22 15:36:25 +04:00
|
|
|
Select this option to have mac80211 register the
|
|
|
|
mac80211_msg trace subsystem with tracepoints to
|
|
|
|
collect all debugging messages, independent of
|
|
|
|
printing them into the kernel log.
|
|
|
|
|
|
|
|
The overhead in this option is that all the messages
|
|
|
|
need to be present in the binary and formatted at
|
|
|
|
runtime for tracing.
|
|
|
|
|
2008-06-30 17:10:46 +04:00
|
|
|
menuconfig MAC80211_DEBUG_MENU
|
|
|
|
bool "Select mac80211 debugging features"
|
|
|
|
depends on MAC80211
|
2020-06-13 19:50:22 +03:00
|
|
|
help
|
2008-06-30 17:10:46 +04:00
|
|
|
This option collects various mac80211 debug settings.
|
|
|
|
|
|
|
|
config MAC80211_NOINLINE
|
|
|
|
bool "Do not inline TX/RX handlers"
|
|
|
|
depends on MAC80211_DEBUG_MENU
|
2020-06-13 19:50:22 +03:00
|
|
|
help
|
2008-06-30 17:10:46 +04:00
|
|
|
This option affects code generation in mac80211, when
|
|
|
|
selected some functions are marked "noinline" to allow
|
|
|
|
easier debugging of problems in the transmit and receive
|
|
|
|
paths.
|
|
|
|
|
|
|
|
This option increases code size a bit and inserts a lot
|
|
|
|
of function calls in the code, but is otherwise safe to
|
|
|
|
enable.
|
2007-05-05 22:45:53 +04:00
|
|
|
|
2008-06-30 17:10:46 +04:00
|
|
|
If unsure, say N unless you expect to be finding problems
|
|
|
|
in mac80211.
|
|
|
|
|
|
|
|
config MAC80211_VERBOSE_DEBUG
|
|
|
|
bool "Verbose debugging output"
|
|
|
|
depends on MAC80211_DEBUG_MENU
|
2020-06-13 19:50:22 +03:00
|
|
|
help
|
2008-06-30 17:10:46 +04:00
|
|
|
Selecting this option causes mac80211 to print out
|
|
|
|
many debugging messages. It should not be selected
|
|
|
|
on production systems as some of the messages are
|
|
|
|
remotely triggerable.
|
|
|
|
|
|
|
|
Do not select this option.
|
2007-12-17 03:09:26 +03:00
|
|
|
|
2012-06-22 13:29:50 +04:00
|
|
|
config MAC80211_MLME_DEBUG
|
|
|
|
bool "Verbose managed MLME output"
|
|
|
|
depends on MAC80211_DEBUG_MENU
|
2020-06-13 19:50:22 +03:00
|
|
|
help
|
2012-06-22 13:29:50 +04:00
|
|
|
Selecting this option causes mac80211 to print out
|
|
|
|
debugging messages for the managed-mode MLME. It
|
|
|
|
should not be selected on production systems as some
|
|
|
|
of the messages are remotely triggerable.
|
|
|
|
|
|
|
|
Do not select this option.
|
|
|
|
|
|
|
|
config MAC80211_STA_DEBUG
|
|
|
|
bool "Verbose station debugging"
|
|
|
|
depends on MAC80211_DEBUG_MENU
|
2020-06-13 19:50:22 +03:00
|
|
|
help
|
2012-06-22 13:29:50 +04:00
|
|
|
Selecting this option causes mac80211 to print out
|
|
|
|
debugging messages for station addition/removal.
|
|
|
|
|
|
|
|
Do not select this option.
|
|
|
|
|
2007-12-17 03:09:26 +03:00
|
|
|
config MAC80211_HT_DEBUG
|
2008-06-30 17:10:46 +04:00
|
|
|
bool "Verbose HT debugging"
|
|
|
|
depends on MAC80211_DEBUG_MENU
|
2020-06-13 19:50:22 +03:00
|
|
|
help
|
2007-12-21 08:44:59 +03:00
|
|
|
This option enables 802.11n High Throughput features
|
|
|
|
debug tracing output.
|
|
|
|
|
2008-06-30 17:10:46 +04:00
|
|
|
It should not be selected on production systems as some
|
|
|
|
of the messages are remotely triggerable.
|
2007-05-05 22:45:53 +04:00
|
|
|
|
2008-06-30 17:10:46 +04:00
|
|
|
Do not select this option.
|
|
|
|
|
2014-11-03 12:33:19 +03:00
|
|
|
config MAC80211_OCB_DEBUG
|
|
|
|
bool "Verbose OCB debugging"
|
|
|
|
depends on MAC80211_DEBUG_MENU
|
2020-06-13 19:50:22 +03:00
|
|
|
help
|
2014-11-03 12:33:19 +03:00
|
|
|
Selecting this option causes mac80211 to print out
|
|
|
|
very verbose OCB debugging messages. It should not
|
|
|
|
be selected on production systems as those messages
|
|
|
|
are remotely triggerable.
|
|
|
|
|
|
|
|
Do not select this option.
|
|
|
|
|
2008-06-30 17:10:46 +04:00
|
|
|
config MAC80211_IBSS_DEBUG
|
|
|
|
bool "Verbose IBSS debugging"
|
|
|
|
depends on MAC80211_DEBUG_MENU
|
2020-06-13 19:50:22 +03:00
|
|
|
help
|
2008-06-30 17:10:46 +04:00
|
|
|
Selecting this option causes mac80211 to print out
|
|
|
|
very verbose IBSS debugging messages. It should not
|
|
|
|
be selected on production systems as those messages
|
|
|
|
are remotely triggerable.
|
|
|
|
|
|
|
|
Do not select this option.
|
|
|
|
|
2012-06-22 13:29:50 +04:00
|
|
|
config MAC80211_PS_DEBUG
|
2008-06-30 17:10:46 +04:00
|
|
|
bool "Verbose powersave mode debugging"
|
|
|
|
depends on MAC80211_DEBUG_MENU
|
2020-06-13 19:50:22 +03:00
|
|
|
help
|
2008-06-30 17:10:46 +04:00
|
|
|
Selecting this option causes mac80211 to print out very
|
|
|
|
verbose power save mode debugging messages (when mac80211
|
|
|
|
is an AP and has power saving stations.)
|
|
|
|
It should not be selected on production systems as those
|
|
|
|
messages are remotely triggerable.
|
|
|
|
|
|
|
|
Do not select this option.
|
|
|
|
|
2012-06-22 13:29:50 +04:00
|
|
|
config MAC80211_MPL_DEBUG
|
2008-06-30 17:10:46 +04:00
|
|
|
bool "Verbose mesh peer link debugging"
|
|
|
|
depends on MAC80211_DEBUG_MENU
|
|
|
|
depends on MAC80211_MESH
|
2020-06-13 19:50:22 +03:00
|
|
|
help
|
2008-06-30 17:10:46 +04:00
|
|
|
Selecting this option causes mac80211 to print out very
|
|
|
|
verbose mesh peer link debugging messages (when mac80211
|
|
|
|
is taking part in a mesh network).
|
|
|
|
It should not be selected on production systems as those
|
|
|
|
messages are remotely triggerable.
|
|
|
|
|
|
|
|
Do not select this option.
|
2007-05-05 22:45:53 +04:00
|
|
|
|
2012-06-22 13:29:50 +04:00
|
|
|
config MAC80211_MPATH_DEBUG
|
2011-08-10 03:45:04 +04:00
|
|
|
bool "Verbose mesh path debugging"
|
|
|
|
depends on MAC80211_DEBUG_MENU
|
|
|
|
depends on MAC80211_MESH
|
2020-06-13 19:50:22 +03:00
|
|
|
help
|
2011-08-10 03:45:04 +04:00
|
|
|
Selecting this option causes mac80211 to print out very
|
|
|
|
verbose mesh path selection debugging messages (when mac80211
|
|
|
|
is taking part in a mesh network).
|
|
|
|
It should not be selected on production systems as those
|
|
|
|
messages are remotely triggerable.
|
|
|
|
|
|
|
|
Do not select this option.
|
|
|
|
|
2012-06-22 13:29:50 +04:00
|
|
|
config MAC80211_MHWMP_DEBUG
|
2009-11-10 02:46:45 +03:00
|
|
|
bool "Verbose mesh HWMP routing debugging"
|
|
|
|
depends on MAC80211_DEBUG_MENU
|
|
|
|
depends on MAC80211_MESH
|
2020-06-13 19:50:22 +03:00
|
|
|
help
|
2009-11-10 02:46:45 +03:00
|
|
|
Selecting this option causes mac80211 to print out very
|
|
|
|
verbose mesh routing (HWMP) debugging messages (when mac80211
|
|
|
|
is taking part in a mesh network).
|
|
|
|
It should not be selected on production systems as those
|
|
|
|
messages are remotely triggerable.
|
|
|
|
|
|
|
|
Do not select this option.
|
|
|
|
|
2012-06-22 13:29:50 +04:00
|
|
|
config MAC80211_MESH_SYNC_DEBUG
|
2012-10-18 07:21:30 +04:00
|
|
|
bool "Verbose mesh synchronization debugging"
|
2012-03-31 22:31:32 +04:00
|
|
|
depends on MAC80211_DEBUG_MENU
|
|
|
|
depends on MAC80211_MESH
|
2020-06-13 19:50:22 +03:00
|
|
|
help
|
2012-03-31 22:31:32 +04:00
|
|
|
Selecting this option causes mac80211 to print out very verbose mesh
|
|
|
|
synchronization debugging messages (when mac80211 is taking part in a
|
|
|
|
mesh network).
|
|
|
|
|
|
|
|
Do not select this option.
|
2013-10-15 06:08:27 +04:00
|
|
|
|
|
|
|
config MAC80211_MESH_CSA_DEBUG
|
|
|
|
bool "Verbose mesh channel switch debugging"
|
|
|
|
depends on MAC80211_DEBUG_MENU
|
|
|
|
depends on MAC80211_MESH
|
2020-06-13 19:50:22 +03:00
|
|
|
help
|
2013-10-15 06:08:27 +04:00
|
|
|
Selecting this option causes mac80211 to print out very verbose mesh
|
|
|
|
channel switch debugging messages (when mac80211 is taking part in a
|
|
|
|
mesh network).
|
|
|
|
|
|
|
|
Do not select this option.
|
2012-03-31 22:31:32 +04:00
|
|
|
|
2013-01-30 21:14:08 +04:00
|
|
|
config MAC80211_MESH_PS_DEBUG
|
|
|
|
bool "Verbose mesh powersave debugging"
|
|
|
|
depends on MAC80211_DEBUG_MENU
|
|
|
|
depends on MAC80211_MESH
|
2020-06-13 19:50:22 +03:00
|
|
|
help
|
2013-01-30 21:14:08 +04:00
|
|
|
Selecting this option causes mac80211 to print out very verbose mesh
|
|
|
|
powersave debugging messages (when mac80211 is taking part in a
|
|
|
|
mesh network).
|
|
|
|
|
|
|
|
Do not select this option.
|
|
|
|
|
2012-06-22 13:29:50 +04:00
|
|
|
config MAC80211_TDLS_DEBUG
|
2011-09-28 15:12:52 +04:00
|
|
|
bool "Verbose TDLS debugging"
|
|
|
|
depends on MAC80211_DEBUG_MENU
|
2020-06-13 19:50:22 +03:00
|
|
|
help
|
2011-09-28 15:12:52 +04:00
|
|
|
Selecting this option causes mac80211 to print out very
|
|
|
|
verbose TDLS selection debugging messages (when mac80211
|
|
|
|
is a TDLS STA).
|
|
|
|
It should not be selected on production systems as those
|
|
|
|
messages are remotely triggerable.
|
|
|
|
|
|
|
|
Do not select this option.
|
|
|
|
|
2007-05-05 22:45:53 +04:00
|
|
|
config MAC80211_DEBUG_COUNTERS
|
|
|
|
bool "Extra statistics for TX/RX debugging"
|
2008-06-30 17:10:46 +04:00
|
|
|
depends on MAC80211_DEBUG_MENU
|
|
|
|
depends on MAC80211_DEBUGFS
|
2020-06-13 19:50:22 +03:00
|
|
|
help
|
2008-06-30 17:10:46 +04:00
|
|
|
Selecting this option causes mac80211 to keep additional
|
|
|
|
and very verbose statistics about TX and RX handler use
|
2015-04-22 21:47:28 +03:00
|
|
|
as well as a few selected dot11 counters. These will be
|
|
|
|
exposed in debugfs.
|
|
|
|
|
|
|
|
Note that some of the counters are not concurrency safe
|
|
|
|
and may thus not always be accurate.
|
2008-02-23 17:17:21 +03:00
|
|
|
|
2008-06-30 17:10:46 +04:00
|
|
|
If unsure, say N.
|
2015-04-23 18:26:06 +03:00
|
|
|
|
|
|
|
config MAC80211_STA_HASH_MAX_SIZE
|
|
|
|
int "Station hash table maximum size" if MAC80211_DEBUG_MENU
|
|
|
|
default 0
|
2020-06-13 19:50:22 +03:00
|
|
|
help
|
2015-04-23 18:26:06 +03:00
|
|
|
Setting this option to a low value (e.g. 4) allows testing the
|
|
|
|
hash table with collisions relatively deterministically (just
|
|
|
|
connect more stations than the number selected here.)
|
|
|
|
|
|
|
|
If unsure, leave the default of 0.
|