Transceiver: Move soft bits normalization to pullRadioVector()

That's where all the filling logic happens, while in driveReceiveFIFO we
mostly want to take the burst, generate a message and sent it over the
socket.

Related: OS#4006
Change-Id: Ibfb48877af4ff5ef0f56390901669c8353beaf48
This commit is contained in:
Pau Espin Pedrol
2019-07-01 16:40:44 +02:00
parent 607a414967
commit 25ae190dc6

View File

@@ -649,6 +649,9 @@ bool Transceiver::pullRadioVector(size_t chan, struct trx_ul_burst_ind *bi)
else /* size() here is actually gSlotLen + 8, due to guard periods */
bi->nbits = gSlotLen;
// Convert -1..+1 soft bits to 0..1 soft bits
vectorSlicer(bi->rxBurst);
delete radio_burst;
return true;
}
@@ -928,9 +931,6 @@ void Transceiver::driveReceiveFIFO(size_t chan)
if (!pullRadioVector(chan, &bi))
return;
// Convert -1..+1 soft bits to 0..1 soft bits
vectorSlicer(bi.rxBurst);
logRxBurst(chan, &bi);
TOAint = (int) (bi.toa * 256.0 + 0.5); // round to closest integer