qcacmn: Add debug counter for monitor mode

Add debug count for count MPDU received based on preamble type,
reception type, UL/DL and user for max 4 user for MU monitor
mode

Change-Id: I87f1553e1f2f8276501366a825d629cf051d8a80
CRs-Fixed: 3326272
This commit is contained in:
Kai Chen
2022-10-04 10:29:49 -07:00
committed by Madan Koyyalamudi
parent 604581a51d
commit 83521665e6
6 changed files with 280 additions and 2 deletions

View File

@@ -71,6 +71,10 @@ enum cdp_lite_mon_direction {
CDP_LITE_MON_DIRECTION_TX = 2,
};
#endif
/* MU max user to sniff */
#define CDP_MU_SNIF_USER_MAX 4
/* Same as MAX_20MHZ_SEGMENTS */
#define CDP_MAX_20MHZ_SEGS 16
/* Same as MAX_ANTENNA_EIGHT */
@@ -130,6 +134,9 @@ enum {
CDP_PKT_TYPE_HT,
CDP_PKT_TYPE_VHT,
CDP_PKT_TYPE_HE,
CDP_PKT_TYPE_EHT,
CDP_PKT_TYPE_NO_SUP,
CDP_PKT_TYPE_MAX,
};
enum {
@@ -144,6 +151,13 @@ enum {
CDP_RX_TYPE_MU_MIMO,
CDP_RX_TYPE_MU_OFDMA,
CDP_RX_TYPE_MU_OFDMA_MIMO,
CDP_RX_TYPE_MAX,
};
enum {
CDP_MU_TYPE_DL = 0,
CDP_MU_TYPE_UL,
CDP_MU_TYPE_MAX,
};
/*
@@ -360,6 +374,10 @@ enum cdp_mon_phyrx_abort_reason_code {
* @status_ppdu_compl: status ring matching start and end count on PPDU
* @status_ppdu_start_mis: status ring missing start TLV count on PPDU
* @status_ppdu_end_mis: status ring missing end TLV count on PPDU
* @mpdu_cnt_fcs_ok: MPDU ok count per pkt and reception type DL-UL and user
* @mpdu_cnt_fcs_err: MPDU err count per pkt and reception type DL-UL and user
* @end_user_stats_cnt: PPDU end user TLV count
* @start_user_info_cnt: PPDU start user info TLV count
* @status_ppdu_done: status ring PPDU done TLV count
* @dest_ppdu_done: destination ring PPDU count
* @dest_mpdu_done: destination ring MPDU count
@@ -404,6 +422,12 @@ struct cdp_pdev_mon_stats {
uint32_t status_ppdu_start_mis;
uint32_t status_ppdu_end_mis;
#endif
uint32_t mpdu_cnt_fcs_ok[CDP_PKT_TYPE_MAX][CDP_RX_TYPE_MAX]
[CDP_MU_TYPE_MAX][CDP_MU_SNIF_USER_MAX];
uint32_t mpdu_cnt_fcs_err[CDP_PKT_TYPE_MAX][CDP_RX_TYPE_MAX]
[CDP_MU_TYPE_MAX][CDP_MU_SNIF_USER_MAX];
uint32_t end_user_stats_cnt;
uint32_t start_user_info_cnt;
uint32_t status_ppdu_done;
uint32_t dest_ppdu_done;
uint32_t dest_mpdu_done;