diff options
| author | Sachin Ahuja <sahuja@qti.qualcomm.com> | 2013-12-28 07:21:22 +0530 |
|---|---|---|
| committer | Prakash Dhavali <pdhavali@codeaurora.org> | 2014-01-16 21:46:19 -0800 |
| commit | 0d8f40f8a5e1fc2d830f698c5f2fbd554269aed4 (patch) | |
| tree | d27b74bd90f34381fba6d0c0db817cd1f94402eb | |
| parent | 91b2d2e73da39c7469d7693c37a5111d4cf78bc0 (diff) | |
cld: Support of max clients in AP mode
Changes done to get the maxClients Supported by gSoftApMaxPeers ini.
Default value of ini is 14 and it can be configured to 32 for Rome 1.3.
As UMAC reserves 2 peerIdxs for Riva, gLimAssocStaLimit is incremented
while updating config values for CLD.
.
Change-Id: Ibab722eed2cb74ec9736519a4fdf058bf9b7a1b2
CRs-Fixed: 594375
| -rw-r--r-- | CORE/HDD/src/wlan_hdd_cfg.c | 5 | ||||
| -rw-r--r-- | CORE/MAC/src/pe/lim/limApi.c | 6 | ||||
| -rw-r--r-- | CORE/MAC/src/pe/lim/limProcessCfgUpdates.c | 10 | ||||
| -rw-r--r-- | CORE/SERVICES/WMA/wma.c | 9 | ||||
| -rw-r--r-- | CORE/WDI/CP/inc/wlan_qct_wdi.h | 2 |
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); |
