aboutsummaryrefslogtreecommitdiffstats
path: root/include/osmocom/bsc/lchan_fsm.h
diff options
context:
space:
mode:
authorPhilipp Maier <pmaier@sysmocom.de>2020-08-21 20:47:49 +0200
committerPhilipp Maier <pmaier@sysmocom.de>2020-09-03 21:35:25 +0200
commit92eed41a99743b07c9961aa450297a3fb28261d8 (patch)
tree9742fa1574ab423312c7b4f069ec30baec66710d /include/osmocom/bsc/lchan_fsm.h
parent7e9ac64ba0ffbde52434f095e805a6f4b59ccd13 (diff)
lchan_fsm: make rsl mode-modify working again
osmo-nitb supports the modification of an lchan if the lchan is compatible but in the wrong mode. This feature was dropped in the transition to AoIP/bsc-split. However, osmo-bsc still has code to generate and parse the messeages, but the FSMs do not support a mode modify yetm Lets add handling for mode-modify to the lchan_fsm and assignment_fsm in order to support mode modify again Change-Id: I2c5a283b1ee33745cc1fcfcc09a0f9382224e2eb Related: OS#4549
Diffstat (limited to 'include/osmocom/bsc/lchan_fsm.h')
-rw-r--r--include/osmocom/bsc/lchan_fsm.h11
1 files changed, 7 insertions, 4 deletions
diff --git a/include/osmocom/bsc/lchan_fsm.h b/include/osmocom/bsc/lchan_fsm.h
index 55ab02400..df3ed2212 100644
--- a/include/osmocom/bsc/lchan_fsm.h
+++ b/include/osmocom/bsc/lchan_fsm.h
@@ -18,6 +18,8 @@ enum lchan_fsm_state {
LCHAN_ST_WAIT_TS_READY,
LCHAN_ST_WAIT_ACTIV_ACK, /*< After RSL Chan Act Ack, lchan is active but RTP not configured. */
LCHAN_ST_WAIT_RLL_RTP_ESTABLISH,
+ LCHAN_ST_WAIT_RR_CHAN_MODE_MODIFY_ACK,
+ LCHAN_ST_WAIT_RSL_CHAN_MODE_MODIFY_ACK,
LCHAN_ST_ESTABLISHED, /*< Active and RTP is fully configured. */
LCHAN_ST_WAIT_RLL_RTP_RELEASED,
LCHAN_ST_WAIT_BEFORE_RF_RELEASE,
@@ -40,10 +42,11 @@ enum lchan_fsm_event {
LCHAN_EV_RLL_REL_CONF,
LCHAN_EV_RSL_RF_CHAN_REL_ACK,
LCHAN_EV_RLL_ERR_IND,
-
- /* FIXME: not yet implemented: Chan Mode Modify, see assignment_fsm_start(). */
- LCHAN_EV_CHAN_MODE_MODIF_ACK,
- LCHAN_EV_CHAN_MODE_MODIF_ERROR,
+ LCHAN_EV_RR_CHAN_MODE_MODIFY_ACK,
+ LCHAN_EV_RR_CHAN_MODE_MODIFY_ERROR,
+ LCHAN_EV_RSL_CHAN_MODE_MODIFY_ACK,
+ LCHAN_EV_RSL_CHAN_MODE_MODIFY_NACK,
+ LCHAN_EV_REQUEST_MODE_MODIFY,
};
void lchan_fsm_init();