Jelajahi Sumber

qcacmn: Consider tqm bypass frames for stats accounting

Parse the tqm bypass frames packet count and byte count and consider
them for stats updation in the vdev.

Change-Id: I644eb9819b8a68fbf9da2e2f2588c80dfaa61fa5
CRs-Fixed: 3163215
Harsh Kumar Bijlani 3 tahun lalu
induk
melakukan
84a762d85d
2 mengubah file dengan 14 tambahan dan 0 penghapusan
  1. 12 0
      dp/wifi3.0/dp_htt.c
  2. 2 0
      dp/wifi3.0/dp_htt.h

+ 12 - 0
dp/wifi3.0/dp_htt.c

@@ -2401,6 +2401,18 @@ static void dp_vdev_txrx_hw_stats_handler(struct htt_soc *soc,
 			tx_comp.bytes += byte_count;
 			tx_failed.bytes += byte_count;
 
+			/* Extract tqm bypass packet count from buffer */
+			tag_buf = tlv_buf_temp +
+				HTT_VDEV_STATS_GET_INDEX(TX_TQM_BYPASS_PKT_CNT);
+			pkt_count = HTT_VDEV_GET_STATS_U64(tag_buf);
+			tx_comp.num += pkt_count;
+
+			/* Extract tx bypass packet byte count from buffer */
+			tag_buf = tlv_buf_temp +
+				HTT_VDEV_STATS_GET_INDEX(TX_TQM_BYPASS_BYTE_CNT);
+			byte_count = HTT_VDEV_GET_STATS_U64(tag_buf);
+			tx_comp.bytes += byte_count;
+
 			DP_STATS_UPD(vdev, tx.comp_pkt.num, tx_comp.num);
 			DP_STATS_UPD(vdev, tx.comp_pkt.bytes, tx_comp.bytes);
 

+ 2 - 0
dp/wifi3.0/dp_htt.h

@@ -159,6 +159,8 @@ void htt_htc_pkt_pool_free(struct htt_soc *soc);
 #define HTT_VDEV_STATS_TLV_TX_RETRY_BYTE_CNT_OFFSET   16
 #define HTT_VDEV_STATS_TLV_TX_DROP_BYTE_CNT_OFFSET    18
 #define HTT_VDEV_STATS_TLV_TX_AGE_OUT_BYTE_CNT_OFFSET 20
+#define HTT_VDEV_STATS_TLV_TX_TQM_BYPASS_PKT_CNT_OFFSET  22
+#define HTT_VDEV_STATS_TLV_TX_TQM_BYPASS_BYTE_CNT_OFFSET 24
 
 #define HTT_VDEV_STATS_GET_INDEX(index) \
 	HTT_VDEV_STATS_TLV_##index##_OFFSET