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

Change-Id: I3beef617a96d44e5b11c5e7cefa6c5aca7911c3d
WMI: add wmi_stats_interference into REPORT_STATS_EVENT msg
CRs-Fixed: 2262693
This commit is contained in:
spuligil 2019-04-03 00:01:08 -07:00 • committed by Gerrit - the friendly Code Review server
commit 3b924fe4e4
3 changed files with 31 additions and 2 deletions

View file

@ -974,6 +974,7 @@ typedef enum {
WMITLV_TAG_STRUC_wmi_roam_deauth_config_cmd_fixed_param,
WMITLV_TAG_STRUC_wmi_roam_idle_config_cmd_fixed_param,
WMITLV_TAG_STRUC_wmi_idle_trigger_monitor_cmd_fixed_param,
WMITLV_TAG_STRUC_wmi_stats_interference,
} WMITLV_TAG_ID;
/*
@ -5092,6 +5093,7 @@ WMITLV_CREATE_PARAM_STRUC(WMI_RMC_NEW_LEADER_EVENTID);
* array index is (peer_index * WLAN_MAX_AC + ac_index) * rx_mcs_array_len + MCS index
* Contains a count of rx PPDUs for each MCS of each AC of each peer.
* wmi_stats_period stats_period[]; Array length is specified by stats_period_array_len
* wmi_stats_interference stats_interference[]; Array length is determied by dividing array level TLV header's length value by array-element TLV header's length value.
*
* For example, if there were 2 peers (X and Y) whose stats were being reported,
* the message and its TLV arrays would look like this:
@ -5182,7 +5184,8 @@ WMITLV_CREATE_PARAM_STRUC(WMI_RMC_NEW_LEADER_EVENTID);
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_STRUC, wmi_rx_stats, rx_stats, WMITLV_SIZE_VAR) \
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_UINT32, A_UINT32, rx_mpdu_aggr, WMITLV_SIZE_VAR) \
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_UINT32, A_UINT32, rx_mcs, WMITLV_SIZE_VAR) \
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_STRUC, wmi_stats_period, stats_period, WMITLV_SIZE_VAR)
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_STRUC, wmi_stats_period, stats_period, WMITLV_SIZE_VAR) \
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_STRUC, wmi_stats_interference, stats_interference, WMITLV_SIZE_VAR)
WMITLV_CREATE_PARAM_STRUC(WMI_REPORT_STATS_EVENTID);
#define WMITLV_TABLE_WMI_VDEV_ENCRYPT_DECRYPT_DATA_RESP_EVENTID(id, op, buf, len) \

View file

@ -7380,6 +7380,31 @@ typedef enum {
TRIGGER_COND_ID_ONE_TIME_REQUEST = 0x3,
} wmi_report_stats_event_trigger_cond_id;
typedef struct
{
A_UINT32 tlv_header; /** TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_stats_interference */
/** For cases where a single rx chain has options to be connected to
* different rx antennas, show which rx antennas were in use during
* receipt of a given PPDU.
* This sa_ant_matrix provides a bitmask of the antennas used while
* receiving this frame.
*/
A_UINT32 sa_ant_matrix;
/** Count how many times the hal_rxerr_phy is marked, in this time period.
* The counter value is reset each period. The host specifies the period
* via WMI_PDEV_PARAM_STATS_OBSERVATION_PERIOD.
*/
A_UINT32 phyerr_count;
/** The timestamp at which the WMI event is reported.
* In targets that have a WBTIMER_1 timer, this timestamp is taken
* from WBTIMER_1.
*/
A_UINT32 timestamp;
} wmi_stats_interference;
typedef struct {
A_UINT32 tlv_header; /** TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_report_stats_event_fixed_param */
/** Indicate what triggered this event, check wmi_report_stats_event_trigger_cond_id for details */
@ -7460,6 +7485,7 @@ typedef struct {
* A_UINT32 rx_mcs[][][]; Array length is (num_peer_ac_rx_stats * WLAN_MAX_AC) * rx_mcs_array_len,
* array index is (peer_index * WLAN_MAX_AC + ac_index) * rx_mcs_array_len + MCS index
* wmi_stats_period stats_period[]; Array length is specified by stats_period_array_len
* wmi_stats_interference stats_interference[]; Array length is determied by dividing array level TLV header's length value by array-element TLV header's length value.
**/
} wmi_report_stats_event_fixed_param;

View file

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