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

Change-Id: Id670b26b2b06998d77ea3e37711571c1b88217a9
WMI: add ctlPwrTbl to PDEV_TPC_CONFIG_EVENT
CRs-Fixed: 2262693
This commit is contained in:
spuligil
2018-12-06 03:32:24 -08:00
committato da nshrivas
parent a002bc81b7
commit 2efd88df29
3 ha cambiato i file con 58 aggiunte e 5 eliminazioni

Vedi File

@@ -948,6 +948,7 @@ typedef enum {
WMITLV_TAG_STRUC_wmi_vdev_bcn_recv_stats_event_fixed_param,
WMITLV_TAG_STRUC_wmi_peer_tx_pn_request_cmd_fixed_param,
WMITLV_TAG_STRUC_wmi_peer_tx_pn_response_event_fixed_param,
WMITLV_TAG_STRUC_wmi_tlv_arrays_len_param,
} WMITLV_TAG_ID;
/*
@@ -3960,14 +3961,16 @@ WMITLV_CREATE_PARAM_STRUC(WMI_EXTSCAN_CAPABILITIES_EVENTID);
WMITLV_CREATE_PARAM_STRUC(WMI_EXTSCAN_HOTLIST_SSID_MATCH_EVENTID);
/* Update_whal_mib_stats Event */
#define WMITLV_TABLE_WMI_UPDATE_WHAL_MIB_STATS_EVENTID(id,op,buf,len) \
#define WMITLV_TABLE_WMI_UPDATE_WHAL_MIB_STATS_EVENTID(id,op,buf,len) \
WMITLV_ELEM(id, op, buf, len, WMITLV_TAG_STRUC_wmi_update_whal_mib_stats_event_fixed_param, wmi_update_whal_mib_stats_event_fixed_param, fixed_param, WMITLV_SIZE_FIX)
WMITLV_CREATE_PARAM_STRUC(WMI_UPDATE_WHAL_MIB_STATS_EVENTID);
/* PDEV TPC Config Event */
#define WMITLV_TABLE_WMI_PDEV_TPC_CONFIG_EVENTID(id,op,buf,len) \
#define WMITLV_TABLE_WMI_PDEV_TPC_CONFIG_EVENTID(id,op,buf,len) \
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_pdev_tpc_config_event_fixed_param, wmi_pdev_tpc_config_event_fixed_param, fixed_param, WMITLV_SIZE_FIX) \
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_BYTE, A_UINT8, ratesArray, WMITLV_SIZE_VAR)
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_BYTE, A_UINT8, ratesArray, WMITLV_SIZE_VAR) \
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_STRUC, wmi_tlv_arrays_len_param, ctlPwrTbl_param, WMITLV_SIZE_VAR) \
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_BYTE, A_UINT8, ctlPwrTbl_buf, WMITLV_SIZE_VAR)
WMITLV_CREATE_PARAM_STRUC(WMI_PDEV_TPC_CONFIG_EVENTID);
/* PDEV DIV RSSI Antenna index Event */

Vedi File

@@ -3191,6 +3191,43 @@ typedef struct {
*/
} wmi_tlv_buf_len_param;
/**
* TLV used for specifying the demensions of a multi-dimensional array
* that has been stored in a flat buffer
*/
typedef struct {
A_UINT32 tlv_header; /* TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_tlv_arrays_len_param */
/**
* d1_len, d2_len, d3_len, and d4_len are the lengths of each dimension
* for a multi-dimensional array.
* If the length of outer dimension is not 1, the inner dimension
* shouldn't be 1.
* If the multi-dimensional array has less than 4 dimensions, the outer
* dimensions' lengths should be 1. For example, a buf[3][4] array
* would have d1_len = 4, d2_len = 3, d3_len = 1, d4_len = 1.
* The outermost dimension of the array can be inferred from the array
* length; thus, this struct supports up to 5-D arrays. For a 5-D array,
* the outermost (5th) dimension would be
* array length / (d1_len * d2_len * d3_len * d4_len)
*
* For security (to ensure no out-of-bounds memory access),
* the receiver shall validate that the product of all dimensions
* is equal to (or less than) the array length.
*/
A_UINT32 d1_len; /* the length of 1st (innermost) dimension array */
A_UINT32 d2_len; /* the length of 2nd dimension array */
A_UINT32 d3_len; /* the length of 3rd dimension array */
A_UINT32 d4_len; /* the length of 4th dimension array */
/**
* Following this structure is the TLV multi-dimension array buffer:
* <type> buf[L1*L2*L3*L4];
* where, L1, L2, L3, and L4 are the values of
* d1_len, d2_len, d3_len and d4_len.
* To access the 4-D element a[i][j][k][l], the buf[] array would be
* indexed as buf[i*L3*L2*L1 + j*L2*L1 + k*L1 + l].
*/
} wmi_tlv_arrays_len_param;
typedef struct {
/** Len of the SSID */
A_UINT32 ssid_len;
@@ -5690,8 +5727,21 @@ typedef struct {
* See macros starting with WMI_PDEV_ID_ for values.
*/
A_UINT32 pdev_id;
/* This TLV is followed by a byte array:
/* This TLV is followed by further TLVs:
* 1. byte array:
* A_UINT8 ratesArray[];
* 2a. multi-dimensional array dimension spec:
* wmi_tlv_arrays_len_param ctlPwrTbl_param[0 or 1]
*
* 2b. ctl power table
* A_UINT8 ctlPwrTbl_buf[bf][modes][nss], i.e.
* A_UINT8 ctlPwrTbl_buf[d3_len * d2_len * d1_len]
* bf is [0 or 1] for [on or off].
* For 2G, modes is [0, 1, 2, or 3] for
* [cck, legacy, (v)ht20, or (v)ht40]
* For 5G, modes is [0, 1, 2, or 3] for
* [legacy, (v)ht20, (v)ht40, or vht80]
* nss is [0, 1, 2, or 3] for the number of streams 1~4.
*/
} wmi_pdev_tpc_config_event_fixed_param;

Vedi File

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