jolly has uploaded this change for review.

View Change

ASCI: Register state machines only once, when the application starts

Related: OS#5364
Change-Id: I46d68e31e0bfd6a64c190e439f45b24502dd1f30
---
M src/host/layer23/src/mobile/gsm44068_gcc_bcc.c
1 file changed, 16 insertions(+), 6 deletions(-)

git pull ssh://gerrit.osmocom.org:29418/osmocom-bb refs/changes/92/34792/1
diff --git a/src/host/layer23/src/mobile/gsm44068_gcc_bcc.c b/src/host/layer23/src/mobile/gsm44068_gcc_bcc.c
index 7bb8b29..0cef1c3 100644
--- a/src/host/layer23/src/mobile/gsm44068_gcc_bcc.c
+++ b/src/host/layer23/src/mobile/gsm44068_gcc_bcc.c
@@ -83,14 +83,8 @@
* init
*/

-static struct osmo_fsm vgcs_gcc_fsm;
-static struct osmo_fsm vgcs_bcc_fsm;
-
int gsm44068_gcc_init(struct osmocom_ms *ms)
{
- OSMO_ASSERT(osmo_fsm_register(&vgcs_gcc_fsm) == 0);
- OSMO_ASSERT(osmo_fsm_register(&vgcs_bcc_fsm) == 0);
-
LOGP(DGCC, LOGL_INFO, "init GCC/BCC\n");

return 0;
@@ -1484,6 +1478,12 @@
.timer_cb = vgcs_gcc_fsm_timer_cb,
};

+static __attribute__((constructor)) void on_dso_load(void)
+{
+ OSMO_ASSERT(osmo_fsm_register(&vgcs_gcc_fsm) == 0);
+ OSMO_ASSERT(osmo_fsm_register(&vgcs_bcc_fsm) == 0);
+}
+
static const char *gsm44068_gcc_state_name(struct osmo_fsm_inst *fi)
{
return vgcs_gcc_fsm_states[fi->state].name;

To view, visit change 34792. To unsubscribe, or for help writing mail filters, visit settings.

Gerrit-Project: osmocom-bb
Gerrit-Branch: master
Gerrit-Change-Id: I46d68e31e0bfd6a64c190e439f45b24502dd1f30
Gerrit-Change-Number: 34792
Gerrit-PatchSet: 1
Gerrit-Owner: jolly <andreas@eversberg.eu>
Gerrit-MessageType: newchange