<p>pespin has uploaded this change for <strong>review</strong>.</p><p><a href="https://gerrit.osmocom.org/c/osmo-bts/+/18910">View Change</a></p><pre style="font-family: monospace,monospace; white-space: pre-wrap;">bts-trx: Split part of bts_model_trx_close() steps into bts_model_deact_rf<br><br>bts_model_trx_close is only called during bts_shutdown immediately after<br>bts_model_deact_rf, so its logic keeps being essentially the same after<br>this code movement.<br><br>On the other hand, bts_model_deact_rf is also called during RSL link<br>establishment if it failed for whatever reason in<br>bts.c:trx_link_estab(). In that case, we want to make sure the TRX is<br>not used so we need to implement bts_model_deact_rf.<br><br>Change-Id: Id4eae743da81773a04b82e7b454071b0cc66677a<br>---<br>M src/osmo-bts-trx/l1_if.c<br>1 file changed, 18 insertions(+), 7 deletions(-)<br><br></pre><pre style="font-family: monospace,monospace; white-space: pre-wrap;">git pull ssh://gerrit.osmocom.org:29418/osmo-bts refs/changes/10/18910/1</pre><pre style="font-family: monospace,monospace; white-space: pre-wrap;"><span>diff --git a/src/osmo-bts-trx/l1_if.c b/src/osmo-bts-trx/l1_if.c</span><br><span>index f068659..1848253 100644</span><br><span>--- a/src/osmo-bts-trx/l1_if.c</span><br><span>+++ b/src/osmo-bts-trx/l1_if.c</span><br><span>@@ -397,8 +397,8 @@</span><br><span>         return oml_mo_opstart_ack(&trx->mo);</span><br><span> }</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-/* deactivate transceiver */</span><br><span style="color: hsl(0, 100%, 40%);">-int bts_model_trx_close(struct gsm_bts_trx *trx)</span><br><span style="color: hsl(120, 100%, 40%);">+/* Deact RF on transceiver */</span><br><span style="color: hsl(120, 100%, 40%);">+int bts_model_trx_deact_rf(struct gsm_bts_trx *trx)</span><br><span> {</span><br><span>    struct phy_instance *pinst = trx_phy_instance(trx);</span><br><span>  struct trx_l1h *l1h = pinst->u.osmotrx.hdl;</span><br><span>@@ -412,6 +412,22 @@</span><br><span>            pchan == GSM_PCHAN_CCCH_SDCCH4_CBCH) {</span><br><span>           lchan_set_state(&trx->ts[0].lchan[CCCH_LCHAN], LCHAN_S_INACTIVE);</span><br><span>     }</span><br><span style="color: hsl(120, 100%, 40%);">+     /* FIXME: There's currently no way to communicate to osmo-trx through</span><br><span style="color: hsl(120, 100%, 40%);">+      * TRXC that a specific TRX processing shall be paused. Let's simply</span><br><span style="color: hsl(120, 100%, 40%);">+       * make sure that at least we don't transmit with power on it:</span><br><span style="color: hsl(120, 100%, 40%);">+     */</span><br><span style="color: hsl(120, 100%, 40%);">+   power_ramp_start(trx, 0, 1, NULL);</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+  /* Set to Operational State: Disabled */</span><br><span style="color: hsl(120, 100%, 40%);">+      check_transceiver_availability_trx(l1h, 0);</span><br><span style="color: hsl(120, 100%, 40%);">+   return 0;</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%);">+/* deactivate transceiver */</span><br><span style="color: hsl(120, 100%, 40%);">+int bts_model_trx_close(struct gsm_bts_trx *trx)</span><br><span style="color: hsl(120, 100%, 40%);">+{</span><br><span style="color: hsl(120, 100%, 40%);">+     struct phy_instance *pinst = trx_phy_instance(trx);</span><br><span style="color: hsl(120, 100%, 40%);">+   struct trx_l1h *l1h = pinst->u.osmotrx.hdl;</span><br><span> </span><br><span>   /* power off transceiver, if not already */</span><br><span>  if (l1h->config.enabled) {</span><br><span>@@ -847,11 +863,6 @@</span><br><span>         return oml_mo_statechg_ack(mo);</span><br><span> }</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-int bts_model_trx_deact_rf(struct gsm_bts_trx *trx)</span><br><span style="color: hsl(0, 100%, 40%);">-{</span><br><span style="color: hsl(0, 100%, 40%);">-    return 0;</span><br><span style="color: hsl(0, 100%, 40%);">-}</span><br><span style="color: hsl(0, 100%, 40%);">-</span><br><span> int bts_model_oml_estab(struct gsm_bts *bts)</span><br><span> {</span><br><span>      return 0;</span><br><span></span><br></pre><p>To view, visit <a href="https://gerrit.osmocom.org/c/osmo-bts/+/18910">change 18910</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-bts/+/18910"/><meta itemprop="name" content="View Change"/></div></div>

<div style="display:none"> Gerrit-Project: osmo-bts </div>
<div style="display:none"> Gerrit-Branch: master </div>
<div style="display:none"> Gerrit-Change-Id: Id4eae743da81773a04b82e7b454071b0cc66677a </div>
<div style="display:none"> Gerrit-Change-Number: 18910 </div>
<div style="display:none"> Gerrit-PatchSet: 1 </div>
<div style="display:none"> Gerrit-Owner: pespin <pespin@sysmocom.de> </div>
<div style="display:none"> Gerrit-MessageType: newchange </div>