blob: dae25391d4be18918f4e97f5115ab7f0ab1786cc [file] [log] [blame]
Jeff Johnson295189b2012-06-20 16:38:30 -07001/*
Tushnim Bhattacharyya9889e792013-12-19 18:18:36 -08002 * Copyright (c) 2012-2014, The Linux Foundation. All rights reserved.
Gopichand Nakkala92f07d82013-01-08 21:16:34 -08003 *
4 * Previously licensed under the ISC license by Qualcomm Atheros, Inc.
5 *
6 *
7 * Permission to use, copy, modify, and/or distribute this software for
8 * any purpose with or without fee is hereby granted, provided that the
9 * above copyright notice and this permission notice appear in all
10 * copies.
11 *
12 * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL
13 * WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED
14 * WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE
15 * AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
16 * DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR
17 * PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
18 * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
19 * PERFORMANCE OF THIS SOFTWARE.
20 */
21/*
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
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -080042/**=========================================================================
Jeff Johnson295189b2012-06-20 16:38:30 -070043
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -080044 EDIT HISTORY FOR FILE
45
46
47 This section contains comments describing changes made to the module.
48 Notice that changes are listed in reverse chronological order.
49
50
51 $Header:$ $DateTime: $ $Author: $
52
53
54 when who what, where, why
Jeff Johnson295189b2012-06-20 16:38:30 -070055 -------- --- --------------------------------------------------------
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -080056 07/27/09 kanand Created module.
Jeff Johnson295189b2012-06-20 16:38:30 -070057
58 ==========================================================================*/
59
60/*--------------------------------------------------------------------------
61 Include Files
62 ------------------------------------------------------------------------*/
63
64
65#include <linux/firmware.h>
66#include <linux/string.h>
67#include <wlan_hdd_includes.h>
68#include <wlan_hdd_main.h>
69#include <wlan_hdd_assoc.h>
70#include <wlan_hdd_cfg.h>
71#include <linux/string.h>
72#include <vos_types.h>
73#include <csrApi.h>
74#include <pmcApi.h>
75#include <wlan_hdd_misc.h>
76
Madan Mohan Koyyalamudi62b55b02012-12-03 16:45:39 -080077#if defined (WLAN_FEATURE_VOWIFI_11R) || defined (FEATURE_WLAN_CCX) || defined(FEATURE_WLAN_LFR)
Madan Mohan Koyyalamudid5026072012-11-30 14:56:21 -080078static void cbNotifySetRoamPrefer5GHz(hdd_context_t *pHddCtx, unsigned long NotifyId)
79{
80 sme_UpdateRoamPrefer5GHz((tHalHandle)(pHddCtx->hHal), pHddCtx->cfg_ini->nRoamPrefer5GHz);
81}
Jeff Johnson295189b2012-06-20 16:38:30 -070082
Madan Mohan Koyyalamudi62b55b02012-12-03 16:45:39 -080083static void cbNotifySetImmediateRoamRssiDiff(hdd_context_t *pHddCtx, unsigned long NotifyId)
84{
Srinivas Girigowdade697412013-02-14 16:31:48 -080085 sme_UpdateImmediateRoamRssiDiff((tHalHandle)(pHddCtx->hHal),
Madan Mohan Koyyalamudi62b55b02012-12-03 16:45:39 -080086 pHddCtx->cfg_ini->nImmediateRoamRssiDiff);
87}
Gopichand Nakkala98a98af2012-12-31 14:38:47 -080088
Srinivas Girigowdade697412013-02-14 16:31:48 -080089static void cbNotifySetRoamRssiDiff(hdd_context_t *pHddCtx, unsigned long NotifyId)
90{
91 sme_UpdateRoamRssiDiff((tHalHandle)(pHddCtx->hHal),
92 pHddCtx->cfg_ini->RoamRssiDiff);
93}
94
Gopichand Nakkala98a98af2012-12-31 14:38:47 -080095static void cbNotifySetFastTransitionEnabled(hdd_context_t *pHddCtx, unsigned long NotifyId)
96{
97 sme_UpdateFastTransitionEnabled((tHalHandle)(pHddCtx->hHal), pHddCtx->cfg_ini->isFastTransitionEnabled);
98}
Srinivas Girigowdabbd16eb2013-03-21 12:34:46 -070099
100static void cbNotifySetRoamIntraBand(hdd_context_t *pHddCtx, unsigned long NotifyId)
101{
102 sme_setRoamIntraBand((tHalHandle)(pHddCtx->hHal), pHddCtx->cfg_ini->nRoamIntraBand);
103}
Srinivas Girigowda100eb322013-03-15 16:48:20 -0700104
Srinivas Girigowdaad34ca92013-10-22 10:54:29 -0700105static void cbNotifySetWESMode(hdd_context_t *pHddCtx, unsigned long NotifyId)
106{
107 // at the point this routine is called, the value in the cfg_ini table has already been updated
108 sme_UpdateWESMode((tHalHandle)(pHddCtx->hHal), pHddCtx->cfg_ini->isWESModeEnabled);
109}
110
Varun Reddy Yeturu920df212013-05-22 08:07:23 -0700111static void cbNotifySetRoamScanNProbes(hdd_context_t *pHddCtx, unsigned long NotifyId)
112{
113 sme_UpdateRoamScanNProbes((tHalHandle)(pHddCtx->hHal), pHddCtx->cfg_ini->nProbes);
114}
115
116static void cbNotifySetRoamScanHomeAwayTime(hdd_context_t *pHddCtx, unsigned long NotifyId)
117{
Srinivas Girigowda6cf0b822013-06-27 14:00:20 -0700118 sme_UpdateRoamScanHomeAwayTime((tHalHandle)(pHddCtx->hHal), pHddCtx->cfg_ini->nRoamScanHomeAwayTime, eANI_BOOLEAN_TRUE);
Varun Reddy Yeturu920df212013-05-22 08:07:23 -0700119}
Srinivas Girigowdabbd16eb2013-03-21 12:34:46 -0700120#endif
121
122#ifdef FEATURE_WLAN_OKC
123static void cbNotifySetOkcFeatureEnabled(hdd_context_t *pHddCtx, unsigned long NotifyId)
124{
125 // at the point this routine is called, the value in the cfg_ini table has already been updated
126}
Madan Mohan Koyyalamudi62b55b02012-12-03 16:45:39 -0800127#endif
128
Gopichand Nakkala98a98af2012-12-31 14:38:47 -0800129#ifdef FEATURE_WLAN_LFR
130static void NotifyIsFastRoamIniFeatureEnabled(hdd_context_t *pHddCtx, unsigned long NotifyId)
131{
132 // at the point this routine is called, the value in the cfg_ini table has already been updated
133 sme_UpdateIsFastRoamIniFeatureEnabled((tHalHandle)(pHddCtx->hHal), pHddCtx->cfg_ini->isFastRoamIniFeatureEnabled );
134}
Sameer Thalappil4ae66ec2013-11-05 14:17:35 -0800135
136static void NotifyIsMAWCIniFeatureEnabled(hdd_context_t *pHddCtx, unsigned long NotifyId)
137{
138 /* at the point this routine is called, the value in the cfg_ini table has already been updated */
139 sme_UpdateIsMAWCIniFeatureEnabled((tHalHandle)(pHddCtx->hHal), pHddCtx->cfg_ini->MAWCEnabled );
140}
Gopichand Nakkala98a98af2012-12-31 14:38:47 -0800141#endif
142
143#ifdef FEATURE_WLAN_CCX
144static void cbNotifySetCcxFeatureEnabled(hdd_context_t *pHddCtx, unsigned long NotifyId)
145{
146 // at the point this routine is called, the value in the cfg_ini table has already been updated
147 sme_UpdateIsCcxFeatureEnabled((tHalHandle)(pHddCtx->hHal), pHddCtx->cfg_ini->isCcxIniFeatureEnabled );
148}
149#endif
150
151static void cbNotifySetFwRssiMonitoring(hdd_context_t *pHddCtx, unsigned long NotifyId)
152{
153 // at the point this routine is called, the value in the cfg_ini table has already been updated
154 sme_UpdateConfigFwRssiMonitoring((tHalHandle)(pHddCtx->hHal), pHddCtx->cfg_ini->fEnableFwRssiMonitoring );
155}
156
Srinivas Girigowdade697412013-02-14 16:31:48 -0800157#ifdef WLAN_FEATURE_NEIGHBOR_ROAMING
158static void cbNotifySetNeighborLookupRssiThreshold(hdd_context_t *pHddCtx, unsigned long NotifyId)
159{
160 // at the point this routine is called, the value in the cfg_ini table has already been updated
161 sme_setNeighborLookupRssiThreshold((tHalHandle)(pHddCtx->hHal), pHddCtx->cfg_ini->nNeighborLookupRssiThreshold );
162}
163
Srinivas Girigowdabbd16eb2013-03-21 12:34:46 -0700164static void cbNotifySetNeighborScanPeriod(hdd_context_t *pHddCtx, unsigned long NotifyId)
165{
166 // at the point this routine is called, the value in the cfg_ini table has already been updated
167 sme_setNeighborScanPeriod((tHalHandle)(pHddCtx->hHal), pHddCtx->cfg_ini->nNeighborScanPeriod );
168}
169
Srinivas Girigowdade697412013-02-14 16:31:48 -0800170static void cbNotifySetNeighborResultsRefreshPeriod(hdd_context_t *pHddCtx, unsigned long NotifyId)
171{
172 // at the point this routine is called, the value in the cfg_ini table has already been updated
173 sme_setNeighborScanRefreshPeriod((tHalHandle)(pHddCtx->hHal), pHddCtx->cfg_ini->nNeighborResultsRefreshPeriod );
174}
175
176static void cbNotifySetEmptyScanRefreshPeriod(hdd_context_t *pHddCtx, unsigned long NotifyId)
177{
178 // at the point this routine is called, the value in the cfg_ini table has already been updated
179 sme_UpdateEmptyScanRefreshPeriod((tHalHandle)(pHddCtx->hHal), pHddCtx->cfg_ini->nEmptyScanRefreshPeriod);
180}
Srinivas Girigowdabbd16eb2013-03-21 12:34:46 -0700181
182static void cbNotifySetNeighborScanMinChanTime(hdd_context_t *pHddCtx, unsigned long NotifyId)
183{
184 // at the point this routine is called, the value in the cfg_ini table has already been updated
185 sme_setNeighborScanMinChanTime((tHalHandle)(pHddCtx->hHal), pHddCtx->cfg_ini->nNeighborScanMinChanTime);
186}
187
188static void cbNotifySetNeighborScanMaxChanTime(hdd_context_t *pHddCtx, unsigned long NotifyId)
189{
Srinivas Girigowdabbd16eb2013-03-21 12:34:46 -0700190 sme_setNeighborScanMaxChanTime((tHalHandle)(pHddCtx->hHal), pHddCtx->cfg_ini->nNeighborScanMaxChanTime);
191}
Srinivas Girigowdade697412013-02-14 16:31:48 -0800192#endif
193
Gopichand Nakkalae620d5a2013-04-26 05:45:57 -0700194static void cbNotifySetEnableSSR(hdd_context_t *pHddCtx, unsigned long NotifyId)
195{
196 sme_UpdateEnableSSR((tHalHandle)(pHddCtx->hHal), pHddCtx->cfg_ini->enableSSR);
197}
198
Varun Reddy Yeturud0a3f252013-04-15 21:58:13 -0700199#ifdef WLAN_FEATURE_ROAM_SCAN_OFFLOAD
200static void cbNotifyUpdateRoamScanOffloadEnabled(hdd_context_t *pHddCtx, unsigned long NotifyId)
201{
202 sme_UpdateRoamScanOffloadEnabled((tHalHandle)(pHddCtx->hHal), pHddCtx->cfg_ini->isRoamOffloadScanEnabled);
Srinivas Girigowda830bbd02013-06-13 19:44:16 -0700203 if (0 == pHddCtx->cfg_ini->isRoamOffloadScanEnabled)
204 {
205 pHddCtx->cfg_ini->bFastRoamInConIniFeatureEnabled = 0;
206 sme_UpdateEnableFastRoamInConcurrency((tHalHandle)(pHddCtx->hHal), pHddCtx->cfg_ini->bFastRoamInConIniFeatureEnabled );
207 }
Varun Reddy Yeturud0a3f252013-04-15 21:58:13 -0700208}
Srinivas Girigowda830bbd02013-06-13 19:44:16 -0700209
210static void cbNotifySetEnableFastRoamInConcurrency(hdd_context_t *pHddCtx, unsigned long NotifyId)
211{
212 sme_UpdateEnableFastRoamInConcurrency((tHalHandle)(pHddCtx->hHal), pHddCtx->cfg_ini->bFastRoamInConIniFeatureEnabled );
213}
214
Varun Reddy Yeturud0a3f252013-04-15 21:58:13 -0700215#endif
216
Jeff Johnson295189b2012-06-20 16:38:30 -0700217REG_TABLE_ENTRY g_registry_table[] =
218{
219 REG_VARIABLE( CFG_RTS_THRESHOLD_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800220 hdd_config_t, RTSThreshold,
221 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
222 CFG_RTS_THRESHOLD_DEFAULT,
223 CFG_RTS_THRESHOLD_MIN,
224 CFG_RTS_THRESHOLD_MAX ),
Jeff Johnson295189b2012-06-20 16:38:30 -0700225
226 REG_VARIABLE( CFG_FRAG_THRESHOLD_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800227 hdd_config_t, FragmentationThreshold,
228 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
229 CFG_FRAG_THRESHOLD_DEFAULT,
230 CFG_FRAG_THRESHOLD_MIN,
231 CFG_FRAG_THRESHOLD_MAX ),
Jeff Johnson295189b2012-06-20 16:38:30 -0700232
233 REG_VARIABLE( CFG_CALIBRATION_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800234 hdd_config_t, Calibration,
235 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
236 CFG_CALIBRATION_DEFAULT,
237 CFG_CALIBRATION_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700238 CFG_CALIBRATION_MAX ),
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800239
Jeff Johnson295189b2012-06-20 16:38:30 -0700240 REG_VARIABLE( CFG_CALIBRATION_PERIOD_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800241 hdd_config_t, CalibrationPeriod,
242 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
243 CFG_CALIBRATION_PERIOD_DEFAULT,
244 CFG_CALIBRATION_PERIOD_MIN,
245 CFG_CALIBRATION_PERIOD_MAX ),
Jeff Johnson295189b2012-06-20 16:38:30 -0700246
247 REG_VARIABLE( CFG_OPERATING_CHANNEL_NAME, WLAN_PARAM_Integer,
248 hdd_config_t, OperatingChannel,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800249 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
250 CFG_OPERATING_CHANNEL_DEFAULT,
251 CFG_OPERATING_CHANNEL_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700252 CFG_OPERATING_CHANNEL_MAX ),
253
254 REG_VARIABLE( CFG_SHORT_SLOT_TIME_ENABLED_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800255 hdd_config_t, ShortSlotTimeEnabled,
256 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK,
257 CFG_SHORT_SLOT_TIME_ENABLED_DEFAULT,
258 CFG_SHORT_SLOT_TIME_ENABLED_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700259 CFG_SHORT_SLOT_TIME_ENABLED_MAX ),
260
261 REG_VARIABLE( CFG_11D_SUPPORT_ENABLED_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800262 hdd_config_t, Is11dSupportEnabled,
263 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK,
264 CFG_11D_SUPPORT_ENABLED_DEFAULT,
265 CFG_11D_SUPPORT_ENABLED_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700266 CFG_11D_SUPPORT_ENABLED_MAX ),
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800267
Madan Mohan Koyyalamudi8db1c942013-01-10 15:24:29 -0800268 REG_VARIABLE( CFG_11H_SUPPORT_ENABLED_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800269 hdd_config_t, Is11hSupportEnabled,
270 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK,
271 CFG_11H_SUPPORT_ENABLED_DEFAULT,
272 CFG_11H_SUPPORT_ENABLED_MIN,
Madan Mohan Koyyalamudi8db1c942013-01-10 15:24:29 -0800273 CFG_11H_SUPPORT_ENABLED_MAX ),
Jeff Johnson295189b2012-06-20 16:38:30 -0700274
275 REG_VARIABLE( CFG_ENFORCE_11D_CHANNELS_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800276 hdd_config_t, fEnforce11dChannels,
277 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK,
278 CFG_ENFORCE_11D_CHANNELS_DEFAULT,
279 CFG_ENFORCE_11D_CHANNELS_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700280 CFG_ENFORCE_11D_CHANNELS_MAX ),
281
282 REG_VARIABLE( CFG_COUNTRY_CODE_PRIORITY_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800283 hdd_config_t, fSupplicantCountryCodeHasPriority,
284 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK,
285 CFG_COUNTRY_CODE_PRIORITY_DEFAULT,
286 CFG_COUNTRY_CODE_PRIORITY_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700287 CFG_COUNTRY_CODE_PRIORITY_MAX),
288
289 REG_VARIABLE( CFG_ENFORCE_COUNTRY_CODE_MATCH_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800290 hdd_config_t, fEnforceCountryCodeMatch,
291 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK,
292 CFG_ENFORCE_COUNTRY_CODE_MATCH_DEFAULT,
293 CFG_ENFORCE_COUNTRY_CODE_MATCH_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700294 CFG_ENFORCE_COUNTRY_CODE_MATCH_MAX ),
295
296 REG_VARIABLE( CFG_ENFORCE_DEFAULT_DOMAIN_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800297 hdd_config_t, fEnforceDefaultDomain,
298 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK,
299 CFG_ENFORCE_DEFAULT_DOMAIN_DEFAULT,
300 CFG_ENFORCE_DEFAULT_DOMAIN_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700301 CFG_ENFORCE_DEFAULT_DOMAIN_MAX ),
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800302
Jeff Johnson295189b2012-06-20 16:38:30 -0700303 REG_VARIABLE( CFG_GENERIC_ID1_NAME, WLAN_PARAM_Integer,
304 hdd_config_t, Cfg1Id,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800305 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
306 CFG_GENERIC_ID1_DEFAULT,
307 CFG_GENERIC_ID1_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700308 CFG_GENERIC_ID1_MAX ),
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800309
Jeff Johnson295189b2012-06-20 16:38:30 -0700310 REG_VARIABLE( CFG_GENERIC_ID2_NAME, WLAN_PARAM_Integer,
311 hdd_config_t, Cfg2Id,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800312 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
313 CFG_GENERIC_ID2_DEFAULT,
314 CFG_GENERIC_ID2_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700315 CFG_GENERIC_ID2_MAX ),
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800316
Jeff Johnson295189b2012-06-20 16:38:30 -0700317 REG_VARIABLE( CFG_GENERIC_ID3_NAME, WLAN_PARAM_Integer,
318 hdd_config_t, Cfg3Id,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800319 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
320 CFG_GENERIC_ID3_DEFAULT,
321 CFG_GENERIC_ID3_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700322 CFG_GENERIC_ID3_MAX ),
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800323
Jeff Johnson295189b2012-06-20 16:38:30 -0700324 REG_VARIABLE( CFG_GENERIC_ID4_NAME, WLAN_PARAM_Integer,
325 hdd_config_t, Cfg4Id,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800326 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
327 CFG_GENERIC_ID4_DEFAULT,
328 CFG_GENERIC_ID4_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700329 CFG_GENERIC_ID4_MAX ),
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800330
Jeff Johnson295189b2012-06-20 16:38:30 -0700331 REG_VARIABLE( CFG_GENERIC_ID5_NAME, WLAN_PARAM_Integer,
332 hdd_config_t, Cfg5Id,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800333 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
334 CFG_GENERIC_ID5_DEFAULT,
335 CFG_GENERIC_ID5_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700336 CFG_GENERIC_ID5_MAX ),
337
338 REG_VARIABLE( CFG_GENERIC_VALUE1_NAME, WLAN_PARAM_Integer,
339 hdd_config_t, Cfg1Value,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800340 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
341 CFG_GENERIC_VALUE1_DEFAULT,
342 CFG_GENERIC_VALUE1_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700343 CFG_GENERIC_VALUE1_MAX ),
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800344
Jeff Johnson295189b2012-06-20 16:38:30 -0700345 REG_VARIABLE( CFG_GENERIC_VALUE2_NAME, WLAN_PARAM_Integer,
346 hdd_config_t, Cfg2Value,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800347 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
348 CFG_GENERIC_VALUE2_DEFAULT,
349 CFG_GENERIC_VALUE2_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700350 CFG_GENERIC_VALUE2_MAX ),
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800351
Jeff Johnson295189b2012-06-20 16:38:30 -0700352 REG_VARIABLE( CFG_GENERIC_VALUE3_NAME, WLAN_PARAM_Integer,
353 hdd_config_t, Cfg3Value,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800354 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
355 CFG_GENERIC_VALUE3_DEFAULT,
356 CFG_GENERIC_VALUE3_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700357 CFG_GENERIC_VALUE3_MAX ),
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800358
Jeff Johnson295189b2012-06-20 16:38:30 -0700359 REG_VARIABLE( CFG_GENERIC_VALUE4_NAME, WLAN_PARAM_Integer,
360 hdd_config_t, Cfg4Value,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800361 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
362 CFG_GENERIC_VALUE4_DEFAULT,
363 CFG_GENERIC_VALUE4_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700364 CFG_GENERIC_VALUE4_MAX ),
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800365
Jeff Johnson295189b2012-06-20 16:38:30 -0700366 REG_VARIABLE( CFG_GENERIC_VALUE5_NAME, WLAN_PARAM_Integer,
367 hdd_config_t, Cfg5Value,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800368 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
369 CFG_GENERIC_VALUE5_DEFAULT,
370 CFG_GENERIC_VALUE5_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700371 CFG_GENERIC_VALUE5_MAX ),
372
373 REG_VARIABLE( CFG_HEARTBEAT_THRESH_24_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800374 hdd_config_t, HeartbeatThresh24,
375 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
376 CFG_HEARTBEAT_THRESH_24_DEFAULT,
377 CFG_HEARTBEAT_THRESH_24_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700378 CFG_HEARTBEAT_THRESH_24_MAX ),
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800379
Jeff Johnson295189b2012-06-20 16:38:30 -0700380 REG_VARIABLE_STRING( CFG_POWER_USAGE_NAME, WLAN_PARAM_String,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800381 hdd_config_t, PowerUsageControl,
Jeff Johnson295189b2012-06-20 16:38:30 -0700382 VAR_FLAGS_OPTIONAL,
383 (void *)CFG_POWER_USAGE_DEFAULT ),
384
385 REG_VARIABLE( CFG_ENABLE_SUSPEND_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800386 hdd_config_t, nEnableSuspend,
387 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
388 CFG_ENABLE_SUSPEND_DEFAULT,
389 CFG_ENABLE_SUSPEND_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700390 CFG_ENABLE_SUSPEND_MAX ),
391
392 REG_VARIABLE( CFG_ENABLE_ENABLE_DRIVER_STOP_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800393 hdd_config_t, nEnableDriverStop,
394 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
395 CFG_ENABLE_ENABLE_DRIVER_STOP_DEFAULT,
396 CFG_ENABLE_ENABLE_DRIVER_STOP_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700397 CFG_ENABLE_ENABLE_DRIVER_STOP_MAX ),
398
399 REG_VARIABLE( CFG_ENABLE_IMPS_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800400 hdd_config_t, fIsImpsEnabled,
401 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
402 CFG_ENABLE_IMPS_DEFAULT,
403 CFG_ENABLE_IMPS_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700404 CFG_ENABLE_IMPS_MAX ),
405
406 REG_VARIABLE( CFG_ENABLE_LOGP_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800407 hdd_config_t, fIsLogpEnabled,
408 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
409 CFG_ENABLE_LOGP_DEFAULT,
410 CFG_ENABLE_LOGP_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700411 CFG_ENABLE_LOGP_MAX ),
412
413 REG_VARIABLE( CFG_IMPS_MINIMUM_SLEEP_TIME_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800414 hdd_config_t, nImpsMinSleepTime,
415 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
416 CFG_IMPS_MINIMUM_SLEEP_TIME_DEFAULT,
417 CFG_IMPS_MINIMUM_SLEEP_TIME_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700418 CFG_IMPS_MINIMUM_SLEEP_TIME_MAX ),
419
420 REG_VARIABLE( CFG_IMPS_MAXIMUM_SLEEP_TIME_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800421 hdd_config_t, nImpsMaxSleepTime,
422 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
423 CFG_IMPS_MAXIMUM_SLEEP_TIME_DEFAULT,
424 CFG_IMPS_MAXIMUM_SLEEP_TIME_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700425 CFG_IMPS_MAXIMUM_SLEEP_TIME_MAX ),
426
427 REG_VARIABLE( CFG_IMPS_MODERATE_SLEEP_TIME_NAME, WLAN_PARAM_Integer,
428 hdd_config_t, nImpsModSleepTime,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800429 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
430 CFG_IMPS_MODERATE_SLEEP_TIME_DEFAULT,
431 CFG_IMPS_MODERATE_SLEEP_TIME_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700432 CFG_IMPS_MODERATE_SLEEP_TIME_MAX ),
433
434 REG_VARIABLE( CFG_ENABLE_BMPS_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800435 hdd_config_t, fIsBmpsEnabled,
436 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
437 CFG_ENABLE_BMPS_DEFAULT,
438 CFG_ENABLE_BMPS_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700439 CFG_ENABLE_BMPS_MAX ),
440
441 REG_VARIABLE( CFG_BMPS_MINIMUM_LI_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800442 hdd_config_t, nBmpsMinListenInterval,
443 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
444 CFG_BMPS_MINIMUM_LI_DEFAULT,
445 CFG_BMPS_MINIMUM_LI_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700446 CFG_BMPS_MINIMUM_LI_MAX ),
447
448 REG_VARIABLE( CFG_BMPS_MAXIMUM_LI_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800449 hdd_config_t, nBmpsMaxListenInterval,
450 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
451 CFG_BMPS_MAXIMUM_LI_DEFAULT,
452 CFG_BMPS_MAXIMUM_LI_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700453 CFG_BMPS_MAXIMUM_LI_MAX ),
454
455 REG_VARIABLE( CFG_BMPS_MODERATE_LI_NAME, WLAN_PARAM_Integer,
456 hdd_config_t, nBmpsModListenInterval,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800457 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
458 CFG_BMPS_MODERATE_LI_DEFAULT,
459 CFG_BMPS_MODERATE_LI_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700460 CFG_BMPS_MODERATE_LI_MAX ),
461
462 REG_VARIABLE( CFG_ENABLE_AUTO_BMPS_TIMER_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800463 hdd_config_t, fIsAutoBmpsTimerEnabled,
464 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
465 CFG_ENABLE_AUTO_BMPS_TIMER_DEFAULT,
466 CFG_ENABLE_AUTO_BMPS_TIMER_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700467 CFG_ENABLE_AUTO_BMPS_TIMER_MAX ),
468
469 REG_VARIABLE( CFG_AUTO_BMPS_TIMER_VALUE_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800470 hdd_config_t, nAutoBmpsTimerValue,
471 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
472 CFG_AUTO_BMPS_TIMER_VALUE_DEFAULT,
473 CFG_AUTO_BMPS_TIMER_VALUE_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700474 CFG_AUTO_BMPS_TIMER_VALUE_MAX ),
475
476 REG_VARIABLE( CFG_DOT11_MODE_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800477 hdd_config_t, dot11Mode,
478 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK,
479 CFG_DOT11_MODE_DEFAULT,
480 CFG_DOT11_MODE_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700481 CFG_DOT11_MODE_MAX ),
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800482
Jeff Johnson295189b2012-06-20 16:38:30 -0700483 REG_VARIABLE( CFG_CHANNEL_BONDING_MODE_24GHZ_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800484 hdd_config_t, nChannelBondingMode24GHz,
485 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK,
486 CFG_CHANNEL_BONDING_MODE_DEFAULT,
487 CFG_CHANNEL_BONDING_MODE_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700488 CFG_CHANNEL_BONDING_MODE_MAX),
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800489
Jeff Johnson295189b2012-06-20 16:38:30 -0700490 REG_VARIABLE( CFG_CHANNEL_BONDING_MODE_5GHZ_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800491 hdd_config_t, nChannelBondingMode5GHz,
492 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK,
493 CFG_CHANNEL_BONDING_MODE_DEFAULT,
494 CFG_CHANNEL_BONDING_MODE_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700495 CFG_CHANNEL_BONDING_MODE_MAX),
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800496
497 REG_VARIABLE( CFG_MAX_RX_AMPDU_FACTOR_NAME, WLAN_PARAM_Integer,
498 hdd_config_t, MaxRxAmpduFactor,
499 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK ,
500 CFG_MAX_RX_AMPDU_FACTOR_DEFAULT,
501 CFG_MAX_RX_AMPDU_FACTOR_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700502 CFG_MAX_RX_AMPDU_FACTOR_MAX),
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800503
Jeff Johnson295189b2012-06-20 16:38:30 -0700504 REG_VARIABLE( CFG_FIXED_RATE_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800505 hdd_config_t, TxRate,
506 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK,
507 CFG_FIXED_RATE_DEFAULT,
508 CFG_FIXED_RATE_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700509 CFG_FIXED_RATE_MAX ),
510
511 REG_VARIABLE( CFG_SHORT_GI_20MHZ_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800512 hdd_config_t, ShortGI20MhzEnable,
513 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
514 CFG_SHORT_GI_20MHZ_DEFAULT,
515 CFG_SHORT_GI_20MHZ_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700516 CFG_SHORT_GI_20MHZ_MAX ),
517
518 REG_VARIABLE( CFG_BLOCK_ACK_AUTO_SETUP_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800519 hdd_config_t, BlockAckAutoSetup,
520 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK,
521 CFG_BLOCK_ACK_AUTO_SETUP_DEFAULT,
522 CFG_BLOCK_ACK_AUTO_SETUP_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700523 CFG_BLOCK_ACK_AUTO_SETUP_MAX ),
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800524
Jeff Johnson295189b2012-06-20 16:38:30 -0700525 REG_VARIABLE( CFG_SCAN_RESULT_AGE_COUNT_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800526 hdd_config_t, ScanResultAgeCount,
527 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK,
528 CFG_SCAN_RESULT_AGE_COUNT_DEFAULT,
529 CFG_SCAN_RESULT_AGE_COUNT_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700530 CFG_SCAN_RESULT_AGE_COUNT_MAX ),
531
532 REG_VARIABLE( CFG_SCAN_RESULT_AGE_TIME_NCNPS_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800533 hdd_config_t, nScanAgeTimeNCNPS,
534 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK,
535 CFG_SCAN_RESULT_AGE_TIME_NCNPS_DEFAULT,
536 CFG_SCAN_RESULT_AGE_TIME_NCNPS_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700537 CFG_SCAN_RESULT_AGE_TIME_NCNPS_MAX ),
538
539 REG_VARIABLE( CFG_SCAN_RESULT_AGE_TIME_NCPS_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800540 hdd_config_t, nScanAgeTimeNCPS,
541 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK,
542 CFG_SCAN_RESULT_AGE_TIME_NCPS_DEFAULT,
543 CFG_SCAN_RESULT_AGE_TIME_NCPS_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700544 CFG_SCAN_RESULT_AGE_TIME_NCPS_MAX ),
545
546 REG_VARIABLE( CFG_SCAN_RESULT_AGE_TIME_CNPS_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800547 hdd_config_t, nScanAgeTimeCNPS,
548 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK,
549 CFG_SCAN_RESULT_AGE_TIME_CNPS_DEFAULT,
550 CFG_SCAN_RESULT_AGE_TIME_CNPS_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700551 CFG_SCAN_RESULT_AGE_TIME_CNPS_MAX ),
552
553 REG_VARIABLE( CFG_SCAN_RESULT_AGE_TIME_CPS_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800554 hdd_config_t, nScanAgeTimeCPS,
555 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK,
556 CFG_SCAN_RESULT_AGE_TIME_CPS_DEFAULT,
557 CFG_SCAN_RESULT_AGE_TIME_CPS_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700558 CFG_SCAN_RESULT_AGE_TIME_CPS_MAX ),
559
560 REG_VARIABLE( CFG_RSSI_CATEGORY_GAP_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800561 hdd_config_t, nRssiCatGap,
562 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
563 CFG_RSSI_CATEGORY_GAP_DEFAULT,
564 CFG_RSSI_CATEGORY_GAP_MIN,
565 CFG_RSSI_CATEGORY_GAP_MAX ),
Jeff Johnson295189b2012-06-20 16:38:30 -0700566
Jeff Johnson295189b2012-06-20 16:38:30 -0700567 REG_VARIABLE( CFG_SHORT_PREAMBLE_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800568 hdd_config_t, fIsShortPreamble,
569 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
570 CFG_SHORT_PREAMBLE_DEFAULT,
571 CFG_SHORT_PREAMBLE_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700572 CFG_SHORT_PREAMBLE_MAX ),
573
574 REG_VARIABLE( CFG_IBSS_AUTO_BSSID_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800575 hdd_config_t, fIsAutoIbssBssid,
576 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
577 CFG_IBSS_AUTO_BSSID_DEFAULT,
578 CFG_IBSS_AUTO_BSSID_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700579 CFG_IBSS_AUTO_BSSID_MAX ),
580
581 REG_VARIABLE_STRING( CFG_IBSS_BSSID_NAME, WLAN_PARAM_MacAddr,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800582 hdd_config_t, IbssBssid,
Jeff Johnson295189b2012-06-20 16:38:30 -0700583 VAR_FLAGS_OPTIONAL,
584 (void *)CFG_IBSS_BSSID_DEFAULT ),
585
586 REG_VARIABLE_STRING( CFG_INTF0_MAC_ADDR_NAME, WLAN_PARAM_MacAddr,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800587 hdd_config_t, intfMacAddr[0],
Jeff Johnson295189b2012-06-20 16:38:30 -0700588 VAR_FLAGS_OPTIONAL,
589 (void *)CFG_INTF0_MAC_ADDR_DEFAULT ),
590
591 REG_VARIABLE_STRING( CFG_INTF1_MAC_ADDR_NAME, WLAN_PARAM_MacAddr,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800592 hdd_config_t, intfMacAddr[1],
Jeff Johnson295189b2012-06-20 16:38:30 -0700593 VAR_FLAGS_OPTIONAL,
594 (void *)CFG_INTF1_MAC_ADDR_DEFAULT ),
595
596 REG_VARIABLE_STRING( CFG_INTF2_MAC_ADDR_NAME, WLAN_PARAM_MacAddr,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800597 hdd_config_t, intfMacAddr[2],
Jeff Johnson295189b2012-06-20 16:38:30 -0700598 VAR_FLAGS_OPTIONAL,
599 (void *)CFG_INTF2_MAC_ADDR_DEFAULT ),
600
601 REG_VARIABLE_STRING( CFG_INTF3_MAC_ADDR_NAME, WLAN_PARAM_MacAddr,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800602 hdd_config_t, intfMacAddr[3],
Jeff Johnson295189b2012-06-20 16:38:30 -0700603 VAR_FLAGS_OPTIONAL,
604 (void *)CFG_INTF3_MAC_ADDR_DEFAULT ),
605
Jeff Johnson295189b2012-06-20 16:38:30 -0700606 REG_VARIABLE( CFG_AP_QOS_UAPSD_MODE_NAME , WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800607 hdd_config_t, apUapsdEnabled,
608 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
609 CFG_AP_QOS_UAPSD_MODE_DEFAULT,
610 CFG_AP_QOS_UAPSD_MODE_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700611 CFG_AP_QOS_UAPSD_MODE_MAX ),
612
613 REG_VARIABLE_STRING( CFG_AP_COUNTRY_CODE, WLAN_PARAM_String,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800614 hdd_config_t, apCntryCode,
Jeff Johnson295189b2012-06-20 16:38:30 -0700615 VAR_FLAGS_OPTIONAL,
616 (void *)CFG_AP_COUNTRY_CODE_DEFAULT ),
617
Madan Mohan Koyyalamudi3ff2a0b2012-10-15 14:33:46 -0700618 REG_VARIABLE( CFG_AP_ENABLE_RANDOM_BSSID_NAME, WLAN_PARAM_Integer,
619 hdd_config_t, apRandomBssidEnabled,
620 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
621 CFG_AP_ENABLE_RANDOM_BSSID_DEFAULT,
622 CFG_AP_ENABLE_RANDOM_BSSID_MIN,
623 CFG_AP_ENABLE_RANDOM_BSSID_MAX ),
624
Jeff Johnson295189b2012-06-20 16:38:30 -0700625 REG_VARIABLE( CFG_AP_ENABLE_PROTECTION_MODE_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800626 hdd_config_t, apProtEnabled,
Jeff Johnson295189b2012-06-20 16:38:30 -0700627 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
628 CFG_AP_ENABLE_PROTECTION_MODE_DEFAULT,
629 CFG_AP_ENABLE_PROTECTION_MODE_MIN,
630 CFG_AP_ENABLE_PROTECTION_MODE_MAX ),
631
632 REG_VARIABLE( CFG_AP_PROTECTION_MODE_NAME, WLAN_PARAM_HexInteger,
633 hdd_config_t, apProtection,
634 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
635 CFG_AP_PROTECTION_MODE_DEFAULT,
636 CFG_AP_PROTECTION_MODE_MIN,
637 CFG_AP_PROTECTION_MODE_MAX ),
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800638
Jeff Johnson295189b2012-06-20 16:38:30 -0700639 REG_VARIABLE( CFG_AP_OBSS_PROTECTION_MODE_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800640 hdd_config_t, apOBSSProtEnabled,
Jeff Johnson295189b2012-06-20 16:38:30 -0700641 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
642 CFG_AP_OBSS_PROTECTION_MODE_DEFAULT,
643 CFG_AP_OBSS_PROTECTION_MODE_MIN,
644 CFG_AP_OBSS_PROTECTION_MODE_MAX ),
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800645
Jeff Johnson295189b2012-06-20 16:38:30 -0700646 REG_VARIABLE( CFG_AP_STA_SECURITY_SEPERATION_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800647 hdd_config_t, apDisableIntraBssFwd,
Jeff Johnson295189b2012-06-20 16:38:30 -0700648 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
649 CFG_AP_STA_SECURITY_SEPERATION_DEFAULT,
650 CFG_AP_STA_SECURITY_SEPERATION_MIN,
651 CFG_AP_STA_SECURITY_SEPERATION_MAX ),
652
653 REG_VARIABLE( CFG_FRAMES_PROCESSING_TH_MODE_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800654 hdd_config_t, MinFramesProcThres,
Jeff Johnson295189b2012-06-20 16:38:30 -0700655 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
656 CFG_FRAMES_PROCESSING_TH_DEFAULT,
657 CFG_FRAMES_PROCESSING_TH_MIN,
658 CFG_FRAMES_PROCESSING_TH_MAX ),
659
660 REG_VARIABLE(CFG_SAP_CHANNEL_SELECT_START_CHANNEL , WLAN_PARAM_Integer,
661 hdd_config_t, apStartChannelNum,
662 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
663 CFG_SAP_CHANNEL_SELECT_START_CHANNEL_DEFAULT,
664 CFG_SAP_CHANNEL_SELECT_START_CHANNEL_MIN,
665 CFG_SAP_CHANNEL_SELECT_START_CHANNEL_MAX ),
666
667 REG_VARIABLE(CFG_SAP_CHANNEL_SELECT_END_CHANNEL , WLAN_PARAM_Integer,
668 hdd_config_t, apEndChannelNum,
669 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
670 CFG_SAP_CHANNEL_SELECT_END_CHANNEL_DEFAULT,
671 CFG_SAP_CHANNEL_SELECT_END_CHANNEL_MIN,
672 CFG_SAP_CHANNEL_SELECT_END_CHANNEL_MAX ),
673
674 REG_VARIABLE(CFG_SAP_CHANNEL_SELECT_OPERATING_BAND , WLAN_PARAM_Integer,
675 hdd_config_t, apOperatingBand,
676 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
677 CFG_SAP_CHANNEL_SELECT_OPERATING_BAND_DEFAULT,
678 CFG_SAP_CHANNEL_SELECT_OPERATING_BAND_MIN,
679 CFG_SAP_CHANNEL_SELECT_OPERATING_BAND_MAX ),
680
681 REG_VARIABLE(CFG_SAP_AUTO_CHANNEL_SELECTION_NAME , WLAN_PARAM_Integer,
682 hdd_config_t, apAutoChannelSelection,
683 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
684 CFG_SAP_AUTO_CHANNEL_SELECTION_DEFAULT,
685 CFG_SAP_AUTO_CHANNEL_SELECTION_MIN,
686 CFG_SAP_AUTO_CHANNEL_SELECTION_MAX ),
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800687
Jeff Johnson295189b2012-06-20 16:38:30 -0700688 REG_VARIABLE(CFG_ENABLE_LTE_COEX , WLAN_PARAM_Integer,
689 hdd_config_t, enableLTECoex,
690 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
691 CFG_ENABLE_LTE_COEX_DEFAULT,
692 CFG_ENABLE_LTE_COEX_MIN,
693 CFG_ENABLE_LTE_COEX_MAX ),
694
695 REG_VARIABLE( CFG_AP_KEEP_ALIVE_PERIOD_NAME, WLAN_PARAM_Integer,
696 hdd_config_t, apKeepAlivePeriod,
697 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
698 CFG_AP_KEEP_ALIVE_PERIOD_DEFAULT,
699 CFG_AP_KEEP_ALIVE_PERIOD_MIN,
700 CFG_AP_KEEP_ALIVE_PERIOD_MAX),
701
702 REG_VARIABLE( CFG_GO_KEEP_ALIVE_PERIOD_NAME, WLAN_PARAM_Integer,
703 hdd_config_t, goKeepAlivePeriod,
704 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
705 CFG_GO_KEEP_ALIVE_PERIOD_DEFAULT,
706 CFG_GO_KEEP_ALIVE_PERIOD_MIN,
707 CFG_GO_KEEP_ALIVE_PERIOD_MAX),
708
Sejal Chauhanbcde8bc2013-03-04 18:06:36 +0530709 REG_VARIABLE( CFG_AP_LINK_MONITOR_PERIOD_NAME, WLAN_PARAM_Integer,
710 hdd_config_t, apLinkMonitorPeriod,
711 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
712 CFG_AP_LINK_MONITOR_PERIOD_DEFAULT,
713 CFG_AP_LINK_MONITOR_PERIOD_MIN,
714 CFG_AP_LINK_MONITOR_PERIOD_MAX),
715
Madan Mohan Koyyalamudi2558bc92013-08-24 16:54:31 +0530716 REG_VARIABLE( CFG_GO_LINK_MONITOR_PERIOD_NAME, WLAN_PARAM_Integer,
717 hdd_config_t, goLinkMonitorPeriod,
718 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
719 CFG_GO_LINK_MONITOR_PERIOD_DEFAULT,
720 CFG_GO_LINK_MONITOR_PERIOD_MIN,
721 CFG_GO_LINK_MONITOR_PERIOD_MAX),
722
Jeff Johnson295189b2012-06-20 16:38:30 -0700723 REG_VARIABLE(CFG_DISABLE_PACKET_FILTER , WLAN_PARAM_Integer,
724 hdd_config_t, disablePacketFilter,
725 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
726 CFG_DISABLE_PACKET_FILTER_DEFAULT,
727 CFG_DISABLE_PACKET_FILTER_MIN,
728 CFG_DISABLE_PACKET_FILTER_MAX ),
729
730 REG_VARIABLE( CFG_BEACON_INTERVAL_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800731 hdd_config_t, nBeaconInterval,
732 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK,
733 CFG_BEACON_INTERVAL_DEFAULT,
734 CFG_BEACON_INTERVAL_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700735 CFG_BEACON_INTERVAL_MAX ),
736
Jeff Johnson295189b2012-06-20 16:38:30 -0700737 REG_VARIABLE( CFG_ENABLE_IDLE_SCAN_NAME , WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800738 hdd_config_t, nEnableIdleScan,
739 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
740 CFG_ENABLE_IDLE_SCAN_DEFAULT,
741 CFG_ENABLE_IDLE_SCAN_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700742 CFG_ENABLE_IDLE_SCAN_MAX ),
743
744 REG_VARIABLE( CFG_ROAMING_TIME_NAME , WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800745 hdd_config_t, nRoamingTime,
746 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
747 CFG_ROAMING_TIME_DEFAULT,
748 CFG_ROAMING_TIME_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700749 CFG_ROAMING_TIME_MAX ),
750
751 REG_VARIABLE( CFG_VCC_RSSI_TRIGGER_NAME , WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800752 hdd_config_t, nVccRssiTrigger,
753 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
754 CFG_VCC_RSSI_TRIGGER_DEFAULT,
755 CFG_VCC_RSSI_TRIGGER_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700756 CFG_VCC_RSSI_TRIGGER_MAX ),
757
758 REG_VARIABLE( CFG_VCC_UL_MAC_LOSS_THRESH_NAME , WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800759 hdd_config_t, nVccUlMacLossThreshold,
760 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
761 CFG_VCC_UL_MAC_LOSS_THRESH_DEFAULT,
762 CFG_VCC_UL_MAC_LOSS_THRESH_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700763 CFG_VCC_UL_MAC_LOSS_THRESH_MAX ),
764
765 REG_VARIABLE( CFG_PASSIVE_MAX_CHANNEL_TIME_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800766 hdd_config_t, nPassiveMaxChnTime,
767 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
768 CFG_PASSIVE_MAX_CHANNEL_TIME_DEFAULT,
769 CFG_PASSIVE_MAX_CHANNEL_TIME_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700770 CFG_PASSIVE_MAX_CHANNEL_TIME_MAX ),
771
772 REG_VARIABLE( CFG_PASSIVE_MIN_CHANNEL_TIME_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800773 hdd_config_t, nPassiveMinChnTime,
774 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
775 CFG_PASSIVE_MIN_CHANNEL_TIME_DEFAULT,
776 CFG_PASSIVE_MIN_CHANNEL_TIME_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700777 CFG_PASSIVE_MIN_CHANNEL_TIME_MAX ),
778
779 REG_VARIABLE( CFG_ACTIVE_MAX_CHANNEL_TIME_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800780 hdd_config_t, nActiveMaxChnTime,
781 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
782 CFG_ACTIVE_MAX_CHANNEL_TIME_DEFAULT,
783 CFG_ACTIVE_MAX_CHANNEL_TIME_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700784 CFG_ACTIVE_MAX_CHANNEL_TIME_MAX ),
785
786 REG_VARIABLE( CFG_ACTIVE_MIN_CHANNEL_TIME_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800787 hdd_config_t, nActiveMinChnTime,
788 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
789 CFG_ACTIVE_MIN_CHANNEL_TIME_DEFAULT,
790 CFG_ACTIVE_MIN_CHANNEL_TIME_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700791 CFG_ACTIVE_MIN_CHANNEL_TIME_MAX ),
Madan Mohan Koyyalamudi4ff9cd62012-10-30 17:48:57 -0700792
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800793 REG_VARIABLE( CFG_ACTIVE_MAX_CHANNEL_TIME_BTC_NAME, WLAN_PARAM_Integer,
794 hdd_config_t, nActiveMaxChnTimeBtc,
795 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
796 CFG_ACTIVE_MAX_CHANNEL_TIME_BTC_DEFAULT,
797 CFG_ACTIVE_MAX_CHANNEL_TIME_BTC_MIN,
798 CFG_ACTIVE_MAX_CHANNEL_TIME_BTC_MAX ),
799
800 REG_VARIABLE( CFG_ACTIVE_MIN_CHANNEL_TIME_BTC_NAME, WLAN_PARAM_Integer,
801 hdd_config_t, nActiveMinChnTimeBtc,
802 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
803 CFG_ACTIVE_MIN_CHANNEL_TIME_BTC_DEFAULT,
804 CFG_ACTIVE_MIN_CHANNEL_TIME_BTC_MIN,
805 CFG_ACTIVE_MIN_CHANNEL_TIME_BTC_MAX ),
806
Kiran Kumar Lokere1f39e952013-04-03 18:34:30 -0700807 REG_VARIABLE( CFG_RETRY_LIMIT_ZERO_NAME, WLAN_PARAM_Integer,
808 hdd_config_t, retryLimitZero,
809 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
810 CFG_RETRY_LIMIT_ZERO_DEFAULT,
811 CFG_RETRY_LIMIT_ZERO_MIN,
812 CFG_RETRY_LIMIT_ZERO_MAX ),
813
814 REG_VARIABLE( CFG_RETRY_LIMIT_ONE_NAME, WLAN_PARAM_Integer,
815 hdd_config_t, retryLimitOne,
816 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
817 CFG_RETRY_LIMIT_ONE_DEFAULT,
818 CFG_RETRY_LIMIT_ONE_MIN,
819 CFG_RETRY_LIMIT_ONE_MAX ),
820
821 REG_VARIABLE( CFG_RETRY_LIMIT_TWO_NAME, WLAN_PARAM_Integer,
822 hdd_config_t, retryLimitTwo,
823 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
824 CFG_RETRY_LIMIT_TWO_DEFAULT,
825 CFG_RETRY_LIMIT_TWO_MIN,
826 CFG_RETRY_LIMIT_TWO_MAX ),
827
Kiran Kumar Lokere458d7322013-05-29 14:29:43 -0700828 REG_VARIABLE( CFG_DISABLE_AGG_WITH_BTC_NAME, WLAN_PARAM_Integer,
829 hdd_config_t, disableAggWithBtc,
830 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
831 CFG_DISABLE_AGG_WITH_BTC_DEFAULT,
832 CFG_DISABLE_AGG_WITH_BTC_MIN,
833 CFG_DISABLE_AGG_WITH_BTC_MAX ),
834
Madan Mohan Koyyalamudi4ff9cd62012-10-30 17:48:57 -0700835#ifdef WLAN_AP_STA_CONCURRENCY
836 REG_VARIABLE( CFG_PASSIVE_MAX_CHANNEL_TIME_CONC_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800837 hdd_config_t, nPassiveMaxChnTimeConc,
838 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
839 CFG_PASSIVE_MAX_CHANNEL_TIME_CONC_DEFAULT,
840 CFG_PASSIVE_MAX_CHANNEL_TIME_CONC_MIN,
Madan Mohan Koyyalamudi4ff9cd62012-10-30 17:48:57 -0700841 CFG_PASSIVE_MAX_CHANNEL_TIME_CONC_MAX ),
842
843 REG_VARIABLE( CFG_PASSIVE_MIN_CHANNEL_TIME_CONC_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800844 hdd_config_t, nPassiveMinChnTimeConc,
845 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
846 CFG_PASSIVE_MIN_CHANNEL_TIME_CONC_DEFAULT,
847 CFG_PASSIVE_MIN_CHANNEL_TIME_CONC_MIN,
Madan Mohan Koyyalamudi4ff9cd62012-10-30 17:48:57 -0700848 CFG_PASSIVE_MIN_CHANNEL_TIME_CONC_MAX ),
849
850 REG_VARIABLE( CFG_ACTIVE_MAX_CHANNEL_TIME_CONC_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800851 hdd_config_t, nActiveMaxChnTimeConc,
852 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
853 CFG_ACTIVE_MAX_CHANNEL_TIME_CONC_DEFAULT,
854 CFG_ACTIVE_MAX_CHANNEL_TIME_CONC_MIN,
Madan Mohan Koyyalamudi4ff9cd62012-10-30 17:48:57 -0700855 CFG_ACTIVE_MAX_CHANNEL_TIME_CONC_MAX ),
856
857 REG_VARIABLE( CFG_ACTIVE_MIN_CHANNEL_TIME_CONC_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800858 hdd_config_t, nActiveMinChnTimeConc,
859 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
860 CFG_ACTIVE_MIN_CHANNEL_TIME_CONC_DEFAULT,
861 CFG_ACTIVE_MIN_CHANNEL_TIME_CONC_MIN,
Madan Mohan Koyyalamudi4ff9cd62012-10-30 17:48:57 -0700862 CFG_ACTIVE_MIN_CHANNEL_TIME_CONC_MAX ),
863
864 REG_VARIABLE( CFG_REST_TIME_CONC_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800865 hdd_config_t, nRestTimeConc,
866 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
867 CFG_REST_TIME_CONC_DEFAULT,
868 CFG_REST_TIME_CONC_MIN,
Madan Mohan Koyyalamudi4ff9cd62012-10-30 17:48:57 -0700869 CFG_REST_TIME_CONC_MAX ),
Vinay Malekal05fdc812012-12-17 13:04:30 -0800870
Sudhir Sattayappa Kohallieb97d502013-05-22 23:16:42 -0700871 REG_VARIABLE( CFG_NUM_STA_CHAN_COMBINED_CONC_NAME, WLAN_PARAM_Integer,
872 hdd_config_t, nNumStaChanCombinedConc,
Vinay Malekal05fdc812012-12-17 13:04:30 -0800873 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
Sudhir Sattayappa Kohallieb97d502013-05-22 23:16:42 -0700874 CFG_NUM_STA_CHAN_COMBINED_CONC_DEFAULT,
875 CFG_NUM_STA_CHAN_COMBINED_CONC_MIN,
876 CFG_NUM_STA_CHAN_COMBINED_CONC_MAX ),
877
878 REG_VARIABLE( CFG_NUM_P2P_CHAN_COMBINED_CONC_NAME, WLAN_PARAM_Integer,
879 hdd_config_t, nNumP2PChanCombinedConc,
880 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
881 CFG_NUM_P2P_CHAN_COMBINED_CONC_DEFAULT,
882 CFG_NUM_P2P_CHAN_COMBINED_CONC_MIN,
883 CFG_NUM_P2P_CHAN_COMBINED_CONC_MAX ),
Madan Mohan Koyyalamudi4ff9cd62012-10-30 17:48:57 -0700884#endif
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800885
Jeff Johnson295189b2012-06-20 16:38:30 -0700886 REG_VARIABLE( CFG_MAX_PS_POLL_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800887 hdd_config_t, nMaxPsPoll,
888 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
889 CFG_MAX_PS_POLL_DEFAULT,
890 CFG_MAX_PS_POLL_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700891 CFG_MAX_PS_POLL_MAX ),
892
893 REG_VARIABLE( CFG_MAX_TX_POWER_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800894 hdd_config_t, nTxPowerCap,
895 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
896 CFG_MAX_TX_POWER_DEFAULT,
897 CFG_MAX_TX_POWER_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700898 CFG_MAX_TX_POWER_MAX ),
899
900 REG_VARIABLE( CFG_LOW_GAIN_OVERRIDE_NAME, WLAN_PARAM_Integer,
901 hdd_config_t, fIsLowGainOverride,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800902 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
903 CFG_LOW_GAIN_OVERRIDE_DEFAULT,
904 CFG_LOW_GAIN_OVERRIDE_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700905 CFG_LOW_GAIN_OVERRIDE_MAX ),
906
907 REG_VARIABLE( CFG_RSSI_FILTER_PERIOD_NAME, WLAN_PARAM_Integer,
908 hdd_config_t, nRssiFilterPeriod,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800909 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
910 CFG_RSSI_FILTER_PERIOD_DEFAULT,
911 CFG_RSSI_FILTER_PERIOD_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700912 CFG_RSSI_FILTER_PERIOD_MAX ),
913
914 REG_VARIABLE( CFG_IGNORE_DTIM_NAME, WLAN_PARAM_Integer,
915 hdd_config_t, fIgnoreDtim,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800916 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
917 CFG_IGNORE_DTIM_DEFAULT,
918 CFG_IGNORE_DTIM_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700919 CFG_IGNORE_DTIM_MAX ),
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800920
Yue Mac24062f2013-05-13 17:01:29 -0700921 REG_VARIABLE( CFG_MAX_LI_MODULATED_DTIM_NAME, WLAN_PARAM_Integer,
922 hdd_config_t, fMaxLIModulatedDTIM,
923 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
924 CFG_MAX_LI_MODULATED_DTIM_DEFAULT,
925 CFG_MAX_LI_MODULATED_DTIM_MIN,
926 CFG_MAX_LI_MODULATED_DTIM_MAX ),
927
Jeff Johnson295189b2012-06-20 16:38:30 -0700928 REG_VARIABLE( CFG_RX_ANT_CONFIGURATION_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800929 hdd_config_t, nRxAnt,
930 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
931 CFG_RX_ANT_CONFIGURATION_NAME_DEFAULT,
932 CFG_RX_ANT_CONFIGURATION_NAME_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700933 CFG_RX_ANT_CONFIGURATION_NAME_MAX ),
934
935 REG_VARIABLE( CFG_FW_HEART_BEAT_MONITORING_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800936 hdd_config_t, fEnableFwHeartBeatMonitoring,
937 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
938 CFG_FW_HEART_BEAT_MONITORING_DEFAULT,
939 CFG_FW_HEART_BEAT_MONITORING_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700940 CFG_FW_HEART_BEAT_MONITORING_MAX ),
941
942 REG_VARIABLE( CFG_FW_BEACON_FILTERING_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800943 hdd_config_t, fEnableFwBeaconFiltering,
944 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
945 CFG_FW_BEACON_FILTERING_DEFAULT,
946 CFG_FW_BEACON_FILTERING_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700947 CFG_FW_BEACON_FILTERING_MAX ),
948
Gopichand Nakkala98a98af2012-12-31 14:38:47 -0800949 REG_DYNAMIC_VARIABLE( CFG_FW_RSSI_MONITORING_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800950 hdd_config_t, fEnableFwRssiMonitoring,
951 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
952 CFG_FW_RSSI_MONITORING_DEFAULT,
953 CFG_FW_RSSI_MONITORING_MIN,
Gopichand Nakkala98a98af2012-12-31 14:38:47 -0800954 CFG_FW_RSSI_MONITORING_MAX,
955 cbNotifySetFwRssiMonitoring, 0 ),
Jeff Johnson295189b2012-06-20 16:38:30 -0700956
957 REG_VARIABLE( CFG_DATA_INACTIVITY_TIMEOUT_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800958 hdd_config_t, nDataInactivityTimeout,
959 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
960 CFG_DATA_INACTIVITY_TIMEOUT_DEFAULT,
961 CFG_DATA_INACTIVITY_TIMEOUT_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700962 CFG_DATA_INACTIVITY_TIMEOUT_MAX ),
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800963
Jeff Johnson295189b2012-06-20 16:38:30 -0700964 REG_VARIABLE( CFG_NTH_BEACON_FILTER_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800965 hdd_config_t, nthBeaconFilter,
966 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
967 CFG_NTH_BEACON_FILTER_DEFAULT,
968 CFG_NTH_BEACON_FILTER_MIN,
969 CFG_NTH_BEACON_FILTER_MAX ),
Jeff Johnson295189b2012-06-20 16:38:30 -0700970
971 REG_VARIABLE( CFG_QOS_WMM_MODE_NAME , WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800972 hdd_config_t, WmmMode,
973 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
974 CFG_QOS_WMM_MODE_DEFAULT,
975 CFG_QOS_WMM_MODE_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700976 CFG_QOS_WMM_MODE_MAX ),
977
978 REG_VARIABLE( CFG_QOS_WMM_80211E_ENABLED_NAME , WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800979 hdd_config_t, b80211eIsEnabled,
980 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
981 CFG_QOS_WMM_80211E_ENABLED_DEFAULT,
982 CFG_QOS_WMM_80211E_ENABLED_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700983 CFG_QOS_WMM_80211E_ENABLED_MAX ),
984
985 REG_VARIABLE( CFG_QOS_WMM_UAPSD_MASK_NAME , WLAN_PARAM_HexInteger,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800986 hdd_config_t, UapsdMask,
987 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
988 CFG_QOS_WMM_UAPSD_MASK_DEFAULT,
989 CFG_QOS_WMM_UAPSD_MASK_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700990 CFG_QOS_WMM_UAPSD_MASK_MAX ),
991
Jeff Johnson295189b2012-06-20 16:38:30 -0700992 REG_VARIABLE( CFG_QOS_WMM_INFRA_UAPSD_VO_SRV_INTV_NAME , WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800993 hdd_config_t, InfraUapsdVoSrvIntv,
994 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
995 CFG_QOS_WMM_INFRA_UAPSD_VO_SRV_INTV_DEFAULT,
996 CFG_QOS_WMM_INFRA_UAPSD_VO_SRV_INTV_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700997 CFG_QOS_WMM_INFRA_UAPSD_VO_SRV_INTV_MAX ),
998
999 REG_VARIABLE( CFG_QOS_WMM_INFRA_UAPSD_VO_SUS_INTV_NAME , WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001000 hdd_config_t, InfraUapsdVoSuspIntv,
1001 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1002 CFG_QOS_WMM_INFRA_UAPSD_VO_SUS_INTV_DEFAULT,
1003 CFG_QOS_WMM_INFRA_UAPSD_VO_SUS_INTV_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001004 CFG_QOS_WMM_INFRA_UAPSD_VO_SUS_INTV_MAX ),
1005
1006 REG_VARIABLE( CFG_QOS_WMM_INFRA_UAPSD_VI_SRV_INTV_NAME , WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001007 hdd_config_t, InfraUapsdViSrvIntv,
1008 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1009 CFG_QOS_WMM_INFRA_UAPSD_VI_SRV_INTV_DEFAULT,
1010 CFG_QOS_WMM_INFRA_UAPSD_VI_SRV_INTV_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001011 CFG_QOS_WMM_INFRA_UAPSD_VI_SRV_INTV_MAX ),
1012
1013 REG_VARIABLE( CFG_QOS_WMM_INFRA_UAPSD_VI_SUS_INTV_NAME , WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001014 hdd_config_t, InfraUapsdViSuspIntv,
1015 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1016 CFG_QOS_WMM_INFRA_UAPSD_VI_SUS_INTV_DEFAULT,
1017 CFG_QOS_WMM_INFRA_UAPSD_VI_SUS_INTV_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001018 CFG_QOS_WMM_INFRA_UAPSD_VI_SUS_INTV_MAX ),
1019
1020 REG_VARIABLE( CFG_QOS_WMM_INFRA_UAPSD_BE_SRV_INTV_NAME , WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001021 hdd_config_t, InfraUapsdBeSrvIntv,
1022 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1023 CFG_QOS_WMM_INFRA_UAPSD_BE_SRV_INTV_DEFAULT,
1024 CFG_QOS_WMM_INFRA_UAPSD_BE_SRV_INTV_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001025 CFG_QOS_WMM_INFRA_UAPSD_BE_SRV_INTV_MAX ),
1026
1027 REG_VARIABLE( CFG_QOS_WMM_INFRA_UAPSD_BE_SUS_INTV_NAME , WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001028 hdd_config_t, InfraUapsdBeSuspIntv,
1029 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1030 CFG_QOS_WMM_INFRA_UAPSD_BE_SUS_INTV_DEFAULT,
1031 CFG_QOS_WMM_INFRA_UAPSD_BE_SUS_INTV_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001032 CFG_QOS_WMM_INFRA_UAPSD_BE_SUS_INTV_MAX ),
1033
1034 REG_VARIABLE( CFG_QOS_WMM_INFRA_UAPSD_BK_SRV_INTV_NAME , WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001035 hdd_config_t, InfraUapsdBkSrvIntv,
1036 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1037 CFG_QOS_WMM_INFRA_UAPSD_BK_SRV_INTV_DEFAULT,
1038 CFG_QOS_WMM_INFRA_UAPSD_BK_SRV_INTV_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001039 CFG_QOS_WMM_INFRA_UAPSD_BK_SRV_INTV_MAX ),
1040
1041 REG_VARIABLE( CFG_QOS_WMM_INFRA_UAPSD_BK_SUS_INTV_NAME , WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001042 hdd_config_t, InfraUapsdBkSuspIntv,
1043 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1044 CFG_QOS_WMM_INFRA_UAPSD_BK_SUS_INTV_DEFAULT,
1045 CFG_QOS_WMM_INFRA_UAPSD_BK_SUS_INTV_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001046 CFG_QOS_WMM_INFRA_UAPSD_BK_SUS_INTV_MAX ),
1047
1048#ifdef FEATURE_WLAN_CCX
1049 REG_VARIABLE( CFG_QOS_WMM_INFRA_INACTIVITY_INTERVAL_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001050 hdd_config_t, InfraInactivityInterval,
1051 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1052 CFG_QOS_WMM_INFRA_INACTIVITY_INTERVAL_DEFAULT,
1053 CFG_QOS_WMM_INFRA_INACTIVITY_INTERVAL_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001054 CFG_QOS_WMM_INFRA_INACTIVITY_INTERVAL_MAX),
Gopichand Nakkala98a98af2012-12-31 14:38:47 -08001055 REG_DYNAMIC_VARIABLE( CFG_CCX_FEATURE_ENABLED_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001056 hdd_config_t, isCcxIniFeatureEnabled,
1057 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1058 CFG_CCX_FEATURE_ENABLED_DEFAULT,
1059 CFG_CCX_FEATURE_ENABLED_MIN,
Gopichand Nakkala98a98af2012-12-31 14:38:47 -08001060 CFG_CCX_FEATURE_ENABLED_MAX,
1061 cbNotifySetCcxFeatureEnabled, 0 ),
Jeff Johnson295189b2012-06-20 16:38:30 -07001062#endif // FEATURE_WLAN_CCX
1063
Jeff Johnson04dd8a82012-06-29 20:41:40 -07001064#ifdef FEATURE_WLAN_LFR
1065 // flag to turn ON/OFF Legacy Fast Roaming
Gopichand Nakkala98a98af2012-12-31 14:38:47 -08001066 REG_DYNAMIC_VARIABLE( CFG_LFR_FEATURE_ENABLED_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001067 hdd_config_t, isFastRoamIniFeatureEnabled,
1068 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1069 CFG_LFR_FEATURE_ENABLED_DEFAULT,
1070 CFG_LFR_FEATURE_ENABLED_MIN,
Srinivas Girigowda100eb322013-03-15 16:48:20 -07001071 CFG_LFR_FEATURE_ENABLED_MAX,
1072 NotifyIsFastRoamIniFeatureEnabled, 0 ),
Sameer Thalappil4ae66ec2013-11-05 14:17:35 -08001073
1074 /* flag to turn ON/OFF Motion assistance for Legacy Fast Roaming */
1075 REG_DYNAMIC_VARIABLE( CFG_LFR_MAWC_FEATURE_ENABLED_NAME, WLAN_PARAM_Integer,
1076 hdd_config_t, MAWCEnabled,
1077 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1078 CFG_LFR_MAWC_FEATURE_ENABLED_DEFAULT,
1079 CFG_LFR_MAWC_FEATURE_ENABLED_MIN,
1080 CFG_LFR_MAWC_FEATURE_ENABLED_MAX,
1081 NotifyIsMAWCIniFeatureEnabled, 0 ),
1082
Jeff Johnson04dd8a82012-06-29 20:41:40 -07001083#endif // FEATURE_WLAN_LFR
1084
1085#if defined (WLAN_FEATURE_VOWIFI_11R) || defined (FEATURE_WLAN_CCX) || defined(FEATURE_WLAN_LFR)
Jeff Johnson295189b2012-06-20 16:38:30 -07001086 // flag to turn ON/OFF 11r and CCX FastTransition
Gopichand Nakkala98a98af2012-12-31 14:38:47 -08001087 REG_DYNAMIC_VARIABLE( CFG_FAST_TRANSITION_ENABLED_NAME, WLAN_PARAM_Integer,
Jeff Johnson295189b2012-06-20 16:38:30 -07001088 hdd_config_t, isFastTransitionEnabled,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001089 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1090 CFG_FAST_TRANSITION_ENABLED_NAME_DEFAULT,
1091 CFG_FAST_TRANSITION_ENABLED_NAME_MIN,
Gopichand Nakkala98a98af2012-12-31 14:38:47 -08001092 CFG_FAST_TRANSITION_ENABLED_NAME_MAX,
1093 cbNotifySetFastTransitionEnabled, 0 ),
Jeff Johnson43971f52012-07-17 12:26:56 -07001094
Srinivas Girigowdade697412013-02-14 16:31:48 -08001095 /* Variable to specify the delta/difference between the RSSI of current AP
Jeff Johnson43971f52012-07-17 12:26:56 -07001096 * and roamable AP while roaming */
Srinivas Girigowdade697412013-02-14 16:31:48 -08001097 REG_DYNAMIC_VARIABLE( CFG_ROAM_RSSI_DIFF_NAME, WLAN_PARAM_Integer,
1098 hdd_config_t, RoamRssiDiff,
1099 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1100 CFG_ROAM_RSSI_DIFF_DEFAULT,
1101 CFG_ROAM_RSSI_DIFF_MIN,
1102 CFG_ROAM_RSSI_DIFF_MAX,
1103 cbNotifySetRoamRssiDiff, 0),
Madan Mohan Koyyalamudi62b55b02012-12-03 16:45:39 -08001104
1105 REG_DYNAMIC_VARIABLE( CFG_IMMEDIATE_ROAM_RSSI_DIFF_NAME, WLAN_PARAM_Integer,
Srinivas Girigowdade697412013-02-14 16:31:48 -08001106 hdd_config_t, nImmediateRoamRssiDiff,
1107 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1108 CFG_IMMEDIATE_ROAM_RSSI_DIFF_DEFAULT,
1109 CFG_IMMEDIATE_ROAM_RSSI_DIFF_MIN,
Madan Mohan Koyyalamudi62b55b02012-12-03 16:45:39 -08001110 CFG_IMMEDIATE_ROAM_RSSI_DIFF_MAX,
1111 cbNotifySetImmediateRoamRssiDiff, 0),
Srinivas Girigowda100eb322013-03-15 16:48:20 -07001112
Srinivas Girigowdaad34ca92013-10-22 10:54:29 -07001113 REG_DYNAMIC_VARIABLE( CFG_ENABLE_WES_MODE_NAME, WLAN_PARAM_Integer,
1114 hdd_config_t, isWESModeEnabled,
1115 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1116 CFG_ENABLE_WES_MODE_NAME_DEFAULT,
1117 CFG_ENABLE_WES_MODE_NAME_MIN,
1118 CFG_ENABLE_WES_MODE_NAME_MAX,
1119 cbNotifySetWESMode, 0),
Jeff Johnson295189b2012-06-20 16:38:30 -07001120#endif
Srinivas Girigowdabbd16eb2013-03-21 12:34:46 -07001121#ifdef FEATURE_WLAN_OKC
1122 REG_DYNAMIC_VARIABLE( CFG_OKC_FEATURE_ENABLED_NAME, WLAN_PARAM_Integer,
1123 hdd_config_t, isOkcIniFeatureEnabled,
1124 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1125 CFG_OKC_FEATURE_ENABLED_DEFAULT,
1126 CFG_OKC_FEATURE_ENABLED_MIN,
1127 CFG_OKC_FEATURE_ENABLED_MAX,
1128 cbNotifySetOkcFeatureEnabled, 0 ),
1129#endif
Varun Reddy Yeturud0a3f252013-04-15 21:58:13 -07001130#ifdef WLAN_FEATURE_ROAM_SCAN_OFFLOAD
1131 REG_DYNAMIC_VARIABLE( CFG_ROAM_SCAN_OFFLOAD_ENABLED, WLAN_PARAM_Integer,
1132 hdd_config_t, isRoamOffloadScanEnabled,
1133 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1134 CFG_ROAM_SCAN_OFFLOAD_ENABLED_DEFAULT,
1135 CFG_ROAM_SCAN_OFFLOAD_ENABLED_MIN,
1136 CFG_ROAM_SCAN_OFFLOAD_ENABLED_MAX,
1137 cbNotifyUpdateRoamScanOffloadEnabled, 0),
1138#endif
Jeff Johnson295189b2012-06-20 16:38:30 -07001139 REG_VARIABLE( CFG_QOS_WMM_PKT_CLASSIFY_BASIS_NAME , WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001140 hdd_config_t, PktClassificationBasis,
1141 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1142 CFG_QOS_WMM_PKT_CLASSIFY_BASIS_DEFAULT,
1143 CFG_QOS_WMM_PKT_CLASSIFY_BASIS_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001144 CFG_QOS_WMM_PKT_CLASSIFY_BASIS_MAX ),
1145
1146 REG_VARIABLE( CFG_QOS_WMM_INFRA_DIR_AC_VO_NAME , WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001147 hdd_config_t, InfraDirAcVo,
1148 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1149 CFG_QOS_WMM_INFRA_DIR_AC_VO_DEFAULT,
1150 CFG_QOS_WMM_INFRA_DIR_AC_VO_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001151 CFG_QOS_WMM_INFRA_DIR_AC_VO_MAX ),
1152
1153 REG_VARIABLE( CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_VO_NAME , WLAN_PARAM_HexInteger,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001154 hdd_config_t, InfraNomMsduSizeAcVo,
1155 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1156 CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_VO_DEFAULT,
1157 CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_VO_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001158 CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_VO_MAX ),
1159
1160 REG_VARIABLE( CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_VO_NAME , WLAN_PARAM_HexInteger,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001161 hdd_config_t, InfraMeanDataRateAcVo,
1162 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1163 CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_VO_DEFAULT,
1164 CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_VO_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001165 CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_VO_MAX ),
1166
1167 REG_VARIABLE( CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_VO_NAME , WLAN_PARAM_HexInteger,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001168 hdd_config_t, InfraMinPhyRateAcVo,
1169 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1170 CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_VO_DEFAULT,
1171 CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_VO_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001172 CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_VO_MAX ),
1173
1174 REG_VARIABLE( CFG_QOS_WMM_INFRA_SBA_AC_VO_NAME , WLAN_PARAM_HexInteger,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001175 hdd_config_t, InfraSbaAcVo,
1176 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1177 CFG_QOS_WMM_INFRA_SBA_AC_VO_DEFAULT,
1178 CFG_QOS_WMM_INFRA_SBA_AC_VO_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001179 CFG_QOS_WMM_INFRA_SBA_AC_VO_MAX ),
1180
1181 REG_VARIABLE( CFG_QOS_WMM_INFRA_DIR_AC_VI_NAME , WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001182 hdd_config_t, InfraDirAcVi,
1183 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1184 CFG_QOS_WMM_INFRA_DIR_AC_VI_DEFAULT,
1185 CFG_QOS_WMM_INFRA_DIR_AC_VI_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001186 CFG_QOS_WMM_INFRA_DIR_AC_VI_MAX ),
1187
1188 REG_VARIABLE( CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_VI_NAME , WLAN_PARAM_HexInteger,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001189 hdd_config_t, InfraNomMsduSizeAcVi,
1190 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1191 CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_VI_DEFAULT,
1192 CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_VI_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001193 CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_VI_MAX ),
1194
1195 REG_VARIABLE( CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_VI_NAME , WLAN_PARAM_HexInteger,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001196 hdd_config_t, InfraMeanDataRateAcVi,
1197 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1198 CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_VI_DEFAULT,
1199 CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_VI_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001200 CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_VI_MAX ),
1201
1202 REG_VARIABLE( CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_VI_NAME , WLAN_PARAM_HexInteger,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001203 hdd_config_t, InfraMinPhyRateAcVi,
1204 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1205 CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_VI_DEFAULT,
1206 CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_VI_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001207 CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_VI_MAX ),
1208
1209 REG_VARIABLE( CFG_QOS_WMM_INFRA_SBA_AC_VI_NAME , WLAN_PARAM_HexInteger,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001210 hdd_config_t, InfraSbaAcVi,
1211 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1212 CFG_QOS_WMM_INFRA_SBA_AC_VI_DEFAULT,
1213 CFG_QOS_WMM_INFRA_SBA_AC_VI_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001214 CFG_QOS_WMM_INFRA_SBA_AC_VI_MAX ),
1215
1216 REG_VARIABLE( CFG_QOS_WMM_INFRA_DIR_AC_BE_NAME , WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001217 hdd_config_t, InfraDirAcBe,
1218 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1219 CFG_QOS_WMM_INFRA_DIR_AC_BE_DEFAULT,
1220 CFG_QOS_WMM_INFRA_DIR_AC_BE_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001221 CFG_QOS_WMM_INFRA_DIR_AC_BE_MAX ),
1222
1223 REG_VARIABLE( CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_BE_NAME , WLAN_PARAM_HexInteger,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001224 hdd_config_t, InfraNomMsduSizeAcBe,
1225 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1226 CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_BE_DEFAULT,
1227 CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_BE_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001228 CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_BE_MAX ),
1229
1230 REG_VARIABLE( CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_BE_NAME , WLAN_PARAM_HexInteger,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001231 hdd_config_t, InfraMeanDataRateAcBe,
1232 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1233 CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_BE_DEFAULT,
1234 CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_BE_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001235 CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_BE_MAX ),
1236
1237 REG_VARIABLE( CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_BE_NAME , WLAN_PARAM_HexInteger,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001238 hdd_config_t, InfraMinPhyRateAcBe,
1239 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1240 CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_BE_DEFAULT,
1241 CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_BE_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001242 CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_BE_MAX ),
1243
1244 REG_VARIABLE( CFG_QOS_WMM_INFRA_SBA_AC_BE_NAME , WLAN_PARAM_HexInteger,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001245 hdd_config_t, InfraSbaAcBe,
1246 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1247 CFG_QOS_WMM_INFRA_SBA_AC_BE_DEFAULT,
1248 CFG_QOS_WMM_INFRA_SBA_AC_BE_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001249 CFG_QOS_WMM_INFRA_SBA_AC_BE_MAX ),
1250
1251 REG_VARIABLE( CFG_QOS_WMM_INFRA_DIR_AC_BK_NAME , WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001252 hdd_config_t, InfraDirAcBk,
1253 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1254 CFG_QOS_WMM_INFRA_DIR_AC_BK_DEFAULT,
1255 CFG_QOS_WMM_INFRA_DIR_AC_BK_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001256 CFG_QOS_WMM_INFRA_DIR_AC_BK_MAX ),
1257
1258 REG_VARIABLE( CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_BK_NAME , WLAN_PARAM_HexInteger,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001259 hdd_config_t, InfraNomMsduSizeAcBk,
1260 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1261 CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_BK_DEFAULT,
1262 CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_BK_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001263 CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_BK_MAX ),
1264
1265 REG_VARIABLE( CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_BK_NAME , WLAN_PARAM_HexInteger,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001266 hdd_config_t, InfraMeanDataRateAcBk,
1267 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1268 CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_BK_DEFAULT,
1269 CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_BK_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001270 CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_BK_MAX ),
1271
1272 REG_VARIABLE( CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_BK_NAME , WLAN_PARAM_HexInteger,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001273 hdd_config_t, InfraMinPhyRateAcBk,
1274 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1275 CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_BK_DEFAULT,
1276 CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_BK_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001277 CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_BK_MAX ),
1278
1279 REG_VARIABLE( CFG_QOS_WMM_INFRA_SBA_AC_BK_NAME , WLAN_PARAM_HexInteger,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001280 hdd_config_t, InfraSbaAcBk,
1281 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1282 CFG_QOS_WMM_INFRA_SBA_AC_BK_DEFAULT,
1283 CFG_QOS_WMM_INFRA_SBA_AC_BK_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001284 CFG_QOS_WMM_INFRA_SBA_AC_BK_MAX ),
1285
1286 REG_VARIABLE( CFG_TL_WFQ_BK_WEIGHT_NAME , WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001287 hdd_config_t, WfqBkWeight,
1288 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1289 CFG_TL_WFQ_BK_WEIGHT_DEFAULT,
1290 CFG_TL_WFQ_BK_WEIGHT_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001291 CFG_TL_WFQ_BK_WEIGHT_MAX ),
1292
1293 REG_VARIABLE( CFG_TL_WFQ_BE_WEIGHT_NAME , WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001294 hdd_config_t, WfqBeWeight,
1295 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1296 CFG_TL_WFQ_BE_WEIGHT_DEFAULT,
1297 CFG_TL_WFQ_BE_WEIGHT_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001298 CFG_TL_WFQ_BE_WEIGHT_MAX ),
1299
1300 REG_VARIABLE( CFG_TL_WFQ_VI_WEIGHT_NAME , WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001301 hdd_config_t, WfqViWeight,
1302 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1303 CFG_TL_WFQ_VI_WEIGHT_DEFAULT,
1304 CFG_TL_WFQ_VI_WEIGHT_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001305 CFG_TL_WFQ_VI_WEIGHT_MAX ),
1306
1307 REG_VARIABLE( CFG_TL_WFQ_VO_WEIGHT_NAME , WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001308 hdd_config_t, WfqVoWeight,
1309 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1310 CFG_TL_WFQ_VO_WEIGHT_DEFAULT,
1311 CFG_TL_WFQ_VO_WEIGHT_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001312 CFG_TL_WFQ_VO_WEIGHT_MAX ),
1313
1314 REG_VARIABLE( CFG_TL_DELAYED_TRGR_FRM_INT_NAME , WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001315 hdd_config_t, DelayedTriggerFrmInt,
1316 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1317 CFG_TL_DELAYED_TRGR_FRM_INT_DEFAULT,
1318 CFG_TL_DELAYED_TRGR_FRM_INT_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001319 CFG_TL_DELAYED_TRGR_FRM_INT_MAX ),
1320
Dhanashri Atred8c20a32014-01-03 17:20:55 -08001321 REG_VARIABLE( CFG_REORDER_TIME_BK_NAME , WLAN_PARAM_Integer,
1322 hdd_config_t, BkReorderAgingTime,
1323 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1324 CFG_REORDER_TIME_BK_DEFAULT,
1325 CFG_REORDER_TIME_BK_MIN,
1326 CFG_REORDER_TIME_BK_MAX ),
1327
1328 REG_VARIABLE( CFG_REORDER_TIME_BE_NAME , WLAN_PARAM_Integer,
1329 hdd_config_t, BeReorderAgingTime,
1330 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1331 CFG_REORDER_TIME_BE_DEFAULT,
1332 CFG_REORDER_TIME_BE_MIN,
1333 CFG_REORDER_TIME_BE_MAX ),
1334
1335 REG_VARIABLE( CFG_REORDER_TIME_VI_NAME , WLAN_PARAM_Integer,
1336 hdd_config_t, ViReorderAgingTime,
1337 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1338 CFG_REORDER_TIME_VI_DEFAULT,
1339 CFG_REORDER_TIME_VI_MIN,
1340 CFG_REORDER_TIME_VI_MAX ),
1341
1342 REG_VARIABLE( CFG_REORDER_TIME_VO_NAME , WLAN_PARAM_Integer,
1343 hdd_config_t, VoReorderAgingTime,
1344 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1345 CFG_REORDER_TIME_VO_DEFAULT,
1346 CFG_REORDER_TIME_VO_MIN,
1347 CFG_REORDER_TIME_VO_MAX ),
1348
Jeff Johnson295189b2012-06-20 16:38:30 -07001349 REG_VARIABLE_STRING( CFG_WOWL_PATTERN_NAME, WLAN_PARAM_String,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001350 hdd_config_t, wowlPattern,
Jeff Johnson295189b2012-06-20 16:38:30 -07001351 VAR_FLAGS_OPTIONAL,
1352 (void *)CFG_WOWL_PATTERN_DEFAULT ),
1353
1354 REG_VARIABLE( CFG_QOS_IMPLICIT_SETUP_ENABLED_NAME , WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001355 hdd_config_t, bImplicitQosEnabled,
1356 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1357 CFG_QOS_IMPLICIT_SETUP_ENABLED_DEFAULT,
1358 CFG_QOS_IMPLICIT_SETUP_ENABLED_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001359 CFG_QOS_IMPLICIT_SETUP_ENABLED_MAX ),
1360
Jeff Johnson295189b2012-06-20 16:38:30 -07001361 REG_VARIABLE( CFG_BTC_EXECUTION_MODE_NAME , WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001362 hdd_config_t, btcExecutionMode,
1363 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1364 CFG_BTC_EXECUTION_MODE_DEFAULT,
1365 CFG_BTC_EXECUTION_MODE_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001366 CFG_BTC_EXECUTION_MODE_MAX ),
1367
1368 REG_VARIABLE( CFG_BTC_DHCP_PROTECTION_NAME , WLAN_PARAM_Integer,
1369 hdd_config_t, btcConsBtSlotsToBlockDuringDhcp,
1370 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1371 CFG_BTC_DHCP_PROTECTION_DEFAULT,
1372 CFG_BTC_DHCP_PROTECTION_MIN,
1373 CFG_BTC_DHCP_PROTECTION_MAX ),
1374
1375 REG_VARIABLE( CFG_BTC_A2DP_DHCP_PROTECTION_NAME , WLAN_PARAM_Integer,
1376 hdd_config_t, btcA2DPBtSubIntervalsDuringDhcp,
1377 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1378 CFG_BTC_A2DP_DHCP_PROTECTION_DEFAULT,
1379 CFG_BTC_A2DP_DHCP_PROTECTION_MIN,
1380 CFG_BTC_A2DP_DHCP_PROTECTION_MAX ),
1381
Jeff Johnson32d95a32012-09-10 13:15:23 -07001382 REG_VARIABLE( CFG_BTC_STATIC_LEN_INQ_BT_NAME , WLAN_PARAM_Integer,
1383 hdd_config_t, btcStaticLenInqBt,
1384 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1385 CFG_BTC_STATIC_LEN_INQ_BT_DEFAULT,
1386 CFG_BTC_STATIC_LEN_INQ_BT_MIN,
1387 CFG_BTC_STATIC_LEN_INQ_BT_MAX ),
1388
1389 REG_VARIABLE( CFG_BTC_STATIC_LEN_PAGE_BT_NAME , WLAN_PARAM_Integer,
1390 hdd_config_t, btcStaticLenPageBt,
1391 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1392 CFG_BTC_STATIC_LEN_PAGE_BT_DEFAULT,
1393 CFG_BTC_STATIC_LEN_PAGE_BT_MIN,
1394 CFG_BTC_STATIC_LEN_PAGE_BT_MAX ),
1395
1396 REG_VARIABLE( CFG_BTC_STATIC_LEN_CONN_BT_NAME , WLAN_PARAM_Integer,
1397 hdd_config_t, btcStaticLenConnBt,
1398 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1399 CFG_BTC_STATIC_LEN_CONN_BT_DEFAULT,
1400 CFG_BTC_STATIC_LEN_CONN_BT_MIN,
1401 CFG_BTC_STATIC_LEN_CONN_BT_MAX ),
1402
1403 REG_VARIABLE( CFG_BTC_STATIC_LEN_LE_BT_NAME , WLAN_PARAM_Integer,
1404 hdd_config_t, btcStaticLenLeBt,
1405 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1406 CFG_BTC_STATIC_LEN_LE_BT_DEFAULT,
1407 CFG_BTC_STATIC_LEN_LE_BT_MIN,
1408 CFG_BTC_STATIC_LEN_LE_BT_MAX ),
1409
1410 REG_VARIABLE( CFG_BTC_STATIC_LEN_INQ_WLAN_NAME , WLAN_PARAM_Integer,
1411 hdd_config_t, btcStaticLenInqWlan,
1412 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1413 CFG_BTC_STATIC_LEN_INQ_WLAN_DEFAULT,
1414 CFG_BTC_STATIC_LEN_INQ_WLAN_MIN,
1415 CFG_BTC_STATIC_LEN_INQ_WLAN_MAX ),
1416
1417 REG_VARIABLE( CFG_BTC_STATIC_LEN_PAGE_WLAN_NAME , WLAN_PARAM_Integer,
1418 hdd_config_t, btcStaticLenPageWlan,
1419 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1420 CFG_BTC_STATIC_LEN_PAGE_WLAN_DEFAULT,
1421 CFG_BTC_STATIC_LEN_PAGE_WLAN_MIN,
1422 CFG_BTC_STATIC_LEN_PAGE_WLAN_MAX ),
1423
1424 REG_VARIABLE( CFG_BTC_STATIC_LEN_CONN_WLAN_NAME , WLAN_PARAM_Integer,
1425 hdd_config_t, btcStaticLenConnWlan,
1426 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1427 CFG_BTC_STATIC_LEN_CONN_WLAN_DEFAULT,
1428 CFG_BTC_STATIC_LEN_CONN_WLAN_MIN,
1429 CFG_BTC_STATIC_LEN_CONN_WLAN_MAX ),
1430
1431 REG_VARIABLE( CFG_BTC_STATIC_LEN_LE_WLAN_NAME , WLAN_PARAM_Integer,
1432 hdd_config_t, btcStaticLenLeWlan,
1433 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1434 CFG_BTC_STATIC_LEN_LE_WLAN_DEFAULT,
1435 CFG_BTC_STATIC_LEN_LE_WLAN_MIN,
1436 CFG_BTC_STATIC_LEN_LE_WLAN_MAX ),
1437
1438 REG_VARIABLE( CFG_BTC_DYN_MAX_LEN_BT_NAME , WLAN_PARAM_Integer,
1439 hdd_config_t, btcDynMaxLenBt,
1440 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1441 CFG_BTC_DYN_MAX_LEN_BT_DEFAULT,
1442 CFG_BTC_DYN_MAX_LEN_BT_MIN,
1443 CFG_BTC_DYN_MAX_LEN_BT_MAX ),
1444
1445 REG_VARIABLE( CFG_BTC_DYN_MAX_LEN_WLAN_NAME , WLAN_PARAM_Integer,
1446 hdd_config_t, btcDynMaxLenWlan,
1447 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1448 CFG_BTC_DYN_MAX_LEN_WLAN_DEFAULT,
1449 CFG_BTC_DYN_MAX_LEN_WLAN_MIN,
1450 CFG_BTC_DYN_MAX_LEN_WLAN_MAX ),
1451
1452 REG_VARIABLE( CFG_BTC_MAX_SCO_BLOCK_PERC_NAME , WLAN_PARAM_Integer,
1453 hdd_config_t, btcMaxScoBlockPerc,
1454 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1455 CFG_BTC_MAX_SCO_BLOCK_PERC_DEFAULT,
1456 CFG_BTC_MAX_SCO_BLOCK_PERC_MIN,
1457 CFG_BTC_MAX_SCO_BLOCK_PERC_MAX ),
1458
1459 REG_VARIABLE( CFG_BTC_DHCP_PROT_ON_A2DP_NAME , WLAN_PARAM_Integer,
1460 hdd_config_t, btcDhcpProtOnA2dp,
1461 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1462 CFG_BTC_DHCP_PROT_ON_A2DP_DEFAULT,
1463 CFG_BTC_DHCP_PROT_ON_A2DP_MIN,
1464 CFG_BTC_DHCP_PROT_ON_A2DP_MAX ),
1465
1466 REG_VARIABLE( CFG_BTC_DHCP_PROT_ON_SCO_NAME , WLAN_PARAM_Integer,
1467 hdd_config_t, btcDhcpProtOnSco,
1468 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1469 CFG_BTC_DHCP_PROT_ON_SCO_DEFAULT,
1470 CFG_BTC_DHCP_PROT_ON_SCO_MIN,
1471 CFG_BTC_DHCP_PROT_ON_SCO_MAX ),
1472
Wilson Tsaof8b37942013-09-06 10:49:00 -07001473 REG_VARIABLE( CFG_MWS_COEX_V1_WAN_FREQ_NAME , WLAN_PARAM_Integer,
1474 hdd_config_t, mwsCoexVictimWANFreq[0],
1475 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1476 CFG_MWS_COEX_VX_WAN_FREQ_DEFAULT,
1477 CFG_MWS_COEX_VX_WAN_FREQ_MIN,
1478 CFG_MWS_COEX_VX_WAN_FREQ_MAX ),
1479
1480 REG_VARIABLE( CFG_MWS_COEX_V1_WLAN_FREQ_NAME , WLAN_PARAM_Integer,
1481 hdd_config_t, mwsCoexVictimWLANFreq[0],
1482 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1483 CFG_MWS_COEX_VX_WLAN_FREQ_DEFAULT,
1484 CFG_MWS_COEX_VX_WLAN_FREQ_MIN,
1485 CFG_MWS_COEX_VX_WLAN_FREQ_MAX ),
1486
1487 REG_VARIABLE( CFG_MWS_COEX_V1_CONFIG_NAME , WLAN_PARAM_Integer,
1488 hdd_config_t, mwsCoexVictimConfig[0],
1489 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1490 CFG_MWS_COEX_VX_CONFIG_DEFAULT,
1491 CFG_MWS_COEX_VX_CONFIG_MIN,
1492 CFG_MWS_COEX_VX_CONFIG_MAX ),
1493
1494 REG_VARIABLE( CFG_MWS_COEX_V1_CONFIG2_NAME , WLAN_PARAM_Integer,
1495 hdd_config_t, mwsCoexVictimConfig2[0],
1496 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1497 CFG_MWS_COEX_VX_CONFIG_DEFAULT,
1498 CFG_MWS_COEX_VX_CONFIG_MIN,
1499 CFG_MWS_COEX_VX_CONFIG_MAX ),
1500
1501 REG_VARIABLE( CFG_MWS_COEX_V2_WAN_FREQ_NAME , WLAN_PARAM_Integer,
1502 hdd_config_t, mwsCoexVictimWANFreq[1],
1503 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1504 CFG_MWS_COEX_VX_WAN_FREQ_DEFAULT,
1505 CFG_MWS_COEX_VX_WAN_FREQ_MIN,
1506 CFG_MWS_COEX_VX_WAN_FREQ_MAX ),
1507
1508 REG_VARIABLE( CFG_MWS_COEX_V2_WLAN_FREQ_NAME , WLAN_PARAM_Integer,
1509 hdd_config_t, mwsCoexVictimWLANFreq[1],
1510 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1511 CFG_MWS_COEX_VX_WLAN_FREQ_DEFAULT,
1512 CFG_MWS_COEX_VX_WLAN_FREQ_MIN,
1513 CFG_MWS_COEX_VX_WLAN_FREQ_MAX ),
1514
1515 REG_VARIABLE( CFG_MWS_COEX_V2_CONFIG_NAME , WLAN_PARAM_Integer,
1516 hdd_config_t, mwsCoexVictimConfig[1],
1517 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1518 CFG_MWS_COEX_VX_CONFIG_DEFAULT,
1519 CFG_MWS_COEX_VX_CONFIG_MIN,
1520 CFG_MWS_COEX_VX_CONFIG_MAX ),
1521
1522 REG_VARIABLE( CFG_MWS_COEX_V2_CONFIG2_NAME , WLAN_PARAM_Integer,
1523 hdd_config_t, mwsCoexVictimConfig2[1],
1524 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1525 CFG_MWS_COEX_VX_CONFIG_DEFAULT,
1526 CFG_MWS_COEX_VX_CONFIG_MIN,
1527 CFG_MWS_COEX_VX_CONFIG_MAX ),
1528
1529 REG_VARIABLE( CFG_MWS_COEX_V3_WAN_FREQ_NAME , WLAN_PARAM_Integer,
1530 hdd_config_t, mwsCoexVictimWANFreq[2],
1531 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1532 CFG_MWS_COEX_VX_WAN_FREQ_DEFAULT,
1533 CFG_MWS_COEX_VX_WAN_FREQ_MIN,
1534 CFG_MWS_COEX_VX_WAN_FREQ_MAX ),
1535
1536 REG_VARIABLE( CFG_MWS_COEX_V3_WLAN_FREQ_NAME , WLAN_PARAM_Integer,
1537 hdd_config_t, mwsCoexVictimWLANFreq[2],
1538 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1539 CFG_MWS_COEX_VX_WLAN_FREQ_DEFAULT,
1540 CFG_MWS_COEX_VX_WLAN_FREQ_MIN,
1541 CFG_MWS_COEX_VX_WLAN_FREQ_MAX ),
1542
1543 REG_VARIABLE( CFG_MWS_COEX_V3_CONFIG_NAME , WLAN_PARAM_Integer,
1544 hdd_config_t, mwsCoexVictimConfig[2],
1545 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1546 CFG_MWS_COEX_VX_CONFIG_DEFAULT,
1547 CFG_MWS_COEX_VX_CONFIG_MIN,
1548 CFG_MWS_COEX_VX_CONFIG_MAX ),
1549
1550 REG_VARIABLE( CFG_MWS_COEX_V3_CONFIG2_NAME , WLAN_PARAM_Integer,
1551 hdd_config_t, mwsCoexVictimConfig2[2],
1552 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1553 CFG_MWS_COEX_VX_CONFIG_DEFAULT,
1554 CFG_MWS_COEX_VX_CONFIG_MIN,
1555 CFG_MWS_COEX_VX_CONFIG_MAX ),
1556
1557 REG_VARIABLE( CFG_MWS_COEX_V4_WAN_FREQ_NAME , WLAN_PARAM_Integer,
1558 hdd_config_t, mwsCoexVictimWANFreq[3],
1559 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1560 CFG_MWS_COEX_VX_WAN_FREQ_DEFAULT,
1561 CFG_MWS_COEX_VX_WAN_FREQ_MIN,
1562 CFG_MWS_COEX_VX_WAN_FREQ_MAX ),
1563
1564 REG_VARIABLE( CFG_MWS_COEX_V4_WLAN_FREQ_NAME , WLAN_PARAM_Integer,
1565 hdd_config_t, mwsCoexVictimWLANFreq[3],
1566 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1567 CFG_MWS_COEX_VX_WLAN_FREQ_DEFAULT,
1568 CFG_MWS_COEX_VX_WLAN_FREQ_MIN,
1569 CFG_MWS_COEX_VX_WLAN_FREQ_MAX ),
1570
1571 REG_VARIABLE( CFG_MWS_COEX_V4_CONFIG_NAME , WLAN_PARAM_Integer,
1572 hdd_config_t, mwsCoexVictimConfig[3],
1573 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1574 CFG_MWS_COEX_VX_CONFIG_DEFAULT,
1575 CFG_MWS_COEX_VX_CONFIG_MIN,
1576 CFG_MWS_COEX_VX_CONFIG_MAX ),
1577
1578 REG_VARIABLE( CFG_MWS_COEX_V4_CONFIG2_NAME , WLAN_PARAM_Integer,
1579 hdd_config_t, mwsCoexVictimConfig2[3],
1580 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1581 CFG_MWS_COEX_VX_CONFIG_DEFAULT,
1582 CFG_MWS_COEX_VX_CONFIG_MIN,
1583 CFG_MWS_COEX_VX_CONFIG_MAX ),
1584
1585 REG_VARIABLE( CFG_MWS_COEX_V5_WAN_FREQ_NAME , WLAN_PARAM_Integer,
1586 hdd_config_t, mwsCoexVictimWANFreq[4],
1587 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1588 CFG_MWS_COEX_VX_WAN_FREQ_DEFAULT,
1589 CFG_MWS_COEX_VX_WAN_FREQ_MIN,
1590 CFG_MWS_COEX_VX_WAN_FREQ_MAX ),
1591
1592 REG_VARIABLE( CFG_MWS_COEX_V5_WLAN_FREQ_NAME , WLAN_PARAM_Integer,
1593 hdd_config_t, mwsCoexVictimWLANFreq[4],
1594 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1595 CFG_MWS_COEX_VX_WLAN_FREQ_DEFAULT,
1596 CFG_MWS_COEX_VX_WLAN_FREQ_MIN,
1597 CFG_MWS_COEX_VX_WLAN_FREQ_MAX ),
1598
1599 REG_VARIABLE( CFG_MWS_COEX_V5_CONFIG_NAME , WLAN_PARAM_Integer,
1600 hdd_config_t, mwsCoexVictimConfig[4],
1601 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1602 CFG_MWS_COEX_VX_CONFIG_DEFAULT,
1603 CFG_MWS_COEX_VX_CONFIG_MIN,
1604 CFG_MWS_COEX_VX_CONFIG_MAX ),
1605
1606 REG_VARIABLE( CFG_MWS_COEX_V5_CONFIG2_NAME , WLAN_PARAM_Integer,
1607 hdd_config_t, mwsCoexVictimConfig2[4],
1608 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1609 CFG_MWS_COEX_VX_CONFIG_DEFAULT,
1610 CFG_MWS_COEX_VX_CONFIG_MIN,
1611 CFG_MWS_COEX_VX_CONFIG_MAX ),
1612
1613 REG_VARIABLE( CFG_MWS_COEX_V6_WAN_FREQ_NAME , WLAN_PARAM_Integer,
1614 hdd_config_t, mwsCoexVictimWANFreq[5],
1615 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1616 CFG_MWS_COEX_VX_WAN_FREQ_DEFAULT,
1617 CFG_MWS_COEX_VX_WAN_FREQ_MIN,
1618 CFG_MWS_COEX_VX_WAN_FREQ_MAX ),
1619
1620 REG_VARIABLE( CFG_MWS_COEX_V6_WLAN_FREQ_NAME , WLAN_PARAM_Integer,
1621 hdd_config_t, mwsCoexVictimWLANFreq[5],
1622 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1623 CFG_MWS_COEX_VX_WLAN_FREQ_DEFAULT,
1624 CFG_MWS_COEX_VX_WLAN_FREQ_MIN,
1625 CFG_MWS_COEX_VX_WLAN_FREQ_MAX ),
1626
1627 REG_VARIABLE( CFG_MWS_COEX_V6_CONFIG_NAME , WLAN_PARAM_Integer,
1628 hdd_config_t, mwsCoexVictimConfig[5],
1629 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1630 CFG_MWS_COEX_VX_CONFIG_DEFAULT,
1631 CFG_MWS_COEX_VX_CONFIG_MIN,
1632 CFG_MWS_COEX_VX_CONFIG_MAX ),
1633
1634 REG_VARIABLE( CFG_MWS_COEX_V6_CONFIG2_NAME , WLAN_PARAM_Integer,
1635 hdd_config_t, mwsCoexVictimConfig2[5],
1636 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1637 CFG_MWS_COEX_VX_CONFIG_DEFAULT,
1638 CFG_MWS_COEX_VX_CONFIG_MIN,
1639 CFG_MWS_COEX_VX_CONFIG_MAX ),
1640
1641 REG_VARIABLE( CFG_MWS_COEX_V7_WAN_FREQ_NAME , WLAN_PARAM_Integer,
1642 hdd_config_t, mwsCoexVictimWANFreq[6],
1643 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1644 CFG_MWS_COEX_VX_WAN_FREQ_DEFAULT,
1645 CFG_MWS_COEX_VX_WAN_FREQ_MIN,
1646 CFG_MWS_COEX_VX_WAN_FREQ_MAX ),
1647
1648 REG_VARIABLE( CFG_MWS_COEX_V7_WLAN_FREQ_NAME , WLAN_PARAM_Integer,
1649 hdd_config_t, mwsCoexVictimWLANFreq[6],
1650 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1651 CFG_MWS_COEX_VX_WLAN_FREQ_DEFAULT,
1652 CFG_MWS_COEX_VX_WLAN_FREQ_MIN,
1653 CFG_MWS_COEX_VX_WLAN_FREQ_MAX ),
1654
1655 REG_VARIABLE( CFG_MWS_COEX_V7_CONFIG_NAME , WLAN_PARAM_Integer,
1656 hdd_config_t, mwsCoexVictimConfig[6],
1657 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1658 CFG_MWS_COEX_VX_CONFIG_DEFAULT,
1659 CFG_MWS_COEX_VX_CONFIG_MIN,
1660 CFG_MWS_COEX_VX_CONFIG_MAX ),
1661
1662 REG_VARIABLE( CFG_MWS_COEX_V7_CONFIG2_NAME , WLAN_PARAM_Integer,
1663 hdd_config_t, mwsCoexVictimConfig2[6],
1664 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1665 CFG_MWS_COEX_VX_CONFIG_DEFAULT,
1666 CFG_MWS_COEX_VX_CONFIG_MIN,
1667 CFG_MWS_COEX_VX_CONFIG_MAX ),
1668
1669 REG_VARIABLE( CFG_MWS_COEX_V8_WAN_FREQ_NAME , WLAN_PARAM_Integer,
1670 hdd_config_t, mwsCoexVictimWANFreq[7],
1671 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1672 CFG_MWS_COEX_VX_WAN_FREQ_DEFAULT,
1673 CFG_MWS_COEX_VX_WAN_FREQ_MIN,
1674 CFG_MWS_COEX_VX_WAN_FREQ_MAX ),
1675
1676 REG_VARIABLE( CFG_MWS_COEX_V8_WLAN_FREQ_NAME , WLAN_PARAM_Integer,
1677 hdd_config_t, mwsCoexVictimWLANFreq[7],
1678 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1679 CFG_MWS_COEX_VX_WLAN_FREQ_DEFAULT,
1680 CFG_MWS_COEX_VX_WLAN_FREQ_MIN,
1681 CFG_MWS_COEX_VX_WLAN_FREQ_MAX ),
1682
1683 REG_VARIABLE( CFG_MWS_COEX_V8_CONFIG_NAME , WLAN_PARAM_Integer,
1684 hdd_config_t, mwsCoexVictimConfig[7],
1685 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1686 CFG_MWS_COEX_VX_CONFIG_DEFAULT,
1687 CFG_MWS_COEX_VX_CONFIG_MIN,
1688 CFG_MWS_COEX_VX_CONFIG_MAX ),
1689
1690 REG_VARIABLE( CFG_MWS_COEX_V8_CONFIG2_NAME , WLAN_PARAM_Integer,
1691 hdd_config_t, mwsCoexVictimConfig2[7],
1692 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1693 CFG_MWS_COEX_VX_CONFIG_DEFAULT,
1694 CFG_MWS_COEX_VX_CONFIG_MIN,
1695 CFG_MWS_COEX_VX_CONFIG_MAX ),
1696
1697 REG_VARIABLE( CFG_MWS_COEX_V9_WAN_FREQ_NAME , WLAN_PARAM_Integer,
1698 hdd_config_t, mwsCoexVictimWANFreq[8],
1699 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1700 CFG_MWS_COEX_VX_WAN_FREQ_DEFAULT,
1701 CFG_MWS_COEX_VX_WAN_FREQ_MIN,
1702 CFG_MWS_COEX_VX_WAN_FREQ_MAX ),
1703
1704 REG_VARIABLE( CFG_MWS_COEX_V9_WLAN_FREQ_NAME , WLAN_PARAM_Integer,
1705 hdd_config_t, mwsCoexVictimWLANFreq[8],
1706 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1707 CFG_MWS_COEX_VX_WLAN_FREQ_DEFAULT,
1708 CFG_MWS_COEX_VX_WLAN_FREQ_MIN,
1709 CFG_MWS_COEX_VX_WLAN_FREQ_MAX ),
1710
1711 REG_VARIABLE( CFG_MWS_COEX_V9_CONFIG_NAME , WLAN_PARAM_Integer,
1712 hdd_config_t, mwsCoexVictimConfig[8],
1713 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1714 CFG_MWS_COEX_VX_CONFIG_DEFAULT,
1715 CFG_MWS_COEX_VX_CONFIG_MIN,
1716 CFG_MWS_COEX_VX_CONFIG_MAX ),
1717
1718 REG_VARIABLE( CFG_MWS_COEX_V9_CONFIG2_NAME , WLAN_PARAM_Integer,
1719 hdd_config_t, mwsCoexVictimConfig2[8],
1720 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1721 CFG_MWS_COEX_VX_CONFIG_DEFAULT,
1722 CFG_MWS_COEX_VX_CONFIG_MIN,
1723 CFG_MWS_COEX_VX_CONFIG_MAX ),
1724
1725 REG_VARIABLE( CFG_MWS_COEX_V10_WAN_FREQ_NAME , WLAN_PARAM_Integer,
1726 hdd_config_t, mwsCoexVictimWANFreq[9],
1727 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1728 CFG_MWS_COEX_VX_WAN_FREQ_DEFAULT,
1729 CFG_MWS_COEX_VX_WAN_FREQ_MIN,
1730 CFG_MWS_COEX_VX_WAN_FREQ_MAX ),
1731
1732 REG_VARIABLE( CFG_MWS_COEX_V10_WLAN_FREQ_NAME , WLAN_PARAM_Integer,
1733 hdd_config_t, mwsCoexVictimWLANFreq[9],
1734 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1735 CFG_MWS_COEX_VX_WLAN_FREQ_DEFAULT,
1736 CFG_MWS_COEX_VX_WLAN_FREQ_MIN,
1737 CFG_MWS_COEX_VX_WLAN_FREQ_MAX ),
1738
1739 REG_VARIABLE( CFG_MWS_COEX_V10_CONFIG_NAME , WLAN_PARAM_Integer,
1740 hdd_config_t, mwsCoexVictimConfig[9],
1741 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1742 CFG_MWS_COEX_VX_CONFIG_DEFAULT,
1743 CFG_MWS_COEX_VX_CONFIG_MIN,
1744 CFG_MWS_COEX_VX_CONFIG_MAX ),
1745
1746 REG_VARIABLE( CFG_MWS_COEX_V10_CONFIG2_NAME , WLAN_PARAM_Integer,
1747 hdd_config_t, mwsCoexVictimConfig2[9],
1748 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1749 CFG_MWS_COEX_VX_CONFIG_DEFAULT,
1750 CFG_MWS_COEX_VX_CONFIG_MIN,
1751 CFG_MWS_COEX_VX_CONFIG_MAX ),
1752
1753 REG_VARIABLE( CFG_MWS_COEX_MODEM_BACKOFF_NAME , WLAN_PARAM_Integer,
1754 hdd_config_t, mwsCoexModemBackoff,
1755 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1756 CFG_MWS_COEX_MODEM_BACKOFF_DEFAULT,
1757 CFG_MWS_COEX_MODEM_BACKOFF_MIN,
1758 CFG_MWS_COEX_MODEM_BACKOFF_MAX ),
1759
1760 REG_VARIABLE( CFG_MWS_COEX_CONFIG1_NAME , WLAN_PARAM_Integer,
1761 hdd_config_t, mwsCoexConfig[0],
1762 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1763 CFG_MWS_COEX_CONFIGX_DEFAULT,
1764 CFG_MWS_COEX_CONFIGX_MIN,
1765 CFG_MWS_COEX_CONFIGX_MAX ),
1766
1767 REG_VARIABLE( CFG_MWS_COEX_CONFIG2_NAME , WLAN_PARAM_Integer,
1768 hdd_config_t, mwsCoexConfig[1],
1769 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1770 CFG_MWS_COEX_CONFIGX_DEFAULT,
1771 CFG_MWS_COEX_CONFIGX_MIN,
1772 CFG_MWS_COEX_CONFIGX_MAX ),
1773
1774 REG_VARIABLE( CFG_MWS_COEX_CONFIG3_NAME , WLAN_PARAM_Integer,
1775 hdd_config_t, mwsCoexConfig[2],
1776 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1777 CFG_MWS_COEX_CONFIGX_DEFAULT,
1778 CFG_MWS_COEX_CONFIGX_MIN,
1779 CFG_MWS_COEX_CONFIGX_MAX ),
1780
1781 REG_VARIABLE( CFG_MWS_COEX_CONFIG4_NAME , WLAN_PARAM_Integer,
1782 hdd_config_t, mwsCoexConfig[3],
1783 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1784 CFG_MWS_COEX_CONFIGX_DEFAULT,
1785 CFG_MWS_COEX_CONFIGX_MIN,
1786 CFG_MWS_COEX_CONFIGX_MAX ),
1787
1788 REG_VARIABLE( CFG_MWS_COEX_CONFIG5_NAME , WLAN_PARAM_Integer,
1789 hdd_config_t, mwsCoexConfig[4],
1790 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1791 CFG_MWS_COEX_CONFIGX_DEFAULT,
1792 CFG_MWS_COEX_CONFIGX_MIN,
1793 CFG_MWS_COEX_CONFIGX_MAX ),
1794
1795 REG_VARIABLE( CFG_MWS_COEX_CONFIG6_NAME , WLAN_PARAM_Integer,
1796 hdd_config_t, mwsCoexConfig[5],
1797 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1798 CFG_MWS_COEX_CONFIGX_DEFAULT,
1799 CFG_MWS_COEX_CONFIGX_MIN,
1800 CFG_MWS_COEX_CONFIGX_MAX ),
1801
1802 REG_VARIABLE( CFG_SAR_POWER_BACKOFF_NAME , WLAN_PARAM_Integer,
1803 hdd_config_t, SARPowerBackoff,
1804 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1805 CFG_SAR_POWER_BACKOFF_DEFAULT,
1806 CFG_SAR_POWER_BACKOFF_MIN,
1807 CFG_SAR_POWER_BACKOFF_MAX ),
1808
Jeff Johnson295189b2012-06-20 16:38:30 -07001809 REG_VARIABLE( CFG_AP_LISTEN_MODE_NAME , WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001810 hdd_config_t, nEnableListenMode,
1811 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1812 CFG_AP_LISTEN_MODE_DEFAULT,
1813 CFG_AP_LISTEN_MODE_MIN,
1814 CFG_AP_LISTEN_MODE_MAX ),
Jeff Johnson295189b2012-06-20 16:38:30 -07001815
1816 REG_VARIABLE( CFG_AP_AUTO_SHUT_OFF , WLAN_PARAM_Integer,
1817 hdd_config_t, nAPAutoShutOff,
1818 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1819 CFG_AP_AUTO_SHUT_OFF_DEFAULT,
1820 CFG_AP_AUTO_SHUT_OFF_MIN,
1821 CFG_AP_AUTO_SHUT_OFF_MAX ),
Jeff Johnson295189b2012-06-20 16:38:30 -07001822
1823#if defined WLAN_FEATURE_VOWIFI
1824 REG_VARIABLE( CFG_RRM_ENABLE_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001825 hdd_config_t, fRrmEnable,
1826 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1827 CFG_RRM_ENABLE_DEFAULT,
1828 CFG_RRM_ENABLE_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001829 CFG_RRM_ENABLE_MAX ),
1830
1831 REG_VARIABLE( CFG_RRM_OPERATING_CHAN_MAX_DURATION_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001832 hdd_config_t, nInChanMeasMaxDuration,
1833 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1834 CFG_RRM_OPERATING_CHAN_MAX_DURATION_DEFAULT,
1835 CFG_RRM_OPERATING_CHAN_MAX_DURATION_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001836 CFG_RRM_OPERATING_CHAN_MAX_DURATION_MAX ),
1837
1838 REG_VARIABLE( CFG_RRM_NON_OPERATING_CHAN_MAX_DURATION_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001839 hdd_config_t, nOutChanMeasMaxDuration,
1840 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1841 CFG_RRM_NON_OPERATING_CHAN_MAX_DURATION_DEFAULT,
1842 CFG_RRM_NON_OPERATING_CHAN_MAX_DURATION_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001843 CFG_RRM_NON_OPERATING_CHAN_MAX_DURATION_MAX ),
1844
1845 REG_VARIABLE( CFG_RRM_MEAS_RANDOMIZATION_INTVL_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001846 hdd_config_t, nRrmRandnIntvl,
1847 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1848 CFG_RRM_MEAS_RANDOMIZATION_INTVL_DEFAULT,
1849 CFG_RRM_MEAS_RANDOMIZATION_INTVL_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001850 CFG_RRM_MEAS_RANDOMIZATION_INTVL_MAX ),
1851#endif
1852
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001853#ifdef WLAN_FEATURE_VOWIFI_11R
Jeff Johnson295189b2012-06-20 16:38:30 -07001854 REG_VARIABLE( CFG_FT_RESOURCE_REQ_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001855 hdd_config_t, fFTResourceReqSupported,
1856 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1857 CFG_FT_RESOURCE_REQ_DEFAULT,
1858 CFG_FT_RESOURCE_REQ_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001859 CFG_FT_RESOURCE_REQ_MAX ),
1860#endif
1861
1862#ifdef WLAN_FEATURE_NEIGHBOR_ROAMING
Srinivas Girigowdabbd16eb2013-03-21 12:34:46 -07001863 REG_DYNAMIC_VARIABLE( CFG_NEIGHBOR_SCAN_TIMER_PERIOD_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001864 hdd_config_t, nNeighborScanPeriod,
1865 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1866 CFG_NEIGHBOR_SCAN_TIMER_PERIOD_DEFAULT,
1867 CFG_NEIGHBOR_SCAN_TIMER_PERIOD_MIN,
Srinivas Girigowdabbd16eb2013-03-21 12:34:46 -07001868 CFG_NEIGHBOR_SCAN_TIMER_PERIOD_MAX,
1869 cbNotifySetNeighborScanPeriod, 0 ),
Jeff Johnson295189b2012-06-20 16:38:30 -07001870
1871 REG_VARIABLE( CFG_NEIGHBOR_REASSOC_RSSI_THRESHOLD_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001872 hdd_config_t, nNeighborReassocRssiThreshold,
1873 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1874 CFG_NEIGHBOR_REASSOC_RSSI_THRESHOLD_DEFAULT,
1875 CFG_NEIGHBOR_REASSOC_RSSI_THRESHOLD_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001876 CFG_NEIGHBOR_REASSOC_RSSI_THRESHOLD_MAX ),
1877
Srinivas Girigowdade697412013-02-14 16:31:48 -08001878 REG_DYNAMIC_VARIABLE( CFG_NEIGHBOR_LOOKUP_RSSI_THRESHOLD_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001879 hdd_config_t, nNeighborLookupRssiThreshold,
1880 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1881 CFG_NEIGHBOR_LOOKUP_RSSI_THRESHOLD_DEFAULT,
1882 CFG_NEIGHBOR_LOOKUP_RSSI_THRESHOLD_MIN,
Srinivas Girigowdade697412013-02-14 16:31:48 -08001883 CFG_NEIGHBOR_LOOKUP_RSSI_THRESHOLD_MAX,
1884 cbNotifySetNeighborLookupRssiThreshold, 0 ),
Jeff Johnson295189b2012-06-20 16:38:30 -07001885
1886 REG_VARIABLE_STRING( CFG_NEIGHBOR_SCAN_CHAN_LIST_NAME, WLAN_PARAM_String,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001887 hdd_config_t, neighborScanChanList,
Jeff Johnson295189b2012-06-20 16:38:30 -07001888 VAR_FLAGS_OPTIONAL,
1889 (void *)CFG_NEIGHBOR_SCAN_CHAN_LIST_DEFAULT ),
1890
Srinivas Girigowdabbd16eb2013-03-21 12:34:46 -07001891 REG_DYNAMIC_VARIABLE( CFG_NEIGHBOR_SCAN_MIN_CHAN_TIME_NAME, WLAN_PARAM_Integer,
Jeff Johnson295189b2012-06-20 16:38:30 -07001892 hdd_config_t, nNeighborScanMinChanTime,
1893 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1894 CFG_NEIGHBOR_SCAN_MIN_CHAN_TIME_DEFAULT,
1895 CFG_NEIGHBOR_SCAN_MIN_CHAN_TIME_MIN,
Srinivas Girigowdabbd16eb2013-03-21 12:34:46 -07001896 CFG_NEIGHBOR_SCAN_MIN_CHAN_TIME_MAX,
1897 cbNotifySetNeighborScanMinChanTime, 0 ),
Jeff Johnson295189b2012-06-20 16:38:30 -07001898
Srinivas Girigowdabbd16eb2013-03-21 12:34:46 -07001899 REG_DYNAMIC_VARIABLE( CFG_NEIGHBOR_SCAN_MAX_CHAN_TIME_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001900 hdd_config_t, nNeighborScanMaxChanTime,
1901 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1902 CFG_NEIGHBOR_SCAN_MAX_CHAN_TIME_DEFAULT,
1903 CFG_NEIGHBOR_SCAN_MAX_CHAN_TIME_MIN,
Srinivas Girigowdabbd16eb2013-03-21 12:34:46 -07001904 CFG_NEIGHBOR_SCAN_MAX_CHAN_TIME_MAX,
1905 cbNotifySetNeighborScanMaxChanTime, 0 ),
Jeff Johnson295189b2012-06-20 16:38:30 -07001906
1907 REG_VARIABLE( CFG_11R_NEIGHBOR_REQ_MAX_TRIES_NAME, WLAN_PARAM_Integer,
1908 hdd_config_t, nMaxNeighborReqTries,
1909 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1910 CFG_11R_NEIGHBOR_REQ_MAX_TRIES_DEFAULT,
1911 CFG_11R_NEIGHBOR_REQ_MAX_TRIES_MIN,
1912 CFG_11R_NEIGHBOR_REQ_MAX_TRIES_MAX),
1913
Srinivas Girigowdade697412013-02-14 16:31:48 -08001914 REG_DYNAMIC_VARIABLE( CFG_NEIGHBOR_SCAN_RESULTS_REFRESH_PERIOD_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001915 hdd_config_t, nNeighborResultsRefreshPeriod,
1916 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1917 CFG_NEIGHBOR_SCAN_RESULTS_REFRESH_PERIOD_DEFAULT,
1918 CFG_NEIGHBOR_SCAN_RESULTS_REFRESH_PERIOD_MIN,
Srinivas Girigowdade697412013-02-14 16:31:48 -08001919 CFG_NEIGHBOR_SCAN_RESULTS_REFRESH_PERIOD_MAX,
1920 cbNotifySetNeighborResultsRefreshPeriod, 0 ),
1921
1922 REG_DYNAMIC_VARIABLE( CFG_EMPTY_SCAN_REFRESH_PERIOD_NAME, WLAN_PARAM_Integer,
1923 hdd_config_t, nEmptyScanRefreshPeriod,
1924 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1925 CFG_EMPTY_SCAN_REFRESH_PERIOD_DEFAULT,
1926 CFG_EMPTY_SCAN_REFRESH_PERIOD_MIN,
1927 CFG_EMPTY_SCAN_REFRESH_PERIOD_MAX,
1928 cbNotifySetEmptyScanRefreshPeriod, 0 ),
Jeff Johnson295189b2012-06-20 16:38:30 -07001929#endif /* WLAN_FEATURE_NEIGHBOR_ROAMING */
1930
1931 REG_VARIABLE( CFG_QOS_WMM_BURST_SIZE_DEFN_NAME , WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001932 hdd_config_t, burstSizeDefinition,
1933 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1934 CFG_QOS_WMM_BURST_SIZE_DEFN_DEFAULT,
1935 CFG_QOS_WMM_BURST_SIZE_DEFN_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001936 CFG_QOS_WMM_BURST_SIZE_DEFN_MAX ),
1937
1938 REG_VARIABLE( CFG_MCAST_BCAST_FILTER_SETTING_NAME, WLAN_PARAM_Integer,
1939 hdd_config_t, mcastBcastFilterSetting,
1940 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1941 CFG_MCAST_BCAST_FILTER_SETTING_DEFAULT,
1942 CFG_MCAST_BCAST_FILTER_SETTING_MIN,
1943 CFG_MCAST_BCAST_FILTER_SETTING_MAX ),
1944
1945 REG_VARIABLE( CFG_ENABLE_HOST_ARPOFFLOAD_NAME, WLAN_PARAM_Integer,
1946 hdd_config_t, fhostArpOffload,
1947 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1948 CFG_ENABLE_HOST_ARPOFFLOAD_DEFAULT,
1949 CFG_ENABLE_HOST_ARPOFFLOAD_MIN,
1950 CFG_ENABLE_HOST_ARPOFFLOAD_MAX ),
1951
Gopichand Nakkala746a9452013-06-11 12:45:54 +05301952 REG_VARIABLE( CFG_ENABLE_HOST_NSOFFLOAD_NAME, WLAN_PARAM_Integer,
1953 hdd_config_t, fhostNSOffload,
1954 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1955 CFG_ENABLE_HOST_NSOFFLOAD_DEFAULT,
1956 CFG_ENABLE_HOST_NSOFFLOAD_MIN,
1957 CFG_ENABLE_HOST_NSOFFLOAD_MAX ),
1958
Jeff Johnson295189b2012-06-20 16:38:30 -07001959 REG_VARIABLE( CFG_QOS_WMM_TS_INFO_ACK_POLICY_NAME , WLAN_PARAM_HexInteger,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001960 hdd_config_t, tsInfoAckPolicy,
1961 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1962 CFG_QOS_WMM_TS_INFO_ACK_POLICY_DEFAULT,
1963 CFG_QOS_WMM_TS_INFO_ACK_POLICY_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001964 CFG_QOS_WMM_TS_INFO_ACK_POLICY_MAX ),
1965
1966 REG_VARIABLE( CFG_SINGLE_TID_RC_NAME, WLAN_PARAM_Integer,
1967 hdd_config_t, bSingleTidRc,
1968 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1969 CFG_SINGLE_TID_RC_DEFAULT,
1970 CFG_SINGLE_TID_RC_MIN,
1971 CFG_SINGLE_TID_RC_MAX),
1972
1973 REG_VARIABLE( CFG_DYNAMIC_PSPOLL_VALUE_NAME, WLAN_PARAM_Integer,
1974 hdd_config_t, dynamicPsPollValue,
1975 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1976 CFG_DYNAMIC_PSPOLL_VALUE_DEFAULT,
1977 CFG_DYNAMIC_PSPOLL_VALUE_MIN,
1978 CFG_DYNAMIC_PSPOLL_VALUE_MAX ),
1979
1980 REG_VARIABLE( CFG_TELE_BCN_WAKEUP_EN_NAME, WLAN_PARAM_Integer,
1981 hdd_config_t, teleBcnWakeupEn,
1982 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1983 CFG_TELE_BCN_WAKEUP_EN_DEFAULT,
1984 CFG_TELE_BCN_WAKEUP_EN_MIN,
1985 CFG_TELE_BCN_WAKEUP_EN_MAX ),
1986
1987 REG_VARIABLE( CFG_INFRA_STA_KEEP_ALIVE_PERIOD_NAME, WLAN_PARAM_Integer,
1988 hdd_config_t, infraStaKeepAlivePeriod,
1989 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1990 CFG_INFRA_STA_KEEP_ALIVE_PERIOD_DEFAULT,
1991 CFG_INFRA_STA_KEEP_ALIVE_PERIOD_MIN,
1992 CFG_INFRA_STA_KEEP_ALIVE_PERIOD_MAX),
1993
1994 REG_VARIABLE( CFG_QOS_ADDTS_WHEN_ACM_IS_OFF_NAME , WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001995 hdd_config_t, AddTSWhenACMIsOff,
1996 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1997 CFG_QOS_ADDTS_WHEN_ACM_IS_OFF_DEFAULT,
1998 CFG_QOS_ADDTS_WHEN_ACM_IS_OFF_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001999 CFG_QOS_ADDTS_WHEN_ACM_IS_OFF_MAX ),
2000
2001
2002 REG_VARIABLE( CFG_VALIDATE_SCAN_LIST_NAME , WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002003 hdd_config_t, fValidateScanList,
2004 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2005 CFG_VALIDATE_SCAN_LIST_DEFAULT,
2006 CFG_VALIDATE_SCAN_LIST_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07002007 CFG_VALIDATE_SCAN_LIST_MAX ),
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002008
Jeff Johnson295189b2012-06-20 16:38:30 -07002009 REG_VARIABLE( CFG_NULLDATA_AP_RESP_TIMEOUT_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002010 hdd_config_t, nNullDataApRespTimeout,
2011 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2012 CFG_NULLDATA_AP_RESP_TIMEOUT_DEFAULT,
2013 CFG_NULLDATA_AP_RESP_TIMEOUT_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07002014 CFG_NULLDATA_AP_RESP_TIMEOUT_MAX ),
2015
2016 REG_VARIABLE( CFG_AP_DATA_AVAIL_POLL_PERIOD_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002017 hdd_config_t, apDataAvailPollPeriodInMs,
2018 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2019 CFG_AP_DATA_AVAIL_POLL_PERIOD_DEFAULT,
2020 CFG_AP_DATA_AVAIL_POLL_PERIOD_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07002021 CFG_AP_DATA_AVAIL_POLL_PERIOD_MAX ),
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002022
Jeff Johnson295189b2012-06-20 16:38:30 -07002023 REG_VARIABLE( CFG_ENABLE_BTAMP_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002024 hdd_config_t, enableBtAmp,
2025 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2026 CFG_ENABLE_BTAMP_DEFAULT,
2027 CFG_ENABLE_BTAMP_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07002028 CFG_ENABLE_BTAMP_MAX ),
2029
2030#ifdef WLAN_BTAMP_FEATURE
2031 REG_VARIABLE( CFG_BT_AMP_PREFERRED_CHANNEL_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002032 hdd_config_t, preferredChannel,
Jeff Johnson295189b2012-06-20 16:38:30 -07002033 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2034 CFG_BT_AMP_PREFERRED_CHANNEL_DEFAULT,
2035 CFG_BT_AMP_PREFERRED_CHANNEL_MIN,
2036 CFG_BT_AMP_PREFERRED_CHANNEL_MAX ),
2037#endif //WLAN_BTAMP_FEATURE
2038 REG_VARIABLE( CFG_BAND_CAPABILITY_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002039 hdd_config_t, nBandCapability,
2040 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2041 CFG_BAND_CAPABILITY_DEFAULT,
2042 CFG_BAND_CAPABILITY_MIN,
2043 CFG_BAND_CAPABILITY_MAX ),
Jeff Johnson295189b2012-06-20 16:38:30 -07002044
2045 REG_VARIABLE( CFG_ENABLE_BEACON_EARLY_TERMINATION_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002046 hdd_config_t, fEnableBeaconEarlyTermination,
2047 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2048 CFG_ENABLE_BEACON_EARLY_TERMINATION_DEFAULT,
2049 CFG_ENABLE_BEACON_EARLY_TERMINATION_MIN,
2050 CFG_ENABLE_BEACON_EARLY_TERMINATION_MAX ),
Varun Reddy Yeturu587e6802013-01-24 12:21:41 -08002051/* CFG_VOS_TRACE_ENABLE Parameters */
2052 REG_VARIABLE( CFG_VOS_TRACE_ENABLE_BAP_NAME, WLAN_PARAM_Integer,
2053 hdd_config_t, vosTraceEnableBAP,
2054 VAR_FLAGS_OPTIONAL,
2055 CFG_VOS_TRACE_ENABLE_DEFAULT,
2056 CFG_VOS_TRACE_ENABLE_MIN,
2057 CFG_VOS_TRACE_ENABLE_MAX ),
2058
2059 REG_VARIABLE( CFG_VOS_TRACE_ENABLE_TL_NAME, WLAN_PARAM_Integer,
2060 hdd_config_t, vosTraceEnableTL,
2061 VAR_FLAGS_OPTIONAL,
2062 CFG_VOS_TRACE_ENABLE_DEFAULT,
2063 CFG_VOS_TRACE_ENABLE_MIN,
2064 CFG_VOS_TRACE_ENABLE_MAX ),
2065
2066 REG_VARIABLE( CFG_VOS_TRACE_ENABLE_WDI_NAME, WLAN_PARAM_Integer,
2067 hdd_config_t, vosTraceEnableWDI,
2068 VAR_FLAGS_OPTIONAL,
2069 CFG_VOS_TRACE_ENABLE_DEFAULT,
2070 CFG_VOS_TRACE_ENABLE_MIN,
2071 CFG_VOS_TRACE_ENABLE_MAX ),
2072
2073 REG_VARIABLE( CFG_VOS_TRACE_ENABLE_HDD_NAME, WLAN_PARAM_Integer,
2074 hdd_config_t, vosTraceEnableHDD,
2075 VAR_FLAGS_OPTIONAL,
2076 CFG_VOS_TRACE_ENABLE_DEFAULT,
2077 CFG_VOS_TRACE_ENABLE_MIN,
2078 CFG_VOS_TRACE_ENABLE_MAX ),
2079
2080 REG_VARIABLE( CFG_VOS_TRACE_ENABLE_SME_NAME, WLAN_PARAM_Integer,
2081 hdd_config_t, vosTraceEnableSME,
2082 VAR_FLAGS_OPTIONAL,
2083 CFG_VOS_TRACE_ENABLE_DEFAULT,
2084 CFG_VOS_TRACE_ENABLE_MIN,
2085 CFG_VOS_TRACE_ENABLE_MAX ),
2086
2087 REG_VARIABLE( CFG_VOS_TRACE_ENABLE_PE_NAME, WLAN_PARAM_Integer,
2088 hdd_config_t, vosTraceEnablePE,
2089 VAR_FLAGS_OPTIONAL,
2090 CFG_VOS_TRACE_ENABLE_DEFAULT,
2091 CFG_VOS_TRACE_ENABLE_MIN,
2092 CFG_VOS_TRACE_ENABLE_MAX ),
2093
Katya Nigam70d68332013-09-16 16:49:45 +05302094 REG_VARIABLE( CFG_VOS_TRACE_ENABLE_PMC_NAME, WLAN_PARAM_Integer,
2095 hdd_config_t, vosTraceEnablePMC,
2096 VAR_FLAGS_OPTIONAL,
2097 CFG_VOS_TRACE_ENABLE_DEFAULT,
2098 CFG_VOS_TRACE_ENABLE_MIN,
2099 CFG_VOS_TRACE_ENABLE_MAX ),
2100
Varun Reddy Yeturu587e6802013-01-24 12:21:41 -08002101 REG_VARIABLE( CFG_VOS_TRACE_ENABLE_WDA_NAME, WLAN_PARAM_Integer,
2102 hdd_config_t, vosTraceEnableWDA,
2103 VAR_FLAGS_OPTIONAL,
2104 CFG_VOS_TRACE_ENABLE_DEFAULT,
2105 CFG_VOS_TRACE_ENABLE_MIN,
2106 CFG_VOS_TRACE_ENABLE_MAX ),
2107
2108 REG_VARIABLE( CFG_VOS_TRACE_ENABLE_SYS_NAME, WLAN_PARAM_Integer,
2109 hdd_config_t, vosTraceEnableSYS,
2110 VAR_FLAGS_OPTIONAL,
2111 CFG_VOS_TRACE_ENABLE_DEFAULT,
2112 CFG_VOS_TRACE_ENABLE_MIN,
2113 CFG_VOS_TRACE_ENABLE_MAX ),
2114
2115 REG_VARIABLE( CFG_VOS_TRACE_ENABLE_VOSS_NAME, WLAN_PARAM_Integer,
2116 hdd_config_t, vosTraceEnableVOSS,
2117 VAR_FLAGS_OPTIONAL,
2118 CFG_VOS_TRACE_ENABLE_DEFAULT,
2119 CFG_VOS_TRACE_ENABLE_MIN,
2120 CFG_VOS_TRACE_ENABLE_MAX ),
2121
Varun Reddy Yeturu587e6802013-01-24 12:21:41 -08002122 REG_VARIABLE( CFG_VOS_TRACE_ENABLE_SAP_NAME, WLAN_PARAM_Integer,
2123 hdd_config_t, vosTraceEnableSAP,
2124 VAR_FLAGS_OPTIONAL,
2125 CFG_VOS_TRACE_ENABLE_DEFAULT,
2126 CFG_VOS_TRACE_ENABLE_MIN,
2127 CFG_VOS_TRACE_ENABLE_MAX ),
2128
2129 REG_VARIABLE( CFG_VOS_TRACE_ENABLE_HDD_SAP_NAME, WLAN_PARAM_Integer,
2130 hdd_config_t, vosTraceEnableHDDSAP,
2131 VAR_FLAGS_OPTIONAL,
2132 CFG_VOS_TRACE_ENABLE_DEFAULT,
2133 CFG_VOS_TRACE_ENABLE_MIN,
2134 CFG_VOS_TRACE_ENABLE_MAX ),
Jeff Johnson295189b2012-06-20 16:38:30 -07002135
Jeff Johnson295189b2012-06-20 16:38:30 -07002136 /* note that since the default value is out of range we cannot
2137 enable range check, otherwise we get a system log message */
2138 REG_VARIABLE( CFG_WDI_TRACE_ENABLE_DAL_NAME, WLAN_PARAM_Integer,
2139 hdd_config_t, wdiTraceEnableDAL,
2140 VAR_FLAGS_OPTIONAL,
2141 CFG_WDI_TRACE_ENABLE_DEFAULT,
2142 CFG_WDI_TRACE_ENABLE_MIN,
2143 CFG_WDI_TRACE_ENABLE_MAX ),
2144
2145 REG_VARIABLE( CFG_WDI_TRACE_ENABLE_CTL_NAME, WLAN_PARAM_Integer,
2146 hdd_config_t, wdiTraceEnableCTL,
2147 VAR_FLAGS_OPTIONAL,
2148 CFG_WDI_TRACE_ENABLE_DEFAULT,
2149 CFG_WDI_TRACE_ENABLE_MIN,
2150 CFG_WDI_TRACE_ENABLE_MAX ),
2151
2152 REG_VARIABLE( CFG_WDI_TRACE_ENABLE_DAT_NAME, WLAN_PARAM_Integer,
2153 hdd_config_t, wdiTraceEnableDAT,
2154 VAR_FLAGS_OPTIONAL,
2155 CFG_WDI_TRACE_ENABLE_DEFAULT,
2156 CFG_WDI_TRACE_ENABLE_MIN,
2157 CFG_WDI_TRACE_ENABLE_MAX ),
2158
2159 REG_VARIABLE( CFG_WDI_TRACE_ENABLE_PAL_NAME, WLAN_PARAM_Integer,
2160 hdd_config_t, wdiTraceEnablePAL,
2161 VAR_FLAGS_OPTIONAL,
2162 CFG_WDI_TRACE_ENABLE_DEFAULT,
2163 CFG_WDI_TRACE_ENABLE_MIN,
2164 CFG_WDI_TRACE_ENABLE_MAX ),
Jeff Johnson295189b2012-06-20 16:38:30 -07002165
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002166 REG_VARIABLE( CFG_TELE_BCN_TRANS_LI_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002167 hdd_config_t, nTeleBcnTransListenInterval,
2168 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2169 CFG_TELE_BCN_TRANS_LI_DEFAULT,
2170 CFG_TELE_BCN_TRANS_LI_MIN,
2171 CFG_TELE_BCN_TRANS_LI_MAX ),
Jeff Johnson295189b2012-06-20 16:38:30 -07002172
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002173 REG_VARIABLE( CFG_TELE_BCN_TRANS_LI_NUM_IDLE_BCNS_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002174 hdd_config_t, nTeleBcnTransLiNumIdleBeacons,
2175 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2176 CFG_TELE_BCN_TRANS_LI_NUM_IDLE_BCNS_DEFAULT,
2177 CFG_TELE_BCN_TRANS_LI_NUM_IDLE_BCNS_MIN,
2178 CFG_TELE_BCN_TRANS_LI_NUM_IDLE_BCNS_MAX ),
Jeff Johnson295189b2012-06-20 16:38:30 -07002179
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002180 REG_VARIABLE( CFG_TELE_BCN_MAX_LI_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002181 hdd_config_t, nTeleBcnMaxListenInterval,
2182 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2183 CFG_TELE_BCN_MAX_LI_DEFAULT,
2184 CFG_TELE_BCN_MAX_LI_MIN,
2185 CFG_TELE_BCN_MAX_LI_MAX ),
Jeff Johnson295189b2012-06-20 16:38:30 -07002186
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002187 REG_VARIABLE( CFG_TELE_BCN_MAX_LI_NUM_IDLE_BCNS_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002188 hdd_config_t, nTeleBcnMaxLiNumIdleBeacons,
2189 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2190 CFG_TELE_BCN_MAX_LI_NUM_IDLE_BCNS_DEFAULT,
2191 CFG_TELE_BCN_MAX_LI_NUM_IDLE_BCNS_MIN,
2192 CFG_TELE_BCN_MAX_LI_NUM_IDLE_BCNS_MAX ),
Jeff Johnson295189b2012-06-20 16:38:30 -07002193
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002194 REG_VARIABLE( CFG_BCN_EARLY_TERM_WAKE_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002195 hdd_config_t, bcnEarlyTermWakeInterval,
2196 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2197 CFG_BCN_EARLY_TERM_WAKE_DEFAULT,
2198 CFG_BCN_EARLY_TERM_WAKE_MIN,
2199 CFG_BCN_EARLY_TERM_WAKE_MAX ),
Jeff Johnson295189b2012-06-20 16:38:30 -07002200
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002201 REG_VARIABLE( CFG_AP_DATA_AVAIL_POLL_PERIOD_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002202 hdd_config_t, apDataAvailPollPeriodInMs,
2203 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2204 CFG_AP_DATA_AVAIL_POLL_PERIOD_DEFAULT,
2205 CFG_AP_DATA_AVAIL_POLL_PERIOD_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07002206 CFG_AP_DATA_AVAIL_POLL_PERIOD_MAX ),
2207
2208 REG_VARIABLE( CFG_ENABLE_CLOSE_LOOP_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002209 hdd_config_t, enableCloseLoop,
2210 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2211 CFG_ENABLE_CLOSE_LOOP_DEFAULT,
2212 CFG_ENABLE_CLOSE_LOOP_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07002213 CFG_ENABLE_CLOSE_LOOP_MAX ),
2214
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002215 REG_VARIABLE( CFG_ENABLE_BYPASS_11D_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002216 hdd_config_t, enableBypass11d,
2217 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2218 CFG_ENABLE_BYPASS_11D_DEFAULT,
2219 CFG_ENABLE_BYPASS_11D_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07002220 CFG_ENABLE_BYPASS_11D_MAX ),
2221
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002222 REG_VARIABLE( CFG_ENABLE_DFS_CHNL_SCAN_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002223 hdd_config_t, enableDFSChnlScan,
2224 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2225 CFG_ENABLE_DFS_CHNL_SCAN_DEFAULT,
2226 CFG_ENABLE_DFS_CHNL_SCAN_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07002227 CFG_ENABLE_DFS_CHNL_SCAN_MAX ),
2228
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002229 REG_VARIABLE( CFG_ENABLE_DYNAMIC_DTIM_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002230 hdd_config_t, enableDynamicDTIM,
2231 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2232 CFG_ENABLE_DYNAMIC_DTIM_DEFAULT,
2233 CFG_ENABLE_DYNAMIC_DTIM_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07002234 CFG_ENABLE_DYNAMIC_DTIM_MAX ),
2235
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002236 REG_VARIABLE( CFG_ENABLE_AUTOMATIC_TX_POWER_CONTROL_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002237 hdd_config_t, enableAutomaticTxPowerControl,
2238 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2239 CFG_ENABLE_AUTOMATIC_TX_POWER_CONTROL_DEFAULT,
2240 CFG_ENABLE_AUTOMATIC_TX_POWER_CONTROL_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07002241 CFG_ENABLE_AUTOMATIC_TX_POWER_CONTROL_MAX ),
2242
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002243 REG_VARIABLE( CFG_SHORT_GI_40MHZ_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002244 hdd_config_t, ShortGI40MhzEnable,
2245 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2246 CFG_SHORT_GI_40MHZ_DEFAULT,
2247 CFG_SHORT_GI_40MHZ_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07002248 CFG_SHORT_GI_40MHZ_MAX ),
2249
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002250 REG_DYNAMIC_VARIABLE( CFG_REPORT_MAX_LINK_SPEED, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002251 hdd_config_t, reportMaxLinkSpeed,
2252 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2253 CFG_REPORT_MAX_LINK_SPEED_DEFAULT,
2254 CFG_REPORT_MAX_LINK_SPEED_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07002255 CFG_REPORT_MAX_LINK_SPEED_MAX,
2256 NULL, 0 ),
2257
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002258 REG_DYNAMIC_VARIABLE( CFG_LINK_SPEED_RSSI_HIGH, WLAN_PARAM_SignedInteger,
Jeff Johnson295189b2012-06-20 16:38:30 -07002259 hdd_config_t, linkSpeedRssiHigh,
2260 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2261 CFG_LINK_SPEED_RSSI_HIGH_DEFAULT,
2262 CFG_LINK_SPEED_RSSI_HIGH_MIN,
2263 CFG_LINK_SPEED_RSSI_HIGH_MAX,
2264 NULL, 0 ),
2265
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002266 REG_DYNAMIC_VARIABLE( CFG_LINK_SPEED_RSSI_MID, WLAN_PARAM_SignedInteger,
Madan Mohan Koyyalamudi8df78d52012-11-02 12:30:06 -07002267 hdd_config_t, linkSpeedRssiMid,
2268 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2269 CFG_LINK_SPEED_RSSI_MID_DEFAULT,
2270 CFG_LINK_SPEED_RSSI_MID_MIN,
2271 CFG_LINK_SPEED_RSSI_MID_MAX,
2272 NULL, 0 ),
2273
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002274 REG_DYNAMIC_VARIABLE( CFG_LINK_SPEED_RSSI_LOW, WLAN_PARAM_SignedInteger,
Jeff Johnson295189b2012-06-20 16:38:30 -07002275 hdd_config_t, linkSpeedRssiLow,
2276 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2277 CFG_LINK_SPEED_RSSI_LOW_DEFAULT,
2278 CFG_LINK_SPEED_RSSI_LOW_MIN,
2279 CFG_LINK_SPEED_RSSI_LOW_MAX,
2280 NULL, 0 ),
2281
Madan Mohan Koyyalamudid5026072012-11-30 14:56:21 -08002282#if defined (WLAN_FEATURE_VOWIFI_11R) || defined (FEATURE_WLAN_CCX) || defined(FEATURE_WLAN_LFR)
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002283 REG_DYNAMIC_VARIABLE( CFG_ROAM_PREFER_5GHZ, WLAN_PARAM_Integer,
Madan Mohan Koyyalamudid5026072012-11-30 14:56:21 -08002284 hdd_config_t, nRoamPrefer5GHz,
2285 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2286 CFG_ROAM_PREFER_5GHZ_DEFAULT,
2287 CFG_ROAM_PREFER_5GHZ_MIN,
2288 CFG_ROAM_PREFER_5GHZ_MAX,
2289 cbNotifySetRoamPrefer5GHz, 0 ),
Srinivas Girigowdabbd16eb2013-03-21 12:34:46 -07002290
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002291 REG_DYNAMIC_VARIABLE( CFG_ROAM_INTRA_BAND, WLAN_PARAM_Integer,
Srinivas Girigowdabbd16eb2013-03-21 12:34:46 -07002292 hdd_config_t, nRoamIntraBand,
2293 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2294 CFG_ROAM_INTRA_BAND_DEFAULT,
2295 CFG_ROAM_INTRA_BAND_MIN,
2296 CFG_ROAM_INTRA_BAND_MAX,
2297 cbNotifySetRoamIntraBand, 0 ),
2298
Varun Reddy Yeturu920df212013-05-22 08:07:23 -07002299 REG_DYNAMIC_VARIABLE( CFG_ROAM_SCAN_N_PROBES, WLAN_PARAM_Integer,
2300 hdd_config_t, nProbes,
2301 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2302 CFG_ROAM_SCAN_N_PROBES_DEFAULT,
2303 CFG_ROAM_SCAN_N_PROBES_MIN,
2304 CFG_ROAM_SCAN_N_PROBES_MAX,
2305 cbNotifySetRoamScanNProbes, 0 ),
2306
2307 REG_DYNAMIC_VARIABLE( CFG_ROAM_SCAN_HOME_AWAY_TIME, WLAN_PARAM_Integer,
2308 hdd_config_t, nRoamScanHomeAwayTime,
2309 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2310 CFG_ROAM_SCAN_HOME_AWAY_TIME_DEFAULT,
2311 CFG_ROAM_SCAN_HOME_AWAY_TIME_MIN,
2312 CFG_ROAM_SCAN_HOME_AWAY_TIME_MAX,
2313 cbNotifySetRoamScanHomeAwayTime, 0 ),
2314
Madan Mohan Koyyalamudid5026072012-11-30 14:56:21 -08002315#endif
2316
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002317 REG_VARIABLE( CFG_P2P_DEVICE_ADDRESS_ADMINISTRATED_NAME, WLAN_PARAM_Integer,
Jeff Johnson295189b2012-06-20 16:38:30 -07002318 hdd_config_t, isP2pDeviceAddrAdministrated,
2319 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2320 CFG_P2P_DEVICE_ADDRESS_ADMINISTRATED_DEFAULT,
2321 CFG_P2P_DEVICE_ADDRESS_ADMINISTRATED_MIN,
2322 CFG_P2P_DEVICE_ADDRESS_ADMINISTRATED_MAX ),
Jeff Johnson295189b2012-06-20 16:38:30 -07002323
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002324 REG_VARIABLE( CFG_ENABLE_MCC_ENABLED_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002325 hdd_config_t, enableMCC,
2326 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2327 CFG_ENABLE_MCC_ENABLED_DEFAULT,
2328 CFG_ENABLE_MCC_ENABLED_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07002329 CFG_ENABLE_MCC_ENABLED_MAX ),
2330
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002331 REG_VARIABLE( CFG_ALLOW_MCC_GO_DIFF_BI_NAME, WLAN_PARAM_Integer,
Mohit Khanna7ed53f02012-09-11 17:52:10 -07002332 hdd_config_t, allowMCCGODiffBI,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002333 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2334 CFG_ALLOW_MCC_GO_DIFF_BI_DEFAULT,
2335 CFG_ALLOW_MCC_GO_DIFF_BI_MIN,
2336 CFG_ALLOW_MCC_GO_DIFF_BI_MAX ),
Mohit Khanna7ed53f02012-09-11 17:52:10 -07002337
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002338 REG_VARIABLE( CFG_THERMAL_MIGRATION_ENABLE_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002339 hdd_config_t, thermalMitigationEnable,
2340 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2341 CFG_THERMAL_MIGRATION_ENABLE_DEFAULT,
2342 CFG_THERMAL_MIGRATION_ENABLE_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07002343 CFG_THERMAL_MIGRATION_ENABLE_MAX ),
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002344
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002345 REG_VARIABLE( CFG_ENABLE_MODULATED_DTIM_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002346 hdd_config_t, enableModulatedDTIM,
2347 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2348 CFG_ENABLE_MODULATED_DTIM_DEFAULT,
2349 CFG_ENABLE_MODULATED_DTIM_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07002350 CFG_ENABLE_MODULATED_DTIM_MAX ),
2351
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002352 REG_VARIABLE( CFG_MC_ADDR_LIST_ENABLE_NAME, WLAN_PARAM_Integer,
Jeff Johnsond13512a2012-07-17 11:42:19 -07002353 hdd_config_t, fEnableMCAddrList,
2354 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2355 CFG_MC_ADDR_LIST_ENABLE_DEFAULT,
2356 CFG_MC_ADDR_LIST_ENABLE_MIN,
2357 CFG_MC_ADDR_LIST_ENABLE_MAX ),
2358
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002359#ifdef WLAN_FEATURE_11AC
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002360 REG_VARIABLE( CFG_VHT_CHANNEL_WIDTH, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002361 hdd_config_t, vhtChannelWidth,
2362 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK,
2363 CFG_VHT_CHANNEL_WIDTH_DEFAULT,
2364 CFG_VHT_CHANNEL_WIDTH_MIN,
Jeff Johnsone7245742012-09-05 17:12:55 -07002365 CFG_VHT_CHANNEL_WIDTH_MAX),
2366
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002367 REG_VARIABLE( CFG_VHT_ENABLE_RX_MCS_8_9, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002368 hdd_config_t, vhtRxMCS,
2369 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK,
2370 CFG_VHT_ENABLE_RX_MCS_8_9_DEFAULT,
2371 CFG_VHT_ENABLE_RX_MCS_8_9_MIN,
Jeff Johnsone7245742012-09-05 17:12:55 -07002372 CFG_VHT_ENABLE_RX_MCS_8_9_MAX),
2373
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002374 REG_VARIABLE( CFG_VHT_ENABLE_TX_MCS_8_9, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002375 hdd_config_t, vhtTxMCS,
2376 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK,
2377 CFG_VHT_ENABLE_TX_MCS_8_9_DEFAULT,
2378 CFG_VHT_ENABLE_TX_MCS_8_9_MIN,
Jeff Johnsone7245742012-09-05 17:12:55 -07002379 CFG_VHT_ENABLE_TX_MCS_8_9_MAX),
2380#endif
2381
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002382 REG_VARIABLE( CFG_ENABLE_FIRST_SCAN_2G_ONLY_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002383 hdd_config_t, enableFirstScan2GOnly,
2384 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2385 CFG_ENABLE_FIRST_SCAN_2G_ONLY_DEFAULT,
2386 CFG_ENABLE_FIRST_SCAN_2G_ONLY_MIN,
Jeff Johnsone7245742012-09-05 17:12:55 -07002387 CFG_ENABLE_FIRST_SCAN_2G_ONLY_MAX ),
2388
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002389 REG_VARIABLE( CFG_ENABLE_SKIP_DFS_IN_P2P_SEARCH_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002390 hdd_config_t, skipDfsChnlInP2pSearch,
2391 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2392 CFG_ENABLE_SKIP_DFS_IN_P2P_SEARCH_DEFAULT,
2393 CFG_ENABLE_SKIP_DFS_IN_P2P_SEARCH_MIN,
Jeff Johnsone7245742012-09-05 17:12:55 -07002394 CFG_ENABLE_SKIP_DFS_IN_P2P_SEARCH_MAX ),
2395
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002396 REG_VARIABLE( CFG_IGNORE_DYNAMIC_DTIM_IN_P2P_MODE_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002397 hdd_config_t, ignoreDynamicDtimInP2pMode,
2398 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2399 CFG_IGNORE_DYNAMIC_DTIM_IN_P2P_MODE_DEFAULT,
2400 CFG_IGNORE_DYNAMIC_DTIM_IN_P2P_MODE_MIN,
Jeff Johnsone7245742012-09-05 17:12:55 -07002401 CFG_IGNORE_DYNAMIC_DTIM_IN_P2P_MODE_MAX ),
2402
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002403 REG_VARIABLE( CFG_NUM_BUFF_ADVERT_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002404 hdd_config_t,numBuffAdvert ,
2405 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK,
2406 CFG_NUM_BUFF_ADVERT_DEFAULT,
2407 CFG_NUM_BUFF_ADVERT_MIN,
Madan Mohan Koyyalamudidd11eaf2012-11-02 16:04:21 -07002408 CFG_NUM_BUFF_ADVERT_MAX ),
Madan Mohan Koyyalamudi3f65e312012-11-06 15:31:12 -08002409
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002410 REG_VARIABLE( CFG_MCC_CONFIG_PARAM_NAME, WLAN_PARAM_Integer,
Madan Mohan Koyyalamudid5f04ca2012-11-06 15:51:26 -08002411 hdd_config_t, configMccParam,
2412 VAR_FLAGS_OPTIONAL,
2413 CFG_MCC_CONFIG_PARAM_DEFAULT,
2414 CFG_MCC_CONFIG_PARAM_MIN,
2415 CFG_MCC_CONFIG_PARAM_MAX ),
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002416 REG_VARIABLE( CFG_ENABLE_RX_STBC, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002417 hdd_config_t, enableRxSTBC,
2418 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2419 CFG_ENABLE_RX_STBC_DEFAULT,
2420 CFG_ENABLE_RX_STBC_MIN,
Pratik Bhalgat6bfd1422012-11-22 17:09:40 +05302421 CFG_ENABLE_RX_STBC_MAX ),
Mohit Khanna698ba2a2012-12-04 15:08:18 -08002422#ifdef FEATURE_WLAN_TDLS
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002423 REG_VARIABLE( CFG_TDLS_SUPPORT_ENABLE, WLAN_PARAM_Integer,
Mohit Khanna698ba2a2012-12-04 15:08:18 -08002424 hdd_config_t, fEnableTDLSSupport,
2425 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2426 CFG_TDLS_SUPPORT_ENABLE_DEFAULT,
2427 CFG_TDLS_SUPPORT_ENABLE_MIN,
2428 CFG_TDLS_SUPPORT_ENABLE_MAX ),
Hoonki Leebf870f32013-01-19 15:53:30 +05302429
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002430 REG_VARIABLE( CFG_TDLS_IMPLICIT_TRIGGER, WLAN_PARAM_Integer,
Hoonki Leebf870f32013-01-19 15:53:30 +05302431 hdd_config_t, fEnableTDLSImplicitTrigger,
2432 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2433 CFG_TDLS_IMPLICIT_TRIGGER_DEFAULT,
2434 CFG_TDLS_IMPLICIT_TRIGGER_MIN,
2435 CFG_TDLS_IMPLICIT_TRIGGER_MAX ),
2436
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002437 REG_VARIABLE( CFG_TDLS_TX_STATS_PERIOD, WLAN_PARAM_Integer,
Hoonki Leebf870f32013-01-19 15:53:30 +05302438 hdd_config_t, fTDLSTxStatsPeriod,
2439 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2440 CFG_TDLS_TX_STATS_PERIOD_DEFAULT,
2441 CFG_TDLS_TX_STATS_PERIOD_MIN,
2442 CFG_TDLS_TX_STATS_PERIOD_MAX ),
2443
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002444 REG_VARIABLE( CFG_TDLS_TX_PACKET_THRESHOLD, WLAN_PARAM_Integer,
Hoonki Leebf870f32013-01-19 15:53:30 +05302445 hdd_config_t, fTDLSTxPacketThreshold,
2446 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2447 CFG_TDLS_TX_PACKET_THRESHOLD_DEFAULT,
2448 CFG_TDLS_TX_PACKET_THRESHOLD_MIN,
2449 CFG_TDLS_TX_PACKET_THRESHOLD_MAX ),
2450
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002451 REG_VARIABLE( CFG_TDLS_DISCOVERY_PERIOD, WLAN_PARAM_Integer,
Hoonki Leebf870f32013-01-19 15:53:30 +05302452 hdd_config_t, fTDLSDiscoveryPeriod,
2453 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2454 CFG_TDLS_DISCOVERY_PERIOD_DEFAULT,
2455 CFG_TDLS_DISCOVERY_PERIOD_MIN,
2456 CFG_TDLS_DISCOVERY_PERIOD_MAX ),
2457
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002458 REG_VARIABLE( CFG_TDLS_MAX_DISCOVERY_ATTEMPT, WLAN_PARAM_Integer,
Hoonki Leebf870f32013-01-19 15:53:30 +05302459 hdd_config_t, fTDLSMaxDiscoveryAttempt,
2460 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2461 CFG_TDLS_MAX_DISCOVERY_ATTEMPT_DEFAULT,
2462 CFG_TDLS_MAX_DISCOVERY_ATTEMPT_MIN,
2463 CFG_TDLS_MAX_DISCOVERY_ATTEMPT_MAX ),
2464
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002465 REG_VARIABLE( CFG_TDLS_IDLE_TIMEOUT, WLAN_PARAM_Integer,
Chilam Ng01120412013-02-19 18:32:21 -08002466 hdd_config_t, fTDLSIdleTimeout,
Hoonki Leebf870f32013-01-19 15:53:30 +05302467 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
Chilam Ng01120412013-02-19 18:32:21 -08002468 CFG_TDLS_IDLE_TIMEOUT_DEFAULT,
2469 CFG_TDLS_IDLE_TIMEOUT_MIN,
2470 CFG_TDLS_IDLE_TIMEOUT_MAX ),
2471
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002472 REG_VARIABLE( CFG_TDLS_IDLE_PACKET_THRESHOLD, WLAN_PARAM_Integer,
Chilam Ng01120412013-02-19 18:32:21 -08002473 hdd_config_t, fTDLSIdlePacketThreshold,
2474 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2475 CFG_TDLS_IDLE_PACKET_THRESHOLD_DEFAULT,
2476 CFG_TDLS_IDLE_PACKET_THRESHOLD_MIN,
2477 CFG_TDLS_IDLE_PACKET_THRESHOLD_MAX ),
Hoonki Leebf870f32013-01-19 15:53:30 +05302478
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002479 REG_VARIABLE( CFG_TDLS_RSSI_HYSTERESIS, WLAN_PARAM_Integer,
Chilam Ng01120412013-02-19 18:32:21 -08002480 hdd_config_t, fTDLSRSSIHysteresis,
Hoonki Leebf870f32013-01-19 15:53:30 +05302481 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2482 CFG_TDLS_RSSI_HYSTERESIS_DEFAULT,
2483 CFG_TDLS_RSSI_HYSTERESIS_MIN,
2484 CFG_TDLS_RSSI_HYSTERESIS_MAX ),
Chilam Ng01120412013-02-19 18:32:21 -08002485
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002486 REG_VARIABLE( CFG_TDLS_RSSI_TRIGGER_THRESHOLD, WLAN_PARAM_SignedInteger,
Chilam Ng01120412013-02-19 18:32:21 -08002487 hdd_config_t, fTDLSRSSITriggerThreshold,
2488 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2489 CFG_TDLS_RSSI_TRIGGER_THRESHOLD_DEFAULT,
2490 CFG_TDLS_RSSI_TRIGGER_THRESHOLD_MIN,
2491 CFG_TDLS_RSSI_TRIGGER_THRESHOLD_MAX ),
2492
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002493 REG_VARIABLE( CFG_TDLS_RSSI_TEARDOWN_THRESHOLD, WLAN_PARAM_SignedInteger,
Chilam Ng01120412013-02-19 18:32:21 -08002494 hdd_config_t, fTDLSRSSITeardownThreshold,
2495 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2496 CFG_TDLS_RSSI_TEARDOWN_THRESHOLD_DEFAULT,
2497 CFG_TDLS_RSSI_TEARDOWN_THRESHOLD_MIN,
2498 CFG_TDLS_RSSI_TEARDOWN_THRESHOLD_MAX ),
Gopichand Nakkala79ff85d2013-05-27 17:05:29 +05302499
2500REG_VARIABLE( CFG_TDLS_QOS_WMM_UAPSD_MASK_NAME , WLAN_PARAM_HexInteger,
2501 hdd_config_t, fTDLSUapsdMask,
2502 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2503 CFG_TDLS_QOS_WMM_UAPSD_MASK_DEFAULT,
2504 CFG_TDLS_QOS_WMM_UAPSD_MASK_MIN,
2505 CFG_TDLS_QOS_WMM_UAPSD_MASK_MAX ),
2506
2507REG_VARIABLE( CFG_TDLS_BUFFER_STA_SUPPORT_ENABLE, WLAN_PARAM_Integer,
2508 hdd_config_t, fEnableTDLSBufferSta,
2509 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2510 CFG_TDLS_BUFFER_STA_SUPPORT_ENABLE_DEFAULT,
2511 CFG_TDLS_BUFFER_STA_SUPPORT_ENABLE_MIN,
2512 CFG_TDLS_BUFFER_STA_SUPPORT_ENABLE_MAX ),
2513
Naresh Jayaramf73f3762014-02-04 16:13:20 +05302514REG_VARIABLE( CFG_TDLS_OFF_CHANNEL_SUPPORT_ENABLE, WLAN_PARAM_Integer,
2515 hdd_config_t, fEnableTDLSOffChannel,
2516 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2517 CFG_TDLS_OFF_CHANNEL_SUPPORT_ENABLE_DEFAULT,
2518 CFG_TDLS_OFF_CHANNEL_SUPPORT_ENABLE_MIN,
2519 CFG_TDLS_OFF_CHANNEL_SUPPORT_ENABLE_MAX ),
2520
Gopichand Nakkala79ff85d2013-05-27 17:05:29 +05302521REG_VARIABLE( CFG_TDLS_PUAPSD_INACTIVITY_TIME, WLAN_PARAM_Integer,
2522 hdd_config_t, fTDLSPuapsdInactivityTimer,
2523 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2524 CFG_TDLS_PUAPSD_INACTIVITY_TIME_DEFAULT,
2525 CFG_TDLS_PUAPSD_INACTIVITY_TIME_MIN,
2526 CFG_TDLS_PUAPSD_INACTIVITY_TIME_MAX ),
2527
2528REG_VARIABLE( CFG_TDLS_PUAPSD_RX_FRAME_THRESHOLD, WLAN_PARAM_Integer,
2529 hdd_config_t, fTDLSRxFrameThreshold,
2530 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2531 CFG_TDLS_PUAPSD_RX_FRAME_THRESHOLD_DEFAULT,
2532 CFG_TDLS_PUAPSD_RX_FRAME_THRESHOLD_MIN,
2533 CFG_TDLS_PUAPSD_RX_FRAME_THRESHOLD_MAX ),
Sunil Dutt41de4e22013-11-14 18:09:02 +05302534
2535REG_VARIABLE( CFG_TDLS_EXTERNAL_CONTROL, WLAN_PARAM_Integer,
2536 hdd_config_t, fTDLSExternalControl,
2537 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2538 CFG_TDLS_EXTERNAL_CONTROL_DEFAULT,
2539 CFG_TDLS_EXTERNAL_CONTROL_MIN,
2540 CFG_TDLS_EXTERNAL_CONTROL_MAX ),
Mohit Khanna698ba2a2012-12-04 15:08:18 -08002541#endif
Madan Mohan Koyyalamudi0d40e662012-12-07 14:24:14 -08002542
Gopichand Nakkala976e3252013-01-03 15:45:56 -08002543#ifdef WLAN_SOFTAP_VSTA_FEATURE
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002544 REG_VARIABLE( CFG_VSTA_SUPPORT_ENABLE, WLAN_PARAM_Integer,
Gopichand Nakkala976e3252013-01-03 15:45:56 -08002545 hdd_config_t, fEnableVSTASupport,
2546 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2547 CFG_VSTA_SUPPORT_ENABLE_DEFAULT,
2548 CFG_VSTA_SUPPORT_ENABLE_MIN,
2549 CFG_VSTA_SUPPORT_ENABLE_MAX ),
2550#endif
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002551 REG_VARIABLE( CFG_ENABLE_LPWR_IMG_TRANSITION_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002552 hdd_config_t, enableLpwrImgTransition,
2553 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2554 CFG_ENABLE_LPWR_IMG_TRANSITION_DEFAULT,
2555 CFG_ENABLE_LPWR_IMG_TRANSITION_MIN,
Madan Mohan Koyyalamudi0d40e662012-12-07 14:24:14 -08002556 CFG_ENABLE_LPWR_IMG_TRANSITION_MAX ),
2557
Yathish9f22e662012-12-10 14:21:35 -08002558#ifdef WLAN_ACTIVEMODE_OFFLOAD_FEATURE
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002559 REG_VARIABLE( CFG_ACTIVEMODE_OFFLOAD_ENABLE, WLAN_PARAM_Integer,
Yathish9f22e662012-12-10 14:21:35 -08002560 hdd_config_t, fEnableActiveModeOffload,
2561 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2562 CFG_ACTIVEMODE_OFFLOAD_ENABLE_DEFAULT,
2563 CFG_ACTIVEMODE_OFFLOAD_ENABLE_MIN,
2564 CFG_ACTIVEMODE_OFFLOAD_ENABLE_MAX ),
2565#endif
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002566 REG_VARIABLE( CFG_ENABLE_LPWR_IMG_TRANSITION_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002567 hdd_config_t, enableLpwrImgTransition,
2568 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2569 CFG_ENABLE_LPWR_IMG_TRANSITION_DEFAULT,
2570 CFG_ENABLE_LPWR_IMG_TRANSITION_MIN,
2571 CFG_ENABLE_LPWR_IMG_TRANSITION_MAX ),
2572
Sandeep Puligilla2b6dc632012-12-17 14:44:16 -08002573
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002574 REG_VARIABLE( CFG_SCAN_AGING_PARAM_NAME, WLAN_PARAM_Integer,
Sandeep Puligilla2b6dc632012-12-17 14:44:16 -08002575 hdd_config_t, scanAgingTimeout,
2576 VAR_FLAGS_OPTIONAL,
2577 CFG_SCAN_AGING_PARAM_DEFAULT,
2578 CFG_SCAN_AGING_PARAM_MIN,
2579 CFG_SCAN_AGING_PARAM_MAX ),
Gopichand Nakkalab2d2c312013-01-04 11:41:02 -08002580
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002581 REG_VARIABLE( CFG_TX_LDPC_ENABLE_FEATURE, WLAN_PARAM_Integer,
Gopichand Nakkalab2d2c312013-01-04 11:41:02 -08002582 hdd_config_t, enableTxLdpc,
2583 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2584 CFG_TX_LDPC_ENABLE_FEATURE_DEFAULT,
2585 CFG_TX_LDPC_ENABLE_FEATURE_MIN,
2586 CFG_TX_LDPC_ENABLE_FEATURE_MAX ),
2587
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002588 REG_VARIABLE( CFG_ENABLE_MCC_ADATIVE_SCHEDULER_ENABLED_NAME, WLAN_PARAM_Integer,
Madan Mohan Koyyalamudi69b34182013-01-16 08:51:40 +05302589 hdd_config_t, enableMCCAdaptiveScheduler,
2590 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2591 CFG_ENABLE_MCC_ADATIVE_SCHEDULER_ENABLED_DEFAULT,
2592 CFG_ENABLE_MCC_ADATIVE_SCHEDULER_ENABLED_MIN,
2593 CFG_ENABLE_MCC_ADATIVE_SCHEDULER_ENABLED_MAX ),
2594
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002595 REG_VARIABLE( CFG_ANDRIOD_POWER_SAVE_NAME, WLAN_PARAM_Integer,
Madan Mohan Koyyalamudi69b34182013-01-16 08:51:40 +05302596 hdd_config_t, isAndroidPsEn,
2597 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2598 CFG_ANDRIOD_POWER_SAVE_DEFAULT,
2599 CFG_ANDRIOD_POWER_SAVE_MIN,
2600 CFG_ANDRIOD_POWER_SAVE_MAX),
2601
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002602 REG_VARIABLE( CFG_IBSS_ADHOC_CHANNEL_5GHZ_NAME, WLAN_PARAM_Integer,
Shailender Karmuchia734f332013-04-19 14:02:48 -07002603 hdd_config_t, AdHocChannel5G,
2604 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2605 CFG_IBSS_ADHOC_CHANNEL_5GHZ_DEFAULT,
2606 CFG_IBSS_ADHOC_CHANNEL_5GHZ_MIN,
2607 CFG_IBSS_ADHOC_CHANNEL_5GHZ_MAX),
2608
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002609 REG_VARIABLE( CFG_IBSS_ADHOC_CHANNEL_24GHZ_NAME, WLAN_PARAM_Integer,
Shailender Karmuchia734f332013-04-19 14:02:48 -07002610 hdd_config_t, AdHocChannel24G,
2611 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2612 CFG_IBSS_ADHOC_CHANNEL_24GHZ_DEFAULT,
2613 CFG_IBSS_ADHOC_CHANNEL_24GHZ_MIN,
2614 CFG_IBSS_ADHOC_CHANNEL_24GHZ_MAX),
2615
2616
Shailender Karmuchi08f87c22013-01-17 12:51:24 -08002617#ifdef WLAN_FEATURE_11AC
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002618 REG_VARIABLE( CFG_VHT_SU_BEAMFORMEE_CAP_FEATURE, WLAN_PARAM_Integer,
Shailender Karmuchi08f87c22013-01-17 12:51:24 -08002619 hdd_config_t, enableTxBF,
2620 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2621 CFG_VHT_SU_BEAMFORMEE_CAP_FEATURE_DEFAULT,
2622 CFG_VHT_SU_BEAMFORMEE_CAP_FEATURE_MIN,
2623 CFG_VHT_SU_BEAMFORMEE_CAP_FEATURE_MAX ),
Shailender Karmuchicc3fe442013-02-16 18:18:33 -08002624
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002625 REG_VARIABLE( CFG_VHT_CSN_BEAMFORMEE_ANT_SUPPORTED, WLAN_PARAM_Integer,
Shailender Karmuchicc3fe442013-02-16 18:18:33 -08002626 hdd_config_t, txBFCsnValue,
2627 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2628 CFG_VHT_CSN_BEAMFORMEE_ANT_SUPPORTED_DEFAULT,
2629 CFG_VHT_CSN_BEAMFORMEE_ANT_SUPPORTED_MIN,
2630 CFG_VHT_CSN_BEAMFORMEE_ANT_SUPPORTED_MAX ),
2631
Shailender Karmuchi08f87c22013-01-17 12:51:24 -08002632#endif
Madan Mohan Koyylamudi64267f72013-02-05 14:07:08 +05302633
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002634 REG_VARIABLE( CFG_SAP_ALLOW_ALL_CHANNEL_PARAM_NAME, WLAN_PARAM_Integer,
Madan Mohan Koyylamudi64267f72013-02-05 14:07:08 +05302635 hdd_config_t, sapAllowAllChannel,
2636 VAR_FLAGS_OPTIONAL,
2637 CFG_SAP_ALLOW_ALL_CHANNEL_PARAM_DEFAULT,
2638 CFG_SAP_ALLOW_ALL_CHANNEL_PARAM_MIN,
2639 CFG_SAP_ALLOW_ALL_CHANNEL_PARAM_MAX ),
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002640
Leela V Kiran Kumar Reddy Chiralab1f7d342013-02-11 00:27:02 -08002641#ifdef WLAN_FEATURE_11AC
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002642 REG_VARIABLE( CFG_DISABLE_LDPC_WITH_TXBF_AP, WLAN_PARAM_Integer,
Leela V Kiran Kumar Reddy Chiralab1f7d342013-02-11 00:27:02 -08002643 hdd_config_t, disableLDPCWithTxbfAP,
2644 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2645 CFG_DISABLE_LDPC_WITH_TXBF_AP_DEFAULT,
2646 CFG_DISABLE_LDPC_WITH_TXBF_AP_MIN,
2647 CFG_DISABLE_LDPC_WITH_TXBF_AP_MAX ),
2648#endif
Tushnim Bhattacharyya9cdf6082013-04-21 16:33:30 -07002649
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002650 REG_VARIABLE_STRING( CFG_LIST_OF_NON_DFS_COUNTRY_CODE, WLAN_PARAM_String,
Tushnim Bhattacharyya9cdf6082013-04-21 16:33:30 -07002651 hdd_config_t, listOfNonDfsCountryCode,
2652 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2653 (void *)CFG_LIST_OF_NON_DFS_COUNTRY_CODE_DEFAULT),
2654
Gopichand Nakkalae620d5a2013-04-26 05:45:57 -07002655 REG_DYNAMIC_VARIABLE( CFG_ENABLE_SSR, WLAN_PARAM_Integer,
2656 hdd_config_t, enableSSR,
2657 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2658 CFG_ENABLE_SSR_DEFAULT,
2659 CFG_ENABLE_SSR_MIN,
2660 CFG_ENABLE_SSR_MAX,
2661 cbNotifySetEnableSSR, 0 ),
Gopichand Nakkaladacbcb52013-04-18 16:41:54 +05302662
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002663 REG_VARIABLE_STRING( CFG_LIST_OF_NON_11AC_COUNTRY_CODE, WLAN_PARAM_String,
Gopichand Nakkaladacbcb52013-04-18 16:41:54 +05302664 hdd_config_t, listOfNon11acCountryCode,
2665 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2666 (void *)CFG_LIST_OF_NON_11AC_COUNTRY_CODE_DEFAULT),
2667
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002668 REG_VARIABLE(CFG_MAX_MEDIUM_TIME, WLAN_PARAM_Integer,
Gopichand Nakkala42bc89e2013-05-27 12:49:09 +05302669 hdd_config_t, cfgMaxMediumTime,
2670 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2671 CFG_MAX_MEDIUM_TIME_STADEFAULT,
2672 CFG_MAX_MEDIUM_TIME_STAMIN,
2673 CFG_MAX_MEDIUM_TIME_STAMAX ),
2674
Leo Chang64d68bc2013-06-04 15:40:52 -07002675 REG_VARIABLE( CFG_ENABLE_TRAFFIC_MONITOR, WLAN_PARAM_Integer,
2676 hdd_config_t, enableTrafficMonitor,
2677 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2678 CFG_ENABLE_TRAFFIC_MONITOR_DEFAULT,
2679 CFG_ENABLE_TRAFFIC_MONITOR_MIN,
2680 CFG_ENABLE_TRAFFIC_MONITOR_MAX),
2681
2682 REG_VARIABLE( CFG_TRAFFIC_IDLE_TIMEOUT, WLAN_PARAM_Integer,
2683 hdd_config_t, trafficIdleTimeout,
2684 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2685 CFG_TRAFFIC_IDLE_TIMEOUT_DEFAULT,
2686 CFG_TRAFFIC_IDLE_TIMEOUT_MIN,
2687 CFG_TRAFFIC_IDLE_TIMEOUT_MAX),
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002688
2689#ifdef WLAN_FEATURE_11AC
2690 REG_VARIABLE( CFG_ENABLE_VHT_FOR_24GHZ_NAME, WLAN_PARAM_Integer,
2691 hdd_config_t, enableVhtFor24GHzBand,
2692 VAR_FLAGS_OPTIONAL,
2693 CFG_ENABLE_VHT_FOR_24GHZ_DEFAULT,
2694 CFG_ENABLE_VHT_FOR_24GHZ_MIN,
2695 CFG_ENABLE_VHT_FOR_24GHZ_MAX),
2696#endif
Gopichand Nakkala154bda22013-06-11 17:41:22 +05302697
2698 REG_VARIABLE( CFG_SCAN_OFFLOAD_NAME, WLAN_PARAM_Integer,
2699 hdd_config_t, fScanOffload,
2700 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2701 CFG_SCAN_OFFLOAD_DEFAULT,
2702 CFG_SCAN_OFFLOAD_DISABLE,
2703 CFG_SCAN_OFFLOAD_ENABLE ),
Srinivas Girigowda830bbd02013-06-13 19:44:16 -07002704
2705#ifdef WLAN_FEATURE_ROAM_SCAN_OFFLOAD
2706 REG_DYNAMIC_VARIABLE( CFG_ENABLE_FAST_ROAM_IN_CONCURRENCY, WLAN_PARAM_Integer,
2707 hdd_config_t, bFastRoamInConIniFeatureEnabled,
2708 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2709 CFG_ENABLE_FAST_ROAM_IN_CONCURRENCY_DEFAULT,
2710 CFG_ENABLE_FAST_ROAM_IN_CONCURRENCY_MIN,
2711 CFG_ENABLE_FAST_ROAM_IN_CONCURRENCY_MAX,
2712 cbNotifySetEnableFastRoamInConcurrency, 0 ),
2713#endif
2714
Sudhir Sattayappa Kohallida1be202013-07-11 12:04:30 -07002715 REG_VARIABLE( CFG_ENABLE_ADAPT_RX_DRAIN_NAME, WLAN_PARAM_Integer,
2716 hdd_config_t, fEnableAdaptRxDrain,
2717 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK ,
2718 CFG_ENABLE_ADAPT_RX_DRAIN_DEFAULT,
2719 CFG_ENABLE_ADAPT_RX_DRAIN_MIN,
2720 CFG_ENABLE_ADAPT_RX_DRAIN_MAX),
2721
Sudhir Sattayappa Kohalli37620692013-08-05 14:02:26 -07002722 REG_VARIABLE( CFG_DYNAMIC_SPLIT_SCAN_NAME, WLAN_PARAM_Integer,
2723 hdd_config_t, dynSplitscan,
2724 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2725 CFG_DYNAMIC_SPLIT_SCAN_DEFAULT,
2726 CFG_DYNAMIC_SPLIT_SCAN_MIN,
2727 CFG_DYNAMIC_SPLIT_SCAN_MAX ),
2728
2729 REG_VARIABLE( CFG_SPLIT_SCAN_TRAFFIC_MONITOR_THRSHLD_NAME, WLAN_PARAM_Integer,
2730 hdd_config_t, txRxThresholdForSplitScan,
2731 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2732 CFG_SPLIT_SCAN_TRAFFIC_MONITOR_THRSHLD_DEFAULT,
2733 CFG_SPLIT_SCAN_TRAFFIC_MONITOR_THRSHLD_MIN,
2734 CFG_SPLIT_SCAN_TRAFFIC_MONITOR_THRSHLD_MAX ),
2735
2736 REG_VARIABLE( CFG_SPLIT_SCAN_TRAFFIC_MONITOR_TIMER_NAME, WLAN_PARAM_Integer,
2737 hdd_config_t, trafficMntrTmrForSplitScan,
2738 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2739 CFG_SPLIT_SCAN_TRAFFIC_MONITOR_TIMER_DEFAULT,
2740 CFG_SPLIT_SCAN_TRAFFIC_MONITOR_TIMER_MIN,
2741 CFG_SPLIT_SCAN_TRAFFIC_MONITOR_TIMER_MAX ),
2742
Yue Ma0fd23872013-08-01 15:56:47 -07002743 REG_VARIABLE( CFG_FLEX_CONNECT_POWER_FACTOR_NAME, WLAN_PARAM_Integer,
2744 hdd_config_t, flexConnectPowerFactor,
2745 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_MINMAX,
2746 CFG_FLEX_CONNECT_POWER_FACTOR_DEFAULT,
2747 CFG_FLEX_CONNECT_POWER_FACTOR_MIN,
2748 CFG_FLEX_CONNECT_POWER_FACTOR_MAX ),
2749
Ravi Joshid2ca7c42013-07-23 08:37:49 -07002750 REG_VARIABLE( CFG_ENABLE_HEART_BEAT_OFFLOAD, WLAN_PARAM_Integer,
2751 hdd_config_t, enableIbssHeartBeatOffload,
2752 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2753 CFG_ENABLE_HEART_BEAT_OFFLOAD_DEFAULT,
2754 CFG_ENABLE_HEART_BEAT_OFFLOAD_MIN,
2755 CFG_ENABLE_HEART_BEAT_OFFLOAD_MAX),
2756
Madan Mohan Koyyalamudica454572013-08-07 19:57:03 +05302757 REG_VARIABLE( CFG_ANTENNA_DIVERSITY_PARAM_NAME, WLAN_PARAM_Integer,
2758 hdd_config_t, antennaDiversity,
2759 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2760 CFG_ANTENNA_DIVERSITY_PARAM_DEFAULT,
2761 CFG_ANTENNA_DIVERSITY_PARAM_MIN,
2762 CFG_ANTENNA_DIVERSITY_PARAM_MAX),
Madan Mohan Koyyalamudid9383fd2013-08-13 09:27:30 +05302763
2764 REG_VARIABLE( CFG_ENABLE_SNR_MONITORING_NAME, WLAN_PARAM_Integer,
2765 hdd_config_t, fEnableSNRMonitoring,
2766 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK ,
2767 CFG_ENABLE_SNR_MONITORING_DEFAULT,
2768 CFG_ENABLE_SNR_MONITORING_MIN,
2769 CFG_ENABLE_SNR_MONITORING_MAX),
2770
Madan Mohan Koyyalamudi1d16f462013-08-27 16:25:34 +05302771#ifdef FEATURE_WLAN_SCAN_PNO
Hardik Kantilal Patel3dfd8792013-11-13 20:34:57 +05302772 REG_VARIABLE( CFG_PNO_SCAN_SUPPORT, WLAN_PARAM_Integer,
2773 hdd_config_t, configPNOScanSupport,
2774 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2775 CFG_PNO_SCAN_SUPPORT_DEFAULT,
2776 CFG_PNO_SCAN_SUPPORT_DISABLE,
2777 CFG_PNO_SCAN_SUPPORT_ENABLE),
2778
Madan Mohan Koyyalamudi1d16f462013-08-27 16:25:34 +05302779 REG_VARIABLE( CFG_PNO_SCAN_TIMER_REPEAT_VALUE, WLAN_PARAM_Integer,
2780 hdd_config_t, configPNOScanTimerRepeatValue,
2781 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2782 CFG_PNO_SCAN_TIMER_REPEAT_VALUE_DEFAULT,
2783 CFG_PNO_SCAN_TIMER_REPEAT_VALUE_MIN,
2784 CFG_PNO_SCAN_TIMER_REPEAT_VALUE_MAX),
2785#endif
krunal soni5afa96c2013-09-06 22:19:02 -07002786 REG_VARIABLE( CFG_AMSDU_SUPPORT_IN_AMPDU_NAME , WLAN_PARAM_Integer,
2787 hdd_config_t, isAmsduSupportInAMPDU,
2788 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2789 CFG_AMSDU_SUPPORT_IN_AMPDU_DEFAULT,
2790 CFG_AMSDU_SUPPORT_IN_AMPDU_MIN,
2791 CFG_AMSDU_SUPPORT_IN_AMPDU_MAX ),
Madan Mohan Koyyalamudi1d16f462013-08-27 16:25:34 +05302792
Srinivas Girigowda41c7c5f2013-10-21 19:01:38 -07002793 REG_VARIABLE( CFG_STRICT_5GHZ_PREF_BY_MARGIN , WLAN_PARAM_Integer,
2794 hdd_config_t, nSelect5GHzMargin,
2795 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2796 CFG_STRICT_5GHZ_PREF_BY_MARGIN_DEFAULT,
2797 CFG_STRICT_5GHZ_PREF_BY_MARGIN_MIN,
2798 CFG_STRICT_5GHZ_PREF_BY_MARGIN_MAX ),
2799
krunal sonie9002db2013-11-25 14:24:17 -08002800 REG_VARIABLE( CFG_COALESING_IN_IBSS_NAME , WLAN_PARAM_Integer,
2801 hdd_config_t, isCoalesingInIBSSAllowed,
2802 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2803 CFG_COALESING_IN_IBSS_DEFAULT,
2804 CFG_COALESING_IN_IBSS_MIN,
2805 CFG_COALESING_IN_IBSS_MAX ),
Kiet Lam4bbd3cb2013-11-07 20:03:49 +05302806
2807 REG_VARIABLE( CFG_DISABLE_ATH_NAME , WLAN_PARAM_Integer,
2808 hdd_config_t, cfgAthDisable,
2809 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2810 CFG_DISABLE_ATH_DEFAULT,
2811 CFG_DISABLE_ATH_MIN,
2812 CFG_DISABLE_ATH_MAX ),
c_hpothu6d7dc922013-12-02 12:36:41 +05302813 REG_VARIABLE(CFG_BTC_ACTIVE_WLAN_LEN_NAME, WLAN_PARAM_Integer,
2814 hdd_config_t, cfgBtcActiveWlanLen,
2815 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2816 CFG_BTC_ACTIVE_WLAN_LEN_DEFAULT,
2817 CFG_BTC_ACTIVE_WLAN_LEN_MIN,
2818 CFG_BTC_ACTIVE_WLAN_LEN_MAX ),
2819
2820 REG_VARIABLE(CFG_BTC_ACTIVE_BT_LEN_NAME, WLAN_PARAM_Integer,
2821 hdd_config_t, cfgBtcActiveBtLen,
2822 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2823 CFG_BTC_ACTIVE_BT_LEN_DEFAULT,
2824 CFG_BTC_ACTIVE_BT_LEN_MIN,
2825 CFG_BTC_ACTIVE_BT_LEN_MAX ),
2826
2827 REG_VARIABLE(CFG_BTC_SAP_ACTIVE_WLAN_LEN_NAME, WLAN_PARAM_Integer,
2828 hdd_config_t, cfgBtcSapActiveWlanLen,
2829 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2830 CFG_BTC_SAP_ACTIVE_WLAN_LEN_DEFAULT,
2831 CFG_BTC_SAP_ACTIVE_WLAN_LEN_MIN,
2832 CFG_BTC_SAP_ACTIVE_WLAN_LEN_MAX ),
2833
2834 REG_VARIABLE(CFG_BTC_SAP_ACTIVE_BT_LEN_NAME, WLAN_PARAM_Integer,
2835 hdd_config_t, cfgBtcSapActiveBtLen,
2836 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2837 CFG_BTC_SAP_ACTIVE_BT_LEN_DEFAULT,
2838 CFG_BTC_SAP_ACTIVE_BT_LEN_MIN,
2839 CFG_BTC_SAP_ACTIVE_BT_LEN_MAX ),
Arif Hussaind5218912013-12-05 01:10:55 -08002840
2841#ifdef MEMORY_DEBUG
2842 REG_VARIABLE(CFG_ENABLE_MEMORY_DEBUG_NAME, WLAN_PARAM_Integer,
2843 hdd_config_t, IsMemoryDebugSupportEnabled,
2844 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2845 CFG_ENABLE_MEMORY_DEBUG_DEFAULT,
2846 CFG_ENABLE_MEMORY_DEBUG_MIN,
2847 CFG_ENABLE_MEMORY_DEBUG_MAX ),
2848#endif
Jeff Johnson295189b2012-06-20 16:38:30 -07002849
Tushnim Bhattacharyya9889e792013-12-19 18:18:36 -08002850 REG_VARIABLE_STRING( CFG_OVERRIDE_COUNTRY_CODE, WLAN_PARAM_String,
2851 hdd_config_t, overrideCountryCode,
2852 VAR_FLAGS_OPTIONAL,
Kiet Lamd83bd8f2014-01-14 22:17:30 -08002853 (void *)CFG_OVERRIDE_COUNTRY_CODE_DEFAULT),
AnjaneeDevi Kapparapu50239e32014-01-07 18:09:33 +05302854
2855 REG_VARIABLE( CFG_ASD_PROBE_INTERVAL_NAME, WLAN_PARAM_Integer,
2856 hdd_config_t, gAsdProbeInterval,
2857 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2858 CFG_ASD_PROBE_INTERVAL_DEFAULT,
2859 CFG_ASD_PROBE_INTERVAL_MIN,
2860 CFG_ASD_PROBE_INTERVAL_MAX),
2861
2862 REG_VARIABLE( CFG_ASD_TRIGGER_THRESHOLD_NAME, WLAN_PARAM_Integer,
2863 hdd_config_t, gAsdTriggerThreshold,
2864 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2865 CFG_ASD_TRIGGER_THRESHOLD_DEFAULT,
2866 CFG_ASD_TRIGGER_THRESHOLD_MIN,
2867 CFG_ASD_TRIGGER_THRESHOLD_MAX),
2868
2869 REG_VARIABLE( CFG_ASD_RTT_RSSI_HYST_THRESHOLD_NAME, WLAN_PARAM_Integer,
2870 hdd_config_t, gAsdRTTRssiHystThreshold,
2871 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2872 CFG_ASD_RTT_RSSI_HYST_THRESHOLD_DEFAULT,
2873 CFG_ASD_RTT_RSSI_HYST_THRESHOLD_MIN,
2874 CFG_ASD_RTT_RSSI_HYST_THRESHOLD_MAX),
Leela Venkata Kiran Kumar Reddy Chirala22c159b2013-12-23 18:19:13 -08002875
2876 REG_VARIABLE( CFG_DEBUG_P2P_REMAIN_ON_CHANNEL_NAME, WLAN_PARAM_Integer,
2877 hdd_config_t, debugP2pRemainOnChannel,
2878 VAR_FLAGS_OPTIONAL,
2879 CFG_DEBUG_P2P_REMAIN_ON_CHANNEL_DEFAULT,
2880 CFG_DEBUG_P2P_REMAIN_ON_CHANNEL_MIN,
2881 CFG_DEBUG_P2P_REMAIN_ON_CHANNEL_MAX ),
2882
2883 REG_VARIABLE(CFG_CTS2S_DURING_BTC_SCO_NAME, WLAN_PARAM_Integer,
2884 hdd_config_t, cfgBtcCTS2SduringSCO,
2885 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2886 CFG_CTS2S_DURING_BTC_SCO_DEFAULT,
2887 CFG_CTS2S_DURING_BTC_SCO_MIN,
2888 CFG_CTS2S_DURING_BTC_SCO_MAX ),
Tushnim Bhattacharyyaa3ba5a52014-01-30 11:37:33 -08002889
2890 REG_VARIABLE( CFG_ENABLE_DEBUG_CONNECT_ISSUE, WLAN_PARAM_Integer,
2891 hdd_config_t, gEnableDebugLog,
2892 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2893 CFG_ENABLE_DEBUG_CONNECT_ISSUE_DEFAULT,
2894 CFG_ENABLE_DEBUG_CONNECT_ISSUE_MIN ,
2895 CFG_ENABLE_DEBUG_CONNECT_ISSUE_MAX),
Sandeep Puligilla04bb8fd2014-02-03 23:21:47 +05302896
2897 REG_VARIABLE(CFG_OBSS_HT40_SCAN_ACTIVE_DWELL_TIME_NAME, WLAN_PARAM_Integer,
2898 hdd_config_t, nOBSSScanActiveDwellTime,
2899 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2900 CFG_OBSS_HT40_SCAN_ACTIVE_DWELL_TIME_DEFAULT,
2901 CFG_OBSS_HT40_SCAN_ACTIVE_DWELL_TIME_MIN,
2902 CFG_OBSS_HT40_SCAN_ACTIVE_DWELL_TIME_MAX ),
2903
2904 REG_VARIABLE(CFG_OBSS_HT40_SCAN_PASSIVE_DWELL_TIME_NAME, WLAN_PARAM_Integer,
2905 hdd_config_t, nOBSSScanPassiveDwellTime,
2906 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2907 CFG_OBSS_HT40_SCAN_PASSIVE_DWELL_TIME_DEFAULT,
2908 CFG_OBSS_HT40_SCAN_PASSIVE_DWELL_TIME_MIN,
2909 CFG_OBSS_HT40_SCAN_PASSIVE_DWELL_TIME_MAX ),
2910
2911 REG_VARIABLE(CFG_OBSS_HT40_SCAN_WIDTH_TRIGGER_INTERVAL_NAME,
2912 WLAN_PARAM_Integer,
2913 hdd_config_t, nOBSSScanWidthTriggerInterval,
2914 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2915 CFG_OBSS_HT40_SCAN_WIDTH_TRIGGER_INTERVAL_DEFAULT,
2916 CFG_OBSS_HT40_SCAN_WIDTH_TRIGGER_INTERVAL_MIN,
2917 CFG_OBSS_HT40_SCAN_WIDTH_TRIGGER_INTERVAL_MAX ),
Tushnim Bhattacharyya9889e792013-12-19 18:18:36 -08002918};
2919
Tushnim Bhattacharyya4f7bfa72013-12-19 18:18:36 -08002920
Jeff Johnson295189b2012-06-20 16:38:30 -07002921/*
2922 * This function returns a pointer to the character after the occurence
2923 * of a new line character. It also modifies the original string by replacing
2924 * the '\n' character with the null character.
2925 * Function returns NULL if no new line character was found before end of
2926 * string was reached
2927 */
2928static char* get_next_line(char* str)
2929{
2930 char c;
2931
2932 if( str == NULL || *str == '\0') {
2933 return NULL;
2934 }
2935
2936 c = *str;
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002937 while(c != '\n' && c != '\0' && c != 0xd) {
Jeff Johnson295189b2012-06-20 16:38:30 -07002938 str = str + 1;
2939 c = *str;
2940 }
2941
2942 if (c == '\0' ) {
2943 return NULL;
2944 }
2945 else
2946 {
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002947 *str = '\0';
Jeff Johnson295189b2012-06-20 16:38:30 -07002948 return (str+1);
2949 }
2950
2951 return NULL;
2952}
2953
2954// look for space. Ascii values to look are -
2955// 0x09 == horizontal tab
2956// 0x0a == Newline ("\n")
2957// 0x0b == vertical tab
2958// 0x0c == Newpage or feed form.
2959// 0x0d == carriage return (CR or "\r")
2960// Null ('\0') should not considered as space.
2961#define i_isspace(ch) (((ch) >= 0x09 && (ch) <= 0x0d) || (ch) == ' ')
2962
2963/*
2964 * This function trims any leading and trailing white spaces
2965 */
2966static char *i_trim(char *str)
2967
2968{
2969 char *ptr;
2970
2971 if(*str == '\0') return str;
2972
2973 /* Find the first non white-space*/
2974 for (ptr = str; i_isspace(*ptr); ptr++);
2975 if (*ptr == '\0')
2976 return str;
2977
2978 /* This is the new start of the string*/
2979 str = ptr;
2980
2981 /* Find the last non white-space */
2982 ptr += strlen(ptr) - 1;
2983 for (; ptr != str && i_isspace(*ptr); ptr--);
2984 /* Null terminate the following character */
2985 ptr[1] = '\0';
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002986
Jeff Johnson295189b2012-06-20 16:38:30 -07002987 return str;
2988}
2989
2990
2991//Structure to store each entry in qcom_cfg.ini file
2992typedef struct
2993{
2994 char *name;
2995 char *value;
2996}tCfgIniEntry;
2997
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002998static VOS_STATUS hdd_apply_cfg_ini( hdd_context_t * pHddCtx,
Jeff Johnson295189b2012-06-20 16:38:30 -07002999 tCfgIniEntry* iniTable, unsigned long entries);
3000
3001#ifdef WLAN_CFG_DEBUG
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003002void dump_cfg_ini (tCfgIniEntry* iniTable, unsigned long entries)
Jeff Johnson295189b2012-06-20 16:38:30 -07003003{
3004 unsigned long i;
3005
3006 for (i = 0; i < entries; i++) {
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003007 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "%s entry Name=[%s] value=[%s]",
Jeff Johnson295189b2012-06-20 16:38:30 -07003008 WLAN_INI_FILE, iniTable[i].name, iniTable[i].value);
3009 }
3010}
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003011#endif
Jeff Johnson295189b2012-06-20 16:38:30 -07003012
3013/*
3014 * This function reads the qcom_cfg.ini file and
3015 * parses each 'Name=Value' pair in the ini file
3016 */
3017VOS_STATUS hdd_parse_config_ini(hdd_context_t* pHddCtx)
3018{
3019 int status, i=0;
3020 /** Pointer for firmware image data */
3021 const struct firmware *fw = NULL;
Jeff Johnson4416a782013-03-25 14:17:50 -07003022 char *buffer, *line, *pTemp = NULL;
Jeff Johnson295189b2012-06-20 16:38:30 -07003023 size_t size;
3024 char *name, *value;
Madan Mohan Koyyalamudi729972c2012-10-21 12:39:24 -07003025 /* cfgIniTable is static to avoid excess stack usage */
3026 static tCfgIniEntry cfgIniTable[MAX_CFG_INI_ITEMS];
Jeff Johnson295189b2012-06-20 16:38:30 -07003027 VOS_STATUS vos_status = VOS_STATUS_SUCCESS;
3028
3029 memset(cfgIniTable, 0, sizeof(cfgIniTable));
3030
3031 status = request_firmware(&fw, WLAN_INI_FILE, pHddCtx->parent_dev);
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003032
Jeff Johnson295189b2012-06-20 16:38:30 -07003033 if(status)
3034 {
Arif Hussain6d2a3322013-11-17 19:50:10 -08003035 hddLog(VOS_TRACE_LEVEL_FATAL, "%s: request_firmware failed %d",__func__, status);
Jeff Johnson4416a782013-03-25 14:17:50 -07003036 vos_status = VOS_STATUS_E_FAILURE;
3037 goto config_exit;
Jeff Johnson295189b2012-06-20 16:38:30 -07003038 }
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003039 if(!fw || !fw->data || !fw->size)
Jeff Johnson295189b2012-06-20 16:38:30 -07003040 {
Arif Hussain6d2a3322013-11-17 19:50:10 -08003041 hddLog(VOS_TRACE_LEVEL_FATAL, "%s: %s download failed",
Madan Mohan Koyyalamudi87054ba2012-11-02 13:24:12 -07003042 __func__, WLAN_INI_FILE);
Jeff Johnson4416a782013-03-25 14:17:50 -07003043 vos_status = VOS_STATUS_E_FAILURE;
3044 goto config_exit;
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003045 }
Jeff Johnson295189b2012-06-20 16:38:30 -07003046
Jeff Johnson59a121e2013-11-30 09:46:08 -08003047 hddLog(LOG1, "%s: qcom_cfg.ini Size %zu", __func__, fw->size);
Jeff Johnson295189b2012-06-20 16:38:30 -07003048
3049 buffer = (char*)vos_mem_malloc(fw->size);
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003050
Jeff Johnson295189b2012-06-20 16:38:30 -07003051 if(NULL == buffer) {
Madan Mohan Koyyalamudi87054ba2012-11-02 13:24:12 -07003052 hddLog(VOS_TRACE_LEVEL_FATAL, "%s: kmalloc failure",__func__);
Jeff Johnson295189b2012-06-20 16:38:30 -07003053 release_firmware(fw);
3054 return VOS_STATUS_E_FAILURE;
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003055 }
Jeff Johnson295189b2012-06-20 16:38:30 -07003056 pTemp = buffer;
3057
3058 vos_mem_copy((void*)buffer,(void *)fw->data, fw->size);
3059 size = fw->size;
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003060
Jeff Johnson295189b2012-06-20 16:38:30 -07003061 while (buffer != NULL)
3062 {
3063 line = get_next_line(buffer);
3064 buffer = i_trim(buffer);
3065
3066 hddLog(LOG1, "%s: item", buffer);
3067
3068 if(strlen((char*)buffer) == 0 || *buffer == '#') {
3069 buffer = line;
3070 continue;
3071 }
3072 else if(strncmp(buffer, "END", 3) == 0 ) {
3073 break;
3074 }
3075 else
3076 {
3077 name = buffer;
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003078 while(*buffer != '=' && *buffer != '\0')
Jeff Johnson295189b2012-06-20 16:38:30 -07003079 buffer++;
3080 if(*buffer != '\0') {
3081 *buffer++ = '\0';
3082 i_trim(name);
3083 if(strlen (name) != 0) {
3084 buffer = i_trim(buffer);
3085 if(strlen(buffer)>0) {
3086 value = buffer;
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003087 while(!i_isspace(*buffer) && *buffer != '\0')
Jeff Johnson295189b2012-06-20 16:38:30 -07003088 buffer++;
3089 *buffer = '\0';
3090 cfgIniTable[i].name= name;
3091 cfgIniTable[i++].value= value;
3092 if(i >= MAX_CFG_INI_ITEMS) {
Arif Hussain6d2a3322013-11-17 19:50:10 -08003093 hddLog(LOGE,"%s: Number of items in %s > %d",
Madan Mohan Koyyalamudi87054ba2012-11-02 13:24:12 -07003094 __func__, WLAN_INI_FILE, MAX_CFG_INI_ITEMS);
Jeff Johnson295189b2012-06-20 16:38:30 -07003095 break;
3096 }
3097 }
3098 }
3099 }
3100 }
3101 buffer = line;
3102 }
3103
3104 //Loop through the registry table and apply all these configs
3105 vos_status = hdd_apply_cfg_ini(pHddCtx, cfgIniTable, i);
3106
Jeff Johnson4416a782013-03-25 14:17:50 -07003107config_exit:
Jeff Johnson295189b2012-06-20 16:38:30 -07003108 release_firmware(fw);
3109 vos_mem_free(pTemp);
3110 return vos_status;
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003111}
Jeff Johnson295189b2012-06-20 16:38:30 -07003112
3113
3114static void print_hdd_cfg(hdd_context_t *pHddCtx)
3115{
3116 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "*********Config values in HDD Adapter*******");
Jeff Johnson0299d0a2013-10-30 12:37:43 -07003117 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [RTSThreshold] Value = %u",pHddCtx->cfg_ini->RTSThreshold) ;
Jeff Johnson295189b2012-06-20 16:38:30 -07003118 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [OperatingChannel] Value = [%u]",pHddCtx->cfg_ini->OperatingChannel);
3119 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [PowerUsageControl] Value = [%s]",pHddCtx->cfg_ini->PowerUsageControl);
3120 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [fIsImpsEnabled] Value = [%u]",pHddCtx->cfg_ini->fIsImpsEnabled);
3121 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [AutoBmpsTimerEnabled] Value = [%u]",pHddCtx->cfg_ini->fIsAutoBmpsTimerEnabled);
Jeff Johnson0299d0a2013-10-30 12:37:43 -07003122 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [nAutoBmpsTimerValue] Value = [%u]",pHddCtx->cfg_ini->nAutoBmpsTimerValue);
Jeff Johnson295189b2012-06-20 16:38:30 -07003123 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [nVccRssiTrigger] Value = [%u]",pHddCtx->cfg_ini->nVccRssiTrigger);
Arif Hussaina7c8e412013-11-20 11:06:42 -08003124 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH,
3125 "Name = [gIbssBssid] Value =["MAC_ADDRESS_STR"]",
3126 MAC_ADDR_ARRAY(pHddCtx->cfg_ini->IbssBssid.bytes));
Jeff Johnson295189b2012-06-20 16:38:30 -07003127
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003128 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH,
Arif Hussaina7c8e412013-11-20 11:06:42 -08003129 "Name = [Intf0MacAddress] Value =["MAC_ADDRESS_STR"]",
3130 MAC_ADDR_ARRAY(pHddCtx->cfg_ini->intfMacAddr[0].bytes));
Jeff Johnson295189b2012-06-20 16:38:30 -07003131
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003132 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH,
Arif Hussaina7c8e412013-11-20 11:06:42 -08003133 "Name = [Intf1MacAddress] Value =["MAC_ADDRESS_STR"]",
3134 MAC_ADDR_ARRAY(pHddCtx->cfg_ini->intfMacAddr[1].bytes));
Jeff Johnson295189b2012-06-20 16:38:30 -07003135
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003136 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH,
Arif Hussaina7c8e412013-11-20 11:06:42 -08003137 "Name = [Intf2MacAddress] Value =["MAC_ADDRESS_STR"]",
3138 MAC_ADDR_ARRAY(pHddCtx->cfg_ini->intfMacAddr[2].bytes));
Jeff Johnson295189b2012-06-20 16:38:30 -07003139
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003140 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH,
Arif Hussaina7c8e412013-11-20 11:06:42 -08003141 "Name = [Intf3MacAddress] Value =["MAC_ADDRESS_STR"]",
3142 MAC_ADDR_ARRAY(pHddCtx->cfg_ini->intfMacAddr[3].bytes));
Jeff Johnson295189b2012-06-20 16:38:30 -07003143
Arif Hussain6d2a3322013-11-17 19:50:10 -08003144 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [gApEnableUapsd] value = [%u]",pHddCtx->cfg_ini->apUapsdEnabled);
Jeff Johnson295189b2012-06-20 16:38:30 -07003145
Arif Hussain6d2a3322013-11-17 19:50:10 -08003146 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [gAPCntryCode] Value =[%c%c%c]",
Jeff Johnson295189b2012-06-20 16:38:30 -07003147 pHddCtx->cfg_ini->apCntryCode[0],pHddCtx->cfg_ini->apCntryCode[1],
3148 pHddCtx->cfg_ini->apCntryCode[2]);
3149 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [gEnableApProt] value = [%u]", pHddCtx->cfg_ini->apProtEnabled);
Arif Hussain6d2a3322013-11-17 19:50:10 -08003150 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [gAPAutoShutOff] Value = [%u]", pHddCtx->cfg_ini->nAPAutoShutOff);
Jeff Johnson295189b2012-06-20 16:38:30 -07003151
Arif Hussain6d2a3322013-11-17 19:50:10 -08003152 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [gEnableListenMode] Value = [%u]", pHddCtx->cfg_ini->nEnableListenMode);
3153 VOS_TRACE (VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [gApProtection] value = [%u]",pHddCtx->cfg_ini->apProtection);
3154 VOS_TRACE (VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [gEnableApOBSSProt] value = [%u]",pHddCtx->cfg_ini->apOBSSProtEnabled);
3155 VOS_TRACE (VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [gApAutoChannelSelection] value = [%u]",pHddCtx->cfg_ini->apAutoChannelSelection);
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003156
Jeff Johnson0299d0a2013-10-30 12:37:43 -07003157 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [ChannelBondingMode] Value = [%u]",pHddCtx->cfg_ini->nChannelBondingMode24GHz);
3158 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [ChannelBondingMode] Value = [%u]",pHddCtx->cfg_ini->nChannelBondingMode5GHz);
3159 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [dot11Mode] Value = [%u]",pHddCtx->cfg_ini->dot11Mode);
Jeff Johnson295189b2012-06-20 16:38:30 -07003160 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [WmmMode] Value = [%u] ",pHddCtx->cfg_ini->WmmMode);
3161 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [UapsdMask] Value = [0x%x] ",pHddCtx->cfg_ini->UapsdMask);
3162 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [PktClassificationBasis] Value = [%u] ",pHddCtx->cfg_ini->PktClassificationBasis);
3163 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [ImplicitQosIsEnabled] Value = [%u]",(int)pHddCtx->cfg_ini->bImplicitQosEnabled);
3164
Jeff Johnson0299d0a2013-10-30 12:37:43 -07003165 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [InfraUapsdVoSrvIntv] Value = [%u] ",pHddCtx->cfg_ini->InfraUapsdVoSrvIntv);
3166 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [InfraUapsdVoSuspIntv] Value = [%u] ",pHddCtx->cfg_ini->InfraUapsdVoSuspIntv);
Jeff Johnson295189b2012-06-20 16:38:30 -07003167
Jeff Johnson0299d0a2013-10-30 12:37:43 -07003168 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [InfraUapsdViSrvIntv] Value = [%u] ",pHddCtx->cfg_ini->InfraUapsdViSrvIntv);
3169 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [InfraUapsdViSuspIntv] Value = [%u] ",pHddCtx->cfg_ini->InfraUapsdViSuspIntv);
Jeff Johnson295189b2012-06-20 16:38:30 -07003170
Jeff Johnson0299d0a2013-10-30 12:37:43 -07003171 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [InfraUapsdBeSrvIntv] Value = [%u] ",pHddCtx->cfg_ini->InfraUapsdBeSrvIntv);
3172 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [InfraUapsdBeSuspIntv] Value = [%u] ",pHddCtx->cfg_ini->InfraUapsdBeSuspIntv);
Jeff Johnson295189b2012-06-20 16:38:30 -07003173
Jeff Johnson0299d0a2013-10-30 12:37:43 -07003174 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [InfraUapsdBkSrvIntv] Value = [%u] ",pHddCtx->cfg_ini->InfraUapsdBkSrvIntv);
3175 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [InfraUapsdBkSuspIntv] Value = [%u] ",pHddCtx->cfg_ini->InfraUapsdBkSuspIntv);
Jeff Johnson295189b2012-06-20 16:38:30 -07003176#ifdef FEATURE_WLAN_CCX
Jeff Johnson0299d0a2013-10-30 12:37:43 -07003177 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [InfraInactivityInterval] Value = [%u] ",pHddCtx->cfg_ini->InfraInactivityInterval);
3178 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [CcxEnabled] Value = [%u] ",pHddCtx->cfg_ini->isCcxIniFeatureEnabled);
3179 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [FastTransitionEnabled] Value = [%u] ",pHddCtx->cfg_ini->isFastTransitionEnabled);
3180 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [gTxPowerCap] Value = [%u] dBm ",pHddCtx->cfg_ini->nTxPowerCap);
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003181#endif
Jeff Johnson04dd8a82012-06-29 20:41:40 -07003182#ifdef FEATURE_WLAN_LFR
Sameer Thalappil4ae66ec2013-11-05 14:17:35 -08003183 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [MAWCEnabled] Value = [%u] ",pHddCtx->cfg_ini->MAWCEnabled);
Jeff Johnson0299d0a2013-10-30 12:37:43 -07003184 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [FastRoamEnabled] Value = [%u] ",pHddCtx->cfg_ini->isFastRoamIniFeatureEnabled);
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003185#endif
Jeff Johnson43971f52012-07-17 12:26:56 -07003186#if defined (WLAN_FEATURE_VOWIFI_11R) || defined (FEATURE_WLAN_CCX) || defined(FEATURE_WLAN_LFR)
Jeff Johnson0299d0a2013-10-30 12:37:43 -07003187 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [RoamRssiDiff] Value = [%u] ",pHddCtx->cfg_ini->RoamRssiDiff);
3188 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [ImmediateRoamRssiDiff] Value = [%u] ",pHddCtx->cfg_ini->nImmediateRoamRssiDiff);
3189 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [isWESModeEnabled] Value = [%u] ",pHddCtx->cfg_ini->isWESModeEnabled);
Jeff Johnson43971f52012-07-17 12:26:56 -07003190#endif
Srinivas Girigowdabbd16eb2013-03-21 12:34:46 -07003191#ifdef FEATURE_WLAN_OKC
Jeff Johnson0299d0a2013-10-30 12:37:43 -07003192 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [OkcEnabled] Value = [%u] ",pHddCtx->cfg_ini->isOkcIniFeatureEnabled);
Srinivas Girigowdabbd16eb2013-03-21 12:34:46 -07003193#endif
Jeff Johnson295189b2012-06-20 16:38:30 -07003194 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [InfraDirAcVo] Value = [%u] ",pHddCtx->cfg_ini->InfraDirAcVo);
3195 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [InfraNomMsduSizeAcVo] Value = [0x%x] ",pHddCtx->cfg_ini->InfraNomMsduSizeAcVo);
Jeff Johnson0299d0a2013-10-30 12:37:43 -07003196 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [InfraMeanDataRateAcVo] Value = [0x%x] ",pHddCtx->cfg_ini->InfraMeanDataRateAcVo);
3197 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [InfraMinPhyRateAcVo] Value = [0x%x] ",pHddCtx->cfg_ini->InfraMinPhyRateAcVo);
Jeff Johnson295189b2012-06-20 16:38:30 -07003198 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [InfraSbaAcVo] Value = [0x%x] ",pHddCtx->cfg_ini->InfraSbaAcVo);
3199
3200 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [InfraDirAcVi] Value = [%u] ",pHddCtx->cfg_ini->InfraDirAcVi);
3201 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [InfraNomMsduSizeAcVi] Value = [0x%x] ",pHddCtx->cfg_ini->InfraNomMsduSizeAcVi);
Jeff Johnson0299d0a2013-10-30 12:37:43 -07003202 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [InfraMeanDataRateAcVi] Value = [0x%x] ",pHddCtx->cfg_ini->InfraMeanDataRateAcVi);
3203 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [InfraMinPhyRateAcVi] Value = [0x%x] ",pHddCtx->cfg_ini->InfraMinPhyRateAcVi);
Jeff Johnson295189b2012-06-20 16:38:30 -07003204 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [InfraSbaAcVi] Value = [0x%x] ",pHddCtx->cfg_ini->InfraSbaAcVi);
3205
3206 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [InfraDirAcBe] Value = [%u] ",pHddCtx->cfg_ini->InfraDirAcBe);
3207 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [InfraNomMsduSizeAcBe] Value = [0x%x] ",pHddCtx->cfg_ini->InfraNomMsduSizeAcBe);
Jeff Johnson0299d0a2013-10-30 12:37:43 -07003208 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [InfraMeanDataRateAcBe] Value = [0x%x] ",pHddCtx->cfg_ini->InfraMeanDataRateAcBe);
3209 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [InfraMinPhyRateAcBe] Value = [0x%x] ",pHddCtx->cfg_ini->InfraMinPhyRateAcBe);
Jeff Johnson295189b2012-06-20 16:38:30 -07003210 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [InfraSbaAcBe] Value = [0x%x] ",pHddCtx->cfg_ini->InfraSbaAcBe);
3211
3212 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [InfraDirAcBk] Value = [%u] ",pHddCtx->cfg_ini->InfraDirAcBk);
3213 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [InfraNomMsduSizeAcBk] Value = [0x%x] ",pHddCtx->cfg_ini->InfraNomMsduSizeAcBk);
Jeff Johnson0299d0a2013-10-30 12:37:43 -07003214 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [InfraMeanDataRateAcBk] Value = [0x%x] ",pHddCtx->cfg_ini->InfraMeanDataRateAcBk);
3215 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [InfraMinPhyRateAcBk] Value = [0x%x] ",pHddCtx->cfg_ini->InfraMinPhyRateAcBk);
Jeff Johnson295189b2012-06-20 16:38:30 -07003216 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [InfraSbaAcBk] Value = [0x%x] ",pHddCtx->cfg_ini->InfraSbaAcBk);
3217
3218 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [WfqBkWeight] Value = [%u] ",pHddCtx->cfg_ini->WfqBkWeight);
3219 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [WfqBeWeight] Value = [%u] ",pHddCtx->cfg_ini->WfqBeWeight);
3220 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [WfqViWeight] Value = [%u] ",pHddCtx->cfg_ini->WfqViWeight);
3221 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [WfqVoWeight] Value = [%u] ",pHddCtx->cfg_ini->WfqVoWeight);
Jeff Johnson0299d0a2013-10-30 12:37:43 -07003222 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [DelayedTriggerFrmInt] Value = [%u] ",pHddCtx->cfg_ini->DelayedTriggerFrmInt);
Dhanashri Atred8c20a32014-01-03 17:20:55 -08003223 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [BkReorderAgingTime] Value = [%u] ",pHddCtx->cfg_ini->BkReorderAgingTime);
3224 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [BeReorderAgingTime] Value = [%u] ",pHddCtx->cfg_ini->BeReorderAgingTime);
3225 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [ViReorderAgingTime] Value = [%u] ",pHddCtx->cfg_ini->ViReorderAgingTime);
3226 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [VoReorderAgingTime] Value = [%u] ",pHddCtx->cfg_ini->VoReorderAgingTime);
Jeff Johnson295189b2012-06-20 16:38:30 -07003227 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [mcastBcastFilterSetting] Value = [%u] ",pHddCtx->cfg_ini->mcastBcastFilterSetting);
3228 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [fhostArpOffload] Value = [%u] ",pHddCtx->cfg_ini->fhostArpOffload);
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003229#ifdef WLAN_FEATURE_VOWIFI_11R
Jeff Johnson0299d0a2013-10-30 12:37:43 -07003230 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [fFTResourceReqSupported] Value = [%u] ",pHddCtx->cfg_ini->fFTResourceReqSupported);
Jeff Johnson295189b2012-06-20 16:38:30 -07003231#endif
3232
3233#ifdef WLAN_FEATURE_NEIGHBOR_ROAMING
Jeff Johnson0299d0a2013-10-30 12:37:43 -07003234 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [nNeighborReassocRssiThreshold] Value = [%u] ",pHddCtx->cfg_ini->nNeighborReassocRssiThreshold);
3235 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [nNeighborLookupRssiThreshold] Value = [%u] ",pHddCtx->cfg_ini->nNeighborLookupRssiThreshold);
3236 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [nNeighborScanMinChanTime] Value = [%u] ",pHddCtx->cfg_ini->nNeighborScanMinChanTime);
3237 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [nNeighborScanMaxChanTime] Value = [%u] ",pHddCtx->cfg_ini->nNeighborScanMaxChanTime);
3238 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [nMaxNeighborRetries] Value = [%u] ",pHddCtx->cfg_ini->nMaxNeighborReqTries);
3239 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [nNeighborScanPeriod] Value = [%u] ",pHddCtx->cfg_ini->nNeighborScanPeriod);
3240 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [nNeighborScanResultsRefreshPeriod] Value = [%u] ",pHddCtx->cfg_ini->nNeighborResultsRefreshPeriod);
3241 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [nEmptyScanRefreshPeriod] Value = [%u] ",pHddCtx->cfg_ini->nEmptyScanRefreshPeriod);
Jeff Johnson295189b2012-06-20 16:38:30 -07003242#endif
3243 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [burstSizeDefinition] Value = [0x%x] ",pHddCtx->cfg_ini->burstSizeDefinition);
3244 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [tsInfoAckPolicy] Value = [0x%x] ",pHddCtx->cfg_ini->tsInfoAckPolicy);
3245 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [rfSettlingTimeUs] Value = [%u] ",pHddCtx->cfg_ini->rfSettlingTimeUs);
3246 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [bSingleTidRc] Value = [%u] ",pHddCtx->cfg_ini->bSingleTidRc);
3247 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [gDynamicPSPollvalue] Value = [%u] ",pHddCtx->cfg_ini->dynamicPsPollValue);
3248 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [gAddTSWhenACMIsOff] Value = [%u] ",pHddCtx->cfg_ini->AddTSWhenACMIsOff);
3249 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [gValidateScanList] Value = [%u] ",pHddCtx->cfg_ini->fValidateScanList);
3250
3251 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [gStaKeepAlivePeriod] Value = [%u] ",pHddCtx->cfg_ini->infraStaKeepAlivePeriod);
3252 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [gApDataAvailPollInterVal] Value = [%u] ",pHddCtx->cfg_ini->apDataAvailPollPeriodInMs);
3253 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [gEnableBtAmp] Value = [%u] ",pHddCtx->cfg_ini->enableBtAmp);
3254#ifdef WLAN_BTAMP_FEATURE
3255 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [BtAmpPreferredChannel] Value = [%u] ",pHddCtx->cfg_ini->preferredChannel);
3256#endif //WLAN_BTAMP_FEATURE
3257 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [BandCapability] Value = [%u] ",pHddCtx->cfg_ini->nBandCapability);
3258 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [fEnableBeaconEarlyTermination] Value = [%u] ",pHddCtx->cfg_ini->fEnableBeaconEarlyTermination);
3259 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [teleBcnWakeupEnable] Value = [%u] ",pHddCtx->cfg_ini->teleBcnWakeupEn);
3260 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [transListenInterval] Value = [%u] ",pHddCtx->cfg_ini->nTeleBcnTransListenInterval);
3261 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [transLiNumIdleBeacons] Value = [%u] ",pHddCtx->cfg_ini->nTeleBcnTransLiNumIdleBeacons);
3262 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [maxListenInterval] Value = [%u] ",pHddCtx->cfg_ini->nTeleBcnMaxListenInterval);
3263 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [maxLiNumIdleBeacons] Value = [%u] ",pHddCtx->cfg_ini->nTeleBcnMaxLiNumIdleBeacons);
3264 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [bcnEarlyTermWakeInterval] Value = [%u] ",pHddCtx->cfg_ini->bcnEarlyTermWakeInterval);
3265 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [gApDataAvailPollInterVal] Value = [%u] ",pHddCtx->cfg_ini->apDataAvailPollPeriodInMs);
3266 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [gEnableBypass11d] Value = [%u] ",pHddCtx->cfg_ini->enableBypass11d);
3267 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [gEnableDFSChnlScan] Value = [%u] ",pHddCtx->cfg_ini->enableDFSChnlScan);
3268 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [gReportMaxLinkSpeed] Value = [%u] ",pHddCtx->cfg_ini->reportMaxLinkSpeed);
3269 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [thermalMitigationEnable] Value = [%u] ",pHddCtx->cfg_ini->thermalMitigationEnable);
Jeff Johnsone7245742012-09-05 17:12:55 -07003270#ifdef WLAN_FEATURE_11AC
Arif Hussain6d2a3322013-11-17 19:50:10 -08003271 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [gVhtChannelWidth] value = [%u]",pHddCtx->cfg_ini->vhtChannelWidth);
Jeff Johnsone7245742012-09-05 17:12:55 -07003272#endif
3273 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [enableFirstScan2GOnly] Value = [%u] ",pHddCtx->cfg_ini->enableFirstScan2GOnly);
3274 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [skipDfsChnlInP2pSearch] Value = [%u] ",pHddCtx->cfg_ini->skipDfsChnlInP2pSearch);
3275 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [ignoreDynamicDtimInP2pMode] Value = [%u] ",pHddCtx->cfg_ini->ignoreDynamicDtimInP2pMode);
Pratik Bhalgat6bfd1422012-11-22 17:09:40 +05303276 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [enableRxSTBC] Value = [%u] ",pHddCtx->cfg_ini->enableRxSTBC);
Madan Mohan Koyyalamudi0d40e662012-12-07 14:24:14 -08003277 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [gEnableLpwrImgTransition] Value = [%u] ",pHddCtx->cfg_ini->enableLpwrImgTransition);
Gopichand Nakkalae620d5a2013-04-26 05:45:57 -07003278 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [gEnableSSR] Value = [%u] ",pHddCtx->cfg_ini->enableSSR);
Ravi Joshi83bfaa12013-05-28 22:12:08 -07003279 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [gEnableVhtFor24GHzBand] Value = [%u] ",pHddCtx->cfg_ini->enableVhtFor24GHzBand);
Gopichand Nakkalae620d5a2013-04-26 05:45:57 -07003280
Leo Chang64d68bc2013-06-04 15:40:52 -07003281 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [gEnableTrafficMonitor] Value = [%u] ", pHddCtx->cfg_ini->enableTrafficMonitor);
3282 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [gTrafficIdleTimeout] Value = [%u] ", pHddCtx->cfg_ini->trafficIdleTimeout);
Yue Ma0fd23872013-08-01 15:56:47 -07003283 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [gFlexConnectPowerFactor] Value = [%u] ", pHddCtx->cfg_ini->flexConnectPowerFactor);
Ravi Joshid2ca7c42013-07-23 08:37:49 -07003284 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [gEnableIbssHeartBeatOffload] Value = [%u] ", pHddCtx->cfg_ini->enableIbssHeartBeatOffload);
Madan Mohan Koyyalamudica454572013-08-07 19:57:03 +05303285 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [gAntennaDiversity] Value = [%u] ", pHddCtx->cfg_ini->antennaDiversity);
Madan Mohan Koyyalamudi2558bc92013-08-24 16:54:31 +05303286 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [gGoLinkMonitorPeriod] Value = [%u]",pHddCtx->cfg_ini->goLinkMonitorPeriod);
3287 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [gApLinkMonitorPeriod] Value = [%u]",pHddCtx->cfg_ini->apLinkMonitorPeriod);
3288 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [gGoKeepAlivePeriod] Value = [%u]",pHddCtx->cfg_ini->goKeepAlivePeriod);
3289 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [gApKeepAlivePeriod]Value = [%u]",pHddCtx->cfg_ini->apKeepAlivePeriod);
Jeff Johnson0299d0a2013-10-30 12:37:43 -07003290 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [gAmsduSupportInAMPDU] Value = [%u] ",pHddCtx->cfg_ini->isAmsduSupportInAMPDU);
3291 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [nSelect5GHzMargin] Value = [%u] ",pHddCtx->cfg_ini->nSelect5GHzMargin);
Jeff Johnson89aa2692013-11-25 16:23:43 -08003292 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [gCoalesingInIBSS] Value = [%u] ",pHddCtx->cfg_ini->isCoalesingInIBSSAllowed);
Madan Mohan Koyyalamudi2558bc92013-08-24 16:54:31 +05303293
Tushnim Bhattacharyya9889e792013-12-19 18:18:36 -08003294 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [overrideCountryCode] Value = [%s] ",pHddCtx->cfg_ini->overrideCountryCode);
AnjaneeDevi Kapparapu50239e32014-01-07 18:09:33 +05303295
3296 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [gAsdProbeInterval] Value = [%u]",pHddCtx->cfg_ini->gAsdProbeInterval);
3297 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [gAsdTriggerThreshold] Value = [%u]",pHddCtx->cfg_ini->gAsdTriggerThreshold);
3298 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [gAsdRTTRssiHystThreshold]Value = [%u]",pHddCtx->cfg_ini->gAsdRTTRssiHystThreshold);
Jeff Johnson295189b2012-06-20 16:38:30 -07003299}
3300
3301
Gopichand Nakkalae620d5a2013-04-26 05:45:57 -07003302
Jeff Johnson295189b2012-06-20 16:38:30 -07003303#define CFG_VALUE_MAX_LEN 256
3304#define CFG_ENTRY_MAX_LEN (32+CFG_VALUE_MAX_LEN)
3305VOS_STATUS hdd_cfg_get_config(hdd_context_t *pHddCtx, char *pBuf, int buflen)
3306{
3307 unsigned int idx;
3308 REG_TABLE_ENTRY *pRegEntry = g_registry_table;
3309 unsigned long cRegTableEntries = sizeof(g_registry_table) / sizeof( g_registry_table[ 0 ]);
3310 v_U32_t value;
3311 char valueStr[CFG_VALUE_MAX_LEN];
3312 char configStr[CFG_ENTRY_MAX_LEN];
3313 char *fmt;
3314 void *pField;
3315 v_MACADDR_t *pMacAddr;
3316 char *pCur = pBuf;
3317 int curlen;
3318
3319 // start with an empty string
3320 *pCur = '\0';
3321
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003322 for ( idx = 0; idx < cRegTableEntries; idx++, pRegEntry++ )
Jeff Johnson295189b2012-06-20 16:38:30 -07003323 {
3324 pField = ( (v_U8_t *)pHddCtx->cfg_ini) + pRegEntry->VarOffset;
3325
3326 if ( ( WLAN_PARAM_Integer == pRegEntry->RegType ) ||
3327 ( WLAN_PARAM_SignedInteger == pRegEntry->RegType ) ||
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003328 ( WLAN_PARAM_HexInteger == pRegEntry->RegType ) )
Jeff Johnson295189b2012-06-20 16:38:30 -07003329 {
3330 value = 0;
3331 memcpy( &value, pField, pRegEntry->VarSize );
3332 if ( WLAN_PARAM_HexInteger == pRegEntry->RegType )
3333 {
3334 fmt = "%x";
3335 }
3336 else if ( WLAN_PARAM_SignedInteger == pRegEntry->RegType )
3337 {
3338 fmt = "%d";
3339 }
3340 else
3341 {
3342 fmt = "%u";
3343 }
3344 snprintf(valueStr, CFG_VALUE_MAX_LEN, fmt, value);
3345 }
3346 else if ( WLAN_PARAM_String == pRegEntry->RegType )
3347 {
3348 snprintf(valueStr, CFG_VALUE_MAX_LEN, "%s", (char *)pField);
3349 }
3350 else if ( WLAN_PARAM_MacAddr == pRegEntry->RegType )
3351 {
3352 pMacAddr = (v_MACADDR_t *) pField;
3353 snprintf(valueStr, CFG_VALUE_MAX_LEN,
3354 "%02x:%02x:%02x:%02x:%02x:%02x",
3355 pMacAddr->bytes[0],
3356 pMacAddr->bytes[1],
3357 pMacAddr->bytes[2],
3358 pMacAddr->bytes[3],
3359 pMacAddr->bytes[4],
3360 pMacAddr->bytes[5]);
3361 }
3362 else
3363 {
3364 snprintf(valueStr, CFG_VALUE_MAX_LEN, "(unhandled)");
3365 }
Sameer Thalappilb0a30232013-09-27 15:37:48 -07003366 curlen = scnprintf(configStr, CFG_ENTRY_MAX_LEN,
Jeff Johnson295189b2012-06-20 16:38:30 -07003367 "%s=[%s]%s\n",
3368 pRegEntry->RegName,
3369 valueStr,
3370 test_bit(idx, (void *)&pHddCtx->cfg_ini->bExplicitCfg) ?
3371 "*" : "");
3372
3373 // ideally we want to return the config to the application
3374 // however the config is too big so we just printk() for now
3375#ifdef RETURN_IN_BUFFER
3376 if (curlen <= buflen)
3377 {
3378 // copy string + '\0'
3379 memcpy(pCur, configStr, curlen+1);
3380
3381 // account for addition;
3382 pCur += curlen;
3383 buflen -= curlen;
3384 }
3385 else
3386 {
3387 // buffer space exhausted, return what we have
3388 return VOS_STATUS_E_RESOURCES;
3389 }
3390#else
3391 printk(KERN_CRIT "%s", configStr);
3392#endif // RETURN_IN_BUFFER
3393
3394}
3395
3396#ifndef RETURN_IN_BUFFER
3397 // notify application that output is in system log
3398 snprintf(pCur, buflen, "WLAN configuration written to system log");
3399#endif // RETURN_IN_BUFFER
3400
3401 return VOS_STATUS_SUCCESS;
3402}
3403
3404static VOS_STATUS find_cfg_item (tCfgIniEntry* iniTable, unsigned long entries,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003405 char *name, char** value)
Jeff Johnson295189b2012-06-20 16:38:30 -07003406{
3407 VOS_STATUS status = VOS_STATUS_E_FAILURE;
3408 unsigned long i;
3409
3410 for (i = 0; i < entries; i++) {
3411 if (strcmp(iniTable[i].name, name) == 0) {
3412 *value = iniTable[i].value;
3413 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Found %s entry for Name=[%s] Value=[%s] ",
3414 WLAN_INI_FILE, name, *value);
3415 return VOS_STATUS_SUCCESS;
3416 }
3417 }
3418
3419 return status;
3420}
3421
3422static int parseHexDigit(char c)
3423{
3424 if (c >= '0' && c <= '9')
3425 return c-'0';
3426 if (c >= 'a' && c <= 'f')
3427 return c-'a'+10;
3428 if (c >= 'A' && c <= 'F')
3429 return c-'A'+10;
3430
3431 return 0;
3432}
3433
3434
3435static VOS_STATUS hdd_apply_cfg_ini( hdd_context_t *pHddCtx, tCfgIniEntry* iniTable, unsigned long entries)
3436{
3437 VOS_STATUS match_status = VOS_STATUS_E_FAILURE;
3438 VOS_STATUS ret_status = VOS_STATUS_SUCCESS;
3439 unsigned int idx;
3440 void *pField;
3441 char *value_str = NULL;
3442 unsigned long len_value_str;
3443 char *candidate;
3444 v_U32_t value;
3445 v_S31_t svalue;
3446 void *pStructBase = pHddCtx->cfg_ini;
3447 REG_TABLE_ENTRY *pRegEntry = g_registry_table;
3448 unsigned long cRegTableEntries = sizeof(g_registry_table) / sizeof( g_registry_table[ 0 ]);
3449 v_U32_t cbOutString;
3450 int i;
Madan Mohan Koyyalamudid8ac8662012-11-06 19:04:56 -08003451 int rv;
Jeff Johnson295189b2012-06-20 16:38:30 -07003452
3453 // sanity test
3454 if (MAX_CFG_INI_ITEMS < cRegTableEntries)
3455 {
Jeff Johnson0299d0a2013-10-30 12:37:43 -07003456 hddLog(LOGE, "%s: MAX_CFG_INI_ITEMS too small, must be at least %ld",
Madan Mohan Koyyalamudi87054ba2012-11-02 13:24:12 -07003457 __func__, cRegTableEntries);
Jeff Johnson295189b2012-06-20 16:38:30 -07003458 }
3459
3460 for ( idx = 0; idx < cRegTableEntries; idx++, pRegEntry++ )
3461 {
3462 //Calculate the address of the destination field in the structure.
3463 pField = ( (v_U8_t *)pStructBase )+ pRegEntry->VarOffset;
3464
3465 match_status = find_cfg_item(iniTable, entries, pRegEntry->RegName, &value_str);
3466
3467 if( (match_status != VOS_STATUS_SUCCESS) && ( pRegEntry->Flags & VAR_FLAGS_REQUIRED ) )
3468 {
3469 // If we could not read the cfg item and it is required, this is an error.
3470 hddLog(LOGE, "%s: Failed to read required config parameter %s",
Madan Mohan Koyyalamudi87054ba2012-11-02 13:24:12 -07003471 __func__, pRegEntry->RegName);
Jeff Johnson295189b2012-06-20 16:38:30 -07003472 ret_status = VOS_STATUS_E_FAILURE;
3473 break;
3474 }
3475
3476 if ( ( WLAN_PARAM_Integer == pRegEntry->RegType ) ||
3477 ( WLAN_PARAM_HexInteger == pRegEntry->RegType ) )
3478 {
3479 // If successfully read from the registry, use the value read.
3480 // If not, use the default value.
3481 if ( match_status == VOS_STATUS_SUCCESS && (WLAN_PARAM_Integer == pRegEntry->RegType)) {
Jeff Johnson02797792013-10-26 19:17:13 -07003482 rv = kstrtou32(value_str, 10, &value);
Madan Mohan Koyyalamudid8ac8662012-11-06 19:04:56 -08003483 if (rv < 0) {
3484 hddLog(LOGE, "%s: Reg Parameter %s invalid. Enforcing default",
3485 __func__, pRegEntry->RegName);
3486 value = pRegEntry->VarDefault;
3487 }
Jeff Johnson295189b2012-06-20 16:38:30 -07003488 }
3489 else if ( match_status == VOS_STATUS_SUCCESS && (WLAN_PARAM_HexInteger == pRegEntry->RegType)) {
Jeff Johnson02797792013-10-26 19:17:13 -07003490 rv = kstrtou32(value_str, 16, &value);
Madan Mohan Koyyalamudid8ac8662012-11-06 19:04:56 -08003491 if (rv < 0) {
3492 hddLog(LOGE, "%s: Reg paramter %s invalid. Enforcing default",
3493 __func__, pRegEntry->RegName);
3494 value = pRegEntry->VarDefault;
3495 }
Jeff Johnson295189b2012-06-20 16:38:30 -07003496 }
3497 else {
3498 value = pRegEntry->VarDefault;
3499 }
3500
3501 // If this parameter needs range checking, do it here.
3502 if ( pRegEntry->Flags & VAR_FLAGS_RANGE_CHECK )
3503 {
3504 if ( value > pRegEntry->VarMax )
3505 {
Jeff Johnson0299d0a2013-10-30 12:37:43 -07003506 hddLog(LOGE, "%s: Reg Parameter %s > allowed Maximum [%u > %lu]. Enforcing Maximum",
Madan Mohan Koyyalamudi87054ba2012-11-02 13:24:12 -07003507 __func__, pRegEntry->RegName, value, pRegEntry->VarMax );
Jeff Johnson295189b2012-06-20 16:38:30 -07003508 value = pRegEntry->VarMax;
3509 }
3510
3511 if ( value < pRegEntry->VarMin )
3512 {
Jeff Johnson0299d0a2013-10-30 12:37:43 -07003513 hddLog(LOGE, "%s: Reg Parameter %s < allowed Minimum [%u < %lu]. Enforcing Minimum",
Madan Mohan Koyyalamudi87054ba2012-11-02 13:24:12 -07003514 __func__, pRegEntry->RegName, value, pRegEntry->VarMin);
Jeff Johnson295189b2012-06-20 16:38:30 -07003515 value = pRegEntry->VarMin;
3516 }
3517 }
3518 // If this parameter needs range checking, do it here.
3519 else if ( pRegEntry->Flags & VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT )
3520 {
3521 if ( value > pRegEntry->VarMax )
3522 {
Jeff Johnson0299d0a2013-10-30 12:37:43 -07003523 hddLog(LOGE, "%s: Reg Parameter %s > allowed Maximum [%u > %lu]. Enforcing Default= %lu",
Madan Mohan Koyyalamudi87054ba2012-11-02 13:24:12 -07003524 __func__, pRegEntry->RegName, value, pRegEntry->VarMax, pRegEntry->VarDefault );
Jeff Johnson295189b2012-06-20 16:38:30 -07003525 value = pRegEntry->VarDefault;
3526 }
3527
3528 if ( value < pRegEntry->VarMin )
3529 {
Jeff Johnson0299d0a2013-10-30 12:37:43 -07003530 hddLog(LOGE, "%s: Reg Parameter %s < allowed Minimum [%u < %lu]. Enforcing Default= %lu",
Madan Mohan Koyyalamudi87054ba2012-11-02 13:24:12 -07003531 __func__, pRegEntry->RegName, value, pRegEntry->VarMin, pRegEntry->VarDefault );
Jeff Johnson295189b2012-06-20 16:38:30 -07003532 value = pRegEntry->VarDefault;
3533 }
3534 }
3535
3536 // Move the variable into the output field.
3537 memcpy( pField, &value, pRegEntry->VarSize );
3538 }
3539 else if ( WLAN_PARAM_SignedInteger == pRegEntry->RegType )
3540 {
3541 // If successfully read from the registry, use the value read.
3542 // If not, use the default value.
3543 if (VOS_STATUS_SUCCESS == match_status)
3544 {
Jeff Johnson02797792013-10-26 19:17:13 -07003545 rv = kstrtos32(value_str, 10, &svalue);
Madan Mohan Koyyalamudid8ac8662012-11-06 19:04:56 -08003546 if (rv < 0) {
3547 hddLog(VOS_TRACE_LEVEL_WARN, "%s: Reg Parameter %s invalid. Enforcing Default",
3548 __func__, pRegEntry->RegName);
3549 svalue = (v_S31_t)pRegEntry->VarDefault;
3550 }
Jeff Johnson295189b2012-06-20 16:38:30 -07003551 }
3552 else
3553 {
3554 svalue = (v_S31_t)pRegEntry->VarDefault;
3555 }
3556
3557 // If this parameter needs range checking, do it here.
3558 if ( pRegEntry->Flags & VAR_FLAGS_RANGE_CHECK )
3559 {
3560 if ( svalue > (v_S31_t)pRegEntry->VarMax )
3561 {
3562 hddLog(LOGE, "%s: Reg Parameter %s > allowed Maximum "
Jeff Johnson0299d0a2013-10-30 12:37:43 -07003563 "[%d > %d]. Enforcing Maximum", __func__,
Jeff Johnson295189b2012-06-20 16:38:30 -07003564 pRegEntry->RegName, svalue, (int)pRegEntry->VarMax );
3565 svalue = (v_S31_t)pRegEntry->VarMax;
3566 }
3567
3568 if ( svalue < (v_S31_t)pRegEntry->VarMin )
3569 {
3570 hddLog(LOGE, "%s: Reg Parameter %s < allowed Minimum "
Jeff Johnson0299d0a2013-10-30 12:37:43 -07003571 "[%d < %d]. Enforcing Minimum", __func__,
Jeff Johnson295189b2012-06-20 16:38:30 -07003572 pRegEntry->RegName, svalue, (int)pRegEntry->VarMin);
3573 svalue = (v_S31_t)pRegEntry->VarMin;
3574 }
3575 }
3576 // If this parameter needs range checking, do it here.
3577 else if ( pRegEntry->Flags & VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT )
3578 {
3579 if ( svalue > (v_S31_t)pRegEntry->VarMax )
3580 {
3581 hddLog(LOGE, "%s: Reg Parameter %s > allowed Maximum "
Jeff Johnson0299d0a2013-10-30 12:37:43 -07003582 "[%d > %d]. Enforcing Default= %d",
Madan Mohan Koyyalamudi87054ba2012-11-02 13:24:12 -07003583 __func__, pRegEntry->RegName, svalue,
Jeff Johnson295189b2012-06-20 16:38:30 -07003584 (int)pRegEntry->VarMax,
3585 (int)pRegEntry->VarDefault );
3586 svalue = (v_S31_t)pRegEntry->VarDefault;
3587 }
3588
3589 if ( svalue < (v_S31_t)pRegEntry->VarMin )
3590 {
3591 hddLog(LOGE, "%s: Reg Parameter %s < allowed Minimum "
Jeff Johnson0299d0a2013-10-30 12:37:43 -07003592 "[%d < %d]. Enforcing Default= %d",
Madan Mohan Koyyalamudi87054ba2012-11-02 13:24:12 -07003593 __func__, pRegEntry->RegName, svalue,
Jeff Johnson295189b2012-06-20 16:38:30 -07003594 (int)pRegEntry->VarMin,
3595 (int)pRegEntry->VarDefault);
3596 svalue = pRegEntry->VarDefault;
3597 }
3598 }
3599
3600 // Move the variable into the output field.
3601 memcpy( pField, &svalue, pRegEntry->VarSize );
3602 }
3603 // Handle string parameters
3604 else if ( WLAN_PARAM_String == pRegEntry->RegType )
3605 {
3606#ifdef WLAN_CFG_DEBUG
Arif Hussain6d2a3322013-11-17 19:50:10 -08003607 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "RegName = %s, VarOffset %u VarSize %u VarDefault %s",
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003608 pRegEntry->RegName, pRegEntry->VarOffset, pRegEntry->VarSize, (char*)pRegEntry->VarDefault);
Jeff Johnson295189b2012-06-20 16:38:30 -07003609#endif
3610
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003611 if ( match_status == VOS_STATUS_SUCCESS)
Jeff Johnson295189b2012-06-20 16:38:30 -07003612 {
3613 len_value_str = strlen(value_str);
3614
3615 if(len_value_str > (pRegEntry->VarSize - 1)) {
Arif Hussain6d2a3322013-11-17 19:50:10 -08003616 hddLog(LOGE, "%s: Invalid Value=[%s] specified for Name=[%s] in %s",
Madan Mohan Koyyalamudi87054ba2012-11-02 13:24:12 -07003617 __func__, value_str, pRegEntry->RegName, WLAN_INI_FILE);
Jeff Johnson295189b2012-06-20 16:38:30 -07003618 cbOutString = utilMin( strlen( (char *)pRegEntry->VarDefault ), pRegEntry->VarSize - 1 );
3619 memcpy( pField, (void *)(pRegEntry->VarDefault), cbOutString );
3620 ( (v_U8_t *)pField )[ cbOutString ] = '\0';
3621 }
3622 else
3623 {
3624 memcpy( pField, (void *)(value_str), len_value_str);
3625 ( (v_U8_t *)pField )[ len_value_str ] = '\0';
3626 }
3627 }
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003628 else
Jeff Johnson295189b2012-06-20 16:38:30 -07003629 {
3630 // Failed to read the string parameter from the registry. Use the default.
3631 cbOutString = utilMin( strlen( (char *)pRegEntry->VarDefault ), pRegEntry->VarSize - 1 );
3632 memcpy( pField, (void *)(pRegEntry->VarDefault), cbOutString );
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003633 ( (v_U8_t *)pField )[ cbOutString ] = '\0';
Jeff Johnson295189b2012-06-20 16:38:30 -07003634 }
3635 }
3636 else if ( WLAN_PARAM_MacAddr == pRegEntry->RegType )
3637 {
3638 if(pRegEntry->VarSize != VOS_MAC_ADDR_SIZE) {
Arif Hussain6d2a3322013-11-17 19:50:10 -08003639 hddLog(LOGE, "%s: Invalid VarSize %u for Name=[%s]",
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003640 __func__, pRegEntry->VarSize, pRegEntry->RegName);
Jeff Johnson295189b2012-06-20 16:38:30 -07003641 continue;
3642 }
3643 candidate = (char*)pRegEntry->VarDefault;
3644 if ( match_status == VOS_STATUS_SUCCESS) {
3645 len_value_str = strlen(value_str);
3646 if(len_value_str != (VOS_MAC_ADDR_SIZE*2)) {
Arif Hussain6d2a3322013-11-17 19:50:10 -08003647 hddLog(LOGE, "%s: Invalid MAC addr [%s] specified for Name=[%s] in %s",
Madan Mohan Koyyalamudi87054ba2012-11-02 13:24:12 -07003648 __func__, value_str, pRegEntry->RegName, WLAN_INI_FILE);
Jeff Johnson295189b2012-06-20 16:38:30 -07003649 }
3650 else
3651 candidate = value_str;
3652 }
3653 //parse the string and store it in the byte array
3654 for(i=0; i<VOS_MAC_ADDR_SIZE; i++)
3655 {
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003656 ((char*)pField)[i] =
3657 (char)(parseHexDigit(candidate[i*2])*16 + parseHexDigit(candidate[i*2+1]));
Jeff Johnson295189b2012-06-20 16:38:30 -07003658 }
3659 }
3660 else
3661 {
Arif Hussain6d2a3322013-11-17 19:50:10 -08003662 hddLog(LOGE, "%s: Unknown param type for name[%s] in registry table",
Madan Mohan Koyyalamudi87054ba2012-11-02 13:24:12 -07003663 __func__, pRegEntry->RegName);
Jeff Johnson295189b2012-06-20 16:38:30 -07003664 }
3665
3666 // did we successfully parse a cfg item for this parameter?
3667 if( (match_status == VOS_STATUS_SUCCESS) &&
3668 (idx < MAX_CFG_INI_ITEMS) )
3669 {
3670 set_bit(idx, (void *)&pHddCtx->cfg_ini->bExplicitCfg);
3671 }
3672 }
3673
3674 print_hdd_cfg(pHddCtx);
3675
3676 return( ret_status );
3677}
3678
3679eCsrPhyMode hdd_cfg_xlate_to_csr_phy_mode( eHddDot11Mode dot11Mode )
3680{
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003681 switch (dot11Mode)
Jeff Johnson295189b2012-06-20 16:38:30 -07003682 {
3683 case (eHDD_DOT11_MODE_abg):
3684 return eCSR_DOT11_MODE_abg;
3685 case (eHDD_DOT11_MODE_11b):
3686 return eCSR_DOT11_MODE_11b;
3687 case (eHDD_DOT11_MODE_11g):
3688 return eCSR_DOT11_MODE_11g;
3689 default:
3690 case (eHDD_DOT11_MODE_11n):
3691 return eCSR_DOT11_MODE_11n;
3692 case (eHDD_DOT11_MODE_11g_ONLY):
3693 return eCSR_DOT11_MODE_11g_ONLY;
3694 case (eHDD_DOT11_MODE_11n_ONLY):
3695 return eCSR_DOT11_MODE_11n_ONLY;
3696 case (eHDD_DOT11_MODE_11b_ONLY):
3697 return eCSR_DOT11_MODE_11b_ONLY;
Jeff Johnsone7245742012-09-05 17:12:55 -07003698#ifdef WLAN_FEATURE_11AC
3699 case (eHDD_DOT11_MODE_11ac_ONLY):
3700 return eCSR_DOT11_MODE_11ac_ONLY;
3701 case (eHDD_DOT11_MODE_11ac):
3702 return eCSR_DOT11_MODE_11ac;
3703#endif
Jeff Johnson295189b2012-06-20 16:38:30 -07003704 case (eHDD_DOT11_MODE_AUTO):
3705 return eCSR_DOT11_MODE_AUTO;
3706 }
3707
3708}
3709
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003710static void hdd_set_btc_config(hdd_context_t *pHddCtx)
Jeff Johnson295189b2012-06-20 16:38:30 -07003711{
3712 hdd_config_t *pConfig = pHddCtx->cfg_ini;
3713 tSmeBtcConfig btcParams;
Wilson Tsaof8b37942013-09-06 10:49:00 -07003714 int i;
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003715
Jeff Johnson295189b2012-06-20 16:38:30 -07003716 sme_BtcGetConfig(pHddCtx->hHal, &btcParams);
3717
3718 btcParams.btcExecutionMode = pConfig->btcExecutionMode;
Jeff Johnson295189b2012-06-20 16:38:30 -07003719 btcParams.btcConsBtSlotsToBlockDuringDhcp = pConfig->btcConsBtSlotsToBlockDuringDhcp;
Jeff Johnson295189b2012-06-20 16:38:30 -07003720 btcParams.btcA2DPBtSubIntervalsDuringDhcp = pConfig->btcA2DPBtSubIntervalsDuringDhcp;
3721
Jeff Johnson32d95a32012-09-10 13:15:23 -07003722 btcParams.btcStaticLenInqBt = pConfig->btcStaticLenInqBt;
3723 btcParams.btcStaticLenPageBt = pConfig->btcStaticLenPageBt;
3724 btcParams.btcStaticLenConnBt = pConfig->btcStaticLenConnBt;
3725 btcParams.btcStaticLenLeBt = pConfig->btcStaticLenLeBt;
3726 btcParams.btcStaticLenInqWlan = pConfig->btcStaticLenInqWlan;
3727 btcParams.btcStaticLenPageWlan = pConfig->btcStaticLenPageWlan;
3728 btcParams.btcStaticLenConnWlan = pConfig->btcStaticLenConnWlan;
3729 btcParams.btcStaticLenLeWlan = pConfig->btcStaticLenLeWlan;
3730 btcParams.btcDynMaxLenBt = pConfig->btcDynMaxLenBt;
3731 btcParams.btcDynMaxLenWlan = pConfig->btcDynMaxLenWlan;
3732 btcParams.btcMaxScoBlockPerc = pConfig->btcMaxScoBlockPerc;
3733 btcParams.btcDhcpProtOnA2dp = pConfig->btcDhcpProtOnA2dp;
3734 btcParams.btcDhcpProtOnSco = pConfig->btcDhcpProtOnSco;
3735
Wilson Tsaof8b37942013-09-06 10:49:00 -07003736 for (i = 0; i < 10; i++)
3737 {
3738 btcParams.mwsCoexVictimWANFreq[i] = pConfig->mwsCoexVictimWANFreq[i];
3739 btcParams.mwsCoexVictimWLANFreq[i] = pConfig->mwsCoexVictimWLANFreq[i];
3740 btcParams.mwsCoexVictimConfig[i] = pConfig->mwsCoexVictimConfig[i];
3741 btcParams.mwsCoexVictimConfig2[i] = pConfig->mwsCoexVictimConfig2[i];
3742 }
3743 for (i = 0; i < 6; i++)
3744 {
3745 btcParams.mwsCoexConfig[i] = pConfig->mwsCoexConfig[i];
3746 }
3747 btcParams.mwsCoexModemBackoff = pConfig->mwsCoexModemBackoff;
3748 btcParams.SARPowerBackoff = pConfig->SARPowerBackoff;
3749
Jeff Johnson295189b2012-06-20 16:38:30 -07003750 sme_BtcSetConfig(pHddCtx->hHal, &btcParams);
3751}
3752
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003753static void hdd_set_power_save_config(hdd_context_t *pHddCtx, tSmeConfigParams *smeConfig)
Jeff Johnson295189b2012-06-20 16:38:30 -07003754{
3755 hdd_config_t *pConfig = pHddCtx->cfg_ini;
3756
3757 tPmcBmpsConfigParams bmpsParams;
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003758
Jeff Johnson295189b2012-06-20 16:38:30 -07003759 sme_GetConfigPowerSave(pHddCtx->hHal, ePMC_BEACON_MODE_POWER_SAVE, &bmpsParams);
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003760
Jeff Johnson295189b2012-06-20 16:38:30 -07003761 if (strcmp(pConfig->PowerUsageControl, "Min") == 0)
3762 {
3763 smeConfig->csrConfig.impsSleepTime = pConfig->nImpsMinSleepTime;
3764 bmpsParams.bmpsPeriod = pConfig->nBmpsMinListenInterval;
3765 bmpsParams.enableBeaconEarlyTermination = pConfig->fEnableBeaconEarlyTermination;
3766 bmpsParams.bcnEarlyTermWakeInterval = pConfig->bcnEarlyTermWakeInterval;
3767 }
3768 if (strcmp(pConfig->PowerUsageControl, "Max") == 0)
3769 {
3770 smeConfig->csrConfig.impsSleepTime = pConfig->nImpsMaxSleepTime;
3771 bmpsParams.bmpsPeriod = pConfig->nBmpsMaxListenInterval;
3772 bmpsParams.enableBeaconEarlyTermination = pConfig->fEnableBeaconEarlyTermination;
3773 bmpsParams.bcnEarlyTermWakeInterval = pConfig->bcnEarlyTermWakeInterval;
3774 }
3775 if (strcmp(pConfig->PowerUsageControl, "Mod") == 0)
3776 {
3777 smeConfig->csrConfig.impsSleepTime = pConfig->nImpsModSleepTime;
3778 bmpsParams.bmpsPeriod = pConfig->nBmpsModListenInterval;
3779 bmpsParams.enableBeaconEarlyTermination = pConfig->fEnableBeaconEarlyTermination;
3780 bmpsParams.bcnEarlyTermWakeInterval = pConfig->bcnEarlyTermWakeInterval;
3781 }
3782
3783 if (pConfig->fIsImpsEnabled)
3784 {
3785 sme_EnablePowerSave (pHddCtx->hHal, ePMC_IDLE_MODE_POWER_SAVE);
3786 }
3787 else
3788 {
3789 sme_DisablePowerSave (pHddCtx->hHal, ePMC_IDLE_MODE_POWER_SAVE);
3790 }
3791
Madan Mohan Koyyalamudi69b34182013-01-16 08:51:40 +05303792 /*If isAndroidPsEn is 1 then Host driver and above layers control the PS mechanism
3793 If Value set to 0 Driver/Core Stack internally control the Power saving mechanism */
3794 sme_SetHostPowerSave (pHddCtx->hHal, pConfig->isAndroidPsEn);
3795
Jeff Johnson295189b2012-06-20 16:38:30 -07003796 if (pConfig->fIsBmpsEnabled)
3797 {
3798 sme_EnablePowerSave (pHddCtx->hHal, ePMC_BEACON_MODE_POWER_SAVE);
3799 }
3800 else
3801 {
3802 sme_DisablePowerSave (pHddCtx->hHal, ePMC_BEACON_MODE_POWER_SAVE);
3803 }
3804
3805 bmpsParams.trafficMeasurePeriod = pConfig->nAutoBmpsTimerValue;
3806
3807 if (sme_SetConfigPowerSave(pHddCtx->hHal, ePMC_BEACON_MODE_POWER_SAVE, &bmpsParams)== eHAL_STATUS_FAILURE)
3808 {
Arif Hussain6d2a3322013-11-17 19:50:10 -08003809 hddLog(LOGE, "SetConfigPowerSave failed to set BMPS params");
Jeff Johnson295189b2012-06-20 16:38:30 -07003810 }
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003811
Jeff Johnson295189b2012-06-20 16:38:30 -07003812 if(pConfig->fIsAutoBmpsTimerEnabled)
3813 {
3814 sme_StartAutoBmpsTimer(pHddCtx->hHal);
3815 }
3816
3817}
3818
3819#ifdef WLAN_FEATURE_NEIGHBOR_ROAMING
3820static VOS_STATUS hdd_string_to_u8_array( char *str, tANI_U8 *intArray, tANI_U8 *len, tANI_U8 intArrayMaxLen )
3821{
3822 char *s = str;
3823
3824 if( str == NULL || intArray == NULL || len == NULL )
3825 {
3826 return VOS_STATUS_E_INVAL;
3827 }
3828 *len = 0;
3829
Jeff Johnson295189b2012-06-20 16:38:30 -07003830 while ( (s != NULL) && (*len < intArrayMaxLen) )
3831 {
3832 int val;
3833 //Increment length only if sscanf succesfully extracted one element.
3834 //Any other return value means error. Ignore it.
3835 if( sscanf(s, "%d", &val ) == 1 )
3836 {
3837 intArray[*len] = (tANI_U8) val;
3838 *len += 1;
3839 }
3840 s = strpbrk( s, "," );
3841 if( s )
3842 s++;
3843 }
Jeff Johnson295189b2012-06-20 16:38:30 -07003844
3845 return VOS_STATUS_SUCCESS;
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003846
Jeff Johnson295189b2012-06-20 16:38:30 -07003847}
3848#endif
3849
3850
3851v_BOOL_t hdd_update_config_dat( hdd_context_t *pHddCtx )
3852{
3853 v_BOOL_t fStatus = TRUE;
Gopichand Nakkala976e3252013-01-03 15:45:56 -08003854#ifdef WLAN_SOFTAP_VSTA_FEATURE
3855 tANI_U32 val;
3856#endif
Jeff Johnson295189b2012-06-20 16:38:30 -07003857
3858 hdd_config_t *pConfig = pHddCtx->cfg_ini;
Pratik Bhalgat6bfd1422012-11-22 17:09:40 +05303859 tSirMacHTCapabilityInfo htCapInfo;
3860
Jeff Johnson295189b2012-06-20 16:38:30 -07003861
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003862 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_SHORT_GI_20MHZ,
Jeff Johnson295189b2012-06-20 16:38:30 -07003863 pConfig->ShortGI20MhzEnable, NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
3864 {
3865 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08003866 hddLog(LOGE, "Could not pass on WNI_CFG_SHORT_GI_20MHZ to CCM");
Jeff Johnson295189b2012-06-20 16:38:30 -07003867 }
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003868
3869 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_CAL_CONTROL, pConfig->Calibration,
Jeff Johnson295189b2012-06-20 16:38:30 -07003870 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
3871 {
3872 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08003873 hddLog(LOGE, "Could not pass on WNI_CFG_CAL_CONTROL to CCM");
Jeff Johnson295189b2012-06-20 16:38:30 -07003874 }
3875
3876 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_CAL_PERIOD, pConfig->CalibrationPeriod,
3877 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
3878 {
3879 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08003880 hddLog(LOGE, "Could not pass on WNI_CFG_CAL_PERIOD to CCM");
Jeff Johnson295189b2012-06-20 16:38:30 -07003881 }
3882
3883 if ( 0 != pConfig->Cfg1Id )
3884 {
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003885 if (ccmCfgSetInt(pHddCtx->hHal, pConfig->Cfg1Id, pConfig->Cfg1Value, NULL,
Jeff Johnson295189b2012-06-20 16:38:30 -07003886 eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
3887 {
3888 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08003889 hddLog(LOGE, "Could not pass on Cfg1Id to CCM");
Jeff Johnson295189b2012-06-20 16:38:30 -07003890 }
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003891
Jeff Johnson295189b2012-06-20 16:38:30 -07003892 }
3893
3894 if ( 0 != pConfig->Cfg2Id )
3895 {
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003896 if (ccmCfgSetInt(pHddCtx->hHal, pConfig->Cfg2Id, pConfig->Cfg2Value,
Jeff Johnson295189b2012-06-20 16:38:30 -07003897 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
3898 {
3899 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08003900 hddLog(LOGE, "Could not pass on Cfg2Id to CCM");
Jeff Johnson295189b2012-06-20 16:38:30 -07003901 }
3902 }
3903
3904 if ( 0 != pConfig->Cfg3Id )
3905 {
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003906 if (ccmCfgSetInt(pHddCtx->hHal, pConfig->Cfg3Id, pConfig->Cfg3Value,
Jeff Johnson295189b2012-06-20 16:38:30 -07003907 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
3908 {
3909 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08003910 hddLog(LOGE, "Could not pass on Cfg3Id to CCM");
Jeff Johnson295189b2012-06-20 16:38:30 -07003911 }
3912 }
3913
3914 if ( 0 != pConfig->Cfg4Id )
3915 {
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003916 if (ccmCfgSetInt(pHddCtx->hHal, pConfig->Cfg4Id, pConfig->Cfg4Value,
Jeff Johnson295189b2012-06-20 16:38:30 -07003917 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
3918 {
3919 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08003920 hddLog(LOGE, "Could not pass on Cfg4Id to CCM");
Jeff Johnson295189b2012-06-20 16:38:30 -07003921 }
3922 }
3923
3924 if ( 0 != pConfig->Cfg5Id )
3925 {
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003926 if (ccmCfgSetInt(pHddCtx->hHal, pConfig->Cfg5Id, pConfig->Cfg5Value,
Jeff Johnson295189b2012-06-20 16:38:30 -07003927 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
3928 {
3929 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08003930 hddLog(LOGE, "Could not pass on Cfg5Id to CCM");
Jeff Johnson295189b2012-06-20 16:38:30 -07003931 }
3932 }
3933
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003934 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_BA_AUTO_SETUP, pConfig->BlockAckAutoSetup,
Jeff Johnson295189b2012-06-20 16:38:30 -07003935 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
3936 {
3937 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08003938 hddLog(LOGE, "Could not pass on WNI_CFG_BA_AUTO_SETUP to CCM");
Jeff Johnson295189b2012-06-20 16:38:30 -07003939 }
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003940
3941 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_FIXED_RATE, pConfig->TxRate,
Jeff Johnson295189b2012-06-20 16:38:30 -07003942 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
3943 {
3944 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08003945 hddLog(LOGE, "Could not pass on WNI_CFG_FIXED_RATE to CCM");
Jeff Johnson295189b2012-06-20 16:38:30 -07003946 }
3947
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003948 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_MAX_RX_AMPDU_FACTOR,
Jeff Johnson295189b2012-06-20 16:38:30 -07003949 pConfig->MaxRxAmpduFactor, NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
3950 {
3951 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08003952 hddLog(LOGE,"Could not pass on WNI_CFG_HT_AMPDU_PARAMS_MAX_RX_AMPDU_FACTOR to CCM");
Jeff Johnson295189b2012-06-20 16:38:30 -07003953 }
3954
3955 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_SHORT_PREAMBLE, pConfig->fIsShortPreamble,
3956 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
3957 {
3958 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08003959 hddLog(LOGE,"Could not pass on WNI_CFG_SHORT_PREAMBLE to CCM");
Jeff Johnson295189b2012-06-20 16:38:30 -07003960 }
3961
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003962 if (pConfig->fIsAutoIbssBssid)
Jeff Johnson295189b2012-06-20 16:38:30 -07003963 {
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003964 if (ccmCfgSetStr(pHddCtx->hHal, WNI_CFG_BSSID, (v_U8_t *)"000000000000",
Jeff Johnson295189b2012-06-20 16:38:30 -07003965 sizeof(v_BYTE_t) * VOS_MAC_ADDR_SIZE, NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
3966 {
3967 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08003968 hddLog(LOGE,"Could not pass on WNI_CFG_BSSID to CCM");
Jeff Johnson295189b2012-06-20 16:38:30 -07003969 }
3970 }
3971 else
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003972 {
Jeff Johnson295189b2012-06-20 16:38:30 -07003973 if ( VOS_FALSE == vos_is_macaddr_group( &pConfig->IbssBssid ))
3974 {
3975 VOS_TRACE( VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_MED,
Arif Hussain24bafea2013-11-15 15:10:03 -08003976 "MAC Addr (IBSS BSSID) read from Registry is: " MAC_ADDRESS_STR,
3977 MAC_ADDR_ARRAY(pConfig->IbssBssid.bytes));
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003978 if (ccmCfgSetStr(pHddCtx->hHal, WNI_CFG_BSSID, pConfig->IbssBssid.bytes,
Jeff Johnson295189b2012-06-20 16:38:30 -07003979 sizeof(v_BYTE_t) * VOS_MAC_ADDR_SIZE, NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
3980 {
3981 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08003982 hddLog(LOGE,"Could not pass on WNI_CFG_BSSID to CCM");
Jeff Johnson295189b2012-06-20 16:38:30 -07003983 }
3984 }
3985 else
3986 {
3987 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08003988 hddLog(LOGE,"Could not pass on WNI_CFG_BSSID to CCM");
Jeff Johnson295189b2012-06-20 16:38:30 -07003989 }
3990 }
3991
Naresh Jayaram3df09eb2013-12-18 17:39:04 +05303992 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_PASSIVE_MINIMUM_CHANNEL_TIME,
3993 pConfig->nPassiveMinChnTime, NULL,
3994 eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
3995 {
3996 fStatus = FALSE;
3997 hddLog(LOGE, "Could not pass on WNI_CFG_PASSIVE_MINIMUM_CHANNEL_TIME"
3998 " to CCM\n");
3999 }
4000
4001 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_PASSIVE_MAXIMUM_CHANNEL_TIME,
4002 pConfig->nPassiveMaxChnTime, NULL,
4003 eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
4004 {
4005 fStatus = FALSE;
4006 hddLog(LOGE, "Could not pass on WNI_CFG_PASSIVE_MAXIMUM_CHANNEL_TIME"
4007 " to CCM\n");
4008 }
4009
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004010 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_BEACON_INTERVAL, pConfig->nBeaconInterval,
Jeff Johnson295189b2012-06-20 16:38:30 -07004011 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
4012 {
4013 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08004014 hddLog(LOGE, "Could not pass on WNI_CFG_BEACON_INTERVAL to CCM");
Jeff Johnson295189b2012-06-20 16:38:30 -07004015 }
4016
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004017 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_MAX_PS_POLL, pConfig->nMaxPsPoll,
Jeff Johnson295189b2012-06-20 16:38:30 -07004018 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
4019 {
4020 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08004021 hddLog(LOGE, "Could not pass on WNI_CFG_MAX_PS_POLL to CCM");
Jeff Johnson295189b2012-06-20 16:38:30 -07004022 }
4023
4024 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_CURRENT_RX_ANTENNA, pConfig-> nRxAnt, NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
4025 {
4026 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08004027 hddLog(LOGE, "Failure: Could not pass on WNI_CFG_CURRENT_RX_ANTENNA configuration info to HAL" );
Jeff Johnson295189b2012-06-20 16:38:30 -07004028 }
4029
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004030 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_LOW_GAIN_OVERRIDE, pConfig->fIsLowGainOverride,
Jeff Johnson295189b2012-06-20 16:38:30 -07004031 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
4032 {
4033 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08004034 hddLog(LOGE, "Could not pass on WNI_CFG_LOW_GAIN_OVERRIDE to HAL");
Jeff Johnson295189b2012-06-20 16:38:30 -07004035 }
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004036
Jeff Johnson295189b2012-06-20 16:38:30 -07004037 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_RSSI_FILTER_PERIOD, pConfig->nRssiFilterPeriod,
4038 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
4039 {
4040 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08004041 hddLog(LOGE, "Could not pass on WNI_CFG_RSSI_FILTER_PERIOD to CCM");
Jeff Johnson295189b2012-06-20 16:38:30 -07004042 }
4043
Jeff Johnson295189b2012-06-20 16:38:30 -07004044 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_IGNORE_DTIM, pConfig->fIgnoreDtim,
4045 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
4046 {
4047 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08004048 hddLog(LOGE, "Could not pass on WNI_IGNORE_DTIM configuration to CCM" );
Jeff Johnson295189b2012-06-20 16:38:30 -07004049 }
4050
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004051 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_PS_ENABLE_HEART_BEAT, pConfig->fEnableFwHeartBeatMonitoring,
Jeff Johnson295189b2012-06-20 16:38:30 -07004052 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
4053 {
4054 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08004055 hddLog(LOGE, "Failure: Could not pass on WNI_CFG_PS_HEART_BEAT configuration info to CCM");
Jeff Johnson295189b2012-06-20 16:38:30 -07004056 }
4057
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004058 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_PS_ENABLE_BCN_FILTER, pConfig->fEnableFwBeaconFiltering,
Jeff Johnson295189b2012-06-20 16:38:30 -07004059 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
4060 {
4061 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08004062 hddLog(LOGE, "Failure: Could not pass on WNI_CFG_PS_BCN_FILTER configuration info to CCM");
Jeff Johnson295189b2012-06-20 16:38:30 -07004063 }
4064
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004065 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_PS_ENABLE_RSSI_MONITOR, pConfig->fEnableFwRssiMonitoring,
Jeff Johnson295189b2012-06-20 16:38:30 -07004066 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
4067 {
4068 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08004069 hddLog(LOGE, "Failure: Could not pass on WNI_CFG_PS_RSSI_MONITOR configuration info to CCM");
Jeff Johnson295189b2012-06-20 16:38:30 -07004070 }
4071
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004072 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_PS_DATA_INACTIVITY_TIMEOUT, pConfig->nDataInactivityTimeout,
Jeff Johnson295189b2012-06-20 16:38:30 -07004073 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
4074 {
4075 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08004076 hddLog(LOGE,"Failure: Could not pass on WNI_CFG_PS_DATA_INACTIVITY_TIMEOUT configuration info to CCM");
Jeff Johnson295189b2012-06-20 16:38:30 -07004077 }
4078
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004079 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_NTH_BEACON_FILTER, pConfig->nthBeaconFilter,
Jeff Johnson295189b2012-06-20 16:38:30 -07004080 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
4081 {
4082 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08004083 hddLog(LOGE,"Failure: Could not pass on WNI_CFG_NTH_BEACON_FILTER configuration info to CCM");
Jeff Johnson295189b2012-06-20 16:38:30 -07004084 }
4085
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004086 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_ENABLE_LTE_COEX, pConfig->enableLTECoex,
Jeff Johnson295189b2012-06-20 16:38:30 -07004087 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
4088 {
4089 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08004090 hddLog(LOGE, "Could not pass on WNI_CFG_ENABLE_LTE_COEX to CCM");
Jeff Johnson295189b2012-06-20 16:38:30 -07004091 }
4092
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004093 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_ENABLE_PHY_AGC_LISTEN_MODE, pConfig->nEnableListenMode,
Jeff Johnson295189b2012-06-20 16:38:30 -07004094 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
4095 {
4096 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08004097 hddLog(LOGE, "Could not pass on WNI_CFG_ENABLE_PHY_AGC_LISTEN_MODE to CCM");
Jeff Johnson295189b2012-06-20 16:38:30 -07004098 }
4099
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004100 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_AP_KEEP_ALIVE_TIMEOUT, pConfig->apKeepAlivePeriod,
Jeff Johnson295189b2012-06-20 16:38:30 -07004101 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
4102 {
4103 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08004104 hddLog(LOGE, "Could not pass on WNI_CFG_AP_KEEP_ALIVE_TIMEOUT to CCM");
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004105 }
Jeff Johnson295189b2012-06-20 16:38:30 -07004106
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004107 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_GO_KEEP_ALIVE_TIMEOUT, pConfig->goKeepAlivePeriod,
Jeff Johnson295189b2012-06-20 16:38:30 -07004108 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
4109 {
4110 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08004111 hddLog(LOGE, "Could not pass on WNI_CFG_GO_KEEP_ALIVE_TIMEOUT to CCM");
Jeff Johnson295189b2012-06-20 16:38:30 -07004112 }
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004113
Sejal Chauhanbcde8bc2013-03-04 18:06:36 +05304114 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_AP_LINK_MONITOR_TIMEOUT, pConfig->apLinkMonitorPeriod,
4115 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
4116 {
4117 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08004118 hddLog(LOGE, "Could not pass on WNI_CFG_AP_LINK_MONITOR_TIMEOUT to CCM");
Sejal Chauhanbcde8bc2013-03-04 18:06:36 +05304119 }
4120
Madan Mohan Koyyalamudi2558bc92013-08-24 16:54:31 +05304121 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_GO_LINK_MONITOR_TIMEOUT, pConfig->goLinkMonitorPeriod,
4122 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
4123 {
4124 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08004125 hddLog(LOGE, "Could not pass on WNI_CFG_GO_LINK_MONITOR_TIMEOUT to CCM");
Madan Mohan Koyyalamudi2558bc92013-08-24 16:54:31 +05304126 }
4127
4128
Jeff Johnson295189b2012-06-20 16:38:30 -07004129#if defined WLAN_FEATURE_VOWIFI
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004130 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_RRM_ENABLED, pConfig->fRrmEnable,
Jeff Johnson295189b2012-06-20 16:38:30 -07004131 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
4132 {
4133 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08004134 hddLog(LOGE,"Failure: Could not pass on WNI_CFG_RRM_ENABLE configuration info to CCM");
Jeff Johnson295189b2012-06-20 16:38:30 -07004135 }
4136
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004137 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_RRM_OPERATING_CHAN_MAX, pConfig->nInChanMeasMaxDuration,
Jeff Johnson295189b2012-06-20 16:38:30 -07004138 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
4139 {
4140 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08004141 hddLog(LOGE,"Failure: Could not pass on WNI_CFG_RRM_OPERATING_CHAN_MAX configuration info to CCM");
Jeff Johnson295189b2012-06-20 16:38:30 -07004142 }
4143
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004144 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_RRM_NON_OPERATING_CHAN_MAX, pConfig->nOutChanMeasMaxDuration,
Jeff Johnson295189b2012-06-20 16:38:30 -07004145 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
4146 {
4147 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08004148 hddLog(LOGE,"Failure: Could not pass on WNI_CFG_RRM_OUT_CHAN_MAX configuration info to CCM");
Jeff Johnson295189b2012-06-20 16:38:30 -07004149 }
4150
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004151 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_MCAST_BCAST_FILTER_SETTING, pConfig->mcastBcastFilterSetting,
Jeff Johnson295189b2012-06-20 16:38:30 -07004152 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
4153#endif
4154
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004155 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_SINGLE_TID_RC, pConfig->bSingleTidRc,
Jeff Johnson295189b2012-06-20 16:38:30 -07004156 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
4157 {
4158 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08004159 hddLog(LOGE,"Failure: Could not pass on WNI_CFG_SINGLE_TID_RC configuration info to CCM");
Jeff Johnson295189b2012-06-20 16:38:30 -07004160 }
4161
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004162 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_TELE_BCN_WAKEUP_EN, pConfig->teleBcnWakeupEn,
Jeff Johnson295189b2012-06-20 16:38:30 -07004163 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
4164 {
4165 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08004166 hddLog(LOGE,"Failure: Could not pass on WNI_CFG_TELE_BCN_WAKEUP_EN configuration info to CCM" );
Jeff Johnson295189b2012-06-20 16:38:30 -07004167 }
4168
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004169 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_TELE_BCN_TRANS_LI, pConfig->nTeleBcnTransListenInterval,
Jeff Johnson295189b2012-06-20 16:38:30 -07004170 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
4171 {
4172 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08004173 hddLog(LOGE,"Failure: Could not pass on WNI_CFG_TELE_BCN_TRANS_LI configuration info to CCM" );
Jeff Johnson295189b2012-06-20 16:38:30 -07004174 }
4175
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004176 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_TELE_BCN_MAX_LI, pConfig->nTeleBcnMaxListenInterval,
Jeff Johnson295189b2012-06-20 16:38:30 -07004177 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
4178 {
4179 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08004180 hddLog(LOGE,"Failure: Could not pass on WNI_CFG_TELE_BCN_MAX_LI configuration info to CCM" );
Jeff Johnson295189b2012-06-20 16:38:30 -07004181 }
4182
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004183 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_TELE_BCN_TRANS_LI_IDLE_BCNS, pConfig->nTeleBcnTransLiNumIdleBeacons,
Jeff Johnson295189b2012-06-20 16:38:30 -07004184 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
4185 {
4186 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08004187 hddLog(LOGE,"Failure: Could not pass on WNI_CFG_TELE_BCN_TRANS_LI_IDLE_BCNS configuration info to CCM" );
Jeff Johnson295189b2012-06-20 16:38:30 -07004188 }
4189
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004190 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_TELE_BCN_MAX_LI_IDLE_BCNS, pConfig->nTeleBcnMaxLiNumIdleBeacons,
Jeff Johnson295189b2012-06-20 16:38:30 -07004191 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
4192 {
4193 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08004194 hddLog(LOGE,"Failure: Could not pass on WNI_CFG_TELE_BCN_MAX_LI_IDLE_BCNS configuration info to CCM" );
Jeff Johnson295189b2012-06-20 16:38:30 -07004195 }
4196
4197 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_RF_SETTLING_TIME_CLK, pConfig->rfSettlingTimeUs,
4198 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
4199 {
4200 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08004201 hddLog(LOGE,"Failure: Could not pass on WNI_CFG_RF_SETTLING_TIME_CLK configuration info to CCM" );
Jeff Johnson295189b2012-06-20 16:38:30 -07004202 }
4203
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004204 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_INFRA_STA_KEEP_ALIVE_PERIOD, pConfig->infraStaKeepAlivePeriod,
Jeff Johnson295189b2012-06-20 16:38:30 -07004205 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
4206 {
4207 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08004208 hddLog(LOGE,"Failure: Could not pass on WNI_CFG_INFRA_STA_KEEP_ALIVE_PERIOD configuration info to CCM" );
Jeff Johnson295189b2012-06-20 16:38:30 -07004209 }
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004210 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_DYNAMIC_PS_POLL_VALUE, pConfig->dynamicPsPollValue,
Jeff Johnson295189b2012-06-20 16:38:30 -07004211 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
4212 {
4213 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08004214 hddLog(LOGE,"Failure: Could not pass on WNI_CFG_DYNAMIC_PS_POLL_VALUE configuration info to CCM" );
Jeff Johnson295189b2012-06-20 16:38:30 -07004215 }
4216
4217 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_PS_NULLDATA_AP_RESP_TIMEOUT, pConfig->nNullDataApRespTimeout,
4218 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
4219 {
4220 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08004221 hddLog(LOGE,"Failure: Could not pass on WNI_CFG_PS_NULLDATA_DELAY_TIMEOUT configuration info to CCM" );
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004222 }
Jeff Johnson295189b2012-06-20 16:38:30 -07004223
Jeff Johnsoneed2dca2013-02-22 21:18:46 -08004224 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_AP_DATA_AVAIL_POLL_PERIOD, pConfig->apDataAvailPollPeriodInMs,
Jeff Johnson295189b2012-06-20 16:38:30 -07004225 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
Jeff Johnsoneed2dca2013-02-22 21:18:46 -08004226 {
4227 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08004228 hddLog(LOGE,"Failure: Could not pass on WNI_CFG_AP_DATA_AVAIL_POLL_PERIOD configuration info to CCM" );
Jeff Johnsoneed2dca2013-02-22 21:18:46 -08004229 }
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004230 if(ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_FRAGMENTATION_THRESHOLD, pConfig->FragmentationThreshold,
Jeff Johnson295189b2012-06-20 16:38:30 -07004231 NULL, eANI_BOOLEAN_FALSE) == eHAL_STATUS_FAILURE)
4232 {
4233 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08004234 hddLog(LOGE,"Failure: Could not pass on WNI_CFG_FRAGMENTATION_THRESHOLD configuration info to CCM" );
Jeff Johnson295189b2012-06-20 16:38:30 -07004235 }
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004236 if(ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_RTS_THRESHOLD, pConfig->RTSThreshold,
Jeff Johnson295189b2012-06-20 16:38:30 -07004237 NULL, eANI_BOOLEAN_FALSE) == eHAL_STATUS_FAILURE)
4238 {
4239 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08004240 hddLog(LOGE,"Failure: Could not pass on WNI_CFG_RTS_THRESHOLD configuration info to CCM" );
Jeff Johnson295189b2012-06-20 16:38:30 -07004241 }
4242
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004243 if(ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_11D_ENABLED, pConfig->Is11dSupportEnabled,
Jeff Johnson295189b2012-06-20 16:38:30 -07004244 NULL, eANI_BOOLEAN_FALSE) == eHAL_STATUS_FAILURE)
4245 {
4246 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08004247 hddLog(LOGE,"Failure: Could not pass on WNI_CFG_11D_ENABLED configuration info to CCM" );
Jeff Johnson295189b2012-06-20 16:38:30 -07004248 }
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004249 if(ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_HEART_BEAT_THRESHOLD, pConfig->HeartbeatThresh24,
Jeff Johnson295189b2012-06-20 16:38:30 -07004250 NULL, eANI_BOOLEAN_FALSE) == eHAL_STATUS_FAILURE)
4251 {
4252 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08004253 hddLog(LOGE,"Failure: Could not pass on WNI_CFG_HEART_BEAT_THRESHOLD configuration info to CCM" );
Jeff Johnson295189b2012-06-20 16:38:30 -07004254 }
4255
Jeff Johnson295189b2012-06-20 16:38:30 -07004256 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_AP_DATA_AVAIL_POLL_PERIOD, pConfig->apDataAvailPollPeriodInMs,
4257 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
4258 {
4259 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08004260 hddLog(LOGE,"Failure: Could not pass on WNI_CFG_AP_DATA_AVAIL_POLL_PERIOD configuration info to CCM" );
Jeff Johnson295189b2012-06-20 16:38:30 -07004261 }
4262
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004263 if(ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_ENABLE_CLOSE_LOOP,
Jeff Johnson295189b2012-06-20 16:38:30 -07004264 pConfig->enableCloseLoop, NULL, eANI_BOOLEAN_FALSE)
4265 ==eHAL_STATUS_FAILURE)
4266 {
4267 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08004268 hddLog(LOGE, "Could not pass on WNI_CFG_ENABLE_CLOSE_LOOP to CCM");
Jeff Johnson295189b2012-06-20 16:38:30 -07004269 }
4270
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004271 if(ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_TX_PWR_CTRL_ENABLE,
Jeff Johnson295189b2012-06-20 16:38:30 -07004272 pConfig->enableAutomaticTxPowerControl, NULL, eANI_BOOLEAN_FALSE)
4273 ==eHAL_STATUS_FAILURE)
4274 {
4275 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08004276 hddLog(LOGE, "Could not pass on WNI_CFG_TX_PWR_CTRL_ENABLE to CCM");
Jeff Johnson295189b2012-06-20 16:38:30 -07004277 }
4278
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004279 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_SHORT_GI_40MHZ,
Jeff Johnson295189b2012-06-20 16:38:30 -07004280 pConfig->ShortGI40MhzEnable, NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
4281 {
4282 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08004283 hddLog(LOGE, "Could not pass on WNI_CFG_SHORT_GI_40MHZ to CCM");
Jeff Johnson295189b2012-06-20 16:38:30 -07004284 }
4285
Jeff Johnsond13512a2012-07-17 11:42:19 -07004286
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004287 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_ENABLE_MC_ADDR_LIST, pConfig->fEnableMCAddrList,
Jeff Johnsond13512a2012-07-17 11:42:19 -07004288 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
4289 {
4290 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08004291 hddLog(LOGE, "Could not pass on WNI_CFG_ENABLE_MC_ADDR_LIST to CCM");
Jeff Johnsond13512a2012-07-17 11:42:19 -07004292 }
4293
Jeff Johnsone7245742012-09-05 17:12:55 -07004294#ifdef WLAN_FEATURE_11AC
4295 /* Based on cfg.ini, update the Basic MCS set, RX/TX MCS map in the cfg.dat */
4296 /* valid values are 0(MCS0-7), 1(MCS0-8), 2(MCS0-9) */
4297 /* we update only the least significant 2 bits in the corresponding fields */
4298 if( (pConfig->dot11Mode == eHDD_DOT11_MODE_AUTO) ||
4299 (pConfig->dot11Mode == eHDD_DOT11_MODE_11ac_ONLY) ||
4300 (pConfig->dot11Mode == eHDD_DOT11_MODE_11ac) )
4301 {
4302 {
4303 tANI_U32 temp = 0;
4304
4305 ccmCfgGetInt(pHddCtx->hHal, WNI_CFG_VHT_BASIC_MCS_SET, &temp);
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004306 temp = (temp & 0xFFFC) | pConfig->vhtRxMCS;
Jeff Johnsone7245742012-09-05 17:12:55 -07004307
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004308 if(ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_VHT_BASIC_MCS_SET,
Jeff Johnsone7245742012-09-05 17:12:55 -07004309 temp, NULL, eANI_BOOLEAN_FALSE)
4310 ==eHAL_STATUS_FAILURE)
4311 {
4312 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08004313 hddLog(LOGE, "Could not pass on WNI_CFG_VHT_BASIC_MCS_SET to CCM");
Jeff Johnsone7245742012-09-05 17:12:55 -07004314 }
4315
4316 ccmCfgGetInt(pHddCtx->hHal, WNI_CFG_VHT_RX_MCS_MAP, &temp);
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004317 temp = (temp & 0xFFFC) | pConfig->vhtRxMCS;
Jeff Johnsone7245742012-09-05 17:12:55 -07004318
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004319 if(ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_VHT_RX_MCS_MAP,
Jeff Johnsone7245742012-09-05 17:12:55 -07004320 temp, NULL, eANI_BOOLEAN_FALSE)
4321 ==eHAL_STATUS_FAILURE)
4322 {
4323 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08004324 hddLog(LOGE, "Could not pass on WNI_CFG_VHT_RX_MCS_MAP to CCM");
Jeff Johnsone7245742012-09-05 17:12:55 -07004325 }
4326
4327 ccmCfgGetInt(pHddCtx->hHal, WNI_CFG_VHT_TX_MCS_MAP, &temp);
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004328 temp = (temp & 0xFFFC) | pConfig->vhtTxMCS;
Jeff Johnsone7245742012-09-05 17:12:55 -07004329
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004330 if(ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_VHT_TX_MCS_MAP,
Jeff Johnsone7245742012-09-05 17:12:55 -07004331 temp, NULL, eANI_BOOLEAN_FALSE)
4332 ==eHAL_STATUS_FAILURE)
4333 {
4334 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08004335 hddLog(LOGE, "Could not pass on WNI_CFG_VHT_TX_MCS_MAP to CCM");
Jeff Johnsone7245742012-09-05 17:12:55 -07004336 }
Praveen Kumar Sirisilla4cf7d262013-12-04 17:22:53 -08004337 /* Currently shortGI40Mhz is used for shortGI80Mhz */
4338 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_VHT_SHORT_GI_80MHZ,
4339 pConfig->ShortGI40MhzEnable, NULL, eANI_BOOLEAN_FALSE)
4340 == eHAL_STATUS_FAILURE)
4341 {
4342 fStatus = FALSE;
4343 hddLog(LOGE, "Could not pass WNI_VHT_SHORT_GI_80MHZ to CCM\n");
4344 }
Jeff Johnsone7245742012-09-05 17:12:55 -07004345 }
4346 }
4347#endif
4348
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004349 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_NUM_BUFF_ADVERT,pConfig->numBuffAdvert,
Madan Mohan Koyyalamudidd11eaf2012-11-02 16:04:21 -07004350 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
4351 {
4352 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08004353 hddLog(LOGE, "Could not pass on WNI_CFG_NUM_BUFF_ADVERT to CCM");
Madan Mohan Koyyalamudidd11eaf2012-11-02 16:04:21 -07004354 }
4355
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004356 if(ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_HT_RX_STBC,
Pratik Bhalgat6bfd1422012-11-22 17:09:40 +05304357 pConfig->enableRxSTBC, NULL, eANI_BOOLEAN_FALSE)
4358 ==eHAL_STATUS_FAILURE)
4359 {
4360 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08004361 hddLog(LOGE, "Could not pass on WNI_CFG_HT_RX_STBC to CCM");
Pratik Bhalgat6bfd1422012-11-22 17:09:40 +05304362 }
4363
4364 ccmCfgGetInt(pHddCtx->hHal, WNI_CFG_HT_CAP_INFO, (tANI_U32 *)&htCapInfo);
4365 htCapInfo.rxSTBC = pConfig->enableRxSTBC;
4366
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004367 if(ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_HT_CAP_INFO,
Pratik Bhalgat6bfd1422012-11-22 17:09:40 +05304368 *(tANI_U32 *)&htCapInfo, NULL, eANI_BOOLEAN_FALSE)
4369 ==eHAL_STATUS_FAILURE)
4370 {
4371 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08004372 hddLog(LOGE, "Could not pass on WNI_CFG_HT_CAP_INFO to CCM");
Pratik Bhalgat6bfd1422012-11-22 17:09:40 +05304373 }
4374
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004375 if(ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_VHT_RXSTBC,
Pratik Bhalgat6bfd1422012-11-22 17:09:40 +05304376 pConfig->enableRxSTBC, NULL, eANI_BOOLEAN_FALSE)
4377 ==eHAL_STATUS_FAILURE)
4378 {
4379 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08004380 hddLog(LOGE, "Could not pass on WNI_CFG_VHT_RXSTBC to CCM");
Pratik Bhalgat6bfd1422012-11-22 17:09:40 +05304381 }
Gopichand Nakkala976e3252013-01-03 15:45:56 -08004382
4383#ifdef WLAN_SOFTAP_VSTA_FEATURE
4384 if(pConfig->fEnableVSTASupport)
4385 {
4386 ccmCfgGetInt(pHddCtx->hHal, WNI_CFG_ASSOC_STA_LIMIT, &val);
4387 if( val <= WNI_CFG_ASSOC_STA_LIMIT_STADEF)
4388 val = WNI_CFG_ASSOC_STA_LIMIT_STAMAX;
4389 }
4390 else
4391 {
4392 val = WNI_CFG_ASSOC_STA_LIMIT_STADEF;
4393 }
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004394 if(ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_ASSOC_STA_LIMIT, val,
Gopichand Nakkala976e3252013-01-03 15:45:56 -08004395 NULL, eANI_BOOLEAN_FALSE) == eHAL_STATUS_FAILURE)
4396 {
4397 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08004398 hddLog(LOGE,"Failure: Could not pass on WNI_CFG_ASSOC_STA_LIMIT configuration info to CCM" );
Gopichand Nakkala976e3252013-01-03 15:45:56 -08004399 }
4400#endif
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004401 if(ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_ENABLE_LPWR_IMG_TRANSITION,
Madan Mohan Koyyalamudi0d40e662012-12-07 14:24:14 -08004402 pConfig->enableLpwrImgTransition, NULL, eANI_BOOLEAN_FALSE)
4403 ==eHAL_STATUS_FAILURE)
4404 {
4405 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08004406 hddLog(LOGE, "Could not pass on WNI_CFG_ENABLE_LPWR_IMG_TRANSITION to CCM");
Madan Mohan Koyyalamudi0d40e662012-12-07 14:24:14 -08004407 }
Pratik Bhalgat6bfd1422012-11-22 17:09:40 +05304408
Madan Mohan Koyyalamudi01cba042013-01-10 21:56:05 -08004409 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_ENABLE_MCC_ADAPTIVE_SCHED, pConfig->enableMCCAdaptiveScheduler,
4410 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
4411 {
4412 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08004413 hddLog(LOGE, "Could not pass on WNI_CFG_ENABLE_MCC_ADAPTIVE_SCHED to CCM");
Madan Mohan Koyyalamudi01cba042013-01-10 21:56:05 -08004414 }
Leela V Kiran Kumar Reddy Chiralab1f7d342013-02-11 00:27:02 -08004415 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_DISABLE_LDPC_WITH_TXBF_AP, pConfig->disableLDPCWithTxbfAP,
4416 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
4417 {
4418 fStatus = FALSE;
Kiran Kumar Lokere1f39e952013-04-03 18:34:30 -07004419 hddLog(LOGE, "Could not pass on WNI_CFG_DISABLE_LDPC_WITH_TXBF_AP to CCM");
Leela V Kiran Kumar Reddy Chiralab1f7d342013-02-11 00:27:02 -08004420 }
Kiran Kumar Lokere1f39e952013-04-03 18:34:30 -07004421
4422 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_DYNAMIC_THRESHOLD_ZERO, pConfig->retryLimitZero,
4423 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
4424 {
4425 fStatus = FALSE;
4426 hddLog(LOGE, "Could not pass on WNI_CFG_DYNAMIC_THRESHOLD_ZERO to CCM");
4427 }
4428
4429 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_DYNAMIC_THRESHOLD_ONE, pConfig->retryLimitOne,
4430 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
4431 {
4432 fStatus = FALSE;
4433 hddLog(LOGE, "Could not pass on WNI_CFG_DYNAMIC_THRESHOLD_ONE to CCM");
4434 }
4435
4436 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_DYNAMIC_THRESHOLD_TWO, pConfig->retryLimitTwo,
4437 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
4438 {
4439 fStatus = FALSE;
4440 hddLog(LOGE, "Could not pass on WNI_CFG_DYNAMIC_THRESHOLD_TWO to CCM");
4441 }
4442
Gopichand Nakkala42bc89e2013-05-27 12:49:09 +05304443 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_MAX_MEDIUM_TIME, pConfig->cfgMaxMediumTime,
4444 NULL, eANI_BOOLEAN_FALSE) == eHAL_STATUS_FAILURE)
4445 {
4446 fStatus = FALSE;
4447 hddLog(LOGE, "Could not pass on WNI_CFG_MAX_MEDIUM_TIME to CCM");
4448 }
4449
Gopichand Nakkala79ff85d2013-05-27 17:05:29 +05304450#ifdef FEATURE_WLAN_TDLS
4451
Sudhir Sattayappa Kohallida1be202013-07-11 12:04:30 -07004452 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_TDLS_QOS_WMM_UAPSD_MASK,
4453 pConfig->fTDLSUapsdMask, NULL,
4454 eANI_BOOLEAN_FALSE) == eHAL_STATUS_FAILURE)
Gopichand Nakkala79ff85d2013-05-27 17:05:29 +05304455 {
4456 fStatus = FALSE;
Sudhir Sattayappa Kohallida1be202013-07-11 12:04:30 -07004457 hddLog(LOGE, "Could not pass on WNI_CFG_TDLS_QOS_WMM_UAPSD_MASK to CCM");
Gopichand Nakkala79ff85d2013-05-27 17:05:29 +05304458 }
Sudhir Sattayappa Kohallida1be202013-07-11 12:04:30 -07004459 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_TDLS_BUF_STA_ENABLED,
4460 pConfig->fEnableTDLSBufferSta, NULL,
4461 eANI_BOOLEAN_FALSE) == eHAL_STATUS_FAILURE)
Gopichand Nakkala79ff85d2013-05-27 17:05:29 +05304462 {
4463 fStatus = FALSE;
Sudhir Sattayappa Kohallida1be202013-07-11 12:04:30 -07004464 hddLog(LOGE, "Could not pass on WNI_CFG_TDLS_BUF_STA_ENABLED to CCM");
Gopichand Nakkala79ff85d2013-05-27 17:05:29 +05304465 }
Sudhir Sattayappa Kohallida1be202013-07-11 12:04:30 -07004466 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_TDLS_PUAPSD_INACT_TIME,
4467 pConfig->fTDLSPuapsdInactivityTimer, NULL,
4468 eANI_BOOLEAN_FALSE) == eHAL_STATUS_FAILURE)
Gopichand Nakkala79ff85d2013-05-27 17:05:29 +05304469 {
4470 fStatus = FALSE;
Sudhir Sattayappa Kohallida1be202013-07-11 12:04:30 -07004471 hddLog(LOGE, "Could not pass on WNI_CFG_TDLS_PUAPSD_INACT_TIME to CCM");
Gopichand Nakkala79ff85d2013-05-27 17:05:29 +05304472 }
Sudhir Sattayappa Kohallida1be202013-07-11 12:04:30 -07004473 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_TDLS_RX_FRAME_THRESHOLD,
4474 pConfig->fTDLSRxFrameThreshold, NULL,
4475 eANI_BOOLEAN_FALSE) == eHAL_STATUS_FAILURE)
Gopichand Nakkala79ff85d2013-05-27 17:05:29 +05304476 {
4477 fStatus = FALSE;
Sudhir Sattayappa Kohallida1be202013-07-11 12:04:30 -07004478 hddLog(LOGE, "Could not pass on WNI_CFG_TDLS_RX_FRAME_THRESHOLD to CCM");
Gopichand Nakkala79ff85d2013-05-27 17:05:29 +05304479 }
Naresh Jayaramf73f3762014-02-04 16:13:20 +05304480
4481 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_TDLS_OFF_CHANNEL_ENABLED,
4482 pConfig->fEnableTDLSOffChannel, NULL,
4483 eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
4484 {
4485 fStatus = FALSE;
4486 hddLog(LOGE, "Could not pass on WNI_CFG_TDLS_BUF_STA_ENABLED to CCM\n");
4487 }
4488
Gopichand Nakkala79ff85d2013-05-27 17:05:29 +05304489#endif
4490
Sudhir Sattayappa Kohallida1be202013-07-11 12:04:30 -07004491 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_ENABLE_ADAPT_RX_DRAIN,
4492 pConfig->fEnableAdaptRxDrain, NULL,
4493 eANI_BOOLEAN_FALSE) == eHAL_STATUS_FAILURE)
4494 {
4495 fStatus = FALSE;
4496 hddLog(LOGE, "Could not pass on WNI_CFG_ENABLE_ADAPT_RX_DRAIN to CCM");
4497 }
Yue Ma0fd23872013-08-01 15:56:47 -07004498
4499 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_FLEX_CONNECT_POWER_FACTOR,
4500 pConfig->flexConnectPowerFactor, NULL,
4501 eANI_BOOLEAN_FALSE) == eHAL_STATUS_FAILURE)
4502 {
4503 fStatus = FALSE;
4504 hddLog(LOGE, "Failure: Could not pass on "
4505 "WNI_CFG_FLEX_CONNECT_POWER_FACTOR to CCM");
4506 }
4507
Madan Mohan Koyyalamudica454572013-08-07 19:57:03 +05304508 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_ANTENNA_DIVESITY,
4509 pConfig->antennaDiversity, NULL,
4510 eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
4511 {
4512 fStatus = FALSE;
4513 hddLog(LOGE, "Could not pass on WNI_CFG_ANTENNA_DIVESITY to CCM");
4514 }
4515
Kiet Lam4bbd3cb2013-11-07 20:03:49 +05304516 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_ATH_DISABLE,
4517 pConfig->cfgAthDisable, NULL,
4518 eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
4519 {
4520 fStatus = FALSE;
4521 hddLog(LOGE, "Could not pass on WNI_CFG_ATH_DISABLE to CCM");
4522 }
c_hpothu6d7dc922013-12-02 12:36:41 +05304523
4524 if (ccmCfgSetInt(pHddCtx->hHal,
4525 WNI_CFG_BTC_ACTIVE_WLAN_LEN,
4526 pConfig->cfgBtcActiveWlanLen,
4527 NULL, eANI_BOOLEAN_FALSE) == eHAL_STATUS_FAILURE)
4528 {
4529 fStatus = FALSE;
4530 hddLog(LOGE, "Could not pass on WNI_BTC_ACTIVE_WLAN_LEN to CCM");
4531 }
4532
4533 if (ccmCfgSetInt(pHddCtx->hHal,
4534 WNI_CFG_BTC_ACTIVE_BT_LEN,
4535 pConfig->cfgBtcActiveBtLen,
4536 NULL, eANI_BOOLEAN_FALSE) == eHAL_STATUS_FAILURE)
4537 {
4538 fStatus = FALSE;
4539 hddLog(LOGE, "Could not pass on WNI_BTC_ACTIVE_BT_LEN to CCM");
4540 }
4541
4542 if (ccmCfgSetInt(pHddCtx->hHal,
4543 WNI_CFG_BTC_SAP_ACTIVE_WLAN_LEN,
4544 pConfig->cfgBtcSapActiveWlanLen,
4545 NULL, eANI_BOOLEAN_FALSE) == eHAL_STATUS_FAILURE)
4546 {
4547 fStatus = FALSE;
4548 hddLog(LOGE, "Could not pass on WNI_BTC_ACTIVE_WLAN_LEN to CCM");
4549 }
4550
4551 if (ccmCfgSetInt(pHddCtx->hHal,
4552 WNI_CFG_BTC_SAP_ACTIVE_BT_LEN,
4553 pConfig->cfgBtcSapActiveBtLen,
4554 NULL, eANI_BOOLEAN_FALSE) == eHAL_STATUS_FAILURE)
4555 {
4556 fStatus = FALSE;
4557 hddLog(LOGE, "Could not pass on WNI_BTC_ACTIVE_BT_LEN to CCM");
4558 }
AnjaneeDevi Kapparapu50239e32014-01-07 18:09:33 +05304559
4560 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_ASD_PROBE_INTERVAL,
4561 pConfig->gAsdProbeInterval, NULL,
4562 eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
4563 {
4564 fStatus = FALSE;
4565 hddLog(LOGE, "Could not pass on WNI_CFG_ASD_PROBE_INTERVAL to CCM");
4566 }
4567
4568 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_ASD_TRIGGER_THRESHOLD,
4569 pConfig->gAsdTriggerThreshold, NULL,
4570 eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
4571 {
4572 fStatus = FALSE;
4573 hddLog(LOGE, "Could not pass on WNI_CFG_ASD_TRIGGER_THRESHOLD to CCM");
4574 }
4575
4576 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_ASD_RTT_RSSI_HYST_THRESHOLD,
4577 pConfig->gAsdRTTRssiHystThreshold, NULL,
4578 eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
4579 {
4580 fStatus = FALSE;
4581 hddLog(LOGE, "Could not pass on WNI_CFG_ASD_RSSI_HYST_THRESHOLD to CCM");
4582 }
Leela Venkata Kiran Kumar Reddy Chirala22c159b2013-12-23 18:19:13 -08004583
4584 if (ccmCfgSetInt(pHddCtx->hHal,
4585 WNI_CFG_DEBUG_P2P_REMAIN_ON_CHANNEL,
4586 pConfig->debugP2pRemainOnChannel,
4587 NULL, eANI_BOOLEAN_FALSE) == eHAL_STATUS_FAILURE)
4588 {
4589 fStatus = FALSE;
4590 hddLog(LOGE,
4591 "Could not pass on WNI_CFG_DEBUG_P2P_REMAIN_ON_CHANNEL to CCM");
4592 }
4593
4594 if (ccmCfgSetInt(pHddCtx->hHal,
4595 WNI_CFG_BTC_CTS2S_DURING_SCO,
4596 pConfig->cfgBtcCTS2SduringSCO,
4597 NULL, eANI_BOOLEAN_FALSE) == eHAL_STATUS_FAILURE)
4598 {
4599 fStatus = FALSE;
4600 hddLog(LOGE, "Could not pass on WNI_CFG_BTC_CTS2S_DURING_SCO to CCM");
4601 }
Jeff Johnson295189b2012-06-20 16:38:30 -07004602 return fStatus;
4603}
4604
4605
4606/**---------------------------------------------------------------------------
4607
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004608 \brief hdd_init_set_sme_config() -
Jeff Johnson295189b2012-06-20 16:38:30 -07004609
4610 This function initializes the sme configuration parameters
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004611
Jeff Johnson295189b2012-06-20 16:38:30 -07004612 \param - pHddCtx - Pointer to the HDD Adapter.
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004613
Jeff Johnson295189b2012-06-20 16:38:30 -07004614 \return - 0 for success, non zero for failure
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004615
Jeff Johnson295189b2012-06-20 16:38:30 -07004616 --------------------------------------------------------------------------*/
4617
4618VOS_STATUS hdd_set_sme_config( hdd_context_t *pHddCtx )
4619{
4620 VOS_STATUS status = VOS_STATUS_SUCCESS;
4621 eHalStatus halStatus;
4622 tSmeConfigParams smeConfig;
4623
4624 hdd_config_t *pConfig = pHddCtx->cfg_ini;
4625
Amar Singhalfddc28c2013-09-05 13:03:40 -07004626
Jeff Johnson295189b2012-06-20 16:38:30 -07004627 vos_mem_zero( &smeConfig, sizeof( smeConfig ) );
4628
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004629 VOS_TRACE( VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH,
Arif Hussain6d2a3322013-11-17 19:50:10 -08004630 "%s bWmmIsEnabled=%d 802_11e_enabled=%d dot11Mode=%d", __func__,
Jeff Johnson295189b2012-06-20 16:38:30 -07004631 pConfig->WmmMode, pConfig->b80211eIsEnabled, pConfig->dot11Mode);
4632
4633 // Config params obtained from the registry
Amar Singhalfddc28c2013-09-05 13:03:40 -07004634
Jeff Johnson295189b2012-06-20 16:38:30 -07004635 smeConfig.csrConfig.RTSThreshold = pConfig->RTSThreshold;
4636 smeConfig.csrConfig.FragmentationThreshold = pConfig->FragmentationThreshold;
4637 smeConfig.csrConfig.shortSlotTime = pConfig->ShortSlotTimeEnabled;
4638 smeConfig.csrConfig.Is11dSupportEnabled = pConfig->Is11dSupportEnabled;
4639 smeConfig.csrConfig.HeartbeatThresh24 = pConfig->HeartbeatThresh24;
4640
4641 smeConfig.csrConfig.phyMode = hdd_cfg_xlate_to_csr_phy_mode ( pConfig->dot11Mode );
4642
Leela Venkata Kiran Kumar Reddy Chirala784d7e82013-11-20 10:57:25 -08004643 if( (pConfig->dot11Mode == eHDD_DOT11_MODE_abg) ||
4644 (pConfig->dot11Mode == eHDD_DOT11_MODE_11b) ||
4645 (pConfig->dot11Mode == eHDD_DOT11_MODE_11g) ||
4646 (pConfig->dot11Mode == eHDD_DOT11_MODE_11b_ONLY) ||
4647 (pConfig->dot11Mode == eHDD_DOT11_MODE_11g_ONLY))
4648 {
4649 smeConfig.csrConfig.channelBondingMode24GHz = 0;
4650 smeConfig.csrConfig.channelBondingMode5GHz = 0;
4651 }
4652 else
4653 {
4654 smeConfig.csrConfig.channelBondingMode24GHz = pConfig->nChannelBondingMode24GHz;
4655 smeConfig.csrConfig.channelBondingMode5GHz = pConfig->nChannelBondingMode5GHz;
4656 }
Jeff Johnson295189b2012-06-20 16:38:30 -07004657 smeConfig.csrConfig.TxRate = pConfig->TxRate;
4658 smeConfig.csrConfig.nScanResultAgeCount = pConfig->ScanResultAgeCount;
4659 smeConfig.csrConfig.scanAgeTimeNCNPS = pConfig->nScanAgeTimeNCNPS;
4660 smeConfig.csrConfig.scanAgeTimeNCPS = pConfig->nScanAgeTimeNCPS;
4661 smeConfig.csrConfig.scanAgeTimeCNPS = pConfig->nScanAgeTimeCNPS;
4662 smeConfig.csrConfig.scanAgeTimeCPS = pConfig->nScanAgeTimeCPS;
4663 smeConfig.csrConfig.AdHocChannel24 = pConfig->OperatingChannel;
4664 smeConfig.csrConfig.fEnforce11dChannels = pConfig->fEnforce11dChannels;
4665 smeConfig.csrConfig.fSupplicantCountryCodeHasPriority = pConfig->fSupplicantCountryCodeHasPriority;
4666 smeConfig.csrConfig.fEnforceCountryCodeMatch = pConfig->fEnforceCountryCodeMatch;
4667 smeConfig.csrConfig.fEnforceDefaultDomain = pConfig->fEnforceDefaultDomain;
4668 smeConfig.csrConfig.bCatRssiOffset = pConfig->nRssiCatGap;
4669 smeConfig.csrConfig.vccRssiThreshold = pConfig->nVccRssiTrigger;
4670 smeConfig.csrConfig.vccUlMacLossThreshold = pConfig->nVccUlMacLossThreshold;
4671 smeConfig.csrConfig.nRoamingTime = pConfig->nRoamingTime;
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004672 smeConfig.csrConfig.IsIdleScanEnabled = pConfig->nEnableIdleScan;
Jeff Johnson295189b2012-06-20 16:38:30 -07004673 smeConfig.csrConfig.nActiveMaxChnTime = pConfig->nActiveMaxChnTime;
4674 smeConfig.csrConfig.nActiveMinChnTime = pConfig->nActiveMinChnTime;
4675 smeConfig.csrConfig.nPassiveMaxChnTime = pConfig->nPassiveMaxChnTime;
4676 smeConfig.csrConfig.nPassiveMinChnTime = pConfig->nPassiveMinChnTime;
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004677 smeConfig.csrConfig.nActiveMaxChnTimeBtc = pConfig->nActiveMaxChnTimeBtc;
4678 smeConfig.csrConfig.nActiveMinChnTimeBtc = pConfig->nActiveMinChnTimeBtc;
Kiran Kumar Lokere458d7322013-05-29 14:29:43 -07004679 smeConfig.csrConfig.disableAggWithBtc = pConfig->disableAggWithBtc;
Madan Mohan Koyyalamudi4ff9cd62012-10-30 17:48:57 -07004680#ifdef WLAN_AP_STA_CONCURRENCY
4681 smeConfig.csrConfig.nActiveMaxChnTimeConc = pConfig->nActiveMaxChnTimeConc;
4682 smeConfig.csrConfig.nActiveMinChnTimeConc = pConfig->nActiveMinChnTimeConc;
4683 smeConfig.csrConfig.nPassiveMaxChnTimeConc = pConfig->nPassiveMaxChnTimeConc;
4684 smeConfig.csrConfig.nPassiveMinChnTimeConc = pConfig->nPassiveMinChnTimeConc;
4685 smeConfig.csrConfig.nRestTimeConc = pConfig->nRestTimeConc;
Sudhir Sattayappa Kohallieb97d502013-05-22 23:16:42 -07004686 smeConfig.csrConfig.nNumStaChanCombinedConc = pConfig->nNumStaChanCombinedConc;
4687 smeConfig.csrConfig.nNumP2PChanCombinedConc = pConfig->nNumP2PChanCombinedConc;
4688
Madan Mohan Koyyalamudi4ff9cd62012-10-30 17:48:57 -07004689#endif
Jeff Johnson295189b2012-06-20 16:38:30 -07004690 smeConfig.csrConfig.Is11eSupportEnabled = pConfig->b80211eIsEnabled;
4691 smeConfig.csrConfig.WMMSupportMode = pConfig->WmmMode;
4692
4693#if defined WLAN_FEATURE_VOWIFI
4694 smeConfig.rrmConfig.rrmEnabled = pConfig->fRrmEnable;
4695 smeConfig.rrmConfig.maxRandnInterval = pConfig->nRrmRandnIntvl;
4696#endif
4697 //Remaining config params not obtained from registry
4698 // On RF EVB beacon using channel 1.
Jeff Johnsone7245742012-09-05 17:12:55 -07004699#ifdef WLAN_FEATURE_11AC
4700 smeConfig.csrConfig.nVhtChannelWidth = pConfig->vhtChannelWidth;
Shailender Karmuchi08f87c22013-01-17 12:51:24 -08004701 smeConfig.csrConfig.enableTxBF = pConfig->enableTxBF;
Shailender Karmuchicc3fe442013-02-16 18:18:33 -08004702 smeConfig.csrConfig.txBFCsnValue = pConfig->txBFCsnValue;
Ravi Joshi83bfaa12013-05-28 22:12:08 -07004703 smeConfig.csrConfig.enableVhtFor24GHz = pConfig->enableVhtFor24GHzBand;
Jeff Johnsone7245742012-09-05 17:12:55 -07004704#endif
Shailender Karmuchia734f332013-04-19 14:02:48 -07004705 smeConfig.csrConfig.AdHocChannel5G = pConfig->AdHocChannel5G;
4706 smeConfig.csrConfig.AdHocChannel24 = pConfig->AdHocChannel24G;
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004707 smeConfig.csrConfig.ProprietaryRatesEnabled = 0;
4708 smeConfig.csrConfig.HeartbeatThresh50 = 40;
4709 smeConfig.csrConfig.bandCapability = pConfig->nBandCapability;
Madan Mohan Koyyalamudi8db1c942013-01-10 15:24:29 -08004710 if (pConfig->nBandCapability == eCSR_BAND_24)
4711 {
4712 smeConfig.csrConfig.Is11hSupportEnabled = 0;
4713 } else {
4714 smeConfig.csrConfig.Is11hSupportEnabled = pConfig->Is11hSupportEnabled;
4715 }
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004716 smeConfig.csrConfig.cbChoice = 0;
4717 smeConfig.csrConfig.bgScanInterval = 0;
4718 smeConfig.csrConfig.eBand = pConfig->nBandCapability;
Jeff Johnson295189b2012-06-20 16:38:30 -07004719 smeConfig.csrConfig.nTxPowerCap = pConfig->nTxPowerCap;
4720 smeConfig.csrConfig.fEnableBypass11d = pConfig->enableBypass11d;
4721 smeConfig.csrConfig.fEnableDFSChnlScan = pConfig->enableDFSChnlScan;
Madan Mohan Koyyalamudid5026072012-11-30 14:56:21 -08004722#if defined (WLAN_FEATURE_VOWIFI_11R) || defined (FEATURE_WLAN_CCX) || defined(FEATURE_WLAN_LFR)
4723 smeConfig.csrConfig.nRoamPrefer5GHz = pConfig->nRoamPrefer5GHz;
Srinivas Girigowdabbd16eb2013-03-21 12:34:46 -07004724 smeConfig.csrConfig.nRoamIntraBand = pConfig->nRoamIntraBand;
Varun Reddy Yeturu920df212013-05-22 08:07:23 -07004725 smeConfig.csrConfig.nProbes = pConfig->nProbes;
4726 smeConfig.csrConfig.nRoamScanHomeAwayTime = pConfig->nRoamScanHomeAwayTime;
Madan Mohan Koyyalamudid5026072012-11-30 14:56:21 -08004727#endif
Jeff Johnsone7245742012-09-05 17:12:55 -07004728 smeConfig.csrConfig.fFirstScanOnly2GChnl = pConfig->enableFirstScan2GOnly;
4729
Jeff Johnson295189b2012-06-20 16:38:30 -07004730 //FIXME 11d config is hardcoded
Jeff Johnson7dda7772013-02-27 08:36:13 -08004731 if ( VOS_STA_SAP_MODE != hdd_get_conparam())
4732 {
4733 smeConfig.csrConfig.Csr11dinfo.Channels.numChannels = 0;
Jeff Johnson295189b2012-06-20 16:38:30 -07004734
Jeff Johnson7dda7772013-02-27 08:36:13 -08004735 /* if there is a requirement that HDD will control the default
4736 * channel list & country code (say from .ini file) we need to
4737 * add some logic here. Otherwise the default 11d info should
4738 * come from NV as per our current implementation */
Jeff Johnson295189b2012-06-20 16:38:30 -07004739 }
Jeff Johnson7dda7772013-02-27 08:36:13 -08004740 else
4741 {
4742 VOS_TRACE( VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_ERROR,
4743 "AP country Code %s", pConfig->apCntryCode);
Jeff Johnson295189b2012-06-20 16:38:30 -07004744
Jeff Johnson7dda7772013-02-27 08:36:13 -08004745 if (memcmp(pConfig->apCntryCode, CFG_AP_COUNTRY_CODE_DEFAULT, 3) != 0)
4746 sme_setRegInfo(pHddCtx->hHal, pConfig->apCntryCode);
4747 sme_set11dinfo(pHddCtx->hHal, &smeConfig);
4748 }
Jeff Johnson295189b2012-06-20 16:38:30 -07004749 hdd_set_power_save_config(pHddCtx, &smeConfig);
4750 hdd_set_btc_config(pHddCtx);
4751
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004752#ifdef WLAN_FEATURE_VOWIFI_11R
Jeff Johnson295189b2012-06-20 16:38:30 -07004753 smeConfig.csrConfig.csr11rConfig.IsFTResourceReqSupported = pConfig->fFTResourceReqSupported;
4754#endif
Jeff Johnson04dd8a82012-06-29 20:41:40 -07004755#ifdef FEATURE_WLAN_LFR
4756 smeConfig.csrConfig.isFastRoamIniFeatureEnabled = pConfig->isFastRoamIniFeatureEnabled;
Sameer Thalappil4ae66ec2013-11-05 14:17:35 -08004757 smeConfig.csrConfig.MAWCEnabled = pConfig->MAWCEnabled;
Jeff Johnson04dd8a82012-06-29 20:41:40 -07004758#endif
Jeff Johnson295189b2012-06-20 16:38:30 -07004759#ifdef FEATURE_WLAN_CCX
4760 smeConfig.csrConfig.isCcxIniFeatureEnabled = pConfig->isCcxIniFeatureEnabled;
Gopichand Nakkala98a98af2012-12-31 14:38:47 -08004761 if( pConfig->isCcxIniFeatureEnabled )
4762 {
4763 pConfig->isFastTransitionEnabled = TRUE;
4764 }
Jeff Johnson295189b2012-06-20 16:38:30 -07004765#endif
Jeff Johnson04dd8a82012-06-29 20:41:40 -07004766#if defined (WLAN_FEATURE_VOWIFI_11R) || defined (FEATURE_WLAN_CCX) || defined(FEATURE_WLAN_LFR)
Jeff Johnson295189b2012-06-20 16:38:30 -07004767 smeConfig.csrConfig.isFastTransitionEnabled = pConfig->isFastTransitionEnabled;
Jeff Johnson43971f52012-07-17 12:26:56 -07004768 smeConfig.csrConfig.RoamRssiDiff = pConfig->RoamRssiDiff;
Madan Mohan Koyyalamudi62b55b02012-12-03 16:45:39 -08004769 smeConfig.csrConfig.nImmediateRoamRssiDiff = pConfig->nImmediateRoamRssiDiff;
Srinivas Girigowdaad34ca92013-10-22 10:54:29 -07004770 smeConfig.csrConfig.isWESModeEnabled = pConfig->isWESModeEnabled;
Jeff Johnson295189b2012-06-20 16:38:30 -07004771#endif
Varun Reddy Yeturud0a3f252013-04-15 21:58:13 -07004772#ifdef WLAN_FEATURE_ROAM_SCAN_OFFLOAD
4773 smeConfig.csrConfig.isRoamOffloadScanEnabled = pConfig->isRoamOffloadScanEnabled;
Srinivas Girigowda830bbd02013-06-13 19:44:16 -07004774 smeConfig.csrConfig.bFastRoamInConIniFeatureEnabled = pConfig->bFastRoamInConIniFeatureEnabled;
4775
4776 if (0 == smeConfig.csrConfig.isRoamOffloadScanEnabled)
4777 {
4778 /* Disable roaming in concurrency if roam scan offload is disabled */
4779 smeConfig.csrConfig.bFastRoamInConIniFeatureEnabled = 0;
4780 }
Varun Reddy Yeturud0a3f252013-04-15 21:58:13 -07004781#endif
Jeff Johnson295189b2012-06-20 16:38:30 -07004782#ifdef WLAN_FEATURE_NEIGHBOR_ROAMING
4783 smeConfig.csrConfig.neighborRoamConfig.nNeighborReassocRssiThreshold = pConfig->nNeighborReassocRssiThreshold;
4784 smeConfig.csrConfig.neighborRoamConfig.nNeighborLookupRssiThreshold = pConfig->nNeighborLookupRssiThreshold;
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004785 smeConfig.csrConfig.neighborRoamConfig.nNeighborScanMaxChanTime = pConfig->nNeighborScanMaxChanTime;
4786 smeConfig.csrConfig.neighborRoamConfig.nNeighborScanMinChanTime = pConfig->nNeighborScanMinChanTime;
Jeff Johnson295189b2012-06-20 16:38:30 -07004787 smeConfig.csrConfig.neighborRoamConfig.nNeighborScanTimerPeriod = pConfig->nNeighborScanPeriod;
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004788 smeConfig.csrConfig.neighborRoamConfig.nMaxNeighborRetries = pConfig->nMaxNeighborReqTries;
Jeff Johnson295189b2012-06-20 16:38:30 -07004789 smeConfig.csrConfig.neighborRoamConfig.nNeighborResultsRefreshPeriod = pConfig->nNeighborResultsRefreshPeriod;
Srinivas Girigowdade697412013-02-14 16:31:48 -08004790 smeConfig.csrConfig.neighborRoamConfig.nEmptyScanRefreshPeriod = pConfig->nEmptyScanRefreshPeriod;
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004791 hdd_string_to_u8_array( pConfig->neighborScanChanList,
4792 smeConfig.csrConfig.neighborRoamConfig.neighborScanChanList.channelList,
4793 &smeConfig.csrConfig.neighborRoamConfig.neighborScanChanList.numChannels,
Jeff Johnson295189b2012-06-20 16:38:30 -07004794 WNI_CFG_VALID_CHANNEL_LIST_LEN );
4795#endif
4796
4797 smeConfig.csrConfig.addTSWhenACMIsOff = pConfig->AddTSWhenACMIsOff;
4798 smeConfig.csrConfig.fValidateList = pConfig->fValidateScanList;
4799
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004800 //Enable/Disable MCC
Jeff Johnson295189b2012-06-20 16:38:30 -07004801 smeConfig.csrConfig.fEnableMCCMode = pConfig->enableMCC;
Mohit Khanna7ed53f02012-09-11 17:52:10 -07004802 smeConfig.csrConfig.fAllowMCCGODiffBI = pConfig->allowMCCGODiffBI;
Jeff Johnson295189b2012-06-20 16:38:30 -07004803
Sandeep Puligilla2b6dc632012-12-17 14:44:16 -08004804 //Scan Results Aging Time out value
4805 smeConfig.csrConfig.scanCfgAgingTime = pConfig->scanAgingTimeout;
4806
Gopichand Nakkalab2d2c312013-01-04 11:41:02 -08004807 smeConfig.csrConfig.enableTxLdpc = pConfig->enableTxLdpc;
4808
krunal soni5afa96c2013-09-06 22:19:02 -07004809 smeConfig.csrConfig.isAmsduSupportInAMPDU = pConfig->isAmsduSupportInAMPDU;
Srinivas Girigowda41c7c5f2013-10-21 19:01:38 -07004810 smeConfig.csrConfig.nSelect5GHzMargin = pConfig->nSelect5GHzMargin;
krunal soni5afa96c2013-09-06 22:19:02 -07004811
krunal sonie9002db2013-11-25 14:24:17 -08004812 smeConfig.csrConfig.isCoalesingInIBSSAllowed =
4813 pHddCtx->cfg_ini->isCoalesingInIBSSAllowed;
4814
4815
Gopichand Nakkalae620d5a2013-04-26 05:45:57 -07004816 /* update SSR config */
4817 sme_UpdateEnableSSR((tHalHandle)(pHddCtx->hHal), pHddCtx->cfg_ini->enableSSR);
Gopichand Nakkala86e42662013-06-11 17:44:11 +05304818 /* Update the Directed scan offload setting */
4819 smeConfig.fScanOffload = pHddCtx->cfg_ini->fScanOffload;
Gopichand Nakkalae620d5a2013-04-26 05:45:57 -07004820
Tushnim Bhattacharyyaa3ba5a52014-01-30 11:37:33 -08004821 smeConfig.fEnableDebugLog = pHddCtx->cfg_ini->gEnableDebugLog;
4822
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004823 halStatus = sme_UpdateConfig( pHddCtx->hHal, &smeConfig);
Jeff Johnson295189b2012-06-20 16:38:30 -07004824 if ( !HAL_STATUS_SUCCESS( halStatus ) )
4825 {
4826 status = VOS_STATUS_E_FAILURE;
c_hpothu6ff1c3c2013-10-01 19:01:57 +05304827 hddLog(LOGE, "sme_UpdateConfig() return failure %d", halStatus);
Jeff Johnson295189b2012-06-20 16:38:30 -07004828 }
4829
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004830
4831 return status;
Jeff Johnson295189b2012-06-20 16:38:30 -07004832}
4833
4834
4835/**---------------------------------------------------------------------------
4836
4837 \brief hdd_execute_config_command() -
4838
4839 This function executes an arbitrary configuration set command
4840
4841 \param - pHddCtx - Pointer to the HDD Adapter.
4842 \parmm - command - a configuration command of the form:
4843 <name>=<value>
4844
4845 \return - 0 for success, non zero for failure
4846
4847 --------------------------------------------------------------------------*/
4848
4849VOS_STATUS hdd_execute_config_command(hdd_context_t *pHddCtx, char *command)
4850{
4851 size_t tableSize = sizeof(g_registry_table)/sizeof(g_registry_table[0]);
4852 REG_TABLE_ENTRY *pRegEntry;
4853 char *clone;
4854 char *pCmd;
4855 void *pField;
4856 char *name;
4857 char *value_str;
4858 v_U32_t value;
4859 v_S31_t svalue;
4860 size_t len_value_str;
4861 unsigned int idx;
4862 unsigned int i;
4863 VOS_STATUS vstatus;
Madan Mohan Koyyalamudid8ac8662012-11-06 19:04:56 -08004864 int rv;
Jeff Johnson295189b2012-06-20 16:38:30 -07004865
4866 // assume failure until proven otherwise
4867 vstatus = VOS_STATUS_E_FAILURE;
4868
4869 // clone the command so that we can manipulate it
4870 clone = kstrdup(command, GFP_ATOMIC);
4871 if (NULL == clone)
4872 {
4873 hddLog(LOGE, "%s: memory allocation failure, unable to process [%s]",
Madan Mohan Koyyalamudi87054ba2012-11-02 13:24:12 -07004874 __func__, command);
Jeff Johnson295189b2012-06-20 16:38:30 -07004875 return vstatus;
4876 }
4877
4878 // 'clone' will point to the beginning of the string so it can be freed
4879 // 'pCmd' will be used to walk/parse the command
4880 pCmd = clone;
4881
4882 // get rid of leading/trailing whitespace
4883 pCmd = i_trim(pCmd);
4884 if ('\0' == *pCmd)
4885 {
4886 // only whitespace
4887 hddLog(LOGE, "%s: invalid command, only whitespace:[%s]",
Madan Mohan Koyyalamudi87054ba2012-11-02 13:24:12 -07004888 __func__, command);
Jeff Johnson295189b2012-06-20 16:38:30 -07004889 goto done;
4890 }
4891
4892 // parse the <name> = <value>
4893 name = pCmd;
4894 while (('=' != *pCmd) && ('\0' != *pCmd))
4895 {
4896 pCmd++;
4897 }
4898 if ('\0' == *pCmd)
4899 {
4900 // did not find '='
4901 hddLog(LOGE, "%s: invalid command, no '=':[%s]",
Madan Mohan Koyyalamudi87054ba2012-11-02 13:24:12 -07004902 __func__, command);
Jeff Johnson295189b2012-06-20 16:38:30 -07004903 goto done;
4904 }
4905
4906 // replace '=' with NUL to terminate the <name>
4907 *pCmd++ = '\0';
4908 name = i_trim(name);
4909 if ('\0' == *name)
4910 {
4911 // did not find a name
4912 hddLog(LOGE, "%s: invalid command, no <name>:[%s]",
Madan Mohan Koyyalamudi87054ba2012-11-02 13:24:12 -07004913 __func__, command);
Jeff Johnson295189b2012-06-20 16:38:30 -07004914 goto done;
4915 }
4916
4917 value_str = i_trim(pCmd);
4918 if ('\0' == *value_str)
4919 {
4920 // did not find a value
4921 hddLog(LOGE, "%s: invalid command, no <value>:[%s]",
Madan Mohan Koyyalamudi87054ba2012-11-02 13:24:12 -07004922 __func__, command);
Jeff Johnson295189b2012-06-20 16:38:30 -07004923 goto done;
4924 }
4925
4926 // lookup the configuration item
4927 for (idx = 0; idx < tableSize; idx++)
4928 {
4929 if (0 == strcmp(name, g_registry_table[idx].RegName))
4930 {
4931 // found a match
4932 break;
4933 }
4934 }
4935 if (tableSize == idx)
4936 {
4937 // did not match the name
4938 hddLog(LOGE, "%s: invalid command, unknown configuration item:[%s]",
Madan Mohan Koyyalamudi87054ba2012-11-02 13:24:12 -07004939 __func__, command);
Jeff Johnson295189b2012-06-20 16:38:30 -07004940 goto done;
4941 }
4942
4943 pRegEntry = &g_registry_table[idx];
4944 if (!(pRegEntry->Flags & VAR_FLAGS_DYNAMIC_CFG))
4945 {
4946 // does not support dynamic configuration
4947 hddLog(LOGE, "%s: invalid command, %s does not support "
Madan Mohan Koyyalamudi87054ba2012-11-02 13:24:12 -07004948 "dynamic configuration", __func__, name);
Jeff Johnson295189b2012-06-20 16:38:30 -07004949 goto done;
4950 }
4951
4952 pField = ((v_U8_t *)pHddCtx->cfg_ini) + pRegEntry->VarOffset;
4953
4954 switch (pRegEntry->RegType)
4955 {
4956 case WLAN_PARAM_Integer:
Jeff Johnson02797792013-10-26 19:17:13 -07004957 rv = kstrtou32(value_str, 10, &value);
Madan Mohan Koyyalamudid8ac8662012-11-06 19:04:56 -08004958 if (rv < 0)
4959 goto done;
Jeff Johnson295189b2012-06-20 16:38:30 -07004960 if (value < pRegEntry->VarMin)
4961 {
4962 // out of range
Jeff Johnson0299d0a2013-10-30 12:37:43 -07004963 hddLog(LOGE, "%s: invalid command, value %u < min value %lu",
Madan Mohan Koyyalamudi87054ba2012-11-02 13:24:12 -07004964 __func__, value, pRegEntry->VarMin);
Jeff Johnson295189b2012-06-20 16:38:30 -07004965 goto done;
4966 }
4967 if (value > pRegEntry->VarMax)
4968 {
4969 // out of range
Jeff Johnson0299d0a2013-10-30 12:37:43 -07004970 hddLog(LOGE, "%s: invalid command, value %u > max value %lu",
Madan Mohan Koyyalamudi87054ba2012-11-02 13:24:12 -07004971 __func__, value, pRegEntry->VarMax);
Jeff Johnson295189b2012-06-20 16:38:30 -07004972 goto done;
4973 }
4974 memcpy(pField, &value, pRegEntry->VarSize);
4975 break;
4976
4977 case WLAN_PARAM_HexInteger:
Jeff Johnson02797792013-10-26 19:17:13 -07004978 rv = kstrtou32(value_str, 16, &value);
Madan Mohan Koyyalamudid8ac8662012-11-06 19:04:56 -08004979 if (rv < 0)
4980 goto done;
Jeff Johnson295189b2012-06-20 16:38:30 -07004981 if (value < pRegEntry->VarMin)
4982 {
4983 // out of range
Jeff Johnson0299d0a2013-10-30 12:37:43 -07004984 hddLog(LOGE, "%s: invalid command, value %x < min value %lx",
Madan Mohan Koyyalamudi87054ba2012-11-02 13:24:12 -07004985 __func__, value, pRegEntry->VarMin);
Jeff Johnson295189b2012-06-20 16:38:30 -07004986 goto done;
4987 }
4988 if (value > pRegEntry->VarMax)
4989 {
4990 // out of range
Jeff Johnson0299d0a2013-10-30 12:37:43 -07004991 hddLog(LOGE, "%s: invalid command, value %x > max value %lx",
Madan Mohan Koyyalamudi87054ba2012-11-02 13:24:12 -07004992 __func__, value, pRegEntry->VarMax);
Jeff Johnson295189b2012-06-20 16:38:30 -07004993 goto done;
4994 }
4995 memcpy(pField, &value, pRegEntry->VarSize);
4996 break;
4997
4998 case WLAN_PARAM_SignedInteger:
Jeff Johnson02797792013-10-26 19:17:13 -07004999 rv = kstrtos32(value_str, 10, &svalue);
Madan Mohan Koyyalamudid8ac8662012-11-06 19:04:56 -08005000 if (rv < 0)
5001 goto done;
Jeff Johnson295189b2012-06-20 16:38:30 -07005002 if (svalue < (v_S31_t)pRegEntry->VarMin)
5003 {
5004 // out of range
5005 hddLog(LOGE, "%s: invalid command, value %d < min value %d",
Madan Mohan Koyyalamudi87054ba2012-11-02 13:24:12 -07005006 __func__, svalue, (int)pRegEntry->VarMin);
Jeff Johnson295189b2012-06-20 16:38:30 -07005007 goto done;
5008 }
5009 if (svalue > (v_S31_t)pRegEntry->VarMax)
5010 {
5011 // out of range
5012 hddLog(LOGE, "%s: invalid command, value %d > max value %d",
Madan Mohan Koyyalamudi87054ba2012-11-02 13:24:12 -07005013 __func__, svalue, (int)pRegEntry->VarMax);
Jeff Johnson295189b2012-06-20 16:38:30 -07005014 goto done;
5015 }
5016 memcpy(pField, &svalue, pRegEntry->VarSize);
5017 break;
5018
5019 case WLAN_PARAM_String:
5020 len_value_str = strlen(value_str);
5021 if (len_value_str > (pRegEntry->VarSize - 1))
5022 {
5023 // too big
5024 hddLog(LOGE,
5025 "%s: invalid command, string [%s] length "
Jeff Johnson59a121e2013-11-30 09:46:08 -08005026 "%zu exceeds maximum length %u",
Madan Mohan Koyyalamudi87054ba2012-11-02 13:24:12 -07005027 __func__, value_str,
Jeff Johnson295189b2012-06-20 16:38:30 -07005028 len_value_str, (pRegEntry->VarSize - 1));
5029 goto done;
5030 }
5031 // copy string plus NUL
5032 memcpy(pField, value_str, (len_value_str + 1));
5033 break;
5034
5035 case WLAN_PARAM_MacAddr:
5036 len_value_str = strlen(value_str);
5037 if (len_value_str != (VOS_MAC_ADDR_SIZE * 2))
5038 {
5039 // out of range
5040 hddLog(LOGE,
5041 "%s: invalid command, MAC address [%s] length "
Jeff Johnson59a121e2013-11-30 09:46:08 -08005042 "%zu is not expected length %u",
Madan Mohan Koyyalamudi87054ba2012-11-02 13:24:12 -07005043 __func__, value_str,
Jeff Johnson295189b2012-06-20 16:38:30 -07005044 len_value_str, (VOS_MAC_ADDR_SIZE * 2));
5045 goto done;
5046 }
5047 //parse the string and store it in the byte array
5048 for (i = 0; i < VOS_MAC_ADDR_SIZE; i++)
5049 {
5050 ((char*)pField)[i] = (char)
5051 ((parseHexDigit(value_str[(i * 2)]) * 16) +
5052 parseHexDigit(value_str[(i * 2) + 1]));
5053 }
5054 break;
5055
5056 default:
5057 goto done;
5058 }
5059
5060 // if we get here, we had a successful modification
5061 vstatus = VOS_STATUS_SUCCESS;
5062
5063 // config table has been modified, is there a notifier?
5064 if (NULL != pRegEntry->pfnDynamicNotify)
5065 {
5066 (pRegEntry->pfnDynamicNotify)(pHddCtx, pRegEntry->NotifyId);
5067 }
5068
5069 // note that this item was explicitly configured
5070 if (idx < MAX_CFG_INI_ITEMS)
5071 {
5072 set_bit(idx, (void *)&pHddCtx->cfg_ini->bExplicitCfg);
5073 }
5074 done:
5075 kfree(clone);
5076 return vstatus;
5077}
Srinivas Girigowdabbd16eb2013-03-21 12:34:46 -07005078
5079/**---------------------------------------------------------------------------
5080
5081 \brief hdd_is_okc_mode_enabled() -
5082
5083 This function returns whether OKC mode is enabled or not
5084
5085 \param - pHddCtx - Pointer to the HDD Adapter.
5086
5087 \return - 1 for enabled, zero for disabled
5088
5089 --------------------------------------------------------------------------*/
5090
5091tANI_BOOLEAN hdd_is_okc_mode_enabled(hdd_context_t *pHddCtx)
5092{
5093 if (NULL == pHddCtx)
5094 {
5095 hddLog(VOS_TRACE_LEVEL_FATAL, "%s: pHddCtx is NULL", __func__);
5096 return -EINVAL;
5097 }
5098
5099#ifdef FEATURE_WLAN_OKC
5100 return pHddCtx->cfg_ini->isOkcIniFeatureEnabled;
5101#else
5102 return eANI_BOOLEAN_FALSE;
5103#endif
5104}