blob: 9bf7abc0f1312fa0e4097edf828881a09cde3c32 [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"
Dundi Raviteja8e338282018-09-25 17:16:04 +053041#include "hdd_config.h"
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080042
Jeff Johnsonb6909be2017-08-28 12:07:19 -070043struct hdd_context;
44
jitiphil869b9f72018-09-25 17:14:01 +053045#define CFG_DP_RPS_RX_QUEUE_CPU_MAP_LIST_LEN 30
46
Jiachao Wu6e9b9f92018-01-03 13:35:40 +080047#define FW_MODULE_LOG_LEVEL_STRING_LENGTH (512)
gbian62edd7e2017-03-07 13:12:13 +080048#define TX_SCHED_WRR_PARAM_STRING_LENGTH (50)
49#define TX_SCHED_WRR_PARAMS_NUM (5)
Nirav Shahbd36b062016-07-18 11:12:59 +053050
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080051#ifdef DHCP_SERVER_OFFLOAD
52#define IPADDR_NUM_ENTRIES (4)
53#define IPADDR_STRING_LENGTH (16)
54#endif
55
56/* Number of items that can be configured */
Srinivas Girigowdaba3091c2015-11-16 17:18:40 -080057#define MAX_CFG_INI_ITEMS 1024
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080058
Pragaspathi Thilagaraj48d273c2018-08-31 00:53:02 +053059#define CFG_TX_AGGREGATION_SIZE_MIN 0
60#define CFG_TX_AGGREGATION_SIZE_MAX 64
61#define CFG_RX_AGGREGATION_SIZE_MIN 1
62#define CFG_RX_AGGREGATION_SIZE_MAX 64
63
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080064/* Defines for all of the things we read from the configuration (registry). */
Ashish Kumar Dhanotiya470af292017-05-31 20:46:00 +053065/*
66 * <ini>
67 * gEnableConnectedScan - Will enable or disable scan in connected state
68 * @Min: 0
69 * @Max: 1
70 * @Default: 1
71 *
72 * This ini is used to enable or disable the scanning in
73 * Connected state
74 *
75 * Related: None
76 *
77 * Supported Feature: STA
78 *
79 * Usage: External
80 *
81 * <ini>
82 */
83
84#define CFG_ENABLE_CONNECTED_SCAN_NAME "gEnableConnectedScan"
85#define CFG_ENABLE_CONNECTED_SCAN_MIN (0)
86#define CFG_ENABLE_CONNECTED_SCAN_MAX (1)
87#define CFG_ENABLE_CONNECTED_SCAN_DEFAULT (1)
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080088
wadesong5cea9122018-11-12 18:05:39 +080089/*
90 * <ini>
wadesong5cea9122018-11-12 18:05:39 +080091 * g11dSupportEnabled - Enable/Disable 11d support
92 * @Min: 0
93 * @Max: 1
94 * @Default: 1
95 *
96 * This ini is used to enable or disable 11d support.
97 *
98 * Related: None
99 *
100 * Supported Feature: STA
101 *
102 * Usage: Internal/External
103 *
104 * </ini>
105 */
Prakash Dhavali7090c5f2015-11-02 17:55:19 -0800106#define CFG_11D_SUPPORT_ENABLED_NAME "g11dSupportEnabled"
107#define CFG_11D_SUPPORT_ENABLED_MIN WNI_CFG_11D_ENABLED_STAMIN
108#define CFG_11D_SUPPORT_ENABLED_MAX WNI_CFG_11D_ENABLED_STAMAX
109#define CFG_11D_SUPPORT_ENABLED_DEFAULT WNI_CFG_11D_ENABLED_STADEF /* Default is ON */
110
Amar Singhal0fcce7d2018-08-01 13:20:58 -0700111/*
112 * <ini>
113 * enable_11d_in_world_mode - enable 11d in world mode
114 * @Min: 0
115 * @Max: 1
116 * @Default: 0
117 *
118 * This ini enables 11d in world mode, irrespective of value of
119 * g11dSupportEnabled
120 *
121 * Usage: External
122 *
123 * </ini>
124 */
125 #define CFG_ENABLE_11D_IN_WORLD_MODE_NAME "enable_11d_in_world_mode"
126 #define CFG_ENABLE_11D_IN_WORLD_MODE_MIN (0)
127 #define CFG_ENABLE_11D_IN_WORLD_MODE_MAX (1)
128 #define CFG_ENABLE_11D_IN_WORLD_MODE_DEFAULT (0)
129
wadesong5cea9122018-11-12 18:05:39 +0800130/*
131 * <ini>
132 * g11hSupportEnabled - Enable/Disable 11h support
133 * @Min: 0
134 * @Max: 1
135 * @Default: 1
136 *
137 * This ini is used to enable or disable 11h support.
138 *
139 * Related: None
140 *
141 * Supported Feature: STA
142 *
143 * Usage: Internal/External
144 *
145 * </ini>
146 */
147
Prakash Dhavali7090c5f2015-11-02 17:55:19 -0800148#define CFG_11H_SUPPORT_ENABLED_NAME "g11hSupportEnabled"
149#define CFG_11H_SUPPORT_ENABLED_MIN (0)
150#define CFG_11H_SUPPORT_ENABLED_MAX (1)
151#define CFG_11H_SUPPORT_ENABLED_DEFAULT (1) /* Default is ON */
152
Prakash Dhavali7090c5f2015-11-02 17:55:19 -0800153#define CFG_REG_CHANGE_DEF_COUNTRY_NAME "gRegulatoryChangeCountry"
154#define CFG_REG_CHANGE_DEF_COUNTRY_DEFAULT (0)
155#define CFG_REG_CHANGE_DEF_COUNTRY_MIN (0)
156#define CFG_REG_CHANGE_DEF_COUNTRY_MAX (1)
157
wadesong5cea9122018-11-12 18:05:39 +0800158/*
159 * <ini>
160 * gAdvertiseConcurrentOperation - Iface combination advertising
161 * @Min: 0
162 * @Max: 1
163 * @Default: 1
164 *
165 * This ini is used to control whether driver should indicate to kernel
166 * wiphy layer the combination of all its interfaces' supportability.
167 *
168 * Related: None
169 *
170 * Supported Feature: STA
171 *
172 * Usage: Internal/External
173 *
174 * </ini>
175 */
176
Prakash Dhavali7090c5f2015-11-02 17:55:19 -0800177#define CFG_ADVERTISE_CONCURRENT_OPERATION_NAME "gAdvertiseConcurrentOperation"
178#define CFG_ADVERTISE_CONCURRENT_OPERATION_DEFAULT (1)
179#define CFG_ADVERTISE_CONCURRENT_OPERATION_MIN (0)
180#define CFG_ADVERTISE_CONCURRENT_OPERATION_MAX (1)
181
Srinivas Girigowda2fb677c2017-03-25 15:35:34 -0700182enum hdd_dot11_mode {
Prakash Dhavali7090c5f2015-11-02 17:55:19 -0800183 eHDD_DOT11_MODE_AUTO = 0, /* covers all things we support */
184 eHDD_DOT11_MODE_abg, /* 11a/b/g only, no HT, no proprietary */
185 eHDD_DOT11_MODE_11b,
186 eHDD_DOT11_MODE_11g,
187 eHDD_DOT11_MODE_11n,
188 eHDD_DOT11_MODE_11g_ONLY,
189 eHDD_DOT11_MODE_11n_ONLY,
190 eHDD_DOT11_MODE_11b_ONLY,
191 eHDD_DOT11_MODE_11ac_ONLY,
192 eHDD_DOT11_MODE_11ac,
193 eHDD_DOT11_MODE_11a,
Krishna Kumaar Natarajan4f1d7722017-03-03 21:12:51 -0800194 eHDD_DOT11_MODE_11ax_ONLY,
195 eHDD_DOT11_MODE_11ax,
Srinivas Girigowda2fb677c2017-03-25 15:35:34 -0700196};
Prakash Dhavali7090c5f2015-11-02 17:55:19 -0800197
Sen, Devendra9ca8c432017-02-23 15:10:26 +0530198/*
199 * <ini>
200 * gChannelBondingMode24GHz - Configures Channel Bonding in 24 GHz
201 * @Min: 0
202 * @Max: 10
203 * @Default: 0
204 *
205 * This ini is used to set default channel bonding mode 24GHZ
206 *
207 * Related: None
208 *
209 * Supported Feature: STA
210 *
211 * Usage: Internal/External
212 *
213 * </ini>
214 */
215
Prakash Dhavali7090c5f2015-11-02 17:55:19 -0800216#define CFG_CHANNEL_BONDING_MODE_24GHZ_NAME "gChannelBondingMode24GHz"
217#define CFG_CHANNEL_BONDING_MODE_MIN WNI_CFG_CHANNEL_BONDING_MODE_STAMIN
218#define CFG_CHANNEL_BONDING_MODE_MAX WNI_CFG_CHANNEL_BONDING_MODE_STAMAX
219#define CFG_CHANNEL_BONDING_MODE_DEFAULT WNI_CFG_CHANNEL_BONDING_MODE_STADEF
220
Sen, Devendra9ca8c432017-02-23 15:10:26 +0530221/*
222 * <ini>
223 * gChannelBondingMode5GHz - Configures Channel Bonding in 5 GHz
224 * @Min: 0
225 * @Max: 10
226 * @Default: 0
227 *
228 * This ini is used to set default channel bonding mode 5GHZ
229 *
230 * Related: None
231 *
232 * Supported Feature: STA
233 *
234 * Usage: Internal/External
235 *
236 * </ini>
237 */
238
Prakash Dhavali7090c5f2015-11-02 17:55:19 -0800239#define CFG_CHANNEL_BONDING_MODE_5GHZ_NAME "gChannelBondingMode5GHz"
240#define CFG_CHANNEL_BONDING_MODE_MIN WNI_CFG_CHANNEL_BONDING_MODE_STAMIN
241#define CFG_CHANNEL_BONDING_MODE_MAX WNI_CFG_CHANNEL_BONDING_MODE_STAMAX
242#define CFG_CHANNEL_BONDING_MODE_DEFAULT WNI_CFG_CHANNEL_BONDING_MODE_STADEF
243
Sen, Devendra9ca8c432017-02-23 15:10:26 +0530244/*
245 * <ini>
yeshwanth sriram guntukabdfe4352017-02-16 14:44:31 +0530246 * gScanResultAgeCount - Set scan result age count
247 * @Min: 1
248 * @Max: 100
249 * @Default: 1
250 *
251 * This ini parameter is the number of times a scan
252 * doesn't find it before it is removed from results.
253 *
254 * Related: None
255 *
256 * Supported Feature: Scan
257 *
258 * Usage: External
259 *
260 * </ini>
261 */
Prakash Dhavali7090c5f2015-11-02 17:55:19 -0800262#define CFG_SCAN_RESULT_AGE_COUNT_NAME "gScanResultAgeCount"
263#define CFG_SCAN_RESULT_AGE_COUNT_MIN (1)
264#define CFG_SCAN_RESULT_AGE_COUNT_MAX (100)
Jeff Johnsoncb331d92016-09-22 12:43:49 -0700265#define CFG_SCAN_RESULT_AGE_COUNT_DEFAULT (1)
Prakash Dhavali7090c5f2015-11-02 17:55:19 -0800266
yeshwanth sriram guntukabdfe4352017-02-16 14:44:31 +0530267/*
268 * <ini>
yeshwanth sriram guntukabdfe4352017-02-16 14:44:31 +0530269 * gEnableDFSChnlScan - Enable DFS channel scan
270 * @Min: 0
271 * @Max: 1
272 * @Default: 1
273 *
274 * This ini is used to enable or disable DFS channel
275 * scan
Deepak Dhamdhere828f1892017-02-09 11:51:19 -0800276 */
277#define CFG_ENABLE_DFS_CHNL_SCAN_NAME "gEnableDFSChnlScan"
278#define CFG_ENABLE_DFS_CHNL_SCAN_MIN (0)
279#define CFG_ENABLE_DFS_CHNL_SCAN_MAX (1)
280#define CFG_ENABLE_DFS_CHNL_SCAN_DEFAULT (1)
281
282/*
283 * <ini>
Wu Gao94488c22018-03-14 14:37:25 +0800284 * gEnableDFSPnoChnlScan - enable dfs channels in PNO scan
yeshwanth sriram guntukabdfe4352017-02-16 14:44:31 +0530285 * @Min: 0
286 * @Max: 1
287 * @Default: 1
288 *
Wu Gao94488c22018-03-14 14:37:25 +0800289 * This ini is used to enable/disable dfs channels in PNO scan request,
290 * enabling this ini enables driver to include dfs channels in its
291 * PNO scan request
292 * Related: NA
yeshwanth sriram guntukabdfe4352017-02-16 14:44:31 +0530293 *
Wu Gao94488c22018-03-14 14:37:25 +0800294 * Supported Feature: DFS, PNO
yeshwanth sriram guntukabdfe4352017-02-16 14:44:31 +0530295 *
Wu Gao94488c22018-03-14 14:37:25 +0800296 * Usage: Internal/External
yeshwanth sriram guntukabdfe4352017-02-16 14:44:31 +0530297 *
298 * </ini>
299 */
300#define CFG_ENABLE_DFS_PNO_CHNL_SCAN_NAME "gEnableDFSPnoChnlScan"
301#define CFG_ENABLE_DFS_PNO_CHNL_SCAN_MIN (0)
302#define CFG_ENABLE_DFS_PNO_CHNL_SCAN_MAX (1)
303#define CFG_ENABLE_DFS_PNO_CHNL_SCAN_DEFAULT (1)
304
305/*
306 * <ini>
307 * gEnableFirstScan2GOnly - Enable first scan 2G only
308 * @Min: 0
309 * @Max: 1
310 * @Default: 0
311 *
312 * This ini is used to scan 2G channels only in first scan.
313 *
314 * Related: None
315 *
316 * Supported Feature: Scan
317 *
318 * Usage: External
319 *
320 * </ini>
321 */
322#define CFG_ENABLE_FIRST_SCAN_2G_ONLY_NAME "gEnableFirstScan2GOnly"
323#define CFG_ENABLE_FIRST_SCAN_2G_ONLY_MIN (0)
324#define CFG_ENABLE_FIRST_SCAN_2G_ONLY_MAX (1)
325#define CFG_ENABLE_FIRST_SCAN_2G_ONLY_DEFAULT (0)
326
327/*
328 * <ini>
329 * gScanAgingTime - Set scan aging time
330 * @Min: 0
331 * @Max: 200
332 * @Default: 30
333 *
334 * This ini is used to set scan aging timeout value
335 * in secs. For example after 30 secs the bss results
336 * greater than 30secs age will be flushed.
337 *
338 * Related: None
339 *
340 * Supported Feature: Scan
341 *
342 * Usage: External
343 *
344 * </ini>
345 */
346#define CFG_SCAN_AGING_PARAM_NAME "gScanAgingTime"
347#define CFG_SCAN_AGING_PARAM_MIN (0)
348#define CFG_SCAN_AGING_PARAM_MAX (200)
Varun Reddy Yeturuc4631fb2017-07-06 15:13:53 -0700349#ifdef QCA_WIFI_NAPIER_EMULATION
350#define CFG_SCAN_AGING_PARAM_DEFAULT (90)
351#else
yeshwanth sriram guntukabdfe4352017-02-16 14:44:31 +0530352#define CFG_SCAN_AGING_PARAM_DEFAULT (30)
Varun Reddy Yeturuc4631fb2017-07-06 15:13:53 -0700353#endif
yeshwanth sriram guntukabdfe4352017-02-16 14:44:31 +0530354
355#ifdef FEATURE_WLAN_SCAN_PNO
356/*
357 * <ini>
358 * gPNOScanSupport - Enable or Disable PNO scan
359 * @Min: 1
360 * @Max: 0
361 * @Default: 1
362 *
363 * This ini is used to Enable or Disable PNO scan
364 *
365 * Related: None
366 *
367 * Supported Feature: Scan
368 *
369 * Usage: External
370 *
371 * </ini>
372 */
373#define CFG_PNO_SCAN_SUPPORT "gPNOScanSupport"
374#define CFG_PNO_SCAN_SUPPORT_ENABLE (1)
375#define CFG_PNO_SCAN_SUPPORT_DISABLE (0)
376#define CFG_PNO_SCAN_SUPPORT_DEFAULT (1)
377
378/*
379 * <ini>
380 * gPNOScanTimerRepeatValue - Set PNO scan timer repeat value
381 * @Min: 30
382 * @Max: 0
383 * @Default: 0xffffffff
384 *
385 * This ini is used by firmware to set fast scan max cycles
386 * equal to gPNOScanTimerRepeatValue. Taking power consumption
387 * into account firmware after gPNOScanTimerRepeatValue times
388 * fast_scan_period switches to slow_scan_period.
389 *
390 * Related: None
391 *
392 * Supported Feature: Scan
393 *
394 * Usage: External
395 *
396 * </ini>
397 */
398#define CFG_PNO_SCAN_TIMER_REPEAT_VALUE "gPNOScanTimerRepeatValue"
399#define CFG_PNO_SCAN_TIMER_REPEAT_VALUE_DEFAULT (30)
400#define CFG_PNO_SCAN_TIMER_REPEAT_VALUE_MIN (0)
401#define CFG_PNO_SCAN_TIMER_REPEAT_VALUE_MAX (0xffffffff)
402
403/*
404 * <ini>
405 * gPNOSlowScanMultiplier - Set PNO slow scan multiplier
406 * @Min: 6
407 * @Max: 0
408 * @Default: 30
409 *
410 * This ini is used by firmware to set slow scan period
411 * as gPNOSlowScanMultiplier times fast_scan_period.
412 *
413 * Related: None
414 *
415 * Supported Feature: Scan
416 *
417 * Usage: External
418 *
419 * </ini>
420 */
421#define CFG_PNO_SLOW_SCAN_MULTIPLIER "gPNOSlowScanMultiplier"
422#define CFG_PNO_SLOW_SCAN_MULTIPLIER_DEFAULT (6)
423#define CFG_PNO_SLOW_SCAN_MULTIPLIER_MIN (0)
424#define CFG_PNO_SLOW_SCAN_MULTIPLIER_MAX (30)
425#endif
426
427/*
428 * <ini>
429 * max_scan_count - Set maximum number of scans
430 * @Min: 1
431 * @Max: 8
432 * @Default: 4
433 *
434 * This ini is used to set the maximum number of
435 * scans that host can queue at firmware.
436 * Rome firmware support 8 scan queue size and 4
437 * are reserved for internal scan requests like
438 * roaming. So host can send 4 scan requests.
439 * In iHelium, there is no constraint in number of
440 * scan queue size at firmware but the current use
441 * cases needs support of maximum of 4 scan request
442 * from host.
443 *
444 * Related: None
445 *
446 * Supported Feature: Scan
447 *
448 * Usage: External
449 *
450 * </ini>
451 */
452#define CFG_MAX_SCAN_COUNT_NAME "max_scan_count"
453#define CFG_MAX_SCAN_COUNT_MIN (1)
454#define CFG_MAX_SCAN_COUNT_MAX (8)
455#define CFG_MAX_SCAN_COUNT_DEFAULT (4)
456
457/*
458 * <ini>
459 * gPassiveMaxChannelTime - Set max channel time for passive scan
460 * @Min: 0
461 * @Max: 10000
462 * @Default: 110
463 *
464 * This ini is used to set maximum channel time in secs spent in
465 * passive scan
466 *
467 * Related: None
468 *
469 * Supported Feature: Scan
470 *
471 * Usage: External
472 *
473 * </ini>
474 */
475#define CFG_PASSIVE_MAX_CHANNEL_TIME_NAME "gPassiveMaxChannelTime"
476#define CFG_PASSIVE_MAX_CHANNEL_TIME_MIN (0)
477#define CFG_PASSIVE_MAX_CHANNEL_TIME_MAX (10000)
478#define CFG_PASSIVE_MAX_CHANNEL_TIME_DEFAULT (110)
479
480/*
481 * <ini>
yeshwanth sriram guntukabdfe4352017-02-16 14:44:31 +0530482 * gActiveMaxChannelTime - Set max channel time for active scan
483 * @Min: 0
484 * @Max: 10000
485 * @Default: 40
486 *
487 * This ini is used to set maximum channel time in secs spent in
488 * active scan
489 *
490 * Related: None
491 *
492 * Supported Feature: Scan
493 *
494 * Usage: External
495 *
496 * </ini>
497 */
498#define CFG_ACTIVE_MAX_CHANNEL_TIME_NAME "gActiveMaxChannelTime"
499#define CFG_ACTIVE_MAX_CHANNEL_TIME_MIN (0)
500#define CFG_ACTIVE_MAX_CHANNEL_TIME_MAX (10000)
501#define CFG_ACTIVE_MAX_CHANNEL_TIME_DEFAULT (40)
502
503/*
504 * <ini>
Kiran Kumar Lokerea2dfefe2017-06-29 19:01:24 -0700505 * gScanNumProbes - Set the number of probes on each channel for active scan
506 * @Min: 0
507 * @Max: 20
508 * @Default: 0
509 *
510 * This ini is used to set number of probes on each channel for
511 * active scan
512 *
513 * Related: None
514 *
515 * Supported Feature: Scan
516 *
517 * Usage: External
518 *
519 * </ini>
520 */
521#define CFG_SCAN_NUM_PROBES_NAME "gScanNumProbes"
522#define CFG_SCAN_NUM_PROBES_MIN (0)
523#define CFG_SCAN_NUM_PROBES_MAX (20)
524#define CFG_SCAN_NUM_PROBES_DEFAULT (0)
525
526/*
527 * <ini>
528 * gScanProbeRepeatTime - Set the probe repeat time on each channel for active scan
529 * @Min: 0
530 * @Max: 30
531 * @Default: 0
532 *
533 * This ini is used to set probe repeat time on each channel for
534 * active scan
535 *
536 * Related: None
537 *
538 * Supported Feature: Scan
539 *
540 * Usage: External
541 *
542 * </ini>
543 */
544#define CFG_SCAN_PROBE_REPEAT_TIME_NAME "gScanProbeRepeatTime"
545#define CFG_SCAN_PROBE_REPEAT_TIME_MIN (0)
546#define CFG_SCAN_PROBE_REPEAT_TIME_MAX (30)
547#define CFG_SCAN_PROBE_REPEAT_TIME_DEFAULT (0)
548
yeshwanth sriram guntukabdfe4352017-02-16 14:44:31 +0530549/*
550 * <ini>
551 * gChPredictionFullScanMs - Set periodic timer for channel
552 * prediction
553 * @Min: 3000
554 * @Max: 0x7fffffff
555 * @Default: 60000
556 *
557 * This ini is used to set the periodic timer upon which
558 * a full scan needs to be triggered when PNO channel
559 * prediction feature is enabled. This parameter is intended
560 * to tweak the internal algortihm for experiments.
561 *
562 * Related: None
563 *
564 * Supported Feature: Scan
565 *
566 * Usage: Internal
567 *
568 * </ini>
569 */
570#define CFG_CHANNEL_PREDICTION_FULL_SCAN_MS_NAME "gChPredictionFullScanMs"
571#define CFG_CHANNEL_PREDICTION_FULL_SCAN_MS_MIN (30000)
572#define CFG_CHANNEL_PREDICTION_FULL_SCAN_MS_MAX (0x7fffffff)
573#define CFG_CHANNEL_PREDICTION_FULL_SCAN_MS_DEFAULT (60000)
574
575/*
576 * <ini>
yeshwanth sriram guntukabdfe4352017-02-16 14:44:31 +0530577 * gbug_report_for_scan_results - Enable bug report
578 * @Min: 0
579 * @Max: 1
580 * @Default: 0
581 *
582 * This ini is used to create bug report in
583 * case of nil scan results.
584 *
585 * Related: None
586 *
587 * Supported Feature: Scan
588 *
589 * Usage: External
590 *
591 * </ini>
592 */
593#define CFG_CREATE_BUG_REPORT_FOR_SCAN "gbug_report_for_scan_results"
594#define CFG_CREATE_BUG_REPORT_FOR_SCAN_DISABLE (0)
595#define CFG_CREATE_BUG_REPORT_FOR_SCAN_ENABLE (1)
596#define CFG_CREATE_BUG_REPORT_FOR_SCAN_DEFAULT (0)
597
598/*
599 * <ini>
600 * hostscan_adaptive_dwell_mode - Enable adaptive dwell mode
Paul Zhang72697bd2017-12-20 09:24:25 +0800601 * during host scan with conneciton
yeshwanth sriram guntukabdfe4352017-02-16 14:44:31 +0530602 * @Min: 0
603 * @Max: 4
Paul Zhang72697bd2017-12-20 09:24:25 +0800604 * @Default: 2
yeshwanth sriram guntukabdfe4352017-02-16 14:44:31 +0530605 *
606 * This ini will set the algo used in dwell time optimization
Paul Zhang72697bd2017-12-20 09:24:25 +0800607 * during host scan with connection.
Sandeep Puligillaf5ccbf62018-03-26 16:37:05 -0700608 * See enum scan_dwelltime_adaptive_mode.
yeshwanth sriram guntukabdfe4352017-02-16 14:44:31 +0530609 * Acceptable values for this:
610 * 0: Default (Use firmware default mode)
611 * 1: Conservative optimization
612 * 2: Moderate optimization
613 * 3: Aggressive optimization
614 * 4: Static
615 *
616 * Related: None
617 *
618 * Supported Feature: Scan
619 *
620 * Usage: External
621 *
622 * </ini>
623 */
624#define CFG_ADAPTIVE_SCAN_DWELL_MODE_NAME "hostscan_adaptive_dwell_mode"
625#define CFG_ADAPTIVE_SCAN_DWELL_MODE_MIN (0)
626#define CFG_ADAPTIVE_SCAN_DWELL_MODE_MAX (4)
Paul Zhang72697bd2017-12-20 09:24:25 +0800627#define CFG_ADAPTIVE_SCAN_DWELL_MODE_DEFAULT (2)
628
629/*
630 * <ini>
631 * hostscan_adaptive_dwell_mode_no_conn - Enable adaptive dwell mode
632 * during host scan without connection
633 * @Min: 0
634 * @Max: 4
635 * @Default: 1
636 *
637 * This ini will set the algo used in dwell time optimization
638 * during host scan without connection.
Sandeep Puligillaf5ccbf62018-03-26 16:37:05 -0700639 * See enum scan_dwelltime_adaptive_mode.
Paul Zhang72697bd2017-12-20 09:24:25 +0800640 * Acceptable values for this:
641 * 0: Default (Use firmware default mode)
642 * 1: Conservative optimization
643 * 2: Moderate optimization
644 * 3: Aggressive optimization
645 * 4: Static
646 *
647 * Related: None
648 *
649 * Supported Feature: Scan
650 *
651 * Usage: External
652 *
653 * </ini>
654 */
655#define CFG_ADAPTIVE_SCAN_DWELL_MODE_NC_NAME "hostscan_adaptive_dwell_mode_no_conn"
656#define CFG_ADAPTIVE_SCAN_DWELL_MODE_NC_MIN (0)
657#define CFG_ADAPTIVE_SCAN_DWELL_MODE_NC_MAX (4)
658#define CFG_ADAPTIVE_SCAN_DWELL_MODE_NC_DEFAULT (1)
yeshwanth sriram guntukabdfe4352017-02-16 14:44:31 +0530659
660/*
661 * <ini>
662 * extscan_adaptive_dwell_mode - Enable adaptive dwell mode
663 * during ext scan
664 * @Min: 0
665 * @Max: 4
Arif Hussaindcb9ead2017-03-09 16:41:00 -0800666 * @Default: 1
yeshwanth sriram guntukabdfe4352017-02-16 14:44:31 +0530667 *
668 * This ini will set the algo used in dwell time optimization
Sandeep Puligillaf5ccbf62018-03-26 16:37:05 -0700669 * during ext scan. see enum scan_dwelltime_adaptive_mode.
yeshwanth sriram guntukabdfe4352017-02-16 14:44:31 +0530670 * Acceptable values for this:
671 * 0: Default (Use firmware default mode)
672 * 1: Conservative optimization
673 * 2: Moderate optimization
674 * 3: Aggressive optimization
675 * 4: Static
676 *
677 * Related: None
678 *
679 * Supported Feature: Scan
680 *
681 * Usage: External
682 *
683 * </ini>
684 */
685#define CFG_ADAPTIVE_EXTSCAN_DWELL_MODE_NAME "extscan_adaptive_dwell_mode"
686#define CFG_ADAPTIVE_EXTSCAN_DWELL_MODE_MIN (0)
687#define CFG_ADAPTIVE_EXTSCAN_DWELL_MODE_MAX (4)
Arif Hussaindcb9ead2017-03-09 16:41:00 -0800688#define CFG_ADAPTIVE_EXTSCAN_DWELL_MODE_DEFAULT (1)
yeshwanth sriram guntukabdfe4352017-02-16 14:44:31 +0530689
690/*
691 * <ini>
692 * pnoscan_adaptive_dwell_mode - Enable adaptive dwell mode
693 * during pno scan
694 * @Min: 0
695 * @Max: 4
Arif Hussaindcb9ead2017-03-09 16:41:00 -0800696 * @Default: 1
yeshwanth sriram guntukabdfe4352017-02-16 14:44:31 +0530697 *
698 * This ini will set the algo used in dwell time optimization
Sandeep Puligillaf5ccbf62018-03-26 16:37:05 -0700699 * during pno scan. see enum scan_dwelltime_adaptive_mode.
yeshwanth sriram guntukabdfe4352017-02-16 14:44:31 +0530700 * Acceptable values for this:
701 * 0: Default (Use firmware default mode)
702 * 1: Conservative optimization
703 * 2: Moderate optimization
704 * 3: Aggressive optimization
705 * 4: Static
706 *
707 * Related: None
708 *
709 * Supported Feature: Scan
710 *
711 * Usage: External
712 *
713 * </ini>
714 */
715#define CFG_ADAPTIVE_PNOSCAN_DWELL_MODE_NAME "pnoscan_adaptive_dwell_mode"
716#define CFG_ADAPTIVE_PNOSCAN_DWELL_MODE_MIN (0)
717#define CFG_ADAPTIVE_PNOSCAN_DWELL_MODE_MAX (4)
Arif Hussaindcb9ead2017-03-09 16:41:00 -0800718#define CFG_ADAPTIVE_PNOSCAN_DWELL_MODE_DEFAULT (1)
yeshwanth sriram guntukabdfe4352017-02-16 14:44:31 +0530719
720/*
721 * <ini>
722 * adaptive_dwell_mode_enabled - Enable adaptive dwell mode
723 * @Min: 0
724 * @Max: 1
725 * @Default: 1
726 *
727 * This parameter will globally disable/enable the adaptive dwell config.
728 * Following parameters will set different values of attributes for dwell
729 * time optimization thus reducing total scan time.
730 * Acceptable values for this:
731 * 0: Config is disabled
732 * 1: Config is enabled
733 *
734 * Related: None
735 *
736 * Supported Feature: Scan
737 *
738 * Usage: External
739 *
740 * </ini>
741 */
742#define CFG_ADAPTIVE_DWELL_MODE_ENABLED_NAME "adaptive_dwell_mode_enabled"
743#define CFG_ADAPTIVE_DWELL_MODE_ENABLED_MIN (0)
744#define CFG_ADAPTIVE_DWELL_MODE_ENABLED_MAX (1)
745#define CFG_ADAPTIVE_DWELL_MODE_ENABLED_DEFAULT (1)
746
747/*
748 * <ini>
749 * global_adapt_dwelltime_mode - Set default adaptive mode
750 * @Min: 0
751 * @Max: 4
Arif Hussaindcb9ead2017-03-09 16:41:00 -0800752 * @Default: 0
yeshwanth sriram guntukabdfe4352017-02-16 14:44:31 +0530753 *
754 * This parameter will set default adaptive mode, will be used if any of the
755 * scan dwell mode is set to default.
Sandeep Puligillaf5ccbf62018-03-26 16:37:05 -0700756 * For uses : see enum scan_dwelltime_adaptive_mode
yeshwanth sriram guntukabdfe4352017-02-16 14:44:31 +0530757 *
758 * Related: None
759 *
760 * Supported Feature: Scan
761 *
762 * Usage: External
763 *
764 * </ini>
765 */
766#define CFG_GLOBAL_ADAPTIVE_DWELL_MODE_NAME "global_adapt_dwelltime_mode"
767#define CFG_GLOBAL_ADAPTIVE_DWELL_MODE_MIN (0)
768#define CFG_GLOBAL_ADAPTIVE_DWELL_MODE_MAX (4)
Arif Hussaindcb9ead2017-03-09 16:41:00 -0800769#define CFG_GLOBAL_ADAPTIVE_DWELL_MODE_DEFAULT (0)
yeshwanth sriram guntukabdfe4352017-02-16 14:44:31 +0530770
Sen, Devendra9ca8c432017-02-23 15:10:26 +0530771/*
772 * <ini>
773 * gRssiCatGap - Set Rssi CatGap
774 * @Min: 5
775 * @Max: 100
776 * @Default: 5
777 *
778 * This ini is used to set default RssiCatGap
779 *
780 * Related: None
781 *
782 * Supported Feature: STA
783 *
784 * Usage: Internal/External
785 *
786 * </ini>
787 */
788
Prakash Dhavali7090c5f2015-11-02 17:55:19 -0800789#define CFG_RSSI_CATEGORY_GAP_NAME "gRssiCatGap"
790#define CFG_RSSI_CATEGORY_GAP_MIN (5)
791#define CFG_RSSI_CATEGORY_GAP_MAX (100)
792#define CFG_RSSI_CATEGORY_GAP_DEFAULT (5)
793
Selvaraj, Sridharf7939832017-03-25 16:59:50 +0530794/*
795 * <ini>
Selvaraj, Sridharf7939832017-03-25 16:59:50 +0530796 * OkcEnabled - Enable OKC(Oppurtunistic Key Caching)
797 * @Min: 0
798 * @Max: 1
799 * @Default: 1
800 *
801 * This INI is used to enable OKC feature
802 *
803 * Related: None
804 *
805 * Supported Feature: Roaming
806 *
807 * Usage: External
808 *
809 * </ini>
810 */
811#define CFG_OKC_FEATURE_ENABLED_NAME "OkcEnabled"
812#define CFG_OKC_FEATURE_ENABLED_MIN (0)
813#define CFG_OKC_FEATURE_ENABLED_MAX (1)
814#define CFG_OKC_FEATURE_ENABLED_DEFAULT (1)
815
816/*
817 * <ini>
Naveen Rawatb2fc4132017-05-10 20:42:05 -0700818 * gForce1x1Exception - force 1x1 when connecting to certain peer
819 * @Min: 0
820 * @Max: 1
821 * @Default: 0
822 *
823 * This INI when enabled will force 1x1 connection with certain peer.
824 *
825 *
826 * Related: None
827 *
828 * Supported Feature: connection
829 *
830 * Usage: External
831 *
832 * </ini>
833 */
834#define CFG_FORCE_1X1_NAME "gForce1x1Exception"
835#define CFG_FORCE_1X1_MIN (0)
836#define CFG_FORCE_1X1_MAX (1)
Nachiket Kukade4fa80f42017-07-31 17:40:42 +0530837#define CFG_FORCE_1X1_DEFAULT (1)
Naveen Rawatb2fc4132017-05-10 20:42:05 -0700838
Selvaraj, Sridharf7939832017-03-25 16:59:50 +0530839#ifdef FEATURE_LFR_SUBNET_DETECTION
840/*
841 * <ini>
842 * gLFRSubnetDetectionEnable - Enable LFR3 subnet detection
843 * @Min: 0
844 * @Max: 1
845 * @Default: 1
846 *
847 * Enable IP subnet detection during legacy fast roming version 3. Legacy fast
848 * roaming could roam across IP subnets without host processors' knowledge.
849 * This feature enables firmware to wake up the host processor if it
850 * successfully determines change in the IP subnet. Change in IP subnet could
851 * potentially cause disruption in IP connnectivity if IP address is not
852 * refreshed.
853 *
854 * Related: None
855 *
856 * Supported Feature: Roaming
857 *
858 * Usage: External
859 *
860 * </ini>
861 */
862#define CFG_ENABLE_LFR_SUBNET_DETECTION "gLFRSubnetDetectionEnable"
863#define CFG_ENABLE_LFR_SUBNET_MIN (0)
864#define CFG_ENABLE_LFR_SUBNET_MAX (1)
865#define CFG_ENABLE_LFR_SUBNET_DEFAULT (1)
866#endif /* FEATURE_LFR_SUBNET_DETECTION */
867
868/*
869 * <ini>
Abhinav Kumar271f0632018-03-29 16:01:30 +0530870 * enable_ftopen - enable/disable FT open feature
871 * @Min: 0
872 * @Max: 1
873 * @Default: 1
874 *
875 * This INI is used to enable/disable FT open feature
876*
877* Related: None
878*
879* Supported Feature: Roaming
880*
881* Usage: External
882*
883* </ini>
884*/
885#define CFG_ROAM_FT_OPEN_ENABLE_NAME "enable_ftopen"
886#define CFG_ROAM_FT_OPEN_ENABLE_MIN (0)
887#define CFG_ROAM_FT_OPEN_ENABLE_MAX (1)
888#define CFG_ROAM_FT_OPEN_ENABLE_DEFAULT (1)
889
890/*
891 * <ini>
Abhinav Kumara95af7c2018-04-06 17:08:00 +0530892 * min_delay_btw_roam_scans - Min duration (in sec) allowed btw two
893 * consecutive roam scans
894 * @Min: 0
895 * @Max: 60
896 * @Default: 10
897 *
898 * Roam scan is not allowed if duration between two consecutive
899 * roam scans is less than this time.
900 *
901 * Related: None
902 *
903 * Supported Feature: Roaming
904 *
905 * Usage: External
906 *
907 * </ini>
908 */
909#define CFG_MIN_DELAY_BTW_ROAM_SCAN_NAME "min_delay_btw_roam_scans"
910#define CFG_MIN_DELAY_BTW_ROAM_SCAN_MIN (0)
911#define CFG_MIN_DELAY_BTW_ROAM_SCAN_MAX (60)
912#define CFG_MIN_DELAY_BTW_ROAM_SCAN_DEFAULT (10)
913
914/*
915 * <ini>
916 * roam_trigger_reason_bitmask - Contains roam_trigger_reasons
917 * @Min: 0
918 * @Max: 0xFFFFFFFF
919 * @Default: 0xDA
920 *
921 * Bitmask containing roam_trigger_reasons for which
922 * min_delay_btw_roam_scans constraint should be applied.
923 * Currently supported bit positions are as follows:
924 * Bit 0 is reserved in the firmware.
925 * WMI_ROAM_TRIGGER_REASON_PER - 1
926 * WMI_ROAM_TRIGGER_REASON_BMISS - 2
927 * WMI_ROAM_TRIGGER_REASON_LOW_RSSI - 3
928 * WMI_ROAM_TRIGGER_REASON_HIGH_RSSI - 4
929 * WMI_ROAM_TRIGGER_REASON_PERIODIC - 5
930 * WMI_ROAM_TRIGGER_REASON_MAWC - 6
931 * WMI_ROAM_TRIGGER_REASON_DENSE - 7
932 * WMI_ROAM_TRIGGER_REASON_BACKGROUND - 8
933 * WMI_ROAM_TRIGGER_REASON_FORCED - 9
934 * WMI_ROAM_TRIGGER_REASON_BTM - 10
935 * WMI_ROAM_TRIGGER_REASON_UNIT_TEST - 11
936 * WMI_ROAM_TRIGGER_REASON_MAX - 12
937 *
938 * For Ex: 0xDA (PER, LOW_RSSI, HIGH_RSSI, MAWC, DENSE)
939 *
940 * Related: None
941 *
942 * Supported Feature: Roaming
943 *
944 * Usage: External
945 *
946 * </ini>
947 */
948#define CFG_ROAM_SCAN_TRIGGER_REASON_BITMASK_NAME "roam_trigger_reason_bitmask"
949#define CFG_ROAM_SCAN_TRIGGER_REASON_BITMASK_MIN (0)
950#define CFG_ROAM_SCAN_TRIGGER_REASON_BITMASK_MAX (0xFFFFFFFF)
951#define CFG_ROAM_SCAN_TRIGGER_REASON_BITMASK_DEFAULT (0xDA)
952
953/*
954 * <ini>
Vignesh Viswanathanc018e982017-09-07 18:49:19 +0530955 * roam_bad_rssi_thresh_offset_2g - RSSI threshold offset for 2G to 5G roam
956 * @Min: 0
957 * @Max: 86
958 * @Default: 40
959 *
960 * If the DUT is connected to an AP with weak signal in 2G band, then the
961 * bad RSSI offset for 2g would be used as offset from the bad RSSI
962 * threshold configured and then use the resulting rssi for an opportunity
963 * to use the scan results from other scan clients and try to roam to
964 * 5G Band ONLY if there is a better AP available in the environment.
965 *
966 * For example if the roam_bg_scan_bad_rssi_thresh is -76 and
967 * roam_bad_rssi_thresh_offset_2g is 40 then the difference of -36 would be
968 * used as a trigger to roam to a 5G AP if DUT initially connected to a 2G AP
969 *
970 * Related: roam_bg_scan_bad_rssi_thresh
971 *
972 * Supported Feature: Roaming
973 *
974 * Usage: External
975 *
976 * </ini>
977 */
978#define CFG_ROAM_BG_SCAN_BAD_RSSI_OFFSET_2G_NAME "roam_bad_rssi_thresh_offset_2g"
979#define CFG_ROAM_BG_SCAN_BAD_RSSI_OFFSET_2G_MIN (0)
980#define CFG_ROAM_BG_SCAN_BAD_RSSI_OFFSET_2G_MAX (86)
981#define CFG_ROAM_BG_SCAN_BAD_RSSI_OFFSET_2G_DEFAULT (40)
982
983/*
984 * <ini>
Abhinav Kumara083f212018-04-05 18:49:45 +0530985 * ho_delay_for_rx - Delay Hand-off (In msec) by this duration to receive
986 * pending rx frames from current BSS
987 * @Min: 0
988 * @Max: 200
989 * @Default: 0
990 *
991 * For LFR 3.0 roaming scenario, once roam candidate is found, firmware
992 * waits for minimum this much duration to receive pending rx frames from
993 * current BSS before switching to new channel for handoff to new AP.
994 *
995 * Related: None
996 *
997 * Supported Feature: Roaming
998 *
999 * Usage: External
1000 *
1001 * </ini>
1002 */
1003#define CFG_ROAM_HO_DELAY_FOR_RX_NAME "ho_delay_for_rx"
1004#define CFG_ROAM_HO_DELAY_FOR_RX_MIN (0)
1005#define CFG_ROAM_HO_DELAY_FOR_RX_MAX (200)
1006#define CFG_ROAM_HO_DELAY_FOR_RX_DEFAULT (0)
1007
1008/*
1009 * <ini>
Abhinav Kumaredd1d372018-05-11 15:33:35 +05301010 * roam_force_rssi_trigger - To force RSSI trigger
1011 * irrespective of channel list type
1012 * @Min: 0
1013 * @Max: 1
1014 * @Default: 1
1015 *
1016 * This ini is used to set roam scan mode
1017 * WMI_ROAM_SCAN_MODE_RSSI_CHANGE, irrespective of whether
1018 * channel list type is CHANNEL_LIST_STATIC or not
1019 *
1020 * Related: None
1021 *
1022 * Supported Feature: Roaming
1023 *
1024 * Usage: External
1025 *
1026 * </ini>
1027 */
1028#define CFG_ROAM_FORCE_RSSI_TRIGGER_NAME "roam_force_rssi_trigger"
1029#define CFG_ROAM_FORCE_RSSI_TRIGGER_MIN (0)
1030#define CFG_ROAM_FORCE_RSSI_TRIGGER_MAX (1)
1031#define CFG_ROAM_FORCE_RSSI_TRIGGER_DEFAULT (1)
1032
1033/*
Sen, Devendra9ca8c432017-02-23 15:10:26 +05301034 * <ini>
Abhishek Singh49b654e2016-12-01 16:11:17 +05301035 * gIbssBssid - Default IBSS BSSID if BSSID is not provided by supplicant
1036 * @Min: "000000000000"
1037 * @Max: "ffffffffffff"
1038 * @Default: "000AF5040506"
1039 *
1040 * This ini is used to set Default IBSS BSSID if BSSID
1041 * is not provided by supplicant and Coalesing is disabled
1042 *
1043 * Related: Only applicable if gCoalesingInIBSS is 0
1044 *
1045 * Supported Feature: IBSS
1046 *
1047 * Usage: Internal/External
1048 *
1049 * </ini>
1050 */
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08001051#define CFG_IBSS_BSSID_NAME "gIbssBssid"
1052#define CFG_IBSS_BSSID_MIN "000000000000"
1053#define CFG_IBSS_BSSID_MAX "ffffffffffff"
1054#define CFG_IBSS_BSSID_DEFAULT "000AF5040506"
1055
Abhishek Singh49b654e2016-12-01 16:11:17 +05301056/*
1057 * <ini>
1058 * gAdHocChannel5G - Default 5Ghz IBSS channel if channel is not
1059 * provided by supplicant.
1060 * @Min: 36
1061 * @Max: 165
1062 * @Default: 44
1063 *
1064 * This ini is used to set default 5Ghz IBSS channel
1065 * if channel is not provided by supplicant and band is 5Ghz
1066 *
1067 * Related: None
1068 *
1069 * Supported Feature: IBSS
1070 *
1071 * Usage: Internal/External
1072 *
1073 * </ini>
1074 */
1075#define CFG_IBSS_ADHOC_CHANNEL_5GHZ_NAME "gAdHocChannel5G"
1076#define CFG_IBSS_ADHOC_CHANNEL_5GHZ_MIN (36)
1077#define CFG_IBSS_ADHOC_CHANNEL_5GHZ_MAX (165)
1078#define CFG_IBSS_ADHOC_CHANNEL_5GHZ_DEFAULT (44)
1079
1080/*
1081 * <ini>
1082 * gAdHocChannel24G - Default 2.4Ghz IBSS channel if channel is not
1083 * provided by supplicant.
1084 * @Min: 1
1085 * @Max: 14
1086 * @Default: 6
1087 *
1088 * This ini is used to set default 2.4Ghz IBSS channel
1089 * if channel is not provided by supplicant and band is 2.4Ghz
1090 *
1091 * Related: None
1092 *
1093 * Supported Feature: IBSS
1094 *
1095 * Usage: Internal/External
1096 *
1097 * </ini>
1098 */
1099#define CFG_IBSS_ADHOC_CHANNEL_24GHZ_NAME "gAdHocChannel24G"
1100#define CFG_IBSS_ADHOC_CHANNEL_24GHZ_MIN (1)
1101#define CFG_IBSS_ADHOC_CHANNEL_24GHZ_MAX (14)
1102#define CFG_IBSS_ADHOC_CHANNEL_24GHZ_DEFAULT (6)
1103
1104/*
1105 * <ini>
1106 * gCoalesingInIBSS - If IBSS coalesing is enabled.
1107 * @Min: 0
1108 * @Max: 1
1109 * @Default: 0
1110 *
1111 * This ini is used to set IBSS coalesing
1112 *
1113 * Related: None
1114 *
1115 * Supported Feature: IBSS
1116 *
1117 * Usage: Internal/External
1118 *
1119 * </ini>
1120 */
1121#define CFG_COALESING_IN_IBSS_NAME "gCoalesingInIBSS"
1122#define CFG_COALESING_IN_IBSS_MIN (0)
1123#define CFG_COALESING_IN_IBSS_MAX (1)
1124#define CFG_COALESING_IN_IBSS_DEFAULT (0) /* disabled */
1125
1126/*
1127 * <ini>
1128 * gIbssATIMWinSize - Set IBSS ATIM window size
1129 * @Min: 0
1130 * @Max: 50
1131 * @Default: 0
1132 *
1133 * This ini is used to set IBSS ATIM window size
1134 *
1135 * Related: None
1136 *
1137 * Supported Feature: IBSS
1138 *
1139 * Usage: Internal/External
1140 *
1141 * </ini>
1142 */
1143#define CFG_IBSS_ATIM_WIN_SIZE_NAME "gIbssATIMWinSize"
1144#define CFG_IBSS_ATIM_WIN_SIZE_MIN (0)
1145#define CFG_IBSS_ATIM_WIN_SIZE_MAX (50)
1146#define CFG_IBSS_ATIM_WIN_SIZE_DEFAULT (0)
1147
1148
1149/*
1150 * <ini>
1151 * gIbssIsPowerSaveAllowed - Indicates if IBSS Power Save is
1152 * supported or not
1153 * @Min: 0
1154 * @Max: 1
1155 * @Default: 1
1156 *
1157 * This ini is used to Indicates if IBSS Power Save is
1158 * supported or not. When not allowed,IBSS station has
1159 * to stay awake all the time and should never set PM=1
1160 * in its transmitted frames.
1161 *
1162 * Related: valid only when gIbssATIMWinSize is non-zero
1163 *
1164 * Supported Feature: IBSS
1165 *
1166 * Usage: Internal/External
1167 *
1168 * </ini>
1169 */
1170#define CFG_IBSS_IS_POWER_SAVE_ALLOWED_NAME "gIbssIsPowerSaveAllowed"
1171#define CFG_IBSS_IS_POWER_SAVE_ALLOWED_MIN (0)
1172#define CFG_IBSS_IS_POWER_SAVE_ALLOWED_MAX (1)
1173#define CFG_IBSS_IS_POWER_SAVE_ALLOWED_DEFAULT (1)
1174
1175/*
1176 * <ini>
1177 * gIbssIsPowerCollapseAllowed - Indicates if IBSS Power Collapse
1178 * is allowed
1179 * @Min: 0
1180 * @Max: 1
1181 * @Default: 1
1182 *
1183 * This ini is used to indicates if IBSS Power Collapse
1184 * is allowed
1185 *
1186 * Related: None
1187 *
1188 * Supported Feature: IBSS
1189 *
1190 * Usage: Internal/External
1191 *
1192 * </ini>
1193 */
1194#define CFG_IBSS_IS_POWER_COLLAPSE_ALLOWED_NAME "gIbssIsPowerCollapseAllowed"
1195#define CFG_IBSS_IS_POWER_COLLAPSE_ALLOWED_MIN (0)
1196#define CFG_IBSS_IS_POWER_COLLAPSE_ALLOWED_MAX (1)
1197#define CFG_IBSS_IS_POWER_COLLAPSE_ALLOWED_DEFAULT (1)
1198
1199/*
1200 * <ini>
1201 * gIbssAwakeOnTxRx - Indicates whether IBSS station
1202 * can exit power save mode and enter power active
1203 * state whenever there is a TX/RX activity.
1204 *
1205 * @Min: 0
1206 * @Max: 1
1207 * @Default: 0
1208 *
1209 * This ini is used to ndicates whether IBSS station
1210 * can exit power save mode and enter power active
1211 * state whenever there is a TX/RX activity.
1212 *
1213 * Related: None
1214 *
1215 * Supported Feature: IBSS
1216 *
1217 * Usage: Internal/External
1218 *
1219 * </ini>
1220 */
1221#define CFG_IBSS_AWAKE_ON_TX_RX_NAME "gIbssAwakeOnTxRx"
1222#define CFG_IBSS_AWAKE_ON_TX_RX_MIN (0)
1223#define CFG_IBSS_AWAKE_ON_TX_RX_MAX (1)
1224#define CFG_IBSS_AWAKE_ON_TX_RX_DEFAULT (0)
1225
1226/*
1227 * <ini>
1228 * gIbssInactivityTime - Indicates the data
1229 * inactivity time in number of beacon intervals
1230 * after which IBSS station re-inters power save
1231 *
1232 * @Min: 1
1233 * @Max: 10
1234 * @Default: 1
1235 *
1236 * In IBSS mode if Awake on TX/RX activity is enabled
1237 * Ibss Inactivity parameter indicates the data
1238 * inactivity time in number of beacon intervals
1239 * after which IBSS station re-inters power save
1240 * by sending Null frame with PM=1
1241 *
1242 * Related: Aplicable if gIbssAwakeOnTxRx is enabled
1243 *
1244 * Supported Feature: IBSS
1245 *
1246 * Usage: Internal/External
1247 *
1248 * </ini>
1249 */
1250#define CFG_IBSS_INACTIVITY_TIME_NAME "gIbssInactivityTime"
1251#define CFG_IBSS_INACTIVITY_TIME_MIN (1)
1252#define CFG_IBSS_INACTIVITY_TIME_MAX (10)
1253#define CFG_IBSS_INACTIVITY_TIME_DEFAULT (1)
1254
1255/*
1256 * <ini>
1257 * gIbssTxSpEndInactivityTime - Indicates the time after
1258 * which TX Service Period is terminated by
1259 * sending a Qos Null frame with EOSP.
1260 *
1261 * @Min: 0
1262 * @Max: 100
1263 * @Default: 0
1264 *
1265 * In IBSS mode Tx Service Period Inactivity
1266 * time in msecs indicates the time after
1267 * which TX Service Period is terminated by
1268 * sending a Qos Null frame with EOSP.
1269 * If value is 0, TX SP is terminated with the
1270 * last buffered packet itself instead of waiting
1271 * for the inactivity.
1272 *
1273 * Related: None
1274 *
1275 * Supported Feature: IBSS
1276 *
1277 * Usage: Internal/External
1278 *
1279 * </ini>
1280 */
1281#define CFG_IBSS_TXSP_END_INACTIVITY_NAME "gIbssTxSpEndInactivityTime"
1282#define CFG_IBSS_TXSP_END_INACTIVITY_MIN (0)
1283#define CFG_IBSS_TXSP_END_INACTIVITY_MAX (100)
1284#define CFG_IBSS_TXSP_END_INACTIVITY_DEFAULT (0)
1285
1286/*
1287 * <ini>
1288 * gIbssPsWarmupTime - PS-supporting device
1289 * does not enter protocol sleep state during first
1290 * gIbssPsWarmupTime seconds.
1291 *
1292 * @Min: 0
1293 * @Max: 65535
1294 * @Default: 0
1295 *
1296 * When IBSS network is initialized, PS-supporting device
1297 * does not enter protocol sleep state during first
1298 * gIbssPsWarmupTime seconds.
1299 *
1300 * Related: valid if gIbssIsPowerSaveAllowed is set
1301 *
1302 * Supported Feature: IBSS
1303 *
1304 * Usage: Internal/External
1305 *
1306 * </ini>
1307 */
1308#define CFG_IBSS_PS_WARMUP_TIME_NAME "gIbssPsWarmupTime"
1309#define CFG_IBSS_PS_WARMUP_TIME_MIN (0)
1310/* Allow unsigned Int Max for now */
1311#define CFG_IBSS_PS_WARMUP_TIME_MAX (65535)
1312#define CFG_IBSS_PS_WARMUP_TIME_DEFAULT (0)
1313
1314/*
1315 * <ini>
Sen, Devendrac441b212017-02-23 15:40:42 +05301316 * gIbssPs1RxChainInAtim - IBSS Power Save Enable/Disable 1 RX
Abhishek Singh49b654e2016-12-01 16:11:17 +05301317 * chain usage during the ATIM window
1318 *
1319 * @Min: 0
1320 * @Max: 1
1321 * @Default: 0
1322 *
1323 * IBSS Power Save Enable/Disable 1 RX
1324 * chain usage during the ATIM window
1325 *
1326 * Related: Depend on gIbssIsPowerSaveAllowed
1327 *
1328 * Supported Feature: IBSS
1329 *
1330 * Usage: Internal/External
1331 *
1332 * </ini>
1333 */
1334#define CFG_IBSS_PS_1RX_CHAIN_IN_ATIM_WINDOW_NAME "gIbssPs1RxChainInAtim"
1335#define CFG_IBSS_PS_1RX_CHAIN_IN_ATIM_WINDOW_MIN (0)
1336#define CFG_IBSS_PS_1RX_CHAIN_IN_ATIM_WINDOW_MAX (1)
1337#define CFG_IBSS_PS_1RX_CHAIN_IN_ATIM_WINDOW_DEFAULT (0)
1338
Paul Zhang99fe8842017-12-08 14:43:46 +08001339/*
1340 * <ini>
1341 * wlm_latency_enable - WLM latency Enable
1342 *
1343 * @min: 0
1344 * @max: 1
1345 * @default: 0
1346 *
1347 * 0 - disable
1348 * 1 - enable
1349 *
1350 * </ini>
1351 */
1352#define CFG_LATENCY_ENABLE_NAME "wlm_latency_enable"
1353#define CFG_LATENCY_ENABLE_MIN (0)
1354#define CFG_LATENCY_ENABLE_MAX (1)
1355#define CFG_LATENCY_ENABLE_DEFAULT (0)
Abhishek Singh49b654e2016-12-01 16:11:17 +05301356
Paul Zhang99fe8842017-12-08 14:43:46 +08001357/*
1358 * <ini>
1359 * wlm_latency_level - WLM latency level
1360 * Define 4 latency level to gain latency
1361 *
1362 * @min: 0
1363 * @max: 3
1364 * @defalut: 0
1365 *
1366 * 0 - normal
1367 * 1 - moderate
1368 * 2 - low
1369 * 3 - ultralow
1370 *
1371 * </ini>
1372 */
1373#define CFG_LATENCY_LEVEL_NAME "wlm_latency_level"
1374#define CFG_LATENCY_LEVEL_MIN (0)
1375#define CFG_LATENCY_LEVEL_MAX (3)
1376#define CFG_LATENCY_LEVEL_DEFAULT (0)
Abhishek Singh49b654e2016-12-01 16:11:17 +05301377
Paul Zhang99fe8842017-12-08 14:43:46 +08001378/*
1379 * <ini>
1380 * wlm_latency_flags_normal - WLM flags setting for normal level
1381 *
1382 * @min: 0x0
1383 * @max: 0xffffffff
1384 * @defalut: 0x0
1385 *
1386 * |31 12| 11 | 10 |9 8|7 6|5 4|3 2| 1 | 0 |
1387 * +------+------+------+------+------+------+------+-----+-----+
1388 * | RSVD | SSLP | CSLP | RSVD | Roam | RSVD | DWLT | DFS | SUP |
1389 * +------+-------------+-------------+-------------------------+
1390 * | WAL | PS | Roam | Scan |
1391 *
1392 * bit 0: Avoid scan request from HLOS if setting
1393 * bit 1: Skip DFS channel SCAN if setting
1394 * bit 2-3: Define policy of dwell time/duration for each foreign channel
1395 * (b2 b3)
1396 * (0 0 ): Default scan dwell time
1397 * (0 1 ): Reserve
1398 * (1 0 ): Shrink off channel dwell time
1399 * (1 1 ): Reserve
1400 * bit 4-5: Reserve for scan
1401 * bit 6-7: Define roaming policy
1402 * (b6 b7)
1403 * (0 0 ): Default roaming behavior, allow roaming in all scenarios
1404 * (0 1 ): Disallow all roaming
1405 * (1 0 ): Allow roaming when final bmissed
1406 * (1 1 ): Reserve
1407 * bit 8-9: Reserve for roaming
1408 * bit 10: Disable css power collapse if setting
1409 * bit 11: Disable sys sleep if setting
1410 * bit 12-31: Reserve for future useage
1411 *
1412 * </ini>
1413 */
1414#define CFG_LATENCY_FLAGS_NORMAL_NAME "wlm_latency_flags_normal"
1415#define CFG_LATENCY_FLAGS_NORMAL_MIN (0x0)
1416#define CFG_LATENCY_FLAGS_NORMAL_MAX (0xffffffff)
1417#define CFG_LATENCY_FLAGS_NORMAL_DEFAULT (0x0)
1418
1419/*
1420 * <ini>
1421 * wlm_latency_flags_moderate - WLM flags setting for moderate level
1422 *
1423 * @min: 0x0
1424 * @max: 0xffffffff
1425 * @defalut: 0x8
1426 *
1427 * |31 12| 11 | 10 |9 8|7 6|5 4|3 2| 1 | 0 |
1428 * +------+------+------+------+------+------+------+-----+-----+
1429 * | RSVD | SSLP | CSLP | RSVD | Roam | RSVD | DWLT | DFS | SUP |
1430 * +------+-------------+-------------+-------------------------+
1431 * | WAL | PS | Roam | Scan |
1432 *
1433 * bit 0: Avoid scan request from HLOS if setting
1434 * bit 1: Skip DFS channel SCAN if setting
1435 * bit 2-3: Define policy of dwell time/duration for each foreign channel
1436 * (b2 b3)
1437 * (0 0 ): Default scan dwell time
1438 * (0 1 ): Reserve
1439 * (1 0 ): Shrink off channel dwell time
1440 * (1 1 ): Reserve
1441 * bit 4-5: Reserve for scan
1442 * bit 6-7: Define roaming policy
1443 * (b6 b7)
1444 * (0 0 ): Default roaming behavior, allow roaming in all scenarios
1445 * (0 1 ): Disallow all roaming
1446 * (1 0 ): Allow roaming when final bmissed
1447 * (1 1 ): Reserve
1448 * bit 8-9: Reserve for roaming
1449 * bit 10: Disable css power collapse if setting
1450 * bit 11: Disable sys sleep if setting
1451 * bit 12-31: Reserve for future useage
1452 *
1453 * </ini>
1454 */
1455#define CFG_LATENCY_FLAGS_MODERATE_NAME "wlm_latency_flags_moderate"
1456#define CFG_LATENCY_FLAGS_MODERATE_MIN (0x0)
1457#define CFG_LATENCY_FLAGS_MODERATE_MAX (0xffffffff)
1458#define CFG_LATENCY_FLAGS_MODERATE_DEFAULT (0x8)
1459
1460/*
1461 * <ini>
1462 * wlm_latency_flags_low - WLM flags setting for low level
1463 *
1464 * @min: 0x0
1465 * @max: 0xffffffff
1466 * @defalut: 0xa
1467 *
1468 * |31 12| 11 | 10 |9 8|7 6|5 4|3 2| 1 | 0 |
1469 * +------+------+------+------+------+------+------+-----+-----+
1470 * | RSVD | SSLP | CSLP | RSVD | Roam | RSVD | DWLT | DFS | SUP |
1471 * +------+-------------+-------------+-------------------------+
1472 * | WAL | PS | Roam | Scan |
1473 *
1474 * bit 0: Avoid scan request from HLOS if setting
1475 * bit 1: Skip DFS channel SCAN if setting
1476 * bit 2-3: Define policy of dwell time/duration for each foreign channel
1477 * (b2 b3)
1478 * (0 0 ): Default scan dwell time
1479 * (0 1 ): Reserve
1480 * (1 0 ): Shrink off channel dwell time
1481 * (1 1 ): Reserve
1482 * bit 4-5: Reserve for scan
1483 * bit 6-7: Define roaming policy
1484 * (b6 b7)
1485 * (0 0 ): Default roaming behavior, allow roaming in all scenarios
1486 * (0 1 ): Disallow all roaming
1487 * (1 0 ): Allow roaming when final bmissed
1488 * (1 1 ): Reserve
1489 * bit 8-9: Reserve for roaming
1490 * bit 10: Disable css power collapse if setting
1491 * bit 11: Disable sys sleep if setting
1492 * bit 12-31: Reserve for future useage
1493 *
1494 * </ini>
1495 */
1496#define CFG_LATENCY_FLAGS_LOW_NAME "wlm_latency_flags_low"
1497#define CFG_LATENCY_FLAGS_LOW_MIN (0x0)
1498#define CFG_LATENCY_FLAGS_LOW_MAX (0xffffffff)
1499#define CFG_LATENCY_FLAGS_LOW_DEFAULT (0xa)
1500
1501/*
1502 * <ini>
1503 * wlm_latency_flags_ultralow - WLM flags setting for ultralow level
1504 *
1505 * @min: 0x0
1506 * @max: 0xffffffff
Paul Zhangc2ad86c2018-09-21 10:35:28 +08001507 * @defalut: 0xc83
Paul Zhang99fe8842017-12-08 14:43:46 +08001508 *
1509 * |31 12| 11 | 10 |9 8|7 6|5 4|3 2| 1 | 0 |
1510 * +------+------+------+------+------+------+------+-----+-----+
1511 * | RSVD | SSLP | CSLP | RSVD | Roam | RSVD | DWLT | DFS | SUP |
1512 * +------+-------------+-------------+-------------------------+
1513 * | WAL | PS | Roam | Scan |
1514 *
1515 * bit 0: Avoid scan request from HLOS if setting
1516 * bit 1: Skip DFS channel SCAN if setting
1517 * bit 2-3: Define policy of dwell time/duration for each foreign channel
1518 * (b2 b3)
1519 * (0 0 ): Default scan dwell time
1520 * (0 1 ): Reserve
1521 * (1 0 ): Shrink off channel dwell time
1522 * (1 1 ): Reserve
1523 * bit 4-5: Reserve for scan
1524 * bit 6-7: Define roaming policy
1525 * (b6 b7)
1526 * (0 0 ): Default roaming behavior, allow roaming in all scenarios
1527 * (0 1 ): Disallow all roaming
1528 * (1 0 ): Allow roaming when final bmissed
1529 * (1 1 ): Reserve
1530 * bit 8-9: Reserve for roaming
1531 * bit 10: Disable css power collapse if setting
1532 * bit 11: Disable sys sleep if setting
1533 * bit 12-31: Reserve for future useage
1534 *
1535 * </ini>
1536 */
1537#define CFG_LATENCY_FLAGS_ULTRALOW_NAME "wlm_latency_flags_ultralow"
1538#define CFG_LATENCY_FLAGS_ULTRALOW_MIN (0x0)
1539#define CFG_LATENCY_FLAGS_ULTRALOW_MAX (0xffffffff)
Paul Zhangc2ad86c2018-09-21 10:35:28 +08001540#define CFG_LATENCY_FLAGS_ULTRALOW_DEFAULT (0xc83)
Abhishek Singh49b654e2016-12-01 16:11:17 +05301541
wadesong5cea9122018-11-12 18:05:39 +08001542/*
1543 * <ini>
1544 * Intf0MacAddress - Default MAC address of VIF0
1545 * @Min: 000000000000
1546 * @Max: ffffffffffff
1547 * @Default: 000AF58989FF
1548 *
1549 * This ini is used to set the default MAC address of virtual interface 0
1550 * created by WLAN driver.
1551 *
1552 * Related: None.
1553 *
1554 * Supported Feature: SAP
1555 *
1556 * Usage: Internal/External
1557 *
1558 * </ini>
1559 */
1560
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08001561#define CFG_INTF0_MAC_ADDR_NAME "Intf0MacAddress"
1562#define CFG_INTF0_MAC_ADDR_MIN "000000000000"
1563#define CFG_INTF0_MAC_ADDR_MAX "ffffffffffff"
Jeff Johnson9e6ff212016-09-02 10:26:32 -07001564#define CFG_INTF0_MAC_ADDR_DEFAULT "000AF58989FF"
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08001565
wadesong5cea9122018-11-12 18:05:39 +08001566/*
1567 * <ini>
1568 * Intf1MacAddress - Default MAC address of VIF1
1569 * @Min: 000000000000
1570 * @Max: ffffffffffff
1571 * @Default: 000AF58989FE
1572 *
1573 * This ini is used to set the default MAC address of virtual interface 1
1574 * created by WLAN driver.
1575 *
1576 * Related: None.
1577 *
1578 * Supported Feature: SAP
1579 *
1580 * Usage: Internal/External
1581 *
1582 * </ini>
1583 */
1584
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08001585#define CFG_INTF1_MAC_ADDR_NAME "Intf1MacAddress"
1586#define CFG_INTF1_MAC_ADDR_MIN "000000000000"
1587#define CFG_INTF1_MAC_ADDR_MAX "ffffffffffff"
Jeff Johnson9e6ff212016-09-02 10:26:32 -07001588#define CFG_INTF1_MAC_ADDR_DEFAULT "000AF58989FE"
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08001589
wadesong5cea9122018-11-12 18:05:39 +08001590/*
1591 * <ini>
1592 * Intf2MacAddress - Default MAC address of VIF2
1593 * @Min: 000000000000
1594 * @Max: ffffffffffff
1595 * @Default: 000AF58989FD
1596 *
1597 * This ini is used to set the default MAC address of virtual interface 2
1598 * created by WLAN driver.
1599 *
1600 * Related: None.
1601 *
1602 * Supported Feature: SAP
1603 *
1604 * Usage: Internal/External
1605 *
1606 * </ini>
1607 */
1608
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08001609#define CFG_INTF2_MAC_ADDR_NAME "Intf2MacAddress"
1610#define CFG_INTF2_MAC_ADDR_MIN "000000000000"
1611#define CFG_INTF2_MAC_ADDR_MAX "ffffffffffff"
Jeff Johnson9e6ff212016-09-02 10:26:32 -07001612#define CFG_INTF2_MAC_ADDR_DEFAULT "000AF58989FD"
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08001613
wadesong5cea9122018-11-12 18:05:39 +08001614/*
1615 * <ini>
1616 * Intf3MacAddress - Default MAC address of VIF3
1617 * @Min: 000000000000
1618 * @Max: ffffffffffff
1619 * @Default: 000AF58989FC
1620 *
1621 * This ini is used to set the default MAC address of virtual interface 3
1622 * created by WLAN driver.
1623 *
1624 * Related: None.
1625 *
1626 * Supported Feature: SAP
1627 *
1628 * Usage: Internal/External
1629 *
1630 * </ini>
1631 */
1632
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08001633#define CFG_INTF3_MAC_ADDR_NAME "Intf3MacAddress"
1634#define CFG_INTF3_MAC_ADDR_MIN "000000000000"
1635#define CFG_INTF3_MAC_ADDR_MAX "ffffffffffff"
Jeff Johnson9e6ff212016-09-02 10:26:32 -07001636#define CFG_INTF3_MAC_ADDR_DEFAULT "000AF58989FC"
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08001637
Sreelakshmi Konamki13b5ad52017-01-30 10:48:26 +05301638/*
1639 * <ini>
1640 * gDot11Mode - SAP phy mode
1641 * @Min: 0
Krishna Kumaar Natarajan4f1d7722017-03-03 21:12:51 -08001642 * @Max: 12 (11ax)
1643 * @Default: 12 (11ax)
Sreelakshmi Konamki13b5ad52017-01-30 10:48:26 +05301644 *
1645 * This ini is used to set Phy Mode (auto, b, g, n, etc/) Valid values are
Krishna Kumaar Natarajan4f1d7722017-03-03 21:12:51 -08001646 * 0-12, with 0 = Auto, 12 = 11ax.
Sreelakshmi Konamki13b5ad52017-01-30 10:48:26 +05301647 *
1648 * Related: None.
1649 *
1650 * Supported Feature: SAP
1651 *
1652 * Usage: Internal/External
1653 *
1654 * </ini>
1655 */
1656#define CFG_DOT11_MODE_NAME "gDot11Mode"
1657#define CFG_DOT11_MODE_MIN eHDD_DOT11_MODE_AUTO
Krishna Kumaar Natarajan4f1d7722017-03-03 21:12:51 -08001658#define CFG_DOT11_MODE_DEFAULT eHDD_DOT11_MODE_11ax
1659#define CFG_DOT11_MODE_MAX eHDD_DOT11_MODE_11ax
Sreelakshmi Konamki13b5ad52017-01-30 10:48:26 +05301660
1661/*
1662 * <ini>
Sreelakshmi Konamki13b5ad52017-01-30 10:48:26 +05301663 * gEnableApRandomBssid - Create ramdom BSSID
1664 * @Min: 0
1665 * @Max: 1
1666 * @Default: 0
1667 *
1668 * This ini is used to create a random BSSID in SoftAP mode to meet
1669 * the Android requirement.
1670 *
1671 * Related: None.
1672 *
1673 * Supported Feature: SAP
1674 *
1675 * Usage: Internal/External
1676 *
1677 * </ini>
1678 */
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08001679#define CFG_AP_ENABLE_RANDOM_BSSID_NAME "gEnableApRandomBssid"
1680#define CFG_AP_ENABLE_RANDOM_BSSID_MIN (0)
1681#define CFG_AP_ENABLE_RANDOM_BSSID_MAX (1)
1682#define CFG_AP_ENABLE_RANDOM_BSSID_DEFAULT (0)
1683
Sreelakshmi Konamki13b5ad52017-01-30 10:48:26 +05301684/*
1685 * <ini>
1686 * gEnableApProt - Enable/Disable AP protection
1687 * @Min: 0
1688 * @Max: 1
1689 * @Default: 1
1690 *
1691 * This ini is used to enable/disable AP protection
1692 *
1693 * Related: None.
1694 *
1695 * Supported Feature: SAP
1696 *
1697 * Usage: Internal/External
1698 *
1699 * </ini>
1700 */
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08001701#define CFG_AP_ENABLE_PROTECTION_MODE_NAME "gEnableApProt"
1702#define CFG_AP_ENABLE_PROTECTION_MODE_MIN (0)
1703#define CFG_AP_ENABLE_PROTECTION_MODE_MAX (1)
1704#define CFG_AP_ENABLE_PROTECTION_MODE_DEFAULT (1)
1705
Dustin Brown7bd76332018-02-23 12:10:55 -08001706#define CFG_DISABLE_PACKET_FILTER "gDisablePacketFilter"
1707#define CFG_DISABLE_PACKET_FILTER_MIN (0)
1708#define CFG_DISABLE_PACKET_FILTER_MAX (1)
1709#define CFG_DISABLE_PACKET_FILTER_DEFAULT (1)
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08001710
Nitesh Shah03161d12016-12-06 18:30:12 +05301711/*
1712 * <ini>
1713 * gPassiveMaxChannelTimeConc - Maximum passive scan time in milliseconds.
1714 * @Min: 0
1715 * @Max: 10000
1716 * @Default: 110
1717 *
1718 * This ini is used to set maximum passive scan time in STA+SAP concurrent
1719 * mode.
1720 *
1721 * Related: None.
1722 *
1723 * Supported Feature: Concurrency
1724 *
1725 * Usage: Internal/External
1726 *
1727 * </ini>
1728 */
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08001729#define CFG_PASSIVE_MAX_CHANNEL_TIME_CONC_NAME "gPassiveMaxChannelTimeConc"
1730#define CFG_PASSIVE_MAX_CHANNEL_TIME_CONC_MIN (0)
1731#define CFG_PASSIVE_MAX_CHANNEL_TIME_CONC_MAX (10000)
1732#define CFG_PASSIVE_MAX_CHANNEL_TIME_CONC_DEFAULT (110)
1733
Nitesh Shah03161d12016-12-06 18:30:12 +05301734/*
1735 * <ini>
1736 * gPassiveMinChannelTimeConc - Minimum passive scan time in milliseconds.
1737 * @Min: 0
1738 * @Max: 10000
1739 * @Default: 60
1740 *
1741 * This ini is used to set minimum passive scan time in STA+SAP concurrent
1742 * mode.
1743 *
1744 * Related: None.
1745 *
1746 * Supported Feature: Concurrency
1747 *
1748 * Usage: Internal/External
1749 *
1750 * </ini>
1751 */
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08001752#define CFG_PASSIVE_MIN_CHANNEL_TIME_CONC_NAME "gPassiveMinChannelTimeConc"
1753#define CFG_PASSIVE_MIN_CHANNEL_TIME_CONC_MIN (0)
1754#define CFG_PASSIVE_MIN_CHANNEL_TIME_CONC_MAX (10000)
1755#define CFG_PASSIVE_MIN_CHANNEL_TIME_CONC_DEFAULT (60)
1756
Nitesh Shah03161d12016-12-06 18:30:12 +05301757/*
1758 * <ini>
1759 * gActiveMaxChannelTimeConc - Maximum active scan time in milliseconds.
1760 * @Min: 0
1761 * @Max: 10000
1762 * @Default: 40
1763 *
1764 * This ini is used to set maximum active scan time in STA+SAP concurrent
1765 * mode.
1766 *
1767 * Related: None.
1768 *
1769 * Supported Feature: Concurrency
1770 *
1771 * Usage: Internal/External
1772 *
1773 * </ini>
1774 */
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08001775#define CFG_ACTIVE_MAX_CHANNEL_TIME_CONC_NAME "gActiveMaxChannelTimeConc"
1776#define CFG_ACTIVE_MAX_CHANNEL_TIME_CONC_MIN (0)
1777#define CFG_ACTIVE_MAX_CHANNEL_TIME_CONC_MAX (10000)
1778#define CFG_ACTIVE_MAX_CHANNEL_TIME_CONC_DEFAULT (40)
1779
Nitesh Shah03161d12016-12-06 18:30:12 +05301780/*
1781 * <ini>
1782 * gActiveMinChannelTimeConc - Minimum active scan time in milliseconds..
1783 * @Min: 0
1784 * @Max: 10000
1785 * @Default: 20
1786 *
1787 * This ini is used to set minimum active scan time in STA+SAP concurrent
1788 * mode.
1789 *
1790 * Related: None.
1791 *
1792 * Supported Feature: Concurrency
1793 *
1794 * Usage: Internal/External
1795 *
1796 * </ini>
1797 */
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08001798#define CFG_ACTIVE_MIN_CHANNEL_TIME_CONC_NAME "gActiveMinChannelTimeConc"
1799#define CFG_ACTIVE_MIN_CHANNEL_TIME_CONC_MIN (0)
1800#define CFG_ACTIVE_MIN_CHANNEL_TIME_CONC_MAX (10000)
1801#define CFG_ACTIVE_MIN_CHANNEL_TIME_CONC_DEFAULT (20)
1802
Nitesh Shah03161d12016-12-06 18:30:12 +05301803/*
1804 * <ini>
1805 * gRestTimeConc - Rest time before moving to a new channel to scan.
1806 * @Min: 0
1807 * @Max: 10000
1808 * @Default: 100
1809 *
1810 * This ini is used to configure rest time.
1811 *
1812 * Related: None.
1813 *
1814 * Supported Feature: Concurrency
1815 *
1816 * Usage: Internal/External
1817 *
1818 * </ini>
1819 */
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08001820#define CFG_REST_TIME_CONC_NAME "gRestTimeConc"
1821#define CFG_REST_TIME_CONC_MIN (0)
1822#define CFG_REST_TIME_CONC_MAX (10000)
1823#define CFG_REST_TIME_CONC_DEFAULT (100)
1824
Nitesh Shah03161d12016-12-06 18:30:12 +05301825/*
1826 * <ini>
1827 * gMinRestTimeConc - Mininum time spent on home channel before moving to a
1828 * new channel to scan.
1829 * @Min: 0
1830 * @Max: 50
1831 * @Default: 50
1832 *
1833 * This ini is used to configure minimum time spent on home channel before
1834 * moving to a new channel to scan.
1835 *
1836 * Related: None.
1837 *
1838 * Supported Feature: Concurrency
1839 *
1840 * Usage: Internal/External
1841 *
1842 * </ini>
1843 */
Agrawal Ashish17bb3902016-05-05 13:29:40 +05301844#define CFG_MIN_REST_TIME_NAME "gMinRestTimeConc"
1845#define CFG_MIN_REST_TIME_MIN (0)
1846#define CFG_MIN_REST_TIME_MAX (50)
1847#define CFG_MIN_REST_TIME_DEFAULT (50)
1848
Nitesh Shah03161d12016-12-06 18:30:12 +05301849/*
1850 * <ini>
1851 * gIdleTimeConc - Data inactivity time in msec.
1852 * @Min: 0
1853 * @Max: 25
1854 * @Default: 25
1855 *
1856 * This ini is used to configure data inactivity time in msec on bss channel
1857 * that will be used by scan engine in firmware.
1858 * For example if this value is 25ms then firmware will check for data
1859 * inactivity every 25ms till gRestTimeConc is reached.
1860 * If inactive then scan engine will move from home channel to scan the next
1861 * frequency.
1862 *
1863 * Related: None.
1864 *
1865 * Supported Feature: Concurrency
1866 *
1867 * Usage: Internal/External
1868 *
1869 * </ini>
Agrawal Ashish17bb3902016-05-05 13:29:40 +05301870 */
1871#define CFG_IDLE_TIME_NAME "gIdleTimeConc"
1872#define CFG_IDLE_TIME_MIN (0)
1873#define CFG_IDLE_TIME_MAX (25)
1874#define CFG_IDLE_TIME_DEFAULT (25)
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08001875
wadesong37779152018-11-15 13:08:15 +08001876/*
1877 * <ini>
1878 * gTxPowerCap - WLAN max tx power
1879 * @Min: 0
1880 * @Max: 128
1881 * @Default: 128
1882 *
1883 * This ini is used to configure the device max tx power.
1884 *
1885 * Related: None.
1886 *
1887 * Supported Feature: Concurrency
1888 *
1889 * Usage: Internal/External
1890 *
1891 * </ini>
1892 */
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08001893
1894#define CFG_MAX_TX_POWER_NAME "gTxPowerCap"
1895#define CFG_MAX_TX_POWER_MIN WNI_CFG_CURRENT_TX_POWER_LEVEL_STAMIN
1896#define CFG_MAX_TX_POWER_MAX WNI_CFG_CURRENT_TX_POWER_LEVEL_STAMAX
1897/* Not to use CFG default because if no registry setting, this is ignored by SME. */
1898#define CFG_MAX_TX_POWER_DEFAULT WNI_CFG_CURRENT_TX_POWER_LEVEL_STAMAX
1899
wadesong37779152018-11-15 13:08:15 +08001900/*
1901 * <ini>
Nitesh Shah03161d12016-12-06 18:30:12 +05301902 * gFWMccRtsCtsProtection - RTS-CTS protection in MCC.
1903 * @Min: 0
1904 * @Max: 1
1905 * @Default: 0
1906 *
1907 * This ini is used to enable/disable use of long duration RTS-CTS protection
1908 * when SAP goes off channel in MCC mode.
1909 *
1910 * Related: None.
1911 *
1912 * Supported Feature: Concurrency
1913 *
1914 * Usage: Internal/External
1915 *
1916 * </ini>
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08001917 */
Sen, Devendra9ca8c432017-02-23 15:10:26 +05301918
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08001919#define CFG_FW_MCC_RTS_CTS_PROT_NAME "gFWMccRtsCtsProtection"
1920#define CFG_FW_MCC_RTS_CTS_PROT_MIN (0)
1921#define CFG_FW_MCC_RTS_CTS_PROT_MAX (1)
1922#define CFG_FW_MCC_RTS_CTS_PROT_DEFAULT (0)
1923
Nitesh Shah03161d12016-12-06 18:30:12 +05301924/*
1925 * <ini>
1926 * gFWMccBCastProbeResponse - Broadcast Probe Response in MCC.
1927 * @Min: 0
1928 * @Max: 1
1929 * @Default: 0
1930 *
1931 * This ini is used to enable/disable use of broadcast probe response to
1932 * increase the detectability of SAP in MCC mode.
1933 *
1934 * Related: None.
1935 *
1936 * Supported Feature: Concurrency
1937 *
1938 * Usage: Internal/External
1939 *
1940 * </ini>
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08001941 */
1942#define CFG_FW_MCC_BCAST_PROB_RESP_NAME "gFWMccBCastProbeResponse"
1943#define CFG_FW_MCC_BCAST_PROB_RESP_MIN (0)
1944#define CFG_FW_MCC_BCAST_PROB_RESP_MAX (1)
1945#define CFG_FW_MCC_BCAST_PROB_RESP_DEFAULT (0)
1946
Mukul Sharmaed92f2f2017-04-20 00:06:28 +05301947/*
1948 * <ini>
Mukul Sharmaed92f2f2017-04-20 00:06:28 +05301949 * g_wow_data_inactivity_timeout - Data activity timeout in wow mode.
1950 * @Min: 1
1951 * @Max: 255
1952 * @Default: 50
1953 *
1954 * This ini is used to set data inactivity timeout in wow mode.
1955 *
1956 * Supported Feature: inactivity timeout in wow mode
1957 *
1958 * Usage: External
1959 *
1960 * </ini>
1961 */
1962#define CFG_WOW_DATA_INACTIVITY_TIMEOUT_NAME "g_wow_data_inactivity_timeout"
1963#define CFG_WOW_DATA_INACTIVITY_TIMEOUT_MIN (1)
1964#define CFG_WOW_DATA_INACTIVITY_TIMEOUT_MAX (255)
1965#define CFG_WOW_DATA_INACTIVITY_TIMEOUT_DEFAULT (50)
1966
Dustin Brownb6b0f182017-03-08 13:08:27 -08001967/**
1968 * enum station_keepalive_method - available keepalive methods for stations
1969 * @HDD_STA_KEEPALIVE_NULL_DATA: null data packet
1970 * @HDD_STA_KEEPALIVE_GRAT_ARP: gratuitous ARP packet
1971 * @HDD_STA_KEEPALIVE_COUNT: number of method options available
1972 */
1973enum station_keepalive_method {
1974 HDD_STA_KEEPALIVE_NULL_DATA,
1975 HDD_STA_KEEPALIVE_GRAT_ARP,
1976 /* keep at the end */
1977 HDD_STA_KEEPALIVE_COUNT
1978};
1979
1980/*
1981 * <ini>
1982 * gStaKeepAliveMethod - Which keepalive method to use
1983 * @Min: 0
1984 * @Max: 1
1985 * @Default: 1
1986 *
1987 * This ini determines which keepalive method to use for station interfaces
1988 * 1) Use null data packets
1989 * 2) Use gratuitous ARP packets
1990 *
1991 * Related: gStaKeepAlivePeriod, gApKeepAlivePeriod, gGoKeepAlivePeriod
1992 *
1993 * Supported Feature: STA, Keepalive
1994 *
1995 * Usage: Internal/External
1996 *
1997 * </ini>
1998 */
1999#define CFG_STA_KEEPALIVE_METHOD_NAME "gStaKeepAliveMethod"
2000#define CFG_STA_KEEPALIVE_METHOD_MIN (HDD_STA_KEEPALIVE_NULL_DATA)
2001#define CFG_STA_KEEPALIVE_METHOD_MAX (HDD_STA_KEEPALIVE_COUNT - 1)
2002#define CFG_STA_KEEPALIVE_METHOD_DEFAULT (HDD_STA_KEEPALIVE_GRAT_ARP)
2003
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08002004/* WMM configuration */
Sreelakshmi Konamki9be8d412017-03-01 10:29:08 +05302005/*
2006 * <ini>
Sreelakshmi Konamki9be8d412017-03-01 10:29:08 +05302007 * ImplicitQosIsEnabled - Enableimplicit QOS
2008 * @Min: 0
2009 * @Max: 1
2010 * @Default: 0
2011 *
2012 * This ini is used to enable/disable implicit QOS.
2013 *
2014 * Related: None.
2015 *
2016 * Supported Feature: WMM
2017 *
2018 * Usage: Internal/External
2019 *
2020 * </ini>
2021 */
2022#define CFG_QOS_IMPLICIT_SETUP_ENABLED_NAME "ImplicitQosIsEnabled"
2023#define CFG_QOS_IMPLICIT_SETUP_ENABLED_MIN (0)
2024#define CFG_QOS_IMPLICIT_SETUP_ENABLED_MAX (1)
2025#define CFG_QOS_IMPLICIT_SETUP_ENABLED_DEFAULT (0)
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08002026
Sreelakshmi Konamki9be8d412017-03-01 10:29:08 +05302027/*
2028 * <ini>
Sreelakshmi Konamki9be8d412017-03-01 10:29:08 +05302029 * gAddTSWhenACMIsOff - Set ACM value for AC
2030 * @Min: 0
2031 * @Max: 1
2032 * @Default: 0
2033 *
2034 * This ini is used to set ACM value for AC
2035 *
2036 * Related: None.
2037 *
2038 * Supported Feature: WMM
2039 *
2040 * Usage: Internal/External
2041 *
2042 * </ini>
2043 */
2044#define CFG_QOS_ADDTS_WHEN_ACM_IS_OFF_NAME "gAddTSWhenACMIsOff"
2045#define CFG_QOS_ADDTS_WHEN_ACM_IS_OFF_MIN (0)
2046/* Send AddTs even when ACM is not set for the AC */
2047#define CFG_QOS_ADDTS_WHEN_ACM_IS_OFF_MAX (1)
2048#define CFG_QOS_ADDTS_WHEN_ACM_IS_OFF_DEFAULT (0)
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08002049
wadesong37779152018-11-15 13:08:15 +08002050/*
2051 * <ini>
2052 * DelayedTriggerFrmInt - UAPSD delay interval
2053 * @Min: 1
2054 * @Max: 4294967295
2055 * @Default: 3000
2056 *
2057 * This parameter controls the delay interval(in ms) of UAPSD auto trigger.
2058 *
2059 * Supported Feature: WMM
2060 *
2061 * Usage: Internal/External
2062 *
2063 * </ini>
2064 */
2065
2066#define CFG_TL_DELAYED_TRGR_FRM_INT_NAME "DelayedTriggerFrmInt"
2067#define CFG_TL_DELAYED_TRGR_FRM_INT_MIN 1
2068#define CFG_TL_DELAYED_TRGR_FRM_INT_MAX (4294967295UL)
2069#define CFG_TL_DELAYED_TRGR_FRM_INT_DEFAULT 3000
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08002070
Sreelakshmi Konamkided64d72017-02-23 10:39:26 +05302071/*
2072 * <ini>
2073 * gRrmEnable - Enable/Disable RRM
2074 * @Min: 0
2075 * @Max: 1
2076 * @Default: 0
2077 *
2078 * This ini is used to controls the capabilities (11 k) included
2079 * in the capabilities field.
2080 *
2081 * Related: None.
2082 *
2083 * Supported Feature: 11k
2084 *
2085 * Usage: Internal/External
2086 *
2087 * </ini>
2088 */
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08002089#define CFG_RRM_ENABLE_NAME "gRrmEnable"
2090#define CFG_RRM_ENABLE_MIN (0)
2091#define CFG_RRM_ENABLE_MAX (1)
2092#define CFG_RRM_ENABLE_DEFAULT (0)
2093
Sreelakshmi Konamkided64d72017-02-23 10:39:26 +05302094/*
2095 * <ini>
2096 * gRrmRandnIntvl - Randomization interval
2097 * @Min: 10
2098 * @Max: 100
2099 * @Default: 100
2100 *
2101 * This ini is used to set randomization interval which is used to start a timer
2102 * of a random value within randomization interval. Next RRM Scan request
2103 * will be issued after the expiry of this random interval.
2104 *
2105 * Related: None.
2106 *
2107 * Supported Feature: 11k
2108 *
2109 * Usage: Internal/External
2110 *
2111 * </ini>
2112 */
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08002113#define CFG_RRM_MEAS_RANDOMIZATION_INTVL_NAME "gRrmRandnIntvl"
2114#define CFG_RRM_MEAS_RANDOMIZATION_INTVL_MIN (10)
2115#define CFG_RRM_MEAS_RANDOMIZATION_INTVL_MAX (100)
2116#define CFG_RRM_MEAS_RANDOMIZATION_INTVL_DEFAULT (100)
Krishna Kumaar Natarajanf599c6e2015-11-03 11:44:03 -08002117
Sreelakshmi Konamkided64d72017-02-23 10:39:26 +05302118/*
2119 * <ini>
2120 * rm_capability - Configure RM enabled capabilities IE
wadesong37779152018-11-15 13:08:15 +08002121 * @Min: N/A
2122 * @Max: N/A
Sreelakshmi Konamkided64d72017-02-23 10:39:26 +05302123 * @Default: 73,10,91,00,04
2124 *
2125 * This ini is used to configure RM enabled capabilities IE.
Krishna Kumaar Natarajanf599c6e2015-11-03 11:44:03 -08002126 * Using this INI, we can set/unset any of the bits in 5 bytes
2127 * (last 4bytes are reserved). Bit details are updated as per
2128 * Draft version of 11mc spec. (Draft P802.11REVmc_D4.2)
2129 *
Jeff Johnsond404d032016-09-08 14:51:43 -07002130 * Bitwise details are defined as bit mask in rrm_global.h
Krishna Kumaar Natarajanf599c6e2015-11-03 11:44:03 -08002131 * Comma is used as a separator for each byte.
Sreelakshmi Konamkided64d72017-02-23 10:39:26 +05302132 *
2133 * Related: None.
2134 *
2135 * Supported Feature: 11k
2136 *
2137 * Usage: Internal/External
2138 *
2139 * </ini>
Krishna Kumaar Natarajanf599c6e2015-11-03 11:44:03 -08002140 */
2141#define CFG_RM_CAPABILITY_NAME "rm_capability"
Jeff Johnsond404d032016-09-08 14:51:43 -07002142#define CFG_RM_CAPABILITY_DEFAULT "73,10,91,00,04"
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08002143
wadesong37779152018-11-15 13:08:15 +08002144/*
2145 * <ini>
Dustin Brown1224e212017-05-12 14:02:12 -07002146 * gHwFilterMode - configure hardware filter for DTIM mode
Ravi Kumar Bokka794fd712017-03-21 20:52:46 +05302147 * @Min: 0
Dustin Brown1224e212017-05-12 14:02:12 -07002148 * @Max: 3
Dustin Brown2078edd2017-05-18 11:37:33 -07002149 * @Default: 1
Ravi Kumar Bokka794fd712017-03-21 20:52:46 +05302150 *
Dustin Brown1224e212017-05-12 14:02:12 -07002151 * The hardware filter is only effective in DTIM mode. Use this configuration
2152 * to blanket drop broadcast/multicast packets at the hardware level, without
2153 * waking up the firmware
Ravi Kumar Bokka794fd712017-03-21 20:52:46 +05302154 *
Dustin Brown1224e212017-05-12 14:02:12 -07002155 * Takes a bitmap of frame types to drop
2156 * @E.g.
Dustin Brown2078edd2017-05-18 11:37:33 -07002157 * # disable feature
Dustin Brown1224e212017-05-12 14:02:12 -07002158 * gHwFilterMode=0
Dustin Brown2078edd2017-05-18 11:37:33 -07002159 * # drop all broadcast frames, except ARP (default)
Dustin Brown1224e212017-05-12 14:02:12 -07002160 * gHwFilterMode=1
2161 * # drop all multicast frames, except ICMPv6
2162 * gHwFilterMode=2
2163 * # drop all broadcast and multicast frames, except ARP and ICMPv6
2164 * gHwFilterMode=3
2165 *
2166 * Related: N/A
2167 *
2168 * Usage: Internal/External
Ravi Kumar Bokka794fd712017-03-21 20:52:46 +05302169 *
2170 * </ini>
2171 */
Nachiket Kukadef0804072018-02-27 18:20:07 +05302172#define CFG_HW_FILTER_MODE_BITMAP_NAME "gHwFilterMode"
2173#define CFG_HW_FILTER_MODE_BITMAP_MIN (0)
2174#define CFG_HW_FILTER_MODE_BITMAP_MAX (3)
2175#define CFG_HW_FILTER_MODE_BITMAP_DEFAULT (1)
Ravi Kumar Bokka794fd712017-03-21 20:52:46 +05302176
Sen, Devendra9ca8c432017-02-23 15:10:26 +05302177/*
Kapil Gupta825f1ba2017-01-03 12:24:01 +05302178 * gEnableDFSChnlScan - enable dfs channel scan.
2179 * @Min: 0
2180 * @Max: 1
2181 * @Default: 1
2182 *
2183 * This ini is used to enable/disable dfs channels in scan, enabling this
2184 * will enable driver to include dfs channels in its scan list.
2185 * Related: NA
2186 *
2187 * Supported Feature: DFS, Scan
2188 *
2189 * Usage: Internal/External
2190 *
2191 * </ini>
2192 */
2193#define CFG_ENABLE_DFS_CHNL_SCAN_NAME "gEnableDFSChnlScan"
2194#define CFG_ENABLE_DFS_CHNL_SCAN_MIN (0)
2195#define CFG_ENABLE_DFS_CHNL_SCAN_MAX (1)
2196#define CFG_ENABLE_DFS_CHNL_SCAN_DEFAULT (1)
2197
Srinivas Girigowda2fb677c2017-03-25 15:35:34 -07002198enum hdd_link_speed_rpt_type {
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08002199 eHDD_LINK_SPEED_REPORT_ACTUAL = 0,
2200 eHDD_LINK_SPEED_REPORT_MAX = 1,
2201 eHDD_LINK_SPEED_REPORT_MAX_SCALED = 2,
Srinivas Girigowda2fb677c2017-03-25 15:35:34 -07002202};
Agrawal Ashishe2219bb2017-01-10 20:18:33 +05302203
2204/*
2205 * <ini>
Kapil Gupta825f1ba2017-01-03 12:24:01 +05302206 * gDisableDFSChSwitch - Disable channel switch if radar is found
2207 * @Min: 0
2208 * @Max: 1
2209 * @Default: 0
2210 *
2211 * This ini is used to disable channel switch if radar is found
2212 * on that channel.
2213 * Related: NA.
2214 *
2215 * Supported Feature: DFS
2216 *
2217 * Usage: Internal
2218 *
2219 * </ini>
2220 */
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08002221#define CFG_DISABLE_DFS_CH_SWITCH "gDisableDFSChSwitch"
2222#define CFG_DISABLE_DFS_CH_SWITCH_MIN (0)
2223#define CFG_DISABLE_DFS_CH_SWITCH_MAX (1)
2224#define CFG_DISABLE_DFS_CH_SWITCH_DEFAULT (0)
2225
Kapil Gupta825f1ba2017-01-03 12:24:01 +05302226/*
2227 * <ini>
Kapil Gupta825f1ba2017-01-03 12:24:01 +05302228 * gDisableDfsJapanW53 - Block W53 channels in random channel selection
2229 * @Min: 0
2230 * @Max: 1
2231 * @Default: 0
2232 *
2233 * This ini is used to block W53 Japan channel in random channel selection
2234 * Related: NA.
2235 *
2236 * Supported Feature: DFS
2237 *
2238 * Usage: Internal/External
2239 *
2240 * </ini>
2241 */
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08002242#define CFG_DISABLE_DFS_JAPAN_W53 "gDisableDfsJapanW53"
2243#define CFG_DISABLE_DFS_JAPAN_W53_MIN (0)
2244#define CFG_DISABLE_DFS_JAPAN_W53_MAX (1)
2245#define CFG_DISABLE_DFS_JAPAN_W53_DEFAULT (0)
2246
Kapil Gupta825f1ba2017-01-03 12:24:01 +05302247/*
2248 * <ini>
wadesong37779152018-11-15 13:08:15 +08002249 * dfsPhyerrFilterOffload - DFS PHY error filter offload
Kapil Gupta825f1ba2017-01-03 12:24:01 +05302250 * @Min: 0
2251 * @Max: 1
wadesong37779152018-11-15 13:08:15 +08002252 * @Default: 0
Kapil Gupta825f1ba2017-01-03 12:24:01 +05302253 *
wadesong37779152018-11-15 13:08:15 +08002254 * This ini is used to enable firmware to do DFS PHY error filtering.
Kapil Gupta825f1ba2017-01-03 12:24:01 +05302255 * Related: NA.
2256 *
2257 * Supported Feature: DFS
2258 *
2259 * Usage: Internal/External
2260 *
2261 * </ini>
2262 */
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08002263#define CFG_ENABLE_DFS_PHYERR_FILTEROFFLOAD_NAME "dfsPhyerrFilterOffload"
2264#define CFG_ENABLE_DFS_PHYERR_FILTEROFFLOAD_MIN (0)
2265#define CFG_ENABLE_DFS_PHYERR_FILTEROFFLOAD_MAX (1)
2266#define CFG_ENABLE_DFS_PHYERR_FILTEROFFLOAD_DEFAULT (0)
2267
wadesong37779152018-11-15 13:08:15 +08002268/*
2269 * <ini>
2270 * gReportMaxLinkSpeed - Reporting of max link speed
2271 * @Min: 0
2272 * @Max: 2
2273 * @Default: 0
2274 *
2275 * This ini is used to control how max link speed is reported to OS when
2276 * driver is handling NL80211_CMD_GET_STATION request.
2277 * 0: report actual link speed;
2278 * 1: report max possible link speed;
2279 * 2: report max possible link speed with RSSI scaling.
2280 *
2281 * Related: NA.
2282 *
2283 * Supported Feature SAP
2284 *
2285 * Usage: Internal/External
2286 *
2287 * </ini>
2288 */
2289#define CFG_REPORT_MAX_LINK_SPEED "gReportMaxLinkSpeed"
2290#define CFG_REPORT_MAX_LINK_SPEED_MIN (eHDD_LINK_SPEED_REPORT_ACTUAL)
2291#define CFG_REPORT_MAX_LINK_SPEED_MAX (eHDD_LINK_SPEED_REPORT_MAX_SCALED)
2292#define CFG_REPORT_MAX_LINK_SPEED_DEFAULT (eHDD_LINK_SPEED_REPORT_ACTUAL)
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08002293
2294/*
Sen, Devendra9ca8c432017-02-23 15:10:26 +05302295 * <ini>
2296 * gLinkSpeedRssiHigh - Report the max possible speed with RSSI scaling
2297 * @Min: 0
2298 * @Max: 1
2299 * @Default: 0
2300 *
2301 * This ini is used to set default eHDD_LINK_SPEED_REPORT
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08002302 * Used when eHDD_LINK_SPEED_REPORT_SCALED is selected
Sen, Devendra9ca8c432017-02-23 15:10:26 +05302303 *
2304 * Related: None
2305 *
2306 * Supported Feature: STA
2307 *
2308 * Usage: Internal/External
2309 *
2310 * </ini>
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08002311 */
Sen, Devendra9ca8c432017-02-23 15:10:26 +05302312
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08002313#define CFG_LINK_SPEED_RSSI_HIGH "gLinkSpeedRssiHigh"
2314#define CFG_LINK_SPEED_RSSI_HIGH_MIN (-127)
2315#define CFG_LINK_SPEED_RSSI_HIGH_MAX (0)
2316#define CFG_LINK_SPEED_RSSI_HIGH_DEFAULT (-55)
2317
Sen, Devendra9ca8c432017-02-23 15:10:26 +05302318/*
2319 * <ini>
2320 * gLinkSpeedRssiMed - Used when eHDD_LINK_SPEED_REPORT_SCALED is selected
2321 * @Min: -127
2322 * @Max: 0
2323 * @Default: -65
2324 *
2325 * This ini is used to set medium rssi link speed
2326 *
2327 * Related: None
2328 *
2329 * Supported Feature: STA
2330 *
2331 * Usage: Internal/External
2332 *
2333 * </ini>
2334 */
2335
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08002336#define CFG_LINK_SPEED_RSSI_MID "gLinkSpeedRssiMed"
2337#define CFG_LINK_SPEED_RSSI_MID_MIN (-127)
2338#define CFG_LINK_SPEED_RSSI_MID_MAX (0)
2339#define CFG_LINK_SPEED_RSSI_MID_DEFAULT (-65)
2340
Sen, Devendra9ca8c432017-02-23 15:10:26 +05302341/*
2342 * <ini>
2343 * gLinkSpeedRssiLow - Used when eHDD_LINK_SPEED_REPORT_SCALED is selected
2344 * @Min: -127
2345 * @Max: 0
2346 * @Default: -80
2347 *
2348 * This ini is used to set low rssi link speed
2349 *
2350 * Related: None
2351 *
2352 * Supported Feature: STA
2353 *
2354 * Usage: Internal/External
2355 *
2356 * </ini>
2357 */
2358
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08002359#define CFG_LINK_SPEED_RSSI_LOW "gLinkSpeedRssiLow"
2360#define CFG_LINK_SPEED_RSSI_LOW_MIN (-127)
2361#define CFG_LINK_SPEED_RSSI_LOW_MAX (0)
2362#define CFG_LINK_SPEED_RSSI_LOW_DEFAULT (-80)
2363
Agrawal Ashishe030f782017-01-27 17:52:05 +05302364/*
2365 * <ini>
Sen, Devendra9ca8c432017-02-23 15:10:26 +05302366 * gEnableOverLapCh - Enables Overlap Channel. If set, allow overlapping
2367 * channels to be selected for the SoftAP
2368 * @Min: 0
2369 * @Max: 1
2370 * @Default: 0
2371 *
2372 * This ini is used to set Overlap Channel
2373 *
2374 * Related: None
2375 *
2376 * Supported Feature: STA
2377 *
2378 * Usage: Internal/External
2379 *
2380 * </ini>
2381 */
2382
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08002383#define CFG_ENABLE_OVERLAP_CH "gEnableOverLapCh"
2384#define CFG_ENABLE_OVERLAP_CH_MIN (0)
2385#define CFG_ENABLE_OVERLAP_CH_MAX (1)
2386#define CFG_ENABLE_OVERLAP_CH_DEFAULT (0)
2387
wadesong37779152018-11-15 13:08:15 +08002388/*
2389 * <ini>
2390 * gFwDebugModuleLoglevel - modulized firmware debug log level
2391 * @Min: N/A
2392 * @Max: N/A
2393 * @Default: N/A
2394 *
2395 * This ini is used to set modulized firmware debug log level.
2396 * FW module log level input string format looks like below:
2397 * gFwDebugModuleLoglevel="<FW Module ID>,<Log Level>,..."
2398 * For example:
2399 * gFwDebugModuleLoglevel="1,0,2,1,3,2,4,3,5,4,6,5,7,6"
2400 * The above input string means:
2401 * For FW module ID 1 enable log level 0
2402 * For FW module ID 2 enable log level 1
2403 * For FW module ID 3 enable log level 2
2404 * For FW module ID 4 enable log level 3
2405 * For FW module ID 5 enable log level 4
2406 * For FW module ID 6 enable log level 5
2407 * For FW module ID 7 enable log level 6
2408 * For valid values of log levels check enum DBGLOG_LOG_LVL and
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08002409 * for valid values of module ids check enum WLAN_MODULE_ID.
wadesong37779152018-11-15 13:08:15 +08002410 *
2411 * Related: None
2412 *
2413 * Supported Feature: Debugging
2414 *
2415 * Usage: Internal/External
2416 *
2417 * </ini>
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08002418 */
wadesong37779152018-11-15 13:08:15 +08002419
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08002420#define CFG_ENABLE_FW_MODULE_LOG_LEVEL "gFwDebugModuleLoglevel"
Nishank Aggarwal1bd0ae82017-04-07 17:32:56 +05302421#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 -08002422
Rajeev Kumar Sirasanagandla0be56df2016-09-08 19:19:47 +05302423/*
Anurag Chouhanf04e84f2016-03-03 10:12:12 +05302424 * QDF Trace Enable Control
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08002425 * Notes:
2426 * the MIN/MAX/DEFAULT values apply for all modules
2427 * the DEFAULT value is outside the valid range. if the DEFAULT
2428 * value is not overridden, then no change will be made to the
2429 * "built in" default values compiled into the code
2430 * values are a bitmap indicating which log levels are to enabled
Anurag Chouhanf04e84f2016-03-03 10:12:12 +05302431 * (must match order of qdf_trace_level enumerations)
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08002432 * 00000001 FATAL
2433 * 00000010 ERROR
2434 * 00000100 WARN
2435 * 00001000 INFO
2436 * 00010000 INFO HIGH
2437 * 00100000 INFO MED
2438 * 01000000 INFO LOW
2439 * 10000000 DEBUG
2440 *
2441 * hence a value of 0xFF would set all bits (enable all logs)
2442 */
2443
Anurag Chouhanf04e84f2016-03-03 10:12:12 +05302444#define CFG_QDF_TRACE_ENABLE_WDI_NAME "qdf_trace_enable_wdi"
2445#define CFG_QDF_TRACE_ENABLE_HDD_NAME "qdf_trace_enable_hdd"
2446#define CFG_QDF_TRACE_ENABLE_SME_NAME "qdf_trace_enable_sme"
2447#define CFG_QDF_TRACE_ENABLE_PE_NAME "qdf_trace_enable_pe"
2448#define CFG_QDF_TRACE_ENABLE_PMC_NAME "qdf_trace_enable_pmc"
2449#define CFG_QDF_TRACE_ENABLE_WMA_NAME "qdf_trace_enable_wma"
2450#define CFG_QDF_TRACE_ENABLE_SYS_NAME "qdf_trace_enable_sys"
2451#define CFG_QDF_TRACE_ENABLE_QDF_NAME "qdf_trace_enable_qdf"
2452#define CFG_QDF_TRACE_ENABLE_SAP_NAME "qdf_trace_enable_sap"
2453#define CFG_QDF_TRACE_ENABLE_HDD_SAP_NAME "qdf_trace_enable_hdd_sap"
2454#define CFG_QDF_TRACE_ENABLE_BMI_NAME "qdf_trace_enable_bmi"
2455#define CFG_QDF_TRACE_ENABLE_CFG_NAME "qdf_trace_enable_cfg"
2456#define CFG_QDF_TRACE_ENABLE_EPPING "qdf_trace_enable_epping"
2457#define CFG_QDF_TRACE_ENABLE_QDF_DEVICES "qdf_trace_enable_qdf_devices"
Houston Hoffmanfbf05102017-08-28 11:37:01 -07002458#define CFG_QDF_TRACE_ENABLE_TXRX_NAME "qdf_trace_enable_txrx"
2459#define CFG_QDF_TRACE_ENABLE_DP_NAME "qdf_trace_enable_dp"
Anurag Chouhanf04e84f2016-03-03 10:12:12 +05302460#define CFG_QDF_TRACE_ENABLE_HTC_NAME "qdf_trace_enable_htc"
2461#define CFG_QDF_TRACE_ENABLE_HIF_NAME "qdf_trace_enable_hif"
2462#define CFG_CDR_TRACE_ENABLE_HDD_SAP_DATA_NAME "qdf_trace_enable_hdd_sap_data"
2463#define CFG_QDF_TRACE_ENABLE_HDD_DATA_NAME "qdf_trace_enable_hdd_data"
Naveen Rawat7df31862017-03-01 17:09:30 -08002464#define CFG_QDF_TRACE_ENABLE_WIFI_POS "qdf_trace_enable_wifi_pos"
Naveen Rawatf2b0dbd2017-03-27 10:00:15 -07002465#define CFG_QDF_TRACE_ENABLE_NAN "qdf_trace_enable_nan"
Kiran Kumar Lokere798de7e2017-03-30 14:01:12 -07002466#define CFG_QDF_TRACE_ENABLE_REGULATORY "qdf_trace_enable_regulatory"
Naveen Rawat3cb779e2018-02-16 16:36:10 -08002467#define CFG_QDF_TRACE_ENABLE_CP_STATS "qdf_trace_enable_cp_stats"
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08002468
Anurag Chouhanf04e84f2016-03-03 10:12:12 +05302469#define CFG_QDF_TRACE_ENABLE_MIN (0)
2470#define CFG_QDF_TRACE_ENABLE_MAX (0xff)
2471#define CFG_QDF_TRACE_ENABLE_DEFAULT (0xffff)
Houston Hoffmanfbf05102017-08-28 11:37:01 -07002472/* disable debug logs for DP by default */
2473#define CFG_QDF_TRACE_ENABLE_DP_DEFAULT (0x7f)
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08002474
Ashish Kumar Dhanotiya12f68212018-09-04 22:00:14 +05302475#ifdef ENABLE_MTRACE_LOG
2476/*
2477 * Enable MTRACE for all modules
2478 */
2479#define CFG_ENABLE_MTRACE "enable_mtrace"
2480#define CFG_ENABLE_MTRACE_MIN (0)
2481#define CFG_ENABLE_MTRACE_MAX (1)
2482#define CFG_ENABLE_MTRACE_DEFAULT (0)
2483#endif
2484
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08002485#define HDD_MCASTBCASTFILTER_FILTER_NONE 0x00
2486#define HDD_MCASTBCASTFILTER_FILTER_ALL_MULTICAST 0x01
2487#define HDD_MCASTBCASTFILTER_FILTER_ALL_BROADCAST 0x02
2488#define HDD_MCASTBCASTFILTER_FILTER_ALL_MULTICAST_BROADCAST 0x03
2489#define HDD_MULTICAST_FILTER_LIST 0x04
2490#define HDD_MULTICAST_FILTER_LIST_CLEAR 0x05
2491
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08002492/*
Agrawal Ashishbafaff12016-12-27 17:43:08 +05302493 * <ini>
wadesongcc2e2162018-11-12 14:42:11 +08002494 * gConfigVCmode - Bitmap for operating voltage corner mode
Nachiket Kukade8983cf62017-10-12 18:14:48 +05302495 * @Min: 0x00000000
2496 * @Max: 0x0fffffff
2497 * @Default: 0x0000000a
2498 * This ini is used to set operating voltage corner mode for differenet
2499 * phymode and bw configurations. Every 2 bits till BIT27 are dedicated
2500 * for a specific configuration. Bit values decide the type of voltage
2501 * corner mode. All the details below -
2502 *
2503 * Configure operating voltage corner mode based on phymode and bw.
2504 * bit 0-1 - operating voltage corner mode for 11a/b.
2505 * bit 2-3 - operating voltage corner mode for 11g.
2506 * bit 4-5 - operating voltage corner mode for 11n, 20MHz, 1x1.
2507 * bit 6-7 - operating voltage corner mode for 11n, 20MHz, 2x2.
2508 * bit 8-9 - operating voltage corner mode for 11n, 40MHz, 1x1.
2509 * bit 10-11 - operating voltage corner mode for 11n, 40MHz, 2x2.
2510 * bit 12-13 - operating voltage corner mode for 11ac, 20MHz, 1x1.
2511 * bit 14-15 - operating voltage corner mode for 11ac, 20MHz, 2x2.
2512 * bit 16-17 - operating voltage corner mode for 11ac, 40MHz, 1x1.
2513 * bit 18-19 - operating voltage corner mode for 11ac, 40MHz, 2x2.
2514 * bit 20-21 - operating voltage corner mode for 11ac, 80MHz, 1x1.
2515 * bit 22-23 - operating voltage corner mode for 11ac, 80MHz, 2x2.
2516 * bit 24-25 - operating voltage corner mode for 11ac, 160MHz, 1x1.
2517 * bit 26-27 - operating voltage corner mode for 11ac, 160MHz, 2x2.
2518 * ---------------------------------------------
2519 * 00 - Static voltage corner SVS
2520 * 01 - static voltage corner LOW SVS
2521 * 10 - Dynamic voltage corner selection based on TPUT
2522 * 11 - Dynamic voltage corner selection based on TPUT and Tx Flush counters
2523
2524 * Related: None
2525 *
2526 * Supported Feature: None
2527 *
2528 * Usage: External
2529 *
2530 * </ini>
2531 */
2532
2533#define CFG_VC_MODE_BITMAP "gConfigVCmode"
2534#define CFG_VC_MODE_BITMAP_MIN (0x00000000)
2535#define CFG_VC_MODE_BITMAP_MAX (0x0fffffff)
2536#define CFG_VC_MODE_BITMAP_DEFAULT (0x00000005)
2537
2538/*
2539 * <ini>
Ganesh Kondabattini408fb8d2017-08-08 22:00:20 +05302540 * gEnableSAPManadatoryChanList - Enable SAP Mandatory channel list
2541 * Options.
2542 * @Min: 0
2543 * @Max: 1
2544 * @Default: 0
2545 *
2546 * This ini is used to enable/disable the SAP manadatory chan list
2547 * 0 - Disable SAP mandatory chan list
2548 * 1 - Enable SAP mandatory chan list
2549 *
2550 * Supported Feature: SAP
2551 *
2552 *
2553 * Usage: Internal/External
2554 *
2555 * </ini>
2556 */
2557#define CFG_ENABLE_SAP_MANDATORY_CHAN_LIST "gEnableSAPManadatoryChanList"
2558#define CFG_ENABLE_SAP_MANDATORY_CHAN_LIST_MIN (0)
2559#define CFG_ENABLE_SAP_MANDATORY_CHAN_LIST_MAX (1)
2560#define CFG_ENABLE_SAP_MANDATORY_CHAN_LIST_DEFAULT (0)
2561
2562/*
Sen, Devendra9ca8c432017-02-23 15:10:26 +05302563 * <ini>
Nitesh Shah03161d12016-12-06 18:30:12 +05302564 * gEnableMCCMode - Enable/Disable MCC feature.
2565 * @Min: 0
2566 * @Max: 1
2567 * @Default: 1
2568 *
2569 * This ini is used to enable/disable MCC feature.
2570 *
2571 * Related: None.
2572 *
2573 * Supported Feature: Concurrency
2574 *
2575 * Usage: Internal/External
2576 *
2577 * </ini>
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08002578 */
2579#define CFG_ENABLE_MCC_ENABLED_NAME "gEnableMCCMode"
2580#define CFG_ENABLE_MCC_ENABLED_MIN (0)
2581#define CFG_ENABLE_MCC_ENABLED_MAX (1)
2582#define CFG_ENABLE_MCC_ENABLED_DEFAULT (1)
2583
2584/*
Nitesh Shah03161d12016-12-06 18:30:12 +05302585 * <ini>
2586 * gAllowMCCGODiffBI - Allow GO in MCC mode to accept different beacon interval
2587 * than STA's.
2588 * @Min: 0
2589 * @Max: 4
2590 * @Default: 4
2591 *
2592 * This ini is used to allow GO in MCC mode to accept different beacon interval
2593 * than STA's.
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08002594 * Added for Wi-Fi Cert. 5.1.12
Nitesh Shah03161d12016-12-06 18:30:12 +05302595 * If gAllowMCCGODiffBI = 1
2596 * Set to 1 for WFA certification. GO Beacon interval is not changed.
2597 * MCC GO doesn't work well in optimized way. In worst scenario, it may
2598 * invite STA disconnection.
2599 * If gAllowMCCGODiffBI = 2
2600 * If set to 2 workaround 1 disassoc all the clients and update beacon
2601 * Interval.
2602 * If gAllowMCCGODiffBI = 3
2603 * If set to 3 tear down the P2P link in auto/Non-autonomous -GO case.
2604 * If gAllowMCCGODiffBI = 4
2605 * If set to 4 don't disconnect the P2P client in autonomous/Non-auto-
2606 * nomous -GO case update the BI dynamically
2607 *
2608 * Related: None.
2609 *
2610 * Supported Feature: Concurrency
2611 *
2612 * Usage: Internal/External
2613 *
2614 * </ini>
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08002615 */
2616#define CFG_ALLOW_MCC_GO_DIFF_BI_NAME "gAllowMCCGODiffBI"
2617#define CFG_ALLOW_MCC_GO_DIFF_BI_MIN (0)
2618#define CFG_ALLOW_MCC_GO_DIFF_BI_MAX (4)
2619#define CFG_ALLOW_MCC_GO_DIFF_BI_DEFAULT (4)
2620
Poddar, Siddarthb61cf642016-04-28 16:02:39 +05302621#if defined(CONFIG_HL_SUPPORT) && defined(QCA_BAD_PEER_TX_FLOW_CL)
2622/*
2623 * Enable/Disable Bad Peer TX CTL feature
2624 * Default: Enable
2625 */
2626#define CFG_BAD_PEER_TX_CTL_ENABLE_NAME "gBadPeerTxCtlEnable"
2627#define CFG_BAD_PEER_TX_CTL_ENABLE_MIN (0)
2628#define CFG_BAD_PEER_TX_CTL_ENABLE_MAX (1)
2629#define CFG_BAD_PEER_TX_CTL_ENABLE_DEFAULT (1)
2630
2631#define CFG_BAD_PEER_TX_CTL_PERIOD_NAME "gBadPeerTxCtlPeriod"
2632#define CFG_BAD_PEER_TX_CTL_PERIOD_MIN (10)
2633#define CFG_BAD_PEER_TX_CTL_PERIOD_MAX (10000)
2634#define CFG_BAD_PEER_TX_CTL_PERIOD_DEFAULT (50)
2635
2636#define CFG_BAD_PEER_TX_CTL_TXQ_LIMIT_NAME "gBadPeerTxCtlTxqLimit"
2637#define CFG_BAD_PEER_TX_CTL_TXQ_LIMIT_MIN (1)
2638#define CFG_BAD_PEER_TX_CTL_TXQ_LIMIT_MAX (5000)
2639#define CFG_BAD_PEER_TX_CTL_TXQ_LIMIT_DEFAULT (100)
2640
2641#define CFG_BAD_PEER_TX_CTL_TGT_BACKOFF_T_NAME "gBadPeerTxCtlTgtBackoffTime"
2642#define CFG_BAD_PEER_TX_CTL_TGT_BACKOFF_T_MIN (1)
2643#define CFG_BAD_PEER_TX_CTL_TGT_BACKOFF_T_MAX (5000)
2644#define CFG_BAD_PEER_TX_CTL_TGT_BACKOFF_T_DEFAULT (20)
2645
2646#define CFG_BAD_PEER_TX_CTL_TGT_REPORT_PRD_NAME "gBadPeerTxCtlTgtReportPeriod"
2647#define CFG_BAD_PEER_TX_CTL_TGT_REPORT_PRD_MIN (1)
2648#define CFG_BAD_PEER_TX_CTL_TGT_REPORT_PRD_MAX (5000)
2649#define CFG_BAD_PEER_TX_CTL_TGT_REPORT_PRD_DEFAULT (500)
2650
2651#define CFG_BAD_PEER_TX_CTL_COND_LEVEL_IEEEB_NAME "gBadPeerTxCtlCondLevelIeeeB"
2652#define CFG_BAD_PEER_TX_CTL_COND_LEVEL_IEEEB_MIN (1)
2653#define CFG_BAD_PEER_TX_CTL_COND_LEVEL_IEEEB_MAX (2)
2654#define CFG_BAD_PEER_TX_CTL_COND_LEVEL_IEEEB_DEFAULT (2)
2655
2656#define CFG_BAD_PEER_TX_CTL_DELTA_LEVEL_IEEEB_NAME "gBadPeerTxCtlDeltaLevelIeeeB"
2657#define CFG_BAD_PEER_TX_CTL_DELTA_LEVEL_IEEEB_MIN (1)
2658#define CFG_BAD_PEER_TX_CTL_DELTA_LEVEL_IEEEB_MAX (11)
2659#define CFG_BAD_PEER_TX_CTL_DELTA_LEVEL_IEEEB_DEFAULT (2)
2660
2661#define CFG_BAD_PEER_TX_CTL_PCT_LEVEL_IEEEB_NAME "gBadPeerTxCtlPctLevelIeeeB"
2662#define CFG_BAD_PEER_TX_CTL_PCT_LEVEL_IEEEB_MIN (1)
2663#define CFG_BAD_PEER_TX_CTL_PCT_LEVEL_IEEEB_MAX (8)
2664#define CFG_BAD_PEER_TX_CTL_PCT_LEVEL_IEEEB_DEFAULT (1)
2665
2666#define CFG_BAD_PEER_TX_CTL_TPUT_LEVEL_IEEEB_NAME "gBadPeerTxCtlTputLevelIeeeB"
2667#define CFG_BAD_PEER_TX_CTL_TPUT_LEVEL_IEEEB_MIN (1)
2668#define CFG_BAD_PEER_TX_CTL_TPUT_LEVEL_IEEEB_MAX (11)
2669#define CFG_BAD_PEER_TX_CTL_TPUT_LEVEL_IEEEB_DEFAULT (2)
2670
2671#define CFG_BAD_PEER_TX_CTL_TX_LIMIT_LEVEL_IEEEB_NAME "gBadPeerTxCtlTxLimitLevelIeeeB"
2672#define CFG_BAD_PEER_TX_CTL_TX_LIMIT_LEVEL_IEEEB_MIN (0)
2673#define CFG_BAD_PEER_TX_CTL_TX_LIMIT_LEVEL_IEEEB_MAX (50)
2674#define CFG_BAD_PEER_TX_CTL_TX_LIMIT_LEVEL_IEEEB_DEFAULT (3)
2675
2676#define CFG_BAD_PEER_TX_CTL_COND_LEVEL_IEEEAG_NAME "gBadPeerTxCtlCondLevelIeeeAG"
2677#define CFG_BAD_PEER_TX_CTL_COND_LEVEL_IEEEAG_MIN (1)
2678#define CFG_BAD_PEER_TX_CTL_COND_LEVEL_IEEEAG_MAX (2)
2679#define CFG_BAD_PEER_TX_CTL_COND_LEVEL_IEEEAG_DEFAULT (2)
2680
2681#define CFG_BAD_PEER_TX_CTL_DELTA_LEVEL_IEEEAG_NAME "gBadPeerTxCtlDeltaLevelIeeeAG"
2682#define CFG_BAD_PEER_TX_CTL_DELTA_LEVEL_IEEEAG_MIN (6)
2683#define CFG_BAD_PEER_TX_CTL_DELTA_LEVEL_IEEEAG_MAX (54)
2684#define CFG_BAD_PEER_TX_CTL_DELTA_LEVEL_IEEEAG_DEFAULT (6)
2685
2686#define CFG_BAD_PEER_TX_CTL_PCT_LEVEL_IEEEAG_NAME "gBadPeerTxCtlPctLevelIeeeAG"
2687#define CFG_BAD_PEER_TX_CTL_PCT_LEVEL_IEEEAG_MIN (1)
2688#define CFG_BAD_PEER_TX_CTL_PCT_LEVEL_IEEEAG_MAX (8)
2689#define CFG_BAD_PEER_TX_CTL_PCT_LEVEL_IEEEAG_DEFAULT (1)
2690
2691#define CFG_BAD_PEER_TX_CTL_TPUT_LEVEL_IEEEAG_NAME "gBadPeerTxCtlTputLevelIeeeAG"
2692#define CFG_BAD_PEER_TX_CTL_TPUT_LEVEL_IEEEAG_MIN (6)
2693#define CFG_BAD_PEER_TX_CTL_TPUT_LEVEL_IEEEAG_MAX (54)
2694#define CFG_BAD_PEER_TX_CTL_TPUT_LEVEL_IEEEAG_DEFAULT (6)
2695
2696#define CFG_BAD_PEER_TX_CTL_TX_LIMIT_LEVEL_IEEEAG_NAME "gBadPeerTxCtlTxLimitLevelIeeeAG"
2697#define CFG_BAD_PEER_TX_CTL_TX_LIMIT_LEVEL_IEEEAG_MIN (0)
2698#define CFG_BAD_PEER_TX_CTL_TX_LIMIT_LEVEL_IEEEAG_MAX (50)
2699#define CFG_BAD_PEER_TX_CTL_TX_LIMIT_LEVEL_IEEEAG_DEFAULT (3)
2700
2701#define CFG_BAD_PEER_TX_CTL_COND_LEVEL_IEEEN_NAME "gBadPeerTxCtlCondLevelIeeeN"
2702#define CFG_BAD_PEER_TX_CTL_COND_LEVEL_IEEEN_MIN (1)
2703#define CFG_BAD_PEER_TX_CTL_COND_LEVEL_IEEEN_MAX (2)
2704#define CFG_BAD_PEER_TX_CTL_COND_LEVEL_IEEEN_DEFAULT (2)
2705
2706#define CFG_BAD_PEER_TX_CTL_DELTA_LEVEL_IEEEN_NAME "gBadPeerTxCtlDeltaLevelIeeeN"
2707#define CFG_BAD_PEER_TX_CTL_DELTA_LEVEL_IEEEN_MIN (6)
2708#define CFG_BAD_PEER_TX_CTL_DELTA_LEVEL_IEEEN_MAX (72)
2709#define CFG_BAD_PEER_TX_CTL_DELTA_LEVEL_IEEEN_DEFAULT (6)
2710
2711#define CFG_BAD_PEER_TX_CTL_PCT_LEVEL_IEEEN_NAME "gBadPeerTxCtlPctLevelIeeeN"
2712#define CFG_BAD_PEER_TX_CTL_PCT_LEVEL_IEEEN_MIN (1)
2713#define CFG_BAD_PEER_TX_CTL_PCT_LEVEL_IEEEN_MAX (8)
2714#define CFG_BAD_PEER_TX_CTL_PCT_LEVEL_IEEEN_DEFAULT (1)
2715
2716#define CFG_BAD_PEER_TX_CTL_TPUT_LEVEL_IEEEN_NAME "gBadPeerTxCtlTputLevelIeeeN"
2717#define CFG_BAD_PEER_TX_CTL_TPUT_LEVEL_IEEEN_MIN (6)
2718#define CFG_BAD_PEER_TX_CTL_TPUT_LEVEL_IEEEN_MAX (72)
2719#define CFG_BAD_PEER_TX_CTL_TPUT_LEVEL_IEEEN_DEFAULT (15)
2720
2721#define CFG_BAD_PEER_TX_CTL_TX_LIMIT_LEVEL_IEEEN_NAME "gBadPeerTxCtlTxLimitLevelIeeeN"
2722#define CFG_BAD_PEER_TX_CTL_TX_LIMIT_LEVEL_IEEEN_MIN (0)
2723#define CFG_BAD_PEER_TX_CTL_TX_LIMIT_LEVEL_IEEEN_MAX (50)
2724#define CFG_BAD_PEER_TX_CTL_TX_LIMIT_LEVEL_IEEEN_DEFAULT (3)
2725
2726#define CFG_BAD_PEER_TX_CTL_COND_LEVEL_IEEEAC_NAME "gBadPeerTxCtlCondLevelIeeeAC"
2727#define CFG_BAD_PEER_TX_CTL_COND_LEVEL_IEEEAC_MIN (1)
2728#define CFG_BAD_PEER_TX_CTL_COND_LEVEL_IEEEAC_MAX (2)
2729#define CFG_BAD_PEER_TX_CTL_COND_LEVEL_IEEEAC_DEFAULT (2)
2730
2731#define CFG_BAD_PEER_TX_CTL_DELTA_LEVEL_IEEEAC_NAME "gBadPeerTxCtlDeltaLevelIeeeAC"
2732#define CFG_BAD_PEER_TX_CTL_DELTA_LEVEL_IEEEAC_MIN (6)
2733#define CFG_BAD_PEER_TX_CTL_DELTA_LEVEL_IEEEAC_MAX (433)
2734#define CFG_BAD_PEER_TX_CTL_DELTA_LEVEL_IEEEAC_DEFAULT (6)
2735
2736#define CFG_BAD_PEER_TX_CTL_PCT_LEVEL_IEEEAC_NAME "gBadPeerTxCtlPctLevelIeeeAC"
2737#define CFG_BAD_PEER_TX_CTL_PCT_LEVEL_IEEEAC_MIN (1)
2738#define CFG_BAD_PEER_TX_CTL_PCT_LEVEL_IEEEAC_MAX (8)
2739#define CFG_BAD_PEER_TX_CTL_PCT_LEVEL_IEEEAC_DEFAULT (1)
2740
2741#define CFG_BAD_PEER_TX_CTL_TPUT_LEVEL_IEEEAC_NAME "gBadPeerTxCtlTputLevelIeeeAC"
2742#define CFG_BAD_PEER_TX_CTL_TPUT_LEVEL_IEEEAC_MIN (6)
2743#define CFG_BAD_PEER_TX_CTL_TPUT_LEVEL_IEEEAC_MAX (433)
2744#define CFG_BAD_PEER_TX_CTL_TPUT_LEVEL_IEEEAC_DEFAULT (15)
2745
2746#define CFG_BAD_PEER_TX_CTL_TX_LIMIT_LEVEL_IEEEAC_NAME "gBadPeerTxCtlTxLimitLevelIeeeAC"
2747#define CFG_BAD_PEER_TX_CTL_TX_LIMIT_LEVEL_IEEEAC_MIN (0)
2748#define CFG_BAD_PEER_TX_CTL_TX_LIMIT_LEVEL_IEEEAC_MAX (50)
2749#define CFG_BAD_PEER_TX_CTL_TX_LIMIT_LEVEL_IEEEAC_DEFAULT (3)
2750#endif
2751
2752
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08002753/*
2754 * Enable/Disable Thermal Mitigation feature
2755 * Default: Enable
2756 */
2757#define CFG_THERMAL_MIGRATION_ENABLE_NAME "gThermalMitigationEnable"
2758#define CFG_THERMAL_MIGRATION_ENABLE_MIN (0)
2759#define CFG_THERMAL_MIGRATION_ENABLE_MAX (1)
Manjeet Singhbcd1cfd2017-01-11 15:15:14 +05302760#define CFG_THERMAL_MIGRATION_ENABLE_DEFAULT (0)
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08002761
2762#define CFG_THROTTLE_PERIOD_NAME "gThrottlePeriod"
2763#define CFG_THROTTLE_PERIOD_MIN (10)
2764#define CFG_THROTTLE_PERIOD_MAX (10000)
2765#define CFG_THROTTLE_PERIOD_DEFAULT (4000)
2766
Poddar, Siddarth83905022016-04-16 17:56:08 -07002767/*
2768 * Configure Throttle Period Different Level Duty Cycle in percentage
2769 * When temperature measured is greater than threshold at particular level,
2770 * then throtling level will get increased by one level and
2771 * will reduce TX duty by the given percentage
2772 */
2773#define CFG_THROTTLE_DUTY_CYCLE_LEVEL0_NAME "gThrottleDutyCycleLevel0"
2774#define CFG_THROTTLE_DUTY_CYCLE_LEVEL0_MIN (0)
2775#define CFG_THROTTLE_DUTY_CYCLE_LEVEL0_MAX (0)
2776#define CFG_THROTTLE_DUTY_CYCLE_LEVEL0_DEFAULT (0)
2777
2778#define CFG_THROTTLE_DUTY_CYCLE_LEVEL1_NAME "gThrottleDutyCycleLevel1"
2779#define CFG_THROTTLE_DUTY_CYCLE_LEVEL1_MIN (0)
2780#define CFG_THROTTLE_DUTY_CYCLE_LEVEL1_MAX (100)
2781#define CFG_THROTTLE_DUTY_CYCLE_LEVEL1_DEFAULT (50)
2782
2783#define CFG_THROTTLE_DUTY_CYCLE_LEVEL2_NAME "gThrottleDutyCycleLevel2"
2784#define CFG_THROTTLE_DUTY_CYCLE_LEVEL2_MIN (0)
2785#define CFG_THROTTLE_DUTY_CYCLE_LEVEL2_MAX (100)
2786#define CFG_THROTTLE_DUTY_CYCLE_LEVEL2_DEFAULT (75)
2787
2788#define CFG_THROTTLE_DUTY_CYCLE_LEVEL3_NAME "gThrottleDutyCycleLevel3"
2789#define CFG_THROTTLE_DUTY_CYCLE_LEVEL3_MIN (0)
2790#define CFG_THROTTLE_DUTY_CYCLE_LEVEL3_MAX (100)
2791#define CFG_THROTTLE_DUTY_CYCLE_LEVEL3_DEFAULT (94)
2792
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08002793/*
Sen, Devendra9ca8c432017-02-23 15:10:26 +05302794 * <ini>
2795 * gMCAddrListEnable - Enable/Disable Multicast MAC Address List feature
2796 * @Min: 0
2797 * @Max: 1
2798 * @Default: 1
2799 *
2800 * This ini is used to set default MAC Address
Dustin Brownd03bf592016-09-08 14:40:51 -07002801 * Default: Enable
Sen, Devendra9ca8c432017-02-23 15:10:26 +05302802 *
2803 * Related: None
2804 *
2805 * Supported Feature: STA
2806 *
2807 * Usage: Internal/External
2808 *
2809 * </ini>
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08002810 */
Sen, Devendra9ca8c432017-02-23 15:10:26 +05302811
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08002812#define CFG_MC_ADDR_LIST_ENABLE_NAME "gMCAddrListEnable"
2813#define CFG_MC_ADDR_LIST_ENABLE_MIN (0)
2814#define CFG_MC_ADDR_LIST_ENABLE_MAX (1)
Dustin Brownd03bf592016-09-08 14:40:51 -07002815#define CFG_MC_ADDR_LIST_ENABLE_DEFAULT (1)
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08002816
Sen, Devendra9ca8c432017-02-23 15:10:26 +05302817/*
2818 * <ini>
2819 * gEnableRXSTBC - Enables/disables Rx STBC capability in STA mode
2820 * @Min: 0
2821 * @Max: 1
2822 * @Default: 1
2823 *
2824 * This ini is used to set default Rx STBC capability
2825 *
2826 * Related: None
2827 *
2828 * Supported Feature: STA
2829 *
2830 * Usage: Internal/External
2831 *
2832 * </ini>
2833 */
2834
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08002835#define CFG_ENABLE_RX_STBC "gEnableRXSTBC"
2836#define CFG_ENABLE_RX_STBC_MIN (0)
2837#define CFG_ENABLE_RX_STBC_MAX (1)
2838#define CFG_ENABLE_RX_STBC_DEFAULT (1)
2839
Sen, Devendra9ca8c432017-02-23 15:10:26 +05302840/*
2841 * <ini>
2842 * gEnableTXSTBC - Enables/disables Tx STBC capability in STA mode
2843 * @Min: 0
2844 * @Max: 1
2845 * @Default: 0
2846 *
2847 * This ini is used to set default Tx STBC capability
2848 *
2849 * Related: None
2850 *
2851 * Supported Feature: STA
2852 *
2853 * Usage: Internal/External
2854 *
2855 * </ini>
2856 */
2857
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08002858#define CFG_ENABLE_TX_STBC "gEnableTXSTBC"
2859#define CFG_ENABLE_TX_STBC_MIN (0)
2860#define CFG_ENABLE_TX_STBC_MAX (1)
2861#define CFG_ENABLE_TX_STBC_DEFAULT (0)
2862
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08002863#define CFG_DISABLE_LDPC_WITH_TXBF_AP "gDisableLDPCWithTxbfAP"
2864#define CFG_DISABLE_LDPC_WITH_TXBF_AP_MIN (0)
2865#define CFG_DISABLE_LDPC_WITH_TXBF_AP_MAX (1)
2866#define CFG_DISABLE_LDPC_WITH_TXBF_AP_DEFAULT (0)
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08002867
Sen, Devendra9ca8c432017-02-23 15:10:26 +05302868/*
2869 * <ini>
Sen, Devendra9ca8c432017-02-23 15:10:26 +05302870 * gEnableSNRMonitoring - Enables SNR Monitoring
2871 * @Min: 0
2872 * @Max: 1
2873 * @Default: 0
2874 *
2875 * This ini is used to set default snr monitor
2876 *
2877 * Related: None
2878 *
2879 * Supported Feature: STA
2880 *
2881 * Usage: Internal/External
2882 *
2883 * </ini>
2884 */
2885
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08002886#define CFG_ENABLE_SNR_MONITORING_NAME "gEnableSNRMonitoring"
2887#define CFG_ENABLE_SNR_MONITORING_MIN (0)
2888#define CFG_ENABLE_SNR_MONITORING_MAX (1)
2889#define CFG_ENABLE_SNR_MONITORING_DEFAULT (0)
2890
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08002891/* SAR Thermal limit values for 2g and 5g */
2892
2893#define CFG_SET_TXPOWER_LIMIT2G_NAME "TxPower2g"
2894#define CFG_SET_TXPOWER_LIMIT2G_MIN (0)
2895#define CFG_SET_TXPOWER_LIMIT2G_MAX (30)
Hanumanth Reddy Pothula366fa8e2016-09-07 15:05:17 +05302896#define CFG_SET_TXPOWER_LIMIT2G_DEFAULT (30)
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08002897
2898#define CFG_SET_TXPOWER_LIMIT5G_NAME "TxPower5g"
2899#define CFG_SET_TXPOWER_LIMIT5G_MIN (0)
2900#define CFG_SET_TXPOWER_LIMIT5G_MAX (30)
Hanumanth Reddy Pothula366fa8e2016-09-07 15:05:17 +05302901#define CFG_SET_TXPOWER_LIMIT5G_DEFAULT (30)
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08002902
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08002903#ifdef FEATURE_WLAN_RA_FILTERING
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08002904#define CFG_RA_RATE_LIMIT_INTERVAL_NAME "gRArateLimitInterval"
2905#define CFG_RA_RATE_LIMIT_INTERVAL_MIN (60)
2906#define CFG_RA_RATE_LIMIT_INTERVAL_MAX (3600)
2907#define CFG_RA_RATE_LIMIT_INTERVAL_DEFAULT (60) /*60 SEC */
2908#endif
2909
Sen, Devendra9ca8c432017-02-23 15:10:26 +05302910/*
2911 * <ini>
Sen, Devendra9ca8c432017-02-23 15:10:26 +05302912 * gEnableMemoryDebug - Enables the memory debug
2913 * @Min: 0
2914 * @Max: 1
2915 * @Default: 1
2916 *
2917 * This ini is used to enable default memory debug
2918 *
2919 * Related: None
2920 *
2921 * Supported Feature: STA
2922 *
2923 * Usage: Internal/External
2924 *
2925 * </ini>
2926 */
2927
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08002928#ifdef MEMORY_DEBUG
2929#define CFG_ENABLE_MEMORY_DEBUG_NAME "gEnableMemoryDebug"
2930#define CFG_ENABLE_MEMORY_DEBUG_MIN (0)
2931#define CFG_ENABLE_MEMORY_DEBUG_MAX (1)
2932#define CFG_ENABLE_MEMORY_DEBUG_DEFAULT (1)
2933#endif
2934
Ravi Kumar Bokka05c14e52017-03-27 14:48:23 +05302935/*
2936 * <ini>
Sen, Devendra9ca8c432017-02-23 15:10:26 +05302937 * gInitialDwellTime - Used to set initial dwell time
2938 * @Min: 0
2939 * @Max: 0
2940 * @Default: 100
2941 *
2942 * This ini is used to set default initial dwell time
2943 *
2944 * Related: None
2945 *
2946 * Supported Feature: STA
2947 *
2948 * Usage: Internal/External
2949 *
2950 * </ini>
2951 */
2952
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08002953#define CFG_INITIAL_DWELL_TIME_NAME "gInitialDwellTime"
2954#define CFG_INITIAL_DWELL_TIME_DEFAULT (0)
2955#define CFG_INITIAL_DWELL_TIME_MIN (0)
2956#define CFG_INITIAL_DWELL_TIME_MAX (100)
2957
Sen, Devendra9ca8c432017-02-23 15:10:26 +05302958/*
2959 * <ini>
2960 * gInitialScanNoDFSChnl - WLAN skips scanning the DFS channels
2961 * @Min: 0
2962 * @Max: 0
2963 * @Default: 1
2964 *
2965 * This ini is used to set for the first scan after driver
2966 *
2967 * Related: None
2968 *
2969 * Supported Feature: STA
2970 *
2971 * Usage: Internal/External
2972 *
2973 * </ini>
2974 */
2975
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08002976#define CFG_INITIAL_SCAN_NO_DFS_CHNL_NAME "gInitialScanNoDFSChnl"
2977#define CFG_INITIAL_SCAN_NO_DFS_CHNL_DEFAULT (0)
2978#define CFG_INITIAL_SCAN_NO_DFS_CHNL_MIN (0)
2979#define CFG_INITIAL_SCAN_NO_DFS_CHNL_MAX (1)
2980
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08002981#ifdef MSM_PLATFORM
Mohit Khannaca4173b2017-09-12 21:52:19 -07002982/*
2983 * <ini>
2984 * periodic_stats_display_time - time(seconds) after which stats will be printed
2985 * @Min: 0
2986 * @Max: 256
2987 * @Default: 10
2988 *
2989 * This values specifies the recurring time period after which stats will be
2990 * printed in wlan driver logs.
2991 *
2992 * Usage: Internal / External
2993 *
2994 * </ini>
2995 */
2996#define CFG_PERIODIC_STATS_DISPLAY_TIME_NAME "periodic_stats_display_time"
2997#define CFG_PERIODIC_STATS_DISPLAY_TIME_DEFAULT (10)
2998#define CFG_PERIODIC_STATS_DISPLAY_TIME_MIN (0)
2999#define CFG_PERIODIC_STATS_DISPLAY_TIME_MAX (256)
3000
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08003001#endif /* MSM_PLATFORM */
3002
Nitesh Shah03161d12016-12-06 18:30:12 +05303003/*
3004 * <ini>
Sen, Devendra9ca8c432017-02-23 15:10:26 +05303005 * gIgnoreCAC - Used to ignore CAC
3006 * @Min: 0
3007 * @Max: 1
3008 * @Default: 0
3009 *
3010 * This ini is used to set default CAC
3011 *
3012 * Related: None
3013 *
3014 * Supported Feature: STA
3015 *
3016 * Usage: Internal/External
3017 *
3018 * </ini>
3019 */
3020
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08003021#define CFG_IGNORE_CAC_NAME "gIgnoreCAC"
3022#define CFG_IGNORE_CAC_MIN (0)
3023#define CFG_IGNORE_CAC_MAX (1)
3024#define CFG_IGNORE_CAC_DEFAULT (0)
3025
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08003026#define CFG_DFS_RADAR_PRI_MULTIPLIER_NAME "gDFSradarMappingPriMultiplier"
3027#define CFG_DFS_RADAR_PRI_MULTIPLIER_DEFAULT (4)
3028#define CFG_DFS_RADAR_PRI_MULTIPLIER_MIN (0)
3029#define CFG_DFS_RADAR_PRI_MULTIPLIER_MAX (10)
Sen, Devendra9ca8c432017-02-23 15:10:26 +05303030
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08003031#define CFG_ENABLE_SAP_SUSPEND "gEnableSapSuspend"
3032#define CFG_ENABLE_SAP_SUSPEND_MIN (0)
3033#define CFG_ENABLE_SAP_SUSPEND_MAX (1)
3034#define CFG_ENABLE_SAP_SUSPEND_DEFAULT (1)
3035
Sen, Devendra9ca8c432017-02-23 15:10:26 +05303036/*
3037 * <ini>
3038 * gEnableDeauthToDisassocMap - Enables deauth to disassoc map
3039 * @Min: 0
3040 * @Max: 1
3041 * @Default: 0
3042 *
3043 * This ini is used to set default disassoc map
3044 *
3045 * Related: None
3046 *
3047 * Supported Feature: STA
3048 *
3049 * Usage: Internal/External
3050 *
3051 * </ini>
3052 */
3053
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08003054#define CFG_ENABLE_DEAUTH_TO_DISASSOC_MAP_NAME "gEnableDeauthToDisassocMap"
3055#define CFG_ENABLE_DEAUTH_TO_DISASSOC_MAP_MIN (0)
3056#define CFG_ENABLE_DEAUTH_TO_DISASSOC_MAP_MAX (1)
3057#define CFG_ENABLE_DEAUTH_TO_DISASSOC_MAP_DEFAULT (0)
3058
3059#ifdef DHCP_SERVER_OFFLOAD
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08003060#define CFG_DHCP_SERVER_IP_NAME "gDHCPServerIP"
3061#define CFG_DHCP_SERVER_IP_DEFAULT ""
3062#endif /* DHCP_SERVER_OFFLOAD */
3063
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08003064#define CFG_ENABLE_MAC_ADDR_SPOOFING "gEnableMacAddrSpoof"
3065#define CFG_ENABLE_MAC_ADDR_SPOOFING_MIN (0)
3066#define CFG_ENABLE_MAC_ADDR_SPOOFING_MAX (1)
3067#define CFG_ENABLE_MAC_ADDR_SPOOFING_DEFAULT (1)
3068
Agrawal Ashishe030f782017-01-27 17:52:05 +05303069/*
3070 * <ini>
Nitesh Shah03161d12016-12-06 18:30:12 +05303071 * gStaMiracastMccRestTimeVal - Rest time when Miracast is running.
3072 * @Min: 100
3073 * @Max: 500
3074 * @Default: 400
3075 *
3076 * This ini is used to set rest time for home channel for Miracast before
3077 * going for scan.
3078 *
3079 * Related: None.
3080 *
3081 * Supported Feature: Concurrency
3082 *
3083 * Usage: Internal/External
3084 *
3085 * </ini>
3086 */
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08003087#define CFG_STA_MIRACAST_MCC_REST_TIME_VAL "gStaMiracastMccRestTimeVal"
3088#define CFG_STA_MIRACAST_MCC_REST_TIME_VAL_MIN (100)
3089#define CFG_STA_MIRACAST_MCC_REST_TIME_VAL_MAX (500)
3090#define CFG_STA_MIRACAST_MCC_REST_TIME_VAL_DEFAULT (400)
3091
3092#ifdef FEATURE_AP_MCC_CH_AVOIDANCE
Nitesh Shah03161d12016-12-06 18:30:12 +05303093/*
3094 * <ini>
3095 * gSapChannelAvoidance - SAP MCC channel avoidance.
3096 * @Min: 0
3097 * @Max: 1
3098 * @Default: 0
3099 *
3100 * This ini is used to sets sap mcc channel avoidance.
3101 *
3102 * Related: None.
3103 *
3104 * Supported Feature: Concurrency
3105 *
3106 * Usage: Internal/External
3107 *
3108 * </ini>
3109 */
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08003110#define CFG_SAP_MCC_CHANNEL_AVOIDANCE_NAME "gSapChannelAvoidance"
3111#define CFG_SAP_MCC_CHANNEL_AVOIDANCE_MIN (0)
3112#define CFG_SAP_MCC_CHANNEL_AVOIDANCE_MAX (1)
3113#define CFG_SAP_MCC_CHANNEL_AVOIDANCE_DEFAULT (0)
3114#endif /* FEATURE_AP_MCC_CH_AVOIDANCE */
3115
Agrawal Ashishe030f782017-01-27 17:52:05 +05303116/*
3117 * <ini>
Himanshu Agarwal4ecf6ca2018-05-09 16:48:56 +05303118 * gSAP11ACOverride - Override bw to 11ac for SAP in driver even if supplicant
3119 * or hostapd configures HT.
Agrawal Ashishe030f782017-01-27 17:52:05 +05303120 * @Min: 0
3121 * @Max: 1
Himanshu Agarwal4ecf6ca2018-05-09 16:48:56 +05303122 * @Default: 0
Agrawal Ashishe030f782017-01-27 17:52:05 +05303123 *
Himanshu Agarwal4ecf6ca2018-05-09 16:48:56 +05303124 * This ini is used to enable/disable 11AC override for SAP.
3125 * Android UI does not provide advanced configuration options
3126 * for SoftAP for Android O and below.
3127 * Default override disabled for android. Can be enabled from
3128 * ini for Android O and below.
Agrawal Ashishe030f782017-01-27 17:52:05 +05303129 *
3130 *
3131 * Supported Feature: SAP
3132 *
3133 *
3134 * Usage: Internal/External
3135 *
3136 * </ini>
3137 */
Himanshu Agarwal4ecf6ca2018-05-09 16:48:56 +05303138#define CFG_SAP_11AC_OVERRIDE_NAME "gSAP11ACOverride"
3139#define CFG_SAP_11AC_OVERRIDE_MIN (0)
3140#define CFG_SAP_11AC_OVERRIDE_MAX (1)
3141#define CFG_SAP_11AC_OVERRIDE_DEFAULT (0)
Agrawal Ashishe030f782017-01-27 17:52:05 +05303142
Himanshu Agarwal4ecf6ca2018-05-09 16:48:56 +05303143/*
3144 * <ini>
3145 * gGO11ACOverride - Override bw to 11ac for P2P GO
3146 * @Min: 0
3147 * @Max: 1
3148 * @Default: 1
3149 *
3150 * This ini is used to enable/disable 11AC override for GO.
3151 * P2P GO also follows start_bss and since P2P GO could not be
3152 * configured to setup VHT channel width in wpa_supplicant, driver
3153 * can override 11AC.
3154 *
3155 *
3156 * Supported Feature: P2P
3157 *
3158 *
3159 * Usage: Internal/External
3160 *
3161 * </ini>
3162 */
3163#define CFG_GO_11AC_OVERRIDE_NAME "gGO11ACOverride"
3164#define CFG_GO_11AC_OVERRIDE_MIN (0)
3165#define CFG_GO_11AC_OVERRIDE_MAX (1)
3166#define CFG_GO_11AC_OVERRIDE_DEFAULT (1)
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08003167
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08003168#define CFG_ENABLE_NON_DFS_CHAN_ON_RADAR "gPreferNonDfsChanOnRadar"
3169#define CFG_ENABLE_NON_DFS_CHAN_ON_RADAR_MIN (0)
3170#define CFG_ENABLE_NON_DFS_CHAN_ON_RADAR_MAX (1)
3171#define CFG_ENABLE_NON_DFS_CHAN_ON_RADAR_DEFAULT (0)
3172
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08003173/*
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08003174 * set the self gen power value from
3175 * 0 to 0xffff
3176 */
3177#define CFG_SELF_GEN_FRM_PWR "gSelfGenFrmPwr"
3178#define CFG_SELF_GEN_FRM_PWR_MIN (0)
3179#define CFG_SELF_GEN_FRM_PWR_MAX (0xffff)
3180#define CFG_SELF_GEN_FRM_PWR_DEFAULT (0)
3181
3182/*
3183 * fine timing measurement capability information
3184 *
3185 * <----- fine_time_meas_cap (in bits) ----->
3186 *+----------+-----+-----+------+------+-------+-------+-----+-----+
Naveen Rawat1af09392018-01-03 17:28:21 -08003187 *| 8-31 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08003188 *+----------+-----+-----+------+------+-------+-------+-----+-----+
3189 *| reserved | SAP | SAP |P2P-GO|P2P-GO|P2P-CLI|P2P-CLI| STA | STA |
3190 *| |resp |init |resp |init |resp |init |resp |init |
3191 *+----------+-----+-----+------+------+-------+-------+-----+-----+
3192 *
3193 * resp - responder role; init- initiator role
3194 *
3195 * CFG_FINE_TIME_MEAS_CAPABILITY_MAX computed based on the table
3196 * +-----------------+-----------------+-----------+
3197 * | Device Role | Initiator | Responder |
3198 * +-----------------+-----------------+-----------+
3199 * | Station | Y | N |
3200 * | P2P-CLI | Y | Y |
3201 * | P2P-GO | Y | Y |
3202 * | SAP | N | Y |
3203 * +-----------------+-----------------+-----------+
3204 */
3205#define CFG_FINE_TIME_MEAS_CAPABILITY "gfine_time_meas_cap"
3206#define CFG_FINE_TIME_MEAS_CAPABILITY_MIN (0x0000)
3207#define CFG_FINE_TIME_MEAS_CAPABILITY_MAX (0x00BD)
3208#define CFG_FINE_TIME_MEAS_CAPABILITY_DEFAULT (0x000D)
3209
Agrawal Ashishe030f782017-01-27 17:52:05 +05303210/*
3211 * <ini>
Kiran Kumar Lokere1a43bcf2018-05-15 15:51:58 -07003212 * etsi13_srd_chan_in_master_mode - Enable/disable ETSI SRD channels in
3213 * master mode PCL and ACS functionality
3214 * @Min: 0
3215 * @Max: 1
3216 * @Default: 0
3217 *
3218 * etsi13_srd_chan_in_master_mode is to enable/disable ETSI SRD channels in
3219 * master mode PCL and ACS functionality
3220 *
3221 * Related: None
3222 *
3223 * Supported Feature: SAP/P2P-GO
3224 *
3225 * Usage: Internal/External
3226 *
3227 * </ini>
3228 */
3229#define CFG_ETSI13_SRD_CHAN_IN_MASTER_MODE "etsi13_srd_chan_in_master_mode"
3230#define CFG_ETSI13_SRD_CHAN_IN_MASTER_MODE_DEF (0)
3231#define CFG_ETSI13_SRD_CHAN_IN_MASTER_MODE_MIN (0)
3232#define CFG_ETSI13_SRD_CHAN_IN_MASTER_MODE_MAX (1)
3233
Nitesh Shah5651b1e2017-02-02 17:59:52 +05303234/*
3235 *
3236 * <ini>
3237 * gDualMacFeatureDisable - Disable Dual MAC feature.
3238 * @Min: 0
Tushnim Bhattacharyya49ed8ab2017-05-26 18:20:10 -07003239 * @Max: 4
Nitesh Shah5651b1e2017-02-02 17:59:52 +05303240 * @Default: 0
3241 *
3242 * This ini is used to enable/disable dual MAC feature.
Tushnim Bhattacharyya49ed8ab2017-05-26 18:20:10 -07003243 * 0 - enable DBS
3244 * 1 - disable DBS
3245 * 2 - disable DBS for connection but keep DBS for scan
3246 * 3 - disable DBS for connection but keep DBS scan with async
3247 * scan policy disabled
3248 * 4 - enable DBS for connection as well as for scan with async
3249 * scan policy disabled
Bala Venkateshc8236ca2018-03-09 12:38:29 +05303250 * 5 - enable DBS for connection but disable DBS for scan.
Tushnim Bhattacharyyaaececb22018-08-06 14:27:46 -07003251 * 6 - enable DBS for connection but disable simultaneous scan
3252 * from upper layer (DBS scan remains enabled in FW).
Tushnim Bhattacharyya49ed8ab2017-05-26 18:20:10 -07003253 *
3254 * Note: INI item value should match 'enum dbs_support'
Nitesh Shah5651b1e2017-02-02 17:59:52 +05303255 *
3256 * Related: None.
3257 *
3258 * Supported Feature: DBS
3259 *
3260 * Usage: Internal/External
3261 *
3262 * </ini>
3263 */
Tushnim Bhattacharyya49ed8ab2017-05-26 18:20:10 -07003264#define CFG_DUAL_MAC_FEATURE_DISABLE "gDualMacFeatureDisable"
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08003265#define CFG_DUAL_MAC_FEATURE_DISABLE_MIN (0)
Tushnim Bhattacharyyaaececb22018-08-06 14:27:46 -07003266#define CFG_DUAL_MAC_FEATURE_DISABLE_MAX (6)
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08003267#define CFG_DUAL_MAC_FEATURE_DISABLE_DEFAULT (0)
3268
Varun Reddy Yeturub43fda12015-09-10 18:16:21 -07003269/*
Nitesh Shah50a3de12017-04-03 19:37:19 +05303270 * <ini>
Ganesh Kondabattini930304c2017-10-10 15:25:36 +05303271 * g_sta_sap_scc_on_dfs_chan - Allow STA+SAP SCC on DFS channel with master
3272 * mode support disabled.
3273 * @Min: 0
3274 * @Max: 1
3275 * @Default: 0
3276 *
3277 * This ini is used to allow STA+SAP SCC on DFS channel with master mode
3278 * support disabled.
3279 * 0 - Disallow STA+SAP SCC on DFS channel
3280 * 1 - Allow STA+SAP SCC on DFS channel with master mode disabled
3281 *
3282 * Related: None.
3283 *
3284 * Supported Feature: Non-DBS, DBS
3285 *
3286 * Usage: Internal/External
3287 *
3288 * </ini>
3289 */
3290#define CFG_STA_SAP_SCC_ON_DFS_CHAN "g_sta_sap_scc_on_dfs_chan"
3291#define CFG_STA_SAP_SCC_ON_DFS_CHAN_MIN (0)
3292#define CFG_STA_SAP_SCC_ON_DFS_CHAN_MAX (1)
3293#define CFG_STA_SAP_SCC_ON_DFS_CHAN_DEFAULT (0)
3294
3295/*
Zhu Jianmin72d32de2018-05-11 10:54:10 +08003296 * <ini>
3297 * g_sta_sap_scc_on_lte_coex_chan - Allow STA+SAP SCC on LTE coex channel
3298 * @Min: 0
3299 * @Max: 1
3300 * @Default: 0
3301 *
3302 * This ini is used to allow STA+SAP SCC on LTE coex channel
3303 * 0 - Disallow STA+SAP SCC on LTE coex channel
3304 * 1 - Allow STA+SAP SCC on LTE coex channel
3305 *
3306 * Related: None.
3307 *
3308 * Supported Feature: Non-DBS, DBS
3309 *
3310 * Usage: Internal/External
3311 *
3312 * </ini>
3313 */
3314#define CFG_STA_SAP_SCC_ON_LTE_COEX_CHAN "g_sta_sap_scc_on_lte_coex_chan"
3315#define CFG_STA_SAP_SCC_ON_LTE_COEX_CHAN_MIN (0)
3316#define CFG_STA_SAP_SCC_ON_LTE_COEX_CHAN_MAX (1)
3317#define CFG_STA_SAP_SCC_ON_LTE_COEX_CHAN_DEFAULT (0)
3318
3319/*
Varun Reddy Yeturub43fda12015-09-10 18:16:21 -07003320 * gPNOChannelPrediction will allow user to enable/disable the
3321 * PNO channel prediction feature.
3322 * In current PNO implementation, scan is always done until all configured
3323 * channels are scanned. If we can determine DUT is stationary based on
3324 * scanning a subset of channels, we may cancel the remaining channels.
3325 * Hence, we can save additional power consumption.
3326 */
3327#define CFG_PNO_CHANNEL_PREDICTION_NAME "gPNOChannelPrediction"
3328#define CFG_PNO_CHANNEL_PREDICTION_MIN (0)
3329#define CFG_PNO_CHANNEL_PREDICTION_MAX (1)
3330#define CFG_PNO_CHANNEL_PREDICTION_DEFAULT (0)
3331/*
3332 * The top K number of channels are used for tanimoto distance
3333 * calculation. These are the top channels on which the probability
3334 * of finding the AP's is extremely high. This number is intended
3335 * for tweaking the internal algorithm for experiments. This should
3336 * not be changed externally.
3337 */
3338#define CFG_TOP_K_NUM_OF_CHANNELS_NAME "gTopKNumOfChannels"
3339#define CFG_TOP_K_NUM_OF_CHANNELS_MIN (1)
3340#define CFG_TOP_K_NUM_OF_CHANNELS_MAX (5)
3341#define CFG_TOP_K_NUM_OF_CHANNELS_DEFAULT (3)
3342/*
3343 * This is the threshold value to determine that the STA is
3344 * stationary. If the tanimoto distance is less than this
3345 * value, then the device is considered to be stationary.
3346 * This parameter is intended to tweak the internal algorithm
3347 * for experiments. This should not be changed externally.
3348 */
3349#define CFG_STATIONARY_THRESHOLD_NAME "gStationaryThreshold"
3350#define CFG_STATIONARY_THRESHOLD_MIN (0)
3351#define CFG_STATIONARY_THRESHOLD_MAX (100)
3352#define CFG_STATIONARY_THRESHOLD_DEFAULT (10)
Varun Reddy Yeturu044bda22015-11-21 22:03:40 -08003353
Deepak Dhamdhere68929ec2015-08-05 15:16:35 -07003354/* Option to report rssi in cfg80211_inform_bss_frame()
3355 * 0 = use rssi value based on noise floor = -96 dBm
3356 * 1 = use rssi value based on actual noise floor in hardware
3357 */
3358#define CFG_INFORM_BSS_RSSI_RAW_NAME "gInformBssRssiRaw"
3359#define CFG_INFORM_BSS_RSSI_RAW_MIN (0)
3360#define CFG_INFORM_BSS_RSSI_RAW_MAX (1)
3361#define CFG_INFORM_BSS_RSSI_RAW_DEFAULT (1)
Ravi Joshi742495d2015-11-09 18:56:53 -08003362
Yu Wang66a250b2017-07-19 11:46:40 +08003363#ifdef WLAN_FEATURE_TSF_PLUS
3364/* PTP options */
3365#define CFG_SET_TSF_PTP_OPT_NAME "gtsf_ptp_options"
3366#define CFG_SET_TSF_PTP_OPT_MIN (0)
3367#define CFG_SET_TSF_PTP_OPT_MAX (0xff)
3368#define CFG_SET_TSF_PTP_OPT_RX (0x1)
3369#define CFG_SET_TSF_PTP_OPT_TX (0x2)
3370#define CFG_SET_TSF_PTP_OPT_RAW (0x4)
3371#define CFG_SET_TSF_DBG_FS (0x8)
3372#define CFG_SET_TSF_PTP_OPT_DEFAULT (0xf)
3373#endif
3374
Nirav Shahd21a2e32018-04-20 16:34:43 +05303375#ifdef CONFIG_DP_TRACE
gbian62edd7e2017-03-07 13:12:13 +08003376/*
Nirav Shahcc1f1ae2016-04-26 11:41:29 +05303377 * Enable/disable DPTRACE
3378 * Enabling this might have performace impact.
3379 */
3380#define CFG_ENABLE_DP_TRACE "enable_dp_trace"
3381#define CFG_ENABLE_DP_TRACE_MIN (0)
Mohit Khannaf8f96822017-05-17 17:11:59 -07003382#define CFG_ENABLE_DP_TRACE_MAX (1)
Nirav Shah1da77682016-05-03 20:16:39 +05303383#define CFG_ENABLE_DP_TRACE_DEFAULT (1)
Nirav Shahcc1f1ae2016-04-26 11:41:29 +05303384
Mohit Khannaf8f96822017-05-17 17:11:59 -07003385/* Max length of gDptraceConfig string. e.g.- "1, 6, 1, 62" */
3386#define DP_TRACE_CONFIG_STRING_LENGTH (20)
3387
3388/* At max 4 DP Trace config parameters are allowed. Refer - gDptraceConfig */
3389#define DP_TRACE_CONFIG_NUM_PARAMS (4)
3390
3391/*
3392 * Default value of live mode in case it cannot be determined from cfg string
3393 * gDptraceConfig
3394 */
3395#define DP_TRACE_CONFIG_DEFAULT_LIVE_MODE (1)
3396
3397/*
3398 * Default value of thresh (packets/second) beyond which DP Trace is disabled.
3399 * Use this default in case the value cannot be determined from cfg string
3400 * gDptraceConfig
3401 */
Mohit Khannaf7562c32018-07-05 17:42:36 -07003402#define DP_TRACE_CONFIG_DEFAULT_THRESH (6)
Mohit Khannaf8f96822017-05-17 17:11:59 -07003403
3404/*
3405 * Number of intervals of BW timer to wait before enabling/disabling DP Trace.
3406 * Since throughput threshold to disable live logging for DP Trace is very low,
3407 * we calculate throughput based on # packets received in a second.
Mohit Khannaf7562c32018-07-05 17:42:36 -07003408 * For example assuming bandwidth timer interval is 100ms, and if more than 6
3409 * prints are received in 10 * 100 ms interval, we want to disable DP Trace
Mohit Khannaf8f96822017-05-17 17:11:59 -07003410 * live logging. DP_TRACE_CONFIG_DEFAULT_THRESH_TIME_LIMIT is the default
3411 * value, to be used in case the real value cannot be derived from
3412 * bw timer interval
3413 */
3414#define DP_TRACE_CONFIG_DEFAULT_THRESH_TIME_LIMIT (10)
3415
3416/* Default proto bitmap in case its missing in gDptraceConfig string */
3417#define DP_TRACE_CONFIG_DEFAULT_BITMAP \
3418 (QDF_NBUF_PKT_TRAC_TYPE_EAPOL |\
3419 QDF_NBUF_PKT_TRAC_TYPE_DHCP |\
3420 QDF_NBUF_PKT_TRAC_TYPE_MGMT_ACTION |\
3421 QDF_NBUF_PKT_TRAC_TYPE_ARP |\
Poddar, Siddarth44aa5aa2017-07-10 17:30:22 +05303422 QDF_NBUF_PKT_TRAC_TYPE_ICMP |\
3423 QDF_NBUF_PKT_TRAC_TYPE_ICMPv6)\
Mohit Khannaf8f96822017-05-17 17:11:59 -07003424
3425/* Default verbosity, in case its missing in gDptraceConfig string*/
3426#define DP_TRACE_CONFIG_DEFAULT_VERBOSTY QDF_DP_TRACE_VERBOSITY_LOW
jitiphilb03ae082018-11-09 17:41:59 +05303427
Mohit Khannaf8f96822017-05-17 17:11:59 -07003428#define CFG_ENABLE_DP_TRACE_CONFIG "gDptraceConfig"
Mohit Khannaf7562c32018-07-05 17:42:36 -07003429#define CFG_ENABLE_DP_TRACE_CONFIG_DEFAULT "1, 6, 2, 126"
Nirav Shahd21a2e32018-04-20 16:34:43 +05303430#endif
Mohit Khannaf8f96822017-05-17 17:11:59 -07003431
Gupta, Kapil96c7f2f2016-04-25 19:13:41 +05303432/*
Gupta, Kapil96c7f2f2016-04-25 19:13:41 +05303433 * This parameter will set the weight to calculate the average low pass
3434 * filter for channel congestion.
3435 * Acceptable values for this: 0-100 (In %)
3436 */
3437#define CFG_ADAPT_DWELL_LPF_WEIGHT_NAME "adapt_dwell_lpf_weight"
3438#define CFG_ADAPT_DWELL_LPF_WEIGHT_MIN (0)
3439#define CFG_ADAPT_DWELL_LPF_WEIGHT_MAX (100)
3440#define CFG_ADAPT_DWELL_LPF_WEIGHT_DEFAULT (80)
3441
3442/*
3443 * This parameter will set interval to monitor wifi activity
3444 * in passive scan in msec.
3445 * Acceptable values for this: 0-25
3446 */
3447#define CFG_ADAPT_DWELL_PASMON_INTVAL_NAME "adapt_dwell_passive_mon_intval"
3448#define CFG_ADAPT_DWELL_PASMON_INTVAL_MIN (0)
Kapil Gupta6eb83c02017-03-03 11:07:52 +05303449#define CFG_ADAPT_DWELL_PASMON_INTVAL_MAX (25)
3450#define CFG_ADAPT_DWELL_PASMON_INTVAL_DEFAULT (10)
Gupta, Kapil96c7f2f2016-04-25 19:13:41 +05303451
3452/*
3453 * This parameter will set % of wifi activity used in passive scan 0-100.
3454 * Acceptable values for this: 0-100 (in %)
3455 */
3456#define CFG_ADAPT_DWELL_WIFI_THRESH_NAME "adapt_dwell_wifi_act_threshold"
3457#define CFG_ADAPT_DWELL_WIFI_THRESH_MIN (0)
3458#define CFG_ADAPT_DWELL_WIFI_THRESH_MAX (100)
3459#define CFG_ADAPT_DWELL_WIFI_THRESH_DEFAULT (10)
3460
3461/*
Manjeet Singha5acc162017-01-06 17:38:16 +05303462 * <ini>
Hanumanth Reddy Pothulaffc2d482017-07-04 11:32:44 +05303463 * restart_beaconing_on_chan_avoid_event - control the beaconing entity to move
3464 * away from active LTE channels
Hanumanth Reddy Pothula9c161dd2017-03-23 19:03:08 +05303465 * @Min: 0
Tushnim Bhattacharyya3efa49a2017-07-18 15:43:09 -07003466 * @Max: 2
Hanumanth Reddy Pothula9c161dd2017-03-23 19:03:08 +05303467 * @Default: 1
3468 *
Hanumanth Reddy Pothulaffc2d482017-07-04 11:32:44 +05303469 * This ini is used to control the beaconing entity (SAP/GO) to move away from
3470 * active LTE channels when channel avoidance event is received
3471 * restart_beaconing_on_chan_avoid_event=0: Don't allow beaconing entity move
3472 * from active LTE channels
3473 * restart_beaconing_on_chan_avoid_event=1: Allow beaconing entity move from
3474 * active LTE channels
Tushnim Bhattacharyya3efa49a2017-07-18 15:43:09 -07003475 * restart_beaconing_on_chan_avoid_event=2: Allow beaconing entity move from
3476 * 2.4G active LTE channels only
Hanumanth Reddy Pothula9c161dd2017-03-23 19:03:08 +05303477 *
3478 * Related: None
3479 *
3480 * Supported Feature: channel avoidance
3481 *
3482 * Usage: Internal/External
3483 *
3484 * </ini>
3485 */
Hanumanth Reddy Pothulaffc2d482017-07-04 11:32:44 +05303486#define CFG_RESTART_BEACONING_ON_CH_AVOID_NAME "restart_beaconing_on_chan_avoid_event"
Tushnim Bhattacharyya3efa49a2017-07-18 15:43:09 -07003487#define CFG_RESTART_BEACONING_ON_CH_AVOID_MIN (CH_AVOID_RULE_DO_NOT_RESTART)
3488#define CFG_RESTART_BEACONING_ON_CH_AVOID_MAX (CH_AVOID_RULE_RESTART_24G_ONLY)
3489#define CFG_RESTART_BEACONING_ON_CH_AVOID_DEFAULT (CH_AVOID_RULE_RESTART)
Agrawal, Ashish4e5fa1c2016-09-21 19:03:43 +05303490
3491/*
Amar Singhal18517882016-08-08 12:26:20 -07003492 * Support to start sap in indoor channel
3493 * Customer can config this item to enable/disable sap in indoor channel
3494 * Default: Disable
3495 */
3496#define CFG_INDOOR_CHANNEL_SUPPORT_NAME "gindoor_channel_support"
3497#define CFG_INDOOR_CHANNEL_SUPPORT_MIN (0)
3498#define CFG_INDOOR_CHANNEL_SUPPORT_MAX (1)
3499#define CFG_INDOOR_CHANNEL_SUPPORT_DEFAULT (0)
Nirav Shahbd36b062016-07-18 11:12:59 +05303500
Ravi Joshibb8d4512016-08-22 10:14:52 -07003501/*
Mukul Sharmaecf8e092017-12-19 22:36:31 +05303502 * <ini>
3503 * g_mark_sap_indoor_as_disable - Enable/Disable Indoor channel
3504 * @Min: 0
3505 * @Max: 1
3506 * @Default: 0
3507 *
3508 * This ini is used to mark the Indoor channel as
3509 * disable when SAP start and revert it on SAP stop,
3510 * so SAP will not turn on indoor channel and
3511 * sta will not scan/associate and roam on indoor
3512 * channels.
3513 *
3514 * Related: If g_mark_sap_indoor_as_disable set, turn the
3515 * indoor channels to disable and update Wiphy & fw.
3516 *
3517 * Supported Feature: SAP/STA
3518 *
3519 * Usage: External
3520 *
3521 * </ini>
3522 */
3523#define CFG_MARK_INDOOR_AS_DISABLE_NAME "g_mark_sap_indoor_as_disable"
3524#define CFG_MARK_INDOOR_AS_DISABLE_MIN (0)
3525#define CFG_MARK_INDOOR_AS_DISABLE_MAX (1)
3526#define CFG_MARK_INDOOR_AS_DISABLE_DEFAULT (0)
3527
3528/*
Yingying Tangb4832f72016-10-20 13:44:55 +08003529 * sap tx leakage threshold
3530 * customer can set this value from 100 to 1000 which means
3531 * sap tx leakage threshold is -10db to -100db
3532 */
3533#define CFG_SAP_TX_LEAKAGE_THRESHOLD_NAME "gsap_tx_leakage_threshold"
3534#define CFG_SAP_TX_LEAKAGE_THRESHOLD_MIN (100)
3535#define CFG_SAP_TX_LEAKAGE_THRESHOLD_MAX (1000)
3536#define CFG_SAP_TX_LEAKAGE_THRESHOLD_DEFAULT (310)
3537
Anurag Chouhan7c01cc42016-12-16 21:33:43 +05303538/*
3539 * <ini>
Manjeet Singha9cae432017-02-28 11:58:22 +05303540 * enable_5g_band_pref - Enable preference for 5G from INI.
3541 * @Min: 0
3542 * @Max: 1
3543 * @Default: 0
3544 * This ini is used to enable 5G preference parameters.
3545 *
3546 * Related: 5g_rssi_boost_threshold, 5g_rssi_boost_factor, 5g_max_rssi_boost
3547 * 5g_rssi_penalize_threshold, 5g_rssi_penalize_factor, 5g_max_rssi_penalize
3548 *
3549 * Supported Feature: 5G band preference
3550 *
3551 * Usage: External
3552 *
3553 * </ini>
3554 */
3555
3556#define CFG_ENABLE_5G_BAND_PREF_NAME "enable_5g_band_pref"
3557#define CFG_ENABLE_5G_BAND_PREF_MIN (0)
3558#define CFG_ENABLE_5G_BAND_PREF_MAX (1)
3559#define CFG_ENABLE_5G_BAND_PREF_DEFAULT (0)
3560
3561/*
3562 * <ini>
3563 * 5g_rssi_boost_threshold - A_band_boost_threshold above which 5 GHz is favored.
3564 * @Min: -55
3565 * @Max: -70
3566 * @Default: -60
3567 * This ini is used to set threshold for 5GHz band preference.
3568 *
3569 * Related: 5g_rssi_boost_factor, 5g_max_rssi_boost
3570 * 5g_rssi_penalize_threshold, 5g_rssi_penalize_factor, 5g_max_rssi_penalize
3571 *
3572 * Supported Feature: 5G band preference
3573 *
3574 * Usage: External
3575 *
3576 * </ini>
3577 */
3578#define CFG_5G_RSSI_BOOST_THRESHOLD_NAME "5g_rssi_boost_threshold"
3579#define CFG_5G_RSSI_BOOST_THRESHOLD_MIN (-55)
3580#define CFG_5G_RSSI_BOOST_THRESHOLD_MAX (-70)
3581#define CFG_5G_RSSI_BOOST_THRESHOLD_DEFAULT (-60)
3582
3583/*
3584 * <ini>
3585 * 5g_rssi_boost_factor - Factor by which 5GHz RSSI is boosted.
3586 * @Min: 0
3587 * @Max: 2
3588 * @Default: 1
3589 * This ini is used to set the 5Ghz boost factor.
3590 *
3591 * Related: 5g_rssi_boost_threshold, 5g_max_rssi_boost
3592 * 5g_rssi_penalize_threshold, 5g_rssi_penalize_factor, 5g_max_rssi_penalize
3593 *
3594 * Supported Feature: 5G band preference
3595 *
3596 * Usage: External
3597 *
3598 * </ini>
3599 */
3600#define CFG_5G_RSSI_BOOST_FACTOR_NAME "5g_rssi_boost_factor"
3601#define CFG_5G_RSSI_BOOST_FACTOR_MIN (0)
3602#define CFG_5G_RSSI_BOOST_FACTOR_MAX (2)
3603#define CFG_5G_RSSI_BOOST_FACTOR_DEFAULT (1)
3604
3605/*
3606 * <ini>
3607 * 5g_max_rssi_boost - Maximum boost that can be applied to 5GHz RSSI.
3608 * @Min: 0
3609 * @Max: 20
3610 * @Default: 10
3611 * This ini is used to set maximum boost which can be given to a 5Ghz network.
3612 *
3613 * Related: 5g_rssi_boost_threshold, 5g_rssi_boost_factor
3614 * 5g_rssi_penalize_threshold, 5g_rssi_penalize_factor, 5g_max_rssi_penalize
3615 *
3616 * Supported Feature: 5G band preference
3617 *
3618 * Usage: External
3619 *
3620 * </ini>
3621 */
3622#define CFG_5G_MAX_RSSI_BOOST_NAME "5g_max_rssi_boost"
3623#define CFG_5G_MAX_RSSI_BOOST_MIN (0)
3624#define CFG_5G_MAX_RSSI_BOOST_MAX (20)
3625#define CFG_5G_MAX_RSSI_BOOST_DEFAULT (10)
3626
3627/*
3628 * <ini>
3629 * 5g_rssi_penalize_threshold - A_band_penalize_threshold above which
3630 * 5 GHz is not favored.
3631 * @Min: -65
3632 * @Max: -80
3633 * @Default: -70
3634 * This ini is used to set threshold for 5GHz band preference.
3635 *
3636 * Related: 5g_rssi_penalize_factor, 5g_max_rssi_penalize
3637 * 5g_rssi_boost_threshold, 5g_rssi_boost_factor, 5g_max_rssi_boost
3638 *
3639 * Supported Feature: 5G band preference
3640 *
3641 * Usage: External
3642 *
3643 * </ini>
3644 */
3645#define CFG_5G_RSSI_PENALIZE_THRESHOLD_NAME "5g_rssi_penalize_threshold"
3646#define CFG_5G_RSSI_PENALIZE_THRESHOLD_MIN (-65)
3647#define CFG_5G_RSSI_PENALIZE_THRESHOLD_MAX (-80)
3648#define CFG_5G_RSSI_PENALIZE_THRESHOLD_DEFAULT (-70)
3649
3650/*
3651 * <ini>
3652 * 5g_rssi_penalize_factor - Factor by which 5GHz RSSI is penalizeed.
3653 * @Min: 0
3654 * @Max: 2
3655 * @Default: 1
3656 * This ini is used to set the 5Ghz penalize factor.
3657 *
3658 * Related: 5g_rssi_penalize_threshold, 5g_max_rssi_penalize
3659 * 5g_rssi_boost_threshold, 5g_rssi_boost_factor, 5g_max_rssi_boost
3660 *
3661 * Supported Feature: 5G band preference
3662 *
3663 * Usage: External
3664 *
3665 * </ini>
3666 */
3667#define CFG_5G_RSSI_PENALIZE_FACTOR_NAME "5g_rssi_penalize_factor"
3668#define CFG_5G_RSSI_PENALIZE_FACTOR_MIN (0)
3669#define CFG_5G_RSSI_PENALIZE_FACTOR_MAX (2)
3670#define CFG_5G_RSSI_PENALIZE_FACTOR_DEFAULT (1)
3671
3672/*
3673 * <ini>
3674 * 5g_max_rssi_penalize - Maximum penalty that can be applied to 5GHz RSSI.
3675 * @Min: 0
3676 * @Max: 20
3677 * @Default: 10
3678 * This ini is used to set maximum penalty which can be given to a 5Ghz network.
3679 *
3680 * Related: 5g_rssi_penalize_threshold, 5g_rssi_penalize_factor
3681 * 5g_rssi_boost_threshold, 5g_rssi_boost_factor, 5g_max_rssi_boost
3682 *
3683 * Supported Feature: 5G band preference
3684 *
3685 * Usage: External
3686 *
3687 * </ini>
3688 */
3689#define CFG_5G_MAX_RSSI_PENALIZE_NAME "5g_max_rssi_penalize"
3690#define CFG_5G_MAX_RSSI_PENALIZE_MIN (0)
3691#define CFG_5G_MAX_RSSI_PENALIZE_MAX (20)
3692#define CFG_5G_MAX_RSSI_PENALIZE_DEFAULT (10)
3693
3694/*
3695 * <ini>
Selvaraj, Sridhar0a71e542017-01-10 10:21:06 +05303696 * gPowerUsage - Preferred Power Usage
3697 * @Min: Min
3698 * @Max: Max
3699 * @Default: Mod
3700 *
3701 * This ini is used to set the preferred power usage
3702 *
3703 * Related: None
3704 *
3705 * Supported Feature: Power Save
3706 *
3707 * Usage: External
3708 *
3709 * </ini>
3710 */
3711#define CFG_POWER_USAGE_NAME "gPowerUsage"
3712#define CFG_POWER_USAGE_MIN "Min"
3713#define CFG_POWER_USAGE_MAX "Max"
3714#define CFG_POWER_USAGE_DEFAULT "Mod"
3715
Selvaraj, Sridhar0641fab2017-05-17 16:02:00 +05303716/*
3717 * <ini>
Selvaraj, Sridhar0a71e542017-01-10 10:21:06 +05303718 * gEnableImps - Enable/Disable IMPS
3719 * @Min: 0
3720 * @Max: 1
3721 * @Default: 1
3722 *
3723 * This ini is used to enable/Disable IMPS(IdleModePowerSave) Mode
3724 *
3725 * Related: None
3726 *
3727 * Supported Feature: Power Save
3728 *
3729 * Usage: External
3730 *
3731 * </ini>
3732 */
3733#define CFG_ENABLE_IMPS_NAME "gEnableImps"
3734#define CFG_ENABLE_IMPS_MIN (0)
3735#define CFG_ENABLE_IMPS_MAX (1)
3736#define CFG_ENABLE_IMPS_DEFAULT (1)
3737
3738/*
3739 * <ini>
3740 * gEnableBmps - Enable/Disable BMPS
3741 * @Min: 0
3742 * @Max: 1
3743 * @Default: 1
3744 *
3745 * This ini is used to enable/Disable BMPS(BeaconModePowerSave) Mode
3746 *
3747 * Related: None
3748 *
3749 * Supported Feature: Power Save
3750 *
3751 * Usage: External
3752 *
3753 * </ini>
3754 */
3755#define CFG_ENABLE_PS_NAME "gEnableBmps"
3756#define CFG_ENABLE_PS_MIN (0)
3757#define CFG_ENABLE_PS_MAX (1)
3758#define CFG_ENABLE_PS_DEFAULT (1)
3759
3760/*
3761 * <ini>
3762 * gAutoBmpsTimerValue - Set Auto BMPS Timer value
3763 * @Min: 0
3764 * @Max: 120
Pragaspathi Thilagaraja19068f2018-10-01 15:44:06 +05303765 * @Default: 90
Selvaraj, Sridhar0a71e542017-01-10 10:21:06 +05303766 *
3767 * This ini is used to set Auto BMPS Timer value in seconds
3768 *
3769 * Related: gEnableBmps
3770 *
3771 * Supported Feature: Power Save
3772 *
3773 * Usage: External
3774 *
3775 * </ini>
3776 */
3777#define CFG_AUTO_PS_ENABLE_TIMER_NAME "gAutoBmpsTimerValue"
3778#define CFG_AUTO_PS_ENABLE_TIMER_MIN (0)
3779#define CFG_AUTO_PS_ENABLE_TIMER_MAX (120)
Pragaspathi Thilagaraja19068f2018-10-01 15:44:06 +05303780#define CFG_AUTO_PS_ENABLE_TIMER_DEFAULT (90)
Selvaraj, Sridhar0a71e542017-01-10 10:21:06 +05303781
Zhu Jianmin04392c42017-05-12 16:34:53 +08003782#ifdef WLAN_ICMP_DISABLE_PS
3783/*
3784 * <ini>
3785 * gIcmpDisablePsValue - Set ICMP packet disable power save value
3786 * @Min: 0
3787 * @Max: 10000
3788 * @Default: 5000
3789 *
3790 * This ini is used to set ICMP packet disable power save value in
3791 * millisecond.
3792 *
3793 * Related: gEnableBmps
3794 *
3795 * Supported Feature: Power Save
3796 *
3797 * Usage: External
3798 *
3799 * </ini>
3800 */
3801#define CFG_ICMP_DISABLE_PS_NAME "gIcmpDisablePsValue"
3802#define CFG_ICMP_DISABLE_PS_MIN (0)
3803#define CFG_ICMP_DISABLE_PS_MAX (10000)
3804#define CFG_ICMP_DISABLE_PS_DEFAULT (5000)
3805#endif
3806
Selvaraj, Sridhar0a71e542017-01-10 10:21:06 +05303807/*
3808 * <ini>
3809 * gBmpsMinListenInterval - Set BMPS Minimum Listen Interval
3810 * @Min: 1
3811 * @Max: 65535
3812 * @Default: 1
3813 *
3814 * This ini is used to set BMPS Minimum Listen Interval. If gPowerUsage
3815 * is set "Min", this INI need to be set.
3816 *
3817 * Related: gEnableBmps, gPowerUsage
3818 *
3819 * Supported Feature: Power Save
3820 *
3821 * Usage: External
3822 *
3823 * </ini>
3824 */
3825#define CFG_BMPS_MINIMUM_LI_NAME "gBmpsMinListenInterval"
3826#define CFG_BMPS_MINIMUM_LI_MIN (1)
3827#define CFG_BMPS_MINIMUM_LI_MAX (65535)
3828#define CFG_BMPS_MINIMUM_LI_DEFAULT (1)
3829
3830/*
3831 * <ini>
Selvaraj, Sridhar0a71e542017-01-10 10:21:06 +05303832 * gBmpsMaxListenInterval - Set BMPS Maximum Listen Interval
3833 * @Min: 1
3834 * @Max: 65535
3835 * @Default: 1
3836 *
3837 * This ini is used to set BMPS Maximum Listen Interval. If gPowerUsage
3838 * is set "Max", this INI need to be set.
3839 *
3840 * Related: gEnableBmps, gPowerUsage
3841 *
3842 * Supported Feature: Power Save
3843 *
3844 * Usage: External
3845 *
3846 * </ini>
3847 */
3848#define CFG_BMPS_MAXIMUM_LI_NAME "gBmpsMaxListenInterval"
3849#define CFG_BMPS_MAXIMUM_LI_MIN (1)
3850#define CFG_BMPS_MAXIMUM_LI_MAX (65535)
3851#define CFG_BMPS_MAXIMUM_LI_DEFAULT (1)
3852
3853#ifdef FEATURE_RUNTIME_PM
3854/*
3855 * <ini>
3856 * gRuntimePM - enable runtime suspend
3857 * @Min: 0
3858 * @Max: 1
3859 * @Default: 0
3860 *
3861 * This ini is used to enable runtime_suspend
3862 *
3863 * Related: None
3864 *
3865 * Supported Feature: Power Save
3866 *
3867 * Usage: External
3868 *
3869 * </ini>
3870 */
3871#define CFG_ENABLE_RUNTIME_PM "gRuntimePM"
3872#define CFG_ENABLE_RUNTIME_PM_MIN (0)
3873#define CFG_ENABLE_RUNTIME_PM_MAX (1)
3874#define CFG_ENABLE_RUNTIME_PM_DEFAULT (0)
Selvaraj, Sridhar0a71e542017-01-10 10:21:06 +05303875#endif
3876
Selvaraj, Sridhar4f684bb2017-01-19 15:59:23 +05303877/*
Dustin Brown13995f02017-01-12 15:38:42 -08003878 * <ini>
Nachiket Kukadee547a482018-05-22 16:43:30 +05303879 * gActiveUcBpfMode - Control UC active APF mode
Dustin Brown13995f02017-01-12 15:38:42 -08003880 * @Min: 0 (disabled)
3881 * @Max: 2 (adaptive)
3882 * @Default: 0 (disabled)
3883 *
Nachiket Kukadee547a482018-05-22 16:43:30 +05303884 * This config item controls UC APF in active mode. There are 3 modes:
3885 * 0) disabled - APF is disabled in active mode
3886 * 1) enabled - APF is enabled for all packets in active mode
3887 * 2) adaptive - APF is enabled for packets up to some throughput threshold
Dustin Brown13995f02017-01-12 15:38:42 -08003888 *
Hanumanth Reddy Pothulae87621b2017-04-12 20:53:35 +05303889 * Related: gActiveMcBcBpfMode
Dustin Brown13995f02017-01-12 15:38:42 -08003890 *
Nachiket Kukadee547a482018-05-22 16:43:30 +05303891 * Supported Feature: Active Mode APF
Dustin Brown13995f02017-01-12 15:38:42 -08003892 *
3893 * Usage: Internal/External
3894 * </ini>
3895 */
Nachiket Kukadee547a482018-05-22 16:43:30 +05303896#define CFG_ACTIVE_UC_APF_MODE_NAME "gActiveUcBpfMode"
3897#define CFG_ACTIVE_UC_APF_MODE_MIN (ACTIVE_APF_DISABLED)
3898#define CFG_ACTIVE_UC_APF_MODE_MAX (ACTIVE_APF_MODE_COUNT - 1)
3899#define CFG_ACTIVE_UC_APF_MODE_DEFAULT (ACTIVE_APF_DISABLED)
Hanumanth Reddy Pothulae87621b2017-04-12 20:53:35 +05303900
3901/*
3902 * <ini>
Nachiket Kukadee547a482018-05-22 16:43:30 +05303903 * gActiveMcBcBpfMode - Control MC/BC active APF mode
Hanumanth Reddy Pothulae87621b2017-04-12 20:53:35 +05303904 * @Min: 0 (disabled)
Ravi Kumar Bokka7a4034e2017-08-17 11:51:32 +05303905 * @Max: 1 (enabled)
Hanumanth Reddy Pothulae87621b2017-04-12 20:53:35 +05303906 * @Default: 0 (disabled)
3907 *
Nachiket Kukadee547a482018-05-22 16:43:30 +05303908 * This config item controls MC/BC APF in active mode. There are 3 modes:
3909 * 0) disabled - APF is disabled in active mode
3910 * 1) enabled - APF is enabled for all packets in active mode
3911 * 2) adaptive - APF is enabled for packets up to some throughput threshold
Hanumanth Reddy Pothulae87621b2017-04-12 20:53:35 +05303912 *
3913 * Related: gActiveUcBpfMode
3914 *
Nachiket Kukadee547a482018-05-22 16:43:30 +05303915 * Supported Feature: Active Mode APF
Hanumanth Reddy Pothulae87621b2017-04-12 20:53:35 +05303916 *
3917 * Usage: Internal/External
3918 * </ini>
3919 */
Nachiket Kukadee547a482018-05-22 16:43:30 +05303920#define CFG_ACTIVE_MC_BC_APF_MODE_NAME "gActiveMcBcBpfMode"
3921#define CFG_ACTIVE_MC_BC_APF_MODE_MIN (ACTIVE_APF_DISABLED)
3922#define CFG_ACTIVE_MC_BC_APF_MODE_MAX (ACTIVE_APF_ENABLED)
3923#define CFG_ACTIVE_MC_BC_APF_MODE_DEFAULT (ACTIVE_APF_DISABLED)
Dustin Brown13995f02017-01-12 15:38:42 -08003924
Krishna Kumaar Natarajan90bb6f12017-03-03 21:05:52 -08003925#ifdef WLAN_FEATURE_11AX
3926/* 11AX related INI configuration */
3927/*
3928 * <ini>
Kiran Kumar Lokere4aa08a52017-12-15 19:00:39 -08003929 * he_dynamic_frag_support - configure dynamic fragmentation
3930 * @Min: 0
3931 * @Max: 3
3932 * @Default: 1
3933 *
3934 * This ini is used to configure dynamic fragmentation.
3935 *
3936 * Related: NA
3937 *
3938 * Supported Feature: 11AX
3939 *
3940 * Usage: Internal/External
3941 *
3942 * </ini>
3943 */
3944
3945#define CFG_HE_DYNAMIC_FRAGMENTATION_NAME "he_dynamic_frag_support"
3946#define CFG_HE_DYNAMIC_FRAGMENTATION_MIN (0)
3947#define CFG_HE_DYNAMIC_FRAGMENTATION_MAX (3)
Kiran Kumar Lokerea0c1faa2018-01-05 14:47:06 -08003948#define CFG_HE_DYNAMIC_FRAGMENTATION_DEFAULT (0)
Kiran Kumar Lokere4aa08a52017-12-15 19:00:39 -08003949
3950/*
3951 * <ini>
Krishna Kumaar Natarajan90bb6f12017-03-03 21:05:52 -08003952 * enable_ul_mimo- Enable UL MIMO.
3953 * @Min: 0
3954 * @Max: 1
3955 * @Default: 0
3956 *
3957 * This ini is used to enable or disable UL MIMO.
3958 *
3959 * Related: NA
3960 *
3961 * Supported Feature: 11AX
3962 *
3963 * Usage: External
3964 *
3965 * </ini>
3966 */
3967
3968#define CFG_ENABLE_UL_MIMO_NAME "enable_ul_mimo"
3969#define CFG_ENABLE_UL_MIMO_MIN (0)
3970#define CFG_ENABLE_UL_MIMO_MAX (1)
3971#define CFG_ENABLE_UL_MIMO_DEFAULT (0)
3972
3973/*
3974 * <ini>
3975 * enable_ul_ofdma- Enable UL OFDMA.
3976 * @Min: 0
3977 * @Max: 1
3978 * @Default: 0
3979 *
3980 * This ini is used to enable or disable UL OFDMA.
3981 *
3982 * Related: NA
3983 *
3984 * Supported Feature: 11AX
3985 *
3986 * Usage: External
3987 *
3988 * </ini>
3989 */
3990#define CFG_ENABLE_UL_OFDMA_NAME "enable_ul_ofdma"
3991#define CFG_ENABLE_UL_OFDMA_MIN (0)
3992#define CFG_ENABLE_UL_OFDMA_MAX (1)
3993#define CFG_ENABLE_UL_OFDMA_DEFAULT (0)
3994
Manikandan Mohan39accff2017-05-02 16:09:00 -07003995/*
3996 * <ini>
3997 * he_sta_obsspd- 11AX HE OBSS PD bit field
3998 * @Min: 0
3999 * @Max: uin32_t max
4000 * @Default: 0x15b8c2ae
4001 *
4002 * 4 Byte value with each byte representing a signed value for following params:
4003 * Param Bit position Default
4004 * OBSS_PD min (primary) 7:0 -82 (0xae)
4005 * OBSS_PD max (primary) 15:8 -62 (0xc2)
4006 * Secondary channel Ed 23:16 -72 (0xb8)
4007 * TX_PWR(ref) 31:24 21 (0x15)
4008 * This bit field value is directly applied to FW
4009 *
4010 * Related: NA
4011 *
4012 * Supported Feature: 11AX
4013 *
4014 * Usage: External
4015 *
4016 * </ini>
4017 */
4018#define CFG_HE_STA_OBSSPD_NAME "he_sta_obsspd"
4019#define CFG_HE_STA_OBSSPD_MIN (0)
4020#define CFG_HE_STA_OBSSPD_MAX (0xffffffff)
4021#define CFG_HE_STA_OBSSPD_DEFAULT (0x15b8c2ae)
4022
Krishna Kumaar Natarajan90bb6f12017-03-03 21:05:52 -08004023#endif /* WLAN_FEATURE_11AX */
Varun Reddy Yeturud33033f2018-06-11 10:58:30 -07004024#ifdef WLAN_SUPPORT_TWT
Varun Reddy Yeturu96285a22018-05-08 13:37:43 -07004025/*
4026 * <ini>
4027 * enable_twt - Enable Target Wake Time support.
4028 * @Min: 0
4029 * @Max: 1
4030 * @Default: 1
4031 *
4032 * This ini is used to enable or disable TWT support.
4033 *
4034 * Related: NA
4035 *
4036 * Supported Feature: 11AX
4037 *
4038 * Usage: External
4039 *
4040 * </ini>
4041 */
4042#define CFG_ENABLE_TWT_NAME "enable_twt"
4043#define CFG_ENABLE_TWT_MIN (0)
4044#define CFG_ENABLE_TWT_MAX (1)
4045#define CFG_ENABLE_TWT_DEFAULT (1)
4046
4047/*
4048 * <ini>
4049 * twt_congestion_timeout - Target wake time congestion timeout.
Varun Reddy Yeturuadc00902018-07-05 07:55:24 -07004050 * @Min: 0
Varun Reddy Yeturu96285a22018-05-08 13:37:43 -07004051 * @Max: 10000
4052 * @Default: 100
4053 *
4054 * STA uses this timer to continuously monitor channel congestion levels to
4055 * decide whether to start or stop TWT. This ini is used to configure the
4056 * target wake time congestion timeout value in the units of milliseconds.
Varun Reddy Yeturuadc00902018-07-05 07:55:24 -07004057 * A value of Zero indicates that this is a host triggered TWT and all the
4058 * necessary configuration for TWT will be directed from the host.
Varun Reddy Yeturu96285a22018-05-08 13:37:43 -07004059 *
4060 * Related: NA
4061 *
4062 * Supported Feature: 11AX
4063 *
4064 * Usage: External
4065 *
4066 * </ini>
4067 */
4068#define CFG_TWT_CONGESTION_TIMEOUT_NAME "twt_congestion_timeout"
Varun Reddy Yeturuadc00902018-07-05 07:55:24 -07004069#define CFG_TWT_CONGESTION_TIMEOUT_MIN (0)
Varun Reddy Yeturu96285a22018-05-08 13:37:43 -07004070#define CFG_TWT_CONGESTION_TIMEOUT_MAX (10000)
4071#define CFG_TWT_CONGESTION_TIMEOUT_DEFAULT (100)
4072
Varun Reddy Yeturud33033f2018-06-11 10:58:30 -07004073#endif /* WLAN_SUPPORT_TWT */
Krishna Kumaar Natarajan90bb6f12017-03-03 21:05:52 -08004074
4075/*
Dustin Brown20b6fcf2017-05-17 15:35:17 -07004076 * <ini>
4077 * gScanBackoffMultiplier - For NLO/PNO, multiply fast scan period by this every
4078 * max cycles
4079 * @Min: 0
4080 * @Max: 255
4081 * @Default: 0
4082 *
4083 * For Network Listen Offload and Perfered Network Offload, multiply the fast
4084 * scan period by this value after max cycles have occurred. Setting this to 0
4085 * disables the feature.
4086 *
4087 * @E.g.
4088 * # Disable scan backoff multiplier
4089 * gScanBackoffMultiplier=0
4090 * # Effectively the same
4091 * gScanBackoffMultiplier=1
4092 * # Double the scan period after each max cycles have occurred
4093 * gScanBackoffMultiplier=2
4094 *
4095 * Related: NLO, PNO
4096 *
4097 * Usage: Internal/External
4098 *
4099 * </ini>
4100 */
4101#define CFG_SCAN_BACKOFF_MULTIPLIER_NAME "gScanBackoffMultiplier"
4102#define CFG_SCAN_BACKOFF_MULTIPLIER_MIN (0)
4103#define CFG_SCAN_BACKOFF_MULTIPLIER_MAX (255)
4104#define CFG_SCAN_BACKOFF_MULTIPLIER_DEFAULT (0)
4105
4106/*
Varun Reddy Yeturubba32e92017-09-06 13:31:40 -07004107 * <ini>
4108 * mawc_nlo_enabled - For NLO/PNO, enable MAWC based scan
4109 * @Min: 0
4110 * @Max: 1
4111 * @Default: 1
4112 *
4113 * Enable/Disable the Motion Aided Wireless Connectivity
4114 * based NLO using this parameter
4115 *
4116 * Related: NLO, PNO
4117 *
4118 * Usage: Internal/External
4119 *
4120 * </ini>
4121 */
4122#define CFG_MAWC_NLO_ENABLED_NAME "mawc_nlo_enabled"
4123#define CFG_MAWC_NLO_ENABLED_MIN (0)
4124#define CFG_MAWC_NLO_ENABLED_MAX (1)
4125#define CFG_MAWC_NLO_ENABLED_DEFAULT (1)
4126
4127/*
4128 * <ini>
4129 * mawc_nlo_exp_backoff_ratio - Exponential back off ratio
4130 * @Min: 0
4131 * @Max: 300
4132 * @Default: 3
4133 *
4134 * Configure the exponential back off ratio using this
4135 * parameter for MAWC based NLO
4136 * ratio of exponential backoff, next = current + current*ratio/100
4137 *
4138 * Related: NLO, PNO
4139 *
4140 * Usage: Internal/External
4141 *
4142 * </ini>
4143 */
4144#define CFG_MAWC_NLO_EXP_BACKOFF_RATIO_NAME "mawc_nlo_exp_backoff_ratio"
4145#define CFG_MAWC_NLO_EXP_BACKOFF_RATIO_MIN (0)
4146#define CFG_MAWC_NLO_EXP_BACKOFF_RATIO_MAX (300)
4147#define CFG_MAWC_NLO_EXP_BACKOFF_RATIO_DEFAULT (3)
4148
4149/*
4150 * <ini>
4151 * mawc_nlo_init_scan_interval - Initial Scan Interval
4152 * @Min: 1000
4153 * @Max: 0xFFFFFFFF
4154 * @Default: 10000
4155 *
4156 * Configure the initial scan interval using this
4157 * parameter for MAWC based NLO (Units in Milliseconds)
4158 *
4159 * Related: NLO, PNO
4160 *
4161 * Usage: Internal/External
4162 *
4163 * </ini>
4164 */
4165#define CFG_MAWC_NLO_INIT_SCAN_INTERVAL_NAME "mawc_nlo_init_scan_interval"
4166#define CFG_MAWC_NLO_INIT_SCAN_INTERVAL_MIN (1000)
4167#define CFG_MAWC_NLO_INIT_SCAN_INTERVAL_MAX (0xFFFFFFFF)
4168#define CFG_MAWC_NLO_INIT_SCAN_INTERVAL_DEFAULT (10000)
4169
4170/*
4171 * <ini>
4172 * mawc_nlo_max_scan_interval - Maximum Scan Interval
4173 * @Min: 1000
4174 * @Max: 0xFFFFFFFF
4175 * @Default: 60000
4176 *
4177 * Configure the maximum scan interval using this
4178 * parameter for MAWC based NLO (Units in Milliseconds)
4179 *
4180 * Related: NLO, PNO
4181 *
4182 * Usage: Internal/External
4183 *
4184 * </ini>
4185 */
4186#define CFG_MAWC_NLO_MAX_SCAN_INTERVAL_NAME "mawc_nlo_max_scan_interval"
4187#define CFG_MAWC_NLO_MAX_SCAN_INTERVAL_MIN (1000)
4188#define CFG_MAWC_NLO_MAX_SCAN_INTERVAL_MAX (0xFFFFFFFF)
4189#define CFG_MAWC_NLO_MAX_SCAN_INTERVAL_DEFAULT (60000)
4190
Jayachandran Sreekumaran68c952c2017-04-24 12:42:03 +05304191/*
Manjunathappa Prakashdab74fa2017-06-19 12:11:03 -07004192 * <ini>
Ashish Kumar Dhanotiyab8630ab2017-07-21 14:18:14 +05304193 * gEnableLPRx - Enable/Disable LPRx
4194 * @Min: 0
4195 * @Max: 1
4196 * @Default: 1
4197 *
4198 * This ini Enables or disables the LPRx in FW
4199 *
4200 * Usage: External
4201 *
4202 * </ini>
4203 */
4204
4205#define CFG_LPRx_NAME "gEnableLPRx"
4206#define CFG_LPRx_MIN (0)
4207#define CFG_LPRx_MAX (1)
4208#define CFG_LPRx_DEFAULT (1)
4209
4210/*
Ashish Kumar Dhanotiyab28338c2017-07-21 20:12:34 +05304211 * <ini>
Amar Singhale4a2dd52017-08-07 13:59:05 -07004212 * scan_11d_interval - 11d scan interval in ms
4213 * @Min: 1 sec
4214 * @Max: 10 hr
4215 * @Default: 1 hr
4216 *
4217 * This ini sets the 11d scan interval in FW
4218 *
4219 *
4220 *
4221 * Supported Feature: STA
4222 *
4223 * Usage: External
4224 *
4225 * </ini>
4226 */
4227
4228#define CFG_SCAN_11D_INTERVAL_NAME "scan_11d_interval"
4229#define CFG_SCAN_11D_INTERVAL_DEFAULT (3600000)
4230#define CFG_SCAN_11D_INTERVAL_MIN (1000)
4231#define CFG_SCAN_11D_INTERVAL_MAX (36000000)
Abhishek Singhb58164a2017-07-19 18:47:23 +05304232/*
4233 * <ini>
4234 * is_bssid_hint_priority - Set priority for connection with bssid_hint
4235 * BSSID.
4236 * @Min: 0
4237 * @Max: 1
4238 * @Default: 1
4239 *
4240 * This ini is used to give priority to BSS for connection which comes
4241 * as part of bssid_hint
4242 *
4243 * Related: None
4244 *
4245 * Supported Feature: STA
4246 *
4247 * Usage: External
4248 *
4249 * </ini>
4250 */
4251
4252#define CFG_IS_BSSID_HINT_PRIORITY_NAME "is_bssid_hint_priority"
gaurank kathpalia0efbb562017-12-19 18:05:00 +05304253#define CFG_IS_BSSID_HINT_PRIORITY_DEFAULT (0)
Abhishek Singhb58164a2017-07-19 18:47:23 +05304254#define CFG_IS_BSSID_HINT_PRIORITY_MIN (0)
4255#define CFG_IS_BSSID_HINT_PRIORITY_MAX (1)
Amar Singhale4a2dd52017-08-07 13:59:05 -07004256
4257/*
Padma, Santhosh Kumar3e47c632017-09-01 20:15:27 +05304258 * <ini>
4259 * sae_enabled - Enable/Disable SAE support in driver
4260 * @Min: 0
4261 * @Max: 1
4262 * @Default: 0
4263 *
4264 * This ini is used to enable/disable SAE support in driver
4265 * Driver will update config to supplicant based on this config.
4266 *
4267 * Related: None
4268 *
4269 * Supported Feature: SAE
4270 * Usage: External
4271 *
4272 * </ini>
4273 */
4274
4275#define CFG_IS_SAE_ENABLED_NAME "sae_enabled"
Padma, Santhosh Kumara5eaeb82018-04-09 18:45:26 +05304276#define CFG_IS_SAE_ENABLED_DEFAULT (1)
Padma, Santhosh Kumar3e47c632017-09-01 20:15:27 +05304277#define CFG_IS_SAE_ENABLED_MIN (0)
4278#define CFG_IS_SAE_ENABLED_MAX (1)
4279
Qiwei Cai4505fc62018-05-17 18:35:19 +08004280#ifdef WLAN_FEATURE_PACKET_FILTERING
Ashwini Patilf2bf05e2017-03-10 03:41:03 +05304281/*
Hanumanth Reddy Pothula3def8942017-10-05 16:19:36 +05304282 * <ini>
4283 * g_enable_packet_filter_bitmap - Enable Packet filters before going into
4284 * suspend mode
4285 * @Min: 0
4286 * @Max: 63
4287 * @Default: 0
4288 * Below is the Detailed bit map of the Filters
4289 * bit-0 : IPv6 multicast
4290 * bit-1 : IPv4 multicast
4291 * bit-2 : IPv4 broadcast
4292 * bit-3 : XID - Exchange station Identification packet, solicits the
4293 * identification of the receiving station
4294 * bit-4 : STP - Spanning Tree Protocol, builds logical loop free topology
4295 * bit-5 : DTP/LLC/CDP
4296 * DTP - Dynamic Trunking Protocol is used by Ciscoswitches to negotiate
4297 * whether an interconnection between two switches should be put into access or
4298 * trunk mode
4299 * LLC - Logical link control, used for multiplexing, flow & error control
4300 * CDP - Cisco Discovery Protocol packet contains information about the cisco
4301 * devices in the network
4302 *
4303 * This ini support to enable above mentioned packet filters
4304 * when target goes to suspend mode, clear those when resume
4305 *
4306 * Related: None
4307 *
4308 * Supported Feature: PACKET FILTERING
4309 *
4310 * Usage: Internal/External
4311 *
4312 * </ini>
4313 */
4314#define CFG_ENABLE_PACKET_FILTERS_NAME "g_enable_packet_filter_bitmap"
4315#define CFG_ENABLE_PACKET_FILTERS_DEFAULT (0)
4316#define CFG_ENABLE_PACKET_FILTERS_MIN (0)
4317#define CFG_ENABLE_PACKET_FILTERS_MAX (63)
Qiwei Cai4505fc62018-05-17 18:35:19 +08004318#endif /* WLAN_FEATURE_PACKET_FILTERING */
lifeng1c16b6b2017-09-25 13:59:55 +08004319
4320/*
4321 * <ini>
4322 * gDfsBeaconTxEnhanced - beacon tx enhanced
4323 * @Min: 0
4324 * @Max: 1
4325 * @Default: 0
4326 *
4327 * This ini is used to enhance dfs beacon tx
4328 *
4329 * Related: none
4330 *
4331 * Usage: External
4332 *
4333 * </ini>
4334 */
4335#define CFG_DFS_BEACON_TX_ENHANCED "gDfsBeaconTxEnhanced"
4336#define CFG_DFS_BEACON_TX_ENHANCED_MIN (0)
4337#define CFG_DFS_BEACON_TX_ENHANCED_MAX (1)
4338#define CFG_DFS_BEACON_TX_ENHANCED_DEFAULT (0)
4339
Hanumanth Reddy Pothula3def8942017-10-05 16:19:36 +05304340/*
Naveen Rawat269b4ed2017-12-07 06:47:32 -08004341 * <ini>
yeshwanth sriram guntuka41f936c2017-09-01 17:53:49 +05304342 * btm_offload_config - Configure BTM
4343 * @Min: 0x00000000
4344 * @Max: 0xFFFFFFFF
4345 * @Default: 0x00000000
4346 *
4347 * This ini is used to configure BTM
4348 *
4349 * Bit 0: Enable/Disable the BTM offload. Set this to 1 will
4350 * enable and 0 will disable BTM offload.
4351 *
4352 * BIT 2, 1: Action on non matching candidate with cache. If a BTM request
4353 * is received from AP then the candidate AP's may/may-not be present in
4354 * the firmware scan cache . Based on below config firmware will decide
4355 * whether to forward BTM frame to host or consume with firmware and proceed
4356 * with Roaming to candidate AP.
4357 * 00 scan and consume
4358 * 01 no scan and forward to host
4359 * 10, 11 reserved
4360 *
4361 * BIT 5, 4, 3: Roaming handoff decisions on multiple candidates match
4362 * 000 match if exact BSSIDs are found
4363 * 001 match if at least one top priority BSSID only
4364 * 010, 011, 100, 101, 110, 111 reserved
4365 *
Jiachao Wu84bb2ea2018-01-08 16:17:33 +08004366 * BIT 6: Set this to 1 will send BTM query frame and 0 not sent.
4367 *
4368 * BIT 7-31: Reserved
yeshwanth sriram guntuka41f936c2017-09-01 17:53:49 +05304369 *
4370 * Supported Feature: STA
4371 *
4372 * Usage: External
4373 *
4374 * </ini>
4375 */
4376#define CFG_BTM_ENABLE_NAME "btm_offload_config"
4377#define CFG_BTM_ENABLE_MIN (0x00000000)
4378#define CFG_BTM_ENABLE_MAX (0xffffffff)
Vignesh Viswanathan6177c7e2018-07-25 11:14:02 +05304379#define CFG_BTM_ENABLE_DEFAULT (0x00000001)
Jiachao Wu84bb2ea2018-01-08 16:17:33 +08004380
4381/*
4382 * <ini>
4383 * btm_solicited_timeout - timeout value for waiting BTM request
4384 * @Min: 1
4385 * @Max: 10000
4386 * @Default: 100
4387 *
4388 * This ini is used to configure timeout value for waiting BTM request.
4389 * Unit: millionsecond
4390 *
4391 * Supported Feature: STA
4392 *
4393 * Usage: External
4394 *
4395 * </ini>
4396 */
4397#define CFG_BTM_SOLICITED_TIMEOUT "btm_solicited_timeout"
4398#define CFG_BTM_SOLICITED_TIMEOUT_MIN (1)
4399#define CFG_BTM_SOLICITED_TIMEOUT_MAX (10000)
4400#define CFG_BTM_SOLICITED_TIMEOUT_DEFAULT (100)
4401
4402/*
4403 * <ini>
4404 * btm_max_attempt_cnt - Maximum attempt for sending BTM query to ESS
4405 * @Min: 1
4406 * @Max: 0xFFFFFFFF
4407 * @Default: 3
4408 *
4409 * This ini is used to configure maximum attempt for sending BTM query to ESS.
4410 *
4411 * Supported Feature: STA
4412 *
4413 * Usage: External
4414 *
4415 * </ini>
4416 */
4417#define CFG_BTM_MAX_ATTEMPT_CNT "btm_max_attempt_cnt"
4418#define CFG_BTM_MAX_ATTEMPT_CNT_MIN (0x00000001)
4419#define CFG_BTM_MAX_ATTEMPT_CNT_MAX (0xFFFFFFFF)
4420#define CFG_BTM_MAX_ATTEMPT_CNT_DEFAULT (0x00000003)
4421
4422/*
4423 * <ini>
wadesongcc2e2162018-11-12 14:42:11 +08004424 * btm_sticky_time - Stick time after roaming to new AP by BTM
Jiachao Wu4f9820f2018-02-01 19:51:34 +08004425 * @Min: 0
Jiachao Wu84bb2ea2018-01-08 16:17:33 +08004426 * @Max: 0x0000FFFF
4427 * @Default: 300
4428 *
4429 * This ini is used to configure Stick time after roaming to new AP by BTM.
4430 * Unit: seconds
4431 *
4432 * Supported Feature: STA
4433 *
4434 * Usage: External
4435 *
4436 * </ini>
4437 */
4438#define CFG_BTM_STICKY_TIME "btm_sticky_time"
Jiachao Wu4f9820f2018-02-01 19:51:34 +08004439#define CFG_BTM_STICKY_TIME_MIN (0x00000000)
Jiachao Wu84bb2ea2018-01-08 16:17:33 +08004440#define CFG_BTM_STICKY_TIME_MAX (0x0000FFFF)
4441#define CFG_BTM_STICKY_TIME_DEFAULT (300)
yeshwanth sriram guntuka41f936c2017-09-01 17:53:49 +05304442
4443/*
Ashish Kumar Dhanotiyacb14b112018-01-19 19:26:44 +05304444 * <ini>
4445 * gcmp_enabled - ini to enable/disable GCMP
4446 * @Min: 0
4447 * @Max: 1
4448 * @Default: 0
4449 *
4450 * Currently Firmware update the sequence number for each TID with 2^3
4451 * because of security issues. But with this PN mechanism, throughput drop
4452 * is observed. With this ini FW takes the decision to trade off between
4453 * security and throughput
4454 *
4455 * Supported Feature: STA/SAP/P2P
4456 *
4457 * Usage: External
4458 *
4459 * </ini>
Krishna Kumaar Natarajan90bb6f12017-03-03 21:05:52 -08004460 */
Ashish Kumar Dhanotiya9335d812017-06-30 16:57:20 +05304461
Ashish Kumar Dhanotiyacb14b112018-01-19 19:26:44 +05304462#define CFG_ENABLE_GCMP_NAME "gcmp_enabled"
4463#define CFG_ENABLE_GCMP_MIN (0)
4464#define CFG_ENABLE_GCMP_MAX (1)
Padma, Santhosh Kumara5eaeb82018-04-09 18:45:26 +05304465#define CFG_ENABLE_GCMP_DEFAULT (1)
Ashish Kumar Dhanotiyacb14b112018-01-19 19:26:44 +05304466
4467/*
Vignesh Viswanathan694e28e2018-01-18 20:53:57 +05304468 * <ini>
4469 * 11k_offload_enable_bitmask - Bitmask to enable 11k offload to FW
4470 * @Min: 0
4471 * @Max: 1
4472 * @Default: 1
4473 *
4474 * This ini is used to set which of the 11k features is offloaded to FW
4475 * Currently Neighbor Report Request is supported for offload and is enabled
4476 * by default
4477 * B0: Offload 11k neighbor report requests
4478 * B1-B31: Reserved
4479 *
4480 * Related : None
4481 *
4482 * Usage: External
4483 *
4484 * </ini>
4485 */
4486
4487#define CFG_OFFLOAD_11K_ENABLE_BITMASK_NAME "11k_offload_enable_bitmask"
4488#define CFG_OFFLOAD_11K_ENABLE_BITMASK_MIN (0)
4489#define CFG_OFFLOAD_11K_ENABLE_BITMASK_MAX (1)
4490#define CFG_OFFLOAD_11K_ENABLE_BITMASK_DEFAULT (1)
4491
4492#define OFFLOAD_11K_BITMASK_NEIGHBOR_REPORT_REQUEST 0x1
4493/*
4494 * <ini>
4495 * nr_offload_params_bitmask - bitmask to specify which of the
4496 * neighbor report offload params are valid in the ini
4497 * frame
4498 * @Min: 0
4499 * @Max: 63
4500 * @Default: 63
4501 *
4502 * This ini specifies which of the neighbor report offload params are valid
4503 * and should be considered by the FW. The bitmask is as follows
4504 * B0: nr_offload_time_offset
4505 * B1: nr_offload_low_rssi_offset
4506 * B2: nr_offload_bmiss_count_trigger
4507 * B3: nr_offload_per_threshold_offset
4508 * B4: nr_offload_cache_timeout
4509 * B5: nr_offload_max_req_cap
4510 * B6-B7: Reserved
4511 *
4512 * Related : 11k_offload_enable_bitmask
4513 *
4514 * Usage: External
4515 *
4516 * </ini>
4517 */
4518
4519#define CFG_OFFLOAD_NEIGHBOR_REPORT_PARAMS_BITMASK_NAME \
4520 "nr_offload_params_bitmask"
4521#define CFG_OFFLOAD_NEIGHBOR_REPORT_PARAMS_BITMASK_MIN (0)
4522#define CFG_OFFLOAD_NEIGHBOR_REPORT_PARAMS_BITMASK_MAX (63)
4523#define CFG_OFFLOAD_NEIGHBOR_REPORT_PARAMS_BITMASK_DEFAULT (63)
4524
4525/*
4526 * <ini>
4527 * nr_offload_time_offset - time interval in seconds after the
4528 * neighbor report offload command to send the first neighbor report request
4529 * frame
Vignesh Viswanathan0fcb4d32018-02-13 14:29:46 +05304530 * @Min: 0
Vignesh Viswanathan694e28e2018-01-18 20:53:57 +05304531 * @Max: 3600
4532 * @Default: 30
4533 *
4534 * Related : nr_offload_params_bitmask
4535 *
4536 * Usage: External
4537 *
4538 * </ini>
4539 */
4540#define CFG_OFFLOAD_NEIGHBOR_REPORT_TIME_OFFSET_NAME \
4541 "nr_offload_time_offset"
4542#define CFG_OFFLOAD_NEIGHBOR_REPORT_TIME_OFFSET_MIN (0)
4543#define CFG_OFFLOAD_NEIGHBOR_REPORT_TIME_OFFSET_MAX (3600)
4544#define CFG_OFFLOAD_NEIGHBOR_REPORT_TIME_OFFSET_DEFAULT (30)
4545
4546/*
4547 * <ini>
4548 * nr_offload_low_rssi_offset - offset from the roam RSSI threshold
4549 * to trigger the neighbor report request frame (in dBm)
4550 * @Min: 4
4551 * @Max: 10
4552 * @Default: 4
4553 *
4554 * Related : nr_offload_params_bitmask
4555 *
4556 * Usage: External
4557 *
4558 * </ini>
4559 */
4560#define CFG_OFFLOAD_NEIGHBOR_REPORT_LOW_RSSI_OFFSET_NAME \
4561 "nr_offload_low_rssi_offset"
4562#define CFG_OFFLOAD_NEIGHBOR_REPORT_LOW_RSSI_OFFSET_MIN (4)
4563#define CFG_OFFLOAD_NEIGHBOR_REPORT_LOW_RSSI_OFFSET_MAX (10)
4564#define CFG_OFFLOAD_NEIGHBOR_REPORT_LOW_RSSI_OFFSET_DEFAULT (4)
4565
4566/*
4567 * <ini>
4568 * nr_offload_bmiss_count_trigger - Number of beacon miss events to
4569 * trigger a neighbor report request frame
4570 * @Min: 1
4571 * @Max: 5
4572 * @Default: 1
4573 *
4574 * Related : nr_offload_params_bitmask
4575 *
4576 * Usage: External
4577 *
4578 * </ini>
4579 */
4580#define CFG_OFFLOAD_NEIGHBOR_REPORT_BMISS_COUNT_TRIGGER_NAME \
4581 "nr_offload_bmiss_count_trigger"
4582#define CFG_OFFLOAD_NEIGHBOR_REPORT_BMISS_COUNT_TRIGGER_MIN (1)
4583#define CFG_OFFLOAD_NEIGHBOR_REPORT_BMISS_COUNT_TRIGGER_MAX (5)
4584#define CFG_OFFLOAD_NEIGHBOR_REPORT_BMISS_COUNT_TRIGGER_DEFAULT (1)
4585
4586/*
4587 * <ini>
4588 * nr_offload_per_threshold_offset - offset from PER threshold to
4589 * trigger a neighbor report request frame (in %)
4590 * @Min: 5
4591 * @Max: 20
4592 * @Default: 5
4593 *
4594 * This ini is used to set the neighbor report offload parameter:
4595 *
4596 * Related : nr_offload_params_bitmask
4597 *
4598 * Usage: External
4599 *
4600 * </ini>
4601 */
4602#define CFG_OFFLOAD_NEIGHBOR_REPORT_PER_THRESHOLD_OFFSET_NAME \
4603 "nr_offload_per_threshold_offset"
4604#define CFG_OFFLOAD_NEIGHBOR_REPORT_PER_THRESHOLD_OFFSET_MIN (5)
4605#define CFG_OFFLOAD_NEIGHBOR_REPORT_PER_THRESHOLD_OFFSET_MAX (20)
4606#define CFG_OFFLOAD_NEIGHBOR_REPORT_PER_THRESHOLD_OFFSET_DEFAULT (5)
4607
4608/*
4609 * <ini>
4610 * nr_offload_cache_timeout - time in seconds after which the
4611 * neighbor report cache is marked as timed out and any of the triggers would
4612 * cause a neighbor report request frame to be sent.
Vignesh Viswanathan0fcb4d32018-02-13 14:29:46 +05304613 * @Min: 5
Vignesh Viswanathan694e28e2018-01-18 20:53:57 +05304614 * @Max: 86400
4615 * @Default: 1200
4616 *
4617 * Related : nr_offload_params_bitmask
4618 *
4619 * Usage: External
4620 *
4621 * </ini>
4622 */
4623#define CFG_OFFLOAD_NEIGHBOR_REPORT_CACHE_TIMEOUT_NAME \
4624 "nr_offload_cache_timeout"
Vignesh Viswanathan0fcb4d32018-02-13 14:29:46 +05304625#define CFG_OFFLOAD_NEIGHBOR_REPORT_CACHE_TIMEOUT_MIN (5)
Vignesh Viswanathan694e28e2018-01-18 20:53:57 +05304626#define CFG_OFFLOAD_NEIGHBOR_REPORT_CACHE_TIMEOUT_MAX (86400)
4627#define CFG_OFFLOAD_NEIGHBOR_REPORT_CACHE_TIMEOUT_DEFAULT (1200)
4628
4629/*
4630 * <ini>
4631 * nr_offload_max_req_cap - Max number of neighbor
4632 * report requests that can be sent to a connected peer in the current session.
4633 * This counter is reset once a successful roam happens or at cache timeout
4634 * @Min: 3
Vignesh Viswanathan0fcb4d32018-02-13 14:29:46 +05304635 * @Max: 300
Vignesh Viswanathan694e28e2018-01-18 20:53:57 +05304636 * @Default: 3
4637 *
4638 * Related : nr_offload_params_bitmask
4639 *
4640 * Usage: External
4641 *
4642 * </ini>
4643 */
4644#define CFG_OFFLOAD_NEIGHBOR_REPORT_MAX_REQ_CAP_NAME \
4645 "nr_offload_max_req_cap"
4646#define CFG_OFFLOAD_NEIGHBOR_REPORT_MAX_REQ_CAP_MIN (3)
4647#define CFG_OFFLOAD_NEIGHBOR_REPORT_MAX_REQ_CAP_MAX (300)
4648#define CFG_OFFLOAD_NEIGHBOR_REPORT_MAX_REQ_CAP_DEFAULT (3)
4649
4650/*
Surabhi Vishnoi7f085d22018-01-30 12:11:14 +05304651 * <ini>
4652 * wmi_wq_watchdog - Sets timeout period for wmi watchdog bite
4653 * @Min: 0
4654 * @Max: 30
4655 * @Default: 20
4656 *
4657 * This ini is used to set timeout period for wmi watchdog bite. If it is
4658 * 0 then wmi watchdog bite is disabled.
4659 *
4660 * Related: None
4661 *
4662 * Supported Feature: STA
4663 *
4664 * Usage: External
4665 *
4666 * </ini>
4667 */
4668#define CFG_WMI_WQ_WATCHDOG "wmi_wq_watchdog"
4669#define CFG_WMI_WQ_WATCHDOG_MIN (0)
4670#define CFG_WMI_WQ_WATCHDOG_MAX (30) /* 30s */
4671#define CFG_WMI_WQ_WATCHDOG_DEFAULT (20) /* 20s */
Ashish Kumar Dhanotiya191d1642018-02-08 17:43:09 +05304672
4673/*
4674 * <ini>
4675 * gEnableDTIMSelectionDiversity - Enable/Disable chain
4676 * selection optimization for one chain dtim
4677 * @Min: 0
4678 * @Max: 30
4679 * @Default: 5
4680 *
4681 * Usage: External
4682 *
4683 * </ini>
4684 */
4685#define CFG_DTIM_SELECTION_DIVERSITY_NAME "gEnableDTIMSelectionDiversity"
4686#define CFG_DTIM_SELECTION_DIVERSITY_MIN (0)
4687#define CFG_DTIM_SELECTION_DIVERSITY_MAX (30)
4688#define CFG_DTIM_SELECTION_DIVERSITY_DEFAULT (5)
4689
Surabhi Vishnoi7f085d22018-01-30 12:11:14 +05304690/*
Yeshwanth Sriram Guntukadb7995d2018-01-22 16:46:59 +05304691 * <ini>
Ashish Kumar Dhanotiya48dac7d2018-03-28 14:59:50 +05304692 * gTxSchDelay - Enable/Disable Tx sch delay
4693 * @Min: 0
Ashish Kumar Dhanotiya04f09dd2018-04-02 16:25:16 +05304694 * @Max: 5
Ashish Kumar Dhanotiya214e1422018-04-19 12:44:43 +05304695 * @Default: 0
Ashish Kumar Dhanotiya48dac7d2018-03-28 14:59:50 +05304696 *
4697 * Usage: Internal/External
4698 *
4699 * </ini>
4700 */
4701
4702#define CFG_TX_SCH_DELAY_NAME "gTxSchDelay"
4703#define CFG_TX_SCH_DELAY_MIN (0)
Ashish Kumar Dhanotiya04f09dd2018-04-02 16:25:16 +05304704#define CFG_TX_SCH_DELAY_MAX (5)
Ashish Kumar Dhanotiya214e1422018-04-19 12:44:43 +05304705#define CFG_TX_SCH_DELAY_DEFAULT (0)
Ashish Kumar Dhanotiya48dac7d2018-03-28 14:59:50 +05304706
4707/*
Rajeev Kumar Sirasanagandla4725ae42018-05-24 22:33:34 +05304708 * Start of action oui inis
4709 *
4710 * To enable action oui feature, set gEnableActionOUI
4711 *
4712 * Each action oui is expected in the following format:
4713 * <Extension 1> <Extension 2> ..... <Extension 10> (maximum 10)
4714 *
4715 * whereas, each Extension is separated by space and have the following format:
4716 * <Token1> <Token2> <Token3> <Token4> <Token5> <Token6> <Token7> <Token8>
4717 * where each Token is a string of hexa-decimal digits and
4718 * following are the details about each token
4719 *
4720 * Token1 = OUI
4721 * Token2 = Data_Length
4722 * Token3 = Data
4723 * Token4 = Data_Mask
4724 * Token5 = Info_Presence_Bit
4725 * Token6 = MAC_Address
4726 * Token7 = Mac_Address Mask
4727 * Token8 = Capability
4728 *
4729 * <OUI> is mandatory and it can be either 3 or 5 bytes means 6 or 10
4730 * hexa-decimal characters
Vignesh Viswanathanc6812822018-08-14 12:47:33 +05304731 * If the OUI and Data checks needs to be ignored, the oui FFFFFF
4732 * needs to be provided as OUI and bit 0 of Info_Presence_Bit should
4733 * be set to 0.
Rajeev Kumar Sirasanagandla4725ae42018-05-24 22:33:34 +05304734 *
4735 * <Data_Length> is mandatory field and should give length of
4736 * the <Data> if present else zero
4737 *
4738 * Presence of <Data> is controlled by <Data_Length>, if <Data_Length> is 0,
4739 * then <Data> is not expected else Data of the size Data Length bytes are
4740 * expected which means the length of Data string is 2 * Data Length,
4741 * since every byte constitutes two hexa-decimal characters.
4742 *
4743 * <Data_Mask> is mandatory if <Data> is present and length of the
4744 * Data mask string depends on the <Data Length>
4745 * If <Data Length> is 06, then length of Data Mask string is
4746 * 2 characters (represents 1 byte)
4747 * data_mask_length = ((Data_Length - (Data_Length % 8)) / 8) +
4748 * ((Data_Length % 8) ? 1 : 0)
4749 * and <Data_Mask> has to be constructed from left to right.
4750 *
4751 * Presence of <Mac_Address> and <Capability> is
4752 * controlled by <Info_Presence_Bit> which is mandatory
4753 * <Info_Presence_Bit> will give the information for
Vignesh Viswanathanc6812822018-08-14 12:47:33 +05304754 * OUI – bit 0 Should be set to 1
4755 * Setting to 0 will ignore OUI and data check
Rajeev Kumar Sirasanagandla4725ae42018-05-24 22:33:34 +05304756 * Mac Address present – bit 1
4757 * NSS – bit 2
4758 * HT check – bit 3
4759 * VHT check – bit 4
4760 * Band info – bit 5
4761 * reserved – bit 6 (should always be zero)
4762 * reserved – bit 7 (should always be zero)
4763 * and should be constructed from right to left (b7b6b5b4b3b2b1b0)
4764 *
4765 * <Mac_Address_Mask> for <Mac_Address> should be constructed from left to right
4766 *
4767 * <Capability> is 1 byte long and it contains the below info
4768 * NSS – 4 bits starting from LSB (b0 – b3)
4769 * HT enabled – bit 4
4770 * VHT enabled – bit 5
4771 * 2G band – bit 6
4772 * 5G band – bit 7
4773 * and should be constructed from right to left (b7b6b5b4b3b2b1b0)
4774 * <Capability> is present if atleast one of the bit is set
4775 * from b2 - b6 in <Info_Presence_Bit>
4776 *
4777 * Example 1:
4778 *
4779 * OUI is 00-10-18, data length is 05 (hex form), data is 02-11-04-5C-DE and
4780 * need to consider first 3 bytes and last byte of data for comparision
4781 * mac-addr EE-1A-59-FE-FD-AF is present and first 3 bytes and last byte of
4782 * mac address should be considered for comparision
4783 * capability is not present
4784 * then action OUI for gActionOUIITOExtension is as follows:
4785 *
4786 * gActionOUIITOExtension=001018 05 0211045CDE E8 03 EE1A59FEFDAF E4
4787 *
4788 * data mask calculation in above example:
4789 * Data[0] = 02 ---- d0 = 1
4790 * Data[1] = 11 ---- d1 = 1
4791 * Data[2] = 04 ---- d2 = 1
4792 * Data[3] = 5C ---- d3 = 0
4793 * Data[4] = DE ---- d4 = 1
4794 * data_mask = d0d1d2d3d4 + append with zeros to complete 8-bit = 11101000 = E8
4795 *
4796 * mac mask calculation in above example:
4797 * mac_addr[0] = EE ---- m0 = 1
4798 * mac_addr[1] = 1A ---- m1 = 1
4799 * mac_addr[2] = 59 ---- m2 = 1
4800 * mac_addr[3] = FE ---- m3 = 0
4801 * mac_addr[4] = FD ---- m4 = 0
4802 * mac_addr[5] = AF ---- m5 = 1
4803 * mac_mask = m0m1m2m3m4m5 + append with zeros to complete 8-bit = 11100100 = E4
4804 *
4805 * Example 2:
4806 *
4807 * OUI is 00-10-18, data length is 00 and no Mac Address and capability
4808 *
4809 * gActionOUIITOExtension=001018 00 01
4810 *
4811 */
4812
4813/*
4814 * <ini>
4815 * gEnableActionOUI - Enable/Disable action oui feature
4816 * @Min: 0 (disable)
4817 * @Max: 1 (enable)
4818 * @Default: 1 (enable)
4819 *
4820 * This ini is used to enable the action oui feature to control
4821 * mode of connection, connected AP's in-activity time, Tx rate etc.,
4822 *
4823 * Related: If gEnableActionOUI is set, then at least one of the following inis
4824 * must be set with the proper action oui extensions:
4825 * gActionOUIConnect1x1, gActionOUIITOExtension, gActionOUICCKM1X1
4826 *
4827 * Supported Feature: action ouis
4828 *
4829 * Usage: External
4830 *
4831 * </ini>
4832 */
4833#define CFG_ENABLE_ACTION_OUI "gEnableActionOUI"
4834#define CFG_ENABLE_ACTION_OUI_MIN (0)
4835#define CFG_ENABLE_ACTION_OUI_MAX (1)
4836#define CFG_ENABLE_ACTION_OUI_DEFAULT (1)
4837
4838/*
4839 * <ini>
4840 * gActionOUIConnect1x1 - Used to specify action OUIs for 1x1 connection
4841 * @Default: 000C43 00 25 42 001018 06 02FFF02C0000 BC 25 42 001018 06 02FF040C0000 BC 25 42 00037F 00 35 6C
4842 * Note: User should strictly add new action OUIs at the end of this
4843 * default value.
4844 *
4845 * Default OUIs: (All values in Hex)
4846 * OUI 1 : 000C43
4847 * OUI data Len : 00
4848 * Info Mask : 25 - Check for NSS and Band
4849 * Capabilities: 42 - NSS == 2 && Band == 2G
4850 * OUI 2 : 001018
4851 * OUI data Len : 06
4852 * OUI Data : 02FFF02C0000
4853 * OUI data Mask: BC - 10111100
4854 * Info Mask : 25 - Check for NSS and Band
4855 * Capabilities: 42 - NSS == 2 && Band == 2G
4856 * OUI 3 : 001018
4857 * OUI data Len : 06
4858 * OUI Data : 02FF040C0000
4859 * OUI data Mask: BC - 10111100
4860 * Info Mask : 25 - Check for NSS and Band
4861 * Capabilities: 42 - NSS == 2 && Band == 2G
4862 * OUI 4 : 00037F
4863 * OUI data Len : 00
4864 * Info Mask : 35 - Check for NSS, VHT Caps and Band
4865 * Capabilities: 6C - (NSS == 3 or 4) && VHT Caps Preset && Band == 2G
4866 *
4867 * This ini is used to specify the AP OUIs with which only 1x1 connection
4868 * is allowed.
4869 *
4870 * Related: None
4871 *
4872 * Supported Feature: Action OUIs
4873 *
4874 * Usage: External
4875 *
4876 * </ini>
4877 */
4878#define CFG_ACTION_OUI_CONNECT_1X1_NAME "gActionOUIConnect1x1"
4879#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"
4880
4881/*
4882 * <ini>
4883 * gActionOUIITOExtension - Used to extend in-activity time for specified APs
4884 * @Default: 00037F 06 01010000FF7F FC 01 000AEB 02 0100 C0 01 000B86 03 010408 E0 01
4885 * Note: User should strictly add new action OUIs at the end of this
4886 * default value.
4887 *
4888 * Default OUIs: (All values in Hex)
4889 * OUI 1: 00037F
4890 * OUI data Len: 06
4891 * OUI Data: 01010000FF7F
4892 * OUI data Mask: FC - 11111100
4893 * Info Mask : 01 - only OUI present in Info mask
4894 *
4895 * OUI 2: 000AEB
4896 * OUI data Len: 02
4897 * OUI Data: 0100
4898 * OUI data Mask: C0 - 11000000
4899 * Info Mask : 01 - only OUI present in Info mask
4900 *
4901 * OUI 3: 000B86
4902 * OUI data Len: 03
4903 * OUI Data: 010408
4904 * OUI data Mask: E0 - 11100000
4905 * Info Mask : 01 - only OUI present in Info mask
4906 *
4907 * This ini is used to specify AP OUIs using which station's in-activity time
4908 * can be extended with the respective APs
4909 *
4910 * Related: None
4911 *
4912 * Supported Feature: Action OUIs
4913 *
4914 * Usage: External
4915 *
4916 * </ini>
4917 */
4918#define CFG_ACTION_OUI_ITO_EXTENSION_NAME "gActionOUIITOExtension"
4919#define CFG_ACTION_OUI_ITO_EXTENSION_DEFAULT "00037F 06 01010000FF7F FC 01 000AEB 02 0100 C0 01 000B86 03 010408 E0 01"
4920
4921/*
4922 * <ini>
4923 * gActionOUICCKM1X1 - Used to specify action OUIs to control station's TX rates
4924 *
4925 * This ini is used to specify AP OUIs for which station's CCKM TX rates
4926 * should be 1x1 only.
4927 *
4928 * Related: None
4929 *
4930 * Supported Feature: Action OUIs
4931 *
4932 * Usage: External
4933 *
4934 * </ini>
4935 */
4936#define CFG_ACTION_OUI_CCKM_1X1_NAME "gActionOUICCKM1X1"
4937#define CFG_ACTION_OUI_CCKM_1X1_DEFAULT ""
4938
4939/*
4940 * <ini>
4941 * gActionOUIITOAlternate - Used to specify action OUIs to have alternate ITO in
4942 * weak RSSI state
4943 *
4944 * This ini is used to specify AP OUIs for which the stations will have
4945 * alternate ITOs for the case when the RSSI is weak.
4946 *
4947 * Related: None
4948 *
4949 * Supported Feature: Action OUIs
4950 *
4951 * Usage: External
4952 *
4953 * </ini>
4954 */
4955 #define CFG_ACTION_OUI_ITO_ALTERNATE_NAME "gActionOUIITOAlternate"
4956 #define CFG_ACTION_OUI_ITO_ALTERNATE_DEFAULT "001018 06 0202001c0000 FC 01"
4957
4958/*
4959 * <ini>
4960 * gActionOUISwitchTo11nMode - Used to specify action OUIs for switching to 11n
4961 *
4962 * This ini is used to specify which AP for which the connection has to be
4963 * made in 2x2 mode with HT capabilities only and not VHT.
4964 *
Vignesh Viswanathancbbc3582018-07-11 11:11:04 +05304965 * Default OUIs: (All values in Hex)
4966 * OUI 1 : 00904C
4967 * OUI data Len : 03
4968 * OUI Data : 0418BF
4969 * OUI data Mask: E0 - 11100000
4970 * Info Mask : 21 - Check for Band
4971 * Capabilities: 40 - Band == 2G
4972 *
Rajeev Kumar Sirasanagandla4725ae42018-05-24 22:33:34 +05304973 * Related: None
4974 *
4975 * Supported Feature: Action OUIs
4976 *
4977 * Usage: External
4978 *
4979 * </ini>
4980 */
4981#define CFG_ACTION_OUI_SWITCH_TO_11N_MODE_NAME "gActionOUISwitchTo11nMode"
Vignesh Viswanathancbbc3582018-07-11 11:11:04 +05304982#define CFG_ACTION_OUI_SWITCH_TO_11N_MODE_DEFAULT "00904C 03 0418BF E0 21 40"
Rajeev Kumar Sirasanagandla4725ae42018-05-24 22:33:34 +05304983
Vignesh Viswanathanf9a704c2018-07-30 12:57:18 +05304984/*
4985 * <ini>
4986 * gActionOUIConnect1x1with1TxRxChain - Used to specify action OUIs for
4987 * 1x1 connection with one Tx/Rx Chain
4988 * @Default:
4989 * Note: User should strictly add new action OUIs at the end of this
4990 * default value.
4991 *
4992 * Default OUIs: (All values in Hex)
4993 * OUI 1 : 001018
4994 * OUI data Len : 06
4995 * OUI Data : 02FFF0040000
4996 * OUI data Mask: BC - 10111100
4997 * Info Mask : 21 - Check for Band
4998 * Capabilities: 40 - Band == 2G
4999 *
5000 * OUI 2 : 001018
5001 * OUI data Len : 06
5002 * OUI Data : 02FFF0050000
5003 * OUI data Mask: BC - 10111100
5004 * Info Mask : 21 - Check for Band
5005 * Capabilities: 40 - Band == 2G
5006 *
5007 * OUI 3 : 001018
5008 * OUI data Len : 06
5009 * OUI Data : 02FFF4050000
5010 * OUI data Mask: BC - 10111100
5011 * Info Mask : 21 - Check for Band
5012 * Capabilities: 40 - Band == 2G
5013 *
5014 * This ini is used to specify the AP OUIs with which only 1x1 connection
5015 * with one Tx/Rx Chain is allowed.
5016 *
5017 * Related: gEnableActionOUI
5018 *
5019 * Supported Feature: Action OUIs
5020 *
5021 * Usage: External
5022 *
5023 * </ini>
5024 */
5025#define CFG_ACTION_OUI_CONNECT_1X1_WITH_1_CHAIN_NAME "gActionOUIConnect1x1with1TxRxChain"
5026#define CFG_ACTION_OUI_CONNECT_1X1_WITH_1_CHAIN_DEFAULT "001018 06 02FFF0040000 BC 21 40 001018 06 02FFF0050000 BC 21 40 001018 06 02FFF4050000 BC 21 40"
5027
Rajeev Kumar Sirasanagandla4725ae42018-05-24 22:33:34 +05305028 /* End of action oui inis */
5029
5030
5031/*
Rajeev Kumar15b40a22018-04-12 11:45:24 -07005032 * <ini>
5033 * gEnableUnitTestFramework - Enable/Disable unit test framework
5034 * @Min: 0
5035 * @Max: 1
5036 * @Default: 0
5037 *
5038 * Usage: Internal (only for dev and test team)
5039 *
5040 * </ini>
5041 */
5042#define CFG_ENABLE_UNIT_TEST_FRAMEWORK_NAME "gEnableUnitTestFramework"
5043#define CFG_ENABLE_UNIT_TEST_FRAMEWORK_MIN (0)
5044#define CFG_ENABLE_UNIT_TEST_FRAMEWORK_MAX (1)
5045#define CFG_ENABLE_UINT_TEST_FRAMEWORK_DEFAULT (0)
5046
5047/*
Naveen Rawat2b430892018-03-13 13:58:18 -07005048 * <ini>
Ashish Kumar Dhanotiya959b38c2018-04-06 21:07:57 +05305049 * gEnableSecondaryRate - Enable/Disable Secondary Retry Rate feature subset
5050 *
5051 * @Min: 0x0
5052 * @Max: 0x3F
Ashish Kumar Dhanotiyacc1d6fd2018-05-02 15:49:42 +05305053 * @Default: 0x17
Ashish Kumar Dhanotiya959b38c2018-04-06 21:07:57 +05305054 *
5055 * It is a 32 bit value such that the various bits represent as below -
5056 * Bit-0 : is Enable/Disable Control for "PPDU Secondary Retry Support"
5057 * Bit-1 : is Enable/Disable Control for "RTS Black/White-listing Support"
5058 * Bit-2 : is Enable/Disable Control for "Higher MCS retry restriction
5059 * on XRETRY failures"
5060 * Bit 3-5 : is "Xretry threshold" to use
5061 * Bit 3~31 : reserved for future use.
5062 *
5063 * Usage: External
5064 *
5065 * </ini>
5066 */
5067#define CFG_ENABLE_SECONDARY_RATE_NAME "gEnableSecondaryRate"
5068#define CFG_ENABLE_SECONDARY_RATE_MIN (0)
5069#define CFG_ENABLE_SECONDARY_RATE_MAX (0x3F)
Ashish Kumar Dhanotiyacc1d6fd2018-05-02 15:49:42 +05305070#define CFG_ENABLE_SECONDARY_RATE_DEFAULT (0x17)
Ashish Kumar Dhanotiya959b38c2018-04-06 21:07:57 +05305071
Dundi Ravitejaeab3b8d2018-07-17 18:10:41 +05305072#ifdef MWS_COEX
5073/*
5074 * <ini>
5075 * gMwsCoex4gQuickTdm - Bitmap to control MWS-COEX 4G quick FTDM policy
5076 * @Min: 0x00000000
5077 * @Max: 0xFFFFFFFF
5078 * @Default: 0x00000000
5079 *
5080 * It is a 32 bit value such that the various bits represent as below:
5081 * Bit-0 : 0 - Don't allow quick FTDM policy (Default)
5082 * 1 - Allow quick FTDM policy
5083 * Bit 1-31 : reserved for future use
5084 *
5085 * It is used to enable or disable MWS-COEX 4G (LTE) Quick FTDM
5086 *
5087 * Usage: Internal
5088 *
5089 * </ini>
5090 */
5091
5092#define CFG_MWS_COEX_4G_QUICK_FTDM_NAME "gMwsCoex4gQuickTdm"
5093#define CFG_MWS_COEX_4G_QUICK_FTDM_MIN (0x00000000)
5094#define CFG_MWS_COEX_4G_QUICK_FTDM_MAX (0xFFFFFFFF)
5095#define CFG_MWS_COEX_4G_QUICK_FTDM_DEFAULT (0x00000000)
5096
5097/*
5098 * <ini>
5099 * gMwsCoex5gnrPwrLimit - Bitmap to set MWS-COEX 5G-NR power limit
5100 * @Min: 0x00000000
5101 * @Max: 0xFFFFFFFF
5102 * @Default: 0x00000000
5103 *
5104 * It is a 32 bit value such that the various bits represent as below:
5105 * Bit-0 : Don't apply user specific power limit,
5106 * use internal power limit (Default)
5107 * Bit 1-2 : Invalid value (Ignored)
5108 * Bit 3-21 : Apply the specified value as the external power limit, in dBm
5109 * Bit 22-31 : Invalid value (Ignored)
5110 *
5111 * It is used to set MWS-COEX 5G-NR power limit
5112 *
5113 * Usage: Internal
5114 *
5115 * </ini>
5116 */
5117
5118#define CFG_MWS_COEX_5G_NR_PWR_LIMIT_NAME "gMwsCoex5gnrPwrLimit"
5119#define CFG_MWS_COEX_5G_NR_PWR_LIMIT_MIN (0x00000000)
5120#define CFG_MWS_COEX_5G_NR_PWR_LIMIT_MAX (0xFFFFFFFF)
5121#define CFG_MWS_COEX_5G_NR_PWR_LIMIT_DEFAULT (0x00000000)
5122#endif
5123
Rachit Kankane0106e382018-05-16 18:59:28 +05305124/*
Chaoli Zhou75b062f2018-06-11 12:36:54 +08005125 * <ini>
5126 * gEnableChangeChannelBandWidth - Enable/Disable change
5127 * channel&bandwidth in the mission mode
5128 * @Min: 0
5129 * @Max: 1
5130 * @Default: 0
5131 *
5132 * 0 - not allow change channel&bandwidth by setMonChan
5133 * 1 - allow change channel&bandwidth by setMonChan
5134 *
5135 * Related: None
5136 *
5137 * Supported Feature: STA
5138 *
5139 * Usage: External
5140 *
5141 * </ini>
5142 */
5143#define CFG_CHANGE_CHANNEL_BANDWIDTH_NAME "gEnableChangeChannelBandWidth"
5144#define CFG_CHANGE_CHANNEL_BANDWIDTH_MIN (0)
5145#define CFG_CHANGE_CHANNEL_BANDWIDTH_MAX (1)
5146#define CFG_CHANGE_CHANNEL_BANDWIDTH_DEFAULT (0)
5147
5148/*
Ashish Kumar Dhanotiyacb14b112018-01-19 19:26:44 +05305149 * Type declarations
5150 */
Naveen Rawat2b430892018-03-13 13:58:18 -07005151
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005152struct hdd_config {
5153 /* Bitmap to track what is explicitly configured */
5154 DECLARE_BITMAP(bExplicitCfg, MAX_CFG_INI_ITEMS);
5155
5156 /* Config parameters */
Ashish Kumar Dhanotiya470af292017-05-31 20:46:00 +05305157 bool enable_connected_scan;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005158 bool Is11dSupportEnabled;
5159 bool Is11hSupportEnabled;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005160 char PowerUsageControl[4];
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005161 bool fIsImpsEnabled;
5162 bool is_ps_enabled;
Kiran Kumar Lokere0ac679c2016-11-17 17:43:36 -08005163 uint32_t auto_bmps_timer_val;
Zhu Jianmin04392c42017-05-12 16:34:53 +08005164 uint32_t icmp_disable_ps_val;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005165 uint32_t nBmpsMaxListenInterval;
5166 uint32_t nBmpsMinListenInterval;
Srinivas Girigowda2fb677c2017-03-25 15:35:34 -07005167 enum hdd_dot11_mode dot11Mode;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005168 uint32_t nChannelBondingMode24GHz;
5169 uint32_t nChannelBondingMode5GHz;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005170 uint32_t ScanResultAgeCount;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005171 uint8_t nRssiCatGap;
Anurag Chouhan6d760662016-02-20 16:05:43 +05305172 struct qdf_mac_addr IbssBssid;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005173 uint32_t AdHocChannel5G;
5174 uint32_t AdHocChannel24G;
5175 uint8_t intfAddrMask;
Anurag Chouhan6d760662016-02-20 16:05:43 +05305176 struct qdf_mac_addr intfMacAddr[QDF_MAX_CONCURRENCY_PERSONA];
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005177
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005178 bool apRandomBssidEnabled;
5179 bool apProtEnabled;
Dustin Brownb6b0f182017-03-08 13:08:27 -08005180 enum station_keepalive_method sta_keepalive_method;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005181 uint8_t nTxPowerCap; /* In dBm */
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005182 uint8_t disablePacketFilter;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005183 bool fRrmEnable;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005184 uint16_t nRrmRandnIntvl;
Krishna Kumaar Natarajanf599c6e2015-11-03 11:44:03 -08005185 /* length includes separator */
5186 char rm_capability[3 * DOT11F_IE_RRMENABLEDCAP_MAX_LEN];
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005187
Rachit Kankanef6834c42018-08-02 18:47:50 +05305188#ifdef FEATURE_WLAN_DYNAMIC_CVM
Nachiket Kukade8983cf62017-10-12 18:14:48 +05305189 /* Bitmap for operating voltage corner mode */
5190 uint32_t vc_mode_cfg_bitmap;
Rachit Kankanef6834c42018-08-02 18:47:50 +05305191#endif
Nachiket Kukade8983cf62017-10-12 18:14:48 +05305192
Dundi Ravitejaeab3b8d2018-07-17 18:10:41 +05305193#ifdef MWS_COEX
5194 /* Bitmap for MWS-COEX 4G Quick FTDM */
5195 uint32_t mws_coex_4g_quick_tdm;
5196
5197 /* Bitmap for MWS-COEX 5G-NR power limit */
5198 uint32_t mws_coex_5g_nr_pwr_limit;
5199#endif
5200
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005201 /* Additional Handoff params */
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005202 uint32_t nPassiveMaxChnTime; /* in units of milliseconds */
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005203 uint32_t nActiveMaxChnTime; /* in units of milliseconds */
Kiran Kumar Lokerea2dfefe2017-06-29 19:01:24 -07005204 uint32_t scan_probe_repeat_time;
5205 uint32_t scan_num_probes;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005206
5207 uint32_t nInitialDwellTime; /* in units of milliseconds */
5208 bool initial_scan_no_dfs_chnl;
5209
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005210 uint32_t nPassiveMinChnTimeConc; /* in units of milliseconds */
5211 uint32_t nPassiveMaxChnTimeConc; /* in units of milliseconds */
5212 uint32_t nActiveMinChnTimeConc; /* in units of milliseconds */
5213 uint32_t nActiveMaxChnTimeConc; /* in units of milliseconds */
5214 uint32_t nRestTimeConc; /* in units of milliseconds */
Agrawal Ashish17bb3902016-05-05 13:29:40 +05305215 /* In units of milliseconds */
5216 uint32_t min_rest_time_conc;
5217 /* In units of milliseconds */
5218 uint32_t idle_time_conc;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005219
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005220 uint8_t nRssiFilterPeriod;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005221
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005222 bool mcc_rts_cts_prot_enable;
5223 bool mcc_bcast_prob_resp_enable;
Mukul Sharmaed92f2f2017-04-20 00:06:28 +05305224 uint8_t wow_data_inactivity_timeout;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005225
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005226 uint32_t DelayedTriggerFrmInt;
5227
Houston Hoffmanc7c69f02016-03-24 22:45:52 -07005228#ifdef FEATURE_RUNTIME_PM
5229 bool runtime_pm;
Houston Hoffmanc7c69f02016-03-24 22:45:52 -07005230#endif
5231
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005232#ifdef FEATURE_WLAN_RA_FILTERING
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005233 uint16_t RArateLimitInterval;
5234#endif
5235#ifdef FEATURE_WLAN_SCAN_PNO
5236 bool PnoOffload;
5237#endif
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005238
Anurag Chouhanf04e84f2016-03-03 10:12:12 +05305239/* QDF Trace Control*/
5240 uint16_t qdf_trace_enable_wdi;
5241 uint16_t qdf_trace_enable_hdd;
5242 uint16_t qdf_trace_enable_sme;
5243 uint16_t qdf_trace_enable_pe;
5244 uint16_t qdf_trace_enable_pmc;
5245 uint16_t qdf_trace_enable_wma;
5246 uint16_t qdf_trace_enable_sys;
5247 uint16_t qdf_trace_enable_qdf;
5248 uint16_t qdf_trace_enable_sap;
5249 uint16_t qdf_trace_enable_hdd_sap;
5250 uint16_t qdf_trace_enable_bmi;
5251 uint16_t qdf_trace_enable_cfg;
Houston Hoffmanfbf05102017-08-28 11:37:01 -07005252 uint16_t qdf_trace_enable_txrx;
5253 uint16_t qdf_trace_enable_dp;
Anurag Chouhanf04e84f2016-03-03 10:12:12 +05305254 uint16_t qdf_trace_enable_htc;
5255 uint16_t qdf_trace_enable_hif;
5256 uint16_t qdf_trace_enable_hdd_sap_data;
5257 uint16_t qdf_trace_enable_hdd_data;
5258 uint16_t qdf_trace_enable_epping;
5259 uint16_t qdf_trace_enable_qdf_devices;
Naveen Rawat7df31862017-03-01 17:09:30 -08005260 uint16_t qdf_trace_enable_wifi_pos;
Naveen Rawatf2b0dbd2017-03-27 10:00:15 -07005261 uint16_t qdf_trace_enable_nan;
Kiran Kumar Lokere798de7e2017-03-30 14:01:12 -07005262 uint16_t qdf_trace_enable_regulatory;
Naveen Rawat3cb779e2018-02-16 16:36:10 -08005263 uint16_t qdf_trace_enable_cp_stats;
Ashish Kumar Dhanotiya12f68212018-09-04 22:00:14 +05305264#ifdef ENABLE_MTRACE_LOG
5265 bool enable_mtrace;
5266#endif
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005267 uint8_t enableDFSChnlScan;
5268 uint8_t enable_dfs_pno_chnl_scan;
Srinivas Girigowda2fb677c2017-03-25 15:35:34 -07005269 enum hdd_link_speed_rpt_type reportMaxLinkSpeed;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005270 int32_t linkSpeedRssiHigh;
5271 int32_t linkSpeedRssiMid;
5272 int32_t linkSpeedRssiLow;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005273 uint8_t enableMCC;
5274 uint8_t allowMCCGODiffBI;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005275 uint8_t thermalMitigationEnable;
5276 uint32_t throttlePeriod;
Poddar, Siddarth83905022016-04-16 17:56:08 -07005277 uint32_t throttle_dutycycle_level0;
5278 uint32_t throttle_dutycycle_level1;
5279 uint32_t throttle_dutycycle_level2;
5280 uint32_t throttle_dutycycle_level3;
Poddar, Siddarthb61cf642016-04-28 16:02:39 +05305281#if defined(CONFIG_HL_SUPPORT) && defined(QCA_BAD_PEER_TX_FLOW_CL)
5282 bool bad_peer_txctl_enable;
5283 uint32_t bad_peer_txctl_prd;
5284 uint32_t bad_peer_txctl_txq_lmt;
5285 uint32_t bad_peer_tgt_backoff;
5286 uint32_t bad_peer_tgt_report_prd;
5287 uint32_t bad_peer_cond_ieee80211b;
5288 uint32_t bad_peer_delta_ieee80211b;
5289 uint32_t bad_peer_pct_ieee80211b;
5290 uint32_t bad_peer_tput_ieee80211b;
5291 uint32_t bad_peer_limit_ieee80211b;
5292 uint32_t bad_peer_cond_ieee80211ag;
5293 uint32_t bad_peer_delta_ieee80211ag;
5294 uint32_t bad_peer_pct_ieee80211ag;
5295 uint32_t bad_peer_tput_ieee80211ag;
5296 uint32_t bad_peer_limit_ieee80211ag;
5297 uint32_t bad_peer_cond_ieee80211n;
5298 uint32_t bad_peer_delta_ieee80211n;
5299 uint32_t bad_peer_pct_ieee80211n;
5300 uint32_t bad_peer_tput_ieee80211n;
5301 uint32_t bad_peer_limit_ieee80211n;
5302 uint32_t bad_peer_cond_ieee80211ac;
5303 uint32_t bad_peer_delta_ieee80211ac;
5304 uint32_t bad_peer_pct_ieee80211ac;
5305 uint32_t bad_peer_tput_ieee80211ac;
5306 uint32_t bad_peer_limit_ieee80211ac;
5307#endif
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005308 bool enableFirstScan2GOnly;
Dustin Brownfe7aa872017-06-26 10:52:08 -07005309 bool prevent_link_down;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005310 uint8_t scanAgingTimeout;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005311 uint8_t disableLDPCWithTxbfAP;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005312 bool fEnableSNRMonitoring;
5313 /*PNO related parameters */
5314#ifdef FEATURE_WLAN_SCAN_PNO
5315 bool configPNOScanSupport;
5316 uint32_t configPNOScanTimerRepeatValue;
Srinivas Girigowdabdc98162015-09-17 11:06:07 -07005317 uint32_t pno_slow_scan_multiplier;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005318#endif
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005319 uint8_t isCoalesingInIBSSAllowed;
5320
5321 /* IBSS Power Save related parameters */
5322 uint32_t ibssATIMWinSize;
5323 uint8_t isIbssPowerSaveAllowed;
5324 uint8_t isIbssPowerCollapseAllowed;
5325 uint8_t isIbssAwakeOnTxRx;
5326 uint32_t ibssInactivityCount;
5327 uint32_t ibssTxSpEndInactivityTime;
5328 uint32_t ibssPsWarmupTime;
5329 uint32_t ibssPs1RxChainInAtimEnable;
Abhinav Kumarb074f2f2018-09-15 15:32:11 +05305330 uint32_t IpaConfig;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005331 bool IpaClkScalingEnable;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005332 uint8_t disableDFSChSwitch;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005333 uint32_t TxPower2g;
5334 uint32_t TxPower5g;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005335 bool fDfsPhyerrFilterOffload;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005336 uint8_t gDisableDfsJapanW53;
5337 bool gEnableOverLapCh;
5338 bool fRegChangeDefCountry;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005339 bool advertiseConcurrentOperation;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005340
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005341 uint8_t enableFwModuleLogLevel[FW_MODULE_LOG_LEVEL_STRING_LENGTH];
5342
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005343 uint8_t ignoreCAC;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005344
Ganesh Kondabattini408fb8d2017-08-08 22:00:20 +05305345 bool enable_sap_mandatory_chan_list;
5346
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005347 int32_t dfsRadarPriMultiplier;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005348
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005349#ifdef FEATURE_WLAN_FORCE_SAP_SCC
5350 uint8_t SapSccChanAvoidance;
5351#endif /* FEATURE_WLAN_FORCE_SAP_SCC */
5352
Jeff Johnson60cbd2d2017-11-03 18:26:28 -07005353 bool enable_sap_suspend;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005354
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005355 bool gEnableDeauthToDisassocMap;
5356#ifdef DHCP_SERVER_OFFLOAD
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005357 uint8_t dhcpServerIP[IPADDR_STRING_LENGTH];
5358#endif /* DHCP_SERVER_OFFLOAD */
5359 bool enable_mac_spoofing;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005360 uint32_t sta_miracast_mcc_rest_time_val;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005361#ifdef FEATURE_AP_MCC_CH_AVOIDANCE
5362 bool sap_channel_avoidance;
5363#endif /* FEATURE_AP_MCC_CH_AVOIDANCE */
Himanshu Agarwal4ecf6ca2018-05-09 16:48:56 +05305364 uint8_t sap_11ac_override;
5365 uint8_t go_11ac_override;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005366 uint8_t prefer_non_dfs_on_radar;
Nitesh Shah61c10d92016-10-19 19:29:15 +05305367 /* parameter for defer timer for enabling TDLS on p2p listen */
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005368 uint32_t fine_time_meas_cap;
5369 uint8_t max_scan_count;
Kiran Kumar Lokere1a43bcf2018-05-15 15:51:58 -07005370 bool etsi13_srd_chan_in_master_mode;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005371 uint32_t dual_mac_feature_disable;
Ganesh Kondabattini930304c2017-10-10 15:25:36 +05305372 uint32_t sta_sap_scc_on_dfs_chan;
Zhu Jianmin72d32de2018-05-11 10:54:10 +08005373 uint32_t sta_sap_scc_on_lte_coex_chan;
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005374 uint16_t self_gen_frm_pwr;
Varun Reddy Yeturub43fda12015-09-10 18:16:21 -07005375#ifdef FEATURE_WLAN_SCAN_PNO
5376 bool pno_channel_prediction;
5377 uint8_t top_k_num_of_channels;
5378 uint8_t stationary_thresh;
5379 uint32_t channel_prediction_full_scan;
5380#endif
Varun Reddy Yeturu05186292015-09-28 17:12:33 -07005381 bool early_stop_scan_enable;
5382 int8_t early_stop_scan_min_threshold;
5383 int8_t early_stop_scan_max_threshold;
Varun Reddy Yeturu044bda22015-11-21 22:03:40 -08005384 int8_t first_scan_bucket_threshold;
Ravi Joshi742495d2015-11-09 18:56:53 -08005385#ifdef FEATURE_LFR_SUBNET_DETECTION
5386 bool enable_lfr_subnet_detection;
5387#endif
Deepak Dhamdhere68929ec2015-08-05 15:16:35 -07005388 uint8_t inform_bss_rssi_raw;
Jeff Johnson89c66ff2016-04-22 15:21:37 -07005389#ifdef WLAN_FEATURE_TSF
Yu Wang66a250b2017-07-19 11:46:40 +08005390#ifdef WLAN_FEATURE_TSF_PLUS
5391 uint8_t tsf_ptp_options;
5392#endif /* WLAN_FEATURE_TSF_PLUS */
Jeff Johnson89c66ff2016-04-22 15:21:37 -07005393#endif
Abhinav Kumara083f212018-04-05 18:49:45 +05305394 uint32_t ho_delay_for_rx;
Abhinav Kumara95af7c2018-04-06 17:08:00 +05305395 uint32_t min_delay_btw_roam_scans;
5396 uint32_t roam_trigger_reason_bitmask;
Varun Reddy Yeturufaad37e2017-07-26 10:54:13 -07005397 uint32_t roam_bg_scan_client_bitmap;
gbian62edd7e2017-03-07 13:12:13 +08005398
Nachiket Kukadee547a482018-05-22 16:43:30 +05305399 bool apf_enabled;
Gupta, Kapil96c7f2f2016-04-25 19:13:41 +05305400 bool adaptive_dwell_mode_enabled;
Sandeep Puligillaf5ccbf62018-03-26 16:37:05 -07005401 enum scan_dwelltime_adaptive_mode scan_adaptive_dwell_mode;
5402 enum scan_dwelltime_adaptive_mode scan_adaptive_dwell_mode_nc;
Sandeep Puligillaf5ccbf62018-03-26 16:37:05 -07005403 enum scan_dwelltime_adaptive_mode extscan_adaptive_dwell_mode;
5404 enum scan_dwelltime_adaptive_mode pnoscan_adaptive_dwell_mode;
5405 enum scan_dwelltime_adaptive_mode global_adapt_dwelltime_mode;
Gupta, Kapil96c7f2f2016-04-25 19:13:41 +05305406 uint8_t adapt_dwell_lpf_weight;
5407 uint8_t adapt_dwell_passive_mon_intval;
5408 uint8_t adapt_dwell_wifi_act_threshold;
Kapil Gupta0ed58dc2016-04-22 15:35:26 +05305409 bool bug_report_for_no_scan_results;
Amar Singhal18517882016-08-08 12:26:20 -07005410 bool indoor_channel_support;
Mukul Sharmaecf8e092017-12-19 22:36:31 +05305411 /* control marking indoor channel passive to disable */
5412 bool force_ssc_disable_indoor_channel;
Yingying Tangb4832f72016-10-20 13:44:55 +08005413 uint16_t sap_tx_leakage_threshold;
Arun Khandavallicc544b32017-01-30 19:52:16 +05305414 bool sap_internal_restart;
Tushnim Bhattacharyya3efa49a2017-07-18 15:43:09 -07005415 enum restart_beaconing_on_ch_avoid_rule
5416 restart_beaconing_on_chan_avoid_event;
Nachiket Kukadee547a482018-05-22 16:43:30 +05305417 enum active_apf_mode active_uc_apf_mode;
5418 enum active_apf_mode active_mc_bc_apf_mode;
Kiran Kumar Lokere5cc2f0d2018-02-08 17:10:05 -08005419 uint8_t he_dynamic_frag_support;
Krishna Kumaar Natarajan90bb6f12017-03-03 21:05:52 -08005420#ifdef WLAN_FEATURE_11AX
5421 bool enable_ul_mimo;
5422 bool enable_ul_ofdma;
Manikandan Mohan39accff2017-05-02 16:09:00 -07005423 uint32_t he_sta_obsspd;
Krishna Kumaar Natarajan90bb6f12017-03-03 21:05:52 -08005424#endif
Varun Reddy Yeturud33033f2018-06-11 10:58:30 -07005425#ifdef WLAN_SUPPORT_TWT
Varun Reddy Yeturu96285a22018-05-08 13:37:43 -07005426 bool enable_twt;
5427 uint32_t twt_congestion_timeout;
5428#endif
Manjunathappa Prakashdab74fa2017-06-19 12:11:03 -07005429 bool tx_orphan_enable;
Rajeev Kumar Sirasanagandlaaec0b082017-06-21 11:59:41 +05305430
Dustin Brown20b6fcf2017-05-17 15:35:17 -07005431 uint8_t scan_backoff_multiplier;
Varun Reddy Yeturubba32e92017-09-06 13:31:40 -07005432 bool mawc_nlo_enabled;
5433 uint32_t mawc_nlo_exp_backoff_ratio;
5434 uint32_t mawc_nlo_init_scan_interval;
5435 uint32_t mawc_nlo_max_scan_interval;
Naveen Rawatb2fc4132017-05-10 20:42:05 -07005436 bool is_force_1x1;
Sourav Mohapatrad9387d82018-09-07 12:28:52 +05305437 enum pmo_auto_pwr_detect_failure_mode auto_pwr_save_fail_mode;
Amar Singhal0fcce7d2018-08-01 13:20:58 -07005438 bool enable_11d_in_world_mode;
Manjeet Singha9cae432017-02-28 11:58:22 +05305439 /* 5G preference parameters for boosting RSSI */
5440 bool enable_5g_band_pref;
5441 int8_t rssi_boost_threshold_5g;
5442 uint8_t rssi_boost_factor_5g;
5443 uint8_t max_rssi_boost_5g;
5444 /* 5G preference parameters for dropping RSSI*/
5445 int8_t rssi_penalize_threshold_5g;
5446 uint8_t rssi_penalize_factor_5g;
5447 uint8_t max_rssi_penalize_5g;
Ashish Kumar Dhanotiyab8630ab2017-07-21 14:18:14 +05305448 bool enable_lprx;
Amar Singhale4a2dd52017-08-07 13:59:05 -07005449 uint32_t scan_11d_interval;
Abhishek Singhb58164a2017-07-19 18:47:23 +05305450 bool is_bssid_hint_priority;
Paul Zhang99fe8842017-12-08 14:43:46 +08005451 uint16_t wlm_latency_enable;
5452 uint16_t wlm_latency_level;
5453 uint32_t wlm_latency_flags_normal;
5454 uint32_t wlm_latency_flags_moderate;
5455 uint32_t wlm_latency_flags_low;
5456 uint32_t wlm_latency_flags_ultralow;
Sourav Mohapatrad9387d82018-09-07 12:28:52 +05305457#ifdef WLAN_FEATURE_PACKET_FILTERING
5458 uint8_t packet_filters_bitmap;
5459#endif
lifeng1c16b6b2017-09-25 13:59:55 +08005460 uint8_t dfs_beacon_tx_enhanced;
yeshwanth sriram guntuka41f936c2017-09-01 17:53:49 +05305461 uint32_t btm_offload_config;
Padma, Santhosh Kumar3e47c632017-09-01 20:15:27 +05305462#ifdef WLAN_FEATURE_SAE
5463 bool is_sae_enabled;
5464#endif
Rachit Kankane0106e382018-05-16 18:59:28 +05305465 bool enable_dtim_selection_diversity;
5466 bool gcmp_enabled;
5467 bool is_11k_offload_supported;
Jiachao Wu84bb2ea2018-01-08 16:17:33 +08005468 uint32_t btm_solicited_timeout;
5469 uint32_t btm_max_attempt_cnt;
5470 uint32_t btm_sticky_time;
Vignesh Viswanathan694e28e2018-01-18 20:53:57 +05305471 uint32_t offload_11k_enable_bitmask;
5472 uint32_t neighbor_report_offload_params_bitmask;
5473 uint32_t neighbor_report_offload_time_offset;
5474 uint32_t neighbor_report_offload_low_rssi_offset;
5475 uint32_t neighbor_report_offload_bmiss_count_trigger;
5476 uint32_t neighbor_report_offload_per_threshold_offset;
5477 uint32_t neighbor_report_offload_cache_timeout;
5478 uint32_t neighbor_report_offload_max_req_cap;
Rajeev Kumar Sirasanagandla4725ae42018-05-24 22:33:34 +05305479 bool action_oui_enable;
5480 uint8_t action_oui_str[ACTION_OUI_MAXIMUM_ID][ACTION_OUI_MAX_STR_LEN];
Rachit Kankane0106e382018-05-16 18:59:28 +05305481 uint16_t wmi_wq_watchdog_timeout;
Ashish Kumar Dhanotiya04f09dd2018-04-02 16:25:16 +05305482 uint8_t enable_tx_sch_delay;
Ashish Kumar Dhanotiya959b38c2018-04-06 21:07:57 +05305483 uint32_t enable_secondary_rate;
Rajeev Kumar15b40a22018-04-12 11:45:24 -07005484 bool is_unit_test_framework_enabled;
Abhinav Kumar271f0632018-03-29 16:01:30 +05305485 bool enable_ftopen;
Abhinav Kumaredd1d372018-05-11 15:33:35 +05305486 bool roam_force_rssi_trigger;
Chaoli Zhou75b062f2018-06-11 12:36:54 +08005487 bool enable_change_channel_bandwidth;
Dundi Raviteja8e338282018-09-25 17:16:04 +05305488
5489 /* HDD converged ini items are listed below this*/
5490 bool bug_on_reinit_failure;
5491 bool is_ramdump_enabled;
5492 uint32_t iface_change_wait_time;
5493 uint8_t multicast_host_fw_msgs;
5494 enum hdd_wext_control private_wext_control;
5495 uint32_t timer_multiplier;
5496 bool enablefwprint;
5497 uint8_t enable_fw_log;
5498
5499#ifdef WLAN_LOGGING_SOCK_SVC_ENABLE
5500 /* WLAN Logging */
5501 bool wlan_logging_enable;
5502 bool wlan_logging_to_console;
5503#endif /* WLAN_LOGGING_SOCK_SVC_ENABLE */
5504
5505#ifdef FEATURE_WLAN_AUTO_SHUTDOWN
5506 uint32_t wlan_auto_shutdown;
5507#endif
5508
5509#ifndef REMOVE_PKT_LOG
5510 bool enable_packet_log;
5511#endif
jitiphil869b9f72018-09-25 17:14:01 +05305512 uint32_t rx_mode;
5513#ifdef MSM_PLATFORM
5514 uint32_t bus_bw_high_threshold;
5515 uint32_t bus_bw_medium_threshold;
5516 uint32_t bus_bw_low_threshold;
5517 uint32_t bus_bw_compute_interval;
5518 uint32_t enable_tcp_delack;
5519 bool enable_tcp_limit_output;
5520 uint32_t enable_tcp_adv_win_scale;
5521 uint32_t tcp_delack_thres_high;
5522 uint32_t tcp_delack_thres_low;
5523 uint32_t tcp_tx_high_tput_thres;
5524 uint32_t tcp_delack_timer_count;
Alok Kumar2fad6442018-11-08 19:19:28 +05305525 bool enable_tcp_param_update;
jitiphil869b9f72018-09-25 17:14:01 +05305526 u8 periodic_stats_disp_time;
5527#endif /* MSM_PLATFORM */
5528#ifdef QCA_LL_LEGACY_TX_FLOW_CONTROL
5529 uint32_t tx_flow_low_watermark;
5530 uint32_t tx_flow_hi_watermark_offset;
5531 uint32_t tx_flow_max_queue_depth;
5532 uint32_t tx_lbw_flow_low_watermark;
5533 uint32_t tx_lbw_flow_hi_watermark_offset;
5534 uint32_t tx_lbw_flow_max_queue_depth;
5535 uint32_t tx_hbw_flow_low_watermark;
5536 uint32_t tx_hbw_flow_hi_watermark_offset;
5537 uint32_t tx_hbw_flow_max_queue_depth;
5538#endif /* QCA_LL_LEGACY_TX_FLOW_CONTROL */
5539 uint32_t napi_cpu_affinity_mask;
5540 /* CPU affinity mask for rx_thread */
5541 uint32_t rx_thread_affinity_mask;
5542 uint8_t cpu_map_list[CFG_DP_RPS_RX_QUEUE_CPU_MAP_LIST_LEN];
jitiphil296c23e2018-11-15 16:26:14 +05305543 bool multicast_replay_filter;
5544 uint32_t rx_wakelock_timeout;
5545 uint8_t num_dp_rx_threads;
jitiphilb03ae082018-11-09 17:41:59 +05305546#ifdef CONFIG_DP_TRACE
5547 bool enable_dp_trace;
5548 uint8_t dp_trace_config[DP_TRACE_CONFIG_STRING_LENGTH];
5549#endif
5550#ifdef WLAN_NUD_TRACKING
5551 bool enable_nud_tracking;
5552#endif
Vignesh Viswanathana0358ff2018-11-27 09:53:07 +05305553 uint8_t operating_channel;
5554 uint8_t num_vdevs;
5555 uint8_t enable_concurrent_sta[CFG_CONCURRENT_IFACE_MAX_LEN];
5556 uint8_t dbs_scan_selection[CFG_DBS_SCAN_PARAM_LENGTH];
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005557};
5558
5559#define VAR_OFFSET(_Struct, _Var) (offsetof(_Struct, _Var))
5560#define VAR_SIZE(_Struct, _Var) (sizeof(((_Struct *)0)->_Var))
5561
5562#define VAR_FLAGS_NONE (0)
5563
5564/* bit 0 is Required or Optional */
5565#define VAR_FLAGS_REQUIRED (1 << 0)
5566#define VAR_FLAGS_OPTIONAL (0 << 0)
5567
5568/*
5569 * bit 1 tells if range checking is required.
5570 * If less than MIN, assume MIN.
5571 * If greater than MAX, assume MAX.
5572 */
5573#define VAR_FLAGS_RANGE_CHECK (1 << 1)
5574#define VAR_FLAGS_RANGE_CHECK_ASSUME_MINMAX (VAR_FLAGS_RANGE_CHECK)
5575
5576/*
5577 * bit 2 is range checking that assumes the DEFAULT value
5578 * If less than MIN, assume DEFAULT,
5579 * If greater than MAX, assume DEFAULT.
5580 */
5581#define VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT (1 << 2)
5582
5583/*
5584 * Bit 3 indicates that the config item can be modified dynamicially
5585 * on a running system
5586 */
5587#define VAR_FLAGS_DYNAMIC_CFG (1 << 3)
5588
Srinivas Girigowda2fb677c2017-03-25 15:35:34 -07005589enum wlan_parameter_type {
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005590 WLAN_PARAM_Integer,
5591 WLAN_PARAM_SignedInteger,
5592 WLAN_PARAM_HexInteger,
5593 WLAN_PARAM_String,
5594 WLAN_PARAM_MacAddr,
Srinivas Girigowda2fb677c2017-03-25 15:35:34 -07005595};
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005596
5597#define REG_VARIABLE(_Name, _Type, _Struct, _VarName, \
5598 _Flags, _Default, _Min, _Max) \
5599 { \
5600 (_Name), \
5601 (_Type), \
5602 (_Flags), \
Qiwei Cai1c52ef62018-08-23 18:58:58 +08005603 0, \
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005604 VAR_OFFSET(_Struct, _VarName), \
5605 VAR_SIZE(_Struct, _VarName), \
5606 (_Default), \
5607 (_Min), \
5608 (_Max), \
Qiwei Cai1c52ef62018-08-23 18:58:58 +08005609 NULL \
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005610 }
5611
5612#define REG_DYNAMIC_VARIABLE(_Name, _Type, _Struct, _VarName, \
5613 _Flags, _Default, _Min, _Max, \
5614 _CBFunc, _CBParam) \
5615 { \
5616 (_Name), \
5617 (_Type), \
5618 (VAR_FLAGS_DYNAMIC_CFG | (_Flags)), \
Qiwei Cai1c52ef62018-08-23 18:58:58 +08005619 (_CBParam), \
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005620 VAR_OFFSET(_Struct, _VarName), \
5621 VAR_SIZE(_Struct, _VarName), \
5622 (_Default), \
5623 (_Min), \
5624 (_Max), \
Qiwei Cai1c52ef62018-08-23 18:58:58 +08005625 (_CBFunc) \
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005626 }
5627
5628#define REG_VARIABLE_STRING(_Name, _Type, _Struct, _VarName, \
5629 _Flags, _Default) \
5630 { \
5631 (_Name), \
5632 (_Type), \
5633 (_Flags), \
Qiwei Cai1c52ef62018-08-23 18:58:58 +08005634 0, \
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005635 VAR_OFFSET(_Struct, _VarName), \
5636 VAR_SIZE(_Struct, _VarName), \
5637 (unsigned long)(_Default), \
5638 0, \
5639 0, \
Qiwei Cai1c52ef62018-08-23 18:58:58 +08005640 NULL \
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005641 }
5642
Srinivas Girigowda2fb677c2017-03-25 15:35:34 -07005643struct reg_table_entry {
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005644 char *RegName; /* variable name in the qcom_cfg.ini file */
Qiwei Cai1c52ef62018-08-23 18:58:58 +08005645 unsigned char RegType; /* variable type in hdd_config struct */
5646 unsigned char Flags; /* Specify optional parms and if RangeCheck is performed */
5647 unsigned char notifyId; /* Dynamic modification identifier */
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005648 unsigned short VarOffset; /* offset to field from the base address of the structure */
5649 unsigned short VarSize; /* size (in bytes) of the field */
5650 unsigned long VarDefault; /* default value to use */
5651 unsigned long VarMin; /* minimum value, for range checking */
5652 unsigned long VarMax; /* maximum value, for range checking */
5653 /* Dynamic modification notifier */
Jeff Johnson723234b2017-09-03 08:49:15 -07005654 void (*pfnDynamicnotify)(struct hdd_context *hdd_ctx,
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005655 unsigned long notifyId);
Srinivas Girigowda2fb677c2017-03-25 15:35:34 -07005656};
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005657
Krunal Soni707eb782018-01-18 12:04:19 -08005658/**
5659 * hdd_to_csr_wmm_mode() - Utility function to convert HDD to CSR WMM mode
5660 *
Abhinav Kumar7d6f1ac2018-09-01 18:33:56 +05305661 * @uint8_t mode - hdd WMM user mode
Krunal Soni707eb782018-01-18 12:04:19 -08005662 *
5663 * Return: CSR WMM mode
5664 */
Abhinav Kumar7d6f1ac2018-09-01 18:33:56 +05305665eCsrRoamWmmUserModeType hdd_to_csr_wmm_mode(uint8_t mode);
Krunal Soni707eb782018-01-18 12:04:19 -08005666
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005667/* Function declarations and documenation */
Jeff Johnson723234b2017-09-03 08:49:15 -07005668QDF_STATUS hdd_parse_config_ini(struct hdd_context *hdd_ctx);
Rajeev Kumar Sirasanagandlaaec0b082017-06-21 11:59:41 +05305669
Jeff Johnson723234b2017-09-03 08:49:15 -07005670QDF_STATUS hdd_update_mac_config(struct hdd_context *hdd_ctx);
5671QDF_STATUS hdd_set_sme_config(struct hdd_context *hdd_ctx);
5672QDF_STATUS hdd_set_policy_mgr_user_cfg(struct hdd_context *hdd_ctx);
Jeff Johnsonb6909be2017-08-28 12:07:19 -07005673QDF_STATUS hdd_set_sme_chan_list(struct hdd_context *hdd_ctx);
Jeff Johnson723234b2017-09-03 08:49:15 -07005674bool hdd_update_config_cfg(struct hdd_context *hdd_ctx);
Nirav Shah5c083da2018-08-03 13:46:02 +05305675void hdd_cfg_get_global_config(struct hdd_context *hdd_ctx, char *buf,
5676 int buflen);
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005677
Srinivas Girigowda2fb677c2017-03-25 15:35:34 -07005678eCsrPhyMode hdd_cfg_xlate_to_csr_phy_mode(enum hdd_dot11_mode dot11Mode);
Jeff Johnson723234b2017-09-03 08:49:15 -07005679QDF_STATUS hdd_execute_global_config_command(struct hdd_context *hdd_ctx,
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005680 char *command);
5681
Jeff Johnson723234b2017-09-03 08:49:15 -07005682bool hdd_is_okc_mode_enabled(struct hdd_context *hdd_ctx);
Arunk Khandavalli847969d2017-09-25 15:15:36 +05305683QDF_STATUS hdd_set_idle_ps_config(struct hdd_context *hdd_ctx, bool val);
Jeff Johnson723234b2017-09-03 08:49:15 -07005684void hdd_get_pmkid_modes(struct hdd_context *hdd_ctx,
Deepak Dhamdhere828f1892017-02-09 11:51:19 -08005685 struct pmkid_mode_bits *pmkid_modes);
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005686
Jeff Johnson8abc5932018-06-02 22:51:37 -07005687void hdd_update_tgt_cfg(hdd_handle_t hdd_handle, struct wma_tgt_cfg *cfg);
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005688
Jeff Johnson9268e092017-11-03 08:18:24 -07005689/**
5690 * hdd_string_to_u8_array() - used to convert decimal string into u8 array
5691 * @str: Decimal string
5692 * @array: Array where converted value is stored
5693 * @len: Length of the populated array
5694 * @array_max_len: Maximum length of the array
5695 *
5696 * This API is called to convert decimal string (each byte separated by
5697 * a comma) into an u8 array
5698 *
5699 * Return: QDF_STATUS
5700 */
5701QDF_STATUS hdd_string_to_u8_array(char *str, uint8_t *array,
Jiachao Wu6e9b9f92018-01-03 13:35:40 +08005702 uint8_t *len, uint16_t array_max_len);
Jeff Johnson9268e092017-11-03 08:18:24 -07005703
Anurag Chouhanfb54ab02016-02-18 18:00:46 +05305704QDF_STATUS hdd_hex_string_to_u16_array(char *str, uint16_t *int_array,
Krishna Kumaar Natarajanf599c6e2015-11-03 11:44:03 -08005705 uint8_t *len, uint8_t int_array_max_len);
5706
Nirav Shah5c083da2018-08-03 13:46:02 +05305707void hdd_cfg_print_global_config(struct hdd_context *hdd_ctx);
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005708
Kiran Kumar Lokere44a29432018-01-24 16:10:30 -08005709QDF_STATUS hdd_update_nss(struct hdd_adapter *adapter, uint8_t nss);
Arif Hussaincd151632017-02-11 16:57:19 -08005710
5711/**
5712 * hdd_dfs_indicate_radar() - Block tx as radar found on the channel
5713 * @hdd_ctxt: HDD context pointer
5714 *
5715 * This function is invoked in atomic context when a radar
5716 * is found on the SAP current operating channel and Data Tx
5717 * from netif has to be stopped to honor the DFS regulations.
5718 * Actions: Stop the netif Tx queues,Indicate Radar present
5719 * in HDD context for future usage.
5720 *
5721 * Return: true on success, else false
5722 */
Jeff Johnsonb6909be2017-08-28 12:07:19 -07005723bool hdd_dfs_indicate_radar(struct hdd_context *hdd_ctx);
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08005724#endif