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

Commit e0016128 authored by spuligil's avatar spuligil
Browse files

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

Change-Id: I53d2b22f2dda65d87148e4573109d7a5be60834d
WMI: negotiate allocation of scratch registers
CRs-Fixed: 2262693
parent 33cc03df
Loading
Loading
Loading
Loading
+25 −0
Original line number Diff line number Diff line
@@ -1254,6 +1254,11 @@ typedef enum {
    WMITLV_TAG_STRUC_wmi_vdev_pn_mgmt_rx_filter_cmd_fixed_param,
    WMITLV_TAG_STRUC_wmi_set_multiple_pdev_vdev_param_cmd_fixed_param,
    WMITLV_TAG_STRUC_wmi_set_param_info,
    WMITLV_TAG_STRUC_wmi_pmm_scratch_reg_allocation_cmd_fixed_param,
    WMITLV_TAG_STRUC_wmi_pmm_scratch_reg_info,
    WMITLV_TAG_STRUC_wmi_pmm_available_scratch_reg_event_fixed_param,
    WMITLV_TAG_STRUC_wmi_pmm_available_scratch_reg_info,
    WMITLV_TAG_STRUC_wmi_pmm_scratch_reg_allocation_complete_event_fixed_param,
} WMITLV_TAG_ID;

/*
@@ -1745,6 +1750,7 @@ typedef enum {
    OP(WMI_PEER_RX_PN_REQUEST_CMDID) \
    OP(WMI_VDEV_PN_MGMT_RX_FILTER_CMDID) \
    OP(WMI_SET_MULTIPLE_PDEV_VDEV_PARAM_CMDID) \
    OP(WMI_PMM_SCRATCH_REG_ALLOCATION_CMDID) \
    /* add new CMD_LIST elements above this line */


@@ -2028,6 +2034,8 @@ typedef enum {
    OP(WMI_RTT_PASN_PEER_DELETE_EVENTID) \
    OP(WMI_PDEV_RSSI_DBM_CONVERSION_PARAMS_INFO_EVENTID) \
    OP(WMI_PEER_RX_PN_RESPONSE_EVENTID) \
    OP(WMI_PMM_AVAILABLE_SCRATCH_REG_EVENTID) \
    OP(WMI_PMM_SCRATCH_REG_ALLOCATION_COMPLETE_EVENTID) \
    /* add new EVT_LIST elements above this line */


@@ -4980,6 +4988,12 @@ WMITLV_CREATE_PARAM_STRUC(WMI_RTT_PASN_AUTH_STATUS_CMD);
    WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_rtt_pasn_deauth_cmd_fixed_param, wmi_rtt_pasn_deauth_cmd_fixed_param, fixed_param, WMITLV_SIZE_FIX)
WMITLV_CREATE_PARAM_STRUC(WMI_RTT_PASN_DEAUTH_CMD);

/* Allocate PMM scratch registers */
#define WMITLV_TABLE_WMI_PMM_SCRATCH_REG_ALLOCATION_CMDID(id,op,buf,len) \
    WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_pmm_scratch_reg_allocation_cmd_fixed_param, wmi_pmm_scratch_reg_allocation_cmd_fixed_param, fixed_param, WMITLV_SIZE_FIX) \
    WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_STRUC, wmi_pmm_scratch_reg_info, scratch_reg_info, WMITLV_SIZE_VAR)
WMITLV_CREATE_PARAM_STRUC(WMI_PMM_SCRATCH_REG_ALLOCATION_CMDID);



/************************** TLV definitions of WMI events *******************************/
@@ -6737,6 +6751,17 @@ WMITLV_CREATE_PARAM_STRUC(WMI_RTT_PASN_PEER_CREATE_REQ_EVENTID);
    WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_STRUC, wmi_rtt_pasn_peer_delete_param, rtt_pasn_peer_param, WMITLV_SIZE_VAR)
WMITLV_CREATE_PARAM_STRUC(WMI_RTT_PASN_PEER_DELETE_EVENTID);

/* Available PMM scratch registers event */
#define WMITLV_TABLE_WMI_PMM_AVAILABLE_SCRATCH_REG_EVENTID(id,op,buf,len) \
    WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_pmm_available_scratch_reg_event_fixed_param, wmi_pmm_available_scratch_reg_event_fixed_param, fixed_param, WMITLV_SIZE_FIX) \
    WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_STRUC, wmi_pmm_available_scratch_reg_info, pmm_available_scratch_reg_info, WMITLV_SIZE_VAR)
WMITLV_CREATE_PARAM_STRUC(WMI_PMM_AVAILABLE_SCRATCH_REG_EVENTID);

