Configure the retry limits using .ini
Update the default configuration of retry limits with the user
defined configuration values.
Change-Id: I372b856bc2a4f031a7ee9e1e60cd25cc13277e1d
CRs-Fixed: 460262
diff --git a/CORE/HDD/inc/wlan_hdd_cfg.h b/CORE/HDD/inc/wlan_hdd_cfg.h
index 594f5e3..36c953d 100644
--- a/CORE/HDD/inc/wlan_hdd_cfg.h
+++ b/CORE/HDD/inc/wlan_hdd_cfg.h
@@ -576,6 +576,21 @@
#define CFG_ACTIVE_MIN_CHANNEL_TIME_BTC_MAX ( 10000 )
#define CFG_ACTIVE_MIN_CHANNEL_TIME_BTC_DEFAULT ( 60 )
+#define CFG_RETRY_LIMIT_ZERO_NAME "gRetryLimitZero"
+#define CFG_RETRY_LIMIT_ZERO_MIN ( 0 )
+#define CFG_RETRY_LIMIT_ZERO_MAX ( 15 )
+#define CFG_RETRY_LIMIT_ZERO_DEFAULT ( 5 )
+
+#define CFG_RETRY_LIMIT_ONE_NAME "gRetryLimitOne"
+#define CFG_RETRY_LIMIT_ONE_MIN ( 0 )
+#define CFG_RETRY_LIMIT_ONE_MAX ( 15 )
+#define CFG_RETRY_LIMIT_ONE_DEFAULT ( 10 )
+
+#define CFG_RETRY_LIMIT_TWO_NAME "gRetryLimitTwo"
+#define CFG_RETRY_LIMIT_TWO_MIN ( 0 )
+#define CFG_RETRY_LIMIT_TWO_MAX ( 15 )
+#define CFG_RETRY_LIMIT_TWO_DEFAULT ( 15 )
+
#ifdef WLAN_AP_STA_CONCURRENCY
#define CFG_PASSIVE_MAX_CHANNEL_TIME_CONC_NAME "gPassiveMaxChannelTimeConc"
@@ -2028,6 +2043,9 @@
v_U8_t enableMCCAdaptiveScheduler;
v_BOOL_t isAndroidPsEn;
v_BOOL_t sapAllowAllChannel;
+ v_U8_t retryLimitZero;
+ v_U8_t retryLimitOne;
+ v_U8_t retryLimitTwo;
} hdd_config_t;
/*---------------------------------------------------------------------------
Function declarations and documenation
diff --git a/CORE/HDD/src/wlan_hdd_cfg.c b/CORE/HDD/src/wlan_hdd_cfg.c
index 10a0554..bb61e2e 100644
--- a/CORE/HDD/src/wlan_hdd_cfg.c
+++ b/CORE/HDD/src/wlan_hdd_cfg.c
@@ -779,6 +779,27 @@
CFG_ACTIVE_MIN_CHANNEL_TIME_BTC_MIN,
CFG_ACTIVE_MIN_CHANNEL_TIME_BTC_MAX ),
+ REG_VARIABLE( CFG_RETRY_LIMIT_ZERO_NAME, WLAN_PARAM_Integer,
+ hdd_config_t, retryLimitZero,
+ VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
+ CFG_RETRY_LIMIT_ZERO_DEFAULT,
+ CFG_RETRY_LIMIT_ZERO_MIN,
+ CFG_RETRY_LIMIT_ZERO_MAX ),
+
+ REG_VARIABLE( CFG_RETRY_LIMIT_ONE_NAME, WLAN_PARAM_Integer,
+ hdd_config_t, retryLimitOne,
+ VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
+ CFG_RETRY_LIMIT_ONE_DEFAULT,
+ CFG_RETRY_LIMIT_ONE_MIN,
+ CFG_RETRY_LIMIT_ONE_MAX ),
+
+ REG_VARIABLE( CFG_RETRY_LIMIT_TWO_NAME, WLAN_PARAM_Integer,
+ hdd_config_t, retryLimitTwo,
+ VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
+ CFG_RETRY_LIMIT_TWO_DEFAULT,
+ CFG_RETRY_LIMIT_TWO_MIN,
+ CFG_RETRY_LIMIT_TWO_MAX ),
+
#ifdef WLAN_AP_STA_CONCURRENCY
REG_VARIABLE( CFG_PASSIVE_MAX_CHANNEL_TIME_CONC_NAME, WLAN_PARAM_Integer,
hdd_config_t, nPassiveMaxChnTimeConc,
@@ -3607,8 +3628,30 @@
NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
{
fStatus = FALSE;
- hddLog(LOGE, "Could not pass on WNI_CFG_DISABLE_LDPC_WITH_TXBF_AP to CCM\n");
+ hddLog(LOGE, "Could not pass on WNI_CFG_DISABLE_LDPC_WITH_TXBF_AP to CCM");
}
+
+ if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_DYNAMIC_THRESHOLD_ZERO, pConfig->retryLimitZero,
+ NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
+ {
+ fStatus = FALSE;
+ hddLog(LOGE, "Could not pass on WNI_CFG_DYNAMIC_THRESHOLD_ZERO to CCM");
+ }
+
+ if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_DYNAMIC_THRESHOLD_ONE, pConfig->retryLimitOne,
+ NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
+ {
+ fStatus = FALSE;
+ hddLog(LOGE, "Could not pass on WNI_CFG_DYNAMIC_THRESHOLD_ONE to CCM");
+ }
+
+ if (ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_DYNAMIC_THRESHOLD_TWO, pConfig->retryLimitTwo,
+ NULL, eANI_BOOLEAN_FALSE)==eHAL_STATUS_FAILURE)
+ {
+ fStatus = FALSE;
+ hddLog(LOGE, "Could not pass on WNI_CFG_DYNAMIC_THRESHOLD_TWO to CCM");
+ }
+
return fStatus;
}