aboutsummaryrefslogtreecommitdiffstats
path: root/openbsc/src/libbsc
diff options
context:
space:
mode:
Diffstat (limited to 'openbsc/src/libbsc')
-rw-r--r--openbsc/src/libbsc/chan_alloc.c3
-rw-r--r--openbsc/src/libbsc/net_init.c2
2 files changed, 4 insertions, 1 deletions
diff --git a/openbsc/src/libbsc/chan_alloc.c b/openbsc/src/libbsc/chan_alloc.c
index 1e5dd74cd..c3a7e0f04 100644
--- a/openbsc/src/libbsc/chan_alloc.c
+++ b/openbsc/src/libbsc/chan_alloc.c
@@ -309,8 +309,9 @@ struct gsm_lchan *lchan_alloc(struct gsm_bts *bts, enum gsm_chan_t type,
if (lchan)
type = GSM_LCHAN_TCH_F;
}
+
/* Try fully dynamic TCH/F_TCH/H_PDCH as TCH/F... */
- if (!lchan) {
+ if (!lchan && bts->network->dyn_ts_allow_tch_f) {
lchan = _lc_dyn_find_bts(bts,
GSM_PCHAN_TCH_F_TCH_H_PDCH,
GSM_PCHAN_TCH_F);
diff --git a/openbsc/src/libbsc/net_init.c b/openbsc/src/libbsc/net_init.c
index ee0d445cd..6d03ee428 100644
--- a/openbsc/src/libbsc/net_init.c
+++ b/openbsc/src/libbsc/net_init.c
@@ -116,6 +116,8 @@ struct gsm_network *gsm_network_init(uint16_t country_code, uint16_t network_cod
net->ext_max = GSM_MAX_EXTEN;
gsm_net_update_ctype(net);
+ net->dyn_ts_allow_tch_f = true;
+
return net;
}