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-ttcn3-hacks/+/17981 ) Change subject: Split templates in RLCMAC_{CSN1_}Types into their own _Templates file ...................................................................... Split templates in RLCMAC_{CSN1_}Types into their own _Templates file RLCMAC blocks have a lot of fields and we will potentially require lots of different templates, as well as functions to handle related structs. Change-Id: I9c6597178168aa3848b21930f33be698dd2ce545 --- M bsc-nat/gen_links.sh M bsc/gen_links.sh M bts/gen_links.sh M lapdm/gen_links.sh M library/L3_Templates.ttcn A library/RLCMAC_CSN1_Templates.ttcn M library/RLCMAC_CSN1_Types.ttcn A library/RLCMAC_Templates.ttcn M library/RLCMAC_Types.ttcn M mme/gen_links.sh M msc/gen_links.sh M pcu/GPRS_TBF.ttcn M pcu/PCU_Tests.ttcn M pcu/gen_links.sh M selftest/gen_links.sh M sgsn/gen_links.sh M sysinfo/gen_links.sh 17 files changed, 524 insertions(+), 477 deletions(-) Approvals: Jenkins Builder: Verified laforge: Looks good to me, approved diff --git a/bsc-nat/gen_links.sh b/bsc-nat/gen_links.sh index 471753e..4d2303f 100755 --- a/bsc-nat/gen_links.sh +++ b/bsc-nat/gen_links.sh @@ -52,7 +52,7 @@ gen_links $DIR $FILES DIR=../library -FILES="Misc_Helpers.ttcn General_Types.ttcn Osmocom_Types.ttcn GSM_Types.ttcn IPA_Types.ttcn IPA_CodecPort.ttcn IPA_CodecPort_CtrlFunct.ttcn IPA_CodecPort_CtrlFunctDef.cc IPA_Emulation.ttcnpp L3_Templates.ttcn RLCMAC_CSN1_Types.ttcn BSSMAP_Templates.ttcn RAN_Emulation.ttcnpp MGCP_Types.ttcn MGCP_Templates.ttcn MGCP_CodecPort.ttcn MGCP_CodecPort_CtrlFunct.ttcn MGCP_CodecPort_CtrlFunctDef.cc Osmocom_CTRL_Types.ttcn Osmocom_VTY_Functions.ttcn Osmocom_CTRL_Functions.ttcn Osmocom_CTRL_Adapter.ttcn BSSAP_CodecPort.ttcn" +FILES="Misc_Helpers.ttcn General_Types.ttcn Osmocom_Types.ttcn GSM_Types.ttcn IPA_Types.ttcn IPA_CodecPort.ttcn IPA_CodecPort_CtrlFunct.ttcn IPA_CodecPort_CtrlFunctDef.cc IPA_Emulation.ttcnpp L3_Templates.ttcn RLCMAC_CSN1_Templates.ttcn RLCMAC_CSN1_Types.ttcn BSSMAP_Templates.ttcn RAN_Emulation.ttcnpp MGCP_Types.ttcn MGCP_Templates.ttcn MGCP_CodecPort.ttcn MGCP_CodecPort_CtrlFunct.ttcn MGCP_CodecPort_CtrlFunctDef.cc Osmocom_CTRL_Types.ttcn Osmocom_VTY_Functions.ttcn Osmocom_CTRL_Functions.ttcn Osmocom_CTRL_Adapter.ttcn BSSAP_CodecPort.ttcn" gen_links $DIR $FILES ignore_pp_results diff --git a/bsc/gen_links.sh b/bsc/gen_links.sh index 845f7cc..a936ef3 100755 --- a/bsc/gen_links.sh +++ b/bsc/gen_links.sh @@ -67,7 +67,7 @@ gen_links $DIR $FILES DIR=../library -FILES="Misc_Helpers.ttcn General_Types.ttcn Osmocom_Types.ttcn GSM_Types.ttcn Osmocom_VTY_Functions.ttcn Native_Functions.ttcn Native_FunctionDefs.cc IPA_Types.ttcn IPA_CodecPort.ttcn IPA_CodecPort_CtrlFunct.ttcn IPA_CodecPort_CtrlFunctDef.cc IPA_Emulation.ttcnpp L3_Templates.ttcn BSSMAP_Templates.ttcn RAN_Emulation.ttcnpp RLCMAC_CSN1_Types.ttcn GSM_RR_Types.ttcn RSL_Types.ttcn RSL_Emulation.ttcn MGCP_Emulation.ttcn MGCP_Types.ttcn MGCP_Templates.ttcn MGCP_CodecPort.ttcn MGCP_CodecPort_CtrlFunct.ttcn MGCP_CodecPort_CtrlFunctDef.cc BSSAP_CodecPort.ttcn RAN_Adapter.ttcnpp Osmocom_CTRL_Types.ttcn Osmocom_CTRL_Functions.ttcn Osmocom_CTRL_Adapter.ttcn RTP_CodecPort.ttcn RTP_CodecPort_CtrlFunct.ttcn RTP_CodecPort_CtrlFunctDef.cc RTP_Emulation.ttcn IuUP_Types.ttcn IuUP_EncDec.cc IuUP_Emulation.ttcn SCCP_Templates.ttcn IPA_Testing.ttcn " +FILES="Misc_Helpers.ttcn General_Types.ttcn Osmocom_Types.ttcn GSM_Types.ttcn Osmocom_VTY_Functions.ttcn Native_Functions.ttcn Native_FunctionDefs.cc IPA_Types.ttcn IPA_CodecPort.ttcn IPA_CodecPort_CtrlFunct.ttcn IPA_CodecPort_CtrlFunctDef.cc IPA_Emulation.ttcnpp L3_Templates.ttcn BSSMAP_Templates.ttcn RAN_Emulation.ttcnpp RLCMAC_CSN1_Templates.ttcn RLCMAC_CSN1_Types.ttcn GSM_RR_Types.ttcn RSL_Types.ttcn RSL_Emulation.ttcn MGCP_Emulation.ttcn MGCP_Types.ttcn MGCP_Templates.ttcn MGCP_CodecPort.ttcn MGCP_CodecPort_CtrlFunct.ttcn MGCP_CodecPort_CtrlFunctDef.cc BSSAP_CodecPort.ttcn RAN_Adapter.ttcnpp Osmocom_CTRL_Types.ttcn Osmocom_CTRL_Functions.ttcn Osmocom_CTRL_Adapter.ttcn RTP_CodecPort.ttcn RTP_CodecPort_CtrlFunct.ttcn RTP_CodecPort_CtrlFunctDef.cc RTP_Emulation.ttcn IuUP_Types.ttcn IuUP_EncDec.cc IuUP_Emulation.ttcn SCCP_Templates.ttcn IPA_Testing.ttcn " FILES+="CBSP_Types.ttcn CBSP_Templates.ttcn " FILES+="CBSP_CodecPort.ttcn CBSP_CodecPort_CtrlFunct.ttcn CBSP_CodecPort_CtrlFunctdef.cc CBSP_Adapter.ttcn " gen_links $DIR $FILES diff --git a/bts/gen_links.sh b/bts/gen_links.sh index aafe231..b6921fa 100755 --- a/bts/gen_links.sh +++ b/bts/gen_links.sh @@ -33,7 +33,7 @@ gen_links $DIR $FILES DIR=../library -FILES="Misc_Helpers.ttcn General_Types.ttcn GSM_Types.ttcn GSM_RR_Types.ttcn Osmocom_VTY_Functions.ttcn GSM_SystemInformation.ttcn Osmocom_Types.ttcn RLCMAC_Types.ttcn RLCMAC_CSN1_Types.ttcn RLCMAC_EncDec.cc L1CTL_Types.ttcn L1CTL_PortType.ttcn L1CTL_PortType_CtrlFunct.ttcn L1CTL_PortType_CtrlFunctDef.cc LAPDm_RAW_PT.ttcn LAPDm_Types.ttcn " +FILES="Misc_Helpers.ttcn General_Types.ttcn GSM_Types.ttcn GSM_RR_Types.ttcn Osmocom_VTY_Functions.ttcn GSM_SystemInformation.ttcn Osmocom_Types.ttcn RLCMAC_Templates.ttcn RLCMAC_Types.ttcn RLCMAC_CSN1_Templates.ttcn RLCMAC_CSN1_Types.ttcn RLCMAC_EncDec.cc L1CTL_Types.ttcn L1CTL_PortType.ttcn L1CTL_PortType_CtrlFunct.ttcn L1CTL_PortType_CtrlFunctDef.cc LAPDm_RAW_PT.ttcn LAPDm_Types.ttcn " #FILES+="NS_Emulation.ttcn NS_CodecPort.ttcn NS_CodecPort_CtrlFunct.ttcn NS_CodecPort_CtrlFunctDef.cc " #FILES+="BSSGP_Emulation.ttcn Osmocom_Gb_Types.ttcn " FILES+="IPA_Types.ttcn IPA_CodecPort.ttcn IPA_CodecPort_CtrlFunct.ttcn IPA_CodecPort_CtrlFunctDef.cc IPA_Emulation.ttcnpp IPA_CodecPort.ttcn RSL_Types.ttcn RSL_Emulation.ttcn AbisOML_Types.ttcn " diff --git a/lapdm/gen_links.sh b/lapdm/gen_links.sh index 12830dd..217f485 100755 --- a/lapdm/gen_links.sh +++ b/lapdm/gen_links.sh @@ -14,7 +14,7 @@ DIR=../library -FILES="Misc_Helpers.ttcn General_Types.ttcn GSM_Types.ttcn GSM_RR_Types.ttcn RLCMAC_CSN1_Types.ttcn Osmocom_Types.ttcn L1CTL_PortType.ttcn L1CTL_PortType_CtrlFunct.ttcn L1CTL_PortType_CtrlFunctDef.cc L1CTL_Types.ttcn LAPDm_RAW_PT.ttcn LAPDm_Types.ttcn RLCMAC_Types.ttcn RLCMAC_EncDec.cc" +FILES="Misc_Helpers.ttcn General_Types.ttcn GSM_Types.ttcn GSM_RR_Types.ttcn RLCMAC_CSN1_Templates.ttcn RLCMAC_CSN1_Types.ttcn Osmocom_Types.ttcn L1CTL_PortType.ttcn L1CTL_PortType_CtrlFunct.ttcn L1CTL_PortType_CtrlFunctDef.cc L1CTL_Types.ttcn LAPDm_RAW_PT.ttcn LAPDm_Types.ttcn RLCMAC_Templates.ttcn RLCMAC_Types.ttcn RLCMAC_EncDec.cc" gen_links $DIR $FILES ignore_pp_results diff --git a/library/L3_Templates.ttcn b/library/L3_Templates.ttcn index 8af9acc..3032503 100644 --- a/library/L3_Templates.ttcn +++ b/library/L3_Templates.ttcn @@ -20,7 +20,7 @@ import from MobileL3_CC_Types all; import from MobileL3_GMM_SM_Types all; import from MobileL3_SMS_Types all; -import from RLCMAC_CSN1_Types all; +import from RLCMAC_CSN1_Templates all; /* TS 24.007 Table 11.3 TI Flag */ const BIT1 c_TIF_ORIG := '0'B; diff --git a/library/RLCMAC_CSN1_Templates.ttcn b/library/RLCMAC_CSN1_Templates.ttcn new file mode 100644 index 0000000..07f70b4 --- /dev/null +++ b/library/RLCMAC_CSN1_Templates.ttcn @@ -0,0 +1,163 @@ +/* GPRS RLC/MAC Control Messages as per 3GPP TS 44.060 manually transcribed from the CSN.1 syntax, as no CSN.1 + * tool for Eclipse TITAN could be found. Implements only the minimum necessary messages for Osmocom teseting + * purposes. */ + +/* (C) 2017-2018 Harald Welte <laforge at gnumonks.org> + * contributions by sysmocom - s.f.m.c. GmbH + * All rights reserved. + * + * Released under the terms of GNU General Public License, Version 2 or + * (at your option) any later version. + * + * SPDX-License-Identifier: GPL-2.0-or-later + */ + +module RLCMAC_CSN1_Templates { + import from General_Types all; + import from Osmocom_Types all; + import from GSM_Types all; + import from MobileL3_GMM_SM_Types all; + import from RLCMAC_CSN1_Types all; + + template (value) RlcmacUlCtrlMsg ts_RlcMacUlCtrl_PKT_CTRL_ACK(GprsTlli tlli, + CtrlAck ack := MS_RCVD_TWO_RLC_SAME_RTI_DIFF_RBSN) := { + msg_type := PACKET_CONTROL_ACK, + u := { + ctrl_ack := { + tlli := tlli, + ctrl_ack := ack + } + } + } + + const ILevel iNone := { + presence := '0'B, + i_level := omit + } + const ChannelQualityReport c_ChQualRep_default := { + c_value := 0, + rxqual := 0, + sign_var := 0, + i_levels := { iNone, iNone, iNone, iNone, iNone, iNone, iNone, iNone } + } + template (value) RlcmacUlCtrlMsg ts_RlcMacUlCtrl_PKT_DL_ACK(uint5_t dl_tfi, + AckNackDescription andesc, + ChannelQualityReport qual_rep := c_ChQualRep_default) := { + msg_type := PACKET_DL_ACK_NACK, + u := { + dl_ack_nack := { + dl_tfi := dl_tfi, + ack_nack_desc := andesc, + chreq_desc_presence := '0'B, + chreq_desc := omit, + ch_qual_rep := qual_rep + } + } + } + + private function f_presence_bit_MultislotCap_GPRS(template (omit) MultislotCap_GPRS mscap_gprs) return BIT1 { + if (istemplatekind(mscap_gprs, "omit")) { + return '0'B; + } + return '1'B; + } + private function f_presence_bit_MultislotCap_EGPRS(template (omit) MultislotCap_EGPRS mscap_egprs) return BIT1 { + if (istemplatekind(mscap_egprs, "omit")) { + return '0'B; + } + return '1'B; + } + template (value) MSRACapabilityValuesRecord ts_RaCapRec(BIT4 att := '0001'B /* E-GSM */, template (omit) MultislotCap_GPRS mscap_gprs := omit, template (omit) MultislotCap_EGPRS mscap_egprs := omit) := { + mSRACapabilityValues := { + mSRACapabilityValuesExclude1111 := { + accessTechnType := att, /* E-GSM */ + accessCapabilities := { + lengthIndicator := 0, /* overwritten */ + accessCapabilities := { + rfPowerCapability := '001'B, /* FIXME */ + presenceBitA5 := '0'B, + a5bits := omit, + esind := '1'B, + psbit := '0'B, + vgcs := '0'B, + vbs := '0'B, + presenceBitMultislot := '1'B, + multislotcap := { + presenceBitHscsd := '0'B, + hscsdmultislotclass := omit, + presenceBitGprs := f_presence_bit_MultislotCap_GPRS(mscap_gprs), + gprsmultislot := mscap_gprs, + presenceBitSms := '0'B, + multislotCap_SMS := omit, + multislotCapAdditionsAfterRel97 := { + presenceBitEcsdmulti := '0'B, + ecsdmultislotclass := omit, + presenceBitEgprsmulti := f_presence_bit_MultislotCap_EGPRS(mscap_egprs), + multislotCap_EGPRS := mscap_egprs, + presenceBitDtmGprsmulti := '0'B, + multislotCapdtmgprsmultislotsubclass := omit + } + }, + accessCapAdditionsAfterRel97 := omit + }, + spare_bits := omit + } + } + }, + presenceBitMSRACap := '0'B + }; + + private function f_presence_bit_MSRadioAccessCapabilityV(template (omit) MSRadioAccessCapabilityV ms_rac) return BIT1 { + if (istemplatekind(ms_rac, "omit")) { + return '0'B; + } + return '1'B; + } + + private function f_template_MSRadioAccessCapabilityV_to_MSRadioAccCap2(template (omit) MSRadioAccessCapabilityV ms_rac) return template (omit) MSRadioAccCap2 { + var template (omit) MSRadioAccCap2 ms_rac2 := omit; + if (istemplatekind(ms_rac, "omit")) { + return ms_rac2; + } + ms_rac2 := { msRadioAccessCapabilityV := ms_rac }; + return ms_rac2; + } + + private const ChannelReqDescription c_ChReqDesc_default := { + peak_tput_class := 0, + priority := 0, + rlc_mode := RLC_MODE_UNACKNOWLEDGED, + llc_pdu_type := LLC_PDU_IS_NOT_SACK_OR_ACK, + RlcOctetCount := 0 + } + + /* TS 44.060 sec 11.2.16 */ + template (value) RlcmacUlCtrlMsg ts_RlcMacUlCtrl_PKT_RES_REQ(GprsTlli tlli, + template (omit) MSRadioAccessCapabilityV ms_rac, + ChannelReqDescription ch_req_desc := c_ChReqDesc_default, + RlcAccessType acc_type := RLC_ACC_TYPE_TWO_PHASE) + := { + msg_type := PACKET_RESOURCE_REQUEST, + u := { + resource_req := { + acc_type_presence := '1'B, + acc_type := acc_type, + id_type := '1'B, + id := { tlli := tlli }, + ms_rac2_presence := f_presence_bit_MSRadioAccessCapabilityV(ms_rac), + ms_rac2 := f_template_MSRadioAccessCapabilityV_to_MSRadioAccCap2(ms_rac), + ch_req_desc := ch_req_desc, + change_mark_presence := '0'B, + change_mark := omit, + C_val := '000000'B, + sign_var_presence := '0'B, + sign_var := omit, + I_levels := { + iNone, iNone, iNone, iNone, + iNone, iNone, iNone, iNone + } + } + } + } + +} with { encode "RAW"; variant "FIELDORDER(msb)" variant "BYTEORDER(last)" }; diff --git a/library/RLCMAC_CSN1_Types.ttcn b/library/RLCMAC_CSN1_Types.ttcn index b545368..bca4351 100644 --- a/library/RLCMAC_CSN1_Types.ttcn +++ b/library/RLCMAC_CSN1_Types.ttcn @@ -639,147 +639,6 @@ variant (relative_k) "PRESENCE(presence = '1'B)" }; - template (value) RlcmacUlCtrlMsg ts_RlcMacUlCtrl_PKT_CTRL_ACK(GprsTlli tlli, - CtrlAck ack := MS_RCVD_TWO_RLC_SAME_RTI_DIFF_RBSN) := { - msg_type := PACKET_CONTROL_ACK, - u := { - ctrl_ack := { - tlli := tlli, - ctrl_ack := ack - } - } - } - - const ILevel iNone := { - presence := '0'B, - i_level := omit - } - const ChannelQualityReport c_ChQualRep_default := { - c_value := 0, - rxqual := 0, - sign_var := 0, - i_levels := { iNone, iNone, iNone, iNone, iNone, iNone, iNone, iNone } - } - template (value) RlcmacUlCtrlMsg ts_RlcMacUlCtrl_PKT_DL_ACK(uint5_t dl_tfi, - AckNackDescription andesc, - ChannelQualityReport qual_rep := c_ChQualRep_default) := { - msg_type := PACKET_DL_ACK_NACK, - u := { - dl_ack_nack := { - dl_tfi := dl_tfi, - ack_nack_desc := andesc, - chreq_desc_presence := '0'B, - chreq_desc := omit, - ch_qual_rep := qual_rep - } - } - } - - private function f_presence_bit_MultislotCap_GPRS(template (omit) MultislotCap_GPRS mscap_gprs) return BIT1 { - if (istemplatekind(mscap_gprs, "omit")) { - return '0'B; - } - return '1'B; - } - private function f_presence_bit_MultislotCap_EGPRS(template (omit) MultislotCap_EGPRS mscap_egprs) return BIT1 { - if (istemplatekind(mscap_egprs, "omit")) { - return '0'B; - } - return '1'B; - } - template (value) MSRACapabilityValuesRecord ts_RaCapRec(BIT4 att := '0001'B /* E-GSM */, template (omit) MultislotCap_GPRS mscap_gprs := omit, template (omit) MultislotCap_EGPRS mscap_egprs := omit) := { - mSRACapabilityValues := { - mSRACapabilityValuesExclude1111 := { - accessTechnType := att, /* E-GSM */ - accessCapabilities := { - lengthIndicator := 0, /* overwritten */ - accessCapabilities := { - rfPowerCapability := '001'B, /* FIXME */ - presenceBitA5 := '0'B, - a5bits := omit, - esind := '1'B, - psbit := '0'B, - vgcs := '0'B, - vbs := '0'B, - presenceBitMultislot := '1'B, - multislotcap := { - presenceBitHscsd := '0'B, - hscsdmultislotclass := omit, - presenceBitGprs := f_presence_bit_MultislotCap_GPRS(mscap_gprs), - gprsmultislot := mscap_gprs, - presenceBitSms := '0'B, - multislotCap_SMS := omit, - multislotCapAdditionsAfterRel97 := { - presenceBitEcsdmulti := '0'B, - ecsdmultislotclass := omit, - presenceBitEgprsmulti := f_presence_bit_MultislotCap_EGPRS(mscap_egprs), - multislotCap_EGPRS := mscap_egprs, - presenceBitDtmGprsmulti := '0'B, - multislotCapdtmgprsmultislotsubclass := omit - } - }, - accessCapAdditionsAfterRel97 := omit - }, - spare_bits := omit - } - } - }, - presenceBitMSRACap := '0'B - }; - - private function f_presence_bit_MSRadioAccessCapabilityV(template (omit) MSRadioAccessCapabilityV ms_rac) return BIT1 { - if (istemplatekind(ms_rac, "omit")) { - return '0'B; - } - return '1'B; - } - - private function f_template_MSRadioAccessCapabilityV_to_MSRadioAccCap2(template (omit) MSRadioAccessCapabilityV ms_rac) return template (omit) MSRadioAccCap2 { - var template (omit) MSRadioAccCap2 ms_rac2 := omit; - if (istemplatekind(ms_rac, "omit")) { - return ms_rac2; - } - ms_rac2 := { msRadioAccessCapabilityV := ms_rac }; - return ms_rac2; - } - - private const ChannelReqDescription c_ChReqDesc_default := { - peak_tput_class := 0, - priority := 0, - rlc_mode := RLC_MODE_UNACKNOWLEDGED, - llc_pdu_type := LLC_PDU_IS_NOT_SACK_OR_ACK, - RlcOctetCount := 0 - } - - /* TS 44.060 sec 11.2.16 */ - template (value) RlcmacUlCtrlMsg ts_RlcMacUlCtrl_PKT_RES_REQ(GprsTlli tlli, - template (omit) MSRadioAccessCapabilityV ms_rac, - ChannelReqDescription ch_req_desc := c_ChReqDesc_default, - RlcAccessType acc_type := RLC_ACC_TYPE_TWO_PHASE) - := { - msg_type := PACKET_RESOURCE_REQUEST, - u := { - resource_req := { - acc_type_presence := '1'B, - acc_type := acc_type, - id_type := '1'B, - id := { tlli := tlli }, - ms_rac2_presence := f_presence_bit_MSRadioAccessCapabilityV(ms_rac), - ms_rac2 := f_template_MSRadioAccessCapabilityV_to_MSRadioAccCap2(ms_rac), - ch_req_desc := ch_req_desc, - change_mark_presence := '0'B, - change_mark := omit, - C_val := '000000'B, - sign_var_presence := '0'B, - sign_var := omit, - I_levels := { - iNone, iNone, iNone, iNone, - iNone, iNone, iNone, iNone - } - } - } - } - /* 3GPP TS 44.060, table 11.2.5a.2 "EGPRS PACKET CHANNEL REQUEST" */ type union EGPRSPktChRequest { EGPRSPktChRequest_MC5P2RB3 one_phase, diff --git a/library/RLCMAC_Templates.ttcn b/library/RLCMAC_Templates.ttcn new file mode 100644 index 0000000..8fb6b0c --- /dev/null +++ b/library/RLCMAC_Templates.ttcn @@ -0,0 +1,346 @@ +/* TITAN REW encode/decode definitions for 3GPP TS 44.060 RLC/MAC Blocks */ + +/* (C) 2017-2018 Harald Welte <laforge at gnumonks.org> + * (C) 2020 by sysmocom s.f.m.c. GmbH <info at sysmocom.de> + * All rights reserved. + * + * Released under the terms of GNU General Public License, Version 2 or + * (at your option) any later version. + * + * SPDX-License-Identifier: GPL-2.0-or-later + */ + +module RLCMAC_Templates { + import from General_Types all; + import from Osmocom_Types all; + import from GSM_Types all; + import from RLCMAC_CSN1_Types all; + import from RLCMAC_CSN1_Templates all; + import from RLCMAC_Types all; + + /* TS 44.060 10.4.5 */ + function f_rrbp_fn_delay(MacRrbp rrbp) return uint32_t { + select (rrbp) { + case (RRBP_Nplus13_mod_2715648) { return 13; } + case (RRBP_Nplus17_or_18_mod_2715648) { return 17; } + case (RRBP_Nplus21_or_22_mod_2715648) { return 21; } + case (RRBP_Nplus26_mod_2715648) { return 26; } + } + return 0; + } + + function f_rlcmac_cs_mcs2block_len(CodingScheme cs_mcs) return uint32_t { + select (cs_mcs) { + case (CS_1) { return 23; } + case (CS_2) { return 34; } + case (CS_3) { return 40; } + case (CS_4) { return 54; } + case (MCS_1) { return 27; } + case (MCS_2) { return 33; } + case (MCS_3) { return 42; } + case (MCS_4) { return 49; } + case (MCS_5) { return 61; } + case (MCS_6) { return 79; } + case (MCS_7) { return 119; } + case (MCS_8) { return 143; } + case (MCS_9) { return 155; } + } + return 0; + } + + function f_rlcmac_block_len2cs_mcs(uint32_t len) return CodingScheme { + select (len) { + case (23) { return CS_1; } + case (34) { return CS_2; } + case (40) { return CS_3; } + case (54) { return CS_4; } + case (27) { return MCS_1; } + case (33) { return MCS_2; } + case (42) { return MCS_3; } + case (49) { return MCS_4; } + case (60) { return MCS_5; } + case (61) { return MCS_5; } + case (78) { return MCS_6; } + case (79) { return MCS_6; } + case (118) { return MCS_7; } + case (119) { return MCS_7; } + case (142) { return MCS_8; } + case (143) { return MCS_8; } + case (154) { return MCS_9; } + case (155) { return MCS_9; } + } + return CS_1; + } + + template (value) RlcmacUlBlock ts_RLC_UL_CTRL_ACK(RlcmacUlCtrlMsg ctrl, + MacPayloadType pt := MAC_PT_RLCMAC_NO_OPT, + boolean retry := false) := { + ctrl := { + mac_hdr := { + payload_type := pt, + spare := '00000'B, + retry := retry + }, + payload := ctrl + } + } + + /* Send Template for Downlink ACK/NACK */ + template RlcmacUlBlock ts_RLCMAC_DL_ACK_NACK(template uint5_t tfi, AckNackDescription andesc, boolean retry := false) := { + ctrl := { + mac_hdr := { + payload_type := MAC_PT_RLCMAC_NO_OPT, + spare := '00000'B, + retry := retry + }, + payload := { + msg_type := PACKET_DL_ACK_NACK, + u := { + dl_ack_nack := { + dl_tfi := tfi, + ack_nack_desc := andesc, + chreq_desc_presence := '0'B, + chreq_desc := omit, + ch_qual_rep := c_ChQualRep_default + } + } + } + } + } + + /* Template for uplink Data block */ + template RlcmacUlBlock t_RLCMAC_UL_DATA(template uint5_t tfi, template uint4_t cv, template uint7_t bsn, + template LlcBlocks blocks := {}, template boolean stall := false) := { + data := { + mac_hdr := { + payload_type := MAC_PT_RLC_DATA, + countdown := cv, + stall_ind := false, + retry := false, + spare := '0'B, + pfi_ind := false, + tfi := tfi, + tlli_ind := false, + bsn := bsn, + e := false + }, + tlli := omit, + pfi := omit, + blocks := blocks + } + } + template RlcmacUlBlock t_RLCMAC_UL_DATA_TLLI(template uint5_t tfi, template uint4_t cv, template uint7_t bsn, + template LlcBlocks blocks := {}, template boolean stall := false, template GprsTlli tlli) := { + data := { + mac_hdr := { + payload_type := MAC_PT_RLC_DATA, + countdown := cv, + stall_ind := false, + retry := false, + spare := '0'B, + pfi_ind := false, + tfi := tfi, + tlli_ind := true, + bsn := bsn, + e := false + }, + tlli := tlli, + pfi := omit, + blocks := blocks + } + } + + template DlMacHeader t_RLCMAC_DlMacH(template MacPayloadType pt, template MacRrbp rrbp, template +uint3_t usf) := { + payload_type := pt, + rrbp := rrbp, + rrbp_valid := ispresent(rrbp), + usf := usf + } + + template RlcmacDlBlock tr_RLCMAC_DUMMY_CTRL(template uint3_t usf := ?, template PageMode page_mode := ?) := { + ctrl := { + mac_hdr := { + payload_type := (MAC_PT_RLCMAC_NO_OPT, MAC_PT_RLCMAC_OPT), + rrbp:= ?, + rrbp_valid := ?, + usf := usf + }, + opt := *, + payload := { + msg_type := PACKET_DL_DUMMY_CTRL, + u := { + dl_dummy := { + page_mode := page_mode, + persistence_levels_present := ?, + persistence_levels := * + } + } + } + } + } + + template RlcmacDlBlock tr_RLCMAC_DL_PACKET_ASS(template uint3_t usf := ?) := { + ctrl := { + mac_hdr := { + payload_type := (MAC_PT_RLCMAC_NO_OPT, MAC_PT_RLCMAC_OPT), + rrbp:= ?, + rrbp_valid := ?, + usf := usf + }, + opt := *, + payload := { + msg_type := PACKET_DL_ASSIGNMENT, + u := { + dl_assignment := { + page_mode := ?, + pres1 := ?, + persistence_levels := *, + tfi_or_tlli := ? + } + } + } + } + } + + template RlcmacDlBlock tr_RLCMAC_UL_PACKET_ASS(template uint3_t usf := ?) := { + ctrl := { + mac_hdr := { + payload_type := (MAC_PT_RLCMAC_NO_OPT, MAC_PT_RLCMAC_OPT), + rrbp:= ?, + rrbp_valid := ?, + usf := usf + }, + opt := *, + payload := { + msg_type := PACKET_UL_ASSIGNMENT, + u := { + ul_assignment := { + page_mode := ?, + persistence_levels_present := ?, + persistence_levels := *, + identity := ?, + is_egprs := ?, /* msg escape */ + gprs := * + } + } + } + } + } + + + /* Receive Template for Uplink ACK/NACK */ + template RlcmacDlBlock tr_RLCMAC_UL_ACK_NACK(template uint5_t ul_tfi, template GprsTlli tlli := ?) := { + ctrl := { + mac_hdr := { + payload_type := (MAC_PT_RLCMAC_NO_OPT, MAC_PT_RLCMAC_OPT), + rrbp:= ?, + rrbp_valid := ?, + usf := ? + }, + opt := *, + payload := { + msg_type := PACKET_UL_ACK_NACK, + u := { + ul_ack_nack := { + page_mode := ?, + msg_excape := ?, + uplink_tfi := ul_tfi, + is_egprs := '0'B, + gprs := { + ch_coding_cmd := ?, + ack_nack_desc := ?, + cont_res_tlli_present := ?, + cont_res_tlli := tlli, + pkt_ta_present := ?, + pkt_ta := *, + pwr_ctrl_present := ?, + pwr_ctrl := * + } + } + } + } + } + } + + template RlcmacDlBlock tr_RLCMAC_PACKET_PAG_REQ(template uint3_t usf := ?) := { + ctrl := { + mac_hdr := { + payload_type := MAC_PT_RLCMAC_NO_OPT, + rrbp:= ?, + rrbp_valid := ?, + usf := usf + }, + opt := *, + payload := { + msg_type := PACKET_PAGING_REQUEST, + u := { + paging := { + page_mode := ?, + persistence_levels_present := ?, + persistence_levels := *, + nln_present := ?, + nln := *, + repeated_pageinfo_present := ?, + repeated_pageinfo := * + } + } + } + } + } + + template RlcmacDlBlock tr_RLCMAC_DATA_RRBP := { + data := { + mac_hdr := { + mac_hdr := { + payload_type := MAC_PT_RLC_DATA, + rrbp := ?, + rrbp_valid := true, + usf := ? + }, + hdr_ext := ? + }, + blocks := ? + } + } + + template RlcmacDlBlock tr_RLCMAC_DATA_EGPRS := { + data_egprs := { + mac_hdr := ?, + fbi := ?, + e := ?, + blocks := ? + } + } + + /* Template for Uplink MAC Control Header */ + template UlMacCtrlHeader t_RLCMAC_UlMacCtrlH(template MacPayloadType pt, template boolean retry := false) := { + payload_type := pt, + spare := '00000'B, + retry := retry + } + + /* Template for Uplink Control ACK */ + template RlcmacUlBlock ts_RLCMAC_CTRL_ACK(GprsTlli tlli, CtrlAck ack := MS_RCVD_TWO_RLC_SAME_RTI_DIFF_RBSN) := { + ctrl := { + mac_hdr := t_RLCMAC_UlMacCtrlH(MAC_PT_RLCMAC_NO_OPT), + payload := { + msg_type := PACKET_CONTROL_ACK, + u := { + ctrl_ack := { + tlli := tlli, + ctrl_ack := ack + } + } + } + } + } + + /* Template for a LlcBlock (part of a LLC frame inside RlcMac?lDataBlock */ + template LlcBlock t_RLCMAC_LLCBLOCK(octetstring data, boolean more := false, boolean e := true) := { + /* let encoder figure out the header */ + hdr := omit, + payload := data + } + +} with { encode "RAW"; variant "FIELDORDER(msb)" } diff --git a/library/RLCMAC_Types.ttcn b/library/RLCMAC_Types.ttcn index e5c2464..27c1805 100644 --- a/library/RLCMAC_Types.ttcn +++ b/library/RLCMAC_Types.ttcn @@ -31,16 +31,6 @@ RRBP_Nplus26_mod_2715648 ('11'B) } with { variant "FIELDLENGTH(2)" }; - function f_rrbp_fn_delay(MacRrbp rrbp) return uint32_t { - select (rrbp) { - case (RRBP_Nplus13_mod_2715648) { return 13; } - case (RRBP_Nplus17_or_18_mod_2715648) { return 17; } - case (RRBP_Nplus21_or_22_mod_2715648) { return 21; } - case (RRBP_Nplus26_mod_2715648) { return 26; } - } - return 0; - } - type enumerated EgprsHeaderType { RLCMAC_HDR_TYPE_1, RLCMAC_HDR_TYPE_2, @@ -66,49 +56,6 @@ // MCS6_9 ? }; - function f_rlcmac_cs_mcs2block_len(CodingScheme cs_mcs) return uint32_t { - select (cs_mcs) { - case (CS_1) { return 23; } - case (CS_2) { return 34; } - case (CS_3) { return 40; } - case (CS_4) { return 54; } - case (MCS_1) { return 27; } - case (MCS_2) { return 33; } - case (MCS_3) { return 42; } - case (MCS_4) { return 49; } - case (MCS_5) { return 61; } - case (MCS_6) { return 79; } - case (MCS_7) { return 119; } - case (MCS_8) { return 143; } - case (MCS_9) { return 155; } - } - return 0; - } - - function f_rlcmac_block_len2cs_mcs(uint32_t len) return CodingScheme { - select (len) { - case (23) { return CS_1; } - case (34) { return CS_2; } - case (40) { return CS_3; } - case (54) { return CS_4; } - case (27) { return MCS_1; } - case (33) { return MCS_2; } - case (42) { return MCS_3; } - case (49) { return MCS_4; } - case (60) { return MCS_5; } - case (61) { return MCS_5; } - case (78) { return MCS_6; } - case (79) { return MCS_6; } - case (118) { return MCS_7; } - case (119) { return MCS_7; } - case (142) { return MCS_8; } - case (143) { return MCS_8; } - case (154) { return MCS_9; } - case (155) { return MCS_9; } - } - return CS_1; - } - /* Partof DL RLC data block and DL RLC/MAC ctrl block */ type record DlMacHeader { MacPayloadType payload_type, @@ -406,277 +353,6 @@ external function enc_RlcmacDlBlock(in RlcmacDlBlock si) return octetstring; external function dec_RlcmacDlBlock(in octetstring stream) return RlcmacDlBlock; - template (value) RlcmacUlBlock ts_RLC_UL_CTRL_ACK(RlcmacUlCtrlMsg ctrl, - MacPayloadType pt := MAC_PT_RLCMAC_NO_OPT, - boolean retry := false) := { - ctrl := { - mac_hdr := { - payload_type := pt, - spare := '00000'B, - retry := retry - }, - payload := ctrl - } - } - - /* Send Template for Downlink ACK/NACK */ - template RlcmacUlBlock ts_RLCMAC_DL_ACK_NACK(template uint5_t tfi, AckNackDescription andesc, boolean retry := false) := { - ctrl := { - mac_hdr := { - payload_type := MAC_PT_RLCMAC_NO_OPT, - spare := '00000'B, - retry := retry - }, - payload := { - msg_type := PACKET_DL_ACK_NACK, - u := { - dl_ack_nack := { - dl_tfi := tfi, - ack_nack_desc := andesc, - chreq_desc_presence := '0'B, - chreq_desc := omit, - ch_qual_rep := c_ChQualRep_default - } - } - } - } - } - - /* Template for uplink Data block */ - template RlcmacUlBlock t_RLCMAC_UL_DATA(template uint5_t tfi, template uint4_t cv, template uint7_t bsn, - template LlcBlocks blocks := {}, template boolean stall := false) := { - data := { - mac_hdr := { - payload_type := MAC_PT_RLC_DATA, - countdown := cv, - stall_ind := false, - retry := false, - spare := '0'B, - pfi_ind := false, - tfi := tfi, - tlli_ind := false, - bsn := bsn, - e := false - }, - tlli := omit, - pfi := omit, - blocks := blocks - } - } - template RlcmacUlBlock t_RLCMAC_UL_DATA_TLLI(template uint5_t tfi, template uint4_t cv, template uint7_t bsn, - template LlcBlocks blocks := {}, template boolean stall := false, template GprsTlli tlli) := { - data := { - mac_hdr := { - payload_type := MAC_PT_RLC_DATA, - countdown := cv, - stall_ind := false, - retry := false, - spare := '0'B, - pfi_ind := false, - tfi := tfi, - tlli_ind := true, - bsn := bsn, - e := false - }, - tlli := tlli, - pfi := omit, - blocks := blocks - } - } - - template DlMacHeader t_RLCMAC_DlMacH(template MacPayloadType pt, template MacRrbp rrbp, template -uint3_t usf) := { - payload_type := pt, - rrbp := rrbp, - rrbp_valid := ispresent(rrbp), - usf := usf - } - - template RlcmacDlBlock tr_RLCMAC_DUMMY_CTRL(template uint3_t usf := ?, template PageMode page_mode := ?) := { - ctrl := { - mac_hdr := { - payload_type := (MAC_PT_RLCMAC_NO_OPT, MAC_PT_RLCMAC_OPT), - rrbp:= ?, - rrbp_valid := ?, - usf := usf - }, - opt := *, - payload := { - msg_type := PACKET_DL_DUMMY_CTRL, - u := { - dl_dummy := { - page_mode := page_mode, - persistence_levels_present := ?, - persistence_levels := * - } - } - } - } - } - - template RlcmacDlBlock tr_RLCMAC_DL_PACKET_ASS(template uint3_t usf := ?) := { - ctrl := { - mac_hdr := { - payload_type := (MAC_PT_RLCMAC_NO_OPT, MAC_PT_RLCMAC_OPT), - rrbp:= ?, - rrbp_valid := ?, - usf := usf - }, - opt := *, - payload := { - msg_type := PACKET_DL_ASSIGNMENT, - u := { - dl_assignment := { - page_mode := ?, - pres1 := ?, - persistence_levels := *, - tfi_or_tlli := ? - } - } - } - } - } - - template RlcmacDlBlock tr_RLCMAC_UL_PACKET_ASS(template uint3_t usf := ?) := { - ctrl := { - mac_hdr := { - payload_type := (MAC_PT_RLCMAC_NO_OPT, MAC_PT_RLCMAC_OPT), - rrbp:= ?, - rrbp_valid := ?, - usf := usf - }, - opt := *, - payload := { - msg_type := PACKET_UL_ASSIGNMENT, - u := { - ul_assignment := { - page_mode := ?, - persistence_levels_present := ?, - persistence_levels := *, - identity := ?, - is_egprs := ?, /* msg escape */ - gprs := * - } - } - } - } - } - - - /* Receive Template for Uplink ACK/NACK */ - template RlcmacDlBlock tr_RLCMAC_UL_ACK_NACK(template uint5_t ul_tfi, template GprsTlli tlli := ?) := { - ctrl := { - mac_hdr := { - payload_type := (MAC_PT_RLCMAC_NO_OPT, MAC_PT_RLCMAC_OPT), - rrbp:= ?, - rrbp_valid := ?, - usf := ? - }, - opt := *, - payload := { - msg_type := PACKET_UL_ACK_NACK, - u := { - ul_ack_nack := { - page_mode := ?, - msg_excape := ?, - uplink_tfi := ul_tfi, - is_egprs := '0'B, - gprs := { - ch_coding_cmd := ?, - ack_nack_desc := ?, - cont_res_tlli_present := ?, - cont_res_tlli := tlli, - pkt_ta_present := ?, - pkt_ta := *, - pwr_ctrl_present := ?, - pwr_ctrl := * - } - } - } - } - } - } - - template RlcmacDlBlock tr_RLCMAC_PACKET_PAG_REQ(template uint3_t usf := ?) := { - ctrl := { - mac_hdr := { - payload_type := MAC_PT_RLCMAC_NO_OPT, - rrbp:= ?, - rrbp_valid := ?, - usf := usf - }, - opt := *, - payload := { - msg_type := PACKET_PAGING_REQUEST, - u := { - paging := { - page_mode := ?, - persistence_levels_present := ?, - persistence_levels := *, - nln_present := ?, - nln := *, - repeated_pageinfo_present := ?, - repeated_pageinfo := * - } - } - } - } - } - - template RlcmacDlBlock tr_RLCMAC_DATA_RRBP := { - data := { - mac_hdr := { - mac_hdr := { - payload_type := MAC_PT_RLC_DATA, - rrbp := ?, - rrbp_valid := true, - usf := ? - }, - hdr_ext := ? - }, - blocks := ? - } - } - - template RlcmacDlBlock tr_RLCMAC_DATA_EGPRS := { - data_egprs := { - mac_hdr := ?, - fbi := ?, - e := ?, - blocks := ? - } - } - - /* Template for Uplink MAC Control Header */ - template UlMacCtrlHeader t_RLCMAC_UlMacCtrlH(template MacPayloadType pt, template boolean retry := false) := { - payload_type := pt, - spare := '00000'B, - retry := retry - } - - /* Template for Uplink Control ACK */ - template RlcmacUlBlock ts_RLCMAC_CTRL_ACK(GprsTlli tlli, CtrlAck ack := MS_RCVD_TWO_RLC_SAME_RTI_DIFF_RBSN) := { - ctrl := { - mac_hdr := t_RLCMAC_UlMacCtrlH(MAC_PT_RLCMAC_NO_OPT), - payload := { - msg_type := PACKET_CONTROL_ACK, - u := { - ctrl_ack := { - tlli := tlli, - ctrl_ack := ack - } - } - } - } - } - - /* Template for a LlcBlock (part of a LLC frame inside RlcMac?lDataBlock */ - template LlcBlock t_RLCMAC_LLCBLOCK(octetstring data, boolean more := false, boolean e := true) := { - /* let encoder figure out the header */ - hdr := omit, - payload := data - } - /************************ * PTCCH/D (Packet Timing Advance Control Channel) message. * TODO: add a spec. reference to the message format definition. diff --git a/mme/gen_links.sh b/mme/gen_links.sh index 469b92f..b0ecf86 100755 --- a/mme/gen_links.sh +++ b/mme/gen_links.sh @@ -56,7 +56,7 @@ DIR=../library FILES="Misc_Helpers.ttcn General_Types.ttcn GSM_Types.ttcn Osmocom_Types.ttcn Native_Functions.ttcn Native_FunctionDefs.cc " FILES+="SGsAP_Templates.ttcn SGsAP_CodecPort.ttcn SGsAP_CodecPort_CtrlFunct.ttcn SGsAP_CodecPort_CtrlFunctDef.cc SGsAP_Emulation.ttcn DNS_Helpers.ttcn " -FILES+="L3_Templates.ttcn RLCMAC_CSN1_Types.ttcn " +FILES+="L3_Templates.ttcn RLCMAC_CSN1_Templates.ttcn RLCMAC_CSN1_Types.ttcn " FILES+="S1AP_CodecPort.ttcn S1AP_CodecPort_CtrlFunctDef.cc S1AP_CodecPort_CtrlFunct.ttcn S1AP_Emulation.ttcn " FILES+="NAS_Templates.ttcn GTPv2_PrivateExtensions.ttcn GTPv2_Templates.ttcn " FILES+="DIAMETER_Types.ttcn DIAMETER_CodecPort.ttcn DIAMETER_CodecPort_CtrlFunct.ttcn DIAMETER_CodecPort_CtrlFunctDef.cc DIAMETER_Emulation.ttcn DIAMETER_Templates.ttcn " diff --git a/msc/gen_links.sh b/msc/gen_links.sh index 329a7d1..221110e 100755 --- a/msc/gen_links.sh +++ b/msc/gen_links.sh @@ -93,7 +93,7 @@ DIR=../library FILES="Misc_Helpers.ttcn General_Types.ttcn GSM_Types.ttcn Osmocom_Types.ttcn MNCC_Types.ttcn MNCC_EncDec.cc MNCC_CodecPort.ttcn mncc.h MNCC_Emulation.ttcn Osmocom_VTY_Functions.ttcn Native_Functions.ttcn Native_FunctionDefs.cc " FILES+="IPA_Types.ttcn IPA_Emulation.ttcnpp IPA_CodecPort.ttcn IPA_CodecPort_CtrlFunct.ttcn IPA_CodecPort_CtrlFunctDef.cc GSUP_Types.ttcn GSUP_Emulation.ttcn " -FILES+="Osmocom_CTRL_Types.ttcn Osmocom_CTRL_Functions.ttcn Osmocom_CTRL_Adapter.ttcn L3_Templates.ttcn RLCMAC_CSN1_Types.ttcn L3_Common.ttcn " +FILES+="Osmocom_CTRL_Types.ttcn Osmocom_CTRL_Functions.ttcn Osmocom_CTRL_Adapter.ttcn L3_Templates.ttcn RLCMAC_CSN1_Templates.ttcn RLCMAC_CSN1_Types.ttcn L3_Common.ttcn " FILES+="RAN_Emulation.ttcnpp BSSAP_CodecPort.ttcn BSSMAP_Templates.ttcn RAN_Adapter.ttcnpp MGCP_Types.ttcn MGCP_Templates.ttcn MGCP_CodecPort_CtrlFunct.ttcn MGCP_Emulation.ttcn " FILES+="RTP_CodecPort.ttcn RTP_CodecPort_CtrlFunctDef.cc " FILES+="MGCP_CodecPort.ttcn MGCP_CodecPort_CtrlFunctDef.cc " diff --git a/pcu/GPRS_TBF.ttcn b/pcu/GPRS_TBF.ttcn index 1c9a75b..fb42097 100644 --- a/pcu/GPRS_TBF.ttcn +++ b/pcu/GPRS_TBF.ttcn @@ -14,8 +14,9 @@ import from GSM_Types all; import from Osmocom_Types all; import from General_Types all; -import from RLCMAC_Types all; import from RLCMAC_CSN1_Types all; +import from RLCMAC_Types all; +import from RLCMAC_Templates all; import from LLC_Types all; import from GPRS_Context all; diff --git a/pcu/PCU_Tests.ttcn b/pcu/PCU_Tests.ttcn index 24c198e..3562925 100644 --- a/pcu/PCU_Tests.ttcn +++ b/pcu/PCU_Tests.ttcn @@ -28,7 +28,9 @@ import from MobileL3_GMM_SM_Types all; import from RLCMAC_CSN1_Types all; +import from RLCMAC_CSN1_Templates all; import from RLCMAC_Types all; +import from RLCMAC_Templates all; import from MobileL3_CommonIE_Types all; import from L3_Templates all; diff --git a/pcu/gen_links.sh b/pcu/gen_links.sh index da035cb..3a52c99 100755 --- a/pcu/gen_links.sh +++ b/pcu/gen_links.sh @@ -49,7 +49,7 @@ gen_links $DIR $FILES DIR=../library -FILES="Misc_Helpers.ttcn General_Types.ttcn Osmocom_VTY_Functions.ttcn Native_Functions.ttcn Native_FunctionDefs.cc GSM_Types.ttcn GSM_RR_Types.ttcn Osmocom_Types.ttcn RLCMAC_Types.ttcn RLCMAC_CSN1_Types.ttcn RLCMAC_EncDec.cc " +FILES="Misc_Helpers.ttcn General_Types.ttcn Osmocom_VTY_Functions.ttcn Native_Functions.ttcn Native_FunctionDefs.cc GSM_Types.ttcn GSM_RR_Types.ttcn Osmocom_Types.ttcn RLCMAC_Templates.ttcn RLCMAC_Types.ttcn RLCMAC_CSN1_Templates.ttcn RLCMAC_CSN1_Types.ttcn RLCMAC_EncDec.cc " FILES+="NS_Emulation.ttcn NS_CodecPort.ttcn NS_CodecPort_CtrlFunct.ttcn NS_CodecPort_CtrlFunctDef.cc " FILES+="BSSGP_Emulation.ttcn Osmocom_Gb_Types.ttcn " FILES+="LLC_Templates.ttcn L3_Templates.ttcn L3_Common.ttcn " diff --git a/selftest/gen_links.sh b/selftest/gen_links.sh index c590de6..fd64a48 100755 --- a/selftest/gen_links.sh +++ b/selftest/gen_links.sh @@ -39,7 +39,7 @@ gen_links $DIR $FILES DIR=../library -FILES="Misc_Helpers.ttcn General_Types.ttcn Osmocom_Types.ttcn GSM_Types.ttcn IPA_Types.ttcn IPA_CodecPort.ttcn IPA_CodecPort_CtrlFunct.ttcn IPA_CodecPort_CtrlFunctDef.cc IPA_Emulation.ttcnpp L3_Templates.ttcn BSSMAP_Templates.ttcn RLCMAC_CSN1_Types.ttcn GSM_RR_Types.ttcn RSL_Types.ttcn BSSAP_CodecPort.ttcn Osmocom_CTRL_Types.ttcn Osmocom_CTRL_Functions.ttcn GSUP_Types.ttcn" +FILES="Misc_Helpers.ttcn General_Types.ttcn Osmocom_Types.ttcn GSM_Types.ttcn IPA_Types.ttcn IPA_CodecPort.ttcn IPA_CodecPort_CtrlFunct.ttcn IPA_CodecPort_CtrlFunctDef.cc IPA_Emulation.ttcnpp L3_Templates.ttcn BSSMAP_Templates.ttcn RLCMAC_CSN1_Templates.ttcn RLCMAC_CSN1_Types.ttcn GSM_RR_Types.ttcn RSL_Types.ttcn BSSAP_CodecPort.ttcn Osmocom_CTRL_Types.ttcn Osmocom_CTRL_Functions.ttcn GSUP_Types.ttcn" gen_links $DIR $FILES ignore_pp_results diff --git a/sgsn/gen_links.sh b/sgsn/gen_links.sh index 3552bc2..bd3a7ea 100755 --- a/sgsn/gen_links.sh +++ b/sgsn/gen_links.sh @@ -83,7 +83,7 @@ gen_links $DIR $FILES DIR=../library -FILES="Misc_Helpers.ttcn General_Types.ttcn GSM_Types.ttcn GSM_RR_Types.ttcn Osmocom_Types.ttcn RLCMAC_Types.ttcn RLCMAC_CSN1_Types.ttcn RLCMAC_EncDec.cc " +FILES="Misc_Helpers.ttcn General_Types.ttcn GSM_Types.ttcn GSM_RR_Types.ttcn Osmocom_Types.ttcn RLCMAC_Templates.ttcn RLCMAC_Types.ttcn RLCMAC_CSN1_Templates.ttcn RLCMAC_CSN1_Types.ttcn RLCMAC_EncDec.cc " FILES+="NS_Emulation.ttcn NS_CodecPort.ttcn NS_CodecPort_CtrlFunct.ttcn NS_CodecPort_CtrlFunctDef.cc " FILES+="BSSGP_Emulation.ttcn Osmocom_Gb_Types.ttcn " FILES+="Osmocom_CTRL_Types.ttcn Osmocom_CTRL_Functions.ttcn Osmocom_CTRL_Adapter.ttcn " diff --git a/sysinfo/gen_links.sh b/sysinfo/gen_links.sh index d32b89b..3526a29 100755 --- a/sysinfo/gen_links.sh +++ b/sysinfo/gen_links.sh @@ -25,7 +25,7 @@ gen_links $DIR $FILES DIR=../library -FILES="GSMTAP_PortType.ttcn GSMTAP_Types.ttcn GSM_SystemInformation.ttcn GSM_RR_Types.ttcn RLCMAC_CSN1_Types.ttcn GSM_Types.ttcn IPL4_GSMTAP_CtrlFunct.ttcn IPL4_GSMTAP_CtrlFunctDef.cc Osmocom_Types.ttcn Misc_Helpers.ttcn General_Types.ttcn Osmocom_VTY_Functions.ttcn" +FILES="GSMTAP_PortType.ttcn GSMTAP_Types.ttcn GSM_SystemInformation.ttcn GSM_RR_Types.ttcn RLCMAC_CSN1_Templates.ttcn RLCMAC_CSN1_Types.ttcn GSM_Types.ttcn IPL4_GSMTAP_CtrlFunct.ttcn IPL4_GSMTAP_CtrlFunctDef.cc Osmocom_Types.ttcn Misc_Helpers.ttcn General_Types.ttcn Osmocom_VTY_Functions.ttcn" gen_links $DIR $FILES ignore_pp_results -- To view, visit https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/17981 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-ttcn3-hacks Gerrit-Branch: master Gerrit-Change-Id: I9c6597178168aa3848b21930f33be698dd2ce545 Gerrit-Change-Number: 17981 Gerrit-PatchSet: 1 Gerrit-Owner: pespin <pespin at sysmocom.de> Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: fixeria <axilirator at gmail.com> 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/20200501/2f33bff2/attachment.htm>