diff options
author | Bryan O'Donoghue <bryan.odonoghue@linaro.org> | 2020-06-18 16:43:25 +0100 |
---|---|---|
committer | Bryan O'Donoghue <bryan.odonoghue@linaro.org> | 2020-06-18 22:14:46 +0100 |
commit | dc739c43326756c35dc8c9c71085564839265017 (patch) | |
tree | 50570b09d6a6474ef9806d15a941ec47990c1c7c | |
parent | 63a53b11120a9590a8c990184d1e618fd8151f72 (diff) |
wcn36xx: Fix reported rx_highest ratetracking-5.7+wcn36xx-802.11.n+bluetooth-v1
Qualcomm's document "80-WL007-1 Rev. J" states that the highest rx rate for
the WCN3660 and WCN3680 on MCS 0-7 is 150 Mbps not the 72 stated here.
Given only the WCN3660 and WCN3680 can connect to 5Ghz frequencies the
value specified here is clearly incorrect.
72 Mbps is what the downstream Prima incorrectly reports for this value and
that spurious value appears to have been replicated into upstream.
Fixes: 8e84c2582169 ("wcn36xx: mac80211 driver for Qualcomm WCN3660/WCN3680
hardware")
Signed-off-by: Bryan O'Donoghue <bryan.odonoghue@linaro.org>
-rw-r--r-- | drivers/net/wireless/ath/wcn36xx/main.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/drivers/net/wireless/ath/wcn36xx/main.c b/drivers/net/wireless/ath/wcn36xx/main.c index 38cc91642d8d..f276b7423b0f 100644 --- a/drivers/net/wireless/ath/wcn36xx/main.c +++ b/drivers/net/wireless/ath/wcn36xx/main.c @@ -163,7 +163,7 @@ static struct ieee80211_supported_band wcn_band_5ghz = { .ampdu_density = IEEE80211_HT_MPDU_DENSITY_16, .mcs = { .rx_mask = { 0xff, 0, 0, 0, 0, 0, 0, 0, 0, 0, }, - .rx_highest = cpu_to_le16(72), + .rx_highest = cpu_to_le16(150), .tx_params = IEEE80211_HT_MCS_TX_DEFINED, } } @@ -1188,8 +1188,10 @@ static int wcn36xx_init_ieee80211(struct wcn36xx *wcn) BIT(NL80211_IFTYPE_MESH_POINT); wcn->hw->wiphy->bands[NL80211_BAND_2GHZ] = &wcn_band_2ghz; - if (wcn->rf_id != RF_IRIS_WCN3620) + if (wcn->rf_id != RF_IRIS_WCN3620) { + wcn_band_2ghz.ht_cap.mcs.rx_highest = cpu_to_le16(150); wcn->hw->wiphy->bands[NL80211_BAND_5GHZ] = &wcn_band_5ghz; + } wcn->hw->wiphy->max_scan_ssids = WCN36XX_MAX_SCAN_SSIDS; wcn->hw->wiphy->max_scan_ie_len = WCN36XX_MAX_SCAN_IE_LEN; |