فهرست منبع

qcacmn: Change the BW mapping on host side according to FW

Stats counters for BW were not updated correctly
due to difference in mapping of BW on host and FW

Also fix the Rx Stats to account for TCP Ack count

Change-Id: I7e844a7032e7968c110c7a0f8c45b0349a5cb818
Pranita Solanke 7 سال پیش
والد
کامیت
d7e10baaa9
4فایلهای تغییر یافته به همراه15 افزوده شده و 13 حذف شده
  1. 9 9
      dp/inc/cdp_txrx_cmn_struct.h
  2. 2 2
      dp/wifi3.0/dp_main.c
  3. 1 1
      dp/wifi3.0/dp_types.h
  4. 3 1
      hal/wifi3.0/hal_api_mon.h

+ 9 - 9
dp/inc/cdp_txrx_cmn_struct.h

@@ -56,7 +56,7 @@
 /* 1 additional GI is for invalid values */
 /* 1 additional GI is for invalid values */
 #define MAX_GI (4 + 1)
 #define MAX_GI (4 + 1)
 #define SS_COUNT 8
 #define SS_COUNT 8
-#define MAX_BW 4
+#define MAX_BW 7
 #define MAX_RECEPTION_TYPES 4
 #define MAX_RECEPTION_TYPES 4
 
 
 /* Options for Dump Statistics */
 /* Options for Dump Statistics */
@@ -1117,10 +1117,10 @@ struct cdp_pdev_stats {
  * @he_re: he_re (range extension)
  * @he_re: he_re (range extension)
  * @txbf: txbf
  * @txbf: txbf
  * @bw: Transmission bandwidth
  * @bw: Transmission bandwidth
- *       <enum 0 transmit_bw_20_MHz>
- *       <enum 1 transmit_bw_40_MHz>
- *       <enum 2 transmit_bw_80_MHz>
- *       <enum 3 transmit_bw_160_MHz>
+ *       <enum 2 transmit_bw_20_MHz>
+ *       <enum 3 transmit_bw_40_MHz>
+ *       <enum 4 transmit_bw_80_MHz>
+ *       <enum 5 transmit_bw_160_MHz>
  * @nss: NSS 1,2, ...8
  * @nss: NSS 1,2, ...8
  * @mcs: MCS index
  * @mcs: MCS index
  * @preamble: preamble
  * @preamble: preamble
@@ -1217,10 +1217,10 @@ struct cdp_tx_completion_ppdu {
 /**
 /**
  * struct cdp_rate_stats - Tx/Rx Rate statistics
  * struct cdp_rate_stats - Tx/Rx Rate statistics
  * @bw: Indicates the BW of the upcoming transmission -
  * @bw: Indicates the BW of the upcoming transmission -
- *       <enum 0 transmit_bw_20_MHz>
- *       <enum 1 transmit_bw_40_MHz>
- *       <enum 2 transmit_bw_80_MHz>
- *       <enum 3 transmit_bw_160_MHz>
+ *       <enum 2 transmit_bw_20_MHz>
+ *       <enum 3 transmit_bw_40_MHz>
+ *       <enum 4 transmit_bw_80_MHz>
+ *       <enum 5 transmit_bw_160_MHz>
  * @pkt_type: Transmit Packet Type
  * @pkt_type: Transmit Packet Type
  * @stbc: When set, STBC transmission rate was used
  * @stbc: When set, STBC transmission rate was used
  * @ldpc: When set, use LDPC transmission rates
  * @ldpc: When set, use LDPC transmission rates

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

@@ -4606,8 +4606,8 @@ static inline void dp_print_peer_stats(struct dp_peer *peer)
 			peer->stats.tx.sgi_count[2],
 			peer->stats.tx.sgi_count[2],
 			peer->stats.tx.sgi_count[3]);
 			peer->stats.tx.sgi_count[3]);
 	DP_PRINT_STATS("BW Counts = 20MHZ %d 40MHZ %d 80MHZ %d 160MHZ %d\n",
 	DP_PRINT_STATS("BW Counts = 20MHZ %d 40MHZ %d 80MHZ %d 160MHZ %d\n",
-			peer->stats.tx.bw[0], peer->stats.tx.bw[1],
-			peer->stats.tx.bw[2], peer->stats.tx.bw[3]);
+			peer->stats.tx.bw[2], peer->stats.tx.bw[3],
+			peer->stats.tx.bw[4], peer->stats.tx.bw[5]);
 
 
 	DP_PRINT_STATS("Aggregation:");
 	DP_PRINT_STATS("Aggregation:");
 	DP_PRINT_STATS("	Number of Msdu's Part of Amsdu = %d",
 	DP_PRINT_STATS("	Number of Msdu's Part of Amsdu = %d",

+ 1 - 1
dp/wifi3.0/dp_types.h

@@ -48,7 +48,7 @@
 #include <hal_api_mon.h>
 #include <hal_api_mon.h>
 #include "hal_rx.h"
 #include "hal_rx.h"
 
 
-#define MAX_BW 4
+#define MAX_BW 7
 #define MAX_RETRIES 4
 #define MAX_RETRIES 4
 #define MAX_RECEPTION_TYPES 4
 #define MAX_RECEPTION_TYPES 4
 
 

+ 3 - 1
hal/wifi3.0/hal_api_mon.h

@@ -538,7 +538,9 @@ hal_rx_status_get_tlv_info(void *rx_tlv, struct hal_rx_ppdu_info *ppdu_info)
 						MCS);
 						MCS);
 		ppdu_info->rx_status.tcp_msdu_count =
 		ppdu_info->rx_status.tcp_msdu_count =
 			HAL_RX_GET(rx_tlv, RX_PPDU_END_USER_STATS_9,
 			HAL_RX_GET(rx_tlv, RX_PPDU_END_USER_STATS_9,
-						TCP_MSDU_COUNT);
+					TCP_MSDU_COUNT) +
+			HAL_RX_GET(rx_tlv, RX_PPDU_END_USER_STATS_10,
+					TCP_ACK_MSDU_COUNT);
 		ppdu_info->rx_status.udp_msdu_count =
 		ppdu_info->rx_status.udp_msdu_count =
 			HAL_RX_GET(rx_tlv, RX_PPDU_END_USER_STATS_9,
 			HAL_RX_GET(rx_tlv, RX_PPDU_END_USER_STATS_9,
 						UDP_MSDU_COUNT);
 						UDP_MSDU_COUNT);