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>