From 7ef121d2d93cbed94733434bd90a45c84ab968c4 Mon Sep 17 00:00:00 2001 From: Vadim Yanitskiy Date: Fri, 22 May 2020 03:04:22 +0700 Subject: library/GSM_RR_Types: add IAR Rest Octets definition See 3GPP TS 44.018, section 10.5.2.17 "IAR Rest Octets". Change-Id: Ib1f16b310d6ca94f19a1700c78cb37e8b35ac570 --- library/GSM_RR_Types.ttcn | 31 ++++++++++++++++++++++++++++++- 1 file changed, 30 insertions(+), 1 deletion(-) diff --git a/library/GSM_RR_Types.ttcn b/library/GSM_RR_Types.ttcn index 0fa6ec6e..4bd65d14 100644 --- a/library/GSM_RR_Types.ttcn +++ b/library/GSM_RR_Types.ttcn @@ -652,9 +652,38 @@ module GSM_RR_Types { type record ImmediateAssignmentReject { FeatureIndicator feature_ind, PageMode page_mode, - ReqRefWaitInd4 payload + ReqRefWaitInd4 payload, + IARRestOctets rest_octets } with { variant "" }; + /* 10.5.2.17 IAR (Immediate Assignment Reject) Rest Octets */ + type record IARRestOctets { + ExtRAList ext_ra_list, + BIT1 rel13_ind, // L/H + uint3_t rcc optional + /* Addition in Rel-15: PEO IMM Cell Group Details struct */ + } with { + variant (rel13_ind) "CSN.1 L/H" + variant (rcc) "PRESENCE(rel13_ind = '1'B)" + + /* The TITAN's RAW encoder generates an octet-aligned octetstring, + * so we should make sure that unused bits contain proper padding. */ + variant "PADDING(yes), PADDING_PATTERN('00101011'B)" + }; + + /* Optional extended RA: 0 | 1 < Extended RA 1 : bit (5) > */ + type record ExtRAOpt { + BIT1 presence, // L/H + BIT5 ext_ra optional + } with { + variant (presence) "CSN.1 L/H" + variant (ext_ra) "PRESENCE(presence = '1'B)" + /* See https://bugs.eclipse.org/bugs/show_bug.cgi?id=562488 */ + variant (ext_ra) "BYTEORDER(last)" + }; + + type record length(4) of ExtRAOpt ExtRAList; + /* 9.1.21 */ type record MeasurementReport { MeasurementResults meas_res -- cgit v1.2.3