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

WMI: add stats period array to stats event msg

Change-Id: Ifed36816ffebb5286f56ffed7ac71bfc275c4c65
CRs-Fixed: 1107600
This commit is contained in:
spuligil 2017-11-27 15:07:41 -08:00 • committed by Gerrit - the friendly Code Review server
commit 25e5305dd9
3 changed files with 29 additions and 2 deletions

View file

@ -866,6 +866,7 @@ typedef enum {
WMITLV_TAG_STRUC_wmi_host_swfda_event_fixed_param,
WMITLV_TAG_STRUC_wmi_bcn_offload_ctrl_cmd_fixed_param,
WMITLV_TAG_STRUC_wmi_pdev_set_ac_tx_queue_optimized_cmd_fixed_param,
WMITLV_TAG_STRUC_wmi_stats_period,
} WMITLV_TAG_ID;
/*
@ -4508,6 +4509,8 @@ WMITLV_CREATE_PARAM_STRUC(WMI_RMC_NEW_LEADER_EVENTID);
* 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
* 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
*
* 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:
* 1. fixed_param
@ -4596,7 +4599,8 @@ WMITLV_CREATE_PARAM_STRUC(WMI_RMC_NEW_LEADER_EVENTID);
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_STRUC, wmi_peer_ac_rx_stats, peer_ac_rx_stats, WMITLV_SIZE_VAR) \
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_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_CREATE_PARAM_STRUC(WMI_REPORT_STATS_EVENTID);
#define WMITLV_TABLE_WMI_VDEV_ENCRYPT_DECRYPT_DATA_RESP_EVENTID(id, op, buf, len) \

View file

@ -6216,6 +6216,26 @@ typedef struct
*/
} wmi_peer_ac_rx_stats;
typedef struct
{
A_UINT32 tlv_header; /** TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_stats_period */
/*
* This struct provides the timestamps from a low-frequency timer
* for the start and end of a stats period.
* Each timestamp is reported twice, with different units.
* The _msec timestamp is in millisecond units.
* The _count timestamp is in clock tick units.
* The timestamp is reported in clock ticks as well as in milliseconds
* so that if the stats start and end times fall within the same
* millisecond, the clock tick timestamps can still be used to
* determine what fraction of a millisecond the stats period occupied.
*/
A_UINT32 start_low_freq_msec;
A_UINT32 start_low_freq_count;
A_UINT32 end_low_freq_msec;
A_UINT32 end_low_freq_count;
} wmi_stats_period;
typedef enum {
/** Periodic timer timed out, based on the period specified
* by WMI_PDEV_PARAM_STATS_OBSERVATION_PERIOD
@ -6288,6 +6308,8 @@ typedef struct {
/** Array size of rx_mcs[] which is histogram of encoding rate.
* The array indicates number of PPDUs received at a specific rate */
A_UINT32 rx_mcs_array_len;
/** Array size of stats_period[] which contains several stats periods. */
A_UINT32 stats_period_array_len;
/**
* This TLV is followed by TLVs below:
@ -6309,6 +6331,7 @@ typedef struct {
* array index is (peer_index * WLAN_MAX_AC + ac_index) * rx_mpdu_aggr_array_len + A-MPDU aggregation index
* 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_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_ 471
#define __WMI_REVISION_ 472
/** The Version Namespace should not be normally changed. Only
* host and firmware of the same WMI namespace will work