blob: eec00fbd23df72c979b6add4cc3b246379e24fb1 [file] [log] [blame]
Jeff Johnson295189b2012-06-20 16:38:30 -07001/*
Gopichand Nakkala92f07d82013-01-08 21:16:34 -08002 * Copyright (c) 2012-2013, The Linux Foundation. All rights reserved.
3 *
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/*
Jeff Johnson32d95a32012-09-10 13:15:23 -070022 * Copyright (c) 2012, The Linux Foundation. All rights reserved.
Jeff Johnson295189b2012-06-20 16:38:30 -070023 *
24 * Previously licensed under the ISC license by Qualcomm Atheros, Inc.
25 *
26 *
27 * Permission to use, copy, modify, and/or distribute this software for
28 * any purpose with or without fee is hereby granted, provided that the
29 * above copyright notice and this permission notice appear in all
30 * copies.
31 *
32 * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL
33 * WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED
34 * WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE
35 * AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
36 * DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR
37 * PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
38 * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
39 * PERFORMANCE OF THIS SOFTWARE.
40 */
41
42#if !defined( HDD_CONFIG_H__ )
43#define HDD_CONFIG_H__
44
45/**===========================================================================
46
47 \file hdd_Config.h
48
49 \brief Android WLAN Adapter Configuration functions
50
51 Copyright 2008 (c) Qualcomm, Incorporated.
52 All Rights Reserved.
53 Qualcomm Confidential and Proprietary.
54
55 ==========================================================================*/
56
57/* $HEADER$ */
58
59/*---------------------------------------------------------------------------
60 Include files
61 -------------------------------------------------------------------------*/
62#include <wlan_hdd_includes.h>
63#include <wlan_hdd_wmm.h>
64#include <vos_types.h>
65#include <csrApi.h>
66
67//Number of items that can be configured
Jeff Johnson9d129602013-03-07 17:28:22 -080068#define MAX_CFG_INI_ITEMS 320
Jeff Johnson295189b2012-06-20 16:38:30 -070069
70// Defines for all of the things we read from the configuration (registry).
71
72#define CFG_RTS_THRESHOLD_NAME "RTSThreshold"
73#define CFG_RTS_THRESHOLD_MIN WNI_CFG_RTS_THRESHOLD_STAMIN // min is 0, meaning always use RTS.
74#define CFG_RTS_THRESHOLD_MAX WNI_CFG_RTS_THRESHOLD_STAMAX // max is the max frame size
75#define CFG_RTS_THRESHOLD_DEFAULT WNI_CFG_RTS_THRESHOLD_STADEF
76
77#define CFG_FRAG_THRESHOLD_NAME "gFragmentationThreshold"
78#define CFG_FRAG_THRESHOLD_MIN WNI_CFG_FRAGMENTATION_THRESHOLD_STAMIN
79#define CFG_FRAG_THRESHOLD_MAX WNI_CFG_FRAGMENTATION_THRESHOLD_STAMAX
80#define CFG_FRAG_THRESHOLD_DEFAULT WNI_CFG_FRAGMENTATION_THRESHOLD_STADEF
81
82#define CFG_CALIBRATION_NAME "gCalibration"
83#define CFG_CALIBRATION_MIN ( 0 )
84#define CFG_CALIBRATION_MAX ( 1 )
85#define CFG_CALIBRATION_MAC_DEFAULT ( 1 )
86#define CFG_CALIBRATION_DEFAULT CFG_CALIBRATION_MAC_DEFAULT
87
88#define CFG_CALIBRATION_PERIOD_NAME "gCalibrationPeriod"
89#define CFG_CALIBRATION_PERIOD_MIN ( 2 )
90#define CFG_CALIBRATION_PERIOD_MAX ( 10 )
91#define CFG_CALIBRATION_PERIOD_MAC_DEFAULT ( 5 )
92#define CFG_CALIBRATION_PERIOD_DEFAULT CFG_CALIBRATION_PERIOD_MAC_DEFAULT
93
94#define CFG_OPERATING_CHANNEL_NAME "gOperatingChannel"
95#define CFG_OPERATING_CHANNEL_MIN ( 0 )
96#define CFG_OPERATING_CHANNEL_MAX ( 14 )
97#define CFG_OPERATING_CHANNEL_DEFAULT ( 1 )
98
99#define CFG_SHORT_SLOT_TIME_ENABLED_NAME "gShortSlotTimeEnabled"
100#define CFG_SHORT_SLOT_TIME_ENABLED_MIN WNI_CFG_SHORT_SLOT_TIME_STAMIN
101#define CFG_SHORT_SLOT_TIME_ENABLED_MAX WNI_CFG_SHORT_SLOT_TIME_STAMAX
102#define CFG_SHORT_SLOT_TIME_ENABLED_DEFAULT WNI_CFG_SHORT_SLOT_TIME_STADEF
103
104#define CFG_11D_SUPPORT_ENABLED_NAME "g11dSupportEnabled"
105#define CFG_11D_SUPPORT_ENABLED_MIN WNI_CFG_11D_ENABLED_STAMIN
106#define CFG_11D_SUPPORT_ENABLED_MAX WNI_CFG_11D_ENABLED_STAMAX
107#define CFG_11D_SUPPORT_ENABLED_DEFAULT WNI_CFG_11D_ENABLED_STADEF // Default is ON
108
Madan Mohan Koyyalamudi8db1c942013-01-10 15:24:29 -0800109#define CFG_11H_SUPPORT_ENABLED_NAME "g11hSupportEnabled"
110#define CFG_11H_SUPPORT_ENABLED_MIN ( 0 )
111#define CFG_11H_SUPPORT_ENABLED_MAX ( 1 )
112#define CFG_11H_SUPPORT_ENABLED_DEFAULT ( 1 ) // Default is ON
113
Jeff Johnson295189b2012-06-20 16:38:30 -0700114#define CFG_ENFORCE_11D_CHANNELS_NAME "gEnforce11dChannel"
115#define CFG_ENFORCE_11D_CHANNELS_MIN ( 0 )
116#define CFG_ENFORCE_11D_CHANNELS_MAX ( 1 )
117#define CFG_ENFORCE_11D_CHANNELS_DEFAULT ( 0 )
118
119//COUNTRY Code Priority
120#define CFG_COUNTRY_CODE_PRIORITY_NAME "gCountryCodePriority"
121#define CFG_COUNTRY_CODE_PRIORITY_MIN ( 0 )
122#define CFG_COUNTRY_CODE_PRIORITY_MAX ( 1 )
123#define CFG_COUNTRY_CODE_PRIORITY_DEFAULT ( 0 )
124
125#define CFG_ENFORCE_COUNTRY_CODE_MATCH_NAME "gEnforceCountryCodeMatch"
126#define CFG_ENFORCE_COUNTRY_CODE_MATCH_MIN ( 0 )
127#define CFG_ENFORCE_COUNTRY_CODE_MATCH_MAX ( 1 )
128#define CFG_ENFORCE_COUNTRY_CODE_MATCH_DEFAULT ( 0 )
129
130#define CFG_ENFORCE_DEFAULT_DOMAIN_NAME "gEnforceDefaultDomain"
131#define CFG_ENFORCE_DEFAULT_DOMAIN_MIN ( 0 )
132#define CFG_ENFORCE_DEFAULT_DOMAIN_MAX ( 1 )
133#define CFG_ENFORCE_DEFAULT_DOMAIN_DEFAULT ( 0 )
134
135#define CFG_GENERIC_ID1_NAME "gCfg1Id"
136#define CFG_GENERIC_ID1_MIN ( 0 )
137#define CFG_GENERIC_ID1_MAX ( 0xffffffff )
138#define CFG_GENERIC_ID1_DEFAULT ( 0 )
139
140#define CFG_GENERIC_ID2_NAME "gCfg2Id"
141#define CFG_GENERIC_ID2_MIN ( 0 )
142#define CFG_GENERIC_ID2_MAX ( 0xffffffff )
143#define CFG_GENERIC_ID2_DEFAULT ( 0 )
144
145#define CFG_GENERIC_ID3_NAME "gCfg3Id"
146#define CFG_GENERIC_ID3_MIN ( 0 )
147#define CFG_GENERIC_ID3_MAX ( 0xffffffff )
148#define CFG_GENERIC_ID3_DEFAULT ( 0 )
149
150#define CFG_GENERIC_ID4_NAME "gCfg4Id"
151#define CFG_GENERIC_ID4_MIN ( 0 )
152#define CFG_GENERIC_ID4_MAX ( 0xffffffff )
153#define CFG_GENERIC_ID4_DEFAULT ( 0 )
154
155#define CFG_GENERIC_ID5_NAME "gCfg5Id"
156#define CFG_GENERIC_ID5_MIN ( 0 )
157#define CFG_GENERIC_ID5_MAX ( 0xffffffff )
158#define CFG_GENERIC_ID5_DEFAULT ( 0 )
159
160#define CFG_GENERIC_VALUE1_NAME "gCfg1Value"
161#define CFG_GENERIC_VALUE1_MIN ( 0 )
162#define CFG_GENERIC_VALUE1_MAX ( 0xffffffff )
163#define CFG_GENERIC_VALUE1_DEFAULT ( 0 )
164
165#define CFG_GENERIC_VALUE2_NAME "gCfg2Value"
166#define CFG_GENERIC_VALUE2_MIN ( 0 )
167#define CFG_GENERIC_VALUE2_MAX ( 0xffffffff )
168#define CFG_GENERIC_VALUE2_DEFAULT ( 0 )
169
170#define CFG_GENERIC_VALUE3_NAME "gCfg3Value"
171#define CFG_GENERIC_VALUE3_MIN ( 0 )
172#define CFG_GENERIC_VALUE3_MAX ( 0xffffffff )
173#define CFG_GENERIC_VALUE3_DEFAULT ( 0 )
174
175#define CFG_GENERIC_VALUE4_NAME "gCfg4Value"
176#define CFG_GENERIC_VALUE4_MIN ( 0 )
177#define CFG_GENERIC_VALUE4_MAX ( 0xffffffff )
178#define CFG_GENERIC_VALUE4_DEFAULT ( 0 )
179
180#define CFG_GENERIC_VALUE5_NAME "gCfg5Value"
181#define CFG_GENERIC_VALUE5_MIN ( 0 )
182#define CFG_GENERIC_VALUE5_MAX ( 0xffffffff )
183#define CFG_GENERIC_VALUE5_DEFAULT ( 0 )
184
185#define CFG_HEARTBEAT_THRESH_24_NAME "gHeartbeat24"
186#define CFG_HEARTBEAT_THRESH_24_MIN WNI_CFG_HEART_BEAT_THRESHOLD_STAMIN
187#define CFG_HEARTBEAT_THRESH_24_MAX WNI_CFG_HEART_BEAT_THRESHOLD_STAMAX
188#define CFG_HEARTBEAT_THRESH_24_DEFAULT WNI_CFG_HEART_BEAT_THRESHOLD_STADEF
189
190#define CFG_POWER_USAGE_NAME "gPowerUsage"
191#define CFG_POWER_USAGE_MIN "Min" //Minimum Power Save
192#define CFG_POWER_USAGE_MAX "Max" //Maximum Power Save
193#define CFG_POWER_USAGE_DEFAULT "Mod" //Moderate Power Save
194
195//Enable suspend on Android
196#define CFG_ENABLE_SUSPEND_NAME "gEnableSuspend"
197#define CFG_ENABLE_SUSPEND_MIN ( 0 ) //No support for suspend
198#define CFG_ENABLE_SUSPEND_MAX ( 3 ) //Map to Deep Sleep
199#define CFG_ENABLE_SUSPEND_DEFAULT ( 1 ) //Map to Standby
200
201//Driver start/stop command mappings
202#define CFG_ENABLE_ENABLE_DRIVER_STOP_NAME "gEnableDriverStop"
203#define CFG_ENABLE_ENABLE_DRIVER_STOP_MIN ( 0 ) //No support for stop
204#define CFG_ENABLE_ENABLE_DRIVER_STOP_MAX ( 2 ) //Map to Deep Sleep
205#define CFG_ENABLE_ENABLE_DRIVER_STOP_DEFAULT ( 0 )
206
207#define CFG_WOWL_PATTERN_NAME "gWowlPattern"
208#define CFG_WOWL_PATTERN_DEFAULT ""
209
210//IMPS = IdleModePowerSave
211#define CFG_ENABLE_IMPS_NAME "gEnableImps"
212#define CFG_ENABLE_IMPS_MIN ( 0 )
213#define CFG_ENABLE_IMPS_MAX ( 1 )
214#define CFG_ENABLE_IMPS_DEFAULT ( 1 )
215
216#define CFG_IMPS_MINIMUM_SLEEP_TIME_NAME "gImpsMinSleepTime"
217#define CFG_IMPS_MINIMUM_SLEEP_TIME_MIN ( 0 )
218#define CFG_IMPS_MINIMUM_SLEEP_TIME_MAX ( 65535 )
219#define CFG_IMPS_MINIMUM_SLEEP_TIME_DEFAULT ( 5 )
220
221#define CFG_IMPS_MODERATE_SLEEP_TIME_NAME "gImpsModSleepTime"
222#define CFG_IMPS_MODERATE_SLEEP_TIME_MIN ( 0 )
223#define CFG_IMPS_MODERATE_SLEEP_TIME_MAX ( 65535 )
224#define CFG_IMPS_MODERATE_SLEEP_TIME_DEFAULT ( 10)
225
226#define CFG_IMPS_MAXIMUM_SLEEP_TIME_NAME "gImpsMaxSleepTime"
227#define CFG_IMPS_MAXIMUM_SLEEP_TIME_MIN ( 0 )
228#define CFG_IMPS_MAXIMUM_SLEEP_TIME_MAX ( 65535 )
229#define CFG_IMPS_MAXIMUM_SLEEP_TIME_DEFAULT ( 15 )
230
231//BMPS = BeaconModePowerSave
232#define CFG_ENABLE_BMPS_NAME "gEnableBmps"
233#define CFG_ENABLE_BMPS_MIN ( 0 )
234#define CFG_ENABLE_BMPS_MAX ( 1 )
235#define CFG_ENABLE_BMPS_DEFAULT ( 1 )
236
237#define CFG_BMPS_MINIMUM_LI_NAME "gBmpsMinListenInterval"
238#define CFG_BMPS_MINIMUM_LI_MIN ( 1 )
239#define CFG_BMPS_MINIMUM_LI_MAX ( 65535 )
240#define CFG_BMPS_MINIMUM_LI_DEFAULT ( 1 )
241
242#define CFG_BMPS_MODERATE_LI_NAME "gBmpsModListenInterval"
243#define CFG_BMPS_MODERATE_LI_MIN ( 1 )
244#define CFG_BMPS_MODERATE_LI_MAX ( 65535 )
245#define CFG_BMPS_MODERATE_LI_DEFAULT ( 1 )
246
247#define CFG_BMPS_MAXIMUM_LI_NAME "gBmpsMaxListenInterval"
248#define CFG_BMPS_MAXIMUM_LI_MIN ( 1 )
249#define CFG_BMPS_MAXIMUM_LI_MAX ( 65535 )
250#define CFG_BMPS_MAXIMUM_LI_DEFAULT ( 1 )
251
252// gEnableAutoBmpsTimer has been previously published as an externally
253// configurable parameter. See analysis of CR 178211 for detailed info
254// on why we want to *always* set this to 1 i.e. we no longer want
255// this parameter to be configurable. the clean solution would be for
256// users to not define this item in winreg so that the default value
257// (which needs to be changed to 1) gets picked up but we cannot rely on that
258// since this item has been published already hence the proposed
259// solution to change the name of the item along with the change in the
260// default value. also we could decide to not read this item from registry
261// but leaving open the option of being able to configure this item for
262// ASW's internal use
263#define CFG_ENABLE_AUTO_BMPS_TIMER_NAME "gEnableAutoBmpsTimer_INTERNAL"
264#define CFG_ENABLE_AUTO_BMPS_TIMER_MIN ( 0 )
265#define CFG_ENABLE_AUTO_BMPS_TIMER_MAX ( 1 )
266#define CFG_ENABLE_AUTO_BMPS_TIMER_DEFAULT ( 1 )
267
268#define CFG_AUTO_BMPS_TIMER_VALUE_NAME "gAutoBmpsTimerValue"
269#define CFG_AUTO_BMPS_TIMER_VALUE_MIN ( 1000 )
270#define CFG_AUTO_BMPS_TIMER_VALUE_MAX ( 4294967295UL )
271#define CFG_AUTO_BMPS_TIMER_VALUE_DEFAULT ( 1000 )
272
273#define CFG_MAX_RX_AMPDU_FACTOR_NAME "gMaxRxAmpduFactor"
274#define CFG_MAX_RX_AMPDU_FACTOR_MIN WNI_CFG_MAX_RX_AMPDU_FACTOR_STAMIN
275#define CFG_MAX_RX_AMPDU_FACTOR_MAX WNI_CFG_MAX_RX_AMPDU_FACTOR_STAMAX
276#define CFG_MAX_RX_AMPDU_FACTOR_DEFAULT WNI_CFG_MAX_RX_AMPDU_FACTOR_STADEF
277
Sudhir Sattayappa Kohallida1be202013-07-11 12:04:30 -0700278//Configuration added to enable/disable CTS2SELF in
279//Adaptive RX drain feature
280#define CFG_ENABLE_ADAPT_RX_DRAIN_NAME "gEnableAdaptRxDrain"
281#define CFG_ENABLE_ADAPT_RX_DRAIN_MIN WNI_CFG_ENABLE_ADAPT_RX_DRAIN_STAMIN
282#define CFG_ENABLE_ADAPT_RX_DRAIN_MAX WNI_CFG_ENABLE_ADAPT_RX_DRAIN_STAMAX
283#define CFG_ENABLE_ADAPT_RX_DRAIN_DEFAULT WNI_CFG_ENABLE_ADAPT_RX_DRAIN_STADEF
284
Jeff Johnson295189b2012-06-20 16:38:30 -0700285typedef enum
286{
287 eHDD_DOT11_MODE_AUTO = 0, //covers all things we support
288 eHDD_DOT11_MODE_abg, //11a/b/g only, no HT, no proprietary
289 eHDD_DOT11_MODE_11b,
290 eHDD_DOT11_MODE_11g,
291 eHDD_DOT11_MODE_11n,
292 eHDD_DOT11_MODE_11g_ONLY,
293 eHDD_DOT11_MODE_11n_ONLY,
294 eHDD_DOT11_MODE_11b_ONLY,
Jeff Johnsone7245742012-09-05 17:12:55 -0700295#ifdef WLAN_FEATURE_11AC
296 eHDD_DOT11_MODE_11ac_ONLY,
297 eHDD_DOT11_MODE_11ac,
298#endif
Jeff Johnson295189b2012-06-20 16:38:30 -0700299}eHddDot11Mode;
300
301#define CFG_DOT11_MODE_NAME "gDot11Mode"
302#define CFG_DOT11_MODE_MIN eHDD_DOT11_MODE_AUTO
Jeff Johnsone7245742012-09-05 17:12:55 -0700303#ifdef WLAN_FEATURE_11AC
304#define CFG_DOT11_MODE_MAX eHDD_DOT11_MODE_11ac
305#define CFG_DOT11_MODE_DEFAULT eHDD_DOT11_MODE_11ac
306#else
Jeff Johnson295189b2012-06-20 16:38:30 -0700307#define CFG_DOT11_MODE_MAX eHDD_DOT11_MODE_11b_ONLY
308#define CFG_DOT11_MODE_DEFAULT eHDD_DOT11_MODE_11n
Jeff Johnsone7245742012-09-05 17:12:55 -0700309#endif
Jeff Johnson295189b2012-06-20 16:38:30 -0700310
311#define CFG_CHANNEL_BONDING_MODE_24GHZ_NAME "gChannelBondingMode24GHz"
312#define CFG_CHANNEL_BONDING_MODE_MIN WNI_CFG_CHANNEL_BONDING_MODE_STAMIN
313#define CFG_CHANNEL_BONDING_MODE_MAX WNI_CFG_CHANNEL_BONDING_MODE_STAMAX
314#define CFG_CHANNEL_BONDING_MODE_DEFAULT WNI_CFG_CHANNEL_BONDING_MODE_STADEF
315
316#define CFG_CHANNEL_BONDING_MODE_5GHZ_NAME "gChannelBondingMode5GHz"
317#define CFG_CHANNEL_BONDING_MODE_MIN WNI_CFG_CHANNEL_BONDING_MODE_STAMIN
318#define CFG_CHANNEL_BONDING_MODE_MAX WNI_CFG_CHANNEL_BONDING_MODE_STAMAX
319#define CFG_CHANNEL_BONDING_MODE_DEFAULT WNI_CFG_CHANNEL_BONDING_MODE_STADEF
320
321#define CFG_FIXED_RATE_NAME "gFixedRate"
322#define CFG_FIXED_RATE_MIN WNI_CFG_FIXED_RATE_STAMIN
323#define CFG_FIXED_RATE_MAX WNI_CFG_FIXED_RATE_STAMAX
324#define CFG_FIXED_RATE_DEFAULT WNI_CFG_FIXED_RATE_STADEF
325
326#define CFG_SHORT_GI_20MHZ_NAME "gShortGI20Mhz"
327#define CFG_SHORT_GI_20MHZ_MIN WNI_CFG_SHORT_GI_20MHZ_STAMIN
328#define CFG_SHORT_GI_20MHZ_MAX WNI_CFG_SHORT_GI_20MHZ_STAMAX
329#define CFG_SHORT_GI_20MHZ_DEFAULT WNI_CFG_SHORT_GI_20MHZ_STADEF
330
331#define CFG_BLOCK_ACK_AUTO_SETUP_NAME "gBlockAckAutoSetup"
332#define CFG_BLOCK_ACK_AUTO_SETUP_MIN ( 0 )
333#define CFG_BLOCK_ACK_AUTO_SETUP_MAX ( 1 )
334#define CFG_BLOCK_ACK_AUTO_SETUP_DEFAULT ( 1 )
335
336#define CFG_SCAN_RESULT_AGE_COUNT_NAME "gScanResultAgeCount"
337#define CFG_SCAN_RESULT_AGE_COUNT_MIN ( 1 )
338#define CFG_SCAN_RESULT_AGE_COUNT_MAX ( 100 )
339#define CFG_SCAN_RESULT_AGE_COUNT_DEFAULT ( 3 )
340
341//All in seconds
342//Not Connect, No Power Save
343#define CFG_SCAN_RESULT_AGE_TIME_NCNPS_NAME "gScanResultAgeNCNPS"
344#define CFG_SCAN_RESULT_AGE_TIME_NCNPS_MIN ( 10 )
345#define CFG_SCAN_RESULT_AGE_TIME_NCNPS_MAX ( 10000 )
346#define CFG_SCAN_RESULT_AGE_TIME_NCNPS_DEFAULT ( 50 )
347//Not Connect, Power Save
348#define CFG_SCAN_RESULT_AGE_TIME_NCPS_NAME "gScanResultAgeNCPS"
349#define CFG_SCAN_RESULT_AGE_TIME_NCPS_MIN ( 10 )
350#define CFG_SCAN_RESULT_AGE_TIME_NCPS_MAX ( 10000 )
351#define CFG_SCAN_RESULT_AGE_TIME_NCPS_DEFAULT ( 300 )
352//Connect, No Power Save
353#define CFG_SCAN_RESULT_AGE_TIME_CNPS_NAME "gScanResultAgeCNPS"
354#define CFG_SCAN_RESULT_AGE_TIME_CNPS_MIN ( 10 )
355#define CFG_SCAN_RESULT_AGE_TIME_CNPS_MAX ( 10000 )
356#define CFG_SCAN_RESULT_AGE_TIME_CNPS_DEFAULT ( 150 )
357//Connect, Power Save
358#define CFG_SCAN_RESULT_AGE_TIME_CPS_NAME "gScanResultAgeCPS"
359#define CFG_SCAN_RESULT_AGE_TIME_CPS_MIN ( 10 )
360#define CFG_SCAN_RESULT_AGE_TIME_CPS_MAX ( 10000 )
361#define CFG_SCAN_RESULT_AGE_TIME_CPS_DEFAULT ( 600 )
362
363#define CFG_RSSI_CATEGORY_GAP_NAME "gRssiCatGap"
Madan Mohan Koyyalamudi4c8c6352012-10-15 16:40:16 -0700364#define CFG_RSSI_CATEGORY_GAP_MIN ( 5 )
Jeff Johnson295189b2012-06-20 16:38:30 -0700365#define CFG_RSSI_CATEGORY_GAP_MAX ( 100 )
Srinivas Girigowdade697412013-02-14 16:31:48 -0800366#define CFG_RSSI_CATEGORY_GAP_DEFAULT ( 5 )
Jeff Johnson295189b2012-06-20 16:38:30 -0700367
Madan Mohan Koyyalamudid5026072012-11-30 14:56:21 -0800368#if defined (WLAN_FEATURE_VOWIFI_11R) || defined (FEATURE_WLAN_CCX) || defined(FEATURE_WLAN_LFR)
369#define CFG_ROAM_PREFER_5GHZ "gRoamPrefer5GHz"
370#define CFG_ROAM_PREFER_5GHZ_MIN ( 0 )
371#define CFG_ROAM_PREFER_5GHZ_MAX ( 1 )
372#define CFG_ROAM_PREFER_5GHZ_DEFAULT ( 1 )
Srinivas Girigowdabbd16eb2013-03-21 12:34:46 -0700373
Srinivas Girigowdad42dfce2013-06-19 17:33:50 -0700374/*
375 To enable, set gRoamIntraBand=1 (Roaming within band)
376 To disable, set gRoamIntraBand=0 (Roaming across band)
377*/
Srinivas Girigowdabbd16eb2013-03-21 12:34:46 -0700378#define CFG_ROAM_INTRA_BAND "gRoamIntraBand"
379#define CFG_ROAM_INTRA_BAND_MIN ( 0 )
380#define CFG_ROAM_INTRA_BAND_MAX ( 1 )
381#define CFG_ROAM_INTRA_BAND_DEFAULT ( 0 )
Madan Mohan Koyyalamudid5026072012-11-30 14:56:21 -0800382#endif
383
Jeff Johnson295189b2012-06-20 16:38:30 -0700384#define CFG_SHORT_PREAMBLE_NAME "gShortPreamble"
385#define CFG_SHORT_PREAMBLE_MIN WNI_CFG_SHORT_PREAMBLE_STAMIN
386#define CFG_SHORT_PREAMBLE_MAX WNI_CFG_SHORT_PREAMBLE_STAMAX
387#define CFG_SHORT_PREAMBLE_DEFAULT WNI_CFG_SHORT_PREAMBLE_STADEF
388
389#define CFG_IBSS_AUTO_BSSID_NAME "gAutoIbssBssid"
390#define CFG_IBSS_AUTO_BSSID_MIN WNI_CFG_IBSS_AUTO_BSSID_STAMIN
391#define CFG_IBSS_AUTO_BSSID_MAX WNI_CFG_IBSS_AUTO_BSSID_STAMAX
392#define CFG_IBSS_AUTO_BSSID_DEFAULT WNI_CFG_IBSS_AUTO_BSSID_STADEF
393
394#define CFG_IBSS_BSSID_NAME "gIbssBssid"
395#define CFG_IBSS_BSSID_MIN "000000000000"
396#define CFG_IBSS_BSSID_MAX "ffffffffffff"
397#define CFG_IBSS_BSSID_DEFAULT "000AF5040506"
398
399#define CFG_INTF0_MAC_ADDR_NAME "Intf0MacAddress"
400#define CFG_INTF0_MAC_ADDR_MIN "000000000000"
401#define CFG_INTF0_MAC_ADDR_MAX "ffffffffffff"
402#define CFG_INTF0_MAC_ADDR_DEFAULT "000AF5898980"
403
404#define CFG_INTF1_MAC_ADDR_NAME "Intf1MacAddress"
405#define CFG_INTF1_MAC_ADDR_MIN "000000000000"
406#define CFG_INTF1_MAC_ADDR_MAX "ffffffffffff"
407#define CFG_INTF1_MAC_ADDR_DEFAULT "000AF5898981"
408
409#define CFG_INTF2_MAC_ADDR_NAME "Intf2MacAddress"
410#define CFG_INTF2_MAC_ADDR_MIN "000000000000"
411#define CFG_INTF2_MAC_ADDR_MAX "ffffffffffff"
412#define CFG_INTF2_MAC_ADDR_DEFAULT "000AF5898982"
413
414#define CFG_INTF3_MAC_ADDR_NAME "Intf3MacAddress"
415#define CFG_INTF3_MAC_ADDR_MIN "000000000000"
416#define CFG_INTF3_MAC_ADDR_MAX "ffffffffffff"
417#define CFG_INTF3_MAC_ADDR_DEFAULT "000AF5898983"
418
Jeff Johnson295189b2012-06-20 16:38:30 -0700419#define CFG_AP_QOS_UAPSD_MODE_NAME "gEnableApUapsd" // ACs to setup U-APSD for at assoc
420#define CFG_AP_QOS_UAPSD_MODE_MIN ( 0 )
421#define CFG_AP_QOS_UAPSD_MODE_MAX ( 1 )
422#define CFG_AP_QOS_UAPSD_MODE_DEFAULT ( 1 )
423
424#define CFG_AP_COUNTRY_CODE "gAPCntryCode"
425#define CFG_AP_COUNTRY_CODE_MIN "USI"
426#define CFG_AP_COUNTRY_CODE_MAX "USI"
427#define CFG_AP_COUNTRY_CODE_DEFAULT "FFF"
428
Madan Mohan Koyyalamudi3ff2a0b2012-10-15 14:33:46 -0700429#define CFG_AP_ENABLE_RANDOM_BSSID_NAME "gEnableApRandomBssid"
430#define CFG_AP_ENABLE_RANDOM_BSSID_MIN ( 0 )
431#define CFG_AP_ENABLE_RANDOM_BSSID_MAX ( 1 )
432#define CFG_AP_ENABLE_RANDOM_BSSID_DEFAULT ( 0 )
433
Jeff Johnson295189b2012-06-20 16:38:30 -0700434#define CFG_AP_ENABLE_PROTECTION_MODE_NAME "gEnableApProt"
435#define CFG_AP_ENABLE_PROTECTION_MODE_MIN ( 0 )
436#define CFG_AP_ENABLE_PROTECTION_MODE_MAX ( 1 )
437#define CFG_AP_ENABLE_PROTECTION_MODE_DEFAULT ( 1 )
438
439// Bit map for CFG_AP_PROTECTION_MODE_DEFAULT
440// LOWER byte for associated stations
441// UPPER byte for overlapping stations
442// each byte will have the following info
443// bit15 bit14 bit13 bit12 bit11 bit10 bit9 bit8
444// OBSS RIFS LSIG_TXOP NON_GF HT20 FROM_11G FROM_11B FROM_11A
445// bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0
446// OBSS RIFS LSIG_TXOP NON_GF HT_20 FROM_11G FROM_11B FROM_11A
447#define CFG_AP_PROTECTION_MODE_NAME "gApProtection"
448#define CFG_AP_PROTECTION_MODE_MIN ( 0x0 )
449#define CFG_AP_PROTECTION_MODE_MAX ( 0xFFFF )
450#define CFG_AP_PROTECTION_MODE_DEFAULT ( 0xBFFF )
451
452#define CFG_AP_OBSS_PROTECTION_MODE_NAME "gEnableApOBSSProt"
453#define CFG_AP_OBSS_PROTECTION_MODE_MIN ( 0 )
454#define CFG_AP_OBSS_PROTECTION_MODE_MAX ( 1 )
455#define CFG_AP_OBSS_PROTECTION_MODE_DEFAULT ( 0 )
456
457#define CFG_AP_STA_SECURITY_SEPERATION_NAME "gDisableIntraBssFwd"
458#define CFG_AP_STA_SECURITY_SEPERATION_MIN ( 0 )
459#define CFG_AP_STA_SECURITY_SEPERATION_MAX ( 1 )
460#define CFG_AP_STA_SECURITY_SEPERATION_DEFAULT ( 0 )
461
462#define CFG_AP_LISTEN_MODE_NAME "gEnablePhyAgcListenMode"
463#define CFG_AP_LISTEN_MODE_MIN (0)
464#define CFG_AP_LISTEN_MODE_MAX (128)
465#define CFG_AP_LISTEN_MODE_DEFAULT (128)
466
467#define CFG_AP_AUTO_SHUT_OFF "gAPAutoShutOff"
468#define CFG_AP_AUTO_SHUT_OFF_MIN ( 0 )
469#define CFG_AP_AUTO_SHUT_OFF_MAX ( 4294967295UL )
470#define CFG_AP_AUTO_SHUT_OFF_DEFAULT ( 0 )
471
472#define CFG_FRAMES_PROCESSING_TH_MODE_NAME "gMinFramesProcThres"
473#define CFG_FRAMES_PROCESSING_TH_MIN ( 0 )
474#define CFG_FRAMES_PROCESSING_TH_MAX ( 39 )
475#define CFG_FRAMES_PROCESSING_TH_DEFAULT ( 0 )
476
477#define CFG_SAP_CHANNEL_SELECT_START_CHANNEL "gAPChannelSelectStartChannel"
478#define CFG_SAP_CHANNEL_SELECT_START_CHANNEL_MIN (0)
479#define CFG_SAP_CHANNEL_SELECT_START_CHANNEL_MAX (0xFF)
480#define CFG_SAP_CHANNEL_SELECT_START_CHANNEL_DEFAULT (0)
481
482#define CFG_SAP_CHANNEL_SELECT_END_CHANNEL "gAPChannelSelectEndChannel"
483#define CFG_SAP_CHANNEL_SELECT_END_CHANNEL_MIN (0)
484#define CFG_SAP_CHANNEL_SELECT_END_CHANNEL_MAX (0xFF)
485#define CFG_SAP_CHANNEL_SELECT_END_CHANNEL_DEFAULT (11)
486
487#define CFG_SAP_CHANNEL_SELECT_OPERATING_BAND "gAPChannelSelectOperatingBand"
488#define CFG_SAP_CHANNEL_SELECT_OPERATING_BAND_MIN (0)
489#define CFG_SAP_CHANNEL_SELECT_OPERATING_BAND_MAX (0x4)
490#define CFG_SAP_CHANNEL_SELECT_OPERATING_BAND_DEFAULT (0)
491
492#define CFG_DISABLE_PACKET_FILTER "gDisablePacketFilter"
493#define CFG_DISABLE_PACKET_FILTER_MIN (0)
494#define CFG_DISABLE_PACKET_FILTER_MAX (0x1)
495#define CFG_DISABLE_PACKET_FILTER_DEFAULT (0)
496
497#define CFG_ENABLE_LTE_COEX "gEnableLTECoex"
498#define CFG_ENABLE_LTE_COEX_MIN ( 0 )
499#define CFG_ENABLE_LTE_COEX_MAX ( 1 )
500#define CFG_ENABLE_LTE_COEX_DEFAULT ( 0 )
501
502#define CFG_AP_KEEP_ALIVE_PERIOD_NAME "gApKeepAlivePeriod"
Madan Mohan Koyyalamudi2558bc92013-08-24 16:54:31 +0530503#define CFG_AP_KEEP_ALIVE_PERIOD_MIN ( 3 )
504#define CFG_AP_KEEP_ALIVE_PERIOD_MAX ( 20 )
505#define CFG_AP_KEEP_ALIVE_PERIOD_DEFAULT ( 5 )
Jeff Johnson295189b2012-06-20 16:38:30 -0700506
507#define CFG_GO_KEEP_ALIVE_PERIOD_NAME "gGoKeepAlivePeriod"
Madan Mohan Koyyalamudi2558bc92013-08-24 16:54:31 +0530508#define CFG_GO_KEEP_ALIVE_PERIOD_MIN ( 3 )
509#define CFG_GO_KEEP_ALIVE_PERIOD_MAX ( 20 )
510#define CFG_GO_KEEP_ALIVE_PERIOD_DEFAULT ( 5 )
Jeff Johnson295189b2012-06-20 16:38:30 -0700511
Sejal Chauhanbcde8bc2013-03-04 18:06:36 +0530512#define CFG_AP_LINK_MONITOR_PERIOD_NAME "gApLinkMonitorPeriod"
Madan Mohan Koyyalamudi2558bc92013-08-24 16:54:31 +0530513#define CFG_AP_LINK_MONITOR_PERIOD_MIN ( 3 )
514#define CFG_AP_LINK_MONITOR_PERIOD_MAX ( 50 )
515#define CFG_AP_LINK_MONITOR_PERIOD_DEFAULT ( 10 )
516
517/* gGoLinkMonitorPeriod is period where link is idle and where
518 * we send NULL frame
519 */
520#define CFG_GO_LINK_MONITOR_PERIOD_NAME "gGoLinkMonitorPeriod"
521#define CFG_GO_LINK_MONITOR_PERIOD_MIN ( 3 )
522#define CFG_GO_LINK_MONITOR_PERIOD_MAX ( 50 )
523#define CFG_GO_LINK_MONITOR_PERIOD_DEFAULT ( 10 )
524
Jeff Johnson295189b2012-06-20 16:38:30 -0700525
526#define CFG_BEACON_INTERVAL_NAME "gBeaconInterval"
527#define CFG_BEACON_INTERVAL_MIN WNI_CFG_BEACON_INTERVAL_STAMIN
528#define CFG_BEACON_INTERVAL_MAX WNI_CFG_BEACON_INTERVAL_STAMAX
529#define CFG_BEACON_INTERVAL_DEFAULT WNI_CFG_BEACON_INTERVAL_STADEF
530
Jeff Johnson295189b2012-06-20 16:38:30 -0700531//Additional Handoff related Parameters
532#define CFG_ENABLE_IDLE_SCAN_NAME "gEnableIdleScan"
533#define CFG_ENABLE_IDLE_SCAN_MIN ( 0 )
534#define CFG_ENABLE_IDLE_SCAN_MAX ( 1 )
535#define CFG_ENABLE_IDLE_SCAN_DEFAULT ( 1 )
536
537#define CFG_ROAMING_TIME_NAME "gRoamingTime"
538#define CFG_ROAMING_TIME_MIN ( 0 )
539#define CFG_ROAMING_TIME_MAX ( 4294967UL )
540#define CFG_ROAMING_TIME_DEFAULT ( 10 )
541
542#define CFG_VCC_RSSI_TRIGGER_NAME "gVccRssiTrigger"
543#define CFG_VCC_RSSI_TRIGGER_MIN ( 0 )
544#define CFG_VCC_RSSI_TRIGGER_MAX ( 80 )
545#define CFG_VCC_RSSI_TRIGGER_DEFAULT ( 80 )
546
547#define CFG_VCC_UL_MAC_LOSS_THRESH_NAME "gVccUlMacLossThresh"
548#define CFG_VCC_UL_MAC_LOSS_THRESH_MIN ( 0 )
549#define CFG_VCC_UL_MAC_LOSS_THRESH_MAX ( 9 )
550#define CFG_VCC_UL_MAC_LOSS_THRESH_DEFAULT ( 9 )
551
552#define CFG_PASSIVE_MAX_CHANNEL_TIME_NAME "gPassiveMaxChannelTime"
553#define CFG_PASSIVE_MAX_CHANNEL_TIME_MIN ( 0 )
554#define CFG_PASSIVE_MAX_CHANNEL_TIME_MAX ( 10000 )
555#define CFG_PASSIVE_MAX_CHANNEL_TIME_DEFAULT ( 110 )
556
557#define CFG_PASSIVE_MIN_CHANNEL_TIME_NAME "gPassiveMinChannelTime"
558#define CFG_PASSIVE_MIN_CHANNEL_TIME_MIN ( 0 )
559#define CFG_PASSIVE_MIN_CHANNEL_TIME_MAX ( 10000 )
560#define CFG_PASSIVE_MIN_CHANNEL_TIME_DEFAULT ( 60 )
561
562#define CFG_ACTIVE_MAX_CHANNEL_TIME_NAME "gActiveMaxChannelTime"
563#define CFG_ACTIVE_MAX_CHANNEL_TIME_MIN ( 0 )
564#define CFG_ACTIVE_MAX_CHANNEL_TIME_MAX ( 10000 )
565#define CFG_ACTIVE_MAX_CHANNEL_TIME_DEFAULT ( 40 )
566
567#define CFG_ACTIVE_MIN_CHANNEL_TIME_NAME "gActiveMinChannelTime"
568#define CFG_ACTIVE_MIN_CHANNEL_TIME_MIN ( 0 )
569#define CFG_ACTIVE_MIN_CHANNEL_TIME_MAX ( 10000 )
570#define CFG_ACTIVE_MIN_CHANNEL_TIME_DEFAULT ( 20 )
571
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800572#define CFG_ACTIVE_MAX_CHANNEL_TIME_BTC_NAME "gActiveMaxChannelTimeBtc"
573#define CFG_ACTIVE_MAX_CHANNEL_TIME_BTC_MIN ( 0 )
574#define CFG_ACTIVE_MAX_CHANNEL_TIME_BTC_MAX ( 10000 )
575#define CFG_ACTIVE_MAX_CHANNEL_TIME_BTC_DEFAULT ( 120 )
576
577#define CFG_ACTIVE_MIN_CHANNEL_TIME_BTC_NAME "gActiveMinChannelTimeBtc"
578#define CFG_ACTIVE_MIN_CHANNEL_TIME_BTC_MIN ( 0 )
579#define CFG_ACTIVE_MIN_CHANNEL_TIME_BTC_MAX ( 10000 )
580#define CFG_ACTIVE_MIN_CHANNEL_TIME_BTC_DEFAULT ( 60 )
581
Kiran Kumar Lokere1f39e952013-04-03 18:34:30 -0700582#define CFG_RETRY_LIMIT_ZERO_NAME "gRetryLimitZero"
583#define CFG_RETRY_LIMIT_ZERO_MIN ( 0 )
584#define CFG_RETRY_LIMIT_ZERO_MAX ( 15 )
585#define CFG_RETRY_LIMIT_ZERO_DEFAULT ( 5 )
586
587#define CFG_RETRY_LIMIT_ONE_NAME "gRetryLimitOne"
588#define CFG_RETRY_LIMIT_ONE_MIN ( 0 )
589#define CFG_RETRY_LIMIT_ONE_MAX ( 15 )
590#define CFG_RETRY_LIMIT_ONE_DEFAULT ( 10 )
591
592#define CFG_RETRY_LIMIT_TWO_NAME "gRetryLimitTwo"
593#define CFG_RETRY_LIMIT_TWO_MIN ( 0 )
594#define CFG_RETRY_LIMIT_TWO_MAX ( 15 )
595#define CFG_RETRY_LIMIT_TWO_DEFAULT ( 15 )
596
Kiran Kumar Lokere458d7322013-05-29 14:29:43 -0700597#define CFG_DISABLE_AGG_WITH_BTC_NAME "gDisableAggWithBTC"
598#define CFG_DISABLE_AGG_WITH_BTC_MIN ( 0 )
599#define CFG_DISABLE_AGG_WITH_BTC_MAX ( 1 )
600#define CFG_DISABLE_AGG_WITH_BTC_DEFAULT ( 1 )
601
Madan Mohan Koyyalamudi4ff9cd62012-10-30 17:48:57 -0700602#ifdef WLAN_AP_STA_CONCURRENCY
603
604#define CFG_PASSIVE_MAX_CHANNEL_TIME_CONC_NAME "gPassiveMaxChannelTimeConc"
605#define CFG_PASSIVE_MAX_CHANNEL_TIME_CONC_MIN ( 0 )
606#define CFG_PASSIVE_MAX_CHANNEL_TIME_CONC_MAX ( 10000 )
607#define CFG_PASSIVE_MAX_CHANNEL_TIME_CONC_DEFAULT ( 110 )
608
609#define CFG_PASSIVE_MIN_CHANNEL_TIME_CONC_NAME "gPassiveMinChannelTimeConc"
610#define CFG_PASSIVE_MIN_CHANNEL_TIME_CONC_MIN ( 0 )
611#define CFG_PASSIVE_MIN_CHANNEL_TIME_CONC_MAX ( 10000 )
612#define CFG_PASSIVE_MIN_CHANNEL_TIME_CONC_DEFAULT ( 60 )
613
614#define CFG_ACTIVE_MAX_CHANNEL_TIME_CONC_NAME "gActiveMaxChannelTimeConc"
615#define CFG_ACTIVE_MAX_CHANNEL_TIME_CONC_MIN ( 0 )
616#define CFG_ACTIVE_MAX_CHANNEL_TIME_CONC_MAX ( 10000 )
Viral Modi0e06f192013-03-05 19:05:04 -0800617#define CFG_ACTIVE_MAX_CHANNEL_TIME_CONC_DEFAULT ( 40 )
Madan Mohan Koyyalamudi4ff9cd62012-10-30 17:48:57 -0700618
619#define CFG_ACTIVE_MIN_CHANNEL_TIME_CONC_NAME "gActiveMinChannelTimeConc"
620#define CFG_ACTIVE_MIN_CHANNEL_TIME_CONC_MIN ( 0 )
621#define CFG_ACTIVE_MIN_CHANNEL_TIME_CONC_MAX ( 10000 )
622#define CFG_ACTIVE_MIN_CHANNEL_TIME_CONC_DEFAULT ( 20 )
623
624#define CFG_REST_TIME_CONC_NAME "gRestTimeConc"
625#define CFG_REST_TIME_CONC_MIN ( 0 )
626#define CFG_REST_TIME_CONC_MAX ( 10000 )
Madan Mohan Koyyalamudi4805fa82012-11-09 17:53:39 -0800627#define CFG_REST_TIME_CONC_DEFAULT ( 100 )
Madan Mohan Koyyalamudi4ff9cd62012-10-30 17:48:57 -0700628
Sudhir Sattayappa Kohallieb97d502013-05-22 23:16:42 -0700629#define CFG_NUM_STA_CHAN_COMBINED_CONC_NAME "gNumStaChanCombinedConc"
630#define CFG_NUM_STA_CHAN_COMBINED_CONC_MIN ( 1 )
631#define CFG_NUM_STA_CHAN_COMBINED_CONC_MAX ( 255 )
632#define CFG_NUM_STA_CHAN_COMBINED_CONC_DEFAULT ( 3 )
633
634#define CFG_NUM_P2P_CHAN_COMBINED_CONC_NAME "gNumP2PChanCombinedConc"
635#define CFG_NUM_P2P_CHAN_COMBINED_CONC_MIN ( 1 )
636#define CFG_NUM_P2P_CHAN_COMBINED_CONC_MAX ( 255 )
637#define CFG_NUM_P2P_CHAN_COMBINED_CONC_DEFAULT ( 1 )
Vinay Malekal05fdc812012-12-17 13:04:30 -0800638
Madan Mohan Koyyalamudi4ff9cd62012-10-30 17:48:57 -0700639#endif
640
Jeff Johnson295189b2012-06-20 16:38:30 -0700641#define CFG_MAX_PS_POLL_NAME "gMaxPsPoll"
642#define CFG_MAX_PS_POLL_MIN WNI_CFG_MAX_PS_POLL_STAMIN
643#define CFG_MAX_PS_POLL_MAX WNI_CFG_MAX_PS_POLL_STAMAX
644#define CFG_MAX_PS_POLL_DEFAULT WNI_CFG_MAX_PS_POLL_STADEF
645
646#define CFG_MAX_TX_POWER_NAME "gTxPowerCap"
647#define CFG_MAX_TX_POWER_MIN WNI_CFG_CURRENT_TX_POWER_LEVEL_STAMIN
648#define CFG_MAX_TX_POWER_MAX WNI_CFG_CURRENT_TX_POWER_LEVEL_STAMAX
649//Not to use CFG default because if no registry setting, this is ignored by SME.
650#define CFG_MAX_TX_POWER_DEFAULT WNI_CFG_CURRENT_TX_POWER_LEVEL_STAMAX
651
652
653#define CFG_LOW_GAIN_OVERRIDE_NAME "gLowGainOverride"
654#define CFG_LOW_GAIN_OVERRIDE_MIN WNI_CFG_LOW_GAIN_OVERRIDE_STAMIN
655#define CFG_LOW_GAIN_OVERRIDE_MAX WNI_CFG_LOW_GAIN_OVERRIDE_STAMAX
656#define CFG_LOW_GAIN_OVERRIDE_DEFAULT WNI_CFG_LOW_GAIN_OVERRIDE_STADEF
657
658#define CFG_RSSI_FILTER_PERIOD_NAME "gRssiFilterPeriod"
659#define CFG_RSSI_FILTER_PERIOD_MIN WNI_CFG_RSSI_FILTER_PERIOD_STAMIN
660#define CFG_RSSI_FILTER_PERIOD_MAX WNI_CFG_RSSI_FILTER_PERIOD_STAMAX
661// Increased this value for Non-CCX AP. This is cause FW RSSI Monitoring
662// the consumer of this value is ON by default. So to impact power numbers
663// we are setting this to a high value.
664#define CFG_RSSI_FILTER_PERIOD_DEFAULT WNI_CFG_RSSI_FILTER_PERIOD_STADEF
665
666#define CFG_IGNORE_DTIM_NAME "gIgnoreDtim"
667#define CFG_IGNORE_DTIM_MIN WNI_CFG_IGNORE_DTIM_STAMIN
668#define CFG_IGNORE_DTIM_MAX WNI_CFG_IGNORE_DTIM_STAMAX
669#define CFG_IGNORE_DTIM_DEFAULT WNI_CFG_IGNORE_DTIM_STADEF
670
Yue Mac24062f2013-05-13 17:01:29 -0700671#define CFG_MAX_LI_MODULATED_DTIM_NAME "gMaxLIModulatedDTIM"
672#define CFG_MAX_LI_MODULATED_DTIM_MIN ( 1 )
673#define CFG_MAX_LI_MODULATED_DTIM_MAX ( 10 )
674#define CFG_MAX_LI_MODULATED_DTIM_DEFAULT ( 10 )
675
Jeff Johnson295189b2012-06-20 16:38:30 -0700676#define CFG_RX_ANT_CONFIGURATION_NAME "gNumRxAnt"
677#define CFG_RX_ANT_CONFIGURATION_NAME_MIN ( 1 )
678#define CFG_RX_ANT_CONFIGURATION_NAME_MAX ( 2 )
679#define CFG_RX_ANT_CONFIGURATION_NAME_DEFAULT ( 2 )
680
681#define CFG_FW_HEART_BEAT_MONITORING_NAME "gEnableFWHeartBeatMonitoring"
682#define CFG_FW_HEART_BEAT_MONITORING_MIN ( 0 )
683#define CFG_FW_HEART_BEAT_MONITORING_MAX ( 1 )
684#define CFG_FW_HEART_BEAT_MONITORING_DEFAULT ( 1 )
685
686#define CFG_FW_BEACON_FILTERING_NAME "gEnableFWBeaconFiltering"
687#define CFG_FW_BEACON_FILTERING_MIN ( 0 )
688#define CFG_FW_BEACON_FILTERING_MAX ( 1 )
689#define CFG_FW_BEACON_FILTERING_DEFAULT ( 1 )
690
691#define CFG_FW_RSSI_MONITORING_NAME "gEnableFWRssiMonitoring"
692#define CFG_FW_RSSI_MONITORING_MIN ( 0 )
693#define CFG_FW_RSSI_MONITORING_MAX ( 1 )
Srinivas Girigowdaba173692013-08-07 11:55:38 -0700694#define CFG_FW_RSSI_MONITORING_DEFAULT ( 1 )
Jeff Johnson295189b2012-06-20 16:38:30 -0700695
696#define CFG_DATA_INACTIVITY_TIMEOUT_NAME "gDataInactivityTimeout"
697#define CFG_DATA_INACTIVITY_TIMEOUT_MIN ( 1 )
698#define CFG_DATA_INACTIVITY_TIMEOUT_MAX ( 255 )
699#define CFG_DATA_INACTIVITY_TIMEOUT_DEFAULT ( 20 )
700
701#define CFG_NTH_BEACON_FILTER_NAME "gNthBeaconFilter"
702#define CFG_NTH_BEACON_FILTER_MIN ( WNI_CFG_NTH_BEACON_FILTER_STAMIN )
703#define CFG_NTH_BEACON_FILTER_MAX ( WNI_CFG_NTH_BEACON_FILTER_STAMAX )
704#define CFG_NTH_BEACON_FILTER_DEFAULT ( WNI_CFG_NTH_BEACON_FILTER_STADEF )
705
706#define CFG_RF_SETTLING_TIME_CLK_NAME "rfSettlingTimeUs"
707#define CFG_RF_SETTLING_TIME_CLK_MIN ( 0 )
708#define CFG_RF_SETTLING_TIME_CLK_MAX ( 60000 )
709#define CFG_RF_SETTLING_TIME_CLK_DEFAULT ( 1500 )
710
711#define CFG_INFRA_STA_KEEP_ALIVE_PERIOD_NAME "gStaKeepAlivePeriod"
712#define CFG_INFRA_STA_KEEP_ALIVE_PERIOD_MIN ( 0 )
713#define CFG_INFRA_STA_KEEP_ALIVE_PERIOD_MAX ( 65535)
714#define CFG_INFRA_STA_KEEP_ALIVE_PERIOD_DEFAULT ( 0 )
715
716//WMM configuration
717#define CFG_QOS_WMM_MODE_NAME "WmmIsEnabled"
718#define CFG_QOS_WMM_MODE_MIN (0)
719#define CFG_QOS_WMM_MODE_MAX (2) //HDD_WMM_NO_QOS
720#define CFG_QOS_WMM_MODE_DEFAULT (0) //HDD_WMM_AUTO
721
722#define CFG_QOS_WMM_80211E_ENABLED_NAME "80211eIsEnabled"
723#define CFG_QOS_WMM_80211E_ENABLED_MIN (0)
724#define CFG_QOS_WMM_80211E_ENABLED_MAX (1)
725#define CFG_QOS_WMM_80211E_ENABLED_DEFAULT (0)
726
727#define CFG_QOS_WMM_UAPSD_MASK_NAME "UapsdMask" // ACs to setup U-APSD for at assoc
728#define CFG_QOS_WMM_UAPSD_MASK_MIN (0x00)
729#define CFG_QOS_WMM_UAPSD_MASK_MAX (0xFF)
730#define CFG_QOS_WMM_UAPSD_MASK_DEFAULT (0x00)
731
Jeff Johnson295189b2012-06-20 16:38:30 -0700732#define CFG_QOS_WMM_INFRA_UAPSD_VO_SRV_INTV_NAME "InfraUapsdVoSrvIntv"
733#define CFG_QOS_WMM_INFRA_UAPSD_VO_SRV_INTV_MIN (0)
734#define CFG_QOS_WMM_INFRA_UAPSD_VO_SRV_INTV_MAX (4294967295UL )
735#define CFG_QOS_WMM_INFRA_UAPSD_VO_SRV_INTV_DEFAULT (20)
736
737#define CFG_QOS_WMM_INFRA_UAPSD_VO_SUS_INTV_NAME "InfraUapsdVoSuspIntv"
738#define CFG_QOS_WMM_INFRA_UAPSD_VO_SUS_INTV_MIN (0)
739#define CFG_QOS_WMM_INFRA_UAPSD_VO_SUS_INTV_MAX (4294967295UL )
740#define CFG_QOS_WMM_INFRA_UAPSD_VO_SUS_INTV_DEFAULT (2000)
741
742#define CFG_QOS_WMM_INFRA_UAPSD_VI_SRV_INTV_NAME "InfraUapsdViSrvIntv"
743#define CFG_QOS_WMM_INFRA_UAPSD_VI_SRV_INTV_MIN (0)
744#define CFG_QOS_WMM_INFRA_UAPSD_VI_SRV_INTV_MAX (4294967295UL)
745#define CFG_QOS_WMM_INFRA_UAPSD_VI_SRV_INTV_DEFAULT (300)
746
747#define CFG_QOS_WMM_INFRA_UAPSD_VI_SUS_INTV_NAME "InfraUapsdViSuspIntv"
748#define CFG_QOS_WMM_INFRA_UAPSD_VI_SUS_INTV_MIN (0)
749#define CFG_QOS_WMM_INFRA_UAPSD_VI_SUS_INTV_MAX (4294967295UL)
750#define CFG_QOS_WMM_INFRA_UAPSD_VI_SUS_INTV_DEFAULT (2000)
751
752#define CFG_QOS_WMM_INFRA_UAPSD_BE_SRV_INTV_NAME "InfraUapsdBeSrvIntv"
753#define CFG_QOS_WMM_INFRA_UAPSD_BE_SRV_INTV_MIN (0)
754#define CFG_QOS_WMM_INFRA_UAPSD_BE_SRV_INTV_MAX (4294967295UL)
755#define CFG_QOS_WMM_INFRA_UAPSD_BE_SRV_INTV_DEFAULT (300)
756
757#define CFG_QOS_WMM_INFRA_UAPSD_BE_SUS_INTV_NAME "InfraUapsdBeSuspIntv"
758#define CFG_QOS_WMM_INFRA_UAPSD_BE_SUS_INTV_MIN (0)
759#define CFG_QOS_WMM_INFRA_UAPSD_BE_SUS_INTV_MAX (4294967295UL)
760#define CFG_QOS_WMM_INFRA_UAPSD_BE_SUS_INTV_DEFAULT (2000)
761
762#define CFG_QOS_WMM_INFRA_UAPSD_BK_SRV_INTV_NAME "InfraUapsdBkSrvIntv"
763#define CFG_QOS_WMM_INFRA_UAPSD_BK_SRV_INTV_MIN (0)
764#define CFG_QOS_WMM_INFRA_UAPSD_BK_SRV_INTV_MAX (4294967295UL)
765#define CFG_QOS_WMM_INFRA_UAPSD_BK_SRV_INTV_DEFAULT (300)
766
767#define CFG_QOS_WMM_INFRA_UAPSD_BK_SUS_INTV_NAME "InfraUapsdBkSuspIntv"
768#define CFG_QOS_WMM_INFRA_UAPSD_BK_SUS_INTV_MIN (0)
769#define CFG_QOS_WMM_INFRA_UAPSD_BK_SUS_INTV_MAX (4294967295UL)
770#define CFG_QOS_WMM_INFRA_UAPSD_BK_SUS_INTV_DEFAULT (2000)
771
772#ifdef FEATURE_WLAN_CCX
773#define CFG_QOS_WMM_INFRA_INACTIVITY_INTERVAL_NAME "InfraInactivityInterval"
774#define CFG_QOS_WMM_INFRA_INACTIVITY_INTERVAL_MIN (0)
775#define CFG_QOS_WMM_INFRA_INACTIVITY_INTERVAL_MAX (4294967295UL)
776#define CFG_QOS_WMM_INFRA_INACTIVITY_INTERVAL_DEFAULT (0) //disabled
777
778#define CFG_CCX_FEATURE_ENABLED_NAME "CcxEnabled"
779#define CFG_CCX_FEATURE_ENABLED_MIN (0)
780#define CFG_CCX_FEATURE_ENABLED_MAX (1)
781#define CFG_CCX_FEATURE_ENABLED_DEFAULT (0) //disabled
782#endif // FEATURE_WLAN_CCX
783
Jeff Johnson04dd8a82012-06-29 20:41:40 -0700784#ifdef FEATURE_WLAN_LFR
785#define CFG_LFR_FEATURE_ENABLED_NAME "FastRoamEnabled"
786#define CFG_LFR_FEATURE_ENABLED_MIN (0)
787#define CFG_LFR_FEATURE_ENABLED_MAX (1)
788#define CFG_LFR_FEATURE_ENABLED_DEFAULT (0) //disabled
789#endif // FEATURE_WLAN_LFR
790
791#if defined (WLAN_FEATURE_VOWIFI_11R) || defined (FEATURE_WLAN_CCX) || defined(FEATURE_WLAN_LFR)
Jeff Johnson295189b2012-06-20 16:38:30 -0700792// This flag will control fasttransition in case of 11r and ccx.
793// Basically with this the whole neighbor roam, pre-auth, reassoc
794// can be turned ON/OFF.
795// With this turned OFF 11r will completely not work.
796// For 11r this flag has to be ON.
797// For CCX fastroam will not work.
798#define CFG_FAST_TRANSITION_ENABLED_NAME "FastTransitionEnabled"
799#define CFG_FAST_TRANSITION_ENABLED_NAME_MIN (0)
800#define CFG_FAST_TRANSITION_ENABLED_NAME_MAX (1)
801#define CFG_FAST_TRANSITION_ENABLED_NAME_DEFAULT (0) //disabled
Jeff Johnson43971f52012-07-17 12:26:56 -0700802
803/* This parameter is used to decide whether to Roam or not.
804 * AP1 is the currently associated AP and AP2 is chosen for roaming.
805 * The Roaming will happen only if AP2 has better Signal Quality and it has a RSSI better than AP1
806 * in terms of RoamRssiDiff,and RoamRssiDiff is the number of units (typically measured in dB) AP2
807 * is better than AP1.
808 * This check is not done if the value is Zero */
809#define CFG_ROAM_RSSI_DIFF_NAME "RoamRssiDiff"
810#define CFG_ROAM_RSSI_DIFF_MIN (0)
Srinivas Girigowdade697412013-02-14 16:31:48 -0800811#define CFG_ROAM_RSSI_DIFF_MAX (30)
Srinivas Girigowdad42dfce2013-06-19 17:33:50 -0700812#define CFG_ROAM_RSSI_DIFF_DEFAULT (5)
Madan Mohan Koyyalamudi62b55b02012-12-03 16:45:39 -0800813
814/*
815 * Following a scan and if potential roam candidate(s) are found,
816 * then determine whether to register for reassoc threshold or roam
817 * immediately based on this configuration parameter. If the RSSI
818 * of any available candidate is better than the currently associated
819 * AP by at least gImmediateRoamRssiDiff, then being to roam
820 * immediately.
Srinivas Girigowdad42dfce2013-06-19 17:33:50 -0700821 * NOTE: Value of 0 means that immediate roaming is enabled by default
Madan Mohan Koyyalamudi62b55b02012-12-03 16:45:39 -0800822 */
823#define CFG_IMMEDIATE_ROAM_RSSI_DIFF_NAME "gImmediateRoamRssiDiff"
824#define CFG_IMMEDIATE_ROAM_RSSI_DIFF_MIN (0)
825#define CFG_IMMEDIATE_ROAM_RSSI_DIFF_MAX (125)
Srinivas Girigowdad42dfce2013-06-19 17:33:50 -0700826#define CFG_IMMEDIATE_ROAM_RSSI_DIFF_DEFAULT (0)
Srinivas Girigowdabbd16eb2013-03-21 12:34:46 -0700827
Varun Reddy Yeturu920df212013-05-22 08:07:23 -0700828#define CFG_ROAM_SCAN_N_PROBES "gRoamScanNProbes"
829#define CFG_ROAM_SCAN_N_PROBES_MIN (1)
830#define CFG_ROAM_SCAN_N_PROBES_MAX (10)
831#define CFG_ROAM_SCAN_N_PROBES_DEFAULT (2)
832
833#define CFG_ROAM_SCAN_HOME_AWAY_TIME "gRoamScanHomeAwayTime"
834#define CFG_ROAM_SCAN_HOME_AWAY_TIME_MIN (3)
835#define CFG_ROAM_SCAN_HOME_AWAY_TIME_MAX (300)
Srinivas Girigowda6cf0b822013-06-27 14:00:20 -0700836#define CFG_ROAM_SCAN_HOME_AWAY_TIME_DEFAULT (CFG_ROAM_SCAN_HOME_AWAY_TIME_MIN)
Jeff Johnson43971f52012-07-17 12:26:56 -0700837#endif /* (WLAN_FEATURE_VOWIFI_11R) || defined (FEATURE_WLAN_CCX) || defined(FEATURE_WLAN_LFR) */
Jeff Johnson295189b2012-06-20 16:38:30 -0700838
Srinivas Girigowdabbd16eb2013-03-21 12:34:46 -0700839#ifdef FEATURE_WLAN_OKC
840#define CFG_OKC_FEATURE_ENABLED_NAME "OkcEnabled"
841#define CFG_OKC_FEATURE_ENABLED_MIN (0)
842#define CFG_OKC_FEATURE_ENABLED_MAX (1)
843#define CFG_OKC_FEATURE_ENABLED_DEFAULT (1)
844#endif
845
Varun Reddy Yeturud0a3f252013-04-15 21:58:13 -0700846#ifdef WLAN_FEATURE_ROAM_SCAN_OFFLOAD
847#define CFG_ROAM_SCAN_OFFLOAD_ENABLED "gRoamScanOffloadEnabled"
848#define CFG_ROAM_SCAN_OFFLOAD_ENABLED_MIN (0)
849#define CFG_ROAM_SCAN_OFFLOAD_ENABLED_MAX (1)
850#define CFG_ROAM_SCAN_OFFLOAD_ENABLED_DEFAULT (1)
851#endif
852
Jeff Johnson295189b2012-06-20 16:38:30 -0700853#define CFG_QOS_WMM_PKT_CLASSIFY_BASIS_NAME "PktClassificationBasis" // DSCP or 802.1Q
854#define CFG_QOS_WMM_PKT_CLASSIFY_BASIS_MIN (0)
855#define CFG_QOS_WMM_PKT_CLASSIFY_BASIS_MAX (1)
856#define CFG_QOS_WMM_PKT_CLASSIFY_BASIS_DEFAULT (0) //DSCP
857
858/* default TSPEC parameters for AC_VO */
859#define CFG_QOS_WMM_INFRA_DIR_AC_VO_NAME "InfraDirAcVo"
860#define CFG_QOS_WMM_INFRA_DIR_AC_VO_MIN (0)
861#define CFG_QOS_WMM_INFRA_DIR_AC_VO_MAX (3)
862#define CFG_QOS_WMM_INFRA_DIR_AC_VO_DEFAULT (3) //WLAN_QCT_CUST_WMM_TSDIR_BOTH
863
864#define CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_VO_NAME "InfraNomMsduSizeAcVo"
865#define CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_VO_MIN (0x0)
866#define CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_VO_MAX (0xFFFF)
867#define CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_VO_DEFAULT (0x80D0)
868
869#define CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_VO_NAME "InfraMeanDataRateAcVo"
870#define CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_VO_MIN (0x0)
871#define CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_VO_MAX (0xFFFFFFFF)
872#define CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_VO_DEFAULT (0x14500)
873
874#define CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_VO_NAME "InfraMinPhyRateAcVo"
875#define CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_VO_MIN (0x0)
876#define CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_VO_MAX (0xFFFFFFFF)
877#define CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_VO_DEFAULT (0x5B8D80)
878
879#define CFG_QOS_WMM_INFRA_SBA_AC_VO_NAME "InfraSbaAcVo"
880#define CFG_QOS_WMM_INFRA_SBA_AC_VO_MIN (0x2001)
881#define CFG_QOS_WMM_INFRA_SBA_AC_VO_MAX (0xFFFF)
882#define CFG_QOS_WMM_INFRA_SBA_AC_VO_DEFAULT (0x2001)
883
884/* default TSPEC parameters for AC_VI */
885#define CFG_QOS_WMM_INFRA_DIR_AC_VI_NAME "InfraDirAcVi"
886#define CFG_QOS_WMM_INFRA_DIR_AC_VI_MIN (0)
887#define CFG_QOS_WMM_INFRA_DIR_AC_VI_MAX (3)
888#define CFG_QOS_WMM_INFRA_DIR_AC_VI_DEFAULT (3) //WLAN_QCT_CUST_WMM_TSDIR_BOTH
889
890#define CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_VI_NAME "InfraNomMsduSizeAcVi"
891#define CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_VI_MIN (0x0)
892#define CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_VI_MAX (0xFFFF)
893#define CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_VI_DEFAULT (0x85DC)
894
895#define CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_VI_NAME "InfraMeanDataRateAcVi"
896#define CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_VI_MIN (0x0)
897#define CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_VI_MAX (0xFFFFFFFF)
898#define CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_VI_DEFAULT (0x57E40)
899
900#define CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_VI_NAME "InfraMinPhyRateAcVi"
901#define CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_VI_MIN (0x0)
902#define CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_VI_MAX (0xFFFFFFFF)
903#define CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_VI_DEFAULT (0x5B8D80)
904
905#define CFG_QOS_WMM_INFRA_SBA_AC_VI_NAME "InfraSbaAcVi"
906#define CFG_QOS_WMM_INFRA_SBA_AC_VI_MIN (0x2001)
907#define CFG_QOS_WMM_INFRA_SBA_AC_VI_MAX (0xFFFF)
908#define CFG_QOS_WMM_INFRA_SBA_AC_VI_DEFAULT (0x2001)
909
910/* default TSPEC parameters for AC_BE*/
911#define CFG_QOS_WMM_INFRA_DIR_AC_BE_NAME "InfraDirAcBe"
912#define CFG_QOS_WMM_INFRA_DIR_AC_BE_MIN (0)
913#define CFG_QOS_WMM_INFRA_DIR_AC_BE_MAX (3)
914#define CFG_QOS_WMM_INFRA_DIR_AC_BE_DEFAULT (3) //WLAN_QCT_CUST_WMM_TSDIR_BOTH
915
916#define CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_BE_NAME "InfraNomMsduSizeAcBe"
917#define CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_BE_MIN (0x0)
918#define CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_BE_MAX (0xFFFF)
919#define CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_BE_DEFAULT (0x85DC)
920
921#define CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_BE_NAME "InfraMeanDataRateAcBe"
922#define CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_BE_MIN (0x0)
923#define CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_BE_MAX (0xFFFFFFFF)
924#define CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_BE_DEFAULT (0x493E0)
925
926#define CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_BE_NAME "InfraMinPhyRateAcBe"
927#define CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_BE_MIN (0x0)
928#define CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_BE_MAX (0xFFFFFFFF)
929#define CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_BE_DEFAULT (0x5B8D80)
930
931#define CFG_QOS_WMM_INFRA_SBA_AC_BE_NAME "InfraSbaAcBe"
932#define CFG_QOS_WMM_INFRA_SBA_AC_BE_MIN (0x2001)
933#define CFG_QOS_WMM_INFRA_SBA_AC_BE_MAX (0xFFFF)
934#define CFG_QOS_WMM_INFRA_SBA_AC_BE_DEFAULT (0x2001)
935
936/* default TSPEC parameters for AC_Bk*/
937#define CFG_QOS_WMM_INFRA_DIR_AC_BK_NAME "InfraDirAcBk"
938#define CFG_QOS_WMM_INFRA_DIR_AC_BK_MIN (0)
939#define CFG_QOS_WMM_INFRA_DIR_AC_BK_MAX (3)
940#define CFG_QOS_WMM_INFRA_DIR_AC_BK_DEFAULT (3) //WLAN_QCT_CUST_WMM_TSDIR_BOTH
941
942#define CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_BK_NAME "InfraNomMsduSizeAcBk"
943#define CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_BK_MIN (0x0)
944#define CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_BK_MAX (0xFFFF)
945#define CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_BK_DEFAULT (0x85DC)
946
947#define CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_BK_NAME "InfraMeanDataRateAcBk"
948#define CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_BK_MIN (0x0)
949#define CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_BK_MAX (0xFFFFFFFF)
950#define CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_BK_DEFAULT (0x493E0)
951
952#define CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_BK_NAME "InfraMinPhyRateAcBk"
953#define CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_BK_MIN (0x0)
954#define CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_BK_MAX (0xFFFFFFFF)
955#define CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_BK_DEFAULT (0x5B8D80)
956
957#define CFG_QOS_WMM_INFRA_SBA_AC_BK_NAME "InfraSbaAcBk"
958#define CFG_QOS_WMM_INFRA_SBA_AC_BK_MIN (0x2001)
959#define CFG_QOS_WMM_INFRA_SBA_AC_BK_MAX (0xFFFF)
960#define CFG_QOS_WMM_INFRA_SBA_AC_BK_DEFAULT (0x2001)
961
962// TL configuration
963#define CFG_TL_WFQ_BK_WEIGHT_NAME "WfqBkWeight"
964#define CFG_TL_WFQ_BK_WEIGHT_MIN 1
965#define CFG_TL_WFQ_BK_WEIGHT_MAX 0xFF
966#define CFG_TL_WFQ_BK_WEIGHT_DEFAULT 1
967
968#define CFG_TL_WFQ_BE_WEIGHT_NAME "WfqBeWeight"
969#define CFG_TL_WFQ_BE_WEIGHT_MIN 1
970#define CFG_TL_WFQ_BE_WEIGHT_MAX 0xFF
971#define CFG_TL_WFQ_BE_WEIGHT_DEFAULT 3
972
973#define CFG_TL_WFQ_VI_WEIGHT_NAME "WfqViWeight"
974#define CFG_TL_WFQ_VI_WEIGHT_MIN 1
975#define CFG_TL_WFQ_VI_WEIGHT_MAX 0xFF
976#define CFG_TL_WFQ_VI_WEIGHT_DEFAULT 5
977
978#define CFG_TL_WFQ_VO_WEIGHT_NAME "WfqVoWeight"
979#define CFG_TL_WFQ_VO_WEIGHT_MIN 1
980#define CFG_TL_WFQ_VO_WEIGHT_MAX 0xFF
981#define CFG_TL_WFQ_VO_WEIGHT_DEFAULT 7
982
983#define CFG_TL_DELAYED_TRGR_FRM_INT_NAME "DelayedTriggerFrmInt"
984#define CFG_TL_DELAYED_TRGR_FRM_INT_MIN 1
985#define CFG_TL_DELAYED_TRGR_FRM_INT_MAX (4294967295UL)
986#define CFG_TL_DELAYED_TRGR_FRM_INT_DEFAULT 3000
987
988#if defined WLAN_FEATURE_VOWIFI
989#define CFG_RRM_ENABLE_NAME "gRrmEnable"
990#define CFG_RRM_ENABLE_MIN (0)
991#define CFG_RRM_ENABLE_MAX (1)
992#define CFG_RRM_ENABLE_DEFAULT (0)
993
994#define CFG_RRM_OPERATING_CHAN_MAX_DURATION_NAME "gRrmOperChanMax" //section 11.10.3 IEEE std. 802.11k-2008
995#define CFG_RRM_OPERATING_CHAN_MAX_DURATION_MIN (0) //Maxduration = 2^(maxDuration - 4) * bcnIntvl.
996#define CFG_RRM_OPERATING_CHAN_MAX_DURATION_MAX (8)
997#define CFG_RRM_OPERATING_CHAN_MAX_DURATION_DEFAULT (3) //max duration = 2^-1 * bcnIntvl (50% of bcn intvl)
998
999#define CFG_RRM_NON_OPERATING_CHAN_MAX_DURATION_NAME "gRrmNonOperChanMax" //Same as above.
1000#define CFG_RRM_NON_OPERATING_CHAN_MAX_DURATION_MIN (0)
1001#define CFG_RRM_NON_OPERATING_CHAN_MAX_DURATION_MAX (8)
1002#define CFG_RRM_NON_OPERATING_CHAN_MAX_DURATION_DEFAULT (3)
1003
1004#define CFG_RRM_MEAS_RANDOMIZATION_INTVL_NAME "gRrmRandnIntvl"
1005#define CFG_RRM_MEAS_RANDOMIZATION_INTVL_MIN (10)
1006#define CFG_RRM_MEAS_RANDOMIZATION_INTVL_MAX (100)
1007#define CFG_RRM_MEAS_RANDOMIZATION_INTVL_DEFAULT (100)
1008#endif
1009
1010#define CFG_QOS_IMPLICIT_SETUP_ENABLED_NAME "ImplicitQosIsEnabled"
1011#define CFG_QOS_IMPLICIT_SETUP_ENABLED_MIN (0)
1012#define CFG_QOS_IMPLICIT_SETUP_ENABLED_MAX (1)
1013#define CFG_QOS_IMPLICIT_SETUP_ENABLED_DEFAULT (1)
1014
Jeff Johnson295189b2012-06-20 16:38:30 -07001015#define CFG_ENABLE_LOGP_NAME "gEnableLogp"
1016#define CFG_ENABLE_LOGP_MIN ( 0 )
1017#define CFG_ENABLE_LOGP_MAX ( 1 )
1018#define CFG_ENABLE_LOGP_DEFAULT ( 0 )
1019
1020#define CFG_BTC_EXECUTION_MODE_NAME "BtcExecutionMode"
1021#define CFG_BTC_EXECUTION_MODE_MIN ( 0 )
1022#define CFG_BTC_EXECUTION_MODE_MAX ( 5 )
1023#define CFG_BTC_EXECUTION_MODE_DEFAULT ( 0 )
1024
1025#define CFG_BTC_DHCP_PROTECTION_NAME "BtcConsBtSlotToBlockDuringDhcp"
1026#define CFG_BTC_DHCP_PROTECTION_MIN ( 0 )
1027#define CFG_BTC_DHCP_PROTECTION_MAX ( 0xFF )
1028#define CFG_BTC_DHCP_PROTECTION_DEFAULT ( 0 )
1029
1030#define CFG_BTC_A2DP_DHCP_PROTECTION_NAME "BtcA2DPDhcpProtectLevel"
1031#define CFG_BTC_A2DP_DHCP_PROTECTION_MIN ( 0 )
1032#define CFG_BTC_A2DP_DHCP_PROTECTION_MAX ( 0xFF )
1033#define CFG_BTC_A2DP_DHCP_PROTECTION_DEFAULT ( 7 )
1034
Jeff Johnson32d95a32012-09-10 13:15:23 -07001035#define CFG_BTC_STATIC_LEN_INQ_BT_NAME "btcStaticLenInqBt"
1036#define CFG_BTC_STATIC_LEN_INQ_BT_MIN ( 5000 )
1037#define CFG_BTC_STATIC_LEN_INQ_BT_MAX ( 500000 )
1038#define CFG_BTC_STATIC_LEN_INQ_BT_DEFAULT ( 120000 )
1039
1040#define CFG_BTC_STATIC_LEN_PAGE_BT_NAME "btcStaticLenPageBt"
1041#define CFG_BTC_STATIC_LEN_PAGE_BT_MIN ( 5000 )
1042#define CFG_BTC_STATIC_LEN_PAGE_BT_MAX ( 500000 )
Sundaresan Ramachandran12983602013-07-05 15:17:25 +05301043#define CFG_BTC_STATIC_LEN_PAGE_BT_DEFAULT ( 120000 )
Jeff Johnson32d95a32012-09-10 13:15:23 -07001044
1045#define CFG_BTC_STATIC_LEN_CONN_BT_NAME "btcStaticLenConnBt"
1046#define CFG_BTC_STATIC_LEN_CONN_BT_MIN ( 5000 )
1047#define CFG_BTC_STATIC_LEN_CONN_BT_MAX ( 500000 )
Sundaresan Ramachandran12983602013-07-05 15:17:25 +05301048#define CFG_BTC_STATIC_LEN_CONN_BT_DEFAULT ( 120000 )
Jeff Johnson32d95a32012-09-10 13:15:23 -07001049
1050#define CFG_BTC_STATIC_LEN_LE_BT_NAME "btcStaticLenLeBt"
1051#define CFG_BTC_STATIC_LEN_LE_BT_MIN ( 5000 )
1052#define CFG_BTC_STATIC_LEN_LE_BT_MAX ( 500000 )
Sundaresan Ramachandran12983602013-07-05 15:17:25 +05301053#define CFG_BTC_STATIC_LEN_LE_BT_DEFAULT ( 120000 )
Jeff Johnson32d95a32012-09-10 13:15:23 -07001054
1055#define CFG_BTC_STATIC_LEN_INQ_WLAN_NAME "btcStaticLenInqWlan"
1056#define CFG_BTC_STATIC_LEN_INQ_WLAN_MIN ( 0 )
1057#define CFG_BTC_STATIC_LEN_INQ_WLAN_MAX ( 500000 )
1058#define CFG_BTC_STATIC_LEN_INQ_WLAN_DEFAULT ( 30000 )
1059
1060#define CFG_BTC_STATIC_LEN_PAGE_WLAN_NAME "btcStaticLenPageWlan"
1061#define CFG_BTC_STATIC_LEN_PAGE_WLAN_MIN ( 0 )
1062#define CFG_BTC_STATIC_LEN_PAGE_WLAN_MAX ( 500000 )
Sundaresan Ramachandran12983602013-07-05 15:17:25 +05301063#define CFG_BTC_STATIC_LEN_PAGE_WLAN_DEFAULT ( 30000 )
Jeff Johnson32d95a32012-09-10 13:15:23 -07001064
1065#define CFG_BTC_STATIC_LEN_CONN_WLAN_NAME "btcStaticLenConnWlan"
1066#define CFG_BTC_STATIC_LEN_CONN_WLAN_MIN ( 0 )
1067#define CFG_BTC_STATIC_LEN_CONN_WLAN_MAX ( 500000 )
Sundaresan Ramachandran12983602013-07-05 15:17:25 +05301068#define CFG_BTC_STATIC_LEN_CONN_WLAN_DEFAULT ( 30000 )
Jeff Johnson32d95a32012-09-10 13:15:23 -07001069
1070#define CFG_BTC_STATIC_LEN_LE_WLAN_NAME "btcStaticLenLeWlan"
1071#define CFG_BTC_STATIC_LEN_LE_WLAN_MIN ( 0 )
1072#define CFG_BTC_STATIC_LEN_LE_WLAN_MAX ( 500000 )
Sundaresan Ramachandran12983602013-07-05 15:17:25 +05301073#define CFG_BTC_STATIC_LEN_LE_WLAN_DEFAULT ( 30000 )
Jeff Johnson32d95a32012-09-10 13:15:23 -07001074
1075#define CFG_BTC_DYN_MAX_LEN_BT_NAME "btcDynMaxLenBt"
1076#define CFG_BTC_DYN_MAX_LEN_BT_MIN ( 25000 )
1077#define CFG_BTC_DYN_MAX_LEN_BT_MAX ( 500000 )
1078#define CFG_BTC_DYN_MAX_LEN_BT_DEFAULT ( 250000 )
1079
1080#define CFG_BTC_DYN_MAX_LEN_WLAN_NAME "btcDynMaxLenWlan"
1081#define CFG_BTC_DYN_MAX_LEN_WLAN_MIN ( 15000 )
1082#define CFG_BTC_DYN_MAX_LEN_WLAN_MAX ( 500000 )
1083#define CFG_BTC_DYN_MAX_LEN_WLAN_DEFAULT ( 45000 )
1084
1085#define CFG_BTC_MAX_SCO_BLOCK_PERC_NAME "btcMaxScoBlockPerc"
1086#define CFG_BTC_MAX_SCO_BLOCK_PERC_MIN ( 0 )
1087#define CFG_BTC_MAX_SCO_BLOCK_PERC_MAX ( 100 )
1088#define CFG_BTC_MAX_SCO_BLOCK_PERC_DEFAULT ( 1 )
1089
1090#define CFG_BTC_DHCP_PROT_ON_A2DP_NAME "btcDhcpProtOnA2dp"
1091#define CFG_BTC_DHCP_PROT_ON_A2DP_MIN ( 0 )
1092#define CFG_BTC_DHCP_PROT_ON_A2DP_MAX ( 1 )
1093#define CFG_BTC_DHCP_PROT_ON_A2DP_DEFAULT ( 1 )
1094
1095#define CFG_BTC_DHCP_PROT_ON_SCO_NAME "btcDhcpProtOnSco"
1096#define CFG_BTC_DHCP_PROT_ON_SCO_MIN ( 0 )
1097#define CFG_BTC_DHCP_PROT_ON_SCO_MAX ( 1 )
1098#define CFG_BTC_DHCP_PROT_ON_SCO_DEFAULT ( 0 )
1099
Wilson Tsaof8b37942013-09-06 10:49:00 -07001100#define CFG_MWS_COEX_V1_WAN_FREQ_NAME "mwsCoexVictim1WANFreq"
1101#define CFG_MWS_COEX_VX_WAN_FREQ_MIN ( 0 )
1102#define CFG_MWS_COEX_VX_WAN_FREQ_MAX ( 0xFFFFFFFF )
1103#define CFG_MWS_COEX_VX_WAN_FREQ_DEFAULT ( 0 )
1104
1105#define CFG_MWS_COEX_V1_WLAN_FREQ_NAME "mwsCoexVictim1WLANFreq"
1106#define CFG_MWS_COEX_VX_WLAN_FREQ_MIN ( 0 )
1107#define CFG_MWS_COEX_VX_WLAN_FREQ_MAX ( 0xFFFFFFFF )
1108#define CFG_MWS_COEX_VX_WLAN_FREQ_DEFAULT ( 0 )
1109
1110#define CFG_MWS_COEX_V1_CONFIG_NAME "mwsCoexVictim1Config"
1111#define CFG_MWS_COEX_V1_CONFIG2_NAME "mwsCoexVictim1Config2"
1112#define CFG_MWS_COEX_VX_CONFIG_MIN ( 0 )
1113#define CFG_MWS_COEX_VX_CONFIG_MAX ( 0xFFFFFFFF )
1114#define CFG_MWS_COEX_VX_CONFIG_DEFAULT ( 0 )
1115
1116#define CFG_MWS_COEX_V2_WAN_FREQ_NAME "mwsCoexVictim2WANFreq"
1117#define CFG_MWS_COEX_V2_WLAN_FREQ_NAME "mwsCoexVictim2WLANFreq"
1118#define CFG_MWS_COEX_V2_CONFIG_NAME "mwsCoexVictim2Config"
1119#define CFG_MWS_COEX_V2_CONFIG2_NAME "mwsCoexVictim2Config2"
1120#define CFG_MWS_COEX_V3_WAN_FREQ_NAME "mwsCoexVictim3WANFreq"
1121#define CFG_MWS_COEX_V3_WLAN_FREQ_NAME "mwsCoexVictim3WLANFreq"
1122#define CFG_MWS_COEX_V3_CONFIG_NAME "mwsCoexVictim3Config"
1123#define CFG_MWS_COEX_V3_CONFIG2_NAME "mwsCoexVictim3Config2"
1124#define CFG_MWS_COEX_V4_WAN_FREQ_NAME "mwsCoexVictim4WANFreq"
1125#define CFG_MWS_COEX_V4_WLAN_FREQ_NAME "mwsCoexVictim4WLANFreq"
1126#define CFG_MWS_COEX_V4_CONFIG_NAME "mwsCoexVictim4Config"
1127#define CFG_MWS_COEX_V4_CONFIG2_NAME "mwsCoexVictim4Config2"
1128#define CFG_MWS_COEX_V5_WAN_FREQ_NAME "mwsCoexVictim5WANFreq"
1129#define CFG_MWS_COEX_V5_WLAN_FREQ_NAME "mwsCoexVictim5WLANFreq"
1130#define CFG_MWS_COEX_V5_CONFIG_NAME "mwsCoexVictim5Config"
1131#define CFG_MWS_COEX_V5_CONFIG2_NAME "mwsCoexVictim5Config2"
1132#define CFG_MWS_COEX_V6_WAN_FREQ_NAME "mwsCoexVictim6WANFreq"
1133#define CFG_MWS_COEX_V6_WLAN_FREQ_NAME "mwsCoexVictim6WLANFreq"
1134#define CFG_MWS_COEX_V6_CONFIG_NAME "mwsCoexVictim6Config"
1135#define CFG_MWS_COEX_V6_CONFIG2_NAME "mwsCoexVictim6Config2"
1136#define CFG_MWS_COEX_V7_WAN_FREQ_NAME "mwsCoexVictim7WANFreq"
1137#define CFG_MWS_COEX_V7_WLAN_FREQ_NAME "mwsCoexVictim7WLANFreq"
1138#define CFG_MWS_COEX_V7_CONFIG_NAME "mwsCoexVictim7Config"
1139#define CFG_MWS_COEX_V7_CONFIG2_NAME "mwsCoexVictim7Config2"
1140#define CFG_MWS_COEX_V8_WAN_FREQ_NAME "mwsCoexVictim8WANFreq"
1141#define CFG_MWS_COEX_V8_WLAN_FREQ_NAME "mwsCoexVictim8WLANFreq"
1142#define CFG_MWS_COEX_V8_CONFIG_NAME "mwsCoexVictim8Config"
1143#define CFG_MWS_COEX_V8_CONFIG2_NAME "mwsCoexVictim8Config2"
1144#define CFG_MWS_COEX_V9_WAN_FREQ_NAME "mwsCoexVictim9WANFreq"
1145#define CFG_MWS_COEX_V9_WLAN_FREQ_NAME "mwsCoexVictim9WLANFreq"
1146#define CFG_MWS_COEX_V9_CONFIG_NAME "mwsCoexVictim9Config"
1147#define CFG_MWS_COEX_V9_CONFIG2_NAME "mwsCoexVictim9Config2"
1148#define CFG_MWS_COEX_V10_WAN_FREQ_NAME "mwsCoexVictim10WANFreq"
1149#define CFG_MWS_COEX_V10_WLAN_FREQ_NAME "mwsCoexVictim10WLANFreq"
1150#define CFG_MWS_COEX_V10_CONFIG_NAME "mwsCoexVictim10Config"
1151#define CFG_MWS_COEX_V10_CONFIG2_NAME "mwsCoexVictim10Config2"
1152
1153#define CFG_MWS_COEX_MODEM_BACKOFF_NAME "mwsCoexModemBackoff"
1154#define CFG_MWS_COEX_MODEM_BACKOFF_MIN ( 0 )
1155#define CFG_MWS_COEX_MODEM_BACKOFF_MAX ( 0xFFFFFFFF )
1156#define CFG_MWS_COEX_MODEM_BACKOFF_DEFAULT ( 0 )
1157
1158#define CFG_MWS_COEX_CONFIG1_NAME "mwsCoexConfig1"
1159#define CFG_MWS_COEX_CONFIGX_MIN ( 0 )
1160#define CFG_MWS_COEX_CONFIGX_MAX ( 0xFFFFFFFF )
1161#define CFG_MWS_COEX_CONFIGX_DEFAULT ( 0 )
1162#define CFG_MWS_COEX_CONFIG2_NAME "mwsCoexConfig2"
1163#define CFG_MWS_COEX_CONFIG3_NAME "mwsCoexConfig3"
1164#define CFG_MWS_COEX_CONFIG4_NAME "mwsCoexConfig4"
1165#define CFG_MWS_COEX_CONFIG5_NAME "mwsCoexConfig5"
1166#define CFG_MWS_COEX_CONFIG6_NAME "mwsCoexConfig6"
1167
1168#define CFG_SAR_POWER_BACKOFF_NAME "SARPowerBackoff"
1169#define CFG_SAR_POWER_BACKOFF_MIN ( 0 )
1170#define CFG_SAR_POWER_BACKOFF_MAX ( 0xFFFFFFFF )
1171#define CFG_SAR_POWER_BACKOFF_DEFAULT ( 0 )
1172
Jeff Johnson295189b2012-06-20 16:38:30 -07001173#if defined WLAN_FEATURE_VOWIFI_11R
Jeff Johnson295189b2012-06-20 16:38:30 -07001174#define CFG_FT_RESOURCE_REQ_NAME "gFTResourceReqSupported"
1175#define CFG_FT_RESOURCE_REQ_MIN (0)
1176#define CFG_FT_RESOURCE_REQ_MAX (1)
1177#define CFG_FT_RESOURCE_REQ_DEFAULT (0)
1178#endif
1179
1180#define CFG_TELE_BCN_TRANS_LI_NAME "telescopicBeaconTransListenInterval"
1181#define CFG_TELE_BCN_TRANS_LI_MIN ( 0 )
1182#define CFG_TELE_BCN_TRANS_LI_MAX ( 7 )
1183#define CFG_TELE_BCN_TRANS_LI_DEFAULT ( 3 )
1184
1185#define CFG_TELE_BCN_TRANS_LI_NUM_IDLE_BCNS_NAME "telescopicBeaconTransListenIntervalNumIdleBcns"
1186#define CFG_TELE_BCN_TRANS_LI_NUM_IDLE_BCNS_MIN ( 5 )
1187#define CFG_TELE_BCN_TRANS_LI_NUM_IDLE_BCNS_MAX ( 255 )
1188#define CFG_TELE_BCN_TRANS_LI_NUM_IDLE_BCNS_DEFAULT ( 10 )
1189
1190#define CFG_TELE_BCN_MAX_LI_NAME "telescopicBeaconMaxListenInterval"
1191#define CFG_TELE_BCN_MAX_LI_MIN ( 0 )
1192#define CFG_TELE_BCN_MAX_LI_MAX ( 7 )
1193#define CFG_TELE_BCN_MAX_LI_DEFAULT ( 5 )
1194
1195#define CFG_TELE_BCN_MAX_LI_NUM_IDLE_BCNS_NAME "telescopicBeaconMaxListenIntervalNumIdleBcns"
1196#define CFG_TELE_BCN_MAX_LI_NUM_IDLE_BCNS_MIN ( 5 )
1197#define CFG_TELE_BCN_MAX_LI_NUM_IDLE_BCNS_MAX ( 255 )
1198#define CFG_TELE_BCN_MAX_LI_NUM_IDLE_BCNS_DEFAULT ( 15 )
1199
1200#define CFG_BCN_EARLY_TERM_WAKE_NAME "beaconEarlyTerminationWakeInterval"
1201#define CFG_BCN_EARLY_TERM_WAKE_MIN ( 2 )
1202#define CFG_BCN_EARLY_TERM_WAKE_MAX ( 255 )
1203#define CFG_BCN_EARLY_TERM_WAKE_DEFAULT ( 3 )
1204
1205#ifdef WLAN_FEATURE_NEIGHBOR_ROAMING
1206#define CFG_NEIGHBOR_SCAN_TIMER_PERIOD_NAME "gNeighborScanTimerPeriod"
Varun Reddy Yeturuce114f72013-06-05 14:09:58 -07001207#define CFG_NEIGHBOR_SCAN_TIMER_PERIOD_MIN (3)
1208#define CFG_NEIGHBOR_SCAN_TIMER_PERIOD_MAX (300)
Jeff Johnson295189b2012-06-20 16:38:30 -07001209#define CFG_NEIGHBOR_SCAN_TIMER_PERIOD_DEFAULT (200)
1210
1211#define CFG_NEIGHBOR_REASSOC_RSSI_THRESHOLD_NAME "gNeighborReassocThreshold"
1212#define CFG_NEIGHBOR_REASSOC_RSSI_THRESHOLD_MIN (10)
1213#define CFG_NEIGHBOR_REASSOC_RSSI_THRESHOLD_MAX (125)
Srinivas Girigowdad42dfce2013-06-19 17:33:50 -07001214#define CFG_NEIGHBOR_REASSOC_RSSI_THRESHOLD_DEFAULT (83)
Jeff Johnson295189b2012-06-20 16:38:30 -07001215
1216#define CFG_NEIGHBOR_LOOKUP_RSSI_THRESHOLD_NAME "gNeighborLookupThreshold"
1217#define CFG_NEIGHBOR_LOOKUP_RSSI_THRESHOLD_MIN (10)
1218#define CFG_NEIGHBOR_LOOKUP_RSSI_THRESHOLD_MAX (120)
Srinivas Girigowdad42dfce2013-06-19 17:33:50 -07001219#define CFG_NEIGHBOR_LOOKUP_RSSI_THRESHOLD_DEFAULT (78)
Jeff Johnson295189b2012-06-20 16:38:30 -07001220
1221#define CFG_NEIGHBOR_SCAN_CHAN_LIST_NAME "gNeighborScanChannelList"
Madan Mohan Koyyalamudi470d2cf2012-09-28 14:43:44 -07001222#define CFG_NEIGHBOR_SCAN_CHAN_LIST_DEFAULT ""
Jeff Johnson295189b2012-06-20 16:38:30 -07001223
1224#define CFG_NEIGHBOR_SCAN_MIN_CHAN_TIME_NAME "gNeighborScanChannelMinTime"
1225#define CFG_NEIGHBOR_SCAN_MIN_CHAN_TIME_MIN (10)
1226#define CFG_NEIGHBOR_SCAN_MIN_CHAN_TIME_MAX (40)
1227#define CFG_NEIGHBOR_SCAN_MIN_CHAN_TIME_DEFAULT (20)
1228
1229#define CFG_NEIGHBOR_SCAN_MAX_CHAN_TIME_NAME "gNeighborScanChannelMaxTime"
Varun Reddy Yeturuce114f72013-06-05 14:09:58 -07001230#define CFG_NEIGHBOR_SCAN_MAX_CHAN_TIME_MIN (3)
1231#define CFG_NEIGHBOR_SCAN_MAX_CHAN_TIME_MAX (300)
Jeff Johnson295189b2012-06-20 16:38:30 -07001232#define CFG_NEIGHBOR_SCAN_MAX_CHAN_TIME_DEFAULT (30)
1233
1234#define CFG_11R_NEIGHBOR_REQ_MAX_TRIES_NAME "gMaxNeighborReqTries"
1235#define CFG_11R_NEIGHBOR_REQ_MAX_TRIES_MIN (1)
1236#define CFG_11R_NEIGHBOR_REQ_MAX_TRIES_MAX (4)
Srinivas Girigowdad42dfce2013-06-19 17:33:50 -07001237#define CFG_11R_NEIGHBOR_REQ_MAX_TRIES_DEFAULT (3)
Jeff Johnson295189b2012-06-20 16:38:30 -07001238
1239
1240#define CFG_NEIGHBOR_SCAN_RESULTS_REFRESH_PERIOD_NAME "gNeighborScanRefreshPeriod"
1241#define CFG_NEIGHBOR_SCAN_RESULTS_REFRESH_PERIOD_MIN (1000)
1242#define CFG_NEIGHBOR_SCAN_RESULTS_REFRESH_PERIOD_MAX (60000)
1243#define CFG_NEIGHBOR_SCAN_RESULTS_REFRESH_PERIOD_DEFAULT (20000)
Srinivas Girigowdade697412013-02-14 16:31:48 -08001244
1245#define CFG_EMPTY_SCAN_REFRESH_PERIOD_NAME "gEmptyScanRefreshPeriod"
Srinivas Girigowdab8edd1e2013-03-19 11:42:08 -07001246#define CFG_EMPTY_SCAN_REFRESH_PERIOD_MIN (0)
Srinivas Girigowdade697412013-02-14 16:31:48 -08001247#define CFG_EMPTY_SCAN_REFRESH_PERIOD_MAX (60000)
1248#define CFG_EMPTY_SCAN_REFRESH_PERIOD_DEFAULT (0)
Jeff Johnson295189b2012-06-20 16:38:30 -07001249#endif /* WLAN_FEATURE_NEIGHBOR_ROAMING */
1250
1251#define CFG_QOS_WMM_BURST_SIZE_DEFN_NAME "burstSizeDefinition"
1252#define CFG_QOS_WMM_BURST_SIZE_DEFN_MIN (0)
1253#define CFG_QOS_WMM_BURST_SIZE_DEFN_MAX (1)
1254#define CFG_QOS_WMM_BURST_SIZE_DEFN_DEFAULT (0)
1255
1256#define CFG_QOS_WMM_TS_INFO_ACK_POLICY_NAME "tsInfoAckPolicy"
1257#define CFG_QOS_WMM_TS_INFO_ACK_POLICY_MIN (0x00)
1258#define CFG_QOS_WMM_TS_INFO_ACK_POLICY_MAX (0x01)
1259#define CFG_QOS_WMM_TS_INFO_ACK_POLICY_DEFAULT (0x00)
1260
1261#define CFG_SINGLE_TID_RC_NAME "SingleTIDRC"
1262#define CFG_SINGLE_TID_RC_MIN (0) // Seperate replay counter for all TID
1263#define CFG_SINGLE_TID_RC_MAX (1) // Single replay counter for all TID
1264#define CFG_SINGLE_TID_RC_DEFAULT (1)
1265#define CFG_MCAST_BCAST_FILTER_SETTING_NAME "McastBcastFilter"
1266#define CFG_MCAST_BCAST_FILTER_SETTING_MIN (0)
1267#define CFG_MCAST_BCAST_FILTER_SETTING_MAX (3)
1268#define CFG_MCAST_BCAST_FILTER_SETTING_DEFAULT (0)
1269
1270#define CFG_DYNAMIC_PSPOLL_VALUE_NAME "gDynamicPSPollvalue"
1271#define CFG_DYNAMIC_PSPOLL_VALUE_MIN (0)
1272#define CFG_DYNAMIC_PSPOLL_VALUE_MAX (255)
1273#define CFG_DYNAMIC_PSPOLL_VALUE_DEFAULT (0)
1274
1275#define CFG_TELE_BCN_WAKEUP_EN_NAME "gTelescopicBeaconWakeupEn"
1276#define CFG_TELE_BCN_WAKEUP_EN_MIN (0)
1277#define CFG_TELE_BCN_WAKEUP_EN_MAX (1)
1278#define CFG_TELE_BCN_WAKEUP_EN_DEFAULT (0)
1279
1280#define CFG_QOS_ADDTS_WHEN_ACM_IS_OFF_NAME "gAddTSWhenACMIsOff"
1281#define CFG_QOS_ADDTS_WHEN_ACM_IS_OFF_MIN (0)
1282#define CFG_QOS_ADDTS_WHEN_ACM_IS_OFF_MAX (1) //Send AddTs even when ACM is not set for the AC
1283#define CFG_QOS_ADDTS_WHEN_ACM_IS_OFF_DEFAULT (0)
1284
1285
1286#define CFG_VALIDATE_SCAN_LIST_NAME "gValidateScanList"
1287#define CFG_VALIDATE_SCAN_LIST_MIN (0)
1288#define CFG_VALIDATE_SCAN_LIST_MAX (1)
1289#define CFG_VALIDATE_SCAN_LIST_DEFAULT (0)
1290
1291#define CFG_NULLDATA_AP_RESP_TIMEOUT_NAME "gNullDataApRespTimeout"
1292#define CFG_NULLDATA_AP_RESP_TIMEOUT_MIN ( WNI_CFG_PS_NULLDATA_AP_RESP_TIMEOUT_STAMIN )
1293#define CFG_NULLDATA_AP_RESP_TIMEOUT_MAX ( WNI_CFG_PS_NULLDATA_AP_RESP_TIMEOUT_STAMAX )
1294#define CFG_NULLDATA_AP_RESP_TIMEOUT_DEFAULT ( WNI_CFG_PS_NULLDATA_AP_RESP_TIMEOUT_STADEF )
1295
1296#define CFG_AP_DATA_AVAIL_POLL_PERIOD_NAME "gApDataAvailPollInterval"
1297#define CFG_AP_DATA_AVAIL_POLL_PERIOD_MIN ( WNI_CFG_AP_DATA_AVAIL_POLL_PERIOD_STAMIN )
1298#define CFG_AP_DATA_AVAIL_POLL_PERIOD_MAX ( WNI_CFG_AP_DATA_AVAIL_POLL_PERIOD_STAMAX )
1299#define CFG_AP_DATA_AVAIL_POLL_PERIOD_DEFAULT ( WNI_CFG_AP_DATA_AVAIL_POLL_PERIOD_STADEF )
1300
1301#define CFG_ENABLE_HOST_ARPOFFLOAD_NAME "hostArpOffload"
1302#define CFG_ENABLE_HOST_ARPOFFLOAD_MIN ( 0 )
1303#define CFG_ENABLE_HOST_ARPOFFLOAD_MAX ( 1 )
1304#define CFG_ENABLE_HOST_ARPOFFLOAD_DEFAULT ( 0 )
1305
Gopichand Nakkala746a9452013-06-11 12:45:54 +05301306#define CFG_ENABLE_HOST_NSOFFLOAD_NAME "hostNSOffload"
1307#define CFG_ENABLE_HOST_NSOFFLOAD_MIN ( 0 )
1308#define CFG_ENABLE_HOST_NSOFFLOAD_MAX ( 1 )
1309#define CFG_ENABLE_HOST_NSOFFLOAD_DEFAULT ( 0 )
1310
1311
Jeff Johnson295189b2012-06-20 16:38:30 -07001312#define CFG_ENABLE_BTAMP_NAME "gEnableBtAmp"
1313#define CFG_ENABLE_BTAMP_MIN ( 0 )
1314#define CFG_ENABLE_BTAMP_MAX ( 1 )
1315#define CFG_ENABLE_BTAMP_DEFAULT ( 0 )
1316
1317#ifdef WLAN_BTAMP_FEATURE
1318#define CFG_BT_AMP_PREFERRED_CHANNEL_NAME "BtAmpPreferredChannel"
1319#define CFG_BT_AMP_PREFERRED_CHANNEL_MIN (1)
1320#define CFG_BT_AMP_PREFERRED_CHANNEL_MAX (11)
1321#define CFG_BT_AMP_PREFERRED_CHANNEL_DEFAULT (1)
1322#endif //WLAN_BTAMP_FEATURE
1323
1324#define CFG_BAND_CAPABILITY_NAME "BandCapability"
1325#define CFG_BAND_CAPABILITY_MIN (0)
1326#define CFG_BAND_CAPABILITY_MAX (2)
1327#define CFG_BAND_CAPABILITY_DEFAULT (1)
1328
1329#define CFG_ENABLE_BEACON_EARLY_TERMINATION_NAME "enableBeaconEarlyTermination"
1330#define CFG_ENABLE_BEACON_EARLY_TERMINATION_MIN ( 0 )
1331#define CFG_ENABLE_BEACON_EARLY_TERMINATION_MAX ( 1 )
1332#define CFG_ENABLE_BEACON_EARLY_TERMINATION_DEFAULT ( 0 )
1333
1334#define CFG_ENABLE_CLOSE_LOOP_NAME "gEnableCloseLoop"
1335#define CFG_ENABLE_CLOSE_LOOP_MIN WNI_CFG_FIXED_RATE_STAMIN
1336#define CFG_ENABLE_CLOSE_LOOP_MAX WNI_CFG_FIXED_RATE_STAMAX
1337#define CFG_ENABLE_CLOSE_LOOP_DEFAULT WNI_CFG_FIXED_RATE_STADEF
1338
1339#define CFG_ENABLE_BYPASS_11D_NAME "gEnableBypass11d"
1340#define CFG_ENABLE_BYPASS_11D_MIN ( 0 )
1341#define CFG_ENABLE_BYPASS_11D_MAX ( 1 )
1342#define CFG_ENABLE_BYPASS_11D_DEFAULT ( 0 )
1343
1344#define CFG_ENABLE_DFS_CHNL_SCAN_NAME "gEnableDFSChnlScan"
1345#define CFG_ENABLE_DFS_CHNL_SCAN_MIN ( 0 )
1346#define CFG_ENABLE_DFS_CHNL_SCAN_MAX ( 1 )
1347#define CFG_ENABLE_DFS_CHNL_SCAN_DEFAULT ( 1 )
1348
1349typedef enum
1350{
1351 eHDD_LINK_SPEED_REPORT_ACTUAL = 0,
1352 eHDD_LINK_SPEED_REPORT_MAX = 1,
1353 eHDD_LINK_SPEED_REPORT_MAX_SCALED = 2,
1354}eHddLinkSpeedReportType;
Jeff Johnsone7245742012-09-05 17:12:55 -07001355#ifdef WLAN_FEATURE_11AC
1356#define CFG_VHT_CHANNEL_WIDTH "gVhtChannelWidth"
1357#define CFG_VHT_CHANNEL_WIDTH_MIN ( 0 )
1358#define CFG_VHT_CHANNEL_WIDTH_MAX ( 2 )
1359#define CFG_VHT_CHANNEL_WIDTH_DEFAULT ( 2 )
1360
1361#define CFG_VHT_ENABLE_RX_MCS_8_9 "gVhtRxMCS"
1362#define CFG_VHT_ENABLE_RX_MCS_8_9_MIN ( 0 )
1363#define CFG_VHT_ENABLE_RX_MCS_8_9_MAX ( 2 )
1364#define CFG_VHT_ENABLE_RX_MCS_8_9_DEFAULT ( 0 )
1365
1366#define CFG_VHT_ENABLE_TX_MCS_8_9 "gVhtTxMCS"
1367#define CFG_VHT_ENABLE_TX_MCS_8_9_MIN ( 0 )
1368#define CFG_VHT_ENABLE_TX_MCS_8_9_MAX ( 2 )
1369#define CFG_VHT_ENABLE_TX_MCS_8_9_DEFAULT ( 0 )
1370
1371#endif
Jeff Johnson295189b2012-06-20 16:38:30 -07001372
1373#define CFG_REPORT_MAX_LINK_SPEED "gReportMaxLinkSpeed"
1374#define CFG_REPORT_MAX_LINK_SPEED_MIN ( eHDD_LINK_SPEED_REPORT_ACTUAL )
1375#define CFG_REPORT_MAX_LINK_SPEED_MAX ( eHDD_LINK_SPEED_REPORT_MAX_SCALED )
Leela Venkata Kiran Kumar Reddy Chirala911463f2013-02-22 18:01:15 -08001376#define CFG_REPORT_MAX_LINK_SPEED_DEFAULT ( eHDD_LINK_SPEED_REPORT_MAX_SCALED )
Jeff Johnson295189b2012-06-20 16:38:30 -07001377
1378/*
1379 * RSSI Thresholds
1380 * Used when eHDD_LINK_SPEED_REPORT_SCALED is selected
1381 */
1382#define CFG_LINK_SPEED_RSSI_HIGH "gLinkSpeedRssiHigh"
1383#define CFG_LINK_SPEED_RSSI_HIGH_MIN ( -127 )
1384#define CFG_LINK_SPEED_RSSI_HIGH_MAX ( 0 )
1385#define CFG_LINK_SPEED_RSSI_HIGH_DEFAULT ( -55 )
1386
Madan Mohan Koyyalamudi8df78d52012-11-02 12:30:06 -07001387#define CFG_LINK_SPEED_RSSI_MID "gLinkSpeedRssiMed"
1388#define CFG_LINK_SPEED_RSSI_MID_MIN ( -127 )
1389#define CFG_LINK_SPEED_RSSI_MID_MAX ( 0 )
1390#define CFG_LINK_SPEED_RSSI_MID_DEFAULT ( -65 )
1391
Jeff Johnson295189b2012-06-20 16:38:30 -07001392#define CFG_LINK_SPEED_RSSI_LOW "gLinkSpeedRssiLow"
1393#define CFG_LINK_SPEED_RSSI_LOW_MIN ( -127 )
1394#define CFG_LINK_SPEED_RSSI_LOW_MAX ( 0 )
Madan Mohan Koyyalamudi8df78d52012-11-02 12:30:06 -07001395#define CFG_LINK_SPEED_RSSI_LOW_DEFAULT ( -80 )
Jeff Johnson295189b2012-06-20 16:38:30 -07001396
Jeff Johnson295189b2012-06-20 16:38:30 -07001397#define CFG_P2P_DEVICE_ADDRESS_ADMINISTRATED_NAME "isP2pDeviceAddrAdministrated"
1398#define CFG_P2P_DEVICE_ADDRESS_ADMINISTRATED_MIN ( 0 )
1399#define CFG_P2P_DEVICE_ADDRESS_ADMINISTRATED_MAX ( 1 )
kalikinkar dharac0eda4f2013-10-08 16:41:33 -07001400#define CFG_P2P_DEVICE_ADDRESS_ADMINISTRATED_DEFAULT ( 1 )
Jeff Johnson295189b2012-06-20 16:38:30 -07001401
Jeff Johnson295189b2012-06-20 16:38:30 -07001402
Gopichand Nakkalae620d5a2013-04-26 05:45:57 -07001403#define CFG_ENABLE_SSR "gEnableSSR"
1404#define CFG_ENABLE_SSR_MIN ( 0 )
1405#define CFG_ENABLE_SSR_MAX ( 1 )
1406#define CFG_ENABLE_SSR_DEFAULT ( 1 )
1407
Jeff Johnson295189b2012-06-20 16:38:30 -07001408/*
Varun Reddy Yeturu587e6802013-01-24 12:21:41 -08001409 * VOS Trace Enable Control
1410 * Notes:
1411 * the MIN/MAX/DEFAULT values apply for all modules
1412 * the DEFAULT value is outside the valid range. if the DEFAULT
1413 * value is not overridden, then no change will be made to the
1414 * "built in" default values compiled into the code
1415 * values are a bitmap indicating which log levels are to enabled
1416 * (must match order of vos_trace_level enumerations)
1417 * 00000001 FATAL
1418 * 00000010 ERROR
1419 * 00000100 WARN
1420 * 00001000 INFO
1421 * 00010000 INFO HIGH
1422 * 00100000 INFO MED
1423 * 01000000 INFO LOW
1424 * 10000000 DEBUG
1425 *
1426 * hence a value of 0xFF would set all bits (enable all logs)
1427 */
1428
1429#define CFG_VOS_TRACE_ENABLE_BAP_NAME "vosTraceEnableBAP"
1430#define CFG_VOS_TRACE_ENABLE_TL_NAME "vosTraceEnableTL"
1431#define CFG_VOS_TRACE_ENABLE_WDI_NAME "vosTraceEnableWDI"
1432#define CFG_VOS_TRACE_ENABLE_HDD_NAME "vosTraceEnableHDD"
1433#define CFG_VOS_TRACE_ENABLE_SME_NAME "vosTraceEnableSME"
1434#define CFG_VOS_TRACE_ENABLE_PE_NAME "vosTraceEnablePE"
Katya Nigam70d68332013-09-16 16:49:45 +05301435#define CFG_VOS_TRACE_ENABLE_PMC_NAME "vosTraceEnablePMC"
Varun Reddy Yeturu587e6802013-01-24 12:21:41 -08001436#define CFG_VOS_TRACE_ENABLE_WDA_NAME "vosTraceEnableWDA"
1437#define CFG_VOS_TRACE_ENABLE_SYS_NAME "vosTraceEnableSYS"
1438#define CFG_VOS_TRACE_ENABLE_VOSS_NAME "vosTraceEnableVOSS"
Varun Reddy Yeturu587e6802013-01-24 12:21:41 -08001439#define CFG_VOS_TRACE_ENABLE_SAP_NAME "vosTraceEnableSAP"
1440#define CFG_VOS_TRACE_ENABLE_HDD_SAP_NAME "vosTraceEnableHDDSAP"
Varun Reddy Yeturu587e6802013-01-24 12:21:41 -08001441
1442#define CFG_VOS_TRACE_ENABLE_MIN (0)
1443#define CFG_VOS_TRACE_ENABLE_MAX (0xff)
1444#define CFG_VOS_TRACE_ENABLE_DEFAULT (0xffff)
1445
1446/*
Jeff Johnson295189b2012-06-20 16:38:30 -07001447 * WDI Trace Enable Control
1448 * Notes:
1449 * the MIN/MAX/DEFAULT values apply for all modules
1450 * the DEFAULT value is outside the valid range. if the DEFAULT
1451 * value is not overridden, then no change will be made to the
1452 * "built in" default values compiled into the code
1453 * values are a bitmap indicating which log levels are to enabled
1454 * (must match order of wpt_tracelevel enumerations)
1455 * 00000001 FATAL
1456 * 00000010 ERROR
1457 * 00000100 WARN
1458 * 00001000 INFO
1459 * 00010000 INFO HIGH
1460 * 00100000 INFO MED
1461 * 01000000 INFO LOW
1462 *
1463 * hence a value of 0x7F would set all bits (enable all logs)
1464 */
1465#define CFG_WDI_TRACE_ENABLE_DAL_NAME "wdiTraceEnableDAL"
1466#define CFG_WDI_TRACE_ENABLE_CTL_NAME "wdiTraceEnableCTL"
1467#define CFG_WDI_TRACE_ENABLE_DAT_NAME "wdiTraceEnableDAT"
1468#define CFG_WDI_TRACE_ENABLE_PAL_NAME "wdiTraceEnablePAL"
1469#define CFG_WDI_TRACE_ENABLE_MIN (0)
1470#define CFG_WDI_TRACE_ENABLE_MAX (0x7f)
1471#define CFG_WDI_TRACE_ENABLE_DEFAULT (0xffffffff)
1472
1473#define HDD_MCASTBCASTFILTER_FILTER_NONE 0x00
1474#define HDD_MCASTBCASTFILTER_FILTER_ALL_MULTICAST 0x01
1475#define HDD_MCASTBCASTFILTER_FILTER_ALL_BROADCAST 0x02
1476#define HDD_MCASTBCASTFILTER_FILTER_ALL_MULTICAST_BROADCAST 0x03
Amar Singhalf3a6e762013-02-19 15:06:50 -08001477#define HDD_MULTICAST_FILTER_LIST 0x04
Jeff Johnson295189b2012-06-20 16:38:30 -07001478
1479/*
1480 *
1481 * SAP Auto Channel Enable
1482 * Notes:
1483 * Auto Channel selection for SAP configuration
1484 * 0 - Disable Auto Channel
1485 * 1 - Enable auto channel selection in auto mode.
1486 * When enable auto channel, channel provided by Supplicant will be ignored.
1487 *
1488 * Default configuration: Auto channel is disabled.
1489 */
1490
1491#define CFG_SAP_AUTO_CHANNEL_SELECTION_NAME "gApAutoChannelSelection"
1492
1493#define CFG_SAP_AUTO_CHANNEL_SELECTION_MIN ( 0 )
1494#define CFG_SAP_AUTO_CHANNEL_SELECTION_MAX ( 1 )
1495#define CFG_SAP_AUTO_CHANNEL_SELECTION_DEFAULT ( 0 )
1496
Madan Mohan Koyyalamudi69b34182013-01-16 08:51:40 +05301497/*BMPS Logic
1498 * Notes:
1499 * 1 - Then Host driver and above layers control the PS mechanism
1500 * 0 - Diver/Core Stack internally control the Power saving mechanism
1501 */
1502#define CFG_ANDRIOD_POWER_SAVE_NAME "isAndroidPsEn"
1503#define CFG_ANDRIOD_POWER_SAVE_MIN ( 0 )
1504#define CFG_ANDRIOD_POWER_SAVE_MAX ( 1 )
1505#define CFG_ANDRIOD_POWER_SAVE_DEFAULT ( 0 )
1506
Jeff Johnson295189b2012-06-20 16:38:30 -07001507
1508/*
1509 * Enable Dynamic DTIM
1510 * Options
1511 * 0 -Disable DynamicDTIM
1512 * 1 to 5 - SLM will switch to DTIM specified here when host suspends and
1513 * switch DTIM1 when host resumes */
1514#define CFG_ENABLE_DYNAMIC_DTIM_NAME "gEnableDynamicDTIM"
1515#define CFG_ENABLE_DYNAMIC_DTIM_MIN ( 0 )
1516#define CFG_ENABLE_DYNAMIC_DTIM_MAX ( 5 )
1517#define CFG_ENABLE_DYNAMIC_DTIM_DEFAULT ( 0 )
1518
Jeff Johnsone7245742012-09-05 17:12:55 -07001519/*
1520 * Enable First Scan 2G Only
1521 * Options
1522 * 0 - Disable First Scan 2G Option
1523 * 1 - Enable First Scan 2G Option
1524 */
1525#define CFG_ENABLE_FIRST_SCAN_2G_ONLY_NAME "gEnableFirstScan2GOnly"
1526#define CFG_ENABLE_FIRST_SCAN_2G_ONLY_MIN ( 0 )
1527#define CFG_ENABLE_FIRST_SCAN_2G_ONLY_MAX ( 1 )
1528#define CFG_ENABLE_FIRST_SCAN_2G_ONLY_DEFAULT ( 0 )
1529
1530/*
1531 * Skip DFS Channel in case of P2P Search
1532 * Options
1533 * 0 - Don't Skip DFS Channel in case of P2P Search
1534 * 1 - Skip DFS Channel in case of P2P Search
1535 */
1536#define CFG_ENABLE_SKIP_DFS_IN_P2P_SEARCH_NAME "gSkipDfsChannelInP2pSearch"
1537#define CFG_ENABLE_SKIP_DFS_IN_P2P_SEARCH_MIN ( 0 )
1538#define CFG_ENABLE_SKIP_DFS_IN_P2P_SEARCH_MAX ( 1 )
Leela Venkata Kiran Kumar Reddy Chirala911463f2013-02-22 18:01:15 -08001539#define CFG_ENABLE_SKIP_DFS_IN_P2P_SEARCH_DEFAULT ( 1 )
Jeff Johnsone7245742012-09-05 17:12:55 -07001540
1541/*
1542 * Ignore Dynamic Dtim in case of P2P
1543 * Options
1544 * 0 - Consider Dynamic Dtim incase of P2P
1545 * 1 - Ignore Dynamic Dtim incase of P2P
1546 */
1547#define CFG_IGNORE_DYNAMIC_DTIM_IN_P2P_MODE_NAME "gIgnoreDynamicDtimInP2pMode"
1548#define CFG_IGNORE_DYNAMIC_DTIM_IN_P2P_MODE_MIN ( 0 )
1549#define CFG_IGNORE_DYNAMIC_DTIM_IN_P2P_MODE_MAX ( 1 )
1550#define CFG_IGNORE_DYNAMIC_DTIM_IN_P2P_MODE_DEFAULT ( 0 )
1551
1552
Jeff Johnson295189b2012-06-20 16:38:30 -07001553#define CFG_ENABLE_AUTOMATIC_TX_POWER_CONTROL_NAME "gEnableAutomaticTxPowerControl"
1554#define CFG_ENABLE_AUTOMATIC_TX_POWER_CONTROL_MIN ( 0 )
1555#define CFG_ENABLE_AUTOMATIC_TX_POWER_CONTROL_MAX ( 1 )
1556#define CFG_ENABLE_AUTOMATIC_TX_POWER_CONTROL_DEFAULT ( 1 )
1557
1558#define CFG_SHORT_GI_40MHZ_NAME "gShortGI40Mhz"
1559#define CFG_SHORT_GI_40MHZ_MIN 0
1560#define CFG_SHORT_GI_40MHZ_MAX 1
1561#define CFG_SHORT_GI_40MHZ_DEFAULT 1
1562
1563/*
1564 * Enable / Disable MCC feature
1565 * Default: Enable
1566 */
Sudhir Sattayappa Kohallid9a4df62013-04-04 14:47:54 -07001567#define CFG_ENABLE_MCC_ENABLED_NAME "gEnableMCCMode"
Jeff Johnson295189b2012-06-20 16:38:30 -07001568#define CFG_ENABLE_MCC_ENABLED_MIN ( 0 )
1569#define CFG_ENABLE_MCC_ENABLED_MAX ( 1 )
Sudhir Sattayappa Kohallid9a4df62013-04-04 14:47:54 -07001570#define CFG_ENABLE_MCC_ENABLED_DEFAULT ( 1 )
Jeff Johnson295189b2012-06-20 16:38:30 -07001571
1572/*
Mohit Khanna7ed53f02012-09-11 17:52:10 -07001573 * Allow GO in MCC mode to accept different beacon interval than STA's.
1574 * Added for Wi-Fi Cert. 5.1.12
Sudhir Sattayappa Kohallid9a4df62013-04-04 14:47:54 -07001575 * Default: gAllowMCCGODiffBI = 2
1576 * If gAllowMCCGODiffBI = 1 // Set to 1 for WFA certification. GO Beacon
1577 * interval is not changed. MCC GO
1578 * doesn't work well in optimized way.
1579 * In worst scenario, it may invite STA
1580 * disconnection.
1581 * gAllowMCCGODiffBI = 2 //If set to 2 workaround 1 disassoc all the clients
Madan Mohan Koyyalamudi167b95e2012-11-27 15:53:38 -08001582 * and update beacon Interval
1583 * gAllowMCCGODiffBI = 3 //If set to 3 tear down the P2P link in auto/
1584 * Non-autonomous -GO case
Sudhir Sattayappa Kohallid9a4df62013-04-04 14:47:54 -07001585 * gAllowMCCGODiffBI = 4 //If set to 4 don't disconnect the P2P client
1586 * in autonomous/Non-autonomous -GO case update
1587 * the BI dynamically
Mohit Khanna7ed53f02012-09-11 17:52:10 -07001588 */
1589#define CFG_ALLOW_MCC_GO_DIFF_BI_NAME "gAllowMCCGODiffBI"
1590#define CFG_ALLOW_MCC_GO_DIFF_BI_MIN ( 0 )
Sudhir Sattayappa Kohallid9a4df62013-04-04 14:47:54 -07001591#define CFG_ALLOW_MCC_GO_DIFF_BI_MAX ( 4 )
Sudhir Sattayappa Kohallif63bb232013-05-01 12:28:43 -07001592#define CFG_ALLOW_MCC_GO_DIFF_BI_DEFAULT ( 4 )
Mohit Khanna7ed53f02012-09-11 17:52:10 -07001593
1594/*
Jeff Johnson295189b2012-06-20 16:38:30 -07001595 * Enable/Disable Thermal Mitigation feature
1596 * Default: Disable
1597 */
1598#define CFG_THERMAL_MIGRATION_ENABLE_NAME "gThermalMitigationEnable"
1599#define CFG_THERMAL_MIGRATION_ENABLE_MIN ( 0 )
1600#define CFG_THERMAL_MIGRATION_ENABLE_MAX ( 1 )
1601#define CFG_THERMAL_MIGRATION_ENABLE_DEFAULT ( 0 )
1602
1603/*
1604 * Enable/Disable Modulated DTIM feature
1605 * Default: Disable
1606 */
1607#define CFG_ENABLE_MODULATED_DTIM_NAME "gEnableModulatedDTIM"
1608#define CFG_ENABLE_MODULATED_DTIM_MIN ( 0 )
1609#define CFG_ENABLE_MODULATED_DTIM_MAX ( 5 )
1610#define CFG_ENABLE_MODULATED_DTIM_DEFAULT ( 0 )
1611
Jeff Johnsond13512a2012-07-17 11:42:19 -07001612/*
1613 * Enable/Disable Multicast MAC Address List feature
1614 * Default: Disable
1615 */
1616#define CFG_MC_ADDR_LIST_ENABLE_NAME "gMCAddrListEnable"
1617#define CFG_MC_ADDR_LIST_ENABLE_MIN ( 0 )
1618#define CFG_MC_ADDR_LIST_ENABLE_MAX ( 1 )
1619#define CFG_MC_ADDR_LIST_ENABLE_DEFAULT ( 0 )
1620
Madan Mohan Koyyalamudidd11eaf2012-11-02 16:04:21 -07001621/* Set number of buffers to be advertised during ADDBA negotiation*/
1622#define CFG_NUM_BUFF_ADVERT_NAME "gNumBuffAdvert"
1623#define CFG_NUM_BUFF_ADVERT_MIN ( 0 )
1624#define CFG_NUM_BUFF_ADVERT_MAX ( 128 )
Leela Venkata Kiran Kumar Reddy Chirala911463f2013-02-22 18:01:15 -08001625#define CFG_NUM_BUFF_ADVERT_DEFAULT ( 64 )
Madan Mohan Koyyalamudidd11eaf2012-11-02 16:04:21 -07001626
Madan Mohan Koyyalamudid5f04ca2012-11-06 15:51:26 -08001627/*
1628 * Allow MCC to modify config
1629 */
1630#define CFG_MCC_CONFIG_PARAM_NAME "gMccAllowCfgModify"
1631#define CFG_MCC_CONFIG_PARAM_MIN ( 0x0000 )
1632#define CFG_MCC_CONFIG_PARAM_MAX ( 0x01ff )
1633#define CFG_MCC_CONFIG_PARAM_DEFAULT ( 0x000C )
1634
Pratik Bhalgat6bfd1422012-11-22 17:09:40 +05301635#define CFG_ENABLE_RX_STBC "gEnableRXSTBC"
1636#define CFG_ENABLE_RX_STBC_MIN ( 0 )
1637#define CFG_ENABLE_RX_STBC_MAX ( 1 )
1638#define CFG_ENABLE_RX_STBC_DEFAULT ( 1 )
1639
Gopichand Nakkala976e3252013-01-03 15:45:56 -08001640/*
1641 * Enable/Disable vsta based on MAX Assoc limit
1642 * defined in WCNSS_qcom_cfg.ini.
1643 */
1644#ifdef WLAN_SOFTAP_VSTA_FEATURE
1645#define CFG_VSTA_SUPPORT_ENABLE "gEnableVSTASupport"
1646#define CFG_VSTA_SUPPORT_ENABLE_MIN ( 0 )
1647#define CFG_VSTA_SUPPORT_ENABLE_MAX ( 1 )
1648#define CFG_VSTA_SUPPORT_ENABLE_DEFAULT ( 0 )
1649#endif
Pratik Bhalgat6bfd1422012-11-22 17:09:40 +05301650
Mohit Khanna698ba2a2012-12-04 15:08:18 -08001651#ifdef FEATURE_WLAN_TDLS
Hoonki Leebf870f32013-01-19 15:53:30 +05301652#define CFG_TDLS_SUPPORT_ENABLE "gEnableTDLSSupport"
1653#define CFG_TDLS_SUPPORT_ENABLE_MIN ( 0 )
1654#define CFG_TDLS_SUPPORT_ENABLE_MAX ( 1 )
1655#define CFG_TDLS_SUPPORT_ENABLE_DEFAULT ( 0 )
1656
1657#define CFG_TDLS_IMPLICIT_TRIGGER "gEnableTDLSImplicitTrigger"
1658#define CFG_TDLS_IMPLICIT_TRIGGER_MIN ( 0 )
1659#define CFG_TDLS_IMPLICIT_TRIGGER_MAX ( 1 )
1660#define CFG_TDLS_IMPLICIT_TRIGGER_DEFAULT ( 0 )
1661
1662#define CFG_TDLS_TX_STATS_PERIOD "gTDLSTxStatsPeriod"
Hoonki Lee27511902013-03-14 18:19:06 -07001663#define CFG_TDLS_TX_STATS_PERIOD_MIN ( 2000 )
Hoonki Leebf870f32013-01-19 15:53:30 +05301664#define CFG_TDLS_TX_STATS_PERIOD_MAX ( 4294967295UL )
Hoonki Lee27511902013-03-14 18:19:06 -07001665#define CFG_TDLS_TX_STATS_PERIOD_DEFAULT ( 5000 )
Hoonki Leebf870f32013-01-19 15:53:30 +05301666
1667#define CFG_TDLS_TX_PACKET_THRESHOLD "gTDLSTxPacketThreshold"
1668#define CFG_TDLS_TX_PACKET_THRESHOLD_MIN ( 0 )
1669#define CFG_TDLS_TX_PACKET_THRESHOLD_MAX ( 4294967295UL )
Hoonki Lee27511902013-03-14 18:19:06 -07001670#define CFG_TDLS_TX_PACKET_THRESHOLD_DEFAULT ( 100 )
Hoonki Leebf870f32013-01-19 15:53:30 +05301671
1672#define CFG_TDLS_DISCOVERY_PERIOD "gTDLSDiscoveryPeriod"
Hoonki Lee27511902013-03-14 18:19:06 -07001673#define CFG_TDLS_DISCOVERY_PERIOD_MIN ( 5000 )
Hoonki Leebf870f32013-01-19 15:53:30 +05301674#define CFG_TDLS_DISCOVERY_PERIOD_MAX ( 4294967295UL )
Hoonki Lee27511902013-03-14 18:19:06 -07001675#define CFG_TDLS_DISCOVERY_PERIOD_DEFAULT ( 20000 )
Hoonki Leebf870f32013-01-19 15:53:30 +05301676
1677#define CFG_TDLS_MAX_DISCOVERY_ATTEMPT "gTDLSMaxDiscoveryAttempt"
Hoonki Lee27511902013-03-14 18:19:06 -07001678#define CFG_TDLS_MAX_DISCOVERY_ATTEMPT_MIN ( 1 )
Hoonki Leebf870f32013-01-19 15:53:30 +05301679#define CFG_TDLS_MAX_DISCOVERY_ATTEMPT_MAX ( 100 )
Hoonki Lee27511902013-03-14 18:19:06 -07001680#define CFG_TDLS_MAX_DISCOVERY_ATTEMPT_DEFAULT ( 3 )
Hoonki Leebf870f32013-01-19 15:53:30 +05301681
Chilam Ng01120412013-02-19 18:32:21 -08001682#define CFG_TDLS_IDLE_TIMEOUT "gTDLSIdleTimeout"
Hoonki Lee27511902013-03-14 18:19:06 -07001683#define CFG_TDLS_IDLE_TIMEOUT_MIN ( 2000 )
Chilam Ng01120412013-02-19 18:32:21 -08001684#define CFG_TDLS_IDLE_TIMEOUT_MAX ( 40000 )
1685#define CFG_TDLS_IDLE_TIMEOUT_DEFAULT ( 5000 )
1686
1687#define CFG_TDLS_IDLE_PACKET_THRESHOLD "gTDLSIdlePacketThreshold"
Hoonki Lee27511902013-03-14 18:19:06 -07001688#define CFG_TDLS_IDLE_PACKET_THRESHOLD_MIN ( 1 )
Chilam Ng01120412013-02-19 18:32:21 -08001689#define CFG_TDLS_IDLE_PACKET_THRESHOLD_MAX ( 40000 )
1690#define CFG_TDLS_IDLE_PACKET_THRESHOLD_DEFAULT ( 5 )
Hoonki Leebf870f32013-01-19 15:53:30 +05301691
1692#define CFG_TDLS_RSSI_HYSTERESIS "gTDLSRssiHysteresis"
1693#define CFG_TDLS_RSSI_HYSTERESIS_MIN ( 0 )
1694#define CFG_TDLS_RSSI_HYSTERESIS_MAX ( 100 )
1695#define CFG_TDLS_RSSI_HYSTERESIS_DEFAULT ( 100 )
Chilam Ng01120412013-02-19 18:32:21 -08001696
1697#define CFG_TDLS_RSSI_TRIGGER_THRESHOLD "gTDLSRSSITriggerThreshold"
1698#define CFG_TDLS_RSSI_TRIGGER_THRESHOLD_MIN ( -120 )
Shailender Karmuchi13c0d082013-03-26 14:41:39 -07001699#define CFG_TDLS_RSSI_TRIGGER_THRESHOLD_MAX ( 0 )
1700#define CFG_TDLS_RSSI_TRIGGER_THRESHOLD_DEFAULT ( -75 )
Chilam Ng01120412013-02-19 18:32:21 -08001701
1702#define CFG_TDLS_RSSI_TEARDOWN_THRESHOLD "gTDLSRSSITeardownThreshold"
1703#define CFG_TDLS_RSSI_TEARDOWN_THRESHOLD_MIN ( -120 )
1704#define CFG_TDLS_RSSI_TEARDOWN_THRESHOLD_MAX ( 0 )
1705#define CFG_TDLS_RSSI_TEARDOWN_THRESHOLD_DEFAULT ( -75 )
Gopichand Nakkala79ff85d2013-05-27 17:05:29 +05301706
1707#define CFG_TDLS_QOS_WMM_UAPSD_MASK_NAME "gTDLSUapsdMask" // ACs to setup U-APSD for TDLS Sta
1708#define CFG_TDLS_QOS_WMM_UAPSD_MASK_MIN (0)
1709#define CFG_TDLS_QOS_WMM_UAPSD_MASK_MAX (15)
1710#define CFG_TDLS_QOS_WMM_UAPSD_MASK_DEFAULT (0)
1711
1712#define CFG_TDLS_BUFFER_STA_SUPPORT_ENABLE "gEnableTDLSBufferSta"
1713#define CFG_TDLS_BUFFER_STA_SUPPORT_ENABLE_MIN (0)
1714#define CFG_TDLS_BUFFER_STA_SUPPORT_ENABLE_MAX (1)
1715#define CFG_TDLS_BUFFER_STA_SUPPORT_ENABLE_DEFAULT (1)
1716
1717#define CFG_TDLS_PUAPSD_INACTIVITY_TIME "gTDLSPuapsdInactivityTime"
1718#define CFG_TDLS_PUAPSD_INACTIVITY_TIME_MIN (0)
1719#define CFG_TDLS_PUAPSD_INACTIVITY_TIME_MAX (10)
1720#define CFG_TDLS_PUAPSD_INACTIVITY_TIME_DEFAULT (0)
1721
1722#define CFG_TDLS_PUAPSD_RX_FRAME_THRESHOLD "gTDLSPuapsdRxFrameThreshold"
1723#define CFG_TDLS_PUAPSD_RX_FRAME_THRESHOLD_MIN (10)
1724#define CFG_TDLS_PUAPSD_RX_FRAME_THRESHOLD_MAX (20)
1725#define CFG_TDLS_PUAPSD_RX_FRAME_THRESHOLD_DEFAULT (10)
Gopichand Nakkala31649672013-02-27 12:15:51 -08001726#endif
Gopichand Nakkalafda520a2013-02-26 16:41:58 -08001727
Gopichand Nakkala31649672013-02-27 12:15:51 -08001728#ifdef WLAN_ACTIVEMODE_OFFLOAD_FEATURE
Leela Venkata Kiran Kumar Reddy Chirala911463f2013-02-22 18:01:15 -08001729#define CFG_ACTIVEMODE_OFFLOAD_ENABLE "gEnableActiveModeOffload"
1730#define CFG_ACTIVEMODE_OFFLOAD_ENABLE_MIN ( 0 )
1731#define CFG_ACTIVEMODE_OFFLOAD_ENABLE_MAX ( 1 )
1732#define CFG_ACTIVEMODE_OFFLOAD_ENABLE_DEFAULT ( 1 )
Mohit Khanna698ba2a2012-12-04 15:08:18 -08001733#endif
Madan Mohan Koyyalamudi0d40e662012-12-07 14:24:14 -08001734
1735/* Enable/Disable LPWR Image(cMEM uBSP) Transition */
1736#define CFG_ENABLE_LPWR_IMG_TRANSITION_NAME "gEnableLpwrImgTransition"
1737#define CFG_ENABLE_LPWR_IMG_TRANSITION_MIN ( 0 )
1738#define CFG_ENABLE_LPWR_IMG_TRANSITION_MAX ( 1 )
1739#define CFG_ENABLE_LPWR_IMG_TRANSITION_DEFAULT ( 0 )
1740
1741
Sandeep Puligilla2b6dc632012-12-17 14:44:16 -08001742/*
1743 * Scan Aging timeout value in seconds
1744 */
1745#define CFG_SCAN_AGING_PARAM_NAME "gScanAgingTime"
1746#define CFG_SCAN_AGING_PARAM_MIN ( 0 )
1747#define CFG_SCAN_AGING_PARAM_MAX ( 200 )
1748#define CFG_SCAN_AGING_PARAM_DEFAULT ( 60 )
1749
Gopichand Nakkalab2d2c312013-01-04 11:41:02 -08001750/* Config Param to enable the txLdpc capability
1751 * 0 - disable
1752 * 1 - HT LDPC enable
1753 * 2 - VHT LDPC enable
1754 * 3 - HT & VHT LDPC enable */
1755#define CFG_TX_LDPC_ENABLE_FEATURE "gTxLdpcEnable"
1756#define CFG_TX_LDPC_ENABLE_FEATURE_MIN ( 0 )
1757#define CFG_TX_LDPC_ENABLE_FEATURE_MAX ( 3 )
1758#define CFG_TX_LDPC_ENABLE_FEATURE_DEFAULT ( 0 )
Madan Mohan Koyyalamudi01cba042013-01-10 21:56:05 -08001759
1760/*
1761 * Enable / Disable MCC Adaptive Scheduler feature
1762 * Default: Enable
1763 */
1764#define CFG_ENABLE_MCC_ADATIVE_SCHEDULER_ENABLED_NAME "gEnableMCCAdaptiveScheduler"
1765#define CFG_ENABLE_MCC_ADATIVE_SCHEDULER_ENABLED_MIN ( 0 )
1766#define CFG_ENABLE_MCC_ADATIVE_SCHEDULER_ENABLED_MAX ( 1 )
Bansidhar Gopalacharia31c5022013-08-01 15:21:05 -07001767#define CFG_ENABLE_MCC_ADATIVE_SCHEDULER_ENABLED_DEFAULT ( 1 )
Madan Mohan Koyyalamudi01cba042013-01-10 21:56:05 -08001768
Shailender Karmuchi08f87c22013-01-17 12:51:24 -08001769#ifdef WLAN_FEATURE_11AC
1770#define CFG_VHT_SU_BEAMFORMEE_CAP_FEATURE "gTxBFEnable"
1771#define CFG_VHT_SU_BEAMFORMEE_CAP_FEATURE_MIN ( WNI_CFG_VHT_SU_BEAMFORMEE_CAP_STAMIN )
1772#define CFG_VHT_SU_BEAMFORMEE_CAP_FEATURE_MAX ( WNI_CFG_VHT_SU_BEAMFORMEE_CAP_STAMAX )
1773#define CFG_VHT_SU_BEAMFORMEE_CAP_FEATURE_DEFAULT ( WNI_CFG_VHT_SU_BEAMFORMEE_CAP_STADEF )
Shailender Karmuchicc3fe442013-02-16 18:18:33 -08001774
1775#define CFG_VHT_CSN_BEAMFORMEE_ANT_SUPPORTED "gTxBFCsnValue"
1776#define CFG_VHT_CSN_BEAMFORMEE_ANT_SUPPORTED_MIN ( WNI_CFG_VHT_CSN_BEAMFORMEE_ANT_SUPPORTED_STAMIN )
1777#define CFG_VHT_CSN_BEAMFORMEE_ANT_SUPPORTED_MAX ( WNI_CFG_VHT_CSN_BEAMFORMEE_ANT_SUPPORTED_STAMAX )
1778#define CFG_VHT_CSN_BEAMFORMEE_ANT_SUPPORTED_DEFAULT ( WNI_CFG_VHT_CSN_BEAMFORMEE_ANT_SUPPORTED_STAMAX - 1)
1779
Shailender Karmuchi08f87c22013-01-17 12:51:24 -08001780#endif
1781
Leela V Kiran Kumar Reddy Chiralab1f7d342013-02-11 00:27:02 -08001782
Madan Mohan Koyylamudi64267f72013-02-05 14:07:08 +05301783/*
1784 * SAP ALLOW All Channels
1785 */
1786#define CFG_SAP_ALLOW_ALL_CHANNEL_PARAM_NAME "gSapAllowAllChannel"
1787#define CFG_SAP_ALLOW_ALL_CHANNEL_PARAM_MIN ( 0 )
1788#define CFG_SAP_ALLOW_ALL_CHANNEL_PARAM_MAX ( 1 )
1789#define CFG_SAP_ALLOW_ALL_CHANNEL_PARAM_DEFAULT ( 0 )
1790
1791
Leela V Kiran Kumar Reddy Chiralab1f7d342013-02-11 00:27:02 -08001792#ifdef WLAN_FEATURE_11AC
1793#define CFG_DISABLE_LDPC_WITH_TXBF_AP "gDisableLDPCWithTxbfAP"
1794#define CFG_DISABLE_LDPC_WITH_TXBF_AP_MIN ( 0 )
1795#define CFG_DISABLE_LDPC_WITH_TXBF_AP_MAX ( 1 )
Leela Venkata Kiran Kumar Reddy Chirala69300092013-03-29 14:31:57 -07001796#define CFG_DISABLE_LDPC_WITH_TXBF_AP_DEFAULT ( 0 )
Leela V Kiran Kumar Reddy Chiralab1f7d342013-02-11 00:27:02 -08001797#endif
Tushnim Bhattacharyya9cdf6082013-04-21 16:33:30 -07001798
1799#define CFG_LIST_OF_NON_DFS_COUNTRY_CODE "gListOfNonDfsCountryCode"
1800#define CFG_LIST_OF_NON_DFS_COUNTRY_CODE_DEFAULT "JO,MA"
1801
Madan Mohan Koyyalamudiba793b62013-05-09 17:45:51 -07001802/*
1803 * IBSS Operating Channels for 2.4G and 5GHz channels
1804 */
1805#define CFG_IBSS_ADHOC_CHANNEL_5GHZ_NAME "gAdHocChannel5G"
1806#define CFG_IBSS_ADHOC_CHANNEL_5GHZ_MIN ( 36 )
1807#define CFG_IBSS_ADHOC_CHANNEL_5GHZ_MAX ( 165 )
1808#define CFG_IBSS_ADHOC_CHANNEL_5GHZ_DEFAULT ( 44 )
1809
1810#define CFG_IBSS_ADHOC_CHANNEL_24GHZ_NAME "gAdHocChannel24G"
1811#define CFG_IBSS_ADHOC_CHANNEL_24GHZ_MIN ( 1 )
1812#define CFG_IBSS_ADHOC_CHANNEL_24GHZ_MAX ( 14 )
1813#define CFG_IBSS_ADHOC_CHANNEL_24GHZ_DEFAULT ( 6 )
Shailender Karmuchia734f332013-04-19 14:02:48 -07001814
Ravi Joshi83bfaa12013-05-28 22:12:08 -07001815#define CFG_LIST_OF_NON_11AC_COUNTRY_CODE "gListOfNon11acCountryCode"
1816#define CFG_LIST_OF_NON_11AC_COUNTRY_CODE_DEFAULT "RU,UA,ZA"
1817
1818/* Parameter to control VHT support in 2.4 GHz band */
1819#define CFG_ENABLE_VHT_FOR_24GHZ_NAME "gEnableVhtFor24GHzBand"
1820#define CFG_ENABLE_VHT_FOR_24GHZ_MIN (0)
1821#define CFG_ENABLE_VHT_FOR_24GHZ_MAX (1)
1822#define CFG_ENABLE_VHT_FOR_24GHZ_DEFAULT (0)
1823
Gopichand Nakkaladacbcb52013-04-18 16:41:54 +05301824
Gopichand Nakkala42bc89e2013-05-27 12:49:09 +05301825#define CFG_MAX_MEDIUM_TIME "gMaxMediumTime"
1826#define CFG_MAX_MEDIUM_TIME_STAMIN WNI_CFG_MAX_MEDIUM_TIME_STAMIN
1827#define CFG_MAX_MEDIUM_TIME_STAMAX WNI_CFG_MAX_MEDIUM_TIME_STAMAX
1828#define CFG_MAX_MEDIUM_TIME_STADEFAULT WNI_CFG_MAX_MEDIUM_TIME_STADEF
1829
Leo Chang64d68bc2013-06-04 15:40:52 -07001830/*
1831 * SAP/P2P-GO mode traffic monitor
1832 */
1833#define CFG_ENABLE_TRAFFIC_MONITOR "gEnableTrafficMonitor"
1834#define CFG_ENABLE_TRAFFIC_MONITOR_MIN ( 0 )
1835#define CFG_ENABLE_TRAFFIC_MONITOR_MAX ( 1 )
1836#define CFG_ENABLE_TRAFFIC_MONITOR_DEFAULT ( 0 )
1837
1838#define CFG_TRAFFIC_IDLE_TIMEOUT "gTrafficIdleTimeout"
1839#define CFG_TRAFFIC_IDLE_TIMEOUT_MIN ( 3000 )
1840#define CFG_TRAFFIC_IDLE_TIMEOUT_MAX ( 10000 )
1841#define CFG_TRAFFIC_IDLE_TIMEOUT_DEFAULT ( 5000 )
1842
Gopichand Nakkala154bda22013-06-11 17:41:22 +05301843/*
1844 * SCAN Offload
1845 */
1846#define CFG_SCAN_OFFLOAD_NAME "gEnableDirectedScanOffload"
1847#define CFG_SCAN_OFFLOAD_DISABLE ( 0 )
1848#define CFG_SCAN_OFFLOAD_ENABLE ( 1 )
1849#define CFG_SCAN_OFFLOAD_DEFAULT ( CFG_SCAN_OFFLOAD_DISABLE )
1850
Srinivas Girigowda830bbd02013-06-13 19:44:16 -07001851/*
1852 * Enable legacy fast roaming (LFR) on STA link during concurrent sessions
1853 */
1854#ifdef WLAN_FEATURE_ROAM_SCAN_OFFLOAD
1855#define CFG_ENABLE_FAST_ROAM_IN_CONCURRENCY "gEnableFastRoamInConcurrency"
1856#define CFG_ENABLE_FAST_ROAM_IN_CONCURRENCY_MIN ( 0 )
1857#define CFG_ENABLE_FAST_ROAM_IN_CONCURRENCY_MAX ( 1 )
1858#define CFG_ENABLE_FAST_ROAM_IN_CONCURRENCY_DEFAULT ( 1 )
1859#endif
1860
Yue Ma0fd23872013-08-01 15:56:47 -07001861/*
1862 * FlexConnectPowerFactor parameter
1863 * Default: Disable (0)
1864 */
1865#define CFG_FLEX_CONNECT_POWER_FACTOR_NAME "gFlexConnectPowerFactor"
1866#define CFG_FLEX_CONNECT_POWER_FACTOR_MIN ( 0 )
1867#define CFG_FLEX_CONNECT_POWER_FACTOR_MAX ( 9 )
1868#define CFG_FLEX_CONNECT_POWER_FACTOR_DEFAULT ( 0 )
1869
Ravi Joshid2ca7c42013-07-23 08:37:49 -07001870/*
1871 * Enable heart beat monitoring offload to FW
1872 */
1873#define CFG_ENABLE_HEART_BEAT_OFFLOAD "gEnableIbssHeartBeatOffload"
1874#define CFG_ENABLE_HEART_BEAT_OFFLOAD_MIN ( 0 )
1875#define CFG_ENABLE_HEART_BEAT_OFFLOAD_MAX ( 1 )
1876#define CFG_ENABLE_HEART_BEAT_OFFLOAD_DEFAULT ( 1 )
1877
Madan Mohan Koyyalamudica454572013-08-07 19:57:03 +05301878#define CFG_ANTENNA_DIVERSITY_PARAM_NAME "gAntennaDiversity"
1879#define CFG_ANTENNA_DIVERSITY_PARAM_MIN ( 0 )
1880#define CFG_ANTENNA_DIVERSITY_PARAM_MAX ( 3 )
1881#define CFG_ANTENNA_DIVERSITY_PARAM_DEFAULT ( 0 )
1882
Madan Mohan Koyyalamudid9383fd2013-08-13 09:27:30 +05301883#define CFG_ENABLE_SNR_MONITORING_NAME "gEnableSNRMonitoring"
1884#define CFG_ENABLE_SNR_MONITORING_MIN ( 0 )
1885#define CFG_ENABLE_SNR_MONITORING_MAX ( 1 )
1886#define CFG_ENABLE_SNR_MONITORING_DEFAULT ( 0 )
Sudhir Sattayappa Kohalli37620692013-08-05 14:02:26 -07001887//Macro to enable/disable dynamic timer
1888#define CFG_DYNAMIC_SPLIT_SCAN_NAME "gEnableDynSplitScan"
1889#define CFG_DYNAMIC_SPLIT_SCAN_MIN ( 0 )
1890#define CFG_DYNAMIC_SPLIT_SCAN_MAX ( 1 )
1891#define CFG_DYNAMIC_SPLIT_SCAN_DEFAULT ( 1 )
1892
1893//Macro to monitor the packet count
1894#define CFG_SPLIT_SCAN_TRAFFIC_MONITOR_THRSHLD_NAME "gSplitScanTxRxThreshold"
1895#define CFG_SPLIT_SCAN_TRAFFIC_MONITOR_THRSHLD_MIN ( 10 )
1896#define CFG_SPLIT_SCAN_TRAFFIC_MONITOR_THRSHLD_MAX ( 100 )
1897#define CFG_SPLIT_SCAN_TRAFFIC_MONITOR_THRSHLD_DEFAULT ( 50 )
1898
1899//Macro to handle the monitor timer value in milliseconds
1900#define CFG_SPLIT_SCAN_TRAFFIC_MONITOR_TIMER_NAME "gSplitScanTxRxTimer"
1901#define CFG_SPLIT_SCAN_TRAFFIC_MONITOR_TIMER_MIN ( 1000 )
1902#define CFG_SPLIT_SCAN_TRAFFIC_MONITOR_TIMER_MAX ( 10000 )
1903#define CFG_SPLIT_SCAN_TRAFFIC_MONITOR_TIMER_DEFAULT ( 5000 )
1904
Madan Mohan Koyyalamudi1d16f462013-08-27 16:25:34 +05301905#ifdef FEATURE_WLAN_SCAN_PNO
1906#define CFG_PNO_SCAN_TIMER_REPEAT_VALUE "gPNOScanTimerRepeatValue"
1907#define CFG_PNO_SCAN_TIMER_REPEAT_VALUE_DEFAULT ( 6 )
1908#define CFG_PNO_SCAN_TIMER_REPEAT_VALUE_MIN ( 0 )
1909#define CFG_PNO_SCAN_TIMER_REPEAT_VALUE_MAX ( 0xffffffff )
1910#endif
1911
krunal soni5afa96c2013-09-06 22:19:02 -07001912#define CFG_AMSDU_SUPPORT_IN_AMPDU_NAME "gAmsduSupportInAMPDU"
1913#define CFG_AMSDU_SUPPORT_IN_AMPDU_MIN (0)
1914#define CFG_AMSDU_SUPPORT_IN_AMPDU_MAX (1)
1915#define CFG_AMSDU_SUPPORT_IN_AMPDU_DEFAULT (0) //disabled
1916
Jeff Johnson295189b2012-06-20 16:38:30 -07001917/*---------------------------------------------------------------------------
1918 Type declarations
1919 -------------------------------------------------------------------------*/
1920
1921typedef struct
1922{
1923 //Bitmap to track what is explicitly configured
1924 DECLARE_BITMAP(bExplicitCfg, MAX_CFG_INI_ITEMS);
1925
1926 //Config parameters
1927 v_U32_t RTSThreshold;
1928 v_U32_t FragmentationThreshold;
1929 v_U32_t nCheckForHangTime;
1930 v_U32_t Calibration;
1931 v_U32_t CalibrationPeriod;
1932 v_U8_t OperatingChannel;
1933 v_BOOL_t ShortSlotTimeEnabled;
1934 v_BOOL_t Is11dSupportEnabled;
Madan Mohan Koyyalamudi8db1c942013-01-10 15:24:29 -08001935 v_BOOL_t Is11hSupportEnabled;
Jeff Johnson295189b2012-06-20 16:38:30 -07001936 v_BOOL_t fEnforce11dChannels;
1937 v_BOOL_t fSupplicantCountryCodeHasPriority;
1938 v_BOOL_t fEnforceCountryCodeMatch;
1939 v_BOOL_t fEnforceDefaultDomain;
1940 v_U32_t Cfg1Id;
1941 v_U32_t Cfg2Id;
1942 v_U32_t Cfg3Id;
1943 v_U32_t Cfg4Id;
1944 v_U32_t Cfg5Id;
1945 v_U32_t Cfg1Value;
1946 v_U32_t Cfg2Value;
1947 v_U32_t Cfg3Value;
1948 v_U32_t Cfg4Value;
1949 v_U32_t Cfg5Value;
1950 v_U32_t HeartbeatThresh24;
1951 char PowerUsageControl[4];
1952 v_U8_t nEnableSuspend;
1953 v_U8_t nEnableDriverStop;
1954 v_BOOL_t fIsImpsEnabled;
1955 v_BOOL_t fIsLogpEnabled;
1956 v_U8_t btcExecutionMode;
1957 v_U8_t btcConsBtSlotsToBlockDuringDhcp;
1958 v_U8_t btcA2DPBtSubIntervalsDuringDhcp;
Jeff Johnson32d95a32012-09-10 13:15:23 -07001959 v_U32_t btcStaticLenInqBt;
1960 v_U32_t btcStaticLenPageBt;
1961 v_U32_t btcStaticLenConnBt;
1962 v_U32_t btcStaticLenLeBt;
1963 v_U32_t btcStaticLenInqWlan;
1964 v_U32_t btcStaticLenPageWlan;
1965 v_U32_t btcStaticLenConnWlan;
1966 v_U32_t btcStaticLenLeWlan;
1967 v_U32_t btcDynMaxLenBt;
1968 v_U32_t btcDynMaxLenWlan;
1969 v_U32_t btcMaxScoBlockPerc;
1970 v_U32_t btcDhcpProtOnA2dp;
1971 v_U32_t btcDhcpProtOnSco;
Wilson Tsaof8b37942013-09-06 10:49:00 -07001972 v_U32_t mwsCoexVictimWANFreq[10];
1973 v_U32_t mwsCoexVictimWLANFreq[10];
1974 v_U32_t mwsCoexVictimConfig[10];
1975 v_U32_t mwsCoexVictimConfig2[10];
1976 v_U32_t mwsCoexModemBackoff;
1977 v_U32_t mwsCoexConfig[6];
1978 v_U32_t SARPowerBackoff;
Jeff Johnson295189b2012-06-20 16:38:30 -07001979 v_U32_t nImpsModSleepTime;
1980 v_U32_t nImpsMaxSleepTime;
1981 v_U32_t nImpsMinSleepTime;
1982 v_BOOL_t fIsBmpsEnabled;
1983 v_U32_t nBmpsModListenInterval;
1984 v_U32_t nBmpsMaxListenInterval;
1985 v_U32_t nBmpsMinListenInterval;
1986 v_BOOL_t fIsAutoBmpsTimerEnabled;
1987 v_U32_t nAutoBmpsTimerValue;
1988 eHddDot11Mode dot11Mode;
1989 v_U32_t nChannelBondingMode24GHz;
1990 v_U32_t nChannelBondingMode5GHz;
1991 v_U32_t MaxRxAmpduFactor;
1992 v_U32_t nBAAgingTimerInterval;
1993 v_U16_t TxRate;
1994 v_U32_t AdaptiveThresholdAlgo;
1995 v_U32_t ShortGI20MhzEnable;
1996 v_U32_t BlockAckAutoSetup;
1997 v_U32_t ScanResultAgeCount;
1998 v_U32_t nScanAgeTimeNCNPS;
1999 v_U32_t nScanAgeTimeNCPS;
2000 v_U32_t nScanAgeTimeCNPS;
2001 v_U32_t nScanAgeTimeCPS;
2002 v_U8_t nRssiCatGap;
Jeff Johnson295189b2012-06-20 16:38:30 -07002003 v_BOOL_t fIsShortPreamble;
2004 v_BOOL_t fIsAutoIbssBssid;
2005 v_MACADDR_t IbssBssid;
Shailender Karmuchia734f332013-04-19 14:02:48 -07002006 v_U32_t AdHocChannel5G;
2007 v_U32_t AdHocChannel24G;
Jeff Johnson295189b2012-06-20 16:38:30 -07002008 v_U8_t intfAddrMask;
2009 v_MACADDR_t intfMacAddr[VOS_MAX_CONCURRENCY_PERSONA];
2010
Jeff Johnson295189b2012-06-20 16:38:30 -07002011 v_BOOL_t apUapsdEnabled;
Madan Mohan Koyyalamudi3ff2a0b2012-10-15 14:33:46 -07002012 v_BOOL_t apRandomBssidEnabled;
Jeff Johnson295189b2012-06-20 16:38:30 -07002013 v_BOOL_t apProtEnabled;
2014 v_U16_t apProtection;
2015 v_BOOL_t apOBSSProtEnabled;
2016 v_U8_t MinFramesProcThres;
2017 v_U8_t apCntryCode[4];
2018 v_BOOL_t apDisableIntraBssFwd;
Amar Singhalfddc28c2013-09-05 13:03:40 -07002019 v_U8_t nEnableListenMode;
Jeff Johnson295189b2012-06-20 16:38:30 -07002020 v_U32_t nAPAutoShutOff;
2021 v_U8_t apStartChannelNum;
2022 v_U8_t apEndChannelNum;
2023 v_U8_t apOperatingBand;
2024 v_BOOL_t apAutoChannelSelection;
2025 v_U8_t enableLTECoex;
2026 v_U32_t apKeepAlivePeriod;
2027 v_U32_t goKeepAlivePeriod;
Sejal Chauhanbcde8bc2013-03-04 18:06:36 +05302028 v_U32_t apLinkMonitorPeriod;
Madan Mohan Koyyalamudi2558bc92013-08-24 16:54:31 +05302029 v_U32_t goLinkMonitorPeriod;
Jeff Johnson295189b2012-06-20 16:38:30 -07002030 v_U32_t nBeaconInterval;
2031 v_U8_t nTxPowerCap; //In dBm
2032 v_BOOL_t fIsLowGainOverride;
2033 v_U8_t disablePacketFilter;
2034#if defined WLAN_FEATURE_VOWIFI
2035 v_BOOL_t fRrmEnable;
2036 v_U8_t nInChanMeasMaxDuration;
2037 v_U8_t nOutChanMeasMaxDuration;
2038 v_U16_t nRrmRandnIntvl;
2039#endif
2040
2041#ifdef WLAN_FEATURE_VOWIFI_11R
2042 //Vowifi 11r params
Jeff Johnson295189b2012-06-20 16:38:30 -07002043 v_BOOL_t fFTResourceReqSupported;
2044#endif
2045
2046#ifdef WLAN_FEATURE_NEIGHBOR_ROAMING
2047 v_U16_t nNeighborScanPeriod;
Srinivas Girigowdade697412013-02-14 16:31:48 -08002048 v_U8_t nNeighborReassocRssiThreshold;
2049 v_U8_t nNeighborLookupRssiThreshold;
2050 v_U8_t neighborScanChanList[WNI_CFG_VALID_CHANNEL_LIST_LEN];
Jeff Johnson295189b2012-06-20 16:38:30 -07002051 v_U16_t nNeighborScanMinChanTime;
2052 v_U16_t nNeighborScanMaxChanTime;
2053 v_U16_t nMaxNeighborReqTries;
Srinivas Girigowdade697412013-02-14 16:31:48 -08002054 v_U16_t nNeighborResultsRefreshPeriod;
2055 v_U16_t nEmptyScanRefreshPeriod;
Jeff Johnson295189b2012-06-20 16:38:30 -07002056#endif
2057
Jeff Johnson295189b2012-06-20 16:38:30 -07002058 //Additional Handoff params
2059 v_BOOL_t nEnableIdleScan;
2060 v_U32_t nRoamingTime;
2061 v_U16_t nVccRssiTrigger;
2062 v_U32_t nVccUlMacLossThreshold;
2063
2064 v_U32_t nPassiveMinChnTime; //in units of milliseconds
2065 v_U32_t nPassiveMaxChnTime; //in units of milliseconds
2066 v_U32_t nActiveMinChnTime; //in units of milliseconds
2067 v_U32_t nActiveMaxChnTime; //in units of milliseconds
2068
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002069 v_U32_t nActiveMinChnTimeBtc; //in units of milliseconds
2070 v_U32_t nActiveMaxChnTimeBtc; //in units of milliseconds
Madan Mohan Koyyalamudi4ff9cd62012-10-30 17:48:57 -07002071#ifdef WLAN_AP_STA_CONCURRENCY
2072 v_U32_t nPassiveMinChnTimeConc; //in units of milliseconds
2073 v_U32_t nPassiveMaxChnTimeConc; //in units of milliseconds
2074 v_U32_t nActiveMinChnTimeConc; //in units of milliseconds
2075 v_U32_t nActiveMaxChnTimeConc; //in units of milliseconds
2076 v_U32_t nRestTimeConc; //in units of milliseconds
Sudhir Sattayappa Kohallieb97d502013-05-22 23:16:42 -07002077 v_U8_t nNumStaChanCombinedConc; //number of channels combined for
2078 //STA in each split scan operation
2079 v_U8_t nNumP2PChanCombinedConc; //number of channels combined for
2080 //P2P in each split scan operation
Madan Mohan Koyyalamudi4ff9cd62012-10-30 17:48:57 -07002081#endif
2082
Jeff Johnson295189b2012-06-20 16:38:30 -07002083 v_U8_t nMaxPsPoll;
2084
2085 v_U8_t nRssiFilterPeriod;
2086 v_BOOL_t fIgnoreDtim;
Yue Mac24062f2013-05-13 17:01:29 -07002087 v_U8_t fMaxLIModulatedDTIM;
Jeff Johnson295189b2012-06-20 16:38:30 -07002088
2089 v_U8_t nRxAnt;
2090 v_U8_t fEnableFwHeartBeatMonitoring;
2091 v_U8_t fEnableFwBeaconFiltering;
Gopichand Nakkala98a98af2012-12-31 14:38:47 -08002092 v_BOOL_t fEnableFwRssiMonitoring;
Jeff Johnson295189b2012-06-20 16:38:30 -07002093 v_U8_t nDataInactivityTimeout;
2094 v_U8_t nthBeaconFilter;
2095
2096 //WMM QoS Configuration
2097 hdd_wmm_user_mode_t WmmMode;
2098 v_BOOL_t b80211eIsEnabled;
2099 v_U8_t UapsdMask; // what ACs to setup U-APSD for at assoc
Jeff Johnson295189b2012-06-20 16:38:30 -07002100 v_U32_t InfraUapsdVoSrvIntv;
2101 v_U32_t InfraUapsdVoSuspIntv;
2102 v_U32_t InfraUapsdViSrvIntv;
2103 v_U32_t InfraUapsdViSuspIntv;
2104 v_U32_t InfraUapsdBeSrvIntv;
2105 v_U32_t InfraUapsdBeSuspIntv;
2106 v_U32_t InfraUapsdBkSrvIntv;
2107 v_U32_t InfraUapsdBkSuspIntv;
Jeff Johnson04dd8a82012-06-29 20:41:40 -07002108#ifdef FEATURE_WLAN_LFR
2109 v_BOOL_t isFastRoamIniFeatureEnabled;
2110#endif
Jeff Johnson295189b2012-06-20 16:38:30 -07002111#ifdef FEATURE_WLAN_CCX
2112 v_U32_t InfraInactivityInterval;
2113 v_BOOL_t isCcxIniFeatureEnabled;
2114#endif
Jeff Johnson04dd8a82012-06-29 20:41:40 -07002115#if defined (WLAN_FEATURE_VOWIFI_11R) || defined (FEATURE_WLAN_CCX) || defined(FEATURE_WLAN_LFR)
Jeff Johnson295189b2012-06-20 16:38:30 -07002116 v_BOOL_t isFastTransitionEnabled;
Jeff Johnson43971f52012-07-17 12:26:56 -07002117 v_U8_t RoamRssiDiff;
Madan Mohan Koyyalamudi62b55b02012-12-03 16:45:39 -08002118 v_U8_t nImmediateRoamRssiDiff;
Jeff Johnson295189b2012-06-20 16:38:30 -07002119#endif
Srinivas Girigowdabbd16eb2013-03-21 12:34:46 -07002120#ifdef FEATURE_WLAN_OKC
2121 v_BOOL_t isOkcIniFeatureEnabled;
2122#endif
Varun Reddy Yeturud0a3f252013-04-15 21:58:13 -07002123#ifdef WLAN_FEATURE_ROAM_SCAN_OFFLOAD
2124 v_BOOL_t isRoamOffloadScanEnabled;
2125#endif
Jeff Johnson295189b2012-06-20 16:38:30 -07002126 hdd_wmm_classification_t PktClassificationBasis; // DSCP or 802.1Q
2127 v_BOOL_t bImplicitQosEnabled;
2128
2129 /* default TSPEC parameters for AC_VO */
2130 sme_QosWmmDirType InfraDirAcVo;
2131 v_U16_t InfraNomMsduSizeAcVo;
2132 v_U32_t InfraMeanDataRateAcVo;
2133 v_U32_t InfraMinPhyRateAcVo;
2134 v_U16_t InfraSbaAcVo;
2135
2136 /* default TSPEC parameters for AC_VI */
2137 sme_QosWmmDirType InfraDirAcVi;
2138 v_U16_t InfraNomMsduSizeAcVi;
2139 v_U32_t InfraMeanDataRateAcVi;
2140 v_U32_t InfraMinPhyRateAcVi;
2141 v_U16_t InfraSbaAcVi;
2142
2143 /* default TSPEC parameters for AC_BE */
2144 sme_QosWmmDirType InfraDirAcBe;
2145 v_U16_t InfraNomMsduSizeAcBe;
2146 v_U32_t InfraMeanDataRateAcBe;
2147 v_U32_t InfraMinPhyRateAcBe;
2148 v_U16_t InfraSbaAcBe;
2149
2150 /* default TSPEC parameters for AC_BK */
2151 sme_QosWmmDirType InfraDirAcBk;
2152 v_U16_t InfraNomMsduSizeAcBk;
2153 v_U32_t InfraMeanDataRateAcBk;
2154 v_U32_t InfraMinPhyRateAcBk;
2155 v_U16_t InfraSbaAcBk;
2156
2157 /* TL related configuration */
2158 v_U8_t WfqBkWeight;
2159 v_U8_t WfqBeWeight;
2160 v_U8_t WfqViWeight;
2161 v_U8_t WfqVoWeight;
2162 v_U32_t DelayedTriggerFrmInt;
2163
2164 /* Wowl pattern */
2165 char wowlPattern[1024];
Jeff Johnson295189b2012-06-20 16:38:30 -07002166
2167 /* Control for Replay counetr. value 1 means
2168 single replay counter for all TID*/
2169 v_BOOL_t bSingleTidRc;
2170 v_U8_t mcastBcastFilterSetting;
2171 v_BOOL_t fhostArpOffload;
Gopichand Nakkala746a9452013-06-11 12:45:54 +05302172 v_BOOL_t fhostNSOffload;
Jeff Johnson295189b2012-06-20 16:38:30 -07002173 v_BOOL_t burstSizeDefinition;
2174 v_U8_t tsInfoAckPolicy;
2175
2176 /* RF Settling Time Clock */
2177 v_U32_t rfSettlingTimeUs;
2178 v_U8_t enableBtAmp;
2179#ifdef WLAN_BTAMP_FEATURE
2180 v_U8_t preferredChannel;
2181#endif //WLAN_BTAMP_FEATURE
2182
2183 v_U8_t dynamicPsPollValue;
2184 v_BOOL_t AddTSWhenACMIsOff;
2185 v_BOOL_t fValidateScanList;
2186
2187 v_U32_t infraStaKeepAlivePeriod;
2188 v_U8_t nNullDataApRespTimeout;
2189 v_U8_t nBandCapability;
2190
2191 v_U32_t apDataAvailPollPeriodInMs;
2192 v_BOOL_t fEnableBeaconEarlyTermination;
2193 v_BOOL_t teleBcnWakeupEn;
2194
Varun Reddy Yeturu587e6802013-01-24 12:21:41 -08002195/* VOS Trace Control*/
2196 v_U16_t vosTraceEnableBAP;
2197 v_U16_t vosTraceEnableTL;
2198 v_U16_t vosTraceEnableWDI;
2199 v_U16_t vosTraceEnableHDD;
2200 v_U16_t vosTraceEnableSME;
2201 v_U16_t vosTraceEnablePE;
Katya Nigam70d68332013-09-16 16:49:45 +05302202 v_U16_t vosTraceEnablePMC;
Varun Reddy Yeturu587e6802013-01-24 12:21:41 -08002203 v_U16_t vosTraceEnableWDA;
2204 v_U16_t vosTraceEnableSYS;
2205 v_U16_t vosTraceEnableVOSS;
Varun Reddy Yeturu587e6802013-01-24 12:21:41 -08002206 v_U16_t vosTraceEnableSAP;
2207 v_U16_t vosTraceEnableHDDSAP;
Varun Reddy Yeturu587e6802013-01-24 12:21:41 -08002208
Jeff Johnson295189b2012-06-20 16:38:30 -07002209 /* WDI Trace Control */
2210 v_U32_t wdiTraceEnableDAL;
2211 v_U32_t wdiTraceEnableCTL;
2212 v_U32_t wdiTraceEnableDAT;
2213 v_U32_t wdiTraceEnablePAL;
Jeff Johnson295189b2012-06-20 16:38:30 -07002214 v_U16_t nTeleBcnTransListenInterval;
2215 v_U16_t nTeleBcnMaxListenInterval;
2216 v_U16_t nTeleBcnTransLiNumIdleBeacons;
2217 v_U16_t nTeleBcnMaxLiNumIdleBeacons;
2218 v_U8_t bcnEarlyTermWakeInterval;
2219 v_U32_t enableCloseLoop;
2220 v_U8_t enableBypass11d;
2221 v_U8_t enableDFSChnlScan;
2222 v_U8_t enableDynamicDTIM;
2223 v_U8_t enableAutomaticTxPowerControl;
2224 v_U8_t ShortGI40MhzEnable;
2225 eHddLinkSpeedReportType reportMaxLinkSpeed;
2226 v_S31_t linkSpeedRssiHigh;
Madan Mohan Koyyalamudid5026072012-11-30 14:56:21 -08002227#if defined (WLAN_FEATURE_VOWIFI_11R) || defined (FEATURE_WLAN_CCX) || defined(FEATURE_WLAN_LFR)
2228 v_BOOL_t nRoamPrefer5GHz;
Srinivas Girigowdabbd16eb2013-03-21 12:34:46 -07002229 v_BOOL_t nRoamIntraBand;
Varun Reddy Yeturu920df212013-05-22 08:07:23 -07002230 v_U8_t nProbes;
2231 v_U16_t nRoamScanHomeAwayTime;
Madan Mohan Koyyalamudid5026072012-11-30 14:56:21 -08002232#endif
Madan Mohan Koyyalamudi8df78d52012-11-02 12:30:06 -07002233 v_S31_t linkSpeedRssiMid;
Jeff Johnson295189b2012-06-20 16:38:30 -07002234 v_S31_t linkSpeedRssiLow;
2235 v_U8_t enableMCC;
Mohit Khanna7ed53f02012-09-11 17:52:10 -07002236 v_U8_t allowMCCGODiffBI;
Jeff Johnson295189b2012-06-20 16:38:30 -07002237 v_BOOL_t isP2pDeviceAddrAdministrated;
Jeff Johnson295189b2012-06-20 16:38:30 -07002238 v_U8_t thermalMitigationEnable;
Jeff Johnsone7245742012-09-05 17:12:55 -07002239#ifdef WLAN_FEATURE_11AC
2240 v_U8_t vhtChannelWidth;
2241 v_U8_t vhtRxMCS;
2242 v_U8_t vhtTxMCS;
Shailender Karmuchi08f87c22013-01-17 12:51:24 -08002243 v_BOOL_t enableTxBF;
Shailender Karmuchicc3fe442013-02-16 18:18:33 -08002244 v_U8_t txBFCsnValue;
Jeff Johnsone7245742012-09-05 17:12:55 -07002245#endif
Jeff Johnson295189b2012-06-20 16:38:30 -07002246 v_U8_t enableModulatedDTIM;
Jeff Johnsond13512a2012-07-17 11:42:19 -07002247 v_U32_t fEnableMCAddrList;
Jeff Johnsone7245742012-09-05 17:12:55 -07002248 v_BOOL_t enableFirstScan2GOnly;
2249 v_BOOL_t skipDfsChnlInP2pSearch;
2250 v_BOOL_t ignoreDynamicDtimInP2pMode;
Madan Mohan Koyyalamudid5f04ca2012-11-06 15:51:26 -08002251 v_U16_t configMccParam;
Madan Mohan Koyyalamudidd11eaf2012-11-02 16:04:21 -07002252 v_U32_t numBuffAdvert;
Pratik Bhalgat6bfd1422012-11-22 17:09:40 +05302253 v_BOOL_t enableRxSTBC;
Mohit Khanna698ba2a2012-12-04 15:08:18 -08002254#ifdef FEATURE_WLAN_TDLS
2255 v_BOOL_t fEnableTDLSSupport;
Hoonki Leebf870f32013-01-19 15:53:30 +05302256 v_BOOL_t fEnableTDLSImplicitTrigger;
2257 v_U32_t fTDLSTxStatsPeriod;
2258 v_U32_t fTDLSTxPacketThreshold;
2259 v_U32_t fTDLSDiscoveryPeriod;
2260 v_U32_t fTDLSMaxDiscoveryAttempt;
Chilam Ng01120412013-02-19 18:32:21 -08002261 v_U32_t fTDLSIdleTimeout;
2262 v_U32_t fTDLSIdlePacketThreshold;
2263 v_U32_t fTDLSRSSIHysteresis;
2264 v_S31_t fTDLSRSSITriggerThreshold;
2265 v_S31_t fTDLSRSSITeardownThreshold;
Gopichand Nakkala79ff85d2013-05-27 17:05:29 +05302266 v_U32_t fTDLSUapsdMask; // what ACs to setup U-APSD for TDLS
2267 v_U32_t fEnableTDLSBufferSta;
2268 v_U32_t fTDLSPuapsdInactivityTimer;
2269 v_U32_t fTDLSRxFrameThreshold;
Mohit Khanna698ba2a2012-12-04 15:08:18 -08002270#endif
Madan Mohan Koyyalamudi0d40e662012-12-07 14:24:14 -08002271 v_U32_t enableLpwrImgTransition;
Gopichand Nakkala976e3252013-01-03 15:45:56 -08002272#ifdef WLAN_SOFTAP_VSTA_FEATURE
2273 v_BOOL_t fEnableVSTASupport;
2274#endif
Yathish9f22e662012-12-10 14:21:35 -08002275#ifdef WLAN_ACTIVEMODE_OFFLOAD_FEATURE
2276 v_BOOL_t fEnableActiveModeOffload;
2277#endif
Sandeep Puligilla2b6dc632012-12-17 14:44:16 -08002278 v_U8_t scanAgingTimeout;
Gopichand Nakkalab2d2c312013-01-04 11:41:02 -08002279 v_BOOL_t enableTxLdpc;
Leela V Kiran Kumar Reddy Chiralab1f7d342013-02-11 00:27:02 -08002280 v_U8_t disableLDPCWithTxbfAP;
Madan Mohan Koyyalamudi01cba042013-01-10 21:56:05 -08002281 v_U8_t enableMCCAdaptiveScheduler;
Madan Mohan Koyyalamudi69b34182013-01-16 08:51:40 +05302282 v_BOOL_t isAndroidPsEn;
Madan Mohan Koyylamudi64267f72013-02-05 14:07:08 +05302283 v_BOOL_t sapAllowAllChannel;
Kiran Kumar Lokere1f39e952013-04-03 18:34:30 -07002284 v_U8_t retryLimitZero;
2285 v_U8_t retryLimitOne;
2286 v_U8_t retryLimitTwo;
Kiran Kumar Lokere458d7322013-05-29 14:29:43 -07002287 v_U8_t disableAggWithBtc;
Tushnim Bhattacharyya9cdf6082013-04-21 16:33:30 -07002288 char listOfNonDfsCountryCode[128];
Gopichand Nakkalae620d5a2013-04-26 05:45:57 -07002289 v_BOOL_t enableSSR;
Gopichand Nakkaladacbcb52013-04-18 16:41:54 +05302290 char listOfNon11acCountryCode[128];
Gopichand Nakkala42bc89e2013-05-27 12:49:09 +05302291 v_U32_t cfgMaxMediumTime;
Leo Chang64d68bc2013-06-04 15:40:52 -07002292 v_U8_t enableTrafficMonitor;
2293 v_U32_t trafficIdleTimeout;
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002294 v_BOOL_t enableVhtFor24GHzBand;
Gopichand Nakkala154bda22013-06-11 17:41:22 +05302295 v_U8_t fScanOffload;
Srinivas Girigowda830bbd02013-06-13 19:44:16 -07002296#ifdef WLAN_FEATURE_ROAM_SCAN_OFFLOAD
2297 /* Flag indicating whether legacy fast roam during concurrency is enabled in cfg.ini or not */
2298 v_BOOL_t bFastRoamInConIniFeatureEnabled;
2299#endif
Sudhir Sattayappa Kohallida1be202013-07-11 12:04:30 -07002300 v_BOOL_t fEnableAdaptRxDrain;
Sudhir Sattayappa Kohalli37620692013-08-05 14:02:26 -07002301 //TX and RX traffic threshold for split scan
2302 v_U8_t txRxThresholdForSplitScan;
2303 v_U8_t dynSplitscan; //Enable/Disable dynamic
2304 //splitscan
2305 //Traffic monitor timer for split scan
2306 v_U32_t trafficMntrTmrForSplitScan;
Yue Ma0fd23872013-08-01 15:56:47 -07002307 v_U8_t flexConnectPowerFactor;
Ravi Joshid2ca7c42013-07-23 08:37:49 -07002308 v_BOOL_t enableIbssHeartBeatOffload;
Madan Mohan Koyyalamudica454572013-08-07 19:57:03 +05302309 v_U32_t antennaDiversity;
Madan Mohan Koyyalamudid9383fd2013-08-13 09:27:30 +05302310 v_BOOL_t fEnableSNRMonitoring;
Madan Mohan Koyyalamudi1d16f462013-08-27 16:25:34 +05302311 /*PNO related parameters */
2312#if FEATURE_WLAN_SCAN_PNO
2313 v_U32_t configPNOScanTimerRepeatValue;
2314#endif
krunal soni5afa96c2013-09-06 22:19:02 -07002315 v_U8_t isAmsduSupportInAMPDU;
Jeff Johnson295189b2012-06-20 16:38:30 -07002316} hdd_config_t;
2317/*---------------------------------------------------------------------------
2318 Function declarations and documenation
2319 -------------------------------------------------------------------------*/
2320VOS_STATUS hdd_parse_config_ini(hdd_context_t *pHddCtx);
2321VOS_STATUS hdd_set_sme_config( hdd_context_t *pHddCtx );
2322v_BOOL_t hdd_update_config_dat ( hdd_context_t *pHddCtx );
2323VOS_STATUS hdd_cfg_get_config(hdd_context_t *pHddCtx, char *pBuf, int buflen);
2324eCsrPhyMode hdd_cfg_xlate_to_csr_phy_mode( eHddDot11Mode dot11Mode );
2325VOS_STATUS hdd_execute_config_command(hdd_context_t *pHddCtx, char *command);
Srinivas Girigowdabbd16eb2013-03-21 12:34:46 -07002326tANI_BOOLEAN hdd_is_okc_mode_enabled(hdd_context_t *pHddCtx);
Jeff Johnson295189b2012-06-20 16:38:30 -07002327
2328#define FIELD_OFFSET(__type, __field) ((unsigned int)(&((__type *)0)->__field))
2329#define VAR_OFFSET( _Struct, _Var ) ( (unsigned int) FIELD_OFFSET(_Struct, _Var ) )
2330#define VAR_SIZE( _Struct, _Var ) sizeof( ((_Struct *)0)->_Var )
2331
2332#define VAR_FLAGS_NONE ( 0 )
2333#define VAR_FLAGS_REQUIRED ( 1 << 0 ) // bit 0 is Required or Optional
2334#define VAR_FLAGS_OPTIONAL ( 0 << 0 )
2335
2336#define VAR_FLAGS_RANGE_CHECK ( 1 << 1 ) // bit 1 tells if range checking is required.
2337 // If less than MIN, assume MIN.
2338 // If greater than MAX, assume MAX.
2339
2340#define VAR_FLAGS_RANGE_CHECK_ASSUME_MINMAX ( VAR_FLAGS_RANGE_CHECK )
2341
2342#define VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT ( 1 << 2 ) // bit 2 is range checking that assumes the DEFAULT value
2343 // If less than MIN, assume DEFAULT,
2344 // If grateer than MAX, assume DEFAULT.
2345
2346#define VAR_FLAGS_DYNAMIC_CFG ( 1 << 3 ) // Bit 3 indicates that
2347 // the config item can be
2348 // modified dynamicially
2349 // on a running system
2350
2351typedef enum
2352{
2353 WLAN_PARAM_Integer,
2354 WLAN_PARAM_SignedInteger,
2355 WLAN_PARAM_HexInteger,
2356 WLAN_PARAM_String,
2357 WLAN_PARAM_MacAddr,
2358}WLAN_PARAMETER_TYPE;
2359
2360#define REG_VARIABLE( _Name, _Type, _Struct, _VarName, \
2361 _Flags, _Default, _Min, _Max ) \
2362{ \
2363 ( _Name ), \
2364 ( _Type ), \
2365 ( _Flags ), \
2366 VAR_OFFSET( _Struct, _VarName ), \
2367 VAR_SIZE( _Struct, _VarName ), \
2368 ( _Default ), \
2369 ( _Min ), \
2370 ( _Max ), \
2371 NULL, \
2372 0 \
2373}
2374
2375#define REG_DYNAMIC_VARIABLE( _Name, _Type, _Struct, _VarName, \
2376 _Flags, _Default, _Min, _Max, \
2377 _CBFunc, _CBParam ) \
2378{ \
2379 ( _Name ), \
2380 ( _Type ), \
2381 ( VAR_FLAGS_DYNAMIC_CFG | ( _Flags ) ), \
2382 VAR_OFFSET( _Struct, _VarName ), \
2383 VAR_SIZE( _Struct, _VarName ), \
2384 ( _Default ), \
2385 ( _Min ), \
2386 ( _Max ), \
2387 ( _CBFunc ), \
2388 ( _CBParam ) \
2389}
2390
2391#define REG_VARIABLE_STRING( _Name, _Type, _Struct, _VarName, \
2392 _Flags, _Default ) \
2393{ \
2394 ( _Name ), \
2395 ( _Type ), \
2396 ( _Flags ), \
2397 VAR_OFFSET( _Struct, _VarName ), \
2398 VAR_SIZE( _Struct, _VarName ), \
2399 (unsigned long)( _Default ), \
2400 0, \
2401 0, \
2402 NULL, \
2403 0 \
2404}
2405
2406typedef struct tREG_TABLE_ENTRY {
2407
2408 char* RegName; // variable name in the qcom_cfg.ini file
2409 WLAN_PARAMETER_TYPE RegType; // variable type in the hdd_config_t structure
2410 unsigned long Flags; // Specify optional parms and if RangeCheck is performed
2411 unsigned short VarOffset; // offset to field from the base address of the structure
2412 unsigned short VarSize; // size (in bytes) of the field
2413 unsigned long VarDefault; // default value to use
2414 unsigned long VarMin; // minimum value, for range checking
2415 unsigned long VarMax; // maximum value, for range checking
2416 // Dynamic modification notifier
2417 void (*pfnDynamicNotify)(hdd_context_t *pHddCtx, unsigned long NotifyId);
2418 unsigned long NotifyId; // Dynamic modification identifier
2419} REG_TABLE_ENTRY;
2420
2421static __inline unsigned long utilMin( unsigned long a, unsigned long b )
2422{
2423 return( ( a < b ) ? a : b );
2424}
2425
2426#endif