e5f5e7339c
The old infrastructure was: - the default algorithm is built into mac80211 - other algorithms get into their own modules The implementation of this complicated scheme was horrible (just look at net/mac80211/Makefile), and anyone adding a new algorithm would most likely not get it right at his first attempt. This patch therefore builds all enabled algorithms into the mac80211 module. The user interface for the rate control algorithms changes as follows: - first the user can choose which algorithms to enable (currently only MAC80211_RC_PID is available) - if more than one algorithm is enabled (currently not possible since only one algorithm is present) the user then chooses the default one Note: - MAC80211_RC_PID is always enables for CONFIG_EMBEDDED=n Technical changes: - all selected algorithms get into the mac80211 module - net/mac80211/Makefile can now become much less complicated - support for rc80211_pid_algo.c being modular is no longer required - this includes unexporting mesh_plink_broken Signed-off-by: Adrian Bunk <bunk@kernel.org> Signed-off-by: John W. Linville <linville@tuxdriver.com>
174 lines
4.8 KiB
Plaintext
174 lines
4.8 KiB
Plaintext
config MAC80211
|
|
tristate "Generic IEEE 802.11 Networking Stack (mac80211)"
|
|
select CRYPTO
|
|
select CRYPTO_ECB
|
|
select CRYPTO_ARC4
|
|
select CRYPTO_AES
|
|
select CRC32
|
|
select WIRELESS_EXT
|
|
select CFG80211
|
|
---help---
|
|
This option enables the hardware independent IEEE 802.11
|
|
networking stack.
|
|
|
|
config MAC80211_QOS
|
|
def_bool y
|
|
depends on MAC80211
|
|
depends on NET_SCHED
|
|
depends on NETDEVICES_MULTIQUEUE
|
|
|
|
comment "QoS/HT support disabled"
|
|
depends on MAC80211 && !MAC80211_QOS
|
|
comment "QoS/HT support needs CONFIG_NET_SCHED"
|
|
depends on MAC80211 && !NET_SCHED
|
|
comment "QoS/HT support needs CONFIG_NETDEVICES_MULTIQUEUE"
|
|
depends on MAC80211 && !NETDEVICES_MULTIQUEUE
|
|
|
|
menu "Rate control algorithm selection"
|
|
depends on MAC80211 != n
|
|
|
|
config MAC80211_RC_PID
|
|
bool "PID controller based rate control algorithm" if EMBEDDED
|
|
default y
|
|
---help---
|
|
This option enables a TX rate control algorithm for
|
|
mac80211 that uses a PID controller to select the TX
|
|
rate.
|
|
|
|
choice
|
|
prompt "Default rate control algorithm"
|
|
default MAC80211_RC_DEFAULT_PID
|
|
---help---
|
|
This option selects the default rate control algorithm
|
|
mac80211 will use. Note that this default can still be
|
|
overriden through the ieee80211_default_rc_algo module
|
|
parameter if different algorithms are available.
|
|
|
|
config MAC80211_RC_DEFAULT_PID
|
|
bool "PID controller based rate control algorithm"
|
|
depends on MAC80211_RC_PID
|
|
---help---
|
|
Select the PID controller based rate control as the
|
|
default rate control algorithm. You should choose
|
|
this unless you know what you are doing.
|
|
|
|
endchoice
|
|
|
|
config MAC80211_RC_DEFAULT
|
|
string
|
|
default "pid" if MAC80211_RC_DEFAULT_PID
|
|
default ""
|
|
|
|
endmenu
|
|
|
|
config MAC80211_MESH
|
|
bool "Enable mac80211 mesh networking (pre-802.11s) support"
|
|
depends on MAC80211 && EXPERIMENTAL
|
|
---help---
|
|
This options enables support of Draft 802.11s mesh networking.
|
|
The implementation is based on Draft 1.08 of the Mesh Networking
|
|
amendment. For more information visit http://o11s.org/.
|
|
|
|
|
|
config MAC80211_LEDS
|
|
bool "Enable LED triggers"
|
|
depends on MAC80211
|
|
select NEW_LEDS
|
|
select LEDS_TRIGGERS
|
|
---help---
|
|
This option enables a few LED triggers for different
|
|
packet receive/transmit events.
|
|
|
|
config MAC80211_DEBUGFS
|
|
bool "Export mac80211 internals in DebugFS"
|
|
depends on MAC80211 && DEBUG_FS
|
|
---help---
|
|
Select this to see extensive information about
|
|
the internal state of mac80211 in debugfs.
|
|
|
|
Say N unless you know you need this.
|
|
|
|
config MAC80211_DEBUG_PACKET_ALIGNMENT
|
|
bool "Enable packet alignment debugging"
|
|
depends on MAC80211
|
|
help
|
|
This option is recommended for driver authors and strongly
|
|
discouraged for everybody else, it will trigger a warning
|
|
when a driver hands mac80211 a buffer that is aligned in
|
|
a way that will cause problems with the IP stack on some
|
|
architectures.
|
|
|
|
Say N unless you're writing a mac80211 based driver.
|
|
|
|
config MAC80211_DEBUG
|
|
bool "Enable debugging output"
|
|
depends on MAC80211
|
|
---help---
|
|
This option will enable debug tracing output for the
|
|
ieee80211 network stack.
|
|
|
|
If you are not trying to debug or develop the ieee80211
|
|
subsystem, you most likely want to say N here.
|
|
|
|
config MAC80211_HT_DEBUG
|
|
bool "Enable HT debugging output"
|
|
depends on MAC80211_DEBUG
|
|
---help---
|
|
This option enables 802.11n High Throughput features
|
|
debug tracing output.
|
|
|
|
If you are not trying to debug of develop the ieee80211
|
|
subsystem, you most likely want to say N here.
|
|
|
|
config MAC80211_VERBOSE_DEBUG
|
|
bool "Verbose debugging output"
|
|
depends on MAC80211_DEBUG
|
|
|
|
config MAC80211_LOWTX_FRAME_DUMP
|
|
bool "Debug frame dumping"
|
|
depends on MAC80211_DEBUG
|
|
---help---
|
|
Selecting this option will cause the stack to
|
|
print a message for each frame that is handed
|
|
to the lowlevel driver for transmission. This
|
|
message includes all MAC addresses and the
|
|
frame control field.
|
|
|
|
If unsure, say N and insert the debugging code
|
|
you require into the driver you are debugging.
|
|
|
|
config MAC80211_TKIP_DEBUG
|
|
bool "TKIP debugging"
|
|
depends on MAC80211_DEBUG
|
|
|
|
config MAC80211_DEBUG_COUNTERS
|
|
bool "Extra statistics for TX/RX debugging"
|
|
depends on MAC80211_DEBUG
|
|
|
|
config MAC80211_IBSS_DEBUG
|
|
bool "Support for IBSS testing"
|
|
depends on MAC80211_DEBUG
|
|
---help---
|
|
Say Y here if you intend to debug the IBSS code.
|
|
|
|
config MAC80211_VERBOSE_PS_DEBUG
|
|
bool "Verbose powersave mode debugging"
|
|
depends on MAC80211_DEBUG
|
|
---help---
|
|
Say Y here to print out verbose powersave
|
|
mode debug messages.
|
|
|
|
config MAC80211_VERBOSE_MPL_DEBUG
|
|
bool "Verbose mesh peer link debugging"
|
|
depends on MAC80211_DEBUG && MAC80211_MESH
|
|
---help---
|
|
Say Y here to print out verbose mesh peer link
|
|
debug messages.
|
|
|
|
config MAC80211_VERBOSE_SPECT_MGMT_DEBUG
|
|
bool "Verbose Spectrum Management (IEEE 802.11h)debugging"
|
|
depends on MAC80211_DEBUG
|
|
---help---
|
|
Say Y here to print out verbose Spectrum Management (IEEE 802.11h)
|
|
debug messages.
|