aboutsummaryrefslogtreecommitdiffstats
path: root/openbsc/src/libbsc/abis_rsl.c
diff options
context:
space:
mode:
authorMax <msuraev@sysmocom.de>2016-05-11 12:45:13 +0200
committerHolger Freyther <holger@freyther.de>2016-05-17 16:17:54 +0000
commitc08ee71bff4d86120b051b70e77833458e68aa0b (patch)
tree96f761393e6fdb5a5b381072cda2b70f1fb6298e /openbsc/src/libbsc/abis_rsl.c
parent9a7e25b9c3491416b8c41e4a7caeb86ba2167b78 (diff)
Move DTX settings to BTS
* Add per-BTS DTX settings * Configure Uplink and Downlink DTX separately * Deprecate global DTX option (it was never tested/used anyway) * Use libosmocore function for DTX indicator in System Information (previously it was incorrectly assigned for half-rate channels) Related: OS#22 Change-Id: I3d55168475ad47044b6238b55846ea22bdd518a4 Reviewed-on: https://gerrit.osmocom.org/40 Tested-by: Jenkins Builder Reviewed-by: Holger Freyther <holger@freyther.de>
Diffstat (limited to 'openbsc/src/libbsc/abis_rsl.c')
-rw-r--r--openbsc/src/libbsc/abis_rsl.c11
1 files changed, 7 insertions, 4 deletions
diff --git a/openbsc/src/libbsc/abis_rsl.c b/openbsc/src/libbsc/abis_rsl.c
index df7678832..6cf4e0b04 100644
--- a/openbsc/src/libbsc/abis_rsl.c
+++ b/openbsc/src/libbsc/abis_rsl.c
@@ -35,6 +35,8 @@
#include <openbsc/bsc_rll.h>
#include <openbsc/debug.h>
#include <osmocom/gsm/tlv.h>
+#include <osmocom/gsm/protocol/gsm_04_08.h>
+#include <osmocom/gsm/protocol/gsm_08_58.h>
#include <openbsc/paging.h>
#include <openbsc/signal.h>
#include <openbsc/meas_rep.h>
@@ -345,10 +347,11 @@ static int channel_mode_from_lchan(struct rsl_ie_chan_mode *cm,
memset(cm, 0, sizeof(*cm));
/* FIXME: what to do with data calls ? */
- if (lchan->ts->trx->bts->network->dtx_enabled)
- cm->dtx_dtu = 0x03;
- else
- cm->dtx_dtu = 0x00;
+ cm->dtx_dtu = 0;
+ if (lchan->ts->trx->bts->dtxu != GSM48_DTX_SHALL_NOT_BE_USED)
+ cm->dtx_dtu |= RSL_CMOD_DTXu;
+ if (lchan->ts->trx->bts->dtxd)
+ cm->dtx_dtu |= RSL_CMOD_DTXd;
/* set TCH Speech/Data */
cm->spd_ind = lchan->rsl_cmode;