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

Commit 1960d8eb authored by spuligil's avatar spuligil Committed by Ravindra Konda
Browse files

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

Change-Id: I39a9848dea227f254166c2255a1cba75ed30a790
CRs-Fixed: 3830439
parent a99912c7
Loading
Loading
Loading
Loading
+27 −0
Original line number Diff line number Diff line
@@ -1459,6 +1459,11 @@ typedef enum {
    WMITLV_TAG_STRUC_wmi_scan_cache_info,
    WMITLV_TAG_STRUC_wmi_POWER_BOOST_CAPABILITIES,
    WMITLV_TAG_STRUC_wmi_RSSI_ACCURACY_IMPROVEMENT_CAPABILITIES,
    WMITLV_TAG_STRUC_wmi_mlo_link_reconfig_start_indication_event_fixed_param,
    WMITLV_TAG_STRUC_wmi_mlo_link_reconfig_fixed_param,
    WMITLV_TAG_STRUC_wmi_mlo_link_reconfig_complete_fixed_param,
    WMITLV_TAG_STRUC_wmi_mlo_link_add_param,
    WMITLV_TAG_STRUC_wmi_mlo_link_del_param,
} WMITLV_TAG_ID;
/*
 * IMPORTANT: Please add _ALL_ WMI Commands Here.
@@ -2016,6 +2021,8 @@ typedef enum {
    OP(WMI_PDEV_POWER_BOOST_CMDID) \
    OP(WMI_PDEV_POWER_BOOST_MEM_ADDR_CMDID) \
    OP(WMI_GET_SCAN_CACHE_RESULT_CMDID) \
    OP(WMI_MLO_LINK_RECONFIG_CMDID) \
    OP(WMI_MLO_LINK_RECONFIG_COMPLETE_CMDID) \
    /* add new CMD_LIST elements above this line */


@@ -2347,6 +2354,7 @@ typedef enum {
    OP(WMI_PDEV_POWER_BOOST_EVENTID) \
    OP(WMI_C2C_DETECT_EVENTID) \
    OP(WMI_SCAN_CACHE_RESULT_EVENTID) \
    OP(WMI_MLO_LINK_RECONFIG_START_INDICATION_EVENTID) \
    /* add new EVT_LIST elements above this line */


@@ -5340,6 +5348,18 @@ WMITLV_CREATE_PARAM_STRUC(WMI_MLO_AP_VDEV_TID_TO_LINK_MAP_CMDID);
    WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_STRUC, wmi_mlo_peer_recommended_links, mlo_peer_recommended_links, WMITLV_SIZE_VAR)
WMITLV_CREATE_PARAM_STRUC(WMI_MLO_LINK_RECOMMENDATION_CMDID);

/** WMI cmd to start STA initialized link reconfig */
#define WMITLV_TABLE_WMI_MLO_LINK_RECONFIG_CMDID(id,op,buf,len) \
    WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_mlo_link_reconfig_fixed_param, wmi_mlo_link_reconfig_fixed_param, fixed_param, WMITLV_SIZE_FIX) \
    WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_STRUC, wmi_mlo_link_add_param, link_add_param, WMITLV_SIZE_VAR) \
    WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_STRUC, wmi_mlo_link_del_param, link_del_param, WMITLV_SIZE_VAR)
WMITLV_CREATE_PARAM_STRUC(WMI_MLO_LINK_RECONFIG_CMDID);

/** WMI cmd to notify fw completion of link reconfig */
#define WMITLV_TABLE_WMI_MLO_LINK_RECONFIG_COMPLETE_CMDID(id,op,buf,len) \
    WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_mlo_link_reconfig_complete_fixed_param, wmi_mlo_link_reconfig_complete_fixed_param, fixed_param, WMITLV_SIZE_FIX)
WMITLV_CREATE_PARAM_STRUC(WMI_MLO_LINK_RECONFIG_COMPLETE_CMDID);

/* Mcast ipv4 address filter list cmd */
#define WMITLV_TABLE_WMI_VDEV_IGMP_OFFLOAD_CMDID(id,op,buf,len) \
    WMITLV_ELEM(id, op, buf, len, WMITLV_TAG_STRUC_wmi_igmp_offload_fixed_param, wmi_igmp_offload_fixed_param, fixed_param, WMITLV_SIZE_FIX) \
@@ -7766,6 +7786,13 @@ WMITLV_CREATE_PARAM_STRUC(WMI_MGMT_SRNG_REAP_EVENTID);
    WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_mlo_peer_tid_to_link_map_event_fixed_param, wmi_mlo_peer_tid_to_link_map_event_fixed_param, fixed_param, WMITLV_SIZE_FIX)
WMITLV_CREATE_PARAM_STRUC(WMI_MLO_PEER_TID_TO_LINK_MAP_EVENTID);

/** Indicate host to start link reconfigure */
#define WMITLV_TABLE_WMI_MLO_LINK_RECONFIG_START_INDICATION_EVENTID(id,op,buf,len) \
    WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_mlo_link_reconfig_start_indication_event_fixed_param, wmi_mlo_link_reconfig_start_indication_event_fixed_param, fixed_param, WMITLV_SIZE_FIX) \
    WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_STRUC, wmi_mlo_link_add_param, link_add_param, WMITLV_SIZE_VAR) \
    WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_STRUC, wmi_mlo_link_del_param, link_del_param, WMITLV_SIZE_VAR)
