[MERGED] openbsc[master]: OM2000: Fix missing dynamic TCH initialization

This is merely a historical archive of years 2008-2021, before the migration to mailman3.

A maintained and still updated list archive can be found at https://lists.osmocom.org/hyperkitty/list/gerrit-log@lists.osmocom.org/.

Harald Welte gerrit-no-reply at lists.osmocom.org
Wed Nov 16 19:08:37 UTC 2016


Harald Welte has submitted this change and it was merged.

Change subject: OM2000: Fix missing dynamic TCH initialization
......................................................................


OM2000: Fix missing dynamic TCH initialization

When OM2000 has confirmed that a TS is started, call dyn_ts_init()
on the timeslot to start the processing for fully dynamic (osmocom
style) TCH/F_TCH/H_PDCH.  This should in turn trigger the activation of
idle timeslots as PDCH until we want to allocate any of them for TCH/F
or TCH/H.

Change-Id: I1a1fd61d6afd85449cacad4bacfb830252dab6b1
---
M openbsc/src/libbsc/abis_om2000.c
1 file changed, 12 insertions(+), 0 deletions(-)

Approvals:
  Harald Welte: Looks good to me, approved
  Jenkins Builder: Verified



diff --git a/openbsc/src/libbsc/abis_om2000.c b/openbsc/src/libbsc/abis_om2000.c
index 6105fec..0dffb15 100644
--- a/openbsc/src/libbsc/abis_om2000.c
+++ b/openbsc/src/libbsc/abis_om2000.c
@@ -39,6 +39,7 @@
 #include <openbsc/gsm_data.h>
 #include <openbsc/debug.h>
 #include <openbsc/abis_nm.h>
+#include <openbsc/abis_rsl.h>
 #include <openbsc/abis_om2000.h>
 #include <openbsc/signal.h>
 #include <osmocom/abis/e1_input.h>
@@ -1282,6 +1283,8 @@
 	case GSM_PCHAN_TCH_F:
 	case GSM_PCHAN_TCH_H:
 	case GSM_PCHAN_PDCH:
+	case GSM_PCHAN_TCH_F_PDCH:
+	case GSM_PCHAN_TCH_F_TCH_H_PDCH:
 		return 8;
 	default:
 		return 0;
@@ -1674,6 +1677,15 @@
 
 static void om2k_mo_st_wait_opinfo_accept(struct osmo_fsm_inst *fi, uint32_t event, void *data)
 {
+	struct om2k_mo_fsm_priv *omfp = fi->priv;
+
+	/* if we have just received opinfo accept for the timeslot,
+	 * start dynamic TCH switching procedures */
+	if (omfp->mo->addr.class == OM2K_MO_CLS_TS) {
+		struct gsm_bts_trx_s *ts;
+		ts = mo2obj(omfp->trx->bts, &omfp->mo->addr);
+		dyn_ts_init(ts);
+	}
 	osmo_fsm_inst_state_chg(fi, OM2K_ST_DONE, 0, 0);
 }
 

-- 
To view, visit https://gerrit.osmocom.org/1257
To unsubscribe, visit https://gerrit.osmocom.org/settings

Gerrit-MessageType: merged
Gerrit-Change-Id: I1a1fd61d6afd85449cacad4bacfb830252dab6b1
Gerrit-PatchSet: 1
Gerrit-Project: openbsc
Gerrit-Branch: master
Gerrit-Owner: Harald Welte <laforge at gnumonks.org>
Gerrit-Reviewer: Harald Welte <laforge at gnumonks.org>
Gerrit-Reviewer: Jenkins Builder



More information about the gerrit-log mailing list