qcacmn: Add monitor mode ppdu and mpdu stats

Add monitor mode status ring ppdu stats and destination
ring ppdu/mpdu stats

Change-Id: I702172f40ffc0915b630dd3781a697199bdd20fd
diff --git a/dp/wifi3.0/dp_rx_mon_status.c b/dp/wifi3.0/dp_rx_mon_status.c
index 20d022b..70431df 100644
--- a/dp/wifi3.0/dp_rx_mon_status.c
+++ b/dp/wifi3.0/dp_rx_mon_status.c
@@ -332,8 +332,10 @@
 	uint8_t *rx_tlv_start;
 	uint32_t tlv_status = HAL_TLV_STATUS_BUF_DONE;
 	QDF_STATUS m_copy_status = QDF_STATUS_SUCCESS;
+	struct cdp_pdev_mon_stats *rx_mon_stats;
 
 	ppdu_info = &pdev->ppdu_info;
+	rx_mon_stats = &pdev->rx_mon_stats;
 
 	if (pdev->mon_ppdu_status != DP_PPDU_STATUS_START)
 		return;
@@ -356,6 +358,10 @@
 			do {
 				tlv_status = hal_rx_status_get_tlv_info(rx_tlv,
 						ppdu_info);
+
+				dp_rx_mon_update_dbg_ppdu_stats(ppdu_info,
+								rx_mon_stats);
+
 				rx_tlv = hal_rx_status_get_next_tlv(rx_tlv);
 
 				if ((rx_tlv - rx_tlv_start) >= RX_BUFFER_SIZE)
@@ -374,6 +380,7 @@
 		}
 
 		if (tlv_status == HAL_TLV_STATUS_PPDU_DONE) {
+			rx_mon_stats->status_ppdu_done++;
 			if (pdev->enhanced_stats_en ||
 					pdev->mcopy_mode)
 				dp_rx_handle_ppdu_stats(soc, pdev, ppdu_info);
@@ -831,8 +838,15 @@
 
 	pdev->mon_ppdu_status = DP_PPDU_STATUS_START;
 	pdev->ppdu_info.com_info.last_ppdu_id = 0;
+
 	qdf_mem_zero(&(pdev->ppdu_info.rx_status),
 		sizeof(pdev->ppdu_info.rx_status));
 
+	qdf_mem_zero(&pdev->rx_mon_stats,
+		     sizeof(pdev->rx_mon_stats));
+
+	dp_rx_mon_init_dbg_ppdu_stats(&pdev->ppdu_info,
+				      &pdev->rx_mon_stats);
+
 	return QDF_STATUS_SUCCESS;
 }