Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 924857a5 authored by Shwetha G K's avatar Shwetha G K Committed by Madan Koyyalamudi
Browse files

qcacmn: Populate additional params to CFR info

HAL changes to populate agc gain info, CFO and rx_start_ts
parameters to CFR info

Change-Id: I71ae6bf94095e82053d59114a6ae4bdb6b4586d2
parent 5a4758e1
Loading
Loading
Loading
Loading
+7 −1
Original line number Diff line number Diff line
/*
 * Copyright (c) 2017-2020 The Linux Foundation. All rights reserved.
 * Copyright (c) 2017-2021 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
@@ -601,6 +601,12 @@ struct hal_rx_ppdu_cfr_info {
	uint8_t rtt_che_buffer_pointer_high8;
	uint32_t rtt_che_buffer_pointer_low32;
	struct hal_rx_ppdu_cfr_user_info cfr_user_info[HAL_MAX_UL_MU_USERS];
	int16_t rtt_cfo_measurement;
	uint32_t agc_gain_info0;
	uint32_t agc_gain_info1;
	uint32_t agc_gain_info2;
	uint32_t agc_gain_info3;
	uint32_t rx_start_ts;
};
#else
struct hal_rx_ppdu_cfr_info {};
+31 −1
Original line number Diff line number Diff line
/*
 * Copyright (c) 2016-2020 The Linux Foundation. All rights reserved.
 * Copyright (c) 2016-2021 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
@@ -545,6 +545,36 @@ void hal_rx_get_rtt_info_8074v2(void *rx_tlv,
	HAL_RX_GET(rx_tlv,
		   PHYRX_PKT_END_13_RX_PKT_END_DETAILS_RX_LOCATION_INFO_DETAILS,
		   RESERVED_8);

	ppdu_info->cfr_info.rx_start_ts =
	HAL_RX_GET(rx_tlv,
		   PHYRX_PKT_END_9_RX_PKT_END_DETAILS_RX_LOCATION_INFO_DETAILS,
		   RX_START_TS);

	ppdu_info->cfr_info.rtt_cfo_measurement = (int16_t)
	HAL_RX_GET(rx_tlv,
		   PHYRX_PKT_END_13_RX_PKT_END_DETAILS_RX_LOCATION_INFO_DETAILS,
		   RTT_CFO_MEASUREMENT);

	ppdu_info->cfr_info.agc_gain_info0 =
	HAL_RX_GET(rx_tlv,
		   PHYRX_PKT_END_1_RX_PKT_END_DETAILS,
		   PHY_TIMESTAMP_1_LOWER_32);

	ppdu_info->cfr_info.agc_gain_info1 =
	HAL_RX_GET(rx_tlv,
		   PHYRX_PKT_END_2_RX_PKT_END_DETAILS,
		   PHY_TIMESTAMP_1_UPPER_32);

	ppdu_info->cfr_info.agc_gain_info2 =
	HAL_RX_GET(rx_tlv,
		   PHYRX_PKT_END_3_RX_PKT_END_DETAILS,
		   PHY_TIMESTAMP_2_LOWER_32);

	ppdu_info->cfr_info.agc_gain_info3 =
	HAL_RX_GET(rx_tlv,
		   PHYRX_PKT_END_4_RX_PKT_END_DETAILS,
		   PHY_TIMESTAMP_2_UPPER_32);
}
#endif

+31 −1
Original line number Diff line number Diff line
/*
 * Copyright (c) 2016-2020 The Linux Foundation. All rights reserved.
 * Copyright (c) 2016-2021 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
@@ -337,6 +337,36 @@ void hal_rx_get_rtt_info_9000(void *rx_tlv, void *ppdu_info_hdl)

	ppdu_info->cfr_info.chan_capture_status =
		GET_RX_LOCATION_INFO_CHAN_CAPTURE_STATUS(rx_tlv);

	ppdu_info->cfr_info.rx_start_ts =
	HAL_RX_GET(rx_tlv,
		   PHYRX_PKT_END_9_RX_PKT_END_DETAILS_RX_LOCATION_INFO_DETAILS,
		   RX_START_TS);

	ppdu_info->cfr_info.rtt_cfo_measurement = (int16_t)
	HAL_RX_GET(rx_tlv,
		   PHYRX_PKT_END_13_RX_PKT_END_DETAILS_RX_LOCATION_INFO_DETAILS,
		   RTT_CFO_MEASUREMENT);

	ppdu_info->cfr_info.agc_gain_info0 =
	HAL_RX_GET(rx_tlv,
		   PHYRX_PKT_END_1_RX_PKT_END_DETAILS,
		   PHY_TIMESTAMP_1_LOWER_32);

	ppdu_info->cfr_info.agc_gain_info1 =
	HAL_RX_GET(rx_tlv,
		   PHYRX_PKT_END_2_RX_PKT_END_DETAILS,
		   PHY_TIMESTAMP_1_UPPER_32);

	ppdu_info->cfr_info.agc_gain_info2 =
	HAL_RX_GET(rx_tlv,
		   PHYRX_PKT_END_3_RX_PKT_END_DETAILS,
		   PHY_TIMESTAMP_2_LOWER_32);

	ppdu_info->cfr_info.agc_gain_info3 =
	HAL_RX_GET(rx_tlv,
		   PHYRX_PKT_END_4_RX_PKT_END_DETAILS,
		   PHY_TIMESTAMP_2_UPPER_32);
}
#endif
/**