ath10k: first qca6174 hw2.1 firmware released
Michal Kazior
michal.kazior at tieto.com
Tue Aug 25 22:01:48 PDT 2015
On 25 August 2015 at 16:04, Lapo Calamandrei <calamandrei at gmail.com> wrote:
[...]
> Yep, the previous crash was without your patch applied, the following
> is with the patch applied though.
>
> iw list output:
[...]
> Band 2:
> Capabilities: 0x19e3
> RX LDPC
> HT20/HT40
> Static SM Power Save
> RX HT20 SGI
> RX HT40 SGI
> TX STBC
> RX STBC 1-stream
> Max AMSDU length: 7935 bytes
> DSSS/CCK HT40
> Maximum RX AMPDU length 65535 bytes (exponent: 0x003)
> Minimum RX AMPDU time spacing: 8 usec (0x06)
> HT TX/RX MCS rate indexes supported: 0-15
> VHT Capabilities (0x339011b2):
> Max MPDU length: 11454
> Supported Channel Width: neither 160 nor 80+80
> RX LDPC
> short GI (80 MHz)
> TX STBC
> SU Beamformee
> MU Beamformee
[...]
Sorry, my bad. The diff I provided earlier wasn't correct (it was a
quick hack-idea I didn't test myself).
The correct thing that should work is:
--- a/drivers/net/wireless/ath/ath10k/mac.c
+++ b/drivers/net/wireless/ath/ath10k/mac.c
@@ -6798,27 +6798,14 @@ static struct ieee80211_sta_vht_cap
ath10k_create_vht_cap(struct ath10k *ar)
u32 val;
int i;
+ ar->vht_cap_info &= ~(IEEE80211_VHT_CAP_SU_BEAMFORMEE_CAPABLE |
+ IEEE80211_VHT_CAP_MU_BEAMFORMEE_CAPABLE |
+ IEEE80211_VHT_CAP_SU_BEAMFORMER_CAPABLE |
+ IEEE80211_VHT_CAP_MU_BEAMFORMER_CAPABLE);
+
vht_cap.vht_supported = 1;
vht_cap.cap = ar->vht_cap_info;
- if (ar->vht_cap_info & (IEEE80211_VHT_CAP_SU_BEAMFORMEE_CAPABLE |
- IEEE80211_VHT_CAP_MU_BEAMFORMEE_CAPABLE)) {
- val = ar->num_rf_chains - 1;
- val <<= IEEE80211_VHT_CAP_BEAMFORMEE_STS_SHIFT;
- val &= IEEE80211_VHT_CAP_BEAMFORMEE_STS_MASK;
-
- vht_cap.cap |= val;
- }
-
- if (ar->vht_cap_info & (IEEE80211_VHT_CAP_SU_BEAMFORMER_CAPABLE |
- IEEE80211_VHT_CAP_MU_BEAMFORMER_CAPABLE)) {
- val = ar->num_rf_chains - 1;
- val <<= IEEE80211_VHT_CAP_SOUNDING_DIMENSIONS_SHIFT;
- val &= IEEE80211_VHT_CAP_SOUNDING_DIMENSIONS_MASK;
-
- vht_cap.cap |= val;
- }
-
mcs_map = 0;
for (i = 0; i < 8; i++) {
if (i < ar->num_rf_chains)
Michał
More information about the ath10k
mailing list