summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTushnim Bhattacharyya <tushnimb@qca.qualcomm.com>2015-05-08 14:54:56 -0700
committerAnjaneeDevi Kapparapu <c_akappa@qti.qualcomm.com>2015-05-11 19:01:08 +0530
commit7a43d52c6547dea34562a1204eea95d01549e7ae (patch)
treed1e12be9cac2ab59d76fe7fb2616a8aa44c879e8
parent44eb61882e3efdda6f4ce92713018f6070eae39a (diff)
qcacld 2.0: set rem_on_chan_ready_event if the ROC fails
propagation from prima/pronto If the ROC fails, rem_on_chan_ready_event is not set, which might lead to timeout. To address this set the rem_on_chan_ready_event completion variable when the ROC fails. Change-Id: Ic84fcfefb49deabc40af9f3092372798f0d5cca8 CRs-Fixed: 791169
-rw-r--r--CORE/HDD/src/wlan_hdd_p2p.c2
-rw-r--r--CORE/SME/src/p2p/p2p_Api.c4
2 files changed, 5 insertions, 1 deletions
diff --git a/CORE/HDD/src/wlan_hdd_p2p.c b/CORE/HDD/src/wlan_hdd_p2p.c
index 7b968a2da699..ecbe7aee6691 100644
--- a/CORE/HDD/src/wlan_hdd_p2p.c
+++ b/CORE/HDD/src/wlan_hdd_p2p.c
@@ -296,6 +296,8 @@ wlan_hdd_remain_on_channel_callback(tHalHandle hHal, void* pCtx,
}
vos_mem_free( pRemainChanCtx );
complete(&pAdapter->cancel_rem_on_chan_var);
+ if (eHAL_STATUS_SUCCESS != status)
+ complete(&pAdapter->rem_on_chan_ready_event);
mutex_lock(&cfgState->remain_on_chan_ctx_lock);
pAdapter->is_roc_inprogress = FALSE;
mutex_unlock(&cfgState->remain_on_chan_ctx_lock);
diff --git a/CORE/SME/src/p2p/p2p_Api.c b/CORE/SME/src/p2p/p2p_Api.c
index e2a1bbba33c2..aed63d1973ca 100644
--- a/CORE/SME/src/p2p/p2p_Api.c
+++ b/CORE/SME/src/p2p/p2p_Api.c
@@ -111,6 +111,7 @@ eHalStatus sme_remainOnChnRsp( tpAniSirGlobal pMac, tANI_U8 *pMsg)
tListElem *pEntry = NULL;
tSmeCmd *pCommand = NULL;
tANI_BOOLEAN fFound;
+ tSirSmeRsp *pRsp = (tSirSmeRsp *)pMsg;
if (pMac->fP2pListenOffload)
pEntry = csrLLPeekHead(&pMac->sme.smeScanCmdActiveList, LL_ACCESS_LOCK);
@@ -124,7 +125,8 @@ eHalStatus sme_remainOnChnRsp( tpAniSirGlobal pMac, tANI_U8 *pMsg)
remainOnChanCallback callback = pCommand->u.remainChlCmd.callback;
/* process the msg */
if( callback )
- callback(pMac, pCommand->u.remainChlCmd.callbackCtx, 0);
+ callback(pMac, pCommand->u.remainChlCmd.callbackCtx,
+ pRsp->statusCode);
if (pMac->fP2pListenOffload)
{