Message ID | 20190509201550.3977-5-john@phrozen.org (mailing list archive) |
---|---|
State | Changes Requested |
Delegated to: | Kalle Valo |
Headers | show |
Series | ath11k: add HE support | expand |
John Crispin <john@phrozen.org> writes: > The case clause handling HE frames was not handled yet in the code reading > the RX status. The new case is identical to VHT with the difference of the > higher maximum MCS rate. > > Signed-off-by: Shashidhar Lakkavalli <slakkavalli@datto.com> > Signed-off-by: John Crispin <john@phrozen.org> > --- > drivers/net/wireless/ath/ath11k/dp_rx.c | 13 ++++++++++++- > 1 file changed, 12 insertions(+), 1 deletion(-) > > diff --git a/drivers/net/wireless/ath/ath11k/dp_rx.c b/drivers/net/wireless/ath/ath11k/dp_rx.c > index c8fa2681ddb0..82cb3f84df32 100644 > --- a/drivers/net/wireless/ath/ath11k/dp_rx.c > +++ b/drivers/net/wireless/ath/ath11k/dp_rx.c > @@ -1718,7 +1718,18 @@ static void ath11k_dp_rx_h_rate(struct ath11k *ar, void *rx_desc, > rx_status->bw = ath11k_bw_to_mac80211_bw(bw); > break; > case RX_MSDU_START_PKT_TYPE_11AX: > - ath11k_warn(ar->ab, "pkt_type %d not yet supported\n", pkt_type); > + rx_status->rate_idx = rate_mcs; > + if (rate_mcs > 11) { A define would be nice, ATH11K_MCS_MAX or something like that.
diff --git a/drivers/net/wireless/ath/ath11k/dp_rx.c b/drivers/net/wireless/ath/ath11k/dp_rx.c index c8fa2681ddb0..82cb3f84df32 100644 --- a/drivers/net/wireless/ath/ath11k/dp_rx.c +++ b/drivers/net/wireless/ath/ath11k/dp_rx.c @@ -1718,7 +1718,18 @@ static void ath11k_dp_rx_h_rate(struct ath11k *ar, void *rx_desc, rx_status->bw = ath11k_bw_to_mac80211_bw(bw); break; case RX_MSDU_START_PKT_TYPE_11AX: - ath11k_warn(ar->ab, "pkt_type %d not yet supported\n", pkt_type); + rx_status->rate_idx = rate_mcs; + if (rate_mcs > 11) { + ath11k_warn(ar->ab, + "Received with invalid mcs in HE mode %d\n", + rate_mcs); + break; + } + rx_status->encoding = RX_ENC_HE; + rx_status->nss = nss; + if (sgi) + rx_status->enc_flags |= RX_ENC_FLAG_SHORT_GI; + rx_status->bw = ath11k_bw_to_mac80211_bw(bw); break; } }