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/.
laforge gerrit-no-reply at lists.osmocom.orglaforge has submitted this change. ( https://gerrit.osmocom.org/c/osmo-bts/+/24329 )
Change subject: [VAMOS] l1sap_chan_act(): handle Osmocom specific TSC IE
......................................................................
[VAMOS] l1sap_chan_act(): handle Osmocom specific TSC IE
This is an Osmocom specific RSL IE that, if present, takes
precedence over the values indicated via the A-bis/OML.
Change-Id: I717e5b2a6ca5b4faeaab9cae4bb971907945871b
Related: SYS#4895, OS#4941
---
M src/common/rsl.c
1 file changed, 33 insertions(+), 0 deletions(-)
Approvals:
laforge: Looks good to me, approved
pespin: Looks good to me, but someone else must approve
Jenkins Builder: Verified
diff --git a/src/common/rsl.c b/src/common/rsl.c
index bb53aa5..516e609 100644
--- a/src/common/rsl.c
+++ b/src/common/rsl.c
@@ -134,6 +134,16 @@
case RSL_CMOD_CRT_TCH_Bm:
case RSL_CMOD_CRT_TCH_Lm:
break;
+ case RSL_CMOD_CRT_OSMO_TCH_VAMOS_Bm:
+ case RSL_CMOD_CRT_OSMO_TCH_VAMOS_Lm:
+ /* Make sure that Osmocom specific TSC IE is present */
+ if (!TLVP_PRES_LEN(tp, RSL_IE_OSMO_TRAINING_SEQUENCE, 2)) {
+ LOGPLCHAN(lchan, DRSL, LOGL_ERROR,
+ "Training Sequence IE is not present\n");
+ *cause = RSL_ERR_MAND_IE_ERROR;
+ return -ENODEV;
+ }
+ break;
default:
LOGPLCHAN(lchan, DRSL, LOGL_ERROR, "Channel Mode IE contains "
"unknown 'Channel rate and type' value 0x%02x\n",
@@ -265,6 +275,24 @@
return 0;
}
+/* Handle Osmocom specific TSC IE */
+static int rsl_handle_osmo_tsc_ie(struct gsm_lchan *lchan,
+ const struct tlv_parsed *tp,
+ uint8_t *cause)
+{
+ /* Osmocom specific IE indicating Training Sequence Code and Set */
+ if (TLVP_PRES_LEN(tp, RSL_IE_OSMO_TRAINING_SEQUENCE, 2)) {
+ const uint8_t *ie = TLVP_VAL(tp, RSL_IE_OSMO_TRAINING_SEQUENCE);
+ lchan->ts->tsc_set = ie[0] & 0x03; /* Range: 0..3 */
+ lchan->ts->tsc = ie[1] & 0x07; /* Range: 0..7 */
+ } else {
+ lchan->ts->tsc = lchan->ts->tsc_oml;
+ lchan->ts->tsc_set = 0;
+ }
+
+ return 0;
+}
+
/*
* support
@@ -1482,6 +1510,8 @@
return rsl_tx_chan_act_nack(lchan, cause);
if (rsl_handle_chan_ident_ie(lchan, &tp, &cause) != 0)
return rsl_tx_chan_act_nack(lchan, cause);
+ if (rsl_handle_osmo_tsc_ie(lchan, &tp, &cause) != 0)
+ return rsl_tx_chan_act_nack(lchan, cause);
}
/* 9.3.7 Encryption Information */
@@ -1996,6 +2026,9 @@
/* 9.3.5 Channel Identification */
if (rsl_handle_chan_ident_ie(lchan, &tp, &cause) != 0)
return rsl_tx_mode_modif_nack(lchan, cause);
+ /* Osmocom specific TSC IE for VAMOS */
+ if (rsl_handle_osmo_tsc_ie(lchan, &tp, &cause) != 0)
+ return rsl_tx_mode_modif_nack(lchan, cause);
/* 9.3.7 Encryption Information */
if (TLVP_PRESENT(&tp, RSL_IE_ENCR_INFO)) {
--
To view, visit https://gerrit.osmocom.org/c/osmo-bts/+/24329
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-bts
Gerrit-Branch: master
Gerrit-Change-Id: I717e5b2a6ca5b4faeaab9cae4bb971907945871b
Gerrit-Change-Number: 24329
Gerrit-PatchSet: 9
Gerrit-Owner: fixeria <vyanitskiy at sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: laforge <laforge at osmocom.org>
Gerrit-Reviewer: pespin <pespin at sysmocom.de>
Gerrit-MessageType: merged
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osmocom.org/pipermail/gerrit-log/attachments/20210604/7a223e8c/attachment.htm>