diff options
| author | spuligil <spuligil@codeaurora.org> | 2019-06-22 06:00:45 -0700 |
|---|---|---|
| committer | spuligil <spuligil@codeaurora.org> | 2019-06-22 06:00:45 -0700 |
| commit | ab2a29ba084b53ea6a40b6c8a833b37bde42b6fc (patch) | |
| tree | 6fdf629e10b00ebefdd526ae87e3fb6844d05b9e | |
| parent | c922ed31617fb5a710141381fa324ef2cb5af1ee (diff) | |
fw-api: CL 7445129 - update fw common interface files
WMI_TWT_BTWT: INVITE/REMOVE STA CMD/EVENT msg defs
Change-Id: Ice557940ba337eb074af56f3b4f66e7fb810d50c
CRs-Fixed: 2262693
| -rwxr-xr-x | fw/wmi_tlv_defs.h | 28 | ||||
| -rwxr-xr-x | fw/wmi_unified.h | 79 | ||||
| -rwxr-xr-x | fw/wmi_version.h | 2 |
3 files changed, 98 insertions, 11 deletions
diff --git a/fw/wmi_tlv_defs.h b/fw/wmi_tlv_defs.h index 14fbb0286c26..f81c4dad31b6 100755 --- a/fw/wmi_tlv_defs.h +++ b/fw/wmi_tlv_defs.h @@ -985,6 +985,10 @@ typedef enum { WMITLV_TAG_STRUC_wmi_pdev_bssid_disallow_list_config_param, WMITLV_TAG_STRUC_wmi_mgmt_hdr, WMITLV_TAG_STRUC_wmi_muedca_params_config_event_fixed_param, + WMITLV_TAG_STRUC_wmi_twt_btwt_invite_sta_cmd_fixed_param, + WMITLV_TAG_STRUC_wmi_twt_btwt_remove_sta_cmd_fixed_param, + WMITLV_TAG_STRUC_wmi_twt_btwt_invite_sta_complete_event_fixed_param, + WMITLV_TAG_STRUC_wmi_twt_btwt_remove_sta_complete_event_fixed_param, } WMITLV_TAG_ID; /* @@ -1384,6 +1388,8 @@ typedef enum { OP(WMI_ROAM_IDLE_CONFIG_CMDID) \ OP(WMI_IDLE_TRIGGER_MONITOR_CMDID) \ OP(WMI_PDEV_DSM_FILTER_CMDID) \ + OP(WMI_TWT_BTWT_INVITE_STA_CMDID) \ + OP(WMI_TWT_BTWT_REMOVE_STA_CMDID) \ /* add new CMD_LIST elements above this line */ @@ -1612,6 +1618,8 @@ typedef enum { OP(WMI_IFACE_COMBINATION_IND_EVENTID) \ OP(WMI_VDEV_MGMT_OFFLOAD_EVENTID) \ OP(WMI_MUEDCA_PARAMS_CONFIG_EVENTID) \ + OP(WMI_TWT_BTWT_INVITE_STA_COMPLETE_EVENTID) \ + OP(WMI_TWT_BTWT_REMOVE_STA_COMPLETE_EVENTID) \ /* add new EVT_LIST elements above this line */ @@ -3929,6 +3937,16 @@ WMITLV_CREATE_PARAM_STRUC(WMI_TWT_PAUSE_DIALOG_CMDID); WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_twt_resume_dialog_cmd_fixed_param, wmi_twt_resume_dialog_cmd_fixed_param, fixed_param, WMITLV_SIZE_FIX) WMITLV_CREATE_PARAM_STRUC(WMI_TWT_RESUME_DIALOG_CMDID); +/* B-TWT STA invitation cmd */ +#define WMITLV_TABLE_WMI_TWT_BTWT_INVITE_STA_CMDID(id,op,buf,len) \ + WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_twt_btwt_invite_sta_cmd_fixed_param, wmi_twt_btwt_invite_sta_cmd_fixed_param, fixed_param, WMITLV_SIZE_FIX) +WMITLV_CREATE_PARAM_STRUC(WMI_TWT_BTWT_INVITE_STA_CMDID); + +/* B-TWT STA removal cmd */ +#define WMITLV_TABLE_WMI_TWT_BTWT_REMOVE_STA_CMDID(id,op,buf,len) \ + WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_twt_btwt_remove_sta_cmd_fixed_param, wmi_twt_btwt_remove_sta_cmd_fixed_param, fixed_param, WMITLV_SIZE_FIX) +WMITLV_CREATE_PARAM_STRUC(WMI_TWT_BTWT_REMOVE_STA_CMDID); + /* Set peer tid configurations Cmd */ #define WMITLV_TABLE_WMI_PEER_TID_CONFIGURATIONS_CMDID(id,op,buf,len) \ WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_peer_tid_configurations_cmd_fixed_param, wmi_peer_tid_configurations_cmd_fixed_param, fixed_param, WMITLV_SIZE_FIX) @@ -5336,6 +5354,16 @@ WMITLV_CREATE_PARAM_STRUC(WMI_TWT_PAUSE_DIALOG_COMPLETE_EVENTID); WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_twt_resume_dialog_complete_event_fixed_param, wmi_twt_resume_dialog_complete_event_fixed_param, fixed_param, WMITLV_SIZE_FIX) WMITLV_CREATE_PARAM_STRUC(WMI_TWT_RESUME_DIALOG_COMPLETE_EVENTID); +/* inviting STA to B-TWT dialog complete Event */ +#define WMITLV_TABLE_WMI_TWT_BTWT_INVITE_STA_COMPLETE_EVENTID(id,op,buf,len) \ + WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_twt_btwt_invite_sta_complete_event_fixed_param, wmi_twt_btwt_invite_sta_complete_event_fixed_param, fixed_param, WMITLV_SIZE_FIX) +WMITLV_CREATE_PARAM_STRUC(WMI_TWT_BTWT_INVITE_STA_COMPLETE_EVENTID); + +/* removing STA from B-TWT dialog complete Event */ +#define WMITLV_TABLE_WMI_TWT_BTWT_REMOVE_STA_COMPLETE_EVENTID(id,op,buf,len) \ + WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_twt_btwt_remove_sta_complete_event_fixed_param, wmi_twt_btwt_remove_sta_complete_event_fixed_param, fixed_param, WMITLV_SIZE_FIX) +WMITLV_CREATE_PARAM_STRUC(WMI_TWT_BTWT_REMOVE_STA_COMPLETE_EVENTID); + /* Event to send roam scan stats */ #define WMITLV_TABLE_WMI_ROAM_SCAN_STATS_EVENTID(id,op,buf,len) \ WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_roam_scan_stats_event_fixed_param, wmi_roam_scan_stats_event_fixed_param, fixed_param, WMITLV_SIZE_FIX) \ diff --git a/fw/wmi_unified.h b/fw/wmi_unified.h index 80983cc7c888..c36c286910ae 100755 --- a/fw/wmi_unified.h +++ b/fw/wmi_unified.h @@ -1211,6 +1211,8 @@ typedef enum { WMI_TWT_DEL_DIALOG_CMDID, WMI_TWT_PAUSE_DIALOG_CMDID, WMI_TWT_RESUME_DIALOG_CMDID, + WMI_TWT_BTWT_INVITE_STA_CMDID, + WMI_TWT_BTWT_REMOVE_STA_CMDID, /** WMI commands related to motion detection **/ WMI_MOTION_DET_CONFIG_PARAM_CMDID = WMI_CMD_GRP_START_ID(WMI_GRP_MOTION_DET), @@ -1822,6 +1824,8 @@ typedef enum { WMI_TWT_DEL_DIALOG_COMPLETE_EVENTID, WMI_TWT_PAUSE_DIALOG_COMPLETE_EVENTID, WMI_TWT_RESUME_DIALOG_COMPLETE_EVENTID, + WMI_TWT_BTWT_INVITE_STA_COMPLETE_EVENTID, + WMI_TWT_BTWT_REMOVE_STA_COMPLETE_EVENTID, /** Events in Prototyping phase */ WMI_NDI_CAP_RSP_EVENTID = WMI_EVT_GRP_START_ID(WMI_GRP_PROTOTYPE), @@ -8373,12 +8377,6 @@ typedef struct { /* TWT required */ #define WMI_HEOPS_TWT_REQUIRED_GET_D2(he_ops) WMI_GET_BITS(he_ops, 9, 1) #define WMI_HEOPS_TWT_REQUIRED_SET_D2(he_ops, value) WMI_SET_BITS(he_ops, 9, 1, value) -/* DEPRECATED, use WMI_HEOPS_TWT_REQUIRED_GET instead */ -#define WMI_HEOPS_TWT_GET_D2(he_ops) \ - WMI_HEOPS_TWT_REQUIRED_GET_D2(he_ops) -/* DEPRECATED, use WMI_HEOPS_TWT_REQUIRED_SET instead */ -#define WMI_HEOPS_TWT_SET_D2(he_ops, value) \ - WMI_HEOPS_TWT_REQUIRED_SET_D2(he_ops, value) /* RTS threshold in units of 32 us,0 - always use RTS 1023 - this is disabled */ #define WMI_HEOPS_RTSTHLD_GET_D2(he_ops) WMI_GET_BITS(he_ops, 10, 10) @@ -24082,6 +24080,8 @@ static INLINE A_UINT8 *wmi_id_to_name(A_UINT32 wmi_command) WMI_RETURN_STRING(WMI_ROAM_IDLE_CONFIG_CMDID); WMI_RETURN_STRING(WMI_IDLE_TRIGGER_MONITOR_CMDID); WMI_RETURN_STRING(WMI_PDEV_DSM_FILTER_CMDID); + WMI_RETURN_STRING(WMI_TWT_BTWT_INVITE_STA_CMDID); + WMI_RETURN_STRING(WMI_TWT_BTWT_REMOVE_STA_CMDID); } return "Invalid WMI cmd"; @@ -24820,6 +24820,10 @@ typedef enum _WMI_TWT_COMMAND_T { #define TWT_FLAGS_GET_PROTECTION(flag) WMI_GET_BITS(flag, 11, 1) #define TWT_FLAGS_SET_PROTECTION(flag, val) WMI_SET_BITS(flag, 11, 1, val) +/* B-TWT ID 0: 0 means non-0 B-TWT ID or I-TWT, 1 means B-TWT ID 0 */ +#define TWT_FLAGS_GET_BTWT_ID0(flag) WMI_GET_BITS(flag, 12, 1) +#define TWT_FLAGS_SET_BTWT_ID0(flag, val) WMI_SET_BITS(flag, 12, 1, val) + typedef struct { A_UINT32 tlv_header; /* TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_twt_add_dialog_cmd_fixed_param */ A_UINT32 vdev_id; /* VDEV identifier */ @@ -24847,6 +24851,11 @@ typedef struct { * Refer to 11ax spec session "9.4.2.199 TWT element" for more info. */ A_UINT32 b_twt_persistence; + + /* Broadcast TWT(B-TWT) Recommendation, refer to section + * "9.4.2.199 TWT element" of latest 11ax draft + */ + A_UINT32 b_twt_recommendation; } wmi_twt_add_dialog_cmd_fixed_param; /* status code of adding TWT dialog */ @@ -24958,6 +24967,60 @@ typedef struct { A_UINT32 status; /* refer to WMI_RESUME_TWT_STATUS_T */ } wmi_twt_resume_dialog_complete_event_fixed_param; +typedef struct { + A_UINT32 tlv_header; /* TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_twt_btwt_invite_sta_cmd_fixed_param */ + A_UINT32 vdev_id; /* VDEV identifier */ + wmi_mac_addr peer_macaddr; /* peer MAC address */ + A_UINT32 dialog_id; /* TWT dialog ID */ +} wmi_twt_btwt_invite_sta_cmd_fixed_param; + +/* status code of inviting STA to B-TWT dialog */ +typedef enum _WMI_TWT_BTWT_INVITE_STA_STATUS_T { + WMI_TWT_BTWT_INVITE_STA_STATUS_OK, /* inviting STA to B-TWT successfully completed */ + WMI_TWT_BTWT_INVITE_STA_STATUS_DIALOG_ID_NOT_EXIST, /* TWT dialog ID not exists */ + WMI_TWT_BTWT_INVITE_STA_STATUS_INVALID_PARAM, /* invalid parameters */ + WMI_TWT_BTWT_INVITE_STA_STATUS_DIALOG_ID_BUSY, /* FW is in the process of handling this dialog */ + WMI_TWT_BTWT_INVITE_STA_STATUS_ALREADY_JOINED, /* peer STA already joined the session */ + WMI_TWT_BTWT_INVITE_STA_STATUS_NO_RESOURCE, /* FW resource exhausted */ + WMI_TWT_BTWT_INVITE_STA_STATUS_NO_ACK, /* peer STA did not ACK the request/response frame */ + WMI_TWT_BTWT_INVITE_STA_STATUS_UNKNOWN_ERROR, /* failed with an unknown reason */ +} WMI_TWT_BTWT_INVITE_STA_STATUS_T; + +typedef struct { + A_UINT32 tlv_header; /* TLV tag and len; tag equals wmi_twt_btwt_invite_sta_complete_event_fixed_param */ + A_UINT32 vdev_id; /* VDEV identifier */ + wmi_mac_addr peer_macaddr; /* peer MAC address */ + A_UINT32 dialog_id; /* TWT dialog ID */ + A_UINT32 status; /* refer to WMI_TWT_BTWT_INVITE_STA_STATUS_T */ +} wmi_twt_btwt_invite_sta_complete_event_fixed_param; + +typedef struct { + A_UINT32 tlv_header; /* TLV tag and len; tag equals wmi_twt_btwt_remove_sta_cmd_fixed_param */ + A_UINT32 vdev_id; /* VDEV identifier */ + wmi_mac_addr peer_macaddr; /* peer MAC address */ + A_UINT32 dialog_id; /* TWT dialog ID */ +} wmi_twt_btwt_remove_sta_cmd_fixed_param; + +/* status code of removing STA from B-TWT dialog */ +typedef enum _WMI_TWT_BTWT_REMOVE_STA_STATUS_T { + WMI_TWT_BTWT_REMOVE_STA_STATUS_OK, /* removing STA from B-TWT successfully completed */ + WMI_TWT_BTWT_REMOVE_STA_STATUS_DIALOG_ID_NOT_EXIST, /* TWT dialog ID not exists */ + WMI_TWT_BTWT_REMOVE_STA_STATUS_INVALID_PARAM, /* invalid parameters */ + WMI_TWT_BTWT_REMOVE_STA_STATUS_DIALOG_ID_BUSY, /* FW is in the process of handling this dialog */ + WMI_TWT_BTWT_REMOVE_STA_STATUS_NOT_JOINED, /* peer STA not joined yet */ + WMI_TWT_BTWT_REMOVE_STA_STATUS_NO_RESOURCE, /* FW resource exhausted */ + WMI_TWT_BTWT_REMOVE_STA_STATUS_NO_ACK, /* peer STA did not ACK the request/response frame */ + WMI_TWT_BTWT_REMOVE_STA_STATUS_UNKNOWN_ERROR, /* failed with an unknown reason */ +} WMI_TWT_BTWT_REMOVE_STA_STATUS_T; + +typedef struct { + A_UINT32 tlv_header; /* TLV tag and len; tag equals wmi_twt_btwt_remove_sta_complete_event_fixed_param */ + A_UINT32 vdev_id; /* VDEV identifier */ + wmi_mac_addr peer_macaddr; /* peer MAC address */ + A_UINT32 dialog_id; /* TWT dialog ID */ + A_UINT32 status; /* refer to WMI_TWT_BTWT_REMOVE_STA_STATUS_T */ +} wmi_twt_btwt_remove_sta_complete_event_fixed_param; + typedef enum { WMI_DMA_RING_CONFIG_MODULE_SPECTRAL, WMI_DMA_RING_CONFIG_MODULE_RTT, @@ -26328,8 +26391,6 @@ typedef struct { #define WMI_HEOPS_DEFPE_SET WMI_HEOPS_DEFPE_SET_D3 #define WMI_HEOPS_TWT_REQUIRED_GET WMI_HEOPS_TWT_REQUIRED_GET_D3 #define WMI_HEOPS_TWT_REQUIRED_SET WMI_HEOPS_TWT_REQUIRED_SET_D3 - #define WMI_HEOPS_TWT_GET WMI_HEOPS_TWT_REQUIRED_GET_D3 /* DEPRECATED, use WMI_HEOPS_TWT_REQUIRED_GET */ - #define WMI_HEOPS_TWT_SET WMI_HEOPS_TWT_REQUIRED_SET_D3 /* DEPRECATED, use WMI_HEOPS_TWT_REQUIRED_SET */ #define WMI_HEOPS_RTSTHLD_GET WMI_HEOPS_RTSTHLD_GET_D3 #define WMI_HEOPS_RTSTHLD_SET WMI_HEOPS_RTSTHLD_SET_D3 #define WMI_HEOPS_PARTBSSCOLOR_GET WMI_HEOPS_PARTBSSCOLOR_GET_D3 @@ -26550,8 +26611,6 @@ typedef struct { #define WMI_HEOPS_DEFPE_SET WMI_HEOPS_DEFPE_SET_D2 #define WMI_HEOPS_TWT_REQUIRED_GET WMI_HEOPS_TWT_REQUIRED_GET_D2 #define WMI_HEOPS_TWT_REQUIRED_SET WMI_HEOPS_TWT_REQUIRED_SET_D2 - #define WMI_HEOPS_TWT_GET WMI_HEOPS_TWT_GET_D2 /* Depricated */ - #define WMI_HEOPS_TWT_SET WMI_HEOPS_TWT_SET_D2 /* Depricated */ #define WMI_HEOPS_RTSTHLD_GET WMI_HEOPS_RTSTHLD_GET_D2 #define WMI_HEOPS_RTSTHLD_SET WMI_HEOPS_RTSTHLD_SET_D2 #define WMI_HEOPS_PARTBSSCOLOR_GET WMI_HEOPS_PARTBSSCOLOR_GET_D2 diff --git a/fw/wmi_version.h b/fw/wmi_version.h index 83d19d8db03e..1e834bb6538c 100755 --- a/fw/wmi_version.h +++ b/fw/wmi_version.h @@ -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_ 682 +#define __WMI_REVISION_ 683 /** The Version Namespace should not be normally changed. Only * host and firmware of the same WMI namespace will work |
