aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAndreas Eversberg <jolly@eversberg.eu>2013-07-08 18:34:14 +0200
committerHarald Welte <laforge@gnumonks.org>2015-09-22 16:41:24 +0200
commit5fa388c366b19f753462a19776a59845b7dc5540 (patch)
tree901dfb7d9f00f57e3392b6212e1eb6fdfc10b0a4
parent75f105bbb5011a04e599cbc8f053afb723582364 (diff)
Fix: Process all TRX on GSM Time indication, not only C0
-rw-r--r--src/common/l1sap.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/src/common/l1sap.c b/src/common/l1sap.c
index 1cb752e3..b568cf01 100644
--- a/src/common/l1sap.c
+++ b/src/common/l1sap.c
@@ -278,11 +278,11 @@ static int to_gsmtap(struct gsm_bts_trx *trx, struct osmo_phsap_prim *l1sap)
}
/* time information received from bts model */
-static int l1sap_info_time_ind(struct gsm_bts_trx *trx,
+static int l1sap_info_time_ind(struct gsm_bts *bts,
struct osmo_phsap_prim *l1sap,
struct info_time_ind_param *info_time_ind)
{
- struct gsm_bts *bts = trx->bts;
+ struct gsm_bts_trx *trx;
struct gsm_bts_role_bts *btsb = bts->role;
int frames_expired = info_time_ind->fn - btsb->gsm_time.fn;
@@ -297,7 +297,8 @@ static int l1sap_info_time_ind(struct gsm_bts_trx *trx,
/* check if the measurement period of some lchan has ended
* and pre-compute the respective measurement */
- trx_meas_check_compute(trx, info_time_ind->fn - 1);
+ llist_for_each_entry(trx, &bts->trx_list, list)
+ trx_meas_check_compute(trx, info_time_ind->fn - 1);
/* increment number of RACH slots that have passed by since the
* last time indication */
@@ -352,7 +353,7 @@ static int l1sap_mph_info_ind(struct gsm_bts_trx *trx,
switch (info->type) {
case PRIM_INFO_TIME:
- rc = l1sap_info_time_ind(trx, l1sap, &info->u.time_ind);
+ rc = l1sap_info_time_ind(trx->bts, l1sap, &info->u.time_ind);
break;
case PRIM_INFO_MEAS:
rc = l1sap_info_meas_ind(trx, l1sap, &info->u.meas_ind);