aboutsummaryrefslogtreecommitdiffstats
path: root/src/osmo-bsc/abis_rsl.c
diff options
context:
space:
mode:
authorKeith <keith@rhizomatica.org>2021-09-26 22:13:23 +0200
committerlaforge <laforge@osmocom.org>2021-09-28 18:54:18 +0000
commitb7c4d801ffb1494012042bd23d240dc198accb0c (patch)
treee6e22a951ad9f1bb8944f70edffb6a089bd565dc /src/osmo-bsc/abis_rsl.c
parentdf612507d656305d92e1bae12983af6d51ddf35c (diff)
Fix MEAS parsing, as Ericsson RBS reports TA shifted by 2 bits.
This fixes call setup issues when more than ~1km from the tower. NOTE: We use the last reported TA from the UE in the CHANnel ACTIVation. When the UE is more than 1km from the tower, (unshifted) TA in the measurement report can be 8 or greater. Once we send TA of 8 in the CHAN ACTIV message, the lchan is unrecoverable. Change-Id: I1c9bd5bf2fd126e62bcbec419f3499d2e0465559
Diffstat (limited to 'src/osmo-bsc/abis_rsl.c')
-rw-r--r--src/osmo-bsc/abis_rsl.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/osmo-bsc/abis_rsl.c b/src/osmo-bsc/abis_rsl.c
index c7399ebef..fb8e3867a 100644
--- a/src/osmo-bsc/abis_rsl.c
+++ b/src/osmo-bsc/abis_rsl.c
@@ -1319,9 +1319,10 @@ static int rsl_rx_meas_res(struct msgb *msg)
if (val[0] & 0x04)
mr->flags |= MEAS_REP_F_FPC;
mr->ms_l1.ta = val[1];
- /* BS11 and Nokia reports TA shifted by 2 bits */
+ /* BS11, Nokia and RBS report TA shifted by 2 bits */
if (msg->lchan->ts->trx->bts->type == GSM_BTS_TYPE_BS11
- || msg->lchan->ts->trx->bts->type == GSM_BTS_TYPE_NOKIA_SITE)
+ || msg->lchan->ts->trx->bts->type == GSM_BTS_TYPE_NOKIA_SITE
+ || msg->lchan->ts->trx->bts->type == GSM_BTS_TYPE_RBS2000)
mr->ms_l1.ta >>= 2;
/* store TA for handover decision, and for intra-cell re-assignment */
mr->lchan->last_ta = mr->ms_l1.ta;