[MERGED] osmo-bts[master]: tx_power: Change PA calibration tables to use delta vales

This is merely a historical archive of years 2008-2021, before the migration to mailman3.

A maintained and still updated list archive can be found at https://lists.osmocom.org/hyperkitty/list/gerrit-log@lists.osmocom.org/.

Harald Welte gerrit-no-reply at lists.osmocom.org
Tue Feb 7 20:27:04 UTC 2017


Harald Welte has submitted this change and it was merged.

Change subject: tx_power: Change PA calibration tables to use delta vales
......................................................................


tx_power: Change PA calibration tables to use delta vales

It seems more user friendly to look at a calibration table in terms of
the delta (positive or negative) compared to the nominal gain value,
rather than a collection of absolute gain values.  It has the added
benefit that the (API/data model) user doesn't have to specify a gain
value for each ARFCN, but rather can rely on the default nominal gain in
absence of a calibration table for this specific unit.

Change-Id: I7311815902a88d2fc9d211cf4c62fa6fdc5e86ad
---
M include/osmo-bts/tx_power.h
M src/common/tx_power.c
2 files changed, 3 insertions(+), 3 deletions(-)

Approvals:
  Harald Welte: Looks good to me, approved
  Jenkins Builder: Verified



diff --git a/include/osmo-bts/tx_power.h b/include/osmo-bts/tx_power.h
index 1d76864..8d099bc 100644
--- a/include/osmo-bts/tx_power.h
+++ b/include/osmo-bts/tx_power.h
@@ -8,7 +8,7 @@
 
 /* PA calibration table */
 struct pa_calibration {
-	int gain_mdB[1024];		/* gain provided at given ARFCN */
+	int delta_mdB[1024];		/* gain delta at given ARFCN */
 	/* FIXME: thermal calibration */
 };
 
diff --git a/src/common/tx_power.c b/src/common/tx_power.c
index f8adb6a..c517918 100644
--- a/src/common/tx_power.c
+++ b/src/common/tx_power.c
@@ -33,12 +33,12 @@
 static int get_pa_drive_level_mdBm(const struct power_amp *pa,
 		       int desired_p_out_mdBm, unsigned int arfcn)
 {
-	if (arfcn >= ARRAY_SIZE(pa->calib.gain_mdB))
+	if (arfcn >= ARRAY_SIZE(pa->calib.delta_mdB))
 		return INT_MIN;
 
 	/* FIXME: temperature compensation */
 
-	return desired_p_out_mdBm - pa->calib.gain_mdB[arfcn];
+	return desired_p_out_mdBm - pa->nominal_gain_mdB - pa->calib.delta_mdB[arfcn];
 }
 
 /* maximum output power of the system */

-- 
To view, visit https://gerrit.osmocom.org/1765
To unsubscribe, visit https://gerrit.osmocom.org/settings

Gerrit-MessageType: merged
Gerrit-Change-Id: I7311815902a88d2fc9d211cf4c62fa6fdc5e86ad
Gerrit-PatchSet: 1
Gerrit-Project: osmo-bts
Gerrit-Branch: master
Gerrit-Owner: Harald Welte <laforge at gnumonks.org>
Gerrit-Reviewer: Harald Welte <laforge at gnumonks.org>
Gerrit-Reviewer: Jenkins Builder



More information about the gerrit-log mailing list