cfg_mlme_reg.h 6.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292
  1. /*
  2. * Copyright (c) 2012-2021 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 configuration definitions for MLME REG.
  20. */
  21. #ifndef CFG_MLME_REG_H__
  22. #define CFG_MLME_REG_H__
  23. /*
  24. * <ini>
  25. * gSelfGenFrmPwr - self-generated frame power in tx chain mask
  26. * for CCK rates
  27. * @Min: 0
  28. * @Max: 0xffff
  29. * @Default: 0
  30. *
  31. * gSelfGenFrmPwr is to set self-generated frame power in tx chain mask
  32. * for CCK rates
  33. *
  34. * Related: None
  35. *
  36. * Supported Feature: STA
  37. *
  38. * Usage: Internal/External
  39. *
  40. * </ini>
  41. */
  42. #define CFG_SELF_GEN_FRM_PWR CFG_INI_UINT( \
  43. "gSelfGenFrmPwr", \
  44. 0, \
  45. 0xffff, \
  46. 0, \
  47. CFG_VALUE_OR_DEFAULT, \
  48. "set the self gen power value")
  49. /*
  50. * <ini>
  51. * enable_11d_in_world_mode - enable 11d in world mode
  52. * @Min: 0
  53. * @Max: 1
  54. * @Default: 0
  55. *
  56. * This ini enables 11d in world mode, irrespective of value of
  57. * g11dSupportEnabled
  58. *
  59. * Usage: External
  60. *
  61. * </ini>
  62. */
  63. #define CFG_ENABLE_11D_IN_WORLD_MODE CFG_INI_BOOL( \
  64. "enable_11d_in_world_mode", \
  65. 0, \
  66. "enable 11d in world mode")
  67. /*
  68. * <ini>
  69. * fcc_5dot9_ghz_chan_in_master_mode - Enable/disable 5.9 GHz channels in
  70. * master mode for US
  71. * @Min: 0
  72. * @Max: 1
  73. * @Default: 0
  74. *
  75. * fcc_5dot9_ghz_chan_in_master_mode is to enable/disable 5.9 GHz channels
  76. * in master mode for FCC reg domain
  77. *
  78. * Related: None
  79. *
  80. * Supported Feature: SAP/P2P-GO
  81. *
  82. * Usage: Internal/External
  83. *
  84. * </ini>
  85. */
  86. #define CFG_FCC_5DOT9_GHZ_CHAN_IN_MASTER_MODE CFG_INI_BOOL( \
  87. "fcc_5dot9_ghz_chan_in_master_mode", \
  88. 0, \
  89. "enable/disable FCC 5.9 GHz channels in master mode")
  90. #ifdef SAP_AVOID_ACS_FREQ_LIST
  91. #define SAP_AVOID_ACS_FREQ_LIST_DEFAULT ""
  92. /*
  93. * <ini>
  94. * sap_avoid_acs_freq_list - Avoid configured frequencies from acs
  95. * @Default: No frequencies are configured, it means consider all
  96. * the frequencies for acs
  97. *
  98. * This ini is to configure the frequencies which needs to be
  99. * avoided during acs and sap will not come up on these channels
  100. * Ex: sap_avoid_acs_freq_list=2412,2417,2422,2427,2467,2472
  101. *
  102. * Related: Feature flag SAP_AVOID_ACS_FREQ_LIST
  103. *
  104. * Supported Feature: SAP
  105. *
  106. * Usage: External
  107. *
  108. * </ini>
  109. */
  110. #define CFG_SAP_AVOID_ACS_FREQ_LIST CFG_INI_STRING( \
  111. "sap_avoid_acs_freq_list", \
  112. 0, \
  113. CFG_VALID_CHANNEL_LIST_STRING_LEN, \
  114. SAP_AVOID_ACS_FREQ_LIST_DEFAULT, \
  115. "Avoid configured frequencies during acs")
  116. #define CFG_SAP_AVOID_ACS_FREQ_LIST_ALL CFG(CFG_SAP_AVOID_ACS_FREQ_LIST)
  117. #else
  118. #define CFG_SAP_AVOID_ACS_FREQ_LIST_ALL
  119. #endif
  120. /*
  121. * <ini>
  122. * restart_beaconing_on_chan_avoid_event - control the beaconing entity to move
  123. * away from active LTE channels
  124. * @Min: 0
  125. * @Max: 2
  126. * @Default: 1
  127. *
  128. * This ini is used to control the beaconing entity (SAP/GO) to move away from
  129. * active LTE channels when channel avoidance event is received
  130. * restart_beaconing_on_chan_avoid_event=0: Don't allow beaconing entity move
  131. * from active LTE channels
  132. * restart_beaconing_on_chan_avoid_event=1: Allow beaconing entity move from
  133. * active LTE channels
  134. * restart_beaconing_on_chan_avoid_event=2: Allow beaconing entity move from
  135. * 2.4G active LTE channels only
  136. *
  137. * Related: None
  138. *
  139. * Supported Feature: channel avoidance
  140. *
  141. * Usage: Internal/External
  142. *
  143. * </ini>
  144. */
  145. #define CFG_RESTART_BEACONING_ON_CH_AVOID CFG_INI_UINT( \
  146. "restart_beaconing_on_chan_avoid_event", \
  147. 0, \
  148. 2, \
  149. 1, \
  150. CFG_VALUE_OR_DEFAULT, \
  151. "control the beaconing entity to move away from active LTE channels")
  152. /*
  153. * <ini>
  154. * gindoor_channel_support - support to start sap in indoor channel
  155. * @Min: 0
  156. * @Max: 1
  157. * @Default: 0
  158. *
  159. * This ini is to support to start sap in indoor channel.
  160. * Customer can config this item to enable/disable sap in indoor channel
  161. *
  162. * Related: None
  163. *
  164. * Supported Feature: SAP
  165. *
  166. * Usage: External
  167. *
  168. * </ini>
  169. */
  170. #define CFG_INDOOR_CHANNEL_SUPPORT CFG_INI_BOOL( \
  171. "gindoor_channel_support", \
  172. 0, \
  173. "enable/disable sap in indoor channel")
  174. /*
  175. * <ini>
  176. * scan_11d_interval - 11d scan interval in ms
  177. * @Min: 1 sec
  178. * @Max: 10 hr
  179. * @Default: 1 hr
  180. *
  181. * This ini sets the 11d scan interval in FW
  182. *
  183. * Related: None
  184. *
  185. * Supported Feature: STA
  186. *
  187. * Usage: External
  188. *
  189. * </ini>
  190. */
  191. #define CFG_SCAN_11D_INTERVAL CFG_INI_UINT( \
  192. "scan_11d_interval", \
  193. 1000, \
  194. 36000000, \
  195. 3600000, \
  196. CFG_VALUE_OR_DEFAULT, \
  197. "set the 11d scan interval in FW")
  198. /*
  199. * <ini>
  200. * ignore_fw_reg_offload_ind - If set, Ignore the FW offload indication
  201. * @Min: 0
  202. * @Max: 1
  203. * @Default: 0
  204. *
  205. * This ini is used to ignore regdb offload indication from FW and
  206. * regulatory will be treated as non offload.
  207. *
  208. * Related: None
  209. *
  210. * Supported Feature: STA/AP
  211. *
  212. * Usage: External
  213. *
  214. * </ini>
  215. */
  216. #define CFG_IGNORE_FW_REG_OFFLOAD_IND CFG_INI_BOOL( \
  217. "ignore_fw_reg_offload_ind", \
  218. 0, \
  219. "Ignore Regulatory offloads Indication from FW")
  220. /*
  221. * <ini>
  222. * enable_pending_list_req - Sets Pending channel List Req.
  223. * @Min: 0
  224. * @Max: 1
  225. * @Default: 0
  226. *
  227. * This option enables/disables SCAN_CHAN_LIST_CMDID channel list command to FW
  228. * till the current scan is complete.
  229. *
  230. * Related: None
  231. *
  232. * Supported Feature: STA
  233. *
  234. * Usage: External
  235. *
  236. * </ini>
  237. */
  238. #define CFG_ENABLE_PENDING_CHAN_LIST_REQ CFG_INI_BOOL( \
  239. "enable_pending_list_req", \
  240. 0, \
  241. "Enable Pending list req")
  242. /*
  243. * <ini>
  244. * retain_nol_across_regdmn - Retain NOL across reg domain
  245. * @Min: 0
  246. * @Max: 1
  247. * @Default: 1
  248. *
  249. * This ini is used to set if NOL needs to be retained
  250. * on the reg domain change.
  251. *
  252. * Related: None
  253. *
  254. * Supported Feature: SAP
  255. *
  256. * Usage: External
  257. *
  258. * </ini>
  259. */
  260. #define CFG_RETAIN_NOL_ACROSS_REG_DOMAIN CFG_INI_BOOL( \
  261. "retain_nol_across_regdmn", \
  262. 1, \
  263. "Retain NOL even if the regdomain changes")
  264. #define CFG_REG_ALL \
  265. CFG(CFG_SELF_GEN_FRM_PWR) \
  266. CFG(CFG_ENABLE_PENDING_CHAN_LIST_REQ) \
  267. CFG(CFG_ENABLE_11D_IN_WORLD_MODE) \
  268. CFG(CFG_FCC_5DOT9_GHZ_CHAN_IN_MASTER_MODE) \
  269. CFG(CFG_RESTART_BEACONING_ON_CH_AVOID) \
  270. CFG(CFG_INDOOR_CHANNEL_SUPPORT) \
  271. CFG(CFG_SCAN_11D_INTERVAL) \
  272. CFG(CFG_IGNORE_FW_REG_OFFLOAD_IND) \
  273. CFG(CFG_RETAIN_NOL_ACROSS_REG_DOMAIN) \
  274. CFG_SAP_AVOID_ACS_FREQ_LIST_ALL
  275. #endif /* CFG_MLME_REG_H__ */