From 134b73687bf15fc46dd83724b26337f193a19235 Mon Sep 17 00:00:00 2001 From: Himanshu Agarwal Date: Fri, 13 May 2016 20:30:12 +0530 Subject: [PATCH] =?UTF-8?q?qcacld-3.0:=20CL=201506155=20=E2=80=93=20update?= =?UTF-8?q?=20fw=20common=20interface=20files?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Propagation from qcacld-2.0 to qcacld-3.0 WMI bandwidth fairness peer configuration command message definition. Change-Id: I8023e8a4f9758d6003a3f666cc45c1e98265c01a CRs-Fixed: 865207 --- target/inc/wmi_tlv_defs.h | 15 +++++++++++++-- target/inc/wmi_unified.h | 40 ++++++++++++++++++++++++++++++++++++--- target/inc/wmi_version.h | 2 +- 3 files changed, 51 insertions(+), 6 deletions(-) diff --git a/target/inc/wmi_tlv_defs.h b/target/inc/wmi_tlv_defs.h index 469a0132b9..a897539166 100644 --- a/target/inc/wmi_tlv_defs.h +++ b/target/inc/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 */ @@ -2832,6 +2837,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 *******************************/ diff --git a/target/inc/wmi_unified.h b/target/inc/wmi_unified.h index 08372ac404..75884fb036 100644 --- a/target/inc/wmi_unified.h +++ b/target/inc/wmi_unified.h @@ -440,6 +440,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 */ @@ -2854,8 +2856,6 @@ typedef struct { */ } wmi_mgmt_rx_hdr; -/* WMI PHY Error RX */ - typedef struct { /** TSF timestamp */ A_UINT32 tsf_timestamp; @@ -15031,10 +15031,44 @@ 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; + /* BWF guaranteed_bandwidth for the peers in mbps */ + A_UINT32 bwf_guaranteed_bandwidth; + /* + * BWF Maximum airtime percentage that can be allocated + * to the peer to meet the guaranteed_bandwidth + */ + A_UINT32 bwf_max_airtime; + /* BWF priority of the peer to allocate the tokens dynamically */ + A_UINT32 bwf_peer_priority; +} wmi_bwf_peer_info; + +/* Structure for Bandwidth Fairness peer request */ +typedef struct { + /* + * TLV tag and len; tag equals + * WMITLV_TAG_STRUC_wmi_peer_bwf_request_fixed_param + */ + A_UINT32 tlv_header; + 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 { /* diff --git a/target/inc/wmi_version.h b/target/inc/wmi_version.h index 9aedc072c3..ae4a47daf9 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_ 241 +#define __WMI_REVISION_ 242 /** The Version Namespace should not be normally changed. Only * host and firmware of the same WMI namespace will work