WMITLV_CREATE_PARAM_STRUC(WMI_MLO_LINK_RECONFIG_START_INDICATION_EVENTID);

/* USD Service Event */
#define WMITLV_TABLE_WMI_USD_SERVICE_EVENTID(id,op,buf,len) \
    WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_usd_service_event_fixed_param, wmi_usd_service_event_fixed_param, fixed_param, WMITLV_SIZE_FIX)
+102 −3
Original line number Diff line number Diff line
@@ -1696,6 +1696,10 @@ typedef enum {
    WMI_MLO_PRIMARY_LINK_PEER_MIGRATION_CMDID,
    /** WMI cmd to recommand preferred link */
    WMI_MLO_LINK_RECOMMENDATION_CMDID,
    /** WMI cmd to start STA initialized link reconfig */
    WMI_MLO_LINK_RECONFIG_CMDID,
    /** WMI cmd to notify fw completion of link reconfig */
    WMI_MLO_LINK_RECONFIG_COMPLETE_CMDID,
    /** WMI commands specific to Service Aware WiFi (SAWF) */
    /** configure or reconfigure the parameters for a service class */
@@ -2582,6 +2586,8 @@ typedef enum {
    WMI_MLO_TLT_SELECTION_FOR_TID_SPRAY_EVENTID,
    /** WMI Event to send the status of T2LM configured */
    WMI_MLO_PEER_TID_TO_LINK_MAP_EVENTID,
    /** Indicate host to start link reconfigure */
    WMI_MLO_LINK_RECONFIG_START_INDICATION_EVENTID,
    /* WMI event specific to Quiet handling */
    WMI_QUIET_HANDLING_EVENTID = WMI_EVT_GRP_START_ID(WMI_GRP_QUIET_OFL),
@@ -36715,12 +36721,29 @@ typedef enum wmi_hw_mode_config_type {
#define WMI_SUPPORT_AAR_GET(mld_capability) WMI_GET_BITS(mld_capability, 12, 1)
#define WMI_SUPPORT_AAR_SET(mld_capability, value) WMI_SET_BITS(mld_capability, 12, 1, value)
#define WMI_SUPPORT_LINK_RECONFIG_SUPPORT_GET(mld_capability) WMI_GET_BITS(mld_capability, 13, 1)
#define WMI_SUPPORT_LINK_RECONFIG_SUPPORT_SET(mld_capability, value) WMI_SET_BITS(mld_capability, 13, 1, value)
/*
 * 11BE Ext MLD Capability Set and Get macros
 */
#define WMI_EXT_MLD_OPERATION_PARAMETER_UPDATE_SUPP_GET(ext_mld_capability) WMI_GET_BITS(ext_mld_capability, 0, 1)
#define WMI_EXT_MLD_OPERATION_PARAMETER_UPDATE_SUPP_SET(ext_mld_capability, value) WMI_SET_BITS(ext_mld_capability, 0, 1, value)
#define WMI_EXT_MLD_RECOMMENDED_MAX_SIMULTANEOUS_LINKS_GET(ext_mld_capability) WMI_GET_BITS(ext_mld_capability, 1, 4)
#define WMI_EXT_MLD_RECOMMENDED_MAX_SIMULTANEOUS_LINKS_SET(ext_mld_capability, value) WMI_SET_BITS(ext_mld_capability, 1, 4, value)
#define WMI_EXT_MLD_NSTR_STATUS_UPDATE_SUPPORT_GET(ext_mld_capability) WMI_GET_BITS(ext_mld_capability, 5, 1)
#define WMI_EXT_MLD_NSTR_STATUS_UPDATE_SUPPORT_SET(ext_mld_capability, value) WMI_SET_BITS(ext_mld_capability, 1, 5, value)
#define WMI_EXT_MLD_EMLSR_ONE_LINK_SUPPORT_GET(ext_mld_capability) WMI_GET_BITS(ext_mld_capability, 6, 1)
#define WMI_EXT_MLD_EMLSR_ONE_LINK_SUPPORT_SET(ext_mld_capability, value) WMI_SET_BITS(ext_mld_capability, 6, 1, value)
#define WMI_EXT_MLD_BTM_MLD_RECOMMEND_FOR_MULTI_AP_SUPPORT_GET(ext_mld_capability) WMI_GET_BITS(ext_mld_capability, 7, 1)
#define WMI_EXT_MLD_BTM_MLD_RECOMMEND_FOR_MULTI_AP_SUPPORT_SET(ext_mld_capability, value) WMI_SET_BITS(ext_mld_capability, 7, 1, value)
/*
 * 11BE MSD Capability Set and Get macros
 */
@@ -37004,7 +37027,8 @@ typedef struct {
                                                         * Value  3 is reserved */
                     freq_separation_str:5,
                     aar_support:1,
                     reserved2: 19;
                     link_reconfig_support:1,
                     reserved2: 18;
        };
        A_UINT32 mld_capability;
    };
@@ -37012,7 +37036,11 @@ typedef struct {
        struct {
            A_UINT32
                op_update_para_support:1, /* Indicates support of operation parameter update negotiation */
                reserved3: 31;
                recommended_max_simultaneous_links:4,
                nstr_status_update_support:1,
                emlsr_one_link_support:1,
                btm_recommended_for_multi_ap:1,
                reserved3: 24;
        };
        A_UINT32 ext_mld_capability;
    };
@@ -38423,6 +38451,8 @@ static INLINE A_UINT8 *wmi_id_to_name(A_UINT32 wmi_command)
        WMI_RETURN_STRING(WMI_PDEV_POWER_BOOST_CMDID);
        WMI_RETURN_STRING(WMI_PDEV_POWER_BOOST_MEM_ADDR_CMDID);
        WMI_RETURN_STRING(WMI_GET_SCAN_CACHE_RESULT_CMDID);
        WMI_RETURN_STRING(WMI_MLO_LINK_RECONFIG_CMDID);
        WMI_RETURN_STRING(WMI_MLO_LINK_RECONFIG_COMPLETE_CMDID);
    }
    return (A_UINT8 *) "Invalid WMI cmd";
@@ -46598,6 +46628,31 @@ typedef struct {
     */
} wmi_mlo_link_recommendation_fixed_param;
typedef struct {
    /** TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_mlo_link_reconfig_fixed_param */
    A_UINT32 tlv_header;
    /* unique id identifying the VDEV, generated by the caller */
    A_UINT32 vdev_id;
    wmi_mac_addr mld_addr;     /* MLD address of AP */
    /* The TLVs follows this structure:
     * wmi_mlo_link_add_param link_add_param[];
     * wmi_mlo_link_del_param  link_del_param[];
     */
} wmi_mlo_link_reconfig_fixed_param;
typedef struct {
    /** TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_mlo_link_reconfig_complete_fixed_param */
    A_UINT32 tlv_header;
    /* unique id identifying the VDEV, generated by the caller */
    A_UINT32 vdev_id;
    /* MLD address of AP */
    wmi_mac_addr mld_addr;
    /* any non-zero values of status indicate link reconfig failure. */
    A_UINT32  status;
    /* valid only when status is non-zero. fw will do reassociation if link reconfig failure */
    A_UINT32  reassoc_if_failure;
} wmi_mlo_link_reconfig_complete_fixed_param;
#define WMI_TID_TO_LINK_MAP_TID_NUM_GET(_var)               WMI_GET_BITS(_var, 0, 5)
#define WMI_TID_TO_LINK_MAP_TID_NUM_SET(_var, _val)         WMI_SET_BITS(_var, 0, 5, _val)
@@ -49282,6 +49337,50 @@ typedef struct {
    A_UINT32 vdev_id;
} wmi_mlo_peer_tid_to_link_map_event_fixed_param;
typedef struct {
    /** TLV tag and len; tag equals
     * WMITLV_TAG_STRUC_wmi_mlo_link_reconfig_start_indication_event_fixed_param */
    A_UINT32 tlv_header;
    /* vdev_id on which link reconfig indicate event is received */
    A_UINT32 vdev_id;
    /* MLD MAC address */
    wmi_mac_addr mld_mac_address;
    /* trigger reason of request link reconfig to host,
     * enum of WMI_ROAM_TRIGGER_REASON_ID.
     * WMI_ROAM_TRIGGER_REASON_FORCED will be used for STA(User/Host)
     * initiated link reconfig.
     * WMI_ROAM_TRIGGER_REASON_BTM will be used for AP initiated link reconfig.
     * Other will be used for STA(fw) initiated link reconfig.
     */
    A_UINT32 trigger_reason;
    /* trigger_result:
     * This field is only valid when trigger_reason ==
     * WMI_ROAM_TRIGGER_REASON_FORCED.
     * Any non-zero values of trigger_result indicate link reconfig failure.
     */
    A_UINT32 trigger_result;
    /* The TLVs follows this structure:
     * wmi_mlo_link_add_param link_add_param[];
     * wmi_mlo_link_del_param  link_del_param[];
     */
} wmi_mlo_link_reconfig_start_indication_event_fixed_param;
typedef struct {
    A_UINT32 tlv_header;    /* TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_mlo_link_add_param */
    A_UINT32 link_id;       /* AP's link ID of add link */
    wmi_mac_addr link_addr; /* AP's link address of add link */
    /* vdev_id:
     * which vdev to repurpose on with add link_id if it's not 0xff
     */
    A_UINT32 vdev_id;
} wmi_mlo_link_add_param;
typedef struct {
    A_UINT32 tlv_header;    /* TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_mlo_link_del_param */
    A_UINT32 link_id;       /* AP's link id of delete link */
    wmi_mac_addr link_addr; /* AP's link address of delete link */
} wmi_mlo_link_del_param;
typedef enum {
    WMI_EVENT_POWER_BOOST_START_TRAINING = 0,
    WMI_EVENT_POWER_BOOST_ABORT,
+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_ 1539
#define __WMI_REVISION_ 1540

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