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

Commit bc6cd2ba authored by Linux Build Service Account's avatar Linux Build Service Account
Browse files

Merge 2c949273 on remote branch

Change-Id: I27d0b0a743a6067a2b4975037fcf7764d8b23af1
parents 5faddf32 2c949273
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -118,6 +118,7 @@ typedef enum {
  WLAN_MODULE_CFIR,                     /* 0x54 */ /* Channel Capture */
  WLAN_MODULE_CODE_COVER,               /* 0x55 */ /* code coverage */
  WLAN_MODULE_SHO,                      /* 0x56 */ /* SAP HW offload */
  WLAN_MODULE_MLO_MGR,                  /* 0x57 */ /* MLO manager */


  WLAN_MODULE_ID_MAX,
+3 −1
Original line number Diff line number Diff line
@@ -524,6 +524,8 @@ typedef enum {
    WMI_SERVICE_GO_CONNECTED_D3WOW = 279,   /* Indicates FW support for D3WoW for P2P GO connected case */
    WMI_SERVICE_EXT_TPC_REG_SUPPORT = 280, /* Support for new 6G TPC power limits */
    WMI_SERVICE_REG_CC_EXT_EVENT_SUPPORT = 281, /* Support for Extended REG_CC Event with additional params for 6G */
    WMI_SERVICE_NDI_TXBF_SUPPORT = 282, /* Indicates FW support for Tx beamforming with NDI VDEV */
    WMI_SERVICE_6G_EDGE_CHANNEL_SUPPORT = 283, /* Indicates FW Support for 6GHz Edge Channels */


    WMI_MAX_EXT2_SERVICE
@@ -621,7 +623,7 @@ typedef enum {
        if (svc_id < WMI_MAX_SERVICE) { \
            WMI_SERVICE_DISABLE(pwmi_svc_bmap, svc_id); \
        } else if (svc_id < WMI_MAX_EXT_SERVICE) { \
            WMI_SERVICE_DISABLE(pwmi_svc_bmap, pwmi_svc_ext_bmap, svc_id); \
            WMI_SERVICE_EXT_DISABLE(pwmi_svc_bmap, pwmi_svc_ext_bmap, svc_id); \
        } else { \
            int word = ((svc_id) - WMI_MAX_EXT_SERVICE) / 32; \
            int bit = (svc_id) & 0x1f; /* svc_id mod 32 */ \
+17 −1
Original line number Diff line number Diff line
@@ -1136,6 +1136,9 @@ typedef enum {
    WMITLV_TAG_STRUC_wmi_mlo_link_set_active_cmd_fixed_param,
    WMITLV_TAG_STRUC_wmi_mlo_link_set_active_resp_event_fixed_param,
    WMITLV_TAG_STRUC_wmi_roam_sae_offload_tlv_param,
    WMITLV_TAG_STRUC_wmi_big_data_dp_stats_tlv_param,
    WMITLV_TAG_STRUC_wmi_pdev_get_dpd_status_cmd_fixed_param,
    WMITLV_TAG_STRUC_wmi_pdev_get_dpd_status_evt_fixed_param,
} WMITLV_TAG_ID;

/*
@@ -1593,6 +1596,7 @@ typedef enum {
    OP(WMI_VDEV_TID_LATENCY_CONFIG_CMDID) \
    OP(WMI_PEER_TID_LATENCY_CONFIG_CMDID) \
    OP(WMI_MLO_LINK_SET_ACTIVE_CMDID) \
    OP(WMI_PDEV_GET_DPD_STATUS_CMDID) \
    /* add new CMD_LIST elements above this line */


@@ -1855,6 +1859,7 @@ typedef enum {
    OP(WMI_REG_CHAN_LIST_CC_EXT_EVENTID) \
    OP(WMI_TWT_NOTIFY_EVENTID) \
    OP(WMI_MLO_LINK_SET_ACTIVE_RESP_EVENTID) \
    OP(WMI_PDEV_GET_DPD_STATUS_EVENTID) \
    /* add new EVT_LIST elements above this line */


@@ -4596,6 +4601,11 @@ WMITLV_CREATE_PARAM_STRUC(WMI_PDEV_ENABLE_DURATION_BASED_TX_MODE_SELECTION_CMDID
    WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_UINT32, A_UINT32, vdev_id_bitmap, WMITLV_SIZE_VAR)
WMITLV_CREATE_PARAM_STRUC(WMI_MLO_LINK_SET_ACTIVE_CMDID);

/* Request DPD Status */
#define WMITLV_TABLE_WMI_PDEV_GET_DPD_STATUS_CMDID(id,op,buf,len) \
    WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_pdev_get_dpd_status_cmd_fixed_param, wmi_pdev_get_dpd_status_cmd_fixed_param, fixed_param, WMITLV_SIZE_FIX)
WMITLV_CREATE_PARAM_STRUC(WMI_PDEV_GET_DPD_STATUS_CMDID);


/************************** TLV definitions of WMI events *******************************/

@@ -6138,7 +6148,8 @@ WMITLV_CREATE_PARAM_STRUC(WMI_VDEV_SEND_BIG_DATA_EVENTID);
/* send BIG DATA event to host P2 */
#define WMITLV_TABLE_WMI_VDEV_SEND_BIG_DATA_P2_EVENTID(id,op,buf,len) \
    WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_vdev_send_big_data_p2_event_fixed_param, wmi_vdev_send_big_data_p2_event_fixed_param, fixed_param, WMITLV_SIZE_FIX) \
    WMITLV_ELEM(id, op, buf, len, WMITLV_TAG_ARRAY_UINT32, A_UINT32, bd_datapath_stats, WMITLV_SIZE_VAR)
    WMITLV_ELEM(id, op, buf, len, WMITLV_TAG_ARRAY_UINT32, A_UINT32, bd_datapath_stats, WMITLV_SIZE_VAR) \
    WMITLV_ELEM(id, op, buf, len, WMITLV_TAG_ARRAY_STRUC, wmi_big_data_dp_stats_tlv_param, big_data_dp_stats, WMITLV_SIZE_VAR)
WMITLV_CREATE_PARAM_STRUC(WMI_VDEV_SEND_BIG_DATA_P2_EVENTID);

#define WMITLV_TABLE_WMI_NAN_DMESG_EVENTID(id,op,buf,len) \
@@ -6203,6 +6214,11 @@ WMITLV_CREATE_PARAM_STRUC(WMI_TWT_SESSION_STATS_EVENTID);
    WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_UINT32, A_UINT32, force_inactive_vdev_bitmap, WMITLV_SIZE_VAR)
WMITLV_CREATE_PARAM_STRUC(WMI_MLO_LINK_SET_ACTIVE_RESP_EVENTID);

/* Get DPD status Event */
#define WMITLV_TABLE_WMI_PDEV_GET_DPD_STATUS_EVENTID(id,op,buf,len)  \
    WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_pdev_get_dpd_status_evt_fixed_param, wmi_pdev_get_dpd_status_evt_fixed_param, fixed_param, WMITLV_SIZE_FIX)
WMITLV_CREATE_PARAM_STRUC(WMI_PDEV_GET_DPD_STATUS_EVENTID);


#ifdef __cplusplus
}
+62 −8
Original line number Diff line number Diff line
@@ -446,6 +446,8 @@ typedef enum {
    WMI_PDEV_GET_TPC_STATS_CMDID,
    /** ENABLE/DISABLE Duration based tx mode selection */
    WMI_PDEV_ENABLE_DURATION_BASED_TX_MODE_SELECTION_CMDID,
    /* Get DPD status from HALPHY */
    WMI_PDEV_GET_DPD_STATUS_CMDID,
    /* VDEV (virtual device) specific commands */
    /** vdev create */
@@ -1493,6 +1495,9 @@ typedef enum {
    /** WMI event in response to TPC STATS command */
    WMI_PDEV_GET_TPC_STATS_EVENTID,
    /* Event to get DPD status from HALPHY */
    WMI_PDEV_GET_DPD_STATUS_EVENTID,
    /* VDEV specific events */
    /** VDEV started event in response to VDEV_START request */
@@ -7911,14 +7916,15 @@ typedef struct {
} wmi_pdev_set_channel_cmd;
typedef enum {
    WMI_PKTLOG_EVENT_RX = 0x1,
    WMI_PKTLOG_EVENT_TX = 0x2,
    WMI_PKTLOG_EVENT_RCF = 0x4, /* Rate Control Find */
    WMI_PKTLOG_EVENT_RCU = 0x8, /* Rate Control Update */
    WMI_PKTLOG_EVENT_RX =  0x00000001,
    WMI_PKTLOG_EVENT_TX =  0x00000002,
    WMI_PKTLOG_EVENT_RCF = 0x00000004, /* Rate Control Find */
    WMI_PKTLOG_EVENT_RCU = 0x00000008, /* Rate Control Update */
    /* 0x10 used by deprecated DBG_PRINT */
    WMI_PKTLOG_EVENT_SMART_ANTENNA = 0x20, /* To support Smart Antenna */
    WMI_PKTLOG_EVENT_SW = 0x40, /* To support SW defined events */
    WMI_PKTLOG_EVENT_PHY = 0x80, /* To support PHY stats */
    WMI_PKTLOG_EVENT_SMART_ANTENNA = 0x00000020, /* To support Smart Antenna */
    WMI_PKTLOG_EVENT_SW =  0x00000040, /* To support SW defined events */
    WMI_PKTLOG_EVENT_PHY = 0x00000080, /* To support PHY stats */
    WMI_PKTLOG_EVENT_CBF = 0x00000100, /* To support CBF's filter in */
} WMI_PKTLOG_EVENT;
typedef enum {
@@ -28268,6 +28274,7 @@ static INLINE A_UINT8 *wmi_id_to_name(A_UINT32 wmi_command)
        WMI_RETURN_STRING(WMI_VDEV_TID_LATENCY_CONFIG_CMDID);
        WMI_RETURN_STRING(WMI_PEER_TID_LATENCY_CONFIG_CMDID);
        WMI_RETURN_STRING(WMI_MLO_LINK_SET_ACTIVE_CMDID);
        WMI_RETURN_STRING(WMI_PDEV_GET_DPD_STATUS_CMDID);
    }
    return "Invalid WMI cmd";
@@ -30528,16 +30535,46 @@ typedef struct {
    /* total number of TSF out of sync */
    A_UINT32 tsf_out_of_sync;
    /**
     * ANI (noise interference) level corresponding to the channel.
     * The range of values is different for chips of different target
     * architectures.  Helium values range from 0 to 9, while Lithium
     * and Beryllium values range from -5 to 15.
     * In all cases, higher values indicate more noise interference.
     */
    A_INT32 ani_level;
    /*
     * This fixed_param TLV is followed by the below TLVs:
     * List of datapath big data stats. This stat is not interpreted by
     * host. This gets directly updated on big data server and later FW
     * team will analyze this data.
     *
     * A_UINT32 bd_datapath_stats[];
     * A_UINT32 bd_datapath_stats[]; // DEPRECATED
     * wmi_big_data_dp_stats_tlv_param big_data_dp_stats[];
     */
} wmi_vdev_send_big_data_p2_event_fixed_param;
typedef struct {
    /** TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_bd_datapath_stats_tlv_param */
    A_UINT32 tlv_header;
    /* Tx power before disconnection.
     * The units of the following tx power fields are 0.5 dBm for Helium
     * architecture target (e.g. a value of 1 means tx power = 0.5 dBm),
     * and are 0.25 dBm for subsequent target architectures.
     */
    A_UINT32 last_data_tx_pwr;
    A_UINT32 target_power_dsss;
    A_UINT32 target_power_ofdm;
    /* Rate index of last data frame before disconnection */
    A_UINT32 last_tx_data_rix;
    /* Tx rate (in kbps) of last data frame before disconnection */
    A_UINT32 last_tx_data_rate_kbps;
} wmi_big_data_dp_stats_tlv_param;
typedef enum {
    WMI_6GHZ_REG_LPI = 0,
    WMI_6GHZ_REG_VLP = 1,
@@ -30606,6 +30643,23 @@ typedef struct {
    A_INT32  tx_power;      /* TX power for the specified HALPHY parameters in half dBm unit */
} wmi_get_tpc_power_evt_fixed_param;
typedef struct {
    A_UINT32 tlv_header;    /* TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_pdev_get_dpd_status_cmd_fixed_param */
    A_UINT32 pdev_id;        /* PDEV ID set by the command */
} wmi_pdev_get_dpd_status_cmd_fixed_param;
typedef enum {
    WMI_DPD_STATUS_DISABLE = 0,
    WMI_DPD_STATUS_ENABLE = 1,
    WMI_DPD_STATUS_INVALID = 2,
} WMI_DPD_STATUS;
typedef struct {
    A_UINT32 tlv_header;    /* TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_pdev_get_dpd_status_evt_fixed_param  */
    A_UINT32 pdev_id;        /* PDEV Id set by the command */
    A_UINT32 dpd_status;    /* DPD status obtained from HALPHY, refer to WMI_DPD_STATUS */
} wmi_pdev_get_dpd_status_evt_fixed_param;
/* below structures are related to Motion Detection. */
typedef struct {
    /** TLV tag and len; tag equals
+1 −1
Original line number Diff line number Diff line
@@ -36,7 +36,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_ 962
#define __WMI_REVISION_ 967

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