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

WMI: add disallow_mode_param TLV in MLO_LINK_SET_ACTIVE_CMD msg
Change-Id: I30f0f806c0ebb9ddfef67ba0bcc5692966c0f860
CRs-Fixed: 2262693
This commit is contained in:
spuligil
2023-11-09 18:03:55 -08:00
committed by Ravindra Konda
parent 162905ef83
commit d8f38efca5
3 changed files with 78 additions and 2 deletions

View File

@@ -1418,6 +1418,7 @@ typedef enum {
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_STRUC_wmi_coex_multiple_config_cmd_fixed_param,
WMITLV_TAG_STRUC_wmi_disallowed_mlo_mode_bitmap_param,
} WMITLV_TAG_ID;
/*
* IMPORTANT: Please add _ALL_ WMI Commands Here.
@@ -5194,7 +5195,8 @@ 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_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_UINT32, A_UINT32, vdev_id_bitmap2, WMITLV_SIZE_VAR) \
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_UINT32, A_UINT32, ieee_link_id_bitmap, WMITLV_SIZE_VAR) \
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_UINT32, A_UINT32, ieee_link_id_bitmap2, WMITLV_SIZE_VAR)
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_UINT32, A_UINT32, ieee_link_id_bitmap2, WMITLV_SIZE_VAR) \
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_STRUC, wmi_disallowed_mlo_mode_bitmap_param, disallow_mode_param, WMITLV_SIZE_VAR)
WMITLV_CREATE_PARAM_STRUC(WMI_MLO_LINK_SET_ACTIVE_CMDID);
/* Request DPD Status */

View File

@@ -44671,6 +44671,7 @@ typedef enum {
WMI_MLO_LINK_FORCE_INACTIVE_LINK_NUM = 4, /* Force inactive a number of links, firmware to decide which links to inactive */
WMI_MLO_LINK_NO_FORCE = 5, /* Cancel the force operation of specific links, allow firmware to decide */
WMI_MLO_LINK_FORCE_ACTIVE_INACTIVE = 6, /* combination of force specific links active & force specific links inactive */
WMI_MLO_LINK_NON_FORCE_UPDATE = 7, /* Used when host wants to update other fields like disallow_mlo_mode_bmap */
} WMI_MLO_LINK_FORCE_MODE;
typedef enum {
@@ -44764,6 +44765,8 @@ typedef struct wmi_mlo_link_set_active_cmd
* For force mode WMI_MLO_LINK_FORCE_ACTIVE_INACTIVE ieee_link_id_bitmap2[]
* carry the inactive linkid bitmap.
* In other cases the length of the array should be 0.
*---
* wmi_disallowed_mlo_mode_bitmap_param_t disallow_mlo_mode_bmap[];
*/
} wmi_mlo_link_set_active_cmd_fixed_param;
@@ -44785,6 +44788,77 @@ typedef struct wmi_mlo_set_active_link_number_param
} wmi_mlo_set_active_link_number_param;
#define WMI_MLO_MODE_MLMR 0x1;
#define WMI_MLO_MODE_EMLSR 0x2;
#define WMI_MLO_IEEE_LINK_ID_COMB_GET_LINK_ID1(ieee_link_id_comb) WMI_GET_BITS(ieee_link_id_comb, 0, 8)
#define WMI_MLO_IEEE_LINK_ID_COMB_SET_LINK_ID1(ieee_link_id_comb, value) WMI_SET_BITS(ieee_link_id_comb, 0, 8, value)
#define WMI_MLO_IEEE_LINK_ID_COMB_GET_LINK_ID2(ieee_link_id_comb) WMI_GET_BITS(ieee_link_id_comb, 8, 8)
#define WMI_MLO_IEEE_LINK_ID_COMB_SET_LINK_ID2(ieee_link_id_comb, value) WMI_SET_BITS(ieee_link_id_comb, 8, 8, value)
#define WMI_MLO_IEEE_LINK_ID_COMB_GET_LINK_ID3(ieee_link_id_comb) WMI_GET_BITS(ieee_link_id_comb, 16, 8)
#define WMI_MLO_IEEE_LINK_ID_COMB_SET_LINK_ID3(ieee_link_id_comb, value) WMI_SET_BITS(ieee_link_id_comb, 16, 8, value)
#define WMI_MLO_IEEE_LINK_ID_COMB_GET_LINK_ID4(ieee_link_id_comb) WMI_GET_BITS(ieee_link_id_comb, 24, 8)
#define WMI_MLO_IEEE_LINK_ID_COMB_SET_LINK_ID4(ieee_link_id_comb, value) WMI_SET_BITS(ieee_link_id_comb, 24, 8, value)
typedef struct wmi_disallowed_mlo_mode_bitmap_param
{
/** TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_disallowed_mlo_mode_bitmap_param */
A_UINT32 tlv_header;
/** disallowed_mode_bitmap:
* Bitmap of MLO Modes like MLMR, eMLSR which are not allowed.
* Refer to WMI_MLO_MODE_*
* disallowed_mode_bitmap Meaning
* ====================== =================
* 0x0 No restriction
* 0x1 MLMR is not allowed
* 0x2 EMLSR is not allowed
* 0x3 MLMR and EMLSR are not allowed
*/
A_UINT32 disallowed_mode_bitmap;
/** ieee_link_id_comb:
* Give combination of IEEE link IDs for which above disallowed_mode_bitmap
* is applicable.
* Each 8-bits in ieee_link_id_comb represents one link ID.
* Use WMI_MLO_IEEE_LINK_ID_COMB_GET_LINK_ID* and _SET_LINK_ID* to get/set
* link IDs in this field.
*/
A_UINT32 ieee_link_id_comb;
/** Example:
* Say there are 3 MLO links with ieee link IDs as 1,2 and 32.
* Say host wants to disallow MLMR between links with IDs 1 and 2,
* disallow eMLSR between links with IDs 1 and 32,
* disallow MLMR and eMLSR for links with IDs 2 and 32.
* There will be 3 TLVs of type wmi_disallowed_mlo_mode_bitmap_param
* like below.
*
* wmi_disallowed_mlo_mode_bitmap_param[0]:
* disallowed_mode_bitmap = 0x1,
* ieee_link_id_comb = 0x00000201
* WMI_MLO_IEEE_LINK_ID_COMB_SET_LINK_ID1(ieee_link_id_comb, 0x1)
* WMI_MLO_IEEE_LINK_ID_COMB_SET_LINK_ID2(ieee_link_id_comb, 0x2)
*
* wmi_disallowed_mlo_mode_bitmap_param[1]
* disallowed_mode_bitmap = 0x2,
* ieee_link_id_comb = 0x00002001
* WMI_MLO_IEEE_LINK_ID_COMB_SET_LINK_ID1(ieee_link_id_comb, 0x1)
* WMI_MLO_IEEE_LINK_ID_COMB_SET_LINK_ID2(ieee_link_id_comb, 0x20)
*
* wmi_disallowed_mlo_mode_bitmap_param[2]
* disallowed_mode_bitmap = 0x3,
* ieee_link_id_comb = 0x00002002
* WMI_MLO_IEEE_LINK_ID_COMB_SET_LINK_ID1(ieee_link_id_comb, 0x2)
* WMI_MLO_IEEE_LINK_ID_COMB_SET_LINK_ID2(ieee_link_id_comb, 0x20)
*/
} wmi_disallowed_mlo_mode_bitmap_param;
typedef enum {
WMI_MLO_LINK_SET_ACTIVE_STATUS_SUCCESS = 0,
WMI_MLO_LINK_SET_ACTIVE_STATUS_HOST_REJECT = 1,

View File

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