From b5c73a475c35a0f856998fcfb5a81700ccb2d459 Mon Sep 17 00:00:00 2001 From: Abhishek Singh Date: Fri, 10 May 2019 17:30:27 +0530 Subject: [PATCH] qcacld-3.0: Cleanup sme_scan_flush_result to use cmn scan API Cleanup sme_scan_flush_result and csr_scan_flush_result to use ucfg_scan_flush_results API to flush scan results. Change-Id: If4ee6c56662d8b214c3b15325a5aef83c449d7c0 CRs-Fixed: 2450775 --- core/hdd/src/wlan_hdd_main.c | 1 - core/hdd/src/wlan_hdd_regulatory.c | 3 +-- core/sme/inc/sme_api.h | 1 - core/sme/src/common/sme_api.c | 24 -------------------- core/sme/src/csr/csr_api_roam.c | 2 +- core/sme/src/csr/csr_api_scan.c | 36 ------------------------------ core/sme/src/csr/csr_inside_api.h | 9 -------- 7 files changed, 2 insertions(+), 74 deletions(-) diff --git a/core/hdd/src/wlan_hdd_main.c b/core/hdd/src/wlan_hdd_main.c index 9273b607879a..0004f58ff41c 100644 --- a/core/hdd/src/wlan_hdd_main.c +++ b/core/hdd/src/wlan_hdd_main.c @@ -7524,7 +7524,6 @@ static void hdd_skip_acs_scan_timer_handler(void *data) mac_handle = hdd_ctx->mac_handle; if (!mac_handle) return; - sme_scan_flush_result(mac_handle); } #endif diff --git a/core/hdd/src/wlan_hdd_regulatory.c b/core/hdd/src/wlan_hdd_regulatory.c index 752ce3592e77..2508da7c8f18 100644 --- a/core/hdd/src/wlan_hdd_regulatory.c +++ b/core/hdd/src/wlan_hdd_regulatory.c @@ -860,8 +860,7 @@ int hdd_reg_set_band(struct net_device *dev, u8 ui_band) return -ETIMEDOUT; } } - - sme_scan_flush_result(mac_handle); + ucfg_scan_flush_results(hdd_ctx->pdev, NULL); } if (QDF_IS_STATUS_ERROR(ucfg_reg_set_band(hdd_ctx->pdev, band))) { diff --git a/core/sme/inc/sme_api.h b/core/sme/inc/sme_api.h index e1eed1106453..9fdef9c46f7c 100644 --- a/core/sme/inc/sme_api.h +++ b/core/sme/inc/sme_api.h @@ -480,7 +480,6 @@ QDF_STATUS sme_get_ap_channel_from_scan_cache( QDF_STATUS sme_get_ap_channel_from_scan(void *profile, tScanResultHandle *scan_cache, uint8_t *ap_chnl_id); -QDF_STATUS sme_scan_flush_result(mac_handle_t mac_handle); tCsrScanResultInfo *sme_scan_result_get_first(mac_handle_t, tScanResultHandle hScanResult); tCsrScanResultInfo *sme_scan_result_get_next(mac_handle_t, diff --git a/core/sme/src/common/sme_api.c b/core/sme/src/common/sme_api.c index b7d8dd62fd0b..eeeadc8a03c0 100644 --- a/core/sme/src/common/sme_api.c +++ b/core/sme/src/common/sme_api.c @@ -2679,30 +2679,6 @@ QDF_STATUS sme_get_ap_channel_from_scan_cache( return status; } -/* - * sme_scan_flush_result() - - * A wrapper function to request CSR to clear scan results. - * This is a synchronous call - * - * Return QDF_STATUS - */ -QDF_STATUS sme_scan_flush_result(mac_handle_t mac_handle) -{ - QDF_STATUS status = QDF_STATUS_E_FAILURE; - struct mac_context *mac = MAC_CONTEXT(mac_handle); - - MTRACE(qdf_trace(QDF_MODULE_ID_SME, - TRACE_CODE_SME_RX_HDD_MSG_SCAN_FLUSH_RESULTS, - 0, 0)); - status = sme_acquire_global_lock(&mac->sme); - if (QDF_IS_STATUS_SUCCESS(status)) { - status = csr_scan_flush_result(mac); - sme_release_global_lock(&mac->sme); - } - - return status; -} - /* * sme_scan_result_get_first() - * A wrapper function to request CSR to returns the first element of diff --git a/core/sme/src/csr/csr_api_roam.c b/core/sme/src/csr/csr_api_roam.c index d5d5722c1a44..9fc80e39182b 100644 --- a/core/sme/src/csr/csr_api_roam.c +++ b/core/sme/src/csr/csr_api_roam.c @@ -1293,7 +1293,7 @@ QDF_STATUS csr_stop(struct mac_context *mac) csr_neighbor_roam_close(mac, sessionId); for (sessionId = 0; sessionId < WLAN_MAX_VDEVS; sessionId++) if (CSR_IS_SESSION_VALID(mac, sessionId)) - csr_scan_flush_result(mac); + ucfg_scan_flush_results(mac->pdev, NULL); /* Reset the domain back to the deault */ mac->scan.domainIdCurrent = mac->scan.domainIdDefault; diff --git a/core/sme/src/csr/csr_api_scan.c b/core/sme/src/csr/csr_api_scan.c index e200ff73c38c..7ed47bf1918a 100644 --- a/core/sme/src/csr/csr_api_scan.c +++ b/core/sme/src/csr/csr_api_scan.c @@ -426,31 +426,6 @@ static void csr_scan_add_result(struct mac_context *mac_ctx, frm_type); } -/* - * NOTE: This routine is being added to make - * sure that scan results are not being flushed - * while roaming. If the scan results are flushed, - * we are unable to recover from - * csr_roam_roaming_state_disassoc_rsp_processor. - * If it is needed to remove this routine, - * first ensure that we recover gracefully from - * csr_roam_roaming_state_disassoc_rsp_processor if - * csr_scan_get_result returns with a failure because - * of not being able to find the roaming BSS. - */ -static bool csr_scan_flush_denied(struct mac_context *mac) -{ - uint8_t sessionId; - - for (sessionId = 0; sessionId < WLAN_MAX_VDEVS; sessionId++) { - if (CSR_IS_SESSION_VALID(mac, sessionId)) { - if (csr_neighbor_middle_of_roaming(mac, sessionId)) - return 1; - } - } - return 0; -} - static bool csr_scan_save_bss_description(struct mac_context *mac, tSirBssDescription *pBSSDescription) { @@ -3093,17 +3068,6 @@ csr_flush_scan_results(struct mac_context *mac_ctx, return status; } -QDF_STATUS csr_scan_flush_result(struct mac_context *mac_ctx) -{ - - if (csr_scan_flush_denied(mac_ctx)) { - sme_err("scan flush denied in roam state"); - return QDF_STATUS_E_FAILURE; - } - - return csr_flush_scan_results(mac_ctx, NULL); -} - static inline void csr_flush_bssid(struct mac_context *mac_ctx, uint8_t *bssid) { diff --git a/core/sme/src/csr/csr_inside_api.h b/core/sme/src/csr/csr_inside_api.h index 5445565085ef..19a09c1067d7 100644 --- a/core/sme/src/csr/csr_inside_api.h +++ b/core/sme/src/csr/csr_inside_api.h @@ -390,15 +390,6 @@ QDF_STATUS csr_scan_get_result_for_bssid(struct mac_context *mac_ctx, struct qdf_mac_addr *bssid, tCsrScanResultInfo *res); -/* - * csr_scan_flush_result() - - * Clear scan results. - * - * mac - mac global pointer - * sessionId - Session Identifier - * Return QDF_STATUS - */ -QDF_STATUS csr_scan_flush_result(struct mac_context *mac_ctx); /* * csr_scan_filter_results() - * Filter scan results based on valid channel list.