mac80211: backport more brcmfmac changes queued for the 5.1
[openwrt/openwrt.git] / package / kernel / mac80211 / patches / brcm / 351-v5.1-0002-brcmfmac-support-firmware-reporting-160-MHz-channels.patch
diff --git a/package/kernel/mac80211/patches/brcm/351-v5.1-0002-brcmfmac-support-firmware-reporting-160-MHz-channels.patch b/package/kernel/mac80211/patches/brcm/351-v5.1-0002-brcmfmac-support-firmware-reporting-160-MHz-channels.patch
new file mode 100644 (file)
index 0000000..a809378
--- /dev/null
@@ -0,0 +1,30 @@
+From 30519cbe339a45bd11a57ca8ece07f4f6a1cda2e Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Rafa=C5=82=20Mi=C5=82ecki?= <rafal@milecki.pl>
+Date: Mon, 11 Feb 2019 23:04:54 +0100
+Subject: [PATCH] brcmfmac: support firmware reporting 160 MHz channels
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+So far 160 MHz channels were treated as 20 MHz ones which was breaking
+support for 40/80 MHz due to the brcmf_construct_chaninfo() logic and
+its assumptions.
+
+Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
+Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
+---
+ drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c | 3 +++
+ 1 file changed, 3 insertions(+)
+
+--- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c
++++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c
+@@ -6044,6 +6044,9 @@ static int brcmf_construct_chaninfo(stru
+                * HT40 upper, HT40 lower, and VHT80.
+                */
+               switch (ch.bw) {
++              case BRCMU_CHAN_BW_160:
++                      channel->flags &= ~IEEE80211_CHAN_NO_160MHZ;
++                      break;
+               case BRCMU_CHAN_BW_80:
+                       channel->flags &= ~IEEE80211_CHAN_NO_80MHZ;
+                       break;