<p>pespin has uploaded this change for <strong>review</strong>.</p><p><a href="https://gerrit.osmocom.org/c/osmo-trx/+/14897">View Change</a></p><pre style="font-family: monospace,monospace; white-space: pre-wrap;">Transceiver: Store TRXD version per channel<br><br>The setting is negotiatied by osmo-bts-trx on each channel, so let's<br>keep and use state per channel instead of overwriting the state from<br>different channels.<br>Take the chance to change related log lines to also print the channel<br>number.<br><br>Change-Id: If9cf95e89d38d0155ab48b8c0977ca5f381c2aad<br>---<br>M Transceiver52M/Transceiver.cpp<br>M Transceiver52M/Transceiver.h<br>2 files changed, 9 insertions(+), 8 deletions(-)<br><br></pre><pre style="font-family: monospace,monospace; white-space: pre-wrap;">git pull ssh://gerrit.osmocom.org:29418/osmo-trx refs/changes/97/14897/1</pre><pre style="font-family: monospace,monospace; white-space: pre-wrap;"><span>diff --git a/Transceiver52M/Transceiver.cpp b/Transceiver52M/Transceiver.cpp</span><br><span>index 17e0476..01a0e9b 100644</span><br><span>--- a/Transceiver52M/Transceiver.cpp</span><br><span>+++ b/Transceiver52M/Transceiver.cpp</span><br><span>@@ -127,7 +127,7 @@</span><br><span>     mSPSTx(tx_sps), mSPSRx(rx_sps), mChans(chans), mExtRACH(false), mEdge(false),</span><br><span>     mOn(false), mForceClockInterface(false),</span><br><span>     mTxFreq(0.0), mRxFreq(0.0), mTSC(0), mMaxExpectedDelayAB(0), mMaxExpectedDelayNB(0),</span><br><span style="color: hsl(0, 100%, 40%);">-    mWriteBurstToDiskMask(0), mVersionTRXD(0)</span><br><span style="color: hsl(120, 100%, 40%);">+    mWriteBurstToDiskMask(0)</span><br><span> {</span><br><span>   txFullScale = mRadioInterface->fullScaleInputValue();</span><br><span>   rxFullScale = mRadioInterface->fullScaleOutputValue();</span><br><span>@@ -196,6 +196,7 @@</span><br><span>   mTxPriorityQueues.resize(mChans);</span><br><span>   mReceiveFIFO.resize(mChans);</span><br><span>   mStates.resize(mChans);</span><br><span style="color: hsl(120, 100%, 40%);">+  mVersionTRXD.resize(mChans);</span><br><span> </span><br><span>   /* Filler table retransmissions - support only on channel 0 */</span><br><span>   if (filler == FILLER_DUMMY)</span><br><span>@@ -883,14 +884,14 @@</span><br><span>     // set TRXD protocol version</span><br><span>     unsigned version_recv;</span><br><span>     sscanf(params, "%u", &version_recv);</span><br><span style="color: hsl(0, 100%, 40%);">-    LOGC(DTRXCTRL, INFO) << "BTS requests TRXD version switch: " << version_recv;</span><br><span style="color: hsl(120, 100%, 40%);">+    LOGCHAN(chan, DTRXCTRL, INFO) << "BTS requests TRXD version switch: " << version_recv;</span><br><span>     if (version_recv > TRX_DATA_FORMAT_VER) {</span><br><span style="color: hsl(0, 100%, 40%);">-      LOGC(DTRXCTRL, INFO) << "rejecting TRXD version " << version_recv</span><br><span style="color: hsl(0, 100%, 40%);">-                           << "in favor of " <<  TRX_DATA_FORMAT_VER;</span><br><span style="color: hsl(120, 100%, 40%);">+      LOGCHAN(chan, DTRXCTRL, INFO) << "rejecting TRXD version " << version_recv</span><br><span style="color: hsl(120, 100%, 40%);">+                                    << "in favor of " <<  TRX_DATA_FORMAT_VER;</span><br><span>       sprintf(response, "RSP SETFORMAT %u %u", TRX_DATA_FORMAT_VER, version_recv);</span><br><span>     } else {</span><br><span style="color: hsl(0, 100%, 40%);">-      LOGC(DTRXCTRL, NOTICE) << "switching to TRXD version " << version_recv;</span><br><span style="color: hsl(0, 100%, 40%);">-      mVersionTRXD = version_recv;</span><br><span style="color: hsl(120, 100%, 40%);">+      LOGCHAN(chan, DTRXCTRL, NOTICE) << "switching to TRXD version " << version_recv;</span><br><span style="color: hsl(120, 100%, 40%);">+      mVersionTRXD[chan] = version_recv;</span><br><span>       sprintf(response, "RSP SETFORMAT %u %u", version_recv, version_recv);</span><br><span>     }</span><br><span>   } else if (match_cmd(command, "_SETBURSTTODISKMASK", &params)) {</span><br><span>@@ -1021,7 +1022,7 @@</span><br><span>   if (!bi.idle)</span><br><span>        logRxBurst(chan, &bi);</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-  switch (mVersionTRXD) {</span><br><span style="color: hsl(120, 100%, 40%);">+  switch (mVersionTRXD[chan]) {</span><br><span>     case 0:</span><br><span>       trxd_send_burst_ind_v0(chan, mDataSockets[chan], &bi);</span><br><span>       break;</span><br><span>diff --git a/Transceiver52M/Transceiver.h b/Transceiver52M/Transceiver.h</span><br><span>index aa2a716..be67b33 100644</span><br><span>--- a/Transceiver52M/Transceiver.h</span><br><span>+++ b/Transceiver52M/Transceiver.h</span><br><span>@@ -216,8 +216,8 @@</span><br><span>   unsigned mMaxExpectedDelayAB;        ///< maximum expected time-of-arrival offset in GSM symbols for Access Bursts (RACH)</span><br><span>   unsigned mMaxExpectedDelayNB;        ///< maximum expected time-of-arrival offset in GSM symbols for Normal Bursts</span><br><span>   unsigned mWriteBurstToDiskMask;      ///< debug: bitmask to indicate which timeslots to dump to disk</span><br><span style="color: hsl(0, 100%, 40%);">-  unsigned mVersionTRXD;               ///< Format version to use for TRXD protocol communication</span><br><span> </span><br><span style="color: hsl(120, 100%, 40%);">+  std::vector<unsigned> mVersionTRXD;  ///< Format version to use for TRXD protocol communication, per channel</span><br><span>   std::vector<TransceiverState> mStates;</span><br><span> </span><br><span>   /** Start and stop I/O threads through the control socket API */</span><br><span></span><br></pre><p>To view, visit <a href="https://gerrit.osmocom.org/c/osmo-trx/+/14897">change 14897</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-trx/+/14897"/><meta itemprop="name" content="View Change"/></div></div>

<div style="display:none"> Gerrit-Project: osmo-trx </div>
<div style="display:none"> Gerrit-Branch: master </div>
<div style="display:none"> Gerrit-Change-Id: If9cf95e89d38d0155ab48b8c0977ca5f381c2aad </div>
<div style="display:none"> Gerrit-Change-Number: 14897 </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>