Harald Welte has uploaded this change for review. ( 
https://gerrit.osmocom.org/14092


Change subject: RSL_Types: Add dissected RSL_IE_ActivationType and related 
templates
......................................................................

RSL_Types: Add dissected RSL_IE_ActivationType and related templates

This is required for supporting normal and handover assignments.

Change-Id: I116d589d0ec4aa6bffba4da6e3bfe1974dd04db2
---
M library/RSL_Types.ttcn
1 file changed, 36 insertions(+), 10 deletions(-)



  git pull ssh://gerrit.osmocom.org:29418/osmo-ttcn3-hacks 
refs/changes/92/14092/1

diff --git a/library/RSL_Types.ttcn b/library/RSL_Types.ttcn
index 0d772b3..cfe2845 100644
--- a/library/RSL_Types.ttcn
+++ b/library/RSL_Types.ttcn
@@ -273,20 +273,44 @@
        type record RSL_IE_ActivationType {
                boolean         reactivation,
                uint4_t         reserved,
-               uint3_t         a_bits
-       }
+               RSL_ActivationAbits a_bits
+       };
+       type enumerated RSL_ActivationAbits {
+               ACT_REL_TO_IMM_ASSIGN           ('000'B),
+               ACT_REL_TO_NORM_ASSIGN          ('001'B),
+               ACT_REL_TO_ASYNC_HANDOVER       ('010'B),
+               ACT_REL_TO_SYNC_HANDOVER        ('011'B),
+               ACT_REL_TO_ADDL_ASSIGN          ('100'B),
+               ACT_REL_TO_MSLOT_CONFIG         ('101'B),
+               ACT_REL_TO_OSMO_PDCH            ('111'B)
+       } with { variant "FIELDLENGTH(3)" };

-       template RSL_IE_ActivationType t_RSL_IE_ActType := {
+       const RSL_IE_ActivationType t_RSL_IE_ActType_IA := {
                reactivation := false,
                reserved := 0,
-               a_bits := 0 /* related to immediate assignment */
+               a_bits := ACT_REL_TO_IMM_ASSIGN
+       }
+       const RSL_IE_ActivationType t_RSL_IE_ActType_ASS := {
+               reactivation := false,
+               reserved := 0,
+               a_bits := ACT_REL_TO_NORM_ASSIGN
+       }
+       const RSL_IE_ActivationType t_RSL_IE_ActType_HO_ASYNC := {
+               reactivation := false,
+               reserved := 0,
+               a_bits := ACT_REL_TO_ASYNC_HANDOVER
+       }
+       const RSL_IE_ActivationType t_RSL_IE_ActType_HO_SYNC := {
+               reactivation := false,
+               reserved := 0,
+               a_bits := ACT_REL_TO_SYNC_HANDOVER
        }

        /* osmocom-style dynamic PDCH */
-       template RSL_IE_ActivationType t_RSL_IE_ActType_PDCH := {
+       const RSL_IE_ActivationType t_RSL_IE_ActType_PDCH := {
                reactivation := false,
                reserved := 1,
-               a_bits := 7 /* related to immediate assignment */
+               a_bits := ACT_REL_TO_OSMO_PDCH
        }

        /* 9.3.6 */
@@ -1122,23 +1146,25 @@

        /* 8.4.1 BSC -> BTS */
        template (value) RSL_Message ts_RSL_CHAN_ACT(template (value) 
RslChannelNr chan_nr,
-                                                    template (value) 
RSL_IE_ChannelMode mode) := {
+                                                    template (value) 
RSL_IE_ChannelMode mode,
+                                                    template (value) 
RSL_IE_ActivationType at := t_RSL_IE_ActType_IA) := {
                msg_disc := ts_RSL_MsgDisc(RSL_MDISC_DCHAN, false),
                msg_type := RSL_MT_CHAN_ACTIV,
                ies :={
                        t_RSL_IE(RSL_IE_CHAN_NR, RSL_IE_Body:{chan_nr := 
chan_nr}),
-                       t_RSL_IE(RSL_IE_ACT_TYPE, RSL_IE_Body:{act_type := 
t_RSL_IE_ActType}),
+                       t_RSL_IE(RSL_IE_ACT_TYPE, RSL_IE_Body:{act_type := at}),
                        t_RSL_IE(RSL_IE_CHAN_MODE, RSL_IE_Body:{chan_mode := 
mode})
                        /* lots of optional IEs */
                }
        }
        template RSL_Message tr_RSL_CHAN_ACT(template RslChannelNr chan_nr,
-                                            template RSL_IE_ChannelMode mode) 
:= {
+                                            template RSL_IE_ChannelMode mode,
+                                            template (value) 
RSL_IE_ActivationType at := t_RSL_IE_ActType_IA) := {
                msg_disc := tr_RSL_MsgDisc(RSL_MDISC_DCHAN, false),
                msg_type := RSL_MT_CHAN_ACTIV,
                ies :={
                        tr_RSL_IE(RSL_IE_Body:{chan_nr := chan_nr}),
-                       tr_RSL_IE(RSL_IE_Body:{act_type := t_RSL_IE_ActType}),
+                       tr_RSL_IE(RSL_IE_Body:{act_type := at}),
                        tr_RSL_IE(RSL_IE_Body:{chan_mode := mode}),
                        /* lots of optional IEs */
                        *

--
To view, visit https://gerrit.osmocom.org/14092
To unsubscribe, or for help writing mail filters, visit 
https://gerrit.osmocom.org/settings

Gerrit-Project: osmo-ttcn3-hacks
Gerrit-Branch: master
Gerrit-MessageType: newchange
Gerrit-Change-Id: I116d589d0ec4aa6bffba4da6e3bfe1974dd04db2
Gerrit-Change-Number: 14092
Gerrit-PatchSet: 1
Gerrit-Owner: Harald Welte <[email protected]>

Reply via email to