qcacmn: Add debug statistics for monitor mode

qcacmn: Add debug statistics for monitor mode

Change-Id: I3fe59af1c7f561bd22f502eb5b19265ecd49ee69
CRs-Fixed: 2677656
This commit is contained in:
Amir
2020-05-03 17:52:43 +05:30
committed by nshrivas
parent 787adae107
commit d2e553e973
4 changed files with 17 additions and 0 deletions

View File

@@ -225,6 +225,8 @@ enum {
* mointor status and monitor destination ring * mointor status and monitor destination ring
* @ppdu_id_match: counter to track ppdu id match in * @ppdu_id_match: counter to track ppdu id match in
* mointor status and monitor destination ring * mointor status and monitor destination ring
* @status_ppdu_drop: Number of ppdu dropped from monitor status ring
* @dest_ppdu_drop: Number of ppdu dropped from monitor destination ring
*/ */
struct cdp_pdev_mon_stats { struct cdp_pdev_mon_stats {
#ifndef REMOVE_MON_DBG_STATS #ifndef REMOVE_MON_DBG_STATS
@@ -250,5 +252,7 @@ struct cdp_pdev_mon_stats {
uint32_t mon_rx_bufs_reaped_dest; uint32_t mon_rx_bufs_reaped_dest;
uint32_t ppdu_id_mismatch; uint32_t ppdu_id_mismatch;
uint32_t ppdu_id_match; uint32_t ppdu_id_match;
uint32_t status_ppdu_drop;
uint32_t dest_ppdu_drop;
}; };
#endif #endif

View File

@@ -6212,6 +6212,10 @@ dp_print_pdev_rx_mon_stats(struct dp_pdev *pdev)
rx_mon_stats->ppdu_id_mismatch); rx_mon_stats->ppdu_id_mismatch);
DP_PRINT_STATS("mpdu_ppdu_id_match_cnt = %d", DP_PRINT_STATS("mpdu_ppdu_id_match_cnt = %d",
rx_mon_stats->ppdu_id_match); rx_mon_stats->ppdu_id_match);
DP_PRINT_STATS("ppdus dropped frm status ring = %d",
rx_mon_stats->status_ppdu_drop);
DP_PRINT_STATS("ppdus dropped frm dest ring = %d",
rx_mon_stats->dest_ppdu_drop);
stat_ring_ppdu_ids = stat_ring_ppdu_ids =
(uint32_t *)qdf_mem_malloc(sizeof(uint32_t) * MAX_PPDU_ID_HIST); (uint32_t *)qdf_mem_malloc(sizeof(uint32_t) * MAX_PPDU_ID_HIST);
dest_ring_ppdu_ids = dest_ring_ppdu_ids =

View File

@@ -1884,6 +1884,12 @@ struct dp_pdev {
struct hal_rx_mon_desc_info *mon_desc; struct hal_rx_mon_desc_info *mon_desc;
#endif #endif
qdf_nbuf_t mcopy_status_nbuf; qdf_nbuf_t mcopy_status_nbuf;
/* Flag to hold on to monitor destination ring */
bool hold_mon_dest_ring;
/* Maintains first status buffer's paddr of a PPDU */
uint64_t status_buf_addr;
}; };
struct dp_peer; struct dp_peer;

View File

@@ -179,6 +179,8 @@
* @status_buf: for a PPDU, status buffers can span acrosss * @status_buf: for a PPDU, status buffers can span acrosss
* multiple buffers, status_buf points to first * multiple buffers, status_buf points to first
* status buffer address of PPDU * status buffer address of PPDU
* @drop_ppdu: flag to indicate current destination
* ring ppdu drop
*/ */
struct hal_rx_mon_desc_info { struct hal_rx_mon_desc_info {
uint16_t ppdu_id; uint16_t ppdu_id;
@@ -189,6 +191,7 @@ struct hal_rx_mon_desc_info {
uint8_t end_of_ppdu; uint8_t end_of_ppdu;
struct hal_buf_info link_desc; struct hal_buf_info link_desc;
struct hal_buf_info status_buf; struct hal_buf_info status_buf;
bool drop_ppdu;
}; };
/* /*