qcacld-3.0: CL 1685950 - update fw common interface files

WMI defs for DFS offload

Change-Id: Ief6ea8771ec130a94f19c7296930534364bdd2fb
CRs-Fixed: 865207
This commit is contained in:
Sandeep Puligilla 2016-11-03 12:32:20 -07:00 • committed by Prakash Dhavali
commit 9ff96571b0
4 changed files with 140 additions and 2 deletions

View file

@ -270,6 +270,7 @@ typedef enum {
* support bigger MSDU ID partition
*/
WMI_SERVICE_TX_MSDU_ID_NEW_PARTITION_SUPPORT = 112,
WMI_SERVICE_DFS_PHYERR_OFFLOAD = 113,
/*** ADD NEW SERVICES HERE UNTIL ALL VALUES UP TO 128 ARE USED ***/

View file

@ -757,6 +757,13 @@ typedef enum {
WMITLV_TAG_STRUC_wmi_tbtt_offset_ext_event_fixed_param,
WMITLV_TAG_STRUC_wmi_sar_limits_cmd_fixed_param,
WMITLV_TAG_STRUC_wmi_sar_limit_cmd_row,
WMITLV_TAG_STRUC_wmi_pdev_dfs_phyerr_offload_enable_cmd_fixed_param,
WMITLV_TAG_STRUC_wmi_pdev_dfs_phyerr_offload_disable_cmd_fixed_param,
WMITLV_TAG_STRUC_wmi_vdev_adfs_ch_cfg_cmd_fixed_param,
WMITLV_TAG_STRUC_wmi_vdev_adfs_ocac_abort_cmd_fixed_param,
WMITLV_TAG_STRUC_wmi_pdev_dfs_radar_detection_event_fixed_param,
WMITLV_TAG_STRUC_wmi_vdev_adfs_ocac_complete_event_fixed_param,
WMITLV_TAG_STRUC_wmi_vdev_dfs_cac_complete_event_fixed_param,
} WMITLV_TAG_ID;
@ -1063,6 +1070,10 @@ typedef enum {
OP(WMI_REQUEST_WLAN_STATS_CMDID) \
OP(WMI_VDEV_ENCRYPT_DECRYPT_DATA_REQ_CMDID) \
OP(WMI_SAR_LIMITS_CMDID) \
OP(WMI_PDEV_DFS_PHYERR_OFFLOAD_ENABLE_CMDID) \
OP(WMI_PDEV_DFS_PHYERR_OFFLOAD_DISABLE_CMDID) \
OP(WMI_VDEV_ADFS_CH_CFG_CMDID) \
OP(WMI_VDEV_ADFS_OCAC_ABORT_CMDID) \
/* add new CMD_LIST elements above this line */
/*
@ -1225,6 +1236,9 @@ typedef enum {
OP(WMI_REPORT_RX_AGGR_FAILURE_EVENTID) \
OP(WMI_VDEV_ENCRYPT_DECRYPT_DATA_RESP_EVENTID) \
OP(WMI_TBTTOFFSET_EXT_UPDATE_EVENTID) \
OP(WMI_PDEV_DFS_RADAR_DETECTION_EVENTID) \
OP(WMI_VDEV_DFS_CAC_COMPLETE_EVENTID) \
OP(WMI_VDEV_ADFS_OCAC_COMPLETE_EVENTID) \
/* add new EVT_LIST elements above this line */
/* TLV definitions of WMI commands */
@ -2072,6 +2086,30 @@ WMITLV_CREATE_PARAM_STRUC(WMI_DFS_PHYERR_FILTER_ENA_CMDID);
WMITLV_CREATE_PARAM_STRUC(WMI_DFS_PHYERR_FILTER_DIS_CMDID);
/* DFS phyerr processing offload enable cmd */
#define WMITLV_TABLE_WMI_PDEV_DFS_PHYERR_OFFLOAD_ENABLE_CMDID(id, op, buf, len) \
WMITLV_ELEM(id, op, buf, len, WMITLV_TAG_STRUC_wmi_pdev_dfs_phyerr_offload_enable_cmd_fixed_param, wmi_pdev_dfs_phyerr_offload_enable_cmd_fixed_param, fixed_param, WMITLV_SIZE_FIX)
WMITLV_CREATE_PARAM_STRUC(WMI_PDEV_DFS_PHYERR_OFFLOAD_ENABLE_CMDID);
/* DFS phyerr processing offload disble cmd */
#define WMITLV_TABLE_WMI_PDEV_DFS_PHYERR_OFFLOAD_DISABLE_CMDID(id, op, buf, len) \
WMITLV_ELEM(id, op, buf, len, WMITLV_TAG_STRUC_wmi_pdev_dfs_phyerr_offload_disable_cmd_fixed_param, wmi_pdev_dfs_phyerr_offload_disable_cmd_fixed_param, fixed_param, WMITLV_SIZE_FIX)
WMITLV_CREATE_PARAM_STRUC(WMI_PDEV_DFS_PHYERR_OFFLOAD_DISABLE_CMDID);
/* set ADFS channel config cmd */
#define WMITLV_TABLE_WMI_VDEV_ADFS_CH_CFG_CMDID(id, op, buf, len) \
WMITLV_ELEM(id, op, buf, len, WMITLV_TAG_STRUC_wmi_vdev_adfs_ch_cfg_cmd_fixed_param, wmi_vdev_adfs_ch_cfg_cmd_fixed_param, fixed_param, WMITLV_SIZE_FIX)
WMITLV_CREATE_PARAM_STRUC(WMI_VDEV_ADFS_CH_CFG_CMDID);
/* DFS abort ADFS ocac currently in progress */
#define WMITLV_TABLE_WMI_VDEV_ADFS_OCAC_ABORT_CMDID(id, op, buf, len) \
WMITLV_ELEM(id, op, buf, len, WMITLV_TAG_STRUC_wmi_vdev_adfs_ocac_abort_cmd_fixed_param, wmi_vdev_adfs_ocac_abort_cmd_fixed_param, fixed_param, WMITLV_SIZE_FIX)
WMITLV_CREATE_PARAM_STRUC(WMI_VDEV_ADFS_OCAC_ABORT_CMDID);
/* WOW Add Wake Pattern Cmd */
#define WMITLV_TABLE_WMI_WOW_ADD_WAKE_PATTERN_CMDID(id,op,buf,len) \
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_WMI_WOW_ADD_PATTERN_CMD_fixed_param, WMI_WOW_ADD_PATTERN_CMD_fixed_param, fixed_param, WMITLV_SIZE_FIX) \
@ -3569,6 +3607,18 @@ WMITLV_CREATE_PARAM_STRUC(WMI_PEER_TX_FAIL_CNT_THR_EVENTID);
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_dfs_radar_event_fixed_param, wmi_dfs_radar_event_fixed_param, fixed_param, WMITLV_SIZE_FIX)
WMITLV_CREATE_PARAM_STRUC(WMI_DFS_RADAR_EVENTID);
#define WMITLV_TABLE_WMI_PDEV_DFS_RADAR_DETECTION_EVENTID(id, op, buf, len) \
WMITLV_ELEM(id, op, buf, len, WMITLV_TAG_STRUC_wmi_pdev_dfs_radar_detection_event_fixed_param, wmi_pdev_dfs_radar_detection_event_fixed_param, fixed_param, WMITLV_SIZE_FIX)
WMITLV_CREATE_PARAM_STRUC(WMI_PDEV_DFS_RADAR_DETECTION_EVENTID);
#define WMITLV_TABLE_WMI_VDEV_ADFS_OCAC_COMPLETE_EVENTID(id, op, buf, len) \
WMITLV_ELEM(id, op, buf, len, WMITLV_TAG_STRUC_wmi_vdev_adfs_ocac_complete_event_fixed_param, wmi_vdev_adfs_ocac_complete_event_fixed_param, fixed_param, WMITLV_SIZE_FIX)
WMITLV_CREATE_PARAM_STRUC(WMI_VDEV_ADFS_OCAC_COMPLETE_EVENTID);
#define WMITLV_TABLE_WMI_VDEV_DFS_CAC_COMPLETE_EVENTID(id, op, buf, len) \
WMITLV_ELEM(id, op, buf, len, WMITLV_TAG_STRUC_wmi_vdev_dfs_cac_complete_event_fixed_param, wmi_vdev_dfs_cac_complete_event_fixed_param, fixed_param, WMITLV_SIZE_FIX)
WMITLV_CREATE_PARAM_STRUC(WMI_VDEV_DFS_CAC_COMPLETE_EVENTID);
/* Thermal Event */
#define WMITLV_TABLE_WMI_THERMAL_MGMT_EVENTID(id,op,buf,len) \
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)

