osmo-bsc/doc
Neels Hofmeyr d5cb0eb8fd lchan and assignment FSMs: make Channel Mode Modify more sane
The Channel Mode Modify procedure is currently implemented for changing
a TCH lchan from signalling to voice mode. For that, however, it is
re-using (abusing) the channel activation structs and state transitions,
and thus always implies activating a voice stream when the mode
modification is done.

I will add a Channel Mode Modify to enable VAMOS mode soon, so I require
separate structs and state transitions which also work on an lchan that
already has a voice stream established: a struct lchan_modify_info and
LCHAN_EV_REQUEST_MODE_MODIFY, and dedicated assignment FSM state
ASSIGNMENT_ST_WAIT_LCHAN_MODIFIED.

For the part where a Channel Mode Modify enables a voice stream after
switching from signalling to speech mode, still use the channel
activation code path, but only once the mode modification is done.

General improvements:
- To ask for a mode modification, emit an FSM event that ensures a mode
  modify only happens when the lchan state allows it.
- The new lchan_modify_info struct reflects only those parts that have
  an effect during a mode modification (before the lchan_activate_info
  was fully populated, many values not having an effect).
- More accurate logging, indicating "Mode Modify" instead of "Channel
  Activation"

A TTCN3 test for the Channel Mode Modify procedure is added in
Idf4efaed986de0bbd2b663313e837352cc139f0f, and the test passes both
before and after this patch is applied.

Related: SYS#4895
Change-Id: I4986844f839b1c9672c61d916eb3d33d0042d747
2021-05-21 15:43:30 +02:00
..
examples vty: deprecate BTS type 'sysmobts' in favor of 'osmo-bts' 2021-04-12 18:54:40 +00:00
manuals bts.adoc: fix typo BGSGP -> BSSGP 2021-05-21 10:10:06 +00:00
BS11-OML.txt move openbsc/* to repos root 2017-08-27 03:52:43 +02:00
Makefile.am add doc/location_services_ta.msc 2020-10-10 16:23:52 +02:00
assignment-fsm.dot lchan and assignment FSMs: make Channel Mode Modify more sane 2021-05-21 15:43:30 +02:00
assignment.msc cosmetic: rename FOR_* to ACTIVATE_FOR_* 2021-05-21 15:43:30 +02:00
e1-data-model.txt Fix some typos 2019-11-13 22:10:41 +01:00
handover-inter-bsc-in-fsm.dot doc: update/fix FSM charts 2018-07-28 12:18:23 +02:00
handover-inter-bsc-in.msc cosmetic: rename FOR_* to ACTIVATE_FOR_* 2021-05-21 15:43:30 +02:00
handover-inter-bsc-out-fsm.dot doc: update/fix FSM charts 2018-07-28 12:18:23 +02:00
handover-inter-bsc-out.msc doc: update/fix FSM charts 2018-07-28 12:18:23 +02:00
handover-intra-bsc-fsm.dot cosmetic: rename FOR_* to ACTIVATE_FOR_* 2021-05-21 15:43:30 +02:00
handover.msc cosmetic: rename FOR_* to ACTIVATE_FOR_* 2021-05-21 15:43:30 +02:00
handover.txt Fix some typos 2019-11-13 22:10:41 +01:00
lchan-fsm.dot lchan_fsm: make rsl mode-modify working again 2020-09-03 21:35:25 +02:00
lchan-rtp-fsm.dot lchan_rtp_fsm: Deferr IPACC MDCX after BTS side MGCP MDCX 2020-09-09 12:39:14 +02:00
lchan.msc cosmetic: rename FOR_* to ACTIVATE_FOR_* 2021-05-21 15:43:30 +02:00
legend_for_fsm_diagrams.dot doc: update/fix FSM charts 2018-07-28 12:18:23 +02:00
legend_for_ladder_diagrams.msc doc: update/fix FSM charts 2018-07-28 12:18:23 +02:00
location_services_ta.msc add doc/location_services_ta.msc 2020-10-10 16:23:52 +02:00
mgw-endpoint-fsm.dot doc: update/fix FSM charts 2018-07-28 12:18:23 +02:00
mgw-endpoint.msc doc: update/fix FSM charts 2018-07-28 12:18:23 +02:00
timeslot-fsm.dot doc: update/fix FSM charts 2018-07-28 12:18:23 +02:00
timeslot.msc doc: update/fix FSM charts 2018-07-28 12:18:23 +02:00
ts-and-lchan-fsm-lifecycle.msc doc: update/fix FSM charts 2018-07-28 12:18:23 +02:00