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

Commit e4eb087d authored by spuligil's avatar spuligil
Browse files

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

Change-Id: If69d1f831dbdcf754bb398637aa615a193e605f8
WMI: add TDMA_SCHEDULE_REQUEST_CMD msg def
CRs-Fixed: 2262693
parent d6e7bf3f
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -609,6 +609,7 @@ typedef enum {
    WMI_SERVICE_RTT_11AZ_TB_RSTA_SUPPORT = 356, /* FW support for 11AZ trigger based ranging Responder (RSTA) role */
    WMI_SERVICE_SUPPORT_11D_FOR_HOST_SCAN = 357,
    WMI_SERVICE_DETERMINISTIC_SCHEDULER_LEVEL0 = 358, /* FW supports 12.2 level scheduler mode disable commands and stats */
    WMI_SERVICE_COORDINATED_AP_TDMA = 359, /* Support for Coordinated-AP TDMA feature */


    WMI_MAX_EXT2_SERVICE
+6 −0
Original line number Diff line number Diff line
@@ -1333,6 +1333,7 @@ typedef enum {
    WMITLV_TAG_STRUC_wmi_peer_sched_mode_disable_fixed_param,
    WMITLV_TAG_STRUC_wmi_per_peer_sched_mode_disable,
    WMITLV_TAG_STRUC_wmi_esl_egid_cmd_fixed_param,
    WMITLV_TAG_STRUC_wmi_tdma_schedule_request_cmd_fixed_param,
} WMITLV_TAG_ID;

/*
@@ -1849,6 +1850,7 @@ typedef enum {
    OP(WMI_TAS_POWER_HISTORY_CMDID) \
    OP(WMI_PEER_SCHED_MODE_DISABLE_CMDID) \
    OP(WMI_ESL_EGID_CMDID) \
    OP(WMI_TDMA_SCHEDULE_REQUEST_CMDID) \
    /* add new CMD_LIST elements above this line */


@@ -5254,6 +5256,10 @@ WMITLV_CREATE_PARAM_STRUC(WMI_ODD_LIVEDUMP_REQUEST_CMDID);
    WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_STRUC, wmi_per_peer_sched_mode_disable, peer_info, WMITLV_SIZE_VAR)
WMITLV_CREATE_PARAM_STRUC(WMI_PEER_SCHED_MODE_DISABLE_CMDID);

#define WMITLV_TABLE_WMI_TDMA_SCHEDULE_REQUEST_CMDID(id,op,buf,len) \
    WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_tdma_schedule_request_cmd_fixed_param, wmi_tdma_schedule_request_cmd_fixed_param, fixed_param, WMITLV_SIZE_FIX)
WMITLV_CREATE_PARAM_STRUC(WMI_TDMA_SCHEDULE_REQUEST_CMDID);



/************************** TLV definitions of WMI events *******************************/
+79 −0
Original line number Diff line number Diff line
@@ -315,6 +315,7 @@ typedef enum {
    WMI_GRP_SAWF,           /* 0x49 SAWF (Service Aware WiFi) */
    WMI_GRP_QUIET_OFL,      /* 0x4a Quiet offloads */
    WMI_GRP_ODD,            /* 0x4b ODD */
    WMI_GRP_TDMA,           /* 0x4c TDMA */
} WMI_GRP_ID;
#define WMI_CMD_GRP_START_ID(grp_id) (((grp_id) << 12) | 0x1)
@@ -1551,6 +1552,8 @@ typedef enum {
    /* WMI commands specific to ODD */
    WMI_ODD_LIVEDUMP_REQUEST_CMDID = WMI_CMD_GRP_START_ID(WMI_GRP_ODD),
    /* WMI commands specific to TDMA */
    WMI_TDMA_SCHEDULE_REQUEST_CMDID = WMI_CMD_GRP_START_ID(WMI_GRP_TDMA),
} WMI_CMD_ID;
typedef enum {
@@ -33133,6 +33136,7 @@ static INLINE A_UINT8 *wmi_id_to_name(A_UINT32 wmi_command)
        WMI_RETURN_STRING(WMI_VENDOR_PEER_CMDID);
        WMI_RETURN_STRING(WMI_VDEV_SET_TWT_EDCA_PARAMS_CMDID); /* XPAN TWT */
        WMI_RETURN_STRING(WMI_ESL_EGID_CMDID);
        WMI_RETURN_STRING(WMI_TDMA_SCHEDULE_REQUEST_CMDID);
    }
    return (A_UINT8 *) "Invalid WMI cmd";
@@ -41337,6 +41341,81 @@ typedef struct {
     */
} wmi_peer_sched_mode_disable_fixed_param;
/** Coordinated-AP TDMA **/
#define WMI_TDMA_MAX_ACTIVE_SCHEDULES  10
typedef struct {
    A_UINT32 tlv_header; /** TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_tdma_schedule_request_cmd_fixed_param **/
    /** pdev_id
     * PDEV ID for identifying the MAC for which this schedule
     * is being requested.
     */
    A_UINT32 pdev_id;
    /** schedule_type
     * 0 = Reserved
     * 1 = Restricted
     * UINT32_MAX = Cancel all TDMA schedules and ignore other parameters below.
     */
    A_UINT32 schedule_type;
    /** schedule_handle_id
     * Unique ID to identify this TDMA schedule
     */
    A_UINT32 schedule_handle_id;
    /** owner_bssid
     * The BSSID this TDMA schedule is reserved for
     */
    wmi_mac_addr owner_bssid;
    /** start_time_tsf_low
     * Lower 32-bits of Synchronized Start time for the first busy slot
     * in this TDMA schedule.
     * It should be a PMM global FW TSF reference
     */
    A_UINT32 start_time_tsf_low;
    /** start_time_tsf_high
     * Higher 32-bits of Synchronized Start time for the first busy slot
     * in this TDMA schedule.
     * It should be a PMM global FW TSF reference
     */
    A_UINT32 start_time_tsf_high;
    /** num_busy_slots
     * Number of busy periods in this schedule
     */
    A_UINT32 num_busy_slots;
    /** busy_slot_dur_ms
     * The fixed duration of each busy slot in milliseconds
     */
    A_UINT32 busy_slot_dur_ms;
    /** busy_slot_intvl_ms
     * The fixed interval between the start of two consecutive busy slots
     * in milliseconds.
     */
    A_UINT32 busy_slot_intvl_ms;
    /** edca_params_valid
     * Indicates whether the following EDCA fields aifsn, ecwmin, ecwmax
     * are valid or not
     * 1 = Valid. 0 = Not Valid.
     */
    A_UINT32 edca_params_valid;
    /** aifsn
     * Arbitration inter frame spacing number for this schedule type.
     * Range: 2-15.
     * For voice, video, best-effort, background ACs
     */
    A_UINT32 aifsn[WMI_AC_MAX];
    /** ecwmin
     * Exponent form of Contention Window minimum value for this schedule type.
     * Range: 2 - 1024.
     * For voice, video, best-effort, background ACs
     */
    A_UINT32 ecwmin[WMI_AC_MAX];
    /** ecwmax
     * Exponent form of Contention Window maximum value for this schedule type.
     * Range: 2 - 1024.
     * For voice, video, best-effort, background ACs
     */
    A_UINT32 ecwmax[WMI_AC_MAX];
} wmi_tdma_schedule_request_cmd_fixed_param;
/* ADD NEW DEFS HERE */
+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_ 1257
#define __WMI_REVISION_ 1258

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