Merge "prima: Driver not able to configure the VHT-SAP" into wlan-driver.lnx.1.0
diff --git a/CORE/HDD/src/wlan_hdd_cfg.c b/CORE/HDD/src/wlan_hdd_cfg.c
index 941befb..050d9b8 100644
--- a/CORE/HDD/src/wlan_hdd_cfg.c
+++ b/CORE/HDD/src/wlan_hdd_cfg.c
@@ -4038,7 +4038,7 @@
REG_VARIABLE_STRING(CFG_ENABLE_DEFAULT_SAP, WLAN_PARAM_String,
hdd_config_t, enabledefaultSAP,
VAR_FLAGS_NONE,
- (void *)CFG_ENABLE_DEFAULT_SAP),
+ (void *)CFG_ENABLE_DEFAULT_SAP_DEFAULT),
};
diff --git a/CORE/HDD/src/wlan_hdd_main.c b/CORE/HDD/src/wlan_hdd_main.c
index ca45a93..e3686e8 100644
--- a/CORE/HDD/src/wlan_hdd_main.c
+++ b/CORE/HDD/src/wlan_hdd_main.c
@@ -13954,7 +13954,8 @@
goto err_close_adapter;
}
- if (strlen(pHddCtx->cfg_ini->enabledefaultSAP) != 0) {
+ if ((strlen(pHddCtx->cfg_ini->enabledefaultSAP) != 0) &&
+ (strcmp(pHddCtx->cfg_ini->enabledefaultSAP, "") != 0)) {
softapAdapter = hdd_open_adapter( pHddCtx, WLAN_HDD_SOFTAP,
pHddCtx->cfg_ini->enabledefaultSAP,
wlan_hdd_get_intf_addr(pHddCtx), FALSE);
@@ -14190,13 +14191,11 @@
wlan_logging_set_log_level();
hdd_register_mcast_bcast_filter(pHddCtx);
- if (VOS_STA_SAP_MODE != hdd_get_conparam())
- {
- /* Action frame registered in one adapter which will
- * applicable to all interfaces
- */
- wlan_hdd_cfg80211_register_frames(pAdapter);
- }
+
+ /* Action frame registered in one adapter which will
+ * applicable to all interfaces
+ */
+ wlan_hdd_cfg80211_register_frames(pAdapter);
mutex_init(&pHddCtx->sap_lock);
mutex_init(&pHddCtx->roc_lock);
diff --git a/CORE/SME/inc/csrInternal.h b/CORE/SME/inc/csrInternal.h
index 77edd48..8a7a8e8 100644
--- a/CORE/SME/inc/csrInternal.h
+++ b/CORE/SME/inc/csrInternal.h
@@ -1238,6 +1238,7 @@
tANI_BOOLEAN csrIsAnySessionInConnectState( tpAniSirGlobal pMac );
tANI_BOOLEAN csrIsAllSessionDisconnected( tpAniSirGlobal pMac );
tANI_BOOLEAN csrIsStaSessionConnected( tpAniSirGlobal pMac );
+tANI_BOOLEAN csrIsP2pGoSessionConnected( tpAniSirGlobal pMac );
tANI_BOOLEAN csrIsP2pSessionConnected( tpAniSirGlobal pMac );
tANI_BOOLEAN csrIsAnySessionConnected( tpAniSirGlobal pMac );
tANI_BOOLEAN csrIsInfraConnected( tpAniSirGlobal pMac );
diff --git a/CORE/SME/src/csr/csrApiScan.c b/CORE/SME/src/csr/csrApiScan.c
index 4e46942..901e2da 100644
--- a/CORE/SME/src/csr/csrApiScan.c
+++ b/CORE/SME/src/csr/csrApiScan.c
@@ -392,7 +392,7 @@
* candidates and resulting in disconnects.
*/
- if (csrIsInfraApStarted(pMac))
+ if (csrIsInfraApStarted(pMac) && !csrIsP2pGoSessionConnected(pMac))
{
nNumChanCombinedConc = 1;
}
@@ -7310,7 +7310,7 @@
* candidates and resulting in disconnects.
*/
- if (csrIsInfraApStarted(pMac))
+ if (csrIsInfraApStarted(pMac) && !csrIsP2pGoSessionConnected(pMac))
{
nNumChanCombinedConc = 1;
}
diff --git a/CORE/SME/src/csr/csrUtil.c b/CORE/SME/src/csr/csrUtil.c
index 916caff..3d23fa5 100644
--- a/CORE/SME/src/csr/csrUtil.c
+++ b/CORE/SME/src/csr/csrUtil.c
@@ -1585,6 +1585,31 @@
return( fRc );
}
+tANI_BOOLEAN csrIsP2pGoSessionConnected( tpAniSirGlobal pMac )
+{
+ tANI_U32 i;
+ tCsrRoamSession *pSession = NULL;
+
+ for( i = 0; i < CSR_ROAM_SESSION_MAX; i++ )
+ {
+ if(CSR_IS_SESSION_VALID( pMac, i) &&
+ !csrIsConnStateDisconnected(pMac, i))
+ {
+ pSession = CSR_GET_SESSION(pMac, i);
+
+ if (NULL != pSession->pCurRoamProfile)
+ {
+ if (pSession->pCurRoamProfile->csrPersona == VOS_P2P_GO_MODE) {
+ return eANI_BOOLEAN_TRUE;
+ }
+ }
+ }
+ }
+
+ return eANI_BOOLEAN_FALSE;
+}
+
+
tANI_BOOLEAN csrIsP2pSessionConnected( tpAniSirGlobal pMac )
{
tANI_U32 i;
diff --git a/CORE/WDA/src/wlan_qct_wda.c b/CORE/WDA/src/wlan_qct_wda.c
index f500757..140206c 100644
--- a/CORE/WDA/src/wlan_qct_wda.c
+++ b/CORE/WDA/src/wlan_qct_wda.c
@@ -20389,6 +20389,8 @@
}
if ( pWdaParams->wdaMsgParam != NULL)
vos_mem_free(pWdaParams->wdaMsgParam);
+ if (pWdaParams->wdaWdiApiMsgParam != NULL)
+ vos_mem_free(pWdaParams->wdaWdiApiMsgParam);
vos_mem_free(pWdaParams) ;
vosMsg.type = eWNI_SME_ROAM_SCAN_TRIGGER_RSP;
@@ -20424,6 +20426,8 @@
}
if ( pWdaParams->wdaMsgParam != NULL)
vos_mem_free(pWdaParams->wdaMsgParam);
+ if (pWdaParams->wdaWdiApiMsgParam != NULL)
+ vos_mem_free(pWdaParams->wdaWdiApiMsgParam);
vos_mem_free(pWdaParams) ;
vosMsg.type = eWNI_SME_ROAM_SCAN_OFFLOAD_RSP;