diff options
author | Harald Welte <laforge@gnumonks.org> | 2018-02-19 14:21:36 +0100 |
---|---|---|
committer | Harald Welte <laforge@gnumonks.org> | 2018-02-27 19:58:20 +0100 |
commit | d5bbd8ccf79eaf13bc23cc71accbeb3ff638b6dd (patch) | |
tree | 0f1ec34ad152ac9e7933724b35a8d342e8be2abe /src/osmo-bts-virtual/scheduler_virtbts.c | |
parent | b3a2a3e24f44adcc6660d33cc9684a8f24271e2e (diff) |
trx/scheduler: Use integer math for TOA (Timing of Arrival)
There's no need to express TOA as a float:
* We receive it as signed 16bit integer in units 1/256 symbol periods
* We pass it to L1SAP as signed integer in 1/4 symbol periods
So turn it into an int16_t with 1/256 symbol period accuracy throughout
the code to avoid both float arithmetic as well as loosing any precision.
Change-Id: Idce4178e0b1f7e940ebc22b3e2f340fcd544d4ec
Diffstat (limited to 'src/osmo-bts-virtual/scheduler_virtbts.c')
-rw-r--r-- | src/osmo-bts-virtual/scheduler_virtbts.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/src/osmo-bts-virtual/scheduler_virtbts.c b/src/osmo-bts-virtual/scheduler_virtbts.c index 2283be1f..5782c0a5 100644 --- a/src/osmo-bts-virtual/scheduler_virtbts.c +++ b/src/osmo-bts-virtual/scheduler_virtbts.c @@ -480,7 +480,7 @@ send_burst: int rx_rach_fn(struct l1sched_trx *l1t, uint8_t tn, uint32_t fn, enum trx_chan_type chan, uint8_t bid, sbit_t *bits, uint16_t nbits, - int8_t rssi, float toa) + int8_t rssi, int16_t toa256) { return 0; } @@ -488,28 +488,28 @@ int rx_rach_fn(struct l1sched_trx *l1t, uint8_t tn, uint32_t fn, /*! \brief a single burst was received by the PHY, process it */ int rx_data_fn(struct l1sched_trx *l1t, uint8_t tn, uint32_t fn, enum trx_chan_type chan, uint8_t bid, sbit_t *bits, uint16_t nbits, - int8_t rssi, float toa) + int8_t rssi, int16_t toa256) { return 0; } int rx_pdtch_fn(struct l1sched_trx *l1t, uint8_t tn, uint32_t fn, enum trx_chan_type chan, uint8_t bid, sbit_t *bits, uint16_t nbits, - int8_t rssi, float toa) + int8_t rssi, int16_t toa256) { return 0; } int rx_tchf_fn(struct l1sched_trx *l1t, uint8_t tn, uint32_t fn, enum trx_chan_type chan, uint8_t bid, sbit_t *bits, uint16_t nbits, - int8_t rssi, float toa) + int8_t rssi, int16_t toa256) { return 0; } int rx_tchh_fn(struct l1sched_trx *l1t, uint8_t tn, uint32_t fn, enum trx_chan_type chan, uint8_t bid, sbit_t *bits, uint16_t nbits, - int8_t rssi, float toa) + int8_t rssi, int16_t toa256) { return 0; } |