Lines Matching refs:ppdu_info

31 		       struct hal_rx_ppdu_info *ppdu_info){  in hal_rx_get_phyrx_abort()  argument
34 ppdu_info->rx_status.phyrx_abort = in hal_rx_get_phyrx_abort()
37 ppdu_info->rx_status.phyrx_abort_reason = in hal_rx_get_phyrx_abort()
47 hal_rx_get_ht_sig_info(struct hal_rx_ppdu_info *ppdu_info, in hal_rx_get_ht_sig_info() argument
50 ppdu_info->rx_status.ht_length = in hal_rx_get_ht_sig_info()
52 ppdu_info->rx_status.smoothing = in hal_rx_get_ht_sig_info()
54 ppdu_info->rx_status.not_sounding = in hal_rx_get_ht_sig_info()
56 ppdu_info->rx_status.aggregation = in hal_rx_get_ht_sig_info()
58 ppdu_info->rx_status.ht_stbc = in hal_rx_get_ht_sig_info()
60 ppdu_info->rx_status.ht_crc = in hal_rx_get_ht_sig_info()
65 hal_rx_get_l_sig_a_info(struct hal_rx_ppdu_info *ppdu_info, in hal_rx_get_l_sig_a_info() argument
68 ppdu_info->rx_status.l_sig_length = in hal_rx_get_l_sig_a_info()
70 ppdu_info->rx_status.l_sig_a_parity = in hal_rx_get_l_sig_a_info()
72 ppdu_info->rx_status.l_sig_a_pkt_type = in hal_rx_get_l_sig_a_info()
74 ppdu_info->rx_status.l_sig_a_implicit_sounding = in hal_rx_get_l_sig_a_info()
80 hal_rx_get_vht_sig_a_info(struct hal_rx_ppdu_info *ppdu_info, in hal_rx_get_vht_sig_a_info() argument
83 ppdu_info->rx_status.vht_no_txop_ps = in hal_rx_get_vht_sig_a_info()
86 ppdu_info->rx_status.vht_crc = in hal_rx_get_vht_sig_a_info()
91 hal_rx_get_crc_he_sig_a_su_info(struct hal_rx_ppdu_info *ppdu_info, in hal_rx_get_crc_he_sig_a_su_info() argument
93 ppdu_info->rx_status.he_crc = in hal_rx_get_crc_he_sig_a_su_info()
98 hal_rx_get_crc_he_sig_a_mu_dl_info(struct hal_rx_ppdu_info *ppdu_info, in hal_rx_get_crc_he_sig_a_mu_dl_info() argument
100 ppdu_info->rx_status.he_crc = in hal_rx_get_crc_he_sig_a_mu_dl_info()
106 struct hal_rx_ppdu_info *ppdu_info) in hal_rx_get_phyrx_abort() argument
111 hal_rx_get_ht_sig_info(struct hal_rx_ppdu_info *ppdu_info, in hal_rx_get_ht_sig_info() argument
117 hal_rx_get_l_sig_a_info(struct hal_rx_ppdu_info *ppdu_info, in hal_rx_get_l_sig_a_info() argument
123 hal_rx_get_vht_sig_a_info(struct hal_rx_ppdu_info *ppdu_info, in hal_rx_get_vht_sig_a_info() argument
129 hal_rx_get_crc_he_sig_a_su_info(struct hal_rx_ppdu_info *ppdu_info, in hal_rx_get_crc_he_sig_a_su_info() argument
135 hal_rx_get_crc_he_sig_a_mu_dl_info(struct hal_rx_ppdu_info *ppdu_info, in hal_rx_get_crc_he_sig_a_mu_dl_info() argument
198 struct hal_rx_ppdu_info *ppdu_info) in hal_rx_handle_other_tlvs() argument
209 ppdu_info->rx_status.he_flags = 1; in hal_rx_handle_other_tlvs()
214 ppdu_info->rx_status.he_data1 = in hal_rx_handle_other_tlvs()
217 ppdu_info->rx_status.he_data1 = in hal_rx_handle_other_tlvs()
222 ppdu_info->rx_status.he_data1 |= in hal_rx_handle_other_tlvs()
228 ppdu_info->rx_status.he_data2 |= in hal_rx_handle_other_tlvs()
234 ppdu_info->rx_status.he_data3 = value; in hal_rx_handle_other_tlvs()
238 ppdu_info->rx_status.he_data3 |= value; in hal_rx_handle_other_tlvs()
243 ppdu_info->rx_status.he_data4 = value; in hal_rx_handle_other_tlvs()
248 ppdu_info->rx_status.he_data5 = value; in hal_rx_handle_other_tlvs()
249 ppdu_info->rx_status.bw = value; in hal_rx_handle_other_tlvs()
255 ppdu_info->rx_status.he_data6 |= value; in hal_rx_handle_other_tlvs()
265 struct hal_rx_ppdu_info *ppdu_info) in hal_rx_handle_other_tlvs() argument
315 struct hal_rx_ppdu_info *ppdu_info = in hal_rx_populate_byte_count() local
319 mon_rx_user_status->mpdu_ok_byte_count = ppdu_info->rx_status.ppdu_len; in hal_rx_populate_byte_count()
330 struct hal_rx_ppdu_info *ppdu_info = in hal_rx_populate_mu_user_info() local
333 mon_rx_info = &ppdu_info->rx_info; in hal_rx_populate_mu_user_info()
334 mon_rx_user_info = &ppdu_info->rx_user_info[user_id]; in hal_rx_populate_mu_user_info()
339 mon_rx_user_status->ast_index = ppdu_info->rx_status.ast_index; in hal_rx_populate_mu_user_info()
340 mon_rx_user_status->tid = ppdu_info->rx_status.tid; in hal_rx_populate_mu_user_info()
342 ppdu_info->rx_status.tcp_msdu_count; in hal_rx_populate_mu_user_info()
344 ppdu_info->rx_status.udp_msdu_count; in hal_rx_populate_mu_user_info()
346 ppdu_info->rx_status.other_msdu_count; in hal_rx_populate_mu_user_info()
347 mon_rx_user_status->frame_control = ppdu_info->rx_status.frame_control; in hal_rx_populate_mu_user_info()
349 ppdu_info->rx_status.frame_control_info_valid; in hal_rx_populate_mu_user_info()
351 ppdu_info->rx_status.data_sequence_control_info_valid; in hal_rx_populate_mu_user_info()
353 ppdu_info->rx_status.first_data_seq_ctrl; in hal_rx_populate_mu_user_info()
354 mon_rx_user_status->preamble_type = ppdu_info->rx_status.preamble_type; in hal_rx_populate_mu_user_info()
355 mon_rx_user_status->ht_flags = ppdu_info->rx_status.ht_flags; in hal_rx_populate_mu_user_info()
356 mon_rx_user_status->rtap_flags = ppdu_info->rx_status.rtap_flags; in hal_rx_populate_mu_user_info()
357 mon_rx_user_status->vht_flags = ppdu_info->rx_status.vht_flags; in hal_rx_populate_mu_user_info()
358 mon_rx_user_status->he_flags = ppdu_info->rx_status.he_flags; in hal_rx_populate_mu_user_info()
359 mon_rx_user_status->rs_flags = ppdu_info->rx_status.rs_flags; in hal_rx_populate_mu_user_info()
362 ppdu_info->com_info.mpdu_cnt_fcs_ok; in hal_rx_populate_mu_user_info()
364 ppdu_info->com_info.mpdu_cnt_fcs_err; in hal_rx_populate_mu_user_info()
366 &ppdu_info->com_info.mpdu_fcs_ok_bitmap, in hal_rx_populate_mu_user_info()
368 sizeof(ppdu_info->com_info.mpdu_fcs_ok_bitmap[0])); in hal_rx_populate_mu_user_info()
370 hal_rx_populate_byte_count(rx_tlv, ppdu_info, mon_rx_user_status); in hal_rx_populate_mu_user_info()
374 ppdu_info, rssi_info_tlv) \ argument
376 ppdu_info->rx_status.rssi_chain[chain][0] = \
379 ppdu_info->rx_status.rssi_chain[chain][1] = \
382 ppdu_info->rx_status.rssi_chain[chain][2] = \
385 ppdu_info->rx_status.rssi_chain[chain][3] = \
388 ppdu_info->rx_status.rssi_chain[chain][4] = \
391 ppdu_info->rx_status.rssi_chain[chain][5] = \
394 ppdu_info->rx_status.rssi_chain[chain][6] = \
397 ppdu_info->rx_status.rssi_chain[chain][7] = \
402 #define HAL_RX_PPDU_UPDATE_RSSI(ppdu_info, rssi_info_tlv) \ argument
403 {HAL_RX_UPDATE_RSSI_PER_CHAIN_BW(0, 0, 1, ppdu_info, rssi_info_tlv) \
404 HAL_RX_UPDATE_RSSI_PER_CHAIN_BW(1, 2, 3, ppdu_info, rssi_info_tlv) \
405 HAL_RX_UPDATE_RSSI_PER_CHAIN_BW(2, 4, 5, ppdu_info, rssi_info_tlv) \
406 HAL_RX_UPDATE_RSSI_PER_CHAIN_BW(3, 6, 7, ppdu_info, rssi_info_tlv) \
407 HAL_RX_UPDATE_RSSI_PER_CHAIN_BW(4, 8, 9, ppdu_info, rssi_info_tlv) \
408 HAL_RX_UPDATE_RSSI_PER_CHAIN_BW(5, 10, 11, ppdu_info, rssi_info_tlv) \
409 HAL_RX_UPDATE_RSSI_PER_CHAIN_BW(6, 12, 13, ppdu_info, rssi_info_tlv) \
410 HAL_RX_UPDATE_RSSI_PER_CHAIN_BW(7, 14, 15, ppdu_info, rssi_info_tlv)} \
413 hal_rx_update_rssi_chain(struct hal_rx_ppdu_info *ppdu_info, in hal_rx_update_rssi_chain() argument
416 HAL_RX_PPDU_UPDATE_RSSI(ppdu_info, rssi_info_tlv) in hal_rx_update_rssi_chain()
423 struct hal_rx_ppdu_info *ppdu_info) in hal_get_qos_control() argument
425 ppdu_info->rx_info.qos_control_info_valid = in hal_get_qos_control()
429 if (ppdu_info->rx_info.qos_control_info_valid) in hal_get_qos_control()
430 ppdu_info->rx_info.qos_control = in hal_get_qos_control()
438 struct hal_rx_ppdu_info *ppdu_info) in hal_get_mac_addr1() argument
440 if ((ppdu_info->sw_frame_group_id in hal_get_mac_addr1()
442 (ppdu_info->sw_frame_group_id == in hal_get_mac_addr1()
444 ppdu_info->rx_info.mac_addr1_valid = in hal_get_mac_addr1()
447 *(uint32_t *)&ppdu_info->rx_info.mac_addr1[0] = in hal_get_mac_addr1()
451 if (ppdu_info->sw_frame_group_id == in hal_get_mac_addr1()
453 *(uint16_t *)&ppdu_info->rx_info.mac_addr1[4] = in hal_get_mac_addr1()
463 struct hal_rx_ppdu_info *ppdu_info) in hal_get_qos_control() argument
469 struct hal_rx_ppdu_info *ppdu_info) in hal_get_mac_addr1() argument
477 struct hal_rx_ppdu_info *ppdu_info) in hal_update_frame_type_cnt() argument
488 ppdu_info->frm_type_info.rx_mgmt_cnt++; in hal_update_frame_type_cnt()
490 ppdu_info->frm_type_info.rx_ctrl_cnt++; in hal_update_frame_type_cnt()
492 ppdu_info->frm_type_info.rx_data_cnt++; in hal_update_frame_type_cnt()
498 struct hal_rx_ppdu_info *ppdu_info) in hal_update_frame_type_cnt() argument
527 struct hal_rx_ppdu_info *ppdu_info = in hal_rx_status_get_tlv_info_generic_rh() local
542 if (qdf_unlikely(ppdu_info->com_info.last_ppdu_id == in hal_rx_status_get_tlv_info_generic_rh()
545 ppdu_info->com_info.last_ppdu_id); in hal_rx_status_get_tlv_info_generic_rh()
548 qdf_mem_zero(ppdu_info, in hal_rx_status_get_tlv_info_generic_rh()
551 ppdu_info->com_info.last_ppdu_id = in hal_rx_status_get_tlv_info_generic_rh()
552 ppdu_info->com_info.ppdu_id = in hal_rx_status_get_tlv_info_generic_rh()
557 ppdu_info->rx_status.chan_num = in hal_rx_status_get_tlv_info_generic_rh()
560 ppdu_info->rx_status.chan_freq = in hal_rx_status_get_tlv_info_generic_rh()
563 if (ppdu_info->rx_status.chan_num) { in hal_rx_status_get_tlv_info_generic_rh()
564 ppdu_info->rx_status.chan_freq = in hal_rx_status_get_tlv_info_generic_rh()
566 ppdu_info->rx_status.chan_num, in hal_rx_status_get_tlv_info_generic_rh()
567 ppdu_info->rx_status.chan_freq); in hal_rx_status_get_tlv_info_generic_rh()
569 ppdu_info->com_info.ppdu_timestamp = in hal_rx_status_get_tlv_info_generic_rh()
572 ppdu_info->rx_status.ppdu_timestamp = in hal_rx_status_get_tlv_info_generic_rh()
573 ppdu_info->com_info.ppdu_timestamp; in hal_rx_status_get_tlv_info_generic_rh()
574 ppdu_info->rx_state = HAL_RX_MON_PPDU_START; in hal_rx_status_get_tlv_info_generic_rh()
586 ppdu_info->rx_state = HAL_RX_MON_PPDU_END; in hal_rx_status_get_tlv_info_generic_rh()
590 hal_rx_get_rtt_info(hal_soc_hdl, rx_tlv, ppdu_info); in hal_rx_status_get_tlv_info_generic_rh()
594 ppdu_info->rx_status.rx_antenna = in hal_rx_status_get_tlv_info_generic_rh()
596 ppdu_info->rx_status.tsft = in hal_rx_status_get_tlv_info_generic_rh()
599 ppdu_info->rx_status.tsft = (ppdu_info->rx_status.tsft << 32) | in hal_rx_status_get_tlv_info_generic_rh()
602 ppdu_info->rx_status.duration = in hal_rx_status_get_tlv_info_generic_rh()
605 hal_rx_get_bb_info(hal_soc_hdl, rx_tlv, ppdu_info); in hal_rx_status_get_tlv_info_generic_rh()
606 hal_rx_get_phyrx_abort(hal, rx_tlv, ppdu_info); in hal_rx_status_get_tlv_info_generic_rh()
618 ppdu_info->rx_status.ast_index = in hal_rx_status_get_tlv_info_generic_rh()
624 ppdu_info->rx_status.tid = qdf_find_first_bit(&tid, in hal_rx_status_get_tlv_info_generic_rh()
627 if (ppdu_info->rx_status.tid == (sizeof(tid) * 8)) in hal_rx_status_get_tlv_info_generic_rh()
628 ppdu_info->rx_status.tid = HAL_TID_INVALID; in hal_rx_status_get_tlv_info_generic_rh()
630 ppdu_info->rx_status.tcp_msdu_count = in hal_rx_status_get_tlv_info_generic_rh()
635 ppdu_info->rx_status.udp_msdu_count = in hal_rx_status_get_tlv_info_generic_rh()
638 ppdu_info->rx_status.other_msdu_count = in hal_rx_status_get_tlv_info_generic_rh()
642 if (ppdu_info->sw_frame_group_id in hal_rx_status_get_tlv_info_generic_rh()
644 ppdu_info->rx_status.frame_control_info_valid = in hal_rx_status_get_tlv_info_generic_rh()
648 if (ppdu_info->rx_status.frame_control_info_valid) in hal_rx_status_get_tlv_info_generic_rh()
649 ppdu_info->rx_status.frame_control = in hal_rx_status_get_tlv_info_generic_rh()
654 hal_get_qos_control(rx_tlv, ppdu_info); in hal_rx_status_get_tlv_info_generic_rh()
657 ppdu_info->rx_status.data_sequence_control_info_valid = in hal_rx_status_get_tlv_info_generic_rh()
663 if (ppdu_info->rx_status.data_sequence_control_info_valid) in hal_rx_status_get_tlv_info_generic_rh()
664 ppdu_info->rx_status.first_data_seq_ctrl = seq; in hal_rx_status_get_tlv_info_generic_rh()
666 ppdu_info->rx_status.preamble_type = in hal_rx_status_get_tlv_info_generic_rh()
669 switch (ppdu_info->rx_status.preamble_type) { in hal_rx_status_get_tlv_info_generic_rh()
671 ppdu_info->rx_status.ht_flags = 1; in hal_rx_status_get_tlv_info_generic_rh()
672 ppdu_info->rx_status.rtap_flags |= HT_SGI_PRESENT; in hal_rx_status_get_tlv_info_generic_rh()
675 ppdu_info->rx_status.vht_flags = 1; in hal_rx_status_get_tlv_info_generic_rh()
678 ppdu_info->rx_status.he_flags = 1; in hal_rx_status_get_tlv_info_generic_rh()
684 ppdu_info->com_info.mpdu_cnt_fcs_ok = in hal_rx_status_get_tlv_info_generic_rh()
687 ppdu_info->com_info.mpdu_cnt_fcs_err = in hal_rx_status_get_tlv_info_generic_rh()
690 if ((ppdu_info->com_info.mpdu_cnt_fcs_ok | in hal_rx_status_get_tlv_info_generic_rh()
691 ppdu_info->com_info.mpdu_cnt_fcs_err) > 1) in hal_rx_status_get_tlv_info_generic_rh()
692 ppdu_info->rx_status.rs_flags |= IEEE80211_AMPDU_FLAG; in hal_rx_status_get_tlv_info_generic_rh()
694 ppdu_info->rx_status.rs_flags &= in hal_rx_status_get_tlv_info_generic_rh()
697 ppdu_info->com_info.mpdu_fcs_ok_bitmap[0] = in hal_rx_status_get_tlv_info_generic_rh()
701 ppdu_info->com_info.mpdu_fcs_ok_bitmap[1] = in hal_rx_status_get_tlv_info_generic_rh()
707 &ppdu_info->rx_user_status[user_id]; in hal_rx_status_get_tlv_info_generic_rh()
711 ppdu_info->com_info.num_users++; in hal_rx_status_get_tlv_info_generic_rh()
713 hal_rx_populate_mu_user_info(rx_tlv, ppdu_info, in hal_rx_status_get_tlv_info_generic_rh()
721 ppdu_info->com_info.mpdu_fcs_ok_bitmap[2] = in hal_rx_status_get_tlv_info_generic_rh()
725 ppdu_info->com_info.mpdu_fcs_ok_bitmap[3] = in hal_rx_status_get_tlv_info_generic_rh()
729 ppdu_info->com_info.mpdu_fcs_ok_bitmap[4] = in hal_rx_status_get_tlv_info_generic_rh()
733 ppdu_info->com_info.mpdu_fcs_ok_bitmap[5] = in hal_rx_status_get_tlv_info_generic_rh()
737 ppdu_info->com_info.mpdu_fcs_ok_bitmap[6] = in hal_rx_status_get_tlv_info_generic_rh()
741 ppdu_info->com_info.mpdu_fcs_ok_bitmap[7] = in hal_rx_status_get_tlv_info_generic_rh()
759 ppdu_info->rx_status.ldpc = (value == HAL_SU_MU_CODING_LDPC) ? in hal_rx_status_get_tlv_info_generic_rh()
761 ppdu_info->rx_status.mcs = HAL_RX_GET(ht_sig_info, in hal_rx_status_get_tlv_info_generic_rh()
763 ppdu_info->rx_status.ht_mcs = ppdu_info->rx_status.mcs; in hal_rx_status_get_tlv_info_generic_rh()
764 ppdu_info->rx_status.bw = HAL_RX_GET(ht_sig_info, in hal_rx_status_get_tlv_info_generic_rh()
766 ppdu_info->rx_status.sgi = HAL_RX_GET(ht_sig_info, in hal_rx_status_get_tlv_info_generic_rh()
768 ppdu_info->rx_status.reception_type = HAL_RX_TYPE_SU; in hal_rx_status_get_tlv_info_generic_rh()
769 ppdu_info->rx_status.nss = ((ppdu_info->rx_status.mcs) >> in hal_rx_status_get_tlv_info_generic_rh()
771 ppdu_info->rx_status.mcs &= ((1 << HT_SIG_SU_NSS_SHIFT) - 1); in hal_rx_status_get_tlv_info_generic_rh()
772 hal_rx_get_ht_sig_info(ppdu_info, ht_sig_info); in hal_rx_status_get_tlv_info_generic_rh()
783 ppdu_info->rx_status.l_sig_b_info = *((uint32_t *)l_sig_b_info); in hal_rx_status_get_tlv_info_generic_rh()
786 ppdu_info->rx_status.rate = HAL_11B_RATE_3MCS; in hal_rx_status_get_tlv_info_generic_rh()
787 ppdu_info->rx_status.mcs = HAL_LEGACY_MCS3; in hal_rx_status_get_tlv_info_generic_rh()
790 ppdu_info->rx_status.rate = HAL_11B_RATE_2MCS; in hal_rx_status_get_tlv_info_generic_rh()
791 ppdu_info->rx_status.mcs = HAL_LEGACY_MCS2; in hal_rx_status_get_tlv_info_generic_rh()
794 ppdu_info->rx_status.rate = HAL_11B_RATE_1MCS; in hal_rx_status_get_tlv_info_generic_rh()
795 ppdu_info->rx_status.mcs = HAL_LEGACY_MCS1; in hal_rx_status_get_tlv_info_generic_rh()
798 ppdu_info->rx_status.rate = HAL_11B_RATE_0MCS; in hal_rx_status_get_tlv_info_generic_rh()
799 ppdu_info->rx_status.mcs = HAL_LEGACY_MCS0; in hal_rx_status_get_tlv_info_generic_rh()
802 ppdu_info->rx_status.rate = HAL_11B_RATE_6MCS; in hal_rx_status_get_tlv_info_generic_rh()
803 ppdu_info->rx_status.mcs = HAL_LEGACY_MCS6; in hal_rx_status_get_tlv_info_generic_rh()
806 ppdu_info->rx_status.rate = HAL_11B_RATE_5MCS; in hal_rx_status_get_tlv_info_generic_rh()
807 ppdu_info->rx_status.mcs = HAL_LEGACY_MCS5; in hal_rx_status_get_tlv_info_generic_rh()
810 ppdu_info->rx_status.rate = HAL_11B_RATE_4MCS; in hal_rx_status_get_tlv_info_generic_rh()
811 ppdu_info->rx_status.mcs = HAL_LEGACY_MCS4; in hal_rx_status_get_tlv_info_generic_rh()
816 ppdu_info->rx_status.cck_flag = 1; in hal_rx_status_get_tlv_info_generic_rh()
817 ppdu_info->rx_status.reception_type = HAL_RX_TYPE_SU; in hal_rx_status_get_tlv_info_generic_rh()
828 ppdu_info->rx_status.l_sig_a_info = *((uint32_t *)l_sig_a_info); in hal_rx_status_get_tlv_info_generic_rh()
831 ppdu_info->rx_status.rate = HAL_11A_RATE_0MCS; in hal_rx_status_get_tlv_info_generic_rh()
832 ppdu_info->rx_status.mcs = HAL_LEGACY_MCS0; in hal_rx_status_get_tlv_info_generic_rh()
835 ppdu_info->rx_status.rate = HAL_11A_RATE_1MCS; in hal_rx_status_get_tlv_info_generic_rh()
836 ppdu_info->rx_status.mcs = HAL_LEGACY_MCS1; in hal_rx_status_get_tlv_info_generic_rh()
839 ppdu_info->rx_status.rate = HAL_11A_RATE_2MCS; in hal_rx_status_get_tlv_info_generic_rh()
840 ppdu_info->rx_status.mcs = HAL_LEGACY_MCS2; in hal_rx_status_get_tlv_info_generic_rh()
843 ppdu_info->rx_status.rate = HAL_11A_RATE_3MCS; in hal_rx_status_get_tlv_info_generic_rh()
844 ppdu_info->rx_status.mcs = HAL_LEGACY_MCS3; in hal_rx_status_get_tlv_info_generic_rh()
847 ppdu_info->rx_status.rate = HAL_11A_RATE_4MCS; in hal_rx_status_get_tlv_info_generic_rh()
848 ppdu_info->rx_status.mcs = HAL_LEGACY_MCS4; in hal_rx_status_get_tlv_info_generic_rh()
851 ppdu_info->rx_status.rate = HAL_11A_RATE_5MCS; in hal_rx_status_get_tlv_info_generic_rh()
852 ppdu_info->rx_status.mcs = HAL_LEGACY_MCS5; in hal_rx_status_get_tlv_info_generic_rh()
855 ppdu_info->rx_status.rate = HAL_11A_RATE_6MCS; in hal_rx_status_get_tlv_info_generic_rh()
856 ppdu_info->rx_status.mcs = HAL_LEGACY_MCS6; in hal_rx_status_get_tlv_info_generic_rh()
859 ppdu_info->rx_status.rate = HAL_11A_RATE_7MCS; in hal_rx_status_get_tlv_info_generic_rh()
860 ppdu_info->rx_status.mcs = HAL_LEGACY_MCS7; in hal_rx_status_get_tlv_info_generic_rh()
865 ppdu_info->rx_status.ofdm_flag = 1; in hal_rx_status_get_tlv_info_generic_rh()
866 ppdu_info->rx_status.reception_type = HAL_RX_TYPE_SU; in hal_rx_status_get_tlv_info_generic_rh()
867 hal_rx_get_l_sig_a_info(ppdu_info, l_sig_a_info); in hal_rx_status_get_tlv_info_generic_rh()
879 ppdu_info->rx_status.ldpc = (value == HAL_SU_MU_CODING_LDPC) ? in hal_rx_status_get_tlv_info_generic_rh()
883 ppdu_info->rx_status.vht_flag_values5 = group_id; in hal_rx_status_get_tlv_info_generic_rh()
884 ppdu_info->rx_status.mcs = HAL_RX_GET(vht_sig_a_info, in hal_rx_status_get_tlv_info_generic_rh()
886 ppdu_info->rx_status.sgi = HAL_RX_GET(vht_sig_a_info, in hal_rx_status_get_tlv_info_generic_rh()
900 ppdu_info->rx_status.is_stbc = in hal_rx_status_get_tlv_info_generic_rh()
906 if (ppdu_info->rx_status.is_stbc && (value > 0)) in hal_rx_status_get_tlv_info_generic_rh()
908 ppdu_info->rx_status.nss = in hal_rx_status_get_tlv_info_generic_rh()
914 ppdu_info->rx_status.is_stbc = in hal_rx_status_get_tlv_info_generic_rh()
920 if (ppdu_info->rx_status.is_stbc && (value > 0)) in hal_rx_status_get_tlv_info_generic_rh()
922 ppdu_info->rx_status.nss = in hal_rx_status_get_tlv_info_generic_rh()
925 ppdu_info->rx_status.nss = 0; in hal_rx_status_get_tlv_info_generic_rh()
929 ppdu_info->rx_status.nss = 0; in hal_rx_status_get_tlv_info_generic_rh()
934 ppdu_info->rx_status.vht_flag_values3[0] = in hal_rx_status_get_tlv_info_generic_rh()
935 (((ppdu_info->rx_status.mcs) << 4) in hal_rx_status_get_tlv_info_generic_rh()
936 | ppdu_info->rx_status.nss); in hal_rx_status_get_tlv_info_generic_rh()
937 ppdu_info->rx_status.bw = HAL_RX_GET(vht_sig_a_info, in hal_rx_status_get_tlv_info_generic_rh()
939 ppdu_info->rx_status.vht_flag_values2 = in hal_rx_status_get_tlv_info_generic_rh()
940 ppdu_info->rx_status.bw; in hal_rx_status_get_tlv_info_generic_rh()
941 ppdu_info->rx_status.vht_flag_values4 = in hal_rx_status_get_tlv_info_generic_rh()
945 ppdu_info->rx_status.beamformed = HAL_RX_GET(vht_sig_a_info, in hal_rx_status_get_tlv_info_generic_rh()
948 ppdu_info->rx_status.reception_type = HAL_RX_TYPE_SU; in hal_rx_status_get_tlv_info_generic_rh()
950 ppdu_info->rx_status.reception_type = in hal_rx_status_get_tlv_info_generic_rh()
953 hal_rx_get_vht_sig_a_info(ppdu_info, vht_sig_a_info); in hal_rx_status_get_tlv_info_generic_rh()
961 ppdu_info->rx_status.he_flags = 1; in hal_rx_status_get_tlv_info_generic_rh()
965 ppdu_info->rx_status.he_data1 = in hal_rx_status_get_tlv_info_generic_rh()
968 ppdu_info->rx_status.he_data1 = in hal_rx_status_get_tlv_info_generic_rh()
973 ppdu_info->rx_status.he_data1 |= in hal_rx_status_get_tlv_info_generic_rh()
986 ppdu_info->rx_status.he_data2 = in hal_rx_status_get_tlv_info_generic_rh()
988 ppdu_info->rx_status.he_data2 |= in hal_rx_status_get_tlv_info_generic_rh()
999 ppdu_info->rx_status.he_data3 = value; in hal_rx_status_get_tlv_info_generic_rh()
1003 ppdu_info->rx_status.he_data3 |= value; in hal_rx_status_get_tlv_info_generic_rh()
1007 ppdu_info->rx_status.he_data3 |= value; in hal_rx_status_get_tlv_info_generic_rh()
1011 ppdu_info->rx_status.mcs = value; in hal_rx_status_get_tlv_info_generic_rh()
1013 ppdu_info->rx_status.he_data3 |= value; in hal_rx_status_get_tlv_info_generic_rh()
1019 ppdu_info->rx_status.he_data3 |= value; in hal_rx_status_get_tlv_info_generic_rh()
1022 ppdu_info->rx_status.ldpc = (value == HAL_SU_MU_CODING_LDPC) ? in hal_rx_status_get_tlv_info_generic_rh()
1025 ppdu_info->rx_status.he_data3 |= value; in hal_rx_status_get_tlv_info_generic_rh()
1030 ppdu_info->rx_status.he_data3 |= value; in hal_rx_status_get_tlv_info_generic_rh()
1035 ppdu_info->rx_status.he_data3 |= value; in hal_rx_status_get_tlv_info_generic_rh()
1040 ppdu_info->rx_status.he_data4 = value; in hal_rx_status_get_tlv_info_generic_rh()
1045 ppdu_info->rx_status.he_data5 = value; in hal_rx_status_get_tlv_info_generic_rh()
1046 ppdu_info->rx_status.bw = value; in hal_rx_status_get_tlv_info_generic_rh()
1072 ppdu_info->rx_status.sgi = he_gi; in hal_rx_status_get_tlv_info_generic_rh()
1073 ppdu_info->rx_status.ltf_size = he_ltf; in hal_rx_status_get_tlv_info_generic_rh()
1076 ppdu_info->rx_status.he_data5 |= value; in hal_rx_status_get_tlv_info_generic_rh()
1078 ppdu_info->rx_status.he_data5 |= value; in hal_rx_status_get_tlv_info_generic_rh()
1082 ppdu_info->rx_status.he_data5 |= value; in hal_rx_status_get_tlv_info_generic_rh()
1087 ppdu_info->rx_status.he_data5 |= value; in hal_rx_status_get_tlv_info_generic_rh()
1091 ppdu_info->rx_status.he_data5 |= value; in hal_rx_status_get_tlv_info_generic_rh()
1095 ppdu_info->rx_status.he_data5 |= value; in hal_rx_status_get_tlv_info_generic_rh()
1100 ppdu_info->rx_status.nss = value; in hal_rx_status_get_tlv_info_generic_rh()
1101 ppdu_info->rx_status.he_data6 = value; in hal_rx_status_get_tlv_info_generic_rh()
1105 ppdu_info->rx_status.he_data6 |= value; in hal_rx_status_get_tlv_info_generic_rh()
1109 ppdu_info->rx_status.he_data6 |= value; in hal_rx_status_get_tlv_info_generic_rh()
1111 ppdu_info->rx_status.beamformed = HAL_RX_GET(he_sig_a_su_info, in hal_rx_status_get_tlv_info_generic_rh()
1113 ppdu_info->rx_status.reception_type = HAL_RX_TYPE_SU; in hal_rx_status_get_tlv_info_generic_rh()
1114 hal_rx_get_crc_he_sig_a_su_info(ppdu_info, he_sig_a_su_info); in hal_rx_status_get_tlv_info_generic_rh()
1123 ppdu_info->rx_status.he_mu_flags = 1; in hal_rx_status_get_tlv_info_generic_rh()
1127 ppdu_info->rx_status.he_data1 = in hal_rx_status_get_tlv_info_generic_rh()
1129 ppdu_info->rx_status.he_data1 |= in hal_rx_status_get_tlv_info_generic_rh()
1138 ppdu_info->rx_status.he_data2 = in hal_rx_status_get_tlv_info_generic_rh()
1140 ppdu_info->rx_status.he_data2 |= in hal_rx_status_get_tlv_info_generic_rh()
1150 ppdu_info->rx_status.he_data3 = value; in hal_rx_status_get_tlv_info_generic_rh()
1155 ppdu_info->rx_status.he_data3 |= value; in hal_rx_status_get_tlv_info_generic_rh()
1161 ppdu_info->rx_status.he_data3 |= value; in hal_rx_status_get_tlv_info_generic_rh()
1167 ppdu_info->rx_status.he_data3 |= value; in hal_rx_status_get_tlv_info_generic_rh()
1172 ppdu_info->rx_status.he_data4 = value; in hal_rx_status_get_tlv_info_generic_rh()
1177 ppdu_info->rx_status.he_data5 = value; in hal_rx_status_get_tlv_info_generic_rh()
1178 ppdu_info->rx_status.bw = value; in hal_rx_status_get_tlv_info_generic_rh()
1200 ppdu_info->rx_status.sgi = he_gi; in hal_rx_status_get_tlv_info_generic_rh()
1201 ppdu_info->rx_status.ltf_size = he_ltf; in hal_rx_status_get_tlv_info_generic_rh()
1204 ppdu_info->rx_status.he_data5 |= value; in hal_rx_status_get_tlv_info_generic_rh()
1207 ppdu_info->rx_status.he_data5 |= value; in hal_rx_status_get_tlv_info_generic_rh()
1212 ppdu_info->rx_status.he_data5 |= value; in hal_rx_status_get_tlv_info_generic_rh()
1217 ppdu_info->rx_status.he_data5 |= value; in hal_rx_status_get_tlv_info_generic_rh()
1222 ppdu_info->rx_status.he_data5 |= value; in hal_rx_status_get_tlv_info_generic_rh()
1228 ppdu_info->rx_status.he_data6 |= value; in hal_rx_status_get_tlv_info_generic_rh()
1233 ppdu_info->rx_status.he_data6 |= value; in hal_rx_status_get_tlv_info_generic_rh()
1237 ppdu_info->rx_status.he_flags1 = in hal_rx_status_get_tlv_info_generic_rh()
1246 ppdu_info->rx_status.he_flags1 |= value; in hal_rx_status_get_tlv_info_generic_rh()
1250 ppdu_info->rx_status.he_flags1 |= value; in hal_rx_status_get_tlv_info_generic_rh()
1253 ppdu_info->rx_status.he_flags2 = in hal_rx_status_get_tlv_info_generic_rh()
1258 ppdu_info->rx_status.he_flags2 |= value; in hal_rx_status_get_tlv_info_generic_rh()
1262 ppdu_info->rx_status.he_flags2 |= value; in hal_rx_status_get_tlv_info_generic_rh()
1267 ppdu_info->rx_status.he_flags2 |= value; in hal_rx_status_get_tlv_info_generic_rh()
1268 ppdu_info->rx_status.reception_type = HAL_RX_TYPE_MU_MIMO; in hal_rx_status_get_tlv_info_generic_rh()
1269 hal_rx_get_crc_he_sig_a_mu_dl_info(ppdu_info, in hal_rx_status_get_tlv_info_generic_rh()
1279 ppdu_info->rx_status.he_sig_b_common_known |= in hal_rx_status_get_tlv_info_generic_rh()
1287 ppdu_info->rx_status.he_RU[0] = value; in hal_rx_status_get_tlv_info_generic_rh()
1288 ppdu_info->rx_status.reception_type = HAL_RX_TYPE_MU_MIMO; in hal_rx_status_get_tlv_info_generic_rh()
1303 ppdu_info->rx_status.he_data1 |= in hal_rx_status_get_tlv_info_generic_rh()
1312 ppdu_info->rx_status.mcs = value; in hal_rx_status_get_tlv_info_generic_rh()
1314 ppdu_info->rx_status.he_data3 |= value; in hal_rx_status_get_tlv_info_generic_rh()
1319 ppdu_info->rx_status.he_data3 |= value; in hal_rx_status_get_tlv_info_generic_rh()
1325 ppdu_info->rx_status.he_data4 |= value; in hal_rx_status_get_tlv_info_generic_rh()
1334 ppdu_info->rx_status.nss = value; in hal_rx_status_get_tlv_info_generic_rh()
1335 ppdu_info->rx_status.he_data6 |= value; in hal_rx_status_get_tlv_info_generic_rh()
1353 ppdu_info->rx_status.he_data1 |= in hal_rx_status_get_tlv_info_generic_rh()
1359 ppdu_info->rx_status.he_data2 |= in hal_rx_status_get_tlv_info_generic_rh()
1365 ppdu_info->rx_status.mcs = value; in hal_rx_status_get_tlv_info_generic_rh()
1367 ppdu_info->rx_status.he_data3 |= value; in hal_rx_status_get_tlv_info_generic_rh()
1373 ppdu_info->rx_status.he_data3 |= value; in hal_rx_status_get_tlv_info_generic_rh()
1378 ppdu_info->rx_status.he_data3 |= value; in hal_rx_status_get_tlv_info_generic_rh()
1384 ppdu_info->rx_status.he_data4 |= value; in hal_rx_status_get_tlv_info_generic_rh()
1390 ppdu_info->rx_status.he_data5 |= value; in hal_rx_status_get_tlv_info_generic_rh()
1397 ppdu_info->rx_status.nss = value; in hal_rx_status_get_tlv_info_generic_rh()
1398 ppdu_info->rx_status.he_data6 |= value; in hal_rx_status_get_tlv_info_generic_rh()
1399 ppdu_info->rx_status.reception_type = HAL_RX_TYPE_MU_OFDMA; in hal_rx_status_get_tlv_info_generic_rh()
1410 ppdu_info->rx_status.rssi_comb = HAL_RX_GET(rx_tlv, in hal_rx_status_get_tlv_info_generic_rh()
1412 ppdu_info->rx_status.bw = hal->ops->hal_rx_get_tlv(rx_tlv); in hal_rx_status_get_tlv_info_generic_rh()
1413 ppdu_info->rx_status.he_re = 0; in hal_rx_status_get_tlv_info_generic_rh()
1420 ppdu_info->rx_status.reception_type = in hal_rx_status_get_tlv_info_generic_rh()
1422 ppdu_info->rx_status.ulofdma_flag = 1; in hal_rx_status_get_tlv_info_generic_rh()
1423 ppdu_info->rx_status.he_data1 = in hal_rx_status_get_tlv_info_generic_rh()
1427 ppdu_info->rx_status.reception_type = in hal_rx_status_get_tlv_info_generic_rh()
1429 ppdu_info->rx_status.he_data1 = in hal_rx_status_get_tlv_info_generic_rh()
1433 ppdu_info->rx_status.reception_type = in hal_rx_status_get_tlv_info_generic_rh()
1437 hal_rx_update_rssi_chain(ppdu_info, rssi_info_tlv); in hal_rx_status_get_tlv_info_generic_rh()
1440 ppdu_info->rx_status.rssi[0] = rssi_value; in hal_rx_status_get_tlv_info_generic_rh()
1445 ppdu_info->rx_status.rssi[1] = rssi_value; in hal_rx_status_get_tlv_info_generic_rh()
1450 ppdu_info->rx_status.rssi[2] = rssi_value; in hal_rx_status_get_tlv_info_generic_rh()
1455 ppdu_info->rx_status.rssi[3] = rssi_value; in hal_rx_status_get_tlv_info_generic_rh()
1460 ppdu_info->rx_status.rssi[4] = rssi_value; in hal_rx_status_get_tlv_info_generic_rh()
1466 ppdu_info->rx_status.rssi[5] = rssi_value; in hal_rx_status_get_tlv_info_generic_rh()
1472 ppdu_info->rx_status.rssi[6] = rssi_value; in hal_rx_status_get_tlv_info_generic_rh()
1478 ppdu_info->rx_status.rssi[7] = rssi_value; in hal_rx_status_get_tlv_info_generic_rh()
1484 ppdu_info); in hal_rx_status_get_tlv_info_generic_rh()
1488 struct hal_rx_ppdu_common_info *com_info = &ppdu_info->com_info; in hal_rx_status_get_tlv_info_generic_rh()
1490 if (ppdu_info->fcs_ok_cnt >= in hal_rx_status_get_tlv_info_generic_rh()
1493 ppdu_info->fcs_ok_cnt); in hal_rx_status_get_tlv_info_generic_rh()
1500 ppdu_info->ppdu_msdu_info[ppdu_info->fcs_ok_cnt].first_msdu_payload = in hal_rx_status_get_tlv_info_generic_rh()
1502 ppdu_info->ppdu_msdu_info[ppdu_info->fcs_ok_cnt].payload_len = tlv_len; in hal_rx_status_get_tlv_info_generic_rh()
1503 ppdu_info->msdu_info.first_msdu_payload = rx_tlv; in hal_rx_status_get_tlv_info_generic_rh()
1504 ppdu_info->msdu_info.payload_len = tlv_len; in hal_rx_status_get_tlv_info_generic_rh()
1505 ppdu_info->user_id = user_id; in hal_rx_status_get_tlv_info_generic_rh()
1506 ppdu_info->hdr_len = tlv_len; in hal_rx_status_get_tlv_info_generic_rh()
1507 ppdu_info->data = rx_tlv; in hal_rx_status_get_tlv_info_generic_rh()
1508 ppdu_info->data += 4; in hal_rx_status_get_tlv_info_generic_rh()
1520 hal_update_frame_type_cnt(rx_mpdu_start, ppdu_info); in hal_rx_status_get_tlv_info_generic_rh()
1522 ppdu_info->nac_info.fc_valid = in hal_rx_status_get_tlv_info_generic_rh()
1525 ppdu_info->nac_info.to_ds_flag = in hal_rx_status_get_tlv_info_generic_rh()
1528 ppdu_info->nac_info.frame_control = in hal_rx_status_get_tlv_info_generic_rh()
1533 ppdu_info->sw_frame_group_id = in hal_rx_status_get_tlv_info_generic_rh()
1536 ppdu_info->rx_user_status[user_id].sw_peer_id = in hal_rx_status_get_tlv_info_generic_rh()
1539 if (ppdu_info->sw_frame_group_id == in hal_rx_status_get_tlv_info_generic_rh()
1541 ppdu_info->rx_status.frame_control_info_valid = in hal_rx_status_get_tlv_info_generic_rh()
1542 ppdu_info->nac_info.fc_valid; in hal_rx_status_get_tlv_info_generic_rh()
1543 ppdu_info->rx_status.frame_control = in hal_rx_status_get_tlv_info_generic_rh()
1544 ppdu_info->nac_info.frame_control; in hal_rx_status_get_tlv_info_generic_rh()
1548 ppdu_info); in hal_rx_status_get_tlv_info_generic_rh()
1550 ppdu_info->nac_info.mac_addr2_valid = in hal_rx_status_get_tlv_info_generic_rh()
1553 *(uint16_t *)&ppdu_info->nac_info.mac_addr2[0] = in hal_rx_status_get_tlv_info_generic_rh()
1558 *(uint32_t *)&ppdu_info->nac_info.mac_addr2[2] = in hal_rx_status_get_tlv_info_generic_rh()
1563 if (ppdu_info->rx_status.prev_ppdu_id != ppdu_id) { in hal_rx_status_get_tlv_info_generic_rh()
1564 ppdu_info->rx_status.prev_ppdu_id = ppdu_id; in hal_rx_status_get_tlv_info_generic_rh()
1565 ppdu_info->rx_status.ppdu_len = in hal_rx_status_get_tlv_info_generic_rh()
1569 ppdu_info->rx_status.ppdu_len += in hal_rx_status_get_tlv_info_generic_rh()
1578 ppdu_info->rx_status.rxpcu_filter_pass = 1; in hal_rx_status_get_tlv_info_generic_rh()
1580 ppdu_info->rx_status.monitor_direct_used = 1; in hal_rx_status_get_tlv_info_generic_rh()
1582 ppdu_info->nac_info.mcast_bcast = in hal_rx_status_get_tlv_info_generic_rh()
1589 ppdu_info->user_id = user_id; in hal_rx_status_get_tlv_info_generic_rh()
1590 ppdu_info->fcs_err = in hal_rx_status_get_tlv_info_generic_rh()
1596 ppdu_info->rx_msdu_info[user_id].cce_metadata = in hal_rx_status_get_tlv_info_generic_rh()
1598 ppdu_info->rx_msdu_info[user_id].fse_metadata = in hal_rx_status_get_tlv_info_generic_rh()
1600 ppdu_info->rx_msdu_info[user_id].is_flow_idx_timeout = in hal_rx_status_get_tlv_info_generic_rh()
1602 ppdu_info->rx_msdu_info[user_id].is_flow_idx_invalid = in hal_rx_status_get_tlv_info_generic_rh()
1604 ppdu_info->rx_msdu_info[user_id].flow_idx = in hal_rx_status_get_tlv_info_generic_rh()
1612 if (hal_rx_handle_other_tlvs(tlv_tag, rx_tlv, ppdu_info)) in hal_rx_status_get_tlv_info_generic_rh()