<p>laforge <strong>submitted</strong> this change.</p><p><a href="https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/19924">View Change</a></p><div style="white-space:pre-wrap">Approvals:
  Jenkins Builder: Verified
  pespin: Looks good to me, but someone else must approve
  laforge: Looks good to me, approved

</div><pre style="font-family: monospace,monospace; white-space: pre-wrap;">library/GSM_RR_Types: add minimalistic AssignmentCommand<br><br>Unfortunately, the existing implementation [1] is somewhat<br>incomplete and unfriendly to build templates on:<br><br>  - some fields holding integer numbers defined as BITx,<br>    so we would have to do bit2int() / int2bit();<br><br>  - some bit-map fields defined as octetstrings;<br><br>  - some fields are not decoded at all (raw octetstrings).<br><br>Let's work this around by defining a minimalistic implementation<br>of (RR) Assignment Command with all mandatory and some optional<br>fields.  Reuse some IEs directly from MobileL3_RRM_Types.<br><br>[1] titan.ProtocolModules.MobileL3_v13.4.0<br>    MobileL3_RRM_Types.PDU_RRM_AssignmentCommand_NW_MS<br><br>Change-Id: If1a5244a688abed6e6de2bf3f6e19e0e28129ea5<br>Related: SYS#4868, OS#4545<br>---<br>M library/GSM_RR_Types.ttcn<br>M sysinfo/gen_links.sh<br>2 files changed, 27 insertions(+), 1 deletion(-)<br><br></pre><pre style="font-family: monospace,monospace; white-space: pre-wrap;"><span>diff --git a/library/GSM_RR_Types.ttcn b/library/GSM_RR_Types.ttcn</span><br><span>index 59fe6d5..e4c0d57 100644</span><br><span>--- a/library/GSM_RR_Types.ttcn</span><br><span>+++ b/library/GSM_RR_Types.ttcn</span><br><span>@@ -17,6 +17,7 @@</span><br><span>    import from GSM_Types all;</span><br><span>   import from RLCMAC_CSN1_Types all;</span><br><span>   import from MobileL3_CommonIE_Types all;</span><br><span style="color: hsl(120, 100%, 40%);">+      import from MobileL3_RRM_Types all;</span><br><span> </span><br><span>      /* Table 10.4.1 of Section 10.4 / 3GPP TS 44.018 */</span><br><span>  type enumerated RrMessageType {</span><br><span>@@ -671,6 +672,29 @@</span><br><span>       type record of NcellReport NcellReports;</span><br><span> </span><br><span> </span><br><span style="color: hsl(120, 100%, 40%);">+      /* 3GPP TS 44.018, section 9.1.2 (minimalistic implementation) */</span><br><span style="color: hsl(120, 100%, 40%);">+     type record AssignmentCommand {</span><br><span style="color: hsl(120, 100%, 40%);">+               ChannelDescription              chan_desc,</span><br><span style="color: hsl(120, 100%, 40%);">+            PowerCommand_V                  power_cmd,</span><br><span style="color: hsl(120, 100%, 40%);">+            FrequencyList_TLV               freq_list_at optional,</span><br><span style="color: hsl(120, 100%, 40%);">+                CellChannelDescription_TV       cell_chan_desc optional,</span><br><span style="color: hsl(120, 100%, 40%);">+              /* TODO: Multislot Allocation IE */</span><br><span style="color: hsl(120, 100%, 40%);">+           ChannelMode_TV                  chan1_mode optional,</span><br><span style="color: hsl(120, 100%, 40%);">+          ChannelMode_TV                  chan2_mode optional,</span><br><span style="color: hsl(120, 100%, 40%);">+          /* TODO: Mode of Channel Set 3..8 IE */</span><br><span style="color: hsl(120, 100%, 40%);">+               MobileAllocationTLV             mobile_allocation optional</span><br><span style="color: hsl(120, 100%, 40%);">+            /* TODO: more optional IEs... */</span><br><span style="color: hsl(120, 100%, 40%);">+      } with {</span><br><span style="color: hsl(120, 100%, 40%);">+              variant "TAG(</span><br><span style="color: hsl(120, 100%, 40%);">+                    freq_list_at,           elementIdentifier = '05'O;</span><br><span style="color: hsl(120, 100%, 40%);">+                    cell_chan_desc,         elementIdentifier = '62'O;</span><br><span style="color: hsl(120, 100%, 40%);">+                    chan1_mode,             elementIdentifier = '63'O;</span><br><span style="color: hsl(120, 100%, 40%);">+                    chan2_mode,             elementIdentifier = '11'O;</span><br><span style="color: hsl(120, 100%, 40%);">+                    mobile_allocation,      iei = '72'O;</span><br><span style="color: hsl(120, 100%, 40%);">+          )"</span><br><span style="color: hsl(120, 100%, 40%);">+       };</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span>       /* 9.1.18 */</span><br><span>         type record ImmediateAssignment {</span><br><span>            DedicatedModeOrTbf              ded_or_tbf,</span><br><span>@@ -828,6 +852,7 @@</span><br><span>    type union RrL3Union {</span><br><span>               PagingResponse  paging_response,</span><br><span>             MeasurementReport meas_rep,</span><br><span style="color: hsl(120, 100%, 40%);">+           AssignmentCommand ass_cmd,</span><br><span>           octetstring     other</span><br><span>        };</span><br><span> </span><br><span>@@ -837,6 +862,7 @@</span><br><span>         } with { variant (payload) "CROSSTAG(</span><br><span>                           paging_response, header.message_type = PAGING_RESPONSE;</span><br><span>                              meas_rep, header.message_type = MEASUREMENT_REPORT;</span><br><span style="color: hsl(120, 100%, 40%);">+                           ass_cmd, header.message_type = ASSIGNMENT_COMMAND;</span><br><span>                           other, OTHERWISE;</span><br><span>            )" }</span><br><span> </span><br><span>diff --git a/sysinfo/gen_links.sh b/sysinfo/gen_links.sh</span><br><span>index 0648e7b..fa3cd33 100755</span><br><span>--- a/sysinfo/gen_links.sh</span><br><span>+++ b/sysinfo/gen_links.sh</span><br><span>@@ -9,7 +9,7 @@</span><br><span> gen_links $DIR $FILES</span><br><span> </span><br><span> DIR=$BASEDIR/titan.ProtocolModules.MobileL3_v13.4.0/src</span><br><span style="color: hsl(0, 100%, 40%);">-FILES="MobileL3_CommonIE_Types.ttcn MobileL3_GMM_SM_Types.ttcn MobileL3_MM_Types.ttcn"</span><br><span style="color: hsl(120, 100%, 40%);">+FILES="MobileL3_CommonIE_Types.ttcn MobileL3_GMM_SM_Types.ttcn MobileL3_MM_Types.ttcn MobileL3_RRM_Types.ttcn"</span><br><span> gen_links $DIR $FILES</span><br><span> </span><br><span> DIR=$BASEDIR/titan.TestPorts.Common_Components.Socket-API/src</span><br><span></span><br></pre><p>To view, visit <a href="https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/19924">change 19924</a>. To unsubscribe, or for help writing mail filters, visit <a href="https://gerrit.osmocom.org/settings">settings</a>.</p><div itemscope itemtype="http://schema.org/EmailMessage"><div itemscope itemprop="action" itemtype="http://schema.org/ViewAction"><link itemprop="url" href="https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/19924"/><meta itemprop="name" content="View Change"/></div></div>

<div style="display:none"> Gerrit-Project: osmo-ttcn3-hacks </div>
<div style="display:none"> Gerrit-Branch: master </div>
<div style="display:none"> Gerrit-Change-Id: If1a5244a688abed6e6de2bf3f6e19e0e28129ea5 </div>
<div style="display:none"> Gerrit-Change-Number: 19924 </div>
<div style="display:none"> Gerrit-PatchSet: 2 </div>
<div style="display:none"> Gerrit-Owner: fixeria <vyanitskiy@sysmocom.de> </div>
<div style="display:none"> Gerrit-Reviewer: Jenkins Builder </div>
<div style="display:none"> Gerrit-Reviewer: fixeria <vyanitskiy@sysmocom.de> </div>
<div style="display:none"> Gerrit-Reviewer: laforge <laforge@osmocom.org> </div>
<div style="display:none"> Gerrit-Reviewer: pespin <pespin@sysmocom.de> </div>
<div style="display:none"> Gerrit-MessageType: merged </div>