blob: 14b864fe5a18bfec73641737635cc595ec216473 [file] [log] [blame]
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08001/*
Jiachao Wu6e9b9f92018-01-03 13:35:40 +08002 * Copyright (c) 2012-2018 The Linux Foundation. All rights reserved.
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08003 *
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08004 * 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
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080019#if !defined(HDD_CONFIG_H__)
20#define HDD_CONFIG_H__
21
22/**
23 *
24 * DOC: wlan_hdd_config.h
25 *
26 * WLAN Adapter Configuration functions
27 */
28
29/* $HEADER$ */
30
31/* Include files */
32#include <wlan_hdd_includes.h>
33#include <wlan_hdd_wmm.h>
Anurag Chouhan6d760662016-02-20 16:05:43 +053034#include <qdf_types.h>
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080035#include <csr_api.h>
36#include <sap_api.h>
Govind Singh5b486202016-06-09 18:29:42 +053037#include "osapi_linux.h"
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080038#include <wmi_unified.h>
Dustin Brown1224e212017-05-12 14:02:12 -070039#include "wlan_pmo_hw_filter_public_struct.h"
Rajeev Kumar Sirasanagandla4725ae42018-05-24 22:33:34 +053040#include "wlan_action_oui_public_struct.h"
Jeff Johnsonc57c13a2018-04-01 11:03:29 -070041#include "wlan_hdd_green_ap_cfg.h"
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080042
Jeff Johnsonb6909be2017-08-28 12:07:19 -070043struct hdd_context;
44
Jiachao Wu6e9b9f92018-01-03 13:35:40 +080045#define FW_MODULE_LOG_LEVEL_STRING_LENGTH (512)
gbian62edd7e2017-03-07 13:12:13 +080046#define TX_SCHED_WRR_PARAM_STRING_LENGTH (50)
47#define TX_SCHED_WRR_PARAMS_NUM (5)
Nirav Shahbd36b062016-07-18 11:12:59 +053048#define CFG_ENABLE_RX_THREAD (1 << 0)
49#define CFG_ENABLE_RPS (1 << 1)
50#define CFG_ENABLE_NAPI (1 << 2)
Tang Yingying5a4ccf22018-03-30 15:58:27 +080051#define CFG_ENABLE_DYNAMIC_RPS (1 << 3)
Nirav Shahbd36b062016-07-18 11:12:59 +053052
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080053#ifdef DHCP_SERVER_OFFLOAD
54#define IPADDR_NUM_ENTRIES (4)
55#define IPADDR_STRING_LENGTH (16)
56#endif
57
Nitesh Shah50a3de12017-04-03 19:37:19 +053058#define CFG_DBS_SCAN_PARAM_LENGTH (42)
59
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080060/* Number of items that can be configured */
Srinivas Girigowdaba3091c2015-11-16 17:18:40 -080061#define MAX_CFG_INI_ITEMS 1024
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080062
Rajeev Kumar Sirasanagandlaaec0b082017-06-21 11:59:41 +053063#define MAX_PRB_REQ_VENDOR_OUI_INI_LEN 160
64#define VENDOR_SPECIFIC_IE_BITMAP 0x20000000
65
Sourav Mohapatra57006c72017-11-19 16:15:55 +053066#define CFG_CONCURRENT_IFACE_MAX_LEN 16
67
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080068/* Defines for all of the things we read from the configuration (registry). */
Ashish Kumar Dhanotiya470af292017-05-31 20:46:00 +053069/*
70 * <ini>
71 * gEnableConnectedScan - Will enable or disable scan in connected state
72 * @Min: 0
73 * @Max: 1
74 * @Default: 1
75 *
76 * This ini is used to enable or disable the scanning in
77 * Connected state
78 *
79 * Related: None
80 *
81 * Supported Feature: STA
82 *
83 * Usage: External
84 *
85 * <ini>
86 */
87
88#define CFG_ENABLE_CONNECTED_SCAN_NAME "gEnableConnectedScan"
89#define CFG_ENABLE_CONNECTED_SCAN_MIN (0)
90#define CFG_ENABLE_CONNECTED_SCAN_MAX (1)
91#define CFG_ENABLE_CONNECTED_SCAN_DEFAULT (1)
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080092
Alok Kumarb64650c2018-03-23 17:05:11 +053093#ifdef WLAN_NUD_TRACKING
94/*
95 * <ini>
96 * gEnableNUDTracking - Will enable or disable NUD tracking within driver
97 * @Min: 0
98 * @Max: 1
99 * @Default: 0
100 *
101 * This ini is used to enable or disable NUD tracking within driver
102 *
103 * Related: None
104 *
105 * Supported Feature: STA
106 *
107 * Usage: External
108 *
109 * <ini>
110 */
111
112#define CFG_ENABLE_NUD_TRACKING_NAME "gEnableNUDTracking"
113#define CFG_ENABLE_NUD_TRACKING_MIN (0)
114#define CFG_ENABLE_NUD_TRACKING_MAX (1)
115#define CFG_ENABLE_NUD_TRACKING_DEFAULT (0)
116#endif
117
Sen, Devendra9ca8c432017-02-23 15:10:26 +0530118/*
119 * <ini>
120 * RTSThreshold - Will provide RTSThreshold
121 * @Min: 0
122 * @Max: 1048576
123 * @Default: 2347
124 *
125 * This ini is used to set default RTSThreshold
126 * If minimum value 0 is selectd then it will use always RTS
127 *
128 * Related: None
129 *
130 * Supported Feature: STA
131 *
132 * Usage: Internal/External
133 *
134 * </ini>
135 */
136
Prakash Dhavali7090c5f2015-11-02 17:55:19 -0800137#define CFG_RTS_THRESHOLD_NAME "RTSThreshold"
138#define CFG_RTS_THRESHOLD_MIN WNI_CFG_RTS_THRESHOLD_STAMIN /* min is 0, meaning always use RTS. */
139#define CFG_RTS_THRESHOLD_MAX WNI_CFG_RTS_THRESHOLD_STAMAX /* max is the max frame size */
140#define CFG_RTS_THRESHOLD_DEFAULT WNI_CFG_RTS_THRESHOLD_STADEF
141
Sen, Devendra9ca8c432017-02-23 15:10:26 +0530142/*
143 * <ini>
144 * gFragmentationThreshold - It will set fragmentation threshold
145 * @Min: 256
146 * @Max: 8000
147 * @Default: 8000
148 *
149 * This ini is used to indicate default fragmentation threshold
150 *
151 * Related: None
152 *
153 * Supported Feature: STA
154 *
155 * Usage: Internal/External
156 *
157 * </ini>
158 */
159
Prakash Dhavali7090c5f2015-11-02 17:55:19 -0800160#define CFG_FRAG_THRESHOLD_NAME "gFragmentationThreshold"
161#define CFG_FRAG_THRESHOLD_MIN WNI_CFG_FRAGMENTATION_THRESHOLD_STAMIN
162#define CFG_FRAG_THRESHOLD_MAX WNI_CFG_FRAGMENTATION_THRESHOLD_STAMAX
163#define CFG_FRAG_THRESHOLD_DEFAULT WNI_CFG_FRAGMENTATION_THRESHOLD_STADEF
164
165#define CFG_OPERATING_CHANNEL_NAME "gOperatingChannel"
166#define CFG_OPERATING_CHANNEL_MIN (0)
167#define CFG_OPERATING_CHANNEL_MAX (14)
168#define CFG_OPERATING_CHANNEL_DEFAULT (1)
169
Sen, Devendra9ca8c432017-02-23 15:10:26 +0530170/*
171 * <ini>
172 * gShortSlotTimeEnabled - It will set slot timing slot.
173 * @Min: 0
174 * @Max: 1
175 * @Default: 1
176 *
177 * This ini is used to set default timing slot.
178 *
179 * Related: None
180 *
181 * Supported Feature: STA
182 *
183 * Usage: Internal/External
184 *
185 * </ini>
186 */
187
Prakash Dhavali7090c5f2015-11-02 17:55:19 -0800188#define CFG_SHORT_SLOT_TIME_ENABLED_NAME "gShortSlotTimeEnabled"
189#define CFG_SHORT_SLOT_TIME_ENABLED_MIN WNI_CFG_SHORT_SLOT_TIME_STAMIN
190#define CFG_SHORT_SLOT_TIME_ENABLED_MAX WNI_CFG_SHORT_SLOT_TIME_STAMAX
191#define CFG_SHORT_SLOT_TIME_ENABLED_DEFAULT WNI_CFG_SHORT_SLOT_TIME_STADEF
192
193#define CFG_11D_SUPPORT_ENABLED_NAME "g11dSupportEnabled"
194#define CFG_11D_SUPPORT_ENABLED_MIN WNI_CFG_11D_ENABLED_STAMIN
195#define CFG_11D_SUPPORT_ENABLED_MAX WNI_CFG_11D_ENABLED_STAMAX
196#define CFG_11D_SUPPORT_ENABLED_DEFAULT WNI_CFG_11D_ENABLED_STADEF /* Default is ON */
197
198#define CFG_11H_SUPPORT_ENABLED_NAME "g11hSupportEnabled"
199#define CFG_11H_SUPPORT_ENABLED_MIN (0)
200#define CFG_11H_SUPPORT_ENABLED_MAX (1)
201#define CFG_11H_SUPPORT_ENABLED_DEFAULT (1) /* Default is ON */
202
203/* COUNTRY Code Priority */
204#define CFG_COUNTRY_CODE_PRIORITY_NAME "gCountryCodePriority"
205#define CFG_COUNTRY_CODE_PRIORITY_MIN (0)
206#define CFG_COUNTRY_CODE_PRIORITY_MAX (1)
207#define CFG_COUNTRY_CODE_PRIORITY_DEFAULT (0)
208
209#define CFG_HEARTBEAT_THRESH_24_NAME "gHeartbeat24"
210#define CFG_HEARTBEAT_THRESH_24_MIN WNI_CFG_HEART_BEAT_THRESHOLD_STAMIN
211#define CFG_HEARTBEAT_THRESH_24_MAX WNI_CFG_HEART_BEAT_THRESHOLD_STAMAX
212#define CFG_HEARTBEAT_THRESH_24_DEFAULT WNI_CFG_HEART_BEAT_THRESHOLD_STADEF
213
Sen, Devendra9ca8c432017-02-23 15:10:26 +0530214/*
215 * <ini>
216 * gMaxRxAmpduFactor - Provide the maximum ampdu factor.
217 * @Min: 0
218 * @Max: 3
219 * @Default: 3
220 *
221 * This ini is used to set default maxampdu factor
222 *
223 * Related: None
224 *
225 * Supported Feature: STA
226 *
227 * Usage: Internal/External
228 *
229 * </ini>
230 */
231
232#define CFG_MAX_RX_AMPDU_FACTOR_NAME "gMaxRxAmpduFactor"
233#define CFG_MAX_RX_AMPDU_FACTOR_MIN WNI_CFG_MAX_RX_AMPDU_FACTOR_STAMIN
234#define CFG_MAX_RX_AMPDU_FACTOR_MAX WNI_CFG_MAX_RX_AMPDU_FACTOR_STAMAX
235#define CFG_MAX_RX_AMPDU_FACTOR_DEFAULT WNI_CFG_MAX_RX_AMPDU_FACTOR_STADEF
Prakash Dhavali7090c5f2015-11-02 17:55:19 -0800236
Krishna Kumaar Natarajan22b59a72015-11-23 18:54:58 -0800237/* Configuration option for HT MPDU density (Table 8-125 802.11-2012)
238 * 0 for no restriction
239 * 1 for 1/4 micro sec
240 * 2 for 1/2 micro sec
241 * 3 for 1 micro sec
242 * 4 for 2 micro sec
243 * 5 for 4 micro sec
244 * 6 for 8 micro sec
245 * 7 for 16 micro sec
246 */
247#define CFG_HT_MPDU_DENSITY_NAME "ght_mpdu_density"
248#define CFG_HT_MPDU_DENSITY_MIN WNI_CFG_MPDU_DENSITY_STAMIN
249#define CFG_HT_MPDU_DENSITY_MAX WNI_CFG_MPDU_DENSITY_STAMAX
250#define CFG_HT_MPDU_DENSITY_DEFAULT WNI_CFG_MPDU_DENSITY_STADEF
251
Prakash Dhavali7090c5f2015-11-02 17:55:19 -0800252#define CFG_REG_CHANGE_DEF_COUNTRY_NAME "gRegulatoryChangeCountry"
253#define CFG_REG_CHANGE_DEF_COUNTRY_DEFAULT (0)
254#define CFG_REG_CHANGE_DEF_COUNTRY_MIN (0)
255#define CFG_REG_CHANGE_DEF_COUNTRY_MAX (1)
256
257#define CFG_ADVERTISE_CONCURRENT_OPERATION_NAME "gAdvertiseConcurrentOperation"
258#define CFG_ADVERTISE_CONCURRENT_OPERATION_DEFAULT (1)
259#define CFG_ADVERTISE_CONCURRENT_OPERATION_MIN (0)
260#define CFG_ADVERTISE_CONCURRENT_OPERATION_MAX (1)
261
Srinivas Girigowda2fb677c2017-03-25 15:35:34 -0700262enum hdd_dot11_mode {
Prakash Dhavali7090c5f2015-11-02 17:55:19 -0800263 eHDD_DOT11_MODE_AUTO = 0, /* covers all things we support */
264 eHDD_DOT11_MODE_abg, /* 11a/b/g only, no HT, no proprietary */
265 eHDD_DOT11_MODE_11b,
266 eHDD_DOT11_MODE_11g,
267 eHDD_DOT11_MODE_11n,
268 eHDD_DOT11_MODE_11g_ONLY,
269 eHDD_DOT11_MODE_11n_ONLY,
270 eHDD_DOT11_MODE_11b_ONLY,
271 eHDD_DOT11_MODE_11ac_ONLY,
272 eHDD_DOT11_MODE_11ac,
273 eHDD_DOT11_MODE_11a,
Krishna Kumaar Natarajan4f1d7722017-03-03 21:12:51 -0800274 eHDD_DOT11_MODE_11ax_ONLY,
275 eHDD_DOT11_MODE_11ax,
Srinivas Girigowda2fb677c2017-03-25 15:35:34 -0700276};
Prakash Dhavali7090c5f2015-11-02 17:55:19 -0800277
Sen, Devendra9ca8c432017-02-23 15:10:26 +0530278/*
279 * <ini>
280 * gChannelBondingMode24GHz - Configures Channel Bonding in 24 GHz
281 * @Min: 0
282 * @Max: 10
283 * @Default: 0
284 *
285 * This ini is used to set default channel bonding mode 24GHZ
286 *
287 * Related: None
288 *
289 * Supported Feature: STA
290 *
291 * Usage: Internal/External
292 *
293 * </ini>
294 */
295
Prakash Dhavali7090c5f2015-11-02 17:55:19 -0800296#define CFG_CHANNEL_BONDING_MODE_24GHZ_NAME "gChannelBondingMode24GHz"
297#define CFG_CHANNEL_BONDING_MODE_MIN WNI_CFG_CHANNEL_BONDING_MODE_STAMIN
298#define CFG_CHANNEL_BONDING_MODE_MAX WNI_CFG_CHANNEL_BONDING_MODE_STAMAX
299#define CFG_CHANNEL_BONDING_MODE_DEFAULT WNI_CFG_CHANNEL_BONDING_MODE_STADEF
300
Sen, Devendra9ca8c432017-02-23 15:10:26 +0530301/*
302 * <ini>
Abhishek Singhb59f8d42017-07-31 14:42:47 +0530303 * override_ht20_40_24g - use channel Bonding in 24 GHz from supplicant
304 * @Min: 0
305 * @Max: 1
306 * @Default: 0
307 *
308 * This ini is used to use channel Bonding in 24 GHz from supplicant if
309 * gChannelBondingMode24GHz is set
310 *
311 * Related: gChannelBondingMode24GHz
312 *
313 * Supported Feature: STA
314 *
315 * Usage: Internal/External
316 *
317 * </ini>
318 */
319
320#define CFG_OVERRIDE_HT40_20_24GHZ_NAME "override_ht20_40_24g"
321#define CFG_OVERRIDE_HT40_20_24GHZ_MIN 0
322#define CFG_OVERRIDE_HT40_20_24GHZ_MAX 1
323#define CFG_OVERRIDE_HT40_20_24GHZ_DEFAULT 0
324
325/*
326 * <ini>
Sen, Devendra9ca8c432017-02-23 15:10:26 +0530327 * gChannelBondingMode5GHz - Configures Channel Bonding in 5 GHz
328 * @Min: 0
329 * @Max: 10
330 * @Default: 0
331 *
332 * This ini is used to set default channel bonding mode 5GHZ
333 *
334 * Related: None
335 *
336 * Supported Feature: STA
337 *
338 * Usage: Internal/External
339 *
340 * </ini>
341 */
342
Prakash Dhavali7090c5f2015-11-02 17:55:19 -0800343#define CFG_CHANNEL_BONDING_MODE_5GHZ_NAME "gChannelBondingMode5GHz"
344#define CFG_CHANNEL_BONDING_MODE_MIN WNI_CFG_CHANNEL_BONDING_MODE_STAMIN
345#define CFG_CHANNEL_BONDING_MODE_MAX WNI_CFG_CHANNEL_BONDING_MODE_STAMAX
346#define CFG_CHANNEL_BONDING_MODE_DEFAULT WNI_CFG_CHANNEL_BONDING_MODE_STADEF
347
Sen, Devendra9ca8c432017-02-23 15:10:26 +0530348/*
349 * <ini>
Sen, Devendra9ca8c432017-02-23 15:10:26 +0530350 * gShortGI20Mhz - Short Guard Interval for HT20
351 * @Min: 0
352 * @Max: 1
353 * @Default: 1
354 *
355 * This ini is used to set default short interval for HT20
356 *
357 * Related: None
358 *
359 * Supported Feature: STA
360 *
361 * Usage: Internal/External
362 *
363 * </ini>
364 */
365
Prakash Dhavali7090c5f2015-11-02 17:55:19 -0800366#define CFG_SHORT_GI_20MHZ_NAME "gShortGI20Mhz"
367#define CFG_SHORT_GI_20MHZ_MIN WNI_CFG_SHORT_GI_20MHZ_STAMIN
368#define CFG_SHORT_GI_20MHZ_MAX WNI_CFG_SHORT_GI_20MHZ_STAMAX
369#define CFG_SHORT_GI_20MHZ_DEFAULT WNI_CFG_SHORT_GI_20MHZ_STADEF
370
yeshwanth sriram guntukabdfe4352017-02-16 14:44:31 +0530371/*
372 * <ini>
373 * gScanResultAgeCount - Set scan result age count
374 * @Min: 1
375 * @Max: 100
376 * @Default: 1
377 *
378 * This ini parameter is the number of times a scan
379 * doesn't find it before it is removed from results.
380 *
381 * Related: None
382 *
383 * Supported Feature: Scan
384 *
385 * Usage: External
386 *
387 * </ini>
388 */
Prakash Dhavali7090c5f2015-11-02 17:55:19 -0800389#define CFG_SCAN_RESULT_AGE_COUNT_NAME "gScanResultAgeCount"
390#define CFG_SCAN_RESULT_AGE_COUNT_MIN (1)
391#define CFG_SCAN_RESULT_AGE_COUNT_MAX (100)
Jeff Johnsoncb331d92016-09-22 12:43:49 -0700392#define CFG_SCAN_RESULT_AGE_COUNT_DEFAULT (1)
Prakash Dhavali7090c5f2015-11-02 17:55:19 -0800393
yeshwanth sriram guntukabdfe4352017-02-16 14:44:31 +0530394/*
395 * <ini>
yeshwanth sriram guntukabdfe4352017-02-16 14:44:31 +0530396 * gNeighborScanTimerPeriod - Set neighbor scan timer period
397 * @Min: 3
398 * @Max: 300
399 * @Default: 200
400 *
401 * This ini is used to set the timer period in secs after
402 * which neighbor scan is trigerred.
403 *
404 * Related: None
405 *
406 * Supported Feature: LFR Scan
407 *
408 * Usage: External
409 *
410 * </ini>
411 */
412#define CFG_NEIGHBOR_SCAN_TIMER_PERIOD_NAME "gNeighborScanTimerPeriod"
413#define CFG_NEIGHBOR_SCAN_TIMER_PERIOD_MIN (3)
414#define CFG_NEIGHBOR_SCAN_TIMER_PERIOD_MAX (300)
Varun Reddy Yeturub60d5222017-10-14 23:38:36 -0700415#define CFG_NEIGHBOR_SCAN_TIMER_PERIOD_DEFAULT (100)
yeshwanth sriram guntukabdfe4352017-02-16 14:44:31 +0530416
417/*
418 * <ini>
Sridhar Selvaraj1b2330c2017-07-21 15:16:42 +0530419 * gRoamRestTimeMin - Set min neighbor scan timer period
420 * @Min: 3
421 * @Max: 300
422 * @Default: 200
423 *
424 * This is the min rest time after which firmware will check for traffic
425 * and if there no traffic it will move to a new channel to scan
426 * else it will stay on the home channel till gNeighborScanTimerPeriod time
427 * and then will move to a new channel to scan.
428 *
429 * Related: None
430 *
431 * Supported Feature: LFR Scan
432 *
433 * Usage: External
434 *
435 * </ini>
436 */
437#define CFG_NEIGHBOR_SCAN_MIN_TIMER_PERIOD_NAME "gRoamRestTimeMin"
438#define CFG_NEIGHBOR_SCAN_MIN_TIMER_PERIOD_MIN (3)
439#define CFG_NEIGHBOR_SCAN_MIN_TIMER_PERIOD_MAX (300)
Varun Reddy Yeturub60d5222017-10-14 23:38:36 -0700440#define CFG_NEIGHBOR_SCAN_MIN_TIMER_PERIOD_DEFAULT (50)
Sridhar Selvaraj1b2330c2017-07-21 15:16:42 +0530441
442/*
443 * <ini>
yeshwanth sriram guntukabdfe4352017-02-16 14:44:31 +0530444 * gOpportunisticThresholdDiff - Set oppurtunistic threshold diff
445 * @Min: 0
446 * @Max: 127
447 * @Default: 0
448 *
449 * This ini is used to set opportunistic threshold diff.
450 * This parameter is the RSSI diff above neighbor lookup
451 * threshold, when opportunistic scan should be triggered.
Jeff Johnson2cc31fd2018-05-05 23:54:23 -0700452 * MAX value is chosen so that this type of scan can be
yeshwanth sriram guntukabdfe4352017-02-16 14:44:31 +0530453 * always enabled by user.
454 * MIN value will cause opportunistic scan to be triggered
455 * in neighbor lookup RSSI range.
456 *
457 * Related: None
458 *
459 * Supported Feature: LFR Scan
460 *
461 * Usage: External
462 *
463 * </ini>
464 */
465#define CFG_OPPORTUNISTIC_SCAN_THRESHOLD_DIFF_NAME "gOpportunisticThresholdDiff"
466#define CFG_OPPORTUNISTIC_SCAN_THRESHOLD_DIFF_MIN (0)
467#define CFG_OPPORTUNISTIC_SCAN_THRESHOLD_DIFF_MAX (127)
468#define CFG_OPPORTUNISTIC_SCAN_THRESHOLD_DIFF_DEFAULT (0)
469
470/*
471 * <ini>
472 * gNeighborScanChannelList - Set channels to be scanned
473 * by firmware for LFR scan
474 * @Default: ""
475 *
476 * This ini is used to set the channels to be scanned
477 * by firmware for LFR scan.
478 *
479 * Related: None
480 *
481 * Supported Feature: LFR Scan
482 *
483 * Usage: External
484 *
485 * </ini>
486 */
487#define CFG_NEIGHBOR_SCAN_CHAN_LIST_NAME "gNeighborScanChannelList"
488#define CFG_NEIGHBOR_SCAN_CHAN_LIST_DEFAULT ""
489
490/*
491 * <ini>
492 * gNeighborScanChannelMinTime - Set neighbor scan channel min time
493 * @Min: 10
494 * @Max: 40
495 * @Default: 20
496 *
497 * This ini is used to set the minimum time in secs spent on each
498 * channel in LFR scan inside firmware.
499 *
500 * Related: None
501 *
502 * Supported Feature: LFR Scan
503 *
504 * Usage: External
505 *
506 * </ini>
507 */
508#define CFG_NEIGHBOR_SCAN_MIN_CHAN_TIME_NAME "gNeighborScanChannelMinTime"
509#define CFG_NEIGHBOR_SCAN_MIN_CHAN_TIME_MIN (10)
510#define CFG_NEIGHBOR_SCAN_MIN_CHAN_TIME_MAX (40)
511#define CFG_NEIGHBOR_SCAN_MIN_CHAN_TIME_DEFAULT (20)
512
513/*
514 * <ini>
515 * gNeighborScanChannelMaxTime - Set neighbor scan channel max time
516 * @Min: 3
517 * @Max: 300
518 * @Default: 30
519 *
520 * This ini is used to set the maximum time in secs spent on each
521 * channel in LFR scan inside firmware.
522 *
523 * Related: None
524 *
525 * Supported Feature: LFR Scan
526 *
527 * Usage: External
528 *
529 * </ini>
530 */
531#define CFG_NEIGHBOR_SCAN_MAX_CHAN_TIME_NAME "gNeighborScanChannelMaxTime"
532#define CFG_NEIGHBOR_SCAN_MAX_CHAN_TIME_MIN (3)
533#define CFG_NEIGHBOR_SCAN_MAX_CHAN_TIME_MAX (300)
534#define CFG_NEIGHBOR_SCAN_MAX_CHAN_TIME_DEFAULT (30)
535
536/*
537 * <ini>
538 * gNeighborScanRefreshPeriod - Set neighbor scan refresh period
539 * @Min: 1000
540 * @Max: 60000
541 * @Default: 20000
542 *
543 * This ini is used by firmware to set scan refresh period
544 * in msecs for lfr scan.
545 *
546 * Related: None
547 *
548 * Supported Feature: LFR Scan
549 *
550 * Usage: External
551 *
552 * </ini>
553 */
554#define CFG_NEIGHBOR_SCAN_RESULTS_REFRESH_PERIOD_NAME "gNeighborScanRefreshPeriod"
555#define CFG_NEIGHBOR_SCAN_RESULTS_REFRESH_PERIOD_MIN (1000)
556#define CFG_NEIGHBOR_SCAN_RESULTS_REFRESH_PERIOD_MAX (60000)
557#define CFG_NEIGHBOR_SCAN_RESULTS_REFRESH_PERIOD_DEFAULT (20000)
558
559/*
560 * <ini>
561 * gEmptyScanRefreshPeriod - Set empty scan refresh period
562 * @Min: 0
563 * @Max: 60000
564 * @Default: 0
565 *
566 * This ini is used by firmware to set scan period in msecs
567 * following empty scan results.
568 *
569 * Related: None
570 *
571 * Supported Feature: LFR Scan
572 *
573 * Usage: External
574 *
575 * </ini>
576 */
577#define CFG_EMPTY_SCAN_REFRESH_PERIOD_NAME "gEmptyScanRefreshPeriod"
578#define CFG_EMPTY_SCAN_REFRESH_PERIOD_MIN (0)
579#define CFG_EMPTY_SCAN_REFRESH_PERIOD_MAX (60000)
580#define CFG_EMPTY_SCAN_REFRESH_PERIOD_DEFAULT (0)
581
582/*
583 * <ini>
584 * gEnableDFSChnlScan - Enable DFS channel scan
585 * @Min: 0
586 * @Max: 1
587 * @Default: 1
588 *
589 * This ini is used to enable or disable DFS channel
590 * scan
Deepak Dhamdhere828f1892017-02-09 11:51:19 -0800591 */
592#define CFG_ENABLE_DFS_CHNL_SCAN_NAME "gEnableDFSChnlScan"
593#define CFG_ENABLE_DFS_CHNL_SCAN_MIN (0)
594#define CFG_ENABLE_DFS_CHNL_SCAN_MAX (1)
595#define CFG_ENABLE_DFS_CHNL_SCAN_DEFAULT (1)
596
597/*
598 * <ini>
599 * pmkidModes - Enable PMKID modes
600 * This INI is used to enable PMKID feature options
601 * @Min: 0
602 * @Max: 3
603 * @Default: 3
yeshwanth sriram guntukabdfe4352017-02-16 14:44:31 +0530604 *
605 * Related: None
606 *
607 * Supported Feature: Scan
608 *
609 * Usage: External
610 *
611 * </ini>
612 */
Deepak Dhamdhere828f1892017-02-09 11:51:19 -0800613#define CFG_PMKID_MODES_NAME "pmkidModes"
614#define CFG_PMKID_MODES_MIN (0x0)
615#define CFG_PMKID_MODES_MAX (0x3)
616#define CFG_PMKID_MODES_DEFAULT (0x3)
617#define CFG_PMKID_MODES_OKC (0x1)
618#define CFG_PMKID_MODES_PMKSA_CACHING (0x2)
yeshwanth sriram guntukabdfe4352017-02-16 14:44:31 +0530619
620/*
621 * <ini>
Wu Gao94488c22018-03-14 14:37:25 +0800622 * gEnableDFSPnoChnlScan - enable dfs channels in PNO scan
yeshwanth sriram guntukabdfe4352017-02-16 14:44:31 +0530623 * @Min: 0
624 * @Max: 1
625 * @Default: 1
626 *
Wu Gao94488c22018-03-14 14:37:25 +0800627 * This ini is used to enable/disable dfs channels in PNO scan request,
628 * enabling this ini enables driver to include dfs channels in its
629 * PNO scan request
630 * Related: NA
yeshwanth sriram guntukabdfe4352017-02-16 14:44:31 +0530631 *
Wu Gao94488c22018-03-14 14:37:25 +0800632 * Supported Feature: DFS, PNO
yeshwanth sriram guntukabdfe4352017-02-16 14:44:31 +0530633 *
Wu Gao94488c22018-03-14 14:37:25 +0800634 * Usage: Internal/External
yeshwanth sriram guntukabdfe4352017-02-16 14:44:31 +0530635 *
636 * </ini>
637 */
638#define CFG_ENABLE_DFS_PNO_CHNL_SCAN_NAME "gEnableDFSPnoChnlScan"
639#define CFG_ENABLE_DFS_PNO_CHNL_SCAN_MIN (0)
640#define CFG_ENABLE_DFS_PNO_CHNL_SCAN_MAX (1)
641#define CFG_ENABLE_DFS_PNO_CHNL_SCAN_DEFAULT (1)
642
643/*
644 * <ini>
645 * gEnableFirstScan2GOnly - Enable first scan 2G only
646 * @Min: 0
647 * @Max: 1
648 * @Default: 0
649 *
650 * This ini is used to scan 2G channels only in first scan.
651 *
652 * Related: None
653 *
654 * Supported Feature: Scan
655 *
656 * Usage: External
657 *
658 * </ini>
659 */
660#define CFG_ENABLE_FIRST_SCAN_2G_ONLY_NAME "gEnableFirstScan2GOnly"
661#define CFG_ENABLE_FIRST_SCAN_2G_ONLY_MIN (0)
662#define CFG_ENABLE_FIRST_SCAN_2G_ONLY_MAX (1)
663#define CFG_ENABLE_FIRST_SCAN_2G_ONLY_DEFAULT (0)
664
665/*
666 * <ini>
667 * gScanAgingTime - Set scan aging time
668 * @Min: 0
669 * @Max: 200
670 * @Default: 30
671 *
672 * This ini is used to set scan aging timeout value
673 * in secs. For example after 30 secs the bss results
674 * greater than 30secs age will be flushed.
675 *
676 * Related: None
677 *
678 * Supported Feature: Scan
679 *
680 * Usage: External
681 *
682 * </ini>
683 */
684#define CFG_SCAN_AGING_PARAM_NAME "gScanAgingTime"
685#define CFG_SCAN_AGING_PARAM_MIN (0)
686#define CFG_SCAN_AGING_PARAM_MAX (200)
Varun Reddy Yeturuc4631fb2017-07-06 15:13:53 -0700687#ifdef QCA_WIFI_NAPIER_EMULATION
688#define CFG_SCAN_AGING_PARAM_DEFAULT (90)
689#else
yeshwanth sriram guntukabdfe4352017-02-16 14:44:31 +0530690#define CFG_SCAN_AGING_PARAM_DEFAULT (30)
Varun Reddy Yeturuc4631fb2017-07-06 15:13:53 -0700691#endif
yeshwanth sriram guntukabdfe4352017-02-16 14:44:31 +0530692
693#ifdef FEATURE_WLAN_SCAN_PNO
694/*
695 * <ini>
696 * gPNOScanSupport - Enable or Disable PNO scan
697 * @Min: 1
698 * @Max: 0
699 * @Default: 1
700 *
701 * This ini is used to Enable or Disable PNO scan
702 *
703 * Related: None
704 *
705 * Supported Feature: Scan
706 *
707 * Usage: External
708 *
709 * </ini>
710 */
711#define CFG_PNO_SCAN_SUPPORT "gPNOScanSupport"
712#define CFG_PNO_SCAN_SUPPORT_ENABLE (1)
713#define CFG_PNO_SCAN_SUPPORT_DISABLE (0)
714#define CFG_PNO_SCAN_SUPPORT_DEFAULT (1)
715
716/*
717 * <ini>
718 * gPNOScanTimerRepeatValue - Set PNO scan timer repeat value
719 * @Min: 30
720 * @Max: 0
721 * @Default: 0xffffffff
722 *
723 * This ini is used by firmware to set fast scan max cycles
724 * equal to gPNOScanTimerRepeatValue. Taking power consumption
725 * into account firmware after gPNOScanTimerRepeatValue times
726 * fast_scan_period switches to slow_scan_period.
727 *
728 * Related: None
729 *
730 * Supported Feature: Scan
731 *
732 * Usage: External
733 *
734 * </ini>
735 */
736#define CFG_PNO_SCAN_TIMER_REPEAT_VALUE "gPNOScanTimerRepeatValue"
737#define CFG_PNO_SCAN_TIMER_REPEAT_VALUE_DEFAULT (30)
738#define CFG_PNO_SCAN_TIMER_REPEAT_VALUE_MIN (0)
739#define CFG_PNO_SCAN_TIMER_REPEAT_VALUE_MAX (0xffffffff)
740
741/*
742 * <ini>
743 * gPNOSlowScanMultiplier - Set PNO slow scan multiplier
744 * @Min: 6
745 * @Max: 0
746 * @Default: 30
747 *
748 * This ini is used by firmware to set slow scan period
749 * as gPNOSlowScanMultiplier times fast_scan_period.
750 *
751 * Related: None
752 *
753 * Supported Feature: Scan
754 *
755 * Usage: External
756 *
757 * </ini>
758 */
759#define CFG_PNO_SLOW_SCAN_MULTIPLIER "gPNOSlowScanMultiplier"
760#define CFG_PNO_SLOW_SCAN_MULTIPLIER_DEFAULT (6)
761#define CFG_PNO_SLOW_SCAN_MULTIPLIER_MIN (0)
762#define CFG_PNO_SLOW_SCAN_MULTIPLIER_MAX (30)
763#endif
764
765/*
766 * <ini>
767 * max_scan_count - Set maximum number of scans
768 * @Min: 1
769 * @Max: 8
770 * @Default: 4
771 *
772 * This ini is used to set the maximum number of
773 * scans that host can queue at firmware.
774 * Rome firmware support 8 scan queue size and 4
775 * are reserved for internal scan requests like
776 * roaming. So host can send 4 scan requests.
777 * In iHelium, there is no constraint in number of
778 * scan queue size at firmware but the current use
779 * cases needs support of maximum of 4 scan request
780 * from host.
781 *
782 * Related: None
783 *
784 * Supported Feature: Scan
785 *
786 * Usage: External
787 *
788 * </ini>
789 */
790#define CFG_MAX_SCAN_COUNT_NAME "max_scan_count"
791#define CFG_MAX_SCAN_COUNT_MIN (1)
792#define CFG_MAX_SCAN_COUNT_MAX (8)
793#define CFG_MAX_SCAN_COUNT_DEFAULT (4)
794
795/*
796 * <ini>
797 * gPassiveMaxChannelTime - Set max channel time for passive scan
798 * @Min: 0
799 * @Max: 10000
800 * @Default: 110
801 *
802 * This ini is used to set maximum channel time in secs spent in
803 * passive scan
804 *
805 * Related: None
806 *
807 * Supported Feature: Scan
808 *
809 * Usage: External
810 *
811 * </ini>
812 */
813#define CFG_PASSIVE_MAX_CHANNEL_TIME_NAME "gPassiveMaxChannelTime"
814#define CFG_PASSIVE_MAX_CHANNEL_TIME_MIN (0)
815#define CFG_PASSIVE_MAX_CHANNEL_TIME_MAX (10000)
816#define CFG_PASSIVE_MAX_CHANNEL_TIME_DEFAULT (110)
817
818/*
819 * <ini>
yeshwanth sriram guntukabdfe4352017-02-16 14:44:31 +0530820 * gActiveMaxChannelTime - Set max channel time for active scan
821 * @Min: 0
822 * @Max: 10000
823 * @Default: 40
824 *
825 * This ini is used to set maximum channel time in secs spent in
826 * active scan
827 *
828 * Related: None
829 *
830 * Supported Feature: Scan
831 *
832 * Usage: External
833 *
834 * </ini>
835 */
836#define CFG_ACTIVE_MAX_CHANNEL_TIME_NAME "gActiveMaxChannelTime"
837#define CFG_ACTIVE_MAX_CHANNEL_TIME_MIN (0)
838#define CFG_ACTIVE_MAX_CHANNEL_TIME_MAX (10000)
839#define CFG_ACTIVE_MAX_CHANNEL_TIME_DEFAULT (40)
840
841/*
842 * <ini>
Kiran Kumar Lokerea2dfefe2017-06-29 19:01:24 -0700843 * gScanNumProbes - Set the number of probes on each channel for active scan
844 * @Min: 0
845 * @Max: 20
846 * @Default: 0
847 *
848 * This ini is used to set number of probes on each channel for
849 * active scan
850 *
851 * Related: None
852 *
853 * Supported Feature: Scan
854 *
855 * Usage: External
856 *
857 * </ini>
858 */
859#define CFG_SCAN_NUM_PROBES_NAME "gScanNumProbes"
860#define CFG_SCAN_NUM_PROBES_MIN (0)
861#define CFG_SCAN_NUM_PROBES_MAX (20)
862#define CFG_SCAN_NUM_PROBES_DEFAULT (0)
863
864/*
865 * <ini>
866 * gScanProbeRepeatTime - Set the probe repeat time on each channel for active scan
867 * @Min: 0
868 * @Max: 30
869 * @Default: 0
870 *
871 * This ini is used to set probe repeat time on each channel for
872 * active scan
873 *
874 * Related: None
875 *
876 * Supported Feature: Scan
877 *
878 * Usage: External
879 *
880 * </ini>
881 */
882#define CFG_SCAN_PROBE_REPEAT_TIME_NAME "gScanProbeRepeatTime"
883#define CFG_SCAN_PROBE_REPEAT_TIME_MIN (0)
884#define CFG_SCAN_PROBE_REPEAT_TIME_MAX (30)
885#define CFG_SCAN_PROBE_REPEAT_TIME_DEFAULT (0)
886
yeshwanth sriram guntukabdfe4352017-02-16 14:44:31 +0530887#ifdef FEATURE_WLAN_EXTSCAN
888/*
889 * <ini>
890 * gExtScanEnable - Enable external scan
891 * @Min: 0
892 * @Max: 1
893 * @Default: 1
894 *
895 * This ini is used to control enabling of external scan
896 * feature.
897 *
898 * Related: None
899 *
900 * Supported Feature: Scan
901 *
902 * Usage: External
903 *
904 * </ini>
905 */
906#define CFG_EXTSCAN_ALLOWED_NAME "gExtScanEnable"
907#define CFG_EXTSCAN_ALLOWED_MIN (0)
908#define CFG_EXTSCAN_ALLOWED_MAX (1)
909#define CFG_EXTSCAN_ALLOWED_DEF (1)
910
911/*
912 * <ini>
913 * gExtScanPassiveMaxChannelTime - Set max channel time for external
914 * passive scan
915 * @Min: 0
916 * @Max: 500
917 * @Default: 110
918 *
919 * This ini is used to set maximum channel time in secs spent in
920 * external passive scan
921 *
922 * Related: None
923 *
924 * Supported Feature: Scan
925 *
926 * Usage: External
927 *
928 * </ini>
929 */
930#define CFG_EXTSCAN_PASSIVE_MAX_CHANNEL_TIME_NAME "gExtScanPassiveMaxChannelTime"
931#define CFG_EXTSCAN_PASSIVE_MAX_CHANNEL_TIME_MIN (0)
932#define CFG_EXTSCAN_PASSIVE_MAX_CHANNEL_TIME_MAX (500)
933#define CFG_EXTSCAN_PASSIVE_MAX_CHANNEL_TIME_DEFAULT (110)
934
935/*
936 * <ini>
937 * gExtScanPassiveMinChannelTime - Set min channel time for external
938 * passive scan
939 * @Min: 0
940 * @Max: 500
941 * @Default: 60
942 *
943 * This ini is used to set minimum channel time in secs spent in
944 * external passive scan
945 *
946 * Related: None
947 *
948 * Supported Feature: Scan
949 *
950 * Usage: External
951 *
952 * </ini>
953 */
954#define CFG_EXTSCAN_PASSIVE_MIN_CHANNEL_TIME_NAME "gExtScanPassiveMinChannelTime"
955#define CFG_EXTSCAN_PASSIVE_MIN_CHANNEL_TIME_MIN (0)
956#define CFG_EXTSCAN_PASSIVE_MIN_CHANNEL_TIME_MAX (500)
957#define CFG_EXTSCAN_PASSIVE_MIN_CHANNEL_TIME_DEFAULT (60)
958
959/*
960 * <ini>
961 * gExtScanActiveMaxChannelTime - Set min channel time for external
962 * active scan
963 * @Min: 0
964 * @Max: 110
965 * @Default: 40
966 *
967 * This ini is used to set maximum channel time in secs spent in
968 * external active scan
969 *
970 * Related: None
971 *
972 * Supported Feature: Scan
973 *
974 * Usage: External
975 *
976 * </ini>
977 */
978#define CFG_EXTSCAN_ACTIVE_MAX_CHANNEL_TIME_NAME "gExtScanActiveMaxChannelTime"
979#define CFG_EXTSCAN_ACTIVE_MAX_CHANNEL_TIME_MIN (0)
980#define CFG_EXTSCAN_ACTIVE_MAX_CHANNEL_TIME_MAX (110)
981#define CFG_EXTSCAN_ACTIVE_MAX_CHANNEL_TIME_DEFAULT (40)
982
983/*
984 * <ini>
985 * gExtScanActiveMinChannelTime - Set min channel time for external
986 * active scan
987 * @Min: 0
988 * @Max: 110
989 * @Default: 20
990 *
991 * This ini is used to set minimum channel time in secs spent in
992 * external active scan
993 *
994 * Related: None
995 *
996 * Supported Feature: Scan
997 *
998 * Usage: External
999 *
1000 * </ini>
1001 */
1002#define CFG_EXTSCAN_ACTIVE_MIN_CHANNEL_TIME_NAME "gExtScanActiveMinChannelTime"
1003#define CFG_EXTSCAN_ACTIVE_MIN_CHANNEL_TIME_MIN (0)
1004#define CFG_EXTSCAN_ACTIVE_MIN_CHANNEL_TIME_MAX (110)
1005#define CFG_EXTSCAN_ACTIVE_MIN_CHANNEL_TIME_DEFAULT (20)
1006#endif
1007
1008/*
1009 * <ini>
1010 * gChPredictionFullScanMs - Set periodic timer for channel
1011 * prediction
1012 * @Min: 3000
1013 * @Max: 0x7fffffff
1014 * @Default: 60000
1015 *
1016 * This ini is used to set the periodic timer upon which
1017 * a full scan needs to be triggered when PNO channel
1018 * prediction feature is enabled. This parameter is intended
1019 * to tweak the internal algortihm for experiments.
1020 *
1021 * Related: None
1022 *
1023 * Supported Feature: Scan
1024 *
1025 * Usage: Internal
1026 *
1027 * </ini>
1028 */
1029#define CFG_CHANNEL_PREDICTION_FULL_SCAN_MS_NAME "gChPredictionFullScanMs"
1030#define CFG_CHANNEL_PREDICTION_FULL_SCAN_MS_MIN (30000)
1031#define CFG_CHANNEL_PREDICTION_FULL_SCAN_MS_MAX (0x7fffffff)
1032#define CFG_CHANNEL_PREDICTION_FULL_SCAN_MS_DEFAULT (60000)
1033
1034/*
1035 * <ini>
1036 * gEnableEarlyStopScan - Set early stop scan
1037 * @Min: 0
1038 * @Max: 1
1039 * @Default: 1
1040 *
1041 * This ini is used to set early stop scan. Early stop
1042 * scan is a feature for roaming to stop the scans at
1043 * an early stage as soon as we find a better AP to roam.
1044 * This would make the roaming happen quickly.
1045 *
1046 * Related: None
1047 *
1048 * Supported Feature: LFR Scan
1049 *
1050 * Usage: External
1051 *
1052 * </ini>
1053 */
1054#define CFG_EARLY_STOP_SCAN_ENABLE "gEnableEarlyStopScan"
1055#define CFG_EARLY_STOP_SCAN_ENABLE_MIN (0)
1056#define CFG_EARLY_STOP_SCAN_ENABLE_MAX (1)
1057#define CFG_EARLY_STOP_SCAN_ENABLE_DEFAULT (1)
1058
1059/*
1060 * <ini>
1061 * gEarlyStopScanMinThreshold - Set early stop scan min
1062 * threshold
1063 * @Min: -80
1064 * @Max: -70
1065 * @Default: -73
1066 *
1067 * This ini is used to set the early stop scan minimum
1068 * threshold. Early stop scan minimum threshold is the
1069 * minimum threshold to be considered for stopping the
1070 * scan. The algorithm starts with a scan on the greedy
1071 * channel list with the maximum threshold and steps down
1072 * the threshold by 20% for each further channel. It can
1073 * step down on each channel but cannot go lower than the
1074 * minimum threshold.
1075 *
1076 * Related: None
1077 *
1078 * Supported Feature: Scan
1079 *
1080 * Usage: External
1081 *
1082 * </ini>
1083 */
1084#define CFG_EARLY_STOP_SCAN_MIN_THRESHOLD "gEarlyStopScanMinThreshold"
1085#define CFG_EARLY_STOP_SCAN_MIN_THRESHOLD_MIN (-80)
1086#define CFG_EARLY_STOP_SCAN_MIN_THRESHOLD_MAX (-70)
1087#define CFG_EARLY_STOP_SCAN_MIN_THRESHOLD_DEFAULT (-73)
1088
1089/*
1090 * <ini>
1091 * gEarlyStopScanMaxThreshold - Set early stop scan max
1092 * threshold
1093 * @Min: -60
1094 * @Max: -40
1095 * @Default: -43
1096 *
1097 * This ini is used to set the the early stop scan maximum
1098 * threshold at which the candidate AP should be to be
1099 * qualified as a potential roam candidate and good enough
1100 * to stop the roaming scan.
1101 *
1102 * Related: None
1103 *
1104 * Supported Feature: Scan
1105 *
1106 * Usage: External
1107 *
1108 * </ini>
1109 */
1110#define CFG_EARLY_STOP_SCAN_MAX_THRESHOLD "gEarlyStopScanMaxThreshold"
1111#define CFG_EARLY_STOP_SCAN_MAX_THRESHOLD_MIN (-60)
1112#define CFG_EARLY_STOP_SCAN_MAX_THRESHOLD_MAX (-40)
1113#define CFG_EARLY_STOP_SCAN_MAX_THRESHOLD_DEFAULT (-43)
1114
1115/*
1116 * <ini>
1117 * gFirstScanBucketThreshold - Set first scan bucket
1118 * threshold
1119 * @Min: -50
1120 * @Max: -30
1121 * @Default: -30
1122 *
1123 * This ini will configure the first scan bucket
1124 * threshold to the mentioned value and all the AP's which
1125 * have RSSI under this threshold will fall under this
1126 * bucket. This configuration item used to tweak and
1127 * test the input for internal algorithm.
1128 *
1129 * Related: None
1130 *
1131 * Supported Feature: Scan
1132 *
1133 * Usage: Internal
1134 *
1135 * </ini>
1136 */
1137#define CFG_FIRST_SCAN_BUCKET_THRESHOLD_NAME "gFirstScanBucketThreshold"
1138#define CFG_FIRST_SCAN_BUCKET_THRESHOLD_MIN (-50)
1139#define CFG_FIRST_SCAN_BUCKET_THRESHOLD_MAX (-30)
1140#define CFG_FIRST_SCAN_BUCKET_THRESHOLD_DEFAULT (-30)
1141
1142/*
1143 * <ini>
1144 * obss_active_dwelltime - Set obss active dwelltime
1145 * @Min: 5
1146 * @Max: 1000
1147 * @Default: 10
1148 *
1149 * This ini is used to set dwell time in secs for active
1150 * obss scan
1151 *
1152 * Related: None
1153 *
1154 * Supported Feature: Scan
1155 *
1156 * Usage: External
1157 *
1158 * </ini>
1159 */
1160#define CFG_OBSS_HT40_SCAN_ACTIVE_DWELL_TIME_NAME "obss_active_dwelltime"
1161#define CFG_OBSS_HT40_SCAN_ACTIVE_DWELL_TIME_MIN (5)
1162#define CFG_OBSS_HT40_SCAN_ACTIVE_DWELL_TIME_MAX (1000)
1163#define CFG_OBSS_HT40_SCAN_ACTIVE_DWELL_TIME_DEFAULT (10)
1164
1165/*
1166 * <ini>
1167 * obss_passive_dwelltime - Set obss passive dwelltime
1168 * @Min: 10
1169 * @Max: 1000
1170 * @Default: 20
1171 *
1172 * This ini is used to set dwell time in secs for passive
1173 * obss scan
1174 *
1175 * Related: None
1176 *
1177 * Supported Feature: Scan
1178 *
1179 * Usage: External
1180 *
1181 * </ini>
1182 */
1183#define CFG_OBSS_HT40_SCAN_PASSIVE_DWELL_TIME_NAME "obss_passive_dwelltime"
1184#define CFG_OBSS_HT40_SCAN_PASSIVE_DWELL_TIME_MIN (10)
1185#define CFG_OBSS_HT40_SCAN_PASSIVE_DWELL_TIME_MAX (1000)
1186#define CFG_OBSS_HT40_SCAN_PASSIVE_DWELL_TIME_DEFAULT (20)
1187
1188/*
1189 * <ini>
1190 * obss_width_trigger_interval - Set obss trigger interval
1191 * @Min: 10
1192 * @Max: 900
1193 * @Default: 200
1194 *
1195 * This ini is used during an OBSS scan operation,
1196 * where each channel in the set is scanned at least
1197 * once per configured trigger interval time.
1198 *
1199 * Related: None
1200 *
1201 * Supported Feature: Scan
1202 *
1203 * Usage: External
1204 *
1205 * </ini>
1206 */
1207#define CFG_OBSS_HT40_SCAN_WIDTH_TRIGGER_INTERVAL_NAME "obss_width_trigger_interval"
1208#define CFG_OBSS_HT40_SCAN_WIDTH_TRIGGER_INTERVAL_MIN (10)
1209#define CFG_OBSS_HT40_SCAN_WIDTH_TRIGGER_INTERVAL_MAX (900)
1210#define CFG_OBSS_HT40_SCAN_WIDTH_TRIGGER_INTERVAL_DEFAULT (200)
1211
1212/*
1213 * <ini>
1214 * gbug_report_for_scan_results - Enable bug report
1215 * @Min: 0
1216 * @Max: 1
1217 * @Default: 0
1218 *
1219 * This ini is used to create bug report in
1220 * case of nil scan results.
1221 *
1222 * Related: None
1223 *
1224 * Supported Feature: Scan
1225 *
1226 * Usage: External
1227 *
1228 * </ini>
1229 */
1230#define CFG_CREATE_BUG_REPORT_FOR_SCAN "gbug_report_for_scan_results"
1231#define CFG_CREATE_BUG_REPORT_FOR_SCAN_DISABLE (0)
1232#define CFG_CREATE_BUG_REPORT_FOR_SCAN_ENABLE (1)
1233#define CFG_CREATE_BUG_REPORT_FOR_SCAN_DEFAULT (0)
1234
1235/*
1236 * <ini>
1237 * hostscan_adaptive_dwell_mode - Enable adaptive dwell mode
Paul Zhang72697bd2017-12-20 09:24:25 +08001238 * during host scan with conneciton
yeshwanth sriram guntukabdfe4352017-02-16 14:44:31 +05301239 * @Min: 0
1240 * @Max: 4
Paul Zhang72697bd2017-12-20 09:24:25 +08001241 * @Default: 2
yeshwanth sriram guntukabdfe4352017-02-16 14:44:31 +05301242 *
1243 * This ini will set the algo used in dwell time optimization
Paul Zhang72697bd2017-12-20 09:24:25 +08001244 * during host scan with connection.
Sandeep Puligillaf5ccbf62018-03-26 16:37:05 -07001245 * See enum scan_dwelltime_adaptive_mode.
yeshwanth sriram guntukabdfe4352017-02-16 14:44:31 +05301246 * Acceptable values for this:
1247 * 0: Default (Use firmware default mode)
1248 * 1: Conservative optimization
1249 * 2: Moderate optimization
1250 * 3: Aggressive optimization
1251 * 4: Static
1252 *
1253 * Related: None
1254 *
1255 * Supported Feature: Scan
1256 *
1257 * Usage: External
1258 *
1259 * </ini>
1260 */
1261#define CFG_ADAPTIVE_SCAN_DWELL_MODE_NAME "hostscan_adaptive_dwell_mode"
1262#define CFG_ADAPTIVE_SCAN_DWELL_MODE_MIN (0)
1263#define CFG_ADAPTIVE_SCAN_DWELL_MODE_MAX (4)
Paul Zhang72697bd2017-12-20 09:24:25 +08001264#define CFG_ADAPTIVE_SCAN_DWELL_MODE_DEFAULT (2)
1265
1266/*
1267 * <ini>
1268 * hostscan_adaptive_dwell_mode_no_conn - Enable adaptive dwell mode
1269 * during host scan without connection
1270 * @Min: 0
1271 * @Max: 4
1272 * @Default: 1
1273 *
1274 * This ini will set the algo used in dwell time optimization
1275 * during host scan without connection.
Sandeep Puligillaf5ccbf62018-03-26 16:37:05 -07001276 * See enum scan_dwelltime_adaptive_mode.
Paul Zhang72697bd2017-12-20 09:24:25 +08001277 * Acceptable values for this:
1278 * 0: Default (Use firmware default mode)
1279 * 1: Conservative optimization
1280 * 2: Moderate optimization
1281 * 3: Aggressive optimization
1282 * 4: Static
1283 *
1284 * Related: None
1285 *
1286 * Supported Feature: Scan
1287 *
1288 * Usage: External
1289 *
1290 * </ini>
1291 */
1292#define CFG_ADAPTIVE_SCAN_DWELL_MODE_NC_NAME "hostscan_adaptive_dwell_mode_no_conn"
1293#define CFG_ADAPTIVE_SCAN_DWELL_MODE_NC_MIN (0)
1294#define CFG_ADAPTIVE_SCAN_DWELL_MODE_NC_MAX (4)
1295#define CFG_ADAPTIVE_SCAN_DWELL_MODE_NC_DEFAULT (1)
yeshwanth sriram guntukabdfe4352017-02-16 14:44:31 +05301296
1297/*
1298 * <ini>
1299 * extscan_adaptive_dwell_mode - Enable adaptive dwell mode
1300 * during ext scan
1301 * @Min: 0
1302 * @Max: 4
Arif Hussaindcb9ead2017-03-09 16:41:00 -08001303 * @Default: 1
yeshwanth sriram guntukabdfe4352017-02-16 14:44:31 +05301304 *
1305 * This ini will set the algo used in dwell time optimization
Sandeep Puligillaf5ccbf62018-03-26 16:37:05 -07001306 * during ext scan. see enum scan_dwelltime_adaptive_mode.
yeshwanth sriram guntukabdfe4352017-02-16 14:44:31 +05301307 * Acceptable values for this:
1308 * 0: Default (Use firmware default mode)
1309 * 1: Conservative optimization
1310 * 2: Moderate optimization
1311 * 3: Aggressive optimization
1312 * 4: Static
1313 *
1314 * Related: None
1315 *
1316 * Supported Feature: Scan
1317 *
1318 * Usage: External
1319 *
1320 * </ini>
1321 */
1322#define CFG_ADAPTIVE_EXTSCAN_DWELL_MODE_NAME "extscan_adaptive_dwell_mode"
1323#define CFG_ADAPTIVE_EXTSCAN_DWELL_MODE_MIN (0)
1324#define CFG_ADAPTIVE_EXTSCAN_DWELL_MODE_MAX (4)
Arif Hussaindcb9ead2017-03-09 16:41:00 -08001325#define CFG_ADAPTIVE_EXTSCAN_DWELL_MODE_DEFAULT (1)
yeshwanth sriram guntukabdfe4352017-02-16 14:44:31 +05301326
1327/*
1328 * <ini>
1329 * pnoscan_adaptive_dwell_mode - Enable adaptive dwell mode
1330 * during pno scan
1331 * @Min: 0
1332 * @Max: 4
Arif Hussaindcb9ead2017-03-09 16:41:00 -08001333 * @Default: 1
yeshwanth sriram guntukabdfe4352017-02-16 14:44:31 +05301334 *
1335 * This ini will set the algo used in dwell time optimization
Sandeep Puligillaf5ccbf62018-03-26 16:37:05 -07001336 * during pno scan. see enum scan_dwelltime_adaptive_mode.
yeshwanth sriram guntukabdfe4352017-02-16 14:44:31 +05301337 * Acceptable values for this:
1338 * 0: Default (Use firmware default mode)
1339 * 1: Conservative optimization
1340 * 2: Moderate optimization
1341 * 3: Aggressive optimization
1342 * 4: Static
1343 *
1344 * Related: None
1345 *
1346 * Supported Feature: Scan
1347 *
1348 * Usage: External
1349 *
1350 * </ini>
1351 */
1352#define CFG_ADAPTIVE_PNOSCAN_DWELL_MODE_NAME "pnoscan_adaptive_dwell_mode"
1353#define CFG_ADAPTIVE_PNOSCAN_DWELL_MODE_MIN (0)
1354#define CFG_ADAPTIVE_PNOSCAN_DWELL_MODE_MAX (4)
Arif Hussaindcb9ead2017-03-09 16:41:00 -08001355#define CFG_ADAPTIVE_PNOSCAN_DWELL_MODE_DEFAULT (1)
yeshwanth sriram guntukabdfe4352017-02-16 14:44:31 +05301356
1357/*
1358 * <ini>
1359 * adaptive_dwell_mode_enabled - Enable adaptive dwell mode
1360 * @Min: 0
1361 * @Max: 1
1362 * @Default: 1
1363 *
1364 * This parameter will globally disable/enable the adaptive dwell config.
1365 * Following parameters will set different values of attributes for dwell
1366 * time optimization thus reducing total scan time.
1367 * Acceptable values for this:
1368 * 0: Config is disabled
1369 * 1: Config is enabled
1370 *
1371 * Related: None
1372 *
1373 * Supported Feature: Scan
1374 *
1375 * Usage: External
1376 *
1377 * </ini>
1378 */
1379#define CFG_ADAPTIVE_DWELL_MODE_ENABLED_NAME "adaptive_dwell_mode_enabled"
1380#define CFG_ADAPTIVE_DWELL_MODE_ENABLED_MIN (0)
1381#define CFG_ADAPTIVE_DWELL_MODE_ENABLED_MAX (1)
1382#define CFG_ADAPTIVE_DWELL_MODE_ENABLED_DEFAULT (1)
1383
1384/*
1385 * <ini>
1386 * global_adapt_dwelltime_mode - Set default adaptive mode
1387 * @Min: 0
1388 * @Max: 4
Arif Hussaindcb9ead2017-03-09 16:41:00 -08001389 * @Default: 0
yeshwanth sriram guntukabdfe4352017-02-16 14:44:31 +05301390 *
1391 * This parameter will set default adaptive mode, will be used if any of the
1392 * scan dwell mode is set to default.
Sandeep Puligillaf5ccbf62018-03-26 16:37:05 -07001393 * For uses : see enum scan_dwelltime_adaptive_mode
yeshwanth sriram guntukabdfe4352017-02-16 14:44:31 +05301394 *
1395 * Related: None
1396 *
1397 * Supported Feature: Scan
1398 *
1399 * Usage: External
1400 *
1401 * </ini>
1402 */
1403#define CFG_GLOBAL_ADAPTIVE_DWELL_MODE_NAME "global_adapt_dwelltime_mode"
1404#define CFG_GLOBAL_ADAPTIVE_DWELL_MODE_MIN (0)
1405#define CFG_GLOBAL_ADAPTIVE_DWELL_MODE_MAX (4)
Arif Hussaindcb9ead2017-03-09 16:41:00 -08001406#define CFG_GLOBAL_ADAPTIVE_DWELL_MODE_DEFAULT (0)
yeshwanth sriram guntukabdfe4352017-02-16 14:44:31 +05301407
Sen, Devendra9ca8c432017-02-23 15:10:26 +05301408/*
1409 * <ini>
1410 * gRssiCatGap - Set Rssi CatGap
1411 * @Min: 5
1412 * @Max: 100
1413 * @Default: 5
1414 *
1415 * This ini is used to set default RssiCatGap
1416 *
1417 * Related: None
1418 *
1419 * Supported Feature: STA
1420 *
1421 * Usage: Internal/External
1422 *
1423 * </ini>
1424 */
1425
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08001426#define CFG_RSSI_CATEGORY_GAP_NAME "gRssiCatGap"
1427#define CFG_RSSI_CATEGORY_GAP_MIN (5)
1428#define CFG_RSSI_CATEGORY_GAP_MAX (100)
1429#define CFG_RSSI_CATEGORY_GAP_DEFAULT (5)
1430
Selvaraj, Sridharf7939832017-03-25 16:59:50 +05301431/*
1432 * <ini>
1433 * gRoamPrefer5GHz - Prefer roaming to 5GHz Bss
1434 * @Min: 0
1435 * @Max: 1
1436 * @Default: 1
1437 *
1438 * This ini is used to inform FW to prefer roaming to 5GHz BSS
1439 *
1440 * Related: None
1441 *
1442 * Supported Feature: Roaming
1443 *
1444 * Usage: External
1445 *
1446 * </ini>
1447 */
1448#define CFG_ROAM_PREFER_5GHZ "gRoamPrefer5GHz"
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08001449#define CFG_ROAM_PREFER_5GHZ_MIN (0)
1450#define CFG_ROAM_PREFER_5GHZ_MAX (1)
1451#define CFG_ROAM_PREFER_5GHZ_DEFAULT (1)
1452
1453/*
Selvaraj, Sridharf7939832017-03-25 16:59:50 +05301454 * <ini>
1455 * gRoamIntraBand - Prefer roaming within Band
1456 * @Min: 0
1457 * @Max: 1
1458 * @Default: 0
1459 *
1460 * This ini is used to inform FW to prefer roaming within band
1461 *
1462 * Related: None
1463 *
1464 * Supported Feature: Roaming
1465 *
1466 * Usage: External
1467 *
1468 * </ini>
1469 */
1470#define CFG_ROAM_INTRA_BAND "gRoamIntraBand"
1471#define CFG_ROAM_INTRA_BAND_MIN (0)
1472#define CFG_ROAM_INTRA_BAND_MAX (1)
1473#define CFG_ROAM_INTRA_BAND_DEFAULT (0)
1474
1475/*
1476 * <ini>
1477 * FastRoamEnabled - Enable fast roaming
1478 * @Min: 0
1479 * @Max: 1
1480 * @Default: 0
1481 *
1482 * This ini is used to inform FW to enable fast roaming
1483 *
1484 * Related: None
1485 *
1486 * Supported Feature: Roaming
1487 *
1488 * Usage: External
1489 *
1490 * </ini>
1491 */
1492#define CFG_LFR_FEATURE_ENABLED_NAME "FastRoamEnabled"
1493#define CFG_LFR_FEATURE_ENABLED_MIN (0)
1494#define CFG_LFR_FEATURE_ENABLED_MAX (1)
1495#define CFG_LFR_FEATURE_ENABLED_DEFAULT (0)
1496
1497/*
1498 * <ini>
1499 * FastTransitionEnabled - Enable fast transition in case of 11r and ese.
1500 * @Min: 0
1501 * @Max: 1
1502 * @Default: 1
1503 *
1504 * This ini is used to turn ON/OFF the whole neighbor roam, pre-auth, reassoc.
1505 * With this turned OFF 11r will completely not work. For 11r this flag has to
1506 * be ON. For ESE fastroam will not work.
1507 *
1508 * Related: None
1509 *
1510 * Supported Feature: Roaming
1511 *
1512 * Usage: External
1513 *
1514 * </ini>
1515 */
1516#define CFG_FAST_TRANSITION_ENABLED_NAME "FastTransitionEnabled"
1517#define CFG_FAST_TRANSITION_ENABLED_NAME_MIN (0)
1518#define CFG_FAST_TRANSITION_ENABLED_NAME_MAX (1)
1519#define CFG_FAST_TRANSITION_ENABLED_NAME_DEFAULT (1)
1520
1521/*
1522 * <ini>
1523 * RoamRssiDiff - Enable roam based on rssi
1524 * @Min: 0
1525 * @Max: 30
1526 * @Default: 5
1527 *
1528 * This INI is used to decide whether to Roam or not based on RSSI. AP1 is the
1529 * currently associated AP and AP2 is chosen for roaming. The Roaming will
1530 * happen only if AP2 has better Signal Quality and it has a RSSI better than
1531 * AP2. RoamRssiDiff is the number of units (typically measured in dB) AP2
1532 * is better than AP1.
1533 *
1534 * Related: None
1535 *
1536 * Supported Feature: Roaming
1537 *
1538 * Usage: External
1539 *
1540 * </ini>
1541 */
1542#define CFG_ROAM_RSSI_DIFF_NAME "RoamRssiDiff"
1543#define CFG_ROAM_RSSI_DIFF_MIN (0)
1544#define CFG_ROAM_RSSI_DIFF_MAX (30)
1545#define CFG_ROAM_RSSI_DIFF_DEFAULT (5)
1546
1547/*
1548 * <ini>
Abhishek Singh34c0e632017-09-28 14:39:29 +05301549 * rssi_abs_thresh - The min RSSI of the candidate AP to consider roam
1550 * @Min: -96
1551 * @Max: 0
1552 * @Default: 0
1553 *
1554 * The RSSI value of the candidate AP should be higher than rssi_abs_thresh
1555 * to roam to the AP. 0 means no absolute minimum RSSI is required.
1556 *
1557 * Related: None
1558 *
1559 * Supported Feature: Roaming
1560 *
1561 * Usage: External
1562 *
1563 * </ini>
1564 */
1565#define CFG_ROAM_RSSI_ABS_THRESHOLD_NAME "rssi_abs_thresh"
1566#define CFG_ROAM_RSSI_ABS_THRESHOLD_MIN (-96)
1567#define CFG_ROAM_RSSI_ABS_THRESHOLD_MAX (0)
1568#define CFG_ROAM_RSSI_ABS_THRESHOLD_DEFAULT (0)
1569
1570/*
1571 * <ini>
Selvaraj, Sridharf7939832017-03-25 16:59:50 +05301572 * gRoamScanNProbes - Sets the number of probes to be sent for firmware roaming
1573 * @Min: 1
1574 * @Max: 10
1575 * @Default: 2
1576 *
1577 * This INI is used to set the maximum number of probes the firmware can send
1578 * for firmware internal roaming cases.
1579 *
1580 * Related: None
1581 *
1582 * Supported Feature: Roaming
1583 *
1584 * Usage: External
1585 *
1586 * </ini>
1587 */
1588#define CFG_ROAM_SCAN_N_PROBES "gRoamScanNProbes"
1589#define CFG_ROAM_SCAN_N_PROBES_MIN (1)
1590#define CFG_ROAM_SCAN_N_PROBES_MAX (10)
1591#define CFG_ROAM_SCAN_N_PROBES_DEFAULT (2)
1592
1593/*
1594 * <ini>
1595 * gRoamScanHomeAwayTime - Sets the Home Away Time to firmware
1596 * @Min: 0
1597 * @Max: 300
1598 * @Default: 0
1599 *
1600 * Home Away Time should be at least equal to (gNeighborScanChannelMaxTime
1601 * + (2*RFS)), where RFS is the RF Switching time(3). It is twice RFS
1602 * to consider the time to go off channel and return to the home channel.
1603 *
1604 * Related: gNeighborScanChannelMaxTime
1605 *
1606 * Supported Feature: Roaming
1607 *
1608 * Usage: External
1609 *
1610 * </ini>
1611 */
1612#define CFG_ROAM_SCAN_HOME_AWAY_TIME "gRoamScanHomeAwayTime"
1613#define CFG_ROAM_SCAN_HOME_AWAY_TIME_MIN (0)
1614#define CFG_ROAM_SCAN_HOME_AWAY_TIME_MAX (300)
1615#define CFG_ROAM_SCAN_HOME_AWAY_TIME_DEFAULT (0)
1616
1617/*
1618 * <ini>
1619 * OkcEnabled - Enable OKC(Oppurtunistic Key Caching)
1620 * @Min: 0
1621 * @Max: 1
1622 * @Default: 1
1623 *
1624 * This INI is used to enable OKC feature
1625 *
1626 * Related: None
1627 *
1628 * Supported Feature: Roaming
1629 *
1630 * Usage: External
1631 *
1632 * </ini>
1633 */
1634#define CFG_OKC_FEATURE_ENABLED_NAME "OkcEnabled"
1635#define CFG_OKC_FEATURE_ENABLED_MIN (0)
1636#define CFG_OKC_FEATURE_ENABLED_MAX (1)
1637#define CFG_OKC_FEATURE_ENABLED_DEFAULT (1)
1638
1639/*
1640 * <ini>
1641 * gRoamScanOffloadEnabled - Enable Roam Scan Offload
1642 * @Min: 0
1643 * @Max: 1
1644 * @Default: 1
1645 *
1646 * This INI is used to enable Roam Scan Offload in firmware
1647 *
1648 * Related: None
1649 *
1650 * Supported Feature: Roaming
1651 *
1652 * Usage: External
1653 *
1654 * </ini>
1655 */
1656#define CFG_ROAM_SCAN_OFFLOAD_ENABLED "gRoamScanOffloadEnabled"
1657#define CFG_ROAM_SCAN_OFFLOAD_ENABLED_MIN (0)
1658#define CFG_ROAM_SCAN_OFFLOAD_ENABLED_MAX (1)
1659#define CFG_ROAM_SCAN_OFFLOAD_ENABLED_DEFAULT (1)
1660
1661/*
1662 * <ini>
1663 * gRoamRescanRssiDiff - Sets RSSI for Scan trigger in firmware
1664 * @Min: 0
1665 * @Max: 100
1666 * @Default: 5
1667 *
1668 * This INI is the drop in RSSI value that will trigger a precautionary
1669 * scan by firmware. Max value is chosen in such a way that this type
1670 * of scan can be disabled by user.
1671 *
1672 * Related: None
1673 *
1674 * Supported Feature: Roaming
1675 *
1676 * Usage: External
1677 *
1678 * </ini>
1679 */
1680#define CFG_ROAM_RESCAN_RSSI_DIFF_NAME "gRoamRescanRssiDiff"
1681#define CFG_ROAM_RESCAN_RSSI_DIFF_MIN (0)
1682#define CFG_ROAM_RESCAN_RSSI_DIFF_MAX (100)
1683#define CFG_ROAM_RESCAN_RSSI_DIFF_DEFAULT (5)
1684
1685/*
1686 * <ini>
Naveen Rawat2b6e3c92017-03-20 13:59:07 -07001687 * gDroppedPktDisconnectTh - Sets dropped packet threshold in firmware
1688 * @Min: 0
1689 * @Max: 512
1690 * @Default: 512
1691 *
1692 * This INI is the packet drop threshold will trigger disconnect from remote
1693 * peer.
1694 *
1695 * Related: None
1696 *
1697 * Supported Feature: connection
1698 *
1699 * Usage: External
1700 *
1701 * </ini>
1702 */
1703#define CFG_DROPPED_PKT_DISCONNECT_TH_NAME "gDroppedPktDisconnectTh"
1704#define CFG_DROPPED_PKT_DISCONNECT_TH_MIN (0)
Naveen Rawat3ca28b02017-04-05 10:03:29 -07001705#define CFG_DROPPED_PKT_DISCONNECT_TH_MAX (65535)
Naveen Rawat2b6e3c92017-03-20 13:59:07 -07001706#define CFG_DROPPED_PKT_DISCONNECT_TH_DEFAULT (512)
1707
1708/*
1709 * <ini>
Naveen Rawatb2fc4132017-05-10 20:42:05 -07001710 * gForce1x1Exception - force 1x1 when connecting to certain peer
1711 * @Min: 0
1712 * @Max: 1
1713 * @Default: 0
1714 *
1715 * This INI when enabled will force 1x1 connection with certain peer.
1716 *
1717 *
1718 * Related: None
1719 *
1720 * Supported Feature: connection
1721 *
1722 * Usage: External
1723 *
1724 * </ini>
1725 */
1726#define CFG_FORCE_1X1_NAME "gForce1x1Exception"
1727#define CFG_FORCE_1X1_MIN (0)
1728#define CFG_FORCE_1X1_MAX (1)
Nachiket Kukade4fa80f42017-07-31 17:40:42 +05301729#define CFG_FORCE_1X1_DEFAULT (1)
Naveen Rawatb2fc4132017-05-10 20:42:05 -07001730
1731/*
1732 * <ini>
Naveen Rawat247a8682017-06-05 15:00:31 -07001733 * g11bNumTxChains - Number of Tx Chanins in 11b mode
1734 * @Min: 0
1735 * @Max: 2
1736 * @Default: 0
1737 *
1738 * Number of Tx Chanins in 11b mode
1739 *
1740 *
1741 * Related: None
1742 *
1743 * Supported Feature: connection
1744 *
1745 * Usage: External
1746 *
1747 * </ini>
1748 */
1749#define CFG_11B_NUM_TX_CHAIN_NAME "g11bNumTxChains"
1750#define CFG_11B_NUM_TX_CHAIN_MIN (0)
1751#define CFG_11B_NUM_TX_CHAIN_MAX (2)
1752#define CFG_11B_NUM_TX_CHAIN_DEFAULT (0)
1753
1754/*
1755 * <ini>
1756 * g11agNumTxChains - Number of Tx Chanins in 11ag mode
1757 * @Min: 0
1758 * @Max: 2
1759 * @Default: 0
1760 *
1761 * Number of Tx Chanins in 11ag mode
1762 *
1763 *
1764 * Related: None
1765 *
1766 * Supported Feature: connection
1767 *
1768 * Usage: External
1769 *
1770 * </ini>
1771 */
1772#define CFG_11AG_NUM_TX_CHAIN_NAME "g11agNumTxChains"
Naveen Rawatc8096b42017-10-05 14:28:59 -07001773#define CFG_11AG_NUM_TX_CHAIN_MIN (0)
1774#define CFG_11AG_NUM_TX_CHAIN_MAX (2)
1775#define CFG_11AG_NUM_TX_CHAIN_DEFAULT (0)
Naveen Rawat247a8682017-06-05 15:00:31 -07001776
1777/*
1778 * <ini>
Selvaraj, Sridharf7939832017-03-25 16:59:50 +05301779 * gEnableFastRoamInConcurrency - Enable LFR roaming on STA during concurrency
1780 * @Min: 0
1781 * @Max: 1
1782 * @Default: 1
1783 *
1784 * This INI is used to enable Legacy fast roaming(LFR) on STA link during
1785 * concurrent sessions.
1786 *
1787 * Related: None
1788 *
1789 * Supported Feature: Roaming
1790 *
1791 * Usage: External
1792 *
1793 * </ini>
1794 */
1795#define CFG_ENABLE_FAST_ROAM_IN_CONCURRENCY "gEnableFastRoamInConcurrency"
1796#define CFG_ENABLE_FAST_ROAM_IN_CONCURRENCY_MIN (0)
1797#define CFG_ENABLE_FAST_ROAM_IN_CONCURRENCY_MAX (1)
1798#define CFG_ENABLE_FAST_ROAM_IN_CONCURRENCY_DEFAULT (1)
1799
1800/*
1801 * <ini>
1802 * gSelect5GHzMargin - Sets RSSI preference for 5GHz over 2.4GHz AP.
1803 * @Min: 0
1804 * @Max: 60
1805 * @Default: 0
1806 *
1807 * Prefer connecting to 5G AP even if its RSSI is lower by gSelect5GHzMargin
1808 * dBm than 2.4G AP. This feature requires the dependent cfg.ini
1809 * "gRoamPrefer5GHz" set to 1
1810 *
1811 * Related: gRoamPrefer5GHz
1812 *
1813 * Supported Feature: Roaming
1814 *
1815 * Usage: External
1816 *
1817 * </ini>
1818 */
1819#define CFG_STRICT_5GHZ_PREF_BY_MARGIN "gSelect5GHzMargin"
1820#define CFG_STRICT_5GHZ_PREF_BY_MARGIN_MIN (0)
1821#define CFG_STRICT_5GHZ_PREF_BY_MARGIN_MAX (60)
1822#define CFG_STRICT_5GHZ_PREF_BY_MARGIN_DEFAULT (0)
1823
1824#ifdef WLAN_FEATURE_ROAM_OFFLOAD
1825/*
1826 * <ini>
1827 * gRoamOffloadEnabled - enable/disable roam offload feature
1828 * @Min: 0
1829 * @Max: 1
1830 * @Default: 1
1831 *
1832 * This INI is used to enable/disable roam offload feature
1833 *
1834 * Related: None
1835 *
1836 * Supported Feature: Roaming
1837 *
1838 * Usage: External
1839 *
1840 * </ini>
1841 */
1842#define CFG_ROAMING_OFFLOAD_NAME "gRoamOffloadEnabled"
1843#define CFG_ROAMING_OFFLOAD_MIN (0)
1844#define CFG_ROAMING_OFFLOAD_MAX (1)
1845#define CFG_ROAMING_OFFLOAD_DEFAULT (1)
1846#endif
1847
1848/*
1849 * <ini>
1850 * gRoamScanHiRssiMaxCount - Sets 5GHz maximum scan count
1851 * @Min: 0
1852 * @Max: 10
1853 * @Default: 3
1854 *
1855 * This INI is used to set maximum scan count in 5GHz
1856 *
1857 * Related: None
1858 *
1859 * Supported Feature: Roaming
1860 *
1861 * Usage: External
1862 *
1863 * </ini>
1864 */
1865#define CFG_ROAM_SCAN_HI_RSSI_MAXCOUNT_NAME "gRoamScanHiRssiMaxCount"
1866#define CFG_ROAM_SCAN_HI_RSSI_MAXCOUNT_MIN (0)
1867#define CFG_ROAM_SCAN_HI_RSSI_MAXCOUNT_MAX (10)
1868#define CFG_ROAM_SCAN_HI_RSSI_MAXCOUNT_DEFAULT (3)
1869
1870/*
1871 * <ini>
1872 * gRoamScanHiRssiDelta - Sets RSSI Delta for scan trigger
1873 * @Min: 0
1874 * @Max: 16
1875 * @Default: 10
1876 *
1877 * This INI is used to set change in RSSI at which scan is triggered
1878 * in 5GHz.
1879 *
1880 * Related: None
1881 *
1882 * Supported Feature: Roaming
1883 *
1884 * Usage: External
1885 *
1886 * </ini>
1887 */
1888#define CFG_ROAM_SCAN_HI_RSSI_DELTA_NAME "gRoamScanHiRssiDelta"
1889#define CFG_ROAM_SCAN_HI_RSSI_DELTA_MIN (0)
1890#define CFG_ROAM_SCAN_HI_RSSI_DELTA_MAX (16)
1891#define CFG_ROAM_SCAN_HI_RSSI_DELTA_DEFAULT (10)
1892
1893/*
1894 * <ini>
1895 * gRoamScanHiRssiDelay - Sets minimum delay between 5GHz scans
1896 * @Min: 5000
1897 * @Max: 0x7fffffff
1898 * @Default: 15000
1899 *
1900 * This INI is used to set the minimum delay between 5GHz scans.
1901 *
1902 * Related: None
1903 *
1904 * Supported Feature: Roaming
1905 *
1906 * Usage: External
1907 *
1908 * </ini>
1909 */
1910#define CFG_ROAM_SCAN_HI_RSSI_DELAY_NAME "gRoamScanHiRssiDelay"
1911#define CFG_ROAM_SCAN_HI_RSSI_DELAY_MIN (5000)
1912#define CFG_ROAM_SCAN_HI_RSSI_DELAY_MAX (0x7fffffff)
1913#define CFG_ROAM_SCAN_HI_RSSI_DELAY_DEFAULT (15000)
1914
1915/*
1916 * <ini>
1917 * gRoamScanHiRssiUpperBound - Sets upper bound after which 5GHz scan
1918 * @Min: -66
1919 * @Max: 0
1920 * @Default: -30
1921 *
1922 * This INI is used to set the RSSI upper bound above which the 5GHz scan
1923 * will not be performed.
1924 *
1925 * Related: None
1926 *
1927 * Supported Feature: Roaming
1928 *
1929 * Usage: External
1930 *
1931 * </ini>
1932 */
1933#define CFG_ROAM_SCAN_HI_RSSI_UB_NAME "gRoamScanHiRssiUpperBound"
1934#define CFG_ROAM_SCAN_HI_RSSI_UB_MIN (-66)
1935#define CFG_ROAM_SCAN_HI_RSSI_UB_MAX (0)
1936#define CFG_ROAM_SCAN_HI_RSSI_UB_DEFAULT (-30)
1937
1938#ifdef FEATURE_LFR_SUBNET_DETECTION
1939/*
1940 * <ini>
1941 * gLFRSubnetDetectionEnable - Enable LFR3 subnet detection
1942 * @Min: 0
1943 * @Max: 1
1944 * @Default: 1
1945 *
1946 * Enable IP subnet detection during legacy fast roming version 3. Legacy fast
1947 * roaming could roam across IP subnets without host processors' knowledge.
1948 * This feature enables firmware to wake up the host processor if it
1949 * successfully determines change in the IP subnet. Change in IP subnet could
1950 * potentially cause disruption in IP connnectivity if IP address is not
1951 * refreshed.
1952 *
1953 * Related: None
1954 *
1955 * Supported Feature: Roaming
1956 *
1957 * Usage: External
1958 *
1959 * </ini>
1960 */
1961#define CFG_ENABLE_LFR_SUBNET_DETECTION "gLFRSubnetDetectionEnable"
1962#define CFG_ENABLE_LFR_SUBNET_MIN (0)
1963#define CFG_ENABLE_LFR_SUBNET_MAX (1)
1964#define CFG_ENABLE_LFR_SUBNET_DEFAULT (1)
1965#endif /* FEATURE_LFR_SUBNET_DETECTION */
1966
1967/*
1968 * <ini>
1969 * groam_dense_rssi_thresh_offset - Sets dense roam RSSI threshold diff
1970 * @Min: 0
1971 * @Max: 20
1972 * @Default: 10
1973 *
1974 * This INI is used to set offset value from normal RSSI threshold to dense
1975 * RSSI threshold Fw will optimize roaming based on new RSSI threshold once
1976 * it detects dense enviournment.
1977 *
1978 * Related: None
1979 *
1980 * Supported Feature: Roaming
1981 *
1982 * Usage: External
1983 *
1984 * </ini>
1985 */
1986#define CFG_ROAM_DENSE_RSSI_THRE_OFFSET "groam_dense_rssi_thresh_offset"
1987#define CFG_ROAM_DENSE_RSSI_THRE_OFFSET_MIN (0)
1988#define CFG_ROAM_DENSE_RSSI_THRE_OFFSET_MAX (20)
1989#define CFG_ROAM_DENSE_RSSI_THRE_OFFSET_DEFAULT (10)
1990
1991/*
1992 * <ini>
Abhinav Kumar271f0632018-03-29 16:01:30 +05301993 * enable_ftopen - enable/disable FT open feature
1994 * @Min: 0
1995 * @Max: 1
1996 * @Default: 1
1997 *
1998 * This INI is used to enable/disable FT open feature
1999*
2000* Related: None
2001*
2002* Supported Feature: Roaming
2003*
2004* Usage: External
2005*
2006* </ini>
2007*/
2008#define CFG_ROAM_FT_OPEN_ENABLE_NAME "enable_ftopen"
2009#define CFG_ROAM_FT_OPEN_ENABLE_MIN (0)
2010#define CFG_ROAM_FT_OPEN_ENABLE_MAX (1)
2011#define CFG_ROAM_FT_OPEN_ENABLE_DEFAULT (1)
2012
2013/*
2014 * <ini>
Selvaraj, Sridharf7939832017-03-25 16:59:50 +05302015 * groam_dense_min_aps - Sets minimum number of AP for dense roam
2016 * @Min: 1
2017 * @Max: 5
2018 * @Default: 3
2019 *
2020 * Minimum number of APs required for dense roam. FW will consider
2021 * environment as dense once it detects #APs operating is more than
2022 * groam_dense_min_aps.
2023 *
2024 * Related: None
2025 *
2026 * Supported Feature: Roaming
2027 *
2028 * Usage: External
2029 *
2030 * </ini>
2031 */
2032#define CFG_ROAM_DENSE_MIN_APS "groam_dense_min_aps"
2033#define CFG_ROAM_DENSE_MIN_APS_MIN (1)
2034#define CFG_ROAM_DENSE_MIN_APS_MAX (5)
2035#define CFG_ROAM_DENSE_MIN_APS_DEFAULT (3)
2036
2037/*
2038 * <ini>
Varun Reddy Yeturufaad37e2017-07-26 10:54:13 -07002039 * roam_bg_scan_bad_rssi_thresh - RSSI threshold for background roam
2040 * @Min: -96
2041 * @Max: 0
2042 * @Default: -76
2043 *
2044 * If the DUT is connected to an AP with weak signal, then the bad RSSI
2045 * threshold will be used as an opportunity to use the scan results
2046 * from other scan clients and try to roam if there is a better AP
2047 * available in the environment.
2048 *
2049 * Related: None
2050 *
2051 * Supported Feature: Roaming
2052 *
2053 * Usage: External
2054 *
2055 * </ini>
2056 */
2057#define CFG_ROAM_BG_SCAN_BAD_RSSI_THRESHOLD_NAME "roam_bg_scan_bad_rssi_thresh"
2058#define CFG_ROAM_BG_SCAN_BAD_RSSI_THRESHOLD_MIN (-96)
2059#define CFG_ROAM_BG_SCAN_BAD_RSSI_THRESHOLD_MAX (0)
2060#define CFG_ROAM_BG_SCAN_BAD_RSSI_THRESHOLD_DEFAULT (-76)
2061
2062/*
2063 * <ini>
2064 * roam_bg_scan_client_bitmap - Bitmap used to identify the scan clients
2065 * @Min: 0
2066 * @Max: 0x3FF
2067 * @Default: 0x
2068 *
2069 * This bitmap is used to define the client scans that need to be used
2070 * by the roaming module to perform a background roaming.
2071 * Currently supported bit positions are as follows:
2072 * Bit 0 is reserved in the firmware.
2073 * WMI_SCAN_CLIENT_NLO - 1
2074 * WMI_SCAN_CLIENT_EXTSCAN - 2
2075 * WMI_SCAN_CLIENT_ROAM - 3
2076 * WMI_SCAN_CLIENT_P2P - 4
2077 * WMI_SCAN_CLIENT_LPI - 5
2078 * WMI_SCAN_CLIENT_NAN - 6
2079 * WMI_SCAN_CLIENT_ANQP - 7
2080 * WMI_SCAN_CLIENT_OBSS - 8
2081 * WMI_SCAN_CLIENT_PLM - 9
2082 * WMI_SCAN_CLIENT_HOST - 10
2083 *
2084 * Related: None
2085 *
2086 * Supported Feature: Roaming
2087 *
2088 * Usage: External
2089 *
2090 * </ini>
2091 */
2092#define CFG_ROAM_BG_SCAN_CLIENT_BITMAP_NAME "roam_bg_scan_client_bitmap"
2093#define CFG_ROAM_BG_SCAN_CLIENT_BITMAP_MIN (0)
2094#define CFG_ROAM_BG_SCAN_CLIENT_BITMAP_MAX (0x7FF)
2095#define CFG_ROAM_BG_SCAN_CLIENT_BITMAP_DEFAULT (0x424)
2096
2097/*
2098 * <ini>
Abhinav Kumara95af7c2018-04-06 17:08:00 +05302099 * min_delay_btw_roam_scans - Min duration (in sec) allowed btw two
2100 * consecutive roam scans
2101 * @Min: 0
2102 * @Max: 60
2103 * @Default: 10
2104 *
2105 * Roam scan is not allowed if duration between two consecutive
2106 * roam scans is less than this time.
2107 *
2108 * Related: None
2109 *
2110 * Supported Feature: Roaming
2111 *
2112 * Usage: External
2113 *
2114 * </ini>
2115 */
2116#define CFG_MIN_DELAY_BTW_ROAM_SCAN_NAME "min_delay_btw_roam_scans"
2117#define CFG_MIN_DELAY_BTW_ROAM_SCAN_MIN (0)
2118#define CFG_MIN_DELAY_BTW_ROAM_SCAN_MAX (60)
2119#define CFG_MIN_DELAY_BTW_ROAM_SCAN_DEFAULT (10)
2120
2121/*
2122 * <ini>
2123 * roam_trigger_reason_bitmask - Contains roam_trigger_reasons
2124 * @Min: 0
2125 * @Max: 0xFFFFFFFF
2126 * @Default: 0xDA
2127 *
2128 * Bitmask containing roam_trigger_reasons for which
2129 * min_delay_btw_roam_scans constraint should be applied.
2130 * Currently supported bit positions are as follows:
2131 * Bit 0 is reserved in the firmware.
2132 * WMI_ROAM_TRIGGER_REASON_PER - 1
2133 * WMI_ROAM_TRIGGER_REASON_BMISS - 2
2134 * WMI_ROAM_TRIGGER_REASON_LOW_RSSI - 3
2135 * WMI_ROAM_TRIGGER_REASON_HIGH_RSSI - 4
2136 * WMI_ROAM_TRIGGER_REASON_PERIODIC - 5
2137 * WMI_ROAM_TRIGGER_REASON_MAWC - 6
2138 * WMI_ROAM_TRIGGER_REASON_DENSE - 7
2139 * WMI_ROAM_TRIGGER_REASON_BACKGROUND - 8
2140 * WMI_ROAM_TRIGGER_REASON_FORCED - 9
2141 * WMI_ROAM_TRIGGER_REASON_BTM - 10
2142 * WMI_ROAM_TRIGGER_REASON_UNIT_TEST - 11
2143 * WMI_ROAM_TRIGGER_REASON_MAX - 12
2144 *
2145 * For Ex: 0xDA (PER, LOW_RSSI, HIGH_RSSI, MAWC, DENSE)
2146 *
2147 * Related: None
2148 *
2149 * Supported Feature: Roaming
2150 *
2151 * Usage: External
2152 *
2153 * </ini>
2154 */
2155#define CFG_ROAM_SCAN_TRIGGER_REASON_BITMASK_NAME "roam_trigger_reason_bitmask"
2156#define CFG_ROAM_SCAN_TRIGGER_REASON_BITMASK_MIN (0)
2157#define CFG_ROAM_SCAN_TRIGGER_REASON_BITMASK_MAX (0xFFFFFFFF)
2158#define CFG_ROAM_SCAN_TRIGGER_REASON_BITMASK_DEFAULT (0xDA)
2159
2160/*
2161 * <ini>
Vignesh Viswanathanc018e982017-09-07 18:49:19 +05302162 * roam_bad_rssi_thresh_offset_2g - RSSI threshold offset for 2G to 5G roam
2163 * @Min: 0
2164 * @Max: 86
2165 * @Default: 40
2166 *
2167 * If the DUT is connected to an AP with weak signal in 2G band, then the
2168 * bad RSSI offset for 2g would be used as offset from the bad RSSI
2169 * threshold configured and then use the resulting rssi for an opportunity
2170 * to use the scan results from other scan clients and try to roam to
2171 * 5G Band ONLY if there is a better AP available in the environment.
2172 *
2173 * For example if the roam_bg_scan_bad_rssi_thresh is -76 and
2174 * roam_bad_rssi_thresh_offset_2g is 40 then the difference of -36 would be
2175 * used as a trigger to roam to a 5G AP if DUT initially connected to a 2G AP
2176 *
2177 * Related: roam_bg_scan_bad_rssi_thresh
2178 *
2179 * Supported Feature: Roaming
2180 *
2181 * Usage: External
2182 *
2183 * </ini>
2184 */
2185#define CFG_ROAM_BG_SCAN_BAD_RSSI_OFFSET_2G_NAME "roam_bad_rssi_thresh_offset_2g"
2186#define CFG_ROAM_BG_SCAN_BAD_RSSI_OFFSET_2G_MIN (0)
2187#define CFG_ROAM_BG_SCAN_BAD_RSSI_OFFSET_2G_MAX (86)
2188#define CFG_ROAM_BG_SCAN_BAD_RSSI_OFFSET_2G_DEFAULT (40)
2189
2190/*
2191 * <ini>
Abhinav Kumara083f212018-04-05 18:49:45 +05302192 * ho_delay_for_rx - Delay Hand-off (In msec) by this duration to receive
2193 * pending rx frames from current BSS
2194 * @Min: 0
2195 * @Max: 200
2196 * @Default: 0
2197 *
2198 * For LFR 3.0 roaming scenario, once roam candidate is found, firmware
2199 * waits for minimum this much duration to receive pending rx frames from
2200 * current BSS before switching to new channel for handoff to new AP.
2201 *
2202 * Related: None
2203 *
2204 * Supported Feature: Roaming
2205 *
2206 * Usage: External
2207 *
2208 * </ini>
2209 */
2210#define CFG_ROAM_HO_DELAY_FOR_RX_NAME "ho_delay_for_rx"
2211#define CFG_ROAM_HO_DELAY_FOR_RX_MIN (0)
2212#define CFG_ROAM_HO_DELAY_FOR_RX_MAX (200)
2213#define CFG_ROAM_HO_DELAY_FOR_RX_DEFAULT (0)
2214
2215/*
2216 * <ini>
Abhinav Kumaredd1d372018-05-11 15:33:35 +05302217 * roam_force_rssi_trigger - To force RSSI trigger
2218 * irrespective of channel list type
2219 * @Min: 0
2220 * @Max: 1
2221 * @Default: 1
2222 *
2223 * This ini is used to set roam scan mode
2224 * WMI_ROAM_SCAN_MODE_RSSI_CHANGE, irrespective of whether
2225 * channel list type is CHANNEL_LIST_STATIC or not
2226 *
2227 * Related: None
2228 *
2229 * Supported Feature: Roaming
2230 *
2231 * Usage: External
2232 *
2233 * </ini>
2234 */
2235#define CFG_ROAM_FORCE_RSSI_TRIGGER_NAME "roam_force_rssi_trigger"
2236#define CFG_ROAM_FORCE_RSSI_TRIGGER_MIN (0)
2237#define CFG_ROAM_FORCE_RSSI_TRIGGER_MAX (1)
2238#define CFG_ROAM_FORCE_RSSI_TRIGGER_DEFAULT (1)
2239
2240/*
2241 * <ini>
Selvaraj, Sridharf7939832017-03-25 16:59:50 +05302242 * roamscan_adaptive_dwell_mode - Sets dwell time adaptive mode
2243 * @Min: 0
2244 * @Max: 4
Arif Hussaindcb9ead2017-03-09 16:41:00 -08002245 * @Default: 1
Selvaraj, Sridharf7939832017-03-25 16:59:50 +05302246 *
2247 * This parameter will set the algo used in dwell time optimization during
Sandeep Puligillaf5ccbf62018-03-26 16:37:05 -07002248 * roam scan. see enum scan_dwelltime_adaptive_mode.
Selvaraj, Sridharf7939832017-03-25 16:59:50 +05302249 * Acceptable values for this:
2250 * 0: Default (Use firmware default mode)
2251 * 1: Conservative optimization
2252 * 2: Moderate optimization
2253 * 3: Aggressive optimization
2254 * 4: Static
2255 *
2256 * Related: None
2257 *
2258 * Supported Feature: Roaming
2259 *
2260 * Usage: External
2261 *
2262 * </ini>
2263 */
2264#define CFG_ADAPTIVE_ROAMSCAN_DWELL_MODE_NAME "roamscan_adaptive_dwell_mode"
2265#define CFG_ADAPTIVE_ROAMSCAN_DWELL_MODE_MIN (0)
2266#define CFG_ADAPTIVE_ROAMSCAN_DWELL_MODE_MAX (4)
Arif Hussaindcb9ead2017-03-09 16:41:00 -08002267#define CFG_ADAPTIVE_ROAMSCAN_DWELL_MODE_DEFAULT (1)
Selvaraj, Sridharf7939832017-03-25 16:59:50 +05302268
2269/*
Arun Khandavallifae92942016-08-01 13:31:08 +05302270 * Timer waiting for interface up from the upper layer. If
2271 * this timer expires all the cds modules shall be closed.
2272 * Time Units: ms
2273 */
2274#define CFG_INTERFACE_CHANGE_WAIT_NAME "gInterfaceChangeWait"
2275#define CFG_INTERFACE_CHANGE_WAIT_MIN (10)
Arunk Khandavallib0b940b2017-01-23 14:08:02 +05302276#define CFG_INTERFACE_CHANGE_WAIT_MAX (500000)
Mukul Sharma07bd8752017-10-10 16:58:14 +05302277#define CFG_INTERFACE_CHANGE_WAIT_DEFAULT (10000)
Arun Khandavallifae92942016-08-01 13:31:08 +05302278
2279/*
Sen, Devendra9ca8c432017-02-23 15:10:26 +05302280 * <ini>
2281 * gShortPreamble - Set Short Preamble
2282 * @Min: 0
2283 * @Max: 1
2284 * @Default: 1
2285 *
2286 * This ini is used to set default short Preamble
2287 *
2288 * Related: None
2289 *
2290 * Supported Feature: STA
2291 *
2292 * Usage: Internal/External
2293 *
2294 * </ini>
2295 */
2296
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08002297#define CFG_SHORT_PREAMBLE_NAME "gShortPreamble"
2298#define CFG_SHORT_PREAMBLE_MIN WNI_CFG_SHORT_PREAMBLE_STAMIN
2299#define CFG_SHORT_PREAMBLE_MAX WNI_CFG_SHORT_PREAMBLE_STAMAX
2300#define CFG_SHORT_PREAMBLE_DEFAULT WNI_CFG_SHORT_PREAMBLE_STADEF
2301
Abhishek Singh49b654e2016-12-01 16:11:17 +05302302/*
2303 * <ini>
2304 * gIbssBssid - Default IBSS BSSID if BSSID is not provided by supplicant
2305 * @Min: "000000000000"
2306 * @Max: "ffffffffffff"
2307 * @Default: "000AF5040506"
2308 *
2309 * This ini is used to set Default IBSS BSSID if BSSID
2310 * is not provided by supplicant and Coalesing is disabled
2311 *
2312 * Related: Only applicable if gCoalesingInIBSS is 0
2313 *
2314 * Supported Feature: IBSS
2315 *
2316 * Usage: Internal/External
2317 *
2318 * </ini>
2319 */
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08002320#define CFG_IBSS_BSSID_NAME "gIbssBssid"
2321#define CFG_IBSS_BSSID_MIN "000000000000"
2322#define CFG_IBSS_BSSID_MAX "ffffffffffff"
2323#define CFG_IBSS_BSSID_DEFAULT "000AF5040506"
2324
Abhishek Singh49b654e2016-12-01 16:11:17 +05302325/*
2326 * <ini>
2327 * gAdHocChannel5G - Default 5Ghz IBSS channel if channel is not
2328 * provided by supplicant.
2329 * @Min: 36
2330 * @Max: 165
2331 * @Default: 44
2332 *
2333 * This ini is used to set default 5Ghz IBSS channel
2334 * if channel is not provided by supplicant and band is 5Ghz
2335 *
2336 * Related: None
2337 *
2338 * Supported Feature: IBSS
2339 *
2340 * Usage: Internal/External
2341 *
2342 * </ini>
2343 */
2344#define CFG_IBSS_ADHOC_CHANNEL_5GHZ_NAME "gAdHocChannel5G"
2345#define CFG_IBSS_ADHOC_CHANNEL_5GHZ_MIN (36)
2346#define CFG_IBSS_ADHOC_CHANNEL_5GHZ_MAX (165)
2347#define CFG_IBSS_ADHOC_CHANNEL_5GHZ_DEFAULT (44)
2348
2349/*
2350 * <ini>
2351 * gAdHocChannel24G - Default 2.4Ghz IBSS channel if channel is not
2352 * provided by supplicant.
2353 * @Min: 1
2354 * @Max: 14
2355 * @Default: 6
2356 *
2357 * This ini is used to set default 2.4Ghz IBSS channel
2358 * if channel is not provided by supplicant and band is 2.4Ghz
2359 *
2360 * Related: None
2361 *
2362 * Supported Feature: IBSS
2363 *
2364 * Usage: Internal/External
2365 *
2366 * </ini>
2367 */
2368#define CFG_IBSS_ADHOC_CHANNEL_24GHZ_NAME "gAdHocChannel24G"
2369#define CFG_IBSS_ADHOC_CHANNEL_24GHZ_MIN (1)
2370#define CFG_IBSS_ADHOC_CHANNEL_24GHZ_MAX (14)
2371#define CFG_IBSS_ADHOC_CHANNEL_24GHZ_DEFAULT (6)
2372
2373/*
2374 * <ini>
2375 * gCoalesingInIBSS - If IBSS coalesing is enabled.
2376 * @Min: 0
2377 * @Max: 1
2378 * @Default: 0
2379 *
2380 * This ini is used to set IBSS coalesing
2381 *
2382 * Related: None
2383 *
2384 * Supported Feature: IBSS
2385 *
2386 * Usage: Internal/External
2387 *
2388 * </ini>
2389 */
2390#define CFG_COALESING_IN_IBSS_NAME "gCoalesingInIBSS"
2391#define CFG_COALESING_IN_IBSS_MIN (0)
2392#define CFG_COALESING_IN_IBSS_MAX (1)
2393#define CFG_COALESING_IN_IBSS_DEFAULT (0) /* disabled */
2394
2395/*
2396 * <ini>
2397 * gIbssATIMWinSize - Set IBSS ATIM window size
2398 * @Min: 0
2399 * @Max: 50
2400 * @Default: 0
2401 *
2402 * This ini is used to set IBSS ATIM window size
2403 *
2404 * Related: None
2405 *
2406 * Supported Feature: IBSS
2407 *
2408 * Usage: Internal/External
2409 *
2410 * </ini>
2411 */
2412#define CFG_IBSS_ATIM_WIN_SIZE_NAME "gIbssATIMWinSize"
2413#define CFG_IBSS_ATIM_WIN_SIZE_MIN (0)
2414#define CFG_IBSS_ATIM_WIN_SIZE_MAX (50)
2415#define CFG_IBSS_ATIM_WIN_SIZE_DEFAULT (0)
2416
2417
2418/*
2419 * <ini>
2420 * gIbssIsPowerSaveAllowed - Indicates if IBSS Power Save is
2421 * supported or not
2422 * @Min: 0
2423 * @Max: 1
2424 * @Default: 1
2425 *
2426 * This ini is used to Indicates if IBSS Power Save is
2427 * supported or not. When not allowed,IBSS station has
2428 * to stay awake all the time and should never set PM=1
2429 * in its transmitted frames.
2430 *
2431 * Related: valid only when gIbssATIMWinSize is non-zero
2432 *
2433 * Supported Feature: IBSS
2434 *
2435 * Usage: Internal/External
2436 *
2437 * </ini>
2438 */
2439#define CFG_IBSS_IS_POWER_SAVE_ALLOWED_NAME "gIbssIsPowerSaveAllowed"
2440#define CFG_IBSS_IS_POWER_SAVE_ALLOWED_MIN (0)
2441#define CFG_IBSS_IS_POWER_SAVE_ALLOWED_MAX (1)
2442#define CFG_IBSS_IS_POWER_SAVE_ALLOWED_DEFAULT (1)
2443
2444/*
2445 * <ini>
2446 * gIbssIsPowerCollapseAllowed - Indicates if IBSS Power Collapse
2447 * is allowed
2448 * @Min: 0
2449 * @Max: 1
2450 * @Default: 1
2451 *
2452 * This ini is used to indicates if IBSS Power Collapse
2453 * is allowed
2454 *
2455 * Related: None
2456 *
2457 * Supported Feature: IBSS
2458 *
2459 * Usage: Internal/External
2460 *
2461 * </ini>
2462 */
2463#define CFG_IBSS_IS_POWER_COLLAPSE_ALLOWED_NAME "gIbssIsPowerCollapseAllowed"
2464#define CFG_IBSS_IS_POWER_COLLAPSE_ALLOWED_MIN (0)
2465#define CFG_IBSS_IS_POWER_COLLAPSE_ALLOWED_MAX (1)
2466#define CFG_IBSS_IS_POWER_COLLAPSE_ALLOWED_DEFAULT (1)
2467
2468/*
2469 * <ini>
2470 * gIbssAwakeOnTxRx - Indicates whether IBSS station
2471 * can exit power save mode and enter power active
2472 * state whenever there is a TX/RX activity.
2473 *
2474 * @Min: 0
2475 * @Max: 1
2476 * @Default: 0
2477 *
2478 * This ini is used to ndicates whether IBSS station
2479 * can exit power save mode and enter power active
2480 * state whenever there is a TX/RX activity.
2481 *
2482 * Related: None
2483 *
2484 * Supported Feature: IBSS
2485 *
2486 * Usage: Internal/External
2487 *
2488 * </ini>
2489 */
2490#define CFG_IBSS_AWAKE_ON_TX_RX_NAME "gIbssAwakeOnTxRx"
2491#define CFG_IBSS_AWAKE_ON_TX_RX_MIN (0)
2492#define CFG_IBSS_AWAKE_ON_TX_RX_MAX (1)
2493#define CFG_IBSS_AWAKE_ON_TX_RX_DEFAULT (0)
2494
2495/*
2496 * <ini>
2497 * gIbssInactivityTime - Indicates the data
2498 * inactivity time in number of beacon intervals
2499 * after which IBSS station re-inters power save
2500 *
2501 * @Min: 1
2502 * @Max: 10
2503 * @Default: 1
2504 *
2505 * In IBSS mode if Awake on TX/RX activity is enabled
2506 * Ibss Inactivity parameter indicates the data
2507 * inactivity time in number of beacon intervals
2508 * after which IBSS station re-inters power save
2509 * by sending Null frame with PM=1
2510 *
2511 * Related: Aplicable if gIbssAwakeOnTxRx is enabled
2512 *
2513 * Supported Feature: IBSS
2514 *
2515 * Usage: Internal/External
2516 *
2517 * </ini>
2518 */
2519#define CFG_IBSS_INACTIVITY_TIME_NAME "gIbssInactivityTime"
2520#define CFG_IBSS_INACTIVITY_TIME_MIN (1)
2521#define CFG_IBSS_INACTIVITY_TIME_MAX (10)
2522#define CFG_IBSS_INACTIVITY_TIME_DEFAULT (1)
2523
2524/*
2525 * <ini>
2526 * gIbssTxSpEndInactivityTime - Indicates the time after
2527 * which TX Service Period is terminated by
2528 * sending a Qos Null frame with EOSP.
2529 *
2530 * @Min: 0
2531 * @Max: 100
2532 * @Default: 0
2533 *
2534 * In IBSS mode Tx Service Period Inactivity
2535 * time in msecs indicates the time after
2536 * which TX Service Period is terminated by
2537 * sending a Qos Null frame with EOSP.
2538 * If value is 0, TX SP is terminated with the
2539 * last buffered packet itself instead of waiting
2540 * for the inactivity.
2541 *
2542 * Related: None
2543 *
2544 * Supported Feature: IBSS
2545 *
2546 * Usage: Internal/External
2547 *
2548 * </ini>
2549 */
2550#define CFG_IBSS_TXSP_END_INACTIVITY_NAME "gIbssTxSpEndInactivityTime"
2551#define CFG_IBSS_TXSP_END_INACTIVITY_MIN (0)
2552#define CFG_IBSS_TXSP_END_INACTIVITY_MAX (100)
2553#define CFG_IBSS_TXSP_END_INACTIVITY_DEFAULT (0)
2554
2555/*
2556 * <ini>
2557 * gIbssPsWarmupTime - PS-supporting device
2558 * does not enter protocol sleep state during first
2559 * gIbssPsWarmupTime seconds.
2560 *
2561 * @Min: 0
2562 * @Max: 65535
2563 * @Default: 0
2564 *
2565 * When IBSS network is initialized, PS-supporting device
2566 * does not enter protocol sleep state during first
2567 * gIbssPsWarmupTime seconds.
2568 *
2569 * Related: valid if gIbssIsPowerSaveAllowed is set
2570 *
2571 * Supported Feature: IBSS
2572 *
2573 * Usage: Internal/External
2574 *
2575 * </ini>
2576 */
2577#define CFG_IBSS_PS_WARMUP_TIME_NAME "gIbssPsWarmupTime"
2578#define CFG_IBSS_PS_WARMUP_TIME_MIN (0)
2579/* Allow unsigned Int Max for now */
2580#define CFG_IBSS_PS_WARMUP_TIME_MAX (65535)
2581#define CFG_IBSS_PS_WARMUP_TIME_DEFAULT (0)
2582
2583/*
2584 * <ini>
Sen, Devendrac441b212017-02-23 15:40:42 +05302585 * gIbssPs1RxChainInAtim - IBSS Power Save Enable/Disable 1 RX
Abhishek Singh49b654e2016-12-01 16:11:17 +05302586 * chain usage during the ATIM window
2587 *
2588 * @Min: 0
2589 * @Max: 1
2590 * @Default: 0
2591 *
2592 * IBSS Power Save Enable/Disable 1 RX
2593 * chain usage during the ATIM window
2594 *
2595 * Related: Depend on gIbssIsPowerSaveAllowed
2596 *
2597 * Supported Feature: IBSS
2598 *
2599 * Usage: Internal/External
2600 *
2601 * </ini>
2602 */
2603#define CFG_IBSS_PS_1RX_CHAIN_IN_ATIM_WINDOW_NAME "gIbssPs1RxChainInAtim"
2604#define CFG_IBSS_PS_1RX_CHAIN_IN_ATIM_WINDOW_MIN (0)
2605#define CFG_IBSS_PS_1RX_CHAIN_IN_ATIM_WINDOW_MAX (1)
2606#define CFG_IBSS_PS_1RX_CHAIN_IN_ATIM_WINDOW_DEFAULT (0)
2607
Paul Zhang99fe8842017-12-08 14:43:46 +08002608/*
2609 * <ini>
2610 * wlm_latency_enable - WLM latency Enable
2611 *
2612 * @min: 0
2613 * @max: 1
2614 * @default: 0
2615 *
2616 * 0 - disable
2617 * 1 - enable
2618 *
2619 * </ini>
2620 */
2621#define CFG_LATENCY_ENABLE_NAME "wlm_latency_enable"
2622#define CFG_LATENCY_ENABLE_MIN (0)
2623#define CFG_LATENCY_ENABLE_MAX (1)
2624#define CFG_LATENCY_ENABLE_DEFAULT (0)
Abhishek Singh49b654e2016-12-01 16:11:17 +05302625
Paul Zhang99fe8842017-12-08 14:43:46 +08002626/*
2627 * <ini>
2628 * wlm_latency_level - WLM latency level
2629 * Define 4 latency level to gain latency
2630 *
2631 * @min: 0
2632 * @max: 3
2633 * @defalut: 0
2634 *
2635 * 0 - normal
2636 * 1 - moderate
2637 * 2 - low
2638 * 3 - ultralow
2639 *
2640 * </ini>
2641 */
2642#define CFG_LATENCY_LEVEL_NAME "wlm_latency_level"
2643#define CFG_LATENCY_LEVEL_MIN (0)
2644#define CFG_LATENCY_LEVEL_MAX (3)
2645#define CFG_LATENCY_LEVEL_DEFAULT (0)
Abhishek Singh49b654e2016-12-01 16:11:17 +05302646
Paul Zhang99fe8842017-12-08 14:43:46 +08002647/*
2648 * <ini>
2649 * wlm_latency_flags_normal - WLM flags setting for normal level
2650 *
2651 * @min: 0x0
2652 * @max: 0xffffffff
2653 * @defalut: 0x0
2654 *
2655 * |31 12| 11 | 10 |9 8|7 6|5 4|3 2| 1 | 0 |
2656 * +------+------+------+------+------+------+------+-----+-----+
2657 * | RSVD | SSLP | CSLP | RSVD | Roam | RSVD | DWLT | DFS | SUP |
2658 * +------+-------------+-------------+-------------------------+
2659 * | WAL | PS | Roam | Scan |
2660 *
2661 * bit 0: Avoid scan request from HLOS if setting
2662 * bit 1: Skip DFS channel SCAN if setting
2663 * bit 2-3: Define policy of dwell time/duration for each foreign channel
2664 * (b2 b3)
2665 * (0 0 ): Default scan dwell time
2666 * (0 1 ): Reserve
2667 * (1 0 ): Shrink off channel dwell time
2668 * (1 1 ): Reserve
2669 * bit 4-5: Reserve for scan
2670 * bit 6-7: Define roaming policy
2671 * (b6 b7)
2672 * (0 0 ): Default roaming behavior, allow roaming in all scenarios
2673 * (0 1 ): Disallow all roaming
2674 * (1 0 ): Allow roaming when final bmissed
2675 * (1 1 ): Reserve
2676 * bit 8-9: Reserve for roaming
2677 * bit 10: Disable css power collapse if setting
2678 * bit 11: Disable sys sleep if setting
2679 * bit 12-31: Reserve for future useage
2680 *
2681 * </ini>
2682 */
2683#define CFG_LATENCY_FLAGS_NORMAL_NAME "wlm_latency_flags_normal"
2684#define CFG_LATENCY_FLAGS_NORMAL_MIN (0x0)
2685#define CFG_LATENCY_FLAGS_NORMAL_MAX (0xffffffff)
2686#define CFG_LATENCY_FLAGS_NORMAL_DEFAULT (0x0)
2687
2688/*
2689 * <ini>
2690 * wlm_latency_flags_moderate - WLM flags setting for moderate level
2691 *
2692 * @min: 0x0
2693 * @max: 0xffffffff
2694 * @defalut: 0x8
2695 *
2696 * |31 12| 11 | 10 |9 8|7 6|5 4|3 2| 1 | 0 |
2697 * +------+------+------+------+------+------+------+-----+-----+
2698 * | RSVD | SSLP | CSLP | RSVD | Roam | RSVD | DWLT | DFS | SUP |
2699 * +------+-------------+-------------+-------------------------+
2700 * | WAL | PS | Roam | Scan |
2701 *
2702 * bit 0: Avoid scan request from HLOS if setting
2703 * bit 1: Skip DFS channel SCAN if setting
2704 * bit 2-3: Define policy of dwell time/duration for each foreign channel
2705 * (b2 b3)
2706 * (0 0 ): Default scan dwell time
2707 * (0 1 ): Reserve
2708 * (1 0 ): Shrink off channel dwell time
2709 * (1 1 ): Reserve
2710 * bit 4-5: Reserve for scan
2711 * bit 6-7: Define roaming policy
2712 * (b6 b7)
2713 * (0 0 ): Default roaming behavior, allow roaming in all scenarios
2714 * (0 1 ): Disallow all roaming
2715 * (1 0 ): Allow roaming when final bmissed
2716 * (1 1 ): Reserve
2717 * bit 8-9: Reserve for roaming
2718 * bit 10: Disable css power collapse if setting
2719 * bit 11: Disable sys sleep if setting
2720 * bit 12-31: Reserve for future useage
2721 *
2722 * </ini>
2723 */
2724#define CFG_LATENCY_FLAGS_MODERATE_NAME "wlm_latency_flags_moderate"
2725#define CFG_LATENCY_FLAGS_MODERATE_MIN (0x0)
2726#define CFG_LATENCY_FLAGS_MODERATE_MAX (0xffffffff)
2727#define CFG_LATENCY_FLAGS_MODERATE_DEFAULT (0x8)
2728
2729/*
2730 * <ini>
2731 * wlm_latency_flags_low - WLM flags setting for low level
2732 *
2733 * @min: 0x0
2734 * @max: 0xffffffff
2735 * @defalut: 0xa
2736 *
2737 * |31 12| 11 | 10 |9 8|7 6|5 4|3 2| 1 | 0 |
2738 * +------+------+------+------+------+------+------+-----+-----+
2739 * | RSVD | SSLP | CSLP | RSVD | Roam | RSVD | DWLT | DFS | SUP |
2740 * +------+-------------+-------------+-------------------------+
2741 * | WAL | PS | Roam | Scan |
2742 *
2743 * bit 0: Avoid scan request from HLOS if setting
2744 * bit 1: Skip DFS channel SCAN if setting
2745 * bit 2-3: Define policy of dwell time/duration for each foreign channel
2746 * (b2 b3)
2747 * (0 0 ): Default scan dwell time
2748 * (0 1 ): Reserve
2749 * (1 0 ): Shrink off channel dwell time
2750 * (1 1 ): Reserve
2751 * bit 4-5: Reserve for scan
2752 * bit 6-7: Define roaming policy
2753 * (b6 b7)
2754 * (0 0 ): Default roaming behavior, allow roaming in all scenarios
2755 * (0 1 ): Disallow all roaming
2756 * (1 0 ): Allow roaming when final bmissed
2757 * (1 1 ): Reserve
2758 * bit 8-9: Reserve for roaming
2759 * bit 10: Disable css power collapse if setting
2760 * bit 11: Disable sys sleep if setting
2761 * bit 12-31: Reserve for future useage
2762 *
2763 * </ini>
2764 */
2765#define CFG_LATENCY_FLAGS_LOW_NAME "wlm_latency_flags_low"
2766#define CFG_LATENCY_FLAGS_LOW_MIN (0x0)
2767#define CFG_LATENCY_FLAGS_LOW_MAX (0xffffffff)
2768#define CFG_LATENCY_FLAGS_LOW_DEFAULT (0xa)
2769
2770/*
2771 * <ini>
2772 * wlm_latency_flags_ultralow - WLM flags setting for ultralow level
2773 *
2774 * @min: 0x0
2775 * @max: 0xffffffff
2776 * @defalut: 0xc8a
2777 *
2778 * |31 12| 11 | 10 |9 8|7 6|5 4|3 2| 1 | 0 |
2779 * +------+------+------+------+------+------+------+-----+-----+
2780 * | RSVD | SSLP | CSLP | RSVD | Roam | RSVD | DWLT | DFS | SUP |
2781 * +------+-------------+-------------+-------------------------+
2782 * | WAL | PS | Roam | Scan |
2783 *
2784 * bit 0: Avoid scan request from HLOS if setting
2785 * bit 1: Skip DFS channel SCAN if setting
2786 * bit 2-3: Define policy of dwell time/duration for each foreign channel
2787 * (b2 b3)
2788 * (0 0 ): Default scan dwell time
2789 * (0 1 ): Reserve
2790 * (1 0 ): Shrink off channel dwell time
2791 * (1 1 ): Reserve
2792 * bit 4-5: Reserve for scan
2793 * bit 6-7: Define roaming policy
2794 * (b6 b7)
2795 * (0 0 ): Default roaming behavior, allow roaming in all scenarios
2796 * (0 1 ): Disallow all roaming
2797 * (1 0 ): Allow roaming when final bmissed
2798 * (1 1 ): Reserve
2799 * bit 8-9: Reserve for roaming
2800 * bit 10: Disable css power collapse if setting
2801 * bit 11: Disable sys sleep if setting
2802 * bit 12-31: Reserve for future useage
2803 *
2804 * </ini>
2805 */
2806#define CFG_LATENCY_FLAGS_ULTRALOW_NAME "wlm_latency_flags_ultralow"
2807#define CFG_LATENCY_FLAGS_ULTRALOW_MIN (0x0)
2808#define CFG_LATENCY_FLAGS_ULTRALOW_MAX (0xffffffff)
2809#define CFG_LATENCY_FLAGS_ULTRALOW_DEFAULT (0xc8a)
Abhishek Singh49b654e2016-12-01 16:11:17 +05302810
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08002811#define CFG_INTF0_MAC_ADDR_NAME "Intf0MacAddress"
2812#define CFG_INTF0_MAC_ADDR_MIN "000000000000"
2813#define CFG_INTF0_MAC_ADDR_MAX "ffffffffffff"
Jeff Johnson9e6ff212016-09-02 10:26:32 -07002814#define CFG_INTF0_MAC_ADDR_DEFAULT "000AF58989FF"
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08002815
2816#define CFG_INTF1_MAC_ADDR_NAME "Intf1MacAddress"
2817#define CFG_INTF1_MAC_ADDR_MIN "000000000000"
2818#define CFG_INTF1_MAC_ADDR_MAX "ffffffffffff"
Jeff Johnson9e6ff212016-09-02 10:26:32 -07002819#define CFG_INTF1_MAC_ADDR_DEFAULT "000AF58989FE"
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08002820
2821#define CFG_INTF2_MAC_ADDR_NAME "Intf2MacAddress"
2822#define CFG_INTF2_MAC_ADDR_MIN "000000000000"
2823#define CFG_INTF2_MAC_ADDR_MAX "ffffffffffff"
Jeff Johnson9e6ff212016-09-02 10:26:32 -07002824#define CFG_INTF2_MAC_ADDR_DEFAULT "000AF58989FD"
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08002825
2826#define CFG_INTF3_MAC_ADDR_NAME "Intf3MacAddress"
2827#define CFG_INTF3_MAC_ADDR_MIN "000000000000"
2828#define CFG_INTF3_MAC_ADDR_MAX "ffffffffffff"
Jeff Johnson9e6ff212016-09-02 10:26:32 -07002829#define CFG_INTF3_MAC_ADDR_DEFAULT "000AF58989FC"
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08002830
Sreelakshmi Konamki13b5ad52017-01-30 10:48:26 +05302831/*
2832 * <ini>
2833 * gDot11Mode - SAP phy mode
2834 * @Min: 0
Krishna Kumaar Natarajan4f1d7722017-03-03 21:12:51 -08002835 * @Max: 12 (11ax)
2836 * @Default: 12 (11ax)
Sreelakshmi Konamki13b5ad52017-01-30 10:48:26 +05302837 *
2838 * This ini is used to set Phy Mode (auto, b, g, n, etc/) Valid values are
Krishna Kumaar Natarajan4f1d7722017-03-03 21:12:51 -08002839 * 0-12, with 0 = Auto, 12 = 11ax.
Sreelakshmi Konamki13b5ad52017-01-30 10:48:26 +05302840 *
2841 * Related: None.
2842 *
2843 * Supported Feature: SAP
2844 *
2845 * Usage: Internal/External
2846 *
2847 * </ini>
2848 */
2849#define CFG_DOT11_MODE_NAME "gDot11Mode"
2850#define CFG_DOT11_MODE_MIN eHDD_DOT11_MODE_AUTO
Krishna Kumaar Natarajan4f1d7722017-03-03 21:12:51 -08002851#define CFG_DOT11_MODE_DEFAULT eHDD_DOT11_MODE_11ax
2852#define CFG_DOT11_MODE_MAX eHDD_DOT11_MODE_11ax
Sreelakshmi Konamki13b5ad52017-01-30 10:48:26 +05302853
2854/*
2855 * <ini>
2856 * gEnableApUapsd - Enable/disable UAPSD for SoftAP
2857 * @Min: 0
2858 * @Max: 1
2859 * @Default: 1
2860 *
2861 * This ini is used to setup setup U-APSD for Acs at association
2862 *
2863 * Related: None.
2864 *
2865 * Supported Feature: SAP
2866 *
2867 * Usage: Internal/External
2868 *
2869 * </ini>
2870 */
2871#define CFG_AP_QOS_UAPSD_MODE_NAME "gEnableApUapsd"
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08002872#define CFG_AP_QOS_UAPSD_MODE_MIN (0)
2873#define CFG_AP_QOS_UAPSD_MODE_MAX (1)
2874#define CFG_AP_QOS_UAPSD_MODE_DEFAULT (1)
2875
Sreelakshmi Konamki13b5ad52017-01-30 10:48:26 +05302876/*
2877 * <ini>
2878 * gEnableApRandomBssid - Create ramdom BSSID
2879 * @Min: 0
2880 * @Max: 1
2881 * @Default: 0
2882 *
2883 * This ini is used to create a random BSSID in SoftAP mode to meet
2884 * the Android requirement.
2885 *
2886 * Related: None.
2887 *
2888 * Supported Feature: SAP
2889 *
2890 * Usage: Internal/External
2891 *
2892 * </ini>
2893 */
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08002894#define CFG_AP_ENABLE_RANDOM_BSSID_NAME "gEnableApRandomBssid"
2895#define CFG_AP_ENABLE_RANDOM_BSSID_MIN (0)
2896#define CFG_AP_ENABLE_RANDOM_BSSID_MAX (1)
2897#define CFG_AP_ENABLE_RANDOM_BSSID_DEFAULT (0)
2898
Sreelakshmi Konamki13b5ad52017-01-30 10:48:26 +05302899/*
2900 * <ini>
2901 * gEnableApProt - Enable/Disable AP protection
2902 * @Min: 0
2903 * @Max: 1
2904 * @Default: 1
2905 *
2906 * This ini is used to enable/disable AP protection
2907 *
2908 * Related: None.
2909 *
2910 * Supported Feature: SAP
2911 *
2912 * Usage: Internal/External
2913 *
2914 * </ini>
2915 */
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08002916#define CFG_AP_ENABLE_PROTECTION_MODE_NAME "gEnableApProt"
2917#define CFG_AP_ENABLE_PROTECTION_MODE_MIN (0)
2918#define CFG_AP_ENABLE_PROTECTION_MODE_MAX (1)
2919#define CFG_AP_ENABLE_PROTECTION_MODE_DEFAULT (1)
2920
Sreelakshmi Konamki13b5ad52017-01-30 10:48:26 +05302921/*
2922 * <ini>
2923 * gApProtection - Set AP protection parameter
2924 * @Min: 0x0
2925 * @Max: 0xFFFF
2926 * @Default: 0xBFFF
2927 *
2928 * This ini is used to set AP protection parameter
2929 * Bit map for CFG_AP_PROTECTION_MODE_DEFAULT
2930 * LOWER byte for associated stations
2931 * UPPER byte for overlapping stations
2932 * each byte will have the following info
2933 * bit15 bit14 bit13 bit12 bit11 bit10 bit9 bit8
2934 * OBSS RIFS LSIG_TXOP NON_GF HT20 FROM_11G FROM_11B FROM_11A
2935 * bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0
2936 * OBSS RIFS LSIG_TXOP NON_GF HT_20 FROM_11G FROM_11B FROM_11A
2937 *
2938 * Related: None.
2939 *
2940 * Supported Feature: SAP
2941 *
2942 * Usage: Internal/External
2943 *
2944 * </ini>
2945 */
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08002946#define CFG_AP_PROTECTION_MODE_NAME "gApProtection"
2947#define CFG_AP_PROTECTION_MODE_MIN (0x0)
2948#define CFG_AP_PROTECTION_MODE_MAX (0xFFFF)
2949#define CFG_AP_PROTECTION_MODE_DEFAULT (0xBFFF)
2950
Sreelakshmi Konamki13b5ad52017-01-30 10:48:26 +05302951/*
2952 * <ini>
2953 * gEnableApOBSSProt - Enable/Disable AP OBSS protection
2954 * @Min: 0
2955 * @Max: 1
2956 * @Default: 0
2957 *
2958 * This ini is used to enable/disable AP OBSS protection
2959 *
2960 * Related: None.
2961 *
2962 * Supported Feature: SAP
2963 *
2964 * Usage: Internal/External
2965 *
2966 * </ini>
2967 */
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08002968#define CFG_AP_OBSS_PROTECTION_MODE_NAME "gEnableApOBSSProt"
2969#define CFG_AP_OBSS_PROTECTION_MODE_MIN (0)
2970#define CFG_AP_OBSS_PROTECTION_MODE_MAX (1)
2971#define CFG_AP_OBSS_PROTECTION_MODE_DEFAULT (0)
2972
Sreelakshmi Konamki13b5ad52017-01-30 10:48:26 +05302973/*
2974 * <ini>
2975 * gDisableIntraBssFwd - Disable intrs BSS Rx packets
2976 * @Min: 0
2977 * @Max: 1
2978 * @Default: 0
2979 *
2980 * This ini is used to disbale to forward Intra-BSS Rx packets when
2981 * ap_isolate=1 in hostapd.conf
2982 *
2983 * Related: None.
2984 *
2985 * Supported Feature: SAP
2986 *
2987 * Usage: Internal/External
2988 *
2989 * </ini>
2990 */
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08002991#define CFG_AP_STA_SECURITY_SEPERATION_NAME "gDisableIntraBssFwd"
2992#define CFG_AP_STA_SECURITY_SEPERATION_MIN (0)
2993#define CFG_AP_STA_SECURITY_SEPERATION_MAX (1)
2994#define CFG_AP_STA_SECURITY_SEPERATION_DEFAULT (0)
2995
Sreelakshmi Konamki13b5ad52017-01-30 10:48:26 +05302996/*
2997 * <ini>
Sreelakshmi Konamki13b5ad52017-01-30 10:48:26 +05302998 * gApKeepAlivePeriod - AP keep alive period
2999 * @Min: 1
3000 * @Max: 65535
3001 * @Default: 20
3002 *
3003 * This ini is used to set keep alive period of AP
3004 *
3005 * Related: None.
3006 *
3007 * Supported Feature: SAP
3008 *
3009 * Usage: Internal/External
3010 *
3011 * </ini>
3012 */
3013#define CFG_AP_KEEP_ALIVE_PERIOD_NAME "gApKeepAlivePeriod"
3014#define CFG_AP_KEEP_ALIVE_PERIOD_MIN WNI_CFG_AP_KEEP_ALIVE_TIMEOUT_STAMIN
3015#define CFG_AP_KEEP_ALIVE_PERIOD_MAX WNI_CFG_AP_KEEP_ALIVE_TIMEOUT_STAMAX
3016#define CFG_AP_KEEP_ALIVE_PERIOD_DEFAULT WNI_CFG_AP_KEEP_ALIVE_TIMEOUT_STADEF
3017
3018/*
3019 * <ini>
3020 * gApLinkMonitorPeriod - AP keep alive period
3021 * @Min: 3
3022 * @Max: 50
3023 * @Default: 10
3024 *
3025 * This ini is used to configure AP link monitor timeout value
3026 *
3027 * Related: None.
3028 *
3029 * Supported Feature: SAP
3030 *
3031 * Usage: Internal/External
3032 *
3033 * </ini>
3034 */
3035#define CFG_AP_LINK_MONITOR_PERIOD_NAME "gApLinkMonitorPeriod"
3036#define CFG_AP_LINK_MONITOR_PERIOD_MIN (3)
3037#define CFG_AP_LINK_MONITOR_PERIOD_MAX (50)
3038#define CFG_AP_LINK_MONITOR_PERIOD_DEFAULT (10)
3039
3040/*
3041 * <ini>
3042 * gBeaconInterval - Beacon interval for SoftAP
3043 * @Min: 0
3044 * @Max: 65535
3045 * @Default: 100
3046 *
3047 * This ini is used to set beacon interval for SoftAP
3048 *
3049 * Related: None.
3050 *
3051 * Supported Feature: SAP
3052 *
3053 * Usage: Internal/External
3054 *
3055 * </ini>
3056 */
3057#define CFG_BEACON_INTERVAL_NAME "gBeaconInterval"
3058#define CFG_BEACON_INTERVAL_MIN WNI_CFG_BEACON_INTERVAL_STAMIN
3059#define CFG_BEACON_INTERVAL_MAX WNI_CFG_BEACON_INTERVAL_STAMAX
3060#define CFG_BEACON_INTERVAL_DEFAULT WNI_CFG_BEACON_INTERVAL_STADEF
3061
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08003062#ifdef FEATURE_WLAN_AUTO_SHUTDOWN
3063#define CFG_WLAN_AUTO_SHUTDOWN "gWlanAutoShutdown"
3064#define CFG_WLAN_AUTO_SHUTDOWN_MIN (0)
3065#define CFG_WLAN_AUTO_SHUTDOWN_MAX (86400) /* Max 1 day timeout */
3066#define CFG_WLAN_AUTO_SHUTDOWN_DEFAULT (0)
3067#endif
3068
3069#ifdef FEATURE_WLAN_MCC_TO_SCC_SWITCH
Nitesh Shah03161d12016-12-06 18:30:12 +05303070/*
3071 * <ini>
3072 * gWlanMccToSccSwitchMode - Control SAP channel.
3073 * @Min: 0
Jayachandran Sreekumaran8ab18652017-09-26 18:39:16 +05303074 * @Max: 5
Nitesh Shah03161d12016-12-06 18:30:12 +05303075 * @Default: 0
3076 *
3077 * This ini is used to override SAP channel.
3078 * If gWlanMccToSccSwitchMode = 0: disabled.
Jayachandran Sreekumaran8ab18652017-09-26 18:39:16 +05303079 * If gWlanMccToSccSwitchMode = 1: Enable switch.
3080 * If gWlainMccToSccSwitchMode = 2: Force switch with SAP restart.
3081 * If gWlainMccToSccSwitchMode = 3: Force switch without SAP restart.
3082 * If gWlainMccToSccSwitchMode = 4: Switch using
3083 * fav channel(s)without SAP restart.
3084 * If gWlainMccToSccSwitchMode = 5: Force switch without SAP restart.MCC allowed
3085 * in exceptional cases.
Bala Venkateshb816ce82018-06-28 17:00:54 +05303086 * If gWlainMccToSccSwitchMode = 6: Force Switch without SAP restart only in
3087 user preffered band.
Nitesh Shah03161d12016-12-06 18:30:12 +05303088 * Related: None.
3089 *
3090 * Supported Feature: Concurrency
3091 *
3092 * Usage: Internal/External
3093 *
3094 * </ini>
3095 */
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08003096#define CFG_WLAN_MCC_TO_SCC_SWITCH_MODE "gWlanMccToSccSwitchMode"
Anurag Chouhanf04e84f2016-03-03 10:12:12 +05303097#define CFG_WLAN_MCC_TO_SCC_SWITCH_MODE_MIN (QDF_MCC_TO_SCC_SWITCH_DISABLE)
Manishekar Chandrasekaran1db3abe2016-06-24 03:27:07 +05303098#define CFG_WLAN_MCC_TO_SCC_SWITCH_MODE_MAX \
Bala Venkateshb816ce82018-06-28 17:00:54 +05303099 (QDF_MCC_TO_SCC_SWITCH_MAX - 1)
Anurag Chouhanf04e84f2016-03-03 10:12:12 +05303100#define CFG_WLAN_MCC_TO_SCC_SWITCH_MODE_DEFAULT (QDF_MCC_TO_SCC_SWITCH_DISABLE)
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08003101#endif
3102
Dustin Brown7bd76332018-02-23 12:10:55 -08003103#define CFG_DISABLE_PACKET_FILTER "gDisablePacketFilter"
3104#define CFG_DISABLE_PACKET_FILTER_MIN (0)
3105#define CFG_DISABLE_PACKET_FILTER_MAX (1)
3106#define CFG_DISABLE_PACKET_FILTER_DEFAULT (1)
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08003107
3108#define CFG_ENABLE_LTE_COEX "gEnableLTECoex"
3109#define CFG_ENABLE_LTE_COEX_MIN (0)
3110#define CFG_ENABLE_LTE_COEX_MAX (1)
3111#define CFG_ENABLE_LTE_COEX_DEFAULT (0)
3112
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08003113#define CFG_VCC_RSSI_TRIGGER_NAME "gVccRssiTrigger"
3114#define CFG_VCC_RSSI_TRIGGER_MIN (0)
3115#define CFG_VCC_RSSI_TRIGGER_MAX (80)
3116#define CFG_VCC_RSSI_TRIGGER_DEFAULT (80)
3117
3118#define CFG_VCC_UL_MAC_LOSS_THRESH_NAME "gVccUlMacLossThresh"
3119#define CFG_VCC_UL_MAC_LOSS_THRESH_MIN (0)
3120#define CFG_VCC_UL_MAC_LOSS_THRESH_MAX (9)
3121#define CFG_VCC_UL_MAC_LOSS_THRESH_DEFAULT (9)
3122
Nitesh Shah03161d12016-12-06 18:30:12 +05303123/*
3124 * <ini>
3125 * gPassiveMaxChannelTimeConc - Maximum passive scan time in milliseconds.
3126 * @Min: 0
3127 * @Max: 10000
3128 * @Default: 110
3129 *
3130 * This ini is used to set maximum passive scan time in STA+SAP concurrent
3131 * mode.
3132 *
3133 * Related: None.
3134 *
3135 * Supported Feature: Concurrency
3136 *
3137 * Usage: Internal/External
3138 *
3139 * </ini>
3140 */
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08003141#define CFG_PASSIVE_MAX_CHANNEL_TIME_CONC_NAME "gPassiveMaxChannelTimeConc"
3142#define CFG_PASSIVE_MAX_CHANNEL_TIME_CONC_MIN (0)
3143#define CFG_PASSIVE_MAX_CHANNEL_TIME_CONC_MAX (10000)
3144#define CFG_PASSIVE_MAX_CHANNEL_TIME_CONC_DEFAULT (110)
3145
Nitesh Shah03161d12016-12-06 18:30:12 +05303146/*
3147 * <ini>
3148 * gPassiveMinChannelTimeConc - Minimum passive scan time in milliseconds.
3149 * @Min: 0
3150 * @Max: 10000
3151 * @Default: 60
3152 *
3153 * This ini is used to set minimum passive scan time in STA+SAP concurrent
3154 * mode.
3155 *
3156 * Related: None.
3157 *
3158 * Supported Feature: Concurrency
3159 *
3160 * Usage: Internal/External
3161 *
3162 * </ini>
3163 */
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08003164#define CFG_PASSIVE_MIN_CHANNEL_TIME_CONC_NAME "gPassiveMinChannelTimeConc"
3165#define CFG_PASSIVE_MIN_CHANNEL_TIME_CONC_MIN (0)
3166#define CFG_PASSIVE_MIN_CHANNEL_TIME_CONC_MAX (10000)
3167#define CFG_PASSIVE_MIN_CHANNEL_TIME_CONC_DEFAULT (60)
3168
Nitesh Shah03161d12016-12-06 18:30:12 +05303169/*
3170 * <ini>
3171 * gActiveMaxChannelTimeConc - Maximum active scan time in milliseconds.
3172 * @Min: 0
3173 * @Max: 10000
3174 * @Default: 40
3175 *
3176 * This ini is used to set maximum active scan time in STA+SAP concurrent
3177 * mode.
3178 *
3179 * Related: None.
3180 *
3181 * Supported Feature: Concurrency
3182 *
3183 * Usage: Internal/External
3184 *
3185 * </ini>
3186 */
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08003187#define CFG_ACTIVE_MAX_CHANNEL_TIME_CONC_NAME "gActiveMaxChannelTimeConc"
3188#define CFG_ACTIVE_MAX_CHANNEL_TIME_CONC_MIN (0)
3189#define CFG_ACTIVE_MAX_CHANNEL_TIME_CONC_MAX (10000)
3190#define CFG_ACTIVE_MAX_CHANNEL_TIME_CONC_DEFAULT (40)
3191
Nitesh Shah03161d12016-12-06 18:30:12 +05303192/*
3193 * <ini>
3194 * gActiveMinChannelTimeConc - Minimum active scan time in milliseconds..
3195 * @Min: 0
3196 * @Max: 10000
3197 * @Default: 20
3198 *
3199 * This ini is used to set minimum active scan time in STA+SAP concurrent
3200 * mode.
3201 *
3202 * Related: None.
3203 *
3204 * Supported Feature: Concurrency
3205 *
3206 * Usage: Internal/External
3207 *
3208 * </ini>
3209 */
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08003210#define CFG_ACTIVE_MIN_CHANNEL_TIME_CONC_NAME "gActiveMinChannelTimeConc"
3211#define CFG_ACTIVE_MIN_CHANNEL_TIME_CONC_MIN (0)
3212#define CFG_ACTIVE_MIN_CHANNEL_TIME_CONC_MAX (10000)
3213#define CFG_ACTIVE_MIN_CHANNEL_TIME_CONC_DEFAULT (20)
3214
Nitesh Shah03161d12016-12-06 18:30:12 +05303215/*
3216 * <ini>
3217 * gRestTimeConc - Rest time before moving to a new channel to scan.
3218 * @Min: 0
3219 * @Max: 10000
3220 * @Default: 100
3221 *
3222 * This ini is used to configure rest time.
3223 *
3224 * Related: None.
3225 *
3226 * Supported Feature: Concurrency
3227 *
3228 * Usage: Internal/External
3229 *
3230 * </ini>
3231 */
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08003232#define CFG_REST_TIME_CONC_NAME "gRestTimeConc"
3233#define CFG_REST_TIME_CONC_MIN (0)
3234#define CFG_REST_TIME_CONC_MAX (10000)
3235#define CFG_REST_TIME_CONC_DEFAULT (100)
3236
Nitesh Shah03161d12016-12-06 18:30:12 +05303237/*
3238 * <ini>
3239 * gMinRestTimeConc - Mininum time spent on home channel before moving to a
3240 * new channel to scan.
3241 * @Min: 0
3242 * @Max: 50
3243 * @Default: 50
3244 *
3245 * This ini is used to configure minimum time spent on home channel before
3246 * moving to a new channel to scan.
3247 *
3248 * Related: None.
3249 *
3250 * Supported Feature: Concurrency
3251 *
3252 * Usage: Internal/External
3253 *
3254 * </ini>
3255 */
Agrawal Ashish17bb3902016-05-05 13:29:40 +05303256#define CFG_MIN_REST_TIME_NAME "gMinRestTimeConc"
3257#define CFG_MIN_REST_TIME_MIN (0)
3258#define CFG_MIN_REST_TIME_MAX (50)
3259#define CFG_MIN_REST_TIME_DEFAULT (50)
3260
Nitesh Shah03161d12016-12-06 18:30:12 +05303261/*
3262 * <ini>
3263 * gIdleTimeConc - Data inactivity time in msec.
3264 * @Min: 0
3265 * @Max: 25
3266 * @Default: 25
3267 *
3268 * This ini is used to configure data inactivity time in msec on bss channel
3269 * that will be used by scan engine in firmware.
3270 * For example if this value is 25ms then firmware will check for data
3271 * inactivity every 25ms till gRestTimeConc is reached.
3272 * If inactive then scan engine will move from home channel to scan the next
3273 * frequency.
3274 *
3275 * Related: None.
3276 *
3277 * Supported Feature: Concurrency
3278 *
3279 * Usage: Internal/External
3280 *
3281 * </ini>
Agrawal Ashish17bb3902016-05-05 13:29:40 +05303282 */
3283#define CFG_IDLE_TIME_NAME "gIdleTimeConc"
3284#define CFG_IDLE_TIME_MIN (0)
3285#define CFG_IDLE_TIME_MAX (25)
3286#define CFG_IDLE_TIME_DEFAULT (25)
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08003287
3288#define CFG_MAX_PS_POLL_NAME "gMaxPsPoll"
3289#define CFG_MAX_PS_POLL_MIN WNI_CFG_MAX_PS_POLL_STAMIN
3290#define CFG_MAX_PS_POLL_MAX WNI_CFG_MAX_PS_POLL_STAMAX
3291#define CFG_MAX_PS_POLL_DEFAULT WNI_CFG_MAX_PS_POLL_STADEF
3292
3293#define CFG_MAX_TX_POWER_NAME "gTxPowerCap"
3294#define CFG_MAX_TX_POWER_MIN WNI_CFG_CURRENT_TX_POWER_LEVEL_STAMIN
3295#define CFG_MAX_TX_POWER_MAX WNI_CFG_CURRENT_TX_POWER_LEVEL_STAMAX
3296/* Not to use CFG default because if no registry setting, this is ignored by SME. */
3297#define CFG_MAX_TX_POWER_DEFAULT WNI_CFG_CURRENT_TX_POWER_LEVEL_STAMAX
3298
Padma, Santhosh Kumar29df3622016-08-16 19:15:16 +05303299/* This ini controls driver to honor/dishonor power constraint from AP */
3300#define CFG_TX_POWER_CTRL_NAME "gAllowTPCfromAP"
3301#define CFG_TX_POWER_CTRL_DEFAULT (1)
3302#define CFG_TX_POWER_CTRL_MIN (0)
3303#define CFG_TX_POWER_CTRL_MAX (1)
3304
Sen, Devendra9ca8c432017-02-23 15:10:26 +05303305/*
3306 * <ini>
Sen, Devendra9ca8c432017-02-23 15:10:26 +05303307 * gMaxLIModulatedDTIM - Set MaxLIModulate Dtim
3308 * @Min: 1
3309 * @Max: 10
3310 * @Default: 10
3311 *
3312 * This ini is used to set default MaxLIModulatedDTIM
3313 *
3314 * Related: None
3315 *
3316 * Supported Feature: STA
3317 *
3318 * Usage: Internal/External
3319 *
3320 * </ini>
3321 */
3322
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08003323#define CFG_MAX_LI_MODULATED_DTIM_NAME "gMaxLIModulatedDTIM"
3324#define CFG_MAX_LI_MODULATED_DTIM_MIN (1)
3325#define CFG_MAX_LI_MODULATED_DTIM_MAX (10)
3326#define CFG_MAX_LI_MODULATED_DTIM_DEFAULT (10)
3327
Sen, Devendra9ca8c432017-02-23 15:10:26 +05303328/*
3329 * <ini>
Nitesh Shah03161d12016-12-06 18:30:12 +05303330 * gFWMccRtsCtsProtection - RTS-CTS protection in MCC.
3331 * @Min: 0
3332 * @Max: 1
3333 * @Default: 0
3334 *
3335 * This ini is used to enable/disable use of long duration RTS-CTS protection
3336 * when SAP goes off channel in MCC mode.
3337 *
3338 * Related: None.
3339 *
3340 * Supported Feature: Concurrency
3341 *
3342 * Usage: Internal/External
3343 *
3344 * </ini>
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08003345 */
Sen, Devendra9ca8c432017-02-23 15:10:26 +05303346
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08003347#define CFG_FW_MCC_RTS_CTS_PROT_NAME "gFWMccRtsCtsProtection"
3348#define CFG_FW_MCC_RTS_CTS_PROT_MIN (0)
3349#define CFG_FW_MCC_RTS_CTS_PROT_MAX (1)
3350#define CFG_FW_MCC_RTS_CTS_PROT_DEFAULT (0)
3351
Nitesh Shah03161d12016-12-06 18:30:12 +05303352/*
3353 * <ini>
3354 * gFWMccBCastProbeResponse - Broadcast Probe Response in MCC.
3355 * @Min: 0
3356 * @Max: 1
3357 * @Default: 0
3358 *
3359 * This ini is used to enable/disable use of broadcast probe response to
3360 * increase the detectability of SAP in MCC mode.
3361 *
3362 * Related: None.
3363 *
3364 * Supported Feature: Concurrency
3365 *
3366 * Usage: Internal/External
3367 *
3368 * </ini>
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08003369 */
3370#define CFG_FW_MCC_BCAST_PROB_RESP_NAME "gFWMccBCastProbeResponse"
3371#define CFG_FW_MCC_BCAST_PROB_RESP_MIN (0)
3372#define CFG_FW_MCC_BCAST_PROB_RESP_MAX (1)
3373#define CFG_FW_MCC_BCAST_PROB_RESP_DEFAULT (0)
3374
Mukul Sharmaed92f2f2017-04-20 00:06:28 +05303375/*
3376 * <ini>
3377 * gDataInactivityTimeout - Data activity timeout for non wow mode.
3378 * @Min: 1
3379 * @Max: 255
3380 * @Default: 200
3381 *
3382 * This ini is used to set data inactivity timeout in non wow mode.
3383 *
3384 * Supported Feature: inactivity timeout in non wow mode
3385 *
3386 * Usage: External
3387 *
3388 * </ini>
3389 */
3390
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08003391#define CFG_DATA_INACTIVITY_TIMEOUT_NAME "gDataInactivityTimeout"
3392#define CFG_DATA_INACTIVITY_TIMEOUT_MIN (1)
3393#define CFG_DATA_INACTIVITY_TIMEOUT_MAX (255)
Jeff Johnson9c9be712016-09-02 14:02:31 -07003394#define CFG_DATA_INACTIVITY_TIMEOUT_DEFAULT (200)
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08003395
Sen, Devendra9ca8c432017-02-23 15:10:26 +05303396/*
3397 * <ini>
Mukul Sharmaed92f2f2017-04-20 00:06:28 +05303398 * g_wow_data_inactivity_timeout - Data activity timeout in wow mode.
3399 * @Min: 1
3400 * @Max: 255
3401 * @Default: 50
3402 *
3403 * This ini is used to set data inactivity timeout in wow mode.
3404 *
3405 * Supported Feature: inactivity timeout in wow mode
3406 *
3407 * Usage: External
3408 *
3409 * </ini>
3410 */
3411#define CFG_WOW_DATA_INACTIVITY_TIMEOUT_NAME "g_wow_data_inactivity_timeout"
3412#define CFG_WOW_DATA_INACTIVITY_TIMEOUT_MIN (1)
3413#define CFG_WOW_DATA_INACTIVITY_TIMEOUT_MAX (255)
3414#define CFG_WOW_DATA_INACTIVITY_TIMEOUT_DEFAULT (50)
3415
3416/*
3417 * <ini>
Sen, Devendra9ca8c432017-02-23 15:10:26 +05303418 * gStaKeepAlivePeriod - Sends NULL frame to AP periodically in
3419 * seconds to notify STA's existence
3420 * @Min: 0
3421 * @Max: 65535
3422 * @Default: 30
3423 *
3424 * This ini is used to send default NULL frame to AP
3425 *
3426 * Related: None
3427 *
3428 * Supported Feature: STA
3429 *
3430 * Usage: Internal/External
3431 *
3432 * </ini>
3433 */
3434
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08003435#define CFG_INFRA_STA_KEEP_ALIVE_PERIOD_NAME "gStaKeepAlivePeriod"
3436#define CFG_INFRA_STA_KEEP_ALIVE_PERIOD_MIN (0)
3437#define CFG_INFRA_STA_KEEP_ALIVE_PERIOD_MAX (65535)
Sourav Mohapatrad56faa52018-07-16 15:03:38 +05303438#define CFG_INFRA_STA_KEEP_ALIVE_PERIOD_DEFAULT (60)
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08003439
Dustin Brownb6b0f182017-03-08 13:08:27 -08003440/**
3441 * enum station_keepalive_method - available keepalive methods for stations
3442 * @HDD_STA_KEEPALIVE_NULL_DATA: null data packet
3443 * @HDD_STA_KEEPALIVE_GRAT_ARP: gratuitous ARP packet
3444 * @HDD_STA_KEEPALIVE_COUNT: number of method options available
3445 */
3446enum station_keepalive_method {
3447 HDD_STA_KEEPALIVE_NULL_DATA,
3448 HDD_STA_KEEPALIVE_GRAT_ARP,
3449 /* keep at the end */
3450 HDD_STA_KEEPALIVE_COUNT
3451};
3452
3453/*
3454 * <ini>
3455 * gStaKeepAliveMethod - Which keepalive method to use
3456 * @Min: 0
3457 * @Max: 1
3458 * @Default: 1
3459 *
3460 * This ini determines which keepalive method to use for station interfaces
3461 * 1) Use null data packets
3462 * 2) Use gratuitous ARP packets
3463 *
3464 * Related: gStaKeepAlivePeriod, gApKeepAlivePeriod, gGoKeepAlivePeriod
3465 *
3466 * Supported Feature: STA, Keepalive
3467 *
3468 * Usage: Internal/External
3469 *
3470 * </ini>
3471 */
3472#define CFG_STA_KEEPALIVE_METHOD_NAME "gStaKeepAliveMethod"
3473#define CFG_STA_KEEPALIVE_METHOD_MIN (HDD_STA_KEEPALIVE_NULL_DATA)
3474#define CFG_STA_KEEPALIVE_METHOD_MAX (HDD_STA_KEEPALIVE_COUNT - 1)
3475#define CFG_STA_KEEPALIVE_METHOD_DEFAULT (HDD_STA_KEEPALIVE_GRAT_ARP)
3476
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08003477/* WMM configuration */
Sreelakshmi Konamki9be8d412017-03-01 10:29:08 +05303478/*
3479 * <ini>
3480 * WmmIsEnabled - Enable WMM feature
3481 * @Min: 0
3482 * @Max: 2
3483 * @Default: 0
3484 *
3485 * This ini is used to enable/disable WMM.
3486 *
3487 * Related: None.
3488 *
3489 * Supported Feature: WMM
3490 *
3491 * Usage: Internal/External
3492 *
3493 * </ini>
3494 */
3495#define CFG_QOS_WMM_MODE_NAME "WmmIsEnabled"
3496#define CFG_QOS_WMM_MODE_MIN (0)
3497#define CFG_QOS_WMM_MODE_MAX (2) /* HDD_WMM_NO_QOS */
3498#define CFG_QOS_WMM_MODE_DEFAULT (0) /* HDD_WMM_AUTO */
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08003499
Sreelakshmi Konamki9be8d412017-03-01 10:29:08 +05303500/*
3501 * <ini>
3502 * 80211eIsEnabled - Enable 802.11e feature
3503 * @Min: 0
3504 * @Max: 1
3505 * @Default: 0
3506 *
3507 * This ini is used to enable/disable 802.11e.
3508 *
3509 * Related: None.
3510 *
3511 * Supported Feature: 802.11e
3512 *
3513 * Usage: Internal/External
3514 *
3515 * </ini>
3516 */
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08003517#define CFG_QOS_WMM_80211E_ENABLED_NAME "80211eIsEnabled"
3518#define CFG_QOS_WMM_80211E_ENABLED_MIN (0)
3519#define CFG_QOS_WMM_80211E_ENABLED_MAX (1)
3520#define CFG_QOS_WMM_80211E_ENABLED_DEFAULT (0)
3521
Sreelakshmi Konamki9be8d412017-03-01 10:29:08 +05303522/*
3523 * <ini>
3524 * UapsdMask - To setup U-APSD mask for ACs
3525 * @Min: 0x00
3526 * @Max: 0xFF
3527 * @Default: 0x00
3528 *
3529 * This ini is used to setup U-APSD mask for ACs.
3530 *
3531 * Related: None.
3532 *
3533 * Supported Feature: WMM
3534 *
3535 * Usage: Internal/External
3536 *
3537 * </ini>
3538 */
3539#define CFG_QOS_WMM_UAPSD_MASK_NAME "UapsdMask"
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08003540#define CFG_QOS_WMM_UAPSD_MASK_MIN (0x00)
3541#define CFG_QOS_WMM_UAPSD_MASK_MAX (0xFF)
3542#define CFG_QOS_WMM_UAPSD_MASK_DEFAULT (0x00)
3543
Sreelakshmi Konamki9be8d412017-03-01 10:29:08 +05303544/*
3545 * <ini>
3546 * ImplicitQosIsEnabled - Enableimplicit QOS
3547 * @Min: 0
3548 * @Max: 1
3549 * @Default: 0
3550 *
3551 * This ini is used to enable/disable implicit QOS.
3552 *
3553 * Related: None.
3554 *
3555 * Supported Feature: WMM
3556 *
3557 * Usage: Internal/External
3558 *
3559 * </ini>
3560 */
3561#define CFG_QOS_IMPLICIT_SETUP_ENABLED_NAME "ImplicitQosIsEnabled"
3562#define CFG_QOS_IMPLICIT_SETUP_ENABLED_MIN (0)
3563#define CFG_QOS_IMPLICIT_SETUP_ENABLED_MAX (1)
3564#define CFG_QOS_IMPLICIT_SETUP_ENABLED_DEFAULT (0)
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08003565
Sreelakshmi Konamki9be8d412017-03-01 10:29:08 +05303566/*
3567 * <ini>
3568 * InfraUapsdVoSrvIntv - Set Uapsd service interval for voice
3569 * @Min: 0
3570 * @Max: 4294967295UL
3571 * @Default: 20
3572 *
3573 * This ini is used to set Uapsd service interval for voice.
3574 *
3575 * Related: None.
3576 *
3577 * Supported Feature: WMM
3578 *
3579 * Usage: Internal/External
3580 *
3581 * </ini>
3582 */
3583#define CFG_QOS_WMM_INFRA_UAPSD_VO_SRV_INTV_NAME "InfraUapsdVoSrvIntv"
3584#define CFG_QOS_WMM_INFRA_UAPSD_VO_SRV_INTV_MIN (0)
3585#define CFG_QOS_WMM_INFRA_UAPSD_VO_SRV_INTV_MAX (4294967295UL)
3586#define CFG_QOS_WMM_INFRA_UAPSD_VO_SRV_INTV_DEFAULT (20)
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08003587
Sreelakshmi Konamki9be8d412017-03-01 10:29:08 +05303588/*
3589 * <ini>
3590 * InfraUapsdVoSuspIntv - Set Uapsd suspension interval for voice
3591 * @Min: 0
3592 * @Max: 4294967295UL
3593 * @Default: 2000
3594 *
3595 * This ini is used to set Uapsd suspension interval for voice.
3596 *
3597 * Related: None.
3598 *
3599 * Supported Feature: WMM
3600 *
3601 * Usage: Internal/External
3602 *
3603 * </ini>
3604 */
3605#define CFG_QOS_WMM_INFRA_UAPSD_VO_SUS_INTV_NAME "InfraUapsdVoSuspIntv"
3606#define CFG_QOS_WMM_INFRA_UAPSD_VO_SUS_INTV_MIN (0)
3607#define CFG_QOS_WMM_INFRA_UAPSD_VO_SUS_INTV_MAX (4294967295UL)
3608#define CFG_QOS_WMM_INFRA_UAPSD_VO_SUS_INTV_DEFAULT (2000)
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08003609
Sreelakshmi Konamki9be8d412017-03-01 10:29:08 +05303610/*
3611 * <ini>
3612 * InfraUapsdViSrvIntv - Set Uapsd service interval for video
3613 * @Min: 0
3614 * @Max: 4294967295UL
3615 * @Default: 300
3616 *
3617 * This ini is used to set Uapsd service interval for video.
3618 *
3619 * Related: None.
3620 *
3621 * Supported Feature: WMM
3622 *
3623 * Usage: Internal/External
3624 *
3625 * </ini>
3626 */
3627#define CFG_QOS_WMM_INFRA_UAPSD_VI_SRV_INTV_NAME "InfraUapsdViSrvIntv"
3628#define CFG_QOS_WMM_INFRA_UAPSD_VI_SRV_INTV_MIN (0)
3629#define CFG_QOS_WMM_INFRA_UAPSD_VI_SRV_INTV_MAX (4294967295UL)
3630#define CFG_QOS_WMM_INFRA_UAPSD_VI_SRV_INTV_DEFAULT (300)
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08003631
Sreelakshmi Konamki9be8d412017-03-01 10:29:08 +05303632/*
3633 * <ini>
3634 * InfraUapsdViSuspIntv - Set Uapsd suspension interval for video
3635 * @Min: 0
3636 * @Max: 4294967295UL
3637 * @Default: 2000
3638 *
3639 * This ini is used to set Uapsd suspension interval for video
3640 *
3641 * Related: None.
3642 *
3643 * Supported Feature: WMM
3644 *
3645 * Usage: Internal/External
3646 *
3647 * </ini>
3648 */
3649#define CFG_QOS_WMM_INFRA_UAPSD_VI_SUS_INTV_NAME "InfraUapsdViSuspIntv"
3650#define CFG_QOS_WMM_INFRA_UAPSD_VI_SUS_INTV_MIN (0)
3651#define CFG_QOS_WMM_INFRA_UAPSD_VI_SUS_INTV_MAX (4294967295UL)
3652#define CFG_QOS_WMM_INFRA_UAPSD_VI_SUS_INTV_DEFAULT (2000)
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08003653
Sreelakshmi Konamki9be8d412017-03-01 10:29:08 +05303654/*
3655 * <ini>
3656 * InfraUapsdBeSrvIntv - Set Uapsd service interval for BE
3657 * @Min: 0
3658 * @Max: 4294967295UL
3659 * @Default: 300
3660 *
3661 * This ini is used to set Uapsd service interval for BE
3662 *
3663 * Related: None.
3664 *
3665 * Supported Feature: WMM
3666 *
3667 * Usage: Internal/External
3668 *
3669 * </ini>
3670 */
3671#define CFG_QOS_WMM_INFRA_UAPSD_BE_SRV_INTV_NAME "InfraUapsdBeSrvIntv"
3672#define CFG_QOS_WMM_INFRA_UAPSD_BE_SRV_INTV_MIN (0)
3673#define CFG_QOS_WMM_INFRA_UAPSD_BE_SRV_INTV_MAX (4294967295UL)
3674#define CFG_QOS_WMM_INFRA_UAPSD_BE_SRV_INTV_DEFAULT (300)
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08003675
Sreelakshmi Konamki9be8d412017-03-01 10:29:08 +05303676/*
3677 * <ini>
3678 * InfraUapsdBeSuspIntv - Set Uapsd suspension interval for BE
3679 * @Min: 0
3680 * @Max: 4294967295UL
3681 * @Default: 2000
3682 *
3683 * This ini is used to set Uapsd suspension interval for BE
3684 *
3685 * Related: None.
3686 *
3687 * Supported Feature: WMM
3688 *
3689 * Usage: Internal/External
3690 *
3691 * </ini>
3692 */
3693#define CFG_QOS_WMM_INFRA_UAPSD_BE_SUS_INTV_NAME "InfraUapsdBeSuspIntv"
3694#define CFG_QOS_WMM_INFRA_UAPSD_BE_SUS_INTV_MIN (0)
3695#define CFG_QOS_WMM_INFRA_UAPSD_BE_SUS_INTV_MAX (4294967295UL)
3696#define CFG_QOS_WMM_INFRA_UAPSD_BE_SUS_INTV_DEFAULT (2000)
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08003697
Sreelakshmi Konamki9be8d412017-03-01 10:29:08 +05303698/*
3699 * <ini>
3700 * InfraUapsdBkSrvIntv - Set Uapsd service interval for BK
3701 * @Min: 0
3702 * @Max: 4294967295UL
3703 * @Default: 300
3704 *
3705 * This ini is used to set Uapsd service interval for BK
3706 *
3707 * Related: None.
3708 *
3709 * Supported Feature: WMM
3710 *
3711 * Usage: Internal/External
3712 *
3713 * </ini>
3714 */
3715#define CFG_QOS_WMM_INFRA_UAPSD_BK_SRV_INTV_NAME "InfraUapsdBkSrvIntv"
3716#define CFG_QOS_WMM_INFRA_UAPSD_BK_SRV_INTV_MIN (0)
3717#define CFG_QOS_WMM_INFRA_UAPSD_BK_SRV_INTV_MAX (4294967295UL)
3718#define CFG_QOS_WMM_INFRA_UAPSD_BK_SRV_INTV_DEFAULT (300)
3719
3720/*
3721 * <ini>
3722 * InfraUapsdBkSuspIntv - Set Uapsd suspension interval for BK
3723 * @Min: 0
3724 * @Max: 4294967295UL
3725 * @Default: 2000
3726 *
3727 * This ini is used to set Uapsd suspension interval for BK
3728 *
3729 * Related: None.
3730 *
3731 * Supported Feature: WMM
3732 *
3733 * Usage: Internal/External
3734 *
3735 * </ini>
3736 */
3737#define CFG_QOS_WMM_INFRA_UAPSD_BK_SUS_INTV_NAME "InfraUapsdBkSuspIntv"
3738#define CFG_QOS_WMM_INFRA_UAPSD_BK_SUS_INTV_MIN (0)
3739#define CFG_QOS_WMM_INFRA_UAPSD_BK_SUS_INTV_MAX (4294967295UL)
3740#define CFG_QOS_WMM_INFRA_UAPSD_BK_SUS_INTV_DEFAULT (2000)
3741
3742/* default TSPEC parameters for AC_VO */
3743/*
3744 * <ini>
3745 * InfraDirAcVo - Set TSPEC direction for VO
3746 * @Min: 0
3747 * @Max: 3
3748 * @Default: 3
3749 *
3750 * This ini is used to set TSPEC direction for VO
3751 *
3752 * Related: None.
3753 *
3754 * Supported Feature: WMM
3755 *
3756 * Usage: Internal/External
3757 *
3758 * </ini>
3759 */
3760#define CFG_QOS_WMM_INFRA_DIR_AC_VO_NAME "InfraDirAcVo"
3761#define CFG_QOS_WMM_INFRA_DIR_AC_VO_MIN (0)
3762#define CFG_QOS_WMM_INFRA_DIR_AC_VO_MAX (3)
3763#define CFG_QOS_WMM_INFRA_DIR_AC_VO_DEFAULT (3) /*WLAN_QCT_CUST_WMM_TSDIR_BOTH*/
3764
3765/*
3766 * <ini>
3767 * InfraNomMsduSizeAcVo - Set normal MSDU size for VO
3768 * @Min: 0x0
3769 * @Max: 0xFFFF
3770 * @Default: 0x80D0
3771 *
3772 * This ini is used to set normal MSDU size for VO
3773 *
3774 * Related: None.
3775 *
3776 * Supported Feature: WMM
3777 *
3778 * Usage: Internal/External
3779 *
3780 * </ini>
3781 */
3782#define CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_VO_NAME "InfraNomMsduSizeAcVo"
3783#define CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_VO_MIN (0x0)
3784#define CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_VO_MAX (0xFFFF)
3785#define CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_VO_DEFAULT (0x80D0)
3786
3787/*
3788 * <ini>
3789 * InfraMeanDataRateAcVo - Set mean data rate for VO
3790 * @Min: 0x0
3791 * @Max: 0xFFFFFFFF
3792 * @Default: 0x14500
3793 *
3794 * This ini is used to set mean data rate for VO
3795 *
3796 * Related: None.
3797 *
3798 * Supported Feature: WMM
3799 *
3800 * Usage: Internal/External
3801 *
3802 * </ini>
3803 */
3804#define CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_VO_NAME "InfraMeanDataRateAcVo"
3805#define CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_VO_MIN (0x0)
3806#define CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_VO_MAX (0xFFFFFFFF)
3807#define CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_VO_DEFAULT (0x14500)
3808
3809/*
3810 * <ini>
3811 * InfraMinPhyRateAcVo - Set min PHY rate for VO
3812 * @Min: 0x0
3813 * @Max: 0xFFFFFFFF
3814 * @Default: 0x5B8D80
3815 *
3816 * This ini is used to set min PHY rate for VO
3817 *
3818 * Related: None.
3819 *
3820 * Supported Feature: WMM
3821 *
3822 * Usage: Internal/External
3823 *
3824 * </ini>
3825 */
3826#define CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_VO_NAME "InfraMinPhyRateAcVo"
3827#define CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_VO_MIN (0x0)
3828#define CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_VO_MAX (0xFFFFFFFF)
3829#define CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_VO_DEFAULT (0x5B8D80)
3830/*
3831 * <ini>
3832 * InfraSbaAcVo - Set surplus bandwidth allowance for VO
3833 * @Min: 0x2001
3834 * @Max: 0xFFFF
3835 * @Default: 0x2001
3836 *
3837 * This ini is used to set surplus bandwidth allowance for VO
3838 *
3839 * Related: None.
3840 *
3841 * Supported Feature: WMM
3842 *
3843 * Usage: Internal/External
3844 *
3845 * </ini>
3846 */
3847 #define CFG_QOS_WMM_INFRA_SBA_AC_VO_NAME "InfraSbaAcVo"
3848 #define CFG_QOS_WMM_INFRA_SBA_AC_VO_MIN (0x2001)
3849 #define CFG_QOS_WMM_INFRA_SBA_AC_VO_MAX (0xFFFF)
3850 #define CFG_QOS_WMM_INFRA_SBA_AC_VO_DEFAULT (0x2001)
3851
3852 /* default TSPEC parameters for AC_VI */
3853/*
3854 * <ini>
3855 * InfraDirAcVi - Set TSPEC direction for VI
3856 * @Min: 0
3857 * @Max: 3
3858 * @Default: 3
3859 *
3860 * This ini is used to set TSPEC direction for VI
3861 *
3862 * Related: None.
3863 *
3864 * Supported Feature: WMM
3865 *
3866 * Usage: Internal/External
3867 *
3868 * </ini>
3869 */
3870#define CFG_QOS_WMM_INFRA_DIR_AC_VI_NAME "InfraDirAcVi"
3871#define CFG_QOS_WMM_INFRA_DIR_AC_VI_MIN (0)
3872#define CFG_QOS_WMM_INFRA_DIR_AC_VI_MAX (3)
3873#define CFG_QOS_WMM_INFRA_DIR_AC_VI_DEFAULT (3) /*WLAN_QCT_CUST_WMM_TSDIR_BOTH*/
3874
3875/*
3876 * <ini>
3877 * InfraNomMsduSizeAcVi - Set normal MSDU size for VI
3878 * @Min: 0x0
3879 * @Max: 0xFFFF
3880 * @Default: 0x85DC
3881 *
3882 * This ini is used to set normal MSDU size for VI
3883 *
3884 * Related: None.
3885 *
3886 * Supported Feature: WMM
3887 *
3888 * Usage: Internal/External
3889 *
3890 * </ini>
3891 */
3892#define CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_VI_NAME "InfraNomMsduSizeAcVi"
3893#define CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_VI_MIN (0x0)
3894#define CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_VI_MAX (0xFFFF)
3895#define CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_VI_DEFAULT (0x85DC)
3896
3897/*
3898 * <ini>
3899 * InfraMeanDataRateAcVi - Set mean data rate for VI
3900 * @Min: 0x0
3901 * @Max: 0xFFFFFFFF
3902 * @Default: 0x57E40
3903 *
3904 * This ini is used to set mean data rate for VI
3905 *
3906 * Related: None.
3907 *
3908 * Supported Feature: WMM
3909 *
3910 * Usage: Internal/External
3911 *
3912 * </ini>
3913 */
3914#define CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_VI_NAME "InfraMeanDataRateAcVi"
3915#define CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_VI_MIN (0x0)
3916#define CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_VI_MAX (0xFFFFFFFF)
3917#define CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_VI_DEFAULT (0x57E40)
3918
3919/*
3920 * <ini>
3921 * iInfraMinPhyRateAcVi - Set min PHY rate for VI
3922 * @Min: 0x0
3923 * @Max: 0xFFFFFFFF
3924 * @Default: 0x5B8D80
3925 *
3926 * This ini is used to set min PHY rate for VI
3927 *
3928 * Related: None.
3929 *
3930 * Supported Feature: WMM
3931 *
3932 * Usage: Internal/External
3933 *
3934 * </ini>
3935 */
3936#define CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_VI_NAME "InfraMinPhyRateAcVi"
3937#define CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_VI_MIN (0x0)
3938#define CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_VI_MAX (0xFFFFFFFF)
3939#define CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_VI_DEFAULT (0x5B8D80)
3940
3941/*
3942 * <ini>
3943 * InfraSbaAcVi - Set surplus bandwidth allowance for VI
3944 * @Min: 0x2001
3945 * @Max: 0xFFFF
3946 * @Default: 0x2001
3947 *
3948 * This ini is used to set surplus bandwidth allowance for VI
3949 *
3950 * Related: None.
3951 *
3952 * Supported Feature: WMM
3953 *
3954 * Usage: Internal/External
3955 *
3956 * </ini>
3957 */
3958 #define CFG_QOS_WMM_INFRA_SBA_AC_VI_NAME "InfraSbaAcVi"
3959 #define CFG_QOS_WMM_INFRA_SBA_AC_VI_MIN (0x2001)
3960 #define CFG_QOS_WMM_INFRA_SBA_AC_VI_MAX (0xFFFF)
3961 #define CFG_QOS_WMM_INFRA_SBA_AC_VI_DEFAULT (0x2001)
3962
3963 /* default TSPEC parameters for AC_BE*/
3964/*
3965 * <ini>
3966 * InfraDirAcBe - Set TSPEC direction for BE
3967 * @Min: 0
3968 * @Max: 3
3969 * @Default: 3
3970 *
3971 * This ini is used to set TSPEC direction for BE
3972 *
3973 * Related: None.
3974 *
3975 * Supported Feature: WMM
3976 *
3977 * Usage: Internal/External
3978 *
3979 * </ini>
3980 */
3981#define CFG_QOS_WMM_INFRA_DIR_AC_BE_NAME "InfraDirAcBe"
3982#define CFG_QOS_WMM_INFRA_DIR_AC_BE_MIN (0)
3983#define CFG_QOS_WMM_INFRA_DIR_AC_BE_MAX (3)
3984#define CFG_QOS_WMM_INFRA_DIR_AC_BE_DEFAULT (3) /*WLAN_QCT_CUST_WMM_TSDIR_BOTH*/
3985
3986/*
3987 * <ini>
3988 * InfraNomMsduSizeAcBe - Set normal MSDU size for BE
3989 * @Min: 0x0
3990 * @Max: 0xFFFF
3991 * @Default: 0x85DC
3992 *
3993 * This ini is used to set normal MSDU size for BE
3994 *
3995 * Related: None.
3996 *
3997 * Supported Feature: WMM
3998 *
3999 * Usage: Internal/External
4000 *
4001 * </ini>
4002 */
4003#define CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_BE_NAME "InfraNomMsduSizeAcBe"
4004#define CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_BE_MIN (0x0)
4005#define CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_BE_MAX (0xFFFF)
4006#define CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_BE_DEFAULT (0x85DC)
4007
4008/*
4009 * <ini>
4010 * InfraMeanDataRateAcBe - Set mean data rate for BE
4011 * @Min: 0x0
4012 * @Max: 0xFFFFFFFF
4013 * @Default: 0x493E0
4014 *
4015 * This ini is used to set mean data rate for BE
4016 *
4017 * Related: None.
4018 *
4019 * Supported Feature: WMM
4020 *
4021 * Usage: Internal/External
4022 *
4023 * </ini>
4024 */
4025#define CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_BE_NAME "InfraMeanDataRateAcBe"
4026#define CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_BE_MIN (0x0)
4027#define CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_BE_MAX (0xFFFFFFFF)
4028#define CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_BE_DEFAULT (0x493E0)
4029
4030/*
4031 * <ini>
4032 * InfraMinPhyRateAcBe - Set min PHY rate for BE
4033 * @Min: 0x0
4034 * @Max: 0xFFFFFFFF
4035 * @Default: 0x5B8D80
4036 *
4037 * This ini is used to set min PHY rate for BE
4038 *
4039 * Related: None.
4040 *
4041 * Supported Feature: WMM
4042 *
4043 * Usage: Internal/External
4044 *
4045 * </ini>
4046 */
4047#define CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_BE_NAME "InfraMinPhyRateAcBe"
4048#define CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_BE_MIN (0x0)
4049#define CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_BE_MAX (0xFFFFFFFF)
4050#define CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_BE_DEFAULT (0x5B8D80)
4051
4052/*
4053 * <ini>
4054 * InfraSbaAcBe - Set surplus bandwidth allowance for BE
4055 * @Min: 0x2001
4056 * @Max: 0xFFFF
4057 * @Default: 0x2001
4058 *
4059 * This ini is used to set surplus bandwidth allowance for BE
4060 *
4061 * Related: None.
4062 *
4063 * Supported Feature: WMM
4064 *
4065 * Usage: Internal/External
4066 *
4067 * </ini>
4068 */
4069 #define CFG_QOS_WMM_INFRA_SBA_AC_BE_NAME "InfraSbaAcBe"
4070 #define CFG_QOS_WMM_INFRA_SBA_AC_BE_MIN (0x2001)
4071 #define CFG_QOS_WMM_INFRA_SBA_AC_BE_MAX (0xFFFF)
4072 #define CFG_QOS_WMM_INFRA_SBA_AC_BE_DEFAULT (0x2001)
4073
4074 /* default TSPEC parameters for AC_Bk*/
4075/*
4076 * <ini>
4077 * InfraDirAcBk - Set TSPEC direction for BK
4078 * @Min: 0
4079 * @Max: 3
4080 * @Default: 3
4081 *
4082 * This ini is used to set TSPEC direction for BK
4083 *
4084 * Related: None.
4085 *
4086 * Supported Feature: WMM
4087 *
4088 * Usage: Internal/External
4089 *
4090 * </ini>
4091 */
4092#define CFG_QOS_WMM_INFRA_DIR_AC_BK_NAME "InfraDirAcBk"
4093#define CFG_QOS_WMM_INFRA_DIR_AC_BK_MIN (0)
4094#define CFG_QOS_WMM_INFRA_DIR_AC_BK_MAX (3)
4095#define CFG_QOS_WMM_INFRA_DIR_AC_BK_DEFAULT (3) /*WLAN_QCT_CUST_WMM_TSDIR_BOTH*/
4096
4097/*
4098 * <ini>
4099 * InfraNomMsduSizeAcBk - Set normal MSDU size for BK
4100 * @Min: 0x0
4101 * @Max: 0xFFFF
4102 * @Default: 0x85DC
4103 *
4104 * This ini is used to set normal MSDU size for BK
4105 *
4106 * Related: None.
4107 *
4108 * Supported Feature: WMM
4109 *
4110 * Usage: Internal/External
4111 *
4112 * </ini>
4113 */
4114#define CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_BK_NAME "InfraNomMsduSizeAcBk"
4115#define CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_BK_MIN (0x0)
4116#define CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_BK_MAX (0xFFFF)
4117#define CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_BK_DEFAULT (0x85DC)
4118
4119/*
4120 * <ini>
4121 * InfraMeanDataRateAcBk - Set mean data rate for BK
4122 * @Min: 0x0
4123 * @Max: 0xFFFFFFFF
4124 * @Default: 0x493E0
4125 *
4126 * This ini is used to set mean data rate for BK
4127 *
4128 * Related: None.
4129 *
4130 * Supported Feature: WMM
4131 *
4132 * Usage: Internal/External
4133 *
4134 * </ini>
4135 */
4136#define CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_BK_NAME "InfraMeanDataRateAcBk"
4137#define CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_BK_MIN (0x0)
4138#define CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_BK_MAX (0xFFFFFFFF)
4139#define CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_BK_DEFAULT (0x493E0)
4140
4141/*
4142 * <ini>
4143 * InfraMinPhyRateAcBke - Set min PHY rate for BK
4144 * @Min: 0x0
4145 * @Max: 0xFFFFFFFF
4146 * @Default: 0x5B8D80
4147 *
4148 * This ini is used to set min PHY rate for BK
4149 *
4150 * Related: None.
4151 *
4152 * Supported Feature: WMM
4153 *
4154 * Usage: Internal/External
4155 *
4156 * </ini>
4157 */
4158#define CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_BK_NAME "InfraMinPhyRateAcBk"
4159#define CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_BK_MIN (0x0)
4160#define CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_BK_MAX (0xFFFFFFFF)
4161#define CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_BK_DEFAULT (0x5B8D80)
4162
4163/*
4164 * <ini>
4165 * InfraSbaAcBk - Set surplus bandwidth allowance for BK
4166 * @Min: 0x2001
4167 * @Max: 0xFFFF
4168 * @Default: 0x2001
4169 *
4170 * This ini is used to set surplus bandwidth allowance for BK
4171 *
4172 * Related: None.
4173 *
4174 * Supported Feature: WMM
4175 *
4176 * Usage: Internal/External
4177 *
4178 * </ini>
4179 */
4180 #define CFG_QOS_WMM_INFRA_SBA_AC_BK_NAME "InfraSbaAcBk"
4181 #define CFG_QOS_WMM_INFRA_SBA_AC_BK_MIN (0x2001)
4182 #define CFG_QOS_WMM_INFRA_SBA_AC_BK_MAX (0xFFFF)
4183 #define CFG_QOS_WMM_INFRA_SBA_AC_BK_DEFAULT (0x2001)
4184
4185/*
4186 * <ini>
4187 * burstSizeDefinition - Set TS burst size
4188 * @Min: 0
4189 * @Max: 1
4190 * @Default: 0
4191 *
4192 * This ini is used to set TS burst size
4193 *
4194 * Related: None.
4195 *
4196 * Supported Feature: WMM
4197 *
4198 * Usage: Internal/External
4199 *
4200 * </ini>
4201 */
4202#define CFG_QOS_WMM_BURST_SIZE_DEFN_NAME "burstSizeDefinition"
4203#define CFG_QOS_WMM_BURST_SIZE_DEFN_MIN (0)
4204#define CFG_QOS_WMM_BURST_SIZE_DEFN_MAX (1)
4205#define CFG_QOS_WMM_BURST_SIZE_DEFN_DEFAULT (0)
4206
4207/*
4208 * <ini>
4209 * tsInfoAckPolicy - Set TS ack policy
4210 * @Min: 0x00
4211 * @Max: 0x01
4212 * @Default: 0x00
4213 *
4214 * This ini is used to set TS ack policy
4215 *
4216 * Related: None.
4217 *
4218 * Supported Feature: WMM
4219 *
4220 * Usage: Internal/External
4221 *
4222 * </ini>
4223 */
4224#define CFG_QOS_WMM_TS_INFO_ACK_POLICY_NAME "tsInfoAckPolicy"
4225#define CFG_QOS_WMM_TS_INFO_ACK_POLICY_MIN (0x00)
4226#define CFG_QOS_WMM_TS_INFO_ACK_POLICY_MAX (0x01)
4227#define CFG_QOS_WMM_TS_INFO_ACK_POLICY_DEFAULT (0x00)
4228
4229/*
4230 * <ini>
4231 * SingleTIDRC - Set replay counter for all TID's
4232 * @Min: 0
4233 * @Max: 1
4234 * @Default: 1
4235 *
4236 * This ini is used to set replay counter for all TID's
4237 *
4238 * Related: None.
4239 *
4240 * Supported Feature: WMM
4241 *
4242 * Usage: Internal/External
4243 *
4244 * </ini>
4245 */
4246#define CFG_SINGLE_TID_RC_NAME "SingleTIDRC"
4247#define CFG_SINGLE_TID_RC_MIN (0) /* Separate replay counter for all TID */
4248#define CFG_SINGLE_TID_RC_MAX (1) /* Single replay counter for all TID */
4249#define CFG_SINGLE_TID_RC_DEFAULT (1)
4250
4251/*
4252 * <ini>
4253 * gAddTSWhenACMIsOff - Set ACM value for AC
4254 * @Min: 0
4255 * @Max: 1
4256 * @Default: 0
4257 *
4258 * This ini is used to set ACM value for AC
4259 *
4260 * Related: None.
4261 *
4262 * Supported Feature: WMM
4263 *
4264 * Usage: Internal/External
4265 *
4266 * </ini>
4267 */
4268#define CFG_QOS_ADDTS_WHEN_ACM_IS_OFF_NAME "gAddTSWhenACMIsOff"
4269#define CFG_QOS_ADDTS_WHEN_ACM_IS_OFF_MIN (0)
4270/* Send AddTs even when ACM is not set for the AC */
4271#define CFG_QOS_ADDTS_WHEN_ACM_IS_OFF_MAX (1)
4272#define CFG_QOS_ADDTS_WHEN_ACM_IS_OFF_DEFAULT (0)
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08004273
4274#ifdef FEATURE_WLAN_ESE
Sreelakshmi Konamki9be8d412017-03-01 10:29:08 +05304275#define CFG_QOS_WMM_INFRA_INACTIVITY_INTERVAL_NAME "InfraInactivityInterval"
4276#define CFG_QOS_WMM_INFRA_INACTIVITY_INTERVAL_MIN (0)
4277#define CFG_QOS_WMM_INFRA_INACTIVITY_INTERVAL_MAX (4294967295UL)
4278#define CFG_QOS_WMM_INFRA_INACTIVITY_INTERVAL_DEFAULT (0) /* disabled */
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08004279
4280#define CFG_ESE_FEATURE_ENABLED_NAME "EseEnabled"
4281#define CFG_ESE_FEATURE_ENABLED_MIN (0)
4282#define CFG_ESE_FEATURE_ENABLED_MAX (1)
4283#define CFG_ESE_FEATURE_ENABLED_DEFAULT (0) /* disabled */
4284#endif /* FEATURE_WLAN_ESE */
4285
Varun Reddy Yeturu061d4d62017-07-20 09:39:32 -07004286/*
4287 * <ini>
4288 * MAWCEnabled - Enable/Disable Motion Aided Wireless Connectivity Global
4289 * @Min: 0 - Disabled
4290 * @Max: 1 - Enabled
Rajeev Kumar85ffc262018-05-31 17:53:30 -07004291 * @Default: 0
Varun Reddy Yeturu061d4d62017-07-20 09:39:32 -07004292 *
4293 * This ini is used to controls the MAWC feature globally.
4294 * MAWC is Motion Aided Wireless Connectivity.
4295 *
4296 * Related: mawc_roam_enabled.
4297 *
4298 * Supported Feature: Roaming and PNO/NLO
4299 *
4300 * Usage: Internal/External
4301 *
4302 * </ini>
4303 */
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08004304#define CFG_LFR_MAWC_FEATURE_ENABLED_NAME "MAWCEnabled"
4305#define CFG_LFR_MAWC_FEATURE_ENABLED_MIN (0)
4306#define CFG_LFR_MAWC_FEATURE_ENABLED_MAX (1)
Rajeev Kumar85ffc262018-05-31 17:53:30 -07004307#define CFG_LFR_MAWC_FEATURE_ENABLED_DEFAULT (0)
Varun Reddy Yeturu061d4d62017-07-20 09:39:32 -07004308
4309/*
4310 * <ini>
4311 * mawc_roam_enabled - Enable/Disable MAWC during roaming
4312 * @Min: 0 - Disabled
4313 * @Max: 1 - Enabled
Rajeev Kumar85ffc262018-05-31 17:53:30 -07004314 * @Default: 0
Varun Reddy Yeturu061d4d62017-07-20 09:39:32 -07004315 *
4316 * This ini is used to control MAWC during roaming.
4317 *
4318 * Related: MAWCEnabled.
4319 *
4320 * Supported Feature: MAWC Roaming
4321 *
4322 * Usage: Internal/External
4323 *
4324 * </ini>
4325 */
4326#define CFG_MAWC_ROAM_ENABLED_NAME "mawc_roam_enabled"
4327#define CFG_MAWC_ROAM_ENABLED_MIN (0)
4328#define CFG_MAWC_ROAM_ENABLED_MAX (1)
Rajeev Kumar85ffc262018-05-31 17:53:30 -07004329#define CFG_MAWC_ROAM_ENABLED_DEFAULT (0)
Varun Reddy Yeturu061d4d62017-07-20 09:39:32 -07004330
4331/*
4332 * <ini>
4333 * mawc_roam_traffic_threshold - Configure traffic threshold
4334 * @Min: 0
4335 * @Max: 0xFFFFFFFF
4336 * @Default: 300
4337 *
4338 * This ini is used to configure the data traffic load in kBps to
4339 * register CMC.
4340 *
4341 * Related: mawc_roam_enabled.
4342 *
4343 * Supported Feature: MAWC Roaming
4344 *
4345 * Usage: Internal/External
4346 *
4347 * </ini>
4348 */
4349#define CFG_MAWC_ROAM_TRAFFIC_THRESHOLD_NAME "mawc_roam_traffic_threshold"
4350#define CFG_MAWC_ROAM_TRAFFIC_THRESHOLD_MIN (0)
4351#define CFG_MAWC_ROAM_TRAFFIC_THRESHOLD_MAX (0xFFFFFFFF)
4352#define CFG_MAWC_ROAM_TRAFFIC_THRESHOLD_DEFAULT (300)
4353
4354/*
4355 * <ini>
4356 * mawc_roam_ap_rssi_threshold - Best AP RSSI threshold
4357 * @Min: -120
4358 * @Max: 0
4359 * @Default: -66
4360 *
4361 * This ini is used to specify the RSSI threshold to scan for the AP.
4362 *
4363 * Related: mawc_roam_enabled.
4364 *
4365 * Supported Feature: MAWC Roaming
4366 *
4367 * Usage: Internal/External
4368 *
4369 * </ini>
4370 */
4371#define CFG_MAWC_ROAM_AP_RSSI_THRESHOLD_NAME "mawc_roam_ap_rssi_threshold"
4372#define CFG_MAWC_ROAM_AP_RSSI_THRESHOLD_MIN (-120)
4373#define CFG_MAWC_ROAM_AP_RSSI_THRESHOLD_MAX (0)
4374#define CFG_MAWC_ROAM_AP_RSSI_THRESHOLD_DEFAULT (-66)
4375
4376/*
4377 * <ini>
4378 * mawc_roam_rssi_high_adjust - Adjust MAWC roam high RSSI
4379 * @Min: 3
4380 * @Max: 5
4381 * @Default: 5
4382 *
4383 * This ini is used for high RSSI threshold adjustment in stationary state
4384 * to suppress the scan.
4385 *
4386 * Related: mawc_roam_enabled.
4387 *
4388 * Supported Feature: MAWC Roaming
4389 *
4390 * Usage: Internal/External
4391 *
4392 * </ini>
4393 */
4394#define CFG_MAWC_ROAM_RSSI_HIGH_ADJUST_NAME "mawc_roam_rssi_high_adjust"
4395#define CFG_MAWC_ROAM_RSSI_HIGH_ADJUST_MIN (3)
4396#define CFG_MAWC_ROAM_RSSI_HIGH_ADJUST_MAX (5)
4397#define CFG_MAWC_ROAM_RSSI_HIGH_ADJUST_DEFAULT (5)
4398
4399/*
4400 * <ini>
4401 * mawc_roam_rssi_high_adjust - Adjust MAWC roam low RSSI
4402 * @Min: 3
4403 * @Max: 5
4404 * @Default: 5
4405 *
4406 * This ini is used for low RSSI threshold adjustment in stationary state
4407 * to suppress the scan.
4408 *
4409 * Related: mawc_roam_enabled.
4410 *
4411 * Supported Feature: MAWC Roaming
4412 *
4413 * Usage: Internal/External
4414 *
4415 * </ini>
4416 */
4417#define CFG_MAWC_ROAM_RSSI_LOW_ADJUST_NAME "mawc_roam_rssi_low_adjust"
4418#define CFG_MAWC_ROAM_RSSI_LOW_ADJUST_MIN (3)
4419#define CFG_MAWC_ROAM_RSSI_LOW_ADJUST_MAX (5)
4420#define CFG_MAWC_ROAM_RSSI_LOW_ADJUST_DEFAULT (5)
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08004421
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08004422/*This parameter is used to set Wireless Extended Security Mode.*/
4423#define CFG_ENABLE_WES_MODE_NAME "gWESModeEnabled"
4424#define CFG_ENABLE_WES_MODE_NAME_MIN (0)
4425#define CFG_ENABLE_WES_MODE_NAME_MAX (1)
4426#define CFG_ENABLE_WES_MODE_NAME_DEFAULT (0)
4427
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08004428#define CFG_TL_DELAYED_TRGR_FRM_INT_NAME "DelayedTriggerFrmInt"
4429#define CFG_TL_DELAYED_TRGR_FRM_INT_MIN 1
4430#define CFG_TL_DELAYED_TRGR_FRM_INT_MAX (4294967295UL)
4431#define CFG_TL_DELAYED_TRGR_FRM_INT_DEFAULT 3000
4432
Sreelakshmi Konamkided64d72017-02-23 10:39:26 +05304433/*
4434 * <ini>
4435 * gRrmEnable - Enable/Disable RRM
4436 * @Min: 0
4437 * @Max: 1
4438 * @Default: 0
4439 *
4440 * This ini is used to controls the capabilities (11 k) included
4441 * in the capabilities field.
4442 *
4443 * Related: None.
4444 *
4445 * Supported Feature: 11k
4446 *
4447 * Usage: Internal/External
4448 *
4449 * </ini>
4450 */
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08004451#define CFG_RRM_ENABLE_NAME "gRrmEnable"
4452#define CFG_RRM_ENABLE_MIN (0)
4453#define CFG_RRM_ENABLE_MAX (1)
4454#define CFG_RRM_ENABLE_DEFAULT (0)
4455
Sreelakshmi Konamkided64d72017-02-23 10:39:26 +05304456/*
4457 * <ini>
4458 * gRrmRandnIntvl - Randomization interval
4459 * @Min: 10
4460 * @Max: 100
4461 * @Default: 100
4462 *
4463 * This ini is used to set randomization interval which is used to start a timer
4464 * of a random value within randomization interval. Next RRM Scan request
4465 * will be issued after the expiry of this random interval.
4466 *
4467 * Related: None.
4468 *
4469 * Supported Feature: 11k
4470 *
4471 * Usage: Internal/External
4472 *
4473 * </ini>
4474 */
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08004475#define CFG_RRM_MEAS_RANDOMIZATION_INTVL_NAME "gRrmRandnIntvl"
4476#define CFG_RRM_MEAS_RANDOMIZATION_INTVL_MIN (10)
4477#define CFG_RRM_MEAS_RANDOMIZATION_INTVL_MAX (100)
4478#define CFG_RRM_MEAS_RANDOMIZATION_INTVL_DEFAULT (100)
Krishna Kumaar Natarajanf599c6e2015-11-03 11:44:03 -08004479
Sreelakshmi Konamkided64d72017-02-23 10:39:26 +05304480/*
4481 * <ini>
4482 * rm_capability - Configure RM enabled capabilities IE
4483 * @Default: 73,10,91,00,04
4484 *
4485 * This ini is used to configure RM enabled capabilities IE.
Krishna Kumaar Natarajanf599c6e2015-11-03 11:44:03 -08004486 * Using this INI, we can set/unset any of the bits in 5 bytes
4487 * (last 4bytes are reserved). Bit details are updated as per
4488 * Draft version of 11mc spec. (Draft P802.11REVmc_D4.2)
4489 *
Jeff Johnsond404d032016-09-08 14:51:43 -07004490 * Bitwise details are defined as bit mask in rrm_global.h
Krishna Kumaar Natarajanf599c6e2015-11-03 11:44:03 -08004491 * Comma is used as a separator for each byte.
Sreelakshmi Konamkided64d72017-02-23 10:39:26 +05304492 *
4493 * Related: None.
4494 *
4495 * Supported Feature: 11k
4496 *
4497 * Usage: Internal/External
4498 *
4499 * </ini>
Krishna Kumaar Natarajanf599c6e2015-11-03 11:44:03 -08004500 */
4501#define CFG_RM_CAPABILITY_NAME "rm_capability"
Jeff Johnsond404d032016-09-08 14:51:43 -07004502#define CFG_RM_CAPABILITY_DEFAULT "73,10,91,00,04"
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08004503
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08004504#define CFG_TELE_BCN_MAX_LI_NAME "telescopicBeaconMaxListenInterval"
4505#define CFG_TELE_BCN_MAX_LI_MIN (0)
4506#define CFG_TELE_BCN_MAX_LI_MAX (7)
4507#define CFG_TELE_BCN_MAX_LI_DEFAULT (5)
4508
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08004509#define CFG_NEIGHBOR_LOOKUP_RSSI_THRESHOLD_NAME "gNeighborLookupThreshold"
4510#define CFG_NEIGHBOR_LOOKUP_RSSI_THRESHOLD_MIN (10)
4511#define CFG_NEIGHBOR_LOOKUP_RSSI_THRESHOLD_MAX (120)
4512#define CFG_NEIGHBOR_LOOKUP_RSSI_THRESHOLD_DEFAULT (78)
4513
Varun Reddy Yeturu168134f2017-06-26 13:46:05 -07004514/*
4515 * <ini>
4516 * lookup_threshold_5g_offset - Lookup Threshold offset for 5G band
4517 * @Min: -120
4518 * @Max: +120
4519 * @Default: 0
4520 *
4521 * This ini is used to set the 5G band lookup threshold for roaming.
4522 * It depends on another INI which is gNeighborLookupThreshold.
4523 * gNeighborLookupThreshold is a legacy INI item which will be used to
4524 * set the RSSI lookup threshold for both 2G and 5G bands. If the
4525 * user wants to setup a different threshold for a 5G band, then user
4526 * can use this offset value which will be summed up to the value of
4527 * gNeighborLookupThreshold and used for 5G
4528 * e.g: gNeighborLookupThreshold = -76dBm
4529 * lookup_threshold_5g_offset = 6dBm
4530 * Then the 5G band will be configured to -76+6 = -70dBm
4531 * A default value of Zero to lookup_threshold_5g_offset will keep the
4532 * thresholds same for both 2G and 5G bands
4533 *
4534 * Related: gNeighborLookupThreshold
4535 *
4536 * Supported Feature: Roaming
4537 *
4538 * Usage: Internal/External
4539 *
4540 * </ini>
4541 */
4542#define CFG_5G_RSSI_THRESHOLD_OFFSET_NAME "lookup_threshold_5g_offset"
4543#define CFG_5G_RSSI_THRESHOLD_OFFSET_MIN (-120)
4544#define CFG_5G_RSSI_THRESHOLD_OFFSET_MAX (120)
4545#define CFG_5G_RSSI_THRESHOLD_OFFSET_DEFAULT (0)
4546
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08004547#define CFG_DELAY_BEFORE_VDEV_STOP_NAME "gDelayBeforeVdevStop"
4548#define CFG_DELAY_BEFORE_VDEV_STOP_MIN (2)
4549#define CFG_DELAY_BEFORE_VDEV_STOP_MAX (200)
4550#define CFG_DELAY_BEFORE_VDEV_STOP_DEFAULT (20)
4551
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08004552#define CFG_11R_NEIGHBOR_REQ_MAX_TRIES_NAME "gMaxNeighborReqTries"
4553#define CFG_11R_NEIGHBOR_REQ_MAX_TRIES_MIN (1)
4554#define CFG_11R_NEIGHBOR_REQ_MAX_TRIES_MAX (4)
4555#define CFG_11R_NEIGHBOR_REQ_MAX_TRIES_DEFAULT (3)
4556
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08004557#define CFG_ROAM_BMISS_FIRST_BCNT_NAME "gRoamBmissFirstBcnt"
4558#define CFG_ROAM_BMISS_FIRST_BCNT_MIN (5)
4559#define CFG_ROAM_BMISS_FIRST_BCNT_MAX (100)
4560#define CFG_ROAM_BMISS_FIRST_BCNT_DEFAULT (10)
4561
4562#define CFG_ROAM_BMISS_FINAL_BCNT_NAME "gRoamBmissFinalBcnt"
4563#define CFG_ROAM_BMISS_FINAL_BCNT_MIN (5)
4564#define CFG_ROAM_BMISS_FINAL_BCNT_MAX (100)
Mukul Sharma9e8395e2017-07-25 18:02:53 +05304565#define CFG_ROAM_BMISS_FINAL_BCNT_DEFAULT (20)
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08004566
4567#define CFG_ROAM_BEACON_RSSI_WEIGHT_NAME "gRoamBeaconRssiWeight"
4568#define CFG_ROAM_BEACON_RSSI_WEIGHT_MIN (0)
4569#define CFG_ROAM_BEACON_RSSI_WEIGHT_MAX (16)
4570#define CFG_ROAM_BEACON_RSSI_WEIGHT_DEFAULT (14)
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08004571
Sen, Devendra9ca8c432017-02-23 15:10:26 +05304572/*
4573 * <ini>
Sen, Devendra9ca8c432017-02-23 15:10:26 +05304574 * gTelescopicBeaconWakeupEn - Set teles copic beacon wakeup
4575 * @Min: 0
4576 * @Max: 1
4577 * @Default: 0
4578 *
4579 * This ini is used to set default teles copic beacon wakeup
4580 *
4581 * Related: None
4582 *
4583 * Supported Feature: STA
4584 *
4585 * Usage: Internal/External
4586 *
4587 * </ini>
4588 */
4589
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08004590#define CFG_TELE_BCN_WAKEUP_EN_NAME "gTelescopicBeaconWakeupEn"
4591#define CFG_TELE_BCN_WAKEUP_EN_MIN (0)
4592#define CFG_TELE_BCN_WAKEUP_EN_MAX (1)
4593#define CFG_TELE_BCN_WAKEUP_EN_DEFAULT (0)
4594
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08004595#define CFG_AP_DATA_AVAIL_POLL_PERIOD_NAME "gApDataAvailPollInterval"
4596#define CFG_AP_DATA_AVAIL_POLL_PERIOD_MIN (WNI_CFG_AP_DATA_AVAIL_POLL_PERIOD_STAMIN)
4597#define CFG_AP_DATA_AVAIL_POLL_PERIOD_MAX (WNI_CFG_AP_DATA_AVAIL_POLL_PERIOD_STAMAX)
4598#define CFG_AP_DATA_AVAIL_POLL_PERIOD_DEFAULT (WNI_CFG_AP_DATA_AVAIL_POLL_PERIOD_STADEF)
4599
4600#define CFG_ENABLE_HOST_ARPOFFLOAD_NAME "hostArpOffload"
4601#define CFG_ENABLE_HOST_ARPOFFLOAD_MIN (0)
4602#define CFG_ENABLE_HOST_ARPOFFLOAD_MAX (1)
Manjeet Singhc5734182016-09-02 16:03:29 +05304603#define CFG_ENABLE_HOST_ARPOFFLOAD_DEFAULT (1)
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08004604
4605#define CFG_ENABLE_HOST_SSDP_NAME "ssdp"
4606#define CFG_ENABLE_HOST_SSDP_MIN (0)
4607#define CFG_ENABLE_HOST_SSDP_MAX (1)
4608#define CFG_ENABLE_HOST_SSDP_DEFAULT (1)
4609
4610#define CFG_ENABLE_HOST_NSOFFLOAD_NAME "hostNSOffload"
4611#define CFG_ENABLE_HOST_NSOFFLOAD_MIN (0)
4612#define CFG_ENABLE_HOST_NSOFFLOAD_MAX (1)
Manjeet Singhc5734182016-09-02 16:03:29 +05304613#define CFG_ENABLE_HOST_NSOFFLOAD_DEFAULT (1)
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08004614
Sen, Devendra9ca8c432017-02-23 15:10:26 +05304615/*
4616 * <ini>
Dustin Brown1224e212017-05-12 14:02:12 -07004617 * gHwFilterMode - configure hardware filter for DTIM mode
Ravi Kumar Bokka794fd712017-03-21 20:52:46 +05304618 * @Min: 0
Dustin Brown1224e212017-05-12 14:02:12 -07004619 * @Max: 3
Dustin Brown2078edd2017-05-18 11:37:33 -07004620 * @Default: 1
Ravi Kumar Bokka794fd712017-03-21 20:52:46 +05304621 *
Dustin Brown1224e212017-05-12 14:02:12 -07004622 * The hardware filter is only effective in DTIM mode. Use this configuration
4623 * to blanket drop broadcast/multicast packets at the hardware level, without
4624 * waking up the firmware
Ravi Kumar Bokka794fd712017-03-21 20:52:46 +05304625 *
Dustin Brown1224e212017-05-12 14:02:12 -07004626 * Takes a bitmap of frame types to drop
4627 * @E.g.
Dustin Brown2078edd2017-05-18 11:37:33 -07004628 * # disable feature
Dustin Brown1224e212017-05-12 14:02:12 -07004629 * gHwFilterMode=0
Dustin Brown2078edd2017-05-18 11:37:33 -07004630 * # drop all broadcast frames, except ARP (default)
Dustin Brown1224e212017-05-12 14:02:12 -07004631 * gHwFilterMode=1
4632 * # drop all multicast frames, except ICMPv6
4633 * gHwFilterMode=2
4634 * # drop all broadcast and multicast frames, except ARP and ICMPv6
4635 * gHwFilterMode=3
4636 *
4637 * Related: N/A
4638 *
4639 * Usage: Internal/External
Ravi Kumar Bokka794fd712017-03-21 20:52:46 +05304640 *
4641 * </ini>
4642 */
Nachiket Kukadef0804072018-02-27 18:20:07 +05304643#define CFG_HW_FILTER_MODE_BITMAP_NAME "gHwFilterMode"
4644#define CFG_HW_FILTER_MODE_BITMAP_MIN (0)
4645#define CFG_HW_FILTER_MODE_BITMAP_MAX (3)
4646#define CFG_HW_FILTER_MODE_BITMAP_DEFAULT (1)
Ravi Kumar Bokka794fd712017-03-21 20:52:46 +05304647
4648/*
4649 * <ini>
Sen, Devendra9ca8c432017-02-23 15:10:26 +05304650 * BandCapability - Preferred band (0: Both, 1: 2.4G only, 2: 5G only)
4651 * @Min: 0
4652 * @Max: 2
4653 * @Default: 0
4654 *
4655 * This ini is used to set default band capability
4656 * (0: Both, 1: 2.4G only, 2: 5G only)
4657 *
4658 * Related: None
4659 *
4660 * Supported Feature: STA
4661 *
4662 * Usage: Internal/External
4663 *
4664 * </ini>
4665 */
4666
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08004667#define CFG_BAND_CAPABILITY_NAME "BandCapability"
4668#define CFG_BAND_CAPABILITY_MIN (0)
4669#define CFG_BAND_CAPABILITY_MAX (2)
4670#define CFG_BAND_CAPABILITY_DEFAULT (0)
4671
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08004672#define CFG_ENABLE_BYPASS_11D_NAME "gEnableBypass11d"
4673#define CFG_ENABLE_BYPASS_11D_MIN (0)
4674#define CFG_ENABLE_BYPASS_11D_MAX (1)
4675#define CFG_ENABLE_BYPASS_11D_DEFAULT (1)
4676
Sen, Devendra9ca8c432017-02-23 15:10:26 +05304677/*
Kapil Gupta825f1ba2017-01-03 12:24:01 +05304678 * gEnableDFSChnlScan - enable dfs channel scan.
4679 * @Min: 0
4680 * @Max: 1
4681 * @Default: 1
4682 *
4683 * This ini is used to enable/disable dfs channels in scan, enabling this
4684 * will enable driver to include dfs channels in its scan list.
4685 * Related: NA
4686 *
4687 * Supported Feature: DFS, Scan
4688 *
4689 * Usage: Internal/External
4690 *
4691 * </ini>
4692 */
4693#define CFG_ENABLE_DFS_CHNL_SCAN_NAME "gEnableDFSChnlScan"
4694#define CFG_ENABLE_DFS_CHNL_SCAN_MIN (0)
4695#define CFG_ENABLE_DFS_CHNL_SCAN_MAX (1)
4696#define CFG_ENABLE_DFS_CHNL_SCAN_DEFAULT (1)
4697
4698/*
4699 * <ini>
Sen, Devendra9ca8c432017-02-23 15:10:26 +05304700 * gEnableDumpCollect - It will use for collect the dumps
4701 * @Min: 0
4702 * @Max: 1
4703 * @Default: 1
4704 *
4705 * This ini is used to set collect default dump
4706 *
4707 * Related: None
4708 *
4709 * Supported Feature: STA
4710 *
4711 * Usage: Internal/External
4712 *
4713 * </ini>
4714 */
4715
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08004716#define CFG_ENABLE_RAMDUMP_COLLECTION "gEnableDumpCollect"
4717#define CFG_ENABLE_RAMDUMP_COLLECTION_MIN (0)
4718#define CFG_ENABLE_RAMDUMP_COLLECTION_MAX (1)
4719#define CFG_ENABLE_RAMDUMP_COLLECTION_DEFAULT (1)
4720
Srinivas Girigowda2fb677c2017-03-25 15:35:34 -07004721enum hdd_link_speed_rpt_type {
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08004722 eHDD_LINK_SPEED_REPORT_ACTUAL = 0,
4723 eHDD_LINK_SPEED_REPORT_MAX = 1,
4724 eHDD_LINK_SPEED_REPORT_MAX_SCALED = 2,
Srinivas Girigowda2fb677c2017-03-25 15:35:34 -07004725};
Agrawal Ashishe2219bb2017-01-10 20:18:33 +05304726
4727/*
4728 * <ini>
4729 * gVhtChannelWidth - Channel width capability for 11ac
4730 * @Min: 0
4731 * @Max: 4
4732 * @Default: 3
4733 *
4734 * This ini is used to set channel width capability for 11AC.
4735 * eHT_CHANNEL_WIDTH_20MHZ = 0,
4736 * eHT_CHANNEL_WIDTH_40MHZ = 1,
4737 * eHT_CHANNEL_WIDTH_80MHZ = 2,
4738 * eHT_CHANNEL_WIDTH_160MHZ = 3,
4739 * eHT_CHANNEL_WIDTH_80P80MHZ = 4,
4740 *
4741 * Related: NA
4742 *
4743 * Supported Feature: 11AC
4744 *
4745 * Usage: External
4746 *
4747 * </ini>
4748 */
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08004749#define CFG_VHT_CHANNEL_WIDTH "gVhtChannelWidth"
4750#define CFG_VHT_CHANNEL_WIDTH_MIN (0)
4751#define CFG_VHT_CHANNEL_WIDTH_MAX (4)
Kiran Kumar Lokere4bbbd0d2017-02-07 00:06:43 -08004752#define CFG_VHT_CHANNEL_WIDTH_DEFAULT (2)
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08004753
Agrawal Ashishe2219bb2017-01-10 20:18:33 +05304754/*
Jeff Johnsondcf84ce2017-10-05 09:26:24 -07004755 * <ini>
4756 * gVhtRxMCS - VHT Rx MCS capability for 1x1 mode
4757 * @Min: 0
4758 * @Max: 2
4759 * @Default: 0
4760 *
4761 * This ini is used to set VHT Rx MCS capability for 1x1 mode.
4762 * 0, MCS0-7
4763 * 1, MCS0-8
4764 * 2, MCS0-9
4765 *
4766 * Related: NA
4767 *
4768 * Supported Feature: 11AC
4769 *
4770 * Usage: Internal/External
4771 *
4772 * </ini>
4773 */
Agrawal Ashishe2219bb2017-01-10 20:18:33 +05304774
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08004775#define CFG_VHT_ENABLE_RX_MCS_8_9 "gVhtRxMCS"
4776#define CFG_VHT_ENABLE_RX_MCS_8_9_MIN (0)
4777#define CFG_VHT_ENABLE_RX_MCS_8_9_MAX (2)
4778#define CFG_VHT_ENABLE_RX_MCS_8_9_DEFAULT (0)
4779
Agrawal Ashishe2219bb2017-01-10 20:18:33 +05304780/*
4781 * <ini>
4782 * gVhtTxMCS - VHT Tx MCS capability for 1x1 mode
4783 * @Min: 0
4784 * @Max: 2
4785 * @Default: 0
4786 *
4787 * This ini is used to set VHT Tx MCS capability for 1x1 mode.
4788 * 0, MCS0-7
4789 * 1, MCS0-8
4790 * 2, MCS0-9
4791 *
4792 * Related: NA
4793 *
4794 * Supported Feature: 11AC
4795 *
4796 * Usage: Internal/External
4797 *
4798 * </ini>
4799 */
4800
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08004801#define CFG_VHT_ENABLE_TX_MCS_8_9 "gVhtTxMCS"
4802#define CFG_VHT_ENABLE_TX_MCS_8_9_MIN (0)
4803#define CFG_VHT_ENABLE_TX_MCS_8_9_MAX (2)
4804#define CFG_VHT_ENABLE_TX_MCS_8_9_DEFAULT (0)
4805
Agrawal Ashishe2219bb2017-01-10 20:18:33 +05304806/*
4807 * <ini>
4808 * gVhtRxMCS2x2 - VHT Rx MCS capability for 2x2 mode
4809 * @Min: 0
4810 * @Max: 2
4811 * @Default: 0
4812 *
4813 * This ini is used to set VHT Rx MCS capability for 2x2 mode.
4814 * 0, MCS0-7
4815 * 1, MCS0-8
4816 * 2, MCS0-9
4817 *
4818 * Related: NA
4819 *
4820 * Supported Feature: 11AC
4821 *
4822 * Usage: External
4823 *
4824 * </ini>
4825 */
4826
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08004827#define CFG_VHT_ENABLE_RX_MCS2x2_8_9 "gVhtRxMCS2x2"
4828#define CFG_VHT_ENABLE_RX_MCS2x2_8_9_MIN (0)
4829#define CFG_VHT_ENABLE_RX_MCS2x2_8_9_MAX (2)
4830#define CFG_VHT_ENABLE_RX_MCS2x2_8_9_DEFAULT (0)
4831
Agrawal Ashishe2219bb2017-01-10 20:18:33 +05304832/*
4833 * <ini>
4834 * gVhtTxMCS2x2 - VHT Tx MCS capability for 2x2 mode
4835 * @Min: 0
4836 * @Max: 2
4837 * @Default: 0
4838 *
4839 * This ini is used to set VHT Tx MCS capability for 2x2 mode.
4840 * 0, MCS0-7
4841 * 1, MCS0-8
4842 * 2, MCS0-9
4843 *
4844 * Related: NA
4845 *
4846 * Supported Feature: 11AC
4847 *
4848 * Usage: External
4849 *
4850 * </ini>
4851 */
4852
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08004853#define CFG_VHT_ENABLE_TX_MCS2x2_8_9 "gVhtTxMCS2x2"
4854#define CFG_VHT_ENABLE_TX_MCS2x2_8_9_MIN (0)
4855#define CFG_VHT_ENABLE_TX_MCS2x2_8_9_MAX (2)
4856#define CFG_VHT_ENABLE_TX_MCS2x2_8_9_DEFAULT (0)
4857
Agrawal Ashishe2219bb2017-01-10 20:18:33 +05304858/*
4859 * <ini>
Kiran Kumar Lokere0e255172018-03-30 18:54:25 -07004860 * enable_vht20_mcs9 - Enables VHT MCS9 in 20M BW operation
4861 * @Min: 0
4862 * @Max: 1
4863 * @Default: 1
4864 *
4865 * Related: NA
4866 *
4867 * Supported Feature: 11AC
4868 *
4869 * Usage: External
4870 *
4871 * </ini>
4872 */
4873
4874#define CFG_ENABLE_VHT20_MCS9 "enable_vht20_mcs9"
4875#define CFG_ENABLE_VHT20_MCS9_MIN (0)
4876#define CFG_ENABLE_VHT20_MCS9_MAX (1)
4877#define CFG_ENABLE_VHT20_MCS9_DEFAULT (1)
4878
4879/*
4880 * <ini>
Agrawal Ashishe2219bb2017-01-10 20:18:33 +05304881 * gEnable2x2 - Enables/disables VHT Tx/Rx MCS values for 2x2
4882 * @Min: 0
4883 * @Max: 1
4884 * @Default: 0
4885 *
4886 * This ini disables/enables 2x2 mode. If this is zero then DUT operates as 1x1
4887 *
4888 * 0, Disable
4889 * 1, Enable
4890 *
4891 * Related: NA
4892 *
4893 * Supported Feature: 11AC
4894 *
4895 * Usage: External
4896 *
4897 * </ini>
4898 */
4899
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08004900#define CFG_VHT_ENABLE_2x2_CAP_FEATURE "gEnable2x2"
4901#define CFG_VHT_ENABLE_2x2_CAP_FEATURE_MIN (0)
4902#define CFG_VHT_ENABLE_2x2_CAP_FEATURE_MAX (1)
4903#define CFG_VHT_ENABLE_2x2_CAP_FEATURE_DEFAULT (0)
4904
Agrawal Ashishe2219bb2017-01-10 20:18:33 +05304905/*
4906 * <ini>
Liangwei Dong22810e82018-03-15 03:42:12 -04004907 * enable_bt_chain_separation - Enables/disables bt /wlan chainmask assignment
4908 * @Min: 0
4909 * @Max: 1
4910 * @Default: 0
4911 *
4912 * This ini disables/enables chainmask setting on 2x2, mainly used for ROME
4913 * BT/WLAN chainmask assignment.
4914 *
4915 * 0, Disable
4916 * 1, Enable
4917 *
4918 * Related: NA
4919 *
4920 * Supported Feature: 11n/11ac
4921 *
4922 * Usage: External
4923 *
4924 * </ini>
4925 */
4926
4927#define CFG_ENABLE_BT_CHAIN_SEPARATION "enableBTChainSeparation"
4928#define CFG_ENABLE_BT_CHAIN_SEPARATION_MIN (0)
4929#define CFG_ENABLE_BT_CHAIN_SEPARATION_MAX (1)
4930#define CFG_ENABLE_BT_CHAIN_SEPARATION_DEFAULT (0)
4931
4932/*
4933 * <ini>
Krunal Soni158bfe62017-08-02 12:33:08 -07004934 * disable_high_ht_mcs_2x2 - disable high mcs index for 2nd stream in 2.4G
4935 * @Min: 0
4936 * @Max: 8
4937 * @Default: 0
4938 *
4939 * This ini is used to disable high HT MCS index for 2.4G STA connection.
4940 * It has been introduced to resolve IOT issue with one of the vendor.
4941 *
4942 * Note: This INI is not useful with 1x1 setting. If some platform supports
4943 * only 1x1 then this INI is not useful.
4944 *
4945 * 0 - It won't disable any HT MCS index (just like normal HT MCS)
4946 * 1 - It will disable 15th bit from HT RX MCS set (from 8-15 bits slot)
4947 * 2 - It will disable 14th & 15th bits from HT RX MCS set
4948 * 3 - It will disable 13th, 14th, & 15th bits from HT RX MCS set
4949 * and so on.
4950 *
4951 * Related: STA
4952 *
4953 * Supported Feature: 11n
4954 *
4955 * Usage: External
4956 */
4957#define CFG_DISABLE_HIGH_HT_RX_MCS_2x2 "disable_high_ht_mcs_2x2"
4958#define CFG_DISABLE_HIGH_HT_RX_MCS_2x2_MIN (0)
4959#define CFG_DISABLE_HIGH_HT_RX_MCS_2x2_MAX (8)
4960#define CFG_DISABLE_HIGH_HT_RX_MCS_2x2_DEFAULT (0)
4961
4962/*
4963 * <ini>
Agrawal Ashishe2219bb2017-01-10 20:18:33 +05304964 * gStaPrefer80MHzOver160MHz - set Sta perferance to connect in 80HZ/160HZ
4965 * @Min: 0
4966 * @Max: 1
4967 * @Default: 1
4968 *
4969 * This ini is used to set Sta perferance to connect in 80HZ/160HZ
4970 *
4971 * 0 - Connects in 160MHz 1x1 when AP is 160MHz 2x2
Kiran Kumar Lokere1aa9c9a2016-10-05 18:50:59 -07004972 * 1 - Connects in 80MHz 2x2 when AP is 160MHz 2x2
Agrawal Ashishe2219bb2017-01-10 20:18:33 +05304973 *
4974 * Related: NA
4975 *
4976 * Supported Feature: 11AC
4977 *
4978 * Usage: External
4979 *
4980 * </ini>
Kiran Kumar Lokere1aa9c9a2016-10-05 18:50:59 -07004981 */
Agrawal Ashishe2219bb2017-01-10 20:18:33 +05304982
Kiran Kumar Lokere1aa9c9a2016-10-05 18:50:59 -07004983#define CFG_STA_PREFER_80MHZ_OVER_160MHZ "gStaPrefer80MHzOver160MHz"
4984#define CFG_STA_PREFER_80MHZ_OVER_160MHZ_MIN (0)
4985#define CFG_STA_PREFER_80MHZ_OVER_160MHZ_MAX (1)
4986#define CFG_STA_PREFER_80MHZ_OVER_160MHZ_DEFAULT (1)
4987
Kiran Kumar Lokere666bf852016-05-02 12:23:02 -07004988/*
Agrawal Ashishe2219bb2017-01-10 20:18:33 +05304989 * <ini>
4990 * gVdevTypeNss_2g - set Number of streams per VDEV for 2G band.
4991 * @Min: 0x5555
4992 * @Max: 0xAAAA
4993 * @Default: 0xAAAA
4994 *
4995 * This ini is used to set set Number of streams per VDEV for 2G band
4996 *
4997 * These Nss parameters will have 32-bit configuration value, 2 bits are
4998 * allocated for each vdev.
4999 * Valid values are:
5000 * Min value – 0x5555
5001 * Max value – 0xAAAA
5002 * Default value will be 0xAAAA for both the parameters.
5003 * Value 0x5555 will configure all vdevs in 1x1 mode in 2.4G band.
5004 * Value 0xAAAA will configure all vdevs in 2x2 mode in 2.4G band.
5005 *
5006 * The max value is defined based on the valid max Nss of the vdev, the valid
5007 * values for each vdev 2-bits are 0x1 and 0x2. 0x3 and 0x0 are not valid vdev
5008 * Nss values.
5009 *
Kiran Kumar Lokere666bf852016-05-02 12:23:02 -07005010 * NSS cfg bit definition.
5011 * STA BIT[0:1]
5012 * SAP BIT[2:3]
5013 * P2P_GO BIT[4:5]
5014 * P2P_CLIENT BIT[6:7]
5015 * IBSS BIT[8:9]
5016 * TDLS BIT[10:11]
5017 * P2P_DEVICE BIT[12:13]
5018 * OCB BIT[14:15]
Agrawal Ashishe2219bb2017-01-10 20:18:33 +05305019 *
5020 * Related: NA
5021 *
5022 * Supported Feature: Antenna Sharing
5023 *
5024 * Usage: External
5025 *
5026 * </ini>
Kiran Kumar Lokere666bf852016-05-02 12:23:02 -07005027 */
Agrawal Ashishe2219bb2017-01-10 20:18:33 +05305028
Kiran Kumar Lokere666bf852016-05-02 12:23:02 -07005029#define CFG_VDEV_TYPE_NSS_2G "gVdevTypeNss_2g"
5030#define CFG_VDEV_TYPE_NSS_2G_MIN (0x5555)
5031#define CFG_VDEV_TYPE_NSS_2G_MAX (0xAAAA)
5032#define CFG_VDEV_TYPE_NSS_2G_DEFAULT (0xAAAA)
5033
Agrawal Ashishe2219bb2017-01-10 20:18:33 +05305034/*
5035 * <ini>
5036 * gVdevTypeNss_5g - set Number of streams per VDEV for 5G band.
5037 * @Min: 0x5555
5038 * @Max: 0xAAAA
5039 * @Default: 0xAAAA
5040 *
5041 * This ini is used to set set Number of streams per VDEV for 2G band
5042 *
5043 * These Nss parameters will have 32-bit configuration value, 2 bits are
5044 * allocated for each vdev.
5045 * Valid values are:
5046 * Min value – 0x5555
5047 * Max value – 0xAAAA
5048 * Default value will be 0xAAAA for both the parameters.
5049 * Value 0x5555 will configure all vdevs in 1x1 mode in 5 band.
5050 * Value 0xAAAA will configure all vdevs in 2x2 mode in 5 band.
5051 *
5052 * The max value is defined based on the valid max Nss of the vdev, the valid
5053 * values for each vdev 2-bits are 0x1 and 0x2. 0x3 and 0x0 are not valid vdev
5054 * Nss values.
5055 *
5056 * NSS cfg bit definition.
5057 * STA BIT[0:1]
5058 * SAP BIT[2:3]
5059 * P2P_GO BIT[4:5]
5060 * P2P_CLIENT BIT[6:7]
5061 * IBSS BIT[8:9]
5062 * TDLS BIT[10:11]
5063 * P2P_DEVICE BIT[12:13]
5064 * OCB BIT[14:15]
5065 *
5066 * Related: NA
5067 *
5068 * Supported Feature: Antenna Sharing
5069 *
5070 * Usage: External
5071 *
5072 * </ini>
5073 */
5074
Kiran Kumar Lokere666bf852016-05-02 12:23:02 -07005075#define CFG_VDEV_TYPE_NSS_5G "gVdevTypeNss_5g"
5076#define CFG_VDEV_TYPE_NSS_5G_MIN (0x5555)
5077#define CFG_VDEV_TYPE_NSS_5G_MAX (0xAAAA)
5078#define CFG_VDEV_TYPE_NSS_5G_DEFAULT (0xAAAA)
5079
Agrawal Ashishe2219bb2017-01-10 20:18:33 +05305080/*
5081 * <ini>
5082 * gEnableMuBformee - Enables/disables multi-user (MU) beam formee capability
5083 * @Min: 0
5084 * @Max: 1
5085 * @Default: 0
5086 *
5087 * This ini enables/disables multi-user (MU) beam formee
5088 * capability
5089 *
5090 * Change MU Bformee only when gTxBFEnable is enabled.
5091 * When gTxBFEnable and gEnableMuBformee are set, MU beam formee capability is
5092 * enabled.
5093 * Related: gTxBFEnable
5094 *
5095 * Supported Feature: 11AC
5096 *
5097 * Usage: External
5098 *
5099 * </ini>
5100 */
5101
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005102#define CFG_VHT_ENABLE_MU_BFORMEE_CAP_FEATURE "gEnableMuBformee"
5103#define CFG_VHT_ENABLE_MU_BFORMEE_CAP_FEATURE_MIN (0)
5104#define CFG_VHT_ENABLE_MU_BFORMEE_CAP_FEATURE_MAX (1)
5105#define CFG_VHT_ENABLE_MU_BFORMEE_CAP_FEATURE_DEFAULT (0)
5106
5107#define CFG_VHT_ENABLE_PAID_FEATURE "gEnablePAID"
5108#define CFG_VHT_ENABLE_PAID_FEATURE_MIN (0)
5109#define CFG_VHT_ENABLE_PAID_FEATURE_MAX (1)
5110#define CFG_VHT_ENABLE_PAID_FEATURE_DEFAULT (0)
5111
5112#define CFG_VHT_ENABLE_GID_FEATURE "gEnableGID"
5113#define CFG_VHT_ENABLE_GID_FEATURE_MIN (0)
5114#define CFG_VHT_ENABLE_GID_FEATURE_MAX (1)
5115#define CFG_VHT_ENABLE_GID_FEATURE_DEFAULT (0)
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005116
Agrawal Ashishe2219bb2017-01-10 20:18:33 +05305117/*
5118 * <ini>
5119 * gSetTxChainmask1x1 - Sets Transmit chain mask.
5120 * @Min: 1
Naveen Rawat56d5e0b2018-02-13 12:05:25 -08005121 * @Max: 3
5122 * @Default: 0
Agrawal Ashishe2219bb2017-01-10 20:18:33 +05305123 *
5124 * This ini Sets Transmit chain mask.
5125 *
5126 * If gEnable2x2 is disabled, gSetTxChainmask1x1 and gSetRxChainmask1x1 values
5127 * are taken into account. If chainmask value exceeds the maximum number of
5128 * chains supported by target, the max number of chains is used. By default,
5129 * chain0 is selected for both Tx and Rx.
5130 * gSetTxChainmask1x1=1 or gSetRxChainmask1x1=1 to select chain0.
5131 * gSetTxChainmask1x1=2 or gSetRxChainmask1x1=2 to select chain1.
Naveen Rawat56d5e0b2018-02-13 12:05:25 -08005132 * gSetTxChainmask1x1=3 or gSetRxChainmask1x1=3 to select both chains.
Agrawal Ashishe2219bb2017-01-10 20:18:33 +05305133 *
5134 * Supported Feature: 11AC
5135 *
5136 * Usage: External
5137 *
5138 * </ini>
5139 */
5140
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005141#define CFG_VHT_ENABLE_1x1_TX_CHAINMASK "gSetTxChainmask1x1"
Naveen Rawat269b4ed2017-12-07 06:47:32 -08005142#define CFG_VHT_ENABLE_1x1_TX_CHAINMASK_MIN (0)
Naveen Rawat56d5e0b2018-02-13 12:05:25 -08005143#define CFG_VHT_ENABLE_1x1_TX_CHAINMASK_MAX (3)
Naveen Rawatd1ad5692018-02-05 15:58:34 -08005144#define CFG_VHT_ENABLE_1x1_TX_CHAINMASK_DEFAULT (0)
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005145
Agrawal Ashishe2219bb2017-01-10 20:18:33 +05305146/*
5147 * <ini>
5148 * gSetRxChainmask1x1 - Sets Receive chain mask.
5149 * @Min: 1
Naveen Rawat56d5e0b2018-02-13 12:05:25 -08005150 * @Max: 3
5151 * @Default: 0
Agrawal Ashishe2219bb2017-01-10 20:18:33 +05305152 *
5153 * This ini is used to set Receive chain mask.
5154 *
5155 * If gEnable2x2 is disabled, gSetTxChainmask1x1 and gSetRxChainmask1x1 values
5156 * are taken into account. If chainmask value exceeds the maximum number of
5157 * chains supported by target, the max number of chains is used. By default,
5158 * chain0 is selected for both Tx and Rx.
5159 * gSetTxChainmask1x1=1 or gSetRxChainmask1x1=1 to select chain0.
5160 * gSetTxChainmask1x1=2 or gSetRxChainmask1x1=2 to select chain1.
Naveen Rawat56d5e0b2018-02-13 12:05:25 -08005161 * gSetTxChainmask1x1=3 or gSetRxChainmask1x1=3 to select both chains.
Agrawal Ashishe2219bb2017-01-10 20:18:33 +05305162 *
5163 * Supported Feature: 11AC
5164 *
5165 * Usage: External
5166 *
5167 * </ini>
5168 */
5169
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005170#define CFG_VHT_ENABLE_1x1_RX_CHAINMASK "gSetRxChainmask1x1"
Naveen Rawat269b4ed2017-12-07 06:47:32 -08005171#define CFG_VHT_ENABLE_1x1_RX_CHAINMASK_MIN (0)
Naveen Rawat56d5e0b2018-02-13 12:05:25 -08005172#define CFG_VHT_ENABLE_1x1_RX_CHAINMASK_MAX (3)
Naveen Rawatd1ad5692018-02-05 15:58:34 -08005173#define CFG_VHT_ENABLE_1x1_RX_CHAINMASK_DEFAULT (0)
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005174
Sen, Devendra9ca8c432017-02-23 15:10:26 +05305175/*
5176 * <ini>
5177 * gEnableAMPDUPS - Enable the AMPDUPS
5178 * @Min: 0
5179 * @Max: 1
5180 * @Default: 0
5181 *
5182 * This ini is used to set default AMPDUPS
5183 *
5184 * Related: None
5185 *
5186 * Supported Feature: STA
5187 *
5188 * Usage: Internal/External
5189 *
5190 * </ini>
5191 */
5192
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005193#define CFG_ENABLE_AMPDUPS_FEATURE "gEnableAMPDUPS"
5194#define CFG_ENABLE_AMPDUPS_FEATURE_MIN (0)
5195#define CFG_ENABLE_AMPDUPS_FEATURE_MAX (1)
5196#define CFG_ENABLE_AMPDUPS_FEATURE_DEFAULT (0)
5197
5198#define CFG_HT_ENABLE_SMPS_CAP_FEATURE "gEnableHtSMPS"
5199#define CFG_HT_ENABLE_SMPS_CAP_FEATURE_MIN (0)
5200#define CFG_HT_ENABLE_SMPS_CAP_FEATURE_MAX (1)
5201#define CFG_HT_ENABLE_SMPS_CAP_FEATURE_DEFAULT (0)
5202
5203#define CFG_HT_SMPS_CAP_FEATURE "gHtSMPS"
5204#define CFG_HT_SMPS_CAP_FEATURE_MIN (0)
5205#define CFG_HT_SMPS_CAP_FEATURE_MAX (3)
5206#define CFG_HT_SMPS_CAP_FEATURE_DEFAULT (3)
5207
Kapil Gupta825f1ba2017-01-03 12:24:01 +05305208/*
5209 * <ini>
5210 * gDisableDFSChSwitch - Disable channel switch if radar is found
5211 * @Min: 0
5212 * @Max: 1
5213 * @Default: 0
5214 *
5215 * This ini is used to disable channel switch if radar is found
5216 * on that channel.
5217 * Related: NA.
5218 *
5219 * Supported Feature: DFS
5220 *
5221 * Usage: Internal
5222 *
5223 * </ini>
5224 */
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005225#define CFG_DISABLE_DFS_CH_SWITCH "gDisableDFSChSwitch"
5226#define CFG_DISABLE_DFS_CH_SWITCH_MIN (0)
5227#define CFG_DISABLE_DFS_CH_SWITCH_MAX (1)
5228#define CFG_DISABLE_DFS_CH_SWITCH_DEFAULT (0)
5229
Kapil Gupta825f1ba2017-01-03 12:24:01 +05305230/*
5231 * <ini>
5232 * gEnableDFSMasterCap - Enable DFS master capability
5233 * @Min: 0
5234 * @Max: 1
5235 * @Default: 0
5236 *
5237 * This ini is used to enable/disable the DFS master capability.
5238 * Disabling it will cause driver to not advertise the spectrum
5239 * management capability
5240 * Related: NA.
5241 *
5242 * Supported Feature: DFS
5243 *
5244 * Usage: Internal/External
5245 *
5246 * </ini>
5247 */
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005248#define CFG_ENABLE_DFS_MASTER_CAPABILITY "gEnableDFSMasterCap"
5249#define CFG_ENABLE_DFS_MASTER_CAPABILITY_MIN (0)
5250#define CFG_ENABLE_DFS_MASTER_CAPABILITY_MAX (1)
5251#define CFG_ENABLE_DFS_MASTER_CAPABILITY_DEFAULT (0)
5252
Kapil Gupta825f1ba2017-01-03 12:24:01 +05305253/*
5254 * <ini>
5255 * gSapPreferredChanLocation - Restrict channel switches between ondoor and
5256 * outdoor.
5257 * @Min: 0
5258 * @Max: 2
5259 * @Default: 0
5260 *
5261 * This ini is used for restricting channel switches between Indoor and outdoor
5262 * channels after radar detection.
5263 * 0- No preferred channel location
5264 * 1- Use indoor channels only
5265 * 2- Use outdoor channels only
5266 * Related: NA.
5267 *
5268 * Supported Feature: DFS
5269 *
5270 * Usage: Internal/External
5271 *
5272 * </ini>
5273 */
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005274#define CFG_SAP_PREFERRED_CHANNEL_LOCATION "gSapPreferredChanLocation"
5275#define CFG_SAP_PREFERRED_CHANNEL_LOCATION_MIN (0)
5276#define CFG_SAP_PREFERRED_CHANNEL_LOCATION_MAX (2)
5277#define CFG_SAP_PREFERRED_CHANNEL_LOCATION_DEFAULT (0)
5278
Kapil Gupta825f1ba2017-01-03 12:24:01 +05305279/*
5280 * <ini>
5281 * gDisableDfsJapanW53 - Block W53 channels in random channel selection
5282 * @Min: 0
5283 * @Max: 1
5284 * @Default: 0
5285 *
5286 * This ini is used to block W53 Japan channel in random channel selection
5287 * Related: NA.
5288 *
5289 * Supported Feature: DFS
5290 *
5291 * Usage: Internal/External
5292 *
5293 * </ini>
5294 */
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005295#define CFG_DISABLE_DFS_JAPAN_W53 "gDisableDfsJapanW53"
5296#define CFG_DISABLE_DFS_JAPAN_W53_MIN (0)
5297#define CFG_DISABLE_DFS_JAPAN_W53_MAX (1)
5298#define CFG_DISABLE_DFS_JAPAN_W53_DEFAULT (0)
5299
Kapil Gupta825f1ba2017-01-03 12:24:01 +05305300/*
5301 * <ini>
5302 * gDisableDfsJapanW53 - Enable dfs phyerror filtering offload in FW
5303 * @Min: 0
5304 * @Max: 1
5305 * @Default: 1
5306 *
5307 * This ini is used to to enable dfs phyerror filtering offload to firmware
5308 * Enabling it will cause basic phy error to be discarding in firmware.
5309 * Related: NA.
5310 *
5311 * Supported Feature: DFS
5312 *
5313 * Usage: Internal/External
5314 *
5315 * </ini>
5316 */
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005317#define CFG_ENABLE_DFS_PHYERR_FILTEROFFLOAD_NAME "dfsPhyerrFilterOffload"
5318#define CFG_ENABLE_DFS_PHYERR_FILTEROFFLOAD_MIN (0)
5319#define CFG_ENABLE_DFS_PHYERR_FILTEROFFLOAD_MAX (1)
5320#define CFG_ENABLE_DFS_PHYERR_FILTEROFFLOAD_DEFAULT (0)
5321
5322#define CFG_REPORT_MAX_LINK_SPEED "gReportMaxLinkSpeed"
5323#define CFG_REPORT_MAX_LINK_SPEED_MIN (eHDD_LINK_SPEED_REPORT_ACTUAL)
5324#define CFG_REPORT_MAX_LINK_SPEED_MAX (eHDD_LINK_SPEED_REPORT_MAX_SCALED)
5325#define CFG_REPORT_MAX_LINK_SPEED_DEFAULT (eHDD_LINK_SPEED_REPORT_MAX_SCALED)
5326
5327/*
Sen, Devendra9ca8c432017-02-23 15:10:26 +05305328 * <ini>
5329 * gLinkSpeedRssiHigh - Report the max possible speed with RSSI scaling
5330 * @Min: 0
5331 * @Max: 1
5332 * @Default: 0
5333 *
5334 * This ini is used to set default eHDD_LINK_SPEED_REPORT
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005335 * Used when eHDD_LINK_SPEED_REPORT_SCALED is selected
Sen, Devendra9ca8c432017-02-23 15:10:26 +05305336 *
5337 * Related: None
5338 *
5339 * Supported Feature: STA
5340 *
5341 * Usage: Internal/External
5342 *
5343 * </ini>
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005344 */
Sen, Devendra9ca8c432017-02-23 15:10:26 +05305345
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005346#define CFG_LINK_SPEED_RSSI_HIGH "gLinkSpeedRssiHigh"
5347#define CFG_LINK_SPEED_RSSI_HIGH_MIN (-127)
5348#define CFG_LINK_SPEED_RSSI_HIGH_MAX (0)
5349#define CFG_LINK_SPEED_RSSI_HIGH_DEFAULT (-55)
5350
Sen, Devendra9ca8c432017-02-23 15:10:26 +05305351/*
5352 * <ini>
5353 * gLinkSpeedRssiMed - Used when eHDD_LINK_SPEED_REPORT_SCALED is selected
5354 * @Min: -127
5355 * @Max: 0
5356 * @Default: -65
5357 *
5358 * This ini is used to set medium rssi link speed
5359 *
5360 * Related: None
5361 *
5362 * Supported Feature: STA
5363 *
5364 * Usage: Internal/External
5365 *
5366 * </ini>
5367 */
5368
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005369#define CFG_LINK_SPEED_RSSI_MID "gLinkSpeedRssiMed"
5370#define CFG_LINK_SPEED_RSSI_MID_MIN (-127)
5371#define CFG_LINK_SPEED_RSSI_MID_MAX (0)
5372#define CFG_LINK_SPEED_RSSI_MID_DEFAULT (-65)
5373
Sen, Devendra9ca8c432017-02-23 15:10:26 +05305374/*
5375 * <ini>
5376 * gLinkSpeedRssiLow - Used when eHDD_LINK_SPEED_REPORT_SCALED is selected
5377 * @Min: -127
5378 * @Max: 0
5379 * @Default: -80
5380 *
5381 * This ini is used to set low rssi link speed
5382 *
5383 * Related: None
5384 *
5385 * Supported Feature: STA
5386 *
5387 * Usage: Internal/External
5388 *
5389 * </ini>
5390 */
5391
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005392#define CFG_LINK_SPEED_RSSI_LOW "gLinkSpeedRssiLow"
5393#define CFG_LINK_SPEED_RSSI_LOW_MIN (-127)
5394#define CFG_LINK_SPEED_RSSI_LOW_MAX (0)
5395#define CFG_LINK_SPEED_RSSI_LOW_DEFAULT (-80)
5396
Agrawal Ashishe030f782017-01-27 17:52:05 +05305397/*
5398 * <ini>
Manjeet Singha5acc162017-01-06 17:38:16 +05305399 * gEnableSSR - Enable/Disable SSR
5400 * @Min: 0
5401 * @Max: 1
5402 * @Default: 1
5403 *
5404 * This ini is used to enable/disable System Self Recovery at the times of
5405 * System crash or fatal errors
5406 * gEnableSSR = 0 Disabled
5407 * gEnableSSR = 1 wlan shutdown and re-init happens
5408 *
5409 * Related: None
5410 *
5411 * Supported Feature: SSR
5412 *
5413 * Usage: External
5414 *
5415 * </ini>
5416 */
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005417#define CFG_ENABLE_SSR "gEnableSSR"
5418#define CFG_ENABLE_SSR_MIN (0)
5419#define CFG_ENABLE_SSR_MAX (1)
5420#define CFG_ENABLE_SSR_DEFAULT (1)
5421
Poddar, Siddarth37033032017-10-11 15:47:40 +05305422/**
5423 * <ini>
5424 * gEnableDataStallDetection - Enable/Disable Data stall detection
5425 * @Min: 0
5426 * @Max: 1
5427 * @Default: 1
5428 *
5429 * This ini is used to enable/disable data stall detection
5430 *
5431 * Usage: Internal/External
5432 *
5433 * </ini>
5434 */
5435#define CFG_ENABLE_DATA_STALL_DETECTION "gEnableDataStallDetection"
5436#define CFG_ENABLE_DATA_STALL_DETECTION_MIN (0)
5437#define CFG_ENABLE_DATA_STALL_DETECTION_MAX (1)
5438#define CFG_ENABLE_DATA_STALL_DETECTION_DEFAULT (1)
5439
Sen, Devendra9ca8c432017-02-23 15:10:26 +05305440/*
5441 * <ini>
5442 * gEnableOverLapCh - Enables Overlap Channel. If set, allow overlapping
5443 * channels to be selected for the SoftAP
5444 * @Min: 0
5445 * @Max: 1
5446 * @Default: 0
5447 *
5448 * This ini is used to set Overlap Channel
5449 *
5450 * Related: None
5451 *
5452 * Supported Feature: STA
5453 *
5454 * Usage: Internal/External
5455 *
5456 * </ini>
5457 */
5458
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005459#define CFG_ENABLE_OVERLAP_CH "gEnableOverLapCh"
5460#define CFG_ENABLE_OVERLAP_CH_MIN (0)
5461#define CFG_ENABLE_OVERLAP_CH_MAX (1)
5462#define CFG_ENABLE_OVERLAP_CH_DEFAULT (0)
5463
Sen, Devendra9ca8c432017-02-23 15:10:26 +05305464/*
5465 * <ini>
5466 * gEnable5gEBT - Enables/disables 5G early beacon termination. When enabled
5467 * terminate the reception of beacon if the TIM element is
5468 * clear for the power saving
5469 * @Min: 0
5470 * @Max: 1
5471 * @Default: 1
5472 *
5473 * This ini is used to set default 5G early beacon termination
5474 *
5475 * Related: None
5476 *
5477 * Supported Feature: STA
5478 *
5479 * Usage: Internal/External
5480 *
5481 * </ini>
5482 */
5483
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005484#define CFG_PPS_ENABLE_5G_EBT "gEnable5gEBT"
5485#define CFG_PPS_ENABLE_5G_EBT_FEATURE_MIN (0)
5486#define CFG_PPS_ENABLE_5G_EBT_FEATURE_MAX (1)
Jeff Johnson860e1242016-09-20 08:59:23 -07005487#define CFG_PPS_ENABLE_5G_EBT_FEATURE_DEFAULT (1)
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005488
5489#define CFG_ENABLE_MEMORY_DEEP_SLEEP "gEnableMemDeepSleep"
5490#define CFG_ENABLE_MEMORY_DEEP_SLEEP_MIN (0)
5491#define CFG_ENABLE_MEMORY_DEEP_SLEEP_MAX (1)
5492#define CFG_ENABLE_MEMORY_DEEP_SLEEP_DEFAULT (1)
5493
Sen, Devendra9ca8c432017-02-23 15:10:26 +05305494/*
5495 * <ini>
Dustin Brown732ab9c2017-06-15 13:24:09 -07005496 *
5497 * gEnableCckTxFirOverride - Enable/disable CCK TxFIR Override
5498 * @Min: 0 (disabled)
5499 * @Max: 1 (enabled)
5500 * @Default: 0 (disabled)
5501 *
5502 * When operating in an 802.11b mode, this configuration item forces a 2x2 radio
5503 * configuration into 1x for Tx and 2x for Rx (ie 1x2) for regulatory compliance
5504 * reasons.
5505 *
5506 * Related: enable2x2
5507 *
5508 * Supported Feature: 802.11b, 2x2
5509 *
5510 * Usage: Internal/External
5511 *
5512 * </ini>
5513 */
5514#define CFG_ENABLE_CCK_TX_FIR_OVERRIDE_NAME "gEnableCckTxFirOverride"
5515#define CFG_ENABLE_CCK_TX_FIR_OVERRIDE_MIN (0)
5516#define CFG_ENABLE_CCK_TX_FIR_OVERRIDE_MAX (1)
5517#define CFG_ENABLE_CCK_TX_FIR_OVERRIDE_DEFAULT (0)
5518
Nirav Shahbb8e47c2018-05-17 16:56:41 +05305519#ifndef REMOVE_PKT_LOG
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005520#define CFG_ENABLE_PACKET_LOG "gEnablePacketLog"
5521#define CFG_ENABLE_PACKET_LOG_MIN (0)
5522#define CFG_ENABLE_PACKET_LOG_MAX (1)
Poddar, Siddartheefe3482016-09-21 18:12:59 +05305523#ifdef FEATURE_PKTLOG
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005524#define CFG_ENABLE_PACKET_LOG_DEFAULT (1)
Poddar, Siddartheefe3482016-09-21 18:12:59 +05305525#else
5526#define CFG_ENABLE_PACKET_LOG_DEFAULT (0)
5527#endif
Nirav Shahbb8e47c2018-05-17 16:56:41 +05305528#endif
Poddar, Siddartheefe3482016-09-21 18:12:59 +05305529
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005530
5531/* gFwDebugLogType takes values from enum dbglog_process_t,
5532 * make default value as DBGLOG_PROCESS_NET_RAW to give the
5533 * logs to net link since cnss_diag service is started at boot
5534 * time by default.
5535 */
5536#define CFG_ENABLE_FW_LOG_TYPE "gFwDebugLogType"
5537#define CFG_ENABLE_FW_LOG_TYPE_MIN (0)
5538#define CFG_ENABLE_FW_LOG_TYPE_MAX (255)
5539#define CFG_ENABLE_FW_LOG_TYPE_DEFAULT (3)
5540
5541/* gFwDebugLogLevel takes values from enum DBGLOG_LOG_LVL,
5542 * make default value as DBGLOG_WARN to enable error and
5543 * warning logs by default.
5544 */
5545#define CFG_ENABLE_FW_DEBUG_LOG_LEVEL "gFwDebugLogLevel"
5546#define CFG_ENABLE_FW_DEBUG_LOG_LEVEL_MIN (0)
5547#define CFG_ENABLE_FW_DEBUG_LOG_LEVEL_MAX (255)
Nishank Aggarwale239d962017-03-03 12:26:02 +05305548#define CFG_ENABLE_FW_DEBUG_LOG_LEVEL_DEFAULT (3)
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005549
5550/* For valid values of log levels check enum DBGLOG_LOG_LVL and
5551 * for valid values of module ids check enum WLAN_MODULE_ID.
5552 */
5553#define CFG_ENABLE_FW_MODULE_LOG_LEVEL "gFwDebugModuleLoglevel"
Nishank Aggarwal1bd0ae82017-04-07 17:32:56 +05305554#define CFG_ENABLE_FW_MODULE_LOG_DEFAULT "2,1,3,1,5,1,9,1,13,1,14,1,18,1,19,1,26,1,28,1,29,1,31,1,36,1,38,1,46,1,47,1,50,1,52,1,53,1,56,1,60,1,61,1,4,1"
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005555
Rajeev Kumar Sirasanagandla0be56df2016-09-08 19:19:47 +05305556/*
Sen, Devendra9ca8c432017-02-23 15:10:26 +05305557 * <ini>
Sourav Mohapatra57006c72017-11-19 16:15:55 +05305558 * gEnableConcurrentSTA - This will control the creation of concurrent STA
5559 * interface
5560 * @Default: NULL
5561 *
5562 * This ini is used for providing control to create a concurrent STA session
5563 * along with the creation of wlan0 and p2p0. The name of the interface is
5564 * specified as the parameter
5565 *
5566 * Usage: Internal/External
5567 *
5568 * </ini>
5569 */
5570
5571#define CFG_ENABLE_CONCURRENT_STA "gEnableConcurrentSTA"
5572#define CFG_ENABLE_CONCURRENT_STA_DEFAULT ""
5573
5574/*
5575 * <ini>
Sen, Devendra9ca8c432017-02-23 15:10:26 +05305576 * gEnableRTSProfiles - It will use configuring different RTS profiles
5577 * @Min: 0
Sourav Mohapatra3a13bf52017-09-26 16:44:55 +05305578 * @Max: 66
Sen, Devendra9ca8c432017-02-23 15:10:26 +05305579 * @Default: 33
5580 *
5581 * This ini used for configuring different RTS profiles
Rajeev Kumar Sirasanagandla0be56df2016-09-08 19:19:47 +05305582 * to firmware.
Sourav Mohapatra3a13bf52017-09-26 16:44:55 +05305583 * Following are the valid values for the rts profile:
5584 * RTSCTS_DISABLED 0
5585 * NOT_ALLOWED 1
5586 * NOT_ALLOWED 2
5587 * RTSCTS_DISABLED 16
5588 * RTSCTS_ENABLED_4_SECOND_RATESERIES 17
5589 * CTS2SELF_ENABLED_4_SECOND_RATESERIES 18
5590 * RTSCTS_DISABLED 32
5591 * RTSCTS_ENABLED_4_SWRETRIES 33
5592 * CTS2SELF_ENABLED_4_SWRETRIES 34
5593 * NOT_ALLOWED 48
5594 * NOT_ALLOWED 49
5595 * NOT_ALLOWED 50
5596 * RTSCTS_DISABLED 64
5597 * RTSCTS_ENABLED_4_ALL_RATESERIES 65
5598 * CTS2SELF_ENABLED_4_ALL_RATESERIES 66
Sen, Devendra9ca8c432017-02-23 15:10:26 +05305599 *
5600 * Related: None
5601 *
5602 * Supported Feature: STA
5603 *
5604 * Usage: Internal/External
5605 *
5606 * </ini>
Rajeev Kumar Sirasanagandla0be56df2016-09-08 19:19:47 +05305607 */
Sen, Devendra9ca8c432017-02-23 15:10:26 +05305608
Rajeev Kumar Sirasanagandla0be56df2016-09-08 19:19:47 +05305609#define CFG_ENABLE_FW_RTS_PROFILE "gEnableRTSProfiles"
5610#define CFG_ENABLE_FW_RTS_PROFILE_MIN (0)
Sourav Mohapatra3a13bf52017-09-26 16:44:55 +05305611#define CFG_ENABLE_FW_RTS_PROFILE_MAX (66)
Rajeev Kumar Sirasanagandla0be56df2016-09-08 19:19:47 +05305612#define CFG_ENABLE_FW_RTS_PROFILE_DEFAULT (33)
5613
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005614
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005615/*
Anurag Chouhanf04e84f2016-03-03 10:12:12 +05305616 * QDF Trace Enable Control
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005617 * Notes:
5618 * the MIN/MAX/DEFAULT values apply for all modules
5619 * the DEFAULT value is outside the valid range. if the DEFAULT
5620 * value is not overridden, then no change will be made to the
5621 * "built in" default values compiled into the code
5622 * values are a bitmap indicating which log levels are to enabled
Anurag Chouhanf04e84f2016-03-03 10:12:12 +05305623 * (must match order of qdf_trace_level enumerations)
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005624 * 00000001 FATAL
5625 * 00000010 ERROR
5626 * 00000100 WARN
5627 * 00001000 INFO
5628 * 00010000 INFO HIGH
5629 * 00100000 INFO MED
5630 * 01000000 INFO LOW
5631 * 10000000 DEBUG
5632 *
5633 * hence a value of 0xFF would set all bits (enable all logs)
5634 */
5635
Anurag Chouhanf04e84f2016-03-03 10:12:12 +05305636#define CFG_QDF_TRACE_ENABLE_WDI_NAME "qdf_trace_enable_wdi"
5637#define CFG_QDF_TRACE_ENABLE_HDD_NAME "qdf_trace_enable_hdd"
5638#define CFG_QDF_TRACE_ENABLE_SME_NAME "qdf_trace_enable_sme"
5639#define CFG_QDF_TRACE_ENABLE_PE_NAME "qdf_trace_enable_pe"
5640#define CFG_QDF_TRACE_ENABLE_PMC_NAME "qdf_trace_enable_pmc"
5641#define CFG_QDF_TRACE_ENABLE_WMA_NAME "qdf_trace_enable_wma"
5642#define CFG_QDF_TRACE_ENABLE_SYS_NAME "qdf_trace_enable_sys"
5643#define CFG_QDF_TRACE_ENABLE_QDF_NAME "qdf_trace_enable_qdf"
5644#define CFG_QDF_TRACE_ENABLE_SAP_NAME "qdf_trace_enable_sap"
5645#define CFG_QDF_TRACE_ENABLE_HDD_SAP_NAME "qdf_trace_enable_hdd_sap"
5646#define CFG_QDF_TRACE_ENABLE_BMI_NAME "qdf_trace_enable_bmi"
5647#define CFG_QDF_TRACE_ENABLE_CFG_NAME "qdf_trace_enable_cfg"
5648#define CFG_QDF_TRACE_ENABLE_EPPING "qdf_trace_enable_epping"
5649#define CFG_QDF_TRACE_ENABLE_QDF_DEVICES "qdf_trace_enable_qdf_devices"
Houston Hoffmanfbf05102017-08-28 11:37:01 -07005650#define CFG_QDF_TRACE_ENABLE_TXRX_NAME "qdf_trace_enable_txrx"
5651#define CFG_QDF_TRACE_ENABLE_DP_NAME "qdf_trace_enable_dp"
Anurag Chouhanf04e84f2016-03-03 10:12:12 +05305652#define CFG_QDF_TRACE_ENABLE_HTC_NAME "qdf_trace_enable_htc"
5653#define CFG_QDF_TRACE_ENABLE_HIF_NAME "qdf_trace_enable_hif"
5654#define CFG_CDR_TRACE_ENABLE_HDD_SAP_DATA_NAME "qdf_trace_enable_hdd_sap_data"
5655#define CFG_QDF_TRACE_ENABLE_HDD_DATA_NAME "qdf_trace_enable_hdd_data"
Naveen Rawat7df31862017-03-01 17:09:30 -08005656#define CFG_QDF_TRACE_ENABLE_WIFI_POS "qdf_trace_enable_wifi_pos"
Naveen Rawatf2b0dbd2017-03-27 10:00:15 -07005657#define CFG_QDF_TRACE_ENABLE_NAN "qdf_trace_enable_nan"
Kiran Kumar Lokere798de7e2017-03-30 14:01:12 -07005658#define CFG_QDF_TRACE_ENABLE_REGULATORY "qdf_trace_enable_regulatory"
Naveen Rawat3cb779e2018-02-16 16:36:10 -08005659#define CFG_QDF_TRACE_ENABLE_CP_STATS "qdf_trace_enable_cp_stats"
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005660
Anurag Chouhanf04e84f2016-03-03 10:12:12 +05305661#define CFG_QDF_TRACE_ENABLE_MIN (0)
5662#define CFG_QDF_TRACE_ENABLE_MAX (0xff)
5663#define CFG_QDF_TRACE_ENABLE_DEFAULT (0xffff)
Houston Hoffmanfbf05102017-08-28 11:37:01 -07005664/* disable debug logs for DP by default */
5665#define CFG_QDF_TRACE_ENABLE_DP_DEFAULT (0x7f)
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005666
5667#define HDD_MCASTBCASTFILTER_FILTER_NONE 0x00
5668#define HDD_MCASTBCASTFILTER_FILTER_ALL_MULTICAST 0x01
5669#define HDD_MCASTBCASTFILTER_FILTER_ALL_BROADCAST 0x02
5670#define HDD_MCASTBCASTFILTER_FILTER_ALL_MULTICAST_BROADCAST 0x03
5671#define HDD_MULTICAST_FILTER_LIST 0x04
5672#define HDD_MULTICAST_FILTER_LIST_CLEAR 0x05
5673
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005674/*
5675 * Enable Dynamic DTIM
5676 * Options
5677 * 0 -Disable DynamicDTIM
5678 * 1 to 5 - SLM will switch to DTIM specified here when host suspends and
Jeff Johnsondcd2cf92017-01-12 10:44:23 -08005679 * switch DTIM1 when host resumes
5680 */
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005681#define CFG_ENABLE_DYNAMIC_DTIM_NAME "gEnableDynamicDTIM"
5682#define CFG_ENABLE_DYNAMIC_DTIM_MIN (0)
Rajeev Kumar Sirasanagandla4a716ad2016-10-18 18:16:33 +05305683#define CFG_ENABLE_DYNAMIC_DTIM_MAX (9)
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005684#define CFG_ENABLE_DYNAMIC_DTIM_DEFAULT (0)
5685
5686/*
Agrawal Ashishbafaff12016-12-27 17:43:08 +05305687 * <ini>
Nachiket Kukade8983cf62017-10-12 18:14:48 +05305688 * gConfigVCmodeBitmap - Bitmap for operating voltage corner mode
5689 * @Min: 0x00000000
5690 * @Max: 0x0fffffff
5691 * @Default: 0x0000000a
5692 * This ini is used to set operating voltage corner mode for differenet
5693 * phymode and bw configurations. Every 2 bits till BIT27 are dedicated
5694 * for a specific configuration. Bit values decide the type of voltage
5695 * corner mode. All the details below -
5696 *
5697 * Configure operating voltage corner mode based on phymode and bw.
5698 * bit 0-1 - operating voltage corner mode for 11a/b.
5699 * bit 2-3 - operating voltage corner mode for 11g.
5700 * bit 4-5 - operating voltage corner mode for 11n, 20MHz, 1x1.
5701 * bit 6-7 - operating voltage corner mode for 11n, 20MHz, 2x2.
5702 * bit 8-9 - operating voltage corner mode for 11n, 40MHz, 1x1.
5703 * bit 10-11 - operating voltage corner mode for 11n, 40MHz, 2x2.
5704 * bit 12-13 - operating voltage corner mode for 11ac, 20MHz, 1x1.
5705 * bit 14-15 - operating voltage corner mode for 11ac, 20MHz, 2x2.
5706 * bit 16-17 - operating voltage corner mode for 11ac, 40MHz, 1x1.
5707 * bit 18-19 - operating voltage corner mode for 11ac, 40MHz, 2x2.
5708 * bit 20-21 - operating voltage corner mode for 11ac, 80MHz, 1x1.
5709 * bit 22-23 - operating voltage corner mode for 11ac, 80MHz, 2x2.
5710 * bit 24-25 - operating voltage corner mode for 11ac, 160MHz, 1x1.
5711 * bit 26-27 - operating voltage corner mode for 11ac, 160MHz, 2x2.
5712 * ---------------------------------------------
5713 * 00 - Static voltage corner SVS
5714 * 01 - static voltage corner LOW SVS
5715 * 10 - Dynamic voltage corner selection based on TPUT
5716 * 11 - Dynamic voltage corner selection based on TPUT and Tx Flush counters
5717
5718 * Related: None
5719 *
5720 * Supported Feature: None
5721 *
5722 * Usage: External
5723 *
5724 * </ini>
5725 */
5726
5727#define CFG_VC_MODE_BITMAP "gConfigVCmode"
5728#define CFG_VC_MODE_BITMAP_MIN (0x00000000)
5729#define CFG_VC_MODE_BITMAP_MAX (0x0fffffff)
5730#define CFG_VC_MODE_BITMAP_DEFAULT (0x00000005)
5731
5732/*
5733 * <ini>
Ganesh Kondabattini408fb8d2017-08-08 22:00:20 +05305734 * gEnableSAPManadatoryChanList - Enable SAP Mandatory channel list
5735 * Options.
5736 * @Min: 0
5737 * @Max: 1
5738 * @Default: 0
5739 *
5740 * This ini is used to enable/disable the SAP manadatory chan list
5741 * 0 - Disable SAP mandatory chan list
5742 * 1 - Enable SAP mandatory chan list
5743 *
5744 * Supported Feature: SAP
5745 *
5746 *
5747 * Usage: Internal/External
5748 *
5749 * </ini>
5750 */
5751#define CFG_ENABLE_SAP_MANDATORY_CHAN_LIST "gEnableSAPManadatoryChanList"
5752#define CFG_ENABLE_SAP_MANDATORY_CHAN_LIST_MIN (0)
5753#define CFG_ENABLE_SAP_MANDATORY_CHAN_LIST_MAX (1)
5754#define CFG_ENABLE_SAP_MANDATORY_CHAN_LIST_DEFAULT (0)
5755
5756/*
Sen, Devendra9ca8c432017-02-23 15:10:26 +05305757 * <ini>
5758 * gShortGI40Mhz - It will check gShortGI20Mhz and
5759 * gShortGI40Mhz from session entry
5760 * @Min: 0
5761 * @Max: 1
5762 * @Default: 1
5763 *
5764 * This ini is used to set default gShortGI40Mhz
5765 *
5766 * Related: None
5767 *
5768 * Supported Feature: STA
5769 *
5770 * Usage: Internal/External
5771 *
5772 * </ini>
5773 */
5774
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005775#define CFG_SHORT_GI_40MHZ_NAME "gShortGI40Mhz"
5776#define CFG_SHORT_GI_40MHZ_MIN 0
5777#define CFG_SHORT_GI_40MHZ_MAX 1
5778#define CFG_SHORT_GI_40MHZ_DEFAULT 1
5779
5780/*
Nitesh Shah03161d12016-12-06 18:30:12 +05305781 * <ini>
5782 * gEnableMCCMode - Enable/Disable MCC feature.
5783 * @Min: 0
5784 * @Max: 1
5785 * @Default: 1
5786 *
5787 * This ini is used to enable/disable MCC feature.
5788 *
5789 * Related: None.
5790 *
5791 * Supported Feature: Concurrency
5792 *
5793 * Usage: Internal/External
5794 *
5795 * </ini>
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005796 */
5797#define CFG_ENABLE_MCC_ENABLED_NAME "gEnableMCCMode"
5798#define CFG_ENABLE_MCC_ENABLED_MIN (0)
5799#define CFG_ENABLE_MCC_ENABLED_MAX (1)
5800#define CFG_ENABLE_MCC_ENABLED_DEFAULT (1)
5801
5802/*
Nitesh Shah03161d12016-12-06 18:30:12 +05305803 * <ini>
5804 * gAllowMCCGODiffBI - Allow GO in MCC mode to accept different beacon interval
5805 * than STA's.
5806 * @Min: 0
5807 * @Max: 4
5808 * @Default: 4
5809 *
5810 * This ini is used to allow GO in MCC mode to accept different beacon interval
5811 * than STA's.
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005812 * Added for Wi-Fi Cert. 5.1.12
Nitesh Shah03161d12016-12-06 18:30:12 +05305813 * If gAllowMCCGODiffBI = 1
5814 * Set to 1 for WFA certification. GO Beacon interval is not changed.
5815 * MCC GO doesn't work well in optimized way. In worst scenario, it may
5816 * invite STA disconnection.
5817 * If gAllowMCCGODiffBI = 2
5818 * If set to 2 workaround 1 disassoc all the clients and update beacon
5819 * Interval.
5820 * If gAllowMCCGODiffBI = 3
5821 * If set to 3 tear down the P2P link in auto/Non-autonomous -GO case.
5822 * If gAllowMCCGODiffBI = 4
5823 * If set to 4 don't disconnect the P2P client in autonomous/Non-auto-
5824 * nomous -GO case update the BI dynamically
5825 *
5826 * Related: None.
5827 *
5828 * Supported Feature: Concurrency
5829 *
5830 * Usage: Internal/External
5831 *
5832 * </ini>
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005833 */
5834#define CFG_ALLOW_MCC_GO_DIFF_BI_NAME "gAllowMCCGODiffBI"
5835#define CFG_ALLOW_MCC_GO_DIFF_BI_MIN (0)
5836#define CFG_ALLOW_MCC_GO_DIFF_BI_MAX (4)
5837#define CFG_ALLOW_MCC_GO_DIFF_BI_DEFAULT (4)
5838
Poddar, Siddarthb61cf642016-04-28 16:02:39 +05305839#if defined(CONFIG_HL_SUPPORT) && defined(QCA_BAD_PEER_TX_FLOW_CL)
5840/*
5841 * Enable/Disable Bad Peer TX CTL feature
5842 * Default: Enable
5843 */
5844#define CFG_BAD_PEER_TX_CTL_ENABLE_NAME "gBadPeerTxCtlEnable"
5845#define CFG_BAD_PEER_TX_CTL_ENABLE_MIN (0)
5846#define CFG_BAD_PEER_TX_CTL_ENABLE_MAX (1)
5847#define CFG_BAD_PEER_TX_CTL_ENABLE_DEFAULT (1)
5848
5849#define CFG_BAD_PEER_TX_CTL_PERIOD_NAME "gBadPeerTxCtlPeriod"
5850#define CFG_BAD_PEER_TX_CTL_PERIOD_MIN (10)
5851#define CFG_BAD_PEER_TX_CTL_PERIOD_MAX (10000)
5852#define CFG_BAD_PEER_TX_CTL_PERIOD_DEFAULT (50)
5853
5854#define CFG_BAD_PEER_TX_CTL_TXQ_LIMIT_NAME "gBadPeerTxCtlTxqLimit"
5855#define CFG_BAD_PEER_TX_CTL_TXQ_LIMIT_MIN (1)
5856#define CFG_BAD_PEER_TX_CTL_TXQ_LIMIT_MAX (5000)
5857#define CFG_BAD_PEER_TX_CTL_TXQ_LIMIT_DEFAULT (100)
5858
5859#define CFG_BAD_PEER_TX_CTL_TGT_BACKOFF_T_NAME "gBadPeerTxCtlTgtBackoffTime"
5860#define CFG_BAD_PEER_TX_CTL_TGT_BACKOFF_T_MIN (1)
5861#define CFG_BAD_PEER_TX_CTL_TGT_BACKOFF_T_MAX (5000)
5862#define CFG_BAD_PEER_TX_CTL_TGT_BACKOFF_T_DEFAULT (20)
5863
5864#define CFG_BAD_PEER_TX_CTL_TGT_REPORT_PRD_NAME "gBadPeerTxCtlTgtReportPeriod"
5865#define CFG_BAD_PEER_TX_CTL_TGT_REPORT_PRD_MIN (1)
5866#define CFG_BAD_PEER_TX_CTL_TGT_REPORT_PRD_MAX (5000)
5867#define CFG_BAD_PEER_TX_CTL_TGT_REPORT_PRD_DEFAULT (500)
5868
5869#define CFG_BAD_PEER_TX_CTL_COND_LEVEL_IEEEB_NAME "gBadPeerTxCtlCondLevelIeeeB"
5870#define CFG_BAD_PEER_TX_CTL_COND_LEVEL_IEEEB_MIN (1)
5871#define CFG_BAD_PEER_TX_CTL_COND_LEVEL_IEEEB_MAX (2)
5872#define CFG_BAD_PEER_TX_CTL_COND_LEVEL_IEEEB_DEFAULT (2)
5873
5874#define CFG_BAD_PEER_TX_CTL_DELTA_LEVEL_IEEEB_NAME "gBadPeerTxCtlDeltaLevelIeeeB"
5875#define CFG_BAD_PEER_TX_CTL_DELTA_LEVEL_IEEEB_MIN (1)
5876#define CFG_BAD_PEER_TX_CTL_DELTA_LEVEL_IEEEB_MAX (11)
5877#define CFG_BAD_PEER_TX_CTL_DELTA_LEVEL_IEEEB_DEFAULT (2)
5878
5879#define CFG_BAD_PEER_TX_CTL_PCT_LEVEL_IEEEB_NAME "gBadPeerTxCtlPctLevelIeeeB"
5880#define CFG_BAD_PEER_TX_CTL_PCT_LEVEL_IEEEB_MIN (1)
5881#define CFG_BAD_PEER_TX_CTL_PCT_LEVEL_IEEEB_MAX (8)
5882#define CFG_BAD_PEER_TX_CTL_PCT_LEVEL_IEEEB_DEFAULT (1)
5883
5884#define CFG_BAD_PEER_TX_CTL_TPUT_LEVEL_IEEEB_NAME "gBadPeerTxCtlTputLevelIeeeB"
5885#define CFG_BAD_PEER_TX_CTL_TPUT_LEVEL_IEEEB_MIN (1)
5886#define CFG_BAD_PEER_TX_CTL_TPUT_LEVEL_IEEEB_MAX (11)
5887#define CFG_BAD_PEER_TX_CTL_TPUT_LEVEL_IEEEB_DEFAULT (2)
5888
5889#define CFG_BAD_PEER_TX_CTL_TX_LIMIT_LEVEL_IEEEB_NAME "gBadPeerTxCtlTxLimitLevelIeeeB"
5890#define CFG_BAD_PEER_TX_CTL_TX_LIMIT_LEVEL_IEEEB_MIN (0)
5891#define CFG_BAD_PEER_TX_CTL_TX_LIMIT_LEVEL_IEEEB_MAX (50)
5892#define CFG_BAD_PEER_TX_CTL_TX_LIMIT_LEVEL_IEEEB_DEFAULT (3)
5893
5894#define CFG_BAD_PEER_TX_CTL_COND_LEVEL_IEEEAG_NAME "gBadPeerTxCtlCondLevelIeeeAG"
5895#define CFG_BAD_PEER_TX_CTL_COND_LEVEL_IEEEAG_MIN (1)
5896#define CFG_BAD_PEER_TX_CTL_COND_LEVEL_IEEEAG_MAX (2)
5897#define CFG_BAD_PEER_TX_CTL_COND_LEVEL_IEEEAG_DEFAULT (2)
5898
5899#define CFG_BAD_PEER_TX_CTL_DELTA_LEVEL_IEEEAG_NAME "gBadPeerTxCtlDeltaLevelIeeeAG"
5900#define CFG_BAD_PEER_TX_CTL_DELTA_LEVEL_IEEEAG_MIN (6)
5901#define CFG_BAD_PEER_TX_CTL_DELTA_LEVEL_IEEEAG_MAX (54)
5902#define CFG_BAD_PEER_TX_CTL_DELTA_LEVEL_IEEEAG_DEFAULT (6)
5903
5904#define CFG_BAD_PEER_TX_CTL_PCT_LEVEL_IEEEAG_NAME "gBadPeerTxCtlPctLevelIeeeAG"
5905#define CFG_BAD_PEER_TX_CTL_PCT_LEVEL_IEEEAG_MIN (1)
5906#define CFG_BAD_PEER_TX_CTL_PCT_LEVEL_IEEEAG_MAX (8)
5907#define CFG_BAD_PEER_TX_CTL_PCT_LEVEL_IEEEAG_DEFAULT (1)
5908
5909#define CFG_BAD_PEER_TX_CTL_TPUT_LEVEL_IEEEAG_NAME "gBadPeerTxCtlTputLevelIeeeAG"
5910#define CFG_BAD_PEER_TX_CTL_TPUT_LEVEL_IEEEAG_MIN (6)
5911#define CFG_BAD_PEER_TX_CTL_TPUT_LEVEL_IEEEAG_MAX (54)
5912#define CFG_BAD_PEER_TX_CTL_TPUT_LEVEL_IEEEAG_DEFAULT (6)
5913
5914#define CFG_BAD_PEER_TX_CTL_TX_LIMIT_LEVEL_IEEEAG_NAME "gBadPeerTxCtlTxLimitLevelIeeeAG"
5915#define CFG_BAD_PEER_TX_CTL_TX_LIMIT_LEVEL_IEEEAG_MIN (0)
5916#define CFG_BAD_PEER_TX_CTL_TX_LIMIT_LEVEL_IEEEAG_MAX (50)
5917#define CFG_BAD_PEER_TX_CTL_TX_LIMIT_LEVEL_IEEEAG_DEFAULT (3)
5918
5919#define CFG_BAD_PEER_TX_CTL_COND_LEVEL_IEEEN_NAME "gBadPeerTxCtlCondLevelIeeeN"
5920#define CFG_BAD_PEER_TX_CTL_COND_LEVEL_IEEEN_MIN (1)
5921#define CFG_BAD_PEER_TX_CTL_COND_LEVEL_IEEEN_MAX (2)
5922#define CFG_BAD_PEER_TX_CTL_COND_LEVEL_IEEEN_DEFAULT (2)
5923
5924#define CFG_BAD_PEER_TX_CTL_DELTA_LEVEL_IEEEN_NAME "gBadPeerTxCtlDeltaLevelIeeeN"
5925#define CFG_BAD_PEER_TX_CTL_DELTA_LEVEL_IEEEN_MIN (6)
5926#define CFG_BAD_PEER_TX_CTL_DELTA_LEVEL_IEEEN_MAX (72)
5927#define CFG_BAD_PEER_TX_CTL_DELTA_LEVEL_IEEEN_DEFAULT (6)
5928
5929#define CFG_BAD_PEER_TX_CTL_PCT_LEVEL_IEEEN_NAME "gBadPeerTxCtlPctLevelIeeeN"
5930#define CFG_BAD_PEER_TX_CTL_PCT_LEVEL_IEEEN_MIN (1)
5931#define CFG_BAD_PEER_TX_CTL_PCT_LEVEL_IEEEN_MAX (8)
5932#define CFG_BAD_PEER_TX_CTL_PCT_LEVEL_IEEEN_DEFAULT (1)
5933
5934#define CFG_BAD_PEER_TX_CTL_TPUT_LEVEL_IEEEN_NAME "gBadPeerTxCtlTputLevelIeeeN"
5935#define CFG_BAD_PEER_TX_CTL_TPUT_LEVEL_IEEEN_MIN (6)
5936#define CFG_BAD_PEER_TX_CTL_TPUT_LEVEL_IEEEN_MAX (72)
5937#define CFG_BAD_PEER_TX_CTL_TPUT_LEVEL_IEEEN_DEFAULT (15)
5938
5939#define CFG_BAD_PEER_TX_CTL_TX_LIMIT_LEVEL_IEEEN_NAME "gBadPeerTxCtlTxLimitLevelIeeeN"
5940#define CFG_BAD_PEER_TX_CTL_TX_LIMIT_LEVEL_IEEEN_MIN (0)
5941#define CFG_BAD_PEER_TX_CTL_TX_LIMIT_LEVEL_IEEEN_MAX (50)
5942#define CFG_BAD_PEER_TX_CTL_TX_LIMIT_LEVEL_IEEEN_DEFAULT (3)
5943
5944#define CFG_BAD_PEER_TX_CTL_COND_LEVEL_IEEEAC_NAME "gBadPeerTxCtlCondLevelIeeeAC"
5945#define CFG_BAD_PEER_TX_CTL_COND_LEVEL_IEEEAC_MIN (1)
5946#define CFG_BAD_PEER_TX_CTL_COND_LEVEL_IEEEAC_MAX (2)
5947#define CFG_BAD_PEER_TX_CTL_COND_LEVEL_IEEEAC_DEFAULT (2)
5948
5949#define CFG_BAD_PEER_TX_CTL_DELTA_LEVEL_IEEEAC_NAME "gBadPeerTxCtlDeltaLevelIeeeAC"
5950#define CFG_BAD_PEER_TX_CTL_DELTA_LEVEL_IEEEAC_MIN (6)
5951#define CFG_BAD_PEER_TX_CTL_DELTA_LEVEL_IEEEAC_MAX (433)
5952#define CFG_BAD_PEER_TX_CTL_DELTA_LEVEL_IEEEAC_DEFAULT (6)
5953
5954#define CFG_BAD_PEER_TX_CTL_PCT_LEVEL_IEEEAC_NAME "gBadPeerTxCtlPctLevelIeeeAC"
5955#define CFG_BAD_PEER_TX_CTL_PCT_LEVEL_IEEEAC_MIN (1)
5956#define CFG_BAD_PEER_TX_CTL_PCT_LEVEL_IEEEAC_MAX (8)
5957#define CFG_BAD_PEER_TX_CTL_PCT_LEVEL_IEEEAC_DEFAULT (1)
5958
5959#define CFG_BAD_PEER_TX_CTL_TPUT_LEVEL_IEEEAC_NAME "gBadPeerTxCtlTputLevelIeeeAC"
5960#define CFG_BAD_PEER_TX_CTL_TPUT_LEVEL_IEEEAC_MIN (6)
5961#define CFG_BAD_PEER_TX_CTL_TPUT_LEVEL_IEEEAC_MAX (433)
5962#define CFG_BAD_PEER_TX_CTL_TPUT_LEVEL_IEEEAC_DEFAULT (15)
5963
5964#define CFG_BAD_PEER_TX_CTL_TX_LIMIT_LEVEL_IEEEAC_NAME "gBadPeerTxCtlTxLimitLevelIeeeAC"
5965#define CFG_BAD_PEER_TX_CTL_TX_LIMIT_LEVEL_IEEEAC_MIN (0)
5966#define CFG_BAD_PEER_TX_CTL_TX_LIMIT_LEVEL_IEEEAC_MAX (50)
5967#define CFG_BAD_PEER_TX_CTL_TX_LIMIT_LEVEL_IEEEAC_DEFAULT (3)
5968#endif
5969
5970
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005971/*
5972 * Enable/Disable Thermal Mitigation feature
5973 * Default: Enable
5974 */
5975#define CFG_THERMAL_MIGRATION_ENABLE_NAME "gThermalMitigationEnable"
5976#define CFG_THERMAL_MIGRATION_ENABLE_MIN (0)
5977#define CFG_THERMAL_MIGRATION_ENABLE_MAX (1)
Manjeet Singhbcd1cfd2017-01-11 15:15:14 +05305978#define CFG_THERMAL_MIGRATION_ENABLE_DEFAULT (0)
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005979
5980#define CFG_THROTTLE_PERIOD_NAME "gThrottlePeriod"
5981#define CFG_THROTTLE_PERIOD_MIN (10)
5982#define CFG_THROTTLE_PERIOD_MAX (10000)
5983#define CFG_THROTTLE_PERIOD_DEFAULT (4000)
5984
Poddar, Siddarth83905022016-04-16 17:56:08 -07005985/*
5986 * Configure Throttle Period Different Level Duty Cycle in percentage
5987 * When temperature measured is greater than threshold at particular level,
5988 * then throtling level will get increased by one level and
5989 * will reduce TX duty by the given percentage
5990 */
5991#define CFG_THROTTLE_DUTY_CYCLE_LEVEL0_NAME "gThrottleDutyCycleLevel0"
5992#define CFG_THROTTLE_DUTY_CYCLE_LEVEL0_MIN (0)
5993#define CFG_THROTTLE_DUTY_CYCLE_LEVEL0_MAX (0)
5994#define CFG_THROTTLE_DUTY_CYCLE_LEVEL0_DEFAULT (0)
5995
5996#define CFG_THROTTLE_DUTY_CYCLE_LEVEL1_NAME "gThrottleDutyCycleLevel1"
5997#define CFG_THROTTLE_DUTY_CYCLE_LEVEL1_MIN (0)
5998#define CFG_THROTTLE_DUTY_CYCLE_LEVEL1_MAX (100)
5999#define CFG_THROTTLE_DUTY_CYCLE_LEVEL1_DEFAULT (50)
6000
6001#define CFG_THROTTLE_DUTY_CYCLE_LEVEL2_NAME "gThrottleDutyCycleLevel2"
6002#define CFG_THROTTLE_DUTY_CYCLE_LEVEL2_MIN (0)
6003#define CFG_THROTTLE_DUTY_CYCLE_LEVEL2_MAX (100)
6004#define CFG_THROTTLE_DUTY_CYCLE_LEVEL2_DEFAULT (75)
6005
6006#define CFG_THROTTLE_DUTY_CYCLE_LEVEL3_NAME "gThrottleDutyCycleLevel3"
6007#define CFG_THROTTLE_DUTY_CYCLE_LEVEL3_MIN (0)
6008#define CFG_THROTTLE_DUTY_CYCLE_LEVEL3_MAX (100)
6009#define CFG_THROTTLE_DUTY_CYCLE_LEVEL3_DEFAULT (94)
6010
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08006011#define CFG_THERMAL_TEMP_MIN_LEVEL0_NAME "gThermalTempMinLevel0"
6012#define CFG_THERMAL_TEMP_MIN_LEVEL0_MIN (0)
6013#define CFG_THERMAL_TEMP_MIN_LEVEL0_MAX (1000)
6014#define CFG_THERMAL_TEMP_MIN_LEVEL0_DEFAULT (0)
6015
6016#define CFG_THERMAL_TEMP_MAX_LEVEL0_NAME "gThermalTempMaxLevel0"
6017#define CFG_THERMAL_TEMP_MAX_LEVEL0_MIN (0)
6018#define CFG_THERMAL_TEMP_MAX_LEVEL0_MAX (1000)
6019#define CFG_THERMAL_TEMP_MAX_LEVEL0_DEFAULT (90)
6020
6021#define CFG_THERMAL_TEMP_MIN_LEVEL1_NAME "gThermalTempMinLevel1"
6022#define CFG_THERMAL_TEMP_MIN_LEVEL1_MIN (0)
6023#define CFG_THERMAL_TEMP_MIN_LEVEL1_MAX (1000)
6024#define CFG_THERMAL_TEMP_MIN_LEVEL1_DEFAULT (70)
6025
6026#define CFG_THERMAL_TEMP_MAX_LEVEL1_NAME "gThermalTempMaxLevel1"
6027#define CFG_THERMAL_TEMP_MAX_LEVEL1_MIN (0)
6028#define CFG_THERMAL_TEMP_MAX_LEVEL1_MAX (1000)
6029#define CFG_THERMAL_TEMP_MAX_LEVEL1_DEFAULT (110)
6030
6031#define CFG_THERMAL_TEMP_MIN_LEVEL2_NAME "gThermalTempMinLevel2"
6032#define CFG_THERMAL_TEMP_MIN_LEVEL2_MIN (0)
6033#define CFG_THERMAL_TEMP_MIN_LEVEL2_MAX (1000)
6034#define CFG_THERMAL_TEMP_MIN_LEVEL2_DEFAULT (90)
6035
6036#define CFG_THERMAL_TEMP_MAX_LEVEL2_NAME "gThermalTempMaxLevel2"
6037#define CFG_THERMAL_TEMP_MAX_LEVEL2_MIN (0)
6038#define CFG_THERMAL_TEMP_MAX_LEVEL2_MAX (1000)
6039#define CFG_THERMAL_TEMP_MAX_LEVEL2_DEFAULT (125)
6040
6041#define CFG_THERMAL_TEMP_MIN_LEVEL3_NAME "gThermalTempMinLevel3"
6042#define CFG_THERMAL_TEMP_MIN_LEVEL3_MIN (0)
6043#define CFG_THERMAL_TEMP_MIN_LEVEL3_MAX (1000)
6044#define CFG_THERMAL_TEMP_MIN_LEVEL3_DEFAULT (110)
6045
6046#define CFG_THERMAL_TEMP_MAX_LEVEL3_NAME "gThermalTempMaxLevel3"
6047#define CFG_THERMAL_TEMP_MAX_LEVEL3_MIN (0)
6048#define CFG_THERMAL_TEMP_MAX_LEVEL3_MAX (1000)
6049#define CFG_THERMAL_TEMP_MAX_LEVEL3_DEFAULT (0)
6050
6051/*
6052 * Enable/Disable Modulated DTIM feature
6053 * Default: Disable
6054 */
6055#define CFG_ENABLE_MODULATED_DTIM_NAME "gEnableModulatedDTIM"
6056#define CFG_ENABLE_MODULATED_DTIM_MIN (0)
6057#define CFG_ENABLE_MODULATED_DTIM_MAX (5)
6058#define CFG_ENABLE_MODULATED_DTIM_DEFAULT (0)
6059
6060/*
Sen, Devendra9ca8c432017-02-23 15:10:26 +05306061 * <ini>
6062 * gMCAddrListEnable - Enable/Disable Multicast MAC Address List feature
6063 * @Min: 0
6064 * @Max: 1
6065 * @Default: 1
6066 *
6067 * This ini is used to set default MAC Address
Dustin Brownd03bf592016-09-08 14:40:51 -07006068 * Default: Enable
Sen, Devendra9ca8c432017-02-23 15:10:26 +05306069 *
6070 * Related: None
6071 *
6072 * Supported Feature: STA
6073 *
6074 * Usage: Internal/External
6075 *
6076 * </ini>
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08006077 */
Sen, Devendra9ca8c432017-02-23 15:10:26 +05306078
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08006079#define CFG_MC_ADDR_LIST_ENABLE_NAME "gMCAddrListEnable"
6080#define CFG_MC_ADDR_LIST_ENABLE_MIN (0)
6081#define CFG_MC_ADDR_LIST_ENABLE_MAX (1)
Dustin Brownd03bf592016-09-08 14:40:51 -07006082#define CFG_MC_ADDR_LIST_ENABLE_DEFAULT (1)
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08006083
Sen, Devendra9ca8c432017-02-23 15:10:26 +05306084/*
6085 * <ini>
6086 * gEnableRXSTBC - Enables/disables Rx STBC capability in STA mode
6087 * @Min: 0
6088 * @Max: 1
6089 * @Default: 1
6090 *
6091 * This ini is used to set default Rx STBC capability
6092 *
6093 * Related: None
6094 *
6095 * Supported Feature: STA
6096 *
6097 * Usage: Internal/External
6098 *
6099 * </ini>
6100 */
6101
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08006102#define CFG_ENABLE_RX_STBC "gEnableRXSTBC"
6103#define CFG_ENABLE_RX_STBC_MIN (0)
6104#define CFG_ENABLE_RX_STBC_MAX (1)
6105#define CFG_ENABLE_RX_STBC_DEFAULT (1)
6106
Sen, Devendra9ca8c432017-02-23 15:10:26 +05306107/*
6108 * <ini>
6109 * gEnableTXSTBC - Enables/disables Tx STBC capability in STA mode
6110 * @Min: 0
6111 * @Max: 1
6112 * @Default: 0
6113 *
6114 * This ini is used to set default Tx STBC capability
6115 *
6116 * Related: None
6117 *
6118 * Supported Feature: STA
6119 *
6120 * Usage: Internal/External
6121 *
6122 * </ini>
6123 */
6124
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08006125#define CFG_ENABLE_TX_STBC "gEnableTXSTBC"
6126#define CFG_ENABLE_TX_STBC_MIN (0)
6127#define CFG_ENABLE_TX_STBC_MAX (1)
6128#define CFG_ENABLE_TX_STBC_DEFAULT (0)
6129
Sen, Devendra9ca8c432017-02-23 15:10:26 +05306130/*
6131 * <ini>
Hong Shib707b052017-03-08 23:33:14 +08006132 * gMaxHTMCSForTxData - max HT mcs for TX
6133 * @Min: 0
6134 * @Max: 383
6135 * @Default: 0
6136 *
6137 * This ini is used to configure the max HT mcs
6138 * for tx data.
6139 *
6140 * Usage: External
6141 *
6142 * bits 0-15: max HT mcs
6143 * bits 16-31: zero to disable, otherwise enable.
6144 *
6145 * </ini>
6146 */
6147#define CFG_MAX_HT_MCS_FOR_TX_DATA "gMaxHTMCSForTxData"
6148#define CFG_MAX_HT_MCS_FOR_TX_DATA_MIN (WNI_CFG_MAX_HT_MCS_TX_DATA_STAMIN)
6149#define CFG_MAX_HT_MCS_FOR_TX_DATA_MAX (WNI_CFG_MAX_HT_MCS_TX_DATA_STAMAX)
6150#define CFG_MAX_HT_MCS_FOR_TX_DATA_DEFAULT (WNI_CFG_MAX_HT_MCS_TX_DATA_STADEF)
6151
6152/*
6153 * <ini>
Will Huang496b36c2017-07-11 16:38:50 +08006154 * gSapGetPeerInfo - Enable/Disable remote peer info query support
6155 * @Min: 0 - Disable remote peer info query support
6156 * @Max: 1 - Enable remote peer info query support
6157 * @Default: 0
6158 *
6159 * This ini is used to enable/disable remote peer info query support
6160 *
6161 * Usage: External
6162 *
6163 * </ini>
6164 */
6165#define CFG_SAP_GET_PEER_INFO "gSapGetPeerInfo"
6166#define CFG_SAP_GET_PEER_INFO_MIN (0)
6167#define CFG_SAP_GET_PEER_INFO_MAX (1)
6168#define CFG_SAP_GET_PEER_INFO_DEFAULT (0)
6169
6170/*
6171 * <ini>
Hong Shib707b052017-03-08 23:33:14 +08006172 * gDisableABGRateForTxData - disable abg rate for tx data
6173 * @Min: 0
6174 * @Max: 1
6175 * @Default: 0
6176 *
6177 * This ini is used to disable abg rate for tx data.
6178 *
6179 * Usage: External
6180 *
6181 * </ini>
6182 */
6183#define CFG_DISABLE_ABG_RATE_FOR_TX_DATA "gDisableABGRateForTxData"
6184#define CFG_DISABLE_ABG_RATE_FOR_TX_DATA_MIN \
6185 (WNI_CFG_DISABLE_ABG_RATE_FOR_TX_DATA_STAMIN)
6186#define CFG_DISABLE_ABG_RATE_FOR_TX_DATA_MAX \
6187 (WNI_CFG_DISABLE_ABG_RATE_FOR_TX_DATA_STAMAX)
6188#define CFG_DISABLE_ABG_RATE_FOR_TX_DATA_DEFAULT \
6189 (WNI_CFG_DISABLE_ABG_RATE_FOR_TX_DATA_STADEF)
6190
6191/*
6192 * <ini>
6193 * gRateForTxMgmt - rate for tx mgmt frame
6194 * @Min: 0x0
6195 * @Max: 0xFF
6196 * @Default: 0xFF
6197 *
6198 * This ini is used to configure the rate for tx
6199 * mgmt frame. Default 0xFF means disable.
6200 *
6201 * Usage: External
6202 *
6203 * </ini>
6204 */
6205#define CFG_RATE_FOR_TX_MGMT "gRateForTxMgmt"
6206#define CFG_RATE_FOR_TX_MGMT_MIN (WNI_CFG_RATE_FOR_TX_MGMT_STAMIN)
6207#define CFG_RATE_FOR_TX_MGMT_MAX (WNI_CFG_RATE_FOR_TX_MGMT_STAMAX)
6208#define CFG_RATE_FOR_TX_MGMT_DEFAULT (WNI_CFG_RATE_FOR_TX_MGMT_STADEF)
6209
Hong Shi2d384fd2017-05-22 18:38:41 +08006210/*
6211 * <ini>
6212 * gRateForTxMgmt2G - rate for tx mgmt frame on 2G
6213 * @Min: 0x0
6214 * @Max: 0xFF
6215 * @Default: 0xFF
6216 *
6217 * This ini is used to configure the rate for tx
6218 * mgmt frame on 2G Band. Default 0xFF means disable.
6219 * It has higher priority and will overwrite gRateForTxMgmt
6220 * setting.
6221 *
6222 * Usage: External
6223 *
6224 * </ini>
6225 */
6226#define CFG_RATE_FOR_TX_MGMT_2G "gRateForTxMgmt2G"
6227#define CFG_RATE_FOR_TX_MGMT_2G_MIN (WNI_CFG_RATE_FOR_TX_MGMT_2G_STAMIN)
6228#define CFG_RATE_FOR_TX_MGMT_2G_MAX (WNI_CFG_RATE_FOR_TX_MGMT_2G_STAMAX)
6229#define CFG_RATE_FOR_TX_MGMT_2G_DEFAULT (WNI_CFG_RATE_FOR_TX_MGMT_2G_STADEF)
6230
6231/*
6232 * <ini>
6233 * gRateForTxMgmt5G - rate for tx mgmt frame on 5G
6234 * @Min: 0x0
6235 * @Max: 0xFF
6236 * @Default: 0xFF
6237 *
6238 * This ini is used to configure the rate for tx
6239 * mgmt frame on 5G Band. Default 0xFF means disable.
6240 * It has higher priority and will overwrite gRateForTxMgmt
6241 * setting.
6242 *
6243 * Usage: External
6244 *
6245 * </ini>
6246 */
6247#define CFG_RATE_FOR_TX_MGMT_5G "gRateForTxMgmt5G"
6248#define CFG_RATE_FOR_TX_MGMT_5G_MIN (WNI_CFG_RATE_FOR_TX_MGMT_5G_STAMIN)
6249#define CFG_RATE_FOR_TX_MGMT_5G_MAX (WNI_CFG_RATE_FOR_TX_MGMT_5G_STAMAX)
6250#define CFG_RATE_FOR_TX_MGMT_5G_DEFAULT (WNI_CFG_RATE_FOR_TX_MGMT_5G_STADEF)
6251
Dustin Brownfe7aa872017-06-26 10:52:08 -07006252/*
6253 * <ini>
6254 * gPreventLinkDown - Enable to prevent bus link from going down
6255 * @Min: 0
6256 * @Max: 1
6257 * @Default: 0
6258 *
6259 * Enable to prevent bus link from going down. Useful for platforms that do not
6260 * (yet) support link down suspend cases.
6261 *
6262 * Related: N/A
6263 *
6264 * Supported Feature: Suspend/Resume
6265 *
6266 * Usage: Internal
6267 *
6268 * </ini>
6269 */
6270#define CFG_PREVENT_LINK_DOWN_NAME "gPreventLinkDown"
6271#define CFG_PREVENT_LINK_DOWN_MIN (0)
6272#define CFG_PREVENT_LINK_DOWN_MAX (1)
Dustin Brown49040e12017-08-14 16:22:50 -07006273#if defined(QCA_WIFI_NAPIER_EMULATION) || defined(QCA_WIFI_QCA6290)
6274#define CFG_PREVENT_LINK_DOWN_DEFAULT (1)
6275#else
Dustin Brownfe7aa872017-06-26 10:52:08 -07006276#define CFG_PREVENT_LINK_DOWN_DEFAULT (0)
Dustin Brown49040e12017-08-14 16:22:50 -07006277#endif /* QCA_WIFI_NAPIER_EMULATION */
Dustin Brownfe7aa872017-06-26 10:52:08 -07006278
Nitesh Shahbb405832016-12-08 12:43:10 +05306279/*
SaidiReddy Yenugacc733af2016-11-09 17:45:42 +05306280 * This INI item is used to control subsystem restart(SSR) test framework
6281 * Set it's value to 1 to enable APPS trigerred SSR testing
6282 */
6283#define CFG_ENABLE_CRASH_INJECT "gEnableForceTargetAssert"
6284#define CFG_ENABLE_CRASH_INJECT_MIN (0)
6285#define CFG_ENABLE_CRASH_INJECT_MAX (1)
6286#define CFG_ENABLE_CRASH_INJECT_DEFAULT (0)
6287
6288/*
Nitesh Shahbb405832016-12-08 12:43:10 +05306289 * <ini>
Krunal Sonia2c0e412017-05-04 14:12:41 +05306290 * gTxLdpcEnable - Config Param to enable Tx LDPC capability
6291 * @Min: 0
6292 * @Max: 3
6293 * @Default: 3
6294 *
6295 * This ini is used to enable/disable Tx LDPC capability
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08006296 * 0 - disable
6297 * 1 - HT LDPC enable
6298 * 2 - VHT LDPC enable
Jeff Johnsondcd2cf92017-01-12 10:44:23 -08006299 * 3 - HT & VHT LDPC enable
Krunal Sonia2c0e412017-05-04 14:12:41 +05306300 *
6301 * Related: STA/SAP/P2P/IBSS/NAN.
6302 *
6303 * Supported Feature: Concurrency/Standalone
6304 *
6305 * Usage: Internal/External
6306 *
6307 * </ini>
Jeff Johnsondcd2cf92017-01-12 10:44:23 -08006308 */
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08006309#define CFG_TX_LDPC_ENABLE_FEATURE "gTxLdpcEnable"
6310#define CFG_TX_LDPC_ENABLE_FEATURE_MIN (0)
6311#define CFG_TX_LDPC_ENABLE_FEATURE_MAX (3)
Kiran Kumar Lokere333a9952016-03-01 15:40:23 -08006312#define CFG_TX_LDPC_ENABLE_FEATURE_DEFAULT (3)
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08006313
6314/*
Nitesh Shah03161d12016-12-06 18:30:12 +05306315 * <ini>
Krunal Sonia2c0e412017-05-04 14:12:41 +05306316 * gEnableRXLDPC - Config Param to enable Rx LDPC capability
6317 * @Min: 0
6318 * @Max: 1
6319 * @Default: 0
6320 *
6321 * This ini is used to enable/disable Rx LDPC capability
6322 *
6323 * Related: STA/SAP/P2P/IBSS/NAN.
6324 *
6325 * Supported Feature: Concurrency/Standalone
6326 *
6327 * Usage: Internal/External
6328 *
6329 * </ini>
6330 */
6331
6332#define CFG_ENABLE_RX_LDPC "gEnableRXLDPC"
6333#define CFG_ENABLE_RX_LDPC_MIN (0)
6334#define CFG_ENABLE_RX_LDPC_MAX (1)
6335#define CFG_ENABLE_RX_LDPC_DEFAULT (0)
6336
6337/*
6338 * <ini>
Nitesh Shah03161d12016-12-06 18:30:12 +05306339 * gEnableMCCAdaptiveScheduler - MCC Adaptive Scheduler feature.
6340 * @Min: 0
6341 * @Max: 1
6342 * @Default: 1
6343 *
6344 * This ini is used to enable/disable MCC Adaptive Scheduler feature.
6345 *
6346 * Related: None.
6347 *
6348 * Supported Feature: Concurrency
6349 *
6350 * Usage: Internal/External
6351 *
6352 * </ini>
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08006353 */
6354#define CFG_ENABLE_MCC_ADATIVE_SCHEDULER_ENABLED_NAME "gEnableMCCAdaptiveScheduler"
6355#define CFG_ENABLE_MCC_ADATIVE_SCHEDULER_ENABLED_MIN (0)
6356#define CFG_ENABLE_MCC_ADATIVE_SCHEDULER_ENABLED_MAX (1)
6357#define CFG_ENABLE_MCC_ADATIVE_SCHEDULER_ENABLED_DEFAULT (1)
6358
6359#define CFG_VHT_SU_BEAMFORMEE_CAP_FEATURE "gTxBFEnable"
6360#define CFG_VHT_SU_BEAMFORMEE_CAP_FEATURE_MIN (WNI_CFG_VHT_SU_BEAMFORMEE_CAP_STAMIN)
6361#define CFG_VHT_SU_BEAMFORMEE_CAP_FEATURE_MAX (WNI_CFG_VHT_SU_BEAMFORMEE_CAP_STAMAX)
6362#define CFG_VHT_SU_BEAMFORMEE_CAP_FEATURE_DEFAULT (WNI_CFG_VHT_SU_BEAMFORMEE_CAP_STADEF)
6363
Kiran Kumar Lokere5302ab62015-12-16 16:03:16 -08006364/*
Abhishek Singh68844282018-01-25 16:48:41 +05306365 * <ini>
6366 * enable_subfee_vendor_vhtie - ini to enable/disable SU Bformee in vendor VHTIE
6367 * @Min: 0
6368 * @Max: 1
6369 * @Default: 1
6370 *
6371 * This ini is used to enable/disable SU Bformee in vendor vht ie if gTxBFEnable
6372 * is enabled. if gTxBFEnable is 0 this will not have any effect.
6373 *
6374 * Related: gTxBFEnable.
6375 *
6376 * Supported Feature: STA
6377 *
6378 * Usage: External
6379 *
6380 * </ini>
6381 */
6382#define CFG_ENABLE_SUBFEE_IN_VENDOR_VHTIE_NAME "enable_subfee_vendor_vhtie"
6383#define CFG_ENABLE_SUBFEE_IN_VENDOR_VHTIE_MIN (0)
6384#define CFG_ENABLE_SUBFEE_IN_VENDOR_VHTIE_MAX (1)
6385#define CFG_ENABLE_SUBFEE_IN_VENDOR_VHTIE_DEFAULT (1)
6386
6387/*
Kiran Kumar Lokere5302ab62015-12-16 16:03:16 -08006388 * Enable / Disable Tx beamformee in SAP mode
6389 * Default: Disable
6390 */
6391#define CFG_VHT_ENABLE_TXBF_SAP_MODE "gEnableTxBFeeSAP"
6392#define CFG_VHT_ENABLE_TXBF_SAP_MODE_MIN (0)
6393#define CFG_VHT_ENABLE_TXBF_SAP_MODE_MAX (1)
6394#define CFG_VHT_ENABLE_TXBF_SAP_MODE_DEFAULT (0)
6395
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08006396#define CFG_VHT_CSN_BEAMFORMEE_ANT_SUPPORTED "gTxBFCsnValue"
6397#define CFG_VHT_CSN_BEAMFORMEE_ANT_SUPPORTED_MIN (WNI_CFG_VHT_CSN_BEAMFORMEE_ANT_SUPPORTED_STAMIN)
6398#define CFG_VHT_CSN_BEAMFORMEE_ANT_SUPPORTED_MAX (WNI_CFG_VHT_CSN_BEAMFORMEE_ANT_SUPPORTED_STAMAX - 1)
Nachiket Kukade8b4bfd82017-05-25 18:34:48 +05306399#define CFG_VHT_CSN_BEAMFORMEE_ANT_SUPPORTED_DEFAULT (WNI_CFG_VHT_CSN_BEAMFORMEE_ANT_SUPPORTED_STADEF - 1)
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08006400
6401#define CFG_VHT_ENABLE_TXBF_IN_20MHZ "gEnableTxBFin20MHz"
6402#define CFG_VHT_ENABLE_TXBF_IN_20MHZ_MIN (0)
6403#define CFG_VHT_ENABLE_TXBF_IN_20MHZ_MAX (1)
6404#define CFG_VHT_ENABLE_TXBF_IN_20MHZ_DEFAULT (0)
6405
Naveen Rawatefa01082015-12-01 12:08:45 -08006406#define CFG_VHT_ENABLE_TX_SU_BEAM_FORMER "gEnableTxSUBeamformer"
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08006407#define CFG_VHT_ENABLE_TX_SU_BEAM_FORMER_MIN (0)
6408#define CFG_VHT_ENABLE_TX_SU_BEAM_FORMER_MAX (1)
6409#define CFG_VHT_ENABLE_TX_SU_BEAM_FORMER_DEFAULT (0)
6410
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08006411/*
6412 * SAP ALLOW All Channels
6413 */
6414#define CFG_SAP_ALLOW_ALL_CHANNEL_PARAM_NAME "gSapAllowAllChannel"
6415#define CFG_SAP_ALLOW_ALL_CHANNEL_PARAM_MIN (0)
6416#define CFG_SAP_ALLOW_ALL_CHANNEL_PARAM_MAX (1)
6417#define CFG_SAP_ALLOW_ALL_CHANNEL_PARAM_DEFAULT (0)
6418
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08006419#define CFG_DISABLE_LDPC_WITH_TXBF_AP "gDisableLDPCWithTxbfAP"
6420#define CFG_DISABLE_LDPC_WITH_TXBF_AP_MIN (0)
6421#define CFG_DISABLE_LDPC_WITH_TXBF_AP_MAX (1)
6422#define CFG_DISABLE_LDPC_WITH_TXBF_AP_DEFAULT (0)
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08006423
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08006424/* Parameter to control VHT support in 2.4 GHz band */
6425#define CFG_ENABLE_VHT_FOR_24GHZ_NAME "gEnableVhtFor24GHzBand"
6426#define CFG_ENABLE_VHT_FOR_24GHZ_MIN (0)
6427#define CFG_ENABLE_VHT_FOR_24GHZ_MAX (1)
6428#define CFG_ENABLE_VHT_FOR_24GHZ_DEFAULT (0)
6429
Kapil Gupta4b2efbb2016-10-03 13:07:20 +05306430/*
Agrawal Ashishe030f782017-01-27 17:52:05 +05306431 * gEnableVendorVhtFor24GHzBand:Parameter to control VHT support
6432 * based on vendor ie in 2.4 GHz band
6433 * @Min: 0
6434 * @Max: 1
6435 * @Default: 1
6436 *
Kapil Gupta4b2efbb2016-10-03 13:07:20 +05306437 * This parameter will enable SAP to read VHT capability in vendor ie in Assoc
6438 * Req and send VHT caps in Resp to establish connection in VHT Mode.
Agrawal Ashishe030f782017-01-27 17:52:05 +05306439 * Supported Feature: SAP
6440 *
6441 *
6442 * Usage: Internal/External
6443 *
6444 * </ini>
Kapil Gupta4b2efbb2016-10-03 13:07:20 +05306445 */
6446#define CFG_ENABLE_VENDOR_VHT_FOR_24GHZ_NAME "gEnableVendorVhtFor24GHzBand"
6447#define CFG_ENABLE_VENDOR_VHT_FOR_24GHZ_MIN (0)
6448#define CFG_ENABLE_VENDOR_VHT_FOR_24GHZ_MAX (1)
6449#define CFG_ENABLE_VENDOR_VHT_FOR_24GHZ_DEFAULT (1)
6450
Sen, Devendra9ca8c432017-02-23 15:10:26 +05306451/*
6452 * <ini>
Sen, Devendra9ca8c432017-02-23 15:10:26 +05306453 * gEnableSNRMonitoring - Enables SNR Monitoring
6454 * @Min: 0
6455 * @Max: 1
6456 * @Default: 0
6457 *
6458 * This ini is used to set default snr monitor
6459 *
6460 * Related: None
6461 *
6462 * Supported Feature: STA
6463 *
6464 * Usage: Internal/External
6465 *
6466 * </ini>
6467 */
6468
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08006469#define CFG_ENABLE_SNR_MONITORING_NAME "gEnableSNRMonitoring"
6470#define CFG_ENABLE_SNR_MONITORING_MIN (0)
6471#define CFG_ENABLE_SNR_MONITORING_MAX (1)
6472#define CFG_ENABLE_SNR_MONITORING_DEFAULT (0)
6473
Sen, Devendra9ca8c432017-02-23 15:10:26 +05306474/*
6475 * <ini>
6476 * gEnableIpTcpUdpChecksumOffload - It enables IP, TCP and UDP checksum
6477 * offload in hardware
6478 * @Min: 0
6479 * @Max: 1
6480 * @Default: DEF
6481 *
6482 * This ini is used to enable IP, TCP and UDP checksum offload in hardware
6483 * and also advertise same to network stack
6484 *
6485 * Related: None
6486 *
6487 * Supported Feature: STA
6488 *
6489 * Usage: Internal/External
6490 *
6491 * </ini>
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08006492 */
Sen, Devendra9ca8c432017-02-23 15:10:26 +05306493
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08006494#define CFG_ENABLE_IP_TCP_UDP_CHKSUM_OFFLOAD "gEnableIpTcpUdpChecksumOffload"
6495#define CFG_ENABLE_IP_TCP_UDP_CHKSUM_OFFLOAD_DISABLE (0)
6496#define CFG_ENABLE_IP_TCP_UDP_CHKSUM_OFFLOAD_ENABLE (1)
6497#define CFG_ENABLE_IP_TCP_UDP_CHKSUM_OFFLOAD_DEFAULT (CFG_ENABLE_IP_TCP_UDP_CHKSUM_OFFLOAD_ENABLE)
6498
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08006499#ifdef WLAN_FEATURE_FASTPATH
Poddar, Siddarthcc250aa2016-12-05 19:21:03 +05306500
6501/*
6502 * <ini>
6503 * gEnableFastPath - Control to enable fastpath feature
6504 *
6505 * @Min: 0
6506 * @Max: 1
6507 * @Default: 0
6508 *
6509 * This ini is used to enable fastpath feature
6510 *
6511 * Supported Feature: Wlan Fastpath Feature
6512 *
6513 * Usage: Internal
6514 *
6515 * </ini>
6516 */
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08006517#define CFG_ENABLE_FASTPATH "gEnableFastPath"
6518#define CFG_ENABLE_FASTPATH_MIN (0)
6519#define CFG_ENABLE_FASTPATH_MAX (1)
6520#define CFG_ENABLE_FASTPATH_DEFAULT (CFG_ENABLE_FASTPATH_MIN)
6521#endif /* WLAN_FEATURE_FASTPATH */
6522
6523/*
6524 * IPA Offload configuration - Each bit enables a feature
6525 * bit0 - IPA Enable
6526 * bit1 - IPA Pre filter enable
6527 * bit2 - IPv6 enable
6528 * bit3 - IPA Resource Manager (RM) enable
6529 * bit4 - IPA Clock scaling enable
6530 */
6531#define CFG_IPA_OFFLOAD_CONFIG_NAME "gIPAConfig"
6532#define CFG_IPA_OFFLOAD_CONFIG_MIN (0)
6533#define CFG_IPA_OFFLOAD_CONFIG_MAX (0xFFFFFFFF)
6534#define CFG_IPA_OFFLOAD_CONFIG_DEFAULT (CFG_IPA_OFFLOAD_CONFIG_MIN)
6535
6536/*
6537 * IPA DESC SIZE
6538 */
6539#define CFG_IPA_DESC_SIZE_NAME "gIPADescSize"
6540#define CFG_IPA_DESC_SIZE_MIN (800)
6541#define CFG_IPA_DESC_SIZE_MAX (8000)
6542#define CFG_IPA_DESC_SIZE_DEFAULT (800)
6543
6544#define CFG_IPA_HIGH_BANDWIDTH_MBPS "gIPAHighBandwidthMbps"
6545#define CFG_IPA_HIGH_BANDWIDTH_MBPS_MIN (200)
6546#define CFG_IPA_HIGH_BANDWIDTH_MBPS_MAX (1000)
6547#define CFG_IPA_HIGH_BANDWIDTH_MBPS_DEFAULT (400)
6548
6549#define CFG_IPA_MEDIUM_BANDWIDTH_MBPS "gIPAMediumBandwidthMbps"
6550#define CFG_IPA_MEDIUM_BANDWIDTH_MBPS_MIN (100)
6551#define CFG_IPA_MEDIUM_BANDWIDTH_MBPS_MAX (400)
6552#define CFG_IPA_MEDIUM_BANDWIDTH_MBPS_DEFAULT (200)
6553
6554#define CFG_IPA_LOW_BANDWIDTH_MBPS "gIPALowBandwidthMbps"
6555#define CFG_IPA_LOW_BANDWIDTH_MBPS_MIN (0)
6556#define CFG_IPA_LOW_BANDWIDTH_MBPS_MAX (100)
6557#define CFG_IPA_LOW_BANDWIDTH_MBPS_DEFAULT (100)
6558
6559/*
6560 * Firmware uart print
6561 */
6562#define CFG_ENABLE_FW_UART_PRINT_NAME "gEnablefwprint"
6563#define CFG_ENABLE_FW_UART_PRINT_DISABLE (0)
6564#define CFG_ENABLE_FW_UART_PRINT_ENABLE (1)
6565#define CFG_ENABLE_FW_UART_PRINT_DEFAULT (CFG_ENABLE_FW_UART_PRINT_DISABLE)
6566
6567/*
6568 * Firmware log
6569 */
6570#define CFG_ENABLE_FW_LOG_NAME "gEnablefwlog"
6571#define CFG_ENABLE_FW_LOG_DISABLE (0)
Yuanyuan Liu7a97b8f2017-01-27 10:42:52 -08006572#define CFG_ENABLE_FW_LOG_WMI (1)
6573#define CFG_ENABLE_FW_LOG_DIAG (2)
Ashish Kumar Dhanotiyaf998a582017-02-20 12:20:41 +05306574#define CFG_ENABLE_FW_LOG_MIN (CFG_ENABLE_FW_LOG_DISABLE)
Yuanyuan Liu7a97b8f2017-01-27 10:42:52 -08006575#define CFG_ENABLE_FW_LOG_MAX (CFG_ENABLE_FW_LOG_DIAG)
Yuanyuan Liu7a97b8f2017-01-27 10:42:52 -08006576#define CFG_ENABLE_FW_LOG_DEFAULT (CFG_ENABLE_FW_LOG_WMI)
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08006577
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08006578/* Macro to handle maximum receive AMPDU size configuration */
6579#define CFG_VHT_AMPDU_LEN_EXPONENT_NAME "gVhtAmpduLenExponent"
6580#define CFG_VHT_AMPDU_LEN_EXPONENT_MIN (0)
6581#define CFG_VHT_AMPDU_LEN_EXPONENT_MAX (7)
6582#define CFG_VHT_AMPDU_LEN_EXPONENT_DEFAULT (3)
6583
6584#define CFG_VHT_MPDU_LEN_NAME "gVhtMpduLen"
6585#define CFG_VHT_MPDU_LEN_MIN (0)
6586#define CFG_VHT_MPDU_LEN_MAX (2)
6587#define CFG_VHT_MPDU_LEN_DEFAULT (0)
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08006588
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08006589#define CFG_SAP_MAX_NO_PEERS "gSoftApMaxPeers"
6590#define CFG_SAP_MAX_NO_PEERS_MIN (1)
Naveen Rawatb0c5b6b2017-11-27 17:37:40 -08006591#define CFG_SAP_MAX_NO_PEERS_MAX (SIR_SAP_MAX_NUM_PEERS)
6592#define CFG_SAP_MAX_NO_PEERS_DEFAULT (SIR_SAP_MAX_NUM_PEERS)
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08006593
6594/*
Sen, Devendra9ca8c432017-02-23 15:10:26 +05306595 * <ini>
6596 * gEnableDebugLog - Enable/Disable the Connection related logs
6597 * @Min: 0
6598 * @Max: 0xFF
6599 * @Default: 0x0F
6600 *
6601 * This ini is used to enable/disable the connection related logs
Chandrasekaran, Manishekarb2d9fa12016-04-07 12:00:10 +05306602 * 0x1 - Enable mgmt pkt logs (excpet probe req/rsp, beacons).
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08006603 * 0x2 - Enable EAPOL pkt logs.
6604 * 0x4 - Enable DHCP pkt logs.
Chandrasekaran, Manishekarb2d9fa12016-04-07 12:00:10 +05306605 * 0x8 - Enable mgmt action frames logs.
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08006606 * 0x0 - Disable all the above connection related logs.
Sen, Devendra9ca8c432017-02-23 15:10:26 +05306607 * The default value of 0x0F will enable all the above logs
Chandrasekaran, Manishekarb2d9fa12016-04-07 12:00:10 +05306608 *
Sen, Devendra9ca8c432017-02-23 15:10:26 +05306609 * Related: None
6610 *
6611 * Supported Feature: STA
6612 *
6613 * Usage: Internal/External
6614 *
6615 * </ini>
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08006616 */
Sen, Devendra9ca8c432017-02-23 15:10:26 +05306617
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08006618#define CFG_ENABLE_DEBUG_CONNECT_ISSUE "gEnableDebugLog"
6619#define CFG_ENABLE_DEBUG_CONNECT_ISSUE_MIN (0)
6620#define CFG_ENABLE_DEBUG_CONNECT_ISSUE_MAX (0xFF)
Chandrasekaran, Manishekarb2d9fa12016-04-07 12:00:10 +05306621#define CFG_ENABLE_DEBUG_CONNECT_ISSUE_DEFAULT (0x0F)
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08006622
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08006623/* SAR Thermal limit values for 2g and 5g */
6624
6625#define CFG_SET_TXPOWER_LIMIT2G_NAME "TxPower2g"
6626#define CFG_SET_TXPOWER_LIMIT2G_MIN (0)
6627#define CFG_SET_TXPOWER_LIMIT2G_MAX (30)
Hanumanth Reddy Pothula366fa8e2016-09-07 15:05:17 +05306628#define CFG_SET_TXPOWER_LIMIT2G_DEFAULT (30)
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08006629
6630#define CFG_SET_TXPOWER_LIMIT5G_NAME "TxPower5g"
6631#define CFG_SET_TXPOWER_LIMIT5G_MIN (0)
6632#define CFG_SET_TXPOWER_LIMIT5G_MAX (30)
Hanumanth Reddy Pothula366fa8e2016-09-07 15:05:17 +05306633#define CFG_SET_TXPOWER_LIMIT5G_DEFAULT (30)
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08006634
6635#ifdef QCA_LL_LEGACY_TX_FLOW_CONTROL
Poddar, Siddarthcc250aa2016-12-05 19:21:03 +05306636
6637/*
6638 * <ini>
6639 * TxFlowLowWaterMark - Low watermark for pausing network queues
6640 *
6641 * @Min: 0
6642 * @Max: 1000
6643 * @Default: 300
6644 *
6645 * This ini specifies the low watermark of data packets transmitted
6646 * before pausing netif queues in tx flow path. It is only applicable
6647 * where legacy flow control is used i.e.for Rome.
6648 *
6649 * Related: TxFlowHighWaterMarkOffset, TxFlowMaxQueueDepth,
6650 * TxLbwFlowLowWaterMark, TxLbwFlowHighWaterMarkOffset,
6651 * TxLbwFlowMaxQueueDepth, TxHbwFlowLowWaterMark,
6652 * TxHbwFlowHighWaterMarkOffset, TxHbwFlowMaxQueueDepth
6653 *
6654 * Supported Feature: Dynamic Flow Control
6655 *
6656 * Usage: Internal
6657 *
6658 * </ini>
6659 */
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08006660#define CFG_LL_TX_FLOW_LWM "TxFlowLowWaterMark"
6661#define CFG_LL_TX_FLOW_LWM_MIN (0)
6662#define CFG_LL_TX_FLOW_LWM_MAX (1000)
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08006663#define CFG_LL_TX_FLOW_LWM_DEFAULT (300)
6664
Poddar, Siddarthcc250aa2016-12-05 19:21:03 +05306665/*
6666 * <ini>
6667 * TxFlowHighWaterMarkOffset - High Watermark offset to unpause Netif queues
6668 * @Min: 0
6669 * @Max: 300
6670 * @Default: 94
6671 *
6672 * This ini specifies the offset to upause the netif queues
6673 * when they are paused due to insufficient descriptors as guided by
6674 * ini TxFlowLowWaterMark. It is only applicable where legacy flow control
6675 * is used i.e.for Rome.
6676 *
6677 * Related: TxFlowLowWaterMark, TxFlowMaxQueueDepth,
6678 * TxLbwFlowLowWaterMark, TxLbwFlowHighWaterMarkOffset,
6679 * TxLbwFlowMaxQueueDepth, TxHbwFlowLowWaterMark,
6680 * TxHbwFlowHighWaterMarkOffset, TxHbwFlowMaxQueueDepth
6681 *
6682 * Supported Feature: Dynamic Flow Control
6683 *
6684 * Usage: Internal
6685 *
6686 * </ini>
6687 */
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08006688#define CFG_LL_TX_FLOW_HWM_OFFSET "TxFlowHighWaterMarkOffset"
6689#define CFG_LL_TX_FLOW_HWM_OFFSET_MIN (0)
6690#define CFG_LL_TX_FLOW_HWM_OFFSET_MAX (300)
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08006691#define CFG_LL_TX_FLOW_HWM_OFFSET_DEFAULT (94)
6692
Poddar, Siddarthcc250aa2016-12-05 19:21:03 +05306693/*
6694 * <ini>
6695 * TxFlowMaxQueueDepth - Max pause queue depth.
6696 *
6697 * @Min: 400
6698 * @Max: 3500
6699 * @Default: 1500
6700 *
6701 * This ini specifies the max queue pause depth.It is only applicable
6702 * where legacy flow control is used i.e.for Rome.
6703 *
6704 * Related: TxFlowLowWaterMark, TxFlowHighWaterMarkOffset,
6705 * TxLbwFlowLowWaterMark, TxLbwFlowHighWaterMarkOffset,
6706 * TxLbwFlowMaxQueueDepth, TxHbwFlowLowWaterMark,
6707 * TxHbwFlowHighWaterMarkOffset, TxHbwFlowMaxQueueDepth
6708 *
6709 * Supported Feature: Dynamic Flow Control
6710 *
6711 * Usage: Internal
6712 *
6713 * </ini>
6714 */
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08006715#define CFG_LL_TX_FLOW_MAX_Q_DEPTH "TxFlowMaxQueueDepth"
6716#define CFG_LL_TX_FLOW_MAX_Q_DEPTH_MIN (400)
6717#define CFG_LL_TX_FLOW_MAX_Q_DEPTH_MAX (3500)
6718#define CFG_LL_TX_FLOW_MAX_Q_DEPTH_DEFAULT (1500)
6719
Poddar, Siddarthcc250aa2016-12-05 19:21:03 +05306720/*
6721 * <ini>
6722 * TxLbwFlowLowWaterMark - Low watermark for pausing network queues
6723 * in low bandwidth band
6724 * @Min: 0
6725 * @Max: 1000
6726 * @Default: 450
6727 *
6728 * This ini specifies the low watermark of data packets transmitted
6729 * before pausing netif queues in tx flow path in low bandwidth band.
6730 * It is only applicable where legacy flow control is used i.e.for Rome.
6731 *
6732 * Related: TxFlowLowWaterMark, TxFlowHighWaterMarkOffset,
6733 * TxFlowMaxQueueDepth, TxLbwFlowHighWaterMarkOffset,
6734 * TxLbwFlowMaxQueueDepth, TxHbwFlowLowWaterMark,
6735 * TxHbwFlowHighWaterMarkOffset, TxHbwFlowMaxQueueDepth
6736 *
6737 * Supported Feature: Dynamic Flow Control
6738 *
6739 * Usage: Internal
6740 *
6741 * </ini>
6742 */
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08006743#define CFG_LL_TX_LBW_FLOW_LWM "TxLbwFlowLowWaterMark"
6744#define CFG_LL_TX_LBW_FLOW_LWM_MIN (0)
6745#define CFG_LL_TX_LBW_FLOW_LWM_MAX (1000)
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08006746#define CFG_LL_TX_LBW_FLOW_LWM_DEFAULT (450)
6747
Poddar, Siddarthcc250aa2016-12-05 19:21:03 +05306748/*
6749 * <ini>
6750 * TxLbwFlowHighWaterMarkOffset - High Watermark offset to unpause Netif queues
6751 * in low bandwidth band.
6752 * @Min: 0
6753 * @Max: 300
6754 * @Default: 50
6755 *
6756 * This ini specifies the offset to upause the netif queues
6757 * when they are paused due to insufficient descriptors as guided by
6758 * ini TxLbwFlowLowWaterMark in low bandwidth band. It is only applicable
6759 * where legacy flow control is used i.e.for Rome.
6760 *
6761 * Related: TxFlowLowWaterMark, TxFlowHighWaterMarkOffset,
6762 * TxFlowMaxQueueDepth, TxLbwFlowLowWaterMark,
6763 * TxLbwFlowMaxQueueDepth, TxHbwFlowLowWaterMark,
6764 * TxHbwFlowHighWaterMarkOffset, TxHbwFlowMaxQueueDepth
6765 *
6766 * Supported Feature: Dynamic Flow Control
6767 *
6768 * Usage: Internal
6769 *
6770 * </ini>
6771 */
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08006772#define CFG_LL_TX_LBW_FLOW_HWM_OFFSET "TxLbwFlowHighWaterMarkOffset"
6773#define CFG_LL_TX_LBW_FLOW_HWM_OFFSET_MIN (0)
6774#define CFG_LL_TX_LBW_FLOW_HWM_OFFSET_MAX (300)
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08006775#define CFG_LL_TX_LBW_FLOW_HWM_OFFSET_DEFAULT (50)
6776
Poddar, Siddarthcc250aa2016-12-05 19:21:03 +05306777/*
6778 * <ini>
6779 * TxLbwFlowMaxQueueDepth - Max pause queue depth in low bandwidth band
6780 *
6781 * @Min: 400
6782 * @Max: 3500
6783 * @Default: 750
6784 *
6785 * This ini specifies the max queue pause depth in low bandwidth band.
6786 * It is only applicable where legacy flow control is used i.e.for Rome.
6787 *
6788 * Related: TxFlowLowWaterMark, TxFlowHighWaterMarkOffset,
6789 * TxFlowMaxQueueDepth, TxLbwFlowLowWaterMark,
6790 * TxLbwFlowHighWaterMarkOffset, TxHbwFlowLowWaterMark,
6791 * TxHbwFlowHighWaterMarkOffset, TxHbwFlowMaxQueueDepth
6792 *
6793 * Supported Feature: Dynamic Flow Control
6794 *
6795 * Usage: Internal
6796 *
6797 * </ini>
6798 */
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08006799#define CFG_LL_TX_LBW_FLOW_MAX_Q_DEPTH "TxLbwFlowMaxQueueDepth"
6800#define CFG_LL_TX_LBW_FLOW_MAX_Q_DEPTH_MIN (400)
6801#define CFG_LL_TX_LBW_FLOW_MAX_Q_DEPTH_MAX (3500)
6802#define CFG_LL_TX_LBW_FLOW_MAX_Q_DEPTH_DEFAULT (750)
6803
Poddar, Siddarthcc250aa2016-12-05 19:21:03 +05306804/*
6805 * <ini>
6806 * TxHbwFlowLowWaterMark - Low watermark for pausing network queues
6807 * in high bandwidth band
6808 * @Min: 0
6809 * @Max: 1000
6810 * @Default: 406
6811 *
6812 * This ini specifies the threshold of data packets transmitted
6813 * before pausing netif queues.It is only applicable where
6814 * legacy flow control is used i.e.for Rome.
6815 *
6816 * Related: TxFlowLowWaterMark, TxFlowHighWaterMarkOffset,
6817 * TxFlowMaxQueueDepth, TxLbwFlowLowWaterMark,
6818 * TxLbwFlowHighWaterMarkOffset, TxLbwFlowMaxQueueDepth,
6819 * TxHbwFlowHighWaterMarkOffset, TxHbwFlowMaxQueueDepth
6820 *
6821 * Supported Feature: Dynamic Flow Control
6822 *
6823 * Usage: Internal
6824 *
6825 * </ini>
6826 */
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08006827#define CFG_LL_TX_HBW_FLOW_LWM "TxHbwFlowLowWaterMark"
6828#define CFG_LL_TX_HBW_FLOW_LWM_MIN (0)
6829#define CFG_LL_TX_HBW_FLOW_LWM_MAX (1000)
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08006830#define CFG_LL_TX_HBW_FLOW_LWM_DEFAULT (406)
6831
Poddar, Siddarthcc250aa2016-12-05 19:21:03 +05306832/*
6833 * <ini>
6834 * TxHbwFlowHighWaterMarkOffset - High Watermark offset to unpause Netif queues
6835 * in high bandwidth band.
6836 * @Min: 0
6837 * @Max: 300
6838 * @Default: 94
6839 *
6840 * This ini specifies the offset to upause the netif queues
6841 * when they are paused due to insufficient descriptors as guided by
6842 * ini TxHbwFlowLowWaterMark in high bandwidth band. It is only applicable
6843 * where legacy flow control is used i.e.for Rome.
6844 *
6845 * Related: TxFlowLowWaterMark, TxFlowHighWaterMarkOffset,
6846 * TxFlowMaxQueueDepth, TxLbwFlowLowWaterMark,
6847 * TxLbwFlowHighWaterMarkOffset, TxLbwFlowMaxQueueDepth,
6848 * TxHbwFlowLowWaterMark, TxHbwFlowMaxQueueDepth
6849 *
6850 * Supported Feature: Dynamic Flow Control
6851 *
6852 * Usage: Internal
6853 *
6854 * </ini>
6855 */
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08006856#define CFG_LL_TX_HBW_FLOW_HWM_OFFSET "TxHbwFlowHighWaterMarkOffset"
6857#define CFG_LL_TX_HBW_FLOW_HWM_OFFSET_MIN (0)
6858#define CFG_LL_TX_HBW_FLOW_HWM_OFFSET_MAX (300)
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08006859#define CFG_LL_TX_HBW_FLOW_HWM_OFFSET_DEFAULT (94)
6860
Poddar, Siddarthcc250aa2016-12-05 19:21:03 +05306861/*
6862 * <ini>
6863 * TxHbwFlowMaxQueueDepth - Max pause queue depth in high bandwidth band
6864 * @Min: 4000
6865 * @Max: 3500
6866 * @Default: 1500
6867 *
6868 * This ini specifies the max queue pause depth in high bandwidth band.
6869 * It is only applicable where legacy flow control is used i.e.for Rome.
6870 *
6871 * Related: TxFlowLowWaterMark, TxFlowHighWaterMarkOffset,
6872 * TxFlowMaxQueueDepth, TxLbwFlowLowWaterMark,
6873 * TxLbwFlowHighWaterMarkOffset, TxLbwFlowMaxQueueDepth,
6874 * TxHbwFlowLowWaterMark, TxHbwFlowHighWaterMarkOffset
6875 *
6876 * Supported Feature: Dynamic Flow Control
6877 *
6878 * Usage: Internal
6879 *
6880 * </ini>
6881 */
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08006882#define CFG_LL_TX_HBW_FLOW_MAX_Q_DEPTH "TxHbwFlowMaxQueueDepth"
6883#define CFG_LL_TX_HBW_FLOW_MAX_Q_DEPTH_MIN (400)
6884#define CFG_LL_TX_HBW_FLOW_MAX_Q_DEPTH_MAX (3500)
6885#define CFG_LL_TX_HBW_FLOW_MAX_Q_DEPTH_DEFAULT (1500)
6886#endif /* QCA_LL_LEGACY_TX_FLOW_CONTROL */
6887
6888#ifdef QCA_LL_TX_FLOW_CONTROL_V2
6889
Poddar, Siddarthcc250aa2016-12-05 19:21:03 +05306890/*
6891 * <ini>
6892 * TxFlowStopQueueThreshold - Stop queue Threshold to pause
6893 * Netif queues when it reaches
6894 * @Min: 0
6895 * @Max: 50
6896 * @Default: 15
6897 *
6898 * This ini specifies the threshold of data packets transmitted
6899 * before pausing netif queues.
6900 *
6901 * Related: TxFlowStartQueueOffset
6902 *
6903 * Supported Feature: Dynamic Flow Control
6904 *
6905 * Usage: Internal
6906 *
6907 * </ini>
6908 */
6909#define CFG_LL_TX_FLOW_STOP_QUEUE_TH "TxFlowStopQueueThreshold"
6910#define CFG_LL_TX_FLOW_STOP_QUEUE_TH_DEFAULT (15)
6911#define CFG_LL_TX_FLOW_STOP_QUEUE_TH_MIN (0)
6912#define CFG_LL_TX_FLOW_STOP_QUEUE_TH_MAX (50)
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08006913
Poddar, Siddarthcc250aa2016-12-05 19:21:03 +05306914/*
6915 * <ini>
6916 * TxFlowStartQueueOffset - Start queue offset to unpause
6917 * Netif queues
6918 * @Min: 0
6919 * @Max: 30
6920 * @Default: 11
6921 *
6922 * This ini specifies the offset to upause the netif queues
6923 * when they are paused due to insufficient descriptors as guided by
6924 * ini TxFlowStopQueueThreshold.
6925 *
6926 * Related: TxFlowStopQueueThreshold
6927 *
6928 * Supported Feature: Dynamic Flow Control
6929 *
6930 * Usage: Internal
6931 *
6932 * </ini>
6933 */
6934#define CFG_LL_TX_FLOW_START_QUEUE_OFFSET "TxFlowStartQueueOffset"
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08006935#define CFG_LL_TX_FLOW_START_QUEUE_OFFSET_DEFAULT (10)
Poddar, Siddarthcc250aa2016-12-05 19:21:03 +05306936#define CFG_LL_TX_FLOW_START_QUEUE_OFFSET_MIN (0)
6937#define CFG_LL_TX_FLOW_START_QUEUE_OFFSET_MAX (30)
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08006938
6939#endif /* QCA_LL_TX_FLOW_CONTROL_V2 */
6940
6941#define CFG_SAP_MAX_OFFLOAD_PEERS "gMaxOffloadPeers"
6942#define CFG_SAP_MAX_OFFLOAD_PEERS_MIN (2)
6943#define CFG_SAP_MAX_OFFLOAD_PEERS_MAX (5)
6944#define CFG_SAP_MAX_OFFLOAD_PEERS_DEFAULT (2)
6945
6946#define CFG_SAP_MAX_OFFLOAD_REORDER_BUFFS "gMaxOffloadReorderBuffs"
6947#define CFG_SAP_MAX_OFFLOAD_REORDER_BUFFS_MIN (0)
6948#define CFG_SAP_MAX_OFFLOAD_REORDER_BUFFS_MAX (3)
6949#define CFG_SAP_MAX_OFFLOAD_REORDER_BUFFS_DEFAULT (2)
6950
6951#ifdef FEATURE_WLAN_RA_FILTERING
6952#define CFG_RA_FILTER_ENABLE_NAME "gRAFilterEnable"
6953#define CFG_RA_FILTER_ENABLE_MIN (0)
6954#define CFG_RA_FILTER_ENABLE_MAX (1)
Dustin Brown87c44282016-10-06 10:17:13 -07006955#define CFG_RA_FILTER_ENABLE_DEFAULT (1)
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08006956
6957#define CFG_RA_RATE_LIMIT_INTERVAL_NAME "gRArateLimitInterval"
6958#define CFG_RA_RATE_LIMIT_INTERVAL_MIN (60)
6959#define CFG_RA_RATE_LIMIT_INTERVAL_MAX (3600)
6960#define CFG_RA_RATE_LIMIT_INTERVAL_DEFAULT (60) /*60 SEC */
6961#endif
6962
Sen, Devendra9ca8c432017-02-23 15:10:26 +05306963/*
6964 * <ini>
6965 * gIgnorePeerErpInfo - Used for ignore peer infrormation
6966 * @Min: 0
6967 * @Max: 1
6968 * @Default: 0
6969 *
6970 * This ini is used to ignore default peer info
6971 *
6972 * Related: None
6973 *
6974 * Supported Feature: STA
6975 *
6976 * Usage: Internal/External
6977 *
6978 * </ini>
6979 */
6980
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08006981#define CFG_IGNORE_PEER_ERP_INFO_NAME "gIgnorePeerErpInfo"
6982#define CFG_IGNORE_PEER_ERP_INFO_MIN (0)
6983#define CFG_IGNORE_PEER_ERP_INFO_MAX (1)
6984#define CFG_IGNORE_PEER_ERP_INFO_DEFAULT (0)
6985
Sen, Devendra9ca8c432017-02-23 15:10:26 +05306986/*
6987 * <ini>
6988 * gEnableMemoryDebug - Enables the memory debug
6989 * @Min: 0
6990 * @Max: 1
6991 * @Default: 1
6992 *
6993 * This ini is used to enable default memory debug
6994 *
6995 * Related: None
6996 *
6997 * Supported Feature: STA
6998 *
6999 * Usage: Internal/External
7000 *
7001 * </ini>
7002 */
7003
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08007004#ifdef MEMORY_DEBUG
7005#define CFG_ENABLE_MEMORY_DEBUG_NAME "gEnableMemoryDebug"
7006#define CFG_ENABLE_MEMORY_DEBUG_MIN (0)
7007#define CFG_ENABLE_MEMORY_DEBUG_MAX (1)
7008#define CFG_ENABLE_MEMORY_DEBUG_DEFAULT (1)
7009#endif
7010
Ravi Kumar Bokka05c14e52017-03-27 14:48:23 +05307011/*
7012 * <ini>
7013 * g_auto_detect_power_failure_mode - auto detect power save failure mode
Hanumanth Reddy Pothulaab395952017-09-05 19:12:26 +05307014 * @Min: PMO_FW_TO_CRASH_ON_PWR_FAILURE
7015 * @Max: PMO_AUTO_PWR_FAILURE_DETECT_DISABLE
7016 * @Default: PMO_FW_TO_CRASH_ON_PWR_FAILURE
Ravi Kumar Bokka05c14e52017-03-27 14:48:23 +05307017 *
7018 * This ini specifies the behavior of FW in case of
7019 * CHIP_POWER_SAVE_FAIL_DETECTED event
7020 *
7021 * Usage: External
7022 *
7023 * </ini>
7024 */
Hanumanth Reddy Pothulaab395952017-09-05 19:12:26 +05307025#define CFG_AUTO_DETECT_POWER_FAIL_MODE_NAME "g_auto_detect_power_failure_mode"
7026#define CFG_AUTO_DETECT_POWER_FAIL_MODE_DEFAULT (PMO_FW_TO_CRASH_ON_PWR_FAILURE)
7027#define CFG_AUTO_DETECT_POWER_FAIL_MODE_MIN (PMO_FW_TO_CRASH_ON_PWR_FAILURE)
7028#define CFG_AUTO_DETECT_POWER_FAIL_MODE_MAX \
7029 (PMO_AUTO_PWR_FAILURE_DETECT_DISABLE)
Deepak Dhamdhere612392c2016-08-28 02:56:51 -07007030/*
7031 * <ini>
7032 * gMaxAmsduNum - Max number of MSDU's in aggregate
7033 * @Min: 0
7034 * @Max: 3
7035 * @Default: 1
7036 * gMaxAmsduNum is the number of MSDU's transmitted in the 11n aggregate
7037 * frame. Setting it to a value larger than 1 enables transmit aggregation.
7038 * It is a PHY parameter that applies to all vdev's in firmware.
7039 *
7040 * Supported Feature: 11n aggregation
7041 *
7042 * Usage: Internal
7043 *
7044 * </ini>
7045 */
7046#define CFG_MAX_AMSDU_NUM_NAME "gMaxAmsduNum"
7047#define CFG_MAX_AMSDU_NUM_MIN (0)
7048#define CFG_MAX_AMSDU_NUM_MAX (3)
7049#define CFG_MAX_AMSDU_NUM_DEFAULT (1)
Sen, Devendra9ca8c432017-02-23 15:10:26 +05307050
7051/*
7052 * <ini>
7053 * gInitialDwellTime - Used to set initial dwell time
7054 * @Min: 0
7055 * @Max: 0
7056 * @Default: 100
7057 *
7058 * This ini is used to set default initial dwell time
7059 *
7060 * Related: None
7061 *
7062 * Supported Feature: STA
7063 *
7064 * Usage: Internal/External
7065 *
7066 * </ini>
7067 */
7068
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08007069#define CFG_INITIAL_DWELL_TIME_NAME "gInitialDwellTime"
7070#define CFG_INITIAL_DWELL_TIME_DEFAULT (0)
7071#define CFG_INITIAL_DWELL_TIME_MIN (0)
7072#define CFG_INITIAL_DWELL_TIME_MAX (100)
7073
Sen, Devendra9ca8c432017-02-23 15:10:26 +05307074/*
7075 * <ini>
7076 * gInitialScanNoDFSChnl - WLAN skips scanning the DFS channels
7077 * @Min: 0
7078 * @Max: 0
7079 * @Default: 1
7080 *
7081 * This ini is used to set for the first scan after driver
7082 *
7083 * Related: None
7084 *
7085 * Supported Feature: STA
7086 *
7087 * Usage: Internal/External
7088 *
7089 * </ini>
7090 */
7091
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08007092#define CFG_INITIAL_SCAN_NO_DFS_CHNL_NAME "gInitialScanNoDFSChnl"
7093#define CFG_INITIAL_SCAN_NO_DFS_CHNL_DEFAULT (0)
7094#define CFG_INITIAL_SCAN_NO_DFS_CHNL_MIN (0)
7095#define CFG_INITIAL_SCAN_NO_DFS_CHNL_MAX (1)
7096
Sen, Devendra9ca8c432017-02-23 15:10:26 +05307097/*
7098 * <ini>
7099 * gAllowDFSChannelRoam - Allow dfs channel in roam
7100 * @Min: 0
7101 * @Max: 1
7102 * @Default: 2
7103 *
7104 * This ini is used to set default dfs channel
7105 *
7106 * Related: None
7107 *
7108 * Supported Feature: STA
7109 *
7110 * Usage: Internal/External
7111 *
7112 * </ini>
7113 */
7114
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08007115#define CFG_ROAMING_DFS_CHANNEL_NAME "gAllowDFSChannelRoam"
7116#define CFG_ROAMING_DFS_CHANNEL_DISABLED (0)
7117#define CFG_ROAMING_DFS_CHANNEL_ENABLED_NORMAL (1)
7118#define CFG_ROAMING_DFS_CHANNEL_ENABLED_ACTIVE (2)
7119#define CFG_ROAMING_DFS_CHANNEL_MIN (CFG_ROAMING_DFS_CHANNEL_DISABLED)
7120#define CFG_ROAMING_DFS_CHANNEL_MAX (CFG_ROAMING_DFS_CHANNEL_ENABLED_ACTIVE)
7121#define CFG_ROAMING_DFS_CHANNEL_DEFAULT (CFG_ROAMING_DFS_CHANNEL_DISABLED)
7122
7123#ifdef MSM_PLATFORM
7124#define CFG_BUS_BANDWIDTH_HIGH_THRESHOLD "gBusBandwidthHighThreshold"
7125#define CFG_BUS_BANDWIDTH_HIGH_THRESHOLD_DEFAULT (2000)
7126#define CFG_BUS_BANDWIDTH_HIGH_THRESHOLD_MIN (0)
7127#define CFG_BUS_BANDWIDTH_HIGH_THRESHOLD_MAX (4294967295UL)
7128
7129#define CFG_BUS_BANDWIDTH_MEDIUM_THRESHOLD "gBusBandwidthMediumThreshold"
7130#define CFG_BUS_BANDWIDTH_MEDIUM_THRESHOLD_DEFAULT (500)
7131#define CFG_BUS_BANDWIDTH_MEDIUM_THRESHOLD_MIN (0)
7132#define CFG_BUS_BANDWIDTH_MEDIUM_THRESHOLD_MAX (4294967295UL)
7133
7134#define CFG_BUS_BANDWIDTH_LOW_THRESHOLD "gBusBandwidthLowThreshold"
7135#define CFG_BUS_BANDWIDTH_LOW_THRESHOLD_DEFAULT (150)
7136#define CFG_BUS_BANDWIDTH_LOW_THRESHOLD_MIN (0)
7137#define CFG_BUS_BANDWIDTH_LOW_THRESHOLD_MAX (4294967295UL)
7138
7139#define CFG_BUS_BANDWIDTH_COMPUTE_INTERVAL "gBusBandwidthComputeInterval"
7140#define CFG_BUS_BANDWIDTH_COMPUTE_INTERVAL_DEFAULT (100)
7141#define CFG_BUS_BANDWIDTH_COMPUTE_INTERVAL_MIN (0)
7142#define CFG_BUS_BANDWIDTH_COMPUTE_INTERVAL_MAX (10000)
Prakash Manjunathappae73e3b52018-02-27 18:56:22 -08007143
7144/*
7145 * <ini>
7146 * gEnableTcpLimitOutput - Control to enable TCP limit output byte
7147 * @Min: 0
7148 * @Max: 1
7149 * @Default: 1
7150 *
7151 * This ini is used to enable dynamic configuration of TCP limit output bytes
7152 * tcp_limit_output_bytes param. Enabling this will let driver post message to
7153 * cnss-daemon, accordingly cnss-daemon will modify the tcp_limit_output_bytes.
7154 *
7155 * Supported Feature: Tcp limit output bytes
7156 *
7157 * Usage: Internal
7158 *
7159 * </ini>
7160 */
7161#define CFG_ENABLE_TCP_LIMIT_OUTPUT "gTcpLimitOutputEnable"
7162#define CFG_ENABLE_TCP_LIMIT_OUTPUT_DEFAULT (1)
7163#define CFG_ENABLE_TCP_LIMIT_OUTPUT_MIN (0)
7164#define CFG_ENABLE_TCP_LIMIT_OUTPUT_MAX (1)
7165
Mohit Khanna6272fb682017-04-13 09:34:36 -07007166/*
7167 * <ini>
7168 * gTcpAdvWinScaleEnable - Control to enable TCP adv window scaling
7169 * @Min: -0
7170 * @Max: 1
7171 * @Default: 1
7172 *
7173 * This ini is used to enable dynamic configuration of TCP adv window scaling system parameter.
7174 *
7175 * Supported Feature: Tcp Advance Window Scaling
7176 *
7177 * Usage: Internal
7178 *
7179 * </ini>
7180 */
7181#define CFG_ENABLE_TCP_ADV_WIN_SCALE "gTcpAdvWinScaleEnable"
7182#define CFG_ENABLE_TCP_ADV_WIN_SCALE_DEFAULT (1)
7183#define CFG_ENABLE_TCP_ADV_WIN_SCALE_MIN (0)
7184#define CFG_ENABLE_TCP_ADV_WIN_SCALE_MAX (1)
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08007185
Ravi Joshie2331e82015-07-01 18:18:54 -07007186/*
Poddar, Siddarthcc250aa2016-12-05 19:21:03 +05307187 * <ini>
7188 * gTcpDelAckEnable - Control to enable Dynamic Configuration of Tcp Delayed Ack
7189 * @Min: 0
7190 * @Max: 1
7191 * @Default: 1
7192 *
7193 * This ini is used to enable Dynamic Configuration of Tcp Delayed Ack
7194 *
7195 * Related: gTcpDelAckThresholdHigh, gTcpDelAckThresholdLow,
7196 * gTcpDelAckTimerCount
7197 *
7198 * Supported Feature: Tcp Delayed Ack
7199 *
7200 * Usage: Internal
7201 *
7202 * </ini>
Ravi Joshie2331e82015-07-01 18:18:54 -07007203 */
7204#define CFG_ENABLE_TCP_DELACK "gTcpDelAckEnable"
7205#define CFG_ENABLE_TCP_DELACK_DEFAULT (1)
7206#define CFG_ENABLE_TCP_DELACK_MIN (0)
7207#define CFG_ENABLE_TCP_DELACK_MAX (1)
7208
Poddar, Siddarthcc250aa2016-12-05 19:21:03 +05307209
7210/*
7211 * <ini>
7212 * gTcpDelAckThresholdHigh - High Threshold inorder to trigger TCP Del Ack
7213 * indication
7214 * @Min: 0
7215 * @Max: 16000
7216 * @Default: 500
7217 *
7218 * This ini is used to mention the High Threshold inorder to trigger TCP Del Ack
7219 * indication i.e the threshold of packets received over a period of 100 ms.
7220 * i.e to have a low RX throughput requirement
7221 * Related: gTcpDelAckEnable, gTcpDelAckThresholdLow, gTcpDelAckTimerCount
7222 *
7223 * Supported Feature: Tcp Delayed Ack
7224 *
7225 * Usage: Internal
7226 *
7227 * </ini>
7228 */
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08007229#define CFG_TCP_DELACK_THRESHOLD_HIGH "gTcpDelAckThresholdHigh"
7230#define CFG_TCP_DELACK_THRESHOLD_HIGH_DEFAULT (500)
7231#define CFG_TCP_DELACK_THRESHOLD_HIGH_MIN (0)
7232#define CFG_TCP_DELACK_THRESHOLD_HIGH_MAX (16000)
7233
Poddar, Siddarthcc250aa2016-12-05 19:21:03 +05307234/*
7235 * <ini>
7236 * gTcpDelAckThresholdLow - Low Threshold inorder to trigger TCP Del Ack
7237 * indication
7238 * @Min: 0
7239 * @Max: 10000
7240 * @Default: 1000
7241 *
7242 * This ini is used to mention the Low Threshold inorder to trigger TCP Del Ack
7243 * indication i.e the threshold of packets received over a period of 100 ms.
7244 * i.e to have a low RX throughput requirement
7245 *
7246 * Related: gTcpDelAckEnable, gTcpDelAckThresholdHigh, gTcpDelAckTimerCount
7247 *
7248 * Supported Feature: Tcp Delayed Ack
7249 *
7250 * Usage: Internal
7251 *
7252 * </ini>
7253 */
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08007254#define CFG_TCP_DELACK_THRESHOLD_LOW "gTcpDelAckThresholdLow"
7255#define CFG_TCP_DELACK_THRESHOLD_LOW_DEFAULT (1000)
7256#define CFG_TCP_DELACK_THRESHOLD_LOW_MIN (0)
7257#define CFG_TCP_DELACK_THRESHOLD_LOW_MAX (10000)
Mohit Khannae71e2262015-11-10 09:37:24 -08007258
Poddar, Siddarthcc250aa2016-12-05 19:21:03 +05307259/*
7260 * <ini>
7261 * gTcpDelAckTimerCount - Del Ack Timer Count inorder to trigger TCP Del Ack
7262 * indication
7263 * @Min: 1
7264 * @Max: 1000
7265 * @Default: 30
7266 *
7267 * This ini is used to mention the Del Ack Timer Count inorder to
7268 * trigger TCP Del Ack indication i.e number of 100 ms periods
7269 *
7270 * Related: gTcpDelAckEnable, gTcpDelAckThresholdHigh, gTcpDelAckThresholdLow
7271 *
7272 * Supported Feature: Tcp Delayed Ack
7273 *
7274 * Usage: Internal
7275 *
7276 * </ini>
7277 */
Ravi Joshib89e7f72016-09-07 13:43:15 -07007278#define CFG_TCP_DELACK_TIMER_COUNT "gTcpDelAckTimerCount"
7279#define CFG_TCP_DELACK_TIMER_COUNT_DEFAULT (30)
7280#define CFG_TCP_DELACK_TIMER_COUNT_MIN (1)
7281#define CFG_TCP_DELACK_TIMER_COUNT_MAX (1000)
7282
7283
Poddar, Siddarthcc250aa2016-12-05 19:21:03 +05307284/*
7285 * <ini>
7286 * gTcpTxHighTputThreshold - High Threshold inorder to trigger High
7287 * Tx Throughput requirement.
7288 * @Min: 0
7289 * @Max: 16000
7290 * @Default: 500
7291 *
7292 * This ini specifies the threshold of packets transmitted
Mohit Khannae71e2262015-11-10 09:37:24 -08007293 * over a period of 100 ms beyond which TCP can be considered to have a high
7294 * TX throughput requirement. The driver uses this condition to tweak TCP TX
Poddar, Siddarthcc250aa2016-12-05 19:21:03 +05307295 * specific parameters (via cnss-daemon)
7296 *
7297 * Supported Feature: To tweak TCP TX n/w parameters
7298 *
7299 * Usage: Internal
7300 *
7301 * </ini>
Mohit Khannae71e2262015-11-10 09:37:24 -08007302 */
7303#define CFG_TCP_TX_HIGH_TPUT_THRESHOLD_NAME "gTcpTxHighTputThreshold"
7304#define CFG_TCP_TX_HIGH_TPUT_THRESHOLD_DEFAULT (500)
7305#define CFG_TCP_TX_HIGH_TPUT_THRESHOLD_MIN (0)
7306#define CFG_TCP_TX_HIGH_TPUT_THRESHOLD_MAX (16000)
7307
Mohit Khannaca4173b2017-09-12 21:52:19 -07007308/*
7309 * <ini>
7310 * periodic_stats_display_time - time(seconds) after which stats will be printed
7311 * @Min: 0
7312 * @Max: 256
7313 * @Default: 10
7314 *
7315 * This values specifies the recurring time period after which stats will be
7316 * printed in wlan driver logs.
7317 *
7318 * Usage: Internal / External
7319 *
7320 * </ini>
7321 */
7322#define CFG_PERIODIC_STATS_DISPLAY_TIME_NAME "periodic_stats_display_time"
7323#define CFG_PERIODIC_STATS_DISPLAY_TIME_DEFAULT (10)
7324#define CFG_PERIODIC_STATS_DISPLAY_TIME_MIN (0)
7325#define CFG_PERIODIC_STATS_DISPLAY_TIME_MAX (256)
7326
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08007327#endif /* MSM_PLATFORM */
7328
7329#ifdef WLAN_FEATURE_11W
Abhishek Singh2f810492016-12-01 11:39:39 +05307330/*
7331 * <ini>
7332 * pmfSaQueryMaxRetries - Control PMF SA query retries for SAP
7333 * @Min: 0
7334 * @Max: 20
7335 * @Default: 5
7336 *
7337 * This ini to set the number of PMF SA query retries for SAP
7338 *
7339 * Related: None.
7340 *
7341 * Supported Feature: PMF(11W)
7342 *
7343 * Usage: Internal/External
7344 *
7345 * </ini>
7346 */
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08007347#define CFG_PMF_SA_QUERY_MAX_RETRIES_NAME "pmfSaQueryMaxRetries"
7348#define CFG_PMF_SA_QUERY_MAX_RETRIES_DEFAULT (5)
7349#define CFG_PMF_SA_QUERY_MAX_RETRIES_MIN (0)
7350#define CFG_PMF_SA_QUERY_MAX_RETRIES_MAX (20)
7351
Abhishek Singh2f810492016-12-01 11:39:39 +05307352/*
7353 * <ini>
7354 * pmfSaQueryRetryInterval - Control PMF SA query retry interval
7355 * for SAP in ms
7356 * @Min: 0
7357 * @Max: 2000
7358 * @Default: 200
7359 *
7360 * This ini to set the PMF SA query retry interval for SAP in ms
7361 *
7362 * Related: None.
7363 *
7364 * Supported Feature: PMF(11W)
7365 *
7366 * Usage: Internal/External
7367 *
7368 * </ini>
7369 */
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08007370#define CFG_PMF_SA_QUERY_RETRY_INTERVAL_NAME "pmfSaQueryRetryInterval"
7371#define CFG_PMF_SA_QUERY_RETRY_INTERVAL_DEFAULT (200)
7372#define CFG_PMF_SA_QUERY_RETRY_INTERVAL_MIN (0)
7373#define CFG_PMF_SA_QUERY_RETRY_INTERVAL_MAX (2000)
7374#endif
7375
Nitesh Shah03161d12016-12-06 18:30:12 +05307376/*
7377 * <ini>
7378 * gMaxConcurrentActiveSessions - Maximum number of concurrent connections.
7379 * @Min: 1
7380 * @Max: 4
7381 * @Default: 3
7382 *
7383 * This ini is used to configure the maximum number of concurrent connections.
7384 *
7385 * Related: None.
7386 *
7387 * Supported Feature: Concurrency
7388 *
7389 * Usage: Internal/External
7390 *
7391 * </ini>
7392 */
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08007393#define CFG_MAX_CONCURRENT_CONNECTIONS_NAME "gMaxConcurrentActiveSessions"
Tushnim Bhattacharyyae67bfc72016-01-27 11:47:37 -08007394#define CFG_MAX_CONCURRENT_CONNECTIONS_DEFAULT (3)
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08007395#define CFG_MAX_CONCURRENT_CONNECTIONS_MIN (1)
7396#define CFG_MAX_CONCURRENT_CONNECTIONS_MAX (4)
7397
Sen, Devendra9ca8c432017-02-23 15:10:26 +05307398/*
7399 * <ini>
7400 * gIgnoreCAC - Used to ignore CAC
7401 * @Min: 0
7402 * @Max: 1
7403 * @Default: 0
7404 *
7405 * This ini is used to set default CAC
7406 *
7407 * Related: None
7408 *
7409 * Supported Feature: STA
7410 *
7411 * Usage: Internal/External
7412 *
7413 * </ini>
7414 */
7415
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08007416#define CFG_IGNORE_CAC_NAME "gIgnoreCAC"
7417#define CFG_IGNORE_CAC_MIN (0)
7418#define CFG_IGNORE_CAC_MAX (1)
7419#define CFG_IGNORE_CAC_DEFAULT (0)
7420
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08007421#define CFG_DFS_RADAR_PRI_MULTIPLIER_NAME "gDFSradarMappingPriMultiplier"
7422#define CFG_DFS_RADAR_PRI_MULTIPLIER_DEFAULT (4)
7423#define CFG_DFS_RADAR_PRI_MULTIPLIER_MIN (0)
7424#define CFG_DFS_RADAR_PRI_MULTIPLIER_MAX (10)
Sen, Devendra9ca8c432017-02-23 15:10:26 +05307425
7426/*
7427 * <ini>
7428 * gReorderOffloadSupported - Packet reordering offload to firmware
7429 * @Min: 0
7430 * @Max: 1
7431 * @Default: 0
7432 *
7433 * This ini is used to set default Packet reordering
7434 *
7435 * Related: None
7436 *
7437 * Supported Feature: STA
7438 *
7439 * Usage: Internal/External
7440 *
7441 * </ini>
7442 */
7443
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08007444#define CFG_REORDER_OFFLOAD_SUPPORT_NAME "gReorderOffloadSupported"
7445#define CFG_REORDER_OFFLOAD_SUPPORT_MIN (0)
7446#define CFG_REORDER_OFFLOAD_SUPPORT_MAX (1)
Kiran Kumar Lokere52d8dc32016-12-05 19:20:40 -08007447#define CFG_REORDER_OFFLOAD_SUPPORT_DEFAULT (1)
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08007448
Yun Parkde380782016-08-17 16:26:54 -07007449/* IpaUcTxBufCount should be power of 2 */
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08007450#define CFG_IPA_UC_TX_BUF_COUNT_NAME "IpaUcTxBufCount"
7451#define CFG_IPA_UC_TX_BUF_COUNT_MIN (0)
7452#define CFG_IPA_UC_TX_BUF_COUNT_MAX (2048)
7453#define CFG_IPA_UC_TX_BUF_COUNT_DEFAULT (512)
7454
7455#define CFG_IPA_UC_TX_BUF_SIZE_NAME "IpaUcTxBufSize"
7456#define CFG_IPA_UC_TX_BUF_SIZE_MIN (0)
7457#define CFG_IPA_UC_TX_BUF_SIZE_MAX (4096)
7458#define CFG_IPA_UC_TX_BUF_SIZE_DEFAULT (2048)
7459
Yun Parkde380782016-08-17 16:26:54 -07007460/* IpaUcRxIndRingCount should be power of 2 */
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08007461#define CFG_IPA_UC_RX_IND_RING_COUNT_NAME "IpaUcRxIndRingCount"
7462#define CFG_IPA_UC_RX_IND_RING_COUNT_MIN (0)
7463#define CFG_IPA_UC_RX_IND_RING_COUNT_MAX (2048)
7464#define CFG_IPA_UC_RX_IND_RING_COUNT_DEFAULT (1024)
7465
7466#define CFG_IPA_UC_TX_PARTITION_BASE_NAME "IpaUcTxPartitionBase"
7467#define CFG_IPA_UC_TX_PARTITION_BASE_MIN (0)
7468#define CFG_IPA_UC_TX_PARTITION_BASE_MAX (9000)
7469#define CFG_IPA_UC_TX_PARTITION_BASE_DEFAULT (3000)
7470
7471#ifdef WLAN_LOGGING_SOCK_SVC_ENABLE
7472/* Enable WLAN Logging to app space */
7473#define CFG_WLAN_LOGGING_SUPPORT_NAME "wlanLoggingEnable"
7474#define CFG_WLAN_LOGGING_SUPPORT_ENABLE (1)
7475#define CFG_WLAN_LOGGING_SUPPORT_DISABLE (0)
7476#define CFG_WLAN_LOGGING_SUPPORT_DEFAULT (1)
7477
Srinivas Girigowda8187e792017-03-03 11:50:59 -08007478/* Enable forwarding the driver logs to kmsg console */
7479#define CFG_WLAN_LOGGING_CONSOLE_SUPPORT_NAME "wlanLoggingToConsole"
7480#define CFG_WLAN_LOGGING_CONSOLE_SUPPORT_ENABLE (1)
7481#define CFG_WLAN_LOGGING_CONSOLE_SUPPORT_DISABLE (0)
7482#define CFG_WLAN_LOGGING_CONSOLE_SUPPORT_DEFAULT (1)
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08007483#endif /* WLAN_LOGGING_SOCK_SVC_ENABLE */
7484
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08007485#ifdef WLAN_FEATURE_LPSS
7486#define CFG_ENABLE_LPASS_SUPPORT "gEnableLpassSupport"
7487#define CFG_ENABLE_LPASS_SUPPORT_DEFAULT (0)
7488#define CFG_ENABLE_LPASS_SUPPORT_MIN (0)
7489#define CFG_ENABLE_LPASS_SUPPORT_MAX (1)
7490#endif
7491
7492/*
7493 * NaN feature support configuration
7494 * gEnableNanSupport = 0 means NaN is not supported
7495 * gEnableNanSupport = 1 means NaN is supported
7496 */
7497#ifdef WLAN_FEATURE_NAN
7498#define CFG_ENABLE_NAN_SUPPORT "gEnableNanSupport"
7499#define CFG_ENABLE_NAN_SUPPORT_DEFAULT (0)
7500#define CFG_ENABLE_NAN_SUPPORT_MIN (0)
7501#define CFG_ENABLE_NAN_SUPPORT_MAX (1)
7502#endif
7503
7504#define CFG_ENABLE_SELF_RECOVERY "gEnableSelfRecovery"
7505#define CFG_ENABLE_SELF_RECOVERY_MIN (0)
7506#define CFG_ENABLE_SELF_RECOVERY_MAX (1)
7507#define CFG_ENABLE_SELF_RECOVERY_DEFAULT (0)
7508
7509#define CFG_ENABLE_SAP_SUSPEND "gEnableSapSuspend"
7510#define CFG_ENABLE_SAP_SUSPEND_MIN (0)
7511#define CFG_ENABLE_SAP_SUSPEND_MAX (1)
7512#define CFG_ENABLE_SAP_SUSPEND_DEFAULT (1)
7513
Sen, Devendra9ca8c432017-02-23 15:10:26 +05307514/*
7515 * <ini>
7516 * gEnableDeauthToDisassocMap - Enables deauth to disassoc map
7517 * @Min: 0
7518 * @Max: 1
7519 * @Default: 0
7520 *
7521 * This ini is used to set default disassoc map
7522 *
7523 * Related: None
7524 *
7525 * Supported Feature: STA
7526 *
7527 * Usage: Internal/External
7528 *
7529 * </ini>
7530 */
7531
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08007532#define CFG_ENABLE_DEAUTH_TO_DISASSOC_MAP_NAME "gEnableDeauthToDisassocMap"
7533#define CFG_ENABLE_DEAUTH_TO_DISASSOC_MAP_MIN (0)
7534#define CFG_ENABLE_DEAUTH_TO_DISASSOC_MAP_MAX (1)
7535#define CFG_ENABLE_DEAUTH_TO_DISASSOC_MAP_DEFAULT (0)
7536
7537#ifdef DHCP_SERVER_OFFLOAD
7538#define CFG_DHCP_SERVER_OFFLOAD_SUPPORT_NAME "gDHCPServerOffloadEnable"
7539#define CFG_DHCP_SERVER_OFFLOAD_SUPPORT_MIN (0)
7540#define CFG_DHCP_SERVER_OFFLOAD_SUPPORT_MAX (1)
7541#define CFG_DHCP_SERVER_OFFLOAD_SUPPORT_DEFAULT (CFG_DHCP_SERVER_OFFLOAD_SUPPORT_MIN)
7542
7543#define CFG_DHCP_SERVER_OFFLOAD_NUM_CLIENT_NAME "gDHCPMaxNumClients"
7544#define CFG_DHCP_SERVER_OFFLOAD_NUM_CLIENT_MIN (1)
7545#define CFG_DHCP_SERVER_OFFLOAD_NUM_CLIENT_MAX (8)
7546#define CFG_DHCP_SERVER_OFFLOAD_NUM_CLIENT_DEFAULT (CFG_DHCP_SERVER_OFFLOAD_NUM_CLIENT_MAX)
7547
7548#define CFG_DHCP_SERVER_IP_NAME "gDHCPServerIP"
7549#define CFG_DHCP_SERVER_IP_DEFAULT ""
7550#endif /* DHCP_SERVER_OFFLOAD */
7551
7552/*
Sen, Devendra9ca8c432017-02-23 15:10:26 +05307553 * <ini>
7554 * gSendDeauthBeforeCon - It will send deauth before connection
7555 * @Min: 0
7556 * @Max: 1
7557 * @Default: 0
7558 *
7559 * This ini is used to set default DeauthBeforeCon
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08007560 * If last disconnection was due to HB failure and we reconnect
7561 * to same AP next time, send Deauth before starting connection
Sen, Devendra9ca8c432017-02-23 15:10:26 +05307562 *
7563 * Related: None
7564 *
7565 * Supported Feature: STA
7566 *
7567 * Usage: Internal/External
7568 *
7569 * </ini>
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08007570 */
Sen, Devendra9ca8c432017-02-23 15:10:26 +05307571
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08007572#define CFG_ENABLE_DEAUTH_BEFORE_CONNECTION "gSendDeauthBeforeCon"
7573#define CFG_ENABLE_DEAUTH_BEFORE_CONNECTION_MIN (0)
7574#define CFG_ENABLE_DEAUTH_BEFORE_CONNECTION_MAX (1)
7575#define CFG_ENABLE_DEAUTH_BEFORE_CONNECTION_DEFAULT (0)
7576
7577/*
Nitesh Shah03161d12016-12-06 18:30:12 +05307578 * <ini>
7579 * gEnableCustomConcRule1 - Enable custom concurrency rule1.
7580 * @Min: 0
7581 * @Max: 1
7582 * @Default: 0
7583 *
7584 * This ini is used to enable/disable custom concurrency rule1.
7585 * If SAP comes up first and STA comes up later then SAP needs to follow STA's
7586 * channel.
7587 *
7588 * Related: None.
7589 *
7590 * Supported Feature: Concurrency
7591 *
7592 * Usage: Internal/External
7593 *
7594 * </ini>
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08007595 */
7596#define CFG_ENABLE_CUSTOM_CONC_RULE1_NAME "gEnableCustomConcRule1"
7597#define CFG_ENABLE_CUSTOM_CONC_RULE1_NAME_MIN (0)
7598#define CFG_ENABLE_CUSTOM_CONC_RULE1_NAME_MAX (1)
7599#define CFG_ENABLE_CUSTOM_CONC_RULE1_NAME_DEFAULT (0)
7600
Nitesh Shah03161d12016-12-06 18:30:12 +05307601/*
7602 * <ini>
7603 * gEnableCustomConcRule2 - Enable custom concurrency rule2.
7604 * @Min: 0
7605 * @Max: 1
7606 * @Default: 0
7607 *
7608 * This ini is used to enable/disable custom concurrency rule2.
7609 * If P2PGO comes up first and STA comes up later then P2PGO need to follow
7610 * STA's channel in 5Ghz. In following if condition we are just adding sanity
7611 * check to make sure that by this time P2PGO's channel is same as STA's
7612 * channel.
7613 *
7614 * Related: None.
7615 *
7616 * Supported Feature: Concurrency
7617 *
7618 * Usage: Internal/External
7619 *
7620 * </ini>
7621 */
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08007622#define CFG_ENABLE_CUSTOM_CONC_RULE2_NAME "gEnableCustomConcRule2"
7623#define CFG_ENABLE_CUSTOM_CONC_RULE2_NAME_MIN (0)
7624#define CFG_ENABLE_CUSTOM_CONC_RULE2_NAME_MAX (1)
7625#define CFG_ENABLE_CUSTOM_CONC_RULE2_NAME_DEFAULT (0)
7626
7627#define CFG_ENABLE_STA_CONNECTION_IN_5GHZ "gEnableStaConnectionIn5Ghz"
7628#define CFG_ENABLE_STA_CONNECTION_IN_5GHZ_MIN (0)
7629#define CFG_ENABLE_STA_CONNECTION_IN_5GHZ_MAX (1)
7630#define CFG_ENABLE_STA_CONNECTION_IN_5GHZ_DEFAULT (1)
7631
7632#define CFG_ENABLE_MAC_ADDR_SPOOFING "gEnableMacAddrSpoof"
7633#define CFG_ENABLE_MAC_ADDR_SPOOFING_MIN (0)
7634#define CFG_ENABLE_MAC_ADDR_SPOOFING_MAX (1)
7635#define CFG_ENABLE_MAC_ADDR_SPOOFING_DEFAULT (1)
7636
Agrawal Ashishe030f782017-01-27 17:52:05 +05307637/*
7638 * <ini>
Nitesh Shah03161d12016-12-06 18:30:12 +05307639 * gStaMiracastMccRestTimeVal - Rest time when Miracast is running.
7640 * @Min: 100
7641 * @Max: 500
7642 * @Default: 400
7643 *
7644 * This ini is used to set rest time for home channel for Miracast before
7645 * going for scan.
7646 *
7647 * Related: None.
7648 *
7649 * Supported Feature: Concurrency
7650 *
7651 * Usage: Internal/External
7652 *
7653 * </ini>
7654 */
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08007655#define CFG_STA_MIRACAST_MCC_REST_TIME_VAL "gStaMiracastMccRestTimeVal"
7656#define CFG_STA_MIRACAST_MCC_REST_TIME_VAL_MIN (100)
7657#define CFG_STA_MIRACAST_MCC_REST_TIME_VAL_MAX (500)
7658#define CFG_STA_MIRACAST_MCC_REST_TIME_VAL_DEFAULT (400)
7659
7660#ifdef FEATURE_AP_MCC_CH_AVOIDANCE
Nitesh Shah03161d12016-12-06 18:30:12 +05307661/*
7662 * <ini>
7663 * gSapChannelAvoidance - SAP MCC channel avoidance.
7664 * @Min: 0
7665 * @Max: 1
7666 * @Default: 0
7667 *
7668 * This ini is used to sets sap mcc channel avoidance.
7669 *
7670 * Related: None.
7671 *
7672 * Supported Feature: Concurrency
7673 *
7674 * Usage: Internal/External
7675 *
7676 * </ini>
7677 */
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08007678#define CFG_SAP_MCC_CHANNEL_AVOIDANCE_NAME "gSapChannelAvoidance"
7679#define CFG_SAP_MCC_CHANNEL_AVOIDANCE_MIN (0)
7680#define CFG_SAP_MCC_CHANNEL_AVOIDANCE_MAX (1)
7681#define CFG_SAP_MCC_CHANNEL_AVOIDANCE_DEFAULT (0)
7682#endif /* FEATURE_AP_MCC_CH_AVOIDANCE */
7683
Agrawal Ashishe030f782017-01-27 17:52:05 +05307684/*
7685 * <ini>
Himanshu Agarwal4ecf6ca2018-05-09 16:48:56 +05307686 * gSAP11ACOverride - Override bw to 11ac for SAP in driver even if supplicant
7687 * or hostapd configures HT.
Agrawal Ashishe030f782017-01-27 17:52:05 +05307688 * @Min: 0
7689 * @Max: 1
Himanshu Agarwal4ecf6ca2018-05-09 16:48:56 +05307690 * @Default: 0
Agrawal Ashishe030f782017-01-27 17:52:05 +05307691 *
Himanshu Agarwal4ecf6ca2018-05-09 16:48:56 +05307692 * This ini is used to enable/disable 11AC override for SAP.
7693 * Android UI does not provide advanced configuration options
7694 * for SoftAP for Android O and below.
7695 * Default override disabled for android. Can be enabled from
7696 * ini for Android O and below.
Agrawal Ashishe030f782017-01-27 17:52:05 +05307697 *
7698 *
7699 * Supported Feature: SAP
7700 *
7701 *
7702 * Usage: Internal/External
7703 *
7704 * </ini>
7705 */
Himanshu Agarwal4ecf6ca2018-05-09 16:48:56 +05307706#define CFG_SAP_11AC_OVERRIDE_NAME "gSAP11ACOverride"
7707#define CFG_SAP_11AC_OVERRIDE_MIN (0)
7708#define CFG_SAP_11AC_OVERRIDE_MAX (1)
7709#define CFG_SAP_11AC_OVERRIDE_DEFAULT (0)
Agrawal Ashishe030f782017-01-27 17:52:05 +05307710
Himanshu Agarwal4ecf6ca2018-05-09 16:48:56 +05307711/*
7712 * <ini>
7713 * gGO11ACOverride - Override bw to 11ac for P2P GO
7714 * @Min: 0
7715 * @Max: 1
7716 * @Default: 1
7717 *
7718 * This ini is used to enable/disable 11AC override for GO.
7719 * P2P GO also follows start_bss and since P2P GO could not be
7720 * configured to setup VHT channel width in wpa_supplicant, driver
7721 * can override 11AC.
7722 *
7723 *
7724 * Supported Feature: P2P
7725 *
7726 *
7727 * Usage: Internal/External
7728 *
7729 * </ini>
7730 */
7731#define CFG_GO_11AC_OVERRIDE_NAME "gGO11ACOverride"
7732#define CFG_GO_11AC_OVERRIDE_MIN (0)
7733#define CFG_GO_11AC_OVERRIDE_MAX (1)
7734#define CFG_GO_11AC_OVERRIDE_DEFAULT (1)
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08007735
7736#define CFG_SAP_DOT11MC "gSapDot11mc"
7737#define CFG_SAP_DOT11MC_MIN (0)
7738#define CFG_SAP_DOT11MC_MAX (1)
7739#define CFG_SAP_DOT11MC_DEFAULT (0)
7740
7741#define CFG_ENABLE_NON_DFS_CHAN_ON_RADAR "gPreferNonDfsChanOnRadar"
7742#define CFG_ENABLE_NON_DFS_CHAN_ON_RADAR_MIN (0)
7743#define CFG_ENABLE_NON_DFS_CHAN_ON_RADAR_MAX (1)
7744#define CFG_ENABLE_NON_DFS_CHAN_ON_RADAR_DEFAULT (0)
7745
7746#define CFG_MULTICAST_HOST_FW_MSGS "gMulticastHostFwMsgs"
7747#define CFG_MULTICAST_HOST_FW_MSGS_MIN (0)
7748#define CFG_MULTICAST_HOST_FW_MSGS_MAX (1)
Zhu Jianmin35fcd0d2017-08-30 10:47:31 +08007749#if defined(MDM_PLATFORM) && !defined(FEATURE_MULTICAST_HOST_FW_MSGS)
7750#define CFG_MULTICAST_HOST_FW_MSGS_DEFAULT (0)
7751#else
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08007752#define CFG_MULTICAST_HOST_FW_MSGS_DEFAULT (1)
Zhu Jianmin35fcd0d2017-08-30 10:47:31 +08007753#endif
7754
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08007755
7756/*
Nitesh Shah428e70d2016-12-06 18:39:58 +05307757 * <ini>
7758 * gSystemPref - Configure wlan system preference for PCL.
7759 * @Min: 0
7760 * @Max: 2
7761 * @Default: 0
7762 *
7763 * This ini is used to configure wlan system preference option to help
7764 * policy manager decide on Preferred Channel List for a new connection.
7765 * For possible values refer to enum hdd_conc_priority_mode
7766 *
7767 * Related: None.
7768 *
7769 * Supported Feature: DBS
7770 *
7771 * Usage: Internal/External
7772 *
7773 * </ini>
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08007774 */
7775#define CFG_CONC_SYSTEM_PREF "gSystemPref"
7776#define CFG_CONC_SYSTEM_PREF_MIN (0)
7777#define CFG_CONC_SYSTEM_PREF_MAX (2)
7778#define CFG_CONC_SYSTEM_PREF_DEFAULT (0)
7779
Poddar, Siddarthcc250aa2016-12-05 19:21:03 +05307780/*
7781 * <ini>
7782 * TSOEnable - Control to enable tso feature
7783 *
7784 * @Min: 0
7785 * @Max: 1
7786 * @Default: 0
7787 *
7788 * This ini is used to enable TSO feature
7789 *
7790 * Supported Feature: TSO Feature
7791 *
7792 * Usage: Internal
7793 *
7794 * </ini>
7795 */
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08007796#define CFG_TSO_ENABLED_NAME "TSOEnable"
7797#define CFG_TSO_ENABLED_MIN (0)
7798#define CFG_TSO_ENABLED_MAX (1)
7799#define CFG_TSO_ENABLED_DEFAULT (0)
7800
7801/*
Himanshu Agarwalf0481722016-12-06 12:46:24 +05307802 * <ini>
7803 * LROEnable - Control to enable lro feature
7804 *
7805 * @Min: 0
7806 * @Max: 1
7807 * @Default: 0
7808 *
7809 * This ini is used to enable LRO feature
7810 *
7811 * Supported Feature: LRO
7812 *
7813 * Usage: Internal
7814 *
7815 * </ini>
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08007816 */
7817#define CFG_LRO_ENABLED_NAME "LROEnable"
7818#define CFG_LRO_ENABLED_MIN (0)
7819#define CFG_LRO_ENABLED_MAX (1)
7820#define CFG_LRO_ENABLED_DEFAULT (0)
7821
7822/*
Manjunathappa Prakash7b0ad462018-04-15 00:37:16 -07007823 * <ini>
7824 * GROEnable - Control to enable gro feature
7825 *
7826 * @Disable: 0
7827 * @Enable: 1
7828 * @Default: 0
7829 *
7830 * This ini is used to enable GRO feature
7831 *
7832 * Supported Feature: GRO
7833 *
7834 * Usage: Internal
7835 *
7836 * </ini>
7837 */
7838#define CFG_GRO_ENABLED_NAME "GROEnable"
7839#define CFG_GRO_ENABLED_MIN (0)
7840#define CFG_GRO_ENABLED_MAX (1)
7841#define CFG_GRO_ENABLED_DEFAULT (0)
7842
7843/*
Manjunathappa Prakashfff753c2016-09-01 19:34:56 -07007844 * Enable Rx traffic flow steering to enable Rx interrupts on multiple CEs based
7845 * on the flows. Different CEs<==>different IRQs<==>probably different CPUs.
7846 * Parallel Rx paths.
7847 * 1 - enable 0 - disable
7848 */
7849#define CFG_FLOW_STEERING_ENABLED_NAME "gEnableFlowSteering"
7850#define CFG_FLOW_STEERING_ENABLED_MIN (0)
7851#define CFG_FLOW_STEERING_ENABLED_MAX (1)
7852#define CFG_FLOW_STEERING_ENABLED_DEFAULT (0)
7853
7854/*
Orhan K AKYILDIZ30e8cbc2017-08-11 18:00:28 -07007855 * Max number of MSDUs per HTT RX IN ORDER INDICATION msg.
7856 * Note that this has a direct impact on the size of source CE rings.
7857 * It is possible to go below 8, but would require testing; so we are
7858 * restricting the lower limit to 8 artificially
7859 *
7860 * It is recommended that this value is a POWER OF 2.
7861 *
7862 * Values lower than 8 are for experimental purposes only.
7863 */
7864#define CFG_MAX_MSDUS_PER_RXIND_NAME "maxMSDUsPerRxInd"
7865#define CFG_MAX_MSDUS_PER_RXIND_MIN (4)
7866#define CFG_MAX_MSDUS_PER_RXIND_MAX (32)
7867#define CFG_MAX_MSDUS_PER_RXIND_DEFAULT (32)
7868/*
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08007869 * In static display use case when APPS is in stand alone power save mode enable
7870 * active offload mode which helps FW to filter out MC/BC data packets to avoid
7871 * APPS wake up and save more power.
7872 *
7873 * By default enable active mode offload as it helps to save more power in
7874 * static display usecase(APPS stand alone power collapse).
7875 *
7876 * If active mode offload(gActiveModeOffload=1) is enabled then all applicable
7877 * data offload/filtering is enabled immediately in FW once config is available
Jeff Johnson48a281a2018-05-06 00:04:54 -07007878 * in WLAN driver and FW caches this configuration across suspend/resume
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08007879 *
7880 * If active mode offload is disabled(gActiveModeOffload=0) then all applicable
7881 * data offload/filtering is enabled during cfg80211 suspend and disabled
7882 * during cfg80211 resume
7883 *
Rajeev Kumar5324d752017-02-13 17:11:19 -08007884 * Active mode offload feature is bydefault enabled for all targets
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08007885 */
7886
7887#define CFG_ACTIVE_MODE_OFFLOAD "gActiveModeOffload"
7888#define CFG_ACTIVE_MODE_OFFLOAD_MIN (0)
7889#define CFG_ACTIVE_MODE_OFFLOAD_MAX (1)
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08007890#define CFG_ACTIVE_MODE_OFFLOAD_DEFAULT (1)
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08007891
7892/*
Nachiket Kukadee547a482018-05-22 16:43:30 +05307893 * 0: Disable APF packet filter
7894 * 1: Enable APF packet filter
Rajeev Kumardd3bc602016-08-16 14:21:05 -07007895 */
Nachiket Kukadee547a482018-05-22 16:43:30 +05307896#define CFG_APF_PACKET_FILTER_OFFLOAD "gBpfFilterEnable"
7897#define CFG_APF_PACKET_FILTER_OFFLOAD_MIN (0)
7898#define CFG_APF_PACKET_FILTER_OFFLOAD_MAX (1)
7899#define CFG_APF_PACKET_FILTER_OFFLOAD_DEFAULT (1)
Rajeev Kumardd3bc602016-08-16 14:21:05 -07007900
7901/*
Sen, Devendra9ca8c432017-02-23 15:10:26 +05307902 * <ini>
7903 * gCckChainMaskEnable - Used to enable/disable Cck ChainMask
7904 * @Min: 0
7905 * @Max: 1
7906 * @Default: 0
7907 *
7908 * This ini is used to set default Cck ChainMask
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08007909 * 0: disable the cck tx chain mask (default)
7910 * 1: enable the cck tx chain mask
Sen, Devendra9ca8c432017-02-23 15:10:26 +05307911 *
7912 * Related: None
7913 *
7914 * Supported Feature: STA
7915 *
7916 * Usage: Internal/External
7917 *
7918 * </ini>
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08007919 */
Sen, Devendra9ca8c432017-02-23 15:10:26 +05307920
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08007921#define CFG_TX_CHAIN_MASK_CCK "gCckChainMaskEnable"
7922#define CFG_TX_CHAIN_MASK_CCK_MIN (0)
7923#define CFG_TX_CHAIN_MASK_CCK_MAX (1)
7924#define CFG_TX_CHAIN_MASK_CCK_DEFAULT (0)
Sen, Devendra9ca8c432017-02-23 15:10:26 +05307925/*
7926 * <ini>
7927 * gTxChainMask1ss - Enables/disables tx chain Mask1ss
7928 * @Min: 0
7929 * @Max: 3
7930 * @Default: 1
7931 *
7932 * This ini is used to set default tx chain Mask1ss
7933 *
7934 * Related: None
7935 *
7936 * Supported Feature: STA
7937 *
7938 * Usage: Internal/External
7939 *
7940 * </ini>
7941 */
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08007942
7943#define CFG_TX_CHAIN_MASK_1SS "gTxChainMask1ss"
7944#define CFG_TX_CHAIN_MASK_1SS_MIN (0)
7945#define CFG_TX_CHAIN_MASK_1SS_MAX (3)
7946#define CFG_TX_CHAIN_MASK_1SS_DEFAULT (1)
7947
7948/*
Jeff Johnsona89e25d2017-02-24 12:25:07 -08007949 * <ini>
7950 * gEnableSmartChainmask - Enable Smart Chainmask
7951 * @Min: 0
7952 * @Max: 1
7953 * @Default: 0
7954 *
7955 * This ini is used to enable/disable the Smart Chainmask feature via
7956 * the WMI_PDEV_PARAM_SMART_CHAINMASK_SCHEME firmware parameter.
7957 *
7958 * Related: None
7959 *
7960 * Supported Feature: STA
7961 *
7962 * Usage: Internal/External
7963 *
7964 * </ini>
7965 */
7966#define CFG_ENABLE_SMART_CHAINMASK_NAME "gEnableSmartChainmask"
7967#define CFG_ENABLE_SMART_CHAINMASK_MIN (0)
7968#define CFG_ENABLE_SMART_CHAINMASK_MAX (1)
7969#define CFG_ENABLE_SMART_CHAINMASK_DEFAULT (0)
7970
7971/*
7972 * <ini>
7973 * gEnableAlternativeChainmask - Enable Co-Ex Alternative Chainmask
7974 * @Min: 0
7975 * @Max: 1
7976 * @Default: 0
7977 *
7978 * This ini is used to enable/disable the Co-ex Alternative Chainmask
7979 * feature via the WMI_PDEV_PARAM_ALTERNATIVE_CHAINMASK_SCHEME
7980 * firmware parameter.
7981 *
7982 * Related: None
7983 *
7984 * Supported Feature: STA
7985 *
7986 * Usage: Internal/External
7987 *
7988 * </ini>
7989 */
7990#define CFG_ENABLE_COEX_ALT_CHAINMASK_NAME "gEnableAlternativeChainmask"
7991#define CFG_ENABLE_COEX_ALT_CHAINMASK_MIN (0)
7992#define CFG_ENABLE_COEX_ALT_CHAINMASK_MAX (1)
7993#define CFG_ENABLE_COEX_ALT_CHAINMASK_DEFAULT (0)
7994
7995/*
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08007996 * set the self gen power value from
7997 * 0 to 0xffff
7998 */
7999#define CFG_SELF_GEN_FRM_PWR "gSelfGenFrmPwr"
8000#define CFG_SELF_GEN_FRM_PWR_MIN (0)
8001#define CFG_SELF_GEN_FRM_PWR_MAX (0xffff)
8002#define CFG_SELF_GEN_FRM_PWR_DEFAULT (0)
8003
8004/*
Sen, Devendra9ca8c432017-02-23 15:10:26 +05308005 * <ini>
8006 * gTxAggregationSize - Gives an option to configure Tx aggregation size
8007 * in no of MPDUs
8008 * @Min: 0
8009 * @Max: 64
8010 * @Default: 64
8011 *
Padma, Santhosh Kumara7119672016-08-16 16:05:14 +05308012 * gTxAggregationSize gives an option to configure Tx aggregation size
Sen, Devendra9ca8c432017-02-23 15:10:26 +05308013 * in no of MPDUs.This can be useful in debugging throughput issues
8014 *
8015 * Related: None
8016 *
8017 * Supported Feature: STA
8018 *
8019 * Usage: Internal/External
8020 *
8021 * </ini>
Padma, Santhosh Kumara7119672016-08-16 16:05:14 +05308022 */
Sen, Devendra9ca8c432017-02-23 15:10:26 +05308023
Padma, Santhosh Kumara7119672016-08-16 16:05:14 +05308024#define CFG_TX_AGGREGATION_SIZE "gTxAggregationSize"
8025#define CFG_TX_AGGREGATION_SIZE_MIN (0)
8026#define CFG_TX_AGGREGATION_SIZE_MAX (64)
8027#define CFG_TX_AGGREGATION_SIZE_DEFAULT (64)
8028
8029/*
Sen, Devendra9ca8c432017-02-23 15:10:26 +05308030 * <ini>
Paul Zhangee09f8e2018-04-23 16:11:32 +08008031 * gTxAggregationSizeBE - To configure Tx aggregation size for BE queue
8032 * in no of MPDUs
8033 * @Min: 0
8034 * @Max: 64
8035 * @Default: 0
8036 *
8037 * gTxAggregationSizeBE gives an option to configure Tx aggregation size
8038 * for BE queue in no of MPDUs.This can be useful in debugging
8039 * throughput issues
8040 *
8041 * Related: None
8042 *
8043 * Supported Feature: STA
8044 *
Ashish Kumar Dhanotiyaeff05f12018-04-24 12:38:14 +05308045 * Usage: Internal
Paul Zhangee09f8e2018-04-23 16:11:32 +08008046 *
8047 * </ini>
8048 */
8049
8050#define CFG_TX_AGGREGATION_SIZEBE "gTxAggregationSizeBE"
8051#define CFG_TX_AGGREGATION_SIZEBE_MIN (0)
8052#define CFG_TX_AGGREGATION_SIZEBE_MAX (64)
8053#define CFG_TX_AGGREGATION_SIZEBE_DEFAULT (0)
8054
8055/*
8056 * <ini>
8057 * gTxAggregationSizeBK - To configure Tx aggregation size for BK queue
8058 * in no of MPDUs
8059 * @Min: 0
8060 * @Max: 64
8061 * @Default: 0
8062 *
8063 * gTxAggregationSizeBK gives an option to configure Tx aggregation size
8064 * for BK queue in no of MPDUs.This can be useful in debugging
8065 * throughput issues
8066 *
8067 * Related: None
8068 *
8069 * Supported Feature: STA
8070 *
Ashish Kumar Dhanotiyaeff05f12018-04-24 12:38:14 +05308071 * Usage: Internal
Paul Zhangee09f8e2018-04-23 16:11:32 +08008072 *
8073 * </ini>
8074 */
8075
8076#define CFG_TX_AGGREGATION_SIZEBK "gTxAggregationSizeBK"
8077#define CFG_TX_AGGREGATION_SIZEBK_MIN (0)
8078#define CFG_TX_AGGREGATION_SIZEBK_MAX (64)
8079#define CFG_TX_AGGREGATION_SIZEBK_DEFAULT (0)
8080
8081/*
8082 * <ini>
8083 * gTxAggregationSizeVI - To configure Tx aggregation size for VI queue
8084 * in no of MPDUs
8085 * @Min: 0
8086 * @Max: 64
8087 * @Default: 0
8088 *
8089 * gTxAggregationSizeVI gives an option to configure Tx aggregation size
8090 * for VI queue in no of MPDUs.This can be useful in debugging
8091 * throughput issues
8092 *
8093 * Related: None
8094 *
8095 * Supported Feature: STA
8096 *
Ashish Kumar Dhanotiyaeff05f12018-04-24 12:38:14 +05308097 * Usage: Internal
Paul Zhangee09f8e2018-04-23 16:11:32 +08008098 *
8099 * </ini>
8100 */
8101
8102#define CFG_TX_AGGREGATION_SIZEVI "gTxAggregationSizeVI"
8103#define CFG_TX_AGGREGATION_SIZEVI_MIN (0)
8104#define CFG_TX_AGGREGATION_SIZEVI_MAX (64)
8105#define CFG_TX_AGGREGATION_SIZEVI_DEFAULT (0)
8106
8107/*
8108 * <ini>
8109 * gTxAggregationSizeVO - To configure Tx aggregation size for VO queue
8110 * in no of MPDUs
8111 * @Min: 0
8112 * @Max: 64
8113 * @Default: 0
8114 *
8115 * gTxAggregationSizeVO gives an option to configure Tx aggregation size
8116 * for BE queue in no of MPDUs.This can be useful in debugging
8117 * throughput issues
8118 *
8119 * Related: None
8120 *
8121 * Supported Feature: STA
8122 *
Ashish Kumar Dhanotiyaeff05f12018-04-24 12:38:14 +05308123 * Usage: Internal
Paul Zhangee09f8e2018-04-23 16:11:32 +08008124 *
8125 * </ini>
8126 */
8127
8128#define CFG_TX_AGGREGATION_SIZEVO "gTxAggregationSizeVO"
8129#define CFG_TX_AGGREGATION_SIZEVO_MIN (0)
8130#define CFG_TX_AGGREGATION_SIZEVO_MAX (64)
8131#define CFG_TX_AGGREGATION_SIZEVO_DEFAULT (0)
8132
8133/*
8134 * <ini>
Sen, Devendra9ca8c432017-02-23 15:10:26 +05308135 * gRxAggregationSize - Gives an option to configure Rx aggregation size
8136 * in no of MPDUs
8137 * @Min: 1
8138 * @Max: 64
8139 * @Default: 64
8140 *
Padma, Santhosh Kumara7119672016-08-16 16:05:14 +05308141 * gRxAggregationSize gives an option to configure Rx aggregation size
8142 * in no of MPDUs. This can be useful in debugging throughput issues
Sen, Devendra9ca8c432017-02-23 15:10:26 +05308143 *
8144 * Related: None
8145 *
8146 * Supported Feature: STA
8147 *
8148 * Usage: Internal/External
8149 *
8150 * </ini>
Padma, Santhosh Kumara7119672016-08-16 16:05:14 +05308151 */
Sen, Devendra9ca8c432017-02-23 15:10:26 +05308152
Padma, Santhosh Kumara7119672016-08-16 16:05:14 +05308153#define CFG_RX_AGGREGATION_SIZE "gRxAggregationSize"
8154#define CFG_RX_AGGREGATION_SIZE_MIN (1)
8155#define CFG_RX_AGGREGATION_SIZE_MAX (64)
8156#define CFG_RX_AGGREGATION_SIZE_DEFAULT (64)
8157
8158/*
Paul Zhang33fae272018-04-23 16:19:00 +08008159 * <ini>
8160 * gTxAggSwRetryBE - Configure Tx aggregation sw retry for BE
8161 * @Min: 0
8162 * @Max: 64
8163 * @Default: 0
8164 *
8165 * gTxAggSwRetryBE gives an option to configure Tx aggregation sw
8166 * retry for BE. This can be useful in debugging throughput issues.
8167 *
8168 * Related: None
8169 *
8170 * Supported Feature: STA
8171 *
Ashish Kumar Dhanotiyaeff05f12018-04-24 12:38:14 +05308172 * Usage: Internal
Paul Zhang33fae272018-04-23 16:19:00 +08008173 *
8174 * </ini>
8175 */
8176
8177#define CFG_TX_AGGR_SW_RETRY_BE "gTxAggSwRetryBE"
8178#define CFG_TX_AGGR_SW_RETRY_BE_MIN (0)
8179#define CFG_TX_AGGR_SW_RETRY_BE_MAX (64)
8180#define CFG_TX_AGGR_SW_RETRY_BE_DEFAULT (0)
8181
8182/*
8183 * <ini>
8184 * gTxAggSwRetryBK - Configure Tx aggregation sw retry for BK
8185 * @Min: 0
8186 * @Max: 64
8187 * @Default: 0
8188 *
8189 * gTxAggSwRetryBK gives an option to configure Tx aggregation sw
8190 * retry for BK. This can be useful in debugging throughput issues.
8191 *
8192 * Related: None
8193 *
8194 * Supported Feature: STA
8195 *
Ashish Kumar Dhanotiyaeff05f12018-04-24 12:38:14 +05308196 * Usage: Internal
Paul Zhang33fae272018-04-23 16:19:00 +08008197 *
8198 * </ini>
8199 */
8200
8201#define CFG_TX_AGGR_SW_RETRY_BK "gTxAggSwRetryBK"
8202#define CFG_TX_AGGR_SW_RETRY_BK_MIN (0)
8203#define CFG_TX_AGGR_SW_RETRY_BK_MAX (64)
8204#define CFG_TX_AGGR_SW_RETRY_BK_DEFAULT (0)
8205
8206/*
8207 * <ini>
8208 * gTxAggSwRetryVI - Configure Tx aggregation sw retry for VI
8209 * @Min: 0
8210 * @Max: 64
8211 * @Default: 0
8212 *
8213 * gTxAggSwRetryVI gives an option to configure Tx aggregation sw
8214 * retry for VI. This can be useful in debugging throughput issues.
8215 *
8216 * Related: None
8217 *
8218 * Supported Feature: STA
8219 *
Ashish Kumar Dhanotiyaeff05f12018-04-24 12:38:14 +05308220 * Usage: Internal
Paul Zhang33fae272018-04-23 16:19:00 +08008221 *
8222 * </ini>
8223 */
8224
8225#define CFG_TX_AGGR_SW_RETRY_VI "gTxAggSwRetryVI"
8226#define CFG_TX_AGGR_SW_RETRY_VI_MIN (0)
8227#define CFG_TX_AGGR_SW_RETRY_VI_MAX (64)
8228#define CFG_TX_AGGR_SW_RETRY_VI_DEFAULT (0)
8229
8230/*
8231 * <ini>
8232 * gTxAggSwRetryVO - Configure Tx aggregation sw retry for VO
8233 * @Min: 0
8234 * @Max: 64
8235 * @Default: 0
8236 *
8237 * gTxAggSwRetryVO gives an option to configure Tx aggregation sw
8238 * retry for VO. This can be useful in debugging throughput issues.
8239 *
8240 * Related: None
8241 *
8242 * Supported Feature: STA
8243 *
Ashish Kumar Dhanotiyaeff05f12018-04-24 12:38:14 +05308244 * Usage: Internal
Paul Zhang33fae272018-04-23 16:19:00 +08008245 *
8246 * </ini>
8247 */
8248
8249#define CFG_TX_AGGR_SW_RETRY_VO "gTxAggSwRetryVO"
8250#define CFG_TX_AGGR_SW_RETRY_VO_MIN (0)
8251#define CFG_TX_AGGR_SW_RETRY_VO_MAX (64)
8252#define CFG_TX_AGGR_SW_RETRY_VO_DEFAULT (0)
8253
8254/*
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08008255 * fine timing measurement capability information
8256 *
8257 * <----- fine_time_meas_cap (in bits) ----->
8258 *+----------+-----+-----+------+------+-------+-------+-----+-----+
Naveen Rawat1af09392018-01-03 17:28:21 -08008259 *| 8-31 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08008260 *+----------+-----+-----+------+------+-------+-------+-----+-----+
8261 *| reserved | SAP | SAP |P2P-GO|P2P-GO|P2P-CLI|P2P-CLI| STA | STA |
8262 *| |resp |init |resp |init |resp |init |resp |init |
8263 *+----------+-----+-----+------+------+-------+-------+-----+-----+
8264 *
8265 * resp - responder role; init- initiator role
8266 *
8267 * CFG_FINE_TIME_MEAS_CAPABILITY_MAX computed based on the table
8268 * +-----------------+-----------------+-----------+
8269 * | Device Role | Initiator | Responder |
8270 * +-----------------+-----------------+-----------+
8271 * | Station | Y | N |
8272 * | P2P-CLI | Y | Y |
8273 * | P2P-GO | Y | Y |
8274 * | SAP | N | Y |
8275 * +-----------------+-----------------+-----------+
8276 */
8277#define CFG_FINE_TIME_MEAS_CAPABILITY "gfine_time_meas_cap"
8278#define CFG_FINE_TIME_MEAS_CAPABILITY_MIN (0x0000)
8279#define CFG_FINE_TIME_MEAS_CAPABILITY_MAX (0x00BD)
8280#define CFG_FINE_TIME_MEAS_CAPABILITY_DEFAULT (0x000D)
8281
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08008282/**
8283 * enum dot11p_mode - The 802.11p mode of operation
8284 * @WLAN_HDD_11P_DISABLED: 802.11p mode is disabled
8285 * @WLAN_HDD_11P_STANDALONE: 802.11p-only operation
8286 * @WLAN_HDD_11P_CONCURRENT: 802.11p and WLAN operate concurrently
8287 */
8288enum dot11p_mode {
8289 WLAN_HDD_11P_DISABLED = 0,
8290 WLAN_HDD_11P_STANDALONE,
8291 WLAN_HDD_11P_CONCURRENT,
8292};
8293
8294#define CFG_DOT11P_MODE_NAME "gDot11PMode"
8295#define CFG_DOT11P_MODE_DEFAULT (WLAN_HDD_11P_DISABLED)
8296#define CFG_DOT11P_MODE_MIN (WLAN_HDD_11P_DISABLED)
8297#define CFG_DOT11P_MODE_MAX (WLAN_HDD_11P_CONCURRENT)
8298
Agrawal Ashishe030f782017-01-27 17:52:05 +05308299/*
8300 * <ini>
Kiran Kumar Lokere1a43bcf2018-05-15 15:51:58 -07008301 * etsi13_srd_chan_in_master_mode - Enable/disable ETSI SRD channels in
8302 * master mode PCL and ACS functionality
8303 * @Min: 0
8304 * @Max: 1
8305 * @Default: 0
8306 *
8307 * etsi13_srd_chan_in_master_mode is to enable/disable ETSI SRD channels in
8308 * master mode PCL and ACS functionality
8309 *
8310 * Related: None
8311 *
8312 * Supported Feature: SAP/P2P-GO
8313 *
8314 * Usage: Internal/External
8315 *
8316 * </ini>
8317 */
8318#define CFG_ETSI13_SRD_CHAN_IN_MASTER_MODE "etsi13_srd_chan_in_master_mode"
8319#define CFG_ETSI13_SRD_CHAN_IN_MASTER_MODE_DEF (0)
8320#define CFG_ETSI13_SRD_CHAN_IN_MASTER_MODE_MIN (0)
8321#define CFG_ETSI13_SRD_CHAN_IN_MASTER_MODE_MAX (1)
8322
8323/*
8324 * <ini>
Agrawal Ashishe030f782017-01-27 17:52:05 +05308325 * gEnable_go_cts2self_for_sta - Indicate firmware to stop NOA and
8326 * start using cts2self
8327 * @Min: 1
8328 * @Max: 1
8329 * @Default: 0
8330 *
8331 * When gEnable_go_cts2self_for_sta is
Agrawal Ashishb2d1a452016-05-05 12:23:58 +05308332 * enabled then if a legacy client connects to P2P GO,
8333 * Host will send a WMI VDEV command to FW to stop using NOA for P2P GO
8334 * and start using CTS2SELF.
Agrawal Ashishe030f782017-01-27 17:52:05 +05308335 *
8336 *
8337 * Supported Feature: P2P
8338 *
8339 *
8340 * Usage: Internal/External
8341 *
8342 * </ini>
Agrawal Ashishb2d1a452016-05-05 12:23:58 +05308343 */
8344#define CFG_ENABLE_GO_CTS2SELF_FOR_STA "gEnable_go_cts2self_for_sta"
8345#define CFG_ENABLE_GO_CTS2SELF_FOR_STA_DEFAULT (0)
8346#define CFG_ENABLE_GO_CTS2SELF_FOR_STA_MIN (0)
8347#define CFG_ENABLE_GO_CTS2SELF_FOR_STA_MAX (1)
8348
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08008349#define CFG_CE_CLASSIFY_ENABLE_NAME "gCEClassifyEnable"
8350#define CFG_CE_CLASSIFY_ENABLE_MIN (0)
8351#define CFG_CE_CLASSIFY_ENABLE_MAX (1)
Prakash Manjunathappa6eae0cd2016-02-08 10:27:21 -08008352#define CFG_CE_CLASSIFY_ENABLE_DEFAULT (1)
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08008353
Nitesh Shah5651b1e2017-02-02 17:59:52 +05308354/*
8355 *
8356 * <ini>
8357 * gDualMacFeatureDisable - Disable Dual MAC feature.
8358 * @Min: 0
Tushnim Bhattacharyya49ed8ab2017-05-26 18:20:10 -07008359 * @Max: 4
Nitesh Shah5651b1e2017-02-02 17:59:52 +05308360 * @Default: 0
8361 *
8362 * This ini is used to enable/disable dual MAC feature.
Tushnim Bhattacharyya49ed8ab2017-05-26 18:20:10 -07008363 * 0 - enable DBS
8364 * 1 - disable DBS
8365 * 2 - disable DBS for connection but keep DBS for scan
8366 * 3 - disable DBS for connection but keep DBS scan with async
8367 * scan policy disabled
8368 * 4 - enable DBS for connection as well as for scan with async
8369 * scan policy disabled
Bala Venkateshc8236ca2018-03-09 12:38:29 +05308370 * 5 - enable DBS for connection but disable DBS for scan.
Tushnim Bhattacharyyaaececb22018-08-06 14:27:46 -07008371 * 6 - enable DBS for connection but disable simultaneous scan
8372 * from upper layer (DBS scan remains enabled in FW).
Tushnim Bhattacharyya49ed8ab2017-05-26 18:20:10 -07008373 *
8374 * Note: INI item value should match 'enum dbs_support'
Nitesh Shah5651b1e2017-02-02 17:59:52 +05308375 *
8376 * Related: None.
8377 *
8378 * Supported Feature: DBS
8379 *
8380 * Usage: Internal/External
8381 *
8382 * </ini>
8383 */
Tushnim Bhattacharyya49ed8ab2017-05-26 18:20:10 -07008384#define CFG_DUAL_MAC_FEATURE_DISABLE "gDualMacFeatureDisable"
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08008385#define CFG_DUAL_MAC_FEATURE_DISABLE_MIN (0)
Tushnim Bhattacharyyaaececb22018-08-06 14:27:46 -07008386#define CFG_DUAL_MAC_FEATURE_DISABLE_MAX (6)
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08008387#define CFG_DUAL_MAC_FEATURE_DISABLE_DEFAULT (0)
8388
Varun Reddy Yeturub43fda12015-09-10 18:16:21 -07008389/*
Nitesh Shah50a3de12017-04-03 19:37:19 +05308390 * <ini>
8391 * gdbs_scan_selection - DBS Scan Selection.
Nitesh Shah45d6f332017-06-16 17:25:34 +05308392 * @Default: ""
Nitesh Shah50a3de12017-04-03 19:37:19 +05308393 *
8394 * This ini is used to enable DBS scan selection.
Nitesh Shah45d6f332017-06-16 17:25:34 +05308395 * Example
8396 * @Value: "5,2,2,16,2,2"
Nitesh Shah50a3de12017-04-03 19:37:19 +05308397 * 1st argument is module_id, 2nd argument is number of DBS scan,
8398 * 3rd argument is number of non-DBS scan,
8399 * and other arguments follows.
8400 * 5,2,2,16,2,2 means:
8401 * 5 is module id, 2 is num of DBS scan, 2 is num of non-DBS scan.
8402 * 16 is module id, 2 is num of DBS scan, 2 is num of non-DBS scan.
8403 *
8404 * Related: None.
8405 *
8406 * Supported Feature: DBS Scan
8407 *
8408 * Usage: Internal/External
8409 *
8410 * </ini>
8411 */
8412#define CFG_DBS_SCAN_SELECTION_NAME "gdbs_scan_selection"
Nitesh Shah45d6f332017-06-16 17:25:34 +05308413#define CFG_DBS_SCAN_SELECTION_DEFAULT ""
Nitesh Shah50a3de12017-04-03 19:37:19 +05308414
8415/*
Ganesh Kondabattini930304c2017-10-10 15:25:36 +05308416 * <ini>
8417 * g_sta_sap_scc_on_dfs_chan - Allow STA+SAP SCC on DFS channel with master
8418 * mode support disabled.
8419 * @Min: 0
8420 * @Max: 1
8421 * @Default: 0
8422 *
8423 * This ini is used to allow STA+SAP SCC on DFS channel with master mode
8424 * support disabled.
8425 * 0 - Disallow STA+SAP SCC on DFS channel
8426 * 1 - Allow STA+SAP SCC on DFS channel with master mode disabled
8427 *
8428 * Related: None.
8429 *
8430 * Supported Feature: Non-DBS, DBS
8431 *
8432 * Usage: Internal/External
8433 *
8434 * </ini>
8435 */
8436#define CFG_STA_SAP_SCC_ON_DFS_CHAN "g_sta_sap_scc_on_dfs_chan"
8437#define CFG_STA_SAP_SCC_ON_DFS_CHAN_MIN (0)
8438#define CFG_STA_SAP_SCC_ON_DFS_CHAN_MAX (1)
8439#define CFG_STA_SAP_SCC_ON_DFS_CHAN_DEFAULT (0)
8440
8441/*
Zhu Jianmin72d32de2018-05-11 10:54:10 +08008442 * <ini>
8443 * g_sta_sap_scc_on_lte_coex_chan - Allow STA+SAP SCC on LTE coex channel
8444 * @Min: 0
8445 * @Max: 1
8446 * @Default: 0
8447 *
8448 * This ini is used to allow STA+SAP SCC on LTE coex channel
8449 * 0 - Disallow STA+SAP SCC on LTE coex channel
8450 * 1 - Allow STA+SAP SCC on LTE coex channel
8451 *
8452 * Related: None.
8453 *
8454 * Supported Feature: Non-DBS, DBS
8455 *
8456 * Usage: Internal/External
8457 *
8458 * </ini>
8459 */
8460#define CFG_STA_SAP_SCC_ON_LTE_COEX_CHAN "g_sta_sap_scc_on_lte_coex_chan"
8461#define CFG_STA_SAP_SCC_ON_LTE_COEX_CHAN_MIN (0)
8462#define CFG_STA_SAP_SCC_ON_LTE_COEX_CHAN_MAX (1)
8463#define CFG_STA_SAP_SCC_ON_LTE_COEX_CHAN_DEFAULT (0)
8464
8465/*
Varun Reddy Yeturub43fda12015-09-10 18:16:21 -07008466 * gPNOChannelPrediction will allow user to enable/disable the
8467 * PNO channel prediction feature.
8468 * In current PNO implementation, scan is always done until all configured
8469 * channels are scanned. If we can determine DUT is stationary based on
8470 * scanning a subset of channels, we may cancel the remaining channels.
8471 * Hence, we can save additional power consumption.
8472 */
8473#define CFG_PNO_CHANNEL_PREDICTION_NAME "gPNOChannelPrediction"
8474#define CFG_PNO_CHANNEL_PREDICTION_MIN (0)
8475#define CFG_PNO_CHANNEL_PREDICTION_MAX (1)
8476#define CFG_PNO_CHANNEL_PREDICTION_DEFAULT (0)
8477/*
8478 * The top K number of channels are used for tanimoto distance
8479 * calculation. These are the top channels on which the probability
8480 * of finding the AP's is extremely high. This number is intended
8481 * for tweaking the internal algorithm for experiments. This should
8482 * not be changed externally.
8483 */
8484#define CFG_TOP_K_NUM_OF_CHANNELS_NAME "gTopKNumOfChannels"
8485#define CFG_TOP_K_NUM_OF_CHANNELS_MIN (1)
8486#define CFG_TOP_K_NUM_OF_CHANNELS_MAX (5)
8487#define CFG_TOP_K_NUM_OF_CHANNELS_DEFAULT (3)
8488/*
8489 * This is the threshold value to determine that the STA is
8490 * stationary. If the tanimoto distance is less than this
8491 * value, then the device is considered to be stationary.
8492 * This parameter is intended to tweak the internal algorithm
8493 * for experiments. This should not be changed externally.
8494 */
8495#define CFG_STATIONARY_THRESHOLD_NAME "gStationaryThreshold"
8496#define CFG_STATIONARY_THRESHOLD_MIN (0)
8497#define CFG_STATIONARY_THRESHOLD_MAX (100)
8498#define CFG_STATIONARY_THRESHOLD_DEFAULT (10)
Varun Reddy Yeturu044bda22015-11-21 22:03:40 -08008499
Deepak Dhamdhere68929ec2015-08-05 15:16:35 -07008500/* Option to report rssi in cfg80211_inform_bss_frame()
8501 * 0 = use rssi value based on noise floor = -96 dBm
8502 * 1 = use rssi value based on actual noise floor in hardware
8503 */
8504#define CFG_INFORM_BSS_RSSI_RAW_NAME "gInformBssRssiRaw"
8505#define CFG_INFORM_BSS_RSSI_RAW_MIN (0)
8506#define CFG_INFORM_BSS_RSSI_RAW_MAX (1)
8507#define CFG_INFORM_BSS_RSSI_RAW_DEFAULT (1)
Ravi Joshi742495d2015-11-09 18:56:53 -08008508
Manikandan Mohan976e7562016-03-15 16:33:31 -07008509/* GPIO pin to toggle when capture tsf */
8510#define CFG_SET_TSF_GPIO_PIN_NAME "gtsf_gpio_pin"
8511#define CFG_SET_TSF_GPIO_PIN_MIN (0)
Manikandan Mohan296d4b52016-03-15 16:39:31 -07008512#define CFG_SET_TSF_GPIO_PIN_MAX (254)
8513#define TSF_GPIO_PIN_INVALID (255)
8514#define CFG_SET_TSF_GPIO_PIN_DEFAULT (TSF_GPIO_PIN_INVALID)
Sandeep Puligilla93a29ec2016-02-12 16:10:56 -08008515
Yu Wang66a250b2017-07-19 11:46:40 +08008516#ifdef WLAN_FEATURE_TSF_PLUS
8517/* PTP options */
8518#define CFG_SET_TSF_PTP_OPT_NAME "gtsf_ptp_options"
8519#define CFG_SET_TSF_PTP_OPT_MIN (0)
8520#define CFG_SET_TSF_PTP_OPT_MAX (0xff)
8521#define CFG_SET_TSF_PTP_OPT_RX (0x1)
8522#define CFG_SET_TSF_PTP_OPT_TX (0x2)
8523#define CFG_SET_TSF_PTP_OPT_RAW (0x4)
8524#define CFG_SET_TSF_DBG_FS (0x8)
8525#define CFG_SET_TSF_PTP_OPT_DEFAULT (0xf)
8526#endif
8527
Sandeep Puligilla93a29ec2016-02-12 16:10:56 -08008528/*
Gupta, Kapilc68ad462016-02-01 19:17:23 +05308529 * Dense traffic threshold
8530 * traffic threshold required for dense roam scan
Kapil Gupta7bad4312016-08-19 14:35:06 +05308531 * Measured in kbps
Gupta, Kapilc68ad462016-02-01 19:17:23 +05308532 */
8533#define CFG_ROAM_DENSE_TRAFFIC_THRESHOLD "gtraffic_threshold"
8534#define CFG_ROAM_DENSE_TRAFFIC_THRESHOLD_MIN (0)
Kapil Gupta7bad4312016-08-19 14:35:06 +05308535#define CFG_ROAM_DENSE_TRAFFIC_THRESHOLD_MAX (0xffffffff)
8536#define CFG_ROAM_DENSE_TRAFFIC_THRESHOLD_DEFAULT (400)
Gupta, Kapilc68ad462016-02-01 19:17:23 +05308537
8538/*
Kapil Gupta8878ad92017-02-13 11:56:04 +05308539 * <ini>
8540 * gvendor_acs_support - vendor based channel selection manager
8541 * @Min: 0
8542 * @Max: 1
8543 * @Default: 0
8544 *
8545 * Enabling this parameter will force driver to use user application based
8546 * channel selection algo instead of driver based auto channel selection
8547 * logic.
8548 *
8549 * Supported Feature: ACS
8550 *
8551 * Usage: External/Internal
8552 *
8553 * </ini>
8554 */
8555#define CFG_USER_AUTO_CHANNEL_SELECTION "gvendor_acs_support"
8556#define CFG_USER_AUTO_CHANNEL_SELECTION_DISABLE (0)
8557#define CFG_USER_AUTO_CHANNEL_SELECTION_ENABLE (1)
8558#define CFG_USER_AUTO_CHANNEL_SELECTION_DEFAULT (0)
8559
8560/*
8561 * <ini>
8562 * gacs_support_for_dfs_lte_coex - acs support for lte coex and dfs event
8563 * @Min: 0
8564 * @Max: 1
8565 * @Default: 0
8566 *
8567 * Enabling this parameter will force driver to use user application based
8568 * channel selection algo for channel selection in case of dfs and lte
8569 * coex event.
8570 *
8571 * Supported Feature: ACS
8572 *
8573 * Usage: Internal
8574 *
8575 * </ini>
8576 */
8577#define CFG_USER_ACS_DFS_LTE "gacs_support_for_dfs_lte_coex"
8578#define CFG_USER_ACS_DFS_LTE_DISABLE (0)
8579#define CFG_USER_ACS_DFS_LTE_ENABLE (1)
8580#define CFG_USER_ACS_DFS_LTE_DEFAULT (0)
8581
8582/*
Abhishek Singh165bc602016-03-21 12:43:00 +05308583 * Enabling gignore_peer_ht_opmode will enable 11g
8584 * protection only when there is a 11g AP in vicinity.
8585 */
8586#define CFG_IGNORE_PEER_HT_MODE_NAME "gignore_peer_ht_opmode"
8587#define CFG_IGNORE_PEER_HT_MODE_MIN (0)
8588#define CFG_IGNORE_PEER_HT_MODE_MAX (1)
8589#define CFG_IGNORE_PEER_HT_MODE_DEFAULT (0)
8590
Deepak Dhamdhere3385d752016-05-25 20:36:47 -07008591#ifdef WLAN_FEATURE_NAN_DATAPATH
8592/*
8593 * Enable NaN data path feature. NaN data path enables
8594 * NaN supported devices to exchange data over traditional
8595 * TCP/UDP network stack.
8596 */
8597#define CFG_ENABLE_NAN_DATAPATH_NAME "genable_nan_datapath"
8598#define CFG_ENABLE_NAN_DATAPATH_MIN (0)
8599#define CFG_ENABLE_NAN_DATAPATH_MAX (1)
8600#define CFG_ENABLE_NAN_DATAPATH_DEFAULT (0)
8601
8602/*
8603 * NAN channel on which NAN data interface to start
8604 */
8605#define CFG_ENABLE_NAN_NDI_CHANNEL_NAME "gnan_datapath_ndi_channel"
8606#define CFG_ENABLE_NAN_NDI_CHANNEL_MIN (6)
8607#define CFG_ENABLE_NAN_NDI_CHANNEL_MAX (149)
8608#define CFG_ENABLE_NAN_NDI_CHANNEL_DEFAULT (6)
8609#endif
8610
Abhishek Singh165bc602016-03-21 12:43:00 +05308611/*
Abhishek Singh5ea86532016-04-27 14:10:53 +05308612 * Enable/Disable to initiate BUG report in case of fatal event
8613 * Default: Enable
8614 */
8615#define CFG_ENABLE_FATAL_EVENT_TRIGGER "gEnableFatalEvent"
8616#define CFG_ENABLE_FATAL_EVENT_TRIGGER_MIN (0)
8617#define CFG_ENABLE_FATAL_EVENT_TRIGGER_MAX (1)
8618#define CFG_ENABLE_FATAL_EVENT_TRIGGER_DEFAULT (1)
8619
Abhishek Singh10ecf582016-05-04 17:48:59 +05308620/*
Sen, Devendra9ca8c432017-02-23 15:10:26 +05308621 * <ini>
8622 * gEnableEdcaParams - Enable edca parameter
8623 * @Min: 0
8624 * @Max: 1
8625 * @Default: 0
8626 *
8627 * This ini is used if gEnableEdcaParams is set to 1, params gEdcaVoCwmin,
Abhishek Singh10ecf582016-05-04 17:48:59 +05308628 * gEdcaViCwmin, gEdcaBkCwmin, gEdcaBeCwmin, gEdcaVoCwmax,
8629 * gEdcaViCwmax, gEdcaBkCwmax, gEdcaBeCwmax, gEdcaVoAifs,
8630 * gEdcaViAifs, gEdcaBkAifs and gEdcaBeAifs values are used
8631 * to overwrite the values received from AP
Sen, Devendra9ca8c432017-02-23 15:10:26 +05308632 *
8633 * Related: None
8634 *
8635 * Supported Feature: STA
8636 *
8637 * Usage: Internal/External
8638 *
8639 * </ini>
Abhishek Singh10ecf582016-05-04 17:48:59 +05308640 */
Sen, Devendra9ca8c432017-02-23 15:10:26 +05308641
Abhishek Singh10ecf582016-05-04 17:48:59 +05308642#define CFG_ENABLE_EDCA_INI_NAME "gEnableEdcaParams"
8643#define CFG_ENABLE_EDCA_INI_MIN (0)
8644#define CFG_ENABLE_EDCA_INI_MAX (1)
8645#define CFG_ENABLE_EDCA_INI_DEFAULT (0)
8646
Sen, Devendra9ca8c432017-02-23 15:10:26 +05308647/*
8648 * <ini>
8649 * gEdcaVoCwmin - Set Cwmin value for EDCA_AC_VO
8650 * @Min: 0
8651 * @Max: 0x15
8652 * @Default: 2
8653 *
8654 * This ini is used to set default Cwmin value for EDCA_AC_VO
8655 * Cwmin value for EDCA_AC_VO. CWVomin = 2^gEdcaVoCwmin -1
8656 *
8657 * Related: If gEnableEdcaParams is set to 1, params gEdcaVoCwmin etc
8658 * are aplicable
8659 *
8660 * Supported Feature: STA
8661 *
8662 * Usage: Internal/External
8663 *
8664 * </ini>
8665 */
8666
Abhishek Singh10ecf582016-05-04 17:48:59 +05308667#define CFG_EDCA_VO_CWMIN_VALUE_NAME "gEdcaVoCwmin"
8668#define CFG_EDCA_VO_CWMIN_VALUE_MIN (0x0)
8669#define CFG_EDCA_VO_CWMIN_VALUE_MAX (15)
8670#define CFG_EDCA_VO_CWMIN_VALUE_DEFAULT (2)
8671
Sen, Devendra9ca8c432017-02-23 15:10:26 +05308672/*
8673 * <ini>
8674 * gEdcaViCwmin - Set Cwmin value for EDCA_AC_VI
8675 * @Min: 0x0
8676 * @Max: 15
8677 * @Default: 3
8678 *
8679 * This ini is used to set default value for EDCA_AC_VI
8680 * Cwmin value for EDCA_AC_VI. CWVimin = 2^gEdcaViCwmin -1
8681 *
8682 * Related: If gEnableEdcaParams is set to 1, params gEdcaVoCwmin
8683 * etc are aplicable
8684 *
8685 * Supported Feature: STA
8686 *
8687 * Usage: Internal/External
8688 *
8689 * </ini>
8690 */
8691
Abhishek Singh10ecf582016-05-04 17:48:59 +05308692#define CFG_EDCA_VI_CWMIN_VALUE_NAME "gEdcaViCwmin"
8693#define CFG_EDCA_VI_CWMIN_VALUE_MIN (0x0)
8694#define CFG_EDCA_VI_CWMIN_VALUE_MAX (15)
8695#define CFG_EDCA_VI_CWMIN_VALUE_DEFAULT (3)
8696
Sen, Devendra9ca8c432017-02-23 15:10:26 +05308697/*
8698 * <ini>
8699 * gEdcaBkCwmin - Set Cwmin value for EDCA_AC_BK
8700 * @Min: 0x0
8701 * @Max: 15
8702 * @Default: 4
8703 *
8704 * This ini is used to set default Cwmin value for EDCA_AC_BK
8705 * Cwmin value for EDCA_AC_BK. CWBkmin = 2^gEdcaBkCwmin -1
8706 *
8707 * Related: If gEnableEdcaParams is set to 1, params gEdcaVoCwmin
8708 * etc are aplicable
8709 *
8710 * Supported Feature: STA
8711 *
8712 * Usage: Internal/External
8713 * </ini>
8714 */
8715
Abhishek Singh10ecf582016-05-04 17:48:59 +05308716#define CFG_EDCA_BK_CWMIN_VALUE_NAME "gEdcaBkCwmin"
8717#define CFG_EDCA_BK_CWMIN_VALUE_MIN (0x0)
8718#define CFG_EDCA_BK_CWMIN_VALUE_MAX (15)
8719#define CFG_EDCA_BK_CWMIN_VALUE_DEFAULT (4)
8720
Sen, Devendra9ca8c432017-02-23 15:10:26 +05308721/*
8722 * <ini>
8723 * gEdcaBeCwmin - Set Cwmin value for EDCA_AC_BE
8724 * @Min: 0x0
8725 * @Max: 15
8726 * @Default: 4
8727 *
8728 * This ini is used to set default Cwmin value for EDCA_AC_BE
8729 * Cwmin value for EDCA_AC_BE. CWBemin = 2^gEdcaBeCwmin
8730 *
8731 * Related: If gEnableEdcaParams is set to 1, params gEdcaVoCwmin
8732 * etc are aplicable
8733 *
8734 * Supported Feature: STA
8735 *
8736 * Usage: Internal/External
8737 *
8738 * </ini>
8739 */
8740
Abhishek Singh10ecf582016-05-04 17:48:59 +05308741#define CFG_EDCA_BE_CWMIN_VALUE_NAME "gEdcaBeCwmin"
8742#define CFG_EDCA_BE_CWMIN_VALUE_MIN (0x0)
8743#define CFG_EDCA_BE_CWMIN_VALUE_MAX (15)
8744#define CFG_EDCA_BE_CWMIN_VALUE_DEFAULT (4)
8745
Sen, Devendra9ca8c432017-02-23 15:10:26 +05308746/*
8747 * <ini>
8748 * gEdcaVoCwmax - Set Cwmax value for EDCA_AC_VO
8749 * @Min: 0
8750 * @Max: 15
8751 * @Default: 3
8752 *
8753 * This ini is used to set default Cwmax value for EDCA_AC_VO
8754 * Cwmax value for EDCA_AC_VO. CWVomax = 2^gEdcaVoCwmax -1
8755 *
8756 * Related: If gEnableEdcaParams is set to 1, params gEdcaVoCwmin
8757 * etc are aplicable
8758 *
8759 * Supported Feature: STA
8760 *
8761 * Usage: Internal/External
8762 *
8763 * </ini>
8764 */
8765
Abhishek Singh10ecf582016-05-04 17:48:59 +05308766#define CFG_EDCA_VO_CWMAX_VALUE_NAME "gEdcaVoCwmax"
8767#define CFG_EDCA_VO_CWMAX_VALUE_MIN (0)
8768#define CFG_EDCA_VO_CWMAX_VALUE_MAX (15)
8769#define CFG_EDCA_VO_CWMAX_VALUE_DEFAULT (3)
8770
Sen, Devendra9ca8c432017-02-23 15:10:26 +05308771/*
8772 * <ini>
8773 * gEdcaViCwmax - Set Cwmax value for EDCA_AC_VI
8774 * @Min: 0
8775 * @Max: 15
8776 * @Default: 4
8777 *
8778 * This ini is used to set default Cwmax value for EDCA_AC_VI
8779 * Cwmax value for EDCA_AC_VI. CWVimax = 2^gEdcaViCwmax -1
8780 *
8781 * Related: If gEnableEdcaParams is set to 1, params gEdcaVoCwmin
8782 * etc are aplicable
8783 *
8784 * Supported Feature: STA
8785 *
8786 * Usage: Internal/External
8787 *
8788 * </ini>
8789 */
Abhishek Singh10ecf582016-05-04 17:48:59 +05308790#define CFG_EDCA_VI_CWMAX_VALUE_NAME "gEdcaViCwmax"
8791#define CFG_EDCA_VI_CWMAX_VALUE_MIN (0)
8792#define CFG_EDCA_VI_CWMAX_VALUE_MAX (15)
8793#define CFG_EDCA_VI_CWMAX_VALUE_DEFAULT (4)
8794
Sen, Devendra9ca8c432017-02-23 15:10:26 +05308795/*
8796 * <ini>
8797 * gEdcaBkCwmax - Set Cwmax value for EDCA_AC_BK
8798 * @Min: 0
8799 * @Max: 15
8800 * @Default: 10
8801 *
8802 * This ini is used to set default Cwmax value for EDCA_AC_BK
8803 * Cwmax value for EDCA_AC_BK. CWBkmax = 2^gEdcaBkCwmax -1
8804 *
8805 * Related: If gEnableEdcaParams is set to 1, params gEdcaVoCwmin
8806 * etc are aplicable
8807 *
8808 * Supported Feature: STA
8809 *
8810 * Usage: Internal/External
8811 *
8812 * </ini>
8813 */
8814
Abhishek Singh10ecf582016-05-04 17:48:59 +05308815#define CFG_EDCA_BK_CWMAX_VALUE_NAME "gEdcaBkCwmax"
8816#define CFG_EDCA_BK_CWMAX_VALUE_MIN (0)
8817#define CFG_EDCA_BK_CWMAX_VALUE_MAX (15)
8818#define CFG_EDCA_BK_CWMAX_VALUE_DEFAULT (10)
8819
Sen, Devendra9ca8c432017-02-23 15:10:26 +05308820/*
8821 * <ini>
8822 * gEdcaBeCwmax - Set Cwmax value for EDCA_AC_BE
8823 * @Min: 0
8824 * @Max: 15
8825 * @Default: 10
8826 *
8827 * This ini is used to set default Cwmax value for EDCA_AC_BE
8828 * Cwmax value for EDCA_AC_BE. CWBemax = 2^gEdcaBeCwmax -1
8829 *
8830 * Related: If gEnableEdcaParams is set to 1, params gEdcaVoCwmin
8831 * etc are aplicable
8832 *
8833 * Supported Feature: STA
8834 *
8835 * Usage: Internal/External
8836 *
8837 * </ini>
8838 */
8839
Abhishek Singh10ecf582016-05-04 17:48:59 +05308840#define CFG_EDCA_BE_CWMAX_VALUE_NAME "gEdcaBeCwmax"
8841#define CFG_EDCA_BE_CWMAX_VALUE_MIN (0)
8842#define CFG_EDCA_BE_CWMAX_VALUE_MAX (15)
8843#define CFG_EDCA_BE_CWMAX_VALUE_DEFAULT (10)
8844
Sen, Devendra9ca8c432017-02-23 15:10:26 +05308845/*
8846 * <ini>
8847 * gEdcaVoAifs - Set Aifs value for EDCA_AC_VO
8848 * @Min: 0
8849 * @Max: 15
8850 * @Default: 2
8851 *
8852 * This ini is used to set default Aifs value for EDCA_AC_VO
8853 *
8854 * Related: If gEnableEdcaParams is set to 1, params gEdcaVoCwmin
8855 * etc are aplicable
8856 *
8857 * Supported Feature: STA
8858 *
8859 * Usage: Internal/External
8860 *
8861 * </ini>
8862 */
8863
Abhishek Singh10ecf582016-05-04 17:48:59 +05308864#define CFG_EDCA_VO_AIFS_VALUE_NAME "gEdcaVoAifs"
8865#define CFG_EDCA_VO_AIFS_VALUE_MIN (0)
8866#define CFG_EDCA_VO_AIFS_VALUE_MAX (15)
8867#define CFG_EDCA_VO_AIFS_VALUE_DEFAULT (2)
8868
Sen, Devendra9ca8c432017-02-23 15:10:26 +05308869/*
8870 * <ini>
8871 * gEdcaViAifs - Set Aifs value for EDCA_AC_VI
8872 * @Min: 0
8873 * @Max: 15
8874 * @Default: 2
8875 *
8876 * This ini is used to set default Aifs value for EDCA_AC_VI
8877 *
8878 * Related: If gEnableEdcaParams is set to 1, params gEdcaVoCwmin
8879 * etc are aplicable
8880 *
8881 * Supported Feature: STA
8882 *
8883 * Usage: Internal/External
8884 *
8885 * </ini>
8886 */
8887
Abhishek Singh10ecf582016-05-04 17:48:59 +05308888#define CFG_EDCA_VI_AIFS_VALUE_NAME "gEdcaViAifs"
8889#define CFG_EDCA_VI_AIFS_VALUE_MIN (0)
8890#define CFG_EDCA_VI_AIFS_VALUE_MAX (15)
8891#define CFG_EDCA_VI_AIFS_VALUE_DEFAULT (2)
8892
Sen, Devendra9ca8c432017-02-23 15:10:26 +05308893/*
8894 * <ini>
8895 * gEdcaBkAifs - Set Aifs value for EDCA_AC_BK
8896 * @Min: 0
8897 * @Max: 15
8898 * @Default: 7
8899 *
8900 * This ini is used to set default Aifs value for EDCA_AC_BK
8901 *
8902 * Related: If gEnableEdcaParams is set to 1, params gEdcaVoCwmin
8903 * etc are aplicable
8904 *
8905 * Supported Feature: STA
8906 *
8907 * Usage: Internal/External
8908 *
8909 * </ini>
8910 */
8911
Abhishek Singh10ecf582016-05-04 17:48:59 +05308912#define CFG_EDCA_BK_AIFS_VALUE_NAME "gEdcaBkAifs"
8913#define CFG_EDCA_BK_AIFS_VALUE_MIN (0)
8914#define CFG_EDCA_BK_AIFS_VALUE_MAX (15)
8915#define CFG_EDCA_BK_AIFS_VALUE_DEFAULT (7)
8916
Sen, Devendra9ca8c432017-02-23 15:10:26 +05308917/*
8918 * <ini>
8919 * gEdcaBeAifs - Set Aifs value for EDCA_AC_BE
8920 * @Min: 0
8921 * @Max: 15
8922 * @Default: 3
8923 *
8924 * This ini is used to set default Aifs value for EDCA_AC_BE
8925 *
8926 * Related: If gEnableEdcaParams is set to 1, params gEdcaVoCwmin
8927 * etc are aplicable
8928 *
8929 * Supported Feature: STA
8930 *
8931 * Usage: Internal/External
8932 *
8933 * </ini>
8934 */
8935
Abhishek Singh10ecf582016-05-04 17:48:59 +05308936#define CFG_EDCA_BE_AIFS_VALUE_NAME "gEdcaBeAifs"
8937#define CFG_EDCA_BE_AIFS_VALUE_MIN (0)
8938#define CFG_EDCA_BE_AIFS_VALUE_MAX (15)
8939#define CFG_EDCA_BE_AIFS_VALUE_DEFAULT (3)
8940
Nirav Shahcc1f1ae2016-04-26 11:41:29 +05308941/*
gbian62edd7e2017-03-07 13:12:13 +08008942 * <ini>
8943 * gEnableTxSchedWrrVO - Set TX sched parameters for VO
8944 * @Default:
8945 *
8946 * This key is mapping to VO defined in data path module through
8947 * OL_TX_SCHED_WRR_ADV_CAT_CFG_SPEC. The user can tune the
8948 * WRR TX sched parameters such as skip, credit, limit, credit, disc for VO.
8949 * e.g., gEnableTxSchedWrrVO = 10, 9, 8, 1, 8
8950 */
8951#define CFG_ENABLE_TX_SCHED_WRR_VO_NAME "gEnableTxSchedWrrVO"
8952#define CFG_ENABLE_TX_SCHED_WRR_VO_DEFAULT ""
8953
8954/*
8955 * <ini>
8956 * gEnableTxSchedWrrVI - Set TX sched parameters for VI
8957 * @Default:
8958 *
8959 * This key is mapping to VI defined in data path module through
8960 * OL_TX_SCHED_WRR_ADV_CAT_CFG_SPEC. The user can tune the
8961 * WRR TX sched parameters such as skip, credit, limit, credit, disc for VI.
8962 * e.g., gEnableTxSchedWrrVI = 10, 9, 8, 1, 8
8963 */
8964#define CFG_ENABLE_TX_SCHED_WRR_VI_NAME "gEnableTxSchedWrrVI"
8965#define CFG_ENABLE_TX_SCHED_WRR_VI_DEFAULT ""
8966
8967/*
8968 * <ini>
8969 * gEnableTxSchedWrrBE - Set TX sched parameters for BE
8970 * @Default:
8971 *
8972 * This key is mapping to BE defined in data path module through
8973 * OL_TX_SCHED_WRR_ADV_CAT_CFG_SPEC. The user can tune the
8974 * WRR TX sched parameters such as skip, credit, limit, credit, disc for BE.
8975 * e.g., gEnableTxSchedWrrBE = 10, 9, 8, 1, 8
8976 */
8977#define CFG_ENABLE_TX_SCHED_WRR_BE_NAME "gEnableTxSchedWrrBE"
8978#define CFG_ENABLE_TX_SCHED_WRR_BE_DEFAULT ""
8979
8980/*
8981 * <ini>
8982 * gEnableTxSchedWrrBK - Set TX sched parameters for BK
8983 * @Default:
8984 *
8985 * This key is mapping to BK defined in data path module through
8986 * OL_TX_SCHED_WRR_ADV_CAT_CFG_SPEC. The user can tune the
8987 * WRR TX sched parameters such as skip, credit, limit, credit, disc for BK.
8988 * e.g., gEnableTxSchedWrrBK = 10, 9, 8, 1, 8
8989 */
8990#define CFG_ENABLE_TX_SCHED_WRR_BK_NAME "gEnableTxSchedWrrBK"
8991#define CFG_ENABLE_TX_SCHED_WRR_BK_DEFAULT ""
8992
Nirav Shahd21a2e32018-04-20 16:34:43 +05308993#ifdef CONFIG_DP_TRACE
gbian62edd7e2017-03-07 13:12:13 +08008994/*
Nirav Shahcc1f1ae2016-04-26 11:41:29 +05308995 * Enable/disable DPTRACE
8996 * Enabling this might have performace impact.
8997 */
8998#define CFG_ENABLE_DP_TRACE "enable_dp_trace"
8999#define CFG_ENABLE_DP_TRACE_MIN (0)
Mohit Khannaf8f96822017-05-17 17:11:59 -07009000#define CFG_ENABLE_DP_TRACE_MAX (1)
Nirav Shah1da77682016-05-03 20:16:39 +05309001#define CFG_ENABLE_DP_TRACE_DEFAULT (1)
Nirav Shahcc1f1ae2016-04-26 11:41:29 +05309002
Mohit Khannaf8f96822017-05-17 17:11:59 -07009003/* Max length of gDptraceConfig string. e.g.- "1, 6, 1, 62" */
9004#define DP_TRACE_CONFIG_STRING_LENGTH (20)
9005
9006/* At max 4 DP Trace config parameters are allowed. Refer - gDptraceConfig */
9007#define DP_TRACE_CONFIG_NUM_PARAMS (4)
9008
9009/*
9010 * Default value of live mode in case it cannot be determined from cfg string
9011 * gDptraceConfig
9012 */
9013#define DP_TRACE_CONFIG_DEFAULT_LIVE_MODE (1)
9014
9015/*
9016 * Default value of thresh (packets/second) beyond which DP Trace is disabled.
9017 * Use this default in case the value cannot be determined from cfg string
9018 * gDptraceConfig
9019 */
Mohit Khannaf7562c32018-07-05 17:42:36 -07009020#define DP_TRACE_CONFIG_DEFAULT_THRESH (6)
Mohit Khannaf8f96822017-05-17 17:11:59 -07009021
9022/*
9023 * Number of intervals of BW timer to wait before enabling/disabling DP Trace.
9024 * Since throughput threshold to disable live logging for DP Trace is very low,
9025 * we calculate throughput based on # packets received in a second.
Mohit Khannaf7562c32018-07-05 17:42:36 -07009026 * For example assuming bandwidth timer interval is 100ms, and if more than 6
9027 * prints are received in 10 * 100 ms interval, we want to disable DP Trace
Mohit Khannaf8f96822017-05-17 17:11:59 -07009028 * live logging. DP_TRACE_CONFIG_DEFAULT_THRESH_TIME_LIMIT is the default
9029 * value, to be used in case the real value cannot be derived from
9030 * bw timer interval
9031 */
9032#define DP_TRACE_CONFIG_DEFAULT_THRESH_TIME_LIMIT (10)
9033
9034/* Default proto bitmap in case its missing in gDptraceConfig string */
9035#define DP_TRACE_CONFIG_DEFAULT_BITMAP \
9036 (QDF_NBUF_PKT_TRAC_TYPE_EAPOL |\
9037 QDF_NBUF_PKT_TRAC_TYPE_DHCP |\
9038 QDF_NBUF_PKT_TRAC_TYPE_MGMT_ACTION |\
9039 QDF_NBUF_PKT_TRAC_TYPE_ARP |\
Poddar, Siddarth44aa5aa2017-07-10 17:30:22 +05309040 QDF_NBUF_PKT_TRAC_TYPE_ICMP |\
9041 QDF_NBUF_PKT_TRAC_TYPE_ICMPv6)\
Mohit Khannaf8f96822017-05-17 17:11:59 -07009042
9043/* Default verbosity, in case its missing in gDptraceConfig string*/
9044#define DP_TRACE_CONFIG_DEFAULT_VERBOSTY QDF_DP_TRACE_VERBOSITY_LOW
9045/*
9046 * Config DPTRACE
9047 * The sequence of params is important. If some param is missing, defaults are
9048 * considered.
9049 * Param 1: Enable/Disable DP Trace live mode (uint8_t)
9050 * Param 2: DP Trace live mode high bandwidth thresh.(uint8_t)
9051 * (packets/second) beyond which DP Trace is disabled. Decimal Val.
9052 * MGMT, DHCP, EAPOL, ARP pkts are not counted. ICMP and Data are.
Manjunathappa Prakash5f5ed132018-06-05 20:51:30 -07009053 * Param 3: Default Verbosity (0-4)
Mohit Khannaf8f96822017-05-17 17:11:59 -07009054 * Param 4: Proto Bitmap (uint8_t). Decimal Value.
9055 * (decimal 62 = 0x3e)
9056 * e.g., to disable live mode, use the following param in the ini file.
9057 * gDptraceConfig = 0
Mohit Khannaf7562c32018-07-05 17:42:36 -07009058 * e.g., to enable dptrace live mode and set the thresh as 6,
Mohit Khannaf8f96822017-05-17 17:11:59 -07009059 * use the following param in the ini file.
Mohit Khannaf7562c32018-07-05 17:42:36 -07009060 * gDptraceConfig = 1, 6
Mohit Khannaf8f96822017-05-17 17:11:59 -07009061 */
9062#define CFG_ENABLE_DP_TRACE_CONFIG "gDptraceConfig"
Mohit Khannaf7562c32018-07-05 17:42:36 -07009063#define CFG_ENABLE_DP_TRACE_CONFIG_DEFAULT "1, 6, 2, 126"
Nirav Shahd21a2e32018-04-20 16:34:43 +05309064#endif
Mohit Khannaf8f96822017-05-17 17:11:59 -07009065
Gupta, Kapil96c7f2f2016-04-25 19:13:41 +05309066/*
Gupta, Kapil96c7f2f2016-04-25 19:13:41 +05309067 * This parameter will set the weight to calculate the average low pass
9068 * filter for channel congestion.
9069 * Acceptable values for this: 0-100 (In %)
9070 */
9071#define CFG_ADAPT_DWELL_LPF_WEIGHT_NAME "adapt_dwell_lpf_weight"
9072#define CFG_ADAPT_DWELL_LPF_WEIGHT_MIN (0)
9073#define CFG_ADAPT_DWELL_LPF_WEIGHT_MAX (100)
9074#define CFG_ADAPT_DWELL_LPF_WEIGHT_DEFAULT (80)
9075
9076/*
9077 * This parameter will set interval to monitor wifi activity
9078 * in passive scan in msec.
9079 * Acceptable values for this: 0-25
9080 */
9081#define CFG_ADAPT_DWELL_PASMON_INTVAL_NAME "adapt_dwell_passive_mon_intval"
9082#define CFG_ADAPT_DWELL_PASMON_INTVAL_MIN (0)
Kapil Gupta6eb83c02017-03-03 11:07:52 +05309083#define CFG_ADAPT_DWELL_PASMON_INTVAL_MAX (25)
9084#define CFG_ADAPT_DWELL_PASMON_INTVAL_DEFAULT (10)
Gupta, Kapil96c7f2f2016-04-25 19:13:41 +05309085
9086/*
9087 * This parameter will set % of wifi activity used in passive scan 0-100.
9088 * Acceptable values for this: 0-100 (in %)
9089 */
9090#define CFG_ADAPT_DWELL_WIFI_THRESH_NAME "adapt_dwell_wifi_act_threshold"
9091#define CFG_ADAPT_DWELL_WIFI_THRESH_MIN (0)
9092#define CFG_ADAPT_DWELL_WIFI_THRESH_MAX (100)
9093#define CFG_ADAPT_DWELL_WIFI_THRESH_DEFAULT (10)
9094
9095/*
Manjeet Singha5acc162017-01-06 17:38:16 +05309096 * <ini>
9097 * g_bug_on_reinit_failure - Enable/Disable bug on reinit
9098 * @Min: 0
9099 * @Max: 1
9100 * @Default: 1
9101 *
9102 * This ini is used to debug ssr reinit failure issues by raising vos bug so
9103 * dumps can be collected.
9104 * g_bug_on_reinit_failure = 0 wlan driver will only recover after driver
9105 * unload and load
9106 * g_bug_on_reinit_failure = 1 raise vos bug to collect dumps
9107 *
9108 * Related: gEnableSSR
9109 *
9110 * Supported Feature: SSR
9111 *
9112 * Usage: External
9113 *
9114 * </ini>
Mukul Sharmaf7d62e12016-09-03 15:16:22 +05309115 */
9116#define CFG_BUG_ON_REINIT_FAILURE_NAME "g_bug_on_reinit_failure"
9117#define CFG_BUG_ON_REINIT_FAILURE_MIN (0)
9118#define CFG_BUG_ON_REINIT_FAILURE_MAX (1)
9119#define CFG_BUG_ON_REINIT_FAILURE_DEFAULT (1)
9120
9121/*
Abhishek Singh76587c32016-12-01 11:47:44 +05309122 * <ini>
9123 * gSub20ChannelWidth - Control sub 20 channel width (5/10 Mhz)
9124 * @Min: 0
9125 * @Max: 2
9126 * @Default: 0
9127 *
9128 * This ini is used to set the sub 20 channel width.
Naveen Rawat64e477e2016-05-20 10:34:56 -07009129 * gSub20ChannelWidth=0: indicates do not use Sub 20 MHz bandwidth
9130 * gSub20ChannelWidth=1: Bring up SAP/STA in 5 MHz bandwidth
9131 * gSub20ChannelWidth=2: Bring up SAP/STA in 10 MHz bandwidth
Abhishek Singh76587c32016-12-01 11:47:44 +05309132 *
9133 * Related: None
9134 *
9135 * Supported Feature: 5/10 Mhz channel width support
9136 *
9137 * Usage: Internal/External
9138 *
9139 * </ini>
Naveen Rawat64e477e2016-05-20 10:34:56 -07009140 */
9141#define CFG_SUB_20_CHANNEL_WIDTH_NAME "gSub20ChannelWidth"
9142#define CFG_SUB_20_CHANNEL_WIDTH_MIN (WLAN_SUB_20_CH_WIDTH_NONE)
9143#define CFG_SUB_20_CHANNEL_WIDTH_MAX (WLAN_SUB_20_CH_WIDTH_10)
9144#define CFG_SUB_20_CHANNEL_WIDTH_DEFAULT (WLAN_SUB_20_CH_WIDTH_NONE)
Nirav Shahbd36b062016-07-18 11:12:59 +05309145
Rajeev Kumar Sirasanagandlaaf474742016-09-06 17:54:50 +05309146#define CFG_TGT_GTX_USR_CFG_NAME "tgt_gtx_usr_cfg"
9147#define CFG_TGT_GTX_USR_CFG_MIN (0)
9148#define CFG_TGT_GTX_USR_CFG_MAX (32)
9149#define CFG_TGT_GTX_USR_CFG_DEFAULT (32)
9150
Arun Khandavallicc544b32017-01-30 19:52:16 +05309151#define CFG_SAP_INTERNAL_RESTART_NAME "gEnableSapInternalRestart"
9152#define CFG_SAP_INTERNAL_RESTART_MIN (0)
9153#define CFG_SAP_INTERNAL_RESTART_MAX (1)
9154#define CFG_SAP_INTERNAL_RESTART_DEFAULT (1)
9155
Nirav Shahbd36b062016-07-18 11:12:59 +05309156/*
Hanumanth Reddy Pothula9c161dd2017-03-23 19:03:08 +05309157 * <ini>
Hanumanth Reddy Pothulaffc2d482017-07-04 11:32:44 +05309158 * restart_beaconing_on_chan_avoid_event - control the beaconing entity to move
9159 * away from active LTE channels
Hanumanth Reddy Pothula9c161dd2017-03-23 19:03:08 +05309160 * @Min: 0
Tushnim Bhattacharyya3efa49a2017-07-18 15:43:09 -07009161 * @Max: 2
Hanumanth Reddy Pothula9c161dd2017-03-23 19:03:08 +05309162 * @Default: 1
9163 *
Hanumanth Reddy Pothulaffc2d482017-07-04 11:32:44 +05309164 * This ini is used to control the beaconing entity (SAP/GO) to move away from
9165 * active LTE channels when channel avoidance event is received
9166 * restart_beaconing_on_chan_avoid_event=0: Don't allow beaconing entity move
9167 * from active LTE channels
9168 * restart_beaconing_on_chan_avoid_event=1: Allow beaconing entity move from
9169 * active LTE channels
Tushnim Bhattacharyya3efa49a2017-07-18 15:43:09 -07009170 * restart_beaconing_on_chan_avoid_event=2: Allow beaconing entity move from
9171 * 2.4G active LTE channels only
Hanumanth Reddy Pothula9c161dd2017-03-23 19:03:08 +05309172 *
9173 * Related: None
9174 *
9175 * Supported Feature: channel avoidance
9176 *
9177 * Usage: Internal/External
9178 *
9179 * </ini>
9180 */
Hanumanth Reddy Pothulaffc2d482017-07-04 11:32:44 +05309181#define CFG_RESTART_BEACONING_ON_CH_AVOID_NAME "restart_beaconing_on_chan_avoid_event"
Tushnim Bhattacharyya3efa49a2017-07-18 15:43:09 -07009182#define CFG_RESTART_BEACONING_ON_CH_AVOID_MIN (CH_AVOID_RULE_DO_NOT_RESTART)
9183#define CFG_RESTART_BEACONING_ON_CH_AVOID_MAX (CH_AVOID_RULE_RESTART_24G_ONLY)
9184#define CFG_RESTART_BEACONING_ON_CH_AVOID_DEFAULT (CH_AVOID_RULE_RESTART)
Hanumanth Reddy Pothula9c161dd2017-03-23 19:03:08 +05309185/*
Agrawal, Ashish4e5fa1c2016-09-21 19:03:43 +05309186 * This parameter will avoid updating ap_sta_inactivity from hostapd.conf
9187 * file. If a station does not send anything in ap_max_inactivity seconds, an
9188 * empty data frame is sent to it in order to verify whether it is
9189 * still in range. If this frame is not ACKed, the station will be
9190 * disassociated and then deauthenticated. This feature is used to
9191 * clear station table of old entries when the STAs move out of the
9192 * range.
9193 * Default : Disable
9194 */
9195#define CFG_SAP_MAX_INACTIVITY_OVERRIDE_NAME "gSapMaxInactivityOverride"
9196#define CFG_SAP_MAX_INACTIVITY_OVERRIDE_MIN (0)
9197#define CFG_SAP_MAX_INACTIVITY_OVERRIDE_MAX (1)
9198#define CFG_SAP_MAX_INACTIVITY_OVERRIDE_DEFAULT (0)
9199
9200/*
Himanshu Agarwalf0481722016-12-06 12:46:24 +05309201 * <ini>
9202 * rx_mode - Control to decide rx mode
9203 *
9204 * @Min: 0
Tang Yingying5a4ccf22018-03-30 15:58:27 +08009205 * @Max: (CFG_ENABLE_RX_THREAD | CFG_ENABLE_RPS | CFG_ENABLE_NAPI | \
9206 * CFG_ENABLE_DYNAMIC_RPS)
Himanshu Agarwalf0481722016-12-06 12:46:24 +05309207 * @Default: MDM_PLATFORM - 0
9208 * HELIUMPLUS - CFG_ENABLE_NAPI
9209 * Other cases - (CFG_ENABLE_RX_THREAD | CFG_ENABLE_NAPI)
9210 *
9211 * This ini is used to decide mode for the rx path
9212 *
9213 * Supported Feature: NAPI
9214 *
9215 * Usage: Internal
9216 *
9217 * </ini>
Nirav Shahbd36b062016-07-18 11:12:59 +05309218 */
9219#define CFG_RX_MODE_NAME "rx_mode"
9220#define CFG_RX_MODE_MIN (0)
9221#define CFG_RX_MODE_MAX (CFG_ENABLE_RX_THREAD | CFG_ENABLE_RPS | \
Tang Yingying5a4ccf22018-03-30 15:58:27 +08009222 CFG_ENABLE_NAPI | CFG_ENABLE_DYNAMIC_RPS)
Nirav Shahbd36b062016-07-18 11:12:59 +05309223#ifdef MDM_PLATFORM
9224#define CFG_RX_MODE_DEFAULT (0)
Manjunathappa Prakash2721f942016-08-24 16:08:23 -07009225#elif defined(HELIUMPLUS)
9226#define CFG_RX_MODE_DEFAULT CFG_ENABLE_NAPI
Nirav Shahbd36b062016-07-18 11:12:59 +05309227#else
9228#define CFG_RX_MODE_DEFAULT (CFG_ENABLE_RX_THREAD | CFG_ENABLE_NAPI)
9229#endif
9230
Himanshu Agarwal24aa27e2017-05-23 11:07:50 +05309231/*
9232 * <ini>
Himanshu Agarwalbdc776f2017-08-02 12:51:08 +05309233 * ce_service_max_yield_time - Control to set ce service max yield time (in us)
Himanshu Agarwal24aa27e2017-05-23 11:07:50 +05309234 *
Himanshu Agarwalbdc776f2017-08-02 12:51:08 +05309235 * @Min: 500
9236 * @Max: 10000
9237 * @Default: 10000
Himanshu Agarwal24aa27e2017-05-23 11:07:50 +05309238 *
Himanshu Agarwalbdc776f2017-08-02 12:51:08 +05309239 * This ini is used to set ce service max yield time (in us)
Himanshu Agarwal24aa27e2017-05-23 11:07:50 +05309240 *
9241 * Supported Feature: NAPI
9242 *
9243 * Usage: Internal
9244 *
9245 * </ini>
9246 */
9247#define CFG_CE_SERVICE_MAX_YIELD_TIME_NAME "ce_service_max_yield_time"
Himanshu Agarwalbdc776f2017-08-02 12:51:08 +05309248#define CFG_CE_SERVICE_MAX_YIELD_TIME_MIN (500)
9249#define CFG_CE_SERVICE_MAX_YIELD_TIME_MAX (10000)
9250#define CFG_CE_SERVICE_MAX_YIELD_TIME_DEFAULT (10000)
Himanshu Agarwal24aa27e2017-05-23 11:07:50 +05309251
Poddar, Siddarth04eed332017-06-28 14:20:26 +05309252/*
9253 * <ini>
9254 * ce_service_max_rx_ind_flush - Control to set ce service max rx ind flush
9255 *
9256 * @Min: 1
9257 * @Max: 32
9258 * @Default: 1
9259 *
9260 * This ini is used to set ce service max rx ind flush
9261 *
9262 * Supported Feature: NAPI
9263 *
9264 * Usage: Internal
9265 *
9266 * </ini>
9267 */
9268#define CFG_CE_SERVICE_MAX_RX_IND_FLUSH_NAME "ce_service_max_rx_ind_flush"
9269#define CFG_CE_SERVICE_MAX_RX_IND_FLUSH_MIN (1)
9270#define CFG_CE_SERVICE_MAX_RX_IND_FLUSH_MAX (32)
9271#define CFG_CE_SERVICE_MAX_RX_IND_FLUSH_DEFAULT (32)
9272
Manjunathappa Prakashcb6df762018-05-29 18:54:58 -07009273/*
9274 * <ini>
9275 * NAPI_CPU_AFFINITY_MASK - CPU mask to affine NAPIs
9276 *
9277 * @Min: 0
9278 * @Max: 0xFF
9279 * @Default: 0
9280 *
9281 * This ini is used to set NAPI IRQ CPU affinity
9282 *
9283 * Supported Feature: NAPI
9284 *
9285 * Usage: Internal
9286 *
9287 * </ini>
9288 */
9289#define CFG_NAPI_CE_CPU_MASK_NAME "NAPI_CPU_AFFINITY_MASK"
9290#define CFG_NAPI_CE_CPU_MASK_MIN (0)
9291#define CFG_NAPI_CE_CPU_MASK_MAX (0xFF)
9292#define CFG_NAPI_CE_CPU_MASK_DEFAULT (0)
9293
Manjunathappa Prakashb6b4ff12018-06-04 12:32:33 -07009294/*
9295 * <ini>
9296 * RX_THREAD_CPU_AFFINITY_MASK - CPU mask to affine Rx_thread
9297 *
9298 * @Min: 0
9299 * @Max: 0xFF
9300 * @Default: 0
9301 *
9302 * This ini is used to set Rx_thread CPU affinity
9303 *
9304 * Supported Feature: Rx_thread
9305 *
9306 * Usage: Internal
9307 *
9308 * </ini>
9309 */
Manjunathappa Prakash3a21bea2018-05-29 20:41:12 -07009310#define CFG_RX_THREAD_CPU_MASK_NAME "RX_THREAD_CPU_AFFINITY_MASK"
Manjunathappa Prakashb6b4ff12018-06-04 12:32:33 -07009311#define CFG_RX_THREAD_CPU_MASK_MIN (0)
9312#define CFG_RX_THREAD_CPU_MASK_MAX (0xFF)
9313#define CFG_RX_THREAD_CPU_MASK_DEFAULT (0)
Poddar, Siddarth04eed332017-06-28 14:20:26 +05309314
Nirav Shahbd36b062016-07-18 11:12:59 +05309315/* List of RPS CPU maps for different rx queues registered by WLAN driver
9316 * Ref - Kernel/Documentation/networking/scaling.txt
9317 * RPS CPU map for a particular RX queue, selects CPU(s) for bottom half
9318 * processing of RX packets. For example, for a system with 4 CPUs,
9319 * 0xe: Use CPU1 - CPU3 and donot use CPU0.
9320 * 0x0: RPS is disabled, packets are processed on the interrupting CPU.
9321.*
9322 * WLAN driver registers NUM_TX_QUEUES queues for tx and rx each during
9323 * alloc_netdev_mq. Hence, we need to have a cpu mask for each of the rx queues.
9324 *
9325 * For example, if the NUM_TX_QUEUES is 4, a sample WLAN ini entry may look like
9326 * rpsRxQueueCpuMapList=a b c d
9327 * For a 4 CPU system (CPU0 - CPU3), this implies:
9328 * 0xa - (1010) use CPU1, CPU3 for rx queue 0
9329 * 0xb - (1011) use CPU0, CPU1 and CPU3 for rx queue 1
9330 * 0xc - (1100) use CPU2, CPU3 for rx queue 2
9331 * 0xd - (1101) use CPU0, CPU2 and CPU3 for rx queue 3
9332
9333 * In practice, we may want to avoid the cores which are heavily loaded.
9334 */
9335
9336/* Name of the ini file entry to specify RPS map for different RX queus */
9337#define CFG_RPS_RX_QUEUE_CPU_MAP_LIST_NAME "rpsRxQueueCpuMapList"
9338
9339/* Default value of rpsRxQueueCpuMapList. Different platforms may have
9340 * different configurations for NUM_TX_QUEUES and # of cpus, and will need to
9341 * configure an appropriate value via ini file. Setting default value to 'e' to
9342 * avoid use of CPU0 (since its heavily used by other system processes) by rx
9343 * queue 0, which is currently being used for rx packet processing.
9344 */
9345#define CFG_RPS_RX_QUEUE_CPU_MAP_LIST_DEFAULT "e"
9346
9347/* Maximum length of string used to hold a list of cpu maps for various rx
9348 * queues. Considering a 16 core system with 5 rx queues, a RPS CPU map
9349 * list may look like -
9350 * rpsRxQueueCpuMapList = ffff ffff ffff ffff ffff
9351 * (all 5 rx queues can be processed on all 16 cores)
9352 * max string len = 24 + 1(for '\0'). Considering 30 to be on safe side.
9353 */
9354#define CFG_RPS_RX_QUEUE_CPU_MAP_LIST_LEN 30
9355
Yingying Tang95409972016-10-20 15:16:15 +08009356#ifdef WLAN_FEATURE_WOW_PULSE
9357/*
9358 * Enable/Disable WOW PULSE feature
9359 * Set the wakeup pulse which FW use to wake up HOST
9360 * Default : Disable
9361 */
9362#define CFG_WOW_PULSE_SUPPORT_NAME "gwow_pulse_support"
9363#define CFG_WOW_PULSE_SUPPORT_MIN (0)
9364#define CFG_WOW_PULSE_SUPPORT_MAX (1)
9365#define CFG_WOW_PULSE_SUPPORT_DEFAULT (CFG_WOW_PULSE_SUPPORT_MIN)
9366
9367/*
9368 * GPIO PIN for Pulse
9369 * Which PIN to send the Pulse
9370 */
9371#define CFG_WOW_PULSE_PIN_NAME "gwow_pulse_pin"
9372#define CFG_WOW_PULSE_PIN_MIN (CFG_SET_TSF_GPIO_PIN_MIN)
9373#define CFG_WOW_PULSE_PIN_MAX (CFG_SET_TSF_GPIO_PIN_MAX)
9374#define CFG_WOW_PULSE_PIN_DEFAULT (35)
9375
9376/*
9377 * Pulse interval low
9378 * The interval of low level in the pulse
9379 * The value which defined by customer should between 160 and 480
9380 */
9381#define CFG_WOW_PULSE_INTERVAL_LOW_NAME "gwow_pulse_interval_low"
9382#define CFG_WOW_PULSE_INTERVAL_LOW_MIN (160)
9383#define CFG_WOW_PULSE_INTERVAL_LOW_MAX (480)
9384#define CFG_WOW_PULSE_INTERVAL_LOW_DEFAULT (180)
9385
9386/*
9387 * Pulse interval high
9388 * The interval of high level in the pulse
9389 * The value which defined by customer should between 20 and 40
9390 */
9391#define CFG_WOW_PULSE_INTERVAL_HIGH_NAME "gwow_pulse_interval_high"
9392#define CFG_WOW_PULSE_INTERVAL_HIGH_MIN (20)
9393#define CFG_WOW_PULSE_INTERVAL_HIGH_MAX (40)
9394#define CFG_WOW_PULSE_INTERVAL_HIGH_DEFAULT (20)
9395#endif
9396
Amar Singhal18517882016-08-08 12:26:20 -07009397/*
9398 * Support to start sap in indoor channel
9399 * Customer can config this item to enable/disable sap in indoor channel
9400 * Default: Disable
9401 */
9402#define CFG_INDOOR_CHANNEL_SUPPORT_NAME "gindoor_channel_support"
9403#define CFG_INDOOR_CHANNEL_SUPPORT_MIN (0)
9404#define CFG_INDOOR_CHANNEL_SUPPORT_MAX (1)
9405#define CFG_INDOOR_CHANNEL_SUPPORT_DEFAULT (0)
Nirav Shahbd36b062016-07-18 11:12:59 +05309406
Ravi Joshibb8d4512016-08-22 10:14:52 -07009407/*
Mukul Sharmaecf8e092017-12-19 22:36:31 +05309408 * <ini>
9409 * g_mark_sap_indoor_as_disable - Enable/Disable Indoor channel
9410 * @Min: 0
9411 * @Max: 1
9412 * @Default: 0
9413 *
9414 * This ini is used to mark the Indoor channel as
9415 * disable when SAP start and revert it on SAP stop,
9416 * so SAP will not turn on indoor channel and
9417 * sta will not scan/associate and roam on indoor
9418 * channels.
9419 *
9420 * Related: If g_mark_sap_indoor_as_disable set, turn the
9421 * indoor channels to disable and update Wiphy & fw.
9422 *
9423 * Supported Feature: SAP/STA
9424 *
9425 * Usage: External
9426 *
9427 * </ini>
9428 */
9429#define CFG_MARK_INDOOR_AS_DISABLE_NAME "g_mark_sap_indoor_as_disable"
9430#define CFG_MARK_INDOOR_AS_DISABLE_MIN (0)
9431#define CFG_MARK_INDOOR_AS_DISABLE_MAX (1)
9432#define CFG_MARK_INDOOR_AS_DISABLE_DEFAULT (0)
9433
9434/*
Rajeev Kumar Sirasanagandlab79b5462016-09-06 18:33:17 +05309435 * Force softap to 11n, when gSapForce11NFor11AC is set to 1 from ini
9436 * despite of hostapd.conf request for 11ac
9437 */
9438#define CFG_SAP_FORCE_11N_FOR_11AC_NAME "gSapForce11NFor11AC"
9439#define CFG_SAP_FORCE_11N_FOR_11AC_MIN (0)
9440#define CFG_SAP_FORCE_11N_FOR_11AC_MAX (1)
9441#define CFG_SAP_FORCE_11N_FOR_11AC_DEFAULT (0)
9442
Bala Venkateshb9cf3362017-11-09 15:48:46 +05309443#define CFG_GO_FORCE_11N_FOR_11AC_NAME "gGoForce11NFor11AC"
9444#define CFG_GO_FORCE_11N_FOR_11AC_MIN (0)
9445#define CFG_GO_FORCE_11N_FOR_11AC_MAX (1)
9446#define CFG_GO_FORCE_11N_FOR_11AC_DEFAULT (0)
9447
Rajeev Kumar Sirasanagandlab79b5462016-09-06 18:33:17 +05309448/*
Yingying Tangb4832f72016-10-20 13:44:55 +08009449 * sap tx leakage threshold
9450 * customer can set this value from 100 to 1000 which means
9451 * sap tx leakage threshold is -10db to -100db
9452 */
9453#define CFG_SAP_TX_LEAKAGE_THRESHOLD_NAME "gsap_tx_leakage_threshold"
9454#define CFG_SAP_TX_LEAKAGE_THRESHOLD_MIN (100)
9455#define CFG_SAP_TX_LEAKAGE_THRESHOLD_MAX (1000)
9456#define CFG_SAP_TX_LEAKAGE_THRESHOLD_DEFAULT (310)
9457
9458
9459/*
Ravi Joshibb8d4512016-08-22 10:14:52 -07009460 * Enable filtering of replayed multicast packets
9461 * In a typical infrastructure setup, it is quite normal to receive
9462 * replayed multicast packets. These packets may cause more harm than
9463 * help if not handled properly. Providing a configuration option
9464 * to enable filtering of such packets
9465 */
9466#define CFG_FILTER_MULTICAST_REPLAY_NAME "enable_multicast_replay_filter"
9467#define CFG_FILTER_MULTICAST_REPLAY_MIN (0)
9468#define CFG_FILTER_MULTICAST_REPLAY_MAX (1)
9469#define CFG_FILTER_MULTICAST_REPLAY_DEFAULT (1)
9470
Jeff Johnsonff4b6832018-05-06 00:06:24 -07009471/* Optimize channel avoidance indication coming from firmware */
Selvaraj, Sridharebda0f22016-08-29 16:05:23 +05309472#define CFG_OPTIMIZE_CA_EVENT_NAME "goptimize_chan_avoid_event"
9473#define CFG_OPTIMIZE_CA_EVENT_DISABLE (0)
9474#define CFG_OPTIMIZE_CA_EVENT_ENABLE (1)
9475#define CFG_OPTIMIZE_CA_EVENT_DEFAULT (0)
Ravi Joshibb8d4512016-08-22 10:14:52 -07009476
Manjeet Singha5acc162017-01-06 17:38:16 +05309477/*
9478 * <ini>
9479 * fw_timeout_crash - Enable/Disable BUG ON
9480 * @Min: 0
9481 * @Max: 1
Himanshu Agarwal1230ee02018-05-04 00:31:12 +05309482 * @Default: 1
Manjeet Singha5acc162017-01-06 17:38:16 +05309483 *
9484 * This ini is used to Trigger host crash when firmware fails to send the
9485 * response to host
9486 * fw_timeout_crash = 0 Disabled
9487 * fw_timeout_crash = 1 Trigger host crash
9488 *
9489 * Related: None
9490 *
9491 * Supported Feature: SSR
9492 *
9493 * Usage: Internal/External
9494 *
9495 * </ini>
9496 */
Sandeep Puligillaafa52892016-10-26 19:03:16 -07009497#define CFG_CRASH_FW_TIMEOUT_NAME "fw_timeout_crash"
9498#define CFG_CRASH_FW_TIMEOUT_DISABLE (0)
9499#define CFG_CRASH_FW_TIMEOUT_ENABLE (1)
Himanshu Agarwal1230ee02018-05-04 00:31:12 +05309500#define CFG_CRASH_FW_TIMEOUT_DEFAULT (1)
Sandeep Puligillaafa52892016-10-26 19:03:16 -07009501
Dustin Browncd756942016-11-23 12:25:33 -08009502/*
9503 * <ini>
9504 * rx_wakelock_timeout - Amount of time to hold wakelock for RX unicast packets
9505 * @Min: 0
9506 * @Max: 100
9507 * @Default: 50
9508 *
9509 * This ini item configures the amount of time, in milliseconds, that the driver
9510 * should prevent system power collapse after receiving an RX unicast packet.
9511 * A conigured value of 0 disables the RX Wakelock feature completely.
9512 *
9513 * Related: None.
9514 *
9515 * Supported Feature: RX Wakelock
9516 *
9517 * Usage: Internal/External
9518 *
9519 * </ini>
9520 */
9521#define CFG_RX_WAKELOCK_TIMEOUT_NAME "rx_wakelock_timeout"
9522#define CFG_RX_WAKELOCK_TIMEOUT_DEFAULT (50)
9523#define CFG_RX_WAKELOCK_TIMEOUT_MIN (0)
9524#define CFG_RX_WAKELOCK_TIMEOUT_MAX (100)
Sandeep Puligillaafa52892016-10-26 19:03:16 -07009525
Anurag Chouhan7c01cc42016-12-16 21:33:43 +05309526/*
9527 * <ini>
Manjeet Singha9cae432017-02-28 11:58:22 +05309528 * enable_5g_band_pref - Enable preference for 5G from INI.
9529 * @Min: 0
9530 * @Max: 1
9531 * @Default: 0
9532 * This ini is used to enable 5G preference parameters.
9533 *
9534 * Related: 5g_rssi_boost_threshold, 5g_rssi_boost_factor, 5g_max_rssi_boost
9535 * 5g_rssi_penalize_threshold, 5g_rssi_penalize_factor, 5g_max_rssi_penalize
9536 *
9537 * Supported Feature: 5G band preference
9538 *
9539 * Usage: External
9540 *
9541 * </ini>
9542 */
9543
9544#define CFG_ENABLE_5G_BAND_PREF_NAME "enable_5g_band_pref"
9545#define CFG_ENABLE_5G_BAND_PREF_MIN (0)
9546#define CFG_ENABLE_5G_BAND_PREF_MAX (1)
9547#define CFG_ENABLE_5G_BAND_PREF_DEFAULT (0)
9548
9549/*
9550 * <ini>
9551 * 5g_rssi_boost_threshold - A_band_boost_threshold above which 5 GHz is favored.
9552 * @Min: -55
9553 * @Max: -70
9554 * @Default: -60
9555 * This ini is used to set threshold for 5GHz band preference.
9556 *
9557 * Related: 5g_rssi_boost_factor, 5g_max_rssi_boost
9558 * 5g_rssi_penalize_threshold, 5g_rssi_penalize_factor, 5g_max_rssi_penalize
9559 *
9560 * Supported Feature: 5G band preference
9561 *
9562 * Usage: External
9563 *
9564 * </ini>
9565 */
9566#define CFG_5G_RSSI_BOOST_THRESHOLD_NAME "5g_rssi_boost_threshold"
9567#define CFG_5G_RSSI_BOOST_THRESHOLD_MIN (-55)
9568#define CFG_5G_RSSI_BOOST_THRESHOLD_MAX (-70)
9569#define CFG_5G_RSSI_BOOST_THRESHOLD_DEFAULT (-60)
9570
9571/*
9572 * <ini>
9573 * 5g_rssi_boost_factor - Factor by which 5GHz RSSI is boosted.
9574 * @Min: 0
9575 * @Max: 2
9576 * @Default: 1
9577 * This ini is used to set the 5Ghz boost factor.
9578 *
9579 * Related: 5g_rssi_boost_threshold, 5g_max_rssi_boost
9580 * 5g_rssi_penalize_threshold, 5g_rssi_penalize_factor, 5g_max_rssi_penalize
9581 *
9582 * Supported Feature: 5G band preference
9583 *
9584 * Usage: External
9585 *
9586 * </ini>
9587 */
9588#define CFG_5G_RSSI_BOOST_FACTOR_NAME "5g_rssi_boost_factor"
9589#define CFG_5G_RSSI_BOOST_FACTOR_MIN (0)
9590#define CFG_5G_RSSI_BOOST_FACTOR_MAX (2)
9591#define CFG_5G_RSSI_BOOST_FACTOR_DEFAULT (1)
9592
9593/*
9594 * <ini>
9595 * 5g_max_rssi_boost - Maximum boost that can be applied to 5GHz RSSI.
9596 * @Min: 0
9597 * @Max: 20
9598 * @Default: 10
9599 * This ini is used to set maximum boost which can be given to a 5Ghz network.
9600 *
9601 * Related: 5g_rssi_boost_threshold, 5g_rssi_boost_factor
9602 * 5g_rssi_penalize_threshold, 5g_rssi_penalize_factor, 5g_max_rssi_penalize
9603 *
9604 * Supported Feature: 5G band preference
9605 *
9606 * Usage: External
9607 *
9608 * </ini>
9609 */
9610#define CFG_5G_MAX_RSSI_BOOST_NAME "5g_max_rssi_boost"
9611#define CFG_5G_MAX_RSSI_BOOST_MIN (0)
9612#define CFG_5G_MAX_RSSI_BOOST_MAX (20)
9613#define CFG_5G_MAX_RSSI_BOOST_DEFAULT (10)
9614
9615/*
9616 * <ini>
9617 * 5g_rssi_penalize_threshold - A_band_penalize_threshold above which
9618 * 5 GHz is not favored.
9619 * @Min: -65
9620 * @Max: -80
9621 * @Default: -70
9622 * This ini is used to set threshold for 5GHz band preference.
9623 *
9624 * Related: 5g_rssi_penalize_factor, 5g_max_rssi_penalize
9625 * 5g_rssi_boost_threshold, 5g_rssi_boost_factor, 5g_max_rssi_boost
9626 *
9627 * Supported Feature: 5G band preference
9628 *
9629 * Usage: External
9630 *
9631 * </ini>
9632 */
9633#define CFG_5G_RSSI_PENALIZE_THRESHOLD_NAME "5g_rssi_penalize_threshold"
9634#define CFG_5G_RSSI_PENALIZE_THRESHOLD_MIN (-65)
9635#define CFG_5G_RSSI_PENALIZE_THRESHOLD_MAX (-80)
9636#define CFG_5G_RSSI_PENALIZE_THRESHOLD_DEFAULT (-70)
9637
9638/*
9639 * <ini>
9640 * 5g_rssi_penalize_factor - Factor by which 5GHz RSSI is penalizeed.
9641 * @Min: 0
9642 * @Max: 2
9643 * @Default: 1
9644 * This ini is used to set the 5Ghz penalize factor.
9645 *
9646 * Related: 5g_rssi_penalize_threshold, 5g_max_rssi_penalize
9647 * 5g_rssi_boost_threshold, 5g_rssi_boost_factor, 5g_max_rssi_boost
9648 *
9649 * Supported Feature: 5G band preference
9650 *
9651 * Usage: External
9652 *
9653 * </ini>
9654 */
9655#define CFG_5G_RSSI_PENALIZE_FACTOR_NAME "5g_rssi_penalize_factor"
9656#define CFG_5G_RSSI_PENALIZE_FACTOR_MIN (0)
9657#define CFG_5G_RSSI_PENALIZE_FACTOR_MAX (2)
9658#define CFG_5G_RSSI_PENALIZE_FACTOR_DEFAULT (1)
9659
9660/*
9661 * <ini>
9662 * 5g_max_rssi_penalize - Maximum penalty that can be applied to 5GHz RSSI.
9663 * @Min: 0
9664 * @Max: 20
9665 * @Default: 10
9666 * This ini is used to set maximum penalty which can be given to a 5Ghz network.
9667 *
9668 * Related: 5g_rssi_penalize_threshold, 5g_rssi_penalize_factor
9669 * 5g_rssi_boost_threshold, 5g_rssi_boost_factor, 5g_max_rssi_boost
9670 *
9671 * Supported Feature: 5G band preference
9672 *
9673 * Usage: External
9674 *
9675 * </ini>
9676 */
9677#define CFG_5G_MAX_RSSI_PENALIZE_NAME "5g_max_rssi_penalize"
9678#define CFG_5G_MAX_RSSI_PENALIZE_MIN (0)
9679#define CFG_5G_MAX_RSSI_PENALIZE_MAX (20)
9680#define CFG_5G_MAX_RSSI_PENALIZE_DEFAULT (10)
9681
9682/*
9683 * <ini>
Anurag Chouhan7c01cc42016-12-16 21:33:43 +05309684 * g_max_sched_scan_plan_int - pno sched max scan plan interval.
9685 * @Min: 1
9686 * @Max: 7200
9687 * @Default: 3600
9688 *
9689 * This ini is used to set max sched scan plan interval for pno scan
9690 * (value in seconds).
9691 *
9692 * Related: gPNOScanSupport
9693 *
9694 * Supported Feature: PNO scan
9695 *
9696 * Usage: External
9697 *
9698 * </ini>
9699 */
9700#define CFG_MAX_SCHED_SCAN_PLAN_INT_NAME "g_max_sched_scan_plan_int"
9701#define CFG_MAX_SCHED_SCAN_PLAN_INT_MIN (1)
9702#define CFG_MAX_SCHED_SCAN_PLAN_INT_MAX (7200)
9703#define CFG_MAX_SCHED_SCAN_PLAN_INT_DEFAULT (3600)
9704
9705/*
9706 * <ini>
9707 * g_max_sched_scan_plan_iterations - pno sched max scan plan iterations.
9708 * @Min: 1
9709 * @Max: 100
9710 * @Default: 10
9711 *
9712 * This ini is used to set max sched scan plan iterations for pno scan
9713 * (value in seconds).
9714 *
9715 * Related: gPNOScanSupport
9716 *
9717 * Supported Feature: PNO scan
9718 *
9719 * Usage: External
9720 *
9721 * </ini>
9722 */
9723#define CFG_MAX_SCHED_SCAN_PLAN_ITRNS_NAME "g_max_sched_scan_plan_iterations"
9724#define CFG_MAX_SCHED_SCAN_PLAN_ITRNS_MIN (1)
9725#define CFG_MAX_SCHED_SCAN_PLAN_ITRNS_MAX (100)
9726#define CFG_MAX_SCHED_SCAN_PLAN_ITRNS_DEFAULT (10)
9727
Jeff Johnson441e1f72017-02-07 08:50:49 -08009728/**
9729 * enum hdd_wext_control - knob for wireless extensions
9730 * @hdd_wext_disabled - interface is completely disabled. An access
9731 * control error log will be generated for each attempted use.
9732 * @hdd_wext_deprecated - interface is available but should not be
9733 * used. An access control warning log will be generated for each
9734 * use.
9735 * @hdd_wext_enabled - interface is available without restriction. No
9736 * access control logs will be generated.
9737 *
9738 * enum hdd_wext_control is used to enable coarse grained control on
9739 * wireless extensions ioctls. This control is used by configuration
Jeff Johnson618764f2018-03-21 16:04:35 -07009740 * item private_wext_control.
Jeff Johnson441e1f72017-02-07 08:50:49 -08009741 *
9742 */
9743enum hdd_wext_control {
9744 hdd_wext_disabled = 0,
9745 hdd_wext_deprecated = 1,
9746 hdd_wext_enabled = 2,
9747};
9748
9749/*
9750 * <ini>
Jeff Johnson441e1f72017-02-07 08:50:49 -08009751 * private_wext_control - Private wireless extensions control
9752 * @Min: 0
9753 * @Max: 2
9754 * @Default: 1
9755 *
9756 * Values are per enum hdd_wext_control.
9757 *
9758 * This ini is used to control access to private wireless extensions
9759 * ioctls SIOCIWFIRSTPRIV (0x8BE0) thru SIOCIWLASTPRIV (0x8BFF). The
9760 * functionality provided by some of these ioctls has been superceeded
9761 * by cfg80211 (either standard commands or vendor commands), but many
9762 * of the private ioctls do not have a cfg80211-based equivalent, so
9763 * by default support for these ioctls is deprecated.
9764 *
9765 * Related: None
9766 *
9767 * Supported Feature: All
9768 *
9769 * Usage: Internal/External
9770 *
9771 * </ini>
9772 */
9773#define CFG_PRIVATE_WEXT_CONTROL_NAME "private_wext_control"
9774#define CFG_PRIVATE_WEXT_CONTROL_MIN (hdd_wext_disabled)
9775#define CFG_PRIVATE_WEXT_CONTROL_MAX (hdd_wext_enabled)
9776#define CFG_PRIVATE_WEXT_CONTROL_DEFAULT (hdd_wext_deprecated)
9777
Jeff Johnsondcd2cf92017-01-12 10:44:23 -08009778/*
Selvaraj, Sridhar0a71e542017-01-10 10:21:06 +05309779 * <ini>
Kapil Gupta957827b2017-02-13 15:47:04 +05309780 * gper_roam_mon_time - Minimum time required in seconds to
9781 * be considered as valid scenario for PER based roam
9782 * @Min: 5
9783 * @Max: 25
9784 * @Default: 25
9785 *
9786 * This ini is used to define minimum time in seconds for which DUT has
9787 * collected the PER stats before it can consider the stats hysteresis to be
9788 * valid for PER based scan.
9789 * DUT collects following information during this period:
9790 * 1. % of packets below gper_roam_low_rate_th
9791 * 2. # packets above gper_roam_high_rate_th
9792 * if DUT gets (1) greater than gper_roam_th_percent and (2) is zero during
9793 * this period, it triggers PER based roam scan.
9794 *
9795 * Related: gper_roam_enabled, gper_roam_high_rate_th, gper_roam_low_rate_th,
9796 * gper_roam_th_percent, gper_roam_rest_time
9797 *
9798 * Supported Feature: LFR-3.0
9799 *
9800 * Usage: Internal
9801 *
9802 * </ini>
9803 */
9804#define CFG_PER_ROAM_MONITOR_TIME "gper_roam_mon_time"
9805#define CFG_PER_ROAM_MONITOR_TIME_MIN (5)
9806#define CFG_PER_ROAM_MONITOR_TIME_MAX (25)
9807#define CFG_PER_ROAM_MONTIOR_TIME_DEFAULT (25)
9808
9809/*
9810 * <ini>
Selvaraj, Sridhar0a71e542017-01-10 10:21:06 +05309811 * gPowerUsage - Preferred Power Usage
9812 * @Min: Min
9813 * @Max: Max
9814 * @Default: Mod
9815 *
9816 * This ini is used to set the preferred power usage
9817 *
9818 * Related: None
9819 *
9820 * Supported Feature: Power Save
9821 *
9822 * Usage: External
9823 *
9824 * </ini>
9825 */
9826#define CFG_POWER_USAGE_NAME "gPowerUsage"
9827#define CFG_POWER_USAGE_MIN "Min"
9828#define CFG_POWER_USAGE_MAX "Max"
9829#define CFG_POWER_USAGE_DEFAULT "Mod"
9830
Selvaraj, Sridhar0a71e542017-01-10 10:21:06 +05309831
9832/*
9833 * <ini>
Selvaraj, Sridhar0641fab2017-05-17 16:02:00 +05309834 * gper_min_rssi_threshold_for_roam - Minimum roamable AP RSSI for
9835 * candidate selection for PER based roam
9836 * @Min: 0
9837 * @Max: 96
9838 * @Default: 83
9839 *
9840 * Minimum roamable AP RSSI for candidate selection for PER based roam
9841 *
9842 * Related: gper_roam_enabled, gper_roam_high_rate_th, gper_roam_low_rate_th,
9843 * gper_roam_th_percent, gper_roam_rest_time
9844 *
9845 * Supported Feature: LFR-3.0
9846 *
9847 * Usage: Internal
9848 *
9849 * </ini>
9850 */
9851#define CFG_PER_ROAM_MIN_CANDIDATE_RSSI "gper_min_rssi_threshold_for_roam"
9852#define CFG_PER_ROAM_MIN_CANDIDATE_RSSI_MIN (0)
9853#define CFG_PER_ROAM_MIN_CANDIDATE_RSSI_MAX (96)
9854#define CFG_PER_ROAM_MIN_CANDIDATE_RSSI_DEFAULT (83)
9855
9856
9857/*
9858 * <ini>
Selvaraj, Sridhar0a71e542017-01-10 10:21:06 +05309859 * gEnableImps - Enable/Disable IMPS
9860 * @Min: 0
9861 * @Max: 1
9862 * @Default: 1
9863 *
9864 * This ini is used to enable/Disable IMPS(IdleModePowerSave) Mode
9865 *
9866 * Related: None
9867 *
9868 * Supported Feature: Power Save
9869 *
9870 * Usage: External
9871 *
9872 * </ini>
9873 */
9874#define CFG_ENABLE_IMPS_NAME "gEnableImps"
9875#define CFG_ENABLE_IMPS_MIN (0)
9876#define CFG_ENABLE_IMPS_MAX (1)
9877#define CFG_ENABLE_IMPS_DEFAULT (1)
9878
9879/*
9880 * <ini>
9881 * gEnableBmps - Enable/Disable BMPS
9882 * @Min: 0
9883 * @Max: 1
9884 * @Default: 1
9885 *
9886 * This ini is used to enable/Disable BMPS(BeaconModePowerSave) Mode
9887 *
9888 * Related: None
9889 *
9890 * Supported Feature: Power Save
9891 *
9892 * Usage: External
9893 *
9894 * </ini>
9895 */
9896#define CFG_ENABLE_PS_NAME "gEnableBmps"
9897#define CFG_ENABLE_PS_MIN (0)
9898#define CFG_ENABLE_PS_MAX (1)
9899#define CFG_ENABLE_PS_DEFAULT (1)
9900
9901/*
9902 * <ini>
9903 * gAutoBmpsTimerValue - Set Auto BMPS Timer value
9904 * @Min: 0
9905 * @Max: 120
Rajeev Kumar4a708232018-03-28 10:30:12 -07009906 * @Default: 5
Selvaraj, Sridhar0a71e542017-01-10 10:21:06 +05309907 *
9908 * This ini is used to set Auto BMPS Timer value in seconds
9909 *
9910 * Related: gEnableBmps
9911 *
9912 * Supported Feature: Power Save
9913 *
9914 * Usage: External
9915 *
9916 * </ini>
9917 */
9918#define CFG_AUTO_PS_ENABLE_TIMER_NAME "gAutoBmpsTimerValue"
9919#define CFG_AUTO_PS_ENABLE_TIMER_MIN (0)
9920#define CFG_AUTO_PS_ENABLE_TIMER_MAX (120)
Rajeev Kumar4a708232018-03-28 10:30:12 -07009921#define CFG_AUTO_PS_ENABLE_TIMER_DEFAULT (5)
Selvaraj, Sridhar0a71e542017-01-10 10:21:06 +05309922
Zhu Jianmin04392c42017-05-12 16:34:53 +08009923#ifdef WLAN_ICMP_DISABLE_PS
9924/*
9925 * <ini>
9926 * gIcmpDisablePsValue - Set ICMP packet disable power save value
9927 * @Min: 0
9928 * @Max: 10000
9929 * @Default: 5000
9930 *
9931 * This ini is used to set ICMP packet disable power save value in
9932 * millisecond.
9933 *
9934 * Related: gEnableBmps
9935 *
9936 * Supported Feature: Power Save
9937 *
9938 * Usage: External
9939 *
9940 * </ini>
9941 */
9942#define CFG_ICMP_DISABLE_PS_NAME "gIcmpDisablePsValue"
9943#define CFG_ICMP_DISABLE_PS_MIN (0)
9944#define CFG_ICMP_DISABLE_PS_MAX (10000)
9945#define CFG_ICMP_DISABLE_PS_DEFAULT (5000)
9946#endif
9947
Selvaraj, Sridhar0a71e542017-01-10 10:21:06 +05309948/*
9949 * <ini>
9950 * gBmpsMinListenInterval - Set BMPS Minimum Listen Interval
9951 * @Min: 1
9952 * @Max: 65535
9953 * @Default: 1
9954 *
9955 * This ini is used to set BMPS Minimum Listen Interval. If gPowerUsage
9956 * is set "Min", this INI need to be set.
9957 *
9958 * Related: gEnableBmps, gPowerUsage
9959 *
9960 * Supported Feature: Power Save
9961 *
9962 * Usage: External
9963 *
9964 * </ini>
9965 */
9966#define CFG_BMPS_MINIMUM_LI_NAME "gBmpsMinListenInterval"
9967#define CFG_BMPS_MINIMUM_LI_MIN (1)
9968#define CFG_BMPS_MINIMUM_LI_MAX (65535)
9969#define CFG_BMPS_MINIMUM_LI_DEFAULT (1)
9970
9971/*
9972 * <ini>
Selvaraj, Sridhar0a71e542017-01-10 10:21:06 +05309973 * gBmpsMaxListenInterval - Set BMPS Maximum Listen Interval
9974 * @Min: 1
9975 * @Max: 65535
9976 * @Default: 1
9977 *
9978 * This ini is used to set BMPS Maximum Listen Interval. If gPowerUsage
9979 * is set "Max", this INI need to be set.
9980 *
9981 * Related: gEnableBmps, gPowerUsage
9982 *
9983 * Supported Feature: Power Save
9984 *
9985 * Usage: External
9986 *
9987 * </ini>
9988 */
9989#define CFG_BMPS_MAXIMUM_LI_NAME "gBmpsMaxListenInterval"
9990#define CFG_BMPS_MAXIMUM_LI_MIN (1)
9991#define CFG_BMPS_MAXIMUM_LI_MAX (65535)
9992#define CFG_BMPS_MAXIMUM_LI_DEFAULT (1)
9993
9994#ifdef FEATURE_RUNTIME_PM
9995/*
9996 * <ini>
9997 * gRuntimePM - enable runtime suspend
9998 * @Min: 0
9999 * @Max: 1
10000 * @Default: 0
10001 *
10002 * This ini is used to enable runtime_suspend
10003 *
10004 * Related: None
10005 *
10006 * Supported Feature: Power Save
10007 *
10008 * Usage: External
10009 *
10010 * </ini>
10011 */
10012#define CFG_ENABLE_RUNTIME_PM "gRuntimePM"
10013#define CFG_ENABLE_RUNTIME_PM_MIN (0)
10014#define CFG_ENABLE_RUNTIME_PM_MAX (1)
10015#define CFG_ENABLE_RUNTIME_PM_DEFAULT (0)
10016
10017/*
10018 * <ini>
10019 * gRuntimePMDelay - Set runtime pm's inactivity timer
10020 * @Min: 0
10021 * @Max: 1
10022 * @Default: 0
10023 *
10024 * This ini is used to set runtime pm's inactivity timer value.
10025 * the wlan driver will wait for this number of milliseconds of
10026 * inactivity before performing a runtime suspend.
10027 *
10028 * Related: gRuntimePM
10029 *
10030 * Supported Feature: Power Save
10031 *
10032 * Usage: External
10033 *
10034 * </ini>
10035 */
10036#define CFG_RUNTIME_PM_DELAY_NAME "gRuntimePMDelay"
10037#define CFG_RUNTIME_PM_DELAY_MIN (100)
10038#define CFG_RUNTIME_PM_DELAY_MAX (10000)
10039#define CFG_RUNTIME_PM_DELAY_DEFAULT (500)
10040#endif
10041
10042/*
10043 * <ini>
10044 * gEnablePowerSaveOffload - Enable Power Save Offload
10045 * @Min: 0
10046 * @Max: 5
10047 * @Default: 0
10048 *
10049 * This ini is used to set Power Save Offload configuration:
10050 * Current values of gEnablePowerSaveOffload:
10051 * 0 -> Power save offload is disabled
10052 * 1 -> Legacy Power save enabled + Deep sleep Disabled
10053 * 2 -> QPower enabled + Deep sleep Disabled
10054 * 3 -> Legacy Power save enabled + Deep sleep Enabled
10055 * 4 -> QPower enabled + Deep sleep Enabled
10056 * 5 -> Duty cycling QPower enabled
10057 *
10058 * Related: None
10059 *
10060 * Supported Feature: Power Save
10061 *
10062 * Usage: External
10063 *
10064 * </ini>
10065 */
10066#define CFG_POWERSAVE_OFFLOAD_NAME "gEnablePowerSaveOffload"
10067#define CFG_POWERSAVE_OFFLOAD_MIN (0)
10068#define CFG_POWERSAVE_OFFLOAD_MAX (PS_DUTY_CYCLING_QPOWER)
10069#define CFG_POWERSAVE_OFFLOAD_DEFAULT (CFG_POWERSAVE_OFFLOAD_MIN)
10070
10071/*
10072 * <ini>
10073 * gEnableWoW - Enable/Disable WoW
10074 * @Min: 0
10075 * @Max: 3
10076 * @Default: 3
10077 *
10078 * This ini is used to enable/disable WoW. Configurations are as follows:
10079 * 0 - Disable both magic pattern match and pattern byte match.
10080 * 1 - Enable magic pattern match on all interfaces.
10081 * 2 - Enable pattern byte match on all interfaces.
10082 * 3 - Enable both magic patter and pattern byte match on all interfaces.
10083 *
10084 * Related: None
10085 *
10086 * Supported Feature: Power Save
10087 *
10088 * Usage: External
10089 *
10090 * </ini>
10091 */
10092#define CFG_WOW_STATUS_NAME "gEnableWoW"
10093#define CFG_WOW_ENABLE_MIN (0)
10094#define CFG_WOW_ENABLE_MAX (3)
10095#define CFG_WOW_STATUS_DEFAULT (3)
10096
10097#ifdef WLAN_FEATURE_EXTWOW_SUPPORT
10098/*
10099 * <ini>
10100 * gExtWoWgotoSuspend - Enable/Disable Extended WoW
10101 * @Min: 0
10102 * @Max: 1
10103 * @Default: 1
10104 *
10105 * This ini is used to enable/disable Extended WoW.
10106 *
10107 * Related: None
10108 *
10109 * Supported Feature: Power Save
10110 *
10111 * Usage: External
10112 *
10113 * </ini>
10114 */
10115#define CFG_EXTWOW_GO_TO_SUSPEND "gExtWoWgotoSuspend"
10116#define CFG_EXTWOW_GO_TO_SUSPEND_MIN (0)
10117#define CFG_EXTWOW_GO_TO_SUSPEND_MAX (1)
10118#define CFG_EXTWOW_GO_TO_SUSPEND_DEFAULT (1)
10119
10120/*
10121 * <ini>
10122 * gExtWowApp1WakeupPinNumber - Set wakeup1 PIN number
10123 * @Min: 0
10124 * @Max: 255
10125 * @Default: 12
10126 *
10127 * This ini is used to set EXT WOW APP1 wakeup PIN number
10128 *
10129 * Related: None
10130 *
10131 * Supported Feature: Power Save
10132 *
10133 * Usage: External
10134 *
10135 * </ini>
10136 */
10137#define CFG_EXTWOW_APP1_WAKE_PIN_NUMBER "gExtWowApp1WakeupPinNumber"
10138#define CFG_EXTWOW_APP1_WAKE_PIN_NUMBER_MIN (0)
10139#define CFG_EXTWOW_APP1_WAKE_PIN_NUMBER_MAX (255)
10140#define CFG_EXTWOW_APP1_WAKE_PIN_NUMBER_DEFAULT (12)
10141
10142/*
10143 * <ini>
10144 * gExtWowApp2WakeupPinNumber - Set wakeup2 PIN number
10145 * @Min: 0
10146 * @Max: 255
10147 * @Default: 16
10148 *
10149 * This ini is used to set EXT WOW APP2 wakeup PIN number
10150 *
10151 * Related: None
10152 *
10153 * Supported Feature: Power Save
10154 *
10155 * Usage: External
10156 *
10157 * </ini>
10158 */
10159#define CFG_EXTWOW_APP2_WAKE_PIN_NUMBER "gExtWowApp2WakeupPinNumber"
10160#define CFG_EXTWOW_APP2_WAKE_PIN_NUMBER_MIN (0)
10161#define CFG_EXTWOW_APP2_WAKE_PIN_NUMBER_MAX (255)
10162#define CFG_EXTWOW_APP2_WAKE_PIN_NUMBER_DEFAULT (16)
10163
10164/*
10165 * <ini>
10166 * gExtWoWApp2KAInitPingInterval - Set Keep Alive Init Ping Interval
10167 * @Min: 0
10168 * @Max: 0xffffffff
10169 * @Default: 240
10170 *
10171 * This ini is used to set Keep Alive Init Ping Interval for EXT WOW
10172 *
10173 * Related: None
10174 *
10175 * Supported Feature: Power Save
10176 *
10177 * Usage: External
10178 *
10179 * </ini>
10180 */
10181#define CFG_EXTWOW_KA_INIT_PING_INTERVAL "gExtWoWApp2KAInitPingInterval"
10182#define CFG_EXTWOW_KA_INIT_PING_INTERVAL_MIN (0)
10183#define CFG_EXTWOW_KA_INIT_PING_INTERVAL_MAX (0xffffffff)
10184#define CFG_EXTWOW_KA_INIT_PING_INTERVAL_DEFAULT (240)
10185
10186/*
10187 * <ini>
10188 * gExtWoWApp2KAMinPingInterval - Set Keep Alive Minimum Ping Interval
10189 * @Min: 0
10190 * @Max: 0xffffffff
10191 * @Default: 240
10192 *
10193 * This ini is used to set Keep Alive Minimum Ping Interval for EXT WOW
10194 *
10195 * Related: None
10196 *
10197 * Supported Feature: Power Save
10198 *
10199 * Usage: External
10200 *
10201 * </ini>
10202 */
10203#define CFG_EXTWOW_KA_MIN_PING_INTERVAL "gExtWoWApp2KAMinPingInterval"
10204#define CFG_EXTWOW_KA_MIN_PING_INTERVAL_MIN (0)
10205#define CFG_EXTWOW_KA_MIN_PING_INTERVAL_MAX (0xffffffff)
10206#define CFG_EXTWOW_KA_MIN_PING_INTERVAL_DEFAULT (240)
10207
10208/*
10209 * <ini>
10210 * gExtWoWApp2KAMaxPingInterval - Set Keep Alive Maximum Ping Interval
10211 * @Min: 0
10212 * @Max: 0xffffffff
10213 * @Default: 1280
10214 *
10215 * This ini is used to set Keep Alive Maximum Ping Interval for EXT WOW
10216 *
10217 * Related: None
10218 *
10219 * Supported Feature: Power Save
10220 *
10221 * Usage: External
10222 *
10223 * </ini>
10224 */
10225#define CFG_EXTWOW_KA_MAX_PING_INTERVAL "gExtWoWApp2KAMaxPingInterval"
10226#define CFG_EXTWOW_KA_MAX_PING_INTERVAL_MIN (0)
10227#define CFG_EXTWOW_KA_MAX_PING_INTERVAL_MAX (0xffffffff)
10228#define CFG_EXTWOW_KA_MAX_PING_INTERVAL_DEFAULT (1280)
10229
10230/*
10231 * <ini>
10232 * gExtWoWApp2KAIncPingInterval - Set Keep Alive increment of Ping Interval
10233 * @Min: 0
10234 * @Max: 0xffffffff
10235 * @Default: 4
10236 *
10237 * This ini is used to set Keep Alive increment of Ping Interval for EXT WOW
10238 *
10239 * Related: None
10240 *
10241 * Supported Feature: Power Save
10242 *
10243 * Usage: External
10244 *
10245 * </ini>
10246 */
10247#define CFG_EXTWOW_KA_INC_PING_INTERVAL "gExtWoWApp2KAIncPingInterval"
10248#define CFG_EXTWOW_KA_INC_PING_INTERVAL_MIN (0)
10249#define CFG_EXTWOW_KA_INC_PING_INTERVAL_MAX (0xffffffff)
10250#define CFG_EXTWOW_KA_INC_PING_INTERVAL_DEFAULT (4)
10251
10252/*
10253 * <ini>
10254 * gExtWoWApp2KAIncPingInterval - Set TCP source port
10255 * @Min: 0
10256 * @Max: 65535
10257 * @Default: 5000
10258 *
10259 * This ini is used to set TCP source port when EXT WOW is enabled
10260 *
10261 * Related: None
10262 *
10263 * Supported Feature: Power Save
10264 *
10265 * Usage: External
10266 *
10267 * </ini>
10268 */
10269#define CFG_EXTWOW_TCP_SRC_PORT "gExtWoWApp2TcpSrcPort"
10270#define CFG_EXTWOW_TCP_SRC_PORT_MIN (0)
10271#define CFG_EXTWOW_TCP_SRC_PORT_MAX (65535)
10272#define CFG_EXTWOW_TCP_SRC_PORT_DEFAULT (5000)
10273
10274/*
10275 * <ini>
10276 * gExtWoWApp2TcpDstPort - Set TCP Destination port
10277 * @Min: 0
10278 * @Max: 65535
10279 * @Default: 5001
10280 *
10281 * This ini is used to set TCP Destination port when EXT WOW is enabled
10282 *
10283 * Related: None
10284 *
10285 * Supported Feature: Power Save
10286 *
10287 * Usage: External
10288 *
10289 * </ini>
10290 */
10291#define CFG_EXTWOW_TCP_DST_PORT "gExtWoWApp2TcpDstPort"
10292#define CFG_EXTWOW_TCP_DST_PORT_MIN (0)
10293#define CFG_EXTWOW_TCP_DST_PORT_MAX (65535)
10294#define CFG_EXTWOW_TCP_DST_PORT_DEFAULT (5001)
10295
10296/*
10297 * <ini>
10298 * gExtWoWApp2TcpTxTimeout - Set TCP tx timeout
10299 * @Min: 0
10300 * @Max: 0xffffffff
10301 * @Default: 200
10302 *
10303 * This ini is used to set TCP Tx timeout when EXT WOW is enabled
10304 *
10305 * Related: None
10306 *
10307 * Supported Feature: Power Save
10308 *
10309 * Usage: External
10310 *
10311 * </ini>
10312 */
10313#define CFG_EXTWOW_TCP_TX_TIMEOUT "gExtWoWApp2TcpTxTimeout"
10314#define CFG_EXTWOW_TCP_TX_TIMEOUT_MIN (0)
10315#define CFG_EXTWOW_TCP_TX_TIMEOUT_MAX (0xffffffff)
10316#define CFG_EXTWOW_TCP_TX_TIMEOUT_DEFAULT (200)
10317
10318/*
10319 * <ini>
10320 * gExtWoWApp2TcpRxTimeout - Set TCP rx timeout
10321 * @Min: 0
10322 * @Max: 0xffffffff
10323 * @Default: 200
10324 *
10325 * This ini is used to set TCP Rx timeout when EXT WOW is enabled
10326 *
10327 * Related: None
10328 *
10329 * Supported Feature: Power Save
10330 *
10331 * Usage: External
10332 *
10333 * </ini>
10334 */
10335#define CFG_EXTWOW_TCP_RX_TIMEOUT "gExtWoWApp2TcpRxTimeout"
10336#define CFG_EXTWOW_TCP_RX_TIMEOUT_MIN (0)
10337#define CFG_EXTWOW_TCP_RX_TIMEOUT_MAX (0xffffffff)
10338#define CFG_EXTWOW_TCP_RX_TIMEOUT_DEFAULT (200)
10339#endif
10340
10341/*
Kapil Gupta5cda2252016-12-29 18:44:26 +053010342 * <ini>
10343 * gper_roam_enabled - To enabled/disable PER based roaming in FW
10344 * @Min: 0
Kapil Gupta6e6c26b2017-01-20 18:59:43 +053010345 * @Max: 3
10346 * @Default: 0
Kapil Gupta5cda2252016-12-29 18:44:26 +053010347 *
10348 * This ini is used to enable/disable Packet error based roaming, enabling this
10349 * will cause DUT to monitor Tx and Rx traffic and roam to a better candidate
10350 * if current is not good enough.
10351 *
Kapil Gupta6e6c26b2017-01-20 18:59:43 +053010352 * Values supported:
10353 * 0: disabled
10354 * 1: enabled for Rx traffic
10355 * 2: enabled for Tx traffic
10356 * 3: enabled for Tx and Rx traffic
10357 *
Kapil Gupta5cda2252016-12-29 18:44:26 +053010358 * Related: gper_roam_high_rate_th, gper_roam_low_rate_th,
10359 * gper_roam_th_percent, gper_roam_rest_time
10360 *
10361 * Supported Feature: LFR-3.0
10362 *
10363 * Usage: Internal
10364 *
10365 * </ini>
10366 */
10367#define CFG_PER_ROAM_ENABLE_NAME "gper_roam_enabled"
10368#define CFG_PER_ROAM_ENABLE_MIN (0)
Kapil Gupta6e6c26b2017-01-20 18:59:43 +053010369#define CFG_PER_ROAM_ENABLE_MAX (3)
Kapil Guptaaa902a72017-04-04 14:00:51 +053010370#define CFG_PER_ROAM_ENABLE_DEFAULT (3)
Kapil Gupta5cda2252016-12-29 18:44:26 +053010371
10372/*
10373 * <ini>
10374 * gper_roam_high_rate_th - Rate at which PER based roam will stop
10375 * @Min: 1 Mbps
10376 * @Max: 0xffffffff
10377 * @Default: 40 Mbps
10378 *
10379 * This ini is used to define the data rate in mbps*10 at which FW will stop
10380 * monitoring the traffic for PER based roam.
10381 *
10382 * Related: gper_roam_enabled, gper_roam_low_rate_th,
10383 * gper_roam_th_percent, gper_roam_rest_time
10384 *
10385 * Supported Feature: LFR-3.0
10386 *
10387 * Usage: Internal
10388 *
10389 * </ini>
10390 */
10391#define CFG_PER_ROAM_CONFIG_HIGH_RATE_TH_NAME "gper_roam_high_rate_th"
10392#define CFG_PER_ROAM_CONFIG_HIGH_RATE_TH_MIN (10)
10393#define CFG_PER_ROAM_CONFIG_HIGH_RATE_TH_MAX (0xffffffff)
10394#define CFG_PER_ROAM_CONFIG_HIGH_RATE_TH_DEFAULT (400)
10395
10396/*
10397 * <ini>
10398 * gper_roam_low_rate_th - Rate at which FW starts considering traffic for PER
10399 * based roam.
10400 *
10401 * @Min: 1 Mbps
10402 * @Max: 0xffffffff
10403 * @Default: 20 Mbps
10404 *
10405 * This ini is used to define the rate in mbps*10 at which FW starts considering
10406 * traffic for PER based roam, if gper_roam_th_percent of data is below this
10407 * rate, FW will issue a roam scan.
10408 *
10409 * Related: gper_roam_enabled, gper_roam_high_rate_th,
10410 * gper_roam_th_percent, gper_roam_rest_time
10411 *
10412 * Supported Feature: LFR-3.0
10413 *
10414 * Usage: Internal
10415 *
10416 * </ini>
10417 */
10418#define CFG_PER_ROAM_CONFIG_LOW_RATE_TH_NAME "gper_roam_low_rate_th"
10419#define CFG_PER_ROAM_CONFIG_LOW_RATE_TH_MIN (10)
10420#define CFG_PER_ROAM_CONFIG_LOW_RATE_TH_MAX (0xffffffff)
10421#define CFG_PER_ROAM_CONFIG_LOW_RATE_TH_DEFAULT (200)
10422
10423/*
10424 * <ini>
10425 * gper_roam_th_percent - Percentage at which FW will issue a roam scan if
10426 * traffic is below gper_roam_low_rate_th rate.
10427 *
10428 * @Min: 10%
10429 * @Max: 100%
10430 * @Default: 60%
10431 *
10432 * This ini is used to define the percentage at which FW will issue a roam scan
10433 * if traffic is below gper_roam_low_rate_th rate.
10434 *
10435 * Related: gper_roam_enabled, gper_roam_high_rate_th,
10436 * gper_roam_high_rate_th, gper_roam_rest_time
10437 *
10438 * Supported Feature: LFR-3.0
10439 *
10440 * Usage: Internal
10441 *
10442 * </ini>
10443 */
10444#define CFG_PER_ROAM_CONFIG_RATE_TH_PERCENT_NAME "gper_roam_th_percent"
10445#define CFG_PER_ROAM_CONFIG_RATE_TH_PERCENT_MIN (10)
10446#define CFG_PER_ROAM_CONFIG_RATE_TH_PERCENT_MAX (100)
10447#define CFG_PER_ROAM_CONFIG_RATE_TH_PERCENT_DEFAULT (60)
10448
10449/*
10450 * <ini>
10451 * gper_roam_rest_time - Time for which FW will wait once it issues a
10452 * roam scan.
10453 *
10454 * @Min: 10 seconds
10455 * @Max: 3600 seconds
10456 * @Default: 300 seconds
10457 *
10458 * This ini is used to define the time for which FW will wait once it issues a
10459 * PER based roam scan.
10460 *
10461 * Related: gper_roam_enabled, gper_roam_high_rate_th,
10462 * gper_roam_high_rate_th, gper_roam_th_percent
10463 *
10464 * Supported Feature: LFR-3.0
10465 *
10466 * Usage: Internal
10467 *
10468 * </ini>
10469 */
10470#define CFG_PER_ROAM_REST_TIME_NAME "gper_roam_rest_time"
10471#define CFG_PER_ROAM_REST_TIME_MIN (10)
10472#define CFG_PER_ROAM_REST_TIME_MAX (3600)
10473#define CFG_PER_ROAM_REST_TIME_DEFAULT (300)
10474
10475/*
Selvaraj, Sridhar4f684bb2017-01-19 15:59:23 +053010476 * <ini>
Vignesh Viswanathancc7f1b92017-09-28 13:12:24 +053010477 * g_is_fils_enabled - Enable/Disable FILS support in driver
10478 * @Min: 0
10479 * @Max: 1
10480 * @Default: 1
10481 *
10482 * This ini is used to enable/disable FILS support in driver
10483 * Driver will update config to supplicant based on this config.
10484 *
10485 * Related: None
10486 *
10487 * Supported Feature: FILS
10488 *
10489 * Usage: External
10490 *
10491 * </ini>
10492 */
10493#define CFG_IS_FILS_ENABLED_NAME "g_is_fils_enabled"
10494#define CFG_IS_FILS_ENABLED_DEFAULT (1)
10495#define CFG_IS_FILS_ENABLED_MIN (0)
10496#define CFG_IS_FILS_ENABLED_MAX (1)
10497
10498/*
10499 * <ini>
Selvaraj, Sridhar4f684bb2017-01-19 15:59:23 +053010500 * g_enable_bcast_probe_rsp - Enable Broadcast probe response.
10501 * @Min: 0
10502 * @Max: 1
Selvaraj, Sridharca03ad22017-04-28 11:59:55 +053010503 * @Default: 1
Selvaraj, Sridhar4f684bb2017-01-19 15:59:23 +053010504 *
Yeshwanth Sriram Guntuka2ba6fe92017-10-04 14:40:45 +053010505 * This ini is used to enable/disable broadcast probe response.
Yeshwanth Sriram Guntuka2ba6fe92017-10-04 14:40:45 +053010506 * If this is disabled then OCE ini oce_sta_enable will also be
10507 * disabled and OCE IE will not be sent in frames.
Selvaraj, Sridhar4f684bb2017-01-19 15:59:23 +053010508 *
10509 * Related: None
10510 *
10511 * Supported Feature: FILS
10512 *
10513 * Usage: External
10514 *
10515 * </ini>
10516 */
10517#define CFG_ENABLE_BCAST_PROBE_RESP_NAME "g_enable_bcast_probe_rsp"
10518#define CFG_ENABLE_BCAST_PROBE_RESP_MIN (0)
10519#define CFG_ENABLE_BCAST_PROBE_RESP_MAX (1)
Selvaraj, Sridharca03ad22017-04-28 11:59:55 +053010520#define CFG_ENABLE_BCAST_PROBE_RESP_DEFAULT (1)
Selvaraj, Sridhar4f684bb2017-01-19 15:59:23 +053010521
Srinivas Girigowda70e169a2017-03-07 23:55:57 -080010522/**
10523 * arp_ac_category - ARP access category
10524 * @Min: 0
10525 * @Max: 3
10526 * @Default: 3
10527 *
10528 * Firmware by default categorizes ARP packets with VOICE TID.
10529 * This ini shall be used to override the default configuration.
10530 * Access category enums are referenced in ieee80211_common.h
10531 * WME_AC_BE = 0 (Best effort)
10532 * WME_AC_BK = 1 (Background)
10533 * WME_AC_VI = 2 (Video)
10534 * WME_AC_VO = 3 (Voice)
10535 *
10536 * Related: none
10537 *
10538 * Usage: Internal/External
10539 *
10540 * </ini>
10541 */
10542#define CFG_ARP_AC_CATEGORY "arp_ac_category"
10543#define CFG_ARP_AC_CATEGORY_MIN (0)
10544#define CFG_ARP_AC_CATEGORY_MAX (3)
10545#define CFG_ARP_AC_CATEGORY_DEFAULT (3)
10546
Selvaraj, Sridhar4f684bb2017-01-19 15:59:23 +053010547/*
Dustin Brown13995f02017-01-12 15:38:42 -080010548 * <ini>
Nachiket Kukadee547a482018-05-22 16:43:30 +053010549 * gActiveUcBpfMode - Control UC active APF mode
Dustin Brown13995f02017-01-12 15:38:42 -080010550 * @Min: 0 (disabled)
10551 * @Max: 2 (adaptive)
10552 * @Default: 0 (disabled)
10553 *
Nachiket Kukadee547a482018-05-22 16:43:30 +053010554 * This config item controls UC APF in active mode. There are 3 modes:
10555 * 0) disabled - APF is disabled in active mode
10556 * 1) enabled - APF is enabled for all packets in active mode
10557 * 2) adaptive - APF is enabled for packets up to some throughput threshold
Dustin Brown13995f02017-01-12 15:38:42 -080010558 *
Hanumanth Reddy Pothulae87621b2017-04-12 20:53:35 +053010559 * Related: gActiveMcBcBpfMode
Dustin Brown13995f02017-01-12 15:38:42 -080010560 *
Nachiket Kukadee547a482018-05-22 16:43:30 +053010561 * Supported Feature: Active Mode APF
Dustin Brown13995f02017-01-12 15:38:42 -080010562 *
10563 * Usage: Internal/External
10564 * </ini>
10565 */
Nachiket Kukadee547a482018-05-22 16:43:30 +053010566#define CFG_ACTIVE_UC_APF_MODE_NAME "gActiveUcBpfMode"
10567#define CFG_ACTIVE_UC_APF_MODE_MIN (ACTIVE_APF_DISABLED)
10568#define CFG_ACTIVE_UC_APF_MODE_MAX (ACTIVE_APF_MODE_COUNT - 1)
10569#define CFG_ACTIVE_UC_APF_MODE_DEFAULT (ACTIVE_APF_DISABLED)
Hanumanth Reddy Pothulae87621b2017-04-12 20:53:35 +053010570
10571/*
10572 * <ini>
Nachiket Kukadee547a482018-05-22 16:43:30 +053010573 * gActiveMcBcBpfMode - Control MC/BC active APF mode
Hanumanth Reddy Pothulae87621b2017-04-12 20:53:35 +053010574 * @Min: 0 (disabled)
Ravi Kumar Bokka7a4034e2017-08-17 11:51:32 +053010575 * @Max: 1 (enabled)
Hanumanth Reddy Pothulae87621b2017-04-12 20:53:35 +053010576 * @Default: 0 (disabled)
10577 *
Nachiket Kukadee547a482018-05-22 16:43:30 +053010578 * This config item controls MC/BC APF in active mode. There are 3 modes:
10579 * 0) disabled - APF is disabled in active mode
10580 * 1) enabled - APF is enabled for all packets in active mode
10581 * 2) adaptive - APF is enabled for packets up to some throughput threshold
Hanumanth Reddy Pothulae87621b2017-04-12 20:53:35 +053010582 *
10583 * Related: gActiveUcBpfMode
10584 *
Nachiket Kukadee547a482018-05-22 16:43:30 +053010585 * Supported Feature: Active Mode APF
Hanumanth Reddy Pothulae87621b2017-04-12 20:53:35 +053010586 *
10587 * Usage: Internal/External
10588 * </ini>
10589 */
Nachiket Kukadee547a482018-05-22 16:43:30 +053010590#define CFG_ACTIVE_MC_BC_APF_MODE_NAME "gActiveMcBcBpfMode"
10591#define CFG_ACTIVE_MC_BC_APF_MODE_MIN (ACTIVE_APF_DISABLED)
10592#define CFG_ACTIVE_MC_BC_APF_MODE_MAX (ACTIVE_APF_ENABLED)
10593#define CFG_ACTIVE_MC_BC_APF_MODE_DEFAULT (ACTIVE_APF_DISABLED)
Dustin Brown13995f02017-01-12 15:38:42 -080010594
gaoleze5108942017-03-31 16:56:42 +080010595/*
10596 * <ini>
10597 * acs_with_more_param- Enable acs calculation with more param.
10598 * @Min: 0
10599 * @Max: 1
10600 * @Default: 0
10601 *
10602 * This ini is used to enable acs calculation with more param.
10603 *
10604 * Related: NA
10605 *
10606 * Supported Feature: ACS
10607 *
10608 * Usage: Internal/External
10609 *
10610 * </ini>
10611 */
10612
10613#define CFG_ACS_WITH_MORE_PARAM_NAME "acs_with_more_param"
10614#define CFG_ACS_WITH_MORE_PARAM_MIN (0)
10615#define CFG_ACS_WITH_MORE_PARAM_MAX (1)
10616#define CFG_ACS_WITH_MORE_PARAM_DEFAULT (0)
10617
10618/*
10619 * <ini>
10620 * AutoChannelSelectWeight - ACS channel weight
Himanshu Agarwal87696b62018-02-01 22:58:40 +053010621 * @Min: 0
gaoleze5108942017-03-31 16:56:42 +080010622 * @Max: 0xFFFFFFFF
10623 * @Default: 0x000000FF
10624 *
10625 * This ini is used to adjust weight of factors in
10626 * acs algorithm.
10627 *
10628 * Supported Feature: ACS
10629 *
10630 * Usage: Internal/External
10631 *
10632 * bits 0-3: rssi weight
10633 * bits 4-7: bss count weight
10634 * bits 8-11: noise floor weight
10635 * bits 12-15: channel free weight
10636 * bits 16-19: tx power range weight
10637 * bits 20-23: tx power throughput weight
10638 * bits 24-31: reserved
10639 *
10640 * </ini>
10641 */
10642#define CFG_AUTO_CHANNEL_SELECT_WEIGHT "AutoChannelSelectWeight"
Himanshu Agarwal87696b62018-02-01 22:58:40 +053010643#define CFG_AUTO_CHANNEL_SELECT_WEIGHT_MIN (0)
gaoleze5108942017-03-31 16:56:42 +080010644#define CFG_AUTO_CHANNEL_SELECT_WEIGHT_MAX (0xFFFFFFFF)
10645#define CFG_AUTO_CHANNEL_SELECT_WEIGHT_DEFAULT (0x000000FF)
10646
Krishna Kumaar Natarajan90bb6f12017-03-03 21:05:52 -080010647#ifdef WLAN_FEATURE_11AX
10648/* 11AX related INI configuration */
10649/*
10650 * <ini>
Kiran Kumar Lokere4aa08a52017-12-15 19:00:39 -080010651 * he_dynamic_frag_support - configure dynamic fragmentation
10652 * @Min: 0
10653 * @Max: 3
10654 * @Default: 1
10655 *
10656 * This ini is used to configure dynamic fragmentation.
10657 *
10658 * Related: NA
10659 *
10660 * Supported Feature: 11AX
10661 *
10662 * Usage: Internal/External
10663 *
10664 * </ini>
10665 */
10666
10667#define CFG_HE_DYNAMIC_FRAGMENTATION_NAME "he_dynamic_frag_support"
10668#define CFG_HE_DYNAMIC_FRAGMENTATION_MIN (0)
10669#define CFG_HE_DYNAMIC_FRAGMENTATION_MAX (3)
Kiran Kumar Lokerea0c1faa2018-01-05 14:47:06 -080010670#define CFG_HE_DYNAMIC_FRAGMENTATION_DEFAULT (0)
Kiran Kumar Lokere4aa08a52017-12-15 19:00:39 -080010671
10672/*
10673 * <ini>
Krishna Kumaar Natarajan90bb6f12017-03-03 21:05:52 -080010674 * enable_ul_mimo- Enable UL MIMO.
10675 * @Min: 0
10676 * @Max: 1
10677 * @Default: 0
10678 *
10679 * This ini is used to enable or disable UL MIMO.
10680 *
10681 * Related: NA
10682 *
10683 * Supported Feature: 11AX
10684 *
10685 * Usage: External
10686 *
10687 * </ini>
10688 */
10689
10690#define CFG_ENABLE_UL_MIMO_NAME "enable_ul_mimo"
10691#define CFG_ENABLE_UL_MIMO_MIN (0)
10692#define CFG_ENABLE_UL_MIMO_MAX (1)
10693#define CFG_ENABLE_UL_MIMO_DEFAULT (0)
10694
10695/*
10696 * <ini>
10697 * enable_ul_ofdma- Enable UL OFDMA.
10698 * @Min: 0
10699 * @Max: 1
10700 * @Default: 0
10701 *
10702 * This ini is used to enable or disable UL OFDMA.
10703 *
10704 * Related: NA
10705 *
10706 * Supported Feature: 11AX
10707 *
10708 * Usage: External
10709 *
10710 * </ini>
10711 */
10712#define CFG_ENABLE_UL_OFDMA_NAME "enable_ul_ofdma"
10713#define CFG_ENABLE_UL_OFDMA_MIN (0)
10714#define CFG_ENABLE_UL_OFDMA_MAX (1)
10715#define CFG_ENABLE_UL_OFDMA_DEFAULT (0)
10716
Manikandan Mohan39accff2017-05-02 16:09:00 -070010717/*
10718 * <ini>
10719 * he_sta_obsspd- 11AX HE OBSS PD bit field
10720 * @Min: 0
10721 * @Max: uin32_t max
10722 * @Default: 0x15b8c2ae
10723 *
10724 * 4 Byte value with each byte representing a signed value for following params:
10725 * Param Bit position Default
10726 * OBSS_PD min (primary) 7:0 -82 (0xae)
10727 * OBSS_PD max (primary) 15:8 -62 (0xc2)
10728 * Secondary channel Ed 23:16 -72 (0xb8)
10729 * TX_PWR(ref) 31:24 21 (0x15)
10730 * This bit field value is directly applied to FW
10731 *
10732 * Related: NA
10733 *
10734 * Supported Feature: 11AX
10735 *
10736 * Usage: External
10737 *
10738 * </ini>
10739 */
10740#define CFG_HE_STA_OBSSPD_NAME "he_sta_obsspd"
10741#define CFG_HE_STA_OBSSPD_MIN (0)
10742#define CFG_HE_STA_OBSSPD_MAX (0xffffffff)
10743#define CFG_HE_STA_OBSSPD_DEFAULT (0x15b8c2ae)
10744
Krishna Kumaar Natarajan90bb6f12017-03-03 21:05:52 -080010745#endif /* WLAN_FEATURE_11AX */
Varun Reddy Yeturud33033f2018-06-11 10:58:30 -070010746#ifdef WLAN_SUPPORT_TWT
Varun Reddy Yeturu96285a22018-05-08 13:37:43 -070010747/*
10748 * <ini>
10749 * enable_twt - Enable Target Wake Time support.
10750 * @Min: 0
10751 * @Max: 1
10752 * @Default: 1
10753 *
10754 * This ini is used to enable or disable TWT support.
10755 *
10756 * Related: NA
10757 *
10758 * Supported Feature: 11AX
10759 *
10760 * Usage: External
10761 *
10762 * </ini>
10763 */
10764#define CFG_ENABLE_TWT_NAME "enable_twt"
10765#define CFG_ENABLE_TWT_MIN (0)
10766#define CFG_ENABLE_TWT_MAX (1)
10767#define CFG_ENABLE_TWT_DEFAULT (1)
10768
10769/*
10770 * <ini>
10771 * twt_congestion_timeout - Target wake time congestion timeout.
Varun Reddy Yeturuadc00902018-07-05 07:55:24 -070010772 * @Min: 0
Varun Reddy Yeturu96285a22018-05-08 13:37:43 -070010773 * @Max: 10000
10774 * @Default: 100
10775 *
10776 * STA uses this timer to continuously monitor channel congestion levels to
10777 * decide whether to start or stop TWT. This ini is used to configure the
10778 * target wake time congestion timeout value in the units of milliseconds.
Varun Reddy Yeturuadc00902018-07-05 07:55:24 -070010779 * A value of Zero indicates that this is a host triggered TWT and all the
10780 * necessary configuration for TWT will be directed from the host.
Varun Reddy Yeturu96285a22018-05-08 13:37:43 -070010781 *
10782 * Related: NA
10783 *
10784 * Supported Feature: 11AX
10785 *
10786 * Usage: External
10787 *
10788 * </ini>
10789 */
10790#define CFG_TWT_CONGESTION_TIMEOUT_NAME "twt_congestion_timeout"
Varun Reddy Yeturuadc00902018-07-05 07:55:24 -070010791#define CFG_TWT_CONGESTION_TIMEOUT_MIN (0)
Varun Reddy Yeturu96285a22018-05-08 13:37:43 -070010792#define CFG_TWT_CONGESTION_TIMEOUT_MAX (10000)
10793#define CFG_TWT_CONGESTION_TIMEOUT_DEFAULT (100)
10794
Varun Reddy Yeturud33033f2018-06-11 10:58:30 -070010795#endif /* WLAN_SUPPORT_TWT */
Krishna Kumaar Natarajan90bb6f12017-03-03 21:05:52 -080010796
10797/*
Jeff Johnson12a744b2017-04-04 08:19:37 -070010798 * <ini>
10799 * gEnableANI - Enable Adaptive Noise Immunity
10800 * @Min: 0
10801 * @Max: 1
10802 * @Default: 1
10803 *
10804 * This ini is used to enable or disable Adaptive Noise Immunity.
10805 *
10806 * Related: None
10807 *
10808 * Supported Feature: ANI
10809 *
10810 * Usage: External
10811 *
10812 * </ini>
10813 */
10814#define CFG_ENABLE_ANI_NAME "gEnableANI"
10815#define CFG_ENABLE_ANI_MIN (0)
10816#define CFG_ENABLE_ANI_MAX (1)
10817#define CFG_ENABLE_ANI_DEFAULT (1)
10818
10819/*
Selvaraj, Sridhara521aab2017-03-25 16:42:34 +053010820 * <ini>
10821 * g_qcn_ie_support - QCN IE Support
10822 * @Min: 0 (disabled)
10823 * @Max: 1 (enabled)
Selvaraj, Sridharca03ad22017-04-28 11:59:55 +053010824 * @Default: 1 (enabled)
Selvaraj, Sridhara521aab2017-03-25 16:42:34 +053010825 *
10826 * This config item is used to support QCN IE in probe/assoc/reassoc request
10827 * for STA mode. QCN IE support is not added for SAP mode.
10828 *
10829 * Related: N/A
10830 *
10831 * Supported Feature: N/A
10832 *
10833 * Usage: Internal/External
10834 *
10835 * </ini>
10836 */
10837#define CFG_QCN_IE_SUPPORT_NAME "g_qcn_ie_support"
10838#define CFG_QCN_IE_SUPPORT_MIN 0
10839#define CFG_QCN_IE_SUPPORT_MAX 1
Selvaraj, Sridharca03ad22017-04-28 11:59:55 +053010840#define CFG_QCN_IE_SUPPORT_DEFAULT 1
Selvaraj, Sridhara521aab2017-03-25 16:42:34 +053010841
Dustin Brown7f939932017-05-18 15:02:17 -070010842/*
10843 * <ini>
10844 * gTimerMultiplier - Scale QDF timers by this value
10845 * @Min: 1
10846 * @Max: 0xFFFFFFFF
10847 * @Default: 1 (100 for emulation)
10848 *
10849 * To assist in debugging emulation setups, scale QDF timers by this factor.
10850 *
10851 * @E.g.
10852 * # QDF timers expire in real time
10853 * gTimerMultiplier=1
10854 * # QDF timers expire after 100 times real time
10855 * gTimerMultiplier=100
10856 *
10857 * Related: N/A
10858 *
10859 * Usage: Internal
10860 *
10861 * </ini>
10862 */
10863#define CFG_TIMER_MULTIPLIER_NAME "gTimerMultiplier"
10864#define CFG_TIMER_MULTIPLIER_MIN (1)
10865#define CFG_TIMER_MULTIPLIER_MAX (0xFFFFFFFF)
10866#ifdef QCA_WIFI_NAPIER_EMULATION
10867#define CFG_TIMER_MULTIPLIER_DEFAULT (100)
10868#else
10869#define CFG_TIMER_MULTIPLIER_DEFAULT (1)
10870#endif
10871
Rajeev Kumar Sirasanagandlaaec0b082017-06-21 11:59:41 +053010872/* Begin of probe request IE whitelisting feature ini params */
10873/*
10874 * <ini>
10875 * g_enable_probereq_whitelist_ies - Enable IE white listing
10876 * @Min: 0
10877 * @Max: 1
10878 * @Default: 0
10879 *
10880 * This ini is used to enable/disable probe request IE white listing feature.
10881 * Values 0 and 1 are used to disable and enable respectively, by default this
10882 * feature is disabled.
10883 *
10884 * Related: None
10885 *
10886 * Supported Feature: Probe request IE whitelisting
10887 *
10888 * Usage: Internal/External
10889 *
10890 * </ini>
10891 */
10892#define CFG_PRB_REQ_IE_WHITELIST_NAME "g_enable_probereq_whitelist_ies"
10893#define CFG_PRB_REQ_IE_WHITELIST_MIN (0)
10894#define CFG_PRB_REQ_IE_WHITELIST_MAX (1)
10895#define CFG_PRB_REQ_IE_WHITELIST_DEFAULT (0)
10896
10897/*
10898 * For IE white listing in Probe Req, following ini parameters from
10899 * g_probe_req_ie_bitmap_0 to g_probe_req_ie_bitmap_7 are used. User needs to
10900 * input this values in hexa decimal format, when bit is set in bitmap,
10901 * corresponding IE needs to be included in probe request.
10902 *
10903 * Example:
10904 * ========
10905 * If IE 221 needs to be in the probe request, set the corresponding bit
10906 * as follows:
10907 * a= IE/32 = 221/32 = 6 = g_probe_req_ie_bitmap_6
10908 * b = IE modulo 32 = 29,
10909 * means set the bth bit in g_probe_req_ie_bitmap_a,
10910 * therefore set 29th bit in g_probe_req_ie_bitmap_6,
10911 * as a result, g_probe_req_ie_bitmap_6=20000000
10912 *
10913 * Note: For IE 221, its mandatory to set the gProbeReqOUIs.
10914 */
10915
10916/*
10917 * <ini>
10918 * g_probe_req_ie_bitmap_0 - Used to set the bitmap of IEs from 0 to 31
10919 * @Min: 0x00000000
10920 * @Max: 0xFFFFFFFF
10921 * @Default: 0x00000000
10922 *
10923 * This ini is used to include the IEs from 0 to 31 in probe request,
10924 * when corresponding bit is set.
10925 *
10926 * Related: Need to enable g_enable_probereq_whitelist_ies.
10927 *
10928 * Supported Feature: Probe request ie whitelisting
10929 *
10930 * Usage: Internal/External
10931 *
10932 * </ini>
10933 */
10934#define CFG_PRB_REQ_IE_BIT_MAP0_NAME "g_probe_req_ie_bitmap_0"
10935#define CFG_PRB_REQ_IE_BIT_MAP0_MIN (0x00000000)
10936#define CFG_PRB_REQ_IE_BIT_MAP0_MAX (0xFFFFFFFF)
10937#define CFG_PRB_REQ_IE_BIT_MAP0_DEFAULT (0x00000000)
10938
10939/*
10940 * <ini>
10941 * g_probe_req_ie_bitmap_1 - Used to set the bitmap of IEs from 32 to 63
10942 * @Min: 0x00000000
10943 * @Max: 0xFFFFFFFF
10944 * @Default: 0x00000000
10945 *
10946 * This ini is used to include the IEs from 32 to 63 in probe request,
10947 * when corresponding bit is set.
10948 *
10949 * Related: Need to enable g_enable_probereq_whitelist_ies.
10950 *
10951 * Supported Feature: Probe request ie whitelisting
10952 *
10953 * Usage: Internal/External
10954 *
10955 * </ini>
10956 */
10957#define CFG_PRB_REQ_IE_BIT_MAP1_NAME "g_probe_req_ie_bitmap_1"
10958#define CFG_PRB_REQ_IE_BIT_MAP1_MIN (0x00000000)
10959#define CFG_PRB_REQ_IE_BIT_MAP1_MAX (0xFFFFFFFF)
10960#define CFG_PRB_REQ_IE_BIT_MAP1_DEFAULT (0x00000000)
10961
10962/*
10963 * <ini>
10964 * g_probe_req_ie_bitmap_2 - Used to set the bitmap of IEs from 64 to 95
10965 * @Min: 0x00000000
10966 * @Max: 0xFFFFFFFF
10967 * @Default: 0x00000000
10968 *
10969 * This ini is used to include the IEs from 64 to 95 in probe request,
10970 * when corresponding bit is set.
10971 *
10972 * Related: Need to enable g_enable_probereq_whitelist_ies.
10973 *
10974 * Supported Feature: Probe request ie whitelisting
10975 *
10976 * Usage: Internal/External
10977 *
10978 * </ini>
10979 */
10980#define CFG_PRB_REQ_IE_BIT_MAP2_NAME "g_probe_req_ie_bitmap_2"
10981#define CFG_PRB_REQ_IE_BIT_MAP2_MIN (0x00000000)
10982#define CFG_PRB_REQ_IE_BIT_MAP2_MAX (0xFFFFFFFF)
10983#define CFG_PRB_REQ_IE_BIT_MAP2_DEFAULT (0x00000000)
10984
10985/*
10986 * <ini>
10987 * g_probe_req_ie_bitmap_3 - Used to set the bitmap of IEs from 96 to 127
10988 * @Min: 0x00000000
10989 * @Max: 0xFFFFFFFF
10990 * @Default: 0x00000000
10991 *
10992 * This ini is used to include the IEs from 96 to 127 in probe request,
10993 * when corresponding bit is set.
10994 *
10995 * Related: Need to enable g_enable_probereq_whitelist_ies.
10996 *
10997 * Supported Feature: Probe request ie whitelisting
10998 *
10999 * Usage: Internal/External
11000 *
11001 * </ini>
11002 */
11003#define CFG_PRB_REQ_IE_BIT_MAP3_NAME "g_probe_req_ie_bitmap_3"
11004#define CFG_PRB_REQ_IE_BIT_MAP3_MIN (0x00000000)
11005#define CFG_PRB_REQ_IE_BIT_MAP3_MAX (0xFFFFFFFF)
11006#define CFG_PRB_REQ_IE_BIT_MAP3_DEFAULT (0x00000000)
11007
11008/*
11009 * <ini>
11010 * g_probe_req_ie_bitmap_4 - Used to set the bitmap of IEs from 128 to 159
11011 * @Min: 0x00000000
11012 * @Max: 0xFFFFFFFF
11013 * @Default: 0x00000000
11014 *
11015 * This ini is used to include the IEs from 128 to 159 in probe request,
11016 * when corresponding bit is set.
11017 *
11018 * Related: Need to enable g_enable_probereq_whitelist_ies.
11019 *
11020 * Supported Feature: Probe request ie whitelisting
11021 *
11022 * Usage: Internal/External
11023 *
11024 * </ini>
11025 */
11026#define CFG_PRB_REQ_IE_BIT_MAP4_NAME "g_probe_req_ie_bitmap_4"
11027#define CFG_PRB_REQ_IE_BIT_MAP4_MIN (0x00000000)
11028#define CFG_PRB_REQ_IE_BIT_MAP4_MAX (0xFFFFFFFF)
11029#define CFG_PRB_REQ_IE_BIT_MAP4_DEFAULT (0x00000000)
11030
11031/*
11032 * <ini>
11033 * g_probe_req_ie_bitmap_5 - Used to set the bitmap of IEs from 160 to 191
11034 * @Min: 0x00000000
11035 * @Max: 0xFFFFFFFF
11036 * @Default: 0x00000000
11037 *
11038 * This ini is used to include the IEs from 160 to 191 in probe request,
11039 * when corresponding bit is set.
11040 *
11041 * Related: Need to enable g_enable_probereq_whitelist_ies.
11042 *
11043 * Supported Feature: Probe request ie whitelisting
11044 *
11045 * Usage: Internal/External
11046 *
11047 * </ini>
11048 */
11049#define CFG_PRB_REQ_IE_BIT_MAP5_NAME "g_probe_req_ie_bitmap_5"
11050#define CFG_PRB_REQ_IE_BIT_MAP5_MIN (0x00000000)
11051#define CFG_PRB_REQ_IE_BIT_MAP5_MAX (0xFFFFFFFF)
11052#define CFG_PRB_REQ_IE_BIT_MAP5_DEFAULT (0x00000000)
11053
11054/*
11055 * <ini>
11056 * g_probe_req_ie_bitmap_6 - Used to set the bitmap of IEs from 192 to 223
11057 * @Min: 0x00000000
11058 * @Max: 0xFFFFFFFF
11059 * @Default: 0x00000000
11060 *
11061 * This ini is used to include the IEs from 192 to 223 in probe request,
11062 * when corresponding bit is set.
11063 *
11064 * Related: Need to enable g_enable_probereq_whitelist_ies.
11065 *
11066 * Supported Feature: Probe request ie whitelisting
11067 *
11068 * Usage: Internal/External
11069 *
11070 * </ini>
11071 */
11072#define CFG_PRB_REQ_IE_BIT_MAP6_NAME "g_probe_req_ie_bitmap_6"
11073#define CFG_PRB_REQ_IE_BIT_MAP6_MIN (0x00000000)
11074#define CFG_PRB_REQ_IE_BIT_MAP6_MAX (0xFFFFFFFF)
11075#define CFG_PRB_REQ_IE_BIT_MAP6_DEFAULT (0x00000000)
11076
11077/*
11078 * <ini>
11079 * g_probe_req_ie_bitmap_7 - Used to set the bitmap of IEs from 224 to 255
11080 * @Min: 0x00000000
11081 * @Max: 0xFFFFFFFF
11082 * @Default: 0x00000000
11083 *
11084 * This ini is used to include the IEs from 224 to 255 in probe request,
11085 * when corresponding bit is set.
11086 *
11087 * Related: Need to enable g_enable_probereq_whitelist_ies.
11088 *
11089 * Supported Feature: Probe request ie whitelisting
11090 *
11091 * Usage: Internal/External
11092 *
11093 * </ini>
11094 */
11095#define CFG_PRB_REQ_IE_BIT_MAP7_NAME "g_probe_req_ie_bitmap_7"
11096#define CFG_PRB_REQ_IE_BIT_MAP7_MIN (0x00000000)
11097#define CFG_PRB_REQ_IE_BIT_MAP7_MAX (0xFFFFFFFF)
11098#define CFG_PRB_REQ_IE_BIT_MAP7_DEFAULT (0x00000000)
11099
11100/*
11101 * For vendor specific IE, Probe Req OUI types and sub types which are
11102 * to be white listed are specified in gProbeReqOUIs in the following
11103 * example format - gProbeReqOUIs=AABBCCDD EEFF1122
11104 */
11105
11106/*
11107 * <ini>
11108 * gProbeReqOUIs - Used to specify vendor specific OUIs
11109 * @Default: Empty string
11110 *
11111 * This ini is used to include the specified OUIs in vendor specific IE
11112 * of probe request.
11113 *
11114 * Related: Need to enable g_enable_probereq_whitelist_ies and
11115 * vendor specific IE should be set in g_probe_req_ie_bitmap_6.
11116 *
11117 * Supported Feature: Probe request ie whitelisting
11118 *
11119 * Usage: Internal/External
11120 *
11121 * </ini>
11122 */
11123#define CFG_PROBE_REQ_OUI_NAME "gProbeReqOUIs"
11124#define CFG_PROBE_REQ_OUI_DEFAULT ""
11125/* End of probe request IE whitelisting feature ini params */
11126
Selvaraj, Sridhara521aab2017-03-25 16:42:34 +053011127/*
Selvaraj, Sridhar97ce6582017-01-20 17:06:34 +053011128 * <ini>
gaoleze2920bd2017-03-21 17:38:42 +080011129 * g_sap_chanswitch_beacon_cnt - channel switch beacon count
11130 * @Min: 1
Abhinav Kumare24e4982018-05-01 23:00:39 +053011131 * @Max: 10
11132 * @Default: 10
gaoleze2920bd2017-03-21 17:38:42 +080011133 *
11134 * This ini is used to configure channel switch beacon count
11135 *
11136 * Related: none
11137 *
11138 * Usage: External
11139 *
11140 * </ini>
11141 */
11142#define CFG_SAP_CH_SWITCH_BEACON_CNT "g_sap_chanswitch_beacon_cnt"
11143#define CFG_SAP_CH_SWITCH_BEACON_CNT_MIN (1)
Ganesh Kondabattinib6fdb632017-12-28 16:57:04 +053011144#define CFG_SAP_CH_SWITCH_BEACON_CNT_MAX (10)
Abhinav Kumare24e4982018-05-01 23:00:39 +053011145#define CFG_SAP_CH_SWITCH_BEACON_CNT_DEFAULT (10)
gaoleze2920bd2017-03-21 17:38:42 +080011146
11147/*
11148 * <ini>
gaolez76d2a162017-03-21 19:23:58 +080011149 * g_sap_chanswitch_mode - channel switch mode
11150 * @Min: 0
11151 * @Max: 1
11152 * @Default: 1
11153 *
11154 * This ini is used to configure channel switch mode
11155 *
11156 * Related: none
11157 *
11158 * Usage: External
11159 *
11160 * </ini>
11161 */
11162#define CFG_SAP_CH_SWITCH_MODE "g_sap_chanswitch_mode"
11163#define CFG_SAP_CH_SWITCH_MODE_MIN (0)
11164#define CFG_SAP_CH_SWITCH_MODE_MAX (1)
11165#define CFG_SAP_CH_SWITCH_MODE_DEFAULT (1)
11166
11167/*
11168 * <ini>
Selvaraj, Sridhar97ce6582017-01-20 17:06:34 +053011169 * g_fils_max_chan_guard_time - Set maximum channel guard time(ms)
11170 * @Min: 0
11171 * @Max: 10
11172 * @Default: 0
11173 *
11174 * This ini is used to set maximum channel guard time in milli seconds
11175 *
11176 * Related: None
11177 *
11178 * Supported Feature: FILS
11179 *
11180 * Usage: External
11181 *
11182 * </ini>
11183 */
11184#define CFG_FILS_MAX_CHAN_GUARD_TIME_NAME "g_fils_max_chan_guard_time"
11185#define CFG_FILS_MAX_CHAN_GUARD_TIME_MIN (0)
11186#define CFG_FILS_MAX_CHAN_GUARD_TIME_MAX (10)
11187#define CFG_FILS_MAX_CHAN_GUARD_TIME_DEFAULT (0)
11188
lifeng959a04c2017-05-10 14:21:28 +080011189/**
11190 * gSetRTSForSIFSBursting - set rts for sifs bursting
11191 * @Min: 0
11192 * @Max: 1
11193 * @Default: 0
11194 *
11195 * This ini set rts for sifs bursting
11196 *
11197 * Usage: External
11198 *
11199 * </ini>
11200 */
11201#define CFG_SET_RTS_FOR_SIFS_BURSTING "gSetRTSForSIFSBursting"
11202#define CFG_SET_RTS_FOR_SIFS_BURSTING_MIN (0)
11203#define CFG_SET_RTS_FOR_SIFS_BURSTING_MAX (1)
11204#define CFG_SET_RTS_FOR_SIFS_BURSTING_DEFAULT (0)
11205
11206/**
11207 * <ini>
11208 * gMaxMPDUsInAMPDU - max mpdus in ampdu
11209 * @Min: 0
11210 * @Max: 64
11211 * @Default: 0
11212 *
11213 * This ini configure max mpdus in ampdu
11214 *
11215 * Usage: External
11216 *
11217 * </ini>
11218 */
11219#define CFG_MAX_MPDUS_IN_AMPDU "gMaxMPDUsInAMPDU"
11220#define CFG_MAX_MPDUS_IN_AMPDU_MIN (0)
11221#define CFG_MAX_MPDUS_IN_AMPDU_MAX (64)
11222#define CFG_MAX_MPDUS_IN_AMPDU_DEFAULT (0)
11223
Selvaraj, Sridhar97ce6582017-01-20 17:06:34 +053011224/*
Dustin Brown20b6fcf2017-05-17 15:35:17 -070011225 * <ini>
11226 * gScanBackoffMultiplier - For NLO/PNO, multiply fast scan period by this every
11227 * max cycles
11228 * @Min: 0
11229 * @Max: 255
11230 * @Default: 0
11231 *
11232 * For Network Listen Offload and Perfered Network Offload, multiply the fast
11233 * scan period by this value after max cycles have occurred. Setting this to 0
11234 * disables the feature.
11235 *
11236 * @E.g.
11237 * # Disable scan backoff multiplier
11238 * gScanBackoffMultiplier=0
11239 * # Effectively the same
11240 * gScanBackoffMultiplier=1
11241 * # Double the scan period after each max cycles have occurred
11242 * gScanBackoffMultiplier=2
11243 *
11244 * Related: NLO, PNO
11245 *
11246 * Usage: Internal/External
11247 *
11248 * </ini>
11249 */
11250#define CFG_SCAN_BACKOFF_MULTIPLIER_NAME "gScanBackoffMultiplier"
11251#define CFG_SCAN_BACKOFF_MULTIPLIER_MIN (0)
11252#define CFG_SCAN_BACKOFF_MULTIPLIER_MAX (255)
11253#define CFG_SCAN_BACKOFF_MULTIPLIER_DEFAULT (0)
11254
11255/*
Varun Reddy Yeturubba32e92017-09-06 13:31:40 -070011256 * <ini>
11257 * mawc_nlo_enabled - For NLO/PNO, enable MAWC based scan
11258 * @Min: 0
11259 * @Max: 1
11260 * @Default: 1
11261 *
11262 * Enable/Disable the Motion Aided Wireless Connectivity
11263 * based NLO using this parameter
11264 *
11265 * Related: NLO, PNO
11266 *
11267 * Usage: Internal/External
11268 *
11269 * </ini>
11270 */
11271#define CFG_MAWC_NLO_ENABLED_NAME "mawc_nlo_enabled"
11272#define CFG_MAWC_NLO_ENABLED_MIN (0)
11273#define CFG_MAWC_NLO_ENABLED_MAX (1)
11274#define CFG_MAWC_NLO_ENABLED_DEFAULT (1)
11275
11276/*
11277 * <ini>
11278 * mawc_nlo_exp_backoff_ratio - Exponential back off ratio
11279 * @Min: 0
11280 * @Max: 300
11281 * @Default: 3
11282 *
11283 * Configure the exponential back off ratio using this
11284 * parameter for MAWC based NLO
11285 * ratio of exponential backoff, next = current + current*ratio/100
11286 *
11287 * Related: NLO, PNO
11288 *
11289 * Usage: Internal/External
11290 *
11291 * </ini>
11292 */
11293#define CFG_MAWC_NLO_EXP_BACKOFF_RATIO_NAME "mawc_nlo_exp_backoff_ratio"
11294#define CFG_MAWC_NLO_EXP_BACKOFF_RATIO_MIN (0)
11295#define CFG_MAWC_NLO_EXP_BACKOFF_RATIO_MAX (300)
11296#define CFG_MAWC_NLO_EXP_BACKOFF_RATIO_DEFAULT (3)
11297
11298/*
11299 * <ini>
11300 * mawc_nlo_init_scan_interval - Initial Scan Interval
11301 * @Min: 1000
11302 * @Max: 0xFFFFFFFF
11303 * @Default: 10000
11304 *
11305 * Configure the initial scan interval using this
11306 * parameter for MAWC based NLO (Units in Milliseconds)
11307 *
11308 * Related: NLO, PNO
11309 *
11310 * Usage: Internal/External
11311 *
11312 * </ini>
11313 */
11314#define CFG_MAWC_NLO_INIT_SCAN_INTERVAL_NAME "mawc_nlo_init_scan_interval"
11315#define CFG_MAWC_NLO_INIT_SCAN_INTERVAL_MIN (1000)
11316#define CFG_MAWC_NLO_INIT_SCAN_INTERVAL_MAX (0xFFFFFFFF)
11317#define CFG_MAWC_NLO_INIT_SCAN_INTERVAL_DEFAULT (10000)
11318
11319/*
11320 * <ini>
11321 * mawc_nlo_max_scan_interval - Maximum Scan Interval
11322 * @Min: 1000
11323 * @Max: 0xFFFFFFFF
11324 * @Default: 60000
11325 *
11326 * Configure the maximum scan interval using this
11327 * parameter for MAWC based NLO (Units in Milliseconds)
11328 *
11329 * Related: NLO, PNO
11330 *
11331 * Usage: Internal/External
11332 *
11333 * </ini>
11334 */
11335#define CFG_MAWC_NLO_MAX_SCAN_INTERVAL_NAME "mawc_nlo_max_scan_interval"
11336#define CFG_MAWC_NLO_MAX_SCAN_INTERVAL_MIN (1000)
11337#define CFG_MAWC_NLO_MAX_SCAN_INTERVAL_MAX (0xFFFFFFFF)
11338#define CFG_MAWC_NLO_MAX_SCAN_INTERVAL_DEFAULT (60000)
11339
11340
11341/*
Jayachandran Sreekumaran68c952c2017-04-24 12:42:03 +053011342 * enum hdd_external_acs_policy - External ACS policy
11343 * @HDD_EXTERNAL_ACS_PCL_PREFERRED -Preferable for ACS to select a
11344 * channel with non-zero pcl weight.
11345 * @HDD_EXTERNAL_ACS_PCL_MANDATORY -Mandatory for ACS to select a
11346 * channel with non-zero pcl weight.
11347 *
11348 * enum hdd_external_acs_policy is used to select the ACS policy.
11349 *
11350 */
11351enum hdd_external_acs_policy {
11352 HDD_EXTERNAL_ACS_PCL_PREFERRED = 0,
11353 HDD_EXTERNAL_ACS_PCL_MANDATORY = 1,
11354};
11355
11356/*
11357 * <ini>
11358 * external_acs_policy - External ACS policy control
11359 * @Min: 0
11360 * @Max: 1
11361 * @Default: 0
11362 *
11363 * Values are per enum hdd_external_acs_policy.
11364 *
11365 * This ini is used to control the external ACS policy.
11366 *
11367 * Related: None
11368 *
11369 * Supported Feature: ACS
11370 *
11371 * Usage: Internal/External
11372 *
11373 * </ini>
11374 */
11375#define CFG_EXTERNAL_ACS_POLICY "acs_policy"
11376#define CFG_EXTERNAL_ACS_POLICY_MIN (HDD_EXTERNAL_ACS_PCL_PREFERRED)
11377#define CFG_EXTERNAL_ACS_POLICY_MAX (HDD_EXTERNAL_ACS_PCL_MANDATORY)
11378#define CFG_EXTERNAL_ACS_POLICY_DEFAULT (HDD_EXTERNAL_ACS_PCL_PREFERRED)
11379
11380/*
lifeng13a89d72017-05-10 14:49:29 +080011381 * gSapMaxMCSForTxData - sap 11n max mcs
11382 * @Min: 0
11383 * @Max: 383
11384 * @Default: 0
11385 *
11386 * This ini configure SAP 11n max mcs
11387 *
11388 * Usage: External
11389 *
11390 * </ini>
11391 */
11392#define CFG_SAP_MAX_MCS_FOR_TX_DATA "gSapMaxMCSForTxData"
11393#define CFG_SAP_MAX_MCS_FOR_TX_DATA_MIN (0)
11394#define CFG_SAP_MAX_MCS_FOR_TX_DATA_MAX (383)
11395#define CFG_SAP_MAX_MCS_FOR_TX_DATA_DEFAULT (0)
11396
11397/*
Manjunathappa Prakashdab74fa2017-06-19 12:11:03 -070011398 * <ini>
11399 * gEnableTxOrphan- Enable/Disable orphaning of Tx packets
11400 * @Min: 0
11401 * @Max: 1
11402 * @Default: 0
11403 *
11404 * This ini is used to enable/disable orphaning of Tx packets.
11405 *
11406 * Related: None
11407 *
11408 * Usage: External
11409 *
11410 * </ini>
11411 */
11412#define CFG_TX_ORPHAN_ENABLE_NAME "gEnableTxOrphan"
11413#define CFG_TX_ORPHAN_ENABLE_DEFAULT (0)
11414#define CFG_TX_ORPHAN_ENABLE_MIN (0)
11415#define CFG_TX_ORPHAN_ENABLE_MAX (1)
Ashwini Patilf2bf05e2017-03-10 03:41:03 +053011416
Ashish Kumar Dhanotiya9335d812017-06-30 16:57:20 +053011417/*
11418 * <ini>
11419 * gItoRepeatCount - sets ito repeated count
11420 * @Min: 0
11421 * @Max: 5
11422 * @Default: 0
11423 *
11424 * This ini sets the ito count in FW
11425 *
11426 * Usage: External
11427 *
11428 * </ini>
11429 */
Ashish Kumar Dhanotiya9335d812017-06-30 16:57:20 +053011430#define CFG_ITO_REPEAT_COUNT_NAME "gItoRepeatCount"
11431#define CFG_ITO_REPEAT_COUNT_MIN (0)
11432#define CFG_ITO_REPEAT_COUNT_MAX (5)
11433#define CFG_ITO_REPEAT_COUNT_DEFAULT (0)
yeshwanth sriram guntuka1413dfb2017-06-23 14:09:48 +053011434
11435/*
11436 * <ini>
11437 * oce_sta_enable - Enable/disable oce feature for STA
11438 * @Min: 0
11439 * @Max: 1
11440 * @Default: 1
11441 *
11442 * This ini is used to enable/disable oce feature for STA
11443 *
11444 * Related: None
11445 *
11446 * Supported Feature: OCE
11447 *
11448 * Usage: External
11449 *
11450 * </ini>
11451 */
11452#define CFG_OCE_ENABLE_STA_NAME "oce_sta_enable"
11453#define CFG_OCE_ENABLE_STA_MIN (0)
11454#define CFG_OCE_ENABLE_STA_MAX (1)
11455#define CFG_OCE_ENABLE_STA_DEFAULT (1)
11456
11457/*
11458 * <ini>
11459 * oce_sap_enable - Enable/disable oce feature for SAP
11460 * @Min: 0
11461 * @Max: 1
11462 * @Default: 1
11463 *
11464 * This ini is used to enable/disable oce feature for SAP
11465 *
11466 * Related: None
11467 *
11468 * Supported Feature: OCE
11469 *
11470 * Usage: External
11471 *
11472 * </ini>
11473 */
11474#define CFG_OCE_ENABLE_SAP_NAME "oce_sap_enable"
11475#define CFG_OCE_ENABLE_SAP_MIN (0)
11476#define CFG_OCE_ENABLE_SAP_MAX (1)
11477#define CFG_OCE_ENABLE_SAP_DEFAULT (1)
11478
Manjunathappa Prakashdab74fa2017-06-19 12:11:03 -070011479/*
Selvaraj, Sridhar57ce4df2017-05-29 18:30:49 +053011480 * <ini>
11481 * groam_disallow_duration -disallow duration before roaming
11482 * @Min: 0
11483 * @Max: 3600
11484 * @Default: 30
11485 *
11486 * This ini is used to configure how long LCA[Last Connected AP] AP will
11487 * be disallowed before it can be a roaming candidate again, in units of
11488 * seconds.
11489 *
11490 * Related: LFR
11491 *
11492 * Usage: Internal
11493 *
11494 * </ini>
11495 */
11496#define CFG_ROAM_DISALLOW_DURATION_NAME "groam_disallow_duration"
11497#define CFG_ROAM_DISALLOW_DURATION_MIN (0)
11498#define CFG_ROAM_DISALLOW_DURATION_MAX (3600)
11499#define CFG_ROAM_DISALLOW_DURATION_DEFAULT (30)
11500
11501/*
11502 * <ini>
11503 * grssi_channel_penalization - RSSI penalization
11504 * @Min: 0
11505 * @Max: 15
11506 * @Default: 5
11507 *
11508 * This ini is used to configure RSSI that will be penalized if candidate(s)
11509 * are found to be in the same channel as disallowed AP's, in units of db.
11510 *
11511 * Related: LFR
11512 *
11513 * Usage: Internal
11514 *
11515 * </ini>
11516 */
11517#define CFG_ROAM_RSSI_CHANNEL_PENALIZATION_NAME "grssi_channel_penalization"
11518#define CFG_ROAM_RSSI_CHANNEL_PENALIZATION_MIN (0)
11519#define CFG_ROAM_RSSI_CHANNEL_PENALIZATION_MAX (15)
11520#define CFG_ROAM_RSSI_CHANNEL_PENALIZATION_DEFAULT (5)
11521
11522/*
11523 * <ini>
11524 * groam_num_disallowed_aps - Max number of AP's to maintain in LCA list
11525 * @Min: 0
11526 * @Max: 8
11527 * @Default: 3
11528 *
11529 * This ini is used to set the maximum number of AP's to be maintained
11530 * in LCA [Last Connected AP] list.
11531 *
11532 * Related: LFR
11533 *
11534 * Usage: Internal
11535 *
11536 * </ini>
11537 */
11538#define CFG_ROAM_NUM_DISALLOWED_APS_NAME "groam_num_disallowed_aps"
11539#define CFG_ROAM_NUM_DISALLOWED_APS_MIN (0)
11540#define CFG_ROAM_NUM_DISALLOWED_APS_MAX (8)
11541#define CFG_ROAM_NUM_DISALLOWED_APS_DEFAULT (3)
11542
Ravi Joshi9771d432017-06-26 13:58:12 -070011543
11544/*
11545 * <ini>
11546 * gEnableNDIMacRandomization - When enabled this will randomize NDI Mac
11547 * @Min: 0
11548 * @Max: 1
11549 * @Default: 1
11550 *
11551 * When enabled this will randomize NDI Mac
11552 *
11553 *
11554 * Related: None
11555 *
11556 * Supported Feature: NAN
11557 *
11558 * Usage: External
11559 *
11560 * </ini>
11561 */
11562#define CFG_RANDOMIZE_NDI_MAC_NAME "gEnableNDIMacRandomization"
11563#define CFG_RANDOMIZE_NDI_MAC_MIN (0)
11564#define CFG_RANDOMIZE_NDI_MAC_MAX (1)
11565#define CFG_RANDOMIZE_NDI_MAC_DEFAULT (1)
11566
Selvaraj, Sridhar57ce4df2017-05-29 18:30:49 +053011567/*
Ashish Kumar Dhanotiyab8630ab2017-07-21 14:18:14 +053011568 * <ini>
11569 * gEnableLPRx - Enable/Disable LPRx
11570 * @Min: 0
11571 * @Max: 1
11572 * @Default: 1
11573 *
11574 * This ini Enables or disables the LPRx in FW
11575 *
11576 * Usage: External
11577 *
11578 * </ini>
11579 */
11580
11581#define CFG_LPRx_NAME "gEnableLPRx"
11582#define CFG_LPRx_MIN (0)
11583#define CFG_LPRx_MAX (1)
11584#define CFG_LPRx_DEFAULT (1)
11585
11586/*
Ashish Kumar Dhanotiyab28338c2017-07-21 20:12:34 +053011587 * <ini>
11588 * gUpperBrssiThresh - Sets Upper threshold for beacon RSSI
11589 * @Min: 36
11590 * @Max: 66
11591 * @Default: 46
11592 *
11593 * This ini sets Upper beacon threshold for beacon RSSI in FW
11594 * Used to reduced RX chainmask in FW, once this threshold is
11595 * reached FW will switch to 1X1 (Single chain).
11596 *
11597 * Supported Feature: STA
11598 *
11599 * Usage: External
11600 *
11601 * </ini>
11602 */
11603
11604#define CFG_UPPER_BRSSI_THRESH_NAME "gUpperBrssiThresh"
11605#define CFG_UPPER_BRSSI_THRESH_MIN (36)
11606#define CFG_UPPER_BRSSI_THRESH_MAX (66)
11607#define CFG_UPPER_BRSSI_THRESH_DEFAULT (46)
11608
11609/*
11610 * <ini>
11611 * gLowerrBrssiThresh - Sets Lower threshold for beacon RSSI
11612 * @Min: 6
11613 * @Max: 36
11614 * @Default: 26
11615 *
11616 * This ini sets Lower beacon threshold for beacon RSSI in FW
11617 * Used to increase RX chainmask in FW, once this threshold is
11618 * reached FW will switch to 2X2 chain.
11619 *
11620 * Supported Feature: STA
11621 *
11622 * Usage: External
11623 *
11624 * </ini>
11625 */
11626
11627#define CFG_LOWER_BRSSI_THRESH_NAME "gLowerBrssiThresh"
11628#define CFG_LOWER_BRSSI_THRESH_MIN (6)
11629#define CFG_LOWER_BRSSI_THRESH_MAX (36)
11630#define CFG_LOWER_BRSSI_THRESH_DEFAULT (26)
11631
11632/*
11633 * <ini>
11634 * gDtim1ChRxEnable - Enable/Disable DTIM 1Chrx feature
11635 * @Min: 0
11636 * @Max: 1
11637 * @Default: 1
11638 *
11639 * This ini Enables or Disables DTIM 1CHRX feature in FW
11640 * If this flag is set FW enables shutting off one chain
11641 * while going to power save.
11642 *
11643 * Supported Feature: STA
11644 *
11645 * Usage: External
11646 *
11647 * </ini>
11648 */
11649
11650#define CFG_DTIM_1CHRX_ENABLE_NAME "gDtim1ChRxEnable"
11651#define CFG_DTIM_1CHRX_ENABLE_MIN (0)
11652#define CFG_DTIM_1CHRX_ENABLE_MAX (1)
11653#define CFG_DTIM_1CHRX_ENABLE_DEFAULT (1)
11654
11655/*
Amar Singhale4a2dd52017-08-07 13:59:05 -070011656 * <ini>
11657 * scan_11d_interval - 11d scan interval in ms
11658 * @Min: 1 sec
11659 * @Max: 10 hr
11660 * @Default: 1 hr
11661 *
11662 * This ini sets the 11d scan interval in FW
11663 *
11664 *
11665 *
11666 * Supported Feature: STA
11667 *
11668 * Usage: External
11669 *
11670 * </ini>
11671 */
11672
11673#define CFG_SCAN_11D_INTERVAL_NAME "scan_11d_interval"
11674#define CFG_SCAN_11D_INTERVAL_DEFAULT (3600000)
11675#define CFG_SCAN_11D_INTERVAL_MIN (1000)
11676#define CFG_SCAN_11D_INTERVAL_MAX (36000000)
Abhishek Singhb58164a2017-07-19 18:47:23 +053011677/*
11678 * <ini>
11679 * is_bssid_hint_priority - Set priority for connection with bssid_hint
11680 * BSSID.
11681 * @Min: 0
11682 * @Max: 1
11683 * @Default: 1
11684 *
11685 * This ini is used to give priority to BSS for connection which comes
11686 * as part of bssid_hint
11687 *
11688 * Related: None
11689 *
11690 * Supported Feature: STA
11691 *
11692 * Usage: External
11693 *
11694 * </ini>
11695 */
11696
11697#define CFG_IS_BSSID_HINT_PRIORITY_NAME "is_bssid_hint_priority"
gaurank kathpalia0efbb562017-12-19 18:05:00 +053011698#define CFG_IS_BSSID_HINT_PRIORITY_DEFAULT (0)
Abhishek Singhb58164a2017-07-19 18:47:23 +053011699#define CFG_IS_BSSID_HINT_PRIORITY_MIN (0)
11700#define CFG_IS_BSSID_HINT_PRIORITY_MAX (1)
Amar Singhale4a2dd52017-08-07 13:59:05 -070011701
11702/*
hqu16d6e082017-09-04 10:52:31 +080011703 * <ini>
Himanshu Agarwal8bcec572017-09-28 11:54:37 +053011704 * rssi_weightage - RSSI Weightage to calculate best candidate
11705 * @Min: 0
11706 * @Max: 100
11707 * @Default: 20
11708 *
11709 * This ini is used to increase/decrease RSSI weightage in best candidate
11710 * selection. AP with better RSSI will get more weightage.
11711 *
11712 * Related: None
11713 *
11714 * Supported Feature: STA Candidate selection
11715 *
11716 * Usage: External
11717 *
11718 * </ini>
11719 */
11720#define CFG_RSSI_WEIGHTAGE_NAME "rssi_weightage"
11721#define CFG_RSSI_WEIGHTAGE_DEFAULT (20)
11722#define CFG_RSSI_WEIGHTAGE_MIN (0)
11723#define CFG_RSSI_WEIGHTAGE_MAX (100)
11724
11725/*
11726 * <ini>
11727 * ht_caps_weightage - HT caps weightage to calculate best candidate
11728 * @Min: 0
11729 * @Max: 100
11730 * @Default: 2
11731 *
11732 * This ini is used to increase/decrease HT caps weightage in best candidate
11733 * selection. If AP supports HT caps, AP will get additional Weightage with
11734 * this param. Weightage will be given only if dot11mode is HT capable.
11735 *
11736 * Related: None
11737 *
11738 * Supported Feature: STA Candidate selection
11739 *
11740 * Usage: External
11741 *
11742 * </ini>
11743 */
11744#define CFG_HT_CAPABILITY_WEIGHTAGE_NAME "ht_caps_weightage"
11745#define CFG_HT_CAPABILITY_WEIGHTAGE_DEFAULT (2)
11746#define CFG_HT_CAPABILITY_WEIGHTAGE_MIN (0)
11747#define CFG_HT_CAPABILITY_WEIGHTAGE_MAX (100)
11748
11749/*
11750 * <ini>
11751 * vht_caps_weightage - VHT caps Weightage to calculate best candidate
11752 * @Min: 0
11753 * @Max: 100
11754 * @Default: 1
11755 *
11756 * This ini is used to increase/decrease VHT caps weightage in best candidate
11757 * selection. If AP supports VHT caps, AP will get additional weightage with
11758 * this param. Weightage will be given only if dot11mode is VHT capable.
11759 *
11760 * Related: None
11761 *
11762 * Supported Feature: STA Candidate selection
11763 *
11764 * Usage: External
11765 *
11766 * </ini>
11767 */
11768#define CFG_VHT_CAPABILITY_WEIGHTAGE_NAME "vht_caps_weightage"
11769#define CFG_VHT_CAPABILITY_WEIGHTAGE_DEFAULT (1)
11770#define CFG_VHT_CAPABILITY_WEIGHTAGE_MIN (0)
11771#define CFG_VHT_CAPABILITY_WEIGHTAGE_MAX (100)
11772
11773/*
11774 * <ini>
11775 * he_caps_weightage - HE caps Weightage to calculate best candidate
11776 * @Min: 0
11777 * @Max: 100
11778 * @Default: 1
11779 *
11780 * This ini is used to increase/decrease HE caps weightage in best candidate
11781 * selection. If AP supports HE caps, AP will get additional weightage with
11782 * this param. Weightage will be given only if dot11mode is HE capable.
11783 *
11784 * Related: None
11785 *
11786 * Supported Feature: STA Candidate selection
11787 *
11788 * Usage: External
11789 *
11790 * </ini>
11791 */
11792#define CFG_HE_CAPABILITY_WEIGHTAGE_NAME "he_caps_weightage"
11793#define CFG_HE_CAPABILITY_WEIGHTAGE_DEFAULT (2)
11794#define CFG_HE_CAPABILITY_WEIGHTAGE_MIN (0)
11795#define CFG_HE_CAPABILITY_WEIGHTAGE_MAX (100)
11796
11797/*
11798 * <ini>
11799 * chan_width_weightage - Channel Width Weightage to calculate best candidate
11800 * @Min: 0
11801 * @Max: 100
11802 * @Default: 17
11803 *
11804 * This ini is used to increase/decrease Channel Width weightage in best
11805 * candidate selection. AP with Higher channel width will get higher weightage
11806 *
11807 * Related: bandwidth_weight_per_index
11808 *
11809 * Supported Feature: STA Candidate selection
11810 *
11811 * Usage: External
11812 *
11813 * </ini>
11814 */
11815#define CFG_CHAN_WIDTH_WEIGHTAGE_NAME "chan_width_weightage"
11816#define CFG_CHAN_WIDTH_WEIGHTAGE_DEFAULT (17)
11817#define CFG_CHAN_WIDTH_WEIGHTAGE_MIN (0)
11818#define CFG_CHAN_WIDTH_WEIGHTAGE_MAX (100)
11819
11820/*
11821 * <ini>
11822 * chan_band_weightage - Channel Band perferance to 5GHZ to
11823 * calculate best candidate
11824 * @Min: 0
11825 * @Max: 100
11826 * @Default: 2
11827 *
11828 * This ini is used to increase/decrease Channel Band Preference weightage
11829 * in best candidate selection. 5GHZ AP get this additional boost compare to
11830 * 2GHZ AP before rssi_pref_5g_rssi_thresh and 2.4Ghz get weightage after
11831 * rssi_pref_5g_rssi_thresh.
11832 *
11833 * Related: rssi_pref_5g_rssi_thresh, band_weight_per_index
11834 *
11835 * Supported Feature: STA Candidate selection
11836 *
11837 * Usage: External
11838 *
11839 * </ini>
Ravi Kumar Bokka990edcc2017-01-09 20:02:58 +053011840 * gEnableFastPwrTransition - Configuration for fast power transition
11841 * @Min: 0
11842 * @Max: 2
11843 * @Default: 0
11844 *
11845 * This ini supported values:
11846 * 0x0: Phy register retention disabled (Higher timeline, Good for power)
11847 * 0x1: Phy register retention statically enabled
11848 * 0x2: Phy register retention enabled/disabled dynamically
11849 *
11850 * Usage: Internal
11851 *
11852 * </ini>
11853 */
11854#define CFG_ENABLE_PHY_REG "gEnableFastPwrTransition"
11855#define CFG_PHY_REG_DEFAULT (0x0)
11856#define CFG_PHY_REG_MIN (0x0)
11857#define CFG_PHY_REG_MAX (0x2)
11858
11859/*
Padma, Santhosh Kumar3e47c632017-09-01 20:15:27 +053011860 * <ini>
11861 * sae_enabled - Enable/Disable SAE support in driver
11862 * @Min: 0
11863 * @Max: 1
11864 * @Default: 0
11865 *
11866 * This ini is used to enable/disable SAE support in driver
11867 * Driver will update config to supplicant based on this config.
11868 *
11869 * Related: None
11870 *
11871 * Supported Feature: SAE
11872 * Usage: External
11873 *
11874 * </ini>
11875 */
11876
11877#define CFG_IS_SAE_ENABLED_NAME "sae_enabled"
Padma, Santhosh Kumara5eaeb82018-04-09 18:45:26 +053011878#define CFG_IS_SAE_ENABLED_DEFAULT (1)
Padma, Santhosh Kumar3e47c632017-09-01 20:15:27 +053011879#define CFG_IS_SAE_ENABLED_MIN (0)
11880#define CFG_IS_SAE_ENABLED_MAX (1)
11881
11882/*
Ravi Kumar Bokka990edcc2017-01-09 20:02:58 +053011883 * Type declarations
Himanshu Agarwal8bcec572017-09-28 11:54:37 +053011884 */
11885#define CFG_CHAN_BAND_WEIGHTAGE_NAME "chan_band_weightage"
11886#define CFG_CHAN_BAND_WEIGHTAGE_DEFAULT (2)
11887#define CFG_CHAN_BAND_WEIGHTAGE_MIN (0)
11888#define CFG_CHAN_BAND_WEIGHTAGE_MAX (100)
11889
11890/*
11891 * <ini>
11892 * nss_weightage - NSS Weightage to calculate best candidate
11893 * @Min: 0
11894 * @Max: 100
11895 * @Default: 16
11896 *
11897 * This ini is used to increase/decrease NSS weightage in best candidate
11898 * selection. If there are two AP, one AP supports 2x2 and another one supports
11899 * 1x1 and station supports 2X2, first A will get this additional weightage
11900 * depending on self-capability.
11901 *
11902 * Related: nss_weight_per_index
11903 *
11904 * Supported Feature: STA Candidate selection
11905 *
11906 * Usage: External
11907 *
11908 * </ini>
11909 */
11910#define CFG_NSS_WEIGHTAGE_NAME "nss_weightage"
11911#define CFG_NSS_WEIGHTAGE_DEFAULT (16)
11912#define CFG_NSS_WEIGHTAGE_MIN (0)
11913#define CFG_NSS_WEIGHTAGE_MAX (100)
11914
11915/*
11916 * <ini>
11917 * beamforming_cap_weightage - Beam Forming Weightage to
11918 * calculate best candidate
11919 * @Min: 0
11920 * @Max: 100
11921 * @Default: 2
11922 *
11923 * This ini is used to increase/decrease Beam forming Weightage if some AP
11924 * support Beam forming or not. If AP supports Beam forming, that AP will get
11925 * additional boost of this weightage.
11926 *
11927 * Related: None
11928 *
11929 * Supported Feature: STA Candidate selection
11930 *
11931 * Usage: External
11932 *
11933 * </ini>
11934 */
11935#define CFG_BEAMFORMING_CAP_WEIGHTAGE_NAME "beamforming_cap_weightage"
11936#define CFG_BEAMFORMING_CAP_WEIGHTAGE_DEFAULT (2)
11937#define CFG_BEAMFORMING_CAP_WEIGHTAGE_MIN (0)
11938#define CFG_BEAMFORMING_CAP_WEIGHTAGE_MAX (100)
11939
11940/*
11941 * <ini>
11942 * pcl_weightage - PCL Weightage to calculate best candidate
11943 * @Min: 0
11944 * @Max: 100
11945 * @Default: 10
11946 *
11947 * This ini is used to increase/decrease PCL weightage in best candidate
11948 * selection. If some APs are in PCL list, those AP will get addition
11949 * weightage.
11950 *
11951 * Related: None
11952 *
11953 * Supported Feature: STA Candidate selection
11954 *
11955 * Usage: External
11956 *
11957 * </ini>
11958 */
11959#define CFG_PCL_WEIGHT_WEIGHTAGE_NAME "pcl_weightage"
Abhishek Singha6e5c3f2018-03-15 10:43:39 +053011960#define CFG_PCL_WEIGHT_DEFAULT (10)
Himanshu Agarwal8bcec572017-09-28 11:54:37 +053011961#define CFG_PCL_WEIGHT_MIN (0)
11962#define CFG_PCL_WEIGHT_MAX (100)
11963
11964/*
11965 * <ini>
11966 * channel_congestion_weightage - channel Congestion Weightage to
11967 * calculate best candidate
11968 * @Min: 0
11969 * @Max: 100
11970 * @Default: 5
11971 *
11972 * This ini is used to increase/decrease channel congestion weightage in
11973 * candidate selection. Congestion is measured with the help of ESP/QBSS load.
11974 *
11975 * Related: num_esp_qbss_slots
11976 *
11977 * Supported Feature: STA Candidate selection
11978 *
11979 * Usage: External
11980 *
11981 * </ini>
11982 */
11983#define CFG_CHANNEL_CONGESTION_WEIGHTAGE_NAME "channel_congestion_weightage"
11984#define CFG_CHANNEL_CONGESTION_WEIGHTAGE_DEFAULT (5)
11985#define CFG_CHANNEL_CONGESTION_WEIGHTAGE_MIN (0)
11986#define CFG_CHANNEL_CONGESTION_WEIGHTAGE_MAX (100)
11987
11988/*
11989 * <ini>
11990 * oce_wan_weightage - OCE WAN DL capacity Weightage to calculate best candidate
11991 * @Min: 0
11992 * @Max: 100
Abhishek Singh388d0902018-03-19 15:05:16 +053011993 * @Default: 2
Himanshu Agarwal8bcec572017-09-28 11:54:37 +053011994 *
11995 * This ini is used to increase/decrease OCE WAN caps weightage in best
11996 * candidate selection. If AP have OCE WAN information, give weightage depending
11997 * on the downaload available capacity.
11998 *
11999 * Related: num_oce_wan_slots
12000 *
12001 * Supported Feature: STA Candidate selection
12002 *
12003 * Usage: External
12004 *
12005 * </ini>
12006 */
12007#define CFG_OCE_WAN_WEIGHTAGE_NAME "oce_wan_weightage"
Abhishek Singh388d0902018-03-19 15:05:16 +053012008#define CFG_OCE_WAN_WEIGHTAGE_DEFAULT (2)
Himanshu Agarwal8bcec572017-09-28 11:54:37 +053012009#define CFG_OCE_WAN_WEIGHTAGE_MIN (0)
12010#define CFG_OCE_WAN_WEIGHTAGE_MAX (100)
12011
12012/*
12013 * <ini>
12014 * best_rssi_threshold - Best Rssi for score calculation
12015 * @Min: 0
12016 * @Max: 96
12017 * @Default: 55
12018 *
12019 * This ini tells limit for best RSSI. RSSI better than this limit are
12020 * considered as best RSSI. The best RSSI is given full rssi_weightage.
12021 *
12022 * Related: rssi_weightage
12023 *
12024 * Supported Feature: STA Candidate selection
12025 *
12026 * Usage: External
12027 *
12028 * </ini>
12029 */
12030#define CFG_BEST_RSSI_THRESHOLD_NAME "best_rssi_threshold"
12031#define CFG_BEST_RSSI_THRESHOLD_DEFAULT (55)
12032#define CFG_BEST_RSSI_THRESHOLD_MIN (0)
12033#define CFG_BEST_RSSI_THRESHOLD_MAX (96)
12034
12035/*
12036 * <ini>
12037 * good_rssi_threshold - Good Rssi for score calculation
12038 * @Min: 0
12039 * @Max: 96
12040 * @Default: 70
12041 *
12042 * This ini tells limit for good RSSI. RSSI better than this limit and less
12043 * than best_rssi_threshold is considered as good RSSI.
12044 *
12045 * Related: rssi_weightage, best_rssi_threshold
12046 *
12047 * Supported Feature: STA Candidate selection
12048 *
12049 * Usage: External
12050 *
12051 * </ini>
12052 */
12053#define CFG_GOOD_RSSI_THRESHOLD_NAME "good_rssi_threshold"
12054#define CFG_GOOD_RSSI_THRESHOLD_DEFAULT (70)
12055#define CFG_GOOD_RSSI_THRESHOLD_MIN (0)
12056#define CFG_GOOD_RSSI_THRESHOLD_MAX (96)
12057
12058/*
12059 * <ini>
12060 * bad_rssi_threshold - Bad Rssi for score calculation
12061 * @Min: 0
12062 * @Max: 96
12063 * @Default: 80
12064 *
12065 * This ini tells limit for Bad RSSI. RSSI greater then bad_rssi_threshold
12066 * is considered as bad RSSI.
12067 *
12068 * Related: rssi_weightage, good_rssi_threshold
12069 *
12070 * Supported Feature: STA Candidate selection
12071 *
12072 * Usage: External
12073 *
12074 * </ini>
12075 */
12076#define CFG_BAD_RSSI_THRESHOLD_NAME "bad_rssi_threshold"
12077#define CFG_BAD_RSSI_THRESHOLD_DEFAULT (80)
12078#define CFG_BAD_RSSI_THRESHOLD_MIN (0)
12079#define CFG_BAD_RSSI_THRESHOLD_MAX (96)
12080
12081/*
12082 * <ini>
12083 * good_rssi_pcnt - Percent Score to Good RSSI out of total RSSI score.
12084 * @Min: 0
12085 * @Max: 100
12086 * @Default: 80
12087 *
12088 * This ini tells about how much percent should be given to good RSSI(RSSI
12089 * between best_rssi_threshold and good_rssi_threshold) out of RSSI weightage.
12090 *
12091 * Related: rssi_weightage, best_rssi_threshold, good_rssi_threshold
12092 *
12093 * Supported Feature: STA Candidate selection
12094 *
12095 * Usage: External
12096 *
12097 * </ini>
12098 */
12099#define CFG_GOOD_RSSI_PCNT_NAME "good_rssi_pcnt"
12100#define CFG_GOOD_RSSI_PCNT_DEFAULT (80)
12101#define CFG_GOOD_RSSI_PCNT_MIN (0)
12102#define CFG_GOOD_RSSI_PCNT_MAX (100)
12103
12104/*
12105 * <ini>
12106 * bad_rssi_pcnt - Percent Score to BAD RSSI out of total RSSI score.
12107 * @Min: 0
12108 * @Max: 100
12109 * @Default: 25
12110 *
12111 * This ini tells about how much percent should be given to bad RSSI (RSSI
12112 * between good_rssi_threshold and bad_rssi_threshold) out of RSSI weightage.
12113 *
12114 * Related: rssi_weightage, good_rssi_threshold, bad_rssi_threshold
12115 *
12116 * Supported Feature: STA Candidate selection
12117 *
12118 * Usage: External
12119 *
12120 * </ini>
12121 */
12122#define CFG_BAD_RSSI_PCNT_NAME "bad_rssi_pcnt"
12123#define CFG_BAD_RSSI_PCNT_DEFAULT (25)
12124#define CFG_BAD_RSSI_PCNT_MIN (0)
12125#define CFG_BAD_RSSI_PCNT_MAX (100)
12126
12127/*
12128 * <ini>
12129 * good_rssi_bucket_size - Bucket size between best and good RSSI to score.
12130 * @Min: 1
12131 * @Max: 10
12132 * @Default: 5
12133 *
12134 * This ini tells about bucket size for scoring between best and good RSSI.
12135 * Below Best RSSI, 100% score will be given. Between best and good RSSI, RSSI
12136 * is divided in buckets and score will be assigned bucket wise starting from
12137 * good_rssi_pcnt.
12138 *
12139 * Related: rssi_weightage, good_rssi_pcnt
12140 *
12141 * Supported Feature: STA Candidate selection
12142 *
12143 * Usage: External
12144 *
12145 * </ini>
12146 */
12147#define CFG_GOOD_RSSI_BUCKET_SIZE_NAME "good_rssi_bucket_size"
12148#define CFG_GOOD_RSSI_BUCKET_SIZE_DEFAULT (5)
12149#define CFG_GOOD_RSSI_BUCKET_SIZE_MIN (1)
12150#define CFG_GOOD_RSSI_BUCKET_SIZE_MAX (10)
12151
12152/*
12153 * <ini>
12154 * bad_rssi_bucket_size - Bucket size between good and bad RSSI to score.
12155 * @Min: 1
12156 * @Max: 10
12157 * @Default: 5
12158 *
12159 * This ini tells about bucket size for scoring between good and bad RSSI.
12160 * Between good and bad RSSI, RSSI is divided in buckets and score will be
12161 * assigned bucket wise starting from bad_rssi_pcnt.
12162 *
12163 * Related: rssi_weightage, bad_rssi_pcnt
12164 *
12165 * Supported Feature: STA Candidate selection
12166 *
12167 * Usage: External
12168 *
12169 * </ini>
12170 */
12171#define CFG_BAD_RSSI_BUCKET_SIZE_NAME "bad_rssi_bucket_size"
12172#define CFG_BAD_RSSI_BUCKET_SIZE_DEFAULT (5)
12173#define CFG_BAD_RSSI_BUCKET_SIZE_MIN (1)
12174#define CFG_BAD_RSSI_BUCKET_SIZE_MAX (10)
12175
12176/*
12177 * <ini>
12178 * rssi_pref_5g_rssi_thresh - A RSSI threshold above which 5 GHz is not favored
12179 * @Min: 0
12180 * @Max: 96
12181 * @Default: 76
12182 *
12183 * 5G AP are given chan_band_weightage. This ini tells about RSSI threshold
12184 * above which 5GHZ is not favored.
12185 *
12186 * Related: chan_band_weightage
12187 *
12188 * Supported Feature: STA Candidate selection
12189 *
12190 * Usage: External
12191 *
12192 * </ini>
12193 */
12194#define CFG_RSSI_PERF_5G_THRESHOLD_NAME "rssi_pref_5g_rssi_thresh"
12195#define CFG_RSSI_PERF_5G_THRESHOLD_DEFAULT (76)
12196#define CFG_RSSI_PERF_5G_THRESHOLD_MIN (0)
12197#define CFG_RSSI_PERF_5G_THRESHOLD_MAX (96)
12198
12199/*
12200 * <ini>
12201 * bandwidth_weight_per_index - percentage as per bandwidth
12202 * @Min: 0x00000000
12203 * @Max: 0x64646464
12204 * @Default: 0x6432190C
12205 *
12206 * This INI give percentage value of chan_width_weightage to be used as per
12207 * peer bandwidth. Self BW is also considered while calculating score. Eg if
12208 * self BW is 20 MHZ 10% will be given for all AP irrespective of the AP
12209 * capability.
12210 *
12211 * Indexes are defined in this way.
12212 * 0 Index (BITS 0-7): 20 MHz - Def 12%
12213 * 1 Index (BITS 8-15): 40 MHz - Def 25%
12214 * 2 Index (BITS 16-23): 80 MHz - Def 50%
12215 * 3 Index (BITS 24-31): 160 MHz - Def 100%
12216 * These percentage values are stored in HEX. For any index max value, can be 64
12217 *
12218 * Related: chan_width_weightage
12219 *
12220 * Supported Feature: STA Candidate selection
12221 *
12222 * Usage: External
12223 *
12224 * </ini>
12225 */
12226#define CFG_BAND_WIDTH_WEIGHT_PER_INDEX_NAME "bandwidth_weight_per_index"
12227#define CFG_BAND_WIDTH_WEIGHT_PER_INDEX_DEFAULT (0x6432190C)
12228#define CFG_BAND_WIDTH_WEIGHT_PER_INDEX_MIN (0x00000000)
12229#define CFG_BAND_WIDTH_WEIGHT_PER_INDEX_MAX (0x64646464)
12230
12231/*
12232 * <ini>
12233 * nss_weight_per_index - percentage as per NSS
12234 * @Min: 0x00000000
12235 * @Max: 0x64646464
12236 * @Default: 0x6432190C
12237 *
12238 * This INI give percentage value of nss_weightage to be used as per peer NSS.
12239 * Self NSS capability is also considered. Eg if self NSS is 1x1 10% will be
12240 * given for all AP irrespective of the AP capability.
12241 *
12242 * Indexes are defined in this way.
12243 * 0 Index (BITS 0-7): 1X1- Def 12%
12244 * 1 Index (BITS 8-15): 2X2- Def 25%
12245 * 2 Index (BITS 16-23): 3X3- Def 50%
12246 * 3 Index (BITS 24-31): 4X4- Def 100%
12247 * These percentage values are stored in HEX. For any index max value, can be 64
12248 *
12249 * Related: nss_weightage
12250 *
12251 * Supported Feature: STA Candidate selection
12252 *
12253 * Usage: External
12254 *
12255 * </ini>
12256 */
12257#define CFG_NSS_WEIGHT_PER_INDEX_NAME "nss_weight_per_index"
12258#define CFG_NSS_WEIGHT_PER_INDEX_DEFAULT (0x6432190C)
12259#define CFG_NSS_WEIGHT_PER_INDEX_MIN (0x00000000)
12260#define CFG_NSS_WEIGHT_PER_INDEX_MAX (0x64646464)
12261
12262/*
12263 * <ini>
12264 * band_weight_per_index - percentage as per band
12265 * @Min: 0x00000000
12266 * @Max: 0x64646464
12267 * @Default: 0x0000644B
12268 *
12269 * This INI give percentage value of chan_band_weightage to be used as per band.
12270 * If RSSI is greater than rssi_pref_5g_rssi_thresh preference is given for 5Ghz
12271 * else, it's given for 2.4Ghz.
12272 *
12273 * Indexes are defined in this way.
12274 * 0 Index (BITS 0-7): 2.4GHz - Def 10%
12275 * 1 Index (BITS 8-15): 5GHz - Def 20%
12276 * 2 Index (BITS 16-23): Reserved
12277 * 3 Index (BITS 24-31): Reserved
12278 * These percentage values are stored in HEX. For any index max value, can be 64
12279 *
12280 * Related: chan_band_weightage, rssi_pref_5g_rssi_thresh
12281 *
12282 * Supported Feature: STA Candidate selection
12283 *
12284 * Usage: External
12285 *
12286 * </ini>
12287 */
12288#define CFG_BAND_WEIGHT_PER_INDEX_NAME "band_weight_per_index"
12289#define CFG_BAND_WEIGHT_PER_INDEX_DEFAULT (0x0000644B)
12290#define CFG_BAND_WEIGHT_PER_INDEX_MIN (0x00000000)
12291#define CFG_BAND_WEIGHT_PER_INDEX_MAX (0x64646464)
12292
12293/*
12294 * <ini>
12295 * num_esp_qbss_slots - number of slots in which the esp/qbss load will
12296 * be divided
12297 *
12298 * @Min: 1
12299 * @Max: 15
12300 * @Default: 4
12301 *
12302 * Number of slots in which the esp/qbss load will be divided. Max 15. index 0
12303 * is used for 'not_present. Num_slot will equally divide 100. e.g, if
12304 * num_slot = 4 slot 1 = 0-25% load, slot 2 = 26-50% load, slot 3 = 51-75% load,
12305 * slot 4 = 76-100% load. Remaining unused index can be 0.
12306 *
12307 * Usage: External
12308 *
12309 * </ini>
12310 */
12311#define CFG_ESP_QBSS_SLOTS_NAME "num_esp_qbss_slots"
12312#define CFG_ESP_QBSS_SLOTS_DEFAULT (4)
12313#define CFG_ESP_QBSS_SLOTS_MIN (1)
12314#define CFG_ESP_QBSS_SLOTS_MAX (15)
12315
12316/*
12317 * <ini>
12318 * esp_qbss_score_idx3_to_0 - percentage for esp/qbss load for slots 0-3
12319 * @Min: 0x00000000
12320 * @Max: 0x64646464
12321 * @Default: 0x19326432
12322 *
12323 * This INI give percentage value of channel_congestion_weightage to be used as
12324 * index in which the load value falls. Index 0 is for percentage when ESP/QBSS
12325 * is not present.
12326 *
12327 * Indexes are defined in this way.
12328 * 0 Index (BITS 0-7): when ESP/QBSS is not present
12329 * 1 Index (BITS 8-15): SLOT_1
12330 * 2 Index (BITS 16-23): SLOT_2
12331 * 3 Index (BITS 24-31): SLOT_3
12332 * These percentage values are stored in HEX. For any index max value, can be 64
12333 *
12334 * Related: channel_congestion_weightage, num_esp_qbss_slots
12335 *
12336 * Supported Feature: STA Candidate selection
12337 *
12338 * Usage: External
12339 *
12340 * </ini>
12341 */
12342#define CFG_ESP_QBSS_SCORE_IDX3_TO_0_NAME "esp_qbss_score_idx3_to_0"
12343#define CFG_ESP_QBSS_SCORE_IDX3_TO_0_DEFAULT (0x19326432)
12344#define CFG_ESP_QBSS_SCORE_IDX3_TO_0_MIN (0x00000000)
12345#define CFG_ESP_QBSS_SCORE_IDX3_TO_0_MAX (0x64646464)
12346
12347/*
12348 * <ini>
12349 * esp_qbss_score_idx7_to_4 - percentage for esp/qbss load for slots 4-7
12350 * @Min: 0x00000000
12351 * @Max: 0x64646464
gaurank kathpalia90f83f02017-12-20 14:10:58 +053012352 * @Default: 0x0000000A
Himanshu Agarwal8bcec572017-09-28 11:54:37 +053012353 *
12354 * This INI give percentage value of channel_congestion_weightage to be used as
12355 * index in which the load value falls. Used only if num_esp_qbss_slots is
12356 * greater than 3.
12357 *
12358 * Indexes are defined in this way.
12359 * 0 Index (BITS 0-7): SLOT_4
12360 * 1 Index (BITS 8-15): SLOT_5
12361 * 2 Index (BITS 16-23): SLOT_6
12362 * 3 Index (BITS 24-31): SLOT_7
12363 * These percentage values are stored in HEX. For any index max value, can be 64
12364 *
12365 * Related: channel_congestion_weightage, num_esp_qbss_slots
12366 *
12367 * Supported Feature: STA Candidate selection
12368 *
12369 * Usage: External
12370 *
12371 * </ini>
12372 */
12373#define CFG_ESP_QBSS_SCORE_IDX7_TO_4_NAME "esp_qbss_score_idx7_to_4"
gaurank kathpalia90f83f02017-12-20 14:10:58 +053012374#define CFG_ESP_QBSS_SCORE_IDX7_TO_4_DEFAULT (0x0000000A)
Himanshu Agarwal8bcec572017-09-28 11:54:37 +053012375#define CFG_ESP_QBSS_SCORE_IDX7_TO_4_MIN (0x00000000)
12376#define CFG_ESP_QBSS_SCORE_IDX7_TO_4_MAX (0x64646464)
12377
12378
12379/*
12380 * <ini>
12381 * esp_qbss_score_idx11_to_8 - percentage for esp/qbss load for slots 8-11
12382 * @Min: 0x00000000
12383 * @Max: 0x64646464
12384 * @Default: 0x00000000
12385 *
12386 * This INI give percentage value of channel_congestion_weightage to be used as
12387 * index in which the load value falls. Used only if num_esp_qbss_slots is
12388 * greater than 7.
12389 *
12390 * Indexes are defined in this way.
12391 * 0 Index (BITS 0-7): SLOT_8
12392 * 1 Index (BITS 8-15): SLOT_9
12393 * 2 Index (BITS 16-23): SLOT_10
12394 * 3 Index (BITS 24-31): SLOT_11
12395 * These percentage values are stored in HEX. For any index max value, can be 64
12396 *
12397 * Related: channel_congestion_weightage, num_esp_qbss_slots
12398 *
12399 * Supported Feature: STA Candidate selection
12400 *
12401 * Usage: External
12402 *
12403 * </ini>
12404 */
12405#define CFG_ESP_QBSS_SCORE_IDX11_TO_8_NAME "esp_qbss_score_idx11_to_8"
12406#define CFG_ESP_QBSS_SCORE_IDX11_TO_8_DEFAULT (0x00000000)
12407#define CFG_ESP_QBSS_SCORE_IDX11_TO_8_MIN (0x00000000)
12408#define CFG_ESP_QBSS_SCORE_IDX11_TO_8_MAX (0x64646464)
12409
12410
12411/*
12412 * <ini>
12413 * esp_qbss_score_idx15_to_12 - percentage for esp/qbss load for slots 12-15
12414 * @Min: 0x00000000
12415 * @Max: 0x64646464
12416 * @Default: 0x00000000
12417 *
12418 * This INI give percentage value of channel_congestion_weightage to be used as
12419 * index in which the load value falls. Used only if num_esp_qbss_slots is
12420 * greater than 11.
12421 *
12422 * Indexes are defined in this way.
12423 * 0 Index (BITS 0-7): SLOT_12
12424 * 1 Index (BITS 8-15): SLOT_13
12425 * 2 Index (BITS 16-23): SLOT_14
12426 * 3 Index (BITS 24-31): SLOT_15
12427 * These percentage values are stored in HEX. For any index max value, can be 64
12428 *
12429 * Related: channel_congestion_weightage, num_esp_qbss_slots
12430 *
12431 * Supported Feature: STA Candidate selection
12432 *
12433 * Usage: External
12434 *
12435 * </ini>
12436 */
12437#define CFG_ESP_QBSS_SCORE_IDX15_TO_12_NAME "esp_qbss_score_idx15_to_12"
12438#define CFG_ESP_QBSS_SCORE_IDX15_TO_12_DEFAULT (0x00000000)
12439#define CFG_ESP_QBSS_SCORE_IDX15_TO_12_MIN (0x00000000)
12440#define CFG_ESP_QBSS_SCORE_IDX15_TO_12_MAX (0x64646464)
12441
12442/*
12443 * <ini>
12444 * num_oce_wan_slots - number of slots in which the oce wan metrics will
12445 * be divided
12446 *
12447 * @Min: 1
12448 * @Max: 15
12449 * @Default: 8
12450 *
12451 * Number of slots in which the oce wan metrics will be divided. Max 15. index 0
12452 * is used for not_present. Num_slot will equally divide 100. e.g, if
12453 * num_slot = 4 slot 1 = 0-3 DL CAP, slot 2 = 4-7 DL CAP, slot 3 = 8-11 DL CAP,
12454 * slot 4 = 12-15 DL CAP. Remaining unused index can be 0.
12455 *
12456 * Related: oce_wan_weightage
12457 *
12458 * Usage: External
12459 *
12460 * </ini>
12461 */
12462#define CFG_OCE_WAN_SLOTS_NAME "num_oce_wan_slots"
Abhishek Singh388d0902018-03-19 15:05:16 +053012463#define CFG_OCE_WAN_SLOTS_DEFAULT (15)
Himanshu Agarwal8bcec572017-09-28 11:54:37 +053012464#define CFG_OCE_WAN_SLOTS_MIN (1)
12465#define CFG_OCE_WAN_SLOTS_MAX (15)
12466
12467/*
12468 * <ini>
12469 * oce_wan_score_idx3_to_0 - percentage for OCE WAN metrics score for slots 0-3
12470 * @Min: 0x00000000
12471 * @Max: 0x64646464
Abhishek Singh388d0902018-03-19 15:05:16 +053012472 * @Default: 0x00000032
Himanshu Agarwal8bcec572017-09-28 11:54:37 +053012473 *
12474 * This INI give percentage value of OCE WAN metrics DL CAP, to be used as
12475 * index in which the DL CAP value falls. Index 0 is for percentage when
12476 * OCE WAN metrics DL CAP is not present.
12477 *
12478 * Indexes are defined in this way.
12479 * 0 Index (BITS 0-7): when OCE WAN metrics DL CAP is not present
12480 * 1 Index (BITS 8-15): SLOT_1
12481 * 2 Index (BITS 16-23): SLOT_2
12482 * 3 Index (BITS 24-31): SLOT_3
12483 * These percentage values are stored in HEX. For any index max value, can be 64
12484 *
12485 * Related: num_oce_wan_slots, oce_wan_weightage
12486 *
12487 * Supported Feature: STA Candidate selection
12488 *
12489 * Usage: External
12490 *
12491 * </ini>
12492 */
12493#define CFG_OCE_WAN_SCORE_IDX3_TO_0_NAME "oce_wan_score_idx3_to_0"
Abhishek Singh388d0902018-03-19 15:05:16 +053012494#define CFG_OCE_WAN_SCORE_IDX3_TO_0_DEFAULT (0x00000032)
Himanshu Agarwal8bcec572017-09-28 11:54:37 +053012495#define CFG_OCE_WAN_SCORE_IDX3_TO_0_MIN (0x00000000)
12496#define CFG_OCE_WAN_SCORE_IDX3_TO_0_MAX (0x64646464)
12497
12498/*
12499 * <ini>
12500 * oce_wan_score_idx7_to_4 - percentage for OCE WAN metrics score for slots 4-7
12501 * @Min: 0x00000000
12502 * @Max: 0x64646464
Abhishek Singh388d0902018-03-19 15:05:16 +053012503 * @Default: 0x00000000
Himanshu Agarwal8bcec572017-09-28 11:54:37 +053012504 *
12505 * This INI give percentage value of OCE WAN metrics DL CAP, to be used as
12506 * index in which the DL CAP value falls. Used only if num_oce_wan_slots is
12507 * greater than 3.
12508 *
12509 * Indexes are defined in this way.
12510 * 0 Index (BITS 0-7): SLOT_4
12511 * 1 Index (BITS 8-15): SLOT_5
12512 * 2 Index (BITS 16-23): SLOT_6
12513 * 3 Index (BITS 24-31): SLOT_7
12514 * These percentage values are stored in HEX. For any index max value, can be 64
12515 *
12516 * Related: num_oce_wan_slots, oce_wan_weightage
12517 *
12518 * Supported Feature: STA Candidate selection
12519 *
12520 * Usage: External
12521 *
12522 * </ini>
12523 */
12524#define CFG_OCE_WAN_SCORE_IDX7_TO_4_NAME "oce_wan_score_idx7_to_4"
Abhishek Singh388d0902018-03-19 15:05:16 +053012525#define CFG_OCE_WAN_SCORE_IDX7_TO_4_DEFAULT (0x00000000)
Himanshu Agarwal8bcec572017-09-28 11:54:37 +053012526#define CFG_OCE_WAN_SCORE_IDX7_TO_4_MIN (0x00000000)
12527#define CFG_OCE_WAN_SCORE_IDX7_TO_4_MAX (0x64646464)
12528
12529/*
12530 * <ini>
12531 * oce_wan_score_idx11_to_8 - percentage for OCE WAN metrics score for slot 8-11
12532 * @Min: 0x00000000
12533 * @Max: 0x64646464
Abhishek Singh388d0902018-03-19 15:05:16 +053012534 * @Default: 0x06030000
Himanshu Agarwal8bcec572017-09-28 11:54:37 +053012535 *
12536 * This INI give percentage value of OCE WAN metrics DL CAP, to be used as
12537 * index in which the DL CAP value falls. Used only if num_oce_wan_slots is
12538 * greater than 7.
12539 *
12540 * Indexes are defined in this way.
12541 * 0 Index (BITS 0-7): SLOT_8
12542 * 1 Index (BITS 8-15): SLOT_9
12543 * 2 Index (BITS 16-23): SLOT_10
12544 * 3 Index (BITS 24-31): SLOT_11
12545 * These percentage values are stored in HEX. For any index max value, can be 64
12546 *
12547 * Related: num_oce_wan_slots, oce_wan_weightage
12548 *
12549 * Supported Feature: STA Candidate selection
12550 *
12551 * Usage: External
12552 *
12553 * </ini>
12554 */
12555#define CFG_OCE_WAN_SCORE_IDX11_TO_8_NAME "oce_wan_score_idx11_to_8"
Abhishek Singh388d0902018-03-19 15:05:16 +053012556#define CFG_OCE_WAN_SCORE_IDX11_TO_8_DEFAULT (0x06030000)
Himanshu Agarwal8bcec572017-09-28 11:54:37 +053012557#define CFG_OCE_WAN_SCORE_IDX11_TO_8_MIN (0x00000000)
12558#define CFG_OCE_WAN_SCORE_IDX11_TO_8_MAX (0x64646464)
12559
12560/*
12561 * <ini>
12562 * oce_wan_score_idx15_to_12 - % for OCE WAN metrics score for slot 12-15
12563 * @Min: 0x00000000
12564 * @Max: 0x64646464
Abhishek Singh388d0902018-03-19 15:05:16 +053012565 * @Default: 0x6432190C
Himanshu Agarwal8bcec572017-09-28 11:54:37 +053012566 *
12567 * This INI give percentage value of OCE WAN metrics DL CAP, to be used as
12568 * index in which the DL CAP value falls. Used only if num_oce_wan_slots is
12569 * greater than 11.
12570 *
12571 * Indexes are defined in this way.
12572 * 0 Index (BITS 0-7): SLOT_12
12573 * 1 Index (BITS 8-15): SLOT_13
12574 * 2 Index (BITS 16-23): SLOT_14
12575 * 3 Index (BITS 24-31): SLOT_15
12576 * These percentage values are stored in HEX. For any index max value, can be 64
12577 *
12578 * Related: num_oce_wan_slots, oce_wan_weightage
12579 *
12580 * Supported Feature: STA Candidate selection
12581 *
12582 * Usage: External
12583 *
12584 * </ini>
12585 */
12586#define CFG_OCE_WAN_SCORE_IDX15_TO_12_NAME "oce_wan_score_idx15_to_12"
Abhishek Singh388d0902018-03-19 15:05:16 +053012587#define CFG_OCE_WAN_SCORE_IDX15_TO_12_DEFAULT (0x6432190C)
Himanshu Agarwal8bcec572017-09-28 11:54:37 +053012588#define CFG_OCE_WAN_SCORE_IDX15_TO_12_MIN (0x00000000)
12589#define CFG_OCE_WAN_SCORE_IDX15_TO_12_MAX (0x64646464)
12590
12591/*
12592 * <ini>
12593 * enable_scoring_for_roam - enable/disable scoring logic in FW for candidate
12594 * selection during roaming
12595 *
12596 * @Min: 0
12597 * @Max: 1
Abhishek Singh104a1bf2017-12-12 14:46:11 +053012598 * @Default: 1
Himanshu Agarwal8bcec572017-09-28 11:54:37 +053012599 *
12600 * This ini is used to enable/disable scoring logic in FW for candidate
12601 * selection during roaming.
12602 *
12603 * Supported Feature: STA Candidate selection by FW during roaming based on
12604 * scoring logic.
12605 *
12606 * Usage: External
12607 *
12608 * </ini>
12609 */
12610#define CFG_ENABLE_SCORING_FOR_ROAM_NAME "enable_scoring_for_roam"
Abhishek Singh104a1bf2017-12-12 14:46:11 +053012611#define CFG_ENABLE_SCORING_FOR_ROAM_DEFAULT (1)
Himanshu Agarwal8bcec572017-09-28 11:54:37 +053012612#define CFG_ENABLE_SCORING_FOR_ROAM_MIN (0)
12613#define CFG_ENABLE_SCORING_FOR_ROAM_MAX (1)
12614
12615/*
12616 * <ini>
Abhishek Singh6454ad32017-12-20 10:42:21 +053012617 * force_rsne_override - force rsnie override from user
12618 * @Min: 0
12619 * @Max: 1
12620 * @Default: 0
12621 *
12622 * This ini is used to enable/disable test mode to force rsne override used in
12623 * security enhancement test cases to pass the RSNIE sent by user in
12624 * assoc request.
12625 *
12626 * Related: None
12627 *
12628 * Supported Feature: STA
12629 *
12630 * Usage: internal
12631 *
12632 * </ini>
12633 */
12634#define CFG_FORCE_RSNE_OVERRIDE_NAME "force_rsne_override"
12635#define CFG_FORCE_RSNE_OVERRIDE_MIN (0)
12636#define CFG_FORCE_RSNE_OVERRIDE_MAX (1)
12637#define CFG_FORCE_RSNE_OVERRIDE_DEFAULT (0)
12638
12639/*
12640 * <ini>
hqu16d6e082017-09-04 10:52:31 +080012641 * gChanSwitchHostapdRateEnabled - Enable/disable hostapd rate when doing SAP
12642 * channel switch
12643 * @Min: 0
12644 * @Max: 1
12645 * @Default: 0
12646 *
12647 * This ini is used to set supported rates calculated from hostapd.conf file
12648 * or not when doing SAP channel switch. It must set it to 0 when cross-band
12649 * channel switch happens such as from 2G to 5G or 5G to 2G.
12650 *
12651 * Related: When doing SAP channel switch, if gChanSwitchHostapdRateEnabled is
12652 * set to 1, supported rates will be calculated from hostapd.conf file,
12653 * if gChanSwitchHostapdRateEnabled is set to 0, supported rates will be
12654 * calculated from driver default rates.
12655 *
12656 * Supported Feature: SAP
12657 *
12658 * Usage: External
12659 *
12660 * </ini>
12661 */
12662#define CFG_CHAN_SWITCH_HOSTAPD_RATE_ENABLED_NAME \
12663 "gChanSwitchHostapdRateEnabled"
12664#define CFG_CHAN_SWITCH_HOSTAPD_RATE_ENABLED_MIN (0)
12665#define CFG_CHAN_SWITCH_HOSTAPD_RATE_ENABLED_MAX (1)
12666#define CFG_CHAN_SWITCH_HOSTAPD_RATE_ENABLED_DEFAULT (0)
12667
12668/*
Ashwini Patilf2bf05e2017-03-10 03:41:03 +053012669 * <ini>
12670 * g_mbo_candidate_rssi_thres - Candidate AP's minimum RSSI to accept
12671 * @Min: -120
12672 * @Max: 0
12673 * @Default: -72
12674 *
12675 * This ini specifies the minimum RSSI value a candidate should have to accept
12676 * it as a target for transition.
12677 *
12678 * Related: N/A
12679 *
12680 * Supported Feature: MBO
12681 *
12682 * Usage: Internal
12683 *
12684 * </ini>
12685 */
12686#define CFG_MBO_CANDIDATE_RSSI_THRESHOLD_NAME "g_mbo_candidate_rssi_thres"
12687#define CFG_CANDIDATE_RSSI_THRESHOLD_DEFAULT (-72)
12688#define CFG_CANDIDATE_RSSI_THRESHOLD_MIN (-120)
12689#define CFG_CANDIDATE_RSSI_THRESHOLD_MAX (0)
12690
12691/*
12692 * <ini>
12693 * g_mbo_current_rssi_thres - Connected AP's RSSI threshold to consider a
12694 * transition
12695 * @Min: -120
12696 * @Max: 0
12697 * @Default: -65
12698 *
12699 * This ini is used to configure connected AP's RSSI threshold value to consider
12700 * a transition.
12701 *
12702 * Related: N/A
12703 *
12704 * Supported Feature: MBO
12705 *
12706 * Usage: Internal
12707 *
12708 * </ini>
12709 */
12710#define CFG_MBO_CURRENT_RSSI_THRESHOLD_NAME "g_mbo_current_rssi_thres"
12711#define CFG_CURRENT_RSSI_THRESHOLD_DEFAULT (-65)
12712#define CFG_CURRENT_RSSI_THRESHOLD_MIN (-120)
12713#define CFG_CURRENT_RSSI_THRESHOLD_MAX (0)
12714
12715/*
12716 * <ini>
12717 * g_mbo_current_rssi_mcc_thres - connected AP's RSSI threshold value to prefer
12718 * against a MCC
12719 * @Min: -120
12720 * @Max: 0
12721 * @Default: -75
12722 *
12723 * This ini is used to configure connected AP's minimum RSSI threshold that is
12724 * preferred against a MCC case, if the candidate can cause MCC.
12725 *
12726 * Related: N/A
12727 *
12728 * Supported Feature: MBO
12729 *
12730 * Usage: Internal
12731 *
12732 * </ini>
12733 */
12734#define CFG_MBO_CUR_RSSI_MCC_THRESHOLD_NAME "g_mbo_current_rssi_mcc_thres"
12735#define CFG_MBO_CUR_RSSI_MCC_THRESHOLD_DEFAULT (-75)
12736#define CFG_MBO_CUR_RSSI_MCC_THRESHOLD_MIN (-120)
12737#define CFG_MBO_CUR_RSSI_MCC_THRESHOLD_MAX (0)
12738
12739/*
12740 * <ini>
12741 * g_mbo_candidate_rssi_btc_thres - Candidate AP's minimum RSSI threshold to
12742 * prefer it even in case of BT coex
12743 * @Min: -120
12744 * @Max: 0
12745 * @Default: -70
12746 *
12747 * This ini is used to configure candidate AP's minimum RSSI threshold to prefer
12748 * it for transition even in case of BT coex.
12749 *
12750 * Related: N/A
12751 *
12752 * Supported Feature: MBO
12753 *
12754 * Usage: Internal
12755 *
12756 * </ini>
12757 */
12758#define CFG_MBO_CAND_RSSI_BTC_THRESHOLD_NAME "g_mbo_candidate_rssi_btc_thres"
12759#define CFG_MBO_CAND_RSSI_BTC_THRESHOLD_DEFAULT (-70)
12760#define CFG_MBO_CAND_RSSI_BTC_THRESHOLD_MIN (-120)
12761#define CFG_MBO_CAND_RSSI_BTC_THRESHOLD_MAX (0)
12762
Qiwei Cai4505fc62018-05-17 18:35:19 +080012763#ifdef WLAN_FEATURE_PACKET_FILTERING
Ashwini Patilf2bf05e2017-03-10 03:41:03 +053012764/*
Hanumanth Reddy Pothula3def8942017-10-05 16:19:36 +053012765 * <ini>
12766 * g_enable_packet_filter_bitmap - Enable Packet filters before going into
12767 * suspend mode
12768 * @Min: 0
12769 * @Max: 63
12770 * @Default: 0
12771 * Below is the Detailed bit map of the Filters
12772 * bit-0 : IPv6 multicast
12773 * bit-1 : IPv4 multicast
12774 * bit-2 : IPv4 broadcast
12775 * bit-3 : XID - Exchange station Identification packet, solicits the
12776 * identification of the receiving station
12777 * bit-4 : STP - Spanning Tree Protocol, builds logical loop free topology
12778 * bit-5 : DTP/LLC/CDP
12779 * DTP - Dynamic Trunking Protocol is used by Ciscoswitches to negotiate
12780 * whether an interconnection between two switches should be put into access or
12781 * trunk mode
12782 * LLC - Logical link control, used for multiplexing, flow & error control
12783 * CDP - Cisco Discovery Protocol packet contains information about the cisco
12784 * devices in the network
12785 *
12786 * This ini support to enable above mentioned packet filters
12787 * when target goes to suspend mode, clear those when resume
12788 *
12789 * Related: None
12790 *
12791 * Supported Feature: PACKET FILTERING
12792 *
12793 * Usage: Internal/External
12794 *
12795 * </ini>
12796 */
12797#define CFG_ENABLE_PACKET_FILTERS_NAME "g_enable_packet_filter_bitmap"
12798#define CFG_ENABLE_PACKET_FILTERS_DEFAULT (0)
12799#define CFG_ENABLE_PACKET_FILTERS_MIN (0)
12800#define CFG_ENABLE_PACKET_FILTERS_MAX (63)
Qiwei Cai4505fc62018-05-17 18:35:19 +080012801#endif /* WLAN_FEATURE_PACKET_FILTERING */
lifeng1c16b6b2017-09-25 13:59:55 +080012802
12803/*
12804 * <ini>
12805 * gDfsBeaconTxEnhanced - beacon tx enhanced
12806 * @Min: 0
12807 * @Max: 1
12808 * @Default: 0
12809 *
12810 * This ini is used to enhance dfs beacon tx
12811 *
12812 * Related: none
12813 *
12814 * Usage: External
12815 *
12816 * </ini>
12817 */
12818#define CFG_DFS_BEACON_TX_ENHANCED "gDfsBeaconTxEnhanced"
12819#define CFG_DFS_BEACON_TX_ENHANCED_MIN (0)
12820#define CFG_DFS_BEACON_TX_ENHANCED_MAX (1)
12821#define CFG_DFS_BEACON_TX_ENHANCED_DEFAULT (0)
12822
Hanumanth Reddy Pothula3def8942017-10-05 16:19:36 +053012823/*
lifeng7c607dd2017-02-21 21:16:49 +080012824 * gReducedBeaconInterval - beacon interval reduced
12825 * @Min: 0
12826 * @Max: 100
12827 * @Default: 0
12828 *
12829 * This ini is used to reduce beacon interval before channel
12830 * switch (when val great than 0, or the feature is disabled).
12831 * It would reduce the downtime on the STA side which is
12832 * waiting for beacons from the AP to resume back transmission.
12833 * Switch back the beacon_interval to its original value after
12834 * channel switch based on the timeout.
12835 *
12836 * Related: none
12837 *
12838 * Usage: External
12839 *
12840 * </ini>
12841 */
12842#define CFG_REDUCED_BEACON_INTERVAL "gReducedBeaconInterval"
12843#define CFG_REDUCED_BEACON_INTERVAL_MIN (0)
12844#define CFG_REDUCED_BEACON_INTERVAL_MAX (100)
12845#define CFG_REDUCED_BEACON_INTERVAL_DEFAULT (0)
12846
12847/*
Yeshwanth Sriram Guntuka2ba6fe92017-10-04 14:40:45 +053012848 * oce_enable_rssi_assoc_reject - Enable/disable rssi based assoc rejection
12849 * @Min: 0
12850 * @Max: 1
12851 * @Default: 1
12852 *
12853 * This ini is used to enable/disable rssi based assoc rejection. If this is
12854 * disabled then OCE ini oce_sta_enable will also be disabled and OCE IE will
12855 * not be sent in frames.
12856 *
12857 * Related: None
12858 *
12859 * Supported Feature: OCE
12860 *
12861 * Usage: External
12862 *
12863 * </ini>
12864 */
12865#define CFG_OCE_ENABLE_RSSI_BASED_ASSOC_REJECT_NAME \
12866 "oce_enable_rssi_assoc_reject"
12867#define CFG_OCE_ENABLE_RSSI_BASED_ASSOC_REJECT_MIN (0)
12868#define CFG_OCE_ENABLE_RSSI_BASED_ASSOC_REJECT_MAX (1)
12869#define CFG_OCE_ENABLE_RSSI_BASED_ASSOC_REJECT_DEFAULT (1)
12870
12871/*
12872 * <ini>
12873 * oce_enable_probe_req_rate - Set probe request rate
12874 * @Min: 0
12875 * @Max: 1
12876 * @Default: 0
12877 *
12878 * This ini is used to set probe request rate to 5.5Mbps as per OCE requirement
12879 * in 2.4G band
12880 *
12881 * Related: None
12882 *
12883 * Supported Feature: OCE
12884 *
12885 * Usage: External
12886 *
12887 * </ini>
12888 */
12889#define CFG_OCE_PROBE_REQ_RATE_NAME "oce_enable_probe_req_rate"
12890#define CFG_OCE_PROBE_REQ_RATE_MIN (0)
12891#define CFG_OCE_PROBE_REQ_RATE_MAX (1)
12892#define CFG_OCE_PROBE_REQ_RATE_DEFAULT (0)
12893
12894/*
12895 * <ini>
12896 * oce_enable_probe_resp_rate - Set probe response rate
12897 * @Min: 0
12898 * @Max: 1
12899 * @Default: 0
12900 *
12901 * This ini is used to set probe response rate to 5.5Mbps as per OCE requirement
12902 * in 2.4G band
12903 *
12904 * Related: None
12905 *
12906 * Supported Feature: OCE
12907 *
12908 * Usage: External
12909 *
12910 * </ini>
12911 */
12912#define CFG_OCE_PROBE_RSP_RATE_NAME "oce_enable_probe_resp_rate"
12913#define CFG_OCE_PROBE_RSP_RATE_MIN (0)
12914#define CFG_OCE_PROBE_RSP_RATE_MAX (1)
12915#define CFG_OCE_PROBE_RSP_RATE_DEFAULT (0)
12916
12917/*
12918 * <ini>
12919 * oce_enable_beacon_rate - Set beacon rate
12920 * @Min: 0
12921 * @Max: 1
12922 * @Default: 0
12923 *
12924 * This ini is used to set beacon rate to 5.5Mbps as per OCE requirement in
12925 * 2.4G band
12926 *
12927 * Related: None
12928 *
12929 * Supported Feature: OCE
12930 *
12931 * Usage: External
12932 *
12933 * </ini>
12934 */
12935#define CFG_OCE_BEACON_RATE_NAME "oce_enable_beacon_rate"
12936#define CFG_OCE_BEACON_RATE_MIN (0)
12937#define CFG_OCE_BEACON_RATE_MAX (1)
12938#define CFG_OCE_BEACON_RATE_DEFAULT (0)
12939
12940/*
12941 * <ini>
12942 * oce_enable_probe_req_deferral - Enable/disable probe request deferral
12943 * @Min: 0
12944 * @Max: 1
12945 * @Default: 0
12946 *
12947 * This ini is used to enable/disable probe request deferral as per OCE spec
12948 *
12949 * Related: None
12950 *
12951 * Supported Feature: OCE
12952 *
12953 * Usage: External
12954 *
12955 * </ini>
12956 */
12957#define CFG_ENABLE_PROBE_REQ_DEFERRAL_NAME "oce_enable_probe_req_deferral"
12958#define CFG_ENABLE_PROBE_REQ_DEFERRAL_MIN (0)
12959#define CFG_ENABLE_PROBE_REQ_DEFERRAL_MAX (1)
12960#define CFG_ENABLE_PROBE_REQ_DEFERRAL_DEFAULT (0)
12961
12962/*
12963 * <ini>
12964 * oce_enable_fils_discovery_sap - Enable/disable fils discovery in sap mode
12965 * @Min: 0
12966 * @Max: 1
12967 * @Default: 0
12968 *
12969 * This ini is used to enable/disable fils discovery in sap mode
12970 *
12971 * Related: None
12972 *
12973 * Supported Feature: FILS
12974 *
12975 * Usage: External
12976 *
12977 * </ini>
12978 */
12979#define CFG_ENABLE_FILS_DISCOVERY_SAP_NAME "oce_enable_fils_discovery_sap"
12980#define CFG_ENABLE_FILS_DISCOVERY_SAP_MIN (0)
12981#define CFG_ENABLE_FILS_DISCOVERY_SAP_MAX (1)
12982#define CFG_ENABLE_FILS_DISCOVERY_SAP_DEFAULT (0)
12983
12984/*
12985 * <ini>
12986 * enable_esp_for_roam - Enable/disable esp feature
12987 * @Min: 0
12988 * @Max: 1
12989 * @Default: 0
12990 *
12991 * This ini is used to enable/disable ESP(Estimated service parameters) IE
12992 * parsing and decides whether firmware will include this in its scoring algo.
12993 *
12994 * Related: None
12995 *
12996 * Supported Feature: STA
12997 *
12998 * Usage: External
12999 *
13000 * </ini>
13001 */
13002#define CFG_ENABLE_ESP_FEATURE_NAME "enable_esp_for_roam"
13003#define CFG_ENABLE_ESP_FEATURE_MIN (0)
13004#define CFG_ENABLE_ESP_FEATURE_MAX (1)
13005#define CFG_ENABLE_ESP_FEATURE_DEFAULT (0)
13006
13007/*
Naveen Rawat269b4ed2017-12-07 06:47:32 -080013008 * <ini>
13009 * tx_chain_mask_2g - tx chain mask for 2g
13010 * @Min: 0
13011 * @Max: 3
13012 * @Default: 0
13013 *
13014 * This ini will set tx chain mask for 2g. To use the ini, make sure:
13015 * gSetTxChainmask1x1/gSetRxChainmask1x1 = 0,
13016 * gDualMacFeatureDisable = 1
13017 * gEnable2x2 = 0
13018 *
13019 * tx_chain_mask_2g=0 : don't care
13020 * tx_chain_mask_2g=1 : for 2g tx use chain 0
13021 * tx_chain_mask_2g=2 : for 2g tx use chain 1
13022 * tx_chain_mask_2g=3 : for 2g tx can use either chain
13023 *
13024 * Related: None
13025 *
13026 * Supported Feature: All profiles
13027 *
13028 * Usage: External
13029 *
13030 * </ini>
13031 */
13032#define CFG_TX_CHAIN_MASK_2G_NAME "tx_chain_mask_2g"
13033#define CFG_TX_CHAIN_MASK_2G_MIN (0)
13034#define CFG_TX_CHAIN_MASK_2G_MAX (3)
13035#define CFG_TX_CHAIN_MASK_2G_DEFAULT (0)
13036
13037
13038/*
13039 * <ini>
13040 * tx_chain_mask_5g - tx chain mask for 5g
13041 * @Min: 0
13042 * @Max: 3
13043 * @Default: 0
13044 *
13045 * This ini will set tx chain mask for 5g. To use the ini, make sure:
13046 * gSetTxChainmask1x1/gSetRxChainmask1x1 = 0,
13047 * gDualMacFeatureDisable = 1
13048 * gEnable2x2 = 0
13049 *
13050 * tx_chain_mask_5g=0 : don't care
13051 * tx_chain_mask_5g=1 : for 5g tx use chain 0
13052 * tx_chain_mask_5g=2 : for 5g tx use chain 1
13053 * tx_chain_mask_5g=3 : for 5g tx can use either chain
13054 *
13055 * Related: None
13056 *
13057 * Supported Feature: All profiles
13058 *
13059 * Usage: External
13060 *
13061 * </ini>
13062 */
13063#define CFG_TX_CHAIN_MASK_5G_NAME "tx_chain_mask_5g"
13064#define CFG_TX_CHAIN_MASK_5G_MIN (0)
13065#define CFG_TX_CHAIN_MASK_5G_MAX (3)
13066#define CFG_TX_CHAIN_MASK_5G_DEFAULT (0)
13067
13068
13069/*
13070 * <ini>
13071 * rx_chain_mask_2g - rx chain mask for 2g
13072 * @Min: 0
13073 * @Max: 3
13074 * @Default: 0
13075 *
13076 * This ini will set rx chain mask for 2g. To use the ini, make sure:
13077 * gSetTxChainmask1x1/gSetRxChainmask1x1 = 0,
13078 * gDualMacFeatureDisable = 1
13079 * gEnable2x2 = 0
13080 *
13081 * rx_chain_mask_2g=0 : don't care
13082 * rx_chain_mask_2g=1 : for 2g rx use chain 0
13083 * rx_chain_mask_2g=2 : for 2g rx use chain 1
13084 * rx_chain_mask_2g=3 : for 2g rx can use either chain
13085 *
13086 * Related: None
13087 *
13088 * Supported Feature: All profiles
13089 *
13090 * Usage: External
13091 *
13092 * </ini>
13093 */
13094#define CFG_RX_CHAIN_MASK_2G_NAME "rx_chain_mask_2g"
13095#define CFG_RX_CHAIN_MASK_2G_MIN (0)
13096#define CFG_RX_CHAIN_MASK_2G_MAX (3)
13097#define CFG_RX_CHAIN_MASK_2G_DEFAULT (0)
13098
13099
13100/*
13101 * <ini>
13102 * rx_chain_mask_5g - rx chain mask for 5g
13103 * @Min: 0
13104 * @Max: 3
13105 * @Default: 0
13106 *
13107 * This ini will set rx chain mask for 5g. To use the ini, make sure:
13108 * gSetTxChainmask1x1/gSetRxChainmask1x1 = 0,
13109 * gDualMacFeatureDisable = 1
13110 * gEnable2x2 = 0
13111 *
13112 * rx_chain_mask_5g=0 : don't care
13113 * rx_chain_mask_5g=1 : for 5g rx use chain 0
13114 * rx_chain_mask_5g=2 : for 5g rx use chain 1
13115 * rx_chain_mask_5g=3 : for 5g rx can use either chain
13116 *
13117 * Related: None
13118 *
13119 * Supported Feature: All profiles
13120 *
13121 * Usage: External
13122 *
13123 * </ini>
13124 */
13125#define CFG_RX_CHAIN_MASK_5G_NAME "rx_chain_mask_5g"
13126#define CFG_RX_CHAIN_MASK_5G_MIN (0)
13127#define CFG_RX_CHAIN_MASK_5G_MAX (3)
13128#define CFG_RX_CHAIN_MASK_5G_DEFAULT (0)
13129
13130/*
yeshwanth sriram guntuka41f936c2017-09-01 17:53:49 +053013131 * <ini>
13132 * btm_offload_config - Configure BTM
13133 * @Min: 0x00000000
13134 * @Max: 0xFFFFFFFF
13135 * @Default: 0x00000000
13136 *
13137 * This ini is used to configure BTM
13138 *
13139 * Bit 0: Enable/Disable the BTM offload. Set this to 1 will
13140 * enable and 0 will disable BTM offload.
13141 *
13142 * BIT 2, 1: Action on non matching candidate with cache. If a BTM request
13143 * is received from AP then the candidate AP's may/may-not be present in
13144 * the firmware scan cache . Based on below config firmware will decide
13145 * whether to forward BTM frame to host or consume with firmware and proceed
13146 * with Roaming to candidate AP.
13147 * 00 scan and consume
13148 * 01 no scan and forward to host
13149 * 10, 11 reserved
13150 *
13151 * BIT 5, 4, 3: Roaming handoff decisions on multiple candidates match
13152 * 000 match if exact BSSIDs are found
13153 * 001 match if at least one top priority BSSID only
13154 * 010, 011, 100, 101, 110, 111 reserved
13155 *
Jiachao Wu84bb2ea2018-01-08 16:17:33 +080013156 * BIT 6: Set this to 1 will send BTM query frame and 0 not sent.
13157 *
13158 * BIT 7-31: Reserved
yeshwanth sriram guntuka41f936c2017-09-01 17:53:49 +053013159 *
13160 * Supported Feature: STA
13161 *
13162 * Usage: External
13163 *
13164 * </ini>
13165 */
13166#define CFG_BTM_ENABLE_NAME "btm_offload_config"
13167#define CFG_BTM_ENABLE_MIN (0x00000000)
13168#define CFG_BTM_ENABLE_MAX (0xffffffff)
Vignesh Viswanathan6177c7e2018-07-25 11:14:02 +053013169#define CFG_BTM_ENABLE_DEFAULT (0x00000001)
Jiachao Wu84bb2ea2018-01-08 16:17:33 +080013170
13171/*
13172 * <ini>
13173 * btm_solicited_timeout - timeout value for waiting BTM request
13174 * @Min: 1
13175 * @Max: 10000
13176 * @Default: 100
13177 *
13178 * This ini is used to configure timeout value for waiting BTM request.
13179 * Unit: millionsecond
13180 *
13181 * Supported Feature: STA
13182 *
13183 * Usage: External
13184 *
13185 * </ini>
13186 */
13187#define CFG_BTM_SOLICITED_TIMEOUT "btm_solicited_timeout"
13188#define CFG_BTM_SOLICITED_TIMEOUT_MIN (1)
13189#define CFG_BTM_SOLICITED_TIMEOUT_MAX (10000)
13190#define CFG_BTM_SOLICITED_TIMEOUT_DEFAULT (100)
13191
13192/*
13193 * <ini>
13194 * btm_max_attempt_cnt - Maximum attempt for sending BTM query to ESS
13195 * @Min: 1
13196 * @Max: 0xFFFFFFFF
13197 * @Default: 3
13198 *
13199 * This ini is used to configure maximum attempt for sending BTM query to ESS.
13200 *
13201 * Supported Feature: STA
13202 *
13203 * Usage: External
13204 *
13205 * </ini>
13206 */
13207#define CFG_BTM_MAX_ATTEMPT_CNT "btm_max_attempt_cnt"
13208#define CFG_BTM_MAX_ATTEMPT_CNT_MIN (0x00000001)
13209#define CFG_BTM_MAX_ATTEMPT_CNT_MAX (0xFFFFFFFF)
13210#define CFG_BTM_MAX_ATTEMPT_CNT_DEFAULT (0x00000003)
13211
13212/*
13213 * <ini>
13214 * sticky_time - Stick time after roaming to new AP by BTM
Jiachao Wu4f9820f2018-02-01 19:51:34 +080013215 * @Min: 0
Jiachao Wu84bb2ea2018-01-08 16:17:33 +080013216 * @Max: 0x0000FFFF
13217 * @Default: 300
13218 *
13219 * This ini is used to configure Stick time after roaming to new AP by BTM.
13220 * Unit: seconds
13221 *
13222 * Supported Feature: STA
13223 *
13224 * Usage: External
13225 *
13226 * </ini>
13227 */
13228#define CFG_BTM_STICKY_TIME "btm_sticky_time"
Jiachao Wu4f9820f2018-02-01 19:51:34 +080013229#define CFG_BTM_STICKY_TIME_MIN (0x00000000)
Jiachao Wu84bb2ea2018-01-08 16:17:33 +080013230#define CFG_BTM_STICKY_TIME_MAX (0x0000FFFF)
13231#define CFG_BTM_STICKY_TIME_DEFAULT (300)
yeshwanth sriram guntuka41f936c2017-09-01 17:53:49 +053013232
13233/*
Ashish Kumar Dhanotiyacb14b112018-01-19 19:26:44 +053013234 * <ini>
13235 * gcmp_enabled - ini to enable/disable GCMP
13236 * @Min: 0
13237 * @Max: 1
13238 * @Default: 0
13239 *
13240 * Currently Firmware update the sequence number for each TID with 2^3
13241 * because of security issues. But with this PN mechanism, throughput drop
13242 * is observed. With this ini FW takes the decision to trade off between
13243 * security and throughput
13244 *
13245 * Supported Feature: STA/SAP/P2P
13246 *
13247 * Usage: External
13248 *
13249 * </ini>
Krishna Kumaar Natarajan90bb6f12017-03-03 21:05:52 -080013250 */
Ashish Kumar Dhanotiya9335d812017-06-30 16:57:20 +053013251
Ashish Kumar Dhanotiyacb14b112018-01-19 19:26:44 +053013252#define CFG_ENABLE_GCMP_NAME "gcmp_enabled"
13253#define CFG_ENABLE_GCMP_MIN (0)
13254#define CFG_ENABLE_GCMP_MAX (1)
Padma, Santhosh Kumara5eaeb82018-04-09 18:45:26 +053013255#define CFG_ENABLE_GCMP_DEFAULT (1)
Ashish Kumar Dhanotiyacb14b112018-01-19 19:26:44 +053013256
13257/*
Vignesh Viswanathan694e28e2018-01-18 20:53:57 +053013258 * <ini>
13259 * 11k_offload_enable_bitmask - Bitmask to enable 11k offload to FW
13260 * @Min: 0
13261 * @Max: 1
13262 * @Default: 1
13263 *
13264 * This ini is used to set which of the 11k features is offloaded to FW
13265 * Currently Neighbor Report Request is supported for offload and is enabled
13266 * by default
13267 * B0: Offload 11k neighbor report requests
13268 * B1-B31: Reserved
13269 *
13270 * Related : None
13271 *
13272 * Usage: External
13273 *
13274 * </ini>
13275 */
13276
13277#define CFG_OFFLOAD_11K_ENABLE_BITMASK_NAME "11k_offload_enable_bitmask"
13278#define CFG_OFFLOAD_11K_ENABLE_BITMASK_MIN (0)
13279#define CFG_OFFLOAD_11K_ENABLE_BITMASK_MAX (1)
13280#define CFG_OFFLOAD_11K_ENABLE_BITMASK_DEFAULT (1)
13281
13282#define OFFLOAD_11K_BITMASK_NEIGHBOR_REPORT_REQUEST 0x1
13283/*
13284 * <ini>
13285 * nr_offload_params_bitmask - bitmask to specify which of the
13286 * neighbor report offload params are valid in the ini
13287 * frame
13288 * @Min: 0
13289 * @Max: 63
13290 * @Default: 63
13291 *
13292 * This ini specifies which of the neighbor report offload params are valid
13293 * and should be considered by the FW. The bitmask is as follows
13294 * B0: nr_offload_time_offset
13295 * B1: nr_offload_low_rssi_offset
13296 * B2: nr_offload_bmiss_count_trigger
13297 * B3: nr_offload_per_threshold_offset
13298 * B4: nr_offload_cache_timeout
13299 * B5: nr_offload_max_req_cap
13300 * B6-B7: Reserved
13301 *
13302 * Related : 11k_offload_enable_bitmask
13303 *
13304 * Usage: External
13305 *
13306 * </ini>
13307 */
13308
13309#define CFG_OFFLOAD_NEIGHBOR_REPORT_PARAMS_BITMASK_NAME \
13310 "nr_offload_params_bitmask"
13311#define CFG_OFFLOAD_NEIGHBOR_REPORT_PARAMS_BITMASK_MIN (0)
13312#define CFG_OFFLOAD_NEIGHBOR_REPORT_PARAMS_BITMASK_MAX (63)
13313#define CFG_OFFLOAD_NEIGHBOR_REPORT_PARAMS_BITMASK_DEFAULT (63)
13314
13315/*
13316 * <ini>
13317 * nr_offload_time_offset - time interval in seconds after the
13318 * neighbor report offload command to send the first neighbor report request
13319 * frame
Vignesh Viswanathan0fcb4d32018-02-13 14:29:46 +053013320 * @Min: 0
Vignesh Viswanathan694e28e2018-01-18 20:53:57 +053013321 * @Max: 3600
13322 * @Default: 30
13323 *
13324 * Related : nr_offload_params_bitmask
13325 *
13326 * Usage: External
13327 *
13328 * </ini>
13329 */
13330#define CFG_OFFLOAD_NEIGHBOR_REPORT_TIME_OFFSET_NAME \
13331 "nr_offload_time_offset"
13332#define CFG_OFFLOAD_NEIGHBOR_REPORT_TIME_OFFSET_MIN (0)
13333#define CFG_OFFLOAD_NEIGHBOR_REPORT_TIME_OFFSET_MAX (3600)
13334#define CFG_OFFLOAD_NEIGHBOR_REPORT_TIME_OFFSET_DEFAULT (30)
13335
13336/*
13337 * <ini>
13338 * nr_offload_low_rssi_offset - offset from the roam RSSI threshold
13339 * to trigger the neighbor report request frame (in dBm)
13340 * @Min: 4
13341 * @Max: 10
13342 * @Default: 4
13343 *
13344 * Related : nr_offload_params_bitmask
13345 *
13346 * Usage: External
13347 *
13348 * </ini>
13349 */
13350#define CFG_OFFLOAD_NEIGHBOR_REPORT_LOW_RSSI_OFFSET_NAME \
13351 "nr_offload_low_rssi_offset"
13352#define CFG_OFFLOAD_NEIGHBOR_REPORT_LOW_RSSI_OFFSET_MIN (4)
13353#define CFG_OFFLOAD_NEIGHBOR_REPORT_LOW_RSSI_OFFSET_MAX (10)
13354#define CFG_OFFLOAD_NEIGHBOR_REPORT_LOW_RSSI_OFFSET_DEFAULT (4)
13355
13356/*
13357 * <ini>
13358 * nr_offload_bmiss_count_trigger - Number of beacon miss events to
13359 * trigger a neighbor report request frame
13360 * @Min: 1
13361 * @Max: 5
13362 * @Default: 1
13363 *
13364 * Related : nr_offload_params_bitmask
13365 *
13366 * Usage: External
13367 *
13368 * </ini>
13369 */
13370#define CFG_OFFLOAD_NEIGHBOR_REPORT_BMISS_COUNT_TRIGGER_NAME \
13371 "nr_offload_bmiss_count_trigger"
13372#define CFG_OFFLOAD_NEIGHBOR_REPORT_BMISS_COUNT_TRIGGER_MIN (1)
13373#define CFG_OFFLOAD_NEIGHBOR_REPORT_BMISS_COUNT_TRIGGER_MAX (5)
13374#define CFG_OFFLOAD_NEIGHBOR_REPORT_BMISS_COUNT_TRIGGER_DEFAULT (1)
13375
13376/*
13377 * <ini>
13378 * nr_offload_per_threshold_offset - offset from PER threshold to
13379 * trigger a neighbor report request frame (in %)
13380 * @Min: 5
13381 * @Max: 20
13382 * @Default: 5
13383 *
13384 * This ini is used to set the neighbor report offload parameter:
13385 *
13386 * Related : nr_offload_params_bitmask
13387 *
13388 * Usage: External
13389 *
13390 * </ini>
13391 */
13392#define CFG_OFFLOAD_NEIGHBOR_REPORT_PER_THRESHOLD_OFFSET_NAME \
13393 "nr_offload_per_threshold_offset"
13394#define CFG_OFFLOAD_NEIGHBOR_REPORT_PER_THRESHOLD_OFFSET_MIN (5)
13395#define CFG_OFFLOAD_NEIGHBOR_REPORT_PER_THRESHOLD_OFFSET_MAX (20)
13396#define CFG_OFFLOAD_NEIGHBOR_REPORT_PER_THRESHOLD_OFFSET_DEFAULT (5)
13397
13398/*
13399 * <ini>
13400 * nr_offload_cache_timeout - time in seconds after which the
13401 * neighbor report cache is marked as timed out and any of the triggers would
13402 * cause a neighbor report request frame to be sent.
Vignesh Viswanathan0fcb4d32018-02-13 14:29:46 +053013403 * @Min: 5
Vignesh Viswanathan694e28e2018-01-18 20:53:57 +053013404 * @Max: 86400
13405 * @Default: 1200
13406 *
13407 * Related : nr_offload_params_bitmask
13408 *
13409 * Usage: External
13410 *
13411 * </ini>
13412 */
13413#define CFG_OFFLOAD_NEIGHBOR_REPORT_CACHE_TIMEOUT_NAME \
13414 "nr_offload_cache_timeout"
Vignesh Viswanathan0fcb4d32018-02-13 14:29:46 +053013415#define CFG_OFFLOAD_NEIGHBOR_REPORT_CACHE_TIMEOUT_MIN (5)
Vignesh Viswanathan694e28e2018-01-18 20:53:57 +053013416#define CFG_OFFLOAD_NEIGHBOR_REPORT_CACHE_TIMEOUT_MAX (86400)
13417#define CFG_OFFLOAD_NEIGHBOR_REPORT_CACHE_TIMEOUT_DEFAULT (1200)
13418
13419/*
13420 * <ini>
13421 * nr_offload_max_req_cap - Max number of neighbor
13422 * report requests that can be sent to a connected peer in the current session.
13423 * This counter is reset once a successful roam happens or at cache timeout
13424 * @Min: 3
Vignesh Viswanathan0fcb4d32018-02-13 14:29:46 +053013425 * @Max: 300
Vignesh Viswanathan694e28e2018-01-18 20:53:57 +053013426 * @Default: 3
13427 *
13428 * Related : nr_offload_params_bitmask
13429 *
13430 * Usage: External
13431 *
13432 * </ini>
13433 */
13434#define CFG_OFFLOAD_NEIGHBOR_REPORT_MAX_REQ_CAP_NAME \
13435 "nr_offload_max_req_cap"
13436#define CFG_OFFLOAD_NEIGHBOR_REPORT_MAX_REQ_CAP_MIN (3)
13437#define CFG_OFFLOAD_NEIGHBOR_REPORT_MAX_REQ_CAP_MAX (300)
13438#define CFG_OFFLOAD_NEIGHBOR_REPORT_MAX_REQ_CAP_DEFAULT (3)
13439
13440/*
Surabhi Vishnoi7f085d22018-01-30 12:11:14 +053013441 * <ini>
13442 * wmi_wq_watchdog - Sets timeout period for wmi watchdog bite
13443 * @Min: 0
13444 * @Max: 30
13445 * @Default: 20
13446 *
13447 * This ini is used to set timeout period for wmi watchdog bite. If it is
13448 * 0 then wmi watchdog bite is disabled.
13449 *
13450 * Related: None
13451 *
13452 * Supported Feature: STA
13453 *
13454 * Usage: External
13455 *
13456 * </ini>
13457 */
13458#define CFG_WMI_WQ_WATCHDOG "wmi_wq_watchdog"
13459#define CFG_WMI_WQ_WATCHDOG_MIN (0)
13460#define CFG_WMI_WQ_WATCHDOG_MAX (30) /* 30s */
13461#define CFG_WMI_WQ_WATCHDOG_DEFAULT (20) /* 20s */
Ashish Kumar Dhanotiya191d1642018-02-08 17:43:09 +053013462
13463/*
13464 * <ini>
13465 * gEnableDTIMSelectionDiversity - Enable/Disable chain
13466 * selection optimization for one chain dtim
13467 * @Min: 0
13468 * @Max: 30
13469 * @Default: 5
13470 *
13471 * Usage: External
13472 *
13473 * </ini>
13474 */
13475#define CFG_DTIM_SELECTION_DIVERSITY_NAME "gEnableDTIMSelectionDiversity"
13476#define CFG_DTIM_SELECTION_DIVERSITY_MIN (0)
13477#define CFG_DTIM_SELECTION_DIVERSITY_MAX (30)
13478#define CFG_DTIM_SELECTION_DIVERSITY_DEFAULT (5)
13479
Surabhi Vishnoi7f085d22018-01-30 12:11:14 +053013480/*
Yeshwanth Sriram Guntukadb7995d2018-01-22 16:46:59 +053013481 * <ini>
13482 * channel_select_logic_conc - Set channel selection logic
13483 * for different concurrency combinations to DBS or inter band
13484 * MCC. Default is DBS for STA+STA and STA+P2P.
13485 * @Min: 0x00000000
13486 * @Max: 0xFFFFFFFF
13487 * @Default: 0x00000000
13488 *
13489 * 0 - inter-band MCC
13490 * 1 - DBS
13491 *
13492 * BIT 0: STA+STA
13493 * BIT 1: STA+P2P
13494 * BIT 2-31: Reserved
13495 *
13496 * Supported Feature: STA+STA, STA+P2P
13497 *
13498 * Usage: External
13499 *
13500 * </ini>
13501 */
13502#define CFG_CHANNEL_SELECT_LOGIC_CONC_NAME "channel_select_logic_conc"
13503#define CFG_CHANNEL_SELECT_LOGIC_CONC_MIN (0x00000000)
13504#define CFG_CHANNEL_SELECT_LOGIC_CONC_MAX (0xFFFFFFFF)
13505#define CFG_CHANNEL_SELECT_LOGIC_CONC_DEFAULT (0x00000003)
13506
13507/*
Ashish Kumar Dhanotiya48dac7d2018-03-28 14:59:50 +053013508 * <ini>
13509 * gTxSchDelay - Enable/Disable Tx sch delay
13510 * @Min: 0
Ashish Kumar Dhanotiya04f09dd2018-04-02 16:25:16 +053013511 * @Max: 5
Ashish Kumar Dhanotiya214e1422018-04-19 12:44:43 +053013512 * @Default: 0
Ashish Kumar Dhanotiya48dac7d2018-03-28 14:59:50 +053013513 *
13514 * Usage: Internal/External
13515 *
13516 * </ini>
13517 */
13518
13519#define CFG_TX_SCH_DELAY_NAME "gTxSchDelay"
13520#define CFG_TX_SCH_DELAY_MIN (0)
Ashish Kumar Dhanotiya04f09dd2018-04-02 16:25:16 +053013521#define CFG_TX_SCH_DELAY_MAX (5)
Ashish Kumar Dhanotiya214e1422018-04-19 12:44:43 +053013522#define CFG_TX_SCH_DELAY_DEFAULT (0)
Ashish Kumar Dhanotiya48dac7d2018-03-28 14:59:50 +053013523
13524/*
Rajeev Kumar Sirasanagandla4725ae42018-05-24 22:33:34 +053013525 * Start of action oui inis
13526 *
13527 * To enable action oui feature, set gEnableActionOUI
13528 *
13529 * Each action oui is expected in the following format:
13530 * <Extension 1> <Extension 2> ..... <Extension 10> (maximum 10)
13531 *
13532 * whereas, each Extension is separated by space and have the following format:
13533 * <Token1> <Token2> <Token3> <Token4> <Token5> <Token6> <Token7> <Token8>
13534 * where each Token is a string of hexa-decimal digits and
13535 * following are the details about each token
13536 *
13537 * Token1 = OUI
13538 * Token2 = Data_Length
13539 * Token3 = Data
13540 * Token4 = Data_Mask
13541 * Token5 = Info_Presence_Bit
13542 * Token6 = MAC_Address
13543 * Token7 = Mac_Address Mask
13544 * Token8 = Capability
13545 *
13546 * <OUI> is mandatory and it can be either 3 or 5 bytes means 6 or 10
13547 * hexa-decimal characters
13548 *
13549 * <Data_Length> is mandatory field and should give length of
13550 * the <Data> if present else zero
13551 *
13552 * Presence of <Data> is controlled by <Data_Length>, if <Data_Length> is 0,
13553 * then <Data> is not expected else Data of the size Data Length bytes are
13554 * expected which means the length of Data string is 2 * Data Length,
13555 * since every byte constitutes two hexa-decimal characters.
13556 *
13557 * <Data_Mask> is mandatory if <Data> is present and length of the
13558 * Data mask string depends on the <Data Length>
13559 * If <Data Length> is 06, then length of Data Mask string is
13560 * 2 characters (represents 1 byte)
13561 * data_mask_length = ((Data_Length - (Data_Length % 8)) / 8) +
13562 * ((Data_Length % 8) ? 1 : 0)
13563 * and <Data_Mask> has to be constructed from left to right.
13564 *
13565 * Presence of <Mac_Address> and <Capability> is
13566 * controlled by <Info_Presence_Bit> which is mandatory
13567 * <Info_Presence_Bit> will give the information for
13568 * OUI – bit 0 (set/reset don't effect the behaviour,
13569 * always enabled in the code)
13570 * Mac Address present – bit 1
13571 * NSS – bit 2
13572 * HT check – bit 3
13573 * VHT check – bit 4
13574 * Band info – bit 5
13575 * reserved – bit 6 (should always be zero)
13576 * reserved – bit 7 (should always be zero)
13577 * and should be constructed from right to left (b7b6b5b4b3b2b1b0)
13578 *
13579 * <Mac_Address_Mask> for <Mac_Address> should be constructed from left to right
13580 *
13581 * <Capability> is 1 byte long and it contains the below info
13582 * NSS – 4 bits starting from LSB (b0 – b3)
13583 * HT enabled – bit 4
13584 * VHT enabled – bit 5
13585 * 2G band – bit 6
13586 * 5G band – bit 7
13587 * and should be constructed from right to left (b7b6b5b4b3b2b1b0)
13588 * <Capability> is present if atleast one of the bit is set
13589 * from b2 - b6 in <Info_Presence_Bit>
13590 *
13591 * Example 1:
13592 *
13593 * OUI is 00-10-18, data length is 05 (hex form), data is 02-11-04-5C-DE and
13594 * need to consider first 3 bytes and last byte of data for comparision
13595 * mac-addr EE-1A-59-FE-FD-AF is present and first 3 bytes and last byte of
13596 * mac address should be considered for comparision
13597 * capability is not present
13598 * then action OUI for gActionOUIITOExtension is as follows:
13599 *
13600 * gActionOUIITOExtension=001018 05 0211045CDE E8 03 EE1A59FEFDAF E4
13601 *
13602 * data mask calculation in above example:
13603 * Data[0] = 02 ---- d0 = 1
13604 * Data[1] = 11 ---- d1 = 1
13605 * Data[2] = 04 ---- d2 = 1
13606 * Data[3] = 5C ---- d3 = 0
13607 * Data[4] = DE ---- d4 = 1
13608 * data_mask = d0d1d2d3d4 + append with zeros to complete 8-bit = 11101000 = E8
13609 *
13610 * mac mask calculation in above example:
13611 * mac_addr[0] = EE ---- m0 = 1
13612 * mac_addr[1] = 1A ---- m1 = 1
13613 * mac_addr[2] = 59 ---- m2 = 1
13614 * mac_addr[3] = FE ---- m3 = 0
13615 * mac_addr[4] = FD ---- m4 = 0
13616 * mac_addr[5] = AF ---- m5 = 1
13617 * mac_mask = m0m1m2m3m4m5 + append with zeros to complete 8-bit = 11100100 = E4
13618 *
13619 * Example 2:
13620 *
13621 * OUI is 00-10-18, data length is 00 and no Mac Address and capability
13622 *
13623 * gActionOUIITOExtension=001018 00 01
13624 *
13625 */
13626
13627/*
13628 * <ini>
13629 * gEnableActionOUI - Enable/Disable action oui feature
13630 * @Min: 0 (disable)
13631 * @Max: 1 (enable)
13632 * @Default: 1 (enable)
13633 *
13634 * This ini is used to enable the action oui feature to control
13635 * mode of connection, connected AP's in-activity time, Tx rate etc.,
13636 *
13637 * Related: If gEnableActionOUI is set, then at least one of the following inis
13638 * must be set with the proper action oui extensions:
13639 * gActionOUIConnect1x1, gActionOUIITOExtension, gActionOUICCKM1X1
13640 *
13641 * Supported Feature: action ouis
13642 *
13643 * Usage: External
13644 *
13645 * </ini>
13646 */
13647#define CFG_ENABLE_ACTION_OUI "gEnableActionOUI"
13648#define CFG_ENABLE_ACTION_OUI_MIN (0)
13649#define CFG_ENABLE_ACTION_OUI_MAX (1)
13650#define CFG_ENABLE_ACTION_OUI_DEFAULT (1)
13651
13652/*
13653 * <ini>
13654 * gActionOUIConnect1x1 - Used to specify action OUIs for 1x1 connection
13655 * @Default: 000C43 00 25 42 001018 06 02FFF02C0000 BC 25 42 001018 06 02FF040C0000 BC 25 42 00037F 00 35 6C
13656 * Note: User should strictly add new action OUIs at the end of this
13657 * default value.
13658 *
13659 * Default OUIs: (All values in Hex)
13660 * OUI 1 : 000C43
13661 * OUI data Len : 00
13662 * Info Mask : 25 - Check for NSS and Band
13663 * Capabilities: 42 - NSS == 2 && Band == 2G
13664 * OUI 2 : 001018
13665 * OUI data Len : 06
13666 * OUI Data : 02FFF02C0000
13667 * OUI data Mask: BC - 10111100
13668 * Info Mask : 25 - Check for NSS and Band
13669 * Capabilities: 42 - NSS == 2 && Band == 2G
13670 * OUI 3 : 001018
13671 * OUI data Len : 06
13672 * OUI Data : 02FF040C0000
13673 * OUI data Mask: BC - 10111100
13674 * Info Mask : 25 - Check for NSS and Band
13675 * Capabilities: 42 - NSS == 2 && Band == 2G
13676 * OUI 4 : 00037F
13677 * OUI data Len : 00
13678 * Info Mask : 35 - Check for NSS, VHT Caps and Band
13679 * Capabilities: 6C - (NSS == 3 or 4) && VHT Caps Preset && Band == 2G
13680 *
13681 * This ini is used to specify the AP OUIs with which only 1x1 connection
13682 * is allowed.
13683 *
13684 * Related: None
13685 *
13686 * Supported Feature: Action OUIs
13687 *
13688 * Usage: External
13689 *
13690 * </ini>
13691 */
13692#define CFG_ACTION_OUI_CONNECT_1X1_NAME "gActionOUIConnect1x1"
13693#define CFG_ACTION_OUI_CONNECT_1X1_DEFAULT "000C43 00 25 42 001018 06 02FFF02C0000 BC 25 42 001018 06 02FF040C0000 BC 25 42 00037F 00 35 6C"
13694
13695/*
13696 * <ini>
13697 * gActionOUIITOExtension - Used to extend in-activity time for specified APs
13698 * @Default: 00037F 06 01010000FF7F FC 01 000AEB 02 0100 C0 01 000B86 03 010408 E0 01
13699 * Note: User should strictly add new action OUIs at the end of this
13700 * default value.
13701 *
13702 * Default OUIs: (All values in Hex)
13703 * OUI 1: 00037F
13704 * OUI data Len: 06
13705 * OUI Data: 01010000FF7F
13706 * OUI data Mask: FC - 11111100
13707 * Info Mask : 01 - only OUI present in Info mask
13708 *
13709 * OUI 2: 000AEB
13710 * OUI data Len: 02
13711 * OUI Data: 0100
13712 * OUI data Mask: C0 - 11000000
13713 * Info Mask : 01 - only OUI present in Info mask
13714 *
13715 * OUI 3: 000B86
13716 * OUI data Len: 03
13717 * OUI Data: 010408
13718 * OUI data Mask: E0 - 11100000
13719 * Info Mask : 01 - only OUI present in Info mask
13720 *
13721 * This ini is used to specify AP OUIs using which station's in-activity time
13722 * can be extended with the respective APs
13723 *
13724 * Related: None
13725 *
13726 * Supported Feature: Action OUIs
13727 *
13728 * Usage: External
13729 *
13730 * </ini>
13731 */
13732#define CFG_ACTION_OUI_ITO_EXTENSION_NAME "gActionOUIITOExtension"
13733#define CFG_ACTION_OUI_ITO_EXTENSION_DEFAULT "00037F 06 01010000FF7F FC 01 000AEB 02 0100 C0 01 000B86 03 010408 E0 01"
13734
13735/*
13736 * <ini>
13737 * gActionOUICCKM1X1 - Used to specify action OUIs to control station's TX rates
13738 *
13739 * This ini is used to specify AP OUIs for which station's CCKM TX rates
13740 * should be 1x1 only.
13741 *
13742 * Related: None
13743 *
13744 * Supported Feature: Action OUIs
13745 *
13746 * Usage: External
13747 *
13748 * </ini>
13749 */
13750#define CFG_ACTION_OUI_CCKM_1X1_NAME "gActionOUICCKM1X1"
13751#define CFG_ACTION_OUI_CCKM_1X1_DEFAULT ""
13752
13753/*
13754 * <ini>
13755 * gActionOUIITOAlternate - Used to specify action OUIs to have alternate ITO in
13756 * weak RSSI state
13757 *
13758 * This ini is used to specify AP OUIs for which the stations will have
13759 * alternate ITOs for the case when the RSSI is weak.
13760 *
13761 * Related: None
13762 *
13763 * Supported Feature: Action OUIs
13764 *
13765 * Usage: External
13766 *
13767 * </ini>
13768 */
13769 #define CFG_ACTION_OUI_ITO_ALTERNATE_NAME "gActionOUIITOAlternate"
13770 #define CFG_ACTION_OUI_ITO_ALTERNATE_DEFAULT "001018 06 0202001c0000 FC 01"
13771
13772/*
13773 * <ini>
13774 * gActionOUISwitchTo11nMode - Used to specify action OUIs for switching to 11n
13775 *
13776 * This ini is used to specify which AP for which the connection has to be
13777 * made in 2x2 mode with HT capabilities only and not VHT.
13778 *
Vignesh Viswanathancbbc3582018-07-11 11:11:04 +053013779 * Default OUIs: (All values in Hex)
13780 * OUI 1 : 00904C
13781 * OUI data Len : 03
13782 * OUI Data : 0418BF
13783 * OUI data Mask: E0 - 11100000
13784 * Info Mask : 21 - Check for Band
13785 * Capabilities: 40 - Band == 2G
13786 *
Rajeev Kumar Sirasanagandla4725ae42018-05-24 22:33:34 +053013787 * Related: None
13788 *
13789 * Supported Feature: Action OUIs
13790 *
13791 * Usage: External
13792 *
13793 * </ini>
13794 */
13795#define CFG_ACTION_OUI_SWITCH_TO_11N_MODE_NAME "gActionOUISwitchTo11nMode"
Vignesh Viswanathancbbc3582018-07-11 11:11:04 +053013796#define CFG_ACTION_OUI_SWITCH_TO_11N_MODE_DEFAULT "00904C 03 0418BF E0 21 40"
Rajeev Kumar Sirasanagandla4725ae42018-05-24 22:33:34 +053013797
13798 /* End of action oui inis */
13799
13800
13801/*
Rajeev Kumar15b40a22018-04-12 11:45:24 -070013802 * <ini>
13803 * gEnableUnitTestFramework - Enable/Disable unit test framework
13804 * @Min: 0
13805 * @Max: 1
13806 * @Default: 0
13807 *
13808 * Usage: Internal (only for dev and test team)
13809 *
13810 * </ini>
13811 */
13812#define CFG_ENABLE_UNIT_TEST_FRAMEWORK_NAME "gEnableUnitTestFramework"
13813#define CFG_ENABLE_UNIT_TEST_FRAMEWORK_MIN (0)
13814#define CFG_ENABLE_UNIT_TEST_FRAMEWORK_MAX (1)
13815#define CFG_ENABLE_UINT_TEST_FRAMEWORK_DEFAULT (0)
13816
13817/*
Naveen Rawat2b430892018-03-13 13:58:18 -070013818 * <ini>
13819 * enable_rtt_mac_randomization - Enable/Disable rtt mac randomization
13820 * @Min: 0
13821 * @Max: 1
13822 * @Default: 0
13823 *
13824 * Usage: External
13825 *
13826 * </ini>
13827 */
13828#define CFG_ENABLE_RTT_MAC_RANDOMIZATION_NAME "enable_rtt_mac_randomization"
13829#define CFG_ENABLE_RTT_MAC_RANDOMIZATION_MIN (0)
13830#define CFG_ENABLE_RTT_MAC_RANDOMIZATION_MAX (1)
13831#define CFG_ENABLE_RTT_MAC_RANDOMIZATION_DEFAULT (0)
13832
13833/*
Ashish Kumar Dhanotiya959b38c2018-04-06 21:07:57 +053013834 * <ini>
13835 * gEnableSecondaryRate - Enable/Disable Secondary Retry Rate feature subset
13836 *
13837 * @Min: 0x0
13838 * @Max: 0x3F
Ashish Kumar Dhanotiyacc1d6fd2018-05-02 15:49:42 +053013839 * @Default: 0x17
Ashish Kumar Dhanotiya959b38c2018-04-06 21:07:57 +053013840 *
13841 * It is a 32 bit value such that the various bits represent as below -
13842 * Bit-0 : is Enable/Disable Control for "PPDU Secondary Retry Support"
13843 * Bit-1 : is Enable/Disable Control for "RTS Black/White-listing Support"
13844 * Bit-2 : is Enable/Disable Control for "Higher MCS retry restriction
13845 * on XRETRY failures"
13846 * Bit 3-5 : is "Xretry threshold" to use
13847 * Bit 3~31 : reserved for future use.
13848 *
13849 * Usage: External
13850 *
13851 * </ini>
13852 */
13853#define CFG_ENABLE_SECONDARY_RATE_NAME "gEnableSecondaryRate"
13854#define CFG_ENABLE_SECONDARY_RATE_MIN (0)
13855#define CFG_ENABLE_SECONDARY_RATE_MAX (0x3F)
Ashish Kumar Dhanotiyacc1d6fd2018-05-02 15:49:42 +053013856#define CFG_ENABLE_SECONDARY_RATE_DEFAULT (0x17)
Ashish Kumar Dhanotiya959b38c2018-04-06 21:07:57 +053013857
13858/*
Rachit Kankane0106e382018-05-16 18:59:28 +053013859 * <ini>
13860 * gNumVdevs - max number of VDEVs supported
13861 *
13862 * @Min: 0x1
13863 * @Max: 0x4
13864 * @Default: CFG_TGT_NUM_VDEV
13865 *
13866 * Usage: External
13867 *
13868 * </ini>
13869 */
13870#define CFG_NUM_VDEV_ENABLE_NAME "gNumVdevs"
13871#define CFG_NUM_VDEV_ENABLE_MIN (0x1)
13872#define CFG_NUM_VDEV_ENABLE_MAX (0x4)
13873#define CFG_NUM_VDEV_ENABLE_DEFAULT (CFG_TGT_NUM_VDEV)
13874
Dundi Ravitejaeab3b8d2018-07-17 18:10:41 +053013875#ifdef MWS_COEX
13876/*
13877 * <ini>
13878 * gMwsCoex4gQuickTdm - Bitmap to control MWS-COEX 4G quick FTDM policy
13879 * @Min: 0x00000000
13880 * @Max: 0xFFFFFFFF
13881 * @Default: 0x00000000
13882 *
13883 * It is a 32 bit value such that the various bits represent as below:
13884 * Bit-0 : 0 - Don't allow quick FTDM policy (Default)
13885 * 1 - Allow quick FTDM policy
13886 * Bit 1-31 : reserved for future use
13887 *
13888 * It is used to enable or disable MWS-COEX 4G (LTE) Quick FTDM
13889 *
13890 * Usage: Internal
13891 *
13892 * </ini>
13893 */
13894
13895#define CFG_MWS_COEX_4G_QUICK_FTDM_NAME "gMwsCoex4gQuickTdm"
13896#define CFG_MWS_COEX_4G_QUICK_FTDM_MIN (0x00000000)
13897#define CFG_MWS_COEX_4G_QUICK_FTDM_MAX (0xFFFFFFFF)
13898#define CFG_MWS_COEX_4G_QUICK_FTDM_DEFAULT (0x00000000)
13899
13900/*
13901 * <ini>
13902 * gMwsCoex5gnrPwrLimit - Bitmap to set MWS-COEX 5G-NR power limit
13903 * @Min: 0x00000000
13904 * @Max: 0xFFFFFFFF
13905 * @Default: 0x00000000
13906 *
13907 * It is a 32 bit value such that the various bits represent as below:
13908 * Bit-0 : Don't apply user specific power limit,
13909 * use internal power limit (Default)
13910 * Bit 1-2 : Invalid value (Ignored)
13911 * Bit 3-21 : Apply the specified value as the external power limit, in dBm
13912 * Bit 22-31 : Invalid value (Ignored)
13913 *
13914 * It is used to set MWS-COEX 5G-NR power limit
13915 *
13916 * Usage: Internal
13917 *
13918 * </ini>
13919 */
13920
13921#define CFG_MWS_COEX_5G_NR_PWR_LIMIT_NAME "gMwsCoex5gnrPwrLimit"
13922#define CFG_MWS_COEX_5G_NR_PWR_LIMIT_MIN (0x00000000)
13923#define CFG_MWS_COEX_5G_NR_PWR_LIMIT_MAX (0xFFFFFFFF)
13924#define CFG_MWS_COEX_5G_NR_PWR_LIMIT_DEFAULT (0x00000000)
13925#endif
13926
Rachit Kankane0106e382018-05-16 18:59:28 +053013927/*
Chaoli Zhou75b062f2018-06-11 12:36:54 +080013928 * <ini>
13929 * gEnableChangeChannelBandWidth - Enable/Disable change
13930 * channel&bandwidth in the mission mode
13931 * @Min: 0
13932 * @Max: 1
13933 * @Default: 0
13934 *
13935 * 0 - not allow change channel&bandwidth by setMonChan
13936 * 1 - allow change channel&bandwidth by setMonChan
13937 *
13938 * Related: None
13939 *
13940 * Supported Feature: STA
13941 *
13942 * Usage: External
13943 *
13944 * </ini>
13945 */
13946#define CFG_CHANGE_CHANNEL_BANDWIDTH_NAME "gEnableChangeChannelBandWidth"
13947#define CFG_CHANGE_CHANNEL_BANDWIDTH_MIN (0)
13948#define CFG_CHANGE_CHANNEL_BANDWIDTH_MAX (1)
13949#define CFG_CHANGE_CHANNEL_BANDWIDTH_DEFAULT (0)
13950
13951/*
Ashish Kumar Dhanotiyacb14b112018-01-19 19:26:44 +053013952 * Type declarations
13953 */
Naveen Rawat2b430892018-03-13 13:58:18 -070013954
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080013955struct hdd_config {
13956 /* Bitmap to track what is explicitly configured */
13957 DECLARE_BITMAP(bExplicitCfg, MAX_CFG_INI_ITEMS);
13958
13959 /* Config parameters */
Alok Kumarb64650c2018-03-23 17:05:11 +053013960#ifdef WLAN_NUD_TRACKING
13961 bool enable_nud_tracking;
13962#endif
Ashish Kumar Dhanotiya470af292017-05-31 20:46:00 +053013963 bool enable_connected_scan;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080013964 uint32_t RTSThreshold;
13965 uint32_t FragmentationThreshold;
13966 uint8_t OperatingChannel;
13967 bool ShortSlotTimeEnabled;
13968 bool Is11dSupportEnabled;
13969 bool Is11hSupportEnabled;
13970 bool fSupplicantCountryCodeHasPriority;
13971 uint32_t HeartbeatThresh24;
13972 char PowerUsageControl[4];
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080013973 bool fIsImpsEnabled;
13974 bool is_ps_enabled;
Kiran Kumar Lokere0ac679c2016-11-17 17:43:36 -080013975 uint32_t auto_bmps_timer_val;
Zhu Jianmin04392c42017-05-12 16:34:53 +080013976 uint32_t icmp_disable_ps_val;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080013977 uint32_t nBmpsMaxListenInterval;
13978 uint32_t nBmpsMinListenInterval;
Srinivas Girigowda2fb677c2017-03-25 15:35:34 -070013979 enum hdd_dot11_mode dot11Mode;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080013980 uint32_t nChannelBondingMode24GHz;
Abhishek Singhb59f8d42017-07-31 14:42:47 +053013981 bool override_ht20_40_24g;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080013982 uint32_t nChannelBondingMode5GHz;
13983 uint32_t MaxRxAmpduFactor;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080013984 uint32_t ShortGI20MhzEnable;
13985 uint32_t ScanResultAgeCount;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080013986 uint8_t nRssiCatGap;
13987 bool fIsShortPreamble;
Anurag Chouhan6d760662016-02-20 16:05:43 +053013988 struct qdf_mac_addr IbssBssid;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080013989 uint32_t AdHocChannel5G;
13990 uint32_t AdHocChannel24G;
13991 uint8_t intfAddrMask;
Anurag Chouhan6d760662016-02-20 16:05:43 +053013992 struct qdf_mac_addr intfMacAddr[QDF_MAX_CONCURRENCY_PERSONA];
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080013993
13994 bool apUapsdEnabled;
13995 bool apRandomBssidEnabled;
13996 bool apProtEnabled;
13997 uint16_t apProtection;
13998 bool apOBSSProtEnabled;
13999 bool apDisableIntraBssFwd;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080014000 uint8_t enableLTECoex;
14001 uint32_t apKeepAlivePeriod;
Dustin Brownb6b0f182017-03-08 13:08:27 -080014002 enum station_keepalive_method sta_keepalive_method;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080014003 uint32_t apLinkMonitorPeriod;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080014004 uint32_t nBeaconInterval;
14005 uint8_t nTxPowerCap; /* In dBm */
Padma, Santhosh Kumar29df3622016-08-16 19:15:16 +053014006 bool allow_tpc_from_ap;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080014007 uint8_t disablePacketFilter;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080014008 bool fRrmEnable;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080014009 uint16_t nRrmRandnIntvl;
Krishna Kumaar Natarajanf599c6e2015-11-03 11:44:03 -080014010 /* length includes separator */
14011 char rm_capability[3 * DOT11F_IE_RRMENABLEDCAP_MAX_LEN];
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080014012
Nachiket Kukade8983cf62017-10-12 18:14:48 +053014013 /* Bitmap for operating voltage corner mode */
14014 uint32_t vc_mode_cfg_bitmap;
14015
Dundi Ravitejaeab3b8d2018-07-17 18:10:41 +053014016#ifdef MWS_COEX
14017 /* Bitmap for MWS-COEX 4G Quick FTDM */
14018 uint32_t mws_coex_4g_quick_tdm;
14019
14020 /* Bitmap for MWS-COEX 5G-NR power limit */
14021 uint32_t mws_coex_5g_nr_pwr_limit;
14022#endif
14023
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080014024 uint16_t nNeighborScanPeriod;
Sridhar Selvaraj1b2330c2017-07-21 15:16:42 +053014025 uint16_t neighbor_scan_min_period;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080014026 uint8_t nNeighborLookupRssiThreshold;
14027 uint8_t delay_before_vdev_stop;
14028 uint8_t nOpportunisticThresholdDiff;
14029 uint8_t nRoamRescanRssiDiff;
14030 uint8_t neighborScanChanList[WNI_CFG_VALID_CHANNEL_LIST_LEN];
14031 uint16_t nNeighborScanMinChanTime;
14032 uint16_t nNeighborScanMaxChanTime;
14033 uint16_t nMaxNeighborReqTries;
14034 uint16_t nNeighborResultsRefreshPeriod;
14035 uint16_t nEmptyScanRefreshPeriod;
14036 uint8_t nRoamBmissFirstBcnt;
14037 uint8_t nRoamBmissFinalBcnt;
14038 uint8_t nRoamBeaconRssiWeight;
14039 uint32_t nhi_rssi_scan_max_count;
14040 uint32_t nhi_rssi_scan_rssi_delta;
14041 uint32_t nhi_rssi_scan_delay;
14042 int32_t nhi_rssi_scan_rssi_ub;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080014043
14044 /* Additional Handoff params */
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080014045 uint16_t nVccRssiTrigger;
14046 uint32_t nVccUlMacLossThreshold;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080014047 uint32_t nPassiveMaxChnTime; /* in units of milliseconds */
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080014048 uint32_t nActiveMaxChnTime; /* in units of milliseconds */
Kiran Kumar Lokerea2dfefe2017-06-29 19:01:24 -070014049 uint32_t scan_probe_repeat_time;
14050 uint32_t scan_num_probes;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080014051
14052 uint32_t nInitialDwellTime; /* in units of milliseconds */
14053 bool initial_scan_no_dfs_chnl;
14054
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080014055 uint32_t nPassiveMinChnTimeConc; /* in units of milliseconds */
14056 uint32_t nPassiveMaxChnTimeConc; /* in units of milliseconds */
14057 uint32_t nActiveMinChnTimeConc; /* in units of milliseconds */
14058 uint32_t nActiveMaxChnTimeConc; /* in units of milliseconds */
14059 uint32_t nRestTimeConc; /* in units of milliseconds */
Agrawal Ashish17bb3902016-05-05 13:29:40 +053014060 /* In units of milliseconds */
14061 uint32_t min_rest_time_conc;
14062 /* In units of milliseconds */
14063 uint32_t idle_time_conc;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080014064
14065 uint8_t nMaxPsPoll;
14066
14067 uint8_t nRssiFilterPeriod;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080014068 uint8_t fMaxLIModulatedDTIM;
14069
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080014070 bool mcc_rts_cts_prot_enable;
14071 bool mcc_bcast_prob_resp_enable;
14072 uint8_t nDataInactivityTimeout;
Mukul Sharmaed92f2f2017-04-20 00:06:28 +053014073 uint8_t wow_data_inactivity_timeout;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080014074
14075 /* WMM QoS Configuration */
Srinivas Girigowdaea32d6a2017-03-25 00:03:12 -070014076 enum hdd_wmm_user_mode WmmMode;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080014077 bool b80211eIsEnabled;
14078 uint8_t UapsdMask; /* what ACs to setup U-APSD for at assoc */
14079 uint32_t InfraUapsdVoSrvIntv;
14080 uint32_t InfraUapsdVoSuspIntv;
14081 uint32_t InfraUapsdViSrvIntv;
14082 uint32_t InfraUapsdViSuspIntv;
14083 uint32_t InfraUapsdBeSrvIntv;
14084 uint32_t InfraUapsdBeSuspIntv;
14085 uint32_t InfraUapsdBkSrvIntv;
14086 uint32_t InfraUapsdBkSuspIntv;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080014087 bool isFastRoamIniFeatureEnabled;
14088 bool MAWCEnabled;
Varun Reddy Yeturu061d4d62017-07-20 09:39:32 -070014089 bool mawc_roam_enabled;
14090 uint32_t mawc_roam_traffic_threshold;
14091 int8_t mawc_roam_ap_rssi_threshold;
14092 uint8_t mawc_roam_rssi_high_adjust;
14093 uint8_t mawc_roam_rssi_low_adjust;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080014094#ifdef FEATURE_WLAN_ESE
14095 uint32_t InfraInactivityInterval;
14096 bool isEseIniFeatureEnabled;
14097#endif
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080014098 bool isFastTransitionEnabled;
14099 uint8_t RoamRssiDiff;
Abhishek Singh34c0e632017-09-28 14:39:29 +053014100 int32_t rssi_abs_thresh;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080014101 bool isWESModeEnabled;
Deepak Dhamdhere828f1892017-02-09 11:51:19 -080014102 uint32_t pmkid_modes;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080014103 bool isRoamOffloadScanEnabled;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080014104 bool bImplicitQosEnabled;
14105
14106 /* default TSPEC parameters for AC_VO */
Abhishek Singh12be60f2017-08-11 13:52:42 +053014107 enum sme_qos_wmm_dir_type InfraDirAcVo;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080014108 uint16_t InfraNomMsduSizeAcVo;
14109 uint32_t InfraMeanDataRateAcVo;
14110 uint32_t InfraMinPhyRateAcVo;
14111 uint16_t InfraSbaAcVo;
14112
14113 /* default TSPEC parameters for AC_VI */
Abhishek Singh12be60f2017-08-11 13:52:42 +053014114 enum sme_qos_wmm_dir_type InfraDirAcVi;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080014115 uint16_t InfraNomMsduSizeAcVi;
14116 uint32_t InfraMeanDataRateAcVi;
14117 uint32_t InfraMinPhyRateAcVi;
14118 uint16_t InfraSbaAcVi;
14119
14120 /* default TSPEC parameters for AC_BE */
Abhishek Singh12be60f2017-08-11 13:52:42 +053014121 enum sme_qos_wmm_dir_type InfraDirAcBe;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080014122 uint16_t InfraNomMsduSizeAcBe;
14123 uint32_t InfraMeanDataRateAcBe;
14124 uint32_t InfraMinPhyRateAcBe;
14125 uint16_t InfraSbaAcBe;
14126
14127 /* default TSPEC parameters for AC_BK */
Abhishek Singh12be60f2017-08-11 13:52:42 +053014128 enum sme_qos_wmm_dir_type InfraDirAcBk;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080014129 uint16_t InfraNomMsduSizeAcBk;
14130 uint32_t InfraMeanDataRateAcBk;
14131 uint32_t InfraMinPhyRateAcBk;
14132 uint16_t InfraSbaAcBk;
14133
14134 uint32_t DelayedTriggerFrmInt;
14135
Sourav Mohapatra57006c72017-11-19 16:15:55 +053014136 char enableConcurrentSTA[CFG_CONCURRENT_IFACE_MAX_LEN];
14137
Srinivas Girigowda2fb677c2017-03-25 15:35:34 -070014138 /* Control for Replay counetr. value 1 means
14139 * single replay counter for all TID
Jeff Johnsondcd2cf92017-01-12 10:44:23 -080014140 */
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080014141 bool bSingleTidRc;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080014142 bool fhostArpOffload;
Nachiket Kukadef0804072018-02-27 18:20:07 +053014143 enum pmo_hw_filter_mode hw_filter_mode_bitmap;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080014144 bool ssdp;
Houston Hoffmanc7c69f02016-03-24 22:45:52 -070014145
14146#ifdef FEATURE_RUNTIME_PM
14147 bool runtime_pm;
14148 uint32_t runtime_pm_delay;
14149#endif
14150
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080014151#ifdef FEATURE_WLAN_RA_FILTERING
14152 bool IsRArateLimitEnabled;
14153 uint16_t RArateLimitInterval;
14154#endif
14155#ifdef FEATURE_WLAN_SCAN_PNO
14156 bool PnoOffload;
14157#endif
14158 bool fhostNSOffload;
14159 bool burstSizeDefinition;
14160 uint8_t tsInfoAckPolicy;
14161
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080014162 bool AddTSWhenACMIsOff;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080014163
14164 uint32_t infraStaKeepAlivePeriod;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080014165 uint8_t nBandCapability;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080014166 bool teleBcnWakeupEn;
14167
Anurag Chouhanf04e84f2016-03-03 10:12:12 +053014168/* QDF Trace Control*/
14169 uint16_t qdf_trace_enable_wdi;
14170 uint16_t qdf_trace_enable_hdd;
14171 uint16_t qdf_trace_enable_sme;
14172 uint16_t qdf_trace_enable_pe;
14173 uint16_t qdf_trace_enable_pmc;
14174 uint16_t qdf_trace_enable_wma;
14175 uint16_t qdf_trace_enable_sys;
14176 uint16_t qdf_trace_enable_qdf;
14177 uint16_t qdf_trace_enable_sap;
14178 uint16_t qdf_trace_enable_hdd_sap;
14179 uint16_t qdf_trace_enable_bmi;
14180 uint16_t qdf_trace_enable_cfg;
Houston Hoffmanfbf05102017-08-28 11:37:01 -070014181 uint16_t qdf_trace_enable_txrx;
14182 uint16_t qdf_trace_enable_dp;
Anurag Chouhanf04e84f2016-03-03 10:12:12 +053014183 uint16_t qdf_trace_enable_htc;
14184 uint16_t qdf_trace_enable_hif;
14185 uint16_t qdf_trace_enable_hdd_sap_data;
14186 uint16_t qdf_trace_enable_hdd_data;
14187 uint16_t qdf_trace_enable_epping;
14188 uint16_t qdf_trace_enable_qdf_devices;
Naveen Rawat7df31862017-03-01 17:09:30 -080014189 uint16_t qdf_trace_enable_wifi_pos;
Naveen Rawatf2b0dbd2017-03-27 10:00:15 -070014190 uint16_t qdf_trace_enable_nan;
Kiran Kumar Lokere798de7e2017-03-30 14:01:12 -070014191 uint16_t qdf_trace_enable_regulatory;
Naveen Rawat3cb779e2018-02-16 16:36:10 -080014192 uint16_t qdf_trace_enable_cp_stats;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080014193
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080014194 uint16_t nTeleBcnMaxListenInterval;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080014195 uint8_t enableBypass11d;
14196 uint8_t enableDFSChnlScan;
14197 uint8_t enable_dfs_pno_chnl_scan;
14198 uint8_t enableDynamicDTIM;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080014199 uint8_t ShortGI40MhzEnable;
Srinivas Girigowda2fb677c2017-03-25 15:35:34 -070014200 enum hdd_link_speed_rpt_type reportMaxLinkSpeed;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080014201 int32_t linkSpeedRssiHigh;
14202 int32_t linkSpeedRssiMid;
14203 int32_t linkSpeedRssiLow;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080014204 bool nRoamPrefer5GHz;
14205 bool nRoamIntraBand;
14206 uint8_t nProbes;
14207 uint16_t nRoamScanHomeAwayTime;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080014208 uint8_t enableMCC;
14209 uint8_t allowMCCGODiffBI;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080014210 uint8_t thermalMitigationEnable;
14211 uint32_t throttlePeriod;
Poddar, Siddarth83905022016-04-16 17:56:08 -070014212 uint32_t throttle_dutycycle_level0;
14213 uint32_t throttle_dutycycle_level1;
14214 uint32_t throttle_dutycycle_level2;
14215 uint32_t throttle_dutycycle_level3;
Poddar, Siddarthb61cf642016-04-28 16:02:39 +053014216#if defined(CONFIG_HL_SUPPORT) && defined(QCA_BAD_PEER_TX_FLOW_CL)
14217 bool bad_peer_txctl_enable;
14218 uint32_t bad_peer_txctl_prd;
14219 uint32_t bad_peer_txctl_txq_lmt;
14220 uint32_t bad_peer_tgt_backoff;
14221 uint32_t bad_peer_tgt_report_prd;
14222 uint32_t bad_peer_cond_ieee80211b;
14223 uint32_t bad_peer_delta_ieee80211b;
14224 uint32_t bad_peer_pct_ieee80211b;
14225 uint32_t bad_peer_tput_ieee80211b;
14226 uint32_t bad_peer_limit_ieee80211b;
14227 uint32_t bad_peer_cond_ieee80211ag;
14228 uint32_t bad_peer_delta_ieee80211ag;
14229 uint32_t bad_peer_pct_ieee80211ag;
14230 uint32_t bad_peer_tput_ieee80211ag;
14231 uint32_t bad_peer_limit_ieee80211ag;
14232 uint32_t bad_peer_cond_ieee80211n;
14233 uint32_t bad_peer_delta_ieee80211n;
14234 uint32_t bad_peer_pct_ieee80211n;
14235 uint32_t bad_peer_tput_ieee80211n;
14236 uint32_t bad_peer_limit_ieee80211n;
14237 uint32_t bad_peer_cond_ieee80211ac;
14238 uint32_t bad_peer_delta_ieee80211ac;
14239 uint32_t bad_peer_pct_ieee80211ac;
14240 uint32_t bad_peer_tput_ieee80211ac;
14241 uint32_t bad_peer_limit_ieee80211ac;
14242#endif
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080014243 uint8_t vhtChannelWidth;
14244 uint8_t vhtRxMCS;
14245 uint8_t vhtTxMCS;
14246 bool enableTxBF;
Abhishek Singh68844282018-01-25 16:48:41 +053014247 bool enable_subfee_vendor_vhtie;
Kiran Kumar Lokere5302ab62015-12-16 16:03:16 -080014248 bool enable_txbf_sap_mode;
Kiran Kumar Lokere0e255172018-03-30 18:54:25 -070014249 bool enable_vht20_mcs9;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080014250 uint8_t txBFCsnValue;
14251 bool enable_su_tx_bformer;
14252 uint8_t vhtRxMCS2x2;
14253 uint8_t vhtTxMCS2x2;
Krunal Soni158bfe62017-08-02 12:33:08 -070014254 uint8_t disable_high_ht_mcs_2x2;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080014255 bool enable2x2;
Kiran Kumar Lokere666bf852016-05-02 12:23:02 -070014256 uint32_t vdev_type_nss_2g;
14257 uint32_t vdev_type_nss_5g;
Naveen Rawat06c4ebe2018-01-17 16:23:53 -080014258 uint8_t txchainmask1x1;
14259 uint8_t rxchainmask1x1;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080014260 bool enableMuBformee;
14261 bool enableVhtpAid;
14262 bool enableVhtGid;
14263 bool enableTxBFin20MHz;
14264 uint8_t enableAmpduPs;
14265 uint8_t enableHtSmps;
14266 uint8_t htSmps;
14267 uint8_t enableModulatedDTIM;
14268 uint32_t fEnableMCAddrList;
14269 bool enableFirstScan2GOnly;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080014270 bool enableRxSTBC;
14271 bool enableTxSTBC;
Krunal Sonia2c0e412017-05-04 14:12:41 +053014272 uint8_t enable_tx_ldpc;
14273 uint8_t enable_rx_ldpc;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080014274 bool enable5gEBT;
Dustin Brownfe7aa872017-06-26 10:52:08 -070014275 bool prevent_link_down;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080014276 uint8_t scanAgingTimeout;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080014277 uint8_t disableLDPCWithTxbfAP;
14278 uint8_t enableMCCAdaptiveScheduler;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080014279 bool sapAllowAllChannel;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080014280 bool enableSSR;
Poddar, Siddarth37033032017-10-11 15:47:40 +053014281 bool enable_data_stall_det;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080014282 bool enableVhtFor24GHzBand;
Kapil Gupta4b2efbb2016-10-03 13:07:20 +053014283 bool enable_sap_vendor_vht;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080014284 bool bFastRoamInConIniFeatureEnabled;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080014285 bool fEnableSNRMonitoring;
14286 /*PNO related parameters */
14287#ifdef FEATURE_WLAN_SCAN_PNO
14288 bool configPNOScanSupport;
14289 uint32_t configPNOScanTimerRepeatValue;
Srinivas Girigowdabdc98162015-09-17 11:06:07 -070014290 uint32_t pno_slow_scan_multiplier;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080014291#endif
Deepak Dhamdhere612392c2016-08-28 02:56:51 -070014292 uint8_t max_amsdu_num;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080014293 uint8_t nSelect5GHzMargin;
14294 uint8_t isCoalesingInIBSSAllowed;
14295
14296 /* IBSS Power Save related parameters */
14297 uint32_t ibssATIMWinSize;
14298 uint8_t isIbssPowerSaveAllowed;
14299 uint8_t isIbssPowerCollapseAllowed;
14300 uint8_t isIbssAwakeOnTxRx;
14301 uint32_t ibssInactivityCount;
14302 uint32_t ibssTxSpEndInactivityTime;
14303 uint32_t ibssPsWarmupTime;
14304 uint32_t ibssPs1RxChainInAtimEnable;
14305
14306 bool enable_ip_tcp_udp_checksum_offload;
Ashish Kumar Dhanotiyabb22e0d2017-04-03 10:44:14 +053014307 uint8_t enablePowersaveOffload;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080014308 bool enablefwprint;
Yuanyuan Liu7a97b8f2017-01-27 10:42:52 -080014309 uint8_t enable_fw_log;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080014310 uint8_t fVhtAmpduLenExponent;
14311 uint32_t vhtMpduLen;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080014312 uint32_t IpaConfig;
14313 bool IpaClkScalingEnable;
14314 uint32_t IpaDescSize;
14315 uint32_t IpaHighBandwidthMbps;
14316 uint32_t IpaMediumBandwidthMbps;
14317 uint32_t IpaLowBandwidthMbps;
14318#ifdef FEATURE_WLAN_MCC_TO_SCC_SWITCH
14319 uint32_t WlanMccToSccSwitchMode;
14320#endif
14321#ifdef FEATURE_WLAN_AUTO_SHUTDOWN
14322 uint32_t WlanAutoShutdown;
14323#endif
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080014324 uint8_t wowEnable;
14325 uint8_t maxNumberOfPeers;
14326 uint8_t disableDFSChSwitch;
14327 uint8_t enableDFSMasterCap;
14328 uint16_t thermalTempMinLevel0;
14329 uint16_t thermalTempMaxLevel0;
14330 uint16_t thermalTempMinLevel1;
14331 uint16_t thermalTempMaxLevel1;
14332 uint16_t thermalTempMinLevel2;
14333 uint16_t thermalTempMaxLevel2;
14334 uint16_t thermalTempMinLevel3;
14335 uint16_t thermalTempMaxLevel3;
14336 uint32_t TxPower2g;
14337 uint32_t TxPower5g;
14338 uint32_t gEnableDebugLog;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080014339 bool fDfsPhyerrFilterOffload;
14340 uint8_t gSapPreferredChanLocation;
14341 uint8_t gDisableDfsJapanW53;
14342 bool gEnableOverLapCh;
14343 bool fRegChangeDefCountry;
gaoleze5108942017-03-31 16:56:42 +080014344 bool acs_with_more_param;
14345 uint32_t auto_channel_select_weight;
Hong Shi417824f2017-01-12 02:31:14 +080014346 uint16_t max_ht_mcs_txdata;
Will Huang496b36c2017-07-11 16:38:50 +080014347 bool sap_get_peer_info;
Hong Shia9ef8712017-02-19 21:54:02 +080014348 bool disable_abg_rate_txdata;
Hong Shib90718f2017-02-20 00:57:22 +080014349 uint8_t rate_for_tx_mgmt;
Hong Shi2d384fd2017-05-22 18:38:41 +080014350 uint8_t rate_for_tx_mgmt_2g;
14351 uint8_t rate_for_tx_mgmt_5g;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080014352#ifdef QCA_LL_LEGACY_TX_FLOW_CONTROL
14353 uint32_t TxFlowLowWaterMark;
14354 uint32_t TxFlowHighWaterMarkOffset;
14355 uint32_t TxFlowMaxQueueDepth;
14356 uint32_t TxLbwFlowLowWaterMark;
14357 uint32_t TxLbwFlowHighWaterMarkOffset;
14358 uint32_t TxLbwFlowMaxQueueDepth;
14359 uint32_t TxHbwFlowLowWaterMark;
14360 uint32_t TxHbwFlowHighWaterMarkOffset;
14361 uint32_t TxHbwFlowMaxQueueDepth;
14362#endif /* QCA_LL_LEGACY_TX_FLOW_CONTROL */
14363#ifdef QCA_LL_TX_FLOW_CONTROL_V2
14364 uint32_t TxFlowStopQueueThreshold;
14365 uint32_t TxFlowStartQueueOffset;
14366#endif
14367 uint8_t apMaxOffloadPeers;
14368 uint8_t apMaxOffloadReorderBuffs;
14369 bool advertiseConcurrentOperation;
14370 bool enableMemDeepSleep;
Dustin Brown732ab9c2017-06-15 13:24:09 -070014371 bool enable_cck_tx_fir_override;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080014372
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080014373 uint8_t allowDFSChannelRoam;
14374
Nirav Shahbb8e47c2018-05-17 16:56:41 +053014375#ifndef REMOVE_PKT_LOG
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080014376 bool enablePacketLog;
Nirav Shahbb8e47c2018-05-17 16:56:41 +053014377#endif
14378
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080014379#ifdef MSM_PLATFORM
14380 uint32_t busBandwidthHighThreshold;
14381 uint32_t busBandwidthMediumThreshold;
14382 uint32_t busBandwidthLowThreshold;
14383 uint32_t busBandwidthComputeInterval;
Ravi Joshie2331e82015-07-01 18:18:54 -070014384 uint32_t enable_tcp_delack;
Prakash Manjunathappae73e3b52018-02-27 18:56:22 -080014385 bool enable_tcp_limit_output;
Mohit Khanna6272fb682017-04-13 09:34:36 -070014386 uint32_t enable_tcp_adv_win_scale;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080014387 uint32_t tcpDelackThresholdHigh;
14388 uint32_t tcpDelackThresholdLow;
Mohit Khannae71e2262015-11-10 09:37:24 -080014389 uint32_t tcp_tx_high_tput_thres;
Ravi Joshib89e7f72016-09-07 13:43:15 -070014390 uint32_t tcp_delack_timer_count;
Mohit Khannaca4173b2017-09-12 21:52:19 -070014391 u8 periodic_stats_disp_time;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080014392#endif /* MSM_PLATFORM */
14393
14394 /* FW debug log parameters */
14395 uint32_t enableFwLogType;
14396 uint32_t enableFwLogLevel;
14397 uint8_t enableFwModuleLogLevel[FW_MODULE_LOG_LEVEL_STRING_LENGTH];
14398
Rajeev Kumar Sirasanagandla0be56df2016-09-08 19:19:47 +053014399 /* RTS profile parameter */
14400 uint32_t rts_profile;
14401
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080014402#ifdef WLAN_FEATURE_11W
14403 uint32_t pmfSaQueryMaxRetries;
14404 uint32_t pmfSaQueryRetryInterval;
14405#endif
14406
14407 uint8_t gMaxConcurrentActiveSessions;
14408
14409 uint8_t ignoreCAC;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080014410
SaidiReddy Yenugacc733af2016-11-09 17:45:42 +053014411 /* Flag to indicate crash inject enabled or not */
14412 bool crash_inject_enabled;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080014413
Ganesh Kondabattini408fb8d2017-08-08 22:00:20 +053014414 bool enable_sap_mandatory_chan_list;
14415
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080014416 int32_t dfsRadarPriMultiplier;
14417 uint8_t reorderOffloadSupport;
14418
14419#ifdef WLAN_FEATURE_ROAM_OFFLOAD
14420 bool isRoamOffloadEnabled;
14421#endif
14422
14423 uint32_t IpaUcTxBufCount;
14424 uint32_t IpaUcTxBufSize;
14425 uint32_t IpaUcRxIndRingCount;
14426 uint32_t IpaUcTxPartitionBase;
14427#ifdef WLAN_LOGGING_SOCK_SVC_ENABLE
14428 /* WLAN Logging */
Nirav Shaheb017be2018-02-15 11:20:58 +053014429 bool wlan_logging_enable;
14430 bool wlan_logging_to_console;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080014431#endif /* WLAN_LOGGING_SOCK_SVC_ENABLE */
14432
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080014433#ifdef WLAN_FEATURE_LPSS
Komal Seelamc11bb222016-01-27 18:57:10 +053014434 bool enable_lpass_support;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080014435#endif
14436#ifdef WLAN_FEATURE_NAN
14437 bool enable_nan_support;
14438#endif
14439 bool enableSelfRecovery;
14440#ifdef FEATURE_WLAN_FORCE_SAP_SCC
14441 uint8_t SapSccChanAvoidance;
14442#endif /* FEATURE_WLAN_FORCE_SAP_SCC */
14443
Jeff Johnson60cbd2d2017-11-03 18:26:28 -070014444 bool enable_sap_suspend;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080014445
14446#ifdef WLAN_FEATURE_EXTWOW_SUPPORT
14447 uint8_t extWowGotoSuspend;
14448 uint8_t extWowApp1WakeupPinNumber;
14449 uint8_t extWowApp2WakeupPinNumber;
14450 uint32_t extWowApp2KAInitPingInterval;
14451 uint32_t extWowApp2KAMinPingInterval;
14452 uint32_t extWowApp2KAMaxPingInterval;
14453 uint32_t extWowApp2KAIncPingInterval;
14454 uint16_t extWowApp2TcpSrcPort;
14455 uint16_t extWowApp2TcpDstPort;
14456 uint32_t extWowApp2TcpTxTimeout;
14457 uint32_t extWowApp2TcpRxTimeout;
14458#endif
14459 bool gEnableDeauthToDisassocMap;
14460#ifdef DHCP_SERVER_OFFLOAD
14461 bool enableDHCPServerOffload;
14462 uint32_t dhcpMaxNumClients;
14463 uint8_t dhcpServerIP[IPADDR_STRING_LENGTH];
14464#endif /* DHCP_SERVER_OFFLOAD */
14465 bool enable_mac_spoofing;
14466 uint8_t conc_custom_rule1;
14467 uint8_t conc_custom_rule2;
14468 uint8_t is_sta_connection_in_5gz_enabled;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080014469 uint32_t sta_miracast_mcc_rest_time_val;
14470 bool is_ramdump_enabled;
14471#ifdef FEATURE_AP_MCC_CH_AVOIDANCE
14472 bool sap_channel_avoidance;
14473#endif /* FEATURE_AP_MCC_CH_AVOIDANCE */
Himanshu Agarwal4ecf6ca2018-05-09 16:48:56 +053014474 uint8_t sap_11ac_override;
14475 uint8_t go_11ac_override;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080014476 uint8_t sap_dot11mc;
14477 uint8_t prefer_non_dfs_on_radar;
14478 bool ignore_peer_erp_info;
14479 uint8_t multicast_host_fw_msgs;
14480 uint8_t conc_system_pref;
Jeff Johnson1ad3fbd2017-11-03 08:00:02 -070014481 bool send_deauth_before_con;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080014482 bool tso_enable;
14483 bool lro_enable;
Manjunathappa Prakash7b0ad462018-04-15 00:37:16 -070014484 bool gro_enable;
Manjunathappa Prakashfff753c2016-09-01 19:34:56 -070014485 bool flow_steering_enable;
Orhan K AKYILDIZ30e8cbc2017-08-11 18:00:28 -070014486 uint8_t max_msdus_per_rxinorderind;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080014487 bool active_mode_offload;
Nachiket Kukadee547a482018-05-22 16:43:30 +053014488 bool apf_packet_filter_enable;
Nitesh Shah61c10d92016-10-19 19:29:15 +053014489 /* parameter for defer timer for enabling TDLS on p2p listen */
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080014490 uint32_t fine_time_meas_cap;
14491 uint8_t max_scan_count;
14492#ifdef WLAN_FEATURE_FASTPATH
14493 bool fastpath_enable;
14494#endif
14495 uint8_t dot11p_mode;
Kiran Kumar Lokere1a43bcf2018-05-15 15:51:58 -070014496 bool etsi13_srd_chan_in_master_mode;
Nirav Shahbd36b062016-07-18 11:12:59 +053014497 uint8_t rx_mode;
Himanshu Agarwalbdc776f2017-08-02 12:51:08 +053014498 uint32_t ce_service_max_yield_time;
Poddar, Siddarth04eed332017-06-28 14:20:26 +053014499 uint8_t ce_service_max_rx_ind_flush;
Manjunathappa Prakashcb6df762018-05-29 18:54:58 -070014500 uint32_t napi_cpu_affinity_mask;
Manjunathappa Prakashb6b4ff12018-06-04 12:32:33 -070014501 /* CPU affinity mask for rx_thread */
14502 uint32_t rx_thread_affinity_mask;
Nirav Shahbd36b062016-07-18 11:12:59 +053014503 uint8_t cpu_map_list[CFG_RPS_RX_QUEUE_CPU_MAP_LIST_LEN];
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080014504#ifdef FEATURE_WLAN_EXTSCAN
Manjeet Singh0f2ce5c2016-09-01 12:08:57 +053014505 bool extscan_enabled;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080014506 uint32_t extscan_passive_max_chn_time;
14507 uint32_t extscan_passive_min_chn_time;
14508 uint32_t extscan_active_max_chn_time;
14509 uint32_t extscan_active_min_chn_time;
14510#endif
14511 bool ce_classify_enabled;
14512 uint32_t dual_mac_feature_disable;
Nitesh Shah50a3de12017-04-03 19:37:19 +053014513 uint8_t dbs_scan_selection[CFG_DBS_SCAN_PARAM_LENGTH];
Ganesh Kondabattini930304c2017-10-10 15:25:36 +053014514 uint32_t sta_sap_scc_on_dfs_chan;
Zhu Jianmin72d32de2018-05-11 10:54:10 +080014515 uint32_t sta_sap_scc_on_lte_coex_chan;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080014516 bool tx_chain_mask_cck;
14517 uint8_t tx_chain_mask_1ss;
Jeff Johnsona89e25d2017-02-24 12:25:07 -080014518 bool smart_chainmask_enabled;
14519 bool alternative_chainmask_enabled;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080014520 uint16_t self_gen_frm_pwr;
Varun Reddy Yeturub43fda12015-09-10 18:16:21 -070014521#ifdef FEATURE_WLAN_SCAN_PNO
14522 bool pno_channel_prediction;
14523 uint8_t top_k_num_of_channels;
14524 uint8_t stationary_thresh;
14525 uint32_t channel_prediction_full_scan;
14526#endif
Varun Reddy Yeturu05186292015-09-28 17:12:33 -070014527 bool early_stop_scan_enable;
14528 int8_t early_stop_scan_min_threshold;
14529 int8_t early_stop_scan_max_threshold;
Varun Reddy Yeturu044bda22015-11-21 22:03:40 -080014530 int8_t first_scan_bucket_threshold;
Krishna Kumaar Natarajan22b59a72015-11-23 18:54:58 -080014531 uint8_t ht_mpdu_density;
Ravi Joshi742495d2015-11-09 18:56:53 -080014532#ifdef FEATURE_LFR_SUBNET_DETECTION
14533 bool enable_lfr_subnet_detection;
14534#endif
Sandeep Puligilla93a29ec2016-02-12 16:10:56 -080014535 uint16_t obss_active_dwelltime;
14536 uint16_t obss_passive_dwelltime;
14537 uint16_t obss_width_trigger_interval;
Deepak Dhamdhere68929ec2015-08-05 15:16:35 -070014538 uint8_t inform_bss_rssi_raw;
Jeff Johnson89c66ff2016-04-22 15:21:37 -070014539#ifdef WLAN_FEATURE_TSF
Manikandan Mohan976e7562016-03-15 16:33:31 -070014540 uint32_t tsf_gpio_pin;
Yu Wang66a250b2017-07-19 11:46:40 +080014541
14542#ifdef WLAN_FEATURE_TSF_PLUS
14543 uint8_t tsf_ptp_options;
14544#endif /* WLAN_FEATURE_TSF_PLUS */
Jeff Johnson89c66ff2016-04-22 15:21:37 -070014545#endif
Gupta, Kapilc68ad462016-02-01 19:17:23 +053014546 uint32_t roam_dense_traffic_thresh;
14547 uint32_t roam_dense_rssi_thresh_offset;
Abhishek Singh165bc602016-03-21 12:43:00 +053014548 bool ignore_peer_ht_opmode;
Gupta, Kapilc68ad462016-02-01 19:17:23 +053014549 uint32_t roam_dense_min_aps;
Varun Reddy Yeturufaad37e2017-07-26 10:54:13 -070014550 int8_t roam_bg_scan_bad_rssi_thresh;
Vignesh Viswanathanc018e982017-09-07 18:49:19 +053014551 uint8_t roam_bad_rssi_thresh_offset_2g;
Abhinav Kumara083f212018-04-05 18:49:45 +053014552 uint32_t ho_delay_for_rx;
Abhinav Kumara95af7c2018-04-06 17:08:00 +053014553 uint32_t min_delay_btw_roam_scans;
14554 uint32_t roam_trigger_reason_bitmask;
Varun Reddy Yeturufaad37e2017-07-26 10:54:13 -070014555 uint32_t roam_bg_scan_client_bitmap;
Abhishek Singh10ecf582016-05-04 17:48:59 +053014556 bool enable_edca_params;
14557 uint32_t edca_vo_cwmin;
14558 uint32_t edca_vi_cwmin;
14559 uint32_t edca_bk_cwmin;
14560 uint32_t edca_be_cwmin;
14561 uint32_t edca_vo_cwmax;
14562 uint32_t edca_vi_cwmax;
14563 uint32_t edca_bk_cwmax;
14564 uint32_t edca_be_cwmax;
14565 uint32_t edca_vo_aifs;
14566 uint32_t edca_vi_aifs;
14567 uint32_t edca_bk_aifs;
14568 uint32_t edca_be_aifs;
gbian62edd7e2017-03-07 13:12:13 +080014569
14570 /* Tuning TX sched parameters for VO (skip credit limit credit disc) */
14571 uint8_t tx_sched_wrr_vo[TX_SCHED_WRR_PARAM_STRING_LENGTH];
14572 /* Tuning TX sched parameters for VI (skip credit limit credit disc) */
14573 uint8_t tx_sched_wrr_vi[TX_SCHED_WRR_PARAM_STRING_LENGTH];
14574 /* Tuning TX sched parameters for BE (skip credit limit credit disc) */
14575 uint8_t tx_sched_wrr_be[TX_SCHED_WRR_PARAM_STRING_LENGTH];
14576 /* Tuning TX sched parameters for BK (skip credit limit credit disc) */
14577 uint8_t tx_sched_wrr_bk[TX_SCHED_WRR_PARAM_STRING_LENGTH];
14578
Abhishek Singh5ea86532016-04-27 14:10:53 +053014579 bool enable_fatal_event;
Nachiket Kukadee547a482018-05-22 16:43:30 +053014580 bool apf_enabled;
Nirav Shahd21a2e32018-04-20 16:34:43 +053014581#ifdef CONFIG_DP_TRACE
Nirav Shahcc1f1ae2016-04-26 11:41:29 +053014582 bool enable_dp_trace;
Mohit Khannaf8f96822017-05-17 17:11:59 -070014583 uint8_t dp_trace_config[DP_TRACE_CONFIG_STRING_LENGTH];
Nirav Shahd21a2e32018-04-20 16:34:43 +053014584#endif
Gupta, Kapil96c7f2f2016-04-25 19:13:41 +053014585 bool adaptive_dwell_mode_enabled;
Sandeep Puligillaf5ccbf62018-03-26 16:37:05 -070014586 enum scan_dwelltime_adaptive_mode scan_adaptive_dwell_mode;
14587 enum scan_dwelltime_adaptive_mode scan_adaptive_dwell_mode_nc;
14588 enum scan_dwelltime_adaptive_mode roamscan_adaptive_dwell_mode;
14589 enum scan_dwelltime_adaptive_mode extscan_adaptive_dwell_mode;
14590 enum scan_dwelltime_adaptive_mode pnoscan_adaptive_dwell_mode;
14591 enum scan_dwelltime_adaptive_mode global_adapt_dwelltime_mode;
Gupta, Kapil96c7f2f2016-04-25 19:13:41 +053014592 uint8_t adapt_dwell_lpf_weight;
14593 uint8_t adapt_dwell_passive_mon_intval;
14594 uint8_t adapt_dwell_wifi_act_threshold;
Kapil Gupta8878ad92017-02-13 11:56:04 +053014595 bool vendor_acs_support;
14596 bool acs_support_for_dfs_ltecoex;
Kapil Gupta0ed58dc2016-04-22 15:35:26 +053014597 bool bug_report_for_no_scan_results;
Mukul Sharmaf7d62e12016-09-03 15:16:22 +053014598 bool bug_on_reinit_failure;
Deepak Dhamdhere3385d752016-05-25 20:36:47 -070014599#ifdef WLAN_FEATURE_NAN_DATAPATH
14600 bool enable_nan_datapath;
14601 uint8_t nan_datapath_ndi_channel;
14602#endif
Arun Khandavallifae92942016-08-01 13:31:08 +053014603 uint32_t iface_change_wait_time;
Rajeev Kumar Sirasanagandlaaf474742016-09-06 17:54:50 +053014604 /* parameter to control GTX */
14605 uint32_t tgt_gtx_usr_cfg;
Naveen Rawat64e477e2016-05-20 10:34:56 -070014606 enum cfg_sub_20_channel_width enable_sub_20_channel_width;
Amar Singhal18517882016-08-08 12:26:20 -070014607 bool indoor_channel_support;
Mukul Sharmaecf8e092017-12-19 22:36:31 +053014608 /* control marking indoor channel passive to disable */
14609 bool force_ssc_disable_indoor_channel;
Rajeev Kumar Sirasanagandlab79b5462016-09-06 18:33:17 +053014610 /* parameter to force sap into 11n */
14611 bool sap_force_11n_for_11ac;
Bala Venkateshb9cf3362017-11-09 15:48:46 +053014612 bool go_force_11n_for_11ac;
Yingying Tangb4832f72016-10-20 13:44:55 +080014613 uint16_t sap_tx_leakage_threshold;
Ravi Joshibb8d4512016-08-22 10:14:52 -070014614 bool multicast_replay_filter;
Selvaraj, Sridharebda0f22016-08-29 16:05:23 +053014615 bool goptimize_chan_avoid_event;
Agrawal Ashishb2d1a452016-05-05 12:23:58 +053014616 bool enable_go_cts2self_for_sta;
Padma, Santhosh Kumara7119672016-08-16 16:05:14 +053014617 uint32_t tx_aggregation_size;
Paul Zhangee09f8e2018-04-23 16:11:32 +080014618 uint32_t tx_aggregation_size_be;
14619 uint32_t tx_aggregation_size_bk;
14620 uint32_t tx_aggregation_size_vi;
14621 uint32_t tx_aggregation_size_vo;
Padma, Santhosh Kumara7119672016-08-16 16:05:14 +053014622 uint32_t rx_aggregation_size;
Paul Zhang33fae272018-04-23 16:19:00 +080014623 uint32_t tx_aggr_sw_retry_threshold_be;
14624 uint32_t tx_aggr_sw_retry_threshold_bk;
14625 uint32_t tx_aggr_sw_retry_threshold_vi;
14626 uint32_t tx_aggr_sw_retry_threshold_vo;
Kiran Kumar Lokere1aa9c9a2016-10-05 18:50:59 -070014627 bool sta_prefer_80MHz_over_160MHz;
Agrawal, Ashish4e5fa1c2016-09-21 19:03:43 +053014628 uint8_t sap_max_inactivity_override;
Sandeep Puligillaafa52892016-10-26 19:03:16 -070014629 bool fw_timeout_crash;
gaoleze2920bd2017-03-21 17:38:42 +080014630 /* beacon count before channel switch */
14631 uint8_t sap_chanswitch_beacon_cnt;
gaolez76d2a162017-03-21 19:23:58 +080014632 uint8_t sap_chanswitch_mode;
Dustin Browncd756942016-11-23 12:25:33 -080014633 uint32_t rx_wakelock_timeout;
Anurag Chouhan7c01cc42016-12-16 21:33:43 +053014634 uint32_t max_sched_scan_plan_interval;
14635 uint32_t max_sched_scan_plan_iterations;
Yingying Tang95409972016-10-20 15:16:15 +080014636#ifdef WLAN_FEATURE_WOW_PULSE
14637 bool wow_pulse_support;
14638 uint8_t wow_pulse_pin;
14639 uint16_t wow_pulse_interval_high;
14640 uint16_t wow_pulse_interval_low;
14641#endif
Jeff Johnson441e1f72017-02-07 08:50:49 -080014642 enum hdd_wext_control private_wext_control;
Arun Khandavallicc544b32017-01-30 19:52:16 +053014643 bool sap_internal_restart;
Tushnim Bhattacharyya3efa49a2017-07-18 15:43:09 -070014644 enum restart_beaconing_on_ch_avoid_rule
14645 restart_beaconing_on_chan_avoid_event;
Kapil Gupta6e6c26b2017-01-20 18:59:43 +053014646 uint8_t is_per_roam_enabled;
Kapil Gupta5cda2252016-12-29 18:44:26 +053014647 uint32_t per_roam_high_rate_threshold;
14648 uint32_t per_roam_low_rate_threshold;
14649 uint32_t per_roam_th_percent;
14650 uint32_t per_roam_rest_time;
Kapil Gupta957827b2017-02-13 15:47:04 +053014651 uint32_t per_roam_mon_time;
Selvaraj, Sridhar0641fab2017-05-17 16:02:00 +053014652 uint32_t min_candidate_rssi;
Nachiket Kukadee547a482018-05-22 16:43:30 +053014653 enum active_apf_mode active_uc_apf_mode;
14654 enum active_apf_mode active_mc_bc_apf_mode;
Selvaraj, Sridhar4f684bb2017-01-19 15:59:23 +053014655 bool enable_bcast_probe_rsp;
Kiran Kumar Lokere5cc2f0d2018-02-08 17:10:05 -080014656 uint8_t he_dynamic_frag_support;
Krishna Kumaar Natarajan90bb6f12017-03-03 21:05:52 -080014657#ifdef WLAN_FEATURE_11AX
14658 bool enable_ul_mimo;
14659 bool enable_ul_ofdma;
Manikandan Mohan39accff2017-05-02 16:09:00 -070014660 uint32_t he_sta_obsspd;
Krishna Kumaar Natarajan90bb6f12017-03-03 21:05:52 -080014661#endif
Varun Reddy Yeturud33033f2018-06-11 10:58:30 -070014662#ifdef WLAN_SUPPORT_TWT
Varun Reddy Yeturu96285a22018-05-08 13:37:43 -070014663 bool enable_twt;
14664 uint32_t twt_congestion_timeout;
14665#endif
Srinivas Girigowda70e169a2017-03-07 23:55:57 -080014666 uint32_t arp_ac_category;
Jeff Johnson12a744b2017-04-04 08:19:37 -070014667 bool ani_enabled;
Selvaraj, Sridhara521aab2017-03-25 16:42:34 +053014668 bool qcn_ie_support;
Manjunathappa Prakashdab74fa2017-06-19 12:11:03 -070014669 bool tx_orphan_enable;
Rajeev Kumar Sirasanagandlaaec0b082017-06-21 11:59:41 +053014670
14671 bool probe_req_ie_whitelist;
14672 /* probe request bit map ies */
14673 uint32_t probe_req_ie_bitmap_0;
14674 uint32_t probe_req_ie_bitmap_1;
14675 uint32_t probe_req_ie_bitmap_2;
14676 uint32_t probe_req_ie_bitmap_3;
14677 uint32_t probe_req_ie_bitmap_4;
14678 uint32_t probe_req_ie_bitmap_5;
14679 uint32_t probe_req_ie_bitmap_6;
14680 uint32_t probe_req_ie_bitmap_7;
14681 /* Probe Request multiple vendor OUIs */
14682 uint8_t probe_req_ouis[MAX_PRB_REQ_VENDOR_OUI_INI_LEN];
14683 uint32_t no_of_probe_req_ouis;
14684 uint32_t probe_req_voui[MAX_PROBE_REQ_OUIS];
14685
Dustin Brown7f939932017-05-18 15:02:17 -070014686 uint32_t timer_multiplier;
Selvaraj, Sridhar97ce6582017-01-20 17:06:34 +053014687 uint8_t fils_max_chan_guard_time;
Dustin Brown20b6fcf2017-05-17 15:35:17 -070014688 uint8_t scan_backoff_multiplier;
Varun Reddy Yeturubba32e92017-09-06 13:31:40 -070014689 bool mawc_nlo_enabled;
14690 uint32_t mawc_nlo_exp_backoff_ratio;
14691 uint32_t mawc_nlo_init_scan_interval;
14692 uint32_t mawc_nlo_max_scan_interval;
Jayachandran Sreekumaran68c952c2017-04-24 12:42:03 +053014693 enum hdd_external_acs_policy external_acs_policy;
Naveen Rawat2b6e3c92017-03-20 13:59:07 -070014694 /* threshold of packet drops at which FW initiates disconnect */
14695 uint16_t pkt_err_disconn_th;
Naveen Rawatb2fc4132017-05-10 20:42:05 -070014696 bool is_force_1x1;
lifeng959a04c2017-05-10 14:21:28 +080014697 uint8_t enable_rts_sifsbursting;
14698 uint8_t max_mpdus_inampdu;
lifeng13a89d72017-05-10 14:49:29 +080014699 uint16_t sap_max_mcs_txdata;
Hanumanth Reddy Pothulaab395952017-09-05 19:12:26 +053014700 enum pmo_auto_pwr_detect_failure_mode auto_pwr_save_fail_mode;
Naveen Rawat247a8682017-06-05 15:00:31 -070014701 uint16_t num_11b_tx_chains;
14702 uint16_t num_11ag_tx_chains;
Ashish Kumar Dhanotiya9335d812017-06-30 16:57:20 +053014703 uint8_t ito_repeat_count;
Selvaraj, Sridhar57ce4df2017-05-29 18:30:49 +053014704 /* LCA(Last connected AP) disallow configs */
14705 uint32_t disallow_duration;
14706 uint32_t rssi_channel_penalization;
14707 uint32_t num_disallowed_aps;
yeshwanth sriram guntuka1413dfb2017-06-23 14:09:48 +053014708 bool oce_sta_enabled;
14709 bool oce_sap_enabled;
Manjeet Singha9cae432017-02-28 11:58:22 +053014710 /* 5G preference parameters for boosting RSSI */
14711 bool enable_5g_band_pref;
14712 int8_t rssi_boost_threshold_5g;
14713 uint8_t rssi_boost_factor_5g;
14714 uint8_t max_rssi_boost_5g;
14715 /* 5G preference parameters for dropping RSSI*/
14716 int8_t rssi_penalize_threshold_5g;
14717 uint8_t rssi_penalize_factor_5g;
14718 uint8_t max_rssi_penalize_5g;
Ashish Kumar Dhanotiyab8630ab2017-07-21 14:18:14 +053014719 bool enable_lprx;
Ashish Kumar Dhanotiyab28338c2017-07-21 20:12:34 +053014720 uint8_t upper_brssi_thresh;
14721 uint8_t lower_brssi_thresh;
14722 bool enable_dtim_1chrx;
Varun Reddy Yeturu168134f2017-06-26 13:46:05 -070014723 int8_t rssi_thresh_offset_5g;
Ravi Joshi9771d432017-06-26 13:58:12 -070014724 bool is_ndi_mac_randomized;
Amar Singhale4a2dd52017-08-07 13:59:05 -070014725 uint32_t scan_11d_interval;
hqu16d6e082017-09-04 10:52:31 +080014726 bool chan_switch_hostapd_rate_enabled;
Abhishek Singhb58164a2017-07-19 18:47:23 +053014727 bool is_bssid_hint_priority;
Himanshu Agarwal8bcec572017-09-28 11:54:37 +053014728 uint8_t rssi_weightage;
14729 uint8_t ht_caps_weightage;
14730 uint8_t vht_caps_weightage;
14731 uint8_t he_caps_weightage;
14732 uint8_t chan_width_weightage;
14733 uint8_t chan_band_weightage;
14734 uint8_t nss_weightage;
14735 uint8_t beamforming_cap_weightage;
14736 uint8_t pcl_weightage;
14737 uint8_t channel_congestion_weightage;
14738 uint8_t oce_wan_weightage;
14739 uint32_t bandwidth_weight_per_index;
14740 uint32_t nss_weight_per_index;
14741 uint32_t band_weight_per_index;
14742 uint32_t best_rssi_threshold;
14743 uint32_t good_rssi_threshold;
14744 uint32_t bad_rssi_threshold;
14745 uint32_t good_rssi_pcnt;
14746 uint32_t bad_rssi_pcnt;
14747 uint32_t good_rssi_bucket_size;
14748 uint32_t bad_rssi_bucket_size;
14749 uint32_t rssi_pref_5g_rssi_thresh;
14750 uint8_t num_esp_qbss_slots;
14751 uint32_t esp_qbss_score_slots3_to_0;
14752 uint32_t esp_qbss_score_slots7_to_4;
14753 uint32_t esp_qbss_score_slots11_to_8;
14754 uint32_t esp_qbss_score_slots15_to_12;
14755 uint8_t num_oce_wan_slots;
14756 uint32_t oce_wan_score_slots3_to_0;
14757 uint32_t oce_wan_score_slots7_to_4;
14758 uint32_t oce_wan_score_slots11_to_8;
14759 uint32_t oce_wan_score_slots15_to_12;
14760 bool enable_scoring_for_roam;
Abhishek Singh6454ad32017-12-20 10:42:21 +053014761 bool force_rsne_override;
Vignesh Viswanathancc7f1b92017-09-28 13:12:24 +053014762 bool is_fils_enabled;
Paul Zhang99fe8842017-12-08 14:43:46 +080014763 uint16_t wlm_latency_enable;
14764 uint16_t wlm_latency_level;
14765 uint32_t wlm_latency_flags_normal;
14766 uint32_t wlm_latency_flags_moderate;
14767 uint32_t wlm_latency_flags_low;
14768 uint32_t wlm_latency_flags_ultralow;
Ashwini Patilf2bf05e2017-03-10 03:41:03 +053014769 /* mbo related thresholds */
14770 int8_t mbo_candidate_rssi_thres;
14771 int8_t mbo_current_rssi_thres;
14772 int8_t mbo_current_rssi_mcc_thres;
14773 int8_t mbo_candidate_rssi_btc_thres;
Qiwei Cai4505fc62018-05-17 18:35:19 +080014774#ifdef WLAN_FEATURE_PACKET_FILTERING
Hanumanth Reddy Pothula3def8942017-10-05 16:19:36 +053014775 uint8_t packet_filters_bitmap;
Qiwei Cai4505fc62018-05-17 18:35:19 +080014776#endif
Ravi Kumar Bokka990edcc2017-01-09 20:02:58 +053014777 uint8_t enable_phy_reg_retention;
lifeng1c16b6b2017-09-25 13:59:55 +080014778 uint8_t dfs_beacon_tx_enhanced;
lifeng7c607dd2017-02-21 21:16:49 +080014779 uint16_t reduced_beacon_interval;
Yeshwanth Sriram Guntuka2ba6fe92017-10-04 14:40:45 +053014780 bool rssi_assoc_reject_enabled;
14781 bool oce_probe_req_rate_enabled;
14782 bool oce_probe_resp_rate_enabled;
14783 bool oce_beacon_rate_enabled;
14784 bool probe_req_deferral_enabled;
14785 bool fils_discovery_sap_enabled;
14786 bool esp_for_roam_enabled;
Naveen Rawat269b4ed2017-12-07 06:47:32 -080014787 uint8_t tx_chain_mask_2g;
14788 uint8_t rx_chain_mask_2g;
14789 uint8_t tx_chain_mask_5g;
14790 uint8_t rx_chain_mask_5g;
yeshwanth sriram guntuka41f936c2017-09-01 17:53:49 +053014791 uint32_t btm_offload_config;
Padma, Santhosh Kumar3e47c632017-09-01 20:15:27 +053014792#ifdef WLAN_FEATURE_SAE
14793 bool is_sae_enabled;
14794#endif
Rachit Kankane0106e382018-05-16 18:59:28 +053014795 bool enable_dtim_selection_diversity;
14796 bool gcmp_enabled;
14797 bool is_11k_offload_supported;
Jiachao Wu84bb2ea2018-01-08 16:17:33 +080014798 uint32_t btm_solicited_timeout;
14799 uint32_t btm_max_attempt_cnt;
14800 uint32_t btm_sticky_time;
Rachit Kankane0106e382018-05-16 18:59:28 +053014801 uint32_t num_vdevs;
Vignesh Viswanathan694e28e2018-01-18 20:53:57 +053014802 uint32_t offload_11k_enable_bitmask;
14803 uint32_t neighbor_report_offload_params_bitmask;
14804 uint32_t neighbor_report_offload_time_offset;
14805 uint32_t neighbor_report_offload_low_rssi_offset;
14806 uint32_t neighbor_report_offload_bmiss_count_trigger;
14807 uint32_t neighbor_report_offload_per_threshold_offset;
14808 uint32_t neighbor_report_offload_cache_timeout;
14809 uint32_t neighbor_report_offload_max_req_cap;
Rajeev Kumar Sirasanagandla4725ae42018-05-24 22:33:34 +053014810 bool action_oui_enable;
14811 uint8_t action_oui_str[ACTION_OUI_MAXIMUM_ID][ACTION_OUI_MAX_STR_LEN];
Yeshwanth Sriram Guntukadb7995d2018-01-22 16:46:59 +053014812 uint32_t channel_select_logic_conc;
Rachit Kankane0106e382018-05-16 18:59:28 +053014813 uint16_t wmi_wq_watchdog_timeout;
Liangwei Dong22810e82018-03-15 03:42:12 -040014814 bool enable_bt_chain_separation;
Ashish Kumar Dhanotiya04f09dd2018-04-02 16:25:16 +053014815 uint8_t enable_tx_sch_delay;
Ashish Kumar Dhanotiya959b38c2018-04-06 21:07:57 +053014816 uint32_t enable_secondary_rate;
Jeff Johnsonc57c13a2018-04-01 11:03:29 -070014817 HDD_GREEN_AP_CFG_FIELDS
Rajeev Kumar15b40a22018-04-12 11:45:24 -070014818 bool is_unit_test_framework_enabled;
Abhinav Kumar271f0632018-03-29 16:01:30 +053014819 bool enable_ftopen;
Naveen Rawat2b430892018-03-13 13:58:18 -070014820 bool enable_rtt_mac_randomization;
Abhinav Kumaredd1d372018-05-11 15:33:35 +053014821 bool roam_force_rssi_trigger;
Chaoli Zhou75b062f2018-06-11 12:36:54 +080014822 bool enable_change_channel_bandwidth;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080014823};
14824
14825#define VAR_OFFSET(_Struct, _Var) (offsetof(_Struct, _Var))
14826#define VAR_SIZE(_Struct, _Var) (sizeof(((_Struct *)0)->_Var))
14827
14828#define VAR_FLAGS_NONE (0)
14829
14830/* bit 0 is Required or Optional */
14831#define VAR_FLAGS_REQUIRED (1 << 0)
14832#define VAR_FLAGS_OPTIONAL (0 << 0)
14833
14834/*
14835 * bit 1 tells if range checking is required.
14836 * If less than MIN, assume MIN.
14837 * If greater than MAX, assume MAX.
14838 */
14839#define VAR_FLAGS_RANGE_CHECK (1 << 1)
14840#define VAR_FLAGS_RANGE_CHECK_ASSUME_MINMAX (VAR_FLAGS_RANGE_CHECK)
14841
14842/*
14843 * bit 2 is range checking that assumes the DEFAULT value
14844 * If less than MIN, assume DEFAULT,
14845 * If greater than MAX, assume DEFAULT.
14846 */
14847#define VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT (1 << 2)
14848
14849/*
14850 * Bit 3 indicates that the config item can be modified dynamicially
14851 * on a running system
14852 */
14853#define VAR_FLAGS_DYNAMIC_CFG (1 << 3)
14854
Srinivas Girigowda2fb677c2017-03-25 15:35:34 -070014855enum wlan_parameter_type {
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080014856 WLAN_PARAM_Integer,
14857 WLAN_PARAM_SignedInteger,
14858 WLAN_PARAM_HexInteger,
14859 WLAN_PARAM_String,
14860 WLAN_PARAM_MacAddr,
Srinivas Girigowda2fb677c2017-03-25 15:35:34 -070014861};
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080014862
14863#define REG_VARIABLE(_Name, _Type, _Struct, _VarName, \
14864 _Flags, _Default, _Min, _Max) \
14865 { \
14866 (_Name), \
14867 (_Type), \
14868 (_Flags), \
14869 VAR_OFFSET(_Struct, _VarName), \
14870 VAR_SIZE(_Struct, _VarName), \
14871 (_Default), \
14872 (_Min), \
14873 (_Max), \
14874 NULL, \
14875 0 \
14876 }
14877
14878#define REG_DYNAMIC_VARIABLE(_Name, _Type, _Struct, _VarName, \
14879 _Flags, _Default, _Min, _Max, \
14880 _CBFunc, _CBParam) \
14881 { \
14882 (_Name), \
14883 (_Type), \
14884 (VAR_FLAGS_DYNAMIC_CFG | (_Flags)), \
14885 VAR_OFFSET(_Struct, _VarName), \
14886 VAR_SIZE(_Struct, _VarName), \
14887 (_Default), \
14888 (_Min), \
14889 (_Max), \
14890 (_CBFunc), \
14891 (_CBParam) \
14892 }
14893
14894#define REG_VARIABLE_STRING(_Name, _Type, _Struct, _VarName, \
14895 _Flags, _Default) \
14896 { \
14897 (_Name), \
14898 (_Type), \
14899 (_Flags), \
14900 VAR_OFFSET(_Struct, _VarName), \
14901 VAR_SIZE(_Struct, _VarName), \
14902 (unsigned long)(_Default), \
14903 0, \
14904 0, \
14905 NULL, \
14906 0 \
14907 }
14908
Srinivas Girigowda2fb677c2017-03-25 15:35:34 -070014909struct reg_table_entry {
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080014910 char *RegName; /* variable name in the qcom_cfg.ini file */
Srinivas Girigowda2fb677c2017-03-25 15:35:34 -070014911 enum wlan_parameter_type RegType; /* variable type in hdd_config struct */
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080014912 unsigned long Flags; /* Specify optional parms and if RangeCheck is performed */
14913 unsigned short VarOffset; /* offset to field from the base address of the structure */
14914 unsigned short VarSize; /* size (in bytes) of the field */
14915 unsigned long VarDefault; /* default value to use */
14916 unsigned long VarMin; /* minimum value, for range checking */
14917 unsigned long VarMax; /* maximum value, for range checking */
14918 /* Dynamic modification notifier */
Jeff Johnson723234b2017-09-03 08:49:15 -070014919 void (*pfnDynamicnotify)(struct hdd_context *hdd_ctx,
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080014920 unsigned long notifyId);
14921 unsigned long notifyId; /* Dynamic modification identifier */
Srinivas Girigowda2fb677c2017-03-25 15:35:34 -070014922};
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080014923
Krunal Soni707eb782018-01-18 12:04:19 -080014924/**
14925 * hdd_to_csr_wmm_mode() - Utility function to convert HDD to CSR WMM mode
14926 *
14927 * @enum hdd_wmm_user_mode - hdd WMM user mode
14928 *
14929 * Return: CSR WMM mode
14930 */
14931eCsrRoamWmmUserModeType hdd_to_csr_wmm_mode(enum hdd_wmm_user_mode mode);
14932
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080014933/* Function declarations and documenation */
Jeff Johnson723234b2017-09-03 08:49:15 -070014934QDF_STATUS hdd_parse_config_ini(struct hdd_context *hdd_ctx);
Rajeev Kumar Sirasanagandlaaec0b082017-06-21 11:59:41 +053014935
14936/**
14937 * hdd_validate_prb_req_ie_bitmap - validates user input for ie bit map
14938 * @hdd_ctx: the pointer to hdd context
14939 *
14940 * This function checks whether user has entered valid probe request
14941 * ie bitmap and also verifies vendor ouis if vendor specific ie is set
14942 *
14943 * Return: status of verification
14944 * true - valid input
14945 * false - invalid input
14946 */
Jeff Johnsonb6909be2017-08-28 12:07:19 -070014947bool hdd_validate_prb_req_ie_bitmap(struct hdd_context *hdd_ctx);
Rajeev Kumar Sirasanagandlaaec0b082017-06-21 11:59:41 +053014948
14949/**
14950 * hdd_parse_probe_req_ouis - form ouis from ini gProbeReqOUIs
14951 * @hdd_ctx: the pointer to hdd context
14952 *
14953 * This function parses the ini string gProbeReqOUIs which needs be to in the
14954 * following format:
14955 * "<8 characters of [0-9] or [A-F]>space<8 characters from [0-9] etc.,"
14956 * example: "AABBCCDD 1122EEFF"
14957 * and the logic counts the number of OUIS and allocates the memory
Jeff Johnsonb6909be2017-08-28 12:07:19 -070014958 * for every valid OUI and is stored in struct hdd_context
Rajeev Kumar Sirasanagandlaaec0b082017-06-21 11:59:41 +053014959 *
14960 * Return: status of parsing
14961 * 0 - success
14962 * negative value - failure
14963 */
Jeff Johnsonb6909be2017-08-28 12:07:19 -070014964int hdd_parse_probe_req_ouis(struct hdd_context *hdd_ctx);
Rajeev Kumar Sirasanagandlaaec0b082017-06-21 11:59:41 +053014965
Jeff Johnson723234b2017-09-03 08:49:15 -070014966QDF_STATUS hdd_update_mac_config(struct hdd_context *hdd_ctx);
14967QDF_STATUS hdd_set_sme_config(struct hdd_context *hdd_ctx);
14968QDF_STATUS hdd_set_policy_mgr_user_cfg(struct hdd_context *hdd_ctx);
Jeff Johnsonb6909be2017-08-28 12:07:19 -070014969QDF_STATUS hdd_set_sme_chan_list(struct hdd_context *hdd_ctx);
Jeff Johnson723234b2017-09-03 08:49:15 -070014970bool hdd_update_config_cfg(struct hdd_context *hdd_ctx);
14971QDF_STATUS hdd_cfg_get_global_config(struct hdd_context *hdd_ctx, char *pBuf,
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080014972 int buflen);
14973
Srinivas Girigowda2fb677c2017-03-25 15:35:34 -070014974eCsrPhyMode hdd_cfg_xlate_to_csr_phy_mode(enum hdd_dot11_mode dot11Mode);
Jeff Johnson723234b2017-09-03 08:49:15 -070014975QDF_STATUS hdd_execute_global_config_command(struct hdd_context *hdd_ctx,
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080014976 char *command);
14977
Jeff Johnson723234b2017-09-03 08:49:15 -070014978bool hdd_is_okc_mode_enabled(struct hdd_context *hdd_ctx);
Arunk Khandavalli847969d2017-09-25 15:15:36 +053014979QDF_STATUS hdd_set_idle_ps_config(struct hdd_context *hdd_ctx, bool val);
Jeff Johnson723234b2017-09-03 08:49:15 -070014980void hdd_get_pmkid_modes(struct hdd_context *hdd_ctx,
Deepak Dhamdhere828f1892017-02-09 11:51:19 -080014981 struct pmkid_mode_bits *pmkid_modes);
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080014982
Jeff Johnson8abc5932018-06-02 22:51:37 -070014983void hdd_update_tgt_cfg(hdd_handle_t hdd_handle, struct wma_tgt_cfg *cfg);
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080014984
Jeff Johnson9268e092017-11-03 08:18:24 -070014985/**
14986 * hdd_string_to_u8_array() - used to convert decimal string into u8 array
14987 * @str: Decimal string
14988 * @array: Array where converted value is stored
14989 * @len: Length of the populated array
14990 * @array_max_len: Maximum length of the array
14991 *
14992 * This API is called to convert decimal string (each byte separated by
14993 * a comma) into an u8 array
14994 *
14995 * Return: QDF_STATUS
14996 */
14997QDF_STATUS hdd_string_to_u8_array(char *str, uint8_t *array,
Jiachao Wu6e9b9f92018-01-03 13:35:40 +080014998 uint8_t *len, uint16_t array_max_len);
Jeff Johnson9268e092017-11-03 08:18:24 -070014999
Anurag Chouhanfb54ab02016-02-18 18:00:46 +053015000QDF_STATUS hdd_hex_string_to_u16_array(char *str, uint16_t *int_array,
Krishna Kumaar Natarajanf599c6e2015-11-03 11:44:03 -080015001 uint8_t *len, uint8_t int_array_max_len);
15002
Jeff Johnson723234b2017-09-03 08:49:15 -070015003void hdd_cfg_print(struct hdd_context *hdd_ctx);
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080015004
Kiran Kumar Lokere44a29432018-01-24 16:10:30 -080015005QDF_STATUS hdd_update_nss(struct hdd_adapter *adapter, uint8_t nss);
Arif Hussaincd151632017-02-11 16:57:19 -080015006
15007/**
15008 * hdd_dfs_indicate_radar() - Block tx as radar found on the channel
15009 * @hdd_ctxt: HDD context pointer
15010 *
15011 * This function is invoked in atomic context when a radar
15012 * is found on the SAP current operating channel and Data Tx
15013 * from netif has to be stopped to honor the DFS regulations.
15014 * Actions: Stop the netif Tx queues,Indicate Radar present
15015 * in HDD context for future usage.
15016 *
15017 * Return: true on success, else false
15018 */
Jeff Johnsonb6909be2017-08-28 12:07:19 -070015019bool hdd_dfs_indicate_radar(struct hdd_context *hdd_ctx);
Arif Hussaincd151632017-02-11 16:57:19 -080015020
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080015021#endif