move some key types from GSM_RR_Types to GSM_Types

This in turn means Osmocom_Gb_Types doesn't need to depend on
GSM_RR_Types anymore, which is particularly ugly as the latter
now depends on RLCMAC_*, creating a long chain of dependencies.

Change-Id: I8c8da7709695ff0023f71b3999291e2515b22e46
This commit is contained in:
Harald Welte 2020-09-12 21:30:17 +02:00
parent 4231de67fc
commit 557c9f8cb8
4 changed files with 22 additions and 21 deletions

View File

@ -135,8 +135,6 @@ module GSM_RR_Types {
} with { variant "FIELDLENGTH(8)" };
type octetstring RestOctets with { variant "PADDING(yes), PADDING_PATTERN('00101011'B)" };
type hexstring GsmBcdString with { variant "HEXORDER(low)" };
type GsmBcdString BcdMccMnc with { variant "FIELDLENGTH(6)" };
type record L2PseudoLength {
uint6_t l2_plen,
@ -219,18 +217,9 @@ module GSM_RR_Types {
hsn := hsn
};
/* TS 24.008 10.5.1.1 */
type uint16_t CellIdentity;
/* TS 24.008 10.5.1.2 */
type uint4_t CipheringKeySeqNr (0..7);
/* 24.008 10.5.1.3 */
type record LocationAreaIdentification {
BcdMccMnc mcc_mnc,
uint16_t lac
} with { variant "" };
/* TS 24.008 10.5.1.4 */
type enumerated MobileIdentityType {
MI_TYPE_NONE (0),
@ -424,15 +413,6 @@ module GSM_RR_Types {
uint3_t non_drx_timer
} with { variant "" };
/* 24.008 10.5.5.15 */
type record RoutingAreaIdentification {
LocationAreaIdentification lai,
uint8_t rac
} with { variant "" };
external function enc_RoutingAreaIdentification(RoutingAreaIdentification rai) return octetstring
with { extension "prototype(convert)" extension "encode(RAW)" }
/* 44.018 10.5.2.16 */
type record IaRestOctHL {
uint6_t freq_par_len,

View File

@ -356,5 +356,26 @@ function f_gsm_compute_tc(integer fn) return integer {
return (fn / 51) mod 8;
}
type hexstring GsmBcdString with { variant "HEXORDER(low)" };
type GsmBcdString BcdMccMnc with { variant "FIELDLENGTH(6)" };
/* 24.008 10.5.1.3 */
type record LocationAreaIdentification {
BcdMccMnc mcc_mnc,
uint16_t lac
} with { variant "" };
/* 24.008 10.5.5.15 */
type record RoutingAreaIdentification {
LocationAreaIdentification lai,
uint8_t rac
} with { variant "" };
external function enc_RoutingAreaIdentification(RoutingAreaIdentification rai) return octetstring
with { extension "prototype(convert)" extension "encode(RAW)" }
/* TS 24.008 10.5.1.1 */
type uint16_t CellIdentity;
} with { encode "RAW"; variant "FIELDORDER(msb)" }

View File

@ -6,7 +6,6 @@ module Osmocom_Gb_Types {
import from General_Types all;
import from Osmocom_Types all;
import from GSM_Types all;
import from GSM_RR_Types all;
import from BSSGP_Types all
import from NS_Types all
import from Native_Functions all;

View File

@ -15,6 +15,7 @@ friend module SGSN_Tests_Iu;
import from General_Types all;
import from Osmocom_Types all;
import from GSM_Types all;
import from Native_Functions all;
import from NS_Types all;
import from NS_Emulation all;