diff options
Diffstat (limited to 'package/kernel/mac80211/patches/357-0012-brcmfmac-fix-scheduled-scan-result-handling-for-newe.patch')
-rw-r--r-- | package/kernel/mac80211/patches/357-0012-brcmfmac-fix-scheduled-scan-result-handling-for-newe.patch | 76 |
1 files changed, 0 insertions, 76 deletions
diff --git a/package/kernel/mac80211/patches/357-0012-brcmfmac-fix-scheduled-scan-result-handling-for-newe.patch b/package/kernel/mac80211/patches/357-0012-brcmfmac-fix-scheduled-scan-result-handling-for-newe.patch deleted file mode 100644 index bbd877426e..0000000000 --- a/package/kernel/mac80211/patches/357-0012-brcmfmac-fix-scheduled-scan-result-handling-for-newe.patch +++ /dev/null @@ -1,76 +0,0 @@ -From 53e3a80d80c80bf50ab64cf6c44fb0fa41aa22d8 Mon Sep 17 00:00:00 2001 -From: Arend Van Spriel <arend.vanspriel@broadcom.com> -Date: Wed, 23 Nov 2016 10:25:31 +0000 -Subject: [PATCH] brcmfmac: fix scheduled scan result handling for newer chips - -The scan results for scheduled scan as retrieved from the device -have changed. A field has been added which is not needed. However, -the appended info is. Luckily they are versioned so check that to -find out the location of the appended data. - -Reviewed-by: Hante Meuleman <hante.meuleman@broadcom.com> -Reviewed-by: Pieter-Paul Giesberts <pieter-paul.giesberts@broadcom.com> -Reviewed-by: Franky Lin <franky.lin@broadcom.com> -Signed-off-by: Arend van Spriel <arend.vanspriel@broadcom.com> -Signed-off-by: Kalle Valo <kvalo@codeaurora.org> ---- - .../broadcom/brcm80211/brcmfmac/cfg80211.c | 24 +++++++++++++++++++++- - .../broadcom/brcm80211/brcmfmac/fwil_types.h | 7 +++++++ - 2 files changed, 30 insertions(+), 1 deletion(-) - ---- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c -+++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c -@@ -3257,6 +3257,28 @@ static int brcmf_start_internal_escan(st - return 0; - } - -+static struct brcmf_pno_net_info_le * -+brcmf_get_netinfo_array(struct brcmf_pno_scanresults_le *pfn_v1) -+{ -+ struct brcmf_pno_scanresults_v2_le *pfn_v2; -+ struct brcmf_pno_net_info_le *netinfo; -+ -+ switch (pfn_v1->version) { -+ default: -+ WARN_ON(1); -+ /* fall-thru */ -+ case cpu_to_le32(1): -+ netinfo = (struct brcmf_pno_net_info_le *)(pfn_v1 + 1); -+ break; -+ case cpu_to_le32(2): -+ pfn_v2 = (struct brcmf_pno_scanresults_v2_le *)pfn_v1; -+ netinfo = (struct brcmf_pno_net_info_le *)(pfn_v2 + 1); -+ break; -+ } -+ -+ return netinfo; -+} -+ - /* PFN result doesn't have all the info which are required by the supplicant - * (For e.g IEs) Do a target Escan so that sched scan results are reported - * via wl_inform_single_bss in the required format. Escan does require the -@@ -3309,7 +3331,7 @@ brcmf_notify_sched_scan_results(struct b - } - - data += sizeof(struct brcmf_pno_scanresults_le); -- netinfo_start = (struct brcmf_pno_net_info_le *)data; -+ netinfo_start = brcmf_get_netinfo_array(pfn_result); - - for (i = 0; i < result_count; i++) { - netinfo = &netinfo_start[i]; ---- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwil_types.h -+++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwil_types.h -@@ -785,6 +785,13 @@ struct brcmf_pno_scanresults_le { - __le32 count; - }; - -+struct brcmf_pno_scanresults_v2_le { -+ __le32 version; -+ __le32 status; -+ __le32 count; -+ __le32 scan_ch_bucket; -+}; -+ - /** - * struct brcmf_pno_macaddr_le - to configure PNO macaddr randomization. - * |