diff options
| author | Visweswara Tanuku <vtanuku@codeaurora.org> | 2018-09-18 19:07:44 +0530 |
|---|---|---|
| committer | Visweswara Tanuku <vtanuku@codeaurora.org> | 2018-09-18 19:09:14 +0530 |
| commit | bb722cd828d7b96e9ec202016bbcf0882cbbe070 (patch) | |
| tree | 5ef8c14a27191b97d73dddd63ac6af9c6ed9fdd0 | |
| parent | b447e6c1600f5e39c7b340c88175fd82a0205923 (diff) | |
qcacld-2.0: CL 5087294 - Update fw common interface files
WMI: define Estimate Service Parameters messages
CRs-fixed: 865207
Change-Id: I48bcc45d19dd1444e35883d669aeb40882e806d5
| -rw-r--r-- | CORE/SERVICES/COMMON/wmi_tlv_defs.h | 6 | ||||
| -rw-r--r-- | CORE/SERVICES/COMMON/wmi_unified.h | 42 | ||||
| -rw-r--r-- | CORE/SERVICES/COMMON/wmi_version.h | 2 |
3 files changed, 49 insertions, 1 deletions
diff --git a/CORE/SERVICES/COMMON/wmi_tlv_defs.h b/CORE/SERVICES/COMMON/wmi_tlv_defs.h index 86ed1abdbb71..81501ad34142 100644 --- a/CORE/SERVICES/COMMON/wmi_tlv_defs.h +++ b/CORE/SERVICES/COMMON/wmi_tlv_defs.h @@ -917,6 +917,7 @@ typedef enum { WMITLV_TAG_STRUC_wmi_motion_det_base_line_event, WMITLV_TAG_STRUC_wmi_ndp_transport_ip_param, WMITLV_TAG_STRUC_wmi_obss_spatial_reuse_set_cmd_fixed_param, + WMITLV_TAG_STRUC_wmi_esp_estimate_event_fixed_param, } WMITLV_TAG_ID; /* @@ -1500,6 +1501,7 @@ typedef enum { OP(WMI_GET_TPC_POWER_EVENTID) \ OP(WMI_MOTION_DET_HOST_EVENTID) \ OP(WMI_MOTION_DET_BASE_LINE_HOST_EVENTID) \ + OP(WMI_ESP_ESTIMATE_EVENTID) \ /* add new EVT_LIST elements above this line */ @@ -5013,6 +5015,10 @@ WMITLV_CREATE_PARAM_STRUC(WMI_MOTION_DET_HOST_EVENTID); WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_motion_det_base_line_event, wmi_motion_det_base_line_event, fixed_param, WMITLV_SIZE_FIX) WMITLV_CREATE_PARAM_STRUC(WMI_MOTION_DET_BASE_LINE_HOST_EVENTID); +#define WMITLV_TABLE_WMI_ESP_ESTIMATE_EVENTID(id,op,buf,len) \ + WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_esp_estimate_event_fixed_param, wmi_esp_estimate_event_fixed_param, fixed_param, WMITLV_SIZE_FIX) +WMITLV_CREATE_PARAM_STRUC(WMI_ESP_ESTIMATE_EVENTID); + #ifdef __cplusplus } #endif diff --git a/CORE/SERVICES/COMMON/wmi_unified.h b/CORE/SERVICES/COMMON/wmi_unified.h index 7b8052ea42e4..fd0213030a6c 100644 --- a/CORE/SERVICES/COMMON/wmi_unified.h +++ b/CORE/SERVICES/COMMON/wmi_unified.h @@ -255,6 +255,7 @@ typedef enum { WMI_GRP_TWT, /* 0x3e TWT (Target Wake Time) for STA and AP */ WMI_GRP_MOTION_DET, /* 0x3f */ WMI_GRP_SPATIAL_REUSE, /* 0x40 */ + WMI_GRP_ESP, /* 0x41 Estimate Service Parameters (802.11mc) */ } WMI_GRP_ID; #define WMI_CMD_GRP_START_ID(grp_id) (((grp_id) << 12) | 0x1) @@ -1710,6 +1711,9 @@ typedef enum { /** WMI events related to motion detection */ WMI_MOTION_DET_HOST_EVENTID = WMI_EVT_GRP_START_ID(WMI_GRP_MOTION_DET), WMI_MOTION_DET_BASE_LINE_HOST_EVENTID, + + /** WMI events related to Estimation of Service Parameters (802.11mc) */ + WMI_ESP_ESTIMATE_EVENTID = WMI_EVT_GRP_START_ID(WMI_GRP_ESP), } WMI_EVT_ID; /* defines for OEM message sub-types */ @@ -5178,6 +5182,13 @@ typedef enum { WMI_PDEV_PARAM_MWSCOEX_SET_5GNR_PWR_LIMIT, /* 0xA5 */ /** Set max msdus available for cong ctrl in target */ WMI_PDEV_PARAM_SET_CONG_CTRL_MAX_MSDUS, /* 0xA6 */ + /* + * Configures the Estimated Throughput Calculation indication (802.11mc) settings. + * The accompanying A_UINT32 parameter, in units of seconds, specifies how often FW needs to send the ESP estimation indication to the host. + * Value 0: Disable this feature + * Non zero Value: Periodicity (seconds) + */ + WMI_PDEV_PARAM_ESP_INDICATION_PERIOD, /* 0xA7 */ } WMI_PDEV_PARAM; typedef enum { @@ -5274,6 +5285,35 @@ typedef struct { */ } wmi_pdev_update_ctltable_request_fixed_param; +#define WMI_ESP_ESTIMATE_GET_BE(airtime) WMI_GET_BITS(airtime, 0, 8) +#define WMI_ESP_ESTIMATE_SET_BE(airtime, value) WMI_SET_BITS(airtime, 0, 8, value) + +#define WMI_ESP_ESTIMATE_GET_BK(airtime) WMI_GET_BITS(airtime, 8, 8) +#define WMI_ESP_ESTIMATE_SET_BK(airtime, value) WMI_SET_BITS(airtime, 8, 8, value) + +#define WMI_ESP_ESTIMATE_GET_VI(airtime) WMI_GET_BITS(airtime, 16, 8) +#define WMI_ESP_ESTIMATE_SET_VI(airtime, value) WMI_SET_BITS(airtime, 16, 8, value) + +#define WMI_ESP_ESTIMATE_GET_VO(airtime) WMI_GET_BITS(airtime, 24, 8) +#define WMI_ESP_ESTIMATE_SET_VO(airtime, value) WMI_SET_BITS(airtime, 24, 8, value) + +typedef struct { + A_UINT32 tlv_header; /* TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_esp_estimate_event_fixed_param */ + /** pdev_id for identifying the MAC + * See macros starting with WMI_PDEV_ID_ for values. + * In non-DBDC case host should set it to 0 + */ + A_UINT32 pdev_id; + /* + * Percentage of air time available for each AC + * BIT[0-7] : AC_BE + * BIT[8-15] : AC_BK + * BIT[16-23] : AC_VI + * BIT[24-31] : AC_VO + */ + A_UINT32 ac_airtime_percentage; +} wmi_esp_estimate_event_fixed_param; + #define WMI_FAST_DIVERSITY_BIT_OFFSET 0 #define WMI_SLOW_DIVERSITY_BIT_OFFSET 1 @@ -9149,6 +9189,8 @@ typedef struct { A_UINT32 csa_event_bitmap; /** offset (in octets/bytes) of MBSSID IE in beacon frame */ A_UINT32 mbssid_ie_offset; + /** offset (in octets/bytes) of ESP IE in beacon frame */ + A_UINT32 esp_ie_offset; /* * The TLVs follows: diff --git a/CORE/SERVICES/COMMON/wmi_version.h b/CORE/SERVICES/COMMON/wmi_version.h index 962876d0f319..da4486c419e9 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_ 562 +#define __WMI_REVISION_ 563 /** The Version Namespace should not be normally changed. Only * host and firmware of the same WMI namespace will work |
