QCA9984 VHT160 support
Michal Kazior
michal.kazior at tieto.com
Tue May 17 05:00:24 PDT 2016
On 17 May 2016 at 13:43, Sebastian Gottschall <s.gottschall at dd-wrt.com> wrote:
> Attached you will find a testing patch for VHT160 support. i tested it today
> on a QCA9984 device and it seems to work.
> feel free to make any corrections
Hi,
Send patches inline, please. Preferably via git send-email. It's a lot
easier to review them this way.
>From a quick glance vht capabilities setup looks weird:
> if (ar->vht_cap_info & IEEE80211_VHT_CAP_SHORT_GI_160) {
> vht_cap.cap |= IEEE80211_VHT_CAP_SUPP_CHAN_WIDTH_160MHZ;
> vht_cap.cap |= IEEE80211_VHT_CAP_SUPP_CHAN_WIDTH_160_80PLUS80MHZ;
> }
Why? Is this really necessary?
I would expect IEEE80211_VHT_CAP_SUPP_CHAN_WIDTH_160MHZ and
IEEE80211_VHT_CAP_SUPP_CHAN_WIDTH_160_80PLUS80MHZ to be already set in
ar->vht_cap_info if the chip supports 160 or 80+80.
You also don't seem to handle 80+80 because you just as phymode to 160
regardless of center frequencies:
> !ath10k_peer_assoc_h_vht_masked(vht_mcs_mask)) {
> if (sta->bandwidth == IEEE80211_STA_RX_BW_80)
> phymode = MODE_11AC_VHT80;
> else if (sta->bandwidth == IEEE80211_STA_RX_BW_160)
> phymode = MODE_11AC_VHT160;
> else if (sta->bandwidth == IEEE80211_STA_RX_BW_40)
> phymode = MODE_11AC_VHT40;
> else if (sta->bandwidth == IEEE80211_STA_RX_BW_20)
You should probably look at sta->vht_cap and associated chanctx to
check if it isn't 80+80.
Michał
More information about the ath10k
mailing list