summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRajesh Chauhan <rajeshc@qca.qualcomm.com>2013-11-27 01:42:18 -0800
committerPrakash Dhavali <pdhavali@qca.qualcomm.com>2013-12-03 14:39:37 -0800
commitfad474d0dc880a94fd7cb965ccc2c32bd5f87b1d (patch)
treecc5dce9a974e151596ed51162926effc0d6cadfb
parentc1e1811a073fd16be1f52281eb7efef83bcdf78c (diff)
qcacld: update fw interface commmon files
Update fw interface common files as per CL 786393 Change-Id: I1ccf74fec5c6b25db5600b837410300b7090df04 CRs-Fixed: 582395
-rw-r--r--CORE/SERVICES/COMMON/wmi_tlv_defs.h9
-rw-r--r--CORE/SERVICES/COMMON/wmi_unified.h25
2 files changed, 33 insertions, 1 deletions
diff --git a/CORE/SERVICES/COMMON/wmi_tlv_defs.h b/CORE/SERVICES/COMMON/wmi_tlv_defs.h
index 0e8c9cac0230..0e93966abb49 100644
--- a/CORE/SERVICES/COMMON/wmi_tlv_defs.h
+++ b/CORE/SERVICES/COMMON/wmi_tlv_defs.h
@@ -391,6 +391,7 @@ typedef enum {
WMITLV_TAG_STRUC_wmi_hb_set_udp_params_cmd_fixed_param,
WMITLV_TAG_STRUC_wmi_hb_set_udp_pkt_filter_cmd_fixed_param,
WMITLV_TAG_STRUC_wmi_hb_ind_event_fixed_param,
+ WMITLV_TAG_STRUC_wmi_tx_pause_event_fixed_param,
} WMITLV_TAG_ID;
/*
@@ -573,7 +574,8 @@ typedef enum {
OP(WMI_VDEV_MCC_BCN_INTERVAL_CHANGE_REQ_EVENTID) \
OP(WMI_BA_RSP_SSN_EVENTID) \
OP(WMI_OFFLOAD_BCN_TX_STATUS_EVENTID) \
- OP(WMI_P2P_NOA_EVENTID)
+ OP(WMI_P2P_NOA_EVENTID) \
+ OP(WMI_TX_PAUSE_EVENTID)
/* TLV definitions of WMI commands */
@@ -1397,6 +1399,11 @@ WMITLV_CREATE_PARAM_STRUC(WMI_CHAN_INFO_EVENTID);
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_BYTE, A_UINT8, bufp, WMITLV_SIZE_VAR)
WMITLV_CREATE_PARAM_STRUC(WMI_PHYERR_EVENTID);
+/* TX Pause/Unpause event */
+#define WMITLV_TABLE_WMI_TX_PAUSE_EVENTID(id,op,buf,len) \
+ WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_tx_pause_event_fixed_param, wmi_tx_pause_event_fixed_param, fixed_param, WMITLV_SIZE_FIX)
+WMITLV_CREATE_PARAM_STRUC(WMI_TX_PAUSE_EVENTID);
+
/* VDEV Start response Event */
#define WMITLV_TABLE_WMI_VDEV_START_RESP_EVENTID(id,op,buf,len) \
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_vdev_start_response_event_fixed_param, wmi_vdev_start_response_event_fixed_param, fixed_param, WMITLV_SIZE_FIX)
diff --git a/CORE/SERVICES/COMMON/wmi_unified.h b/CORE/SERVICES/COMMON/wmi_unified.h
index ccd1f0e8c77c..df35dd884f17 100644
--- a/CORE/SERVICES/COMMON/wmi_unified.h
+++ b/CORE/SERVICES/COMMON/wmi_unified.h
@@ -563,6 +563,9 @@ typedef enum {
/** eeprom dump event */
WMI_PDEV_DUMP_EVENTID,
+ /** traffic pause event */
+ WMI_TX_PAUSE_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),
@@ -2023,6 +2026,28 @@ typedef struct {
A_UINT32 param;
} wmi_pdev_dump_cmd;
+typedef enum {
+ PAUSE_TYPE_CHOP = 0x1, /** for MCC (switch channel), only vdev_map is valid */
+ PAUSE_TYPE_PS = 0x2, /** for peer station sleep in sap mode, only peer_id is valid */
+ PAUSE_TYPE_UAPSD = 0x3, /** for uapsd, only peer_id and tid_map are valid. */
+ PAUSE_TYPE_P2P_CLIENT_NOA = 0x4, /** only vdev_map is valid, actually only one vdev id is set at one time */
+ PAUSE_TYPE_P2P_GO_PS = 0x5, /** only vdev_map is valid, actually only one vdev id is set at one time */
+ PAUSE_TYPE_STA_ADD_BA = 0x6, /** only peer_id and tid_map are valid, actually only one tid is set at one time */
+} wmi_tx_pause_type;
+
+typedef enum {
+ ACTION_PAUSE = 0x0,
+ ACTION_UNPAUSE = 0x1,
+} wmi_tx_pause_action;
+
+typedef struct {
+ A_UINT32 tlv_header;
+ A_UINT32 pause_type;
+ A_UINT32 action;
+ A_UINT32 vdev_map;
+ A_UINT32 peer_id;
+ A_UINT32 tid_map;
+} wmi_tx_pause_event_fixed_param;
#define WMI_TPC_RATE_MAX 160
/* WMI_TPC_TX_NUM_CHAIN macro can't be changed without breaking the WMI compatibility */