diff options
author | John Crispin <john@openwrt.org> | 2015-02-04 06:11:01 +0000 |
---|---|---|
committer | John Crispin <john@openwrt.org> | 2015-02-04 06:11:01 +0000 |
commit | 70b4d641c1dac0a2733cd4b96c02f005de658c92 (patch) | |
tree | efdb14bccb246532c0272429c8cbd700c45af4db /package/kernel | |
parent | 600548e472c5e62adfa337a75c2702b14d253a25 (diff) | |
download | upstream-70b4d641c1dac0a2733cd4b96c02f005de658c92.tar.gz upstream-70b4d641c1dac0a2733cd4b96c02f005de658c92.tar.bz2 upstream-70b4d641c1dac0a2733cd4b96c02f005de658c92.zip |
ralink: remove VHT capabilities when not using 802.11ac
The mt76 driver might have some problem working with MT7602.
MT7602 should not have VHT capabilities . But the driver not identity properly.
Signed-off-by: wengbj <fl.service@t-firefly.com>
SVN-Revision: 44257
Diffstat (limited to 'package/kernel')
-rw-r--r-- | package/kernel/mt76/patches/0001-mt7602-remove-vht-capabilities.patch | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/package/kernel/mt76/patches/0001-mt7602-remove-vht-capabilities.patch b/package/kernel/mt76/patches/0001-mt7602-remove-vht-capabilities.patch new file mode 100644 index 0000000000..0a1f9c9862 --- /dev/null +++ b/package/kernel/mt76/patches/0001-mt7602-remove-vht-capabilities.patch @@ -0,0 +1,46 @@ +--- a/init.c ++++ b/init.c +@@ -682,24 +682,27 @@ mt76_init_sband(struct mt76_dev *dev, st + ht_cap->ampdu_factor = IEEE80211_HT_MAX_AMPDU_64K; + ht_cap->ampdu_density = IEEE80211_HT_MPDU_DENSITY_4; + +- vht_cap = &sband->vht_cap; +- vht_cap->vht_supported = true; ++ if (dev->cap.has_5ghz) ++ { ++ vht_cap = &sband->vht_cap; ++ vht_cap->vht_supported = true; + +- mcs_map = (IEEE80211_VHT_MCS_SUPPORT_0_9 << (0 * 2)) | +- (IEEE80211_VHT_MCS_SUPPORT_0_9 << (1 * 2)) | +- (IEEE80211_VHT_MCS_NOT_SUPPORTED << (2 * 2)) | +- (IEEE80211_VHT_MCS_NOT_SUPPORTED << (3 * 2)) | +- (IEEE80211_VHT_MCS_NOT_SUPPORTED << (4 * 2)) | +- (IEEE80211_VHT_MCS_NOT_SUPPORTED << (5 * 2)) | +- (IEEE80211_VHT_MCS_NOT_SUPPORTED << (6 * 2)) | +- (IEEE80211_VHT_MCS_NOT_SUPPORTED << (7 * 2)); ++ mcs_map = (IEEE80211_VHT_MCS_SUPPORT_0_9 << (0 * 2)) | ++ (IEEE80211_VHT_MCS_SUPPORT_0_9 << (1 * 2)) | ++ (IEEE80211_VHT_MCS_NOT_SUPPORTED << (2 * 2)) | ++ (IEEE80211_VHT_MCS_NOT_SUPPORTED << (3 * 2)) | ++ (IEEE80211_VHT_MCS_NOT_SUPPORTED << (4 * 2)) | ++ (IEEE80211_VHT_MCS_NOT_SUPPORTED << (5 * 2)) | ++ (IEEE80211_VHT_MCS_NOT_SUPPORTED << (6 * 2)) | ++ (IEEE80211_VHT_MCS_NOT_SUPPORTED << (7 * 2)); + +- vht_cap->vht_mcs.rx_mcs_map = cpu_to_le16(mcs_map); +- vht_cap->vht_mcs.tx_mcs_map = cpu_to_le16(mcs_map); +- vht_cap->cap = IEEE80211_VHT_CAP_RXLDPC | +- IEEE80211_VHT_CAP_TXSTBC | +- IEEE80211_VHT_CAP_RXSTBC_1 | +- IEEE80211_VHT_CAP_SHORT_GI_80; ++ vht_cap->vht_mcs.rx_mcs_map = cpu_to_le16(mcs_map); ++ vht_cap->vht_mcs.tx_mcs_map = cpu_to_le16(mcs_map); ++ vht_cap->cap = IEEE80211_VHT_CAP_RXLDPC | ++ IEEE80211_VHT_CAP_TXSTBC | ++ IEEE80211_VHT_CAP_RXSTBC_1 | ++ IEEE80211_VHT_CAP_SHORT_GI_80; ++ } + + dev->chandef.chan = &sband->channels[0]; + |