aboutsummaryrefslogtreecommitdiffstats
path: root/src/common/scheduler.c
diff options
context:
space:
mode:
authorVadim Yanitskiy <vyanitskiy@sysmocom.de>2020-06-15 18:51:01 +0700
committerVadim Yanitskiy <vyanitskiy@sysmocom.de>2020-06-15 22:51:20 +0700
commitdf26770d41cc8eed01401ab03f4769e3cc3f0c3e (patch)
treef956eba9c4899a8a2baa2e0d0b31ed81fdd34a27 /src/common/scheduler.c
parent906a9b5e71aa5d3d814d57fbcc7190faa06ab200 (diff)
A-bis/RSL: refactor handling of BS Power IE (power reduction)
According to 3GPP TS 08.58, section 9.3.4, BS Power IE indicates the transmission power attenuation on a particular channel: +--------------+---------+-----------------+ | Reserved (3) | FPC (1) | Power level (4) | +--------------+---------+-----------------+ so let's change handling of this IE as follows: - s/bs_power/bs_power_red/g, so it reflects 'reduction'; - store power attenuation value in dB, not in 2 db steps; - get rid of ms_power_ctrl.bts_tx_pwr, it's always 0 anyway; - fix rsl_tx_meas_res(): use lchan->bs_power_red; - always check if FPC (Fast Power Control) flag is set; - we don't support it, so reject messages containing it; - fix rsl_rx_chan_activ(): properly apply the bitmask. Change-Id: I16cc50dfca102030380a06e16c234d5f6698f38f
Diffstat (limited to 'src/common/scheduler.c')
-rw-r--r--src/common/scheduler.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/common/scheduler.c b/src/common/scheduler.c
index ac9085de..e55b3a46 100644
--- a/src/common/scheduler.c
+++ b/src/common/scheduler.c
@@ -1190,9 +1190,9 @@ void _sched_dl_burst(struct l1sched_trx *l1t, struct trx_dl_burst_req *br)
if (func(l1t, chan, bid, br) != 0)
goto no_data;
- /* BS Power reduction (2 dB steps) per logical channel */
+ /* BS Power reduction (in dB) per logical channel */
if (l1cs->lchan != NULL)
- br->att = l1cs->lchan->bs_power * 2;
+ br->att = l1cs->lchan->bs_power_red;
/* encrypt */
if (br->burst_len && l1cs->dl_encr_algo) {