Browse Source

qcacmn: Populate BeamFormed info from VHT_SIG_A and HE_SIG_A

Populate Beamformed information from VHT_SIG_A and HE_SIG_A

Change-Id: Iba108f6f9905ed02490936c5ca2f00e0e94b318f
CRs-Fixed: 2185151
nobelj 7 years ago
parent
commit
d803959826
3 changed files with 8 additions and 0 deletions
  1. 1 0
      dp/inc/cdp_txrx_cmn_struct.h
  2. 1 0
      dp/wifi3.0/dp_rx_mon_status.c
  3. 6 0
      hal/wifi3.0/hal_api_mon.h

+ 1 - 0
dp/inc/cdp_txrx_cmn_struct.h

@@ -1123,6 +1123,7 @@ struct cdp_rx_indication_ppdu {
 	uint64_t timestamp;
 	uint32_t length;
 	uint8_t channel;
+	uint8_t beamformed;
 };
 
 /**

+ 1 - 0
dp/wifi3.0/dp_rx_mon_status.c

@@ -67,6 +67,7 @@ dp_rx_populate_cdp_indication_ppdu(struct dp_pdev *pdev,
 	cdp_rx_ppdu->rssi = ppdu_info->rx_status.rssi_comb;
 	cdp_rx_ppdu->timestamp = ppdu_info->rx_status.tsft;
 	cdp_rx_ppdu->channel = ppdu_info->rx_status.chan_num;
+	cdp_rx_ppdu->beamformed = ppdu_info->rx_status.beamformed;
 	cdp_rx_ppdu->num_msdu = (cdp_rx_ppdu->tcp_msdu_count +
 			cdp_rx_ppdu->udp_msdu_count +
 			cdp_rx_ppdu->other_msdu_count);

+ 6 - 0
hal/wifi3.0/hal_api_mon.h

@@ -737,6 +737,10 @@ hal_rx_status_get_tlv_info(void *rx_tlv, struct hal_rx_ppdu_info *ppdu_info)
 		ppdu_info->rx_status.vht_flag_values4 =
 			HAL_RX_GET(vht_sig_a_info,
 				  VHT_SIG_A_INFO_1, SU_MU_CODING);
+
+		ppdu_info->rx_status.beamformed = HAL_RX_GET(vht_sig_a_info,
+				VHT_SIG_A_INFO_1, BEAMFORMED);
+
 		break;
 	}
 	case WIFIPHYRX_HE_SIG_A_SU_E:
@@ -885,6 +889,8 @@ hal_rx_status_get_tlv_info(void *rx_tlv, struct hal_rx_ppdu_info *ppdu_info)
 		value = value << QDF_MON_STATUS_TXOP_SHIFT;
 		ppdu_info->rx_status.he_data6 |= value;
 
+		ppdu_info->rx_status.beamformed = HAL_RX_GET(he_sig_a_su_info,
+					HE_SIG_A_SU_INFO_1, TXBF);
 		break;
 	}
 	case WIFIPHYRX_HE_SIG_A_MU_DL_E: