aboutsummaryrefslogtreecommitdiffstats
path: root/include/osmocom/bsc/handover_cfg.h
diff options
context:
space:
mode:
authorNeels Hofmeyr <nhofmeyr@sysmocom.de>2022-03-28 23:56:55 +0200
committerneels <nhofmeyr@sysmocom.de>2022-03-31 14:43:48 +0000
commita0c4a063717622a70c709573494977c27cdfc1a2 (patch)
tree4390f29b99024283055a35f1748da16a7221dda9 /include/osmocom/bsc/handover_cfg.h
parent9f691dfdb88255cedc6964b51db10a1a93c83aa2 (diff)
hodec2: add penalty-time low-rxqual-ho
When bad RxQual causes handover to a cell with weaker RxLev, then handover oscillation *will* happen, as shown in test_rxqual.ho_vty. Introduce a penalty timer for a cell where we had bad RxQual. This delays handover back to the cell with stronger RxLev by the penalty timeout; hopefully the interference is gone after the timeout. Usually, we set new configuration elements so that osmo-bsc behaves the same as before the config item was added. In this instance, this makes no sense, because no-one ever wants handover oscillation from bad RxQual, which is guaranteed to happen without the new penalty timer. Set it to 60 seconds by default, same as other penalty timers. Related: SYS#5911 Change-Id: I057b156604a104a26a7ce45d1c7adadbf452c932
Diffstat (limited to 'include/osmocom/bsc/handover_cfg.h')
-rw-r--r--include/osmocom/bsc/handover_cfg.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/include/osmocom/bsc/handover_cfg.h b/include/osmocom/bsc/handover_cfg.h
index 2bd26812e..7d68e6317 100644
--- a/include/osmocom/bsc/handover_cfg.h
+++ b/include/osmocom/bsc/handover_cfg.h
@@ -268,6 +268,13 @@ static inline int bool2i(bool arg)
"Time to suspend re-assignment after an lchan was re-assigned because of low RxQual\n" \
"Seconds\n") \
\
+ HO_CFG_ONE_MEMBER(int, hodec2_penalty_low_rxqual_ho, 60, \
+ "handover2 ", "penalty-time low-rxqual-ho", "<0-99999>", atoi, "%d", as_is, \
+ HO_CFG_STR_HANDOVER2 \
+ HO_CFG_STR_PENALTY_TIME \
+ "Time to suspend handover back to a cell after bad RxQual caused handover away from it\n" \
+ "Seconds\n") \
+ \
HO_CFG_ONE_MEMBER(int, hodec2_retries, 0, \
"handover2 ", "retries", "<0-9>", atoi, "%d", as_is, \
HO_CFG_STR_HANDOVER2 \