aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHarald Welte <laforge@gnumonks.org>2019-01-26 14:02:49 +0100
committerHarald Welte <laforge@gnumonks.org>2019-02-05 17:46:25 +0100
commit9c9232c993ad7f56ebeaaa7e7632ce235446b533 (patch)
tree223a13cd5fe089183983d15545a97220ea949885
parent5c205639f19059196e0259a5261f0442aec798fe (diff)
scheduler_trx: Fix erroneous multiply-by-four
Commit acefd0586e5d463b2e7a6a039131994bc12573fc introduced the "toa256" resolution change. Before the change, _sched_compose_ph_data_ind() used quarter-bits as units, so multiplying the old "toa" value by four made sense. However, after said change, the value is in 1/256th of bits, and hence we need to report the toa256 value without any multiply-by-four. Change-Id: I9f980236ea1cd635cb229290e187747cc8c86d8d Related: OS#2977
-rw-r--r--src/osmo-bts-trx/scheduler_trx.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/src/osmo-bts-trx/scheduler_trx.c b/src/osmo-bts-trx/scheduler_trx.c
index fa3aed22..1b0ba730 100644
--- a/src/osmo-bts-trx/scheduler_trx.c
+++ b/src/osmo-bts-trx/scheduler_trx.c
@@ -846,7 +846,7 @@ int rx_data_fn(struct l1sched_trx *l1t, uint8_t tn, uint32_t fn,
ber10k = compute_ber10k(n_bits_total, n_errors);
return _sched_compose_ph_data_ind(l1t, tn, *first_fn, chan, l2, l2_len,
*rssi_sum / *rssi_num,
- 4 * (*toa256_sum) / *toa_num, 0, ber10k,
+ *toa256_sum / *toa_num, 0, ber10k,
PRES_INFO_UNKNOWN);
}
@@ -947,7 +947,7 @@ int rx_pdtch_fn(struct l1sched_trx *l1t, uint8_t tn, uint32_t fn,
}
ber10k = compute_ber10k(n_bits_total, n_errors);
return _sched_compose_ph_data_ind(l1t, tn, (fn + GSM_HYPERFRAME - 3) % GSM_HYPERFRAME, chan,
- l2, rc, *rssi_sum / *rssi_num, 4 * (*toa256_sum) / *toa_num, 0,
+ l2, rc, *rssi_sum / *rssi_num, *toa256_sum / *toa_num, 0,
ber10k, PRES_INFO_BOTH);
}
@@ -1071,7 +1071,7 @@ int rx_tchf_fn(struct l1sched_trx *l1t, uint8_t tn, uint32_t fn,
if (rc == GSM_MACBLOCK_LEN) {
uint16_t ber10k = compute_ber10k(n_bits_total, n_errors);
_sched_compose_ph_data_ind(l1t, tn, (fn + GSM_HYPERFRAME - 7) % GSM_HYPERFRAME, chan,
- tch_data + amr, GSM_MACBLOCK_LEN, rssi, 4 * toa256, 0,
+ tch_data + amr, GSM_MACBLOCK_LEN, rssi, toa256, 0,
ber10k, PRES_INFO_UNKNOWN);
bfi:
if (rsl_cmode == RSL_CMOD_SPD_SPEECH) {
@@ -1263,7 +1263,7 @@ int rx_tchh_fn(struct l1sched_trx *l1t, uint8_t tn, uint32_t fn,
uint16_t ber10k = compute_ber10k(n_bits_total, n_errors);
_sched_compose_ph_data_ind(l1t, tn,
(fn + GSM_HYPERFRAME - 10 - ((fn % 26) >= 19)) % GSM_HYPERFRAME, chan,
- tch_data + amr, GSM_MACBLOCK_LEN, rssi, toa256/64, 0,
+ tch_data + amr, GSM_MACBLOCK_LEN, rssi, toa256, 0,
ber10k, PRES_INFO_UNKNOWN);
bfi:
if (rsl_cmode == RSL_CMOD_SPD_SPEECH) {