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

</div><pre style="font-family: monospace,monospace; white-space: pre-wrap;">Make use of T3142 received from BTS<br><br>Related: OS#3928<br>Change-Id: I4e26f181db9693d3a267a879e2aebda12eab2a8c<br>---<br>M src/bts.cpp<br>M src/encoding.cpp<br>M src/encoding.h<br>M tests/types/TypesTest.cpp<br>4 files changed, 11 insertions(+), 11 deletions(-)<br><br></pre><pre style="font-family: monospace,monospace; white-space: pre-wrap;"><span>diff --git a/src/bts.cpp b/src/bts.cpp</span><br><span>index 3d935a1..9065c4e 100644</span><br><span>--- a/src/bts.cpp</span><br><span>+++ b/src/bts.cpp</span><br><span>@@ -76,7 +76,7 @@</span><br><span> }</span><br><span> </span><br><span> static struct osmo_tdef T_defs_bts[] = {</span><br><span style="color: hsl(0, 100%, 40%);">-     { .T=3142, .default_val=20,  .unit=OSMO_TDEF_S,  .desc="timer (s)", .val=0 },</span><br><span style="color: hsl(120, 100%, 40%);">+       { .T=3142, .default_val=20,  .unit=OSMO_TDEF_S,  .desc="Wait Indication used in Imm Ass Reject during TBF Establishment (s)", .val=0, .min_val = 0, .max_val = 255 }, /* TS 44.018 10.5.2.43 */</span><br><span>    { .T=3169, .default_val=5,   .unit=OSMO_TDEF_S,  .desc="Reuse of USF and TFI(s) after the MS uplink TBF assignment is invalid (s)", .val=0 },</span><br><span>      { .T=3191, .default_val=5,   .unit=OSMO_TDEF_S,  .desc="Reuse of TFI(s) after sending (1) last RLC Data Block on TBF(s), or (2) PACKET TBF RELEASE for an MBMS radio bearer (s)", .val=0 },</span><br><span>        { .T=3193, .default_val=100, .unit=OSMO_TDEF_MS, .desc="Reuse of TFI(s) after reception of final PACKET DOWNLINK ACK/NACK from MS for TBF (ms)", .val=0 },</span><br><span>@@ -890,7 +890,8 @@</span><br><span>   if (rc != 0) {</span><br><span>               LOGP(DRLCMAC, LOGL_DEBUG, "Tx Immediate Assignment Reject on AGCH\n");</span><br><span>             plen = Encoding::write_immediate_assignment_reject(</span><br><span style="color: hsl(0, 100%, 40%);">-                     bv, rip->ra, Fn, rip->burst_type);</span><br><span style="color: hsl(120, 100%, 40%);">+                      bv, rip->ra, Fn, rip->burst_type,</span><br><span style="color: hsl(120, 100%, 40%);">+                       (uint8_t)osmo_tdef_get(bts->T_defs_bts, 3142, OSMO_TDEF_S, -1));</span><br><span>          bts_do_rate_ctr_inc(bts, CTR_IMMEDIATE_ASSIGN_REJ);</span><br><span>  } else {</span><br><span>             LOGP(DRLCMAC, LOGL_DEBUG, "Tx Immediate Assignment on AGCH: "</span><br><span>diff --git a/src/encoding.cpp b/src/encoding.cpp</span><br><span>index 8bc8d15..f91c638 100644</span><br><span>--- a/src/encoding.cpp</span><br><span>+++ b/src/encoding.cpp</span><br><span>@@ -361,10 +361,8 @@</span><br><span>  * Immediate assignment reject, sent on the CCCH/AGCH</span><br><span>  * see GSM 44.018, 9.1.20 + 10.5.2.30</span><br><span>  */</span><br><span style="color: hsl(0, 100%, 40%);">-int Encoding::write_immediate_assignment_reject(</span><br><span style="color: hsl(0, 100%, 40%);">-    bitvec *dest, uint16_t ra,</span><br><span style="color: hsl(0, 100%, 40%);">-      uint32_t ref_fn,</span><br><span style="color: hsl(0, 100%, 40%);">-        enum ph_burst_type burst_type)</span><br><span style="color: hsl(120, 100%, 40%);">+int Encoding::write_immediate_assignment_reject(bitvec *dest, uint16_t ra,</span><br><span style="color: hsl(120, 100%, 40%);">+    uint32_t ref_fn, enum ph_burst_type burst_type, uint8_t t3142)</span><br><span> {</span><br><span>  unsigned wp = 0;</span><br><span>     int plen;</span><br><span>@@ -404,8 +402,8 @@</span><br><span>              bitvec_write_field(dest, &wp, ref_fn % 51, 6);          // T3</span><br><span>            bitvec_write_field(dest, &wp, ref_fn % 26, 5);          // T2</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-           /* TODO: Make it configurable */</span><br><span style="color: hsl(0, 100%, 40%);">-                bitvec_write_field(dest, &wp, 20, 8); //Wait Indication 1</span><br><span style="color: hsl(120, 100%, 40%);">+         /* 10.5.2.43 Wait Indication */</span><br><span style="color: hsl(120, 100%, 40%);">+               bitvec_write_field(dest, &wp, t3142, 8);</span><br><span>         }</span><br><span> </span><br><span>        plen = wp / 8;</span><br><span>diff --git a/src/encoding.h b/src/encoding.h</span><br><span>index 89d057c..e7046e2 100644</span><br><span>--- a/src/encoding.h</span><br><span>+++ b/src/encoding.h</span><br><span>@@ -59,7 +59,8 @@</span><br><span>      static int write_immediate_assignment_reject(</span><br><span>                        bitvec *dest, uint16_t ra,</span><br><span>                   uint32_t ref_fn,</span><br><span style="color: hsl(0, 100%, 40%);">-                        enum ph_burst_type burst_type</span><br><span style="color: hsl(120, 100%, 40%);">+                 enum ph_burst_type burst_type,</span><br><span style="color: hsl(120, 100%, 40%);">+                        uint8_t t3142</span><br><span>                );</span><br><span> </span><br><span>       static void write_packet_uplink_assignment(</span><br><span>diff --git a/tests/types/TypesTest.cpp b/tests/types/TypesTest.cpp</span><br><span>index 643ce4c..480a9ac 100644</span><br><span>--- a/tests/types/TypesTest.cpp</span><br><span>+++ b/tests/types/TypesTest.cpp</span><br><span>@@ -877,7 +877,7 @@</span><br><span>   bitvec_unhex(immediate_assignment_rej, DUMMY_VEC);</span><br><span>   plen = Encoding::write_immediate_assignment_reject(</span><br><span>          immediate_assignment_rej, 112, 100,</span><br><span style="color: hsl(0, 100%, 40%);">-             GSM_L1_BURST_TYPE_ACCESS_1);</span><br><span style="color: hsl(120, 100%, 40%);">+          GSM_L1_BURST_TYPE_ACCESS_1, 20);</span><br><span> </span><br><span>         printf("assignment reject: %s\n",</span><br><span>          osmo_hexdump(immediate_assignment_rej->data, 22));</span><br><span>@@ -892,7 +892,7 @@</span><br><span> </span><br><span>      plen = Encoding::write_immediate_assignment_reject(</span><br><span>          immediate_assignment_rej, 112, 100,</span><br><span style="color: hsl(0, 100%, 40%);">-             GSM_L1_BURST_TYPE_ACCESS_0);</span><br><span style="color: hsl(120, 100%, 40%);">+          GSM_L1_BURST_TYPE_ACCESS_0, 20);</span><br><span> </span><br><span>         printf("assignment reject: %s\n",</span><br><span>          osmo_hexdump(immediate_assignment_rej->data, 22));</span><br><span></span><br></pre><p>To view, visit <a href="https://gerrit.osmocom.org/c/osmo-pcu/+/23905">change 23905</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-pcu/+/23905"/><meta itemprop="name" content="View Change"/></div></div>

<div style="display:none"> Gerrit-Project: osmo-pcu </div>
<div style="display:none"> Gerrit-Branch: master </div>
<div style="display:none"> Gerrit-Change-Id: I4e26f181db9693d3a267a879e2aebda12eab2a8c </div>
<div style="display:none"> Gerrit-Change-Number: 23905 </div>
<div style="display:none"> Gerrit-PatchSet: 2 </div>
<div style="display:none"> Gerrit-Owner: pespin <pespin@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>