aboutsummaryrefslogtreecommitdiffstats
path: root/package/kernel/mac80211/patches/864-brcmfmac-do-not-use-internal-roaming-engine-by-default.patch
diff options
context:
space:
mode:
authorÁlvaro Fernández Rojas <noltari@gmail.com>2017-02-07 14:45:19 +0100
committerÁlvaro Fernández Rojas <noltari@gmail.com>2017-02-07 15:17:44 +0100
commitdeb15cb23c20e00ac668d6c0ba025b5829e559bd (patch)
tree7a394d77d800a7dcd1bbe5f5b5d40c0c62695f2c /package/kernel/mac80211/patches/864-brcmfmac-do-not-use-internal-roaming-engine-by-default.patch
parentec10bb18f5fab162c4ba5ec10bfe9844cc2347e2 (diff)
downloadupstream-deb15cb23c20e00ac668d6c0ba025b5829e559bd.tar.gz
upstream-deb15cb23c20e00ac668d6c0ba025b5829e559bd.tar.bz2
upstream-deb15cb23c20e00ac668d6c0ba025b5829e559bd.zip
brcmfmac: improve Raspberry Pi 3 stability
- Really disable power management (wrong config flags). - Disable internal roaming engine. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
Diffstat (limited to 'package/kernel/mac80211/patches/864-brcmfmac-do-not-use-internal-roaming-engine-by-default.patch')
-rw-r--r--package/kernel/mac80211/patches/864-brcmfmac-do-not-use-internal-roaming-engine-by-default.patch23
1 files changed, 23 insertions, 0 deletions
diff --git a/package/kernel/mac80211/patches/864-brcmfmac-do-not-use-internal-roaming-engine-by-default.patch b/package/kernel/mac80211/patches/864-brcmfmac-do-not-use-internal-roaming-engine-by-default.patch
new file mode 100644
index 0000000000..5ae4c11228
--- /dev/null
+++ b/package/kernel/mac80211/patches/864-brcmfmac-do-not-use-internal-roaming-engine-by-default.patch
@@ -0,0 +1,23 @@
+brcmfmac: do not use internal roaming engine by default
+
+Some evidence of curing disconnects with this disabled, so make it a default.
+Can be overridden with module parameter roamoff=0
+See: http://projectable.me/optimize-my-pi-wi-fi/
+
+Signed-off-by: Phil Elwell <phil@raspberrypi.org>
+---
+
+--- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/common.c
++++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/common.c
+@@ -69,7 +69,11 @@ static int brcmf_fcmode;
+ module_param_named(fcmode, brcmf_fcmode, int, 0);
+ MODULE_PARM_DESC(fcmode, "Mode of firmware signalled flow control");
+
++#if defined(CONFIG_ARCH_BCM2708) || defined(CONFIG_ARCH_BCM2709)
++static int brcmf_roamoff = 1;
++#else
+ static int brcmf_roamoff;
++#endif
+ module_param_named(roamoff, brcmf_roamoff, int, S_IRUSR);
+ MODULE_PARM_DESC(roamoff, "Do not use internal roaming engine");
+