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

</div><pre style="font-family: monospace,monospace; white-space: pre-wrap;">Add support to enable EGPRS<br><br>Change-Id: I682f0c1b4cb97b704d646f18f54e748baaefd677<br>---<br>M example/defaults.conf<br>A example/scenarios/mod-bts0-egprs.conf<br>M src/osmo_gsm_tester/bts_osmotrx.py<br>M src/osmo_gsm_tester/resource.py<br>M src/osmo_gsm_tester/schema.py<br>M src/osmo_gsm_tester/templates/osmo-bsc.cfg.tmpl<br>M src/osmo_gsm_tester/templates/osmo-trx.cfg.tmpl<br>7 files changed, 16 insertions(+), 3 deletions(-)<br><br></pre><pre style="font-family: monospace,monospace; white-space: pre-wrap;"><span>diff --git a/example/defaults.conf b/example/defaults.conf</span><br><span>index 1855883..eee17b1 100644</span><br><span>--- a/example/defaults.conf</span><br><span>+++ b/example/defaults.conf</span><br><span>@@ -31,6 +31,7 @@</span><br><span>   stream_id: 255</span><br><span>   osmobsc_bts_type: sysmobts</span><br><span>   channel_allocator: ascending</span><br><span style="color: hsl(120, 100%, 40%);">+  gprs_mode: gprs</span><br><span>   num_trx: 1</span><br><span>   max_trx: 1</span><br><span>   trx_list:</span><br><span>diff --git a/example/scenarios/mod-bts0-egprs.conf b/example/scenarios/mod-bts0-egprs.conf</span><br><span>new file mode 100644</span><br><span>index 0000000..542dd9d</span><br><span>--- /dev/null</span><br><span>+++ b/example/scenarios/mod-bts0-egprs.conf</span><br><span>@@ -0,0 +1,3 @@</span><br><span style="color: hsl(120, 100%, 40%);">+modifiers:</span><br><span style="color: hsl(120, 100%, 40%);">+  bts:</span><br><span style="color: hsl(120, 100%, 40%);">+  - gprs_mode: egprs</span><br><span>diff --git a/src/osmo_gsm_tester/bts_osmotrx.py b/src/osmo_gsm_tester/bts_osmotrx.py</span><br><span>index 86afeec..0c941e0 100644</span><br><span>--- a/src/osmo_gsm_tester/bts_osmotrx.py</span><br><span>+++ b/src/osmo_gsm_tester/bts_osmotrx.py</span><br><span>@@ -77,6 +77,7 @@</span><br><span>                             'osmo_trx': {</span><br><span>                                 'bts_ip': self.remote_addr(),</span><br><span>                                 'trx_ip': self.trx_remote_ip(),</span><br><span style="color: hsl(120, 100%, 40%);">+                                'egprs': 'enable' if self.conf_for_bsc()['gprs_mode'] == 'egprs' else 'disable',</span><br><span>                                 'channels': [{} for trx_i in range(self.num_trx())]</span><br><span>                             }</span><br><span>                         }</span><br><span>diff --git a/src/osmo_gsm_tester/resource.py b/src/osmo_gsm_tester/resource.py</span><br><span>index 3f2ddc7..6898926 100644</span><br><span>--- a/src/osmo_gsm_tester/resource.py</span><br><span>+++ b/src/osmo_gsm_tester/resource.py</span><br><span>@@ -57,6 +57,7 @@</span><br><span>         'bts[].direct_pcu': schema.BOOL_STR,</span><br><span>         'bts[].ciphers[]': schema.CIPHER,</span><br><span>         'bts[].channel_allocator': schema.CHAN_ALLOCATOR,</span><br><span style="color: hsl(120, 100%, 40%);">+        'bts[].gprs_mode': schema.GPRS_MODE,</span><br><span>         'bts[].num_trx': schema.UINT,</span><br><span>         'bts[].max_trx': schema.UINT,</span><br><span>         'bts[].trx_list[].addr': schema.IPV4,</span><br><span>diff --git a/src/osmo_gsm_tester/schema.py b/src/osmo_gsm_tester/schema.py</span><br><span>index 12cfd7a..14fe640 100644</span><br><span>--- a/src/osmo_gsm_tester/schema.py</span><br><span>+++ b/src/osmo_gsm_tester/schema.py</span><br><span>@@ -110,6 +110,11 @@</span><br><span>         return</span><br><span>     raise ValueError('Unknown Channel Allocator Policy %r' % val)</span><br><span> </span><br><span style="color: hsl(120, 100%, 40%);">+def gprs_mode(val):</span><br><span style="color: hsl(120, 100%, 40%);">+    if val in ('none', 'gprs', 'egprs'):</span><br><span style="color: hsl(120, 100%, 40%);">+        return</span><br><span style="color: hsl(120, 100%, 40%);">+    raise ValueError('Unknown GPRS mode %r' % val)</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span> def codec(val):</span><br><span>     if val in ('hr1', 'hr2', 'hr3', 'fr1', 'fr2', 'fr3'):</span><br><span>         return</span><br><span>@@ -136,6 +141,7 @@</span><br><span> MODEM_FEATURE = 'modem_feature'</span><br><span> PHY_CHAN = 'chan'</span><br><span> CHAN_ALLOCATOR = 'chan_allocator'</span><br><span style="color: hsl(120, 100%, 40%);">+GPRS_MODE = 'gprs_mode'</span><br><span> CODEC = 'codec'</span><br><span> OSMO_TRX_CLOCK_REF = 'osmo_trx_clock_ref'</span><br><span> </span><br><span>@@ -156,6 +162,7 @@</span><br><span>         MODEM_FEATURE: modem_feature,</span><br><span>         PHY_CHAN: phy_channel_config,</span><br><span>         CHAN_ALLOCATOR: channel_allocator,</span><br><span style="color: hsl(120, 100%, 40%);">+        GPRS_MODE: gprs_mode,</span><br><span>         CODEC: codec,</span><br><span>         OSMO_TRX_CLOCK_REF: osmo_trx_clock_ref,</span><br><span>     }</span><br><span>diff --git a/src/osmo_gsm_tester/templates/osmo-bsc.cfg.tmpl b/src/osmo_gsm_tester/templates/osmo-bsc.cfg.tmpl</span><br><span>index 0d53ccb..4f39f79 100644</span><br><span>--- a/src/osmo_gsm_tester/templates/osmo-bsc.cfg.tmpl</span><br><span>+++ b/src/osmo_gsm_tester/templates/osmo-bsc.cfg.tmpl</span><br><span>@@ -57,8 +57,8 @@</span><br><span> % endif</span><br><span>   ip.access unit_id ${bts.ipa_unit_id} 0</span><br><span>   oml ip.access stream_id ${bts.stream_id} line 0</span><br><span style="color: hsl(0, 100%, 40%);">-% if bts.get('sgsn', False):</span><br><span style="color: hsl(0, 100%, 40%);">-  gprs mode gprs</span><br><span style="color: hsl(120, 100%, 40%);">+% if bts.get('sgsn', False) and bts['gprs_mode'] != 'none':</span><br><span style="color: hsl(120, 100%, 40%);">+  gprs mode ${bts.gprs_mode}</span><br><span>   gprs routing area ${bts.routing_area_code}</span><br><span>   gprs network-control-order nc1</span><br><span>   gprs cell bvci ${bts.bvci}</span><br><span>diff --git a/src/osmo_gsm_tester/templates/osmo-trx.cfg.tmpl b/src/osmo_gsm_tester/templates/osmo-trx.cfg.tmpl</span><br><span>index e7f2fb8..ede1902 100644</span><br><span>--- a/src/osmo_gsm_tester/templates/osmo-trx.cfg.tmpl</span><br><span>+++ b/src/osmo_gsm_tester/templates/osmo-trx.cfg.tmpl</span><br><span>@@ -18,7 +18,7 @@</span><br><span>  bind-ip ${osmo_trx.trx_ip}</span><br><span>  remote-ip ${osmo_trx.bts_ip}</span><br><span>  base-port 5700</span><br><span style="color: hsl(0, 100%, 40%);">- egprs disable</span><br><span style="color: hsl(120, 100%, 40%);">+ egprs ${osmo_trx.egprs}</span><br><span> %if osmo_trx.get('multi_arfcn', False):</span><br><span>  multi-arfcn enable</span><br><span> %else:</span><br><span></span><br></pre><p>To view, visit <a href="https://gerrit.osmocom.org/11497">change 11497</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/11497"/><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-MessageType: merged </div>
<div style="display:none"> Gerrit-Change-Id: I682f0c1b4cb97b704d646f18f54e748baaefd677 </div>
<div style="display:none"> Gerrit-Change-Number: 11497 </div>
<div style="display:none"> Gerrit-PatchSet: 2 </div>
<div style="display:none"> Gerrit-Owner: Pau Espin Pedrol <pespin@sysmocom.de> </div>
<div style="display:none"> Gerrit-Reviewer: Harald Welte <laforge@gnumonks.org> </div>
<div style="display:none"> Gerrit-Reviewer: Jenkins Builder (1000002) </div>
<div style="display:none"> Gerrit-Reviewer: Max <msuraev@sysmocom.de> </div>
<div style="display:none"> Gerrit-Reviewer: Pau Espin Pedrol <pespin@sysmocom.de> </div>