Ver código fonte

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

add WMI_PDEV_RSSI_ANTID_EVENTID to deliver antenna diversity info to host

Change-Id: I458f2b1a41c84bfd107a6f7f47f96622e958cb15
CRs-Fixed: 1107600
Sandeep Puligilla 8 anos atrás
pai
commit
4aa0462122
3 arquivos alterados com 24 adições e 1 exclusões
  1. 7 0
      fw/wmi_tlv_defs.h
  2. 16 0
      fw/wmi_unified.h
  3. 1 1
      fw/wmi_version.h

+ 7 - 0
fw/wmi_tlv_defs.h

@@ -827,6 +827,7 @@ typedef enum {
     WMITLV_TAG_STRUC_wmi_therm_throt_level_config_info,
     WMITLV_TAG_STRUC_wmi_therm_throt_stats_event_fixed_param,
     WMITLV_TAG_STRUC_wmi_therm_throt_level_stats_info,
+    WMITLV_TAG_STRUC_wmi_pdev_div_rssi_antid_event_fixed_param,
 } WMITLV_TAG_ID;
 
 /*
@@ -1343,6 +1344,7 @@ typedef enum {
     OP(WMI_VDEV_GET_TX_POWER_EVENTID) \
     OP(WMI_OFFCHAN_DATA_TX_COMPLETION_EVENTID) \
     OP(WMI_THERM_THROT_STATS_EVENTID) \
+    OP(WMI_PDEV_DIV_RSSI_ANTID_EVENTID) \
     /* add new EVT_LIST elements above this line */
 
 
@@ -3446,6 +3448,11 @@ WMITLV_CREATE_PARAM_STRUC(WMI_UPDATE_WHAL_MIB_STATS_EVENTID);
     WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_BYTE, A_UINT8, ratesArray, WMITLV_SIZE_VAR)
 WMITLV_CREATE_PARAM_STRUC(WMI_PDEV_TPC_CONFIG_EVENTID);
 
+/* PDEV DIV RSSI Antenna index Event */
+#define WMITLV_TABLE_WMI_PDEV_DIV_RSSI_ANTID_EVENTID(id,op,buf,len) \
+    WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_pdev_div_rssi_antid_event_fixed_param, wmi_pdev_div_rssi_antid_event_fixed_param, fixed_param, WMITLV_SIZE_FIX)
+WMITLV_CREATE_PARAM_STRUC(WMI_PDEV_DIV_RSSI_ANTID_EVENTID);
+
 /* VDEV Tx Power Event */
 #define WMITLV_TABLE_WMI_VDEV_GET_TX_POWER_EVENTID(id,op,buf,len) \
     WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_vdev_tx_power_event_fixed_param, wmi_vdev_get_tx_power_event_fixed_param, fixed_param, WMITLV_SIZE_FIX)

+ 16 - 0
fw/wmi_unified.h

@@ -1125,6 +1125,9 @@ typedef enum {
     /** Report the caldata version to host */
     WMI_PDEV_CHECK_CAL_VERSION_EVENTID,
 
+    /** Report chain RSSI and antenna index to host */
+    WMI_PDEV_DIV_RSSI_ANTID_EVENTID,
+
     /* VDEV specific events */
     /** VDEV started event in response to VDEV_START request */
     WMI_VDEV_START_RESP_EVENTID = WMI_EVT_GRP_START_ID(WMI_GRP_VDEV),
@@ -4494,6 +4497,19 @@ typedef struct {
  */
 } wmi_pdev_tpc_config_event_fixed_param;
 
+typedef struct {
+    /** TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_pdev_div_rssi_antid_event_fixed_param */
+    A_UINT32 tlv_header;
+    /** how many elements in the MAX_CHAINS arrays below contain valid info */
+    A_UINT32 num_chains_valid;
+    /** RSSI (rssi_chain_x_pri20) on each chain (units: dB above noise floor) */
+    A_UINT32 chain_rssi[WMI_MAX_CHAINS];
+    /** index of the last-used antenna for each chain */
+    A_UINT32 ant_id[WMI_MAX_CHAINS];
+    /** mac address of diversity peer */
+    wmi_mac_addr macaddr;
+} wmi_pdev_div_rssi_antid_event_fixed_param;
+
 typedef struct {
     A_UINT32 tlv_header; /* TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_pdev_l1ss_track_event_fixed_param  */
     A_UINT32 periodCnt;

+ 1 - 1
fw/wmi_version.h

@@ -36,7 +36,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_ 383
+#define __WMI_REVISION_ 384
 
 /** The Version Namespace should not be normally changed. Only
  *  host and firmware of the same WMI namespace will work