Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit bc984632 authored by spuligil's avatar spuligil
Browse files

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

Change-Id: Ibcb346cdcb3772775d356f5b241864edecfaaccc
WMI: VDEV_LATENCY_LEVEL_EVENT msg def
CRs-Fixed: 2262693
parent 14695cc2
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -585,6 +585,7 @@ typedef enum {
    WMI_SERVICE_PDEV_TELEMETRY_STATS_SUPPORT = 332,
    WMI_SERVICE_ROAM_STAT_PER_CANDIDATE_FRAME_INFO_SUPPORT = 333, /* FW supports to send frame info for each candidate in roam stat */
    WMI_SERVICE_HW_TX_POWER_CAPS_SIGNED_SUPPORT = 334, /* Indicates FW supports updating of Tx power capabilities as signed value */
    WMI_SERVICE_MULTI_CLIENT_LL_SUPPORT = 335, /* FW supports set param cmd combined for multiple params */

    WMI_MAX_EXT2_SERVICE

+7 −0
Original line number Diff line number Diff line
@@ -1264,6 +1264,7 @@ typedef enum {
    WMITLV_TAG_STRUC_wmi_peer_tx_filter_cmd_fixed_param,
    WMITLV_TAG_STRUC_wmi_pdev_telemetry_stats,
    WMITLV_TAG_STRUC_wmi_mgmt_ml_info,
    WMITLV_TAG_STRUC_wmi_vdev_latency_event_fixed_param,
} WMITLV_TAG_ID;

/*
@@ -2042,6 +2043,7 @@ typedef enum {
    OP(WMI_PEER_RX_PN_RESPONSE_EVENTID) \
    OP(WMI_PMM_AVAILABLE_SCRATCH_REG_EVENTID) \
    OP(WMI_PMM_SCRATCH_REG_ALLOCATION_COMPLETE_EVENTID) \
    OP(WMI_VDEV_LATENCY_LEVEL_EVENTID) \
    /* add new EVT_LIST elements above this line */


@@ -6681,6 +6683,11 @@ WMITLV_CREATE_PARAM_STRUC(WMI_PDEV_GET_TPC_STATS_EVENTID);
    WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_vdev_bcn_latency_fixed_param, wmi_vdev_bcn_latency_fixed_param, fixed_param, WMITLV_SIZE_FIX)
WMITLV_CREATE_PARAM_STRUC(WMI_VDEV_BCN_LATENCY_EVENTID);

/* Latency Level Event */
#define WMITLV_TABLE_WMI_VDEV_LATENCY_LEVEL_EVENTID(id,op,buf,len) \
    WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_vdev_latency_event_fixed_param, wmi_vdev_latency_event_fixed_param, fixed_param, WMITLV_SIZE_FIX)
WMITLV_CREATE_PARAM_STRUC(WMI_VDEV_LATENCY_LEVEL_EVENTID);

/* TWT Stats session event */
#define WMITLV_TABLE_WMI_TWT_SESSION_STATS_EVENTID(id,op,buf,len) \
    WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_pdev_twt_session_stats_event_fixed_param, wmi_pdev_twt_session_stats_event_fixed_param, fixed_param, WMITLV_SIZE_FIX) \
