remove osmocom_ms reference from lapdm_init()
authorHarald Welte <laforge@gnumonks.org>
Fri, 20 May 2011 16:16:09 +0000 (18:16 +0200)
committerHarald Welte <laforge@gnumonks.org>
Tue, 21 Jun 2011 17:48:20 +0000 (19:48 +0200)
... yet another step in making lapdm code independent of osmocom_ms

src/host/layer23/include/osmocom/bb/common/lapdm.h
src/host/layer23/src/common/lapdm.c
src/host/layer23/src/common/main.c
src/host/layer23/src/mobile/app_mobile.c

index b610564..1214f0f 100644 (file)
@@ -75,7 +75,7 @@ const char *get_rsl_name(int value);
 extern const char *lapdm_state_names[];
 
 /* initialize a LAPDm entity */
-void lapdm_init(struct lapdm_entity *le, struct osmocom_ms *ms);
+void lapdm_init(struct lapdm_entity *le);
 
 /* deinitialize a LAPDm entity */
 void lapdm_exit(struct lapdm_entity *le);
index a2a9d5f..d062ee3 100644 (file)
@@ -1,6 +1,6 @@
 /* GSM LAPDm (TS 04.06) implementation */
 
-/* (C) 2010 by Harald Welte <laforge@gnumonks.org>
+/* (C) 2010-2011 by Harald Welte <laforge@gnumonks.org>
  * (C) 2010 by Andreas Eversberg <jolly@eversberg.eu>
  *
  * All Rights Reserved
@@ -186,15 +186,12 @@ static void lapdm_dl_init(struct lapdm_datalink *dl,
        dl->entity = entity;
 }
 
-void lapdm_init(struct lapdm_entity *le, struct osmocom_ms *ms)
+void lapdm_init(struct lapdm_entity *le)
 {
        unsigned int i;
 
        for (i = 0; i < ARRAY_SIZE(le->datalink); i++)
                lapdm_dl_init(&le->datalink[i], le);
-
-       le->l1_ctx = ms;
-       le->l3_ctx = ms;
 }
 
 static void lapdm_dl_flush_send(struct lapdm_datalink *dl)
index a307222..9705af5 100644 (file)
@@ -254,8 +254,13 @@ int main(int argc, char **argv)
        if (rc < 0)
                fprintf(stderr, "Failed during sap_open(), no SIM reader\n");
 
-       lapdm_init(&ms->l2_entity.lapdm_dcch, ms);
-       lapdm_init(&ms->l2_entity.lapdm_acch, ms);
+       ms->l2_entity.lapdm_dcch.l1_ctx = ms;
+       ms->l2_entity.lapdm_dcch.l3_ctx = ms;
+       lapdm_init(&ms->l2_entity.lapdm_dcch);
+
+       ms->l2_entity.lapdm_acch.l1_ctx = ms;
+       ms->l2_entity.lapdm_acch.l3_ctx = ms;
+       lapdm_init(&ms->l2_entity.lapdm_acch);
 
        rc = l23_app_init(ms);
        if (rc < 0)
index 1dc585a..5bb580a 100644 (file)
@@ -160,8 +160,12 @@ int mobile_init(struct osmocom_ms *ms)
        int rc;
 
        gsm_settings_arfcn(ms);
-       lapdm_init(&ms->l2_entity.lapdm_dcch, ms);
-       lapdm_init(&ms->l2_entity.lapdm_acch, ms);
+       ms->l2_entity.lapdm_dcch.l1_ctx = ms;
+       ms->l2_entity.lapdm_dcch.l3_ctx = ms;
+       lapdm_init(&ms->l2_entity.lapdm_dcch);
+       ms->l2_entity.lapdm_acch.l1_ctx = ms;
+       ms->l2_entity.lapdm_acch.l3_ctx = ms;
+       lapdm_init(&ms->l2_entity.lapdm_acch);
        gsm_sim_init(ms);
        gsm48_cc_init(ms);
        gsm_subscr_init(ms);