diff options
| -rw-r--r-- | CORE/HDD/inc/wlan_hdd_cfg.h | 17 | ||||
| -rw-r--r-- | CORE/HDD/inc/wlan_hdd_cfg80211.h | 2 | ||||
| -rw-r--r-- | CORE/HDD/inc/wlan_hdd_main.h | 1 | ||||
| -rw-r--r-- | CORE/HDD/src/wlan_hdd_cfg.c | 25 | ||||
| -rw-r--r-- | CORE/HDD/src/wlan_hdd_cfg80211.c | 6 | ||||
| -rw-r--r-- | CORE/HDD/src/wlan_hdd_hostapd.c | 2 | ||||
| -rw-r--r-- | CORE/HDD/src/wlan_hdd_main.c | 8 | ||||
| -rw-r--r-- | CORE/MAC/inc/aniGlobal.h | 2 | ||||
| -rw-r--r-- | CORE/MAC/inc/wniCfgAp.h | 23 | ||||
| -rw-r--r-- | CORE/MAC/inc/wniCfgSta.h | 14 | ||||
| -rw-r--r-- | CORE/MAC/src/cfg/cfgProcMsg.c | 16 | ||||
| -rw-r--r-- | CORE/MAC/src/pe/lim/limAIDmgmt.c | 12 | ||||
| -rw-r--r-- | CORE/MAC/src/pe/lim/limApi.c | 13 | ||||
| -rw-r--r-- | CORE/MAC/src/pe/lim/limProcessAssocReqFrame.c | 14 | ||||
| -rw-r--r-- | CORE/MAC/src/pe/lim/limProcessCfgUpdates.c | 18 | ||||
| -rw-r--r-- | CORE/VOSS/src/vos_api.c | 6 |
16 files changed, 158 insertions, 21 deletions
diff --git a/CORE/HDD/inc/wlan_hdd_cfg.h b/CORE/HDD/inc/wlan_hdd_cfg.h index 828f126c8333..06d44639c416 100644 --- a/CORE/HDD/inc/wlan_hdd_cfg.h +++ b/CORE/HDD/inc/wlan_hdd_cfg.h @@ -2661,12 +2661,26 @@ This feature requires the dependent cfg.ini "gRoamPrefer5GHz" set to 1 */ #define CFG_IBSS_PS_1RX_CHAIN_IN_ATIM_WINDOW_MAX (1) #define CFG_IBSS_PS_1RX_CHAIN_IN_ATIM_WINDOW_DEFAULT (0) +/* + * Max peers number of SAP + */ #define CFG_SAP_MAX_NO_PEERS "gSoftApMaxPeers" #define CFG_SAP_MAX_NO_PEERS_MIN (1) #define CFG_SAP_MAX_NO_PEERS_MAX (32) #define CFG_SAP_MAX_NO_PEERS_DEFAULT (32) /* + * Max peers number of P2P GO + * To make it backward compatible with old INI file which only set + * gSoftApMaxPeers, set gGoMaxPeers default value to 0, and add logic + * to set this item same as gSoftApMaxPeers if the value is 0 + */ +#define CFG_GO_MAX_NO_PEERS "gGoMaxPeers" +#define CFG_GO_MAX_NO_PEERS_MIN (0) +#define CFG_GO_MAX_NO_PEERS_MAX (32) +#define CFG_GO_MAX_NO_PEERS_DEFAULT (0) + +/* * Connection related log Enable/Disable. * 0x1 - Enable mgmt pkt logs (no probe req/rsp). * 0x2 - Enable EAPOL pkt logs. @@ -4399,7 +4413,8 @@ struct hdd_config { #endif v_U8_t maxWoWFilters; v_U8_t wowEnable; - v_U8_t maxNumberOfPeers; + v_U8_t max_sap_peers; + v_U8_t max_go_peers; v_U8_t disableDFSChSwitch; v_U8_t enableDFSMasterCap; v_U16_t thermalTempMinLevel0; diff --git a/CORE/HDD/inc/wlan_hdd_cfg80211.h b/CORE/HDD/inc/wlan_hdd_cfg80211.h index 6fc13ed3588f..86225855b675 100644 --- a/CORE/HDD/inc/wlan_hdd_cfg80211.h +++ b/CORE/HDD/inc/wlan_hdd_cfg80211.h @@ -1961,7 +1961,7 @@ int wlan_hdd_cfg80211_init(struct device *dev, void wlan_hdd_cfg80211_deinit(struct wiphy *wiphy); void wlan_hdd_update_wiphy(struct wiphy *wiphy, - hdd_config_t *pCfg); + hdd_context_t *ctx); int wlan_hdd_cfg80211_register( struct wiphy *wiphy); void wlan_hdd_cfg80211_register_frames(hdd_adapter_t* pAdapter); diff --git a/CORE/HDD/inc/wlan_hdd_main.h b/CORE/HDD/inc/wlan_hdd_main.h index e5cdec427b15..1de463f16776 100644 --- a/CORE/HDD/inc/wlan_hdd_main.h +++ b/CORE/HDD/inc/wlan_hdd_main.h @@ -1835,6 +1835,7 @@ struct hdd_context_s bool driver_being_stopped; /* Track if DRIVER STOP cmd is sent */ uint8_t max_mc_addr_list; struct acs_dfs_policy acs_policy; + uint8_t max_peers; }; /*--------------------------------------------------------------------------- diff --git a/CORE/HDD/src/wlan_hdd_cfg.c b/CORE/HDD/src/wlan_hdd_cfg.c index 3c1e918f7982..edd01861f435 100644 --- a/CORE/HDD/src/wlan_hdd_cfg.c +++ b/CORE/HDD/src/wlan_hdd_cfg.c @@ -3001,12 +3001,19 @@ REG_TABLE_ENTRY g_registry_table[] = CFG_IBSS_ATIM_WIN_SIZE_MAX ), REG_VARIABLE( CFG_SAP_MAX_NO_PEERS, WLAN_PARAM_Integer, - hdd_config_t, maxNumberOfPeers, + hdd_config_t, max_sap_peers, VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT, CFG_SAP_MAX_NO_PEERS_DEFAULT, CFG_SAP_MAX_NO_PEERS_MIN, CFG_SAP_MAX_NO_PEERS_MAX), + REG_VARIABLE( CFG_GO_MAX_NO_PEERS, WLAN_PARAM_Integer, + hdd_config_t, max_go_peers, + VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT, + CFG_GO_MAX_NO_PEERS_DEFAULT, + CFG_GO_MAX_NO_PEERS_MIN, + CFG_GO_MAX_NO_PEERS_MAX), + REG_VARIABLE( CFG_IBSS_IS_POWER_SAVE_ALLOWED_NAME , WLAN_PARAM_Integer, hdd_config_t, isIbssPowerSaveAllowed, VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT, @@ -6857,7 +6864,7 @@ v_BOOL_t hdd_update_config_dat( hdd_context_t *pHddCtx ) } else { - val = pConfig->maxNumberOfPeers; + val = pHddCtx->max_peers; } if(ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_ASSOC_STA_LIMIT, val, @@ -6866,6 +6873,20 @@ v_BOOL_t hdd_update_config_dat( hdd_context_t *pHddCtx ) fStatus = FALSE; hddLog(LOGE,"Failure: Could not pass on WNI_CFG_ASSOC_STA_LIMIT configuration info to CCM"); } + + if(ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_ASSOC_STA_LIMIT_AP, + pConfig->max_sap_peers, NULL, eANI_BOOLEAN_FALSE) + == eHAL_STATUS_FAILURE) { + fStatus = FALSE; + hddLog(LOGE,"can't pass WNI_CFG_ASSOC_STA_LIMIT_AP to CCM"); + } + + if(ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_ASSOC_STA_LIMIT_GO, + pConfig->max_go_peers, NULL, eANI_BOOLEAN_FALSE) + == eHAL_STATUS_FAILURE) { + fStatus = FALSE; + hddLog(LOGE,"can't pass WNI_CFG_ASSOC_STA_LIMIT_GO to CCM"); + } #endif if(ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_ENABLE_LPWR_IMG_TRANSITION, pConfig->enableLpwrImgTransition, NULL, eANI_BOOLEAN_FALSE) diff --git a/CORE/HDD/src/wlan_hdd_cfg80211.c b/CORE/HDD/src/wlan_hdd_cfg80211.c index a21a026a5331..340f70c87c83 100644 --- a/CORE/HDD/src/wlan_hdd_cfg80211.c +++ b/CORE/HDD/src/wlan_hdd_cfg80211.c @@ -12055,7 +12055,7 @@ int wlan_hdd_cfg80211_init(struct device *dev, } #endif - wiphy->max_ap_assoc_sta = pCfg->maxNumberOfPeers; + wiphy->max_ap_assoc_sta = pHddCtx->max_peers; #ifdef QCA_HT_2040_COEX wiphy->features |= NL80211_FEATURE_AP_MODE_CHAN_WIDTH_CHANGE; #endif @@ -12098,9 +12098,9 @@ void wlan_hdd_cfg80211_deinit(struct wiphy *wiphy) * of all required members can be done here. */ void wlan_hdd_update_wiphy(struct wiphy *wiphy, - hdd_config_t *pCfg) + hdd_context_t *ctx) { - wiphy->max_ap_assoc_sta = pCfg->maxNumberOfPeers; + wiphy->max_ap_assoc_sta = ctx->max_peers; if (!sme_IsFeatureSupportedByFW(DOT11AC)) { wiphy->bands[IEEE80211_BAND_2GHZ]->vht_cap.vht_supported = 0; wiphy->bands[IEEE80211_BAND_2GHZ]->vht_cap.cap = 0; diff --git a/CORE/HDD/src/wlan_hdd_hostapd.c b/CORE/HDD/src/wlan_hdd_hostapd.c index 2a806fe8c5ac..480aafb07d5b 100644 --- a/CORE/HDD/src/wlan_hdd_hostapd.c +++ b/CORE/HDD/src/wlan_hdd_hostapd.c @@ -5398,7 +5398,7 @@ hdd_softap_get_sta_info(hdd_adapter_t *pAdapter, v_U8_t *pBuf, int buf_len) pBuf += len; buf_len -= len; - maxSta = pHddCtx->cfg_ini->maxNumberOfPeers; + maxSta = pHddCtx->max_peers; for (i = 0; i <= maxSta; i++) { diff --git a/CORE/HDD/src/wlan_hdd_main.c b/CORE/HDD/src/wlan_hdd_main.c index 77c3338c9ab7..32d21d50ecd6 100644 --- a/CORE/HDD/src/wlan_hdd_main.c +++ b/CORE/HDD/src/wlan_hdd_main.c @@ -14630,6 +14630,12 @@ int hdd_wlan_startup(struct device *dev, v_VOID_t *hif_sc) goto err_config; } + if (0 == pHddCtx->cfg_ini->max_go_peers) + pHddCtx->cfg_ini->max_go_peers = pHddCtx->cfg_ini->max_sap_peers; + + pHddCtx->max_peers = MAX(pHddCtx->cfg_ini->max_sap_peers, + pHddCtx->cfg_ini->max_go_peers); + ((VosContextType*)pVosContext)->pHIFContext = hif_sc; /* store target type and target version info in hdd ctx */ @@ -14816,7 +14822,7 @@ int hdd_wlan_startup(struct device *dev, v_VOID_t *hif_sc) goto err_vosclose; } - wlan_hdd_update_wiphy(wiphy, pHddCtx->cfg_ini); + wlan_hdd_update_wiphy(wiphy, pHddCtx); if (sme_IsFeatureSupportedByFW(DOT11AC)) { hddLog(VOS_TRACE_LEVEL_INFO_HIGH, "%s: support 11ac", __func__); diff --git a/CORE/MAC/inc/aniGlobal.h b/CORE/MAC/inc/aniGlobal.h index aac66ec46068..4c1235f8dabc 100644 --- a/CORE/MAC/inc/aniGlobal.h +++ b/CORE/MAC/inc/aniGlobal.h @@ -592,6 +592,8 @@ typedef struct sAniSirLim /// Variable to keep track of number of currently associated STAs tANI_U16 gLimNumOfAniSTAs; // count of ANI peers tANI_U16 gLimAssocStaLimit; + uint16_t glim_assoc_sta_limit_ap; + uint16_t glim_assoc_sta_limit_go; // Heart-Beat interval value tANI_U32 gLimHeartBeatCount; diff --git a/CORE/MAC/inc/wniCfgAp.h b/CORE/MAC/inc/wniCfgAp.h index a99db6140104..dbc5ab58d29f 100644 --- a/CORE/MAC/inc/wniCfgAp.h +++ b/CORE/MAC/inc/wniCfgAp.h @@ -343,7 +343,8 @@ #define WNI_CFG_VHT_ENABLE_TXBF_20MHZ 296 #define WNI_CFG_TDLS_WMM_MODE_ENABLED 297 #define WNI_CFG_TGT_GTX_USR_CFG 298 - +#define WNI_CFG_ASSOC_STA_LIMIT_GO 299 +#define WNI_CFG_ASSOC_STA_LIMIT_AP 300 /* * String parameter lengths */ @@ -2516,10 +2517,26 @@ #define WNI_CFG_TGT_GTX_USR_CFG_APMAX 32 #define WNI_CFG_TGT_GTX_USR_CFG_APDEF 32 -#define CFG_PARAM_MAX_NUM 299 +#define WNI_CFG_ASSOC_STA_LIMIT_AP_STAMIN 1 +#define WNI_CFG_ASSOC_STA_LIMIT_AP_STAMAX 32 +#define WNI_CFG_ASSOC_STA_LIMIT_AP_STADEF 10 + +#define WNI_CFG_ASSOC_STA_LIMIT_AP_APMIN 1 +#define WNI_CFG_ASSOC_STA_LIMIT_AP_APMAX 32 +#define WNI_CFG_ASSOC_STA_LIMIT_AP_APDEF 10 + +#define WNI_CFG_ASSOC_STA_LIMIT_GO_STAMIN 1 +#define WNI_CFG_ASSOC_STA_LIMIT_GO_STAMAX 32 +#define WNI_CFG_ASSOC_STA_LIMIT_GO_STADEF 10 + +#define WNI_CFG_ASSOC_STA_LIMIT_GO_APMIN 1 +#define WNI_CFG_ASSOC_STA_LIMIT_GO_APMAX 32 +#define WNI_CFG_ASSOC_STA_LIMIT_GO_APDEF 10 + +#define CFG_PARAM_MAX_NUM 301 #define CFG_AP_IBUF_MAX_SIZE 246 #define CFG_AP_SBUF_MAX_SIZE 3233 -#define CFG_STA_IBUF_MAX_SIZE 242 +#define CFG_STA_IBUF_MAX_SIZE 244 #define CFG_STA_SBUF_MAX_SIZE 3199 #define CFG_SEM_MAX_NUM 19 diff --git a/CORE/MAC/inc/wniCfgSta.h b/CORE/MAC/inc/wniCfgSta.h index cfeafbc91051..2ae9de219ba1 100644 --- a/CORE/MAC/inc/wniCfgSta.h +++ b/CORE/MAC/inc/wniCfgSta.h @@ -337,6 +337,8 @@ #define WNI_CFG_VHT_ENABLE_TXBF_20MHZ 296 #define WNI_CFG_TDLS_WMM_MODE_ENABLED 297 #define WNI_CFG_TGT_GTX_USR_CFG 298 +#define WNI_CFG_ASSOC_STA_LIMIT_GO 299 +#define WNI_CFG_ASSOC_STA_LIMIT_AP 300 /* * String parameter lengths @@ -1609,8 +1611,16 @@ #define WNI_CFG_TGT_GTX_USR_CFG_STAMAX 32 #define WNI_CFG_TGT_GTX_USR_CFG_STADEF 32 -#define CFG_PARAM_MAX_NUM 299 -#define CFG_STA_IBUF_MAX_SIZE 242 +#define WNI_CFG_ASSOC_STA_LIMIT_AP_STAMIN 1 +#define WNI_CFG_ASSOC_STA_LIMIT_AP_STAMAX 32 +#define WNI_CFG_ASSOC_STA_LIMIT_AP_STADEF 10 + +#define WNI_CFG_ASSOC_STA_LIMIT_GO_STAMIN 1 +#define WNI_CFG_ASSOC_STA_LIMIT_GO_STAMAX 32 +#define WNI_CFG_ASSOC_STA_LIMIT_GO_STADEF 10 + +#define CFG_PARAM_MAX_NUM 301 +#define CFG_STA_IBUF_MAX_SIZE 244 #define CFG_STA_SBUF_MAX_SIZE 3199 #define CFG_SEM_MAX_NUM 19 diff --git a/CORE/MAC/src/cfg/cfgProcMsg.c b/CORE/MAC/src/cfg/cfgProcMsg.c index f81af89754ca..943ba48cab56 100644 --- a/CORE/MAC/src/cfg/cfgProcMsg.c +++ b/CORE/MAC/src/cfg/cfgProcMsg.c @@ -1905,7 +1905,21 @@ struct cgstatic cfg_static[CFG_PARAM_MAX_NUM] = { CFG_CTL_VALID | CFG_CTL_RE | CFG_CTL_WE | CFG_CTL_INT, WNI_CFG_TGT_GTX_USR_CFG_STAMIN, WNI_CFG_TGT_GTX_USR_CFG_STAMAX, - WNI_CFG_TGT_GTX_USR_CFG_STADEF} + WNI_CFG_TGT_GTX_USR_CFG_STADEF}, + + {WNI_CFG_ASSOC_STA_LIMIT_AP, + CFG_CTL_VALID | CFG_CTL_RE | CFG_CTL_WE | CFG_CTL_INT | + CFG_CTL_NTF_LIM, + WNI_CFG_ASSOC_STA_LIMIT_AP_STAMIN, + WNI_CFG_ASSOC_STA_LIMIT_AP_STAMAX, + WNI_CFG_ASSOC_STA_LIMIT_AP_STADEF}, + + {WNI_CFG_ASSOC_STA_LIMIT_GO, + CFG_CTL_VALID | CFG_CTL_RE | CFG_CTL_WE | CFG_CTL_INT | + CFG_CTL_NTF_LIM, + WNI_CFG_ASSOC_STA_LIMIT_GO_STAMIN, + WNI_CFG_ASSOC_STA_LIMIT_GO_STAMAX, + WNI_CFG_ASSOC_STA_LIMIT_GO_STADEF} }; struct cfgstatic_string cfg_static_string[CFG_MAX_STATIC_STRING] = { diff --git a/CORE/MAC/src/pe/lim/limAIDmgmt.c b/CORE/MAC/src/pe/lim/limAIDmgmt.c index d26a23b07dd0..3d3d7a3aad8f 100644 --- a/CORE/MAC/src/pe/lim/limAIDmgmt.c +++ b/CORE/MAC/src/pe/lim/limAIDmgmt.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2011-2014 The Linux Foundation. All rights reserved. + * Copyright (c) 2011-2014, 2016 The Linux Foundation. All rights reserved. * * Previously licensed under the ISC license by Qualcomm Atheros, Inc. * @@ -134,10 +134,18 @@ tANI_U16 limAssignPeerIdx(tpAniSirGlobal pMac, tpPESession pSessionEntry) { tANI_U16 peerId; + uint8 max_peer = 0; + + if (pSessionEntry->pePersona == VOS_STA_SAP_MODE) + max_peer = pMac->lim.glim_assoc_sta_limit_ap; + + if (pSessionEntry->pePersona == VOS_P2P_GO_MODE) + max_peer = pMac->lim.glim_assoc_sta_limit_go; // make sure we haven't exceeded the configurable limit on associations // This count is global to ensure that it doesnt exceed the hardware limits. - if (peGetCurrentSTAsCount(pMac) >= pMac->lim.gLimAssocStaLimit) + if (peGetCurrentSTAsCount(pMac) >= pMac->lim.gLimAssocStaLimit || + pSessionEntry->gLimNumOfCurrentSTAs >= max_peer) { // too many associations already active return 0; diff --git a/CORE/MAC/src/pe/lim/limApi.c b/CORE/MAC/src/pe/lim/limApi.c index 068620d8d6c0..4b41ef7f6d2e 100644 --- a/CORE/MAC/src/pe/lim/limApi.c +++ b/CORE/MAC/src/pe/lim/limApi.c @@ -305,6 +305,19 @@ static void __limInitAssocVars(tpAniSirGlobal pMac) } pMac->lim.gLimAssocStaLimit = val; pMac->lim.gLimIbssStaLimit = val; + if(wlan_cfgGetInt(pMac, WNI_CFG_ASSOC_STA_LIMIT_AP, &val) != eSIR_SUCCESS) + limLog( pMac, LOGP, FL( "cfg get assoc sta of AP limit failed" )); + + pMac->lim.glim_assoc_sta_limit_ap = val; + + if(wlan_cfgGetInt(pMac, WNI_CFG_ASSOC_STA_LIMIT_GO, &val) != eSIR_SUCCESS) + limLog( pMac, LOGP, FL( "cfg get assoc sta of GO limit failed" )); + + pMac->lim.glim_assoc_sta_limit_go = val; + + limLog(pMac, LOG1, FL("max_peer:%d ap_peer:%d go_peer:%d"), + pMac->lim.gLimAssocStaLimit, pMac->lim.glim_assoc_sta_limit_ap, + pMac->lim.glim_assoc_sta_limit_go); // Place holder for current authentication request // being handled pMac->lim.gpLimMlmAuthReq = NULL; diff --git a/CORE/MAC/src/pe/lim/limProcessAssocReqFrame.c b/CORE/MAC/src/pe/lim/limProcessAssocReqFrame.c index cc24b8f76fae..c3934ef6bd0d 100644 --- a/CORE/MAC/src/pe/lim/limProcessAssocReqFrame.c +++ b/CORE/MAC/src/pe/lim/limProcessAssocReqFrame.c @@ -253,6 +253,7 @@ limProcessAssocReqFrame(tpAniSirGlobal pMac, tANI_U8 *pRxPacketInfo, tANI_U16 assocId = 0; bool assoc_req_copied = false; tDot11fIEVHTCaps *vht_caps; + uint8 max_peer = 0; limGetPhyMode(pMac, &phyMode, psessionEntry); @@ -847,10 +848,21 @@ limProcessAssocReqFrame(tpAniSirGlobal pMac, tANI_U8 *pRxPacketInfo, /// Extract pre-auth context for the STA, if any. pStaPreAuthContext = limSearchPreAuthList(pMac, pHdr->sa); + limLog(pMac, LOG1, FL( "max:%d ap:%d go:%d mode:%d"), + pMac->lim.gLimAssocStaLimit, pMac->lim.glim_assoc_sta_limit_ap, + pMac->lim.glim_assoc_sta_limit_go, psessionEntry->pePersona); + + if (psessionEntry->pePersona == VOS_STA_SAP_MODE) + max_peer = pMac->lim.glim_assoc_sta_limit_ap; + + if (psessionEntry->pePersona == VOS_P2P_GO_MODE) + max_peer = pMac->lim.glim_assoc_sta_limit_go; + if (pStaDs == NULL) { /// Requesting STA is not currently associated - if (peGetCurrentSTAsCount(pMac) == pMac->lim.gLimAssocStaLimit) + if ((peGetCurrentSTAsCount(pMac) == pMac->lim.gLimAssocStaLimit)|| + (psessionEntry->gLimNumOfCurrentSTAs == max_peer)) { /** * Maximum number of STAs that AP can handle reached. diff --git a/CORE/MAC/src/pe/lim/limProcessCfgUpdates.c b/CORE/MAC/src/pe/lim/limProcessCfgUpdates.c index 37e45a8e3c72..ee433aedc5b5 100644 --- a/CORE/MAC/src/pe/lim/limProcessCfgUpdates.c +++ b/CORE/MAC/src/pe/lim/limProcessCfgUpdates.c @@ -552,6 +552,24 @@ limHandleCFGparamUpdate(tpAniSirGlobal pMac, tANI_U32 cfgId) pMac->lim.gLimAssocStaLimit = (tANI_U16)val1; break; + case WNI_CFG_ASSOC_STA_LIMIT_GO: + if(wlan_cfgGetInt(pMac, WNI_CFG_ASSOC_STA_LIMIT_GO, &val1) + != eSIR_SUCCESS) { + limLog(pMac, LOGE, FL("Unable to get WNI_CFG_ASSOC_STA_LIMIT_GO")); + break; + } + pMac->lim.glim_assoc_sta_limit_go = (tANI_U16)val1; + break; + + case WNI_CFG_ASSOC_STA_LIMIT_AP: + if(wlan_cfgGetInt(pMac, WNI_CFG_ASSOC_STA_LIMIT_AP, &val1) + != eSIR_SUCCESS) { + limLog(pMac, LOGE, FL("Unable to get WNI_CFG_ASSOC_STA_LIMIT_AP")); + break; + } + pMac->lim.glim_assoc_sta_limit_ap = (tANI_U16)val1; + break; + case WNI_CFG_DEL_ALL_RX_BA_SESSIONS_2_4_G_BTC: if (wlan_cfgGetInt (pMac, WNI_CFG_DEL_ALL_RX_BA_SESSIONS_2_4_G_BTC, &val1) != diff --git a/CORE/VOSS/src/vos_api.c b/CORE/VOSS/src/vos_api.c index b80c021b9499..dc96f4f4d7b6 100644 --- a/CORE/VOSS/src/vos_api.c +++ b/CORE/VOSS/src/vos_api.c @@ -496,7 +496,7 @@ VOS_STATUS vos_open( v_CONTEXT_t *pVosContext, v_SIZE_t hddContextSize ) scn->enableuartprint = pHddCtx->cfg_ini->enablefwprint; scn->enablefwlog = pHddCtx->cfg_ini->enablefwlog; scn->enableFwSelfRecovery = pHddCtx->cfg_ini->enableFwSelfRecovery; - scn->max_no_of_peers = pHddCtx->cfg_ini->maxNumberOfPeers; + scn->max_no_of_peers = pHddCtx->max_peers; #ifdef WLAN_FEATURE_LPSS scn->enablelpasssupport = pHddCtx->cfg_ini->enablelpasssupport; #endif @@ -661,9 +661,9 @@ VOS_STATUS vos_open( v_CONTEXT_t *pVosContext, v_SIZE_t hddContextSize ) /* Number of peers limit differs in each chip version. If peer max * limit configured in ini exceeds more than supported, WMA adjusts * and keeps correct limit in macOpenParms.maxStation. So, make sure - * ini entry pHddCtx->cfg_ini->maxNumberOfPeers has adjusted value + * pHddCtx->max_peers has adjusted value */ - pHddCtx->cfg_ini->maxNumberOfPeers = macOpenParms.maxStation; + pHddCtx->max_peers = macOpenParms.maxStation; HTCHandle = vos_get_context(VOS_MODULE_ID_HTC, gpVosContext); if (!HTCHandle) { VOS_TRACE(VOS_MODULE_ID_VOSS, VOS_TRACE_LEVEL_FATAL, |
