diff options
author | Pau Espin Pedrol <pespin@sysmocom.de> | 2022-05-04 15:37:02 +0200 |
---|---|---|
committer | Pau Espin Pedrol <pespin@sysmocom.de> | 2022-05-05 14:51:10 +0200 |
commit | 633523167d5db37ca93d7dcec7cd5ce4ca2755a3 (patch) | |
tree | 337c31571617b3c35f58b662071c8e2f557bf1c7 | |
parent | 5cc9ed55676c7823e148866e3a73d94f0065cce7 (diff) |
abis_nm: Merge signals S_NM_STATECHG_ADM and S_NM_STATECHG_OPER
Having 2 signals makes all code handling them more complex, specially
because S_NM_STATE_CHG_OPER could actually provide any change in
admin/oper/availability.
Both signals already provided the same kind of data (the whole
admin/oper/avail state change), so let's simply merge the signals
themselves. Current code really doesn't act differently for those 2
signals anyway.
Change-Id: Ia86d20a42b859063d0327b940ba528ec1438b04a
-rw-r--r-- | include/osmocom/bsc/signal.h | 4 | ||||
-rw-r--r-- | src/ipaccess/ipaccess-config.c | 5 | ||||
-rw-r--r-- | src/osmo-bsc/abis_nm.c | 4 | ||||
-rw-r--r-- | src/osmo-bsc/abis_om2000.c | 2 | ||||
-rw-r--r-- | src/osmo-bsc/acc.c | 2 | ||||
-rw-r--r-- | src/osmo-bsc/bts_ipaccess_nanobts.c | 3 | ||||
-rw-r--r-- | src/osmo-bsc/bts_nokia_site.c | 3 |
7 files changed, 10 insertions, 13 deletions
diff --git a/include/osmocom/bsc/signal.h b/include/osmocom/bsc/signal.h index 084c30dd6..c787c894e 100644 --- a/include/osmocom/bsc/signal.h +++ b/include/osmocom/bsc/signal.h @@ -69,8 +69,7 @@ enum signal_nm { S_NM_IPACC_RESTART_ACK, /* nanoBTS has send a restart ack */ S_NM_IPACC_RESTART_NACK,/* nanoBTS has send a restart ack */ S_NM_TEST_REP, /* GSM 12.21 Test Report */ - S_NM_STATECHG_OPER, /* Operational State changed*/ - S_NM_STATECHG_ADM, /* Administrative State changed */ + S_NM_STATECHG, /* NM Oper/Admin/Avail State changed. arg is struct nm_statechg_signal_data*/ S_NM_OM2K_CONF_RES, /* OM2K Configuration Result */ S_NM_OPSTART_ACK, /* Received OPSTART ACK, arg is struct msgb *oml_msg */ S_NM_OPSTART_NACK, /* Received OPSTART NACK, arg is struct msgb *oml_msg */ @@ -127,6 +126,7 @@ struct ipacc_ack_signal_data { struct abis_om2k_mo; +/* data for <SS_NM, S_NM_STATECHG>: */ struct nm_statechg_signal_data { struct gsm_bts *bts; uint8_t obj_class; diff --git a/src/ipaccess/ipaccess-config.c b/src/ipaccess/ipaccess-config.c index 8f377ae00..8e3da495f 100644 --- a/src/ipaccess/ipaccess-config.c +++ b/src/ipaccess/ipaccess-config.c @@ -367,8 +367,7 @@ static int nm_sig_cb(unsigned int subsys, unsigned int signal, printf("The BTS has nacked the restart. Exiting.\n"); exit(0); break; - case S_NM_STATECHG_OPER: - case S_NM_STATECHG_ADM: + case S_NM_STATECHG: nsd = signal_data; nm_state_event(signal, nsd->obj_class, nsd->obj, nsd->old_state, nsd->new_state, nsd->obj_inst); @@ -687,7 +686,7 @@ static int nm_state_event(int evt, uint8_t obj_class, void *obj, bootstrap_om(trx); found_trx = 1; } - } else if (evt == S_NM_STATECHG_OPER && + } else if (evt == S_NM_STATECHG && obj_class == NM_OC_RADIO_CARRIER && new_state->availability == NM_AVSTATE_OFF_LINE) { struct gsm_bts_trx *trx = obj; diff --git a/src/osmo-bsc/abis_nm.c b/src/osmo-bsc/abis_nm.c index 980d2153f..e1e8efa09 100644 --- a/src/osmo-bsc/abis_nm.c +++ b/src/osmo-bsc/abis_nm.c @@ -230,7 +230,7 @@ static int update_admstate(struct gsm_bts *bts, uint8_t obj_class, nsd.old_state = nm_state; nsd.new_state = &new_state; nsd.obj_inst = obj_inst; - osmo_signal_dispatch(SS_NM, S_NM_STATECHG_ADM, &nsd); + osmo_signal_dispatch(SS_NM, S_NM_STATECHG, &nsd); nm_state->administrative = adm_state; @@ -297,7 +297,7 @@ static int abis_nm_rx_statechg_rep(struct msgb *mb) nsd.new_state = &new_state; nsd.obj_inst = &foh->obj_inst; nsd.bts = bts; - osmo_signal_dispatch(SS_NM, S_NM_STATECHG_OPER, &nsd); + osmo_signal_dispatch(SS_NM, S_NM_STATECHG, &nsd); nm_state->operational = new_state.operational; nm_state->availability = new_state.availability; if (nm_state->administrative == 0) diff --git a/src/osmo-bsc/abis_om2000.c b/src/osmo-bsc/abis_om2000.c index fc40cc4a7..18d0728a3 100644 --- a/src/osmo-bsc/abis_om2000.c +++ b/src/osmo-bsc/abis_om2000.c @@ -994,7 +994,7 @@ static void update_mo_state(struct gsm_bts *bts, struct abis_om2k_mo *mo, uint8_ nsd.new_state = &new_state; nsd.om2k_mo = mo; - osmo_signal_dispatch(SS_NM, S_NM_STATECHG_ADM, &nsd); + osmo_signal_dispatch(SS_NM, S_NM_STATECHG, &nsd); nm_state->availability = new_state.availability; } diff --git a/src/osmo-bsc/acc.c b/src/osmo-bsc/acc.c index 9734a28e3..755ffd1a2 100644 --- a/src/osmo-bsc/acc.c +++ b/src/osmo-bsc/acc.c @@ -419,7 +419,7 @@ static int acc_ramp_nm_sig_cb(unsigned int subsys, unsigned int signal, void *ha bool trigger_ramping = false, abort_ramping = false; /* Handled signals map to an Administrative State Change ACK, or a State Changed Event Report. */ - if (signal != S_NM_STATECHG_ADM && signal != S_NM_STATECHG_OPER) + if (signal != S_NM_STATECHG) return 0; if (nsd->obj_class != NM_OC_RADIO_CARRIER) diff --git a/src/osmo-bsc/bts_ipaccess_nanobts.c b/src/osmo-bsc/bts_ipaccess_nanobts.c index 54848fbcd..d2a2545b0 100644 --- a/src/osmo-bsc/bts_ipaccess_nanobts.c +++ b/src/osmo-bsc/bts_ipaccess_nanobts.c @@ -457,8 +457,7 @@ static int bts_ipa_nm_sig_cb(unsigned int subsys, unsigned int signal, switch (signal) { case S_NM_SW_ACTIV_REP: return sw_activ_rep(signal_data); - case S_NM_STATECHG_OPER: - case S_NM_STATECHG_ADM: + case S_NM_STATECHG: return nm_statechg_event(signal, signal_data); case S_NM_OPSTART_ACK: nm_rx_opstart_ack(signal_data); diff --git a/src/osmo-bsc/bts_nokia_site.c b/src/osmo-bsc/bts_nokia_site.c index e20519a4c..4895e6e45 100644 --- a/src/osmo-bsc/bts_nokia_site.c +++ b/src/osmo-bsc/bts_nokia_site.c @@ -204,8 +204,7 @@ static int nm_sig_cb(unsigned int subsys, unsigned int signal, return 0; switch (signal) { - case S_NM_STATECHG_OPER: - case S_NM_STATECHG_ADM: + case S_NM_STATECHG: nm_statechg_evt(signal, signal_data); break; default: |