diff options
author | Andreas Eversberg <jolly@eversberg.eu> | 2013-06-13 10:19:46 +0200 |
---|---|---|
committer | Andreas Eversberg <jolly@eversberg.eu> | 2014-01-21 15:54:28 +0100 |
commit | 749c6127d0838e1810ec96030ddb2aedafd46b23 (patch) | |
tree | add538e471491c6c62ce3fbd3786489cf7cdeeda | |
parent | 5da3a2155d8f9a677321e15229a624599ecd18f1 (diff) |
handover: Use common function to reset handover state
-rw-r--r-- | include/osmo-bts/handover.h | 1 | ||||
-rw-r--r-- | src/common/handover.c | 7 | ||||
-rw-r--r-- | src/common/rsl.c | 5 |
3 files changed, 9 insertions, 4 deletions
diff --git a/include/osmo-bts/handover.h b/include/osmo-bts/handover.h index b08f0657..4412ea18 100644 --- a/include/osmo-bts/handover.h +++ b/include/osmo-bts/handover.h @@ -10,5 +10,6 @@ enum { void handover_rach(struct gsm_bts_trx *trx, uint8_t chan_nr, struct gsm_lchan *lchan, uint8_t ra, uint8_t acc_delay); void handover_frame(struct gsm_lchan *lchan); +void reset_handover(struct gsm_lchan *lchan); #endif /* HANDOVER_H */ diff --git a/src/common/handover.c b/src/common/handover.c index e1b8138a..02db39cb 100644 --- a/src/common/handover.c +++ b/src/common/handover.c @@ -137,10 +137,15 @@ void handover_frame(struct gsm_lchan *lchan) LOGP(DHO, LOGL_INFO, "%s First valid frame detected\n", gsm_lchan_name(lchan)); + reset_handover(lchan); +} + +/* release handover starte */ +void reset_handover(struct gsm_lchan *lchan) +{ /* Stop T3105 */ osmo_timer_del(&lchan->ho.t3105); /* Handover process is done */ lchan->ho.active = HANDOVER_NONE; } - diff --git a/src/common/rsl.c b/src/common/rsl.c index cf98dab8..ca323c5f 100644 --- a/src/common/rsl.c +++ b/src/common/rsl.c @@ -837,9 +837,8 @@ static int rsl_rx_rf_chan_rel(struct gsm_lchan *lchan, uint8_t chan_nr) lchan->rel_act_kind = LCHAN_REL_ACT_RSL; - /* deactivate handover RACH detection and timer */ - lchan->ho.active = HANDOVER_NONE; - osmo_timer_del(&lchan->ho.t3105); + /* release handover state */ + reset_handover(lchan); l1sap_chan_rel(lchan->ts->trx, chan_nr); |