Pārlūkot izejas kodu

fw-api: CL 27407027 - update fw common interface files

Change-Id: Ie96cc4822bb6c6216cfe20a1d9a9ca5d23894766
CRs-Fixed: 3830439
spuligil 7 mēneši atpakaļ
vecāks
revīzija
fccfe234c1
4 mainītis faili ar 32 papildinājumiem un 2 dzēšanām
  1. 1 0
      fw/htt.h
  2. 23 0
      fw/htt_stats.h
  3. 7 1
      fw/wmi_unified.h
  4. 1 1
      fw/wmi_version.h

+ 1 - 0
fw/htt.h

@@ -833,6 +833,7 @@ typedef enum {
     HTT_STATS_TX_PDEV_WIFI_RADAR_TAG                = 200, /* htt_stats_tx_pdev_wifi_radar_tlv */
     HTT_STATS_TXBF_OFDMA_BE_PARBW_TAG               = 201, /* htt_stats_txbf_ofdma_be_parbw_tlv */
     HTT_STATS_RX_PDEV_RSSI_HIST_TAG                 = 202, /* htt_stats_rx_pdev_rssi_hist_tlv */
+    HTT_STATS_TX_VDEV_NSS_TAG                       = 203, /* htt_stats_tx_vdev_nss_tlv */
 
     HTT_STATS_MAX_TAG,
 } htt_stats_tlv_tag_t;

+ 23 - 0
fw/htt_stats.h

@@ -676,6 +676,14 @@ enum htt_dbg_ext_stats_type {
      */
     HTT_DBG_GTX_STATS = 68,
 
+    /** HTT_DBG_EXT_STATS_TX_VDEV_NSS
+     * PARAMS:
+     *   - No Params
+     * RESP MSG:
+     *    - htt_stats_tx_vdev_nss_tlv
+     */
+    HTT_DBG_EXT_STATS_TX_VDEV_NSS = 69,
+
 
     /* keep this last */
     HTT_DBG_NUM_EXT_STATS = 256,
@@ -5406,6 +5414,7 @@ typedef struct {
 #define HTT_TX_PDEV_STATS_NUM_LTF 4
 #define HTT_TX_PDEV_STATS_NUM_11AX_TRIGGER_TYPES 6
 #define HTT_TX_PDEV_STATS_NUM_11BE_TRIGGER_TYPES 6
+#define HTT_TX_VDEV_STATS_NUM_SPATIAL_STREAMS 4
 #define HTT_TX_NUM_OF_SOUNDING_STATS_WORDS \
     (HTT_TX_PDEV_STATS_NUM_BW_COUNTERS * \
      HTT_TX_PDEV_STATS_NUM_AX_MUMIMO_USER_STATS)
@@ -5625,6 +5634,20 @@ typedef struct {
 /* preserve old name alias for new name consistent with the tag name */
 typedef htt_stats_tx_pdev_rate_stats_tlv htt_tx_pdev_rate_stats_tlv;
 
+typedef struct {
+    htt_tlv_hdr_t tlv_hdr;
+    A_UINT32 vdev_id; /* which vdev produced these per-Nss tx stats */
+    /* tx_nss:
+     * Count how many MPDUs the vdev has sent using each possible number
+     * of spatial streams:
+     * tx_nss[0] -> number of MPDUs transmitted using Nss=1
+     * tx_nss[1] -> number of MPDUs transmitted using Nss=2
+     * tx_nss[2] -> number of MPDUs transmitted using Nss=3
+     * tx_nss[3] -> number of MPDUs transmitted using Nss=4
+     */
+    A_UINT32 tx_nss[HTT_TX_VDEV_STATS_NUM_SPATIAL_STREAMS];
+} htt_stats_tx_vdev_nss_tlv;
+
 typedef struct {
      /* 11be mode pdev rate stats; placed in a separate TLV to adhere to size restrictions */
     htt_tlv_hdr_t tlv_hdr;

+ 7 - 1
fw/wmi_unified.h

@@ -3520,6 +3520,11 @@ typedef struct {
 #define WMI_TARGET_CAP_QDATA_TX_LCE_FILTER_SUPPORT_SET(target_cap_flags, value)\
     WMI_SET_BITS(target_cap_flags, 15, 1, value)
 
+#define WMI_TARGET_CAP_MPDU_STATS_PER_TX_NSS_SUPPORT_GET(target_cap_flags) \
+    WMI_GET_BITS(target_cap_flags, 16, 1)
+#define WMI_TARGET_CAP_MPDU_STATS_PER_TX_NSS_SUPPORT_SET(target_cap_flags, value)\
+    WMI_SET_BITS(target_cap_flags, 16, 1, value)
+
 
 /*
  * wmi_htt_msdu_idx_to_htt_msdu_qtype GET/SET APIs
@@ -3666,7 +3671,8 @@ typedef struct {
      * Bit 13 - Support for multipass SAP
      * Bit 14 - Support for ML monitor mode
      * Bit 15 - Support for Qdata Tx LCE filter installation
-     * Bits 31:16 - Reserved
+     * Bit 16 - Support for MPDU stats per tx Nss capability
+     * Bits 31:17 - Reserved
      */
     A_UINT32 target_cap_flags;
 

+ 1 - 1
fw/wmi_version.h

@@ -37,7 +37,7 @@
 #define __WMI_VER_MINOR_    0
 /** WMI revision number has to be incremented when there is a
  *  change that may or may not break compatibility. */
-#define __WMI_REVISION_ 1511
+#define __WMI_REVISION_ 1512
 
 /** The Version Namespace should not be normally changed. Only
  *  host and firmware of the same WMI namespace will work