summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--CORE/HDD/src/wlan_hdd_cfg.c5
-rw-r--r--CORE/MAC/src/pe/lim/limApi.c6
-rw-r--r--CORE/MAC/src/pe/lim/limProcessCfgUpdates.c10
-rw-r--r--CORE/SERVICES/WMA/wma.c9
-rw-r--r--CORE/WDI/CP/inc/wlan_qct_wdi.h2
5 files changed, 29 insertions, 3 deletions
diff --git a/CORE/HDD/src/wlan_hdd_cfg.c b/CORE/HDD/src/wlan_hdd_cfg.c
index 9892d527c5dd..064b57ba20d7 100644
--- a/CORE/HDD/src/wlan_hdd_cfg.c
+++ b/CORE/HDD/src/wlan_hdd_cfg.c
@@ -4604,7 +4604,12 @@ v_BOOL_t hdd_update_config_dat( hdd_context_t *pHddCtx )
}
else
{
+#ifndef QCA_WIFI_2_0
val = WNI_CFG_ASSOC_STA_LIMIT_STADEF;
+#else
+ val = pConfig->maxNumberOfPeers;
+#endif
+
}
if(ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_ASSOC_STA_LIMIT, val,
NULL, eANI_BOOLEAN_FALSE) == eHAL_STATUS_FAILURE)
diff --git a/CORE/MAC/src/pe/lim/limApi.c b/CORE/MAC/src/pe/lim/limApi.c
index 9e339bd6c335..1b0bbbac2c88 100644
--- a/CORE/MAC/src/pe/lim/limApi.c
+++ b/CORE/MAC/src/pe/lim/limApi.c
@@ -354,9 +354,13 @@ static void __limInitAssocVars(tpAniSirGlobal pMac)
{
limLog( pMac, LOGP, FL( "cfg get assoc sta limit failed" ));
}
+#ifdef QCA_WIFI_2_0
+ /* This +1 is done because of peerIdx assign logic in limAssignPeerIdx */
+ pMac->lim.gLimAssocStaLimit = val + 1;
+#else
pMac->lim.gLimAssocStaLimit = val;
+#endif
pMac->lim.gLimIbssStaLimit = val;
-
// Place holder for current authentication request
// being handled
pMac->lim.gpLimMlmAuthReq = NULL;
diff --git a/CORE/MAC/src/pe/lim/limProcessCfgUpdates.c b/CORE/MAC/src/pe/lim/limProcessCfgUpdates.c
index f87d74690d5b..6955b3546aa1 100644
--- a/CORE/MAC/src/pe/lim/limProcessCfgUpdates.c
+++ b/CORE/MAC/src/pe/lim/limProcessCfgUpdates.c
@@ -596,7 +596,12 @@ limHandleCFGparamUpdate(tpAniSirGlobal pMac, tANI_U32 cfgId)
limLog( pMac, LOGE, FL( "Unable to get WNI_CFG_ASSOC_STA_LIMIT" ));
break;
}
+#ifdef QCA_WIFI_2_0
+ /* This +1 is done becuse of peerIdx assign logic in limAssignPeerIdx */
+ pMac->lim.gLimAssocStaLimit = (tANI_U16)val1 + 1;
+#else
pMac->lim.gLimAssocStaLimit = (tANI_U16)val1;
+#endif
break;
case WNI_CFG_DEL_ALL_RX_BA_SESSIONS_2_4_G_BTC:
@@ -781,7 +786,12 @@ limUpdateConfig(tpAniSirGlobal pMac,tpPESession psessionEntry)
}
val = WNI_CFG_ASSOC_STA_LIMIT_STADEF;
}
+#ifdef QCA_WIFI_2_0
+ /* This +1 is done becuse of peerIdx assign logic in limAssignPeerIdx */
+ pMac->lim.gLimAssocStaLimit =(tANI_U16) val + 1;
+#else
pMac->lim.gLimAssocStaLimit = (tANI_U16)val;
+#endif
#if defined WLAN_FEATURE_VOWIFI
rrmUpdateConfig( pMac, psessionEntry );
diff --git a/CORE/SERVICES/WMA/wma.c b/CORE/SERVICES/WMA/wma.c
index ab8bfabee9e7..e7c8044de378 100644
--- a/CORE/SERVICES/WMA/wma.c
+++ b/CORE/SERVICES/WMA/wma.c
@@ -1826,6 +1826,7 @@ VOS_STATUS WDA_open(v_VOID_t *vos_context, v_VOID_t *os_ctx,
adf_os_device_t adf_dev;
v_VOID_t *wmi_handle;
VOS_STATUS vos_status = VOS_STATUS_SUCCESS;
+ struct ol_softc *scn;
WMA_LOGD("%s: Enter", __func__);
@@ -1887,7 +1888,13 @@ VOS_STATUS WDA_open(v_VOID_t *vos_context, v_VOID_t *os_ctx,
#endif
/*TODO: Recheck below parameters */
- mac_params->maxStation = WMA_MAX_SUPPORTED_STAS;
+ /*
+ * Increase maxStation by 1 here so that correct hashtable and
+ * gpLimPeerIdxpool memory is allocated in peCreateSession
+ */
+ scn = vos_get_context(VOS_MODULE_ID_HIF, vos_context);
+ mac_params->maxStation = ol_get_number_of_peers_supported(scn) + 1;
+
mac_params->maxBssId = WMA_MAX_SUPPORTED_BSS;
mac_params->frameTransRequired = 0;
diff --git a/CORE/WDI/CP/inc/wlan_qct_wdi.h b/CORE/WDI/CP/inc/wlan_qct_wdi.h
index 6cbeea8f10ba..7eceb18262a2 100644
--- a/CORE/WDI/CP/inc/wlan_qct_wdi.h
+++ b/CORE/WDI/CP/inc/wlan_qct_wdi.h
@@ -10176,7 +10176,7 @@ wpt_uint8 WDI_getHostWlanFeatCaps(wpt_uint8 feat_enum_value);
#ifdef QCA_WIFI_2_0
static inline wpt_uint8 WDI_getFwWlanFeatCaps(wpt_uint8 feat_enum_value)
{
- return 0;
+ return 1;
}
#else
wpt_uint8 WDI_getFwWlanFeatCaps(wpt_uint8 feat_enum_value);