<p>Harald Welte <strong>merged</strong> this change.</p><p><a href="https://gerrit.osmocom.org/13383">View Change</a></p><div style="white-space:pre-wrap">Approvals:
  Harald Welte: Looks good to me, approved
  Jenkins Builder: Verified

</div><pre style="font-family: monospace,monospace; white-space: pre-wrap;">pcu: Add TC_pcuif_suspend() to test PCU->BSSGP SUSPEND processing<br><br>The PCU is supposed to forward any RR SUSPEND received by the BTS<br>on dedicated channels and pass it to the SGSN via BSSGP.  This provides<br>knowledge to the SGSN that the MS is not reachable via PS/TBF anymore<br>until it completes its CC dedicated mode transaction and RESUMEs.<br><br>Change-Id: Iaf35e0c1087413db1dc7d169fa716df14c78f5db<br>---<br>M pcu/PCU_Tests.ttcn<br>M pcu/PCU_Tests_RAW.ttcn<br>2 files changed, 66 insertions(+), 0 deletions(-)<br><br></pre><pre style="font-family: monospace,monospace; white-space: pre-wrap;"><span>diff --git a/pcu/PCU_Tests.ttcn b/pcu/PCU_Tests.ttcn</span><br><span>index 80a1bd1..4dce7dd 100644</span><br><span>--- a/pcu/PCU_Tests.ttcn</span><br><span>+++ b/pcu/PCU_Tests.ttcn</span><br><span>@@ -663,6 +663,46 @@</span><br><span>    f_sleep(10.0);</span><br><span> }</span><br><span> </span><br><span style="color: hsl(120, 100%, 40%);">+/* FIXME: merge this into BSSGP_Client_CT ? */</span><br><span style="color: hsl(120, 100%, 40%);">+type component bssgp_CT extends BSSGP_Client_CT {</span><br><span style="color: hsl(120, 100%, 40%);">+    var NS_CT ns_component;</span><br><span style="color: hsl(120, 100%, 40%);">+       var BSSGP_CT bssgp_component;</span><br><span style="color: hsl(120, 100%, 40%);">+ var boolean g_initialized := false;</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%);">+/* FIXME: merge this into BSSGP_Client_CT ? */</span><br><span style="color: hsl(120, 100%, 40%);">+function f_init_bssgp() runs on bssgp_CT {</span><br><span style="color: hsl(120, 100%, 40%);">+  var MmContext mmctx := {</span><br><span style="color: hsl(120, 100%, 40%);">+              imsi := '262420000000001'H,</span><br><span style="color: hsl(120, 100%, 40%);">+           tlli := 'FFFFFFFF'O,</span><br><span style="color: hsl(120, 100%, 40%);">+          n_u := 0</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%);">+        if (g_initialized == true) {</span><br><span style="color: hsl(120, 100%, 40%);">+          return;</span><br><span style="color: hsl(120, 100%, 40%);">+       }</span><br><span style="color: hsl(120, 100%, 40%);">+     g_initialized := true;</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+      /* create a new NS component */</span><br><span style="color: hsl(120, 100%, 40%);">+       ns_component := NS_CT.create;</span><br><span style="color: hsl(120, 100%, 40%);">+ bssgp_component := BSSGP_CT.create;</span><br><span style="color: hsl(120, 100%, 40%);">+   /* connect our BSSGP port to the BSSGP Emulation */</span><br><span style="color: hsl(120, 100%, 40%);">+   connect(self:BSSGP[0], bssgp_component:BSSGP_SP);</span><br><span style="color: hsl(120, 100%, 40%);">+     connect(self:BSSGP_SIG[0], bssgp_component:BSSGP_SP_SIG);</span><br><span style="color: hsl(120, 100%, 40%);">+     connect(self:BSSGP_PROC[0], bssgp_component:BSSGP_PROC);</span><br><span style="color: hsl(120, 100%, 40%);">+      /* connect lower-end of BSSGP with BSSGP_CODEC_PORT (maps to NS_PT*/</span><br><span style="color: hsl(120, 100%, 40%);">+  connect(bssgp_component:BSCP, ns_component:NS_SP);</span><br><span style="color: hsl(120, 100%, 40%);">+    /* connect lower-end of NS emulation to NS_CODEC_PORT (on top of IPl4) */</span><br><span style="color: hsl(120, 100%, 40%);">+     map(ns_component:NSCP, system:NS_CODEC_PORT);</span><br><span style="color: hsl(120, 100%, 40%);">+ ns_component.start(NSStart(mp_nsconfig));</span><br><span style="color: hsl(120, 100%, 40%);">+     bssgp_component.start(BssgpStart(mp_gb_cfg));</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+       f_bssgp_client_register(mmctx.imsi, mmctx.tlli, mp_gb_cfg.cell_id);</span><br><span style="color: hsl(120, 100%, 40%);">+   f_bssgp_establish();</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> </span><br><span> control {</span><br><span>         execute(TC_selftest_ns());</span><br><span>diff --git a/pcu/PCU_Tests_RAW.ttcn b/pcu/PCU_Tests_RAW.ttcn</span><br><span>index 3e38fa8..96a3f86 100644</span><br><span>--- a/pcu/PCU_Tests_RAW.ttcn</span><br><span>+++ b/pcu/PCU_Tests_RAW.ttcn</span><br><span>@@ -8,6 +8,9 @@</span><br><span> </span><br><span> import from General_Types all;</span><br><span> import from Osmocom_Types all;</span><br><span style="color: hsl(120, 100%, 40%);">+import from GSM_Types all;</span><br><span style="color: hsl(120, 100%, 40%);">+import from GSM_RR_Types all;</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span> import from NS_Types all;</span><br><span> import from BSSGP_Types all;</span><br><span> import from Osmocom_Gb_Types all;</span><br><span>@@ -405,6 +408,27 @@</span><br><span>      setverdict(pass);</span><br><span> }</span><br><span> </span><br><span style="color: hsl(120, 100%, 40%);">+/* Test component with PCUIF + BSSGP/NS Emulation (no L1CTL) */</span><br><span style="color: hsl(120, 100%, 40%);">+type component bssgp_pcuif_CT extends bssgp_CT, RAW_PCU_CT {</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%);">+testcase TC_pcuif_suspend() runs on bssgp_pcuif_CT {</span><br><span style="color: hsl(120, 100%, 40%);">+  var OCT6 ra_id := enc_RoutingAreaIdentification(mp_gb_cfg.cell_id.ra_id);</span><br><span style="color: hsl(120, 100%, 40%);">+     var GprsTlli tlli := 'FFFFFFFF'O;</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+   /* Initialize PCU interface side */</span><br><span style="color: hsl(120, 100%, 40%);">+   f_init_pcuif();</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+     /* Initialize NS/BSSGP side */</span><br><span style="color: hsl(120, 100%, 40%);">+        f_init_bssgp();</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+     f_sleep(1.0);</span><br><span style="color: hsl(120, 100%, 40%);">+ f_pcuif_tx(ts_PCUIF_SUSP_REQ(0, tlli, ra_id, 0));</span><br><span style="color: hsl(120, 100%, 40%);">+     BSSGP_SIG[0].receive(tr_BD_BSSGP(tr_BSSGP_SUSPEND(tlli, mp_gb_cfg.cell_id.ra_id)));</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+ setverdict(pass);</span><br><span style="color: hsl(120, 100%, 40%);">+}</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span> </span><br><span> control {</span><br><span>      execute( TC_ns_reset() );</span><br><span>@@ -415,6 +439,8 @@</span><br><span>      execute( TC_ns_unblock_retrans() );</span><br><span>  execute( TC_ns_full_bringup() );</span><br><span>     execute( TC_ns_so_block() );</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+        execute( TC_pcuif_suspend() );</span><br><span> }</span><br><span> </span><br><span> </span><br><span></span><br></pre><p>To view, visit <a href="https://gerrit.osmocom.org/13383">change 13383</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/13383"/><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-MessageType: merged </div>
<div style="display:none"> Gerrit-Change-Id: Iaf35e0c1087413db1dc7d169fa716df14c78f5db </div>
<div style="display:none"> Gerrit-Change-Number: 13383 </div>
<div style="display:none"> Gerrit-PatchSet: 2 </div>
<div style="display:none"> Gerrit-Owner: Harald Welte <laforge@gnumonks.org> </div>
<div style="display:none"> Gerrit-Reviewer: Harald Welte <laforge@gnumonks.org> </div>
<div style="display:none"> Gerrit-Reviewer: Jenkins Builder (1000002) </div>