[MERGED] osmo-bts[master]: measurement: exclude idle channels from uplink measurement

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
Wed May 24 22:19:02 UTC 2017


Harald Welte has submitted this change and it was merged.

Change subject: measurement: exclude idle channels from uplink measurement
......................................................................


measurement: exclude idle channels from uplink measurement

The DATA-IND, received from the physical layer does not only include the actual
uplink data. It also includes the frames which are received when the channel
is idle (which is just noise). This would falsify the measurement results.

Depending on the BTS model, the phy may also filter the idle frames and not
send a DATA-IND at all, when the channel is idle. If this is the case, the
measurement period end can not be detected properly.

The idle frames are located at the very end of each measurement period. In
order to fix the issue, the measurement perioud has to end early. For TCH/F and
TCH/H 1, one frame has to be skipped. For TCH/H 0 two frames are skipped.

Example: For a TCH/F in TS0, the Measurement perioud would end at frame number
103. However, 103 is reserverd as idle frame. So we need to detect the end of
the measurement period at frame number 103 (-1).

Change-Id: I471a767c7974bdacadc3233d0c3e7b7965f6eafa
---
M src/common/measurement.c
1 file changed, 29 insertions(+), 24 deletions(-)

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



diff --git a/src/common/measurement.c b/src/common/measurement.c
index 260304a..22ab27c 100644
--- a/src/common/measurement.c
+++ b/src/common/measurement.c
@@ -24,35 +24,40 @@
  * 7                         6 and 7        91 to 90     103, 25,  51,  77 */
 
 /* measurement period ends at fn % 104 == ? */
+/* Added (-1) offset in DATA-IND frame number to align with Meas period ends */
 static const uint8_t tchf_meas_rep_fn104[] = {
-	[0] =	103,
-	[1] =	12,
-	[2] =	25,
-	[3] =	38,
-	[4] =	51,
-	[5] =	64,
-	[6] =	77,
-	[7] =	90,
+	[0] =	103 - 1,
+	[1] =	12 - 1,
+	[2] =	25 - 1,
+	[3] =	38 - 1,
+	[4] =	51 - 1,
+	[5] =	64 - 1,
+	[6] =	77 - 1,
+	[7] =	90 - 1,
 };
+
+/* Added (-2) offset in DATA-IND frame number to align with Meas period ends */
 static const uint8_t tchh0_meas_rep_fn104[] = {
-	[0] =	103,
-	[1] =	103,
-	[2] =	25,
-	[3] =	25,
-	[4] =	51,
-	[5] =	51,
-	[6] =	77,
-	[7] =	77,
+	[0] =	103 - 2,
+	[1] =	103 - 2,
+	[2] =	25 - 2,
+	[3] =	25 - 2,
+	[4] =	51 - 2,
+	[5] =	51 - 2,
+	[6] =	77 - 2,
+	[7] =	77 - 2,
 };
+
+/* Added (-1) offset in DATA-IND frame number to align with Meas period ends */
 static const uint8_t tchh1_meas_rep_fn104[] = {
-	[0] =	12,
-	[1] =	12,
-	[2] =	38,
-	[3] =	38,
-	[4] =	64,
-	[5] =	64,
-	[6] =	90,
-	[7] =	90,
+	[0] =	12 - 1,
+	[1] =	12 - 1,
+	[2] =	38 - 1,
+	[3] =	38 - 1,
+	[4] =	64 - 1,
+	[5] =	64 - 1,
+	[6] =	90 - 1,
+	[7] =	90 - 1,
 };
 
 /* Measurment reporting period for SDCCH8 and SDCCH4 chan

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

Gerrit-MessageType: merged
Gerrit-Change-Id: I471a767c7974bdacadc3233d0c3e7b7965f6eafa
Gerrit-PatchSet: 7
Gerrit-Project: osmo-bts
Gerrit-Branch: master
Gerrit-Owner: dexter <pmaier at sysmocom.de>
Gerrit-Reviewer: Harald Welte <laforge at gnumonks.org>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: dexter <pmaier at sysmocom.de>



More information about the gerrit-log mailing list