Kconfig 8.9 KB

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