blob: 9b8095a43e880f161970d7912c45356db4abc974 [file] [log] [blame]
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08001/*
2 * Copyright (c) 2012-2015 The Linux Foundation. All rights reserved.
3 *
4 * Previously licensed under the ISC license by Qualcomm Atheros, Inc.
5 *
6 *
7 * Permission to use, copy, modify, and/or distribute this software for
8 * any purpose with or without fee is hereby granted, provided that the
9 * above copyright notice and this permission notice appear in all
10 * copies.
11 *
12 * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL
13 * WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED
14 * WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE
15 * AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
16 * DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR
17 * PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
18 * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
19 * PERFORMANCE OF THIS SOFTWARE.
20 */
21
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 */
27
28#if !defined(HDD_CONFIG_H__)
29#define HDD_CONFIG_H__
30
31/**
32 *
33 * DOC: wlan_hdd_config.h
34 *
35 * WLAN Adapter Configuration functions
36 */
37
38/* $HEADER$ */
39
40/* Include files */
41#include <wlan_hdd_includes.h>
42#include <wlan_hdd_wmm.h>
43#include <cdf_types.h>
44#include <csr_api.h>
45#include <sap_api.h>
46#include <wmi_unified.h>
47
48#define FW_MODULE_LOG_LEVEL_STRING_LENGTH (255)
49
50#ifdef DHCP_SERVER_OFFLOAD
51#define IPADDR_NUM_ENTRIES (4)
52#define IPADDR_STRING_LENGTH (16)
53#endif
54
55/* Number of items that can be configured */
56#define MAX_CFG_INI_ITEMS 512
57
58/* Defines for all of the things we read from the configuration (registry). */
59
60#define CFG_RTS_THRESHOLD_NAME "RTSThreshold"
61#define CFG_RTS_THRESHOLD_MIN WNI_CFG_RTS_THRESHOLD_STAMIN /* min is 0, meaning always use RTS. */
62#define CFG_RTS_THRESHOLD_MAX WNI_CFG_RTS_THRESHOLD_STAMAX /* max is the max frame size */
63#define CFG_RTS_THRESHOLD_DEFAULT WNI_CFG_RTS_THRESHOLD_STADEF
64
65#define CFG_FRAG_THRESHOLD_NAME "gFragmentationThreshold"
66#define CFG_FRAG_THRESHOLD_MIN WNI_CFG_FRAGMENTATION_THRESHOLD_STAMIN
67#define CFG_FRAG_THRESHOLD_MAX WNI_CFG_FRAGMENTATION_THRESHOLD_STAMAX
68#define CFG_FRAG_THRESHOLD_DEFAULT WNI_CFG_FRAGMENTATION_THRESHOLD_STADEF
69
70#define CFG_OPERATING_CHANNEL_NAME "gOperatingChannel"
71#define CFG_OPERATING_CHANNEL_MIN (0)
72#define CFG_OPERATING_CHANNEL_MAX (14)
73#define CFG_OPERATING_CHANNEL_DEFAULT (1)
74
75#define CFG_SHORT_SLOT_TIME_ENABLED_NAME "gShortSlotTimeEnabled"
76#define CFG_SHORT_SLOT_TIME_ENABLED_MIN WNI_CFG_SHORT_SLOT_TIME_STAMIN
77#define CFG_SHORT_SLOT_TIME_ENABLED_MAX WNI_CFG_SHORT_SLOT_TIME_STAMAX
78#define CFG_SHORT_SLOT_TIME_ENABLED_DEFAULT WNI_CFG_SHORT_SLOT_TIME_STADEF
79
80#define CFG_11D_SUPPORT_ENABLED_NAME "g11dSupportEnabled"
81#define CFG_11D_SUPPORT_ENABLED_MIN WNI_CFG_11D_ENABLED_STAMIN
82#define CFG_11D_SUPPORT_ENABLED_MAX WNI_CFG_11D_ENABLED_STAMAX
83#define CFG_11D_SUPPORT_ENABLED_DEFAULT WNI_CFG_11D_ENABLED_STADEF /* Default is ON */
84
85#define CFG_11H_SUPPORT_ENABLED_NAME "g11hSupportEnabled"
86#define CFG_11H_SUPPORT_ENABLED_MIN (0)
87#define CFG_11H_SUPPORT_ENABLED_MAX (1)
88#define CFG_11H_SUPPORT_ENABLED_DEFAULT (1) /* Default is ON */
89
90/* COUNTRY Code Priority */
91#define CFG_COUNTRY_CODE_PRIORITY_NAME "gCountryCodePriority"
92#define CFG_COUNTRY_CODE_PRIORITY_MIN (0)
93#define CFG_COUNTRY_CODE_PRIORITY_MAX (1)
94#define CFG_COUNTRY_CODE_PRIORITY_DEFAULT (0)
95
96#define CFG_HEARTBEAT_THRESH_24_NAME "gHeartbeat24"
97#define CFG_HEARTBEAT_THRESH_24_MIN WNI_CFG_HEART_BEAT_THRESHOLD_STAMIN
98#define CFG_HEARTBEAT_THRESH_24_MAX WNI_CFG_HEART_BEAT_THRESHOLD_STAMAX
99#define CFG_HEARTBEAT_THRESH_24_DEFAULT WNI_CFG_HEART_BEAT_THRESHOLD_STADEF
100
101#define CFG_POWER_USAGE_NAME "gPowerUsage"
102#define CFG_POWER_USAGE_MIN "Min" /* Minimum Power Save */
103#define CFG_POWER_USAGE_MAX "Max" /* Maximum Power Save */
104#define CFG_POWER_USAGE_DEFAULT "Mod" /* Moderate Power Save */
105
106#define CFG_WOWL_PATTERN_NAME "gWowlPattern"
107#define CFG_WOWL_PATTERN_DEFAULT ""
108
109/* IMPS = IdleModePowerSave */
110#define CFG_ENABLE_IMPS_NAME "gEnableImps"
111#define CFG_ENABLE_IMPS_MIN (0)
112#define CFG_ENABLE_IMPS_MAX (1)
113#define CFG_ENABLE_IMPS_DEFAULT (1)
114
115/* PS = PowerSave */
116#define CFG_ENABLE_PS_NAME "gEnableBmps"
117#define CFG_ENABLE_PS_MIN (0)
118#define CFG_ENABLE_PS_MAX (1)
119#define CFG_ENABLE_PS_DEFAULT (1)
120
121#define CFG_BMPS_MINIMUM_LI_NAME "gBmpsMinListenInterval"
122#define CFG_BMPS_MINIMUM_LI_MIN (1)
123#define CFG_BMPS_MINIMUM_LI_MAX (65535)
124#define CFG_BMPS_MINIMUM_LI_DEFAULT (1)
125
126#define CFG_BMPS_MODERATE_LI_NAME "gBmpsModListenInterval"
127#define CFG_BMPS_MODERATE_LI_MIN (1)
128#define CFG_BMPS_MODERATE_LI_MAX (65535)
129#define CFG_BMPS_MODERATE_LI_DEFAULT (1)
130
131#define CFG_BMPS_MAXIMUM_LI_NAME "gBmpsMaxListenInterval"
132#define CFG_BMPS_MAXIMUM_LI_MIN (1)
133#define CFG_BMPS_MAXIMUM_LI_MAX (65535)
134#define CFG_BMPS_MAXIMUM_LI_DEFAULT (1)
135
136#define CFG_MAX_RX_AMPDU_FACTOR_NAME "gMaxRxAmpduFactor"
137#define CFG_MAX_RX_AMPDU_FACTOR_MIN WNI_CFG_MAX_RX_AMPDU_FACTOR_STAMIN
138#define CFG_MAX_RX_AMPDU_FACTOR_MAX WNI_CFG_MAX_RX_AMPDU_FACTOR_STAMAX
139#define CFG_MAX_RX_AMPDU_FACTOR_DEFAULT WNI_CFG_MAX_RX_AMPDU_FACTOR_STADEF
140
141/* Configuration added to enable/disable CTS2SELF in */
142/* Adaptive RX drain feature */
143#define CFG_ENABLE_ADAPT_RX_DRAIN_NAME "gEnableAdaptRxDrain"
144#define CFG_ENABLE_ADAPT_RX_DRAIN_MIN WNI_CFG_ENABLE_ADAPT_RX_DRAIN_STAMIN
145#define CFG_ENABLE_ADAPT_RX_DRAIN_MAX WNI_CFG_ENABLE_ADAPT_RX_DRAIN_STAMAX
146#define CFG_ENABLE_ADAPT_RX_DRAIN_DEFAULT WNI_CFG_ENABLE_ADAPT_RX_DRAIN_STADEF
147
148#define CFG_REG_CHANGE_DEF_COUNTRY_NAME "gRegulatoryChangeCountry"
149#define CFG_REG_CHANGE_DEF_COUNTRY_DEFAULT (0)
150#define CFG_REG_CHANGE_DEF_COUNTRY_MIN (0)
151#define CFG_REG_CHANGE_DEF_COUNTRY_MAX (1)
152
153#define CFG_ADVERTISE_CONCURRENT_OPERATION_NAME "gAdvertiseConcurrentOperation"
154#define CFG_ADVERTISE_CONCURRENT_OPERATION_DEFAULT (1)
155#define CFG_ADVERTISE_CONCURRENT_OPERATION_MIN (0)
156#define CFG_ADVERTISE_CONCURRENT_OPERATION_MAX (1)
157
158typedef enum {
159 eHDD_DOT11_MODE_AUTO = 0, /* covers all things we support */
160 eHDD_DOT11_MODE_abg, /* 11a/b/g only, no HT, no proprietary */
161 eHDD_DOT11_MODE_11b,
162 eHDD_DOT11_MODE_11g,
163 eHDD_DOT11_MODE_11n,
164 eHDD_DOT11_MODE_11g_ONLY,
165 eHDD_DOT11_MODE_11n_ONLY,
166 eHDD_DOT11_MODE_11b_ONLY,
167 eHDD_DOT11_MODE_11ac_ONLY,
168 eHDD_DOT11_MODE_11ac,
169 eHDD_DOT11_MODE_11a,
170} eHddDot11Mode;
171
172#define CFG_DOT11_MODE_NAME "gDot11Mode"
173#define CFG_DOT11_MODE_MIN eHDD_DOT11_MODE_AUTO
174#ifdef WLAN_FEATURE_11AC
175#define CFG_DOT11_MODE_DEFAULT eHDD_DOT11_MODE_11ac
176#else
177#define CFG_DOT11_MODE_DEFAULT eHDD_DOT11_MODE_11n
178#endif
179#define CFG_DOT11_MODE_MAX eHDD_DOT11_MODE_11a
180
181#define CFG_CHANNEL_BONDING_MODE_24GHZ_NAME "gChannelBondingMode24GHz"
182#define CFG_CHANNEL_BONDING_MODE_MIN WNI_CFG_CHANNEL_BONDING_MODE_STAMIN
183#define CFG_CHANNEL_BONDING_MODE_MAX WNI_CFG_CHANNEL_BONDING_MODE_STAMAX
184#define CFG_CHANNEL_BONDING_MODE_DEFAULT WNI_CFG_CHANNEL_BONDING_MODE_STADEF
185
186#define CFG_CHANNEL_BONDING_MODE_5GHZ_NAME "gChannelBondingMode5GHz"
187#define CFG_CHANNEL_BONDING_MODE_MIN WNI_CFG_CHANNEL_BONDING_MODE_STAMIN
188#define CFG_CHANNEL_BONDING_MODE_MAX WNI_CFG_CHANNEL_BONDING_MODE_STAMAX
189#define CFG_CHANNEL_BONDING_MODE_DEFAULT WNI_CFG_CHANNEL_BONDING_MODE_STADEF
190
191#define CFG_FIXED_RATE_NAME "gFixedRate"
192#define CFG_FIXED_RATE_MIN WNI_CFG_FIXED_RATE_STAMIN
193#define CFG_FIXED_RATE_MAX WNI_CFG_FIXED_RATE_STAMAX
194#define CFG_FIXED_RATE_DEFAULT WNI_CFG_FIXED_RATE_STADEF
195
196#define CFG_SHORT_GI_20MHZ_NAME "gShortGI20Mhz"
197#define CFG_SHORT_GI_20MHZ_MIN WNI_CFG_SHORT_GI_20MHZ_STAMIN
198#define CFG_SHORT_GI_20MHZ_MAX WNI_CFG_SHORT_GI_20MHZ_STAMAX
199#define CFG_SHORT_GI_20MHZ_DEFAULT WNI_CFG_SHORT_GI_20MHZ_STADEF
200
201#define CFG_SCAN_RESULT_AGE_COUNT_NAME "gScanResultAgeCount"
202#define CFG_SCAN_RESULT_AGE_COUNT_MIN (1)
203#define CFG_SCAN_RESULT_AGE_COUNT_MAX (100)
204#define CFG_SCAN_RESULT_AGE_COUNT_DEFAULT (3)
205
206/* All in seconds */
207/* Not Connect, No Power Save */
208#define CFG_SCAN_RESULT_AGE_TIME_NCNPS_NAME "gScanResultAgeNCNPS"
209#define CFG_SCAN_RESULT_AGE_TIME_NCNPS_MIN (10)
210#define CFG_SCAN_RESULT_AGE_TIME_NCNPS_MAX (10000)
211#define CFG_SCAN_RESULT_AGE_TIME_NCNPS_DEFAULT (50)
212/* Not Connect, Power Save */
213#define CFG_SCAN_RESULT_AGE_TIME_NCPS_NAME "gScanResultAgeNCPS"
214#define CFG_SCAN_RESULT_AGE_TIME_NCPS_MIN (10)
215#define CFG_SCAN_RESULT_AGE_TIME_NCPS_MAX (10000)
216#define CFG_SCAN_RESULT_AGE_TIME_NCPS_DEFAULT (300)
217/* Connect, No Power Save */
218#define CFG_SCAN_RESULT_AGE_TIME_CNPS_NAME "gScanResultAgeCNPS"
219#define CFG_SCAN_RESULT_AGE_TIME_CNPS_MIN (10)
220#define CFG_SCAN_RESULT_AGE_TIME_CNPS_MAX (10000)
221#define CFG_SCAN_RESULT_AGE_TIME_CNPS_DEFAULT (150)
222/* Connect, Power Save */
223#define CFG_SCAN_RESULT_AGE_TIME_CPS_NAME "gScanResultAgeCPS"
224#define CFG_SCAN_RESULT_AGE_TIME_CPS_MIN (10)
225#define CFG_SCAN_RESULT_AGE_TIME_CPS_MAX (10000)
226#define CFG_SCAN_RESULT_AGE_TIME_CPS_DEFAULT (600)
227
228#define CFG_RSSI_CATEGORY_GAP_NAME "gRssiCatGap"
229#define CFG_RSSI_CATEGORY_GAP_MIN (5)
230#define CFG_RSSI_CATEGORY_GAP_MAX (100)
231#define CFG_RSSI_CATEGORY_GAP_DEFAULT (5)
232
233#if defined (WLAN_FEATURE_VOWIFI_11R) || defined (FEATURE_WLAN_ESE) || defined(FEATURE_WLAN_LFR)
234#define CFG_ROAM_PREFER_5GHZ "gRoamPrefer5GHz"
235#define CFG_ROAM_PREFER_5GHZ_MIN (0)
236#define CFG_ROAM_PREFER_5GHZ_MAX (1)
237#define CFG_ROAM_PREFER_5GHZ_DEFAULT (1)
238
239/*
240 To enable, set gRoamIntraBand=1 (Roaming within band)
241 To disable, set gRoamIntraBand=0 (Roaming across band)
242 */
243#define CFG_ROAM_INTRA_BAND "gRoamIntraBand"
244#define CFG_ROAM_INTRA_BAND_MIN (0)
245#define CFG_ROAM_INTRA_BAND_MAX (1)
246#define CFG_ROAM_INTRA_BAND_DEFAULT (0)
247#endif
248
249#define CFG_SHORT_PREAMBLE_NAME "gShortPreamble"
250#define CFG_SHORT_PREAMBLE_MIN WNI_CFG_SHORT_PREAMBLE_STAMIN
251#define CFG_SHORT_PREAMBLE_MAX WNI_CFG_SHORT_PREAMBLE_STAMAX
252#define CFG_SHORT_PREAMBLE_DEFAULT WNI_CFG_SHORT_PREAMBLE_STADEF
253
254#define CFG_IBSS_BSSID_NAME "gIbssBssid"
255#define CFG_IBSS_BSSID_MIN "000000000000"
256#define CFG_IBSS_BSSID_MAX "ffffffffffff"
257#define CFG_IBSS_BSSID_DEFAULT "000AF5040506"
258
259#define CFG_INTF0_MAC_ADDR_NAME "Intf0MacAddress"
260#define CFG_INTF0_MAC_ADDR_MIN "000000000000"
261#define CFG_INTF0_MAC_ADDR_MAX "ffffffffffff"
262#define CFG_INTF0_MAC_ADDR_DEFAULT "000AF5898980"
263
264#define CFG_INTF1_MAC_ADDR_NAME "Intf1MacAddress"
265#define CFG_INTF1_MAC_ADDR_MIN "000000000000"
266#define CFG_INTF1_MAC_ADDR_MAX "ffffffffffff"
267#define CFG_INTF1_MAC_ADDR_DEFAULT "000AF5898981"
268
269#define CFG_INTF2_MAC_ADDR_NAME "Intf2MacAddress"
270#define CFG_INTF2_MAC_ADDR_MIN "000000000000"
271#define CFG_INTF2_MAC_ADDR_MAX "ffffffffffff"
272#define CFG_INTF2_MAC_ADDR_DEFAULT "000AF5898982"
273
274#define CFG_INTF3_MAC_ADDR_NAME "Intf3MacAddress"
275#define CFG_INTF3_MAC_ADDR_MIN "000000000000"
276#define CFG_INTF3_MAC_ADDR_MAX "ffffffffffff"
277#define CFG_INTF3_MAC_ADDR_DEFAULT "000AF5898983"
278
279#define CFG_AP_QOS_UAPSD_MODE_NAME "gEnableApUapsd" /* ACs to setup U-APSD for at assoc */
280#define CFG_AP_QOS_UAPSD_MODE_MIN (0)
281#define CFG_AP_QOS_UAPSD_MODE_MAX (1)
282#define CFG_AP_QOS_UAPSD_MODE_DEFAULT (1)
283
284#define CFG_AP_ENABLE_RANDOM_BSSID_NAME "gEnableApRandomBssid"
285#define CFG_AP_ENABLE_RANDOM_BSSID_MIN (0)
286#define CFG_AP_ENABLE_RANDOM_BSSID_MAX (1)
287#define CFG_AP_ENABLE_RANDOM_BSSID_DEFAULT (0)
288
289#define CFG_AP_ENABLE_PROTECTION_MODE_NAME "gEnableApProt"
290#define CFG_AP_ENABLE_PROTECTION_MODE_MIN (0)
291#define CFG_AP_ENABLE_PROTECTION_MODE_MAX (1)
292#define CFG_AP_ENABLE_PROTECTION_MODE_DEFAULT (1)
293
294/* Bit map for CFG_AP_PROTECTION_MODE_DEFAULT */
295/* LOWER byte for associated stations */
296/* UPPER byte for overlapping stations */
297/* each byte will have the following info */
298/* bit15 bit14 bit13 bit12 bit11 bit10 bit9 bit8 */
299/* OBSS RIFS LSIG_TXOP NON_GF HT20 FROM_11G FROM_11B FROM_11A */
300/* bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0 */
301/* OBSS RIFS LSIG_TXOP NON_GF HT_20 FROM_11G FROM_11B FROM_11A */
302#define CFG_AP_PROTECTION_MODE_NAME "gApProtection"
303#define CFG_AP_PROTECTION_MODE_MIN (0x0)
304#define CFG_AP_PROTECTION_MODE_MAX (0xFFFF)
305#define CFG_AP_PROTECTION_MODE_DEFAULT (0xBFFF)
306
307#define CFG_AP_OBSS_PROTECTION_MODE_NAME "gEnableApOBSSProt"
308#define CFG_AP_OBSS_PROTECTION_MODE_MIN (0)
309#define CFG_AP_OBSS_PROTECTION_MODE_MAX (1)
310#define CFG_AP_OBSS_PROTECTION_MODE_DEFAULT (0)
311
312#define CFG_AP_STA_SECURITY_SEPERATION_NAME "gDisableIntraBssFwd"
313#define CFG_AP_STA_SECURITY_SEPERATION_MIN (0)
314#define CFG_AP_STA_SECURITY_SEPERATION_MAX (1)
315#define CFG_AP_STA_SECURITY_SEPERATION_DEFAULT (0)
316
317#define CFG_AP_LISTEN_MODE_NAME "gEnablePhyAgcListenMode"
318#define CFG_AP_LISTEN_MODE_MIN (0)
319#define CFG_AP_LISTEN_MODE_MAX (128)
320#define CFG_AP_LISTEN_MODE_DEFAULT (128)
321
322#define CFG_AP_AUTO_SHUT_OFF "gAPAutoShutOff"
323#define CFG_AP_AUTO_SHUT_OFF_MIN (0)
324#define CFG_AP_AUTO_SHUT_OFF_MAX (4294967295UL)
325#define CFG_AP_AUTO_SHUT_OFF_DEFAULT (0)
326
327#ifdef FEATURE_WLAN_AUTO_SHUTDOWN
328#define CFG_WLAN_AUTO_SHUTDOWN "gWlanAutoShutdown"
329#define CFG_WLAN_AUTO_SHUTDOWN_MIN (0)
330#define CFG_WLAN_AUTO_SHUTDOWN_MAX (86400) /* Max 1 day timeout */
331#define CFG_WLAN_AUTO_SHUTDOWN_DEFAULT (0)
332#endif
333
334#ifdef FEATURE_WLAN_MCC_TO_SCC_SWITCH
335#define CFG_WLAN_MCC_TO_SCC_SWITCH_MODE "gWlanMccToSccSwitchMode"
336#define CFG_WLAN_MCC_TO_SCC_SWITCH_MODE_MIN (CDF_MCC_TO_SCC_SWITCH_DISABLE)
337#define CFG_WLAN_MCC_TO_SCC_SWITCH_MODE_MAX (CDF_MCC_TO_SCC_SWITCH_FORCE)
338#define CFG_WLAN_MCC_TO_SCC_SWITCH_MODE_DEFAULT (CDF_MCC_TO_SCC_SWITCH_DISABLE)
339#endif
340
341#define CFG_DISABLE_PACKET_FILTER "gDisablePacketFilter"
342#define CFG_DISABLE_PACKET_FILTER_MIN (0)
343#define CFG_DISABLE_PACKET_FILTER_MAX (0x1)
344#define CFG_DISABLE_PACKET_FILTER_DEFAULT (0)
345
346#define CFG_ENABLE_LTE_COEX "gEnableLTECoex"
347#define CFG_ENABLE_LTE_COEX_MIN (0)
348#define CFG_ENABLE_LTE_COEX_MAX (1)
349#define CFG_ENABLE_LTE_COEX_DEFAULT (0)
350
351#define CFG_AP_KEEP_ALIVE_PERIOD_NAME "gApKeepAlivePeriod"
352#define CFG_AP_KEEP_ALIVE_PERIOD_MIN WNI_CFG_AP_KEEP_ALIVE_TIMEOUT_STAMIN
353#define CFG_AP_KEEP_ALIVE_PERIOD_MAX WNI_CFG_AP_KEEP_ALIVE_TIMEOUT_STAMAX
354#define CFG_AP_KEEP_ALIVE_PERIOD_DEFAULT WNI_CFG_AP_KEEP_ALIVE_TIMEOUT_STADEF
355
356#define CFG_GO_KEEP_ALIVE_PERIOD_NAME "gGoKeepAlivePeriod"
357#define CFG_GO_KEEP_ALIVE_PERIOD_MIN WNI_CFG_GO_KEEP_ALIVE_TIMEOUT_STAMIN
358#define CFG_GO_KEEP_ALIVE_PERIOD_MAX WNI_CFG_GO_KEEP_ALIVE_TIMEOUT_STAMAX
359#define CFG_GO_KEEP_ALIVE_PERIOD_DEFAULT WNI_CFG_GO_KEEP_ALIVE_TIMEOUT_STADEF
360
361#define CFG_AP_LINK_MONITOR_PERIOD_NAME "gApLinkMonitorPeriod"
362#define CFG_AP_LINK_MONITOR_PERIOD_MIN (3)
363#define CFG_AP_LINK_MONITOR_PERIOD_MAX (50)
364#define CFG_AP_LINK_MONITOR_PERIOD_DEFAULT (10)
365
366/* gGoLinkMonitorPeriod is period where link is idle and where
367 * we send NULL frame
368 */
369#define CFG_GO_LINK_MONITOR_PERIOD_NAME "gGoLinkMonitorPeriod"
370#define CFG_GO_LINK_MONITOR_PERIOD_MIN (3)
371#define CFG_GO_LINK_MONITOR_PERIOD_MAX (50)
372#define CFG_GO_LINK_MONITOR_PERIOD_DEFAULT (10)
373
374#define CFG_BEACON_INTERVAL_NAME "gBeaconInterval"
375#define CFG_BEACON_INTERVAL_MIN WNI_CFG_BEACON_INTERVAL_STAMIN
376#define CFG_BEACON_INTERVAL_MAX WNI_CFG_BEACON_INTERVAL_STAMAX
377#define CFG_BEACON_INTERVAL_DEFAULT WNI_CFG_BEACON_INTERVAL_STADEF
378
379/* Additional Handoff related Parameters */
380#define CFG_ROAMING_TIME_NAME "gRoamingTime"
381#define CFG_ROAMING_TIME_MIN (0)
382#define CFG_ROAMING_TIME_MAX (4294967UL)
383#define CFG_ROAMING_TIME_DEFAULT (10)
384
385#define CFG_VCC_RSSI_TRIGGER_NAME "gVccRssiTrigger"
386#define CFG_VCC_RSSI_TRIGGER_MIN (0)
387#define CFG_VCC_RSSI_TRIGGER_MAX (80)
388#define CFG_VCC_RSSI_TRIGGER_DEFAULT (80)
389
390#define CFG_VCC_UL_MAC_LOSS_THRESH_NAME "gVccUlMacLossThresh"
391#define CFG_VCC_UL_MAC_LOSS_THRESH_MIN (0)
392#define CFG_VCC_UL_MAC_LOSS_THRESH_MAX (9)
393#define CFG_VCC_UL_MAC_LOSS_THRESH_DEFAULT (9)
394
395#define CFG_PASSIVE_MAX_CHANNEL_TIME_NAME "gPassiveMaxChannelTime"
396#define CFG_PASSIVE_MAX_CHANNEL_TIME_MIN (0)
397#define CFG_PASSIVE_MAX_CHANNEL_TIME_MAX (10000)
398#define CFG_PASSIVE_MAX_CHANNEL_TIME_DEFAULT (110)
399
400#define CFG_PASSIVE_MIN_CHANNEL_TIME_NAME "gPassiveMinChannelTime"
401#define CFG_PASSIVE_MIN_CHANNEL_TIME_MIN (0)
402#define CFG_PASSIVE_MIN_CHANNEL_TIME_MAX (10000)
403#define CFG_PASSIVE_MIN_CHANNEL_TIME_DEFAULT (60)
404
405#define CFG_ACTIVE_MAX_CHANNEL_TIME_NAME "gActiveMaxChannelTime"
406#define CFG_ACTIVE_MAX_CHANNEL_TIME_MIN (0)
407#define CFG_ACTIVE_MAX_CHANNEL_TIME_MAX (10000)
408#define CFG_ACTIVE_MAX_CHANNEL_TIME_DEFAULT (40)
409
410#define CFG_ACTIVE_MIN_CHANNEL_TIME_NAME "gActiveMinChannelTime"
411#define CFG_ACTIVE_MIN_CHANNEL_TIME_MIN (0)
412#define CFG_ACTIVE_MIN_CHANNEL_TIME_MAX (10000)
413#define CFG_ACTIVE_MIN_CHANNEL_TIME_DEFAULT (20)
414
415#define CFG_RETRY_LIMIT_ZERO_NAME "gRetryLimitZero"
416#define CFG_RETRY_LIMIT_ZERO_MIN (0)
417#define CFG_RETRY_LIMIT_ZERO_MAX (15)
418#define CFG_RETRY_LIMIT_ZERO_DEFAULT (5)
419
420#define CFG_RETRY_LIMIT_ONE_NAME "gRetryLimitOne"
421#define CFG_RETRY_LIMIT_ONE_MIN (0)
422#define CFG_RETRY_LIMIT_ONE_MAX (15)
423#define CFG_RETRY_LIMIT_ONE_DEFAULT (10)
424
425#define CFG_RETRY_LIMIT_TWO_NAME "gRetryLimitTwo"
426#define CFG_RETRY_LIMIT_TWO_MIN (0)
427#define CFG_RETRY_LIMIT_TWO_MAX (15)
428#define CFG_RETRY_LIMIT_TWO_DEFAULT (15)
429
430#ifdef WLAN_AP_STA_CONCURRENCY
431
432#define CFG_PASSIVE_MAX_CHANNEL_TIME_CONC_NAME "gPassiveMaxChannelTimeConc"
433#define CFG_PASSIVE_MAX_CHANNEL_TIME_CONC_MIN (0)
434#define CFG_PASSIVE_MAX_CHANNEL_TIME_CONC_MAX (10000)
435#define CFG_PASSIVE_MAX_CHANNEL_TIME_CONC_DEFAULT (110)
436
437#define CFG_PASSIVE_MIN_CHANNEL_TIME_CONC_NAME "gPassiveMinChannelTimeConc"
438#define CFG_PASSIVE_MIN_CHANNEL_TIME_CONC_MIN (0)
439#define CFG_PASSIVE_MIN_CHANNEL_TIME_CONC_MAX (10000)
440#define CFG_PASSIVE_MIN_CHANNEL_TIME_CONC_DEFAULT (60)
441
442#define CFG_ACTIVE_MAX_CHANNEL_TIME_CONC_NAME "gActiveMaxChannelTimeConc"
443#define CFG_ACTIVE_MAX_CHANNEL_TIME_CONC_MIN (0)
444#define CFG_ACTIVE_MAX_CHANNEL_TIME_CONC_MAX (10000)
445#define CFG_ACTIVE_MAX_CHANNEL_TIME_CONC_DEFAULT (40)
446
447#define CFG_ACTIVE_MIN_CHANNEL_TIME_CONC_NAME "gActiveMinChannelTimeConc"
448#define CFG_ACTIVE_MIN_CHANNEL_TIME_CONC_MIN (0)
449#define CFG_ACTIVE_MIN_CHANNEL_TIME_CONC_MAX (10000)
450#define CFG_ACTIVE_MIN_CHANNEL_TIME_CONC_DEFAULT (20)
451
452#define CFG_REST_TIME_CONC_NAME "gRestTimeConc"
453#define CFG_REST_TIME_CONC_MIN (0)
454#define CFG_REST_TIME_CONC_MAX (10000)
455#define CFG_REST_TIME_CONC_DEFAULT (100)
456
457#define CFG_NUM_STA_CHAN_COMBINED_CONC_NAME "gNumStaChanCombinedConc"
458#define CFG_NUM_STA_CHAN_COMBINED_CONC_MIN (1)
459#define CFG_NUM_STA_CHAN_COMBINED_CONC_MAX (255)
460#define CFG_NUM_STA_CHAN_COMBINED_CONC_DEFAULT (3)
461
462#define CFG_NUM_P2P_CHAN_COMBINED_CONC_NAME "gNumP2PChanCombinedConc"
463#define CFG_NUM_P2P_CHAN_COMBINED_CONC_MIN (1)
464#define CFG_NUM_P2P_CHAN_COMBINED_CONC_MAX (255)
465#define CFG_NUM_P2P_CHAN_COMBINED_CONC_DEFAULT (1)
466#endif
467
468#define CFG_MAX_PS_POLL_NAME "gMaxPsPoll"
469#define CFG_MAX_PS_POLL_MIN WNI_CFG_MAX_PS_POLL_STAMIN
470#define CFG_MAX_PS_POLL_MAX WNI_CFG_MAX_PS_POLL_STAMAX
471#define CFG_MAX_PS_POLL_DEFAULT WNI_CFG_MAX_PS_POLL_STADEF
472
473#define CFG_MAX_TX_POWER_NAME "gTxPowerCap"
474#define CFG_MAX_TX_POWER_MIN WNI_CFG_CURRENT_TX_POWER_LEVEL_STAMIN
475#define CFG_MAX_TX_POWER_MAX WNI_CFG_CURRENT_TX_POWER_LEVEL_STAMAX
476/* Not to use CFG default because if no registry setting, this is ignored by SME. */
477#define CFG_MAX_TX_POWER_DEFAULT WNI_CFG_CURRENT_TX_POWER_LEVEL_STAMAX
478
479#define CFG_LOW_GAIN_OVERRIDE_NAME "gLowGainOverride"
480#define CFG_LOW_GAIN_OVERRIDE_MIN WNI_CFG_LOW_GAIN_OVERRIDE_STAMIN
481#define CFG_LOW_GAIN_OVERRIDE_MAX WNI_CFG_LOW_GAIN_OVERRIDE_STAMAX
482#define CFG_LOW_GAIN_OVERRIDE_DEFAULT WNI_CFG_LOW_GAIN_OVERRIDE_STADEF
483
484#define CFG_RSSI_FILTER_PERIOD_NAME "gRssiFilterPeriod"
485#define CFG_RSSI_FILTER_PERIOD_MIN WNI_CFG_RSSI_FILTER_PERIOD_STAMIN
486#define CFG_RSSI_FILTER_PERIOD_MAX WNI_CFG_RSSI_FILTER_PERIOD_STAMAX
487/* Increased this value for Non-ESE AP. This is cause FW RSSI Monitoring */
488/* the consumer of this value is ON by default. So to impact power numbers */
489/* we are setting this to a high value. */
490#define CFG_RSSI_FILTER_PERIOD_DEFAULT WNI_CFG_RSSI_FILTER_PERIOD_STADEF
491
492#define CFG_IGNORE_DTIM_NAME "gIgnoreDtim"
493#define CFG_IGNORE_DTIM_MIN WNI_CFG_IGNORE_DTIM_STAMIN
494#define CFG_IGNORE_DTIM_MAX WNI_CFG_IGNORE_DTIM_STAMAX
495#define CFG_IGNORE_DTIM_DEFAULT WNI_CFG_IGNORE_DTIM_STADEF
496
497#define CFG_MAX_LI_MODULATED_DTIM_NAME "gMaxLIModulatedDTIM"
498#define CFG_MAX_LI_MODULATED_DTIM_MIN (1)
499#define CFG_MAX_LI_MODULATED_DTIM_MAX (10)
500#define CFG_MAX_LI_MODULATED_DTIM_DEFAULT (10)
501
502#define CFG_RX_ANT_CONFIGURATION_NAME "gNumRxAnt"
503#define CFG_RX_ANT_CONFIGURATION_NAME_MIN (1)
504#define CFG_RX_ANT_CONFIGURATION_NAME_MAX (2)
505#define CFG_RX_ANT_CONFIGURATION_NAME_DEFAULT (2)
506
507#define CFG_FW_HEART_BEAT_MONITORING_NAME "gEnableFWHeartBeatMonitoring"
508#define CFG_FW_HEART_BEAT_MONITORING_MIN (0)
509#define CFG_FW_HEART_BEAT_MONITORING_MAX (1)
510#define CFG_FW_HEART_BEAT_MONITORING_DEFAULT (1)
511
512#define CFG_FW_BEACON_FILTERING_NAME "gEnableFWBeaconFiltering"
513#define CFG_FW_BEACON_FILTERING_MIN (0)
514#define CFG_FW_BEACON_FILTERING_MAX (1)
515#define CFG_FW_BEACON_FILTERING_DEFAULT (1)
516
517#define CFG_FW_RSSI_MONITORING_NAME "gEnableFWRssiMonitoring"
518#define CFG_FW_RSSI_MONITORING_MIN (0)
519#define CFG_FW_RSSI_MONITORING_MAX (1)
520#define CFG_FW_RSSI_MONITORING_DEFAULT (1)
521
522/* enable use of long duration RTS-CTS protection when SAP goes off channel
523 * in MCC mode
524 */
525#define CFG_FW_MCC_RTS_CTS_PROT_NAME "gFWMccRtsCtsProtection"
526#define CFG_FW_MCC_RTS_CTS_PROT_MIN (0)
527#define CFG_FW_MCC_RTS_CTS_PROT_MAX (1)
528#define CFG_FW_MCC_RTS_CTS_PROT_DEFAULT (0)
529
530/* Enable use of broadcast probe response to increase the detectability of
531 * SAP in MCC mode
532 */
533#define CFG_FW_MCC_BCAST_PROB_RESP_NAME "gFWMccBCastProbeResponse"
534#define CFG_FW_MCC_BCAST_PROB_RESP_MIN (0)
535#define CFG_FW_MCC_BCAST_PROB_RESP_MAX (1)
536#define CFG_FW_MCC_BCAST_PROB_RESP_DEFAULT (0)
537
538#define CFG_DATA_INACTIVITY_TIMEOUT_NAME "gDataInactivityTimeout"
539#define CFG_DATA_INACTIVITY_TIMEOUT_MIN (1)
540#define CFG_DATA_INACTIVITY_TIMEOUT_MAX (255)
541#define CFG_DATA_INACTIVITY_TIMEOUT_DEFAULT (20)
542
543#define CFG_RF_SETTLING_TIME_CLK_NAME "rfSettlingTimeUs"
544#define CFG_RF_SETTLING_TIME_CLK_MIN (0)
545#define CFG_RF_SETTLING_TIME_CLK_MAX (60000)
546#define CFG_RF_SETTLING_TIME_CLK_DEFAULT (1500)
547
548#define CFG_INFRA_STA_KEEP_ALIVE_PERIOD_NAME "gStaKeepAlivePeriod"
549#define CFG_INFRA_STA_KEEP_ALIVE_PERIOD_MIN (0)
550#define CFG_INFRA_STA_KEEP_ALIVE_PERIOD_MAX (65535)
551#define CFG_INFRA_STA_KEEP_ALIVE_PERIOD_DEFAULT (0)
552
553/* WMM configuration */
554#define CFG_QOS_WMM_MODE_NAME "WmmIsEnabled"
555#define CFG_QOS_WMM_MODE_MIN (0)
556#define CFG_QOS_WMM_MODE_MAX (2) /* HDD_WMM_NO_QOS */
557#define CFG_QOS_WMM_MODE_DEFAULT (0) /* HDD_WMM_AUTO */
558
559#define CFG_QOS_WMM_80211E_ENABLED_NAME "80211eIsEnabled"
560#define CFG_QOS_WMM_80211E_ENABLED_MIN (0)
561#define CFG_QOS_WMM_80211E_ENABLED_MAX (1)
562#define CFG_QOS_WMM_80211E_ENABLED_DEFAULT (0)
563
564#define CFG_QOS_WMM_UAPSD_MASK_NAME "UapsdMask" /* ACs to setup U-APSD for at assoc */
565#define CFG_QOS_WMM_UAPSD_MASK_MIN (0x00)
566#define CFG_QOS_WMM_UAPSD_MASK_MAX (0xFF)
567#define CFG_QOS_WMM_UAPSD_MASK_DEFAULT (0x00)
568
569#define CFG_QOS_WMM_INFRA_UAPSD_VO_SRV_INTV_NAME "InfraUapsdVoSrvIntv"
570#define CFG_QOS_WMM_INFRA_UAPSD_VO_SRV_INTV_MIN (0)
571#define CFG_QOS_WMM_INFRA_UAPSD_VO_SRV_INTV_MAX (4294967295UL)
572#define CFG_QOS_WMM_INFRA_UAPSD_VO_SRV_INTV_DEFAULT (20)
573
574#define CFG_QOS_WMM_INFRA_UAPSD_VO_SUS_INTV_NAME "InfraUapsdVoSuspIntv"
575#define CFG_QOS_WMM_INFRA_UAPSD_VO_SUS_INTV_MIN (0)
576#define CFG_QOS_WMM_INFRA_UAPSD_VO_SUS_INTV_MAX (4294967295UL)
577#define CFG_QOS_WMM_INFRA_UAPSD_VO_SUS_INTV_DEFAULT (2000)
578
579#define CFG_QOS_WMM_INFRA_UAPSD_VI_SRV_INTV_NAME "InfraUapsdViSrvIntv"
580#define CFG_QOS_WMM_INFRA_UAPSD_VI_SRV_INTV_MIN (0)
581#define CFG_QOS_WMM_INFRA_UAPSD_VI_SRV_INTV_MAX (4294967295UL)
582#define CFG_QOS_WMM_INFRA_UAPSD_VI_SRV_INTV_DEFAULT (300)
583
584#define CFG_QOS_WMM_INFRA_UAPSD_VI_SUS_INTV_NAME "InfraUapsdViSuspIntv"
585#define CFG_QOS_WMM_INFRA_UAPSD_VI_SUS_INTV_MIN (0)
586#define CFG_QOS_WMM_INFRA_UAPSD_VI_SUS_INTV_MAX (4294967295UL)
587#define CFG_QOS_WMM_INFRA_UAPSD_VI_SUS_INTV_DEFAULT (2000)
588
589#define CFG_QOS_WMM_INFRA_UAPSD_BE_SRV_INTV_NAME "InfraUapsdBeSrvIntv"
590#define CFG_QOS_WMM_INFRA_UAPSD_BE_SRV_INTV_MIN (0)
591#define CFG_QOS_WMM_INFRA_UAPSD_BE_SRV_INTV_MAX (4294967295UL)
592#define CFG_QOS_WMM_INFRA_UAPSD_BE_SRV_INTV_DEFAULT (300)
593
594#define CFG_QOS_WMM_INFRA_UAPSD_BE_SUS_INTV_NAME "InfraUapsdBeSuspIntv"
595#define CFG_QOS_WMM_INFRA_UAPSD_BE_SUS_INTV_MIN (0)
596#define CFG_QOS_WMM_INFRA_UAPSD_BE_SUS_INTV_MAX (4294967295UL)
597#define CFG_QOS_WMM_INFRA_UAPSD_BE_SUS_INTV_DEFAULT (2000)
598
599#define CFG_QOS_WMM_INFRA_UAPSD_BK_SRV_INTV_NAME "InfraUapsdBkSrvIntv"
600#define CFG_QOS_WMM_INFRA_UAPSD_BK_SRV_INTV_MIN (0)
601#define CFG_QOS_WMM_INFRA_UAPSD_BK_SRV_INTV_MAX (4294967295UL)
602#define CFG_QOS_WMM_INFRA_UAPSD_BK_SRV_INTV_DEFAULT (300)
603
604#define CFG_QOS_WMM_INFRA_UAPSD_BK_SUS_INTV_NAME "InfraUapsdBkSuspIntv"
605#define CFG_QOS_WMM_INFRA_UAPSD_BK_SUS_INTV_MIN (0)
606#define CFG_QOS_WMM_INFRA_UAPSD_BK_SUS_INTV_MAX (4294967295UL)
607#define CFG_QOS_WMM_INFRA_UAPSD_BK_SUS_INTV_DEFAULT (2000)
608
609#ifdef FEATURE_WLAN_ESE
610#define CFG_QOS_WMM_INFRA_INACTIVITY_INTERVAL_NAME "InfraInactivityInterval"
611#define CFG_QOS_WMM_INFRA_INACTIVITY_INTERVAL_MIN (0)
612#define CFG_QOS_WMM_INFRA_INACTIVITY_INTERVAL_MAX (4294967295UL)
613#define CFG_QOS_WMM_INFRA_INACTIVITY_INTERVAL_DEFAULT (0) /* disabled */
614
615#define CFG_ESE_FEATURE_ENABLED_NAME "EseEnabled"
616#define CFG_ESE_FEATURE_ENABLED_MIN (0)
617#define CFG_ESE_FEATURE_ENABLED_MAX (1)
618#define CFG_ESE_FEATURE_ENABLED_DEFAULT (0) /* disabled */
619#endif /* FEATURE_WLAN_ESE */
620
621#ifdef FEATURE_WLAN_LFR
622#define CFG_LFR_FEATURE_ENABLED_NAME "FastRoamEnabled"
623#define CFG_LFR_FEATURE_ENABLED_MIN (0)
624#define CFG_LFR_FEATURE_ENABLED_MAX (1)
625#define CFG_LFR_FEATURE_ENABLED_DEFAULT (0) /* disabled */
626
627#define CFG_LFR_MAWC_FEATURE_ENABLED_NAME "MAWCEnabled"
628#define CFG_LFR_MAWC_FEATURE_ENABLED_MIN (0)
629#define CFG_LFR_MAWC_FEATURE_ENABLED_MAX (1)
630#define CFG_LFR_MAWC_FEATURE_ENABLED_DEFAULT (0) /* disabled */
631#endif /* FEATURE_WLAN_LFR */
632
633#if defined (WLAN_FEATURE_VOWIFI_11R) || defined (FEATURE_WLAN_ESE) || defined(FEATURE_WLAN_LFR)
634/* This flag will control fasttransition in case of 11r and ese. */
635/* Basically with this the whole neighbor roam, pre-auth, reassoc */
636/* can be turned ON/OFF. */
637/* With this turned OFF 11r will completely not work. */
638/* For 11r this flag has to be ON. */
639/* For ESE fastroam will not work. */
640#define CFG_FAST_TRANSITION_ENABLED_NAME "FastTransitionEnabled"
641#define CFG_FAST_TRANSITION_ENABLED_NAME_MIN (0)
642#define CFG_FAST_TRANSITION_ENABLED_NAME_MAX (1)
643#define CFG_FAST_TRANSITION_ENABLED_NAME_DEFAULT (1) /* Enabled */
644
645/* This parameter is used to decide whether to Roam or not.
646 * AP1 is the currently associated AP and AP2 is chosen for roaming.
647 * The Roaming will happen only if AP2 has better Signal Quality and it has a RSSI better than AP1
648 * in terms of RoamRssiDiff,and RoamRssiDiff is the number of units (typically measured in dB) AP2
649 * is better than AP1.
650 * This check is not done if the value is Zero */
651#define CFG_ROAM_RSSI_DIFF_NAME "RoamRssiDiff"
652#define CFG_ROAM_RSSI_DIFF_MIN (0)
653#define CFG_ROAM_RSSI_DIFF_MAX (30)
654#define CFG_ROAM_RSSI_DIFF_DEFAULT (5)
655
656/*This parameter is used to set Wireless Extended Security Mode.*/
657#define CFG_ENABLE_WES_MODE_NAME "gWESModeEnabled"
658#define CFG_ENABLE_WES_MODE_NAME_MIN (0)
659#define CFG_ENABLE_WES_MODE_NAME_MAX (1)
660#define CFG_ENABLE_WES_MODE_NAME_DEFAULT (0)
661
662#define CFG_ROAM_SCAN_N_PROBES "gRoamScanNProbes"
663#define CFG_ROAM_SCAN_N_PROBES_MIN (1)
664#define CFG_ROAM_SCAN_N_PROBES_MAX (10)
665#define CFG_ROAM_SCAN_N_PROBES_DEFAULT (2)
666
667#define CFG_ROAM_SCAN_HOME_AWAY_TIME "gRoamScanHomeAwayTime"
668#define CFG_ROAM_SCAN_HOME_AWAY_TIME_MIN (0) /* 0 for disable */
669#define CFG_ROAM_SCAN_HOME_AWAY_TIME_MAX (300)
670#define CFG_ROAM_SCAN_HOME_AWAY_TIME_DEFAULT (CFG_ROAM_SCAN_HOME_AWAY_TIME_MIN)
671/* disabled by default */
672
673#endif /* (WLAN_FEATURE_VOWIFI_11R) || defined (FEATURE_WLAN_ESE) || defined(FEATURE_WLAN_LFR) */
674
675#ifdef FEATURE_WLAN_OKC
676#define CFG_OKC_FEATURE_ENABLED_NAME "OkcEnabled"
677#define CFG_OKC_FEATURE_ENABLED_MIN (0)
678#define CFG_OKC_FEATURE_ENABLED_MAX (1)
679#define CFG_OKC_FEATURE_ENABLED_DEFAULT (1)
680#endif
681
682#define CFG_ROAM_SCAN_OFFLOAD_ENABLED "gRoamScanOffloadEnabled"
683#define CFG_ROAM_SCAN_OFFLOAD_ENABLED_MIN (0)
684#define CFG_ROAM_SCAN_OFFLOAD_ENABLED_MAX (1)
685#define CFG_ROAM_SCAN_OFFLOAD_ENABLED_DEFAULT (1)
686
687#define CFG_QOS_WMM_PKT_CLASSIFY_BASIS_NAME "PktClassificationBasis" /* DSCP or 802.1Q */
688#define CFG_QOS_WMM_PKT_CLASSIFY_BASIS_MIN (0)
689#define CFG_QOS_WMM_PKT_CLASSIFY_BASIS_MAX (1)
690#define CFG_QOS_WMM_PKT_CLASSIFY_BASIS_DEFAULT (0) /* DSCP */
691
692/* default TSPEC parameters for AC_VO */
693#define CFG_QOS_WMM_INFRA_DIR_AC_VO_NAME "InfraDirAcVo"
694#define CFG_QOS_WMM_INFRA_DIR_AC_VO_MIN (0)
695#define CFG_QOS_WMM_INFRA_DIR_AC_VO_MAX (3)
696#define CFG_QOS_WMM_INFRA_DIR_AC_VO_DEFAULT (3) /* WLAN_QCT_CUST_WMM_TSDIR_BOTH */
697
698#define CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_VO_NAME "InfraNomMsduSizeAcVo"
699#define CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_VO_MIN (0x0)
700#define CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_VO_MAX (0xFFFF)
701#define CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_VO_DEFAULT (0x80D0)
702
703#define CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_VO_NAME "InfraMeanDataRateAcVo"
704#define CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_VO_MIN (0x0)
705#define CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_VO_MAX (0xFFFFFFFF)
706#define CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_VO_DEFAULT (0x14500)
707
708#define CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_VO_NAME "InfraMinPhyRateAcVo"
709#define CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_VO_MIN (0x0)
710#define CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_VO_MAX (0xFFFFFFFF)
711#define CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_VO_DEFAULT (0x5B8D80)
712
713#define CFG_QOS_WMM_INFRA_SBA_AC_VO_NAME "InfraSbaAcVo"
714#define CFG_QOS_WMM_INFRA_SBA_AC_VO_MIN (0x2001)
715#define CFG_QOS_WMM_INFRA_SBA_AC_VO_MAX (0xFFFF)
716#define CFG_QOS_WMM_INFRA_SBA_AC_VO_DEFAULT (0x2001)
717
718/* default TSPEC parameters for AC_VI */
719#define CFG_QOS_WMM_INFRA_DIR_AC_VI_NAME "InfraDirAcVi"
720#define CFG_QOS_WMM_INFRA_DIR_AC_VI_MIN (0)
721#define CFG_QOS_WMM_INFRA_DIR_AC_VI_MAX (3)
722#define CFG_QOS_WMM_INFRA_DIR_AC_VI_DEFAULT (3) /* WLAN_QCT_CUST_WMM_TSDIR_BOTH */
723
724#define CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_VI_NAME "InfraNomMsduSizeAcVi"
725#define CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_VI_MIN (0x0)
726#define CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_VI_MAX (0xFFFF)
727#define CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_VI_DEFAULT (0x85DC)
728
729#define CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_VI_NAME "InfraMeanDataRateAcVi"
730#define CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_VI_MIN (0x0)
731#define CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_VI_MAX (0xFFFFFFFF)
732#define CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_VI_DEFAULT (0x57E40)
733
734#define CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_VI_NAME "InfraMinPhyRateAcVi"
735#define CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_VI_MIN (0x0)
736#define CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_VI_MAX (0xFFFFFFFF)
737#define CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_VI_DEFAULT (0x5B8D80)
738
739#define CFG_QOS_WMM_INFRA_SBA_AC_VI_NAME "InfraSbaAcVi"
740#define CFG_QOS_WMM_INFRA_SBA_AC_VI_MIN (0x2001)
741#define CFG_QOS_WMM_INFRA_SBA_AC_VI_MAX (0xFFFF)
742#define CFG_QOS_WMM_INFRA_SBA_AC_VI_DEFAULT (0x2001)
743
744/* default TSPEC parameters for AC_BE*/
745#define CFG_QOS_WMM_INFRA_DIR_AC_BE_NAME "InfraDirAcBe"
746#define CFG_QOS_WMM_INFRA_DIR_AC_BE_MIN (0)
747#define CFG_QOS_WMM_INFRA_DIR_AC_BE_MAX (3)
748#define CFG_QOS_WMM_INFRA_DIR_AC_BE_DEFAULT (3) /* WLAN_QCT_CUST_WMM_TSDIR_BOTH */
749
750#define CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_BE_NAME "InfraNomMsduSizeAcBe"
751#define CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_BE_MIN (0x0)
752#define CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_BE_MAX (0xFFFF)
753#define CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_BE_DEFAULT (0x85DC)
754
755#define CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_BE_NAME "InfraMeanDataRateAcBe"
756#define CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_BE_MIN (0x0)
757#define CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_BE_MAX (0xFFFFFFFF)
758#define CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_BE_DEFAULT (0x493E0)
759
760#define CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_BE_NAME "InfraMinPhyRateAcBe"
761#define CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_BE_MIN (0x0)
762#define CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_BE_MAX (0xFFFFFFFF)
763#define CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_BE_DEFAULT (0x5B8D80)
764
765#define CFG_QOS_WMM_INFRA_SBA_AC_BE_NAME "InfraSbaAcBe"
766#define CFG_QOS_WMM_INFRA_SBA_AC_BE_MIN (0x2001)
767#define CFG_QOS_WMM_INFRA_SBA_AC_BE_MAX (0xFFFF)
768#define CFG_QOS_WMM_INFRA_SBA_AC_BE_DEFAULT (0x2001)
769
770/* default TSPEC parameters for AC_Bk*/
771#define CFG_QOS_WMM_INFRA_DIR_AC_BK_NAME "InfraDirAcBk"
772#define CFG_QOS_WMM_INFRA_DIR_AC_BK_MIN (0)
773#define CFG_QOS_WMM_INFRA_DIR_AC_BK_MAX (3)
774#define CFG_QOS_WMM_INFRA_DIR_AC_BK_DEFAULT (3) /* WLAN_QCT_CUST_WMM_TSDIR_BOTH */
775
776#define CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_BK_NAME "InfraNomMsduSizeAcBk"
777#define CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_BK_MIN (0x0)
778#define CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_BK_MAX (0xFFFF)
779#define CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_BK_DEFAULT (0x85DC)
780
781#define CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_BK_NAME "InfraMeanDataRateAcBk"
782#define CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_BK_MIN (0x0)
783#define CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_BK_MAX (0xFFFFFFFF)
784#define CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_BK_DEFAULT (0x493E0)
785
786#define CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_BK_NAME "InfraMinPhyRateAcBk"
787#define CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_BK_MIN (0x0)
788#define CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_BK_MAX (0xFFFFFFFF)
789#define CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_BK_DEFAULT (0x5B8D80)
790
791#define CFG_QOS_WMM_INFRA_SBA_AC_BK_NAME "InfraSbaAcBk"
792#define CFG_QOS_WMM_INFRA_SBA_AC_BK_MIN (0x2001)
793#define CFG_QOS_WMM_INFRA_SBA_AC_BK_MAX (0xFFFF)
794#define CFG_QOS_WMM_INFRA_SBA_AC_BK_DEFAULT (0x2001)
795
796#define CFG_TL_DELAYED_TRGR_FRM_INT_NAME "DelayedTriggerFrmInt"
797#define CFG_TL_DELAYED_TRGR_FRM_INT_MIN 1
798#define CFG_TL_DELAYED_TRGR_FRM_INT_MAX (4294967295UL)
799#define CFG_TL_DELAYED_TRGR_FRM_INT_DEFAULT 3000
800
801#if defined WLAN_FEATURE_VOWIFI
802#define CFG_RRM_ENABLE_NAME "gRrmEnable"
803#define CFG_RRM_ENABLE_MIN (0)
804#define CFG_RRM_ENABLE_MAX (1)
805#define CFG_RRM_ENABLE_DEFAULT (0)
806
807#define CFG_RRM_OPERATING_CHAN_MAX_DURATION_NAME "gRrmOperChanMax" /* section 11.10.3 IEEE std. 802.11k-2008 */
808#define CFG_RRM_OPERATING_CHAN_MAX_DURATION_MIN (0) /* Maxduration = 2^(maxDuration - 4) * bcnIntvl. */
809#define CFG_RRM_OPERATING_CHAN_MAX_DURATION_MAX (8)
810#define CFG_RRM_OPERATING_CHAN_MAX_DURATION_DEFAULT (3) /* max duration = 2^-1 * bcnIntvl (50% of bcn intvl) */
811
812#define CFG_RRM_NON_OPERATING_CHAN_MAX_DURATION_NAME "gRrmNonOperChanMax" /* Same as above. */
813#define CFG_RRM_NON_OPERATING_CHAN_MAX_DURATION_MIN (0)
814#define CFG_RRM_NON_OPERATING_CHAN_MAX_DURATION_MAX (8)
815#define CFG_RRM_NON_OPERATING_CHAN_MAX_DURATION_DEFAULT (3)
816
817#define CFG_RRM_MEAS_RANDOMIZATION_INTVL_NAME "gRrmRandnIntvl"
818#define CFG_RRM_MEAS_RANDOMIZATION_INTVL_MIN (10)
819#define CFG_RRM_MEAS_RANDOMIZATION_INTVL_MAX (100)
820#define CFG_RRM_MEAS_RANDOMIZATION_INTVL_DEFAULT (100)
821#endif
822
823#define CFG_QOS_IMPLICIT_SETUP_ENABLED_NAME "ImplicitQosIsEnabled"
824#define CFG_QOS_IMPLICIT_SETUP_ENABLED_MIN (0)
825#define CFG_QOS_IMPLICIT_SETUP_ENABLED_MAX (1)
826#define CFG_QOS_IMPLICIT_SETUP_ENABLED_DEFAULT (1)
827
828#define CFG_ENABLE_LOGP_NAME "gEnableLogp"
829#define CFG_ENABLE_LOGP_MIN (0)
830#define CFG_ENABLE_LOGP_MAX (1)
831#define CFG_ENABLE_LOGP_DEFAULT (0)
832
833#if defined WLAN_FEATURE_VOWIFI_11R
834#define CFG_FT_RESOURCE_REQ_NAME "gFTResourceReqSupported"
835#define CFG_FT_RESOURCE_REQ_MIN (0)
836#define CFG_FT_RESOURCE_REQ_MAX (1)
837#define CFG_FT_RESOURCE_REQ_DEFAULT (0)
838#endif
839
840#define CFG_TELE_BCN_TRANS_LI_NAME "telescopicBeaconTransListenInterval"
841#define CFG_TELE_BCN_TRANS_LI_MIN (0)
842#define CFG_TELE_BCN_TRANS_LI_MAX (7)
843#define CFG_TELE_BCN_TRANS_LI_DEFAULT (3)
844
845#define CFG_TELE_BCN_TRANS_LI_NUM_IDLE_BCNS_NAME "telescopicBeaconTransListenIntervalNumIdleBcns"
846#define CFG_TELE_BCN_TRANS_LI_NUM_IDLE_BCNS_MIN (5)
847#define CFG_TELE_BCN_TRANS_LI_NUM_IDLE_BCNS_MAX (255)
848#define CFG_TELE_BCN_TRANS_LI_NUM_IDLE_BCNS_DEFAULT (10)
849
850#define CFG_TELE_BCN_MAX_LI_NAME "telescopicBeaconMaxListenInterval"
851#define CFG_TELE_BCN_MAX_LI_MIN (0)
852#define CFG_TELE_BCN_MAX_LI_MAX (7)
853#define CFG_TELE_BCN_MAX_LI_DEFAULT (5)
854
855#define CFG_TELE_BCN_MAX_LI_NUM_IDLE_BCNS_NAME "telescopicBeaconMaxListenIntervalNumIdleBcns"
856#define CFG_TELE_BCN_MAX_LI_NUM_IDLE_BCNS_MIN (5)
857#define CFG_TELE_BCN_MAX_LI_NUM_IDLE_BCNS_MAX (255)
858#define CFG_TELE_BCN_MAX_LI_NUM_IDLE_BCNS_DEFAULT (15)
859
860#define CFG_BCN_EARLY_TERM_WAKE_NAME "beaconEarlyTerminationWakeInterval"
861#define CFG_BCN_EARLY_TERM_WAKE_MIN (2)
862#define CFG_BCN_EARLY_TERM_WAKE_MAX (255)
863#define CFG_BCN_EARLY_TERM_WAKE_DEFAULT (3)
864
865#ifdef WLAN_FEATURE_NEIGHBOR_ROAMING
866#define CFG_NEIGHBOR_SCAN_TIMER_PERIOD_NAME "gNeighborScanTimerPeriod"
867#define CFG_NEIGHBOR_SCAN_TIMER_PERIOD_MIN (3)
868#define CFG_NEIGHBOR_SCAN_TIMER_PERIOD_MAX (300)
869#define CFG_NEIGHBOR_SCAN_TIMER_PERIOD_DEFAULT (200)
870
871#define CFG_NEIGHBOR_LOOKUP_RSSI_THRESHOLD_NAME "gNeighborLookupThreshold"
872#define CFG_NEIGHBOR_LOOKUP_RSSI_THRESHOLD_MIN (10)
873#define CFG_NEIGHBOR_LOOKUP_RSSI_THRESHOLD_MAX (120)
874#define CFG_NEIGHBOR_LOOKUP_RSSI_THRESHOLD_DEFAULT (78)
875
876#define CFG_DELAY_BEFORE_VDEV_STOP_NAME "gDelayBeforeVdevStop"
877#define CFG_DELAY_BEFORE_VDEV_STOP_MIN (2)
878#define CFG_DELAY_BEFORE_VDEV_STOP_MAX (200)
879#define CFG_DELAY_BEFORE_VDEV_STOP_DEFAULT (20)
880
881/*
882 * This parameter is the drop in RSSI value that will trigger a precautionary
883 * scan by firmware.
884 * MAX value is choose so that this type of scan can be disabled by user.
885 */
886#define CFG_ROAM_RESCAN_RSSI_DIFF_NAME "gRoamRescanRssiDiff"
887#define CFG_ROAM_RESCAN_RSSI_DIFF_MIN (0)
888#define CFG_ROAM_RESCAN_RSSI_DIFF_MAX (100)
889#define CFG_ROAM_RESCAN_RSSI_DIFF_DEFAULT (5)
890
891/*
892 * This parameter is the RSSI diff above neighbor lookup threshold, when
893 * opportunistic scan should be triggered.
894 * MAX value is choose so that this type of scan can be always enabled by user.
895 * MIN value will cause opportunistic scan to be triggered in neighbor lookup
896 * RSSI range.
897 */
898#define CFG_OPPORTUNISTIC_SCAN_THRESHOLD_DIFF_NAME "gOpportunisticThresholdDiff"
899#define CFG_OPPORTUNISTIC_SCAN_THRESHOLD_DIFF_MIN (0)
900#define CFG_OPPORTUNISTIC_SCAN_THRESHOLD_DIFF_MAX (127)
901#define CFG_OPPORTUNISTIC_SCAN_THRESHOLD_DIFF_DEFAULT (0)
902
903#define CFG_NEIGHBOR_SCAN_CHAN_LIST_NAME "gNeighborScanChannelList"
904#define CFG_NEIGHBOR_SCAN_CHAN_LIST_DEFAULT ""
905
906#define CFG_NEIGHBOR_SCAN_MIN_CHAN_TIME_NAME "gNeighborScanChannelMinTime"
907#define CFG_NEIGHBOR_SCAN_MIN_CHAN_TIME_MIN (10)
908#define CFG_NEIGHBOR_SCAN_MIN_CHAN_TIME_MAX (40)
909#define CFG_NEIGHBOR_SCAN_MIN_CHAN_TIME_DEFAULT (20)
910
911#define CFG_NEIGHBOR_SCAN_MAX_CHAN_TIME_NAME "gNeighborScanChannelMaxTime"
912#define CFG_NEIGHBOR_SCAN_MAX_CHAN_TIME_MIN (3)
913#define CFG_NEIGHBOR_SCAN_MAX_CHAN_TIME_MAX (300)
914#define CFG_NEIGHBOR_SCAN_MAX_CHAN_TIME_DEFAULT (30)
915
916#define CFG_11R_NEIGHBOR_REQ_MAX_TRIES_NAME "gMaxNeighborReqTries"
917#define CFG_11R_NEIGHBOR_REQ_MAX_TRIES_MIN (1)
918#define CFG_11R_NEIGHBOR_REQ_MAX_TRIES_MAX (4)
919#define CFG_11R_NEIGHBOR_REQ_MAX_TRIES_DEFAULT (3)
920
921#define CFG_NEIGHBOR_SCAN_RESULTS_REFRESH_PERIOD_NAME "gNeighborScanRefreshPeriod"
922#define CFG_NEIGHBOR_SCAN_RESULTS_REFRESH_PERIOD_MIN (1000)
923#define CFG_NEIGHBOR_SCAN_RESULTS_REFRESH_PERIOD_MAX (60000)
924#define CFG_NEIGHBOR_SCAN_RESULTS_REFRESH_PERIOD_DEFAULT (20000)
925
926#define CFG_EMPTY_SCAN_REFRESH_PERIOD_NAME "gEmptyScanRefreshPeriod"
927#define CFG_EMPTY_SCAN_REFRESH_PERIOD_MIN (0)
928#define CFG_EMPTY_SCAN_REFRESH_PERIOD_MAX (60000)
929#define CFG_EMPTY_SCAN_REFRESH_PERIOD_DEFAULT (0)
930
931#define CFG_ROAM_BMISS_FIRST_BCNT_NAME "gRoamBmissFirstBcnt"
932#define CFG_ROAM_BMISS_FIRST_BCNT_MIN (5)
933#define CFG_ROAM_BMISS_FIRST_BCNT_MAX (100)
934#define CFG_ROAM_BMISS_FIRST_BCNT_DEFAULT (10)
935
936#define CFG_ROAM_BMISS_FINAL_BCNT_NAME "gRoamBmissFinalBcnt"
937#define CFG_ROAM_BMISS_FINAL_BCNT_MIN (5)
938#define CFG_ROAM_BMISS_FINAL_BCNT_MAX (100)
939#define CFG_ROAM_BMISS_FINAL_BCNT_DEFAULT (10)
940
941#define CFG_ROAM_BEACON_RSSI_WEIGHT_NAME "gRoamBeaconRssiWeight"
942#define CFG_ROAM_BEACON_RSSI_WEIGHT_MIN (0)
943#define CFG_ROAM_BEACON_RSSI_WEIGHT_MAX (16)
944#define CFG_ROAM_BEACON_RSSI_WEIGHT_DEFAULT (14)
945#endif /* WLAN_FEATURE_NEIGHBOR_ROAMING */
946
947#define CFG_QOS_WMM_BURST_SIZE_DEFN_NAME "burstSizeDefinition"
948#define CFG_QOS_WMM_BURST_SIZE_DEFN_MIN (0)
949#define CFG_QOS_WMM_BURST_SIZE_DEFN_MAX (1)
950#define CFG_QOS_WMM_BURST_SIZE_DEFN_DEFAULT (0)
951
952#define CFG_QOS_WMM_TS_INFO_ACK_POLICY_NAME "tsInfoAckPolicy"
953#define CFG_QOS_WMM_TS_INFO_ACK_POLICY_MIN (0x00)
954#define CFG_QOS_WMM_TS_INFO_ACK_POLICY_MAX (0x01)
955#define CFG_QOS_WMM_TS_INFO_ACK_POLICY_DEFAULT (0x00)
956
957#define CFG_SINGLE_TID_RC_NAME "SingleTIDRC"
958#define CFG_SINGLE_TID_RC_MIN (0) /* Seperate replay counter for all TID */
959#define CFG_SINGLE_TID_RC_MAX (1) /* Single replay counter for all TID */
960#define CFG_SINGLE_TID_RC_DEFAULT (1)
961#define CFG_MCAST_BCAST_FILTER_SETTING_NAME "McastBcastFilter"
962#define CFG_MCAST_BCAST_FILTER_SETTING_MIN (0)
963#define CFG_MCAST_BCAST_FILTER_SETTING_MAX (3)
964#define CFG_MCAST_BCAST_FILTER_SETTING_DEFAULT (0)
965
966#define CFG_DYNAMIC_PSPOLL_VALUE_NAME "gDynamicPSPollvalue"
967#define CFG_DYNAMIC_PSPOLL_VALUE_MIN (0)
968#define CFG_DYNAMIC_PSPOLL_VALUE_MAX (255)
969#define CFG_DYNAMIC_PSPOLL_VALUE_DEFAULT (0)
970
971#define CFG_TELE_BCN_WAKEUP_EN_NAME "gTelescopicBeaconWakeupEn"
972#define CFG_TELE_BCN_WAKEUP_EN_MIN (0)
973#define CFG_TELE_BCN_WAKEUP_EN_MAX (1)
974#define CFG_TELE_BCN_WAKEUP_EN_DEFAULT (0)
975
976#define CFG_QOS_ADDTS_WHEN_ACM_IS_OFF_NAME "gAddTSWhenACMIsOff"
977#define CFG_QOS_ADDTS_WHEN_ACM_IS_OFF_MIN (0)
978#define CFG_QOS_ADDTS_WHEN_ACM_IS_OFF_MAX (1) /* Send AddTs even when ACM is not set for the AC */
979#define CFG_QOS_ADDTS_WHEN_ACM_IS_OFF_DEFAULT (0)
980
981#define CFG_VALIDATE_SCAN_LIST_NAME "gValidateScanList"
982#define CFG_VALIDATE_SCAN_LIST_MIN (0)
983#define CFG_VALIDATE_SCAN_LIST_MAX (1)
984#define CFG_VALIDATE_SCAN_LIST_DEFAULT (0)
985
986#define CFG_NULLDATA_AP_RESP_TIMEOUT_NAME "gNullDataApRespTimeout"
987#define CFG_NULLDATA_AP_RESP_TIMEOUT_MIN (WNI_CFG_PS_NULLDATA_AP_RESP_TIMEOUT_STAMIN)
988#define CFG_NULLDATA_AP_RESP_TIMEOUT_MAX (WNI_CFG_PS_NULLDATA_AP_RESP_TIMEOUT_STAMAX)
989#define CFG_NULLDATA_AP_RESP_TIMEOUT_DEFAULT (WNI_CFG_PS_NULLDATA_AP_RESP_TIMEOUT_STADEF)
990
991#define CFG_AP_DATA_AVAIL_POLL_PERIOD_NAME "gApDataAvailPollInterval"
992#define CFG_AP_DATA_AVAIL_POLL_PERIOD_MIN (WNI_CFG_AP_DATA_AVAIL_POLL_PERIOD_STAMIN)
993#define CFG_AP_DATA_AVAIL_POLL_PERIOD_MAX (WNI_CFG_AP_DATA_AVAIL_POLL_PERIOD_STAMAX)
994#define CFG_AP_DATA_AVAIL_POLL_PERIOD_DEFAULT (WNI_CFG_AP_DATA_AVAIL_POLL_PERIOD_STADEF)
995
996#define CFG_ENABLE_HOST_ARPOFFLOAD_NAME "hostArpOffload"
997#define CFG_ENABLE_HOST_ARPOFFLOAD_MIN (0)
998#define CFG_ENABLE_HOST_ARPOFFLOAD_MAX (1)
999#define CFG_ENABLE_HOST_ARPOFFLOAD_DEFAULT (0)
1000
1001#define CFG_ENABLE_HOST_SSDP_NAME "ssdp"
1002#define CFG_ENABLE_HOST_SSDP_MIN (0)
1003#define CFG_ENABLE_HOST_SSDP_MAX (1)
1004#define CFG_ENABLE_HOST_SSDP_DEFAULT (1)
1005
1006#define CFG_ENABLE_HOST_NSOFFLOAD_NAME "hostNSOffload"
1007#define CFG_ENABLE_HOST_NSOFFLOAD_MIN (0)
1008#define CFG_ENABLE_HOST_NSOFFLOAD_MAX (1)
1009#define CFG_ENABLE_HOST_NSOFFLOAD_DEFAULT (0)
1010
1011#define CFG_BAND_CAPABILITY_NAME "BandCapability"
1012#define CFG_BAND_CAPABILITY_MIN (0)
1013#define CFG_BAND_CAPABILITY_MAX (2)
1014#define CFG_BAND_CAPABILITY_DEFAULT (0)
1015
1016#define CFG_ENABLE_BEACON_EARLY_TERMINATION_NAME "enableBeaconEarlyTermination"
1017#define CFG_ENABLE_BEACON_EARLY_TERMINATION_MIN (0)
1018#define CFG_ENABLE_BEACON_EARLY_TERMINATION_MAX (1)
1019#define CFG_ENABLE_BEACON_EARLY_TERMINATION_DEFAULT (0)
1020
1021#define CFG_ENABLE_CLOSE_LOOP_NAME "gEnableCloseLoop"
1022#define CFG_ENABLE_CLOSE_LOOP_MIN WNI_CFG_FIXED_RATE_STAMIN
1023#define CFG_ENABLE_CLOSE_LOOP_MAX WNI_CFG_FIXED_RATE_STAMAX
1024#define CFG_ENABLE_CLOSE_LOOP_DEFAULT WNI_CFG_FIXED_RATE_STADEF
1025
1026#define CFG_ENABLE_BYPASS_11D_NAME "gEnableBypass11d"
1027#define CFG_ENABLE_BYPASS_11D_MIN (0)
1028#define CFG_ENABLE_BYPASS_11D_MAX (1)
1029#define CFG_ENABLE_BYPASS_11D_DEFAULT (1)
1030
1031#define CFG_ENABLE_DFS_CHNL_SCAN_NAME "gEnableDFSChnlScan"
1032#define CFG_ENABLE_DFS_CHNL_SCAN_MIN (0)
1033#define CFG_ENABLE_DFS_CHNL_SCAN_MAX (1)
1034#define CFG_ENABLE_DFS_CHNL_SCAN_DEFAULT (1)
1035
1036#define CFG_ENABLE_DFS_PNO_CHNL_SCAN_NAME "gEnableDFSPnoChnlScan"
1037#define CFG_ENABLE_DFS_PNO_CHNL_SCAN_MIN (0)
1038#define CFG_ENABLE_DFS_PNO_CHNL_SCAN_MAX (1)
1039#define CFG_ENABLE_DFS_PNO_CHNL_SCAN_DEFAULT (1)
1040
1041#define CFG_ENABLE_RAMDUMP_COLLECTION "gEnableDumpCollect"
1042#define CFG_ENABLE_RAMDUMP_COLLECTION_MIN (0)
1043#define CFG_ENABLE_RAMDUMP_COLLECTION_MAX (1)
1044#define CFG_ENABLE_RAMDUMP_COLLECTION_DEFAULT (1)
1045
1046typedef enum {
1047 eHDD_LINK_SPEED_REPORT_ACTUAL = 0,
1048 eHDD_LINK_SPEED_REPORT_MAX = 1,
1049 eHDD_LINK_SPEED_REPORT_MAX_SCALED = 2,
1050} eHddLinkSpeedReportType;
1051#ifdef WLAN_FEATURE_11AC
1052#define CFG_VHT_CHANNEL_WIDTH "gVhtChannelWidth"
1053#define CFG_VHT_CHANNEL_WIDTH_MIN (0)
1054#define CFG_VHT_CHANNEL_WIDTH_MAX (4)
1055#define CFG_VHT_CHANNEL_WIDTH_DEFAULT (3)
1056
1057#define CFG_VHT_ENABLE_RX_MCS_8_9 "gVhtRxMCS"
1058#define CFG_VHT_ENABLE_RX_MCS_8_9_MIN (0)
1059#define CFG_VHT_ENABLE_RX_MCS_8_9_MAX (2)
1060#define CFG_VHT_ENABLE_RX_MCS_8_9_DEFAULT (0)
1061
1062#define CFG_VHT_ENABLE_TX_MCS_8_9 "gVhtTxMCS"
1063#define CFG_VHT_ENABLE_TX_MCS_8_9_MIN (0)
1064#define CFG_VHT_ENABLE_TX_MCS_8_9_MAX (2)
1065#define CFG_VHT_ENABLE_TX_MCS_8_9_DEFAULT (0)
1066
1067#define CFG_VHT_ENABLE_RX_MCS2x2_8_9 "gVhtRxMCS2x2"
1068#define CFG_VHT_ENABLE_RX_MCS2x2_8_9_MIN (0)
1069#define CFG_VHT_ENABLE_RX_MCS2x2_8_9_MAX (2)
1070#define CFG_VHT_ENABLE_RX_MCS2x2_8_9_DEFAULT (0)
1071
1072#define CFG_VHT_ENABLE_TX_MCS2x2_8_9 "gVhtTxMCS2x2"
1073#define CFG_VHT_ENABLE_TX_MCS2x2_8_9_MIN (0)
1074#define CFG_VHT_ENABLE_TX_MCS2x2_8_9_MAX (2)
1075#define CFG_VHT_ENABLE_TX_MCS2x2_8_9_DEFAULT (0)
1076
1077#define CFG_VHT_ENABLE_2x2_CAP_FEATURE "gEnable2x2"
1078#define CFG_VHT_ENABLE_2x2_CAP_FEATURE_MIN (0)
1079#define CFG_VHT_ENABLE_2x2_CAP_FEATURE_MAX (1)
1080#define CFG_VHT_ENABLE_2x2_CAP_FEATURE_DEFAULT (0)
1081
1082#define CFG_VHT_ENABLE_MU_BFORMEE_CAP_FEATURE "gEnableMuBformee"
1083#define CFG_VHT_ENABLE_MU_BFORMEE_CAP_FEATURE_MIN (0)
1084#define CFG_VHT_ENABLE_MU_BFORMEE_CAP_FEATURE_MAX (1)
1085#define CFG_VHT_ENABLE_MU_BFORMEE_CAP_FEATURE_DEFAULT (0)
1086
1087#define CFG_VHT_ENABLE_PAID_FEATURE "gEnablePAID"
1088#define CFG_VHT_ENABLE_PAID_FEATURE_MIN (0)
1089#define CFG_VHT_ENABLE_PAID_FEATURE_MAX (1)
1090#define CFG_VHT_ENABLE_PAID_FEATURE_DEFAULT (0)
1091
1092#define CFG_VHT_ENABLE_GID_FEATURE "gEnableGID"
1093#define CFG_VHT_ENABLE_GID_FEATURE_MIN (0)
1094#define CFG_VHT_ENABLE_GID_FEATURE_MAX (1)
1095#define CFG_VHT_ENABLE_GID_FEATURE_DEFAULT (0)
1096#endif
1097
1098#define CFG_VHT_ENABLE_1x1_TX_CHAINMASK "gSetTxChainmask1x1"
1099#define CFG_VHT_ENABLE_1x1_TX_CHAINMASK_MIN (1)
1100#define CFG_VHT_ENABLE_1x1_TX_CHAINMASK_MAX (2)
1101#define CFG_VHT_ENABLE_1x1_TX_CHAINMASK_DEFAULT (1)
1102
1103#define CFG_VHT_ENABLE_1x1_RX_CHAINMASK "gSetRxChainmask1x1"
1104#define CFG_VHT_ENABLE_1x1_RX_CHAINMASK_MIN (1)
1105#define CFG_VHT_ENABLE_1x1_RX_CHAINMASK_MAX (2)
1106#define CFG_VHT_ENABLE_1x1_RX_CHAINMASK_DEFAULT (1)
1107
1108#define CFG_ENABLE_AMPDUPS_FEATURE "gEnableAMPDUPS"
1109#define CFG_ENABLE_AMPDUPS_FEATURE_MIN (0)
1110#define CFG_ENABLE_AMPDUPS_FEATURE_MAX (1)
1111#define CFG_ENABLE_AMPDUPS_FEATURE_DEFAULT (0)
1112
1113#define CFG_HT_ENABLE_SMPS_CAP_FEATURE "gEnableHtSMPS"
1114#define CFG_HT_ENABLE_SMPS_CAP_FEATURE_MIN (0)
1115#define CFG_HT_ENABLE_SMPS_CAP_FEATURE_MAX (1)
1116#define CFG_HT_ENABLE_SMPS_CAP_FEATURE_DEFAULT (0)
1117
1118#define CFG_HT_SMPS_CAP_FEATURE "gHtSMPS"
1119#define CFG_HT_SMPS_CAP_FEATURE_MIN (0)
1120#define CFG_HT_SMPS_CAP_FEATURE_MAX (3)
1121#define CFG_HT_SMPS_CAP_FEATURE_DEFAULT (3)
1122
1123#define CFG_DISABLE_DFS_CH_SWITCH "gDisableDFSChSwitch"
1124#define CFG_DISABLE_DFS_CH_SWITCH_MIN (0)
1125#define CFG_DISABLE_DFS_CH_SWITCH_MAX (1)
1126#define CFG_DISABLE_DFS_CH_SWITCH_DEFAULT (0)
1127
1128#define CFG_ENABLE_DFS_MASTER_CAPABILITY "gEnableDFSMasterCap"
1129#define CFG_ENABLE_DFS_MASTER_CAPABILITY_MIN (0)
1130#define CFG_ENABLE_DFS_MASTER_CAPABILITY_MAX (1)
1131#define CFG_ENABLE_DFS_MASTER_CAPABILITY_DEFAULT (0)
1132
1133#define CFG_SAP_PREFERRED_CHANNEL_LOCATION "gSapPreferredChanLocation"
1134#define CFG_SAP_PREFERRED_CHANNEL_LOCATION_MIN (0)
1135#define CFG_SAP_PREFERRED_CHANNEL_LOCATION_MAX (2)
1136#define CFG_SAP_PREFERRED_CHANNEL_LOCATION_DEFAULT (0)
1137
1138#define CFG_DISABLE_DFS_JAPAN_W53 "gDisableDfsJapanW53"
1139#define CFG_DISABLE_DFS_JAPAN_W53_MIN (0)
1140#define CFG_DISABLE_DFS_JAPAN_W53_MAX (1)
1141#define CFG_DISABLE_DFS_JAPAN_W53_DEFAULT (0)
1142
1143#define CFG_ENABLE_DFS_PHYERR_FILTEROFFLOAD_NAME "dfsPhyerrFilterOffload"
1144#define CFG_ENABLE_DFS_PHYERR_FILTEROFFLOAD_MIN (0)
1145#define CFG_ENABLE_DFS_PHYERR_FILTEROFFLOAD_MAX (1)
1146#define CFG_ENABLE_DFS_PHYERR_FILTEROFFLOAD_DEFAULT (0)
1147
1148#define CFG_REPORT_MAX_LINK_SPEED "gReportMaxLinkSpeed"
1149#define CFG_REPORT_MAX_LINK_SPEED_MIN (eHDD_LINK_SPEED_REPORT_ACTUAL)
1150#define CFG_REPORT_MAX_LINK_SPEED_MAX (eHDD_LINK_SPEED_REPORT_MAX_SCALED)
1151#define CFG_REPORT_MAX_LINK_SPEED_DEFAULT (eHDD_LINK_SPEED_REPORT_MAX_SCALED)
1152
1153/*
1154 * RSSI Thresholds
1155 * Used when eHDD_LINK_SPEED_REPORT_SCALED is selected
1156 */
1157#define CFG_LINK_SPEED_RSSI_HIGH "gLinkSpeedRssiHigh"
1158#define CFG_LINK_SPEED_RSSI_HIGH_MIN (-127)
1159#define CFG_LINK_SPEED_RSSI_HIGH_MAX (0)
1160#define CFG_LINK_SPEED_RSSI_HIGH_DEFAULT (-55)
1161
1162#define CFG_LINK_SPEED_RSSI_MID "gLinkSpeedRssiMed"
1163#define CFG_LINK_SPEED_RSSI_MID_MIN (-127)
1164#define CFG_LINK_SPEED_RSSI_MID_MAX (0)
1165#define CFG_LINK_SPEED_RSSI_MID_DEFAULT (-65)
1166
1167#define CFG_LINK_SPEED_RSSI_LOW "gLinkSpeedRssiLow"
1168#define CFG_LINK_SPEED_RSSI_LOW_MIN (-127)
1169#define CFG_LINK_SPEED_RSSI_LOW_MAX (0)
1170#define CFG_LINK_SPEED_RSSI_LOW_DEFAULT (-80)
1171
1172#define CFG_P2P_DEVICE_ADDRESS_ADMINISTRATED_NAME "isP2pDeviceAddrAdministrated"
1173#define CFG_P2P_DEVICE_ADDRESS_ADMINISTRATED_MIN (0)
1174#define CFG_P2P_DEVICE_ADDRESS_ADMINISTRATED_MAX (1)
1175#define CFG_P2P_DEVICE_ADDRESS_ADMINISTRATED_DEFAULT (1)
1176
1177#define CFG_ENABLE_SSR "gEnableSSR"
1178#define CFG_ENABLE_SSR_MIN (0)
1179#define CFG_ENABLE_SSR_MAX (1)
1180#define CFG_ENABLE_SSR_DEFAULT (1)
1181
1182#define CFG_ENABLE_OVERLAP_CH "gEnableOverLapCh"
1183#define CFG_ENABLE_OVERLAP_CH_MIN (0)
1184#define CFG_ENABLE_OVERLAP_CH_MAX (1)
1185#define CFG_ENABLE_OVERLAP_CH_DEFAULT (0)
1186
1187#define CFG_PPS_ENABLE_5G_EBT "gEnable5gEBT"
1188#define CFG_PPS_ENABLE_5G_EBT_FEATURE_MIN (0)
1189#define CFG_PPS_ENABLE_5G_EBT_FEATURE_MAX (1)
1190#define CFG_PPS_ENABLE_5G_EBT_FEATURE_DEFAULT (0)
1191
1192#define CFG_ENABLE_MEMORY_DEEP_SLEEP "gEnableMemDeepSleep"
1193#define CFG_ENABLE_MEMORY_DEEP_SLEEP_MIN (0)
1194#define CFG_ENABLE_MEMORY_DEEP_SLEEP_MAX (1)
1195#define CFG_ENABLE_MEMORY_DEEP_SLEEP_DEFAULT (1)
1196
1197/* In cfg.dat 1=1MBPS, 2=2MBPS, 3=5_5MBPS, 4=11MBPS, 5=6MBPS, 6=9MBPS,
1198 * 7=12MBPS, 8=18MBPS, 9=24MBPS. But 6=9MBPS and 8=18MBPS are not basic
1199 * 11g rates and should not be set by gDefaultRateIndex24Ghz.
1200 */
1201
1202#define CFG_DEFAULT_RATE_INDEX_24GH "gDefaultRateIndex24Ghz"
1203#define CFG_DEFAULT_RATE_INDEX_24GH_MIN (1)
1204#define CFG_DEFAULT_RATE_INDEX_24GH_MAX (9)
1205#define CFG_DEFAULT_RATE_INDEX_24GH_DEFAULT (1)
1206
1207#define CFG_ENABLE_PACKET_LOG "gEnablePacketLog"
1208#define CFG_ENABLE_PACKET_LOG_MIN (0)
1209#define CFG_ENABLE_PACKET_LOG_MAX (1)
1210#define CFG_ENABLE_PACKET_LOG_DEFAULT (1)
1211
1212/* gFwDebugLogType takes values from enum dbglog_process_t,
1213 * make default value as DBGLOG_PROCESS_NET_RAW to give the
1214 * logs to net link since cnss_diag service is started at boot
1215 * time by default.
1216 */
1217#define CFG_ENABLE_FW_LOG_TYPE "gFwDebugLogType"
1218#define CFG_ENABLE_FW_LOG_TYPE_MIN (0)
1219#define CFG_ENABLE_FW_LOG_TYPE_MAX (255)
1220#define CFG_ENABLE_FW_LOG_TYPE_DEFAULT (3)
1221
1222/* gFwDebugLogLevel takes values from enum DBGLOG_LOG_LVL,
1223 * make default value as DBGLOG_WARN to enable error and
1224 * warning logs by default.
1225 */
1226#define CFG_ENABLE_FW_DEBUG_LOG_LEVEL "gFwDebugLogLevel"
1227#define CFG_ENABLE_FW_DEBUG_LOG_LEVEL_MIN (0)
1228#define CFG_ENABLE_FW_DEBUG_LOG_LEVEL_MAX (255)
1229#define CFG_ENABLE_FW_DEBUG_LOG_LEVEL_DEFAULT (4)
1230
1231/* For valid values of log levels check enum DBGLOG_LOG_LVL and
1232 * for valid values of module ids check enum WLAN_MODULE_ID.
1233 */
1234#define CFG_ENABLE_FW_MODULE_LOG_LEVEL "gFwDebugModuleLoglevel"
1235#define CFG_ENABLE_FW_MODULE_LOG_DEFAULT ""
1236
1237#ifdef FEATURE_GREEN_AP
1238#define CFG_ENABLE_GREEN_AP_FEATURE "gEnableGreenAp"
1239#define CFG_ENABLE_GREEN_AP_FEATURE_MIN (0)
1240#define CFG_ENABLE_GREEN_AP_FEATURE_MAX (1)
1241#define CFG_ENABLE_GREEN_AP_FEATURE_DEFAULT (1)
1242#endif
1243
1244#ifdef FEATURE_WLAN_FORCE_SAP_SCC
1245#define CFG_SAP_SCC_CHAN_AVOIDANCE "gSapSccChanAvoidance"
1246#define CFG_SAP_SCC_CHAN_AVOIDANCE_MIN (0)
1247#define CFG_SAP_SCC_CHAN_AVOIDANCE_MAX (1)
1248#define CFG_SAP_SCC_CHAN_AVOIDANCE_DEFAULT (0)
1249#endif /* FEATURE_WLAN_FORCE_SAP_SCC */
1250
1251/*
1252 * CDF Trace Enable Control
1253 * Notes:
1254 * the MIN/MAX/DEFAULT values apply for all modules
1255 * the DEFAULT value is outside the valid range. if the DEFAULT
1256 * value is not overridden, then no change will be made to the
1257 * "built in" default values compiled into the code
1258 * values are a bitmap indicating which log levels are to enabled
1259 * (must match order of cdf_trace_level enumerations)
1260 * 00000001 FATAL
1261 * 00000010 ERROR
1262 * 00000100 WARN
1263 * 00001000 INFO
1264 * 00010000 INFO HIGH
1265 * 00100000 INFO MED
1266 * 01000000 INFO LOW
1267 * 10000000 DEBUG
1268 *
1269 * hence a value of 0xFF would set all bits (enable all logs)
1270 */
1271
1272#define CFG_CDF_TRACE_ENABLE_WDI_NAME "cdf_trace_enable_wdi"
1273#define CFG_CDF_TRACE_ENABLE_HDD_NAME "cdf_trace_enable_hdd"
1274#define CFG_CDF_TRACE_ENABLE_SME_NAME "cdf_trace_enable_sme"
1275#define CFG_CDF_TRACE_ENABLE_PE_NAME "cdf_trace_enable_pe"
1276#define CFG_CDF_TRACE_ENABLE_PMC_NAME "cdf_trace_enable_pmc"
1277#define CFG_CDF_TRACE_ENABLE_WMA_NAME "cdf_trace_enable_wma"
1278#define CFG_CDF_TRACE_ENABLE_SYS_NAME "cdf_trace_enable_sys"
1279#define CFG_CDF_TRACE_ENABLE_CDF_NAME "cdf_trace_enable_cdf"
1280#define CFG_CDF_TRACE_ENABLE_SAP_NAME "cdf_trace_enable_sap"
1281#define CFG_CDF_TRACE_ENABLE_HDD_SAP_NAME "cdf_trace_enable_hdd_sap"
1282#define CFG_CDF_TRACE_ENABLE_BMI_NAME "cdf_trace_enable_bmi"
1283
1284#define CFG_CDF_TRACE_ENABLE_MIN (0)
1285#define CFG_CDF_TRACE_ENABLE_MAX (0xff)
1286#define CFG_CDF_TRACE_ENABLE_DEFAULT (0xffff)
1287
1288#define HDD_MCASTBCASTFILTER_FILTER_NONE 0x00
1289#define HDD_MCASTBCASTFILTER_FILTER_ALL_MULTICAST 0x01
1290#define HDD_MCASTBCASTFILTER_FILTER_ALL_BROADCAST 0x02
1291#define HDD_MCASTBCASTFILTER_FILTER_ALL_MULTICAST_BROADCAST 0x03
1292#define HDD_MULTICAST_FILTER_LIST 0x04
1293#define HDD_MULTICAST_FILTER_LIST_CLEAR 0x05
1294
1295/*BMPS Logic
1296 * Notes:
1297 * 1 - Then Host driver and above layers control the PS mechanism
1298 * 0 - Diver/Core Stack internally control the Power saving mechanism
1299 */
1300#define CFG_ANDRIOD_POWER_SAVE_NAME "isAndroidPsEn"
1301#define CFG_ANDRIOD_POWER_SAVE_MIN (0)
1302#define CFG_ANDRIOD_POWER_SAVE_MAX (1)
1303#define CFG_ANDRIOD_POWER_SAVE_DEFAULT (0)
1304
1305/*
1306 * Enable Dynamic DTIM
1307 * Options
1308 * 0 -Disable DynamicDTIM
1309 * 1 to 5 - SLM will switch to DTIM specified here when host suspends and
1310 * switch DTIM1 when host resumes */
1311#define CFG_ENABLE_DYNAMIC_DTIM_NAME "gEnableDynamicDTIM"
1312#define CFG_ENABLE_DYNAMIC_DTIM_MIN (0)
1313#define CFG_ENABLE_DYNAMIC_DTIM_MAX (5)
1314#define CFG_ENABLE_DYNAMIC_DTIM_DEFAULT (0)
1315
1316/*
1317 * Enable First Scan 2G Only
1318 * Options
1319 * 0 - Disable First Scan 2G Option
1320 * 1 - Enable First Scan 2G Option
1321 */
1322#define CFG_ENABLE_FIRST_SCAN_2G_ONLY_NAME "gEnableFirstScan2GOnly"
1323#define CFG_ENABLE_FIRST_SCAN_2G_ONLY_MIN (0)
1324#define CFG_ENABLE_FIRST_SCAN_2G_ONLY_MAX (1)
1325#define CFG_ENABLE_FIRST_SCAN_2G_ONLY_DEFAULT (0)
1326
1327/*
1328 * Driver Force ACS is reintroduced for android SAP legacy configuration method.
1329 * If Driver force acs is enabled, channel/ hw config from hostapd is ignored.
1330 * Driver uses INI params dot11Mode, channel bonding mode and vht chan width
1331 * to derive ACS HW mode and operating BW.
1332 *
1333 * Non android platforms shall not use force ACS method and rely on hostapd
1334 * driven ACS method for concurrent SAP ACS configuration, OBSS etc.
1335 */
1336#define CFG_FORCE_SAP_ACS "gApAutoChannelSelection"
1337#define CFG_FORCE_SAP_ACS_MIN (0)
1338#define CFG_FORCE_SAP_ACS_MAX (1)
1339#define CFG_FORCE_SAP_ACS_DEFAULT (0)
1340
1341#define CFG_FORCE_SAP_ACS_START_CH "gAPChannelSelectStartChannel"
1342#define CFG_FORCE_SAP_ACS_START_CH_MIN (0)
1343#define CFG_FORCE_SAP_ACS_START_CH_MAX (0xFF)
1344#define CFG_FORCE_SAP_ACS_START_CH_DEFAULT (1)
1345
1346#define CFG_FORCE_SAP_ACS_END_CH "gAPChannelSelectEndChannel"
1347#define CFG_FORCE_SAP_ACS_END_CH_MIN (0)
1348#define CFG_FORCE_SAP_ACS_END_CH_MAX (0xFF)
1349#define CFG_FORCE_SAP_ACS_END_CH_DEFAULT (11)
1350
1351/*
1352 * Skip DFS Channel in case of P2P Search
1353 * Options
1354 * 0 - Don't Skip DFS Channel in case of P2P Search
1355 * 1 - Skip DFS Channel in case of P2P Search
1356 */
1357#define CFG_ENABLE_SKIP_DFS_IN_P2P_SEARCH_NAME "gSkipDfsChannelInP2pSearch"
1358#define CFG_ENABLE_SKIP_DFS_IN_P2P_SEARCH_MIN (0)
1359#define CFG_ENABLE_SKIP_DFS_IN_P2P_SEARCH_MAX (1)
1360#define CFG_ENABLE_SKIP_DFS_IN_P2P_SEARCH_DEFAULT (1)
1361
1362/*
1363 * Ignore Dynamic Dtim in case of P2P
1364 * Options
1365 * 0 - Consider Dynamic Dtim incase of P2P
1366 * 1 - Ignore Dynamic Dtim incase of P2P
1367 */
1368#define CFG_IGNORE_DYNAMIC_DTIM_IN_P2P_MODE_NAME "gIgnoreDynamicDtimInP2pMode"
1369#define CFG_IGNORE_DYNAMIC_DTIM_IN_P2P_MODE_MIN (0)
1370#define CFG_IGNORE_DYNAMIC_DTIM_IN_P2P_MODE_MAX (1)
1371#define CFG_IGNORE_DYNAMIC_DTIM_IN_P2P_MODE_DEFAULT (0)
1372
1373#define CFG_ENABLE_AUTOMATIC_TX_POWER_CONTROL_NAME "gEnableAutomaticTxPowerControl"
1374#define CFG_ENABLE_AUTOMATIC_TX_POWER_CONTROL_MIN (0)
1375#define CFG_ENABLE_AUTOMATIC_TX_POWER_CONTROL_MAX (1)
1376#define CFG_ENABLE_AUTOMATIC_TX_POWER_CONTROL_DEFAULT (1)
1377
1378#define CFG_SHORT_GI_40MHZ_NAME "gShortGI40Mhz"
1379#define CFG_SHORT_GI_40MHZ_MIN 0
1380#define CFG_SHORT_GI_40MHZ_MAX 1
1381#define CFG_SHORT_GI_40MHZ_DEFAULT 1
1382
1383/*
1384 * Enable / Disable MCC feature
1385 * Default: Enable
1386 */
1387#define CFG_ENABLE_MCC_ENABLED_NAME "gEnableMCCMode"
1388#define CFG_ENABLE_MCC_ENABLED_MIN (0)
1389#define CFG_ENABLE_MCC_ENABLED_MAX (1)
1390#define CFG_ENABLE_MCC_ENABLED_DEFAULT (1)
1391
1392/*
1393 * Allow GO in MCC mode to accept different beacon interval than STA's.
1394 * Added for Wi-Fi Cert. 5.1.12
1395 * Default: gAllowMCCGODiffBI = 2
1396 * If gAllowMCCGODiffBI = 1 // Set to 1 for WFA certification. GO Beacon
1397 * interval is not changed. MCC GO
1398 * doesn't work well in optimized way.
1399 * In worst scenario, it may invite STA
1400 * disconnection.
1401 * gAllowMCCGODiffBI = 2 //If set to 2 workaround 1 disassoc all the clients
1402 * and update beacon Interval
1403 * gAllowMCCGODiffBI = 3 //If set to 3 tear down the P2P link in auto/
1404 * Non-autonomous -GO case
1405 * gAllowMCCGODiffBI = 4 //If set to 4 don't disconnect the P2P client
1406 * in autonomous/Non-autonomous -GO case update
1407 * the BI dynamically
1408 */
1409#define CFG_ALLOW_MCC_GO_DIFF_BI_NAME "gAllowMCCGODiffBI"
1410#define CFG_ALLOW_MCC_GO_DIFF_BI_MIN (0)
1411#define CFG_ALLOW_MCC_GO_DIFF_BI_MAX (4)
1412#define CFG_ALLOW_MCC_GO_DIFF_BI_DEFAULT (4)
1413
1414/*
1415 * Enable/Disable Thermal Mitigation feature
1416 * Default: Enable
1417 */
1418#define CFG_THERMAL_MIGRATION_ENABLE_NAME "gThermalMitigationEnable"
1419#define CFG_THERMAL_MIGRATION_ENABLE_MIN (0)
1420#define CFG_THERMAL_MIGRATION_ENABLE_MAX (1)
1421#define CFG_THERMAL_MIGRATION_ENABLE_DEFAULT (1)
1422
1423#define CFG_THROTTLE_PERIOD_NAME "gThrottlePeriod"
1424#define CFG_THROTTLE_PERIOD_MIN (10)
1425#define CFG_THROTTLE_PERIOD_MAX (10000)
1426#define CFG_THROTTLE_PERIOD_DEFAULT (4000)
1427
1428#define CFG_THERMAL_TEMP_MIN_LEVEL0_NAME "gThermalTempMinLevel0"
1429#define CFG_THERMAL_TEMP_MIN_LEVEL0_MIN (0)
1430#define CFG_THERMAL_TEMP_MIN_LEVEL0_MAX (1000)
1431#define CFG_THERMAL_TEMP_MIN_LEVEL0_DEFAULT (0)
1432
1433#define CFG_THERMAL_TEMP_MAX_LEVEL0_NAME "gThermalTempMaxLevel0"
1434#define CFG_THERMAL_TEMP_MAX_LEVEL0_MIN (0)
1435#define CFG_THERMAL_TEMP_MAX_LEVEL0_MAX (1000)
1436#define CFG_THERMAL_TEMP_MAX_LEVEL0_DEFAULT (90)
1437
1438#define CFG_THERMAL_TEMP_MIN_LEVEL1_NAME "gThermalTempMinLevel1"
1439#define CFG_THERMAL_TEMP_MIN_LEVEL1_MIN (0)
1440#define CFG_THERMAL_TEMP_MIN_LEVEL1_MAX (1000)
1441#define CFG_THERMAL_TEMP_MIN_LEVEL1_DEFAULT (70)
1442
1443#define CFG_THERMAL_TEMP_MAX_LEVEL1_NAME "gThermalTempMaxLevel1"
1444#define CFG_THERMAL_TEMP_MAX_LEVEL1_MIN (0)
1445#define CFG_THERMAL_TEMP_MAX_LEVEL1_MAX (1000)
1446#define CFG_THERMAL_TEMP_MAX_LEVEL1_DEFAULT (110)
1447
1448#define CFG_THERMAL_TEMP_MIN_LEVEL2_NAME "gThermalTempMinLevel2"
1449#define CFG_THERMAL_TEMP_MIN_LEVEL2_MIN (0)
1450#define CFG_THERMAL_TEMP_MIN_LEVEL2_MAX (1000)
1451#define CFG_THERMAL_TEMP_MIN_LEVEL2_DEFAULT (90)
1452
1453#define CFG_THERMAL_TEMP_MAX_LEVEL2_NAME "gThermalTempMaxLevel2"
1454#define CFG_THERMAL_TEMP_MAX_LEVEL2_MIN (0)
1455#define CFG_THERMAL_TEMP_MAX_LEVEL2_MAX (1000)
1456#define CFG_THERMAL_TEMP_MAX_LEVEL2_DEFAULT (125)
1457
1458#define CFG_THERMAL_TEMP_MIN_LEVEL3_NAME "gThermalTempMinLevel3"
1459#define CFG_THERMAL_TEMP_MIN_LEVEL3_MIN (0)
1460#define CFG_THERMAL_TEMP_MIN_LEVEL3_MAX (1000)
1461#define CFG_THERMAL_TEMP_MIN_LEVEL3_DEFAULT (110)
1462
1463#define CFG_THERMAL_TEMP_MAX_LEVEL3_NAME "gThermalTempMaxLevel3"
1464#define CFG_THERMAL_TEMP_MAX_LEVEL3_MIN (0)
1465#define CFG_THERMAL_TEMP_MAX_LEVEL3_MAX (1000)
1466#define CFG_THERMAL_TEMP_MAX_LEVEL3_DEFAULT (0)
1467
1468/*
1469 * Enable/Disable Modulated DTIM feature
1470 * Default: Disable
1471 */
1472#define CFG_ENABLE_MODULATED_DTIM_NAME "gEnableModulatedDTIM"
1473#define CFG_ENABLE_MODULATED_DTIM_MIN (0)
1474#define CFG_ENABLE_MODULATED_DTIM_MAX (5)
1475#define CFG_ENABLE_MODULATED_DTIM_DEFAULT (0)
1476
1477/*
1478 * Enable/Disable Multicast MAC Address List feature
1479 * Default: Disable
1480 */
1481#define CFG_MC_ADDR_LIST_ENABLE_NAME "gMCAddrListEnable"
1482#define CFG_MC_ADDR_LIST_ENABLE_MIN (0)
1483#define CFG_MC_ADDR_LIST_ENABLE_MAX (1)
1484#define CFG_MC_ADDR_LIST_ENABLE_DEFAULT (0)
1485
1486#define CFG_ENABLE_RX_STBC "gEnableRXSTBC"
1487#define CFG_ENABLE_RX_STBC_MIN (0)
1488#define CFG_ENABLE_RX_STBC_MAX (1)
1489#define CFG_ENABLE_RX_STBC_DEFAULT (1)
1490
1491#define CFG_ENABLE_TX_STBC "gEnableTXSTBC"
1492#define CFG_ENABLE_TX_STBC_MIN (0)
1493#define CFG_ENABLE_TX_STBC_MAX (1)
1494#define CFG_ENABLE_TX_STBC_DEFAULT (0)
1495
1496#define CFG_ENABLE_RX_LDPC "gEnableRXLDPC"
1497#define CFG_ENABLE_RX_LDPC_MIN (0)
1498#define CFG_ENABLE_RX_LDPC_MAX (1)
1499#define CFG_ENABLE_RX_LDPC_DEFAULT (0)
1500
1501/*
1502 * Enable/Disable vsta based on MAX Assoc limit
1503 * defined in WCNSS_qcom_cfg.ini.
1504 */
1505#ifdef WLAN_SOFTAP_VSTA_FEATURE
1506#define CFG_VSTA_SUPPORT_ENABLE "gEnableVSTASupport"
1507#define CFG_VSTA_SUPPORT_ENABLE_MIN (0)
1508#define CFG_VSTA_SUPPORT_ENABLE_MAX (1)
1509#define CFG_VSTA_SUPPORT_ENABLE_DEFAULT (0)
1510#endif
1511
1512#ifdef FEATURE_WLAN_TDLS
1513#define CFG_TDLS_SUPPORT_ENABLE "gEnableTDLSSupport"
1514#define CFG_TDLS_SUPPORT_ENABLE_MIN (0)
1515#define CFG_TDLS_SUPPORT_ENABLE_MAX (1)
1516#define CFG_TDLS_SUPPORT_ENABLE_DEFAULT (0)
1517
1518#define CFG_TDLS_IMPLICIT_TRIGGER "gEnableTDLSImplicitTrigger"
1519#define CFG_TDLS_IMPLICIT_TRIGGER_MIN (0)
1520#define CFG_TDLS_IMPLICIT_TRIGGER_MAX (1)
1521#define CFG_TDLS_IMPLICIT_TRIGGER_DEFAULT (0)
1522
1523#define CFG_TDLS_TX_STATS_PERIOD "gTDLSTxStatsPeriod"
1524#define CFG_TDLS_TX_STATS_PERIOD_MIN (10)
1525#define CFG_TDLS_TX_STATS_PERIOD_MAX (4294967295UL)
1526#define CFG_TDLS_TX_STATS_PERIOD_DEFAULT (5000)
1527
1528#define CFG_TDLS_TX_PACKET_THRESHOLD "gTDLSTxPacketThreshold"
1529#define CFG_TDLS_TX_PACKET_THRESHOLD_MIN (0)
1530#define CFG_TDLS_TX_PACKET_THRESHOLD_MAX (4294967295UL)
1531#define CFG_TDLS_TX_PACKET_THRESHOLD_DEFAULT (100)
1532
1533#define CFG_TDLS_MAX_DISCOVERY_ATTEMPT "gTDLSMaxDiscoveryAttempt"
1534#define CFG_TDLS_MAX_DISCOVERY_ATTEMPT_MIN (1)
1535#define CFG_TDLS_MAX_DISCOVERY_ATTEMPT_MAX (100)
1536#define CFG_TDLS_MAX_DISCOVERY_ATTEMPT_DEFAULT (5)
1537
1538#define CFG_TDLS_IDLE_PACKET_THRESHOLD "gTDLSIdlePacketThreshold"
1539#define CFG_TDLS_IDLE_PACKET_THRESHOLD_MIN (0)
1540#define CFG_TDLS_IDLE_PACKET_THRESHOLD_MAX (40000)
1541#define CFG_TDLS_IDLE_PACKET_THRESHOLD_DEFAULT (5)
1542
1543#define CFG_TDLS_RSSI_TRIGGER_THRESHOLD "gTDLSRSSITriggerThreshold"
1544#define CFG_TDLS_RSSI_TRIGGER_THRESHOLD_MIN (-120)
1545#define CFG_TDLS_RSSI_TRIGGER_THRESHOLD_MAX (0)
1546#define CFG_TDLS_RSSI_TRIGGER_THRESHOLD_DEFAULT (-75)
1547
1548#define CFG_TDLS_RSSI_TEARDOWN_THRESHOLD "gTDLSRSSITeardownThreshold"
1549#define CFG_TDLS_RSSI_TEARDOWN_THRESHOLD_MIN (-120)
1550#define CFG_TDLS_RSSI_TEARDOWN_THRESHOLD_MAX (0)
1551#define CFG_TDLS_RSSI_TEARDOWN_THRESHOLD_DEFAULT (-75)
1552
1553#define CFG_TDLS_RSSI_DELTA "gTDLSRSSIDelta"
1554#define CFG_TDLS_RSSI_DELTA_MIN (-30)
1555#define CFG_TDLS_RSSI_DELTA_MAX (0)
1556#define CFG_TDLS_RSSI_DELTA_DEFAULT (-20)
1557
1558#define CFG_TDLS_QOS_WMM_UAPSD_MASK_NAME "gTDLSUapsdMask" /* ACs to setup U-APSD for TDLS Sta */
1559#define CFG_TDLS_QOS_WMM_UAPSD_MASK_MIN (0)
1560#define CFG_TDLS_QOS_WMM_UAPSD_MASK_MAX (0x0F)
1561#define CFG_TDLS_QOS_WMM_UAPSD_MASK_DEFAULT (0x0F)
1562
1563#define CFG_TDLS_BUFFER_STA_SUPPORT_ENABLE "gEnableTDLSBufferSta"
1564#define CFG_TDLS_BUFFER_STA_SUPPORT_ENABLE_MIN (0)
1565#define CFG_TDLS_BUFFER_STA_SUPPORT_ENABLE_MAX (1)
1566/* Buffer STA is not enabled in CLD 2.0 yet */
1567#define CFG_TDLS_BUFFER_STA_SUPPORT_ENABLE_DEFAULT (1)
1568
1569#define CFG_TDLS_PUAPSD_INACTIVITY_TIME "gTDLSPuapsdInactivityTime"
1570#define CFG_TDLS_PUAPSD_INACTIVITY_TIME_MIN (0)
1571#define CFG_TDLS_PUAPSD_INACTIVITY_TIME_MAX (10)
1572#define CFG_TDLS_PUAPSD_INACTIVITY_TIME_DEFAULT (0)
1573
1574#define CFG_TDLS_PUAPSD_RX_FRAME_THRESHOLD "gTDLSPuapsdRxFrameThreshold"
1575#define CFG_TDLS_PUAPSD_RX_FRAME_THRESHOLD_MIN (10)
1576#define CFG_TDLS_PUAPSD_RX_FRAME_THRESHOLD_MAX (20)
1577#define CFG_TDLS_PUAPSD_RX_FRAME_THRESHOLD_DEFAULT (10)
1578
1579#define CFG_TDLS_PUAPSD_PEER_TRAFFIC_IND_WINDOW "gTDLSPuapsdPTIWindow"
1580#define CFG_TDLS_PUAPSD_PEER_TRAFFIC_IND_WINDOW_MIN (1)
1581#define CFG_TDLS_PUAPSD_PEER_TRAFFIC_IND_WINDOW_MAX (5)
1582#define CFG_TDLS_PUAPSD_PEER_TRAFFIC_IND_WINDOW_DEFAULT (2)
1583
1584#define CFG_TDLS_PUAPSD_PEER_TRAFFIC_RSP_TIMEOUT "gTDLSPuapsdPTRTimeout"
1585#define CFG_TDLS_PUAPSD_PEER_TRAFFIC_RSP_TIMEOUT_MIN (0)
1586#define CFG_TDLS_PUAPSD_PEER_TRAFFIC_RSP_TIMEOUT_MAX (10000)
1587#define CFG_TDLS_PUAPSD_PEER_TRAFFIC_RSP_TIMEOUT_DEFAULT (5000)
1588
1589#define CFG_TDLS_EXTERNAL_CONTROL "gTDLSExternalControl"
1590#define CFG_TDLS_EXTERNAL_CONTROL_MIN (0)
1591#define CFG_TDLS_EXTERNAL_CONTROL_MAX (1)
1592#define CFG_TDLS_EXTERNAL_CONTROL_DEFAULT (0)
1593
1594#define CFG_TDLS_OFF_CHANNEL_SUPPORT_ENABLE "gEnableTDLSOffChannel"
1595#define CFG_TDLS_OFF_CHANNEL_SUPPORT_ENABLE_MIN (0)
1596#define CFG_TDLS_OFF_CHANNEL_SUPPORT_ENABLE_MAX (1)
1597#define CFG_TDLS_OFF_CHANNEL_SUPPORT_ENABLE_DEFAULT (0)
1598
1599#define CFG_TDLS_WMM_MODE_ENABLE "gEnableTDLSWmmMode"
1600#define CFG_TDLS_WMM_MODE_ENABLE_MIN (0)
1601#define CFG_TDLS_WMM_MODE_ENABLE_MAX (1)
1602#define CFG_TDLS_WMM_MODE_ENABLE_DEFAULT (1)
1603
1604#define CFG_TDLS_PREFERRED_OFF_CHANNEL_NUM "gTDLSPrefOffChanNum"
1605#define CFG_TDLS_PREFERRED_OFF_CHANNEL_NUM_MIN (1)
1606#define CFG_TDLS_PREFERRED_OFF_CHANNEL_NUM_MAX (165)
1607#define CFG_TDLS_PREFERRED_OFF_CHANNEL_NUM_DEFAULT (36)
1608
1609#define CFG_TDLS_PREFERRED_OFF_CHANNEL_BW "gTDLSPrefOffChanBandwidth"
1610#define CFG_TDLS_PREFERRED_OFF_CHANNEL_BW_MIN (0)
1611#define CFG_TDLS_PREFERRED_OFF_CHANNEL_BW_MAX (0x0F)
1612#define CFG_TDLS_PREFERRED_OFF_CHANNEL_BW_DEFAULT (0x07)
1613
1614/* Enable TDLS Scan: Allow scan and maintain TDLS link.
1615 * 0: If peer is not buffer STA capable and device is not sleep STA
1616 * capable, then teardown TDLS link when scan is initiated. If peer
1617 * is buffer STA and we can be sleep STA then TDLS link is maintained
1618 * during scan.
1619 * 1: Maintain TDLS link and allow scan even if peer is not buffer STA
1620 * capable and device is not sleep STA capable. There will be loss of
1621 * Rx pkts since peer would not know when device moves away from tdls
1622 * channel. Tx on TDLS link would stop when device moves away from tdls
1623 * channel.
1624 */
1625#define CFG_TDLS_SCAN_ENABLE "gEnableTDLSScan"
1626#define CFG_TDLS_SCAN_ENABLE_MIN (0)
1627#define CFG_TDLS_SCAN_ENABLE_MAX (1)
1628#define CFG_TDLS_SCAN_ENABLE_DEFAULT (0)
1629#endif
1630
1631/* Enable/Disable LPWR Image(cMEM uBSP) Transition */
1632#define CFG_ENABLE_LPWR_IMG_TRANSITION_NAME "gEnableLpwrImgTransition"
1633#define CFG_ENABLE_LPWR_IMG_TRANSITION_MIN (0)
1634#define CFG_ENABLE_LPWR_IMG_TRANSITION_MAX (1)
1635#define CFG_ENABLE_LPWR_IMG_TRANSITION_DEFAULT (0)
1636
1637/*
1638 * Scan Aging timeout value in seconds
1639 */
1640#define CFG_SCAN_AGING_PARAM_NAME "gScanAgingTime"
1641#define CFG_SCAN_AGING_PARAM_MIN (0)
1642#define CFG_SCAN_AGING_PARAM_MAX (200)
1643#define CFG_SCAN_AGING_PARAM_DEFAULT (60)
1644
1645/* Config Param to enable the txLdpc capability
1646 * 0 - disable
1647 * 1 - HT LDPC enable
1648 * 2 - VHT LDPC enable
1649 * 3 - HT & VHT LDPC enable */
1650#define CFG_TX_LDPC_ENABLE_FEATURE "gTxLdpcEnable"
1651#define CFG_TX_LDPC_ENABLE_FEATURE_MIN (0)
1652#define CFG_TX_LDPC_ENABLE_FEATURE_MAX (3)
1653#define CFG_TX_LDPC_ENABLE_FEATURE_DEFAULT (0)
1654
1655/*
1656 * Enable / Disable MCC Adaptive Scheduler feature
1657 * Default: Enable
1658 */
1659#define CFG_ENABLE_MCC_ADATIVE_SCHEDULER_ENABLED_NAME "gEnableMCCAdaptiveScheduler"
1660#define CFG_ENABLE_MCC_ADATIVE_SCHEDULER_ENABLED_MIN (0)
1661#define CFG_ENABLE_MCC_ADATIVE_SCHEDULER_ENABLED_MAX (1)
1662#define CFG_ENABLE_MCC_ADATIVE_SCHEDULER_ENABLED_DEFAULT (1)
1663
1664#define CFG_VHT_SU_BEAMFORMEE_CAP_FEATURE "gTxBFEnable"
1665#define CFG_VHT_SU_BEAMFORMEE_CAP_FEATURE_MIN (WNI_CFG_VHT_SU_BEAMFORMEE_CAP_STAMIN)
1666#define CFG_VHT_SU_BEAMFORMEE_CAP_FEATURE_MAX (WNI_CFG_VHT_SU_BEAMFORMEE_CAP_STAMAX)
1667#define CFG_VHT_SU_BEAMFORMEE_CAP_FEATURE_DEFAULT (WNI_CFG_VHT_SU_BEAMFORMEE_CAP_STADEF)
1668
1669#define CFG_VHT_CSN_BEAMFORMEE_ANT_SUPPORTED "gTxBFCsnValue"
1670#define CFG_VHT_CSN_BEAMFORMEE_ANT_SUPPORTED_MIN (WNI_CFG_VHT_CSN_BEAMFORMEE_ANT_SUPPORTED_STAMIN)
1671#define CFG_VHT_CSN_BEAMFORMEE_ANT_SUPPORTED_MAX (WNI_CFG_VHT_CSN_BEAMFORMEE_ANT_SUPPORTED_STAMAX - 1)
1672#define CFG_VHT_CSN_BEAMFORMEE_ANT_SUPPORTED_DEFAULT (WNI_CFG_VHT_CSN_BEAMFORMEE_ANT_SUPPORTED_STAMAX - 1)
1673
1674#define CFG_VHT_ENABLE_TXBF_IN_20MHZ "gEnableTxBFin20MHz"
1675#define CFG_VHT_ENABLE_TXBF_IN_20MHZ_MIN (0)
1676#define CFG_VHT_ENABLE_TXBF_IN_20MHZ_MAX (1)
1677#define CFG_VHT_ENABLE_TXBF_IN_20MHZ_DEFAULT (0)
1678
1679#define CFG_VHT_ENABLE_TX_SU_BEAM_FORMER "gEnableTxSUBeamformer"
1680#define CFG_VHT_ENABLE_TX_SU_BEAM_FORMER_MIN (0)
1681#define CFG_VHT_ENABLE_TX_SU_BEAM_FORMER_MAX (1)
1682#define CFG_VHT_ENABLE_TX_SU_BEAM_FORMER_DEFAULT (0)
1683
1684/* Enable debug for remain on channel issues */
1685#define CFG_DEBUG_P2P_REMAIN_ON_CHANNEL_NAME "gDebugP2pRemainOnChannel"
1686#define CFG_DEBUG_P2P_REMAIN_ON_CHANNEL_DEFAULT (0)
1687#define CFG_DEBUG_P2P_REMAIN_ON_CHANNEL_MIN (0)
1688#define CFG_DEBUG_P2P_REMAIN_ON_CHANNEL_MAX (1)
1689
1690/*
1691 * SAP ALLOW All Channels
1692 */
1693#define CFG_SAP_ALLOW_ALL_CHANNEL_PARAM_NAME "gSapAllowAllChannel"
1694#define CFG_SAP_ALLOW_ALL_CHANNEL_PARAM_MIN (0)
1695#define CFG_SAP_ALLOW_ALL_CHANNEL_PARAM_MAX (1)
1696#define CFG_SAP_ALLOW_ALL_CHANNEL_PARAM_DEFAULT (0)
1697
1698#ifdef WLAN_FEATURE_11AC
1699#define CFG_DISABLE_LDPC_WITH_TXBF_AP "gDisableLDPCWithTxbfAP"
1700#define CFG_DISABLE_LDPC_WITH_TXBF_AP_MIN (0)
1701#define CFG_DISABLE_LDPC_WITH_TXBF_AP_MAX (1)
1702#define CFG_DISABLE_LDPC_WITH_TXBF_AP_DEFAULT (0)
1703#endif
1704
1705/*
1706 * IBSS Operating Channels for 2.4G and 5GHz channels
1707 */
1708#define CFG_IBSS_ADHOC_CHANNEL_5GHZ_NAME "gAdHocChannel5G"
1709#define CFG_IBSS_ADHOC_CHANNEL_5GHZ_MIN (36)
1710#define CFG_IBSS_ADHOC_CHANNEL_5GHZ_MAX (165)
1711#define CFG_IBSS_ADHOC_CHANNEL_5GHZ_DEFAULT (44)
1712
1713#define CFG_IBSS_ADHOC_CHANNEL_24GHZ_NAME "gAdHocChannel24G"
1714#define CFG_IBSS_ADHOC_CHANNEL_24GHZ_MIN (1)
1715#define CFG_IBSS_ADHOC_CHANNEL_24GHZ_MAX (14)
1716#define CFG_IBSS_ADHOC_CHANNEL_24GHZ_DEFAULT (6)
1717
1718/* Parameter to control VHT support in 2.4 GHz band */
1719#define CFG_ENABLE_VHT_FOR_24GHZ_NAME "gEnableVhtFor24GHzBand"
1720#define CFG_ENABLE_VHT_FOR_24GHZ_MIN (0)
1721#define CFG_ENABLE_VHT_FOR_24GHZ_MAX (1)
1722#define CFG_ENABLE_VHT_FOR_24GHZ_DEFAULT (0)
1723
1724#define CFG_MAX_MEDIUM_TIME "gMaxMediumTime"
1725#define CFG_MAX_MEDIUM_TIME_STAMIN WNI_CFG_MAX_MEDIUM_TIME_STAMIN
1726#define CFG_MAX_MEDIUM_TIME_STAMAX WNI_CFG_MAX_MEDIUM_TIME_STAMAX
1727#define CFG_MAX_MEDIUM_TIME_STADEFAULT WNI_CFG_MAX_MEDIUM_TIME_STADEF
1728
1729/*
1730 * Enable legacy fast roaming (LFR) on STA link during concurrent sessions
1731 */
1732#define CFG_ENABLE_FAST_ROAM_IN_CONCURRENCY "gEnableFastRoamInConcurrency"
1733#define CFG_ENABLE_FAST_ROAM_IN_CONCURRENCY_MIN (0)
1734#define CFG_ENABLE_FAST_ROAM_IN_CONCURRENCY_MAX (1)
1735#define CFG_ENABLE_FAST_ROAM_IN_CONCURRENCY_DEFAULT (1)
1736
1737/*
1738 * FlexConnectPowerFactor parameter
1739 * Default: Disable (0)
1740 */
1741#define CFG_FLEX_CONNECT_POWER_FACTOR_NAME "gFlexConnectPowerFactor"
1742#define CFG_FLEX_CONNECT_POWER_FACTOR_MIN (0)
1743#define CFG_FLEX_CONNECT_POWER_FACTOR_MAX (9)
1744#define CFG_FLEX_CONNECT_POWER_FACTOR_DEFAULT (0)
1745
1746/*
1747 * Enable heart beat monitoring offload to FW
1748 */
1749#define CFG_ENABLE_HEART_BEAT_OFFLOAD "gEnableIbssHeartBeatOffload"
1750#define CFG_ENABLE_HEART_BEAT_OFFLOAD_MIN (0)
1751#define CFG_ENABLE_HEART_BEAT_OFFLOAD_MAX (1)
1752#define CFG_ENABLE_HEART_BEAT_OFFLOAD_DEFAULT (1)
1753
1754#define CFG_ANTENNA_DIVERSITY_PARAM_NAME "gAntennaDiversity"
1755#define CFG_ANTENNA_DIVERSITY_PARAM_MIN (0)
1756#define CFG_ANTENNA_DIVERSITY_PARAM_MAX (3)
1757#define CFG_ANTENNA_DIVERSITY_PARAM_DEFAULT (0)
1758
1759#define CFG_ENABLE_SNR_MONITORING_NAME "gEnableSNRMonitoring"
1760#define CFG_ENABLE_SNR_MONITORING_MIN (0)
1761#define CFG_ENABLE_SNR_MONITORING_MAX (1)
1762#define CFG_ENABLE_SNR_MONITORING_DEFAULT (0)
1763
1764#ifdef FEATURE_WLAN_SCAN_PNO
1765#define CFG_PNO_SCAN_SUPPORT "gPNOScanSupport"
1766#define CFG_PNO_SCAN_SUPPORT_ENABLE (1)
1767#define CFG_PNO_SCAN_SUPPORT_DISABLE (0)
1768#define CFG_PNO_SCAN_SUPPORT_DEFAULT (1)
1769
1770#define CFG_PNO_SCAN_TIMER_REPEAT_VALUE "gPNOScanTimerRepeatValue"
1771#define CFG_PNO_SCAN_TIMER_REPEAT_VALUE_DEFAULT (6)
1772#define CFG_PNO_SCAN_TIMER_REPEAT_VALUE_MIN (0)
1773#define CFG_PNO_SCAN_TIMER_REPEAT_VALUE_MAX (0xffffffff)
1774#endif
1775
1776#define CFG_AMSDU_SUPPORT_IN_AMPDU_NAME "gAmsduSupportInAMPDU"
1777#define CFG_AMSDU_SUPPORT_IN_AMPDU_MIN (0)
1778#define CFG_AMSDU_SUPPORT_IN_AMPDU_MAX (1)
1779#define CFG_AMSDU_SUPPORT_IN_AMPDU_DEFAULT (0) /* disabled */
1780
1781/* Prefer connecting to 5G AP even if its RSSI is lower by
1782 gSelect5GHzMargin dBm than 2.4G AP.
1783 This feature requires the dependent cfg.ini "gRoamPrefer5GHz" set to 1 */
1784#define CFG_STRICT_5GHZ_PREF_BY_MARGIN "gSelect5GHzMargin"
1785#define CFG_STRICT_5GHZ_PREF_BY_MARGIN_MIN (0)
1786#define CFG_STRICT_5GHZ_PREF_BY_MARGIN_MAX (60)
1787#define CFG_STRICT_5GHZ_PREF_BY_MARGIN_DEFAULT (0) /* set 0 to disable */
1788
1789/* It enables IP, TCP and UDP checksum offload in hardware
1790 * and also advertise same to network stack.
1791 */
1792#define CFG_ENABLE_IP_TCP_UDP_CHKSUM_OFFLOAD "gEnableIpTcpUdpChecksumOffload"
1793#define CFG_ENABLE_IP_TCP_UDP_CHKSUM_OFFLOAD_DISABLE (0)
1794#define CFG_ENABLE_IP_TCP_UDP_CHKSUM_OFFLOAD_ENABLE (1)
1795#define CFG_ENABLE_IP_TCP_UDP_CHKSUM_OFFLOAD_DEFAULT (CFG_ENABLE_IP_TCP_UDP_CHKSUM_OFFLOAD_ENABLE)
1796
1797/*
1798 * Power Save Offload
1799 * Power Save Offload configuration:
1800 * Current values of gEnablePowerSaveOffload:
1801 * 0 -> Power save offload is disabled
1802 * 1 -> Legacy Power save enabled + Deep sleep Disabled
1803 * 2 -> QPower enabled + Deep sleep Disabled
1804 * 3 -> Legacy Power save enabled + Deep sleep Enabled
1805 * 4 -> QPower enabled + Deep sleep Enabled
1806 * 5 -> Duty cycling QPower enabled
1807 */
1808#define CFG_POWERSAVE_OFFLOAD_NAME "gEnablePowerSaveOffload"
1809#define CFG_POWERSAVE_OFFLOAD_MIN (0)
1810#define CFG_POWERSAVE_OFFLOAD_MAX (PS_DUTY_CYCLING_QPOWER)
1811#define CFG_POWERSAVE_OFFLOAD_DEFAULT (CFG_POWERSAVE_OFFLOAD_MIN)
1812
1813#ifdef WLAN_FEATURE_FASTPATH
1814#define CFG_ENABLE_FASTPATH "gEnableFastPath"
1815#define CFG_ENABLE_FASTPATH_MIN (0)
1816#define CFG_ENABLE_FASTPATH_MAX (1)
1817#define CFG_ENABLE_FASTPATH_DEFAULT (CFG_ENABLE_FASTPATH_MIN)
1818#endif /* WLAN_FEATURE_FASTPATH */
1819
1820/*
1821 * IPA Offload configuration - Each bit enables a feature
1822 * bit0 - IPA Enable
1823 * bit1 - IPA Pre filter enable
1824 * bit2 - IPv6 enable
1825 * bit3 - IPA Resource Manager (RM) enable
1826 * bit4 - IPA Clock scaling enable
1827 */
1828#define CFG_IPA_OFFLOAD_CONFIG_NAME "gIPAConfig"
1829#define CFG_IPA_OFFLOAD_CONFIG_MIN (0)
1830#define CFG_IPA_OFFLOAD_CONFIG_MAX (0xFFFFFFFF)
1831#define CFG_IPA_OFFLOAD_CONFIG_DEFAULT (CFG_IPA_OFFLOAD_CONFIG_MIN)
1832
1833/*
1834 * IPA DESC SIZE
1835 */
1836#define CFG_IPA_DESC_SIZE_NAME "gIPADescSize"
1837#define CFG_IPA_DESC_SIZE_MIN (800)
1838#define CFG_IPA_DESC_SIZE_MAX (8000)
1839#define CFG_IPA_DESC_SIZE_DEFAULT (800)
1840
1841#define CFG_IPA_HIGH_BANDWIDTH_MBPS "gIPAHighBandwidthMbps"
1842#define CFG_IPA_HIGH_BANDWIDTH_MBPS_MIN (200)
1843#define CFG_IPA_HIGH_BANDWIDTH_MBPS_MAX (1000)
1844#define CFG_IPA_HIGH_BANDWIDTH_MBPS_DEFAULT (400)
1845
1846#define CFG_IPA_MEDIUM_BANDWIDTH_MBPS "gIPAMediumBandwidthMbps"
1847#define CFG_IPA_MEDIUM_BANDWIDTH_MBPS_MIN (100)
1848#define CFG_IPA_MEDIUM_BANDWIDTH_MBPS_MAX (400)
1849#define CFG_IPA_MEDIUM_BANDWIDTH_MBPS_DEFAULT (200)
1850
1851#define CFG_IPA_LOW_BANDWIDTH_MBPS "gIPALowBandwidthMbps"
1852#define CFG_IPA_LOW_BANDWIDTH_MBPS_MIN (0)
1853#define CFG_IPA_LOW_BANDWIDTH_MBPS_MAX (100)
1854#define CFG_IPA_LOW_BANDWIDTH_MBPS_DEFAULT (100)
1855
1856/*
1857 * Firmware uart print
1858 */
1859#define CFG_ENABLE_FW_UART_PRINT_NAME "gEnablefwprint"
1860#define CFG_ENABLE_FW_UART_PRINT_DISABLE (0)
1861#define CFG_ENABLE_FW_UART_PRINT_ENABLE (1)
1862#define CFG_ENABLE_FW_UART_PRINT_DEFAULT (CFG_ENABLE_FW_UART_PRINT_DISABLE)
1863
1864/*
1865 * Firmware log
1866 */
1867#define CFG_ENABLE_FW_LOG_NAME "gEnablefwlog"
1868#define CFG_ENABLE_FW_LOG_DISABLE (0)
1869#define CFG_ENABLE_FW_LOG_ENABLE (1)
1870#define CFG_ENABLE_FW_LOG_DEFAULT (CFG_ENABLE_FW_LOG_DISABLE)
1871
1872/*
1873 * Enable/Disable SSR for USB
1874 */
1875#define CFG_ENABLE_FW_SELF_RECOVERY_NAME "gEnableFwSelfRecovery"
1876#define CFG_ENABLE_FW_SELF_RECOVERY_DISABLE (0)
1877#define CFG_ENABLE_FW_SELF_RECOVERY_ENABLE (1)
1878#define CFG_ENABLE_FW_SELF_RECOVERY_DEFAULT (CFG_ENABLE_FW_SELF_RECOVERY_DISABLE)
1879
1880#ifdef WLAN_FEATURE_11AC
1881/* Macro to handle maximum receive AMPDU size configuration */
1882#define CFG_VHT_AMPDU_LEN_EXPONENT_NAME "gVhtAmpduLenExponent"
1883#define CFG_VHT_AMPDU_LEN_EXPONENT_MIN (0)
1884#define CFG_VHT_AMPDU_LEN_EXPONENT_MAX (7)
1885#define CFG_VHT_AMPDU_LEN_EXPONENT_DEFAULT (3)
1886
1887#define CFG_VHT_MPDU_LEN_NAME "gVhtMpduLen"
1888#define CFG_VHT_MPDU_LEN_MIN (0)
1889#define CFG_VHT_MPDU_LEN_MAX (2)
1890#define CFG_VHT_MPDU_LEN_DEFAULT (0)
1891#endif
1892
1893#define CFG_MAX_WOW_FILTERS_NAME "gMaxWoWFilters"
1894#define CFG_MAX_WOW_FILTERS_MIN (0)
1895#define CFG_MAX_WOW_FILTERS_MAX (WOW_MAX_BITMAP_FILTERS)
1896#define CFG_MAX_WOW_FILTERS_DEFAULT (WOW_MAX_BITMAP_FILTERS)
1897
1898/*
1899 * WOW Enable/Disable.
1900 * 0 - Disable both magic pattern match and pattern byte match.
1901 * 1 - Enable magic pattern match on all interfaces.
1902 * 2 - Enable pattern byte match on all interfaces.
1903 * 3 - Enable both magic patter and pattern byte match on all interfaces.
1904 */
1905#define CFG_WOW_STATUS_NAME "gEnableWoW"
1906#define CFG_WOW_ENABLE_MIN (0)
1907#define CFG_WOW_ENABLE_MAX (3)
1908#define CFG_WOW_STATUS_DEFAULT (3)
1909
1910#define CFG_COALESING_IN_IBSS_NAME "gCoalesingInIBSS"
1911#define CFG_COALESING_IN_IBSS_MIN (0)
1912#define CFG_COALESING_IN_IBSS_MAX (1)
1913#define CFG_COALESING_IN_IBSS_DEFAULT (0) /* disabled */
1914
1915#define CFG_IBSS_ATIM_WIN_SIZE_NAME "gIbssATIMWinSize"
1916#define CFG_IBSS_ATIM_WIN_SIZE_MIN (0)
1917#define CFG_IBSS_ATIM_WIN_SIZE_MAX (50)
1918#define CFG_IBSS_ATIM_WIN_SIZE_DEFAULT (0)
1919
1920/*
1921 * Indicates if IBSS Power Save is
1922 * supported or not. When not allowed,
1923 * IBSS station has to stay awake all
1924 * the time and should never set PM=1
1925 * in its transmitted frames. This
1926 * parameter is meaningful/valid only
1927 * when gIbssATIMWinSize is non-zero
1928 */
1929#define CFG_IBSS_IS_POWER_SAVE_ALLOWED_NAME "gIbssIsPowerSaveAllowed"
1930#define CFG_IBSS_IS_POWER_SAVE_ALLOWED_MIN (0)
1931#define CFG_IBSS_IS_POWER_SAVE_ALLOWED_MAX (1)
1932#define CFG_IBSS_IS_POWER_SAVE_ALLOWED_DEFAULT (1)
1933
1934/*
1935 * Indicates if IBSS Power Collapse
1936 * is allowed or not.
1937 */
1938#define CFG_IBSS_IS_POWER_COLLAPSE_ALLOWED_NAME "gIbssIsPowerCollapseAllowed"
1939#define CFG_IBSS_IS_POWER_COLLAPSE_ALLOWED_MIN (0)
1940#define CFG_IBSS_IS_POWER_COLLAPSE_ALLOWED_MAX (1)
1941#define CFG_IBSS_IS_POWER_COLLAPSE_ALLOWED_DEFAULT (1)
1942
1943/*
1944 * This parameter indicates whether IBSS station
1945 * can exit power save mode and enter power active
1946 * state whenever there is a TX/RX activity.
1947 */
1948#define CFG_IBSS_AWAKE_ON_TX_RX_NAME "gIbssAwakeOnTxRx"
1949#define CFG_IBSS_AWAKE_ON_TX_RX_MIN (0)
1950#define CFG_IBSS_AWAKE_ON_TX_RX_MAX (1)
1951#define CFG_IBSS_AWAKE_ON_TX_RX_DEFAULT (0)
1952
1953/*
1954 * In IBSS mode if Awake on TX/RX activity is enabled
1955 * Ibss Inactivity parameter indicates the data
1956 * inactivity time in number of beacon intervals
1957 * after which IBSS station re-inters power save
1958 * by sending Null frame with PM=1
1959 */
1960#define CFG_IBSS_INACTIVITY_TIME_NAME "gIbssInactivityTime"
1961#define CFG_IBSS_INACTIVITY_TIME_MIN (1)
1962#define CFG_IBSS_INACTIVITY_TIME_MAX (10)
1963#define CFG_IBSS_INACTIVITY_TIME_DEFAULT (1)
1964
1965/*
1966 * In IBSS mode Tx Service Period Inactivity
1967 * time in msecs indicates the time after
1968 * which TX Service Period is terminated by
1969 * sending a Qos Null frame with EOSP.
1970 * If value is 0, TX SP is terminated with the
1971 * last buffered packet itself instead of waiting
1972 * for the inactivity
1973 */
1974#define CFG_IBSS_TXSP_END_INACTIVITY_NAME "gIbssTxSpEndInactivityTime"
1975#define CFG_IBSS_TXSP_END_INACTIVITY_MIN (0)
1976#define CFG_IBSS_TXSP_END_INACTIVITY_MAX (100)
1977#define CFG_IBSS_TXSP_END_INACTIVITY_DEFAULT (0)
1978
1979/*
1980 * When IBSS network is initialized, PS-supporting device
1981 * does not enter protocol sleep state during first
1982 * gIbssPsWarmupTime seconds.
1983 */
1984#define CFG_IBSS_PS_WARMUP_TIME_NAME "gIbssPsWarmupTime"
1985#define CFG_IBSS_PS_WARMUP_TIME_MIN (0)
1986/* Allow unsigned Int Max for now */
1987#define CFG_IBSS_PS_WARMUP_TIME_MAX (65535)
1988#define CFG_IBSS_PS_WARMUP_TIME_DEFAULT (0)
1989
1990/*
1991 * IBSS Power Save Enable/Disable 1 RX
1992 * chain usage during the ATIM window
1993 */
1994#define CFG_IBSS_PS_1RX_CHAIN_IN_ATIM_WINDOW_NAME "gIbssPs1RxChainInAtim"
1995#define CFG_IBSS_PS_1RX_CHAIN_IN_ATIM_WINDOW_MIN (0)
1996#define CFG_IBSS_PS_1RX_CHAIN_IN_ATIM_WINDOW_MAX (1)
1997#define CFG_IBSS_PS_1RX_CHAIN_IN_ATIM_WINDOW_DEFAULT (0)
1998
1999#define CFG_SAP_MAX_NO_PEERS "gSoftApMaxPeers"
2000#define CFG_SAP_MAX_NO_PEERS_MIN (1)
2001#define CFG_SAP_MAX_NO_PEERS_MAX (32)
2002#define CFG_SAP_MAX_NO_PEERS_DEFAULT (32)
2003
2004/*
2005 * Connection related log Enable/Disable.
2006 * 0x1 - Enable mgmt pkt logs (no probe req/rsp).
2007 * 0x2 - Enable EAPOL pkt logs.
2008 * 0x4 - Enable DHCP pkt logs.
2009 * 0x0 - Disable all the above connection related logs.
2010 */
2011#define CFG_ENABLE_DEBUG_CONNECT_ISSUE "gEnableDebugLog"
2012#define CFG_ENABLE_DEBUG_CONNECT_ISSUE_MIN (0)
2013#define CFG_ENABLE_DEBUG_CONNECT_ISSUE_MAX (0xFF)
2014#define CFG_ENABLE_DEBUG_CONNECT_ISSUE_DEFAULT (0)
2015
2016/* This will be used only for debugging purpose, will be removed after sometime */
2017#define CFG_ENABLE_RX_THREAD "gEnableRxThread"
2018#define CFG_ENABLE_RX_THREAD_MIN (0)
2019#define CFG_ENABLE_RX_THREAD_MAX (1)
2020#define CFG_ENABLE_RX_THREAD_DEFAULT (1)
2021
2022/* SAR Thermal limit values for 2g and 5g */
2023
2024#define CFG_SET_TXPOWER_LIMIT2G_NAME "TxPower2g"
2025#define CFG_SET_TXPOWER_LIMIT2G_MIN (0)
2026#define CFG_SET_TXPOWER_LIMIT2G_MAX (30)
2027#define CFG_SET_TXPOWER_LIMIT2G_DEFAULT (15)
2028
2029#define CFG_SET_TXPOWER_LIMIT5G_NAME "TxPower5g"
2030#define CFG_SET_TXPOWER_LIMIT5G_MIN (0)
2031#define CFG_SET_TXPOWER_LIMIT5G_MAX (30)
2032#define CFG_SET_TXPOWER_LIMIT5G_DEFAULT (15)
2033
2034#ifdef QCA_LL_LEGACY_TX_FLOW_CONTROL
2035#define CFG_LL_TX_FLOW_LWM "TxFlowLowWaterMark"
2036#define CFG_LL_TX_FLOW_LWM_MIN (0)
2037#define CFG_LL_TX_FLOW_LWM_MAX (1000)
2038
2039#define CFG_LL_TX_FLOW_LWM_DEFAULT (300)
2040
2041#define CFG_LL_TX_FLOW_HWM_OFFSET "TxFlowHighWaterMarkOffset"
2042#define CFG_LL_TX_FLOW_HWM_OFFSET_MIN (0)
2043#define CFG_LL_TX_FLOW_HWM_OFFSET_MAX (300)
2044
2045#define CFG_LL_TX_FLOW_HWM_OFFSET_DEFAULT (94)
2046
2047#define CFG_LL_TX_FLOW_MAX_Q_DEPTH "TxFlowMaxQueueDepth"
2048#define CFG_LL_TX_FLOW_MAX_Q_DEPTH_MIN (400)
2049#define CFG_LL_TX_FLOW_MAX_Q_DEPTH_MAX (3500)
2050#define CFG_LL_TX_FLOW_MAX_Q_DEPTH_DEFAULT (1500)
2051
2052#define CFG_LL_TX_LBW_FLOW_LWM "TxLbwFlowLowWaterMark"
2053#define CFG_LL_TX_LBW_FLOW_LWM_MIN (0)
2054#define CFG_LL_TX_LBW_FLOW_LWM_MAX (1000)
2055
2056#define CFG_LL_TX_LBW_FLOW_LWM_DEFAULT (450)
2057
2058#define CFG_LL_TX_LBW_FLOW_HWM_OFFSET "TxLbwFlowHighWaterMarkOffset"
2059#define CFG_LL_TX_LBW_FLOW_HWM_OFFSET_MIN (0)
2060#define CFG_LL_TX_LBW_FLOW_HWM_OFFSET_MAX (300)
2061
2062#define CFG_LL_TX_LBW_FLOW_HWM_OFFSET_DEFAULT (50)
2063
2064#define CFG_LL_TX_LBW_FLOW_MAX_Q_DEPTH "TxLbwFlowMaxQueueDepth"
2065#define CFG_LL_TX_LBW_FLOW_MAX_Q_DEPTH_MIN (400)
2066#define CFG_LL_TX_LBW_FLOW_MAX_Q_DEPTH_MAX (3500)
2067#define CFG_LL_TX_LBW_FLOW_MAX_Q_DEPTH_DEFAULT (750)
2068
2069#define CFG_LL_TX_HBW_FLOW_LWM "TxHbwFlowLowWaterMark"
2070#define CFG_LL_TX_HBW_FLOW_LWM_MIN (0)
2071#define CFG_LL_TX_HBW_FLOW_LWM_MAX (1000)
2072
2073#define CFG_LL_TX_HBW_FLOW_LWM_DEFAULT (406)
2074
2075#define CFG_LL_TX_HBW_FLOW_HWM_OFFSET "TxHbwFlowHighWaterMarkOffset"
2076#define CFG_LL_TX_HBW_FLOW_HWM_OFFSET_MIN (0)
2077#define CFG_LL_TX_HBW_FLOW_HWM_OFFSET_MAX (300)
2078
2079#define CFG_LL_TX_HBW_FLOW_HWM_OFFSET_DEFAULT (94)
2080
2081#define CFG_LL_TX_HBW_FLOW_MAX_Q_DEPTH "TxHbwFlowMaxQueueDepth"
2082#define CFG_LL_TX_HBW_FLOW_MAX_Q_DEPTH_MIN (400)
2083#define CFG_LL_TX_HBW_FLOW_MAX_Q_DEPTH_MAX (3500)
2084#define CFG_LL_TX_HBW_FLOW_MAX_Q_DEPTH_DEFAULT (1500)
2085#endif /* QCA_LL_LEGACY_TX_FLOW_CONTROL */
2086
2087#ifdef QCA_LL_TX_FLOW_CONTROL_V2
2088
2089#define CFG_LL_TX_FLOW_STOP_QUEUE_TH "TxFlowStopQueueThreshold"
2090#define CFG_LL_TX_FLOW_STOP_QUEUE_TH_DEFAULT (15)
2091#define CFG_LL_TX_FLOW_STOP_QUEUE_TH_MIN (0)
2092#define CFG_LL_TX_FLOW_STOP_QUEUE_TH_MAX (50)
2093
2094#define CFG_LL_TX_FLOW_START_QUEUE_OFFSET "TxFlowStartQueueOffset"
2095#define CFG_LL_TX_FLOW_START_QUEUE_OFFSET_DEFAULT (10)
2096#define CFG_LL_TX_FLOW_START_QUEUE_OFFSET_MIN (0)
2097#define CFG_LL_TX_FLOW_START_QUEUE_OFFSET_MAX (30)
2098
2099#endif /* QCA_LL_TX_FLOW_CONTROL_V2 */
2100
2101#define CFG_SAP_MAX_OFFLOAD_PEERS "gMaxOffloadPeers"
2102#define CFG_SAP_MAX_OFFLOAD_PEERS_MIN (2)
2103#define CFG_SAP_MAX_OFFLOAD_PEERS_MAX (5)
2104#define CFG_SAP_MAX_OFFLOAD_PEERS_DEFAULT (2)
2105
2106#define CFG_SAP_MAX_OFFLOAD_REORDER_BUFFS "gMaxOffloadReorderBuffs"
2107#define CFG_SAP_MAX_OFFLOAD_REORDER_BUFFS_MIN (0)
2108#define CFG_SAP_MAX_OFFLOAD_REORDER_BUFFS_MAX (3)
2109#define CFG_SAP_MAX_OFFLOAD_REORDER_BUFFS_DEFAULT (2)
2110
2111#ifdef FEATURE_WLAN_RA_FILTERING
2112#define CFG_RA_FILTER_ENABLE_NAME "gRAFilterEnable"
2113#define CFG_RA_FILTER_ENABLE_MIN (0)
2114#define CFG_RA_FILTER_ENABLE_MAX (1)
2115#define CFG_RA_FILTER_ENABLE_DEFAULT (0)
2116
2117#define CFG_RA_RATE_LIMIT_INTERVAL_NAME "gRArateLimitInterval"
2118#define CFG_RA_RATE_LIMIT_INTERVAL_MIN (60)
2119#define CFG_RA_RATE_LIMIT_INTERVAL_MAX (3600)
2120#define CFG_RA_RATE_LIMIT_INTERVAL_DEFAULT (60) /*60 SEC */
2121#endif
2122
2123#define CFG_IGNORE_PEER_ERP_INFO_NAME "gIgnorePeerErpInfo"
2124#define CFG_IGNORE_PEER_ERP_INFO_MIN (0)
2125#define CFG_IGNORE_PEER_ERP_INFO_MAX (1)
2126#define CFG_IGNORE_PEER_ERP_INFO_DEFAULT (0)
2127
2128/* Enable Memory Debug */
2129#ifdef MEMORY_DEBUG
2130#define CFG_ENABLE_MEMORY_DEBUG_NAME "gEnableMemoryDebug"
2131#define CFG_ENABLE_MEMORY_DEBUG_MIN (0)
2132#define CFG_ENABLE_MEMORY_DEBUG_MAX (1)
2133#define CFG_ENABLE_MEMORY_DEBUG_DEFAULT (1)
2134#endif
2135
2136#define CFG_INITIAL_DWELL_TIME_NAME "gInitialDwellTime"
2137#define CFG_INITIAL_DWELL_TIME_DEFAULT (0)
2138#define CFG_INITIAL_DWELL_TIME_MIN (0)
2139#define CFG_INITIAL_DWELL_TIME_MAX (100)
2140
2141#define CFG_INITIAL_SCAN_NO_DFS_CHNL_NAME "gInitialScanNoDFSChnl"
2142#define CFG_INITIAL_SCAN_NO_DFS_CHNL_DEFAULT (0)
2143#define CFG_INITIAL_SCAN_NO_DFS_CHNL_MIN (0)
2144#define CFG_INITIAL_SCAN_NO_DFS_CHNL_MAX (1)
2145
2146#define CFG_ROAMING_DFS_CHANNEL_NAME "gAllowDFSChannelRoam"
2147#define CFG_ROAMING_DFS_CHANNEL_DISABLED (0)
2148#define CFG_ROAMING_DFS_CHANNEL_ENABLED_NORMAL (1)
2149#define CFG_ROAMING_DFS_CHANNEL_ENABLED_ACTIVE (2)
2150#define CFG_ROAMING_DFS_CHANNEL_MIN (CFG_ROAMING_DFS_CHANNEL_DISABLED)
2151#define CFG_ROAMING_DFS_CHANNEL_MAX (CFG_ROAMING_DFS_CHANNEL_ENABLED_ACTIVE)
2152#define CFG_ROAMING_DFS_CHANNEL_DEFAULT (CFG_ROAMING_DFS_CHANNEL_DISABLED)
2153
2154#ifdef MSM_PLATFORM
2155#define CFG_BUS_BANDWIDTH_HIGH_THRESHOLD "gBusBandwidthHighThreshold"
2156#define CFG_BUS_BANDWIDTH_HIGH_THRESHOLD_DEFAULT (2000)
2157#define CFG_BUS_BANDWIDTH_HIGH_THRESHOLD_MIN (0)
2158#define CFG_BUS_BANDWIDTH_HIGH_THRESHOLD_MAX (4294967295UL)
2159
2160#define CFG_BUS_BANDWIDTH_MEDIUM_THRESHOLD "gBusBandwidthMediumThreshold"
2161#define CFG_BUS_BANDWIDTH_MEDIUM_THRESHOLD_DEFAULT (500)
2162#define CFG_BUS_BANDWIDTH_MEDIUM_THRESHOLD_MIN (0)
2163#define CFG_BUS_BANDWIDTH_MEDIUM_THRESHOLD_MAX (4294967295UL)
2164
2165#define CFG_BUS_BANDWIDTH_LOW_THRESHOLD "gBusBandwidthLowThreshold"
2166#define CFG_BUS_BANDWIDTH_LOW_THRESHOLD_DEFAULT (150)
2167#define CFG_BUS_BANDWIDTH_LOW_THRESHOLD_MIN (0)
2168#define CFG_BUS_BANDWIDTH_LOW_THRESHOLD_MAX (4294967295UL)
2169
2170#define CFG_BUS_BANDWIDTH_COMPUTE_INTERVAL "gBusBandwidthComputeInterval"
2171#define CFG_BUS_BANDWIDTH_COMPUTE_INTERVAL_DEFAULT (100)
2172#define CFG_BUS_BANDWIDTH_COMPUTE_INTERVAL_MIN (0)
2173#define CFG_BUS_BANDWIDTH_COMPUTE_INTERVAL_MAX (10000)
2174
2175#define CFG_TCP_DELACK_THRESHOLD_HIGH "gTcpDelAckThresholdHigh"
2176#define CFG_TCP_DELACK_THRESHOLD_HIGH_DEFAULT (500)
2177#define CFG_TCP_DELACK_THRESHOLD_HIGH_MIN (0)
2178#define CFG_TCP_DELACK_THRESHOLD_HIGH_MAX (16000)
2179
2180#define CFG_TCP_DELACK_THRESHOLD_LOW "gTcpDelAckThresholdLow"
2181#define CFG_TCP_DELACK_THRESHOLD_LOW_DEFAULT (1000)
2182#define CFG_TCP_DELACK_THRESHOLD_LOW_MIN (0)
2183#define CFG_TCP_DELACK_THRESHOLD_LOW_MAX (10000)
2184#endif /* MSM_PLATFORM */
2185
2186#ifdef WLAN_FEATURE_11W
2187#define CFG_PMF_SA_QUERY_MAX_RETRIES_NAME "pmfSaQueryMaxRetries"
2188#define CFG_PMF_SA_QUERY_MAX_RETRIES_DEFAULT (5)
2189#define CFG_PMF_SA_QUERY_MAX_RETRIES_MIN (0)
2190#define CFG_PMF_SA_QUERY_MAX_RETRIES_MAX (20)
2191
2192#define CFG_PMF_SA_QUERY_RETRY_INTERVAL_NAME "pmfSaQueryRetryInterval"
2193#define CFG_PMF_SA_QUERY_RETRY_INTERVAL_DEFAULT (200)
2194#define CFG_PMF_SA_QUERY_RETRY_INTERVAL_MIN (0)
2195#define CFG_PMF_SA_QUERY_RETRY_INTERVAL_MAX (2000)
2196#endif
2197
2198#define CFG_MAX_CONCURRENT_CONNECTIONS_NAME "gMaxConcurrentActiveSessions"
2199#define CFG_MAX_CONCURRENT_CONNECTIONS_DEFAULT (2)
2200#define CFG_MAX_CONCURRENT_CONNECTIONS_MIN (1)
2201#define CFG_MAX_CONCURRENT_CONNECTIONS_MAX (4)
2202
2203#define CFG_IGNORE_CAC_NAME "gIgnoreCAC"
2204#define CFG_IGNORE_CAC_MIN (0)
2205#define CFG_IGNORE_CAC_MAX (1)
2206#define CFG_IGNORE_CAC_DEFAULT (0)
2207
2208#define CFG_ENABLE_SAP_DFS_CH_SIFS_BURST_NAME "gEnableSAPDfsChSifsBurst"
2209#define CFG_ENABLE_SAP_DFS_CH_SIFS_BURST_MIN (0)
2210#define CFG_ENABLE_SAP_DFS_CH_SIFS_BURST_MAX (1)
2211#define CFG_ENABLE_SAP_DFS_CH_SIFS_BURST_DEFAULT (1)
2212
2213#define CFG_DFS_RADAR_PRI_MULTIPLIER_NAME "gDFSradarMappingPriMultiplier"
2214#define CFG_DFS_RADAR_PRI_MULTIPLIER_DEFAULT (4)
2215#define CFG_DFS_RADAR_PRI_MULTIPLIER_MIN (0)
2216#define CFG_DFS_RADAR_PRI_MULTIPLIER_MAX (10)
2217#define CFG_REORDER_OFFLOAD_SUPPORT_NAME "gReorderOffloadSupported"
2218#define CFG_REORDER_OFFLOAD_SUPPORT_MIN (0)
2219#define CFG_REORDER_OFFLOAD_SUPPORT_MAX (1)
2220#define CFG_REORDER_OFFLOAD_SUPPORT_DEFAULT (0)
2221
2222#ifdef WLAN_FEATURE_ROAM_OFFLOAD
2223#define CFG_ROAMING_OFFLOAD_NAME "gRoamOffloadEnabled"
2224#define CFG_ROAMING_OFFLOAD_MIN (0)
2225#define CFG_ROAMING_OFFLOAD_MAX (1)
2226#define CFG_ROAMING_OFFLOAD_DEFAULT (0)
2227#endif
2228
2229#define CFG_IPA_UC_TX_BUF_COUNT_NAME "IpaUcTxBufCount"
2230#define CFG_IPA_UC_TX_BUF_COUNT_MIN (0)
2231#define CFG_IPA_UC_TX_BUF_COUNT_MAX (2048)
2232#define CFG_IPA_UC_TX_BUF_COUNT_DEFAULT (512)
2233
2234#define CFG_IPA_UC_TX_BUF_SIZE_NAME "IpaUcTxBufSize"
2235#define CFG_IPA_UC_TX_BUF_SIZE_MIN (0)
2236#define CFG_IPA_UC_TX_BUF_SIZE_MAX (4096)
2237#define CFG_IPA_UC_TX_BUF_SIZE_DEFAULT (2048)
2238
2239#define CFG_IPA_UC_RX_IND_RING_COUNT_NAME "IpaUcRxIndRingCount"
2240#define CFG_IPA_UC_RX_IND_RING_COUNT_MIN (0)
2241#define CFG_IPA_UC_RX_IND_RING_COUNT_MAX (2048)
2242#define CFG_IPA_UC_RX_IND_RING_COUNT_DEFAULT (1024)
2243
2244#define CFG_IPA_UC_TX_PARTITION_BASE_NAME "IpaUcTxPartitionBase"
2245#define CFG_IPA_UC_TX_PARTITION_BASE_MIN (0)
2246#define CFG_IPA_UC_TX_PARTITION_BASE_MAX (9000)
2247#define CFG_IPA_UC_TX_PARTITION_BASE_DEFAULT (3000)
2248
2249#ifdef WLAN_LOGGING_SOCK_SVC_ENABLE
2250/* Enable WLAN Logging to app space */
2251#define CFG_WLAN_LOGGING_SUPPORT_NAME "wlanLoggingEnable"
2252#define CFG_WLAN_LOGGING_SUPPORT_ENABLE (1)
2253#define CFG_WLAN_LOGGING_SUPPORT_DISABLE (0)
2254#define CFG_WLAN_LOGGING_SUPPORT_DEFAULT (1)
2255
2256/* Enable FATAL and ERROR logs for kmsg console */
2257#define CFG_WLAN_LOGGING_FE_CONSOLE_SUPPORT_NAME "wlanLoggingFEToConsole"
2258#define CFG_WLAN_LOGGING_FE_CONSOLE_SUPPORT_ENABLE (1)
2259#define CFG_WLAN_LOGGING_FE_CONSOLE_SUPPORT_DISABLE (0)
2260#define CFG_WLAN_LOGGING_FE_CONSOLE_SUPPORT_DEFAULT (1)
2261
2262/* Number of buffers to be used for WLAN logging */
2263#define CFG_WLAN_LOGGING_NUM_BUF_NAME "wlanLoggingNumBuf"
2264#define CFG_WLAN_LOGGING_NUM_BUF_MIN (4)
2265#define CFG_WLAN_LOGGING_NUM_BUF_MAX (512)
2266#define CFG_WLAN_LOGGING_NUM_BUF_DEFAULT (256)
2267#endif /* WLAN_LOGGING_SOCK_SVC_ENABLE */
2268
2269#define CFG_ENABLE_SIFS_BURST "gEnableSifsBurst"
2270#define CFG_ENABLE_SIFS_BURST_MIN (0)
2271#define CFG_ENABLE_SIFS_BURST_MAX (1)
2272#define CFG_ENABLE_SIFS_BURST_DEFAULT (0)
2273
2274#ifdef WLAN_FEATURE_LPSS
2275#define CFG_ENABLE_LPASS_SUPPORT "gEnableLpassSupport"
2276#define CFG_ENABLE_LPASS_SUPPORT_DEFAULT (0)
2277#define CFG_ENABLE_LPASS_SUPPORT_MIN (0)
2278#define CFG_ENABLE_LPASS_SUPPORT_MAX (1)
2279#endif
2280
2281/*
2282 * NaN feature support configuration
2283 * gEnableNanSupport = 0 means NaN is not supported
2284 * gEnableNanSupport = 1 means NaN is supported
2285 */
2286#ifdef WLAN_FEATURE_NAN
2287#define CFG_ENABLE_NAN_SUPPORT "gEnableNanSupport"
2288#define CFG_ENABLE_NAN_SUPPORT_DEFAULT (0)
2289#define CFG_ENABLE_NAN_SUPPORT_MIN (0)
2290#define CFG_ENABLE_NAN_SUPPORT_MAX (1)
2291#endif
2292
2293#define CFG_ENABLE_SELF_RECOVERY "gEnableSelfRecovery"
2294#define CFG_ENABLE_SELF_RECOVERY_MIN (0)
2295#define CFG_ENABLE_SELF_RECOVERY_MAX (1)
2296#define CFG_ENABLE_SELF_RECOVERY_DEFAULT (0)
2297
2298#define CFG_ENABLE_SAP_SUSPEND "gEnableSapSuspend"
2299#define CFG_ENABLE_SAP_SUSPEND_MIN (0)
2300#define CFG_ENABLE_SAP_SUSPEND_MAX (1)
2301#define CFG_ENABLE_SAP_SUSPEND_DEFAULT (1)
2302
2303#ifdef WLAN_FEATURE_EXTWOW_SUPPORT
2304#define CFG_EXTWOW_GO_TO_SUSPEND "gExtWoWgotoSuspend"
2305#define CFG_EXTWOW_GO_TO_SUSPEND_MIN (0)
2306#define CFG_EXTWOW_GO_TO_SUSPEND_MAX (1)
2307#define CFG_EXTWOW_GO_TO_SUSPEND_DEFAULT (1)
2308
2309#define CFG_EXTWOW_APP1_WAKE_PIN_NUMBER "gExtWowApp1WakeupPinNumber"
2310#define CFG_EXTWOW_APP1_WAKE_PIN_NUMBER_MIN (0)
2311#define CFG_EXTWOW_APP1_WAKE_PIN_NUMBER_MAX (255)
2312#define CFG_EXTWOW_APP1_WAKE_PIN_NUMBER_DEFAULT (12)
2313
2314#define CFG_EXTWOW_APP2_WAKE_PIN_NUMBER "gExtWowApp2WakeupPinNumber"
2315#define CFG_EXTWOW_APP2_WAKE_PIN_NUMBER_MIN (0)
2316#define CFG_EXTWOW_APP2_WAKE_PIN_NUMBER_MAX (255)
2317#define CFG_EXTWOW_APP2_WAKE_PIN_NUMBER_DEFAULT (16)
2318
2319#define CFG_EXTWOW_KA_INIT_PING_INTERVAL "gExtWoWApp2KAInitPingInterval"
2320#define CFG_EXTWOW_KA_INIT_PING_INTERVAL_MIN (0)
2321#define CFG_EXTWOW_KA_INIT_PING_INTERVAL_MAX (0xffffffff)
2322#define CFG_EXTWOW_KA_INIT_PING_INTERVAL_DEFAULT (240)
2323
2324#define CFG_EXTWOW_KA_MIN_PING_INTERVAL "gExtWoWApp2KAMinPingInterval"
2325#define CFG_EXTWOW_KA_MIN_PING_INTERVAL_MIN (0)
2326#define CFG_EXTWOW_KA_MIN_PING_INTERVAL_MAX (0xffffffff)
2327#define CFG_EXTWOW_KA_MIN_PING_INTERVAL_DEFAULT (240)
2328
2329#define CFG_EXTWOW_KA_MAX_PING_INTERVAL "gExtWoWApp2KAMaxPingInterval"
2330#define CFG_EXTWOW_KA_MAX_PING_INTERVAL_MIN (0)
2331#define CFG_EXTWOW_KA_MAX_PING_INTERVAL_MAX (0xffffffff)
2332#define CFG_EXTWOW_KA_MAX_PING_INTERVAL_DEFAULT (1280)
2333
2334#define CFG_EXTWOW_KA_INC_PING_INTERVAL "gExtWoWApp2KAIncPingInterval"
2335#define CFG_EXTWOW_KA_INC_PING_INTERVAL_MIN (0)
2336#define CFG_EXTWOW_KA_INC_PING_INTERVAL_MAX (0xffffffff)
2337#define CFG_EXTWOW_KA_INC_PING_INTERVAL_DEFAULT (4)
2338
2339#define CFG_EXTWOW_TCP_SRC_PORT "gExtWoWApp2TcpSrcPort"
2340#define CFG_EXTWOW_TCP_SRC_PORT_MIN (0)
2341#define CFG_EXTWOW_TCP_SRC_PORT_MAX (65535)
2342#define CFG_EXTWOW_TCP_SRC_PORT_DEFAULT (5000)
2343
2344#define CFG_EXTWOW_TCP_DST_PORT "gExtWoWApp2TcpDstPort"
2345#define CFG_EXTWOW_TCP_DST_PORT_MIN (0)
2346#define CFG_EXTWOW_TCP_DST_PORT_MAX (65535)
2347#define CFG_EXTWOW_TCP_DST_PORT_DEFAULT (5001)
2348
2349#define CFG_EXTWOW_TCP_TX_TIMEOUT "gExtWoWApp2TcpTxTimeout"
2350#define CFG_EXTWOW_TCP_TX_TIMEOUT_MIN (0)
2351#define CFG_EXTWOW_TCP_TX_TIMEOUT_MAX (0xffffffff)
2352#define CFG_EXTWOW_TCP_TX_TIMEOUT_DEFAULT (200)
2353
2354#define CFG_EXTWOW_TCP_RX_TIMEOUT "gExtWoWApp2TcpRxTimeout"
2355#define CFG_EXTWOW_TCP_RX_TIMEOUT_MIN (0)
2356#define CFG_EXTWOW_TCP_RX_TIMEOUT_MAX (0xffffffff)
2357#define CFG_EXTWOW_TCP_RX_TIMEOUT_DEFAULT (200)
2358#endif
2359
2360#define CFG_ENABLE_DEAUTH_TO_DISASSOC_MAP_NAME "gEnableDeauthToDisassocMap"
2361#define CFG_ENABLE_DEAUTH_TO_DISASSOC_MAP_MIN (0)
2362#define CFG_ENABLE_DEAUTH_TO_DISASSOC_MAP_MAX (1)
2363#define CFG_ENABLE_DEAUTH_TO_DISASSOC_MAP_DEFAULT (0)
2364
2365#ifdef DHCP_SERVER_OFFLOAD
2366#define CFG_DHCP_SERVER_OFFLOAD_SUPPORT_NAME "gDHCPServerOffloadEnable"
2367#define CFG_DHCP_SERVER_OFFLOAD_SUPPORT_MIN (0)
2368#define CFG_DHCP_SERVER_OFFLOAD_SUPPORT_MAX (1)
2369#define CFG_DHCP_SERVER_OFFLOAD_SUPPORT_DEFAULT (CFG_DHCP_SERVER_OFFLOAD_SUPPORT_MIN)
2370
2371#define CFG_DHCP_SERVER_OFFLOAD_NUM_CLIENT_NAME "gDHCPMaxNumClients"
2372#define CFG_DHCP_SERVER_OFFLOAD_NUM_CLIENT_MIN (1)
2373#define CFG_DHCP_SERVER_OFFLOAD_NUM_CLIENT_MAX (8)
2374#define CFG_DHCP_SERVER_OFFLOAD_NUM_CLIENT_DEFAULT (CFG_DHCP_SERVER_OFFLOAD_NUM_CLIENT_MAX)
2375
2376#define CFG_DHCP_SERVER_IP_NAME "gDHCPServerIP"
2377#define CFG_DHCP_SERVER_IP_DEFAULT ""
2378#endif /* DHCP_SERVER_OFFLOAD */
2379
2380/*
2381 * If last disconnection was due to HB failure and we reconnect
2382 * to same AP next time, send Deauth before starting connection
2383 */
2384#define CFG_ENABLE_DEAUTH_BEFORE_CONNECTION "gSendDeauthBeforeCon"
2385#define CFG_ENABLE_DEAUTH_BEFORE_CONNECTION_MIN (0)
2386#define CFG_ENABLE_DEAUTH_BEFORE_CONNECTION_MAX (1)
2387#define CFG_ENABLE_DEAUTH_BEFORE_CONNECTION_DEFAULT (0)
2388
2389/*
2390 * Custom concurrency rule1:
2391 * If SAP comes up first and STA comes up later then SAP
2392 * needs to follow STA's channel.
2393 */
2394#define CFG_ENABLE_CUSTOM_CONC_RULE1_NAME "gEnableCustomConcRule1"
2395#define CFG_ENABLE_CUSTOM_CONC_RULE1_NAME_MIN (0)
2396#define CFG_ENABLE_CUSTOM_CONC_RULE1_NAME_MAX (1)
2397#define CFG_ENABLE_CUSTOM_CONC_RULE1_NAME_DEFAULT (0)
2398
2399#define CFG_ENABLE_CUSTOM_CONC_RULE2_NAME "gEnableCustomConcRule2"
2400#define CFG_ENABLE_CUSTOM_CONC_RULE2_NAME_MIN (0)
2401#define CFG_ENABLE_CUSTOM_CONC_RULE2_NAME_MAX (1)
2402#define CFG_ENABLE_CUSTOM_CONC_RULE2_NAME_DEFAULT (0)
2403
2404#define CFG_ENABLE_STA_CONNECTION_IN_5GHZ "gEnableStaConnectionIn5Ghz"
2405#define CFG_ENABLE_STA_CONNECTION_IN_5GHZ_MIN (0)
2406#define CFG_ENABLE_STA_CONNECTION_IN_5GHZ_MAX (1)
2407#define CFG_ENABLE_STA_CONNECTION_IN_5GHZ_DEFAULT (1)
2408
2409#define CFG_ENABLE_MAC_ADDR_SPOOFING "gEnableMacAddrSpoof"
2410#define CFG_ENABLE_MAC_ADDR_SPOOFING_MIN (0)
2411#define CFG_ENABLE_MAC_ADDR_SPOOFING_MAX (1)
2412#define CFG_ENABLE_MAC_ADDR_SPOOFING_DEFAULT (1)
2413
2414#define CFG_P2P_LISTEN_DEFER_INTERVAL_NAME "gP2PListenDeferInterval"
2415#define CFG_P2P_LISTEN_DEFER_INTERVAL_MIN (100)
2416#define CFG_P2P_LISTEN_DEFER_INTERVAL_MAX (200)
2417#define CFG_P2P_LISTEN_DEFER_INTERVAL_DEFAULT (100)
2418
2419#define CFG_STA_MIRACAST_MCC_REST_TIME_VAL "gStaMiracastMccRestTimeVal"
2420#define CFG_STA_MIRACAST_MCC_REST_TIME_VAL_MIN (100)
2421#define CFG_STA_MIRACAST_MCC_REST_TIME_VAL_MAX (500)
2422#define CFG_STA_MIRACAST_MCC_REST_TIME_VAL_DEFAULT (400)
2423
2424#ifdef FEATURE_AP_MCC_CH_AVOIDANCE
2425#define CFG_SAP_MCC_CHANNEL_AVOIDANCE_NAME "gSapChannelAvoidance"
2426#define CFG_SAP_MCC_CHANNEL_AVOIDANCE_MIN (0)
2427#define CFG_SAP_MCC_CHANNEL_AVOIDANCE_MAX (1)
2428#define CFG_SAP_MCC_CHANNEL_AVOIDANCE_DEFAULT (0)
2429#endif /* FEATURE_AP_MCC_CH_AVOIDANCE */
2430
2431#define CFG_SAP_P2P_11AC_OVERRIDE_NAME "gAP11ACOverride"
2432#define CFG_SAP_P2P_11AC_OVERRIDE_MIN (0)
2433#define CFG_SAP_P2P_11AC_OVERRIDE_MAX (1)
2434#define CFG_SAP_P2P_11AC_OVERRIDE_DEFAULT (1)
2435
2436#define CFG_SAP_DOT11MC "gSapDot11mc"
2437#define CFG_SAP_DOT11MC_MIN (0)
2438#define CFG_SAP_DOT11MC_MAX (1)
2439#define CFG_SAP_DOT11MC_DEFAULT (0)
2440
2441#define CFG_ENABLE_NON_DFS_CHAN_ON_RADAR "gPreferNonDfsChanOnRadar"
2442#define CFG_ENABLE_NON_DFS_CHAN_ON_RADAR_MIN (0)
2443#define CFG_ENABLE_NON_DFS_CHAN_ON_RADAR_MAX (1)
2444#define CFG_ENABLE_NON_DFS_CHAN_ON_RADAR_DEFAULT (0)
2445
2446#define CFG_MULTICAST_HOST_FW_MSGS "gMulticastHostFwMsgs"
2447#define CFG_MULTICAST_HOST_FW_MSGS_MIN (0)
2448#define CFG_MULTICAST_HOST_FW_MSGS_MAX (1)
2449#define CFG_MULTICAST_HOST_FW_MSGS_DEFAULT (1)
2450
2451/*
2452 * wlan system preference option to help policy manager decide
2453 * on Preferred Channel List for a new connection. For possible
2454 * values refer to enum hdd_conc_priority_mode
2455 */
2456#define CFG_CONC_SYSTEM_PREF "gSystemPref"
2457#define CFG_CONC_SYSTEM_PREF_MIN (0)
2458#define CFG_CONC_SYSTEM_PREF_MAX (2)
2459#define CFG_CONC_SYSTEM_PREF_DEFAULT (0)
2460
2461#define CFG_POLICY_MNGR_ENABLE "gPolicyManagerEnable"
2462#define CFG_POLICY_MNGR_ENABLE_MIN (0)
2463#define CFG_POLICY_MNGR_ENABLE_MAX (1)
2464#define CFG_POLICY_MNGR_ENABLE_DEFAULT (1)
2465
2466#define CFG_TSO_ENABLED_NAME "TSOEnable"
2467#define CFG_TSO_ENABLED_MIN (0)
2468#define CFG_TSO_ENABLED_MAX (1)
2469#define CFG_TSO_ENABLED_DEFAULT (0)
2470
2471/*
2472 * Configuration option to enable or disable LRO (Large Receive Offload)
2473 * in the WLAN driver
2474 * Set 1 - enable, 0 - disable
2475 */
2476#define CFG_LRO_ENABLED_NAME "LROEnable"
2477#define CFG_LRO_ENABLED_MIN (0)
2478#define CFG_LRO_ENABLED_MAX (1)
2479#define CFG_LRO_ENABLED_DEFAULT (0)
2480
2481/*
2482 * In static display use case when APPS is in stand alone power save mode enable
2483 * active offload mode which helps FW to filter out MC/BC data packets to avoid
2484 * APPS wake up and save more power.
2485 *
2486 * By default enable active mode offload as it helps to save more power in
2487 * static display usecase(APPS stand alone power collapse).
2488 *
2489 * If active mode offload(gActiveModeOffload=1) is enabled then all applicable
2490 * data offload/filtering is enabled immediately in FW once config is available
2491 * in WLAN driver and FW caches this configuration accross suspend/resume
2492 *
2493 * If active mode offload is disabled(gActiveModeOffload=0) then all applicable
2494 * data offload/filtering is enabled during cfg80211 suspend and disabled
2495 * during cfg80211 resume
2496 *
2497 * Active mode offload feature is bydefault enabled for adrastea and disabled
2498 * for non adrastea targets like ROME
2499 */
2500
2501#define CFG_ACTIVE_MODE_OFFLOAD "gActiveModeOffload"
2502#define CFG_ACTIVE_MODE_OFFLOAD_MIN (0)
2503#define CFG_ACTIVE_MODE_OFFLOAD_MAX (1)
2504#ifdef QCA_WIFI_3_0_ADRASTEA
2505#define CFG_ACTIVE_MODE_OFFLOAD_DEFAULT (1)
2506#else
2507#define CFG_ACTIVE_MODE_OFFLOAD_DEFAULT (0)
2508#endif
2509
2510/*
2511 * 0: disable the cck tx chain mask (default)
2512 * 1: enable the cck tx chain mask
2513 */
2514#define CFG_TX_CHAIN_MASK_CCK "gCckChainMaskEnable"
2515#define CFG_TX_CHAIN_MASK_CCK_MIN (0)
2516#define CFG_TX_CHAIN_MASK_CCK_MAX (1)
2517#define CFG_TX_CHAIN_MASK_CCK_DEFAULT (0)
2518
2519#define CFG_TX_CHAIN_MASK_1SS "gTxChainMask1ss"
2520#define CFG_TX_CHAIN_MASK_1SS_MIN (0)
2521#define CFG_TX_CHAIN_MASK_1SS_MAX (3)
2522#define CFG_TX_CHAIN_MASK_1SS_DEFAULT (1)
2523
2524/*
2525 * set the self gen power value from
2526 * 0 to 0xffff
2527 */
2528#define CFG_SELF_GEN_FRM_PWR "gSelfGenFrmPwr"
2529#define CFG_SELF_GEN_FRM_PWR_MIN (0)
2530#define CFG_SELF_GEN_FRM_PWR_MAX (0xffff)
2531#define CFG_SELF_GEN_FRM_PWR_DEFAULT (0)
2532
2533/*
2534 * fine timing measurement capability information
2535 *
2536 * <----- fine_time_meas_cap (in bits) ----->
2537 *+----------+-----+-----+------+------+-------+-------+-----+-----+
2538 *| 9-31 | 8 | 7 | 5 | 4 | 3 | 2 | 1 | 0 |
2539 *+----------+-----+-----+------+------+-------+-------+-----+-----+
2540 *| reserved | SAP | SAP |P2P-GO|P2P-GO|P2P-CLI|P2P-CLI| STA | STA |
2541 *| |resp |init |resp |init |resp |init |resp |init |
2542 *+----------+-----+-----+------+------+-------+-------+-----+-----+
2543 *
2544 * resp - responder role; init- initiator role
2545 *
2546 * CFG_FINE_TIME_MEAS_CAPABILITY_MAX computed based on the table
2547 * +-----------------+-----------------+-----------+
2548 * | Device Role | Initiator | Responder |
2549 * +-----------------+-----------------+-----------+
2550 * | Station | Y | N |
2551 * | P2P-CLI | Y | Y |
2552 * | P2P-GO | Y | Y |
2553 * | SAP | N | Y |
2554 * +-----------------+-----------------+-----------+
2555 */
2556#define CFG_FINE_TIME_MEAS_CAPABILITY "gfine_time_meas_cap"
2557#define CFG_FINE_TIME_MEAS_CAPABILITY_MIN (0x0000)
2558#define CFG_FINE_TIME_MEAS_CAPABILITY_MAX (0x00BD)
2559#define CFG_FINE_TIME_MEAS_CAPABILITY_DEFAULT (0x000D)
2560
2561/*
2562 * Maximum number of scans that host can queue at firmware is controlled
2563 * through the configuration item 'max_scan_count'.
2564 *
2565 * Rome - Rome firmware support 8 scan queue size and 4 are reserved
2566 * for internal scan requests like roaming. So host can send 4
2567 * scan requests.
2568 *
2569 * ihelium - There is no constraint in number of scan queue size at
2570 * firmware but the current uses cases needs support of maximum
2571 * of 4 scan request from host.
2572 */
2573#define CFG_MAX_SCAN_COUNT_NAME "max_scan_count"
2574#define CFG_MAX_SCAN_COUNT_MIN (1)
2575#define CFG_MAX_SCAN_COUNT_MAX (8)
2576#define CFG_MAX_SCAN_COUNT_DEFAULT (4)
2577
2578/**
2579 * enum dot11p_mode - The 802.11p mode of operation
2580 * @WLAN_HDD_11P_DISABLED: 802.11p mode is disabled
2581 * @WLAN_HDD_11P_STANDALONE: 802.11p-only operation
2582 * @WLAN_HDD_11P_CONCURRENT: 802.11p and WLAN operate concurrently
2583 */
2584enum dot11p_mode {
2585 WLAN_HDD_11P_DISABLED = 0,
2586 WLAN_HDD_11P_STANDALONE,
2587 WLAN_HDD_11P_CONCURRENT,
2588};
2589
2590#define CFG_DOT11P_MODE_NAME "gDot11PMode"
2591#define CFG_DOT11P_MODE_DEFAULT (WLAN_HDD_11P_DISABLED)
2592#define CFG_DOT11P_MODE_MIN (WLAN_HDD_11P_DISABLED)
2593#define CFG_DOT11P_MODE_MAX (WLAN_HDD_11P_CONCURRENT)
2594
2595#define CFG_NAPI_NAME "gEnableNAPI"
2596#define CFG_NAPI_MIN (0)
2597#define CFG_NAPI_MAX (1)
2598#define CFG_NAPI_DEFAULT (0)
2599
2600#ifdef FEATURE_WLAN_EXTSCAN
2601#define CFG_EXTSCAN_PASSIVE_MAX_CHANNEL_TIME_NAME "gExtScanPassiveMaxChannelTime"
2602#define CFG_EXTSCAN_PASSIVE_MAX_CHANNEL_TIME_MIN (110)
2603#define CFG_EXTSCAN_PASSIVE_MAX_CHANNEL_TIME_MAX (500)
2604#define CFG_EXTSCAN_PASSIVE_MAX_CHANNEL_TIME_DEFAULT (110)
2605
2606#define CFG_EXTSCAN_PASSIVE_MIN_CHANNEL_TIME_NAME "gExtScanPassiveMinChannelTime"
2607#define CFG_EXTSCAN_PASSIVE_MIN_CHANNEL_TIME_MIN (60)
2608#define CFG_EXTSCAN_PASSIVE_MIN_CHANNEL_TIME_MAX (500)
2609#define CFG_EXTSCAN_PASSIVE_MIN_CHANNEL_TIME_DEFAULT (60)
2610
2611#define CFG_EXTSCAN_ACTIVE_MAX_CHANNEL_TIME_NAME "gExtScanActiveMaxChannelTime"
2612#define CFG_EXTSCAN_ACTIVE_MAX_CHANNEL_TIME_MIN (40)
2613#define CFG_EXTSCAN_ACTIVE_MAX_CHANNEL_TIME_MAX (110)
2614#define CFG_EXTSCAN_ACTIVE_MAX_CHANNEL_TIME_DEFAULT (40)
2615
2616#define CFG_EXTSCAN_ACTIVE_MIN_CHANNEL_TIME_NAME "gExtScanActiveMinChannelTime"
2617#define CFG_EXTSCAN_ACTIVE_MIN_CHANNEL_TIME_MIN (20)
2618#define CFG_EXTSCAN_ACTIVE_MIN_CHANNEL_TIME_MAX (110)
2619#define CFG_EXTSCAN_ACTIVE_MIN_CHANNEL_TIME_DEFAULT (20)
2620#endif
2621
2622#define CFG_CE_CLASSIFY_ENABLE_NAME "gCEClassifyEnable"
2623#define CFG_CE_CLASSIFY_ENABLE_MIN (0)
2624#define CFG_CE_CLASSIFY_ENABLE_MAX (1)
2625#define CFG_CE_CLASSIFY_ENABLE_DEFAULT (0)
2626
2627#define CFG_DUAL_MAC_FEATURE_DISABLE "gDualMacFeatureDisable"
2628#define CFG_DUAL_MAC_FEATURE_DISABLE_MIN (0)
2629#define CFG_DUAL_MAC_FEATURE_DISABLE_MAX (1)
2630#define CFG_DUAL_MAC_FEATURE_DISABLE_DEFAULT (0)
2631
2632/* Parameters for roaming scans performed at high RSSI */
2633
2634/* Maximum number of scans after RSSI change */
2635#define CFG_ROAM_SCAN_HI_RSSI_MAXCOUNT_NAME "gRoamScanHiRssiMaxCount"
2636#define CFG_ROAM_SCAN_HI_RSSI_MAXCOUNT_MIN (0)
2637#define CFG_ROAM_SCAN_HI_RSSI_MAXCOUNT_MAX (10)
2638#define CFG_ROAM_SCAN_HI_RSSI_MAXCOUNT_DEFAULT (5)
2639
2640/* Change in RSSI at which scan is triggered */
2641#define CFG_ROAM_SCAN_HI_RSSI_DELTA_NAME "gRoamScanHiRssiDelta"
2642#define CFG_ROAM_SCAN_HI_RSSI_DELTA_MIN (0)
2643#define CFG_ROAM_SCAN_HI_RSSI_DELTA_MAX (16)
2644#define CFG_ROAM_SCAN_HI_RSSI_DELTA_DEFAULT (0)
2645
2646/* Delay between consecutive scans in milliseconds */
2647#define CFG_ROAM_SCAN_HI_RSSI_DELAY_NAME "gRoamScanHiRssiDelay"
2648#define CFG_ROAM_SCAN_HI_RSSI_DELAY_MIN (5000)
2649#define CFG_ROAM_SCAN_HI_RSSI_DELAY_MAX (15000)
2650#define CFG_ROAM_SCAN_HI_RSSI_DELAY_DEFAULT (5000)
2651
2652/* Upper bound after which scan will not be performed */
2653#define CFG_ROAM_SCAN_HI_RSSI_UB_NAME "gRoamScanHiRssiUpperBound"
2654#define CFG_ROAM_SCAN_HI_RSSI_UB_MIN (-76)
2655#define CFG_ROAM_SCAN_HI_RSSI_UB_MAX (-30)
2656#define CFG_ROAM_SCAN_HI_RSSI_UB_DEFAULT (-45)
2657
2658/*---------------------------------------------------------------------------
2659 Type declarations
2660 -------------------------------------------------------------------------*/
2661
2662struct hdd_config {
2663 /* Bitmap to track what is explicitly configured */
2664 DECLARE_BITMAP(bExplicitCfg, MAX_CFG_INI_ITEMS);
2665
2666 /* Config parameters */
2667 uint32_t RTSThreshold;
2668 uint32_t FragmentationThreshold;
2669 uint8_t OperatingChannel;
2670 bool ShortSlotTimeEnabled;
2671 bool Is11dSupportEnabled;
2672 bool Is11hSupportEnabled;
2673 bool fSupplicantCountryCodeHasPriority;
2674 uint32_t HeartbeatThresh24;
2675 char PowerUsageControl[4];
2676 bool fIsLogpEnabled;
2677 bool fIsImpsEnabled;
2678 bool is_ps_enabled;
2679 uint32_t nBmpsModListenInterval;
2680 uint32_t nBmpsMaxListenInterval;
2681 uint32_t nBmpsMinListenInterval;
2682 eHddDot11Mode dot11Mode;
2683 uint32_t nChannelBondingMode24GHz;
2684 uint32_t nChannelBondingMode5GHz;
2685 uint32_t MaxRxAmpduFactor;
2686 uint16_t TxRate;
2687 uint32_t ShortGI20MhzEnable;
2688 uint32_t ScanResultAgeCount;
2689 uint32_t nScanAgeTimeNCNPS;
2690 uint32_t nScanAgeTimeNCPS;
2691 uint32_t nScanAgeTimeCNPS;
2692 uint32_t nScanAgeTimeCPS;
2693 uint8_t nRssiCatGap;
2694 bool fIsShortPreamble;
2695 struct cdf_mac_addr IbssBssid;
2696 uint32_t AdHocChannel5G;
2697 uint32_t AdHocChannel24G;
2698 uint8_t intfAddrMask;
2699 struct cdf_mac_addr intfMacAddr[CDF_MAX_CONCURRENCY_PERSONA];
2700
2701 bool apUapsdEnabled;
2702 bool apRandomBssidEnabled;
2703 bool apProtEnabled;
2704 uint16_t apProtection;
2705 bool apOBSSProtEnabled;
2706 bool apDisableIntraBssFwd;
2707 uint8_t nEnableListenMode;
2708 uint32_t nAPAutoShutOff;
2709 uint8_t enableLTECoex;
2710 uint32_t apKeepAlivePeriod;
2711 uint32_t goKeepAlivePeriod;
2712 uint32_t apLinkMonitorPeriod;
2713 uint32_t goLinkMonitorPeriod;
2714 uint32_t nBeaconInterval;
2715 uint8_t nTxPowerCap; /* In dBm */
2716 bool fIsLowGainOverride;
2717 uint8_t disablePacketFilter;
2718#if defined WLAN_FEATURE_VOWIFI
2719 bool fRrmEnable;
2720 uint8_t nInChanMeasMaxDuration;
2721 uint8_t nOutChanMeasMaxDuration;
2722 uint16_t nRrmRandnIntvl;
2723#endif
2724
2725#ifdef WLAN_FEATURE_VOWIFI_11R
2726 /* Vowifi 11r params */
2727 bool fFTResourceReqSupported;
2728#endif
2729
2730#ifdef WLAN_FEATURE_NEIGHBOR_ROAMING
2731 uint16_t nNeighborScanPeriod;
2732 uint8_t nNeighborLookupRssiThreshold;
2733 uint8_t delay_before_vdev_stop;
2734 uint8_t nOpportunisticThresholdDiff;
2735 uint8_t nRoamRescanRssiDiff;
2736 uint8_t neighborScanChanList[WNI_CFG_VALID_CHANNEL_LIST_LEN];
2737 uint16_t nNeighborScanMinChanTime;
2738 uint16_t nNeighborScanMaxChanTime;
2739 uint16_t nMaxNeighborReqTries;
2740 uint16_t nNeighborResultsRefreshPeriod;
2741 uint16_t nEmptyScanRefreshPeriod;
2742 uint8_t nRoamBmissFirstBcnt;
2743 uint8_t nRoamBmissFinalBcnt;
2744 uint8_t nRoamBeaconRssiWeight;
2745 uint32_t nhi_rssi_scan_max_count;
2746 uint32_t nhi_rssi_scan_rssi_delta;
2747 uint32_t nhi_rssi_scan_delay;
2748 int32_t nhi_rssi_scan_rssi_ub;
2749#endif
2750
2751 /* Additional Handoff params */
2752 uint32_t nRoamingTime;
2753 uint16_t nVccRssiTrigger;
2754 uint32_t nVccUlMacLossThreshold;
2755
2756 uint32_t nPassiveMinChnTime; /* in units of milliseconds */
2757 uint32_t nPassiveMaxChnTime; /* in units of milliseconds */
2758 uint32_t nActiveMinChnTime; /* in units of milliseconds */
2759 uint32_t nActiveMaxChnTime; /* in units of milliseconds */
2760
2761 uint32_t nInitialDwellTime; /* in units of milliseconds */
2762 bool initial_scan_no_dfs_chnl;
2763
2764#ifdef WLAN_AP_STA_CONCURRENCY
2765 uint32_t nPassiveMinChnTimeConc; /* in units of milliseconds */
2766 uint32_t nPassiveMaxChnTimeConc; /* in units of milliseconds */
2767 uint32_t nActiveMinChnTimeConc; /* in units of milliseconds */
2768 uint32_t nActiveMaxChnTimeConc; /* in units of milliseconds */
2769 uint32_t nRestTimeConc; /* in units of milliseconds */
2770 uint8_t nNumStaChanCombinedConc; /* number of channels combined for */
2771 /* STA in each split scan operation */
2772 uint8_t nNumP2PChanCombinedConc; /* number of channels combined for */
2773 /* P2P in each split scan operation */
2774#endif
2775
2776 uint8_t nMaxPsPoll;
2777
2778 uint8_t nRssiFilterPeriod;
2779 bool fIgnoreDtim;
2780 uint8_t fMaxLIModulatedDTIM;
2781
2782 uint8_t nRxAnt;
2783 uint8_t fEnableFwHeartBeatMonitoring;
2784 uint8_t fEnableFwBeaconFiltering;
2785 bool fEnableFwRssiMonitoring;
2786 bool mcc_rts_cts_prot_enable;
2787 bool mcc_bcast_prob_resp_enable;
2788 uint8_t nDataInactivityTimeout;
2789
2790 /* WMM QoS Configuration */
2791 hdd_wmm_user_mode_t WmmMode;
2792 bool b80211eIsEnabled;
2793 uint8_t UapsdMask; /* what ACs to setup U-APSD for at assoc */
2794 uint32_t InfraUapsdVoSrvIntv;
2795 uint32_t InfraUapsdVoSuspIntv;
2796 uint32_t InfraUapsdViSrvIntv;
2797 uint32_t InfraUapsdViSuspIntv;
2798 uint32_t InfraUapsdBeSrvIntv;
2799 uint32_t InfraUapsdBeSuspIntv;
2800 uint32_t InfraUapsdBkSrvIntv;
2801 uint32_t InfraUapsdBkSuspIntv;
2802#ifdef FEATURE_WLAN_LFR
2803 bool isFastRoamIniFeatureEnabled;
2804 bool MAWCEnabled;
2805#endif
2806#ifdef FEATURE_WLAN_ESE
2807 uint32_t InfraInactivityInterval;
2808 bool isEseIniFeatureEnabled;
2809#endif
2810#if defined (WLAN_FEATURE_VOWIFI_11R) || defined (FEATURE_WLAN_ESE) || defined(FEATURE_WLAN_LFR)
2811 bool isFastTransitionEnabled;
2812 uint8_t RoamRssiDiff;
2813 bool isWESModeEnabled;
2814#endif
2815#ifdef FEATURE_WLAN_OKC
2816 bool isOkcIniFeatureEnabled;
2817#endif
2818 bool isRoamOffloadScanEnabled;
2819 hdd_wmm_classification_t PktClassificationBasis; /* DSCP or 802.1Q */
2820 bool bImplicitQosEnabled;
2821
2822 /* default TSPEC parameters for AC_VO */
2823 sme_QosWmmDirType InfraDirAcVo;
2824 uint16_t InfraNomMsduSizeAcVo;
2825 uint32_t InfraMeanDataRateAcVo;
2826 uint32_t InfraMinPhyRateAcVo;
2827 uint16_t InfraSbaAcVo;
2828
2829 /* default TSPEC parameters for AC_VI */
2830 sme_QosWmmDirType InfraDirAcVi;
2831 uint16_t InfraNomMsduSizeAcVi;
2832 uint32_t InfraMeanDataRateAcVi;
2833 uint32_t InfraMinPhyRateAcVi;
2834 uint16_t InfraSbaAcVi;
2835
2836 /* default TSPEC parameters for AC_BE */
2837 sme_QosWmmDirType InfraDirAcBe;
2838 uint16_t InfraNomMsduSizeAcBe;
2839 uint32_t InfraMeanDataRateAcBe;
2840 uint32_t InfraMinPhyRateAcBe;
2841 uint16_t InfraSbaAcBe;
2842
2843 /* default TSPEC parameters for AC_BK */
2844 sme_QosWmmDirType InfraDirAcBk;
2845 uint16_t InfraNomMsduSizeAcBk;
2846 uint32_t InfraMeanDataRateAcBk;
2847 uint32_t InfraMinPhyRateAcBk;
2848 uint16_t InfraSbaAcBk;
2849
2850 uint32_t DelayedTriggerFrmInt;
2851
2852 /* Wowl pattern */
2853 char wowlPattern[1024];
2854
2855 /* Control for Replay counetr. value 1 means
2856 single replay counter for all TID */
2857 bool bSingleTidRc;
2858 uint8_t mcastBcastFilterSetting;
2859 bool fhostArpOffload;
2860 bool ssdp;
2861#ifdef FEATURE_WLAN_RA_FILTERING
2862 bool IsRArateLimitEnabled;
2863 uint16_t RArateLimitInterval;
2864#endif
2865#ifdef FEATURE_WLAN_SCAN_PNO
2866 bool PnoOffload;
2867#endif
2868 bool fhostNSOffload;
2869 bool burstSizeDefinition;
2870 uint8_t tsInfoAckPolicy;
2871
2872 /* RF Settling Time Clock */
2873 uint32_t rfSettlingTimeUs;
2874
2875 uint8_t dynamicPsPollValue;
2876 bool AddTSWhenACMIsOff;
2877 bool fValidateScanList;
2878
2879 uint32_t infraStaKeepAlivePeriod;
2880 uint8_t nNullDataApRespTimeout;
2881 uint8_t nBandCapability;
2882
2883 uint32_t apDataAvailPollPeriodInMs;
2884 bool fEnableBeaconEarlyTermination;
2885 bool teleBcnWakeupEn;
2886
2887/* CDF Trace Control*/
2888 uint16_t cdf_trace_enable_wdi;
2889 uint16_t cdf_trace_enable_hdd;
2890 uint16_t cdf_trace_enable_sme;
2891 uint16_t cdf_trace_enable_pe;
2892 uint16_t cdf_trace_enable_pmc;
2893 uint16_t cdf_trace_enable_wma;
2894 uint16_t cdf_trace_enable_sys;
2895 uint16_t cdf_trace_enable_cdf;
2896 uint16_t cdf_trace_enable_sap;
2897 uint16_t cdf_trace_enable_hdd_sap;
2898 uint16_t cdf_trace_enable_bmi;
2899
2900 uint16_t nTeleBcnTransListenInterval;
2901 uint16_t nTeleBcnMaxListenInterval;
2902 uint16_t nTeleBcnTransLiNumIdleBeacons;
2903 uint16_t nTeleBcnMaxLiNumIdleBeacons;
2904 uint8_t bcnEarlyTermWakeInterval;
2905 uint32_t enableCloseLoop;
2906 uint8_t enableBypass11d;
2907 uint8_t enableDFSChnlScan;
2908 uint8_t enable_dfs_pno_chnl_scan;
2909 uint8_t enableDynamicDTIM;
2910 uint8_t enableAutomaticTxPowerControl;
2911 uint8_t ShortGI40MhzEnable;
2912 eHddLinkSpeedReportType reportMaxLinkSpeed;
2913 int32_t linkSpeedRssiHigh;
2914 int32_t linkSpeedRssiMid;
2915 int32_t linkSpeedRssiLow;
2916#if defined (WLAN_FEATURE_VOWIFI_11R) || defined (FEATURE_WLAN_ESE) || defined(FEATURE_WLAN_LFR)
2917 bool nRoamPrefer5GHz;
2918 bool nRoamIntraBand;
2919 uint8_t nProbes;
2920 uint16_t nRoamScanHomeAwayTime;
2921#endif
2922 uint8_t enableMCC;
2923 uint8_t allowMCCGODiffBI;
2924 bool isP2pDeviceAddrAdministrated;
2925 uint8_t thermalMitigationEnable;
2926 uint32_t throttlePeriod;
2927 uint8_t vhtChannelWidth;
2928 uint8_t vhtRxMCS;
2929 uint8_t vhtTxMCS;
2930 bool enableTxBF;
2931 uint8_t txBFCsnValue;
2932 bool enable_su_tx_bformer;
2933 uint8_t vhtRxMCS2x2;
2934 uint8_t vhtTxMCS2x2;
2935 bool enable2x2;
2936 bool txchainmask1x1;
2937 bool rxchainmask1x1;
2938 bool enableMuBformee;
2939 bool enableVhtpAid;
2940 bool enableVhtGid;
2941 bool enableTxBFin20MHz;
2942 uint8_t enableAmpduPs;
2943 uint8_t enableHtSmps;
2944 uint8_t htSmps;
2945 uint8_t enableModulatedDTIM;
2946 uint32_t fEnableMCAddrList;
2947 bool enableFirstScan2GOnly;
2948 bool skipDfsChnlInP2pSearch;
2949 bool ignoreDynamicDtimInP2pMode;
2950 bool enableRxSTBC;
2951 bool enableTxSTBC;
2952 bool enableRxLDPC;
2953 bool enable5gEBT;
2954#ifdef FEATURE_WLAN_TDLS
2955 bool fEnableTDLSSupport;
2956 bool fEnableTDLSImplicitTrigger;
2957 uint32_t fTDLSTxStatsPeriod;
2958 uint32_t fTDLSTxPacketThreshold;
2959 uint32_t fTDLSMaxDiscoveryAttempt;
2960 uint32_t fTDLSIdlePacketThreshold;
2961 int32_t fTDLSRSSITriggerThreshold;
2962 int32_t fTDLSRSSITeardownThreshold;
2963 int32_t fTDLSRSSIDelta;
2964 uint32_t fTDLSUapsdMask; /* what ACs to setup U-APSD for TDLS */
2965 uint32_t fEnableTDLSBufferSta;
2966 uint32_t fEnableTDLSSleepSta;
2967 uint32_t fTDLSPuapsdInactivityTimer;
2968 uint32_t fTDLSRxFrameThreshold;
2969 uint32_t fTDLSPuapsdPTIWindow;
2970 uint32_t fTDLSPuapsdPTRTimeout;
2971 bool fTDLSExternalControl;
2972 uint32_t fEnableTDLSOffChannel;
2973 uint32_t fEnableTDLSWmmMode;
2974 uint8_t fTDLSPrefOffChanNum;
2975 uint8_t fTDLSPrefOffChanBandwidth;
2976 uint8_t enable_tdls_scan;
2977#endif
2978#ifdef WLAN_SOFTAP_VSTA_FEATURE
2979 bool fEnableVSTASupport;
2980#endif
2981 uint32_t enableLpwrImgTransition;
2982 uint8_t scanAgingTimeout;
2983 bool enableTxLdpc;
2984 uint8_t disableLDPCWithTxbfAP;
2985 uint8_t enableMCCAdaptiveScheduler;
2986 bool isAndroidPsEn;
2987 bool sapAllowAllChannel;
2988 uint8_t retryLimitZero;
2989 uint8_t retryLimitOne;
2990 uint8_t retryLimitTwo;
2991 bool enableSSR;
2992 uint32_t cfgMaxMediumTime;
2993 bool enableVhtFor24GHzBand;
2994 /* Flag indicating whether legacy fast roam during concurrency is enabled in cfg.ini or not */
2995 bool bFastRoamInConIniFeatureEnabled;
2996 bool fEnableAdaptRxDrain;
2997 uint8_t flexConnectPowerFactor;
2998 bool enableIbssHeartBeatOffload;
2999 uint32_t antennaDiversity;
3000 bool fEnableSNRMonitoring;
3001 /*PNO related parameters */
3002#ifdef FEATURE_WLAN_SCAN_PNO
3003 bool configPNOScanSupport;
3004 uint32_t configPNOScanTimerRepeatValue;
3005#endif
3006 uint8_t isAmsduSupportInAMPDU;
3007 uint8_t nSelect5GHzMargin;
3008 uint8_t isCoalesingInIBSSAllowed;
3009
3010 /* IBSS Power Save related parameters */
3011 uint32_t ibssATIMWinSize;
3012 uint8_t isIbssPowerSaveAllowed;
3013 uint8_t isIbssPowerCollapseAllowed;
3014 uint8_t isIbssAwakeOnTxRx;
3015 uint32_t ibssInactivityCount;
3016 uint32_t ibssTxSpEndInactivityTime;
3017 uint32_t ibssPsWarmupTime;
3018 uint32_t ibssPs1RxChainInAtimEnable;
3019
3020 bool enable_ip_tcp_udp_checksum_offload;
3021 bool enablePowersaveOffload;
3022 bool enablefwprint;
3023 bool enablefwlog;
3024#ifdef WLAN_FEATURE_11AC
3025 uint8_t fVhtAmpduLenExponent;
3026 uint32_t vhtMpduLen;
3027#endif
3028 uint32_t IpaConfig;
3029 bool IpaClkScalingEnable;
3030 uint32_t IpaDescSize;
3031 uint32_t IpaHighBandwidthMbps;
3032 uint32_t IpaMediumBandwidthMbps;
3033 uint32_t IpaLowBandwidthMbps;
3034#ifdef FEATURE_WLAN_MCC_TO_SCC_SWITCH
3035 uint32_t WlanMccToSccSwitchMode;
3036#endif
3037#ifdef FEATURE_WLAN_AUTO_SHUTDOWN
3038 uint32_t WlanAutoShutdown;
3039#endif
3040 uint8_t maxWoWFilters;
3041 uint8_t wowEnable;
3042 uint8_t maxNumberOfPeers;
3043 uint8_t disableDFSChSwitch;
3044 uint8_t enableDFSMasterCap;
3045 uint16_t thermalTempMinLevel0;
3046 uint16_t thermalTempMaxLevel0;
3047 uint16_t thermalTempMinLevel1;
3048 uint16_t thermalTempMaxLevel1;
3049 uint16_t thermalTempMinLevel2;
3050 uint16_t thermalTempMaxLevel2;
3051 uint16_t thermalTempMinLevel3;
3052 uint16_t thermalTempMaxLevel3;
3053 uint32_t TxPower2g;
3054 uint32_t TxPower5g;
3055 uint32_t gEnableDebugLog;
3056 uint8_t enableRxThread;
3057 bool fDfsPhyerrFilterOffload;
3058 uint8_t gSapPreferredChanLocation;
3059 uint8_t gDisableDfsJapanW53;
3060 bool gEnableOverLapCh;
3061 bool fRegChangeDefCountry;
3062#ifdef QCA_LL_LEGACY_TX_FLOW_CONTROL
3063 uint32_t TxFlowLowWaterMark;
3064 uint32_t TxFlowHighWaterMarkOffset;
3065 uint32_t TxFlowMaxQueueDepth;
3066 uint32_t TxLbwFlowLowWaterMark;
3067 uint32_t TxLbwFlowHighWaterMarkOffset;
3068 uint32_t TxLbwFlowMaxQueueDepth;
3069 uint32_t TxHbwFlowLowWaterMark;
3070 uint32_t TxHbwFlowHighWaterMarkOffset;
3071 uint32_t TxHbwFlowMaxQueueDepth;
3072#endif /* QCA_LL_LEGACY_TX_FLOW_CONTROL */
3073#ifdef QCA_LL_TX_FLOW_CONTROL_V2
3074 uint32_t TxFlowStopQueueThreshold;
3075 uint32_t TxFlowStartQueueOffset;
3076#endif
3077 uint8_t apMaxOffloadPeers;
3078 uint8_t apMaxOffloadReorderBuffs;
3079 bool advertiseConcurrentOperation;
3080 bool enableMemDeepSleep;
3081
3082 uint32_t defaultRateIndex24Ghz;
3083#ifdef MEMORY_DEBUG
3084 bool IsMemoryDebugSupportEnabled;
3085#endif
3086
3087 uint8_t allowDFSChannelRoam;
3088
3089 bool debugP2pRemainOnChannel;
3090
3091 bool enablePacketLog;
3092#ifdef MSM_PLATFORM
3093 uint32_t busBandwidthHighThreshold;
3094 uint32_t busBandwidthMediumThreshold;
3095 uint32_t busBandwidthLowThreshold;
3096 uint32_t busBandwidthComputeInterval;
3097 uint32_t tcpDelackThresholdHigh;
3098 uint32_t tcpDelackThresholdLow;
3099#endif /* MSM_PLATFORM */
3100
3101 /* FW debug log parameters */
3102 uint32_t enableFwLogType;
3103 uint32_t enableFwLogLevel;
3104 uint8_t enableFwModuleLogLevel[FW_MODULE_LOG_LEVEL_STRING_LENGTH];
3105
3106#ifdef WLAN_FEATURE_11W
3107 uint32_t pmfSaQueryMaxRetries;
3108 uint32_t pmfSaQueryRetryInterval;
3109#endif
3110
3111 uint8_t gMaxConcurrentActiveSessions;
3112
3113 uint8_t ignoreCAC;
3114 bool IsSapDfsChSifsBurstEnabled;
3115
3116#ifdef FEATURE_GREEN_AP
3117 bool enableGreenAP;
3118#endif
3119 uint8_t force_sap_acs;
3120 uint8_t force_sap_acs_st_ch;
3121 uint8_t force_sap_acs_end_ch;
3122
3123 int32_t dfsRadarPriMultiplier;
3124 uint8_t reorderOffloadSupport;
3125
3126#ifdef WLAN_FEATURE_ROAM_OFFLOAD
3127 bool isRoamOffloadEnabled;
3128#endif
3129
3130 uint32_t IpaUcTxBufCount;
3131 uint32_t IpaUcTxBufSize;
3132 uint32_t IpaUcRxIndRingCount;
3133 uint32_t IpaUcTxPartitionBase;
3134#ifdef WLAN_LOGGING_SOCK_SVC_ENABLE
3135 /* WLAN Logging */
3136 uint32_t wlanLoggingEnable;
3137 uint32_t wlanLoggingFEToConsole;
3138 uint32_t wlanLoggingNumBuf;
3139#endif /* WLAN_LOGGING_SOCK_SVC_ENABLE */
3140
3141 bool enableSifsBurst;
3142
3143#ifdef WLAN_FEATURE_LPSS
3144 bool enablelpasssupport;
3145#endif
3146#ifdef WLAN_FEATURE_NAN
3147 bool enable_nan_support;
3148#endif
3149 bool enableSelfRecovery;
3150#ifdef FEATURE_WLAN_FORCE_SAP_SCC
3151 uint8_t SapSccChanAvoidance;
3152#endif /* FEATURE_WLAN_FORCE_SAP_SCC */
3153
3154 bool enableSapSuspend;
3155
3156#ifdef WLAN_FEATURE_EXTWOW_SUPPORT
3157 uint8_t extWowGotoSuspend;
3158 uint8_t extWowApp1WakeupPinNumber;
3159 uint8_t extWowApp2WakeupPinNumber;
3160 uint32_t extWowApp2KAInitPingInterval;
3161 uint32_t extWowApp2KAMinPingInterval;
3162 uint32_t extWowApp2KAMaxPingInterval;
3163 uint32_t extWowApp2KAIncPingInterval;
3164 uint16_t extWowApp2TcpSrcPort;
3165 uint16_t extWowApp2TcpDstPort;
3166 uint32_t extWowApp2TcpTxTimeout;
3167 uint32_t extWowApp2TcpRxTimeout;
3168#endif
3169 bool gEnableDeauthToDisassocMap;
3170#ifdef DHCP_SERVER_OFFLOAD
3171 bool enableDHCPServerOffload;
3172 uint32_t dhcpMaxNumClients;
3173 uint8_t dhcpServerIP[IPADDR_STRING_LENGTH];
3174#endif /* DHCP_SERVER_OFFLOAD */
3175 bool enable_mac_spoofing;
3176 uint8_t conc_custom_rule1;
3177 uint8_t conc_custom_rule2;
3178 uint8_t is_sta_connection_in_5gz_enabled;
3179 uint16_t p2p_listen_defer_interval;
3180 uint32_t sta_miracast_mcc_rest_time_val;
3181 bool is_ramdump_enabled;
3182#ifdef FEATURE_AP_MCC_CH_AVOIDANCE
3183 bool sap_channel_avoidance;
3184#endif /* FEATURE_AP_MCC_CH_AVOIDANCE */
3185 uint8_t sap_p2p_11ac_override;
3186 uint8_t sap_dot11mc;
3187 uint8_t prefer_non_dfs_on_radar;
3188 bool ignore_peer_erp_info;
3189 uint8_t multicast_host_fw_msgs;
3190 uint8_t conc_system_pref;
3191 bool sendDeauthBeforeCon;
3192 bool policy_manager_enabled;
3193 bool tso_enable;
3194 bool lro_enable;
3195 bool active_mode_offload;
3196 uint32_t fine_time_meas_cap;
3197 uint8_t max_scan_count;
3198#ifdef WLAN_FEATURE_FASTPATH
3199 bool fastpath_enable;
3200#endif
3201 uint8_t dot11p_mode;
3202#ifdef FEATURE_NAPI
3203 bool napi_enable;
3204#endif
3205#ifdef FEATURE_WLAN_EXTSCAN
3206 uint32_t extscan_passive_max_chn_time;
3207 uint32_t extscan_passive_min_chn_time;
3208 uint32_t extscan_active_max_chn_time;
3209 uint32_t extscan_active_min_chn_time;
3210#endif
3211 bool ce_classify_enabled;
3212 uint32_t dual_mac_feature_disable;
3213 bool tx_chain_mask_cck;
3214 uint8_t tx_chain_mask_1ss;
3215 uint16_t self_gen_frm_pwr;
3216};
3217
3218#define VAR_OFFSET(_Struct, _Var) (offsetof(_Struct, _Var))
3219#define VAR_SIZE(_Struct, _Var) (sizeof(((_Struct *)0)->_Var))
3220
3221#define VAR_FLAGS_NONE (0)
3222
3223/* bit 0 is Required or Optional */
3224#define VAR_FLAGS_REQUIRED (1 << 0)
3225#define VAR_FLAGS_OPTIONAL (0 << 0)
3226
3227/*
3228 * bit 1 tells if range checking is required.
3229 * If less than MIN, assume MIN.
3230 * If greater than MAX, assume MAX.
3231 */
3232#define VAR_FLAGS_RANGE_CHECK (1 << 1)
3233#define VAR_FLAGS_RANGE_CHECK_ASSUME_MINMAX (VAR_FLAGS_RANGE_CHECK)
3234
3235/*
3236 * bit 2 is range checking that assumes the DEFAULT value
3237 * If less than MIN, assume DEFAULT,
3238 * If greater than MAX, assume DEFAULT.
3239 */
3240#define VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT (1 << 2)
3241
3242/*
3243 * Bit 3 indicates that the config item can be modified dynamicially
3244 * on a running system
3245 */
3246#define VAR_FLAGS_DYNAMIC_CFG (1 << 3)
3247
3248typedef enum {
3249 WLAN_PARAM_Integer,
3250 WLAN_PARAM_SignedInteger,
3251 WLAN_PARAM_HexInteger,
3252 WLAN_PARAM_String,
3253 WLAN_PARAM_MacAddr,
3254} WLAN_PARAMETER_TYPE;
3255
3256#define REG_VARIABLE(_Name, _Type, _Struct, _VarName, \
3257 _Flags, _Default, _Min, _Max) \
3258 { \
3259 (_Name), \
3260 (_Type), \
3261 (_Flags), \
3262 VAR_OFFSET(_Struct, _VarName), \
3263 VAR_SIZE(_Struct, _VarName), \
3264 (_Default), \
3265 (_Min), \
3266 (_Max), \
3267 NULL, \
3268 0 \
3269 }
3270
3271#define REG_DYNAMIC_VARIABLE(_Name, _Type, _Struct, _VarName, \
3272 _Flags, _Default, _Min, _Max, \
3273 _CBFunc, _CBParam) \
3274 { \
3275 (_Name), \
3276 (_Type), \
3277 (VAR_FLAGS_DYNAMIC_CFG | (_Flags)), \
3278 VAR_OFFSET(_Struct, _VarName), \
3279 VAR_SIZE(_Struct, _VarName), \
3280 (_Default), \
3281 (_Min), \
3282 (_Max), \
3283 (_CBFunc), \
3284 (_CBParam) \
3285 }
3286
3287#define REG_VARIABLE_STRING(_Name, _Type, _Struct, _VarName, \
3288 _Flags, _Default) \
3289 { \
3290 (_Name), \
3291 (_Type), \
3292 (_Flags), \
3293 VAR_OFFSET(_Struct, _VarName), \
3294 VAR_SIZE(_Struct, _VarName), \
3295 (unsigned long)(_Default), \
3296 0, \
3297 0, \
3298 NULL, \
3299 0 \
3300 }
3301
3302typedef struct tREG_TABLE_ENTRY {
3303
3304 char *RegName; /* variable name in the qcom_cfg.ini file */
3305 WLAN_PARAMETER_TYPE RegType; /* variable type in the hdd_config_t structure */
3306 unsigned long Flags; /* Specify optional parms and if RangeCheck is performed */
3307 unsigned short VarOffset; /* offset to field from the base address of the structure */
3308 unsigned short VarSize; /* size (in bytes) of the field */
3309 unsigned long VarDefault; /* default value to use */
3310 unsigned long VarMin; /* minimum value, for range checking */
3311 unsigned long VarMax; /* maximum value, for range checking */
3312 /* Dynamic modification notifier */
3313 void (*pfnDynamicnotify)(hdd_context_t *pHddCtx,
3314 unsigned long notifyId);
3315 unsigned long notifyId; /* Dynamic modification identifier */
3316} REG_TABLE_ENTRY;
3317
3318static __inline unsigned long util_min(unsigned long a, unsigned long b)
3319{
3320 unsigned long r;
3321
3322 r = ((a < b) ? a : b);
3323 return r;
3324}
3325
3326/* Function declarations and documenation */
3327CDF_STATUS hdd_parse_config_ini(hdd_context_t *pHddCtx);
3328CDF_STATUS hdd_update_mac_config(hdd_context_t *pHddCtx);
3329CDF_STATUS hdd_set_sme_config(hdd_context_t *pHddCtx);
3330CDF_STATUS hdd_set_sme_chan_list(hdd_context_t *hdd_ctx);
3331bool hdd_update_config_dat(hdd_context_t *pHddCtx);
3332CDF_STATUS hdd_cfg_get_global_config(hdd_context_t *pHddCtx, char *pBuf,
3333 int buflen);
3334
3335eCsrPhyMode hdd_cfg_xlate_to_csr_phy_mode(eHddDot11Mode dot11Mode);
3336CDF_STATUS hdd_execute_global_config_command(hdd_context_t *pHddCtx,
3337 char *command);
3338
3339bool hdd_is_okc_mode_enabled(hdd_context_t *pHddCtx);
3340CDF_STATUS hdd_set_idle_ps_config(hdd_context_t *pHddCtx, uint32_t val);
3341
3342void hdd_update_tgt_cfg(void *context, void *param);
3343void hdd_dfs_indicate_radar(void *context, void *param);
3344
3345CDF_STATUS hdd_string_to_u8_array(char *str, uint8_t *intArray, uint8_t *len,
3346 uint8_t intArrayMaxLen);
3347void hdd_cfg_print(hdd_context_t *pHddCtx);
3348
3349CDF_STATUS hdd_update_nss(hdd_context_t *hdd_ctx, uint8_t nss);
3350
3351#endif