/* Allocate PMM scratch registers event */
#define WMITLV_TABLE_WMI_PMM_SCRATCH_REG_ALLOCATION_COMPLETE_EVENTID(id,op,buf,len) \
    WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_pmm_scratch_reg_allocation_complete_event_fixed_param, wmi_pmm_scratch_reg_allocation_complete_event_fixed_param, fixed_param, WMITLV_SIZE_FIX)
WMITLV_CREATE_PARAM_STRUC(WMI_PMM_SCRATCH_REG_ALLOCATION_COMPLETE_EVENTID);


#ifdef __cplusplus
}
+54 −1
Original line number Diff line number Diff line
@@ -1146,6 +1146,9 @@ typedef enum {
     */
    WMI_SET_MULTIPLE_PDEV_VDEV_PARAM_CMDID,
    /* WMI cmd used to allocate HW scratch registers */
    WMI_PMM_SCRATCH_REG_ALLOCATION_CMDID,
    /*  Offload 11k related requests */
    WMI_11K_OFFLOAD_REPORT_CMDID = WMI_CMD_GRP_START_ID(WMI_GRP_11K_OFFLOAD),
    /* invoke neighbor report from FW */
@@ -2061,6 +2064,12 @@ typedef enum {
    /** event to report ANI level of the channels */
    WMI_GET_CHANNEL_ANI_EVENTID,
    /* WMI event to available scratch registers */
    WMI_PMM_AVAILABLE_SCRATCH_REG_EVENTID,
    /* WMI event to scratch registers allocation */
    WMI_PMM_SCRATCH_REG_ALLOCATION_COMPLETE_EVENTID,
    /* GPIO Event */
    WMI_GPIO_INPUT_EVENTID = WMI_EVT_GRP_START_ID(WMI_GRP_GPIO),
    /** upload H_CV info WMI event
@@ -31018,6 +31027,7 @@ static INLINE A_UINT8 *wmi_id_to_name(A_UINT32 wmi_command)
        WMI_RETURN_STRING(WMI_VDEV_PN_MGMT_RX_FILTER_CMDID);
        WMI_RETURN_STRING(WMI_PEER_RX_PN_REQUEST_CMDID);
        WMI_RETURN_STRING(WMI_SET_MULTIPLE_PDEV_VDEV_PARAM_CMDID);
        WMI_RETURN_STRING(WMI_PMM_SCRATCH_REG_ALLOCATION_CMDID);
    }
    return (A_UINT8 *) "Invalid WMI cmd";
@@ -37957,11 +37967,54 @@ typedef struct {
    wmi_mac_addr peer_mac_addr;
} wmi_rtt_pasn_deauth_cmd_fixed_param;
typedef struct {
    A_UINT32 tlv_header; /** TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_pmm_scratch_reg_info */
    /** what the register is used for - see WFSS_PMM_SCRATCH_REG_PURPOSE enum */
    A_UINT32 pmm_scratch_reg_purpose;
    /** Address of scratch register */
    A_UINT32 pmm_scratch_reg_address;
} wmi_pmm_scratch_reg_info;
typedef struct {
    A_UINT32 tlv_header; /** TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_pmm_scratch_reg_allocation_cmd_fixed_param */
    /** pdev_id for identifying the MAC */
    A_UINT32 pdev_id;
    /*
     * Following this structure is the TLV:
     *     wmi_pmm_scratch_reg_info scratch_reg_info[];
     */
} wmi_pmm_scratch_reg_allocation_cmd_fixed_param;
typedef struct {
    A_UINT32 tlv_header; /** TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_pmm_available_scratch_reg_info */
    /** Scratch register address */
    A_UINT32 pmm_scratch_reg_address;
} wmi_pmm_available_scratch_reg_info;
typedef struct {
    A_UINT32 tlv_header; /** TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_pmm_available_scratch_reg_event_fixed_param */
    /** pdev_id for identifying the MAC */
    A_UINT32 pdev_id;
    /*
     * Following this structure is the TLV:
     *     wmi_pmm_available_scratch_reg_info pmm_available_scratch_reg_info[];
     */
} wmi_pmm_available_scratch_reg_event_fixed_param;
typedef struct {
    A_UINT32 tlv_header; /** TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_pmm_scratch_reg_allocation_complete_event_fixed_param */
    /** pdev_id for identifying the MAC */
    A_UINT32 pdev_id;
    /** 1 - success, 0 - failed */
    A_UINT32 is_allocated;
} wmi_pmm_scratch_reg_allocation_complete_event_fixed_param;
/* ADD NEW DEFS HERE */
// {
/*****************************************************************************
 * The following structures are deprecated. DO NOT USE THEM!
 */
@@ -38023,7 +38076,7 @@ typedef struct {
/*****************************************************************************
 * END DEPRECATED
 */
// }
/* ADD NEW DEFS ABOVE THIS DEPRECATED SECTION */
+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_ 1129
#define __WMI_REVISION_ 1130

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