qcacld-3.0: CL 1623350 - update fw common interface files

Propagation from qcacld-2.0 to qcacld-3.0.

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
This commit is contained in:
Himanshu Agarwal
2016-09-01 18:56:42 +05:30
committed by qcabuildsw
parent 27aa9c1c73
commit 2f4f530f78
3 changed files with 39 additions and 9 deletions

View File

@@ -3886,8 +3886,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, * 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 * 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. * 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 0 contains the number of MPDUs within a single-MPDU A-MPDU.
* Element tx_mpdu_aggr_array_size-1 contains the histogram count for A-MPDUs of size >= tx_mpdu_aggr_array_size. * 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, * 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 * 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. * Contains a count of how many tx MSDUs have been acked for each MCS of each AC of each peer.
@@ -3896,7 +3898,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. * 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, * 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 * 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. * 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 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. * Element 1 contains the count of MSDUs delayed by more than 1x tx_delay_bin_size_ms but less than 2x.
@@ -3907,8 +3909,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, * 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 * 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. * 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 0 contains the number of MPDUs within a single-MPDU A-MPDU.
* Element rx_mpdu_aggr_array_size-1 contains the histogram count for A-MPDUs of size >= rx_mpdu_aggr_array_size. * 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, * 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 * 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. * Contains a count of rx MSDUs for each MCS of each AC of each peer.

View File

@@ -5169,7 +5169,11 @@ typedef struct {
* Check wmi_peer_signal_stats for each stats's meaning. * Check wmi_peer_signal_stats for each stats's meaning.
*/ */
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 per_ant_snr; /* units = dB */
A_UINT32 nf; /* units = dBm */ A_UINT32 nf; /* units = dBm */
} wmi_peer_signal_stats_thresh; } wmi_peer_signal_stats_thresh;
@@ -16743,6 +16747,14 @@ typedef enum {
WLAN_5G_CAPABILITY = 0x2, WLAN_5G_CAPABILITY = 0x2,
} WLAN_BAND_CAPABILITY; } 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_GET(flags) WMI_GET_BITS(flags, 0, 1)
#define WMI_SUPPORT_11B_SET(flags, value) WMI_SET_BITS(flags, 0, 1, value) #define WMI_SUPPORT_11B_SET(flags, value) WMI_SET_BITS(flags, 0, 1, value)
@@ -16761,6 +16773,9 @@ typedef enum {
#define WMI_SUPPORT_11AX_GET(flags) WMI_GET_BITS(flags, 5, 1) #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_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 { typedef struct {
/* /*
* TLV tag and len; tag equals * TLV tag and len; tag equals
@@ -16783,7 +16798,7 @@ typedef struct {
A_UINT32 pdev_id; A_UINT32 pdev_id;
/* phy id. Starts with 0 */ /* phy id. Starts with 0 */
A_UINT32 phy_id; A_UINT32 phy_id;
/* supported modulations */ /* supported modulations and number of MU beamformees */
union { union {
struct { struct {
A_UINT32 supports_11b:1, A_UINT32 supports_11b:1,
@@ -16791,7 +16806,12 @@ typedef struct {
supports_11a:1, supports_11a:1,
supports_11n:1, supports_11n:1,
supports_11ac: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; A_UINT32 supported_flags;
}; };
@@ -16876,6 +16896,12 @@ typedef struct {
* will be 1 WMI_MAC_PHY_CAPABILITIES * will be 1 WMI_MAC_PHY_CAPABILITIES
* TLVs * 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; } WMI_HW_MODE_CAPABILITIES;
typedef struct { typedef struct {

View File

@@ -36,7 +36,7 @@
#define __WMI_VER_MINOR_ 0 #define __WMI_VER_MINOR_ 0
/** WMI revision number has to be incremented when there is a /** WMI revision number has to be incremented when there is a
* change that may or may not break compatibility */ * 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 /** The Version Namespace should not be normally changed. Only
* host and firmware of the same WMI namespace will work * host and firmware of the same WMI namespace will work