Attention is currently required from: Hoernchen, laforge, tempest, tnt, ttsou.
Hello Hoernchen, Jenkins Builder, laforge, tnt, ttsou,
I'd like you to reexamine a change. Please visit
https://gerrit.osmocom.org/c/osmo-trx/+/41231?usp=email
to look at the new patch set (#2).
The following approvals got outdated and were removed: Code-Review+1 by Hoernchen, Code-Review+1 by laforge
Change subject: trx: Fix tx/rx-sps 4 for USRP1 devices ......................................................................
trx: Fix tx/rx-sps 4 for USRP1 devices
The existing code sets the pingOffset variable to -7231(269 - 7500) with tx-sps = 4. The (apparent) correct value for pingOffset for tx/rx-sps 4 is 272.
While I'm not completely sure how this patch works to fix the increased sps value, my theory is that the original OpenBTS TRX only supported a split sps setup(tx-sps=4, rx_sps=1 for sps=4), which created differing decimation rates between Tx and Rx on the board. In this case, apparently you needed to account for an advance in the timestamp for a correct output.
With tx_sps == rx_sps, the decimation/sample rates will be the same, and(I guess) this advance doesn't need to be accounted for.
Also changed a line in the initialization of the Rx end of the USRP device to use the correct decimation rate when tx/rx-sps == 4.
Since osmo-trx won't allow nonequal values for tx-sps and rx-sps, I commented out the logic that selected pingOffset based on sps. I left it visible in the file for reference however.
Tested & working on the URAN-1, a USRP1 clone designed for GSM.
Change-Id: I3b08c23a3e7d4a226cd23b9fe42558f596a63257 --- M Transceiver52M/device/usrp1/USRPDevice.cpp 1 file changed, 8 insertions(+), 7 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-trx refs/changes/31/41231/2