Home Home > GIT Browse
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTakashi Iwai <tiwai@suse.de>2018-10-10 22:04:15 +0200
committerTakashi Iwai <tiwai@suse.de>2018-10-10 22:04:47 +0200
commit5f7f6f015d7bcbd980a9ba05f46641cb11623cf8 (patch)
treeee39d71d8c3d38761feca661920ba15cd33239cc
parent9a71b80799a3e990f610f8e1f090bed5e4c974c6 (diff)
Revert "mwifiex: fix incorrect ht capability problem"
(bsc#1051510).
-rw-r--r--patches.drivers/Revert-mwifiex-fix-incorrect-ht-capability-problem.patch91
-rw-r--r--series.conf1
2 files changed, 92 insertions, 0 deletions
diff --git a/patches.drivers/Revert-mwifiex-fix-incorrect-ht-capability-problem.patch b/patches.drivers/Revert-mwifiex-fix-incorrect-ht-capability-problem.patch
new file mode 100644
index 0000000000..f416741679
--- /dev/null
+++ b/patches.drivers/Revert-mwifiex-fix-incorrect-ht-capability-problem.patch
@@ -0,0 +1,91 @@
+From 53a7094204b7f2b9016648b5c4b5ece8e810a461 Mon Sep 17 00:00:00 2001
+From: Ganapathi Bhat <gbhat@marvell.com>
+Date: Fri, 9 Mar 2018 23:45:24 +0530
+Subject: [PATCH] Revert "mwifiex: fix incorrect ht capability problem"
+Git-commit: 53a7094204b7f2b9016648b5c4b5ece8e810a461
+Patch-mainline: v4.17-rc1
+References: bsc#1051510
+
+This reverts commit bcc920e8f08336cbbdcdba7c4449c27137e6b4b9.
+
+Drivers gets hardware info and updates ht_cap field of
+wiphy->bands during initialization. Once updated during init,
+ht_cap must not be modified as it reflects the capability
+supported by hardwawre. Above patch tries to modify the ht_cap
+field and this results in wrongly advertising capabilities during
+association.
+
+Signed-off-by: Cathy Luo <cluo@marvell.com>
+Signed-off-by: Ganapathi Bhat <gbhat@marvell.com>
+Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
+Acked-by: Takashi Iwai <tiwai@suse.de>
+
+---
+ .../net/wireless/marvell/mwifiex/sta_ioctl.c | 44 +------------------
+ 1 file changed, 1 insertion(+), 43 deletions(-)
+
+diff --git a/drivers/net/wireless/marvell/mwifiex/sta_ioctl.c b/drivers/net/wireless/marvell/mwifiex/sta_ioctl.c
+index a6077ab3efc3..ed66f12d3301 100644
+--- a/drivers/net/wireless/marvell/mwifiex/sta_ioctl.c
++++ b/drivers/net/wireless/marvell/mwifiex/sta_ioctl.c
+@@ -146,7 +146,6 @@ int mwifiex_fill_new_bss_desc(struct mwifiex_private *priv,
+ size_t beacon_ie_len;
+ struct mwifiex_bss_priv *bss_priv = (void *)bss->priv;
+ const struct cfg80211_bss_ies *ies;
+- int ret;
+
+ rcu_read_lock();
+ ies = rcu_dereference(bss->ies);
+@@ -190,48 +189,7 @@ int mwifiex_fill_new_bss_desc(struct mwifiex_private *priv,
+ if (bss_desc->cap_info_bitmap & WLAN_CAPABILITY_SPECTRUM_MGMT)
+ bss_desc->sensed_11h = true;
+
+- ret = mwifiex_update_bss_desc_with_ie(priv->adapter, bss_desc);
+- if (ret)
+- return ret;
+-
+- /* Update HT40 capability based on current channel information */
+- if (bss_desc->bcn_ht_oper && bss_desc->bcn_ht_cap) {
+- u8 ht_param = bss_desc->bcn_ht_oper->ht_param;
+- u8 radio = mwifiex_band_to_radio_type(bss_desc->bss_band);
+- struct ieee80211_supported_band *sband =
+- priv->wdev.wiphy->bands[radio];
+- int freq = ieee80211_channel_to_frequency(bss_desc->channel,
+- radio);
+- struct ieee80211_channel *chan =
+- ieee80211_get_channel(priv->adapter->wiphy, freq);
+-
+- switch (ht_param & IEEE80211_HT_PARAM_CHA_SEC_OFFSET) {
+- case IEEE80211_HT_PARAM_CHA_SEC_ABOVE:
+- if (chan->flags & IEEE80211_CHAN_NO_HT40PLUS) {
+- sband->ht_cap.cap &=
+- ~IEEE80211_HT_CAP_SUP_WIDTH_20_40;
+- sband->ht_cap.cap &= ~IEEE80211_HT_CAP_SGI_40;
+- } else {
+- sband->ht_cap.cap |=
+- IEEE80211_HT_CAP_SUP_WIDTH_20_40 |
+- IEEE80211_HT_CAP_SGI_40;
+- }
+- break;
+- case IEEE80211_HT_PARAM_CHA_SEC_BELOW:
+- if (chan->flags & IEEE80211_CHAN_NO_HT40MINUS) {
+- sband->ht_cap.cap &=
+- ~IEEE80211_HT_CAP_SUP_WIDTH_20_40;
+- sband->ht_cap.cap &= ~IEEE80211_HT_CAP_SGI_40;
+- } else {
+- sband->ht_cap.cap |=
+- IEEE80211_HT_CAP_SUP_WIDTH_20_40 |
+- IEEE80211_HT_CAP_SGI_40;
+- }
+- break;
+- }
+- }
+-
+- return 0;
++ return mwifiex_update_bss_desc_with_ie(priv->adapter, bss_desc);
+ }
+
+ void mwifiex_dnld_txpwr_table(struct mwifiex_private *priv)
+--
+2.18.0
+
diff --git a/series.conf b/series.conf
index b18354c48e..a3f0d969eb 100644
--- a/series.conf
+++ b/series.conf
@@ -14316,6 +14316,7 @@
patches.drivers/rtlwifi-rtl8192cu-Remove-variable-self-assignment-in
patches.drivers/rtl8187-Fix-NULL-pointer-dereference-in-priv-conf_mu
patches.drivers/mt7601u-let-mac80211-validate-rx-CCMP-PN
+ patches.drivers/Revert-mwifiex-fix-incorrect-ht-capability-problem.patch
patches.drivers/ethernet-Use-octal-not-symbolic-permissions.patch
patches.drivers/net-hns3-fix-for-returning-wrong-value-problem-in-hn.patch
patches.drivers/net-hns3-fix-for-returning-wrong-value-problem-in-hn-da44a00f.patch