cfg_mlme_feature_flag.h 5.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241
  1. /*
  2. * Copyright (c) 2012-2019 The Linux Foundation. All rights reserved.
  3. *
  4. * Permission to use, copy, modify, and/or distribute this software for
  5. * any purpose with or without fee is hereby granted, provided that the
  6. * above copyright notice and this permission notice appear in all
  7. * copies.
  8. *
  9. * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL
  10. * WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED
  11. * WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE
  12. * AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
  13. * DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR
  14. * PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
  15. * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
  16. * PERFORMANCE OF THIS SOFTWARE.
  17. */
  18. /**
  19. * DOC: This file contains centralized definitions of converged configuration.
  20. */
  21. #ifndef __CFG_MLME_FEATURE_FLAG_H
  22. #define __CFG_MLME_FEATURE_FLAG_H
  23. #define CFG_ACCEPT_SHORT_SLOT_ASSOC_ONLY CFG_BOOL( \
  24. "accept_short_slot_assoc", \
  25. 0, \
  26. "Accept short slot assoc only")
  27. #define CFG_HCF_ENABLED CFG_BOOL( \
  28. "enable_hcf", \
  29. 0, \
  30. "HCF enabled")
  31. #define CFG_RSN_ENABLED CFG_BOOL( \
  32. "enable_rsn", \
  33. 0, \
  34. "RSN enabled")
  35. #define CFG_11G_SHORT_PREAMBLE_ENABLED CFG_BOOL( \
  36. "enable_short_preamble_11g", \
  37. 0, \
  38. "Short Preamble Enable")
  39. #define CFG_11G_SHORT_SLOT_TIME_ENABLED CFG_BOOL( \
  40. "enable_short_slot_time_11g", \
  41. 1, \
  42. "Short Slot time enable")
  43. #define CFG_CHANNEL_BONDING_MODE CFG_UINT( \
  44. "channel_bonding_mode", \
  45. 0, \
  46. 10, \
  47. 0, \
  48. CFG_VALUE_OR_DEFAULT, \
  49. "channel bonding mode")
  50. #define CFG_BLOCK_ACK_ENABLED CFG_UINT( \
  51. "enable_block_ack", \
  52. 0, \
  53. 3, \
  54. 0, \
  55. CFG_VALUE_OR_DEFAULT, \
  56. "enable block Ack")
  57. /*
  58. * <ini>
  59. * gEnableAMPDUPS - Enable the AMPDUPS
  60. * @Min: 0
  61. * @Max: 1
  62. * @Default: 0
  63. *
  64. * This ini is used to set default AMPDUPS
  65. *
  66. * Related: None
  67. *
  68. * Supported Feature: STA
  69. *
  70. * Usage: Internal/External
  71. *
  72. * </ini>
  73. */
  74. #define CFG_ENABLE_AMPDUPS CFG_INI_BOOL( \
  75. "gEnableAMPDUPS", \
  76. 0, \
  77. "Enable AMPDU")
  78. /*
  79. * <ini>
  80. * gFWMccRtsCtsProtection - RTS-CTS protection in MCC.
  81. * @Min: 0
  82. * @Max: 1
  83. * @Default: 0
  84. *
  85. * This ini is used to enable/disable use of long duration RTS-CTS protection
  86. * when SAP goes off channel in MCC mode.
  87. *
  88. * Related: None.
  89. *
  90. * Supported Feature: Concurrency
  91. *
  92. * Usage: Internal/External
  93. *
  94. * </ini>
  95. */
  96. #define CFG_FW_MCC_RTS_CTS_PROT CFG_INI_UINT( \
  97. "gFWMccRtsCtsProtection", \
  98. 0, 1, 0, \
  99. CFG_VALUE_OR_DEFAULT, \
  100. "RTS-CTS protection in MCC")
  101. /*
  102. * <ini>
  103. * gFWMccBCastProbeResponse - Broadcast Probe Response in MCC.
  104. * @Min: 0
  105. * @Max: 1
  106. * @Default: 0
  107. *
  108. * This ini is used to enable/disable use of broadcast probe response to
  109. * increase the detectability of SAP in MCC mode.
  110. *
  111. * Related: None.
  112. *
  113. * Supported Feature: Concurrency
  114. *
  115. * Usage: Internal/External
  116. *
  117. * </ini>
  118. */
  119. #define CFG_FW_MCC_BCAST_PROB_RESP CFG_INI_UINT( \
  120. "gFWMccBCastProbeResponse", \
  121. 0, 1, 0, \
  122. CFG_VALUE_OR_DEFAULT, \
  123. "Broadcast Probe Response in MCC")
  124. /*
  125. * <ini>
  126. * gEnableMCCMode - Enable/Disable MCC feature.
  127. * @Min: 0
  128. * @Max: 1
  129. * @Default: 1
  130. *
  131. * This ini is used to enable/disable MCC feature.
  132. *
  133. * Related: None.
  134. *
  135. * Supported Feature: Concurrency
  136. *
  137. * Usage: Internal/External
  138. *
  139. * </ini>
  140. */
  141. #define CFG_MCC_FEATURE CFG_INI_UINT( \
  142. "gEnableMCCMode", \
  143. 0, 1, 1, \
  144. CFG_VALUE_OR_DEFAULT, \
  145. "Enable/Disable MCC feature.")
  146. /*
  147. * <ini>
  148. * gChannelBondingMode24GHz - Configures Channel Bonding in 24 GHz
  149. * @Min: 0
  150. * @Max: 10
  151. * @Default: 0
  152. *
  153. * This ini is used to set default channel bonding mode 24GHZ
  154. *
  155. * 0 - 20MHz IF bandwidth centered on IF carrier
  156. * 1 - 40MHz IF bandwidth with lower 20MHz supporting the primary channel
  157. * 2 - reserved
  158. * 3 - 40MHz IF bandwidth with higher 20MHz supporting the primary channel
  159. * 4 - 20/40MHZ offset LOW 40/80MHZ offset CENTERED
  160. * 5 - 20/40MHZ offset CENTERED 40/80MHZ offset CENTERED
  161. * 6 - 20/40MHZ offset HIGH 40/80MHZ offset CENTERED
  162. * 7 - 20/40MHZ offset LOW 40/80MHZ offset LOW
  163. * 8 - 20/40MHZ offset HIGH 40/80MHZ offset LOW
  164. * 9 - 20/40MHZ offset LOW 40/80MHZ offset HIGH
  165. * 10 - 20/40MHZ offset-HIGH 40/80MHZ offset HIGH
  166. *
  167. * Related: None
  168. *
  169. * Supported Feature: STA
  170. *
  171. * Usage: Internal/External
  172. *
  173. * </ini>
  174. */
  175. #define CFG_CHANNEL_BONDING_MODE_24GHZ CFG_INI_UINT( \
  176. "gChannelBondingMode24GHz", \
  177. 0, \
  178. 10, \
  179. 0, \
  180. CFG_VALUE_OR_DEFAULT, \
  181. "Configures Channel Bonding in 24 GHz")
  182. /*
  183. * <ini>
  184. * gChannelBondingMode5GHz - Configures Channel Bonding in 5 GHz
  185. * @Min: 0
  186. * @Max: 10
  187. * @Default: 0
  188. *
  189. * This ini is used to set default channel bonding mode 5GHZ
  190. *
  191. * Values of 0 - 10 have the same meanings as for gChannelBondingMode24GHz.
  192. *
  193. * Related: None
  194. *
  195. * Supported Feature: STA
  196. *
  197. * Usage: Internal/External
  198. *
  199. * </ini>
  200. */
  201. #define CFG_CHANNEL_BONDING_MODE_5GHZ CFG_INI_UINT( \
  202. "gChannelBondingMode5GHz", \
  203. 0, \
  204. 10, \
  205. 0, \
  206. CFG_VALUE_OR_DEFAULT, \
  207. "Configures Channel Bonding in 5 GHz")
  208. #define CFG_FEATURE_FLAG_ALL \
  209. CFG(CFG_ACCEPT_SHORT_SLOT_ASSOC_ONLY) \
  210. CFG(CFG_HCF_ENABLED) \
  211. CFG(CFG_RSN_ENABLED) \
  212. CFG(CFG_FW_MCC_RTS_CTS_PROT) \
  213. CFG(CFG_FW_MCC_BCAST_PROB_RESP) \
  214. CFG(CFG_MCC_FEATURE) \
  215. CFG(CFG_11G_SHORT_PREAMBLE_ENABLED) \
  216. CFG(CFG_11G_SHORT_SLOT_TIME_ENABLED) \
  217. CFG(CFG_CHANNEL_BONDING_MODE) \
  218. CFG(CFG_BLOCK_ACK_ENABLED) \
  219. CFG(CFG_ENABLE_AMPDUPS) \
  220. CFG(CFG_CHANNEL_BONDING_MODE_24GHZ) \
  221. CFG(CFG_CHANNEL_BONDING_MODE_5GHZ)
  222. #endif /* __CFG_MLME_FEATURE_FLAG_H */