|
@@ -717,6 +717,29 @@ static void ath10k_htt_rx_h_rates(struct ath10k *ar,
|
|
nss = 1;
|
|
nss = 1;
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ if (mcs > 0x09) {
|
|
|
|
+ ath10k_warn(ar, "invalid MCS received %u\n", mcs);
|
|
|
|
+ ath10k_warn(ar, "rxd %08x mpdu start %08x %08x msdu start %08x %08x ppdu start %08x %08x %08x %08x %08x\n",
|
|
|
|
+ __le32_to_cpu(rxd->attention.flags),
|
|
|
|
+ __le32_to_cpu(rxd->mpdu_start.info0),
|
|
|
|
+ __le32_to_cpu(rxd->mpdu_start.info1),
|
|
|
|
+ __le32_to_cpu(rxd->msdu_start.common.info0),
|
|
|
|
+ __le32_to_cpu(rxd->msdu_start.common.info1),
|
|
|
|
+ rxd->ppdu_start.info0,
|
|
|
|
+ __le32_to_cpu(rxd->ppdu_start.info1),
|
|
|
|
+ __le32_to_cpu(rxd->ppdu_start.info2),
|
|
|
|
+ __le32_to_cpu(rxd->ppdu_start.info3),
|
|
|
|
+ __le32_to_cpu(rxd->ppdu_start.info4));
|
|
|
|
+
|
|
|
|
+ ath10k_warn(ar, "msdu end %08x mpdu end %08x\n",
|
|
|
|
+ __le32_to_cpu(rxd->msdu_end.common.info0),
|
|
|
|
+ __le32_to_cpu(rxd->mpdu_end.info0));
|
|
|
|
+
|
|
|
|
+ ath10k_dbg_dump(ar, ATH10K_DBG_HTT_DUMP, NULL,
|
|
|
|
+ "rx desc msdu payload: ",
|
|
|
|
+ rxd->msdu_payload, 50);
|
|
|
|
+ }
|
|
|
|
+
|
|
status->rate_idx = mcs;
|
|
status->rate_idx = mcs;
|
|
status->vht_nss = nss;
|
|
status->vht_nss = nss;
|
|
|
|
|