297e2bbf91e0b36622947127ea5d47d2b0dd0fc8
[openwrt/openwrt.git] / package / kernel / mac80211 / patches / brcm / 104-v5.4-0004-brcmfmac-clear-events-in-brcmf_fweh_detach-will-alwa.patch
1 From 0d91defd7bfc42c0ed053ba03b5ea2eff2e1d2f5 Mon Sep 17 00:00:00 2001
2 From: Arend van Spriel <arend.vanspriel@broadcom.com>
3 Date: Thu, 11 Jul 2019 11:05:09 +0200
4 Subject: [PATCH 4/7] brcmfmac: clear events in brcmf_fweh_detach() will always
5 fail
6
7 Clearing firmware events in brcmf_fweh_detach() is always failing
8 because it is called only upon driver remove and communication
9 with firmware is no longer possible.
10
11 Reviewed-by: Hante Meuleman <hante.meuleman@broadcom.com>
12 Reviewed-by: Pieter-Paul Giesberts <pieter-paul.giesberts@broadcom.com>
13 Reviewed-by: Franky Lin <franky.lin@broadcom.com>
14 Signed-off-by: Arend van Spriel <arend.vanspriel@broadcom.com>
15 ---
16 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fweh.c | 9 ---------
17 1 file changed, 9 deletions(-)
18
19 --- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/fweh.c
20 +++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/fweh.c
21 @@ -303,16 +303,7 @@ void brcmf_fweh_attach(struct brcmf_pub
22 void brcmf_fweh_detach(struct brcmf_pub *drvr)
23 {
24 struct brcmf_fweh_info *fweh = &drvr->fweh;
25 - struct brcmf_if *ifp = brcmf_get_ifp(drvr, 0);
26 - s8 eventmask[BRCMF_EVENTING_MASK_LEN];
27
28 - if (ifp) {
29 - /* clear all events */
30 - memset(eventmask, 0, BRCMF_EVENTING_MASK_LEN);
31 - (void)brcmf_fil_iovar_data_set(ifp, "event_msgs",
32 - eventmask,
33 - BRCMF_EVENTING_MASK_LEN);
34 - }
35 /* cancel the worker */
36 cancel_work_sync(&fweh->event_work);
37 WARN_ON(!list_empty(&fweh->event_q));