pkt_sched: Fix locking in shutdown_scheduler_queue()
[safe/jmp/linux-2.6] / net / mac80211 / Kconfig
index 32c8c08..80d6933 100644 (file)
@@ -1,6 +1,5 @@
 config MAC80211
        tristate "Generic IEEE 802.11 Networking Stack (mac80211)"
-       depends on EXPERIMENTAL
        select CRYPTO
        select CRYPTO_ECB
        select CRYPTO_ARC4
@@ -8,29 +7,64 @@ config MAC80211
        select CRC32
        select WIRELESS_EXT
        select CFG80211
-       select NET_SCH_FIFO
        ---help---
-       This option enables the hardware independent IEEE 802.11
-       networking stack.
+         This option enables the hardware independent IEEE 802.11
+         networking stack.
 
-config MAC80211_RCSIMPLE
-       bool "'simple' rate control algorithm"
+menu "Rate control algorithm selection"
+       depends on MAC80211 != n
+
+config MAC80211_RC_PID
+       bool "PID controller based rate control algorithm" if EMBEDDED
        default y
-       depends on MAC80211 && EMBEDDED
-       help
-         This option allows you to turn off the 'simple' rate
-         control algorithm in mac80211. If you do turn it off,
-         you absolutely need another rate control algorithm.
+       ---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/.
 
-         Say Y unless you know you will have another algorithm
-         available.
 
 config MAC80211_LEDS
        bool "Enable LED triggers"
-       depends on MAC80211 && LEDS_TRIGGERS
+       depends on MAC80211
+       select NEW_LEDS
+       select LEDS_TRIGGERS
        ---help---
-       This option enables a few LED triggers for different
-       packet receive/transmit events.
+         This option enables a few LED triggers for different
+         packet receive/transmit events.
 
 config MAC80211_DEBUGFS
        bool "Export mac80211 internals in DebugFS"
@@ -41,23 +75,113 @@ config MAC80211_DEBUGFS
 
          Say N unless you know you need this.
 
-config MAC80211_DEBUG
-       bool "Enable debugging output"
+menuconfig MAC80211_DEBUG_MENU
+       bool "Select mac80211 debugging features"
        depends on MAC80211
        ---help---
-         This option will enable debug tracing output for the
-         ieee80211 network stack.
+         This option collects various mac80211 debug settings.
 
-         If you are not trying to debug or develop the ieee80211
-         subsystem, you most likely want to say N here.
+config MAC80211_DEBUG_PACKET_ALIGNMENT
+       bool "Enable packet alignment debugging"
+       depends on MAC80211_DEBUG_MENU
+       ---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_NOINLINE
+       bool "Do not inline TX/RX handlers"
+       depends on MAC80211_DEBUG_MENU
+       ---help---
+         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.
+
+         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
+       depends on MAC80211_DEBUG_MENU
+       ---help---
+         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.
+
+config MAC80211_HT_DEBUG
+       bool "Verbose HT debugging"
+       depends on MAC80211_DEBUG_MENU
+       ---help---
+         This option enables 802.11n High Throughput features
+         debug tracing output.
+
+         It should not be selected on production systems as some
+         of the messages are remotely triggerable.
+
+         Do not select this option.
+
+config MAC80211_TKIP_DEBUG
+       bool "Verbose TKIP debugging"
+       depends on MAC80211_DEBUG_MENU
+       ---help---
+         Selecting this option causes mac80211 to print out
+         very verbose TKIP debugging messages. It should not
+         be selected on production systems as those messages
+         are remotely triggerable.
+
+         Do not select this option.
+
+config MAC80211_IBSS_DEBUG
+       bool "Verbose IBSS debugging"
+       depends on MAC80211_DEBUG_MENU
+       ---help---
+         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.
+
+config MAC80211_VERBOSE_PS_DEBUG
+       bool "Verbose powersave mode debugging"
+       depends on MAC80211_DEBUG_MENU
+       ---help---
+         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.
+
+config MAC80211_VERBOSE_MPL_DEBUG
+       bool "Verbose mesh peer link debugging"
+       depends on MAC80211_DEBUG_MENU
+       depends on MAC80211_MESH
+       ---help---
+         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.
 
 config MAC80211_LOWTX_FRAME_DUMP
        bool "Debug frame dumping"
-       depends on MAC80211_DEBUG
+       depends on MAC80211_DEBUG_MENU
        ---help---
          Selecting this option will cause the stack to
          print a message for each frame that is handed
@@ -68,23 +192,20 @@ config MAC80211_LOWTX_FRAME_DUMP
          If unsure, say N and insert the debugging code
          you require into the driver you are debugging.
 
-config 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
+       depends on MAC80211_DEBUG_MENU
+       depends on MAC80211_DEBUGFS
        ---help---
-         Say Y here if you intend to debug the IBSS code.
+         Selecting this option causes mac80211 to keep additional
+         and very verbose statistics about TX and RX handler use
+         and show them in debugfs.
 
-config MAC80211_VERBOSE_PS_DEBUG
-       bool "Verbose powersave mode debugging"
-       depends on MAC80211_DEBUG
+         If unsure, say N.
+
+config MAC80211_VERBOSE_SPECT_MGMT_DEBUG
+       bool "Verbose Spectrum Management (IEEE 802.11h)debugging"
+       depends on MAC80211_DEBUG_MENU
        ---help---
-         Say Y here to print out verbose powersave
-         mode debug messages.
+         Say Y here to print out verbose Spectrum Management (IEEE 802.11h)
+         debug messages.