Forráskód Böngészése

qcacmn: Added field to get valid sequence number

sequence number populated from tlv are incorrect for some frames.
Firmware populate correct sequence number for management and control
frame either in payload or tlv itself.

added field to get valid sequence number.

Change-Id: I21b1c34c0d66cb46c3a0baaaa231c952de065534
nobelj 4 éve
szülő
commit
5144f963ef
2 módosított fájl, 7 hozzáadás és 1 törlés
  1. 5 1
      dp/inc/cdp_txrx_cmn_struct.h
  2. 2 0
      dp/wifi3.0/dp_htt.c

+ 5 - 1
dp/inc/cdp_txrx_cmn_struct.h

@@ -1645,6 +1645,9 @@ struct cdp_delayed_tx_completion_ppdu_user {
  * @ppdu_type: SU/MU_MIMO/MU_OFDMA/MU_MIMO_OFDMA/UL_TRIG/BURST_BCN/UL_BSR_RESP/
  * @pream_punct: Preamble Punctured PPDU
  * UL_BSR_TRIG/UNKNOWN
+ * @is_seq_num_valid:
+ *       1 - stats tlv has valid sequence number
+ *       0 - payload has valid sequence number
  * @ba_seq_no: Block Ack sequence number
  * @ba_bitmap: Block Ack bitmap
  * @start_seqa: Sequence number of first MPDU
@@ -1695,7 +1698,8 @@ struct cdp_tx_completion_ppdu_user {
 		 tx_ratecode:16,
 		 is_ampdu:1,
 		 ppdu_type:5,
-		 pream_punct:1;
+		 pream_punct:1,
+		 is_seq_num_valid:1;
 	uint32_t success_bytes;
 	uint32_t retry_bytes;
 	uint32_t failed_bytes;

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

@@ -2521,6 +2521,8 @@ static void dp_process_ppdu_stats_user_common_tlv(
 		HTT_PPDU_STATS_USER_COMMON_TLV_MPDUS_TRIED_GET(*tag_buf);
 	}
 
+	ppdu_user_desc->is_seq_num_valid =
+	HTT_PPDU_STATS_USER_COMMON_TLV_IS_SQNUM_VALID_IN_BUFFER_GET(*tag_buf);
 	tag_buf++;
 
 	ppdu_user_desc->qos_ctrl =