diff options
-rw-r--r-- | include/osmo-bts/bts_model.h | 2 | ||||
-rw-r--r-- | src/common/abis.c | 3 | ||||
-rw-r--r-- | src/common/bts.c | 2 | ||||
-rw-r--r-- | src/osmo-bts-sysmo/main.c | 6 | ||||
-rw-r--r-- | src/osmo-bts-trx/main.c | 3 | ||||
-rw-r--r-- | tests/stubs.c | 3 |
6 files changed, 18 insertions, 1 deletions
diff --git a/include/osmo-bts/bts_model.h b/include/osmo-bts/bts_model.h index c3ab070f..fab3081d 100644 --- a/include/osmo-bts/bts_model.h +++ b/include/osmo-bts/bts_model.h @@ -37,4 +37,6 @@ int bts_model_oml_estab(struct gsm_bts *bts); int bts_model_l1sap_down(struct gsm_bts_trx *trx, struct osmo_phsap_prim *l1sap); +void bts_model_abis_close(struct gsm_bts *bts); + #endif diff --git a/src/common/abis.c b/src/common/abis.c index fa1a565f..4fbdf259 100644 --- a/src/common/abis.c +++ b/src/common/abis.c @@ -45,6 +45,7 @@ #include <osmo-bts/bts.h> #include <osmo-bts/rsl.h> #include <osmo-bts/oml.h> +#include <osmo-bts/bts_model.h> static struct gsm_bts *g_bts; @@ -112,7 +113,7 @@ static void sign_link_down(struct e1inp_line *line) e1inp_sign_link_destroy(g_bts->oml_link); g_bts->oml_link = NULL; - bts_shutdown(g_bts, "Abis close"); + bts_model_abis_close(g_bts); } diff --git a/src/common/bts.c b/src/common/bts.c index 53324471..c886b1ee 100644 --- a/src/common/bts.c +++ b/src/common/bts.c @@ -230,6 +230,8 @@ int trx_link_estab(struct gsm_bts_trx *trx) if (link) rsl_tx_rf_res(trx); + else + bts_model_trx_deact_rf(trx); return 0; } diff --git a/src/osmo-bts-sysmo/main.c b/src/osmo-bts-sysmo/main.c index 9eb05ffd..b8c062f5 100644 --- a/src/osmo-bts-sysmo/main.c +++ b/src/osmo-bts-sysmo/main.c @@ -402,3 +402,9 @@ int main(int argc, char **argv) osmo_select_main(0); } } + +void bts_model_abis_close(struct gsm_bts *bts) +{ + /* for now, we simply terminate the program and re-spawn */ + bts_shutdown(bts, "Abis close"); +} diff --git a/src/osmo-bts-trx/main.c b/src/osmo-bts-trx/main.c index 55227372..594b4693 100644 --- a/src/osmo-bts-trx/main.c +++ b/src/osmo-bts-trx/main.c @@ -399,3 +399,6 @@ int main(int argc, char **argv) return 0; } +void bts_model_abis_close(struct gsm_bts *bts) +{ +} diff --git a/tests/stubs.c b/tests/stubs.c index a98f0d9d..943df9c6 100644 --- a/tests/stubs.c +++ b/tests/stubs.c @@ -53,3 +53,6 @@ uint32_t trx_get_hlayer1(struct gsm_bts_trx *trx) int bts_model_oml_estab(struct gsm_bts *bts) { return 0; } + +void bts_model_abis_close(struct gsm_bts *bts) +{ } |