diff --git a/dp/inc/cdp_txrx_cmn_struct.h b/dp/inc/cdp_txrx_cmn_struct.h index a66235c330a5..7da523d62bdf 100644 --- a/dp/inc/cdp_txrx_cmn_struct.h +++ b/dp/inc/cdp_txrx_cmn_struct.h @@ -97,6 +97,7 @@ #define CDP_INVALID_TID 31 #define CDP_DATA_TID_MAX 8 +#define CDP_DATA_NON_QOS_TID 16 /* * advance rx monitor filter * */ diff --git a/dp/wifi3.0/dp_htt.c b/dp/wifi3.0/dp_htt.c index f1833bc32d89..4e9c65490fe7 100644 --- a/dp/wifi3.0/dp_htt.c +++ b/dp/wifi3.0/dp_htt.c @@ -2611,7 +2611,13 @@ void dp_ppdu_desc_deliver(struct dp_pdev *pdev, dp_peer_unref_del_find_by_id(peer); continue; } - if (ppdu_desc->user[i].tid < CDP_DATA_TID_MAX) { + /** + * Update tx stats for data frames having Qos as well as + * non-Qos data tid + */ + if ((ppdu_desc->user[i].tid < CDP_DATA_TID_MAX || + (ppdu_desc->user[i].tid == CDP_DATA_NON_QOS_TID)) && + (ppdu_desc->frame_type == CDP_PPDU_FTYPE_DATA)) { dp_tx_stats_update(pdev->soc, peer, &ppdu_desc->user[i],