qcacmn: Driver provides rx rates info instead of FW

Driver is able to get rates info per MSDU, which can
exclude special frames like ARP, DHCP, etc. This change
is to refill the rates info parsing by rateflags from FW,
including legacy rate, MCS, NSS, BW, preamble, GI, etc.

Change-Id: I129d5f0dc48758d1a92ac0c3622c1761cdae8286
CRs-Fixed: 3255467
This commit is contained in:
jinbaoliu
2022-08-04 00:05:05 -07:00
committed by Madan Koyyalamudi
parent 716388fe19
commit d1a40c701e

View File

@@ -2167,7 +2167,7 @@ dp_rx_rates_stats_update(struct dp_soc *soc, qdf_nbuf_t nbuf,
/* here pkt_type corresponds to preamble */
ratekbps = dp_getrateindex(sgi,
mcs,
nss,
nss - 1,
pkt_type,
bw,
punc_mode,
@@ -2178,9 +2178,14 @@ dp_rx_rates_stats_update(struct dp_soc *soc, qdf_nbuf_t nbuf,
dp_ath_rate_lpf(txrx_peer->stats.extd_stats.rx.avg_rx_rate,
ratekbps);
DP_PEER_EXTD_STATS_UPD(txrx_peer, rx.avg_rx_rate, avg_rx_rate);
DP_PEER_EXTD_STATS_UPD(txrx_peer, rx.nss_info, nss);
DP_PEER_EXTD_STATS_UPD(txrx_peer, rx.mcs_info, mcs);
DP_PEER_EXTD_STATS_UPD(txrx_peer, rx.bw_info, bw);
DP_PEER_EXTD_STATS_UPD(txrx_peer, rx.gi_info, sgi);
DP_PEER_EXTD_STATS_UPD(txrx_peer, rx.preamble_info, pkt_type);
}
#else
static void
static inline void
dp_rx_rates_stats_update(struct dp_soc *soc, qdf_nbuf_t nbuf,
uint8_t *rx_tlv_hdr, struct dp_txrx_peer *txrx_peer,
uint32_t sgi, uint32_t mcs,