mac80211: backport from trunk r48782 + required kernel patches and mt76, mwlwifi
[15.05/openwrt.git] / package / kernel / mac80211 / patches / 374-0006-brcmfmac-Add-RSDB-support.patch
diff --git a/package/kernel/mac80211/patches/374-0006-brcmfmac-Add-RSDB-support.patch b/package/kernel/mac80211/patches/374-0006-brcmfmac-Add-RSDB-support.patch
deleted file mode 100644 (file)
index 78a95c5..0000000
+++ /dev/null
@@ -1,65 +0,0 @@
-From: Hante Meuleman <meuleman@broadcom.com>
-Date: Thu, 29 Oct 2015 20:33:16 +0100
-Subject: [PATCH] brcmfmac: Add RSDB support.
-
-Broadcom devices with a single 802.11 core can work on two band
-concurrently using VSDB feature, ie. Virtual Simultaneous Dual-Band.
-For devices that are fitted with two 802.11 cores and RF paths the
-driver should support a firmware feature called RSDB, which stands
-for Real Simultaneous Dual-Band. RSDB works almost autonomously in
-firmware except for AP config. When the device supports RSDB then
-the interface should not be brought down when configuring it,
-otherwise the link (if configured) on the other interface will be
-lost.
-
-Reviewed-by: Arend Van Spriel <arend@broadcom.com>
-Reviewed-by: Pieter-Paul Giesberts <pieterpg@broadcom.com>
-Signed-off-by: Hante Meuleman <meuleman@broadcom.com>
-Signed-off-by: Arend van Spriel <arend@broadcom.com>
-[kvalo@codeaurora.org: changed the commit log based on discussion]
-Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
----
-
---- a/drivers/net/wireless/brcm80211/brcmfmac/cfg80211.c
-+++ b/drivers/net/wireless/brcm80211/brcmfmac/cfg80211.c
-@@ -4182,7 +4182,9 @@ brcmf_cfg80211_start_ap(struct wiphy *wi
-                       }
-               }
--              if (dev_role == NL80211_IFTYPE_AP) {
-+              if ((dev_role == NL80211_IFTYPE_AP) &&
-+                  ((ifp->ifidx == 0) ||
-+                   !brcmf_feat_is_enabled(ifp, BRCMF_FEAT_RSDB))) {
-                       err = brcmf_fil_cmd_int_set(ifp, BRCMF_C_DOWN, 1);
-                       if (err < 0) {
-                               brcmf_err("BRCMF_C_DOWN error %d\n", err);
---- a/drivers/net/wireless/brcm80211/brcmfmac/feature.c
-+++ b/drivers/net/wireless/brcm80211/brcmfmac/feature.c
-@@ -137,6 +137,7 @@ void brcmf_feat_attach(struct brcmf_pub
-       if (drvr->bus_if->chip != BRCM_CC_43362_CHIP_ID)
-               brcmf_feat_iovar_int_set(ifp, BRCMF_FEAT_MBSS, "mbss", 0);
-       brcmf_feat_iovar_int_get(ifp, BRCMF_FEAT_P2P, "p2p");
-+      brcmf_feat_iovar_int_get(ifp, BRCMF_FEAT_RSDB, "rsdb_mode");
-       if (brcmf_feature_disable) {
-               brcmf_dbg(INFO, "Features: 0x%02x, disable: 0x%02x\n",
---- a/drivers/net/wireless/brcm80211/brcmfmac/feature.h
-+++ b/drivers/net/wireless/brcm80211/brcmfmac/feature.h
-@@ -24,13 +24,16 @@
-  * PNO: preferred network offload.
-  * WOWL: Wake-On-WLAN.
-  * P2P: peer-to-peer
-+ * RSDB: Real Simultaneous Dual Band
-  */
- #define BRCMF_FEAT_LIST \
-       BRCMF_FEAT_DEF(MBSS) \
-       BRCMF_FEAT_DEF(MCHAN) \
-       BRCMF_FEAT_DEF(PNO) \
-       BRCMF_FEAT_DEF(WOWL) \
--      BRCMF_FEAT_DEF(P2P)
-+      BRCMF_FEAT_DEF(P2P) \
-+      BRCMF_FEAT_DEF(RSDB)
-+
- /*
-  * Quirks:
-  *