mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-14 00:24:41 -04:00
fw-api: CL 2757208 - update fw common interface files
WMI defs for RADIO_CHAN_STATS messages Change-Id: I5ae2e5007594e748ac36613c5a8ff7ad34f39fe1 CRs-Fixed: 1107600
This commit is contained in:
parent
5bf14e5820
commit
1563c4ad22
3 changed files with 103 additions and 3 deletions
|
|
@ -785,6 +785,9 @@ typedef enum {
|
|||
WMITLV_TAG_STRUC_wmi_11d_scan_start_cmd_fixed_param,
|
||||
WMITLV_TAG_STRUC_wmi_11d_scan_stop_cmd_fixed_param,
|
||||
WMITLV_TAG_STRUC_wmi_11d_new_country_event_fixed_param,
|
||||
WMITLV_TAG_STRUC_wmi_request_radio_chan_stats_cmd_fixed_param,
|
||||
WMITLV_TAG_STRUC_wmi_radio_chan_stats,
|
||||
WMITLV_TAG_STRUC_wmi_radio_chan_stats_event_fixed_param,
|
||||
} WMITLV_TAG_ID;
|
||||
|
||||
/*
|
||||
|
|
@ -1100,6 +1103,7 @@ typedef enum {
|
|||
OP(WMI_SET_CURRENT_COUNTRY_CMDID) \
|
||||
OP(WMI_11D_SCAN_START_CMDID) \
|
||||
OP(WMI_11D_SCAN_STOP_CMDID) \
|
||||
OP(WMI_REQUEST_RADIO_CHAN_STATS_CMDID) \
|
||||
/* add new CMD_LIST elements above this line */
|
||||
|
||||
|
||||
|
|
@ -1272,6 +1276,7 @@ typedef enum {
|
|||
OP(WMI_PKGID_EVENTID) \
|
||||
OP(WMI_REG_CHAN_LIST_CC_EVENTID) \
|
||||
OP(WMI_11D_NEW_COUNTRY_EVENTID) \
|
||||
OP(WMI_RADIO_CHAN_STATS_EVENTID) \
|
||||
/* add new EVT_LIST elements above this line */
|
||||
|
||||
|
||||
|
|
@ -3146,12 +3151,17 @@ WMITLV_CREATE_PARAM_STRUC(WMI_SET_CURRENT_COUNTRY_CMDID);
|
|||
#define WMITLV_TABLE_WMI_11D_SCAN_START_CMDID(id,op,buf,len) \
|
||||
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_11d_scan_start_cmd_fixed_param, wmi_11d_scan_start_cmd_fixed_param, fixed_param, WMITLV_SIZE_FIX)
|
||||
WMITLV_CREATE_PARAM_STRUC(WMI_11D_SCAN_START_CMDID);
|
||||
|
||||
|
||||
/* Stop 11d scan in FW */
|
||||
#define WMITLV_TABLE_WMI_11D_SCAN_STOP_CMDID(id,op,buf,len) \
|
||||
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_11d_scan_stop_cmd_fixed_param, wmi_11d_scan_stop_cmd_fixed_param, fixed_param, WMITLV_SIZE_FIX)
|
||||
WMITLV_CREATE_PARAM_STRUC(WMI_11D_SCAN_STOP_CMDID);
|
||||
|
||||
/* Request radio channel stats cmd */
|
||||
#define WMITLV_TABLE_WMI_REQUEST_RADIO_CHAN_STATS_CMDID(id,op,buf,len) \
|
||||
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_request_radio_chan_stats_cmd_fixed_param, wmi_request_radio_chan_stats_cmd_fixed_param, fixed_param, WMITLV_SIZE_FIX)
|
||||
WMITLV_CREATE_PARAM_STRUC(WMI_REQUEST_RADIO_CHAN_STATS_CMDID);
|
||||
|
||||
|
||||
/************************** TLV definitions of WMI events *******************************/
|
||||
|
||||
|
|
@ -3990,7 +4000,7 @@ WMITLV_CREATE_PARAM_STRUC(WMI_BPF_VDEV_STATS_INFO_EVENTID);
|
|||
#define WMITLV_TABLE_WMI_11D_NEW_COUNTRY_EVENTID(id,op,buf,len) \
|
||||
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_11d_new_country_event_fixed_param, wmi_11d_new_country_event_fixed_param, fixed_param, WMITLV_SIZE_FIX)
|
||||
WMITLV_CREATE_PARAM_STRUC(WMI_11D_NEW_COUNTRY_EVENTID);
|
||||
|
||||
|
||||
/* Regulatory channel list of current country code */
|
||||
#define WMITLV_TABLE_WMI_REG_CHAN_LIST_CC_EVENTID(id,op,buf,len) \
|
||||
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_reg_chan_list_cc_event_fixed_param, wmi_reg_chan_list_cc_event_fixed_param, fixed_param, WMITLV_SIZE_FIX) \
|
||||
|
|
@ -4199,6 +4209,11 @@ WMITLV_CREATE_PARAM_STRUC(WMI_VDEV_ENCRYPT_DECRYPT_DATA_RESP_EVENTID);
|
|||
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_STRUC, wmi_peer_stats_info, peer_stats_info, WMITLV_SIZE_VAR)
|
||||
WMITLV_CREATE_PARAM_STRUC(WMI_PEER_STATS_INFO_EVENTID);
|
||||
|
||||
#define WMITLV_TABLE_WMI_RADIO_CHAN_STATS_EVENTID(id, op, buf, len) \
|
||||
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_radio_chan_stats_event_fixed_param, wmi_radio_chan_stats_event_fixed_param, fixed_param, WMITLV_SIZE_FIX) \
|
||||
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_STRUC, wmi_radio_chan_stats, radio_chan_stats, WMITLV_SIZE_VAR)
|
||||
WMITLV_CREATE_PARAM_STRUC(WMI_RADIO_CHAN_STATS_EVENTID);
|
||||
|
||||
#define WMITLV_TABLE_WMI_PKGID_EVENTID(id, op, buf, len) \
|
||||
WMITLV_ELEM(id, op, buf, len, WMITLV_TAG_STRUC_wmi_pkgid_event_fixed_param, wmi_pkgid_event_fixed_param, fixed_param, WMITLV_SIZE_FIX)
|
||||
WMITLV_CREATE_PARAM_STRUC(WMI_PKGID_EVENTID);
|
||||
|
|
|
|||
|
|
@ -704,6 +704,9 @@ typedef enum {
|
|||
/** One time request for peer stats info */
|
||||
WMI_REQUEST_PEER_STATS_INFO_CMDID,
|
||||
|
||||
/** One time request for radio channel stats */
|
||||
WMI_REQUEST_RADIO_CHAN_STATS_CMDID,
|
||||
|
||||
/** ARP OFFLOAD REQUEST*/
|
||||
WMI_SET_ARP_NS_OFFLOAD_CMDID = WMI_CMD_GRP_START_ID(WMI_GRP_ARP_NS_OFL),
|
||||
|
||||
|
|
@ -1255,6 +1258,9 @@ typedef enum {
|
|||
* and report peer stats info to host */
|
||||
WMI_PEER_STATS_INFO_EVENTID,
|
||||
|
||||
/** This event is used to respond to WMI_REQUEST_RADIO_CHAN_STATS_CMDID
|
||||
* and report radio channel stats to host */
|
||||
WMI_RADIO_CHAN_STATS_EVENTID,
|
||||
|
||||
/* NLO specific events */
|
||||
/** NLO match event after the first match */
|
||||
|
|
@ -3870,6 +3876,16 @@ typedef enum {
|
|||
*/
|
||||
WMI_PDEV_PARAM_FAST_PWR_TRANSITION,
|
||||
|
||||
/** Enable/disable radio channel stats mechanism
|
||||
* A zero value disables; a non-zero value enables.
|
||||
*/
|
||||
WMI_PDEV_PARAM_RADIO_CHAN_STATS_ENABLE,
|
||||
/** Enable/disable radio diagnosis feature
|
||||
* which allows retrieving the status of radio.
|
||||
* A zero value disables; a non-zero value enables.
|
||||
*/
|
||||
WMI_PDEV_PARAM_RADIO_DIAGNOSIS_ENABLE,
|
||||
|
||||
} WMI_PDEV_PARAM;
|
||||
|
||||
typedef struct {
|
||||
|
|
@ -5371,6 +5387,48 @@ typedef struct {
|
|||
*/
|
||||
} wmi_peer_stats_info_event_fixed_param;
|
||||
|
||||
typedef struct {
|
||||
/** TLV tag and len; tag equals
|
||||
* WMITLV_TAG_STRUC_wmi_radio_chan_stats */
|
||||
A_UINT32 tlv_header;
|
||||
/** primary channel freq of the channel whose stats is sent */
|
||||
A_UINT32 chan_mhz;
|
||||
/** accumulation of time the radio is tuned to this channel,
|
||||
* in units of microseconds */
|
||||
A_UINT32 on_chan_us;
|
||||
/** accumulation of the TX PPDU duration over the measurement period,
|
||||
* in units of microseconds */
|
||||
A_UINT32 tx_duration_us;
|
||||
/** accumulation of the RX PPDU duration over the measurement period,
|
||||
* in units of microseconds */
|
||||
A_UINT32 rx_duration_us;
|
||||
/** ratio of channel busy time to on_chan_us, in units of percent */
|
||||
A_UINT32 chan_busy_ratio;
|
||||
/** ratio of on_chan_us to the measurement period, in units of percent */
|
||||
A_UINT32 on_chan_ratio;
|
||||
/** measurement period, in units of microseconds */
|
||||
A_UINT32 measurement_period_us;
|
||||
/** MPDUs transmitted on this channel */
|
||||
A_UINT32 tx_mpdus;
|
||||
/** MSDUs transmitted on this channel */
|
||||
A_UINT32 tx_msdus;
|
||||
/** MPDUS successfully received on this channel */
|
||||
A_UINT32 rx_succ_mpdus;
|
||||
/** Failed MPDUs (CRC failures) received on this channel */
|
||||
A_UINT32 rx_fail_mpdus;
|
||||
} wmi_radio_chan_stats;
|
||||
|
||||
typedef struct {
|
||||
/** TLV tag and len; tag equals
|
||||
* WMITLV_TAG_STRUC_wmi_radio_chan_stats_event_fixed_param */
|
||||
A_UINT32 tlv_header;
|
||||
/** number of channel stats in radio_chan_stats[] */
|
||||
A_UINT32 num_chans;
|
||||
/* This TLV is followed by another TLV of array of structs
|
||||
* wmi_radio_chan_stats radio_chan_stats[];
|
||||
*/
|
||||
} wmi_radio_chan_stats_event_fixed_param;
|
||||
|
||||
/**
|
||||
* PDEV statistics
|
||||
* @todo
|
||||
|
|
@ -16618,6 +16676,31 @@ typedef struct {
|
|||
A_UINT32 reset_after_request;
|
||||
} wmi_request_peer_stats_info_cmd_fixed_param;
|
||||
|
||||
typedef enum {
|
||||
WMI_REQUEST_ONE_RADIO_CHAN_STATS = 0x01, /* request stats of one specified channel */
|
||||
WMI_REQUEST_ALL_RADIO_CHAN_STATS = 0x02, /* request stats of all channels */
|
||||
} wmi_radio_chan_stats_request_type;
|
||||
|
||||
/** It is required to issue WMI_PDEV_PARAM_RADIO_CHAN_STATS_ENABLE
|
||||
* (with a non-zero value) before issuing the first REQUEST_RADIO_CHAN_STATS.
|
||||
*/
|
||||
typedef struct {
|
||||
/** TLV tag and len; tag equals
|
||||
* WMITLV_TAG_STRUC_wmi_request_radio_chan_stats_cmd_fixed_param */
|
||||
A_UINT32 tlv_header;
|
||||
/** request_type to indicate if only stats of
|
||||
* one channel or all channels are requested,
|
||||
* see wmi_radio_chan_stats_request_type.
|
||||
*/
|
||||
A_UINT32 request_type;
|
||||
/** Frequency of channel whose stats is requested,
|
||||
* only used when request_type == WMI_REQUEST_ONE_RADIO_CHAN_STATS
|
||||
*/
|
||||
A_UINT32 chan_mhz;
|
||||
/** flag to indicate if FW needs to reset requested stats of specified channel/channels */
|
||||
A_UINT32 reset_after_request;
|
||||
} wmi_request_radio_chan_stats_cmd_fixed_param;
|
||||
|
||||
typedef struct {
|
||||
/** TLV tag and len; tag equals
|
||||
* WMITLV_TAG_STRUC_wmi_rmc_set_leader_cmd_fixed_param */
|
||||
|
|
@ -17439,6 +17522,8 @@ static INLINE A_UINT8 *wmi_id_to_name(A_UINT32 wmi_command)
|
|||
WMI_RETURN_STRING(WMI_PDEV_SET_STATS_THRESHOLD_CMDID);
|
||||
WMI_RETURN_STRING(WMI_REQUEST_WLAN_STATS_CMDID);
|
||||
WMI_RETURN_STRING(WMI_VDEV_ENCRYPT_DECRYPT_DATA_REQ_CMDID);
|
||||
WMI_RETURN_STRING(WMI_REQUEST_PEER_STATS_INFO_CMDID);
|
||||
WMI_RETURN_STRING(WMI_REQUEST_RADIO_CHAN_STATS_CMDID);
|
||||
}
|
||||
|
||||
return "Invalid WMI cmd";
|
||||
|
|
|
|||
|
|
@ -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_ 329
|
||||
#define __WMI_REVISION_ 330
|
||||
|
||||
/** The Version Namespace should not be normally changed. Only
|
||||
* host and firmware of the same WMI namespace will work
|
||||
|
|
|
|||
Loading…
Reference in a new issue