blob: 2b567ede1f34e6b393911f204ac4c019f19c2f05 [file] [log] [blame]
Jeff Johnson295189b2012-06-20 16:38:30 -07001/*
Masti, Narayanraddi037f3552015-12-22 11:54:35 +05302 * Copyright (c) 2012-2016 The Linux Foundation. All rights reserved.
Kiet Lam842dad02014-02-18 18:44:02 -08003 *
4 * Previously licensed under the ISC license by Qualcomm Atheros, Inc.
5 *
6 *
7 * Permission to use, copy, modify, and/or distribute this software for
8 * any purpose with or without fee is hereby granted, provided that the
9 * above copyright notice and this permission notice appear in all
10 * copies.
11 *
12 * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL
13 * WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED
14 * WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE
15 * AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
16 * DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR
17 * PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
18 * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
19 * PERFORMANCE OF THIS SOFTWARE.
20 */
21
22/*
23 * This file was originally distributed by Qualcomm Atheros, Inc.
24 * under proprietary terms before Copyright ownership was assigned
25 * to the Linux Foundation.
26 */
Jeff Johnson295189b2012-06-20 16:38:30 -070027
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -080028/**=========================================================================
Jeff Johnson295189b2012-06-20 16:38:30 -070029
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -080030 EDIT HISTORY FOR FILE
31
32
33 This section contains comments describing changes made to the module.
34 Notice that changes are listed in reverse chronological order.
35
36
37 $Header:$ $DateTime: $ $Author: $
38
39
40 when who what, where, why
Jeff Johnson295189b2012-06-20 16:38:30 -070041 -------- --- --------------------------------------------------------
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -080042 07/27/09 kanand Created module.
Jeff Johnson295189b2012-06-20 16:38:30 -070043
44 ==========================================================================*/
45
46/*--------------------------------------------------------------------------
47 Include Files
48 ------------------------------------------------------------------------*/
49
50
51#include <linux/firmware.h>
52#include <linux/string.h>
53#include <wlan_hdd_includes.h>
54#include <wlan_hdd_main.h>
55#include <wlan_hdd_assoc.h>
56#include <wlan_hdd_cfg.h>
57#include <linux/string.h>
58#include <vos_types.h>
59#include <csrApi.h>
60#include <pmcApi.h>
61#include <wlan_hdd_misc.h>
62
Varun Reddy Yeturu5d5e2c62014-02-27 13:31:29 -080063#if defined (WLAN_FEATURE_VOWIFI_11R) || defined (FEATURE_WLAN_ESE) || defined(FEATURE_WLAN_LFR)
Madan Mohan Koyyalamudid5026072012-11-30 14:56:21 -080064static void cbNotifySetRoamPrefer5GHz(hdd_context_t *pHddCtx, unsigned long NotifyId)
65{
66 sme_UpdateRoamPrefer5GHz((tHalHandle)(pHddCtx->hHal), pHddCtx->cfg_ini->nRoamPrefer5GHz);
67}
Jeff Johnson295189b2012-06-20 16:38:30 -070068
Madan Mohan Koyyalamudi62b55b02012-12-03 16:45:39 -080069static void cbNotifySetImmediateRoamRssiDiff(hdd_context_t *pHddCtx, unsigned long NotifyId)
70{
Srinivas Girigowdade697412013-02-14 16:31:48 -080071 sme_UpdateImmediateRoamRssiDiff((tHalHandle)(pHddCtx->hHal),
Madan Mohan Koyyalamudi62b55b02012-12-03 16:45:39 -080072 pHddCtx->cfg_ini->nImmediateRoamRssiDiff);
73}
Gopichand Nakkala98a98af2012-12-31 14:38:47 -080074
Srinivas Girigowdade697412013-02-14 16:31:48 -080075static void cbNotifySetRoamRssiDiff(hdd_context_t *pHddCtx, unsigned long NotifyId)
76{
77 sme_UpdateRoamRssiDiff((tHalHandle)(pHddCtx->hHal),
78 pHddCtx->cfg_ini->RoamRssiDiff);
79}
80
Gopichand Nakkala98a98af2012-12-31 14:38:47 -080081static void cbNotifySetFastTransitionEnabled(hdd_context_t *pHddCtx, unsigned long NotifyId)
82{
83 sme_UpdateFastTransitionEnabled((tHalHandle)(pHddCtx->hHal), pHddCtx->cfg_ini->isFastTransitionEnabled);
84}
Srinivas Girigowdabbd16eb2013-03-21 12:34:46 -070085
86static void cbNotifySetRoamIntraBand(hdd_context_t *pHddCtx, unsigned long NotifyId)
87{
88 sme_setRoamIntraBand((tHalHandle)(pHddCtx->hHal), pHddCtx->cfg_ini->nRoamIntraBand);
89}
Srinivas Girigowda100eb322013-03-15 16:48:20 -070090
Srinivas Girigowdaad34ca92013-10-22 10:54:29 -070091static void cbNotifySetWESMode(hdd_context_t *pHddCtx, unsigned long NotifyId)
92{
93 // at the point this routine is called, the value in the cfg_ini table has already been updated
94 sme_UpdateWESMode((tHalHandle)(pHddCtx->hHal), pHddCtx->cfg_ini->isWESModeEnabled);
95}
96
Varun Reddy Yeturu920df212013-05-22 08:07:23 -070097static void cbNotifySetRoamScanNProbes(hdd_context_t *pHddCtx, unsigned long NotifyId)
98{
99 sme_UpdateRoamScanNProbes((tHalHandle)(pHddCtx->hHal), pHddCtx->cfg_ini->nProbes);
100}
101
102static void cbNotifySetRoamScanHomeAwayTime(hdd_context_t *pHddCtx, unsigned long NotifyId)
103{
Srinivas Girigowda6cf0b822013-06-27 14:00:20 -0700104 sme_UpdateRoamScanHomeAwayTime((tHalHandle)(pHddCtx->hHal), pHddCtx->cfg_ini->nRoamScanHomeAwayTime, eANI_BOOLEAN_TRUE);
Varun Reddy Yeturu920df212013-05-22 08:07:23 -0700105}
Srinivas Girigowdabbd16eb2013-03-21 12:34:46 -0700106#endif
107
108#ifdef FEATURE_WLAN_OKC
109static void cbNotifySetOkcFeatureEnabled(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}
Madan Mohan Koyyalamudi62b55b02012-12-03 16:45:39 -0800113#endif
114
Gopichand Nakkala98a98af2012-12-31 14:38:47 -0800115#ifdef FEATURE_WLAN_LFR
116static void NotifyIsFastRoamIniFeatureEnabled(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_UpdateIsFastRoamIniFeatureEnabled((tHalHandle)(pHddCtx->hHal), pHddCtx->cfg_ini->isFastRoamIniFeatureEnabled );
120}
Sameer Thalappil4ae66ec2013-11-05 14:17:35 -0800121
122static void NotifyIsMAWCIniFeatureEnabled(hdd_context_t *pHddCtx, unsigned long NotifyId)
123{
124 /* at the point this routine is called, the value in the cfg_ini table has already been updated */
125 sme_UpdateIsMAWCIniFeatureEnabled((tHalHandle)(pHddCtx->hHal), pHddCtx->cfg_ini->MAWCEnabled );
126}
Gopichand Nakkala98a98af2012-12-31 14:38:47 -0800127#endif
128
Varun Reddy Yeturu5d5e2c62014-02-27 13:31:29 -0800129#ifdef FEATURE_WLAN_ESE
130static void cbNotifySetEseFeatureEnabled(hdd_context_t *pHddCtx, unsigned long NotifyId)
Gopichand Nakkala98a98af2012-12-31 14:38:47 -0800131{
132 // at the point this routine is called, the value in the cfg_ini table has already been updated
Varun Reddy Yeturu5d5e2c62014-02-27 13:31:29 -0800133 sme_UpdateIsEseFeatureEnabled((tHalHandle)(pHddCtx->hHal), pHddCtx->cfg_ini->isEseIniFeatureEnabled );
Gopichand Nakkala98a98af2012-12-31 14:38:47 -0800134}
135#endif
136
137static void cbNotifySetFwRssiMonitoring(hdd_context_t *pHddCtx, unsigned long NotifyId)
138{
139 // at the point this routine is called, the value in the cfg_ini table has already been updated
140 sme_UpdateConfigFwRssiMonitoring((tHalHandle)(pHddCtx->hHal), pHddCtx->cfg_ini->fEnableFwRssiMonitoring );
141}
142
Srinivas Girigowdade697412013-02-14 16:31:48 -0800143#ifdef WLAN_FEATURE_NEIGHBOR_ROAMING
144static void cbNotifySetNeighborLookupRssiThreshold(hdd_context_t *pHddCtx, unsigned long NotifyId)
145{
146 // at the point this routine is called, the value in the cfg_ini table has already been updated
147 sme_setNeighborLookupRssiThreshold((tHalHandle)(pHddCtx->hHal), pHddCtx->cfg_ini->nNeighborLookupRssiThreshold );
148}
149
Srinivas Girigowdabbd16eb2013-03-21 12:34:46 -0700150static void cbNotifySetNeighborScanPeriod(hdd_context_t *pHddCtx, unsigned long NotifyId)
151{
152 // at the point this routine is called, the value in the cfg_ini table has already been updated
153 sme_setNeighborScanPeriod((tHalHandle)(pHddCtx->hHal), pHddCtx->cfg_ini->nNeighborScanPeriod );
154}
155
Srinivas Girigowdade697412013-02-14 16:31:48 -0800156static void cbNotifySetNeighborResultsRefreshPeriod(hdd_context_t *pHddCtx, unsigned long NotifyId)
157{
158 // at the point this routine is called, the value in the cfg_ini table has already been updated
159 sme_setNeighborScanRefreshPeriod((tHalHandle)(pHddCtx->hHal), pHddCtx->cfg_ini->nNeighborResultsRefreshPeriod );
160}
161
162static void cbNotifySetEmptyScanRefreshPeriod(hdd_context_t *pHddCtx, unsigned long NotifyId)
163{
164 // at the point this routine is called, the value in the cfg_ini table has already been updated
165 sme_UpdateEmptyScanRefreshPeriod((tHalHandle)(pHddCtx->hHal), pHddCtx->cfg_ini->nEmptyScanRefreshPeriod);
166}
Srinivas Girigowdabbd16eb2013-03-21 12:34:46 -0700167
168static void cbNotifySetNeighborScanMinChanTime(hdd_context_t *pHddCtx, unsigned long NotifyId)
169{
170 // at the point this routine is called, the value in the cfg_ini table has already been updated
171 sme_setNeighborScanMinChanTime((tHalHandle)(pHddCtx->hHal), pHddCtx->cfg_ini->nNeighborScanMinChanTime);
172}
173
174static void cbNotifySetNeighborScanMaxChanTime(hdd_context_t *pHddCtx, unsigned long NotifyId)
175{
Srinivas Girigowdabbd16eb2013-03-21 12:34:46 -0700176 sme_setNeighborScanMaxChanTime((tHalHandle)(pHddCtx->hHal), pHddCtx->cfg_ini->nNeighborScanMaxChanTime);
177}
Srinivas Girigowdade697412013-02-14 16:31:48 -0800178#endif
179
Gopichand Nakkalae620d5a2013-04-26 05:45:57 -0700180static void cbNotifySetEnableSSR(hdd_context_t *pHddCtx, unsigned long NotifyId)
181{
182 sme_UpdateEnableSSR((tHalHandle)(pHddCtx->hHal), pHddCtx->cfg_ini->enableSSR);
183}
184
Varun Reddy Yeturud0a3f252013-04-15 21:58:13 -0700185#ifdef WLAN_FEATURE_ROAM_SCAN_OFFLOAD
186static void cbNotifyUpdateRoamScanOffloadEnabled(hdd_context_t *pHddCtx, unsigned long NotifyId)
187{
188 sme_UpdateRoamScanOffloadEnabled((tHalHandle)(pHddCtx->hHal), pHddCtx->cfg_ini->isRoamOffloadScanEnabled);
Srinivas Girigowda830bbd02013-06-13 19:44:16 -0700189 if (0 == pHddCtx->cfg_ini->isRoamOffloadScanEnabled)
190 {
191 pHddCtx->cfg_ini->bFastRoamInConIniFeatureEnabled = 0;
192 sme_UpdateEnableFastRoamInConcurrency((tHalHandle)(pHddCtx->hHal), pHddCtx->cfg_ini->bFastRoamInConIniFeatureEnabled );
193 }
Varun Reddy Yeturud0a3f252013-04-15 21:58:13 -0700194}
Srinivas Girigowda830bbd02013-06-13 19:44:16 -0700195
196static void cbNotifySetEnableFastRoamInConcurrency(hdd_context_t *pHddCtx, unsigned long NotifyId)
197{
198 sme_UpdateEnableFastRoamInConcurrency((tHalHandle)(pHddCtx->hHal), pHddCtx->cfg_ini->bFastRoamInConIniFeatureEnabled );
199}
200
Varun Reddy Yeturud0a3f252013-04-15 21:58:13 -0700201#endif
202
Jeff Johnson295189b2012-06-20 16:38:30 -0700203REG_TABLE_ENTRY g_registry_table[] =
204{
205 REG_VARIABLE( CFG_RTS_THRESHOLD_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800206 hdd_config_t, RTSThreshold,
207 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
208 CFG_RTS_THRESHOLD_DEFAULT,
209 CFG_RTS_THRESHOLD_MIN,
210 CFG_RTS_THRESHOLD_MAX ),
Jeff Johnson295189b2012-06-20 16:38:30 -0700211
212 REG_VARIABLE( CFG_FRAG_THRESHOLD_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800213 hdd_config_t, FragmentationThreshold,
214 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
215 CFG_FRAG_THRESHOLD_DEFAULT,
216 CFG_FRAG_THRESHOLD_MIN,
217 CFG_FRAG_THRESHOLD_MAX ),
Jeff Johnson295189b2012-06-20 16:38:30 -0700218
219 REG_VARIABLE( CFG_CALIBRATION_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800220 hdd_config_t, Calibration,
221 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
222 CFG_CALIBRATION_DEFAULT,
223 CFG_CALIBRATION_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700224 CFG_CALIBRATION_MAX ),
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800225
Jeff Johnson295189b2012-06-20 16:38:30 -0700226 REG_VARIABLE( CFG_CALIBRATION_PERIOD_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800227 hdd_config_t, CalibrationPeriod,
228 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
229 CFG_CALIBRATION_PERIOD_DEFAULT,
230 CFG_CALIBRATION_PERIOD_MIN,
231 CFG_CALIBRATION_PERIOD_MAX ),
Jeff Johnson295189b2012-06-20 16:38:30 -0700232
233 REG_VARIABLE( CFG_OPERATING_CHANNEL_NAME, WLAN_PARAM_Integer,
234 hdd_config_t, OperatingChannel,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800235 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
236 CFG_OPERATING_CHANNEL_DEFAULT,
237 CFG_OPERATING_CHANNEL_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700238 CFG_OPERATING_CHANNEL_MAX ),
239
240 REG_VARIABLE( CFG_SHORT_SLOT_TIME_ENABLED_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800241 hdd_config_t, ShortSlotTimeEnabled,
242 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK,
243 CFG_SHORT_SLOT_TIME_ENABLED_DEFAULT,
244 CFG_SHORT_SLOT_TIME_ENABLED_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700245 CFG_SHORT_SLOT_TIME_ENABLED_MAX ),
246
247 REG_VARIABLE( CFG_11D_SUPPORT_ENABLED_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800248 hdd_config_t, Is11dSupportEnabled,
249 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK,
250 CFG_11D_SUPPORT_ENABLED_DEFAULT,
251 CFG_11D_SUPPORT_ENABLED_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700252 CFG_11D_SUPPORT_ENABLED_MAX ),
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800253
Madan Mohan Koyyalamudi8db1c942013-01-10 15:24:29 -0800254 REG_VARIABLE( CFG_11H_SUPPORT_ENABLED_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800255 hdd_config_t, Is11hSupportEnabled,
256 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK,
257 CFG_11H_SUPPORT_ENABLED_DEFAULT,
258 CFG_11H_SUPPORT_ENABLED_MIN,
Madan Mohan Koyyalamudi8db1c942013-01-10 15:24:29 -0800259 CFG_11H_SUPPORT_ENABLED_MAX ),
Jeff Johnson295189b2012-06-20 16:38:30 -0700260
261 REG_VARIABLE( CFG_ENFORCE_11D_CHANNELS_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800262 hdd_config_t, fEnforce11dChannels,
263 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK,
264 CFG_ENFORCE_11D_CHANNELS_DEFAULT,
265 CFG_ENFORCE_11D_CHANNELS_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700266 CFG_ENFORCE_11D_CHANNELS_MAX ),
267
268 REG_VARIABLE( CFG_COUNTRY_CODE_PRIORITY_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800269 hdd_config_t, fSupplicantCountryCodeHasPriority,
270 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK,
271 CFG_COUNTRY_CODE_PRIORITY_DEFAULT,
272 CFG_COUNTRY_CODE_PRIORITY_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700273 CFG_COUNTRY_CODE_PRIORITY_MAX),
274
275 REG_VARIABLE( CFG_ENFORCE_COUNTRY_CODE_MATCH_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800276 hdd_config_t, fEnforceCountryCodeMatch,
277 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK,
278 CFG_ENFORCE_COUNTRY_CODE_MATCH_DEFAULT,
279 CFG_ENFORCE_COUNTRY_CODE_MATCH_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700280 CFG_ENFORCE_COUNTRY_CODE_MATCH_MAX ),
281
282 REG_VARIABLE( CFG_ENFORCE_DEFAULT_DOMAIN_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800283 hdd_config_t, fEnforceDefaultDomain,
284 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK,
285 CFG_ENFORCE_DEFAULT_DOMAIN_DEFAULT,
286 CFG_ENFORCE_DEFAULT_DOMAIN_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700287 CFG_ENFORCE_DEFAULT_DOMAIN_MAX ),
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800288
Jeff Johnson295189b2012-06-20 16:38:30 -0700289 REG_VARIABLE( CFG_GENERIC_ID1_NAME, WLAN_PARAM_Integer,
290 hdd_config_t, Cfg1Id,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800291 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
292 CFG_GENERIC_ID1_DEFAULT,
293 CFG_GENERIC_ID1_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700294 CFG_GENERIC_ID1_MAX ),
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800295
Jeff Johnson295189b2012-06-20 16:38:30 -0700296 REG_VARIABLE( CFG_GENERIC_ID2_NAME, WLAN_PARAM_Integer,
297 hdd_config_t, Cfg2Id,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800298 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
299 CFG_GENERIC_ID2_DEFAULT,
300 CFG_GENERIC_ID2_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700301 CFG_GENERIC_ID2_MAX ),
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800302
Jeff Johnson295189b2012-06-20 16:38:30 -0700303 REG_VARIABLE( CFG_GENERIC_ID3_NAME, WLAN_PARAM_Integer,
304 hdd_config_t, Cfg3Id,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800305 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
306 CFG_GENERIC_ID3_DEFAULT,
307 CFG_GENERIC_ID3_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700308 CFG_GENERIC_ID3_MAX ),
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800309
Jeff Johnson295189b2012-06-20 16:38:30 -0700310 REG_VARIABLE( CFG_GENERIC_ID4_NAME, WLAN_PARAM_Integer,
311 hdd_config_t, Cfg4Id,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800312 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
313 CFG_GENERIC_ID4_DEFAULT,
314 CFG_GENERIC_ID4_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700315 CFG_GENERIC_ID4_MAX ),
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800316
Jeff Johnson295189b2012-06-20 16:38:30 -0700317 REG_VARIABLE( CFG_GENERIC_ID5_NAME, WLAN_PARAM_Integer,
318 hdd_config_t, Cfg5Id,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800319 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
320 CFG_GENERIC_ID5_DEFAULT,
321 CFG_GENERIC_ID5_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700322 CFG_GENERIC_ID5_MAX ),
323
324 REG_VARIABLE( CFG_GENERIC_VALUE1_NAME, WLAN_PARAM_Integer,
325 hdd_config_t, Cfg1Value,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800326 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
327 CFG_GENERIC_VALUE1_DEFAULT,
328 CFG_GENERIC_VALUE1_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700329 CFG_GENERIC_VALUE1_MAX ),
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800330
Jeff Johnson295189b2012-06-20 16:38:30 -0700331 REG_VARIABLE( CFG_GENERIC_VALUE2_NAME, WLAN_PARAM_Integer,
332 hdd_config_t, Cfg2Value,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800333 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
334 CFG_GENERIC_VALUE2_DEFAULT,
335 CFG_GENERIC_VALUE2_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700336 CFG_GENERIC_VALUE2_MAX ),
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800337
Jeff Johnson295189b2012-06-20 16:38:30 -0700338 REG_VARIABLE( CFG_GENERIC_VALUE3_NAME, WLAN_PARAM_Integer,
339 hdd_config_t, Cfg3Value,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800340 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
341 CFG_GENERIC_VALUE3_DEFAULT,
342 CFG_GENERIC_VALUE3_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700343 CFG_GENERIC_VALUE3_MAX ),
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800344
Jeff Johnson295189b2012-06-20 16:38:30 -0700345 REG_VARIABLE( CFG_GENERIC_VALUE4_NAME, WLAN_PARAM_Integer,
346 hdd_config_t, Cfg4Value,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800347 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
348 CFG_GENERIC_VALUE4_DEFAULT,
349 CFG_GENERIC_VALUE4_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700350 CFG_GENERIC_VALUE4_MAX ),
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800351
Jeff Johnson295189b2012-06-20 16:38:30 -0700352 REG_VARIABLE( CFG_GENERIC_VALUE5_NAME, WLAN_PARAM_Integer,
353 hdd_config_t, Cfg5Value,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800354 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
355 CFG_GENERIC_VALUE5_DEFAULT,
356 CFG_GENERIC_VALUE5_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700357 CFG_GENERIC_VALUE5_MAX ),
358
359 REG_VARIABLE( CFG_HEARTBEAT_THRESH_24_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800360 hdd_config_t, HeartbeatThresh24,
361 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
362 CFG_HEARTBEAT_THRESH_24_DEFAULT,
363 CFG_HEARTBEAT_THRESH_24_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700364 CFG_HEARTBEAT_THRESH_24_MAX ),
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800365
Jeff Johnson295189b2012-06-20 16:38:30 -0700366 REG_VARIABLE_STRING( CFG_POWER_USAGE_NAME, WLAN_PARAM_String,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800367 hdd_config_t, PowerUsageControl,
Jeff Johnson295189b2012-06-20 16:38:30 -0700368 VAR_FLAGS_OPTIONAL,
369 (void *)CFG_POWER_USAGE_DEFAULT ),
370
371 REG_VARIABLE( CFG_ENABLE_SUSPEND_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800372 hdd_config_t, nEnableSuspend,
373 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
374 CFG_ENABLE_SUSPEND_DEFAULT,
375 CFG_ENABLE_SUSPEND_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700376 CFG_ENABLE_SUSPEND_MAX ),
377
378 REG_VARIABLE( CFG_ENABLE_ENABLE_DRIVER_STOP_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800379 hdd_config_t, nEnableDriverStop,
380 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
381 CFG_ENABLE_ENABLE_DRIVER_STOP_DEFAULT,
382 CFG_ENABLE_ENABLE_DRIVER_STOP_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700383 CFG_ENABLE_ENABLE_DRIVER_STOP_MAX ),
384
385 REG_VARIABLE( CFG_ENABLE_IMPS_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800386 hdd_config_t, fIsImpsEnabled,
387 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
388 CFG_ENABLE_IMPS_DEFAULT,
389 CFG_ENABLE_IMPS_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700390 CFG_ENABLE_IMPS_MAX ),
391
Pradeep Kumar Goudagunta22d8e4d2014-07-17 15:03:51 +0530392 REG_VARIABLE( CFG_SSR_PANIC_ON_FAILURE_NAME, WLAN_PARAM_Integer,
393 hdd_config_t, fIsSsrPanicOnFailure,
394 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
395 CFG_SSR_PANIC_ON_FAILURE_DEFAULT,
396 CFG_SSR_PANIC_ON_FAILURE_MIN,
397 CFG_SSR_PANIC_ON_FAILURE_MAX),
398
Jeff Johnson295189b2012-06-20 16:38:30 -0700399 REG_VARIABLE( CFG_ENABLE_LOGP_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800400 hdd_config_t, fIsLogpEnabled,
401 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
402 CFG_ENABLE_LOGP_DEFAULT,
403 CFG_ENABLE_LOGP_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700404 CFG_ENABLE_LOGP_MAX ),
405
406 REG_VARIABLE( CFG_IMPS_MINIMUM_SLEEP_TIME_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800407 hdd_config_t, nImpsMinSleepTime,
408 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
409 CFG_IMPS_MINIMUM_SLEEP_TIME_DEFAULT,
410 CFG_IMPS_MINIMUM_SLEEP_TIME_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700411 CFG_IMPS_MINIMUM_SLEEP_TIME_MAX ),
412
413 REG_VARIABLE( CFG_IMPS_MAXIMUM_SLEEP_TIME_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800414 hdd_config_t, nImpsMaxSleepTime,
415 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
416 CFG_IMPS_MAXIMUM_SLEEP_TIME_DEFAULT,
417 CFG_IMPS_MAXIMUM_SLEEP_TIME_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700418 CFG_IMPS_MAXIMUM_SLEEP_TIME_MAX ),
419
Agarwal Ashishbd3e10b2014-11-24 19:19:46 +0530420 REG_VARIABLE( CFG_DEFER_SCAN_TIME_INTERVAL, WLAN_PARAM_Integer,
421 hdd_config_t, nDeferScanTimeInterval,
422 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
423 CFG_DEFER_SCAN_TIME_INTERVAL_DEFAULT,
424 CFG_DEFER_SCAN_TIME_INTERVAL_MIN,
425 CFG_DEFER_SCAN_TIME_INTERVAL_MAX ),
426
Jeff Johnson295189b2012-06-20 16:38:30 -0700427 REG_VARIABLE( CFG_IMPS_MODERATE_SLEEP_TIME_NAME, WLAN_PARAM_Integer,
428 hdd_config_t, nImpsModSleepTime,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800429 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
430 CFG_IMPS_MODERATE_SLEEP_TIME_DEFAULT,
431 CFG_IMPS_MODERATE_SLEEP_TIME_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700432 CFG_IMPS_MODERATE_SLEEP_TIME_MAX ),
433
434 REG_VARIABLE( CFG_ENABLE_BMPS_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800435 hdd_config_t, fIsBmpsEnabled,
436 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
437 CFG_ENABLE_BMPS_DEFAULT,
438 CFG_ENABLE_BMPS_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700439 CFG_ENABLE_BMPS_MAX ),
440
441 REG_VARIABLE( CFG_BMPS_MINIMUM_LI_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800442 hdd_config_t, nBmpsMinListenInterval,
443 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
444 CFG_BMPS_MINIMUM_LI_DEFAULT,
445 CFG_BMPS_MINIMUM_LI_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700446 CFG_BMPS_MINIMUM_LI_MAX ),
447
448 REG_VARIABLE( CFG_BMPS_MAXIMUM_LI_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800449 hdd_config_t, nBmpsMaxListenInterval,
450 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
451 CFG_BMPS_MAXIMUM_LI_DEFAULT,
452 CFG_BMPS_MAXIMUM_LI_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700453 CFG_BMPS_MAXIMUM_LI_MAX ),
454
455 REG_VARIABLE( CFG_BMPS_MODERATE_LI_NAME, WLAN_PARAM_Integer,
456 hdd_config_t, nBmpsModListenInterval,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800457 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
458 CFG_BMPS_MODERATE_LI_DEFAULT,
459 CFG_BMPS_MODERATE_LI_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700460 CFG_BMPS_MODERATE_LI_MAX ),
461
462 REG_VARIABLE( CFG_ENABLE_AUTO_BMPS_TIMER_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800463 hdd_config_t, fIsAutoBmpsTimerEnabled,
464 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
465 CFG_ENABLE_AUTO_BMPS_TIMER_DEFAULT,
466 CFG_ENABLE_AUTO_BMPS_TIMER_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700467 CFG_ENABLE_AUTO_BMPS_TIMER_MAX ),
468
469 REG_VARIABLE( CFG_AUTO_BMPS_TIMER_VALUE_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800470 hdd_config_t, nAutoBmpsTimerValue,
471 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
472 CFG_AUTO_BMPS_TIMER_VALUE_DEFAULT,
473 CFG_AUTO_BMPS_TIMER_VALUE_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700474 CFG_AUTO_BMPS_TIMER_VALUE_MAX ),
475
476 REG_VARIABLE( CFG_DOT11_MODE_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800477 hdd_config_t, dot11Mode,
478 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK,
479 CFG_DOT11_MODE_DEFAULT,
480 CFG_DOT11_MODE_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700481 CFG_DOT11_MODE_MAX ),
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800482
Jeff Johnson295189b2012-06-20 16:38:30 -0700483 REG_VARIABLE( CFG_CHANNEL_BONDING_MODE_24GHZ_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800484 hdd_config_t, nChannelBondingMode24GHz,
485 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK,
486 CFG_CHANNEL_BONDING_MODE_DEFAULT,
487 CFG_CHANNEL_BONDING_MODE_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700488 CFG_CHANNEL_BONDING_MODE_MAX),
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800489
Jeff Johnson295189b2012-06-20 16:38:30 -0700490 REG_VARIABLE( CFG_CHANNEL_BONDING_MODE_5GHZ_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800491 hdd_config_t, nChannelBondingMode5GHz,
492 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK,
493 CFG_CHANNEL_BONDING_MODE_DEFAULT,
494 CFG_CHANNEL_BONDING_MODE_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700495 CFG_CHANNEL_BONDING_MODE_MAX),
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800496
497 REG_VARIABLE( CFG_MAX_RX_AMPDU_FACTOR_NAME, WLAN_PARAM_Integer,
498 hdd_config_t, MaxRxAmpduFactor,
499 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK ,
500 CFG_MAX_RX_AMPDU_FACTOR_DEFAULT,
501 CFG_MAX_RX_AMPDU_FACTOR_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700502 CFG_MAX_RX_AMPDU_FACTOR_MAX),
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800503
Jeff Johnson295189b2012-06-20 16:38:30 -0700504 REG_VARIABLE( CFG_FIXED_RATE_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800505 hdd_config_t, TxRate,
506 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK,
507 CFG_FIXED_RATE_DEFAULT,
508 CFG_FIXED_RATE_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700509 CFG_FIXED_RATE_MAX ),
510
511 REG_VARIABLE( CFG_SHORT_GI_20MHZ_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800512 hdd_config_t, ShortGI20MhzEnable,
513 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
514 CFG_SHORT_GI_20MHZ_DEFAULT,
515 CFG_SHORT_GI_20MHZ_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700516 CFG_SHORT_GI_20MHZ_MAX ),
517
518 REG_VARIABLE( CFG_BLOCK_ACK_AUTO_SETUP_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800519 hdd_config_t, BlockAckAutoSetup,
520 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK,
521 CFG_BLOCK_ACK_AUTO_SETUP_DEFAULT,
522 CFG_BLOCK_ACK_AUTO_SETUP_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700523 CFG_BLOCK_ACK_AUTO_SETUP_MAX ),
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800524
Jeff Johnson295189b2012-06-20 16:38:30 -0700525 REG_VARIABLE( CFG_SCAN_RESULT_AGE_COUNT_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800526 hdd_config_t, ScanResultAgeCount,
527 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK,
528 CFG_SCAN_RESULT_AGE_COUNT_DEFAULT,
529 CFG_SCAN_RESULT_AGE_COUNT_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700530 CFG_SCAN_RESULT_AGE_COUNT_MAX ),
531
532 REG_VARIABLE( CFG_SCAN_RESULT_AGE_TIME_NCNPS_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800533 hdd_config_t, nScanAgeTimeNCNPS,
534 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK,
535 CFG_SCAN_RESULT_AGE_TIME_NCNPS_DEFAULT,
536 CFG_SCAN_RESULT_AGE_TIME_NCNPS_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700537 CFG_SCAN_RESULT_AGE_TIME_NCNPS_MAX ),
538
539 REG_VARIABLE( CFG_SCAN_RESULT_AGE_TIME_NCPS_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800540 hdd_config_t, nScanAgeTimeNCPS,
541 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK,
542 CFG_SCAN_RESULT_AGE_TIME_NCPS_DEFAULT,
543 CFG_SCAN_RESULT_AGE_TIME_NCPS_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700544 CFG_SCAN_RESULT_AGE_TIME_NCPS_MAX ),
545
546 REG_VARIABLE( CFG_SCAN_RESULT_AGE_TIME_CNPS_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800547 hdd_config_t, nScanAgeTimeCNPS,
548 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK,
549 CFG_SCAN_RESULT_AGE_TIME_CNPS_DEFAULT,
550 CFG_SCAN_RESULT_AGE_TIME_CNPS_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700551 CFG_SCAN_RESULT_AGE_TIME_CNPS_MAX ),
552
553 REG_VARIABLE( CFG_SCAN_RESULT_AGE_TIME_CPS_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800554 hdd_config_t, nScanAgeTimeCPS,
555 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK,
556 CFG_SCAN_RESULT_AGE_TIME_CPS_DEFAULT,
557 CFG_SCAN_RESULT_AGE_TIME_CPS_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700558 CFG_SCAN_RESULT_AGE_TIME_CPS_MAX ),
559
560 REG_VARIABLE( CFG_RSSI_CATEGORY_GAP_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800561 hdd_config_t, nRssiCatGap,
562 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
563 CFG_RSSI_CATEGORY_GAP_DEFAULT,
564 CFG_RSSI_CATEGORY_GAP_MIN,
565 CFG_RSSI_CATEGORY_GAP_MAX ),
Jeff Johnson295189b2012-06-20 16:38:30 -0700566
Jeff Johnson295189b2012-06-20 16:38:30 -0700567 REG_VARIABLE( CFG_SHORT_PREAMBLE_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800568 hdd_config_t, fIsShortPreamble,
569 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
570 CFG_SHORT_PREAMBLE_DEFAULT,
571 CFG_SHORT_PREAMBLE_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700572 CFG_SHORT_PREAMBLE_MAX ),
573
574 REG_VARIABLE( CFG_IBSS_AUTO_BSSID_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800575 hdd_config_t, fIsAutoIbssBssid,
576 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
577 CFG_IBSS_AUTO_BSSID_DEFAULT,
578 CFG_IBSS_AUTO_BSSID_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700579 CFG_IBSS_AUTO_BSSID_MAX ),
580
581 REG_VARIABLE_STRING( CFG_IBSS_BSSID_NAME, WLAN_PARAM_MacAddr,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800582 hdd_config_t, IbssBssid,
Jeff Johnson295189b2012-06-20 16:38:30 -0700583 VAR_FLAGS_OPTIONAL,
584 (void *)CFG_IBSS_BSSID_DEFAULT ),
585
586 REG_VARIABLE_STRING( CFG_INTF0_MAC_ADDR_NAME, WLAN_PARAM_MacAddr,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800587 hdd_config_t, intfMacAddr[0],
Jeff Johnson295189b2012-06-20 16:38:30 -0700588 VAR_FLAGS_OPTIONAL,
589 (void *)CFG_INTF0_MAC_ADDR_DEFAULT ),
590
591 REG_VARIABLE_STRING( CFG_INTF1_MAC_ADDR_NAME, WLAN_PARAM_MacAddr,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800592 hdd_config_t, intfMacAddr[1],
Jeff Johnson295189b2012-06-20 16:38:30 -0700593 VAR_FLAGS_OPTIONAL,
594 (void *)CFG_INTF1_MAC_ADDR_DEFAULT ),
595
596 REG_VARIABLE_STRING( CFG_INTF2_MAC_ADDR_NAME, WLAN_PARAM_MacAddr,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800597 hdd_config_t, intfMacAddr[2],
Jeff Johnson295189b2012-06-20 16:38:30 -0700598 VAR_FLAGS_OPTIONAL,
599 (void *)CFG_INTF2_MAC_ADDR_DEFAULT ),
600
601 REG_VARIABLE_STRING( CFG_INTF3_MAC_ADDR_NAME, WLAN_PARAM_MacAddr,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800602 hdd_config_t, intfMacAddr[3],
Jeff Johnson295189b2012-06-20 16:38:30 -0700603 VAR_FLAGS_OPTIONAL,
604 (void *)CFG_INTF3_MAC_ADDR_DEFAULT ),
605
Jeff Johnson295189b2012-06-20 16:38:30 -0700606 REG_VARIABLE( CFG_AP_QOS_UAPSD_MODE_NAME , WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800607 hdd_config_t, apUapsdEnabled,
608 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
609 CFG_AP_QOS_UAPSD_MODE_DEFAULT,
610 CFG_AP_QOS_UAPSD_MODE_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700611 CFG_AP_QOS_UAPSD_MODE_MAX ),
612
613 REG_VARIABLE_STRING( CFG_AP_COUNTRY_CODE, WLAN_PARAM_String,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800614 hdd_config_t, apCntryCode,
Jeff Johnson295189b2012-06-20 16:38:30 -0700615 VAR_FLAGS_OPTIONAL,
616 (void *)CFG_AP_COUNTRY_CODE_DEFAULT ),
617
Madan Mohan Koyyalamudi3ff2a0b2012-10-15 14:33:46 -0700618 REG_VARIABLE( CFG_AP_ENABLE_RANDOM_BSSID_NAME, WLAN_PARAM_Integer,
619 hdd_config_t, apRandomBssidEnabled,
620 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
621 CFG_AP_ENABLE_RANDOM_BSSID_DEFAULT,
622 CFG_AP_ENABLE_RANDOM_BSSID_MIN,
623 CFG_AP_ENABLE_RANDOM_BSSID_MAX ),
624
Jeff Johnson295189b2012-06-20 16:38:30 -0700625 REG_VARIABLE( CFG_AP_ENABLE_PROTECTION_MODE_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800626 hdd_config_t, apProtEnabled,
Jeff Johnson295189b2012-06-20 16:38:30 -0700627 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
628 CFG_AP_ENABLE_PROTECTION_MODE_DEFAULT,
629 CFG_AP_ENABLE_PROTECTION_MODE_MIN,
630 CFG_AP_ENABLE_PROTECTION_MODE_MAX ),
631
632 REG_VARIABLE( CFG_AP_PROTECTION_MODE_NAME, WLAN_PARAM_HexInteger,
633 hdd_config_t, apProtection,
634 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
635 CFG_AP_PROTECTION_MODE_DEFAULT,
636 CFG_AP_PROTECTION_MODE_MIN,
637 CFG_AP_PROTECTION_MODE_MAX ),
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800638
Jeff Johnson295189b2012-06-20 16:38:30 -0700639 REG_VARIABLE( CFG_AP_OBSS_PROTECTION_MODE_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800640 hdd_config_t, apOBSSProtEnabled,
Jeff Johnson295189b2012-06-20 16:38:30 -0700641 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
642 CFG_AP_OBSS_PROTECTION_MODE_DEFAULT,
643 CFG_AP_OBSS_PROTECTION_MODE_MIN,
644 CFG_AP_OBSS_PROTECTION_MODE_MAX ),
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800645
Jeff Johnson295189b2012-06-20 16:38:30 -0700646 REG_VARIABLE( CFG_AP_STA_SECURITY_SEPERATION_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800647 hdd_config_t, apDisableIntraBssFwd,
Jeff Johnson295189b2012-06-20 16:38:30 -0700648 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
649 CFG_AP_STA_SECURITY_SEPERATION_DEFAULT,
650 CFG_AP_STA_SECURITY_SEPERATION_MIN,
651 CFG_AP_STA_SECURITY_SEPERATION_MAX ),
652
653 REG_VARIABLE( CFG_FRAMES_PROCESSING_TH_MODE_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800654 hdd_config_t, MinFramesProcThres,
Jeff Johnson295189b2012-06-20 16:38:30 -0700655 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
656 CFG_FRAMES_PROCESSING_TH_DEFAULT,
657 CFG_FRAMES_PROCESSING_TH_MIN,
658 CFG_FRAMES_PROCESSING_TH_MAX ),
659
660 REG_VARIABLE(CFG_SAP_CHANNEL_SELECT_START_CHANNEL , WLAN_PARAM_Integer,
661 hdd_config_t, apStartChannelNum,
662 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
663 CFG_SAP_CHANNEL_SELECT_START_CHANNEL_DEFAULT,
664 CFG_SAP_CHANNEL_SELECT_START_CHANNEL_MIN,
665 CFG_SAP_CHANNEL_SELECT_START_CHANNEL_MAX ),
666
667 REG_VARIABLE(CFG_SAP_CHANNEL_SELECT_END_CHANNEL , WLAN_PARAM_Integer,
668 hdd_config_t, apEndChannelNum,
669 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
670 CFG_SAP_CHANNEL_SELECT_END_CHANNEL_DEFAULT,
671 CFG_SAP_CHANNEL_SELECT_END_CHANNEL_MIN,
672 CFG_SAP_CHANNEL_SELECT_END_CHANNEL_MAX ),
673
674 REG_VARIABLE(CFG_SAP_CHANNEL_SELECT_OPERATING_BAND , WLAN_PARAM_Integer,
675 hdd_config_t, apOperatingBand,
676 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
677 CFG_SAP_CHANNEL_SELECT_OPERATING_BAND_DEFAULT,
678 CFG_SAP_CHANNEL_SELECT_OPERATING_BAND_MIN,
679 CFG_SAP_CHANNEL_SELECT_OPERATING_BAND_MAX ),
680
681 REG_VARIABLE(CFG_SAP_AUTO_CHANNEL_SELECTION_NAME , WLAN_PARAM_Integer,
682 hdd_config_t, apAutoChannelSelection,
683 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
684 CFG_SAP_AUTO_CHANNEL_SELECTION_DEFAULT,
685 CFG_SAP_AUTO_CHANNEL_SELECTION_MIN,
686 CFG_SAP_AUTO_CHANNEL_SELECTION_MAX ),
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800687
Jeff Johnson295189b2012-06-20 16:38:30 -0700688 REG_VARIABLE(CFG_ENABLE_LTE_COEX , WLAN_PARAM_Integer,
689 hdd_config_t, enableLTECoex,
690 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
691 CFG_ENABLE_LTE_COEX_DEFAULT,
692 CFG_ENABLE_LTE_COEX_MIN,
693 CFG_ENABLE_LTE_COEX_MAX ),
694
695 REG_VARIABLE( CFG_AP_KEEP_ALIVE_PERIOD_NAME, WLAN_PARAM_Integer,
696 hdd_config_t, apKeepAlivePeriod,
697 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
698 CFG_AP_KEEP_ALIVE_PERIOD_DEFAULT,
699 CFG_AP_KEEP_ALIVE_PERIOD_MIN,
700 CFG_AP_KEEP_ALIVE_PERIOD_MAX),
701
702 REG_VARIABLE( CFG_GO_KEEP_ALIVE_PERIOD_NAME, WLAN_PARAM_Integer,
703 hdd_config_t, goKeepAlivePeriod,
704 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
705 CFG_GO_KEEP_ALIVE_PERIOD_DEFAULT,
706 CFG_GO_KEEP_ALIVE_PERIOD_MIN,
707 CFG_GO_KEEP_ALIVE_PERIOD_MAX),
708
Sejal Chauhanbcde8bc2013-03-04 18:06:36 +0530709 REG_VARIABLE( CFG_AP_LINK_MONITOR_PERIOD_NAME, WLAN_PARAM_Integer,
710 hdd_config_t, apLinkMonitorPeriod,
711 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
712 CFG_AP_LINK_MONITOR_PERIOD_DEFAULT,
713 CFG_AP_LINK_MONITOR_PERIOD_MIN,
714 CFG_AP_LINK_MONITOR_PERIOD_MAX),
715
Madan Mohan Koyyalamudi2558bc92013-08-24 16:54:31 +0530716 REG_VARIABLE( CFG_GO_LINK_MONITOR_PERIOD_NAME, WLAN_PARAM_Integer,
717 hdd_config_t, goLinkMonitorPeriod,
718 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
719 CFG_GO_LINK_MONITOR_PERIOD_DEFAULT,
720 CFG_GO_LINK_MONITOR_PERIOD_MIN,
721 CFG_GO_LINK_MONITOR_PERIOD_MAX),
722
Jeff Johnson295189b2012-06-20 16:38:30 -0700723 REG_VARIABLE(CFG_DISABLE_PACKET_FILTER , WLAN_PARAM_Integer,
724 hdd_config_t, disablePacketFilter,
725 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
726 CFG_DISABLE_PACKET_FILTER_DEFAULT,
727 CFG_DISABLE_PACKET_FILTER_MIN,
728 CFG_DISABLE_PACKET_FILTER_MAX ),
729
730 REG_VARIABLE( CFG_BEACON_INTERVAL_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800731 hdd_config_t, nBeaconInterval,
732 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK,
733 CFG_BEACON_INTERVAL_DEFAULT,
734 CFG_BEACON_INTERVAL_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700735 CFG_BEACON_INTERVAL_MAX ),
736
Jeff Johnson295189b2012-06-20 16:38:30 -0700737 REG_VARIABLE( CFG_ENABLE_IDLE_SCAN_NAME , WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800738 hdd_config_t, nEnableIdleScan,
739 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
740 CFG_ENABLE_IDLE_SCAN_DEFAULT,
741 CFG_ENABLE_IDLE_SCAN_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700742 CFG_ENABLE_IDLE_SCAN_MAX ),
743
744 REG_VARIABLE( CFG_ROAMING_TIME_NAME , WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800745 hdd_config_t, nRoamingTime,
746 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
747 CFG_ROAMING_TIME_DEFAULT,
748 CFG_ROAMING_TIME_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700749 CFG_ROAMING_TIME_MAX ),
750
751 REG_VARIABLE( CFG_VCC_RSSI_TRIGGER_NAME , WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800752 hdd_config_t, nVccRssiTrigger,
753 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
754 CFG_VCC_RSSI_TRIGGER_DEFAULT,
755 CFG_VCC_RSSI_TRIGGER_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700756 CFG_VCC_RSSI_TRIGGER_MAX ),
757
758 REG_VARIABLE( CFG_VCC_UL_MAC_LOSS_THRESH_NAME , WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800759 hdd_config_t, nVccUlMacLossThreshold,
760 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
761 CFG_VCC_UL_MAC_LOSS_THRESH_DEFAULT,
762 CFG_VCC_UL_MAC_LOSS_THRESH_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700763 CFG_VCC_UL_MAC_LOSS_THRESH_MAX ),
764
765 REG_VARIABLE( CFG_PASSIVE_MAX_CHANNEL_TIME_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800766 hdd_config_t, nPassiveMaxChnTime,
767 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
768 CFG_PASSIVE_MAX_CHANNEL_TIME_DEFAULT,
769 CFG_PASSIVE_MAX_CHANNEL_TIME_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700770 CFG_PASSIVE_MAX_CHANNEL_TIME_MAX ),
771
772 REG_VARIABLE( CFG_PASSIVE_MIN_CHANNEL_TIME_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800773 hdd_config_t, nPassiveMinChnTime,
774 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
775 CFG_PASSIVE_MIN_CHANNEL_TIME_DEFAULT,
776 CFG_PASSIVE_MIN_CHANNEL_TIME_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700777 CFG_PASSIVE_MIN_CHANNEL_TIME_MAX ),
778
779 REG_VARIABLE( CFG_ACTIVE_MAX_CHANNEL_TIME_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800780 hdd_config_t, nActiveMaxChnTime,
781 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
782 CFG_ACTIVE_MAX_CHANNEL_TIME_DEFAULT,
783 CFG_ACTIVE_MAX_CHANNEL_TIME_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700784 CFG_ACTIVE_MAX_CHANNEL_TIME_MAX ),
785
786 REG_VARIABLE( CFG_ACTIVE_MIN_CHANNEL_TIME_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800787 hdd_config_t, nActiveMinChnTime,
788 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
789 CFG_ACTIVE_MIN_CHANNEL_TIME_DEFAULT,
790 CFG_ACTIVE_MIN_CHANNEL_TIME_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700791 CFG_ACTIVE_MIN_CHANNEL_TIME_MAX ),
Madan Mohan Koyyalamudi4ff9cd62012-10-30 17:48:57 -0700792
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800793 REG_VARIABLE( CFG_ACTIVE_MAX_CHANNEL_TIME_BTC_NAME, WLAN_PARAM_Integer,
794 hdd_config_t, nActiveMaxChnTimeBtc,
795 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
796 CFG_ACTIVE_MAX_CHANNEL_TIME_BTC_DEFAULT,
797 CFG_ACTIVE_MAX_CHANNEL_TIME_BTC_MIN,
798 CFG_ACTIVE_MAX_CHANNEL_TIME_BTC_MAX ),
799
800 REG_VARIABLE( CFG_ACTIVE_MIN_CHANNEL_TIME_BTC_NAME, WLAN_PARAM_Integer,
801 hdd_config_t, nActiveMinChnTimeBtc,
802 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
803 CFG_ACTIVE_MIN_CHANNEL_TIME_BTC_DEFAULT,
804 CFG_ACTIVE_MIN_CHANNEL_TIME_BTC_MIN,
805 CFG_ACTIVE_MIN_CHANNEL_TIME_BTC_MAX ),
806
Kiran Kumar Lokere1f39e952013-04-03 18:34:30 -0700807 REG_VARIABLE( CFG_RETRY_LIMIT_ZERO_NAME, WLAN_PARAM_Integer,
808 hdd_config_t, retryLimitZero,
809 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
810 CFG_RETRY_LIMIT_ZERO_DEFAULT,
811 CFG_RETRY_LIMIT_ZERO_MIN,
812 CFG_RETRY_LIMIT_ZERO_MAX ),
813
814 REG_VARIABLE( CFG_RETRY_LIMIT_ONE_NAME, WLAN_PARAM_Integer,
815 hdd_config_t, retryLimitOne,
816 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
817 CFG_RETRY_LIMIT_ONE_DEFAULT,
818 CFG_RETRY_LIMIT_ONE_MIN,
819 CFG_RETRY_LIMIT_ONE_MAX ),
820
821 REG_VARIABLE( CFG_RETRY_LIMIT_TWO_NAME, WLAN_PARAM_Integer,
822 hdd_config_t, retryLimitTwo,
823 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
824 CFG_RETRY_LIMIT_TWO_DEFAULT,
825 CFG_RETRY_LIMIT_TWO_MIN,
826 CFG_RETRY_LIMIT_TWO_MAX ),
827
Kiran Kumar Lokere458d7322013-05-29 14:29:43 -0700828 REG_VARIABLE( CFG_DISABLE_AGG_WITH_BTC_NAME, WLAN_PARAM_Integer,
829 hdd_config_t, disableAggWithBtc,
830 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
831 CFG_DISABLE_AGG_WITH_BTC_DEFAULT,
832 CFG_DISABLE_AGG_WITH_BTC_MIN,
833 CFG_DISABLE_AGG_WITH_BTC_MAX ),
834
Madan Mohan Koyyalamudi4ff9cd62012-10-30 17:48:57 -0700835#ifdef WLAN_AP_STA_CONCURRENCY
836 REG_VARIABLE( CFG_PASSIVE_MAX_CHANNEL_TIME_CONC_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800837 hdd_config_t, nPassiveMaxChnTimeConc,
838 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
839 CFG_PASSIVE_MAX_CHANNEL_TIME_CONC_DEFAULT,
840 CFG_PASSIVE_MAX_CHANNEL_TIME_CONC_MIN,
Madan Mohan Koyyalamudi4ff9cd62012-10-30 17:48:57 -0700841 CFG_PASSIVE_MAX_CHANNEL_TIME_CONC_MAX ),
842
843 REG_VARIABLE( CFG_PASSIVE_MIN_CHANNEL_TIME_CONC_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800844 hdd_config_t, nPassiveMinChnTimeConc,
845 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
846 CFG_PASSIVE_MIN_CHANNEL_TIME_CONC_DEFAULT,
847 CFG_PASSIVE_MIN_CHANNEL_TIME_CONC_MIN,
Madan Mohan Koyyalamudi4ff9cd62012-10-30 17:48:57 -0700848 CFG_PASSIVE_MIN_CHANNEL_TIME_CONC_MAX ),
849
850 REG_VARIABLE( CFG_ACTIVE_MAX_CHANNEL_TIME_CONC_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800851 hdd_config_t, nActiveMaxChnTimeConc,
852 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
853 CFG_ACTIVE_MAX_CHANNEL_TIME_CONC_DEFAULT,
854 CFG_ACTIVE_MAX_CHANNEL_TIME_CONC_MIN,
Madan Mohan Koyyalamudi4ff9cd62012-10-30 17:48:57 -0700855 CFG_ACTIVE_MAX_CHANNEL_TIME_CONC_MAX ),
856
857 REG_VARIABLE( CFG_ACTIVE_MIN_CHANNEL_TIME_CONC_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800858 hdd_config_t, nActiveMinChnTimeConc,
859 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
860 CFG_ACTIVE_MIN_CHANNEL_TIME_CONC_DEFAULT,
861 CFG_ACTIVE_MIN_CHANNEL_TIME_CONC_MIN,
Madan Mohan Koyyalamudi4ff9cd62012-10-30 17:48:57 -0700862 CFG_ACTIVE_MIN_CHANNEL_TIME_CONC_MAX ),
863
864 REG_VARIABLE( CFG_REST_TIME_CONC_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800865 hdd_config_t, nRestTimeConc,
866 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
867 CFG_REST_TIME_CONC_DEFAULT,
868 CFG_REST_TIME_CONC_MIN,
Madan Mohan Koyyalamudi4ff9cd62012-10-30 17:48:57 -0700869 CFG_REST_TIME_CONC_MAX ),
Vinay Malekal05fdc812012-12-17 13:04:30 -0800870
Sudhir Sattayappa Kohallieb97d502013-05-22 23:16:42 -0700871 REG_VARIABLE( CFG_NUM_STA_CHAN_COMBINED_CONC_NAME, WLAN_PARAM_Integer,
872 hdd_config_t, nNumStaChanCombinedConc,
Vinay Malekal05fdc812012-12-17 13:04:30 -0800873 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
Sudhir Sattayappa Kohallieb97d502013-05-22 23:16:42 -0700874 CFG_NUM_STA_CHAN_COMBINED_CONC_DEFAULT,
875 CFG_NUM_STA_CHAN_COMBINED_CONC_MIN,
876 CFG_NUM_STA_CHAN_COMBINED_CONC_MAX ),
877
878 REG_VARIABLE( CFG_NUM_P2P_CHAN_COMBINED_CONC_NAME, WLAN_PARAM_Integer,
879 hdd_config_t, nNumP2PChanCombinedConc,
880 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
881 CFG_NUM_P2P_CHAN_COMBINED_CONC_DEFAULT,
882 CFG_NUM_P2P_CHAN_COMBINED_CONC_MIN,
883 CFG_NUM_P2P_CHAN_COMBINED_CONC_MAX ),
Madan Mohan Koyyalamudi4ff9cd62012-10-30 17:48:57 -0700884#endif
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800885
Jeff Johnson295189b2012-06-20 16:38:30 -0700886 REG_VARIABLE( CFG_MAX_PS_POLL_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800887 hdd_config_t, nMaxPsPoll,
888 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
889 CFG_MAX_PS_POLL_DEFAULT,
890 CFG_MAX_PS_POLL_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700891 CFG_MAX_PS_POLL_MAX ),
892
893 REG_VARIABLE( CFG_MAX_TX_POWER_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800894 hdd_config_t, nTxPowerCap,
895 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
896 CFG_MAX_TX_POWER_DEFAULT,
897 CFG_MAX_TX_POWER_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700898 CFG_MAX_TX_POWER_MAX ),
899
900 REG_VARIABLE( CFG_LOW_GAIN_OVERRIDE_NAME, WLAN_PARAM_Integer,
901 hdd_config_t, fIsLowGainOverride,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800902 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
903 CFG_LOW_GAIN_OVERRIDE_DEFAULT,
904 CFG_LOW_GAIN_OVERRIDE_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700905 CFG_LOW_GAIN_OVERRIDE_MAX ),
906
907 REG_VARIABLE( CFG_RSSI_FILTER_PERIOD_NAME, WLAN_PARAM_Integer,
908 hdd_config_t, nRssiFilterPeriod,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800909 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
910 CFG_RSSI_FILTER_PERIOD_DEFAULT,
911 CFG_RSSI_FILTER_PERIOD_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700912 CFG_RSSI_FILTER_PERIOD_MAX ),
913
914 REG_VARIABLE( CFG_IGNORE_DTIM_NAME, WLAN_PARAM_Integer,
915 hdd_config_t, fIgnoreDtim,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800916 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
917 CFG_IGNORE_DTIM_DEFAULT,
918 CFG_IGNORE_DTIM_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700919 CFG_IGNORE_DTIM_MAX ),
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800920
Yue Mac24062f2013-05-13 17:01:29 -0700921 REG_VARIABLE( CFG_MAX_LI_MODULATED_DTIM_NAME, WLAN_PARAM_Integer,
922 hdd_config_t, fMaxLIModulatedDTIM,
923 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
924 CFG_MAX_LI_MODULATED_DTIM_DEFAULT,
925 CFG_MAX_LI_MODULATED_DTIM_MIN,
926 CFG_MAX_LI_MODULATED_DTIM_MAX ),
927
Jeff Johnson295189b2012-06-20 16:38:30 -0700928 REG_VARIABLE( CFG_RX_ANT_CONFIGURATION_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800929 hdd_config_t, nRxAnt,
930 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
931 CFG_RX_ANT_CONFIGURATION_NAME_DEFAULT,
932 CFG_RX_ANT_CONFIGURATION_NAME_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700933 CFG_RX_ANT_CONFIGURATION_NAME_MAX ),
934
935 REG_VARIABLE( CFG_FW_HEART_BEAT_MONITORING_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800936 hdd_config_t, fEnableFwHeartBeatMonitoring,
937 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
938 CFG_FW_HEART_BEAT_MONITORING_DEFAULT,
939 CFG_FW_HEART_BEAT_MONITORING_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700940 CFG_FW_HEART_BEAT_MONITORING_MAX ),
941
942 REG_VARIABLE( CFG_FW_BEACON_FILTERING_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800943 hdd_config_t, fEnableFwBeaconFiltering,
944 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
945 CFG_FW_BEACON_FILTERING_DEFAULT,
946 CFG_FW_BEACON_FILTERING_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700947 CFG_FW_BEACON_FILTERING_MAX ),
948
Gopichand Nakkala98a98af2012-12-31 14:38:47 -0800949 REG_DYNAMIC_VARIABLE( CFG_FW_RSSI_MONITORING_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800950 hdd_config_t, fEnableFwRssiMonitoring,
951 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
952 CFG_FW_RSSI_MONITORING_DEFAULT,
953 CFG_FW_RSSI_MONITORING_MIN,
Gopichand Nakkala98a98af2012-12-31 14:38:47 -0800954 CFG_FW_RSSI_MONITORING_MAX,
955 cbNotifySetFwRssiMonitoring, 0 ),
Jeff Johnson295189b2012-06-20 16:38:30 -0700956
957 REG_VARIABLE( CFG_DATA_INACTIVITY_TIMEOUT_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800958 hdd_config_t, nDataInactivityTimeout,
959 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
960 CFG_DATA_INACTIVITY_TIMEOUT_DEFAULT,
961 CFG_DATA_INACTIVITY_TIMEOUT_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700962 CFG_DATA_INACTIVITY_TIMEOUT_MAX ),
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800963
Jeff Johnson295189b2012-06-20 16:38:30 -0700964 REG_VARIABLE( CFG_NTH_BEACON_FILTER_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800965 hdd_config_t, nthBeaconFilter,
966 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
967 CFG_NTH_BEACON_FILTER_DEFAULT,
968 CFG_NTH_BEACON_FILTER_MIN,
969 CFG_NTH_BEACON_FILTER_MAX ),
Jeff Johnson295189b2012-06-20 16:38:30 -0700970
971 REG_VARIABLE( CFG_QOS_WMM_MODE_NAME , WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800972 hdd_config_t, WmmMode,
973 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
974 CFG_QOS_WMM_MODE_DEFAULT,
975 CFG_QOS_WMM_MODE_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700976 CFG_QOS_WMM_MODE_MAX ),
977
978 REG_VARIABLE( CFG_QOS_WMM_80211E_ENABLED_NAME , WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800979 hdd_config_t, b80211eIsEnabled,
980 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
981 CFG_QOS_WMM_80211E_ENABLED_DEFAULT,
982 CFG_QOS_WMM_80211E_ENABLED_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700983 CFG_QOS_WMM_80211E_ENABLED_MAX ),
984
985 REG_VARIABLE( CFG_QOS_WMM_UAPSD_MASK_NAME , WLAN_PARAM_HexInteger,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800986 hdd_config_t, UapsdMask,
987 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
988 CFG_QOS_WMM_UAPSD_MASK_DEFAULT,
989 CFG_QOS_WMM_UAPSD_MASK_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700990 CFG_QOS_WMM_UAPSD_MASK_MAX ),
991
Jeff Johnson295189b2012-06-20 16:38:30 -0700992 REG_VARIABLE( CFG_QOS_WMM_INFRA_UAPSD_VO_SRV_INTV_NAME , WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -0800993 hdd_config_t, InfraUapsdVoSrvIntv,
994 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
995 CFG_QOS_WMM_INFRA_UAPSD_VO_SRV_INTV_DEFAULT,
996 CFG_QOS_WMM_INFRA_UAPSD_VO_SRV_INTV_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -0700997 CFG_QOS_WMM_INFRA_UAPSD_VO_SRV_INTV_MAX ),
998
999 REG_VARIABLE( CFG_QOS_WMM_INFRA_UAPSD_VO_SUS_INTV_NAME , WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001000 hdd_config_t, InfraUapsdVoSuspIntv,
1001 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1002 CFG_QOS_WMM_INFRA_UAPSD_VO_SUS_INTV_DEFAULT,
1003 CFG_QOS_WMM_INFRA_UAPSD_VO_SUS_INTV_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001004 CFG_QOS_WMM_INFRA_UAPSD_VO_SUS_INTV_MAX ),
1005
1006 REG_VARIABLE( CFG_QOS_WMM_INFRA_UAPSD_VI_SRV_INTV_NAME , WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001007 hdd_config_t, InfraUapsdViSrvIntv,
1008 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1009 CFG_QOS_WMM_INFRA_UAPSD_VI_SRV_INTV_DEFAULT,
1010 CFG_QOS_WMM_INFRA_UAPSD_VI_SRV_INTV_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001011 CFG_QOS_WMM_INFRA_UAPSD_VI_SRV_INTV_MAX ),
1012
1013 REG_VARIABLE( CFG_QOS_WMM_INFRA_UAPSD_VI_SUS_INTV_NAME , WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001014 hdd_config_t, InfraUapsdViSuspIntv,
1015 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1016 CFG_QOS_WMM_INFRA_UAPSD_VI_SUS_INTV_DEFAULT,
1017 CFG_QOS_WMM_INFRA_UAPSD_VI_SUS_INTV_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001018 CFG_QOS_WMM_INFRA_UAPSD_VI_SUS_INTV_MAX ),
1019
1020 REG_VARIABLE( CFG_QOS_WMM_INFRA_UAPSD_BE_SRV_INTV_NAME , WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001021 hdd_config_t, InfraUapsdBeSrvIntv,
1022 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1023 CFG_QOS_WMM_INFRA_UAPSD_BE_SRV_INTV_DEFAULT,
1024 CFG_QOS_WMM_INFRA_UAPSD_BE_SRV_INTV_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001025 CFG_QOS_WMM_INFRA_UAPSD_BE_SRV_INTV_MAX ),
1026
1027 REG_VARIABLE( CFG_QOS_WMM_INFRA_UAPSD_BE_SUS_INTV_NAME , WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001028 hdd_config_t, InfraUapsdBeSuspIntv,
1029 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1030 CFG_QOS_WMM_INFRA_UAPSD_BE_SUS_INTV_DEFAULT,
1031 CFG_QOS_WMM_INFRA_UAPSD_BE_SUS_INTV_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001032 CFG_QOS_WMM_INFRA_UAPSD_BE_SUS_INTV_MAX ),
1033
1034 REG_VARIABLE( CFG_QOS_WMM_INFRA_UAPSD_BK_SRV_INTV_NAME , WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001035 hdd_config_t, InfraUapsdBkSrvIntv,
1036 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1037 CFG_QOS_WMM_INFRA_UAPSD_BK_SRV_INTV_DEFAULT,
1038 CFG_QOS_WMM_INFRA_UAPSD_BK_SRV_INTV_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001039 CFG_QOS_WMM_INFRA_UAPSD_BK_SRV_INTV_MAX ),
1040
1041 REG_VARIABLE( CFG_QOS_WMM_INFRA_UAPSD_BK_SUS_INTV_NAME , WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001042 hdd_config_t, InfraUapsdBkSuspIntv,
1043 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1044 CFG_QOS_WMM_INFRA_UAPSD_BK_SUS_INTV_DEFAULT,
1045 CFG_QOS_WMM_INFRA_UAPSD_BK_SUS_INTV_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001046 CFG_QOS_WMM_INFRA_UAPSD_BK_SUS_INTV_MAX ),
1047
Varun Reddy Yeturu5d5e2c62014-02-27 13:31:29 -08001048#ifdef FEATURE_WLAN_ESE
Jeff Johnson295189b2012-06-20 16:38:30 -07001049 REG_VARIABLE( CFG_QOS_WMM_INFRA_INACTIVITY_INTERVAL_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001050 hdd_config_t, InfraInactivityInterval,
1051 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1052 CFG_QOS_WMM_INFRA_INACTIVITY_INTERVAL_DEFAULT,
1053 CFG_QOS_WMM_INFRA_INACTIVITY_INTERVAL_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001054 CFG_QOS_WMM_INFRA_INACTIVITY_INTERVAL_MAX),
Varun Reddy Yeturu5d5e2c62014-02-27 13:31:29 -08001055 REG_DYNAMIC_VARIABLE( CFG_ESE_FEATURE_ENABLED_NAME, WLAN_PARAM_Integer,
1056 hdd_config_t, isEseIniFeatureEnabled,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001057 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
Varun Reddy Yeturu5d5e2c62014-02-27 13:31:29 -08001058 CFG_ESE_FEATURE_ENABLED_DEFAULT,
1059 CFG_ESE_FEATURE_ENABLED_MIN,
1060 CFG_ESE_FEATURE_ENABLED_MAX,
1061 cbNotifySetEseFeatureEnabled, 0 ),
1062#endif // FEATURE_WLAN_ESE
Jeff Johnson295189b2012-06-20 16:38:30 -07001063
Jeff Johnson04dd8a82012-06-29 20:41:40 -07001064#ifdef FEATURE_WLAN_LFR
1065 // flag to turn ON/OFF Legacy Fast Roaming
Gopichand Nakkala98a98af2012-12-31 14:38:47 -08001066 REG_DYNAMIC_VARIABLE( CFG_LFR_FEATURE_ENABLED_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001067 hdd_config_t, isFastRoamIniFeatureEnabled,
1068 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1069 CFG_LFR_FEATURE_ENABLED_DEFAULT,
1070 CFG_LFR_FEATURE_ENABLED_MIN,
Srinivas Girigowda100eb322013-03-15 16:48:20 -07001071 CFG_LFR_FEATURE_ENABLED_MAX,
1072 NotifyIsFastRoamIniFeatureEnabled, 0 ),
Sameer Thalappil4ae66ec2013-11-05 14:17:35 -08001073
1074 /* flag to turn ON/OFF Motion assistance for Legacy Fast Roaming */
1075 REG_DYNAMIC_VARIABLE( CFG_LFR_MAWC_FEATURE_ENABLED_NAME, WLAN_PARAM_Integer,
1076 hdd_config_t, MAWCEnabled,
1077 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1078 CFG_LFR_MAWC_FEATURE_ENABLED_DEFAULT,
1079 CFG_LFR_MAWC_FEATURE_ENABLED_MIN,
1080 CFG_LFR_MAWC_FEATURE_ENABLED_MAX,
1081 NotifyIsMAWCIniFeatureEnabled, 0 ),
1082
Jeff Johnson04dd8a82012-06-29 20:41:40 -07001083#endif // FEATURE_WLAN_LFR
1084
Varun Reddy Yeturu5d5e2c62014-02-27 13:31:29 -08001085#if defined (WLAN_FEATURE_VOWIFI_11R) || defined (FEATURE_WLAN_ESE) || defined(FEATURE_WLAN_LFR)
1086 // flag to turn ON/OFF 11r and ESE FastTransition
Gopichand Nakkala98a98af2012-12-31 14:38:47 -08001087 REG_DYNAMIC_VARIABLE( CFG_FAST_TRANSITION_ENABLED_NAME, WLAN_PARAM_Integer,
Jeff Johnson295189b2012-06-20 16:38:30 -07001088 hdd_config_t, isFastTransitionEnabled,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001089 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1090 CFG_FAST_TRANSITION_ENABLED_NAME_DEFAULT,
1091 CFG_FAST_TRANSITION_ENABLED_NAME_MIN,
Gopichand Nakkala98a98af2012-12-31 14:38:47 -08001092 CFG_FAST_TRANSITION_ENABLED_NAME_MAX,
1093 cbNotifySetFastTransitionEnabled, 0 ),
Jeff Johnson43971f52012-07-17 12:26:56 -07001094
Srinivas Girigowdade697412013-02-14 16:31:48 -08001095 /* Variable to specify the delta/difference between the RSSI of current AP
Jeff Johnson43971f52012-07-17 12:26:56 -07001096 * and roamable AP while roaming */
Srinivas Girigowdade697412013-02-14 16:31:48 -08001097 REG_DYNAMIC_VARIABLE( CFG_ROAM_RSSI_DIFF_NAME, WLAN_PARAM_Integer,
1098 hdd_config_t, RoamRssiDiff,
1099 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1100 CFG_ROAM_RSSI_DIFF_DEFAULT,
1101 CFG_ROAM_RSSI_DIFF_MIN,
1102 CFG_ROAM_RSSI_DIFF_MAX,
1103 cbNotifySetRoamRssiDiff, 0),
Madan Mohan Koyyalamudi62b55b02012-12-03 16:45:39 -08001104
1105 REG_DYNAMIC_VARIABLE( CFG_IMMEDIATE_ROAM_RSSI_DIFF_NAME, WLAN_PARAM_Integer,
Srinivas Girigowdade697412013-02-14 16:31:48 -08001106 hdd_config_t, nImmediateRoamRssiDiff,
1107 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1108 CFG_IMMEDIATE_ROAM_RSSI_DIFF_DEFAULT,
1109 CFG_IMMEDIATE_ROAM_RSSI_DIFF_MIN,
Madan Mohan Koyyalamudi62b55b02012-12-03 16:45:39 -08001110 CFG_IMMEDIATE_ROAM_RSSI_DIFF_MAX,
1111 cbNotifySetImmediateRoamRssiDiff, 0),
Srinivas Girigowda100eb322013-03-15 16:48:20 -07001112
Srinivas Girigowdaad34ca92013-10-22 10:54:29 -07001113 REG_DYNAMIC_VARIABLE( CFG_ENABLE_WES_MODE_NAME, WLAN_PARAM_Integer,
1114 hdd_config_t, isWESModeEnabled,
1115 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1116 CFG_ENABLE_WES_MODE_NAME_DEFAULT,
1117 CFG_ENABLE_WES_MODE_NAME_MIN,
1118 CFG_ENABLE_WES_MODE_NAME_MAX,
1119 cbNotifySetWESMode, 0),
Jeff Johnson295189b2012-06-20 16:38:30 -07001120#endif
Srinivas Girigowdabbd16eb2013-03-21 12:34:46 -07001121#ifdef FEATURE_WLAN_OKC
1122 REG_DYNAMIC_VARIABLE( CFG_OKC_FEATURE_ENABLED_NAME, WLAN_PARAM_Integer,
1123 hdd_config_t, isOkcIniFeatureEnabled,
1124 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1125 CFG_OKC_FEATURE_ENABLED_DEFAULT,
1126 CFG_OKC_FEATURE_ENABLED_MIN,
1127 CFG_OKC_FEATURE_ENABLED_MAX,
1128 cbNotifySetOkcFeatureEnabled, 0 ),
1129#endif
Varun Reddy Yeturud0a3f252013-04-15 21:58:13 -07001130#ifdef WLAN_FEATURE_ROAM_SCAN_OFFLOAD
1131 REG_DYNAMIC_VARIABLE( CFG_ROAM_SCAN_OFFLOAD_ENABLED, WLAN_PARAM_Integer,
1132 hdd_config_t, isRoamOffloadScanEnabled,
1133 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1134 CFG_ROAM_SCAN_OFFLOAD_ENABLED_DEFAULT,
1135 CFG_ROAM_SCAN_OFFLOAD_ENABLED_MIN,
1136 CFG_ROAM_SCAN_OFFLOAD_ENABLED_MAX,
1137 cbNotifyUpdateRoamScanOffloadEnabled, 0),
1138#endif
Jeff Johnson295189b2012-06-20 16:38:30 -07001139 REG_VARIABLE( CFG_QOS_WMM_PKT_CLASSIFY_BASIS_NAME , WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001140 hdd_config_t, PktClassificationBasis,
1141 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1142 CFG_QOS_WMM_PKT_CLASSIFY_BASIS_DEFAULT,
1143 CFG_QOS_WMM_PKT_CLASSIFY_BASIS_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001144 CFG_QOS_WMM_PKT_CLASSIFY_BASIS_MAX ),
1145
1146 REG_VARIABLE( CFG_QOS_WMM_INFRA_DIR_AC_VO_NAME , WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001147 hdd_config_t, InfraDirAcVo,
1148 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1149 CFG_QOS_WMM_INFRA_DIR_AC_VO_DEFAULT,
1150 CFG_QOS_WMM_INFRA_DIR_AC_VO_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001151 CFG_QOS_WMM_INFRA_DIR_AC_VO_MAX ),
1152
1153 REG_VARIABLE( CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_VO_NAME , WLAN_PARAM_HexInteger,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001154 hdd_config_t, InfraNomMsduSizeAcVo,
1155 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1156 CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_VO_DEFAULT,
1157 CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_VO_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001158 CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_VO_MAX ),
1159
1160 REG_VARIABLE( CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_VO_NAME , WLAN_PARAM_HexInteger,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001161 hdd_config_t, InfraMeanDataRateAcVo,
1162 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1163 CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_VO_DEFAULT,
1164 CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_VO_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001165 CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_VO_MAX ),
1166
1167 REG_VARIABLE( CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_VO_NAME , WLAN_PARAM_HexInteger,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001168 hdd_config_t, InfraMinPhyRateAcVo,
1169 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1170 CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_VO_DEFAULT,
1171 CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_VO_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001172 CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_VO_MAX ),
1173
1174 REG_VARIABLE( CFG_QOS_WMM_INFRA_SBA_AC_VO_NAME , WLAN_PARAM_HexInteger,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001175 hdd_config_t, InfraSbaAcVo,
1176 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1177 CFG_QOS_WMM_INFRA_SBA_AC_VO_DEFAULT,
1178 CFG_QOS_WMM_INFRA_SBA_AC_VO_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001179 CFG_QOS_WMM_INFRA_SBA_AC_VO_MAX ),
1180
1181 REG_VARIABLE( CFG_QOS_WMM_INFRA_DIR_AC_VI_NAME , WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001182 hdd_config_t, InfraDirAcVi,
1183 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1184 CFG_QOS_WMM_INFRA_DIR_AC_VI_DEFAULT,
1185 CFG_QOS_WMM_INFRA_DIR_AC_VI_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001186 CFG_QOS_WMM_INFRA_DIR_AC_VI_MAX ),
1187
1188 REG_VARIABLE( CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_VI_NAME , WLAN_PARAM_HexInteger,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001189 hdd_config_t, InfraNomMsduSizeAcVi,
1190 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1191 CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_VI_DEFAULT,
1192 CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_VI_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001193 CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_VI_MAX ),
1194
1195 REG_VARIABLE( CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_VI_NAME , WLAN_PARAM_HexInteger,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001196 hdd_config_t, InfraMeanDataRateAcVi,
1197 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1198 CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_VI_DEFAULT,
1199 CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_VI_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001200 CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_VI_MAX ),
1201
1202 REG_VARIABLE( CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_VI_NAME , WLAN_PARAM_HexInteger,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001203 hdd_config_t, InfraMinPhyRateAcVi,
1204 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1205 CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_VI_DEFAULT,
1206 CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_VI_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001207 CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_VI_MAX ),
1208
1209 REG_VARIABLE( CFG_QOS_WMM_INFRA_SBA_AC_VI_NAME , WLAN_PARAM_HexInteger,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001210 hdd_config_t, InfraSbaAcVi,
1211 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1212 CFG_QOS_WMM_INFRA_SBA_AC_VI_DEFAULT,
1213 CFG_QOS_WMM_INFRA_SBA_AC_VI_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001214 CFG_QOS_WMM_INFRA_SBA_AC_VI_MAX ),
1215
1216 REG_VARIABLE( CFG_QOS_WMM_INFRA_DIR_AC_BE_NAME , WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001217 hdd_config_t, InfraDirAcBe,
1218 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1219 CFG_QOS_WMM_INFRA_DIR_AC_BE_DEFAULT,
1220 CFG_QOS_WMM_INFRA_DIR_AC_BE_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001221 CFG_QOS_WMM_INFRA_DIR_AC_BE_MAX ),
1222
1223 REG_VARIABLE( CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_BE_NAME , WLAN_PARAM_HexInteger,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001224 hdd_config_t, InfraNomMsduSizeAcBe,
1225 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1226 CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_BE_DEFAULT,
1227 CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_BE_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001228 CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_BE_MAX ),
1229
1230 REG_VARIABLE( CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_BE_NAME , WLAN_PARAM_HexInteger,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001231 hdd_config_t, InfraMeanDataRateAcBe,
1232 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1233 CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_BE_DEFAULT,
1234 CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_BE_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001235 CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_BE_MAX ),
1236
1237 REG_VARIABLE( CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_BE_NAME , WLAN_PARAM_HexInteger,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001238 hdd_config_t, InfraMinPhyRateAcBe,
1239 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1240 CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_BE_DEFAULT,
1241 CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_BE_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001242 CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_BE_MAX ),
1243
1244 REG_VARIABLE( CFG_QOS_WMM_INFRA_SBA_AC_BE_NAME , WLAN_PARAM_HexInteger,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001245 hdd_config_t, InfraSbaAcBe,
1246 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1247 CFG_QOS_WMM_INFRA_SBA_AC_BE_DEFAULT,
1248 CFG_QOS_WMM_INFRA_SBA_AC_BE_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001249 CFG_QOS_WMM_INFRA_SBA_AC_BE_MAX ),
1250
1251 REG_VARIABLE( CFG_QOS_WMM_INFRA_DIR_AC_BK_NAME , WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001252 hdd_config_t, InfraDirAcBk,
1253 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1254 CFG_QOS_WMM_INFRA_DIR_AC_BK_DEFAULT,
1255 CFG_QOS_WMM_INFRA_DIR_AC_BK_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001256 CFG_QOS_WMM_INFRA_DIR_AC_BK_MAX ),
1257
1258 REG_VARIABLE( CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_BK_NAME , WLAN_PARAM_HexInteger,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001259 hdd_config_t, InfraNomMsduSizeAcBk,
1260 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1261 CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_BK_DEFAULT,
1262 CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_BK_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001263 CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_BK_MAX ),
1264
1265 REG_VARIABLE( CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_BK_NAME , WLAN_PARAM_HexInteger,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001266 hdd_config_t, InfraMeanDataRateAcBk,
1267 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1268 CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_BK_DEFAULT,
1269 CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_BK_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001270 CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_BK_MAX ),
1271
1272 REG_VARIABLE( CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_BK_NAME , WLAN_PARAM_HexInteger,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001273 hdd_config_t, InfraMinPhyRateAcBk,
1274 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1275 CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_BK_DEFAULT,
1276 CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_BK_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001277 CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_BK_MAX ),
1278
1279 REG_VARIABLE( CFG_QOS_WMM_INFRA_SBA_AC_BK_NAME , WLAN_PARAM_HexInteger,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001280 hdd_config_t, InfraSbaAcBk,
1281 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1282 CFG_QOS_WMM_INFRA_SBA_AC_BK_DEFAULT,
1283 CFG_QOS_WMM_INFRA_SBA_AC_BK_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001284 CFG_QOS_WMM_INFRA_SBA_AC_BK_MAX ),
1285
1286 REG_VARIABLE( CFG_TL_WFQ_BK_WEIGHT_NAME , WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001287 hdd_config_t, WfqBkWeight,
1288 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1289 CFG_TL_WFQ_BK_WEIGHT_DEFAULT,
1290 CFG_TL_WFQ_BK_WEIGHT_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001291 CFG_TL_WFQ_BK_WEIGHT_MAX ),
1292
1293 REG_VARIABLE( CFG_TL_WFQ_BE_WEIGHT_NAME , WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001294 hdd_config_t, WfqBeWeight,
1295 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1296 CFG_TL_WFQ_BE_WEIGHT_DEFAULT,
1297 CFG_TL_WFQ_BE_WEIGHT_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001298 CFG_TL_WFQ_BE_WEIGHT_MAX ),
1299
1300 REG_VARIABLE( CFG_TL_WFQ_VI_WEIGHT_NAME , WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001301 hdd_config_t, WfqViWeight,
1302 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1303 CFG_TL_WFQ_VI_WEIGHT_DEFAULT,
1304 CFG_TL_WFQ_VI_WEIGHT_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001305 CFG_TL_WFQ_VI_WEIGHT_MAX ),
1306
1307 REG_VARIABLE( CFG_TL_WFQ_VO_WEIGHT_NAME , WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001308 hdd_config_t, WfqVoWeight,
1309 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1310 CFG_TL_WFQ_VO_WEIGHT_DEFAULT,
1311 CFG_TL_WFQ_VO_WEIGHT_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001312 CFG_TL_WFQ_VO_WEIGHT_MAX ),
1313
1314 REG_VARIABLE( CFG_TL_DELAYED_TRGR_FRM_INT_NAME , WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001315 hdd_config_t, DelayedTriggerFrmInt,
1316 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1317 CFG_TL_DELAYED_TRGR_FRM_INT_DEFAULT,
1318 CFG_TL_DELAYED_TRGR_FRM_INT_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001319 CFG_TL_DELAYED_TRGR_FRM_INT_MAX ),
1320
Dhanashri Atred8c20a32014-01-03 17:20:55 -08001321 REG_VARIABLE( CFG_REORDER_TIME_BK_NAME , WLAN_PARAM_Integer,
1322 hdd_config_t, BkReorderAgingTime,
1323 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1324 CFG_REORDER_TIME_BK_DEFAULT,
1325 CFG_REORDER_TIME_BK_MIN,
1326 CFG_REORDER_TIME_BK_MAX ),
1327
1328 REG_VARIABLE( CFG_REORDER_TIME_BE_NAME , WLAN_PARAM_Integer,
1329 hdd_config_t, BeReorderAgingTime,
1330 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1331 CFG_REORDER_TIME_BE_DEFAULT,
1332 CFG_REORDER_TIME_BE_MIN,
1333 CFG_REORDER_TIME_BE_MAX ),
1334
1335 REG_VARIABLE( CFG_REORDER_TIME_VI_NAME , WLAN_PARAM_Integer,
1336 hdd_config_t, ViReorderAgingTime,
1337 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1338 CFG_REORDER_TIME_VI_DEFAULT,
1339 CFG_REORDER_TIME_VI_MIN,
1340 CFG_REORDER_TIME_VI_MAX ),
1341
1342 REG_VARIABLE( CFG_REORDER_TIME_VO_NAME , WLAN_PARAM_Integer,
1343 hdd_config_t, VoReorderAgingTime,
1344 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1345 CFG_REORDER_TIME_VO_DEFAULT,
1346 CFG_REORDER_TIME_VO_MIN,
1347 CFG_REORDER_TIME_VO_MAX ),
1348
Jeff Johnson295189b2012-06-20 16:38:30 -07001349 REG_VARIABLE_STRING( CFG_WOWL_PATTERN_NAME, WLAN_PARAM_String,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001350 hdd_config_t, wowlPattern,
Jeff Johnson295189b2012-06-20 16:38:30 -07001351 VAR_FLAGS_OPTIONAL,
1352 (void *)CFG_WOWL_PATTERN_DEFAULT ),
1353
1354 REG_VARIABLE( CFG_QOS_IMPLICIT_SETUP_ENABLED_NAME , WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001355 hdd_config_t, bImplicitQosEnabled,
1356 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1357 CFG_QOS_IMPLICIT_SETUP_ENABLED_DEFAULT,
1358 CFG_QOS_IMPLICIT_SETUP_ENABLED_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001359 CFG_QOS_IMPLICIT_SETUP_ENABLED_MAX ),
1360
Jeff Johnson295189b2012-06-20 16:38:30 -07001361 REG_VARIABLE( CFG_BTC_EXECUTION_MODE_NAME , WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001362 hdd_config_t, btcExecutionMode,
1363 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1364 CFG_BTC_EXECUTION_MODE_DEFAULT,
1365 CFG_BTC_EXECUTION_MODE_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001366 CFG_BTC_EXECUTION_MODE_MAX ),
1367
1368 REG_VARIABLE( CFG_BTC_DHCP_PROTECTION_NAME , WLAN_PARAM_Integer,
1369 hdd_config_t, btcConsBtSlotsToBlockDuringDhcp,
1370 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1371 CFG_BTC_DHCP_PROTECTION_DEFAULT,
1372 CFG_BTC_DHCP_PROTECTION_MIN,
1373 CFG_BTC_DHCP_PROTECTION_MAX ),
1374
1375 REG_VARIABLE( CFG_BTC_A2DP_DHCP_PROTECTION_NAME , WLAN_PARAM_Integer,
1376 hdd_config_t, btcA2DPBtSubIntervalsDuringDhcp,
1377 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1378 CFG_BTC_A2DP_DHCP_PROTECTION_DEFAULT,
1379 CFG_BTC_A2DP_DHCP_PROTECTION_MIN,
1380 CFG_BTC_A2DP_DHCP_PROTECTION_MAX ),
1381
Jeff Johnson32d95a32012-09-10 13:15:23 -07001382 REG_VARIABLE( CFG_BTC_STATIC_LEN_INQ_BT_NAME , WLAN_PARAM_Integer,
1383 hdd_config_t, btcStaticLenInqBt,
1384 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1385 CFG_BTC_STATIC_LEN_INQ_BT_DEFAULT,
1386 CFG_BTC_STATIC_LEN_INQ_BT_MIN,
1387 CFG_BTC_STATIC_LEN_INQ_BT_MAX ),
1388
1389 REG_VARIABLE( CFG_BTC_STATIC_LEN_PAGE_BT_NAME , WLAN_PARAM_Integer,
1390 hdd_config_t, btcStaticLenPageBt,
1391 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1392 CFG_BTC_STATIC_LEN_PAGE_BT_DEFAULT,
1393 CFG_BTC_STATIC_LEN_PAGE_BT_MIN,
1394 CFG_BTC_STATIC_LEN_PAGE_BT_MAX ),
1395
1396 REG_VARIABLE( CFG_BTC_STATIC_LEN_CONN_BT_NAME , WLAN_PARAM_Integer,
1397 hdd_config_t, btcStaticLenConnBt,
1398 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1399 CFG_BTC_STATIC_LEN_CONN_BT_DEFAULT,
1400 CFG_BTC_STATIC_LEN_CONN_BT_MIN,
1401 CFG_BTC_STATIC_LEN_CONN_BT_MAX ),
1402
1403 REG_VARIABLE( CFG_BTC_STATIC_LEN_LE_BT_NAME , WLAN_PARAM_Integer,
1404 hdd_config_t, btcStaticLenLeBt,
1405 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1406 CFG_BTC_STATIC_LEN_LE_BT_DEFAULT,
1407 CFG_BTC_STATIC_LEN_LE_BT_MIN,
1408 CFG_BTC_STATIC_LEN_LE_BT_MAX ),
1409
1410 REG_VARIABLE( CFG_BTC_STATIC_LEN_INQ_WLAN_NAME , WLAN_PARAM_Integer,
1411 hdd_config_t, btcStaticLenInqWlan,
1412 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1413 CFG_BTC_STATIC_LEN_INQ_WLAN_DEFAULT,
1414 CFG_BTC_STATIC_LEN_INQ_WLAN_MIN,
1415 CFG_BTC_STATIC_LEN_INQ_WLAN_MAX ),
1416
1417 REG_VARIABLE( CFG_BTC_STATIC_LEN_PAGE_WLAN_NAME , WLAN_PARAM_Integer,
1418 hdd_config_t, btcStaticLenPageWlan,
1419 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1420 CFG_BTC_STATIC_LEN_PAGE_WLAN_DEFAULT,
1421 CFG_BTC_STATIC_LEN_PAGE_WLAN_MIN,
1422 CFG_BTC_STATIC_LEN_PAGE_WLAN_MAX ),
1423
1424 REG_VARIABLE( CFG_BTC_STATIC_LEN_CONN_WLAN_NAME , WLAN_PARAM_Integer,
1425 hdd_config_t, btcStaticLenConnWlan,
1426 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1427 CFG_BTC_STATIC_LEN_CONN_WLAN_DEFAULT,
1428 CFG_BTC_STATIC_LEN_CONN_WLAN_MIN,
1429 CFG_BTC_STATIC_LEN_CONN_WLAN_MAX ),
1430
1431 REG_VARIABLE( CFG_BTC_STATIC_LEN_LE_WLAN_NAME , WLAN_PARAM_Integer,
1432 hdd_config_t, btcStaticLenLeWlan,
1433 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1434 CFG_BTC_STATIC_LEN_LE_WLAN_DEFAULT,
1435 CFG_BTC_STATIC_LEN_LE_WLAN_MIN,
1436 CFG_BTC_STATIC_LEN_LE_WLAN_MAX ),
1437
1438 REG_VARIABLE( CFG_BTC_DYN_MAX_LEN_BT_NAME , WLAN_PARAM_Integer,
1439 hdd_config_t, btcDynMaxLenBt,
1440 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1441 CFG_BTC_DYN_MAX_LEN_BT_DEFAULT,
1442 CFG_BTC_DYN_MAX_LEN_BT_MIN,
1443 CFG_BTC_DYN_MAX_LEN_BT_MAX ),
1444
1445 REG_VARIABLE( CFG_BTC_DYN_MAX_LEN_WLAN_NAME , WLAN_PARAM_Integer,
1446 hdd_config_t, btcDynMaxLenWlan,
1447 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1448 CFG_BTC_DYN_MAX_LEN_WLAN_DEFAULT,
1449 CFG_BTC_DYN_MAX_LEN_WLAN_MIN,
1450 CFG_BTC_DYN_MAX_LEN_WLAN_MAX ),
1451
1452 REG_VARIABLE( CFG_BTC_MAX_SCO_BLOCK_PERC_NAME , WLAN_PARAM_Integer,
1453 hdd_config_t, btcMaxScoBlockPerc,
1454 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1455 CFG_BTC_MAX_SCO_BLOCK_PERC_DEFAULT,
1456 CFG_BTC_MAX_SCO_BLOCK_PERC_MIN,
1457 CFG_BTC_MAX_SCO_BLOCK_PERC_MAX ),
1458
1459 REG_VARIABLE( CFG_BTC_DHCP_PROT_ON_A2DP_NAME , WLAN_PARAM_Integer,
1460 hdd_config_t, btcDhcpProtOnA2dp,
1461 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1462 CFG_BTC_DHCP_PROT_ON_A2DP_DEFAULT,
1463 CFG_BTC_DHCP_PROT_ON_A2DP_MIN,
1464 CFG_BTC_DHCP_PROT_ON_A2DP_MAX ),
1465
1466 REG_VARIABLE( CFG_BTC_DHCP_PROT_ON_SCO_NAME , WLAN_PARAM_Integer,
1467 hdd_config_t, btcDhcpProtOnSco,
1468 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1469 CFG_BTC_DHCP_PROT_ON_SCO_DEFAULT,
1470 CFG_BTC_DHCP_PROT_ON_SCO_MIN,
1471 CFG_BTC_DHCP_PROT_ON_SCO_MAX ),
1472
Wilson Tsaof8b37942013-09-06 10:49:00 -07001473 REG_VARIABLE( CFG_MWS_COEX_V1_WAN_FREQ_NAME , WLAN_PARAM_Integer,
1474 hdd_config_t, mwsCoexVictimWANFreq[0],
1475 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1476 CFG_MWS_COEX_VX_WAN_FREQ_DEFAULT,
1477 CFG_MWS_COEX_VX_WAN_FREQ_MIN,
1478 CFG_MWS_COEX_VX_WAN_FREQ_MAX ),
1479
1480 REG_VARIABLE( CFG_MWS_COEX_V1_WLAN_FREQ_NAME , WLAN_PARAM_Integer,
1481 hdd_config_t, mwsCoexVictimWLANFreq[0],
1482 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1483 CFG_MWS_COEX_VX_WLAN_FREQ_DEFAULT,
1484 CFG_MWS_COEX_VX_WLAN_FREQ_MIN,
1485 CFG_MWS_COEX_VX_WLAN_FREQ_MAX ),
1486
1487 REG_VARIABLE( CFG_MWS_COEX_V1_CONFIG_NAME , WLAN_PARAM_Integer,
1488 hdd_config_t, mwsCoexVictimConfig[0],
1489 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1490 CFG_MWS_COEX_VX_CONFIG_DEFAULT,
1491 CFG_MWS_COEX_VX_CONFIG_MIN,
1492 CFG_MWS_COEX_VX_CONFIG_MAX ),
1493
1494 REG_VARIABLE( CFG_MWS_COEX_V1_CONFIG2_NAME , WLAN_PARAM_Integer,
1495 hdd_config_t, mwsCoexVictimConfig2[0],
1496 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1497 CFG_MWS_COEX_VX_CONFIG_DEFAULT,
1498 CFG_MWS_COEX_VX_CONFIG_MIN,
1499 CFG_MWS_COEX_VX_CONFIG_MAX ),
1500
1501 REG_VARIABLE( CFG_MWS_COEX_V2_WAN_FREQ_NAME , WLAN_PARAM_Integer,
1502 hdd_config_t, mwsCoexVictimWANFreq[1],
1503 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1504 CFG_MWS_COEX_VX_WAN_FREQ_DEFAULT,
1505 CFG_MWS_COEX_VX_WAN_FREQ_MIN,
1506 CFG_MWS_COEX_VX_WAN_FREQ_MAX ),
1507
1508 REG_VARIABLE( CFG_MWS_COEX_V2_WLAN_FREQ_NAME , WLAN_PARAM_Integer,
1509 hdd_config_t, mwsCoexVictimWLANFreq[1],
1510 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1511 CFG_MWS_COEX_VX_WLAN_FREQ_DEFAULT,
1512 CFG_MWS_COEX_VX_WLAN_FREQ_MIN,
1513 CFG_MWS_COEX_VX_WLAN_FREQ_MAX ),
1514
1515 REG_VARIABLE( CFG_MWS_COEX_V2_CONFIG_NAME , WLAN_PARAM_Integer,
1516 hdd_config_t, mwsCoexVictimConfig[1],
1517 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1518 CFG_MWS_COEX_VX_CONFIG_DEFAULT,
1519 CFG_MWS_COEX_VX_CONFIG_MIN,
1520 CFG_MWS_COEX_VX_CONFIG_MAX ),
1521
1522 REG_VARIABLE( CFG_MWS_COEX_V2_CONFIG2_NAME , WLAN_PARAM_Integer,
1523 hdd_config_t, mwsCoexVictimConfig2[1],
1524 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1525 CFG_MWS_COEX_VX_CONFIG_DEFAULT,
1526 CFG_MWS_COEX_VX_CONFIG_MIN,
1527 CFG_MWS_COEX_VX_CONFIG_MAX ),
1528
1529 REG_VARIABLE( CFG_MWS_COEX_V3_WAN_FREQ_NAME , WLAN_PARAM_Integer,
1530 hdd_config_t, mwsCoexVictimWANFreq[2],
1531 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1532 CFG_MWS_COEX_VX_WAN_FREQ_DEFAULT,
1533 CFG_MWS_COEX_VX_WAN_FREQ_MIN,
1534 CFG_MWS_COEX_VX_WAN_FREQ_MAX ),
1535
1536 REG_VARIABLE( CFG_MWS_COEX_V3_WLAN_FREQ_NAME , WLAN_PARAM_Integer,
1537 hdd_config_t, mwsCoexVictimWLANFreq[2],
1538 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1539 CFG_MWS_COEX_VX_WLAN_FREQ_DEFAULT,
1540 CFG_MWS_COEX_VX_WLAN_FREQ_MIN,
1541 CFG_MWS_COEX_VX_WLAN_FREQ_MAX ),
1542
1543 REG_VARIABLE( CFG_MWS_COEX_V3_CONFIG_NAME , WLAN_PARAM_Integer,
1544 hdd_config_t, mwsCoexVictimConfig[2],
1545 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1546 CFG_MWS_COEX_VX_CONFIG_DEFAULT,
1547 CFG_MWS_COEX_VX_CONFIG_MIN,
1548 CFG_MWS_COEX_VX_CONFIG_MAX ),
1549
1550 REG_VARIABLE( CFG_MWS_COEX_V3_CONFIG2_NAME , WLAN_PARAM_Integer,
1551 hdd_config_t, mwsCoexVictimConfig2[2],
1552 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1553 CFG_MWS_COEX_VX_CONFIG_DEFAULT,
1554 CFG_MWS_COEX_VX_CONFIG_MIN,
1555 CFG_MWS_COEX_VX_CONFIG_MAX ),
1556
1557 REG_VARIABLE( CFG_MWS_COEX_V4_WAN_FREQ_NAME , WLAN_PARAM_Integer,
1558 hdd_config_t, mwsCoexVictimWANFreq[3],
1559 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1560 CFG_MWS_COEX_VX_WAN_FREQ_DEFAULT,
1561 CFG_MWS_COEX_VX_WAN_FREQ_MIN,
1562 CFG_MWS_COEX_VX_WAN_FREQ_MAX ),
1563
1564 REG_VARIABLE( CFG_MWS_COEX_V4_WLAN_FREQ_NAME , WLAN_PARAM_Integer,
1565 hdd_config_t, mwsCoexVictimWLANFreq[3],
1566 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1567 CFG_MWS_COEX_VX_WLAN_FREQ_DEFAULT,
1568 CFG_MWS_COEX_VX_WLAN_FREQ_MIN,
1569 CFG_MWS_COEX_VX_WLAN_FREQ_MAX ),
1570
1571 REG_VARIABLE( CFG_MWS_COEX_V4_CONFIG_NAME , WLAN_PARAM_Integer,
1572 hdd_config_t, mwsCoexVictimConfig[3],
1573 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1574 CFG_MWS_COEX_VX_CONFIG_DEFAULT,
1575 CFG_MWS_COEX_VX_CONFIG_MIN,
1576 CFG_MWS_COEX_VX_CONFIG_MAX ),
1577
1578 REG_VARIABLE( CFG_MWS_COEX_V4_CONFIG2_NAME , WLAN_PARAM_Integer,
1579 hdd_config_t, mwsCoexVictimConfig2[3],
1580 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1581 CFG_MWS_COEX_VX_CONFIG_DEFAULT,
1582 CFG_MWS_COEX_VX_CONFIG_MIN,
1583 CFG_MWS_COEX_VX_CONFIG_MAX ),
1584
1585 REG_VARIABLE( CFG_MWS_COEX_V5_WAN_FREQ_NAME , WLAN_PARAM_Integer,
1586 hdd_config_t, mwsCoexVictimWANFreq[4],
1587 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1588 CFG_MWS_COEX_VX_WAN_FREQ_DEFAULT,
1589 CFG_MWS_COEX_VX_WAN_FREQ_MIN,
1590 CFG_MWS_COEX_VX_WAN_FREQ_MAX ),
1591
1592 REG_VARIABLE( CFG_MWS_COEX_V5_WLAN_FREQ_NAME , WLAN_PARAM_Integer,
1593 hdd_config_t, mwsCoexVictimWLANFreq[4],
1594 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1595 CFG_MWS_COEX_VX_WLAN_FREQ_DEFAULT,
1596 CFG_MWS_COEX_VX_WLAN_FREQ_MIN,
1597 CFG_MWS_COEX_VX_WLAN_FREQ_MAX ),
1598
1599 REG_VARIABLE( CFG_MWS_COEX_V5_CONFIG_NAME , WLAN_PARAM_Integer,
1600 hdd_config_t, mwsCoexVictimConfig[4],
1601 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1602 CFG_MWS_COEX_VX_CONFIG_DEFAULT,
1603 CFG_MWS_COEX_VX_CONFIG_MIN,
1604 CFG_MWS_COEX_VX_CONFIG_MAX ),
1605
1606 REG_VARIABLE( CFG_MWS_COEX_V5_CONFIG2_NAME , WLAN_PARAM_Integer,
1607 hdd_config_t, mwsCoexVictimConfig2[4],
1608 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1609 CFG_MWS_COEX_VX_CONFIG_DEFAULT,
1610 CFG_MWS_COEX_VX_CONFIG_MIN,
1611 CFG_MWS_COEX_VX_CONFIG_MAX ),
1612
1613 REG_VARIABLE( CFG_MWS_COEX_V6_WAN_FREQ_NAME , WLAN_PARAM_Integer,
1614 hdd_config_t, mwsCoexVictimWANFreq[5],
1615 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1616 CFG_MWS_COEX_VX_WAN_FREQ_DEFAULT,
1617 CFG_MWS_COEX_VX_WAN_FREQ_MIN,
1618 CFG_MWS_COEX_VX_WAN_FREQ_MAX ),
1619
1620 REG_VARIABLE( CFG_MWS_COEX_V6_WLAN_FREQ_NAME , WLAN_PARAM_Integer,
1621 hdd_config_t, mwsCoexVictimWLANFreq[5],
1622 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1623 CFG_MWS_COEX_VX_WLAN_FREQ_DEFAULT,
1624 CFG_MWS_COEX_VX_WLAN_FREQ_MIN,
1625 CFG_MWS_COEX_VX_WLAN_FREQ_MAX ),
1626
1627 REG_VARIABLE( CFG_MWS_COEX_V6_CONFIG_NAME , WLAN_PARAM_Integer,
1628 hdd_config_t, mwsCoexVictimConfig[5],
1629 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1630 CFG_MWS_COEX_VX_CONFIG_DEFAULT,
1631 CFG_MWS_COEX_VX_CONFIG_MIN,
1632 CFG_MWS_COEX_VX_CONFIG_MAX ),
1633
1634 REG_VARIABLE( CFG_MWS_COEX_V6_CONFIG2_NAME , WLAN_PARAM_Integer,
1635 hdd_config_t, mwsCoexVictimConfig2[5],
1636 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1637 CFG_MWS_COEX_VX_CONFIG_DEFAULT,
1638 CFG_MWS_COEX_VX_CONFIG_MIN,
1639 CFG_MWS_COEX_VX_CONFIG_MAX ),
1640
1641 REG_VARIABLE( CFG_MWS_COEX_V7_WAN_FREQ_NAME , WLAN_PARAM_Integer,
1642 hdd_config_t, mwsCoexVictimWANFreq[6],
1643 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1644 CFG_MWS_COEX_VX_WAN_FREQ_DEFAULT,
1645 CFG_MWS_COEX_VX_WAN_FREQ_MIN,
1646 CFG_MWS_COEX_VX_WAN_FREQ_MAX ),
1647
1648 REG_VARIABLE( CFG_MWS_COEX_V7_WLAN_FREQ_NAME , WLAN_PARAM_Integer,
1649 hdd_config_t, mwsCoexVictimWLANFreq[6],
1650 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1651 CFG_MWS_COEX_VX_WLAN_FREQ_DEFAULT,
1652 CFG_MWS_COEX_VX_WLAN_FREQ_MIN,
1653 CFG_MWS_COEX_VX_WLAN_FREQ_MAX ),
1654
1655 REG_VARIABLE( CFG_MWS_COEX_V7_CONFIG_NAME , WLAN_PARAM_Integer,
1656 hdd_config_t, mwsCoexVictimConfig[6],
1657 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1658 CFG_MWS_COEX_VX_CONFIG_DEFAULT,
1659 CFG_MWS_COEX_VX_CONFIG_MIN,
1660 CFG_MWS_COEX_VX_CONFIG_MAX ),
1661
1662 REG_VARIABLE( CFG_MWS_COEX_V7_CONFIG2_NAME , WLAN_PARAM_Integer,
1663 hdd_config_t, mwsCoexVictimConfig2[6],
1664 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1665 CFG_MWS_COEX_VX_CONFIG_DEFAULT,
1666 CFG_MWS_COEX_VX_CONFIG_MIN,
1667 CFG_MWS_COEX_VX_CONFIG_MAX ),
1668
1669 REG_VARIABLE( CFG_MWS_COEX_V8_WAN_FREQ_NAME , WLAN_PARAM_Integer,
1670 hdd_config_t, mwsCoexVictimWANFreq[7],
1671 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1672 CFG_MWS_COEX_VX_WAN_FREQ_DEFAULT,
1673 CFG_MWS_COEX_VX_WAN_FREQ_MIN,
1674 CFG_MWS_COEX_VX_WAN_FREQ_MAX ),
1675
1676 REG_VARIABLE( CFG_MWS_COEX_V8_WLAN_FREQ_NAME , WLAN_PARAM_Integer,
1677 hdd_config_t, mwsCoexVictimWLANFreq[7],
1678 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1679 CFG_MWS_COEX_VX_WLAN_FREQ_DEFAULT,
1680 CFG_MWS_COEX_VX_WLAN_FREQ_MIN,
1681 CFG_MWS_COEX_VX_WLAN_FREQ_MAX ),
1682
1683 REG_VARIABLE( CFG_MWS_COEX_V8_CONFIG_NAME , WLAN_PARAM_Integer,
1684 hdd_config_t, mwsCoexVictimConfig[7],
1685 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1686 CFG_MWS_COEX_VX_CONFIG_DEFAULT,
1687 CFG_MWS_COEX_VX_CONFIG_MIN,
1688 CFG_MWS_COEX_VX_CONFIG_MAX ),
1689
1690 REG_VARIABLE( CFG_MWS_COEX_V8_CONFIG2_NAME , WLAN_PARAM_Integer,
1691 hdd_config_t, mwsCoexVictimConfig2[7],
1692 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1693 CFG_MWS_COEX_VX_CONFIG_DEFAULT,
1694 CFG_MWS_COEX_VX_CONFIG_MIN,
1695 CFG_MWS_COEX_VX_CONFIG_MAX ),
1696
1697 REG_VARIABLE( CFG_MWS_COEX_V9_WAN_FREQ_NAME , WLAN_PARAM_Integer,
1698 hdd_config_t, mwsCoexVictimWANFreq[8],
1699 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1700 CFG_MWS_COEX_VX_WAN_FREQ_DEFAULT,
1701 CFG_MWS_COEX_VX_WAN_FREQ_MIN,
1702 CFG_MWS_COEX_VX_WAN_FREQ_MAX ),
1703
1704 REG_VARIABLE( CFG_MWS_COEX_V9_WLAN_FREQ_NAME , WLAN_PARAM_Integer,
1705 hdd_config_t, mwsCoexVictimWLANFreq[8],
1706 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1707 CFG_MWS_COEX_VX_WLAN_FREQ_DEFAULT,
1708 CFG_MWS_COEX_VX_WLAN_FREQ_MIN,
1709 CFG_MWS_COEX_VX_WLAN_FREQ_MAX ),
1710
1711 REG_VARIABLE( CFG_MWS_COEX_V9_CONFIG_NAME , WLAN_PARAM_Integer,
1712 hdd_config_t, mwsCoexVictimConfig[8],
1713 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1714 CFG_MWS_COEX_VX_CONFIG_DEFAULT,
1715 CFG_MWS_COEX_VX_CONFIG_MIN,
1716 CFG_MWS_COEX_VX_CONFIG_MAX ),
1717
1718 REG_VARIABLE( CFG_MWS_COEX_V9_CONFIG2_NAME , WLAN_PARAM_Integer,
1719 hdd_config_t, mwsCoexVictimConfig2[8],
1720 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1721 CFG_MWS_COEX_VX_CONFIG_DEFAULT,
1722 CFG_MWS_COEX_VX_CONFIG_MIN,
1723 CFG_MWS_COEX_VX_CONFIG_MAX ),
1724
1725 REG_VARIABLE( CFG_MWS_COEX_V10_WAN_FREQ_NAME , WLAN_PARAM_Integer,
1726 hdd_config_t, mwsCoexVictimWANFreq[9],
1727 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1728 CFG_MWS_COEX_VX_WAN_FREQ_DEFAULT,
1729 CFG_MWS_COEX_VX_WAN_FREQ_MIN,
1730 CFG_MWS_COEX_VX_WAN_FREQ_MAX ),
1731
1732 REG_VARIABLE( CFG_MWS_COEX_V10_WLAN_FREQ_NAME , WLAN_PARAM_Integer,
1733 hdd_config_t, mwsCoexVictimWLANFreq[9],
1734 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1735 CFG_MWS_COEX_VX_WLAN_FREQ_DEFAULT,
1736 CFG_MWS_COEX_VX_WLAN_FREQ_MIN,
1737 CFG_MWS_COEX_VX_WLAN_FREQ_MAX ),
1738
1739 REG_VARIABLE( CFG_MWS_COEX_V10_CONFIG_NAME , WLAN_PARAM_Integer,
1740 hdd_config_t, mwsCoexVictimConfig[9],
1741 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1742 CFG_MWS_COEX_VX_CONFIG_DEFAULT,
1743 CFG_MWS_COEX_VX_CONFIG_MIN,
1744 CFG_MWS_COEX_VX_CONFIG_MAX ),
1745
1746 REG_VARIABLE( CFG_MWS_COEX_V10_CONFIG2_NAME , WLAN_PARAM_Integer,
1747 hdd_config_t, mwsCoexVictimConfig2[9],
1748 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1749 CFG_MWS_COEX_VX_CONFIG_DEFAULT,
1750 CFG_MWS_COEX_VX_CONFIG_MIN,
1751 CFG_MWS_COEX_VX_CONFIG_MAX ),
1752
1753 REG_VARIABLE( CFG_MWS_COEX_MODEM_BACKOFF_NAME , WLAN_PARAM_Integer,
1754 hdd_config_t, mwsCoexModemBackoff,
1755 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1756 CFG_MWS_COEX_MODEM_BACKOFF_DEFAULT,
1757 CFG_MWS_COEX_MODEM_BACKOFF_MIN,
1758 CFG_MWS_COEX_MODEM_BACKOFF_MAX ),
1759
1760 REG_VARIABLE( CFG_MWS_COEX_CONFIG1_NAME , WLAN_PARAM_Integer,
1761 hdd_config_t, mwsCoexConfig[0],
1762 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1763 CFG_MWS_COEX_CONFIGX_DEFAULT,
1764 CFG_MWS_COEX_CONFIGX_MIN,
1765 CFG_MWS_COEX_CONFIGX_MAX ),
1766
1767 REG_VARIABLE( CFG_MWS_COEX_CONFIG2_NAME , WLAN_PARAM_Integer,
1768 hdd_config_t, mwsCoexConfig[1],
1769 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1770 CFG_MWS_COEX_CONFIGX_DEFAULT,
1771 CFG_MWS_COEX_CONFIGX_MIN,
1772 CFG_MWS_COEX_CONFIGX_MAX ),
1773
1774 REG_VARIABLE( CFG_MWS_COEX_CONFIG3_NAME , WLAN_PARAM_Integer,
1775 hdd_config_t, mwsCoexConfig[2],
1776 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1777 CFG_MWS_COEX_CONFIGX_DEFAULT,
1778 CFG_MWS_COEX_CONFIGX_MIN,
1779 CFG_MWS_COEX_CONFIGX_MAX ),
1780
1781 REG_VARIABLE( CFG_MWS_COEX_CONFIG4_NAME , WLAN_PARAM_Integer,
1782 hdd_config_t, mwsCoexConfig[3],
1783 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1784 CFG_MWS_COEX_CONFIGX_DEFAULT,
1785 CFG_MWS_COEX_CONFIGX_MIN,
1786 CFG_MWS_COEX_CONFIGX_MAX ),
1787
1788 REG_VARIABLE( CFG_MWS_COEX_CONFIG5_NAME , WLAN_PARAM_Integer,
1789 hdd_config_t, mwsCoexConfig[4],
1790 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1791 CFG_MWS_COEX_CONFIGX_DEFAULT,
1792 CFG_MWS_COEX_CONFIGX_MIN,
1793 CFG_MWS_COEX_CONFIGX_MAX ),
1794
1795 REG_VARIABLE( CFG_MWS_COEX_CONFIG6_NAME , WLAN_PARAM_Integer,
1796 hdd_config_t, mwsCoexConfig[5],
1797 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1798 CFG_MWS_COEX_CONFIGX_DEFAULT,
1799 CFG_MWS_COEX_CONFIGX_MIN,
1800 CFG_MWS_COEX_CONFIGX_MAX ),
1801
1802 REG_VARIABLE( CFG_SAR_POWER_BACKOFF_NAME , WLAN_PARAM_Integer,
1803 hdd_config_t, SARPowerBackoff,
1804 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1805 CFG_SAR_POWER_BACKOFF_DEFAULT,
1806 CFG_SAR_POWER_BACKOFF_MIN,
1807 CFG_SAR_POWER_BACKOFF_MAX ),
1808
Jeff Johnson295189b2012-06-20 16:38:30 -07001809 REG_VARIABLE( CFG_AP_LISTEN_MODE_NAME , WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001810 hdd_config_t, nEnableListenMode,
1811 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1812 CFG_AP_LISTEN_MODE_DEFAULT,
1813 CFG_AP_LISTEN_MODE_MIN,
1814 CFG_AP_LISTEN_MODE_MAX ),
Jeff Johnson295189b2012-06-20 16:38:30 -07001815
1816 REG_VARIABLE( CFG_AP_AUTO_SHUT_OFF , WLAN_PARAM_Integer,
1817 hdd_config_t, nAPAutoShutOff,
1818 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1819 CFG_AP_AUTO_SHUT_OFF_DEFAULT,
1820 CFG_AP_AUTO_SHUT_OFF_MIN,
1821 CFG_AP_AUTO_SHUT_OFF_MAX ),
Jeff Johnson295189b2012-06-20 16:38:30 -07001822
1823#if defined WLAN_FEATURE_VOWIFI
1824 REG_VARIABLE( CFG_RRM_ENABLE_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001825 hdd_config_t, fRrmEnable,
1826 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1827 CFG_RRM_ENABLE_DEFAULT,
1828 CFG_RRM_ENABLE_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001829 CFG_RRM_ENABLE_MAX ),
1830
1831 REG_VARIABLE( CFG_RRM_OPERATING_CHAN_MAX_DURATION_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001832 hdd_config_t, nInChanMeasMaxDuration,
1833 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1834 CFG_RRM_OPERATING_CHAN_MAX_DURATION_DEFAULT,
1835 CFG_RRM_OPERATING_CHAN_MAX_DURATION_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001836 CFG_RRM_OPERATING_CHAN_MAX_DURATION_MAX ),
1837
1838 REG_VARIABLE( CFG_RRM_NON_OPERATING_CHAN_MAX_DURATION_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001839 hdd_config_t, nOutChanMeasMaxDuration,
1840 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1841 CFG_RRM_NON_OPERATING_CHAN_MAX_DURATION_DEFAULT,
1842 CFG_RRM_NON_OPERATING_CHAN_MAX_DURATION_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001843 CFG_RRM_NON_OPERATING_CHAN_MAX_DURATION_MAX ),
1844
1845 REG_VARIABLE( CFG_RRM_MEAS_RANDOMIZATION_INTVL_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001846 hdd_config_t, nRrmRandnIntvl,
1847 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1848 CFG_RRM_MEAS_RANDOMIZATION_INTVL_DEFAULT,
1849 CFG_RRM_MEAS_RANDOMIZATION_INTVL_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001850 CFG_RRM_MEAS_RANDOMIZATION_INTVL_MAX ),
1851#endif
1852
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001853#ifdef WLAN_FEATURE_VOWIFI_11R
Jeff Johnson295189b2012-06-20 16:38:30 -07001854 REG_VARIABLE( CFG_FT_RESOURCE_REQ_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001855 hdd_config_t, fFTResourceReqSupported,
1856 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1857 CFG_FT_RESOURCE_REQ_DEFAULT,
1858 CFG_FT_RESOURCE_REQ_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001859 CFG_FT_RESOURCE_REQ_MAX ),
1860#endif
1861
Girish Gowlibf0e1ab2015-01-19 16:05:16 +05301862 REG_VARIABLE( CFG_ENABLE_ROAM_DELAY_STATS, WLAN_PARAM_Integer,
1863 hdd_config_t, gEnableRoamDelayStats,
1864 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1865 CFG_ENABLE_ROAM_DELAY_STATS_DEFAULT,
1866 CFG_ENABLE_ROAM_DELAY_STATS_MIN,
1867 CFG_ENABLE_ROAM_DELAY_STATS_MAX ),
Girish Gowlibf0e1ab2015-01-19 16:05:16 +05301868
Jeff Johnson295189b2012-06-20 16:38:30 -07001869#ifdef WLAN_FEATURE_NEIGHBOR_ROAMING
Srinivas Girigowdabbd16eb2013-03-21 12:34:46 -07001870 REG_DYNAMIC_VARIABLE( CFG_NEIGHBOR_SCAN_TIMER_PERIOD_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001871 hdd_config_t, nNeighborScanPeriod,
1872 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1873 CFG_NEIGHBOR_SCAN_TIMER_PERIOD_DEFAULT,
1874 CFG_NEIGHBOR_SCAN_TIMER_PERIOD_MIN,
Srinivas Girigowdabbd16eb2013-03-21 12:34:46 -07001875 CFG_NEIGHBOR_SCAN_TIMER_PERIOD_MAX,
1876 cbNotifySetNeighborScanPeriod, 0 ),
Jeff Johnson295189b2012-06-20 16:38:30 -07001877
1878 REG_VARIABLE( CFG_NEIGHBOR_REASSOC_RSSI_THRESHOLD_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001879 hdd_config_t, nNeighborReassocRssiThreshold,
1880 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1881 CFG_NEIGHBOR_REASSOC_RSSI_THRESHOLD_DEFAULT,
1882 CFG_NEIGHBOR_REASSOC_RSSI_THRESHOLD_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001883 CFG_NEIGHBOR_REASSOC_RSSI_THRESHOLD_MAX ),
1884
Srinivas Girigowdade697412013-02-14 16:31:48 -08001885 REG_DYNAMIC_VARIABLE( CFG_NEIGHBOR_LOOKUP_RSSI_THRESHOLD_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001886 hdd_config_t, nNeighborLookupRssiThreshold,
1887 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1888 CFG_NEIGHBOR_LOOKUP_RSSI_THRESHOLD_DEFAULT,
1889 CFG_NEIGHBOR_LOOKUP_RSSI_THRESHOLD_MIN,
Srinivas Girigowdade697412013-02-14 16:31:48 -08001890 CFG_NEIGHBOR_LOOKUP_RSSI_THRESHOLD_MAX,
1891 cbNotifySetNeighborLookupRssiThreshold, 0 ),
Jeff Johnson295189b2012-06-20 16:38:30 -07001892
1893 REG_VARIABLE_STRING( CFG_NEIGHBOR_SCAN_CHAN_LIST_NAME, WLAN_PARAM_String,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001894 hdd_config_t, neighborScanChanList,
Jeff Johnson295189b2012-06-20 16:38:30 -07001895 VAR_FLAGS_OPTIONAL,
1896 (void *)CFG_NEIGHBOR_SCAN_CHAN_LIST_DEFAULT ),
1897
Srinivas Girigowdabbd16eb2013-03-21 12:34:46 -07001898 REG_DYNAMIC_VARIABLE( CFG_NEIGHBOR_SCAN_MIN_CHAN_TIME_NAME, WLAN_PARAM_Integer,
Jeff Johnson295189b2012-06-20 16:38:30 -07001899 hdd_config_t, nNeighborScanMinChanTime,
1900 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1901 CFG_NEIGHBOR_SCAN_MIN_CHAN_TIME_DEFAULT,
1902 CFG_NEIGHBOR_SCAN_MIN_CHAN_TIME_MIN,
Srinivas Girigowdabbd16eb2013-03-21 12:34:46 -07001903 CFG_NEIGHBOR_SCAN_MIN_CHAN_TIME_MAX,
1904 cbNotifySetNeighborScanMinChanTime, 0 ),
Jeff Johnson295189b2012-06-20 16:38:30 -07001905
Srinivas Girigowdabbd16eb2013-03-21 12:34:46 -07001906 REG_DYNAMIC_VARIABLE( CFG_NEIGHBOR_SCAN_MAX_CHAN_TIME_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001907 hdd_config_t, nNeighborScanMaxChanTime,
1908 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1909 CFG_NEIGHBOR_SCAN_MAX_CHAN_TIME_DEFAULT,
1910 CFG_NEIGHBOR_SCAN_MAX_CHAN_TIME_MIN,
Srinivas Girigowdabbd16eb2013-03-21 12:34:46 -07001911 CFG_NEIGHBOR_SCAN_MAX_CHAN_TIME_MAX,
1912 cbNotifySetNeighborScanMaxChanTime, 0 ),
Jeff Johnson295189b2012-06-20 16:38:30 -07001913
1914 REG_VARIABLE( CFG_11R_NEIGHBOR_REQ_MAX_TRIES_NAME, WLAN_PARAM_Integer,
1915 hdd_config_t, nMaxNeighborReqTries,
1916 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1917 CFG_11R_NEIGHBOR_REQ_MAX_TRIES_DEFAULT,
1918 CFG_11R_NEIGHBOR_REQ_MAX_TRIES_MIN,
1919 CFG_11R_NEIGHBOR_REQ_MAX_TRIES_MAX),
1920
Srinivas Girigowdade697412013-02-14 16:31:48 -08001921 REG_DYNAMIC_VARIABLE( CFG_NEIGHBOR_SCAN_RESULTS_REFRESH_PERIOD_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001922 hdd_config_t, nNeighborResultsRefreshPeriod,
1923 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1924 CFG_NEIGHBOR_SCAN_RESULTS_REFRESH_PERIOD_DEFAULT,
1925 CFG_NEIGHBOR_SCAN_RESULTS_REFRESH_PERIOD_MIN,
Srinivas Girigowdade697412013-02-14 16:31:48 -08001926 CFG_NEIGHBOR_SCAN_RESULTS_REFRESH_PERIOD_MAX,
1927 cbNotifySetNeighborResultsRefreshPeriod, 0 ),
1928
1929 REG_DYNAMIC_VARIABLE( CFG_EMPTY_SCAN_REFRESH_PERIOD_NAME, WLAN_PARAM_Integer,
1930 hdd_config_t, nEmptyScanRefreshPeriod,
1931 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1932 CFG_EMPTY_SCAN_REFRESH_PERIOD_DEFAULT,
1933 CFG_EMPTY_SCAN_REFRESH_PERIOD_MIN,
1934 CFG_EMPTY_SCAN_REFRESH_PERIOD_MAX,
1935 cbNotifySetEmptyScanRefreshPeriod, 0 ),
Mukul Sharma20aa6582014-08-07 21:36:12 +05301936
1937 REG_VARIABLE( CFG_NEIGHBOR_INITIAL_FORCED_ROAM_TO_5GH_ENABLE_NAME, WLAN_PARAM_Integer,
1938 hdd_config_t, nNeighborInitialForcedRoamTo5GhEnable,
1939 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1940 CFG_NEIGHBOR_INITIAL_FORCED_ROAM_TO_5GH_ENABLE_DEFAULT,
1941 CFG_NEIGHBOR_INITIAL_FORCED_ROAM_TO_5GH_ENABLE_MIN,
1942 CFG_NEIGHBOR_INITIAL_FORCED_ROAM_TO_5GH_ENABLE_MAX),
1943
Jeff Johnson295189b2012-06-20 16:38:30 -07001944#endif /* WLAN_FEATURE_NEIGHBOR_ROAMING */
1945
1946 REG_VARIABLE( CFG_QOS_WMM_BURST_SIZE_DEFN_NAME , WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001947 hdd_config_t, burstSizeDefinition,
1948 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1949 CFG_QOS_WMM_BURST_SIZE_DEFN_DEFAULT,
1950 CFG_QOS_WMM_BURST_SIZE_DEFN_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001951 CFG_QOS_WMM_BURST_SIZE_DEFN_MAX ),
1952
1953 REG_VARIABLE( CFG_MCAST_BCAST_FILTER_SETTING_NAME, WLAN_PARAM_Integer,
1954 hdd_config_t, mcastBcastFilterSetting,
1955 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1956 CFG_MCAST_BCAST_FILTER_SETTING_DEFAULT,
1957 CFG_MCAST_BCAST_FILTER_SETTING_MIN,
1958 CFG_MCAST_BCAST_FILTER_SETTING_MAX ),
1959
1960 REG_VARIABLE( CFG_ENABLE_HOST_ARPOFFLOAD_NAME, WLAN_PARAM_Integer,
1961 hdd_config_t, fhostArpOffload,
1962 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1963 CFG_ENABLE_HOST_ARPOFFLOAD_DEFAULT,
1964 CFG_ENABLE_HOST_ARPOFFLOAD_MIN,
1965 CFG_ENABLE_HOST_ARPOFFLOAD_MAX ),
1966
Gopichand Nakkala746a9452013-06-11 12:45:54 +05301967 REG_VARIABLE( CFG_ENABLE_HOST_NSOFFLOAD_NAME, WLAN_PARAM_Integer,
1968 hdd_config_t, fhostNSOffload,
1969 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1970 CFG_ENABLE_HOST_NSOFFLOAD_DEFAULT,
1971 CFG_ENABLE_HOST_NSOFFLOAD_MIN,
1972 CFG_ENABLE_HOST_NSOFFLOAD_MAX ),
1973
Jeff Johnson295189b2012-06-20 16:38:30 -07001974 REG_VARIABLE( CFG_QOS_WMM_TS_INFO_ACK_POLICY_NAME , WLAN_PARAM_HexInteger,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08001975 hdd_config_t, tsInfoAckPolicy,
1976 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1977 CFG_QOS_WMM_TS_INFO_ACK_POLICY_DEFAULT,
1978 CFG_QOS_WMM_TS_INFO_ACK_POLICY_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07001979 CFG_QOS_WMM_TS_INFO_ACK_POLICY_MAX ),
1980
1981 REG_VARIABLE( CFG_SINGLE_TID_RC_NAME, WLAN_PARAM_Integer,
1982 hdd_config_t, bSingleTidRc,
1983 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1984 CFG_SINGLE_TID_RC_DEFAULT,
1985 CFG_SINGLE_TID_RC_MIN,
1986 CFG_SINGLE_TID_RC_MAX),
1987
1988 REG_VARIABLE( CFG_DYNAMIC_PSPOLL_VALUE_NAME, WLAN_PARAM_Integer,
1989 hdd_config_t, dynamicPsPollValue,
1990 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1991 CFG_DYNAMIC_PSPOLL_VALUE_DEFAULT,
1992 CFG_DYNAMIC_PSPOLL_VALUE_MIN,
1993 CFG_DYNAMIC_PSPOLL_VALUE_MAX ),
1994
1995 REG_VARIABLE( CFG_TELE_BCN_WAKEUP_EN_NAME, WLAN_PARAM_Integer,
1996 hdd_config_t, teleBcnWakeupEn,
1997 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
1998 CFG_TELE_BCN_WAKEUP_EN_DEFAULT,
1999 CFG_TELE_BCN_WAKEUP_EN_MIN,
2000 CFG_TELE_BCN_WAKEUP_EN_MAX ),
2001
2002 REG_VARIABLE( CFG_INFRA_STA_KEEP_ALIVE_PERIOD_NAME, WLAN_PARAM_Integer,
2003 hdd_config_t, infraStaKeepAlivePeriod,
2004 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2005 CFG_INFRA_STA_KEEP_ALIVE_PERIOD_DEFAULT,
2006 CFG_INFRA_STA_KEEP_ALIVE_PERIOD_MIN,
2007 CFG_INFRA_STA_KEEP_ALIVE_PERIOD_MAX),
2008
2009 REG_VARIABLE( CFG_QOS_ADDTS_WHEN_ACM_IS_OFF_NAME , WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002010 hdd_config_t, AddTSWhenACMIsOff,
2011 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2012 CFG_QOS_ADDTS_WHEN_ACM_IS_OFF_DEFAULT,
2013 CFG_QOS_ADDTS_WHEN_ACM_IS_OFF_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07002014 CFG_QOS_ADDTS_WHEN_ACM_IS_OFF_MAX ),
2015
2016
2017 REG_VARIABLE( CFG_VALIDATE_SCAN_LIST_NAME , WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002018 hdd_config_t, fValidateScanList,
2019 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2020 CFG_VALIDATE_SCAN_LIST_DEFAULT,
2021 CFG_VALIDATE_SCAN_LIST_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07002022 CFG_VALIDATE_SCAN_LIST_MAX ),
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002023
Jeff Johnson295189b2012-06-20 16:38:30 -07002024 REG_VARIABLE( CFG_NULLDATA_AP_RESP_TIMEOUT_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002025 hdd_config_t, nNullDataApRespTimeout,
2026 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2027 CFG_NULLDATA_AP_RESP_TIMEOUT_DEFAULT,
2028 CFG_NULLDATA_AP_RESP_TIMEOUT_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07002029 CFG_NULLDATA_AP_RESP_TIMEOUT_MAX ),
2030
2031 REG_VARIABLE( CFG_AP_DATA_AVAIL_POLL_PERIOD_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002032 hdd_config_t, apDataAvailPollPeriodInMs,
2033 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2034 CFG_AP_DATA_AVAIL_POLL_PERIOD_DEFAULT,
2035 CFG_AP_DATA_AVAIL_POLL_PERIOD_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07002036 CFG_AP_DATA_AVAIL_POLL_PERIOD_MAX ),
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002037
Jeff Johnson295189b2012-06-20 16:38:30 -07002038 REG_VARIABLE( CFG_ENABLE_BTAMP_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002039 hdd_config_t, enableBtAmp,
2040 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2041 CFG_ENABLE_BTAMP_DEFAULT,
2042 CFG_ENABLE_BTAMP_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07002043 CFG_ENABLE_BTAMP_MAX ),
2044
2045#ifdef WLAN_BTAMP_FEATURE
2046 REG_VARIABLE( CFG_BT_AMP_PREFERRED_CHANNEL_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002047 hdd_config_t, preferredChannel,
Jeff Johnson295189b2012-06-20 16:38:30 -07002048 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2049 CFG_BT_AMP_PREFERRED_CHANNEL_DEFAULT,
2050 CFG_BT_AMP_PREFERRED_CHANNEL_MIN,
2051 CFG_BT_AMP_PREFERRED_CHANNEL_MAX ),
2052#endif //WLAN_BTAMP_FEATURE
2053 REG_VARIABLE( CFG_BAND_CAPABILITY_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002054 hdd_config_t, nBandCapability,
2055 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2056 CFG_BAND_CAPABILITY_DEFAULT,
2057 CFG_BAND_CAPABILITY_MIN,
2058 CFG_BAND_CAPABILITY_MAX ),
Jeff Johnson295189b2012-06-20 16:38:30 -07002059
2060 REG_VARIABLE( CFG_ENABLE_BEACON_EARLY_TERMINATION_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002061 hdd_config_t, fEnableBeaconEarlyTermination,
2062 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2063 CFG_ENABLE_BEACON_EARLY_TERMINATION_DEFAULT,
2064 CFG_ENABLE_BEACON_EARLY_TERMINATION_MIN,
2065 CFG_ENABLE_BEACON_EARLY_TERMINATION_MAX ),
Varun Reddy Yeturu587e6802013-01-24 12:21:41 -08002066/* CFG_VOS_TRACE_ENABLE Parameters */
2067 REG_VARIABLE( CFG_VOS_TRACE_ENABLE_BAP_NAME, WLAN_PARAM_Integer,
2068 hdd_config_t, vosTraceEnableBAP,
2069 VAR_FLAGS_OPTIONAL,
2070 CFG_VOS_TRACE_ENABLE_DEFAULT,
2071 CFG_VOS_TRACE_ENABLE_MIN,
2072 CFG_VOS_TRACE_ENABLE_MAX ),
2073
2074 REG_VARIABLE( CFG_VOS_TRACE_ENABLE_TL_NAME, WLAN_PARAM_Integer,
2075 hdd_config_t, vosTraceEnableTL,
2076 VAR_FLAGS_OPTIONAL,
2077 CFG_VOS_TRACE_ENABLE_DEFAULT,
2078 CFG_VOS_TRACE_ENABLE_MIN,
2079 CFG_VOS_TRACE_ENABLE_MAX ),
2080
2081 REG_VARIABLE( CFG_VOS_TRACE_ENABLE_WDI_NAME, WLAN_PARAM_Integer,
2082 hdd_config_t, vosTraceEnableWDI,
2083 VAR_FLAGS_OPTIONAL,
2084 CFG_VOS_TRACE_ENABLE_DEFAULT,
2085 CFG_VOS_TRACE_ENABLE_MIN,
2086 CFG_VOS_TRACE_ENABLE_MAX ),
2087
2088 REG_VARIABLE( CFG_VOS_TRACE_ENABLE_HDD_NAME, WLAN_PARAM_Integer,
2089 hdd_config_t, vosTraceEnableHDD,
2090 VAR_FLAGS_OPTIONAL,
2091 CFG_VOS_TRACE_ENABLE_DEFAULT,
2092 CFG_VOS_TRACE_ENABLE_MIN,
2093 CFG_VOS_TRACE_ENABLE_MAX ),
2094
2095 REG_VARIABLE( CFG_VOS_TRACE_ENABLE_SME_NAME, WLAN_PARAM_Integer,
2096 hdd_config_t, vosTraceEnableSME,
2097 VAR_FLAGS_OPTIONAL,
2098 CFG_VOS_TRACE_ENABLE_DEFAULT,
2099 CFG_VOS_TRACE_ENABLE_MIN,
2100 CFG_VOS_TRACE_ENABLE_MAX ),
2101
2102 REG_VARIABLE( CFG_VOS_TRACE_ENABLE_PE_NAME, WLAN_PARAM_Integer,
2103 hdd_config_t, vosTraceEnablePE,
2104 VAR_FLAGS_OPTIONAL,
2105 CFG_VOS_TRACE_ENABLE_DEFAULT,
2106 CFG_VOS_TRACE_ENABLE_MIN,
2107 CFG_VOS_TRACE_ENABLE_MAX ),
2108
Katya Nigam70d68332013-09-16 16:49:45 +05302109 REG_VARIABLE( CFG_VOS_TRACE_ENABLE_PMC_NAME, WLAN_PARAM_Integer,
2110 hdd_config_t, vosTraceEnablePMC,
2111 VAR_FLAGS_OPTIONAL,
2112 CFG_VOS_TRACE_ENABLE_DEFAULT,
2113 CFG_VOS_TRACE_ENABLE_MIN,
2114 CFG_VOS_TRACE_ENABLE_MAX ),
2115
Varun Reddy Yeturu587e6802013-01-24 12:21:41 -08002116 REG_VARIABLE( CFG_VOS_TRACE_ENABLE_WDA_NAME, WLAN_PARAM_Integer,
2117 hdd_config_t, vosTraceEnableWDA,
2118 VAR_FLAGS_OPTIONAL,
2119 CFG_VOS_TRACE_ENABLE_DEFAULT,
2120 CFG_VOS_TRACE_ENABLE_MIN,
2121 CFG_VOS_TRACE_ENABLE_MAX ),
2122
2123 REG_VARIABLE( CFG_VOS_TRACE_ENABLE_SYS_NAME, WLAN_PARAM_Integer,
2124 hdd_config_t, vosTraceEnableSYS,
2125 VAR_FLAGS_OPTIONAL,
2126 CFG_VOS_TRACE_ENABLE_DEFAULT,
2127 CFG_VOS_TRACE_ENABLE_MIN,
2128 CFG_VOS_TRACE_ENABLE_MAX ),
2129
2130 REG_VARIABLE( CFG_VOS_TRACE_ENABLE_VOSS_NAME, WLAN_PARAM_Integer,
2131 hdd_config_t, vosTraceEnableVOSS,
2132 VAR_FLAGS_OPTIONAL,
2133 CFG_VOS_TRACE_ENABLE_DEFAULT,
2134 CFG_VOS_TRACE_ENABLE_MIN,
2135 CFG_VOS_TRACE_ENABLE_MAX ),
2136
Varun Reddy Yeturu587e6802013-01-24 12:21:41 -08002137 REG_VARIABLE( CFG_VOS_TRACE_ENABLE_SAP_NAME, WLAN_PARAM_Integer,
2138 hdd_config_t, vosTraceEnableSAP,
2139 VAR_FLAGS_OPTIONAL,
2140 CFG_VOS_TRACE_ENABLE_DEFAULT,
2141 CFG_VOS_TRACE_ENABLE_MIN,
2142 CFG_VOS_TRACE_ENABLE_MAX ),
2143
2144 REG_VARIABLE( CFG_VOS_TRACE_ENABLE_HDD_SAP_NAME, WLAN_PARAM_Integer,
2145 hdd_config_t, vosTraceEnableHDDSAP,
2146 VAR_FLAGS_OPTIONAL,
2147 CFG_VOS_TRACE_ENABLE_DEFAULT,
2148 CFG_VOS_TRACE_ENABLE_MIN,
2149 CFG_VOS_TRACE_ENABLE_MAX ),
Jeff Johnson295189b2012-06-20 16:38:30 -07002150
Jeff Johnson295189b2012-06-20 16:38:30 -07002151 /* note that since the default value is out of range we cannot
2152 enable range check, otherwise we get a system log message */
2153 REG_VARIABLE( CFG_WDI_TRACE_ENABLE_DAL_NAME, WLAN_PARAM_Integer,
2154 hdd_config_t, wdiTraceEnableDAL,
2155 VAR_FLAGS_OPTIONAL,
2156 CFG_WDI_TRACE_ENABLE_DEFAULT,
2157 CFG_WDI_TRACE_ENABLE_MIN,
2158 CFG_WDI_TRACE_ENABLE_MAX ),
2159
2160 REG_VARIABLE( CFG_WDI_TRACE_ENABLE_CTL_NAME, WLAN_PARAM_Integer,
2161 hdd_config_t, wdiTraceEnableCTL,
2162 VAR_FLAGS_OPTIONAL,
2163 CFG_WDI_TRACE_ENABLE_DEFAULT,
2164 CFG_WDI_TRACE_ENABLE_MIN,
2165 CFG_WDI_TRACE_ENABLE_MAX ),
2166
2167 REG_VARIABLE( CFG_WDI_TRACE_ENABLE_DAT_NAME, WLAN_PARAM_Integer,
2168 hdd_config_t, wdiTraceEnableDAT,
2169 VAR_FLAGS_OPTIONAL,
2170 CFG_WDI_TRACE_ENABLE_DEFAULT,
2171 CFG_WDI_TRACE_ENABLE_MIN,
2172 CFG_WDI_TRACE_ENABLE_MAX ),
2173
2174 REG_VARIABLE( CFG_WDI_TRACE_ENABLE_PAL_NAME, WLAN_PARAM_Integer,
2175 hdd_config_t, wdiTraceEnablePAL,
2176 VAR_FLAGS_OPTIONAL,
2177 CFG_WDI_TRACE_ENABLE_DEFAULT,
2178 CFG_WDI_TRACE_ENABLE_MIN,
2179 CFG_WDI_TRACE_ENABLE_MAX ),
Jeff Johnson295189b2012-06-20 16:38:30 -07002180
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002181 REG_VARIABLE( CFG_TELE_BCN_TRANS_LI_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002182 hdd_config_t, nTeleBcnTransListenInterval,
2183 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2184 CFG_TELE_BCN_TRANS_LI_DEFAULT,
2185 CFG_TELE_BCN_TRANS_LI_MIN,
2186 CFG_TELE_BCN_TRANS_LI_MAX ),
Jeff Johnson295189b2012-06-20 16:38:30 -07002187
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002188 REG_VARIABLE( CFG_TELE_BCN_TRANS_LI_NUM_IDLE_BCNS_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002189 hdd_config_t, nTeleBcnTransLiNumIdleBeacons,
2190 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2191 CFG_TELE_BCN_TRANS_LI_NUM_IDLE_BCNS_DEFAULT,
2192 CFG_TELE_BCN_TRANS_LI_NUM_IDLE_BCNS_MIN,
2193 CFG_TELE_BCN_TRANS_LI_NUM_IDLE_BCNS_MAX ),
Jeff Johnson295189b2012-06-20 16:38:30 -07002194
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002195 REG_VARIABLE( CFG_TELE_BCN_MAX_LI_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002196 hdd_config_t, nTeleBcnMaxListenInterval,
2197 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2198 CFG_TELE_BCN_MAX_LI_DEFAULT,
2199 CFG_TELE_BCN_MAX_LI_MIN,
2200 CFG_TELE_BCN_MAX_LI_MAX ),
Jeff Johnson295189b2012-06-20 16:38:30 -07002201
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002202 REG_VARIABLE( CFG_TELE_BCN_MAX_LI_NUM_IDLE_BCNS_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002203 hdd_config_t, nTeleBcnMaxLiNumIdleBeacons,
2204 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2205 CFG_TELE_BCN_MAX_LI_NUM_IDLE_BCNS_DEFAULT,
2206 CFG_TELE_BCN_MAX_LI_NUM_IDLE_BCNS_MIN,
2207 CFG_TELE_BCN_MAX_LI_NUM_IDLE_BCNS_MAX ),
Jeff Johnson295189b2012-06-20 16:38:30 -07002208
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002209 REG_VARIABLE( CFG_BCN_EARLY_TERM_WAKE_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002210 hdd_config_t, bcnEarlyTermWakeInterval,
2211 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2212 CFG_BCN_EARLY_TERM_WAKE_DEFAULT,
2213 CFG_BCN_EARLY_TERM_WAKE_MIN,
2214 CFG_BCN_EARLY_TERM_WAKE_MAX ),
Jeff Johnson295189b2012-06-20 16:38:30 -07002215
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002216 REG_VARIABLE( CFG_AP_DATA_AVAIL_POLL_PERIOD_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002217 hdd_config_t, apDataAvailPollPeriodInMs,
2218 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2219 CFG_AP_DATA_AVAIL_POLL_PERIOD_DEFAULT,
2220 CFG_AP_DATA_AVAIL_POLL_PERIOD_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07002221 CFG_AP_DATA_AVAIL_POLL_PERIOD_MAX ),
2222
2223 REG_VARIABLE( CFG_ENABLE_CLOSE_LOOP_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002224 hdd_config_t, enableCloseLoop,
2225 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2226 CFG_ENABLE_CLOSE_LOOP_DEFAULT,
2227 CFG_ENABLE_CLOSE_LOOP_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07002228 CFG_ENABLE_CLOSE_LOOP_MAX ),
2229
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002230 REG_VARIABLE( CFG_ENABLE_BYPASS_11D_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002231 hdd_config_t, enableBypass11d,
2232 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2233 CFG_ENABLE_BYPASS_11D_DEFAULT,
2234 CFG_ENABLE_BYPASS_11D_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07002235 CFG_ENABLE_BYPASS_11D_MAX ),
2236
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002237 REG_VARIABLE( CFG_ENABLE_DFS_CHNL_SCAN_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002238 hdd_config_t, enableDFSChnlScan,
2239 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2240 CFG_ENABLE_DFS_CHNL_SCAN_DEFAULT,
2241 CFG_ENABLE_DFS_CHNL_SCAN_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07002242 CFG_ENABLE_DFS_CHNL_SCAN_MAX ),
2243
Sachin Ahuja697ba3f2014-11-12 18:57:11 +05302244 REG_VARIABLE( CFG_ENABLE_DFS_PNO_CHNL_SCAN_NAME, WLAN_PARAM_Integer,
2245 hdd_config_t, enableDFSPnoChnlScan,
2246 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2247 CFG_ENABLE_DFS_PNO_CHNL_SCAN_DEFAULT,
2248 CFG_ENABLE_DFS_PNO_CHNL_SCAN_MIN,
2249 CFG_ENABLE_DFS_PNO_CHNL_SCAN_MAX ),
2250
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002251 REG_VARIABLE( CFG_ENABLE_DYNAMIC_DTIM_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002252 hdd_config_t, enableDynamicDTIM,
2253 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2254 CFG_ENABLE_DYNAMIC_DTIM_DEFAULT,
2255 CFG_ENABLE_DYNAMIC_DTIM_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07002256 CFG_ENABLE_DYNAMIC_DTIM_MAX ),
2257
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002258 REG_VARIABLE( CFG_ENABLE_AUTOMATIC_TX_POWER_CONTROL_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002259 hdd_config_t, enableAutomaticTxPowerControl,
2260 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2261 CFG_ENABLE_AUTOMATIC_TX_POWER_CONTROL_DEFAULT,
2262 CFG_ENABLE_AUTOMATIC_TX_POWER_CONTROL_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07002263 CFG_ENABLE_AUTOMATIC_TX_POWER_CONTROL_MAX ),
2264
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002265 REG_VARIABLE( CFG_SHORT_GI_40MHZ_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002266 hdd_config_t, ShortGI40MhzEnable,
2267 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2268 CFG_SHORT_GI_40MHZ_DEFAULT,
2269 CFG_SHORT_GI_40MHZ_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07002270 CFG_SHORT_GI_40MHZ_MAX ),
2271
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002272 REG_DYNAMIC_VARIABLE( CFG_REPORT_MAX_LINK_SPEED, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002273 hdd_config_t, reportMaxLinkSpeed,
2274 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2275 CFG_REPORT_MAX_LINK_SPEED_DEFAULT,
2276 CFG_REPORT_MAX_LINK_SPEED_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07002277 CFG_REPORT_MAX_LINK_SPEED_MAX,
2278 NULL, 0 ),
2279
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002280 REG_DYNAMIC_VARIABLE( CFG_LINK_SPEED_RSSI_HIGH, WLAN_PARAM_SignedInteger,
Jeff Johnson295189b2012-06-20 16:38:30 -07002281 hdd_config_t, linkSpeedRssiHigh,
2282 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2283 CFG_LINK_SPEED_RSSI_HIGH_DEFAULT,
2284 CFG_LINK_SPEED_RSSI_HIGH_MIN,
2285 CFG_LINK_SPEED_RSSI_HIGH_MAX,
2286 NULL, 0 ),
2287
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002288 REG_DYNAMIC_VARIABLE( CFG_LINK_SPEED_RSSI_MID, WLAN_PARAM_SignedInteger,
Madan Mohan Koyyalamudi8df78d52012-11-02 12:30:06 -07002289 hdd_config_t, linkSpeedRssiMid,
2290 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2291 CFG_LINK_SPEED_RSSI_MID_DEFAULT,
2292 CFG_LINK_SPEED_RSSI_MID_MIN,
2293 CFG_LINK_SPEED_RSSI_MID_MAX,
2294 NULL, 0 ),
2295
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002296 REG_DYNAMIC_VARIABLE( CFG_LINK_SPEED_RSSI_LOW, WLAN_PARAM_SignedInteger,
Jeff Johnson295189b2012-06-20 16:38:30 -07002297 hdd_config_t, linkSpeedRssiLow,
2298 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2299 CFG_LINK_SPEED_RSSI_LOW_DEFAULT,
2300 CFG_LINK_SPEED_RSSI_LOW_MIN,
2301 CFG_LINK_SPEED_RSSI_LOW_MAX,
2302 NULL, 0 ),
2303
Varun Reddy Yeturu5d5e2c62014-02-27 13:31:29 -08002304#if defined (WLAN_FEATURE_VOWIFI_11R) || defined (FEATURE_WLAN_ESE) || defined(FEATURE_WLAN_LFR)
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002305 REG_DYNAMIC_VARIABLE( CFG_ROAM_PREFER_5GHZ, WLAN_PARAM_Integer,
Madan Mohan Koyyalamudid5026072012-11-30 14:56:21 -08002306 hdd_config_t, nRoamPrefer5GHz,
2307 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2308 CFG_ROAM_PREFER_5GHZ_DEFAULT,
2309 CFG_ROAM_PREFER_5GHZ_MIN,
2310 CFG_ROAM_PREFER_5GHZ_MAX,
2311 cbNotifySetRoamPrefer5GHz, 0 ),
Srinivas Girigowdabbd16eb2013-03-21 12:34:46 -07002312
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002313 REG_DYNAMIC_VARIABLE( CFG_ROAM_INTRA_BAND, WLAN_PARAM_Integer,
Srinivas Girigowdabbd16eb2013-03-21 12:34:46 -07002314 hdd_config_t, nRoamIntraBand,
2315 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2316 CFG_ROAM_INTRA_BAND_DEFAULT,
2317 CFG_ROAM_INTRA_BAND_MIN,
2318 CFG_ROAM_INTRA_BAND_MAX,
2319 cbNotifySetRoamIntraBand, 0 ),
2320
Varun Reddy Yeturu920df212013-05-22 08:07:23 -07002321 REG_DYNAMIC_VARIABLE( CFG_ROAM_SCAN_N_PROBES, WLAN_PARAM_Integer,
2322 hdd_config_t, nProbes,
2323 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2324 CFG_ROAM_SCAN_N_PROBES_DEFAULT,
2325 CFG_ROAM_SCAN_N_PROBES_MIN,
2326 CFG_ROAM_SCAN_N_PROBES_MAX,
2327 cbNotifySetRoamScanNProbes, 0 ),
2328
2329 REG_DYNAMIC_VARIABLE( CFG_ROAM_SCAN_HOME_AWAY_TIME, WLAN_PARAM_Integer,
2330 hdd_config_t, nRoamScanHomeAwayTime,
2331 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2332 CFG_ROAM_SCAN_HOME_AWAY_TIME_DEFAULT,
2333 CFG_ROAM_SCAN_HOME_AWAY_TIME_MIN,
2334 CFG_ROAM_SCAN_HOME_AWAY_TIME_MAX,
2335 cbNotifySetRoamScanHomeAwayTime, 0 ),
2336
Madan Mohan Koyyalamudid5026072012-11-30 14:56:21 -08002337#endif
2338
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002339 REG_VARIABLE( CFG_P2P_DEVICE_ADDRESS_ADMINISTRATED_NAME, WLAN_PARAM_Integer,
Jeff Johnson295189b2012-06-20 16:38:30 -07002340 hdd_config_t, isP2pDeviceAddrAdministrated,
2341 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2342 CFG_P2P_DEVICE_ADDRESS_ADMINISTRATED_DEFAULT,
2343 CFG_P2P_DEVICE_ADDRESS_ADMINISTRATED_MIN,
2344 CFG_P2P_DEVICE_ADDRESS_ADMINISTRATED_MAX ),
Jeff Johnson295189b2012-06-20 16:38:30 -07002345
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002346 REG_VARIABLE( CFG_ENABLE_MCC_ENABLED_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002347 hdd_config_t, enableMCC,
2348 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2349 CFG_ENABLE_MCC_ENABLED_DEFAULT,
2350 CFG_ENABLE_MCC_ENABLED_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07002351 CFG_ENABLE_MCC_ENABLED_MAX ),
2352
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002353 REG_VARIABLE( CFG_ALLOW_MCC_GO_DIFF_BI_NAME, WLAN_PARAM_Integer,
Mohit Khanna7ed53f02012-09-11 17:52:10 -07002354 hdd_config_t, allowMCCGODiffBI,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002355 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2356 CFG_ALLOW_MCC_GO_DIFF_BI_DEFAULT,
2357 CFG_ALLOW_MCC_GO_DIFF_BI_MIN,
2358 CFG_ALLOW_MCC_GO_DIFF_BI_MAX ),
Mohit Khanna7ed53f02012-09-11 17:52:10 -07002359
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002360 REG_VARIABLE( CFG_THERMAL_MIGRATION_ENABLE_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002361 hdd_config_t, thermalMitigationEnable,
2362 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2363 CFG_THERMAL_MIGRATION_ENABLE_DEFAULT,
2364 CFG_THERMAL_MIGRATION_ENABLE_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07002365 CFG_THERMAL_MIGRATION_ENABLE_MAX ),
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002366
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002367 REG_VARIABLE( CFG_ENABLE_MODULATED_DTIM_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002368 hdd_config_t, enableModulatedDTIM,
2369 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2370 CFG_ENABLE_MODULATED_DTIM_DEFAULT,
2371 CFG_ENABLE_MODULATED_DTIM_MIN,
Jeff Johnson295189b2012-06-20 16:38:30 -07002372 CFG_ENABLE_MODULATED_DTIM_MAX ),
2373
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002374 REG_VARIABLE( CFG_MC_ADDR_LIST_ENABLE_NAME, WLAN_PARAM_Integer,
Jeff Johnsond13512a2012-07-17 11:42:19 -07002375 hdd_config_t, fEnableMCAddrList,
2376 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2377 CFG_MC_ADDR_LIST_ENABLE_DEFAULT,
2378 CFG_MC_ADDR_LIST_ENABLE_MIN,
2379 CFG_MC_ADDR_LIST_ENABLE_MAX ),
2380
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002381#ifdef WLAN_FEATURE_11AC
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002382 REG_VARIABLE( CFG_VHT_CHANNEL_WIDTH, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002383 hdd_config_t, vhtChannelWidth,
2384 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK,
2385 CFG_VHT_CHANNEL_WIDTH_DEFAULT,
2386 CFG_VHT_CHANNEL_WIDTH_MIN,
Jeff Johnsone7245742012-09-05 17:12:55 -07002387 CFG_VHT_CHANNEL_WIDTH_MAX),
2388
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002389 REG_VARIABLE( CFG_VHT_ENABLE_RX_MCS_8_9, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002390 hdd_config_t, vhtRxMCS,
2391 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK,
2392 CFG_VHT_ENABLE_RX_MCS_8_9_DEFAULT,
2393 CFG_VHT_ENABLE_RX_MCS_8_9_MIN,
Jeff Johnsone7245742012-09-05 17:12:55 -07002394 CFG_VHT_ENABLE_RX_MCS_8_9_MAX),
2395
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002396 REG_VARIABLE( CFG_VHT_ENABLE_TX_MCS_8_9, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002397 hdd_config_t, vhtTxMCS,
2398 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK,
2399 CFG_VHT_ENABLE_TX_MCS_8_9_DEFAULT,
2400 CFG_VHT_ENABLE_TX_MCS_8_9_MIN,
Jeff Johnsone7245742012-09-05 17:12:55 -07002401 CFG_VHT_ENABLE_TX_MCS_8_9_MAX),
Abhishek Singhaa63bf22014-10-30 17:09:45 +05302402
2403 REG_VARIABLE( CFG_VHT_AMPDU_LEN_EXP_NAME, WLAN_PARAM_Integer,
2404 hdd_config_t, gVhtMaxAmpduLenExp,
2405 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2406 CFG_VHT_AMPDU_LEN_EXP_DEFAULT,
2407 CFG_VHT_AMPDU_LEN_EXP_MIN,
2408 CFG_VHT_AMPDU_LEN_EXP_MAX ),
Jeff Johnsone7245742012-09-05 17:12:55 -07002409#endif
2410
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002411 REG_VARIABLE( CFG_ENABLE_FIRST_SCAN_2G_ONLY_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002412 hdd_config_t, enableFirstScan2GOnly,
2413 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2414 CFG_ENABLE_FIRST_SCAN_2G_ONLY_DEFAULT,
2415 CFG_ENABLE_FIRST_SCAN_2G_ONLY_MIN,
Jeff Johnsone7245742012-09-05 17:12:55 -07002416 CFG_ENABLE_FIRST_SCAN_2G_ONLY_MAX ),
2417
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002418 REG_VARIABLE( CFG_ENABLE_SKIP_DFS_IN_P2P_SEARCH_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002419 hdd_config_t, skipDfsChnlInP2pSearch,
2420 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2421 CFG_ENABLE_SKIP_DFS_IN_P2P_SEARCH_DEFAULT,
2422 CFG_ENABLE_SKIP_DFS_IN_P2P_SEARCH_MIN,
Jeff Johnsone7245742012-09-05 17:12:55 -07002423 CFG_ENABLE_SKIP_DFS_IN_P2P_SEARCH_MAX ),
2424
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002425 REG_VARIABLE( CFG_IGNORE_DYNAMIC_DTIM_IN_P2P_MODE_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002426 hdd_config_t, ignoreDynamicDtimInP2pMode,
2427 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2428 CFG_IGNORE_DYNAMIC_DTIM_IN_P2P_MODE_DEFAULT,
2429 CFG_IGNORE_DYNAMIC_DTIM_IN_P2P_MODE_MIN,
Jeff Johnsone7245742012-09-05 17:12:55 -07002430 CFG_IGNORE_DYNAMIC_DTIM_IN_P2P_MODE_MAX ),
2431
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002432 REG_VARIABLE( CFG_NUM_BUFF_ADVERT_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002433 hdd_config_t,numBuffAdvert ,
2434 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK,
2435 CFG_NUM_BUFF_ADVERT_DEFAULT,
2436 CFG_NUM_BUFF_ADVERT_MIN,
Madan Mohan Koyyalamudidd11eaf2012-11-02 16:04:21 -07002437 CFG_NUM_BUFF_ADVERT_MAX ),
Madan Mohan Koyyalamudi3f65e312012-11-06 15:31:12 -08002438
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002439 REG_VARIABLE( CFG_MCC_CONFIG_PARAM_NAME, WLAN_PARAM_Integer,
Madan Mohan Koyyalamudid5f04ca2012-11-06 15:51:26 -08002440 hdd_config_t, configMccParam,
2441 VAR_FLAGS_OPTIONAL,
2442 CFG_MCC_CONFIG_PARAM_DEFAULT,
2443 CFG_MCC_CONFIG_PARAM_MIN,
2444 CFG_MCC_CONFIG_PARAM_MAX ),
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002445 REG_VARIABLE( CFG_ENABLE_RX_STBC, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002446 hdd_config_t, enableRxSTBC,
2447 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2448 CFG_ENABLE_RX_STBC_DEFAULT,
2449 CFG_ENABLE_RX_STBC_MIN,
Pratik Bhalgat6bfd1422012-11-22 17:09:40 +05302450 CFG_ENABLE_RX_STBC_MAX ),
Mohit Khanna698ba2a2012-12-04 15:08:18 -08002451#ifdef FEATURE_WLAN_TDLS
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002452 REG_VARIABLE( CFG_TDLS_SUPPORT_ENABLE, WLAN_PARAM_Integer,
Mohit Khanna698ba2a2012-12-04 15:08:18 -08002453 hdd_config_t, fEnableTDLSSupport,
2454 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2455 CFG_TDLS_SUPPORT_ENABLE_DEFAULT,
2456 CFG_TDLS_SUPPORT_ENABLE_MIN,
2457 CFG_TDLS_SUPPORT_ENABLE_MAX ),
Hoonki Leebf870f32013-01-19 15:53:30 +05302458
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002459 REG_VARIABLE( CFG_TDLS_IMPLICIT_TRIGGER, WLAN_PARAM_Integer,
Hoonki Leebf870f32013-01-19 15:53:30 +05302460 hdd_config_t, fEnableTDLSImplicitTrigger,
2461 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2462 CFG_TDLS_IMPLICIT_TRIGGER_DEFAULT,
2463 CFG_TDLS_IMPLICIT_TRIGGER_MIN,
2464 CFG_TDLS_IMPLICIT_TRIGGER_MAX ),
2465
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002466 REG_VARIABLE( CFG_TDLS_TX_STATS_PERIOD, WLAN_PARAM_Integer,
Hoonki Leebf870f32013-01-19 15:53:30 +05302467 hdd_config_t, fTDLSTxStatsPeriod,
2468 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2469 CFG_TDLS_TX_STATS_PERIOD_DEFAULT,
2470 CFG_TDLS_TX_STATS_PERIOD_MIN,
2471 CFG_TDLS_TX_STATS_PERIOD_MAX ),
2472
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002473 REG_VARIABLE( CFG_TDLS_TX_PACKET_THRESHOLD, WLAN_PARAM_Integer,
Hoonki Leebf870f32013-01-19 15:53:30 +05302474 hdd_config_t, fTDLSTxPacketThreshold,
2475 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2476 CFG_TDLS_TX_PACKET_THRESHOLD_DEFAULT,
2477 CFG_TDLS_TX_PACKET_THRESHOLD_MIN,
2478 CFG_TDLS_TX_PACKET_THRESHOLD_MAX ),
2479
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002480 REG_VARIABLE( CFG_TDLS_DISCOVERY_PERIOD, WLAN_PARAM_Integer,
Hoonki Leebf870f32013-01-19 15:53:30 +05302481 hdd_config_t, fTDLSDiscoveryPeriod,
2482 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2483 CFG_TDLS_DISCOVERY_PERIOD_DEFAULT,
2484 CFG_TDLS_DISCOVERY_PERIOD_MIN,
2485 CFG_TDLS_DISCOVERY_PERIOD_MAX ),
2486
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002487 REG_VARIABLE( CFG_TDLS_MAX_DISCOVERY_ATTEMPT, WLAN_PARAM_Integer,
Hoonki Leebf870f32013-01-19 15:53:30 +05302488 hdd_config_t, fTDLSMaxDiscoveryAttempt,
2489 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2490 CFG_TDLS_MAX_DISCOVERY_ATTEMPT_DEFAULT,
2491 CFG_TDLS_MAX_DISCOVERY_ATTEMPT_MIN,
2492 CFG_TDLS_MAX_DISCOVERY_ATTEMPT_MAX ),
2493
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002494 REG_VARIABLE( CFG_TDLS_IDLE_TIMEOUT, WLAN_PARAM_Integer,
Chilam Ng01120412013-02-19 18:32:21 -08002495 hdd_config_t, fTDLSIdleTimeout,
Hoonki Leebf870f32013-01-19 15:53:30 +05302496 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
Chilam Ng01120412013-02-19 18:32:21 -08002497 CFG_TDLS_IDLE_TIMEOUT_DEFAULT,
2498 CFG_TDLS_IDLE_TIMEOUT_MIN,
2499 CFG_TDLS_IDLE_TIMEOUT_MAX ),
2500
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002501 REG_VARIABLE( CFG_TDLS_IDLE_PACKET_THRESHOLD, WLAN_PARAM_Integer,
Chilam Ng01120412013-02-19 18:32:21 -08002502 hdd_config_t, fTDLSIdlePacketThreshold,
2503 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2504 CFG_TDLS_IDLE_PACKET_THRESHOLD_DEFAULT,
2505 CFG_TDLS_IDLE_PACKET_THRESHOLD_MIN,
2506 CFG_TDLS_IDLE_PACKET_THRESHOLD_MAX ),
Hoonki Leebf870f32013-01-19 15:53:30 +05302507
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002508 REG_VARIABLE( CFG_TDLS_RSSI_HYSTERESIS, WLAN_PARAM_Integer,
Chilam Ng01120412013-02-19 18:32:21 -08002509 hdd_config_t, fTDLSRSSIHysteresis,
Hoonki Leebf870f32013-01-19 15:53:30 +05302510 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2511 CFG_TDLS_RSSI_HYSTERESIS_DEFAULT,
2512 CFG_TDLS_RSSI_HYSTERESIS_MIN,
2513 CFG_TDLS_RSSI_HYSTERESIS_MAX ),
Chilam Ng01120412013-02-19 18:32:21 -08002514
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002515 REG_VARIABLE( CFG_TDLS_RSSI_TRIGGER_THRESHOLD, WLAN_PARAM_SignedInteger,
Chilam Ng01120412013-02-19 18:32:21 -08002516 hdd_config_t, fTDLSRSSITriggerThreshold,
2517 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2518 CFG_TDLS_RSSI_TRIGGER_THRESHOLD_DEFAULT,
2519 CFG_TDLS_RSSI_TRIGGER_THRESHOLD_MIN,
2520 CFG_TDLS_RSSI_TRIGGER_THRESHOLD_MAX ),
2521
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002522 REG_VARIABLE( CFG_TDLS_RSSI_TEARDOWN_THRESHOLD, WLAN_PARAM_SignedInteger,
Chilam Ng01120412013-02-19 18:32:21 -08002523 hdd_config_t, fTDLSRSSITeardownThreshold,
2524 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2525 CFG_TDLS_RSSI_TEARDOWN_THRESHOLD_DEFAULT,
2526 CFG_TDLS_RSSI_TEARDOWN_THRESHOLD_MIN,
2527 CFG_TDLS_RSSI_TEARDOWN_THRESHOLD_MAX ),
Gopichand Nakkala79ff85d2013-05-27 17:05:29 +05302528
2529REG_VARIABLE( CFG_TDLS_QOS_WMM_UAPSD_MASK_NAME , WLAN_PARAM_HexInteger,
2530 hdd_config_t, fTDLSUapsdMask,
2531 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2532 CFG_TDLS_QOS_WMM_UAPSD_MASK_DEFAULT,
2533 CFG_TDLS_QOS_WMM_UAPSD_MASK_MIN,
2534 CFG_TDLS_QOS_WMM_UAPSD_MASK_MAX ),
2535
2536REG_VARIABLE( CFG_TDLS_BUFFER_STA_SUPPORT_ENABLE, WLAN_PARAM_Integer,
2537 hdd_config_t, fEnableTDLSBufferSta,
2538 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2539 CFG_TDLS_BUFFER_STA_SUPPORT_ENABLE_DEFAULT,
2540 CFG_TDLS_BUFFER_STA_SUPPORT_ENABLE_MIN,
2541 CFG_TDLS_BUFFER_STA_SUPPORT_ENABLE_MAX ),
2542
Naresh Jayaramf73f3762014-02-04 16:13:20 +05302543REG_VARIABLE( CFG_TDLS_OFF_CHANNEL_SUPPORT_ENABLE, WLAN_PARAM_Integer,
2544 hdd_config_t, fEnableTDLSOffChannel,
2545 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2546 CFG_TDLS_OFF_CHANNEL_SUPPORT_ENABLE_DEFAULT,
2547 CFG_TDLS_OFF_CHANNEL_SUPPORT_ENABLE_MIN,
2548 CFG_TDLS_OFF_CHANNEL_SUPPORT_ENABLE_MAX ),
2549
Gopichand Nakkala79ff85d2013-05-27 17:05:29 +05302550REG_VARIABLE( CFG_TDLS_PUAPSD_INACTIVITY_TIME, WLAN_PARAM_Integer,
2551 hdd_config_t, fTDLSPuapsdInactivityTimer,
2552 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2553 CFG_TDLS_PUAPSD_INACTIVITY_TIME_DEFAULT,
2554 CFG_TDLS_PUAPSD_INACTIVITY_TIME_MIN,
2555 CFG_TDLS_PUAPSD_INACTIVITY_TIME_MAX ),
2556
2557REG_VARIABLE( CFG_TDLS_PUAPSD_RX_FRAME_THRESHOLD, WLAN_PARAM_Integer,
2558 hdd_config_t, fTDLSRxFrameThreshold,
2559 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2560 CFG_TDLS_PUAPSD_RX_FRAME_THRESHOLD_DEFAULT,
2561 CFG_TDLS_PUAPSD_RX_FRAME_THRESHOLD_MIN,
2562 CFG_TDLS_PUAPSD_RX_FRAME_THRESHOLD_MAX ),
Sunil Dutt41de4e22013-11-14 18:09:02 +05302563
2564REG_VARIABLE( CFG_TDLS_EXTERNAL_CONTROL, WLAN_PARAM_Integer,
2565 hdd_config_t, fTDLSExternalControl,
2566 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2567 CFG_TDLS_EXTERNAL_CONTROL_DEFAULT,
2568 CFG_TDLS_EXTERNAL_CONTROL_MIN,
2569 CFG_TDLS_EXTERNAL_CONTROL_MAX ),
Pradeep Reddy POTTETIa9c80d52014-05-09 18:05:29 +05302570
2571REG_VARIABLE( CFG_TDLS_WMM_MODE_ENABLE, WLAN_PARAM_Integer,
2572 hdd_config_t, fEnableTDLSWmmMode,
2573 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2574 CFG_TDLS_WMM_MODE_ENABLE_DEFAULT,
2575 CFG_TDLS_WMM_MODE_ENABLE_MIN,
2576 CFG_TDLS_WMM_MODE_ENABLE_MAX ),
Pradeep Reddy POTTETIedaeb5f2014-05-22 23:34:41 +05302577
2578REG_VARIABLE( CFG_TDLS_SCAN_COEX_SUPPORT_ENABLE, WLAN_PARAM_Integer,
2579 hdd_config_t, fEnableTDLSScanCoexSupport,
2580 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2581 CFG_TDLS_SCAN_COEX_SUPPORT_ENABLE_DEFAULT,
2582 CFG_TDLS_SCAN_COEX_SUPPORT_ENABLE_MIN,
2583 CFG_TDLS_SCAN_COEX_SUPPORT_ENABLE_MAX ),
Agarwal Ashishef54a182014-12-16 15:07:31 +05302584
2585REG_VARIABLE( CFG_TDLS_SCAN_ENABLE, WLAN_PARAM_Integer,
2586 hdd_config_t, fEnableTDLSScan,
2587 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2588 CFG_TDLS_SCAN_ENABLE_DEFAULT,
2589 CFG_TDLS_SCAN_ENABLE_MIN,
2590 CFG_TDLS_SCAN_ENABLE_MAX ),
Mohit Khanna698ba2a2012-12-04 15:08:18 -08002591#endif
Madan Mohan Koyyalamudi0d40e662012-12-07 14:24:14 -08002592
Dino Mycledf0a5d92014-07-04 09:41:55 +05302593#ifdef WLAN_FEATURE_LINK_LAYER_STATS
2594REG_VARIABLE( CFG_LINK_LAYER_STATS_ENABLE, WLAN_PARAM_Integer,
2595 hdd_config_t, fEnableLLStats,
2596 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2597 CFG_LINK_LAYER_STATS_ENABLE_DEFAULT,
2598 CFG_LINK_LAYER_STATS_ENABLE_MIN,
2599 CFG_LINK_LAYER_STATS_ENABLE_MAX ),
2600#endif
Dino Myclee8843b32014-07-04 14:21:45 +05302601#ifdef WLAN_FEATURE_EXTSCAN
2602REG_VARIABLE( CFG_EXTSCAN_ENABLE, WLAN_PARAM_Integer,
2603 hdd_config_t, fEnableEXTScan,
2604 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2605 CFG_EXTSCAN_ENABLE_DEFAULT,
2606 CFG_EXTSCAN_ENABLE_MIN,
2607 CFG_EXTSCAN_ENABLE_MAX ),
2608#endif
Dino Mycledf0a5d92014-07-04 09:41:55 +05302609
Gopichand Nakkala976e3252013-01-03 15:45:56 -08002610#ifdef WLAN_SOFTAP_VSTA_FEATURE
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002611 REG_VARIABLE( CFG_VSTA_SUPPORT_ENABLE, WLAN_PARAM_Integer,
Gopichand Nakkala976e3252013-01-03 15:45:56 -08002612 hdd_config_t, fEnableVSTASupport,
2613 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2614 CFG_VSTA_SUPPORT_ENABLE_DEFAULT,
2615 CFG_VSTA_SUPPORT_ENABLE_MIN,
2616 CFG_VSTA_SUPPORT_ENABLE_MAX ),
2617#endif
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002618 REG_VARIABLE( CFG_ENABLE_LPWR_IMG_TRANSITION_NAME, WLAN_PARAM_Integer,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08002619 hdd_config_t, enableLpwrImgTransition,
2620 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2621 CFG_ENABLE_LPWR_IMG_TRANSITION_DEFAULT,
2622 CFG_ENABLE_LPWR_IMG_TRANSITION_MIN,
Madan Mohan Koyyalamudi0d40e662012-12-07 14:24:14 -08002623 CFG_ENABLE_LPWR_IMG_TRANSITION_MAX ),
2624
Yathish9f22e662012-12-10 14:21:35 -08002625#ifdef WLAN_ACTIVEMODE_OFFLOAD_FEATURE
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002626 REG_VARIABLE( CFG_ACTIVEMODE_OFFLOAD_ENABLE, WLAN_PARAM_Integer,
Yathish9f22e662012-12-10 14:21:35 -08002627 hdd_config_t, fEnableActiveModeOffload,
2628 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2629 CFG_ACTIVEMODE_OFFLOAD_ENABLE_DEFAULT,
2630 CFG_ACTIVEMODE_OFFLOAD_ENABLE_MIN,
2631 CFG_ACTIVEMODE_OFFLOAD_ENABLE_MAX ),
2632#endif
Sandeep Puligilla2b6dc632012-12-17 14:44:16 -08002633
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002634 REG_VARIABLE( CFG_SCAN_AGING_PARAM_NAME, WLAN_PARAM_Integer,
Sandeep Puligilla2b6dc632012-12-17 14:44:16 -08002635 hdd_config_t, scanAgingTimeout,
2636 VAR_FLAGS_OPTIONAL,
2637 CFG_SCAN_AGING_PARAM_DEFAULT,
2638 CFG_SCAN_AGING_PARAM_MIN,
2639 CFG_SCAN_AGING_PARAM_MAX ),
Gopichand Nakkalab2d2c312013-01-04 11:41:02 -08002640
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002641 REG_VARIABLE( CFG_TX_LDPC_ENABLE_FEATURE, WLAN_PARAM_Integer,
Gopichand Nakkalab2d2c312013-01-04 11:41:02 -08002642 hdd_config_t, enableTxLdpc,
2643 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2644 CFG_TX_LDPC_ENABLE_FEATURE_DEFAULT,
2645 CFG_TX_LDPC_ENABLE_FEATURE_MIN,
2646 CFG_TX_LDPC_ENABLE_FEATURE_MAX ),
2647
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002648 REG_VARIABLE( CFG_ENABLE_MCC_ADATIVE_SCHEDULER_ENABLED_NAME, WLAN_PARAM_Integer,
Madan Mohan Koyyalamudi69b34182013-01-16 08:51:40 +05302649 hdd_config_t, enableMCCAdaptiveScheduler,
2650 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2651 CFG_ENABLE_MCC_ADATIVE_SCHEDULER_ENABLED_DEFAULT,
2652 CFG_ENABLE_MCC_ADATIVE_SCHEDULER_ENABLED_MIN,
2653 CFG_ENABLE_MCC_ADATIVE_SCHEDULER_ENABLED_MAX ),
2654
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002655 REG_VARIABLE( CFG_ANDRIOD_POWER_SAVE_NAME, WLAN_PARAM_Integer,
Madan Mohan Koyyalamudi69b34182013-01-16 08:51:40 +05302656 hdd_config_t, isAndroidPsEn,
2657 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2658 CFG_ANDRIOD_POWER_SAVE_DEFAULT,
2659 CFG_ANDRIOD_POWER_SAVE_MIN,
2660 CFG_ANDRIOD_POWER_SAVE_MAX),
2661
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002662 REG_VARIABLE( CFG_IBSS_ADHOC_CHANNEL_5GHZ_NAME, WLAN_PARAM_Integer,
Shailender Karmuchia734f332013-04-19 14:02:48 -07002663 hdd_config_t, AdHocChannel5G,
2664 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2665 CFG_IBSS_ADHOC_CHANNEL_5GHZ_DEFAULT,
2666 CFG_IBSS_ADHOC_CHANNEL_5GHZ_MIN,
2667 CFG_IBSS_ADHOC_CHANNEL_5GHZ_MAX),
2668
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002669 REG_VARIABLE( CFG_IBSS_ADHOC_CHANNEL_24GHZ_NAME, WLAN_PARAM_Integer,
Shailender Karmuchia734f332013-04-19 14:02:48 -07002670 hdd_config_t, AdHocChannel24G,
2671 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2672 CFG_IBSS_ADHOC_CHANNEL_24GHZ_DEFAULT,
2673 CFG_IBSS_ADHOC_CHANNEL_24GHZ_MIN,
2674 CFG_IBSS_ADHOC_CHANNEL_24GHZ_MAX),
2675
2676
Shailender Karmuchi08f87c22013-01-17 12:51:24 -08002677#ifdef WLAN_FEATURE_11AC
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002678 REG_VARIABLE( CFG_VHT_SU_BEAMFORMEE_CAP_FEATURE, WLAN_PARAM_Integer,
Shailender Karmuchi08f87c22013-01-17 12:51:24 -08002679 hdd_config_t, enableTxBF,
2680 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2681 CFG_VHT_SU_BEAMFORMEE_CAP_FEATURE_DEFAULT,
2682 CFG_VHT_SU_BEAMFORMEE_CAP_FEATURE_MIN,
2683 CFG_VHT_SU_BEAMFORMEE_CAP_FEATURE_MAX ),
Shailender Karmuchicc3fe442013-02-16 18:18:33 -08002684
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002685 REG_VARIABLE( CFG_VHT_CSN_BEAMFORMEE_ANT_SUPPORTED, WLAN_PARAM_Integer,
Shailender Karmuchicc3fe442013-02-16 18:18:33 -08002686 hdd_config_t, txBFCsnValue,
2687 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2688 CFG_VHT_CSN_BEAMFORMEE_ANT_SUPPORTED_DEFAULT,
2689 CFG_VHT_CSN_BEAMFORMEE_ANT_SUPPORTED_MIN,
2690 CFG_VHT_CSN_BEAMFORMEE_ANT_SUPPORTED_MAX ),
Abhishek Singh6d5d29c2014-07-03 14:25:22 +05302691 REG_VARIABLE( CFG_VHT_ENABLE_MU_BFORMEE_CAP_FEATURE, WLAN_PARAM_Integer,
2692 hdd_config_t, enableMuBformee,
2693 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2694 CFG_VHT_ENABLE_MU_BFORMEE_CAP_FEATURE_DEFAULT,
2695 CFG_VHT_ENABLE_MU_BFORMEE_CAP_FEATURE_MIN,
2696 CFG_VHT_ENABLE_MU_BFORMEE_CAP_FEATURE_MAX ),
Shailender Karmuchicc3fe442013-02-16 18:18:33 -08002697
Shailender Karmuchi08f87c22013-01-17 12:51:24 -08002698#endif
Madan Mohan Koyylamudi64267f72013-02-05 14:07:08 +05302699
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002700 REG_VARIABLE( CFG_SAP_ALLOW_ALL_CHANNEL_PARAM_NAME, WLAN_PARAM_Integer,
Madan Mohan Koyylamudi64267f72013-02-05 14:07:08 +05302701 hdd_config_t, sapAllowAllChannel,
2702 VAR_FLAGS_OPTIONAL,
2703 CFG_SAP_ALLOW_ALL_CHANNEL_PARAM_DEFAULT,
2704 CFG_SAP_ALLOW_ALL_CHANNEL_PARAM_MIN,
2705 CFG_SAP_ALLOW_ALL_CHANNEL_PARAM_MAX ),
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002706
Leela V Kiran Kumar Reddy Chiralab1f7d342013-02-11 00:27:02 -08002707#ifdef WLAN_FEATURE_11AC
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002708 REG_VARIABLE( CFG_DISABLE_LDPC_WITH_TXBF_AP, WLAN_PARAM_Integer,
Leela V Kiran Kumar Reddy Chiralab1f7d342013-02-11 00:27:02 -08002709 hdd_config_t, disableLDPCWithTxbfAP,
2710 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2711 CFG_DISABLE_LDPC_WITH_TXBF_AP_DEFAULT,
2712 CFG_DISABLE_LDPC_WITH_TXBF_AP_MIN,
2713 CFG_DISABLE_LDPC_WITH_TXBF_AP_MAX ),
2714#endif
Tushnim Bhattacharyya9cdf6082013-04-21 16:33:30 -07002715
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002716 REG_VARIABLE_STRING( CFG_LIST_OF_NON_DFS_COUNTRY_CODE, WLAN_PARAM_String,
Tushnim Bhattacharyya9cdf6082013-04-21 16:33:30 -07002717 hdd_config_t, listOfNonDfsCountryCode,
2718 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2719 (void *)CFG_LIST_OF_NON_DFS_COUNTRY_CODE_DEFAULT),
2720
Gopichand Nakkalae620d5a2013-04-26 05:45:57 -07002721 REG_DYNAMIC_VARIABLE( CFG_ENABLE_SSR, WLAN_PARAM_Integer,
2722 hdd_config_t, enableSSR,
2723 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2724 CFG_ENABLE_SSR_DEFAULT,
2725 CFG_ENABLE_SSR_MIN,
2726 CFG_ENABLE_SSR_MAX,
2727 cbNotifySetEnableSSR, 0 ),
Gopichand Nakkaladacbcb52013-04-18 16:41:54 +05302728
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002729 REG_VARIABLE_STRING( CFG_LIST_OF_NON_11AC_COUNTRY_CODE, WLAN_PARAM_String,
Gopichand Nakkaladacbcb52013-04-18 16:41:54 +05302730 hdd_config_t, listOfNon11acCountryCode,
2731 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2732 (void *)CFG_LIST_OF_NON_11AC_COUNTRY_CODE_DEFAULT),
2733
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002734 REG_VARIABLE(CFG_MAX_MEDIUM_TIME, WLAN_PARAM_Integer,
Gopichand Nakkala42bc89e2013-05-27 12:49:09 +05302735 hdd_config_t, cfgMaxMediumTime,
2736 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2737 CFG_MAX_MEDIUM_TIME_STADEFAULT,
2738 CFG_MAX_MEDIUM_TIME_STAMIN,
2739 CFG_MAX_MEDIUM_TIME_STAMAX ),
2740
Leo Chang64d68bc2013-06-04 15:40:52 -07002741 REG_VARIABLE( CFG_ENABLE_TRAFFIC_MONITOR, WLAN_PARAM_Integer,
2742 hdd_config_t, enableTrafficMonitor,
2743 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2744 CFG_ENABLE_TRAFFIC_MONITOR_DEFAULT,
2745 CFG_ENABLE_TRAFFIC_MONITOR_MIN,
2746 CFG_ENABLE_TRAFFIC_MONITOR_MAX),
2747
2748 REG_VARIABLE( CFG_TRAFFIC_IDLE_TIMEOUT, WLAN_PARAM_Integer,
2749 hdd_config_t, trafficIdleTimeout,
2750 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2751 CFG_TRAFFIC_IDLE_TIMEOUT_DEFAULT,
2752 CFG_TRAFFIC_IDLE_TIMEOUT_MIN,
2753 CFG_TRAFFIC_IDLE_TIMEOUT_MAX),
Ravi Joshi83bfaa12013-05-28 22:12:08 -07002754
2755#ifdef WLAN_FEATURE_11AC
2756 REG_VARIABLE( CFG_ENABLE_VHT_FOR_24GHZ_NAME, WLAN_PARAM_Integer,
2757 hdd_config_t, enableVhtFor24GHzBand,
2758 VAR_FLAGS_OPTIONAL,
2759 CFG_ENABLE_VHT_FOR_24GHZ_DEFAULT,
2760 CFG_ENABLE_VHT_FOR_24GHZ_MIN,
2761 CFG_ENABLE_VHT_FOR_24GHZ_MAX),
2762#endif
Gopichand Nakkala154bda22013-06-11 17:41:22 +05302763
2764 REG_VARIABLE( CFG_SCAN_OFFLOAD_NAME, WLAN_PARAM_Integer,
2765 hdd_config_t, fScanOffload,
2766 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2767 CFG_SCAN_OFFLOAD_DEFAULT,
2768 CFG_SCAN_OFFLOAD_DISABLE,
2769 CFG_SCAN_OFFLOAD_ENABLE ),
Srinivas Girigowda830bbd02013-06-13 19:44:16 -07002770
2771#ifdef WLAN_FEATURE_ROAM_SCAN_OFFLOAD
2772 REG_DYNAMIC_VARIABLE( CFG_ENABLE_FAST_ROAM_IN_CONCURRENCY, WLAN_PARAM_Integer,
2773 hdd_config_t, bFastRoamInConIniFeatureEnabled,
2774 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2775 CFG_ENABLE_FAST_ROAM_IN_CONCURRENCY_DEFAULT,
2776 CFG_ENABLE_FAST_ROAM_IN_CONCURRENCY_MIN,
2777 CFG_ENABLE_FAST_ROAM_IN_CONCURRENCY_MAX,
2778 cbNotifySetEnableFastRoamInConcurrency, 0 ),
Kapil Gupta00e71f92016-06-26 13:31:37 +05302779
2780 REG_VARIABLE(CFG_PER_ROAM_SCAN_OFFLOAD_ENABLED, WLAN_PARAM_Integer,
2781 hdd_config_t, isPERRoamEnabled,
2782 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2783 CFG_PER_ROAM_SCAN_OFFLOAD_ENABLED_DEFAULT,
2784 CFG_PER_ROAM_SCAN_OFFLOAD_ENABLED_MIN,
2785 CFG_PER_ROAM_SCAN_OFFLOAD_ENABLED_MAX),
2786
2787 REG_VARIABLE(CFG_PER_ROAM_SCAN_RATE_UP_THRESHOLD, WLAN_PARAM_Integer,
2788 hdd_config_t, rateUpThreshold,
2789 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2790 CFG_PER_ROAM_SCAN_RATE_UP_THRESHOLD_DEFAULT,
2791 CFG_PER_ROAM_SCAN_RATE_UP_THRESHOLD_MIN,
2792 CFG_PER_ROAM_SCAN_RATE_UP_THRESHOLD_MAX),
2793
2794 REG_VARIABLE(CFG_PER_ROAM_SCAN_RATE_DOWN_THRESHOLD, WLAN_PARAM_Integer,
2795 hdd_config_t, rateDownThreshold,
2796 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2797 CFG_PER_ROAM_SCAN_RATE_DOWN_THRESHOLD_DEFAULT,
2798 CFG_PER_ROAM_SCAN_RATE_DOWN_THRESHOLD_MIN,
2799 CFG_PER_ROAM_SCAN_RATE_DOWN_THRESHOLD_MAX),
2800
2801 REG_VARIABLE(CFG_PER_ROAM_SCAN_WAIT_TIME, WLAN_PARAM_Integer,
2802 hdd_config_t, waitPeriodForNextPERScan,
2803 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2804 CFG_PER_ROAM_SCAN_WAIT_TIME_DEFAULT,
2805 CFG_PER_ROAM_SCAN_WAIT_TIME_MIN,
2806 CFG_PER_ROAM_SCAN_WAIT_TIME_MAX),
2807
2808 REG_VARIABLE(CFG_PER_ROAM_SCAN_PER_TIME_THRESHOLD, WLAN_PARAM_Integer,
2809 hdd_config_t, PERtimerThreshold,
2810 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2811 CFG_PER_ROAM_SCAN_PER_TIME_THRESHOLD_DEFAULT,
2812 CFG_PER_ROAM_SCAN_PER_TIME_THRESHOLD_MIN,
2813 CFG_PER_ROAM_SCAN_PER_TIME_THRESHOLD_MAX),
2814
2815 REG_VARIABLE(CFG_PER_ROAM_SCAN_RX_MONITOR_ENABLED, WLAN_PARAM_Integer,
2816 hdd_config_t, isPERRoamRxPathEnabled,
2817 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2818 CFG_PER_ROAM_SCAN_RX_MONITOR_ENABLED_DEFAULT,
2819 CFG_PER_ROAM_SCAN_RX_MONITOR_ENABLED_MIN,
2820 CFG_PER_ROAM_SCAN_RX_MONITOR_ENABLED_MAX),
2821
2822 REG_VARIABLE(CFG_PER_ROAM_SCAN_MIN_PERCENTAGE, WLAN_PARAM_Integer,
2823 hdd_config_t, PERroamTriggerPercent,
2824 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2825 CFG_PER_ROAM_SCAN_MIN_PERCENTAGE_DEFAULT,
2826 CFG_PER_ROAM_SCAN_MIN_PERCENTAGE_MIN,
2827 CFG_PER_ROAM_SCAN_MIN_PERCENTAGE_MAX),
2828
2829 REG_VARIABLE(CFG_PER_ROAM_SCAN_RX_MIN_PACKETS, WLAN_PARAM_Integer,
2830 hdd_config_t, PERroamRxPktsThreshold,
2831 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2832 CFG_PER_ROAM_SCAN_RX_MIN_PACKETS_DEFAULT,
2833 CFG_PER_ROAM_SCAN_RX_MIN_PACKETS_MIN,
2834 CFG_PER_ROAM_SCAN_RX_MIN_PACKETS_MAX),
2835
2836 REG_VARIABLE(CFG_PER_ROAM_SCAN_CCA_ENABLED, WLAN_PARAM_Integer,
2837 hdd_config_t, isPERRoamCCAEnabled,
2838 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2839 CFG_PER_ROAM_SCAN_CCA_ENABLED_DEFAULT,
2840 CFG_PER_ROAM_SCAN_CCA_ENABLED_MIN,
2841 CFG_PER_ROAM_SCAN_CCA_ENABLED_MAX),
Kapil Gupta89a8a0e2016-08-25 14:11:17 +05302842
2843 REG_VARIABLE(CFG_PER_ROAM_FULL_SCAN_RSSI_THRESHOLD, WLAN_PARAM_SignedInteger,
2844 hdd_config_t, PERRoamFullScanThreshold,
2845 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2846 CFG_PER_ROAM_FULL_SCAN_RSSI_THRESHOLD_DEFAULT,
2847 CFG_PER_ROAM_FULL_SCAN_RSSI_THRESHOLD_MIN,
2848 CFG_PER_ROAM_FULL_SCAN_RSSI_THRESHOLD_MAX),
Srinivas Girigowda830bbd02013-06-13 19:44:16 -07002849#endif
2850
Sudhir Sattayappa Kohallida1be202013-07-11 12:04:30 -07002851 REG_VARIABLE( CFG_ENABLE_ADAPT_RX_DRAIN_NAME, WLAN_PARAM_Integer,
2852 hdd_config_t, fEnableAdaptRxDrain,
2853 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK ,
2854 CFG_ENABLE_ADAPT_RX_DRAIN_DEFAULT,
2855 CFG_ENABLE_ADAPT_RX_DRAIN_MIN,
2856 CFG_ENABLE_ADAPT_RX_DRAIN_MAX),
2857
Sudhir Sattayappa Kohalli37620692013-08-05 14:02:26 -07002858 REG_VARIABLE( CFG_DYNAMIC_SPLIT_SCAN_NAME, WLAN_PARAM_Integer,
2859 hdd_config_t, dynSplitscan,
2860 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2861 CFG_DYNAMIC_SPLIT_SCAN_DEFAULT,
2862 CFG_DYNAMIC_SPLIT_SCAN_MIN,
2863 CFG_DYNAMIC_SPLIT_SCAN_MAX ),
2864
2865 REG_VARIABLE( CFG_SPLIT_SCAN_TRAFFIC_MONITOR_THRSHLD_NAME, WLAN_PARAM_Integer,
2866 hdd_config_t, txRxThresholdForSplitScan,
2867 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2868 CFG_SPLIT_SCAN_TRAFFIC_MONITOR_THRSHLD_DEFAULT,
2869 CFG_SPLIT_SCAN_TRAFFIC_MONITOR_THRSHLD_MIN,
2870 CFG_SPLIT_SCAN_TRAFFIC_MONITOR_THRSHLD_MAX ),
2871
2872 REG_VARIABLE( CFG_SPLIT_SCAN_TRAFFIC_MONITOR_TIMER_NAME, WLAN_PARAM_Integer,
2873 hdd_config_t, trafficMntrTmrForSplitScan,
2874 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2875 CFG_SPLIT_SCAN_TRAFFIC_MONITOR_TIMER_DEFAULT,
2876 CFG_SPLIT_SCAN_TRAFFIC_MONITOR_TIMER_MIN,
2877 CFG_SPLIT_SCAN_TRAFFIC_MONITOR_TIMER_MAX ),
2878
Yue Ma0fd23872013-08-01 15:56:47 -07002879 REG_VARIABLE( CFG_FLEX_CONNECT_POWER_FACTOR_NAME, WLAN_PARAM_Integer,
2880 hdd_config_t, flexConnectPowerFactor,
2881 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_MINMAX,
2882 CFG_FLEX_CONNECT_POWER_FACTOR_DEFAULT,
2883 CFG_FLEX_CONNECT_POWER_FACTOR_MIN,
2884 CFG_FLEX_CONNECT_POWER_FACTOR_MAX ),
2885
Ravi Joshid2ca7c42013-07-23 08:37:49 -07002886 REG_VARIABLE( CFG_ENABLE_HEART_BEAT_OFFLOAD, WLAN_PARAM_Integer,
2887 hdd_config_t, enableIbssHeartBeatOffload,
2888 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2889 CFG_ENABLE_HEART_BEAT_OFFLOAD_DEFAULT,
2890 CFG_ENABLE_HEART_BEAT_OFFLOAD_MIN,
2891 CFG_ENABLE_HEART_BEAT_OFFLOAD_MAX),
2892
Madan Mohan Koyyalamudica454572013-08-07 19:57:03 +05302893 REG_VARIABLE( CFG_ANTENNA_DIVERSITY_PARAM_NAME, WLAN_PARAM_Integer,
2894 hdd_config_t, antennaDiversity,
2895 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2896 CFG_ANTENNA_DIVERSITY_PARAM_DEFAULT,
2897 CFG_ANTENNA_DIVERSITY_PARAM_MIN,
2898 CFG_ANTENNA_DIVERSITY_PARAM_MAX),
Madan Mohan Koyyalamudid9383fd2013-08-13 09:27:30 +05302899
2900 REG_VARIABLE( CFG_ENABLE_SNR_MONITORING_NAME, WLAN_PARAM_Integer,
2901 hdd_config_t, fEnableSNRMonitoring,
2902 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK ,
2903 CFG_ENABLE_SNR_MONITORING_DEFAULT,
2904 CFG_ENABLE_SNR_MONITORING_MIN,
2905 CFG_ENABLE_SNR_MONITORING_MAX),
2906
Madan Mohan Koyyalamudi1d16f462013-08-27 16:25:34 +05302907#ifdef FEATURE_WLAN_SCAN_PNO
Hardik Kantilal Patel3dfd8792013-11-13 20:34:57 +05302908 REG_VARIABLE( CFG_PNO_SCAN_SUPPORT, WLAN_PARAM_Integer,
2909 hdd_config_t, configPNOScanSupport,
2910 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2911 CFG_PNO_SCAN_SUPPORT_DEFAULT,
2912 CFG_PNO_SCAN_SUPPORT_DISABLE,
2913 CFG_PNO_SCAN_SUPPORT_ENABLE),
2914
Madan Mohan Koyyalamudi1d16f462013-08-27 16:25:34 +05302915 REG_VARIABLE( CFG_PNO_SCAN_TIMER_REPEAT_VALUE, WLAN_PARAM_Integer,
2916 hdd_config_t, configPNOScanTimerRepeatValue,
2917 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2918 CFG_PNO_SCAN_TIMER_REPEAT_VALUE_DEFAULT,
2919 CFG_PNO_SCAN_TIMER_REPEAT_VALUE_MIN,
2920 CFG_PNO_SCAN_TIMER_REPEAT_VALUE_MAX),
2921#endif
krunal soni5afa96c2013-09-06 22:19:02 -07002922 REG_VARIABLE( CFG_AMSDU_SUPPORT_IN_AMPDU_NAME , WLAN_PARAM_Integer,
2923 hdd_config_t, isAmsduSupportInAMPDU,
2924 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2925 CFG_AMSDU_SUPPORT_IN_AMPDU_DEFAULT,
2926 CFG_AMSDU_SUPPORT_IN_AMPDU_MIN,
2927 CFG_AMSDU_SUPPORT_IN_AMPDU_MAX ),
Madan Mohan Koyyalamudi1d16f462013-08-27 16:25:34 +05302928
Srinivas Girigowda41c7c5f2013-10-21 19:01:38 -07002929 REG_VARIABLE( CFG_STRICT_5GHZ_PREF_BY_MARGIN , WLAN_PARAM_Integer,
2930 hdd_config_t, nSelect5GHzMargin,
2931 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2932 CFG_STRICT_5GHZ_PREF_BY_MARGIN_DEFAULT,
2933 CFG_STRICT_5GHZ_PREF_BY_MARGIN_MIN,
2934 CFG_STRICT_5GHZ_PREF_BY_MARGIN_MAX ),
2935
krunal sonie9002db2013-11-25 14:24:17 -08002936 REG_VARIABLE( CFG_COALESING_IN_IBSS_NAME , WLAN_PARAM_Integer,
2937 hdd_config_t, isCoalesingInIBSSAllowed,
2938 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2939 CFG_COALESING_IN_IBSS_DEFAULT,
2940 CFG_COALESING_IN_IBSS_MIN,
2941 CFG_COALESING_IN_IBSS_MAX ),
Kiet Lam4bbd3cb2013-11-07 20:03:49 +05302942
2943 REG_VARIABLE( CFG_DISABLE_ATH_NAME , WLAN_PARAM_Integer,
2944 hdd_config_t, cfgAthDisable,
2945 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2946 CFG_DISABLE_ATH_DEFAULT,
2947 CFG_DISABLE_ATH_MIN,
2948 CFG_DISABLE_ATH_MAX ),
c_hpothu6d7dc922013-12-02 12:36:41 +05302949 REG_VARIABLE(CFG_BTC_ACTIVE_WLAN_LEN_NAME, WLAN_PARAM_Integer,
2950 hdd_config_t, cfgBtcActiveWlanLen,
2951 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2952 CFG_BTC_ACTIVE_WLAN_LEN_DEFAULT,
2953 CFG_BTC_ACTIVE_WLAN_LEN_MIN,
2954 CFG_BTC_ACTIVE_WLAN_LEN_MAX ),
2955
2956 REG_VARIABLE(CFG_BTC_ACTIVE_BT_LEN_NAME, WLAN_PARAM_Integer,
2957 hdd_config_t, cfgBtcActiveBtLen,
2958 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2959 CFG_BTC_ACTIVE_BT_LEN_DEFAULT,
2960 CFG_BTC_ACTIVE_BT_LEN_MIN,
2961 CFG_BTC_ACTIVE_BT_LEN_MAX ),
2962
2963 REG_VARIABLE(CFG_BTC_SAP_ACTIVE_WLAN_LEN_NAME, WLAN_PARAM_Integer,
2964 hdd_config_t, cfgBtcSapActiveWlanLen,
2965 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2966 CFG_BTC_SAP_ACTIVE_WLAN_LEN_DEFAULT,
2967 CFG_BTC_SAP_ACTIVE_WLAN_LEN_MIN,
2968 CFG_BTC_SAP_ACTIVE_WLAN_LEN_MAX ),
2969
2970 REG_VARIABLE(CFG_BTC_SAP_ACTIVE_BT_LEN_NAME, WLAN_PARAM_Integer,
2971 hdd_config_t, cfgBtcSapActiveBtLen,
2972 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2973 CFG_BTC_SAP_ACTIVE_BT_LEN_DEFAULT,
2974 CFG_BTC_SAP_ACTIVE_BT_LEN_MIN,
2975 CFG_BTC_SAP_ACTIVE_BT_LEN_MAX ),
Arif Hussaind5218912013-12-05 01:10:55 -08002976
2977#ifdef MEMORY_DEBUG
2978 REG_VARIABLE(CFG_ENABLE_MEMORY_DEBUG_NAME, WLAN_PARAM_Integer,
2979 hdd_config_t, IsMemoryDebugSupportEnabled,
2980 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2981 CFG_ENABLE_MEMORY_DEBUG_DEFAULT,
2982 CFG_ENABLE_MEMORY_DEBUG_MIN,
2983 CFG_ENABLE_MEMORY_DEBUG_MAX ),
2984#endif
Jeff Johnson295189b2012-06-20 16:38:30 -07002985
Tushnim Bhattacharyya9889e792013-12-19 18:18:36 -08002986 REG_VARIABLE_STRING( CFG_OVERRIDE_COUNTRY_CODE, WLAN_PARAM_String,
2987 hdd_config_t, overrideCountryCode,
2988 VAR_FLAGS_OPTIONAL,
Kiet Lamaa8e15a2014-02-11 23:30:06 -08002989 (void *)CFG_OVERRIDE_COUNTRY_CODE_DEFAULT),
AnjaneeDevi Kapparapu50239e32014-01-07 18:09:33 +05302990
2991 REG_VARIABLE( CFG_ASD_PROBE_INTERVAL_NAME, WLAN_PARAM_Integer,
2992 hdd_config_t, gAsdProbeInterval,
2993 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
2994 CFG_ASD_PROBE_INTERVAL_DEFAULT,
2995 CFG_ASD_PROBE_INTERVAL_MIN,
2996 CFG_ASD_PROBE_INTERVAL_MAX),
2997
c_hpothu1c4405a2014-12-10 18:16:16 +05302998 REG_VARIABLE( CFG_ASD_TRIGGER_THRESHOLD_NAME, WLAN_PARAM_SignedInteger,
AnjaneeDevi Kapparapu50239e32014-01-07 18:09:33 +05302999 hdd_config_t, gAsdTriggerThreshold,
3000 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
3001 CFG_ASD_TRIGGER_THRESHOLD_DEFAULT,
3002 CFG_ASD_TRIGGER_THRESHOLD_MIN,
3003 CFG_ASD_TRIGGER_THRESHOLD_MAX),
3004
3005 REG_VARIABLE( CFG_ASD_RTT_RSSI_HYST_THRESHOLD_NAME, WLAN_PARAM_Integer,
3006 hdd_config_t, gAsdRTTRssiHystThreshold,
3007 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
3008 CFG_ASD_RTT_RSSI_HYST_THRESHOLD_DEFAULT,
3009 CFG_ASD_RTT_RSSI_HYST_THRESHOLD_MIN,
3010 CFG_ASD_RTT_RSSI_HYST_THRESHOLD_MAX),
Leela Venkata Kiran Kumar Reddy Chirala22c159b2013-12-23 18:19:13 -08003011
3012 REG_VARIABLE( CFG_DEBUG_P2P_REMAIN_ON_CHANNEL_NAME, WLAN_PARAM_Integer,
3013 hdd_config_t, debugP2pRemainOnChannel,
3014 VAR_FLAGS_OPTIONAL,
3015 CFG_DEBUG_P2P_REMAIN_ON_CHANNEL_DEFAULT,
3016 CFG_DEBUG_P2P_REMAIN_ON_CHANNEL_MIN,
3017 CFG_DEBUG_P2P_REMAIN_ON_CHANNEL_MAX ),
3018
3019 REG_VARIABLE(CFG_CTS2S_DURING_BTC_SCO_NAME, WLAN_PARAM_Integer,
3020 hdd_config_t, cfgBtcCTS2SduringSCO,
3021 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
3022 CFG_CTS2S_DURING_BTC_SCO_DEFAULT,
3023 CFG_CTS2S_DURING_BTC_SCO_MIN,
3024 CFG_CTS2S_DURING_BTC_SCO_MAX ),
Tushnim Bhattacharyyaa3ba5a52014-01-30 11:37:33 -08003025
3026 REG_VARIABLE( CFG_ENABLE_DEBUG_CONNECT_ISSUE, WLAN_PARAM_Integer,
3027 hdd_config_t, gEnableDebugLog,
3028 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
3029 CFG_ENABLE_DEBUG_CONNECT_ISSUE_DEFAULT,
3030 CFG_ENABLE_DEBUG_CONNECT_ISSUE_MIN ,
3031 CFG_ENABLE_DEBUG_CONNECT_ISSUE_MAX),
Sandeep Puligilla04bb8fd2014-02-03 23:21:47 +05303032
3033 REG_VARIABLE(CFG_OBSS_HT40_SCAN_ACTIVE_DWELL_TIME_NAME, WLAN_PARAM_Integer,
3034 hdd_config_t, nOBSSScanActiveDwellTime,
3035 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
3036 CFG_OBSS_HT40_SCAN_ACTIVE_DWELL_TIME_DEFAULT,
3037 CFG_OBSS_HT40_SCAN_ACTIVE_DWELL_TIME_MIN,
3038 CFG_OBSS_HT40_SCAN_ACTIVE_DWELL_TIME_MAX ),
3039
3040 REG_VARIABLE(CFG_OBSS_HT40_SCAN_PASSIVE_DWELL_TIME_NAME, WLAN_PARAM_Integer,
3041 hdd_config_t, nOBSSScanPassiveDwellTime,
3042 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
3043 CFG_OBSS_HT40_SCAN_PASSIVE_DWELL_TIME_DEFAULT,
3044 CFG_OBSS_HT40_SCAN_PASSIVE_DWELL_TIME_MIN,
3045 CFG_OBSS_HT40_SCAN_PASSIVE_DWELL_TIME_MAX ),
3046
3047 REG_VARIABLE(CFG_OBSS_HT40_SCAN_WIDTH_TRIGGER_INTERVAL_NAME,
3048 WLAN_PARAM_Integer,
3049 hdd_config_t, nOBSSScanWidthTriggerInterval,
3050 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
3051 CFG_OBSS_HT40_SCAN_WIDTH_TRIGGER_INTERVAL_DEFAULT,
3052 CFG_OBSS_HT40_SCAN_WIDTH_TRIGGER_INTERVAL_MIN,
3053 CFG_OBSS_HT40_SCAN_WIDTH_TRIGGER_INTERVAL_MAX ),
Kalikinkar dharad73a9bd2014-01-28 22:42:34 -08003054
3055 REG_VARIABLE( CFG_ENABLE_STRICT_REGULATORY_FOR_FCC_NAME, WLAN_PARAM_Integer,
3056 hdd_config_t, gEnableStrictRegulatoryForFCC,
3057 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
3058 CFG_ENABLE_STRICT_REGULATORY_FOR_FCC_DEFAULT,
3059 CFG_ENABLE_STRICT_REGULATORY_FOR_FCC_MIN,
3060 CFG_ENABLE_STRICT_REGULATORY_FOR_FCC_MAX ),
3061
Rashmi Ramannabd3feb72014-02-25 16:14:48 +05303062 REG_VARIABLE( CFG_ADVERTISE_CONCURRENT_OPERATION_NAME , WLAN_PARAM_Integer,
3063 hdd_config_t, advertiseConcurrentOperation,
3064 VAR_FLAGS_OPTIONAL,
3065 CFG_ADVERTISE_CONCURRENT_OPERATION_DEFAULT,
3066 CFG_ADVERTISE_CONCURRENT_OPERATION_MIN,
3067 CFG_ADVERTISE_CONCURRENT_OPERATION_MAX ),
3068
Abhishek Singh8280c4e2014-02-18 13:26:34 +05303069 REG_VARIABLE( CFG_DEFAULT_RATE_INDEX_24GH, WLAN_PARAM_Integer,
3070 hdd_config_t, defaultRateIndex24Ghz,
3071 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
3072 CFG_DEFAULT_RATE_INDEX_24GH_DEFAULT,
3073 CFG_DEFAULT_RATE_INDEX_24GH_MIN,
3074 CFG_DEFAULT_RATE_INDEX_24GH_MAX ),
3075
Sushant Kaushik7dc03272015-02-18 11:25:12 +05303076 REG_VARIABLE( CFG_SAP_ENABLE_11AC_NAME, WLAN_PARAM_Integer,
3077 hdd_config_t, sapEnable11AC,
Abhishek Singhf0ac1752014-03-05 17:47:09 +05303078 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK,
Sushant Kaushik7dc03272015-02-18 11:25:12 +05303079 CFG_SAP_ENABLE_11AC_DEFAULT,
3080 CFG_SAP_ENABLE_11AC_MIN,
3081 CFG_SAP_ENABLE_11AC_MAX ),
Abhishek Singhf0ac1752014-03-05 17:47:09 +05303082
c_hpothu5bd1ae42014-03-07 20:28:22 +05303083 REG_VARIABLE(CFG_RA_FILTER_ENABLE_NAME, WLAN_PARAM_Integer,
3084 hdd_config_t, cfgRAFilterEnable,
3085 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
3086 CFG_RA_FILTER_ENABLE_DEFAULT,
3087 CFG_RA_FILTER_ENABLE_MIN,
3088 CFG_RA_FILTER_ENABLE_MAX ),
3089
3090 REG_VARIABLE(CFG_RA_RATE_LIMIT_INTERVAL_NAME, WLAN_PARAM_Integer,
3091 hdd_config_t, cfgRARateLimitInterval,
3092 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
3093 CFG_RA_RATE_LIMIT_INTERVAL_DEFAULT,
3094 CFG_RA_RATE_LIMIT_INTERVAL_MIN,
3095 CFG_RA_RATE_LIMIT_INTERVAL_MAX ),
Sandeep Puligillac80f26e2014-03-11 18:36:10 +05303096
3097 REG_VARIABLE( CFG_ROAMING_DFS_CHANNEL_NAME , WLAN_PARAM_Integer,
3098 hdd_config_t, allowDFSChannelRoam,
3099 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
3100 CFG_ROAMING_DFS_CHANNEL_DEFAULT,
3101 CFG_ROAMING_DFS_CHANNEL_MIN,
3102 CFG_ROAMING_DFS_CHANNEL_MAX ),
Vinay Krishna Erannad938c422014-03-10 17:14:21 +05303103
3104#ifdef WLAN_LOGGING_SOCK_SVC_ENABLE
3105 REG_VARIABLE( CFG_WLAN_LOGGING_SUPPORT_NAME, WLAN_PARAM_Integer,
3106 hdd_config_t, wlanLoggingEnable,
3107 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
3108 CFG_WLAN_LOGGING_SUPPORT_DEFAULT,
3109 CFG_WLAN_LOGGING_SUPPORT_DISABLE,
3110 CFG_WLAN_LOGGING_SUPPORT_ENABLE ),
3111
3112 REG_VARIABLE( CFG_WLAN_LOGGING_FE_CONSOLE_SUPPORT_NAME, WLAN_PARAM_Integer,
3113 hdd_config_t, wlanLoggingFEToConsole,
3114 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
3115 CFG_WLAN_LOGGING_FE_CONSOLE_SUPPORT_DEFAULT,
3116 CFG_WLAN_LOGGING_FE_CONSOLE_SUPPORT_DISABLE,
3117 CFG_WLAN_LOGGING_FE_CONSOLE_SUPPORT_ENABLE ),
3118
3119 REG_VARIABLE( CFG_WLAN_LOGGING_NUM_BUF_NAME, WLAN_PARAM_Integer,
3120 hdd_config_t, wlanLoggingNumBuf,
3121 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
3122 CFG_WLAN_LOGGING_NUM_BUF_DEFAULT,
3123 CFG_WLAN_LOGGING_NUM_BUF_MIN,
3124 CFG_WLAN_LOGGING_NUM_BUF_MAX ),
Sushant Kaushik33200572015-08-05 16:46:20 +05303125
Sushant Kaushik8e644982015-09-23 12:18:54 +05303126 REG_VARIABLE( CFG_WLAN_PKT_STATS_LOGGING_NAME, WLAN_PARAM_Integer,
3127 hdd_config_t, wlanPerPktStatsLogEnable,
3128 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
3129 CFG_WLAN_PKT_STATS_LOGGING_DEFAULT,
3130 CFG_WLAN_PKT_STATS_LOGGING_DISABLE,
3131 CFG_WLAN_PKT_STATS_LOGGING_ENABLE ),
3132
Sushant Kaushik33200572015-08-05 16:46:20 +05303133 REG_VARIABLE( CFG_WLAN_PKT_STATS_NUM_BUF_NAME, WLAN_PARAM_Integer,
3134 hdd_config_t, wlanPerPktStatsNumBuf,
3135 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
3136 CFG_WLAN_PKT_STATS_NUM_BUF_DEFAULT,
3137 CFG_WLAN_PKT_STATS_NUM_BUF_MIN,
3138 CFG_WLAN_PKT_STATS_NUM_BUF_MAX ),
3139
Vinay Krishna Erannad938c422014-03-10 17:14:21 +05303140#endif //WLAN_LOGGING_SOCK_SVC_ENABLE
3141
Abhishek Singhc98534e2015-06-12 10:44:34 +05303142 REG_VARIABLE( CFG_IGNORE_PEER_ERP_INFO_NAME, WLAN_PARAM_Integer,
3143 hdd_config_t, ignorePeerErpInfo,
3144 VAR_FLAGS_OPTIONAL |
3145 VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
3146 CFG_IGNORE_PEER_ERP_INFO_DEFAULT,
3147 CFG_IGNORE_PEER_ERP_INFO_MIN,
3148 CFG_IGNORE_PEER_ERP_INFO_MAX ),
3149
Sushant Kaushikae17dd62015-08-27 17:07:04 +05303150 REG_VARIABLE( CFG_IGNORE_PEER_HT_MODE_NAME, WLAN_PARAM_Integer,
3151 hdd_config_t, ignorePeerHTopMode,
3152 VAR_FLAGS_OPTIONAL |
3153 VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
3154 CFG_IGNORE_PEER_HT_MODE_DEFAULT,
3155 CFG_IGNORE_PEER_HT_MODE_MIN,
3156 CFG_IGNORE_PEER_HT_MODE_MAX ),
3157
c_hpothu059edb02014-03-12 21:44:28 +05303158 REG_VARIABLE(CFG_INITIAL_DWELL_TIME_NAME, WLAN_PARAM_Integer,
3159 hdd_config_t, nInitialDwellTime,
3160 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
3161 CFG_INITIAL_DWELL_TIME_DEFAULT,
3162 CFG_INITIAL_DWELL_TIME_MIN,
3163 CFG_INITIAL_DWELL_TIME_MAX ),
c_hpothu0d5a7352014-03-22 12:30:25 +05303164
3165 REG_VARIABLE(CFG_INITIAL_SCAN_SKIP_DFS_CH_NAME, WLAN_PARAM_Integer,
3166 hdd_config_t, initialScanSkipDFSCh,
3167 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
3168 CFG_INITIAL_SCAN_SKIP_DFS_CH_DEFAULT,
3169 CFG_INITIAL_SCAN_SKIP_DFS_CH_MIN,
3170 CFG_INITIAL_SCAN_SKIP_DFS_CH_MAX),
c_hpothu2d0f1c42014-04-01 18:38:51 +05303171
3172 REG_VARIABLE(CFG_BTC_FATAL_HID_NSNIFF_BLK_GUIDANCE_NAME, WLAN_PARAM_Integer,
3173 hdd_config_t, cfgBtcFatalHidnSniffBlkGuidance,
3174 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
3175 CFG_BTC_FATAL_HID_NSNIFF_BLK_GUIDANCE_DEFAULT,
3176 CFG_BTC_FATAL_HID_NSNIFF_BLK_GUIDANCE_MIN,
3177 CFG_BTC_FATAL_HID_NSNIFF_BLK_GUIDANCE_MAX ),
3178
3179 REG_VARIABLE(CFG_BTC_CRITICAL_HID_NSNIFF_BLK_GUIDANCE_NAME, WLAN_PARAM_Integer,
3180 hdd_config_t, cfgBtcCriticalHidnSniffBlkGuidance,
3181 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
3182 CFG_BTC_CRITICAL_HID_NSNIFF_BLK_GUIDANCE_DEFAULT,
3183 CFG_BTC_CRITICAL_HID_NSNIFF_BLK_GUIDANCE_MIN,
3184 CFG_BTC_CRITICAL_HID_NSNIFF_BLK_GUIDANCE_MAX ),
3185
3186 REG_VARIABLE(CFG_BTC_DYN_A2DP_TX_QUEUE_THOLD_NAME, WLAN_PARAM_Integer,
3187 hdd_config_t, cfgBtcA2dpTxQueueThold,
3188 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
3189 CFG_BTC_DYN_A2DP_TX_QUEUE_THOLD_DEFAULT,
3190 CFG_BTC_DYN_A2DP_TX_QUEUE_THOLD_MIN,
3191 CFG_BTC_DYN_A2DP_TX_QUEUE_THOLD_MAX ),
3192
3193 REG_VARIABLE(CFG_BTC_DYN_OPP_TX_QUEUE_THOLD_NAME, WLAN_PARAM_Integer,
3194 hdd_config_t, cfgBtcOppTxQueueThold,
3195 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
3196 CFG_BTC_DYN_OPP_TX_QUEUE_THOLD_DEFAULT,
3197 CFG_BTC_DYN_OPP_TX_QUEUE_THOLD_MIN,
3198 CFG_BTC_DYN_OPP_TX_QUEUE_THOLD_MAX ),
Chet Lanctotfadc8e32014-04-24 14:50:52 -07003199
3200#ifdef WLAN_FEATURE_11W
3201 REG_VARIABLE(CFG_PMF_SA_QUERY_MAX_RETRIES_NAME, WLAN_PARAM_Integer,
3202 hdd_config_t, pmfSaQueryMaxRetries,
3203 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
3204 CFG_PMF_SA_QUERY_MAX_RETRIES_DEFAULT,
3205 CFG_PMF_SA_QUERY_MAX_RETRIES_MIN,
3206 CFG_PMF_SA_QUERY_MAX_RETRIES_MAX ),
3207
3208 REG_VARIABLE(CFG_PMF_SA_QUERY_RETRY_INTERVAL_NAME, WLAN_PARAM_Integer,
3209 hdd_config_t, pmfSaQueryRetryInterval,
3210 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
3211 CFG_PMF_SA_QUERY_RETRY_INTERVAL_DEFAULT,
3212 CFG_PMF_SA_QUERY_RETRY_INTERVAL_MIN,
3213 CFG_PMF_SA_QUERY_RETRY_INTERVAL_MAX ),
3214#endif
Rashmi Ramanna68b309c2014-05-20 11:52:22 +05303215
3216 REG_VARIABLE(CFG_DEFER_IMPS_FOR_TIME_NAME, WLAN_PARAM_Integer,
3217 hdd_config_t, deferImpsTime,
3218 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
3219 CFG_DEFER_IMPS_FOR_TIME_DEFAULT,
3220 CFG_DEFER_IMPS_FOR_TIME_MIN,
3221 CFG_DEFER_IMPS_FOR_TIME_MAX),
3222
Abhishek Singhde51a412014-05-20 19:17:26 +05303223 REG_VARIABLE(CFG_ENABLE_DEAUTH_BEFORE_CONNECTION, WLAN_PARAM_Integer,
3224 hdd_config_t, sendDeauthBeforeCon,
3225 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
3226 CFG_ENABLE_DEAUTH_BEFORE_CONNECTION_DEFAULT,
3227 CFG_ENABLE_DEAUTH_BEFORE_CONNECTION_MIN,
3228 CFG_ENABLE_DEAUTH_BEFORE_CONNECTION_MAX),
Pradeep Reddy POTTETI5c2e16d2014-06-27 16:47:38 +05303229
Siddharth Bhala3a5cb42014-09-29 21:13:13 +05303230 REG_VARIABLE(CFG_ENABLE_MAC_ADDR_SPOOFING, WLAN_PARAM_Integer,
3231 hdd_config_t, enableMacSpoofing,
3232 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
3233 CFG_ENABLE_MAC_ADDR_SPOOFING_DEFAULT,
3234 CFG_ENABLE_MAC_ADDR_SPOOFING_MIN,
3235 CFG_ENABLE_MAC_ADDR_SPOOFING_MAX),
3236
Abhishek Singh795e1b82015-09-25 15:35:03 +05303237 REG_VARIABLE(CFG_DISABLE_P2P_MAC_ADDR_SPOOFING, WLAN_PARAM_Integer,
3238 hdd_config_t, disableP2PMacSpoofing,
3239 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
3240 CFG_DISABLE_P2P_MAC_ADDR_SPOOFING_DEFAULT,
3241 CFG_DISABLE_P2P_MAC_ADDR_SPOOFING_MIN,
3242 CFG_DISABLE_P2P_MAC_ADDR_SPOOFING_MAX),
3243
Abhishek Singh837adf22015-10-01 17:37:37 +05303244 REG_VARIABLE(CFG_ENABLE_FATAL_EVENT_TRIGGER, WLAN_PARAM_Integer,
3245 hdd_config_t, enableFatalEvent,
3246 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
3247 CFG_ENABLE_FATAL_EVENT_TRIGGER_DEFAULT,
3248 CFG_ENABLE_FATAL_EVENT_TRIGGER_MIN,
3249 CFG_ENABLE_FATAL_EVENT_TRIGGER_MAX),
3250
Siddharth Bhal4a432552015-02-27 01:09:31 +05303251 REG_VARIABLE(CFG_ENABLE_MGMT_LOGGING, WLAN_PARAM_Integer,
3252 hdd_config_t, enableMgmtLogging,
3253 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
3254 CFG_ENABLE_MGMT_LOGGING_DEFAULT,
3255 CFG_ENABLE_MGMT_LOGGING_MIN,
3256 CFG_ENABLE_MGMT_LOGGING_MAX),
3257
3258 REG_VARIABLE(CFG_ENABLE_BMUHW_TRACING, WLAN_PARAM_Integer,
3259 hdd_config_t, enableBMUHWtracing,
3260 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
3261 CFG_ENABLE_BMUHW_TRACING_DEFAULT,
3262 CFG_ENABLE_BMUHW_TRACING_MIN,
3263 CFG_ENABLE_BMUHW_TRACING_MAX),
3264
Siddharth Bhald1be97f2015-05-27 22:39:59 +05303265 REG_VARIABLE(CFG_ENABLE_FW_LOGGING, WLAN_PARAM_Integer,
3266 hdd_config_t, enableFWLogging,
3267 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
3268 CFG_ENABLE_FW_LOGGING_DEFAULT,
3269 CFG_ENABLE_FW_LOGGING_MIN,
3270 CFG_ENABLE_FW_LOGGING_MAX),
3271
3272 REG_VARIABLE(CFG_ENABLE_FW_CONTINIOUS_LOGGING, WLAN_PARAM_Integer,
3273 hdd_config_t, enableContFWLogging,
3274 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
3275 CFG_ENABLE_FW_CONTINIOUS_LOGGING_DEFAULT,
3276 CFG_ENABLE_FW_CONTINIOUS_LOGGING_MIN,
3277 CFG_ENABLE_FW_CONTINIOUS_LOGGING_MAX),
3278
3279 REG_VARIABLE(CFG_MIN_LOGGING_BUFFER_SIZE, WLAN_PARAM_Integer,
3280 hdd_config_t, minLoggingBufferSize,
3281 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
3282 CFG_MIN_LOGGING_BUFFER_SIZE_DEFAULT,
3283 CFG_MIN_LOGGING_BUFFER_SIZE_MIN,
3284 CFG_MIN_LOGGING_BUFFER_SIZE_MAX),
3285
3286 REG_VARIABLE(CFG_MAX_LOGGING_BUFFER_SIZE, WLAN_PARAM_Integer,
3287 hdd_config_t, maxLoggingBufferSize,
3288 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
3289 CFG_MAX_LOGGING_BUFFER_SIZE_DEFAULT,
3290 CFG_MAX_LOGGING_BUFFER_SIZE_MIN,
3291 CFG_MAX_LOGGING_BUFFER_SIZE_MAX),
3292
Pradeep Reddy POTTETI5c2e16d2014-06-27 16:47:38 +05303293 REG_VARIABLE(CFG_ENABLE_CH_AVOID, WLAN_PARAM_Integer,
3294 hdd_config_t, fenableCHAvoidance,
3295 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
3296 CFG_ENABLE_CH_AVOID_DEFAULT,
3297 CFG_ENABLE_CH_AVOID_MIN,
3298 CFG_ENABLE_CH_AVOID_MAX ),
Agarwal Ashish51325b52014-06-16 16:50:49 +05303299
3300 REG_VARIABLE(CFG_MAX_CONCURRENT_CONNECTIONS_NAME, WLAN_PARAM_Integer,
3301 hdd_config_t, gMaxConcurrentActiveSessions,
3302 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
3303 CFG_MAX_CONCURRENT_CONNECTIONS_DEFAULT,
3304 CFG_MAX_CONCURRENT_CONNECTIONS_MIN,
3305 CFG_MAX_CONCURRENT_CONNECTIONS_MAX ),
Hardik Kantilal Patel086e0a32014-11-20 14:56:26 +05303306
3307#ifdef WLAN_FEATURE_AP_HT40_24G
3308 REG_VARIABLE(CFG_ENABLE_HT_2040_COEX, WLAN_PARAM_Integer,
3309 hdd_config_t, apHT40_24GEnabled,
3310 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
3311 CFG_ENABLE_HT_2040_COEX_DEFAULT,
3312 CFG_ENABLE_HT_2040_COEX_MIN,
3313 CFG_ENABLE_HT_2040_COEX_MAX ),
3314#endif
3315
Mihir Shetec34258c2014-07-30 17:50:27 +05303316 REG_VARIABLE( CFG_ENABLE_DYNAMIC_WMMPS_NAME, WLAN_PARAM_Integer,
3317 hdd_config_t, enableDynamicWMMPS,
3318 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
3319 CFG_ENABLE_DYNAMIC_WMM_PS_DEFAULT,
3320 CFG_ENABLE_DYNAMIC_WMM_PS_MIN,
3321 CFG_ENABLE_DYNAMIC_WMM_PS_MAX ),
3322
3323 REG_VARIABLE( CFG_MAX_UAPSD_CONSEC_SP_NAME, WLAN_PARAM_Integer,
3324 hdd_config_t, maxUapsdConsecSP,
3325 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
3326 CFG_MAX_UAPSD_CONSEC_SP_DEFAULT,
3327 CFG_MAX_UAPSD_CONSEC_SP_MIN,
3328 CFG_MAX_UAPSD_CONSEC_SP_MAX ),
3329
3330 REG_VARIABLE( CFG_MAX_UAPSD_CONSEC_RX_CNT_NAME, WLAN_PARAM_Integer,
3331 hdd_config_t, maxUapsdConsecRxCnt,
3332 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
3333 CFG_MAX_UAPSD_CONSEC_RX_CNT_DEFAULT,
3334 CFG_MAX_UAPSD_CONSEC_RX_CNT_MIN,
3335 CFG_MAX_UAPSD_CONSEC_RX_CNT_MAX ),
3336
3337 REG_VARIABLE( CFG_MAX_UAPSD_CONSEC_TX_CNT_NAME, WLAN_PARAM_Integer,
3338 hdd_config_t, maxUapsdConsecTxCnt,
3339 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
3340 CFG_MAX_UAPSD_CONSEC_TX_CNT_DEFAULT,
3341 CFG_MAX_UAPSD_CONSEC_TX_CNT_MIN,
3342 CFG_MAX_UAPSD_CONSEC_TX_CNT_MAX ),
3343
3344 REG_VARIABLE( CFG_UAPSD_CONSEC_RX_CNT_MEAS_WINDOW_NAME, WLAN_PARAM_Integer,
3345 hdd_config_t, uapsdConsecRxCntMeasWindow,
3346 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
3347 CFG_UAPSD_CONSEC_RX_CNT_MEAS_WINDOW_DEFAULT,
3348 CFG_UAPSD_CONSEC_RX_CNT_MEAS_WINDOW_MIN,
3349 CFG_UAPSD_CONSEC_RX_CNT_MEAS_WINDOW_MAX ),
3350
3351 REG_VARIABLE( CFG_UAPSD_CONSEC_TX_CNT_MEAS_WINDOW_NAME, WLAN_PARAM_Integer,
3352 hdd_config_t, uapsdConsecTxCntMeasWindow,
3353 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
3354 CFG_UAPSD_CONSEC_TX_CNT_MEAS_WINDOW_DEFAULT,
3355 CFG_UAPSD_CONSEC_TX_CNT_MEAS_WINDOW_MIN,
3356 CFG_UAPSD_CONSEC_TX_CNT_MEAS_WINDOW_MAX ),
3357
3358 REG_VARIABLE( CFG_UAPSD_PSPOLL_NAME, WLAN_PARAM_Integer,
3359 hdd_config_t, maxPsPollInWmmUapsdMode,
3360 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
3361 CFG_UAPSD_PSPOLL_DEFAULT,
3362 CFG_UAPSD_PSPOLL_MIN,
3363 CFG_UAPSD_PSPOLL_MAX ),
3364
3365 REG_VARIABLE( CFG_MAX_UAPSD_INACT_INTVL_NAME, WLAN_PARAM_Integer,
3366 hdd_config_t, maxUapsdInactivityIntervals,
3367 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
3368 CFG_MAX_UAPSD_INACT_INTVL_DEFAULT,
3369 CFG_MAX_UAPSD_INACT_INTVL_MIN,
3370 CFG_MAX_UAPSD_INACT_INTVL_MAX ),
Dino Mycled9b7cc12014-09-04 18:43:07 +05303371
c_hpothu03d961b2014-09-19 16:45:00 +05303372 REG_VARIABLE( CFG_BURST_MODE_BE_TXOP_VALUE, WLAN_PARAM_Integer,
3373 hdd_config_t, burstModeTXOPValue,
3374 VAR_FLAGS_OPTIONAL |
3375 VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
3376 CFG_BURST_MODE_BE_TXOP_VALUE_DEFAULT,
3377 CFG_BURST_MODE_BE_TXOP_VALUE_MIN,
3378 CFG_BURST_MODE_BE_TXOP_VALUE_MAX ),
Peng Xufc6ad8e2014-09-25 13:16:43 +05303379 REG_VARIABLE( CFG_SAP_SCAN_BAND_PREFERENCE, WLAN_PARAM_Integer,
3380 hdd_config_t, acsScanBandPreference,
3381 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK,
3382 CFG_SAP_SCAN_BAND_PREFERENCE_DEFAULT,
3383 CFG_SAP_SCAN_BAND_PREFERENCE_MIN,
3384 CFG_SAP_SCAN_BAND_PREFERENCE_MAX ),
Deepthi Gowri9025aa62014-11-07 19:45:36 +05303385
3386 REG_VARIABLE( CFG_ENABLE_DYNAMIC_RA_START_RATE_NAME, WLAN_PARAM_Integer,
3387 hdd_config_t, enableDynamicRAStartRate,
3388 VAR_FLAGS_OPTIONAL |
3389 VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
3390 CFG_ENABLE_DYNAMIC_RA_START_RATE_DEFAULT,
3391 CFG_ENABLE_DYNAMIC_RA_START_RATE_MIN,
3392 CFG_ENABLE_DYNAMIC_RA_START_RATE_MAX),
Ganesh Kondabattinibabfb492014-12-17 20:25:29 +05303393
3394 REG_VARIABLE( CFG_P2P_LISTEN_DEFER_INTERVAL_NAME, WLAN_PARAM_Integer,
3395 hdd_config_t, gP2PListenDeferInterval,
3396 VAR_FLAGS_OPTIONAL |
3397 VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
3398 CFG_P2P_LISTEN_DEFER_INTERVAL_DEFAULT,
3399 CFG_P2P_LISTEN_DEFER_INTERVAL_MIN,
3400 CFG_P2P_LISTEN_DEFER_INTERVAL_MAX),
Chandrasekaran, Manishekar5cb0acd2014-12-23 20:06:52 +05303401
3402 REG_VARIABLE( CFG_BTC_ENABLE_IND_TIMER_VALUE, WLAN_PARAM_Integer,
3403 hdd_config_t, btcEnableIndTimerVal,
3404 VAR_FLAGS_OPTIONAL |
3405 VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
3406 CFG_BTC_ENABLE_IND_TIMER_VALUE_DEFAULT,
3407 CFG_BTC_ENABLE_IND_TIMER_VALUE_MIN,
3408 CFG_BTC_ENABLE_IND_TIMER_VALUE_MAX),
3409
Naresh Jayaramf5bbe3f2014-12-29 18:32:47 +05303410 REG_VARIABLE( CFG_BTC_FAST_WLAN_CONN_PREF , WLAN_PARAM_Integer,
3411 hdd_config_t, btcFastWlanConnPref,
3412 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
3413 CFG_BTC_FAST_WLAN_CONN_PREF_DEFAULT,
3414 CFG_BTC_FAST_WLAN_CONN_PREF_MIN,
3415 CFG_BTC_FAST_WLAN_CONN_PREF_MAX ),
3416
jagadeeshaf2d0ce2015-03-31 11:45:30 +05303417 REG_VARIABLE( CFG_ENABLE_RTSCTS_HTVHT_NAME, WLAN_PARAM_Integer,
3418 hdd_config_t, enableRtsCtsHtVht,
3419 VAR_FLAGS_OPTIONAL |
3420 VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
3421 CFG_ENABLE_RTSCTS_HTVHT_DEFAULT,
3422 CFG_ENABLE_RTSCTS_HTVHT_MIN,
3423 CFG_ENABLE_RTSCTS_HTVHT_MAX),
3424
Katya Nigama6fbf662015-03-17 18:35:47 +05303425 REG_VARIABLE( CFG_DXE_REPLENISH_RX_TIMER_VALUE, WLAN_PARAM_Integer,
3426 hdd_config_t, dxeReplenishRXTimerVal,
3427 VAR_FLAGS_OPTIONAL |
3428 VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
3429 CFG_DXE_REPLENISH_RX_TIMER_VALUE_DEFAULT,
3430 CFG_DXE_REPLENISH_RX_TIMER_VALUE_MIN,
3431 CFG_DXE_REPLENISH_RX_TIMER_VALUE_MAX ),
3432
3433 REG_VARIABLE( CFG_DXE_SSR_ENABLE, WLAN_PARAM_Integer,
3434 hdd_config_t, dxeSSREnable,
3435 VAR_FLAGS_OPTIONAL |
3436 VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
3437 CFG_DXE_SSR_ENABLE_DEFAULT,
3438 CFG_DXE_SSR_ENABLE_MIN,
3439 CFG_DXE_SSR_ENABLE_MAX ),
Sushant Kaushik215778f2015-05-21 14:05:36 +05303440
3441 REG_VARIABLE( CFG_MULTICAST_HOST_FW_MSGS, WLAN_PARAM_Integer,
3442 hdd_config_t, multicast_host_msgs,
3443 VAR_FLAGS_OPTIONAL |
3444 VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
3445 CFG_MULTICAST_HOST_FW_MSGS_DEFAULT,
3446 CFG_MULTICAST_HOST_FW_MSGS_MIN,
3447 CFG_MULTICAST_HOST_FW_MSGS_MAX),
3448
Hanumantha Reddy Pothulaee001fc2015-05-26 15:21:53 +05303449 REG_VARIABLE( CFG_TOGGLE_ARP_BDRATES_NAME, WLAN_PARAM_Integer,
3450 hdd_config_t, toggleArpBDRates,
3451 VAR_FLAGS_OPTIONAL |
3452 VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
3453 CFG_TOGGLE_ARP_BDRATES_DEFAULT,
3454 CFG_TOGGLE_ARP_BDRATES_MIN,
3455 CFG_TOGGLE_ARP_BDRATES_MAX),
Sachin Ahuja41b61902015-06-18 18:32:15 +05303456
3457 REG_VARIABLE( CFG_BTC_STATIC_OPP_WLAN_IDLE_WLAN_LEN , WLAN_PARAM_Integer,
3458 hdd_config_t, btcStaticOppWlanIdleWlanLen,
3459 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
3460 CFG_BTC_STATIC_OPP_WLAN_IDLE_WLAN_LEN_DEFAULT,
3461 CFG_BTC_STATIC_OPP_WLAN_IDLE_WLAN_LEN_MIN,
3462 CFG_BTC_STATIC_OPP_WLAN_IDLE_WLAN_LEN_MAX ),
3463
Sachin Ahuja41b61902015-06-18 18:32:15 +05303464 REG_VARIABLE( CFG_BTC_STATIC_OPP_WLAN_IDLE_BT_LEN , WLAN_PARAM_Integer,
3465 hdd_config_t, btcStaticOppWlanIdleBtLen,
3466 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
3467 CFG_BTC_STATIC_OPP_WLAN_IDLE_BT_LEN_DEFAULT,
3468 CFG_BTC_STATIC_OPP_WLAN_IDLE_BT_LEN_MIN,
3469 CFG_BTC_STATIC_OPP_WLAN_IDLE_BT_LEN_MAX ),
3470
Bhargav Shah66896792015-10-01 18:17:37 +05303471 REG_VARIABLE( CFG_TCP_DELACK_COMPUTE_INTERVAL, WLAN_PARAM_Integer,
3472 hdd_config_t, tcpDelAckComputeInterval,
3473 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
3474 CFG_TCP_DELACK_COMPUTE_INTERVAL_DEFAULT,
3475 CFG_TCP_DELACK_COMPUTE_INTERVAL_MIN,
3476 CFG_TCP_DELACK_COMPUTE_INTERVAL_MAX),
3477
3478 REG_VARIABLE( CFG_TCP_DELACK_THRESHOLD_HIGH, WLAN_PARAM_Integer,
3479 hdd_config_t, tcpDelAckThresholdHigh,
3480 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
3481 CFG_TCP_DELACK_THRESHOLD_HIGH_DEFAULT,
3482 CFG_TCP_DELACK_THRESHOLD_HIGH_MIN,
3483 CFG_TCP_DELACK_THRESHOLD_HIGH_MAX ),
3484
3485 REG_VARIABLE( CFG_TCP_DELACK_THRESHOLD_LOW, WLAN_PARAM_Integer,
3486 hdd_config_t, tcpDelAckThresholdLow,
3487 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
3488 CFG_TCP_DELACK_THRESHOLD_LOW_DEFAULT,
3489 CFG_TCP_DELACK_THRESHOLD_LOW_MIN,
3490 CFG_TCP_DELACK_THRESHOLD_LOW_MAX ),
3491
Hanumantha Reddy Pothula9a8ccab2015-07-03 14:33:17 +05303492 REG_VARIABLE( CFG_LINK_FAIL_TIMEOUT_NAME , WLAN_PARAM_Integer,
3493 hdd_config_t, linkFailTimeout,
3494 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
3495 CFG_LINK_FAIL_TIMEOUT_DEF,
3496 CFG_LINK_FAIL_TIMEOUT_MIN,
3497 CFG_LINK_FAIL_TIMEOUT_MAX ),
3498
3499 REG_VARIABLE( CFG_LINK_FAIL_TX_CNT_NAME , WLAN_PARAM_Integer,
3500 hdd_config_t, linkFailTxCnt,
3501 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
3502 CFG_LINK_FAIL_TX_CNT_DEF,
3503 CFG_LINK_FAIL_TX_CNT_MIN,
3504 CFG_LINK_FAIL_TX_CNT_MAX ),
Hanumantha Reddy Pothula802d31d2015-09-29 17:39:11 +05303505
Mahesh A Saptasagarbeca12c2015-09-07 16:21:06 +05303506 REG_VARIABLE( CFG_OPTIMIZE_CA_EVENT_NAME, WLAN_PARAM_Integer,
3507 hdd_config_t, gOptimizeCAevent,
3508 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
3509 CFG_OPTIMIZE_CA_EVENT_DEFAULT,
3510 CFG_OPTIMIZE_CA_EVENT_DISABLE,
3511 CFG_OPTIMIZE_CA_EVENT_ENABLE ),
3512
c_manjeecfd1efb2015-09-25 19:32:34 +05303513 REG_VARIABLE(CFG_FWR_MEM_DUMP_NAME, WLAN_PARAM_Integer,
3514 hdd_config_t,enableFwrMemDump,
3515 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
3516 CFG_FWR_MEM_DUMP_DEF,
3517 CFG_FWR_MEM_DUMP_MIN,
3518 CFG_FWR_MEM_DUMP_MAX),
3519
Hanumantha Reddy Pothula802d31d2015-09-29 17:39:11 +05303520 REG_VARIABLE( CFG_ACTIVE_PASSIVE_CHAN_CONV_NAME, WLAN_PARAM_Integer,
3521 hdd_config_t, gActivePassiveChCon,
3522 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
3523 CFG_ACTIVE_PASSIVE_CHAN_CONV_DEF,
3524 CFG_ACTIVE_PASSIVE_CHAN_CONV_MIN,
3525 CFG_ACTIVE_PASSIVE_CHAN_CONV_MAX ),
Padma, Santhosh Kumare2eb0fa2015-08-26 13:40:47 +05303526
3527 REG_VARIABLE( CFG_EXT_SCAN_CONC_MODE , WLAN_PARAM_Integer,
3528 hdd_config_t, cfgExtScanConcMode,
3529 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
3530 CFG_EXT_SCAN_CONC_MODE_DEFAULT,
3531 CFG_EXT_SCAN_CONC_MODE_MIN,
3532 CFG_EXT_SCAN_CONC_MODE_MAX ),
Bhargav shah23c94942015-10-13 12:48:35 +05303533
3534 REG_VARIABLE( CFG_RPS_CPU_MAP_NAME, WLAN_PARAM_HexInteger,
3535 hdd_config_t, rps_mask,
3536 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
3537 CFG_RPS_CPU_MAP_DEFAULT,
3538 CFG_RPS_CPU_MAP_MIN,
3539 CFG_RPS_CPU_MAP_MAX),
Arun Khandavalli7eeb1592015-10-19 21:36:57 +05303540
3541 REG_VARIABLE( CFG_WIFI_CONFIG_ENABLE, WLAN_PARAM_Integer,
3542 hdd_config_t, fEnableWifiConfig,
3543 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
3544 CFG_WIFI_CONFIG_DEFAULT,
3545 CFG_WIFI_CONFIG_MIN,
3546 CFG_WIFI_CONFIG_MAX ),
Arun Khandavalliffbf9c02015-12-03 16:48:53 +05303547
3548 REG_VARIABLE( CFG_ENABLE_CRASH_INJECT, WLAN_PARAM_Integer,
3549 hdd_config_t, crash_inject_enabled,
3550 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
3551 CFG_ENABLE_CRASH_INJECT_DEFAULT,
3552 CFG_ENABLE_CRASH_INJECT_MIN,
3553 CFG_ENABLE_CRASH_INJECT_MAX),
Bhargav Shah66896792015-10-01 18:17:37 +05303554
3555 REG_VARIABLE( CFG_ENABLE_TCP_DELACK_NAME, WLAN_PARAM_Integer,
3556 hdd_config_t, enable_delack,
3557 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
3558 CFG_ENABLE_TCP_DELACK_DEFAULT,
3559 CFG_ENABLE_TCP_DELACK_MIN,
3560 CFG_ENABLE_TCP_DELACK_MAX ),
Sachin Ahujab4d7a292015-12-08 19:57:04 +05303561
3562 REG_VARIABLE( CFG_DISABLE_BAR_WAKEUP_HOST_NAME, WLAN_PARAM_Integer,
3563 hdd_config_t, disableBarWakeUp,
3564 VAR_FLAGS_OPTIONAL |
3565 VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
3566 CFG_DISABLE_BAR_WAKEUP_HOST_DEFAULT,
3567 CFG_DISABLE_BAR_WAKEUP_HOST_MIN,
3568 CFG_DISABLE_BAR_WAKEUP_HOST_MAX),
Gupta, Kapilb79cda32015-12-30 20:36:33 +05303569
3570 REG_VARIABLE( CFG_MAXCHAN_FOR_CHANTIME_CORR_NAME, WLAN_PARAM_Integer,
3571 hdd_config_t, max_chan_for_dwell_time_cfg,
3572 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
3573 CFG_MAXCHAN_FOR_CHANTIME_CORR_DEFAULT,
3574 CFG_MAXCHAN_FOR_CHANTIME_CORR_MIN,
3575 CFG_MAXCHAN_FOR_CHANTIME_CORR_MAX ),
Masti, Narayanraddi037f3552015-12-22 11:54:35 +05303576
3577 REG_VARIABLE(CFG_TDLS_ENABLE_DEFER_TIMER, WLAN_PARAM_Integer,
3578 hdd_config_t, tdls_enable_defer_time,
3579 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
3580 CFG_TDLS_ENABLE_DEFER_TIMER_DEFAULT,
3581 CFG_TDLS_ENABLE_DEFER_TIMER_MIN,
3582 CFG_TDLS_ENABLE_DEFER_TIMER_MAX),
Manjeet Singhaefc25c2016-02-09 19:06:08 +05303583
3584 REG_VARIABLE(CFG_SAR_BOFFSET_SET_CORRECTION_NAME, WLAN_PARAM_Integer,
3585 hdd_config_t, boffset_correction_enable,
3586 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
3587 CFG_SAR_BOFFSET_SET_CORRECTION_DEFAULT,
3588 CFG_SAR_BOFFSET_SET_CORRECTION_MIN,
3589 CFG_SAR_BOFFSET_SET_CORRECTION_MAX),
Agrawal Ashishaf1de652016-03-02 18:03:43 +05303590
Abhishek Singh4463af02016-03-30 15:20:19 +05303591 REG_VARIABLE(CFG_ENABLE_EDCA_INI_NAME, WLAN_PARAM_Integer,
3592 hdd_config_t, enable_edca_params,
3593 VAR_FLAGS_OPTIONAL |
3594 VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
3595 CFG_ENABLE_EDCA_INI_DEFAULT,
3596 CFG_ENABLE_EDCA_INI_MIN,
3597 CFG_ENABLE_EDCA_INI_MAX),
3598
3599 REG_VARIABLE(CFG_EDCA_VO_CWMIN_VALUE_NAME, WLAN_PARAM_Integer,
3600 hdd_config_t, edca_vo_cwmin,
3601 VAR_FLAGS_OPTIONAL |
3602 VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
3603 CFG_EDCA_VO_CWMIN_VALUE_DEFAULT,
3604 CFG_EDCA_VO_CWMIN_VALUE_MIN,
3605 CFG_EDCA_VO_CWMIN_VALUE_MAX),
3606
3607 REG_VARIABLE(CFG_EDCA_VI_CWMIN_VALUE_NAME, WLAN_PARAM_Integer,
3608 hdd_config_t, edca_vi_cwmin,
3609 VAR_FLAGS_OPTIONAL |
3610 VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
3611 CFG_EDCA_VI_CWMIN_VALUE_DEFAULT,
3612 CFG_EDCA_VI_CWMIN_VALUE_MIN,
3613 CFG_EDCA_VI_CWMIN_VALUE_MAX),
3614
3615 REG_VARIABLE(CFG_EDCA_BK_CWMIN_VALUE_NAME, WLAN_PARAM_Integer,
3616 hdd_config_t, edca_bk_cwmin,
3617 VAR_FLAGS_OPTIONAL |
3618 VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
3619 CFG_EDCA_BK_CWMIN_VALUE_DEFAULT,
3620 CFG_EDCA_BK_CWMIN_VALUE_MIN,
3621 CFG_EDCA_BK_CWMIN_VALUE_MAX),
3622
3623 REG_VARIABLE(CFG_EDCA_BE_CWMIN_VALUE_NAME, WLAN_PARAM_Integer,
3624 hdd_config_t, edca_be_cwmin,
3625 VAR_FLAGS_OPTIONAL |
3626 VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
3627 CFG_EDCA_BE_CWMIN_VALUE_DEFAULT,
3628 CFG_EDCA_BE_CWMIN_VALUE_MIN,
3629 CFG_EDCA_BE_CWMIN_VALUE_MAX),
3630
3631 REG_VARIABLE(CFG_EDCA_VO_CWMAX_VALUE_NAME, WLAN_PARAM_Integer,
3632 hdd_config_t, edca_vo_cwmax,
3633 VAR_FLAGS_OPTIONAL |
3634 VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
3635 CFG_EDCA_VO_CWMAX_VALUE_DEFAULT,
3636 CFG_EDCA_VO_CWMAX_VALUE_MIN,
3637 CFG_EDCA_VO_CWMAX_VALUE_MAX),
3638
3639 REG_VARIABLE(CFG_EDCA_VI_CWMAX_VALUE_NAME, WLAN_PARAM_Integer,
3640 hdd_config_t, edca_vi_cwmax,
3641 VAR_FLAGS_OPTIONAL |
3642 VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
3643 CFG_EDCA_VI_CWMAX_VALUE_DEFAULT,
3644 CFG_EDCA_VI_CWMAX_VALUE_MIN,
3645 CFG_EDCA_VI_CWMAX_VALUE_MAX),
3646
3647 REG_VARIABLE(CFG_EDCA_BK_CWMAX_VALUE_NAME, WLAN_PARAM_Integer,
3648 hdd_config_t, edca_bk_cwmax,
3649 VAR_FLAGS_OPTIONAL |
3650 VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
3651 CFG_EDCA_BK_CWMAX_VALUE_DEFAULT,
3652 CFG_EDCA_BK_CWMAX_VALUE_MIN,
3653 CFG_EDCA_BK_CWMAX_VALUE_MAX),
3654
3655 REG_VARIABLE(CFG_EDCA_BE_CWMAX_VALUE_NAME, WLAN_PARAM_Integer,
3656 hdd_config_t, edca_be_cwmax,
3657 VAR_FLAGS_OPTIONAL |
3658 VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
3659 CFG_EDCA_BE_CWMAX_VALUE_DEFAULT,
3660 CFG_EDCA_BE_CWMAX_VALUE_MIN,
3661 CFG_EDCA_BE_CWMAX_VALUE_MAX),
3662
3663 REG_VARIABLE(CFG_EDCA_VO_AIFS_VALUE_NAME, WLAN_PARAM_Integer,
3664 hdd_config_t, edca_vo_aifs,
3665 VAR_FLAGS_OPTIONAL |
3666 VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
3667 CFG_EDCA_VO_AIFS_VALUE_DEFAULT,
3668 CFG_EDCA_VO_AIFS_VALUE_MIN,
3669 CFG_EDCA_VO_AIFS_VALUE_MAX),
3670
3671 REG_VARIABLE(CFG_EDCA_VI_AIFS_VALUE_NAME, WLAN_PARAM_Integer,
3672 hdd_config_t, edca_vi_aifs,
3673 VAR_FLAGS_OPTIONAL |
3674 VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
3675 CFG_EDCA_VI_AIFS_VALUE_DEFAULT,
3676 CFG_EDCA_VI_AIFS_VALUE_MIN,
3677 CFG_EDCA_VI_AIFS_VALUE_MAX),
3678
3679 REG_VARIABLE(CFG_EDCA_BK_AIFS_VALUE_NAME, WLAN_PARAM_Integer,
3680 hdd_config_t, edca_bk_aifs,
3681 VAR_FLAGS_OPTIONAL |
3682 VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
3683 CFG_EDCA_BK_AIFS_VALUE_DEFAULT,
3684 CFG_EDCA_BK_AIFS_VALUE_MIN,
3685 CFG_EDCA_BK_AIFS_VALUE_MAX),
3686
3687 REG_VARIABLE(CFG_EDCA_BE_AIFS_VALUE_NAME, WLAN_PARAM_Integer,
3688 hdd_config_t, edca_be_aifs,
3689 VAR_FLAGS_OPTIONAL |
3690 VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
3691 CFG_EDCA_BE_AIFS_VALUE_DEFAULT,
3692 CFG_EDCA_BE_AIFS_VALUE_MIN,
3693 CFG_EDCA_BE_AIFS_VALUE_MAX),
3694
Agrawal Ashishaf1de652016-03-02 18:03:43 +05303695 REG_VARIABLE( CFG_SEND_MGMT_PKT_VIA_WQ5_NAME , WLAN_PARAM_Integer,
3696 hdd_config_t, sendMgmtPktViaWQ5,
3697 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
3698 CFG_SEND_MGMT_PKT_VIA_WQ5_DEF,
3699 CFG_SEND_MGMT_PKT_VIA_WQ5_MIN,
3700 CFG_SEND_MGMT_PKT_VIA_WQ5_MAX ),
3701
Rajeev Kumar Sirasanagandlaade0a332016-06-29 16:52:15 +05303702 REG_VARIABLE(CFG_SAP_PROBE_RESP_OFFLOAD_NAME, WLAN_PARAM_Integer,
3703 hdd_config_t, sap_probe_resp_offload,
3704 VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
3705 CFG_SAP_PROBE_RESP_OFFLOAD_DEFAULT,
3706 CFG_SAP_PROBE_RESP_OFFLOAD_MIN,
3707 CFG_SAP_PROBE_RESP_OFFLOAD_MAX),
Tushnim Bhattacharyya9889e792013-12-19 18:18:36 -08003708};
3709
Jeff Johnson295189b2012-06-20 16:38:30 -07003710/*
3711 * This function returns a pointer to the character after the occurence
3712 * of a new line character. It also modifies the original string by replacing
3713 * the '\n' character with the null character.
3714 * Function returns NULL if no new line character was found before end of
3715 * string was reached
3716 */
Vinay Krishna Eranna4fba8d22014-12-02 19:34:22 +05303717static char* get_next_line(char* str, char *str_end)
Jeff Johnson295189b2012-06-20 16:38:30 -07003718{
3719 char c;
3720
3721 if( str == NULL || *str == '\0') {
3722 return NULL;
3723 }
3724
3725 c = *str;
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003726 while(c != '\n' && c != '\0' && c != 0xd) {
Jeff Johnson295189b2012-06-20 16:38:30 -07003727 str = str + 1;
Vinay Krishna Eranna4fba8d22014-12-02 19:34:22 +05303728 if (str > str_end)
3729 {
3730 return str;
3731 }
Jeff Johnson295189b2012-06-20 16:38:30 -07003732 c = *str;
3733 }
3734
3735 if (c == '\0' ) {
3736 return NULL;
3737 }
3738 else
3739 {
Jeff Johnson295189b2012-06-20 16:38:30 -07003740 return (str+1);
3741 }
3742
3743 return NULL;
3744}
3745
3746// look for space. Ascii values to look are -
3747// 0x09 == horizontal tab
3748// 0x0a == Newline ("\n")
3749// 0x0b == vertical tab
3750// 0x0c == Newpage or feed form.
3751// 0x0d == carriage return (CR or "\r")
3752// Null ('\0') should not considered as space.
3753#define i_isspace(ch) (((ch) >= 0x09 && (ch) <= 0x0d) || (ch) == ' ')
3754
3755/*
3756 * This function trims any leading and trailing white spaces
3757 */
3758static char *i_trim(char *str)
3759
3760{
3761 char *ptr;
3762
3763 if(*str == '\0') return str;
3764
3765 /* Find the first non white-space*/
3766 for (ptr = str; i_isspace(*ptr); ptr++);
3767 if (*ptr == '\0')
3768 return str;
3769
3770 /* This is the new start of the string*/
3771 str = ptr;
3772
3773 /* Find the last non white-space */
3774 ptr += strlen(ptr) - 1;
3775 for (; ptr != str && i_isspace(*ptr); ptr--);
3776 /* Null terminate the following character */
3777 ptr[1] = '\0';
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003778
Jeff Johnson295189b2012-06-20 16:38:30 -07003779 return str;
3780}
3781
3782
3783//Structure to store each entry in qcom_cfg.ini file
3784typedef struct
3785{
3786 char *name;
3787 char *value;
3788}tCfgIniEntry;
3789
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003790static VOS_STATUS hdd_apply_cfg_ini( hdd_context_t * pHddCtx,
Jeff Johnson295189b2012-06-20 16:38:30 -07003791 tCfgIniEntry* iniTable, unsigned long entries);
3792
3793#ifdef WLAN_CFG_DEBUG
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003794void dump_cfg_ini (tCfgIniEntry* iniTable, unsigned long entries)
Jeff Johnson295189b2012-06-20 16:38:30 -07003795{
3796 unsigned long i;
3797
3798 for (i = 0; i < entries; i++) {
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003799 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "%s entry Name=[%s] value=[%s]",
Jeff Johnson295189b2012-06-20 16:38:30 -07003800 WLAN_INI_FILE, iniTable[i].name, iniTable[i].value);
3801 }
3802}
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003803#endif
Jeff Johnson295189b2012-06-20 16:38:30 -07003804
3805/*
3806 * This function reads the qcom_cfg.ini file and
3807 * parses each 'Name=Value' pair in the ini file
3808 */
3809VOS_STATUS hdd_parse_config_ini(hdd_context_t* pHddCtx)
3810{
3811 int status, i=0;
3812 /** Pointer for firmware image data */
3813 const struct firmware *fw = NULL;
Jeff Johnson4416a782013-03-25 14:17:50 -07003814 char *buffer, *line, *pTemp = NULL;
Jeff Johnson295189b2012-06-20 16:38:30 -07003815 size_t size;
3816 char *name, *value;
Madan Mohan Koyyalamudi729972c2012-10-21 12:39:24 -07003817 /* cfgIniTable is static to avoid excess stack usage */
3818 static tCfgIniEntry cfgIniTable[MAX_CFG_INI_ITEMS];
Jeff Johnson295189b2012-06-20 16:38:30 -07003819 VOS_STATUS vos_status = VOS_STATUS_SUCCESS;
3820
3821 memset(cfgIniTable, 0, sizeof(cfgIniTable));
3822
3823 status = request_firmware(&fw, WLAN_INI_FILE, pHddCtx->parent_dev);
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003824
Jeff Johnson295189b2012-06-20 16:38:30 -07003825 if(status)
3826 {
Arif Hussain6d2a3322013-11-17 19:50:10 -08003827 hddLog(VOS_TRACE_LEVEL_FATAL, "%s: request_firmware failed %d",__func__, status);
Jeff Johnson4416a782013-03-25 14:17:50 -07003828 vos_status = VOS_STATUS_E_FAILURE;
3829 goto config_exit;
Jeff Johnson295189b2012-06-20 16:38:30 -07003830 }
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003831 if(!fw || !fw->data || !fw->size)
Jeff Johnson295189b2012-06-20 16:38:30 -07003832 {
Arif Hussain6d2a3322013-11-17 19:50:10 -08003833 hddLog(VOS_TRACE_LEVEL_FATAL, "%s: %s download failed",
Madan Mohan Koyyalamudi87054ba2012-11-02 13:24:12 -07003834 __func__, WLAN_INI_FILE);
Jeff Johnson4416a782013-03-25 14:17:50 -07003835 vos_status = VOS_STATUS_E_FAILURE;
3836 goto config_exit;
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003837 }
Jeff Johnson295189b2012-06-20 16:38:30 -07003838
Ratheesh S P36dbc932015-08-07 14:28:57 +05303839 hddLog(VOS_TRACE_LEVEL_INFO , "%s: qcom_cfg.ini Size %zu", __func__, fw->size);
Jeff Johnson295189b2012-06-20 16:38:30 -07003840
Sushant Kaushikf4a27972015-04-16 16:48:00 +05303841 buffer = (char*)vos_mem_vmalloc(fw->size);
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003842
Jeff Johnson295189b2012-06-20 16:38:30 -07003843 if(NULL == buffer) {
Madan Mohan Koyyalamudi87054ba2012-11-02 13:24:12 -07003844 hddLog(VOS_TRACE_LEVEL_FATAL, "%s: kmalloc failure",__func__);
Jeff Johnson295189b2012-06-20 16:38:30 -07003845 release_firmware(fw);
3846 return VOS_STATUS_E_FAILURE;
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003847 }
Jeff Johnson295189b2012-06-20 16:38:30 -07003848 pTemp = buffer;
3849
3850 vos_mem_copy((void*)buffer,(void *)fw->data, fw->size);
3851 size = fw->size;
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003852
Jeff Johnson295189b2012-06-20 16:38:30 -07003853 while (buffer != NULL)
3854 {
Vinay Krishna Erannaf5a30832014-08-13 18:44:37 +05303855 /*
3856 * get_next_line function used to modify the \n and \r delimiter
3857 * to \0 before returning, without checking if it is over parsing the
3858 * source buffer. So changed the function not to modify the buffer
3859 * passed to it and letting the calling/caller function to take
3860 * care of the return pointer validation and modification of the buffer.
3861 * So validating if the return pointer is not greater than the end
3862 * buffer address and modifying the buffer value.
3863 */
Vinay Krishna Eranna4fba8d22014-12-02 19:34:22 +05303864 line = get_next_line(buffer, (pTemp + (fw->size-1)));
Hanumantha Reddy Pothula6f7811f2015-05-29 18:59:36 +05303865 if(line >= (pTemp + fw->size)) {
Vinay Krishna Erannaf5a30832014-08-13 18:44:37 +05303866 hddLog(VOS_TRACE_LEVEL_FATAL, "%s: INI file seems to be corrupted",
3867 __func__);
3868 vos_status = VOS_STATUS_E_FAILURE;
3869 goto config_exit;
3870 }
3871 else if(line) {
3872 *(line - 1) = '\0';
3873 }
3874
Jeff Johnson295189b2012-06-20 16:38:30 -07003875 buffer = i_trim(buffer);
3876
3877 hddLog(LOG1, "%s: item", buffer);
3878
3879 if(strlen((char*)buffer) == 0 || *buffer == '#') {
3880 buffer = line;
3881 continue;
3882 }
3883 else if(strncmp(buffer, "END", 3) == 0 ) {
3884 break;
3885 }
3886 else
3887 {
3888 name = buffer;
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003889 while(*buffer != '=' && *buffer != '\0')
Jeff Johnson295189b2012-06-20 16:38:30 -07003890 buffer++;
3891 if(*buffer != '\0') {
3892 *buffer++ = '\0';
3893 i_trim(name);
3894 if(strlen (name) != 0) {
3895 buffer = i_trim(buffer);
3896 if(strlen(buffer)>0) {
3897 value = buffer;
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003898 while(!i_isspace(*buffer) && *buffer != '\0')
Jeff Johnson295189b2012-06-20 16:38:30 -07003899 buffer++;
3900 *buffer = '\0';
3901 cfgIniTable[i].name= name;
3902 cfgIniTable[i++].value= value;
3903 if(i >= MAX_CFG_INI_ITEMS) {
Arif Hussain6d2a3322013-11-17 19:50:10 -08003904 hddLog(LOGE,"%s: Number of items in %s > %d",
Madan Mohan Koyyalamudi87054ba2012-11-02 13:24:12 -07003905 __func__, WLAN_INI_FILE, MAX_CFG_INI_ITEMS);
Jeff Johnson295189b2012-06-20 16:38:30 -07003906 break;
3907 }
3908 }
3909 }
3910 }
3911 }
3912 buffer = line;
3913 }
3914
3915 //Loop through the registry table and apply all these configs
3916 vos_status = hdd_apply_cfg_ini(pHddCtx, cfgIniTable, i);
3917
Jeff Johnson4416a782013-03-25 14:17:50 -07003918config_exit:
Jeff Johnson295189b2012-06-20 16:38:30 -07003919 release_firmware(fw);
Sushant Kaushikf4a27972015-04-16 16:48:00 +05303920 vos_mem_vfree(pTemp);
Jeff Johnson295189b2012-06-20 16:38:30 -07003921 return vos_status;
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003922}
Jeff Johnson295189b2012-06-20 16:38:30 -07003923
3924
3925static void print_hdd_cfg(hdd_context_t *pHddCtx)
3926{
3927 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "*********Config values in HDD Adapter*******");
Jeff Johnson0299d0a2013-10-30 12:37:43 -07003928 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 -07003929 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [OperatingChannel] Value = [%u]",pHddCtx->cfg_ini->OperatingChannel);
3930 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [PowerUsageControl] Value = [%s]",pHddCtx->cfg_ini->PowerUsageControl);
3931 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [fIsImpsEnabled] Value = [%u]",pHddCtx->cfg_ini->fIsImpsEnabled);
3932 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 -07003933 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 -07003934 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 -08003935 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH,
3936 "Name = [gIbssBssid] Value =["MAC_ADDRESS_STR"]",
3937 MAC_ADDR_ARRAY(pHddCtx->cfg_ini->IbssBssid.bytes));
Jeff Johnson295189b2012-06-20 16:38:30 -07003938
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003939 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH,
Arif Hussaina7c8e412013-11-20 11:06:42 -08003940 "Name = [Intf0MacAddress] Value =["MAC_ADDRESS_STR"]",
3941 MAC_ADDR_ARRAY(pHddCtx->cfg_ini->intfMacAddr[0].bytes));
Jeff Johnson295189b2012-06-20 16:38:30 -07003942
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003943 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH,
Arif Hussaina7c8e412013-11-20 11:06:42 -08003944 "Name = [Intf1MacAddress] Value =["MAC_ADDRESS_STR"]",
3945 MAC_ADDR_ARRAY(pHddCtx->cfg_ini->intfMacAddr[1].bytes));
Jeff Johnson295189b2012-06-20 16:38:30 -07003946
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003947 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH,
Arif Hussaina7c8e412013-11-20 11:06:42 -08003948 "Name = [Intf2MacAddress] Value =["MAC_ADDRESS_STR"]",
3949 MAC_ADDR_ARRAY(pHddCtx->cfg_ini->intfMacAddr[2].bytes));
Jeff Johnson295189b2012-06-20 16:38:30 -07003950
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08003951 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH,
Arif Hussaina7c8e412013-11-20 11:06:42 -08003952 "Name = [Intf3MacAddress] Value =["MAC_ADDRESS_STR"]",
3953 MAC_ADDR_ARRAY(pHddCtx->cfg_ini->intfMacAddr[3].bytes));
Jeff Johnson295189b2012-06-20 16:38:30 -07003954
Arif Hussain6d2a3322013-11-17 19:50:10 -08003955 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 -07003956
Arif Hussain6d2a3322013-11-17 19:50:10 -08003957 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [gAPCntryCode] Value =[%c%c%c]",
Jeff Johnson295189b2012-06-20 16:38:30 -07003958 pHddCtx->cfg_ini->apCntryCode[0],pHddCtx->cfg_ini->apCntryCode[1],
3959 pHddCtx->cfg_ini->apCntryCode[2]);
3960 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 -08003961 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 -07003962
Arif Hussain6d2a3322013-11-17 19:50:10 -08003963 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [gEnableListenMode] Value = [%u]", pHddCtx->cfg_ini->nEnableListenMode);
3964 VOS_TRACE (VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [gApProtection] value = [%u]",pHddCtx->cfg_ini->apProtection);
3965 VOS_TRACE (VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [gEnableApOBSSProt] value = [%u]",pHddCtx->cfg_ini->apOBSSProtEnabled);
3966 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 -08003967
Jeff Johnson0299d0a2013-10-30 12:37:43 -07003968 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [ChannelBondingMode] Value = [%u]",pHddCtx->cfg_ini->nChannelBondingMode24GHz);
3969 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [ChannelBondingMode] Value = [%u]",pHddCtx->cfg_ini->nChannelBondingMode5GHz);
3970 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 -07003971 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [WmmMode] Value = [%u] ",pHddCtx->cfg_ini->WmmMode);
3972 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [UapsdMask] Value = [0x%x] ",pHddCtx->cfg_ini->UapsdMask);
3973 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [PktClassificationBasis] Value = [%u] ",pHddCtx->cfg_ini->PktClassificationBasis);
3974 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [ImplicitQosIsEnabled] Value = [%u]",(int)pHddCtx->cfg_ini->bImplicitQosEnabled);
3975
Jeff Johnson0299d0a2013-10-30 12:37:43 -07003976 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [InfraUapsdVoSrvIntv] Value = [%u] ",pHddCtx->cfg_ini->InfraUapsdVoSrvIntv);
3977 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 -07003978
Jeff Johnson0299d0a2013-10-30 12:37:43 -07003979 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [InfraUapsdViSrvIntv] Value = [%u] ",pHddCtx->cfg_ini->InfraUapsdViSrvIntv);
3980 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 -07003981
Jeff Johnson0299d0a2013-10-30 12:37:43 -07003982 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [InfraUapsdBeSrvIntv] Value = [%u] ",pHddCtx->cfg_ini->InfraUapsdBeSrvIntv);
3983 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 -07003984
Jeff Johnson0299d0a2013-10-30 12:37:43 -07003985 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [InfraUapsdBkSrvIntv] Value = [%u] ",pHddCtx->cfg_ini->InfraUapsdBkSrvIntv);
3986 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [InfraUapsdBkSuspIntv] Value = [%u] ",pHddCtx->cfg_ini->InfraUapsdBkSuspIntv);
Varun Reddy Yeturu5d5e2c62014-02-27 13:31:29 -08003987#ifdef FEATURE_WLAN_ESE
Jeff Johnson0299d0a2013-10-30 12:37:43 -07003988 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [InfraInactivityInterval] Value = [%u] ",pHddCtx->cfg_ini->InfraInactivityInterval);
Varun Reddy Yeturu5d5e2c62014-02-27 13:31:29 -08003989 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [EseEnabled] Value = [%u] ",pHddCtx->cfg_ini->isEseIniFeatureEnabled);
Jeff Johnson0299d0a2013-10-30 12:37:43 -07003990 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [FastTransitionEnabled] Value = [%u] ",pHddCtx->cfg_ini->isFastTransitionEnabled);
3991 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 -08003992#endif
Jeff Johnson04dd8a82012-06-29 20:41:40 -07003993#ifdef FEATURE_WLAN_LFR
Jeff Johnson0299d0a2013-10-30 12:37:43 -07003994 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 -08003995 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 -08003996#endif
Varun Reddy Yeturu5d5e2c62014-02-27 13:31:29 -08003997#if defined (WLAN_FEATURE_VOWIFI_11R) || defined (FEATURE_WLAN_ESE) || defined(FEATURE_WLAN_LFR)
Jeff Johnson0299d0a2013-10-30 12:37:43 -07003998 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [RoamRssiDiff] Value = [%u] ",pHddCtx->cfg_ini->RoamRssiDiff);
3999 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [ImmediateRoamRssiDiff] Value = [%u] ",pHddCtx->cfg_ini->nImmediateRoamRssiDiff);
4000 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 -07004001#endif
Srinivas Girigowdabbd16eb2013-03-21 12:34:46 -07004002#ifdef FEATURE_WLAN_OKC
Jeff Johnson0299d0a2013-10-30 12:37:43 -07004003 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 -07004004#endif
Jeff Johnson295189b2012-06-20 16:38:30 -07004005 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [InfraDirAcVo] Value = [%u] ",pHddCtx->cfg_ini->InfraDirAcVo);
4006 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 -07004007 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [InfraMeanDataRateAcVo] Value = [0x%x] ",pHddCtx->cfg_ini->InfraMeanDataRateAcVo);
4008 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 -07004009 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [InfraSbaAcVo] Value = [0x%x] ",pHddCtx->cfg_ini->InfraSbaAcVo);
4010
4011 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [InfraDirAcVi] Value = [%u] ",pHddCtx->cfg_ini->InfraDirAcVi);
4012 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 -07004013 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [InfraMeanDataRateAcVi] Value = [0x%x] ",pHddCtx->cfg_ini->InfraMeanDataRateAcVi);
4014 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 -07004015 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [InfraSbaAcVi] Value = [0x%x] ",pHddCtx->cfg_ini->InfraSbaAcVi);
4016
4017 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [InfraDirAcBe] Value = [%u] ",pHddCtx->cfg_ini->InfraDirAcBe);
4018 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 -07004019 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [InfraMeanDataRateAcBe] Value = [0x%x] ",pHddCtx->cfg_ini->InfraMeanDataRateAcBe);
4020 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 -07004021 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [InfraSbaAcBe] Value = [0x%x] ",pHddCtx->cfg_ini->InfraSbaAcBe);
4022
4023 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [InfraDirAcBk] Value = [%u] ",pHddCtx->cfg_ini->InfraDirAcBk);
4024 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 -07004025 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [InfraMeanDataRateAcBk] Value = [0x%x] ",pHddCtx->cfg_ini->InfraMeanDataRateAcBk);
4026 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 -07004027 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [InfraSbaAcBk] Value = [0x%x] ",pHddCtx->cfg_ini->InfraSbaAcBk);
4028
4029 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [WfqBkWeight] Value = [%u] ",pHddCtx->cfg_ini->WfqBkWeight);
4030 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [WfqBeWeight] Value = [%u] ",pHddCtx->cfg_ini->WfqBeWeight);
4031 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [WfqViWeight] Value = [%u] ",pHddCtx->cfg_ini->WfqViWeight);
4032 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 -07004033 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 -08004034 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [BkReorderAgingTime] Value = [%u] ",pHddCtx->cfg_ini->BkReorderAgingTime);
4035 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [BeReorderAgingTime] Value = [%u] ",pHddCtx->cfg_ini->BeReorderAgingTime);
4036 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [ViReorderAgingTime] Value = [%u] ",pHddCtx->cfg_ini->ViReorderAgingTime);
4037 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 -07004038 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [mcastBcastFilterSetting] Value = [%u] ",pHddCtx->cfg_ini->mcastBcastFilterSetting);
4039 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 -08004040#ifdef WLAN_FEATURE_VOWIFI_11R
Jeff Johnson0299d0a2013-10-30 12:37:43 -07004041 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 -07004042#endif
4043
Girish Gowlibf0e1ab2015-01-19 16:05:16 +05304044 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [gEnableRoamDelayStats] Value = [%u] ",pHddCtx->cfg_ini->gEnableRoamDelayStats);
Jeff Johnson295189b2012-06-20 16:38:30 -07004045#ifdef WLAN_FEATURE_NEIGHBOR_ROAMING
Jeff Johnson0299d0a2013-10-30 12:37:43 -07004046 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [nNeighborReassocRssiThreshold] Value = [%u] ",pHddCtx->cfg_ini->nNeighborReassocRssiThreshold);
4047 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [nNeighborLookupRssiThreshold] Value = [%u] ",pHddCtx->cfg_ini->nNeighborLookupRssiThreshold);
4048 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [nNeighborScanMinChanTime] Value = [%u] ",pHddCtx->cfg_ini->nNeighborScanMinChanTime);
4049 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [nNeighborScanMaxChanTime] Value = [%u] ",pHddCtx->cfg_ini->nNeighborScanMaxChanTime);
4050 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [nMaxNeighborRetries] Value = [%u] ",pHddCtx->cfg_ini->nMaxNeighborReqTries);
4051 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [nNeighborScanPeriod] Value = [%u] ",pHddCtx->cfg_ini->nNeighborScanPeriod);
4052 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [nNeighborScanResultsRefreshPeriod] Value = [%u] ",pHddCtx->cfg_ini->nNeighborResultsRefreshPeriod);
4053 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [nEmptyScanRefreshPeriod] Value = [%u] ",pHddCtx->cfg_ini->nEmptyScanRefreshPeriod);
Mukul Sharma20aa6582014-08-07 21:36:12 +05304054 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [nNeighborInitialForcedRoamTo5GhEnable] Value = [%u] ",pHddCtx->cfg_ini->nNeighborInitialForcedRoamTo5GhEnable);
Jeff Johnson295189b2012-06-20 16:38:30 -07004055#endif
4056 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [burstSizeDefinition] Value = [0x%x] ",pHddCtx->cfg_ini->burstSizeDefinition);
4057 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [tsInfoAckPolicy] Value = [0x%x] ",pHddCtx->cfg_ini->tsInfoAckPolicy);
4058 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [rfSettlingTimeUs] Value = [%u] ",pHddCtx->cfg_ini->rfSettlingTimeUs);
4059 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [bSingleTidRc] Value = [%u] ",pHddCtx->cfg_ini->bSingleTidRc);
4060 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [gDynamicPSPollvalue] Value = [%u] ",pHddCtx->cfg_ini->dynamicPsPollValue);
4061 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [gAddTSWhenACMIsOff] Value = [%u] ",pHddCtx->cfg_ini->AddTSWhenACMIsOff);
4062 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [gValidateScanList] Value = [%u] ",pHddCtx->cfg_ini->fValidateScanList);
4063
4064 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [gStaKeepAlivePeriod] Value = [%u] ",pHddCtx->cfg_ini->infraStaKeepAlivePeriod);
4065 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [gApDataAvailPollInterVal] Value = [%u] ",pHddCtx->cfg_ini->apDataAvailPollPeriodInMs);
4066 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [gEnableBtAmp] Value = [%u] ",pHddCtx->cfg_ini->enableBtAmp);
4067#ifdef WLAN_BTAMP_FEATURE
4068 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [BtAmpPreferredChannel] Value = [%u] ",pHddCtx->cfg_ini->preferredChannel);
4069#endif //WLAN_BTAMP_FEATURE
4070 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [BandCapability] Value = [%u] ",pHddCtx->cfg_ini->nBandCapability);
4071 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [fEnableBeaconEarlyTermination] Value = [%u] ",pHddCtx->cfg_ini->fEnableBeaconEarlyTermination);
4072 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [teleBcnWakeupEnable] Value = [%u] ",pHddCtx->cfg_ini->teleBcnWakeupEn);
4073 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [transListenInterval] Value = [%u] ",pHddCtx->cfg_ini->nTeleBcnTransListenInterval);
4074 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [transLiNumIdleBeacons] Value = [%u] ",pHddCtx->cfg_ini->nTeleBcnTransLiNumIdleBeacons);
4075 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [maxListenInterval] Value = [%u] ",pHddCtx->cfg_ini->nTeleBcnMaxListenInterval);
4076 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [maxLiNumIdleBeacons] Value = [%u] ",pHddCtx->cfg_ini->nTeleBcnMaxLiNumIdleBeacons);
4077 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [bcnEarlyTermWakeInterval] Value = [%u] ",pHddCtx->cfg_ini->bcnEarlyTermWakeInterval);
4078 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [gApDataAvailPollInterVal] Value = [%u] ",pHddCtx->cfg_ini->apDataAvailPollPeriodInMs);
4079 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [gEnableBypass11d] Value = [%u] ",pHddCtx->cfg_ini->enableBypass11d);
4080 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [gEnableDFSChnlScan] Value = [%u] ",pHddCtx->cfg_ini->enableDFSChnlScan);
Sachin Ahuja697ba3f2014-11-12 18:57:11 +05304081 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [gEnableDFSPnoChnlScan] Value = [%u] ",pHddCtx->cfg_ini->enableDFSPnoChnlScan);
Jeff Johnson295189b2012-06-20 16:38:30 -07004082 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [gReportMaxLinkSpeed] Value = [%u] ",pHddCtx->cfg_ini->reportMaxLinkSpeed);
4083 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 -07004084#ifdef WLAN_FEATURE_11AC
Arif Hussain6d2a3322013-11-17 19:50:10 -08004085 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 -07004086#endif
4087 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [enableFirstScan2GOnly] Value = [%u] ",pHddCtx->cfg_ini->enableFirstScan2GOnly);
4088 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [skipDfsChnlInP2pSearch] Value = [%u] ",pHddCtx->cfg_ini->skipDfsChnlInP2pSearch);
4089 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 +05304090 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 -08004091 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 -07004092 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 -07004093 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 -07004094
Leo Chang64d68bc2013-06-04 15:40:52 -07004095 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [gEnableTrafficMonitor] Value = [%u] ", pHddCtx->cfg_ini->enableTrafficMonitor);
4096 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 -07004097 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 -07004098 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 +05304099 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 +05304100 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [gGoLinkMonitorPeriod] Value = [%u]",pHddCtx->cfg_ini->goLinkMonitorPeriod);
4101 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [gApLinkMonitorPeriod] Value = [%u]",pHddCtx->cfg_ini->apLinkMonitorPeriod);
4102 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [gGoKeepAlivePeriod] Value = [%u]",pHddCtx->cfg_ini->goKeepAlivePeriod);
4103 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 -07004104 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [gAmsduSupportInAMPDU] Value = [%u] ",pHddCtx->cfg_ini->isAmsduSupportInAMPDU);
4105 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 -08004106 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 +05304107
Tushnim Bhattacharyya9889e792013-12-19 18:18:36 -08004108 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 +05304109
4110 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [gAsdProbeInterval] Value = [%u]",pHddCtx->cfg_ini->gAsdProbeInterval);
c_hpothu1c4405a2014-12-10 18:16:16 +05304111 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [gAsdTriggerThreshold] Value = [%hhd]",pHddCtx->cfg_ini->gAsdTriggerThreshold);
AnjaneeDevi Kapparapu50239e32014-01-07 18:09:33 +05304112 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [gAsdRTTRssiHystThreshold]Value = [%u]",pHddCtx->cfg_ini->gAsdRTTRssiHystThreshold);
Abhishek Singhc98534e2015-06-12 10:44:34 +05304113 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH,
4114 "Name = [gIgnorePeerErpInfo] Value = [%u] ",
4115 pHddCtx->cfg_ini->ignorePeerErpInfo);
Abhishek Singh795e1b82015-09-25 15:35:03 +05304116 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH,
4117 "Name = [disableP2PMacSpoofing] Value = [%u] ",
4118 pHddCtx->cfg_ini->disableP2PMacSpoofing);
Abhishek Singh837adf22015-10-01 17:37:37 +05304119 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH,
4120 "Name = [enableFatalEvent] Value = [%u] ",
4121 pHddCtx->cfg_ini->enableFatalEvent);
Sandeep Puligillac80f26e2014-03-11 18:36:10 +05304122 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [gRoamtoDFSChannel] Value = [%u] ",pHddCtx->cfg_ini->allowDFSChannelRoam);
Agarwal Ashish51325b52014-06-16 16:50:49 +05304123 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [gMaxConcurrentActiveSessions] Value = [%u] ", pHddCtx->cfg_ini->gMaxConcurrentActiveSessions);
Hardik Kantilal Patel086e0a32014-11-20 14:56:26 +05304124#ifdef WLAN_FEATURE_AP_HT40_24G
4125 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [gApHT4024G] Value = [%u]", pHddCtx->cfg_ini->apHT40_24GEnabled);
4126#endif
Peng Xufc6ad8e2014-09-25 13:16:43 +05304127 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [gAcsScanBandPreference] Value = [%u] ",pHddCtx->cfg_ini->acsScanBandPreference);
Sushant Kaushik87787972015-09-11 16:05:00 +05304128 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [gACSBandSwitchThreshold] value = [%u]",pHddCtx->cfg_ini->acsBandSwitchThreshold);
4129 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [gDeferScanTimeInterval] value = [%u]",pHddCtx->cfg_ini->nDeferScanTimeInterval);
Agarwal Ashishef54a182014-12-16 15:07:31 +05304130 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [gEnableTDLSScan] value = [%u]\n",pHddCtx->cfg_ini->fEnableTDLSScan);
Katya Nigama6fbf662015-03-17 18:35:47 +05304131 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [gDxeReplenishRXTimerVal] Value = [%u] ", pHddCtx->cfg_ini->dxeReplenishRXTimerVal);
4132 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [gDxeSSREnable] Value = [%u] ", pHddCtx->cfg_ini->dxeSSREnable);
Hanumantha Reddy Pothulaee001fc2015-05-26 15:21:53 +05304133 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [toggleArpBDRates] Value = [%u] ", pHddCtx->cfg_ini->toggleArpBDRates);
Padma, Santhosh Kumare2eb0fa2015-08-26 13:40:47 +05304134 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [ExtScanConcMode] Value = [%u] ", pHddCtx->cfg_ini->cfgExtScanConcMode);
Arun Khandavalliffbf9c02015-12-03 16:48:53 +05304135 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [gEnableForceTargetAssert] Value = [%u] ", pHddCtx->cfg_ini->crash_inject_enabled);
Bhargav Shah66896792015-10-01 18:17:37 +05304136 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH,
4137 "Name = [gTcpDelAckComputeInterval] Value = [%u] ",
4138 pHddCtx->cfg_ini->tcpDelAckComputeInterval);
4139 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH,
4140 "Name = [gTcpDelAckThresholdHigh] Value = [%u] ",
4141 pHddCtx->cfg_ini->tcpDelAckThresholdHigh);
4142 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH,
4143 "Name = [gTcpDelAckThresholdLow] Value = [%u] ",
4144 pHddCtx->cfg_ini->tcpDelAckThresholdLow);
4145 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH,
4146 "Name = [gEnableDelAck] Value = [%u] ",
4147 pHddCtx->cfg_ini->enable_delack);
Sachin Ahujab4d7a292015-12-08 19:57:04 +05304148 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH,
4149 "Name = [disableBarWakeUp] Value = [%u] ",
4150 pHddCtx->cfg_ini->disableBarWakeUp);
Gupta, Kapilb79cda32015-12-30 20:36:33 +05304151 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH,
4152 "Name = [gMaxChannelForMoreDwellTime] Value = [%u] ",
4153 pHddCtx->cfg_ini->max_chan_for_dwell_time_cfg);
Masti, Narayanraddi037f3552015-12-22 11:54:35 +05304154 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH,
4155 "Name = [gTDLSEnableDeferTime] Value = [%u] ",
4156 pHddCtx->cfg_ini->tdls_enable_defer_time);
Abhishek Singh4463af02016-03-30 15:20:19 +05304157
4158 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH,
4159 "Name = [%s] Value = [%u] ",
4160 CFG_ENABLE_EDCA_INI_NAME,
4161 pHddCtx->cfg_ini->enable_edca_params);
4162
4163 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH,
4164 "Name = [%s] Value = [%u] ",
4165 CFG_EDCA_VO_CWMIN_VALUE_NAME,
4166 pHddCtx->cfg_ini->edca_vo_cwmin);
4167 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH,
4168 "Name = [%s] Value = [%u] ",
4169 CFG_EDCA_VI_CWMIN_VALUE_NAME,
4170 pHddCtx->cfg_ini->edca_vi_cwmin);
4171 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH,
4172 "Name = [%s] Value = [%u] ",
4173 CFG_EDCA_BK_CWMIN_VALUE_NAME,
4174 pHddCtx->cfg_ini->edca_bk_cwmin);
4175 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH,
4176 "Name = [%s] Value = [%u] ",
4177 CFG_EDCA_BE_CWMIN_VALUE_NAME,
4178 pHddCtx->cfg_ini->edca_be_cwmin);
4179
4180 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH,
4181 "Name = [%s] Value = [%u] ",
4182 CFG_EDCA_VO_CWMAX_VALUE_NAME,
4183 pHddCtx->cfg_ini->edca_vo_cwmax);
4184 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH,
4185 "Name = [%s] Value = [%u] ",
4186 CFG_EDCA_VI_CWMAX_VALUE_NAME,
4187 pHddCtx->cfg_ini->edca_vi_cwmax);
4188 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH,
4189 "Name = [%s] Value = [%u] ",
4190 CFG_EDCA_BK_CWMAX_VALUE_NAME,
4191 pHddCtx->cfg_ini->edca_bk_cwmax);
4192 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH,
4193 "Name = [%s] Value = [%u] ",
4194 CFG_EDCA_BE_CWMAX_VALUE_NAME,
4195 pHddCtx->cfg_ini->edca_be_cwmax);
4196
4197 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH,
4198 "Name = [%s] Value = [%u] ",
4199 CFG_EDCA_VO_AIFS_VALUE_NAME,
4200 pHddCtx->cfg_ini->edca_vo_aifs);
4201 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH,
4202 "Name = [%s] Value = [%u] ",
4203 CFG_EDCA_VI_AIFS_VALUE_NAME,
4204 pHddCtx->cfg_ini->edca_vi_aifs);
4205 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH,
4206 "Name = [%s] Value = [%u] ",
4207 CFG_EDCA_BK_AIFS_VALUE_NAME,
4208 pHddCtx->cfg_ini->edca_bk_aifs);
4209 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH,
4210 "Name = [%s] Value = [%u] ",
4211 CFG_EDCA_BE_AIFS_VALUE_NAME,
4212 pHddCtx->cfg_ini->edca_be_aifs);
4213
Agrawal Ashishaf1de652016-03-02 18:03:43 +05304214 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH,
4215 "Name = [gSendMgmtPktViaWQ5] Value = [%u] ",
4216 pHddCtx->cfg_ini->sendMgmtPktViaWQ5);
Rajeev Kumar Sirasanagandlaade0a332016-06-29 16:52:15 +05304217
4218 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH,
4219 "Name = [%s] Value = [%u] ", CFG_SAP_PROBE_RESP_OFFLOAD_NAME,
4220 pHddCtx->cfg_ini->sap_probe_resp_offload);
Kapil Gupta00e71f92016-06-26 13:31:37 +05304221
4222#ifdef WLAN_FEATURE_ROAM_SCAN_OFFLOAD
4223 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH,
4224 "Name = [gPERRoamStatsTime] Value = [%lu] ",
4225 (long unsigned int)pHddCtx->cfg_ini->PERtimerThreshold);
4226
4227 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH,
4228 "Name = [gPERRoamRxMonitorEnabled] Value = [%u] ",
4229 pHddCtx->cfg_ini->isPERRoamRxPathEnabled);
4230
4231 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH,
4232 "Name = [gPERRoamTriggerPercent] Value = [%u] ",
4233 pHddCtx->cfg_ini->PERroamTriggerPercent);
4234
4235 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH,
4236 "Name = [gPERRoamRxPktThreshold] Value = [%u] ",
4237 pHddCtx->cfg_ini->PERroamRxPktsThreshold);
4238
4239 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH,
4240 "Name = [gPERRoamCCAEnabled] Value = [%u] ",
4241 pHddCtx->cfg_ini->isPERRoamCCAEnabled);
4242
4243 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH,
Kapil Gupta89a8a0e2016-08-25 14:11:17 +05304244 "Name = [gPERRoamFullScanThreshold] Value = [%u] ",
4245 pHddCtx->cfg_ini->PERRoamFullScanThreshold);
4246
4247 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH,
Kapil Gupta00e71f92016-06-26 13:31:37 +05304248 "Name = [gPERRoamScanInterval] Value = [%lu] ",
4249 (long unsigned int)pHddCtx->cfg_ini->waitPeriodForNextPERScan);
4250
4251 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH,
4252 "Name = [gPERRoamDownThresholdRate] Value = [%u] ",
4253 pHddCtx->cfg_ini->rateDownThreshold);
4254
4255 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH,
4256 "Name = [gPERRoamEnable] Value = [%u] ",
4257 pHddCtx->cfg_ini->isPERRoamEnabled);
4258
4259 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH,
4260 "Name = [gPERRoamUpThresholdRate] Value = [%u] ",
4261 pHddCtx->cfg_ini->rateUpThreshold);
4262#endif
Jeff Johnson295189b2012-06-20 16:38:30 -07004263}
4264
4265
Gopichand Nakkalae620d5a2013-04-26 05:45:57 -07004266
Jeff Johnson295189b2012-06-20 16:38:30 -07004267#define CFG_VALUE_MAX_LEN 256
4268#define CFG_ENTRY_MAX_LEN (32+CFG_VALUE_MAX_LEN)
4269VOS_STATUS hdd_cfg_get_config(hdd_context_t *pHddCtx, char *pBuf, int buflen)
4270{
4271 unsigned int idx;
4272 REG_TABLE_ENTRY *pRegEntry = g_registry_table;
4273 unsigned long cRegTableEntries = sizeof(g_registry_table) / sizeof( g_registry_table[ 0 ]);
4274 v_U32_t value;
4275 char valueStr[CFG_VALUE_MAX_LEN];
4276 char configStr[CFG_ENTRY_MAX_LEN];
4277 char *fmt;
4278 void *pField;
4279 v_MACADDR_t *pMacAddr;
4280 char *pCur = pBuf;
4281 int curlen;
4282
4283 // start with an empty string
4284 *pCur = '\0';
4285
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004286 for ( idx = 0; idx < cRegTableEntries; idx++, pRegEntry++ )
Jeff Johnson295189b2012-06-20 16:38:30 -07004287 {
4288 pField = ( (v_U8_t *)pHddCtx->cfg_ini) + pRegEntry->VarOffset;
4289
4290 if ( ( WLAN_PARAM_Integer == pRegEntry->RegType ) ||
4291 ( WLAN_PARAM_SignedInteger == pRegEntry->RegType ) ||
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004292 ( WLAN_PARAM_HexInteger == pRegEntry->RegType ) )
Jeff Johnson295189b2012-06-20 16:38:30 -07004293 {
4294 value = 0;
4295 memcpy( &value, pField, pRegEntry->VarSize );
4296 if ( WLAN_PARAM_HexInteger == pRegEntry->RegType )
4297 {
4298 fmt = "%x";
4299 }
4300 else if ( WLAN_PARAM_SignedInteger == pRegEntry->RegType )
4301 {
4302 fmt = "%d";
4303 }
4304 else
4305 {
4306 fmt = "%u";
4307 }
4308 snprintf(valueStr, CFG_VALUE_MAX_LEN, fmt, value);
4309 }
4310 else if ( WLAN_PARAM_String == pRegEntry->RegType )
4311 {
4312 snprintf(valueStr, CFG_VALUE_MAX_LEN, "%s", (char *)pField);
4313 }
4314 else if ( WLAN_PARAM_MacAddr == pRegEntry->RegType )
4315 {
4316 pMacAddr = (v_MACADDR_t *) pField;
4317 snprintf(valueStr, CFG_VALUE_MAX_LEN,
4318 "%02x:%02x:%02x:%02x:%02x:%02x",
4319 pMacAddr->bytes[0],
4320 pMacAddr->bytes[1],
4321 pMacAddr->bytes[2],
4322 pMacAddr->bytes[3],
4323 pMacAddr->bytes[4],
4324 pMacAddr->bytes[5]);
4325 }
4326 else
4327 {
4328 snprintf(valueStr, CFG_VALUE_MAX_LEN, "(unhandled)");
4329 }
Sameer Thalappilb0a30232013-09-27 15:37:48 -07004330 curlen = scnprintf(configStr, CFG_ENTRY_MAX_LEN,
Jeff Johnson295189b2012-06-20 16:38:30 -07004331 "%s=[%s]%s\n",
4332 pRegEntry->RegName,
4333 valueStr,
4334 test_bit(idx, (void *)&pHddCtx->cfg_ini->bExplicitCfg) ?
4335 "*" : "");
4336
4337 // ideally we want to return the config to the application
4338 // however the config is too big so we just printk() for now
4339#ifdef RETURN_IN_BUFFER
Hanumantha Reddy Pothula02bd60c2016-05-11 15:57:51 +05304340 if (curlen < buflen)
Jeff Johnson295189b2012-06-20 16:38:30 -07004341 {
4342 // copy string + '\0'
4343 memcpy(pCur, configStr, curlen+1);
4344
4345 // account for addition;
4346 pCur += curlen;
4347 buflen -= curlen;
4348 }
4349 else
4350 {
4351 // buffer space exhausted, return what we have
4352 return VOS_STATUS_E_RESOURCES;
4353 }
4354#else
4355 printk(KERN_CRIT "%s", configStr);
4356#endif // RETURN_IN_BUFFER
4357
4358}
4359
4360#ifndef RETURN_IN_BUFFER
4361 // notify application that output is in system log
4362 snprintf(pCur, buflen, "WLAN configuration written to system log");
4363#endif // RETURN_IN_BUFFER
4364
4365 return VOS_STATUS_SUCCESS;
4366}
4367
4368static VOS_STATUS find_cfg_item (tCfgIniEntry* iniTable, unsigned long entries,
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004369 char *name, char** value)
Jeff Johnson295189b2012-06-20 16:38:30 -07004370{
4371 VOS_STATUS status = VOS_STATUS_E_FAILURE;
4372 unsigned long i;
4373
4374 for (i = 0; i < entries; i++) {
4375 if (strcmp(iniTable[i].name, name) == 0) {
4376 *value = iniTable[i].value;
4377 VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Found %s entry for Name=[%s] Value=[%s] ",
4378 WLAN_INI_FILE, name, *value);
4379 return VOS_STATUS_SUCCESS;
4380 }
4381 }
4382
4383 return status;
4384}
4385
4386static int parseHexDigit(char c)
4387{
4388 if (c >= '0' && c <= '9')
4389 return c-'0';
4390 if (c >= 'a' && c <= 'f')
4391 return c-'a'+10;
4392 if (c >= 'A' && c <= 'F')
4393 return c-'A'+10;
4394
4395 return 0;
4396}
4397
4398
4399static VOS_STATUS hdd_apply_cfg_ini( hdd_context_t *pHddCtx, tCfgIniEntry* iniTable, unsigned long entries)
4400{
4401 VOS_STATUS match_status = VOS_STATUS_E_FAILURE;
4402 VOS_STATUS ret_status = VOS_STATUS_SUCCESS;
4403 unsigned int idx;
4404 void *pField;
4405 char *value_str = NULL;
4406 unsigned long len_value_str;
4407 char *candidate;
4408 v_U32_t value;
4409 v_S31_t svalue;
4410 void *pStructBase = pHddCtx->cfg_ini;
4411 REG_TABLE_ENTRY *pRegEntry = g_registry_table;
4412 unsigned long cRegTableEntries = sizeof(g_registry_table) / sizeof( g_registry_table[ 0 ]);
4413 v_U32_t cbOutString;
4414 int i;
Madan Mohan Koyyalamudid8ac8662012-11-06 19:04:56 -08004415 int rv;
Jeff Johnson295189b2012-06-20 16:38:30 -07004416
4417 // sanity test
4418 if (MAX_CFG_INI_ITEMS < cRegTableEntries)
4419 {
Jeff Johnson0299d0a2013-10-30 12:37:43 -07004420 hddLog(LOGE, "%s: MAX_CFG_INI_ITEMS too small, must be at least %ld",
Madan Mohan Koyyalamudi87054ba2012-11-02 13:24:12 -07004421 __func__, cRegTableEntries);
Jeff Johnson295189b2012-06-20 16:38:30 -07004422 }
4423
4424 for ( idx = 0; idx < cRegTableEntries; idx++, pRegEntry++ )
4425 {
4426 //Calculate the address of the destination field in the structure.
4427 pField = ( (v_U8_t *)pStructBase )+ pRegEntry->VarOffset;
4428
4429 match_status = find_cfg_item(iniTable, entries, pRegEntry->RegName, &value_str);
4430
4431 if( (match_status != VOS_STATUS_SUCCESS) && ( pRegEntry->Flags & VAR_FLAGS_REQUIRED ) )
4432 {
4433 // If we could not read the cfg item and it is required, this is an error.
4434 hddLog(LOGE, "%s: Failed to read required config parameter %s",
Madan Mohan Koyyalamudi87054ba2012-11-02 13:24:12 -07004435 __func__, pRegEntry->RegName);
Jeff Johnson295189b2012-06-20 16:38:30 -07004436 ret_status = VOS_STATUS_E_FAILURE;
4437 break;
4438 }
4439
4440 if ( ( WLAN_PARAM_Integer == pRegEntry->RegType ) ||
4441 ( WLAN_PARAM_HexInteger == pRegEntry->RegType ) )
4442 {
4443 // If successfully read from the registry, use the value read.
4444 // If not, use the default value.
4445 if ( match_status == VOS_STATUS_SUCCESS && (WLAN_PARAM_Integer == pRegEntry->RegType)) {
Jeff Johnson02797792013-10-26 19:17:13 -07004446 rv = kstrtou32(value_str, 10, &value);
Madan Mohan Koyyalamudid8ac8662012-11-06 19:04:56 -08004447 if (rv < 0) {
4448 hddLog(LOGE, "%s: Reg Parameter %s invalid. Enforcing default",
4449 __func__, pRegEntry->RegName);
4450 value = pRegEntry->VarDefault;
4451 }
Jeff Johnson295189b2012-06-20 16:38:30 -07004452 }
4453 else if ( match_status == VOS_STATUS_SUCCESS && (WLAN_PARAM_HexInteger == pRegEntry->RegType)) {
Jeff Johnson02797792013-10-26 19:17:13 -07004454 rv = kstrtou32(value_str, 16, &value);
Madan Mohan Koyyalamudid8ac8662012-11-06 19:04:56 -08004455 if (rv < 0) {
4456 hddLog(LOGE, "%s: Reg paramter %s invalid. Enforcing default",
4457 __func__, pRegEntry->RegName);
4458 value = pRegEntry->VarDefault;
4459 }
Jeff Johnson295189b2012-06-20 16:38:30 -07004460 }
4461 else {
4462 value = pRegEntry->VarDefault;
4463 }
4464
4465 // If this parameter needs range checking, do it here.
4466 if ( pRegEntry->Flags & VAR_FLAGS_RANGE_CHECK )
4467 {
4468 if ( value > pRegEntry->VarMax )
4469 {
Jeff Johnson0299d0a2013-10-30 12:37:43 -07004470 hddLog(LOGE, "%s: Reg Parameter %s > allowed Maximum [%u > %lu]. Enforcing Maximum",
Madan Mohan Koyyalamudi87054ba2012-11-02 13:24:12 -07004471 __func__, pRegEntry->RegName, value, pRegEntry->VarMax );
Jeff Johnson295189b2012-06-20 16:38:30 -07004472 value = pRegEntry->VarMax;
4473 }
4474
4475 if ( value < pRegEntry->VarMin )
4476 {
Jeff Johnson0299d0a2013-10-30 12:37:43 -07004477 hddLog(LOGE, "%s: Reg Parameter %s < allowed Minimum [%u < %lu]. Enforcing Minimum",
Madan Mohan Koyyalamudi87054ba2012-11-02 13:24:12 -07004478 __func__, pRegEntry->RegName, value, pRegEntry->VarMin);
Jeff Johnson295189b2012-06-20 16:38:30 -07004479 value = pRegEntry->VarMin;
4480 }
4481 }
4482 // If this parameter needs range checking, do it here.
4483 else if ( pRegEntry->Flags & VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT )
4484 {
4485 if ( value > pRegEntry->VarMax )
4486 {
Jeff Johnson0299d0a2013-10-30 12:37:43 -07004487 hddLog(LOGE, "%s: Reg Parameter %s > allowed Maximum [%u > %lu]. Enforcing Default= %lu",
Madan Mohan Koyyalamudi87054ba2012-11-02 13:24:12 -07004488 __func__, pRegEntry->RegName, value, pRegEntry->VarMax, pRegEntry->VarDefault );
Jeff Johnson295189b2012-06-20 16:38:30 -07004489 value = pRegEntry->VarDefault;
4490 }
4491
4492 if ( value < pRegEntry->VarMin )
4493 {
Jeff Johnson0299d0a2013-10-30 12:37:43 -07004494 hddLog(LOGE, "%s: Reg Parameter %s < allowed Minimum [%u < %lu]. Enforcing Default= %lu",
Madan Mohan Koyyalamudi87054ba2012-11-02 13:24:12 -07004495 __func__, pRegEntry->RegName, value, pRegEntry->VarMin, pRegEntry->VarDefault );
Jeff Johnson295189b2012-06-20 16:38:30 -07004496 value = pRegEntry->VarDefault;
4497 }
4498 }
4499
4500 // Move the variable into the output field.
4501 memcpy( pField, &value, pRegEntry->VarSize );
4502 }
4503 else if ( WLAN_PARAM_SignedInteger == pRegEntry->RegType )
4504 {
4505 // If successfully read from the registry, use the value read.
4506 // If not, use the default value.
4507 if (VOS_STATUS_SUCCESS == match_status)
4508 {
Jeff Johnson02797792013-10-26 19:17:13 -07004509 rv = kstrtos32(value_str, 10, &svalue);
Madan Mohan Koyyalamudid8ac8662012-11-06 19:04:56 -08004510 if (rv < 0) {
4511 hddLog(VOS_TRACE_LEVEL_WARN, "%s: Reg Parameter %s invalid. Enforcing Default",
4512 __func__, pRegEntry->RegName);
4513 svalue = (v_S31_t)pRegEntry->VarDefault;
4514 }
Jeff Johnson295189b2012-06-20 16:38:30 -07004515 }
4516 else
4517 {
4518 svalue = (v_S31_t)pRegEntry->VarDefault;
4519 }
4520
4521 // If this parameter needs range checking, do it here.
4522 if ( pRegEntry->Flags & VAR_FLAGS_RANGE_CHECK )
4523 {
4524 if ( svalue > (v_S31_t)pRegEntry->VarMax )
4525 {
4526 hddLog(LOGE, "%s: Reg Parameter %s > allowed Maximum "
Jeff Johnson0299d0a2013-10-30 12:37:43 -07004527 "[%d > %d]. Enforcing Maximum", __func__,
Jeff Johnson295189b2012-06-20 16:38:30 -07004528 pRegEntry->RegName, svalue, (int)pRegEntry->VarMax );
4529 svalue = (v_S31_t)pRegEntry->VarMax;
4530 }
4531
4532 if ( svalue < (v_S31_t)pRegEntry->VarMin )
4533 {
4534 hddLog(LOGE, "%s: Reg Parameter %s < allowed Minimum "
Jeff Johnson0299d0a2013-10-30 12:37:43 -07004535 "[%d < %d]. Enforcing Minimum", __func__,
Jeff Johnson295189b2012-06-20 16:38:30 -07004536 pRegEntry->RegName, svalue, (int)pRegEntry->VarMin);
4537 svalue = (v_S31_t)pRegEntry->VarMin;
4538 }
4539 }
4540 // If this parameter needs range checking, do it here.
4541 else if ( pRegEntry->Flags & VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT )
4542 {
4543 if ( svalue > (v_S31_t)pRegEntry->VarMax )
4544 {
4545 hddLog(LOGE, "%s: Reg Parameter %s > allowed Maximum "
Jeff Johnson0299d0a2013-10-30 12:37:43 -07004546 "[%d > %d]. Enforcing Default= %d",
Madan Mohan Koyyalamudi87054ba2012-11-02 13:24:12 -07004547 __func__, pRegEntry->RegName, svalue,
Jeff Johnson295189b2012-06-20 16:38:30 -07004548 (int)pRegEntry->VarMax,
4549 (int)pRegEntry->VarDefault );
4550 svalue = (v_S31_t)pRegEntry->VarDefault;
4551 }
4552
4553 if ( svalue < (v_S31_t)pRegEntry->VarMin )
4554 {
4555 hddLog(LOGE, "%s: Reg Parameter %s < allowed Minimum "
Jeff Johnson0299d0a2013-10-30 12:37:43 -07004556 "[%d < %d]. Enforcing Default= %d",
Madan Mohan Koyyalamudi87054ba2012-11-02 13:24:12 -07004557 __func__, pRegEntry->RegName, svalue,
Jeff Johnson295189b2012-06-20 16:38:30 -07004558 (int)pRegEntry->VarMin,
4559 (int)pRegEntry->VarDefault);
4560 svalue = pRegEntry->VarDefault;
4561 }
4562 }
4563
4564 // Move the variable into the output field.
4565 memcpy( pField, &svalue, pRegEntry->VarSize );
4566 }
4567 // Handle string parameters
4568 else if ( WLAN_PARAM_String == pRegEntry->RegType )
4569 {
4570#ifdef WLAN_CFG_DEBUG
Arif Hussain6d2a3322013-11-17 19:50:10 -08004571 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 -08004572 pRegEntry->RegName, pRegEntry->VarOffset, pRegEntry->VarSize, (char*)pRegEntry->VarDefault);
Jeff Johnson295189b2012-06-20 16:38:30 -07004573#endif
4574
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004575 if ( match_status == VOS_STATUS_SUCCESS)
Jeff Johnson295189b2012-06-20 16:38:30 -07004576 {
4577 len_value_str = strlen(value_str);
4578
4579 if(len_value_str > (pRegEntry->VarSize - 1)) {
Arif Hussain6d2a3322013-11-17 19:50:10 -08004580 hddLog(LOGE, "%s: Invalid Value=[%s] specified for Name=[%s] in %s",
Madan Mohan Koyyalamudi87054ba2012-11-02 13:24:12 -07004581 __func__, value_str, pRegEntry->RegName, WLAN_INI_FILE);
Jeff Johnson295189b2012-06-20 16:38:30 -07004582 cbOutString = utilMin( strlen( (char *)pRegEntry->VarDefault ), pRegEntry->VarSize - 1 );
4583 memcpy( pField, (void *)(pRegEntry->VarDefault), cbOutString );
4584 ( (v_U8_t *)pField )[ cbOutString ] = '\0';
4585 }
4586 else
4587 {
4588 memcpy( pField, (void *)(value_str), len_value_str);
4589 ( (v_U8_t *)pField )[ len_value_str ] = '\0';
4590 }
4591 }
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004592 else
Jeff Johnson295189b2012-06-20 16:38:30 -07004593 {
4594 // Failed to read the string parameter from the registry. Use the default.
4595 cbOutString = utilMin( strlen( (char *)pRegEntry->VarDefault ), pRegEntry->VarSize - 1 );
4596 memcpy( pField, (void *)(pRegEntry->VarDefault), cbOutString );
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004597 ( (v_U8_t *)pField )[ cbOutString ] = '\0';
Jeff Johnson295189b2012-06-20 16:38:30 -07004598 }
4599 }
4600 else if ( WLAN_PARAM_MacAddr == pRegEntry->RegType )
4601 {
4602 if(pRegEntry->VarSize != VOS_MAC_ADDR_SIZE) {
Arif Hussain6d2a3322013-11-17 19:50:10 -08004603 hddLog(LOGE, "%s: Invalid VarSize %u for Name=[%s]",
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004604 __func__, pRegEntry->VarSize, pRegEntry->RegName);
Jeff Johnson295189b2012-06-20 16:38:30 -07004605 continue;
4606 }
4607 candidate = (char*)pRegEntry->VarDefault;
4608 if ( match_status == VOS_STATUS_SUCCESS) {
4609 len_value_str = strlen(value_str);
4610 if(len_value_str != (VOS_MAC_ADDR_SIZE*2)) {
Arif Hussain6d2a3322013-11-17 19:50:10 -08004611 hddLog(LOGE, "%s: Invalid MAC addr [%s] specified for Name=[%s] in %s",
Madan Mohan Koyyalamudi87054ba2012-11-02 13:24:12 -07004612 __func__, value_str, pRegEntry->RegName, WLAN_INI_FILE);
Jeff Johnson295189b2012-06-20 16:38:30 -07004613 }
4614 else
4615 candidate = value_str;
4616 }
4617 //parse the string and store it in the byte array
4618 for(i=0; i<VOS_MAC_ADDR_SIZE; i++)
4619 {
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004620 ((char*)pField)[i] =
4621 (char)(parseHexDigit(candidate[i*2])*16 + parseHexDigit(candidate[i*2+1]));
Jeff Johnson295189b2012-06-20 16:38:30 -07004622 }
4623 }
4624 else
4625 {
Arif Hussain6d2a3322013-11-17 19:50:10 -08004626 hddLog(LOGE, "%s: Unknown param type for name[%s] in registry table",
Madan Mohan Koyyalamudi87054ba2012-11-02 13:24:12 -07004627 __func__, pRegEntry->RegName);
Jeff Johnson295189b2012-06-20 16:38:30 -07004628 }
4629
4630 // did we successfully parse a cfg item for this parameter?
4631 if( (match_status == VOS_STATUS_SUCCESS) &&
4632 (idx < MAX_CFG_INI_ITEMS) )
4633 {
4634 set_bit(idx, (void *)&pHddCtx->cfg_ini->bExplicitCfg);
4635 }
4636 }
4637
4638 print_hdd_cfg(pHddCtx);
4639
4640 return( ret_status );
4641}
4642
4643eCsrPhyMode hdd_cfg_xlate_to_csr_phy_mode( eHddDot11Mode dot11Mode )
4644{
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004645 switch (dot11Mode)
Jeff Johnson295189b2012-06-20 16:38:30 -07004646 {
4647 case (eHDD_DOT11_MODE_abg):
4648 return eCSR_DOT11_MODE_abg;
4649 case (eHDD_DOT11_MODE_11b):
4650 return eCSR_DOT11_MODE_11b;
4651 case (eHDD_DOT11_MODE_11g):
4652 return eCSR_DOT11_MODE_11g;
4653 default:
4654 case (eHDD_DOT11_MODE_11n):
4655 return eCSR_DOT11_MODE_11n;
4656 case (eHDD_DOT11_MODE_11g_ONLY):
4657 return eCSR_DOT11_MODE_11g_ONLY;
4658 case (eHDD_DOT11_MODE_11n_ONLY):
4659 return eCSR_DOT11_MODE_11n_ONLY;
4660 case (eHDD_DOT11_MODE_11b_ONLY):
4661 return eCSR_DOT11_MODE_11b_ONLY;
Jeff Johnsone7245742012-09-05 17:12:55 -07004662#ifdef WLAN_FEATURE_11AC
4663 case (eHDD_DOT11_MODE_11ac_ONLY):
4664 return eCSR_DOT11_MODE_11ac_ONLY;
4665 case (eHDD_DOT11_MODE_11ac):
4666 return eCSR_DOT11_MODE_11ac;
4667#endif
Jeff Johnson295189b2012-06-20 16:38:30 -07004668 case (eHDD_DOT11_MODE_AUTO):
4669 return eCSR_DOT11_MODE_AUTO;
4670 }
4671
4672}
4673
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004674static void hdd_set_btc_config(hdd_context_t *pHddCtx)
Jeff Johnson295189b2012-06-20 16:38:30 -07004675{
4676 hdd_config_t *pConfig = pHddCtx->cfg_ini;
4677 tSmeBtcConfig btcParams;
Wilson Tsaof8b37942013-09-06 10:49:00 -07004678 int i;
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004679
Jeff Johnson295189b2012-06-20 16:38:30 -07004680 sme_BtcGetConfig(pHddCtx->hHal, &btcParams);
4681
4682 btcParams.btcExecutionMode = pConfig->btcExecutionMode;
Jeff Johnson295189b2012-06-20 16:38:30 -07004683 btcParams.btcConsBtSlotsToBlockDuringDhcp = pConfig->btcConsBtSlotsToBlockDuringDhcp;
Jeff Johnson295189b2012-06-20 16:38:30 -07004684 btcParams.btcA2DPBtSubIntervalsDuringDhcp = pConfig->btcA2DPBtSubIntervalsDuringDhcp;
4685
Jeff Johnson32d95a32012-09-10 13:15:23 -07004686 btcParams.btcStaticLenInqBt = pConfig->btcStaticLenInqBt;
4687 btcParams.btcStaticLenPageBt = pConfig->btcStaticLenPageBt;
4688 btcParams.btcStaticLenConnBt = pConfig->btcStaticLenConnBt;
4689 btcParams.btcStaticLenLeBt = pConfig->btcStaticLenLeBt;
4690 btcParams.btcStaticLenInqWlan = pConfig->btcStaticLenInqWlan;
4691 btcParams.btcStaticLenPageWlan = pConfig->btcStaticLenPageWlan;
4692 btcParams.btcStaticLenConnWlan = pConfig->btcStaticLenConnWlan;
4693 btcParams.btcStaticLenLeWlan = pConfig->btcStaticLenLeWlan;
4694 btcParams.btcDynMaxLenBt = pConfig->btcDynMaxLenBt;
4695 btcParams.btcDynMaxLenWlan = pConfig->btcDynMaxLenWlan;
4696 btcParams.btcMaxScoBlockPerc = pConfig->btcMaxScoBlockPerc;
4697 btcParams.btcDhcpProtOnA2dp = pConfig->btcDhcpProtOnA2dp;
4698 btcParams.btcDhcpProtOnSco = pConfig->btcDhcpProtOnSco;
4699
Wilson Tsaof8b37942013-09-06 10:49:00 -07004700 for (i = 0; i < 10; i++)
4701 {
4702 btcParams.mwsCoexVictimWANFreq[i] = pConfig->mwsCoexVictimWANFreq[i];
4703 btcParams.mwsCoexVictimWLANFreq[i] = pConfig->mwsCoexVictimWLANFreq[i];
4704 btcParams.mwsCoexVictimConfig[i] = pConfig->mwsCoexVictimConfig[i];
4705 btcParams.mwsCoexVictimConfig2[i] = pConfig->mwsCoexVictimConfig2[i];
4706 }
4707 for (i = 0; i < 6; i++)
4708 {
4709 btcParams.mwsCoexConfig[i] = pConfig->mwsCoexConfig[i];
4710 }
4711 btcParams.mwsCoexModemBackoff = pConfig->mwsCoexModemBackoff;
4712 btcParams.SARPowerBackoff = pConfig->SARPowerBackoff;
4713
Jeff Johnson295189b2012-06-20 16:38:30 -07004714 sme_BtcSetConfig(pHddCtx->hHal, &btcParams);
4715}
4716
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004717static void hdd_set_power_save_config(hdd_context_t *pHddCtx, tSmeConfigParams *smeConfig)
Jeff Johnson295189b2012-06-20 16:38:30 -07004718{
4719 hdd_config_t *pConfig = pHddCtx->cfg_ini;
4720
4721 tPmcBmpsConfigParams bmpsParams;
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004722
Jeff Johnson295189b2012-06-20 16:38:30 -07004723 sme_GetConfigPowerSave(pHddCtx->hHal, ePMC_BEACON_MODE_POWER_SAVE, &bmpsParams);
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004724
Jeff Johnson295189b2012-06-20 16:38:30 -07004725 if (strcmp(pConfig->PowerUsageControl, "Min") == 0)
4726 {
4727 smeConfig->csrConfig.impsSleepTime = pConfig->nImpsMinSleepTime;
4728 bmpsParams.bmpsPeriod = pConfig->nBmpsMinListenInterval;
4729 bmpsParams.enableBeaconEarlyTermination = pConfig->fEnableBeaconEarlyTermination;
4730 bmpsParams.bcnEarlyTermWakeInterval = pConfig->bcnEarlyTermWakeInterval;
4731 }
4732 if (strcmp(pConfig->PowerUsageControl, "Max") == 0)
4733 {
4734 smeConfig->csrConfig.impsSleepTime = pConfig->nImpsMaxSleepTime;
4735 bmpsParams.bmpsPeriod = pConfig->nBmpsMaxListenInterval;
4736 bmpsParams.enableBeaconEarlyTermination = pConfig->fEnableBeaconEarlyTermination;
4737 bmpsParams.bcnEarlyTermWakeInterval = pConfig->bcnEarlyTermWakeInterval;
4738 }
4739 if (strcmp(pConfig->PowerUsageControl, "Mod") == 0)
4740 {
4741 smeConfig->csrConfig.impsSleepTime = pConfig->nImpsModSleepTime;
4742 bmpsParams.bmpsPeriod = pConfig->nBmpsModListenInterval;
4743 bmpsParams.enableBeaconEarlyTermination = pConfig->fEnableBeaconEarlyTermination;
4744 bmpsParams.bcnEarlyTermWakeInterval = pConfig->bcnEarlyTermWakeInterval;
4745 }
4746
4747 if (pConfig->fIsImpsEnabled)
4748 {
4749 sme_EnablePowerSave (pHddCtx->hHal, ePMC_IDLE_MODE_POWER_SAVE);
4750 }
4751 else
4752 {
4753 sme_DisablePowerSave (pHddCtx->hHal, ePMC_IDLE_MODE_POWER_SAVE);
4754 }
4755
Madan Mohan Koyyalamudi69b34182013-01-16 08:51:40 +05304756 /*If isAndroidPsEn is 1 then Host driver and above layers control the PS mechanism
4757 If Value set to 0 Driver/Core Stack internally control the Power saving mechanism */
4758 sme_SetHostPowerSave (pHddCtx->hHal, pConfig->isAndroidPsEn);
4759
Jeff Johnson295189b2012-06-20 16:38:30 -07004760 if (pConfig->fIsBmpsEnabled)
4761 {
4762 sme_EnablePowerSave (pHddCtx->hHal, ePMC_BEACON_MODE_POWER_SAVE);
4763 }
4764 else
4765 {
4766 sme_DisablePowerSave (pHddCtx->hHal, ePMC_BEACON_MODE_POWER_SAVE);
4767 }
4768
4769 bmpsParams.trafficMeasurePeriod = pConfig->nAutoBmpsTimerValue;
4770
4771 if (sme_SetConfigPowerSave(pHddCtx->hHal, ePMC_BEACON_MODE_POWER_SAVE, &bmpsParams)== eHAL_STATUS_FAILURE)
4772 {
Arif Hussain6d2a3322013-11-17 19:50:10 -08004773 hddLog(LOGE, "SetConfigPowerSave failed to set BMPS params");
Jeff Johnson295189b2012-06-20 16:38:30 -07004774 }
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004775
Jeff Johnson295189b2012-06-20 16:38:30 -07004776 if(pConfig->fIsAutoBmpsTimerEnabled)
4777 {
4778 sme_StartAutoBmpsTimer(pHddCtx->hHal);
4779 }
4780
4781}
4782
4783#ifdef WLAN_FEATURE_NEIGHBOR_ROAMING
4784static VOS_STATUS hdd_string_to_u8_array( char *str, tANI_U8 *intArray, tANI_U8 *len, tANI_U8 intArrayMaxLen )
4785{
4786 char *s = str;
4787
4788 if( str == NULL || intArray == NULL || len == NULL )
4789 {
4790 return VOS_STATUS_E_INVAL;
4791 }
4792 *len = 0;
4793
Jeff Johnson295189b2012-06-20 16:38:30 -07004794 while ( (s != NULL) && (*len < intArrayMaxLen) )
4795 {
4796 int val;
4797 //Increment length only if sscanf succesfully extracted one element.
4798 //Any other return value means error. Ignore it.
4799 if( sscanf(s, "%d", &val ) == 1 )
4800 {
4801 intArray[*len] = (tANI_U8) val;
4802 *len += 1;
4803 }
4804 s = strpbrk( s, "," );
4805 if( s )
4806 s++;
4807 }
Jeff Johnson295189b2012-06-20 16:38:30 -07004808
4809 return VOS_STATUS_SUCCESS;
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004810
Jeff Johnson295189b2012-06-20 16:38:30 -07004811}
4812#endif
4813
4814
4815v_BOOL_t hdd_update_config_dat( hdd_context_t *pHddCtx )
4816{
4817 v_BOOL_t fStatus = TRUE;
Gopichand Nakkala976e3252013-01-03 15:45:56 -08004818#ifdef WLAN_SOFTAP_VSTA_FEATURE
4819 tANI_U32 val;
4820#endif
Jeff Johnson295189b2012-06-20 16:38:30 -07004821
4822 hdd_config_t *pConfig = pHddCtx->cfg_ini;
Yue Maed390e72014-04-23 15:46:45 -07004823 tSirMacHTCapabilityInfo *htCapInfo;
4824 tANI_U32 temp32;
4825 tANI_U16 temp16;
Jeff Johnson295189b2012-06-20 16:38:30 -07004826
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004827 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_SHORT_GI_20MHZ,
Jeff Johnson295189b2012-06-20 16:38:30 -07004828 pConfig->ShortGI20MhzEnable, NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
4829 {
4830 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08004831 hddLog(LOGE, "Could not pass on WNI_CFG_SHORT_GI_20MHZ to CCM");
Jeff Johnson295189b2012-06-20 16:38:30 -07004832 }
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004833
4834 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_CAL_CONTROL, pConfig->Calibration,
Jeff Johnson295189b2012-06-20 16:38:30 -07004835 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
4836 {
4837 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08004838 hddLog(LOGE, "Could not pass on WNI_CFG_CAL_CONTROL to CCM");
Jeff Johnson295189b2012-06-20 16:38:30 -07004839 }
4840
4841 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_CAL_PERIOD, pConfig->CalibrationPeriod,
4842 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
4843 {
4844 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08004845 hddLog(LOGE, "Could not pass on WNI_CFG_CAL_PERIOD to CCM");
Jeff Johnson295189b2012-06-20 16:38:30 -07004846 }
4847
4848 if ( 0 != pConfig->Cfg1Id )
4849 {
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004850 if (ccmCfgSetInt(pHddCtx->hHal, pConfig->Cfg1Id, pConfig->Cfg1Value, NULL,
Jeff Johnson295189b2012-06-20 16:38:30 -07004851 eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
4852 {
4853 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08004854 hddLog(LOGE, "Could not pass on Cfg1Id to CCM");
Jeff Johnson295189b2012-06-20 16:38:30 -07004855 }
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004856
Jeff Johnson295189b2012-06-20 16:38:30 -07004857 }
4858
4859 if ( 0 != pConfig->Cfg2Id )
4860 {
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004861 if (ccmCfgSetInt(pHddCtx->hHal, pConfig->Cfg2Id, pConfig->Cfg2Value,
Jeff Johnson295189b2012-06-20 16:38:30 -07004862 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
4863 {
4864 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08004865 hddLog(LOGE, "Could not pass on Cfg2Id to CCM");
Jeff Johnson295189b2012-06-20 16:38:30 -07004866 }
4867 }
4868
4869 if ( 0 != pConfig->Cfg3Id )
4870 {
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004871 if (ccmCfgSetInt(pHddCtx->hHal, pConfig->Cfg3Id, pConfig->Cfg3Value,
Jeff Johnson295189b2012-06-20 16:38:30 -07004872 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
4873 {
4874 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08004875 hddLog(LOGE, "Could not pass on Cfg3Id to CCM");
Jeff Johnson295189b2012-06-20 16:38:30 -07004876 }
4877 }
4878
4879 if ( 0 != pConfig->Cfg4Id )
4880 {
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004881 if (ccmCfgSetInt(pHddCtx->hHal, pConfig->Cfg4Id, pConfig->Cfg4Value,
Jeff Johnson295189b2012-06-20 16:38:30 -07004882 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
4883 {
4884 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08004885 hddLog(LOGE, "Could not pass on Cfg4Id to CCM");
Jeff Johnson295189b2012-06-20 16:38:30 -07004886 }
4887 }
4888
4889 if ( 0 != pConfig->Cfg5Id )
4890 {
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004891 if (ccmCfgSetInt(pHddCtx->hHal, pConfig->Cfg5Id, pConfig->Cfg5Value,
Jeff Johnson295189b2012-06-20 16:38:30 -07004892 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
4893 {
4894 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08004895 hddLog(LOGE, "Could not pass on Cfg5Id to CCM");
Jeff Johnson295189b2012-06-20 16:38:30 -07004896 }
4897 }
4898
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004899 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_BA_AUTO_SETUP, pConfig->BlockAckAutoSetup,
Jeff Johnson295189b2012-06-20 16:38:30 -07004900 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
4901 {
4902 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08004903 hddLog(LOGE, "Could not pass on WNI_CFG_BA_AUTO_SETUP to CCM");
Jeff Johnson295189b2012-06-20 16:38:30 -07004904 }
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004905
4906 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_FIXED_RATE, pConfig->TxRate,
Jeff Johnson295189b2012-06-20 16:38:30 -07004907 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
4908 {
4909 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08004910 hddLog(LOGE, "Could not pass on WNI_CFG_FIXED_RATE to CCM");
Jeff Johnson295189b2012-06-20 16:38:30 -07004911 }
4912
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004913 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_MAX_RX_AMPDU_FACTOR,
Jeff Johnson295189b2012-06-20 16:38:30 -07004914 pConfig->MaxRxAmpduFactor, NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
4915 {
4916 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08004917 hddLog(LOGE,"Could not pass on WNI_CFG_HT_AMPDU_PARAMS_MAX_RX_AMPDU_FACTOR to CCM");
Jeff Johnson295189b2012-06-20 16:38:30 -07004918 }
4919
4920 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_SHORT_PREAMBLE, pConfig->fIsShortPreamble,
4921 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
4922 {
4923 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08004924 hddLog(LOGE,"Could not pass on WNI_CFG_SHORT_PREAMBLE to CCM");
Jeff Johnson295189b2012-06-20 16:38:30 -07004925 }
4926
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004927 if (pConfig->fIsAutoIbssBssid)
Jeff Johnson295189b2012-06-20 16:38:30 -07004928 {
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004929 if (ccmCfgSetStr(pHddCtx->hHal, WNI_CFG_BSSID, (v_U8_t *)"000000000000",
Jeff Johnson295189b2012-06-20 16:38:30 -07004930 sizeof(v_BYTE_t) * VOS_MAC_ADDR_SIZE, NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
4931 {
4932 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08004933 hddLog(LOGE,"Could not pass on WNI_CFG_BSSID to CCM");
Jeff Johnson295189b2012-06-20 16:38:30 -07004934 }
4935 }
4936 else
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004937 {
Jeff Johnson295189b2012-06-20 16:38:30 -07004938 if ( VOS_FALSE == vos_is_macaddr_group( &pConfig->IbssBssid ))
4939 {
4940 VOS_TRACE( VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_MED,
Arif Hussain24bafea2013-11-15 15:10:03 -08004941 "MAC Addr (IBSS BSSID) read from Registry is: " MAC_ADDRESS_STR,
4942 MAC_ADDR_ARRAY(pConfig->IbssBssid.bytes));
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004943 if (ccmCfgSetStr(pHddCtx->hHal, WNI_CFG_BSSID, pConfig->IbssBssid.bytes,
Jeff Johnson295189b2012-06-20 16:38:30 -07004944 sizeof(v_BYTE_t) * VOS_MAC_ADDR_SIZE, NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
4945 {
4946 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08004947 hddLog(LOGE,"Could not pass on WNI_CFG_BSSID to CCM");
Jeff Johnson295189b2012-06-20 16:38:30 -07004948 }
4949 }
4950 else
4951 {
4952 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08004953 hddLog(LOGE,"Could not pass on WNI_CFG_BSSID to CCM");
Jeff Johnson295189b2012-06-20 16:38:30 -07004954 }
4955 }
4956
Naresh Jayaram3df09eb2013-12-18 17:39:04 +05304957 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_PASSIVE_MINIMUM_CHANNEL_TIME,
4958 pConfig->nPassiveMinChnTime, NULL,
4959 eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
4960 {
4961 fStatus = FALSE;
4962 hddLog(LOGE, "Could not pass on WNI_CFG_PASSIVE_MINIMUM_CHANNEL_TIME"
4963 " to CCM\n");
4964 }
4965
4966 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_PASSIVE_MAXIMUM_CHANNEL_TIME,
4967 pConfig->nPassiveMaxChnTime, NULL,
4968 eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
4969 {
4970 fStatus = FALSE;
4971 hddLog(LOGE, "Could not pass on WNI_CFG_PASSIVE_MAXIMUM_CHANNEL_TIME"
4972 " to CCM\n");
4973 }
4974
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004975 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_BEACON_INTERVAL, pConfig->nBeaconInterval,
Jeff Johnson295189b2012-06-20 16:38:30 -07004976 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
4977 {
4978 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08004979 hddLog(LOGE, "Could not pass on WNI_CFG_BEACON_INTERVAL to CCM");
Jeff Johnson295189b2012-06-20 16:38:30 -07004980 }
4981
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004982 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_MAX_PS_POLL, pConfig->nMaxPsPoll,
Jeff Johnson295189b2012-06-20 16:38:30 -07004983 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
4984 {
4985 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08004986 hddLog(LOGE, "Could not pass on WNI_CFG_MAX_PS_POLL to CCM");
Jeff Johnson295189b2012-06-20 16:38:30 -07004987 }
4988
4989 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_CURRENT_RX_ANTENNA, pConfig-> nRxAnt, NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
4990 {
4991 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08004992 hddLog(LOGE, "Failure: Could not pass on WNI_CFG_CURRENT_RX_ANTENNA configuration info to HAL" );
Jeff Johnson295189b2012-06-20 16:38:30 -07004993 }
4994
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08004995 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_LOW_GAIN_OVERRIDE, pConfig->fIsLowGainOverride,
Jeff Johnson295189b2012-06-20 16:38:30 -07004996 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
4997 {
4998 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08004999 hddLog(LOGE, "Could not pass on WNI_CFG_LOW_GAIN_OVERRIDE to HAL");
Jeff Johnson295189b2012-06-20 16:38:30 -07005000 }
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08005001
Jeff Johnson295189b2012-06-20 16:38:30 -07005002 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_RSSI_FILTER_PERIOD, pConfig->nRssiFilterPeriod,
5003 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
5004 {
5005 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08005006 hddLog(LOGE, "Could not pass on WNI_CFG_RSSI_FILTER_PERIOD to CCM");
Jeff Johnson295189b2012-06-20 16:38:30 -07005007 }
5008
Jeff Johnson295189b2012-06-20 16:38:30 -07005009 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_IGNORE_DTIM, pConfig->fIgnoreDtim,
5010 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
5011 {
5012 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08005013 hddLog(LOGE, "Could not pass on WNI_IGNORE_DTIM configuration to CCM" );
Jeff Johnson295189b2012-06-20 16:38:30 -07005014 }
5015
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08005016 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_PS_ENABLE_HEART_BEAT, pConfig->fEnableFwHeartBeatMonitoring,
Jeff Johnson295189b2012-06-20 16:38:30 -07005017 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
5018 {
5019 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08005020 hddLog(LOGE, "Failure: Could not pass on WNI_CFG_PS_HEART_BEAT configuration info to CCM");
Jeff Johnson295189b2012-06-20 16:38:30 -07005021 }
5022
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08005023 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_PS_ENABLE_BCN_FILTER, pConfig->fEnableFwBeaconFiltering,
Jeff Johnson295189b2012-06-20 16:38:30 -07005024 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
5025 {
5026 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08005027 hddLog(LOGE, "Failure: Could not pass on WNI_CFG_PS_BCN_FILTER configuration info to CCM");
Jeff Johnson295189b2012-06-20 16:38:30 -07005028 }
5029
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08005030 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_PS_ENABLE_RSSI_MONITOR, pConfig->fEnableFwRssiMonitoring,
Jeff Johnson295189b2012-06-20 16:38:30 -07005031 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
5032 {
5033 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08005034 hddLog(LOGE, "Failure: Could not pass on WNI_CFG_PS_RSSI_MONITOR configuration info to CCM");
Jeff Johnson295189b2012-06-20 16:38:30 -07005035 }
5036
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08005037 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_PS_DATA_INACTIVITY_TIMEOUT, pConfig->nDataInactivityTimeout,
Jeff Johnson295189b2012-06-20 16:38:30 -07005038 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
5039 {
5040 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08005041 hddLog(LOGE,"Failure: Could not pass on WNI_CFG_PS_DATA_INACTIVITY_TIMEOUT configuration info to CCM");
Jeff Johnson295189b2012-06-20 16:38:30 -07005042 }
5043
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08005044 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_NTH_BEACON_FILTER, pConfig->nthBeaconFilter,
Jeff Johnson295189b2012-06-20 16:38:30 -07005045 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
5046 {
5047 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08005048 hddLog(LOGE,"Failure: Could not pass on WNI_CFG_NTH_BEACON_FILTER configuration info to CCM");
Jeff Johnson295189b2012-06-20 16:38:30 -07005049 }
5050
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08005051 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_ENABLE_LTE_COEX, pConfig->enableLTECoex,
Jeff Johnson295189b2012-06-20 16:38:30 -07005052 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
5053 {
5054 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08005055 hddLog(LOGE, "Could not pass on WNI_CFG_ENABLE_LTE_COEX to CCM");
Jeff Johnson295189b2012-06-20 16:38:30 -07005056 }
5057
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08005058 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_ENABLE_PHY_AGC_LISTEN_MODE, pConfig->nEnableListenMode,
Jeff Johnson295189b2012-06-20 16:38:30 -07005059 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
5060 {
5061 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08005062 hddLog(LOGE, "Could not pass on WNI_CFG_ENABLE_PHY_AGC_LISTEN_MODE to CCM");
Jeff Johnson295189b2012-06-20 16:38:30 -07005063 }
5064
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08005065 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_AP_KEEP_ALIVE_TIMEOUT, pConfig->apKeepAlivePeriod,
Jeff Johnson295189b2012-06-20 16:38:30 -07005066 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
5067 {
5068 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08005069 hddLog(LOGE, "Could not pass on WNI_CFG_AP_KEEP_ALIVE_TIMEOUT to CCM");
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08005070 }
Jeff Johnson295189b2012-06-20 16:38:30 -07005071
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08005072 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_GO_KEEP_ALIVE_TIMEOUT, pConfig->goKeepAlivePeriod,
Jeff Johnson295189b2012-06-20 16:38:30 -07005073 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
5074 {
5075 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08005076 hddLog(LOGE, "Could not pass on WNI_CFG_GO_KEEP_ALIVE_TIMEOUT to CCM");
Jeff Johnson295189b2012-06-20 16:38:30 -07005077 }
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08005078
Sejal Chauhanbcde8bc2013-03-04 18:06:36 +05305079 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_AP_LINK_MONITOR_TIMEOUT, pConfig->apLinkMonitorPeriod,
5080 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
5081 {
5082 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08005083 hddLog(LOGE, "Could not pass on WNI_CFG_AP_LINK_MONITOR_TIMEOUT to CCM");
Sejal Chauhanbcde8bc2013-03-04 18:06:36 +05305084 }
5085
Madan Mohan Koyyalamudi2558bc92013-08-24 16:54:31 +05305086 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_GO_LINK_MONITOR_TIMEOUT, pConfig->goLinkMonitorPeriod,
5087 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
5088 {
5089 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08005090 hddLog(LOGE, "Could not pass on WNI_CFG_GO_LINK_MONITOR_TIMEOUT to CCM");
Madan Mohan Koyyalamudi2558bc92013-08-24 16:54:31 +05305091 }
5092
5093
Jeff Johnson295189b2012-06-20 16:38:30 -07005094#if defined WLAN_FEATURE_VOWIFI
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08005095 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_RRM_ENABLED, pConfig->fRrmEnable,
Jeff Johnson295189b2012-06-20 16:38:30 -07005096 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
5097 {
5098 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08005099 hddLog(LOGE,"Failure: Could not pass on WNI_CFG_RRM_ENABLE configuration info to CCM");
Jeff Johnson295189b2012-06-20 16:38:30 -07005100 }
5101
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08005102 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_RRM_OPERATING_CHAN_MAX, pConfig->nInChanMeasMaxDuration,
Jeff Johnson295189b2012-06-20 16:38:30 -07005103 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
5104 {
5105 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08005106 hddLog(LOGE,"Failure: Could not pass on WNI_CFG_RRM_OPERATING_CHAN_MAX configuration info to CCM");
Jeff Johnson295189b2012-06-20 16:38:30 -07005107 }
5108
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08005109 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_RRM_NON_OPERATING_CHAN_MAX, pConfig->nOutChanMeasMaxDuration,
Jeff Johnson295189b2012-06-20 16:38:30 -07005110 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
5111 {
5112 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08005113 hddLog(LOGE,"Failure: Could not pass on WNI_CFG_RRM_OUT_CHAN_MAX configuration info to CCM");
Jeff Johnson295189b2012-06-20 16:38:30 -07005114 }
5115
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08005116 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_MCAST_BCAST_FILTER_SETTING, pConfig->mcastBcastFilterSetting,
Jeff Johnson295189b2012-06-20 16:38:30 -07005117 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
5118#endif
5119
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08005120 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_SINGLE_TID_RC, pConfig->bSingleTidRc,
Jeff Johnson295189b2012-06-20 16:38:30 -07005121 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
5122 {
5123 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08005124 hddLog(LOGE,"Failure: Could not pass on WNI_CFG_SINGLE_TID_RC configuration info to CCM");
Jeff Johnson295189b2012-06-20 16:38:30 -07005125 }
5126
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08005127 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_TELE_BCN_WAKEUP_EN, pConfig->teleBcnWakeupEn,
Jeff Johnson295189b2012-06-20 16:38:30 -07005128 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
5129 {
5130 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08005131 hddLog(LOGE,"Failure: Could not pass on WNI_CFG_TELE_BCN_WAKEUP_EN configuration info to CCM" );
Jeff Johnson295189b2012-06-20 16:38:30 -07005132 }
5133
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08005134 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_TELE_BCN_TRANS_LI, pConfig->nTeleBcnTransListenInterval,
Jeff Johnson295189b2012-06-20 16:38:30 -07005135 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
5136 {
5137 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08005138 hddLog(LOGE,"Failure: Could not pass on WNI_CFG_TELE_BCN_TRANS_LI configuration info to CCM" );
Jeff Johnson295189b2012-06-20 16:38:30 -07005139 }
5140
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08005141 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_TELE_BCN_MAX_LI, pConfig->nTeleBcnMaxListenInterval,
Jeff Johnson295189b2012-06-20 16:38:30 -07005142 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
5143 {
5144 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08005145 hddLog(LOGE,"Failure: Could not pass on WNI_CFG_TELE_BCN_MAX_LI configuration info to CCM" );
Jeff Johnson295189b2012-06-20 16:38:30 -07005146 }
5147
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08005148 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_TELE_BCN_TRANS_LI_IDLE_BCNS, pConfig->nTeleBcnTransLiNumIdleBeacons,
Jeff Johnson295189b2012-06-20 16:38:30 -07005149 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
5150 {
5151 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08005152 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 -07005153 }
5154
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08005155 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_TELE_BCN_MAX_LI_IDLE_BCNS, pConfig->nTeleBcnMaxLiNumIdleBeacons,
Jeff Johnson295189b2012-06-20 16:38:30 -07005156 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
5157 {
5158 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08005159 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 -07005160 }
5161
5162 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_RF_SETTLING_TIME_CLK, pConfig->rfSettlingTimeUs,
5163 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
5164 {
5165 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08005166 hddLog(LOGE,"Failure: Could not pass on WNI_CFG_RF_SETTLING_TIME_CLK configuration info to CCM" );
Jeff Johnson295189b2012-06-20 16:38:30 -07005167 }
5168
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08005169 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_INFRA_STA_KEEP_ALIVE_PERIOD, pConfig->infraStaKeepAlivePeriod,
Jeff Johnson295189b2012-06-20 16:38:30 -07005170 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
5171 {
5172 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08005173 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 -07005174 }
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08005175 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_DYNAMIC_PS_POLL_VALUE, pConfig->dynamicPsPollValue,
Jeff Johnson295189b2012-06-20 16:38:30 -07005176 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
5177 {
5178 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08005179 hddLog(LOGE,"Failure: Could not pass on WNI_CFG_DYNAMIC_PS_POLL_VALUE configuration info to CCM" );
Jeff Johnson295189b2012-06-20 16:38:30 -07005180 }
5181
5182 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_PS_NULLDATA_AP_RESP_TIMEOUT, pConfig->nNullDataApRespTimeout,
5183 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
5184 {
5185 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08005186 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 -08005187 }
Jeff Johnson295189b2012-06-20 16:38:30 -07005188
Jeff Johnsoneed2dca2013-02-22 21:18:46 -08005189 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_AP_DATA_AVAIL_POLL_PERIOD, pConfig->apDataAvailPollPeriodInMs,
Jeff Johnson295189b2012-06-20 16:38:30 -07005190 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
Jeff Johnsoneed2dca2013-02-22 21:18:46 -08005191 {
5192 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08005193 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 -08005194 }
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08005195 if(ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_FRAGMENTATION_THRESHOLD, pConfig->FragmentationThreshold,
Jeff Johnson295189b2012-06-20 16:38:30 -07005196 NULL, eANI_BOOLEAN_FALSE) == eHAL_STATUS_FAILURE)
5197 {
5198 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08005199 hddLog(LOGE,"Failure: Could not pass on WNI_CFG_FRAGMENTATION_THRESHOLD configuration info to CCM" );
Jeff Johnson295189b2012-06-20 16:38:30 -07005200 }
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08005201 if(ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_RTS_THRESHOLD, pConfig->RTSThreshold,
Jeff Johnson295189b2012-06-20 16:38:30 -07005202 NULL, eANI_BOOLEAN_FALSE) == eHAL_STATUS_FAILURE)
5203 {
5204 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08005205 hddLog(LOGE,"Failure: Could not pass on WNI_CFG_RTS_THRESHOLD configuration info to CCM" );
Jeff Johnson295189b2012-06-20 16:38:30 -07005206 }
5207
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08005208 if(ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_11D_ENABLED, pConfig->Is11dSupportEnabled,
Jeff Johnson295189b2012-06-20 16:38:30 -07005209 NULL, eANI_BOOLEAN_FALSE) == eHAL_STATUS_FAILURE)
5210 {
5211 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08005212 hddLog(LOGE,"Failure: Could not pass on WNI_CFG_11D_ENABLED configuration info to CCM" );
Jeff Johnson295189b2012-06-20 16:38:30 -07005213 }
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08005214 if(ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_HEART_BEAT_THRESHOLD, pConfig->HeartbeatThresh24,
Jeff Johnson295189b2012-06-20 16:38:30 -07005215 NULL, eANI_BOOLEAN_FALSE) == eHAL_STATUS_FAILURE)
5216 {
5217 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08005218 hddLog(LOGE,"Failure: Could not pass on WNI_CFG_HEART_BEAT_THRESHOLD configuration info to CCM" );
Jeff Johnson295189b2012-06-20 16:38:30 -07005219 }
5220
Jeff Johnson295189b2012-06-20 16:38:30 -07005221 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_AP_DATA_AVAIL_POLL_PERIOD, pConfig->apDataAvailPollPeriodInMs,
5222 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
5223 {
5224 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08005225 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 -07005226 }
5227
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08005228 if(ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_ENABLE_CLOSE_LOOP,
Jeff Johnson295189b2012-06-20 16:38:30 -07005229 pConfig->enableCloseLoop, NULL, eANI_BOOLEAN_FALSE)
5230 ==eHAL_STATUS_FAILURE)
5231 {
5232 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08005233 hddLog(LOGE, "Could not pass on WNI_CFG_ENABLE_CLOSE_LOOP to CCM");
Jeff Johnson295189b2012-06-20 16:38:30 -07005234 }
5235
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08005236 if(ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_TX_PWR_CTRL_ENABLE,
Jeff Johnson295189b2012-06-20 16:38:30 -07005237 pConfig->enableAutomaticTxPowerControl, NULL, eANI_BOOLEAN_FALSE)
5238 ==eHAL_STATUS_FAILURE)
5239 {
5240 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08005241 hddLog(LOGE, "Could not pass on WNI_CFG_TX_PWR_CTRL_ENABLE to CCM");
Jeff Johnson295189b2012-06-20 16:38:30 -07005242 }
5243
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08005244 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_SHORT_GI_40MHZ,
Jeff Johnson295189b2012-06-20 16:38:30 -07005245 pConfig->ShortGI40MhzEnable, NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
5246 {
5247 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08005248 hddLog(LOGE, "Could not pass on WNI_CFG_SHORT_GI_40MHZ to CCM");
Jeff Johnson295189b2012-06-20 16:38:30 -07005249 }
5250
Jeff Johnsond13512a2012-07-17 11:42:19 -07005251
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08005252 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_ENABLE_MC_ADDR_LIST, pConfig->fEnableMCAddrList,
Jeff Johnsond13512a2012-07-17 11:42:19 -07005253 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
5254 {
5255 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08005256 hddLog(LOGE, "Could not pass on WNI_CFG_ENABLE_MC_ADDR_LIST to CCM");
Jeff Johnsond13512a2012-07-17 11:42:19 -07005257 }
5258
Jeff Johnsone7245742012-09-05 17:12:55 -07005259#ifdef WLAN_FEATURE_11AC
5260 /* Based on cfg.ini, update the Basic MCS set, RX/TX MCS map in the cfg.dat */
5261 /* valid values are 0(MCS0-7), 1(MCS0-8), 2(MCS0-9) */
5262 /* we update only the least significant 2 bits in the corresponding fields */
5263 if( (pConfig->dot11Mode == eHDD_DOT11_MODE_AUTO) ||
5264 (pConfig->dot11Mode == eHDD_DOT11_MODE_11ac_ONLY) ||
5265 (pConfig->dot11Mode == eHDD_DOT11_MODE_11ac) )
5266 {
5267 {
5268 tANI_U32 temp = 0;
5269
5270 ccmCfgGetInt(pHddCtx->hHal, WNI_CFG_VHT_BASIC_MCS_SET, &temp);
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08005271 temp = (temp & 0xFFFC) | pConfig->vhtRxMCS;
Jeff Johnsone7245742012-09-05 17:12:55 -07005272
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08005273 if(ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_VHT_BASIC_MCS_SET,
Jeff Johnsone7245742012-09-05 17:12:55 -07005274 temp, NULL, eANI_BOOLEAN_FALSE)
5275 ==eHAL_STATUS_FAILURE)
5276 {
5277 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08005278 hddLog(LOGE, "Could not pass on WNI_CFG_VHT_BASIC_MCS_SET to CCM");
Jeff Johnsone7245742012-09-05 17:12:55 -07005279 }
5280
5281 ccmCfgGetInt(pHddCtx->hHal, WNI_CFG_VHT_RX_MCS_MAP, &temp);
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08005282 temp = (temp & 0xFFFC) | pConfig->vhtRxMCS;
Jeff Johnsone7245742012-09-05 17:12:55 -07005283
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08005284 if(ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_VHT_RX_MCS_MAP,
Jeff Johnsone7245742012-09-05 17:12:55 -07005285 temp, NULL, eANI_BOOLEAN_FALSE)
5286 ==eHAL_STATUS_FAILURE)
5287 {
5288 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08005289 hddLog(LOGE, "Could not pass on WNI_CFG_VHT_RX_MCS_MAP to CCM");
Jeff Johnsone7245742012-09-05 17:12:55 -07005290 }
5291
5292 ccmCfgGetInt(pHddCtx->hHal, WNI_CFG_VHT_TX_MCS_MAP, &temp);
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08005293 temp = (temp & 0xFFFC) | pConfig->vhtTxMCS;
Jeff Johnsone7245742012-09-05 17:12:55 -07005294
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08005295 if(ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_VHT_TX_MCS_MAP,
Jeff Johnsone7245742012-09-05 17:12:55 -07005296 temp, NULL, eANI_BOOLEAN_FALSE)
5297 ==eHAL_STATUS_FAILURE)
5298 {
5299 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08005300 hddLog(LOGE, "Could not pass on WNI_CFG_VHT_TX_MCS_MAP to CCM");
Jeff Johnsone7245742012-09-05 17:12:55 -07005301 }
Praveen Kumar Sirisilla4cf7d262013-12-04 17:22:53 -08005302 /* Currently shortGI40Mhz is used for shortGI80Mhz */
5303 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_VHT_SHORT_GI_80MHZ,
5304 pConfig->ShortGI40MhzEnable, NULL, eANI_BOOLEAN_FALSE)
5305 == eHAL_STATUS_FAILURE)
5306 {
5307 fStatus = FALSE;
5308 hddLog(LOGE, "Could not pass WNI_VHT_SHORT_GI_80MHZ to CCM\n");
5309 }
Abhishek Singhaa63bf22014-10-30 17:09:45 +05305310 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_VHT_AMPDU_LEN_EXPONENT,
5311 pConfig->gVhtMaxAmpduLenExp, NULL, eANI_BOOLEAN_FALSE)
5312 ==eHAL_STATUS_FAILURE)
5313 {
5314 fStatus = FALSE;
5315 hddLog(LOGE, "Could not pass on WNI_CFG_VHT_AMPDU_LEN_EXPONENT to CCM");
5316 }
5317
Jeff Johnsone7245742012-09-05 17:12:55 -07005318 }
5319 }
5320#endif
5321
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08005322 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_NUM_BUFF_ADVERT,pConfig->numBuffAdvert,
Madan Mohan Koyyalamudidd11eaf2012-11-02 16:04:21 -07005323 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
5324 {
5325 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08005326 hddLog(LOGE, "Could not pass on WNI_CFG_NUM_BUFF_ADVERT to CCM");
Madan Mohan Koyyalamudidd11eaf2012-11-02 16:04:21 -07005327 }
5328
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08005329 if(ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_HT_RX_STBC,
Pratik Bhalgat6bfd1422012-11-22 17:09:40 +05305330 pConfig->enableRxSTBC, NULL, eANI_BOOLEAN_FALSE)
5331 ==eHAL_STATUS_FAILURE)
5332 {
5333 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08005334 hddLog(LOGE, "Could not pass on WNI_CFG_HT_RX_STBC to CCM");
Pratik Bhalgat6bfd1422012-11-22 17:09:40 +05305335 }
5336
Yue Maed390e72014-04-23 15:46:45 -07005337 ccmCfgGetInt(pHddCtx->hHal, WNI_CFG_HT_CAP_INFO, &temp32);
5338 temp16 = temp32 & 0xffff;
5339 htCapInfo = (tSirMacHTCapabilityInfo *)&temp16;
5340 htCapInfo->rxSTBC = pConfig->enableRxSTBC;
5341 temp32 = temp16;
Pratik Bhalgat6bfd1422012-11-22 17:09:40 +05305342
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08005343 if(ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_HT_CAP_INFO,
Yue Maed390e72014-04-23 15:46:45 -07005344 temp32, NULL, eANI_BOOLEAN_FALSE)
Pratik Bhalgat6bfd1422012-11-22 17:09:40 +05305345 ==eHAL_STATUS_FAILURE)
5346 {
5347 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08005348 hddLog(LOGE, "Could not pass on WNI_CFG_HT_CAP_INFO to CCM");
Pratik Bhalgat6bfd1422012-11-22 17:09:40 +05305349 }
5350
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08005351 if(ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_VHT_RXSTBC,
Pratik Bhalgat6bfd1422012-11-22 17:09:40 +05305352 pConfig->enableRxSTBC, NULL, eANI_BOOLEAN_FALSE)
5353 ==eHAL_STATUS_FAILURE)
5354 {
5355 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08005356 hddLog(LOGE, "Could not pass on WNI_CFG_VHT_RXSTBC to CCM");
Pratik Bhalgat6bfd1422012-11-22 17:09:40 +05305357 }
Gopichand Nakkala976e3252013-01-03 15:45:56 -08005358
5359#ifdef WLAN_SOFTAP_VSTA_FEATURE
5360 if(pConfig->fEnableVSTASupport)
5361 {
5362 ccmCfgGetInt(pHddCtx->hHal, WNI_CFG_ASSOC_STA_LIMIT, &val);
5363 if( val <= WNI_CFG_ASSOC_STA_LIMIT_STADEF)
5364 val = WNI_CFG_ASSOC_STA_LIMIT_STAMAX;
5365 }
5366 else
5367 {
5368 val = WNI_CFG_ASSOC_STA_LIMIT_STADEF;
5369 }
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08005370 if(ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_ASSOC_STA_LIMIT, val,
Gopichand Nakkala976e3252013-01-03 15:45:56 -08005371 NULL, eANI_BOOLEAN_FALSE) == eHAL_STATUS_FAILURE)
5372 {
5373 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08005374 hddLog(LOGE,"Failure: Could not pass on WNI_CFG_ASSOC_STA_LIMIT configuration info to CCM" );
Gopichand Nakkala976e3252013-01-03 15:45:56 -08005375 }
5376#endif
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08005377 if(ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_ENABLE_LPWR_IMG_TRANSITION,
Madan Mohan Koyyalamudi0d40e662012-12-07 14:24:14 -08005378 pConfig->enableLpwrImgTransition, NULL, eANI_BOOLEAN_FALSE)
5379 ==eHAL_STATUS_FAILURE)
5380 {
5381 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08005382 hddLog(LOGE, "Could not pass on WNI_CFG_ENABLE_LPWR_IMG_TRANSITION to CCM");
Madan Mohan Koyyalamudi0d40e662012-12-07 14:24:14 -08005383 }
Pratik Bhalgat6bfd1422012-11-22 17:09:40 +05305384
Madan Mohan Koyyalamudi01cba042013-01-10 21:56:05 -08005385 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_ENABLE_MCC_ADAPTIVE_SCHED, pConfig->enableMCCAdaptiveScheduler,
5386 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
5387 {
5388 fStatus = FALSE;
Arif Hussain6d2a3322013-11-17 19:50:10 -08005389 hddLog(LOGE, "Could not pass on WNI_CFG_ENABLE_MCC_ADAPTIVE_SCHED to CCM");
Madan Mohan Koyyalamudi01cba042013-01-10 21:56:05 -08005390 }
Leela V Kiran Kumar Reddy Chiralab1f7d342013-02-11 00:27:02 -08005391 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_DISABLE_LDPC_WITH_TXBF_AP, pConfig->disableLDPCWithTxbfAP,
5392 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
5393 {
5394 fStatus = FALSE;
Kiran Kumar Lokere1f39e952013-04-03 18:34:30 -07005395 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 -08005396 }
Kiran Kumar Lokere1f39e952013-04-03 18:34:30 -07005397
5398 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_DYNAMIC_THRESHOLD_ZERO, pConfig->retryLimitZero,
5399 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
5400 {
5401 fStatus = FALSE;
5402 hddLog(LOGE, "Could not pass on WNI_CFG_DYNAMIC_THRESHOLD_ZERO to CCM");
5403 }
5404
5405 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_DYNAMIC_THRESHOLD_ONE, pConfig->retryLimitOne,
5406 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
5407 {
5408 fStatus = FALSE;
5409 hddLog(LOGE, "Could not pass on WNI_CFG_DYNAMIC_THRESHOLD_ONE to CCM");
5410 }
5411
5412 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_DYNAMIC_THRESHOLD_TWO, pConfig->retryLimitTwo,
5413 NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
5414 {
5415 fStatus = FALSE;
5416 hddLog(LOGE, "Could not pass on WNI_CFG_DYNAMIC_THRESHOLD_TWO to CCM");
5417 }
5418
Gopichand Nakkala42bc89e2013-05-27 12:49:09 +05305419 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_MAX_MEDIUM_TIME, pConfig->cfgMaxMediumTime,
5420 NULL, eANI_BOOLEAN_FALSE) == eHAL_STATUS_FAILURE)
5421 {
5422 fStatus = FALSE;
5423 hddLog(LOGE, "Could not pass on WNI_CFG_MAX_MEDIUM_TIME to CCM");
5424 }
5425
Gopichand Nakkala79ff85d2013-05-27 17:05:29 +05305426#ifdef FEATURE_WLAN_TDLS
5427
Sudhir Sattayappa Kohallida1be202013-07-11 12:04:30 -07005428 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_TDLS_QOS_WMM_UAPSD_MASK,
5429 pConfig->fTDLSUapsdMask, NULL,
5430 eANI_BOOLEAN_FALSE) == eHAL_STATUS_FAILURE)
Gopichand Nakkala79ff85d2013-05-27 17:05:29 +05305431 {
5432 fStatus = FALSE;
Sudhir Sattayappa Kohallida1be202013-07-11 12:04:30 -07005433 hddLog(LOGE, "Could not pass on WNI_CFG_TDLS_QOS_WMM_UAPSD_MASK to CCM");
Gopichand Nakkala79ff85d2013-05-27 17:05:29 +05305434 }
Pradeep Reddy POTTETIedaeb5f2014-05-22 23:34:41 +05305435
5436 if (TRUE == pConfig->fEnableTDLSScanCoexSupport)
5437 {
5438 /* TDLSScanCoexistance feature is supported when the DUT acts as only
5439 * the Sleep STA and hence explicitly disable the BufferSta capability
5440 * on the DUT. DUT's Buffer STA capability is explicitly disabled to
5441 * ensure that the TDLS peer shall not go to TDLS power save mode.
5442 */
5443 pConfig->fEnableTDLSBufferSta = FALSE;
5444 }
Sudhir Sattayappa Kohallida1be202013-07-11 12:04:30 -07005445 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_TDLS_BUF_STA_ENABLED,
5446 pConfig->fEnableTDLSBufferSta, NULL,
5447 eANI_BOOLEAN_FALSE) == eHAL_STATUS_FAILURE)
Gopichand Nakkala79ff85d2013-05-27 17:05:29 +05305448 {
5449 fStatus = FALSE;
Sudhir Sattayappa Kohallida1be202013-07-11 12:04:30 -07005450 hddLog(LOGE, "Could not pass on WNI_CFG_TDLS_BUF_STA_ENABLED to CCM");
Gopichand Nakkala79ff85d2013-05-27 17:05:29 +05305451 }
Sudhir Sattayappa Kohallida1be202013-07-11 12:04:30 -07005452 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_TDLS_PUAPSD_INACT_TIME,
5453 pConfig->fTDLSPuapsdInactivityTimer, NULL,
5454 eANI_BOOLEAN_FALSE) == eHAL_STATUS_FAILURE)
Gopichand Nakkala79ff85d2013-05-27 17:05:29 +05305455 {
5456 fStatus = FALSE;
Sudhir Sattayappa Kohallida1be202013-07-11 12:04:30 -07005457 hddLog(LOGE, "Could not pass on WNI_CFG_TDLS_PUAPSD_INACT_TIME to CCM");
Gopichand Nakkala79ff85d2013-05-27 17:05:29 +05305458 }
Sudhir Sattayappa Kohallida1be202013-07-11 12:04:30 -07005459 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_TDLS_RX_FRAME_THRESHOLD,
5460 pConfig->fTDLSRxFrameThreshold, NULL,
5461 eANI_BOOLEAN_FALSE) == eHAL_STATUS_FAILURE)
Gopichand Nakkala79ff85d2013-05-27 17:05:29 +05305462 {
5463 fStatus = FALSE;
Sudhir Sattayappa Kohallida1be202013-07-11 12:04:30 -07005464 hddLog(LOGE, "Could not pass on WNI_CFG_TDLS_RX_FRAME_THRESHOLD to CCM");
Gopichand Nakkala79ff85d2013-05-27 17:05:29 +05305465 }
Naresh Jayaramf73f3762014-02-04 16:13:20 +05305466
5467 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_TDLS_OFF_CHANNEL_ENABLED,
5468 pConfig->fEnableTDLSOffChannel, NULL,
5469 eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
5470 {
5471 fStatus = FALSE;
5472 hddLog(LOGE, "Could not pass on WNI_CFG_TDLS_BUF_STA_ENABLED to CCM\n");
5473 }
5474
Pradeep Reddy POTTETIa9c80d52014-05-09 18:05:29 +05305475 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_TDLS_WMM_MODE_ENABLED,
5476 pConfig->fEnableTDLSWmmMode, NULL,
5477 eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
5478 {
5479 fStatus = FALSE;
5480 hddLog(LOGE, "Could not pass on WNI_CFG_TDLS_WMM_MODE_ENABLED to CCM\n");
5481 }
5482
Gopichand Nakkala79ff85d2013-05-27 17:05:29 +05305483#endif
5484
Sudhir Sattayappa Kohallida1be202013-07-11 12:04:30 -07005485 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_ENABLE_ADAPT_RX_DRAIN,
5486 pConfig->fEnableAdaptRxDrain, NULL,
5487 eANI_BOOLEAN_FALSE) == eHAL_STATUS_FAILURE)
5488 {
5489 fStatus = FALSE;
5490 hddLog(LOGE, "Could not pass on WNI_CFG_ENABLE_ADAPT_RX_DRAIN to CCM");
5491 }
Yue Ma0fd23872013-08-01 15:56:47 -07005492
5493 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_FLEX_CONNECT_POWER_FACTOR,
5494 pConfig->flexConnectPowerFactor, NULL,
5495 eANI_BOOLEAN_FALSE) == eHAL_STATUS_FAILURE)
5496 {
5497 fStatus = FALSE;
5498 hddLog(LOGE, "Failure: Could not pass on "
5499 "WNI_CFG_FLEX_CONNECT_POWER_FACTOR to CCM");
5500 }
5501
Madan Mohan Koyyalamudica454572013-08-07 19:57:03 +05305502 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_ANTENNA_DIVESITY,
5503 pConfig->antennaDiversity, NULL,
5504 eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
5505 {
5506 fStatus = FALSE;
5507 hddLog(LOGE, "Could not pass on WNI_CFG_ANTENNA_DIVESITY to CCM");
5508 }
5509
Kiet Lam4bbd3cb2013-11-07 20:03:49 +05305510 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_ATH_DISABLE,
5511 pConfig->cfgAthDisable, NULL,
5512 eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
5513 {
5514 fStatus = FALSE;
5515 hddLog(LOGE, "Could not pass on WNI_CFG_ATH_DISABLE to CCM");
5516 }
c_hpothu6d7dc922013-12-02 12:36:41 +05305517
5518 if (ccmCfgSetInt(pHddCtx->hHal,
5519 WNI_CFG_BTC_ACTIVE_WLAN_LEN,
5520 pConfig->cfgBtcActiveWlanLen,
5521 NULL, eANI_BOOLEAN_FALSE) == eHAL_STATUS_FAILURE)
5522 {
5523 fStatus = FALSE;
5524 hddLog(LOGE, "Could not pass on WNI_BTC_ACTIVE_WLAN_LEN to CCM");
5525 }
5526
5527 if (ccmCfgSetInt(pHddCtx->hHal,
5528 WNI_CFG_BTC_ACTIVE_BT_LEN,
5529 pConfig->cfgBtcActiveBtLen,
5530 NULL, eANI_BOOLEAN_FALSE) == eHAL_STATUS_FAILURE)
5531 {
5532 fStatus = FALSE;
5533 hddLog(LOGE, "Could not pass on WNI_BTC_ACTIVE_BT_LEN to CCM");
5534 }
5535
5536 if (ccmCfgSetInt(pHddCtx->hHal,
5537 WNI_CFG_BTC_SAP_ACTIVE_WLAN_LEN,
5538 pConfig->cfgBtcSapActiveWlanLen,
5539 NULL, eANI_BOOLEAN_FALSE) == eHAL_STATUS_FAILURE)
5540 {
5541 fStatus = FALSE;
5542 hddLog(LOGE, "Could not pass on WNI_BTC_ACTIVE_WLAN_LEN to CCM");
5543 }
5544
5545 if (ccmCfgSetInt(pHddCtx->hHal,
5546 WNI_CFG_BTC_SAP_ACTIVE_BT_LEN,
5547 pConfig->cfgBtcSapActiveBtLen,
5548 NULL, eANI_BOOLEAN_FALSE) == eHAL_STATUS_FAILURE)
5549 {
5550 fStatus = FALSE;
5551 hddLog(LOGE, "Could not pass on WNI_BTC_ACTIVE_BT_LEN to CCM");
5552 }
AnjaneeDevi Kapparapu50239e32014-01-07 18:09:33 +05305553
5554 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_ASD_PROBE_INTERVAL,
5555 pConfig->gAsdProbeInterval, NULL,
5556 eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
5557 {
5558 fStatus = FALSE;
5559 hddLog(LOGE, "Could not pass on WNI_CFG_ASD_PROBE_INTERVAL to CCM");
5560 }
5561
5562 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_ASD_TRIGGER_THRESHOLD,
5563 pConfig->gAsdTriggerThreshold, NULL,
5564 eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
5565 {
5566 fStatus = FALSE;
5567 hddLog(LOGE, "Could not pass on WNI_CFG_ASD_TRIGGER_THRESHOLD to CCM");
5568 }
5569
5570 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_ASD_RTT_RSSI_HYST_THRESHOLD,
5571 pConfig->gAsdRTTRssiHystThreshold, NULL,
5572 eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
5573 {
5574 fStatus = FALSE;
5575 hddLog(LOGE, "Could not pass on WNI_CFG_ASD_RSSI_HYST_THRESHOLD to CCM");
5576 }
Leela Venkata Kiran Kumar Reddy Chirala22c159b2013-12-23 18:19:13 -08005577
5578 if (ccmCfgSetInt(pHddCtx->hHal,
5579 WNI_CFG_DEBUG_P2P_REMAIN_ON_CHANNEL,
5580 pConfig->debugP2pRemainOnChannel,
5581 NULL, eANI_BOOLEAN_FALSE) == eHAL_STATUS_FAILURE)
5582 {
5583 fStatus = FALSE;
5584 hddLog(LOGE,
5585 "Could not pass on WNI_CFG_DEBUG_P2P_REMAIN_ON_CHANNEL to CCM");
5586 }
5587
5588 if (ccmCfgSetInt(pHddCtx->hHal,
5589 WNI_CFG_BTC_CTS2S_DURING_SCO,
5590 pConfig->cfgBtcCTS2SduringSCO,
5591 NULL, eANI_BOOLEAN_FALSE) == eHAL_STATUS_FAILURE)
5592 {
5593 fStatus = FALSE;
5594 hddLog(LOGE, "Could not pass on WNI_CFG_BTC_CTS2S_DURING_SCO to CCM");
5595 }
Abhishek Singh8280c4e2014-02-18 13:26:34 +05305596
5597 if(ccmCfgSetInt(pHddCtx->hHal,
5598 WNI_CFG_DEFAULT_RATE_INDEX_24GHZ,
5599 defHddRateToDefCfgRate(pConfig->defaultRateIndex24Ghz),
5600 NULL, eANI_BOOLEAN_FALSE) == eHAL_STATUS_FAILURE)
5601 {
5602 fStatus = FALSE;
5603 hddLog(LOGE, "Could not pass on WNI_CFG_DEFAULT_RATE_INDEX_24GHZ to"
5604 " CCM\n");
5605 }
c_hpothu5bd1ae42014-03-07 20:28:22 +05305606
5607 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_RA_FILTER_ENABLE, pConfig->cfgRAFilterEnable,
5608 NULL, eANI_BOOLEAN_FALSE) == eHAL_STATUS_FAILURE)
5609 {
5610 fStatus = FALSE;
5611 hddLog(LOGE, "Could not pass on WNI_CFG_RA_FILTER_ENABLE to CCM");
5612 }
5613
5614 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_RA_RATE_LIMIT_INTERVAL, pConfig->cfgRARateLimitInterval,
5615 NULL, eANI_BOOLEAN_FALSE) == eHAL_STATUS_FAILURE)
5616 {
5617 fStatus = FALSE;
5618 hddLog(LOGE, "Could not pass on WNI_CFG_RA_FILTER_ENABLE to CCM");
5619 }
5620
c_hpothu2d0f1c42014-04-01 18:38:51 +05305621 if (ccmCfgSetInt(pHddCtx->hHal,
5622 WNI_CFG_BTC_FATAL_HID_NSNIFF_BLK_GUIDANCE,
5623 pConfig->cfgBtcFatalHidnSniffBlkGuidance,
5624 NULL, eANI_BOOLEAN_FALSE) == eHAL_STATUS_FAILURE)
5625 {
5626 fStatus = FALSE;
5627 hddLog(LOGE, "Could not pass on"
5628 "WNI_CFG_BTC_FATAL_HID_NSNIFF_BLK_GUIDANCE to CCM");
5629 }
5630
5631 if (ccmCfgSetInt(pHddCtx->hHal,
5632 WNI_CFG_BTC_CRITICAL_HID_NSNIFF_BLK_GUIDANCE,
5633 pConfig->cfgBtcCriticalHidnSniffBlkGuidance,
5634 NULL, eANI_BOOLEAN_FALSE) == eHAL_STATUS_FAILURE)
5635 {
5636 fStatus = FALSE;
5637 hddLog(LOGE, "Could not pass on"
5638 "WNI_CFG_BTC_CRITICAL_HID_NSNIFF_BLK_GUIDANCE to CCM");
5639 }
5640
5641 if (ccmCfgSetInt(pHddCtx->hHal,
5642 WNI_CFG_BTC_DYN_A2DP_TX_QUEUE_THOLD,
5643 pConfig->cfgBtcA2dpTxQueueThold,
5644 NULL, eANI_BOOLEAN_FALSE) == eHAL_STATUS_FAILURE)
5645 {
5646 fStatus = FALSE;
5647 hddLog(LOGE, "Could not pass on"
5648 "WNI_CFG_BTC_DYN_A2DP_TX_QUEUE_THOLD to CCM");
5649 }
5650
5651 if (ccmCfgSetInt(pHddCtx->hHal,
5652 WNI_CFG_BTC_DYN_OPP_TX_QUEUE_THOLD,
5653 pConfig->cfgBtcOppTxQueueThold,
5654 NULL, eANI_BOOLEAN_FALSE) == eHAL_STATUS_FAILURE)
5655 {
5656 fStatus = FALSE;
5657 hddLog(LOGE, "Could not pass on"
5658 "WNI_CFG_BTC_DYN_OPP_TX_QUEUE_THOLD to CCM");
5659 }
5660
Chet Lanctotfadc8e32014-04-24 14:50:52 -07005661#ifdef WLAN_FEATURE_11W
5662 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_PMF_SA_QUERY_MAX_RETRIES,
5663 pConfig->pmfSaQueryMaxRetries, NULL,
5664 eANI_BOOLEAN_FALSE) == eHAL_STATUS_FAILURE)
5665 {
5666 fStatus = FALSE;
5667 hddLog(LOGE, "Could not pass on WNI_CFG_SA_QUERY_MAX_RETRIES to CCM");
5668 }
5669
5670 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_PMF_SA_QUERY_RETRY_INTERVAL,
5671 pConfig->pmfSaQueryRetryInterval, NULL,
5672 eANI_BOOLEAN_FALSE) == eHAL_STATUS_FAILURE)
5673 {
5674 fStatus = FALSE;
5675 hddLog(LOGE, "Could not pass on WNI_CFG_SA_QUERY_RETRY_INTERVAL to CCM");
5676 }
5677#endif
Mihir Shetec34258c2014-07-30 17:50:27 +05305678 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_MAX_UAPSD_CONSEC_SP,
5679 pConfig->maxUapsdConsecSP, NULL,
5680 eANI_BOOLEAN_FALSE) == eHAL_STATUS_FAILURE)
5681 {
5682 fStatus = FALSE;
5683 hddLog(LOGE, "Could not pass on WNI_CFG_MAX_UAPSD_CONSEC_SP");
5684 }
5685
5686 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_MAX_UAPSD_CONSEC_RX_CNT,
5687 pConfig->maxUapsdConsecRxCnt, NULL,
5688 eANI_BOOLEAN_FALSE) == eHAL_STATUS_FAILURE)
5689 {
5690 fStatus = FALSE;
5691 hddLog(LOGE, "Could not pass on WNI_CFG_MAX_UAPSD_CONSEC_RX_CNT");
5692 }
5693
5694 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_MAX_UAPSD_CONSEC_TX_CNT,
5695 pConfig->maxUapsdConsecTxCnt, NULL,
5696 eANI_BOOLEAN_FALSE) == eHAL_STATUS_FAILURE)
5697 {
5698 fStatus = FALSE;
5699 hddLog(LOGE, "Could not pass on WNI_CFG_MAX_UAPSD_CONSEC_TX_CNT");
5700 }
5701
5702 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_MAX_UAPSD_CONSEC_TX_CNT_MEAS_WINDOW,
5703 pConfig->uapsdConsecTxCntMeasWindow, NULL,
5704 eANI_BOOLEAN_FALSE) == eHAL_STATUS_FAILURE)
5705 {
5706 fStatus = FALSE;
5707 hddLog(LOGE, "Could not pass on WNI_CFG_MAX_UAPSD_CONSEC_TX_CNT_MEAS_WINDOW");
5708 }
5709
5710 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_MAX_UAPSD_CONSEC_RX_CNT_MEAS_WINDOW,
5711 pConfig->uapsdConsecRxCntMeasWindow, NULL,
5712 eANI_BOOLEAN_FALSE) == eHAL_STATUS_FAILURE)
5713 {
5714 fStatus = FALSE;
5715 hddLog(LOGE, "Could not pass on WNI_CFG_MAX_UAPSD_CONSEC_RX_CNT_MEAS_WINDOW");
5716 }
5717
5718 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_MAX_PSPOLL_IN_WMM_UAPSD_PS_MODE,
5719 pConfig->maxPsPollInWmmUapsdMode, NULL,
5720 eANI_BOOLEAN_FALSE) == eHAL_STATUS_FAILURE)
5721 {
5722 fStatus = FALSE;
5723 hddLog(LOGE, "Could not pass on WNI_CFG_MAX_PSPOLL_IN_WMM_UAPSD_PS_MODE");
5724 }
5725
5726 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_MAX_UAPSD_INACTIVITY_INTERVALS,
5727 pConfig->maxUapsdInactivityIntervals, NULL,
5728 eANI_BOOLEAN_FALSE) == eHAL_STATUS_FAILURE)
5729 {
5730 fStatus = FALSE;
5731 hddLog(LOGE, "Could not pass on WNI_CFG_MAX_UAPSD_INACTIVITY_INTERVALS");
5732 }
5733
5734 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_ENABLE_DYNAMIC_WMMPS,
5735 pConfig->enableDynamicWMMPS, NULL,
5736 eANI_BOOLEAN_FALSE) == eHAL_STATUS_FAILURE)
5737 {
5738 fStatus = FALSE;
5739 hddLog(LOGE, "Could not pass on WNI_CFG_ENABLE_DYNAMIC_WMMPS");
5740 }
Chet Lanctotfadc8e32014-04-24 14:50:52 -07005741
c_hpothu03d961b2014-09-19 16:45:00 +05305742 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_BURST_MODE_BE_TXOP_VALUE,
5743 pConfig->burstModeTXOPValue, NULL,
5744 eANI_BOOLEAN_FALSE) == eHAL_STATUS_FAILURE)
5745 {
5746 fStatus = FALSE;
5747 hddLog(LOGE, "Could not pass on WNI_CFG_BURST_MODE_BE_TXOP_VALUE ");
5748 }
Deepthi Gowri9025aa62014-11-07 19:45:36 +05305749
5750 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_ENABLE_DYNAMIC_RA_START_RATE,
5751 pConfig->enableDynamicRAStartRate,
5752 NULL, eANI_BOOLEAN_FALSE) == eHAL_STATUS_FAILURE)
5753 {
5754 fStatus = FALSE;
5755 hddLog(LOGE, "Could not pass on"
5756 "WNI_CFG_ENABLE_DYNAMIC_RA_START_RATE to CCM");
5757 }
Naresh Jayaramf5bbe3f2014-12-29 18:32:47 +05305758
5759 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_BTC_FAST_WLAN_CONN_PREF,
5760 pConfig->btcFastWlanConnPref, NULL,
5761 eANI_BOOLEAN_FALSE) == eHAL_STATUS_FAILURE)
5762 {
5763 fStatus = FALSE;
5764 hddLog(LOGE, "Could not pass on WNI_CFG_BTC_FAST_WLAN_CONN_PREF ");
5765 }
jagadeeshaf2d0ce2015-03-31 11:45:30 +05305766
5767 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_ENABLE_RTSCTS_HTVHT,
5768 pConfig->enableRtsCtsHtVht,
5769 NULL, eANI_BOOLEAN_FALSE) == eHAL_STATUS_FAILURE)
5770 {
5771 fStatus = FALSE;
5772 hddLog(LOGE, "Could not pass on"
5773 "WNI_CFG_ENABLE_RTSCTS_HTVHT to CCM");
5774 }
Hanumantha Reddy Pothulaee001fc2015-05-26 15:21:53 +05305775
5776 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_TOGGLE_ARP_BDRATES,
5777 pConfig->toggleArpBDRates,
5778 NULL, eANI_BOOLEAN_FALSE) == eHAL_STATUS_FAILURE)
5779 {
5780 fStatus = FALSE;
5781 hddLog(LOGE, "Could not pass on"
5782 "WNI_CFG_TOGGLE_ARP_BDRATES to CCM");
5783 }
Sachin Ahuja41b61902015-06-18 18:32:15 +05305784
5785 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_BTC_STATIC_OPP_WLAN_IDLE_WLAN_LEN,
5786 pConfig->btcStaticOppWlanIdleWlanLen, NULL,
5787 eANI_BOOLEAN_FALSE) == eHAL_STATUS_FAILURE)
5788 {
5789 fStatus = FALSE;
5790 hddLog(LOGE, "Could not pass on WNI_CFG_BTC_STATIC_OPP_WLAN_IDLE_WLAN_LEN ");
5791 }
5792
5793 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_BTC_STATIC_OPP_WLAN_IDLE_BT_LEN,
5794 pConfig->btcStaticOppWlanIdleBtLen, NULL,
5795 eANI_BOOLEAN_FALSE) == eHAL_STATUS_FAILURE)
5796 {
5797 fStatus = FALSE;
5798 hddLog(LOGE, "Could not pass on WNI_CFG_BTC_STATIC_OPP_WLAN_IDLE_BT_LEN ");
5799 }
5800
Hanumantha Reddy Pothula9a8ccab2015-07-03 14:33:17 +05305801 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_LINK_FAIL_TIMEOUT,
5802 pConfig->linkFailTimeout, NULL,
5803 eANI_BOOLEAN_FALSE) == eHAL_STATUS_FAILURE)
5804 {
5805 fStatus = FALSE;
5806 hddLog(LOGE, "Could not pass on WNI_CFG_LINK_FAIL_TIMEOUT ");
5807 }
5808
5809 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_LINK_FAIL_TX_CNT,
5810 pConfig->linkFailTxCnt, NULL,
5811 eANI_BOOLEAN_FALSE) == eHAL_STATUS_FAILURE)
5812 {
5813 fStatus = FALSE;
5814 hddLog(LOGE, "Could not pass on WNI_CFG_LINK_FAIL_TX_CNT ");
5815 }
Mahesh A Saptasagarbeca12c2015-09-07 16:21:06 +05305816 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_OPTIMIZE_CA_EVENT,
5817 pConfig->gOptimizeCAevent, NULL,
5818 eANI_BOOLEAN_FALSE) == eHAL_STATUS_FAILURE)
5819 {
5820 fStatus = FALSE;
5821 hddLog(LOGE, "Could not pass on WNI_CFG_OPTIMIZE_CA_EVENT ");
5822 }
Padma, Santhosh Kumare2eb0fa2015-08-26 13:40:47 +05305823 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_EXT_SCAN_CONC_MODE, pConfig->cfgExtScanConcMode,
5824 NULL, eANI_BOOLEAN_FALSE) == eHAL_STATUS_FAILURE)
5825 {
5826 fStatus = FALSE;
5827 hddLog(LOGE, "Could not pass on WNI_CFG_EXT_SCAN_CONC_MODE to CCM");
5828 }
Mahesh A Saptasagarbeca12c2015-09-07 16:21:06 +05305829
Hanumantha Reddy Pothula802d31d2015-09-29 17:39:11 +05305830 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_ACTIVE_PASSIVE_CON,
5831 pConfig->gActivePassiveChCon, NULL,
5832 eANI_BOOLEAN_FALSE) == eHAL_STATUS_FAILURE)
5833 {
5834 fStatus = FALSE;
5835 hddLog(LOGE, "Could not pass on WNI_CFG_ACTIVE_PASSIVE_CON ");
5836 }
Hanumantha Reddy Pothulaca1d1cc2015-10-26 15:37:35 +05305837
5838 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_ENABLE_MAC_ADDR_SPOOFING,
5839 pConfig->enableMacSpoofing, NULL,
5840 eANI_BOOLEAN_FALSE) == eHAL_STATUS_FAILURE)
5841 {
5842 fStatus = FALSE;
5843 hddLog(LOGE, "Could not pass on WNI_CFG_ENABLE_MAC_ADDR_SPOOFING ");
5844 }
5845
Sachin Ahujab4d7a292015-12-08 19:57:04 +05305846 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_DISABLE_BAR_WAKE_UP_HOST,
5847 pConfig->disableBarWakeUp,
5848 NULL, eANI_BOOLEAN_FALSE) == eHAL_STATUS_FAILURE)
5849 {
5850 fStatus = FALSE;
5851 hddLog(LOGE, "Could not pass on WNI_CFG_DISABLE_BAR_WAKE_UP_HOST to CCM");
5852 }
5853
Manjeet Singhaefc25c2016-02-09 19:06:08 +05305854 if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_SAR_BOFFSET_SET_CORRECTION,
5855 pConfig->boffset_correction_enable,
5856 NULL, eANI_BOOLEAN_FALSE) == eHAL_STATUS_FAILURE)
5857 {
5858 fStatus = FALSE;
5859 hddLog(LOGE, "Could not pass on WNI_CFG_SAR_BOFFSET_SET_CORRECTION to CCM");
5860 }
Jeff Johnson295189b2012-06-20 16:38:30 -07005861 return fStatus;
5862}
5863
5864
5865/**---------------------------------------------------------------------------
5866
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08005867 \brief hdd_init_set_sme_config() -
Jeff Johnson295189b2012-06-20 16:38:30 -07005868
5869 This function initializes the sme configuration parameters
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08005870
Jeff Johnson295189b2012-06-20 16:38:30 -07005871 \param - pHddCtx - Pointer to the HDD Adapter.
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08005872
Jeff Johnson295189b2012-06-20 16:38:30 -07005873 \return - 0 for success, non zero for failure
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08005874
Jeff Johnson295189b2012-06-20 16:38:30 -07005875 --------------------------------------------------------------------------*/
5876
5877VOS_STATUS hdd_set_sme_config( hdd_context_t *pHddCtx )
5878{
5879 VOS_STATUS status = VOS_STATUS_SUCCESS;
5880 eHalStatus halStatus;
Mukul Sharma20aa6582014-08-07 21:36:12 +05305881 tpSmeConfigParams smeConfig;
Jeff Johnson295189b2012-06-20 16:38:30 -07005882
5883 hdd_config_t *pConfig = pHddCtx->cfg_ini;
5884
Mukul Sharma20aa6582014-08-07 21:36:12 +05305885 smeConfig = vos_mem_malloc(sizeof(tSmeConfigParams));
5886 if (NULL == smeConfig)
5887 {
5888 VOS_TRACE( VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_ERROR, "%s smeConfig allocation failed",__func__);
5889 return eHAL_STATUS_FAILED_ALLOC;
5890 }
Mukul Sharmaa631e892014-08-28 15:38:51 +05305891 vos_mem_zero( smeConfig, sizeof( tSmeConfigParams ) );
Jeff Johnson295189b2012-06-20 16:38:30 -07005892
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08005893 VOS_TRACE( VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH,
Arif Hussain6d2a3322013-11-17 19:50:10 -08005894 "%s bWmmIsEnabled=%d 802_11e_enabled=%d dot11Mode=%d", __func__,
Jeff Johnson295189b2012-06-20 16:38:30 -07005895 pConfig->WmmMode, pConfig->b80211eIsEnabled, pConfig->dot11Mode);
5896
5897 // Config params obtained from the registry
Amar Singhalfddc28c2013-09-05 13:03:40 -07005898
Mukul Sharma20aa6582014-08-07 21:36:12 +05305899 smeConfig->csrConfig.RTSThreshold = pConfig->RTSThreshold;
5900 smeConfig->csrConfig.FragmentationThreshold = pConfig->FragmentationThreshold;
5901 smeConfig->csrConfig.shortSlotTime = pConfig->ShortSlotTimeEnabled;
5902 smeConfig->csrConfig.Is11dSupportEnabled = pConfig->Is11dSupportEnabled;
5903 smeConfig->csrConfig.HeartbeatThresh24 = pConfig->HeartbeatThresh24;
Jeff Johnson295189b2012-06-20 16:38:30 -07005904
Mukul Sharma20aa6582014-08-07 21:36:12 +05305905 smeConfig->csrConfig.phyMode = hdd_cfg_xlate_to_csr_phy_mode ( pConfig->dot11Mode );
Jeff Johnson295189b2012-06-20 16:38:30 -07005906
Leela Venkata Kiran Kumar Reddy Chirala784d7e82013-11-20 10:57:25 -08005907 if( (pConfig->dot11Mode == eHDD_DOT11_MODE_abg) ||
5908 (pConfig->dot11Mode == eHDD_DOT11_MODE_11b) ||
5909 (pConfig->dot11Mode == eHDD_DOT11_MODE_11g) ||
5910 (pConfig->dot11Mode == eHDD_DOT11_MODE_11b_ONLY) ||
5911 (pConfig->dot11Mode == eHDD_DOT11_MODE_11g_ONLY))
5912 {
Mukul Sharma20aa6582014-08-07 21:36:12 +05305913 smeConfig->csrConfig.channelBondingMode24GHz = 0;
5914 smeConfig->csrConfig.channelBondingMode5GHz = 0;
Leela Venkata Kiran Kumar Reddy Chirala784d7e82013-11-20 10:57:25 -08005915 }
5916 else
5917 {
Mukul Sharma20aa6582014-08-07 21:36:12 +05305918 smeConfig->csrConfig.channelBondingMode24GHz = pConfig->nChannelBondingMode24GHz;
5919 smeConfig->csrConfig.channelBondingMode5GHz = pConfig->nChannelBondingMode5GHz;
Leela Venkata Kiran Kumar Reddy Chirala784d7e82013-11-20 10:57:25 -08005920 }
Mukul Sharma20aa6582014-08-07 21:36:12 +05305921 smeConfig->csrConfig.TxRate = pConfig->TxRate;
5922 smeConfig->csrConfig.nScanResultAgeCount = pConfig->ScanResultAgeCount;
5923 smeConfig->csrConfig.scanAgeTimeNCNPS = pConfig->nScanAgeTimeNCNPS;
5924 smeConfig->csrConfig.scanAgeTimeNCPS = pConfig->nScanAgeTimeNCPS;
5925 smeConfig->csrConfig.scanAgeTimeCNPS = pConfig->nScanAgeTimeCNPS;
5926 smeConfig->csrConfig.scanAgeTimeCPS = pConfig->nScanAgeTimeCPS;
5927 smeConfig->csrConfig.AdHocChannel24 = pConfig->OperatingChannel;
5928 smeConfig->csrConfig.fEnforce11dChannels = pConfig->fEnforce11dChannels;
5929 smeConfig->csrConfig.fSupplicantCountryCodeHasPriority = pConfig->fSupplicantCountryCodeHasPriority;
5930 smeConfig->csrConfig.fEnforceCountryCodeMatch = pConfig->fEnforceCountryCodeMatch;
5931 smeConfig->csrConfig.fEnforceDefaultDomain = pConfig->fEnforceDefaultDomain;
5932 smeConfig->csrConfig.bCatRssiOffset = pConfig->nRssiCatGap;
5933 smeConfig->csrConfig.vccRssiThreshold = pConfig->nVccRssiTrigger;
5934 smeConfig->csrConfig.vccUlMacLossThreshold = pConfig->nVccUlMacLossThreshold;
5935 smeConfig->csrConfig.nRoamingTime = pConfig->nRoamingTime;
5936 smeConfig->csrConfig.IsIdleScanEnabled = pConfig->nEnableIdleScan;
5937 smeConfig->csrConfig.nInitialDwellTime = pConfig->nInitialDwellTime;
5938 smeConfig->csrConfig.nActiveMaxChnTime = pConfig->nActiveMaxChnTime;
5939 smeConfig->csrConfig.nActiveMinChnTime = pConfig->nActiveMinChnTime;
5940 smeConfig->csrConfig.nPassiveMaxChnTime = pConfig->nPassiveMaxChnTime;
5941 smeConfig->csrConfig.nPassiveMinChnTime = pConfig->nPassiveMinChnTime;
5942 smeConfig->csrConfig.nActiveMaxChnTimeBtc = pConfig->nActiveMaxChnTimeBtc;
5943 smeConfig->csrConfig.nActiveMinChnTimeBtc = pConfig->nActiveMinChnTimeBtc;
5944 smeConfig->csrConfig.disableAggWithBtc = pConfig->disableAggWithBtc;
Madan Mohan Koyyalamudi4ff9cd62012-10-30 17:48:57 -07005945#ifdef WLAN_AP_STA_CONCURRENCY
Mukul Sharma20aa6582014-08-07 21:36:12 +05305946 smeConfig->csrConfig.nActiveMaxChnTimeConc = pConfig->nActiveMaxChnTimeConc;
5947 smeConfig->csrConfig.nActiveMinChnTimeConc = pConfig->nActiveMinChnTimeConc;
5948 smeConfig->csrConfig.nPassiveMaxChnTimeConc = pConfig->nPassiveMaxChnTimeConc;
5949 smeConfig->csrConfig.nPassiveMinChnTimeConc = pConfig->nPassiveMinChnTimeConc;
5950 smeConfig->csrConfig.nRestTimeConc = pConfig->nRestTimeConc;
5951 smeConfig->csrConfig.nNumStaChanCombinedConc = pConfig->nNumStaChanCombinedConc;
5952 smeConfig->csrConfig.nNumP2PChanCombinedConc = pConfig->nNumP2PChanCombinedConc;
Sudhir Sattayappa Kohallieb97d502013-05-22 23:16:42 -07005953
Madan Mohan Koyyalamudi4ff9cd62012-10-30 17:48:57 -07005954#endif
Mukul Sharma20aa6582014-08-07 21:36:12 +05305955 smeConfig->csrConfig.Is11eSupportEnabled = pConfig->b80211eIsEnabled;
5956 smeConfig->csrConfig.WMMSupportMode = pConfig->WmmMode;
Jeff Johnson295189b2012-06-20 16:38:30 -07005957
5958#if defined WLAN_FEATURE_VOWIFI
Mukul Sharma20aa6582014-08-07 21:36:12 +05305959 smeConfig->rrmConfig.rrmEnabled = pConfig->fRrmEnable;
5960 smeConfig->rrmConfig.maxRandnInterval = pConfig->nRrmRandnIntvl;
Jeff Johnson295189b2012-06-20 16:38:30 -07005961#endif
5962 //Remaining config params not obtained from registry
5963 // On RF EVB beacon using channel 1.
Jeff Johnsone7245742012-09-05 17:12:55 -07005964#ifdef WLAN_FEATURE_11AC
Mukul Sharma20aa6582014-08-07 21:36:12 +05305965 smeConfig->csrConfig.nVhtChannelWidth = pConfig->vhtChannelWidth;
5966 smeConfig->csrConfig.enableTxBF = pConfig->enableTxBF;
5967 smeConfig->csrConfig.txBFCsnValue = pConfig->txBFCsnValue;
5968 smeConfig->csrConfig.enableVhtFor24GHz = pConfig->enableVhtFor24GHzBand;
Abhishek Singh6d5d29c2014-07-03 14:25:22 +05305969 /* Consider Mu-beamformee only if SU-beamformee is enabled */
5970 if ( pConfig->enableTxBF )
Mukul Sharma20aa6582014-08-07 21:36:12 +05305971 smeConfig->csrConfig.enableMuBformee = pConfig->enableMuBformee;
Abhishek Singh6d5d29c2014-07-03 14:25:22 +05305972 else
Mukul Sharma20aa6582014-08-07 21:36:12 +05305973 smeConfig->csrConfig.enableMuBformee = 0;
Jeff Johnsone7245742012-09-05 17:12:55 -07005974#endif
Mukul Sharma20aa6582014-08-07 21:36:12 +05305975 smeConfig->csrConfig.AdHocChannel5G = pConfig->AdHocChannel5G;
5976 smeConfig->csrConfig.AdHocChannel24 = pConfig->AdHocChannel24G;
5977 smeConfig->csrConfig.ProprietaryRatesEnabled = 0;
5978 smeConfig->csrConfig.HeartbeatThresh50 = 40;
5979 smeConfig->csrConfig.bandCapability = pConfig->nBandCapability;
Madan Mohan Koyyalamudi8db1c942013-01-10 15:24:29 -08005980 if (pConfig->nBandCapability == eCSR_BAND_24)
5981 {
Mukul Sharma20aa6582014-08-07 21:36:12 +05305982 smeConfig->csrConfig.Is11hSupportEnabled = 0;
Madan Mohan Koyyalamudi8db1c942013-01-10 15:24:29 -08005983 } else {
Mukul Sharma20aa6582014-08-07 21:36:12 +05305984 smeConfig->csrConfig.Is11hSupportEnabled = pConfig->Is11hSupportEnabled;
Madan Mohan Koyyalamudi8db1c942013-01-10 15:24:29 -08005985 }
Mukul Sharma20aa6582014-08-07 21:36:12 +05305986 smeConfig->csrConfig.cbChoice = 0;
5987 smeConfig->csrConfig.bgScanInterval = 0;
5988 smeConfig->csrConfig.eBand = pConfig->nBandCapability;
5989 smeConfig->csrConfig.nTxPowerCap = pConfig->nTxPowerCap;
5990 smeConfig->csrConfig.fEnableBypass11d = pConfig->enableBypass11d;
5991 smeConfig->csrConfig.fEnableDFSChnlScan = pConfig->enableDFSChnlScan;
Varun Reddy Yeturu5d5e2c62014-02-27 13:31:29 -08005992#if defined (WLAN_FEATURE_VOWIFI_11R) || defined (FEATURE_WLAN_ESE) || defined(FEATURE_WLAN_LFR)
Mukul Sharma20aa6582014-08-07 21:36:12 +05305993 smeConfig->csrConfig.nRoamPrefer5GHz = pConfig->nRoamPrefer5GHz;
5994 smeConfig->csrConfig.nRoamIntraBand = pConfig->nRoamIntraBand;
5995 smeConfig->csrConfig.nProbes = pConfig->nProbes;
5996 smeConfig->csrConfig.nRoamScanHomeAwayTime = pConfig->nRoamScanHomeAwayTime;
Madan Mohan Koyyalamudid5026072012-11-30 14:56:21 -08005997#endif
Mukul Sharma20aa6582014-08-07 21:36:12 +05305998 smeConfig->csrConfig.fFirstScanOnly2GChnl = pConfig->enableFirstScan2GOnly;
Jeff Johnsone7245742012-09-05 17:12:55 -07005999
Jeff Johnson295189b2012-06-20 16:38:30 -07006000 //FIXME 11d config is hardcoded
Jeff Johnson7dda7772013-02-27 08:36:13 -08006001 if ( VOS_STA_SAP_MODE != hdd_get_conparam())
6002 {
Mukul Sharma20aa6582014-08-07 21:36:12 +05306003 smeConfig->csrConfig.Csr11dinfo.Channels.numChannels = 0;
Jeff Johnson295189b2012-06-20 16:38:30 -07006004
Jeff Johnson7dda7772013-02-27 08:36:13 -08006005 /* if there is a requirement that HDD will control the default
6006 * channel list & country code (say from .ini file) we need to
6007 * add some logic here. Otherwise the default 11d info should
6008 * come from NV as per our current implementation */
Jeff Johnson295189b2012-06-20 16:38:30 -07006009 }
Jeff Johnson7dda7772013-02-27 08:36:13 -08006010 else
6011 {
6012 VOS_TRACE( VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_ERROR,
6013 "AP country Code %s", pConfig->apCntryCode);
Jeff Johnson295189b2012-06-20 16:38:30 -07006014
Jeff Johnson7dda7772013-02-27 08:36:13 -08006015 if (memcmp(pConfig->apCntryCode, CFG_AP_COUNTRY_CODE_DEFAULT, 3) != 0)
6016 sme_setRegInfo(pHddCtx->hHal, pConfig->apCntryCode);
Mukul Sharma20aa6582014-08-07 21:36:12 +05306017 sme_set11dinfo(pHddCtx->hHal, smeConfig);
Jeff Johnson7dda7772013-02-27 08:36:13 -08006018 }
Mukul Sharma20aa6582014-08-07 21:36:12 +05306019 hdd_set_power_save_config(pHddCtx, smeConfig);
Jeff Johnson295189b2012-06-20 16:38:30 -07006020 hdd_set_btc_config(pHddCtx);
6021
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08006022#ifdef WLAN_FEATURE_VOWIFI_11R
Mukul Sharma20aa6582014-08-07 21:36:12 +05306023 smeConfig->csrConfig.csr11rConfig.IsFTResourceReqSupported = pConfig->fFTResourceReqSupported;
Jeff Johnson295189b2012-06-20 16:38:30 -07006024#endif
Jeff Johnson04dd8a82012-06-29 20:41:40 -07006025#ifdef FEATURE_WLAN_LFR
Mukul Sharma20aa6582014-08-07 21:36:12 +05306026 smeConfig->csrConfig.isFastRoamIniFeatureEnabled = pConfig->isFastRoamIniFeatureEnabled;
6027 smeConfig->csrConfig.MAWCEnabled = pConfig->MAWCEnabled;
Jeff Johnson04dd8a82012-06-29 20:41:40 -07006028#endif
Varun Reddy Yeturu5d5e2c62014-02-27 13:31:29 -08006029#ifdef FEATURE_WLAN_ESE
Mukul Sharma20aa6582014-08-07 21:36:12 +05306030 smeConfig->csrConfig.isEseIniFeatureEnabled = pConfig->isEseIniFeatureEnabled;
Varun Reddy Yeturu5d5e2c62014-02-27 13:31:29 -08006031 if( pConfig->isEseIniFeatureEnabled )
Gopichand Nakkala98a98af2012-12-31 14:38:47 -08006032 {
6033 pConfig->isFastTransitionEnabled = TRUE;
6034 }
Jeff Johnson295189b2012-06-20 16:38:30 -07006035#endif
Varun Reddy Yeturu5d5e2c62014-02-27 13:31:29 -08006036#if defined (WLAN_FEATURE_VOWIFI_11R) || defined (FEATURE_WLAN_ESE) || defined(FEATURE_WLAN_LFR)
Mukul Sharma20aa6582014-08-07 21:36:12 +05306037 smeConfig->csrConfig.isFastTransitionEnabled = pConfig->isFastTransitionEnabled;
6038 smeConfig->csrConfig.RoamRssiDiff = pConfig->RoamRssiDiff;
6039 smeConfig->csrConfig.nImmediateRoamRssiDiff = pConfig->nImmediateRoamRssiDiff;
6040 smeConfig->csrConfig.isWESModeEnabled = pConfig->isWESModeEnabled;
Jeff Johnson295189b2012-06-20 16:38:30 -07006041#endif
Varun Reddy Yeturud0a3f252013-04-15 21:58:13 -07006042#ifdef WLAN_FEATURE_ROAM_SCAN_OFFLOAD
Kapil Gupta00e71f92016-06-26 13:31:37 +05306043 smeConfig->csrConfig.isRoamOffloadScanEnabled =
6044 pConfig->isRoamOffloadScanEnabled;
6045 smeConfig->csrConfig.bFastRoamInConIniFeatureEnabled =
6046 pConfig->bFastRoamInConIniFeatureEnabled;
6047 smeConfig->csrConfig.isPERRoamEnabled =
6048 pConfig->isPERRoamEnabled;
6049 smeConfig->csrConfig.rateUpThreshold = pConfig->rateUpThreshold;
6050 smeConfig->csrConfig.rateDownThreshold = pConfig->rateDownThreshold;
6051 smeConfig->csrConfig.waitPeriodForNextPERScan =
6052 pConfig->waitPeriodForNextPERScan;
6053 smeConfig->csrConfig.PERtimerThreshold = pConfig->PERtimerThreshold;
6054 smeConfig->csrConfig.isPERRoamCCAEnabled = pConfig->isPERRoamCCAEnabled;
Kapil Gupta89a8a0e2016-08-25 14:11:17 +05306055 smeConfig->csrConfig.PERRoamFullScanThreshold =
6056 pConfig->PERRoamFullScanThreshold * -1;
Kapil Gupta00e71f92016-06-26 13:31:37 +05306057 smeConfig->csrConfig.PERroamTriggerPercent = pConfig->PERroamTriggerPercent;
6058
Srinivas Girigowda830bbd02013-06-13 19:44:16 -07006059
Mukul Sharma20aa6582014-08-07 21:36:12 +05306060 if (0 == smeConfig->csrConfig.isRoamOffloadScanEnabled)
Srinivas Girigowda830bbd02013-06-13 19:44:16 -07006061 {
6062 /* Disable roaming in concurrency if roam scan offload is disabled */
Mukul Sharma20aa6582014-08-07 21:36:12 +05306063 smeConfig->csrConfig.bFastRoamInConIniFeatureEnabled = 0;
Srinivas Girigowda830bbd02013-06-13 19:44:16 -07006064 }
Varun Reddy Yeturud0a3f252013-04-15 21:58:13 -07006065#endif
Jeff Johnson295189b2012-06-20 16:38:30 -07006066#ifdef WLAN_FEATURE_NEIGHBOR_ROAMING
Mukul Sharma20aa6582014-08-07 21:36:12 +05306067 smeConfig->csrConfig.neighborRoamConfig.nNeighborReassocRssiThreshold = pConfig->nNeighborReassocRssiThreshold;
6068 smeConfig->csrConfig.neighborRoamConfig.nNeighborLookupRssiThreshold = pConfig->nNeighborLookupRssiThreshold;
6069 smeConfig->csrConfig.neighborRoamConfig.nNeighborScanMaxChanTime = pConfig->nNeighborScanMaxChanTime;
6070 smeConfig->csrConfig.neighborRoamConfig.nNeighborScanMinChanTime = pConfig->nNeighborScanMinChanTime;
6071 smeConfig->csrConfig.neighborRoamConfig.nNeighborScanTimerPeriod = pConfig->nNeighborScanPeriod;
6072 smeConfig->csrConfig.neighborRoamConfig.nMaxNeighborRetries = pConfig->nMaxNeighborReqTries;
6073 smeConfig->csrConfig.neighborRoamConfig.nNeighborResultsRefreshPeriod = pConfig->nNeighborResultsRefreshPeriod;
6074 smeConfig->csrConfig.neighborRoamConfig.nEmptyScanRefreshPeriod = pConfig->nEmptyScanRefreshPeriod;
Mukul Sharma8b192c02014-12-30 19:52:50 +05306075 //Making Forced 5G roaming to tightly coupled with the gEnableFirstScan2GOnly
6076 //=1 only, Also making sure if HW does not support 5G RF band then no need to
6077 //enable this feature even though it is enabled in .ini.
6078 if((pConfig->enableFirstScan2GOnly) && (pConfig->nBandCapability != eCSR_BAND_24))
Mukul Sharmad49b3d62014-09-02 01:45:32 +05306079 {
Mukul Sharma8b192c02014-12-30 19:52:50 +05306080 smeConfig->csrConfig.neighborRoamConfig.nNeighborInitialForcedRoamTo5GhEnable
6081 = pConfig->nNeighborInitialForcedRoamTo5GhEnable;
Mukul Sharmad49b3d62014-09-02 01:45:32 +05306082 }
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08006083 hdd_string_to_u8_array( pConfig->neighborScanChanList,
Mukul Sharma20aa6582014-08-07 21:36:12 +05306084 smeConfig->csrConfig.neighborRoamConfig.neighborScanChanList.channelList,
6085 &smeConfig->csrConfig.neighborRoamConfig.neighborScanChanList.numChannels,
Jeff Johnson295189b2012-06-20 16:38:30 -07006086 WNI_CFG_VALID_CHANNEL_LIST_LEN );
6087#endif
6088
Mukul Sharma20aa6582014-08-07 21:36:12 +05306089 smeConfig->csrConfig.addTSWhenACMIsOff = pConfig->AddTSWhenACMIsOff;
6090 smeConfig->csrConfig.fValidateList = pConfig->fValidateScanList;
6091 smeConfig->csrConfig.allowDFSChannelRoam = pConfig->allowDFSChannelRoam;
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08006092 //Enable/Disable MCC
Mukul Sharma20aa6582014-08-07 21:36:12 +05306093 smeConfig->csrConfig.fEnableMCCMode = pConfig->enableMCC;
6094 smeConfig->csrConfig.fAllowMCCGODiffBI = pConfig->allowMCCGODiffBI;
Jeff Johnson295189b2012-06-20 16:38:30 -07006095
Sandeep Puligilla2b6dc632012-12-17 14:44:16 -08006096 //Scan Results Aging Time out value
Mukul Sharma20aa6582014-08-07 21:36:12 +05306097 smeConfig->csrConfig.scanCfgAgingTime = pConfig->scanAgingTimeout;
Sandeep Puligilla2b6dc632012-12-17 14:44:16 -08006098
Mukul Sharma20aa6582014-08-07 21:36:12 +05306099 smeConfig->csrConfig.enableTxLdpc = pConfig->enableTxLdpc;
Gopichand Nakkalab2d2c312013-01-04 11:41:02 -08006100
Mukul Sharma20aa6582014-08-07 21:36:12 +05306101 smeConfig->csrConfig.isAmsduSupportInAMPDU = pConfig->isAmsduSupportInAMPDU;
Mukul Sharma8b192c02014-12-30 19:52:50 +05306102 if(pConfig->nBandCapability != eCSR_BAND_24)
6103 {
6104 smeConfig->csrConfig.nSelect5GHzMargin = pConfig->nSelect5GHzMargin;
6105 }
Abhishek Singhc98534e2015-06-12 10:44:34 +05306106 smeConfig->csrConfig.ignorePeerErpInfo = pConfig->ignorePeerErpInfo;
Sushant Kaushikae17dd62015-08-27 17:07:04 +05306107 smeConfig->csrConfig.ignorePeerHTopMode = pConfig->ignorePeerHTopMode;
Abhishek Singh795e1b82015-09-25 15:35:03 +05306108 smeConfig->csrConfig.disableP2PMacSpoofing = pConfig->disableP2PMacSpoofing;
Abhishek Singh837adf22015-10-01 17:37:37 +05306109 smeConfig->csrConfig.enableFatalEvent= pConfig->enableFatalEvent;
Mukul Sharma20aa6582014-08-07 21:36:12 +05306110 smeConfig->csrConfig.initialScanSkipDFSCh = pConfig->initialScanSkipDFSCh;
krunal soni5afa96c2013-09-06 22:19:02 -07006111
Mukul Sharma20aa6582014-08-07 21:36:12 +05306112 smeConfig->csrConfig.isCoalesingInIBSSAllowed =
krunal sonie9002db2013-11-25 14:24:17 -08006113 pHddCtx->cfg_ini->isCoalesingInIBSSAllowed;
6114
6115
Gopichand Nakkalae620d5a2013-04-26 05:45:57 -07006116 /* update SSR config */
6117 sme_UpdateEnableSSR((tHalHandle)(pHddCtx->hHal), pHddCtx->cfg_ini->enableSSR);
Gopichand Nakkala86e42662013-06-11 17:44:11 +05306118 /* Update the Directed scan offload setting */
Mukul Sharma20aa6582014-08-07 21:36:12 +05306119 smeConfig->fScanOffload = pHddCtx->cfg_ini->fScanOffload;
Gopichand Nakkalae620d5a2013-04-26 05:45:57 -07006120
Peng Xufc6ad8e2014-09-25 13:16:43 +05306121 smeConfig->csrConfig.scanBandPreference =
6122 pHddCtx->cfg_ini->acsScanBandPreference;
Peng Xu2446a892014-09-05 17:21:18 +05306123
Mukul Sharma20aa6582014-08-07 21:36:12 +05306124 smeConfig->fEnableDebugLog = pHddCtx->cfg_ini->gEnableDebugLog;
6125 smeConfig->csrConfig.sendDeauthBeforeCon = pConfig->sendDeauthBeforeCon;
Sushant Kaushikc9682be2014-11-26 12:27:04 +05306126 smeConfig->csrConfig.nOBSSScanWidthTriggerInterval =
6127 pConfig->nOBSSScanWidthTriggerInterval;
Mukul Sharma20aa6582014-08-07 21:36:12 +05306128 smeConfig->fDeferIMPSTime = pHddCtx->cfg_ini->deferImpsTime;
Chandrasekaran, Manishekar5cb0acd2014-12-23 20:06:52 +05306129 smeConfig->fBtcEnableIndTimerVal = pHddCtx->cfg_ini->btcEnableIndTimerVal;
Girish Gowli1c2fc802015-01-19 16:18:07 +05306130 smeConfig->csrConfig.roamDelayStatsEnabled = pHddCtx->cfg_ini->gEnableRoamDelayStats;
Gupta, Kapilb79cda32015-12-30 20:36:33 +05306131 smeConfig->csrConfig.max_chan_for_dwell_time_cfg =
6132 pHddCtx->cfg_ini->max_chan_for_dwell_time_cfg;
Abhishek Singh4463af02016-03-30 15:20:19 +05306133
6134 smeConfig->csrConfig.enable_edca_params =
6135 pHddCtx->cfg_ini->enable_edca_params;
6136
6137 smeConfig->csrConfig.edca_vo_cwmin =
6138 pHddCtx->cfg_ini->edca_vo_cwmin;
6139 smeConfig->csrConfig.edca_vi_cwmin =
6140 pHddCtx->cfg_ini->edca_vi_cwmin;
6141 smeConfig->csrConfig.edca_bk_cwmin =
6142 pHddCtx->cfg_ini->edca_bk_cwmin;
6143 smeConfig->csrConfig.edca_be_cwmin =
6144 pHddCtx->cfg_ini->edca_be_cwmin;
6145
6146 smeConfig->csrConfig.edca_vo_cwmax =
6147 pHddCtx->cfg_ini->edca_vo_cwmax;
6148 smeConfig->csrConfig.edca_vi_cwmax =
6149 pHddCtx->cfg_ini->edca_vi_cwmax;
6150 smeConfig->csrConfig.edca_bk_cwmax =
6151 pHddCtx->cfg_ini->edca_bk_cwmax;
6152 smeConfig->csrConfig.edca_be_cwmax =
6153 pHddCtx->cfg_ini->edca_be_cwmax;
6154
6155 smeConfig->csrConfig.edca_vo_aifs =
6156 pHddCtx->cfg_ini->edca_vo_aifs;
6157 smeConfig->csrConfig.edca_vi_aifs =
6158 pHddCtx->cfg_ini->edca_vi_aifs;
6159 smeConfig->csrConfig.edca_bk_aifs =
6160 pHddCtx->cfg_ini->edca_bk_aifs;
6161 smeConfig->csrConfig.edca_be_aifs =
6162 pHddCtx->cfg_ini->edca_be_aifs;
6163
6164
Agrawal Ashishaf1de652016-03-02 18:03:43 +05306165 sme_set_mgmt_frm_via_wq5((tHalHandle)(pHddCtx->hHal),
6166 pHddCtx->cfg_ini->sendMgmtPktViaWQ5);
Sushant Kaushik215778f2015-05-21 14:05:36 +05306167
6168 vos_set_multicast_logging(pHddCtx->cfg_ini->multicast_host_msgs);
Mukul Sharma20aa6582014-08-07 21:36:12 +05306169 halStatus = sme_UpdateConfig( pHddCtx->hHal, smeConfig);
Jeff Johnson295189b2012-06-20 16:38:30 -07006170 if ( !HAL_STATUS_SUCCESS( halStatus ) )
6171 {
6172 status = VOS_STATUS_E_FAILURE;
c_hpothu6ff1c3c2013-10-01 19:01:57 +05306173 hddLog(LOGE, "sme_UpdateConfig() return failure %d", halStatus);
Jeff Johnson295189b2012-06-20 16:38:30 -07006174 }
6175
Mukul Sharma20aa6582014-08-07 21:36:12 +05306176 vos_mem_free(smeConfig);
Kiran Kumar Lokere3527f0c2013-02-24 22:21:28 -08006177 return status;
Jeff Johnson295189b2012-06-20 16:38:30 -07006178}
6179
6180
6181/**---------------------------------------------------------------------------
6182
6183 \brief hdd_execute_config_command() -
6184
6185 This function executes an arbitrary configuration set command
6186
6187 \param - pHddCtx - Pointer to the HDD Adapter.
6188 \parmm - command - a configuration command of the form:
6189 <name>=<value>
6190
6191 \return - 0 for success, non zero for failure
6192
6193 --------------------------------------------------------------------------*/
6194
6195VOS_STATUS hdd_execute_config_command(hdd_context_t *pHddCtx, char *command)
6196{
6197 size_t tableSize = sizeof(g_registry_table)/sizeof(g_registry_table[0]);
6198 REG_TABLE_ENTRY *pRegEntry;
6199 char *clone;
6200 char *pCmd;
6201 void *pField;
6202 char *name;
6203 char *value_str;
6204 v_U32_t value;
6205 v_S31_t svalue;
6206 size_t len_value_str;
6207 unsigned int idx;
6208 unsigned int i;
6209 VOS_STATUS vstatus;
Madan Mohan Koyyalamudid8ac8662012-11-06 19:04:56 -08006210 int rv;
Jeff Johnson295189b2012-06-20 16:38:30 -07006211
6212 // assume failure until proven otherwise
6213 vstatus = VOS_STATUS_E_FAILURE;
6214
6215 // clone the command so that we can manipulate it
6216 clone = kstrdup(command, GFP_ATOMIC);
6217 if (NULL == clone)
6218 {
6219 hddLog(LOGE, "%s: memory allocation failure, unable to process [%s]",
Madan Mohan Koyyalamudi87054ba2012-11-02 13:24:12 -07006220 __func__, command);
Jeff Johnson295189b2012-06-20 16:38:30 -07006221 return vstatus;
6222 }
6223
6224 // 'clone' will point to the beginning of the string so it can be freed
6225 // 'pCmd' will be used to walk/parse the command
6226 pCmd = clone;
6227
6228 // get rid of leading/trailing whitespace
6229 pCmd = i_trim(pCmd);
6230 if ('\0' == *pCmd)
6231 {
6232 // only whitespace
6233 hddLog(LOGE, "%s: invalid command, only whitespace:[%s]",
Madan Mohan Koyyalamudi87054ba2012-11-02 13:24:12 -07006234 __func__, command);
Jeff Johnson295189b2012-06-20 16:38:30 -07006235 goto done;
6236 }
6237
6238 // parse the <name> = <value>
6239 name = pCmd;
6240 while (('=' != *pCmd) && ('\0' != *pCmd))
6241 {
6242 pCmd++;
6243 }
6244 if ('\0' == *pCmd)
6245 {
6246 // did not find '='
6247 hddLog(LOGE, "%s: invalid command, no '=':[%s]",
Madan Mohan Koyyalamudi87054ba2012-11-02 13:24:12 -07006248 __func__, command);
Jeff Johnson295189b2012-06-20 16:38:30 -07006249 goto done;
6250 }
6251
6252 // replace '=' with NUL to terminate the <name>
6253 *pCmd++ = '\0';
6254 name = i_trim(name);
6255 if ('\0' == *name)
6256 {
6257 // did not find a name
6258 hddLog(LOGE, "%s: invalid command, no <name>:[%s]",
Madan Mohan Koyyalamudi87054ba2012-11-02 13:24:12 -07006259 __func__, command);
Jeff Johnson295189b2012-06-20 16:38:30 -07006260 goto done;
6261 }
6262
6263 value_str = i_trim(pCmd);
6264 if ('\0' == *value_str)
6265 {
6266 // did not find a value
6267 hddLog(LOGE, "%s: invalid command, no <value>:[%s]",
Madan Mohan Koyyalamudi87054ba2012-11-02 13:24:12 -07006268 __func__, command);
Jeff Johnson295189b2012-06-20 16:38:30 -07006269 goto done;
6270 }
6271
6272 // lookup the configuration item
6273 for (idx = 0; idx < tableSize; idx++)
6274 {
6275 if (0 == strcmp(name, g_registry_table[idx].RegName))
6276 {
6277 // found a match
6278 break;
6279 }
6280 }
6281 if (tableSize == idx)
6282 {
6283 // did not match the name
6284 hddLog(LOGE, "%s: invalid command, unknown configuration item:[%s]",
Madan Mohan Koyyalamudi87054ba2012-11-02 13:24:12 -07006285 __func__, command);
Jeff Johnson295189b2012-06-20 16:38:30 -07006286 goto done;
6287 }
6288
6289 pRegEntry = &g_registry_table[idx];
6290 if (!(pRegEntry->Flags & VAR_FLAGS_DYNAMIC_CFG))
6291 {
6292 // does not support dynamic configuration
6293 hddLog(LOGE, "%s: invalid command, %s does not support "
Madan Mohan Koyyalamudi87054ba2012-11-02 13:24:12 -07006294 "dynamic configuration", __func__, name);
Jeff Johnson295189b2012-06-20 16:38:30 -07006295 goto done;
6296 }
6297
6298 pField = ((v_U8_t *)pHddCtx->cfg_ini) + pRegEntry->VarOffset;
6299
6300 switch (pRegEntry->RegType)
6301 {
6302 case WLAN_PARAM_Integer:
Jeff Johnson02797792013-10-26 19:17:13 -07006303 rv = kstrtou32(value_str, 10, &value);
Madan Mohan Koyyalamudid8ac8662012-11-06 19:04:56 -08006304 if (rv < 0)
6305 goto done;
Jeff Johnson295189b2012-06-20 16:38:30 -07006306 if (value < pRegEntry->VarMin)
6307 {
6308 // out of range
Jeff Johnson0299d0a2013-10-30 12:37:43 -07006309 hddLog(LOGE, "%s: invalid command, value %u < min value %lu",
Madan Mohan Koyyalamudi87054ba2012-11-02 13:24:12 -07006310 __func__, value, pRegEntry->VarMin);
Jeff Johnson295189b2012-06-20 16:38:30 -07006311 goto done;
6312 }
6313 if (value > pRegEntry->VarMax)
6314 {
6315 // out of range
Jeff Johnson0299d0a2013-10-30 12:37:43 -07006316 hddLog(LOGE, "%s: invalid command, value %u > max value %lu",
Madan Mohan Koyyalamudi87054ba2012-11-02 13:24:12 -07006317 __func__, value, pRegEntry->VarMax);
Jeff Johnson295189b2012-06-20 16:38:30 -07006318 goto done;
6319 }
6320 memcpy(pField, &value, pRegEntry->VarSize);
6321 break;
6322
6323 case WLAN_PARAM_HexInteger:
Jeff Johnson02797792013-10-26 19:17:13 -07006324 rv = kstrtou32(value_str, 16, &value);
Madan Mohan Koyyalamudid8ac8662012-11-06 19:04:56 -08006325 if (rv < 0)
6326 goto done;
Jeff Johnson295189b2012-06-20 16:38:30 -07006327 if (value < pRegEntry->VarMin)
6328 {
6329 // out of range
Jeff Johnson0299d0a2013-10-30 12:37:43 -07006330 hddLog(LOGE, "%s: invalid command, value %x < min value %lx",
Madan Mohan Koyyalamudi87054ba2012-11-02 13:24:12 -07006331 __func__, value, pRegEntry->VarMin);
Jeff Johnson295189b2012-06-20 16:38:30 -07006332 goto done;
6333 }
6334 if (value > pRegEntry->VarMax)
6335 {
6336 // out of range
Jeff Johnson0299d0a2013-10-30 12:37:43 -07006337 hddLog(LOGE, "%s: invalid command, value %x > max value %lx",
Madan Mohan Koyyalamudi87054ba2012-11-02 13:24:12 -07006338 __func__, value, pRegEntry->VarMax);
Jeff Johnson295189b2012-06-20 16:38:30 -07006339 goto done;
6340 }
6341 memcpy(pField, &value, pRegEntry->VarSize);
6342 break;
6343
6344 case WLAN_PARAM_SignedInteger:
Jeff Johnson02797792013-10-26 19:17:13 -07006345 rv = kstrtos32(value_str, 10, &svalue);
Madan Mohan Koyyalamudid8ac8662012-11-06 19:04:56 -08006346 if (rv < 0)
6347 goto done;
Jeff Johnson295189b2012-06-20 16:38:30 -07006348 if (svalue < (v_S31_t)pRegEntry->VarMin)
6349 {
6350 // out of range
6351 hddLog(LOGE, "%s: invalid command, value %d < min value %d",
Madan Mohan Koyyalamudi87054ba2012-11-02 13:24:12 -07006352 __func__, svalue, (int)pRegEntry->VarMin);
Jeff Johnson295189b2012-06-20 16:38:30 -07006353 goto done;
6354 }
6355 if (svalue > (v_S31_t)pRegEntry->VarMax)
6356 {
6357 // out of range
6358 hddLog(LOGE, "%s: invalid command, value %d > max value %d",
Madan Mohan Koyyalamudi87054ba2012-11-02 13:24:12 -07006359 __func__, svalue, (int)pRegEntry->VarMax);
Jeff Johnson295189b2012-06-20 16:38:30 -07006360 goto done;
6361 }
6362 memcpy(pField, &svalue, pRegEntry->VarSize);
6363 break;
6364
6365 case WLAN_PARAM_String:
6366 len_value_str = strlen(value_str);
6367 if (len_value_str > (pRegEntry->VarSize - 1))
6368 {
6369 // too big
6370 hddLog(LOGE,
6371 "%s: invalid command, string [%s] length "
Jeff Johnson59a121e2013-11-30 09:46:08 -08006372 "%zu exceeds maximum length %u",
Madan Mohan Koyyalamudi87054ba2012-11-02 13:24:12 -07006373 __func__, value_str,
Jeff Johnson295189b2012-06-20 16:38:30 -07006374 len_value_str, (pRegEntry->VarSize - 1));
6375 goto done;
6376 }
6377 // copy string plus NUL
6378 memcpy(pField, value_str, (len_value_str + 1));
6379 break;
6380
6381 case WLAN_PARAM_MacAddr:
6382 len_value_str = strlen(value_str);
6383 if (len_value_str != (VOS_MAC_ADDR_SIZE * 2))
6384 {
6385 // out of range
6386 hddLog(LOGE,
6387 "%s: invalid command, MAC address [%s] length "
Jeff Johnson59a121e2013-11-30 09:46:08 -08006388 "%zu is not expected length %u",
Madan Mohan Koyyalamudi87054ba2012-11-02 13:24:12 -07006389 __func__, value_str,
Jeff Johnson295189b2012-06-20 16:38:30 -07006390 len_value_str, (VOS_MAC_ADDR_SIZE * 2));
6391 goto done;
6392 }
6393 //parse the string and store it in the byte array
6394 for (i = 0; i < VOS_MAC_ADDR_SIZE; i++)
6395 {
6396 ((char*)pField)[i] = (char)
6397 ((parseHexDigit(value_str[(i * 2)]) * 16) +
6398 parseHexDigit(value_str[(i * 2) + 1]));
6399 }
6400 break;
6401
6402 default:
6403 goto done;
6404 }
6405
6406 // if we get here, we had a successful modification
6407 vstatus = VOS_STATUS_SUCCESS;
6408
6409 // config table has been modified, is there a notifier?
6410 if (NULL != pRegEntry->pfnDynamicNotify)
6411 {
6412 (pRegEntry->pfnDynamicNotify)(pHddCtx, pRegEntry->NotifyId);
6413 }
6414
6415 // note that this item was explicitly configured
6416 if (idx < MAX_CFG_INI_ITEMS)
6417 {
6418 set_bit(idx, (void *)&pHddCtx->cfg_ini->bExplicitCfg);
6419 }
6420 done:
6421 kfree(clone);
6422 return vstatus;
6423}
Srinivas Girigowdabbd16eb2013-03-21 12:34:46 -07006424
6425/**---------------------------------------------------------------------------
6426
6427 \brief hdd_is_okc_mode_enabled() -
6428
6429 This function returns whether OKC mode is enabled or not
6430
6431 \param - pHddCtx - Pointer to the HDD Adapter.
6432
6433 \return - 1 for enabled, zero for disabled
6434
6435 --------------------------------------------------------------------------*/
6436
6437tANI_BOOLEAN hdd_is_okc_mode_enabled(hdd_context_t *pHddCtx)
6438{
6439 if (NULL == pHddCtx)
6440 {
6441 hddLog(VOS_TRACE_LEVEL_FATAL, "%s: pHddCtx is NULL", __func__);
6442 return -EINVAL;
6443 }
6444
6445#ifdef FEATURE_WLAN_OKC
6446 return pHddCtx->cfg_ini->isOkcIniFeatureEnabled;
6447#else
6448 return eANI_BOOLEAN_FALSE;
6449#endif
6450}