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

Change-Id: Idabda8d7bed6d83ecd87caa36dc1becabb2d57a6
WMI: add framework for vendor-specific msg defs
CRs-Fixed: 2262693
Cette révision appartient à :
spuligil
2020-10-30 06:00:43 -07:00
révisé par Gerrit - the friendly Code Review server
Parent 955f0c8ffd
révision 4ffcf25669
3 fichiers modifiés avec 137 ajouts et 1 suppressions

Voir le fichier

@@ -1117,6 +1117,12 @@ typedef enum {
WMITLV_TAG_STRUC_wmi_ctrl_path_mem_stats_struct,
WMITLV_TAG_STRUC_wmi_twt_nudge_dialog_cmd_fixed_param,
WMITLV_TAG_STRUC_wmi_twt_nudge_dialog_complete_event_fixed_param,
WMITLV_TAG_STRUC_wmi_pdev_vendor_event_fixed_param,
WMITLV_TAG_STRUC_wmi_pdev_vendor_cmd_fixed_param,
WMITLV_TAG_STRUC_wmi_vdev_vendor_event_fixed_param,
WMITLV_TAG_STRUC_wmi_vdev_vendor_cmd_fixed_param,
WMITLV_TAG_STRUC_wmi_peer_vendor_event_fixed_param,
WMITLV_TAG_STRUC_wmi_peer_vendor_cmd_fixed_param,
} WMITLV_TAG_ID;
/*

Voir le fichier

@@ -70,6 +70,11 @@ extern "C" {
#include <wlan_defs.h>
#include <wmi_services.h>
/*
* Include the defs of vendor-specific messages (or possibly dummy defs
* if there are no actual vendor-specific message defs).
*/
#include <wmi_unified_vendor.h>
#define ATH_MAC_LEN 6 /**< length of MAC in bytes */
#define WMI_EVENT_STATUS_SUCCESS 0 /* Success return status to host */
@@ -260,6 +265,7 @@ typedef enum {
WMI_GRP_AUDIO, /* 0x43 */
WMI_GRP_CFR_CAPTURE, /* 0x44 */
WMI_GRP_ATM, /* 0x45 ATM (Air Time Management group) */
WMI_GRP_VENDOR, /* 0x46 vendor specific group */
} WMI_GRP_ID;
#define WMI_CMD_GRP_START_ID(grp_id) (((grp_id) << 12) | 0x1)
@@ -1338,6 +1344,12 @@ typedef enum {
WMI_ATF_GROUP_WMM_AC_CONFIG_REQUEST_CMDID,
/** ATF Peer Extended Request command */
WMI_PEER_ATF_EXT_REQUEST_CMDID,
/** Vendor Defined WMI commands **/
WMI_VENDOR_PDEV_CMDID = WMI_CMD_GRP_START_ID(WMI_GRP_VENDOR),
WMI_VENDOR_VDEV_CMDID,
WMI_VENDOR_PEER_CMDID,
/** Further vendor cmd IDs can be added below **/
} WMI_CMD_ID;
typedef enum {
@@ -2036,6 +2048,11 @@ typedef enum {
WMI_AUDIO_AGGR_REPORT_STATISTICS_EVENTID = WMI_EVT_GRP_START_ID(WMI_GRP_AUDIO),
WMI_AUDIO_AGGR_SCHED_METHOD_EVENTID,
/** Vendor defined WMI events **/
WMI_VENDOR_PDEV_EVENTID = WMI_EVT_GRP_START_ID(WMI_GRP_VENDOR),
WMI_VENDOR_VDEV_EVENTID,
WMI_VENDOR_PEER_EVENTID,
/** Further vendor event IDs can be added below **/
} WMI_EVT_ID;
/* defines for OEM message sub-types */
@@ -32335,6 +32352,119 @@ typedef struct {
*/
} wmi_pdev_twt_session_stats_event_fixed_param;
typedef struct wmi_pdev_vendor_event
{
/* type is WMI_PDEV_VENDOR_EVENTID */
A_UINT32 tlv_header;
/* pdev_id for identifying the MAC. See macros starting with WMI_PDEV_ID_ for values. */
A_UINT32 pdev_id;
/* Any vendor specialization cases will need to add sub_type enum defs. */
A_UINT32 sub_type;
wmi_pdev_vendor_event_val evt;
/* NOTE:
* Future changes may increase the size of pdev_vendor_event.
* Consequently, no fields can be added here after pdev_vendor_event,
* because their offsets within wmi_pdev_vendor_event_fixed_param
* would change, causing backwards incompatibilities.
*/
} wmi_pdev_vendor_event_fixed_param;
typedef struct wmi_vdev_vendor_event
{
/* type is WMI_VDEV_VENDOR_EVENTID */
A_UINT32 tlv_header;
/* pdev_id for identifying the MAC. See macros starting with WMI_PDEV_ID_ for values. */
A_UINT32 pdev_id;
/* unique id identifying the VDEV, generated by the caller */
A_UINT32 vdev_id;
/* Any vendor specialization cases will need to add sub_type enum defs. */
A_UINT32 sub_type;
wmi_vdev_vendor_event_val evt;
/* NOTE:
* Future changes may increase the size of vdev_vendor_event.
* Consequently, no fields can be added here after vdev_vendor_event,
* because their offsets within wmi_vdev_vendor_event_fixed_param
* would change, causing backwards incompatibilities.
*/
} wmi_vdev_vendor_event_fixed_param;
typedef struct wmi_peer_vendor_event
{
/* type is WMI_PEER_VENDOR_EVENTID */
A_UINT32 tlv_header;
/* pdev_id for identifying the MAC. See macros starting with WMI_PDEV_ID_ for values. */
A_UINT32 pdev_id;
/* unique id identifying the VDEV, generated by the caller */
A_UINT32 vdev_id;
/* peer MAC address */
wmi_mac_addr peer_macaddr;
/* Any vendor specialization cases will need to add sub_type enum defs. */
A_UINT32 sub_type;
wmi_peer_vendor_event_val evt;
/* NOTE:
* Future changes may increase the size of peer_vendor_event.
* Consequently, no fields can be added here after peer_vendor_event,
* because their offsets within wmi_peer_vendor_event_fixed_param
* would change, causing backwards incompatibilities.
*/
} wmi_peer_vendor_event_fixed_param;
typedef struct wmi_pdev_vendor_cmd
{
/* type is WMI_PDEV_VENDOR_CMDID */
A_UINT32 tlv_header;
/* pdev_id for identifying the MAC. See macros starting with WMI_PDEV_ID_ for values. */
A_UINT32 pdev_id;
/* Any vendor specialization cases will need to add sub_type enum defs. */
A_UINT32 sub_type;
wmi_pdev_vendor_cmd_val cmd;
/* NOTE:
* Future changes may increase the size of pdev_vendor_cmd.
* Consequently, no fields can be added here after pdev_vendor_cmd,
* because their offsets within wmi_pdev_vendor_cmd_fixed_param
* would change, causing backwards incompatibilities.
*/
} wmi_pdev_vendor_cmd_fixed_param;
typedef struct wmi_vdev_vendor_cmd
{
/* type is WMI_VDEV_VENDOR_CMDID */
A_UINT32 tlv_header;
/* pdev_id for identifying the MAC. See macros starting with WMI_PDEV_ID_ for values. */
A_UINT32 pdev_id;
/* unique id identifying the VDEV, generated by the caller */
A_UINT32 vdev_id;
/* Any vendor specialization cases will need to add sub_type enum defs. */
A_UINT32 sub_type;
wmi_vdev_vendor_cmd_val cmd;
/* NOTE:
* Future changes may increase the size of vdev_vendor_cmd.
* Consequently, no fields can be added here after vdev_vendor_cmd,
* because their offsets within wmi_vdev_vendor_cmd_fixed_param
* would change, causing backwards incompatibilities.
*/
} wmi_vdev_vendor_cmd_fixed_param;
typedef struct wmi_peer_vendor_cmd
{
/* type is WMI_PEER_VENDOR_CMDID */
A_UINT32 tlv_header;
/* pdev_id for identifying the MAC. See macros starting with WMI_PDEV_ID_ for values. */
A_UINT32 pdev_id;
/* unique id identifying the VDEV, generated by the caller */
A_UINT32 vdev_id;
/* peer MAC address */
wmi_mac_addr peer_macaddr;
/* Any vendor specialization cases will need to add sub_type enum defs. */
A_UINT32 sub_type;
wmi_peer_vendor_cmd_val cmd;
/* NOTE:
* Future changes may increase the size of peer_vendor_cmd.
* Consequently, no fields can be added here after peer_vendor_cmd,
* because their offsets within wmi_peer_vendor_cmd_fixed_param
* would change, causing backwards incompatibilities.
*/
} wmi_peer_vendor_cmd_fixed_param;
/* ADD NEW DEFS HERE */

Voir le fichier

@@ -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_ 912
#define __WMI_REVISION_ 913
/** The Version Namespace should not be normally changed. Only
* host and firmware of the same WMI namespace will work