<p>srs_andre has uploaded this change for <strong>review</strong>.</p><p><a href="https://gerrit.osmocom.org/c/osmo-gsm-tester/+/21258">View Change</a></p><pre style="font-family: monospace,monospace; white-space: pre-wrap;">ms_amarisoft: fix various regressions<br><br>this patch fixes some regressions in the Amarisoft UE class,<br>the config template, etc. that have been undetected bc we never<br>executed tests with it.<br><br>Change-Id: I397e675a4018acf3372a3b7e29fd864703b2b919<br>---<br>M src/osmo_gsm_tester/obj/ms.py<br>M src/osmo_gsm_tester/obj/ms_amarisoft.py<br>M src/osmo_gsm_tester/templates/amarisoft_lteue.cfg.tmpl<br>M sysmocom/defaults.conf<br>4 files changed, 23 insertions(+), 11 deletions(-)<br><br></pre><pre style="font-family: monospace,monospace; white-space: pre-wrap;">git pull ssh://gerrit.osmocom.org:29418/osmo-gsm-tester refs/changes/58/21258/1</pre><pre style="font-family: monospace,monospace; white-space: pre-wrap;"><span>diff --git a/src/osmo_gsm_tester/obj/ms.py b/src/osmo_gsm_tester/obj/ms.py</span><br><span>index 70ce558..83f747f 100644</span><br><span>--- a/src/osmo_gsm_tester/obj/ms.py</span><br><span>+++ b/src/osmo_gsm_tester/obj/ms.py</span><br><span>@@ -32,7 +32,8 @@</span><br><span>         'auth_algo': schema.AUTH_ALGO,</span><br><span>         'apn_ipaddr': schema.IPV4,</span><br><span>         'ciphers[]': schema.CIPHER,</span><br><span style="color: hsl(0, 100%, 40%);">-        'features[]': schema.MODEM_FEATURE</span><br><span style="color: hsl(120, 100%, 40%);">+        'features[]': schema.MODEM_FEATURE,</span><br><span style="color: hsl(120, 100%, 40%);">+        'count': schema.UINT</span><br><span>         }</span><br><span>     schema.register_resource_schema('modem', resource_schema)</span><br><span> </span><br><span>@@ -125,3 +126,6 @@</span><br><span> </span><br><span>     def get_counter(self, counter_name):</span><br><span>         raise log.Error('get_counter() not implemented!')</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+    def features(self):</span><br><span style="color: hsl(120, 100%, 40%);">+        return self._conf.get('features', [])</span><br><span>diff --git a/src/osmo_gsm_tester/obj/ms_amarisoft.py b/src/osmo_gsm_tester/obj/ms_amarisoft.py</span><br><span>index fa16d63..e94419f 100644</span><br><span>--- a/src/osmo_gsm_tester/obj/ms_amarisoft.py</span><br><span>+++ b/src/osmo_gsm_tester/obj/ms_amarisoft.py</span><br><span>@@ -33,6 +33,7 @@</span><br><span>     schema.register_resource_schema('modem', resource_schema)</span><br><span>     config_schema = {</span><br><span>         'license_server_addr': schema.IPV4,</span><br><span style="color: hsl(120, 100%, 40%);">+        'count': schema.UINT,</span><br><span>         }</span><br><span>     schema.register_config_schema('amarisoft', config_schema)</span><br><span> </span><br><span>@@ -98,6 +99,7 @@</span><br><span>         self.remote_config_rf_file =  None</span><br><span>         self.remote_log_file = None</span><br><span>         self.remote_ifup_file = None</span><br><span style="color: hsl(120, 100%, 40%);">+        self.num_carriers = 1</span><br><span>         if not rf_type_valid(conf.get('rf_dev_type', None)):</span><br><span>             raise log.Error('Invalid rf_dev_type=%s' % conf.get('rf_dev_type', None))</span><br><span>         if conf.get('rf_dev_type') == 'zmq':</span><br><span>@@ -247,13 +249,17 @@</span><br><span>         # We need to set some specific variables programatically here to match IP addresses:</span><br><span>         if self._conf.get('rf_dev_type') == 'zmq':</span><br><span>             base_srate = num_prb2base_srate(self.enb.num_prb())</span><br><span style="color: hsl(0, 100%, 40%);">-            enb_base_port = self.enb.zmq_base_bind_port()</span><br><span style="color: hsl(0, 100%, 40%);">-            rf_dev_args = 'tx_port0=tcp://' + self.addr() + ':' + str(self._zmq_base_bind_port + 0) \</span><br><span style="color: hsl(0, 100%, 40%);">-                        + ',tx_port1=tcp://' + self.addr() + ':' + str(self._zmq_base_bind_port + 1) \</span><br><span style="color: hsl(0, 100%, 40%);">-                        + ',rx_port0=tcp://' + self.enb.addr() + ':' + str(enb_base_port + 0) \</span><br><span style="color: hsl(0, 100%, 40%);">-                        + ',rx_port1=tcp://' + self.enb.addr() + ':' + str(enb_base_port + 1) \</span><br><span style="color: hsl(0, 100%, 40%);">-                        + ',tx_freq=2510e6,rx_freq=2630e6,tx_freq2=2530e6,rx_freq2=2650e6' \</span><br><span style="color: hsl(0, 100%, 40%);">-                        + ',id=ue,base_srate='+ str(base_srate)</span><br><span style="color: hsl(120, 100%, 40%);">+            rf_dev_args = self.enb.get_zmq_rf_dev_args_for_ue(self)</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+            # Single carrier</span><br><span style="color: hsl(120, 100%, 40%);">+            if self.enb.num_ports() == 1:</span><br><span style="color: hsl(120, 100%, 40%);">+                # SISO</span><br><span style="color: hsl(120, 100%, 40%);">+                rf_dev_args += ',rx_freq0=2630e6,tx_freq0=2510e6'</span><br><span style="color: hsl(120, 100%, 40%);">+            elif self.enb.num_ports() == 2:</span><br><span style="color: hsl(120, 100%, 40%);">+                # MIMO</span><br><span style="color: hsl(120, 100%, 40%);">+                rf_dev_args += ',rx_freq0=2630e6,rx_freq1=2630e6,tx_freq0=2510e6,tx_freq1=2510e6'</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+            rf_dev_args += ',id=ue,base_srate='+ str(base_srate)</span><br><span>             config.overlay(values, dict(ue=dict(sample_rate = base_srate / (1000*1000),</span><br><span>                                                 rf_dev_args = rf_dev_args)))</span><br><span> </span><br><span>@@ -285,6 +291,7 @@</span><br><span>         # different cfg namespace 'trx'. Copy needed values over there:</span><br><span>         config.overlay(values, dict(trx=dict(rf_dev_type=values['ue'].get('rf_dev_type', None),</span><br><span>                                              rf_dev_args=values['ue'].get('rf_dev_args', None),</span><br><span style="color: hsl(120, 100%, 40%);">+                                             rf_dev_sync=values['ue'].get('rf_dev_sync', None),</span><br><span>                                              rx_gain=values['ue'].get('rx_gain', None),</span><br><span>                                              tx_gain=values['ue'].get('tx_gain', None),</span><br><span>                                             )))</span><br><span>@@ -331,7 +338,7 @@</span><br><span>         proc.launch_sync()</span><br><span>         return proc</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-    def verify_metric(self, value, operation='avg', metric='dl_brate', criterion='gt'):</span><br><span style="color: hsl(120, 100%, 40%);">+    def verify_metric(self, value, operation='avg', metric='dl_brate', criterion='gt', window=None):</span><br><span>         return 'metrics not yet implemented with Amarisoft UE'</span><br><span> </span><br><span> # vim: expandtab tabstop=4 shiftwidth=4</span><br><span>diff --git a/src/osmo_gsm_tester/templates/amarisoft_lteue.cfg.tmpl b/src/osmo_gsm_tester/templates/amarisoft_lteue.cfg.tmpl</span><br><span>index d6ba32d..6f38491 100644</span><br><span>--- a/src/osmo_gsm_tester/templates/amarisoft_lteue.cfg.tmpl</span><br><span>+++ b/src/osmo_gsm_tester/templates/amarisoft_lteue.cfg.tmpl</span><br><span>@@ -48,7 +48,7 @@</span><br><span>       ue_category: 4,</span><br><span> </span><br><span>       /* USIM data */</span><br><span style="color: hsl(0, 100%, 40%);">-      sim_algo: "${sub.auth_algo}", /* USIM authentication algorithm: xor, milenage or tuak */</span><br><span style="color: hsl(120, 100%, 40%);">+      sim_algo: "${ue.auth_algo}", /* USIM authentication algorithm: xor, milenage or tuak */</span><br><span>       imsi: "${ue.imsi}",</span><br><span>       K: "${ue.ki}",</span><br><span> % if ue.opc is not None:</span><br><span>@@ -65,7 +65,7 @@</span><br><span>         event: "power_on",</span><br><span>         start_time: 1,</span><br><span>       }],</span><br><span style="color: hsl(0, 100%, 40%);">-      ue_count: 1,</span><br><span style="color: hsl(120, 100%, 40%);">+      ue_count: ${ue.count},</span><br><span>     }</span><br><span>   ],</span><br><span> </span><br><span>diff --git a/sysmocom/defaults.conf b/sysmocom/defaults.conf</span><br><span>index a9015f7..7704857 100644</span><br><span>--- a/sysmocom/defaults.conf</span><br><span>+++ b/sysmocom/defaults.conf</span><br><span>@@ -180,6 +180,7 @@</span><br><span> amarisoftue:</span><br><span>   tx_gain: 89</span><br><span>   rx_gain: 60</span><br><span style="color: hsl(120, 100%, 40%);">+  rf_dev_sync: none</span><br><span> </span><br><span> iperf3cli:</span><br><span>   time: 60</span><br><span></span><br></pre><p>To view, visit <a href="https://gerrit.osmocom.org/c/osmo-gsm-tester/+/21258">change 21258</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-gsm-tester/+/21258"/><meta itemprop="name" content="View Change"/></div></div>

<div style="display:none"> Gerrit-Project: osmo-gsm-tester </div>
<div style="display:none"> Gerrit-Branch: master </div>
<div style="display:none"> Gerrit-Change-Id: I397e675a4018acf3372a3b7e29fd864703b2b919 </div>
<div style="display:none"> Gerrit-Change-Number: 21258 </div>
<div style="display:none"> Gerrit-PatchSet: 1 </div>
<div style="display:none"> Gerrit-Owner: srs_andre <andre@softwareradiosystems.com> </div>
<div style="display:none"> Gerrit-MessageType: newchange </div>