blob: 881daae9907ffe1708d66bc9fd3ba3d3532dbdaf [file] [log] [blame]
Jeff Johnson295189b2012-06-20 16:38:30 -07001/*
Kiet Lamaa8e15a2014-02-11 23:30:06 -08002* Copyright (c) 2012-2014 Qualcomm Atheros, Inc.
3* All Rights Reserved.
4* Qualcomm Atheros Confidential and Proprietary.
5*/
Jeff Johnson295189b2012-06-20 16:38:30 -07006
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08007/**=========================================================================
Jeff Johnson295189b2012-06-20 16:38:30 -07008
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08009 EDIT HISTORY FOR FILE
10
11
12 This section contains comments describing changes made to the module.
13 Notice that changes are listed in reverse chronological order.
14
15
16 $Header:$ $DateTime: $ $Author: $
17
18
19 when who what, where, why
Jeff Johnson295189b2012-06-20 16:38:30 -070020 -------- --- --------------------------------------------------------
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -080021 07/27/09 kanand Created module.
Jeff Johnson295189b2012-06-20 16:38:30 -070022
23 ==========================================================================*/
24
25/*--------------------------------------------------------------------------
26 Include Files
27 ------------------------------------------------------------------------*/
28
29
30#include <linux/firmware.h>
31#include <linux/string.h>
32#include <wlan_hdd_includes.h>
33#include <wlan_hdd_main.h>
34#include <wlan_hdd_assoc.h>
35#include <wlan_hdd_cfg.h>
36#include <linux/string.h>
37#include <vos_types.h>
38#include <csrApi.h>
39#include <pmcApi.h>
40#include <wlan_hdd_misc.h>
41
Madan Mohan Koyyalamudi62b55b02012-12-03 16:45:39 -080042#if defined (WLAN_FEATURE_VOWIFI_11R) || defined (FEATURE_WLAN_CCX) || defined(FEATURE_WLAN_LFR)
Madan Mohan Koyyalamudid5026072012-11-30 14:56:21 -080043static void cbNotifySetRoamPrefer5GHz(hdd_context_t *pHddCtx, unsigned long NotifyId)
44{
45 sme_UpdateRoamPrefer5GHz((tHalHandle)(pHddCtx->hHal), pHddCtx->cfg_ini->nRoamPrefer5GHz);
46}
Jeff Johnson295189b2012-06-20 16:38:30 -070047
Madan Mohan Koyyalamudi62b55b02012-12-03 16:45:39 -080048static void cbNotifySetImmediateRoamRssiDiff(hdd_context_t *pHddCtx, unsigned long NotifyId)
49{
Srinivas Girigowdade697412013-02-14 16:31:48 -080050 sme_UpdateImmediateRoamRssiDiff((tHalHandle)(pHddCtx->hHal),
Madan Mohan Koyyalamudi62b55b02012-12-03 16:45:39 -080051 pHddCtx->cfg_ini->nImmediateRoamRssiDiff);
52}
Gopichand Nakkala98a98af2012-12-31 14:38:47 -080053
Srinivas Girigowdade697412013-02-14 16:31:48 -080054static void cbNotifySetRoamRssiDiff(hdd_context_t *pHddCtx, unsigned long NotifyId)
55{
56 sme_UpdateRoamRssiDiff((tHalHandle)(pHddCtx->hHal),
57 pHddCtx->cfg_ini->RoamRssiDiff);
58}
59
Gopichand Nakkala98a98af2012-12-31 14:38:47 -080060static void cbNotifySetFastTransitionEnabled(hdd_context_t *pHddCtx, unsigned long NotifyId)
61{
62 sme_UpdateFastTransitionEnabled((tHalHandle)(pHddCtx->hHal), pHddCtx->cfg_ini->isFastTransitionEnabled);
63}
Srinivas Girigowdabbd16eb2013-03-21 12:34:46 -070064
65static void cbNotifySetRoamIntraBand(hdd_context_t *pHddCtx, unsigned long NotifyId)
66{
67 sme_setRoamIntraBand((tHalHandle)(pHddCtx->hHal), pHddCtx->cfg_ini->nRoamIntraBand);
68}
Srinivas Girigowda100eb322013-03-15 16:48:20 -070069
Srinivas Girigowdaad34ca92013-10-22 10:54:29 -070070static void cbNotifySetWESMode(hdd_context_t *pHddCtx, unsigned long NotifyId)
71{
72 // at the point this routine is called, the value in the cfg_ini table has already been updated
73 sme_UpdateWESMode((tHalHandle)(pHddCtx->hHal), pHddCtx->cfg_ini->isWESModeEnabled);
74}
75
Varun Reddy Yeturu920df212013-05-22 08:07:23 -070076static void cbNotifySetRoamScanNProbes(hdd_context_t *pHddCtx, unsigned long NotifyId)
77{
78 sme_UpdateRoamScanNProbes((tHalHandle)(pHddCtx->hHal), pHddCtx->cfg_ini->nProbes);
79}
80
81static void cbNotifySetRoamScanHomeAwayTime(hdd_context_t *pHddCtx, unsigned long NotifyId)
82{
Srinivas Girigowda6cf0b822013-06-27 14:00:20 -070083 sme_UpdateRoamScanHomeAwayTime((tHalHandle)(pHddCtx->hHal), pHddCtx->cfg_ini->nRoamScanHomeAwayTime, eANI_BOOLEAN_TRUE);
Varun Reddy Yeturu920df212013-05-22 08:07:23 -070084}
Srinivas Girigowdabbd16eb2013-03-21 12:34:46 -070085#endif
86
87#ifdef FEATURE_WLAN_OKC
88static void cbNotifySetOkcFeatureEnabled(hdd_context_t *pHddCtx, unsigned long NotifyId)
89{
90 // at the point this routine is called, the value in the cfg_ini table has already been updated
91}
Madan Mohan Koyyalamudi62b55b02012-12-03 16:45:39 -080092#endif
93
Gopichand Nakkala98a98af2012-12-31 14:38:47 -080094#ifdef FEATURE_WLAN_LFR
95static void NotifyIsFastRoamIniFeatureEnabled(hdd_context_t *pHddCtx, unsigned long NotifyId)
96{
97 // at the point this routine is called, the value in the cfg_ini table has already been updated
98 sme_UpdateIsFastRoamIniFeatureEnabled((tHalHandle)(pHddCtx->hHal), pHddCtx->cfg_ini->isFastRoamIniFeatureEnabled );
99}
Sameer Thalappil4ae66ec2013-11-05 14:17:35 -0800100
101static void NotifyIsMAWCIniFeatureEnabled(hdd_context_t *pHddCtx, unsigned long NotifyId)
102{
103 /* at the point this routine is called, the value in the cfg_ini table has already been updated */
104 sme_UpdateIsMAWCIniFeatureEnabled((tHalHandle)(pHddCtx->hHal), pHddCtx->cfg_ini->MAWCEnabled );
105}
Gopichand Nakkala98a98af2012-12-31 14:38:47 -0800106#endif
107
108#ifdef FEATURE_WLAN_CCX
109static void cbNotifySetCcxFeatureEnabled(hdd_context_t *pHddCtx, unsigned long NotifyId)
110{
111 // at the point this routine is called, the value in the cfg_ini table has already been updated
112 sme_UpdateIsCcxFeatureEnabled((tHalHandle)(pHddCtx->hHal), pHddCtx->cfg_ini->isCcxIniFeatureEnabled );
113}
114#endif
115
116static void cbNotifySetFwRssiMonitoring(hdd_context_t *pHddCtx, unsigned long NotifyId)
117{
118 // at the point this routine is called, the value in the cfg_ini table has already been updated
119 sme_UpdateConfigFwRssiMonitoring((tHalHandle)(pHddCtx->hHal), pHddCtx->cfg_ini->fEnableFwRssiMonitoring );
120}
121
Srinivas Girigowdade697412013-02-14 16:31:48 -0800122#ifdef WLAN_FEATURE_NEIGHBOR_ROAMING
123static void cbNotifySetNeighborLookupRssiThreshold(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 sme_setNeighborLookupRssiThreshold((tHalHandle)(pHddCtx->hHal), pHddCtx->cfg_ini->nNeighborLookupRssiThreshold );
127}
128
Srinivas Girigowdabbd16eb2013-03-21 12:34:46 -0700129static void cbNotifySetNeighborScanPeriod(hdd_context_t *pHddCtx, unsigned long NotifyId)
130{
131 // at the point this routine is called, the value in the cfg_ini table has already been updated
132 sme_setNeighborScanPeriod((tHalHandle)(pHddCtx->hHal), pHddCtx->cfg_ini->nNeighborScanPeriod );
133}
134
Srinivas Girigowdade697412013-02-14 16:31:48 -0800135static void cbNotifySetNeighborResultsRefreshPeriod(hdd_context_t *pHddCtx, unsigned long NotifyId)
136{
137 // at the point this routine is called, the value in the cfg_ini table has already been updated
138 sme_setNeighborScanRefreshPeriod((tHalHandle)(pHddCtx->hHal), pHddCtx->cfg_ini->nNeighborResultsRefreshPeriod );
139}
140
141static void cbNotifySetEmptyScanRefreshPeriod(hdd_context_t *pHddCtx, unsigned long NotifyId)
142{
143 // at the point this routine is called, the value in the cfg_ini table has already been updated
144 sme_UpdateEmptyScanRefreshPeriod((tHalHandle)(pHddCtx->hHal), pHddCtx->cfg_ini->nEmptyScanRefreshPeriod);
145}
Srinivas Girigowdabbd16eb2013-03-21 12:34:46 -0700146
147static void cbNotifySetNeighborScanMinChanTime(hdd_context_t *pHddCtx, unsigned long NotifyId)
148{
149 // at the point this routine is called, the value in the cfg_ini table has already been updated
150 sme_setNeighborScanMinChanTime((tHalHandle)(pHddCtx->hHal), pHddCtx->cfg_ini->nNeighborScanMinChanTime);
151}
152
153static void cbNotifySetNeighborScanMaxChanTime(hdd_context_t *pHddCtx, unsigned long NotifyId)
154{
Srinivas Girigowdabbd16eb2013-03-21 12:34:46 -0700155 sme_setNeighborScanMaxChanTime((tHalHandle)(pHddCtx->hHal), pHddCtx->cfg_ini->nNeighborScanMaxChanTime);
156}
Srinivas Girigowdade697412013-02-14 16:31:48 -0800157#endif
158
Gopichand Nakkalae620d5a2013-04-26 05:45:57 -0700159static void cbNotifySetEnableSSR(hdd_context_t *pHddCtx, unsigned long NotifyId)
160{
161 sme_UpdateEnableSSR((tHalHandle)(pHddCtx->hHal), pHddCtx->cfg_ini->enableSSR);
162}
163
Varun Reddy Yeturud0a3f252013-04-15 21:58:13 -0700164#ifdef WLAN_FEATURE_ROAM_SCAN_OFFLOAD
165static void cbNotifyUpdateRoamScanOffloadEnabled(hdd_context_t *pHddCtx, unsigned long NotifyId)
166{
167 sme_UpdateRoamScanOffloadEnabled((tHalHandle)(pHddCtx->hHal), pHddCtx->cfg_ini->isRoamOffloadScanEnabled);
Srinivas Girigowda830bbd02013-06-13 19:44:16 -0700168 if (0 == pHddCtx->cfg_ini->isRoamOffloadScanEnabled)
169 {
170 pHddCtx->cfg_ini->bFastRoamInConIniFeatureEnabled = 0;
171 sme_UpdateEnableFastRoamInConcurrency((tHalHandle)(pHddCtx->hHal), pHddCtx->cfg_ini->bFastRoamInConIniFeatureEnabled );
172 }
Varun Reddy Yeturud0a3f252013-04-15 21:58:13 -0700173}
Srinivas Girigowda830bbd02013-06-13 19:44:16 -0700174
175static void cbNotifySetEnableFastRoamInConcurrency(hdd_context_t *pHddCtx, unsigned long NotifyId)
176{
177 sme_UpdateEnableFastRoamInConcurrency((tHalHandle)(pHddCtx->hHal), pHddCtx->cfg_ini->bFastRoamInConIniFeatureEnabled );
178}
179
Varun Reddy Yeturud0a3f252013-04-15 21:58:13 -0700180#endif
181
Jeff Johnson295189b2012-06-20 16:38:30 -0700182REG_TABLE_ENTRY g_registry_table[] =
183{
184 REG_VARIABLE( CFG_RTS_THRESHOLD_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800185 hdd_config_t, RTSThreshold,
186 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
187 CFG_RTS_THRESHOLD_DEFAULT,
188 CFG_RTS_THRESHOLD_MIN,
189 CFG_RTS_THRESHOLD_MAX ),
Jeff Johnson295189b2012-06-20 16:38:30 -0700190
191 REG_VARIABLE( CFG_FRAG_THRESHOLD_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800192 hdd_config_t, FragmentationThreshold,
193 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
194 CFG_FRAG_THRESHOLD_DEFAULT,
195 CFG_FRAG_THRESHOLD_MIN,
196 CFG_FRAG_THRESHOLD_MAX ),
Jeff Johnson295189b2012-06-20 16:38:30 -0700197
198 REG_VARIABLE( CFG_CALIBRATION_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800199 hdd_config_t, Calibration,
200 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
201 CFG_CALIBRATION_DEFAULT,
202 CFG_CALIBRATION_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700203 CFG_CALIBRATION_MAX ),
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800204
Jeff Johnson295189b2012-06-20 16:38:30 -0700205 REG_VARIABLE( CFG_CALIBRATION_PERIOD_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800206 hdd_config_t, CalibrationPeriod,
207 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
208 CFG_CALIBRATION_PERIOD_DEFAULT,
209 CFG_CALIBRATION_PERIOD_MIN,
210 CFG_CALIBRATION_PERIOD_MAX ),
Jeff Johnson295189b2012-06-20 16:38:30 -0700211
212 REG_VARIABLE( CFG_OPERATING_CHANNEL_NAME, WLAN_PARAM_Integer,
213 hdd_config_t, OperatingChannel,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800214 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
215 CFG_OPERATING_CHANNEL_DEFAULT,
216 CFG_OPERATING_CHANNEL_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700217 CFG_OPERATING_CHANNEL_MAX ),
218
219 REG_VARIABLE( CFG_SHORT_SLOT_TIME_ENABLED_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800220 hdd_config_t, ShortSlotTimeEnabled,
221 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK,
222 CFG_SHORT_SLOT_TIME_ENABLED_DEFAULT,
223 CFG_SHORT_SLOT_TIME_ENABLED_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700224 CFG_SHORT_SLOT_TIME_ENABLED_MAX ),
225
226 REG_VARIABLE( CFG_11D_SUPPORT_ENABLED_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800227 hdd_config_t, Is11dSupportEnabled,
228 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK,
229 CFG_11D_SUPPORT_ENABLED_DEFAULT,
230 CFG_11D_SUPPORT_ENABLED_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700231 CFG_11D_SUPPORT_ENABLED_MAX ),
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800232
Madan Mohan Koyyalamudi8db1c942013-01-10 15:24:29 -0800233 REG_VARIABLE( CFG_11H_SUPPORT_ENABLED_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800234 hdd_config_t, Is11hSupportEnabled,
235 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK,
236 CFG_11H_SUPPORT_ENABLED_DEFAULT,
237 CFG_11H_SUPPORT_ENABLED_MIN,
Madan Mohan Koyyalamudi8db1c942013-01-10 15:24:29 -0800238 CFG_11H_SUPPORT_ENABLED_MAX ),
Jeff Johnson295189b2012-06-20 16:38:30 -0700239
240 REG_VARIABLE( CFG_ENFORCE_11D_CHANNELS_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800241 hdd_config_t, fEnforce11dChannels,
242 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK,
243 CFG_ENFORCE_11D_CHANNELS_DEFAULT,
244 CFG_ENFORCE_11D_CHANNELS_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700245 CFG_ENFORCE_11D_CHANNELS_MAX ),
246
247 REG_VARIABLE( CFG_COUNTRY_CODE_PRIORITY_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800248 hdd_config_t, fSupplicantCountryCodeHasPriority,
249 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK,
250 CFG_COUNTRY_CODE_PRIORITY_DEFAULT,
251 CFG_COUNTRY_CODE_PRIORITY_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700252 CFG_COUNTRY_CODE_PRIORITY_MAX),
253
254 REG_VARIABLE( CFG_ENFORCE_COUNTRY_CODE_MATCH_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800255 hdd_config_t, fEnforceCountryCodeMatch,
256 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK,
257 CFG_ENFORCE_COUNTRY_CODE_MATCH_DEFAULT,
258 CFG_ENFORCE_COUNTRY_CODE_MATCH_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700259 CFG_ENFORCE_COUNTRY_CODE_MATCH_MAX ),
260
261 REG_VARIABLE( CFG_ENFORCE_DEFAULT_DOMAIN_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800262 hdd_config_t, fEnforceDefaultDomain,
263 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK,
264 CFG_ENFORCE_DEFAULT_DOMAIN_DEFAULT,
265 CFG_ENFORCE_DEFAULT_DOMAIN_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700266 CFG_ENFORCE_DEFAULT_DOMAIN_MAX ),
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800267
Jeff Johnson295189b2012-06-20 16:38:30 -0700268 REG_VARIABLE( CFG_GENERIC_ID1_NAME, WLAN_PARAM_Integer,
269 hdd_config_t, Cfg1Id,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800270 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
271 CFG_GENERIC_ID1_DEFAULT,
272 CFG_GENERIC_ID1_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700273 CFG_GENERIC_ID1_MAX ),
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800274
Jeff Johnson295189b2012-06-20 16:38:30 -0700275 REG_VARIABLE( CFG_GENERIC_ID2_NAME, WLAN_PARAM_Integer,
276 hdd_config_t, Cfg2Id,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800277 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
278 CFG_GENERIC_ID2_DEFAULT,
279 CFG_GENERIC_ID2_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700280 CFG_GENERIC_ID2_MAX ),
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800281
Jeff Johnson295189b2012-06-20 16:38:30 -0700282 REG_VARIABLE( CFG_GENERIC_ID3_NAME, WLAN_PARAM_Integer,
283 hdd_config_t, Cfg3Id,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800284 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
285 CFG_GENERIC_ID3_DEFAULT,
286 CFG_GENERIC_ID3_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700287 CFG_GENERIC_ID3_MAX ),
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800288
Jeff Johnson295189b2012-06-20 16:38:30 -0700289 REG_VARIABLE( CFG_GENERIC_ID4_NAME, WLAN_PARAM_Integer,
290 hdd_config_t, Cfg4Id,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800291 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
292 CFG_GENERIC_ID4_DEFAULT,
293 CFG_GENERIC_ID4_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700294 CFG_GENERIC_ID4_MAX ),
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800295
Jeff Johnson295189b2012-06-20 16:38:30 -0700296 REG_VARIABLE( CFG_GENERIC_ID5_NAME, WLAN_PARAM_Integer,
297 hdd_config_t, Cfg5Id,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800298 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
299 CFG_GENERIC_ID5_DEFAULT,
300 CFG_GENERIC_ID5_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700301 CFG_GENERIC_ID5_MAX ),
302
303 REG_VARIABLE( CFG_GENERIC_VALUE1_NAME, WLAN_PARAM_Integer,
304 hdd_config_t, Cfg1Value,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800305 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
306 CFG_GENERIC_VALUE1_DEFAULT,
307 CFG_GENERIC_VALUE1_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700308 CFG_GENERIC_VALUE1_MAX ),
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800309
Jeff Johnson295189b2012-06-20 16:38:30 -0700310 REG_VARIABLE( CFG_GENERIC_VALUE2_NAME, WLAN_PARAM_Integer,
311 hdd_config_t, Cfg2Value,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800312 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
313 CFG_GENERIC_VALUE2_DEFAULT,
314 CFG_GENERIC_VALUE2_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700315 CFG_GENERIC_VALUE2_MAX ),
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800316
Jeff Johnson295189b2012-06-20 16:38:30 -0700317 REG_VARIABLE( CFG_GENERIC_VALUE3_NAME, WLAN_PARAM_Integer,
318 hdd_config_t, Cfg3Value,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800319 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
320 CFG_GENERIC_VALUE3_DEFAULT,
321 CFG_GENERIC_VALUE3_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700322 CFG_GENERIC_VALUE3_MAX ),
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800323
Jeff Johnson295189b2012-06-20 16:38:30 -0700324 REG_VARIABLE( CFG_GENERIC_VALUE4_NAME, WLAN_PARAM_Integer,
325 hdd_config_t, Cfg4Value,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800326 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
327 CFG_GENERIC_VALUE4_DEFAULT,
328 CFG_GENERIC_VALUE4_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700329 CFG_GENERIC_VALUE4_MAX ),
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800330
Jeff Johnson295189b2012-06-20 16:38:30 -0700331 REG_VARIABLE( CFG_GENERIC_VALUE5_NAME, WLAN_PARAM_Integer,
332 hdd_config_t, Cfg5Value,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800333 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
334 CFG_GENERIC_VALUE5_DEFAULT,
335 CFG_GENERIC_VALUE5_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700336 CFG_GENERIC_VALUE5_MAX ),
337
338 REG_VARIABLE( CFG_HEARTBEAT_THRESH_24_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800339 hdd_config_t, HeartbeatThresh24,
340 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
341 CFG_HEARTBEAT_THRESH_24_DEFAULT,
342 CFG_HEARTBEAT_THRESH_24_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700343 CFG_HEARTBEAT_THRESH_24_MAX ),
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800344
Jeff Johnson295189b2012-06-20 16:38:30 -0700345 REG_VARIABLE_STRING( CFG_POWER_USAGE_NAME, WLAN_PARAM_String,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800346 hdd_config_t, PowerUsageControl,
Jeff Johnson295189b2012-06-20 16:38:30 -0700347 VAR_FLAGS_OPTIONAL,
348 (void *)CFG_POWER_USAGE_DEFAULT ),
349
350 REG_VARIABLE( CFG_ENABLE_SUSPEND_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800351 hdd_config_t, nEnableSuspend,
352 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
353 CFG_ENABLE_SUSPEND_DEFAULT,
354 CFG_ENABLE_SUSPEND_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700355 CFG_ENABLE_SUSPEND_MAX ),
356
357 REG_VARIABLE( CFG_ENABLE_ENABLE_DRIVER_STOP_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800358 hdd_config_t, nEnableDriverStop,
359 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
360 CFG_ENABLE_ENABLE_DRIVER_STOP_DEFAULT,
361 CFG_ENABLE_ENABLE_DRIVER_STOP_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700362 CFG_ENABLE_ENABLE_DRIVER_STOP_MAX ),
363
364 REG_VARIABLE( CFG_ENABLE_IMPS_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800365 hdd_config_t, fIsImpsEnabled,
366 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
367 CFG_ENABLE_IMPS_DEFAULT,
368 CFG_ENABLE_IMPS_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700369 CFG_ENABLE_IMPS_MAX ),
370
371 REG_VARIABLE( CFG_ENABLE_LOGP_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800372 hdd_config_t, fIsLogpEnabled,
373 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
374 CFG_ENABLE_LOGP_DEFAULT,
375 CFG_ENABLE_LOGP_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700376 CFG_ENABLE_LOGP_MAX ),
377
378 REG_VARIABLE( CFG_IMPS_MINIMUM_SLEEP_TIME_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800379 hdd_config_t, nImpsMinSleepTime,
380 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
381 CFG_IMPS_MINIMUM_SLEEP_TIME_DEFAULT,
382 CFG_IMPS_MINIMUM_SLEEP_TIME_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700383 CFG_IMPS_MINIMUM_SLEEP_TIME_MAX ),
384
385 REG_VARIABLE( CFG_IMPS_MAXIMUM_SLEEP_TIME_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800386 hdd_config_t, nImpsMaxSleepTime,
387 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
388 CFG_IMPS_MAXIMUM_SLEEP_TIME_DEFAULT,
389 CFG_IMPS_MAXIMUM_SLEEP_TIME_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700390 CFG_IMPS_MAXIMUM_SLEEP_TIME_MAX ),
391
392 REG_VARIABLE( CFG_IMPS_MODERATE_SLEEP_TIME_NAME, WLAN_PARAM_Integer,
393 hdd_config_t, nImpsModSleepTime,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800394 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
395 CFG_IMPS_MODERATE_SLEEP_TIME_DEFAULT,
396 CFG_IMPS_MODERATE_SLEEP_TIME_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700397 CFG_IMPS_MODERATE_SLEEP_TIME_MAX ),
398
399 REG_VARIABLE( CFG_ENABLE_BMPS_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800400 hdd_config_t, fIsBmpsEnabled,
401 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
402 CFG_ENABLE_BMPS_DEFAULT,
403 CFG_ENABLE_BMPS_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700404 CFG_ENABLE_BMPS_MAX ),
405
406 REG_VARIABLE( CFG_BMPS_MINIMUM_LI_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800407 hdd_config_t, nBmpsMinListenInterval,
408 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
409 CFG_BMPS_MINIMUM_LI_DEFAULT,
410 CFG_BMPS_MINIMUM_LI_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700411 CFG_BMPS_MINIMUM_LI_MAX ),
412
413 REG_VARIABLE( CFG_BMPS_MAXIMUM_LI_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800414 hdd_config_t, nBmpsMaxListenInterval,
415 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
416 CFG_BMPS_MAXIMUM_LI_DEFAULT,
417 CFG_BMPS_MAXIMUM_LI_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700418 CFG_BMPS_MAXIMUM_LI_MAX ),
419
420 REG_VARIABLE( CFG_BMPS_MODERATE_LI_NAME, WLAN_PARAM_Integer,
421 hdd_config_t, nBmpsModListenInterval,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800422 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
423 CFG_BMPS_MODERATE_LI_DEFAULT,
424 CFG_BMPS_MODERATE_LI_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700425 CFG_BMPS_MODERATE_LI_MAX ),
426
427 REG_VARIABLE( CFG_ENABLE_AUTO_BMPS_TIMER_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800428 hdd_config_t, fIsAutoBmpsTimerEnabled,
429 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
430 CFG_ENABLE_AUTO_BMPS_TIMER_DEFAULT,
431 CFG_ENABLE_AUTO_BMPS_TIMER_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700432 CFG_ENABLE_AUTO_BMPS_TIMER_MAX ),
433
434 REG_VARIABLE( CFG_AUTO_BMPS_TIMER_VALUE_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800435 hdd_config_t, nAutoBmpsTimerValue,
436 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
437 CFG_AUTO_BMPS_TIMER_VALUE_DEFAULT,
438 CFG_AUTO_BMPS_TIMER_VALUE_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700439 CFG_AUTO_BMPS_TIMER_VALUE_MAX ),
440
441 REG_VARIABLE( CFG_DOT11_MODE_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800442 hdd_config_t, dot11Mode,
443 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK,
444 CFG_DOT11_MODE_DEFAULT,
445 CFG_DOT11_MODE_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700446 CFG_DOT11_MODE_MAX ),
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800447
Jeff Johnson295189b2012-06-20 16:38:30 -0700448 REG_VARIABLE( CFG_CHANNEL_BONDING_MODE_24GHZ_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800449 hdd_config_t, nChannelBondingMode24GHz,
450 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK,
451 CFG_CHANNEL_BONDING_MODE_DEFAULT,
452 CFG_CHANNEL_BONDING_MODE_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700453 CFG_CHANNEL_BONDING_MODE_MAX),
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800454
Jeff Johnson295189b2012-06-20 16:38:30 -0700455 REG_VARIABLE( CFG_CHANNEL_BONDING_MODE_5GHZ_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800456 hdd_config_t, nChannelBondingMode5GHz,
457 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK,
458 CFG_CHANNEL_BONDING_MODE_DEFAULT,
459 CFG_CHANNEL_BONDING_MODE_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700460 CFG_CHANNEL_BONDING_MODE_MAX),
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800461
462 REG_VARIABLE( CFG_MAX_RX_AMPDU_FACTOR_NAME, WLAN_PARAM_Integer,
463 hdd_config_t, MaxRxAmpduFactor,
464 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK ,
465 CFG_MAX_RX_AMPDU_FACTOR_DEFAULT,
466 CFG_MAX_RX_AMPDU_FACTOR_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700467 CFG_MAX_RX_AMPDU_FACTOR_MAX),
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800468
Jeff Johnson295189b2012-06-20 16:38:30 -0700469 REG_VARIABLE( CFG_FIXED_RATE_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800470 hdd_config_t, TxRate,
471 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK,
472 CFG_FIXED_RATE_DEFAULT,
473 CFG_FIXED_RATE_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700474 CFG_FIXED_RATE_MAX ),
475
476 REG_VARIABLE( CFG_SHORT_GI_20MHZ_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800477 hdd_config_t, ShortGI20MhzEnable,
478 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
479 CFG_SHORT_GI_20MHZ_DEFAULT,
480 CFG_SHORT_GI_20MHZ_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700481 CFG_SHORT_GI_20MHZ_MAX ),
482
483 REG_VARIABLE( CFG_BLOCK_ACK_AUTO_SETUP_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800484 hdd_config_t, BlockAckAutoSetup,
485 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK,
486 CFG_BLOCK_ACK_AUTO_SETUP_DEFAULT,
487 CFG_BLOCK_ACK_AUTO_SETUP_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700488 CFG_BLOCK_ACK_AUTO_SETUP_MAX ),
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800489
Jeff Johnson295189b2012-06-20 16:38:30 -0700490 REG_VARIABLE( CFG_SCAN_RESULT_AGE_COUNT_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800491 hdd_config_t, ScanResultAgeCount,
492 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK,
493 CFG_SCAN_RESULT_AGE_COUNT_DEFAULT,
494 CFG_SCAN_RESULT_AGE_COUNT_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700495 CFG_SCAN_RESULT_AGE_COUNT_MAX ),
496
497 REG_VARIABLE( CFG_SCAN_RESULT_AGE_TIME_NCNPS_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800498 hdd_config_t, nScanAgeTimeNCNPS,
499 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK,
500 CFG_SCAN_RESULT_AGE_TIME_NCNPS_DEFAULT,
501 CFG_SCAN_RESULT_AGE_TIME_NCNPS_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700502 CFG_SCAN_RESULT_AGE_TIME_NCNPS_MAX ),
503
504 REG_VARIABLE( CFG_SCAN_RESULT_AGE_TIME_NCPS_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800505 hdd_config_t, nScanAgeTimeNCPS,
506 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK,
507 CFG_SCAN_RESULT_AGE_TIME_NCPS_DEFAULT,
508 CFG_SCAN_RESULT_AGE_TIME_NCPS_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700509 CFG_SCAN_RESULT_AGE_TIME_NCPS_MAX ),
510
511 REG_VARIABLE( CFG_SCAN_RESULT_AGE_TIME_CNPS_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800512 hdd_config_t, nScanAgeTimeCNPS,
513 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK,
514 CFG_SCAN_RESULT_AGE_TIME_CNPS_DEFAULT,
515 CFG_SCAN_RESULT_AGE_TIME_CNPS_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700516 CFG_SCAN_RESULT_AGE_TIME_CNPS_MAX ),
517
518 REG_VARIABLE( CFG_SCAN_RESULT_AGE_TIME_CPS_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800519 hdd_config_t, nScanAgeTimeCPS,
520 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK,
521 CFG_SCAN_RESULT_AGE_TIME_CPS_DEFAULT,
522 CFG_SCAN_RESULT_AGE_TIME_CPS_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700523 CFG_SCAN_RESULT_AGE_TIME_CPS_MAX ),
524
525 REG_VARIABLE( CFG_RSSI_CATEGORY_GAP_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800526 hdd_config_t, nRssiCatGap,
527 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
528 CFG_RSSI_CATEGORY_GAP_DEFAULT,
529 CFG_RSSI_CATEGORY_GAP_MIN,
530 CFG_RSSI_CATEGORY_GAP_MAX ),
Jeff Johnson295189b2012-06-20 16:38:30 -0700531
Jeff Johnson295189b2012-06-20 16:38:30 -0700532 REG_VARIABLE( CFG_SHORT_PREAMBLE_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800533 hdd_config_t, fIsShortPreamble,
534 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
535 CFG_SHORT_PREAMBLE_DEFAULT,
536 CFG_SHORT_PREAMBLE_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700537 CFG_SHORT_PREAMBLE_MAX ),
538
539 REG_VARIABLE( CFG_IBSS_AUTO_BSSID_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800540 hdd_config_t, fIsAutoIbssBssid,
541 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
542 CFG_IBSS_AUTO_BSSID_DEFAULT,
543 CFG_IBSS_AUTO_BSSID_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700544 CFG_IBSS_AUTO_BSSID_MAX ),
545
546 REG_VARIABLE_STRING( CFG_IBSS_BSSID_NAME, WLAN_PARAM_MacAddr,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800547 hdd_config_t, IbssBssid,
Jeff Johnson295189b2012-06-20 16:38:30 -0700548 VAR_FLAGS_OPTIONAL,
549 (void *)CFG_IBSS_BSSID_DEFAULT ),
550
551 REG_VARIABLE_STRING( CFG_INTF0_MAC_ADDR_NAME, WLAN_PARAM_MacAddr,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800552 hdd_config_t, intfMacAddr[0],
Jeff Johnson295189b2012-06-20 16:38:30 -0700553 VAR_FLAGS_OPTIONAL,
554 (void *)CFG_INTF0_MAC_ADDR_DEFAULT ),
555
556 REG_VARIABLE_STRING( CFG_INTF1_MAC_ADDR_NAME, WLAN_PARAM_MacAddr,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800557 hdd_config_t, intfMacAddr[1],
Jeff Johnson295189b2012-06-20 16:38:30 -0700558 VAR_FLAGS_OPTIONAL,
559 (void *)CFG_INTF1_MAC_ADDR_DEFAULT ),
560
561 REG_VARIABLE_STRING( CFG_INTF2_MAC_ADDR_NAME, WLAN_PARAM_MacAddr,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800562 hdd_config_t, intfMacAddr[2],
Jeff Johnson295189b2012-06-20 16:38:30 -0700563 VAR_FLAGS_OPTIONAL,
564 (void *)CFG_INTF2_MAC_ADDR_DEFAULT ),
565
566 REG_VARIABLE_STRING( CFG_INTF3_MAC_ADDR_NAME, WLAN_PARAM_MacAddr,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800567 hdd_config_t, intfMacAddr[3],
Jeff Johnson295189b2012-06-20 16:38:30 -0700568 VAR_FLAGS_OPTIONAL,
569 (void *)CFG_INTF3_MAC_ADDR_DEFAULT ),
570
Jeff Johnson295189b2012-06-20 16:38:30 -0700571 REG_VARIABLE( CFG_AP_QOS_UAPSD_MODE_NAME , WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800572 hdd_config_t, apUapsdEnabled,
573 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
574 CFG_AP_QOS_UAPSD_MODE_DEFAULT,
575 CFG_AP_QOS_UAPSD_MODE_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700576 CFG_AP_QOS_UAPSD_MODE_MAX ),
577
578 REG_VARIABLE_STRING( CFG_AP_COUNTRY_CODE, WLAN_PARAM_String,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800579 hdd_config_t, apCntryCode,
Jeff Johnson295189b2012-06-20 16:38:30 -0700580 VAR_FLAGS_OPTIONAL,
581 (void *)CFG_AP_COUNTRY_CODE_DEFAULT ),
582
Madan Mohan Koyyalamudi3ff2a0b2012-10-15 14:33:46 -0700583 REG_VARIABLE( CFG_AP_ENABLE_RANDOM_BSSID_NAME, WLAN_PARAM_Integer,
584 hdd_config_t, apRandomBssidEnabled,
585 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
586 CFG_AP_ENABLE_RANDOM_BSSID_DEFAULT,
587 CFG_AP_ENABLE_RANDOM_BSSID_MIN,
588 CFG_AP_ENABLE_RANDOM_BSSID_MAX ),
589
Jeff Johnson295189b2012-06-20 16:38:30 -0700590 REG_VARIABLE( CFG_AP_ENABLE_PROTECTION_MODE_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800591 hdd_config_t, apProtEnabled,
Jeff Johnson295189b2012-06-20 16:38:30 -0700592 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
593 CFG_AP_ENABLE_PROTECTION_MODE_DEFAULT,
594 CFG_AP_ENABLE_PROTECTION_MODE_MIN,
595 CFG_AP_ENABLE_PROTECTION_MODE_MAX ),
596
597 REG_VARIABLE( CFG_AP_PROTECTION_MODE_NAME, WLAN_PARAM_HexInteger,
598 hdd_config_t, apProtection,
599 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
600 CFG_AP_PROTECTION_MODE_DEFAULT,
601 CFG_AP_PROTECTION_MODE_MIN,
602 CFG_AP_PROTECTION_MODE_MAX ),
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800603
Jeff Johnson295189b2012-06-20 16:38:30 -0700604 REG_VARIABLE( CFG_AP_OBSS_PROTECTION_MODE_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800605 hdd_config_t, apOBSSProtEnabled,
Jeff Johnson295189b2012-06-20 16:38:30 -0700606 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
607 CFG_AP_OBSS_PROTECTION_MODE_DEFAULT,
608 CFG_AP_OBSS_PROTECTION_MODE_MIN,
609 CFG_AP_OBSS_PROTECTION_MODE_MAX ),
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800610
Jeff Johnson295189b2012-06-20 16:38:30 -0700611 REG_VARIABLE( CFG_AP_STA_SECURITY_SEPERATION_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800612 hdd_config_t, apDisableIntraBssFwd,
Jeff Johnson295189b2012-06-20 16:38:30 -0700613 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
614 CFG_AP_STA_SECURITY_SEPERATION_DEFAULT,
615 CFG_AP_STA_SECURITY_SEPERATION_MIN,
616 CFG_AP_STA_SECURITY_SEPERATION_MAX ),
617
618 REG_VARIABLE( CFG_FRAMES_PROCESSING_TH_MODE_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800619 hdd_config_t, MinFramesProcThres,
Jeff Johnson295189b2012-06-20 16:38:30 -0700620 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
621 CFG_FRAMES_PROCESSING_TH_DEFAULT,
622 CFG_FRAMES_PROCESSING_TH_MIN,
623 CFG_FRAMES_PROCESSING_TH_MAX ),
624
625 REG_VARIABLE(CFG_SAP_CHANNEL_SELECT_START_CHANNEL , WLAN_PARAM_Integer,
626 hdd_config_t, apStartChannelNum,
627 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
628 CFG_SAP_CHANNEL_SELECT_START_CHANNEL_DEFAULT,
629 CFG_SAP_CHANNEL_SELECT_START_CHANNEL_MIN,
630 CFG_SAP_CHANNEL_SELECT_START_CHANNEL_MAX ),
631
632 REG_VARIABLE(CFG_SAP_CHANNEL_SELECT_END_CHANNEL , WLAN_PARAM_Integer,
633 hdd_config_t, apEndChannelNum,
634 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
635 CFG_SAP_CHANNEL_SELECT_END_CHANNEL_DEFAULT,
636 CFG_SAP_CHANNEL_SELECT_END_CHANNEL_MIN,
637 CFG_SAP_CHANNEL_SELECT_END_CHANNEL_MAX ),
638
639 REG_VARIABLE(CFG_SAP_CHANNEL_SELECT_OPERATING_BAND , WLAN_PARAM_Integer,
640 hdd_config_t, apOperatingBand,
641 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
642 CFG_SAP_CHANNEL_SELECT_OPERATING_BAND_DEFAULT,
643 CFG_SAP_CHANNEL_SELECT_OPERATING_BAND_MIN,
644 CFG_SAP_CHANNEL_SELECT_OPERATING_BAND_MAX ),
645
646 REG_VARIABLE(CFG_SAP_AUTO_CHANNEL_SELECTION_NAME , WLAN_PARAM_Integer,
647 hdd_config_t, apAutoChannelSelection,
648 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
649 CFG_SAP_AUTO_CHANNEL_SELECTION_DEFAULT,
650 CFG_SAP_AUTO_CHANNEL_SELECTION_MIN,
651 CFG_SAP_AUTO_CHANNEL_SELECTION_MAX ),
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800652
Jeff Johnson295189b2012-06-20 16:38:30 -0700653 REG_VARIABLE(CFG_ENABLE_LTE_COEX , WLAN_PARAM_Integer,
654 hdd_config_t, enableLTECoex,
655 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
656 CFG_ENABLE_LTE_COEX_DEFAULT,
657 CFG_ENABLE_LTE_COEX_MIN,
658 CFG_ENABLE_LTE_COEX_MAX ),
659
660 REG_VARIABLE( CFG_AP_KEEP_ALIVE_PERIOD_NAME, WLAN_PARAM_Integer,
661 hdd_config_t, apKeepAlivePeriod,
662 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
663 CFG_AP_KEEP_ALIVE_PERIOD_DEFAULT,
664 CFG_AP_KEEP_ALIVE_PERIOD_MIN,
665 CFG_AP_KEEP_ALIVE_PERIOD_MAX),
666
667 REG_VARIABLE( CFG_GO_KEEP_ALIVE_PERIOD_NAME, WLAN_PARAM_Integer,
668 hdd_config_t, goKeepAlivePeriod,
669 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
670 CFG_GO_KEEP_ALIVE_PERIOD_DEFAULT,
671 CFG_GO_KEEP_ALIVE_PERIOD_MIN,
672 CFG_GO_KEEP_ALIVE_PERIOD_MAX),
673
Sejal Chauhanbcde8bc2013-03-04 18:06:36 +0530674 REG_VARIABLE( CFG_AP_LINK_MONITOR_PERIOD_NAME, WLAN_PARAM_Integer,
675 hdd_config_t, apLinkMonitorPeriod,
676 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
677 CFG_AP_LINK_MONITOR_PERIOD_DEFAULT,
678 CFG_AP_LINK_MONITOR_PERIOD_MIN,
679 CFG_AP_LINK_MONITOR_PERIOD_MAX),
680
Madan Mohan Koyyalamudi2558bc92013-08-24 16:54:31 +0530681 REG_VARIABLE( CFG_GO_LINK_MONITOR_PERIOD_NAME, WLAN_PARAM_Integer,
682 hdd_config_t, goLinkMonitorPeriod,
683 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
684 CFG_GO_LINK_MONITOR_PERIOD_DEFAULT,
685 CFG_GO_LINK_MONITOR_PERIOD_MIN,
686 CFG_GO_LINK_MONITOR_PERIOD_MAX),
687
Jeff Johnson295189b2012-06-20 16:38:30 -0700688 REG_VARIABLE(CFG_DISABLE_PACKET_FILTER , WLAN_PARAM_Integer,
689 hdd_config_t, disablePacketFilter,
690 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
691 CFG_DISABLE_PACKET_FILTER_DEFAULT,
692 CFG_DISABLE_PACKET_FILTER_MIN,
693 CFG_DISABLE_PACKET_FILTER_MAX ),
694
695 REG_VARIABLE( CFG_BEACON_INTERVAL_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800696 hdd_config_t, nBeaconInterval,
697 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK,
698 CFG_BEACON_INTERVAL_DEFAULT,
699 CFG_BEACON_INTERVAL_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700700 CFG_BEACON_INTERVAL_MAX ),
701
Jeff Johnson295189b2012-06-20 16:38:30 -0700702 REG_VARIABLE( CFG_ENABLE_IDLE_SCAN_NAME , WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800703 hdd_config_t, nEnableIdleScan,
704 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
705 CFG_ENABLE_IDLE_SCAN_DEFAULT,
706 CFG_ENABLE_IDLE_SCAN_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700707 CFG_ENABLE_IDLE_SCAN_MAX ),
708
709 REG_VARIABLE( CFG_ROAMING_TIME_NAME , WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800710 hdd_config_t, nRoamingTime,
711 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
712 CFG_ROAMING_TIME_DEFAULT,
713 CFG_ROAMING_TIME_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700714 CFG_ROAMING_TIME_MAX ),
715
716 REG_VARIABLE( CFG_VCC_RSSI_TRIGGER_NAME , WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800717 hdd_config_t, nVccRssiTrigger,
718 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
719 CFG_VCC_RSSI_TRIGGER_DEFAULT,
720 CFG_VCC_RSSI_TRIGGER_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700721 CFG_VCC_RSSI_TRIGGER_MAX ),
722
723 REG_VARIABLE( CFG_VCC_UL_MAC_LOSS_THRESH_NAME , WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800724 hdd_config_t, nVccUlMacLossThreshold,
725 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
726 CFG_VCC_UL_MAC_LOSS_THRESH_DEFAULT,
727 CFG_VCC_UL_MAC_LOSS_THRESH_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700728 CFG_VCC_UL_MAC_LOSS_THRESH_MAX ),
729
730 REG_VARIABLE( CFG_PASSIVE_MAX_CHANNEL_TIME_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800731 hdd_config_t, nPassiveMaxChnTime,
732 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
733 CFG_PASSIVE_MAX_CHANNEL_TIME_DEFAULT,
734 CFG_PASSIVE_MAX_CHANNEL_TIME_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700735 CFG_PASSIVE_MAX_CHANNEL_TIME_MAX ),
736
737 REG_VARIABLE( CFG_PASSIVE_MIN_CHANNEL_TIME_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800738 hdd_config_t, nPassiveMinChnTime,
739 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
740 CFG_PASSIVE_MIN_CHANNEL_TIME_DEFAULT,
741 CFG_PASSIVE_MIN_CHANNEL_TIME_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700742 CFG_PASSIVE_MIN_CHANNEL_TIME_MAX ),
743
744 REG_VARIABLE( CFG_ACTIVE_MAX_CHANNEL_TIME_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800745 hdd_config_t, nActiveMaxChnTime,
746 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
747 CFG_ACTIVE_MAX_CHANNEL_TIME_DEFAULT,
748 CFG_ACTIVE_MAX_CHANNEL_TIME_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700749 CFG_ACTIVE_MAX_CHANNEL_TIME_MAX ),
750
751 REG_VARIABLE( CFG_ACTIVE_MIN_CHANNEL_TIME_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800752 hdd_config_t, nActiveMinChnTime,
753 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
754 CFG_ACTIVE_MIN_CHANNEL_TIME_DEFAULT,
755 CFG_ACTIVE_MIN_CHANNEL_TIME_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700756 CFG_ACTIVE_MIN_CHANNEL_TIME_MAX ),
Madan Mohan Koyyalamudi4ff9cd62012-10-30 17:48:57 -0700757
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800758 REG_VARIABLE( CFG_ACTIVE_MAX_CHANNEL_TIME_BTC_NAME, WLAN_PARAM_Integer,
759 hdd_config_t, nActiveMaxChnTimeBtc,
760 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
761 CFG_ACTIVE_MAX_CHANNEL_TIME_BTC_DEFAULT,
762 CFG_ACTIVE_MAX_CHANNEL_TIME_BTC_MIN,
763 CFG_ACTIVE_MAX_CHANNEL_TIME_BTC_MAX ),
764
765 REG_VARIABLE( CFG_ACTIVE_MIN_CHANNEL_TIME_BTC_NAME, WLAN_PARAM_Integer,
766 hdd_config_t, nActiveMinChnTimeBtc,
767 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
768 CFG_ACTIVE_MIN_CHANNEL_TIME_BTC_DEFAULT,
769 CFG_ACTIVE_MIN_CHANNEL_TIME_BTC_MIN,
770 CFG_ACTIVE_MIN_CHANNEL_TIME_BTC_MAX ),
771
Kiran Kumar Lokere1f39e952013-04-03 18:34:30 -0700772 REG_VARIABLE( CFG_RETRY_LIMIT_ZERO_NAME, WLAN_PARAM_Integer,
773 hdd_config_t, retryLimitZero,
774 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
775 CFG_RETRY_LIMIT_ZERO_DEFAULT,
776 CFG_RETRY_LIMIT_ZERO_MIN,
777 CFG_RETRY_LIMIT_ZERO_MAX ),
778
779 REG_VARIABLE( CFG_RETRY_LIMIT_ONE_NAME, WLAN_PARAM_Integer,
780 hdd_config_t, retryLimitOne,
781 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
782 CFG_RETRY_LIMIT_ONE_DEFAULT,
783 CFG_RETRY_LIMIT_ONE_MIN,
784 CFG_RETRY_LIMIT_ONE_MAX ),
785
786 REG_VARIABLE( CFG_RETRY_LIMIT_TWO_NAME, WLAN_PARAM_Integer,
787 hdd_config_t, retryLimitTwo,
788 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
789 CFG_RETRY_LIMIT_TWO_DEFAULT,
790 CFG_RETRY_LIMIT_TWO_MIN,
791 CFG_RETRY_LIMIT_TWO_MAX ),
792
Kiran Kumar Lokere458d7322013-05-29 14:29:43 -0700793 REG_VARIABLE( CFG_DISABLE_AGG_WITH_BTC_NAME, WLAN_PARAM_Integer,
794 hdd_config_t, disableAggWithBtc,
795 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
796 CFG_DISABLE_AGG_WITH_BTC_DEFAULT,
797 CFG_DISABLE_AGG_WITH_BTC_MIN,
798 CFG_DISABLE_AGG_WITH_BTC_MAX ),
799
Madan Mohan Koyyalamudi4ff9cd62012-10-30 17:48:57 -0700800#ifdef WLAN_AP_STA_CONCURRENCY
801 REG_VARIABLE( CFG_PASSIVE_MAX_CHANNEL_TIME_CONC_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800802 hdd_config_t, nPassiveMaxChnTimeConc,
803 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
804 CFG_PASSIVE_MAX_CHANNEL_TIME_CONC_DEFAULT,
805 CFG_PASSIVE_MAX_CHANNEL_TIME_CONC_MIN,
Madan Mohan Koyyalamudi4ff9cd62012-10-30 17:48:57 -0700806 CFG_PASSIVE_MAX_CHANNEL_TIME_CONC_MAX ),
807
808 REG_VARIABLE( CFG_PASSIVE_MIN_CHANNEL_TIME_CONC_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800809 hdd_config_t, nPassiveMinChnTimeConc,
810 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
811 CFG_PASSIVE_MIN_CHANNEL_TIME_CONC_DEFAULT,
812 CFG_PASSIVE_MIN_CHANNEL_TIME_CONC_MIN,
Madan Mohan Koyyalamudi4ff9cd62012-10-30 17:48:57 -0700813 CFG_PASSIVE_MIN_CHANNEL_TIME_CONC_MAX ),
814
815 REG_VARIABLE( CFG_ACTIVE_MAX_CHANNEL_TIME_CONC_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800816 hdd_config_t, nActiveMaxChnTimeConc,
817 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
818 CFG_ACTIVE_MAX_CHANNEL_TIME_CONC_DEFAULT,
819 CFG_ACTIVE_MAX_CHANNEL_TIME_CONC_MIN,
Madan Mohan Koyyalamudi4ff9cd62012-10-30 17:48:57 -0700820 CFG_ACTIVE_MAX_CHANNEL_TIME_CONC_MAX ),
821
822 REG_VARIABLE( CFG_ACTIVE_MIN_CHANNEL_TIME_CONC_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800823 hdd_config_t, nActiveMinChnTimeConc,
824 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
825 CFG_ACTIVE_MIN_CHANNEL_TIME_CONC_DEFAULT,
826 CFG_ACTIVE_MIN_CHANNEL_TIME_CONC_MIN,
Madan Mohan Koyyalamudi4ff9cd62012-10-30 17:48:57 -0700827 CFG_ACTIVE_MIN_CHANNEL_TIME_CONC_MAX ),
828
829 REG_VARIABLE( CFG_REST_TIME_CONC_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800830 hdd_config_t, nRestTimeConc,
831 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
832 CFG_REST_TIME_CONC_DEFAULT,
833 CFG_REST_TIME_CONC_MIN,
Madan Mohan Koyyalamudi4ff9cd62012-10-30 17:48:57 -0700834 CFG_REST_TIME_CONC_MAX ),
Vinay Malekal05fdc812012-12-17 13:04:30 -0800835
Sudhir Sattayappa Kohallieb97d502013-05-22 23:16:42 -0700836 REG_VARIABLE( CFG_NUM_STA_CHAN_COMBINED_CONC_NAME, WLAN_PARAM_Integer,
837 hdd_config_t, nNumStaChanCombinedConc,
Vinay Malekal05fdc812012-12-17 13:04:30 -0800838 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
Sudhir Sattayappa Kohallieb97d502013-05-22 23:16:42 -0700839 CFG_NUM_STA_CHAN_COMBINED_CONC_DEFAULT,
840 CFG_NUM_STA_CHAN_COMBINED_CONC_MIN,
841 CFG_NUM_STA_CHAN_COMBINED_CONC_MAX ),
842
843 REG_VARIABLE( CFG_NUM_P2P_CHAN_COMBINED_CONC_NAME, WLAN_PARAM_Integer,
844 hdd_config_t, nNumP2PChanCombinedConc,
845 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
846 CFG_NUM_P2P_CHAN_COMBINED_CONC_DEFAULT,
847 CFG_NUM_P2P_CHAN_COMBINED_CONC_MIN,
848 CFG_NUM_P2P_CHAN_COMBINED_CONC_MAX ),
Madan Mohan Koyyalamudi4ff9cd62012-10-30 17:48:57 -0700849#endif
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800850
Jeff Johnson295189b2012-06-20 16:38:30 -0700851 REG_VARIABLE( CFG_MAX_PS_POLL_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800852 hdd_config_t, nMaxPsPoll,
853 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
854 CFG_MAX_PS_POLL_DEFAULT,
855 CFG_MAX_PS_POLL_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700856 CFG_MAX_PS_POLL_MAX ),
857
858 REG_VARIABLE( CFG_MAX_TX_POWER_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800859 hdd_config_t, nTxPowerCap,
860 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
861 CFG_MAX_TX_POWER_DEFAULT,
862 CFG_MAX_TX_POWER_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700863 CFG_MAX_TX_POWER_MAX ),
864
865 REG_VARIABLE( CFG_LOW_GAIN_OVERRIDE_NAME, WLAN_PARAM_Integer,
866 hdd_config_t, fIsLowGainOverride,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800867 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
868 CFG_LOW_GAIN_OVERRIDE_DEFAULT,
869 CFG_LOW_GAIN_OVERRIDE_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700870 CFG_LOW_GAIN_OVERRIDE_MAX ),
871
872 REG_VARIABLE( CFG_RSSI_FILTER_PERIOD_NAME, WLAN_PARAM_Integer,
873 hdd_config_t, nRssiFilterPeriod,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800874 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
875 CFG_RSSI_FILTER_PERIOD_DEFAULT,
876 CFG_RSSI_FILTER_PERIOD_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700877 CFG_RSSI_FILTER_PERIOD_MAX ),
878
879 REG_VARIABLE( CFG_IGNORE_DTIM_NAME, WLAN_PARAM_Integer,
880 hdd_config_t, fIgnoreDtim,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800881 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
882 CFG_IGNORE_DTIM_DEFAULT,
883 CFG_IGNORE_DTIM_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700884 CFG_IGNORE_DTIM_MAX ),
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800885
Yue Mac24062f2013-05-13 17:01:29 -0700886 REG_VARIABLE( CFG_MAX_LI_MODULATED_DTIM_NAME, WLAN_PARAM_Integer,
887 hdd_config_t, fMaxLIModulatedDTIM,
888 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
889 CFG_MAX_LI_MODULATED_DTIM_DEFAULT,
890 CFG_MAX_LI_MODULATED_DTIM_MIN,
891 CFG_MAX_LI_MODULATED_DTIM_MAX ),
892
Jeff Johnson295189b2012-06-20 16:38:30 -0700893 REG_VARIABLE( CFG_RX_ANT_CONFIGURATION_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800894 hdd_config_t, nRxAnt,
895 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
896 CFG_RX_ANT_CONFIGURATION_NAME_DEFAULT,
897 CFG_RX_ANT_CONFIGURATION_NAME_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700898 CFG_RX_ANT_CONFIGURATION_NAME_MAX ),
899
900 REG_VARIABLE( CFG_FW_HEART_BEAT_MONITORING_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800901 hdd_config_t, fEnableFwHeartBeatMonitoring,
902 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
903 CFG_FW_HEART_BEAT_MONITORING_DEFAULT,
904 CFG_FW_HEART_BEAT_MONITORING_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700905 CFG_FW_HEART_BEAT_MONITORING_MAX ),
906
907 REG_VARIABLE( CFG_FW_BEACON_FILTERING_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800908 hdd_config_t, fEnableFwBeaconFiltering,
909 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
910 CFG_FW_BEACON_FILTERING_DEFAULT,
911 CFG_FW_BEACON_FILTERING_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700912 CFG_FW_BEACON_FILTERING_MAX ),
913
Gopichand Nakkala98a98af2012-12-31 14:38:47 -0800914 REG_DYNAMIC_VARIABLE( CFG_FW_RSSI_MONITORING_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800915 hdd_config_t, fEnableFwRssiMonitoring,
916 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
917 CFG_FW_RSSI_MONITORING_DEFAULT,
918 CFG_FW_RSSI_MONITORING_MIN,
Gopichand Nakkala98a98af2012-12-31 14:38:47 -0800919 CFG_FW_RSSI_MONITORING_MAX,
920 cbNotifySetFwRssiMonitoring, 0 ),
Jeff Johnson295189b2012-06-20 16:38:30 -0700921
922 REG_VARIABLE( CFG_DATA_INACTIVITY_TIMEOUT_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800923 hdd_config_t, nDataInactivityTimeout,
924 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
925 CFG_DATA_INACTIVITY_TIMEOUT_DEFAULT,
926 CFG_DATA_INACTIVITY_TIMEOUT_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700927 CFG_DATA_INACTIVITY_TIMEOUT_MAX ),
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800928
Jeff Johnson295189b2012-06-20 16:38:30 -0700929 REG_VARIABLE( CFG_NTH_BEACON_FILTER_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800930 hdd_config_t, nthBeaconFilter,
931 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
932 CFG_NTH_BEACON_FILTER_DEFAULT,
933 CFG_NTH_BEACON_FILTER_MIN,
934 CFG_NTH_BEACON_FILTER_MAX ),
Jeff Johnson295189b2012-06-20 16:38:30 -0700935
936 REG_VARIABLE( CFG_QOS_WMM_MODE_NAME , WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800937 hdd_config_t, WmmMode,
938 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
939 CFG_QOS_WMM_MODE_DEFAULT,
940 CFG_QOS_WMM_MODE_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700941 CFG_QOS_WMM_MODE_MAX ),
942
943 REG_VARIABLE( CFG_QOS_WMM_80211E_ENABLED_NAME , WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800944 hdd_config_t, b80211eIsEnabled,
945 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
946 CFG_QOS_WMM_80211E_ENABLED_DEFAULT,
947 CFG_QOS_WMM_80211E_ENABLED_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700948 CFG_QOS_WMM_80211E_ENABLED_MAX ),
949
950 REG_VARIABLE( CFG_QOS_WMM_UAPSD_MASK_NAME , WLAN_PARAM_HexInteger,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800951 hdd_config_t, UapsdMask,
952 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
953 CFG_QOS_WMM_UAPSD_MASK_DEFAULT,
954 CFG_QOS_WMM_UAPSD_MASK_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700955 CFG_QOS_WMM_UAPSD_MASK_MAX ),
956
Jeff Johnson295189b2012-06-20 16:38:30 -0700957 REG_VARIABLE( CFG_QOS_WMM_INFRA_UAPSD_VO_SRV_INTV_NAME , WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800958 hdd_config_t, InfraUapsdVoSrvIntv,
959 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
960 CFG_QOS_WMM_INFRA_UAPSD_VO_SRV_INTV_DEFAULT,
961 CFG_QOS_WMM_INFRA_UAPSD_VO_SRV_INTV_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700962 CFG_QOS_WMM_INFRA_UAPSD_VO_SRV_INTV_MAX ),
963
964 REG_VARIABLE( CFG_QOS_WMM_INFRA_UAPSD_VO_SUS_INTV_NAME , WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800965 hdd_config_t, InfraUapsdVoSuspIntv,
966 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
967 CFG_QOS_WMM_INFRA_UAPSD_VO_SUS_INTV_DEFAULT,
968 CFG_QOS_WMM_INFRA_UAPSD_VO_SUS_INTV_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700969 CFG_QOS_WMM_INFRA_UAPSD_VO_SUS_INTV_MAX ),
970
971 REG_VARIABLE( CFG_QOS_WMM_INFRA_UAPSD_VI_SRV_INTV_NAME , WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800972 hdd_config_t, InfraUapsdViSrvIntv,
973 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
974 CFG_QOS_WMM_INFRA_UAPSD_VI_SRV_INTV_DEFAULT,
975 CFG_QOS_WMM_INFRA_UAPSD_VI_SRV_INTV_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700976 CFG_QOS_WMM_INFRA_UAPSD_VI_SRV_INTV_MAX ),
977
978 REG_VARIABLE( CFG_QOS_WMM_INFRA_UAPSD_VI_SUS_INTV_NAME , WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800979 hdd_config_t, InfraUapsdViSuspIntv,
980 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
981 CFG_QOS_WMM_INFRA_UAPSD_VI_SUS_INTV_DEFAULT,
982 CFG_QOS_WMM_INFRA_UAPSD_VI_SUS_INTV_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700983 CFG_QOS_WMM_INFRA_UAPSD_VI_SUS_INTV_MAX ),
984
985 REG_VARIABLE( CFG_QOS_WMM_INFRA_UAPSD_BE_SRV_INTV_NAME , WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800986 hdd_config_t, InfraUapsdBeSrvIntv,
987 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
988 CFG_QOS_WMM_INFRA_UAPSD_BE_SRV_INTV_DEFAULT,
989 CFG_QOS_WMM_INFRA_UAPSD_BE_SRV_INTV_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700990 CFG_QOS_WMM_INFRA_UAPSD_BE_SRV_INTV_MAX ),
991
992 REG_VARIABLE( CFG_QOS_WMM_INFRA_UAPSD_BE_SUS_INTV_NAME , WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800993 hdd_config_t, InfraUapsdBeSuspIntv,
994 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
995 CFG_QOS_WMM_INFRA_UAPSD_BE_SUS_INTV_DEFAULT,
996 CFG_QOS_WMM_INFRA_UAPSD_BE_SUS_INTV_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700997 CFG_QOS_WMM_INFRA_UAPSD_BE_SUS_INTV_MAX ),
998
999 REG_VARIABLE( CFG_QOS_WMM_INFRA_UAPSD_BK_SRV_INTV_NAME , WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001000 hdd_config_t, InfraUapsdBkSrvIntv,
1001 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1002 CFG_QOS_WMM_INFRA_UAPSD_BK_SRV_INTV_DEFAULT,
1003 CFG_QOS_WMM_INFRA_UAPSD_BK_SRV_INTV_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001004 CFG_QOS_WMM_INFRA_UAPSD_BK_SRV_INTV_MAX ),
1005
1006 REG_VARIABLE( CFG_QOS_WMM_INFRA_UAPSD_BK_SUS_INTV_NAME , WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001007 hdd_config_t, InfraUapsdBkSuspIntv,
1008 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1009 CFG_QOS_WMM_INFRA_UAPSD_BK_SUS_INTV_DEFAULT,
1010 CFG_QOS_WMM_INFRA_UAPSD_BK_SUS_INTV_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001011 CFG_QOS_WMM_INFRA_UAPSD_BK_SUS_INTV_MAX ),
1012
1013#ifdef FEATURE_WLAN_CCX
1014 REG_VARIABLE( CFG_QOS_WMM_INFRA_INACTIVITY_INTERVAL_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001015 hdd_config_t, InfraInactivityInterval,
1016 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1017 CFG_QOS_WMM_INFRA_INACTIVITY_INTERVAL_DEFAULT,
1018 CFG_QOS_WMM_INFRA_INACTIVITY_INTERVAL_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001019 CFG_QOS_WMM_INFRA_INACTIVITY_INTERVAL_MAX),
Gopichand Nakkala98a98af2012-12-31 14:38:47 -08001020 REG_DYNAMIC_VARIABLE( CFG_CCX_FEATURE_ENABLED_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001021 hdd_config_t, isCcxIniFeatureEnabled,
1022 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1023 CFG_CCX_FEATURE_ENABLED_DEFAULT,
1024 CFG_CCX_FEATURE_ENABLED_MIN,
Gopichand Nakkala98a98af2012-12-31 14:38:47 -08001025 CFG_CCX_FEATURE_ENABLED_MAX,
1026 cbNotifySetCcxFeatureEnabled, 0 ),
Jeff Johnson295189b2012-06-20 16:38:30 -07001027#endif // FEATURE_WLAN_CCX
1028
Jeff Johnson04dd8a82012-06-29 20:41:40 -07001029#ifdef FEATURE_WLAN_LFR
1030 // flag to turn ON/OFF Legacy Fast Roaming
Gopichand Nakkala98a98af2012-12-31 14:38:47 -08001031 REG_DYNAMIC_VARIABLE( CFG_LFR_FEATURE_ENABLED_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001032 hdd_config_t, isFastRoamIniFeatureEnabled,
1033 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1034 CFG_LFR_FEATURE_ENABLED_DEFAULT,
1035 CFG_LFR_FEATURE_ENABLED_MIN,
Srinivas Girigowda100eb322013-03-15 16:48:20 -07001036 CFG_LFR_FEATURE_ENABLED_MAX,
1037 NotifyIsFastRoamIniFeatureEnabled, 0 ),
Sameer Thalappil4ae66ec2013-11-05 14:17:35 -08001038
1039 /* flag to turn ON/OFF Motion assistance for Legacy Fast Roaming */
1040 REG_DYNAMIC_VARIABLE( CFG_LFR_MAWC_FEATURE_ENABLED_NAME, WLAN_PARAM_Integer,
1041 hdd_config_t, MAWCEnabled,
1042 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1043 CFG_LFR_MAWC_FEATURE_ENABLED_DEFAULT,
1044 CFG_LFR_MAWC_FEATURE_ENABLED_MIN,
1045 CFG_LFR_MAWC_FEATURE_ENABLED_MAX,
1046 NotifyIsMAWCIniFeatureEnabled, 0 ),
1047
Jeff Johnson04dd8a82012-06-29 20:41:40 -07001048#endif // FEATURE_WLAN_LFR
1049
1050#if defined (WLAN_FEATURE_VOWIFI_11R) || defined (FEATURE_WLAN_CCX) || defined(FEATURE_WLAN_LFR)
Jeff Johnson295189b2012-06-20 16:38:30 -07001051 // flag to turn ON/OFF 11r and CCX FastTransition
Gopichand Nakkala98a98af2012-12-31 14:38:47 -08001052 REG_DYNAMIC_VARIABLE( CFG_FAST_TRANSITION_ENABLED_NAME, WLAN_PARAM_Integer,
Jeff Johnson295189b2012-06-20 16:38:30 -07001053 hdd_config_t, isFastTransitionEnabled,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001054 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1055 CFG_FAST_TRANSITION_ENABLED_NAME_DEFAULT,
1056 CFG_FAST_TRANSITION_ENABLED_NAME_MIN,
Gopichand Nakkala98a98af2012-12-31 14:38:47 -08001057 CFG_FAST_TRANSITION_ENABLED_NAME_MAX,
1058 cbNotifySetFastTransitionEnabled, 0 ),
Jeff Johnson43971f52012-07-17 12:26:56 -07001059
Srinivas Girigowdade697412013-02-14 16:31:48 -08001060 /* Variable to specify the delta/difference between the RSSI of current AP
Jeff Johnson43971f52012-07-17 12:26:56 -07001061 * and roamable AP while roaming */
Srinivas Girigowdade697412013-02-14 16:31:48 -08001062 REG_DYNAMIC_VARIABLE( CFG_ROAM_RSSI_DIFF_NAME, WLAN_PARAM_Integer,
1063 hdd_config_t, RoamRssiDiff,
1064 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1065 CFG_ROAM_RSSI_DIFF_DEFAULT,
1066 CFG_ROAM_RSSI_DIFF_MIN,
1067 CFG_ROAM_RSSI_DIFF_MAX,
1068 cbNotifySetRoamRssiDiff, 0),
Madan Mohan Koyyalamudi62b55b02012-12-03 16:45:39 -08001069
1070 REG_DYNAMIC_VARIABLE( CFG_IMMEDIATE_ROAM_RSSI_DIFF_NAME, WLAN_PARAM_Integer,
Srinivas Girigowdade697412013-02-14 16:31:48 -08001071 hdd_config_t, nImmediateRoamRssiDiff,
1072 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1073 CFG_IMMEDIATE_ROAM_RSSI_DIFF_DEFAULT,
1074 CFG_IMMEDIATE_ROAM_RSSI_DIFF_MIN,
Madan Mohan Koyyalamudi62b55b02012-12-03 16:45:39 -08001075 CFG_IMMEDIATE_ROAM_RSSI_DIFF_MAX,
1076 cbNotifySetImmediateRoamRssiDiff, 0),
Srinivas Girigowda100eb322013-03-15 16:48:20 -07001077
Srinivas Girigowdaad34ca92013-10-22 10:54:29 -07001078 REG_DYNAMIC_VARIABLE( CFG_ENABLE_WES_MODE_NAME, WLAN_PARAM_Integer,
1079 hdd_config_t, isWESModeEnabled,
1080 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1081 CFG_ENABLE_WES_MODE_NAME_DEFAULT,
1082 CFG_ENABLE_WES_MODE_NAME_MIN,
1083 CFG_ENABLE_WES_MODE_NAME_MAX,
1084 cbNotifySetWESMode, 0),
Jeff Johnson295189b2012-06-20 16:38:30 -07001085#endif
Srinivas Girigowdabbd16eb2013-03-21 12:34:46 -07001086#ifdef FEATURE_WLAN_OKC
1087 REG_DYNAMIC_VARIABLE( CFG_OKC_FEATURE_ENABLED_NAME, WLAN_PARAM_Integer,
1088 hdd_config_t, isOkcIniFeatureEnabled,
1089 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1090 CFG_OKC_FEATURE_ENABLED_DEFAULT,
1091 CFG_OKC_FEATURE_ENABLED_MIN,
1092 CFG_OKC_FEATURE_ENABLED_MAX,
1093 cbNotifySetOkcFeatureEnabled, 0 ),
1094#endif
Varun Reddy Yeturud0a3f252013-04-15 21:58:13 -07001095#ifdef WLAN_FEATURE_ROAM_SCAN_OFFLOAD
1096 REG_DYNAMIC_VARIABLE( CFG_ROAM_SCAN_OFFLOAD_ENABLED, WLAN_PARAM_Integer,
1097 hdd_config_t, isRoamOffloadScanEnabled,
1098 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1099 CFG_ROAM_SCAN_OFFLOAD_ENABLED_DEFAULT,
1100 CFG_ROAM_SCAN_OFFLOAD_ENABLED_MIN,
1101 CFG_ROAM_SCAN_OFFLOAD_ENABLED_MAX,
1102 cbNotifyUpdateRoamScanOffloadEnabled, 0),
1103#endif
Jeff Johnson295189b2012-06-20 16:38:30 -07001104 REG_VARIABLE( CFG_QOS_WMM_PKT_CLASSIFY_BASIS_NAME , WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001105 hdd_config_t, PktClassificationBasis,
1106 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1107 CFG_QOS_WMM_PKT_CLASSIFY_BASIS_DEFAULT,
1108 CFG_QOS_WMM_PKT_CLASSIFY_BASIS_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001109 CFG_QOS_WMM_PKT_CLASSIFY_BASIS_MAX ),
1110
1111 REG_VARIABLE( CFG_QOS_WMM_INFRA_DIR_AC_VO_NAME , WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001112 hdd_config_t, InfraDirAcVo,
1113 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1114 CFG_QOS_WMM_INFRA_DIR_AC_VO_DEFAULT,
1115 CFG_QOS_WMM_INFRA_DIR_AC_VO_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001116 CFG_QOS_WMM_INFRA_DIR_AC_VO_MAX ),
1117
1118 REG_VARIABLE( CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_VO_NAME , WLAN_PARAM_HexInteger,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001119 hdd_config_t, InfraNomMsduSizeAcVo,
1120 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1121 CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_VO_DEFAULT,
1122 CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_VO_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001123 CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_VO_MAX ),
1124
1125 REG_VARIABLE( CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_VO_NAME , WLAN_PARAM_HexInteger,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001126 hdd_config_t, InfraMeanDataRateAcVo,
1127 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1128 CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_VO_DEFAULT,
1129 CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_VO_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001130 CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_VO_MAX ),
1131
1132 REG_VARIABLE( CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_VO_NAME , WLAN_PARAM_HexInteger,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001133 hdd_config_t, InfraMinPhyRateAcVo,
1134 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1135 CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_VO_DEFAULT,
1136 CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_VO_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001137 CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_VO_MAX ),
1138
1139 REG_VARIABLE( CFG_QOS_WMM_INFRA_SBA_AC_VO_NAME , WLAN_PARAM_HexInteger,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001140 hdd_config_t, InfraSbaAcVo,
1141 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1142 CFG_QOS_WMM_INFRA_SBA_AC_VO_DEFAULT,
1143 CFG_QOS_WMM_INFRA_SBA_AC_VO_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001144 CFG_QOS_WMM_INFRA_SBA_AC_VO_MAX ),
1145
1146 REG_VARIABLE( CFG_QOS_WMM_INFRA_DIR_AC_VI_NAME , WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001147 hdd_config_t, InfraDirAcVi,
1148 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1149 CFG_QOS_WMM_INFRA_DIR_AC_VI_DEFAULT,
1150 CFG_QOS_WMM_INFRA_DIR_AC_VI_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001151 CFG_QOS_WMM_INFRA_DIR_AC_VI_MAX ),
1152
1153 REG_VARIABLE( CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_VI_NAME , WLAN_PARAM_HexInteger,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001154 hdd_config_t, InfraNomMsduSizeAcVi,
1155 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1156 CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_VI_DEFAULT,
1157 CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_VI_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001158 CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_VI_MAX ),
1159
1160 REG_VARIABLE( CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_VI_NAME , WLAN_PARAM_HexInteger,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001161 hdd_config_t, InfraMeanDataRateAcVi,
1162 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1163 CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_VI_DEFAULT,
1164 CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_VI_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001165 CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_VI_MAX ),
1166
1167 REG_VARIABLE( CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_VI_NAME , WLAN_PARAM_HexInteger,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001168 hdd_config_t, InfraMinPhyRateAcVi,
1169 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1170 CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_VI_DEFAULT,
1171 CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_VI_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001172 CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_VI_MAX ),
1173
1174 REG_VARIABLE( CFG_QOS_WMM_INFRA_SBA_AC_VI_NAME , WLAN_PARAM_HexInteger,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001175 hdd_config_t, InfraSbaAcVi,
1176 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1177 CFG_QOS_WMM_INFRA_SBA_AC_VI_DEFAULT,
1178 CFG_QOS_WMM_INFRA_SBA_AC_VI_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001179 CFG_QOS_WMM_INFRA_SBA_AC_VI_MAX ),
1180
1181 REG_VARIABLE( CFG_QOS_WMM_INFRA_DIR_AC_BE_NAME , WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001182 hdd_config_t, InfraDirAcBe,
1183 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1184 CFG_QOS_WMM_INFRA_DIR_AC_BE_DEFAULT,
1185 CFG_QOS_WMM_INFRA_DIR_AC_BE_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001186 CFG_QOS_WMM_INFRA_DIR_AC_BE_MAX ),
1187
1188 REG_VARIABLE( CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_BE_NAME , WLAN_PARAM_HexInteger,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001189 hdd_config_t, InfraNomMsduSizeAcBe,
1190 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1191 CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_BE_DEFAULT,
1192 CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_BE_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001193 CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_BE_MAX ),
1194
1195 REG_VARIABLE( CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_BE_NAME , WLAN_PARAM_HexInteger,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001196 hdd_config_t, InfraMeanDataRateAcBe,
1197 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1198 CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_BE_DEFAULT,
1199 CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_BE_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001200 CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_BE_MAX ),
1201
1202 REG_VARIABLE( CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_BE_NAME , WLAN_PARAM_HexInteger,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001203 hdd_config_t, InfraMinPhyRateAcBe,
1204 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1205 CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_BE_DEFAULT,
1206 CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_BE_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001207 CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_BE_MAX ),
1208
1209 REG_VARIABLE( CFG_QOS_WMM_INFRA_SBA_AC_BE_NAME , WLAN_PARAM_HexInteger,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001210 hdd_config_t, InfraSbaAcBe,
1211 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1212 CFG_QOS_WMM_INFRA_SBA_AC_BE_DEFAULT,
1213 CFG_QOS_WMM_INFRA_SBA_AC_BE_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001214 CFG_QOS_WMM_INFRA_SBA_AC_BE_MAX ),
1215
1216 REG_VARIABLE( CFG_QOS_WMM_INFRA_DIR_AC_BK_NAME , WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001217 hdd_config_t, InfraDirAcBk,
1218 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1219 CFG_QOS_WMM_INFRA_DIR_AC_BK_DEFAULT,
1220 CFG_QOS_WMM_INFRA_DIR_AC_BK_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001221 CFG_QOS_WMM_INFRA_DIR_AC_BK_MAX ),
1222
1223 REG_VARIABLE( CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_BK_NAME , WLAN_PARAM_HexInteger,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001224 hdd_config_t, InfraNomMsduSizeAcBk,
1225 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1226 CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_BK_DEFAULT,
1227 CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_BK_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001228 CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_BK_MAX ),
1229
1230 REG_VARIABLE( CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_BK_NAME , WLAN_PARAM_HexInteger,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001231 hdd_config_t, InfraMeanDataRateAcBk,
1232 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1233 CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_BK_DEFAULT,
1234 CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_BK_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001235 CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_BK_MAX ),
1236
1237 REG_VARIABLE( CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_BK_NAME , WLAN_PARAM_HexInteger,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001238 hdd_config_t, InfraMinPhyRateAcBk,
1239 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1240 CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_BK_DEFAULT,
1241 CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_BK_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001242 CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_BK_MAX ),
1243
1244 REG_VARIABLE( CFG_QOS_WMM_INFRA_SBA_AC_BK_NAME , WLAN_PARAM_HexInteger,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001245 hdd_config_t, InfraSbaAcBk,
1246 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1247 CFG_QOS_WMM_INFRA_SBA_AC_BK_DEFAULT,
1248 CFG_QOS_WMM_INFRA_SBA_AC_BK_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001249 CFG_QOS_WMM_INFRA_SBA_AC_BK_MAX ),
1250
1251 REG_VARIABLE( CFG_TL_WFQ_BK_WEIGHT_NAME , WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001252 hdd_config_t, WfqBkWeight,
1253 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1254 CFG_TL_WFQ_BK_WEIGHT_DEFAULT,
1255 CFG_TL_WFQ_BK_WEIGHT_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001256 CFG_TL_WFQ_BK_WEIGHT_MAX ),
1257
1258 REG_VARIABLE( CFG_TL_WFQ_BE_WEIGHT_NAME , WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001259 hdd_config_t, WfqBeWeight,
1260 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1261 CFG_TL_WFQ_BE_WEIGHT_DEFAULT,
1262 CFG_TL_WFQ_BE_WEIGHT_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001263 CFG_TL_WFQ_BE_WEIGHT_MAX ),
1264
1265 REG_VARIABLE( CFG_TL_WFQ_VI_WEIGHT_NAME , WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001266 hdd_config_t, WfqViWeight,
1267 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1268 CFG_TL_WFQ_VI_WEIGHT_DEFAULT,
1269 CFG_TL_WFQ_VI_WEIGHT_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001270 CFG_TL_WFQ_VI_WEIGHT_MAX ),
1271
1272 REG_VARIABLE( CFG_TL_WFQ_VO_WEIGHT_NAME , WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001273 hdd_config_t, WfqVoWeight,
1274 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1275 CFG_TL_WFQ_VO_WEIGHT_DEFAULT,
1276 CFG_TL_WFQ_VO_WEIGHT_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001277 CFG_TL_WFQ_VO_WEIGHT_MAX ),
1278
1279 REG_VARIABLE( CFG_TL_DELAYED_TRGR_FRM_INT_NAME , WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001280 hdd_config_t, DelayedTriggerFrmInt,
1281 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1282 CFG_TL_DELAYED_TRGR_FRM_INT_DEFAULT,
1283 CFG_TL_DELAYED_TRGR_FRM_INT_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001284 CFG_TL_DELAYED_TRGR_FRM_INT_MAX ),
1285
Dhanashri Atred8c20a32014-01-03 17:20:55 -08001286 REG_VARIABLE( CFG_REORDER_TIME_BK_NAME , WLAN_PARAM_Integer,
1287 hdd_config_t, BkReorderAgingTime,
1288 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1289 CFG_REORDER_TIME_BK_DEFAULT,
1290 CFG_REORDER_TIME_BK_MIN,
1291 CFG_REORDER_TIME_BK_MAX ),
1292
1293 REG_VARIABLE( CFG_REORDER_TIME_BE_NAME , WLAN_PARAM_Integer,
1294 hdd_config_t, BeReorderAgingTime,
1295 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1296 CFG_REORDER_TIME_BE_DEFAULT,
1297 CFG_REORDER_TIME_BE_MIN,
1298 CFG_REORDER_TIME_BE_MAX ),
1299
1300 REG_VARIABLE( CFG_REORDER_TIME_VI_NAME , WLAN_PARAM_Integer,
1301 hdd_config_t, ViReorderAgingTime,
1302 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1303 CFG_REORDER_TIME_VI_DEFAULT,
1304 CFG_REORDER_TIME_VI_MIN,
1305 CFG_REORDER_TIME_VI_MAX ),
1306
1307 REG_VARIABLE( CFG_REORDER_TIME_VO_NAME , WLAN_PARAM_Integer,
1308 hdd_config_t, VoReorderAgingTime,
1309 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1310 CFG_REORDER_TIME_VO_DEFAULT,
1311 CFG_REORDER_TIME_VO_MIN,
1312 CFG_REORDER_TIME_VO_MAX ),
1313
Jeff Johnson295189b2012-06-20 16:38:30 -07001314 REG_VARIABLE_STRING( CFG_WOWL_PATTERN_NAME, WLAN_PARAM_String,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001315 hdd_config_t, wowlPattern,
Jeff Johnson295189b2012-06-20 16:38:30 -07001316 VAR_FLAGS_OPTIONAL,
1317 (void *)CFG_WOWL_PATTERN_DEFAULT ),
1318
1319 REG_VARIABLE( CFG_QOS_IMPLICIT_SETUP_ENABLED_NAME , WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001320 hdd_config_t, bImplicitQosEnabled,
1321 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1322 CFG_QOS_IMPLICIT_SETUP_ENABLED_DEFAULT,
1323 CFG_QOS_IMPLICIT_SETUP_ENABLED_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001324 CFG_QOS_IMPLICIT_SETUP_ENABLED_MAX ),
1325
Jeff Johnson295189b2012-06-20 16:38:30 -07001326 REG_VARIABLE( CFG_BTC_EXECUTION_MODE_NAME , WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001327 hdd_config_t, btcExecutionMode,
1328 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1329 CFG_BTC_EXECUTION_MODE_DEFAULT,
1330 CFG_BTC_EXECUTION_MODE_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001331 CFG_BTC_EXECUTION_MODE_MAX ),
1332
1333 REG_VARIABLE( CFG_BTC_DHCP_PROTECTION_NAME , WLAN_PARAM_Integer,
1334 hdd_config_t, btcConsBtSlotsToBlockDuringDhcp,
1335 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1336 CFG_BTC_DHCP_PROTECTION_DEFAULT,
1337 CFG_BTC_DHCP_PROTECTION_MIN,
1338 CFG_BTC_DHCP_PROTECTION_MAX ),
1339
1340 REG_VARIABLE( CFG_BTC_A2DP_DHCP_PROTECTION_NAME , WLAN_PARAM_Integer,
1341 hdd_config_t, btcA2DPBtSubIntervalsDuringDhcp,
1342 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1343 CFG_BTC_A2DP_DHCP_PROTECTION_DEFAULT,
1344 CFG_BTC_A2DP_DHCP_PROTECTION_MIN,
1345 CFG_BTC_A2DP_DHCP_PROTECTION_MAX ),
1346
Jeff Johnson32d95a32012-09-10 13:15:23 -07001347 REG_VARIABLE( CFG_BTC_STATIC_LEN_INQ_BT_NAME , WLAN_PARAM_Integer,
1348 hdd_config_t, btcStaticLenInqBt,
1349 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1350 CFG_BTC_STATIC_LEN_INQ_BT_DEFAULT,
1351 CFG_BTC_STATIC_LEN_INQ_BT_MIN,
1352 CFG_BTC_STATIC_LEN_INQ_BT_MAX ),
1353
1354 REG_VARIABLE( CFG_BTC_STATIC_LEN_PAGE_BT_NAME , WLAN_PARAM_Integer,
1355 hdd_config_t, btcStaticLenPageBt,
1356 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1357 CFG_BTC_STATIC_LEN_PAGE_BT_DEFAULT,
1358 CFG_BTC_STATIC_LEN_PAGE_BT_MIN,
1359 CFG_BTC_STATIC_LEN_PAGE_BT_MAX ),
1360
1361 REG_VARIABLE( CFG_BTC_STATIC_LEN_CONN_BT_NAME , WLAN_PARAM_Integer,
1362 hdd_config_t, btcStaticLenConnBt,
1363 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1364 CFG_BTC_STATIC_LEN_CONN_BT_DEFAULT,
1365 CFG_BTC_STATIC_LEN_CONN_BT_MIN,
1366 CFG_BTC_STATIC_LEN_CONN_BT_MAX ),
1367
1368 REG_VARIABLE( CFG_BTC_STATIC_LEN_LE_BT_NAME , WLAN_PARAM_Integer,
1369 hdd_config_t, btcStaticLenLeBt,
1370 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1371 CFG_BTC_STATIC_LEN_LE_BT_DEFAULT,
1372 CFG_BTC_STATIC_LEN_LE_BT_MIN,
1373 CFG_BTC_STATIC_LEN_LE_BT_MAX ),
1374
1375 REG_VARIABLE( CFG_BTC_STATIC_LEN_INQ_WLAN_NAME , WLAN_PARAM_Integer,
1376 hdd_config_t, btcStaticLenInqWlan,
1377 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1378 CFG_BTC_STATIC_LEN_INQ_WLAN_DEFAULT,
1379 CFG_BTC_STATIC_LEN_INQ_WLAN_MIN,
1380 CFG_BTC_STATIC_LEN_INQ_WLAN_MAX ),
1381
1382 REG_VARIABLE( CFG_BTC_STATIC_LEN_PAGE_WLAN_NAME , WLAN_PARAM_Integer,
1383 hdd_config_t, btcStaticLenPageWlan,
1384 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1385 CFG_BTC_STATIC_LEN_PAGE_WLAN_DEFAULT,
1386 CFG_BTC_STATIC_LEN_PAGE_WLAN_MIN,
1387 CFG_BTC_STATIC_LEN_PAGE_WLAN_MAX ),
1388
1389 REG_VARIABLE( CFG_BTC_STATIC_LEN_CONN_WLAN_NAME , WLAN_PARAM_Integer,
1390 hdd_config_t, btcStaticLenConnWlan,
1391 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1392 CFG_BTC_STATIC_LEN_CONN_WLAN_DEFAULT,
1393 CFG_BTC_STATIC_LEN_CONN_WLAN_MIN,
1394 CFG_BTC_STATIC_LEN_CONN_WLAN_MAX ),
1395
1396 REG_VARIABLE( CFG_BTC_STATIC_LEN_LE_WLAN_NAME , WLAN_PARAM_Integer,
1397 hdd_config_t, btcStaticLenLeWlan,
1398 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1399 CFG_BTC_STATIC_LEN_LE_WLAN_DEFAULT,
1400 CFG_BTC_STATIC_LEN_LE_WLAN_MIN,
1401 CFG_BTC_STATIC_LEN_LE_WLAN_MAX ),
1402
1403 REG_VARIABLE( CFG_BTC_DYN_MAX_LEN_BT_NAME , WLAN_PARAM_Integer,
1404 hdd_config_t, btcDynMaxLenBt,
1405 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1406 CFG_BTC_DYN_MAX_LEN_BT_DEFAULT,
1407 CFG_BTC_DYN_MAX_LEN_BT_MIN,
1408 CFG_BTC_DYN_MAX_LEN_BT_MAX ),
1409
1410 REG_VARIABLE( CFG_BTC_DYN_MAX_LEN_WLAN_NAME , WLAN_PARAM_Integer,
1411 hdd_config_t, btcDynMaxLenWlan,
1412 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1413 CFG_BTC_DYN_MAX_LEN_WLAN_DEFAULT,
1414 CFG_BTC_DYN_MAX_LEN_WLAN_MIN,
1415 CFG_BTC_DYN_MAX_LEN_WLAN_MAX ),
1416
1417 REG_VARIABLE( CFG_BTC_MAX_SCO_BLOCK_PERC_NAME , WLAN_PARAM_Integer,
1418 hdd_config_t, btcMaxScoBlockPerc,
1419 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1420 CFG_BTC_MAX_SCO_BLOCK_PERC_DEFAULT,
1421 CFG_BTC_MAX_SCO_BLOCK_PERC_MIN,
1422 CFG_BTC_MAX_SCO_BLOCK_PERC_MAX ),
1423
1424 REG_VARIABLE( CFG_BTC_DHCP_PROT_ON_A2DP_NAME , WLAN_PARAM_Integer,
1425 hdd_config_t, btcDhcpProtOnA2dp,
1426 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1427 CFG_BTC_DHCP_PROT_ON_A2DP_DEFAULT,
1428 CFG_BTC_DHCP_PROT_ON_A2DP_MIN,
1429 CFG_BTC_DHCP_PROT_ON_A2DP_MAX ),
1430
1431 REG_VARIABLE( CFG_BTC_DHCP_PROT_ON_SCO_NAME , WLAN_PARAM_Integer,
1432 hdd_config_t, btcDhcpProtOnSco,
1433 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1434 CFG_BTC_DHCP_PROT_ON_SCO_DEFAULT,
1435 CFG_BTC_DHCP_PROT_ON_SCO_MIN,
1436 CFG_BTC_DHCP_PROT_ON_SCO_MAX ),
1437
Wilson Tsaof8b37942013-09-06 10:49:00 -07001438 REG_VARIABLE( CFG_MWS_COEX_V1_WAN_FREQ_NAME , WLAN_PARAM_Integer,
1439 hdd_config_t, mwsCoexVictimWANFreq[0],
1440 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1441 CFG_MWS_COEX_VX_WAN_FREQ_DEFAULT,
1442 CFG_MWS_COEX_VX_WAN_FREQ_MIN,
1443 CFG_MWS_COEX_VX_WAN_FREQ_MAX ),
1444
1445 REG_VARIABLE( CFG_MWS_COEX_V1_WLAN_FREQ_NAME , WLAN_PARAM_Integer,
1446 hdd_config_t, mwsCoexVictimWLANFreq[0],
1447 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1448 CFG_MWS_COEX_VX_WLAN_FREQ_DEFAULT,
1449 CFG_MWS_COEX_VX_WLAN_FREQ_MIN,
1450 CFG_MWS_COEX_VX_WLAN_FREQ_MAX ),
1451
1452 REG_VARIABLE( CFG_MWS_COEX_V1_CONFIG_NAME , WLAN_PARAM_Integer,
1453 hdd_config_t, mwsCoexVictimConfig[0],
1454 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1455 CFG_MWS_COEX_VX_CONFIG_DEFAULT,
1456 CFG_MWS_COEX_VX_CONFIG_MIN,
1457 CFG_MWS_COEX_VX_CONFIG_MAX ),
1458
1459 REG_VARIABLE( CFG_MWS_COEX_V1_CONFIG2_NAME , WLAN_PARAM_Integer,
1460 hdd_config_t, mwsCoexVictimConfig2[0],
1461 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1462 CFG_MWS_COEX_VX_CONFIG_DEFAULT,
1463 CFG_MWS_COEX_VX_CONFIG_MIN,
1464 CFG_MWS_COEX_VX_CONFIG_MAX ),
1465
1466 REG_VARIABLE( CFG_MWS_COEX_V2_WAN_FREQ_NAME , WLAN_PARAM_Integer,
1467 hdd_config_t, mwsCoexVictimWANFreq[1],
1468 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1469 CFG_MWS_COEX_VX_WAN_FREQ_DEFAULT,
1470 CFG_MWS_COEX_VX_WAN_FREQ_MIN,
1471 CFG_MWS_COEX_VX_WAN_FREQ_MAX ),
1472
1473 REG_VARIABLE( CFG_MWS_COEX_V2_WLAN_FREQ_NAME , WLAN_PARAM_Integer,
1474 hdd_config_t, mwsCoexVictimWLANFreq[1],
1475 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1476 CFG_MWS_COEX_VX_WLAN_FREQ_DEFAULT,
1477 CFG_MWS_COEX_VX_WLAN_FREQ_MIN,
1478 CFG_MWS_COEX_VX_WLAN_FREQ_MAX ),
1479
1480 REG_VARIABLE( CFG_MWS_COEX_V2_CONFIG_NAME , WLAN_PARAM_Integer,
1481 hdd_config_t, mwsCoexVictimConfig[1],
1482 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1483 CFG_MWS_COEX_VX_CONFIG_DEFAULT,
1484 CFG_MWS_COEX_VX_CONFIG_MIN,
1485 CFG_MWS_COEX_VX_CONFIG_MAX ),
1486
1487 REG_VARIABLE( CFG_MWS_COEX_V2_CONFIG2_NAME , WLAN_PARAM_Integer,
1488 hdd_config_t, mwsCoexVictimConfig2[1],
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_V3_WAN_FREQ_NAME , WLAN_PARAM_Integer,
1495 hdd_config_t, mwsCoexVictimWANFreq[2],
1496 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1497 CFG_MWS_COEX_VX_WAN_FREQ_DEFAULT,
1498 CFG_MWS_COEX_VX_WAN_FREQ_MIN,
1499 CFG_MWS_COEX_VX_WAN_FREQ_MAX ),
1500
1501 REG_VARIABLE( CFG_MWS_COEX_V3_WLAN_FREQ_NAME , WLAN_PARAM_Integer,
1502 hdd_config_t, mwsCoexVictimWLANFreq[2],
1503 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1504 CFG_MWS_COEX_VX_WLAN_FREQ_DEFAULT,
1505 CFG_MWS_COEX_VX_WLAN_FREQ_MIN,
1506 CFG_MWS_COEX_VX_WLAN_FREQ_MAX ),
1507
1508 REG_VARIABLE( CFG_MWS_COEX_V3_CONFIG_NAME , WLAN_PARAM_Integer,
1509 hdd_config_t, mwsCoexVictimConfig[2],
1510 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1511 CFG_MWS_COEX_VX_CONFIG_DEFAULT,
1512 CFG_MWS_COEX_VX_CONFIG_MIN,
1513 CFG_MWS_COEX_VX_CONFIG_MAX ),
1514
1515 REG_VARIABLE( CFG_MWS_COEX_V3_CONFIG2_NAME , WLAN_PARAM_Integer,
1516 hdd_config_t, mwsCoexVictimConfig2[2],
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_V4_WAN_FREQ_NAME , WLAN_PARAM_Integer,
1523 hdd_config_t, mwsCoexVictimWANFreq[3],
1524 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1525 CFG_MWS_COEX_VX_WAN_FREQ_DEFAULT,
1526 CFG_MWS_COEX_VX_WAN_FREQ_MIN,
1527 CFG_MWS_COEX_VX_WAN_FREQ_MAX ),
1528
1529 REG_VARIABLE( CFG_MWS_COEX_V4_WLAN_FREQ_NAME , WLAN_PARAM_Integer,
1530 hdd_config_t, mwsCoexVictimWLANFreq[3],
1531 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1532 CFG_MWS_COEX_VX_WLAN_FREQ_DEFAULT,
1533 CFG_MWS_COEX_VX_WLAN_FREQ_MIN,
1534 CFG_MWS_COEX_VX_WLAN_FREQ_MAX ),
1535
1536 REG_VARIABLE( CFG_MWS_COEX_V4_CONFIG_NAME , WLAN_PARAM_Integer,
1537 hdd_config_t, mwsCoexVictimConfig[3],
1538 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1539 CFG_MWS_COEX_VX_CONFIG_DEFAULT,
1540 CFG_MWS_COEX_VX_CONFIG_MIN,
1541 CFG_MWS_COEX_VX_CONFIG_MAX ),
1542
1543 REG_VARIABLE( CFG_MWS_COEX_V4_CONFIG2_NAME , WLAN_PARAM_Integer,
1544 hdd_config_t, mwsCoexVictimConfig2[3],
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_V5_WAN_FREQ_NAME , WLAN_PARAM_Integer,
1551 hdd_config_t, mwsCoexVictimWANFreq[4],
1552 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1553 CFG_MWS_COEX_VX_WAN_FREQ_DEFAULT,
1554 CFG_MWS_COEX_VX_WAN_FREQ_MIN,
1555 CFG_MWS_COEX_VX_WAN_FREQ_MAX ),
1556
1557 REG_VARIABLE( CFG_MWS_COEX_V5_WLAN_FREQ_NAME , WLAN_PARAM_Integer,
1558 hdd_config_t, mwsCoexVictimWLANFreq[4],
1559 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1560 CFG_MWS_COEX_VX_WLAN_FREQ_DEFAULT,
1561 CFG_MWS_COEX_VX_WLAN_FREQ_MIN,
1562 CFG_MWS_COEX_VX_WLAN_FREQ_MAX ),
1563
1564 REG_VARIABLE( CFG_MWS_COEX_V5_CONFIG_NAME , WLAN_PARAM_Integer,
1565 hdd_config_t, mwsCoexVictimConfig[4],
1566 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1567 CFG_MWS_COEX_VX_CONFIG_DEFAULT,
1568 CFG_MWS_COEX_VX_CONFIG_MIN,
1569 CFG_MWS_COEX_VX_CONFIG_MAX ),
1570
1571 REG_VARIABLE( CFG_MWS_COEX_V5_CONFIG2_NAME , WLAN_PARAM_Integer,
1572 hdd_config_t, mwsCoexVictimConfig2[4],
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_V6_WAN_FREQ_NAME , WLAN_PARAM_Integer,
1579 hdd_config_t, mwsCoexVictimWANFreq[5],
1580 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1581 CFG_MWS_COEX_VX_WAN_FREQ_DEFAULT,
1582 CFG_MWS_COEX_VX_WAN_FREQ_MIN,
1583 CFG_MWS_COEX_VX_WAN_FREQ_MAX ),
1584
1585 REG_VARIABLE( CFG_MWS_COEX_V6_WLAN_FREQ_NAME , WLAN_PARAM_Integer,
1586 hdd_config_t, mwsCoexVictimWLANFreq[5],
1587 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1588 CFG_MWS_COEX_VX_WLAN_FREQ_DEFAULT,
1589 CFG_MWS_COEX_VX_WLAN_FREQ_MIN,
1590 CFG_MWS_COEX_VX_WLAN_FREQ_MAX ),
1591
1592 REG_VARIABLE( CFG_MWS_COEX_V6_CONFIG_NAME , WLAN_PARAM_Integer,
1593 hdd_config_t, mwsCoexVictimConfig[5],
1594 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1595 CFG_MWS_COEX_VX_CONFIG_DEFAULT,
1596 CFG_MWS_COEX_VX_CONFIG_MIN,
1597 CFG_MWS_COEX_VX_CONFIG_MAX ),
1598
1599 REG_VARIABLE( CFG_MWS_COEX_V6_CONFIG2_NAME , WLAN_PARAM_Integer,
1600 hdd_config_t, mwsCoexVictimConfig2[5],
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_V7_WAN_FREQ_NAME , WLAN_PARAM_Integer,
1607 hdd_config_t, mwsCoexVictimWANFreq[6],
1608 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1609 CFG_MWS_COEX_VX_WAN_FREQ_DEFAULT,
1610 CFG_MWS_COEX_VX_WAN_FREQ_MIN,
1611 CFG_MWS_COEX_VX_WAN_FREQ_MAX ),
1612
1613 REG_VARIABLE( CFG_MWS_COEX_V7_WLAN_FREQ_NAME , WLAN_PARAM_Integer,
1614 hdd_config_t, mwsCoexVictimWLANFreq[6],
1615 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1616 CFG_MWS_COEX_VX_WLAN_FREQ_DEFAULT,
1617 CFG_MWS_COEX_VX_WLAN_FREQ_MIN,
1618 CFG_MWS_COEX_VX_WLAN_FREQ_MAX ),
1619
1620 REG_VARIABLE( CFG_MWS_COEX_V7_CONFIG_NAME , WLAN_PARAM_Integer,
1621 hdd_config_t, mwsCoexVictimConfig[6],
1622 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1623 CFG_MWS_COEX_VX_CONFIG_DEFAULT,
1624 CFG_MWS_COEX_VX_CONFIG_MIN,
1625 CFG_MWS_COEX_VX_CONFIG_MAX ),
1626
1627 REG_VARIABLE( CFG_MWS_COEX_V7_CONFIG2_NAME , WLAN_PARAM_Integer,
1628 hdd_config_t, mwsCoexVictimConfig2[6],
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_V8_WAN_FREQ_NAME , WLAN_PARAM_Integer,
1635 hdd_config_t, mwsCoexVictimWANFreq[7],
1636 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1637 CFG_MWS_COEX_VX_WAN_FREQ_DEFAULT,
1638 CFG_MWS_COEX_VX_WAN_FREQ_MIN,
1639 CFG_MWS_COEX_VX_WAN_FREQ_MAX ),
1640
1641 REG_VARIABLE( CFG_MWS_COEX_V8_WLAN_FREQ_NAME , WLAN_PARAM_Integer,
1642 hdd_config_t, mwsCoexVictimWLANFreq[7],
1643 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1644 CFG_MWS_COEX_VX_WLAN_FREQ_DEFAULT,
1645 CFG_MWS_COEX_VX_WLAN_FREQ_MIN,
1646 CFG_MWS_COEX_VX_WLAN_FREQ_MAX ),
1647
1648 REG_VARIABLE( CFG_MWS_COEX_V8_CONFIG_NAME , WLAN_PARAM_Integer,
1649 hdd_config_t, mwsCoexVictimConfig[7],
1650 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1651 CFG_MWS_COEX_VX_CONFIG_DEFAULT,
1652 CFG_MWS_COEX_VX_CONFIG_MIN,
1653 CFG_MWS_COEX_VX_CONFIG_MAX ),
1654
1655 REG_VARIABLE( CFG_MWS_COEX_V8_CONFIG2_NAME , WLAN_PARAM_Integer,
1656 hdd_config_t, mwsCoexVictimConfig2[7],
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_V9_WAN_FREQ_NAME , WLAN_PARAM_Integer,
1663 hdd_config_t, mwsCoexVictimWANFreq[8],
1664 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1665 CFG_MWS_COEX_VX_WAN_FREQ_DEFAULT,
1666 CFG_MWS_COEX_VX_WAN_FREQ_MIN,
1667 CFG_MWS_COEX_VX_WAN_FREQ_MAX ),
1668
1669 REG_VARIABLE( CFG_MWS_COEX_V9_WLAN_FREQ_NAME , WLAN_PARAM_Integer,
1670 hdd_config_t, mwsCoexVictimWLANFreq[8],
1671 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1672 CFG_MWS_COEX_VX_WLAN_FREQ_DEFAULT,
1673 CFG_MWS_COEX_VX_WLAN_FREQ_MIN,
1674 CFG_MWS_COEX_VX_WLAN_FREQ_MAX ),
1675
1676 REG_VARIABLE( CFG_MWS_COEX_V9_CONFIG_NAME , WLAN_PARAM_Integer,
1677 hdd_config_t, mwsCoexVictimConfig[8],
1678 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1679 CFG_MWS_COEX_VX_CONFIG_DEFAULT,
1680 CFG_MWS_COEX_VX_CONFIG_MIN,
1681 CFG_MWS_COEX_VX_CONFIG_MAX ),
1682
1683 REG_VARIABLE( CFG_MWS_COEX_V9_CONFIG2_NAME , WLAN_PARAM_Integer,
1684 hdd_config_t, mwsCoexVictimConfig2[8],
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_V10_WAN_FREQ_NAME , WLAN_PARAM_Integer,
1691 hdd_config_t, mwsCoexVictimWANFreq[9],
1692 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1693 CFG_MWS_COEX_VX_WAN_FREQ_DEFAULT,
1694 CFG_MWS_COEX_VX_WAN_FREQ_MIN,
1695 CFG_MWS_COEX_VX_WAN_FREQ_MAX ),
1696
1697 REG_VARIABLE( CFG_MWS_COEX_V10_WLAN_FREQ_NAME , WLAN_PARAM_Integer,
1698 hdd_config_t, mwsCoexVictimWLANFreq[9],
1699 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1700 CFG_MWS_COEX_VX_WLAN_FREQ_DEFAULT,
1701 CFG_MWS_COEX_VX_WLAN_FREQ_MIN,
1702 CFG_MWS_COEX_VX_WLAN_FREQ_MAX ),
1703
1704 REG_VARIABLE( CFG_MWS_COEX_V10_CONFIG_NAME , WLAN_PARAM_Integer,
1705 hdd_config_t, mwsCoexVictimConfig[9],
1706 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1707 CFG_MWS_COEX_VX_CONFIG_DEFAULT,
1708 CFG_MWS_COEX_VX_CONFIG_MIN,
1709 CFG_MWS_COEX_VX_CONFIG_MAX ),
1710
1711 REG_VARIABLE( CFG_MWS_COEX_V10_CONFIG2_NAME , WLAN_PARAM_Integer,
1712 hdd_config_t, mwsCoexVictimConfig2[9],
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_MODEM_BACKOFF_NAME , WLAN_PARAM_Integer,
1719 hdd_config_t, mwsCoexModemBackoff,
1720 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1721 CFG_MWS_COEX_MODEM_BACKOFF_DEFAULT,
1722 CFG_MWS_COEX_MODEM_BACKOFF_MIN,
1723 CFG_MWS_COEX_MODEM_BACKOFF_MAX ),
1724
1725 REG_VARIABLE( CFG_MWS_COEX_CONFIG1_NAME , WLAN_PARAM_Integer,
1726 hdd_config_t, mwsCoexConfig[0],
1727 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1728 CFG_MWS_COEX_CONFIGX_DEFAULT,
1729 CFG_MWS_COEX_CONFIGX_MIN,
1730 CFG_MWS_COEX_CONFIGX_MAX ),
1731
1732 REG_VARIABLE( CFG_MWS_COEX_CONFIG2_NAME , WLAN_PARAM_Integer,
1733 hdd_config_t, mwsCoexConfig[1],
1734 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1735 CFG_MWS_COEX_CONFIGX_DEFAULT,
1736 CFG_MWS_COEX_CONFIGX_MIN,
1737 CFG_MWS_COEX_CONFIGX_MAX ),
1738
1739 REG_VARIABLE( CFG_MWS_COEX_CONFIG3_NAME , WLAN_PARAM_Integer,
1740 hdd_config_t, mwsCoexConfig[2],
1741 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1742 CFG_MWS_COEX_CONFIGX_DEFAULT,
1743 CFG_MWS_COEX_CONFIGX_MIN,
1744 CFG_MWS_COEX_CONFIGX_MAX ),
1745
1746 REG_VARIABLE( CFG_MWS_COEX_CONFIG4_NAME , WLAN_PARAM_Integer,
1747 hdd_config_t, mwsCoexConfig[3],
1748 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1749 CFG_MWS_COEX_CONFIGX_DEFAULT,
1750 CFG_MWS_COEX_CONFIGX_MIN,
1751 CFG_MWS_COEX_CONFIGX_MAX ),
1752
1753 REG_VARIABLE( CFG_MWS_COEX_CONFIG5_NAME , WLAN_PARAM_Integer,
1754 hdd_config_t, mwsCoexConfig[4],
1755 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1756 CFG_MWS_COEX_CONFIGX_DEFAULT,
1757 CFG_MWS_COEX_CONFIGX_MIN,
1758 CFG_MWS_COEX_CONFIGX_MAX ),
1759
1760 REG_VARIABLE( CFG_MWS_COEX_CONFIG6_NAME , WLAN_PARAM_Integer,
1761 hdd_config_t, mwsCoexConfig[5],
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_SAR_POWER_BACKOFF_NAME , WLAN_PARAM_Integer,
1768 hdd_config_t, SARPowerBackoff,
1769 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1770 CFG_SAR_POWER_BACKOFF_DEFAULT,
1771 CFG_SAR_POWER_BACKOFF_MIN,
1772 CFG_SAR_POWER_BACKOFF_MAX ),
1773
Jeff Johnson295189b2012-06-20 16:38:30 -07001774 REG_VARIABLE( CFG_AP_LISTEN_MODE_NAME , WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001775 hdd_config_t, nEnableListenMode,
1776 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1777 CFG_AP_LISTEN_MODE_DEFAULT,
1778 CFG_AP_LISTEN_MODE_MIN,
1779 CFG_AP_LISTEN_MODE_MAX ),
Jeff Johnson295189b2012-06-20 16:38:30 -07001780
1781 REG_VARIABLE( CFG_AP_AUTO_SHUT_OFF , WLAN_PARAM_Integer,
1782 hdd_config_t, nAPAutoShutOff,
1783 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1784 CFG_AP_AUTO_SHUT_OFF_DEFAULT,
1785 CFG_AP_AUTO_SHUT_OFF_MIN,
1786 CFG_AP_AUTO_SHUT_OFF_MAX ),
Jeff Johnson295189b2012-06-20 16:38:30 -07001787
1788#if defined WLAN_FEATURE_VOWIFI
1789 REG_VARIABLE( CFG_RRM_ENABLE_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001790 hdd_config_t, fRrmEnable,
1791 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1792 CFG_RRM_ENABLE_DEFAULT,
1793 CFG_RRM_ENABLE_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001794 CFG_RRM_ENABLE_MAX ),
1795
1796 REG_VARIABLE( CFG_RRM_OPERATING_CHAN_MAX_DURATION_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001797 hdd_config_t, nInChanMeasMaxDuration,
1798 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1799 CFG_RRM_OPERATING_CHAN_MAX_DURATION_DEFAULT,
1800 CFG_RRM_OPERATING_CHAN_MAX_DURATION_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001801 CFG_RRM_OPERATING_CHAN_MAX_DURATION_MAX ),
1802
1803 REG_VARIABLE( CFG_RRM_NON_OPERATING_CHAN_MAX_DURATION_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001804 hdd_config_t, nOutChanMeasMaxDuration,
1805 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1806 CFG_RRM_NON_OPERATING_CHAN_MAX_DURATION_DEFAULT,
1807 CFG_RRM_NON_OPERATING_CHAN_MAX_DURATION_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001808 CFG_RRM_NON_OPERATING_CHAN_MAX_DURATION_MAX ),
1809
1810 REG_VARIABLE( CFG_RRM_MEAS_RANDOMIZATION_INTVL_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001811 hdd_config_t, nRrmRandnIntvl,
1812 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1813 CFG_RRM_MEAS_RANDOMIZATION_INTVL_DEFAULT,
1814 CFG_RRM_MEAS_RANDOMIZATION_INTVL_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001815 CFG_RRM_MEAS_RANDOMIZATION_INTVL_MAX ),
1816#endif
1817
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001818#ifdef WLAN_FEATURE_VOWIFI_11R
Jeff Johnson295189b2012-06-20 16:38:30 -07001819 REG_VARIABLE( CFG_FT_RESOURCE_REQ_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001820 hdd_config_t, fFTResourceReqSupported,
1821 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1822 CFG_FT_RESOURCE_REQ_DEFAULT,
1823 CFG_FT_RESOURCE_REQ_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001824 CFG_FT_RESOURCE_REQ_MAX ),
1825#endif
1826
1827#ifdef WLAN_FEATURE_NEIGHBOR_ROAMING
Srinivas Girigowdabbd16eb2013-03-21 12:34:46 -07001828 REG_DYNAMIC_VARIABLE( CFG_NEIGHBOR_SCAN_TIMER_PERIOD_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001829 hdd_config_t, nNeighborScanPeriod,
1830 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1831 CFG_NEIGHBOR_SCAN_TIMER_PERIOD_DEFAULT,
1832 CFG_NEIGHBOR_SCAN_TIMER_PERIOD_MIN,
Srinivas Girigowdabbd16eb2013-03-21 12:34:46 -07001833 CFG_NEIGHBOR_SCAN_TIMER_PERIOD_MAX,
1834 cbNotifySetNeighborScanPeriod, 0 ),
Jeff Johnson295189b2012-06-20 16:38:30 -07001835
1836 REG_VARIABLE( CFG_NEIGHBOR_REASSOC_RSSI_THRESHOLD_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001837 hdd_config_t, nNeighborReassocRssiThreshold,
1838 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1839 CFG_NEIGHBOR_REASSOC_RSSI_THRESHOLD_DEFAULT,
1840 CFG_NEIGHBOR_REASSOC_RSSI_THRESHOLD_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001841 CFG_NEIGHBOR_REASSOC_RSSI_THRESHOLD_MAX ),
1842
Srinivas Girigowdade697412013-02-14 16:31:48 -08001843 REG_DYNAMIC_VARIABLE( CFG_NEIGHBOR_LOOKUP_RSSI_THRESHOLD_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001844 hdd_config_t, nNeighborLookupRssiThreshold,
1845 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1846 CFG_NEIGHBOR_LOOKUP_RSSI_THRESHOLD_DEFAULT,
1847 CFG_NEIGHBOR_LOOKUP_RSSI_THRESHOLD_MIN,
Srinivas Girigowdade697412013-02-14 16:31:48 -08001848 CFG_NEIGHBOR_LOOKUP_RSSI_THRESHOLD_MAX,
1849 cbNotifySetNeighborLookupRssiThreshold, 0 ),
Jeff Johnson295189b2012-06-20 16:38:30 -07001850
1851 REG_VARIABLE_STRING( CFG_NEIGHBOR_SCAN_CHAN_LIST_NAME, WLAN_PARAM_String,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001852 hdd_config_t, neighborScanChanList,
Jeff Johnson295189b2012-06-20 16:38:30 -07001853 VAR_FLAGS_OPTIONAL,
1854 (void *)CFG_NEIGHBOR_SCAN_CHAN_LIST_DEFAULT ),
1855
Srinivas Girigowdabbd16eb2013-03-21 12:34:46 -07001856 REG_DYNAMIC_VARIABLE( CFG_NEIGHBOR_SCAN_MIN_CHAN_TIME_NAME, WLAN_PARAM_Integer,
Jeff Johnson295189b2012-06-20 16:38:30 -07001857 hdd_config_t, nNeighborScanMinChanTime,
1858 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1859 CFG_NEIGHBOR_SCAN_MIN_CHAN_TIME_DEFAULT,
1860 CFG_NEIGHBOR_SCAN_MIN_CHAN_TIME_MIN,
Srinivas Girigowdabbd16eb2013-03-21 12:34:46 -07001861 CFG_NEIGHBOR_SCAN_MIN_CHAN_TIME_MAX,
1862 cbNotifySetNeighborScanMinChanTime, 0 ),
Jeff Johnson295189b2012-06-20 16:38:30 -07001863
Srinivas Girigowdabbd16eb2013-03-21 12:34:46 -07001864 REG_DYNAMIC_VARIABLE( CFG_NEIGHBOR_SCAN_MAX_CHAN_TIME_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001865 hdd_config_t, nNeighborScanMaxChanTime,
1866 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1867 CFG_NEIGHBOR_SCAN_MAX_CHAN_TIME_DEFAULT,
1868 CFG_NEIGHBOR_SCAN_MAX_CHAN_TIME_MIN,
Srinivas Girigowdabbd16eb2013-03-21 12:34:46 -07001869 CFG_NEIGHBOR_SCAN_MAX_CHAN_TIME_MAX,
1870 cbNotifySetNeighborScanMaxChanTime, 0 ),
Jeff Johnson295189b2012-06-20 16:38:30 -07001871
1872 REG_VARIABLE( CFG_11R_NEIGHBOR_REQ_MAX_TRIES_NAME, WLAN_PARAM_Integer,
1873 hdd_config_t, nMaxNeighborReqTries,
1874 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1875 CFG_11R_NEIGHBOR_REQ_MAX_TRIES_DEFAULT,
1876 CFG_11R_NEIGHBOR_REQ_MAX_TRIES_MIN,
1877 CFG_11R_NEIGHBOR_REQ_MAX_TRIES_MAX),
1878
Srinivas Girigowdade697412013-02-14 16:31:48 -08001879 REG_DYNAMIC_VARIABLE( CFG_NEIGHBOR_SCAN_RESULTS_REFRESH_PERIOD_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001880 hdd_config_t, nNeighborResultsRefreshPeriod,
1881 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1882 CFG_NEIGHBOR_SCAN_RESULTS_REFRESH_PERIOD_DEFAULT,
1883 CFG_NEIGHBOR_SCAN_RESULTS_REFRESH_PERIOD_MIN,
Srinivas Girigowdade697412013-02-14 16:31:48 -08001884 CFG_NEIGHBOR_SCAN_RESULTS_REFRESH_PERIOD_MAX,
1885 cbNotifySetNeighborResultsRefreshPeriod, 0 ),
1886
1887 REG_DYNAMIC_VARIABLE( CFG_EMPTY_SCAN_REFRESH_PERIOD_NAME, WLAN_PARAM_Integer,
1888 hdd_config_t, nEmptyScanRefreshPeriod,
1889 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1890 CFG_EMPTY_SCAN_REFRESH_PERIOD_DEFAULT,
1891 CFG_EMPTY_SCAN_REFRESH_PERIOD_MIN,
1892 CFG_EMPTY_SCAN_REFRESH_PERIOD_MAX,
1893 cbNotifySetEmptyScanRefreshPeriod, 0 ),
Jeff Johnson295189b2012-06-20 16:38:30 -07001894#endif /* WLAN_FEATURE_NEIGHBOR_ROAMING */
1895
1896 REG_VARIABLE( CFG_QOS_WMM_BURST_SIZE_DEFN_NAME , WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001897 hdd_config_t, burstSizeDefinition,
1898 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1899 CFG_QOS_WMM_BURST_SIZE_DEFN_DEFAULT,
1900 CFG_QOS_WMM_BURST_SIZE_DEFN_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001901 CFG_QOS_WMM_BURST_SIZE_DEFN_MAX ),
1902
1903 REG_VARIABLE( CFG_MCAST_BCAST_FILTER_SETTING_NAME, WLAN_PARAM_Integer,
1904 hdd_config_t, mcastBcastFilterSetting,
1905 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1906 CFG_MCAST_BCAST_FILTER_SETTING_DEFAULT,
1907 CFG_MCAST_BCAST_FILTER_SETTING_MIN,
1908 CFG_MCAST_BCAST_FILTER_SETTING_MAX ),
1909
1910 REG_VARIABLE( CFG_ENABLE_HOST_ARPOFFLOAD_NAME, WLAN_PARAM_Integer,
1911 hdd_config_t, fhostArpOffload,
1912 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1913 CFG_ENABLE_HOST_ARPOFFLOAD_DEFAULT,
1914 CFG_ENABLE_HOST_ARPOFFLOAD_MIN,
1915 CFG_ENABLE_HOST_ARPOFFLOAD_MAX ),
1916
Gopichand Nakkala746a9452013-06-11 12:45:54 +05301917 REG_VARIABLE( CFG_ENABLE_HOST_NSOFFLOAD_NAME, WLAN_PARAM_Integer,
1918 hdd_config_t, fhostNSOffload,
1919 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1920 CFG_ENABLE_HOST_NSOFFLOAD_DEFAULT,
1921 CFG_ENABLE_HOST_NSOFFLOAD_MIN,
1922 CFG_ENABLE_HOST_NSOFFLOAD_MAX ),
1923
Jeff Johnson295189b2012-06-20 16:38:30 -07001924 REG_VARIABLE( CFG_QOS_WMM_TS_INFO_ACK_POLICY_NAME , WLAN_PARAM_HexInteger,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001925 hdd_config_t, tsInfoAckPolicy,
1926 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1927 CFG_QOS_WMM_TS_INFO_ACK_POLICY_DEFAULT,
1928 CFG_QOS_WMM_TS_INFO_ACK_POLICY_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001929 CFG_QOS_WMM_TS_INFO_ACK_POLICY_MAX ),
1930
1931 REG_VARIABLE( CFG_SINGLE_TID_RC_NAME, WLAN_PARAM_Integer,
1932 hdd_config_t, bSingleTidRc,
1933 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1934 CFG_SINGLE_TID_RC_DEFAULT,
1935 CFG_SINGLE_TID_RC_MIN,
1936 CFG_SINGLE_TID_RC_MAX),
1937
1938 REG_VARIABLE( CFG_DYNAMIC_PSPOLL_VALUE_NAME, WLAN_PARAM_Integer,
1939 hdd_config_t, dynamicPsPollValue,
1940 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1941 CFG_DYNAMIC_PSPOLL_VALUE_DEFAULT,
1942 CFG_DYNAMIC_PSPOLL_VALUE_MIN,
1943 CFG_DYNAMIC_PSPOLL_VALUE_MAX ),
1944
1945 REG_VARIABLE( CFG_TELE_BCN_WAKEUP_EN_NAME, WLAN_PARAM_Integer,
1946 hdd_config_t, teleBcnWakeupEn,
1947 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1948 CFG_TELE_BCN_WAKEUP_EN_DEFAULT,
1949 CFG_TELE_BCN_WAKEUP_EN_MIN,
1950 CFG_TELE_BCN_WAKEUP_EN_MAX ),
1951
1952 REG_VARIABLE( CFG_INFRA_STA_KEEP_ALIVE_PERIOD_NAME, WLAN_PARAM_Integer,
1953 hdd_config_t, infraStaKeepAlivePeriod,
1954 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1955 CFG_INFRA_STA_KEEP_ALIVE_PERIOD_DEFAULT,
1956 CFG_INFRA_STA_KEEP_ALIVE_PERIOD_MIN,
1957 CFG_INFRA_STA_KEEP_ALIVE_PERIOD_MAX),
1958
1959 REG_VARIABLE( CFG_QOS_ADDTS_WHEN_ACM_IS_OFF_NAME , WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001960 hdd_config_t, AddTSWhenACMIsOff,
1961 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1962 CFG_QOS_ADDTS_WHEN_ACM_IS_OFF_DEFAULT,
1963 CFG_QOS_ADDTS_WHEN_ACM_IS_OFF_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001964 CFG_QOS_ADDTS_WHEN_ACM_IS_OFF_MAX ),
1965
1966
1967 REG_VARIABLE( CFG_VALIDATE_SCAN_LIST_NAME , WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001968 hdd_config_t, fValidateScanList,
1969 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1970 CFG_VALIDATE_SCAN_LIST_DEFAULT,
1971 CFG_VALIDATE_SCAN_LIST_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001972 CFG_VALIDATE_SCAN_LIST_MAX ),
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001973
Jeff Johnson295189b2012-06-20 16:38:30 -07001974 REG_VARIABLE( CFG_NULLDATA_AP_RESP_TIMEOUT_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001975 hdd_config_t, nNullDataApRespTimeout,
1976 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1977 CFG_NULLDATA_AP_RESP_TIMEOUT_DEFAULT,
1978 CFG_NULLDATA_AP_RESP_TIMEOUT_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001979 CFG_NULLDATA_AP_RESP_TIMEOUT_MAX ),
1980
1981 REG_VARIABLE( CFG_AP_DATA_AVAIL_POLL_PERIOD_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001982 hdd_config_t, apDataAvailPollPeriodInMs,
1983 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1984 CFG_AP_DATA_AVAIL_POLL_PERIOD_DEFAULT,
1985 CFG_AP_DATA_AVAIL_POLL_PERIOD_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001986 CFG_AP_DATA_AVAIL_POLL_PERIOD_MAX ),
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001987
Jeff Johnson295189b2012-06-20 16:38:30 -07001988 REG_VARIABLE( CFG_ENABLE_BTAMP_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001989 hdd_config_t, enableBtAmp,
1990 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1991 CFG_ENABLE_BTAMP_DEFAULT,
1992 CFG_ENABLE_BTAMP_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001993 CFG_ENABLE_BTAMP_MAX ),
1994
1995#ifdef WLAN_BTAMP_FEATURE
1996 REG_VARIABLE( CFG_BT_AMP_PREFERRED_CHANNEL_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001997 hdd_config_t, preferredChannel,
Jeff Johnson295189b2012-06-20 16:38:30 -07001998 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1999 CFG_BT_AMP_PREFERRED_CHANNEL_DEFAULT,
2000 CFG_BT_AMP_PREFERRED_CHANNEL_MIN,
2001 CFG_BT_AMP_PREFERRED_CHANNEL_MAX ),
2002#endif //WLAN_BTAMP_FEATURE
2003 REG_VARIABLE( CFG_BAND_CAPABILITY_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002004 hdd_config_t, nBandCapability,
2005 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2006 CFG_BAND_CAPABILITY_DEFAULT,
2007 CFG_BAND_CAPABILITY_MIN,
2008 CFG_BAND_CAPABILITY_MAX ),
Jeff Johnson295189b2012-06-20 16:38:30 -07002009
2010 REG_VARIABLE( CFG_ENABLE_BEACON_EARLY_TERMINATION_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002011 hdd_config_t, fEnableBeaconEarlyTermination,
2012 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2013 CFG_ENABLE_BEACON_EARLY_TERMINATION_DEFAULT,
2014 CFG_ENABLE_BEACON_EARLY_TERMINATION_MIN,
2015 CFG_ENABLE_BEACON_EARLY_TERMINATION_MAX ),
Varun Reddy Yeturu587e6802013-01-24 12:21:41 -08002016/* CFG_VOS_TRACE_ENABLE Parameters */
2017 REG_VARIABLE( CFG_VOS_TRACE_ENABLE_BAP_NAME, WLAN_PARAM_Integer,
2018 hdd_config_t, vosTraceEnableBAP,
2019 VAR_FLAGS_OPTIONAL,
2020 CFG_VOS_TRACE_ENABLE_DEFAULT,
2021 CFG_VOS_TRACE_ENABLE_MIN,
2022 CFG_VOS_TRACE_ENABLE_MAX ),
2023
2024 REG_VARIABLE( CFG_VOS_TRACE_ENABLE_TL_NAME, WLAN_PARAM_Integer,
2025 hdd_config_t, vosTraceEnableTL,
2026 VAR_FLAGS_OPTIONAL,
2027 CFG_VOS_TRACE_ENABLE_DEFAULT,
2028 CFG_VOS_TRACE_ENABLE_MIN,
2029 CFG_VOS_TRACE_ENABLE_MAX ),
2030
2031 REG_VARIABLE( CFG_VOS_TRACE_ENABLE_WDI_NAME, WLAN_PARAM_Integer,
2032 hdd_config_t, vosTraceEnableWDI,
2033 VAR_FLAGS_OPTIONAL,
2034 CFG_VOS_TRACE_ENABLE_DEFAULT,
2035 CFG_VOS_TRACE_ENABLE_MIN,
2036 CFG_VOS_TRACE_ENABLE_MAX ),
2037
2038 REG_VARIABLE( CFG_VOS_TRACE_ENABLE_HDD_NAME, WLAN_PARAM_Integer,
2039 hdd_config_t, vosTraceEnableHDD,
2040 VAR_FLAGS_OPTIONAL,
2041 CFG_VOS_TRACE_ENABLE_DEFAULT,
2042 CFG_VOS_TRACE_ENABLE_MIN,
2043 CFG_VOS_TRACE_ENABLE_MAX ),
2044
2045 REG_VARIABLE( CFG_VOS_TRACE_ENABLE_SME_NAME, WLAN_PARAM_Integer,
2046 hdd_config_t, vosTraceEnableSME,
2047 VAR_FLAGS_OPTIONAL,
2048 CFG_VOS_TRACE_ENABLE_DEFAULT,
2049 CFG_VOS_TRACE_ENABLE_MIN,
2050 CFG_VOS_TRACE_ENABLE_MAX ),
2051
2052 REG_VARIABLE( CFG_VOS_TRACE_ENABLE_PE_NAME, WLAN_PARAM_Integer,
2053 hdd_config_t, vosTraceEnablePE,
2054 VAR_FLAGS_OPTIONAL,
2055 CFG_VOS_TRACE_ENABLE_DEFAULT,
2056 CFG_VOS_TRACE_ENABLE_MIN,
2057 CFG_VOS_TRACE_ENABLE_MAX ),
2058
Katya Nigam70d68332013-09-16 16:49:45 +05302059 REG_VARIABLE( CFG_VOS_TRACE_ENABLE_PMC_NAME, WLAN_PARAM_Integer,
2060 hdd_config_t, vosTraceEnablePMC,
2061 VAR_FLAGS_OPTIONAL,
2062 CFG_VOS_TRACE_ENABLE_DEFAULT,
2063 CFG_VOS_TRACE_ENABLE_MIN,
2064 CFG_VOS_TRACE_ENABLE_MAX ),
2065
Varun Reddy Yeturu587e6802013-01-24 12:21:41 -08002066 REG_VARIABLE( CFG_VOS_TRACE_ENABLE_WDA_NAME, WLAN_PARAM_Integer,
2067 hdd_config_t, vosTraceEnableWDA,
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_SYS_NAME, WLAN_PARAM_Integer,
2074 hdd_config_t, vosTraceEnableSYS,
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_VOSS_NAME, WLAN_PARAM_Integer,
2081 hdd_config_t, vosTraceEnableVOSS,
2082 VAR_FLAGS_OPTIONAL,
2083 CFG_VOS_TRACE_ENABLE_DEFAULT,
2084 CFG_VOS_TRACE_ENABLE_MIN,
2085 CFG_VOS_TRACE_ENABLE_MAX ),
2086
Varun Reddy Yeturu587e6802013-01-24 12:21:41 -08002087 REG_VARIABLE( CFG_VOS_TRACE_ENABLE_SAP_NAME, WLAN_PARAM_Integer,
2088 hdd_config_t, vosTraceEnableSAP,
2089 VAR_FLAGS_OPTIONAL,
2090 CFG_VOS_TRACE_ENABLE_DEFAULT,
2091 CFG_VOS_TRACE_ENABLE_MIN,
2092 CFG_VOS_TRACE_ENABLE_MAX ),
2093
2094 REG_VARIABLE( CFG_VOS_TRACE_ENABLE_HDD_SAP_NAME, WLAN_PARAM_Integer,
2095 hdd_config_t, vosTraceEnableHDDSAP,
2096 VAR_FLAGS_OPTIONAL,
2097 CFG_VOS_TRACE_ENABLE_DEFAULT,
2098 CFG_VOS_TRACE_ENABLE_MIN,
2099 CFG_VOS_TRACE_ENABLE_MAX ),
Jeff Johnson295189b2012-06-20 16:38:30 -07002100
Jeff Johnson295189b2012-06-20 16:38:30 -07002101 /* note that since the default value is out of range we cannot
2102 enable range check, otherwise we get a system log message */
2103 REG_VARIABLE( CFG_WDI_TRACE_ENABLE_DAL_NAME, WLAN_PARAM_Integer,
2104 hdd_config_t, wdiTraceEnableDAL,
2105 VAR_FLAGS_OPTIONAL,
2106 CFG_WDI_TRACE_ENABLE_DEFAULT,
2107 CFG_WDI_TRACE_ENABLE_MIN,
2108 CFG_WDI_TRACE_ENABLE_MAX ),
2109
2110 REG_VARIABLE( CFG_WDI_TRACE_ENABLE_CTL_NAME, WLAN_PARAM_Integer,
2111 hdd_config_t, wdiTraceEnableCTL,
2112 VAR_FLAGS_OPTIONAL,
2113 CFG_WDI_TRACE_ENABLE_DEFAULT,
2114 CFG_WDI_TRACE_ENABLE_MIN,
2115 CFG_WDI_TRACE_ENABLE_MAX ),
2116
2117 REG_VARIABLE( CFG_WDI_TRACE_ENABLE_DAT_NAME, WLAN_PARAM_Integer,
2118 hdd_config_t, wdiTraceEnableDAT,
2119 VAR_FLAGS_OPTIONAL,
2120 CFG_WDI_TRACE_ENABLE_DEFAULT,
2121 CFG_WDI_TRACE_ENABLE_MIN,
2122 CFG_WDI_TRACE_ENABLE_MAX ),
2123
2124 REG_VARIABLE( CFG_WDI_TRACE_ENABLE_PAL_NAME, WLAN_PARAM_Integer,
2125 hdd_config_t, wdiTraceEnablePAL,
2126 VAR_FLAGS_OPTIONAL,
2127 CFG_WDI_TRACE_ENABLE_DEFAULT,
2128 CFG_WDI_TRACE_ENABLE_MIN,
2129 CFG_WDI_TRACE_ENABLE_MAX ),
Jeff Johnson295189b2012-06-20 16:38:30 -07002130
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002131 REG_VARIABLE( CFG_TELE_BCN_TRANS_LI_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002132 hdd_config_t, nTeleBcnTransListenInterval,
2133 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2134 CFG_TELE_BCN_TRANS_LI_DEFAULT,
2135 CFG_TELE_BCN_TRANS_LI_MIN,
2136 CFG_TELE_BCN_TRANS_LI_MAX ),
Jeff Johnson295189b2012-06-20 16:38:30 -07002137
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002138 REG_VARIABLE( CFG_TELE_BCN_TRANS_LI_NUM_IDLE_BCNS_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002139 hdd_config_t, nTeleBcnTransLiNumIdleBeacons,
2140 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2141 CFG_TELE_BCN_TRANS_LI_NUM_IDLE_BCNS_DEFAULT,
2142 CFG_TELE_BCN_TRANS_LI_NUM_IDLE_BCNS_MIN,
2143 CFG_TELE_BCN_TRANS_LI_NUM_IDLE_BCNS_MAX ),
Jeff Johnson295189b2012-06-20 16:38:30 -07002144
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002145 REG_VARIABLE( CFG_TELE_BCN_MAX_LI_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002146 hdd_config_t, nTeleBcnMaxListenInterval,
2147 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2148 CFG_TELE_BCN_MAX_LI_DEFAULT,
2149 CFG_TELE_BCN_MAX_LI_MIN,
2150 CFG_TELE_BCN_MAX_LI_MAX ),
Jeff Johnson295189b2012-06-20 16:38:30 -07002151
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002152 REG_VARIABLE( CFG_TELE_BCN_MAX_LI_NUM_IDLE_BCNS_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002153 hdd_config_t, nTeleBcnMaxLiNumIdleBeacons,
2154 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2155 CFG_TELE_BCN_MAX_LI_NUM_IDLE_BCNS_DEFAULT,
2156 CFG_TELE_BCN_MAX_LI_NUM_IDLE_BCNS_MIN,
2157 CFG_TELE_BCN_MAX_LI_NUM_IDLE_BCNS_MAX ),
Jeff Johnson295189b2012-06-20 16:38:30 -07002158
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002159 REG_VARIABLE( CFG_BCN_EARLY_TERM_WAKE_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002160 hdd_config_t, bcnEarlyTermWakeInterval,
2161 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2162 CFG_BCN_EARLY_TERM_WAKE_DEFAULT,
2163 CFG_BCN_EARLY_TERM_WAKE_MIN,
2164 CFG_BCN_EARLY_TERM_WAKE_MAX ),
Jeff Johnson295189b2012-06-20 16:38:30 -07002165
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002166 REG_VARIABLE( CFG_AP_DATA_AVAIL_POLL_PERIOD_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002167 hdd_config_t, apDataAvailPollPeriodInMs,
2168 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2169 CFG_AP_DATA_AVAIL_POLL_PERIOD_DEFAULT,
2170 CFG_AP_DATA_AVAIL_POLL_PERIOD_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07002171 CFG_AP_DATA_AVAIL_POLL_PERIOD_MAX ),
2172
2173 REG_VARIABLE( CFG_ENABLE_CLOSE_LOOP_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002174 hdd_config_t, enableCloseLoop,
2175 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2176 CFG_ENABLE_CLOSE_LOOP_DEFAULT,
2177 CFG_ENABLE_CLOSE_LOOP_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07002178 CFG_ENABLE_CLOSE_LOOP_MAX ),
2179
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002180 REG_VARIABLE( CFG_ENABLE_BYPASS_11D_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002181 hdd_config_t, enableBypass11d,
2182 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2183 CFG_ENABLE_BYPASS_11D_DEFAULT,
2184 CFG_ENABLE_BYPASS_11D_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07002185 CFG_ENABLE_BYPASS_11D_MAX ),
2186
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002187 REG_VARIABLE( CFG_ENABLE_DFS_CHNL_SCAN_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002188 hdd_config_t, enableDFSChnlScan,
2189 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2190 CFG_ENABLE_DFS_CHNL_SCAN_DEFAULT,
2191 CFG_ENABLE_DFS_CHNL_SCAN_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07002192 CFG_ENABLE_DFS_CHNL_SCAN_MAX ),
2193
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002194 REG_VARIABLE( CFG_ENABLE_DYNAMIC_DTIM_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002195 hdd_config_t, enableDynamicDTIM,
2196 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2197 CFG_ENABLE_DYNAMIC_DTIM_DEFAULT,
2198 CFG_ENABLE_DYNAMIC_DTIM_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07002199 CFG_ENABLE_DYNAMIC_DTIM_MAX ),
2200
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002201 REG_VARIABLE( CFG_ENABLE_AUTOMATIC_TX_POWER_CONTROL_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002202 hdd_config_t, enableAutomaticTxPowerControl,
2203 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2204 CFG_ENABLE_AUTOMATIC_TX_POWER_CONTROL_DEFAULT,
2205 CFG_ENABLE_AUTOMATIC_TX_POWER_CONTROL_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07002206 CFG_ENABLE_AUTOMATIC_TX_POWER_CONTROL_MAX ),
2207
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002208 REG_VARIABLE( CFG_SHORT_GI_40MHZ_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002209 hdd_config_t, ShortGI40MhzEnable,
2210 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2211 CFG_SHORT_GI_40MHZ_DEFAULT,
2212 CFG_SHORT_GI_40MHZ_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07002213 CFG_SHORT_GI_40MHZ_MAX ),
2214
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002215 REG_DYNAMIC_VARIABLE( CFG_REPORT_MAX_LINK_SPEED, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002216 hdd_config_t, reportMaxLinkSpeed,
2217 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2218 CFG_REPORT_MAX_LINK_SPEED_DEFAULT,
2219 CFG_REPORT_MAX_LINK_SPEED_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07002220 CFG_REPORT_MAX_LINK_SPEED_MAX,
2221 NULL, 0 ),
2222
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002223 REG_DYNAMIC_VARIABLE( CFG_LINK_SPEED_RSSI_HIGH, WLAN_PARAM_SignedInteger,
Jeff Johnson295189b2012-06-20 16:38:30 -07002224 hdd_config_t, linkSpeedRssiHigh,
2225 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2226 CFG_LINK_SPEED_RSSI_HIGH_DEFAULT,
2227 CFG_LINK_SPEED_RSSI_HIGH_MIN,
2228 CFG_LINK_SPEED_RSSI_HIGH_MAX,
2229 NULL, 0 ),
2230
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002231 REG_DYNAMIC_VARIABLE( CFG_LINK_SPEED_RSSI_MID, WLAN_PARAM_SignedInteger,
Madan Mohan Koyyalamudi8df78d52012-11-02 12:30:06 -07002232 hdd_config_t, linkSpeedRssiMid,
2233 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2234 CFG_LINK_SPEED_RSSI_MID_DEFAULT,
2235 CFG_LINK_SPEED_RSSI_MID_MIN,
2236 CFG_LINK_SPEED_RSSI_MID_MAX,
2237 NULL, 0 ),
2238
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002239 REG_DYNAMIC_VARIABLE( CFG_LINK_SPEED_RSSI_LOW, WLAN_PARAM_SignedInteger,
Jeff Johnson295189b2012-06-20 16:38:30 -07002240 hdd_config_t, linkSpeedRssiLow,
2241 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2242 CFG_LINK_SPEED_RSSI_LOW_DEFAULT,
2243 CFG_LINK_SPEED_RSSI_LOW_MIN,
2244 CFG_LINK_SPEED_RSSI_LOW_MAX,
2245 NULL, 0 ),
2246
Madan Mohan Koyyalamudid5026072012-11-30 14:56:21 -08002247#if defined (WLAN_FEATURE_VOWIFI_11R) || defined (FEATURE_WLAN_CCX) || defined(FEATURE_WLAN_LFR)
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002248 REG_DYNAMIC_VARIABLE( CFG_ROAM_PREFER_5GHZ, WLAN_PARAM_Integer,
Madan Mohan Koyyalamudid5026072012-11-30 14:56:21 -08002249 hdd_config_t, nRoamPrefer5GHz,
2250 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2251 CFG_ROAM_PREFER_5GHZ_DEFAULT,
2252 CFG_ROAM_PREFER_5GHZ_MIN,
2253 CFG_ROAM_PREFER_5GHZ_MAX,
2254 cbNotifySetRoamPrefer5GHz, 0 ),
Srinivas Girigowdabbd16eb2013-03-21 12:34:46 -07002255
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002256 REG_DYNAMIC_VARIABLE( CFG_ROAM_INTRA_BAND, WLAN_PARAM_Integer,
Srinivas Girigowdabbd16eb2013-03-21 12:34:46 -07002257 hdd_config_t, nRoamIntraBand,
2258 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2259 CFG_ROAM_INTRA_BAND_DEFAULT,
2260 CFG_ROAM_INTRA_BAND_MIN,
2261 CFG_ROAM_INTRA_BAND_MAX,
2262 cbNotifySetRoamIntraBand, 0 ),
2263
Varun Reddy Yeturu920df212013-05-22 08:07:23 -07002264 REG_DYNAMIC_VARIABLE( CFG_ROAM_SCAN_N_PROBES, WLAN_PARAM_Integer,
2265 hdd_config_t, nProbes,
2266 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2267 CFG_ROAM_SCAN_N_PROBES_DEFAULT,
2268 CFG_ROAM_SCAN_N_PROBES_MIN,
2269 CFG_ROAM_SCAN_N_PROBES_MAX,
2270 cbNotifySetRoamScanNProbes, 0 ),
2271
2272 REG_DYNAMIC_VARIABLE( CFG_ROAM_SCAN_HOME_AWAY_TIME, WLAN_PARAM_Integer,
2273 hdd_config_t, nRoamScanHomeAwayTime,
2274 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2275 CFG_ROAM_SCAN_HOME_AWAY_TIME_DEFAULT,
2276 CFG_ROAM_SCAN_HOME_AWAY_TIME_MIN,
2277 CFG_ROAM_SCAN_HOME_AWAY_TIME_MAX,
2278 cbNotifySetRoamScanHomeAwayTime, 0 ),
2279
Madan Mohan Koyyalamudid5026072012-11-30 14:56:21 -08002280#endif
2281
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002282 REG_VARIABLE( CFG_P2P_DEVICE_ADDRESS_ADMINISTRATED_NAME, WLAN_PARAM_Integer,
Jeff Johnson295189b2012-06-20 16:38:30 -07002283 hdd_config_t, isP2pDeviceAddrAdministrated,
2284 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2285 CFG_P2P_DEVICE_ADDRESS_ADMINISTRATED_DEFAULT,
2286 CFG_P2P_DEVICE_ADDRESS_ADMINISTRATED_MIN,
2287 CFG_P2P_DEVICE_ADDRESS_ADMINISTRATED_MAX ),
Jeff Johnson295189b2012-06-20 16:38:30 -07002288
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002289 REG_VARIABLE( CFG_ENABLE_MCC_ENABLED_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002290 hdd_config_t, enableMCC,
2291 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2292 CFG_ENABLE_MCC_ENABLED_DEFAULT,
2293 CFG_ENABLE_MCC_ENABLED_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07002294 CFG_ENABLE_MCC_ENABLED_MAX ),
2295
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002296 REG_VARIABLE( CFG_ALLOW_MCC_GO_DIFF_BI_NAME, WLAN_PARAM_Integer,
Mohit Khanna7ed53f02012-09-11 17:52:10 -07002297 hdd_config_t, allowMCCGODiffBI,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002298 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2299 CFG_ALLOW_MCC_GO_DIFF_BI_DEFAULT,
2300 CFG_ALLOW_MCC_GO_DIFF_BI_MIN,
2301 CFG_ALLOW_MCC_GO_DIFF_BI_MAX ),
Mohit Khanna7ed53f02012-09-11 17:52:10 -07002302
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002303 REG_VARIABLE( CFG_THERMAL_MIGRATION_ENABLE_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002304 hdd_config_t, thermalMitigationEnable,
2305 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2306 CFG_THERMAL_MIGRATION_ENABLE_DEFAULT,
2307 CFG_THERMAL_MIGRATION_ENABLE_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07002308 CFG_THERMAL_MIGRATION_ENABLE_MAX ),
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002309
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002310 REG_VARIABLE( CFG_ENABLE_MODULATED_DTIM_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002311 hdd_config_t, enableModulatedDTIM,
2312 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2313 CFG_ENABLE_MODULATED_DTIM_DEFAULT,
2314 CFG_ENABLE_MODULATED_DTIM_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07002315 CFG_ENABLE_MODULATED_DTIM_MAX ),
2316
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002317 REG_VARIABLE( CFG_MC_ADDR_LIST_ENABLE_NAME, WLAN_PARAM_Integer,
Jeff Johnsond13512a2012-07-17 11:42:19 -07002318 hdd_config_t, fEnableMCAddrList,
2319 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2320 CFG_MC_ADDR_LIST_ENABLE_DEFAULT,
2321 CFG_MC_ADDR_LIST_ENABLE_MIN,
2322 CFG_MC_ADDR_LIST_ENABLE_MAX ),
2323
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002324#ifdef WLAN_FEATURE_11AC
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002325 REG_VARIABLE( CFG_VHT_CHANNEL_WIDTH, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002326 hdd_config_t, vhtChannelWidth,
2327 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK,
2328 CFG_VHT_CHANNEL_WIDTH_DEFAULT,
2329 CFG_VHT_CHANNEL_WIDTH_MIN,
Jeff Johnsone7245742012-09-05 17:12:55 -07002330 CFG_VHT_CHANNEL_WIDTH_MAX),
2331
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002332 REG_VARIABLE( CFG_VHT_ENABLE_RX_MCS_8_9, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002333 hdd_config_t, vhtRxMCS,
2334 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK,
2335 CFG_VHT_ENABLE_RX_MCS_8_9_DEFAULT,
2336 CFG_VHT_ENABLE_RX_MCS_8_9_MIN,
Jeff Johnsone7245742012-09-05 17:12:55 -07002337 CFG_VHT_ENABLE_RX_MCS_8_9_MAX),
2338
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002339 REG_VARIABLE( CFG_VHT_ENABLE_TX_MCS_8_9, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002340 hdd_config_t, vhtTxMCS,
2341 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK,
2342 CFG_VHT_ENABLE_TX_MCS_8_9_DEFAULT,
2343 CFG_VHT_ENABLE_TX_MCS_8_9_MIN,
Jeff Johnsone7245742012-09-05 17:12:55 -07002344 CFG_VHT_ENABLE_TX_MCS_8_9_MAX),
2345#endif
2346
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002347 REG_VARIABLE( CFG_ENABLE_FIRST_SCAN_2G_ONLY_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002348 hdd_config_t, enableFirstScan2GOnly,
2349 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2350 CFG_ENABLE_FIRST_SCAN_2G_ONLY_DEFAULT,
2351 CFG_ENABLE_FIRST_SCAN_2G_ONLY_MIN,
Jeff Johnsone7245742012-09-05 17:12:55 -07002352 CFG_ENABLE_FIRST_SCAN_2G_ONLY_MAX ),
2353
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002354 REG_VARIABLE( CFG_ENABLE_SKIP_DFS_IN_P2P_SEARCH_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002355 hdd_config_t, skipDfsChnlInP2pSearch,
2356 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2357 CFG_ENABLE_SKIP_DFS_IN_P2P_SEARCH_DEFAULT,
2358 CFG_ENABLE_SKIP_DFS_IN_P2P_SEARCH_MIN,
Jeff Johnsone7245742012-09-05 17:12:55 -07002359 CFG_ENABLE_SKIP_DFS_IN_P2P_SEARCH_MAX ),
2360
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002361 REG_VARIABLE( CFG_IGNORE_DYNAMIC_DTIM_IN_P2P_MODE_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002362 hdd_config_t, ignoreDynamicDtimInP2pMode,
2363 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2364 CFG_IGNORE_DYNAMIC_DTIM_IN_P2P_MODE_DEFAULT,
2365 CFG_IGNORE_DYNAMIC_DTIM_IN_P2P_MODE_MIN,
Jeff Johnsone7245742012-09-05 17:12:55 -07002366 CFG_IGNORE_DYNAMIC_DTIM_IN_P2P_MODE_MAX ),
2367
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002368 REG_VARIABLE( CFG_NUM_BUFF_ADVERT_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002369 hdd_config_t,numBuffAdvert ,
2370 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK,
2371 CFG_NUM_BUFF_ADVERT_DEFAULT,
2372 CFG_NUM_BUFF_ADVERT_MIN,
Madan Mohan Koyyalamudidd11eaf2012-11-02 16:04:21 -07002373 CFG_NUM_BUFF_ADVERT_MAX ),
Madan Mohan Koyyalamudi3f65e312012-11-06 15:31:12 -08002374
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002375 REG_VARIABLE( CFG_MCC_CONFIG_PARAM_NAME, WLAN_PARAM_Integer,
Madan Mohan Koyyalamudid5f04ca2012-11-06 15:51:26 -08002376 hdd_config_t, configMccParam,
2377 VAR_FLAGS_OPTIONAL,
2378 CFG_MCC_CONFIG_PARAM_DEFAULT,
2379 CFG_MCC_CONFIG_PARAM_MIN,
2380 CFG_MCC_CONFIG_PARAM_MAX ),
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002381 REG_VARIABLE( CFG_ENABLE_RX_STBC, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002382 hdd_config_t, enableRxSTBC,
2383 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2384 CFG_ENABLE_RX_STBC_DEFAULT,
2385 CFG_ENABLE_RX_STBC_MIN,
Pratik Bhalgat6bfd1422012-11-22 17:09:40 +05302386 CFG_ENABLE_RX_STBC_MAX ),
Mohit Khanna698ba2a2012-12-04 15:08:18 -08002387#ifdef FEATURE_WLAN_TDLS
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002388 REG_VARIABLE( CFG_TDLS_SUPPORT_ENABLE, WLAN_PARAM_Integer,
Mohit Khanna698ba2a2012-12-04 15:08:18 -08002389 hdd_config_t, fEnableTDLSSupport,
2390 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2391 CFG_TDLS_SUPPORT_ENABLE_DEFAULT,
2392 CFG_TDLS_SUPPORT_ENABLE_MIN,
2393 CFG_TDLS_SUPPORT_ENABLE_MAX ),
Hoonki Leebf870f32013-01-19 15:53:30 +05302394
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002395 REG_VARIABLE( CFG_TDLS_IMPLICIT_TRIGGER, WLAN_PARAM_Integer,
Hoonki Leebf870f32013-01-19 15:53:30 +05302396 hdd_config_t, fEnableTDLSImplicitTrigger,
2397 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2398 CFG_TDLS_IMPLICIT_TRIGGER_DEFAULT,
2399 CFG_TDLS_IMPLICIT_TRIGGER_MIN,
2400 CFG_TDLS_IMPLICIT_TRIGGER_MAX ),
2401
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002402 REG_VARIABLE( CFG_TDLS_TX_STATS_PERIOD, WLAN_PARAM_Integer,
Hoonki Leebf870f32013-01-19 15:53:30 +05302403 hdd_config_t, fTDLSTxStatsPeriod,
2404 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2405 CFG_TDLS_TX_STATS_PERIOD_DEFAULT,
2406 CFG_TDLS_TX_STATS_PERIOD_MIN,
2407 CFG_TDLS_TX_STATS_PERIOD_MAX ),
2408
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002409 REG_VARIABLE( CFG_TDLS_TX_PACKET_THRESHOLD, WLAN_PARAM_Integer,
Hoonki Leebf870f32013-01-19 15:53:30 +05302410 hdd_config_t, fTDLSTxPacketThreshold,
2411 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2412 CFG_TDLS_TX_PACKET_THRESHOLD_DEFAULT,
2413 CFG_TDLS_TX_PACKET_THRESHOLD_MIN,
2414 CFG_TDLS_TX_PACKET_THRESHOLD_MAX ),
2415
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002416 REG_VARIABLE( CFG_TDLS_DISCOVERY_PERIOD, WLAN_PARAM_Integer,
Hoonki Leebf870f32013-01-19 15:53:30 +05302417 hdd_config_t, fTDLSDiscoveryPeriod,
2418 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2419 CFG_TDLS_DISCOVERY_PERIOD_DEFAULT,
2420 CFG_TDLS_DISCOVERY_PERIOD_MIN,
2421 CFG_TDLS_DISCOVERY_PERIOD_MAX ),
2422
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002423 REG_VARIABLE( CFG_TDLS_MAX_DISCOVERY_ATTEMPT, WLAN_PARAM_Integer,
Hoonki Leebf870f32013-01-19 15:53:30 +05302424 hdd_config_t, fTDLSMaxDiscoveryAttempt,
2425 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2426 CFG_TDLS_MAX_DISCOVERY_ATTEMPT_DEFAULT,
2427 CFG_TDLS_MAX_DISCOVERY_ATTEMPT_MIN,
2428 CFG_TDLS_MAX_DISCOVERY_ATTEMPT_MAX ),
2429
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002430 REG_VARIABLE( CFG_TDLS_IDLE_TIMEOUT, WLAN_PARAM_Integer,
Chilam Ng01120412013-02-19 18:32:21 -08002431 hdd_config_t, fTDLSIdleTimeout,
Hoonki Leebf870f32013-01-19 15:53:30 +05302432 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
Chilam Ng01120412013-02-19 18:32:21 -08002433 CFG_TDLS_IDLE_TIMEOUT_DEFAULT,
2434 CFG_TDLS_IDLE_TIMEOUT_MIN,
2435 CFG_TDLS_IDLE_TIMEOUT_MAX ),
2436
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002437 REG_VARIABLE( CFG_TDLS_IDLE_PACKET_THRESHOLD, WLAN_PARAM_Integer,
Chilam Ng01120412013-02-19 18:32:21 -08002438 hdd_config_t, fTDLSIdlePacketThreshold,
2439 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2440 CFG_TDLS_IDLE_PACKET_THRESHOLD_DEFAULT,
2441 CFG_TDLS_IDLE_PACKET_THRESHOLD_MIN,
2442 CFG_TDLS_IDLE_PACKET_THRESHOLD_MAX ),
Hoonki Leebf870f32013-01-19 15:53:30 +05302443
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002444 REG_VARIABLE( CFG_TDLS_RSSI_HYSTERESIS, WLAN_PARAM_Integer,
Chilam Ng01120412013-02-19 18:32:21 -08002445 hdd_config_t, fTDLSRSSIHysteresis,
Hoonki Leebf870f32013-01-19 15:53:30 +05302446 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2447 CFG_TDLS_RSSI_HYSTERESIS_DEFAULT,
2448 CFG_TDLS_RSSI_HYSTERESIS_MIN,
2449 CFG_TDLS_RSSI_HYSTERESIS_MAX ),
Chilam Ng01120412013-02-19 18:32:21 -08002450
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002451 REG_VARIABLE( CFG_TDLS_RSSI_TRIGGER_THRESHOLD, WLAN_PARAM_SignedInteger,
Chilam Ng01120412013-02-19 18:32:21 -08002452 hdd_config_t, fTDLSRSSITriggerThreshold,
2453 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2454 CFG_TDLS_RSSI_TRIGGER_THRESHOLD_DEFAULT,
2455 CFG_TDLS_RSSI_TRIGGER_THRESHOLD_MIN,
2456 CFG_TDLS_RSSI_TRIGGER_THRESHOLD_MAX ),
2457
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002458 REG_VARIABLE( CFG_TDLS_RSSI_TEARDOWN_THRESHOLD, WLAN_PARAM_SignedInteger,
Chilam Ng01120412013-02-19 18:32:21 -08002459 hdd_config_t, fTDLSRSSITeardownThreshold,
2460 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2461 CFG_TDLS_RSSI_TEARDOWN_THRESHOLD_DEFAULT,
2462 CFG_TDLS_RSSI_TEARDOWN_THRESHOLD_MIN,
2463 CFG_TDLS_RSSI_TEARDOWN_THRESHOLD_MAX ),
Gopichand Nakkala79ff85d2013-05-27 17:05:29 +05302464
2465REG_VARIABLE( CFG_TDLS_QOS_WMM_UAPSD_MASK_NAME , WLAN_PARAM_HexInteger,
2466 hdd_config_t, fTDLSUapsdMask,
2467 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2468 CFG_TDLS_QOS_WMM_UAPSD_MASK_DEFAULT,
2469 CFG_TDLS_QOS_WMM_UAPSD_MASK_MIN,
2470 CFG_TDLS_QOS_WMM_UAPSD_MASK_MAX ),
2471
2472REG_VARIABLE( CFG_TDLS_BUFFER_STA_SUPPORT_ENABLE, WLAN_PARAM_Integer,
2473 hdd_config_t, fEnableTDLSBufferSta,
2474 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2475 CFG_TDLS_BUFFER_STA_SUPPORT_ENABLE_DEFAULT,
2476 CFG_TDLS_BUFFER_STA_SUPPORT_ENABLE_MIN,
2477 CFG_TDLS_BUFFER_STA_SUPPORT_ENABLE_MAX ),
2478
Naresh Jayaramf73f3762014-02-04 16:13:20 +05302479REG_VARIABLE( CFG_TDLS_OFF_CHANNEL_SUPPORT_ENABLE, WLAN_PARAM_Integer,
2480 hdd_config_t, fEnableTDLSOffChannel,
2481 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2482 CFG_TDLS_OFF_CHANNEL_SUPPORT_ENABLE_DEFAULT,
2483 CFG_TDLS_OFF_CHANNEL_SUPPORT_ENABLE_MIN,
2484 CFG_TDLS_OFF_CHANNEL_SUPPORT_ENABLE_MAX ),
2485
Gopichand Nakkala79ff85d2013-05-27 17:05:29 +05302486REG_VARIABLE( CFG_TDLS_PUAPSD_INACTIVITY_TIME, WLAN_PARAM_Integer,
2487 hdd_config_t, fTDLSPuapsdInactivityTimer,
2488 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2489 CFG_TDLS_PUAPSD_INACTIVITY_TIME_DEFAULT,
2490 CFG_TDLS_PUAPSD_INACTIVITY_TIME_MIN,
2491 CFG_TDLS_PUAPSD_INACTIVITY_TIME_MAX ),
2492
2493REG_VARIABLE( CFG_TDLS_PUAPSD_RX_FRAME_THRESHOLD, WLAN_PARAM_Integer,
2494 hdd_config_t, fTDLSRxFrameThreshold,
2495 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2496 CFG_TDLS_PUAPSD_RX_FRAME_THRESHOLD_DEFAULT,
2497 CFG_TDLS_PUAPSD_RX_FRAME_THRESHOLD_MIN,
2498 CFG_TDLS_PUAPSD_RX_FRAME_THRESHOLD_MAX ),
Sunil Dutt41de4e22013-11-14 18:09:02 +05302499
2500REG_VARIABLE( CFG_TDLS_EXTERNAL_CONTROL, WLAN_PARAM_Integer,
2501 hdd_config_t, fTDLSExternalControl,
2502 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2503 CFG_TDLS_EXTERNAL_CONTROL_DEFAULT,
2504 CFG_TDLS_EXTERNAL_CONTROL_MIN,
2505 CFG_TDLS_EXTERNAL_CONTROL_MAX ),
Mohit Khanna698ba2a2012-12-04 15:08:18 -08002506#endif
Madan Mohan Koyyalamudi0d40e662012-12-07 14:24:14 -08002507
Gopichand Nakkala976e3252013-01-03 15:45:56 -08002508#ifdef WLAN_SOFTAP_VSTA_FEATURE
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002509 REG_VARIABLE( CFG_VSTA_SUPPORT_ENABLE, WLAN_PARAM_Integer,
Gopichand Nakkala976e3252013-01-03 15:45:56 -08002510 hdd_config_t, fEnableVSTASupport,
2511 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2512 CFG_VSTA_SUPPORT_ENABLE_DEFAULT,
2513 CFG_VSTA_SUPPORT_ENABLE_MIN,
2514 CFG_VSTA_SUPPORT_ENABLE_MAX ),
2515#endif
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002516 REG_VARIABLE( CFG_ENABLE_LPWR_IMG_TRANSITION_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002517 hdd_config_t, enableLpwrImgTransition,
2518 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2519 CFG_ENABLE_LPWR_IMG_TRANSITION_DEFAULT,
2520 CFG_ENABLE_LPWR_IMG_TRANSITION_MIN,
Madan Mohan Koyyalamudi0d40e662012-12-07 14:24:14 -08002521 CFG_ENABLE_LPWR_IMG_TRANSITION_MAX ),
2522
Yathish9f22e662012-12-10 14:21:35 -08002523#ifdef WLAN_ACTIVEMODE_OFFLOAD_FEATURE
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002524 REG_VARIABLE( CFG_ACTIVEMODE_OFFLOAD_ENABLE, WLAN_PARAM_Integer,
Yathish9f22e662012-12-10 14:21:35 -08002525 hdd_config_t, fEnableActiveModeOffload,
2526 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2527 CFG_ACTIVEMODE_OFFLOAD_ENABLE_DEFAULT,
2528 CFG_ACTIVEMODE_OFFLOAD_ENABLE_MIN,
2529 CFG_ACTIVEMODE_OFFLOAD_ENABLE_MAX ),
2530#endif
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002531 REG_VARIABLE( CFG_ENABLE_LPWR_IMG_TRANSITION_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002532 hdd_config_t, enableLpwrImgTransition,
2533 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2534 CFG_ENABLE_LPWR_IMG_TRANSITION_DEFAULT,
2535 CFG_ENABLE_LPWR_IMG_TRANSITION_MIN,
2536 CFG_ENABLE_LPWR_IMG_TRANSITION_MAX ),
2537
Sandeep Puligilla2b6dc632012-12-17 14:44:16 -08002538
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002539 REG_VARIABLE( CFG_SCAN_AGING_PARAM_NAME, WLAN_PARAM_Integer,
Sandeep Puligilla2b6dc632012-12-17 14:44:16 -08002540 hdd_config_t, scanAgingTimeout,
2541 VAR_FLAGS_OPTIONAL,
2542 CFG_SCAN_AGING_PARAM_DEFAULT,
2543 CFG_SCAN_AGING_PARAM_MIN,
2544 CFG_SCAN_AGING_PARAM_MAX ),
Gopichand Nakkalab2d2c312013-01-04 11:41:02 -08002545
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002546 REG_VARIABLE( CFG_TX_LDPC_ENABLE_FEATURE, WLAN_PARAM_Integer,
Gopichand Nakkalab2d2c312013-01-04 11:41:02 -08002547 hdd_config_t, enableTxLdpc,
2548 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2549 CFG_TX_LDPC_ENABLE_FEATURE_DEFAULT,
2550 CFG_TX_LDPC_ENABLE_FEATURE_MIN,
2551 CFG_TX_LDPC_ENABLE_FEATURE_MAX ),
2552
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002553 REG_VARIABLE( CFG_ENABLE_MCC_ADATIVE_SCHEDULER_ENABLED_NAME, WLAN_PARAM_Integer,
Madan Mohan Koyyalamudi69b34182013-01-16 08:51:40 +05302554 hdd_config_t, enableMCCAdaptiveScheduler,
2555 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2556 CFG_ENABLE_MCC_ADATIVE_SCHEDULER_ENABLED_DEFAULT,
2557 CFG_ENABLE_MCC_ADATIVE_SCHEDULER_ENABLED_MIN,
2558 CFG_ENABLE_MCC_ADATIVE_SCHEDULER_ENABLED_MAX ),
2559
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002560 REG_VARIABLE( CFG_ANDRIOD_POWER_SAVE_NAME, WLAN_PARAM_Integer,
Madan Mohan Koyyalamudi69b34182013-01-16 08:51:40 +05302561 hdd_config_t, isAndroidPsEn,
2562 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2563 CFG_ANDRIOD_POWER_SAVE_DEFAULT,
2564 CFG_ANDRIOD_POWER_SAVE_MIN,
2565 CFG_ANDRIOD_POWER_SAVE_MAX),
2566
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002567 REG_VARIABLE( CFG_IBSS_ADHOC_CHANNEL_5GHZ_NAME, WLAN_PARAM_Integer,
Shailender Karmuchia734f332013-04-19 14:02:48 -07002568 hdd_config_t, AdHocChannel5G,
2569 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2570 CFG_IBSS_ADHOC_CHANNEL_5GHZ_DEFAULT,
2571 CFG_IBSS_ADHOC_CHANNEL_5GHZ_MIN,
2572 CFG_IBSS_ADHOC_CHANNEL_5GHZ_MAX),
2573
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002574 REG_VARIABLE( CFG_IBSS_ADHOC_CHANNEL_24GHZ_NAME, WLAN_PARAM_Integer,
Shailender Karmuchia734f332013-04-19 14:02:48 -07002575 hdd_config_t, AdHocChannel24G,
2576 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2577 CFG_IBSS_ADHOC_CHANNEL_24GHZ_DEFAULT,
2578 CFG_IBSS_ADHOC_CHANNEL_24GHZ_MIN,
2579 CFG_IBSS_ADHOC_CHANNEL_24GHZ_MAX),
2580
2581
Shailender Karmuchi08f87c22013-01-17 12:51:24 -08002582#ifdef WLAN_FEATURE_11AC
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002583 REG_VARIABLE( CFG_VHT_SU_BEAMFORMEE_CAP_FEATURE, WLAN_PARAM_Integer,
Shailender Karmuchi08f87c22013-01-17 12:51:24 -08002584 hdd_config_t, enableTxBF,
2585 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2586 CFG_VHT_SU_BEAMFORMEE_CAP_FEATURE_DEFAULT,
2587 CFG_VHT_SU_BEAMFORMEE_CAP_FEATURE_MIN,
2588 CFG_VHT_SU_BEAMFORMEE_CAP_FEATURE_MAX ),
Shailender Karmuchicc3fe442013-02-16 18:18:33 -08002589
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002590 REG_VARIABLE( CFG_VHT_CSN_BEAMFORMEE_ANT_SUPPORTED, WLAN_PARAM_Integer,
Shailender Karmuchicc3fe442013-02-16 18:18:33 -08002591 hdd_config_t, txBFCsnValue,
2592 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2593 CFG_VHT_CSN_BEAMFORMEE_ANT_SUPPORTED_DEFAULT,
2594 CFG_VHT_CSN_BEAMFORMEE_ANT_SUPPORTED_MIN,
2595 CFG_VHT_CSN_BEAMFORMEE_ANT_SUPPORTED_MAX ),
2596
Shailender Karmuchi08f87c22013-01-17 12:51:24 -08002597#endif
Madan Mohan Koyylamudi64267f72013-02-05 14:07:08 +05302598
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002599 REG_VARIABLE( CFG_SAP_ALLOW_ALL_CHANNEL_PARAM_NAME, WLAN_PARAM_Integer,
Madan Mohan Koyylamudi64267f72013-02-05 14:07:08 +05302600 hdd_config_t, sapAllowAllChannel,
2601 VAR_FLAGS_OPTIONAL,
2602 CFG_SAP_ALLOW_ALL_CHANNEL_PARAM_DEFAULT,
2603 CFG_SAP_ALLOW_ALL_CHANNEL_PARAM_MIN,
2604 CFG_SAP_ALLOW_ALL_CHANNEL_PARAM_MAX ),
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002605
Leela V Kiran Kumar Reddy Chiralab1f7d342013-02-11 00:27:02 -08002606#ifdef WLAN_FEATURE_11AC
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002607 REG_VARIABLE( CFG_DISABLE_LDPC_WITH_TXBF_AP, WLAN_PARAM_Integer,
Leela V Kiran Kumar Reddy Chiralab1f7d342013-02-11 00:27:02 -08002608 hdd_config_t, disableLDPCWithTxbfAP,
2609 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2610 CFG_DISABLE_LDPC_WITH_TXBF_AP_DEFAULT,
2611 CFG_DISABLE_LDPC_WITH_TXBF_AP_MIN,
2612 CFG_DISABLE_LDPC_WITH_TXBF_AP_MAX ),
2613#endif
Tushnim Bhattacharyya9cdf6082013-04-21 16:33:30 -07002614
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002615 REG_VARIABLE_STRING( CFG_LIST_OF_NON_DFS_COUNTRY_CODE, WLAN_PARAM_String,
Tushnim Bhattacharyya9cdf6082013-04-21 16:33:30 -07002616 hdd_config_t, listOfNonDfsCountryCode,
2617 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2618 (void *)CFG_LIST_OF_NON_DFS_COUNTRY_CODE_DEFAULT),
2619
Gopichand Nakkalae620d5a2013-04-26 05:45:57 -07002620 REG_DYNAMIC_VARIABLE( CFG_ENABLE_SSR, WLAN_PARAM_Integer,
2621 hdd_config_t, enableSSR,
2622 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2623 CFG_ENABLE_SSR_DEFAULT,
2624 CFG_ENABLE_SSR_MIN,
2625 CFG_ENABLE_SSR_MAX,
2626 cbNotifySetEnableSSR, 0 ),
Gopichand Nakkaladacbcb52013-04-18 16:41:54 +05302627
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002628 REG_VARIABLE_STRING( CFG_LIST_OF_NON_11AC_COUNTRY_CODE, WLAN_PARAM_String,
Gopichand Nakkaladacbcb52013-04-18 16:41:54 +05302629 hdd_config_t, listOfNon11acCountryCode,
2630 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2631 (void *)CFG_LIST_OF_NON_11AC_COUNTRY_CODE_DEFAULT),
2632
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002633 REG_VARIABLE(CFG_MAX_MEDIUM_TIME, WLAN_PARAM_Integer,
Gopichand Nakkala42bc89e2013-05-27 12:49:09 +05302634 hdd_config_t, cfgMaxMediumTime,
2635 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2636 CFG_MAX_MEDIUM_TIME_STADEFAULT,
2637 CFG_MAX_MEDIUM_TIME_STAMIN,
2638 CFG_MAX_MEDIUM_TIME_STAMAX ),
2639
Leo Chang64d68bc2013-06-04 15:40:52 -07002640 REG_VARIABLE( CFG_ENABLE_TRAFFIC_MONITOR, WLAN_PARAM_Integer,
2641 hdd_config_t, enableTrafficMonitor,
2642 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2643 CFG_ENABLE_TRAFFIC_MONITOR_DEFAULT,
2644 CFG_ENABLE_TRAFFIC_MONITOR_MIN,
2645 CFG_ENABLE_TRAFFIC_MONITOR_MAX),
2646
2647 REG_VARIABLE( CFG_TRAFFIC_IDLE_TIMEOUT, WLAN_PARAM_Integer,
2648 hdd_config_t, trafficIdleTimeout,
2649 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2650 CFG_TRAFFIC_IDLE_TIMEOUT_DEFAULT,
2651 CFG_TRAFFIC_IDLE_TIMEOUT_MIN,
2652 CFG_TRAFFIC_IDLE_TIMEOUT_MAX),
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002653
2654#ifdef WLAN_FEATURE_11AC
2655 REG_VARIABLE( CFG_ENABLE_VHT_FOR_24GHZ_NAME, WLAN_PARAM_Integer,
2656 hdd_config_t, enableVhtFor24GHzBand,
2657 VAR_FLAGS_OPTIONAL,
2658 CFG_ENABLE_VHT_FOR_24GHZ_DEFAULT,
2659 CFG_ENABLE_VHT_FOR_24GHZ_MIN,
2660 CFG_ENABLE_VHT_FOR_24GHZ_MAX),
2661#endif
Gopichand Nakkala154bda22013-06-11 17:41:22 +05302662
2663 REG_VARIABLE( CFG_SCAN_OFFLOAD_NAME, WLAN_PARAM_Integer,
2664 hdd_config_t, fScanOffload,
2665 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2666 CFG_SCAN_OFFLOAD_DEFAULT,
2667 CFG_SCAN_OFFLOAD_DISABLE,
2668 CFG_SCAN_OFFLOAD_ENABLE ),
Srinivas Girigowda830bbd02013-06-13 19:44:16 -07002669
2670#ifdef WLAN_FEATURE_ROAM_SCAN_OFFLOAD
2671 REG_DYNAMIC_VARIABLE( CFG_ENABLE_FAST_ROAM_IN_CONCURRENCY, WLAN_PARAM_Integer,
2672 hdd_config_t, bFastRoamInConIniFeatureEnabled,
2673 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2674 CFG_ENABLE_FAST_ROAM_IN_CONCURRENCY_DEFAULT,
2675 CFG_ENABLE_FAST_ROAM_IN_CONCURRENCY_MIN,
2676 CFG_ENABLE_FAST_ROAM_IN_CONCURRENCY_MAX,
2677 cbNotifySetEnableFastRoamInConcurrency, 0 ),
2678#endif
2679
Sudhir Sattayappa Kohallida1be202013-07-11 12:04:30 -07002680 REG_VARIABLE( CFG_ENABLE_ADAPT_RX_DRAIN_NAME, WLAN_PARAM_Integer,
2681 hdd_config_t, fEnableAdaptRxDrain,
2682 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK ,
2683 CFG_ENABLE_ADAPT_RX_DRAIN_DEFAULT,
2684 CFG_ENABLE_ADAPT_RX_DRAIN_MIN,
2685 CFG_ENABLE_ADAPT_RX_DRAIN_MAX),
2686
Sudhir Sattayappa Kohalli37620692013-08-05 14:02:26 -07002687 REG_VARIABLE( CFG_DYNAMIC_SPLIT_SCAN_NAME, WLAN_PARAM_Integer,
2688 hdd_config_t, dynSplitscan,
2689 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2690 CFG_DYNAMIC_SPLIT_SCAN_DEFAULT,
2691 CFG_DYNAMIC_SPLIT_SCAN_MIN,
2692 CFG_DYNAMIC_SPLIT_SCAN_MAX ),
2693
2694 REG_VARIABLE( CFG_SPLIT_SCAN_TRAFFIC_MONITOR_THRSHLD_NAME, WLAN_PARAM_Integer,
2695 hdd_config_t, txRxThresholdForSplitScan,
2696 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2697 CFG_SPLIT_SCAN_TRAFFIC_MONITOR_THRSHLD_DEFAULT,
2698 CFG_SPLIT_SCAN_TRAFFIC_MONITOR_THRSHLD_MIN,
2699 CFG_SPLIT_SCAN_TRAFFIC_MONITOR_THRSHLD_MAX ),
2700
2701 REG_VARIABLE( CFG_SPLIT_SCAN_TRAFFIC_MONITOR_TIMER_NAME, WLAN_PARAM_Integer,
2702 hdd_config_t, trafficMntrTmrForSplitScan,
2703 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2704 CFG_SPLIT_SCAN_TRAFFIC_MONITOR_TIMER_DEFAULT,
2705 CFG_SPLIT_SCAN_TRAFFIC_MONITOR_TIMER_MIN,
2706 CFG_SPLIT_SCAN_TRAFFIC_MONITOR_TIMER_MAX ),
2707
Yue Ma0fd23872013-08-01 15:56:47 -07002708 REG_VARIABLE( CFG_FLEX_CONNECT_POWER_FACTOR_NAME, WLAN_PARAM_Integer,
2709 hdd_config_t, flexConnectPowerFactor,
2710 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_MINMAX,
2711 CFG_FLEX_CONNECT_POWER_FACTOR_DEFAULT,
2712 CFG_FLEX_CONNECT_POWER_FACTOR_MIN,
2713 CFG_FLEX_CONNECT_POWER_FACTOR_MAX ),
2714
Ravi Joshid2ca7c42013-07-23 08:37:49 -07002715 REG_VARIABLE( CFG_ENABLE_HEART_BEAT_OFFLOAD, WLAN_PARAM_Integer,
2716 hdd_config_t, enableIbssHeartBeatOffload,
2717 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2718 CFG_ENABLE_HEART_BEAT_OFFLOAD_DEFAULT,
2719 CFG_ENABLE_HEART_BEAT_OFFLOAD_MIN,
2720 CFG_ENABLE_HEART_BEAT_OFFLOAD_MAX),
2721
Madan Mohan Koyyalamudica454572013-08-07 19:57:03 +05302722 REG_VARIABLE( CFG_ANTENNA_DIVERSITY_PARAM_NAME, WLAN_PARAM_Integer,
2723 hdd_config_t, antennaDiversity,
2724 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2725 CFG_ANTENNA_DIVERSITY_PARAM_DEFAULT,
2726 CFG_ANTENNA_DIVERSITY_PARAM_MIN,
2727 CFG_ANTENNA_DIVERSITY_PARAM_MAX),
Madan Mohan Koyyalamudid9383fd2013-08-13 09:27:30 +05302728
2729 REG_VARIABLE( CFG_ENABLE_SNR_MONITORING_NAME, WLAN_PARAM_Integer,
2730 hdd_config_t, fEnableSNRMonitoring,
2731 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK ,
2732 CFG_ENABLE_SNR_MONITORING_DEFAULT,
2733 CFG_ENABLE_SNR_MONITORING_MIN,
2734 CFG_ENABLE_SNR_MONITORING_MAX),
2735
Madan Mohan Koyyalamudi1d16f462013-08-27 16:25:34 +05302736#ifdef FEATURE_WLAN_SCAN_PNO
Hardik Kantilal Patel3dfd8792013-11-13 20:34:57 +05302737 REG_VARIABLE( CFG_PNO_SCAN_SUPPORT, WLAN_PARAM_Integer,
2738 hdd_config_t, configPNOScanSupport,
2739 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2740 CFG_PNO_SCAN_SUPPORT_DEFAULT,
2741 CFG_PNO_SCAN_SUPPORT_DISABLE,
2742 CFG_PNO_SCAN_SUPPORT_ENABLE),
2743
Madan Mohan Koyyalamudi1d16f462013-08-27 16:25:34 +05302744 REG_VARIABLE( CFG_PNO_SCAN_TIMER_REPEAT_VALUE, WLAN_PARAM_Integer,
2745 hdd_config_t, configPNOScanTimerRepeatValue,
2746 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2747 CFG_PNO_SCAN_TIMER_REPEAT_VALUE_DEFAULT,
2748 CFG_PNO_SCAN_TIMER_REPEAT_VALUE_MIN,
2749 CFG_PNO_SCAN_TIMER_REPEAT_VALUE_MAX),
2750#endif
krunal soni5afa96c2013-09-06 22:19:02 -07002751 REG_VARIABLE( CFG_AMSDU_SUPPORT_IN_AMPDU_NAME , WLAN_PARAM_Integer,
2752 hdd_config_t, isAmsduSupportInAMPDU,
2753 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2754 CFG_AMSDU_SUPPORT_IN_AMPDU_DEFAULT,
2755 CFG_AMSDU_SUPPORT_IN_AMPDU_MIN,
2756 CFG_AMSDU_SUPPORT_IN_AMPDU_MAX ),
Madan Mohan Koyyalamudi1d16f462013-08-27 16:25:34 +05302757
Srinivas Girigowda41c7c5f2013-10-21 19:01:38 -07002758 REG_VARIABLE( CFG_STRICT_5GHZ_PREF_BY_MARGIN , WLAN_PARAM_Integer,
2759 hdd_config_t, nSelect5GHzMargin,
2760 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2761 CFG_STRICT_5GHZ_PREF_BY_MARGIN_DEFAULT,
2762 CFG_STRICT_5GHZ_PREF_BY_MARGIN_MIN,
2763 CFG_STRICT_5GHZ_PREF_BY_MARGIN_MAX ),
2764
krunal sonie9002db2013-11-25 14:24:17 -08002765 REG_VARIABLE( CFG_COALESING_IN_IBSS_NAME , WLAN_PARAM_Integer,
2766 hdd_config_t, isCoalesingInIBSSAllowed,
2767 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2768 CFG_COALESING_IN_IBSS_DEFAULT,
2769 CFG_COALESING_IN_IBSS_MIN,
2770 CFG_COALESING_IN_IBSS_MAX ),
Kiet Lam4bbd3cb2013-11-07 20:03:49 +05302771
2772 REG_VARIABLE( CFG_DISABLE_ATH_NAME , WLAN_PARAM_Integer,
2773 hdd_config_t, cfgAthDisable,
2774 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2775 CFG_DISABLE_ATH_DEFAULT,
2776 CFG_DISABLE_ATH_MIN,
2777 CFG_DISABLE_ATH_MAX ),
c_hpothu6d7dc922013-12-02 12:36:41 +05302778 REG_VARIABLE(CFG_BTC_ACTIVE_WLAN_LEN_NAME, WLAN_PARAM_Integer,
2779 hdd_config_t, cfgBtcActiveWlanLen,
2780 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2781 CFG_BTC_ACTIVE_WLAN_LEN_DEFAULT,
2782 CFG_BTC_ACTIVE_WLAN_LEN_MIN,
2783 CFG_BTC_ACTIVE_WLAN_LEN_MAX ),
2784
2785 REG_VARIABLE(CFG_BTC_ACTIVE_BT_LEN_NAME, WLAN_PARAM_Integer,
2786 hdd_config_t, cfgBtcActiveBtLen,
2787 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2788 CFG_BTC_ACTIVE_BT_LEN_DEFAULT,
2789 CFG_BTC_ACTIVE_BT_LEN_MIN,
2790 CFG_BTC_ACTIVE_BT_LEN_MAX ),
2791
2792 REG_VARIABLE(CFG_BTC_SAP_ACTIVE_WLAN_LEN_NAME, WLAN_PARAM_Integer,
2793 hdd_config_t, cfgBtcSapActiveWlanLen,
2794 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2795 CFG_BTC_SAP_ACTIVE_WLAN_LEN_DEFAULT,
2796 CFG_BTC_SAP_ACTIVE_WLAN_LEN_MIN,
2797 CFG_BTC_SAP_ACTIVE_WLAN_LEN_MAX ),
2798
2799 REG_VARIABLE(CFG_BTC_SAP_ACTIVE_BT_LEN_NAME, WLAN_PARAM_Integer,
2800 hdd_config_t, cfgBtcSapActiveBtLen,
2801 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2802 CFG_BTC_SAP_ACTIVE_BT_LEN_DEFAULT,
2803 CFG_BTC_SAP_ACTIVE_BT_LEN_MIN,
2804 CFG_BTC_SAP_ACTIVE_BT_LEN_MAX ),
Arif Hussaind5218912013-12-05 01:10:55 -08002805
2806#ifdef MEMORY_DEBUG
2807 REG_VARIABLE(CFG_ENABLE_MEMORY_DEBUG_NAME, WLAN_PARAM_Integer,
2808 hdd_config_t, IsMemoryDebugSupportEnabled,
2809 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2810 CFG_ENABLE_MEMORY_DEBUG_DEFAULT,
2811 CFG_ENABLE_MEMORY_DEBUG_MIN,
2812 CFG_ENABLE_MEMORY_DEBUG_MAX ),
2813#endif
Jeff Johnson295189b2012-06-20 16:38:30 -07002814
Tushnim Bhattacharyya9889e792013-12-19 18:18:36 -08002815 REG_VARIABLE_STRING( CFG_OVERRIDE_COUNTRY_CODE, WLAN_PARAM_String,
2816 hdd_config_t, overrideCountryCode,
2817 VAR_FLAGS_OPTIONAL,
Kiet Lamaa8e15a2014-02-11 23:30:06 -08002818 (void *)CFG_OVERRIDE_COUNTRY_CODE_DEFAULT),
AnjaneeDevi Kapparapu50239e32014-01-07 18:09:33 +05302819
2820 REG_VARIABLE( CFG_ASD_PROBE_INTERVAL_NAME, WLAN_PARAM_Integer,
2821 hdd_config_t, gAsdProbeInterval,
2822 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2823 CFG_ASD_PROBE_INTERVAL_DEFAULT,
2824 CFG_ASD_PROBE_INTERVAL_MIN,
2825 CFG_ASD_PROBE_INTERVAL_MAX),
2826
2827 REG_VARIABLE( CFG_ASD_TRIGGER_THRESHOLD_NAME, WLAN_PARAM_Integer,
2828 hdd_config_t, gAsdTriggerThreshold,
2829 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2830 CFG_ASD_TRIGGER_THRESHOLD_DEFAULT,
2831 CFG_ASD_TRIGGER_THRESHOLD_MIN,
2832 CFG_ASD_TRIGGER_THRESHOLD_MAX),
2833
2834 REG_VARIABLE( CFG_ASD_RTT_RSSI_HYST_THRESHOLD_NAME, WLAN_PARAM_Integer,
2835 hdd_config_t, gAsdRTTRssiHystThreshold,
2836 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2837 CFG_ASD_RTT_RSSI_HYST_THRESHOLD_DEFAULT,
2838 CFG_ASD_RTT_RSSI_HYST_THRESHOLD_MIN,
2839 CFG_ASD_RTT_RSSI_HYST_THRESHOLD_MAX),
Leela Venkata Kiran Kumar Reddy Chirala22c159b2013-12-23 18:19:13 -08002840
2841 REG_VARIABLE( CFG_DEBUG_P2P_REMAIN_ON_CHANNEL_NAME, WLAN_PARAM_Integer,
2842 hdd_config_t, debugP2pRemainOnChannel,
2843 VAR_FLAGS_OPTIONAL,
2844 CFG_DEBUG_P2P_REMAIN_ON_CHANNEL_DEFAULT,
2845 CFG_DEBUG_P2P_REMAIN_ON_CHANNEL_MIN,
2846 CFG_DEBUG_P2P_REMAIN_ON_CHANNEL_MAX ),
2847
2848 REG_VARIABLE(CFG_CTS2S_DURING_BTC_SCO_NAME, WLAN_PARAM_Integer,
2849 hdd_config_t, cfgBtcCTS2SduringSCO,
2850 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2851 CFG_CTS2S_DURING_BTC_SCO_DEFAULT,
2852 CFG_CTS2S_DURING_BTC_SCO_MIN,
2853 CFG_CTS2S_DURING_BTC_SCO_MAX ),
Tushnim Bhattacharyyaa3ba5a52014-01-30 11:37:33 -08002854
2855 REG_VARIABLE( CFG_ENABLE_DEBUG_CONNECT_ISSUE, WLAN_PARAM_Integer,
2856 hdd_config_t, gEnableDebugLog,
2857 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2858 CFG_ENABLE_DEBUG_CONNECT_ISSUE_DEFAULT,
2859 CFG_ENABLE_DEBUG_CONNECT_ISSUE_MIN ,
2860 CFG_ENABLE_DEBUG_CONNECT_ISSUE_MAX),
Sandeep Puligilla04bb8fd2014-02-03 23:21:47 +05302861
2862 REG_VARIABLE(CFG_OBSS_HT40_SCAN_ACTIVE_DWELL_TIME_NAME, WLAN_PARAM_Integer,
2863 hdd_config_t, nOBSSScanActiveDwellTime,
2864 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2865 CFG_OBSS_HT40_SCAN_ACTIVE_DWELL_TIME_DEFAULT,
2866 CFG_OBSS_HT40_SCAN_ACTIVE_DWELL_TIME_MIN,
2867 CFG_OBSS_HT40_SCAN_ACTIVE_DWELL_TIME_MAX ),
2868
2869 REG_VARIABLE(CFG_OBSS_HT40_SCAN_PASSIVE_DWELL_TIME_NAME, WLAN_PARAM_Integer,
2870 hdd_config_t, nOBSSScanPassiveDwellTime,
2871 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2872 CFG_OBSS_HT40_SCAN_PASSIVE_DWELL_TIME_DEFAULT,
2873 CFG_OBSS_HT40_SCAN_PASSIVE_DWELL_TIME_MIN,
2874 CFG_OBSS_HT40_SCAN_PASSIVE_DWELL_TIME_MAX ),
2875
2876 REG_VARIABLE(CFG_OBSS_HT40_SCAN_WIDTH_TRIGGER_INTERVAL_NAME,
2877 WLAN_PARAM_Integer,
2878 hdd_config_t, nOBSSScanWidthTriggerInterval,
2879 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2880 CFG_OBSS_HT40_SCAN_WIDTH_TRIGGER_INTERVAL_DEFAULT,
2881 CFG_OBSS_HT40_SCAN_WIDTH_TRIGGER_INTERVAL_MIN,
2882 CFG_OBSS_HT40_SCAN_WIDTH_TRIGGER_INTERVAL_MAX ),
Kalikinkar dharad73a9bd2014-01-28 22:42:34 -08002883
2884 REG_VARIABLE( CFG_ENABLE_STRICT_REGULATORY_FOR_FCC_NAME, WLAN_PARAM_Integer,
2885 hdd_config_t, gEnableStrictRegulatoryForFCC,
2886 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2887 CFG_ENABLE_STRICT_REGULATORY_FOR_FCC_DEFAULT,
2888 CFG_ENABLE_STRICT_REGULATORY_FOR_FCC_MIN,
2889 CFG_ENABLE_STRICT_REGULATORY_FOR_FCC_MAX ),
2890
Tushnim Bhattacharyya9889e792013-12-19 18:18:36 -08002891};
2892
Jeff Johnson295189b2012-06-20 16:38:30 -07002893/*
2894 * This function returns a pointer to the character after the occurence
2895 * of a new line character. It also modifies the original string by replacing
2896 * the '\n' character with the null character.
2897 * Function returns NULL if no new line character was found before end of
2898 * string was reached
2899 */
2900static char* get_next_line(char* str)
2901{
2902 char c;
2903
2904 if( str == NULL || *str == '\0') {
2905 return NULL;
2906 }
2907
2908 c = *str;
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002909 while(c != '\n' && c != '\0' && c != 0xd) {
Jeff Johnson295189b2012-06-20 16:38:30 -07002910 str = str + 1;
2911 c = *str;
2912 }
2913
2914 if (c == '\0' ) {
2915 return NULL;
2916 }
2917 else
2918 {
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002919 *str = '\0';
Jeff Johnson295189b2012-06-20 16:38:30 -07002920 return (str+1);
2921 }
2922
2923 return NULL;
2924}
2925
2926// look for space. Ascii values to look are -
2927// 0x09 == horizontal tab
2928// 0x0a == Newline ("\n")
2929// 0x0b == vertical tab
2930// 0x0c == Newpage or feed form.
2931// 0x0d == carriage return (CR or "\r")
2932// Null ('\0') should not considered as space.
2933#define i_isspace(ch) (((ch) >= 0x09 && (ch) <= 0x0d) || (ch) == ' ')
2934
2935/*
2936 * This function trims any leading and trailing white spaces
2937 */
2938static char *i_trim(char *str)
2939
2940{
2941 char *ptr;
2942
2943 if(*str == '\0') return str;
2944
2945 /* Find the first non white-space*/
2946 for (ptr = str; i_isspace(*ptr); ptr++);
2947 if (*ptr == '\0')
2948 return str;
2949
2950 /* This is the new start of the string*/
2951 str = ptr;
2952
2953 /* Find the last non white-space */
2954 ptr += strlen(ptr) - 1;
2955 for (; ptr != str && i_isspace(*ptr); ptr--);
2956 /* Null terminate the following character */
2957 ptr[1] = '\0';
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002958
Jeff Johnson295189b2012-06-20 16:38:30 -07002959 return str;
2960}
2961
2962
2963//Structure to store each entry in qcom_cfg.ini file
2964typedef struct
2965{
2966 char *name;
2967 char *value;
2968}tCfgIniEntry;
2969
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002970static VOS_STATUS hdd_apply_cfg_ini( hdd_context_t * pHddCtx,
Jeff Johnson295189b2012-06-20 16:38:30 -07002971 tCfgIniEntry* iniTable, unsigned long entries);
2972
2973#ifdef WLAN_CFG_DEBUG
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002974void dump_cfg_ini (tCfgIniEntry* iniTable, unsigned long entries)
Jeff Johnson295189b2012-06-20 16:38:30 -07002975{
2976 unsigned long i;
2977
2978 for (i = 0; i < entries; i++) {
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002979 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "%s entry Name=[%s] value=[%s]",
Jeff Johnson295189b2012-06-20 16:38:30 -07002980 WLAN_INI_FILE, iniTable[i].name, iniTable[i].value);
2981 }
2982}
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002983#endif
Jeff Johnson295189b2012-06-20 16:38:30 -07002984
2985/*
2986 * This function reads the qcom_cfg.ini file and
2987 * parses each 'Name=Value' pair in the ini file
2988 */
2989VOS_STATUS hdd_parse_config_ini(hdd_context_t* pHddCtx)
2990{
2991 int status, i=0;
2992 /** Pointer for firmware image data */
2993 const struct firmware *fw = NULL;
Jeff Johnson4416a782013-03-25 14:17:50 -07002994 char *buffer, *line, *pTemp = NULL;
Jeff Johnson295189b2012-06-20 16:38:30 -07002995 size_t size;
2996 char *name, *value;
Madan Mohan Koyyalamudi729972c2012-10-21 12:39:24 -07002997 /* cfgIniTable is static to avoid excess stack usage */
2998 static tCfgIniEntry cfgIniTable[MAX_CFG_INI_ITEMS];
Jeff Johnson295189b2012-06-20 16:38:30 -07002999 VOS_STATUS vos_status = VOS_STATUS_SUCCESS;
3000
3001 memset(cfgIniTable, 0, sizeof(cfgIniTable));
3002
3003 status = request_firmware(&fw, WLAN_INI_FILE, pHddCtx->parent_dev);
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003004
Jeff Johnson295189b2012-06-20 16:38:30 -07003005 if(status)
3006 {
Arif Hussain6d2a3322013-11-17 19:50:10 -08003007 hddLog(VOS_TRACE_LEVEL_FATAL, "%s: request_firmware failed %d",__func__, status);
Jeff Johnson4416a782013-03-25 14:17:50 -07003008 vos_status = VOS_STATUS_E_FAILURE;
3009 goto config_exit;
Jeff Johnson295189b2012-06-20 16:38:30 -07003010 }
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003011 if(!fw || !fw->data || !fw->size)
Jeff Johnson295189b2012-06-20 16:38:30 -07003012 {
Arif Hussain6d2a3322013-11-17 19:50:10 -08003013 hddLog(VOS_TRACE_LEVEL_FATAL, "%s: %s download failed",
Madan Mohan Koyyalamudi87054ba2012-11-02 13:24:12 -07003014 __func__, WLAN_INI_FILE);
Jeff Johnson4416a782013-03-25 14:17:50 -07003015 vos_status = VOS_STATUS_E_FAILURE;
3016 goto config_exit;
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003017 }
Jeff Johnson295189b2012-06-20 16:38:30 -07003018
Jeff Johnson59a121e2013-11-30 09:46:08 -08003019 hddLog(LOG1, "%s: qcom_cfg.ini Size %zu", __func__, fw->size);
Jeff Johnson295189b2012-06-20 16:38:30 -07003020
3021 buffer = (char*)vos_mem_malloc(fw->size);
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003022
Jeff Johnson295189b2012-06-20 16:38:30 -07003023 if(NULL == buffer) {
Madan Mohan Koyyalamudi87054ba2012-11-02 13:24:12 -07003024 hddLog(VOS_TRACE_LEVEL_FATAL, "%s: kmalloc failure",__func__);
Jeff Johnson295189b2012-06-20 16:38:30 -07003025 release_firmware(fw);
3026 return VOS_STATUS_E_FAILURE;
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003027 }
Jeff Johnson295189b2012-06-20 16:38:30 -07003028 pTemp = buffer;
3029
3030 vos_mem_copy((void*)buffer,(void *)fw->data, fw->size);
3031 size = fw->size;
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003032
Jeff Johnson295189b2012-06-20 16:38:30 -07003033 while (buffer != NULL)
3034 {
3035 line = get_next_line(buffer);
3036 buffer = i_trim(buffer);
3037
3038 hddLog(LOG1, "%s: item", buffer);
3039
3040 if(strlen((char*)buffer) == 0 || *buffer == '#') {
3041 buffer = line;
3042 continue;
3043 }
3044 else if(strncmp(buffer, "END", 3) == 0 ) {
3045 break;
3046 }
3047 else
3048 {
3049 name = buffer;
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003050 while(*buffer != '=' && *buffer != '\0')
Jeff Johnson295189b2012-06-20 16:38:30 -07003051 buffer++;
3052 if(*buffer != '\0') {
3053 *buffer++ = '\0';
3054 i_trim(name);
3055 if(strlen (name) != 0) {
3056 buffer = i_trim(buffer);
3057 if(strlen(buffer)>0) {
3058 value = buffer;
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003059 while(!i_isspace(*buffer) && *buffer != '\0')
Jeff Johnson295189b2012-06-20 16:38:30 -07003060 buffer++;
3061 *buffer = '\0';
3062 cfgIniTable[i].name= name;
3063 cfgIniTable[i++].value= value;
3064 if(i >= MAX_CFG_INI_ITEMS) {
Arif Hussain6d2a3322013-11-17 19:50:10 -08003065 hddLog(LOGE,"%s: Number of items in %s > %d",
Madan Mohan Koyyalamudi87054ba2012-11-02 13:24:12 -07003066 __func__, WLAN_INI_FILE, MAX_CFG_INI_ITEMS);
Jeff Johnson295189b2012-06-20 16:38:30 -07003067 break;
3068 }
3069 }
3070 }
3071 }
3072 }
3073 buffer = line;
3074 }
3075
3076 //Loop through the registry table and apply all these configs
3077 vos_status = hdd_apply_cfg_ini(pHddCtx, cfgIniTable, i);
3078
Jeff Johnson4416a782013-03-25 14:17:50 -07003079config_exit:
Jeff Johnson295189b2012-06-20 16:38:30 -07003080 release_firmware(fw);
3081 vos_mem_free(pTemp);
3082 return vos_status;
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003083}
Jeff Johnson295189b2012-06-20 16:38:30 -07003084
3085
3086static void print_hdd_cfg(hdd_context_t *pHddCtx)
3087{
3088 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "*********Config values in HDD Adapter*******");
Jeff Johnson0299d0a2013-10-30 12:37:43 -07003089 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 -07003090 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [OperatingChannel] Value = [%u]",pHddCtx->cfg_ini->OperatingChannel);
3091 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [PowerUsageControl] Value = [%s]",pHddCtx->cfg_ini->PowerUsageControl);
3092 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [fIsImpsEnabled] Value = [%u]",pHddCtx->cfg_ini->fIsImpsEnabled);
3093 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 -07003094 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 -07003095 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 -08003096 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH,
3097 "Name = [gIbssBssid] Value =["MAC_ADDRESS_STR"]",
3098 MAC_ADDR_ARRAY(pHddCtx->cfg_ini->IbssBssid.bytes));
Jeff Johnson295189b2012-06-20 16:38:30 -07003099
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003100 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH,
Arif Hussaina7c8e412013-11-20 11:06:42 -08003101 "Name = [Intf0MacAddress] Value =["MAC_ADDRESS_STR"]",
3102 MAC_ADDR_ARRAY(pHddCtx->cfg_ini->intfMacAddr[0].bytes));
Jeff Johnson295189b2012-06-20 16:38:30 -07003103
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003104 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH,
Arif Hussaina7c8e412013-11-20 11:06:42 -08003105 "Name = [Intf1MacAddress] Value =["MAC_ADDRESS_STR"]",
3106 MAC_ADDR_ARRAY(pHddCtx->cfg_ini->intfMacAddr[1].bytes));
Jeff Johnson295189b2012-06-20 16:38:30 -07003107
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003108 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH,
Arif Hussaina7c8e412013-11-20 11:06:42 -08003109 "Name = [Intf2MacAddress] Value =["MAC_ADDRESS_STR"]",
3110 MAC_ADDR_ARRAY(pHddCtx->cfg_ini->intfMacAddr[2].bytes));
Jeff Johnson295189b2012-06-20 16:38:30 -07003111
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003112 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH,
Arif Hussaina7c8e412013-11-20 11:06:42 -08003113 "Name = [Intf3MacAddress] Value =["MAC_ADDRESS_STR"]",
3114 MAC_ADDR_ARRAY(pHddCtx->cfg_ini->intfMacAddr[3].bytes));
Jeff Johnson295189b2012-06-20 16:38:30 -07003115
Arif Hussain6d2a3322013-11-17 19:50:10 -08003116 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 -07003117
Arif Hussain6d2a3322013-11-17 19:50:10 -08003118 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [gAPCntryCode] Value =[%c%c%c]",
Jeff Johnson295189b2012-06-20 16:38:30 -07003119 pHddCtx->cfg_ini->apCntryCode[0],pHddCtx->cfg_ini->apCntryCode[1],
3120 pHddCtx->cfg_ini->apCntryCode[2]);
3121 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 -08003122 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 -07003123
Arif Hussain6d2a3322013-11-17 19:50:10 -08003124 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [gEnableListenMode] Value = [%u]", pHddCtx->cfg_ini->nEnableListenMode);
3125 VOS_TRACE (VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [gApProtection] value = [%u]",pHddCtx->cfg_ini->apProtection);
3126 VOS_TRACE (VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [gEnableApOBSSProt] value = [%u]",pHddCtx->cfg_ini->apOBSSProtEnabled);
3127 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 -08003128
Jeff Johnson0299d0a2013-10-30 12:37:43 -07003129 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [ChannelBondingMode] Value = [%u]",pHddCtx->cfg_ini->nChannelBondingMode24GHz);
3130 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [ChannelBondingMode] Value = [%u]",pHddCtx->cfg_ini->nChannelBondingMode5GHz);
3131 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 -07003132 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [WmmMode] Value = [%u] ",pHddCtx->cfg_ini->WmmMode);
3133 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [UapsdMask] Value = [0x%x] ",pHddCtx->cfg_ini->UapsdMask);
3134 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [PktClassificationBasis] Value = [%u] ",pHddCtx->cfg_ini->PktClassificationBasis);
3135 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [ImplicitQosIsEnabled] Value = [%u]",(int)pHddCtx->cfg_ini->bImplicitQosEnabled);
3136
Jeff Johnson0299d0a2013-10-30 12:37:43 -07003137 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [InfraUapsdVoSrvIntv] Value = [%u] ",pHddCtx->cfg_ini->InfraUapsdVoSrvIntv);
3138 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 -07003139
Jeff Johnson0299d0a2013-10-30 12:37:43 -07003140 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [InfraUapsdViSrvIntv] Value = [%u] ",pHddCtx->cfg_ini->InfraUapsdViSrvIntv);
3141 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 -07003142
Jeff Johnson0299d0a2013-10-30 12:37:43 -07003143 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [InfraUapsdBeSrvIntv] Value = [%u] ",pHddCtx->cfg_ini->InfraUapsdBeSrvIntv);
3144 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 -07003145
Jeff Johnson0299d0a2013-10-30 12:37:43 -07003146 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [InfraUapsdBkSrvIntv] Value = [%u] ",pHddCtx->cfg_ini->InfraUapsdBkSrvIntv);
3147 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 -07003148#ifdef FEATURE_WLAN_CCX
Jeff Johnson0299d0a2013-10-30 12:37:43 -07003149 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [InfraInactivityInterval] Value = [%u] ",pHddCtx->cfg_ini->InfraInactivityInterval);
3150 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [CcxEnabled] Value = [%u] ",pHddCtx->cfg_ini->isCcxIniFeatureEnabled);
3151 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [FastTransitionEnabled] Value = [%u] ",pHddCtx->cfg_ini->isFastTransitionEnabled);
3152 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 -08003153#endif
Jeff Johnson04dd8a82012-06-29 20:41:40 -07003154#ifdef FEATURE_WLAN_LFR
Jeff Johnson0299d0a2013-10-30 12:37:43 -07003155 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [FastRoamEnabled] Value = [%u] ",pHddCtx->cfg_ini->isFastRoamIniFeatureEnabled);
Kiet Lamaa8e15a2014-02-11 23:30:06 -08003156 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [MAWCEnabled] Value = [%u] ",pHddCtx->cfg_ini->MAWCEnabled);
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003157#endif
Jeff Johnson43971f52012-07-17 12:26:56 -07003158#if defined (WLAN_FEATURE_VOWIFI_11R) || defined (FEATURE_WLAN_CCX) || defined(FEATURE_WLAN_LFR)
Jeff Johnson0299d0a2013-10-30 12:37:43 -07003159 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [RoamRssiDiff] Value = [%u] ",pHddCtx->cfg_ini->RoamRssiDiff);
3160 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [ImmediateRoamRssiDiff] Value = [%u] ",pHddCtx->cfg_ini->nImmediateRoamRssiDiff);
3161 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 -07003162#endif
Srinivas Girigowdabbd16eb2013-03-21 12:34:46 -07003163#ifdef FEATURE_WLAN_OKC
Jeff Johnson0299d0a2013-10-30 12:37:43 -07003164 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 -07003165#endif
Jeff Johnson295189b2012-06-20 16:38:30 -07003166 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [InfraDirAcVo] Value = [%u] ",pHddCtx->cfg_ini->InfraDirAcVo);
3167 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 -07003168 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [InfraMeanDataRateAcVo] Value = [0x%x] ",pHddCtx->cfg_ini->InfraMeanDataRateAcVo);
3169 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 -07003170 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [InfraSbaAcVo] Value = [0x%x] ",pHddCtx->cfg_ini->InfraSbaAcVo);
3171
3172 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [InfraDirAcVi] Value = [%u] ",pHddCtx->cfg_ini->InfraDirAcVi);
3173 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 -07003174 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [InfraMeanDataRateAcVi] Value = [0x%x] ",pHddCtx->cfg_ini->InfraMeanDataRateAcVi);
3175 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 -07003176 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [InfraSbaAcVi] Value = [0x%x] ",pHddCtx->cfg_ini->InfraSbaAcVi);
3177
3178 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [InfraDirAcBe] Value = [%u] ",pHddCtx->cfg_ini->InfraDirAcBe);
3179 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 -07003180 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [InfraMeanDataRateAcBe] Value = [0x%x] ",pHddCtx->cfg_ini->InfraMeanDataRateAcBe);
3181 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 -07003182 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [InfraSbaAcBe] Value = [0x%x] ",pHddCtx->cfg_ini->InfraSbaAcBe);
3183
3184 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [InfraDirAcBk] Value = [%u] ",pHddCtx->cfg_ini->InfraDirAcBk);
3185 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 -07003186 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [InfraMeanDataRateAcBk] Value = [0x%x] ",pHddCtx->cfg_ini->InfraMeanDataRateAcBk);
3187 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 -07003188 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [InfraSbaAcBk] Value = [0x%x] ",pHddCtx->cfg_ini->InfraSbaAcBk);
3189
3190 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [WfqBkWeight] Value = [%u] ",pHddCtx->cfg_ini->WfqBkWeight);
3191 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [WfqBeWeight] Value = [%u] ",pHddCtx->cfg_ini->WfqBeWeight);
3192 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [WfqViWeight] Value = [%u] ",pHddCtx->cfg_ini->WfqViWeight);
3193 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 -07003194 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 -08003195 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [BkReorderAgingTime] Value = [%u] ",pHddCtx->cfg_ini->BkReorderAgingTime);
3196 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [BeReorderAgingTime] Value = [%u] ",pHddCtx->cfg_ini->BeReorderAgingTime);
3197 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [ViReorderAgingTime] Value = [%u] ",pHddCtx->cfg_ini->ViReorderAgingTime);
3198 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 -07003199 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [mcastBcastFilterSetting] Value = [%u] ",pHddCtx->cfg_ini->mcastBcastFilterSetting);
3200 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 -08003201#ifdef WLAN_FEATURE_VOWIFI_11R
Jeff Johnson0299d0a2013-10-30 12:37:43 -07003202 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 -07003203#endif
3204
3205#ifdef WLAN_FEATURE_NEIGHBOR_ROAMING
Jeff Johnson0299d0a2013-10-30 12:37:43 -07003206 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [nNeighborReassocRssiThreshold] Value = [%u] ",pHddCtx->cfg_ini->nNeighborReassocRssiThreshold);
3207 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [nNeighborLookupRssiThreshold] Value = [%u] ",pHddCtx->cfg_ini->nNeighborLookupRssiThreshold);
3208 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [nNeighborScanMinChanTime] Value = [%u] ",pHddCtx->cfg_ini->nNeighborScanMinChanTime);
3209 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [nNeighborScanMaxChanTime] Value = [%u] ",pHddCtx->cfg_ini->nNeighborScanMaxChanTime);
3210 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [nMaxNeighborRetries] Value = [%u] ",pHddCtx->cfg_ini->nMaxNeighborReqTries);
3211 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [nNeighborScanPeriod] Value = [%u] ",pHddCtx->cfg_ini->nNeighborScanPeriod);
3212 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [nNeighborScanResultsRefreshPeriod] Value = [%u] ",pHddCtx->cfg_ini->nNeighborResultsRefreshPeriod);
3213 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 -07003214#endif
3215 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [burstSizeDefinition] Value = [0x%x] ",pHddCtx->cfg_ini->burstSizeDefinition);
3216 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [tsInfoAckPolicy] Value = [0x%x] ",pHddCtx->cfg_ini->tsInfoAckPolicy);
3217 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [rfSettlingTimeUs] Value = [%u] ",pHddCtx->cfg_ini->rfSettlingTimeUs);
3218 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [bSingleTidRc] Value = [%u] ",pHddCtx->cfg_ini->bSingleTidRc);
3219 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [gDynamicPSPollvalue] Value = [%u] ",pHddCtx->cfg_ini->dynamicPsPollValue);
3220 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [gAddTSWhenACMIsOff] Value = [%u] ",pHddCtx->cfg_ini->AddTSWhenACMIsOff);
3221 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [gValidateScanList] Value = [%u] ",pHddCtx->cfg_ini->fValidateScanList);
3222
3223 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [gStaKeepAlivePeriod] Value = [%u] ",pHddCtx->cfg_ini->infraStaKeepAlivePeriod);
3224 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [gApDataAvailPollInterVal] Value = [%u] ",pHddCtx->cfg_ini->apDataAvailPollPeriodInMs);
3225 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [gEnableBtAmp] Value = [%u] ",pHddCtx->cfg_ini->enableBtAmp);
3226#ifdef WLAN_BTAMP_FEATURE
3227 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [BtAmpPreferredChannel] Value = [%u] ",pHddCtx->cfg_ini->preferredChannel);
3228#endif //WLAN_BTAMP_FEATURE
3229 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [BandCapability] Value = [%u] ",pHddCtx->cfg_ini->nBandCapability);
3230 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [fEnableBeaconEarlyTermination] Value = [%u] ",pHddCtx->cfg_ini->fEnableBeaconEarlyTermination);
3231 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [teleBcnWakeupEnable] Value = [%u] ",pHddCtx->cfg_ini->teleBcnWakeupEn);
3232 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [transListenInterval] Value = [%u] ",pHddCtx->cfg_ini->nTeleBcnTransListenInterval);
3233 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [transLiNumIdleBeacons] Value = [%u] ",pHddCtx->cfg_ini->nTeleBcnTransLiNumIdleBeacons);
3234 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [maxListenInterval] Value = [%u] ",pHddCtx->cfg_ini->nTeleBcnMaxListenInterval);
3235 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [maxLiNumIdleBeacons] Value = [%u] ",pHddCtx->cfg_ini->nTeleBcnMaxLiNumIdleBeacons);
3236 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [bcnEarlyTermWakeInterval] Value = [%u] ",pHddCtx->cfg_ini->bcnEarlyTermWakeInterval);
3237 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [gApDataAvailPollInterVal] Value = [%u] ",pHddCtx->cfg_ini->apDataAvailPollPeriodInMs);
3238 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [gEnableBypass11d] Value = [%u] ",pHddCtx->cfg_ini->enableBypass11d);
3239 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [gEnableDFSChnlScan] Value = [%u] ",pHddCtx->cfg_ini->enableDFSChnlScan);
3240 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [gReportMaxLinkSpeed] Value = [%u] ",pHddCtx->cfg_ini->reportMaxLinkSpeed);
3241 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 -07003242#ifdef WLAN_FEATURE_11AC
Arif Hussain6d2a3322013-11-17 19:50:10 -08003243 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 -07003244#endif
3245 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [enableFirstScan2GOnly] Value = [%u] ",pHddCtx->cfg_ini->enableFirstScan2GOnly);
3246 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [skipDfsChnlInP2pSearch] Value = [%u] ",pHddCtx->cfg_ini->skipDfsChnlInP2pSearch);
3247 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 +05303248 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 -08003249 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 -07003250 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 -07003251 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 -07003252
Leo Chang64d68bc2013-06-04 15:40:52 -07003253 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [gEnableTrafficMonitor] Value = [%u] ", pHddCtx->cfg_ini->enableTrafficMonitor);
3254 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 -07003255 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 -07003256 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 +05303257 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 +05303258 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [gGoLinkMonitorPeriod] Value = [%u]",pHddCtx->cfg_ini->goLinkMonitorPeriod);
3259 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [gApLinkMonitorPeriod] Value = [%u]",pHddCtx->cfg_ini->apLinkMonitorPeriod);
3260 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [gGoKeepAlivePeriod] Value = [%u]",pHddCtx->cfg_ini->goKeepAlivePeriod);
3261 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 -07003262 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [gAmsduSupportInAMPDU] Value = [%u] ",pHddCtx->cfg_ini->isAmsduSupportInAMPDU);
3263 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 -08003264 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 +05303265
Tushnim Bhattacharyya9889e792013-12-19 18:18:36 -08003266 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 +05303267
3268 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [gAsdProbeInterval] Value = [%u]",pHddCtx->cfg_ini->gAsdProbeInterval);
3269 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [gAsdTriggerThreshold] Value = [%u]",pHddCtx->cfg_ini->gAsdTriggerThreshold);
3270 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 -07003271}
3272
3273
Gopichand Nakkalae620d5a2013-04-26 05:45:57 -07003274
Jeff Johnson295189b2012-06-20 16:38:30 -07003275#define CFG_VALUE_MAX_LEN 256
3276#define CFG_ENTRY_MAX_LEN (32+CFG_VALUE_MAX_LEN)
3277VOS_STATUS hdd_cfg_get_config(hdd_context_t *pHddCtx, char *pBuf, int buflen)
3278{
3279 unsigned int idx;
3280 REG_TABLE_ENTRY *pRegEntry = g_registry_table;
3281 unsigned long cRegTableEntries = sizeof(g_registry_table) / sizeof( g_registry_table[ 0 ]);
3282 v_U32_t value;
3283 char valueStr[CFG_VALUE_MAX_LEN];
3284 char configStr[CFG_ENTRY_MAX_LEN];
3285 char *fmt;
3286 void *pField;
3287 v_MACADDR_t *pMacAddr;
3288 char *pCur = pBuf;
3289 int curlen;
3290
3291 // start with an empty string
3292 *pCur = '\0';
3293
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003294 for ( idx = 0; idx < cRegTableEntries; idx++, pRegEntry++ )
Jeff Johnson295189b2012-06-20 16:38:30 -07003295 {
3296 pField = ( (v_U8_t *)pHddCtx->cfg_ini) + pRegEntry->VarOffset;
3297
3298 if ( ( WLAN_PARAM_Integer == pRegEntry->RegType ) ||
3299 ( WLAN_PARAM_SignedInteger == pRegEntry->RegType ) ||
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003300 ( WLAN_PARAM_HexInteger == pRegEntry->RegType ) )
Jeff Johnson295189b2012-06-20 16:38:30 -07003301 {
3302 value = 0;
3303 memcpy( &value, pField, pRegEntry->VarSize );
3304 if ( WLAN_PARAM_HexInteger == pRegEntry->RegType )
3305 {
3306 fmt = "%x";
3307 }
3308 else if ( WLAN_PARAM_SignedInteger == pRegEntry->RegType )
3309 {
3310 fmt = "%d";
3311 }
3312 else
3313 {
3314 fmt = "%u";
3315 }
3316 snprintf(valueStr, CFG_VALUE_MAX_LEN, fmt, value);
3317 }
3318 else if ( WLAN_PARAM_String == pRegEntry->RegType )
3319 {
3320 snprintf(valueStr, CFG_VALUE_MAX_LEN, "%s", (char *)pField);
3321 }
3322 else if ( WLAN_PARAM_MacAddr == pRegEntry->RegType )
3323 {
3324 pMacAddr = (v_MACADDR_t *) pField;
3325 snprintf(valueStr, CFG_VALUE_MAX_LEN,
3326 "%02x:%02x:%02x:%02x:%02x:%02x",
3327 pMacAddr->bytes[0],
3328 pMacAddr->bytes[1],
3329 pMacAddr->bytes[2],
3330 pMacAddr->bytes[3],
3331 pMacAddr->bytes[4],
3332 pMacAddr->bytes[5]);
3333 }
3334 else
3335 {
3336 snprintf(valueStr, CFG_VALUE_MAX_LEN, "(unhandled)");
3337 }
Sameer Thalappilb0a30232013-09-27 15:37:48 -07003338 curlen = scnprintf(configStr, CFG_ENTRY_MAX_LEN,
Jeff Johnson295189b2012-06-20 16:38:30 -07003339 "%s=[%s]%s\n",
3340 pRegEntry->RegName,
3341 valueStr,
3342 test_bit(idx, (void *)&pHddCtx->cfg_ini->bExplicitCfg) ?
3343 "*" : "");
3344
3345 // ideally we want to return the config to the application
3346 // however the config is too big so we just printk() for now
3347#ifdef RETURN_IN_BUFFER
3348 if (curlen <= buflen)
3349 {
3350 // copy string + '\0'
3351 memcpy(pCur, configStr, curlen+1);
3352
3353 // account for addition;
3354 pCur += curlen;
3355 buflen -= curlen;
3356 }
3357 else
3358 {
3359 // buffer space exhausted, return what we have
3360 return VOS_STATUS_E_RESOURCES;
3361 }
3362#else
3363 printk(KERN_CRIT "%s", configStr);
3364#endif // RETURN_IN_BUFFER
3365
3366}
3367
3368#ifndef RETURN_IN_BUFFER
3369 // notify application that output is in system log
3370 snprintf(pCur, buflen, "WLAN configuration written to system log");
3371#endif // RETURN_IN_BUFFER
3372
3373 return VOS_STATUS_SUCCESS;
3374}
3375
3376static VOS_STATUS find_cfg_item (tCfgIniEntry* iniTable, unsigned long entries,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003377 char *name, char** value)
Jeff Johnson295189b2012-06-20 16:38:30 -07003378{
3379 VOS_STATUS status = VOS_STATUS_E_FAILURE;
3380 unsigned long i;
3381
3382 for (i = 0; i < entries; i++) {
3383 if (strcmp(iniTable[i].name, name) == 0) {
3384 *value = iniTable[i].value;
3385 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Found %s entry for Name=[%s] Value=[%s] ",
3386 WLAN_INI_FILE, name, *value);
3387 return VOS_STATUS_SUCCESS;
3388 }
3389 }
3390
3391 return status;
3392}
3393
3394static int parseHexDigit(char c)
3395{
3396 if (c >= '0' && c <= '9')
3397 return c-'0';
3398 if (c >= 'a' && c <= 'f')
3399 return c-'a'+10;
3400 if (c >= 'A' && c <= 'F')
3401 return c-'A'+10;
3402
3403 return 0;
3404}
3405
3406
3407static VOS_STATUS hdd_apply_cfg_ini( hdd_context_t *pHddCtx, tCfgIniEntry* iniTable, unsigned long entries)
3408{
3409 VOS_STATUS match_status = VOS_STATUS_E_FAILURE;
3410 VOS_STATUS ret_status = VOS_STATUS_SUCCESS;
3411 unsigned int idx;
3412 void *pField;
3413 char *value_str = NULL;
3414 unsigned long len_value_str;
3415 char *candidate;
3416 v_U32_t value;
3417 v_S31_t svalue;
3418 void *pStructBase = pHddCtx->cfg_ini;
3419 REG_TABLE_ENTRY *pRegEntry = g_registry_table;
3420 unsigned long cRegTableEntries = sizeof(g_registry_table) / sizeof( g_registry_table[ 0 ]);
3421 v_U32_t cbOutString;
3422 int i;
Madan Mohan Koyyalamudid8ac8662012-11-06 19:04:56 -08003423 int rv;
Jeff Johnson295189b2012-06-20 16:38:30 -07003424
3425 // sanity test
3426 if (MAX_CFG_INI_ITEMS < cRegTableEntries)
3427 {
Jeff Johnson0299d0a2013-10-30 12:37:43 -07003428 hddLog(LOGE, "%s: MAX_CFG_INI_ITEMS too small, must be at least %ld",
Madan Mohan Koyyalamudi87054ba2012-11-02 13:24:12 -07003429 __func__, cRegTableEntries);
Jeff Johnson295189b2012-06-20 16:38:30 -07003430 }
3431
3432 for ( idx = 0; idx < cRegTableEntries; idx++, pRegEntry++ )
3433 {
3434 //Calculate the address of the destination field in the structure.
3435 pField = ( (v_U8_t *)pStructBase )+ pRegEntry->VarOffset;
3436
3437 match_status = find_cfg_item(iniTable, entries, pRegEntry->RegName, &value_str);
3438
3439 if( (match_status != VOS_STATUS_SUCCESS) && ( pRegEntry->Flags & VAR_FLAGS_REQUIRED ) )
3440 {
3441 // If we could not read the cfg item and it is required, this is an error.
3442 hddLog(LOGE, "%s: Failed to read required config parameter %s",
Madan Mohan Koyyalamudi87054ba2012-11-02 13:24:12 -07003443 __func__, pRegEntry->RegName);
Jeff Johnson295189b2012-06-20 16:38:30 -07003444 ret_status = VOS_STATUS_E_FAILURE;
3445 break;
3446 }
3447
3448 if ( ( WLAN_PARAM_Integer == pRegEntry->RegType ) ||
3449 ( WLAN_PARAM_HexInteger == pRegEntry->RegType ) )
3450 {
3451 // If successfully read from the registry, use the value read.
3452 // If not, use the default value.
3453 if ( match_status == VOS_STATUS_SUCCESS && (WLAN_PARAM_Integer == pRegEntry->RegType)) {
Jeff Johnson02797792013-10-26 19:17:13 -07003454 rv = kstrtou32(value_str, 10, &value);
Madan Mohan Koyyalamudid8ac8662012-11-06 19:04:56 -08003455 if (rv < 0) {
3456 hddLog(LOGE, "%s: Reg Parameter %s invalid. Enforcing default",
3457 __func__, pRegEntry->RegName);
3458 value = pRegEntry->VarDefault;
3459 }
Jeff Johnson295189b2012-06-20 16:38:30 -07003460 }
3461 else if ( match_status == VOS_STATUS_SUCCESS && (WLAN_PARAM_HexInteger == pRegEntry->RegType)) {
Jeff Johnson02797792013-10-26 19:17:13 -07003462 rv = kstrtou32(value_str, 16, &value);
Madan Mohan Koyyalamudid8ac8662012-11-06 19:04:56 -08003463 if (rv < 0) {
3464 hddLog(LOGE, "%s: Reg paramter %s invalid. Enforcing default",
3465 __func__, pRegEntry->RegName);
3466 value = pRegEntry->VarDefault;
3467 }
Jeff Johnson295189b2012-06-20 16:38:30 -07003468 }
3469 else {
3470 value = pRegEntry->VarDefault;
3471 }
3472
3473 // If this parameter needs range checking, do it here.
3474 if ( pRegEntry->Flags & VAR_FLAGS_RANGE_CHECK )
3475 {
3476 if ( value > pRegEntry->VarMax )
3477 {
Jeff Johnson0299d0a2013-10-30 12:37:43 -07003478 hddLog(LOGE, "%s: Reg Parameter %s > allowed Maximum [%u > %lu]. Enforcing Maximum",
Madan Mohan Koyyalamudi87054ba2012-11-02 13:24:12 -07003479 __func__, pRegEntry->RegName, value, pRegEntry->VarMax );
Jeff Johnson295189b2012-06-20 16:38:30 -07003480 value = pRegEntry->VarMax;
3481 }
3482
3483 if ( value < pRegEntry->VarMin )
3484 {
Jeff Johnson0299d0a2013-10-30 12:37:43 -07003485 hddLog(LOGE, "%s: Reg Parameter %s < allowed Minimum [%u < %lu]. Enforcing Minimum",
Madan Mohan Koyyalamudi87054ba2012-11-02 13:24:12 -07003486 __func__, pRegEntry->RegName, value, pRegEntry->VarMin);
Jeff Johnson295189b2012-06-20 16:38:30 -07003487 value = pRegEntry->VarMin;
3488 }
3489 }
3490 // If this parameter needs range checking, do it here.
3491 else if ( pRegEntry->Flags & VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT )
3492 {
3493 if ( value > pRegEntry->VarMax )
3494 {
Jeff Johnson0299d0a2013-10-30 12:37:43 -07003495 hddLog(LOGE, "%s: Reg Parameter %s > allowed Maximum [%u > %lu]. Enforcing Default= %lu",
Madan Mohan Koyyalamudi87054ba2012-11-02 13:24:12 -07003496 __func__, pRegEntry->RegName, value, pRegEntry->VarMax, pRegEntry->VarDefault );
Jeff Johnson295189b2012-06-20 16:38:30 -07003497 value = pRegEntry->VarDefault;
3498 }
3499
3500 if ( value < pRegEntry->VarMin )
3501 {
Jeff Johnson0299d0a2013-10-30 12:37:43 -07003502 hddLog(LOGE, "%s: Reg Parameter %s < allowed Minimum [%u < %lu]. Enforcing Default= %lu",
Madan Mohan Koyyalamudi87054ba2012-11-02 13:24:12 -07003503 __func__, pRegEntry->RegName, value, pRegEntry->VarMin, pRegEntry->VarDefault );
Jeff Johnson295189b2012-06-20 16:38:30 -07003504 value = pRegEntry->VarDefault;
3505 }
3506 }
3507
3508 // Move the variable into the output field.
3509 memcpy( pField, &value, pRegEntry->VarSize );
3510 }
3511 else if ( WLAN_PARAM_SignedInteger == pRegEntry->RegType )
3512 {
3513 // If successfully read from the registry, use the value read.
3514 // If not, use the default value.
3515 if (VOS_STATUS_SUCCESS == match_status)
3516 {
Jeff Johnson02797792013-10-26 19:17:13 -07003517 rv = kstrtos32(value_str, 10, &svalue);
Madan Mohan Koyyalamudid8ac8662012-11-06 19:04:56 -08003518 if (rv < 0) {
3519 hddLog(VOS_TRACE_LEVEL_WARN, "%s: Reg Parameter %s invalid. Enforcing Default",
3520 __func__, pRegEntry->RegName);
3521 svalue = (v_S31_t)pRegEntry->VarDefault;
3522 }
Jeff Johnson295189b2012-06-20 16:38:30 -07003523 }
3524 else
3525 {
3526 svalue = (v_S31_t)pRegEntry->VarDefault;
3527 }
3528
3529 // If this parameter needs range checking, do it here.
3530 if ( pRegEntry->Flags & VAR_FLAGS_RANGE_CHECK )
3531 {
3532 if ( svalue > (v_S31_t)pRegEntry->VarMax )
3533 {
3534 hddLog(LOGE, "%s: Reg Parameter %s > allowed Maximum "
Jeff Johnson0299d0a2013-10-30 12:37:43 -07003535 "[%d > %d]. Enforcing Maximum", __func__,
Jeff Johnson295189b2012-06-20 16:38:30 -07003536 pRegEntry->RegName, svalue, (int)pRegEntry->VarMax );
3537 svalue = (v_S31_t)pRegEntry->VarMax;
3538 }
3539
3540 if ( svalue < (v_S31_t)pRegEntry->VarMin )
3541 {
3542 hddLog(LOGE, "%s: Reg Parameter %s < allowed Minimum "
Jeff Johnson0299d0a2013-10-30 12:37:43 -07003543 "[%d < %d]. Enforcing Minimum", __func__,
Jeff Johnson295189b2012-06-20 16:38:30 -07003544 pRegEntry->RegName, svalue, (int)pRegEntry->VarMin);
3545 svalue = (v_S31_t)pRegEntry->VarMin;
3546 }
3547 }
3548 // If this parameter needs range checking, do it here.
3549 else if ( pRegEntry->Flags & VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT )
3550 {
3551 if ( svalue > (v_S31_t)pRegEntry->VarMax )
3552 {
3553 hddLog(LOGE, "%s: Reg Parameter %s > allowed Maximum "
Jeff Johnson0299d0a2013-10-30 12:37:43 -07003554 "[%d > %d]. Enforcing Default= %d",
Madan Mohan Koyyalamudi87054ba2012-11-02 13:24:12 -07003555 __func__, pRegEntry->RegName, svalue,
Jeff Johnson295189b2012-06-20 16:38:30 -07003556 (int)pRegEntry->VarMax,
3557 (int)pRegEntry->VarDefault );
3558 svalue = (v_S31_t)pRegEntry->VarDefault;
3559 }
3560
3561 if ( svalue < (v_S31_t)pRegEntry->VarMin )
3562 {
3563 hddLog(LOGE, "%s: Reg Parameter %s < allowed Minimum "
Jeff Johnson0299d0a2013-10-30 12:37:43 -07003564 "[%d < %d]. Enforcing Default= %d",
Madan Mohan Koyyalamudi87054ba2012-11-02 13:24:12 -07003565 __func__, pRegEntry->RegName, svalue,
Jeff Johnson295189b2012-06-20 16:38:30 -07003566 (int)pRegEntry->VarMin,
3567 (int)pRegEntry->VarDefault);
3568 svalue = pRegEntry->VarDefault;
3569 }
3570 }
3571
3572 // Move the variable into the output field.
3573 memcpy( pField, &svalue, pRegEntry->VarSize );
3574 }
3575 // Handle string parameters
3576 else if ( WLAN_PARAM_String == pRegEntry->RegType )
3577 {
3578#ifdef WLAN_CFG_DEBUG
Arif Hussain6d2a3322013-11-17 19:50:10 -08003579 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 -08003580 pRegEntry->RegName, pRegEntry->VarOffset, pRegEntry->VarSize, (char*)pRegEntry->VarDefault);
Jeff Johnson295189b2012-06-20 16:38:30 -07003581#endif
3582
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003583 if ( match_status == VOS_STATUS_SUCCESS)
Jeff Johnson295189b2012-06-20 16:38:30 -07003584 {
3585 len_value_str = strlen(value_str);
3586
3587 if(len_value_str > (pRegEntry->VarSize - 1)) {
Arif Hussain6d2a3322013-11-17 19:50:10 -08003588 hddLog(LOGE, "%s: Invalid Value=[%s] specified for Name=[%s] in %s",
Madan Mohan Koyyalamudi87054ba2012-11-02 13:24:12 -07003589 __func__, value_str, pRegEntry->RegName, WLAN_INI_FILE);
Jeff Johnson295189b2012-06-20 16:38:30 -07003590 cbOutString = utilMin( strlen( (char *)pRegEntry->VarDefault ), pRegEntry->VarSize - 1 );
3591 memcpy( pField, (void *)(pRegEntry->VarDefault), cbOutString );
3592 ( (v_U8_t *)pField )[ cbOutString ] = '\0';
3593 }
3594 else
3595 {
3596 memcpy( pField, (void *)(value_str), len_value_str);
3597 ( (v_U8_t *)pField )[ len_value_str ] = '\0';
3598 }
3599 }
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003600 else
Jeff Johnson295189b2012-06-20 16:38:30 -07003601 {
3602 // Failed to read the string parameter from the registry. Use the default.
3603 cbOutString = utilMin( strlen( (char *)pRegEntry->VarDefault ), pRegEntry->VarSize - 1 );
3604 memcpy( pField, (void *)(pRegEntry->VarDefault), cbOutString );
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003605 ( (v_U8_t *)pField )[ cbOutString ] = '\0';
Jeff Johnson295189b2012-06-20 16:38:30 -07003606 }
3607 }
3608 else if ( WLAN_PARAM_MacAddr == pRegEntry->RegType )
3609 {
3610 if(pRegEntry->VarSize != VOS_MAC_ADDR_SIZE) {
Arif Hussain6d2a3322013-11-17 19:50:10 -08003611 hddLog(LOGE, "%s: Invalid VarSize %u for Name=[%s]",
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003612 __func__, pRegEntry->VarSize, pRegEntry->RegName);
Jeff Johnson295189b2012-06-20 16:38:30 -07003613 continue;
3614 }
3615 candidate = (char*)pRegEntry->VarDefault;
3616 if ( match_status == VOS_STATUS_SUCCESS) {
3617 len_value_str = strlen(value_str);
3618 if(len_value_str != (VOS_MAC_ADDR_SIZE*2)) {
Arif Hussain6d2a3322013-11-17 19:50:10 -08003619 hddLog(LOGE, "%s: Invalid MAC addr [%s] specified for Name=[%s] in %s",
Madan Mohan Koyyalamudi87054ba2012-11-02 13:24:12 -07003620 __func__, value_str, pRegEntry->RegName, WLAN_INI_FILE);
Jeff Johnson295189b2012-06-20 16:38:30 -07003621 }
3622 else
3623 candidate = value_str;
3624 }
3625 //parse the string and store it in the byte array
3626 for(i=0; i<VOS_MAC_ADDR_SIZE; i++)
3627 {
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003628 ((char*)pField)[i] =
3629 (char)(parseHexDigit(candidate[i*2])*16 + parseHexDigit(candidate[i*2+1]));
Jeff Johnson295189b2012-06-20 16:38:30 -07003630 }
3631 }
3632 else
3633 {
Arif Hussain6d2a3322013-11-17 19:50:10 -08003634 hddLog(LOGE, "%s: Unknown param type for name[%s] in registry table",
Madan Mohan Koyyalamudi87054ba2012-11-02 13:24:12 -07003635 __func__, pRegEntry->RegName);
Jeff Johnson295189b2012-06-20 16:38:30 -07003636 }
3637
3638 // did we successfully parse a cfg item for this parameter?
3639 if( (match_status == VOS_STATUS_SUCCESS) &&
3640 (idx < MAX_CFG_INI_ITEMS) )
3641 {
3642 set_bit(idx, (void *)&pHddCtx->cfg_ini->bExplicitCfg);
3643 }
3644 }
3645
3646 print_hdd_cfg(pHddCtx);
3647
3648 return( ret_status );
3649}
3650
3651eCsrPhyMode hdd_cfg_xlate_to_csr_phy_mode( eHddDot11Mode dot11Mode )
3652{
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003653 switch (dot11Mode)
Jeff Johnson295189b2012-06-20 16:38:30 -07003654 {
3655 case (eHDD_DOT11_MODE_abg):
3656 return eCSR_DOT11_MODE_abg;
3657 case (eHDD_DOT11_MODE_11b):
3658 return eCSR_DOT11_MODE_11b;
3659 case (eHDD_DOT11_MODE_11g):
3660 return eCSR_DOT11_MODE_11g;
3661 default:
3662 case (eHDD_DOT11_MODE_11n):
3663 return eCSR_DOT11_MODE_11n;
3664 case (eHDD_DOT11_MODE_11g_ONLY):
3665 return eCSR_DOT11_MODE_11g_ONLY;
3666 case (eHDD_DOT11_MODE_11n_ONLY):
3667 return eCSR_DOT11_MODE_11n_ONLY;
3668 case (eHDD_DOT11_MODE_11b_ONLY):
3669 return eCSR_DOT11_MODE_11b_ONLY;
Jeff Johnsone7245742012-09-05 17:12:55 -07003670#ifdef WLAN_FEATURE_11AC
3671 case (eHDD_DOT11_MODE_11ac_ONLY):
3672 return eCSR_DOT11_MODE_11ac_ONLY;
3673 case (eHDD_DOT11_MODE_11ac):
3674 return eCSR_DOT11_MODE_11ac;
3675#endif
Jeff Johnson295189b2012-06-20 16:38:30 -07003676 case (eHDD_DOT11_MODE_AUTO):
3677 return eCSR_DOT11_MODE_AUTO;
3678 }
3679
3680}
3681
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003682static void hdd_set_btc_config(hdd_context_t *pHddCtx)
Jeff Johnson295189b2012-06-20 16:38:30 -07003683{
3684 hdd_config_t *pConfig = pHddCtx->cfg_ini;
3685 tSmeBtcConfig btcParams;
Wilson Tsaof8b37942013-09-06 10:49:00 -07003686 int i;
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003687
Jeff Johnson295189b2012-06-20 16:38:30 -07003688 sme_BtcGetConfig(pHddCtx->hHal, &btcParams);
3689
3690 btcParams.btcExecutionMode = pConfig->btcExecutionMode;
Jeff Johnson295189b2012-06-20 16:38:30 -07003691 btcParams.btcConsBtSlotsToBlockDuringDhcp = pConfig->btcConsBtSlotsToBlockDuringDhcp;
Jeff Johnson295189b2012-06-20 16:38:30 -07003692 btcParams.btcA2DPBtSubIntervalsDuringDhcp = pConfig->btcA2DPBtSubIntervalsDuringDhcp;
3693
Jeff Johnson32d95a32012-09-10 13:15:23 -07003694 btcParams.btcStaticLenInqBt = pConfig->btcStaticLenInqBt;
3695 btcParams.btcStaticLenPageBt = pConfig->btcStaticLenPageBt;
3696 btcParams.btcStaticLenConnBt = pConfig->btcStaticLenConnBt;
3697 btcParams.btcStaticLenLeBt = pConfig->btcStaticLenLeBt;
3698 btcParams.btcStaticLenInqWlan = pConfig->btcStaticLenInqWlan;
3699 btcParams.btcStaticLenPageWlan = pConfig->btcStaticLenPageWlan;
3700 btcParams.btcStaticLenConnWlan = pConfig->btcStaticLenConnWlan;
3701 btcParams.btcStaticLenLeWlan = pConfig->btcStaticLenLeWlan;
3702 btcParams.btcDynMaxLenBt = pConfig->btcDynMaxLenBt;
3703 btcParams.btcDynMaxLenWlan = pConfig->btcDynMaxLenWlan;
3704 btcParams.btcMaxScoBlockPerc = pConfig->btcMaxScoBlockPerc;
3705 btcParams.btcDhcpProtOnA2dp = pConfig->btcDhcpProtOnA2dp;
3706 btcParams.btcDhcpProtOnSco = pConfig->btcDhcpProtOnSco;
3707
Wilson Tsaof8b37942013-09-06 10:49:00 -07003708 for (i = 0; i < 10; i++)
3709 {
3710 btcParams.mwsCoexVictimWANFreq[i] = pConfig->mwsCoexVictimWANFreq[i];
3711 btcParams.mwsCoexVictimWLANFreq[i] = pConfig->mwsCoexVictimWLANFreq[i];
3712 btcParams.mwsCoexVictimConfig[i] = pConfig->mwsCoexVictimConfig[i];
3713 btcParams.mwsCoexVictimConfig2[i] = pConfig->mwsCoexVictimConfig2[i];
3714 }
3715 for (i = 0; i < 6; i++)
3716 {
3717 btcParams.mwsCoexConfig[i] = pConfig->mwsCoexConfig[i];
3718 }
3719 btcParams.mwsCoexModemBackoff = pConfig->mwsCoexModemBackoff;
3720 btcParams.SARPowerBackoff = pConfig->SARPowerBackoff;
3721
Jeff Johnson295189b2012-06-20 16:38:30 -07003722 sme_BtcSetConfig(pHddCtx->hHal, &btcParams);
3723}
3724
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003725static void hdd_set_power_save_config(hdd_context_t *pHddCtx, tSmeConfigParams *smeConfig)
Jeff Johnson295189b2012-06-20 16:38:30 -07003726{
3727 hdd_config_t *pConfig = pHddCtx->cfg_ini;
3728
3729 tPmcBmpsConfigParams bmpsParams;
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003730
Jeff Johnson295189b2012-06-20 16:38:30 -07003731 sme_GetConfigPowerSave(pHddCtx->hHal, ePMC_BEACON_MODE_POWER_SAVE, &bmpsParams);
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003732
Jeff Johnson295189b2012-06-20 16:38:30 -07003733 if (strcmp(pConfig->PowerUsageControl, "Min") == 0)
3734 {
3735 smeConfig->csrConfig.impsSleepTime = pConfig->nImpsMinSleepTime;
3736 bmpsParams.bmpsPeriod = pConfig->nBmpsMinListenInterval;
3737 bmpsParams.enableBeaconEarlyTermination = pConfig->fEnableBeaconEarlyTermination;
3738 bmpsParams.bcnEarlyTermWakeInterval = pConfig->bcnEarlyTermWakeInterval;
3739 }
3740 if (strcmp(pConfig->PowerUsageControl, "Max") == 0)
3741 {
3742 smeConfig->csrConfig.impsSleepTime = pConfig->nImpsMaxSleepTime;
3743 bmpsParams.bmpsPeriod = pConfig->nBmpsMaxListenInterval;
3744 bmpsParams.enableBeaconEarlyTermination = pConfig->fEnableBeaconEarlyTermination;
3745 bmpsParams.bcnEarlyTermWakeInterval = pConfig->bcnEarlyTermWakeInterval;
3746 }
3747 if (strcmp(pConfig->PowerUsageControl, "Mod") == 0)
3748 {
3749 smeConfig->csrConfig.impsSleepTime = pConfig->nImpsModSleepTime;
3750 bmpsParams.bmpsPeriod = pConfig->nBmpsModListenInterval;
3751 bmpsParams.enableBeaconEarlyTermination = pConfig->fEnableBeaconEarlyTermination;
3752 bmpsParams.bcnEarlyTermWakeInterval = pConfig->bcnEarlyTermWakeInterval;
3753 }
3754
3755 if (pConfig->fIsImpsEnabled)
3756 {
3757 sme_EnablePowerSave (pHddCtx->hHal, ePMC_IDLE_MODE_POWER_SAVE);
3758 }
3759 else
3760 {
3761 sme_DisablePowerSave (pHddCtx->hHal, ePMC_IDLE_MODE_POWER_SAVE);
3762 }
3763
Madan Mohan Koyyalamudi69b34182013-01-16 08:51:40 +05303764 /*If isAndroidPsEn is 1 then Host driver and above layers control the PS mechanism
3765 If Value set to 0 Driver/Core Stack internally control the Power saving mechanism */
3766 sme_SetHostPowerSave (pHddCtx->hHal, pConfig->isAndroidPsEn);
3767
Jeff Johnson295189b2012-06-20 16:38:30 -07003768 if (pConfig->fIsBmpsEnabled)
3769 {
3770 sme_EnablePowerSave (pHddCtx->hHal, ePMC_BEACON_MODE_POWER_SAVE);
3771 }
3772 else
3773 {
3774 sme_DisablePowerSave (pHddCtx->hHal, ePMC_BEACON_MODE_POWER_SAVE);
3775 }
3776
3777 bmpsParams.trafficMeasurePeriod = pConfig->nAutoBmpsTimerValue;
3778
3779 if (sme_SetConfigPowerSave(pHddCtx->hHal, ePMC_BEACON_MODE_POWER_SAVE, &bmpsParams)== eHAL_STATUS_FAILURE)
3780 {
Arif Hussain6d2a3322013-11-17 19:50:10 -08003781 hddLog(LOGE, "SetConfigPowerSave failed to set BMPS params");
Jeff Johnson295189b2012-06-20 16:38:30 -07003782 }
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003783
Jeff Johnson295189b2012-06-20 16:38:30 -07003784 if(pConfig->fIsAutoBmpsTimerEnabled)
3785 {
3786 sme_StartAutoBmpsTimer(pHddCtx->hHal);
3787 }
3788
3789}
3790
3791#ifdef WLAN_FEATURE_NEIGHBOR_ROAMING
3792static VOS_STATUS hdd_string_to_u8_array( char *str, tANI_U8 *intArray, tANI_U8 *len, tANI_U8 intArrayMaxLen )
3793{
3794 char *s = str;
3795
3796 if( str == NULL || intArray == NULL || len == NULL )
3797 {
3798 return VOS_STATUS_E_INVAL;
3799 }
3800 *len = 0;
3801
Jeff Johnson295189b2012-06-20 16:38:30 -07003802 while ( (s != NULL) && (*len < intArrayMaxLen) )
3803 {
3804 int val;
3805 //Increment length only if sscanf succesfully extracted one element.
3806 //Any other return value means error. Ignore it.
3807 if( sscanf(s, "%d", &val ) == 1 )
3808 {
3809 intArray[*len] = (tANI_U8) val;
3810 *len += 1;
3811 }
3812 s = strpbrk( s, "," );
3813 if( s )
3814 s++;
3815 }
Jeff Johnson295189b2012-06-20 16:38:30 -07003816
3817 return VOS_STATUS_SUCCESS;
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003818
Jeff Johnson295189b2012-06-20 16:38:30 -07003819}
3820#endif
3821
3822
3823v_BOOL_t hdd_update_config_dat( hdd_context_t *pHddCtx )
3824{
3825 v_BOOL_t fStatus = TRUE;
Gopichand Nakkala976e3252013-01-03 15:45:56 -08003826#ifdef WLAN_SOFTAP_VSTA_FEATURE
3827 tANI_U32 val;
3828#endif
Jeff Johnson295189b2012-06-20 16:38:30 -07003829
3830 hdd_config_t *pConfig = pHddCtx->cfg_ini;
Pratik Bhalgat6bfd1422012-11-22 17:09:40 +05303831 tSirMacHTCapabilityInfo htCapInfo;
3832
Jeff Johnson295189b2012-06-20 16:38:30 -07003833
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003834 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_SHORT_GI_20MHZ,
Jeff Johnson295189b2012-06-20 16:38:30 -07003835 pConfig->ShortGI20MhzEnable, NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
3836 {
3837 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08003838 hddLog(LOGE, "Could not pass on WNI_CFG_SHORT_GI_20MHZ to CCM");
Jeff Johnson295189b2012-06-20 16:38:30 -07003839 }
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003840
3841 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_CAL_CONTROL, pConfig->Calibration,
Jeff Johnson295189b2012-06-20 16:38:30 -07003842 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
3843 {
3844 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08003845 hddLog(LOGE, "Could not pass on WNI_CFG_CAL_CONTROL to CCM");
Jeff Johnson295189b2012-06-20 16:38:30 -07003846 }
3847
3848 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_CAL_PERIOD, pConfig->CalibrationPeriod,
3849 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
3850 {
3851 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08003852 hddLog(LOGE, "Could not pass on WNI_CFG_CAL_PERIOD to CCM");
Jeff Johnson295189b2012-06-20 16:38:30 -07003853 }
3854
3855 if ( 0 != pConfig->Cfg1Id )
3856 {
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003857 if (ccmCfgSetInt(pHddCtx->hHal, pConfig->Cfg1Id, pConfig->Cfg1Value, NULL,
Jeff Johnson295189b2012-06-20 16:38:30 -07003858 eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
3859 {
3860 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08003861 hddLog(LOGE, "Could not pass on Cfg1Id to CCM");
Jeff Johnson295189b2012-06-20 16:38:30 -07003862 }
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003863
Jeff Johnson295189b2012-06-20 16:38:30 -07003864 }
3865
3866 if ( 0 != pConfig->Cfg2Id )
3867 {
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003868 if (ccmCfgSetInt(pHddCtx->hHal, pConfig->Cfg2Id, pConfig->Cfg2Value,
Jeff Johnson295189b2012-06-20 16:38:30 -07003869 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
3870 {
3871 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08003872 hddLog(LOGE, "Could not pass on Cfg2Id to CCM");
Jeff Johnson295189b2012-06-20 16:38:30 -07003873 }
3874 }
3875
3876 if ( 0 != pConfig->Cfg3Id )
3877 {
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003878 if (ccmCfgSetInt(pHddCtx->hHal, pConfig->Cfg3Id, pConfig->Cfg3Value,
Jeff Johnson295189b2012-06-20 16:38:30 -07003879 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
3880 {
3881 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08003882 hddLog(LOGE, "Could not pass on Cfg3Id to CCM");
Jeff Johnson295189b2012-06-20 16:38:30 -07003883 }
3884 }
3885
3886 if ( 0 != pConfig->Cfg4Id )
3887 {
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003888 if (ccmCfgSetInt(pHddCtx->hHal, pConfig->Cfg4Id, pConfig->Cfg4Value,
Jeff Johnson295189b2012-06-20 16:38:30 -07003889 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
3890 {
3891 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08003892 hddLog(LOGE, "Could not pass on Cfg4Id to CCM");
Jeff Johnson295189b2012-06-20 16:38:30 -07003893 }
3894 }
3895
3896 if ( 0 != pConfig->Cfg5Id )
3897 {
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003898 if (ccmCfgSetInt(pHddCtx->hHal, pConfig->Cfg5Id, pConfig->Cfg5Value,
Jeff Johnson295189b2012-06-20 16:38:30 -07003899 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
3900 {
3901 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08003902 hddLog(LOGE, "Could not pass on Cfg5Id to CCM");
Jeff Johnson295189b2012-06-20 16:38:30 -07003903 }
3904 }
3905
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003906 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_BA_AUTO_SETUP, pConfig->BlockAckAutoSetup,
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 WNI_CFG_BA_AUTO_SETUP to CCM");
Jeff Johnson295189b2012-06-20 16:38:30 -07003911 }
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003912
3913 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_FIXED_RATE, pConfig->TxRate,
Jeff Johnson295189b2012-06-20 16:38:30 -07003914 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
3915 {
3916 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08003917 hddLog(LOGE, "Could not pass on WNI_CFG_FIXED_RATE to CCM");
Jeff Johnson295189b2012-06-20 16:38:30 -07003918 }
3919
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003920 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_MAX_RX_AMPDU_FACTOR,
Jeff Johnson295189b2012-06-20 16:38:30 -07003921 pConfig->MaxRxAmpduFactor, NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
3922 {
3923 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08003924 hddLog(LOGE,"Could not pass on WNI_CFG_HT_AMPDU_PARAMS_MAX_RX_AMPDU_FACTOR to CCM");
Jeff Johnson295189b2012-06-20 16:38:30 -07003925 }
3926
3927 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_SHORT_PREAMBLE, pConfig->fIsShortPreamble,
3928 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
3929 {
3930 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08003931 hddLog(LOGE,"Could not pass on WNI_CFG_SHORT_PREAMBLE to CCM");
Jeff Johnson295189b2012-06-20 16:38:30 -07003932 }
3933
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003934 if (pConfig->fIsAutoIbssBssid)
Jeff Johnson295189b2012-06-20 16:38:30 -07003935 {
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003936 if (ccmCfgSetStr(pHddCtx->hHal, WNI_CFG_BSSID, (v_U8_t *)"000000000000",
Jeff Johnson295189b2012-06-20 16:38:30 -07003937 sizeof(v_BYTE_t) * VOS_MAC_ADDR_SIZE, NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
3938 {
3939 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08003940 hddLog(LOGE,"Could not pass on WNI_CFG_BSSID to CCM");
Jeff Johnson295189b2012-06-20 16:38:30 -07003941 }
3942 }
3943 else
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003944 {
Jeff Johnson295189b2012-06-20 16:38:30 -07003945 if ( VOS_FALSE == vos_is_macaddr_group( &pConfig->IbssBssid ))
3946 {
3947 VOS_TRACE( VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_MED,
Arif Hussain24bafea2013-11-15 15:10:03 -08003948 "MAC Addr (IBSS BSSID) read from Registry is: " MAC_ADDRESS_STR,
3949 MAC_ADDR_ARRAY(pConfig->IbssBssid.bytes));
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003950 if (ccmCfgSetStr(pHddCtx->hHal, WNI_CFG_BSSID, pConfig->IbssBssid.bytes,
Jeff Johnson295189b2012-06-20 16:38:30 -07003951 sizeof(v_BYTE_t) * VOS_MAC_ADDR_SIZE, NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
3952 {
3953 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08003954 hddLog(LOGE,"Could not pass on WNI_CFG_BSSID to CCM");
Jeff Johnson295189b2012-06-20 16:38:30 -07003955 }
3956 }
3957 else
3958 {
3959 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08003960 hddLog(LOGE,"Could not pass on WNI_CFG_BSSID to CCM");
Jeff Johnson295189b2012-06-20 16:38:30 -07003961 }
3962 }
3963
Naresh Jayaram3df09eb2013-12-18 17:39:04 +05303964 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_PASSIVE_MINIMUM_CHANNEL_TIME,
3965 pConfig->nPassiveMinChnTime, NULL,
3966 eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
3967 {
3968 fStatus = FALSE;
3969 hddLog(LOGE, "Could not pass on WNI_CFG_PASSIVE_MINIMUM_CHANNEL_TIME"
3970 " to CCM\n");
3971 }
3972
3973 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_PASSIVE_MAXIMUM_CHANNEL_TIME,
3974 pConfig->nPassiveMaxChnTime, NULL,
3975 eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
3976 {
3977 fStatus = FALSE;
3978 hddLog(LOGE, "Could not pass on WNI_CFG_PASSIVE_MAXIMUM_CHANNEL_TIME"
3979 " to CCM\n");
3980 }
3981
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003982 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_BEACON_INTERVAL, pConfig->nBeaconInterval,
Jeff Johnson295189b2012-06-20 16:38:30 -07003983 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
3984 {
3985 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08003986 hddLog(LOGE, "Could not pass on WNI_CFG_BEACON_INTERVAL to CCM");
Jeff Johnson295189b2012-06-20 16:38:30 -07003987 }
3988
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003989 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_MAX_PS_POLL, pConfig->nMaxPsPoll,
Jeff Johnson295189b2012-06-20 16:38:30 -07003990 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
3991 {
3992 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08003993 hddLog(LOGE, "Could not pass on WNI_CFG_MAX_PS_POLL to CCM");
Jeff Johnson295189b2012-06-20 16:38:30 -07003994 }
3995
3996 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_CURRENT_RX_ANTENNA, pConfig-> nRxAnt, NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
3997 {
3998 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08003999 hddLog(LOGE, "Failure: Could not pass on WNI_CFG_CURRENT_RX_ANTENNA configuration info to HAL" );
Jeff Johnson295189b2012-06-20 16:38:30 -07004000 }
4001
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004002 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_LOW_GAIN_OVERRIDE, pConfig->fIsLowGainOverride,
Jeff Johnson295189b2012-06-20 16:38:30 -07004003 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
4004 {
4005 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08004006 hddLog(LOGE, "Could not pass on WNI_CFG_LOW_GAIN_OVERRIDE to HAL");
Jeff Johnson295189b2012-06-20 16:38:30 -07004007 }
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004008
Jeff Johnson295189b2012-06-20 16:38:30 -07004009 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_RSSI_FILTER_PERIOD, pConfig->nRssiFilterPeriod,
4010 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
4011 {
4012 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08004013 hddLog(LOGE, "Could not pass on WNI_CFG_RSSI_FILTER_PERIOD to CCM");
Jeff Johnson295189b2012-06-20 16:38:30 -07004014 }
4015
Jeff Johnson295189b2012-06-20 16:38:30 -07004016 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_IGNORE_DTIM, pConfig->fIgnoreDtim,
4017 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
4018 {
4019 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08004020 hddLog(LOGE, "Could not pass on WNI_IGNORE_DTIM configuration to CCM" );
Jeff Johnson295189b2012-06-20 16:38:30 -07004021 }
4022
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004023 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_PS_ENABLE_HEART_BEAT, pConfig->fEnableFwHeartBeatMonitoring,
Jeff Johnson295189b2012-06-20 16:38:30 -07004024 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_PS_HEART_BEAT configuration info to CCM");
Jeff Johnson295189b2012-06-20 16:38:30 -07004028 }
4029
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004030 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_PS_ENABLE_BCN_FILTER, pConfig->fEnableFwBeaconFiltering,
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, "Failure: Could not pass on WNI_CFG_PS_BCN_FILTER configuration info to CCM");
Jeff Johnson295189b2012-06-20 16:38:30 -07004035 }
4036
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004037 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_PS_ENABLE_RSSI_MONITOR, pConfig->fEnableFwRssiMonitoring,
Jeff Johnson295189b2012-06-20 16:38:30 -07004038 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
4039 {
4040 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08004041 hddLog(LOGE, "Failure: Could not pass on WNI_CFG_PS_RSSI_MONITOR configuration info to CCM");
Jeff Johnson295189b2012-06-20 16:38:30 -07004042 }
4043
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004044 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_PS_DATA_INACTIVITY_TIMEOUT, pConfig->nDataInactivityTimeout,
Jeff Johnson295189b2012-06-20 16:38:30 -07004045 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
4046 {
4047 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08004048 hddLog(LOGE,"Failure: Could not pass on WNI_CFG_PS_DATA_INACTIVITY_TIMEOUT configuration info 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_NTH_BEACON_FILTER, pConfig->nthBeaconFilter,
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_NTH_BEACON_FILTER 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_ENABLE_LTE_COEX, pConfig->enableLTECoex,
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, "Could not pass on WNI_CFG_ENABLE_LTE_COEX 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_ENABLE_PHY_AGC_LISTEN_MODE, pConfig->nEnableListenMode,
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, "Could not pass on WNI_CFG_ENABLE_PHY_AGC_LISTEN_MODE 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_AP_KEEP_ALIVE_TIMEOUT, pConfig->apKeepAlivePeriod,
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, "Could not pass on WNI_CFG_AP_KEEP_ALIVE_TIMEOUT to CCM");
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004077 }
Jeff Johnson295189b2012-06-20 16:38:30 -07004078
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004079 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_GO_KEEP_ALIVE_TIMEOUT, pConfig->goKeepAlivePeriod,
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, "Could not pass on WNI_CFG_GO_KEEP_ALIVE_TIMEOUT to CCM");
Jeff Johnson295189b2012-06-20 16:38:30 -07004084 }
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004085
Sejal Chauhanbcde8bc2013-03-04 18:06:36 +05304086 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_AP_LINK_MONITOR_TIMEOUT, pConfig->apLinkMonitorPeriod,
4087 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_AP_LINK_MONITOR_TIMEOUT to CCM");
Sejal Chauhanbcde8bc2013-03-04 18:06:36 +05304091 }
4092
Madan Mohan Koyyalamudi2558bc92013-08-24 16:54:31 +05304093 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_GO_LINK_MONITOR_TIMEOUT, pConfig->goLinkMonitorPeriod,
4094 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_GO_LINK_MONITOR_TIMEOUT to CCM");
Madan Mohan Koyyalamudi2558bc92013-08-24 16:54:31 +05304098 }
4099
4100
Jeff Johnson295189b2012-06-20 16:38:30 -07004101#if defined WLAN_FEATURE_VOWIFI
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004102 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_RRM_ENABLED, pConfig->fRrmEnable,
Jeff Johnson295189b2012-06-20 16:38:30 -07004103 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
4104 {
4105 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08004106 hddLog(LOGE,"Failure: Could not pass on WNI_CFG_RRM_ENABLE configuration info to CCM");
Jeff Johnson295189b2012-06-20 16:38:30 -07004107 }
4108
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004109 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_RRM_OPERATING_CHAN_MAX, pConfig->nInChanMeasMaxDuration,
Jeff Johnson295189b2012-06-20 16:38:30 -07004110 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
4111 {
4112 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08004113 hddLog(LOGE,"Failure: Could not pass on WNI_CFG_RRM_OPERATING_CHAN_MAX configuration info to CCM");
Jeff Johnson295189b2012-06-20 16:38:30 -07004114 }
4115
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004116 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_RRM_NON_OPERATING_CHAN_MAX, pConfig->nOutChanMeasMaxDuration,
Jeff Johnson295189b2012-06-20 16:38:30 -07004117 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
4118 {
4119 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08004120 hddLog(LOGE,"Failure: Could not pass on WNI_CFG_RRM_OUT_CHAN_MAX configuration info to CCM");
Jeff Johnson295189b2012-06-20 16:38:30 -07004121 }
4122
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004123 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_MCAST_BCAST_FILTER_SETTING, pConfig->mcastBcastFilterSetting,
Jeff Johnson295189b2012-06-20 16:38:30 -07004124 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
4125#endif
4126
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004127 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_SINGLE_TID_RC, pConfig->bSingleTidRc,
Jeff Johnson295189b2012-06-20 16:38:30 -07004128 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
4129 {
4130 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08004131 hddLog(LOGE,"Failure: Could not pass on WNI_CFG_SINGLE_TID_RC configuration info to CCM");
Jeff Johnson295189b2012-06-20 16:38:30 -07004132 }
4133
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004134 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_TELE_BCN_WAKEUP_EN, pConfig->teleBcnWakeupEn,
Jeff Johnson295189b2012-06-20 16:38:30 -07004135 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
4136 {
4137 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08004138 hddLog(LOGE,"Failure: Could not pass on WNI_CFG_TELE_BCN_WAKEUP_EN configuration info to CCM" );
Jeff Johnson295189b2012-06-20 16:38:30 -07004139 }
4140
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004141 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_TELE_BCN_TRANS_LI, pConfig->nTeleBcnTransListenInterval,
Jeff Johnson295189b2012-06-20 16:38:30 -07004142 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
4143 {
4144 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08004145 hddLog(LOGE,"Failure: Could not pass on WNI_CFG_TELE_BCN_TRANS_LI configuration info to CCM" );
Jeff Johnson295189b2012-06-20 16:38:30 -07004146 }
4147
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004148 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_TELE_BCN_MAX_LI, pConfig->nTeleBcnMaxListenInterval,
Jeff Johnson295189b2012-06-20 16:38:30 -07004149 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
4150 {
4151 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08004152 hddLog(LOGE,"Failure: Could not pass on WNI_CFG_TELE_BCN_MAX_LI configuration info to CCM" );
Jeff Johnson295189b2012-06-20 16:38:30 -07004153 }
4154
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004155 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_TELE_BCN_TRANS_LI_IDLE_BCNS, pConfig->nTeleBcnTransLiNumIdleBeacons,
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_TELE_BCN_TRANS_LI_IDLE_BCNS 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_MAX_LI_IDLE_BCNS, pConfig->nTeleBcnMaxLiNumIdleBeacons,
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_MAX_LI_IDLE_BCNS configuration info to CCM" );
Jeff Johnson295189b2012-06-20 16:38:30 -07004167 }
4168
4169 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_RF_SETTLING_TIME_CLK, pConfig->rfSettlingTimeUs,
4170 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_RF_SETTLING_TIME_CLK 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_INFRA_STA_KEEP_ALIVE_PERIOD, pConfig->infraStaKeepAlivePeriod,
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_INFRA_STA_KEEP_ALIVE_PERIOD configuration info to CCM" );
Jeff Johnson295189b2012-06-20 16:38:30 -07004181 }
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004182 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_DYNAMIC_PS_POLL_VALUE, pConfig->dynamicPsPollValue,
Jeff Johnson295189b2012-06-20 16:38:30 -07004183 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
4184 {
4185 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08004186 hddLog(LOGE,"Failure: Could not pass on WNI_CFG_DYNAMIC_PS_POLL_VALUE configuration info to CCM" );
Jeff Johnson295189b2012-06-20 16:38:30 -07004187 }
4188
4189 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_PS_NULLDATA_AP_RESP_TIMEOUT, pConfig->nNullDataApRespTimeout,
4190 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
4191 {
4192 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08004193 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 -08004194 }
Jeff Johnson295189b2012-06-20 16:38:30 -07004195
Jeff Johnsoneed2dca2013-02-22 21:18:46 -08004196 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_AP_DATA_AVAIL_POLL_PERIOD, pConfig->apDataAvailPollPeriodInMs,
Jeff Johnson295189b2012-06-20 16:38:30 -07004197 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
Jeff Johnsoneed2dca2013-02-22 21:18:46 -08004198 {
4199 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08004200 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 -08004201 }
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004202 if(ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_FRAGMENTATION_THRESHOLD, pConfig->FragmentationThreshold,
Jeff Johnson295189b2012-06-20 16:38:30 -07004203 NULL, eANI_BOOLEAN_FALSE) == eHAL_STATUS_FAILURE)
4204 {
4205 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08004206 hddLog(LOGE,"Failure: Could not pass on WNI_CFG_FRAGMENTATION_THRESHOLD configuration info to CCM" );
Jeff Johnson295189b2012-06-20 16:38:30 -07004207 }
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004208 if(ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_RTS_THRESHOLD, pConfig->RTSThreshold,
Jeff Johnson295189b2012-06-20 16:38:30 -07004209 NULL, eANI_BOOLEAN_FALSE) == eHAL_STATUS_FAILURE)
4210 {
4211 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08004212 hddLog(LOGE,"Failure: Could not pass on WNI_CFG_RTS_THRESHOLD configuration info to CCM" );
Jeff Johnson295189b2012-06-20 16:38:30 -07004213 }
4214
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004215 if(ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_11D_ENABLED, pConfig->Is11dSupportEnabled,
Jeff Johnson295189b2012-06-20 16:38:30 -07004216 NULL, eANI_BOOLEAN_FALSE) == eHAL_STATUS_FAILURE)
4217 {
4218 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08004219 hddLog(LOGE,"Failure: Could not pass on WNI_CFG_11D_ENABLED configuration info to CCM" );
Jeff Johnson295189b2012-06-20 16:38:30 -07004220 }
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004221 if(ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_HEART_BEAT_THRESHOLD, pConfig->HeartbeatThresh24,
Jeff Johnson295189b2012-06-20 16:38:30 -07004222 NULL, eANI_BOOLEAN_FALSE) == eHAL_STATUS_FAILURE)
4223 {
4224 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08004225 hddLog(LOGE,"Failure: Could not pass on WNI_CFG_HEART_BEAT_THRESHOLD configuration info to CCM" );
Jeff Johnson295189b2012-06-20 16:38:30 -07004226 }
4227
Jeff Johnson295189b2012-06-20 16:38:30 -07004228 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_AP_DATA_AVAIL_POLL_PERIOD, pConfig->apDataAvailPollPeriodInMs,
4229 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
4230 {
4231 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08004232 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 -07004233 }
4234
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004235 if(ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_ENABLE_CLOSE_LOOP,
Jeff Johnson295189b2012-06-20 16:38:30 -07004236 pConfig->enableCloseLoop, NULL, eANI_BOOLEAN_FALSE)
4237 ==eHAL_STATUS_FAILURE)
4238 {
4239 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08004240 hddLog(LOGE, "Could not pass on WNI_CFG_ENABLE_CLOSE_LOOP 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_TX_PWR_CTRL_ENABLE,
Jeff Johnson295189b2012-06-20 16:38:30 -07004244 pConfig->enableAutomaticTxPowerControl, NULL, eANI_BOOLEAN_FALSE)
4245 ==eHAL_STATUS_FAILURE)
4246 {
4247 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08004248 hddLog(LOGE, "Could not pass on WNI_CFG_TX_PWR_CTRL_ENABLE to CCM");
Jeff Johnson295189b2012-06-20 16:38:30 -07004249 }
4250
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004251 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_SHORT_GI_40MHZ,
Jeff Johnson295189b2012-06-20 16:38:30 -07004252 pConfig->ShortGI40MhzEnable, NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
4253 {
4254 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08004255 hddLog(LOGE, "Could not pass on WNI_CFG_SHORT_GI_40MHZ to CCM");
Jeff Johnson295189b2012-06-20 16:38:30 -07004256 }
4257
Jeff Johnsond13512a2012-07-17 11:42:19 -07004258
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004259 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_ENABLE_MC_ADDR_LIST, pConfig->fEnableMCAddrList,
Jeff Johnsond13512a2012-07-17 11:42:19 -07004260 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
4261 {
4262 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08004263 hddLog(LOGE, "Could not pass on WNI_CFG_ENABLE_MC_ADDR_LIST to CCM");
Jeff Johnsond13512a2012-07-17 11:42:19 -07004264 }
4265
Jeff Johnsone7245742012-09-05 17:12:55 -07004266#ifdef WLAN_FEATURE_11AC
4267 /* Based on cfg.ini, update the Basic MCS set, RX/TX MCS map in the cfg.dat */
4268 /* valid values are 0(MCS0-7), 1(MCS0-8), 2(MCS0-9) */
4269 /* we update only the least significant 2 bits in the corresponding fields */
4270 if( (pConfig->dot11Mode == eHDD_DOT11_MODE_AUTO) ||
4271 (pConfig->dot11Mode == eHDD_DOT11_MODE_11ac_ONLY) ||
4272 (pConfig->dot11Mode == eHDD_DOT11_MODE_11ac) )
4273 {
4274 {
4275 tANI_U32 temp = 0;
4276
4277 ccmCfgGetInt(pHddCtx->hHal, WNI_CFG_VHT_BASIC_MCS_SET, &temp);
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004278 temp = (temp & 0xFFFC) | pConfig->vhtRxMCS;
Jeff Johnsone7245742012-09-05 17:12:55 -07004279
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004280 if(ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_VHT_BASIC_MCS_SET,
Jeff Johnsone7245742012-09-05 17:12:55 -07004281 temp, NULL, eANI_BOOLEAN_FALSE)
4282 ==eHAL_STATUS_FAILURE)
4283 {
4284 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08004285 hddLog(LOGE, "Could not pass on WNI_CFG_VHT_BASIC_MCS_SET to CCM");
Jeff Johnsone7245742012-09-05 17:12:55 -07004286 }
4287
4288 ccmCfgGetInt(pHddCtx->hHal, WNI_CFG_VHT_RX_MCS_MAP, &temp);
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004289 temp = (temp & 0xFFFC) | pConfig->vhtRxMCS;
Jeff Johnsone7245742012-09-05 17:12:55 -07004290
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004291 if(ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_VHT_RX_MCS_MAP,
Jeff Johnsone7245742012-09-05 17:12:55 -07004292 temp, NULL, eANI_BOOLEAN_FALSE)
4293 ==eHAL_STATUS_FAILURE)
4294 {
4295 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08004296 hddLog(LOGE, "Could not pass on WNI_CFG_VHT_RX_MCS_MAP to CCM");
Jeff Johnsone7245742012-09-05 17:12:55 -07004297 }
4298
4299 ccmCfgGetInt(pHddCtx->hHal, WNI_CFG_VHT_TX_MCS_MAP, &temp);
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004300 temp = (temp & 0xFFFC) | pConfig->vhtTxMCS;
Jeff Johnsone7245742012-09-05 17:12:55 -07004301
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004302 if(ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_VHT_TX_MCS_MAP,
Jeff Johnsone7245742012-09-05 17:12:55 -07004303 temp, NULL, eANI_BOOLEAN_FALSE)
4304 ==eHAL_STATUS_FAILURE)
4305 {
4306 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08004307 hddLog(LOGE, "Could not pass on WNI_CFG_VHT_TX_MCS_MAP to CCM");
Jeff Johnsone7245742012-09-05 17:12:55 -07004308 }
Praveen Kumar Sirisilla4cf7d262013-12-04 17:22:53 -08004309 /* Currently shortGI40Mhz is used for shortGI80Mhz */
4310 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_VHT_SHORT_GI_80MHZ,
4311 pConfig->ShortGI40MhzEnable, NULL, eANI_BOOLEAN_FALSE)
4312 == eHAL_STATUS_FAILURE)
4313 {
4314 fStatus = FALSE;
4315 hddLog(LOGE, "Could not pass WNI_VHT_SHORT_GI_80MHZ to CCM\n");
4316 }
Jeff Johnsone7245742012-09-05 17:12:55 -07004317 }
4318 }
4319#endif
4320
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004321 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_NUM_BUFF_ADVERT,pConfig->numBuffAdvert,
Madan Mohan Koyyalamudidd11eaf2012-11-02 16:04:21 -07004322 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
4323 {
4324 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08004325 hddLog(LOGE, "Could not pass on WNI_CFG_NUM_BUFF_ADVERT to CCM");
Madan Mohan Koyyalamudidd11eaf2012-11-02 16:04:21 -07004326 }
4327
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004328 if(ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_HT_RX_STBC,
Pratik Bhalgat6bfd1422012-11-22 17:09:40 +05304329 pConfig->enableRxSTBC, NULL, eANI_BOOLEAN_FALSE)
4330 ==eHAL_STATUS_FAILURE)
4331 {
4332 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08004333 hddLog(LOGE, "Could not pass on WNI_CFG_HT_RX_STBC to CCM");
Pratik Bhalgat6bfd1422012-11-22 17:09:40 +05304334 }
4335
4336 ccmCfgGetInt(pHddCtx->hHal, WNI_CFG_HT_CAP_INFO, (tANI_U32 *)&htCapInfo);
4337 htCapInfo.rxSTBC = pConfig->enableRxSTBC;
4338
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004339 if(ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_HT_CAP_INFO,
Pratik Bhalgat6bfd1422012-11-22 17:09:40 +05304340 *(tANI_U32 *)&htCapInfo, NULL, eANI_BOOLEAN_FALSE)
4341 ==eHAL_STATUS_FAILURE)
4342 {
4343 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08004344 hddLog(LOGE, "Could not pass on WNI_CFG_HT_CAP_INFO to CCM");
Pratik Bhalgat6bfd1422012-11-22 17:09:40 +05304345 }
4346
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004347 if(ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_VHT_RXSTBC,
Pratik Bhalgat6bfd1422012-11-22 17:09:40 +05304348 pConfig->enableRxSTBC, NULL, eANI_BOOLEAN_FALSE)
4349 ==eHAL_STATUS_FAILURE)
4350 {
4351 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08004352 hddLog(LOGE, "Could not pass on WNI_CFG_VHT_RXSTBC to CCM");
Pratik Bhalgat6bfd1422012-11-22 17:09:40 +05304353 }
Gopichand Nakkala976e3252013-01-03 15:45:56 -08004354
4355#ifdef WLAN_SOFTAP_VSTA_FEATURE
4356 if(pConfig->fEnableVSTASupport)
4357 {
4358 ccmCfgGetInt(pHddCtx->hHal, WNI_CFG_ASSOC_STA_LIMIT, &val);
4359 if( val <= WNI_CFG_ASSOC_STA_LIMIT_STADEF)
4360 val = WNI_CFG_ASSOC_STA_LIMIT_STAMAX;
4361 }
4362 else
4363 {
4364 val = WNI_CFG_ASSOC_STA_LIMIT_STADEF;
4365 }
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004366 if(ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_ASSOC_STA_LIMIT, val,
Gopichand Nakkala976e3252013-01-03 15:45:56 -08004367 NULL, eANI_BOOLEAN_FALSE) == eHAL_STATUS_FAILURE)
4368 {
4369 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08004370 hddLog(LOGE,"Failure: Could not pass on WNI_CFG_ASSOC_STA_LIMIT configuration info to CCM" );
Gopichand Nakkala976e3252013-01-03 15:45:56 -08004371 }
4372#endif
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004373 if(ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_ENABLE_LPWR_IMG_TRANSITION,
Madan Mohan Koyyalamudi0d40e662012-12-07 14:24:14 -08004374 pConfig->enableLpwrImgTransition, NULL, eANI_BOOLEAN_FALSE)
4375 ==eHAL_STATUS_FAILURE)
4376 {
4377 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08004378 hddLog(LOGE, "Could not pass on WNI_CFG_ENABLE_LPWR_IMG_TRANSITION to CCM");
Madan Mohan Koyyalamudi0d40e662012-12-07 14:24:14 -08004379 }
Pratik Bhalgat6bfd1422012-11-22 17:09:40 +05304380
Madan Mohan Koyyalamudi01cba042013-01-10 21:56:05 -08004381 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_ENABLE_MCC_ADAPTIVE_SCHED, pConfig->enableMCCAdaptiveScheduler,
4382 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
4383 {
4384 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08004385 hddLog(LOGE, "Could not pass on WNI_CFG_ENABLE_MCC_ADAPTIVE_SCHED to CCM");
Madan Mohan Koyyalamudi01cba042013-01-10 21:56:05 -08004386 }
Leela V Kiran Kumar Reddy Chiralab1f7d342013-02-11 00:27:02 -08004387 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_DISABLE_LDPC_WITH_TXBF_AP, pConfig->disableLDPCWithTxbfAP,
4388 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
4389 {
4390 fStatus = FALSE;
Kiran Kumar Lokere1f39e952013-04-03 18:34:30 -07004391 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 -08004392 }
Kiran Kumar Lokere1f39e952013-04-03 18:34:30 -07004393
4394 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_DYNAMIC_THRESHOLD_ZERO, pConfig->retryLimitZero,
4395 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
4396 {
4397 fStatus = FALSE;
4398 hddLog(LOGE, "Could not pass on WNI_CFG_DYNAMIC_THRESHOLD_ZERO to CCM");
4399 }
4400
4401 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_DYNAMIC_THRESHOLD_ONE, pConfig->retryLimitOne,
4402 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
4403 {
4404 fStatus = FALSE;
4405 hddLog(LOGE, "Could not pass on WNI_CFG_DYNAMIC_THRESHOLD_ONE to CCM");
4406 }
4407
4408 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_DYNAMIC_THRESHOLD_TWO, pConfig->retryLimitTwo,
4409 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
4410 {
4411 fStatus = FALSE;
4412 hddLog(LOGE, "Could not pass on WNI_CFG_DYNAMIC_THRESHOLD_TWO to CCM");
4413 }
4414
Gopichand Nakkala42bc89e2013-05-27 12:49:09 +05304415 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_MAX_MEDIUM_TIME, pConfig->cfgMaxMediumTime,
4416 NULL, eANI_BOOLEAN_FALSE) == eHAL_STATUS_FAILURE)
4417 {
4418 fStatus = FALSE;
4419 hddLog(LOGE, "Could not pass on WNI_CFG_MAX_MEDIUM_TIME to CCM");
4420 }
4421
Gopichand Nakkala79ff85d2013-05-27 17:05:29 +05304422#ifdef FEATURE_WLAN_TDLS
4423
Sudhir Sattayappa Kohallida1be202013-07-11 12:04:30 -07004424 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_TDLS_QOS_WMM_UAPSD_MASK,
4425 pConfig->fTDLSUapsdMask, NULL,
4426 eANI_BOOLEAN_FALSE) == eHAL_STATUS_FAILURE)
Gopichand Nakkala79ff85d2013-05-27 17:05:29 +05304427 {
4428 fStatus = FALSE;
Sudhir Sattayappa Kohallida1be202013-07-11 12:04:30 -07004429 hddLog(LOGE, "Could not pass on WNI_CFG_TDLS_QOS_WMM_UAPSD_MASK to CCM");
Gopichand Nakkala79ff85d2013-05-27 17:05:29 +05304430 }
Sudhir Sattayappa Kohallida1be202013-07-11 12:04:30 -07004431 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_TDLS_BUF_STA_ENABLED,
4432 pConfig->fEnableTDLSBufferSta, NULL,
4433 eANI_BOOLEAN_FALSE) == eHAL_STATUS_FAILURE)
Gopichand Nakkala79ff85d2013-05-27 17:05:29 +05304434 {
4435 fStatus = FALSE;
Sudhir Sattayappa Kohallida1be202013-07-11 12:04:30 -07004436 hddLog(LOGE, "Could not pass on WNI_CFG_TDLS_BUF_STA_ENABLED to CCM");
Gopichand Nakkala79ff85d2013-05-27 17:05:29 +05304437 }
Sudhir Sattayappa Kohallida1be202013-07-11 12:04:30 -07004438 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_TDLS_PUAPSD_INACT_TIME,
4439 pConfig->fTDLSPuapsdInactivityTimer, NULL,
4440 eANI_BOOLEAN_FALSE) == eHAL_STATUS_FAILURE)
Gopichand Nakkala79ff85d2013-05-27 17:05:29 +05304441 {
4442 fStatus = FALSE;
Sudhir Sattayappa Kohallida1be202013-07-11 12:04:30 -07004443 hddLog(LOGE, "Could not pass on WNI_CFG_TDLS_PUAPSD_INACT_TIME to CCM");
Gopichand Nakkala79ff85d2013-05-27 17:05:29 +05304444 }
Sudhir Sattayappa Kohallida1be202013-07-11 12:04:30 -07004445 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_TDLS_RX_FRAME_THRESHOLD,
4446 pConfig->fTDLSRxFrameThreshold, NULL,
4447 eANI_BOOLEAN_FALSE) == eHAL_STATUS_FAILURE)
Gopichand Nakkala79ff85d2013-05-27 17:05:29 +05304448 {
4449 fStatus = FALSE;
Sudhir Sattayappa Kohallida1be202013-07-11 12:04:30 -07004450 hddLog(LOGE, "Could not pass on WNI_CFG_TDLS_RX_FRAME_THRESHOLD to CCM");
Gopichand Nakkala79ff85d2013-05-27 17:05:29 +05304451 }
Naresh Jayaramf73f3762014-02-04 16:13:20 +05304452
4453 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_TDLS_OFF_CHANNEL_ENABLED,
4454 pConfig->fEnableTDLSOffChannel, NULL,
4455 eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
4456 {
4457 fStatus = FALSE;
4458 hddLog(LOGE, "Could not pass on WNI_CFG_TDLS_BUF_STA_ENABLED to CCM\n");
4459 }
4460
Gopichand Nakkala79ff85d2013-05-27 17:05:29 +05304461#endif
4462
Sudhir Sattayappa Kohallida1be202013-07-11 12:04:30 -07004463 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_ENABLE_ADAPT_RX_DRAIN,
4464 pConfig->fEnableAdaptRxDrain, NULL,
4465 eANI_BOOLEAN_FALSE) == eHAL_STATUS_FAILURE)
4466 {
4467 fStatus = FALSE;
4468 hddLog(LOGE, "Could not pass on WNI_CFG_ENABLE_ADAPT_RX_DRAIN to CCM");
4469 }
Yue Ma0fd23872013-08-01 15:56:47 -07004470
4471 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_FLEX_CONNECT_POWER_FACTOR,
4472 pConfig->flexConnectPowerFactor, NULL,
4473 eANI_BOOLEAN_FALSE) == eHAL_STATUS_FAILURE)
4474 {
4475 fStatus = FALSE;
4476 hddLog(LOGE, "Failure: Could not pass on "
4477 "WNI_CFG_FLEX_CONNECT_POWER_FACTOR to CCM");
4478 }
4479
Madan Mohan Koyyalamudica454572013-08-07 19:57:03 +05304480 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_ANTENNA_DIVESITY,
4481 pConfig->antennaDiversity, NULL,
4482 eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
4483 {
4484 fStatus = FALSE;
4485 hddLog(LOGE, "Could not pass on WNI_CFG_ANTENNA_DIVESITY to CCM");
4486 }
4487
Kiet Lam4bbd3cb2013-11-07 20:03:49 +05304488 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_ATH_DISABLE,
4489 pConfig->cfgAthDisable, NULL,
4490 eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
4491 {
4492 fStatus = FALSE;
4493 hddLog(LOGE, "Could not pass on WNI_CFG_ATH_DISABLE to CCM");
4494 }
c_hpothu6d7dc922013-12-02 12:36:41 +05304495
4496 if (ccmCfgSetInt(pHddCtx->hHal,
4497 WNI_CFG_BTC_ACTIVE_WLAN_LEN,
4498 pConfig->cfgBtcActiveWlanLen,
4499 NULL, eANI_BOOLEAN_FALSE) == eHAL_STATUS_FAILURE)
4500 {
4501 fStatus = FALSE;
4502 hddLog(LOGE, "Could not pass on WNI_BTC_ACTIVE_WLAN_LEN to CCM");
4503 }
4504
4505 if (ccmCfgSetInt(pHddCtx->hHal,
4506 WNI_CFG_BTC_ACTIVE_BT_LEN,
4507 pConfig->cfgBtcActiveBtLen,
4508 NULL, eANI_BOOLEAN_FALSE) == eHAL_STATUS_FAILURE)
4509 {
4510 fStatus = FALSE;
4511 hddLog(LOGE, "Could not pass on WNI_BTC_ACTIVE_BT_LEN to CCM");
4512 }
4513
4514 if (ccmCfgSetInt(pHddCtx->hHal,
4515 WNI_CFG_BTC_SAP_ACTIVE_WLAN_LEN,
4516 pConfig->cfgBtcSapActiveWlanLen,
4517 NULL, eANI_BOOLEAN_FALSE) == eHAL_STATUS_FAILURE)
4518 {
4519 fStatus = FALSE;
4520 hddLog(LOGE, "Could not pass on WNI_BTC_ACTIVE_WLAN_LEN to CCM");
4521 }
4522
4523 if (ccmCfgSetInt(pHddCtx->hHal,
4524 WNI_CFG_BTC_SAP_ACTIVE_BT_LEN,
4525 pConfig->cfgBtcSapActiveBtLen,
4526 NULL, eANI_BOOLEAN_FALSE) == eHAL_STATUS_FAILURE)
4527 {
4528 fStatus = FALSE;
4529 hddLog(LOGE, "Could not pass on WNI_BTC_ACTIVE_BT_LEN to CCM");
4530 }
AnjaneeDevi Kapparapu50239e32014-01-07 18:09:33 +05304531
4532 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_ASD_PROBE_INTERVAL,
4533 pConfig->gAsdProbeInterval, NULL,
4534 eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
4535 {
4536 fStatus = FALSE;
4537 hddLog(LOGE, "Could not pass on WNI_CFG_ASD_PROBE_INTERVAL to CCM");
4538 }
4539
4540 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_ASD_TRIGGER_THRESHOLD,
4541 pConfig->gAsdTriggerThreshold, NULL,
4542 eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
4543 {
4544 fStatus = FALSE;
4545 hddLog(LOGE, "Could not pass on WNI_CFG_ASD_TRIGGER_THRESHOLD to CCM");
4546 }
4547
4548 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_ASD_RTT_RSSI_HYST_THRESHOLD,
4549 pConfig->gAsdRTTRssiHystThreshold, NULL,
4550 eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
4551 {
4552 fStatus = FALSE;
4553 hddLog(LOGE, "Could not pass on WNI_CFG_ASD_RSSI_HYST_THRESHOLD to CCM");
4554 }
Leela Venkata Kiran Kumar Reddy Chirala22c159b2013-12-23 18:19:13 -08004555
4556 if (ccmCfgSetInt(pHddCtx->hHal,
4557 WNI_CFG_DEBUG_P2P_REMAIN_ON_CHANNEL,
4558 pConfig->debugP2pRemainOnChannel,
4559 NULL, eANI_BOOLEAN_FALSE) == eHAL_STATUS_FAILURE)
4560 {
4561 fStatus = FALSE;
4562 hddLog(LOGE,
4563 "Could not pass on WNI_CFG_DEBUG_P2P_REMAIN_ON_CHANNEL to CCM");
4564 }
4565
4566 if (ccmCfgSetInt(pHddCtx->hHal,
4567 WNI_CFG_BTC_CTS2S_DURING_SCO,
4568 pConfig->cfgBtcCTS2SduringSCO,
4569 NULL, eANI_BOOLEAN_FALSE) == eHAL_STATUS_FAILURE)
4570 {
4571 fStatus = FALSE;
4572 hddLog(LOGE, "Could not pass on WNI_CFG_BTC_CTS2S_DURING_SCO to CCM");
4573 }
Jeff Johnson295189b2012-06-20 16:38:30 -07004574 return fStatus;
4575}
4576
4577
4578/**---------------------------------------------------------------------------
4579
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004580 \brief hdd_init_set_sme_config() -
Jeff Johnson295189b2012-06-20 16:38:30 -07004581
4582 This function initializes the sme configuration parameters
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004583
Jeff Johnson295189b2012-06-20 16:38:30 -07004584 \param - pHddCtx - Pointer to the HDD Adapter.
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004585
Jeff Johnson295189b2012-06-20 16:38:30 -07004586 \return - 0 for success, non zero for failure
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004587
Jeff Johnson295189b2012-06-20 16:38:30 -07004588 --------------------------------------------------------------------------*/
4589
4590VOS_STATUS hdd_set_sme_config( hdd_context_t *pHddCtx )
4591{
4592 VOS_STATUS status = VOS_STATUS_SUCCESS;
4593 eHalStatus halStatus;
4594 tSmeConfigParams smeConfig;
4595
4596 hdd_config_t *pConfig = pHddCtx->cfg_ini;
4597
Amar Singhalfddc28c2013-09-05 13:03:40 -07004598
Jeff Johnson295189b2012-06-20 16:38:30 -07004599 vos_mem_zero( &smeConfig, sizeof( smeConfig ) );
4600
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004601 VOS_TRACE( VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH,
Arif Hussain6d2a3322013-11-17 19:50:10 -08004602 "%s bWmmIsEnabled=%d 802_11e_enabled=%d dot11Mode=%d", __func__,
Jeff Johnson295189b2012-06-20 16:38:30 -07004603 pConfig->WmmMode, pConfig->b80211eIsEnabled, pConfig->dot11Mode);
4604
4605 // Config params obtained from the registry
Amar Singhalfddc28c2013-09-05 13:03:40 -07004606
Jeff Johnson295189b2012-06-20 16:38:30 -07004607 smeConfig.csrConfig.RTSThreshold = pConfig->RTSThreshold;
4608 smeConfig.csrConfig.FragmentationThreshold = pConfig->FragmentationThreshold;
4609 smeConfig.csrConfig.shortSlotTime = pConfig->ShortSlotTimeEnabled;
4610 smeConfig.csrConfig.Is11dSupportEnabled = pConfig->Is11dSupportEnabled;
4611 smeConfig.csrConfig.HeartbeatThresh24 = pConfig->HeartbeatThresh24;
4612
4613 smeConfig.csrConfig.phyMode = hdd_cfg_xlate_to_csr_phy_mode ( pConfig->dot11Mode );
4614
Leela Venkata Kiran Kumar Reddy Chirala784d7e82013-11-20 10:57:25 -08004615 if( (pConfig->dot11Mode == eHDD_DOT11_MODE_abg) ||
4616 (pConfig->dot11Mode == eHDD_DOT11_MODE_11b) ||
4617 (pConfig->dot11Mode == eHDD_DOT11_MODE_11g) ||
4618 (pConfig->dot11Mode == eHDD_DOT11_MODE_11b_ONLY) ||
4619 (pConfig->dot11Mode == eHDD_DOT11_MODE_11g_ONLY))
4620 {
4621 smeConfig.csrConfig.channelBondingMode24GHz = 0;
4622 smeConfig.csrConfig.channelBondingMode5GHz = 0;
4623 }
4624 else
4625 {
4626 smeConfig.csrConfig.channelBondingMode24GHz = pConfig->nChannelBondingMode24GHz;
4627 smeConfig.csrConfig.channelBondingMode5GHz = pConfig->nChannelBondingMode5GHz;
4628 }
Jeff Johnson295189b2012-06-20 16:38:30 -07004629 smeConfig.csrConfig.TxRate = pConfig->TxRate;
4630 smeConfig.csrConfig.nScanResultAgeCount = pConfig->ScanResultAgeCount;
4631 smeConfig.csrConfig.scanAgeTimeNCNPS = pConfig->nScanAgeTimeNCNPS;
4632 smeConfig.csrConfig.scanAgeTimeNCPS = pConfig->nScanAgeTimeNCPS;
4633 smeConfig.csrConfig.scanAgeTimeCNPS = pConfig->nScanAgeTimeCNPS;
4634 smeConfig.csrConfig.scanAgeTimeCPS = pConfig->nScanAgeTimeCPS;
4635 smeConfig.csrConfig.AdHocChannel24 = pConfig->OperatingChannel;
4636 smeConfig.csrConfig.fEnforce11dChannels = pConfig->fEnforce11dChannels;
4637 smeConfig.csrConfig.fSupplicantCountryCodeHasPriority = pConfig->fSupplicantCountryCodeHasPriority;
4638 smeConfig.csrConfig.fEnforceCountryCodeMatch = pConfig->fEnforceCountryCodeMatch;
4639 smeConfig.csrConfig.fEnforceDefaultDomain = pConfig->fEnforceDefaultDomain;
4640 smeConfig.csrConfig.bCatRssiOffset = pConfig->nRssiCatGap;
4641 smeConfig.csrConfig.vccRssiThreshold = pConfig->nVccRssiTrigger;
4642 smeConfig.csrConfig.vccUlMacLossThreshold = pConfig->nVccUlMacLossThreshold;
4643 smeConfig.csrConfig.nRoamingTime = pConfig->nRoamingTime;
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004644 smeConfig.csrConfig.IsIdleScanEnabled = pConfig->nEnableIdleScan;
Jeff Johnson295189b2012-06-20 16:38:30 -07004645 smeConfig.csrConfig.nActiveMaxChnTime = pConfig->nActiveMaxChnTime;
4646 smeConfig.csrConfig.nActiveMinChnTime = pConfig->nActiveMinChnTime;
4647 smeConfig.csrConfig.nPassiveMaxChnTime = pConfig->nPassiveMaxChnTime;
4648 smeConfig.csrConfig.nPassiveMinChnTime = pConfig->nPassiveMinChnTime;
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004649 smeConfig.csrConfig.nActiveMaxChnTimeBtc = pConfig->nActiveMaxChnTimeBtc;
4650 smeConfig.csrConfig.nActiveMinChnTimeBtc = pConfig->nActiveMinChnTimeBtc;
Kiran Kumar Lokere458d7322013-05-29 14:29:43 -07004651 smeConfig.csrConfig.disableAggWithBtc = pConfig->disableAggWithBtc;
Madan Mohan Koyyalamudi4ff9cd62012-10-30 17:48:57 -07004652#ifdef WLAN_AP_STA_CONCURRENCY
4653 smeConfig.csrConfig.nActiveMaxChnTimeConc = pConfig->nActiveMaxChnTimeConc;
4654 smeConfig.csrConfig.nActiveMinChnTimeConc = pConfig->nActiveMinChnTimeConc;
4655 smeConfig.csrConfig.nPassiveMaxChnTimeConc = pConfig->nPassiveMaxChnTimeConc;
4656 smeConfig.csrConfig.nPassiveMinChnTimeConc = pConfig->nPassiveMinChnTimeConc;
4657 smeConfig.csrConfig.nRestTimeConc = pConfig->nRestTimeConc;
Sudhir Sattayappa Kohallieb97d502013-05-22 23:16:42 -07004658 smeConfig.csrConfig.nNumStaChanCombinedConc = pConfig->nNumStaChanCombinedConc;
4659 smeConfig.csrConfig.nNumP2PChanCombinedConc = pConfig->nNumP2PChanCombinedConc;
4660
Madan Mohan Koyyalamudi4ff9cd62012-10-30 17:48:57 -07004661#endif
Jeff Johnson295189b2012-06-20 16:38:30 -07004662 smeConfig.csrConfig.Is11eSupportEnabled = pConfig->b80211eIsEnabled;
4663 smeConfig.csrConfig.WMMSupportMode = pConfig->WmmMode;
4664
4665#if defined WLAN_FEATURE_VOWIFI
4666 smeConfig.rrmConfig.rrmEnabled = pConfig->fRrmEnable;
4667 smeConfig.rrmConfig.maxRandnInterval = pConfig->nRrmRandnIntvl;
4668#endif
4669 //Remaining config params not obtained from registry
4670 // On RF EVB beacon using channel 1.
Jeff Johnsone7245742012-09-05 17:12:55 -07004671#ifdef WLAN_FEATURE_11AC
4672 smeConfig.csrConfig.nVhtChannelWidth = pConfig->vhtChannelWidth;
Shailender Karmuchi08f87c22013-01-17 12:51:24 -08004673 smeConfig.csrConfig.enableTxBF = pConfig->enableTxBF;
Shailender Karmuchicc3fe442013-02-16 18:18:33 -08004674 smeConfig.csrConfig.txBFCsnValue = pConfig->txBFCsnValue;
Ravi Joshi83bfaa12013-05-28 22:12:08 -07004675 smeConfig.csrConfig.enableVhtFor24GHz = pConfig->enableVhtFor24GHzBand;
Jeff Johnsone7245742012-09-05 17:12:55 -07004676#endif
Shailender Karmuchia734f332013-04-19 14:02:48 -07004677 smeConfig.csrConfig.AdHocChannel5G = pConfig->AdHocChannel5G;
4678 smeConfig.csrConfig.AdHocChannel24 = pConfig->AdHocChannel24G;
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004679 smeConfig.csrConfig.ProprietaryRatesEnabled = 0;
4680 smeConfig.csrConfig.HeartbeatThresh50 = 40;
4681 smeConfig.csrConfig.bandCapability = pConfig->nBandCapability;
Madan Mohan Koyyalamudi8db1c942013-01-10 15:24:29 -08004682 if (pConfig->nBandCapability == eCSR_BAND_24)
4683 {
4684 smeConfig.csrConfig.Is11hSupportEnabled = 0;
4685 } else {
4686 smeConfig.csrConfig.Is11hSupportEnabled = pConfig->Is11hSupportEnabled;
4687 }
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004688 smeConfig.csrConfig.cbChoice = 0;
4689 smeConfig.csrConfig.bgScanInterval = 0;
4690 smeConfig.csrConfig.eBand = pConfig->nBandCapability;
Jeff Johnson295189b2012-06-20 16:38:30 -07004691 smeConfig.csrConfig.nTxPowerCap = pConfig->nTxPowerCap;
4692 smeConfig.csrConfig.fEnableBypass11d = pConfig->enableBypass11d;
4693 smeConfig.csrConfig.fEnableDFSChnlScan = pConfig->enableDFSChnlScan;
Madan Mohan Koyyalamudid5026072012-11-30 14:56:21 -08004694#if defined (WLAN_FEATURE_VOWIFI_11R) || defined (FEATURE_WLAN_CCX) || defined(FEATURE_WLAN_LFR)
4695 smeConfig.csrConfig.nRoamPrefer5GHz = pConfig->nRoamPrefer5GHz;
Srinivas Girigowdabbd16eb2013-03-21 12:34:46 -07004696 smeConfig.csrConfig.nRoamIntraBand = pConfig->nRoamIntraBand;
Varun Reddy Yeturu920df212013-05-22 08:07:23 -07004697 smeConfig.csrConfig.nProbes = pConfig->nProbes;
4698 smeConfig.csrConfig.nRoamScanHomeAwayTime = pConfig->nRoamScanHomeAwayTime;
Madan Mohan Koyyalamudid5026072012-11-30 14:56:21 -08004699#endif
Jeff Johnsone7245742012-09-05 17:12:55 -07004700 smeConfig.csrConfig.fFirstScanOnly2GChnl = pConfig->enableFirstScan2GOnly;
4701
Jeff Johnson295189b2012-06-20 16:38:30 -07004702 //FIXME 11d config is hardcoded
Jeff Johnson7dda7772013-02-27 08:36:13 -08004703 if ( VOS_STA_SAP_MODE != hdd_get_conparam())
4704 {
4705 smeConfig.csrConfig.Csr11dinfo.Channels.numChannels = 0;
Jeff Johnson295189b2012-06-20 16:38:30 -07004706
Jeff Johnson7dda7772013-02-27 08:36:13 -08004707 /* if there is a requirement that HDD will control the default
4708 * channel list & country code (say from .ini file) we need to
4709 * add some logic here. Otherwise the default 11d info should
4710 * come from NV as per our current implementation */
Jeff Johnson295189b2012-06-20 16:38:30 -07004711 }
Jeff Johnson7dda7772013-02-27 08:36:13 -08004712 else
4713 {
4714 VOS_TRACE( VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_ERROR,
4715 "AP country Code %s", pConfig->apCntryCode);
Jeff Johnson295189b2012-06-20 16:38:30 -07004716
Jeff Johnson7dda7772013-02-27 08:36:13 -08004717 if (memcmp(pConfig->apCntryCode, CFG_AP_COUNTRY_CODE_DEFAULT, 3) != 0)
4718 sme_setRegInfo(pHddCtx->hHal, pConfig->apCntryCode);
4719 sme_set11dinfo(pHddCtx->hHal, &smeConfig);
4720 }
Jeff Johnson295189b2012-06-20 16:38:30 -07004721 hdd_set_power_save_config(pHddCtx, &smeConfig);
4722 hdd_set_btc_config(pHddCtx);
4723
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004724#ifdef WLAN_FEATURE_VOWIFI_11R
Jeff Johnson295189b2012-06-20 16:38:30 -07004725 smeConfig.csrConfig.csr11rConfig.IsFTResourceReqSupported = pConfig->fFTResourceReqSupported;
4726#endif
Jeff Johnson04dd8a82012-06-29 20:41:40 -07004727#ifdef FEATURE_WLAN_LFR
4728 smeConfig.csrConfig.isFastRoamIniFeatureEnabled = pConfig->isFastRoamIniFeatureEnabled;
Sameer Thalappil4ae66ec2013-11-05 14:17:35 -08004729 smeConfig.csrConfig.MAWCEnabled = pConfig->MAWCEnabled;
Jeff Johnson04dd8a82012-06-29 20:41:40 -07004730#endif
Jeff Johnson295189b2012-06-20 16:38:30 -07004731#ifdef FEATURE_WLAN_CCX
4732 smeConfig.csrConfig.isCcxIniFeatureEnabled = pConfig->isCcxIniFeatureEnabled;
Gopichand Nakkala98a98af2012-12-31 14:38:47 -08004733 if( pConfig->isCcxIniFeatureEnabled )
4734 {
4735 pConfig->isFastTransitionEnabled = TRUE;
4736 }
Jeff Johnson295189b2012-06-20 16:38:30 -07004737#endif
Jeff Johnson04dd8a82012-06-29 20:41:40 -07004738#if defined (WLAN_FEATURE_VOWIFI_11R) || defined (FEATURE_WLAN_CCX) || defined(FEATURE_WLAN_LFR)
Jeff Johnson295189b2012-06-20 16:38:30 -07004739 smeConfig.csrConfig.isFastTransitionEnabled = pConfig->isFastTransitionEnabled;
Jeff Johnson43971f52012-07-17 12:26:56 -07004740 smeConfig.csrConfig.RoamRssiDiff = pConfig->RoamRssiDiff;
Madan Mohan Koyyalamudi62b55b02012-12-03 16:45:39 -08004741 smeConfig.csrConfig.nImmediateRoamRssiDiff = pConfig->nImmediateRoamRssiDiff;
Srinivas Girigowdaad34ca92013-10-22 10:54:29 -07004742 smeConfig.csrConfig.isWESModeEnabled = pConfig->isWESModeEnabled;
Jeff Johnson295189b2012-06-20 16:38:30 -07004743#endif
Varun Reddy Yeturud0a3f252013-04-15 21:58:13 -07004744#ifdef WLAN_FEATURE_ROAM_SCAN_OFFLOAD
4745 smeConfig.csrConfig.isRoamOffloadScanEnabled = pConfig->isRoamOffloadScanEnabled;
Srinivas Girigowda830bbd02013-06-13 19:44:16 -07004746 smeConfig.csrConfig.bFastRoamInConIniFeatureEnabled = pConfig->bFastRoamInConIniFeatureEnabled;
4747
4748 if (0 == smeConfig.csrConfig.isRoamOffloadScanEnabled)
4749 {
4750 /* Disable roaming in concurrency if roam scan offload is disabled */
4751 smeConfig.csrConfig.bFastRoamInConIniFeatureEnabled = 0;
4752 }
Varun Reddy Yeturud0a3f252013-04-15 21:58:13 -07004753#endif
Jeff Johnson295189b2012-06-20 16:38:30 -07004754#ifdef WLAN_FEATURE_NEIGHBOR_ROAMING
4755 smeConfig.csrConfig.neighborRoamConfig.nNeighborReassocRssiThreshold = pConfig->nNeighborReassocRssiThreshold;
4756 smeConfig.csrConfig.neighborRoamConfig.nNeighborLookupRssiThreshold = pConfig->nNeighborLookupRssiThreshold;
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004757 smeConfig.csrConfig.neighborRoamConfig.nNeighborScanMaxChanTime = pConfig->nNeighborScanMaxChanTime;
4758 smeConfig.csrConfig.neighborRoamConfig.nNeighborScanMinChanTime = pConfig->nNeighborScanMinChanTime;
Jeff Johnson295189b2012-06-20 16:38:30 -07004759 smeConfig.csrConfig.neighborRoamConfig.nNeighborScanTimerPeriod = pConfig->nNeighborScanPeriod;
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004760 smeConfig.csrConfig.neighborRoamConfig.nMaxNeighborRetries = pConfig->nMaxNeighborReqTries;
Jeff Johnson295189b2012-06-20 16:38:30 -07004761 smeConfig.csrConfig.neighborRoamConfig.nNeighborResultsRefreshPeriod = pConfig->nNeighborResultsRefreshPeriod;
Srinivas Girigowdade697412013-02-14 16:31:48 -08004762 smeConfig.csrConfig.neighborRoamConfig.nEmptyScanRefreshPeriod = pConfig->nEmptyScanRefreshPeriod;
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004763 hdd_string_to_u8_array( pConfig->neighborScanChanList,
4764 smeConfig.csrConfig.neighborRoamConfig.neighborScanChanList.channelList,
4765 &smeConfig.csrConfig.neighborRoamConfig.neighborScanChanList.numChannels,
Jeff Johnson295189b2012-06-20 16:38:30 -07004766 WNI_CFG_VALID_CHANNEL_LIST_LEN );
4767#endif
4768
4769 smeConfig.csrConfig.addTSWhenACMIsOff = pConfig->AddTSWhenACMIsOff;
4770 smeConfig.csrConfig.fValidateList = pConfig->fValidateScanList;
4771
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004772 //Enable/Disable MCC
Jeff Johnson295189b2012-06-20 16:38:30 -07004773 smeConfig.csrConfig.fEnableMCCMode = pConfig->enableMCC;
Mohit Khanna7ed53f02012-09-11 17:52:10 -07004774 smeConfig.csrConfig.fAllowMCCGODiffBI = pConfig->allowMCCGODiffBI;
Jeff Johnson295189b2012-06-20 16:38:30 -07004775
Sandeep Puligilla2b6dc632012-12-17 14:44:16 -08004776 //Scan Results Aging Time out value
4777 smeConfig.csrConfig.scanCfgAgingTime = pConfig->scanAgingTimeout;
4778
Gopichand Nakkalab2d2c312013-01-04 11:41:02 -08004779 smeConfig.csrConfig.enableTxLdpc = pConfig->enableTxLdpc;
4780
krunal soni5afa96c2013-09-06 22:19:02 -07004781 smeConfig.csrConfig.isAmsduSupportInAMPDU = pConfig->isAmsduSupportInAMPDU;
Srinivas Girigowda41c7c5f2013-10-21 19:01:38 -07004782 smeConfig.csrConfig.nSelect5GHzMargin = pConfig->nSelect5GHzMargin;
krunal soni5afa96c2013-09-06 22:19:02 -07004783
krunal sonie9002db2013-11-25 14:24:17 -08004784 smeConfig.csrConfig.isCoalesingInIBSSAllowed =
4785 pHddCtx->cfg_ini->isCoalesingInIBSSAllowed;
4786
4787
Gopichand Nakkalae620d5a2013-04-26 05:45:57 -07004788 /* update SSR config */
4789 sme_UpdateEnableSSR((tHalHandle)(pHddCtx->hHal), pHddCtx->cfg_ini->enableSSR);
Gopichand Nakkala86e42662013-06-11 17:44:11 +05304790 /* Update the Directed scan offload setting */
4791 smeConfig.fScanOffload = pHddCtx->cfg_ini->fScanOffload;
Gopichand Nakkalae620d5a2013-04-26 05:45:57 -07004792
Tushnim Bhattacharyyaa3ba5a52014-01-30 11:37:33 -08004793 smeConfig.fEnableDebugLog = pHddCtx->cfg_ini->gEnableDebugLog;
4794
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004795 halStatus = sme_UpdateConfig( pHddCtx->hHal, &smeConfig);
Jeff Johnson295189b2012-06-20 16:38:30 -07004796 if ( !HAL_STATUS_SUCCESS( halStatus ) )
4797 {
4798 status = VOS_STATUS_E_FAILURE;
c_hpothu6ff1c3c2013-10-01 19:01:57 +05304799 hddLog(LOGE, "sme_UpdateConfig() return failure %d", halStatus);
Jeff Johnson295189b2012-06-20 16:38:30 -07004800 }
4801
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004802
4803 return status;
Jeff Johnson295189b2012-06-20 16:38:30 -07004804}
4805
4806
4807/**---------------------------------------------------------------------------
4808
4809 \brief hdd_execute_config_command() -
4810
4811 This function executes an arbitrary configuration set command
4812
4813 \param - pHddCtx - Pointer to the HDD Adapter.
4814 \parmm - command - a configuration command of the form:
4815 <name>=<value>
4816
4817 \return - 0 for success, non zero for failure
4818
4819 --------------------------------------------------------------------------*/
4820
4821VOS_STATUS hdd_execute_config_command(hdd_context_t *pHddCtx, char *command)
4822{
4823 size_t tableSize = sizeof(g_registry_table)/sizeof(g_registry_table[0]);
4824 REG_TABLE_ENTRY *pRegEntry;
4825 char *clone;
4826 char *pCmd;
4827 void *pField;
4828 char *name;
4829 char *value_str;
4830 v_U32_t value;
4831 v_S31_t svalue;
4832 size_t len_value_str;
4833 unsigned int idx;
4834 unsigned int i;
4835 VOS_STATUS vstatus;
Madan Mohan Koyyalamudid8ac8662012-11-06 19:04:56 -08004836 int rv;
Jeff Johnson295189b2012-06-20 16:38:30 -07004837
4838 // assume failure until proven otherwise
4839 vstatus = VOS_STATUS_E_FAILURE;
4840
4841 // clone the command so that we can manipulate it
4842 clone = kstrdup(command, GFP_ATOMIC);
4843 if (NULL == clone)
4844 {
4845 hddLog(LOGE, "%s: memory allocation failure, unable to process [%s]",
Madan Mohan Koyyalamudi87054ba2012-11-02 13:24:12 -07004846 __func__, command);
Jeff Johnson295189b2012-06-20 16:38:30 -07004847 return vstatus;
4848 }
4849
4850 // 'clone' will point to the beginning of the string so it can be freed
4851 // 'pCmd' will be used to walk/parse the command
4852 pCmd = clone;
4853
4854 // get rid of leading/trailing whitespace
4855 pCmd = i_trim(pCmd);
4856 if ('\0' == *pCmd)
4857 {
4858 // only whitespace
4859 hddLog(LOGE, "%s: invalid command, only whitespace:[%s]",
Madan Mohan Koyyalamudi87054ba2012-11-02 13:24:12 -07004860 __func__, command);
Jeff Johnson295189b2012-06-20 16:38:30 -07004861 goto done;
4862 }
4863
4864 // parse the <name> = <value>
4865 name = pCmd;
4866 while (('=' != *pCmd) && ('\0' != *pCmd))
4867 {
4868 pCmd++;
4869 }
4870 if ('\0' == *pCmd)
4871 {
4872 // did not find '='
4873 hddLog(LOGE, "%s: invalid command, no '=':[%s]",
Madan Mohan Koyyalamudi87054ba2012-11-02 13:24:12 -07004874 __func__, command);
Jeff Johnson295189b2012-06-20 16:38:30 -07004875 goto done;
4876 }
4877
4878 // replace '=' with NUL to terminate the <name>
4879 *pCmd++ = '\0';
4880 name = i_trim(name);
4881 if ('\0' == *name)
4882 {
4883 // did not find a name
4884 hddLog(LOGE, "%s: invalid command, no <name>:[%s]",
Madan Mohan Koyyalamudi87054ba2012-11-02 13:24:12 -07004885 __func__, command);
Jeff Johnson295189b2012-06-20 16:38:30 -07004886 goto done;
4887 }
4888
4889 value_str = i_trim(pCmd);
4890 if ('\0' == *value_str)
4891 {
4892 // did not find a value
4893 hddLog(LOGE, "%s: invalid command, no <value>:[%s]",
Madan Mohan Koyyalamudi87054ba2012-11-02 13:24:12 -07004894 __func__, command);
Jeff Johnson295189b2012-06-20 16:38:30 -07004895 goto done;
4896 }
4897
4898 // lookup the configuration item
4899 for (idx = 0; idx < tableSize; idx++)
4900 {
4901 if (0 == strcmp(name, g_registry_table[idx].RegName))
4902 {
4903 // found a match
4904 break;
4905 }
4906 }
4907 if (tableSize == idx)
4908 {
4909 // did not match the name
4910 hddLog(LOGE, "%s: invalid command, unknown configuration item:[%s]",
Madan Mohan Koyyalamudi87054ba2012-11-02 13:24:12 -07004911 __func__, command);
Jeff Johnson295189b2012-06-20 16:38:30 -07004912 goto done;
4913 }
4914
4915 pRegEntry = &g_registry_table[idx];
4916 if (!(pRegEntry->Flags & VAR_FLAGS_DYNAMIC_CFG))
4917 {
4918 // does not support dynamic configuration
4919 hddLog(LOGE, "%s: invalid command, %s does not support "
Madan Mohan Koyyalamudi87054ba2012-11-02 13:24:12 -07004920 "dynamic configuration", __func__, name);
Jeff Johnson295189b2012-06-20 16:38:30 -07004921 goto done;
4922 }
4923
4924 pField = ((v_U8_t *)pHddCtx->cfg_ini) + pRegEntry->VarOffset;
4925
4926 switch (pRegEntry->RegType)
4927 {
4928 case WLAN_PARAM_Integer:
Jeff Johnson02797792013-10-26 19:17:13 -07004929 rv = kstrtou32(value_str, 10, &value);
Madan Mohan Koyyalamudid8ac8662012-11-06 19:04:56 -08004930 if (rv < 0)
4931 goto done;
Jeff Johnson295189b2012-06-20 16:38:30 -07004932 if (value < pRegEntry->VarMin)
4933 {
4934 // out of range
Jeff Johnson0299d0a2013-10-30 12:37:43 -07004935 hddLog(LOGE, "%s: invalid command, value %u < min value %lu",
Madan Mohan Koyyalamudi87054ba2012-11-02 13:24:12 -07004936 __func__, value, pRegEntry->VarMin);
Jeff Johnson295189b2012-06-20 16:38:30 -07004937 goto done;
4938 }
4939 if (value > pRegEntry->VarMax)
4940 {
4941 // out of range
Jeff Johnson0299d0a2013-10-30 12:37:43 -07004942 hddLog(LOGE, "%s: invalid command, value %u > max value %lu",
Madan Mohan Koyyalamudi87054ba2012-11-02 13:24:12 -07004943 __func__, value, pRegEntry->VarMax);
Jeff Johnson295189b2012-06-20 16:38:30 -07004944 goto done;
4945 }
4946 memcpy(pField, &value, pRegEntry->VarSize);
4947 break;
4948
4949 case WLAN_PARAM_HexInteger:
Jeff Johnson02797792013-10-26 19:17:13 -07004950 rv = kstrtou32(value_str, 16, &value);
Madan Mohan Koyyalamudid8ac8662012-11-06 19:04:56 -08004951 if (rv < 0)
4952 goto done;
Jeff Johnson295189b2012-06-20 16:38:30 -07004953 if (value < pRegEntry->VarMin)
4954 {
4955 // out of range
Jeff Johnson0299d0a2013-10-30 12:37:43 -07004956 hddLog(LOGE, "%s: invalid command, value %x < min value %lx",
Madan Mohan Koyyalamudi87054ba2012-11-02 13:24:12 -07004957 __func__, value, pRegEntry->VarMin);
Jeff Johnson295189b2012-06-20 16:38:30 -07004958 goto done;
4959 }
4960 if (value > pRegEntry->VarMax)
4961 {
4962 // out of range
Jeff Johnson0299d0a2013-10-30 12:37:43 -07004963 hddLog(LOGE, "%s: invalid command, value %x > max value %lx",
Madan Mohan Koyyalamudi87054ba2012-11-02 13:24:12 -07004964 __func__, value, pRegEntry->VarMax);
Jeff Johnson295189b2012-06-20 16:38:30 -07004965 goto done;
4966 }
4967 memcpy(pField, &value, pRegEntry->VarSize);
4968 break;
4969
4970 case WLAN_PARAM_SignedInteger:
Jeff Johnson02797792013-10-26 19:17:13 -07004971 rv = kstrtos32(value_str, 10, &svalue);
Madan Mohan Koyyalamudid8ac8662012-11-06 19:04:56 -08004972 if (rv < 0)
4973 goto done;
Jeff Johnson295189b2012-06-20 16:38:30 -07004974 if (svalue < (v_S31_t)pRegEntry->VarMin)
4975 {
4976 // out of range
4977 hddLog(LOGE, "%s: invalid command, value %d < min value %d",
Madan Mohan Koyyalamudi87054ba2012-11-02 13:24:12 -07004978 __func__, svalue, (int)pRegEntry->VarMin);
Jeff Johnson295189b2012-06-20 16:38:30 -07004979 goto done;
4980 }
4981 if (svalue > (v_S31_t)pRegEntry->VarMax)
4982 {
4983 // out of range
4984 hddLog(LOGE, "%s: invalid command, value %d > max value %d",
Madan Mohan Koyyalamudi87054ba2012-11-02 13:24:12 -07004985 __func__, svalue, (int)pRegEntry->VarMax);
Jeff Johnson295189b2012-06-20 16:38:30 -07004986 goto done;
4987 }
4988 memcpy(pField, &svalue, pRegEntry->VarSize);
4989 break;
4990
4991 case WLAN_PARAM_String:
4992 len_value_str = strlen(value_str);
4993 if (len_value_str > (pRegEntry->VarSize - 1))
4994 {
4995 // too big
4996 hddLog(LOGE,
4997 "%s: invalid command, string [%s] length "
Jeff Johnson59a121e2013-11-30 09:46:08 -08004998 "%zu exceeds maximum length %u",
Madan Mohan Koyyalamudi87054ba2012-11-02 13:24:12 -07004999 __func__, value_str,
Jeff Johnson295189b2012-06-20 16:38:30 -07005000 len_value_str, (pRegEntry->VarSize - 1));
5001 goto done;
5002 }
5003 // copy string plus NUL
5004 memcpy(pField, value_str, (len_value_str + 1));
5005 break;
5006
5007 case WLAN_PARAM_MacAddr:
5008 len_value_str = strlen(value_str);
5009 if (len_value_str != (VOS_MAC_ADDR_SIZE * 2))
5010 {
5011 // out of range
5012 hddLog(LOGE,
5013 "%s: invalid command, MAC address [%s] length "
Jeff Johnson59a121e2013-11-30 09:46:08 -08005014 "%zu is not expected length %u",
Madan Mohan Koyyalamudi87054ba2012-11-02 13:24:12 -07005015 __func__, value_str,
Jeff Johnson295189b2012-06-20 16:38:30 -07005016 len_value_str, (VOS_MAC_ADDR_SIZE * 2));
5017 goto done;
5018 }
5019 //parse the string and store it in the byte array
5020 for (i = 0; i < VOS_MAC_ADDR_SIZE; i++)
5021 {
5022 ((char*)pField)[i] = (char)
5023 ((parseHexDigit(value_str[(i * 2)]) * 16) +
5024 parseHexDigit(value_str[(i * 2) + 1]));
5025 }
5026 break;
5027
5028 default:
5029 goto done;
5030 }
5031
5032 // if we get here, we had a successful modification
5033 vstatus = VOS_STATUS_SUCCESS;
5034
5035 // config table has been modified, is there a notifier?
5036 if (NULL != pRegEntry->pfnDynamicNotify)
5037 {
5038 (pRegEntry->pfnDynamicNotify)(pHddCtx, pRegEntry->NotifyId);
5039 }
5040
5041 // note that this item was explicitly configured
5042 if (idx < MAX_CFG_INI_ITEMS)
5043 {
5044 set_bit(idx, (void *)&pHddCtx->cfg_ini->bExplicitCfg);
5045 }
5046 done:
5047 kfree(clone);
5048 return vstatus;
5049}
Srinivas Girigowdabbd16eb2013-03-21 12:34:46 -07005050
5051/**---------------------------------------------------------------------------
5052
5053 \brief hdd_is_okc_mode_enabled() -
5054
5055 This function returns whether OKC mode is enabled or not
5056
5057 \param - pHddCtx - Pointer to the HDD Adapter.
5058
5059 \return - 1 for enabled, zero for disabled
5060
5061 --------------------------------------------------------------------------*/
5062
5063tANI_BOOLEAN hdd_is_okc_mode_enabled(hdd_context_t *pHddCtx)
5064{
5065 if (NULL == pHddCtx)
5066 {
5067 hddLog(VOS_TRACE_LEVEL_FATAL, "%s: pHddCtx is NULL", __func__);
5068 return -EINVAL;
5069 }
5070
5071#ifdef FEATURE_WLAN_OKC
5072 return pHddCtx->cfg_ini->isOkcIniFeatureEnabled;
5073#else
5074 return eANI_BOOLEAN_FALSE;
5075#endif
5076}