<p>srs_andre <strong>submitted</strong> this change.</p><p><a href="https://gerrit.osmocom.org/c/osmo-gsm-tester/+/17583">View Change</a></p><div style="white-space:pre-wrap">Approvals:
Jenkins Builder: Verified
pespin: Looks good to me, approved
</div><pre style="font-family: monospace,monospace; white-space: pre-wrap;">srs_enb: add num_cells param to srsENB<br><br>this is needed to support the upcoming multi-cell feature in srsENB.<br>It's required for carrier aggregation (CA) but can also<br>be used for (currently) two independent 4G cells.<br><br>This commit adds baseline support for the parameter. Upcoming<br>commits will add hooks to configure the cell's EARFCN, etc.<br><br>Change-Id: I6d1658bf820163aee03b64b0f4ac68046c243f37<br>---<br>M example/defaults.conf<br>A example/scenarios/mod-enb-ncells@.conf<br>M src/osmo_gsm_tester/resource.py<br>M src/osmo_gsm_tester/srs_enb.py<br>M src/osmo_gsm_tester/templates/srsenb_rr.conf.tmpl<br>5 files changed, 47 insertions(+), 0 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 dcb84db..b1fbfbb 100644</span><br><span>--- a/example/defaults.conf</span><br><span>+++ b/example/defaults.conf</span><br><span>@@ -105,6 +105,7 @@</span><br><span> num_prb: 100</span><br><span> transmission_mode: 1</span><br><span> enable_pcap: false</span><br><span style="color: hsl(120, 100%, 40%);">+ num_cells: 1</span><br><span> </span><br><span> srsue:</span><br><span> enable_pcap: false</span><br><span>diff --git a/example/scenarios/mod-enb-ncells@.conf b/example/scenarios/mod-enb-ncells@.conf</span><br><span>new file mode 100644</span><br><span>index 0000000..b57b94a</span><br><span>--- /dev/null</span><br><span>+++ b/example/scenarios/mod-enb-ncells@.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%);">+ enb:</span><br><span style="color: hsl(120, 100%, 40%);">+ - num_cells: ${param1}</span><br><span>diff --git a/src/osmo_gsm_tester/resource.py b/src/osmo_gsm_tester/resource.py</span><br><span>index 5862aef..3b805ff 100644</span><br><span>--- a/src/osmo_gsm_tester/resource.py</span><br><span>+++ b/src/osmo_gsm_tester/resource.py</span><br><span>@@ -90,6 +90,7 @@</span><br><span> 'enb[].addr': schema.IPV4,</span><br><span> 'enb[].num_prb': schema.UINT,</span><br><span> 'enb[].transmission_mode': schema.LTE_TRANSMISSION_MODE,</span><br><span style="color: hsl(120, 100%, 40%);">+ 'enb[].num_cells': schema.UINT,</span><br><span> 'enb[].rf_dev_type': schema.STR,</span><br><span> 'enb[].rf_dev_args': schema.STR,</span><br><span> 'arfcn[].arfcn': schema.INT,</span><br><span>diff --git a/src/osmo_gsm_tester/srs_enb.py b/src/osmo_gsm_tester/srs_enb.py</span><br><span>index 940665e..c4c72bc 100644</span><br><span>--- a/src/osmo_gsm_tester/srs_enb.py</span><br><span>+++ b/src/osmo_gsm_tester/srs_enb.py</span><br><span>@@ -201,6 +201,8 @@</span><br><span> assert self._num_prb</span><br><span> self._txmode = int(values['enb'].get('transmission_mode', None))</span><br><span> assert self._txmode</span><br><span style="color: hsl(120, 100%, 40%);">+ self._num_cells = int(values['enb'].get('num_cells', None))</span><br><span style="color: hsl(120, 100%, 40%);">+ assert self._num_cells</span><br><span> config.overlay(values, dict(enb={ 'num_ports': self.num_ports() }))</span><br><span> </span><br><span> # We need to set some specific variables programatically here to match IP addresses:</span><br><span>@@ -248,6 +250,9 @@</span><br><span> def num_prb(self):</span><br><span> return self._num_prb</span><br><span> </span><br><span style="color: hsl(120, 100%, 40%);">+ def num_cells(self):</span><br><span style="color: hsl(120, 100%, 40%);">+ return self._num_cells</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span> def num_ports(self):</span><br><span> if self._txmode == 1:</span><br><span> return 1</span><br><span>diff --git a/src/osmo_gsm_tester/templates/srsenb_rr.conf.tmpl b/src/osmo_gsm_tester/templates/srsenb_rr.conf.tmpl</span><br><span>index 3dd3fee..2d31c3d 100644</span><br><span>--- a/src/osmo_gsm_tester/templates/srsenb_rr.conf.tmpl</span><br><span>+++ b/src/osmo_gsm_tester/templates/srsenb_rr.conf.tmpl</span><br><span>@@ -86,5 +86,42 @@</span><br><span> rsrq_config = 4;</span><br><span> };</span><br><span> }</span><br><span style="color: hsl(120, 100%, 40%);">+% if enb.get('num_cells') == '2':</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%);">+ rf_port = 1;</span><br><span style="color: hsl(120, 100%, 40%);">+ cell_id = 0x02;</span><br><span style="color: hsl(120, 100%, 40%);">+ tac = 0x0002;</span><br><span style="color: hsl(120, 100%, 40%);">+ pci = 2;</span><br><span style="color: hsl(120, 100%, 40%);">+ root_seq_idx = 205;</span><br><span style="color: hsl(120, 100%, 40%);">+ dl_earfcn = 2910;</span><br><span style="color: hsl(120, 100%, 40%);">+ ul_earfcn = 20910;</span><br><span style="color: hsl(120, 100%, 40%);">+ ho_active = false;</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+ // CA cells</span><br><span style="color: hsl(120, 100%, 40%);">+ scell_list = (</span><br><span style="color: hsl(120, 100%, 40%);">+ {cell_id = 0x01; cross_carrier_scheduling = false; scheduling_cell_id = 0x01; ul_allowed = true}</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%);">+ // Cells available for handover</span><br><span style="color: hsl(120, 100%, 40%);">+ meas_cell_list =</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%);">+ eci = 0x19C02;</span><br><span style="color: hsl(120, 100%, 40%);">+ dl_earfcn = 2850;</span><br><span style="color: hsl(120, 100%, 40%);">+ pci = 1;</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%);">+ // ReportCfg (only A3 supported)</span><br><span style="color: hsl(120, 100%, 40%);">+ meas_report_desc = {</span><br><span style="color: hsl(120, 100%, 40%);">+ a3_report_type = "RSRP";</span><br><span style="color: hsl(120, 100%, 40%);">+ a3_offset = 6;</span><br><span style="color: hsl(120, 100%, 40%);">+ a3_hysteresis = 0;</span><br><span style="color: hsl(120, 100%, 40%);">+ a3_time_to_trigger = 480;</span><br><span style="color: hsl(120, 100%, 40%);">+ rsrq_config = 4;</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%);">+% endif</span><br><span> // Add here more cells</span><br><span> );</span><br><span></span><br></pre><p>To view, visit <a href="https://gerrit.osmocom.org/c/osmo-gsm-tester/+/17583">change 17583</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/+/17583"/><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: I6d1658bf820163aee03b64b0f4ac68046c243f37 </div>
<div style="display:none"> Gerrit-Change-Number: 17583 </div>
<div style="display:none"> Gerrit-PatchSet: 2 </div>
<div style="display:none"> Gerrit-Owner: srs_andre <andre@softwareradiosystems.com> </div>
<div style="display:none"> Gerrit-Reviewer: Jenkins Builder </div>
<div style="display:none"> Gerrit-Reviewer: pespin <pespin@sysmocom.de> </div>
<div style="display:none"> Gerrit-Reviewer: srs_andre <andre@softwareradiosystems.com> </div>
<div style="display:none"> Gerrit-MessageType: merged </div>