aboutsummaryrefslogtreecommitdiffstats
path: root/package/kernel/mac80211/patches/352-v5.4-0003-brcmfmac-avoid-firmware-command-in-brcmf_netdev_open.patch
diff options
context:
space:
mode:
authorRafał Miłecki <rafal@milecki.pl>2019-07-21 23:09:53 +0200
committerRafał Miłecki <rafal@milecki.pl>2019-07-22 14:15:38 +0200
commitb55dd9be3f9eccf5e9496ab649f302da8d7fe3af (patch)
treeb2cba28cbd98ca754b1ab6e3ec9764239843e262 /package/kernel/mac80211/patches/352-v5.4-0003-brcmfmac-avoid-firmware-command-in-brcmf_netdev_open.patch
parentb5b5b23b303341869f9d6abf9c4760e656442a0d (diff)
downloadupstream-b55dd9be3f9eccf5e9496ab649f302da8d7fe3af.tar.gz
upstream-b55dd9be3f9eccf5e9496ab649f302da8d7fe3af.tar.bz2
upstream-b55dd9be3f9eccf5e9496ab649f302da8d7fe3af.zip
mac80211: brcmfmac: backport fixes from kernel 5.4
This fixes: 1) Crash during USB disconnect 2) Crash in brcmf_txfinalize() on rmmod with packets queued 3) Some errors in exit path Signed-off-by: Rafał Miłecki <rafal@milecki.pl> (cherry picked from commit 8231f67218e584be61d32b24bd17cc55e500638c)
Diffstat (limited to 'package/kernel/mac80211/patches/352-v5.4-0003-brcmfmac-avoid-firmware-command-in-brcmf_netdev_open.patch')
-rw-r--r--package/kernel/mac80211/patches/352-v5.4-0003-brcmfmac-avoid-firmware-command-in-brcmf_netdev_open.patch29
1 files changed, 29 insertions, 0 deletions
diff --git a/package/kernel/mac80211/patches/352-v5.4-0003-brcmfmac-avoid-firmware-command-in-brcmf_netdev_open.patch b/package/kernel/mac80211/patches/352-v5.4-0003-brcmfmac-avoid-firmware-command-in-brcmf_netdev_open.patch
new file mode 100644
index 0000000000..567abe0d21
--- /dev/null
+++ b/package/kernel/mac80211/patches/352-v5.4-0003-brcmfmac-avoid-firmware-command-in-brcmf_netdev_open.patch
@@ -0,0 +1,29 @@
+From 1be747d977014fea13dbac0de885c0c358eb393c Mon Sep 17 00:00:00 2001
+From: Arend van Spriel <arend.vanspriel@broadcom.com>
+Date: Thu, 11 Jul 2019 11:05:08 +0200
+Subject: [PATCH 3/7] brcmfmac: avoid firmware command in brcmf_netdev_open()
+ when bus is down
+
+No point in sending a firmware command when bus is down so make it
+conditional checking the state.
+
+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>
+---
+ drivers/net/wireless/broadcom/brcm80211/brcmfmac/core.c | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+--- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/core.c
++++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/core.c
+@@ -589,7 +589,8 @@ static int brcmf_netdev_stop(struct net_
+
+ brcmf_cfg80211_down(ndev);
+
+- brcmf_fil_iovar_data_set(ifp, "arp_hostip_clear", NULL, 0);
++ if (ifp->drvr->bus_if->state == BRCMF_BUS_UP)
++ brcmf_fil_iovar_data_set(ifp, "arp_hostip_clear", NULL, 0);
+
+ brcmf_net_setcarrier(ifp, false);
+