summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHimanshu Agarwal <himanaga@qti.qualcomm.com>2016-05-10 21:16:04 +0530
committerAnjaneedevi Kapparapu <akappa@codeaurora.org>2016-05-18 14:36:29 +0530
commit89c041758d1f608db1b6ca6d4607ffec2e45dfcf (patch)
tree59c20e187053101c1092422f793784cfef4b48ed
parentc74ef7fae78d0ffc16747c52850bb7a7e70cf4d1 (diff)
qcacld-2.0: CL 1506155 – update fw common interface files
WMI bandwidth fairness peer configuration command message definition. Change-Id: I8023e8a4f9758d6003a3f666cc45c1e98265c01a CRs-Fixed: 865207
-rw-r--r--CORE/SERVICES/COMMON/wmi_tlv_defs.h15
-rw-r--r--CORE/SERVICES/COMMON/wmi_unified.h26
-rw-r--r--CORE/SERVICES/COMMON/wmi_version.h2
-rw-r--r--CORE/SERVICES/WMI/wmi_unified.c3
4 files changed, 39 insertions, 7 deletions
diff --git a/CORE/SERVICES/COMMON/wmi_tlv_defs.h b/CORE/SERVICES/COMMON/wmi_tlv_defs.h
index 64070e216e12..05f226ac975b 100644
--- a/CORE/SERVICES/COMMON/wmi_tlv_defs.h
+++ b/CORE/SERVICES/COMMON/wmi_tlv_defs.h
@@ -704,6 +704,8 @@ typedef enum {
WMITLV_TAG_STRUC_wmi_scan_adaptive_dwell_config_fixed_param,
WMITLV_TAG_STRUC_wmi_wow_set_action_wake_up_cmd_fixed_param,
WMITLV_TAG_STRUC_wmi_ndp_end_rsp_per_ndi,
+ WMITLV_TAG_STRUC_wmi_peer_bwf_request_fixed_param,
+ WMITLV_TAG_STRUC_wmi_bwf_peer_info,
} WMITLV_TAG_ID;
/*
@@ -988,7 +990,9 @@ typedef enum {
OP(WMI_PDEV_WAL_POWER_DEBUG_CMDID) \
OP(WMI_VDEV_WISA_CMDID) \
OP(WMI_SCAN_ADAPTIVE_DWELL_CONFIG_CMDID) \
- OP(WMI_WOW_SET_ACTION_WAKE_UP_CMDID)
+ OP(WMI_WOW_SET_ACTION_WAKE_UP_CMDID) \
+ OP(WMI_PEER_BWF_REQUEST_CMDID) \
+ /* add new CMD_LIST elements above this line */
/*
* IMPORTANT: Please add _ALL_ WMI Events Here.
@@ -1137,7 +1141,8 @@ typedef enum {
OP(WMI_PDEV_SET_HW_MODE_RESP_EVENTID) \
OP(WMI_PDEV_HW_MODE_TRANSITION_EVENTID) \
OP(WMI_PDEV_SET_MAC_CONFIG_RESP_EVENTID) \
- OP(WMI_RADIO_TX_POWER_LEVEL_STATS_EVENTID)
+ OP(WMI_RADIO_TX_POWER_LEVEL_STATS_EVENTID) \
+ /* add new EVT_LIST elements above this line */
/* TLV definitions of WMI commands */
@@ -2836,6 +2841,12 @@ WMITLV_CREATE_PARAM_STRUC(WMI_SET_PERIODIC_CHANNEL_STATS_CONFIG_CMDID);
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_UINT32, A_UINT32, args, WMITLV_SIZE_VAR)
WMITLV_CREATE_PARAM_STRUC(WMI_PDEV_WAL_POWER_DEBUG_CMDID);
+/* Bandwidth Fairness (BWF) peer configure commands */
+#define WMITLV_TABLE_WMI_PEER_BWF_REQUEST_CMDID(id,op,buf,len) \
+ WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_peer_bwf_request_fixed_param, wmi_peer_bwf_request_fixed_param, fixed_param, WMITLV_SIZE_FIX) \
+ WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_STRUC, wmi_bwf_peer_info, peer_info, WMITLV_SIZE_VAR)
+WMITLV_CREATE_PARAM_STRUC(WMI_PEER_BWF_REQUEST_CMDID);
+
/************************** TLV definitions of WMI events *******************************/
/* Service Ready event */
diff --git a/CORE/SERVICES/COMMON/wmi_unified.h b/CORE/SERVICES/COMMON/wmi_unified.h
index 3c7333ef5784..c41bad5f08e8 100644
--- a/CORE/SERVICES/COMMON/wmi_unified.h
+++ b/CORE/SERVICES/COMMON/wmi_unified.h
@@ -433,6 +433,8 @@ typedef enum {
WMI_PEER_SMART_ANT_SET_NODE_CONFIG_OPS_CMDID,
/** ATF PEER REQUEST commands */
WMI_PEER_ATF_REQUEST_CMDID,
+ /** bandwidth fairness (BWF) peer configuration request command */
+ WMI_PEER_BWF_REQUEST_CMDID,
/* beacon/management specific commands */
@@ -2793,8 +2795,6 @@ typedef struct {
*/
} wmi_mgmt_rx_hdr;
-/* WMI PHY Error RX */
-
typedef struct {
/** TSF timestamp */
A_UINT32 tsf_timestamp;
@@ -14282,10 +14282,30 @@ typedef struct {
A_UINT32 num_peers;
/*
* Following this structure is the TLV:
- * struct wmi_atf_peer_info peer_info[1];
+ * struct wmi_atf_peer_info peer_info[num_peers];
*/
} wmi_peer_atf_request_fixed_param;
+/* Structure for Bandwidth Fairness peer information */
+typedef struct {
+ /** TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_bwf_peer_info */
+ A_UINT32 tlv_header;
+ wmi_mac_addr peer_macaddr;
+ A_UINT32 bwf_guaranteed_bandwidth; /* BWF guaranteed_bandwidth for the peers in mbps */
+ A_UINT32 bwf_max_airtime; /* BWF Maximum airtime percentage that can be allocated to the peer to meet the guaranteed_bandwidth */
+ A_UINT32 bwf_peer_priority; /* BWF priority of the peer to allocate the tokens dynamically */
+} wmi_bwf_peer_info;
+
+/* Structure for Bandwidth Fairness peer request */
+typedef struct {
+ A_UINT32 tlv_header; /* TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_peer_bwf_request_fixed_param */
+ A_UINT32 num_peers;
+ /*
+ * Following this structure is the TLV:
+ * struct wmi_bwf_peer_info peer_info[num_peers];
+ */
+} wmi_peer_bwf_request_fixed_param;
+
/* Equal distribution of ATF air time within an VDEV. */
typedef struct {
A_UINT32 tlv_header; /* TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_vdev_atf_request_fixed_param */
diff --git a/CORE/SERVICES/COMMON/wmi_version.h b/CORE/SERVICES/COMMON/wmi_version.h
index fdb8cce75146..52933bd5524d 100644
--- a/CORE/SERVICES/COMMON/wmi_version.h
+++ b/CORE/SERVICES/COMMON/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_ 241
+#define __WMI_REVISION_ 242
/** The Version Namespace should not be normally changed. Only
* host and firmware of the same WMI namespace will work
diff --git a/CORE/SERVICES/WMI/wmi_unified.c b/CORE/SERVICES/WMI/wmi_unified.c
index e9e524e8af89..b6792587db4a 100644
--- a/CORE/SERVICES/WMI/wmi_unified.c
+++ b/CORE/SERVICES/WMI/wmi_unified.c
@@ -700,7 +700,8 @@ static u_int8_t* get_wmi_cmd_string(WMI_CMD_ID wmi_command)
CASE_RETURN_STRING(WMI_VDEV_WISA_CMDID);
CASE_RETURN_STRING(WMI_SCAN_ADAPTIVE_DWELL_CONFIG_CMDID);
CASE_RETURN_STRING(WMI_WOW_SET_ACTION_WAKE_UP_CMDID);
- }
+ CASE_RETURN_STRING(WMI_PEER_BWF_REQUEST_CMDID);
+ }
return "Invalid WMI cmd";
}