2 * Definitions for GSM RLC MAC control plane message dissection in wireshark.
4 * By Vincent Helfre, based on original code by Jari Sassi
5 * with the gracious authorization of STE
6 * Copyright (c) 2011 ST-Ericsson
10 * Wireshark - Network traffic analyzer
11 * By Gerald Combs <gerald@wireshark.org>
12 * Copyright 1998 Gerald Combs
14 * This program is free software; you can redistribute it and/or
15 * modify it under the terms of the GNU General Public License
16 * as published by the Free Software Foundation; either version 2
17 * of the License, or (at your option) any later version.
19 * This program is distributed in the hope that it will be useful,
20 * but WITHOUT ANY WARRANTY; without even the implied warranty of
21 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
22 * GNU General Public License for more details.
24 * You should have received a copy of the GNU General Public License
25 * along with this program; if not, write to the Free Software
26 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
29 #ifndef __PACKET_GSM_RLCMAC_H__
30 #define __PACKET_GSM_RLCMAC_H__
40 #define GSM_RLC_MAC_MAGIC_NUMBER 0x67707273
48 /* Starting Time IE as specified in 04.08 */
51 N32_t N32
; /* 04.08 refers to T1' := (FN div 1326) mod 32 */
52 N51_t N51
; /* 04.08 refers to T3 := FN mod 51 */
53 N26_t N26
; /* 04.08 refers to T2 := FN mod 26 */
58 guint8 UnionType
;/* UnionType is index */
71 StartingTime_t StartingTime
;
74 } Starting_Frame_Number_t
;
78 guint8 FINAL_ACK_INDICATION
;
79 guint8 STARTING_SEQUENCE_NUMBER
;
80 guint8 RECEIVED_BLOCK_BITMAP
[64/8];
81 } Ack_Nack_Description_t
;
86 guint8 Exist_TIMING_ADVANCE_VALUE
;
87 guint8 TIMING_ADVANCE_VALUE
;
89 guint8 Exist_IndexAndtimeSlot
;
90 guint8 TIMING_ADVANCE_INDEX
;
91 guint8 TIMING_ADVANCE_TIMESLOT_NUMBER
;
92 } Packet_Timing_Advance_t
;
103 } Power_Control_Parameters_t
;
112 guint8 INT_MEAS_CHANNEL_LIST_AVAIL
;
114 } Global_Power_Control_Parameters_t
;
118 guint8 Exist_TIMING_ADVANCE_VALUE
;
119 guint8 TIMING_ADVANCE_VALUE
;
121 guint8 Exist_UPLINK_TIMING_ADVANCE
;
122 guint8 UPLINK_TIMING_ADVANCE_INDEX
;
123 guint8 UPLINK_TIMING_ADVANCE_TIMESLOT_NUMBER
;
125 guint8 Exist_DOWNLINK_TIMING_ADVANCE
;
126 guint8 DOWNLINK_TIMING_ADVANCE_INDEX
;
127 guint8 DOWNLINK_TIMING_ADVANCE_TIMESLOT_NUMBER
;
128 } Global_Packet_Timing_Advance_t
;
142 } Channel_Quality_Report_t
;
146 RLC_MODE_ACKNOWLEDGED
= 0,
147 RLC_MODE_UNACKNOWLEDGED
= 1
152 guint8 PEAK_THROUGHPUT_CLASS
;
153 guint8 RADIO_PRIORITY
;
156 guint16 RLC_OCTET_COUNT
;
157 } Channel_Request_Description_t
;
161 guint16 RANDOM_ACCESS_INFORMATION
;
162 guint8 FRAME_NUMBER
[2];
163 } Packet_Request_Reference_t
;
165 typedef PRE_PACKED
struct
169 } Receive_N_PDU_Number_t POST_PACKED
;
171 typedef PRE_PACKED
struct
176 guint8 Count_Receive_N_PDU_Number
;
177 Receive_N_PDU_Number_t Receive_N_PDU_Number
[11];
178 } Receive_N_PDU_Number_list_t POST_PACKED
;
197 /** This type is used to describe LAI codes */
198 typedef PRE_PACKED
struct
206 #define LAI_LEN (sizeof(LAI_t))
210 guint8 TMSI
[TMSI_LEN
];
213 typedef guint16 CellId_t
;
216 #define CKSN_NOT_VALID 7
220 #define IMEISV_LEN 10
222 #define MAX_ELEMENTS_IN_EQPLMN_LIST 16
228 guint8 CCN_SUPPORTED
[16]; /* bit (1), max size: 16 x 8 => 128 bits */
229 } CCN_Support_Description_t
;
239 } LSA_ID_Info_Element_t
;
241 #define LSA_ID_INFO_ELEMENTS_MAX (16)
245 guint8 Count_LSA_ID_Info_Element
;
246 LSA_ID_Info_Element_t LSA_ID_Info_Elements
[LSA_ID_INFO_ELEMENTS_MAX
];
249 #define NR_OF_FREQ_OR_CELLS_MAX (32)
253 guint8 NR_OF_FREQ_OR_CELLS
;
254 LSA_ID_Info_t LSA_ID_Info
[NR_OF_FREQ_OR_CELLS_MAX
];
257 #define MAX_REPORT_PRIORITY_CELLS (16)
262 guint8 REPORT_PRIORITY
[MAX_REPORT_PRIORITY_CELLS
];
265 typedef ReportPriority_t GPRSReportPriority_t
;
269 guint8 REPORTING_OFFSET
;
270 guint8 REPORTING_THRESHOLD
;
276 guint8 Exist_MULTI_BAND_REPORTING
;
277 guint8 MULTI_BAND_REPORTING
;
279 guint8 Exist_SERVING_BAND_REPORTING
;
280 guint8 SERVING_BAND_REPORTING
;
284 * SI2quater, MI, PMO, and PCCO always specify Scale Ord. There is no
285 * "exist SCALE_ORD" bit in the CSN.1 descriptions for these messages.
286 * However, this struct is shared with the PSI5 message which may or may
287 * not specify SCALE_ORD, thus necessitating the inclusion of member
288 * Exist_SCALE_ORD in the struct. This member is never set for SI2quater, MI,
289 * PMO, and PCCO so to check it (in these cases) would be erroneous.
291 guint8 Exist_SCALE_ORD
;
294 guint8 Exist_OffsetThreshold900
;
295 OffsetThreshold_t OffsetThreshold900
;
297 guint8 Exist_OffsetThreshold1800
;
298 OffsetThreshold_t OffsetThreshold1800
;
300 guint8 Exist_OffsetThreshold400
;
301 OffsetThreshold_t OffsetThreshold400
;
303 guint8 Exist_OffsetThreshold1900
;
304 OffsetThreshold_t OffsetThreshold1900
;
306 guint8 Exist_OffsetThreshold850
;
307 OffsetThreshold_t OffsetThreshold850
;
309 } MeasurementParams_t
;
313 guint8 Exist_FDD_REPORTING_THRESHOLD_2
;
314 guint8 FDD_REPORTING_THRESHOLD_2
;
315 } GPRS_AdditionalMeasurementParams3G_t
;
320 guint8 NETWORK_CONTROL_ORDER
;
323 guint8 NC_NON_DRX_PERIOD
;
324 guint8 NC_REPORTING_PERIOD_I
;
325 guint8 NC_REPORTING_PERIOD_T
;
326 } NC_Measurement_Parameters_t
;
330 **========================================================================
332 **========================================================================
335 struct MobileId
/* Mobile id, -> TMSI, IMEI or IMSI */
343 unsigned char TMSI
[TMSI_LEN
];
344 unsigned char IMEI
[IMEI_LEN
- 2];
345 unsigned char IMSI
[IMEI_LEN
- 2];
346 unsigned char IMEISV
[IMEISV_LEN
- 2];
351 struct OV_MobileId
/* Struct for optional mobile identity */
357 #define LAC_INVALID 0xFEFF
361 LAI_PRIORITY_AVAILABLE
,
362 LAI_PRIORITY_FORBIDDEN
,
387 struct OV_MobileId MobileId
;
398 guint8 NbrOfElements
;
399 PLMN_t Element
[MAX_ELEMENTS_IN_EQPLMN_LIST
];
404 #define MAX_RFL_LENGTH 16 /* length of RFL in PSI2 */
405 #define MAX_RFLS 4 /* Max number of RFLs */
406 #define MAX_MA_LISTS_IN_PSI2 8 /* MAX MA lists = 8 */
407 #define MAX_ALLOCATION_BITMAP_LENGTH 128 /* max length of Fixed Allocation bitmap in BITS (2^7) */
408 #define MAX_VAR_LENGTH_BITMAP_LENGTH 176 /* max length ever possible for variable length fixed allocation bitmap */
409 #define MAX_RRC_CONTAINER_LENGTH 255
410 #define MAX_NAS_CONTAINER_LENGTH 127
415 guint8 MA_LENGTH
;/* =(MA_BitLength +7) MA_BitLength_ converted to bytes */
416 guint8 MA_BITMAP
[(63+1)/8];/* : bit (val (MA_LENGTH) + 1) > */
417 /* The above should not change order! */
419 } MobileAllocation_t
;
423 guint8 ElementsOf_ARFCN_INDEX
;
424 guint8 ARFCN_INDEX
[16];
425 } ARFCN_index_list_t
;
431 guint8 ElementsOf_RFL_NUMBER
;
432 guint8 RFL_NUMBER
[4];
437 MobileAllocation_t MA
;
438 ARFCN_index_list_t ARFCN_index_list
;
440 } GPRS_Mobile_Allocation_t
;
442 /* < EGPRS Ack/Nack Description >
443 * CRBB - Compressed Received Blocks Bitmap
444 * URBB - Uncompressed Received Blocks Bitmap
446 #define EGPRS_ACK_NACK_MAX_BITS 0x0FF /* 255 bits/32 bytes */
447 #define CRBB_MAX_BITS 0x07F /* 127 bits/16 bytes */
448 #define URBB_MAX_BITS 0x150 /* 336 bits/42 bytes */
452 guint8 FINAL_ACK_INDICATION
;
453 guint8 BEGINNING_OF_WINDOW
;
454 guint8 END_OF_WINDOW
;
455 guint16 STARTING_SEQUENCE_NUMBER
;
459 guint8 CRBB_STARTING_COLOR_CODE
;
460 guint8 CRBB
[CRBB_MAX_BITS
/8 + 1];
463 guint8 URBB
[URBB_MAX_BITS
/8];
464 } EGPRS_AckNack_Desc_t
;
469 EGPRS_AckNack_Desc_t Desc
;
475 EGPRS_AckNack_Desc_t Desc
;
476 } EGPRS_AckNack_w_len_t
;
483 #define SF_VBS 0 /* VBS (broadcast call reference) */
484 #define SF_VGCS 1 /* VGCS (group call reference) */
486 #define AF_AckIsNotRequired 0 /* acknowledgement is not required */
487 #define AF_AckIsRequired 1 /* acknowledgement is required */
495 guint8 call_priority
;
496 guint8 Ciphering_information
;
497 } Group_Call_Reference_t
;
499 /* Mobile allocation is coded differently but uses the same type! */
504 } MobileAllocationIE_t
;
511 MobileAllocationIE_t MA
;
512 guint8 Frequency_Short_List
[64/8];
514 } MobileAllocation_or_Frequency_Short_List_t
;
526 } RFHoppingChannel_t
;
530 guint8 Channel_type_and_TDMA_offset
;
537 SingleRFChannel_t SingleRFChannel
;
538 RFHoppingChannel_t RFHoppingChannel
;
540 } Channel_Description_t
;
544 Channel_Description_t Channel_Description
;
546 guint8 Exist_Hopping
;
547 MobileAllocation_or_Frequency_Short_List_t MA_or_Frequency_Short_List
;
549 } Group_Channel_Description_t
;
553 Group_Call_Reference_t Group_Call_Reference
;
555 guint8 Exist_Group_Channel_Description
;
556 Group_Channel_Description_t Group_Channel_Description
;
557 } Group_Call_information_t
;
561 guint8 Exist_NLN_PCH_and_NLN_status
;
565 guint8 Exist_Priority1
;
568 guint8 Exist_Priority2
;
571 guint8 Exist_Group_Call_information
;
572 Group_Call_information_t Group_Call_information
;
574 guint8 Packet_Page_Indication_1
;
575 guint8 Packet_Page_Indication_2
;
583 guint8 Exist_NLN_and_status
;
587 guint8 Exist_Priority1
;
590 guint8 Exist_Priority2
;
593 guint8 Exist_Priority3
;
596 guint8 Packet_Page_Indication_3
;
599 /* <IA Rest Octets> incl additions for R99 and EGPRS */
604 guint8 USF_GRANULARITY
;
606 guint8 Exist_P0_PR_MODE
;
609 } DynamicAllocation_t
;
613 gboolean Exist_ALPHA
;
617 StartingTime_t TBF_STARTING_TIME
;
618 guint8 NR_OF_RADIO_BLOCKS_ALLOCATED
;
620 gboolean Exist_P0_BTS_PWR_CTRL_PR_MODE
;
622 guint8 BTS_PWR_CTRL_MODE
;
624 } EGPRS_TwoPhaseAccess_t
;
628 guint8 TFI_ASSIGNMENT
;
634 DynamicAllocation_t DynamicAllocation
;
635 guint8 FixedAllocationDummy
; /* Fixed Allocation was removed */
638 guint8 EGPRS_CHANNEL_CODING_COMMAND
;
639 guint8 TLLI_BLOCK_CHANNEL_CODING
;
641 gboolean Exist_BEP_PERIOD2
;
645 guint8 EGPRS_WindowSize
;
647 gboolean Exist_ALPHA
;
652 gboolean Exist_TIMING_ADVANCE_INDEX
;
653 guint8 TIMING_ADVANCE_INDEX
;
655 gboolean Exist_TBF_STARTING_TIME
;
656 StartingTime_t TBF_STARTING_TIME
;
657 } EGPRS_OnePhaseAccess_t
;
659 #define MAX_ACCESS_TECHOLOGY_TYPES 12
665 guint8 NrOfAccessTechnologies
;
666 guint8 AccessTechnologyType
[MAX_ACCESS_TECHOLOGY_TYPES
];
671 EGPRS_TwoPhaseAccess_t TwoPhaseAccess
; /* 04.18/10.5.2.16 Multiblock allocation */
672 EGPRS_OnePhaseAccess_t OnePhaseAccess
; /* 04.60/10.5.2.16 TFI using Dynamic or Fixed Allocation */
681 IA_EGPRS_00_t IA_EGPRS_PUA
; /* 00 < EGPRS Packet Uplink Assignment >*/
682 guint8 IA_EGPRS_01
; /* 01 reserved for future use */
683 guint8 IA_EGPRS_1
; /* 1 reserved for future use */
691 guint8 MobileAllocation
[62];
692 } IA_FreqParamsBeforeTime_t
;
696 gboolean Exist_ALPHA
;
700 guint8 R97_CompatibilityBits
;
701 StartingTime_t TBF_STARTING_TIME
;
703 gboolean Exist_P0_BTS_PWR_CTRL_PR_MODE
;
705 guint8 BTS_PWR_CTRL_MODE
;
707 } GPRS_SingleBlockAllocation_t
;
711 guint8 TFI_ASSIGNMENT
;
717 DynamicAllocation_t DynamicAllocation
;
718 guint8 FixedAllocationDummy
;
721 guint8 CHANNEL_CODING_COMMAND
;
722 guint8 TLLI_BLOCK_CHANNEL_CODING
;
729 guint8 Exist_TIMING_ADVANCE_INDEX
;
730 guint8 TIMING_ADVANCE_INDEX
;
732 guint8 Exist_TBF_STARTING_TIME
;
733 StartingTime_t TBF_STARTING_TIME
;
734 } GPRS_DynamicOrFixedAllocation_t
;
738 gboolean Exist_ExtendedRA
;
740 } PU_IA_AdditionsR99_t
;
747 GPRS_SingleBlockAllocation_t SingleBlockAllocation
;
748 GPRS_DynamicOrFixedAllocation_t DynamicOrFixedAllocation
;
751 gboolean Exist_AdditionsR99
;
752 PU_IA_AdditionsR99_t AdditionsR99
;
753 } Packet_Uplink_ImmAssignment_t
;
757 guint8 EGPRS_WindowSize
;
758 guint8 LINK_QUALITY_MEASUREMENT_MODE
;
760 gboolean Exist_BEP_PERIOD2
;
762 } PD_IA_AdditionsR99_t
;
768 guint8 Exist_TFI_to_TA_VALID
;
769 guint8 TFI_ASSIGNMENT
;
777 guint8 Exist_TIMING_ADVANCE_INDEX
;
778 guint8 TIMING_ADVANCE_INDEX
;
780 guint8 Exist_TBF_STARTING_TIME
;
781 StartingTime_t TBF_STARTING_TIME
;
783 guint8 Exist_P0_PR_MODE
;
785 guint8 BTS_PWR_CTRL_MODE
;
788 gboolean Exist_AdditionsR99
;
789 PD_IA_AdditionsR99_t AdditionsR99
;
790 } Packet_Downlink_ImmAssignment_t
;
794 gboolean Exist_SecondPart
;
796 gboolean Exist_ExtendedRA
;
798 } Second_Part_Packet_Assignment_t
;
805 Packet_Uplink_ImmAssignment_t Packet_Uplink_ImmAssignment
;
806 Packet_Downlink_ImmAssignment_t Packet_Downlink_ImmAssignment
;
808 } IA_PacketAssignment_UL_DL_t
;
815 IA_PacketAssignment_UL_DL_t UplinkDownlinkAssignment
;
816 Second_Part_Packet_Assignment_t Second_Part_Packet_Assignment
;
818 } IA_PacketAssignment_t
;
826 IA_FreqParamsBeforeTime_t IA_FrequencyParams
;
827 IA_PacketAssignment_t IA_PacketAssignment
;
836 IA_EGPRS_t IA_EGPRS_Struct
;
837 IA_GPRS_t IA_GPRS_Struct
;
842 /* <IAR Rest Octets> ref: 04.18/10.5.2.17 */
845 guint8 Exist_ExtendedRA
;
849 typedef ExtendedRA_Info_t ExtendedRA_Info_Array_t
[4];
853 ExtendedRA_Info_Array_t ExtendedRA_Info
;
857 /* Packet Polling Request */
863 Global_TFI_t Global_TFI
;
873 PacketPollingID_t ID
;
875 } Packet_Polling_Request_t
;
877 /* < SI 13 Rest Octets > */
878 #define MAX_EXTENSION_LENGTH_IN_BYTES (8) /* max value = 64 (coded on 6 bits) */
882 guint8 extension_length
;
883 guint8 Extension_Info
[MAX_EXTENSION_LENGTH_IN_BYTES
];/* ( val (extension length)+1 ) 04.60/12.26 */
889 guint8 DTM_SUPPORT
: 1;
890 guint8 PFC_FEATURE_MODE
: 1;
891 guint8 BEP_PERIOD
: 4;
892 guint8 EGPRS_PACKET_CHANNEL_REQUEST
: 1;
893 guint8 EGPRS_Support
: 1;
896 guint8 EXT_UTBF_NODATA
: 1;
897 guint8 MULTIPLE_TBF_CAPABILITY
: 1;
898 guint8 NW_EXT_UTBF
: 1;
899 guint8 CCN_ACTIVE
: 1;
900 guint8 BSS_PAGING_COORDINATION
: 1;
901 } GPRS_ExtensionInfoWithEGPRS_t
;
905 guint8 EXT_UTBF_NODATA
: 1;
906 guint8 MULTIPLE_TBF_CAPABILITY
: 1;
907 guint8 NW_EXT_UTBF
: 1;
908 guint8 CCN_ACTIVE
: 1;
909 guint8 BSS_PAGING_COORDINATION
: 1;
910 guint8 DTM_SUPPORT
: 1;
911 guint8 PFC_FEATURE_MODE
: 1;
912 guint8 EGPRS_Support
: 1;
913 } GPRS_ExtensionInfoWithoutEGPRS_t
;
918 guint8 EGPRS_Support
: 1;
925 } NonGPRS_ExtensionInfo_t
;
929 guint8 Extension_Length
;
932 EGPRS_Support_t EGPRS_Support
;
933 GPRS_ExtensionInfoWithEGPRS_t GPRS_ExtensionInfoWithEGPRS
;
934 GPRS_ExtensionInfoWithoutEGPRS_t GPRS_ExtensionInfoWithoutEGPRS
;
935 NonGPRS_ExtensionInfo_t NonGPRS_ExtensionInfo
;
936 guint8 Extension_Information
[MAX_EXTENSION_LENGTH_IN_BYTES
];
938 } Optional_Extension_Information_t
;
942 gboolean EGPRS_Support
;
944 gboolean EGPRS_PACKET_CHANNEL_REQUEST
;
945 } EGPRS_OptionalExtensionInformation_t
;
953 guint8 DRX_TIMER_MAX
;
954 guint8 ACCESS_BURST_TYPE
;
955 guint8 CONTROL_ACK_TYPE
;
963 guint8 Exist_Extension_Bits
;
964 Extension_Bits_t Extension_Bits
;
965 } GPRS_Cell_Options_t
;
974 } GPRS_Power_Control_Parameters_t
;
979 guint8 SPGC_CCCH_SUP
;
980 guint8 PRIORITY_ACCESS_THR
;
981 guint8 NETWORK_CONTROL_ORDER
;
982 GPRS_Cell_Options_t GPRS_Cell_Options
;
983 GPRS_Power_Control_Parameters_t GPRS_Power_Control_Parameters
;
984 } PBCCH_Not_present_t
;
999 } PBCCH_Description_t
;
1003 guint8 PSI1_REPEAT_PERIOD
;
1004 PBCCH_Description_t PBCCH_Description
;
1009 /* < Packet TBF Release message content > */
1010 typedef guint8 TBF_RELEASE_CAUSE_t
;
1012 #define TBF_RELEASE_CAUSE_NORMAL (0x00)
1013 #define TBF_RELEASE_CAUSE_ABNORMAL (0x02)
1018 guint8 MESSAGE_TYPE
;
1020 Global_TFI_t Global_TFI
;
1021 guint8 UPLINK_RELEASE
;
1022 guint8 DOWNLINK_RELEASE
;
1023 TBF_RELEASE_CAUSE_t TBF_RELEASE_CAUSE
;
1024 } Packet_TBF_Release_t
;
1026 /* < Packet Control Acknowledgement message content > */
1029 guint8 Exist_CTRL_ACK_Extension
;
1030 guint16 CTRL_ACK_Extension
;
1031 } Packet_Control_Acknowledgement_AdditionsR6_t
;
1035 guint8 Exist_TN_RRBP
;
1037 guint8 Exist_G_RNTI_Extension
;
1038 guint8 G_RNTI_Extension
;
1039 gboolean Exist_AdditionsR6
;
1040 Packet_Control_Acknowledgement_AdditionsR6_t AdditionsR6
;
1041 } Packet_Control_Acknowledgement_AdditionsR5_t
;
1045 guint8 MESSAGE_TYPE
;
1052 gboolean Exist_AdditionsR5
;
1053 Packet_Control_Acknowledgement_AdditionsR5_t AdditionsR5
;
1054 } Packet_Control_Acknowledgement_t
;
1056 typedef Packet_Control_Acknowledgement_t Packet_Ctrl_Ack_t
;
1062 } Packet_Control_Acknowledgement_11_bit_t
, Packet_Control_Acknowledgement_8_bit_t
;
1065 /* < Packet Downlink Dummy Control Block message content > */
1068 guint8 MESSAGE_TYPE
;
1071 guint8 Exist_PERSISTENCE_LEVEL
;
1072 guint8 PERSISTENCE_LEVEL
[4];
1073 } Packet_Downlink_Dummy_Control_Block_t
;
1075 /* < Packet Uplink Dummy Control Block message content > */
1078 guint8 MESSAGE_TYPE
;
1084 } Packet_Uplink_Dummy_Control_Block_t
;
1086 /* MS Radio Access capability IE >
1087 * 24.008 (10.5.5.12a)
1089 typedef guint8 A5_bits_t
;/* <A5 bits> ::= < A5/1 : bit> <A5/2 : bit> <A5/3 : bit> <A5/4 : bit> <A5/5 : bit> <A5/6 : bit> <A5/7 : bit>; -- bits for circuit mode ciphering algorithms */
1093 guint8 Exist_DTM_EGPRS_multislot_class
;
1094 guint8 DTM_EGPRS_multislot_class
;
1099 guint8 Exist_DTM_EGPRS_HighMultislotClass
;
1100 guint8 DTM_EGPRS_HighMultislotClass
;
1101 } DTM_EGPRS_HighMultislotClass_t
;
1105 guint8 Exist_HSCSD_multislot_class
;
1106 guint8 HSCSD_multislot_class
;
1108 guint8 Exist_GPRS_multislot_class
;
1109 guint8 GPRS_multislot_class
;
1110 guint8 GPRS_Extended_Dynamic_Allocation_Capability
;
1116 /*-------- Rel 99 additions */
1117 guint8 Exist_ECSD_multislot_class
;
1118 guint8 ECSD_multislot_class
;
1120 guint8 Exist_EGPRS_multislot_class
;
1121 guint8 EGPRS_multislot_class
;
1122 guint8 EGPRS_Extended_Dynamic_Allocation_Capability
;
1124 guint8 Exist_DTM_GPRS_multislot_class
;
1125 guint8 DTM_GPRS_multislot_class
;
1126 guint8 Single_Slot_DTM
;
1127 DTM_EGPRS_t DTM_EGPRS_Params
;
1128 } Multislot_capability_t
;
1132 guint8 RF_Power_Capability
;
1134 guint8 Exist_A5_bits
;
1136 /*-- zero means that the same values apply for parameters as in the immediately preceeding Access capabilities field within this IE
1137 *-- The presence of the A5 bits is mandatory in the 1st Access capabilies struct within this IE.
1145 guint8 Exist_Multislot_capability
;
1146 Multislot_capability_t Multislot_capability
;
1147 /* -- zero means that the same values apply for multislot parameters as in the immediately preceeding Access capabilities field within this IE.
1148 * -- The presence of the Multislot capability struct is mandatory in the 1st Access capabilites struct within this IE.
1150 /* -------- Rel 99 additions */
1151 guint8 Exist_Eight_PSK_Power_Capability
;
1152 guint8 Eight_PSK_Power_Capability
;
1154 guint8 COMPACT_Interference_Measurement_Capability
;
1155 guint8 Revision_Level_Indicator
;
1156 guint8 UMTS_FDD_Radio_Access_Technology_Capability
;
1157 guint8 UMTS_384_TDD_Radio_Access_Technology_Capability
;
1158 guint8 CDMA2000_Radio_Access_Technology_Capability
;
1160 /* -------- R4 additions */
1161 guint8 UMTS_128_TDD_Radio_Access_Technology_Capability
;
1162 guint8 GERAN_Feature_Package_1
;
1164 guint8 Exist_Extended_DTM_multislot_class
;
1165 guint8 Extended_DTM_GPRS_multislot_class
;
1166 guint8 Extended_DTM_EGPRS_multislot_class
;
1168 guint8 Modulation_based_multislot_class_support
;
1170 /* -------- R5 additions */
1171 guint8 Exist_HighMultislotCapability
;
1172 guint8 HighMultislotCapability
;
1174 guint8 Exist_GERAN_lu_ModeCapability
;
1175 guint8 GERAN_lu_ModeCapability
;
1177 guint8 GMSK_MultislotPowerProfile
;
1178 guint8 EightPSK_MultislotProfile
;
1180 /* -------- R6 additions */
1181 guint8 MultipleTBF_Capability
;
1182 guint8 DownlinkAdvancedReceiverPerformance
;
1183 guint8 ExtendedRLC_MAC_ControlMessageSegmentionsCapability
;
1184 guint8 DTM_EnhancementsCapability
;
1186 guint8 Exist_DTM_GPRS_HighMultislotClass
;
1187 guint8 DTM_GPRS_HighMultislotClass
;
1188 DTM_EGPRS_HighMultislotClass_t DTM_EGPRS_HighMultislotClass
;
1189 guint8 PS_HandoverCapability
;
1192 #define ABSOLUTE_MAX_BANDS 2 /* New fields for R4 extend the length of the capabilities message so we can only send 2 */
1194 #define MAX_ACCESS_TECHNOLOGIES_COUNT 16 /* No more than 16 instances */
1197 {/* See TS 24.008 table 10.5.146, GSM R and GSM 450/480 excluded */
1200 AccTech_GSM1800
= 0x3,
1201 AccTech_GSM1900
= 0x4,
1202 AccTech_GSM850
= 0x7,
1203 AccTech_GSMOther
= 0xf
1204 } AccessTechnology_t
;
1209 guint8 CountAccessTechnologies
;
1210 AccessTechnology_t AccessTechnologies
[MAX_ACCESS_TECHNOLOGIES_COUNT
];
1211 } AccessTechnologiesRequest_t
;
1216 AccessTechnology_t Access_Technology_Type
;
1217 guint8 GMSK_Power_class
;
1218 guint8 Eight_PSK_Power_class
;
1219 } Additional_access_technologies_struct_t
;
1223 guint8 Count_additional_access_technologies
;
1224 /* The value 0xf cannot be set for the first ATT, therefore we can only have
1225 ABSOLUTE_MAX_BANDS-1 additional access technologies. */
1226 Additional_access_technologies_struct_t Additional_access_technologies
[ABSOLUTE_MAX_BANDS
-1];
1227 } Additional_access_technologies_t
;
1231 guint8 IndexOfAccTech
; /* Position in AccessTechnology_t */
1237 Additional_access_technologies_t Additional_access_technologies
;
1239 } MS_RA_capability_value_t
;
1243 guint8 Count_MS_RA_capability_value
; /* Recursive */
1244 MS_RA_capability_value_t MS_RA_capability_value
[ABSOLUTE_MAX_BANDS
];
1245 } MS_Radio_Access_capability_t
;
1250 guint8 ExistEDGE_RF_PwrCap1
;
1251 guint8 EDGE_RF_PwrCap1
;
1252 guint8 ExistEDGE_RF_PwrCap2
;
1253 guint8 EDGE_RF_PwrCap2
;
1273 typedef struct /* MS classmark 3 R99 */
1276 Multiband_t Multiband
;
1278 guint8 Exist_R_Support
;
1281 guint8 Exist_MultiSlotCapability
;
1282 guint8 MultiSlotClass
;
1285 guint8 ExtendedMeasurementCapability
;
1287 guint8 Exist_MS_MeasurementCapability
;
1291 guint8 Exist_MS_PositioningMethodCapability
;
1292 guint8 MS_PositioningMethod
;
1294 guint8 Exist_EDGE_MultiSlotCapability
;
1295 guint8 EDGE_MultiSlotClass
;
1297 guint8 Exist_EDGE_Struct
;
1298 guint8 ModulationCapability
;
1299 EDGE_RF_Pwr_t EDGE_RF_PwrCaps
;
1301 guint8 Exist_GSM400_Info
;
1302 guint8 GSM400_Bands
;
1305 guint8 Exist_GSM850_Arc
;
1308 guint8 Exist_PCS1900_Arc
;
1311 guint8 UMTS_FDD_Radio_Access_Technology_Capability
;
1312 guint8 UMTS_384_TDD_Radio_Access_Technology_Capability
;
1313 guint8 CDMA2000_Radio_Access_Technology_Capability
;
1315 guint8 Exist_DTM_GPRS_multislot_class
;
1316 guint8 DTM_GPRS_multislot_class
;
1317 guint8 Single_Slot_DTM
;
1318 DTM_EGPRS_t DTM_EGPRS_Params
;
1320 /* -------- R4 additions */
1321 guint8 Exist_SingleBandSupport
;
1324 guint8 Exist_GSM_700_Associated_Radio_Capability
;
1325 guint8 GSM_700_Associated_Radio_Capability
;
1327 guint8 UMTS_128_TDD_Radio_Access_Technology_Capability
;
1328 guint8 GERAN_Feature_Package_1
;
1330 guint8 Exist_Extended_DTM_multislot_class
;
1331 guint8 Extended_DTM_GPRS_multislot_class
;
1332 guint8 Extended_DTM_EGPRS_multislot_class
;
1334 /* -------- R5 additions */
1335 guint8 Exist_HighMultislotCapability
;
1336 guint8 HighMultislotCapability
;
1338 guint8 Exist_GERAN_lu_ModeCapability
;
1339 guint8 GERAN_lu_ModeCapability
;
1341 guint8 GERAN_FeaturePackage_2
;
1343 guint8 GMSK_MultislotPowerProfile
;
1344 guint8 EightPSK_MultislotProfile
;
1346 /* -------- R6 additions */
1347 guint8 Exist_TGSM_400_Bands
;
1348 guint8 TGSM_400_BandsSupported
;
1349 guint8 TGSM_400_AssociatedRadioCapability
;
1351 guint8 Exist_TGSM_900_AssociatedRadioCapability
;
1352 guint8 TGSM_900_AssociatedRadioCapability
;
1354 guint8 DownlinkAdvancedReceiverPerformance
;
1355 guint8 DTM_EnhancementsCapability
;
1357 guint8 Exist_DTM_GPRS_HighMultislotClass
;
1358 guint8 DTM_GPRS_HighMultislotClass
;
1359 guint8 OffsetRequired
;
1360 DTM_EGPRS_HighMultislotClass_t DTM_EGPRS_HighMultislotClass
;
1361 guint8 RepeatedSACCH_Capability
;
1364 } MS_Class3_Unpacked_t
;
1367 /* < Packet Resource Request message content > */
1374 guint8 MEAN_BEP_GMSK
;
1375 guint8 MEAN_BEP_8PSK
;
1377 } BEP_MeasurementReport_t
;
1383 } InterferenceMeasurementReport_t
;
1387 gboolean Exist_BEP_MEASUREMENTS
;
1388 BEP_MeasurementReport_t BEP_MEASUREMENTS
[8];
1390 gboolean Exist_INTERFERENCE_MEASUREMENTS
;
1391 InterferenceMeasurementReport_t INTERFERENCE_MEASUREMENTS
[8];
1392 } EGPRS_TimeslotLinkQualityMeasurements_t
;
1396 gboolean Exist_MEAN_CV_BEP_GMSK
;
1397 guint8 MEAN_BEP_GMSK
;
1400 gboolean Exist_MEAN_CV_BEP_8PSK
;
1401 guint8 MEAN_BEP_8PSK
;
1403 } EGPRS_BEP_LinkQualityMeasurements_t
;
1407 gboolean Exist_EGPRS_BEP_LinkQualityMeasurements
;
1408 EGPRS_BEP_LinkQualityMeasurements_t EGPRS_BEP_LinkQualityMeasurements
;
1410 gboolean Exist_EGPRS_TimeslotLinkQualityMeasurements
;
1411 EGPRS_TimeslotLinkQualityMeasurements_t EGPRS_TimeslotLinkQualityMeasurements
;
1416 guint8 MS_RAC_AdditionalInformationAvailable
;
1417 guint8 RetransmissionOfPRR
;
1418 } PRR_AdditionsR99_t
;
1425 Global_TFI_t Global_TFI
;
1428 } PacketResourceRequestID_t
;
1432 guint8 MESSAGE_TYPE
;
1437 guint8 Exist_ACCESS_TYPE
;
1440 PacketResourceRequestID_t ID
;
1442 guint8 Exist_MS_Radio_Access_capability
;
1443 MS_Radio_Access_capability_t MS_Radio_Access_capability
;
1445 Channel_Request_Description_t Channel_Request_Description
;
1447 guint8 Exist_CHANGE_MARK
;
1452 guint8 Exist_SIGN_VAR
;
1455 InterferenceMeasurementReport_t Slot
[8];
1457 guint8 Exist_AdditionsR99
;
1458 PRR_AdditionsR99_t AdditionsR99
;
1459 } Packet_Resource_Request_t
;
1461 /* < Packet Mobile TBF Status message content >*/
1464 guint8 MESSAGE_TYPE
;
1469 Global_TFI_t Global_TFI
;
1472 guint8 Exist_STATUS_MESSAGE_TYPE
;
1473 guint8 STATUS_MESSAGE_TYPE
;
1474 } Packet_Mobile_TBF_Status_t
;
1476 /* < Packet PSI Status message content >*/
1479 guint8 PSI_MESSAGE_TYPE
;
1480 guint8 PSIX_CHANGE_MARK
;
1481 guint8 Exist_PSIX_COUNT_and_Instance_Bitmap
;
1486 guint8 Count_PSI_Message
;
1487 PSI_Message_t PSI_Message
[10];
1489 guint8 ADDITIONAL_MSG_TYPE
;
1490 } PSI_Message_List_t
;
1494 guint8 ADDITIONAL_MSG_TYPE
;
1495 } Unknown_PSI_Message_List_t
;
1499 guint8 MESSAGE_TYPE
;
1504 Global_TFI_t Global_TFI
;
1505 guint8 PBCCH_CHANGE_MARK
;
1507 PSI_Message_List_t PSI_Message_List
;
1508 Unknown_PSI_Message_List_t Unknown_PSI_Message_List
;
1509 } Packet_PSI_Status_t
;
1511 /* < Packet SI Status message content > */
1514 guint8 SI_MESSAGE_TYPE
;
1516 guint8 SIX_CHANGE_MARK
;
1519 guint8 Instance_bitmap
[2];
1524 guint8 Count_SI_Message
;
1525 SI_Message_t SI_Message
[10];
1527 guint8 ADDITIONAL_MSG_TYPE
;
1528 } SI_Message_List_t
;
1532 guint8 ADDITIONAL_MSG_TYPE
;
1533 } Unknown_SI_Message_List_t
;
1537 guint8 MESSAGE_TYPE
;
1542 Global_TFI_t Global_TFI
;
1543 guint8 BCCH_CHANGE_MARK
;
1545 SI_Message_List_t SI_Message_List
;
1546 Unknown_SI_Message_List_t Unknown_SI_Message_List
;
1547 } Packet_SI_Status_t
;
1553 guint8 Exist_Bandwith_FDD
;
1554 guint8 BANDWITH_FDD
;
1555 guint16 SCRAMBLING_CODE
;
1556 } FDD_Target_Cell_t
;
1561 guint8 DIVERSITY_TDD
;
1562 guint8 Exist_Bandwith_TDD
;
1563 guint8 BANDWITH_TDD
;
1564 guint16 CELL_PARAMETER
;
1565 guint8 Sync_Case_TSTD
;
1566 } TDD_Target_Cell_t
;
1571 guint8 Exist_Measurement_Bandwidth
;
1572 guint8 Measurement_Bandwidth
;
1573 guint16 Physical_Layer_Cell_Identity
;
1574 } EUTRAN_Target_Cell_t
;
1579 guint8 Exist_PLMN_ID
;
1581 } UTRAN_CSG_Target_Cell_t
;
1586 guint16 Tracking_Area_Code
;
1587 guint8 Exist_PLMN_ID
;
1589 } EUTRAN_CSG_Target_Cell_t
;
1593 guint8 Exist_UTRAN_CSG_Target_Cell
;
1594 UTRAN_CSG_Target_Cell_t UTRAN_CSG_Target_Cell
;
1595 guint8 Exist_EUTRAN_CSG_Target_Cell
;
1596 EUTRAN_CSG_Target_Cell_t EUTRAN_CSG_Target_Cell
;
1597 } PCCF_AdditionsR9_t
;
1601 guint8 Exist_EUTRAN_Target_Cell
;
1602 EUTRAN_Target_Cell_t EUTRAN_Target_Cell
;
1603 guint8 Exist_AdditionsR9
;
1604 PCCF_AdditionsR9_t AdditionsR9
;
1605 } PCCF_AdditionsR8_t
;
1609 guint8 Exist_G_RNTI_extention
;
1610 guint8 G_RNTI_extention
;
1611 guint8 Exist_AdditionsR8
;
1612 PCCF_AdditionsR8_t AdditionsR8
;
1613 } PCCF_AdditionsR5_t
;
1617 guint8 Exist_FDD_Description
;
1618 FDD_Target_Cell_t FDD_Target_Cell
;
1619 guint8 Exist_TDD_Description
;
1620 TDD_Target_Cell_t TDD_Target_Cell
;
1621 guint8 Exist_AdditionsR5
;
1622 PCCF_AdditionsR5_t AdditionsR5
;
1623 } PCCF_AdditionsR99_t
;
1625 /* < Packet Cell Change Failure message content > */
1628 guint8 MESSAGE_TYPE
;
1637 gboolean Exist_AdditionsR99
;
1638 PCCF_AdditionsR99_t AdditionsR99
;
1639 } Packet_Cell_Change_Failure_t
;
1641 /* < Packet Downlink Ack/Nack message content > */
1646 } PD_AckNack_AdditionsR99_t
;
1650 guint8 MESSAGE_TYPE
;
1655 guint8 DOWNLINK_TFI
;
1656 Ack_Nack_Description_t Ack_Nack_Description
;
1658 guint8 Exist_Channel_Request_Description
;
1659 Channel_Request_Description_t Channel_Request_Description
;
1661 Channel_Quality_Report_t Channel_Quality_Report
;
1663 gboolean Exist_AdditionsR99
;
1664 PD_AckNack_AdditionsR99_t AdditionsR99
;
1665 } Packet_Downlink_Ack_Nack_t
;
1667 /* < EGPRS Packet Downlink Ack/Nack message content > */
1670 EGPRS_BEP_LinkQualityMeasurements_t EGPRS_BEP_LinkQualityMeasurements
;
1672 EGPRS_TimeslotLinkQualityMeasurements_t EGPRS_TimeslotLinkQualityMeasurements
;
1673 } EGPRS_ChannelQualityReport_t
;
1677 guint8 MESSAGE_TYPE
;
1682 guint8 DOWNLINK_TFI
;
1683 guint8 MS_OUT_OF_MEMORY
;
1685 gboolean Exist_EGPRS_ChannelQualityReport
;
1686 EGPRS_ChannelQualityReport_t EGPRS_ChannelQualityReport
;
1688 gboolean Exist_ChannelRequestDescription
;
1689 Channel_Request_Description_t ChannelRequestDescription
;
1694 gboolean Exist_ExtensionBits
;
1695 Extension_Bits_t ExtensionBits
;
1697 EGPRS_AckNack_t EGPRS_AckNack
;
1698 } EGPRS_PD_AckNack_t
;
1700 /* < Packet Uplink Ack/Nack message content 04.60 sec.11.2.28 > */
1704 guint8 Exist_CONTENTION_RESOLUTION_TLLI
;
1705 guint32 CONTENTION_RESOLUTION_TLLI
;
1707 guint8 Exist_Packet_Timing_Advance
;
1708 Packet_Timing_Advance_t Packet_Timing_Advance
;
1710 guint8 Exist_Extension_Bits
;
1711 Extension_Bits_t Extension_Bits
;
1713 guint8 Exist_Power_Control_Parameters
;
1714 Power_Control_Parameters_t Power_Control_Parameters
;
1715 } Common_Uplink_Ack_Nack_Data_t
;
1719 gboolean Exist_PacketExtendedTimingAdvance
;
1720 guint8 PacketExtendedTimingAdvance
;
1722 } PU_AckNack_GPRS_AdditionsR99_t
;
1726 guint8 CHANNEL_CODING_COMMAND
;
1727 Ack_Nack_Description_t Ack_Nack_Description
;
1732 guint8 FixedAllocationDummy
;
1736 gboolean Exist_AdditionsR99
;
1737 PU_AckNack_GPRS_AdditionsR99_t AdditionsR99
;
1740 Common_Uplink_Ack_Nack_Data_t Common_Uplink_Ack_Nack_Data
;
1741 } PU_AckNack_GPRS_t
;
1745 guint8 EGPRS_ChannelCodingCommand
;
1747 guint8 PRE_EMPTIVE_TRANSMISSION
;
1748 guint8 PRR_RETRANSMISSION_REQUEST
;
1749 guint8 ARAC_RETRANSMISSION_REQUEST
;
1753 gboolean Exist_Packet_Extended_Timing_Advance
;
1754 guint8 Packet_Extended_Timing_Advance
;
1756 EGPRS_AckNack_t EGPRS_AckNack
;
1759 Common_Uplink_Ack_Nack_Data_t Common_Uplink_Ack_Nack_Data
;
1760 } PU_AckNack_EGPRS_00_t
;
1767 PU_AckNack_EGPRS_00_t PU_AckNack_EGPRS_00
;
1768 guint8 extension_01
;
1769 guint8 extension_10
;
1770 guint8 extension_11
;
1772 } PU_AckNack_EGPRS_t
;
1784 guint8 MESSAGE_TYPE
;
1791 PU_AckNack_GPRS_t PU_AckNack_GPRS_Struct
;
1792 PU_AckNack_EGPRS_t PU_AckNack_EGPRS_Struct
;
1794 } Packet_Uplink_Ack_Nack_t
;
1796 /* < Packet Uplink Assignment message content > */
1799 guint8 CHANGE_MARK_1
;
1800 guint8 Exist_CHANGE_MARK_2
;
1801 guint8 CHANGE_MARK_2
;
1809 guint8 Exist_CHANGE_MARK
;
1810 CHANGE_MARK_t CHANGE_MARK
;
1811 } Indirect_encoding_t
;
1816 GPRS_Mobile_Allocation_t GPRS_Mobile_Allocation
;
1817 } Direct_encoding_1_t
;
1823 guint8 Length_of_MA_Frequency_List
;
1824 guint8 MA_Frequency_List
[15+3];
1825 } Direct_encoding_2_t
;
1834 Indirect_encoding_t Indirect_encoding
;
1835 Direct_encoding_1_t Direct_encoding_1
;
1836 Direct_encoding_2_t Direct_encoding_2
;
1838 } Frequency_Parameters_t
;
1844 } Timeslot_Allocation_t
;
1856 } Timeslot_Allocation_Power_Ctrl_Param_t
;
1860 guint8 Extended_Dynamic_Allocation
;
1866 guint8 USF_GRANULARITY
;
1868 guint8 Exist_UPLINK_TFI_ASSIGNMENT
;
1869 guint8 UPLINK_TFI_ASSIGNMENT
;
1871 guint8 Exist_RLC_DATA_BLOCKS_GRANTED
;
1872 guint8 RLC_DATA_BLOCKS_GRANTED
;
1874 guint8 Exist_TBF_Starting_Time
;
1875 Starting_Frame_Number_t TBF_Starting_Time
;
1880 Timeslot_Allocation_t Timeslot_Allocation
[8];
1881 Timeslot_Allocation_Power_Ctrl_Param_t Timeslot_Allocation_Power_Ctrl_Param
;
1883 } Dynamic_Allocation_t
;
1887 guint8 Extended_Dynamic_Allocation
;
1893 guint8 USF_GRANULARITY
;
1895 guint8 Exist_UPLINK_TFI_ASSIGNMENT
;
1896 guint8 UPLINK_TFI_ASSIGNMENT
;
1898 guint8 Exist_RLC_DATA_BLOCKS_GRANTED
;
1899 guint8 RLC_DATA_BLOCKS_GRANTED
;
1904 Timeslot_Allocation_t Timeslot_Allocation
[8];
1905 Timeslot_Allocation_Power_Ctrl_Param_t Timeslot_Allocation_Power_Ctrl_Param
;
1907 } DTM_Dynamic_Allocation_t
;
1911 guint8 TIMESLOT_NUMBER
;
1913 guint8 Exist_ALPHA_and_GAMMA_TN
;
1919 guint8 BTS_PWR_CTRL_MODE
;
1922 Starting_Frame_Number_t TBF_Starting_Time
;
1923 } Single_Block_Allocation_t
;
1927 guint8 TIMESLOT_NUMBER
;
1929 guint8 Exist_ALPHA_and_GAMMA_TN
;
1935 guint8 BTS_PWR_CTRL_MODE
;
1938 } DTM_Single_Block_Allocation_t
;
1945 Global_TFI_t Global_TFI
;
1948 Packet_Request_Reference_t Packet_Request_Reference
;
1954 gboolean Exist_Packet_Extended_Timing_Advance
;
1955 guint8 Packet_Extended_Timing_Advance
;
1956 } PUA_GPRS_AdditionsR99_t
;
1960 guint8 CHANNEL_CODING_COMMAND
;
1961 guint8 TLLI_BLOCK_CHANNEL_CODING
;
1962 Packet_Timing_Advance_t Packet_Timing_Advance
;
1964 guint8 Exist_Frequency_Parameters
;
1965 Frequency_Parameters_t Frequency_Parameters
;
1971 Dynamic_Allocation_t Dynamic_Allocation
;
1972 Single_Block_Allocation_t Single_Block_Allocation
;
1973 guint8 FixedAllocationDummy
;
1976 gboolean Exist_AdditionsR99
;
1977 PUA_GPRS_AdditionsR99_t AdditionsR99
;
1982 guint8 BitmapLength
;
1983 guint8 ReducedMA_Bitmap
[127 / 8 + 1];
1985 gboolean Exist_MAIO_2
;
1987 } COMPACT_ReducedMA_t
;
1991 guint8 TIMESLOT_NUMBER
;
1993 gboolean Exist_ALPHA_GAMMA_TN
;
1997 gboolean Exist_P0_BTS_PWR_CTRL_PR_MODE
;
1999 guint8 BTS_PWR_CTRL_MODE
;
2002 Starting_Frame_Number_t TBF_Starting_Time
;
2003 guint8 NUMBER_OF_RADIO_BLOCKS_ALLOCATED
;
2004 } MultiBlock_Allocation_t
;
2008 gboolean Exist_CONTENTION_RESOLUTION_TLLI
;
2009 guint32 CONTENTION_RESOLUTION_TLLI
;
2011 gboolean Exist_COMPACT_ReducedMA
;
2012 COMPACT_ReducedMA_t COMPACT_ReducedMA
;
2014 guint8 EGPRS_CHANNEL_CODING_COMMAND
;
2016 guint8 EGPRS_WindowSize
;
2018 guint8 NrOfAccessTechnologies
; /* will hold the number of list elements */
2019 guint8 AccessTechnologyType
[MAX_ACCESS_TECHOLOGY_TYPES
]; /* for max size of array see 24.008/Table 10.5.146 */
2021 guint8 ARAC_RETRANSMISSION_REQUEST
;
2022 guint8 TLLI_BLOCK_CHANNEL_CODING
;
2024 gboolean Exist_BEP_PERIOD2
;
2027 Packet_Timing_Advance_t PacketTimingAdvance
;
2029 gboolean Exist_Packet_Extended_Timing_Advance
;
2030 guint8 Packet_Extended_Timing_Advance
;
2032 gboolean Exist_Frequency_Parameters
;
2033 Frequency_Parameters_t Frequency_Parameters
;
2039 Dynamic_Allocation_t Dynamic_Allocation
;
2040 MultiBlock_Allocation_t MultiBlock_Allocation
;
2041 guint8 FixedAllocationDummy
;/* Fixed Allocation is not used */
2050 PUA_EGPRS_00_t PUA_EGPRS_00
;
2051 guint8 PUA_EGPRS_01
;
2052 guint8 PUA_EGPRS_10
;
2053 guint8 PUA_EGPRS_11
;
2067 guint8 MESSAGE_TYPE
;
2070 guint8 Exist_PERSISTENCE_LEVEL
;
2071 guint8 PERSISTENCE_LEVEL
[4];
2073 PacketUplinkID_t ID
;
2078 PUA_GPRS_t PUA_GPRS_Struct
;
2079 PUA_EGPRS_t PUA_EGPRS_Struct
;
2081 } Packet_Uplink_Assignment_t
;
2084 /* < DTM Packet Uplink Assignment message content > */
2087 guint8 CHANNEL_CODING_COMMAND
;
2088 guint8 TLLI_BLOCK_CHANNEL_CODING
;
2089 Packet_Timing_Advance_t Packet_Timing_Advance
;
2095 DTM_Dynamic_Allocation_t DTM_Dynamic_Allocation
;
2096 DTM_Single_Block_Allocation_t DTM_Single_Block_Allocation
;
2098 gboolean Exist_EGPRS_Parameters
;
2099 guint8 EGPRS_CHANNEL_CODING_COMMAND
;
2101 guint8 EGPRS_WindowSize
;
2102 gboolean Exist_Packet_Extended_Timing_Advance
;
2103 guint8 Packet_Extended_Timing_Advance
;
2104 } DTM_Packet_Uplink_Assignment_t
;
2108 DTM_Packet_Uplink_Assignment_t DTM_Packet_Uplink_Assignment
;
2111 /* < DTM Packet Channel Request message content > */
2114 guint8 DTM_Pkt_Est_Cause
;
2115 Channel_Request_Description_t Channel_Request_Description
;
2118 } DTM_Channel_Request_Description_t
;
2120 /* < Packet Downlink Assignment message content > */
2123 Starting_Frame_Number_t Measurement_Starting_Time
;
2124 guint8 MEASUREMENT_INTERVAL
;
2125 guint8 MEASUREMENT_BITMAP
;
2126 } Measurement_Mapping_struct_t
;
2133 Global_TFI_t Global_TFI
;
2136 } PacketDownlinkID_t
;
2140 gboolean Exist_EGPRS_Params
; /* if Exist_EGPRS_Params == FALSE then none of the following 4 vars exist */
2141 guint8 EGPRS_WindowSize
;
2142 guint8 LINK_QUALITY_MEASUREMENT_MODE
;
2143 gboolean Exist_BEP_PERIOD2
;
2146 gboolean Exist_Packet_Extended_Timing_Advance
;
2147 guint8 Packet_Extended_Timing_Advance
;
2149 gboolean Exist_COMPACT_ReducedMA
;
2150 COMPACT_ReducedMA_t COMPACT_ReducedMA
;
2151 } PDA_AdditionsR99_t
;
2155 guint8 MESSAGE_TYPE
;
2158 gboolean Exist_PERSISTENCE_LEVEL
;
2159 guint8 PERSISTENCE_LEVEL
[4];
2161 PacketDownlinkID_t ID
;
2166 guint8 TIMESLOT_ALLOCATION
;
2167 Packet_Timing_Advance_t Packet_Timing_Advance
;
2169 gboolean Exist_P0_and_BTS_PWR_CTRL_MODE
;
2171 guint8 BTS_PWR_CTRL_MODE
;
2174 gboolean Exist_Frequency_Parameters
;
2175 Frequency_Parameters_t Frequency_Parameters
;
2177 gboolean Exist_DOWNLINK_TFI_ASSIGNMENT
;
2178 guint8 DOWNLINK_TFI_ASSIGNMENT
;
2180 gboolean Exist_Power_Control_Parameters
;
2181 Power_Control_Parameters_t Power_Control_Parameters
;
2183 gboolean Exist_TBF_Starting_Time
;
2184 Starting_Frame_Number_t TBF_Starting_Time
;
2186 guint8 Exist_Measurement_Mapping
;
2187 Measurement_Mapping_struct_t Measurement_Mapping
;
2189 gboolean Exist_AdditionsR99
;
2190 PDA_AdditionsR99_t AdditionsR99
;
2191 } Packet_Downlink_Assignment_t
;
2193 /* < DTM Packet Downlink Assignment message content > */
2198 guint8 TIMESLOT_ALLOCATION
;
2199 Packet_Timing_Advance_t Packet_Timing_Advance
;
2201 guint8 Exist_P0_and_BTS_PWR_CTRL_MODE
;
2203 guint8 BTS_PWR_CTRL_MODE
;
2206 guint8 Exist_Power_Control_Parameters
;
2207 Power_Control_Parameters_t Power_Control_Parameters
;
2209 guint8 Exist_DOWNLINK_TFI_ASSIGNMENT
;
2210 guint8 DOWNLINK_TFI_ASSIGNMENT
;
2212 guint8 Exist_Measurement_Mapping
;
2213 Measurement_Mapping_struct_t Measurement_Mapping
;
2214 gboolean EGPRS_Mode
;
2215 guint8 EGPRS_WindowSize
;
2216 guint8 LINK_QUALITY_MEASUREMENT_MODE
;
2217 gboolean Exist_Packet_Extended_Timing_Advance
;
2218 guint8 Packet_Extended_Timing_Advance
;
2219 } DTM_Packet_Downlink_Assignment_t
;
2223 DTM_Packet_Downlink_Assignment_t DTM_Packet_Downlink_Assignment
;
2228 GPRS_Cell_Options_t GPRS_Cell_Options
;
2229 GPRS_Power_Control_Parameters_t GPRS_Power_Control_Parameters
;
2230 } DTM_GPRS_Broadcast_Information_t
;
2234 DTM_GPRS_Broadcast_Information_t DTM_GPRS_Broadcast_Information
;
2237 /* < Packet Paging Request message content > */
2244 struct MobileId Mobile_Identity
;
2246 } Page_request_for_TBF_establishment_t
;
2254 struct MobileId Mobile_Identity
;
2257 guint8 CHANNEL_NEEDED
;
2259 guint8 Exist_eMLPP_PRIORITY
;
2260 guint8 eMLPP_PRIORITY
;
2261 } Page_request_for_RR_conn_t
;
2268 Page_request_for_TBF_establishment_t Page_req_TBF
;
2269 Page_request_for_RR_conn_t Page_req_RR
;
2271 } Repeated_Page_info_t
;
2275 guint8 MESSAGE_TYPE
;
2278 guint8 Exist_PERSISTENCE_LEVEL
;
2279 guint8 PERSISTENCE_LEVEL
[4];
2284 guint8 Count_Repeated_Page_info
;
2285 Repeated_Page_info_t Repeated_Page_info
[5];
2286 } Packet_Paging_Request_t
;
2290 guint8 MESSAGE_TYPE
;
2293 guint8 TIMESLOTS_AVAILABLE
;
2294 } Packet_PDCH_Release_t
;
2296 /* < Packet Power Control/Timing Advance message content > */
2302 Global_TFI_t Global_TFI
;
2304 Packet_Request_Reference_t Packet_Request_Reference
;
2306 } PacketPowerControlTimingAdvanceID_t
;
2310 Global_Packet_Timing_Advance_t Global_Packet_Timing_Advance
;
2311 Power_Control_Parameters_t Power_Control_Parameters
;
2312 } GlobalTimingAndPower_t
;
2319 Global_Packet_Timing_Advance_t Global_Packet_Timing_Advance
;
2320 Power_Control_Parameters_t Power_Control_Parameters
;
2322 } GlobalTimingOrPower_t
;
2326 guint8 MESSAGE_TYPE
;
2329 PacketPowerControlTimingAdvanceID_t ID
;
2331 /* -- Message escape */
2332 guint8 Exist_Global_Power_Control_Parameters
;
2333 Global_Power_Control_Parameters_t Global_Power_Control_Parameters
;
2338 GlobalTimingAndPower_t GlobalTimingAndPower
;
2339 GlobalTimingOrPower_t GlobalTimingOrPower
;
2341 } Packet_Power_Control_Timing_Advance_t
;
2343 /* < Packet Queueing Notification message content > */
2346 guint8 MESSAGE_TYPE
;
2350 Packet_Request_Reference_t Packet_Request_Reference
;
2352 } Packet_Queueing_Notification_t
;
2354 /* < Packet Timeslot Reconfigure message content 04.60 sec. 11.2.31> */
2356 typedef Dynamic_Allocation_t TRDynamic_Allocation_t
;
2360 Global_Packet_Timing_Advance_t Global_Packet_Timing_Advance
;
2362 guint8 DOWNLINK_RLC_MODE
;
2365 guint8 Exist_DOWNLINK_TFI_ASSIGNMENT
;
2366 guint8 DOWNLINK_TFI_ASSIGNMENT
;
2368 guint8 Exist_UPLINK_TFI_ASSIGNMENT
;
2369 guint8 UPLINK_TFI_ASSIGNMENT
;
2371 guint8 DOWNLINK_TIMESLOT_ALLOCATION
;
2373 guint8 Exist_Frequency_Parameters
;
2374 Frequency_Parameters_t Frequency_Parameters
;
2375 } Common_Timeslot_Reconfigure_t
;
2379 gboolean Exist_Packet_Extended_Timing_Advance
;
2380 guint8 Packet_Extended_Timing_Advance
;
2381 } PTR_GPRS_AdditionsR99_t
;
2385 guint8 CHANNEL_CODING_COMMAND
;
2387 Common_Timeslot_Reconfigure_t Common_Timeslot_Reconfigure_Data
;
2392 TRDynamic_Allocation_t Dynamic_Allocation
;
2393 guint8 Fixed_AllocationDummy
;
2396 gboolean Exist_AdditionsR99
;
2397 PTR_GPRS_AdditionsR99_t AdditionsR99
;
2402 gboolean Exist_COMPACT_ReducedMA
;
2403 COMPACT_ReducedMA_t COMPACT_ReducedMA
;
2405 guint8 EGPRS_ChannelCodingCommand
;
2408 gboolean Exist_DOWNLINK_EGPRS_WindowSize
;
2409 guint8 DOWNLINK_EGPRS_WindowSize
;
2411 gboolean Exist_UPLINK_EGPRS_WindowSize
;
2412 guint8 UPLINK_EGPRS_WindowSize
;
2414 guint8 LINK_QUALITY_MEASUREMENT_MODE
;
2416 gboolean Exist_Packet_Extended_Timing_Advance
;
2417 guint8 Packet_Extended_Timing_Advance
;
2419 Common_Timeslot_Reconfigure_t Common_Timeslot_Reconfigure_Data
;
2424 TRDynamic_Allocation_t Dynamic_Allocation
;
2425 guint8 FixedAllocationDummy
;
2434 PTR_EGPRS_00_t PTR_EGPRS_00
;
2435 guint8 extension_01
;
2436 guint8 extension_10
;
2437 guint8 extension_11
;
2451 guint8 MESSAGE_TYPE
;
2454 Global_TFI_t Global_TFI
;
2459 PTR_GPRS_t PTR_GPRS_Struct
;
2460 PTR_EGPRS_t PTR_EGPRS_Struct
;
2462 } Packet_Timeslot_Reconfigure_t
;
2465 /* < PSI1 message content > */
2468 guint8 ACC_CONTR_CLASS
[2];
2469 guint8 MAX_RETRANS
[4];
2473 guint8 Exist_PERSISTENCE_LEVEL
;
2474 guint8 PERSISTENCE_LEVEL
[4];
2480 guint8 BS_PBCCH_BLKS
;
2481 guint8 BS_PAG_BLKS_RES
;
2482 guint8 BS_PRACH_BLKS
;
2483 } PCCCH_Organization_t
;
2487 guint8 LB_MS_TXPWR_MAX_CCH
;
2488 } PSI1_AdditionsR6_t
;
2494 guint8 BandIndicator
;
2495 gboolean Exist_AdditionsR6
;
2496 PSI1_AdditionsR6_t AdditionsR6
;
2497 } PSI1_AdditionsR99_t
;
2501 guint8 MESSAGE_TYPE
;
2504 guint8 PBCCH_CHANGE_MARK
;
2505 guint8 PSI_CHANGE_FIELD
;
2506 guint8 PSI1_REPEAT_PERIOD
;
2507 guint8 PSI_COUNT_LR
;
2509 guint8 Exist_PSI_COUNT_HR
;
2510 guint8 PSI_COUNT_HR
;
2512 guint8 MEASUREMENT_ORDER
;
2513 GPRS_Cell_Options_t GPRS_Cell_Options
;
2514 PRACH_Control_t PRACH_Control
;
2515 PCCCH_Organization_t PCCCH_Organization
;
2516 Global_Power_Control_Parameters_t Global_Power_Control_Parameters
;
2517 guint8 PSI_STATUS_IND
;
2519 gboolean Exist_AdditionsR99
;
2520 PSI1_AdditionsR99_t AdditionsR99
;
2523 /* < PSI2 message content > */
2529 guint8 Contents
[15 + 3];/* octet (val(Length of RFL contents) + 3) */
2530 } Reference_Frequency_t
;
2535 guint8 RFL_Number
[MAX_RFLS
];
2536 } Cell_Allocation_t
;
2541 GPRS_Mobile_Allocation_t Mobile_Allocation
;
2547 guint8 TIMESLOT_ALLOCATION
;
2548 } Non_Hopping_PCCCH_Carriers_t
;
2552 guint8 Count_Carriers
;
2553 Non_Hopping_PCCCH_Carriers_t Carriers
[7];
2554 } NonHoppingPCCCH_t
;
2559 guint8 TIMESLOT_ALLOCATION
;
2560 } Hopping_PCCCH_Carriers_t
;
2566 guint8 Count_Carriers
;
2567 Hopping_PCCCH_Carriers_t Carriers
[10];/* MAX_PCCCH but 10 is theoretical max. */
2577 NonHoppingPCCCH_t NonHopping
;
2578 HoppingPCCCH_t Hopping
;
2580 } PCCCH_Description_t
;
2586 CellId_t Cell_Identity
;
2587 } Cell_Identification_t
;
2599 guint8 RADIO_LINK_TIMEOUT
;
2600 guint8 BS_AG_BLKS_RES
;
2606 guint8 MS_TXPWR_MAX_CCCH
;
2608 guint8 Exist_Extension_Bits
;
2609 Extension_Bits_t Extension_Bits
;
2610 } Non_GPRS_Cell_Options_t
;
2614 guint8 MESSAGE_TYPE
;
2620 guint8 Exist_Cell_Identification
;
2621 Cell_Identification_t Cell_Identification
;
2623 guint8 Exist_Non_GPRS_Cell_Options
;
2624 Non_GPRS_Cell_Options_t Non_GPRS_Cell_Options
;
2626 guint8 Count_Reference_Frequency
;
2627 Reference_Frequency_t Reference_Frequency
[MAX_RFLS
];
2629 Cell_Allocation_t Cell_Allocation
;
2631 guint8 Count_GPRS_MA
;
2632 PSI2_MA_t GPRS_MA
[MAX_MA_LISTS_IN_PSI2
];
2634 guint8 Count_PCCCH_Description
;
2635 PCCCH_Description_t PCCCH_Description
[7];/* MAX_PCCCH but it is impossible that more than 7 can be decoded */
2638 /* < PSI3 message content > */
2641 guint8 PRIORITY_CLASS
;
2647 guint8 CELL_BAR_ACCESS_2
;
2649 guint8 GPRS_RXLEV_ACCESS_MIN
;
2650 guint8 GPRS_MS_TXPWR_MAX_CCH
;
2654 guint8 MULTIBAND_REPORTING
;
2655 } Serving_Cell_params_t
;
2659 guint8 GPRS_CELL_RESELECT_HYSTERESIS
;
2662 guint8 RANDOM_ACCESS_RETRY
;
2664 guint8 Exist_T_RESEL
;
2667 guint8 Exist_RA_RESELECT_HYSTERESIS
;
2668 guint8 RA_RESELECT_HYSTERESIS
;
2673 guint8 PBCCH_LOCATION
;
2674 guint8 PSI1_REPEAT_PERIOD
;
2675 } Location_Repeat_t
;
2682 guint8 SI13_LOCATION
;
2683 Location_Repeat_t lr
;
2685 } SI13_PBCCH_Location_t
;
2690 guint8 CELL_BAR_ACCESS_2
;
2692 guint8 SAME_RA_AS_SERVING_CELL
;
2694 guint8 Exist_RXLEV_and_TXPWR
;
2695 guint8 GPRS_RXLEV_ACCESS_MIN
;
2696 guint8 GPRS_MS_TXPWR_MAX_CCH
;
2698 guint8 Exist_OFFSET_and_TIME
;
2699 guint8 GPRS_TEMPORARY_OFFSET
;
2700 guint8 GPRS_PENALTY_TIME
;
2702 guint8 Exist_GPRS_RESELECT_OFFSET
;
2703 guint8 GPRS_RESELECT_OFFSET
;
2708 guint8 Exist_SI13_PBCCH_Location
;
2709 SI13_PBCCH_Location_t SI13_PBCCH_Location
;
2712 /* Neigbour cell list as used in PSI3 and PSI3bis */
2715 guint8 FREQ_DIFF_LENGTH
;
2716 guint8 FREQUENCY_DIFF
;
2718 Cell_Selection_t Cell_SelectionParams
;
2719 } Cell_Selection_Params_With_FreqDiff_t
;
2723 guint16 START_FREQUENCY
;
2724 Cell_Selection_t Cell_Selection
;
2725 guint8 NR_OF_REMAINING_CELLS
;
2726 guint8 FREQ_DIFF_LENGTH
;
2728 Cell_Selection_Params_With_FreqDiff_t Cell_Selection_Params_With_FreqDiff
[16];
2729 } NeighbourCellParameters_t
;
2734 NeighbourCellParameters_t Parameters
[32];
2735 } NeighbourCellList_t
;
2737 /* < PSI3 message content > */
2742 guint8 CELL_BAR_ACCESS_2
;
2744 guint8 SAME_RA_AS_SERVING_CELL
;
2745 guint8 Exist_GPRS_RXLEV_ACCESS_MIN
;
2746 guint8 GPRS_RXLEV_ACCESS_MIN
;
2747 guint8 GPRS_MS_TXPWR_MAX_CCH
;
2748 guint8 Exist_GPRS_TEMPORARY_OFFSET
;
2749 guint8 GPRS_TEMPORARY_OFFSET
;
2750 guint8 GPRS_PENALTY_TIME
;
2751 guint8 Exist_GPRS_RESELECT_OFFSET
;
2752 guint8 GPRS_RESELECT_OFFSET
;
2753 guint8 Exist_Hcs_Parm
;
2755 guint8 Exist_TIME_GROUP
;
2757 guint8 Exist_GUAR_CONSTANT_PWR_BLKS
;
2758 guint8 GUAR_CONSTANT_PWR_BLKS
;
2759 } COMPACT_Cell_Sel_t
;
2763 guint8 FREQ_DIFF_LENGTH
;
2764 guint16 FREQUENCY_DIFF
;
2765 COMPACT_Cell_Sel_t COMPACT_Cell_Sel_Remain_Cells
;
2766 } COMPACT_Neighbour_Cell_Param_Remaining_t
;
2770 guint16 START_FREQUENCY
;
2771 COMPACT_Cell_Sel_t COMPACT_Cell_Sel
;
2772 guint8 NR_OF_REMAINING_CELLS
;
2773 guint8 FREQ_DIFF_LENGTH
;
2774 COMPACT_Neighbour_Cell_Param_Remaining_t COMPACT_Neighbour_Cell_Param_Remaining
[16];
2775 } COMPACT_Neighbour_Cell_Param_t
;
2779 Cell_Identification_t Cell_Identification
;
2780 guint8 COMPACT_Neighbour_Cell_Param_Count
;
2781 COMPACT_Neighbour_Cell_Param_t COMPACT_Neighbour_Cell_Param
[8];
2786 guint8 Exist_CCN_Support_Desc
;
2787 CCN_Support_Description_t CCN_Support_Desc
;
2788 } PSI3_AdditionR4_t
;
2792 guint8 Exist_COMPACT_Info
;
2793 COMPACT_Info_t COMPACT_Info
;
2794 guint8 Exist_AdditionR4
;
2795 PSI3_AdditionR4_t AdditionR4
;
2796 } PSI3_AdditionR99_t
;
2800 LSA_ID_Info_t Scell_LSA_ID_Info
;
2801 guint8 Exist_LSA_Parameters
;
2802 LSA_Parameters_t LSA_Parameters
;
2803 guint8 Exist_AdditionR99
;
2804 PSI3_AdditionR99_t AdditionR99
;
2805 } PSI3_AdditionR98_t
;
2809 guint8 MESSAGE_TYPE
;
2814 Serving_Cell_params_t Serving_Cell_params
;
2816 Gen_Cell_Sel_t General_Cell_Selection
;
2817 NeighbourCellList_t NeighbourCellList
;
2819 guint8 Exist_AdditionR98
;
2820 PSI3_AdditionR98_t AdditionR98
;
2823 /* < PSI3_BIS message content > */
2826 guint8 MESSAGE_TYPE
;
2832 NeighbourCellList_t NeighbourCellList
;
2835 /* < PSI4 message content > */
2851 guint8 TIMESLOT_ALLOCATION
;
2856 /* Channel_Group_t Channel_Group
2858 * the first one is unpacked in the index
2860 guint8 Count_Channel_Group
;
2861 Channel_Group_t Channel_Group
[8];
2866 guint8 MESSAGE_TYPE
;
2873 Channel_List_t Channel_List
;
2878 /* < PSI5 message content > */
2881 guint8 existRepParamsFDD
;
2883 guint8 MultiratReportingFDD
;
2885 guint8 existReportingParamsFDD
;
2886 guint8 ReportingOffsetFDD
;
2887 guint8 ReportingThresholdFDD
;
2889 guint8 existMultiratReportingTDD
;
2890 guint8 MultiratReportingTDD
;
2892 guint8 existOffsetThresholdTDD
;
2893 guint8 ReportingOffsetTDD
;
2894 guint8 ReportingThresholdTDD
;
2895 } GPRSMeasurementParams3G_PSI5_t
;
2900 guint8 REPORTING_RATE
;
2901 guint8 INVALID_BSIC_REPORTING
;
2902 guint8 Exist_NCC_PERMITTED
;
2903 guint8 NCC_PERMITTED
;
2905 gboolean Exist_GPRSMeasurementParams
;
2906 MeasurementParams_t GPRSMeasurementParams
;
2907 gboolean Exist_GPRSMeasurementParams3G
;
2908 GPRSMeasurementParams3G_PSI5_t GPRSMeasurementParams3G
;
2909 } ENH_Reporting_Parameters_t
;
2913 guint8 Exist_OffsetThreshold_700
;
2914 OffsetThreshold_t OffsetThreshold_700
;
2915 guint8 Exist_OffsetThreshold_810
;
2916 OffsetThreshold_t OffsetThreshold_810
;
2921 guint8 Exist_GPRS_AdditionalMeasurementParams3G
;
2922 GPRS_AdditionalMeasurementParams3G_t GPRS_AdditionalMeasurementParams3G
;
2923 guint8 Exist_AdditionsR7
;
2924 PSI5_AdditionsR7 AdditionsR7
;
2929 guint8 Exist_ENH_Reporting_Param
;
2930 ENH_Reporting_Parameters_t ENH_Reporting_Param
;
2931 guint8 Exist_AdditionsR5
;
2932 PSI5_AdditionsR5 AdditionisR5
;
2933 } PSI5_AdditionsR99
;
2937 guint8 MESSAGE_TYPE
;
2944 guint8 Eixst_NC_Meas_Param
;
2945 NC_Measurement_Parameters_t NC_Meas_Param
;
2946 guint8 Exist_AdditionsR99
;
2947 PSI5_AdditionsR99 AdditionsR99
;
2953 /* < PSI13 message content >
2954 * Combined with SI13
2958 guint8 Exist_LB_MS_TXPWR_MAX_CCH
;
2959 guint8 LB_MS_TXPWR_MAX_CCH
;
2960 guint8 SI2n_SUPPORT
;
2963 typedef PSI13_AdditionsR6 SI13_AdditionsR6
;
2967 guint8 SI_STATUS_IND
;
2968 guint8 Exist_AdditionsR6
;
2969 PSI13_AdditionsR6 AdditionsR6
;
2972 typedef PSI13_AdditionsR4 SI13_AdditionsR4
;
2977 gboolean Exist_AdditionsR4
;
2978 PSI13_AdditionsR4 AdditionsR4
;
2981 typedef PSI13_AdditionR99 SI13_AdditionR99
;
2986 guint8 MESSAGE_TYPE
;
2989 guint8 BCCH_CHANGE_MARK
;
2990 guint8 SI_CHANGE_FIELD
;
2993 guint8 SI13_CHANGE_MARK
;
2994 GPRS_Mobile_Allocation_t GPRS_Mobile_Allocation
;
2999 PBCCH_Not_present_t PBCCH_Not_present
;
3000 PBCCH_present_t PBCCH_present
;
3003 gboolean Exist_AdditionsR99
;
3004 PSI13_AdditionR99 AdditionsR99
;
3007 /* SI_13_t is combined in the PSI13 structure */
3008 typedef PSI13_t SI_13_t
;
3010 /* < Packet PRACH Parameters message content > */
3013 guint8 MESSAGE_TYPE
;
3017 PRACH_Control_t PRACH_Control
;
3018 } Packet_PRACH_Parameters_t
;
3020 /* < Packet Access Reject message content > */
3027 Packet_Request_Reference_t Packet_Request_Reference
;
3028 Global_TFI_t Global_TFI
;
3037 guint8 WAIT_INDICATION
;
3038 guint8 WAIT_INDICATION_SIZE
;
3043 guint8 MESSAGE_TYPE
;
3047 guint8 Count_Reject
;
3049 } Packet_Access_Reject_t
;
3051 /* < Packet Cell Change Order message content > */
3054 guint8 CELL_BAR_ACCESS_2
;
3056 guint8 SAME_RA_AS_SERVING_CELL
;
3058 guint8 Exist_RXLEV_and_TXPWR
;
3059 guint8 GPRS_RXLEV_ACCESS_MIN
;
3060 guint8 GPRS_MS_TXPWR_MAX_CCH
;
3062 guint8 Exist_OFFSET_and_TIME
;
3063 guint8 GPRS_TEMPORARY_OFFSET
;
3064 guint8 GPRS_PENALTY_TIME
;
3066 guint8 Exist_GPRS_RESELECT_OFFSET
;
3067 guint8 GPRS_RESELECT_OFFSET
;
3072 guint8 Exist_SI13_PBCCH_Location
;
3073 SI13_PBCCH_Location_t SI13_PBCCH_Location
;
3074 } Cell_Selection_2_t
;
3078 guint8 FREQUENCY_DIFF
;
3080 Cell_Selection_t Cell_Selection
;
3085 guint8 FREQ_DIFF_LENGTH
;
3086 guint8 FREQUENCY_DIFF
;
3089 gboolean Exist_CellSelectionParams
;
3090 Cell_Selection_2_t CellSelectionParams
;
3091 } CellSelectionParamsWithFreqDiff_t
;
3095 guint16 START_FREQUENCY
;
3098 guint8 Exist_Cell_Selection
;
3099 Cell_Selection_2_t Cell_Selection
;
3101 guint8 NR_OF_FREQUENCIES
;
3102 guint8 FREQ_DIFF_LENGTH
;
3105 CellSelectionParamsWithFreqDiff_t CellSelectionParamsWithFreqDiff
[32];
3106 } Add_Frequency_list_t
;
3110 guint8 REMOVED_FREQ_INDEX
;
3111 } Removed_Freq_Index_t
;
3115 guint8 Exist_REMOVED_FREQ
;
3116 guint8 NR_OF_REMOVED_FREQ
;
3117 Removed_Freq_Index_t Removed_Freq_Index
[32];
3119 guint8 Count_Add_Frequency
;
3120 Add_Frequency_list_t Add_Frequency
[32];
3121 } NC_Frequency_list_t
;
3126 guint8 NETWORK_CONTROL_ORDER
;
3129 guint8 NC_NON_DRX_PERIOD
;
3130 guint8 NC_REPORTING_PERIOD_I
;
3131 guint8 NC_REPORTING_PERIOD_T
;
3133 guint8 Exist_NC_FREQUENCY_LIST
;
3134 NC_Frequency_list_t NC_Frequency_list
;
3135 } NC_Measurement_Parameters_with_Frequency_List_t
;
3152 guint8 RXLEV_SERVING_CELL
;
3153 } Serving_Cell_Data_t
;
3158 guint8 Exist_BSIC_N
;
3161 } NC_Measurements_t
;
3168 } RepeatedInvalid_BSIC_Info_t
;
3172 guint8 Exist_REPORTING_QUANTITY
;
3173 guint8 REPORTING_QUANTITY
;
3174 } REPORTING_QUANTITY_Instance_t
;
3179 Serving_Cell_Data_t Serving_Cell_Data
;
3181 guint8 NUMBER_OF_NC_MEASUREMENTS
;
3182 NC_Measurements_t NC_Measurements
[6]; /* NC_Measurements * (val(NUMBER_OF_NC_MEASUREMENTS))
3183 Max 7 NC Measurements in one PACKET MEASUREMENT REPORT,
3184 but only 6 cells are updated in PACKET IDLE. */
3185 } NC_Measurement_Report_t
;
3189 guint8 EXT_REPORTING_TYPE
;
3191 guint8 Exist_I_LEVEL
;
3198 guint8 NUMBER_OF_EXT_MEASUREMENTS
;
3199 NC_Measurements_t EXT_Measurements
[9]; /* EXT_Measurements * (val(NUMBER_OF_NC_MEASUREMENTS))
3200 Max 9 Ext Measurements in one PACKET MEASUREMENT REPORT */
3201 } EXT_Measurement_Report_t
;
3205 guint8 CELL_LIST_INDEX_3G
;
3206 guint8 REPORTING_QUANTITY
;
3207 } Measurements_3G_t
;
3212 guint8 Exist_PLMN_ID
;
3215 gboolean Access_Mode
;
3216 guint8 REPORTING_QUANTITY
;
3217 } UTRAN_CSG_Measurement_Report_t
;
3222 guint16 Tracking_Area_Code
;
3223 guint8 Exist_PLMN_ID
;
3226 gboolean Access_Mode
;
3227 guint8 REPORTING_QUANTITY
;
3228 } EUTRAN_CSG_Measurement_Report_t
;
3232 gboolean Exist_UTRAN_CSG_Meas_Rpt
;
3233 UTRAN_CSG_Measurement_Report_t UTRAN_CSG_Meas_Rpt
;
3234 gboolean Exist_EUTRAN_CSG_Meas_Rpt
;
3235 EUTRAN_CSG_Measurement_Report_t EUTRAN_CSG_Meas_Rpt
;
3236 } PMR_AdditionsR9_t
;
3240 guint8 EUTRAN_FREQUENCY_INDEX
;
3241 guint16 CELL_IDENTITY
;
3242 guint8 REPORTING_QUANTITY
;
3243 } EUTRAN_Measurement_Report_Body_t
;
3248 EUTRAN_Measurement_Report_Body_t Report
[4];
3249 } EUTRAN_Measurement_Report_t
;
3253 gboolean Exist_EUTRAN_Meas_Rpt
;
3254 EUTRAN_Measurement_Report_t EUTRAN_Meas_Rpt
;
3255 gboolean Exist_AdditionsR9
;
3256 PMR_AdditionsR9_t AdditionsR9
;
3257 } PMR_AdditionsR8_t
;
3261 gboolean Exist_GRNTI
;
3263 gboolean Exist_AdditionsR8
;
3264 PMR_AdditionsR8_t AdditionsR8
;
3265 } PMR_AdditionsR5_t
;
3269 gboolean Exist_Info3G
;
3274 guint8 PSI3_CHANGE_MARK
;
3278 /* N_3G bit(3): max value 7
3279 * Report part (csn): {<3G_CELL_LIST_INDEX:bit(7)><REPORTING_QUANTITY:bit(6)>}*(val(N_3G + 1))
3280 * Max 6 3G measurement structs in one PMR
3282 gboolean Exist_MeasurementReport3G
;
3284 Measurements_3G_t Measurements_3G
[6];
3286 gboolean Exist_AdditionsR5
;
3287 PMR_AdditionsR5_t AdditionsR5
;
3288 } PMR_AdditionsR99_t
;
3292 guint8 MESSAGE_TYPE
;
3298 guint8 Exist_PSI5_CHANGE_MARK
;
3299 guint8 PSI5_CHANGE_MARK
;
3304 NC_Measurement_Report_t NC_Measurement_Report
;
3305 EXT_Measurement_Report_t EXT_Measurement_Report
;
3308 gboolean Exist_AdditionsR99
;
3309 PMR_AdditionsR99_t AdditionsR99
;
3310 } Packet_Measurement_Report_t
;
3312 #define INV_BSIC_LIST_LEN (16)
3314 #define REPORT_QUANTITY_LIST_LEN (96) /* Specification specified up to 96 */
3323 guint8 PSI3_CHANGE_MARK
;
3330 guint8 Exist_Serving_Cell_Data
;
3331 Serving_Cell_Data_t Serving_Cell_Data
;
3333 guint8 Count_RepeatedInvalid_BSIC_Info
;
3334 RepeatedInvalid_BSIC_Info_t RepeatedInvalid_BSIC_Info
[INV_BSIC_LIST_LEN
];
3336 guint8 Exist_ReportBitmap
;
3337 guint8 Count_REPORTING_QUANTITY_Instances
;
3338 REPORTING_QUANTITY_Instance_t REPORTING_QUANTITY_Instances
[REPORT_QUANTITY_LIST_LEN
];
3340 } ENH_NC_Measurement_Report_t
;
3344 guint8 Exist_UTRAN_CSG_Target_Cell
;
3345 UTRAN_CSG_Target_Cell_t UTRAN_CSG_Target_Cell
;
3346 guint8 Exist_EUTRAN_CSG_Target_Cell
;
3347 EUTRAN_CSG_Target_Cell_t EUTRAN_CSG_Target_Cell
;
3348 } PEMR_AdditionsR9_t
;
3352 gboolean Exist_REPORTING_QUANTITY
;
3353 guint8 REPORTING_QUANTITY
;
3354 } Bitmap_Report_Quantity_t
;
3358 guint8 BITMAP_LENGTH
;
3359 Bitmap_Report_Quantity_t Bitmap_Report_Quantity
[128];
3360 gboolean Exist_EUTRAN_Meas_Rpt
;
3361 EUTRAN_Measurement_Report_t EUTRAN_Meas_Rpt
;
3362 gboolean Exist_AdditionsR9
;
3363 PEMR_AdditionsR9_t AdditionsR9
;
3364 } PEMR_AdditionsR8_t
;
3368 gboolean Exist_GRNTI_Ext
;
3370 gboolean Exist_AdditionsR8
;
3371 PEMR_AdditionsR8_t AdditionsR8
;
3372 } PEMR_AdditionsR5_t
;
3376 guint8 MESSAGE_TYPE
;
3383 ENH_NC_Measurement_Report_t Measurements
;
3385 gboolean Exist_AdditionsR5
;
3386 PEMR_AdditionsR5_t AdditionsR5
;
3387 } Packet_Enh_Measurement_Report_t
;
3391 guint8 RXLEV_SERVING_CELL
;
3393 guint8 NUMBER_OF_NC_MEASUREMENTS
;
3394 NC_Measurements_t NC_Measurements
[6]; /* NC_Measurements * (val(NUMBER_OF_NC_MEASUREMENTS))
3395 Max 7 NC Measurements in one PACKET MEASUREMENT REPORT,
3396 but only 6 cells are updated in PACKET IDLE. */
3397 } CCN_Measurement_Report_t
;
3403 } Target_Cell_GSM_Notif_t
;
3408 guint8 Exist_Bandwith_FDD
;
3409 guint8 BANDWITH_FDD
;
3410 guint16 SCRAMBLING_CODE
;
3411 } FDD_Target_Cell_Notif_t
;
3416 guint8 Exist_Bandwith_TDD
;
3417 guint8 BANDWITH_TDD
;
3418 guint8 CELL_PARAMETER
;
3419 guint8 Sync_Case_TSTD
;
3420 } TDD_Target_Cell_Notif_t
;
3424 guint8 Exist_FDD_Description
;
3425 FDD_Target_Cell_Notif_t FDD_Target_Cell_Notif
;
3426 guint8 Exist_TDD_Description
;
3427 TDD_Target_Cell_Notif_t TDD_Target_Cell
;
3428 guint8 REPORTING_QUANTITY
;
3429 } Target_Cell_3G_Notif_t
;
3434 guint8 Exist_Measurement_Bandwidth
;
3435 guint8 Measurement_Bandwidth
;
3436 guint16 Physical_Layer_Cell_Identity
;
3437 guint8 Reporting_Quantity
;
3438 } Target_EUTRAN_Cell_Notif_t
;
3442 guint8 EUTRAN_FREQUENCY_INDEX
;
3443 guint16 CELL_IDENTITY
;
3444 guint8 REPORTING_QUANTITY
;
3445 } Eutran_Ccn_Measurement_Report_Cell_t
;
3449 gboolean ThreeG_BA_USED
;
3451 Eutran_Ccn_Measurement_Report_Cell_t Eutran_Ccn_Measurement_Report_Cell
[4];
3452 } Eutran_Ccn_Measurement_Report_t
;
3459 guint8 Exist_3G_Target_Cell
;
3460 Target_Cell_3G_Notif_t Target_Cell_3G_Notif
;
3461 guint8 Exist_Eutran_Target_Cell
;
3462 Target_EUTRAN_Cell_Notif_t Target_EUTRAN_Cell
;
3463 guint8 Exist_Eutran_Ccn_Measurement_Report
;
3464 Eutran_Ccn_Measurement_Report_t Eutran_Ccn_Measurement_Report
;
3465 } Target_Cell_4G_Notif_t
;
3472 UTRAN_CSG_Measurement_Report_t UTRAN_CSG_Measurement_Report
;
3473 EUTRAN_CSG_Measurement_Report_t EUTRAN_CSG_Measurement_Report
;
3475 guint8 Exist_Eutran_Ccn_Measurement_Report
;
3476 Eutran_Ccn_Measurement_Report_t Eutran_Ccn_Measurement_Report
;
3477 } Target_Cell_CSG_Notif_t
;
3484 Target_Cell_4G_Notif_t Target_Cell_4G_Notif
;
3485 Target_Cell_CSG_Notif_t Target_Cell_CSG_Notif
;
3487 } Target_Other_RAT_2_Notif_t
;
3494 Target_Cell_3G_Notif_t Target_Cell_3G_Notif
;
3495 Target_Other_RAT_2_Notif_t Target_Other_RAT_2_Notif
;
3497 } Target_Other_RAT_Notif_t
;
3504 Target_Cell_GSM_Notif_t Target_Cell_GSM_Notif
;
3505 Target_Other_RAT_Notif_t Target_Other_RAT_Notif
;
3511 guint8 Exist_BA_USED_3G
;
3515 Measurements_3G_t Measurements_3G
[6];
3516 } PCCN_AdditionsR6_t
;
3518 /* < Packet Cell Change Notification message contents > */
3521 guint8 MESSAGE_TYPE
;
3526 Global_TFI_t Global_TFI
;
3528 Target_Cell_t Target_Cell
;
3534 guint8 PSI3_CHANGE_MARK
;
3537 guint8 PCCN_SENDING
;
3538 CCN_Measurement_Report_t CCN_Measurement_Report
;
3540 gboolean Exist_AdditionsR6
;
3541 PCCN_AdditionsR6_t AdditionsR6
;
3542 } Packet_Cell_Change_Notification_t
;
3544 /* < Packet Cell Change Order message contents > */
3549 guint8 FrequencyScrolling
;
3554 #define MAX_BSIC_DESCS (19) /* Due to message size (23 bytes) and header etc,
3555 * there cannot be more than 19 DESCS.
3560 gboolean Exist_IndexStartBA
;
3561 guint8 IndexStartBA
;
3563 guint8 NumRemainingBSICs
;
3564 BSICDesc_t BSICDesc
[MAX_BSIC_DESCS
];
3567 typedef BSICList_t GPRSBSICList_t
;
3569 #define MAX_RTD_VALUES (6)
3573 guint8 NumRTDValues
;
3574 guint16 RTD
[MAX_RTD_VALUES
];
3579 gboolean Exist_StartValue
;
3581 } BAIndexStartRTD_t
;
3583 #define MAX_RTD_FREQS (32)
3587 BAIndexStartRTD_t BAIndexStart
;
3589 RTDValues_t RTD_s
[MAX_RTD_FREQS
];
3594 gboolean Exist_ListRTD6
;
3597 gboolean Exist_ListRTD12
;
3598 RTDList_t ListRTD12
;
3602 typedef MeasurementParams_t GPRSMeasurementParams_PMO_PCCO_t
;
3605 gboolean existMultiratReporting
;
3606 guint8 MultiratReporting
;
3608 gboolean existOffsetThreshold
;
3609 OffsetThreshold_t OffsetThreshold
;
3610 } MultiratParams3G_t
;
3615 guint8 SearchPrio3G
;
3617 gboolean existRepParamsFDD
;
3619 guint8 MultiratReportingFDD
;
3621 gboolean existOffsetThreshold
;
3622 OffsetThreshold_t OffsetThreshold
;
3624 MultiratParams3G_t ParamsTDD
;
3625 MultiratParams3G_t ParamsCDMA2000
;
3626 } ENH_GPRSMeasurementParams3G_PMO_t
;
3632 guint8 SearchPrio3G
;
3634 gboolean existRepParamsFDD
;
3636 guint8 MultiratReportingFDD
;
3638 gboolean existOffsetThreshold
;
3639 OffsetThreshold_t OffsetThreshold
;
3641 MultiratParams3G_t ParamsTDD
;
3642 } ENH_GPRSMeasurementParams3G_PCCO_t
;
3648 guint8 SearchPrio3G
;
3650 guint8 existRepParamsFDD
;
3652 guint8 MultiratReportingFDD
;
3654 guint8 existReportingParamsFDD
;
3655 guint8 ReportingOffsetFDD
;
3656 guint8 ReportingThresholdFDD
;
3658 guint8 existMultiratReportingTDD
;
3659 guint8 MultiratReportingTDD
;
3661 guint8 existOffsetThresholdTDD
;
3662 guint8 ReportingOffsetTDD
;
3663 guint8 ReportingThresholdTDD
;
3664 } GPRSMeasurementParams3G_t
;
3668 guint8 REMOVED_3GCELL_INDEX
;
3669 guint8 CELL_DIFF_LENGTH_3G
;
3670 guint8 CELL_DIFF_3G
;
3683 } Removed3GCellDescription_t
;
3687 guint8 Complete_This
;
3688 } CDMA2000_Description_t
;
3695 guint8 BitsInCellInfo
;
3696 guint8 CellInfo
[16]; /* bitmap compressed according to "Range 1024" algorithm (04.18/9.1.54) */
3697 } UTRAN_FDD_NeighbourCells_t
;
3700 gboolean existBandwidth
;
3702 guint8 NrOfFrequencies
;
3703 UTRAN_FDD_NeighbourCells_t CellParams
[8];
3704 } UTRAN_FDD_Description_t
;
3711 guint8 BitsInCellInfo
;
3712 guint8 CellInfo
[16]; /* bitmap compressed according to "Range 512" algorithm */
3713 } UTRAN_TDD_NeighbourCells_t
;
3716 gboolean existBandwidth
;
3718 guint8 NrOfFrequencies
;
3719 UTRAN_TDD_NeighbourCells_t CellParams
[8];
3720 } UTRAN_TDD_Description_t
;
3724 guint8 Exist_Index_Start_3G
;
3725 guint8 Index_Start_3G
;
3726 guint8 Exist_Absolute_Index_Start_EMR
;
3727 guint8 Absolute_Index_Start_EMR
;
3728 guint8 Exist_UTRAN_FDD_Description
;
3729 UTRAN_FDD_Description_t UTRAN_FDD_Description
;
3730 guint8 Exist_UTRAN_TDD_Description
;
3731 UTRAN_TDD_Description_t UTRAN_TDD_Description
;
3732 guint8 Exist_CDMA2000_Description
;
3733 CDMA2000_Description_t CDMA2000_Description
;
3734 guint8 Exist_Removed3GCellDescription
;
3735 Removed3GCellDescription_t Removed3GCellDescription
;
3736 } NeighbourCellDescription3G_PMO_t
;
3740 guint8 Exist_Index_Start_3G
;
3741 guint8 Index_Start_3G
;
3742 guint8 Exist_Absolute_Index_Start_EMR
;
3743 guint8 Absolute_Index_Start_EMR
;
3744 guint8 Exist_UTRAN_FDD_Description
;
3745 UTRAN_FDD_Description_t UTRAN_FDD_Description
;
3746 guint8 Exist_UTRAN_TDD_Description
;
3747 UTRAN_TDD_Description_t UTRAN_TDD_Description
;
3748 guint8 Exist_Removed3GCellDescription
;
3749 Removed3GCellDescription_t Removed3GCellDescription
;
3750 } NeighbourCellDescription3G_PCCO_t
;
3758 guint8 PSI3_CHANGE_MARK
;
3764 guint8 REPORTING_RATE
;
3765 guint8 INVALID_BSIC_REPORTING
;
3767 gboolean Exist_NeighbourCellDescription3G
;
3768 NeighbourCellDescription3G_PMO_t NeighbourCellDescription3G
;
3770 gboolean Exist_GPRSReportPriority
;
3771 GPRSReportPriority_t GPRSReportPriority
;
3773 gboolean Exist_GPRSMeasurementParams
;
3774 GPRSMeasurementParams_PMO_PCCO_t GPRSMeasurementParams
;
3775 gboolean Exist_GPRSMeasurementParams3G
;
3776 ENH_GPRSMeasurementParams3G_PMO_t GPRSMeasurementParams3G
;
3777 } ENH_Measurement_Parameters_PMO_t
;
3785 guint8 PSI3_CHANGE_MARK
;
3791 guint8 REPORTING_RATE
;
3792 guint8 INVALID_BSIC_REPORTING
;
3794 gboolean Exist_NeighbourCellDescription3G
;
3795 NeighbourCellDescription3G_PCCO_t NeighbourCellDescription3G
;
3797 gboolean Exist_GPRSReportPriority
;
3798 GPRSReportPriority_t GPRSReportPriority
;
3800 gboolean Exist_GPRSMeasurementParams
;
3801 GPRSMeasurementParams_PMO_PCCO_t GPRSMeasurementParams
;
3802 gboolean Exist_GPRSMeasurementParams3G
;
3803 ENH_GPRSMeasurementParams3G_PCCO_t GPRSMeasurementParams3G
;
3804 } ENH_Measurement_Parameters_PCCO_t
;
3811 Global_TFI_t Global_TFI
;
3814 } PacketCellChangeOrderID_t
;
3818 guint8 CELL_BAR_QUALIFY_3
;
3819 guint8 Exist_SI13_Alt_PBCCH_Location
;
3820 SI13_PBCCH_Location_t SI13_Alt_PBCCH_Location
;
3821 } lu_ModeCellSelectionParameters_t
;
3825 guint8 Exist_lu_ModeCellSelectionParams
;
3826 lu_ModeCellSelectionParameters_t lu_ModeCellSelectionParameters
;
3827 } lu_ModeCellSelectionParams_t
;
3831 lu_ModeCellSelectionParams_t lu_ModeCellSelectionParameters
;
3832 guint8 NR_OF_FREQUENCIES
;
3833 lu_ModeCellSelectionParams_t lu_ModeCellSelectionParams
[32];
3834 } lu_ModeNeighbourCellParams_t
;
3838 guint8 CELL_BAR_QUALIFY_3
;
3839 guint8 SAME_RA_AS_SERVING_CELL
;
3841 guint8 Exist_RXLEV_and_TXPWR
;
3842 guint8 GPRS_RXLEV_ACCESS_MIN
;
3843 guint8 GPRS_MS_TXPWR_MAX_CCH
;
3845 guint8 Exist_OFFSET_and_TIME
;
3846 guint8 GPRS_TEMPORARY_OFFSET
;
3847 guint8 GPRS_PENALTY_TIME
;
3849 guint8 Exist_GPRS_RESELECT_OFFSET
;
3850 guint8 GPRS_RESELECT_OFFSET
;
3855 guint8 Exist_SI13_Alt_PBCCH_Location
;
3856 SI13_PBCCH_Location_t SI13_Alt_PBCCH_Location
;
3857 } lu_ModeOnlyCellSelection_t
;
3861 guint8 FREQ_DIFF_LENGTH
;
3862 guint8 FREQUENCY_DIFF
;
3865 gboolean Exist_lu_ModeOnlyCellSelectionParams
;
3866 lu_ModeOnlyCellSelection_t lu_ModeOnlyCellSelectionParams
;
3867 } lu_ModeOnlyCellSelectionParamsWithFreqDiff_t
;
3871 guint16 START_FREQUENCY
;
3874 guint8 Exist_lu_ModeCellSelection
;
3875 lu_ModeOnlyCellSelection_t lu_ModeOnlyCellSelection
;
3877 guint8 NR_OF_FREQUENCIES
;
3878 guint8 FREQ_DIFF_LENGTH
;
3880 lu_ModeOnlyCellSelectionParamsWithFreqDiff_t lu_ModeOnlyCellSelectionParamsWithFreqDiff
[32];
3881 } Add_lu_ModeOnlyFrequencyList_t
;
3885 guint8 Count_Add_lu_ModeOnlyFrequencyList
;
3886 Add_lu_ModeOnlyFrequencyList_t Add_lu_ModeOnlyFrequencyList
[32];
3887 } NC_lu_ModeOnlyCapableCellList_t
;
3892 guint8 NumberOfFrequencyIndexes
;
3893 guint8 UTRAN_FREQUENCY_INDEX_a
[18];
3895 gboolean existUTRAN_PRIORITY
;
3896 guint8 UTRAN_PRIORITY
;
3898 guint8 THRESH_UTRAN_high
;
3900 gboolean existTHRESH_UTRAN_low
;
3901 guint8 THRESH_UTRAN_low
;
3903 gboolean existUTRAN_QRXLEVMIN
;
3904 guint8 UTRAN_QRXLEVMIN
;
3905 } RepeatedUTRAN_PriorityParameters_t
;
3909 gboolean existDEFAULT_UTRAN_Parameters
;
3910 guint8 DEFAULT_UTRAN_PRIORITY
;
3911 guint8 DEFAULT_THRESH_UTRAN
;
3912 guint8 DEFAULT_UTRAN_QRXLEVMIN
;
3914 guint8 NumberOfPriorityParameters
;
3915 RepeatedUTRAN_PriorityParameters_t RepeatedUTRAN_PriorityParameters_a
[8];
3916 } PriorityParametersDescription3G_PMO_t
;
3920 gboolean existEUTRAN_FDD_REPORTING_THRESHOLD_OFFSET
;
3921 guint8 EUTRAN_FDD_REPORTING_THRESHOLD
;
3922 gboolean existEUTRAN_FDD_REPORTING_THRESHOLD_2
;
3923 guint8 EUTRAN_FDD_REPORTING_THRESHOLD_2
;
3924 gboolean existEUTRAN_FDD_REPORTING_OFFSET
;
3925 guint8 EUTRAN_FDD_REPORTING_OFFSET
;
3927 gboolean existEUTRAN_TDD_REPORTING_THRESHOLD_OFFSET
;
3928 guint8 EUTRAN_TDD_REPORTING_THRESHOLD
;
3929 gboolean existEUTRAN_TDD_REPORTING_THRESHOLD_2
;
3930 guint8 EUTRAN_TDD_REPORTING_THRESHOLD_2
;
3931 gboolean existEUTRAN_TDD_REPORTING_OFFSET
;
3932 guint8 EUTRAN_TDD_REPORTING_OFFSET
;
3933 } EUTRAN_REPORTING_THRESHOLD_OFFSET_t
;
3937 guint8 Qsearch_P_EUTRAN
;
3938 guint8 EUTRAN_REP_QUANT
;
3939 guint8 EUTRAN_MULTIRAT_REPORTING
;
3940 EUTRAN_REPORTING_THRESHOLD_OFFSET_t EUTRAN_REPORTING_THRESHOLD_OFFSET
;
3941 } GPRS_EUTRAN_MeasurementParametersDescription_t
;
3946 gboolean existMeasurementBandwidth
;
3947 guint8 MeasurementBandwidth
;
3948 } RepeatedEUTRAN_Cells_t
;
3952 guint8 nbrOfEUTRAN_Cells
;
3953 RepeatedEUTRAN_Cells_t EUTRAN_Cells_a
[6];
3955 gboolean existEUTRAN_PRIORITY
;
3956 guint8 EUTRAN_PRIORITY
;
3958 guint8 THRESH_EUTRAN_high
;
3960 gboolean existTHRESH_EUTRAN_low
;
3961 guint8 THRESH_EUTRAN_low
;
3963 gboolean existEUTRAN_QRXLEVMIN
;
3964 guint8 EUTRAN_QRXLEVMIN
;
3965 } RepeatedEUTRAN_NeighbourCells_t
;
3974 guint8 PCID_Pattern_length
;
3975 guint8 PCID_Pattern
;
3976 guint8 PCID_Pattern_sense
;
3981 guint8 NumberOfPCIDs
;
3984 gboolean existPCID_BITMAP_GROUP
;
3985 guint8 PCID_BITMAP_GROUP
;
3987 guint8 NumberOfPCID_Patterns
;
3988 PCID_Pattern_t PCID_Pattern_a
[19];
3993 guint8 EUTRAN_FREQUENCY_INDEX
;
3994 } EUTRAN_FREQUENCY_INDEX_t
;
3998 PCID_Group_IE_t NotAllowedCells
;
3999 guint8 NumberOfFrequencyIndexes
;
4000 EUTRAN_FREQUENCY_INDEX_t EUTRAN_FREQUENCY_INDEX_a
[28];
4001 } RepeatedEUTRAN_NotAllowedCells_t
;
4005 guint8 NumberOfMappings
;
4006 PCID_Group_IE_t PCID_ToTA_Mapping_a
[14];
4008 guint8 NumberOfFrequencyIndexes
;
4009 EUTRAN_FREQUENCY_INDEX_t EUTRAN_FREQUENCY_INDEX_a
[28];
4010 } RepeatedEUTRAN_PCID_to_TA_mapping_t
;
4014 guint8 EUTRAN_CCN_ACTIVE
;
4016 gboolean existGPRS_EUTRAN_MeasurementParametersDescription
;
4017 GPRS_EUTRAN_MeasurementParametersDescription_t GPRS_EUTRAN_MeasurementParametersDescription
;
4019 guint8 nbrOfRepeatedEUTRAN_NeighbourCellsStructs
;
4020 RepeatedEUTRAN_NeighbourCells_t RepeatedEUTRAN_NeighbourCells_a
[4];
4022 guint8 NumberOfNotAllowedCells
;
4023 RepeatedEUTRAN_NotAllowedCells_t RepeatedEUTRAN_NotAllowedCells_a
[14];
4025 guint8 NumberOfMappings
;
4026 RepeatedEUTRAN_PCID_to_TA_mapping_t RepeatedEUTRAN_PCID_to_TA_mapping_a
[19];
4027 } EUTRAN_ParametersDescription_PMO_t
;
4031 guint8 GERAN_PRIORITY
;
4032 guint8 THRESH_Priority_Search
;
4033 guint8 THRESH_GSM_low
;
4035 guint8 T_Reselection
;
4036 } ServingCellPriorityParametersDescription_t
;
4040 gboolean existServingCellPriorityParametersDescription
;
4041 ServingCellPriorityParametersDescription_t ServingCellPriorityParametersDescription
;
4043 gboolean existPriorityParametersDescription3G_PMO
;
4044 PriorityParametersDescription3G_PMO_t PriorityParametersDescription3G_PMO
;
4046 gboolean existEUTRAN_ParametersDescription_PMO
;
4047 EUTRAN_ParametersDescription_PMO_t EUTRAN_ParametersDescription_PMO
;
4048 } PriorityAndEUTRAN_ParametersDescription_PMO_t
;
4052 guint8 PSC_Pattern_length
;
4054 gboolean PSC_Pattern_sense
;
4061 guint8 PSC_Pattern_Count
;
4062 PSC_Pattern_t PSC_Pattern
[32];
4067 PSC_Group_t CSG_PSC_SPLIT
;
4069 guint8 UTRAN_FREQUENCY_INDEX
[32];
4070 } ThreeG_CSG_Description_Body_t
;
4075 ThreeG_CSG_Description_Body_t ThreeG_CSG_Description_Body
[32];
4076 } ThreeG_CSG_Description_t
;
4080 PSC_Group_t CSG_PCI_SPLIT
;
4082 guint8 EUTRAN_FREQUENCY_INDEX
[32];
4083 } EUTRAN_CSG_Description_Body_t
;
4088 EUTRAN_CSG_Description_Body_t EUTRAN_CSG_Description_Body
[32];
4089 } EUTRAN_CSG_Description_t
;
4093 gboolean existMeasurement_Control_EUTRAN
;
4094 gboolean Measurement_Control_EUTRAN
;
4095 guint8 EUTRAN_FREQUENCY_INDEX_top
;
4096 guint8 Count_EUTRAN_FREQUENCY_INDEX
;
4097 guint8 EUTRAN_FREQUENCY_INDEX
[32];
4099 gboolean existMeasurement_Control_UTRAN
;
4100 gboolean Measurement_Control_UTRAN
;
4101 guint8 UTRAN_FREQUENCY_INDEX_top
;
4102 guint8 Count_UTRAN_FREQUENCY_INDEX
;
4103 guint8 UTRAN_FREQUENCY_INDEX
[32];
4104 } Meas_Ctrl_Param_Desp_t
;
4108 guint8 THRESH_EUTRAN_high_Q
;
4109 gboolean existTHRESH_EUTRAN_low_Q
;
4110 guint8 THRESH_EUTRAN_low_Q
;
4111 gboolean existEUTRAN_QQUALMIN
;
4112 guint8 EUTRAN_QQUALMIN
;
4113 gboolean existEUTRAN_RSRPmin
;
4114 guint8 EUTRAN_RSRPmin
;
4115 } Reselection_Based_On_RSRQ_t
;
4119 guint8 Count_EUTRAN_FREQUENCY_INDEX
;
4120 guint8 EUTRAN_FREQUENCY_INDEX
[32];
4125 Reselection_Based_On_RSRQ_t Reselection_Based_On_RSRQ
;
4127 } Rept_EUTRAN_Enh_Cell_Resel_Param_t
;
4132 Rept_EUTRAN_Enh_Cell_Resel_Param_t Repeated_EUTRAN_Enhanced_Cell_Reselection_Parameters
[32];
4133 } Enh_Cell_Reselect_Param_Desp_t
;
4137 gboolean existUTRAN_CSG_FDD_REPORTING_THRESHOLD
;
4138 guint8 UTRAN_CSG_FDD_REPORTING_THRESHOLD
;
4139 guint8 UTRAN_CSG_FDD_REPORTING_THRESHOLD_2
;
4140 gboolean existUTRAN_CSG_TDD_REPORTING_THRESHOLD
;
4141 guint8 UTRAN_CSG_TDD_REPORTING_THRESHOLD
;
4142 } UTRAN_CSG_Cells_Reporting_Desp_t
;
4146 gboolean existEUTRAN_CSG_FDD_REPORTING_THRESHOLD
;
4147 guint8 EUTRAN_CSG_FDD_REPORTING_THRESHOLD
;
4148 guint8 EUTRAN_CSG_FDD_REPORTING_THRESHOLD_2
;
4149 gboolean existEUTRAN_CSG_TDD_REPORTING_THRESHOLD
;
4150 guint8 EUTRAN_CSG_TDD_REPORTING_THRESHOLD
;
4151 guint8 EUTRAN_CSG_TDD_REPORTING_THRESHOLD_2
;
4152 } EUTRAN_CSG_Cells_Reporting_Desp_t
;
4156 gboolean existUTRAN_CSG_Cells_Reporting_Description
;
4157 UTRAN_CSG_Cells_Reporting_Desp_t UTRAN_CSG_Cells_Reporting_Description
;
4158 gboolean existEUTRAN_CSG_Cells_Reporting_Description
;
4159 EUTRAN_CSG_Cells_Reporting_Desp_t EUTRAN_CSG_Cells_Reporting_Description
;
4160 } CSG_Cells_Reporting_Desp_t
;
4164 gboolean existEnhanced_Cell_Reselection_Parameters_Description
;
4165 Enh_Cell_Reselect_Param_Desp_t Enhanced_Cell_Reselection_Parameters_Description
;
4167 gboolean existCSG_Cells_Reporting_Description
;
4168 CSG_Cells_Reporting_Desp_t CSG_Cells_Reporting_Description
;
4169 } PMO_AdditionsR9_t
;
4174 } Delete_All_Stored_Individual_Priorities_t
;
4179 guint16 FDD_ARFCN
[32];
4180 } Individual_UTRAN_Priority_FDD_t
;
4185 guint16 TDD_ARFCN
[32];
4186 } Individual_UTRAN_Priority_TDD_t
;
4193 Individual_UTRAN_Priority_FDD_t Individual_UTRAN_Priority_FDD
;
4194 Individual_UTRAN_Priority_TDD_t Individual_UTRAN_Priority_TDD
;
4196 guint8 UTRAN_PRIORITY
;
4197 } Repeated_Individual_UTRAN_Priority_Parameters_t
;
4201 guint8 Exist_DEFAULT_UTRAN_PRIORITY
;
4202 guint8 DEFAULT_UTRAN_PRIORITY
;
4203 guint8 Repeated_Individual_UTRAN_Priority_Parameters_Count
;
4204 Repeated_Individual_UTRAN_Priority_Parameters_t Repeated_Individual_UTRAN_Priority_Parameters
[32];
4205 } ThreeG_Individual_Priority_Parameters_Description_t
;
4211 guint8 EUTRAN_PRIORITY
;
4212 } Repeated_Individual_EUTRAN_Priority_Parameters_t
;
4216 guint8 Exist_DEFAULT_EUTRAN_PRIORITY
;
4217 guint8 DEFAULT_EUTRAN_PRIORITY
;
4219 Repeated_Individual_EUTRAN_Priority_Parameters_t Repeated_Individual_EUTRAN_Priority_Parameters
[32];
4220 } EUTRAN_Individual_Priority_Parameters_Description_t
;
4224 guint8 GERAN_PRIORITY
;
4225 guint8 Exist_3G_Individual_Priority_Parameters_Description
;
4226 ThreeG_Individual_Priority_Parameters_Description_t ThreeG_Individual_Priority_Parameters_Description
;
4227 guint8 Exist_EUTRAN_Individual_Priority_Parameters_Description
;
4228 EUTRAN_Individual_Priority_Parameters_Description_t EUTRAN_Individual_Priority_Parameters_Description
;
4229 guint8 Exist_T3230_timeout_value
;
4230 guint8 T3230_timeout_value
;
4231 } Provide_Individual_Priorities_t
;
4238 Delete_All_Stored_Individual_Priorities_t Delete_All_Stored_Individual_Priorities
;
4239 Provide_Individual_Priorities_t Provide_Individual_Priorities
;
4241 } Individual_Priorities_t
;
4245 gboolean existBA_IND_3G_PMO_IND
;
4249 gboolean existPriorityAndEUTRAN_ParametersDescription_PMO
;
4250 PriorityAndEUTRAN_ParametersDescription_PMO_t PriorityAndEUTRAN_ParametersDescription_PMO
;
4252 gboolean existIndividualPriorities_PMO
;
4253 Individual_Priorities_t IndividualPriorities_PMO
;
4255 gboolean existThreeG_CSG_Description
;
4256 ThreeG_CSG_Description_t ThreeG_CSG_Description_PMO
;
4258 gboolean existEUTRAN_CSG_Description
;
4259 EUTRAN_CSG_Description_t EUTRAN_CSG_Description_PMO
;
4261 gboolean existMeasurement_Control_Parameters_Description
;
4262 Meas_Ctrl_Param_Desp_t Measurement_Control_Parameters_Description_PMO
;
4264 gboolean existAdditionsR9
;
4265 PMO_AdditionsR9_t AdditionsR9
;
4266 } PMO_AdditionsR8_t
;
4270 gboolean existREPORTING_OFFSET_THRESHOLD_700
;
4271 guint8 REPORTING_OFFSET_700
;
4272 guint8 REPORTING_THRESHOLD_700
;
4274 gboolean existREPORTING_OFFSET_THRESHOLD_810
;
4275 guint8 REPORTING_OFFSET_810
;
4276 guint8 REPORTING_THRESHOLD_810
;
4278 guint8 existAdditionsR8
;
4279 PMO_AdditionsR8_t additionsR8
;
4280 } PMO_AdditionsR7_t
;
4284 guint8 CCN_ACTIVE_3G
;
4285 guint8 existAdditionsR7
;
4286 PMO_AdditionsR7_t additionsR7
;
4287 } PMO_AdditionsR6_t
;
4291 guint8 CCN_ACTIVE_3G
;
4292 } PCCO_AdditionsR6_t
;
4296 guint8 existGRNTI_Extension
;
4298 guint8 exist_lu_ModeNeighbourCellParams
;
4299 guint8 count_lu_ModeNeighbourCellParams
;
4300 lu_ModeNeighbourCellParams_t lu_ModeNeighbourCellParams
[32];
4301 guint8 existNC_lu_ModeOnlyCapableCellList
;
4302 NC_lu_ModeOnlyCapableCellList_t NC_lu_ModeOnlyCapableCellList
;
4303 guint8 existGPRS_AdditionalMeasurementParams3G
;
4304 GPRS_AdditionalMeasurementParams3G_t GPRS_AdditionalMeasurementParams3G
;
4305 guint8 existAdditionsR6
;
4306 PMO_AdditionsR6_t additionsR6
;
4307 } PMO_AdditionsR5_t
;
4311 guint8 existGRNTI_Extension
;
4313 guint8 exist_lu_ModeNeighbourCellParams
;
4314 guint8 count_lu_ModeNeighbourCellParams
;
4315 lu_ModeNeighbourCellParams_t lu_ModeNeighbourCellParams
[32];
4316 guint8 existNC_lu_ModeOnlyCapableCellList
;
4317 NC_lu_ModeOnlyCapableCellList_t NC_lu_ModeOnlyCapableCellList
;
4318 guint8 existGPRS_AdditionalMeasurementParams3G
;
4319 GPRS_AdditionalMeasurementParams3G_t GPRS_AdditionalMeasurementParams3G
;
4320 guint8 existAdditionsR6
;
4321 PCCO_AdditionsR6_t additionsR6
;
4322 } PCCO_AdditionsR5_t
;
4327 guint8 Exist_CCN_Support_Description_ID
;
4328 CCN_Support_Description_t CCN_Support_Description
;
4329 guint8 Exist_AdditionsR5
;
4330 PMO_AdditionsR5_t AdditionsR5
;
4331 } PMO_AdditionsR4_t
;
4336 guint8 Exist_Container_ID
;
4337 guint8 CONTAINER_ID
;
4338 guint8 Exist_CCN_Support_Description_ID
;
4339 CCN_Support_Description_t CCN_Support_Description
;
4340 guint8 Exist_AdditionsR5
;
4341 PCCO_AdditionsR5_t AdditionsR5
;
4342 } PCCO_AdditionsR4_t
;
4346 ENH_Measurement_Parameters_PCCO_t ENH_Measurement_Parameters
;
4347 guint8 Exist_AdditionsR4
;
4348 PCCO_AdditionsR4_t AdditionsR4
;
4349 } PCCO_AdditionsR99_t
;
4353 guint8 Exist_ENH_Measurement_Parameters
;
4354 ENH_Measurement_Parameters_PMO_t ENH_Measurement_Parameters
;
4355 guint8 Exist_AdditionsR4
;
4356 PMO_AdditionsR4_t AdditionsR4
;
4357 } PMO_AdditionsR99_t
;
4361 guint8 Exist_LSA_Parameters
;
4362 LSA_Parameters_t LSA_Parameters
;
4364 guint8 Exist_AdditionsR99
;
4365 PMO_AdditionsR99_t AdditionsR99
;
4366 } PMO_AdditionsR98_t
;
4370 guint8 Exist_LSA_Parameters
;
4371 LSA_Parameters_t LSA_Parameters
;
4373 guint8 Exist_AdditionsR99
;
4374 PCCO_AdditionsR99_t AdditionsR99
;
4375 } PCCO_AdditionsR98_t
;
4379 guint8 IMMEDIATE_REL
;
4382 NC_Measurement_Parameters_with_Frequency_List_t NC_Measurement_Parameters
;
4384 guint8 Exist_AdditionsR98
;
4385 PCCO_AdditionsR98_t AdditionsR98
;
4386 } Target_Cell_GSM_t
;
4390 guint8 Exist_EUTRAN_Target_Cell
;
4391 EUTRAN_Target_Cell_t EUTRAN_Target_Cell
;
4392 guint8 Exist_Individual_Priorities
;
4393 Individual_Priorities_t Individual_Priorities
;
4394 } Target_Cell_3G_AdditionsR8_t
;
4398 guint8 Exist_G_RNTI_Extention
;
4399 guint8 G_RNTI_Extention
;
4400 guint8 Exist_AdditionsR8
;
4401 Target_Cell_3G_AdditionsR8_t AdditionsR8
;
4402 } Target_Cell_3G_AdditionsR5_t
;
4406 /* 00 -- Message escape */
4407 guint8 IMMEDIATE_REL
;
4408 guint8 Exist_FDD_Description
;
4409 FDD_Target_Cell_t FDD_Target_Cell
;
4410 guint8 Exist_TDD_Description
;
4411 TDD_Target_Cell_t TDD_Target_Cell
;
4412 guint8 Exist_AdditionsR5
;
4413 Target_Cell_3G_AdditionsR5_t AdditionsR5
;
4417 #define TARGET_CELL_GSM 0
4418 #define TARGET_CELL_3G 1
4423 guint8 MESSAGE_TYPE
;
4426 PacketCellChangeOrderID_t ID
;
4431 Target_Cell_GSM_t Target_Cell_GSM
;
4432 Target_Cell_3G_t Target_Cell_3G
;
4435 } Packet_Cell_Change_Order_t
;
4437 /* < Packet Cell Change Continue message contents > */
4440 guint8 MESSAGE_TYPE
;
4443 Global_TFI_t Global_TFI
;
4447 guint8 CONTAINER_ID
;
4448 } Packet_Cell_Change_Continue_t
;
4451 /* < Packet Neighbour Cell Data message contents > */
4456 guint8 CONTAINER
[17]; /* PD (3 bits) + CD_LENGTH (5 bits) + 16 bytes of CONTAINER_DATA (max!) */
4457 } PNCD_Container_With_ID_t
;
4461 guint8 CONTAINER
[19]; /* PD (3 bits) + CD_LENGTH (5 bits) + 18 bytes of CONTAINER_DATA (max!) */
4462 } PNCD_Container_Without_ID_t
;
4469 PNCD_Container_Without_ID_t PNCD_Container_Without_ID
;
4470 PNCD_Container_With_ID_t PNCD_Container_With_ID
;
4476 guint8 MESSAGE_TYPE
;
4479 Global_TFI_t Global_TFI
;
4480 guint8 CONTAINER_ID
;
4482 guint8 CONTAINER_INDEX
;
4484 PNCDContainer_t Container
;
4485 } Packet_Neighbour_Cell_Data_t
;
4487 /* < Packet Serving Cell Data message contents > */
4490 guint8 MESSAGE_TYPE
;
4493 Global_TFI_t Global_TFI
;
4495 guint8 CONTAINER_INDEX
;
4496 guint8 CONTAINER
[19]; /* PD (3 bits) + CD_LENGTH (5 bits) + 18 bytes of CONTAINER_DATA (max!) */
4497 } Packet_Serving_Cell_Data_t
;
4499 /* < Packet Measurement Order message contents > */
4502 guint16 START_FREQUENCY
;
4503 guint8 NR_OF_FREQUENCIES
;
4504 guint8 FREQ_DIFF_LENGTH
;
4506 guint8 Count_FREQUENCY_DIFF
;
4507 guint8 FREQUENCY_DIFF
[31];/* bit (FREQ_DIFF_LENGTH) * NR_OF_FREQUENCIES --> MAX is bit(7) * 31 */
4508 } EXT_Frequency_List_t
;
4512 guint8 MESSAGE_TYPE
;
4515 PacketDownlinkID_t ID
; /* use the PDA ID as it is the same as as the PMO */
4520 guint8 Exist_NC_Measurement_Parameters
;
4521 NC_Measurement_Parameters_with_Frequency_List_t NC_Measurement_Parameters
;
4523 guint8 Exist_EXT_Measurement_Parameters
;
4525 guint8 Exist_AdditionsR98
;
4526 PMO_AdditionsR98_t AdditionsR98
;
4527 } Packet_Measurement_Order_t
;
4529 /* Enhanced measurement report */
4533 guint8 RXLEV_SERVING_CELL
;
4534 } ServingCellData_t
;
4538 guint8 BCCH_FREQ_NCELL
;
4541 } Repeated_Invalid_BSIC_Info_t
;
4545 gboolean Exist_REPORTING_QUANTITY
;
4546 guint8 REPORTING_QUANTITY
;
4547 } REPORTING_QUANTITY_t
;
4556 guint8 PSI3_CHANGE_MARK
;
4560 guint8 Exist_ServingCellData
;
4561 ServingCellData_t ServingCellData
;
4562 guint8 Count_Repeated_Invalid_BSIC_Info
;
4563 Repeated_Invalid_BSIC_Info_t Repeated_Invalid_BSIC_Info
[32];
4565 gboolean Exist_Repeated_REPORTING_QUANTITY
;
4566 guint8 Count_Repeated_Reporting_Quantity
;
4567 REPORTING_QUANTITY_t Repeated_REPORTING_QUANTITY
[96];
4568 } NC_MeasurementReport_t
;
4570 /* Packet Handover PHO ----------------- */
4577 guint8 MS_TimeslotAllocation
;
4578 Power_Control_Parameters_t Power_Control_Parameters
;
4580 } GlobalTimeslotDescription_t
;
4584 guint8 TimeslotAllocation
;
4587 guint8 TFI_Assignment
;
4589 guint8 Exist_EGPRS_WindowSize
;
4590 guint8 EGPRS_WindowSize
;
4591 } PHO_DownlinkAssignment_t
;
4602 PHO_USF_1_7_t USF_1_7
[7];
4603 guint8 NBR_OfAllocatedTimeslots
;
4604 } USF_AllocationArray_t
;
4610 guint8 TFI_Assignment
;
4611 guint8 Exist_ChannelCodingCommand
;
4612 guint8 ChannelCodingCommand
;
4613 guint8 Exist_EGPRS_ChannelCodingCommand
;
4614 guint8 EGPRS_ChannelCodingCommand
;
4615 guint8 Exist_EGPRS_WindowSize
;
4616 guint8 EGPRS_WindowSize
;
4617 guint8 USF_Granularity
;
4618 guint8 Exist_TBF_TimeslotAllocation
;
4619 guint8 TBF_TimeslotAllocation
;
4623 guint8 USF_SingleAllocation
;
4624 USF_AllocationArray_t USF_AllocationArray
;
4626 } PHO_UplinkAssignment_t
;
4630 GlobalTimeslotDescription_t GlobalTimeslotDescription
;
4631 guint8 Exist_PHO_UA
;
4632 PHO_UplinkAssignment_t PHO_UA
;
4633 } GlobalTimeslotDescription_UA_t
;
4637 guint8 Exist_ChannelCodingCommand
;
4638 guint8 ChannelCodingCommand
;
4639 guint8 Exist_GlobalTimeslotDescription_UA
;
4640 GlobalTimeslotDescription_UA_t GTD_UA
;
4641 guint8 Exist_DownlinkAssignment
;
4642 PHO_DownlinkAssignment_t DownlinkAssignment
;
4648 guint8 Exist_EGPRS_WindowSize
;
4649 guint8 EGPRS_WindowSize
;
4650 guint8 LinkQualityMeasurementMode
;
4651 guint8 Exist_BEP_Period2
;
4653 } EGPRS_Description_t
;
4657 guint8 Exist_EGPRS_Description
;
4658 EGPRS_Description_t EGPRS_Description
;
4659 guint8 Exist_DownlinkAssignment
;
4660 PHO_DownlinkAssignment_t DownlinkAssignment
;
4665 guint8 Exist_EGPRS_WindowSize
;
4666 guint8 EGPRS_WindowSize
;
4667 guint8 Exist_EGPRS_ChannelCodingCommand
;
4668 guint8 EGPRS_ChannelCodingCommand
;
4669 guint8 Exist_BEP_Period2
;
4671 guint8 Exist_GlobalTimeslotDescription_UA
;
4672 GlobalTimeslotDescription_UA_t GTD_UA
;
4673 guint8 Exist_DownlinkTBF
;
4674 DownlinkTBF_t DownlinkTBF
;
4679 Global_Packet_Timing_Advance_t GlobalPacketTimingAdvance
;
4680 guint8 Exist_PacketExtendedTimingAdvance
;
4681 guint8 PacketExtendedTimingAdvance
;
4682 } PHO_TimingAdvance_t
;
4686 guint8 NAS_ContainerLength
;
4687 guint8 NAS_Container
[MAX_NAS_CONTAINER_LENGTH
];
4692 guint8 RRC_ContainerLength
;
4693 guint8 RRC_Container
[MAX_RRC_CONTAINER_LENGTH
];
4694 } PS_HandoverTo_UTRAN_Payload_t
;
4699 guint8 Exist_HandoverReference
;
4700 guint8 HandoverReference
;
4705 guint8 Exist_CCN_Active
;
4707 guint8 Exist_CCN_Active_3G
;
4708 guint8 CCN_Active_3G
;
4709 guint8 Exist_CCN_Support_Description
;
4710 CCN_Support_Description_t CCN_Support_Description
;
4711 Frequency_Parameters_t Frequency_Parameters
;
4712 guint8 NetworkControlOrder
;
4713 guint8 Exist_PHO_TimingAdvance
;
4714 PHO_TimingAdvance_t PHO_TimingAdvance
;
4715 guint8 Extended_Dynamic_Allocation
;
4720 guint8 Exist_UplinkControlTimeslot
;
4721 guint8 UplinkControlTimeslot
;
4725 PHO_GPRS_t PHO_GPRS_Mode
;
4726 PHO_EGPRS_t PHO_EGPRS_Mode
;
4728 } PHO_RadioResources_t
;
4732 PHO_RadioResources_t PHO_RadioResources
;
4733 guint8 Exist_NAS_Container
;
4734 NAS_Container_t NAS_Container
;
4735 } PS_HandoverTo_A_GB_ModePayload_t
;
4741 Global_TFI_t Global_TFI
;
4746 PS_HandoverTo_A_GB_ModePayload_t PS_HandoverTo_A_GB_ModePayload
;
4747 PS_HandoverTo_UTRAN_Payload_t PS_HandoverTo_UTRAN_Payload
;
4749 } Packet_Handover_Command_t
;
4751 /* End Packet Handover */
4753 /* Packet Physical Information ----------------- */
4759 Global_TFI_t Global_TFI
;
4760 guint8 TimingAdvance
;
4761 } Packet_PhysicalInformation_t
;
4763 /* End Packet Physical Information */
4767 /* ADDITIONAL MS RADIO ACCESS CAPABILITIES -----------------*/
4773 Global_TFI_t Global_TFI
;
4776 } AdditionalMsRadAccessCapID_t
;
4781 guint8 MESSAGE_TYPE
;
4786 AdditionalMsRadAccessCapID_t ID
;
4787 MS_Radio_Access_capability_t MS_Radio_Access_capability
;
4788 } Additional_MS_Rad_Access_Cap_t
;
4790 /* End ADDITIONAL MS RADIO ACCESS CAPABILITIES */
4793 /* Packet Pause -----------------*/
4797 guint8 MESSAGE_TYPE
;
4803 /* End Packet Pause */
4806 /* < Payload Type Data MAC Header content > */
4809 guint8 Payload_Type
;
4810 guint8 Countdown_Value
;
4813 } UL_Data_Mac_Header_t
;
4817 UL_Data_Mac_Header_t UL_Data_Mac_Header
;
4824 } UL_Data_Block_GPRS_t
;
4828 guint8 MESSAGE_TYPE
;
4830 }UL_Packet_Control_Ack_11_t
;
4834 guint8 MESSAGE_TYPE
;
4837 }UL_Packet_Control_Ack_TN_RRBP_11_t
;
4841 guint8 MESSAGE_TYPE
;
4843 }UL_Packet_Control_Ack_8_t
;
4847 guint8 MESSAGE_TYPE
;
4850 }UL_Packet_Control_Ack_TN_RRBP_8_t
;
4854 guint8 Payload_Type
;
4858 } DL_Data_Mac_Header_t
;
4862 DL_Data_Mac_Header_t DL_Data_Mac_Header
;
4863 guint8 Power_Reduction
;
4868 } DL_Data_Block_GPRS_t
;
4877 guint16 BSN2_offset
;
4878 guint8 Power_Reduction
;
4882 } DL_Data_Block_EGPRS_Header_t
;
4884 typedef DL_Data_Block_EGPRS_Header_t DL_Data_Block_EGPRS_Header_Type1_t
;
4885 typedef DL_Data_Block_EGPRS_Header_t DL_Data_Block_EGPRS_Header_Type2_t
;
4886 typedef DL_Data_Block_EGPRS_Header_t DL_Data_Block_EGPRS_Header_Type3_t
;
4891 guint8 Countdown_Value
;
4895 guint16 BSN2_offset
;
4903 } UL_Data_Block_EGPRS_Header_t
;
4905 typedef UL_Data_Block_EGPRS_Header_t UL_Data_Block_EGPRS_Header_Type1_t
;
4906 typedef UL_Data_Block_EGPRS_Header_t UL_Data_Block_EGPRS_Header_Type2_t
;
4907 typedef UL_Data_Block_EGPRS_Header_t UL_Data_Block_EGPRS_Header_Type3_t
;
4910 < NC Measurement Parameters struct > ::=
4911 < NETWORK_CONTROL_ORDER : bit (2) >
4912 { 0 | 1 < NC_ NON_DRX_PERIOD : bit (3) >
4913 < NC_REPORTING_PERIOD_I : bit (3) >
4914 < NC_REPORTING_PERIOD_T : bit (3) > } ;
4915 < Cell Selection struct > ::=
4917 < CELL_BAR_ACCESS_2 : bit (1) >
4918 < SAME_RA_AS_SERVING_CELL : bit (1) >
4919 { 0 | 1 < GPRS_RXLEV_ACCESS_MIN : bit (6) >
4920 < GPRS_MS_TXPWR_MAX_CCH : bit (5) > }
4921 { 0 | 1 < GPRS_TEMPORARY_OFFSET : bit (3) >
4922 < GPRS_PENALTY_TIME : bit (5) > }
4923 Table 25 (concluded): PACKET CELL CHANGE ORDER message content
4924 { 0 | 1 < GPRS_RESELECT_OFFSET : bit (5) > }
4925 { 0 | 1 < HCS params : < HCS struct > > }
4926 { 0 | 1 < SI13_PBCCH_LOCATION : < SI13_PBCCH_LOCATION struct > > } ;
4928 < SI13_PBCCH_LOCATION struct > ::=
4929 { 0 < SI13_LOCATION : bit (1) >
4930 | 1 < PBCCH_LOCATION : bit (2) >
4931 < PSI1_REPEAT_PERIOD : bit (4) > } ;
4934 < GPRS_PRIORITY_CLASS : bit (3) >
4935 < GPRS_HCS_THR : bit (5) > ;
4938 /* < Downlink RLC/MAC control message > */
4939 #define MT_PACKET_CELL_CHANGE_ORDER 0x01
4940 #define MT_PACKET_DOWNLINK_ASSIGNMENT 0x02
4941 #define MT_PACKET_MEASUREMENT_ORDER 0x03
4942 #define MT_PACKET_POLLING_REQ 0x04
4943 #define MT_PACKET_POWER_CONTROL_TIMING_ADVANCE 0x05
4944 #define MT_PACKET_QUEUEING_NOTIFICATION 0x06
4945 #define MT_PACKET_TIMESLOT_RECONFIGURE 0x07
4946 #define MT_PACKET_TBF_RELEASE 0x08
4947 #define MT_PACKET_UPLINK_ACK_NACK 0x09
4948 #define MT_PACKET_UPLINK_ASSIGNMENT 0x0A
4949 #define MT_PACKET_CELL_CHANGE_CONTINUE 0x0B
4950 #define MT_PACKET_NEIGHBOUR_CELL_DATA 0x0C
4951 #define MT_PACKET_SERVING_CELL_DATA 0x0D
4952 #define MT_PACKET_HANDOVER_COMMAND 0x15
4953 #define MT_PACKET_PHYSICAL_INFORMATION 0x16
4954 #define MT_PACKET_ACCESS_REJECT 0x21
4955 #define MT_PACKET_PAGING_REQUEST 0x22
4956 #define MT_PACKET_PDCH_RELEASE 0x23
4957 #define MT_PACKET_PRACH_PARAMETERS 0x24
4958 #define MT_PACKET_DOWNLINK_DUMMY_CONTROL_BLOCK 0x25
4959 #define MT_PACKET_SYSTEM_INFO_6 0x30
4960 #define MT_PACKET_SYSTEM_INFO_1 0x31
4961 #define MT_PACKET_SYSTEM_INFO_2 0x32
4962 #define MT_PACKET_SYSTEM_INFO_3 0x33
4963 #define MT_PACKET_SYSTEM_INFO_3_BIS 0x34
4964 #define MT_PACKET_SYSTEM_INFO_4 0x35
4965 #define MT_PACKET_SYSTEM_INFO_5 0x36
4966 #define MT_PACKET_SYSTEM_INFO_13 0x37
4967 #define MT_PACKET_SYSTEM_INFO_7 0x38
4968 #define MT_PACKET_SYSTEM_INFO_8 0x39
4969 #define MT_PACKET_SYSTEM_INFO_14 0x3A
4970 #define MT_PACKET_SYSTEM_INFO_3_TER 0x3C
4971 #define MT_PACKET_SYSTEM_INFO_3_QUATER 0x3D
4972 #define MT_PACKET_SYSTEM_INFO_15 0x3E
4974 /* < Uplink RLC/MAC control message > */
4975 #define MT_PACKET_CELL_CHANGE_FAILURE 0x00
4976 #define MT_PACKET_CONTROL_ACK 0x01
4977 #define MT_PACKET_DOWNLINK_ACK_NACK 0x02
4978 #define MT_PACKET_UPLINK_DUMMY_CONTROL_BLOCK 0x03
4979 #define MT_PACKET_MEASUREMENT_REPORT 0x04
4980 #define MT_PACKET_RESOURCE_REQUEST 0x05
4981 #define MT_PACKET_MOBILE_TBF_STATUS 0x06
4982 #define MT_PACKET_PSI_STATUS 0x07
4983 #define MT_EGPRS_PACKET_DOWNLINK_ACK_NACK 0x08
4984 #define MT_PACKET_PAUSE 0x09
4985 #define MT_PACKET_ENHANCED_MEASUREMENT_REPORT 0x0A
4986 #define MT_ADDITIONAL_MS_RAC 0x0B
4987 #define MT_PACKET_CELL_CHANGE_NOTIFICATION 0x0C
4988 #define MT_PACKET_SI_STATUS 0x0D
4989 #define MT_ENHANCED_MEASUREMENT_REPORT 0x04
4993 RLCMAC_PRACH
= 0x20,
4998 RLCMAC_HDR_TYPE_1
= 0x31,
4999 RLCMAC_HDR_TYPE_2
= 0x32,
5000 RLCMAC_HDR_TYPE_3
= 0x33,
5001 RLCMAC_HDR_TYPE_4
= 0x34,
5002 RLCMAC_HDR_TYPE_5
= 0x35,
5003 RLCMAC_HDR_TYPE_6
= 0x36,
5004 RLCMAC_HDR_TYPE_7
= 0x37,
5005 RLCMAC_HDR_TYPE_8
= 0x38,
5006 RLCMAC_HDR_TYPE_9
= 0x39,
5007 RLCMAC_HDR_TYPE_10
= 0x3a
5008 }RLCMAC_block_format_t
;
5010 /* < Downlink RLC/MAC control message > */
5015 guint8 MESSAGE_TYPE
;
5016 DL_Data_Block_GPRS_t DL_Data_Block_GPRS
;
5017 DL_Data_Block_EGPRS_Header_t DL_Data_Block_EGPRS_Header
;
5018 Packet_Access_Reject_t Packet_Access_Reject
;
5019 Packet_Cell_Change_Order_t Packet_Cell_Change_Order
;
5020 Packet_Cell_Change_Continue_t Packet_Cell_Change_Continue
;
5021 Packet_Downlink_Assignment_t Packet_Downlink_Assignment
;
5022 Packet_Measurement_Order_t Packet_Measurement_Order
;
5023 Packet_Neighbour_Cell_Data_t Packet_Neighbour_Cell_Data
;
5024 Packet_Serving_Cell_Data_t Packet_Serving_Cell_Data
;
5025 Packet_Paging_Request_t Packet_Paging_Request
;
5026 Packet_PDCH_Release_t Packet_PDCH_Release
;
5027 Packet_Polling_Request_t Packet_Polling_Request
;
5028 Packet_Power_Control_Timing_Advance_t Packet_Power_Control_Timing_Advance
;
5029 Packet_PRACH_Parameters_t Packet_PRACH_Parameters
;
5030 Packet_Queueing_Notification_t Packet_Queueing_Notification
;
5031 Packet_Timeslot_Reconfigure_t Packet_Timeslot_Reconfigure
;
5032 Packet_TBF_Release_t Packet_TBF_Release
;
5033 Packet_Uplink_Ack_Nack_t Packet_Uplink_Ack_Nack
;
5034 Packet_Uplink_Assignment_t Packet_Uplink_Assignment
;
5035 Packet_Handover_Command_t Packet_Handover_Command
;
5036 Packet_PhysicalInformation_t Packet_PhysicalInformation
;
5037 Packet_Downlink_Dummy_Control_Block_t Packet_Downlink_Dummy_Control_Block
;
5045 RLCMAC_block_format_t block_format
;
5049 typedef gint16 MSGGPRS_Status_t
;
5050 /* < Uplink RLC/MAC control message > */
5055 guint8 MESSAGE_TYPE
;
5056 Packet_Cell_Change_Failure_t Packet_Cell_Change_Failure
;
5057 Packet_Control_Acknowledgement_t Packet_Control_Acknowledgement
;
5058 Packet_Downlink_Ack_Nack_t Packet_Downlink_Ack_Nack
;
5059 Packet_Uplink_Dummy_Control_Block_t Packet_Uplink_Dummy_Control_Block
;
5060 Packet_Measurement_Report_t Packet_Measurement_Report
;
5061 Packet_Resource_Request_t Packet_Resource_Request
;
5062 Packet_Mobile_TBF_Status_t Packet_Mobile_TBF_Status
;
5063 Packet_PSI_Status_t Packet_PSI_Status
;
5064 EGPRS_PD_AckNack_t Egprs_Packet_Downlink_Ack_Nack
;
5065 Packet_Pause_t Packet_Pause
;
5066 Packet_Enh_Measurement_Report_t Packet_Enh_Measurement_Report
;
5067 Additional_MS_Rad_Access_Cap_t Additional_MS_Rad_Access_Cap
;
5068 Packet_Cell_Change_Notification_t Packet_Cell_Change_Notification
;
5069 Packet_SI_Status_t Packet_SI_Status
;
5070 UL_Data_Block_GPRS_t UL_Data_Block_GPRS
;
5071 UL_Data_Block_EGPRS_Header_t UL_Data_Block_EGPRS_Header
;
5072 UL_Packet_Control_Ack_11_t UL_Packet_Control_Ack_11
;
5073 UL_Packet_Control_Ack_TN_RRBP_11_t UL_Packet_Control_Ack_TN_RRBP_11
;
5074 UL_Packet_Control_Ack_8_t UL_Packet_Control_Ack_8
;
5075 UL_Packet_Control_Ack_TN_RRBP_8_t UL_Packet_Control_Ack_TN_RRBP_8
;
5077 RLCMAC_block_format_t block_format
;
5086 }egprs_ul_header_info_t
;
5092 }egprs_dl_header_info_t
;
5097 RLCMAC_block_format_t block_format
;
5100 #define GSM_RLC_MAC_EGPRS_BLOCK1 0x01
5101 #define GSM_RLC_MAC_EGPRS_BLOCK2 0x02
5102 #define GSM_RLC_MAC_EGPRS_FANR_FLAG 0x08
5106 egprs_ul_header_info_t egprs_ul_header_info
;
5107 egprs_dl_header_info_t egprs_dl_header_info
;
5109 } RlcMacPrivateData_t
;
5113 void GPRSMSG_Profile(gint16 i
);
5116 /* SI1_RestOctet_t */
5120 gboolean Exist_NCH_Position
;
5121 guint8 NCH_Position
;
5123 guint8 BandIndicator
;
5126 /* SI3_Rest_Octet_t */
5130 guint8 CELL_RESELECT_OFFSET
;
5131 guint8 TEMPORARY_OFFSET
;
5132 guint8 PENALTY_TIME
;
5133 } Selection_Parameters_t
;
5137 guint8 Exist_Selection_Parameters
;
5138 Selection_Parameters_t Selection_Parameters
;
5140 guint8 Exist_Power_Offset
;
5141 guint8 Power_Offset
;
5143 guint8 System_Information_2ter_Indicator
;
5144 guint8 Early_Classmark_Sending_Control
;
5149 guint8 Exist_GPRS_Indicator
;
5151 guint8 SI13_POSITION
;
5152 guint8 ECS_Restriction3G
;
5153 guint8 ExistSI2quaterIndicator
;
5154 guint8 SI2quaterIndicator
;
5159 guint8 Exist_Selection_Parameters
;
5160 Selection_Parameters_t Selection_Parameters
;
5162 guint8 Exist_Power_Offset
;
5163 guint8 Power_Offset
;
5165 guint8 Exist_GPRS_Indicator
;
5167 guint8 SI13_POSITION
;
5171 typedef SI4_Rest_Octet_t SI7_Rest_Octet_t
;
5172 typedef SI4_Rest_Octet_t SI8_Rest_Octet_t
;
5175 /* SI6_RestOctet_t */
5179 guint8 PagingChannelRestructuring
;
5182 gboolean Exist_CallPriority
;
5183 guint8 CallPriority
;
5186 } PCH_and_NCH_Info_t
;
5190 gboolean Exist_PCH_and_NCH_Info
;
5191 PCH_and_NCH_Info_t PCH_and_NCH_Info
;
5193 gboolean Exist_VBS_VGCS_Options
;
5194 guint8 VBS_VGCS_Options
;
5196 /* The meaning of Exist_DTM_Support is as follows:
5197 * FALSE => DTM is not supported in the serving cell, RAC and MAX_LAPDm are absent in bitstream
5198 * TRUE => DTM is supported in the serving cell, RAC and MAX_LAPDm are present in bitstream
5200 gboolean Exist_DTM_Support
;
5204 guint8 BandIndicator
; /* bit(1) L/H, L => ARFCN in 1800 band H => ARFCN in 1900 band */
5207 /*************************************************
5208 * Enhanced Measurement Report. TS 04.18 9.1.55. *
5209 *************************************************/
5215 guint8 RX_QUAL_FULL
;
5218 guint8 NBR_RCVD_BLOCKS
;
5219 } EMR_ServingCell_t
;
5224 guint8 MESSAGE_TYPE
;
5225 guint8 ShortLayer2_Header
;
5232 guint8 Exist_ServingCellData
;
5233 EMR_ServingCell_t ServingCellData
;
5235 guint8 Count_RepeatedInvalid_BSIC_Info
; /* Number of instances */
5236 RepeatedInvalid_BSIC_Info_t RepeatedInvalid_BSIC_Info
[INV_BSIC_LIST_LEN
];
5238 guint8 Exist_ReportBitmap
;
5239 guint8 Count_REPORTING_QUANTITY_Instances
; /* Number of instances */
5240 REPORTING_QUANTITY_Instance_t REPORTING_QUANTITY_Instances
[REPORT_QUANTITY_LIST_LEN
];
5242 } EnhancedMeasurementReport_t
;
5244 extern gint
f_k(gint k
, gint
*w
, gint range
);
5246 extern const guint8 gsm_rlcmac_gprs_cs_to_block_length
[];
5247 extern const guint8 gsm_rlcmac_egprs_header_type_to_dl_header_block_length
[];
5248 extern const guint8 gsm_rlcmac_egprs_header_type_to_ul_header_block_length
[];
5249 extern const guint8 gsm_rlcmac_egprs_mcs_to_data_block_length
[];
5251 #endif /* __PACKET_GSM_RLCMAC_H__ */