diff --git a/library/L1CTL_Types.ttcn b/library/L1CTL_Types.ttcn index 759aafd18..3eb45aeaf 100644 --- a/library/L1CTL_Types.ttcn +++ b/library/L1CTL_Types.ttcn @@ -278,18 +278,22 @@ module L1CTL_Types { uint8_t maio, uint8_t n, OCT1 padding, - bitstring ma length(64) + bitstring ma length(64) } with { variant "" }; + type union L1ctlArfcnHopU { + Arfcn arfcn, + L1ctlH1 hopping + /* 4 bytes hsn/mail/n/padding + 64*16bit = 132 byte = 1056 bit */ + } with { variant "PADDING(1056)" }; + type record L1ctlDmEstReq { GsmTsc tsc, uint8_t h, - Arfcn arfcn optional, - L1ctlH1 hopping optional, + L1ctlArfcnHopU u, L1ctlTchMode tch_mode, L1ctlAudioMode audio_mode - } with { variant (arfcn) "PRESENCE(h = 0)" - variant (hopping) "PRESENCE(h = 1)" }; + } with { variant (u) "CROSSTAG(arfcn, h = 0; hopping, h = 1)" }; type record L1ctlReset { L1ctlResetType reset_type, @@ -521,8 +525,9 @@ module L1CTL_Types { dm_est_req := { tsc := tsc, h := 0, - arfcn := arfcn, - hopping := omit, + u := { + arfcn := arfcn + }, tch_mode := tch_mode, audio_mode := t_L1CTL_AudioModeNone }