fw-api: CL 10138029 - update fw common interface files

Change-Id: Ibb187a488cf767a9f5435afa1af6db72b4b47f64
WMI: EMA AP - multiple beacon templates
CRs-Fixed: 2262693
This commit is contained in:
spuligil
2020-04-08 12:01:07 -07:00
committed by nshrivas
parent d9b7df2432
commit 9964f26cde
3 changed files with 77 additions and 7 deletions

View File

@@ -437,6 +437,7 @@ typedef enum {
WMI_SERVICE_BW_TRUE_160_SUPPORT = 242, /* Indicates FW supports true 160 BW */
WMI_SERVICE_HOST_SCAN_STOP_VDEV_ALL_SUPPORT = 243, /* Indicates FW supports scan stop mode WMI_SCN_STOP_HOST_VAP_ALL */
WMI_SERVICE_BEACON_PROTECTION_SUPPORT = 244, /* Indicates FW supports WPA3 Beacon protection */
WMI_SERVICE_EMA_AP_SUPPORT = 245, /* FW supports EMA AP feature */
/******* ADD NEW SERVICES UP TO 256 HERE *******/

View File

@@ -2632,7 +2632,7 @@ typedef struct {
} wmi_service_available_event_fixed_param;
/*
* HDL version GET/SET APIs  
* HDL version GET/SET APIs
*/
#define WMI_HDL_VERSION_BITPOS 0
#define WMI_HDL_VERSION_NUM_BITS 10
@@ -3162,6 +3162,9 @@ typedef struct {
* or deletion. This controls the number of tracked peers per vdev.
*/
A_UINT32 num_tdls_conn_table_entries; /* number of peers to track per TDLS vdev */
/**
* @brief beacon_tx_offload_max_vdev - Number of maximum beaconing vaps at any time.
*/
A_UINT32 beacon_tx_offload_max_vdev;
A_UINT32 num_multicast_filter_entries;
A_UINT32 num_wow_filters; /*host can configure the number of wow filters*/
@@ -3591,12 +3594,23 @@ typedef struct {
A_UINT32 host_service_flags;
/** @brief max_rnr_neighbours -
     * The Maximum number of neighbour RNR's from other SoC.
     * This limits the field @num_bss in @wmi_pdev_tbtt_offset_sync_cmd_fixed_param.
     * Value of 0 means crosss SoC TBTT offset syncronization not required and
     * @PDEV_TBTT_OFFSET_SYNC_CMD wouldn't be used.
     */
* The Maximum number of neighbour RNR's from other SoC.
* This limits the field @num_bss in @wmi_pdev_tbtt_offset_sync_cmd_fixed_param.
* Value of 0 means crosss SoC TBTT offset syncronization not required and
* @PDEV_TBTT_OFFSET_SYNC_CMD wouldn't be used.
*/
A_UINT32 max_rnr_neighbours;
/** @brief ema_max_vap_cnt - number of maximum ema vaps at any instance
* of time across SOC.
*/
A_UINT32 ema_max_vap_cnt;
/** @brief ema_max_profile_period - maximum profile periodicity
* (maximum number of beacons after which VAP profiles repeat)
* for any EMA VAP on any pdev.
*/
A_UINT32 ema_max_profile_period;
} wmi_resource_config;
#define WMI_MSDU_FLOW_AST_ENABLE_GET(msdu_flow_config0, ast_x) \
@@ -11083,6 +11097,34 @@ typedef struct {
*/
} wmi_frame_inject_cmd_fixed_param;
#define WMI_BEACON_TMPLT_PROFILE_PERIOD_BITPOS (0)
#define WMI_BEACON_TMPLT_PROFILE_PERIOD_MASK (0xff << WMI_BEACON_TMPLT_PROFILE_PERIOD_BITPOS)
#define WMI_BEACON_TMPLT_SET_PROFILE_PERIOD(_ema_param, _val) \
WMI_SET_BITS(_ema_param, WMI_BEACON_TMPLT_PROFILE_PERIOD_BITPOS, 8, value)
#define WMI_BEACON_TMPLT_GET_PROFILE_PERIOD(_ema_param) \
WMI_GET_BITS(_ema_param, WMI_BEACON_TMPLT_PROFILE_PERIOD_BITPOS, 8)
#define WMI_BEACON_TMPLT_TEMPLATE_INDEX_BITPOS (8)
#define WMI_BEACON_TMPLT_TEMPLATE_INDEX_MASK (0xff << WMI_BEACON_TMPLT_TEMPLATE_INDEX_BITPOS)
#define WMI_BEACON_TMPLT_SET_TEMPLATE_INDEX(_ema_param, _val) \
WMI_SET_BITS(_ema_param, WMI_BEACON_TMPLT_TEMPLATE_INDEX_BITPOS, 8, value)
#define WMI_BEACON_TMPLT_GET_TEMPLATE_INDEX(_ema_param) \
WMI_GET_BITS(_ema_param, WMI_BEACON_TMPLT_TEMPLATE_INDEX_BITPOS, 8)
#define WMI_BEACON_TMPLT_FIRST_TEMPLATE_BITPOS (16)
#define WMI_BEACON_TMPLT_FIRST_TEMPLATE_MASK (0xff << WMI_BEACON_TMPLT_FIRST_TEMPLATE_BITPOS)
#define WMI_BEACON_TMPLT_SET_FIRST_TEMPLATE(_ema_param, _val) \
WMI_SET_BITS(_ema_param, WMI_BEACON_TMPLT_FIRST_TEMPLATE_BITPOS, 8, value)
#define WMI_BEACON_TMPLT_GET_FIRST_TEMPLATE(_ema_param) \
WMI_GET_BITS(_ema_param, WMI_BEACON_TMPLT_FIRST_TEMPLATE_BITPOS, 8)
#define WMI_BEACON_TMPLT_LAST_TEMPLATE_BITPOS (24)
#define WMI_BEACON_TMPLT_LAST_TEMPLATE_MASK (0xff << WMI_BEACON_TMPLT_LAST_TEMPLATE_BITPOS)
#define WMI_BEACON_TMPLT_SET_LAST_TEMPLATE(_ema_param, _val) \
WMI_SET_BITS(_ema_param, WMI_BEACON_TMPLT_LAST_TEMPLATE_BITPOS, 8, value)
#define WMI_BEACON_TMPLT_GET_LAST_TEMPLATE(_ema_param) \
WMI_GET_BITS(_ema_param, WMI_BEACON_TMPLT_LAST_TEMPLATE_BITPOS, 8)
typedef struct {
A_UINT32 tlv_header; /** TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_bcn_tmpl_cmd_fixed_param */
/** unique id identifying the VDEV, generated by the caller */
@@ -11137,6 +11179,33 @@ typedef struct {
*/
A_UINT32 feature_enable_bitmap;
/**
* @ema_params: This carries below information encoded each byte:
* Byte 0: (@ema_beacon_profile_periodicity) - beacon profile periodicity
* (number of beacons) after which nontransmitted MBSS info repeats.
* Assumes values [1, N] inclusive. Shall be 1 for legacy Tx VAPs.
* Refer to WMI_BEACON_TMPLT_[SET,GET]_PROFILE_PERIOD macros.
* Byte 1: (@ema_beacon_tmpl_idx) - Specifies the position of beacon
* templates within profile periodicity.
* Assumes values [0, ema_beacon_profile_periodicity-1] inclusive.
* Multiple templates having same @ema_beacon_max_tmpl_idx will
* overwrite previous template.
* Refer to WMI_BEACON_TMPLT_[SET,GET]_TEMPLATE_INDEX macros.
* Byte 2: (@ema_first_tmpl) - Specifies whether it's a last template in
* sequence of @ema_beacon_profile_periodicity templates
* (end of new template update exchange).
* If this template is the only template being updated,
* @ema_first_tmpl and @ema_last_tmpl both shall be set to 1.
* Refer to WMI_BEACON_TMPLT_[SET,GET]_FIRST_TEMPLATE macros.
* Byte 3: (@ema_last_tmpl) - pecifies whether it's a last template in
* sequence of @ema_beacon_profile_periodicity templates
* (end of new template update exchange).
* If this template is the only template being updated,
* @ema_first_tmpl and @ema_last_tmpl both shall be set to 1.
* Refer to WMI_BEACON_TMPLT_[SET,GET]_LAST_TEMPLATE macros.
*/
A_UINT32 ema_params;
/*
* The TLVs follows:
* wmi_bcn_prb_info bcn_prb_info; <-- beacon probe capabilities and IEs

View File

@@ -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_ 813
#define __WMI_REVISION_ 814
/** The Version Namespace should not be normally changed. Only
* host and firmware of the same WMI namespace will work