mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-11 23:24:22 -04:00
fw-api: CL 2836872 - update fw common interface files
WMI interface changes for CSA offload to FW for APs Change-Id: I91470a3a9226e9968f91a78dffd28f596ac05c82 CRs-Fixed: 1107600
This commit is contained in:
parent
717b5a51bf
commit
a659461af7
4 changed files with 78 additions and 2 deletions
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
* Copyright (c) 2011-2016 The Linux Foundation. All rights reserved.
|
||||
* Copyright (c) 2011-2017 The Linux Foundation. All rights reserved.
|
||||
*
|
||||
* Previously licensed under the ISC license by Qualcomm Atheros, Inc.
|
||||
*
|
||||
|
|
@ -186,6 +186,7 @@ typedef enum {
|
|||
WMI_SERVICE_REGULATORY_DB=117, /* support regulatory database in FW */
|
||||
WMI_SERVICE_11D_OFFLOAD=118, /* support 11D scan offload in FW */
|
||||
WMI_SERVICE_HW_DATA_FILTERING=119,
|
||||
WMI_SERVICE_MULTIPLE_VDEV_RESTART=120, /* Support for single command for multiple vdev restart */
|
||||
|
||||
|
||||
/******* ADD NEW SERVICES HERE UNTIL ALL VALUES UP TO 128 ARE USED *******/
|
||||
|
|
|
|||
|
|
@ -796,6 +796,8 @@ typedef enum {
|
|||
WMITLV_TAG_STRUC_wmi_connected_nlo_bss_band_rssi_pref,
|
||||
WMITLV_TAG_STRUC_wmi_peer_oper_mode_change_event_fixed_param,
|
||||
WMITLV_TAG_STRUC_wmi_chip_power_save_failure_detected_fixed_param,
|
||||
WMITLV_TAG_STRUC_wmi_pdev_multiple_vdev_restart_request_cmd_fixed_param,
|
||||
WMITLV_TAG_STRUC_wmi_pdev_csa_switch_count_status_event_fixed_param,
|
||||
} WMITLV_TAG_ID;
|
||||
|
||||
/*
|
||||
|
|
@ -1116,6 +1118,7 @@ typedef enum {
|
|||
OP(WMI_VDEV_ADD_MAC_ADDR_TO_RX_FILTER_CMDID) \
|
||||
OP(WMI_BPF_SET_VDEV_ACTIVE_MODE_CMDID) \
|
||||
OP(WMI_HW_DATA_FILTER_CMDID) \
|
||||
OP(WMI_PDEV_MULTIPLE_VDEV_RESTART_REQUEST_CMDID) \
|
||||
/* add new CMD_LIST elements above this line */
|
||||
|
||||
|
||||
|
|
@ -1292,6 +1295,7 @@ typedef enum {
|
|||
OP(WMI_VDEV_ADD_MAC_ADDR_TO_RX_FILTER_STATUS_EVENTID) \
|
||||
OP(WMI_PEER_OPER_MODE_CHANGE_EVENTID) \
|
||||
OP(WMI_PDEV_CHIP_POWER_SAVE_FAILURE_DETECTED_EVENTID) \
|
||||
OP(WMI_PDEV_CSA_SWITCH_COUNT_STATUS_EVENTID) \
|
||||
/* add new EVT_LIST elements above this line */
|
||||
|
||||
|
||||
|
|
@ -3199,6 +3203,13 @@ WMITLV_CREATE_PARAM_STRUC(WMI_VDEV_ADD_MAC_ADDR_TO_RX_FILTER_CMDID);
|
|||
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_hw_data_filter_cmd_fixed_param, wmi_hw_data_filter_cmd_fixed_param, fixed_param, WMITLV_SIZE_FIX)
|
||||
WMITLV_CREATE_PARAM_STRUC(WMI_HW_DATA_FILTER_CMDID);
|
||||
|
||||
/* Multiple vdev restart request cmd */
|
||||
#define WMITLV_TABLE_WMI_PDEV_MULTIPLE_VDEV_RESTART_REQUEST_CMDID(id,op,buf,len) \
|
||||
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_pdev_multiple_vdev_restart_request_cmd_fixed_param, wmi_pdev_multiple_vdev_restart_request_cmd_fixed_param, fixed_param, WMITLV_SIZE_FIX) \
|
||||
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_UINT32, A_UINT32, vdev_ids, WMITLV_SIZE_VAR) \
|
||||
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_channel, wmi_channel, chan, WMITLV_SIZE_FIX)
|
||||
WMITLV_CREATE_PARAM_STRUC(WMI_PDEV_MULTIPLE_VDEV_RESTART_REQUEST_CMDID);
|
||||
|
||||
|
||||
/************************** TLV definitions of WMI events *******************************/
|
||||
|
||||
|
|
@ -4268,6 +4279,11 @@ WMITLV_CREATE_PARAM_STRUC(WMI_PKGID_EVENTID);
|
|||
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_vdev_add_mac_addr_to_rx_filter_status_event_fixed_param, wmi_vdev_add_mac_addr_to_rx_filter_status_event_fixed_param, fixed_param, WMITLV_SIZE_FIX)
|
||||
WMITLV_CREATE_PARAM_STRUC(WMI_VDEV_ADD_MAC_ADDR_TO_RX_FILTER_STATUS_EVENTID);
|
||||
|
||||
#define WMITLV_TABLE_WMI_PDEV_CSA_SWITCH_COUNT_STATUS_EVENTID(id,op,buf,len) \
|
||||
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_pdev_csa_switch_count_status_event_fixed_param, wmi_pdev_csa_switch_count_status_event_fixed_param, fixed_param, WMITLV_SIZE_FIX) \
|
||||
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_UINT32, A_UINT32, vdev_ids, WMITLV_SIZE_VAR)
|
||||
WMITLV_CREATE_PARAM_STRUC(WMI_PDEV_CSA_SWITCH_COUNT_STATUS_EVENTID);
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
|
|
|
|||
|
|
@ -356,6 +356,8 @@ typedef enum {
|
|||
WMI_PDEV_GET_CHIP_POWER_STATS_CMDID,
|
||||
/** set stats reporting thresholds - see WMI_REPORT_STATS_EVENTID */
|
||||
WMI_PDEV_SET_STATS_THRESHOLD_CMDID,
|
||||
/** vdev restart request for multiple vdevs */
|
||||
WMI_PDEV_MULTIPLE_VDEV_RESTART_REQUEST_CMDID,
|
||||
|
||||
/* VDEV (virtual device) specific commands */
|
||||
/** vdev create */
|
||||
|
|
@ -1093,6 +1095,9 @@ typedef enum {
|
|||
/** Power Save Failure Detected */
|
||||
WMI_PDEV_CHIP_POWER_SAVE_FAILURE_DETECTED_EVENTID,
|
||||
|
||||
/* Event to report the switch count in csa of one or more VDEVs */
|
||||
WMI_PDEV_CSA_SWITCH_COUNT_STATUS_EVENTID,
|
||||
|
||||
/* VDEV specific events */
|
||||
/** VDEV started event in response to VDEV_START request */
|
||||
WMI_VDEV_START_RESP_EVENTID = WMI_EVT_GRP_START_ID(WMI_GRP_VDEV),
|
||||
|
|
@ -6674,6 +6679,14 @@ typedef struct {
|
|||
A_UINT32 tim_ie_offset;
|
||||
/** beacon buffer length. data is in TLV data[] */
|
||||
A_UINT32 buf_len;
|
||||
/** CSA IE switch count offset from the beginning of data[]
|
||||
* Value 0 indicates CSA IE is not present in beacon template.
|
||||
*/
|
||||
A_UINT32 csa_switch_count_offset; /* units = bytes */
|
||||
/** Extended CSA IE switch count offset from the beginning of data[]
|
||||
* Value 0 indicates CSA IE is not present in beacon template.
|
||||
*/
|
||||
A_UINT32 ext_csa_switch_count_offset; /* units = bytes */
|
||||
|
||||
/*
|
||||
* The TLVs follows:
|
||||
|
|
@ -17685,6 +17698,7 @@ static INLINE A_UINT8 *wmi_id_to_name(A_UINT32 wmi_command)
|
|||
WMI_RETURN_STRING(WMI_VDEV_ADD_MAC_ADDR_TO_RX_FILTER_CMDID);
|
||||
WMI_RETURN_STRING(WMI_BPF_SET_VDEV_ACTIVE_MODE_CMDID);
|
||||
WMI_RETURN_STRING(WMI_HW_DATA_FILTER_CMDID);
|
||||
WMI_RETURN_STRING(MI_PDEV_MULTIPLE_VDEV_RESTART_REQUEST_CMDID);
|
||||
}
|
||||
|
||||
return "Invalid WMI cmd";
|
||||
|
|
@ -17882,6 +17896,51 @@ typedef struct {
|
|||
A_UINT32 hw_filter_bitmap; /* see WMI_HW_DATA_FILTER_BITMAP_TYPE */
|
||||
} wmi_hw_data_filter_cmd_fixed_param;
|
||||
|
||||
/* This command is used whenever host wants to restart multiple
|
||||
* VDEVs using single command and the VDEV that are restarted will
|
||||
* need to have same properties they had before restart except for the
|
||||
* operating channel
|
||||
*/
|
||||
typedef struct {
|
||||
A_UINT32 tlv_header; /** TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_pdev_multiple_vdev_restart_request_cmd_fixed_param */
|
||||
/** pdev_id for identifying the MAC
|
||||
* See macros starting with WMI_PDEV_ID_ for values.
|
||||
* In non-DBDC case host should set it to 0
|
||||
*/
|
||||
A_UINT32 pdev_id;
|
||||
/** unique id identifying the module, generated by the caller */
|
||||
A_UINT32 requestor_id;
|
||||
/** Disable H/W ack.
|
||||
* During CAC, Our HW shouldn't ack directed frames
|
||||
*/
|
||||
A_UINT32 disable_hw_ack;
|
||||
/* Determine the duration of CAC on the given channel 'chan' */
|
||||
A_UINT32 cac_duration_ms;
|
||||
A_UINT32 num_vdevs;
|
||||
|
||||
/* The TLVs follows this structure:
|
||||
* A_UINT32 vdev_ids[]; <--- Array of VDEV ids.
|
||||
* wmi_channel chan; <------ WMI channel
|
||||
*/
|
||||
} wmi_pdev_multiple_vdev_restart_request_cmd_fixed_param;
|
||||
|
||||
typedef struct {
|
||||
/** TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_pdev_csa_switch_count_status_event_fixed_param */
|
||||
A_UINT32 tlv_header;
|
||||
/** pdev_id for identifying the MAC
|
||||
* See macros starting with WMI_PDEV_ID_ for values.
|
||||
* In non-DBDC case host should set it to 0
|
||||
*/
|
||||
A_UINT32 pdev_id;
|
||||
/** CSA switch count value in the last transmitted beacon */
|
||||
A_UINT32 current_switch_count;
|
||||
A_UINT32 num_vdevs;
|
||||
|
||||
/* The TLVs follows this structure:
|
||||
* A_UINT32 vdev_ids[]; <--- Array of VDEV ids.
|
||||
*/
|
||||
} wmi_pdev_csa_switch_count_status_event_fixed_param;
|
||||
|
||||
|
||||
/* 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_ 342
|
||||
#define __WMI_REVISION_ 343
|
||||
|
||||
/** 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