cfg_adaptive_dwelltime.h 3.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160
  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 adaptive dwell components.
  20. */
  21. #ifndef __CFG_ADAPTIVE_DWELLTIME_H
  22. #define __CFG_ADAPTIVE_DWELLTIME_H
  23. /*
  24. * <ini>
  25. * adaptive_dwell_mode_enabled - enable/disable the adaptive dwell config.
  26. * @Min: 0
  27. * @Max: 1
  28. * @Default: 1
  29. *
  30. *
  31. * This ini will globally disable/enable the adaptive dwell config.
  32. * Following parameters will set different values of attributes for dwell
  33. * time optimization thus reducing total scan time.
  34. * Acceptable values for this:
  35. * 0: Config is disabled
  36. * 1: Config is enabled
  37. *
  38. * Related: None.
  39. *
  40. * Supported Feature: Scan
  41. *
  42. * Usage: External
  43. *
  44. * </ini>
  45. */
  46. #define CFG_ADAPTIVE_DWELL_MODE_ENABLED CFG_INI_BOOL(\
  47. "adaptive_dwell_mode_enabled",\
  48. 1, \
  49. "enable the adaptive dwell config")
  50. /*
  51. * <ini>
  52. * global_adapt_dwelltime_mode - set default adaptive mode.
  53. * @Min: 0
  54. * @Max: 4
  55. * @Default: 0
  56. *
  57. * This ini will set default adaptive mode, will be used if any of the
  58. * scan dwell mode is set to default.
  59. * For uses : see enum scan_dwelltime_adaptive_mode
  60. *
  61. * Related: None.
  62. *
  63. * Supported Feature: Scan
  64. *
  65. * Usage: External
  66. *
  67. * </ini>
  68. */
  69. #define CFG_GLOBAL_ADAPTIVE_DWELL_MODE CFG_INI_UINT(\
  70. "global_adapt_dwelltime_mode",\
  71. 0, 4, 0,\
  72. CFG_VALUE_OR_DEFAULT, \
  73. "set default adaptive mode")
  74. /*
  75. * <ini>
  76. * adapt_dwell_lpf_weight - weight to caclulate avg low pass filter.
  77. * @Min: 0
  78. * @Max: 100
  79. * @Default: 80
  80. *
  81. * This ini is used to set the weight to calculate
  82. * the average low pass filter for channel congestion.
  83. * Acceptable values for this: 0-100 (In %)
  84. *
  85. * Related: None.
  86. *
  87. * Supported Feature: Scan
  88. *
  89. * Usage: External
  90. *
  91. * </ini>
  92. */
  93. #define CFG_ADAPT_DWELL_LPF_WEIGHT CFG_INI_UINT(\
  94. "adapt_dwell_lpf_weight",\
  95. 0, 100, 80,\
  96. CFG_VALUE_OR_DEFAULT, \
  97. "weight to calc avg low pass filter")
  98. /*
  99. * <ini>
  100. * adapt_dwell_passive_mon_intval - Interval to monitor passive scan in msec.
  101. * @Min: 0
  102. * @Max: 25
  103. * @Default: 10
  104. *
  105. * This ini is used to set interval to monitor wifi
  106. * activity in passive scan in milliseconds.
  107. *
  108. * Related: None.
  109. *
  110. * Supported Feature: Scan
  111. *
  112. * Usage: External
  113. *
  114. * </ini>
  115. */
  116. #define CFG_ADAPT_DWELL_PASMON_INTVAL CFG_INI_UINT(\
  117. "adapt_dwell_passive_mon_intval",\
  118. 0, 25, 10,\
  119. CFG_VALUE_OR_DEFAULT, \
  120. "interval to monitor passive scan")
  121. /*
  122. * <ini>
  123. * adapt_dwell_wifi_act_threshold - % of wifi activity used in passive scan
  124. * @Min: 0
  125. * @Max: 100
  126. * @Default: 10
  127. *
  128. * This ini is used to set % of wifi activity used in passive scan
  129. * Acceptable values for this: 0-100 (in %)
  130. *
  131. * Related: None.
  132. *
  133. * Supported Feature: Scan
  134. *
  135. * Usage: External
  136. *
  137. * </ini>
  138. */
  139. #define CFG_ADAPT_DWELL_WIFI_THRESH CFG_INI_UINT(\
  140. "adapt_dwell_wifi_act_threshold",\
  141. 0, 100, 10,\
  142. CFG_VALUE_OR_DEFAULT, \
  143. "percent of wifi activity in pas scan")
  144. #define CFG_ADAPTIVE_DWELLTIME_ALL \
  145. CFG(CFG_ADAPTIVE_DWELL_MODE_ENABLED) \
  146. CFG(CFG_GLOBAL_ADAPTIVE_DWELL_MODE) \
  147. CFG(CFG_ADAPT_DWELL_LPF_WEIGHT) \
  148. CFG(CFG_ADAPT_DWELL_PASMON_INTVAL) \
  149. CFG(CFG_ADAPT_DWELL_WIFI_THRESH)
  150. #endif