blob: 1f163cfa513c380109f6ebd89756f3aedd6d0d31 [file] [log] [blame]
Jeff Johnson295189b2012-06-20 16:38:30 -07001/*
Pradeep Reddy POTTETI60ad2402015-02-26 16:48:21 +05302 * Copyright (c) 2012-2015 The Linux Foundation. All rights reserved.
Kiet Lam842dad02014-02-18 18:44:02 -08003 *
4 * Previously licensed under the ISC license by Qualcomm Atheros, Inc.
5 *
6 *
7 * Permission to use, copy, modify, and/or distribute this software for
8 * any purpose with or without fee is hereby granted, provided that the
9 * above copyright notice and this permission notice appear in all
10 * copies.
11 *
12 * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL
13 * WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED
14 * WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE
15 * AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
16 * DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR
17 * PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
18 * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
19 * PERFORMANCE OF THIS SOFTWARE.
20 */
21
22/*
23 * This file was originally distributed by Qualcomm Atheros, Inc.
24 * under proprietary terms before Copyright ownership was assigned
25 * to the Linux Foundation.
26 */
Jeff Johnson295189b2012-06-20 16:38:30 -070027
28#if !defined( HDD_CONFIG_H__ )
29#define HDD_CONFIG_H__
30
31/**===========================================================================
32
33 \file hdd_Config.h
34
35 \brief Android WLAN Adapter Configuration functions
36
Kiet Lamaa8e15a2014-02-11 23:30:06 -080037
Jeff Johnson295189b2012-06-20 16:38:30 -070038 ==========================================================================*/
39
40/* $HEADER$ */
41
42/*---------------------------------------------------------------------------
43 Include files
44 -------------------------------------------------------------------------*/
45#include <wlan_hdd_includes.h>
46#include <wlan_hdd_wmm.h>
47#include <vos_types.h>
48#include <csrApi.h>
49
50//Number of items that can be configured
Jeff Johnson9d4cefe2013-12-18 15:05:08 -080051#define MAX_CFG_INI_ITEMS 512
Jeff Johnson295189b2012-06-20 16:38:30 -070052
53// Defines for all of the things we read from the configuration (registry).
54
55#define CFG_RTS_THRESHOLD_NAME "RTSThreshold"
56#define CFG_RTS_THRESHOLD_MIN WNI_CFG_RTS_THRESHOLD_STAMIN // min is 0, meaning always use RTS.
57#define CFG_RTS_THRESHOLD_MAX WNI_CFG_RTS_THRESHOLD_STAMAX // max is the max frame size
58#define CFG_RTS_THRESHOLD_DEFAULT WNI_CFG_RTS_THRESHOLD_STADEF
59
60#define CFG_FRAG_THRESHOLD_NAME "gFragmentationThreshold"
61#define CFG_FRAG_THRESHOLD_MIN WNI_CFG_FRAGMENTATION_THRESHOLD_STAMIN
62#define CFG_FRAG_THRESHOLD_MAX WNI_CFG_FRAGMENTATION_THRESHOLD_STAMAX
63#define CFG_FRAG_THRESHOLD_DEFAULT WNI_CFG_FRAGMENTATION_THRESHOLD_STADEF
64
65#define CFG_CALIBRATION_NAME "gCalibration"
66#define CFG_CALIBRATION_MIN ( 0 )
67#define CFG_CALIBRATION_MAX ( 1 )
68#define CFG_CALIBRATION_MAC_DEFAULT ( 1 )
69#define CFG_CALIBRATION_DEFAULT CFG_CALIBRATION_MAC_DEFAULT
70
71#define CFG_CALIBRATION_PERIOD_NAME "gCalibrationPeriod"
72#define CFG_CALIBRATION_PERIOD_MIN ( 2 )
73#define CFG_CALIBRATION_PERIOD_MAX ( 10 )
74#define CFG_CALIBRATION_PERIOD_MAC_DEFAULT ( 5 )
75#define CFG_CALIBRATION_PERIOD_DEFAULT CFG_CALIBRATION_PERIOD_MAC_DEFAULT
76
77#define CFG_OPERATING_CHANNEL_NAME "gOperatingChannel"
78#define CFG_OPERATING_CHANNEL_MIN ( 0 )
79#define CFG_OPERATING_CHANNEL_MAX ( 14 )
80#define CFG_OPERATING_CHANNEL_DEFAULT ( 1 )
81
82#define CFG_SHORT_SLOT_TIME_ENABLED_NAME "gShortSlotTimeEnabled"
83#define CFG_SHORT_SLOT_TIME_ENABLED_MIN WNI_CFG_SHORT_SLOT_TIME_STAMIN
84#define CFG_SHORT_SLOT_TIME_ENABLED_MAX WNI_CFG_SHORT_SLOT_TIME_STAMAX
85#define CFG_SHORT_SLOT_TIME_ENABLED_DEFAULT WNI_CFG_SHORT_SLOT_TIME_STADEF
86
87#define CFG_11D_SUPPORT_ENABLED_NAME "g11dSupportEnabled"
88#define CFG_11D_SUPPORT_ENABLED_MIN WNI_CFG_11D_ENABLED_STAMIN
89#define CFG_11D_SUPPORT_ENABLED_MAX WNI_CFG_11D_ENABLED_STAMAX
90#define CFG_11D_SUPPORT_ENABLED_DEFAULT WNI_CFG_11D_ENABLED_STADEF // Default is ON
91
Madan Mohan Koyyalamudi8db1c942013-01-10 15:24:29 -080092#define CFG_11H_SUPPORT_ENABLED_NAME "g11hSupportEnabled"
93#define CFG_11H_SUPPORT_ENABLED_MIN ( 0 )
94#define CFG_11H_SUPPORT_ENABLED_MAX ( 1 )
95#define CFG_11H_SUPPORT_ENABLED_DEFAULT ( 1 ) // Default is ON
96
Jeff Johnson295189b2012-06-20 16:38:30 -070097#define CFG_ENFORCE_11D_CHANNELS_NAME "gEnforce11dChannel"
98#define CFG_ENFORCE_11D_CHANNELS_MIN ( 0 )
99#define CFG_ENFORCE_11D_CHANNELS_MAX ( 1 )
100#define CFG_ENFORCE_11D_CHANNELS_DEFAULT ( 0 )
101
102//COUNTRY Code Priority
103#define CFG_COUNTRY_CODE_PRIORITY_NAME "gCountryCodePriority"
104#define CFG_COUNTRY_CODE_PRIORITY_MIN ( 0 )
105#define CFG_COUNTRY_CODE_PRIORITY_MAX ( 1 )
Padma, Santhosh Kumardb3565b2014-05-20 16:42:00 +0530106#define CFG_COUNTRY_CODE_PRIORITY_DEFAULT ( 1 )
Jeff Johnson295189b2012-06-20 16:38:30 -0700107
108#define CFG_ENFORCE_COUNTRY_CODE_MATCH_NAME "gEnforceCountryCodeMatch"
109#define CFG_ENFORCE_COUNTRY_CODE_MATCH_MIN ( 0 )
110#define CFG_ENFORCE_COUNTRY_CODE_MATCH_MAX ( 1 )
111#define CFG_ENFORCE_COUNTRY_CODE_MATCH_DEFAULT ( 0 )
112
113#define CFG_ENFORCE_DEFAULT_DOMAIN_NAME "gEnforceDefaultDomain"
114#define CFG_ENFORCE_DEFAULT_DOMAIN_MIN ( 0 )
115#define CFG_ENFORCE_DEFAULT_DOMAIN_MAX ( 1 )
116#define CFG_ENFORCE_DEFAULT_DOMAIN_DEFAULT ( 0 )
117
118#define CFG_GENERIC_ID1_NAME "gCfg1Id"
119#define CFG_GENERIC_ID1_MIN ( 0 )
120#define CFG_GENERIC_ID1_MAX ( 0xffffffff )
121#define CFG_GENERIC_ID1_DEFAULT ( 0 )
122
123#define CFG_GENERIC_ID2_NAME "gCfg2Id"
124#define CFG_GENERIC_ID2_MIN ( 0 )
125#define CFG_GENERIC_ID2_MAX ( 0xffffffff )
126#define CFG_GENERIC_ID2_DEFAULT ( 0 )
127
128#define CFG_GENERIC_ID3_NAME "gCfg3Id"
129#define CFG_GENERIC_ID3_MIN ( 0 )
130#define CFG_GENERIC_ID3_MAX ( 0xffffffff )
131#define CFG_GENERIC_ID3_DEFAULT ( 0 )
132
133#define CFG_GENERIC_ID4_NAME "gCfg4Id"
134#define CFG_GENERIC_ID4_MIN ( 0 )
135#define CFG_GENERIC_ID4_MAX ( 0xffffffff )
136#define CFG_GENERIC_ID4_DEFAULT ( 0 )
137
138#define CFG_GENERIC_ID5_NAME "gCfg5Id"
139#define CFG_GENERIC_ID5_MIN ( 0 )
140#define CFG_GENERIC_ID5_MAX ( 0xffffffff )
141#define CFG_GENERIC_ID5_DEFAULT ( 0 )
142
143#define CFG_GENERIC_VALUE1_NAME "gCfg1Value"
144#define CFG_GENERIC_VALUE1_MIN ( 0 )
145#define CFG_GENERIC_VALUE1_MAX ( 0xffffffff )
146#define CFG_GENERIC_VALUE1_DEFAULT ( 0 )
147
148#define CFG_GENERIC_VALUE2_NAME "gCfg2Value"
149#define CFG_GENERIC_VALUE2_MIN ( 0 )
150#define CFG_GENERIC_VALUE2_MAX ( 0xffffffff )
151#define CFG_GENERIC_VALUE2_DEFAULT ( 0 )
152
153#define CFG_GENERIC_VALUE3_NAME "gCfg3Value"
154#define CFG_GENERIC_VALUE3_MIN ( 0 )
155#define CFG_GENERIC_VALUE3_MAX ( 0xffffffff )
156#define CFG_GENERIC_VALUE3_DEFAULT ( 0 )
157
158#define CFG_GENERIC_VALUE4_NAME "gCfg4Value"
159#define CFG_GENERIC_VALUE4_MIN ( 0 )
160#define CFG_GENERIC_VALUE4_MAX ( 0xffffffff )
161#define CFG_GENERIC_VALUE4_DEFAULT ( 0 )
162
163#define CFG_GENERIC_VALUE5_NAME "gCfg5Value"
164#define CFG_GENERIC_VALUE5_MIN ( 0 )
165#define CFG_GENERIC_VALUE5_MAX ( 0xffffffff )
166#define CFG_GENERIC_VALUE5_DEFAULT ( 0 )
167
168#define CFG_HEARTBEAT_THRESH_24_NAME "gHeartbeat24"
169#define CFG_HEARTBEAT_THRESH_24_MIN WNI_CFG_HEART_BEAT_THRESHOLD_STAMIN
170#define CFG_HEARTBEAT_THRESH_24_MAX WNI_CFG_HEART_BEAT_THRESHOLD_STAMAX
171#define CFG_HEARTBEAT_THRESH_24_DEFAULT WNI_CFG_HEART_BEAT_THRESHOLD_STADEF
172
173#define CFG_POWER_USAGE_NAME "gPowerUsage"
174#define CFG_POWER_USAGE_MIN "Min" //Minimum Power Save
175#define CFG_POWER_USAGE_MAX "Max" //Maximum Power Save
176#define CFG_POWER_USAGE_DEFAULT "Mod" //Moderate Power Save
177
178//Enable suspend on Android
179#define CFG_ENABLE_SUSPEND_NAME "gEnableSuspend"
180#define CFG_ENABLE_SUSPEND_MIN ( 0 ) //No support for suspend
181#define CFG_ENABLE_SUSPEND_MAX ( 3 ) //Map to Deep Sleep
182#define CFG_ENABLE_SUSPEND_DEFAULT ( 1 ) //Map to Standby
183
184//Driver start/stop command mappings
185#define CFG_ENABLE_ENABLE_DRIVER_STOP_NAME "gEnableDriverStop"
186#define CFG_ENABLE_ENABLE_DRIVER_STOP_MIN ( 0 ) //No support for stop
187#define CFG_ENABLE_ENABLE_DRIVER_STOP_MAX ( 2 ) //Map to Deep Sleep
188#define CFG_ENABLE_ENABLE_DRIVER_STOP_DEFAULT ( 0 )
189
190#define CFG_WOWL_PATTERN_NAME "gWowlPattern"
191#define CFG_WOWL_PATTERN_DEFAULT ""
192
193//IMPS = IdleModePowerSave
194#define CFG_ENABLE_IMPS_NAME "gEnableImps"
195#define CFG_ENABLE_IMPS_MIN ( 0 )
196#define CFG_ENABLE_IMPS_MAX ( 1 )
197#define CFG_ENABLE_IMPS_DEFAULT ( 1 )
198
Pradeep Kumar Goudagunta22d8e4d2014-07-17 15:03:51 +0530199//SSR = SubSytemRestart
200#define CFG_SSR_PANIC_ON_FAILURE_NAME "gSsrPanicOnFailure"
201#define CFG_SSR_PANIC_ON_FAILURE_MIN ( 0 )
202#define CFG_SSR_PANIC_ON_FAILURE_MAX ( 1 )
203#define CFG_SSR_PANIC_ON_FAILURE_DEFAULT ( 0 )
204
Jeff Johnson295189b2012-06-20 16:38:30 -0700205#define CFG_IMPS_MINIMUM_SLEEP_TIME_NAME "gImpsMinSleepTime"
206#define CFG_IMPS_MINIMUM_SLEEP_TIME_MIN ( 0 )
207#define CFG_IMPS_MINIMUM_SLEEP_TIME_MAX ( 65535 )
208#define CFG_IMPS_MINIMUM_SLEEP_TIME_DEFAULT ( 5 )
209
210#define CFG_IMPS_MODERATE_SLEEP_TIME_NAME "gImpsModSleepTime"
211#define CFG_IMPS_MODERATE_SLEEP_TIME_MIN ( 0 )
212#define CFG_IMPS_MODERATE_SLEEP_TIME_MAX ( 65535 )
213#define CFG_IMPS_MODERATE_SLEEP_TIME_DEFAULT ( 10)
214
215#define CFG_IMPS_MAXIMUM_SLEEP_TIME_NAME "gImpsMaxSleepTime"
216#define CFG_IMPS_MAXIMUM_SLEEP_TIME_MIN ( 0 )
217#define CFG_IMPS_MAXIMUM_SLEEP_TIME_MAX ( 65535 )
218#define CFG_IMPS_MAXIMUM_SLEEP_TIME_DEFAULT ( 15 )
219
Agarwal Ashishbd3e10b2014-11-24 19:19:46 +0530220/*If there is scan on STA interface back to back with
221 *time diff nDeferScanTimeInterval, driver will not
222 *issue a new scan. Driver will return cached result to kernel.
223 *the interval is in msec
224 */
225#define CFG_DEFER_SCAN_TIME_INTERVAL "gDeferScanTimeInterval"
226#define CFG_DEFER_SCAN_TIME_INTERVAL_MIN ( 0 )
227#define CFG_DEFER_SCAN_TIME_INTERVAL_MAX ( 65535 )
228#define CFG_DEFER_SCAN_TIME_INTERVAL_DEFAULT ( 2000 )
229
Jeff Johnson295189b2012-06-20 16:38:30 -0700230//BMPS = BeaconModePowerSave
231#define CFG_ENABLE_BMPS_NAME "gEnableBmps"
232#define CFG_ENABLE_BMPS_MIN ( 0 )
233#define CFG_ENABLE_BMPS_MAX ( 1 )
234#define CFG_ENABLE_BMPS_DEFAULT ( 1 )
235
236#define CFG_BMPS_MINIMUM_LI_NAME "gBmpsMinListenInterval"
237#define CFG_BMPS_MINIMUM_LI_MIN ( 1 )
238#define CFG_BMPS_MINIMUM_LI_MAX ( 65535 )
239#define CFG_BMPS_MINIMUM_LI_DEFAULT ( 1 )
240
241#define CFG_BMPS_MODERATE_LI_NAME "gBmpsModListenInterval"
242#define CFG_BMPS_MODERATE_LI_MIN ( 1 )
243#define CFG_BMPS_MODERATE_LI_MAX ( 65535 )
244#define CFG_BMPS_MODERATE_LI_DEFAULT ( 1 )
245
246#define CFG_BMPS_MAXIMUM_LI_NAME "gBmpsMaxListenInterval"
247#define CFG_BMPS_MAXIMUM_LI_MIN ( 1 )
248#define CFG_BMPS_MAXIMUM_LI_MAX ( 65535 )
249#define CFG_BMPS_MAXIMUM_LI_DEFAULT ( 1 )
250
251// gEnableAutoBmpsTimer has been previously published as an externally
252// configurable parameter. See analysis of CR 178211 for detailed info
253// on why we want to *always* set this to 1 i.e. we no longer want
254// this parameter to be configurable. the clean solution would be for
255// users to not define this item in winreg so that the default value
256// (which needs to be changed to 1) gets picked up but we cannot rely on that
257// since this item has been published already hence the proposed
258// solution to change the name of the item along with the change in the
259// default value. also we could decide to not read this item from registry
260// but leaving open the option of being able to configure this item for
261// ASW's internal use
262#define CFG_ENABLE_AUTO_BMPS_TIMER_NAME "gEnableAutoBmpsTimer_INTERNAL"
263#define CFG_ENABLE_AUTO_BMPS_TIMER_MIN ( 0 )
264#define CFG_ENABLE_AUTO_BMPS_TIMER_MAX ( 1 )
265#define CFG_ENABLE_AUTO_BMPS_TIMER_DEFAULT ( 1 )
266
Deepthi Gowri9025aa62014-11-07 19:45:36 +0530267#define CFG_ENABLE_DYNAMIC_RA_START_RATE_NAME "gEnableDynamicRAstartRate"
268#define CFG_ENABLE_DYNAMIC_RA_START_RATE_MIN ( 0 )
269#define CFG_ENABLE_DYNAMIC_RA_START_RATE_MAX ( 1 )
270#define CFG_ENABLE_DYNAMIC_RA_START_RATE_DEFAULT ( 0 )
271
jagadeeshaf2d0ce2015-03-31 11:45:30 +0530272/* Bit mask value to enable RTS/CTS for different modes
273 * for 2.4 GHz, HT20 - 0x0001, for 2.4 GHz, HT40 - 0x0002
274 * for 2.4 GHz, VHT20 - 0x0004, for 2.4 GHz, VHT40 - 0x0008
275 * for 5 GHz, HT20 - 0x0100, for 5 GHz, HT40 - 0x0200
276 * for 5 GHz, VHT20 - 0x0400, for 5 GHz, VHT40 - 0x0800
277 * for 5 GHz, VHT80 - 0x1000
278 */
279#define CFG_ENABLE_RTSCTS_HTVHT_NAME "gEnableRtsCtsHtVht"
280#define CFG_ENABLE_RTSCTS_HTVHT_MIN ( 0x0000 )
281#define CFG_ENABLE_RTSCTS_HTVHT_MAX ( 0x1f0f )
282#define CFG_ENABLE_RTSCTS_HTVHT_DEFAULT ( 0x0000 )
283
Jeff Johnson295189b2012-06-20 16:38:30 -0700284#define CFG_AUTO_BMPS_TIMER_VALUE_NAME "gAutoBmpsTimerValue"
285#define CFG_AUTO_BMPS_TIMER_VALUE_MIN ( 1000 )
286#define CFG_AUTO_BMPS_TIMER_VALUE_MAX ( 4294967295UL )
287#define CFG_AUTO_BMPS_TIMER_VALUE_DEFAULT ( 1000 )
288
289#define CFG_MAX_RX_AMPDU_FACTOR_NAME "gMaxRxAmpduFactor"
290#define CFG_MAX_RX_AMPDU_FACTOR_MIN WNI_CFG_MAX_RX_AMPDU_FACTOR_STAMIN
291#define CFG_MAX_RX_AMPDU_FACTOR_MAX WNI_CFG_MAX_RX_AMPDU_FACTOR_STAMAX
292#define CFG_MAX_RX_AMPDU_FACTOR_DEFAULT WNI_CFG_MAX_RX_AMPDU_FACTOR_STADEF
293
Sudhir Sattayappa Kohallida1be202013-07-11 12:04:30 -0700294//Configuration added to enable/disable CTS2SELF in
295//Adaptive RX drain feature
296#define CFG_ENABLE_ADAPT_RX_DRAIN_NAME "gEnableAdaptRxDrain"
297#define CFG_ENABLE_ADAPT_RX_DRAIN_MIN WNI_CFG_ENABLE_ADAPT_RX_DRAIN_STAMIN
298#define CFG_ENABLE_ADAPT_RX_DRAIN_MAX WNI_CFG_ENABLE_ADAPT_RX_DRAIN_STAMAX
299#define CFG_ENABLE_ADAPT_RX_DRAIN_DEFAULT WNI_CFG_ENABLE_ADAPT_RX_DRAIN_STADEF
300
Jeff Johnson295189b2012-06-20 16:38:30 -0700301typedef enum
302{
303 eHDD_DOT11_MODE_AUTO = 0, //covers all things we support
304 eHDD_DOT11_MODE_abg, //11a/b/g only, no HT, no proprietary
305 eHDD_DOT11_MODE_11b,
306 eHDD_DOT11_MODE_11g,
307 eHDD_DOT11_MODE_11n,
308 eHDD_DOT11_MODE_11g_ONLY,
309 eHDD_DOT11_MODE_11n_ONLY,
310 eHDD_DOT11_MODE_11b_ONLY,
Jeff Johnsone7245742012-09-05 17:12:55 -0700311#ifdef WLAN_FEATURE_11AC
312 eHDD_DOT11_MODE_11ac_ONLY,
313 eHDD_DOT11_MODE_11ac,
314#endif
Jeff Johnson295189b2012-06-20 16:38:30 -0700315}eHddDot11Mode;
316
317#define CFG_DOT11_MODE_NAME "gDot11Mode"
318#define CFG_DOT11_MODE_MIN eHDD_DOT11_MODE_AUTO
Jeff Johnsone7245742012-09-05 17:12:55 -0700319#ifdef WLAN_FEATURE_11AC
320#define CFG_DOT11_MODE_MAX eHDD_DOT11_MODE_11ac
321#define CFG_DOT11_MODE_DEFAULT eHDD_DOT11_MODE_11ac
322#else
Jeff Johnson295189b2012-06-20 16:38:30 -0700323#define CFG_DOT11_MODE_MAX eHDD_DOT11_MODE_11b_ONLY
324#define CFG_DOT11_MODE_DEFAULT eHDD_DOT11_MODE_11n
Jeff Johnsone7245742012-09-05 17:12:55 -0700325#endif
Jeff Johnson295189b2012-06-20 16:38:30 -0700326
Sushant Kaushik7dc03272015-02-18 11:25:12 +0530327#define CFG_SAP_ENABLE_11AC_NAME "gSapEnable11AC"
328#define CFG_SAP_ENABLE_11AC_MIN ( 0 )
329#define CFG_SAP_ENABLE_11AC_MAX ( 1 )
330#define CFG_SAP_ENABLE_11AC_DEFAULT ( 1 )
Abhishek Singhf0ac1752014-03-05 17:47:09 +0530331
Jeff Johnson295189b2012-06-20 16:38:30 -0700332#define CFG_CHANNEL_BONDING_MODE_24GHZ_NAME "gChannelBondingMode24GHz"
333#define CFG_CHANNEL_BONDING_MODE_MIN WNI_CFG_CHANNEL_BONDING_MODE_STAMIN
334#define CFG_CHANNEL_BONDING_MODE_MAX WNI_CFG_CHANNEL_BONDING_MODE_STAMAX
335#define CFG_CHANNEL_BONDING_MODE_DEFAULT WNI_CFG_CHANNEL_BONDING_MODE_STADEF
336
337#define CFG_CHANNEL_BONDING_MODE_5GHZ_NAME "gChannelBondingMode5GHz"
338#define CFG_CHANNEL_BONDING_MODE_MIN WNI_CFG_CHANNEL_BONDING_MODE_STAMIN
339#define CFG_CHANNEL_BONDING_MODE_MAX WNI_CFG_CHANNEL_BONDING_MODE_STAMAX
340#define CFG_CHANNEL_BONDING_MODE_DEFAULT WNI_CFG_CHANNEL_BONDING_MODE_STADEF
341
342#define CFG_FIXED_RATE_NAME "gFixedRate"
343#define CFG_FIXED_RATE_MIN WNI_CFG_FIXED_RATE_STAMIN
344#define CFG_FIXED_RATE_MAX WNI_CFG_FIXED_RATE_STAMAX
345#define CFG_FIXED_RATE_DEFAULT WNI_CFG_FIXED_RATE_STADEF
346
347#define CFG_SHORT_GI_20MHZ_NAME "gShortGI20Mhz"
348#define CFG_SHORT_GI_20MHZ_MIN WNI_CFG_SHORT_GI_20MHZ_STAMIN
349#define CFG_SHORT_GI_20MHZ_MAX WNI_CFG_SHORT_GI_20MHZ_STAMAX
350#define CFG_SHORT_GI_20MHZ_DEFAULT WNI_CFG_SHORT_GI_20MHZ_STADEF
351
352#define CFG_BLOCK_ACK_AUTO_SETUP_NAME "gBlockAckAutoSetup"
353#define CFG_BLOCK_ACK_AUTO_SETUP_MIN ( 0 )
354#define CFG_BLOCK_ACK_AUTO_SETUP_MAX ( 1 )
355#define CFG_BLOCK_ACK_AUTO_SETUP_DEFAULT ( 1 )
356
357#define CFG_SCAN_RESULT_AGE_COUNT_NAME "gScanResultAgeCount"
358#define CFG_SCAN_RESULT_AGE_COUNT_MIN ( 1 )
359#define CFG_SCAN_RESULT_AGE_COUNT_MAX ( 100 )
360#define CFG_SCAN_RESULT_AGE_COUNT_DEFAULT ( 3 )
361
362//All in seconds
363//Not Connect, No Power Save
364#define CFG_SCAN_RESULT_AGE_TIME_NCNPS_NAME "gScanResultAgeNCNPS"
365#define CFG_SCAN_RESULT_AGE_TIME_NCNPS_MIN ( 10 )
366#define CFG_SCAN_RESULT_AGE_TIME_NCNPS_MAX ( 10000 )
367#define CFG_SCAN_RESULT_AGE_TIME_NCNPS_DEFAULT ( 50 )
368//Not Connect, Power Save
369#define CFG_SCAN_RESULT_AGE_TIME_NCPS_NAME "gScanResultAgeNCPS"
370#define CFG_SCAN_RESULT_AGE_TIME_NCPS_MIN ( 10 )
371#define CFG_SCAN_RESULT_AGE_TIME_NCPS_MAX ( 10000 )
372#define CFG_SCAN_RESULT_AGE_TIME_NCPS_DEFAULT ( 300 )
373//Connect, No Power Save
374#define CFG_SCAN_RESULT_AGE_TIME_CNPS_NAME "gScanResultAgeCNPS"
375#define CFG_SCAN_RESULT_AGE_TIME_CNPS_MIN ( 10 )
376#define CFG_SCAN_RESULT_AGE_TIME_CNPS_MAX ( 10000 )
377#define CFG_SCAN_RESULT_AGE_TIME_CNPS_DEFAULT ( 150 )
378//Connect, Power Save
379#define CFG_SCAN_RESULT_AGE_TIME_CPS_NAME "gScanResultAgeCPS"
380#define CFG_SCAN_RESULT_AGE_TIME_CPS_MIN ( 10 )
381#define CFG_SCAN_RESULT_AGE_TIME_CPS_MAX ( 10000 )
382#define CFG_SCAN_RESULT_AGE_TIME_CPS_DEFAULT ( 600 )
383
384#define CFG_RSSI_CATEGORY_GAP_NAME "gRssiCatGap"
Madan Mohan Koyyalamudi4c8c6352012-10-15 16:40:16 -0700385#define CFG_RSSI_CATEGORY_GAP_MIN ( 5 )
Jeff Johnson295189b2012-06-20 16:38:30 -0700386#define CFG_RSSI_CATEGORY_GAP_MAX ( 100 )
Srinivas Girigowdade697412013-02-14 16:31:48 -0800387#define CFG_RSSI_CATEGORY_GAP_DEFAULT ( 5 )
Jeff Johnson295189b2012-06-20 16:38:30 -0700388
Varun Reddy Yeturu5d5e2c62014-02-27 13:31:29 -0800389#if defined (WLAN_FEATURE_VOWIFI_11R) || defined (FEATURE_WLAN_ESE) || defined(FEATURE_WLAN_LFR)
Madan Mohan Koyyalamudid5026072012-11-30 14:56:21 -0800390#define CFG_ROAM_PREFER_5GHZ "gRoamPrefer5GHz"
391#define CFG_ROAM_PREFER_5GHZ_MIN ( 0 )
392#define CFG_ROAM_PREFER_5GHZ_MAX ( 1 )
393#define CFG_ROAM_PREFER_5GHZ_DEFAULT ( 1 )
Srinivas Girigowdabbd16eb2013-03-21 12:34:46 -0700394
Srinivas Girigowdad42dfce2013-06-19 17:33:50 -0700395/*
396 To enable, set gRoamIntraBand=1 (Roaming within band)
397 To disable, set gRoamIntraBand=0 (Roaming across band)
398*/
Srinivas Girigowdabbd16eb2013-03-21 12:34:46 -0700399#define CFG_ROAM_INTRA_BAND "gRoamIntraBand"
400#define CFG_ROAM_INTRA_BAND_MIN ( 0 )
401#define CFG_ROAM_INTRA_BAND_MAX ( 1 )
402#define CFG_ROAM_INTRA_BAND_DEFAULT ( 0 )
Madan Mohan Koyyalamudid5026072012-11-30 14:56:21 -0800403#endif
404
Jeff Johnson295189b2012-06-20 16:38:30 -0700405#define CFG_SHORT_PREAMBLE_NAME "gShortPreamble"
406#define CFG_SHORT_PREAMBLE_MIN WNI_CFG_SHORT_PREAMBLE_STAMIN
407#define CFG_SHORT_PREAMBLE_MAX WNI_CFG_SHORT_PREAMBLE_STAMAX
408#define CFG_SHORT_PREAMBLE_DEFAULT WNI_CFG_SHORT_PREAMBLE_STADEF
409
410#define CFG_IBSS_AUTO_BSSID_NAME "gAutoIbssBssid"
411#define CFG_IBSS_AUTO_BSSID_MIN WNI_CFG_IBSS_AUTO_BSSID_STAMIN
412#define CFG_IBSS_AUTO_BSSID_MAX WNI_CFG_IBSS_AUTO_BSSID_STAMAX
413#define CFG_IBSS_AUTO_BSSID_DEFAULT WNI_CFG_IBSS_AUTO_BSSID_STADEF
414
415#define CFG_IBSS_BSSID_NAME "gIbssBssid"
416#define CFG_IBSS_BSSID_MIN "000000000000"
417#define CFG_IBSS_BSSID_MAX "ffffffffffff"
418#define CFG_IBSS_BSSID_DEFAULT "000AF5040506"
419
420#define CFG_INTF0_MAC_ADDR_NAME "Intf0MacAddress"
421#define CFG_INTF0_MAC_ADDR_MIN "000000000000"
422#define CFG_INTF0_MAC_ADDR_MAX "ffffffffffff"
423#define CFG_INTF0_MAC_ADDR_DEFAULT "000AF5898980"
424
425#define CFG_INTF1_MAC_ADDR_NAME "Intf1MacAddress"
426#define CFG_INTF1_MAC_ADDR_MIN "000000000000"
427#define CFG_INTF1_MAC_ADDR_MAX "ffffffffffff"
428#define CFG_INTF1_MAC_ADDR_DEFAULT "000AF5898981"
429
430#define CFG_INTF2_MAC_ADDR_NAME "Intf2MacAddress"
431#define CFG_INTF2_MAC_ADDR_MIN "000000000000"
432#define CFG_INTF2_MAC_ADDR_MAX "ffffffffffff"
433#define CFG_INTF2_MAC_ADDR_DEFAULT "000AF5898982"
434
435#define CFG_INTF3_MAC_ADDR_NAME "Intf3MacAddress"
436#define CFG_INTF3_MAC_ADDR_MIN "000000000000"
437#define CFG_INTF3_MAC_ADDR_MAX "ffffffffffff"
438#define CFG_INTF3_MAC_ADDR_DEFAULT "000AF5898983"
439
Jeff Johnson295189b2012-06-20 16:38:30 -0700440#define CFG_AP_QOS_UAPSD_MODE_NAME "gEnableApUapsd" // ACs to setup U-APSD for at assoc
441#define CFG_AP_QOS_UAPSD_MODE_MIN ( 0 )
442#define CFG_AP_QOS_UAPSD_MODE_MAX ( 1 )
443#define CFG_AP_QOS_UAPSD_MODE_DEFAULT ( 1 )
444
445#define CFG_AP_COUNTRY_CODE "gAPCntryCode"
446#define CFG_AP_COUNTRY_CODE_MIN "USI"
447#define CFG_AP_COUNTRY_CODE_MAX "USI"
448#define CFG_AP_COUNTRY_CODE_DEFAULT "FFF"
449
Madan Mohan Koyyalamudi3ff2a0b2012-10-15 14:33:46 -0700450#define CFG_AP_ENABLE_RANDOM_BSSID_NAME "gEnableApRandomBssid"
451#define CFG_AP_ENABLE_RANDOM_BSSID_MIN ( 0 )
452#define CFG_AP_ENABLE_RANDOM_BSSID_MAX ( 1 )
453#define CFG_AP_ENABLE_RANDOM_BSSID_DEFAULT ( 0 )
454
Jeff Johnson295189b2012-06-20 16:38:30 -0700455#define CFG_AP_ENABLE_PROTECTION_MODE_NAME "gEnableApProt"
456#define CFG_AP_ENABLE_PROTECTION_MODE_MIN ( 0 )
457#define CFG_AP_ENABLE_PROTECTION_MODE_MAX ( 1 )
458#define CFG_AP_ENABLE_PROTECTION_MODE_DEFAULT ( 1 )
459
460// Bit map for CFG_AP_PROTECTION_MODE_DEFAULT
461// LOWER byte for associated stations
462// UPPER byte for overlapping stations
463// each byte will have the following info
464// bit15 bit14 bit13 bit12 bit11 bit10 bit9 bit8
465// OBSS RIFS LSIG_TXOP NON_GF HT20 FROM_11G FROM_11B FROM_11A
466// bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0
467// OBSS RIFS LSIG_TXOP NON_GF HT_20 FROM_11G FROM_11B FROM_11A
468#define CFG_AP_PROTECTION_MODE_NAME "gApProtection"
469#define CFG_AP_PROTECTION_MODE_MIN ( 0x0 )
470#define CFG_AP_PROTECTION_MODE_MAX ( 0xFFFF )
471#define CFG_AP_PROTECTION_MODE_DEFAULT ( 0xBFFF )
472
473#define CFG_AP_OBSS_PROTECTION_MODE_NAME "gEnableApOBSSProt"
474#define CFG_AP_OBSS_PROTECTION_MODE_MIN ( 0 )
475#define CFG_AP_OBSS_PROTECTION_MODE_MAX ( 1 )
476#define CFG_AP_OBSS_PROTECTION_MODE_DEFAULT ( 0 )
477
478#define CFG_AP_STA_SECURITY_SEPERATION_NAME "gDisableIntraBssFwd"
479#define CFG_AP_STA_SECURITY_SEPERATION_MIN ( 0 )
480#define CFG_AP_STA_SECURITY_SEPERATION_MAX ( 1 )
481#define CFG_AP_STA_SECURITY_SEPERATION_DEFAULT ( 0 )
482
483#define CFG_AP_LISTEN_MODE_NAME "gEnablePhyAgcListenMode"
484#define CFG_AP_LISTEN_MODE_MIN (0)
485#define CFG_AP_LISTEN_MODE_MAX (128)
486#define CFG_AP_LISTEN_MODE_DEFAULT (128)
487
488#define CFG_AP_AUTO_SHUT_OFF "gAPAutoShutOff"
489#define CFG_AP_AUTO_SHUT_OFF_MIN ( 0 )
490#define CFG_AP_AUTO_SHUT_OFF_MAX ( 4294967295UL )
491#define CFG_AP_AUTO_SHUT_OFF_DEFAULT ( 0 )
492
493#define CFG_FRAMES_PROCESSING_TH_MODE_NAME "gMinFramesProcThres"
494#define CFG_FRAMES_PROCESSING_TH_MIN ( 0 )
495#define CFG_FRAMES_PROCESSING_TH_MAX ( 39 )
496#define CFG_FRAMES_PROCESSING_TH_DEFAULT ( 0 )
497
498#define CFG_SAP_CHANNEL_SELECT_START_CHANNEL "gAPChannelSelectStartChannel"
499#define CFG_SAP_CHANNEL_SELECT_START_CHANNEL_MIN (0)
500#define CFG_SAP_CHANNEL_SELECT_START_CHANNEL_MAX (0xFF)
501#define CFG_SAP_CHANNEL_SELECT_START_CHANNEL_DEFAULT (0)
502
503#define CFG_SAP_CHANNEL_SELECT_END_CHANNEL "gAPChannelSelectEndChannel"
504#define CFG_SAP_CHANNEL_SELECT_END_CHANNEL_MIN (0)
505#define CFG_SAP_CHANNEL_SELECT_END_CHANNEL_MAX (0xFF)
506#define CFG_SAP_CHANNEL_SELECT_END_CHANNEL_DEFAULT (11)
507
508#define CFG_SAP_CHANNEL_SELECT_OPERATING_BAND "gAPChannelSelectOperatingBand"
509#define CFG_SAP_CHANNEL_SELECT_OPERATING_BAND_MIN (0)
Leela Venkata Kiran Kumar Reddy Chirala9f6566c2014-09-05 19:06:58 +0530510#define CFG_SAP_CHANNEL_SELECT_OPERATING_BAND_MAX (0x5)
Jeff Johnson295189b2012-06-20 16:38:30 -0700511#define CFG_SAP_CHANNEL_SELECT_OPERATING_BAND_DEFAULT (0)
512
513#define CFG_DISABLE_PACKET_FILTER "gDisablePacketFilter"
514#define CFG_DISABLE_PACKET_FILTER_MIN (0)
515#define CFG_DISABLE_PACKET_FILTER_MAX (0x1)
516#define CFG_DISABLE_PACKET_FILTER_DEFAULT (0)
517
518#define CFG_ENABLE_LTE_COEX "gEnableLTECoex"
519#define CFG_ENABLE_LTE_COEX_MIN ( 0 )
520#define CFG_ENABLE_LTE_COEX_MAX ( 1 )
521#define CFG_ENABLE_LTE_COEX_DEFAULT ( 0 )
522
523#define CFG_AP_KEEP_ALIVE_PERIOD_NAME "gApKeepAlivePeriod"
Madan Mohan Koyyalamudi2558bc92013-08-24 16:54:31 +0530524#define CFG_AP_KEEP_ALIVE_PERIOD_MIN ( 3 )
Sushant Kaushik3b5480b2015-02-18 12:48:09 +0530525#define CFG_AP_KEEP_ALIVE_PERIOD_MAX ( 255 )
Madan Mohan Koyyalamudi2558bc92013-08-24 16:54:31 +0530526#define CFG_AP_KEEP_ALIVE_PERIOD_DEFAULT ( 5 )
Jeff Johnson295189b2012-06-20 16:38:30 -0700527
528#define CFG_GO_KEEP_ALIVE_PERIOD_NAME "gGoKeepAlivePeriod"
Madan Mohan Koyyalamudi2558bc92013-08-24 16:54:31 +0530529#define CFG_GO_KEEP_ALIVE_PERIOD_MIN ( 3 )
530#define CFG_GO_KEEP_ALIVE_PERIOD_MAX ( 20 )
531#define CFG_GO_KEEP_ALIVE_PERIOD_DEFAULT ( 5 )
Jeff Johnson295189b2012-06-20 16:38:30 -0700532
Sejal Chauhanbcde8bc2013-03-04 18:06:36 +0530533#define CFG_AP_LINK_MONITOR_PERIOD_NAME "gApLinkMonitorPeriod"
Madan Mohan Koyyalamudi2558bc92013-08-24 16:54:31 +0530534#define CFG_AP_LINK_MONITOR_PERIOD_MIN ( 3 )
535#define CFG_AP_LINK_MONITOR_PERIOD_MAX ( 50 )
536#define CFG_AP_LINK_MONITOR_PERIOD_DEFAULT ( 10 )
537
538/* gGoLinkMonitorPeriod is period where link is idle and where
539 * we send NULL frame
540 */
541#define CFG_GO_LINK_MONITOR_PERIOD_NAME "gGoLinkMonitorPeriod"
542#define CFG_GO_LINK_MONITOR_PERIOD_MIN ( 3 )
543#define CFG_GO_LINK_MONITOR_PERIOD_MAX ( 50 )
544#define CFG_GO_LINK_MONITOR_PERIOD_DEFAULT ( 10 )
545
Jeff Johnson295189b2012-06-20 16:38:30 -0700546
547#define CFG_BEACON_INTERVAL_NAME "gBeaconInterval"
548#define CFG_BEACON_INTERVAL_MIN WNI_CFG_BEACON_INTERVAL_STAMIN
549#define CFG_BEACON_INTERVAL_MAX WNI_CFG_BEACON_INTERVAL_STAMAX
550#define CFG_BEACON_INTERVAL_DEFAULT WNI_CFG_BEACON_INTERVAL_STADEF
551
Jeff Johnson295189b2012-06-20 16:38:30 -0700552//Additional Handoff related Parameters
553#define CFG_ENABLE_IDLE_SCAN_NAME "gEnableIdleScan"
554#define CFG_ENABLE_IDLE_SCAN_MIN ( 0 )
555#define CFG_ENABLE_IDLE_SCAN_MAX ( 1 )
556#define CFG_ENABLE_IDLE_SCAN_DEFAULT ( 1 )
557
558#define CFG_ROAMING_TIME_NAME "gRoamingTime"
559#define CFG_ROAMING_TIME_MIN ( 0 )
560#define CFG_ROAMING_TIME_MAX ( 4294967UL )
561#define CFG_ROAMING_TIME_DEFAULT ( 10 )
562
563#define CFG_VCC_RSSI_TRIGGER_NAME "gVccRssiTrigger"
564#define CFG_VCC_RSSI_TRIGGER_MIN ( 0 )
565#define CFG_VCC_RSSI_TRIGGER_MAX ( 80 )
566#define CFG_VCC_RSSI_TRIGGER_DEFAULT ( 80 )
567
568#define CFG_VCC_UL_MAC_LOSS_THRESH_NAME "gVccUlMacLossThresh"
569#define CFG_VCC_UL_MAC_LOSS_THRESH_MIN ( 0 )
570#define CFG_VCC_UL_MAC_LOSS_THRESH_MAX ( 9 )
571#define CFG_VCC_UL_MAC_LOSS_THRESH_DEFAULT ( 9 )
572
573#define CFG_PASSIVE_MAX_CHANNEL_TIME_NAME "gPassiveMaxChannelTime"
574#define CFG_PASSIVE_MAX_CHANNEL_TIME_MIN ( 0 )
575#define CFG_PASSIVE_MAX_CHANNEL_TIME_MAX ( 10000 )
576#define CFG_PASSIVE_MAX_CHANNEL_TIME_DEFAULT ( 110 )
577
578#define CFG_PASSIVE_MIN_CHANNEL_TIME_NAME "gPassiveMinChannelTime"
579#define CFG_PASSIVE_MIN_CHANNEL_TIME_MIN ( 0 )
580#define CFG_PASSIVE_MIN_CHANNEL_TIME_MAX ( 10000 )
581#define CFG_PASSIVE_MIN_CHANNEL_TIME_DEFAULT ( 60 )
582
583#define CFG_ACTIVE_MAX_CHANNEL_TIME_NAME "gActiveMaxChannelTime"
584#define CFG_ACTIVE_MAX_CHANNEL_TIME_MIN ( 0 )
585#define CFG_ACTIVE_MAX_CHANNEL_TIME_MAX ( 10000 )
586#define CFG_ACTIVE_MAX_CHANNEL_TIME_DEFAULT ( 40 )
587
588#define CFG_ACTIVE_MIN_CHANNEL_TIME_NAME "gActiveMinChannelTime"
589#define CFG_ACTIVE_MIN_CHANNEL_TIME_MIN ( 0 )
590#define CFG_ACTIVE_MIN_CHANNEL_TIME_MAX ( 10000 )
591#define CFG_ACTIVE_MIN_CHANNEL_TIME_DEFAULT ( 20 )
592
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800593#define CFG_ACTIVE_MAX_CHANNEL_TIME_BTC_NAME "gActiveMaxChannelTimeBtc"
594#define CFG_ACTIVE_MAX_CHANNEL_TIME_BTC_MIN ( 0 )
595#define CFG_ACTIVE_MAX_CHANNEL_TIME_BTC_MAX ( 10000 )
596#define CFG_ACTIVE_MAX_CHANNEL_TIME_BTC_DEFAULT ( 120 )
597
598#define CFG_ACTIVE_MIN_CHANNEL_TIME_BTC_NAME "gActiveMinChannelTimeBtc"
599#define CFG_ACTIVE_MIN_CHANNEL_TIME_BTC_MIN ( 0 )
600#define CFG_ACTIVE_MIN_CHANNEL_TIME_BTC_MAX ( 10000 )
601#define CFG_ACTIVE_MIN_CHANNEL_TIME_BTC_DEFAULT ( 60 )
602
Kiran Kumar Lokere1f39e952013-04-03 18:34:30 -0700603#define CFG_RETRY_LIMIT_ZERO_NAME "gRetryLimitZero"
604#define CFG_RETRY_LIMIT_ZERO_MIN ( 0 )
605#define CFG_RETRY_LIMIT_ZERO_MAX ( 15 )
606#define CFG_RETRY_LIMIT_ZERO_DEFAULT ( 5 )
607
608#define CFG_RETRY_LIMIT_ONE_NAME "gRetryLimitOne"
609#define CFG_RETRY_LIMIT_ONE_MIN ( 0 )
610#define CFG_RETRY_LIMIT_ONE_MAX ( 15 )
611#define CFG_RETRY_LIMIT_ONE_DEFAULT ( 10 )
612
613#define CFG_RETRY_LIMIT_TWO_NAME "gRetryLimitTwo"
614#define CFG_RETRY_LIMIT_TWO_MIN ( 0 )
615#define CFG_RETRY_LIMIT_TWO_MAX ( 15 )
616#define CFG_RETRY_LIMIT_TWO_DEFAULT ( 15 )
617
Kiran Kumar Lokere458d7322013-05-29 14:29:43 -0700618#define CFG_DISABLE_AGG_WITH_BTC_NAME "gDisableAggWithBTC"
619#define CFG_DISABLE_AGG_WITH_BTC_MIN ( 0 )
620#define CFG_DISABLE_AGG_WITH_BTC_MAX ( 1 )
621#define CFG_DISABLE_AGG_WITH_BTC_DEFAULT ( 1 )
622
Madan Mohan Koyyalamudi4ff9cd62012-10-30 17:48:57 -0700623#ifdef WLAN_AP_STA_CONCURRENCY
624
625#define CFG_PASSIVE_MAX_CHANNEL_TIME_CONC_NAME "gPassiveMaxChannelTimeConc"
626#define CFG_PASSIVE_MAX_CHANNEL_TIME_CONC_MIN ( 0 )
627#define CFG_PASSIVE_MAX_CHANNEL_TIME_CONC_MAX ( 10000 )
628#define CFG_PASSIVE_MAX_CHANNEL_TIME_CONC_DEFAULT ( 110 )
629
630#define CFG_PASSIVE_MIN_CHANNEL_TIME_CONC_NAME "gPassiveMinChannelTimeConc"
631#define CFG_PASSIVE_MIN_CHANNEL_TIME_CONC_MIN ( 0 )
632#define CFG_PASSIVE_MIN_CHANNEL_TIME_CONC_MAX ( 10000 )
633#define CFG_PASSIVE_MIN_CHANNEL_TIME_CONC_DEFAULT ( 60 )
634
635#define CFG_ACTIVE_MAX_CHANNEL_TIME_CONC_NAME "gActiveMaxChannelTimeConc"
636#define CFG_ACTIVE_MAX_CHANNEL_TIME_CONC_MIN ( 0 )
637#define CFG_ACTIVE_MAX_CHANNEL_TIME_CONC_MAX ( 10000 )
Viral Modi0e06f192013-03-05 19:05:04 -0800638#define CFG_ACTIVE_MAX_CHANNEL_TIME_CONC_DEFAULT ( 40 )
Madan Mohan Koyyalamudi4ff9cd62012-10-30 17:48:57 -0700639
640#define CFG_ACTIVE_MIN_CHANNEL_TIME_CONC_NAME "gActiveMinChannelTimeConc"
641#define CFG_ACTIVE_MIN_CHANNEL_TIME_CONC_MIN ( 0 )
642#define CFG_ACTIVE_MIN_CHANNEL_TIME_CONC_MAX ( 10000 )
643#define CFG_ACTIVE_MIN_CHANNEL_TIME_CONC_DEFAULT ( 20 )
644
645#define CFG_REST_TIME_CONC_NAME "gRestTimeConc"
646#define CFG_REST_TIME_CONC_MIN ( 0 )
647#define CFG_REST_TIME_CONC_MAX ( 10000 )
Madan Mohan Koyyalamudi4805fa82012-11-09 17:53:39 -0800648#define CFG_REST_TIME_CONC_DEFAULT ( 100 )
Madan Mohan Koyyalamudi4ff9cd62012-10-30 17:48:57 -0700649
Sudhir Sattayappa Kohallieb97d502013-05-22 23:16:42 -0700650#define CFG_NUM_STA_CHAN_COMBINED_CONC_NAME "gNumStaChanCombinedConc"
651#define CFG_NUM_STA_CHAN_COMBINED_CONC_MIN ( 1 )
652#define CFG_NUM_STA_CHAN_COMBINED_CONC_MAX ( 255 )
653#define CFG_NUM_STA_CHAN_COMBINED_CONC_DEFAULT ( 3 )
654
655#define CFG_NUM_P2P_CHAN_COMBINED_CONC_NAME "gNumP2PChanCombinedConc"
656#define CFG_NUM_P2P_CHAN_COMBINED_CONC_MIN ( 1 )
657#define CFG_NUM_P2P_CHAN_COMBINED_CONC_MAX ( 255 )
658#define CFG_NUM_P2P_CHAN_COMBINED_CONC_DEFAULT ( 1 )
Vinay Malekal05fdc812012-12-17 13:04:30 -0800659
Madan Mohan Koyyalamudi4ff9cd62012-10-30 17:48:57 -0700660#endif
661
Jeff Johnson295189b2012-06-20 16:38:30 -0700662#define CFG_MAX_PS_POLL_NAME "gMaxPsPoll"
663#define CFG_MAX_PS_POLL_MIN WNI_CFG_MAX_PS_POLL_STAMIN
664#define CFG_MAX_PS_POLL_MAX WNI_CFG_MAX_PS_POLL_STAMAX
665#define CFG_MAX_PS_POLL_DEFAULT WNI_CFG_MAX_PS_POLL_STADEF
666
667#define CFG_MAX_TX_POWER_NAME "gTxPowerCap"
668#define CFG_MAX_TX_POWER_MIN WNI_CFG_CURRENT_TX_POWER_LEVEL_STAMIN
669#define CFG_MAX_TX_POWER_MAX WNI_CFG_CURRENT_TX_POWER_LEVEL_STAMAX
670//Not to use CFG default because if no registry setting, this is ignored by SME.
671#define CFG_MAX_TX_POWER_DEFAULT WNI_CFG_CURRENT_TX_POWER_LEVEL_STAMAX
672
673
674#define CFG_LOW_GAIN_OVERRIDE_NAME "gLowGainOverride"
675#define CFG_LOW_GAIN_OVERRIDE_MIN WNI_CFG_LOW_GAIN_OVERRIDE_STAMIN
676#define CFG_LOW_GAIN_OVERRIDE_MAX WNI_CFG_LOW_GAIN_OVERRIDE_STAMAX
677#define CFG_LOW_GAIN_OVERRIDE_DEFAULT WNI_CFG_LOW_GAIN_OVERRIDE_STADEF
678
679#define CFG_RSSI_FILTER_PERIOD_NAME "gRssiFilterPeriod"
680#define CFG_RSSI_FILTER_PERIOD_MIN WNI_CFG_RSSI_FILTER_PERIOD_STAMIN
681#define CFG_RSSI_FILTER_PERIOD_MAX WNI_CFG_RSSI_FILTER_PERIOD_STAMAX
Varun Reddy Yeturu5d5e2c62014-02-27 13:31:29 -0800682// Increased this value for Non-ESE AP. This is cause FW RSSI Monitoring
Jeff Johnson295189b2012-06-20 16:38:30 -0700683// the consumer of this value is ON by default. So to impact power numbers
684// we are setting this to a high value.
685#define CFG_RSSI_FILTER_PERIOD_DEFAULT WNI_CFG_RSSI_FILTER_PERIOD_STADEF
686
687#define CFG_IGNORE_DTIM_NAME "gIgnoreDtim"
688#define CFG_IGNORE_DTIM_MIN WNI_CFG_IGNORE_DTIM_STAMIN
689#define CFG_IGNORE_DTIM_MAX WNI_CFG_IGNORE_DTIM_STAMAX
690#define CFG_IGNORE_DTIM_DEFAULT WNI_CFG_IGNORE_DTIM_STADEF
691
Yue Mac24062f2013-05-13 17:01:29 -0700692#define CFG_MAX_LI_MODULATED_DTIM_NAME "gMaxLIModulatedDTIM"
693#define CFG_MAX_LI_MODULATED_DTIM_MIN ( 1 )
694#define CFG_MAX_LI_MODULATED_DTIM_MAX ( 10 )
695#define CFG_MAX_LI_MODULATED_DTIM_DEFAULT ( 10 )
696
Jeff Johnson295189b2012-06-20 16:38:30 -0700697#define CFG_RX_ANT_CONFIGURATION_NAME "gNumRxAnt"
698#define CFG_RX_ANT_CONFIGURATION_NAME_MIN ( 1 )
699#define CFG_RX_ANT_CONFIGURATION_NAME_MAX ( 2 )
700#define CFG_RX_ANT_CONFIGURATION_NAME_DEFAULT ( 2 )
701
702#define CFG_FW_HEART_BEAT_MONITORING_NAME "gEnableFWHeartBeatMonitoring"
703#define CFG_FW_HEART_BEAT_MONITORING_MIN ( 0 )
704#define CFG_FW_HEART_BEAT_MONITORING_MAX ( 1 )
705#define CFG_FW_HEART_BEAT_MONITORING_DEFAULT ( 1 )
706
707#define CFG_FW_BEACON_FILTERING_NAME "gEnableFWBeaconFiltering"
708#define CFG_FW_BEACON_FILTERING_MIN ( 0 )
709#define CFG_FW_BEACON_FILTERING_MAX ( 1 )
710#define CFG_FW_BEACON_FILTERING_DEFAULT ( 1 )
711
712#define CFG_FW_RSSI_MONITORING_NAME "gEnableFWRssiMonitoring"
713#define CFG_FW_RSSI_MONITORING_MIN ( 0 )
714#define CFG_FW_RSSI_MONITORING_MAX ( 1 )
Srinivas Girigowdaba173692013-08-07 11:55:38 -0700715#define CFG_FW_RSSI_MONITORING_DEFAULT ( 1 )
Jeff Johnson295189b2012-06-20 16:38:30 -0700716
717#define CFG_DATA_INACTIVITY_TIMEOUT_NAME "gDataInactivityTimeout"
718#define CFG_DATA_INACTIVITY_TIMEOUT_MIN ( 1 )
719#define CFG_DATA_INACTIVITY_TIMEOUT_MAX ( 255 )
720#define CFG_DATA_INACTIVITY_TIMEOUT_DEFAULT ( 20 )
721
722#define CFG_NTH_BEACON_FILTER_NAME "gNthBeaconFilter"
723#define CFG_NTH_BEACON_FILTER_MIN ( WNI_CFG_NTH_BEACON_FILTER_STAMIN )
724#define CFG_NTH_BEACON_FILTER_MAX ( WNI_CFG_NTH_BEACON_FILTER_STAMAX )
725#define CFG_NTH_BEACON_FILTER_DEFAULT ( WNI_CFG_NTH_BEACON_FILTER_STADEF )
726
727#define CFG_RF_SETTLING_TIME_CLK_NAME "rfSettlingTimeUs"
728#define CFG_RF_SETTLING_TIME_CLK_MIN ( 0 )
729#define CFG_RF_SETTLING_TIME_CLK_MAX ( 60000 )
730#define CFG_RF_SETTLING_TIME_CLK_DEFAULT ( 1500 )
731
732#define CFG_INFRA_STA_KEEP_ALIVE_PERIOD_NAME "gStaKeepAlivePeriod"
733#define CFG_INFRA_STA_KEEP_ALIVE_PERIOD_MIN ( 0 )
734#define CFG_INFRA_STA_KEEP_ALIVE_PERIOD_MAX ( 65535)
735#define CFG_INFRA_STA_KEEP_ALIVE_PERIOD_DEFAULT ( 0 )
736
737//WMM configuration
738#define CFG_QOS_WMM_MODE_NAME "WmmIsEnabled"
739#define CFG_QOS_WMM_MODE_MIN (0)
740#define CFG_QOS_WMM_MODE_MAX (2) //HDD_WMM_NO_QOS
741#define CFG_QOS_WMM_MODE_DEFAULT (0) //HDD_WMM_AUTO
742
743#define CFG_QOS_WMM_80211E_ENABLED_NAME "80211eIsEnabled"
744#define CFG_QOS_WMM_80211E_ENABLED_MIN (0)
745#define CFG_QOS_WMM_80211E_ENABLED_MAX (1)
746#define CFG_QOS_WMM_80211E_ENABLED_DEFAULT (0)
747
748#define CFG_QOS_WMM_UAPSD_MASK_NAME "UapsdMask" // ACs to setup U-APSD for at assoc
749#define CFG_QOS_WMM_UAPSD_MASK_MIN (0x00)
750#define CFG_QOS_WMM_UAPSD_MASK_MAX (0xFF)
Mihir Shete9c238772014-10-15 14:35:16 +0530751#define CFG_QOS_WMM_UAPSD_MASK_DEFAULT (0xaa)
Kanchanapally, Vidyullatha23cea3c2014-11-04 13:05:20 +0530752#define CFG_QOS_WMM_UAPSD_MASK_DYMANIC_WMM_PS_DEFAULT (0x0)
Mihir Shete9c238772014-10-15 14:35:16 +0530753#define CFG_QOS_WMM_UAPSD_MASK_LEGACY_WMM_PS_DEFAULT (0x0)
Jeff Johnson295189b2012-06-20 16:38:30 -0700754
Jeff Johnson295189b2012-06-20 16:38:30 -0700755#define CFG_QOS_WMM_INFRA_UAPSD_VO_SRV_INTV_NAME "InfraUapsdVoSrvIntv"
756#define CFG_QOS_WMM_INFRA_UAPSD_VO_SRV_INTV_MIN (0)
757#define CFG_QOS_WMM_INFRA_UAPSD_VO_SRV_INTV_MAX (4294967295UL )
758#define CFG_QOS_WMM_INFRA_UAPSD_VO_SRV_INTV_DEFAULT (20)
759
760#define CFG_QOS_WMM_INFRA_UAPSD_VO_SUS_INTV_NAME "InfraUapsdVoSuspIntv"
761#define CFG_QOS_WMM_INFRA_UAPSD_VO_SUS_INTV_MIN (0)
762#define CFG_QOS_WMM_INFRA_UAPSD_VO_SUS_INTV_MAX (4294967295UL )
763#define CFG_QOS_WMM_INFRA_UAPSD_VO_SUS_INTV_DEFAULT (2000)
764
765#define CFG_QOS_WMM_INFRA_UAPSD_VI_SRV_INTV_NAME "InfraUapsdViSrvIntv"
766#define CFG_QOS_WMM_INFRA_UAPSD_VI_SRV_INTV_MIN (0)
767#define CFG_QOS_WMM_INFRA_UAPSD_VI_SRV_INTV_MAX (4294967295UL)
768#define CFG_QOS_WMM_INFRA_UAPSD_VI_SRV_INTV_DEFAULT (300)
769
770#define CFG_QOS_WMM_INFRA_UAPSD_VI_SUS_INTV_NAME "InfraUapsdViSuspIntv"
771#define CFG_QOS_WMM_INFRA_UAPSD_VI_SUS_INTV_MIN (0)
772#define CFG_QOS_WMM_INFRA_UAPSD_VI_SUS_INTV_MAX (4294967295UL)
773#define CFG_QOS_WMM_INFRA_UAPSD_VI_SUS_INTV_DEFAULT (2000)
774
775#define CFG_QOS_WMM_INFRA_UAPSD_BE_SRV_INTV_NAME "InfraUapsdBeSrvIntv"
776#define CFG_QOS_WMM_INFRA_UAPSD_BE_SRV_INTV_MIN (0)
777#define CFG_QOS_WMM_INFRA_UAPSD_BE_SRV_INTV_MAX (4294967295UL)
778#define CFG_QOS_WMM_INFRA_UAPSD_BE_SRV_INTV_DEFAULT (300)
779
780#define CFG_QOS_WMM_INFRA_UAPSD_BE_SUS_INTV_NAME "InfraUapsdBeSuspIntv"
781#define CFG_QOS_WMM_INFRA_UAPSD_BE_SUS_INTV_MIN (0)
782#define CFG_QOS_WMM_INFRA_UAPSD_BE_SUS_INTV_MAX (4294967295UL)
783#define CFG_QOS_WMM_INFRA_UAPSD_BE_SUS_INTV_DEFAULT (2000)
784
785#define CFG_QOS_WMM_INFRA_UAPSD_BK_SRV_INTV_NAME "InfraUapsdBkSrvIntv"
786#define CFG_QOS_WMM_INFRA_UAPSD_BK_SRV_INTV_MIN (0)
787#define CFG_QOS_WMM_INFRA_UAPSD_BK_SRV_INTV_MAX (4294967295UL)
788#define CFG_QOS_WMM_INFRA_UAPSD_BK_SRV_INTV_DEFAULT (300)
789
790#define CFG_QOS_WMM_INFRA_UAPSD_BK_SUS_INTV_NAME "InfraUapsdBkSuspIntv"
791#define CFG_QOS_WMM_INFRA_UAPSD_BK_SUS_INTV_MIN (0)
792#define CFG_QOS_WMM_INFRA_UAPSD_BK_SUS_INTV_MAX (4294967295UL)
793#define CFG_QOS_WMM_INFRA_UAPSD_BK_SUS_INTV_DEFAULT (2000)
794
Varun Reddy Yeturu5d5e2c62014-02-27 13:31:29 -0800795#ifdef FEATURE_WLAN_ESE
Jeff Johnson295189b2012-06-20 16:38:30 -0700796#define CFG_QOS_WMM_INFRA_INACTIVITY_INTERVAL_NAME "InfraInactivityInterval"
797#define CFG_QOS_WMM_INFRA_INACTIVITY_INTERVAL_MIN (0)
798#define CFG_QOS_WMM_INFRA_INACTIVITY_INTERVAL_MAX (4294967295UL)
799#define CFG_QOS_WMM_INFRA_INACTIVITY_INTERVAL_DEFAULT (0) //disabled
800
Varun Reddy Yeturu5d5e2c62014-02-27 13:31:29 -0800801#define CFG_ESE_FEATURE_ENABLED_NAME "EseEnabled"
802#define CFG_ESE_FEATURE_ENABLED_MIN (0)
803#define CFG_ESE_FEATURE_ENABLED_MAX (1)
804#define CFG_ESE_FEATURE_ENABLED_DEFAULT (0) //disabled
805#endif // FEATURE_WLAN_ESE
Jeff Johnson295189b2012-06-20 16:38:30 -0700806
Jeff Johnson04dd8a82012-06-29 20:41:40 -0700807#ifdef FEATURE_WLAN_LFR
808#define CFG_LFR_FEATURE_ENABLED_NAME "FastRoamEnabled"
809#define CFG_LFR_FEATURE_ENABLED_MIN (0)
810#define CFG_LFR_FEATURE_ENABLED_MAX (1)
811#define CFG_LFR_FEATURE_ENABLED_DEFAULT (0) //disabled
Sameer Thalappil4ae66ec2013-11-05 14:17:35 -0800812
813#define CFG_LFR_MAWC_FEATURE_ENABLED_NAME "MAWCEnabled"
814#define CFG_LFR_MAWC_FEATURE_ENABLED_MIN (0)
815#define CFG_LFR_MAWC_FEATURE_ENABLED_MAX (1)
816#define CFG_LFR_MAWC_FEATURE_ENABLED_DEFAULT (0) /* disabled */
Jeff Johnson04dd8a82012-06-29 20:41:40 -0700817#endif // FEATURE_WLAN_LFR
818
Varun Reddy Yeturu5d5e2c62014-02-27 13:31:29 -0800819#if defined (WLAN_FEATURE_VOWIFI_11R) || defined (FEATURE_WLAN_ESE) || defined(FEATURE_WLAN_LFR)
820// This flag will control fasttransition in case of 11r and ESE.
Jeff Johnson295189b2012-06-20 16:38:30 -0700821// Basically with this the whole neighbor roam, pre-auth, reassoc
822// can be turned ON/OFF.
823// With this turned OFF 11r will completely not work.
824// For 11r this flag has to be ON.
Varun Reddy Yeturu5d5e2c62014-02-27 13:31:29 -0800825// For ESE fastroam will not work.
Jeff Johnson295189b2012-06-20 16:38:30 -0700826#define CFG_FAST_TRANSITION_ENABLED_NAME "FastTransitionEnabled"
827#define CFG_FAST_TRANSITION_ENABLED_NAME_MIN (0)
828#define CFG_FAST_TRANSITION_ENABLED_NAME_MAX (1)
Padma, Santhosh Kumar5a65a652014-05-30 13:10:53 +0530829#define CFG_FAST_TRANSITION_ENABLED_NAME_DEFAULT (1) //Enabled
Jeff Johnson43971f52012-07-17 12:26:56 -0700830
831/* This parameter is used to decide whether to Roam or not.
832 * AP1 is the currently associated AP and AP2 is chosen for roaming.
833 * The Roaming will happen only if AP2 has better Signal Quality and it has a RSSI better than AP1
834 * in terms of RoamRssiDiff,and RoamRssiDiff is the number of units (typically measured in dB) AP2
835 * is better than AP1.
836 * This check is not done if the value is Zero */
837#define CFG_ROAM_RSSI_DIFF_NAME "RoamRssiDiff"
838#define CFG_ROAM_RSSI_DIFF_MIN (0)
Srinivas Girigowdade697412013-02-14 16:31:48 -0800839#define CFG_ROAM_RSSI_DIFF_MAX (30)
Srinivas Girigowdad42dfce2013-06-19 17:33:50 -0700840#define CFG_ROAM_RSSI_DIFF_DEFAULT (5)
Madan Mohan Koyyalamudi62b55b02012-12-03 16:45:39 -0800841
842/*
843 * Following a scan and if potential roam candidate(s) are found,
844 * then determine whether to register for reassoc threshold or roam
845 * immediately based on this configuration parameter. If the RSSI
846 * of any available candidate is better than the currently associated
847 * AP by at least gImmediateRoamRssiDiff, then being to roam
848 * immediately.
Srinivas Girigowdad42dfce2013-06-19 17:33:50 -0700849 * NOTE: Value of 0 means that immediate roaming is enabled by default
Madan Mohan Koyyalamudi62b55b02012-12-03 16:45:39 -0800850 */
851#define CFG_IMMEDIATE_ROAM_RSSI_DIFF_NAME "gImmediateRoamRssiDiff"
852#define CFG_IMMEDIATE_ROAM_RSSI_DIFF_MIN (0)
853#define CFG_IMMEDIATE_ROAM_RSSI_DIFF_MAX (125)
Srinivas Girigowdad42dfce2013-06-19 17:33:50 -0700854#define CFG_IMMEDIATE_ROAM_RSSI_DIFF_DEFAULT (0)
Srinivas Girigowdabbd16eb2013-03-21 12:34:46 -0700855
Srinivas Girigowdaad34ca92013-10-22 10:54:29 -0700856/*This parameter is used to set Wireless Extended Security Mode.*/
857#define CFG_ENABLE_WES_MODE_NAME "gWESModeEnabled"
858#define CFG_ENABLE_WES_MODE_NAME_MIN (0)
859#define CFG_ENABLE_WES_MODE_NAME_MAX (1)
860#define CFG_ENABLE_WES_MODE_NAME_DEFAULT (0)
861
Varun Reddy Yeturu920df212013-05-22 08:07:23 -0700862#define CFG_ROAM_SCAN_N_PROBES "gRoamScanNProbes"
863#define CFG_ROAM_SCAN_N_PROBES_MIN (1)
864#define CFG_ROAM_SCAN_N_PROBES_MAX (10)
865#define CFG_ROAM_SCAN_N_PROBES_DEFAULT (2)
866
867#define CFG_ROAM_SCAN_HOME_AWAY_TIME "gRoamScanHomeAwayTime"
868#define CFG_ROAM_SCAN_HOME_AWAY_TIME_MIN (3)
869#define CFG_ROAM_SCAN_HOME_AWAY_TIME_MAX (300)
Srinivas Girigowda6cf0b822013-06-27 14:00:20 -0700870#define CFG_ROAM_SCAN_HOME_AWAY_TIME_DEFAULT (CFG_ROAM_SCAN_HOME_AWAY_TIME_MIN)
Varun Reddy Yeturu5d5e2c62014-02-27 13:31:29 -0800871#endif /* (WLAN_FEATURE_VOWIFI_11R) || defined (FEATURE_WLAN_ESE) || defined(FEATURE_WLAN_LFR) */
Jeff Johnson295189b2012-06-20 16:38:30 -0700872
Srinivas Girigowdabbd16eb2013-03-21 12:34:46 -0700873#ifdef FEATURE_WLAN_OKC
874#define CFG_OKC_FEATURE_ENABLED_NAME "OkcEnabled"
875#define CFG_OKC_FEATURE_ENABLED_MIN (0)
876#define CFG_OKC_FEATURE_ENABLED_MAX (1)
877#define CFG_OKC_FEATURE_ENABLED_DEFAULT (1)
878#endif
879
Varun Reddy Yeturud0a3f252013-04-15 21:58:13 -0700880#ifdef WLAN_FEATURE_ROAM_SCAN_OFFLOAD
881#define CFG_ROAM_SCAN_OFFLOAD_ENABLED "gRoamScanOffloadEnabled"
882#define CFG_ROAM_SCAN_OFFLOAD_ENABLED_MIN (0)
883#define CFG_ROAM_SCAN_OFFLOAD_ENABLED_MAX (1)
884#define CFG_ROAM_SCAN_OFFLOAD_ENABLED_DEFAULT (1)
885#endif
886
Jeff Johnson295189b2012-06-20 16:38:30 -0700887#define CFG_QOS_WMM_PKT_CLASSIFY_BASIS_NAME "PktClassificationBasis" // DSCP or 802.1Q
888#define CFG_QOS_WMM_PKT_CLASSIFY_BASIS_MIN (0)
889#define CFG_QOS_WMM_PKT_CLASSIFY_BASIS_MAX (1)
890#define CFG_QOS_WMM_PKT_CLASSIFY_BASIS_DEFAULT (0) //DSCP
891
892/* default TSPEC parameters for AC_VO */
893#define CFG_QOS_WMM_INFRA_DIR_AC_VO_NAME "InfraDirAcVo"
894#define CFG_QOS_WMM_INFRA_DIR_AC_VO_MIN (0)
895#define CFG_QOS_WMM_INFRA_DIR_AC_VO_MAX (3)
896#define CFG_QOS_WMM_INFRA_DIR_AC_VO_DEFAULT (3) //WLAN_QCT_CUST_WMM_TSDIR_BOTH
897
898#define CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_VO_NAME "InfraNomMsduSizeAcVo"
899#define CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_VO_MIN (0x0)
900#define CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_VO_MAX (0xFFFF)
901#define CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_VO_DEFAULT (0x80D0)
902
903#define CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_VO_NAME "InfraMeanDataRateAcVo"
904#define CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_VO_MIN (0x0)
905#define CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_VO_MAX (0xFFFFFFFF)
906#define CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_VO_DEFAULT (0x14500)
907
908#define CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_VO_NAME "InfraMinPhyRateAcVo"
909#define CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_VO_MIN (0x0)
910#define CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_VO_MAX (0xFFFFFFFF)
911#define CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_VO_DEFAULT (0x5B8D80)
912
913#define CFG_QOS_WMM_INFRA_SBA_AC_VO_NAME "InfraSbaAcVo"
914#define CFG_QOS_WMM_INFRA_SBA_AC_VO_MIN (0x2001)
915#define CFG_QOS_WMM_INFRA_SBA_AC_VO_MAX (0xFFFF)
916#define CFG_QOS_WMM_INFRA_SBA_AC_VO_DEFAULT (0x2001)
917
918/* default TSPEC parameters for AC_VI */
919#define CFG_QOS_WMM_INFRA_DIR_AC_VI_NAME "InfraDirAcVi"
920#define CFG_QOS_WMM_INFRA_DIR_AC_VI_MIN (0)
921#define CFG_QOS_WMM_INFRA_DIR_AC_VI_MAX (3)
922#define CFG_QOS_WMM_INFRA_DIR_AC_VI_DEFAULT (3) //WLAN_QCT_CUST_WMM_TSDIR_BOTH
923
924#define CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_VI_NAME "InfraNomMsduSizeAcVi"
925#define CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_VI_MIN (0x0)
926#define CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_VI_MAX (0xFFFF)
927#define CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_VI_DEFAULT (0x85DC)
928
929#define CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_VI_NAME "InfraMeanDataRateAcVi"
930#define CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_VI_MIN (0x0)
931#define CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_VI_MAX (0xFFFFFFFF)
932#define CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_VI_DEFAULT (0x57E40)
933
934#define CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_VI_NAME "InfraMinPhyRateAcVi"
935#define CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_VI_MIN (0x0)
936#define CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_VI_MAX (0xFFFFFFFF)
937#define CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_VI_DEFAULT (0x5B8D80)
938
939#define CFG_QOS_WMM_INFRA_SBA_AC_VI_NAME "InfraSbaAcVi"
940#define CFG_QOS_WMM_INFRA_SBA_AC_VI_MIN (0x2001)
941#define CFG_QOS_WMM_INFRA_SBA_AC_VI_MAX (0xFFFF)
942#define CFG_QOS_WMM_INFRA_SBA_AC_VI_DEFAULT (0x2001)
943
944/* default TSPEC parameters for AC_BE*/
945#define CFG_QOS_WMM_INFRA_DIR_AC_BE_NAME "InfraDirAcBe"
946#define CFG_QOS_WMM_INFRA_DIR_AC_BE_MIN (0)
947#define CFG_QOS_WMM_INFRA_DIR_AC_BE_MAX (3)
948#define CFG_QOS_WMM_INFRA_DIR_AC_BE_DEFAULT (3) //WLAN_QCT_CUST_WMM_TSDIR_BOTH
949
950#define CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_BE_NAME "InfraNomMsduSizeAcBe"
951#define CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_BE_MIN (0x0)
952#define CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_BE_MAX (0xFFFF)
953#define CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_BE_DEFAULT (0x85DC)
954
955#define CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_BE_NAME "InfraMeanDataRateAcBe"
956#define CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_BE_MIN (0x0)
957#define CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_BE_MAX (0xFFFFFFFF)
958#define CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_BE_DEFAULT (0x493E0)
959
960#define CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_BE_NAME "InfraMinPhyRateAcBe"
961#define CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_BE_MIN (0x0)
962#define CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_BE_MAX (0xFFFFFFFF)
963#define CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_BE_DEFAULT (0x5B8D80)
964
965#define CFG_QOS_WMM_INFRA_SBA_AC_BE_NAME "InfraSbaAcBe"
966#define CFG_QOS_WMM_INFRA_SBA_AC_BE_MIN (0x2001)
967#define CFG_QOS_WMM_INFRA_SBA_AC_BE_MAX (0xFFFF)
968#define CFG_QOS_WMM_INFRA_SBA_AC_BE_DEFAULT (0x2001)
969
970/* default TSPEC parameters for AC_Bk*/
971#define CFG_QOS_WMM_INFRA_DIR_AC_BK_NAME "InfraDirAcBk"
972#define CFG_QOS_WMM_INFRA_DIR_AC_BK_MIN (0)
973#define CFG_QOS_WMM_INFRA_DIR_AC_BK_MAX (3)
974#define CFG_QOS_WMM_INFRA_DIR_AC_BK_DEFAULT (3) //WLAN_QCT_CUST_WMM_TSDIR_BOTH
975
976#define CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_BK_NAME "InfraNomMsduSizeAcBk"
977#define CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_BK_MIN (0x0)
978#define CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_BK_MAX (0xFFFF)
979#define CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_BK_DEFAULT (0x85DC)
980
981#define CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_BK_NAME "InfraMeanDataRateAcBk"
982#define CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_BK_MIN (0x0)
983#define CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_BK_MAX (0xFFFFFFFF)
984#define CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_BK_DEFAULT (0x493E0)
985
986#define CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_BK_NAME "InfraMinPhyRateAcBk"
987#define CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_BK_MIN (0x0)
988#define CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_BK_MAX (0xFFFFFFFF)
989#define CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_BK_DEFAULT (0x5B8D80)
990
991#define CFG_QOS_WMM_INFRA_SBA_AC_BK_NAME "InfraSbaAcBk"
992#define CFG_QOS_WMM_INFRA_SBA_AC_BK_MIN (0x2001)
993#define CFG_QOS_WMM_INFRA_SBA_AC_BK_MAX (0xFFFF)
994#define CFG_QOS_WMM_INFRA_SBA_AC_BK_DEFAULT (0x2001)
995
996// TL configuration
997#define CFG_TL_WFQ_BK_WEIGHT_NAME "WfqBkWeight"
998#define CFG_TL_WFQ_BK_WEIGHT_MIN 1
999#define CFG_TL_WFQ_BK_WEIGHT_MAX 0xFF
1000#define CFG_TL_WFQ_BK_WEIGHT_DEFAULT 1
1001
1002#define CFG_TL_WFQ_BE_WEIGHT_NAME "WfqBeWeight"
1003#define CFG_TL_WFQ_BE_WEIGHT_MIN 1
1004#define CFG_TL_WFQ_BE_WEIGHT_MAX 0xFF
1005#define CFG_TL_WFQ_BE_WEIGHT_DEFAULT 3
1006
1007#define CFG_TL_WFQ_VI_WEIGHT_NAME "WfqViWeight"
1008#define CFG_TL_WFQ_VI_WEIGHT_MIN 1
1009#define CFG_TL_WFQ_VI_WEIGHT_MAX 0xFF
1010#define CFG_TL_WFQ_VI_WEIGHT_DEFAULT 5
1011
1012#define CFG_TL_WFQ_VO_WEIGHT_NAME "WfqVoWeight"
1013#define CFG_TL_WFQ_VO_WEIGHT_MIN 1
1014#define CFG_TL_WFQ_VO_WEIGHT_MAX 0xFF
1015#define CFG_TL_WFQ_VO_WEIGHT_DEFAULT 7
1016
1017#define CFG_TL_DELAYED_TRGR_FRM_INT_NAME "DelayedTriggerFrmInt"
1018#define CFG_TL_DELAYED_TRGR_FRM_INT_MIN 1
1019#define CFG_TL_DELAYED_TRGR_FRM_INT_MAX (4294967295UL)
1020#define CFG_TL_DELAYED_TRGR_FRM_INT_DEFAULT 3000
1021
Dhanashri Atred8c20a32014-01-03 17:20:55 -08001022#define CFG_REORDER_TIME_BK_NAME "BkReorderTime"
1023#define CFG_REORDER_TIME_BK_MIN 30
1024#define CFG_REORDER_TIME_BK_MAX 1000
Dhanashri Atre0626a8b2014-02-13 15:22:14 -08001025#define CFG_REORDER_TIME_BK_DEFAULT 100
Dhanashri Atred8c20a32014-01-03 17:20:55 -08001026
1027#define CFG_REORDER_TIME_BE_NAME "BeReorderTime"
1028#define CFG_REORDER_TIME_BE_MIN 30
1029#define CFG_REORDER_TIME_BE_MAX 1000
Dhanashri Atre0626a8b2014-02-13 15:22:14 -08001030#define CFG_REORDER_TIME_BE_DEFAULT 100
Dhanashri Atred8c20a32014-01-03 17:20:55 -08001031
1032#define CFG_REORDER_TIME_VI_NAME "ViReorderTime"
1033#define CFG_REORDER_TIME_VI_MIN 30
1034#define CFG_REORDER_TIME_VI_MAX 1000
Dhanashri Atre0626a8b2014-02-13 15:22:14 -08001035#define CFG_REORDER_TIME_VI_DEFAULT 100
Dhanashri Atred8c20a32014-01-03 17:20:55 -08001036
1037#define CFG_REORDER_TIME_VO_NAME "VoReorderTime"
1038#define CFG_REORDER_TIME_VO_MIN 30
1039#define CFG_REORDER_TIME_VO_MAX 1000
1040#define CFG_REORDER_TIME_VO_DEFAULT 40
1041
Jeff Johnson295189b2012-06-20 16:38:30 -07001042#if defined WLAN_FEATURE_VOWIFI
1043#define CFG_RRM_ENABLE_NAME "gRrmEnable"
1044#define CFG_RRM_ENABLE_MIN (0)
1045#define CFG_RRM_ENABLE_MAX (1)
1046#define CFG_RRM_ENABLE_DEFAULT (0)
1047
1048#define CFG_RRM_OPERATING_CHAN_MAX_DURATION_NAME "gRrmOperChanMax" //section 11.10.3 IEEE std. 802.11k-2008
1049#define CFG_RRM_OPERATING_CHAN_MAX_DURATION_MIN (0) //Maxduration = 2^(maxDuration - 4) * bcnIntvl.
1050#define CFG_RRM_OPERATING_CHAN_MAX_DURATION_MAX (8)
1051#define CFG_RRM_OPERATING_CHAN_MAX_DURATION_DEFAULT (3) //max duration = 2^-1 * bcnIntvl (50% of bcn intvl)
1052
1053#define CFG_RRM_NON_OPERATING_CHAN_MAX_DURATION_NAME "gRrmNonOperChanMax" //Same as above.
1054#define CFG_RRM_NON_OPERATING_CHAN_MAX_DURATION_MIN (0)
1055#define CFG_RRM_NON_OPERATING_CHAN_MAX_DURATION_MAX (8)
1056#define CFG_RRM_NON_OPERATING_CHAN_MAX_DURATION_DEFAULT (3)
1057
1058#define CFG_RRM_MEAS_RANDOMIZATION_INTVL_NAME "gRrmRandnIntvl"
1059#define CFG_RRM_MEAS_RANDOMIZATION_INTVL_MIN (10)
1060#define CFG_RRM_MEAS_RANDOMIZATION_INTVL_MAX (100)
1061#define CFG_RRM_MEAS_RANDOMIZATION_INTVL_DEFAULT (100)
1062#endif
1063
1064#define CFG_QOS_IMPLICIT_SETUP_ENABLED_NAME "ImplicitQosIsEnabled"
1065#define CFG_QOS_IMPLICIT_SETUP_ENABLED_MIN (0)
1066#define CFG_QOS_IMPLICIT_SETUP_ENABLED_MAX (1)
1067#define CFG_QOS_IMPLICIT_SETUP_ENABLED_DEFAULT (1)
1068
Jeff Johnson295189b2012-06-20 16:38:30 -07001069#define CFG_ENABLE_LOGP_NAME "gEnableLogp"
1070#define CFG_ENABLE_LOGP_MIN ( 0 )
1071#define CFG_ENABLE_LOGP_MAX ( 1 )
1072#define CFG_ENABLE_LOGP_DEFAULT ( 0 )
1073
1074#define CFG_BTC_EXECUTION_MODE_NAME "BtcExecutionMode"
1075#define CFG_BTC_EXECUTION_MODE_MIN ( 0 )
1076#define CFG_BTC_EXECUTION_MODE_MAX ( 5 )
1077#define CFG_BTC_EXECUTION_MODE_DEFAULT ( 0 )
1078
1079#define CFG_BTC_DHCP_PROTECTION_NAME "BtcConsBtSlotToBlockDuringDhcp"
1080#define CFG_BTC_DHCP_PROTECTION_MIN ( 0 )
1081#define CFG_BTC_DHCP_PROTECTION_MAX ( 0xFF )
1082#define CFG_BTC_DHCP_PROTECTION_DEFAULT ( 0 )
1083
1084#define CFG_BTC_A2DP_DHCP_PROTECTION_NAME "BtcA2DPDhcpProtectLevel"
1085#define CFG_BTC_A2DP_DHCP_PROTECTION_MIN ( 0 )
1086#define CFG_BTC_A2DP_DHCP_PROTECTION_MAX ( 0xFF )
1087#define CFG_BTC_A2DP_DHCP_PROTECTION_DEFAULT ( 7 )
1088
Jeff Johnson32d95a32012-09-10 13:15:23 -07001089#define CFG_BTC_STATIC_LEN_INQ_BT_NAME "btcStaticLenInqBt"
1090#define CFG_BTC_STATIC_LEN_INQ_BT_MIN ( 5000 )
1091#define CFG_BTC_STATIC_LEN_INQ_BT_MAX ( 500000 )
1092#define CFG_BTC_STATIC_LEN_INQ_BT_DEFAULT ( 120000 )
1093
1094#define CFG_BTC_STATIC_LEN_PAGE_BT_NAME "btcStaticLenPageBt"
1095#define CFG_BTC_STATIC_LEN_PAGE_BT_MIN ( 5000 )
1096#define CFG_BTC_STATIC_LEN_PAGE_BT_MAX ( 500000 )
Sundaresan Ramachandran12983602013-07-05 15:17:25 +05301097#define CFG_BTC_STATIC_LEN_PAGE_BT_DEFAULT ( 120000 )
Jeff Johnson32d95a32012-09-10 13:15:23 -07001098
1099#define CFG_BTC_STATIC_LEN_CONN_BT_NAME "btcStaticLenConnBt"
1100#define CFG_BTC_STATIC_LEN_CONN_BT_MIN ( 5000 )
1101#define CFG_BTC_STATIC_LEN_CONN_BT_MAX ( 500000 )
Sundaresan Ramachandran12983602013-07-05 15:17:25 +05301102#define CFG_BTC_STATIC_LEN_CONN_BT_DEFAULT ( 120000 )
Jeff Johnson32d95a32012-09-10 13:15:23 -07001103
1104#define CFG_BTC_STATIC_LEN_LE_BT_NAME "btcStaticLenLeBt"
1105#define CFG_BTC_STATIC_LEN_LE_BT_MIN ( 5000 )
1106#define CFG_BTC_STATIC_LEN_LE_BT_MAX ( 500000 )
Sundaresan Ramachandran12983602013-07-05 15:17:25 +05301107#define CFG_BTC_STATIC_LEN_LE_BT_DEFAULT ( 120000 )
Jeff Johnson32d95a32012-09-10 13:15:23 -07001108
1109#define CFG_BTC_STATIC_LEN_INQ_WLAN_NAME "btcStaticLenInqWlan"
1110#define CFG_BTC_STATIC_LEN_INQ_WLAN_MIN ( 0 )
1111#define CFG_BTC_STATIC_LEN_INQ_WLAN_MAX ( 500000 )
1112#define CFG_BTC_STATIC_LEN_INQ_WLAN_DEFAULT ( 30000 )
1113
1114#define CFG_BTC_STATIC_LEN_PAGE_WLAN_NAME "btcStaticLenPageWlan"
1115#define CFG_BTC_STATIC_LEN_PAGE_WLAN_MIN ( 0 )
1116#define CFG_BTC_STATIC_LEN_PAGE_WLAN_MAX ( 500000 )
Sundaresan Ramachandran12983602013-07-05 15:17:25 +05301117#define CFG_BTC_STATIC_LEN_PAGE_WLAN_DEFAULT ( 30000 )
Jeff Johnson32d95a32012-09-10 13:15:23 -07001118
1119#define CFG_BTC_STATIC_LEN_CONN_WLAN_NAME "btcStaticLenConnWlan"
1120#define CFG_BTC_STATIC_LEN_CONN_WLAN_MIN ( 0 )
1121#define CFG_BTC_STATIC_LEN_CONN_WLAN_MAX ( 500000 )
Sundaresan Ramachandran12983602013-07-05 15:17:25 +05301122#define CFG_BTC_STATIC_LEN_CONN_WLAN_DEFAULT ( 30000 )
Jeff Johnson32d95a32012-09-10 13:15:23 -07001123
1124#define CFG_BTC_STATIC_LEN_LE_WLAN_NAME "btcStaticLenLeWlan"
1125#define CFG_BTC_STATIC_LEN_LE_WLAN_MIN ( 0 )
1126#define CFG_BTC_STATIC_LEN_LE_WLAN_MAX ( 500000 )
Sundaresan Ramachandran12983602013-07-05 15:17:25 +05301127#define CFG_BTC_STATIC_LEN_LE_WLAN_DEFAULT ( 30000 )
Jeff Johnson32d95a32012-09-10 13:15:23 -07001128
1129#define CFG_BTC_DYN_MAX_LEN_BT_NAME "btcDynMaxLenBt"
1130#define CFG_BTC_DYN_MAX_LEN_BT_MIN ( 25000 )
1131#define CFG_BTC_DYN_MAX_LEN_BT_MAX ( 500000 )
1132#define CFG_BTC_DYN_MAX_LEN_BT_DEFAULT ( 250000 )
1133
1134#define CFG_BTC_DYN_MAX_LEN_WLAN_NAME "btcDynMaxLenWlan"
1135#define CFG_BTC_DYN_MAX_LEN_WLAN_MIN ( 15000 )
1136#define CFG_BTC_DYN_MAX_LEN_WLAN_MAX ( 500000 )
1137#define CFG_BTC_DYN_MAX_LEN_WLAN_DEFAULT ( 45000 )
1138
1139#define CFG_BTC_MAX_SCO_BLOCK_PERC_NAME "btcMaxScoBlockPerc"
1140#define CFG_BTC_MAX_SCO_BLOCK_PERC_MIN ( 0 )
1141#define CFG_BTC_MAX_SCO_BLOCK_PERC_MAX ( 100 )
1142#define CFG_BTC_MAX_SCO_BLOCK_PERC_DEFAULT ( 1 )
1143
1144#define CFG_BTC_DHCP_PROT_ON_A2DP_NAME "btcDhcpProtOnA2dp"
1145#define CFG_BTC_DHCP_PROT_ON_A2DP_MIN ( 0 )
1146#define CFG_BTC_DHCP_PROT_ON_A2DP_MAX ( 1 )
1147#define CFG_BTC_DHCP_PROT_ON_A2DP_DEFAULT ( 1 )
1148
1149#define CFG_BTC_DHCP_PROT_ON_SCO_NAME "btcDhcpProtOnSco"
1150#define CFG_BTC_DHCP_PROT_ON_SCO_MIN ( 0 )
1151#define CFG_BTC_DHCP_PROT_ON_SCO_MAX ( 1 )
1152#define CFG_BTC_DHCP_PROT_ON_SCO_DEFAULT ( 0 )
1153
Wilson Tsaof8b37942013-09-06 10:49:00 -07001154#define CFG_MWS_COEX_V1_WAN_FREQ_NAME "mwsCoexVictim1WANFreq"
1155#define CFG_MWS_COEX_VX_WAN_FREQ_MIN ( 0 )
1156#define CFG_MWS_COEX_VX_WAN_FREQ_MAX ( 0xFFFFFFFF )
1157#define CFG_MWS_COEX_VX_WAN_FREQ_DEFAULT ( 0 )
1158
1159#define CFG_MWS_COEX_V1_WLAN_FREQ_NAME "mwsCoexVictim1WLANFreq"
1160#define CFG_MWS_COEX_VX_WLAN_FREQ_MIN ( 0 )
1161#define CFG_MWS_COEX_VX_WLAN_FREQ_MAX ( 0xFFFFFFFF )
1162#define CFG_MWS_COEX_VX_WLAN_FREQ_DEFAULT ( 0 )
1163
1164#define CFG_MWS_COEX_V1_CONFIG_NAME "mwsCoexVictim1Config"
1165#define CFG_MWS_COEX_V1_CONFIG2_NAME "mwsCoexVictim1Config2"
1166#define CFG_MWS_COEX_VX_CONFIG_MIN ( 0 )
1167#define CFG_MWS_COEX_VX_CONFIG_MAX ( 0xFFFFFFFF )
1168#define CFG_MWS_COEX_VX_CONFIG_DEFAULT ( 0 )
1169
1170#define CFG_MWS_COEX_V2_WAN_FREQ_NAME "mwsCoexVictim2WANFreq"
1171#define CFG_MWS_COEX_V2_WLAN_FREQ_NAME "mwsCoexVictim2WLANFreq"
1172#define CFG_MWS_COEX_V2_CONFIG_NAME "mwsCoexVictim2Config"
1173#define CFG_MWS_COEX_V2_CONFIG2_NAME "mwsCoexVictim2Config2"
1174#define CFG_MWS_COEX_V3_WAN_FREQ_NAME "mwsCoexVictim3WANFreq"
1175#define CFG_MWS_COEX_V3_WLAN_FREQ_NAME "mwsCoexVictim3WLANFreq"
1176#define CFG_MWS_COEX_V3_CONFIG_NAME "mwsCoexVictim3Config"
1177#define CFG_MWS_COEX_V3_CONFIG2_NAME "mwsCoexVictim3Config2"
1178#define CFG_MWS_COEX_V4_WAN_FREQ_NAME "mwsCoexVictim4WANFreq"
1179#define CFG_MWS_COEX_V4_WLAN_FREQ_NAME "mwsCoexVictim4WLANFreq"
1180#define CFG_MWS_COEX_V4_CONFIG_NAME "mwsCoexVictim4Config"
1181#define CFG_MWS_COEX_V4_CONFIG2_NAME "mwsCoexVictim4Config2"
1182#define CFG_MWS_COEX_V5_WAN_FREQ_NAME "mwsCoexVictim5WANFreq"
1183#define CFG_MWS_COEX_V5_WLAN_FREQ_NAME "mwsCoexVictim5WLANFreq"
1184#define CFG_MWS_COEX_V5_CONFIG_NAME "mwsCoexVictim5Config"
1185#define CFG_MWS_COEX_V5_CONFIG2_NAME "mwsCoexVictim5Config2"
1186#define CFG_MWS_COEX_V6_WAN_FREQ_NAME "mwsCoexVictim6WANFreq"
1187#define CFG_MWS_COEX_V6_WLAN_FREQ_NAME "mwsCoexVictim6WLANFreq"
1188#define CFG_MWS_COEX_V6_CONFIG_NAME "mwsCoexVictim6Config"
1189#define CFG_MWS_COEX_V6_CONFIG2_NAME "mwsCoexVictim6Config2"
1190#define CFG_MWS_COEX_V7_WAN_FREQ_NAME "mwsCoexVictim7WANFreq"
1191#define CFG_MWS_COEX_V7_WLAN_FREQ_NAME "mwsCoexVictim7WLANFreq"
1192#define CFG_MWS_COEX_V7_CONFIG_NAME "mwsCoexVictim7Config"
1193#define CFG_MWS_COEX_V7_CONFIG2_NAME "mwsCoexVictim7Config2"
1194#define CFG_MWS_COEX_V8_WAN_FREQ_NAME "mwsCoexVictim8WANFreq"
1195#define CFG_MWS_COEX_V8_WLAN_FREQ_NAME "mwsCoexVictim8WLANFreq"
1196#define CFG_MWS_COEX_V8_CONFIG_NAME "mwsCoexVictim8Config"
1197#define CFG_MWS_COEX_V8_CONFIG2_NAME "mwsCoexVictim8Config2"
1198#define CFG_MWS_COEX_V9_WAN_FREQ_NAME "mwsCoexVictim9WANFreq"
1199#define CFG_MWS_COEX_V9_WLAN_FREQ_NAME "mwsCoexVictim9WLANFreq"
1200#define CFG_MWS_COEX_V9_CONFIG_NAME "mwsCoexVictim9Config"
1201#define CFG_MWS_COEX_V9_CONFIG2_NAME "mwsCoexVictim9Config2"
1202#define CFG_MWS_COEX_V10_WAN_FREQ_NAME "mwsCoexVictim10WANFreq"
1203#define CFG_MWS_COEX_V10_WLAN_FREQ_NAME "mwsCoexVictim10WLANFreq"
1204#define CFG_MWS_COEX_V10_CONFIG_NAME "mwsCoexVictim10Config"
1205#define CFG_MWS_COEX_V10_CONFIG2_NAME "mwsCoexVictim10Config2"
1206
1207#define CFG_MWS_COEX_MODEM_BACKOFF_NAME "mwsCoexModemBackoff"
1208#define CFG_MWS_COEX_MODEM_BACKOFF_MIN ( 0 )
1209#define CFG_MWS_COEX_MODEM_BACKOFF_MAX ( 0xFFFFFFFF )
1210#define CFG_MWS_COEX_MODEM_BACKOFF_DEFAULT ( 0 )
1211
1212#define CFG_MWS_COEX_CONFIG1_NAME "mwsCoexConfig1"
1213#define CFG_MWS_COEX_CONFIGX_MIN ( 0 )
1214#define CFG_MWS_COEX_CONFIGX_MAX ( 0xFFFFFFFF )
1215#define CFG_MWS_COEX_CONFIGX_DEFAULT ( 0 )
1216#define CFG_MWS_COEX_CONFIG2_NAME "mwsCoexConfig2"
1217#define CFG_MWS_COEX_CONFIG3_NAME "mwsCoexConfig3"
1218#define CFG_MWS_COEX_CONFIG4_NAME "mwsCoexConfig4"
1219#define CFG_MWS_COEX_CONFIG5_NAME "mwsCoexConfig5"
1220#define CFG_MWS_COEX_CONFIG6_NAME "mwsCoexConfig6"
1221
1222#define CFG_SAR_POWER_BACKOFF_NAME "SARPowerBackoff"
1223#define CFG_SAR_POWER_BACKOFF_MIN ( 0 )
1224#define CFG_SAR_POWER_BACKOFF_MAX ( 0xFFFFFFFF )
Agarwal Ashish7b6e2972014-07-09 17:18:30 +05301225#define CFG_SAR_POWER_BACKOFF_DEFAULT ( 13 )
Wilson Tsaof8b37942013-09-06 10:49:00 -07001226
Jeff Johnson295189b2012-06-20 16:38:30 -07001227#if defined WLAN_FEATURE_VOWIFI_11R
Jeff Johnson295189b2012-06-20 16:38:30 -07001228#define CFG_FT_RESOURCE_REQ_NAME "gFTResourceReqSupported"
1229#define CFG_FT_RESOURCE_REQ_MIN (0)
1230#define CFG_FT_RESOURCE_REQ_MAX (1)
1231#define CFG_FT_RESOURCE_REQ_DEFAULT (0)
1232#endif
1233
1234#define CFG_TELE_BCN_TRANS_LI_NAME "telescopicBeaconTransListenInterval"
1235#define CFG_TELE_BCN_TRANS_LI_MIN ( 0 )
1236#define CFG_TELE_BCN_TRANS_LI_MAX ( 7 )
1237#define CFG_TELE_BCN_TRANS_LI_DEFAULT ( 3 )
1238
1239#define CFG_TELE_BCN_TRANS_LI_NUM_IDLE_BCNS_NAME "telescopicBeaconTransListenIntervalNumIdleBcns"
1240#define CFG_TELE_BCN_TRANS_LI_NUM_IDLE_BCNS_MIN ( 5 )
1241#define CFG_TELE_BCN_TRANS_LI_NUM_IDLE_BCNS_MAX ( 255 )
1242#define CFG_TELE_BCN_TRANS_LI_NUM_IDLE_BCNS_DEFAULT ( 10 )
1243
1244#define CFG_TELE_BCN_MAX_LI_NAME "telescopicBeaconMaxListenInterval"
1245#define CFG_TELE_BCN_MAX_LI_MIN ( 0 )
1246#define CFG_TELE_BCN_MAX_LI_MAX ( 7 )
1247#define CFG_TELE_BCN_MAX_LI_DEFAULT ( 5 )
1248
1249#define CFG_TELE_BCN_MAX_LI_NUM_IDLE_BCNS_NAME "telescopicBeaconMaxListenIntervalNumIdleBcns"
1250#define CFG_TELE_BCN_MAX_LI_NUM_IDLE_BCNS_MIN ( 5 )
1251#define CFG_TELE_BCN_MAX_LI_NUM_IDLE_BCNS_MAX ( 255 )
1252#define CFG_TELE_BCN_MAX_LI_NUM_IDLE_BCNS_DEFAULT ( 15 )
1253
1254#define CFG_BCN_EARLY_TERM_WAKE_NAME "beaconEarlyTerminationWakeInterval"
1255#define CFG_BCN_EARLY_TERM_WAKE_MIN ( 2 )
1256#define CFG_BCN_EARLY_TERM_WAKE_MAX ( 255 )
1257#define CFG_BCN_EARLY_TERM_WAKE_DEFAULT ( 3 )
1258
Girish Gowlibf0e1ab2015-01-19 16:05:16 +05301259#define CFG_ENABLE_ROAM_DELAY_STATS "gEnableRoamDelayStats"
1260#define CFG_ENABLE_ROAM_DELAY_STATS_MIN ( 0 )
1261#define CFG_ENABLE_ROAM_DELAY_STATS_MAX ( 1 )
1262#define CFG_ENABLE_ROAM_DELAY_STATS_DEFAULT ( 0 )
Girish Gowlibf0e1ab2015-01-19 16:05:16 +05301263
Jeff Johnson295189b2012-06-20 16:38:30 -07001264#ifdef WLAN_FEATURE_NEIGHBOR_ROAMING
1265#define CFG_NEIGHBOR_SCAN_TIMER_PERIOD_NAME "gNeighborScanTimerPeriod"
Varun Reddy Yeturuce114f72013-06-05 14:09:58 -07001266#define CFG_NEIGHBOR_SCAN_TIMER_PERIOD_MIN (3)
1267#define CFG_NEIGHBOR_SCAN_TIMER_PERIOD_MAX (300)
Jeff Johnson295189b2012-06-20 16:38:30 -07001268#define CFG_NEIGHBOR_SCAN_TIMER_PERIOD_DEFAULT (200)
1269
1270#define CFG_NEIGHBOR_REASSOC_RSSI_THRESHOLD_NAME "gNeighborReassocThreshold"
1271#define CFG_NEIGHBOR_REASSOC_RSSI_THRESHOLD_MIN (10)
1272#define CFG_NEIGHBOR_REASSOC_RSSI_THRESHOLD_MAX (125)
Srinivas Girigowdad42dfce2013-06-19 17:33:50 -07001273#define CFG_NEIGHBOR_REASSOC_RSSI_THRESHOLD_DEFAULT (83)
Jeff Johnson295189b2012-06-20 16:38:30 -07001274
1275#define CFG_NEIGHBOR_LOOKUP_RSSI_THRESHOLD_NAME "gNeighborLookupThreshold"
Varun Reddy Yeturu6c5e25c2014-01-09 21:55:37 -08001276#define CFG_NEIGHBOR_LOOKUP_RSSI_THRESHOLD_MIN (0)
Jeff Johnson295189b2012-06-20 16:38:30 -07001277#define CFG_NEIGHBOR_LOOKUP_RSSI_THRESHOLD_MAX (120)
Varun Reddy Yeturu6c5e25c2014-01-09 21:55:37 -08001278#define CFG_NEIGHBOR_LOOKUP_RSSI_THRESHOLD_DEFAULT (0) /*A Zero value indicates the host to calculate
1279 Adaptive thresold based on the minimum
1280 supported data rate.*/
Jeff Johnson295189b2012-06-20 16:38:30 -07001281
1282#define CFG_NEIGHBOR_SCAN_CHAN_LIST_NAME "gNeighborScanChannelList"
Madan Mohan Koyyalamudi470d2cf2012-09-28 14:43:44 -07001283#define CFG_NEIGHBOR_SCAN_CHAN_LIST_DEFAULT ""
Jeff Johnson295189b2012-06-20 16:38:30 -07001284
1285#define CFG_NEIGHBOR_SCAN_MIN_CHAN_TIME_NAME "gNeighborScanChannelMinTime"
1286#define CFG_NEIGHBOR_SCAN_MIN_CHAN_TIME_MIN (10)
1287#define CFG_NEIGHBOR_SCAN_MIN_CHAN_TIME_MAX (40)
1288#define CFG_NEIGHBOR_SCAN_MIN_CHAN_TIME_DEFAULT (20)
1289
1290#define CFG_NEIGHBOR_SCAN_MAX_CHAN_TIME_NAME "gNeighborScanChannelMaxTime"
Varun Reddy Yeturuce114f72013-06-05 14:09:58 -07001291#define CFG_NEIGHBOR_SCAN_MAX_CHAN_TIME_MIN (3)
1292#define CFG_NEIGHBOR_SCAN_MAX_CHAN_TIME_MAX (300)
Jeff Johnson295189b2012-06-20 16:38:30 -07001293#define CFG_NEIGHBOR_SCAN_MAX_CHAN_TIME_DEFAULT (30)
1294
1295#define CFG_11R_NEIGHBOR_REQ_MAX_TRIES_NAME "gMaxNeighborReqTries"
1296#define CFG_11R_NEIGHBOR_REQ_MAX_TRIES_MIN (1)
1297#define CFG_11R_NEIGHBOR_REQ_MAX_TRIES_MAX (4)
Srinivas Girigowdad42dfce2013-06-19 17:33:50 -07001298#define CFG_11R_NEIGHBOR_REQ_MAX_TRIES_DEFAULT (3)
Jeff Johnson295189b2012-06-20 16:38:30 -07001299
1300
1301#define CFG_NEIGHBOR_SCAN_RESULTS_REFRESH_PERIOD_NAME "gNeighborScanRefreshPeriod"
1302#define CFG_NEIGHBOR_SCAN_RESULTS_REFRESH_PERIOD_MIN (1000)
1303#define CFG_NEIGHBOR_SCAN_RESULTS_REFRESH_PERIOD_MAX (60000)
1304#define CFG_NEIGHBOR_SCAN_RESULTS_REFRESH_PERIOD_DEFAULT (20000)
Srinivas Girigowdade697412013-02-14 16:31:48 -08001305
1306#define CFG_EMPTY_SCAN_REFRESH_PERIOD_NAME "gEmptyScanRefreshPeriod"
Srinivas Girigowdab8edd1e2013-03-19 11:42:08 -07001307#define CFG_EMPTY_SCAN_REFRESH_PERIOD_MIN (0)
Srinivas Girigowdade697412013-02-14 16:31:48 -08001308#define CFG_EMPTY_SCAN_REFRESH_PERIOD_MAX (60000)
1309#define CFG_EMPTY_SCAN_REFRESH_PERIOD_DEFAULT (0)
Mukul Sharma20aa6582014-08-07 21:36:12 +05301310
1311#define CFG_NEIGHBOR_INITIAL_FORCED_ROAM_TO_5GH_ENABLE_NAME "gNeighborInitialForcedRoamTo5GhEnable"
1312#define CFG_NEIGHBOR_INITIAL_FORCED_ROAM_TO_5GH_ENABLE_MIN (0)
1313#define CFG_NEIGHBOR_INITIAL_FORCED_ROAM_TO_5GH_ENABLE_MAX (1)
1314#define CFG_NEIGHBOR_INITIAL_FORCED_ROAM_TO_5GH_ENABLE_DEFAULT (0)
1315
Jeff Johnson295189b2012-06-20 16:38:30 -07001316#endif /* WLAN_FEATURE_NEIGHBOR_ROAMING */
1317
1318#define CFG_QOS_WMM_BURST_SIZE_DEFN_NAME "burstSizeDefinition"
1319#define CFG_QOS_WMM_BURST_SIZE_DEFN_MIN (0)
1320#define CFG_QOS_WMM_BURST_SIZE_DEFN_MAX (1)
1321#define CFG_QOS_WMM_BURST_SIZE_DEFN_DEFAULT (0)
1322
1323#define CFG_QOS_WMM_TS_INFO_ACK_POLICY_NAME "tsInfoAckPolicy"
1324#define CFG_QOS_WMM_TS_INFO_ACK_POLICY_MIN (0x00)
1325#define CFG_QOS_WMM_TS_INFO_ACK_POLICY_MAX (0x01)
1326#define CFG_QOS_WMM_TS_INFO_ACK_POLICY_DEFAULT (0x00)
1327
1328#define CFG_SINGLE_TID_RC_NAME "SingleTIDRC"
1329#define CFG_SINGLE_TID_RC_MIN (0) // Seperate replay counter for all TID
1330#define CFG_SINGLE_TID_RC_MAX (1) // Single replay counter for all TID
1331#define CFG_SINGLE_TID_RC_DEFAULT (1)
1332#define CFG_MCAST_BCAST_FILTER_SETTING_NAME "McastBcastFilter"
1333#define CFG_MCAST_BCAST_FILTER_SETTING_MIN (0)
1334#define CFG_MCAST_BCAST_FILTER_SETTING_MAX (3)
1335#define CFG_MCAST_BCAST_FILTER_SETTING_DEFAULT (0)
1336
1337#define CFG_DYNAMIC_PSPOLL_VALUE_NAME "gDynamicPSPollvalue"
1338#define CFG_DYNAMIC_PSPOLL_VALUE_MIN (0)
1339#define CFG_DYNAMIC_PSPOLL_VALUE_MAX (255)
1340#define CFG_DYNAMIC_PSPOLL_VALUE_DEFAULT (0)
1341
1342#define CFG_TELE_BCN_WAKEUP_EN_NAME "gTelescopicBeaconWakeupEn"
1343#define CFG_TELE_BCN_WAKEUP_EN_MIN (0)
1344#define CFG_TELE_BCN_WAKEUP_EN_MAX (1)
1345#define CFG_TELE_BCN_WAKEUP_EN_DEFAULT (0)
1346
1347#define CFG_QOS_ADDTS_WHEN_ACM_IS_OFF_NAME "gAddTSWhenACMIsOff"
1348#define CFG_QOS_ADDTS_WHEN_ACM_IS_OFF_MIN (0)
1349#define CFG_QOS_ADDTS_WHEN_ACM_IS_OFF_MAX (1) //Send AddTs even when ACM is not set for the AC
1350#define CFG_QOS_ADDTS_WHEN_ACM_IS_OFF_DEFAULT (0)
1351
1352
1353#define CFG_VALIDATE_SCAN_LIST_NAME "gValidateScanList"
1354#define CFG_VALIDATE_SCAN_LIST_MIN (0)
1355#define CFG_VALIDATE_SCAN_LIST_MAX (1)
1356#define CFG_VALIDATE_SCAN_LIST_DEFAULT (0)
1357
1358#define CFG_NULLDATA_AP_RESP_TIMEOUT_NAME "gNullDataApRespTimeout"
1359#define CFG_NULLDATA_AP_RESP_TIMEOUT_MIN ( WNI_CFG_PS_NULLDATA_AP_RESP_TIMEOUT_STAMIN )
1360#define CFG_NULLDATA_AP_RESP_TIMEOUT_MAX ( WNI_CFG_PS_NULLDATA_AP_RESP_TIMEOUT_STAMAX )
1361#define CFG_NULLDATA_AP_RESP_TIMEOUT_DEFAULT ( WNI_CFG_PS_NULLDATA_AP_RESP_TIMEOUT_STADEF )
1362
1363#define CFG_AP_DATA_AVAIL_POLL_PERIOD_NAME "gApDataAvailPollInterval"
1364#define CFG_AP_DATA_AVAIL_POLL_PERIOD_MIN ( WNI_CFG_AP_DATA_AVAIL_POLL_PERIOD_STAMIN )
1365#define CFG_AP_DATA_AVAIL_POLL_PERIOD_MAX ( WNI_CFG_AP_DATA_AVAIL_POLL_PERIOD_STAMAX )
1366#define CFG_AP_DATA_AVAIL_POLL_PERIOD_DEFAULT ( WNI_CFG_AP_DATA_AVAIL_POLL_PERIOD_STADEF )
1367
1368#define CFG_ENABLE_HOST_ARPOFFLOAD_NAME "hostArpOffload"
1369#define CFG_ENABLE_HOST_ARPOFFLOAD_MIN ( 0 )
1370#define CFG_ENABLE_HOST_ARPOFFLOAD_MAX ( 1 )
1371#define CFG_ENABLE_HOST_ARPOFFLOAD_DEFAULT ( 0 )
1372
Gopichand Nakkala746a9452013-06-11 12:45:54 +05301373#define CFG_ENABLE_HOST_NSOFFLOAD_NAME "hostNSOffload"
1374#define CFG_ENABLE_HOST_NSOFFLOAD_MIN ( 0 )
1375#define CFG_ENABLE_HOST_NSOFFLOAD_MAX ( 1 )
1376#define CFG_ENABLE_HOST_NSOFFLOAD_DEFAULT ( 0 )
1377
1378
Jeff Johnson295189b2012-06-20 16:38:30 -07001379#define CFG_ENABLE_BTAMP_NAME "gEnableBtAmp"
1380#define CFG_ENABLE_BTAMP_MIN ( 0 )
1381#define CFG_ENABLE_BTAMP_MAX ( 1 )
1382#define CFG_ENABLE_BTAMP_DEFAULT ( 0 )
1383
1384#ifdef WLAN_BTAMP_FEATURE
1385#define CFG_BT_AMP_PREFERRED_CHANNEL_NAME "BtAmpPreferredChannel"
1386#define CFG_BT_AMP_PREFERRED_CHANNEL_MIN (1)
1387#define CFG_BT_AMP_PREFERRED_CHANNEL_MAX (11)
1388#define CFG_BT_AMP_PREFERRED_CHANNEL_DEFAULT (1)
1389#endif //WLAN_BTAMP_FEATURE
1390
1391#define CFG_BAND_CAPABILITY_NAME "BandCapability"
1392#define CFG_BAND_CAPABILITY_MIN (0)
1393#define CFG_BAND_CAPABILITY_MAX (2)
1394#define CFG_BAND_CAPABILITY_DEFAULT (1)
1395
1396#define CFG_ENABLE_BEACON_EARLY_TERMINATION_NAME "enableBeaconEarlyTermination"
1397#define CFG_ENABLE_BEACON_EARLY_TERMINATION_MIN ( 0 )
1398#define CFG_ENABLE_BEACON_EARLY_TERMINATION_MAX ( 1 )
1399#define CFG_ENABLE_BEACON_EARLY_TERMINATION_DEFAULT ( 0 )
1400
1401#define CFG_ENABLE_CLOSE_LOOP_NAME "gEnableCloseLoop"
1402#define CFG_ENABLE_CLOSE_LOOP_MIN WNI_CFG_FIXED_RATE_STAMIN
1403#define CFG_ENABLE_CLOSE_LOOP_MAX WNI_CFG_FIXED_RATE_STAMAX
1404#define CFG_ENABLE_CLOSE_LOOP_DEFAULT WNI_CFG_FIXED_RATE_STADEF
1405
1406#define CFG_ENABLE_BYPASS_11D_NAME "gEnableBypass11d"
1407#define CFG_ENABLE_BYPASS_11D_MIN ( 0 )
1408#define CFG_ENABLE_BYPASS_11D_MAX ( 1 )
Mihir Shete17e560a2014-02-11 22:19:41 +05301409#define CFG_ENABLE_BYPASS_11D_DEFAULT ( 1 )
Jeff Johnson295189b2012-06-20 16:38:30 -07001410
Padma, Santhosh Kumar778d8382015-03-04 17:41:22 +05301411/*
1412 * gEnableDFSChnlScan
1413 * 0: disable scan on DFS channels
1414 * 1: enables passive scan on DFS channels
1415 * 2: enables active scan on DFS channels for static list.
1416 * Static or cfg list is the channel list set by ioctl SETROAMSCANCHANNELS.
1417*/
Jeff Johnson295189b2012-06-20 16:38:30 -07001418#define CFG_ENABLE_DFS_CHNL_SCAN_NAME "gEnableDFSChnlScan"
1419#define CFG_ENABLE_DFS_CHNL_SCAN_MIN ( 0 )
Padma, Santhosh Kumar778d8382015-03-04 17:41:22 +05301420#define CFG_ENABLE_DFS_CHNL_SCAN_MAX ( 2 )
Jeff Johnson295189b2012-06-20 16:38:30 -07001421#define CFG_ENABLE_DFS_CHNL_SCAN_DEFAULT ( 1 )
1422
Sachin Ahuja697ba3f2014-11-12 18:57:11 +05301423#define CFG_ENABLE_DFS_PNO_CHNL_SCAN_NAME "gEnableDFSPnoChnlScan"
1424#define CFG_ENABLE_DFS_PNO_CHNL_SCAN_MIN ( 0 )
1425#define CFG_ENABLE_DFS_PNO_CHNL_SCAN_MAX ( 1 )
1426#define CFG_ENABLE_DFS_PNO_CHNL_SCAN_DEFAULT ( 1 )
1427
Jeff Johnson295189b2012-06-20 16:38:30 -07001428typedef enum
1429{
1430 eHDD_LINK_SPEED_REPORT_ACTUAL = 0,
1431 eHDD_LINK_SPEED_REPORT_MAX = 1,
1432 eHDD_LINK_SPEED_REPORT_MAX_SCALED = 2,
1433}eHddLinkSpeedReportType;
Jeff Johnsone7245742012-09-05 17:12:55 -07001434#ifdef WLAN_FEATURE_11AC
1435#define CFG_VHT_CHANNEL_WIDTH "gVhtChannelWidth"
1436#define CFG_VHT_CHANNEL_WIDTH_MIN ( 0 )
1437#define CFG_VHT_CHANNEL_WIDTH_MAX ( 2 )
1438#define CFG_VHT_CHANNEL_WIDTH_DEFAULT ( 2 )
1439
1440#define CFG_VHT_ENABLE_RX_MCS_8_9 "gVhtRxMCS"
1441#define CFG_VHT_ENABLE_RX_MCS_8_9_MIN ( 0 )
1442#define CFG_VHT_ENABLE_RX_MCS_8_9_MAX ( 2 )
1443#define CFG_VHT_ENABLE_RX_MCS_8_9_DEFAULT ( 0 )
1444
1445#define CFG_VHT_ENABLE_TX_MCS_8_9 "gVhtTxMCS"
1446#define CFG_VHT_ENABLE_TX_MCS_8_9_MIN ( 0 )
1447#define CFG_VHT_ENABLE_TX_MCS_8_9_MAX ( 2 )
1448#define CFG_VHT_ENABLE_TX_MCS_8_9_DEFAULT ( 0 )
1449
1450#endif
Jeff Johnson295189b2012-06-20 16:38:30 -07001451
1452#define CFG_REPORT_MAX_LINK_SPEED "gReportMaxLinkSpeed"
1453#define CFG_REPORT_MAX_LINK_SPEED_MIN ( eHDD_LINK_SPEED_REPORT_ACTUAL )
1454#define CFG_REPORT_MAX_LINK_SPEED_MAX ( eHDD_LINK_SPEED_REPORT_MAX_SCALED )
Leela Venkata Kiran Kumar Reddy Chirala911463f2013-02-22 18:01:15 -08001455#define CFG_REPORT_MAX_LINK_SPEED_DEFAULT ( eHDD_LINK_SPEED_REPORT_MAX_SCALED )
Jeff Johnson295189b2012-06-20 16:38:30 -07001456
1457/*
1458 * RSSI Thresholds
1459 * Used when eHDD_LINK_SPEED_REPORT_SCALED is selected
1460 */
1461#define CFG_LINK_SPEED_RSSI_HIGH "gLinkSpeedRssiHigh"
1462#define CFG_LINK_SPEED_RSSI_HIGH_MIN ( -127 )
1463#define CFG_LINK_SPEED_RSSI_HIGH_MAX ( 0 )
1464#define CFG_LINK_SPEED_RSSI_HIGH_DEFAULT ( -55 )
1465
Madan Mohan Koyyalamudi8df78d52012-11-02 12:30:06 -07001466#define CFG_LINK_SPEED_RSSI_MID "gLinkSpeedRssiMed"
1467#define CFG_LINK_SPEED_RSSI_MID_MIN ( -127 )
1468#define CFG_LINK_SPEED_RSSI_MID_MAX ( 0 )
1469#define CFG_LINK_SPEED_RSSI_MID_DEFAULT ( -65 )
1470
Jeff Johnson295189b2012-06-20 16:38:30 -07001471#define CFG_LINK_SPEED_RSSI_LOW "gLinkSpeedRssiLow"
1472#define CFG_LINK_SPEED_RSSI_LOW_MIN ( -127 )
1473#define CFG_LINK_SPEED_RSSI_LOW_MAX ( 0 )
Madan Mohan Koyyalamudi8df78d52012-11-02 12:30:06 -07001474#define CFG_LINK_SPEED_RSSI_LOW_DEFAULT ( -80 )
Jeff Johnson295189b2012-06-20 16:38:30 -07001475
Jeff Johnson295189b2012-06-20 16:38:30 -07001476#define CFG_P2P_DEVICE_ADDRESS_ADMINISTRATED_NAME "isP2pDeviceAddrAdministrated"
1477#define CFG_P2P_DEVICE_ADDRESS_ADMINISTRATED_MIN ( 0 )
1478#define CFG_P2P_DEVICE_ADDRESS_ADMINISTRATED_MAX ( 1 )
kalikinkar dharac0eda4f2013-10-08 16:41:33 -07001479#define CFG_P2P_DEVICE_ADDRESS_ADMINISTRATED_DEFAULT ( 1 )
Jeff Johnson295189b2012-06-20 16:38:30 -07001480
Jeff Johnson295189b2012-06-20 16:38:30 -07001481
Gopichand Nakkalae620d5a2013-04-26 05:45:57 -07001482#define CFG_ENABLE_SSR "gEnableSSR"
1483#define CFG_ENABLE_SSR_MIN ( 0 )
1484#define CFG_ENABLE_SSR_MAX ( 1 )
1485#define CFG_ENABLE_SSR_DEFAULT ( 1 )
1486
c_hpothu6d7dc922013-12-02 12:36:41 +05301487#define CFG_BTC_ACTIVE_WLAN_LEN_NAME "btcActiveWlanLen"
1488#define CFG_BTC_ACTIVE_WLAN_LEN_MIN ( 0 )
1489#define CFG_BTC_ACTIVE_WLAN_LEN_MAX ( 250000 )
1490#define CFG_BTC_ACTIVE_WLAN_LEN_DEFAULT ( 60000 )
1491
1492#define CFG_BTC_ACTIVE_BT_LEN_NAME "btcActiveBtLen"
1493#define CFG_BTC_ACTIVE_BT_LEN_MIN ( 0 )
1494#define CFG_BTC_ACTIVE_BT_LEN_MAX ( 250000 )
1495#define CFG_BTC_ACTIVE_BT_LEN_DEFAULT ( 90000 )
1496
1497#define CFG_BTC_SAP_ACTIVE_WLAN_LEN_NAME "btcSapActiveWlanLen"
1498#define CFG_BTC_SAP_ACTIVE_WLAN_LEN_MIN ( 0 )
1499#define CFG_BTC_SAP_ACTIVE_WLAN_LEN_MAX ( 250000 )
c_hpothu7e62c1a2014-09-03 18:46:00 +05301500#define CFG_BTC_SAP_ACTIVE_WLAN_LEN_DEFAULT ( 30000 )
c_hpothu6d7dc922013-12-02 12:36:41 +05301501
1502#define CFG_BTC_SAP_ACTIVE_BT_LEN_NAME "btcSapActiveBtLen"
1503#define CFG_BTC_SAP_ACTIVE_BT_LEN_MIN ( 0 )
1504#define CFG_BTC_SAP_ACTIVE_BT_LEN_MAX ( 250000 )
c_hpothu7e62c1a2014-09-03 18:46:00 +05301505#define CFG_BTC_SAP_ACTIVE_BT_LEN_DEFAULT ( 30000 )
c_hpothu6d7dc922013-12-02 12:36:41 +05301506
Sandeep Puligilla04bb8fd2014-02-03 23:21:47 +05301507#define CFG_OBSS_HT40_SCAN_ACTIVE_DWELL_TIME_NAME "gObssScanActiveDwellTime"
1508#define CFG_OBSS_HT40_SCAN_ACTIVE_DWELL_TIME_MIN ( 5 )
1509#define CFG_OBSS_HT40_SCAN_ACTIVE_DWELL_TIME_MAX ( 1000 )
1510#define CFG_OBSS_HT40_SCAN_ACTIVE_DWELL_TIME_DEFAULT ( 10 )
1511
1512#define CFG_OBSS_HT40_SCAN_PASSIVE_DWELL_TIME_NAME "gObssScanPassiveDwellTime"
1513#define CFG_OBSS_HT40_SCAN_PASSIVE_DWELL_TIME_MIN ( 10 )
1514#define CFG_OBSS_HT40_SCAN_PASSIVE_DWELL_TIME_MAX ( 1000 )
1515#define CFG_OBSS_HT40_SCAN_PASSIVE_DWELL_TIME_DEFAULT ( 20 )
1516
1517#define CFG_OBSS_HT40_SCAN_WIDTH_TRIGGER_INTERVAL_NAME "gObssScanWidthTriggerInterval"
1518#define CFG_OBSS_HT40_SCAN_WIDTH_TRIGGER_INTERVAL_MIN ( 10 )
1519#define CFG_OBSS_HT40_SCAN_WIDTH_TRIGGER_INTERVAL_MAX ( 900 )
1520#define CFG_OBSS_HT40_SCAN_WIDTH_TRIGGER_INTERVAL_DEFAULT ( 200 )
1521
Abhishek Singh8280c4e2014-02-18 13:26:34 +05301522/* In cfg.dat 1=1MBPS, 2=2MBPS, 3=5_5MBPS, 4=11MBPS, 5=6MBPS, 6=9MBPS,
1523 * 7=12MBPS, 8=18MBPS, 9=24MBPS. But 6=9MBPS and 8=18MBPS are not basic
1524 * 11g rates and should not be set by gDefaultRateIndex24Ghz. So instead
1525 * of using index 1-9 we will use 1-7 and if user set gDefaultRateIndex24Ghz=6
1526 * set 7=12MBPS in CFG and if user set gDefaultRateIndex24Ghz=7 set
1527 * 9=24MBPS in CFG.
1528*/
1529
1530#define HDD_DEFAULT_RATE_12MBPS 6
1531#define HDD_DEFAULT_RATE_24MBPS 7
1532#define CFG_DEFAULT_RATE_12MBPS 7
1533#define CFG_DEFAULT_RATE_24MBPS 9
1534#define CFG_DEFAULT_RATE_INDEX_24GH "gDefaultRateIndex24Ghz"
1535#define CFG_DEFAULT_RATE_INDEX_24GH_MIN ( 1 )
1536#define CFG_DEFAULT_RATE_INDEX_24GH_MAX ( 7 )
1537#define CFG_DEFAULT_RATE_INDEX_24GH_DEFAULT ( 1 )
1538
1539static __inline tANI_U32 defHddRateToDefCfgRate( tANI_U32 defRateIndex )
1540{
1541 switch(defRateIndex){
1542 case HDD_DEFAULT_RATE_12MBPS:
1543 return CFG_DEFAULT_RATE_12MBPS;
1544 break;
1545 case HDD_DEFAULT_RATE_24MBPS:
1546 return CFG_DEFAULT_RATE_24MBPS;
1547 break;
1548 default:
1549 return defRateIndex;
1550 }
1551}
Jeff Johnson295189b2012-06-20 16:38:30 -07001552/*
Varun Reddy Yeturu587e6802013-01-24 12:21:41 -08001553 * VOS Trace Enable Control
1554 * Notes:
1555 * the MIN/MAX/DEFAULT values apply for all modules
1556 * the DEFAULT value is outside the valid range. if the DEFAULT
1557 * value is not overridden, then no change will be made to the
1558 * "built in" default values compiled into the code
1559 * values are a bitmap indicating which log levels are to enabled
1560 * (must match order of vos_trace_level enumerations)
1561 * 00000001 FATAL
1562 * 00000010 ERROR
1563 * 00000100 WARN
1564 * 00001000 INFO
1565 * 00010000 INFO HIGH
1566 * 00100000 INFO MED
1567 * 01000000 INFO LOW
1568 * 10000000 DEBUG
1569 *
1570 * hence a value of 0xFF would set all bits (enable all logs)
1571 */
1572
1573#define CFG_VOS_TRACE_ENABLE_BAP_NAME "vosTraceEnableBAP"
1574#define CFG_VOS_TRACE_ENABLE_TL_NAME "vosTraceEnableTL"
1575#define CFG_VOS_TRACE_ENABLE_WDI_NAME "vosTraceEnableWDI"
1576#define CFG_VOS_TRACE_ENABLE_HDD_NAME "vosTraceEnableHDD"
1577#define CFG_VOS_TRACE_ENABLE_SME_NAME "vosTraceEnableSME"
1578#define CFG_VOS_TRACE_ENABLE_PE_NAME "vosTraceEnablePE"
Katya Nigam70d68332013-09-16 16:49:45 +05301579#define CFG_VOS_TRACE_ENABLE_PMC_NAME "vosTraceEnablePMC"
Varun Reddy Yeturu587e6802013-01-24 12:21:41 -08001580#define CFG_VOS_TRACE_ENABLE_WDA_NAME "vosTraceEnableWDA"
1581#define CFG_VOS_TRACE_ENABLE_SYS_NAME "vosTraceEnableSYS"
1582#define CFG_VOS_TRACE_ENABLE_VOSS_NAME "vosTraceEnableVOSS"
Varun Reddy Yeturu587e6802013-01-24 12:21:41 -08001583#define CFG_VOS_TRACE_ENABLE_SAP_NAME "vosTraceEnableSAP"
1584#define CFG_VOS_TRACE_ENABLE_HDD_SAP_NAME "vosTraceEnableHDDSAP"
Varun Reddy Yeturu587e6802013-01-24 12:21:41 -08001585
1586#define CFG_VOS_TRACE_ENABLE_MIN (0)
1587#define CFG_VOS_TRACE_ENABLE_MAX (0xff)
1588#define CFG_VOS_TRACE_ENABLE_DEFAULT (0xffff)
1589
1590/*
Jeff Johnson295189b2012-06-20 16:38:30 -07001591 * WDI Trace Enable Control
1592 * Notes:
1593 * the MIN/MAX/DEFAULT values apply for all modules
1594 * the DEFAULT value is outside the valid range. if the DEFAULT
1595 * value is not overridden, then no change will be made to the
1596 * "built in" default values compiled into the code
1597 * values are a bitmap indicating which log levels are to enabled
1598 * (must match order of wpt_tracelevel enumerations)
1599 * 00000001 FATAL
1600 * 00000010 ERROR
1601 * 00000100 WARN
1602 * 00001000 INFO
1603 * 00010000 INFO HIGH
1604 * 00100000 INFO MED
1605 * 01000000 INFO LOW
1606 *
1607 * hence a value of 0x7F would set all bits (enable all logs)
1608 */
1609#define CFG_WDI_TRACE_ENABLE_DAL_NAME "wdiTraceEnableDAL"
1610#define CFG_WDI_TRACE_ENABLE_CTL_NAME "wdiTraceEnableCTL"
1611#define CFG_WDI_TRACE_ENABLE_DAT_NAME "wdiTraceEnableDAT"
1612#define CFG_WDI_TRACE_ENABLE_PAL_NAME "wdiTraceEnablePAL"
1613#define CFG_WDI_TRACE_ENABLE_MIN (0)
1614#define CFG_WDI_TRACE_ENABLE_MAX (0x7f)
1615#define CFG_WDI_TRACE_ENABLE_DEFAULT (0xffffffff)
1616
1617#define HDD_MCASTBCASTFILTER_FILTER_NONE 0x00
1618#define HDD_MCASTBCASTFILTER_FILTER_ALL_MULTICAST 0x01
1619#define HDD_MCASTBCASTFILTER_FILTER_ALL_BROADCAST 0x02
1620#define HDD_MCASTBCASTFILTER_FILTER_ALL_MULTICAST_BROADCAST 0x03
Amar Singhalf3a6e762013-02-19 15:06:50 -08001621#define HDD_MULTICAST_FILTER_LIST 0x04
Jeff Johnson295189b2012-06-20 16:38:30 -07001622
1623/*
1624 *
1625 * SAP Auto Channel Enable
1626 * Notes:
1627 * Auto Channel selection for SAP configuration
1628 * 0 - Disable Auto Channel
1629 * 1 - Enable auto channel selection in auto mode.
1630 * When enable auto channel, channel provided by Supplicant will be ignored.
1631 *
1632 * Default configuration: Auto channel is disabled.
1633 */
1634
1635#define CFG_SAP_AUTO_CHANNEL_SELECTION_NAME "gApAutoChannelSelection"
1636
1637#define CFG_SAP_AUTO_CHANNEL_SELECTION_MIN ( 0 )
1638#define CFG_SAP_AUTO_CHANNEL_SELECTION_MAX ( 1 )
1639#define CFG_SAP_AUTO_CHANNEL_SELECTION_DEFAULT ( 0 )
1640
Peng Xufc6ad8e2014-09-25 13:16:43 +05301641/* ACS Scan band preference
1642 * 0 -- No preference
1643 * 1 -- Scan 2.4G first
1644 * 2 -- Scan 5G first
1645*/
1646#define CFG_SAP_SCAN_BAND_PREFERENCE "gAcsScanBandPreference"
1647#define CFG_SAP_SCAN_BAND_PREFERENCE_MIN (0)
1648#define CFG_SAP_SCAN_BAND_PREFERENCE_MAX (2)
1649#define CFG_SAP_SCAN_BAND_PREFERENCE_DEFAULT (0)
Peng Xuafc34e32014-09-25 13:23:55 +05301650#define CFG_ACS_BAND_SWITCH_THRESHOLD "gACSBandSwitchThreshold"
1651#define CFG_ACS_BAND_SWITCH_THRESHOLD_MIN (0)
1652#define CFG_ACS_BAND_SWITCH_THRESHOLD_MAX (4444)
1653/* 2 BSS, maximus RSSI -90 */
1654#define CFG_ACS_BAND_SWITCH_THRESHOLD_DEFAULT (296)
Peng Xufc6ad8e2014-09-25 13:16:43 +05301655
Madan Mohan Koyyalamudi69b34182013-01-16 08:51:40 +05301656/*BMPS Logic
1657 * Notes:
1658 * 1 - Then Host driver and above layers control the PS mechanism
1659 * 0 - Diver/Core Stack internally control the Power saving mechanism
1660 */
1661#define CFG_ANDRIOD_POWER_SAVE_NAME "isAndroidPsEn"
1662#define CFG_ANDRIOD_POWER_SAVE_MIN ( 0 )
1663#define CFG_ANDRIOD_POWER_SAVE_MAX ( 1 )
1664#define CFG_ANDRIOD_POWER_SAVE_DEFAULT ( 0 )
1665
Jeff Johnson295189b2012-06-20 16:38:30 -07001666
1667/*
1668 * Enable Dynamic DTIM
1669 * Options
1670 * 0 -Disable DynamicDTIM
1671 * 1 to 5 - SLM will switch to DTIM specified here when host suspends and
1672 * switch DTIM1 when host resumes */
1673#define CFG_ENABLE_DYNAMIC_DTIM_NAME "gEnableDynamicDTIM"
1674#define CFG_ENABLE_DYNAMIC_DTIM_MIN ( 0 )
1675#define CFG_ENABLE_DYNAMIC_DTIM_MAX ( 5 )
1676#define CFG_ENABLE_DYNAMIC_DTIM_DEFAULT ( 0 )
1677
Jeff Johnsone7245742012-09-05 17:12:55 -07001678/*
1679 * Enable First Scan 2G Only
1680 * Options
1681 * 0 - Disable First Scan 2G Option
1682 * 1 - Enable First Scan 2G Option
1683 */
1684#define CFG_ENABLE_FIRST_SCAN_2G_ONLY_NAME "gEnableFirstScan2GOnly"
1685#define CFG_ENABLE_FIRST_SCAN_2G_ONLY_MIN ( 0 )
1686#define CFG_ENABLE_FIRST_SCAN_2G_ONLY_MAX ( 1 )
1687#define CFG_ENABLE_FIRST_SCAN_2G_ONLY_DEFAULT ( 0 )
1688
1689/*
1690 * Skip DFS Channel in case of P2P Search
1691 * Options
1692 * 0 - Don't Skip DFS Channel in case of P2P Search
1693 * 1 - Skip DFS Channel in case of P2P Search
1694 */
1695#define CFG_ENABLE_SKIP_DFS_IN_P2P_SEARCH_NAME "gSkipDfsChannelInP2pSearch"
1696#define CFG_ENABLE_SKIP_DFS_IN_P2P_SEARCH_MIN ( 0 )
1697#define CFG_ENABLE_SKIP_DFS_IN_P2P_SEARCH_MAX ( 1 )
Leela Venkata Kiran Kumar Reddy Chirala911463f2013-02-22 18:01:15 -08001698#define CFG_ENABLE_SKIP_DFS_IN_P2P_SEARCH_DEFAULT ( 1 )
Jeff Johnsone7245742012-09-05 17:12:55 -07001699
1700/*
1701 * Ignore Dynamic Dtim in case of P2P
1702 * Options
1703 * 0 - Consider Dynamic Dtim incase of P2P
1704 * 1 - Ignore Dynamic Dtim incase of P2P
1705 */
1706#define CFG_IGNORE_DYNAMIC_DTIM_IN_P2P_MODE_NAME "gIgnoreDynamicDtimInP2pMode"
1707#define CFG_IGNORE_DYNAMIC_DTIM_IN_P2P_MODE_MIN ( 0 )
1708#define CFG_IGNORE_DYNAMIC_DTIM_IN_P2P_MODE_MAX ( 1 )
1709#define CFG_IGNORE_DYNAMIC_DTIM_IN_P2P_MODE_DEFAULT ( 0 )
1710
1711
Jeff Johnson295189b2012-06-20 16:38:30 -07001712#define CFG_ENABLE_AUTOMATIC_TX_POWER_CONTROL_NAME "gEnableAutomaticTxPowerControl"
1713#define CFG_ENABLE_AUTOMATIC_TX_POWER_CONTROL_MIN ( 0 )
1714#define CFG_ENABLE_AUTOMATIC_TX_POWER_CONTROL_MAX ( 1 )
1715#define CFG_ENABLE_AUTOMATIC_TX_POWER_CONTROL_DEFAULT ( 1 )
1716
1717#define CFG_SHORT_GI_40MHZ_NAME "gShortGI40Mhz"
1718#define CFG_SHORT_GI_40MHZ_MIN 0
1719#define CFG_SHORT_GI_40MHZ_MAX 1
1720#define CFG_SHORT_GI_40MHZ_DEFAULT 1
1721
1722/*
1723 * Enable / Disable MCC feature
1724 * Default: Enable
1725 */
Sudhir Sattayappa Kohallid9a4df62013-04-04 14:47:54 -07001726#define CFG_ENABLE_MCC_ENABLED_NAME "gEnableMCCMode"
Jeff Johnson295189b2012-06-20 16:38:30 -07001727#define CFG_ENABLE_MCC_ENABLED_MIN ( 0 )
1728#define CFG_ENABLE_MCC_ENABLED_MAX ( 1 )
Sudhir Sattayappa Kohallid9a4df62013-04-04 14:47:54 -07001729#define CFG_ENABLE_MCC_ENABLED_DEFAULT ( 1 )
Jeff Johnson295189b2012-06-20 16:38:30 -07001730
1731/*
Mohit Khanna7ed53f02012-09-11 17:52:10 -07001732 * Allow GO in MCC mode to accept different beacon interval than STA's.
1733 * Added for Wi-Fi Cert. 5.1.12
Sudhir Sattayappa Kohallid9a4df62013-04-04 14:47:54 -07001734 * Default: gAllowMCCGODiffBI = 2
1735 * If gAllowMCCGODiffBI = 1 // Set to 1 for WFA certification. GO Beacon
1736 * interval is not changed. MCC GO
1737 * doesn't work well in optimized way.
1738 * In worst scenario, it may invite STA
1739 * disconnection.
1740 * gAllowMCCGODiffBI = 2 //If set to 2 workaround 1 disassoc all the clients
Madan Mohan Koyyalamudi167b95e2012-11-27 15:53:38 -08001741 * and update beacon Interval
1742 * gAllowMCCGODiffBI = 3 //If set to 3 tear down the P2P link in auto/
1743 * Non-autonomous -GO case
Sudhir Sattayappa Kohallid9a4df62013-04-04 14:47:54 -07001744 * gAllowMCCGODiffBI = 4 //If set to 4 don't disconnect the P2P client
1745 * in autonomous/Non-autonomous -GO case update
1746 * the BI dynamically
Mohit Khanna7ed53f02012-09-11 17:52:10 -07001747 */
1748#define CFG_ALLOW_MCC_GO_DIFF_BI_NAME "gAllowMCCGODiffBI"
1749#define CFG_ALLOW_MCC_GO_DIFF_BI_MIN ( 0 )
Sudhir Sattayappa Kohallid9a4df62013-04-04 14:47:54 -07001750#define CFG_ALLOW_MCC_GO_DIFF_BI_MAX ( 4 )
Sudhir Sattayappa Kohallif63bb232013-05-01 12:28:43 -07001751#define CFG_ALLOW_MCC_GO_DIFF_BI_DEFAULT ( 4 )
Mohit Khanna7ed53f02012-09-11 17:52:10 -07001752
1753/*
Jeff Johnson295189b2012-06-20 16:38:30 -07001754 * Enable/Disable Thermal Mitigation feature
1755 * Default: Disable
1756 */
1757#define CFG_THERMAL_MIGRATION_ENABLE_NAME "gThermalMitigationEnable"
1758#define CFG_THERMAL_MIGRATION_ENABLE_MIN ( 0 )
1759#define CFG_THERMAL_MIGRATION_ENABLE_MAX ( 1 )
Anand N Sunkade7128d12014-12-31 15:20:09 +05301760#define CFG_THERMAL_MIGRATION_ENABLE_DEFAULT ( 1 )
Jeff Johnson295189b2012-06-20 16:38:30 -07001761
1762/*
1763 * Enable/Disable Modulated DTIM feature
1764 * Default: Disable
1765 */
1766#define CFG_ENABLE_MODULATED_DTIM_NAME "gEnableModulatedDTIM"
1767#define CFG_ENABLE_MODULATED_DTIM_MIN ( 0 )
1768#define CFG_ENABLE_MODULATED_DTIM_MAX ( 5 )
1769#define CFG_ENABLE_MODULATED_DTIM_DEFAULT ( 0 )
1770
Jeff Johnsond13512a2012-07-17 11:42:19 -07001771/*
1772 * Enable/Disable Multicast MAC Address List feature
1773 * Default: Disable
1774 */
1775#define CFG_MC_ADDR_LIST_ENABLE_NAME "gMCAddrListEnable"
1776#define CFG_MC_ADDR_LIST_ENABLE_MIN ( 0 )
1777#define CFG_MC_ADDR_LIST_ENABLE_MAX ( 1 )
1778#define CFG_MC_ADDR_LIST_ENABLE_DEFAULT ( 0 )
1779
Madan Mohan Koyyalamudidd11eaf2012-11-02 16:04:21 -07001780/* Set number of buffers to be advertised during ADDBA negotiation*/
1781#define CFG_NUM_BUFF_ADVERT_NAME "gNumBuffAdvert"
1782#define CFG_NUM_BUFF_ADVERT_MIN ( 0 )
1783#define CFG_NUM_BUFF_ADVERT_MAX ( 128 )
Leela Venkata Kiran Kumar Reddy Chirala911463f2013-02-22 18:01:15 -08001784#define CFG_NUM_BUFF_ADVERT_DEFAULT ( 64 )
Madan Mohan Koyyalamudidd11eaf2012-11-02 16:04:21 -07001785
Madan Mohan Koyyalamudid5f04ca2012-11-06 15:51:26 -08001786/*
1787 * Allow MCC to modify config
1788 */
1789#define CFG_MCC_CONFIG_PARAM_NAME "gMccAllowCfgModify"
1790#define CFG_MCC_CONFIG_PARAM_MIN ( 0x0000 )
1791#define CFG_MCC_CONFIG_PARAM_MAX ( 0x01ff )
1792#define CFG_MCC_CONFIG_PARAM_DEFAULT ( 0x000C )
1793
Pratik Bhalgat6bfd1422012-11-22 17:09:40 +05301794#define CFG_ENABLE_RX_STBC "gEnableRXSTBC"
1795#define CFG_ENABLE_RX_STBC_MIN ( 0 )
1796#define CFG_ENABLE_RX_STBC_MAX ( 1 )
1797#define CFG_ENABLE_RX_STBC_DEFAULT ( 1 )
1798
Gopichand Nakkala976e3252013-01-03 15:45:56 -08001799/*
1800 * Enable/Disable vsta based on MAX Assoc limit
1801 * defined in WCNSS_qcom_cfg.ini.
1802 */
1803#ifdef WLAN_SOFTAP_VSTA_FEATURE
1804#define CFG_VSTA_SUPPORT_ENABLE "gEnableVSTASupport"
1805#define CFG_VSTA_SUPPORT_ENABLE_MIN ( 0 )
1806#define CFG_VSTA_SUPPORT_ENABLE_MAX ( 1 )
1807#define CFG_VSTA_SUPPORT_ENABLE_DEFAULT ( 0 )
1808#endif
Pratik Bhalgat6bfd1422012-11-22 17:09:40 +05301809
Mohit Khanna698ba2a2012-12-04 15:08:18 -08001810#ifdef FEATURE_WLAN_TDLS
Hoonki Leebf870f32013-01-19 15:53:30 +05301811#define CFG_TDLS_SUPPORT_ENABLE "gEnableTDLSSupport"
1812#define CFG_TDLS_SUPPORT_ENABLE_MIN ( 0 )
1813#define CFG_TDLS_SUPPORT_ENABLE_MAX ( 1 )
1814#define CFG_TDLS_SUPPORT_ENABLE_DEFAULT ( 0 )
1815
1816#define CFG_TDLS_IMPLICIT_TRIGGER "gEnableTDLSImplicitTrigger"
1817#define CFG_TDLS_IMPLICIT_TRIGGER_MIN ( 0 )
1818#define CFG_TDLS_IMPLICIT_TRIGGER_MAX ( 1 )
1819#define CFG_TDLS_IMPLICIT_TRIGGER_DEFAULT ( 0 )
1820
1821#define CFG_TDLS_TX_STATS_PERIOD "gTDLSTxStatsPeriod"
Naresh Jayaramdb4514b2013-11-25 18:08:10 +05301822#define CFG_TDLS_TX_STATS_PERIOD_MIN ( 10 )
Hoonki Leebf870f32013-01-19 15:53:30 +05301823#define CFG_TDLS_TX_STATS_PERIOD_MAX ( 4294967295UL )
Hoonki Lee27511902013-03-14 18:19:06 -07001824#define CFG_TDLS_TX_STATS_PERIOD_DEFAULT ( 5000 )
Hoonki Leebf870f32013-01-19 15:53:30 +05301825
1826#define CFG_TDLS_TX_PACKET_THRESHOLD "gTDLSTxPacketThreshold"
1827#define CFG_TDLS_TX_PACKET_THRESHOLD_MIN ( 0 )
1828#define CFG_TDLS_TX_PACKET_THRESHOLD_MAX ( 4294967295UL )
Hoonki Lee27511902013-03-14 18:19:06 -07001829#define CFG_TDLS_TX_PACKET_THRESHOLD_DEFAULT ( 100 )
Hoonki Leebf870f32013-01-19 15:53:30 +05301830
1831#define CFG_TDLS_DISCOVERY_PERIOD "gTDLSDiscoveryPeriod"
Hoonki Lee27511902013-03-14 18:19:06 -07001832#define CFG_TDLS_DISCOVERY_PERIOD_MIN ( 5000 )
Hoonki Leebf870f32013-01-19 15:53:30 +05301833#define CFG_TDLS_DISCOVERY_PERIOD_MAX ( 4294967295UL )
Hoonki Lee27511902013-03-14 18:19:06 -07001834#define CFG_TDLS_DISCOVERY_PERIOD_DEFAULT ( 20000 )
Hoonki Leebf870f32013-01-19 15:53:30 +05301835
1836#define CFG_TDLS_MAX_DISCOVERY_ATTEMPT "gTDLSMaxDiscoveryAttempt"
Hoonki Lee27511902013-03-14 18:19:06 -07001837#define CFG_TDLS_MAX_DISCOVERY_ATTEMPT_MIN ( 1 )
Hoonki Leebf870f32013-01-19 15:53:30 +05301838#define CFG_TDLS_MAX_DISCOVERY_ATTEMPT_MAX ( 100 )
Hoonki Lee27511902013-03-14 18:19:06 -07001839#define CFG_TDLS_MAX_DISCOVERY_ATTEMPT_DEFAULT ( 3 )
Hoonki Leebf870f32013-01-19 15:53:30 +05301840
Chilam Ng01120412013-02-19 18:32:21 -08001841#define CFG_TDLS_IDLE_TIMEOUT "gTDLSIdleTimeout"
Hoonki Lee27511902013-03-14 18:19:06 -07001842#define CFG_TDLS_IDLE_TIMEOUT_MIN ( 2000 )
Chilam Ng01120412013-02-19 18:32:21 -08001843#define CFG_TDLS_IDLE_TIMEOUT_MAX ( 40000 )
1844#define CFG_TDLS_IDLE_TIMEOUT_DEFAULT ( 5000 )
1845
1846#define CFG_TDLS_IDLE_PACKET_THRESHOLD "gTDLSIdlePacketThreshold"
Naresh Jayaramdb4514b2013-11-25 18:08:10 +05301847#define CFG_TDLS_IDLE_PACKET_THRESHOLD_MIN ( 0 )
Chilam Ng01120412013-02-19 18:32:21 -08001848#define CFG_TDLS_IDLE_PACKET_THRESHOLD_MAX ( 40000 )
1849#define CFG_TDLS_IDLE_PACKET_THRESHOLD_DEFAULT ( 5 )
Hoonki Leebf870f32013-01-19 15:53:30 +05301850
1851#define CFG_TDLS_RSSI_HYSTERESIS "gTDLSRssiHysteresis"
1852#define CFG_TDLS_RSSI_HYSTERESIS_MIN ( 0 )
1853#define CFG_TDLS_RSSI_HYSTERESIS_MAX ( 100 )
1854#define CFG_TDLS_RSSI_HYSTERESIS_DEFAULT ( 100 )
Chilam Ng01120412013-02-19 18:32:21 -08001855
1856#define CFG_TDLS_RSSI_TRIGGER_THRESHOLD "gTDLSRSSITriggerThreshold"
1857#define CFG_TDLS_RSSI_TRIGGER_THRESHOLD_MIN ( -120 )
Shailender Karmuchi13c0d082013-03-26 14:41:39 -07001858#define CFG_TDLS_RSSI_TRIGGER_THRESHOLD_MAX ( 0 )
1859#define CFG_TDLS_RSSI_TRIGGER_THRESHOLD_DEFAULT ( -75 )
Chilam Ng01120412013-02-19 18:32:21 -08001860
1861#define CFG_TDLS_RSSI_TEARDOWN_THRESHOLD "gTDLSRSSITeardownThreshold"
1862#define CFG_TDLS_RSSI_TEARDOWN_THRESHOLD_MIN ( -120 )
1863#define CFG_TDLS_RSSI_TEARDOWN_THRESHOLD_MAX ( 0 )
1864#define CFG_TDLS_RSSI_TEARDOWN_THRESHOLD_DEFAULT ( -75 )
Gopichand Nakkala79ff85d2013-05-27 17:05:29 +05301865
1866#define CFG_TDLS_QOS_WMM_UAPSD_MASK_NAME "gTDLSUapsdMask" // ACs to setup U-APSD for TDLS Sta
1867#define CFG_TDLS_QOS_WMM_UAPSD_MASK_MIN (0)
1868#define CFG_TDLS_QOS_WMM_UAPSD_MASK_MAX (15)
1869#define CFG_TDLS_QOS_WMM_UAPSD_MASK_DEFAULT (0)
1870
1871#define CFG_TDLS_BUFFER_STA_SUPPORT_ENABLE "gEnableTDLSBufferSta"
1872#define CFG_TDLS_BUFFER_STA_SUPPORT_ENABLE_MIN (0)
1873#define CFG_TDLS_BUFFER_STA_SUPPORT_ENABLE_MAX (1)
1874#define CFG_TDLS_BUFFER_STA_SUPPORT_ENABLE_DEFAULT (1)
1875
1876#define CFG_TDLS_PUAPSD_INACTIVITY_TIME "gTDLSPuapsdInactivityTime"
1877#define CFG_TDLS_PUAPSD_INACTIVITY_TIME_MIN (0)
1878#define CFG_TDLS_PUAPSD_INACTIVITY_TIME_MAX (10)
1879#define CFG_TDLS_PUAPSD_INACTIVITY_TIME_DEFAULT (0)
1880
1881#define CFG_TDLS_PUAPSD_RX_FRAME_THRESHOLD "gTDLSPuapsdRxFrameThreshold"
1882#define CFG_TDLS_PUAPSD_RX_FRAME_THRESHOLD_MIN (10)
1883#define CFG_TDLS_PUAPSD_RX_FRAME_THRESHOLD_MAX (20)
1884#define CFG_TDLS_PUAPSD_RX_FRAME_THRESHOLD_DEFAULT (10)
Sunil Dutt41de4e22013-11-14 18:09:02 +05301885
1886#define CFG_TDLS_EXTERNAL_CONTROL "gTDLSExternalControl"
1887#define CFG_TDLS_EXTERNAL_CONTROL_MIN (0)
1888#define CFG_TDLS_EXTERNAL_CONTROL_MAX (1)
1889#define CFG_TDLS_EXTERNAL_CONTROL_DEFAULT (0)
Naresh Jayaramf73f3762014-02-04 16:13:20 +05301890
1891#define CFG_TDLS_OFF_CHANNEL_SUPPORT_ENABLE "gEnableTDLSOffChannel"
1892#define CFG_TDLS_OFF_CHANNEL_SUPPORT_ENABLE_MIN (0)
1893#define CFG_TDLS_OFF_CHANNEL_SUPPORT_ENABLE_MAX (1)
Pradeep Reddy POTTETI60ad2402015-02-26 16:48:21 +05301894#define CFG_TDLS_OFF_CHANNEL_SUPPORT_ENABLE_DEFAULT (1)
Pradeep Reddy POTTETIa9c80d52014-05-09 18:05:29 +05301895
1896#define CFG_TDLS_WMM_MODE_ENABLE "gEnableTDLSWmmMode"
1897#define CFG_TDLS_WMM_MODE_ENABLE_MIN (0)
1898#define CFG_TDLS_WMM_MODE_ENABLE_MAX (1)
Deepthi Gowri2bb29a62014-12-29 19:24:44 +05301899#define CFG_TDLS_WMM_MODE_ENABLE_DEFAULT (1)
Pradeep Reddy POTTETIedaeb5f2014-05-22 23:34:41 +05301900
1901#define CFG_TDLS_SCAN_COEX_SUPPORT_ENABLE "gEnableTDLSScanCoexistence"
1902#define CFG_TDLS_SCAN_COEX_SUPPORT_ENABLE_MIN (0)
1903#define CFG_TDLS_SCAN_COEX_SUPPORT_ENABLE_MAX (1)
1904#define CFG_TDLS_SCAN_COEX_SUPPORT_ENABLE_DEFAULT (0)
Agarwal Ashishef54a182014-12-16 15:07:31 +05301905
1906
1907/* if gEnableTDLSScan
1908 * 0: Same as gEnableTDLSScanCoexistence ; driver will do disconnect if
1909 * Peer is not buffer STA capable.
1910 * 1: Dut will scan in all cases.
1911 * 2: If peer is not buffer STA capable, use CTS2self to do scan.
1912*/
1913#define CFG_TDLS_SCAN_ENABLE "gEnableTDLSScan"
1914#define CFG_TDLS_SCAN_ENABLE_MIN (0)
1915#define CFG_TDLS_SCAN_ENABLE_MAX (2)
1916#define CFG_TDLS_SCAN_ENABLE_DEFAULT (0)
Gopichand Nakkala31649672013-02-27 12:15:51 -08001917#endif
Gopichand Nakkalafda520a2013-02-26 16:41:58 -08001918
Dino Mycledf0a5d92014-07-04 09:41:55 +05301919#ifdef WLAN_FEATURE_LINK_LAYER_STATS
1920#define CFG_LINK_LAYER_STATS_ENABLE "gEnableLLStats"
1921#define CFG_LINK_LAYER_STATS_ENABLE_MIN (0)
1922#define CFG_LINK_LAYER_STATS_ENABLE_MAX (1)
1923#define CFG_LINK_LAYER_STATS_ENABLE_DEFAULT (0)
1924#endif
1925
Dino Myclee8843b32014-07-04 14:21:45 +05301926#ifdef WLAN_FEATURE_EXTSCAN
1927#define CFG_EXTSCAN_ENABLE "gEnableEXTScan"
1928#define CFG_EXTSCAN_ENABLE_MIN (0)
1929#define CFG_EXTSCAN_ENABLE_MAX (1)
1930#define CFG_EXTSCAN_ENABLE_DEFAULT (0)
1931#endif
1932
Gopichand Nakkala31649672013-02-27 12:15:51 -08001933#ifdef WLAN_ACTIVEMODE_OFFLOAD_FEATURE
Leela Venkata Kiran Kumar Reddy Chirala911463f2013-02-22 18:01:15 -08001934#define CFG_ACTIVEMODE_OFFLOAD_ENABLE "gEnableActiveModeOffload"
1935#define CFG_ACTIVEMODE_OFFLOAD_ENABLE_MIN ( 0 )
1936#define CFG_ACTIVEMODE_OFFLOAD_ENABLE_MAX ( 1 )
1937#define CFG_ACTIVEMODE_OFFLOAD_ENABLE_DEFAULT ( 1 )
Mohit Khanna698ba2a2012-12-04 15:08:18 -08001938#endif
Madan Mohan Koyyalamudi0d40e662012-12-07 14:24:14 -08001939
1940/* Enable/Disable LPWR Image(cMEM uBSP) Transition */
1941#define CFG_ENABLE_LPWR_IMG_TRANSITION_NAME "gEnableLpwrImgTransition"
1942#define CFG_ENABLE_LPWR_IMG_TRANSITION_MIN ( 0 )
1943#define CFG_ENABLE_LPWR_IMG_TRANSITION_MAX ( 1 )
c_hpothu8b817122014-05-30 19:30:36 +05301944#define CFG_ENABLE_LPWR_IMG_TRANSITION_DEFAULT ( 1 )
Madan Mohan Koyyalamudi0d40e662012-12-07 14:24:14 -08001945
1946
Sandeep Puligilla2b6dc632012-12-17 14:44:16 -08001947/*
1948 * Scan Aging timeout value in seconds
1949 */
1950#define CFG_SCAN_AGING_PARAM_NAME "gScanAgingTime"
1951#define CFG_SCAN_AGING_PARAM_MIN ( 0 )
1952#define CFG_SCAN_AGING_PARAM_MAX ( 200 )
1953#define CFG_SCAN_AGING_PARAM_DEFAULT ( 60 )
1954
Gopichand Nakkalab2d2c312013-01-04 11:41:02 -08001955/* Config Param to enable the txLdpc capability
1956 * 0 - disable
1957 * 1 - HT LDPC enable
1958 * 2 - VHT LDPC enable
1959 * 3 - HT & VHT LDPC enable */
1960#define CFG_TX_LDPC_ENABLE_FEATURE "gTxLdpcEnable"
1961#define CFG_TX_LDPC_ENABLE_FEATURE_MIN ( 0 )
1962#define CFG_TX_LDPC_ENABLE_FEATURE_MAX ( 3 )
1963#define CFG_TX_LDPC_ENABLE_FEATURE_DEFAULT ( 0 )
Madan Mohan Koyyalamudi01cba042013-01-10 21:56:05 -08001964
1965/*
1966 * Enable / Disable MCC Adaptive Scheduler feature
1967 * Default: Enable
1968 */
1969#define CFG_ENABLE_MCC_ADATIVE_SCHEDULER_ENABLED_NAME "gEnableMCCAdaptiveScheduler"
1970#define CFG_ENABLE_MCC_ADATIVE_SCHEDULER_ENABLED_MIN ( 0 )
1971#define CFG_ENABLE_MCC_ADATIVE_SCHEDULER_ENABLED_MAX ( 1 )
Bansidhar Gopalacharia31c5022013-08-01 15:21:05 -07001972#define CFG_ENABLE_MCC_ADATIVE_SCHEDULER_ENABLED_DEFAULT ( 1 )
Madan Mohan Koyyalamudi01cba042013-01-10 21:56:05 -08001973
Shailender Karmuchi08f87c22013-01-17 12:51:24 -08001974#ifdef WLAN_FEATURE_11AC
1975#define CFG_VHT_SU_BEAMFORMEE_CAP_FEATURE "gTxBFEnable"
1976#define CFG_VHT_SU_BEAMFORMEE_CAP_FEATURE_MIN ( WNI_CFG_VHT_SU_BEAMFORMEE_CAP_STAMIN )
1977#define CFG_VHT_SU_BEAMFORMEE_CAP_FEATURE_MAX ( WNI_CFG_VHT_SU_BEAMFORMEE_CAP_STAMAX )
1978#define CFG_VHT_SU_BEAMFORMEE_CAP_FEATURE_DEFAULT ( WNI_CFG_VHT_SU_BEAMFORMEE_CAP_STADEF )
Shailender Karmuchicc3fe442013-02-16 18:18:33 -08001979
1980#define CFG_VHT_CSN_BEAMFORMEE_ANT_SUPPORTED "gTxBFCsnValue"
1981#define CFG_VHT_CSN_BEAMFORMEE_ANT_SUPPORTED_MIN ( WNI_CFG_VHT_CSN_BEAMFORMEE_ANT_SUPPORTED_STAMIN )
Abhishek Singhcb4d15c2014-11-04 16:09:49 +05301982#define CFG_VHT_CSN_BEAMFORMEE_ANT_SUPPORTED_MAX ( WNI_CFG_VHT_CSN_BEAMFORMEE_ANT_SUPPORTED_STAMAX - 1 )
1983#define CFG_VHT_CSN_BEAMFORMEE_ANT_SUPPORTED_DEFAULT ( WNI_CFG_VHT_CSN_BEAMFORMEE_ANT_SUPPORTED_STAMAX - 1 )
Shailender Karmuchicc3fe442013-02-16 18:18:33 -08001984
Abhishek Singh6d5d29c2014-07-03 14:25:22 +05301985#define CFG_VHT_ENABLE_MU_BFORMEE_CAP_FEATURE "gEnableMuBformee"
1986#define CFG_VHT_ENABLE_MU_BFORMEE_CAP_FEATURE_MIN ( 0 )
1987#define CFG_VHT_ENABLE_MU_BFORMEE_CAP_FEATURE_MAX ( 1 )
1988#define CFG_VHT_ENABLE_MU_BFORMEE_CAP_FEATURE_DEFAULT ( 1 )
1989
Abhishek Singhaa63bf22014-10-30 17:09:45 +05301990#define CFG_VHT_AMPDU_LEN_EXP_NAME "gVhtMaxAmpduLenExp"
1991#define CFG_VHT_AMPDU_LEN_EXP_MIN ( 0 )
1992#define CFG_VHT_AMPDU_LEN_EXP_MAX ( 7 )
Sushant Kaushik98ffee82015-01-08 17:15:40 +05301993#define CFG_VHT_AMPDU_LEN_EXP_DEFAULT ( 7 )
Abhishek Singhaa63bf22014-10-30 17:09:45 +05301994
Shailender Karmuchi08f87c22013-01-17 12:51:24 -08001995#endif
1996
Leela V Kiran Kumar Reddy Chiralab1f7d342013-02-11 00:27:02 -08001997
Madan Mohan Koyylamudi64267f72013-02-05 14:07:08 +05301998/*
1999 * SAP ALLOW All Channels
2000 */
2001#define CFG_SAP_ALLOW_ALL_CHANNEL_PARAM_NAME "gSapAllowAllChannel"
2002#define CFG_SAP_ALLOW_ALL_CHANNEL_PARAM_MIN ( 0 )
2003#define CFG_SAP_ALLOW_ALL_CHANNEL_PARAM_MAX ( 1 )
2004#define CFG_SAP_ALLOW_ALL_CHANNEL_PARAM_DEFAULT ( 0 )
2005
2006
Leela V Kiran Kumar Reddy Chiralab1f7d342013-02-11 00:27:02 -08002007#ifdef WLAN_FEATURE_11AC
2008#define CFG_DISABLE_LDPC_WITH_TXBF_AP "gDisableLDPCWithTxbfAP"
2009#define CFG_DISABLE_LDPC_WITH_TXBF_AP_MIN ( 0 )
2010#define CFG_DISABLE_LDPC_WITH_TXBF_AP_MAX ( 1 )
Leela Venkata Kiran Kumar Reddy Chirala69300092013-03-29 14:31:57 -07002011#define CFG_DISABLE_LDPC_WITH_TXBF_AP_DEFAULT ( 0 )
Leela V Kiran Kumar Reddy Chiralab1f7d342013-02-11 00:27:02 -08002012#endif
Tushnim Bhattacharyya9cdf6082013-04-21 16:33:30 -07002013
2014#define CFG_LIST_OF_NON_DFS_COUNTRY_CODE "gListOfNonDfsCountryCode"
2015#define CFG_LIST_OF_NON_DFS_COUNTRY_CODE_DEFAULT "JO,MA"
2016
Madan Mohan Koyyalamudiba793b62013-05-09 17:45:51 -07002017/*
2018 * IBSS Operating Channels for 2.4G and 5GHz channels
2019 */
2020#define CFG_IBSS_ADHOC_CHANNEL_5GHZ_NAME "gAdHocChannel5G"
2021#define CFG_IBSS_ADHOC_CHANNEL_5GHZ_MIN ( 36 )
2022#define CFG_IBSS_ADHOC_CHANNEL_5GHZ_MAX ( 165 )
2023#define CFG_IBSS_ADHOC_CHANNEL_5GHZ_DEFAULT ( 44 )
2024
2025#define CFG_IBSS_ADHOC_CHANNEL_24GHZ_NAME "gAdHocChannel24G"
2026#define CFG_IBSS_ADHOC_CHANNEL_24GHZ_MIN ( 1 )
2027#define CFG_IBSS_ADHOC_CHANNEL_24GHZ_MAX ( 14 )
2028#define CFG_IBSS_ADHOC_CHANNEL_24GHZ_DEFAULT ( 6 )
Shailender Karmuchia734f332013-04-19 14:02:48 -07002029
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002030#define CFG_LIST_OF_NON_11AC_COUNTRY_CODE "gListOfNon11acCountryCode"
2031#define CFG_LIST_OF_NON_11AC_COUNTRY_CODE_DEFAULT "RU,UA,ZA"
2032
2033/* Parameter to control VHT support in 2.4 GHz band */
2034#define CFG_ENABLE_VHT_FOR_24GHZ_NAME "gEnableVhtFor24GHzBand"
2035#define CFG_ENABLE_VHT_FOR_24GHZ_MIN (0)
2036#define CFG_ENABLE_VHT_FOR_24GHZ_MAX (1)
2037#define CFG_ENABLE_VHT_FOR_24GHZ_DEFAULT (0)
2038
Gopichand Nakkaladacbcb52013-04-18 16:41:54 +05302039
Gopichand Nakkala42bc89e2013-05-27 12:49:09 +05302040#define CFG_MAX_MEDIUM_TIME "gMaxMediumTime"
2041#define CFG_MAX_MEDIUM_TIME_STAMIN WNI_CFG_MAX_MEDIUM_TIME_STAMIN
2042#define CFG_MAX_MEDIUM_TIME_STAMAX WNI_CFG_MAX_MEDIUM_TIME_STAMAX
2043#define CFG_MAX_MEDIUM_TIME_STADEFAULT WNI_CFG_MAX_MEDIUM_TIME_STADEF
2044
Leo Chang64d68bc2013-06-04 15:40:52 -07002045/*
2046 * SAP/P2P-GO mode traffic monitor
2047 */
2048#define CFG_ENABLE_TRAFFIC_MONITOR "gEnableTrafficMonitor"
2049#define CFG_ENABLE_TRAFFIC_MONITOR_MIN ( 0 )
2050#define CFG_ENABLE_TRAFFIC_MONITOR_MAX ( 1 )
2051#define CFG_ENABLE_TRAFFIC_MONITOR_DEFAULT ( 0 )
2052
2053#define CFG_TRAFFIC_IDLE_TIMEOUT "gTrafficIdleTimeout"
2054#define CFG_TRAFFIC_IDLE_TIMEOUT_MIN ( 3000 )
2055#define CFG_TRAFFIC_IDLE_TIMEOUT_MAX ( 10000 )
2056#define CFG_TRAFFIC_IDLE_TIMEOUT_DEFAULT ( 5000 )
2057
Gopichand Nakkala154bda22013-06-11 17:41:22 +05302058/*
2059 * SCAN Offload
2060 */
2061#define CFG_SCAN_OFFLOAD_NAME "gEnableDirectedScanOffload"
2062#define CFG_SCAN_OFFLOAD_DISABLE ( 0 )
2063#define CFG_SCAN_OFFLOAD_ENABLE ( 1 )
2064#define CFG_SCAN_OFFLOAD_DEFAULT ( CFG_SCAN_OFFLOAD_DISABLE )
2065
Srinivas Girigowda830bbd02013-06-13 19:44:16 -07002066/*
2067 * Enable legacy fast roaming (LFR) on STA link during concurrent sessions
2068 */
2069#ifdef WLAN_FEATURE_ROAM_SCAN_OFFLOAD
2070#define CFG_ENABLE_FAST_ROAM_IN_CONCURRENCY "gEnableFastRoamInConcurrency"
2071#define CFG_ENABLE_FAST_ROAM_IN_CONCURRENCY_MIN ( 0 )
2072#define CFG_ENABLE_FAST_ROAM_IN_CONCURRENCY_MAX ( 1 )
2073#define CFG_ENABLE_FAST_ROAM_IN_CONCURRENCY_DEFAULT ( 1 )
2074#endif
2075
Yue Ma0fd23872013-08-01 15:56:47 -07002076/*
2077 * FlexConnectPowerFactor parameter
2078 * Default: Disable (0)
2079 */
2080#define CFG_FLEX_CONNECT_POWER_FACTOR_NAME "gFlexConnectPowerFactor"
2081#define CFG_FLEX_CONNECT_POWER_FACTOR_MIN ( 0 )
2082#define CFG_FLEX_CONNECT_POWER_FACTOR_MAX ( 9 )
2083#define CFG_FLEX_CONNECT_POWER_FACTOR_DEFAULT ( 0 )
2084
Ravi Joshid2ca7c42013-07-23 08:37:49 -07002085/*
2086 * Enable heart beat monitoring offload to FW
2087 */
2088#define CFG_ENABLE_HEART_BEAT_OFFLOAD "gEnableIbssHeartBeatOffload"
2089#define CFG_ENABLE_HEART_BEAT_OFFLOAD_MIN ( 0 )
2090#define CFG_ENABLE_HEART_BEAT_OFFLOAD_MAX ( 1 )
2091#define CFG_ENABLE_HEART_BEAT_OFFLOAD_DEFAULT ( 1 )
2092
Madan Mohan Koyyalamudica454572013-08-07 19:57:03 +05302093#define CFG_ANTENNA_DIVERSITY_PARAM_NAME "gAntennaDiversity"
2094#define CFG_ANTENNA_DIVERSITY_PARAM_MIN ( 0 )
2095#define CFG_ANTENNA_DIVERSITY_PARAM_MAX ( 3 )
2096#define CFG_ANTENNA_DIVERSITY_PARAM_DEFAULT ( 0 )
2097
Madan Mohan Koyyalamudid9383fd2013-08-13 09:27:30 +05302098#define CFG_ENABLE_SNR_MONITORING_NAME "gEnableSNRMonitoring"
2099#define CFG_ENABLE_SNR_MONITORING_MIN ( 0 )
2100#define CFG_ENABLE_SNR_MONITORING_MAX ( 1 )
2101#define CFG_ENABLE_SNR_MONITORING_DEFAULT ( 0 )
Sudhir Sattayappa Kohalli37620692013-08-05 14:02:26 -07002102//Macro to enable/disable dynamic timer
2103#define CFG_DYNAMIC_SPLIT_SCAN_NAME "gEnableDynSplitScan"
2104#define CFG_DYNAMIC_SPLIT_SCAN_MIN ( 0 )
2105#define CFG_DYNAMIC_SPLIT_SCAN_MAX ( 1 )
2106#define CFG_DYNAMIC_SPLIT_SCAN_DEFAULT ( 1 )
2107
2108//Macro to monitor the packet count
2109#define CFG_SPLIT_SCAN_TRAFFIC_MONITOR_THRSHLD_NAME "gSplitScanTxRxThreshold"
2110#define CFG_SPLIT_SCAN_TRAFFIC_MONITOR_THRSHLD_MIN ( 10 )
2111#define CFG_SPLIT_SCAN_TRAFFIC_MONITOR_THRSHLD_MAX ( 100 )
2112#define CFG_SPLIT_SCAN_TRAFFIC_MONITOR_THRSHLD_DEFAULT ( 50 )
2113
2114//Macro to handle the monitor timer value in milliseconds
2115#define CFG_SPLIT_SCAN_TRAFFIC_MONITOR_TIMER_NAME "gSplitScanTxRxTimer"
2116#define CFG_SPLIT_SCAN_TRAFFIC_MONITOR_TIMER_MIN ( 1000 )
2117#define CFG_SPLIT_SCAN_TRAFFIC_MONITOR_TIMER_MAX ( 10000 )
2118#define CFG_SPLIT_SCAN_TRAFFIC_MONITOR_TIMER_DEFAULT ( 5000 )
2119
Madan Mohan Koyyalamudi1d16f462013-08-27 16:25:34 +05302120#ifdef FEATURE_WLAN_SCAN_PNO
Hardik Kantilal Patel3dfd8792013-11-13 20:34:57 +05302121#define CFG_PNO_SCAN_SUPPORT "gPNOScanSupport"
2122#define CFG_PNO_SCAN_SUPPORT_ENABLE ( 1 )
2123#define CFG_PNO_SCAN_SUPPORT_DISABLE ( 0 )
2124#define CFG_PNO_SCAN_SUPPORT_DEFAULT ( 1 )
2125
Madan Mohan Koyyalamudi1d16f462013-08-27 16:25:34 +05302126#define CFG_PNO_SCAN_TIMER_REPEAT_VALUE "gPNOScanTimerRepeatValue"
2127#define CFG_PNO_SCAN_TIMER_REPEAT_VALUE_DEFAULT ( 6 )
2128#define CFG_PNO_SCAN_TIMER_REPEAT_VALUE_MIN ( 0 )
2129#define CFG_PNO_SCAN_TIMER_REPEAT_VALUE_MAX ( 0xffffffff )
2130#endif
2131
Agarwal Ashish8fa003e2014-11-14 17:20:32 +05302132/* Not supporting this feature in pronto */
krunal soni5afa96c2013-09-06 22:19:02 -07002133#define CFG_AMSDU_SUPPORT_IN_AMPDU_NAME "gAmsduSupportInAMPDU"
2134#define CFG_AMSDU_SUPPORT_IN_AMPDU_MIN (0)
Agarwal Ashish8fa003e2014-11-14 17:20:32 +05302135#define CFG_AMSDU_SUPPORT_IN_AMPDU_MAX (0)
krunal soni5afa96c2013-09-06 22:19:02 -07002136#define CFG_AMSDU_SUPPORT_IN_AMPDU_DEFAULT (0) //disabled
2137
Srinivas Girigowda41c7c5f2013-10-21 19:01:38 -07002138/* Prefer connecting to 5G AP even if its RSSI is lower by
2139 gSelect5GHzMargin dBm than 2.4G AP.
2140This feature requires the dependent cfg.ini "gRoamPrefer5GHz" set to 1 */
2141#define CFG_STRICT_5GHZ_PREF_BY_MARGIN "gSelect5GHzMargin"
2142#define CFG_STRICT_5GHZ_PREF_BY_MARGIN_MIN (0)
2143#define CFG_STRICT_5GHZ_PREF_BY_MARGIN_MAX (60)
2144#define CFG_STRICT_5GHZ_PREF_BY_MARGIN_DEFAULT (0) //set 0 to disable
2145
krunal sonie9002db2013-11-25 14:24:17 -08002146#define CFG_COALESING_IN_IBSS_NAME "gCoalesingInIBSS"
2147#define CFG_COALESING_IN_IBSS_MIN (0)
2148#define CFG_COALESING_IN_IBSS_MAX (1)
2149#define CFG_COALESING_IN_IBSS_DEFAULT (0) //disabled
2150
Kiet Lam4bbd3cb2013-11-07 20:03:49 +05302151#define CFG_DISABLE_ATH_NAME "gAthDisable"
2152#define CFG_DISABLE_ATH_MIN (0)
2153#define CFG_DISABLE_ATH_MAX (1)
2154#define CFG_DISABLE_ATH_DEFAULT (0)
2155
Arif Hussaind5218912013-12-05 01:10:55 -08002156//Enable Memory Debug
2157#ifdef MEMORY_DEBUG
2158#define CFG_ENABLE_MEMORY_DEBUG_NAME "gEnableMemoryDebug"
2159#define CFG_ENABLE_MEMORY_DEBUG_MIN (0)
2160#define CFG_ENABLE_MEMORY_DEBUG_MAX (1)
2161#define CFG_ENABLE_MEMORY_DEBUG_DEFAULT (0)
2162#endif
2163
Tushnim Bhattacharyya9889e792013-12-19 18:18:36 -08002164#define CFG_OVERRIDE_COUNTRY_CODE "gStaCountryCode"
2165#define CFG_OVERRIDE_COUNTRY_CODE_DEFAULT "000"
2166
AnjaneeDevi Kapparapu50239e32014-01-07 18:09:33 +05302167/*Once the period expires the RSSI will be compared with Threshold
2168 * and if needed trigger events will be raised
2169 */
2170#define CFG_ASD_PROBE_INTERVAL_NAME "gAsdProbeInterval"
2171#define CFG_ASD_PROBE_INTERVAL_DEFAULT (50)
Anand N Sunkad9511cd22015-03-10 16:49:34 +05302172#define CFG_ASD_PROBE_INTERVAL_MIN (1)
2173#define CFG_ASD_PROBE_INTERVAL_MAX (500)
AnjaneeDevi Kapparapu50239e32014-01-07 18:09:33 +05302174
2175/* RSSI Threshold used to trigger probing activity/selection process*/
2176#define CFG_ASD_TRIGGER_THRESHOLD_NAME "gAsdTriggerThreshold"
Anand N Sunkad9511cd22015-03-10 16:49:34 +05302177#define CFG_ASD_TRIGGER_THRESHOLD_DEFAULT (-60)
2178#define CFG_ASD_TRIGGER_THRESHOLD_MIN (-100)
2179#define CFG_ASD_TRIGGER_THRESHOLD_MAX (-10)
AnjaneeDevi Kapparapu50239e32014-01-07 18:09:33 +05302180
2181/*RSSI Hysteresis Threshold for RSSI-RTT*/
2182#define CFG_ASD_RTT_RSSI_HYST_THRESHOLD_NAME "gAsdRTTRssiHystThreshold"
Anand N Sunkad9511cd22015-03-10 16:49:34 +05302183#define CFG_ASD_RTT_RSSI_HYST_THRESHOLD_DEFAULT (3)
AnjaneeDevi Kapparapu50239e32014-01-07 18:09:33 +05302184#define CFG_ASD_RTT_RSSI_HYST_THRESHOLD_MIN (0)
Anand N Sunkad9511cd22015-03-10 16:49:34 +05302185#define CFG_ASD_RTT_RSSI_HYST_THRESHOLD_MAX (5)
Kiet Lamd83bd8f2014-01-14 22:17:30 -08002186
Leela Venkata Kiran Kumar Reddy Chirala22c159b2013-12-23 18:19:13 -08002187//Enable debug for remain on channel issues
2188#define CFG_DEBUG_P2P_REMAIN_ON_CHANNEL_NAME "gDebugP2pRemainOnChannel"
2189#define CFG_DEBUG_P2P_REMAIN_ON_CHANNEL_DEFAULT ( 0 )
2190#define CFG_DEBUG_P2P_REMAIN_ON_CHANNEL_MIN ( 0 )
2191#define CFG_DEBUG_P2P_REMAIN_ON_CHANNEL_MAX ( 1 )
2192
2193#define CFG_CTS2S_DURING_BTC_SCO_NAME "btcCTS2SduringSCO"
2194#define CFG_CTS2S_DURING_BTC_SCO_DEFAULT WNI_CFG_BTC_CTS2S_DURING_SCO_STADEF
2195#define CFG_CTS2S_DURING_BTC_SCO_MIN WNI_CFG_BTC_CTS2S_DURING_SCO_STAMIN
2196#define CFG_CTS2S_DURING_BTC_SCO_MAX WNI_CFG_BTC_CTS2S_DURING_SCO_STAMAX
Tushnim Bhattacharyyaa3ba5a52014-01-30 11:37:33 -08002197
Naresh Jayaramf5bbe3f2014-12-29 18:32:47 +05302198#define CFG_BTC_FAST_WLAN_CONN_PREF "gBtcFastWlanConnPref"
2199#define CFG_BTC_FAST_WLAN_CONN_PREF_DEFAULT ( 1 )
2200#define CFG_BTC_FAST_WLAN_CONN_PREF_MIN ( 0 )
2201#define CFG_BTC_FAST_WLAN_CONN_PREF_MAX ( 1 )
Kalikinkar dharad73a9bd2014-01-28 22:42:34 -08002202
Tushnim Bhattacharyyaa3ba5a52014-01-30 11:37:33 -08002203/*
2204 * Connection related log Enable/Disable.
2205 * 0x1 - Enable mgmt pkt logs (no probe req/rsp).
2206 * 0x2 - Enable EAPOL pkt logs.
2207 * 0x4 - Enable DHCP pkt logs.
2208 * 0x0 - Disable all the above connection related logs.
2209 */
2210#define CFG_ENABLE_DEBUG_CONNECT_ISSUE "gEnableDebugLog"
2211#define CFG_ENABLE_DEBUG_CONNECT_ISSUE_MIN (0)
2212#define CFG_ENABLE_DEBUG_CONNECT_ISSUE_MAX (0xFF)
2213#define CFG_ENABLE_DEBUG_CONNECT_ISSUE_DEFAULT (0)
2214
Kalikinkar dharad73a9bd2014-01-28 22:42:34 -08002215#define CFG_ENABLE_STRICT_REGULATORY_FOR_FCC_NAME "gEnableStrictRegulatoryForFCC"
2216#define CFG_ENABLE_STRICT_REGULATORY_FOR_FCC_MIN ( 0 )
2217#define CFG_ENABLE_STRICT_REGULATORY_FOR_FCC_MAX ( 1 )
Agarwal Ashish0661dcd2014-05-20 20:16:41 +05302218#define CFG_ENABLE_STRICT_REGULATORY_FOR_FCC_DEFAULT ( 0 )
Kalikinkar dharad73a9bd2014-01-28 22:42:34 -08002219
Rashmi Ramannabd3feb72014-02-25 16:14:48 +05302220#define CFG_ADVERTISE_CONCURRENT_OPERATION_NAME "gAdvertiseConcurrentOperation"
2221#define CFG_ADVERTISE_CONCURRENT_OPERATION_DEFAULT ( 1 )
2222#define CFG_ADVERTISE_CONCURRENT_OPERATION_MIN ( 0 )
2223#define CFG_ADVERTISE_CONCURRENT_OPERATION_MAX ( 1 )
Kalikinkar dharad73a9bd2014-01-28 22:42:34 -08002224
c_hpothu5bd1ae42014-03-07 20:28:22 +05302225#define CFG_RA_FILTER_ENABLE_NAME "gRAFilterEnable"
c_hpothubb73fc42014-08-06 17:25:15 +05302226#define CFG_RA_FILTER_ENABLE_DEFAULT (0)
c_hpothu5bd1ae42014-03-07 20:28:22 +05302227#define CFG_RA_FILTER_ENABLE_MIN (0)
2228#define CFG_RA_FILTER_ENABLE_MAX (1)
2229
2230#define CFG_RA_RATE_LIMIT_INTERVAL_NAME "gRARateLimitInterval"
2231#define CFG_RA_RATE_LIMIT_INTERVAL_DEFAULT (60)
2232#define CFG_RA_RATE_LIMIT_INTERVAL_MIN (0)
2233#define CFG_RA_RATE_LIMIT_INTERVAL_MAX (60)
2234
Sandeep Puligillac80f26e2014-03-11 18:36:10 +05302235#define CFG_ROAMING_DFS_CHANNEL_NAME "gAllowDFSChannelRoam"
2236#define CFG_ROAMING_DFS_CHANNEL_MIN (0)
2237#define CFG_ROAMING_DFS_CHANNEL_MAX (1)
2238#define CFG_ROAMING_DFS_CHANNEL_DEFAULT (0)
2239
c_hpothu059edb02014-03-12 21:44:28 +05302240
Vinay Krishna Erannad938c422014-03-10 17:14:21 +05302241#ifdef WLAN_LOGGING_SOCK_SVC_ENABLE
2242//Enable WLAN Logging to app space
2243#define CFG_WLAN_LOGGING_SUPPORT_NAME "wlanLoggingEnable"
2244#define CFG_WLAN_LOGGING_SUPPORT_ENABLE ( 1 )
2245#define CFG_WLAN_LOGGING_SUPPORT_DISABLE ( 0 )
2246#define CFG_WLAN_LOGGING_SUPPORT_DEFAULT ( 1 )
2247
2248//Enable FATAL and ERROR logs for kmsg console
2249#define CFG_WLAN_LOGGING_FE_CONSOLE_SUPPORT_NAME "wlanLoggingFEToConsole"
2250#define CFG_WLAN_LOGGING_FE_CONSOLE_SUPPORT_ENABLE ( 1 )
2251#define CFG_WLAN_LOGGING_FE_CONSOLE_SUPPORT_DISABLE ( 0 )
Vinay Krishna Eranna82337362014-09-06 18:19:03 +05302252#define CFG_WLAN_LOGGING_FE_CONSOLE_SUPPORT_DEFAULT ( 1 )
Vinay Krishna Erannad938c422014-03-10 17:14:21 +05302253
2254//Number of buffers to be used for WLAN logging
2255#define CFG_WLAN_LOGGING_NUM_BUF_NAME "wlanLoggingNumBuf"
Vinay Krishna Eranna0b112622014-04-21 20:17:57 +05302256#define CFG_WLAN_LOGGING_NUM_BUF_MIN ( 4 )
Vinay Krishna Erannad938c422014-03-10 17:14:21 +05302257#define CFG_WLAN_LOGGING_NUM_BUF_MAX ( 64 )
2258#define CFG_WLAN_LOGGING_NUM_BUF_DEFAULT ( 32 )
2259#endif //WLAN_LOGGING_SOCK_SVC_ENABLE
2260
c_hpothu059edb02014-03-12 21:44:28 +05302261#define CFG_INITIAL_DWELL_TIME_NAME "gInitialDwellTime"
2262#define CFG_INITIAL_DWELL_TIME_DEFAULT (0)
2263#define CFG_INITIAL_DWELL_TIME_MIN (0)
2264#define CFG_INITIAL_DWELL_TIME_MAX (100)
2265
c_hpothu0d5a7352014-03-22 12:30:25 +05302266#define CFG_INITIAL_SCAN_SKIP_DFS_CH_NAME "gInitialScanSkipDFSCh"
2267#define CFG_INITIAL_SCAN_SKIP_DFS_CH_DEFAULT (1)
2268#define CFG_INITIAL_SCAN_SKIP_DFS_CH_MIN (0)
2269#define CFG_INITIAL_SCAN_SKIP_DFS_CH_MAX (1)
c_hpothu059edb02014-03-12 21:44:28 +05302270
c_hpothu2d0f1c42014-04-01 18:38:51 +05302271#define CFG_BTC_FATAL_HID_NSNIFF_BLK_GUIDANCE_NAME "btcFatalHidnSniffBlkGuidance"
2272#define CFG_BTC_FATAL_HID_NSNIFF_BLK_GUIDANCE_MIN ( 0 )
2273#define CFG_BTC_FATAL_HID_NSNIFF_BLK_GUIDANCE_MAX ( 2 )
2274#define CFG_BTC_FATAL_HID_NSNIFF_BLK_GUIDANCE_DEFAULT ( 2 )
2275
2276#define CFG_BTC_CRITICAL_HID_NSNIFF_BLK_GUIDANCE_NAME "btcCriticalHidnSniffBlkGuidance"
2277#define CFG_BTC_CRITICAL_HID_NSNIFF_BLK_GUIDANCE_MIN ( 0 )
2278#define CFG_BTC_CRITICAL_HID_NSNIFF_BLK_GUIDANCE_MAX ( 1 )
2279#define CFG_BTC_CRITICAL_HID_NSNIFF_BLK_GUIDANCE_DEFAULT ( 1 )
2280
2281#define CFG_BTC_DYN_A2DP_TX_QUEUE_THOLD_NAME "btcA2dpTxQueueThold"
2282#define CFG_BTC_DYN_A2DP_TX_QUEUE_THOLD_MIN ( 0 )
2283#define CFG_BTC_DYN_A2DP_TX_QUEUE_THOLD_MAX ( 1 )
2284#define CFG_BTC_DYN_A2DP_TX_QUEUE_THOLD_DEFAULT ( 0 )
2285
2286#define CFG_BTC_DYN_OPP_TX_QUEUE_THOLD_NAME "btcOppTxQueueThold"
2287#define CFG_BTC_DYN_OPP_TX_QUEUE_THOLD_MIN ( 0 )
2288#define CFG_BTC_DYN_OPP_TX_QUEUE_THOLD_MAX ( 3 )
2289#define CFG_BTC_DYN_OPP_TX_QUEUE_THOLD_DEFAULT ( 1 )
2290
Chet Lanctotfadc8e32014-04-24 14:50:52 -07002291#ifdef WLAN_FEATURE_11W
2292#define CFG_PMF_SA_QUERY_MAX_RETRIES_NAME "pmfSaQueryMaxRetries"
2293#define CFG_PMF_SA_QUERY_MAX_RETRIES_DEFAULT ( 5 )
2294#define CFG_PMF_SA_QUERY_MAX_RETRIES_MIN ( 0 )
2295#define CFG_PMF_SA_QUERY_MAX_RETRIES_MAX ( 20 )
2296
2297#define CFG_PMF_SA_QUERY_RETRY_INTERVAL_NAME "pmfSaQueryRetryInterval"
2298#define CFG_PMF_SA_QUERY_RETRY_INTERVAL_DEFAULT ( 200 )
2299#define CFG_PMF_SA_QUERY_RETRY_INTERVAL_MIN ( 0 )
2300#define CFG_PMF_SA_QUERY_RETRY_INTERVAL_MAX ( 2000 )
2301#endif
2302
Rashmi Ramanna68b309c2014-05-20 11:52:22 +05302303#define CFG_DEFER_IMPS_FOR_TIME_NAME "gDeferIMPStime"
2304#define CFG_DEFER_IMPS_FOR_TIME_MIN (0)
2305#define CFG_DEFER_IMPS_FOR_TIME_MAX (500)
2306#define CFG_DEFER_IMPS_FOR_TIME_DEFAULT (200)
2307
Abhishek Singhde51a412014-05-20 19:17:26 +05302308/* If last disconnection was due to HB failure and we reconnect
2309 * to same AP next time, send Deauth before starting connection
2310 */
2311#define CFG_ENABLE_DEAUTH_BEFORE_CONNECTION "gSendDeauthBeforeCon"
2312#define CFG_ENABLE_DEAUTH_BEFORE_CONNECTION_MIN (0)
2313#define CFG_ENABLE_DEAUTH_BEFORE_CONNECTION_MAX (1)
2314#define CFG_ENABLE_DEAUTH_BEFORE_CONNECTION_DEFAULT (0)
Rashmi Ramanna68b309c2014-05-20 11:52:22 +05302315
Siddharth Bhala3a5cb42014-09-29 21:13:13 +05302316#define CFG_ENABLE_MAC_ADDR_SPOOFING "gEnableMacAddrSpoof"
2317#define CFG_ENABLE_MAC_ADDR_SPOOFING_MIN (0)
2318#define CFG_ENABLE_MAC_ADDR_SPOOFING_MAX (1)
2319#define CFG_ENABLE_MAC_ADDR_SPOOFING_DEFAULT (0)
2320
Siddharth Bhal4a432552015-02-27 01:09:31 +05302321#define CFG_ENABLE_MGMT_LOGGING "gEnableMgmtLogging"
2322#define CFG_ENABLE_MGMT_LOGGING_MIN (0)
2323#define CFG_ENABLE_MGMT_LOGGING_MAX (1)
2324#define CFG_ENABLE_MGMT_LOGGING_DEFAULT (1)
2325
2326#define CFG_ENABLE_BMUHW_TRACING "gEnableBMUHWtracing"
2327#define CFG_ENABLE_BMUHW_TRACING_MIN (0)
2328#define CFG_ENABLE_BMUHW_TRACING_MAX (1)
2329#define CFG_ENABLE_BMUHW_TRACING_DEFAULT (0)
2330
Pradeep Reddy POTTETI5c2e16d2014-06-27 16:47:38 +05302331#define CFG_ENABLE_CH_AVOID "gEnableChannelAvoidance"
2332#define CFG_ENABLE_CH_AVOID_MIN ( 0 )
2333#define CFG_ENABLE_CH_AVOID_MAX ( 1 )
2334#define CFG_ENABLE_CH_AVOID_DEFAULT ( 1 )
2335
Agarwal Ashish51325b52014-06-16 16:50:49 +05302336#define CFG_MAX_CONCURRENT_CONNECTIONS_NAME "gMaxConcurrentActiveSessions"
2337#define CFG_MAX_CONCURRENT_CONNECTIONS_DEFAULT ( 2 )
2338#define CFG_MAX_CONCURRENT_CONNECTIONS_MIN ( 1 )
2339#define CFG_MAX_CONCURRENT_CONNECTIONS_MAX ( 4 )
2340
Hardik Kantilal Patel086e0a32014-11-20 14:56:26 +05302341#ifdef WLAN_FEATURE_AP_HT40_24G
2342#define CFG_ENABLE_HT_2040_COEX "gApHT4024G"
2343#define CFG_ENABLE_HT_2040_COEX_MIN ( 0 )
2344#define CFG_ENABLE_HT_2040_COEX_MAX ( 1 )
2345#define CFG_ENABLE_HT_2040_COEX_DEFAULT ( 0 )
2346#endif
2347
Mihir Shetec34258c2014-07-30 17:50:27 +05302348//Enable Dynamic WMM PS support
2349#define CFG_ENABLE_DYNAMIC_WMMPS_NAME "gEnableDynamicWMMPS"
2350#define CFG_ENABLE_DYNAMIC_WMM_PS_MIN (0)
2351#define CFG_ENABLE_DYNAMIC_WMM_PS_MAX (1)
2352#define CFG_ENABLE_DYNAMIC_WMM_PS_DEFAULT (1)
2353
2354/*
2355 * If the number of consecutive SPs for which the firmware has sent
2356 * trigger frame (because more data bit was set to 1 at end of SP)
2357 * when dynamic WMM PS support is enabled exceeds this value then
2358 * firmware will come out of power save mode
2359 */
2360#define CFG_MAX_UAPSD_CONSEC_SP_NAME "gMaxUapsdConsecSP"
2361#define CFG_MAX_UAPSD_CONSEC_SP_DEFAULT ( 10 )
2362#define CFG_MAX_UAPSD_CONSEC_SP_MIN ( 0 )
2363#define CFG_MAX_UAPSD_CONSEC_SP_MAX ( 500 )
2364
2365/*
2366 * If the number of frames received in the "gUapsdConsecRxCntMeasWindow"
2367 * exceeds this value then firmware will come out of power save mode.
2368 * Comes into effect only when dynamic WMM PS is enabled.
2369 */
2370#define CFG_MAX_UAPSD_CONSEC_RX_CNT_NAME "gMaxUapsdConsecRxCnt"
2371#define CFG_MAX_UAPSD_CONSEC_RX_CNT_DEFAULT ( 50 )
2372#define CFG_MAX_UAPSD_CONSEC_RX_CNT_MIN ( 0 )
2373#define CFG_MAX_UAPSD_CONSEC_RX_CNT_MAX ( 5000 )
2374
2375/*
2376 * If the number of frames transmitted in the "gUapsdConsecTxCntMeasWindow"
2377 * exceeds this value then firmware will come out of power save mode.
2378 * Comes into effect only when dynamic WMM PS is enabled.
2379 */
2380#define CFG_MAX_UAPSD_CONSEC_TX_CNT_NAME "gMaxUapsdConsecTxCnt"
2381#define CFG_MAX_UAPSD_CONSEC_TX_CNT_DEFAULT ( 50 )
2382#define CFG_MAX_UAPSD_CONSEC_TX_CNT_MIN ( 0 )
2383#define CFG_MAX_UAPSD_CONSEC_TX_CNT_MAX ( 5000 )
2384
2385// Read the description in "gMaxUapsdConsecRxCnt", the interval is in msec
2386#define CFG_UAPSD_CONSEC_RX_CNT_MEAS_WINDOW_NAME "gUapsdConsecRxCntMeasWindow"
2387#define CFG_UAPSD_CONSEC_RX_CNT_MEAS_WINDOW_DEFAULT ( 500 )
2388#define CFG_UAPSD_CONSEC_RX_CNT_MEAS_WINDOW_MIN ( 50 )
2389#define CFG_UAPSD_CONSEC_RX_CNT_MEAS_WINDOW_MAX ( 50000 )
2390
2391// Read the description in "gMaxUapsdConsecTxCnt", the interval is in msec
2392#define CFG_UAPSD_CONSEC_TX_CNT_MEAS_WINDOW_NAME "gUapsdConsecTxCntMeasWindow"
2393#define CFG_UAPSD_CONSEC_TX_CNT_MEAS_WINDOW_DEFAULT ( 500 )
2394#define CFG_UAPSD_CONSEC_TX_CNT_MEAS_WINDOW_MIN ( 50 )
2395#define CFG_UAPSD_CONSEC_TX_CNT_MEAS_WINDOW_MAX ( 50000 )
2396
2397/*
2398 * number of PS poll frames that can be sent by the firmware to retrieve
2399 * Data before the firmware comes out of power save mode for an AC
2400 * which is neither Delivery or Trigger enabled when dynamic WMM PS
2401 * is configured.
2402 * Comes into effect only when dynamic WMM PS is enabled.
2403*/
2404#define CFG_UAPSD_PSPOLL_NAME "gMaxPsPollInWmmUapsdMode"
2405#define CFG_UAPSD_PSPOLL_MIN (0)
2406#define CFG_UAPSD_PSPOLL_MAX (255)
2407#define CFG_UAPSD_PSPOLL_DEFAULT (0)
2408
2409/*
2410 * If the number of itervals for which the firmware detects no activity
2411 * on the WMM PS enabled ACs exceeds this value then the firmware will
2412 * go to power save mode. The length of the interval is dynamically
2413 * calculated by the firmware depending on the configured service
2414 * intervals.
2415 * Comes into effect only when dynamic WMM PS is enabled.
2416 */
2417#define CFG_MAX_UAPSD_INACT_INTVL_NAME "gMaxUapsdInactivityIntervals"
2418#define CFG_MAX_UAPSD_INACT_INTVL_MIN (1)
2419#define CFG_MAX_UAPSD_INACT_INTVL_MAX (255)
2420#define CFG_MAX_UAPSD_INACT_INTVL_DEFAULT (10)
Dino Mycled9b7cc12014-09-04 18:43:07 +05302421
c_hpothu03d961b2014-09-19 16:45:00 +05302422#define CFG_BURST_MODE_BE_TXOP_VALUE "gBurstModeTXOPValue"
2423#define CFG_BURST_MODE_BE_TXOP_VALUE_MIN ( 0 )
2424#define CFG_BURST_MODE_BE_TXOP_VALUE_MAX ( 12288 )
2425#define CFG_BURST_MODE_BE_TXOP_VALUE_DEFAULT ( 0 )
2426
Ganesh Kondabattinibabfb492014-12-17 20:25:29 +05302427#define CFG_P2P_LISTEN_DEFER_INTERVAL_NAME "gP2PListenDeferInterval"
2428#define CFG_P2P_LISTEN_DEFER_INTERVAL_MIN ( 100 )
2429#define CFG_P2P_LISTEN_DEFER_INTERVAL_MAX ( 200 )
2430#define CFG_P2P_LISTEN_DEFER_INTERVAL_DEFAULT ( 100 )
Chandrasekaran, Manishekar5cb0acd2014-12-23 20:06:52 +05302431
2432#define CFG_BTC_ENABLE_IND_TIMER_VALUE "gBtcEnableIndTimerVal"
2433#define CFG_BTC_ENABLE_IND_TIMER_VALUE_MIN ( 5 )
2434#define CFG_BTC_ENABLE_IND_TIMER_VALUE_MAX ( 60 )
2435#define CFG_BTC_ENABLE_IND_TIMER_VALUE_DEFAULT ( 60 )
2436
Katya Nigama6fbf662015-03-17 18:35:47 +05302437#define CFG_DXE_REPLENISH_RX_TIMER_VALUE "gDXEReplenishRXTimerVal"
2438#define CFG_DXE_REPLENISH_RX_TIMER_VALUE_MIN ( 0 )
2439#define CFG_DXE_REPLENISH_RX_TIMER_VALUE_MAX ( 20000 )
2440#define CFG_DXE_REPLENISH_RX_TIMER_VALUE_DEFAULT ( 6000 )
2441
2442#define CFG_DXE_SSR_ENABLE "gDxeSSREnable"
2443#define CFG_DXE_SSR_ENABLE_DEFAULT ( 1 )
2444#define CFG_DXE_SSR_ENABLE_MIN ( 0 )
2445#define CFG_DXE_SSR_ENABLE_MAX ( 1 )
2446
Jeff Johnson295189b2012-06-20 16:38:30 -07002447/*---------------------------------------------------------------------------
2448 Type declarations
2449 -------------------------------------------------------------------------*/
2450
2451typedef struct
2452{
2453 //Bitmap to track what is explicitly configured
2454 DECLARE_BITMAP(bExplicitCfg, MAX_CFG_INI_ITEMS);
2455
2456 //Config parameters
2457 v_U32_t RTSThreshold;
2458 v_U32_t FragmentationThreshold;
2459 v_U32_t nCheckForHangTime;
2460 v_U32_t Calibration;
2461 v_U32_t CalibrationPeriod;
2462 v_U8_t OperatingChannel;
2463 v_BOOL_t ShortSlotTimeEnabled;
2464 v_BOOL_t Is11dSupportEnabled;
Madan Mohan Koyyalamudi8db1c942013-01-10 15:24:29 -08002465 v_BOOL_t Is11hSupportEnabled;
Agarwal Ashishbd3e10b2014-11-24 19:19:46 +05302466 v_U32_t nDeferScanTimeInterval;
Jeff Johnson295189b2012-06-20 16:38:30 -07002467 v_BOOL_t fEnforce11dChannels;
2468 v_BOOL_t fSupplicantCountryCodeHasPriority;
2469 v_BOOL_t fEnforceCountryCodeMatch;
2470 v_BOOL_t fEnforceDefaultDomain;
2471 v_U32_t Cfg1Id;
2472 v_U32_t Cfg2Id;
2473 v_U32_t Cfg3Id;
2474 v_U32_t Cfg4Id;
2475 v_U32_t Cfg5Id;
2476 v_U32_t Cfg1Value;
2477 v_U32_t Cfg2Value;
2478 v_U32_t Cfg3Value;
2479 v_U32_t Cfg4Value;
2480 v_U32_t Cfg5Value;
2481 v_U32_t HeartbeatThresh24;
2482 char PowerUsageControl[4];
2483 v_U8_t nEnableSuspend;
2484 v_U8_t nEnableDriverStop;
2485 v_BOOL_t fIsImpsEnabled;
Pradeep Kumar Goudagunta22d8e4d2014-07-17 15:03:51 +05302486 v_BOOL_t fIsSsrPanicOnFailure;
Jeff Johnson295189b2012-06-20 16:38:30 -07002487 v_BOOL_t fIsLogpEnabled;
2488 v_U8_t btcExecutionMode;
2489 v_U8_t btcConsBtSlotsToBlockDuringDhcp;
2490 v_U8_t btcA2DPBtSubIntervalsDuringDhcp;
Jeff Johnson32d95a32012-09-10 13:15:23 -07002491 v_U32_t btcStaticLenInqBt;
2492 v_U32_t btcStaticLenPageBt;
2493 v_U32_t btcStaticLenConnBt;
2494 v_U32_t btcStaticLenLeBt;
2495 v_U32_t btcStaticLenInqWlan;
2496 v_U32_t btcStaticLenPageWlan;
2497 v_U32_t btcStaticLenConnWlan;
2498 v_U32_t btcStaticLenLeWlan;
2499 v_U32_t btcDynMaxLenBt;
2500 v_U32_t btcDynMaxLenWlan;
2501 v_U32_t btcMaxScoBlockPerc;
2502 v_U32_t btcDhcpProtOnA2dp;
2503 v_U32_t btcDhcpProtOnSco;
Wilson Tsaof8b37942013-09-06 10:49:00 -07002504 v_U32_t mwsCoexVictimWANFreq[10];
2505 v_U32_t mwsCoexVictimWLANFreq[10];
2506 v_U32_t mwsCoexVictimConfig[10];
2507 v_U32_t mwsCoexVictimConfig2[10];
2508 v_U32_t mwsCoexModemBackoff;
2509 v_U32_t mwsCoexConfig[6];
2510 v_U32_t SARPowerBackoff;
Jeff Johnson295189b2012-06-20 16:38:30 -07002511 v_U32_t nImpsModSleepTime;
2512 v_U32_t nImpsMaxSleepTime;
2513 v_U32_t nImpsMinSleepTime;
2514 v_BOOL_t fIsBmpsEnabled;
2515 v_U32_t nBmpsModListenInterval;
2516 v_U32_t nBmpsMaxListenInterval;
2517 v_U32_t nBmpsMinListenInterval;
2518 v_BOOL_t fIsAutoBmpsTimerEnabled;
2519 v_U32_t nAutoBmpsTimerValue;
2520 eHddDot11Mode dot11Mode;
2521 v_U32_t nChannelBondingMode24GHz;
2522 v_U32_t nChannelBondingMode5GHz;
2523 v_U32_t MaxRxAmpduFactor;
2524 v_U32_t nBAAgingTimerInterval;
2525 v_U16_t TxRate;
2526 v_U32_t AdaptiveThresholdAlgo;
2527 v_U32_t ShortGI20MhzEnable;
2528 v_U32_t BlockAckAutoSetup;
2529 v_U32_t ScanResultAgeCount;
2530 v_U32_t nScanAgeTimeNCNPS;
2531 v_U32_t nScanAgeTimeNCPS;
2532 v_U32_t nScanAgeTimeCNPS;
2533 v_U32_t nScanAgeTimeCPS;
2534 v_U8_t nRssiCatGap;
Jeff Johnson295189b2012-06-20 16:38:30 -07002535 v_BOOL_t fIsShortPreamble;
2536 v_BOOL_t fIsAutoIbssBssid;
2537 v_MACADDR_t IbssBssid;
Shailender Karmuchia734f332013-04-19 14:02:48 -07002538 v_U32_t AdHocChannel5G;
2539 v_U32_t AdHocChannel24G;
Jeff Johnson295189b2012-06-20 16:38:30 -07002540 v_U8_t intfAddrMask;
2541 v_MACADDR_t intfMacAddr[VOS_MAX_CONCURRENCY_PERSONA];
2542
Jeff Johnson295189b2012-06-20 16:38:30 -07002543 v_BOOL_t apUapsdEnabled;
Madan Mohan Koyyalamudi3ff2a0b2012-10-15 14:33:46 -07002544 v_BOOL_t apRandomBssidEnabled;
Jeff Johnson295189b2012-06-20 16:38:30 -07002545 v_BOOL_t apProtEnabled;
2546 v_U16_t apProtection;
2547 v_BOOL_t apOBSSProtEnabled;
2548 v_U8_t MinFramesProcThres;
2549 v_U8_t apCntryCode[4];
2550 v_BOOL_t apDisableIntraBssFwd;
Amar Singhalfddc28c2013-09-05 13:03:40 -07002551 v_U8_t nEnableListenMode;
Jeff Johnson295189b2012-06-20 16:38:30 -07002552 v_U32_t nAPAutoShutOff;
2553 v_U8_t apStartChannelNum;
2554 v_U8_t apEndChannelNum;
2555 v_U8_t apOperatingBand;
2556 v_BOOL_t apAutoChannelSelection;
2557 v_U8_t enableLTECoex;
2558 v_U32_t apKeepAlivePeriod;
2559 v_U32_t goKeepAlivePeriod;
Sejal Chauhanbcde8bc2013-03-04 18:06:36 +05302560 v_U32_t apLinkMonitorPeriod;
Madan Mohan Koyyalamudi2558bc92013-08-24 16:54:31 +05302561 v_U32_t goLinkMonitorPeriod;
Jeff Johnson295189b2012-06-20 16:38:30 -07002562 v_U32_t nBeaconInterval;
2563 v_U8_t nTxPowerCap; //In dBm
2564 v_BOOL_t fIsLowGainOverride;
2565 v_U8_t disablePacketFilter;
2566#if defined WLAN_FEATURE_VOWIFI
2567 v_BOOL_t fRrmEnable;
2568 v_U8_t nInChanMeasMaxDuration;
2569 v_U8_t nOutChanMeasMaxDuration;
2570 v_U16_t nRrmRandnIntvl;
2571#endif
2572
2573#ifdef WLAN_FEATURE_VOWIFI_11R
2574 //Vowifi 11r params
Jeff Johnson295189b2012-06-20 16:38:30 -07002575 v_BOOL_t fFTResourceReqSupported;
2576#endif
2577
Girish Gowlibf0e1ab2015-01-19 16:05:16 +05302578 v_BOOL_t gEnableRoamDelayStats;
Jeff Johnson295189b2012-06-20 16:38:30 -07002579#ifdef WLAN_FEATURE_NEIGHBOR_ROAMING
2580 v_U16_t nNeighborScanPeriod;
Srinivas Girigowdade697412013-02-14 16:31:48 -08002581 v_U8_t nNeighborReassocRssiThreshold;
2582 v_U8_t nNeighborLookupRssiThreshold;
2583 v_U8_t neighborScanChanList[WNI_CFG_VALID_CHANNEL_LIST_LEN];
Jeff Johnson295189b2012-06-20 16:38:30 -07002584 v_U16_t nNeighborScanMinChanTime;
2585 v_U16_t nNeighborScanMaxChanTime;
2586 v_U16_t nMaxNeighborReqTries;
Srinivas Girigowdade697412013-02-14 16:31:48 -08002587 v_U16_t nNeighborResultsRefreshPeriod;
2588 v_U16_t nEmptyScanRefreshPeriod;
Mukul Sharma20aa6582014-08-07 21:36:12 +05302589 v_U8_t nNeighborInitialForcedRoamTo5GhEnable;
Jeff Johnson295189b2012-06-20 16:38:30 -07002590#endif
2591
Jeff Johnson295189b2012-06-20 16:38:30 -07002592 //Additional Handoff params
2593 v_BOOL_t nEnableIdleScan;
2594 v_U32_t nRoamingTime;
2595 v_U16_t nVccRssiTrigger;
2596 v_U32_t nVccUlMacLossThreshold;
2597
2598 v_U32_t nPassiveMinChnTime; //in units of milliseconds
2599 v_U32_t nPassiveMaxChnTime; //in units of milliseconds
2600 v_U32_t nActiveMinChnTime; //in units of milliseconds
2601 v_U32_t nActiveMaxChnTime; //in units of milliseconds
2602
c_hpothu059edb02014-03-12 21:44:28 +05302603 v_U32_t nInitialDwellTime; //in units of milliseconds
2604
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002605 v_U32_t nActiveMinChnTimeBtc; //in units of milliseconds
2606 v_U32_t nActiveMaxChnTimeBtc; //in units of milliseconds
Madan Mohan Koyyalamudi4ff9cd62012-10-30 17:48:57 -07002607#ifdef WLAN_AP_STA_CONCURRENCY
2608 v_U32_t nPassiveMinChnTimeConc; //in units of milliseconds
2609 v_U32_t nPassiveMaxChnTimeConc; //in units of milliseconds
2610 v_U32_t nActiveMinChnTimeConc; //in units of milliseconds
2611 v_U32_t nActiveMaxChnTimeConc; //in units of milliseconds
2612 v_U32_t nRestTimeConc; //in units of milliseconds
Sudhir Sattayappa Kohallieb97d502013-05-22 23:16:42 -07002613 v_U8_t nNumStaChanCombinedConc; //number of channels combined for
2614 //STA in each split scan operation
2615 v_U8_t nNumP2PChanCombinedConc; //number of channels combined for
2616 //P2P in each split scan operation
Madan Mohan Koyyalamudi4ff9cd62012-10-30 17:48:57 -07002617#endif
2618
Jeff Johnson295189b2012-06-20 16:38:30 -07002619 v_U8_t nMaxPsPoll;
2620
2621 v_U8_t nRssiFilterPeriod;
2622 v_BOOL_t fIgnoreDtim;
Yue Mac24062f2013-05-13 17:01:29 -07002623 v_U8_t fMaxLIModulatedDTIM;
Jeff Johnson295189b2012-06-20 16:38:30 -07002624
2625 v_U8_t nRxAnt;
2626 v_U8_t fEnableFwHeartBeatMonitoring;
2627 v_U8_t fEnableFwBeaconFiltering;
Gopichand Nakkala98a98af2012-12-31 14:38:47 -08002628 v_BOOL_t fEnableFwRssiMonitoring;
Jeff Johnson295189b2012-06-20 16:38:30 -07002629 v_U8_t nDataInactivityTimeout;
2630 v_U8_t nthBeaconFilter;
2631
2632 //WMM QoS Configuration
2633 hdd_wmm_user_mode_t WmmMode;
2634 v_BOOL_t b80211eIsEnabled;
2635 v_U8_t UapsdMask; // what ACs to setup U-APSD for at assoc
Jeff Johnson295189b2012-06-20 16:38:30 -07002636 v_U32_t InfraUapsdVoSrvIntv;
2637 v_U32_t InfraUapsdVoSuspIntv;
2638 v_U32_t InfraUapsdViSrvIntv;
2639 v_U32_t InfraUapsdViSuspIntv;
2640 v_U32_t InfraUapsdBeSrvIntv;
2641 v_U32_t InfraUapsdBeSuspIntv;
2642 v_U32_t InfraUapsdBkSrvIntv;
2643 v_U32_t InfraUapsdBkSuspIntv;
Jeff Johnson04dd8a82012-06-29 20:41:40 -07002644#ifdef FEATURE_WLAN_LFR
2645 v_BOOL_t isFastRoamIniFeatureEnabled;
Sameer Thalappil4ae66ec2013-11-05 14:17:35 -08002646 v_BOOL_t MAWCEnabled;
Jeff Johnson04dd8a82012-06-29 20:41:40 -07002647#endif
Varun Reddy Yeturu5d5e2c62014-02-27 13:31:29 -08002648#ifdef FEATURE_WLAN_ESE
Jeff Johnson295189b2012-06-20 16:38:30 -07002649 v_U32_t InfraInactivityInterval;
Varun Reddy Yeturu5d5e2c62014-02-27 13:31:29 -08002650 v_BOOL_t isEseIniFeatureEnabled;
Jeff Johnson295189b2012-06-20 16:38:30 -07002651#endif
Varun Reddy Yeturu5d5e2c62014-02-27 13:31:29 -08002652#if defined (WLAN_FEATURE_VOWIFI_11R) || defined (FEATURE_WLAN_ESE) || defined(FEATURE_WLAN_LFR)
Jeff Johnson295189b2012-06-20 16:38:30 -07002653 v_BOOL_t isFastTransitionEnabled;
Jeff Johnson43971f52012-07-17 12:26:56 -07002654 v_U8_t RoamRssiDiff;
Madan Mohan Koyyalamudi62b55b02012-12-03 16:45:39 -08002655 v_U8_t nImmediateRoamRssiDiff;
Srinivas Girigowdaad34ca92013-10-22 10:54:29 -07002656 v_BOOL_t isWESModeEnabled;
Jeff Johnson295189b2012-06-20 16:38:30 -07002657#endif
Srinivas Girigowdabbd16eb2013-03-21 12:34:46 -07002658#ifdef FEATURE_WLAN_OKC
2659 v_BOOL_t isOkcIniFeatureEnabled;
2660#endif
Varun Reddy Yeturud0a3f252013-04-15 21:58:13 -07002661#ifdef WLAN_FEATURE_ROAM_SCAN_OFFLOAD
2662 v_BOOL_t isRoamOffloadScanEnabled;
2663#endif
Jeff Johnson295189b2012-06-20 16:38:30 -07002664 hdd_wmm_classification_t PktClassificationBasis; // DSCP or 802.1Q
2665 v_BOOL_t bImplicitQosEnabled;
2666
2667 /* default TSPEC parameters for AC_VO */
2668 sme_QosWmmDirType InfraDirAcVo;
2669 v_U16_t InfraNomMsduSizeAcVo;
2670 v_U32_t InfraMeanDataRateAcVo;
2671 v_U32_t InfraMinPhyRateAcVo;
2672 v_U16_t InfraSbaAcVo;
2673
2674 /* default TSPEC parameters for AC_VI */
2675 sme_QosWmmDirType InfraDirAcVi;
2676 v_U16_t InfraNomMsduSizeAcVi;
2677 v_U32_t InfraMeanDataRateAcVi;
2678 v_U32_t InfraMinPhyRateAcVi;
2679 v_U16_t InfraSbaAcVi;
2680
2681 /* default TSPEC parameters for AC_BE */
2682 sme_QosWmmDirType InfraDirAcBe;
2683 v_U16_t InfraNomMsduSizeAcBe;
2684 v_U32_t InfraMeanDataRateAcBe;
2685 v_U32_t InfraMinPhyRateAcBe;
2686 v_U16_t InfraSbaAcBe;
2687
2688 /* default TSPEC parameters for AC_BK */
2689 sme_QosWmmDirType InfraDirAcBk;
2690 v_U16_t InfraNomMsduSizeAcBk;
2691 v_U32_t InfraMeanDataRateAcBk;
2692 v_U32_t InfraMinPhyRateAcBk;
2693 v_U16_t InfraSbaAcBk;
2694
2695 /* TL related configuration */
2696 v_U8_t WfqBkWeight;
2697 v_U8_t WfqBeWeight;
2698 v_U8_t WfqViWeight;
2699 v_U8_t WfqVoWeight;
2700 v_U32_t DelayedTriggerFrmInt;
Dhanashri Atred8c20a32014-01-03 17:20:55 -08002701 v_U16_t BkReorderAgingTime;
2702 v_U16_t BeReorderAgingTime;
2703 v_U16_t ViReorderAgingTime;
2704 v_U16_t VoReorderAgingTime;
Jeff Johnson295189b2012-06-20 16:38:30 -07002705
2706 /* Wowl pattern */
2707 char wowlPattern[1024];
Jeff Johnson295189b2012-06-20 16:38:30 -07002708
2709 /* Control for Replay counetr. value 1 means
2710 single replay counter for all TID*/
2711 v_BOOL_t bSingleTidRc;
2712 v_U8_t mcastBcastFilterSetting;
2713 v_BOOL_t fhostArpOffload;
Gopichand Nakkala746a9452013-06-11 12:45:54 +05302714 v_BOOL_t fhostNSOffload;
Jeff Johnson295189b2012-06-20 16:38:30 -07002715 v_BOOL_t burstSizeDefinition;
2716 v_U8_t tsInfoAckPolicy;
2717
2718 /* RF Settling Time Clock */
2719 v_U32_t rfSettlingTimeUs;
2720 v_U8_t enableBtAmp;
2721#ifdef WLAN_BTAMP_FEATURE
2722 v_U8_t preferredChannel;
2723#endif //WLAN_BTAMP_FEATURE
2724
2725 v_U8_t dynamicPsPollValue;
2726 v_BOOL_t AddTSWhenACMIsOff;
2727 v_BOOL_t fValidateScanList;
2728
2729 v_U32_t infraStaKeepAlivePeriod;
2730 v_U8_t nNullDataApRespTimeout;
2731 v_U8_t nBandCapability;
2732
2733 v_U32_t apDataAvailPollPeriodInMs;
2734 v_BOOL_t fEnableBeaconEarlyTermination;
2735 v_BOOL_t teleBcnWakeupEn;
2736
Varun Reddy Yeturu587e6802013-01-24 12:21:41 -08002737/* VOS Trace Control*/
2738 v_U16_t vosTraceEnableBAP;
2739 v_U16_t vosTraceEnableTL;
2740 v_U16_t vosTraceEnableWDI;
2741 v_U16_t vosTraceEnableHDD;
2742 v_U16_t vosTraceEnableSME;
2743 v_U16_t vosTraceEnablePE;
Katya Nigam70d68332013-09-16 16:49:45 +05302744 v_U16_t vosTraceEnablePMC;
Varun Reddy Yeturu587e6802013-01-24 12:21:41 -08002745 v_U16_t vosTraceEnableWDA;
2746 v_U16_t vosTraceEnableSYS;
2747 v_U16_t vosTraceEnableVOSS;
Varun Reddy Yeturu587e6802013-01-24 12:21:41 -08002748 v_U16_t vosTraceEnableSAP;
2749 v_U16_t vosTraceEnableHDDSAP;
Varun Reddy Yeturu587e6802013-01-24 12:21:41 -08002750
Jeff Johnson295189b2012-06-20 16:38:30 -07002751 /* WDI Trace Control */
2752 v_U32_t wdiTraceEnableDAL;
2753 v_U32_t wdiTraceEnableCTL;
2754 v_U32_t wdiTraceEnableDAT;
2755 v_U32_t wdiTraceEnablePAL;
Jeff Johnson295189b2012-06-20 16:38:30 -07002756 v_U16_t nTeleBcnTransListenInterval;
2757 v_U16_t nTeleBcnMaxListenInterval;
2758 v_U16_t nTeleBcnTransLiNumIdleBeacons;
2759 v_U16_t nTeleBcnMaxLiNumIdleBeacons;
2760 v_U8_t bcnEarlyTermWakeInterval;
2761 v_U32_t enableCloseLoop;
2762 v_U8_t enableBypass11d;
2763 v_U8_t enableDFSChnlScan;
Sachin Ahuja697ba3f2014-11-12 18:57:11 +05302764 v_U8_t enableDFSPnoChnlScan;
Jeff Johnson295189b2012-06-20 16:38:30 -07002765 v_U8_t enableDynamicDTIM;
2766 v_U8_t enableAutomaticTxPowerControl;
2767 v_U8_t ShortGI40MhzEnable;
2768 eHddLinkSpeedReportType reportMaxLinkSpeed;
2769 v_S31_t linkSpeedRssiHigh;
Varun Reddy Yeturu5d5e2c62014-02-27 13:31:29 -08002770#if defined (WLAN_FEATURE_VOWIFI_11R) || defined (FEATURE_WLAN_ESE) || defined(FEATURE_WLAN_LFR)
Madan Mohan Koyyalamudid5026072012-11-30 14:56:21 -08002771 v_BOOL_t nRoamPrefer5GHz;
Srinivas Girigowdabbd16eb2013-03-21 12:34:46 -07002772 v_BOOL_t nRoamIntraBand;
Varun Reddy Yeturu920df212013-05-22 08:07:23 -07002773 v_U8_t nProbes;
2774 v_U16_t nRoamScanHomeAwayTime;
Madan Mohan Koyyalamudid5026072012-11-30 14:56:21 -08002775#endif
Madan Mohan Koyyalamudi8df78d52012-11-02 12:30:06 -07002776 v_S31_t linkSpeedRssiMid;
Jeff Johnson295189b2012-06-20 16:38:30 -07002777 v_S31_t linkSpeedRssiLow;
2778 v_U8_t enableMCC;
Mohit Khanna7ed53f02012-09-11 17:52:10 -07002779 v_U8_t allowMCCGODiffBI;
Jeff Johnson295189b2012-06-20 16:38:30 -07002780 v_BOOL_t isP2pDeviceAddrAdministrated;
Jeff Johnson295189b2012-06-20 16:38:30 -07002781 v_U8_t thermalMitigationEnable;
Jeff Johnsone7245742012-09-05 17:12:55 -07002782#ifdef WLAN_FEATURE_11AC
2783 v_U8_t vhtChannelWidth;
2784 v_U8_t vhtRxMCS;
2785 v_U8_t vhtTxMCS;
Shailender Karmuchi08f87c22013-01-17 12:51:24 -08002786 v_BOOL_t enableTxBF;
Shailender Karmuchicc3fe442013-02-16 18:18:33 -08002787 v_U8_t txBFCsnValue;
Abhishek Singh6d5d29c2014-07-03 14:25:22 +05302788 v_BOOL_t enableMuBformee;
Abhishek Singhaa63bf22014-10-30 17:09:45 +05302789 v_U8_t gVhtMaxAmpduLenExp;
Jeff Johnsone7245742012-09-05 17:12:55 -07002790#endif
Jeff Johnson295189b2012-06-20 16:38:30 -07002791 v_U8_t enableModulatedDTIM;
Jeff Johnsond13512a2012-07-17 11:42:19 -07002792 v_U32_t fEnableMCAddrList;
Jeff Johnsone7245742012-09-05 17:12:55 -07002793 v_BOOL_t enableFirstScan2GOnly;
2794 v_BOOL_t skipDfsChnlInP2pSearch;
2795 v_BOOL_t ignoreDynamicDtimInP2pMode;
Madan Mohan Koyyalamudid5f04ca2012-11-06 15:51:26 -08002796 v_U16_t configMccParam;
Madan Mohan Koyyalamudidd11eaf2012-11-02 16:04:21 -07002797 v_U32_t numBuffAdvert;
Pratik Bhalgat6bfd1422012-11-22 17:09:40 +05302798 v_BOOL_t enableRxSTBC;
Mohit Khanna698ba2a2012-12-04 15:08:18 -08002799#ifdef FEATURE_WLAN_TDLS
2800 v_BOOL_t fEnableTDLSSupport;
Hoonki Leebf870f32013-01-19 15:53:30 +05302801 v_BOOL_t fEnableTDLSImplicitTrigger;
2802 v_U32_t fTDLSTxStatsPeriod;
2803 v_U32_t fTDLSTxPacketThreshold;
2804 v_U32_t fTDLSDiscoveryPeriod;
2805 v_U32_t fTDLSMaxDiscoveryAttempt;
Chilam Ng01120412013-02-19 18:32:21 -08002806 v_U32_t fTDLSIdleTimeout;
2807 v_U32_t fTDLSIdlePacketThreshold;
2808 v_U32_t fTDLSRSSIHysteresis;
2809 v_S31_t fTDLSRSSITriggerThreshold;
2810 v_S31_t fTDLSRSSITeardownThreshold;
Gopichand Nakkala79ff85d2013-05-27 17:05:29 +05302811 v_U32_t fTDLSUapsdMask; // what ACs to setup U-APSD for TDLS
2812 v_U32_t fEnableTDLSBufferSta;
2813 v_U32_t fTDLSPuapsdInactivityTimer;
2814 v_U32_t fTDLSRxFrameThreshold;
Sunil Dutt41de4e22013-11-14 18:09:02 +05302815 v_BOOL_t fTDLSExternalControl;
Naresh Jayaramf73f3762014-02-04 16:13:20 +05302816 v_U32_t fEnableTDLSOffChannel;
Pradeep Reddy POTTETIa9c80d52014-05-09 18:05:29 +05302817 v_U32_t fEnableTDLSWmmMode;
Pradeep Reddy POTTETIedaeb5f2014-05-22 23:34:41 +05302818 v_BOOL_t fEnableTDLSScanCoexSupport;
Agarwal Ashishef54a182014-12-16 15:07:31 +05302819 v_BOOL_t fEnableTDLSScan;
Mohit Khanna698ba2a2012-12-04 15:08:18 -08002820#endif
Dino Mycledf0a5d92014-07-04 09:41:55 +05302821#ifdef WLAN_FEATURE_LINK_LAYER_STATS
2822 v_BOOL_t fEnableLLStats;
2823#endif
Dino Myclee8843b32014-07-04 14:21:45 +05302824#ifdef WLAN_FEATURE_EXTSCAN
2825 v_BOOL_t fEnableEXTScan;
2826#endif
Gopichand Nakkala976e3252013-01-03 15:45:56 -08002827#ifdef WLAN_SOFTAP_VSTA_FEATURE
2828 v_BOOL_t fEnableVSTASupport;
2829#endif
Yathish9f22e662012-12-10 14:21:35 -08002830#ifdef WLAN_ACTIVEMODE_OFFLOAD_FEATURE
2831 v_BOOL_t fEnableActiveModeOffload;
2832#endif
Dino Mycledf0a5d92014-07-04 09:41:55 +05302833 v_U32_t enableLpwrImgTransition;
Sandeep Puligilla2b6dc632012-12-17 14:44:16 -08002834 v_U8_t scanAgingTimeout;
Gopichand Nakkalab2d2c312013-01-04 11:41:02 -08002835 v_BOOL_t enableTxLdpc;
Leela V Kiran Kumar Reddy Chiralab1f7d342013-02-11 00:27:02 -08002836 v_U8_t disableLDPCWithTxbfAP;
Madan Mohan Koyyalamudi01cba042013-01-10 21:56:05 -08002837 v_U8_t enableMCCAdaptiveScheduler;
Madan Mohan Koyyalamudi69b34182013-01-16 08:51:40 +05302838 v_BOOL_t isAndroidPsEn;
Madan Mohan Koyylamudi64267f72013-02-05 14:07:08 +05302839 v_BOOL_t sapAllowAllChannel;
Kiran Kumar Lokere1f39e952013-04-03 18:34:30 -07002840 v_U8_t retryLimitZero;
2841 v_U8_t retryLimitOne;
2842 v_U8_t retryLimitTwo;
Kiran Kumar Lokere458d7322013-05-29 14:29:43 -07002843 v_U8_t disableAggWithBtc;
Tushnim Bhattacharyya9cdf6082013-04-21 16:33:30 -07002844 char listOfNonDfsCountryCode[128];
Gopichand Nakkalae620d5a2013-04-26 05:45:57 -07002845 v_BOOL_t enableSSR;
Gopichand Nakkaladacbcb52013-04-18 16:41:54 +05302846 char listOfNon11acCountryCode[128];
Gopichand Nakkala42bc89e2013-05-27 12:49:09 +05302847 v_U32_t cfgMaxMediumTime;
Leo Chang64d68bc2013-06-04 15:40:52 -07002848 v_U8_t enableTrafficMonitor;
2849 v_U32_t trafficIdleTimeout;
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002850 v_BOOL_t enableVhtFor24GHzBand;
Gopichand Nakkala154bda22013-06-11 17:41:22 +05302851 v_U8_t fScanOffload;
Srinivas Girigowda830bbd02013-06-13 19:44:16 -07002852#ifdef WLAN_FEATURE_ROAM_SCAN_OFFLOAD
2853 /* Flag indicating whether legacy fast roam during concurrency is enabled in cfg.ini or not */
2854 v_BOOL_t bFastRoamInConIniFeatureEnabled;
2855#endif
Sudhir Sattayappa Kohallida1be202013-07-11 12:04:30 -07002856 v_BOOL_t fEnableAdaptRxDrain;
Sudhir Sattayappa Kohalli37620692013-08-05 14:02:26 -07002857 //TX and RX traffic threshold for split scan
2858 v_U8_t txRxThresholdForSplitScan;
2859 v_U8_t dynSplitscan; //Enable/Disable dynamic
2860 //splitscan
2861 //Traffic monitor timer for split scan
2862 v_U32_t trafficMntrTmrForSplitScan;
Yue Ma0fd23872013-08-01 15:56:47 -07002863 v_U8_t flexConnectPowerFactor;
Ravi Joshid2ca7c42013-07-23 08:37:49 -07002864 v_BOOL_t enableIbssHeartBeatOffload;
Madan Mohan Koyyalamudica454572013-08-07 19:57:03 +05302865 v_U32_t antennaDiversity;
Madan Mohan Koyyalamudid9383fd2013-08-13 09:27:30 +05302866 v_BOOL_t fEnableSNRMonitoring;
Madan Mohan Koyyalamudi1d16f462013-08-27 16:25:34 +05302867 /*PNO related parameters */
Manjunathappa Prakash4f1d5a52013-11-11 16:22:19 -08002868#ifdef FEATURE_WLAN_SCAN_PNO
Hardik Kantilal Patel3dfd8792013-11-13 20:34:57 +05302869 v_BOOL_t configPNOScanSupport;
Madan Mohan Koyyalamudi1d16f462013-08-27 16:25:34 +05302870 v_U32_t configPNOScanTimerRepeatValue;
2871#endif
krunal soni5afa96c2013-09-06 22:19:02 -07002872 v_U8_t isAmsduSupportInAMPDU;
Srinivas Girigowda41c7c5f2013-10-21 19:01:38 -07002873 v_U8_t nSelect5GHzMargin;
krunal sonie9002db2013-11-25 14:24:17 -08002874 v_U8_t isCoalesingInIBSSAllowed;
Kiet Lam4bbd3cb2013-11-07 20:03:49 +05302875 v_BOOL_t cfgAthDisable;
c_hpothu6d7dc922013-12-02 12:36:41 +05302876 v_U32_t cfgBtcActiveWlanLen;
2877 v_U32_t cfgBtcActiveBtLen;
2878 v_U32_t cfgBtcSapActiveWlanLen;
2879 v_U32_t cfgBtcSapActiveBtLen;
Arif Hussaind5218912013-12-05 01:10:55 -08002880#ifdef MEMORY_DEBUG
2881 v_BOOL_t IsMemoryDebugSupportEnabled;
2882#endif
Tushnim Bhattacharyya9889e792013-12-19 18:18:36 -08002883 char overrideCountryCode[4];
AnjaneeDevi Kapparapu50239e32014-01-07 18:09:33 +05302884 v_U32_t gAsdProbeInterval;
c_hpothu1c4405a2014-12-10 18:16:16 +05302885 v_S7_t gAsdTriggerThreshold;
AnjaneeDevi Kapparapu50239e32014-01-07 18:09:33 +05302886 v_U32_t gAsdRTTRssiHystThreshold;
Leela Venkata Kiran Kumar Reddy Chirala22c159b2013-12-23 18:19:13 -08002887 v_BOOL_t debugP2pRemainOnChannel;
2888 v_U32_t cfgBtcCTS2SduringSCO;
Tushnim Bhattacharyyaa3ba5a52014-01-30 11:37:33 -08002889 v_U32_t gEnableDebugLog;
Sandeep Puligilla04bb8fd2014-02-03 23:21:47 +05302890 v_U16_t nOBSSScanActiveDwellTime;
2891 v_U16_t nOBSSScanPassiveDwellTime;
2892 v_U16_t nOBSSScanWidthTriggerInterval;
Kalikinkar dharad73a9bd2014-01-28 22:42:34 -08002893 v_BOOL_t gEnableStrictRegulatoryForFCC;
Rashmi Ramannabd3feb72014-02-25 16:14:48 +05302894 v_BOOL_t advertiseConcurrentOperation;
Abhishek Singh8280c4e2014-02-18 13:26:34 +05302895 v_U32_t defaultRateIndex24Ghz;
Sushant Kaushik7dc03272015-02-18 11:25:12 +05302896 v_BOOL_t sapEnable11AC;
c_hpothu5bd1ae42014-03-07 20:28:22 +05302897 v_BOOL_t cfgRAFilterEnable;
2898 v_U16_t cfgRARateLimitInterval;
Sandeep Puligillac80f26e2014-03-11 18:36:10 +05302899 v_U8_t allowDFSChannelRoam;
Vinay Krishna Erannad938c422014-03-10 17:14:21 +05302900
2901#ifdef WLAN_LOGGING_SOCK_SVC_ENABLE
2902 //WLAN Logging
2903 v_U32_t wlanLoggingEnable;
2904 v_U32_t wlanLoggingFEToConsole;
2905 v_U32_t wlanLoggingNumBuf;
2906#endif
2907
c_hpothu0d5a7352014-03-22 12:30:25 +05302908 v_BOOL_t initialScanSkipDFSCh;
c_hpothu2d0f1c42014-04-01 18:38:51 +05302909 v_U32_t cfgBtcFatalHidnSniffBlkGuidance;
2910 v_U32_t cfgBtcCriticalHidnSniffBlkGuidance;
2911 v_U32_t cfgBtcA2dpTxQueueThold;
2912 v_U32_t cfgBtcOppTxQueueThold;
Chet Lanctotfadc8e32014-04-24 14:50:52 -07002913
2914#ifdef WLAN_FEATURE_11W
2915 v_U32_t pmfSaQueryMaxRetries;
2916 v_U32_t pmfSaQueryRetryInterval;
2917#endif
Rashmi Ramanna68b309c2014-05-20 11:52:22 +05302918 v_U32_t deferImpsTime;
Abhishek Singhde51a412014-05-20 19:17:26 +05302919 v_BOOL_t sendDeauthBeforeCon;
Siddharth Bhala3a5cb42014-09-29 21:13:13 +05302920 v_BOOL_t enableMacSpoofing;
Siddharth Bhal4a432552015-02-27 01:09:31 +05302921 v_BOOL_t enableMgmtLogging;
2922 v_BOOL_t enableBMUHWtracing;
Pradeep Reddy POTTETI5c2e16d2014-06-27 16:47:38 +05302923 v_BOOL_t fenableCHAvoidance;
Agarwal Ashish51325b52014-06-16 16:50:49 +05302924 v_U8_t gMaxConcurrentActiveSessions;
Mihir Shetec34258c2014-07-30 17:50:27 +05302925
2926 v_U32_t enableDynamicWMMPS;
2927 v_U32_t maxUapsdConsecSP;
2928 v_U32_t maxUapsdConsecRxCnt;
2929 v_U32_t maxUapsdConsecTxCnt;
2930 v_U32_t uapsdConsecRxCntMeasWindow;
2931 v_U32_t uapsdConsecTxCntMeasWindow;
2932 v_U32_t maxPsPollInWmmUapsdMode;
2933 v_U32_t maxUapsdInactivityIntervals;
c_hpothu03d961b2014-09-19 16:45:00 +05302934 v_U32_t burstModeTXOPValue;
Peng Xufc6ad8e2014-09-25 13:16:43 +05302935 v_U8_t acsScanBandPreference;
Peng Xuafc34e32014-09-25 13:23:55 +05302936 v_U16_t acsBandSwitchThreshold;
Deepthi Gowri9025aa62014-11-07 19:45:36 +05302937 v_U32_t enableDynamicRAStartRate;
jagadeeshaf2d0ce2015-03-31 11:45:30 +05302938 v_U32_t enableRtsCtsHtVht;
Hardik Kantilal Patel086e0a32014-11-20 14:56:26 +05302939#ifdef WLAN_FEATURE_AP_HT40_24G
2940 v_BOOL_t apHT40_24GEnabled;
2941#endif
Ganesh Kondabattinibabfb492014-12-17 20:25:29 +05302942 v_U16_t gP2PListenDeferInterval;
Chandrasekaran, Manishekar5cb0acd2014-12-23 20:06:52 +05302943 v_U8_t btcEnableIndTimerVal;
Naresh Jayaramf5bbe3f2014-12-29 18:32:47 +05302944 v_BOOL_t btcFastWlanConnPref;
Katya Nigama6fbf662015-03-17 18:35:47 +05302945 v_U32_t dxeReplenishRXTimerVal;
2946 v_U32_t dxeSSREnable;
Jeff Johnson295189b2012-06-20 16:38:30 -07002947} hdd_config_t;
2948/*---------------------------------------------------------------------------
2949 Function declarations and documenation
2950 -------------------------------------------------------------------------*/
2951VOS_STATUS hdd_parse_config_ini(hdd_context_t *pHddCtx);
2952VOS_STATUS hdd_set_sme_config( hdd_context_t *pHddCtx );
2953v_BOOL_t hdd_update_config_dat ( hdd_context_t *pHddCtx );
2954VOS_STATUS hdd_cfg_get_config(hdd_context_t *pHddCtx, char *pBuf, int buflen);
2955eCsrPhyMode hdd_cfg_xlate_to_csr_phy_mode( eHddDot11Mode dot11Mode );
2956VOS_STATUS hdd_execute_config_command(hdd_context_t *pHddCtx, char *command);
Srinivas Girigowdabbd16eb2013-03-21 12:34:46 -07002957tANI_BOOLEAN hdd_is_okc_mode_enabled(hdd_context_t *pHddCtx);
Jeff Johnson295189b2012-06-20 16:38:30 -07002958
Jeff Johnson247f9b12013-11-20 13:39:43 -08002959#define VAR_OFFSET( _Struct, _Var ) (offsetof(_Struct, _Var))
2960#define VAR_SIZE( _Struct, _Var ) (sizeof(((_Struct *)0)->_Var))
Jeff Johnson295189b2012-06-20 16:38:30 -07002961
2962#define VAR_FLAGS_NONE ( 0 )
2963#define VAR_FLAGS_REQUIRED ( 1 << 0 ) // bit 0 is Required or Optional
2964#define VAR_FLAGS_OPTIONAL ( 0 << 0 )
2965
2966#define VAR_FLAGS_RANGE_CHECK ( 1 << 1 ) // bit 1 tells if range checking is required.
2967 // If less than MIN, assume MIN.
2968 // If greater than MAX, assume MAX.
2969
2970#define VAR_FLAGS_RANGE_CHECK_ASSUME_MINMAX ( VAR_FLAGS_RANGE_CHECK )
2971
2972#define VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT ( 1 << 2 ) // bit 2 is range checking that assumes the DEFAULT value
2973 // If less than MIN, assume DEFAULT,
2974 // If grateer than MAX, assume DEFAULT.
2975
2976#define VAR_FLAGS_DYNAMIC_CFG ( 1 << 3 ) // Bit 3 indicates that
2977 // the config item can be
2978 // modified dynamicially
2979 // on a running system
2980
2981typedef enum
2982{
2983 WLAN_PARAM_Integer,
2984 WLAN_PARAM_SignedInteger,
2985 WLAN_PARAM_HexInteger,
2986 WLAN_PARAM_String,
2987 WLAN_PARAM_MacAddr,
2988}WLAN_PARAMETER_TYPE;
2989
2990#define REG_VARIABLE( _Name, _Type, _Struct, _VarName, \
2991 _Flags, _Default, _Min, _Max ) \
2992{ \
2993 ( _Name ), \
2994 ( _Type ), \
2995 ( _Flags ), \
2996 VAR_OFFSET( _Struct, _VarName ), \
2997 VAR_SIZE( _Struct, _VarName ), \
2998 ( _Default ), \
2999 ( _Min ), \
3000 ( _Max ), \
3001 NULL, \
3002 0 \
3003}
3004
3005#define REG_DYNAMIC_VARIABLE( _Name, _Type, _Struct, _VarName, \
3006 _Flags, _Default, _Min, _Max, \
3007 _CBFunc, _CBParam ) \
3008{ \
3009 ( _Name ), \
3010 ( _Type ), \
3011 ( VAR_FLAGS_DYNAMIC_CFG | ( _Flags ) ), \
3012 VAR_OFFSET( _Struct, _VarName ), \
3013 VAR_SIZE( _Struct, _VarName ), \
3014 ( _Default ), \
3015 ( _Min ), \
3016 ( _Max ), \
3017 ( _CBFunc ), \
3018 ( _CBParam ) \
3019}
3020
3021#define REG_VARIABLE_STRING( _Name, _Type, _Struct, _VarName, \
3022 _Flags, _Default ) \
3023{ \
3024 ( _Name ), \
3025 ( _Type ), \
3026 ( _Flags ), \
3027 VAR_OFFSET( _Struct, _VarName ), \
3028 VAR_SIZE( _Struct, _VarName ), \
3029 (unsigned long)( _Default ), \
3030 0, \
3031 0, \
3032 NULL, \
3033 0 \
3034}
3035
3036typedef struct tREG_TABLE_ENTRY {
3037
3038 char* RegName; // variable name in the qcom_cfg.ini file
3039 WLAN_PARAMETER_TYPE RegType; // variable type in the hdd_config_t structure
3040 unsigned long Flags; // Specify optional parms and if RangeCheck is performed
3041 unsigned short VarOffset; // offset to field from the base address of the structure
3042 unsigned short VarSize; // size (in bytes) of the field
3043 unsigned long VarDefault; // default value to use
3044 unsigned long VarMin; // minimum value, for range checking
3045 unsigned long VarMax; // maximum value, for range checking
3046 // Dynamic modification notifier
3047 void (*pfnDynamicNotify)(hdd_context_t *pHddCtx, unsigned long NotifyId);
3048 unsigned long NotifyId; // Dynamic modification identifier
3049} REG_TABLE_ENTRY;
3050
3051static __inline unsigned long utilMin( unsigned long a, unsigned long b )
3052{
3053 return( ( a < b ) ? a : b );
3054}
3055
3056#endif