|  | config MAC80211 | 
|  | tristate "Generic IEEE 802.11 Networking Stack (mac80211)" | 
|  | depends on CFG80211 | 
|  | select CRYPTO | 
|  | select CRYPTO_ARC4 | 
|  | select CRYPTO_AES | 
|  | select CRC32 | 
|  | select AVERAGE | 
|  | ---help--- | 
|  | This option enables the hardware independent IEEE 802.11 | 
|  | networking stack. | 
|  |  | 
|  | comment "CFG80211 needs to be enabled for MAC80211" | 
|  | depends on CFG80211=n | 
|  |  | 
|  | if MAC80211 != n | 
|  |  | 
|  | config MAC80211_HAS_RC | 
|  | bool | 
|  |  | 
|  | config MAC80211_RC_PID | 
|  | bool "PID controller based rate control algorithm" if EXPERT | 
|  | select MAC80211_HAS_RC | 
|  | ---help--- | 
|  | This option enables a TX rate control algorithm for | 
|  | mac80211 that uses a PID controller to select the TX | 
|  | rate. | 
|  |  | 
|  | config MAC80211_RC_MINSTREL | 
|  | bool "Minstrel" if EXPERT | 
|  | select MAC80211_HAS_RC | 
|  | default y | 
|  | ---help--- | 
|  | This option enables the 'minstrel' TX rate control algorithm | 
|  |  | 
|  | config MAC80211_RC_MINSTREL_HT | 
|  | bool "Minstrel 802.11n support" if EXPERT | 
|  | depends on MAC80211_RC_MINSTREL | 
|  | default y | 
|  | ---help--- | 
|  | This option enables the 'minstrel_ht' TX rate control algorithm | 
|  |  | 
|  | choice | 
|  | prompt "Default rate control algorithm" | 
|  | depends on MAC80211_HAS_RC | 
|  | default MAC80211_RC_DEFAULT_MINSTREL | 
|  | ---help--- | 
|  | This option selects the default rate control algorithm | 
|  | mac80211 will use. Note that this default can still be | 
|  | overridden 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. | 
|  |  | 
|  | config MAC80211_RC_DEFAULT_MINSTREL | 
|  | bool "Minstrel" | 
|  | depends on MAC80211_RC_MINSTREL | 
|  | ---help--- | 
|  | Select Minstrel as the default rate control algorithm. | 
|  |  | 
|  |  | 
|  | endchoice | 
|  |  | 
|  | config MAC80211_RC_DEFAULT | 
|  | string | 
|  | default "minstrel_ht" if MAC80211_RC_DEFAULT_MINSTREL && MAC80211_RC_MINSTREL_HT | 
|  | default "minstrel" if MAC80211_RC_DEFAULT_MINSTREL | 
|  | default "pid" if MAC80211_RC_DEFAULT_PID | 
|  | default "" | 
|  |  | 
|  | endif | 
|  |  | 
|  | comment "Some wireless drivers require a rate control algorithm" | 
|  | depends on MAC80211 && MAC80211_HAS_RC=n | 
|  |  | 
|  | 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 2.08 of the Mesh Networking | 
|  | amendment.  However, no compliance with that draft is claimed or even | 
|  | possible, as drafts leave a number of identifiers to be defined after | 
|  | ratification.  For more information visit http://o11s.org/. | 
|  |  | 
|  | config MAC80211_LEDS | 
|  | bool "Enable LED triggers" | 
|  | depends on MAC80211 | 
|  | depends on LEDS_CLASS | 
|  | 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. | 
|  |  | 
|  | menuconfig MAC80211_DEBUG_MENU | 
|  | bool "Select mac80211 debugging features" | 
|  | depends on MAC80211 | 
|  | ---help--- | 
|  | This option collects various mac80211 debug settings. | 
|  |  | 
|  | 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_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_VERBOSE_MPATH_DEBUG | 
|  | bool "Verbose mesh path debugging" | 
|  | depends on MAC80211_DEBUG_MENU | 
|  | depends on MAC80211_MESH | 
|  | ---help--- | 
|  | 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. | 
|  |  | 
|  | config MAC80211_VERBOSE_MHWMP_DEBUG | 
|  | bool "Verbose mesh HWMP routing debugging" | 
|  | depends on MAC80211_DEBUG_MENU | 
|  | depends on MAC80211_MESH | 
|  | ---help--- | 
|  | 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. | 
|  |  | 
|  | config MAC80211_VERBOSE_MESH_SYNC_DEBUG | 
|  | bool "Verbose mesh mesh synchronization debugging" | 
|  | depends on MAC80211_DEBUG_MENU | 
|  | depends on MAC80211_MESH | 
|  | ---help--- | 
|  | 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. | 
|  |  | 
|  | config MAC80211_VERBOSE_TDLS_DEBUG | 
|  | bool "Verbose TDLS debugging" | 
|  | depends on MAC80211_DEBUG_MENU | 
|  | ---help--- | 
|  | 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. | 
|  |  | 
|  | config MAC80211_DEBUG_COUNTERS | 
|  | bool "Extra statistics for TX/RX debugging" | 
|  | depends on MAC80211_DEBUG_MENU | 
|  | depends on MAC80211_DEBUGFS | 
|  | ---help--- | 
|  | Selecting this option causes mac80211 to keep additional | 
|  | and very verbose statistics about TX and RX handler use | 
|  | and show them in debugfs. | 
|  |  | 
|  | If unsure, say N. |