aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSylvain Munaut <tnt@246tNt.com>2020-05-08 09:58:26 +0200
committerlaforge <laforge@osmocom.org>2020-05-09 08:05:21 +0000
commit57a1ec5b2eda59ad84e52dc22db1f4f3c9e13914 (patch)
treeba91af9f77e36499ea68f422d732cff62a9c2de8
parent543855431575122f8115b11d32ddad9e7859ad77 (diff)
gsm_data: Update trx_is_usable for ericsson BTS
There is no bb_transc oject. Signed-off-by: Sylvain Munaut <tnt@246tNt.com> Change-Id: I34bb808cd21575ff25d36e6df028b140935a008f
-rw-r--r--include/osmocom/bsc/gsm_data.h12
-rw-r--r--src/osmo-bsc/gsm_data.c4
2 files changed, 16 insertions, 0 deletions
diff --git a/include/osmocom/bsc/gsm_data.h b/include/osmocom/bsc/gsm_data.h
index ecc1f0a06..545019bdc 100644
--- a/include/osmocom/bsc/gsm_data.h
+++ b/include/osmocom/bsc/gsm_data.h
@@ -1719,6 +1719,18 @@ static inline int is_nokia_bts(struct gsm_bts *bts)
return 0;
}
+static inline int is_ericsson_bts(struct gsm_bts *bts)
+{
+ switch (bts->type) {
+ case GSM_BTS_TYPE_RBS2000:
+ return 1;
+ default:
+ break;
+ }
+
+ return 0;
+}
+
static inline int is_e1_bts(struct gsm_bts *bts)
{
switch (bts->type) {
diff --git a/src/osmo-bsc/gsm_data.c b/src/osmo-bsc/gsm_data.c
index 23a4e61b3..d3c58f5cf 100644
--- a/src/osmo-bsc/gsm_data.c
+++ b/src/osmo-bsc/gsm_data.c
@@ -1399,6 +1399,10 @@ bool trx_is_usable(const struct gsm_bts_trx *trx)
if (!nm_is_running(&trx->mo.nm_state) ||
!nm_is_running(&trx->bb_transc.mo.nm_state))
return false;
+ } else if (is_ericsson_bts(trx->bts)) {
+ /* The OM2000 -> 12.21 mapping we do doesn't have separate bb_transc MO */
+ if (!nm_is_running(&trx->mo.nm_state))
+ return false;
}
return true;