<p>fixeria has uploaded this change for <strong>review</strong>.</p><p><a href="https://gerrit.osmocom.org/c/osmo-pcu/+/17708">View Change</a></p><pre style="font-family: monospace,monospace; white-space: pre-wrap;">l1if: fix pcu_rx_rach_ind(): also send PTCCH/U to GSMTAP<br><br>Change-Id: I5cc4c3d2522215a31924121f83fcc2ac9ac6fe9c<br>---<br>M src/bts.cpp<br>M src/bts.h<br>M src/pcu_l1_if.cpp<br>M src/pcu_vty.c<br>4 files changed, 15 insertions(+), 6 deletions(-)<br><br></pre><pre style="font-family: monospace,monospace; white-space: pre-wrap;">git pull ssh://gerrit.osmocom.org:29418/osmo-pcu refs/changes/08/17708/1</pre><pre style="font-family: monospace,monospace; white-space: pre-wrap;"><span>diff --git a/src/bts.cpp b/src/bts.cpp</span><br><span>index 5e1725c..2e7fec2 100644</span><br><span>--- a/src/bts.cpp</span><br><span>+++ b/src/bts.cpp</span><br><span>@@ -752,9 +752,6 @@</span><br><span> /* Determine full frame number */</span><br><span> Fn = rfn_to_fn(Fn);</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">- send_gsmtap(PCU_GSMTAP_C_UL_RACH, true, 0, ts_no, GSMTAP_CHANNEL_RACH,</span><br><span style="color: hsl(0, 100%, 40%);">- Fn, (uint8_t*)&ra, is_11bit ? 2 : 1);</span><br><span style="color: hsl(0, 100%, 40%);">-</span><br><span> LOGP(DRLCMAC, LOGL_DEBUG, "MS requests UL TBF on RACH, "</span><br><span> "so we provide one: ra=0x%02x Fn=%u qta=%d is_11bit=%d:\n",</span><br><span> ra, Fn, qta, is_11bit);</span><br><span>diff --git a/src/bts.h b/src/bts.h</span><br><span>index 4fddc0b..2c2d24e 100644</span><br><span>--- a/src/bts.h</span><br><span>+++ b/src/bts.h</span><br><span>@@ -67,6 +67,7 @@</span><br><span> PCU_GSMTAP_C_UL_DATA_GPRS = 18, /* uplink GPRS data blocks */</span><br><span> PCU_GSMTAP_C_UL_DATA_EGPRS = 19, /* uplink EGPRS data blocks */</span><br><span> PCU_GSMTAP_C_UL_RACH = 20, /* uplink RACH bursts */</span><br><span style="color: hsl(120, 100%, 40%);">+ PCU_GSMTAP_C_UL_PTCCH = 21, /* uplink PTCCH bursts */</span><br><span> };</span><br><span> </span><br><span> struct BTS;</span><br><span>diff --git a/src/pcu_l1_if.cpp b/src/pcu_l1_if.cpp</span><br><span>index 37a0705..a5d5662 100644</span><br><span>--- a/src/pcu_l1_if.cpp</span><br><span>+++ b/src/pcu_l1_if.cpp</span><br><span>@@ -437,22 +437,31 @@</span><br><span> </span><br><span> static int pcu_rx_rach_ind(struct gsm_pcu_if_rach_ind *rach_ind)</span><br><span> {</span><br><span style="color: hsl(120, 100%, 40%);">+ BTS *bts = BTS::main_bts(); /* FIXME: resolve BTS by number */</span><br><span style="color: hsl(120, 100%, 40%);">+ int current_fn = bts->current_frame_number();</span><br><span> int rc = 0;</span><br><span style="color: hsl(0, 100%, 40%);">- int current_fn = get_current_fn();</span><br><span> </span><br><span> LOGP(DL1IF, LOGL_INFO, "RACH request received: sapi=%d "</span><br><span> "qta=%d, ra=0x%02x, fn=%u, cur_fn=%d, is_11bit=%d\n", rach_ind->sapi, rach_ind->qta,</span><br><span> rach_ind->ra, rach_ind->fn, current_fn, rach_ind->is_11bit);</span><br><span> </span><br><span style="color: hsl(120, 100%, 40%);">+#define send_gsmtap_ra(category, chan) do { \</span><br><span style="color: hsl(120, 100%, 40%);">+ bts->send_gsmtap(category, true, rach_ind->trx_nr, rach_ind->ts_nr, \</span><br><span style="color: hsl(120, 100%, 40%);">+ chan, bts->rfn_to_fn(rach_ind->fn), \</span><br><span style="color: hsl(120, 100%, 40%);">+ (uint8_t*)&rach_ind->ra, rach_ind->is_11bit ? 2 : 1); \</span><br><span style="color: hsl(120, 100%, 40%);">+} while (0)</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span> switch (rach_ind->sapi) {</span><br><span> case PCU_IF_SAPI_RACH:</span><br><span style="color: hsl(0, 100%, 40%);">- rc = BTS::main_bts()->rcv_rach(</span><br><span style="color: hsl(120, 100%, 40%);">+ send_gsmtap_ra(PCU_GSMTAP_C_UL_RACH, GSMTAP_CHANNEL_RACH);</span><br><span style="color: hsl(120, 100%, 40%);">+ rc = bts->rcv_rach(</span><br><span> rach_ind->ra, rach_ind->fn,</span><br><span> rach_ind->qta, rach_ind->is_11bit,</span><br><span> (ph_burst_type)rach_ind->burst_type);</span><br><span> break;</span><br><span> case PCU_IF_SAPI_PTCCH:</span><br><span style="color: hsl(0, 100%, 40%);">- rc = BTS::main_bts()->rcv_ptcch_rach(</span><br><span style="color: hsl(120, 100%, 40%);">+ send_gsmtap_ra(PCU_GSMTAP_C_UL_PTCCH, GSMTAP_CHANNEL_PTCCH);</span><br><span style="color: hsl(120, 100%, 40%);">+ rc = bts->rcv_ptcch_rach(</span><br><span> rach_ind->trx_nr, rach_ind->ts_nr,</span><br><span> rach_ind->fn, rach_ind->qta);</span><br><span> break;</span><br><span>diff --git a/src/pcu_vty.c b/src/pcu_vty.c</span><br><span>index 9cae777..99c92b7 100644</span><br><span>--- a/src/pcu_vty.c</span><br><span>+++ b/src/pcu_vty.c</span><br><span>@@ -38,6 +38,7 @@</span><br><span> { PCU_GSMTAP_C_UL_DATA_GPRS, "ul-data-gprs" },</span><br><span> { PCU_GSMTAP_C_UL_DATA_EGPRS, "ul-data-egprs" },</span><br><span> { PCU_GSMTAP_C_UL_RACH, "ul-rach" },</span><br><span style="color: hsl(120, 100%, 40%);">+ { PCU_GSMTAP_C_UL_PTCCH, "ul-ptcch" },</span><br><span> </span><br><span> { 0, NULL }</span><br><span> };</span><br><span>@@ -58,6 +59,7 @@</span><br><span> { PCU_GSMTAP_C_UL_DATA_GPRS, "Uplink Data Blocks (GPRS)" },</span><br><span> { PCU_GSMTAP_C_UL_DATA_EGPRS, "Uplink Data Blocks (EGPRS)" },</span><br><span> { PCU_GSMTAP_C_UL_RACH, "Uplink RACH Bursts" },</span><br><span style="color: hsl(120, 100%, 40%);">+ { PCU_GSMTAP_C_UL_PTCCH, "Uplink PTCCH Bursts" },</span><br><span> </span><br><span> { 0, NULL }</span><br><span> };</span><br><span></span><br></pre><p>To view, visit <a href="https://gerrit.osmocom.org/c/osmo-pcu/+/17708">change 17708</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-pcu/+/17708"/><meta itemprop="name" content="View Change"/></div></div>
<div style="display:none"> Gerrit-Project: osmo-pcu </div>
<div style="display:none"> Gerrit-Branch: master </div>
<div style="display:none"> Gerrit-Change-Id: I5cc4c3d2522215a31924121f83fcc2ac9ac6fe9c </div>
<div style="display:none"> Gerrit-Change-Number: 17708 </div>
<div style="display:none"> Gerrit-PatchSet: 1 </div>
<div style="display:none"> Gerrit-Owner: fixeria <axilirator@gmail.com> </div>
<div style="display:none"> Gerrit-MessageType: newchange </div>