bts-trx: Fix assert hit when rf_locked in .cfg and TS TCH/F_PDCH
If TRX is administratively locked during startup, for TS conigured as TCH/F_PDCH the BSC will send a ACT PDCH message, but osmo-bts-trx won't apply it by signalling it as available to the PCU, since the TRX is locked. That means the ts->flags contains the pending action to activate it until it is unlocked. As a result, calling trx_set_ts() on it was hitting the assert inside which expects not to apply the TS until it has been confirmed by the PCU. Let's still skip setting the TS and let pcu_tx_info_ind() trigger the activation confirmation from PCU, since the TRX has just been unlocked. Fixes following assert: Assert failed (ts->flags & TS_F_PDCH_PENDING_MASK) == 0 /osmo-bts/src/osmo-bts-trx/l1_if.c:34 Change-Id: Ie3cad15d31870346d03a6e2f6dd32a9d2dd3067e
This commit is contained in:
parent
f30440553c
commit
eef420d1ca
|
@ -702,6 +702,13 @@ int bts_model_chg_adm_state(struct gsm_bts *bts, struct gsm_abis_mo *mo,
|
|||
* internally restore the old status here.
|
||||
*/
|
||||
ts->dyn.pchan_is = ts->dyn.pchan_want;
|
||||
} else if (ts->pchan == GSM_PCHAN_TCH_F_PDCH && ts->flags & TS_F_PDCH_PENDING_MASK) {
|
||||
/* TS configuration already in progress,
|
||||
* waiting for PCU response, let it be
|
||||
* de/activated later by PCU ACT CNF as a
|
||||
* response to pcu_tx_info_ind()
|
||||
*/
|
||||
continue;
|
||||
}
|
||||
trx_set_ts(ts);
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue