aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAndreas Eversberg <jolly@eversberg.eu>2013-07-08 18:34:14 +0200
committerAndreas Eversberg <jolly@eversberg.eu>2014-01-21 15:54:39 +0100
commit9da008a8e90b05beb1ba60b0639c9c3b7cd6b97e (patch)
tree3983feeeada1e16e7809fee54a97d068b8b54b2a
parent9aedb2491bb316c9e038567ceb9fa88d3fb45a3a (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 35a0773b..dd60ea89 100644
--- a/src/common/l1sap.c
+++ b/src/common/l1sap.c
@@ -279,11 +279,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;
DEBUGP(DL1P, "MPH_INFO time ind %u\n", info_time_ind->fn);
@@ -296,7 +296,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 'total' for every possible rach */
if (bts->c0->ts[0].pchan != GSM_PCHAN_CCCH_SDCCH4
@@ -343,7 +344,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);