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

Commit 4f216dba authored by spuligil's avatar spuligil Committed by Ravindra Konda
Browse files

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

WMI: add PEER_MULTIPLE_REORDER_QUEUE_SETUP_CMD msg def
Change-Id: I725cdbc45641b9c4536dc013c3b459063654b598
CRs-Fixed: 2262693
parent b47a4006
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -646,6 +646,7 @@ typedef enum {
    WMI_SERVICE_BOTH_PSD_EIRP_FOR_AP_SP_CLIENT_SP_SUPPORT = 393, /* Support for CTL regeneration where both PSD and EIRP will be sent in 6GHZ SET_TPC WMI for SP and SP_CLIENT power modes */
    WMI_SERVICE_PDEV_PARAM_IN_UTF_WMI = 394, /* FW supports receiving and sending pdev_id parameter in WMI_PDEV_UTF_(CMD/EVENT) */
    WMI_SERVICE_SW_PROG_DFS_SUPPORT = 395, /* Indicate FW support SW progressive DFS */
    WMI_SERVICE_MULTIPLE_REORDER_QUEUE_SETUP_SUPPORT = 396, /* Indicate FW supports multiple TID reorder queues setup in one cmd */

    WMI_MAX_EXT2_SERVICE

+9 −0
Original line number Diff line number Diff line
@@ -1415,6 +1415,8 @@ typedef enum {
    WMITLV_TAG_STRUC_wmi_audio_transport_switch_resp_status_cmd_fixed_param,
    WMITLV_TAG_STRUC_wmi_audio_transport_switch_type_event_fixed_param,
    WMITLV_TAG_STRUC_wmi_dbw_chan_info,
    WMITLV_TAG_STRUC_wmi_peer_multiple_reorder_queue_setup_cmd_fixed_param,
    WMITLV_TAG_STRUC_wmi_peer_per_reorder_q_setup_params_t,
} WMITLV_TAG_ID;
/*
 * IMPORTANT: Please add _ALL_ WMI Commands Here.
@@ -1954,6 +1956,7 @@ typedef enum {
    OP(WMI_VDEV_SCHED_MODE_PROBE_REQ_CMDID) \
    OP(WMI_VDEV_OOB_CONNECTION_REQ_CMDID) \
    OP(WMI_AUDIO_TRANSPORT_SWITCH_RESP_STATUS_CMDID) \
    OP(WMI_PEER_MULTIPLE_REORDER_QUEUE_SETUP_CMDID) \
    /* add new CMD_LIST elements above this line */


@@ -4617,6 +4620,12 @@ WMITLV_CREATE_PARAM_STRUC(WMI_PEER_REORDER_QUEUE_SETUP_CMDID);
    WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_peer_reorder_queue_remove_cmd_fixed_param, wmi_peer_reorder_queue_remove_cmd_fixed_param, fixed_param, WMITLV_SIZE_FIX)
WMITLV_CREATE_PARAM_STRUC(WMI_PEER_REORDER_QUEUE_REMOVE_CMDID);

/* peer multiple reorder queue setup cmd */
#define WMITLV_TABLE_WMI_PEER_MULTIPLE_REORDER_QUEUE_SETUP_CMDID(id,op,buf,len) \
    WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_peer_multiple_reorder_queue_setup_cmd_fixed_param, wmi_peer_multiple_reorder_queue_setup_cmd_fixed_param, fixed_param, WMITLV_SIZE_FIX) \
    WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_STRUC, wmi_peer_per_reorder_q_setup_params_t, reorder_params_list, WMITLV_SIZE_VAR)
WMITLV_CREATE_PARAM_STRUC(WMI_PEER_MULTIPLE_REORDER_QUEUE_SETUP_CMDID);

/* Filter in monitor mode parameters Cmd */
#define WMITLV_TABLE_WMI_MNT_FILTER_CMDID(id,op,buf,len) \
    WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_mnt_filter_cmd_fixed_param, wmi_mnt_filter_cmd_fixed_param, fixed_param, WMITLV_SIZE_FIX)
+37 −0
Original line number Diff line number Diff line
@@ -761,6 +761,9 @@ typedef enum {
    /* Group SET cmd for PEERS */
    WMI_PEER_BULK_SET_CMDID,
    /* WMI command to setup reorder queue for multiple TIDs */
    WMI_PEER_MULTIPLE_REORDER_QUEUE_SETUP_CMDID,
    /* beacon/management specific commands */
    /** transmit beacon by reference . used for transmitting beacon on low latency interface like pcie */
@@ -31748,6 +31751,39 @@ typedef struct {
                              * established or terminated for the TID. */
} wmi_peer_reorder_queue_setup_cmd_fixed_param;
typedef struct {
    A_UINT32 tlv_header; /* TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_peer_per_reorder_q_setup_params_t */
    A_UINT32 tid; /* 0 to 15 = QoS TIDs, 16 = non-qos TID */
    A_UINT32 queue_ptr_lo; /* lower 32 bits of queue desc address */
    A_UINT32 queue_ptr_hi; /* upper 32 bits of queue desc address */
    A_UINT32 queue_no; /* 16-bit number assigned by host for queue,
                        * stored in bits 15:0 of queue_no field */
    A_UINT32 ba_window_size_valid; /* Is ba_window_size valid?
                                    * 0 = Invalid, 1 = Valid */
    A_UINT32 ba_window_size; /* Valid values: 0 to 256
                              * Host sends the message when BA session is
                              * established or terminated for the TID. */
} wmi_peer_per_reorder_q_setup_params_t;
/**
 * This command is sent from WLAN host driver to firmware for
 * plugging in reorder queue desc to hw for multiple TIDs in one shot.
 *
 * Example: plug-in queue desc
 *    host->target: WMI_PEER_MULTIPLE_REORDER_QUEUE_SETUP_CMDID,
 *                  (vdev_id = PEER vdev id,
 *                   peer_macaddr = PEER mac addr)
 */
typedef struct {
    A_UINT32 tlv_header; /* TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_peer_multiple_reorder_queue_setup_cmd_fixed_param */
    A_UINT32 vdev_id;
    wmi_mac_addr peer_macaddr; /* peer mac address */
/*
 * This struct is followed by other TLVs:
 *   wmi_peer_per_reorder_q_setup_params_t q_setup_params[num_queues];
 */
} wmi_peer_multiple_reorder_queue_setup_cmd_fixed_param;
/**
 * This command is sent from WLAN host driver to firmware for
 * removing one or more reorder queue desc to lithium hw.
@@ -37016,6 +37052,7 @@ static INLINE A_UINT8 *wmi_id_to_name(A_UINT32 wmi_command)
        WMI_RETURN_STRING(WMI_VDEV_SCHED_MODE_PROBE_REQ_CMDID);
        WMI_RETURN_STRING(WMI_VDEV_OOB_CONNECTION_REQ_CMDID);
        WMI_RETURN_STRING(WMI_AUDIO_TRANSPORT_SWITCH_RESP_STATUS_CMDID);
        WMI_RETURN_STRING(WMI_PEER_MULTIPLE_REORDER_QUEUE_SETUP_CMDID);
    }
    return (A_UINT8 *) "Invalid WMI cmd";
+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_ 1411
#define __WMI_REVISION_ 1412

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