aboutsummaryrefslogtreecommitdiffstats
path: root/package/kernel/mac80211/patches/319-v4.12-0021-brcmfmac-move-brcmf_fws_deinit-to-bcdc-layer.patch
diff options
context:
space:
mode:
Diffstat (limited to 'package/kernel/mac80211/patches/319-v4.12-0021-brcmfmac-move-brcmf_fws_deinit-to-bcdc-layer.patch')
-rw-r--r--package/kernel/mac80211/patches/319-v4.12-0021-brcmfmac-move-brcmf_fws_deinit-to-bcdc-layer.patch57
1 files changed, 57 insertions, 0 deletions
diff --git a/package/kernel/mac80211/patches/319-v4.12-0021-brcmfmac-move-brcmf_fws_deinit-to-bcdc-layer.patch b/package/kernel/mac80211/patches/319-v4.12-0021-brcmfmac-move-brcmf_fws_deinit-to-bcdc-layer.patch
new file mode 100644
index 0000000000..42532fe781
--- /dev/null
+++ b/package/kernel/mac80211/patches/319-v4.12-0021-brcmfmac-move-brcmf_fws_deinit-to-bcdc-layer.patch
@@ -0,0 +1,57 @@
+From 8f9dd1a974380ebe2d7bf82df4e6ba6bfb89c575 Mon Sep 17 00:00:00 2001
+From: Franky Lin <franky.lin@broadcom.com>
+Date: Tue, 28 Mar 2017 11:43:25 +0100
+Subject: [PATCH] brcmfmac: move brcmf_fws_deinit to bcdc layer
+
+Move brcmf_fws_deinit into brcmf_proto_bcdc_detach since it is a bcdc
+exclusive feature.
+
+Signed-off-by: Franky Lin <franky.lin@broadcom.com>
+Reviewed-by: Arend Van Spriel <arend.vanspriel@broadcom.com>
+Signed-off-by: Arend van Spriel <arend.vanspriel@broadcom.com>
+Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
+---
+ drivers/net/wireless/broadcom/brcm80211/brcmfmac/bcdc.c | 1 +
+ drivers/net/wireless/broadcom/brcm80211/brcmfmac/core.c | 7 -------
+ 2 files changed, 1 insertion(+), 7 deletions(-)
+
+--- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/bcdc.c
++++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/bcdc.c
+@@ -464,6 +464,7 @@ fail:
+
+ void brcmf_proto_bcdc_detach(struct brcmf_pub *drvr)
+ {
++ brcmf_fws_deinit(drvr);
+ kfree(drvr->proto->pd);
+ drvr->proto->pd = NULL;
+ }
+--- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/core.c
++++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/core.c
+@@ -32,7 +32,6 @@
+ #include "p2p.h"
+ #include "cfg80211.h"
+ #include "fwil.h"
+-#include "fwsignal.h"
+ #include "feature.h"
+ #include "proto.h"
+ #include "pcie.h"
+@@ -1044,10 +1043,6 @@ fail:
+ brcmf_cfg80211_detach(drvr->config);
+ drvr->config = NULL;
+ }
+- if (drvr->fws) {
+- brcmf_proto_del_if(ifp->drvr, ifp);
+- brcmf_fws_deinit(drvr);
+- }
+ brcmf_net_detach(ifp->ndev, false);
+ if (p2p_ifp)
+ brcmf_net_detach(p2p_ifp->ndev, false);
+@@ -1113,8 +1108,6 @@ void brcmf_detach(struct device *dev)
+
+ brcmf_cfg80211_detach(drvr->config);
+
+- brcmf_fws_deinit(drvr);
+-
+ brcmf_bus_stop(drvr->bus_if);
+
+ brcmf_proto_detach(drvr);