diff options
| author | Himanshu Agarwal <himanaga@codeaurora.org> | 2016-09-01 14:12:12 +0530 |
|---|---|---|
| committer | Anjaneedevi Kapparapu <akappa@codeaurora.org> | 2016-09-08 14:29:41 +0530 |
| commit | 074faf02ac13db9b139f5ea3efeabf14542ccb59 (patch) | |
| tree | 9cffe1c3a226679e1a254f4d127911b65384a73c | |
| parent | ab90d6218b82d3561e06f7e5e7ded5bf493dafe6 (diff) | |
qcacld-2.0: CL 1623350 - update fw common interface files
Add HW mode config type in HW mode capabilities.
Add max MU beamformee field to supported flags in
MAC_PHY_CAPABILITIES.
Change-Id: I015c31dbbff9d180c6338032ab03ec025d32ba55
CRs-fixed: 865207
| -rw-r--r-- | CORE/SERVICES/COMMON/wmi_tlv_defs.h | 14 | ||||
| -rw-r--r-- | CORE/SERVICES/COMMON/wmi_unified.h | 32 | ||||
| -rw-r--r-- | CORE/SERVICES/COMMON/wmi_version.h | 2 |
3 files changed, 39 insertions, 9 deletions
diff --git a/CORE/SERVICES/COMMON/wmi_tlv_defs.h b/CORE/SERVICES/COMMON/wmi_tlv_defs.h index 777ade40830a..97bf94ee407a 100644 --- a/CORE/SERVICES/COMMON/wmi_tlv_defs.h +++ b/CORE/SERVICES/COMMON/wmi_tlv_defs.h @@ -3884,8 +3884,10 @@ WMITLV_CREATE_PARAM_STRUC(WMI_RADIO_TX_POWER_LEVEL_STATS_EVENTID); * A_UINT32 tx_mpdu_aggr[][][]; Array size is num_peer_ac_tx_stats * WLAN_MAX_AC * tx_mpdu_aggr_array_size, * array index is (peer_index * WLAN_MAX_AC + ac_index) * tx_mpdu_aggr_array_size + A-MPDU size index * Contains a histogram of how many A-MPDUs of a given size (i.e. number of MPDUs) have been transmitted. - * Element 0 contains the count of PPDUs containing a single MPDU, element 1 counts PPDUs containing 2 MPDUs, etc. - * Element tx_mpdu_aggr_array_size-1 contains the histogram count for A-MPDUs of size >= tx_mpdu_aggr_array_size. + * Element 0 contains the number of MPDUs within a single-MPDU A-MPDU. + * Element 1 contains the number of MPDUs within a 2-MPDU A-MPDU (number of A-MPDUs x2). + * Element 2 contains the number of MPDUs within a 3-MPDU A-MPDU (number of A-MPDUs x3). + * Element tx_mpdu_aggr_array_size-1 contains the number of MPDUs within A-MPDUs with >= tx_mpdu_aggr_array_size MPDUs. * A_UINT32 tx_msdu_acked_mcs[][][]; Array size is num_peer_ac_tx_stats * WLAN_MAX_AC * tx_msdu_acked_mcs_array_size, * array index is (peer_index * WLAN_MAX_AC + ac_index) * tx_msdu_acked_mcs_array_size + MCS index * Contains a count of how many tx MSDUs have been acked for each MCS of each AC of each peer. @@ -3894,7 +3896,7 @@ WMITLV_CREATE_PARAM_STRUC(WMI_RADIO_TX_POWER_LEVEL_STATS_EVENTID); * Contains a count of how many MSDUs failed tx due to no ack for each MCS of each AC of each peer. * A_UINT32 tx_msdu_delay[][][]; Array size is num_peer_ac_tx_stats * WLAN_MAX_AC * tx_msdu_delay_array_size, * array index is (peer_index * WLAN_MAX_AC + ac_index) * tx_msdu_delay_array_size + delay index - * Contains a histogram of how many MSDUs encountered each level of delay due to retries. + * Contains a histogram of how many MSDUs encountered each level of delay due to retries or air interface contention. * The time represented by each array element (i.e. histogram bin) is specified by tx_delay_bin_size_ms. * Element 0 contains the count of MSDUs delayed by less than tx_delay_bin_size_ms. * Element 1 contains the count of MSDUs delayed by more than 1x tx_delay_bin_size_ms but less than 2x. @@ -3905,8 +3907,10 @@ WMITLV_CREATE_PARAM_STRUC(WMI_RADIO_TX_POWER_LEVEL_STATS_EVENTID); * A_UINT32 rx_mpdu_aggr[][][]; Array size is num_peer_ac_rx_stats * WLAN_MAX_AC * rx_mpdu_aggr_array_size, * array index is (peer_index * WLAN_MAX_AC + ac_index) * rx_mpdu_aggr_array_size + A-MPDU size index * Contains a histogram of how many A-MPDUs of a given size (i.e. number of MPDUs) have been received. - * Element 0 contains the count of PPDUs containing a single MPDU, element 1 counts PPDUs containing 2 MPDUs, etc. - * Element rx_mpdu_aggr_array_size-1 contains the histogram count for A-MPDUs of size >= rx_mpdu_aggr_array_size. + * Element 0 contains the number of MPDUs within a single-MPDU A-MPDU. + * Element 1 contains the number of MPDUs within a 2-MPDU A-MPDU (number of A-MPDUs x2). + * Element 2 contains the number of MPDUs within a 3-MPDU A-MPDU (number of A-MPDUs x3). + * Element rx_mpdu_aggr_array_size-1 contains the number of MPDUs within A-MPDUs with >= rx_mpdu_aggr_array_size MPDUs. * A_UINT32 rx_msdu_mcs[][][]; Array size is (num_peer_ac_rx_stats * WLAN_MAX_AC) * rx_msdu_mcs_array_size, * array index is (peer_index * WLAN_MAX_AC + ac_index) * rx_msdu_mcs_array_size + MCS index * Contains a count of rx MSDUs for each MCS of each AC of each peer. diff --git a/CORE/SERVICES/COMMON/wmi_unified.h b/CORE/SERVICES/COMMON/wmi_unified.h index 6fb3f53556af..49cca940da78 100644 --- a/CORE/SERVICES/COMMON/wmi_unified.h +++ b/CORE/SERVICES/COMMON/wmi_unified.h @@ -4911,7 +4911,11 @@ typedef struct */ typedef struct { - A_UINT32 tlv_header; /** TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_peer_signal_stats */ + /** + * TLV tag and len; tag equals + * WMITLV_TAG_STRUC_wmi_peer_signal_stats_thresh + */ + A_UINT32 tlv_header; A_UINT32 per_ant_snr; /* units = dB */ A_UINT32 nf; /* units = dBm */ } wmi_peer_signal_stats_thresh; @@ -15851,6 +15855,14 @@ typedef enum { WLAN_5G_CAPABILITY = 0x2, } WLAN_BAND_CAPABILITY; +typedef enum wmi_hw_mode_config_type { + WMI_HW_MODE_SINGLE = 0, + WMI_HW_MODE_DBS = 1, + WMI_HW_MODE_SBS_PASSIVE = 2, + WMI_HW_MODE_SBS = 3, + WMI_HW_MODE_DBS_SBS = 4, +} WMI_HW_MODE_CONFIG_TYPE; + #define WMI_SUPPORT_11B_GET(flags) WMI_GET_BITS(flags, 0, 1) #define WMI_SUPPORT_11B_SET(flags, value) WMI_SET_BITS(flags, 0, 1, value) @@ -15869,6 +15881,9 @@ typedef enum { #define WMI_SUPPORT_11AX_GET(flags) WMI_GET_BITS(flags, 5, 1) #define WMI_SUPPORT_11AX_SET(flags, value) WMI_SET_BITS(flags, 5, 1, value) +#define WMI_MAX_MUBFEE_GET(flags) WMI_GET_BITS(flags, 28, 4) +#define WMI_MAX_MUBFEE_SET(flags, value) WMI_SET_BITS(flags, 28, 4, value) + typedef struct { A_UINT32 tlv_header; /* TLV tag and len; tag equals WMITLV_TAG_STRUC_WMI_MAC_PHY_CAPABILITIES */ /* hw_mode_id - identify a particular set of HW characteristics, as specified @@ -15881,7 +15896,7 @@ typedef struct { A_UINT32 pdev_id; /* phy id. Starts with 0 */ A_UINT32 phy_id; - /* supported modulations */ + /* supported modulations and number of MU beamformees */ union { struct { A_UINT32 supports_11b:1, @@ -15889,7 +15904,12 @@ typedef struct { supports_11a:1, supports_11n:1, supports_11ac:1, - supports_11ax:1; + supports_11ax:1, + + unused:22, + + /* max MU beamformees supported per MAC */ + max_mubfee:4; }; A_UINT32 supported_flags; }; @@ -15953,6 +15973,12 @@ typedef struct { * one for each active PHY for current HW mode identified by hw_mode_id. For example for * DBS/SBS mode there will be 2 WMI_MAC_PHY_CAPABILITIES TLVs and for single MAC modes it * will be 1 WMI_MAC_PHY_CAPABILITIES TLVs */ + /** + * hw_mode_config_type + * Identify a particular type of HW mode such as SBS, DBS etc. + * Refer to WMI_HW_MODE_CONFIG_TYPE values. + */ + A_UINT32 hw_mode_config_type; } WMI_HW_MODE_CAPABILITIES; typedef struct { diff --git a/CORE/SERVICES/COMMON/wmi_version.h b/CORE/SERVICES/COMMON/wmi_version.h index 3c7e47da9bc3..207d8de258d2 100644 --- a/CORE/SERVICES/COMMON/wmi_version.h +++ b/CORE/SERVICES/COMMON/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_ 288 +#define __WMI_REVISION_ 289 /** The Version Namespace should not be normally changed. Only * host and firmware of the same WMI namespace will work |
