1config MAC80211 2 tristate "Generic IEEE 802.11 Networking Stack (mac80211)" 3 depends on CFG80211 4 select CRYPTO 5 select CRYPTO_ECB 6 select CRYPTO_ARC4 7 select CRYPTO_AES 8 select CRC32 9 select AVERAGE 10 ---help--- 11 This option enables the hardware independent IEEE 802.11 12 networking stack. 13 14comment "CFG80211 needs to be enabled for MAC80211" 15 depends on CFG80211=n 16 17if MAC80211 != n 18 19config MAC80211_HAS_RC 20 def_bool n 21 22config MAC80211_RC_PID 23 bool "PID controller based rate control algorithm" if EXPERT 24 select MAC80211_HAS_RC 25 ---help--- 26 This option enables a TX rate control algorithm for 27 mac80211 that uses a PID controller to select the TX 28 rate. 29 30config MAC80211_RC_MINSTREL 31 bool "Minstrel" if EXPERT 32 select MAC80211_HAS_RC 33 default y 34 ---help--- 35 This option enables the 'minstrel' TX rate control algorithm 36 37config MAC80211_RC_MINSTREL_HT 38 bool "Minstrel 802.11n support" if EXPERT 39 depends on MAC80211_RC_MINSTREL 40 default y 41 ---help--- 42 This option enables the 'minstrel_ht' TX rate control algorithm 43 44choice 45 prompt "Default rate control algorithm" 46 depends on MAC80211_HAS_RC 47 default MAC80211_RC_DEFAULT_MINSTREL 48 ---help--- 49 This option selects the default rate control algorithm 50 mac80211 will use. Note that this default can still be 51 overridden through the ieee80211_default_rc_algo module 52 parameter if different algorithms are available. 53 54config MAC80211_RC_DEFAULT_PID 55 bool "PID controller based rate control algorithm" 56 depends on MAC80211_RC_PID 57 ---help--- 58 Select the PID controller based rate control as the 59 default rate control algorithm. You should choose 60 this unless you know what you are doing. 61 62config MAC80211_RC_DEFAULT_MINSTREL 63 bool "Minstrel" 64 depends on MAC80211_RC_MINSTREL 65 ---help--- 66 Select Minstrel as the default rate control algorithm. 67 68 69endchoice 70 71config MAC80211_RC_DEFAULT 72 string 73 default "minstrel_ht" if MAC80211_RC_DEFAULT_MINSTREL && MAC80211_RC_MINSTREL_HT 74 default "minstrel" if MAC80211_RC_DEFAULT_MINSTREL 75 default "pid" if MAC80211_RC_DEFAULT_PID 76 default "" 77 78endif 79 80comment "Some wireless drivers require a rate control algorithm" 81 depends on MAC80211_HAS_RC=n 82 83config MAC80211_MESH 84 bool "Enable mac80211 mesh networking (pre-802.11s) support" 85 depends on MAC80211 && EXPERIMENTAL 86 ---help--- 87 This options enables support of Draft 802.11s mesh networking. 88 The implementation is based on Draft 2.08 of the Mesh Networking 89 amendment. However, no compliance with that draft is claimed or even 90 possible, as drafts leave a number of identifiers to be defined after 91 ratification. For more information visit http://o11s.org/. 92 93config MAC80211_LEDS 94 bool "Enable LED triggers" 95 depends on MAC80211 96 depends on LEDS_CLASS 97 select LEDS_TRIGGERS 98 ---help--- 99 This option enables a few LED triggers for different 100 packet receive/transmit events. 101 102config MAC80211_DEBUGFS 103 bool "Export mac80211 internals in DebugFS" 104 depends on MAC80211 && DEBUG_FS 105 ---help--- 106 Select this to see extensive information about 107 the internal state of mac80211 in debugfs. 108 109 Say N unless you know you need this. 110 111menuconfig MAC80211_DEBUG_MENU 112 bool "Select mac80211 debugging features" 113 depends on MAC80211 114 ---help--- 115 This option collects various mac80211 debug settings. 116 117config MAC80211_NOINLINE 118 bool "Do not inline TX/RX handlers" 119 depends on MAC80211_DEBUG_MENU 120 ---help--- 121 This option affects code generation in mac80211, when 122 selected some functions are marked "noinline" to allow 123 easier debugging of problems in the transmit and receive 124 paths. 125 126 This option increases code size a bit and inserts a lot 127 of function calls in the code, but is otherwise safe to 128 enable. 129 130 If unsure, say N unless you expect to be finding problems 131 in mac80211. 132 133config MAC80211_VERBOSE_DEBUG 134 bool "Verbose debugging output" 135 depends on MAC80211_DEBUG_MENU 136 ---help--- 137 Selecting this option causes mac80211 to print out 138 many debugging messages. It should not be selected 139 on production systems as some of the messages are 140 remotely triggerable. 141 142 Do not select this option. 143 144config MAC80211_HT_DEBUG 145 bool "Verbose HT debugging" 146 depends on MAC80211_DEBUG_MENU 147 ---help--- 148 This option enables 802.11n High Throughput features 149 debug tracing output. 150 151 It should not be selected on production systems as some 152 of the messages are remotely triggerable. 153 154 Do not select this option. 155 156config MAC80211_TKIP_DEBUG 157 bool "Verbose TKIP debugging" 158 depends on MAC80211_DEBUG_MENU 159 ---help--- 160 Selecting this option causes mac80211 to print out 161 very verbose TKIP debugging messages. It should not 162 be selected on production systems as those messages 163 are remotely triggerable. 164 165 Do not select this option. 166 167config MAC80211_IBSS_DEBUG 168 bool "Verbose IBSS debugging" 169 depends on MAC80211_DEBUG_MENU 170 ---help--- 171 Selecting this option causes mac80211 to print out 172 very verbose IBSS debugging messages. It should not 173 be selected on production systems as those messages 174 are remotely triggerable. 175 176 Do not select this option. 177 178config MAC80211_VERBOSE_PS_DEBUG 179 bool "Verbose powersave mode debugging" 180 depends on MAC80211_DEBUG_MENU 181 ---help--- 182 Selecting this option causes mac80211 to print out very 183 verbose power save mode debugging messages (when mac80211 184 is an AP and has power saving stations.) 185 It should not be selected on production systems as those 186 messages are remotely triggerable. 187 188 Do not select this option. 189 190config MAC80211_VERBOSE_MPL_DEBUG 191 bool "Verbose mesh peer link debugging" 192 depends on MAC80211_DEBUG_MENU 193 depends on MAC80211_MESH 194 ---help--- 195 Selecting this option causes mac80211 to print out very 196 verbose mesh peer link debugging messages (when mac80211 197 is taking part in a mesh network). 198 It should not be selected on production systems as those 199 messages are remotely triggerable. 200 201 Do not select this option. 202 203config MAC80211_VERBOSE_MHWMP_DEBUG 204 bool "Verbose mesh HWMP routing debugging" 205 depends on MAC80211_DEBUG_MENU 206 depends on MAC80211_MESH 207 ---help--- 208 Selecting this option causes mac80211 to print out very 209 verbose mesh routing (HWMP) debugging messages (when mac80211 210 is taking part in a mesh network). 211 It should not be selected on production systems as those 212 messages are remotely triggerable. 213 214 Do not select this option. 215 216config MAC80211_DEBUG_COUNTERS 217 bool "Extra statistics for TX/RX debugging" 218 depends on MAC80211_DEBUG_MENU 219 depends on MAC80211_DEBUGFS 220 ---help--- 221 Selecting this option causes mac80211 to keep additional 222 and very verbose statistics about TX and RX handler use 223 and show them in debugfs. 224 225 If unsure, say N. 226 227config MAC80211_DRIVER_API_TRACER 228 bool "Driver API tracer" 229 depends on MAC80211_DEBUG_MENU 230 depends on EVENT_TRACING 231 help 232 Say Y here to make mac80211 register with the ftrace 233 framework for the driver API -- you can then see which 234 driver methods it is calling and which API functions 235 drivers are calling by looking at the trace. 236 237 If unsure, say Y. 238