From fdcb2d0b1fb22c63c4f6e49dd3d89c157e19e467 Mon Sep 17 00:00:00 2001 From: Agrawal Ashish Date: Thu, 5 May 2016 16:24:11 +0530 Subject: [PATCH] qcacld-3.0: Flush Scan results in DRIVER command SET_FCC_CHANNEL qcacld-2.0 to qcacld-3.0 propagation When framework sends SET_FCC_CHANNEL command to driver, driver removes channel 12 and 13 from valid channel list. Even after removing channels from valid channel list, BSS entries are not flushed from scan cache table. BSS entries get removed when age out timer expires. Scan results shows stale entries before age out timer expires. As 12 and 13 are not in valid channel list, driver should remove BSS scanned on channel 12 and 13. Change-Id: I63ca0bea23da1430ca0e6f323555c3ac6b2d07cd CRs-Fixed: 949293 --- core/sme/src/csr/csr_api_scan.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/core/sme/src/csr/csr_api_scan.c b/core/sme/src/csr/csr_api_scan.c index 299fb641d367..0cf923b6b2e3 100644 --- a/core/sme/src/csr/csr_api_scan.c +++ b/core/sme/src/csr/csr_api_scan.c @@ -4176,6 +4176,11 @@ bool csr_scan_complete(tpAniSirGlobal pMac, tSirSmeScanRsp *pScanRsp) pCommand->u.scanCmd.abortScanDueToBandChange = false; } csr_save_scan_results(pMac, pCommand->u.scanCmd.reason, sessionId); + /* filter scan result based on valid channel list number */ + if (pMac->scan.fcc_constraint) { + sms_log(pMac, LOG1, FL("Clear BSS from invalid channels")); + csr_scan_filter_results(pMac); + } #ifdef FEATURE_WLAN_DIAG_SUPPORT_CSR csr_diag_scan_complete(pMac, pCommand, pScanRsp); #endif /* #ifdef FEATURE_WLAN_DIAG_SUPPORT_CSR */