+77 −16
Original line number Diff line number Diff line
@@ -1695,6 +1695,8 @@ typedef enum {
    WMI_VDEV_SMART_MONITOR_EVENTID,
    /** Send status of vdev mac address update request to host */
    WMI_VDEV_UPDATE_MAC_ADDR_CONF_EVENTID,
    /** event to report latency level honored by FW */
    WMI_VDEV_LATENCY_LEVEL_EVENTID,
    /* peer specific events */
    /** FW reauet to kick out the station for reasons like inactivity,lack of response ..etc */
@@ -13973,6 +13975,35 @@ typedef enum {
     */
    WMI_VDEV_PARAM_11AZ_SECURITY_CONFIG,    /* 0xAB */
    /*
     * Latency Level Flags
     */
    WMI_VDEV_PARAM_NORMAL_LATENCY_FLAGS_CONFIGURATION,    /* 0xAC */
    WMI_VDEV_PARAM_XR_LATENCY_FLAGS_CONFIGURATION,        /* 0xAD */
    WMI_VDEV_PARAM_LOW_LATENCY_FLAGS_CONFIGURATION,       /* 0xAE */
    WMI_VDEV_PARAM_ULTRA_LOW_LATENCY_FLAGS_CONFIGURATION, /* 0xAF */
    /*
     * Latency level UL/DL
     * 0-15 bits: UL
     * 16-31 bits: DL
     */
    WMI_VDEV_PARAM_NORMAL_LATENCY_UL_DL_CONFIGURATION,    /* 0xB0 */
    WMI_VDEV_PARAM_XR_LATENCY_UL_DL_CONFIGURATION,        /* 0xB1 */
    WMI_VDEV_PARAM_LOW_LATENCY_UL_DL_CONFIGURATION,       /* 0xB2 */
    WMI_VDEV_PARAM_ULTRA_LOW_LATENCY_UL_DL_CONFIGURATION, /* 0xB3 */
    /*
     * Ini to
     * Configure default latency level for all clients
     */
    WMI_VDEV_PARAM_DEFAULT_LATENCY_LEVEL_CONFIGURATION,   /* 0xB4 */
    /*
     * Ini to
     * Configure multi client Low latency Feature
     */
    WMI_VDEV_PARAM_MULTI_CLIENT_LL_FEATURE_CONFIGURATION, /* 0xB5 */
    /*=== ADD NEW VDEV PARAM TYPES ABOVE THIS LINE ===
     * The below vdev param types are used for prototyping, and are
@@ -32290,6 +32321,14 @@ typedef enum {
    WMI_WLM_LL_ULTRA_LOW = 0x3,
} WMI_WLM_LATENCY_LEVEL;
typedef struct {
    A_UINT32 tlv_header; /* WMITLV_TAG_STRUC_wmi_vdev_latency_event_fixed_param */
    /** The latency level for specified vdev_id */
    A_UINT32 vdev_id;
    /** latency level enum WMI_WLM_LATENCY_LEVEL honored by FW */
    A_UINT32 latency_level;
} wmi_vdev_latency_event_fixed_param;
/*
* Lay out of flags in wmi_wlm_config_cmd_fixed_param
*
@@ -32402,31 +32441,53 @@ typedef enum {
#define WLM_FLAGS_SCAN_SET_SPLIT_PAS_CH_ENABLE(flag, val) WMI_SET_BITS(flag, 21, 1, val)
#define WLM_FLAGS_SCAN_IS_ADAPT_SCAN_ENABLED(flag)        WMI_GET_BITS(flag, 22, 1)
#define WLM_FLAGS_SCAN_SET_ADAPT_SCAN_ENABLE(flag, val)   WMI_SET_BITS(flag, 22, 1, val)
#define WLM_FLAGS_SET_FORCE_DEFAULT_LATENCY(flag, val)    WMI_SET_BITS(flag, 0, 1, val)
#define WLM_FLAGS_GET_FORCE_DEFAULT_LATENCY(flag)         WMI_GET_BITS(flag, 0, 1)
#define WLM_MAX_HOST_CLIENTS 5
typedef struct {
    /** TLV tag and len; tag equals
    * WMI_WLM_CONFIG_CMD_fixed_param */
    /** TLV tag and len; tag equals WMI_WLM_CONFIG_CMD_fixed_param */
    A_UINT32 tlv_header;
    /* VDEV identifier */
    A_UINT32 vdev_id;
    /* Refer to WMI_WLM_LATENCY_LEVEL
    /*
     * Refer to WMI_WLM_LATENCY_LEVEL
     * Once latency change detected, WLM will notify modules e.g. STAPS or SCAN/ROAM,
     * who subscribed this event. And subscribers, like SCAN, may disable/cutoff offchan
     * operation to support lower latency of WLAN.
     */
    A_UINT32 latency_level;
    /* represent uplink latency in ms
    /*
     * represent uplink latency in ms
     * This parameter will be used by STAPS module to decide timing parameters, like
     * ITO or SPEC wakeup interval. For SCAN/ROAM, it may used to calculate offchan
     * durations.
     * For host and FW with multi client LL feature enabled, this field is obsolete.
     */
    A_UINT32 ul_latency;
    /* represent downlink latency in ms
    /*
     * represent downlink latency in ms
     * Similar usage as ul_latency
     * For host and FW with multi client LL feature enabled, this field is obsolete.
     */
    A_UINT32 dl_latency;
    /* flags for each client of WLM, refer to WLM_FLAGS_ definitions above */
    /*
     * flags for each client of WLM, refer to WLM_FLAGS_ definitions above.
     * For host and FW with multi client LL feature enabled, this field is obsolete.
     */
    A_UINT32 flags;
    /*
     * bit 0 used as force reset:
     * to override the latency level as default
     * for all the wlm clients
     */
    A_UINT32 flags_ext;
    /*
     * clients of WLM Arbiter
     * WLM_MAX_HOST_CLIENTS 5
     */
    A_UINT32 client_id_bitmask;
} wmi_wlm_config_cmd_fixed_param;
/* Broadcast TWT enable/disable for both REQUESTER and RESPONDER */
+1 −1
Original line number Diff line number Diff line
@@ -37,7 +37,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_ 1143
#define __WMI_REVISION_ 1144

/** The Version Namespace should not be normally changed. Only
 *  host and firmware of the same WMI namespace will work