[source] brcmfmac: improve Raspberry Pi 3 stability

LEDE Commits lede-commits at lists.infradead.org
Tue Feb 7 06:17:03 PST 2017


noltari pushed a commit to source.git, branch master:
https://git.lede-project.org/deb15cb23c20e00ac668d6c0ba025b5829e559bd

commit deb15cb23c20e00ac668d6c0ba025b5829e559bd
Author: Álvaro Fernández Rojas <noltari at gmail.com>
AuthorDate: Tue Feb 7 14:45:19 2017 +0100

    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 at gmail.com>
---
 .../862-brcmfmac-Disable-power-management.patch    |  4 ++--
 ...ot-use-internal-roaming-engine-by-default.patch | 23 ++++++++++++++++++++++
 2 files changed, 25 insertions(+), 2 deletions(-)

diff --git a/package/kernel/mac80211/patches/862-brcmfmac-Disable-power-management.patch b/package/kernel/mac80211/patches/862-brcmfmac-Disable-power-management.patch
index 41b0f64..f0226a2 100644
--- a/package/kernel/mac80211/patches/862-brcmfmac-Disable-power-management.patch
+++ b/package/kernel/mac80211/patches/862-brcmfmac-Disable-power-management.patch
@@ -18,8 +18,8 @@ Signed-off-by: Phil Elwell <phil at raspberrypi.org>
  	 * preference in cfg struct to apply this to
  	 * FW later while initializing the dongle
  	 */
-+#if defined(CONFIG_BCM2708) || defined(CONFIG_BCM2709)
-+	pr_info("power management disabled\n");
++#if defined(CONFIG_ARCH_BCM2708) || defined(CONFIG_ARCH_BCM2709)
++	brcmf_dbg(INFO, "power management disabled\n");
 +	enabled = false;
 +#endif
  	cfg->pwr_save = enabled;
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 0000000..5ae4c11
--- /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 at 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");
+ 



More information about the lede-commits mailing list