View file

@ -525,6 +525,14 @@ typedef enum {
WMI_DFS_PHYERR_FILTER_ENA_CMDID,
/** enable DFS phyerr/parse filter offload */
WMI_DFS_PHYERR_FILTER_DIS_CMDID,
/** enable DFS phyerr processing offload */
WMI_PDEV_DFS_PHYERR_OFFLOAD_ENABLE_CMDID,
/** disable DFS phyerr processing offload */
WMI_PDEV_DFS_PHYERR_OFFLOAD_DISABLE_CMDID,
/** set ADFS channel config */
WMI_VDEV_ADFS_CH_CFG_CMDID,
/** abort ADFS off-channel-availability-check currently in progress */
WMI_VDEV_ADFS_OCAC_ABORT_CMDID,
/* Roaming specific commands */
/** set roam scan mode */
@ -1295,7 +1303,12 @@ typedef enum {
/*chatter query reply event */
WMI_CHATTER_PC_QUERY_EVENTID =
WMI_EVT_GRP_START_ID(WMI_GRP_CHATTER),
/** DFS related events */
WMI_PDEV_DFS_RADAR_DETECTION_EVENTID = WMI_EVT_GRP_START_ID(WMI_GRP_DFS),
/** Indicate channel-availability-check completion event to host */
WMI_VDEV_DFS_CAC_COMPLETE_EVENTID,
/** Indicate off-channel-availability-check completion event to host */
WMI_VDEV_ADFS_OCAC_COMPLETE_EVENTID,
/** echo event in response to echo command */
WMI_ECHO_EVENTID = WMI_EVT_GRP_START_ID(WMI_GRP_MISC),
@ -5976,6 +5989,8 @@ typedef struct {
/** the DBS policy manager indicates the preferred number of receive streams. */
A_UINT32 preferred_rx_streams;
A_UINT32 he_ops; /* refer to WMI_HEOPS_xxx macros */
A_UINT32 cac_duration_ms; /* in milliseconds */
A_UINT32 regdomain;
/* The TLVs follows this structure:
* wmi_channel chan; //WMI channel
* wmi_p2p_noa_descriptor noa_descriptors[]; //actual p2p NOA descriptor from scan entry
@ -9383,6 +9398,10 @@ enum {
* to request it.
*/
WMI_WOW_FLAG_SEND_PM_PME = 0x00000002,
/* Flag to indicate unit test */
WMI_WOW_FLAG_UNIT_TEST_ENABLE = 0x00000004,
/* Force HTC wakeup */
WMI_WOW_FLAG_DO_HTC_WAKEUP = 0x00000008,
};
@ -10963,6 +10982,74 @@ typedef struct {
A_UINT32 pdev_id;
} wmi_dfs_phyerr_filter_dis_cmd_fixed_param;
typedef struct {
A_UINT32 tlv_header;
A_UINT32 pdev_id;
} wmi_pdev_dfs_phyerr_offload_enable_cmd_fixed_param;
typedef struct {
A_UINT32 tlv_header;
A_UINT32 pdev_id;
} wmi_pdev_dfs_phyerr_offload_disable_cmd_fixed_param;
typedef enum {
QUICK_OCAC = 0,
EXTENSIVE_OCAC,
} WMI_ADFS_OCAC_MODE;
typedef struct {
A_UINT32 tlv_header;
A_UINT32 vdev_id;
A_UINT32 ocac_mode; /* WMI_ADFS_OCAC_MODE */
A_UINT32 min_duration_ms; /* in milliseconds */
A_UINT32 max_duration_ms; /* in milliseconds */
A_UINT32 chan_freq; /* in MHz */
A_UINT32 chan_width; /* in MHz */
A_UINT32 center_freq; /* in MHz */
} wmi_vdev_adfs_ch_cfg_cmd_fixed_param;
typedef struct {
A_UINT32 tlv_header;
A_UINT32 vdev_id;
} wmi_vdev_adfs_ocac_abort_cmd_fixed_param;
typedef enum {
IN_SERVICE_MODE = 0,
OCAC_MODE,
} WMI_DFS_RADAR_DETECTION_MODE;
typedef struct {
A_UINT32 tlv_header;
A_UINT32 pdev_id;
/* In-service mode or O-CAC mode */
A_UINT32 detection_mode; /* WMI_DFS_RADAR_DETECTION_MODE */
A_UINT32 chan_freq; /* in MHz */
A_UINT32 chan_width; /* in MHz */
A_UINT32 detector_id;
A_UINT32 segment_id;
A_UINT32 timestamp;
A_UINT32 is_chirp;
} wmi_pdev_dfs_radar_detection_event_fixed_param;
typedef enum {
OCAC_COMPLETE = 0,
OCAC_ABORT,
} WMI_VDEV_OCAC_COMPLETE_STATUS;
typedef struct {
A_UINT32 tlv_header;
A_UINT32 vdev_id;
A_UINT32 chan_freq; /* in MHz */
A_UINT32 chan_width; /* in MHz */
A_UINT32 center_freq; /* in MHz */
A_UINT32 status; /* WMI_VDEV_OCAC_COMPLETE_STATUS */
} wmi_vdev_adfs_ocac_complete_event_fixed_param;
typedef struct {
A_UINT32 tlv_header;
A_UINT32 vdev_id;
} wmi_vdev_dfs_cac_complete_event_fixed_param;
/** TDLS COMMANDS */
/* WMI_TDLS_SET_STATE_CMDID */

View file

@ -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_ 306
#define __WMI_REVISION_ 307
/** The Version Namespace should not be normally changed. Only
* host and firmware of the same WMI namespace will work