aboutsummaryrefslogtreecommitdiffstats
path: root/src/common/l1sap.c
diff options
context:
space:
mode:
authorMax <msuraev@sysmocom.de>2016-12-28 12:43:09 +0100
committerMax <msuraev@sysmocom.de>2017-01-04 11:25:17 +0100
commitf9778b2a26ce06959ee7e188eb1d533d896f1846 (patch)
tree6726018873d26f98e57c72aa932882aaacebdbea /src/common/l1sap.c
parentc2ecca6b0496127709dcd3afa9d366085d8bec97 (diff)
DTX AMR HR: fix inhibition
* Unlike in AMR FR, in AMR HR incoming ONSET have to be treated differently depending on whether we've recently sent SID UPDATE or EMPTY frame. Split ST_SID_U FSM state into 2 states to accommodate for that and make sure that additional states specific to AMR HR are not used for AMR FR. * Avoid sending E_VOICE and E_SID_U in corresponding states as those do not initiate FSM state transitions anyway. This decrease extra load from FSM signalling which otherwise would be triggered on per-frame basis. * Introduce separate signal for SID First P1 -> P2 transition to avoid confusion with E_COMPL and E_SID_U initiated transitions from P1 state. * Don't init DTX FSM for SDCCH channels. Change-Id: I229ba39a38a223fada4881fc9aca35d3639371f8 Related: OS#1801
Diffstat (limited to 'src/common/l1sap.c')
-rw-r--r--src/common/l1sap.c3
1 files changed, 1 insertions, 2 deletions
diff --git a/src/common/l1sap.c b/src/common/l1sap.c
index e9c94f0d..e6e53db6 100644
--- a/src/common/l1sap.c
+++ b/src/common/l1sap.c
@@ -1161,8 +1161,7 @@ int l1sap_chan_act(struct gsm_bts_trx *trx, uint8_t chan_nr, struct tlv_parsed *
return -RSL_ERR_EQUIPMENT_FAIL;
/* Init DTX DL FSM if necessary */
- //FIXME: only do it for AMR TCH/*
- if (trx->bts->dtxd)
+ if (trx->bts->dtxd && lchan->type != GSM_LCHAN_SDCCH)
lchan->tch.dtx.dl_amr_fsm = osmo_fsm_inst_alloc(&dtx_dl_amr_fsm,
tall_bts_ctx,
lchan,