fw-api: Add new hardware header files napier and hawkeye
Add new lithium hardware header files. Following files are being added: qca6290/v1/rx_ppdu_end_user_stats.h qca6290/v1/rx_ppdu_end_user_stats_ext.h qca6290/v1/rx_ppdu_start.h qca6290/v1/rx_ppdu_start_user_info.h hw/qca6290/v1/receive_user_info.h hw/qca6290/v1/rx_rxpcu_classification_overview.h Change-Id: I7f2446f15c87c48e24774fa1ddd4a624fc832e33 CRs-Fixed: 2016192
这个提交包含在:
426
hw/qca6290/v1/receive_user_info.h
普通文件
426
hw/qca6290/v1/receive_user_info.h
普通文件
@@ -0,0 +1,426 @@
|
||||
/*
|
||||
* Copyright (c) 2017 The Linux Foundation. All rights reserved.
|
||||
*
|
||||
* Permission to use, copy, modify, and/or distribute this software for
|
||||
* any purpose with or without fee is hereby granted, provided that the
|
||||
* above copyright notice and this permission notice appear in all
|
||||
* copies.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL
|
||||
* WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED
|
||||
* WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE
|
||||
* AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
|
||||
* DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR
|
||||
* PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
|
||||
* TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
#ifndef _RECEIVE_USER_INFO_H_
|
||||
#define _RECEIVE_USER_INFO_H_
|
||||
#if !defined(__ASSEMBLER__)
|
||||
#endif
|
||||
|
||||
|
||||
// ################ START SUMMARY #################
|
||||
//
|
||||
// Dword Fields
|
||||
// 0 phy_ppdu_id[15:0], user_rssi[23:16], pkt_type[27:24], stbc[28], sgi[30:29], reserved_0[31]
|
||||
// 1 rate_mcs[3:0], reception_type[5:4], receive_bandwidth[7:6], mimo_ss_bitmap[15:8], user_ru_allocation[23:16], nss[26:24], reserved_1b[31:27]
|
||||
//
|
||||
// ################ END SUMMARY #################
|
||||
|
||||
#define NUM_OF_DWORDS_RECEIVE_USER_INFO 2
|
||||
|
||||
struct receive_user_info {
|
||||
uint32_t phy_ppdu_id : 16, //[15:0]
|
||||
user_rssi : 8, //[23:16]
|
||||
pkt_type : 4, //[27:24]
|
||||
stbc : 1, //[28]
|
||||
sgi : 2, //[30:29]
|
||||
reserved_0 : 1; //[31]
|
||||
uint32_t rate_mcs : 4, //[3:0]
|
||||
reception_type : 2, //[5:4]
|
||||
receive_bandwidth : 2, //[7:6]
|
||||
mimo_ss_bitmap : 8, //[15:8]
|
||||
user_ru_allocation : 8, //[23:16]
|
||||
nss : 3, //[26:24]
|
||||
reserved_1b : 5; //[31:27]
|
||||
};
|
||||
|
||||
/*
|
||||
|
||||
phy_ppdu_id
|
||||
|
||||
A ppdu counter value that PHY increments for every PPDU
|
||||
received. The counter value wraps around
|
||||
|
||||
<legal all>
|
||||
|
||||
user_rssi
|
||||
|
||||
RSSI for this user
|
||||
|
||||
Frequency domain RSSI measurement for this user. Based
|
||||
on the channel estimate.
|
||||
|
||||
|
||||
|
||||
If PHY implementation runs into difficulties, the backup
|
||||
is to reuse the previously notified RSSI values.
|
||||
|
||||
TODO PHY: request to update the text here based on the
|
||||
latest design insights
|
||||
|
||||
|
||||
|
||||
<legal all>
|
||||
|
||||
pkt_type
|
||||
|
||||
Packet type:
|
||||
|
||||
|
||||
|
||||
<enum 0 dot11a>802.11a PPDU type
|
||||
|
||||
<enum 1 dot11b>802.11b PPDU type
|
||||
|
||||
<enum 2 dot11n_mm>802.11n Mixed Mode PPDU type
|
||||
|
||||
<enum 3 dot11ac>802.11ac PPDU type
|
||||
|
||||
<enum 4 dot11ax>802.11ax PPDU type
|
||||
|
||||
stbc
|
||||
|
||||
When set, use STBC transmission rates
|
||||
|
||||
sgi
|
||||
|
||||
Field only valid when pkt type is HT, VHT or HE.
|
||||
|
||||
|
||||
|
||||
<enum 0 gi_0_8_us > Legacy normal GI
|
||||
|
||||
<enum 1 gi_0_4_us > Legacy short GI
|
||||
|
||||
<enum 2 gi_1_6_us > HE related GI
|
||||
|
||||
<enum 3 gi_3_2_us > HE related GI
|
||||
|
||||
<legal 0 - 3>
|
||||
|
||||
reserved_0
|
||||
|
||||
<legal 0>
|
||||
|
||||
rate_mcs
|
||||
|
||||
For details, refer to MCS_TYPE description
|
||||
|
||||
<legal all>
|
||||
|
||||
reception_type
|
||||
|
||||
Indicates what type of reception this is.
|
||||
|
||||
<enum 0 reception_type_SU >
|
||||
|
||||
<enum 1 reception_type_MU_MIMO >
|
||||
|
||||
<enum 2 reception_type_MU_OFDMA >
|
||||
|
||||
<enum 3 reception_type_MU_OFDMA_MIMO >
|
||||
|
||||
<legal all>
|
||||
|
||||
receive_bandwidth
|
||||
|
||||
Full receive Bandwidth
|
||||
|
||||
|
||||
|
||||
<enum 0 full_rx_bw_20_mhz>
|
||||
|
||||
<enum 1 full_rx_bw_40_mhz>
|
||||
|
||||
<enum 2 full_rx_bw_80_mhz>
|
||||
|
||||
<enum 3 full_rx_bw_160_mhz>
|
||||
|
||||
|
||||
|
||||
<legal 0-3>
|
||||
|
||||
mimo_ss_bitmap
|
||||
|
||||
Field only valid in case of MIMO type reception
|
||||
|
||||
|
||||
|
||||
Bitmap, with each bit indicating if the related spatial
|
||||
stream is used for this STA
|
||||
|
||||
LSB related to SS 0
|
||||
|
||||
|
||||
|
||||
0: spatial stream not used for this reception
|
||||
|
||||
1: spatial stream used for this reception
|
||||
|
||||
|
||||
|
||||
<legal all>
|
||||
|
||||
user_ru_allocation
|
||||
|
||||
Field only valid in case of OFDMA uplink type reception
|
||||
|
||||
|
||||
|
||||
Indicates the RU number for this user
|
||||
|
||||
<legal 0-73>
|
||||
|
||||
nss
|
||||
|
||||
Number of Spatial Streams occupied by the User
|
||||
|
||||
<enum 0 1_spatial_stream>Single spatial stream
|
||||
|
||||
<enum 1 2_spatial_streams>2 spatial streams
|
||||
|
||||
<enum 2 3_spatial_streams>3 spatial streams
|
||||
|
||||
<enum 3 4_spatial_streams>4 spatial streams
|
||||
|
||||
<enum 4 5_spatial_streams>5 spatial streams
|
||||
|
||||
<enum 5 6_spatial_streams>6 spatial streams
|
||||
|
||||
<enum 6 7_spatial_streams>7 spatial streams
|
||||
|
||||
<enum 7 8_spatial_streams>8 spatial streams
|
||||
|
||||
reserved_1b
|
||||
|
||||
<legal 0>
|
||||
*/
|
||||
|
||||
|
||||
/* Description RECEIVE_USER_INFO_0_PHY_PPDU_ID
|
||||
|
||||
A ppdu counter value that PHY increments for every PPDU
|
||||
received. The counter value wraps around
|
||||
|
||||
<legal all>
|
||||
*/
|
||||
#define RECEIVE_USER_INFO_0_PHY_PPDU_ID_OFFSET 0x00000000
|
||||
#define RECEIVE_USER_INFO_0_PHY_PPDU_ID_LSB 0
|
||||
#define RECEIVE_USER_INFO_0_PHY_PPDU_ID_MASK 0x0000ffff
|
||||
|
||||
/* Description RECEIVE_USER_INFO_0_USER_RSSI
|
||||
|
||||
RSSI for this user
|
||||
|
||||
Frequency domain RSSI measurement for this user. Based
|
||||
on the channel estimate.
|
||||
|
||||
|
||||
|
||||
If PHY implementation runs into difficulties, the backup
|
||||
is to reuse the previously notified RSSI values.
|
||||
|
||||
TODO PHY: request to update the text here based on the
|
||||
latest design insights
|
||||
|
||||
|
||||
|
||||
<legal all>
|
||||
*/
|
||||
#define RECEIVE_USER_INFO_0_USER_RSSI_OFFSET 0x00000000
|
||||
#define RECEIVE_USER_INFO_0_USER_RSSI_LSB 16
|
||||
#define RECEIVE_USER_INFO_0_USER_RSSI_MASK 0x00ff0000
|
||||
|
||||
/* Description RECEIVE_USER_INFO_0_PKT_TYPE
|
||||
|
||||
Packet type:
|
||||
|
||||
|
||||
|
||||
<enum 0 dot11a>802.11a PPDU type
|
||||
|
||||
<enum 1 dot11b>802.11b PPDU type
|
||||
|
||||
<enum 2 dot11n_mm>802.11n Mixed Mode PPDU type
|
||||
|
||||
<enum 3 dot11ac>802.11ac PPDU type
|
||||
|
||||
<enum 4 dot11ax>802.11ax PPDU type
|
||||
*/
|
||||
#define RECEIVE_USER_INFO_0_PKT_TYPE_OFFSET 0x00000000
|
||||
#define RECEIVE_USER_INFO_0_PKT_TYPE_LSB 24
|
||||
#define RECEIVE_USER_INFO_0_PKT_TYPE_MASK 0x0f000000
|
||||
|
||||
/* Description RECEIVE_USER_INFO_0_STBC
|
||||
|
||||
When set, use STBC transmission rates
|
||||
*/
|
||||
#define RECEIVE_USER_INFO_0_STBC_OFFSET 0x00000000
|
||||
#define RECEIVE_USER_INFO_0_STBC_LSB 28
|
||||
#define RECEIVE_USER_INFO_0_STBC_MASK 0x10000000
|
||||
|
||||
/* Description RECEIVE_USER_INFO_0_SGI
|
||||
|
||||
Field only valid when pkt type is HT, VHT or HE.
|
||||
|
||||
|
||||
|
||||
<enum 0 gi_0_8_us > Legacy normal GI
|
||||
|
||||
<enum 1 gi_0_4_us > Legacy short GI
|
||||
|
||||
<enum 2 gi_1_6_us > HE related GI
|
||||
|
||||
<enum 3 gi_3_2_us > HE related GI
|
||||
|
||||
<legal 0 - 3>
|
||||
*/
|
||||
#define RECEIVE_USER_INFO_0_SGI_OFFSET 0x00000000
|
||||
#define RECEIVE_USER_INFO_0_SGI_LSB 29
|
||||
#define RECEIVE_USER_INFO_0_SGI_MASK 0x60000000
|
||||
|
||||
/* Description RECEIVE_USER_INFO_0_RESERVED_0
|
||||
|
||||
<legal 0>
|
||||
*/
|
||||
#define RECEIVE_USER_INFO_0_RESERVED_0_OFFSET 0x00000000
|
||||
#define RECEIVE_USER_INFO_0_RESERVED_0_LSB 31
|
||||
#define RECEIVE_USER_INFO_0_RESERVED_0_MASK 0x80000000
|
||||
|
||||
/* Description RECEIVE_USER_INFO_1_RATE_MCS
|
||||
|
||||
For details, refer to MCS_TYPE description
|
||||
|
||||
<legal all>
|
||||
*/
|
||||
#define RECEIVE_USER_INFO_1_RATE_MCS_OFFSET 0x00000004
|
||||
#define RECEIVE_USER_INFO_1_RATE_MCS_LSB 0
|
||||
#define RECEIVE_USER_INFO_1_RATE_MCS_MASK 0x0000000f
|
||||
|
||||
/* Description RECEIVE_USER_INFO_1_RECEPTION_TYPE
|
||||
|
||||
Indicates what type of reception this is.
|
||||
|
||||
<enum 0 reception_type_SU >
|
||||
|
||||
<enum 1 reception_type_MU_MIMO >
|
||||
|
||||
<enum 2 reception_type_MU_OFDMA >
|
||||
|
||||
<enum 3 reception_type_MU_OFDMA_MIMO >
|
||||
|
||||
<legal all>
|
||||
*/
|
||||
#define RECEIVE_USER_INFO_1_RECEPTION_TYPE_OFFSET 0x00000004
|
||||
#define RECEIVE_USER_INFO_1_RECEPTION_TYPE_LSB 4
|
||||
#define RECEIVE_USER_INFO_1_RECEPTION_TYPE_MASK 0x00000030
|
||||
|
||||
/* Description RECEIVE_USER_INFO_1_RECEIVE_BANDWIDTH
|
||||
|
||||
Full receive Bandwidth
|
||||
|
||||
|
||||
|
||||
<enum 0 full_rx_bw_20_mhz>
|
||||
|
||||
<enum 1 full_rx_bw_40_mhz>
|
||||
|
||||
<enum 2 full_rx_bw_80_mhz>
|
||||
|
||||
<enum 3 full_rx_bw_160_mhz>
|
||||
|
||||
|
||||
|
||||
<legal 0-3>
|
||||
*/
|
||||
#define RECEIVE_USER_INFO_1_RECEIVE_BANDWIDTH_OFFSET 0x00000004
|
||||
#define RECEIVE_USER_INFO_1_RECEIVE_BANDWIDTH_LSB 6
|
||||
#define RECEIVE_USER_INFO_1_RECEIVE_BANDWIDTH_MASK 0x000000c0
|
||||
|
||||
/* Description RECEIVE_USER_INFO_1_MIMO_SS_BITMAP
|
||||
|
||||
Field only valid in case of MIMO type reception
|
||||
|
||||
|
||||
|
||||
Bitmap, with each bit indicating if the related spatial
|
||||
stream is used for this STA
|
||||
|
||||
LSB related to SS 0
|
||||
|
||||
|
||||
|
||||
0: spatial stream not used for this reception
|
||||
|
||||
1: spatial stream used for this reception
|
||||
|
||||
|
||||
|
||||
<legal all>
|
||||
*/
|
||||
#define RECEIVE_USER_INFO_1_MIMO_SS_BITMAP_OFFSET 0x00000004
|
||||
#define RECEIVE_USER_INFO_1_MIMO_SS_BITMAP_LSB 8
|
||||
#define RECEIVE_USER_INFO_1_MIMO_SS_BITMAP_MASK 0x0000ff00
|
||||
|
||||
/* Description RECEIVE_USER_INFO_1_USER_RU_ALLOCATION
|
||||
|
||||
Field only valid in case of OFDMA uplink type reception
|
||||
|
||||
|
||||
|
||||
Indicates the RU number for this user
|
||||
|
||||
<legal 0-73>
|
||||
*/
|
||||
#define RECEIVE_USER_INFO_1_USER_RU_ALLOCATION_OFFSET 0x00000004
|
||||
#define RECEIVE_USER_INFO_1_USER_RU_ALLOCATION_LSB 16
|
||||
#define RECEIVE_USER_INFO_1_USER_RU_ALLOCATION_MASK 0x00ff0000
|
||||
|
||||
/* Description RECEIVE_USER_INFO_1_NSS
|
||||
|
||||
Number of Spatial Streams occupied by the User
|
||||
|
||||
<enum 0 1_spatial_stream>Single spatial stream
|
||||
|
||||
<enum 1 2_spatial_streams>2 spatial streams
|
||||
|
||||
<enum 2 3_spatial_streams>3 spatial streams
|
||||
|
||||
<enum 3 4_spatial_streams>4 spatial streams
|
||||
|
||||
<enum 4 5_spatial_streams>5 spatial streams
|
||||
|
||||
<enum 5 6_spatial_streams>6 spatial streams
|
||||
|
||||
<enum 6 7_spatial_streams>7 spatial streams
|
||||
|
||||
<enum 7 8_spatial_streams>8 spatial streams
|
||||
*/
|
||||
#define RECEIVE_USER_INFO_1_NSS_OFFSET 0x00000004
|
||||
#define RECEIVE_USER_INFO_1_NSS_LSB 24
|
||||
#define RECEIVE_USER_INFO_1_NSS_MASK 0x07000000
|
||||
|
||||
/* Description RECEIVE_USER_INFO_1_RESERVED_1B
|
||||
|
||||
<legal 0>
|
||||
*/
|
||||
#define RECEIVE_USER_INFO_1_RESERVED_1B_OFFSET 0x00000004
|
||||
#define RECEIVE_USER_INFO_1_RESERVED_1B_LSB 27
|
||||
#define RECEIVE_USER_INFO_1_RESERVED_1B_MASK 0xf8000000
|
||||
|
||||
|
||||
#endif // _RECEIVE_USER_INFO_H_
|
1574
hw/qca6290/v1/rx_ppdu_end_user_stats.h
普通文件
1574
hw/qca6290/v1/rx_ppdu_end_user_stats.h
普通文件
文件差异内容过多而无法显示
加载差异
@@ -0,0 +1,220 @@
|
||||
/*
|
||||
* Copyright (c) 2017 The Linux Foundation. All rights reserved.
|
||||
*
|
||||
* Permission to use, copy, modify, and/or distribute this software for
|
||||
* any purpose with or without fee is hereby granted, provided that the
|
||||
* above copyright notice and this permission notice appear in all
|
||||
* copies.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL
|
||||
* WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED
|
||||
* WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE
|
||||
* AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
|
||||
* DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR
|
||||
* PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
|
||||
* TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
#ifndef _RX_PPDU_END_USER_STATS_EXT_H_
|
||||
#define _RX_PPDU_END_USER_STATS_EXT_H_
|
||||
#if !defined(__ASSEMBLER__)
|
||||
#endif
|
||||
|
||||
#include "rx_rxpcu_classification_overview.h"
|
||||
|
||||
// ################ START SUMMARY #################
|
||||
//
|
||||
// Dword Fields
|
||||
// 0 struct rx_rxpcu_classification_overview rxpcu_classification_details;
|
||||
// 1 fcs_ok_bitmap_95_64[31:0]
|
||||
// 2 fcs_ok_bitmap_127_96[31:0]
|
||||
// 3 fcs_ok_bitmap_159_128[31:0]
|
||||
// 4 fcs_ok_bitmap_191_160[31:0]
|
||||
// 5 fcs_ok_bitmap_223_192[31:0]
|
||||
// 6 fcs_ok_bitmap_255_224[31:0]
|
||||
//
|
||||
// ################ END SUMMARY #################
|
||||
|
||||
#define NUM_OF_DWORDS_RX_PPDU_END_USER_STATS_EXT 7
|
||||
|
||||
struct rx_ppdu_end_user_stats_ext {
|
||||
struct rx_rxpcu_classification_overview rxpcu_classification_details;
|
||||
uint32_t fcs_ok_bitmap_95_64 : 32; //[31:0]
|
||||
uint32_t fcs_ok_bitmap_127_96 : 32; //[31:0]
|
||||
uint32_t fcs_ok_bitmap_159_128 : 32; //[31:0]
|
||||
uint32_t fcs_ok_bitmap_191_160 : 32; //[31:0]
|
||||
uint32_t fcs_ok_bitmap_223_192 : 32; //[31:0]
|
||||
uint32_t fcs_ok_bitmap_255_224 : 32; //[31:0]
|
||||
};
|
||||
|
||||
/*
|
||||
|
||||
struct rx_rxpcu_classification_overview rxpcu_classification_details
|
||||
|
||||
Details related to what RXPCU classification types of
|
||||
MPDUs have been received
|
||||
|
||||
fcs_ok_bitmap_95_64
|
||||
|
||||
Bitmap indicates in order of received MPDUs, which MPDUs
|
||||
had an passing FCS or had an error.
|
||||
|
||||
1: FCS OK
|
||||
|
||||
0: FCS error
|
||||
|
||||
<legal all>
|
||||
|
||||
fcs_ok_bitmap_127_96
|
||||
|
||||
Bitmap indicates in order of received MPDUs, which MPDUs
|
||||
had an passing FCS or had an error.
|
||||
|
||||
1: FCS OK
|
||||
|
||||
0: FCS error
|
||||
|
||||
<legal all>
|
||||
|
||||
fcs_ok_bitmap_159_128
|
||||
|
||||
Bitmap indicates in order of received MPDUs, which MPDUs
|
||||
had an passing FCS or had an error.
|
||||
|
||||
1: FCS OK
|
||||
|
||||
0: FCS error
|
||||
|
||||
<legal all>
|
||||
|
||||
fcs_ok_bitmap_191_160
|
||||
|
||||
Bitmap indicates in order of received MPDUs, which MPDUs
|
||||
had an passing FCS or had an error.
|
||||
|
||||
1: FCS OK
|
||||
|
||||
0: FCS error
|
||||
|
||||
<legal all>
|
||||
|
||||
fcs_ok_bitmap_223_192
|
||||
|
||||
Bitmap indicates in order of received MPDUs, which MPDUs
|
||||
had an passing FCS or had an error.
|
||||
|
||||
1: FCS OK
|
||||
|
||||
0: FCS error
|
||||
|
||||
<legal all>
|
||||
|
||||
fcs_ok_bitmap_255_224
|
||||
|
||||
Bitmap indicates in order of received MPDUs, which MPDUs
|
||||
had an passing FCS or had an error.
|
||||
|
||||
1: FCS OK
|
||||
|
||||
0: FCS error
|
||||
|
||||
<legal all>
|
||||
*/
|
||||
|
||||
#define RX_PPDU_END_USER_STATS_EXT_0_RX_RXPCU_CLASSIFICATION_OVERVIEW_RXPCU_CLASSIFICATION_DETAILS_OFFSET 0x00000000
|
||||
#define RX_PPDU_END_USER_STATS_EXT_0_RX_RXPCU_CLASSIFICATION_OVERVIEW_RXPCU_CLASSIFICATION_DETAILS_LSB 0
|
||||
#define RX_PPDU_END_USER_STATS_EXT_0_RX_RXPCU_CLASSIFICATION_OVERVIEW_RXPCU_CLASSIFICATION_DETAILS_MASK 0xffffffff
|
||||
|
||||
/* Description RX_PPDU_END_USER_STATS_EXT_1_FCS_OK_BITMAP_95_64
|
||||
|
||||
Bitmap indicates in order of received MPDUs, which MPDUs
|
||||
had an passing FCS or had an error.
|
||||
|
||||
1: FCS OK
|
||||
|
||||
0: FCS error
|
||||
|
||||
<legal all>
|
||||
*/
|
||||
#define RX_PPDU_END_USER_STATS_EXT_1_FCS_OK_BITMAP_95_64_OFFSET 0x00000004
|
||||
#define RX_PPDU_END_USER_STATS_EXT_1_FCS_OK_BITMAP_95_64_LSB 0
|
||||
#define RX_PPDU_END_USER_STATS_EXT_1_FCS_OK_BITMAP_95_64_MASK 0xffffffff
|
||||
|
||||
/* Description RX_PPDU_END_USER_STATS_EXT_2_FCS_OK_BITMAP_127_96
|
||||
|
||||
Bitmap indicates in order of received MPDUs, which MPDUs
|
||||
had an passing FCS or had an error.
|
||||
|
||||
1: FCS OK
|
||||
|
||||
0: FCS error
|
||||
|
||||
<legal all>
|
||||
*/
|
||||
#define RX_PPDU_END_USER_STATS_EXT_2_FCS_OK_BITMAP_127_96_OFFSET 0x00000008
|
||||
#define RX_PPDU_END_USER_STATS_EXT_2_FCS_OK_BITMAP_127_96_LSB 0
|
||||
#define RX_PPDU_END_USER_STATS_EXT_2_FCS_OK_BITMAP_127_96_MASK 0xffffffff
|
||||
|
||||
/* Description RX_PPDU_END_USER_STATS_EXT_3_FCS_OK_BITMAP_159_128
|
||||
|
||||
Bitmap indicates in order of received MPDUs, which MPDUs
|
||||
had an passing FCS or had an error.
|
||||
|
||||
1: FCS OK
|
||||
|
||||
0: FCS error
|
||||
|
||||
<legal all>
|
||||
*/
|
||||
#define RX_PPDU_END_USER_STATS_EXT_3_FCS_OK_BITMAP_159_128_OFFSET 0x0000000c
|
||||
#define RX_PPDU_END_USER_STATS_EXT_3_FCS_OK_BITMAP_159_128_LSB 0
|
||||
#define RX_PPDU_END_USER_STATS_EXT_3_FCS_OK_BITMAP_159_128_MASK 0xffffffff
|
||||
|
||||
/* Description RX_PPDU_END_USER_STATS_EXT_4_FCS_OK_BITMAP_191_160
|
||||
|
||||
Bitmap indicates in order of received MPDUs, which MPDUs
|
||||
had an passing FCS or had an error.
|
||||
|
||||
1: FCS OK
|
||||
|
||||
0: FCS error
|
||||
|
||||
<legal all>
|
||||
*/
|
||||
#define RX_PPDU_END_USER_STATS_EXT_4_FCS_OK_BITMAP_191_160_OFFSET 0x00000010
|
||||
#define RX_PPDU_END_USER_STATS_EXT_4_FCS_OK_BITMAP_191_160_LSB 0
|
||||
#define RX_PPDU_END_USER_STATS_EXT_4_FCS_OK_BITMAP_191_160_MASK 0xffffffff
|
||||
|
||||
/* Description RX_PPDU_END_USER_STATS_EXT_5_FCS_OK_BITMAP_223_192
|
||||
|
||||
Bitmap indicates in order of received MPDUs, which MPDUs
|
||||
had an passing FCS or had an error.
|
||||
|
||||
1: FCS OK
|
||||
|
||||
0: FCS error
|
||||
|
||||
<legal all>
|
||||
*/
|
||||
#define RX_PPDU_END_USER_STATS_EXT_5_FCS_OK_BITMAP_223_192_OFFSET 0x00000014
|
||||
#define RX_PPDU_END_USER_STATS_EXT_5_FCS_OK_BITMAP_223_192_LSB 0
|
||||
#define RX_PPDU_END_USER_STATS_EXT_5_FCS_OK_BITMAP_223_192_MASK 0xffffffff
|
||||
|
||||
/* Description RX_PPDU_END_USER_STATS_EXT_6_FCS_OK_BITMAP_255_224
|
||||
|
||||
Bitmap indicates in order of received MPDUs, which MPDUs
|
||||
had an passing FCS or had an error.
|
||||
|
||||
1: FCS OK
|
||||
|
||||
0: FCS error
|
||||
|
||||
<legal all>
|
||||
*/
|
||||
#define RX_PPDU_END_USER_STATS_EXT_6_FCS_OK_BITMAP_255_224_OFFSET 0x00000018
|
||||
#define RX_PPDU_END_USER_STATS_EXT_6_FCS_OK_BITMAP_255_224_LSB 0
|
||||
#define RX_PPDU_END_USER_STATS_EXT_6_FCS_OK_BITMAP_255_224_MASK 0xffffffff
|
||||
|
||||
|
||||
#endif // _RX_PPDU_END_USER_STATS_EXT_H_
|
132
hw/qca6290/v1/rx_ppdu_start.h
普通文件
132
hw/qca6290/v1/rx_ppdu_start.h
普通文件
@@ -0,0 +1,132 @@
|
||||
/*
|
||||
* Copyright (c) 2017 The Linux Foundation. All rights reserved.
|
||||
*
|
||||
* Permission to use, copy, modify, and/or distribute this software for
|
||||
* any purpose with or without fee is hereby granted, provided that the
|
||||
* above copyright notice and this permission notice appear in all
|
||||
* copies.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL
|
||||
* WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED
|
||||
* WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE
|
||||
* AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
|
||||
* DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR
|
||||
* PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
|
||||
* TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
#ifndef _RX_PPDU_START_H_
|
||||
#define _RX_PPDU_START_H_
|
||||
#if !defined(__ASSEMBLER__)
|
||||
#endif
|
||||
|
||||
|
||||
// ################ START SUMMARY #################
|
||||
//
|
||||
// Dword Fields
|
||||
// 0 phy_ppdu_id[15:0], reserved_15[31:16]
|
||||
// 1 sw_phy_meta_data[31:0]
|
||||
// 2 ppdu_start_timestamp[31:0]
|
||||
//
|
||||
// ################ END SUMMARY #################
|
||||
|
||||
#define NUM_OF_DWORDS_RX_PPDU_START 3
|
||||
|
||||
struct rx_ppdu_start {
|
||||
uint32_t phy_ppdu_id : 16, //[15:0]
|
||||
reserved_15 : 16; //[31:16]
|
||||
uint32_t sw_phy_meta_data : 32; //[31:0]
|
||||
uint32_t ppdu_start_timestamp : 32; //[31:0]
|
||||
};
|
||||
|
||||
/*
|
||||
|
||||
phy_ppdu_id
|
||||
|
||||
A ppdu counter value that PHY increments for every PPDU
|
||||
received. The counter value wraps around
|
||||
|
||||
<legal all>
|
||||
|
||||
reserved_15
|
||||
|
||||
Reserved
|
||||
|
||||
<legal 0>
|
||||
|
||||
sw_phy_meta_data
|
||||
|
||||
SW programmed Meta data provided by the PHY.
|
||||
|
||||
|
||||
|
||||
Can be used for SW to indicate the channel the device is
|
||||
on.
|
||||
|
||||
ppdu_start_timestamp
|
||||
|
||||
Timestamp that indicates when the PPDU that contained
|
||||
this MPDU started on the medium.
|
||||
|
||||
|
||||
|
||||
The timestamp is captured by the PHY ????TODO: Is this
|
||||
comment correct ?
|
||||
|
||||
<legal all>
|
||||
*/
|
||||
|
||||
|
||||
/* Description RX_PPDU_START_0_PHY_PPDU_ID
|
||||
|
||||
A ppdu counter value that PHY increments for every PPDU
|
||||
received. The counter value wraps around
|
||||
|
||||
<legal all>
|
||||
*/
|
||||
#define RX_PPDU_START_0_PHY_PPDU_ID_OFFSET 0x00000000
|
||||
#define RX_PPDU_START_0_PHY_PPDU_ID_LSB 0
|
||||
#define RX_PPDU_START_0_PHY_PPDU_ID_MASK 0x0000ffff
|
||||
|
||||
/* Description RX_PPDU_START_0_RESERVED_15
|
||||
|
||||
Reserved
|
||||
|
||||
<legal 0>
|
||||
*/
|
||||
#define RX_PPDU_START_0_RESERVED_15_OFFSET 0x00000000
|
||||
#define RX_PPDU_START_0_RESERVED_15_LSB 16
|
||||
#define RX_PPDU_START_0_RESERVED_15_MASK 0xffff0000
|
||||
|
||||
/* Description RX_PPDU_START_1_SW_PHY_META_DATA
|
||||
|
||||
SW programmed Meta data provided by the PHY.
|
||||
|
||||
|
||||
|
||||
Can be used for SW to indicate the channel the device is
|
||||
on.
|
||||
*/
|
||||
#define RX_PPDU_START_1_SW_PHY_META_DATA_OFFSET 0x00000004
|
||||
#define RX_PPDU_START_1_SW_PHY_META_DATA_LSB 0
|
||||
#define RX_PPDU_START_1_SW_PHY_META_DATA_MASK 0xffffffff
|
||||
|
||||
/* Description RX_PPDU_START_2_PPDU_START_TIMESTAMP
|
||||
|
||||
Timestamp that indicates when the PPDU that contained
|
||||
this MPDU started on the medium.
|
||||
|
||||
|
||||
|
||||
The timestamp is captured by the PHY ????TODO: Is this
|
||||
comment correct ?
|
||||
|
||||
<legal all>
|
||||
*/
|
||||
#define RX_PPDU_START_2_PPDU_START_TIMESTAMP_OFFSET 0x00000008
|
||||
#define RX_PPDU_START_2_PPDU_START_TIMESTAMP_LSB 0
|
||||
#define RX_PPDU_START_2_PPDU_START_TIMESTAMP_MASK 0xffffffff
|
||||
|
||||
|
||||
#endif // _RX_PPDU_START_H_
|
@@ -0,0 +1,55 @@
|
||||
/*
|
||||
* Copyright (c) 2017 The Linux Foundation. All rights reserved.
|
||||
*
|
||||
* Permission to use, copy, modify, and/or distribute this software for
|
||||
* any purpose with or without fee is hereby granted, provided that the
|
||||
* above copyright notice and this permission notice appear in all
|
||||
* copies.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL
|
||||
* WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED
|
||||
* WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE
|
||||
* AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
|
||||
* DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR
|
||||
* PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
|
||||
* TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
#ifndef _RX_PPDU_START_USER_INFO_H_
|
||||
#define _RX_PPDU_START_USER_INFO_H_
|
||||
#if !defined(__ASSEMBLER__)
|
||||
#endif
|
||||
|
||||
#include "receive_user_info.h"
|
||||
|
||||
// ################ START SUMMARY #################
|
||||
//
|
||||
// Dword Fields
|
||||
// 0-1 struct receive_user_info receive_user_info_details;
|
||||
//
|
||||
// ################ END SUMMARY #################
|
||||
|
||||
#define NUM_OF_DWORDS_RX_PPDU_START_USER_INFO 2
|
||||
|
||||
struct rx_ppdu_start_user_info {
|
||||
struct receive_user_info receive_user_info_details;
|
||||
};
|
||||
|
||||
/*
|
||||
|
||||
struct receive_user_info receive_user_info_details
|
||||
|
||||
Overview of receive parameters that the MAC needs to
|
||||
prepend to every received MSDU/MPDU.
|
||||
*/
|
||||
|
||||
#define RX_PPDU_START_USER_INFO_0_RECEIVE_USER_INFO_RECEIVE_USER_INFO_DETAILS_OFFSET 0x00000000
|
||||
#define RX_PPDU_START_USER_INFO_0_RECEIVE_USER_INFO_RECEIVE_USER_INFO_DETAILS_LSB 0
|
||||
#define RX_PPDU_START_USER_INFO_0_RECEIVE_USER_INFO_RECEIVE_USER_INFO_DETAILS_MASK 0xffffffff
|
||||
#define RX_PPDU_START_USER_INFO_1_RECEIVE_USER_INFO_RECEIVE_USER_INFO_DETAILS_OFFSET 0x00000004
|
||||
#define RX_PPDU_START_USER_INFO_1_RECEIVE_USER_INFO_RECEIVE_USER_INFO_DETAILS_LSB 0
|
||||
#define RX_PPDU_START_USER_INFO_1_RECEIVE_USER_INFO_RECEIVE_USER_INFO_DETAILS_MASK 0xffffffff
|
||||
|
||||
|
||||
#endif // _RX_PPDU_START_USER_INFO_H_
|
@@ -0,0 +1,188 @@
|
||||
/*
|
||||
* Copyright (c) 2017 The Linux Foundation. All rights reserved.
|
||||
*
|
||||
* Permission to use, copy, modify, and/or distribute this software for
|
||||
* any purpose with or without fee is hereby granted, provided that the
|
||||
* above copyright notice and this permission notice appear in all
|
||||
* copies.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL
|
||||
* WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED
|
||||
* WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE
|
||||
* AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
|
||||
* DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR
|
||||
* PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
|
||||
* TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
#ifndef _RX_RXPCU_CLASSIFICATION_OVERVIEW_H_
|
||||
#define _RX_RXPCU_CLASSIFICATION_OVERVIEW_H_
|
||||
#if !defined(__ASSEMBLER__)
|
||||
#endif
|
||||
|
||||
|
||||
// ################ START SUMMARY #################
|
||||
//
|
||||
// Dword Fields
|
||||
// 0 filter_pass_mpdus[0], filter_pass_mpdus_fcs_ok[1], monitor_direct_mpdus[2], monitor_direct_mpdus_fcs_ok[3], monitor_other_mpdus[4], monitor_other_mpdus_fcs_ok[5], reserved_0[15:6], phy_ppdu_id[31:16]
|
||||
//
|
||||
// ################ END SUMMARY #################
|
||||
|
||||
#define NUM_OF_DWORDS_RX_RXPCU_CLASSIFICATION_OVERVIEW 1
|
||||
|
||||
struct rx_rxpcu_classification_overview {
|
||||
uint32_t filter_pass_mpdus : 1, //[0]
|
||||
filter_pass_mpdus_fcs_ok : 1, //[1]
|
||||
monitor_direct_mpdus : 1, //[2]
|
||||
monitor_direct_mpdus_fcs_ok : 1, //[3]
|
||||
monitor_other_mpdus : 1, //[4]
|
||||
monitor_other_mpdus_fcs_ok : 1, //[5]
|
||||
reserved_0 : 10, //[15:6]
|
||||
phy_ppdu_id : 16; //[31:16]
|
||||
};
|
||||
|
||||
/*
|
||||
|
||||
filter_pass_mpdus
|
||||
|
||||
When set, at least one Filter Pass MPDU has been
|
||||
received. FCS might or might not have been passing
|
||||
|
||||
<legal all>
|
||||
|
||||
filter_pass_mpdus_fcs_ok
|
||||
|
||||
When set, at least one Filter Pass MPDU has been
|
||||
received that has a correct FCS.
|
||||
|
||||
<legal all>
|
||||
|
||||
monitor_direct_mpdus
|
||||
|
||||
When set, at least one Monitor Direct MPDU has been
|
||||
received. FCS might or might not have been passing
|
||||
|
||||
<legal all>
|
||||
|
||||
monitor_direct_mpdus_fcs_ok
|
||||
|
||||
When set, at least one Monitor Direct MPDU has been
|
||||
received that has a correct FCS.
|
||||
|
||||
<legal all>
|
||||
|
||||
monitor_other_mpdus
|
||||
|
||||
When set, at least one Monitor Direct MPDU has been
|
||||
received. FCS might or might not have been passing
|
||||
|
||||
<legal all>
|
||||
|
||||
monitor_other_mpdus_fcs_ok
|
||||
|
||||
When set, at least one Monitor Direct MPDU has been
|
||||
received that has a correct FCS.
|
||||
|
||||
<legal all>
|
||||
|
||||
reserved_0
|
||||
|
||||
<legal 0>
|
||||
|
||||
phy_ppdu_id
|
||||
|
||||
A ppdu counter value that PHY increments for every PPDU
|
||||
received. The counter value wraps around
|
||||
|
||||
<legal all>
|
||||
*/
|
||||
|
||||
|
||||
/* Description RX_RXPCU_CLASSIFICATION_OVERVIEW_0_FILTER_PASS_MPDUS
|
||||
|
||||
When set, at least one Filter Pass MPDU has been
|
||||
received. FCS might or might not have been passing
|
||||
|
||||
<legal all>
|
||||
*/
|
||||
#define RX_RXPCU_CLASSIFICATION_OVERVIEW_0_FILTER_PASS_MPDUS_OFFSET 0x00000000
|
||||
#define RX_RXPCU_CLASSIFICATION_OVERVIEW_0_FILTER_PASS_MPDUS_LSB 0
|
||||
#define RX_RXPCU_CLASSIFICATION_OVERVIEW_0_FILTER_PASS_MPDUS_MASK 0x00000001
|
||||
|
||||
/* Description RX_RXPCU_CLASSIFICATION_OVERVIEW_0_FILTER_PASS_MPDUS_FCS_OK
|
||||
|
||||
When set, at least one Filter Pass MPDU has been
|
||||
received that has a correct FCS.
|
||||
|
||||
<legal all>
|
||||
*/
|
||||
#define RX_RXPCU_CLASSIFICATION_OVERVIEW_0_FILTER_PASS_MPDUS_FCS_OK_OFFSET 0x00000000
|
||||
#define RX_RXPCU_CLASSIFICATION_OVERVIEW_0_FILTER_PASS_MPDUS_FCS_OK_LSB 1
|
||||
#define RX_RXPCU_CLASSIFICATION_OVERVIEW_0_FILTER_PASS_MPDUS_FCS_OK_MASK 0x00000002
|
||||
|
||||
/* Description RX_RXPCU_CLASSIFICATION_OVERVIEW_0_MONITOR_DIRECT_MPDUS
|
||||
|
||||
When set, at least one Monitor Direct MPDU has been
|
||||
received. FCS might or might not have been passing
|
||||
|
||||
<legal all>
|
||||
*/
|
||||
#define RX_RXPCU_CLASSIFICATION_OVERVIEW_0_MONITOR_DIRECT_MPDUS_OFFSET 0x00000000
|
||||
#define RX_RXPCU_CLASSIFICATION_OVERVIEW_0_MONITOR_DIRECT_MPDUS_LSB 2
|
||||
#define RX_RXPCU_CLASSIFICATION_OVERVIEW_0_MONITOR_DIRECT_MPDUS_MASK 0x00000004
|
||||
|
||||
/* Description RX_RXPCU_CLASSIFICATION_OVERVIEW_0_MONITOR_DIRECT_MPDUS_FCS_OK
|
||||
|
||||
When set, at least one Monitor Direct MPDU has been
|
||||
received that has a correct FCS.
|
||||
|
||||
<legal all>
|
||||
*/
|
||||
#define RX_RXPCU_CLASSIFICATION_OVERVIEW_0_MONITOR_DIRECT_MPDUS_FCS_OK_OFFSET 0x00000000
|
||||
#define RX_RXPCU_CLASSIFICATION_OVERVIEW_0_MONITOR_DIRECT_MPDUS_FCS_OK_LSB 3
|
||||
#define RX_RXPCU_CLASSIFICATION_OVERVIEW_0_MONITOR_DIRECT_MPDUS_FCS_OK_MASK 0x00000008
|
||||
|
||||
/* Description RX_RXPCU_CLASSIFICATION_OVERVIEW_0_MONITOR_OTHER_MPDUS
|
||||
|
||||
When set, at least one Monitor Direct MPDU has been
|
||||
received. FCS might or might not have been passing
|
||||
|
||||
<legal all>
|
||||
*/
|
||||
#define RX_RXPCU_CLASSIFICATION_OVERVIEW_0_MONITOR_OTHER_MPDUS_OFFSET 0x00000000
|
||||
#define RX_RXPCU_CLASSIFICATION_OVERVIEW_0_MONITOR_OTHER_MPDUS_LSB 4
|
||||
#define RX_RXPCU_CLASSIFICATION_OVERVIEW_0_MONITOR_OTHER_MPDUS_MASK 0x00000010
|
||||
|
||||
/* Description RX_RXPCU_CLASSIFICATION_OVERVIEW_0_MONITOR_OTHER_MPDUS_FCS_OK
|
||||
|
||||
When set, at least one Monitor Direct MPDU has been
|
||||
received that has a correct FCS.
|
||||
|
||||
<legal all>
|
||||
*/
|
||||
#define RX_RXPCU_CLASSIFICATION_OVERVIEW_0_MONITOR_OTHER_MPDUS_FCS_OK_OFFSET 0x00000000
|
||||
#define RX_RXPCU_CLASSIFICATION_OVERVIEW_0_MONITOR_OTHER_MPDUS_FCS_OK_LSB 5
|
||||
#define RX_RXPCU_CLASSIFICATION_OVERVIEW_0_MONITOR_OTHER_MPDUS_FCS_OK_MASK 0x00000020
|
||||
|
||||
/* Description RX_RXPCU_CLASSIFICATION_OVERVIEW_0_RESERVED_0
|
||||
|
||||
<legal 0>
|
||||
*/
|
||||
#define RX_RXPCU_CLASSIFICATION_OVERVIEW_0_RESERVED_0_OFFSET 0x00000000
|
||||
#define RX_RXPCU_CLASSIFICATION_OVERVIEW_0_RESERVED_0_LSB 6
|
||||
#define RX_RXPCU_CLASSIFICATION_OVERVIEW_0_RESERVED_0_MASK 0x0000ffc0
|
||||
|
||||
/* Description RX_RXPCU_CLASSIFICATION_OVERVIEW_0_PHY_PPDU_ID
|
||||
|
||||
A ppdu counter value that PHY increments for every PPDU
|
||||
received. The counter value wraps around
|
||||
|
||||
<legal all>
|
||||
*/
|
||||
#define RX_RXPCU_CLASSIFICATION_OVERVIEW_0_PHY_PPDU_ID_OFFSET 0x00000000
|
||||
#define RX_RXPCU_CLASSIFICATION_OVERVIEW_0_PHY_PPDU_ID_LSB 16
|
||||
#define RX_RXPCU_CLASSIFICATION_OVERVIEW_0_PHY_PPDU_ID_MASK 0xffff0000
|
||||
|
||||
|
||||
#endif // _RX_RXPCU_CLASSIFICATION_OVERVIEW_H_
|
在新工单中引用
屏蔽一个用户