qcacmn: Update radiotap header with LTF symbol value

As per the updated spec, 11AX PPDU's HE SIG_A data-5 field has added
LTF symbol field which is 3bits in size.

Add logic to parse the TLV coming from hardware and update the
LTF symbol value.

Change-Id: I05e2ff8ece7e14dc22ce747e9a9b906bf130462f
CRs-Fixed: 2235233
This commit is contained in:
Krunal Soni
2018-05-04 18:18:22 -07:00
committed by nshrivas
父節點 828ddeb614
當前提交 37bf7f4d22
共有 2 個文件被更改,包括 14 次插入3 次删除

查看文件

@@ -958,8 +958,13 @@ hal_rx_status_get_tlv_info(void *rx_tlv_hdr, struct hal_rx_ppdu_info *ppdu_info)
ppdu_info->rx_status.sgi = he_gi; ppdu_info->rx_status.sgi = he_gi;
value = he_gi << QDF_MON_STATUS_GI_SHIFT; value = he_gi << QDF_MON_STATUS_GI_SHIFT;
ppdu_info->rx_status.he_data5 |= value; ppdu_info->rx_status.he_data5 |= value;
value = he_ltf << QDF_MON_STATUS_HE_LTF_SHIFT; value = he_ltf << QDF_MON_STATUS_HE_LTF_SIZE_SHIFT;
ppdu_info->rx_status.he_data5 |= value; ppdu_info->rx_status.he_data5 |= value;
value = HAL_RX_GET(he_sig_a_su_info, HE_SIG_A_SU_INFO_0, NSTS);
value = (value << QDF_MON_STATUS_HE_LTF_SYM_SHIFT);
ppdu_info->rx_status.he_data5 |= value;
value = HAL_RX_GET(he_sig_a_su_info, HE_SIG_A_SU_INFO_1, value = HAL_RX_GET(he_sig_a_su_info, HE_SIG_A_SU_INFO_1,
PACKET_EXTENSION_A_FACTOR); PACKET_EXTENSION_A_FACTOR);
value = value << QDF_MON_STATUS_PRE_FEC_PAD_SHIFT; value = value << QDF_MON_STATUS_PRE_FEC_PAD_SHIFT;
@@ -1078,7 +1083,12 @@ hal_rx_status_get_tlv_info(void *rx_tlv_hdr, struct hal_rx_ppdu_info *ppdu_info)
value = he_gi << QDF_MON_STATUS_GI_SHIFT; value = he_gi << QDF_MON_STATUS_GI_SHIFT;
ppdu_info->rx_status.he_data5 |= value; ppdu_info->rx_status.he_data5 |= value;
value = he_ltf << QDF_MON_STATUS_HE_LTF_SHIFT; value = he_ltf << QDF_MON_STATUS_HE_LTF_SIZE_SHIFT;
ppdu_info->rx_status.he_data5 |= value;
value = HAL_RX_GET(he_sig_a_mu_dl_info,
HE_SIG_A_MU_DL_INFO_1, NUM_LTF_SYMBOLS);
value = (value << QDF_MON_STATUS_HE_LTF_SYM_SHIFT);
ppdu_info->rx_status.he_data5 |= value; ppdu_info->rx_status.he_data5 |= value;
value = HAL_RX_GET(he_sig_a_mu_dl_info, HE_SIG_A_MU_DL_INFO_1, value = HAL_RX_GET(he_sig_a_mu_dl_info, HE_SIG_A_MU_DL_INFO_1,

查看文件

@@ -385,7 +385,8 @@ struct mon_rx_status {
/* HE radiotap data5 */ /* HE radiotap data5 */
#define QDF_MON_STATUS_GI_SHIFT 4 #define QDF_MON_STATUS_GI_SHIFT 4
#define QDF_MON_STATUS_HE_LTF_SHIFT 8 #define QDF_MON_STATUS_HE_LTF_SIZE_SHIFT 6
#define QDF_MON_STATUS_HE_LTF_SYM_SHIFT 8
#define QDF_MON_STATUS_TXBF_SHIFT 14 #define QDF_MON_STATUS_TXBF_SHIFT 14
#define QDF_MON_STATUS_PE_DISAMBIGUITY_SHIFT 15 #define QDF_MON_STATUS_PE_DISAMBIGUITY_SHIFT 15
#define QDF_MON_STATUS_PRE_FEC_PAD_SHIFT 12 #define QDF_MON_STATUS_PRE_FEC_PAD_SHIFT 12