From b95a7ccd911902be2f037486c1b4cc7f0566c8a1 Mon Sep 17 00:00:00 2001 From: Andreas Eversberg Date: Mon, 13 Jan 2014 14:52:05 +0100 Subject: TRX: Activate LCHAN of CCCH when CCCH is configured on time slot --- src/osmo-bts-trx/l1_if.c | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/src/osmo-bts-trx/l1_if.c b/src/osmo-bts-trx/l1_if.c index ca0f7cbc..4021b70a 100644 --- a/src/osmo-bts-trx/l1_if.c +++ b/src/osmo-bts-trx/l1_if.c @@ -263,10 +263,16 @@ static int trx_init(struct gsm_bts_trx *trx) int bts_model_trx_close(struct gsm_bts_trx *trx) { struct trx_l1h *l1h = trx_l1h_hdl(trx); + enum gsm_phys_chan_config pchan = trx->ts[0].pchan; /* close all logical channels and reset timeslots */ trx_sched_reset(l1h); + /* deactivate lchan for CCCH */ + if (pchan == GSM_PCHAN_CCCH || pchan == GSM_PCHAN_CCCH_SDCCH4) { + lchan_set_state(&trx->ts[0].lchan[4], LCHAN_S_INACTIVE); + } + /* power off transceiver, if not already */ if (l1h->config.poweron) { l1h->config.poweron = 0; @@ -368,6 +374,12 @@ static uint8_t trx_set_ts(struct gsm_bts_trx_ts *ts) if (rc) return NM_NACK_RES_NOTAVAIL; + /* activate lchan for CCCH */ + if (pchan == GSM_PCHAN_CCCH || pchan == GSM_PCHAN_CCCH_SDCCH4) { + ts->lchan[4].rel_act_kind = LCHAN_REL_ACT_OML; + lchan_set_state(&ts->lchan[4], LCHAN_S_ACTIVE); + } + slottype = transceiver_chan_types[pchan]; if (l1h->config.slottype[tn] != slottype -- cgit v1.2.3