aboutsummaryrefslogtreecommitdiffstats
path: root/openbsc/src/libcommon/gsm_data.c
diff options
context:
space:
mode:
Diffstat (limited to 'openbsc/src/libcommon/gsm_data.c')
-rw-r--r--openbsc/src/libcommon/gsm_data.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/openbsc/src/libcommon/gsm_data.c b/openbsc/src/libcommon/gsm_data.c
index 45e56afd6..480eb8018 100644
--- a/openbsc/src/libcommon/gsm_data.c
+++ b/openbsc/src/libcommon/gsm_data.c
@@ -573,6 +573,14 @@ int gsm_set_bts_type(struct gsm_bts *bts, enum gsm_bts_type type)
bts->type = type;
bts->model = model;
+ if (model->start && !model->started) {
+ int ret = model->start(bts->network);
+ if (ret < 0)
+ return ret;
+
+ model->started = true;
+ }
+
switch (bts->type) {
case GSM_BTS_TYPE_HSL_FEMTO:
bts->c0->rsl_tei = 0;