Kconfig 6.9 KB
Newer Older
1 2
config MAC80211
	tristate "Generic IEEE 802.11 Networking Stack (mac80211)"
3
	depends on CFG80211
4 5 6 7 8
	select CRYPTO
	select CRYPTO_ECB
	select CRYPTO_ARC4
	select CRYPTO_AES
	select CRC32
9
	select AVERAGE
10
	---help---
11 12
	  This option enables the hardware independent IEEE 802.11
	  networking stack.
13

14 15 16
comment "CFG80211 needs to be enabled for MAC80211"
	depends on CFG80211=n

17
if MAC80211 != n
18

19 20 21
config MAC80211_HAS_RC
	def_bool n

22 23
config MAC80211_RC_PID
	bool "PID controller based rate control algorithm" if EMBEDDED
24
	select MAC80211_HAS_RC
25 26 27 28 29
	---help---
	  This option enables a TX rate control algorithm for
	  mac80211 that uses a PID controller to select the TX
	  rate.

30
config MAC80211_RC_MINSTREL
31
	bool "Minstrel" if EMBEDDED
32
	select MAC80211_HAS_RC
33
	default y
34 35 36
	---help---
	  This option enables the 'minstrel' TX rate control algorithm

37 38 39 40 41 42 43
config MAC80211_RC_MINSTREL_HT
	bool "Minstrel 802.11n support" if EMBEDDED
	depends on MAC80211_RC_MINSTREL
	default y
	---help---
	  This option enables the 'minstrel_ht' TX rate control algorithm

44 45
choice
	prompt "Default rate control algorithm"
46
	depends on MAC80211_HAS_RC
47
	default MAC80211_RC_DEFAULT_MINSTREL
48 49 50
	---help---
	  This option selects the default rate control algorithm
	  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 54 55

config MAC80211_RC_DEFAULT_PID
	bool "PID controller based rate control algorithm"
56
	depends on MAC80211_RC_PID
57 58 59 60 61
	---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.

62 63 64 65 66 67 68
config MAC80211_RC_DEFAULT_MINSTREL
	bool "Minstrel"
	depends on MAC80211_RC_MINSTREL
	---help---
	  Select Minstrel as the default rate control algorithm.


69
endchoice
70

71 72
config MAC80211_RC_DEFAULT
	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 77
	default ""

78
endif
79

80 81 82
comment "Some wireless drivers require a rate control algorithm"
	depends on MAC80211_HAS_RC=n

J
Johannes Berg 已提交
83 84
config MAC80211_MESH
	bool "Enable mac80211 mesh networking (pre-802.11s) support"
85
	depends on MAC80211 && EXPERIMENTAL
J
Johannes Berg 已提交
86
	---help---
J
Johannes Berg 已提交
87
	 This options enables support of Draft 802.11s mesh networking.
88 89 90 91
	 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/.
J
Johannes Berg 已提交
92

93 94
config MAC80211_LEDS
	bool "Enable LED triggers"
95
	depends on MAC80211
J
Johannes Berg 已提交
96
	depends on LEDS_CLASS
97
	select LEDS_TRIGGERS
98
	---help---
99 100
	  This option enables a few LED triggers for different
	  packet receive/transmit events.
101

J
Jiri Benc 已提交
102 103 104 105 106 107 108 109 110
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.

111 112 113 114 115 116 117 118 119
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
120
	---help---
121 122 123 124 125 126 127 128
	  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.
129

130 131 132 133 134 135 136 137 138 139 140 141 142
	  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.
143 144

config MAC80211_HT_DEBUG
145 146
	bool "Verbose HT debugging"
	depends on MAC80211_DEBUG_MENU
147 148 149 150
	---help---
	  This option enables 802.11n High Throughput features
	  debug tracing output.

151 152
	  It should not be selected on production systems as some
	  of the messages are remotely triggerable.
153

154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201
	  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.
202

203 204 205 206 207 208 209 210 211 212 213 214 215
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.

216 217
config MAC80211_DEBUG_COUNTERS
	bool "Extra statistics for TX/RX debugging"
218 219
	depends on MAC80211_DEBUG_MENU
	depends on MAC80211_DEBUGFS
220
	---help---
221 222 223
	  Selecting this option causes mac80211 to keep additional
	  and very verbose statistics about TX and RX handler use
	  and show them in debugfs.
J
Johannes Berg 已提交
224

225
	  If unsure, say N.
226 227 228 229 230 231 232

config MAC80211_DRIVER_API_TRACER
	bool "Driver API tracer"
	depends on MAC80211_DEBUG_MENU
	depends on EVENT_TRACING
	help
	  Say Y here to make mac80211 register with the ftrace
J
Johannes Berg 已提交
233 234 235
	  framework for the driver API -- you can then see which
	  driver methods it is calling and which API functions
	  drivers are calling by looking at the trace.
236

J
Johannes Berg 已提交
237
	  If unsure, say Y.