aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPau Espin Pedrol <pespin@sysmocom.de>2023-03-17 15:45:37 +0100
committerPau Espin Pedrol <pespin@sysmocom.de>2023-03-17 17:02:47 +0100
commit767f690f058b6888109dd8b49e9116a20f2744c1 (patch)
treee8a2199287e8d45392f823e8b6daa630eb7fe2f4
parent48b00783f8f12b36877c8b058d578cbf11a27ed7 (diff)
Avoid tx RF Resource Ind for disabled TRX
-rw-r--r--src/common/bts_trx.c11
-rw-r--r--src/common/l1sap.c3
2 files changed, 10 insertions, 4 deletions
diff --git a/src/common/bts_trx.c b/src/common/bts_trx.c
index fce1d026..280880fc 100644
--- a/src/common/bts_trx.c
+++ b/src/common/bts_trx.c
@@ -227,10 +227,13 @@ int trx_link_estab(struct gsm_bts_trx *trx)
osmo_fsm_inst_dispatch(trx->mo.fi, NM_EV_RSL_UP, NULL);
osmo_fsm_inst_dispatch(trx->bb_transc.mo.fi, NM_EV_RSL_UP, NULL);
- if ((rc = rsl_tx_rf_res(trx)) < 0)
- oml_tx_failure_event_rep(&trx->bb_transc.mo, NM_SEVER_MAJOR, OSMO_EVT_MAJ_RSL_FAIL,
- "Failed to establish RSL link (%d)", rc);
-
+ if (trx->mo.nm_state.operational == NM_OPSTATE_ENABLED ||
+ trx->bb_transc.mo.nm_state.operational == NM_OPSTATE_ENABLED) {
+ rc = rsl_tx_rf_res(trx);
+ if (rc < 0)
+ oml_tx_failure_event_rep(&trx->bb_transc.mo, NM_SEVER_MAJOR, OSMO_EVT_MAJ_RSL_FAIL,
+ "Failed to establish RSL link (%d)", rc);
+ }
if (trx == trx->bts->c0)
load_timer_start(trx->bts);
diff --git a/src/common/l1sap.c b/src/common/l1sap.c
index 22b5e8c1..efde4064 100644
--- a/src/common/l1sap.c
+++ b/src/common/l1sap.c
@@ -615,6 +615,9 @@ static void l1sap_interf_meas_report(struct gsm_bts *bts)
return;
llist_for_each_entry(trx, &bts->trx_list, list) {
+ if (trx->mo.nm_state.operational != NM_OPSTATE_ENABLED ||
+ trx->bb_transc.mo.nm_state.operational != NM_OPSTATE_ENABLED)
+ continue;
/* Calculate the average of all received samples */
l1sap_interf_meas_calc_avg(trx);
/* Report to the BSC over the A-bis/RSL */