Change in osmo-bsc[master]: add lchan->vamos.is_secondary flag

neels gerrit-no-reply at lists.osmocom.org
Thu Jun 10 15:21:22 UTC 2021


neels has submitted this change. ( https://gerrit.osmocom.org/c/osmo-bsc/+/24626 )

Change subject: add lchan->vamos.is_secondary flag
......................................................................

add lchan->vamos.is_secondary flag

VAMOS shadow lchans do not exist yet, but add the indicator flag that
tells whether an lchan pointer is a primary or a shadow lchan.

In Mode Modify: based on the flag, choose a different default TSC Set
for shadow lchans; do BTS type compat checking for shadow lchan use.

Actual lchans with vamos.is_secondary == true will be introduced by
patch: 'add VAMOS secondary lchans to timeslot struct'
I928af99498bba488d317693f3144d4fccbbe9af3

Change-Id: I4072fc7703c592df699fe8e27c02df09acde0909
---
M include/osmocom/bsc/gsm_data.h
M src/osmo-bsc/lchan_fsm.c
2 files changed, 9 insertions(+), 2 deletions(-)

Approvals:
  Jenkins Builder: Verified
  fixeria: Looks good to me, approved



diff --git a/include/osmocom/bsc/gsm_data.h b/include/osmocom/bsc/gsm_data.h
index 7e90579..0670232 100644
--- a/include/osmocom/bsc/gsm_data.h
+++ b/include/osmocom/bsc/gsm_data.h
@@ -745,6 +745,10 @@
 	uint8_t tsc;
 
 	struct {
+		/* Whether this lchan represents a secondary "shadow" lchan to multiplex a second MS onto a primary
+		 * "normal" lchan */
+		bool is_secondary;
+
 		/* Whether this lchan is activated/modified into a mode that allows VAMOS multiplexing at this moment */
 		bool enabled;
 	} vamos;
diff --git a/src/osmo-bsc/lchan_fsm.c b/src/osmo-bsc/lchan_fsm.c
index 0613fcb..b486b40 100644
--- a/src/osmo-bsc/lchan_fsm.c
+++ b/src/osmo-bsc/lchan_fsm.c
@@ -382,7 +382,8 @@
 {
 	OSMO_ASSERT(lchan && info);
 
-	if (info->vamos && !osmo_bts_has_feature(&lchan->ts->trx->bts->features, BTS_FEAT_VAMOS)) {
+	if ((info->vamos || lchan->vamos.is_secondary)
+	    && !osmo_bts_has_feature(&lchan->ts->trx->bts->features, BTS_FEAT_VAMOS)) {
 		lchan->last_error = talloc_strdup(lchan->ts->trx, "VAMOS related Channel Mode Modify requested,"
 						  " but BTS does not support VAMOS");
 		LOG_LCHAN(lchan, LOGL_ERROR,
@@ -1145,10 +1146,12 @@
 			}
 		}
 
+		/* If enabling VAMOS mode and no specific TSC Set was selected, make sure to select a sane TSC Set by
+		 * default: Set 1 for the primary and Set 2 for the shadow lchan. For non-VAMOS lchans, TSC Set 1. */
 		if (lchan->modify.info.tsc_set > 0)
 			lchan->modify.tsc_set = lchan->modify.info.tsc_set;
 		else
-			lchan->modify.tsc_set = 1;
+			lchan->modify.tsc_set = lchan->vamos.is_secondary ? 2 : 1;
 
 		/* Use the TSC provided in the modification request, if any. Otherwise use the timeslot's configured
 		 * TSC. */

-- 
To view, visit https://gerrit.osmocom.org/c/osmo-bsc/+/24626
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings

Gerrit-Project: osmo-bsc
Gerrit-Branch: master
Gerrit-Change-Id: I4072fc7703c592df699fe8e27c02df09acde0909
Gerrit-Change-Number: 24626
Gerrit-PatchSet: 2
Gerrit-Owner: neels <nhofmeyr at sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: fixeria <vyanitskiy at sysmocom.de>
Gerrit-Reviewer: neels <nhofmeyr at sysmocom.de>
Gerrit-MessageType: merged
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osmocom.org/pipermail/gerrit-log/attachments/20210610/778fba1b/attachment.htm>


More information about the gerrit-log mailing list