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

</div><pre style="font-family: monospace,monospace; white-space: pre-wrap;">trx_toolkit/burst_fwd.py: properly pass-filter multiple time-slots<br><br>Previously it was only possible to configure a single time-slot<br>that would be pass-filtered by a BurstForwarder instance. In some<br>applications it would be useful to configure multiple time-slots,<br>so let's refactor the time-slot pass-filtering algorithm.<br><br>Change-Id: Ie1490adaf7a7c62c966aeb60c1898eaf3b5a1e84<br>---<br>M src/target/trx_toolkit/burst_fwd.py<br>M src/target/trx_toolkit/ctrl_if_bb.py<br>2 files changed, 19 insertions(+), 8 deletions(-)<br><br></pre><pre style="font-family: monospace,monospace; white-space: pre-wrap;"><span>diff --git a/src/target/trx_toolkit/burst_fwd.py b/src/target/trx_toolkit/burst_fwd.py</span><br><span>index f3eeddd..746b281 100644</span><br><span>--- a/src/target/trx_toolkit/burst_fwd.py</span><br><span>+++ b/src/target/trx_toolkit/burst_fwd.py</span><br><span>@@ -43,11 +43,10 @@</span><br><span>        and transmit frequencies. It would be great to distinguish</span><br><span>           between RX and TX frequencies for both BTS and MS.</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-        - ts_pass - currently active timeslot, configured by the MS.</span><br><span style="color: hsl(0, 100%, 40%);">-      It can be activated or deactivated using SETSLOT control</span><br><span style="color: hsl(0, 100%, 40%);">-        command from the MS.</span><br><span style="color: hsl(120, 100%, 40%);">+        - ts_pass_list - the list of active (i.e. configured)</span><br><span style="color: hsl(120, 100%, 40%);">+           timeslot numbers for the MS. A timeslot can be activated</span><br><span style="color: hsl(120, 100%, 40%);">+      or deactivated using SETSLOT control command from the MS.</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-           FIXME: only a single timeslot can be activated!</span><br><span>      FIXME: there is no such list for the BTS side.</span><br><span> </span><br><span>       == Preprocessing and measurement simulation</span><br><span>@@ -152,7 +151,7 @@</span><br><span>            self.burst_ul_drop_period = 1</span><br><span> </span><br><span>            # Init timeslot filter (drop everything by default)</span><br><span style="color: hsl(0, 100%, 40%);">-             self.ts_pass = None</span><br><span style="color: hsl(120, 100%, 40%);">+           self.ts_pass_list = []</span><br><span> </span><br><span>           # Reset Timing Advance value</span><br><span>                 self.ta = 0</span><br><span>@@ -288,7 +287,7 @@</span><br><span>                    return None</span><br><span> </span><br><span>              # Timeslot filter</span><br><span style="color: hsl(0, 100%, 40%);">-               if msg.tn != self.ts_pass:</span><br><span style="color: hsl(120, 100%, 40%);">+            if msg.tn not in self.ts_pass_list:</span><br><span>                  return None</span><br><span> </span><br><span>              # Path loss simulation</span><br><span>diff --git a/src/target/trx_toolkit/ctrl_if_bb.py b/src/target/trx_toolkit/ctrl_if_bb.py</span><br><span>index 3528c98..97a3d9d 100644</span><br><span>--- a/src/target/trx_toolkit/ctrl_if_bb.py</span><br><span>+++ b/src/target/trx_toolkit/ctrl_if_bb.py</span><br><span>@@ -109,9 +109,21 @@</span><br><span>                   # TS activation / deactivation</span><br><span>                       # We don't care about ts_type</span><br><span>                    if ts_type == 0:</span><br><span style="color: hsl(0, 100%, 40%);">-                                self.burst_fwd.ts_pass = None</span><br><span style="color: hsl(120, 100%, 40%);">+                         # Deactivate TS (remove from TS pass-filter list)</span><br><span style="color: hsl(120, 100%, 40%);">+                             if ts in self.burst_fwd.ts_pass_list:</span><br><span style="color: hsl(120, 100%, 40%);">+                                 self.burst_fwd.ts_pass_list.remove(ts)</span><br><span style="color: hsl(120, 100%, 40%);">+                                else:</span><br><span style="color: hsl(120, 100%, 40%);">+                                 print("[!] TS %u was not activated before" % ts)</span><br><span style="color: hsl(120, 100%, 40%);">+                                    # TODO: uncomment as soon as RESET is introduced</span><br><span style="color: hsl(120, 100%, 40%);">+                                      # return -1</span><br><span>                  else:</span><br><span style="color: hsl(0, 100%, 40%);">-                           self.burst_fwd.ts_pass = ts</span><br><span style="color: hsl(120, 100%, 40%);">+                           # Activate TS (add to TS pass-filter list)</span><br><span style="color: hsl(120, 100%, 40%);">+                            if ts not in self.burst_fwd.ts_pass_list:</span><br><span style="color: hsl(120, 100%, 40%);">+                                     self.burst_fwd.ts_pass_list.append(ts)</span><br><span style="color: hsl(120, 100%, 40%);">+                                else:</span><br><span style="color: hsl(120, 100%, 40%);">+                                 print("[!] TS %u was already activated before" % ts)</span><br><span style="color: hsl(120, 100%, 40%);">+                                        # TODO: uncomment as soon as RESET is introduced</span><br><span style="color: hsl(120, 100%, 40%);">+                                      # return -1</span><br><span> </span><br><span>                      return 0</span><br><span> </span><br><span></span><br></pre><p>To view, visit <a href="https://gerrit.osmocom.org/12182">change 12182</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/12182"/><meta itemprop="name" content="View Change"/></div></div>

<div style="display:none"> Gerrit-Project: osmocom-bb </div>
<div style="display:none"> Gerrit-Branch: master </div>
<div style="display:none"> Gerrit-MessageType: merged </div>
<div style="display:none"> Gerrit-Change-Id: Ie1490adaf7a7c62c966aeb60c1898eaf3b5a1e84 </div>
<div style="display:none"> Gerrit-Change-Number: 12182 </div>
<div style="display:none"> Gerrit-PatchSet: 1 </div>
<div style="display:none"> Gerrit-Owner: Vadim Yanitskiy <axilirator@gmail.com> </div>
<div style="display:none"> Gerrit-Reviewer: Jenkins Builder (1000002) </div>
<div style="display:none"> Gerrit-Reviewer: Pau Espin Pedrol <pespin@sysmocom.de> </div>
<div style="display:none"> Gerrit-Reviewer: Vadim Yanitskiy <axilirator@gmail.com> </div>