summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSuresh Kumar Gautam <sgkuma@codeaurora.org>2017-07-13 18:29:27 +0530
committersnandini <snandini@codeaurora.org>2017-08-02 06:49:59 -0700
commitc4a448cb512930f0a15a0717f5dcd1762b1fbfcb (patch)
tree4994e5c31af0edbef1370eca9a7c415f9e9eb760
parent24e0291053a7601a3370a829f58ab8f83595ddfc (diff)
qcacld-2.0: Define ini item gEnableNoAck
Define new ini item to configure “No ACK” functionality. Change-Id: Ibcbece095af2a12bbe17777062d9b4ef7aca235a CRs-fixed: 2077588
-rw-r--r--CORE/HDD/inc/wlan_hdd_cfg.h8
-rw-r--r--CORE/HDD/src/wlan_hdd_cfg.c10
-rw-r--r--CORE/SERVICES/WMA/wma.c2
-rw-r--r--CORE/VOSS/inc/vos_api.h2
-rw-r--r--CORE/VOSS/src/vos_api.c16
5 files changed, 37 insertions, 1 deletions
diff --git a/CORE/HDD/inc/wlan_hdd_cfg.h b/CORE/HDD/inc/wlan_hdd_cfg.h
index 54b65c8f308e..af83fd14cb36 100644
--- a/CORE/HDD/inc/wlan_hdd_cfg.h
+++ b/CORE/HDD/inc/wlan_hdd_cfg.h
@@ -4612,6 +4612,11 @@ FG_BTC_BT_INTERVAL_PAGE_P2P_STA_DEFAULT
#define CFG_REDUCED_BEACON_INTERVAL_MAX (100)
#define CFG_REDUCED_BEACON_INTERVAL_DEFAULT (0)
+#define CFG_NO_ACK_ENABLE "gEnableNoAck"
+#define CFG_NO_ACK_MIN (0)
+#define CFG_NO_ACK_MAX (1)
+#define CFG_NO_ACK_DEFAULT (0)
+
#ifdef FEATURE_COEX_PTA_CONFIG_ENABLE
/*
* <ini>
@@ -5427,6 +5432,9 @@ struct hdd_config {
uint32_t coex_inquiry_p2p_sta_bt_interval;
uint32_t coex_inquiry_p2p_sta_wlan_interval;
uint32_t coex_tx_power;
+
+ v_BOOL_t gEnableNoAck;
+
#ifdef FEATURE_COEX_PTA_CONFIG_ENABLE
uint8_t coex_pta_config_enable;
uint32_t coex_pta_config_param;
diff --git a/CORE/HDD/src/wlan_hdd_cfg.c b/CORE/HDD/src/wlan_hdd_cfg.c
index d0cc32752884..28b253ef0645 100644
--- a/CORE/HDD/src/wlan_hdd_cfg.c
+++ b/CORE/HDD/src/wlan_hdd_cfg.c
@@ -5024,6 +5024,13 @@ REG_TABLE_ENTRY g_registry_table[] =
CFG_REDUCED_BEACON_INTERVAL_MIN,
CFG_REDUCED_BEACON_INTERVAL_MAX),
+ REG_VARIABLE(CFG_NO_ACK_ENABLE, WLAN_PARAM_Integer,
+ hdd_config_t, gEnableNoAck,
+ VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
+ CFG_NO_ACK_DEFAULT,
+ CFG_NO_ACK_MIN,
+ CFG_NO_ACK_MAX),
+
#ifdef FEATURE_COEX_PTA_CONFIG_ENABLE
REG_VARIABLE(CFG_COEX_PTA_CONFIG_ENABLE, WLAN_PARAM_Integer,
hdd_config_t, coex_pta_config_enable,
@@ -5451,6 +5458,9 @@ void print_hdd_cfg(hdd_context_t *pHddCtx)
"Name = [enable_tdls_scan] Value = [%u]",
pHddCtx->cfg_ini->enable_tdls_scan);
#endif
+
+ VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [gEnableNoAck] Value = [%u] ",pHddCtx->cfg_ini->gEnableNoAck);
+
VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [InfraDirAcVo] Value = [%u] ",pHddCtx->cfg_ini->InfraDirAcVo);
VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [InfraNomMsduSizeAcVo] Value = [0x%x] ",pHddCtx->cfg_ini->InfraNomMsduSizeAcVo);
VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [InfraMeanDataRateAcVo] Value = [0x%x] ",pHddCtx->cfg_ini->InfraMeanDataRateAcVo);
diff --git a/CORE/SERVICES/WMA/wma.c b/CORE/SERVICES/WMA/wma.c
index 8049d950c1ad..6b58ab4a64f9 100644
--- a/CORE/SERVICES/WMA/wma.c
+++ b/CORE/SERVICES/WMA/wma.c
@@ -20205,7 +20205,7 @@ static void wma_update_edca_params_for_ac(tSirMacEdcaParamRecord *edca_param,
wmm_param->acm = edca_param->aci.acm;
/* TODO: No ack is not present in EdcaParamRecord */
- wmm_param->no_ack = 0;
+ wmm_param->no_ack = vos_config_is_no_ack();
WMA_LOGI("WMM PARAMS AC[%d]: AIFS %d Min %d Max %d TXOP %d ACM %d NOACK %d",
ac,
diff --git a/CORE/VOSS/inc/vos_api.h b/CORE/VOSS/inc/vos_api.h
index 40ff0996bef7..6022e0a52e82 100644
--- a/CORE/VOSS/inc/vos_api.h
+++ b/CORE/VOSS/inc/vos_api.h
@@ -339,6 +339,8 @@ v_VOID_t vos_fwDumpReq(tANI_U32 cmd, tANI_U32 arg1, tANI_U32 arg2,
v_BOOL_t vos_is_packet_log_enabled(void);
+v_BOOL_t vos_config_is_no_ack(void);
+
#ifdef WLAN_FEATURE_TSF_PLUS
bool vos_is_ptp_rx_opt_enabled(void);
bool vos_is_ptp_tx_opt_enabled(void);
diff --git a/CORE/VOSS/src/vos_api.c b/CORE/VOSS/src/vos_api.c
index 3b6c9109b1dc..b829a5e7b368 100644
--- a/CORE/VOSS/src/vos_api.c
+++ b/CORE/VOSS/src/vos_api.c
@@ -2429,6 +2429,22 @@ v_BOOL_t vos_is_packet_log_enabled(void)
return pHddCtx->cfg_ini->enablePacketLog;
}
+v_BOOL_t vos_config_is_no_ack(void)
+{
+ hdd_context_t *pHddCtx;
+
+ pHddCtx = (hdd_context_t*)(gpVosContext->pHDDContext);
+ if((NULL == pHddCtx) ||
+ (NULL == pHddCtx->cfg_ini))
+ {
+ VOS_TRACE( VOS_MODULE_ID_VOSS, VOS_TRACE_LEVEL_FATAL,
+ "%s: Hdd Context is Null", __func__);
+ return FALSE;
+ }
+
+ return pHddCtx->cfg_ini->gEnableNoAck;
+}
+
#ifdef WLAN_FEATURE_TSF_PLUS
bool vos_is_ptp_rx_opt_enabled(void)
{