diff options
author | Pau Espin Pedrol <pespin@sysmocom.de> | 2020-06-18 19:36:12 +0200 |
---|---|---|
committer | Pau Espin Pedrol <pespin@sysmocom.de> | 2020-06-23 14:53:37 +0200 |
commit | 8090df2a813a3cf174afb8acb9aba92b65d275fb (patch) | |
tree | cee14c7b8e18b81ea7542c0133c7bd6aa2ee1631 /src/osmo-bts-octphy | |
parent | ceb80fc6b6edcc701a423d6bfe8601b08ff3a10d (diff) |
bts_model: Convert bts_model_trx_close() to return asynchronously
Some backends like osmo-bts-trx require exchanging messages like
POWEROFF to close the TRX, and hence need some time. Switch the function
to expect result asynchronously by calling a callback.
This will be used later to wait until all TRX are really powered off
before exiting the process.
Change-Id: I7d76b600fc06e1114b35bf0c2d08eff5bbd1b69a
Diffstat (limited to 'src/osmo-bts-octphy')
-rw-r--r-- | src/osmo-bts-octphy/l1_oml.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/src/osmo-bts-octphy/l1_oml.c b/src/osmo-bts-octphy/l1_oml.c index 61d56bb6..8cc078eb 100644 --- a/src/osmo-bts-octphy/l1_oml.c +++ b/src/osmo-bts-octphy/l1_oml.c @@ -1678,7 +1678,7 @@ int bts_model_chg_adm_state(struct gsm_bts *bts, struct gsm_abis_mo *mo, bts_model_trx_deact_rf(trx); /* Close TRX */ - rc = bts_model_trx_close(trx); + rc = trx_close(trx); if (rc != 0) { LOGP(DL1C, LOGL_ERROR, "Cannot close TRX %d, it is already closed.\n", @@ -1716,10 +1716,11 @@ int bts_model_trx_deact_rf(struct gsm_bts_trx *trx) return l1if_activate_rf(trx, 0); } -int bts_model_trx_close(struct gsm_bts_trx *trx) +void bts_model_trx_close(struct gsm_bts_trx *trx) { /* FIXME: close only one TRX */ - return trx_close(trx); + int rc = trx_close(trx); + bts_model_trx_close_cb(trx, rc); } |