mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-14 08:36:12 -04:00
fw-api: CL 4503586 - update fw common interface files
Change-Id: I78be8874ac31e86d3e72f25e074b063ce2e8eca2 WMI: add GRP_MOTION_DET message defs CRs-Fixed: 1107600
This commit is contained in:
parent
202e18c78d
commit
1ab10491bc
4 changed files with 170 additions and 2 deletions
|
|
@ -253,6 +253,7 @@ typedef enum {
|
|||
WMI_SERVICE_VDEV_SWRETRY_PER_AC_CONFIG_SUPPORT=157, /* Support vdev software retries configuration per AC (non aggr retry/aggr retry) */
|
||||
WMI_SERVICE_DUAL_BEACON_ON_SINGLE_MAC_SCC_SUPPORT=158, /* Support dual beacon on same channel on single MAC */
|
||||
WMI_SERVICE_DUAL_BEACON_ON_SINGLE_MAC_MCC_SUPPORT=159, /* Support dual beacon on different channel on single MAC */
|
||||
WMI_SERVICE_MOTION_DET=160, /* support for motion detection config */
|
||||
|
||||
|
||||
/******* ADD NEW SERVICES HERE *******/
|
||||
|
|
|
|||
|
|
@ -916,6 +916,12 @@ typedef enum {
|
|||
WMITLV_TAG_STRUC_wmi_get_tpc_power_cmd_fixed_param,
|
||||
WMITLV_TAG_STRUC_wmi_get_tpc_power_evt_fixed_param,
|
||||
WMITLV_TAG_STRUC_wmi_dma_buf_release_spectral_meta_data,
|
||||
WMITLV_TAG_STRUC_wmi_motion_det_config_params_cmd_fixed_param,
|
||||
WMITLV_TAG_STRUC_wmi_motion_det_base_line_config_params_cmd_fixed_param,
|
||||
WMITLV_TAG_STRUC_wmi_motion_det_start_stop_cmd_fixed_param,
|
||||
WMITLV_TAG_STRUC_wmi_motion_det_base_line_start_stop_cmd_fixed_param,
|
||||
WMITLV_TAG_STRUC_wmi_motion_det_event,
|
||||
WMITLV_TAG_STRUC_wmi_motion_det_base_line_event,
|
||||
} WMITLV_TAG_ID;
|
||||
|
||||
/*
|
||||
|
|
@ -1289,6 +1295,10 @@ typedef enum {
|
|||
OP(WMI_PEER_TID_CONFIGURATIONS_CMDID) \
|
||||
OP(WMI_VDEV_SET_CUSTOM_SW_RETRY_TH_CMDID) \
|
||||
OP(WMI_GET_TPC_POWER_CMDID) \
|
||||
OP(WMI_MOTION_DET_CONFIG_PARAM_CMDID) \
|
||||
OP(WMI_MOTION_DET_BASE_LINE_CONFIG_PARAM_CMDID) \
|
||||
OP(WMI_MOTION_DET_START_STOP_CMDID) \
|
||||
OP(WMI_MOTION_DET_BASE_LINE_START_STOP_CMDID) \
|
||||
/* add new CMD_LIST elements above this line */
|
||||
|
||||
|
||||
|
|
@ -1496,6 +1506,8 @@ typedef enum {
|
|||
OP(WMI_TWT_RESUME_DIALOG_COMPLETE_EVENTID) \
|
||||
OP(WMI_ROAM_SCAN_STATS_EVENTID) \
|
||||
OP(WMI_GET_TPC_POWER_EVENTID) \
|
||||
OP(WMI_MOTION_DET_HOST_EVENTID) \
|
||||
OP(WMI_MOTION_DET_BASE_LINE_HOST_EVENTID) \
|
||||
/* add new EVT_LIST elements above this line */
|
||||
|
||||
|
||||
|
|
@ -3649,6 +3661,23 @@ WMITLV_CREATE_PARAM_STRUC(WMI_ROAM_BTM_CONFIG_CMDID);
|
|||
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_wlm_config_cmd_fixed_param, wmi_wlm_config_cmd_fixed_param, fixed_param, WMITLV_SIZE_FIX)
|
||||
WMITLV_CREATE_PARAM_STRUC(WMI_WLM_CONFIG_CMDID);
|
||||
|
||||
/* Motion detection cmd */
|
||||
#define WMITLV_TABLE_WMI_MOTION_DET_CONFIG_PARAM_CMDID(id,op,buf,len) \
|
||||
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_motion_det_config_params_cmd_fixed_param, wmi_motion_det_config_params_cmd_fixed_param, fixed_param, WMITLV_SIZE_FIX)
|
||||
WMITLV_CREATE_PARAM_STRUC(WMI_MOTION_DET_CONFIG_PARAM_CMDID);
|
||||
|
||||
#define WMITLV_TABLE_WMI_MOTION_DET_BASE_LINE_CONFIG_PARAM_CMDID(id,op,buf,len) \
|
||||
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_motion_det_base_line_config_params_cmd_fixed_param, wmi_motion_det_base_line_config_params_cmd_fixed_param, fixed_param, WMITLV_SIZE_FIX)
|
||||
WMITLV_CREATE_PARAM_STRUC(WMI_MOTION_DET_BASE_LINE_CONFIG_PARAM_CMDID);
|
||||
|
||||
#define WMITLV_TABLE_WMI_MOTION_DET_START_STOP_CMDID(id,op,buf,len) \
|
||||
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_motion_det_start_stop_cmd_fixed_param, wmi_motion_det_start_stop_cmd_fixed_param, fixed_param, WMITLV_SIZE_FIX)
|
||||
WMITLV_CREATE_PARAM_STRUC(WMI_MOTION_DET_START_STOP_CMDID);
|
||||
|
||||
#define WMITLV_TABLE_WMI_MOTION_DET_BASE_LINE_START_STOP_CMDID(id,op,buf,len) \
|
||||
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_motion_det_base_line_start_stop_cmd_fixed_param, wmi_motion_det_base_line_start_stop_cmd_fixed_param, fixed_param, WMITLV_SIZE_FIX)
|
||||
WMITLV_CREATE_PARAM_STRUC(WMI_MOTION_DET_BASE_LINE_START_STOP_CMDID);
|
||||
|
||||
/* Pdev Set AC TX Queue Optimized Cmd */
|
||||
#define WMITLV_TABLE_WMI_PDEV_SET_AC_TX_QUEUE_OPTIMIZED_CMDID(id,op,buf,len) \
|
||||
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_pdev_set_ac_tx_queue_optimized_cmd_fixed_param, wmi_pdev_set_ac_tx_queue_optimized_cmd_fixed_param, fixed_param, WMITLV_SIZE_FIX)
|
||||
|
|
@ -3982,7 +4011,9 @@ WMITLV_CREATE_PARAM_STRUC(WMI_ROAM_SYNCH_FRAME_EVENTID);
|
|||
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_STRUC, wmi_hb_ind_event_fixed_param, hb_indevt, WMITLV_SIZE_VAR) \
|
||||
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_STRUC, WMI_GTK_OFFLOAD_STATUS_EVENT_fixed_param, wow_gtkigtk, WMITLV_SIZE_VAR) \
|
||||
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_STRUC, wmi_oic_ping_handoff_event, wow_oic_ping_handoff, WMITLV_SIZE_VAR) \
|
||||
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_STRUC, wmi_dhcp_lease_renew_event, wow_dhcp_lease_renew, WMITLV_SIZE_VAR)
|
||||
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_STRUC, wmi_dhcp_lease_renew_event, wow_dhcp_lease_renew, WMITLV_SIZE_VAR) \
|
||||
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_STRUC, wmi_motion_det_event, md_indevt, WMITLV_SIZE_VAR) \
|
||||
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_STRUC, wmi_motion_det_base_line_event, bl_indevt, WMITLV_SIZE_VAR)
|
||||
WMITLV_CREATE_PARAM_STRUC(WMI_WOW_WAKEUP_HOST_EVENTID);
|
||||
|
||||
#define WMITLV_TABLE_WMI_WOW_INITIAL_WAKEUP_EVENTID(id,op,buf,len) \
|
||||
|
|
@ -4996,6 +5027,14 @@ WMITLV_CREATE_PARAM_STRUC(WMI_TWT_RESUME_DIALOG_COMPLETE_EVENTID);
|
|||
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_UINT32, A_UINT32, rssi, WMITLV_SIZE_VAR)
|
||||
WMITLV_CREATE_PARAM_STRUC(WMI_ROAM_SCAN_STATS_EVENTID);
|
||||
|
||||
/* Motion detection events */
|
||||
#define WMITLV_TABLE_WMI_MOTION_DET_HOST_EVENTID(id,op,buf,len) \
|
||||
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_motion_det_event, wmi_motion_det_event, fixed_param, WMITLV_SIZE_FIX)
|
||||
WMITLV_CREATE_PARAM_STRUC(WMI_MOTION_DET_HOST_EVENTID);
|
||||
|
||||
#define WMITLV_TABLE_WMI_MOTION_DET_BASE_LINE_HOST_EVENTID(id,op,buf,len) \
|
||||
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_motion_det_base_line_event, wmi_motion_det_base_line_event, fixed_param, WMITLV_SIZE_FIX)
|
||||
WMITLV_CREATE_PARAM_STRUC(WMI_MOTION_DET_BASE_LINE_HOST_EVENTID);
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
|
|
|
|||
128
fw/wmi_unified.h
128
fw/wmi_unified.h
|
|
@ -243,6 +243,7 @@ typedef enum {
|
|||
WMI_GRP_WLM, /* 0x3c WLAN Latency Manager */
|
||||
WMI_GRP_11K_OFFLOAD, /* 0x3d */
|
||||
WMI_GRP_TWT, /* 0x3e TWT (Target Wake Time) for STA and AP */
|
||||
WMI_GRP_MOTION_DET, /* 0x3f */
|
||||
} WMI_GRP_ID;
|
||||
|
||||
#define WMI_CMD_GRP_START_ID(grp_id) (((grp_id) << 12) | 0x1)
|
||||
|
|
@ -1132,6 +1133,12 @@ typedef enum {
|
|||
WMI_TWT_DEL_DIALOG_CMDID,
|
||||
WMI_TWT_PAUSE_DIALOG_CMDID,
|
||||
WMI_TWT_RESUME_DIALOG_CMDID,
|
||||
|
||||
/** WMI commands related to motion detection **/
|
||||
WMI_MOTION_DET_CONFIG_PARAM_CMDID = WMI_CMD_GRP_START_ID(WMI_GRP_MOTION_DET),
|
||||
WMI_MOTION_DET_BASE_LINE_CONFIG_PARAM_CMDID,
|
||||
WMI_MOTION_DET_START_STOP_CMDID,
|
||||
WMI_MOTION_DET_BASE_LINE_START_STOP_CMDID,
|
||||
} WMI_CMD_ID;
|
||||
|
||||
typedef enum {
|
||||
|
|
@ -1689,6 +1696,10 @@ typedef enum {
|
|||
WMI_NDP_END_INDICATION_EVENTID,
|
||||
WMI_WLAN_COEX_BT_ACTIVITY_EVENTID,
|
||||
WMI_NDL_SCHEDULE_UPDATE_EVENTID,
|
||||
|
||||
/** WMI events related to motion detection */
|
||||
WMI_MOTION_DET_HOST_EVENTID = WMI_EVT_GRP_START_ID(WMI_GRP_MOTION_DET),
|
||||
WMI_MOTION_DET_BASE_LINE_HOST_EVENTID,
|
||||
} WMI_EVT_ID;
|
||||
|
||||
/* defines for OEM message sub-types */
|
||||
|
|
@ -11837,6 +11848,8 @@ typedef enum wake_reason_e {
|
|||
WOW_REASON_SAP_OBSS_DETECTION,
|
||||
WOW_REASON_BSS_COLOR_COLLISION_DETECT,
|
||||
WOW_REASON_TKIP_MIC_ERR_FRAME_RECVD_DETECT,
|
||||
WOW_REASON_WLAN_MD, /* motion detected */
|
||||
WOW_REASON_WLAN_BL, /* baselining done */
|
||||
|
||||
WOW_REASON_DEBUG_TEST = 0xFF,
|
||||
} WOW_WAKE_REASON_TYPE;
|
||||
|
|
@ -21687,6 +21700,10 @@ static INLINE A_UINT8 *wmi_id_to_name(A_UINT32 wmi_command)
|
|||
WMI_RETURN_STRING(WMI_PEER_TID_CONFIGURATIONS_CMDID);
|
||||
WMI_RETURN_STRING(WMI_VDEV_SET_CUSTOM_SW_RETRY_TH_CMDID);
|
||||
WMI_RETURN_STRING(WMI_GET_TPC_POWER_CMDID);
|
||||
WMI_RETURN_STRING(WMI_MOTION_DET_CONFIG_PARAM_CMDID);
|
||||
WMI_RETURN_STRING(WMI_MOTION_DET_BASE_LINE_CONFIG_PARAM_CMDID);
|
||||
WMI_RETURN_STRING(WMI_MOTION_DET_START_STOP_CMDID);
|
||||
WMI_RETURN_STRING(WMI_MOTION_DET_BASE_LINE_START_STOP_CMDID);
|
||||
}
|
||||
|
||||
return "Invalid WMI cmd";
|
||||
|
|
@ -22755,6 +22772,117 @@ typedef struct {
|
|||
A_INT32 tx_power; /* TX power for the specified HALPHY parameters in half dBm unit */
|
||||
} wmi_get_tpc_power_evt_fixed_param;
|
||||
|
||||
/* below structures are related to Motion Detection. */
|
||||
typedef struct {
|
||||
/** TLV tag and len; tag equals
|
||||
* WMITLV_TAG_STRUC_wmi_motion_det_config_params_cmd_fixed_param */
|
||||
A_UINT32 tlv_header; /** TLV Header */
|
||||
A_UINT32 vdev_id; /** Vdev ID */
|
||||
A_UINT32 time_t1; /** Time gap of successive bursts of
|
||||
* measurement frames during coarse
|
||||
* motion detection (in ms) */
|
||||
A_UINT32 time_t2; /** Time gap of successive bursts of
|
||||
* measurement frames during fine
|
||||
* motion detection (in ms) */
|
||||
A_UINT32 n1; /** number of measurement frames in one
|
||||
* burst, for coarse detection */
|
||||
A_UINT32 n2; /** number of measurement frames in one
|
||||
* burst, for fine detection */
|
||||
A_UINT32 time_t1_gap; /** gap between measurement frames in
|
||||
* course detection (in ms) */
|
||||
A_UINT32 time_t2_gap; /** gap between measurement frames in
|
||||
* fine detection (in ms) */
|
||||
A_UINT32 coarse_K; /** number of times motion detection has to
|
||||
* be performed for coarse detection */
|
||||
A_UINT32 fine_K; /** number of times motion detection has to
|
||||
* be performed for fine detection */
|
||||
A_UINT32 coarse_Q; /** number of times motion is expected
|
||||
* to be detected for success case in
|
||||
* coarse detection */
|
||||
A_UINT32 fine_Q; /** number of times motion is expected
|
||||
* to be detected for success case in
|
||||
* fine detection */
|
||||
A_UINT32 md_coarse_thr_high; /** higher threshold value (in percent)
|
||||
* from host to FW, which will be used in
|
||||
* coarse detection phase of motion detection.
|
||||
* This is the threshold for the correlation
|
||||
* of the old RF local-scattering environment
|
||||
* with the current RF local-scattering
|
||||
* environment. A value of 100(%) indicates
|
||||
* that neither the transceiver nor any
|
||||
* nearby objects have changed position. */
|
||||
A_UINT32 md_fine_thr_high; /** higher threshold value (in percent)
|
||||
* from host to FW, which will be used in
|
||||
* fine detection phase of motion detection.
|
||||
* This is the threshold for correlation
|
||||
* between the old and current RF environments,
|
||||
* as explained above. */
|
||||
A_UINT32 md_coarse_thr_low; /** lower threshold value (in percent)
|
||||
* for immediate detection of motion in
|
||||
* coarse detection phase.
|
||||
* This is the threshold for correlation
|
||||
* between the old and current RF environments,
|
||||
* as explained above. */
|
||||
A_UINT32 md_fine_thr_low; /** lower threshold value (in percent)
|
||||
* for immediate detection of motion in
|
||||
* fine detection phase.
|
||||
* This is the threshold for correlation
|
||||
* between the old and current RF environments,
|
||||
* as explained above. */
|
||||
} wmi_motion_det_config_params_cmd_fixed_param;
|
||||
|
||||
typedef struct {
|
||||
/** TLV tag and len; tag equals
|
||||
* WMITLV_TAG_STRUC_wmi_motion_det_base_line_config_params_cmd_fixed_param */
|
||||
A_UINT32 tlv_header; /** TLV Header */
|
||||
A_UINT32 vdev_id; /** Vdev ID */
|
||||
A_UINT32 bl_time_t; /** time T for baseline (in ms)
|
||||
* Every bl_time_t, bl_n packets are sent */
|
||||
A_UINT32 bl_packet_gap; /** gap between measurement frames for baseline
|
||||
* (in ms) */
|
||||
A_UINT32 bl_n; /** number of measurement frames to be sent
|
||||
* during one baseline */
|
||||
A_UINT32 bl_num_meas; /** number of times the baseline measurement
|
||||
* to be done */
|
||||
} wmi_motion_det_base_line_config_params_cmd_fixed_param;
|
||||
|
||||
typedef struct {
|
||||
/** TLV tag and len; tag equals
|
||||
* WMITLV_TAG_STRUC_wmi_motion_det_start_stop_cmd_fixed_param */
|
||||
A_UINT32 tlv_header; /** TLV Header */
|
||||
A_UINT32 vdev_id; /** Vdev ID */
|
||||
A_UINT32 enable; /** start = 1, stop =0 */
|
||||
} wmi_motion_det_start_stop_cmd_fixed_param;
|
||||
|
||||
typedef struct {
|
||||
/** TLV tag and len; tag equals
|
||||
* WMITLV_TAG_STRUC_wmi_motion_det_base_line_start_stop_cmd_fixed_param */
|
||||
A_UINT32 tlv_header; /** TLV Header */
|
||||
A_UINT32 vdev_id; /** Vdev ID */
|
||||
A_UINT32 enable; /** start = 1, stop =0 */
|
||||
} wmi_motion_det_base_line_start_stop_cmd_fixed_param;
|
||||
|
||||
typedef struct {
|
||||
/** TLV tag and len; tag equals
|
||||
* WMITLV_TAG_STRUC_wmi_motion_det_event */
|
||||
A_UINT32 tlv_header; /** TLV Header */
|
||||
A_UINT32 vdev_id; /** Vdev ID */
|
||||
A_UINT32 status; /** status = 1 -> motion detected */
|
||||
} wmi_motion_det_event;
|
||||
|
||||
typedef struct {
|
||||
/** TLV tag and len; tag equals
|
||||
* WMITLV_TAG_STRUC_wmi_motion_det_base_line_event */
|
||||
A_UINT32 tlv_header; /** TLV Header */
|
||||
A_UINT32 vdev_id; /** Vdev ID */
|
||||
A_UINT32 bl_baseline_value; /** baseline correlation value calculated
|
||||
* during baselining phase (in %) */
|
||||
A_UINT32 bl_max_corr_reserved; /** max corr value obtained during baselining
|
||||
* phase (in %); reserved for future */
|
||||
A_UINT32 bl_min_corr_reserved; /** min corr value obtained during baselining
|
||||
* phase (in %); reserved for future */
|
||||
} wmi_motion_det_base_line_event;
|
||||
|
||||
|
||||
/* ADD NEW DEFS HERE */
|
||||
|
||||
|
|
|
|||
|
|
@ -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_ 533
|
||||
#define __WMI_REVISION_ 534
|
||||
|
||||
/** 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