From 18bbda163c2ddac936ad757d1c460c2cef5f39ce Mon Sep 17 00:00:00 2001 From: Srinivas Girigowda <sgirigow@codeaurora.org> Date: Thu, 31 May 2018 09:57:46 -0700 Subject: [PATCH] qcacld-2.0: Remove redundant API sme_staInMiddleOfRoaming Driver has smeNeighborMiddleOfRoaming to check if STA is in middle of roaming. Further sme_staInMiddleOfRoaming acquires lock to know roam status, which is not required at all. Further driver can enter sleep state because of mutex lock in suspend path and can result in DPM device timeout. Hence, replace sme_staInMiddleOfRoaming with smeNeighborMiddleOfRoaming and remove redundant API sme_staInMiddleOfRoaming. Driver does not use any lock in smeNeighborMiddleOfRoaming to check roaming status. Change-Id: I96193becaa05a68044e092bb607eb5db60526a11 CRs-Fixed: 2250171 Bug: 80256778 Signed-off-by: Srinivas Girigowda <sgirigow@codeaurora.org> --- .../CORE/HDD/src/wlan_hdd_cfg80211.c | 4 ++-- .../staging/qcacld-2.0/CORE/SME/inc/sme_Api.h | 9 --------- .../CORE/SME/src/sme_common/sme_Api.c | 20 ------------------- 3 files changed, 2 insertions(+), 31 deletions(-) diff --git a/drivers/staging/qcacld-2.0/CORE/HDD/src/wlan_hdd_cfg80211.c b/drivers/staging/qcacld-2.0/CORE/HDD/src/wlan_hdd_cfg80211.c index 9238c2c1b832..af92a8505157 100644 --- a/drivers/staging/qcacld-2.0/CORE/HDD/src/wlan_hdd_cfg80211.c +++ b/drivers/staging/qcacld-2.0/CORE/HDD/src/wlan_hdd_cfg80211.c @@ -10577,7 +10577,7 @@ static int __wlan_hdd_cfg80211_fast_roaming(struct wiphy *wiphy, * defer out-network roaming. EBUSY is used to convey wait indication. */ if (!is_fast_roam_enabled) { - if (sme_staInMiddleOfRoaming(hdd_ctx->hHal, + if (smeNeighborMiddleOfRoaming(hdd_ctx->hHal, adapter->sessionId)) { hddLog(LOG1, FL("Roaming in progress, do not allow disable")); return -EBUSY; @@ -23673,7 +23673,7 @@ int __wlan_hdd_cfg80211_suspend_wlan(struct wiphy *wiphy, pAdapter = pAdapterNode->pAdapter; pScanInfo = &pAdapter->scan_info; - if (sme_staInMiddleOfRoaming(pHddCtx->hHal, pAdapter->sessionId)) { + if (smeNeighborMiddleOfRoaming(pHddCtx->hHal, pAdapter->sessionId)) { hddLog(LOG1, FL("Roaming in progress, do not allow suspend")); return -EAGAIN; } diff --git a/drivers/staging/qcacld-2.0/CORE/SME/inc/sme_Api.h b/drivers/staging/qcacld-2.0/CORE/SME/inc/sme_Api.h index ae514dd25217..fd0386608454 100644 --- a/drivers/staging/qcacld-2.0/CORE/SME/inc/sme_Api.h +++ b/drivers/staging/qcacld-2.0/CORE/SME/inc/sme_Api.h @@ -3963,15 +3963,6 @@ eHalStatus sme_UpdateDFSScanMode(tHalHandle hHal, --------------------------------------------------------------------------*/ v_BOOL_t sme_GetDFSScanMode(tHalHandle hHal); -/* --------------------------------------------------------------------------- - \fn sme_staInMiddleOfRoaming - \brief This function returns TRUE if STA is in the middle of roaming state - \param hHal - HAL handle for device - \param sessionId - Session identifier - \- return TRUE or FALSE - -------------------------------------------------------------------------*/ -tANI_BOOLEAN sme_staInMiddleOfRoaming(tHalHandle hHal, tANI_U8 sessionId); - /* --------------------------------------------------------------------------- \fn sme_PsOffloadIsStaInPowerSave \brief This function returns TRUE if STA is in power save diff --git a/drivers/staging/qcacld-2.0/CORE/SME/src/sme_common/sme_Api.c b/drivers/staging/qcacld-2.0/CORE/SME/src/sme_common/sme_Api.c index 446b7961740e..600c145c368c 100644 --- a/drivers/staging/qcacld-2.0/CORE/SME/src/sme_common/sme_Api.c +++ b/drivers/staging/qcacld-2.0/CORE/SME/src/sme_common/sme_Api.c @@ -15335,26 +15335,6 @@ eHalStatus sme_UpdateAddIE(tHalHandle hHal, return (status); } -/* --------------------------------------------------------------------------- - \fn sme_staInMiddleOfRoaming - \brief This function returns TRUE if STA is in the middle of roaming state - \param hHal - HAL handle for device - \param sessionId - Session Identifier - \- return TRUE or FALSE - -------------------------------------------------------------------------*/ -tANI_BOOLEAN sme_staInMiddleOfRoaming(tHalHandle hHal, tANI_U8 sessionId) -{ - tpAniSirGlobal pMac = PMAC_STRUCT( hHal ); - eHalStatus status = eHAL_STATUS_SUCCESS; - tANI_BOOLEAN ret = FALSE; - - if (eHAL_STATUS_SUCCESS == (status = sme_AcquireGlobalLock(&pMac->sme))) { - ret = csrNeighborMiddleOfRoaming(hHal, sessionId); - sme_ReleaseGlobalLock(&pMac->sme); - } - return ret; -} - /* --------------------------------------------------------------------------- \fn sme_PsOffloadIsStaInPowerSave \brief This function returns TRUE if STA is in power save -- GitLab