From e973c5260e51fa8a729c72dd925e742133e30957 Mon Sep 17 00:00:00 2001
From: Ashwin <ashwin.bhat@broadcom.com>
Date: Fri, 30 Oct 2015 14:55:45 -0700
Subject: [PATCH] net: wireless: bcmdhd: Send results from all PNO scans

Remove ptr clearance so as to allow sched scan results
as long as supplicant doesnt issue stop.

Bug: 25394415

Change-Id: I19b38bfad5216f5fb6cd7bc21c986f9fdd0b9e19
Signed-off-by: Ashwin <ashwin.bhat@broadcom.com>
Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
(cherry picked from commit 24a3715f942fde7b55e3a1dafd395ce6c081857b)
---
 drivers/net/wireless/bcmdhd/wl_cfg80211.c | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

diff --git a/drivers/net/wireless/bcmdhd/wl_cfg80211.c b/drivers/net/wireless/bcmdhd/wl_cfg80211.c
index 1a52f89a12d0..9f0efd80ff32 100644
--- a/drivers/net/wireless/bcmdhd/wl_cfg80211.c
+++ b/drivers/net/wireless/bcmdhd/wl_cfg80211.c
@@ -10077,6 +10077,7 @@ static s32 wl_notify_escan_complete(struct bcm_cfg80211 *cfg,
 	s32 err = BCME_OK;
 	unsigned long flags;
 	struct net_device *dev;
+	int count;
 
 	WL_DBG(("Enter \n"));
 	if (!ndev) {
@@ -10117,11 +10118,12 @@ static s32 wl_notify_escan_complete(struct bcm_cfg80211 *cfg,
 	spin_lock_irqsave(&cfg->cfgdrv_lock, flags);
 #ifdef WL_SCHED_SCAN
 	if (cfg->sched_scan_req && !cfg->scan_request) {
-		WL_PNO((">>> REPORTING SCHED SCAN RESULTS \n"));
-		if (!aborted)
+		count = cfg->bss_list ? cfg->bss_list->count: 0;
+		if (!aborted) {
 			cfg80211_sched_scan_results(cfg->sched_scan_req->wiphy);
+			printk(">> SCHED SCAN RESULT %d\n", count);
+		}
 		cfg->sched_scan_running = FALSE;
-		cfg->sched_scan_req = NULL;
 	}
 #endif /* WL_SCHED_SCAN */
 	if (likely(cfg->scan_request)) {
-- 
GitLab