mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-10 14:19:09 -04:00
fw-api: CL 21817763 - update fw common interface files
Change-Id: I1d2b261a12d7c9dc5ac029e96a8182326b7c8a85 WMI: add VDEV_STANDALONE SOUND_CMD + SOUND_COMPLETE_EVENT msg defs CRs-Fixed: 2262693
This commit is contained in:
parent
248734da25
commit
a68a213d9b
4 changed files with 166 additions and 2 deletions
|
|
@ -619,6 +619,7 @@ typedef enum {
|
|||
WMI_SERVICE_CFR_CAPTURE_PDEV_ID_SOC = 366, /* Host can send PDEV_ID_SOC with CFR capture request and FW can derive pdev_id from TA address */
|
||||
WMI_SERVICE_11BE_MLO_TDLS_SUPPORT = 367, /* Indicates FW supports 11be MLO TDLS. Host should enable 11be on TDLS only when FW indicates the support. */
|
||||
WMI_SERVICE_MANUAL_ULOFDMA_TRIGGER_SUPPORT = 368, /* Support for Host triggered Manual UL OFDMA trigger frame feature */
|
||||
WMI_SERVICE_STANDALONE_SOUND = 369, /* FW supports standalone sounding */
|
||||
|
||||
WMI_MAX_EXT2_SERVICE
|
||||
|
||||
|
|
|
|||
|
|
@ -1350,6 +1350,9 @@ typedef enum {
|
|||
WMITLV_TAG_STRUC_wmi_vdev_set_manual_mu_trig_cmd_fixed_param,
|
||||
WMITLV_TAG_STRUC_wmi_manual_ul_ofdma_trig_feedback_evt_fixed_param,
|
||||
WMITLV_TAG_STRUC_wmi_mlo_peer_link_control_param,
|
||||
WMITLV_TAG_STRUC_wmi_dma_buf_release_cv_upload_meta_data,
|
||||
WMITLV_TAG_STRUC_wmi_standalone_sounding_cmd_fixed_param,
|
||||
WMITLV_TAG_STRUC_wmi_standalone_sounding_evt_fixed_param,
|
||||
} WMITLV_TAG_ID;
|
||||
|
||||
/*
|
||||
|
|
@ -1873,6 +1876,7 @@ typedef enum {
|
|||
OP(WMI_MLO_VDEV_GET_LINK_INFO_CMDID) \
|
||||
OP(WMI_VDEV_SET_ULOFDMA_MANUAL_SU_TRIG_CMDID) \
|
||||
OP(WMI_VDEV_SET_ULOFDMA_MANUAL_MU_TRIG_CMDID) \
|
||||
OP(WMI_VDEV_STANDALONE_SOUND_CMDID) \
|
||||
/* add new CMD_LIST elements above this line */
|
||||
|
||||
|
||||
|
|
@ -2176,6 +2180,7 @@ typedef enum {
|
|||
OP(WMI_CSA_IE_RECEIVED_EVENTID) \
|
||||
OP(WMI_MLO_VDEV_LINK_INFO_EVENTID) \
|
||||
OP(WMI_MANUAL_UL_OFDMA_TRIG_FEEDBACK_EVENTID) \
|
||||
OP(WMI_VDEV_STANDALONE_SOUND_COMPLETE_EVENTID) \
|
||||
/* add new EVT_LIST elements above this line */
|
||||
|
||||
|
||||
|
|
@ -5323,6 +5328,12 @@ WMITLV_CREATE_PARAM_STRUC(WMI_VDEV_SET_ULOFDMA_MANUAL_SU_TRIG_CMDID);
|
|||
WMITLV_ELEM(id, op, buf, len, WMITLV_TAG_ARRAY_FIXED_STRUC, wmi_mac_addr, peer_macaddr, WMITLV_SIZE_VAR)
|
||||
WMITLV_CREATE_PARAM_STRUC(WMI_VDEV_SET_ULOFDMA_MANUAL_MU_TRIG_CMDID);
|
||||
|
||||
/* Standalone Sound Cmd */
|
||||
#define WMITLV_TABLE_WMI_VDEV_STANDALONE_SOUND_CMDID(id,op,buf,len) \
|
||||
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_standalone_sounding_cmd_fixed_param, wmi_standalone_sounding_cmd_fixed_param, fixed_param, WMITLV_SIZE_FIX) \
|
||||
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_FIXED_STRUC, wmi_mac_addr, peer_list, WMITLV_SIZE_VAR)
|
||||
WMITLV_CREATE_PARAM_STRUC(WMI_VDEV_STANDALONE_SOUND_CMDID);
|
||||
|
||||
|
||||
|
||||
/************************** TLV definitions of WMI events *******************************/
|
||||
|
|
@ -6834,7 +6845,8 @@ WMITLV_CREATE_PARAM_STRUC(WMI_PDEV_DMA_RING_CFG_RSP_EVENTID);
|
|||
#define WMITLV_TABLE_WMI_PDEV_DMA_RING_BUF_RELEASE_EVENTID(id,op,buf,len) \
|
||||
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_dma_buf_release_fixed_param, wmi_dma_buf_release_fixed_param, fixed_param, WMITLV_SIZE_FIX) \
|
||||
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_STRUC, wmi_dma_buf_release_entry, entries, WMITLV_SIZE_VAR) \
|
||||
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_STRUC, wmi_dma_buf_release_spectral_meta_data, meta_data, WMITLV_SIZE_VAR)
|
||||
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_STRUC, wmi_dma_buf_release_spectral_meta_data, meta_data, WMITLV_SIZE_VAR) \
|
||||
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_STRUC, wmi_dma_buf_release_cv_upload_meta_data, cv_meta_data, WMITLV_SIZE_VAR)
|
||||
WMITLV_CREATE_PARAM_STRUC(WMI_PDEV_DMA_RING_BUF_RELEASE_EVENTID);
|
||||
|
||||
/* ctl failsafe check event */
|
||||
|
|
@ -7223,6 +7235,12 @@ WMITLV_CREATE_PARAM_STRUC(WMI_MLO_VDEV_LINK_INFO_EVENTID);
|
|||
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_FIXED_STRUC, wmi_mac_addr, peer_macaddr, WMITLV_SIZE_VAR)
|
||||
WMITLV_CREATE_PARAM_STRUC(WMI_MANUAL_UL_OFDMA_TRIG_FEEDBACK_EVENTID);
|
||||
|
||||
/* WMI standalone sound complete event */
|
||||
#define WMITLV_TABLE_WMI_VDEV_STANDALONE_SOUND_COMPLETE_EVENTID(id,op,buf,len) \
|
||||
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_standalone_sounding_evt_fixed_param, wmi_standalone_sounding_evt_fixed_param, fixed_param, WMITLV_SIZE_FIX) \
|
||||
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_UINT32, A_UINT32, snd_failed, WMITLV_SIZE_VAR)
|
||||
WMITLV_CREATE_PARAM_STRUC(WMI_VDEV_STANDALONE_SOUND_COMPLETE_EVENTID);
|
||||
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
|
|
|
|||
145
fw/wmi_unified.h
145
fw/wmi_unified.h
|
|
@ -1230,6 +1230,9 @@ typedef enum {
|
|||
/* H2T HPA message */
|
||||
WMI_HPA_CMDID,
|
||||
|
||||
/* WMI comamnd for standalone sounding */
|
||||
WMI_VDEV_STANDALONE_SOUND_CMDID,
|
||||
|
||||
/* Offload 11k related requests */
|
||||
WMI_11K_OFFLOAD_REPORT_CMDID = WMI_CMD_GRP_START_ID(WMI_GRP_11K_OFFLOAD),
|
||||
/* invoke neighbor report from FW */
|
||||
|
|
@ -2207,6 +2210,9 @@ typedef enum {
|
|||
/* T2H HPA message */
|
||||
WMI_HPA_EVENTID,
|
||||
|
||||
/* WMI standalone command complete Event */
|
||||
WMI_VDEV_STANDALONE_SOUND_COMPLETE_EVENTID,
|
||||
|
||||
|
||||
/* GPIO Event */
|
||||
WMI_GPIO_INPUT_EVENTID = WMI_EVT_GRP_START_ID(WMI_GRP_GPIO),
|
||||
|
|
@ -33440,6 +33446,7 @@ static INLINE A_UINT8 *wmi_id_to_name(A_UINT32 wmi_command)
|
|||
WMI_RETURN_STRING(WMI_MLO_VDEV_GET_LINK_INFO_CMDID);
|
||||
WMI_RETURN_STRING(WMI_VDEV_SET_ULOFDMA_MANUAL_SU_TRIG_CMDID);
|
||||
WMI_RETURN_STRING(WMI_VDEV_SET_ULOFDMA_MANUAL_MU_TRIG_CMDID);
|
||||
WMI_RETURN_STRING(WMI_VDEV_STANDALONE_SOUND_CMDID);
|
||||
}
|
||||
|
||||
return (A_UINT8 *) "Invalid WMI cmd";
|
||||
|
|
@ -35275,6 +35282,7 @@ typedef struct {
|
|||
typedef enum {
|
||||
WMI_DMA_RING_CONFIG_MODULE_SPECTRAL,
|
||||
WMI_DMA_RING_CONFIG_MODULE_RTT,
|
||||
WMI_DMA_RING_CONFIG_MODULE_CV_UPLOAD,
|
||||
} WMI_DMA_RING_SUPPORTED_MODULE;
|
||||
|
||||
typedef struct {
|
||||
|
|
@ -35433,6 +35441,7 @@ typedef struct {
|
|||
/* This TLV is followed by another TLV of array of structs.
|
||||
* wmi_dma_buf_release_entry entries[num_buf_release_entry];
|
||||
* wmi_dma_buf_release_spectral_meta_data meta_datat[num_meta_data_entry];
|
||||
* wmi_dma_buf_release_cv_upload_meta_data cv_meta_data[num_meta_data_entry]
|
||||
*/
|
||||
} wmi_dma_buf_release_fixed_param;
|
||||
|
||||
|
|
@ -42153,6 +42162,142 @@ typedef struct {
|
|||
} wmi_vdev_set_manual_su_trig_cmd_fixed_param;
|
||||
|
||||
|
||||
#define WMI_DMA_BUF_RELEASE_CV_UPLOAD_SET_ASNR_LENGTH(asnr_params, value) \
|
||||
WMI_SET_BITS(asnr_params, 0, 16, value)
|
||||
#define WMI_DMA_BUF_RELEASE_CV_UPLOAD_GET_ASNR_LENGTH(asnr_params) \
|
||||
WMI_GET_BITS(asnr_params, 0, 16)
|
||||
|
||||
#define WMI_DMA_BUF_RELEASE_CV_UPLOAD_SET_ASNR_OFFSET(asnr_params, value) \
|
||||
WMI_SET_BITS(asnr_params, 16, 16, value)
|
||||
#define WMI_DMA_BUF_RELEASE_CV_UPLOAD_GET_ASNR_OFFSET(asnr_params) \
|
||||
WMI_GET_BITS(asnr_params, 16, 16)
|
||||
|
||||
#define WMI_DMA_BUF_RELEASE_CV_UPLOAD_SET_DSNR_LENGTH(dsnr_params, value) \
|
||||
WMI_SET_BITS(dsnr_params, 0, 16, value)
|
||||
#define WMI_DMA_BUF_RELEASE_CV_UPLOAD_GET_DSNR_LENGTH(dsnr_params) \
|
||||
WMI_GET_BITS(dsnr_params, 0, 16)
|
||||
|
||||
#define WMI_DMA_BUF_RELEASE_CV_UPLOAD_SET_DSNR_OFFSET(dsnr_params, value) \
|
||||
WMI_SET_BITS(dsnr_params, 16, 16, value)
|
||||
#define WMI_DMA_BUF_RELEASE_CV_UPLOAD_GET_DSNR_OFFSET(dsnr_params) \
|
||||
WMI_GET_BITS(dsnr_params, 16, 16)
|
||||
|
||||
#define WMI_DMA_BUF_RELEASE_CV_UPLOAD_SET_FB_PARAMS_NC(fb_params, value) \
|
||||
WMI_SET_BITS(fb_params, 0, 2, value)
|
||||
#define WMI_DMA_BUF_RELEASE_CV_UPLOAD_GET_FB_PARAMS_NC(fb_params) \
|
||||
WMI_GET_BITS(fb_params, 0, 2)
|
||||
|
||||
#define WMI_DMA_BUF_RELEASE_CV_UPLOAD_SET_FB_PARAMS_NSS_NUM(fb_params, value) \
|
||||
WMI_SET_BITS(fb_params, 2, 2, value)
|
||||
#define WMI_DMA_BUF_RELEASE_CV_UPLOAD_GET_FB_PARAMS_NSS_NUM(fb_params) \
|
||||
WMI_GET_BITS(fb_params, 2, 2)
|
||||
|
||||
|
||||
#define WMI_SET_STANDALONE_SOUND_PARAMS_FB_TYPE(snd_params, value) \
|
||||
WMI_SET_BITS(snd_params, 0, 1, value)
|
||||
#define WMI_GET_STANDALONE_SOUND_PARAMS_FB_TYPE(snd_params) \
|
||||
WMI_GET_BITS(snd_params, 0, 1)
|
||||
|
||||
#define WMI_SET_STANDALONE_SOUND_PARAMS_NG(snd_params, value) \
|
||||
WMI_SET_BITS(snd_params, 1, 2, value)
|
||||
#define WMI_GET_STANDALONE_SOUND_PARAMS_NG(snd_params) \
|
||||
WMI_GET_BITS(snd_params, 1, 2)
|
||||
|
||||
#define WMI_SET_STANDALONE_SOUND_PARAMS_CB(snd_params, value) \
|
||||
WMI_SET_BITS(snd_params, 3, 1, value)
|
||||
#define WMI_GET_STANDALONE_SOUND_PARAMS_CB(snd_params) \
|
||||
WMI_GET_BITS(snd_params, 3, 1)
|
||||
|
||||
#define WMI_SET_STANDALONE_SOUND_PARAMS_BW(snd_params, value) \
|
||||
WMI_SET_BITS(snd_params, 4, 3, value)
|
||||
#define WMI_GET_STANDALONE_SOUND_PARAMS_BW(snd_params) \
|
||||
WMI_GET_BITS(snd_params, 4, 3)
|
||||
|
||||
|
||||
typedef enum _WMI_STANDALONE_SOUND_STATUS_T {
|
||||
WMI_STANDALONE_SOUND_STATUS_OK,
|
||||
WMI_STANDALONE_SOUND_STATUS_ERR_NUM_PEERS_EXCEEDED,
|
||||
WMI_STANDALONE_SOUND_STATUS_ERR_NG_INVALID,
|
||||
WMI_STANDALONE_SOUND_STATUS_ERR_NUM_REPEAT_EXCEEDED,
|
||||
WMI_STANDALONE_SOUND_STATUS_ERR_PEER_DOESNOT_SUPPORT_BW,
|
||||
WMI_STANDALONE_SOUND_STATUS_ERR_INVALID_PEER,
|
||||
WMI_STANDALONE_SOUND_STATUS_ERR_INVALID_VDEV,
|
||||
WMI_STANDALONE_SOUND_STATUS_ERR_PEER_DOES_NOT_SUPPORT_MU_FB,
|
||||
WMI_STANDALONE_SOUND_STATUS_ERR_DMA_NOT_CONFIGURED,
|
||||
WMI_STANDALONE_SOUND_STATUS_ERR_COMPLETE_FAILURE,
|
||||
} WMI_STANDALONE_SOUND_STATUS_T;
|
||||
|
||||
typedef struct {
|
||||
A_UINT32 tlv_header; /** TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_dma_buf_release_cv_upload_meta_data */
|
||||
/** Set if the CV is valid */
|
||||
A_UINT32 is_valid;
|
||||
/** Feedback type */
|
||||
A_UINT32 fb_type;
|
||||
/**
|
||||
* [15:0] ASNR length
|
||||
* [31:16] ASNR offset
|
||||
*/
|
||||
A_UINT32 asnr_params;
|
||||
/**
|
||||
* [15:0] DSNR length
|
||||
* [31:16] DSNR offset
|
||||
*/
|
||||
A_UINT32 dsnr_params;
|
||||
/** Peer mac address */
|
||||
wmi_mac_addr peer_mac_address;
|
||||
/**
|
||||
* [1:0] Nc
|
||||
* [3:2] nss_num
|
||||
*/
|
||||
A_UINT32 fb_params;
|
||||
} wmi_dma_buf_release_cv_upload_meta_data;
|
||||
|
||||
typedef struct {
|
||||
A_UINT32 tlv_header; /** TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_standalone_sounding_cmd_fixed_param */
|
||||
/** vdev identifier */
|
||||
A_UINT32 vdev_id;
|
||||
/** sounding_params:
|
||||
* [0] Feedback type
|
||||
* [2:1] Ng
|
||||
* [3] Codebook
|
||||
* [6:4] BW
|
||||
* 0 = 20 MHz
|
||||
* 1 = 40 MHz
|
||||
* 2 = 80 MHz
|
||||
* 3 = 160 MHz
|
||||
* 4 = 320 MHz
|
||||
* [31:7] Reserved
|
||||
*/
|
||||
A_UINT32 sounding_params;
|
||||
/** The number of sounding repeats */
|
||||
A_UINT32 num_sounding_repeats;
|
||||
/**
|
||||
* TLV (tag length value) parameters follow the
|
||||
* structure. The TLV's are:
|
||||
* wmi_mac_addr peer_list[num_peers];
|
||||
*/
|
||||
} wmi_standalone_sounding_cmd_fixed_param;
|
||||
|
||||
typedef struct {
|
||||
A_UINT32 tlv_header; /** TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_standalone_sounding_evt_fixed_param */
|
||||
/** vdev identifier */
|
||||
A_UINT32 vdev_id;
|
||||
/** status:
|
||||
* standalone sounding command status -
|
||||
* refer to WMI_STANDALONE_SOUND_STATUS_T
|
||||
*/
|
||||
A_UINT32 status;
|
||||
/** number of CV buffers uploaded */
|
||||
A_UINT32 buffer_uploaded;
|
||||
/** TLV (tag length value) parameters follow the
|
||||
* structure. The TLV's are:
|
||||
* A_UINT32 snd_failed[num_sounding_repeats];
|
||||
* snd_failed[] array's elements hold the number of failures
|
||||
* for each sounding.
|
||||
*/
|
||||
} wmi_standalone_sounding_evt_fixed_param;
|
||||
|
||||
|
||||
|
||||
/* ADD NEW DEFS HERE */
|
||||
|
||||
|
|
|
|||
|
|
@ -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_ 1295
|
||||
#define __WMI_REVISION_ 1296
|
||||
|
||||
/** 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