diff options
author | Philipp Maier <pmaier@sysmocom.de> | 2019-11-26 16:35:48 +0100 |
---|---|---|
committer | Philipp Maier <pmaier@sysmocom.de> | 2020-01-03 13:03:49 +0100 |
commit | 24e702b7d089b26511edb4fbef8b5757a17fa7b5 (patch) | |
tree | e452d4372bf9726baad0bf422728248b50a47855 | |
parent | 66c17cfc2d5d2a68de0484562cef46d142dd2f4b (diff) |
l1sap.c: ensure ms power control loop is running
When a bad SACCH frame is received the processing of the frame is ended
early and lchan_ms_pwr_ctrl() is not called. This means that the power
control loop does not get informed about a situation where the signal
level is very weak and increasing the ms power would make sense. In
order to ensure that the power control keeps working on lost SACCH
frames, lets call lchan_ms_pwr_ctrl() with the current RSSI and the
requested (BSC) power setting.
Related: OS#4281
Change-Id: I4fb85754b1a69376b02da7f4b175c6e8ec9cc35c
-rw-r--r-- | src/common/l1sap.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/src/common/l1sap.c b/src/common/l1sap.c index 49302573..b73de298 100644 --- a/src/common/l1sap.c +++ b/src/common/l1sap.c @@ -1244,10 +1244,12 @@ static int l1sap_ph_data_ind(struct gsm_bts_trx *trx, * This is a fallback method. The report will also * lack the measurement report from the MS side. See * also rsl.c:lapdm_rll_tx_cb() */ + LOGPGT(DL1P, LOGL_INFO, &g_time, "Lost SACCH block, faking meas reports and ms pwr\n"); le = &lchan->lapdm_ch.lapdm_acch; rsl_tx_meas_res(lchan, NULL, 0, le); radio_link_timeout(lchan, 1); + lchan_ms_pwr_ctrl(lchan, lchan->ms_power_ctrl.current, data_ind->rssi); } return -EINVAL; } |