summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAnurag Chouhan <achouhan@codeaurora.org>2016-04-21 16:22:47 +0530
committerGerrit - the friendly Code Review server <code-review@localhost>2016-05-18 16:34:47 -0700
commit86eab9be3d95ed8f4abb5f12e3601480c299d503 (patch)
treea837c114b8fff927db63219655300525d2f93b7e
parent2d5c12c8e0119305ca2878cc3c2e5d7f704f5c0a (diff)
qcacld-3.0: CL 1498085 - update fw common interface files
qcacld-2.0 to qcacld-3.0 propagation. WMI changes to handle action frames of different category in WoW mode Change-Id: Icbf9ad7cac93dd75ddb976a0f781e20b60201896 CRs-Fixed: 865207
-rw-r--r--target/inc/wmi_tlv_defs.h8
-rw-r--r--target/inc/wmi_unified.h29
-rw-r--r--target/inc/wmi_version.h2
3 files changed, 37 insertions, 2 deletions
diff --git a/target/inc/wmi_tlv_defs.h b/target/inc/wmi_tlv_defs.h
index 8cd68b32a075..421c970cf68c 100644
--- a/target/inc/wmi_tlv_defs.h
+++ b/target/inc/wmi_tlv_defs.h
@@ -702,6 +702,7 @@ typedef enum {
WMITLV_TAG_STRUC_wmi_tx_power_level_stats_evt_fixed_param,
WMITLV_TAG_STRUC_wmi_scan_adaptive_dwell_parameters_tlv,
WMITLV_TAG_STRUC_wmi_scan_adaptive_dwell_config_fixed_param,
+ WMITLV_TAG_STRUC_wmi_wow_set_action_wake_up_cmd_fixed_param,
} WMITLV_TAG_ID;
/*
@@ -985,7 +986,8 @@ typedef enum {
OP(WMI_VDEV_SET_CUSTOM_AGGR_SIZE_CMDID) \
OP(WMI_PDEV_WAL_POWER_DEBUG_CMDID) \
OP(WMI_VDEV_WISA_CMDID) \
- OP(WMI_SCAN_ADAPTIVE_DWELL_CONFIG_CMDID)
+ OP(WMI_SCAN_ADAPTIVE_DWELL_CONFIG_CMDID) \
+ OP(WMI_WOW_SET_ACTION_WAKE_UP_CMDID)
/*
* IMPORTANT: Please add _ALL_ WMI Events Here.
@@ -1594,6 +1596,10 @@ WMITLV_CREATE_PARAM_STRUC(WMI_WOW_UDP_SVC_OFLD_CMDID);
WMITLV_SIZE_FIX)
WMITLV_CREATE_PARAM_STRUC(WMI_WOW_HOSTWAKEUP_GPIO_PIN_PATTERN_CONFIG_CMDID);
+#define WMITLV_TABLE_WMI_WOW_SET_ACTION_WAKE_UP_CMDID(id, op, buf, len) \
+ WMITLV_ELEM(id, op, buf, len, WMITLV_TAG_STRUC_wmi_wow_set_action_wake_up_cmd_fixed_param, WMI_WOW_SET_ACTION_WAKE_UP_CMD_fixed_param, fixed_param, WMITLV_SIZE_FIX)
+WMITLV_CREATE_PARAM_STRUC(WMI_WOW_SET_ACTION_WAKE_UP_CMDID);
+
/* Wow enable/disable wake up Cmd */
#define WMITLV_TABLE_WMI_WOW_ENABLE_DISABLE_WAKE_EVENT_CMDID(id,op,buf,len) \
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_WMI_WOW_ADD_DEL_EVT_CMD_fixed_param, WMI_WOW_ADD_DEL_EVT_CMD_fixed_param, fixed_param, WMITLV_SIZE_FIX)
diff --git a/target/inc/wmi_unified.h b/target/inc/wmi_unified.h
index 1309dc559494..9bbf83982e67 100644
--- a/target/inc/wmi_unified.h
+++ b/target/inc/wmi_unified.h
@@ -633,6 +633,9 @@ typedef enum {
/* configure WOW host wakeup PIN pattern */
WMI_WOW_HOSTWAKEUP_GPIO_PIN_PATTERN_CONFIG_CMDID,
+ /* Set which action category should wake the host from suspend */
+ WMI_WOW_SET_ACTION_WAKE_UP_CMDID,
+
/* RTT measurement related cmd */
/** request to make an RTT measurement */
WMI_RTT_MEASREQ_CMDID = WMI_CMD_GRP_START_ID(WMI_GRP_RTT),
@@ -8421,6 +8424,32 @@ typedef struct {
A_UINT32 repeat_cnt;
} WMI_WOW_HOSTWAKEUP_GPIO_PIN_PATTERN_CONFIG_CMD_fixed_param;
+#define MAX_SUPPORTED_ACTION_CATEGORY 256
+#define MAX_SUPPORTED_ACTION_CATEGORY_ELE_LIST (MAX_SUPPORTED_ACTION_CATEGORY/32)
+
+typedef enum {
+ WOW_ACTION_WAKEUP_OPERATION_RESET = 0,
+ WOW_ACTION_WAKEUP_OPERATION_SET,
+ WOW_ACTION_WAKEUP_OPERATION_ADD_SET,
+ WOW_ACTION_WAKEUP_OPERATION_DELETE_SET,
+} WOW_ACTION_WAKEUP_OPERATION;
+
+typedef struct {
+ /*
+ * TLV tag and len; tag equals
+ * WMITLV_TAG_STRUC_WMI_WOW_SET_ACTION_WAKE_UP_CMD_fixed_param
+ */
+ A_UINT32 tlv_header;
+ A_UINT32 vdev_id;
+ /*
+ * 0 reset to fw default, 1 set the bits, 2 add the setting bits,
+ * 3 delete the setting bits
+ */
+ A_UINT32 operation;
+ A_UINT32 action_category_map[MAX_SUPPORTED_ACTION_CATEGORY_ELE_LIST];
+} WMI_WOW_SET_ACTION_WAKE_UP_CMD_fixed_param;
+
+
typedef struct wow_event_info_s {
A_UINT32 tlv_header; /* TLV tag and len; tag equals WMITLV_TAG_STRUC_WOW_EVENT_INFO_fixed_param */
A_UINT32 vdev_id;
diff --git a/target/inc/wmi_version.h b/target/inc/wmi_version.h
index 0a051755bc93..4d11965beb8a 100644
--- a/target/inc/wmi_version.h
+++ b/target/inc/wmi_version.h
@@ -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_ 239
+#define __WMI_REVISION_ 240
/** The Version Namespace should not be normally changed. Only
* host and firmware of the same WMI namespace will work