mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-11 15:11:48 -04:00
fw-api: CL 3058259 - update fw common interface files
add WMI + RTT definitions to enable CFR/CIR capture on Lithium Change-Id: I161905591bbfffa8751276837d8036a9cbd1cbf3 CRs-Fixed: 1107600
This commit is contained in:
parent
bc77fbfa2a
commit
d73ed4dd45
3 changed files with 148 additions and 3 deletions
|
|
@ -828,6 +828,12 @@ typedef enum {
|
|||
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_STRUC_WMI_OEM_DMA_RING_CAPABILITIES,
|
||||
WMITLV_TAG_STRUC_wmi_oem_dma_ring_cfg_req_fixed_param,
|
||||
WMITLV_TAG_STRUC_wmi_oem_dma_ring_cfg_rsp_fixed_param,
|
||||
WMITLV_TAG_STRUC_wmi_oem_indirect_data,
|
||||
WMITLV_TAG_STRUC_wmi_oem_dma_buf_release_fixed_param,
|
||||
WMITLV_TAG_STRUC_wmi_oem_dma_buf_release_entry,
|
||||
} WMITLV_TAG_ID;
|
||||
|
||||
/*
|
||||
|
|
@ -1161,6 +1167,7 @@ typedef enum {
|
|||
OP(WMI_SET_SCAN_DBS_DUTY_CYCLE_CMDID) \
|
||||
OP(WMI_PDEV_DIV_GET_RSSI_ANTID_CMDID) \
|
||||
OP(WMI_THERM_THROT_SET_CONF_CMDID) \
|
||||
OP(WMI_OEM_DMA_RING_CFG_REQ_CMDID) \
|
||||
/* add new CMD_LIST elements above this line */
|
||||
|
||||
|
||||
|
|
@ -1345,6 +1352,8 @@ typedef enum {
|
|||
OP(WMI_OFFCHAN_DATA_TX_COMPLETION_EVENTID) \
|
||||
OP(WMI_THERM_THROT_STATS_EVENTID) \
|
||||
OP(WMI_PDEV_DIV_RSSI_ANTID_EVENTID) \
|
||||
OP(WMI_OEM_DMA_RING_CFG_RSP_EVENTID) \
|
||||
OP(WMI_OEM_DMA_BUF_RELEASE_EVENTID) \
|
||||
/* add new EVT_LIST elements above this line */
|
||||
|
||||
|
||||
|
|
@ -1879,6 +1888,11 @@ WMITLV_CREATE_PARAM_STRUC(WMI_OEM_REQUEST_CMDID);
|
|||
|
||||
WMITLV_CREATE_PARAM_STRUC(WMI_LPI_OEM_REQ_CMDID);
|
||||
|
||||
#define WMITLV_TABLE_WMI_OEM_DMA_RING_CFG_REQ_CMDID(id,op,buf,len) \
|
||||
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_oem_dma_ring_cfg_req_fixed_param, wmi_oem_dma_ring_cfg_req_fixed_param, fixed_param, WMITLV_SIZE_FIX)
|
||||
|
||||
WMITLV_CREATE_PARAM_STRUC(WMI_OEM_DMA_RING_CFG_REQ_CMDID);
|
||||
|
||||
/* Spectral scan configure Cmd */
|
||||
#define WMITLV_TABLE_WMI_VDEV_SPECTRAL_SCAN_CONFIGURE_CMDID(id,op,buf,len) \
|
||||
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_vdev_spectral_configure_cmd_fixed_param, wmi_vdev_spectral_configure_cmd_fixed_param, fixed_param, WMITLV_SIZE_FIX)
|
||||
|
|
@ -3365,7 +3379,8 @@ WMITLV_CREATE_PARAM_STRUC(WMI_SERVICE_AVAILABLE_EVENTID);
|
|||
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_WMI_SOC_HAL_REG_CAPABILITIES, WMI_SOC_HAL_REG_CAPABILITIES, soc_hal_reg_caps, WMITLV_SIZE_FIX) \
|
||||
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_STRUC, WMI_HAL_REG_CAPABILITIES_EXT, hal_reg_caps, WMITLV_SIZE_VAR) \
|
||||
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_STRUC, WMI_MAC_PHY_CHAINMASK_COMBO, mac_phy_chainmask_combo, WMITLV_SIZE_VAR) \
|
||||
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_STRUC, WMI_MAC_PHY_CHAINMASK_CAPABILITY, mac_phy_chainmask_caps, WMITLV_SIZE_VAR)
|
||||
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_STRUC, WMI_MAC_PHY_CHAINMASK_CAPABILITY, mac_phy_chainmask_caps, WMITLV_SIZE_VAR) \
|
||||
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_STRUC, WMI_OEM_DMA_RING_CAPABILITIES, oem_dma_ring_caps, WMITLV_SIZE_VAR)
|
||||
WMITLV_CREATE_PARAM_STRUC(WMI_SERVICE_READY_EXT_EVENTID);
|
||||
|
||||
/* Ready event */
|
||||
|
|
@ -3710,9 +3725,17 @@ WMITLV_CREATE_PARAM_STRUC(WMI_OEM_CAPABILITY_EVENTID);
|
|||
|
||||
/*oem response event*/
|
||||
#define WMITLV_TABLE_WMI_OEM_RESPONSE_EVENTID(id,op,buf,len) \
|
||||
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_BYTE, A_UINT8, data, WMITLV_SIZE_VAR)
|
||||
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_BYTE, A_UINT8, data, WMITLV_SIZE_VAR) \
|
||||
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_oem_indirect_data, wmi_oem_indirect_data, indirect_data, WMITLV_SIZE_FIX) \
|
||||
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_BYTE, A_UINT8, data2, WMITLV_SIZE_VAR)
|
||||
WMITLV_CREATE_PARAM_STRUC(WMI_OEM_RESPONSE_EVENTID);
|
||||
|
||||
/* oem dma buffer release event */
|
||||
#define WMITLV_TABLE_WMI_OEM_DMA_BUF_RELEASE_EVENTID(id,op,buf,len) \
|
||||
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_oem_dma_buf_release_fixed_param, wmi_oem_dma_buf_release_fixed_param, fixed_param, WMITLV_SIZE_FIX) \
|
||||
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_STRUC, wmi_oem_dma_buf_release_entry, entries, WMITLV_SIZE_VAR)
|
||||
WMITLV_CREATE_PARAM_STRUC(WMI_OEM_DMA_BUF_RELEASE_EVENTID);
|
||||
|
||||
/* HOST SWBA Event */
|
||||
#define WMITLV_TABLE_WMI_HOST_SWBA_EVENTID(id,op,buf,len) \
|
||||
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_host_swba_event_fixed_param, wmi_host_swba_event_fixed_param, fixed_param, WMITLV_SIZE_FIX) \
|
||||
|
|
@ -3911,6 +3934,10 @@ WMITLV_CREATE_PARAM_STRUC(WMI_VDEV_DFS_CAC_COMPLETE_EVENTID);
|
|||
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_thermal_mgmt_event_fixed_param, wmi_thermal_mgmt_event_fixed_param, fixed_param, WMITLV_SIZE_FIX)
|
||||
WMITLV_CREATE_PARAM_STRUC(WMI_THERMAL_MGMT_EVENTID);
|
||||
|
||||
#define WMITLV_TABLE_WMI_OEM_DMA_RING_CFG_RSP_EVENTID(id,op,buf,len) \
|
||||
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_oem_dma_ring_cfg_rsp_fixed_param, wmi_oem_dma_ring_cfg_rsp_fixed_param, fixed_param, WMITLV_SIZE_FIX)
|
||||
WMITLV_CREATE_PARAM_STRUC(WMI_OEM_DMA_RING_CFG_RSP_EVENTID)
|
||||
|
||||
/* NAN Response/Indication Event */
|
||||
#define WMITLV_TABLE_WMI_NAN_EVENTID(id,op,buf,len) \
|
||||
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_nan_event_hdr, wmi_nan_event_hdr, fixed_param, WMITLV_SIZE_FIX) \
|
||||
|
|
|
|||
118
fw/wmi_unified.h
118
fw/wmi_unified.h
|
|
@ -931,6 +931,7 @@ typedef enum {
|
|||
WMI_OEM_REQUEST_CMDID, /* UNUSED */
|
||||
/* OEM related cmd used for Low Power ranging */
|
||||
WMI_LPI_OEM_REQ_CMDID,
|
||||
WMI_OEM_DMA_RING_CFG_REQ_CMDID,
|
||||
|
||||
/** Nan Request */
|
||||
WMI_NAN_CMDID = WMI_CMD_GRP_START_ID(WMI_GRP_NAN),
|
||||
|
|
@ -1461,6 +1462,8 @@ typedef enum {
|
|||
WMI_OEM_MEASUREMENT_REPORT_EVENTID, /* DEPRECATED */
|
||||
WMI_OEM_ERROR_REPORT_EVENTID, /* DEPRECATED */
|
||||
WMI_OEM_RESPONSE_EVENTID,
|
||||
WMI_OEM_DMA_RING_CFG_RSP_EVENTID,
|
||||
WMI_OEM_DMA_BUF_RELEASE_EVENTID,
|
||||
|
||||
/* NAN Event */
|
||||
WMI_NAN_EVENTID = WMI_EVT_GRP_START_ID(WMI_GRP_NAN),
|
||||
|
|
@ -13296,6 +13299,109 @@ typedef struct{
|
|||
/** following this structure is num_tpc_chainmask_configs number of wmi_tpc_chainmask_config */
|
||||
} wmi_tpc_chainmask_config_cmd_fixed_param;
|
||||
|
||||
typedef struct {
|
||||
A_UINT32 tlv_header; /** TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_oem_dma_ring_cfg_req_fixed_param */
|
||||
A_UINT32 pdev_id;
|
||||
/**
|
||||
* Bits 31:0: base address of ring [31:0]
|
||||
*/
|
||||
A_UINT32 base_addr_lo;
|
||||
/**
|
||||
* Bits 3:0: base address of ring [35:32]
|
||||
* Bits 31:4: reserved
|
||||
*/
|
||||
A_UINT32 base_addr_hi;
|
||||
/**
|
||||
* Bits 31:0: address of head index [31:0]
|
||||
*/
|
||||
A_UINT32 head_idx_addr_lo;
|
||||
/**
|
||||
* Bits 3:0: address of head index [35:32]
|
||||
* Bits 31:4: reserved
|
||||
*/
|
||||
A_UINT32 head_idx_addr_hi;
|
||||
/**
|
||||
* Bits 31:0: address of tail index [31:0]
|
||||
*/
|
||||
A_UINT32 tail_idx_addr_lo;
|
||||
/**
|
||||
* Bits 3:0: address of tail index [35:32]
|
||||
* Bits 31:4: reserved
|
||||
*/
|
||||
A_UINT32 tail_idx_addr_hi;
|
||||
A_UINT32 num_ptr; /** Number of pointers in the ring */
|
||||
} wmi_oem_dma_ring_cfg_req_fixed_param;
|
||||
|
||||
#define WMI_OEM_DMA_RING_ADDR_LO_S 0
|
||||
#define WMI_OEM_DMA_RING_ADDR_LO 0xffffffff
|
||||
|
||||
#define WMI_OEM_DMA_RING_ADDR_LO_GET(dword) WMI_F_MS(dword, WMI_OEM_DMA_RING_ADDR_LO)
|
||||
#define WMI_OEM_DMA_RING_ADDR_LO_SET(dword, val) WMI_F_RMW(dword, val, WMI_OEM_DMA_RING_ADDR_LO)
|
||||
|
||||
#define WMI_OEM_DMA_RING_ADDR_HI_S 0
|
||||
#define WMI_OEM_DMA_RING_ADDR_HI 0xf
|
||||
|
||||
#define WMI_OEM_DMA_RING_ADDR_HI_GET(dword) WMI_F_MS(dword, WMI_OEM_DMA_RING_ADDR_HI)
|
||||
#define WMI_OEM_DMA_RING_ADDR_HI_SET(dword, val) WMI_F_RMW(dword, val, WMI_OEM_DMA_RING_ADDR_HI)
|
||||
|
||||
typedef struct {
|
||||
A_UINT32 tlv_header; /** TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_oem_dma_ring_cfg_rsp_fixed_param */
|
||||
A_UINT32 pdev_id;
|
||||
A_UINT32 cfg_status; /** Configuration status; see A_STATUS */
|
||||
} wmi_oem_dma_ring_cfg_rsp_fixed_param;
|
||||
|
||||
typedef struct {
|
||||
A_UINT32 tlv_header; /** TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_oem_indirect_data */
|
||||
A_UINT32 pdev_id; /** ID of pdev whose OEM DMA ring produced the data */
|
||||
/**
|
||||
* Bits 31:0: address of data [31:0]
|
||||
*/
|
||||
A_UINT32 addr_lo;
|
||||
/**
|
||||
* Bits 3:0: address of data [35:32]
|
||||
* Bits 11:4: reserved
|
||||
* Bits 31:12: opaque host context data [19:0]
|
||||
*/
|
||||
A_UINT32 addr_hi;
|
||||
A_UINT32 len; /** Length of data in bytes */
|
||||
} wmi_oem_indirect_data;
|
||||
|
||||
#define WMI_OEM_DMA_DATA_ADDR_LO_S 0
|
||||
#define WMI_OEM_DMA_DATA_ADDR_LO 0xffffffff
|
||||
|
||||
#define WMI_OEM_DMA_DATA_ADDR_LO_GET(dword) WMI_F_MS(dword, WMI_OEM_DMA_DATA_ADDR_LO)
|
||||
#define WMI_OEM_DMA_DATA_ADDR_LO_SET(dword, val) WMI_F_RMW(dword, val, WMI_OEM_DMA_DATA_ADDR_LO)
|
||||
|
||||
#define WMI_OEM_DMA_DATA_ADDR_HI_S 0
|
||||
#define WMI_OEM_DMA_DATA_ADDR_HI 0xf
|
||||
|
||||
#define WMI_OEM_DMA_DATA_ADDR_HI_GET(dword) WMI_F_MS(dword, WMI_OEM_DMA_DATA_ADDR_HI)
|
||||
#define WMI_OEM_DMA_DATA_ADDR_HI_SET(dword, val) WMI_F_RMW(dword, val, WMI_OEM_DMA_DATA_ADDR_HI)
|
||||
|
||||
#define WMI_OEM_DMA_DATA_ADDR_HI_HOST_DATA_S 12
|
||||
#define WMI_OEM_DMA_DATA_ADDR_HI_HOST_DATA 0xfffff
|
||||
|
||||
#define WMI_OEM_DMA_DATA_ADDR_HI_HOST_DATA_GET(dword) WMI_F_MS(dword, WMI_OEM_DMA_DATA_ADDR_HI_HOST_DATA)
|
||||
#define WMI_OEM_DMA_DATA_ADDR_HI_HOST_DATA_SET(dword, val) WMI_F_RMW(dword, val, WMI_OEM_DMA_DATA_ADDR_HI_HOST_DATA)
|
||||
|
||||
typedef struct {
|
||||
A_UINT32 tlv_header; /** TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_oem_dma_buf_release_hdr */
|
||||
A_UINT32 pdev_id; /** ID of pdev whose OEM DMA ring produced the data */
|
||||
} wmi_oem_dma_buf_release_fixed_param;
|
||||
|
||||
typedef struct {
|
||||
/**
|
||||
* Bits 31:0: address of data [31:0]
|
||||
*/
|
||||
A_UINT32 addr_lo;
|
||||
/**
|
||||
* Bits 3:0: address of data [35:32]
|
||||
* Bits 11:4: reserved
|
||||
* Bits 31:12: host context data [19:0]
|
||||
*/
|
||||
A_UINT32 addr_hi;
|
||||
} wmi_oem_dma_buf_release_entry;
|
||||
|
||||
typedef struct {
|
||||
A_UINT32 tlv_header; /** TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_nan_cmd_param */
|
||||
A_UINT32 data_len; /** length in byte of data[]. */
|
||||
|
|
@ -18324,6 +18430,17 @@ typedef struct {
|
|||
/* num_phy WMI_HAL_REG_CAPABILITIES_EXT TLV's */
|
||||
} WMI_SOC_HAL_REG_CAPABILITIES;
|
||||
|
||||
typedef struct {
|
||||
A_UINT32 tlv_header; /* TLV tag and len; tag equals WMITLV_TAG_STRUC_WMI_OEM_DMA_RING_CAPABILITIES */
|
||||
A_UINT32 pdev_id;
|
||||
A_UINT32 min_num_ptr;
|
||||
/* Minimum number of pointers in the OEM DMA ring for this pdev */
|
||||
A_UINT32 min_buf_size;
|
||||
/* Minimum size in bytes of each buffer in the OEM DMA ring */
|
||||
A_UINT32 min_buf_align;
|
||||
/* Minimum alignment in bytes of each buffer in the OEM DMA ring */
|
||||
} WMI_OEM_DMA_RING_CAPABILITIES;
|
||||
|
||||
typedef struct {
|
||||
A_UINT32 tlv_header; /* TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_scan_adaptive_dwell_parameters_tlv */
|
||||
/** global default adaptive dwell mode, used when WMI_SCAN_DWELL_MODE_DEFAULT */
|
||||
|
|
@ -19056,6 +19173,7 @@ static INLINE A_UINT8 *wmi_id_to_name(A_UINT32 wmi_command)
|
|||
WMI_RETURN_STRING(WMI_SET_INIT_COUNTRY_CMDID);
|
||||
WMI_RETURN_STRING(WMI_SET_SCAN_DBS_DUTY_CYCLE_CMDID);
|
||||
WMI_RETURN_STRING(WMI_THERM_THROT_SET_CONF_CMDID);
|
||||
WMI_RETURN_STRING(WMI_OEM_DMA_RING_CFG_REQ_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_ 386
|
||||
#define __WMI_REVISION_ 387
|
||||
|
||||
/** 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