<p>fixeria has uploaded this change for <strong>review</strong>.</p><p><a href="https://gerrit.osmocom.org/c/osmo-bts/+/19513">View Change</a></p><pre style="font-family: monospace,monospace; white-space: pre-wrap;">pcuif_proto: version 10: add frequency hopping parameters<br><br>Change-Id: I04782222b499d0488269544910fbd4ed9929c05d<br>Related: Idf11bc4ba3ff0b00b32f2beab8fd020c67119d05<br>Related: SYS#4868, OS#4546, OS#4547<br>---<br>M include/osmo-bts/pcuif_proto.h<br>M src/common/pcu_sock.c<br>2 files changed, 27 insertions(+), 5 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/13/19513/1</pre><pre style="font-family: monospace,monospace; white-space: pre-wrap;"><span>diff --git a/include/osmo-bts/pcuif_proto.h b/include/osmo-bts/pcuif_proto.h</span><br><span>index e977914..bbba179 100644</span><br><span>--- a/include/osmo-bts/pcuif_proto.h</span><br><span>+++ b/include/osmo-bts/pcuif_proto.h</span><br><span>@@ -5,7 +5,7 @@</span><br><span> </span><br><span> #define PCU_SOCK_DEFAULT "/tmp/pcu_bts"</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-#define PCU_IF_VERSION 0x09</span><br><span style="color: hsl(120, 100%, 40%);">+#define PCU_IF_VERSION 0x0a</span><br><span> #define TXT_MAX_LEN 128</span><br><span> </span><br><span> /* msg_type */</span><br><span>@@ -112,12 +112,19 @@</span><br><span> uint8_t ts_nr;</span><br><span> } __attribute__ ((packed));</span><br><span> </span><br><span style="color: hsl(120, 100%, 40%);">+struct gsm_pcu_if_info_trx_ts {</span><br><span style="color: hsl(120, 100%, 40%);">+ uint8_t tsc;</span><br><span style="color: hsl(120, 100%, 40%);">+ uint8_t hopping;</span><br><span style="color: hsl(120, 100%, 40%);">+ uint8_t hsn;</span><br><span style="color: hsl(120, 100%, 40%);">+ uint8_t maio;</span><br><span style="color: hsl(120, 100%, 40%);">+ uint8_t ma[8];</span><br><span style="color: hsl(120, 100%, 40%);">+} __attribute__ ((packed));</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span> struct gsm_pcu_if_info_trx {</span><br><span> uint16_t arfcn;</span><br><span> uint8_t pdch_mask; /* PDCH channels per TS */</span><br><span style="color: hsl(0, 100%, 40%);">- uint8_t spare;</span><br><span style="color: hsl(0, 100%, 40%);">- uint8_t tsc[8]; /* TSC per channel */</span><br><span> uint32_t hlayer1;</span><br><span style="color: hsl(120, 100%, 40%);">+ struct gsm_pcu_if_info_trx_ts ts[8];</span><br><span> } __attribute__ ((packed));</span><br><span> </span><br><span> struct gsm_pcu_if_info_ind {</span><br><span>diff --git a/src/common/pcu_sock.c b/src/common/pcu_sock.c</span><br><span>index 53822a2..d8fccc9 100644</span><br><span>--- a/src/common/pcu_sock.c</span><br><span>+++ b/src/common/pcu_sock.c</span><br><span>@@ -138,10 +138,25 @@</span><br><span> continue;</span><br><span> </span><br><span> trx_info->pdch_mask |= (1 << tn);</span><br><span style="color: hsl(0, 100%, 40%);">- trx_info->tsc[tn] = gsm_ts_tsc(ts);</span><br><span style="color: hsl(120, 100%, 40%);">+ trx_info->ts[tn].tsc = gsm_ts_tsc(ts);</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+ if ((trx_info->ts[tn].hopping = ts->hopping.enabled)) {</span><br><span style="color: hsl(120, 100%, 40%);">+ trx_info->ts[tn].maio = ts->hopping.maio;</span><br><span style="color: hsl(120, 100%, 40%);">+ trx_info->ts[tn].hsn = ts->hopping.hsn;</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+ /* Mobile Allocation (8 * 8 bit buffer) */</span><br><span style="color: hsl(120, 100%, 40%);">+ memcpy(trx_info->ts[tn].ma, ts->hopping.ma,</span><br><span style="color: hsl(120, 100%, 40%);">+ sizeof(trx_info->ts[tn].ma));</span><br><span style="color: hsl(120, 100%, 40%);">+ }</span><br><span> </span><br><span> LOGPTRX(trx, DPCU, LOGL_INFO, "PDCH on ts=%u is available "</span><br><span style="color: hsl(0, 100%, 40%);">- "(tsc=%u arfcn=%u)\n", ts->nr, trx_info->tsc[tn], trx->arfcn);</span><br><span style="color: hsl(120, 100%, 40%);">+ "(tsc=%u ", ts->nr, trx_info->ts[tn].tsc);</span><br><span style="color: hsl(120, 100%, 40%);">+ if (ts->hopping.enabled) {</span><br><span style="color: hsl(120, 100%, 40%);">+ LOGPC(DPCU, LOGL_INFO, "hopping=yes hsn=%u maio=%u ma_len=%u)\n",</span><br><span style="color: hsl(120, 100%, 40%);">+ ts->hopping.hsn, ts->hopping.maio, ts->hopping.ma_len);</span><br><span style="color: hsl(120, 100%, 40%);">+ } else {</span><br><span style="color: hsl(120, 100%, 40%);">+ LOGPC(DPCU, LOGL_INFO, "hopping=no arfcn=%u)\n", trx->arfcn);</span><br><span style="color: hsl(120, 100%, 40%);">+ }</span><br><span> }</span><br><span> }</span><br><span> </span><br><span></span><br></pre><p>To view, visit <a href="https://gerrit.osmocom.org/c/osmo-bts/+/19513">change 19513</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/+/19513"/><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: I04782222b499d0488269544910fbd4ed9929c05d </div>
<div style="display:none"> Gerrit-Change-Number: 19513 </div>
<div style="display:none"> Gerrit-PatchSet: 1 </div>
<div style="display:none"> Gerrit-Owner: fixeria <vyanitskiy@sysmocom.de> </div>
<div style="display:none"> Gerrit-MessageType: newchange </div>