qcacmn: Add stats on OFDMA and MU-MIMO packet

Add MCS, NSS, MPDU FCS OK, MPDU FCS ERR stats
classified by SU, OFDMA and MU-MIMO.

Change-Id: I3ade03acc06bd924fdeb8dfcaf6b18fb01f01d68
This commit is contained in:
Kai Chen
2019-10-14 17:42:24 -07:00
committed by nshrivas
parent 7ce41f14c1
commit a8cf59455e
6 changed files with 437 additions and 150 deletions

View File

@@ -195,6 +195,18 @@ enum cdp_packet_type {
DOT11_MAX = 5,
};
/*
* cdp_mu_packet_type: MU Rx type index
* RX_TYPE_MU_MIMO: MU MIMO Rx type index
* RX_TYPE_MU_OFDMA: MU OFDMA Rx type index
* MU_MIMO_OFDMA: MU Rx MAX type index
*/
enum cdp_mu_packet_type {
RX_TYPE_MU_MIMO = 0,
RX_TYPE_MU_OFDMA = 1,
RX_TYPE_MU_MAX = 2,
};
enum WDI_EVENT {
WDI_EVENT_TX_STATUS = WDI_EVENT_BASE,
WDI_EVENT_OFFLOAD_ALL,
@@ -445,6 +457,20 @@ struct cdp_pkt_type {
uint32_t mcs_count[MAX_MCS];
};
/*
* struct cdp_rx_mu - Rx MU Stats
* @ppdu_nss[SS_COUNT]: Packet Count in spatial streams
* @mpdu_cnt_fcs_ok: Rx success mpdu count
* @mpdu_cnt_fcs_err: Rx fail mpdu count
* @cdp_pkt_type: counter array for each MCS index
*/
struct cdp_rx_mu {
uint32_t ppdu_nss[SS_COUNT];
uint32_t mpdu_cnt_fcs_ok;
uint32_t mpdu_cnt_fcs_err;
struct cdp_pkt_type ppdu;
};
/* struct cdp_tx_pkt_info - tx packet info
* num_msdu - successful msdu
* num_mpdu - successful mpdu from compltn common
@@ -706,7 +732,13 @@ struct cdp_tx_stats {
* @reception_type[MAX_RECEPTION_TYPES]: Reception type os packets
* @mcs_count[MAX_MCS]: mcs count
* @sgi_count[MAX_GI]: sgi count
* @nss[SS_COUNT]: Packet count in spatiel Streams
* @nss[SS_COUNT]: packet count in spatiel Streams
* @ppdu_nss[SS_COUNT]: PPDU packet count in spatial streams
* @mpdu_cnt_fcs_ok: SU Rx success mpdu count
* @mpdu_cnt_fcs_err: SU Rx fail mpdu count
* @su_ax_ppdu_cnt: SU Rx packet count
* @ppdu_cnt[MAX_RECEPTION_TYPES]: PPDU packet count in reception type
* @rx_mu[RX_TYPE_MU_MAX]: Rx MU stats
* @bw[MAX_BW]: Packet Count in different bandwidths
* @non_ampdu_cnt: Number of MSDUs with no MPDU level aggregation
* @ampdu_cnt: Number of MSDUs part of AMSPU
@@ -767,6 +799,12 @@ struct cdp_rx_stats {
struct cdp_pkt_type pkt_type[DOT11_MAX];
uint32_t sgi_count[MAX_GI];
uint32_t nss[SS_COUNT];
uint32_t ppdu_nss[SS_COUNT];
uint32_t mpdu_cnt_fcs_ok;
uint32_t mpdu_cnt_fcs_err;
struct cdp_pkt_type su_ax_ppdu_cnt;
uint32_t ppdu_cnt[MAX_RECEPTION_TYPES];
struct cdp_rx_mu rx_mu[RX_TYPE_MU_MAX];
uint32_t bw[MAX_BW];
uint32_t non_ampdu_cnt;
uint32_t ampdu_cnt;