1 /* packet-gsm_rlcmac.c
2  * Routines for GSM RLC MAC control plane message dissection in wireshark.
3  * TS 44.060 and 24.008
4  * By Vincent Helfre, based on original code by Jari Sassi
5  * with the gracious authorization of STE
6  * Copyright (c) 2011 ST-Ericsson
7  *
8  * Wireshark - Network traffic analyzer
9  * By Gerald Combs <gerald@wireshark.org>
10  * Copyright 1998 Gerald Combs
11  *
12  * SPDX-License-Identifier: GPL-2.0-or-later
13  */
14 
15  /* Notes on the use of this dissector:-
16   *
17   * These dissectors should be called with data parameter pointing to a
18   * populated RlcMacPrivateData_t structure, this is needed to pass the Physical
19   * Layer Coding scheme and other parameters required for correct Data Block decoding.
20   * For backward compatibility, a NULL pointer causes the dissector to assume GPRS CS1.
21   *
22   * To dissect EGPRS blocks, the gsm_rlcmac_ul or gsm_rlcmac_dl dissector should be
23   * called 1, 2 or 3 times, for the header block and then each available data block,
24   * with the flags in data parameter indicating which block is to be dissected.
25   *
26   *   - The EGPRS Header Block occupies 4, 5 or 6 octets, the last octet is right-aligned
27   *     (as viewed in wireshark) with any null bits at the high bits of the last octet.
28   *   - Each EGPRS Data Block has 6 padding bits at the front, so there are then 2 data bits
29   *     followed by the rest of the data block (which is implicitly octet aligned).
30   *   - Either or both of the possible EGPRS Data Blocks may have been received
31   *     with bad CRC and this should be marked in the flags field to allow
32   *     upper layer decoding to ignore bad data blocks
33   *
34   * see packet-gsmtap.c for an example of the use of this dissector.
35   */
36 
37 #include "config.h"
38 
39 #include <epan/packet.h>
40 #include <epan/expert.h>
41 #include "packet-csn1.h"
42 #include "packet-gsm_a_rr.h"
43 
44 #include "packet-gsm_rlcmac.h"
45 #include "packet-gsm_a_common.h"
46 
47 void proto_register_gsm_rlcmac(void);
48 void proto_reg_handoff_gsm_rlcmac(void);
49 
50 static dissector_handle_t lte_rrc_dl_dcch_handle = NULL;
51 static dissector_handle_t rrc_irat_ho_to_utran_cmd_handle = NULL;
52 
53 /* private typedefs */
54 typedef struct
55 {
56   gint   offset;
57   guint8 li;
58 } length_indicator_t;
59 
60 /* local constant tables */
61 const guint8 gsm_rlcmac_gprs_cs_to_block_length[] = {
62   23, /* CS1 */
63   33, /* CS2 */
64   39, /* CS3 */
65   53  /* CS4 */
66 };
67 
68 const guint8 gsm_rlcmac_egprs_header_type_to_dl_header_block_length[] = {
69   5, /* RLCMAC_HDR_TYPE_1 */
70   4, /* RLCMAC_HDR_TYPE_2 */
71   4  /* RLCMAC_HDR_TYPE_3 */
72 };
73 
74 const guint8 gsm_rlcmac_egprs_header_type_to_ul_header_block_length[] = {
75   6, /* RLCMAC_HDR_TYPE_1 */
76   5, /* RLCMAC_HDR_TYPE_2 */
77   4  /* RLCMAC_HDR_TYPE_3 */
78 };
79 
80 #define MCS_INVALID 10 /* used for reserved CPS codepoints */
81 const guint8 gsm_rlcmac_egprs_mcs_to_data_block_length[] = {
82    0, /* MCS0 */
83   23, /* MCS1 */
84   29,
85   38,
86   45,
87   57,
88   75,
89   57,
90   69,
91   75, /* MCS9 */
92    0, /* MCS_INVALID */
93 };
94 
95 /* Initialize the protocol and registered fields
96 */
97 static int proto_gsm_rlcmac = -1;
98 static int ett_gsm_rlcmac  = -1;
99 static int ett_gsm_rlcmac_data  = -1;
100 static int ett_data_segments  = -1;
101 static int ett_gsm_rlcmac_container = -1;
102 
103 /* common MAC header IEs */
104 static int hf_usf = -1;
105 static int hf_ul_payload_type = -1;
106 static int hf_dl_payload_type = -1;
107 static int hf_dl_ec_payload_type = -1;
108 static int hf_rrbp = -1;
109 static int hf_ec_rrbp = -1;
110 static int hf_s_p = -1;
111 static int hf_es_p = -1;
112 static int hf_fbi = -1;
113 
114 /* common RLC IEs*/
115 static int hf_prach8_message_type_3 = -1;
116 static int hf_prach8_message_type_6 = -1;
117 static int hf_prach11_message_type_6 = -1;
118 static int hf_prach11_message_type_9 = -1;
119 static int hf_tlli = -1;
120 static int hf_global_tfi = -1;
121 static int hf_uplink_tfi = -1;
122 static int hf_downlink_tfi = -1;
123 static int hf_page_mode = -1;
124 static int hf_dl_persistent_level_exist = -1;
125 static int hf_dl_persistent_level = -1;
126 static int hf_bsn = -1;
127 static int hf_bsn2_offset = -1;
128 static int hf_e = -1;
129 static int hf_li= -1;
130 static int hf_pi= -1;
131 static int hf_ti= -1;
132 static int hf_rsb= -1;
133 static int hf_dl_spb= -1;
134 static int hf_ul_spb= -1;
135 static int hf_cps1= -1;
136 static int hf_cps2= -1;
137 static int hf_cps3= -1;
138 static int hf_me = -1;
139 
140 static int hf_countdown_value = -1;
141 static int hf_ul_data_si = -1;
142 
143 static int hf_dl_data_spare = -1;
144 static int hf_ul_data_spare = -1;
145 static int hf_pfi = -1;
146 
147 /* RLC/MAC Downlink control block header */
148 static int hf_dl_ctrl_rbsn = -1;
149 static int hf_dl_ctrl_rti = -1;
150 static int hf_dl_ctrl_fs = -1;
151 static int hf_dl_ctrl_ac = -1;
152 static int hf_dl_ctrl_pr = -1;
153 static int hf_dl_ec_ctrl_pr = -1;
154 static int hf_dl_ec_ctrl_pre = -1;
155 static int hf_dl_ctrl_d = -1;
156 
157 static int hf_dl_ctrl_rbsn_e = -1;
158 static int hf_dl_ctrl_fs_e = -1;
159 static int hf_dl_ctrl_spare = -1;
160 static int hf_startingtime_n32 = -1;
161 static int hf_startingtime_n51 = -1;
162 static int hf_startingtime_n26 = -1;
163 
164 /* common uplink ies */
165 static int hf_ul_message_type = -1;
166 static int hf_ul_mac_header_spare = -1;
167 static int hf_ul_retry = -1;
168 static int hf_additional_ms_rad_access_cap_id_choice = -1;
169 
170 /* < Global TFI IE > */
171 
172 /* < Starting Frame Number Description IE > */
173 static int hf_starting_frame_number = -1;
174 static int hf_starting_frame_number_k = -1;
175 
176 /* < Ack/Nack Description IE > */
177 static int hf_final_ack_indication = -1;
178 static int hf_starting_sequence_number = -1;
179 static int hf_received_block_bitmap = -1;
180 
181 /* < Packet Timing Advance IE > */
182 static int hf_timing_advance_value = -1;
183 static int hf_timing_advance_value_exist = -1;
184 static int hf_timing_advance_index = -1;
185 static int hf_timing_advance_index_exist = -1;
186 static int hf_timing_advance_timeslot_number = -1;
187 static int hf_ul_timing_advance_index_exist = -1;
188 static int hf_ul_timing_advance_index = -1;
189 static int hf_ul_timing_advance_timeslot_number = -1;
190 static int hf_dl_timing_advance_index_exist = -1;
191 static int hf_dl_timing_advance_index = -1;
192 static int hf_dl_timing_advance_timeslot_number = -1;
193 
194 /* < Power Control Parameters IE > */
195 static int hf_alpha = -1;
196 static int hf_gamma = -1;
197 static int hf_t_avg_w = -1;
198 static int hf_t_avg_t = -1;
199 static int hf_pc_meas_chan = -1;
200 static int hf_n_avg_i = -1;
201 
202 /* < Global Power Control Parameters IE > */
203 static int hf_global_power_control_parameters_pb = -1;
204 static int hf_global_power_control_parameters_int_meas_channel_list_avail = -1;
205 
206 /* < Global Packet Timing Advance IE > */
207 
208 /* < Channel Quality Report struct > */
209 static int hf_channel_quality_report_c_value = -1;
210 static int hf_channel_quality_report_rxqual = -1;
211 static int hf_channel_quality_report_sign_var = -1;
212 static int hf_channel_quality_report_slot0_i_level_tn = -1;
213 static int hf_channel_quality_report_slot1_i_level_tn = -1;
214 static int hf_channel_quality_report_slot2_i_level_tn = -1;
215 static int hf_channel_quality_report_slot3_i_level_tn = -1;
216 static int hf_channel_quality_report_slot4_i_level_tn = -1;
217 static int hf_channel_quality_report_slot5_i_level_tn = -1;
218 static int hf_channel_quality_report_slot6_i_level_tn = -1;
219 static int hf_channel_quality_report_slot7_i_level_tn = -1;
220 static int hf_channel_quality_report_slot0_i_level_tn_exist = -1;
221 static int hf_channel_quality_report_slot1_i_level_tn_exist = -1;
222 static int hf_channel_quality_report_slot2_i_level_tn_exist = -1;
223 static int hf_channel_quality_report_slot3_i_level_tn_exist = -1;
224 static int hf_channel_quality_report_slot4_i_level_tn_exist = -1;
225 static int hf_channel_quality_report_slot5_i_level_tn_exist = -1;
226 static int hf_channel_quality_report_slot6_i_level_tn_exist = -1;
227 static int hf_channel_quality_report_slot7_i_level_tn_exist = -1;
228 
229 
230 /* < EGPRS Ack/Nack Description > */
231 static int hf_egprs_acknack_beginning_of_window = -1;
232 static int hf_egprs_acknack_end_of_window = -1;
233 static int hf_egprs_acknack_crbb_length = -1;
234 static int hf_egprs_acknack_crbb_exist = -1;
235 static int hf_egprs_acknack_crbb_starting_color_code = -1;
236 static int hf_egprs_acknack_crbb_bitmap = -1;
237 static int hf_egprs_acknack_urbb_bitmap = -1;
238 static int hf_egprs_acknack_dissector = -1;
239 static int hf_egprs_acknack = -1;
240 
241 /* <P1 Rest Octets> */
242 
243 /* <P2 Rest Octets> */
244 /* static int hf_mobileallocationie_length = -1; */
245 /* static int hf_single_rf_channel_spare = -1; */
246 static int hf_arfcn = -1;
247 static int hf_maio = -1;
248 static int hf_hsn = -1;
249 #if 0
250 static int hf_channel_description_channel_type_and_tdma_offset = -1;
251 static int hf_channel_description_tn = -1;
252 static int hf_group_call_reference_value = -1;
253 static int hf_group_call_reference_sf = -1;
254 static int hf_group_call_reference_af = -1;
255 static int hf_group_call_reference_call_priority = -1;
256 static int hf_group_call_reference_ciphering_information = -1;
257 static int hf_nln_pch = -1;
258 static int hf_nln_status = -1;
259 static int hf_priority = -1;
260 static int hf_p1_rest_octets_packet_page_indication_1 = -1;
261 static int hf_p1_rest_octets_packet_page_indication_2 = -1;
262 static int hf_p2_rest_octets_cn3 = -1;
263 #endif
264 static int hf_nln = -1;
265 /* static int hf_p2_rest_octets_packet_page_indication_3 = -1; */
266 
267 /* <IA Rest Octets> */
268 static int hf_usf_bitmap = -1;
269 static int hf_usf_granularity = -1;
270 static int hf_p0 = -1;
271 static int hf_pr_mode = -1;
272 static int hf_nr_of_radio_blocks_allocated = -1;
273 static int hf_bts_pwr_ctrl_mode = -1;
274 /* static int hf_polling = -1; */
275 static int hf_egprs_channel_coding_command = -1;
276 static int hf_tlli_block_channel_coding = -1;
277 static int hf_bep_period2 = -1;
278 static int hf_resegment = -1;
279 static int hf_egprs_windowsize = -1;
280 /* static int hf_extendedra = -1; */
281 /* static int hf_ia_egprs_uniontype  = -1; */
282 /* static int hf_ia_freqparamsbeforetime_length = -1; */
283 static int hf_gprs_channel_coding_command = -1;
284 static int hf_link_quality_measurement_mode = -1;
285 static int hf_rlc_mode = -1;
286 /* static int hf_ta_valid = -1; */
287 static int hf_tqi = -1;
288 static int hf_packet_polling_id_choice = -1;
289 static int hf_mobile_bitlength = -1;
290 static int hf_mobile_bitmap = -1;
291 static int hf_mobile_union = -1;
292 static int hf_arfcn_index = -1;
293 static int hf_arfcn_index_exist = -1;
294 static int hf_gprs_mobile_allocation_rfl_number = -1;
295 static int hf_gprs_mobile_allocation_rfl_number_exist = -1;
296 
297 /* <Packet Polling Request> */
298 static int hf_dl_message_type = -1;
299 static int hf_dl_message_type_exist = -1;
300 
301 /* < SI 13 Rest Octets > */
302 static int hf_si_rest_bitmap = -1;
303 static int hf_si_length = -1;
304 static int hf_gprs_cell_options_nmo = -1;
305 static int hf_gprs_cell_options_t3168 = -1;
306 static int hf_gprs_cell_options_t3192 = -1;
307 static int hf_gprs_cell_options_drx_timer_max = -1;
308 static int hf_gprs_cell_options_access_burst_type = -1;
309 static int hf_ack_type = -1;
310 static int hf_padding = -1;
311 static int hf_gprs_cell_options_bs_cv_max = -1;
312 static int hf_gprs_cell_options_pan_dec = -1;
313 static int hf_gprs_cell_options_pan_inc = -1;
314 static int hf_gprs_cell_options_pan_max = -1;
315 static int hf_gprs_cell_options_pan_exist = -1;
316 static int hf_gprs_cell_options_extension_exist = -1;
317 static int hf_rac = -1;
318 static int hf_pbcch_not_present_spgc_ccch_sup = -1;
319 static int hf_pbcch_not_present_priority_access_thr = -1;
320 static int hf_pbcch_not_present_network_control_order = -1;
321 static int hf_pbcch_description_pb = -1;
322 static int hf_pbcch_description_tn = -1;
323 static int hf_pbcch_description_choice = -1;
324 static int hf_pbcch_present_psi1_repeat_period = -1;
325 static int hf_bcch_change_mark = -1;
326 static int hf_si_change_field = -1;
327 static int hf_si13_change_mark = -1;
328 static int hf_sgsnr = -1;
329 static int hf_si_status_ind = -1;
330 
331 /* < Packet TBF Release message content > */
332 static int hf_packetbf_release = -1;
333 static int hf_packetbf_padding = -1;
334 static int hf_packetbf_release_uplink_release = -1;
335 static int hf_packetbf_release_downlink_release = -1;
336 static int hf_packetbf_release_tbf_release_cause = -1;
337 
338 /* < Packet Control Acknowledgement message content > */
339 static int hf_packet_control_acknowledgement_additionsr6_ctrl_ack_extension = -1;
340 static int hf_packet_control_acknowledgement_additionsr5_tn_rrbp = -1;
341 static int hf_packet_control_acknowledgement_additionsr5_g_rnti_extension = -1;
342 static int hf_packet_control_acknowledgement_ctrl_ack = -1;
343 static int hf_packet_control_acknowledgement_ctrl_ack_exist = -1;
344 static int hf_packet_control_acknowledgement_additionsr6_ctrl_ack_exist = -1;
345 static int hf_packet_control_acknowledgement_additionsr5_tn_rrbp_exist = -1;
346 static int hf_packet_control_acknowledgement_additionsr5_g_rnti_extension_exist = -1;
347 static int hf_packet_control_acknowledgement_additionsr6_exist = -1;
348 
349 /* < Packet Downlink Dummy Control Block message content > */
350 
351 /* < Packet Uplink Dummy Control Block message content > */
352 #if 0
353 static int hf_receive_n_pdu_number_nsapi = -1;
354 static int hf_receive_n_pdu_number_value = -1;
355 #endif
356 
357 /* < MS Radio Access capability IE > */
358 static int hf_dtm_egprs_dtm_egprs_multislot_class = -1;
359 static int hf_dtm_egprs_highmultislotclass_dtm_egprs_highmultislotclass = -1;
360 static int hf_multislot_capability_hscsd_multislot_class = -1;
361 static int hf_multislot_capability_gprs_multislot_class = -1;
362 static int hf_multislot_capability_gprs_extended_dynamic_allocation_capability = -1;
363 static int hf_multislot_capability_sms_value = -1;
364 static int hf_multislot_capability_sm_value = -1;
365 static int hf_multislot_capability_ecsd_multislot_class = -1;
366 static int hf_multislot_capability_egprs_multislot_class = -1;
367 static int hf_multislot_capability_egprs_extended_dynamic_allocation_capability = -1;
368 static int hf_multislot_capability_dtm_gprs_multislot_class = -1;
369 static int hf_multislot_capability_single_slot_dtm = -1;
370 static int hf_dtm_egprs_dtm_egprs_multislot_class_exist = -1;
371 static int hf_dtm_egprs_highmultislotclass_dtm_egprs_highmultislotclass_exist = -1;
372 static int hf_multislot_capability_hscsd_multislot_class_exist = -1;
373 static int hf_multislot_capability_gprs_multislot_class_exist = -1;
374 static int hf_multislot_capability_sms_exist = -1;
375 static int hf_multislot_capability_ecsd_multislot_class_exist = -1;
376 static int hf_multislot_capability_egprs_multislot_class_exist = -1;
377 static int hf_multislot_capability_dtm_gprs_multislot_class_exist = -1;
378 
379 static int hf_content_rf_power_capability = -1;
380 static int hf_content_a5_bits = -1;
381 static int hf_content_es_ind = -1;
382 static int hf_content_ps = -1;
383 static int hf_content_vgcs = -1;
384 static int hf_content_vbs = -1;
385 static int hf_content_eight_psk_power_capability = -1;
386 static int hf_content_compact_interference_measurement_capability = -1;
387 static int hf_content_revision_level_indicator = -1;
388 static int hf_content_umts_fdd_radio_access_technology_capability = -1;
389 static int hf_content_umts_384_tdd_radio_access_technology_capability = -1;
390 static int hf_content_cdma2000_radio_access_technology_capability = -1;
391 static int hf_content_umts_128_tdd_radio_access_technology_capability = -1;
392 static int hf_a5_bits_exist = -1;
393 static int hf_multislot_capability_exist = -1;
394 static int hf_content_eight_psk_power_capability_exist = -1;
395 static int hf_content_extended_dtm_gprs_multislot_class_exist = -1;
396 static int hf_content_highmultislotcapability_exist = -1;
397 static int hf_content_geran_lu_modecapability_exist = -1;
398 static int hf_content_dtm_gprs_highmultislotclass_exist = -1;
399 static int hf_content_geran_feature_package_1 = -1;
400 static int hf_content_extended_dtm_gprs_multislot_class = -1;
401 static int hf_content_extended_dtm_egprs_multislot_class = -1;
402 static int hf_content_modulation_based_multislot_class_support = -1;
403 static int hf_content_highmultislotcapability = -1;
404 static int hf_content_geran_lu_modecapability = -1;
405 static int hf_content_gmsk_multislotpowerprofile = -1;
406 static int hf_content_eightpsk_multislotprofile = -1;
407 static int hf_content_multipletbf_capability = -1;
408 static int hf_content_downlinkadvancedreceiverperformance = -1;
409 static int hf_content_extendedrlc_mac_controlmessagesegmentionscapability = -1;
410 static int hf_content_dtm_enhancementscapability = -1;
411 static int hf_content_dtm_gprs_highmultislotclass = -1;
412 static int hf_content_ps_handovercapability = -1;
413 static int hf_content_dtm_handover_capability = -1;
414 static int hf_content_multislot_capability_reduction_for_dl_dual_carrier_exist = -1;
415 static int hf_content_multislot_capability_reduction_for_dl_dual_carrier = -1;
416 static int hf_content_dual_carrier_for_dtm = -1;
417 static int hf_content_flexible_timeslot_assignment = -1;
418 static int hf_content_gan_ps_handover_capability = -1;
419 static int hf_content_rlc_non_persistent_mode = -1;
420 static int hf_content_reduced_latency_capability = -1;
421 static int hf_content_uplink_egprs2 = -1;
422 static int hf_content_downlink_egprs2 = -1;
423 static int hf_content_eutra_fdd_support = -1;
424 static int hf_content_eutra_tdd_support = -1;
425 static int hf_content_geran_to_eutran_support_in_geran_ptm = -1;
426 static int hf_content_priority_based_reselection_support = -1;
427 static int hf_additional_accessechnologies_struct_t_access_technology_type = -1;
428 static int hf_additional_accessechnologies_struct_t_gmsk_power_class = -1;
429 static int hf_additional_accessechnologies_struct_t_eight_psk_power_class = -1;
430 static int hf_additional_access_technology_exist = -1;
431 /* static int hf_ms_radio_access_capability_iei = -1; */
432 /* static int hf_ms_radio_access_capability_length = -1; */
433 static int hf_content_dissector = -1;
434 static int hf_additional_access_dissector = -1;
435 static int hf_ms_ra_capability_value_choice = -1;
436 static int hf_ms_ra_capability_value = -1;
437 
438 /* < MS Classmark 3 IE > */
439 #if 0
440 static int hf_arc_a5_bits = -1;
441 static int hf_multiband_a5_bits = -1;
442 static int hf_arc_arc2_spare = -1;
443 static int hf_arc_arc1 = -1;
444 static int hf_edge_rf_pwr_edge_rf_pwrcap1 = -1;
445 static int hf_edge_rf_pwr_edge_rf_pwrcap2 = -1;
446 static int hf_ms_class3_unpacked_spare1 = -1;
447 static int hf_ms_class3_unpacked_r_gsm_arc = -1;
448 static int hf_ms_class3_unpacked_multislotclass = -1;
449 static int hf_ms_class3_unpacked_ucs2 = -1;
450 static int hf_ms_class3_unpacked_extendedmeasurementcapability = -1;
451 static int hf_ms_class3_unpacked_sms_value = -1;
452 static int hf_ms_class3_unpacked_sm_value = -1;
453 static int hf_ms_class3_unpacked_ms_positioningmethod = -1;
454 static int hf_ms_class3_unpacked_edge_multislotclass = -1;
455 static int hf_ms_class3_unpacked_modulationcapability = -1;
456 static int hf_ms_class3_unpacked_gsm400_bands = -1;
457 static int hf_ms_class3_unpacked_gsm400_arc = -1;
458 static int hf_ms_class3_unpacked_gsm850_arc = -1;
459 static int hf_ms_class3_unpacked_pcs1900_arc = -1;
460 static int hf_ms_class3_unpacked_umts_fdd_radio_access_technology_capability = -1;
461 static int hf_ms_class3_unpacked_umts_384_tdd_radio_access_technology_capability = -1;
462 static int hf_ms_class3_unpacked_cdma2000_radio_access_technology_capability = -1;
463 static int hf_ms_class3_unpacked_dtm_gprs_multislot_class = -1;
464 static int hf_ms_class3_unpacked_single_slot_dtm = -1;
465 static int hf_ms_class3_unpacked_gsm_band = -1;
466 static int hf_ms_class3_unpacked_gsm_700_associated_radio_capability = -1;
467 static int hf_ms_class3_unpacked_umts_128_tdd_radio_access_technology_capability = -1;
468 static int hf_ms_class3_unpacked_geran_feature_package_1 = -1;
469 static int hf_ms_class3_unpacked_extended_dtm_gprs_multislot_class = -1;
470 static int hf_ms_class3_unpacked_extended_dtm_egprs_multislot_class = -1;
471 static int hf_ms_class3_unpacked_highmultislotcapability = -1;
472 static int hf_ms_class3_unpacked_geran_lu_modecapability = -1;
473 static int hf_ms_class3_unpacked_geran_featurepackage_2 = -1;
474 static int hf_ms_class3_unpacked_gmsk_multislotpowerprofile = -1;
475 static int hf_ms_class3_unpacked_eightpsk_multislotprofile = -1;
476 static int hf_ms_class3_unpacked_tgsm_400_bandssupported = -1;
477 static int hf_ms_class3_unpacked_tgsm_400_associatedradiocapability = -1;
478 static int hf_ms_class3_unpacked_tgsm_900_associatedradiocapability = -1;
479 static int hf_ms_class3_unpacked_downlinkadvancedreceiverperformance = -1;
480 static int hf_ms_class3_unpacked_dtm_enhancementscapability = -1;
481 static int hf_ms_class3_unpacked_dtm_gprs_highmultislotclass = -1;
482 static int hf_ms_class3_unpacked_offsetrequired = -1;
483 static int hf_ms_class3_unpacked_repeatedsacch_capability = -1;
484 static int hf_ms_class3_unpacked_spare2 = -1;
485 #endif
486 static int hf_channel_request_description_peak_throughput_class = -1;
487 static int hf_channel_request_description_radio_priority = -1;
488 static int hf_channel_request_description_llc_pdu_type = -1;
489 static int hf_channel_request_description_rlc_octet_count = -1;
490 static int hf_packet_resource_request_id_choice = -1;
491 static int hf_bep_measurementreport_mean_bep_exist = -1;
492 static int hf_bep_measurementreport_mean_bep_union = -1;
493 static int hf_interferencemeasurementreport_i_level_exist = -1;
494 static int hf_bep_measurements_exist = -1;
495 static int hf_interference_measurements_exist = -1;
496 static int hf_egprs_bep_linkqualitymeasurements_mean_bep_gmsk_exist = -1;
497 static int hf_egprs_bep_linkqualitymeasurements_mean_bep_8psk_exist = -1;
498 static int hf_egprs_bep_measurements_exist = -1;
499 static int hf_egprs_timeslotlinkquality_measurements_exist = -1;
500 static int hf_pfi_exist = -1;
501 
502 /* < Packet Resource Request message content > */
503 static int hf_bep_measurementreport_mean_bep_gmsk = -1;
504 static int hf_bep_measurementreport_mean_bep_8psk = -1;
505 static int hf_interferencemeasurementreport_i_level = -1;
506 static int hf_egprs_bep_linkqualitymeasurements_mean_bep_gmsk = -1;
507 static int hf_egprs_bep_linkqualitymeasurements_cv_bep_gmsk = -1;
508 static int hf_egprs_bep_linkqualitymeasurements_mean_bep_8psk = -1;
509 static int hf_egprs_bep_linkqualitymeasurements_cv_bep_8psk = -1;
510 static int hf_prr_additionsr99_ms_rac_additionalinformationavailable = -1;
511 static int hf_prr_additionsr99_retransmissionofprr = -1;
512 static int hf_packet_resource_request_access_type = -1;
513 static int hf_packet_resource_request_change_mark = -1;
514 static int hf_packet_resource_request_c_value = -1;
515 static int hf_packet_resource_request_sign_var = -1;
516 static int hf_packet_resource_request_access_type_exist = -1;
517 static int hf_ms_radio_access_capability_exist = -1;
518 static int hf_packet_resource_request_change_mark_exist = -1;
519 static int hf_packet_resource_request_sign_var_exist = -1;
520 static int hf_additionsr99_exist = -1;
521 static int hf_egprs_prr_additionsr5_g_rnti_exist = -1;
522 static int hf_egprs_prr_additionsr5_g_rnti_extension = -1;
523 static int hf_egprs_prr_additionsr5_rb_id = -1;
524 static int hf_egprs_prr_additionsr5_radio_priority = -1;
525 static int hf_egprs_prr_additionsr5_rlc_block_count_exist = -1;
526 static int hf_egprs_prr_additionsr5_rlc_block_count = -1;
527 static int hf_iu_mode_chrequest_exist = -1;
528 static int hf_egprs_prr_additionsr6_lcc_pdu_exist = -1;
529 static int hf_egprs_prr_additionsr6_lcc_pdu = -1;
530 static int hf_Ext_Channel_Request_desc_exist = -1;
531 static int hf_egprs_prr_additionsr7_gmsk_mean_bep_exist = -1;
532 static int hf_egprs_prr_additionsr7_gmsk_mean_bep = -1;
533 static int hf_egprs_prr_additionsr7_gmsk_cv_bep = -1;
534 static int hf_egprs_prr_additionsr7_8psk_mean_bep_exist = -1;
535 static int hf_egprs_prr_additionsr7_8psk_mean_bep = -1;
536 static int hf_egprs_prr_additionsr7_8psk_cv_bep = -1;
537 static int hf_egprs_prr_additionsr7_qpsk_mean_bep_exist = -1;
538 static int hf_egprs_prr_additionsr7_qpsk_mean_bep = -1;
539 static int hf_egprs_prr_additionsr7_qpsk_cv_bep = -1;
540 static int hf_egprs_prr_additionsr7_16qam_nsr_mean_bep_exist = -1;
541 static int hf_egprs_prr_additionsr7_16qam_nsr_mean_bep = -1;
542 static int hf_egprs_prr_additionsr7_16qam_nsr_cv_bep = -1;
543 static int hf_egprs_prr_additionsr7_32qam_nsr_mean_bep_exist = -1;
544 static int hf_egprs_prr_additionsr7_32qam_nsr_mean_bep = -1;
545 static int hf_egprs_prr_additionsr7_32qam_nsr_cv_bep = -1;
546 static int hf_egprs_prr_additionsr7_16qam_hsr_mean_bep_exist = -1;
547 static int hf_egprs_prr_additionsr7_16qam_hsr_mean_bep = -1;
548 static int hf_egprs_prr_additionsr7_16qam_hsr_cv_bep = -1;
549 static int hf_egprs_prr_additionsr7_32qam_hsr_mean_bep_exist = -1;
550 static int hf_egprs_prr_additionsr7_32qam_hsr_mean_bep = -1;
551 static int hf_egprs_prr_additionsr7_32qam_hsr_cv_bep = -1;
552 static int hf_bep_measurementreport_reported_modulation = -1;
553 static int hf_bep_measurementreport_mean_bep_tn = -1;
554 static int hf_prr_additionsr99_additionsr5_exist = -1;
555 static int hf_egprs_prr_additionsr5_hfn_lsb_exist = -1;
556 static int hf_egprs_prr_additionsr5_hfn_lsb = -1;
557 static int hf_prr_additionsr5_additionsr6_exist = -1;
558 static int hf_prr_additionsr6_additionsr7_exist = -1;
559 static int hf_prr_additionsr7_early_tbf_establishment = -1;
560 static int hf_egprs_bep_measurements_type2_exist = -1;
561 static int hf_egprs_timeslotlinkquality_measurements_type2_exist = -1;
562 static int hf_prr_additionsr7_additionsr10_exist = -1;
563 static int hf_prr_additionsr10_low_access_priority_signalling = -1;
564 static int hf_prr_additionsr10_additionsr12_exist = -1;
565 static int hf_egprs_downlink_etfi_exist = -1;
566 static int hf_prr_additionsr12_downlink_etfi = -1;
567 
568 /* < Packet Mobile TBF Status message content > */
569 static int hf_packet_mobile_tbf_status_tbf_cause = -1;
570 
571 /* < Packet PSI Status message content > */
572 static int hf_psi_message_psix_change_mark = -1;
573 static int hf_additional_msg_type = -1;
574 static int hf_packet_psi_status_pbcch_change_mark = -1;
575 static int hf_psi_message_psix_count_instance_bitmap_exist = -1;
576 static int hf_psi_message_psix_count = -1;
577 static int hf_psi_message_instance_bitmap = -1;
578 static int hf_psi_message_exist = -1;
579 static int hf_psi_message_list = -1;
580 
581 /* < Packet SI Status message content > */
582 static int hf_si_message_type = -1;
583 static int hf_si_message_mess_rec = -1;
584 static int hf_si_message_list_exist = -1;
585 static int hf_si_message_list = -1;
586 
587 /* < Packet Downlink Ack/Nack message content > */
588 
589 /* < EGPRS Packet Downlink Ack/Nack message content > */
590 static int hf_egprs_channelqualityreport_c_value = -1;
591 static int hf_egprs_pd_acknack_ms_out_of_memory = -1;
592 static int hf_fddarget_cell_t_fdd_arfcn = -1;
593 static int hf_fddarget_cell_t_diversity = -1;
594 static int hf_fddarget_cell_t_bandwith_fdd = -1;
595 static int hf_fddarget_cell_t_scrambling_code = -1;
596 static int hf_tddarget_cell_t_tdd_arfcn = -1;
597 static int hf_tddarget_cell_t_diversity = -1;
598 static int hf_tddarget_cell_t_bandwith_tdd = -1;
599 static int hf_tddarget_cell_t_cell_parameter = -1;
600 static int hf_tddarget_cell_t_sync_case_tstd = -1;
601 
602 
603 /* < Packet Cell Change Failure message content > */
604 static int hf_packet_cell_change_failure_bsic = -1;
605 static int hf_packet_cell_change_failure_cause = -1;
606 static int hf_utran_csg_target_cell_ci = -1;
607 static int hf_eutran_csg_target_cell_ci = -1;
608 static int hf_eutran_csg_target_cell_tac = -1;
609 
610 
611 /* < Packet Uplink Ack/Nack message content > */
612 static int hf_pu_acknack_gprs_additionsr99_tbf_est = -1;
613 static int hf_pu_acknack_gprs_fixedallocationdummy = -1;
614 static int hf_pu_acknack_egprs_00_pre_emptive_transmission = -1;
615 static int hf_pu_acknack_egprs_00_prr_retransmission_request = -1;
616 static int hf_pu_acknack_egprs_00_arac_retransmission_request = -1;
617 static int hf_pu_acknack_egprs_00_tbf_est = -1;
618 static int hf_packet_uplink_id_choice = -1;
619 static int hf_packet_extended_timing_advance = -1;
620 
621 /* < Packet Uplink Assignment message content > */
622 static int hf_change_mark_change_mark_1 = -1;
623 static int hf_change_mark_change_mark_2 = -1;
624 static int hf_indirect_encoding_ma_number = -1;
625 static int hf_ma_frequency_list_length = -1;
626 static int hf_ma_frequency_list = -1;
627 static int hf_packet_request_reference_random_access_information = -1;
628 static int hf_packet_request_reference_frame_number = -1;
629 static int hf_extended_dynamic_allocation = -1;
630 static int hf_ppc_timing_advance_id_choice = -1;
631 static int hf_rlc_data_blocks_granted = -1;
632 static int hf_single_block_allocation_timeslot_number = -1;
633 /* static int hf_dtm_single_block_allocation_timeslot_number = -1; */
634 static int hf_compact_reducedma_bitmaplength = -1;
635 static int hf_compact_reducedma_bitmap = -1;
636 static int hf_multiblock_allocation_timeslot_number = -1;
637 static int hf_pua_egprs_00_arac_retransmission_request = -1;
638 static int hf_pua_egprs_00_access_tech_type = -1;
639 static int hf_pua_egprs_00_access_tech_type_exist = -1;
640 
641 /* < Packet Downlink Assignment message content > */
642 static int hf_measurement_mapping_struct_measurement_interval = -1;
643 static int hf_measurement_mapping_struct_measurement_bitmap = -1;
644 static int hf_packet_downlink_id_choice = -1;
645 static int hf_mac_mode = -1;
646 static int hf_control_ack = -1;
647 static int hf_dl_timeslot_allocation = -1;
648 /* static int hf_dtm_channel_request_description_dtm_pkt_est_cause = -1; */
649 
650 /* < Packet Paging Request message content > */
651 static int hf_mobile_identity_length_of_mobile_identity_contents = -1;
652 static int hf_page_request_for_rr_conn_channel_needed = -1;
653 static int hf_page_request_for_rr_conn_emlpp_priority = -1;
654 static int hf_page_request_ptmsi = -1;
655 static int hf_page_request_for_rr_conn_tmsi = -1;
656 static int hf_packet_pdch_release_timeslots_available = -1;
657 
658 /* < Packet Power Control/Timing Advance message content > */
659 
660 /* < Packet Queueing Notification message content > */
661 
662 /* < Packet Timeslot Reconfigure message content > */
663 
664 /* < Packet PRACH Parameters message content > */
665 static int hf_prach_acc_contr_class = -1;
666 static int hf_prach_max_retrans = -1;
667 static int hf_prach_control_s = -1;
668 static int hf_prach_control_tx_int = -1;
669 static int hf_cell_allocation_rfl_number = -1;
670 static int hf_cell_allocation_rfl_number_exist = -1;
671 static int hf_hcs_priority_class = -1;
672 static int hf_hcs_hcs_thr = -1;
673 static int hf_location_repeat_pbcch_location = -1;
674 static int hf_location_repeat_psi1_repeat_period = -1;
675 static int hf_si13_pbcch_location_si13_location = -1;
676 static int hf_cell_selection_bsic = -1;
677 static int hf_cell_bar_access_2 = -1;
678 static int hf_cell_selection_same_ra_as_serving_cell = -1;
679 static int hf_cell_selection_gprs_rxlev_access_min = -1;
680 static int hf_cell_selection_gprs_ms_txpwr_max_cch = -1;
681 static int hf_cell_selection_gprs_temporary_offset = -1;
682 static int hf_cell_selection_gprs_penalty_time = -1;
683 static int hf_cell_selection_gprs_reselect_offset = -1;
684 static int hf_cell_selection_param_with_freqdiff = -1;
685 static int hf_neighbourcellparameters_start_frequency = -1;
686 static int hf_neighbourcellparameters_nr_of_remaining_cells = -1;
687 static int hf_neighbourcellparameters_freq_diff_length = -1;
688 static int hf_cell_selection_2_same_ra_as_serving_cell = -1;
689 static int hf_cell_selection_2_gprs_rxlev_access_min = -1;
690 static int hf_cell_selection_2_gprs_ms_txpwr_max_cch = -1;
691 static int hf_cell_selection_2_gprs_temporary_offset = -1;
692 static int hf_cell_selection_2_gprs_penalty_time = -1;
693 static int hf_cell_selection_2_gprs_reselect_offset = -1;
694 
695 /* < Packet Access Reject message content > */
696 static int hf_reject_id_choice = -1;
697 static int hf_reject_wait_indication = -1;
698 static int hf_reject_wait_indication_size = -1;
699 static int hf_packet_cell_change_order_id_choice = -1;
700 
701 /* < Packet Cell Change Order message content > */
702 /* static int hf_h_freqbsiccell_bsic = -1; */
703 static int hf_cellselectionparamswithfreqdiff_bsic = -1;
704 static int hf_add_frequency_list_start_frequency = -1;
705 static int hf_add_frequency_list_bsic = -1;
706 static int hf_add_frequency_list_nr_of_frequencies = -1;
707 static int hf_add_frequency_list_freq_diff_length = -1;
708 static int hf_nc_frequency_list_nr_of_removed_freq = -1;
709 static int hf_removed_freq_index_removed_freq_index = -1;
710 static int hf_nc_measurement_parameters_network_control_order = -1;
711 static int hf_nc_measurement_parameters_nc_non_drx_period = -1;
712 static int hf_nc_measurement_parameters_nc_reporting_period_i = -1;
713 static int hf_nc_measurement_parameters_nc_reporting_period_t = -1;
714 static int hf_nc_measurement_parameters_with_frequency_list_network_control_order = -1;
715 static int hf_nc_measurement_parameters_with_frequency_list_nc_non_drx_period = -1;
716 static int hf_nc_measurement_parameters_with_frequency_list_nc_reporting_period_i = -1;
717 static int hf_nc_measurement_parameters_with_frequency_list_nc_reporting_period_t = -1;
718 
719 /* < Packet Cell Change Order message contents > */
720 static int hf_ba_ind_ba_ind = -1;
721 static int hf_ba_ind_ba_ind_3g = -1;
722 static int hf_gprsreportpriority_number_cells = -1;
723 static int hf_gprsreportpriority_report_priority = -1;
724 static int hf_offsetthreshold_reporting_offset = -1;
725 static int hf_offsetthreshold_reporting_threshold = -1;
726 static int hf_gprsmeasurementparams_pmo_pcco_multi_band_reporting = -1;
727 static int hf_gprsmeasurementparams_pmo_pcco_serving_band_reporting = -1;
728 static int hf_gprsmeasurementparams_pmo_pcco_scale_ord = -1;
729 #if 0
730 static int hf_gprsmeasurementparams3g_qsearch_p = -1;
731 static int hf_gprsmeasurementparams3g_searchprio3g = -1;
732 static int hf_gprsmeasurementparams3g_repquantfdd = -1;
733 static int hf_gprsmeasurementparams3g_multiratreportingfdd = -1;
734 static int hf_gprsmeasurementparams3g_reportingoffsetfdd = -1;
735 static int hf_gprsmeasurementparams3g_reportingthresholdfdd = -1;
736 static int hf_gprsmeasurementparams3g_multiratreportingtdd = -1;
737 static int hf_gprsmeasurementparams3g_reportingoffsettdd = -1;
738 static int hf_gprsmeasurementparams3g_reportingthresholdtdd = -1;
739 #endif
740 static int hf_multiratparams3g_multiratreporting = -1;
741 static int hf_enh_gprsmeasurementparams3g_pmo_qsearch_p = -1;
742 static int hf_enh_gprsmeasurementparams3g_pmo_searchprio3g = -1;
743 static int hf_enh_gprsmeasurementparams3g_pmo_repquantfdd = -1;
744 static int hf_enh_gprsmeasurementparams3g_pmo_multiratreportingfdd = -1;
745 static int hf_enh_gprsmeasurementparams3g_pcco_qsearch_p = -1;
746 static int hf_enh_gprsmeasurementparams3g_pcco_searchprio3g = -1;
747 static int hf_enh_gprsmeasurementparams3g_pcco_repquantfdd = -1;
748 static int hf_enh_gprsmeasurementparams3g_pcco_multiratreportingfdd = -1;
749 static int hf_n2_removed_3gcell_index = -1;
750 static int hf_n2_cell_diff_length_3g = -1;
751 static int hf_n2_cell_diff = -1;
752 static int hf_n2_count = -1;
753 static int hf_n1_count = -1;
754 static int hf_cdma2000_description_complete_this = -1;
755 static int hf_utran_fdd_neighbourcells_zero = -1;
756 static int hf_utran_fdd_neighbourcells_uarfcn = -1;
757 static int hf_utran_fdd_neighbourcells_indic0 = -1;
758 static int hf_utran_fdd_neighbourcells_nrofcells = -1;
759 static int hf_utran_fdd_neighbourcells_cellinfo = -1;
760 static int hf_utran_fdd_description_bandwidth = -1;
761 static int hf_utran_tdd_neighbourcells_zero = -1;
762 static int hf_utran_tdd_neighbourcells_uarfcn = -1;
763 static int hf_utran_tdd_neighbourcells_indic0 = -1;
764 static int hf_utran_tdd_neighbourcells_nrofcells = -1;
765 static int hf_utran_tdd_description_bandwidth = -1;
766 static int hf_index_start_3g = -1;
767 static int hf_absolute_index_start_emr = -1;
768 static int hf_psi3_change_mark = -1;
769 static int hf_enh_measurement_parameters_pmo_pmo_ind = -1;
770 static int hf_enh_measurement_parameters_pmo_report_type = -1;
771 static int hf_enh_measurement_parameters_pmo_reporting_rate = -1;
772 static int hf_enh_measurement_parameters_pmo_invalid_bsic_reporting = -1;
773 static int hf_enh_measurement_parameters_pcco_pmo_ind = -1;
774 static int hf_enh_measurement_parameters_pcco_report_type = -1;
775 static int hf_enh_measurement_parameters_pcco_reporting_rate = -1;
776 static int hf_enh_measurement_parameters_pcco_invalid_bsic_reporting = -1;
777 static int hf_ccn_support_description_number_cells = -1;
778 static int hf_ccn_supported = -1;
779 static int hf_lu_modecellselectionparameters_cell_bar_qualify_3 = -1;
780 static int hf_lu_modeneighbourcellparams_nr_of_frequencies = -1;
781 static int hf_lu_modeonlycellselection_cell_bar_qualify_3 = -1;
782 static int hf_lu_modeonlycellselection_same_ra_as_serving_cell = -1;
783 static int hf_lu_modeonlycellselection_gprs_rxlev_access_min = -1;
784 static int hf_lu_modeonlycellselection_gprs_ms_txpwr_max_cch = -1;
785 static int hf_lu_modeonlycellselection_gprs_temporary_offset = -1;
786 static int hf_lu_modeonlycellselection_gprs_penalty_time = -1;
787 static int hf_lu_modeonlycellselection_gprs_reselect_offset = -1;
788 static int hf_lu_modeonlycellselectionparamswithfreqdiff = -1;
789 static int hf_lu_modeonlycellselectionparamswithfreqdiff_bsic = -1;
790 static int hf_add_lu_modeonlyfrequencylist_start_frequency = -1;
791 static int hf_add_lu_modeonlyfrequencylist_bsic = -1;
792 static int hf_add_lu_modeonlyfrequencylist_nr_of_frequencies = -1;
793 static int hf_add_lu_modeonlyfrequencylist_freq_diff_length = -1;
794 static int hf_gprs_additionalmeasurementparams3g_fdd_reporting_threshold_2 = -1;
795 static int hf_servingcellpriorityparametersdescription_geran_priority = -1;
796 static int hf_servingcellpriorityparametersdescription_thresh_priority_search = -1;
797 static int hf_servingcellpriorityparametersdescription_thresh_gsm_low = -1;
798 static int hf_servingcellpriorityparametersdescription_h_prio = -1;
799 static int hf_servingcellpriorityparametersdescription_t_reselection = -1;
800 static int hf_repeatedutran_priorityparameters_utran_freq_index = -1;
801 static int hf_repeatedutran_priorityparameters_utran_freq_index_exist = -1;
802 static int hf_repeatedutran_priorityparameters_utran_priority = -1;
803 static int hf_repeatedutran_priorityparameters_thresh_utran_high = -1;
804 static int hf_repeatedutran_priorityparameters_thresh_utran_low = -1;
805 static int hf_repeatedutran_priorityparameters_utran_qrxlevmin = -1;
806 static int hf_priorityparametersdescription3g_pmo_default_utran_priority = -1;
807 static int hf_priorityparametersdescription3g_pmo_default_thresh_utran = -1;
808 static int hf_priorityparametersdescription3g_pmo_default_utran_qrxlevmin = -1;
809 static int hf_eutran_reportinghreshold_offset_t_eutran_fdd_reporting_threshold = -1;
810 static int hf_eutran_reportinghreshold_offset_t_eutran_fdd_reporting_threshold_2 = -1;
811 static int hf_eutran_reportinghreshold_offset_t_eutran_fdd_reporting_offset = -1;
812 static int hf_eutran_reportinghreshold_offset_t_eutran_tdd_reporting_threshold = -1;
813 static int hf_eutran_reportinghreshold_offset_t_eutran_tdd_reporting_threshold_2 = -1;
814 static int hf_eutran_reportinghreshold_offset_t_eutran_tdd_reporting_offset = -1;
815 static int hf_gprs_eutran_measurementparametersdescription_qsearch_p_eutran = -1;
816 static int hf_gprs_eutran_measurementparametersdescription_eutran_rep_quant = -1;
817 static int hf_gprs_eutran_measurementparametersdescription_eutran_multirat_reporting = -1;
818 static int hf_repeatedeutran_cells_earfcn = -1;
819 static int hf_repeatedeutran_cells_measurementbandwidth = -1;
820 static int hf_repeatedeutran_neighbourcells_eutran_priority = -1;
821 static int hf_repeatedeutran_neighbourcells_thresh_eutran_high = -1;
822 static int hf_repeatedeutran_neighbourcells_thresh_eutran_low = -1;
823 static int hf_repeatedeutran_neighbourcells_eutran_qrxlevmin = -1;
824 static int hf_pcid_pattern_pcid_pattern_length = -1;
825 static int hf_pcid_pattern_pcid_pattern = -1;
826 static int hf_pcid_pattern_pcid_pattern_sense = -1;
827 static int hf_pcid_group_ie_pcid_bitmap_group = -1;
828 static int hf_pcid_group_ie_pcid = -1;
829 static int hf_pcid_group_ie_pcid_exist = -1;
830 static int hf_eutran_frequency_index_eutran_frequency_index = -1;
831 static int hf_eutran_parametersdescription_pmo_eutran_ccn_active = -1;
832 static int hf_psc_pattern_sense = -1;
833 static int hf_psc_pattern_length = -1;
834 static int hf_psc_pattern = -1;
835 static int hf_psc_group_psc = -1;
836 static int hf_psc_group_psc_exist = -1;
837 static int hf_three3_csg_description_body_utran_freq_index = -1;
838 static int hf_three3_csg_description_body_utran_freq_index_exist = -1;
839 static int hf_eutran_csg_description_body_eutran_freq_index = -1;
840 static int hf_eutran_csg_description_body_eutran_freq_index_exist = -1;
841 static int hf_meas_ctrl_param_meas_ctrl_eutran = -1;
842 static int hf_meas_ctrl_param_eutran_freq_idx = -1;
843 static int hf_meas_ctrl_param_eutran_freq_idx_exist = -1;
844 static int hf_meas_ctrl_param_meas_ctrl_utran = -1;
845 static int hf_meas_ctrl_param_utran_freq_idx = -1;
846 static int hf_meas_ctrl_param_utran_freq_idx_exist = -1;
847 static int hf_rept_eutran_enh_cell_resel_param_eutran_qmin = -1;
848 static int hf_rept_eutran_enh_cell_resel_param_eutran_freq_index = -1;
849 static int hf_rept_eutran_enh_cell_resel_param_eutran_freq_index_exist = -1;
850 static int hf_rept_eutran_enh_cell_resel_param_thresh_eutran_high_q = -1;
851 static int hf_rept_eutran_enh_cell_resel_param_thresh_eutran_low_q = -1;
852 static int hf_rept_eutran_enh_cell_resel_param_thresh_eutran_qqualmin = -1;
853 static int hf_rept_eutran_enh_cell_resel_param_thresh_eutran_rsrpmin = -1;
854 
855 static int hf_utran_csg_fdd_reporting_threshold = -1;
856 static int hf_utran_csg_fdd_reporting_threshold2 = -1;
857 static int hf_utran_csg_tdd_reporting_threshold = -1;
858 static int hf_eutran_csg_fdd_reporting_threshold = -1;
859 static int hf_eutran_csg_fdd_reporting_threshold2 = -1;
860 static int hf_eutran_csg_tdd_reporting_threshold = -1;
861 static int hf_eutran_csg_tdd_reporting_threshold2 = -1;
862 
863 
864 static int hf_pmo_additionsr8_ba_ind_3g = -1;
865 static int hf_pmo_additionsr8_pmo_ind = -1;
866 static int hf_pmo_additionsr7_reporting_offset_700 = -1;
867 static int hf_pmo_additionsr7_reporting_threshold_700 = -1;
868 static int hf_pmo_additionsr7_reporting_offset_810 = -1;
869 static int hf_pmo_additionsr7_reporting_threshold_810 = -1;
870 static int hf_pmo_additionsr6_ccn_active_3g = -1;
871 static int hf_pcco_additionsr6_ccn_active_3g = -1;
872 static int hf_pmo_additionsr5_grnti = -1;
873 static int hf_pcco_additionsr5_grnti = -1;
874 static int hf_pmo_additionsr4_ccn_active = -1;
875 static int hf_pcco_additionsr4_ccn_active = -1;
876 static int hf_pcco_additionsr4_container_id = -1;
877 static int hf_lsa_id_info_element_lsa_id = -1;
878 static int hf_lsa_id_info_element_shortlsa_id = -1;
879 static int hf_lsa_parameters_nr_of_freq_or_cells = -1;
880 static int hf_target_cell_gsm_immediate_rel = -1;
881 static int hf_target_cell_gsm_bsic = -1;
882 static int hf_target_cell_3g_immediate_rel = -1;
883 static int hf_target_cell_eutran_earfcn = -1;
884 static int hf_target_cell_eutran_measurement_bandwidth = -1;
885 static int hf_target_cell_eutran_pl_cell_id = -1;
886 static int hf_idvd_utran_priority_fdd_arfcn = -1;
887 static int hf_idvd_utran_priority_fdd_arfcn_exist = -1;
888 static int hf_idvd_utran_priority_tdd_arfcn = -1;
889 static int hf_idvd_utran_priority_tdd_arfcn_exist = -1;
890 static int hf_idvd_default_utran_priority = -1;
891 static int hf_idvd_utran_priority = -1;
892 static int hf_idvd_default_eutran_priority = -1;
893 static int hf_idvd_eutran_priority = -1;
894 static int hf_idvd_eutran_priority_earfcn = -1;
895 static int hf_idvd_eutran_priority_earfcn_exist = -1;
896 static int hf_idvd_prio_geran_priority = -1;
897 static int hf_idvd_prio_t3230_timeout_value = -1;
898 static int hf_target_cell_g_rnti_ext = -1;
899 
900 
901 
902 /* < Packet (Enhanced) Measurement Report message contents > */
903 static int hf_ba_used_ba_used = -1;
904 static int hf_ba_used_ba_used_3g = -1;
905 static int hf_serving_cell_data_rxlev_serving_cell = -1;
906 static int hf_nc_measurements_frequency_n = -1;
907 static int hf_nc_measurements_bsic_n = -1;
908 static int hf_nc_measurements_rxlev_n = -1;
909 static int hf_repeatedinvalid_bsic_info_bcch_freq_n = -1;
910 static int hf_repeatedinvalid_bsic_info_bsic_n = -1;
911 static int hf_repeatedinvalid_bsic_info_rxlev_n = -1;
912 static int hf_reporting_quantity_instance_reporting_quantity = -1;
913 static int hf_pemr_additionsr8_bitmap_length = -1;
914 static int hf_nc_measurement_report_nc_mode = -1;
915 static int hf_nc_measurement_report_number_of_nc_measurements = -1;
916 static int hf_enh_nc_measurement_report_nc_mode = -1;
917 static int hf_enh_nc_measurement_report_pmo_used = -1;
918 static int hf_enh_nc_measurement_report_bsic_seen = -1;
919 static int hf_enh_nc_measurement_report_scale = -1;
920 static int hf_ext_measurement_report_ext_reporting_type = -1;
921 static int hf_ext_measurement_report_slot0_i_level = -1;
922 static int hf_ext_measurement_report_slot1_i_level = -1;
923 static int hf_ext_measurement_report_slot2_i_level = -1;
924 static int hf_ext_measurement_report_slot3_i_level = -1;
925 static int hf_ext_measurement_report_slot4_i_level = -1;
926 static int hf_ext_measurement_report_slot5_i_level = -1;
927 static int hf_ext_measurement_report_slot6_i_level = -1;
928 static int hf_ext_measurement_report_slot7_i_level = -1;
929 static int hf_ext_measurement_report_number_of_ext_measurements = -1;
930 static int hf_measurements_3g_cell_list_index_3g = -1;
931 static int hf_measurements_3g_reporting_quantity = -1;
932 static int hf_pmr_additionsr99_pmo_used = -1;
933 static int hf_pmr_additionsr99_n_3g = -1;
934 static int hf_pmr_eutran_meas_rpt_freq_idx = -1;
935 static int hf_pmr_eutran_meas_rpt_cell_id = -1;
936 static int hf_pmr_eutran_meas_rpt_quantity = -1;
937 static int hf_eutran_measurement_report_num_eutran = -1;
938 #if 0
939 static int hf_emr_servingcell_dtx_used = -1;
940 static int hf_emr_servingcell_rxlev_val = -1;
941 static int hf_emr_servingcell_rx_qual_full = -1;
942 static int hf_emr_servingcell_mean_bep = -1;
943 static int hf_emr_servingcell_cv_bep = -1;
944 static int hf_emr_servingcell_nbr_rcvd_blocks = -1;
945 #endif
946 #if 0
947 static int hf_enhancedmeasurementreport_rr_short_pd = -1;
948 static int hf_enhancedmeasurementreport_message_type = -1;
949 static int hf_enhancedmeasurementreport_shortlayer2_header = -1;
950 static int hf_enhancedmeasurementreport_bsic_seen = -1;
951 static int hf_enhancedmeasurementreport_scale = -1;
952 #endif
953 static int hf_packet_measurement_report_psi5_change_mark = -1;
954 
955 /* < Packet Measurement Order message contents > */
956 #if 0
957 static int hf_ext_frequency_list_start_frequency = -1;
958 static int hf_ext_frequency_list_nr_of_frequencies = -1;
959 static int hf_ext_frequency_list_freq_diff_length = -1;
960 #endif
961 static int hf_packet_measurement_order_pmo_index = -1;
962 static int hf_packet_measurement_order_pmo_count = -1;
963 static int hf_ccn_measurement_report_rxlev_serving_cell = -1;
964 static int hf_ccn_measurement_report_number_of_nc_measurements = -1;
965 static int hf_target_cell_gsm_notif_bsic = -1;
966 static int hf_fdd_target_cell_notif_fdd_arfcn = -1;
967 static int hf_fdd_target_cell_notif_bandwith_fdd = -1;
968 static int hf_fdd_target_cell_notif_scrambling_code = -1;
969 static int hf_target_cell_3g_notif_reporting_quantity = -1;
970 static int hf_pccn_additionsr6_ba_used_3g = -1;
971 static int hf_pccn_additionsr6_n_3g = -1;
972 
973 /* < Packet Cell Change Notification message contents > */
974 static int hf_packet_cell_change_notification_ba_ind = -1;
975 static int hf_packet_cell_change_notification_pmo_used = -1;
976 static int hf_packet_cell_change_notification_pccn_sending = -1;
977 static int hf_packet_cell_change_notification_lte_reporting_quantity = -1;
978 static int hf_eutran_ccn_meas_rpt_3g_ba_used = -1;
979 static int hf_eutran_ccn_meas_rpt_num_eutran = -1;
980 static int hf_eutran_ccn_meas_rpt_freq_idx = -1;
981 static int hf_eutran_ccn_meas_cell_id = -1;
982 static int hf_eutran_ccn_meas_rpt_quantity = -1;
983 static int hf_utran_csg_meas_rpt_cgi = -1;
984 static int hf_utran_csg_meas_rpt_csg_id = -1;
985 static int hf_utran_csg_meas_rpt_access_mode = -1;
986 static int hf_utran_csg_meas_rpt_quantity = -1;
987 static int hf_eutran_csg_meas_rpt_cgi = -1;
988 static int hf_eutran_csg_meas_rpt_ta = -1;
989 static int hf_eutran_csg_meas_rpt_csg_id = -1;
990 static int hf_eutran_csg_meas_rpt_access_mode = -1;
991 static int hf_eutran_csg_meas_rpt_quantity = -1;
992 
993 
994 
995 /* < Packet Cell Change Continue message contents > */
996 static int hf_packet_cell_change_continue_arfcn = -1;
997 static int hf_packet_cell_change_continue_bsic = -1;
998 static int hf_packet_cell_change_continue_container_id = -1;
999 
1000 /* < Packet Neighbour Cell Data message contents > */
1001 static int hf_pncd_container_with_id_bsic = -1;
1002 static int hf_pncd_container_choice = -1;
1003 static int hf_pncd_container_with_id_container = -1;
1004 static int hf_pncd_container_without_id_container = -1;
1005 static int hf_packet_neighbour_cell_data_container_id = -1;
1006 static int hf_packet_neighbour_cell_data_spare = -1;
1007 static int hf_packet_neighbour_cell_data_container_index = -1;
1008 
1009 /* < Packet Serving Cell Data message contents > */
1010 static int hf_packet_serving_cell_data_spare = -1;
1011 static int hf_packet_serving_cell_data_container_index = -1;
1012 static int hf_packet_serving_cell_data_container = -1;
1013 #if 0
1014 static int hf_servingcelldata_rxlev_serving_cell = -1;
1015 static int hf_repeated_invalid_bsic_info_bcch_freq_ncell = -1;
1016 static int hf_repeated_invalid_bsic_info_bsic = -1;
1017 static int hf_repeated_invalid_bsic_info_rxlev_ncell = -1;
1018 static int hf_reporting_quantity_reporting_quantity = -1;
1019 static int hf_nc_measurementreport_nc_mode = -1;
1020 static int hf_nc_measurementreport_pmo_used = -1;
1021 static int hf_nc_measurementreport_scale = -1;
1022 #endif
1023 
1024 /* < Packet Handover Command message content > */
1025 static int hf_globaltimeslotdescription_ms_timeslotallocation = -1;
1026 static int hf_pho_usf_1_7_usf = -1;
1027 static int hf_usf_allocationarray_usf_0 = -1;
1028 static int hf_egprs_description_linkqualitymeasurementmode = -1;
1029 static int hf_nas_container_for_ps_ho_containerlength = -1;
1030 static int hf_nas_container_for_ps_ho_spare = -1;
1031 static int hf_nas_container_for_ps_ho_old_xid = -1;
1032 static int hf_nas_container_for_ps_ho_type_of_ciphering = -1;
1033 static int hf_nas_container_for_ps_ho_iov_ui_value = -1;
1034 static int hf_ps_handoverto_utran_payload_rrc_containerlength = -1;
1035 static int hf_ps_handoverto_utran_payload_rrc_container = -1;
1036 static int hf_ps_handoverto_eutran_payload_rrc_containerlength = -1;
1037 static int hf_ps_handoverto_eutran_payload_rrc_container = -1;
1038 static int hf_pho_radioresources_handoverreference = -1;
1039 static int hf_pho_radioresources_si = -1;
1040 static int hf_pho_radioresources_nci = -1;
1041 static int hf_pho_radioresources_bsic = -1;
1042 static int hf_pho_radioresources_ccn_active = -1;
1043 static int hf_pho_radioresources_ccn_active_3g = -1;
1044 static int hf_pho_radioresources_networkcontrolorder = -1;
1045 static int hf_pho_radioresources_rlc_reset = -1;
1046 static int hf_pho_radioresources_uplinkcontroltimeslot = -1;
1047 static int hf_packet_handover_command_containerid = -1;
1048 
1049 /* < End Packet Handover Command > */
1050 
1051 /* < Packet Physical Information message content > */
1052 
1053 /* < End Packet Physical Information > */
1054 
1055 /* < Additinal MS Radio Access Capability */
1056 /* < End Additinal MS Radio Access Capability */
1057 
1058 
1059 /* < Packet Pause > */
1060 /* < End Packet Pause > */
1061 
1062 /* < Packet System Information Type 1 > */
1063 static int hf_packet_system_info_type1_pbcch_change_mark = -1;
1064 static int hf_packet_system_info_type1_psi_change_field = -1;
1065 static int hf_packet_system_info_type1_psi1_repeat_period = -1;
1066 static int hf_packet_system_info_type1_psi_count_lr = -1;
1067 static int hf_packet_system_info_type1_psi_count_hr = -1;
1068 static int hf_packet_system_info_type1_measurement_order = -1;
1069 static int hf_packet_system_info_type1_psi_status_ind = -1;
1070 static int hf_packet_system_info_type1_mscr = -1;
1071 static int hf_packet_system_info_type1_band_indicator = -1;
1072 static int hf_packet_system_info_type1_lb_ms_txpwr_max_ccch = -1;
1073 static int hf_rai = -1;
1074 static int hf_pccch_org_bs_pcc_rel = -1;
1075 static int hf_pccch_org_pbcch_blks = -1;
1076 static int hf_pccch_org_pag_blks_res = -1;
1077 static int hf_pccch_org_prach_blks = -1;
1078 /* <End Packet System Information Type 1> */
1079 
1080 /* <Packet System Information Type 2> */
1081 static int hf_packet_system_info_type2_change_mark = -1;
1082 static int hf_packet_system_info_type2_index = -1;
1083 static int hf_packet_system_info_type2_count = -1;
1084 static int hf_packet_system_info_type2_ref_freq_num = -1;
1085 static int hf_packet_system_info_type2_ref_freq_length = -1;
1086 static int hf_packet_system_info_type2_ref_freq = -1;
1087 static int hf_packet_system_info_type2_ma_number = -1;
1088 static int hf_tsc = -1;
1089 static int hf_packet_system_info_type2_non_hopping_timeslot = -1;
1090 static int hf_packet_system_info_type2_hopping_ma_num = -1;
1091 static int hf_packet_system_info_type2_hopping_timeslot = -1;
1092 
1093 static int hf_packet_cell_id_cell_identity = -1;
1094 static int hf_packet_lai_lac = -1;
1095 static int hf_packet_plmn_mcc1 = -1;
1096 static int hf_packet_plmn_mcc2 = -1;
1097 static int hf_packet_plmn_mcc3 = -1;
1098 static int hf_packet_plmn_mnc1 = -1;
1099 static int hf_packet_plmn_mnc2 = -1;
1100 static int hf_packet_plmn_mnc3 = -1;
1101 static int hf_packet_non_gprs_cell_opt_att = -1;
1102 static int hf_packet_non_gprs_cell_opt_t3212 = -1;
1103 static int hf_packet_non_gprs_cell_opt_neci = -1;
1104 static int hf_packet_non_gprs_cell_opt_pwrc = -1;
1105 static int hf_packet_non_gprs_cell_opt_dtx = -1;
1106 static int hf_packet_non_gprs_cell_opt_radio_link_timeout = -1;
1107 static int hf_packet_non_gprs_cell_opt_bs_ag_blks_res = -1;
1108 static int hf_packet_non_gprs_cell_opt_ccch_conf = -1;
1109 static int hf_packet_non_gprs_cell_opt_bs_pa_mfrms = -1;
1110 static int hf_packet_non_gprs_cell_opt_max_retrans = -1;
1111 static int hf_packet_non_gprs_cell_opt_tx_int = -1;
1112 static int hf_packet_non_gprs_cell_opt_ec = -1;
1113 static int hf_packet_non_gprs_cell_opt_ms_txpwr_max_ccch = -1;
1114 /* static int hf_packet_non_gprs_cell_opt_ext_len = -1; */
1115 /* <End Packet System Information Type 2> */
1116 
1117 
1118 /* <Packet System Information Type 3> */
1119 static int hf_packet_system_info_type3_change_mark = -1;
1120 static int hf_packet_system_info_type3_bis_count = -1;
1121 
1122 static int hf_exc_acc = -1;
1123 static int hf_packet_scell_param_gprs_rxlev_access_min = -1;
1124 static int hf_packet_scell_param_gprs_ms_txpwr_max_cch = -1;
1125 static int hf_packet_scell_param_multiband_reporting = -1;
1126 
1127 static int hf_packet_gen_cell_sel_gprs_cell_resl_hyst = -1;
1128 static int hf_packet_gen_cell_sel_c31_hyst = -1;
1129 static int hf_packet_gen_cell_sel_c32_qual = -1;
1130 static int hf_packet_gen_cell_sel_t_resel = -1;
1131 static int hf_packet_gen_cell_sel_ra_resel_hyst = -1;
1132 
1133 static int hf_packet_compact_cell_sel_bsic = -1;
1134 static int hf_packet_compact_cell_sel_same_as_scell = -1;
1135 static int hf_packet_compact_cell_sel_gprs_rxlev_access_min = -1;
1136 static int hf_packet_compact_cell_sel_gprs_ms_txpwr_max_cch = -1;
1137 static int hf_packet_compact_cell_sel_gprs_temp_offset = -1;
1138 static int hf_packet_compact_cell_sel_gprs_penalty_time = -1;
1139 static int hf_packet_compact_cell_sel_gprs_resel_offset = -1;
1140 static int hf_packet_compact_cell_sel_time_group = -1;
1141 static int hf_packet_compact_cell_sel_guar_const_pwr_blks = -1;
1142 static int hf_packet_compact_neighbour_cell_param_freq_diff = -1;
1143 static int hf_packet_compact_ncell_param_start_freq = -1;
1144 static int hf_packet_compact_ncell_param_nr_of_remaining_cells = -1;
1145 static int hf_packet_compact_ncell_param_freq_diff_length = -1;
1146 /* <End Packet System Information Type 3> */
1147 
1148 /* <Packet System Information Type 5> */
1149 static int hf_gprsmeasurementparams3g_psi5_repquantfdd = -1;
1150 static int hf_gprsmeasurementparams3g_psi5_multiratreportingfdd = -1;
1151 static int hf_gprsmeasurementparams3g_psi5_reportingoffsetfdd = -1;
1152 static int hf_gprsmeasurementparams3g_psi5_reportingthresholdfdd = -1;
1153 static int hf_gprsmeasurementparams3g_psi5_multiratreportingtdd = -1;
1154 static int hf_gprsmeasurementparams3g_psi5_reportingoffsettdd = -1;
1155 static int hf_gprsmeasurementparams3g_psi5_reportingthresholdtdd = -1;
1156 static int hf_enh_reporting_parameters_report_type = -1;
1157 static int hf_enh_reporting_parameters_reporting_rate = -1;
1158 static int hf_enh_reporting_parameters_invalid_bsic_reporting = -1;
1159 static int hf_enh_reporting_parameters_ncc_permitted = -1;
1160 static int hf_packet_system_info_type5_change_mark = -1;
1161 static int hf_packet_system_info_type5_index = -1;
1162 static int hf_packet_system_info_type5_count = -1;
1163 /* <End Packet System Information Type 5> */
1164 
1165 
1166 /* <Packet System Information Type 13> */
1167 static int hf_packet_system_info_type13_lb_ms_mxpwr_max_cch = -1;
1168 static int hf_packet_system_info_type13_si2n_support = -1;
1169 /* <End Packet System Information Type 13> */
1170 
1171 
1172 
1173 #if 0
1174 static int hf_si1_restoctet_nch_position = -1;
1175 static int hf_si1_restoctet_bandindicator = -1;
1176 static int hf_selection_parameters_cbq = -1;
1177 static int hf_selection_parameters_cell_reselect_offset = -1;
1178 static int hf_selection_parameters_temporary_offset = -1;
1179 static int hf_selection_parameters_penalty_time = -1;
1180 static int hf_si3_rest_octet_power_offset = -1;
1181 static int hf_si3_rest_octet_system_information_2ter_indicator = -1;
1182 static int hf_si3_rest_octet_early_classmark_sending_control = -1;
1183 static int hf_si3_rest_octet_where = -1;
1184 static int hf_si3_rest_octet_ra_colour = -1;
1185 static int hf_si13_position = -1;
1186 static int hf_si3_rest_octet_ecs_restriction3g = -1;
1187 static int hf_si3_rest_octet_si2quaterindicator = -1;
1188 static int hf_si4_rest_octet_power_offset = -1;
1189 static int hf_si4_rest_octet_ra_colour = -1;
1190 static int hf_pch_and_nch_info_pagingchannelrestructuring = -1;
1191 static int hf_pch_and_nch_info_nln_sacch = -1;
1192 static int hf_pch_and_nch_info_callpriority = -1;
1193 static int hf_si6_restoctet_vbs_vgcs_options = -1;
1194 static int hf_si6_restoctet_max_lapdm = -1;
1195 static int hf_si6_restoctet_bandindicator = -1;
1196 #endif
1197 
1198 /* Generated from convert_proto_tree_add_text.pl */
1199 static int hf_gsm_rlcmac_sync_case_tstd = -1;
1200 #if 0
1201 static int hf_gsm_rlcmac_diversity = -1;
1202 static int hf_gsm_rlcmac_scrambling_code = -1;
1203 #endif
1204 static int hf_gsm_rlcmac_cell_parameter = -1;
1205 static int hf_gsm_rlcmac_diversity_tdd = -1;
1206 
1207 /* Unsorted FIXED and UNION fields */
1208 static int hf_pu_acknack_egrps = -1;
1209 static int hf_pu_acknack = -1;
1210 static int hf_frequency_parameters = -1;
1211 static int hf_dynamic_allocation = -1;
1212 static int hf_pua_grps = -1;
1213 static int hf_pua_egprs = -1;
1214 static int hf_pua_assignment = -1;
1215 static int hf_packet_downlink_assignment = -1;
1216 static int hf_page_request_tfb_establishment = -1;
1217 static int hf_page_request_rr_conn = -1;
1218 static int hf_repeated_page_info = -1;
1219 static int hf_packet_pdch_release = -1;
1220 static int hf_global_timing_or_power = -1;
1221 static int hf_ppc_timing_advance = -1;
1222 static int hf_packet_queueing_notif = -1;
1223 static int hf_ptr_egprs = -1;
1224 static int hf_packet_timeslot_reconfigure = -1;
1225 static int hf_si_pbcch_location = -1;
1226 static int hf_enh_measurement_parameters_pmo = -1;
1227 static int hf_enh_measurement_parameters_pcco = -1;
1228 static int hf_rept_eutran_enh_cell_resel_param = -1;
1229 static int hf_idvd_utran_priority_param = -1;
1230 static int hf_idvd_priorities = -1;
1231 static int hf_lsa_id_info_element = -1;
1232 static int hf_target_cell_3g = -1;
1233 static int hf_packet_cell_change_order = -1;
1234 static int hf_serving_cell_data = -1;
1235 static int hf_enh_nc_measurement_report = -1;
1236 static int hf_pmr_additionsr99 = -1;
1237 static int hf_packet_measurement_report = -1;
1238 static int hf_packet_measurement_order = -1;
1239 static int hf_ccn_measurement_report = -1;
1240 static int hf_target_cell_csg_notif = -1;
1241 static int hf_target_other_rat2_notif = -1;
1242 static int hf_target_other_rat_notif = -1;
1243 static int hf_target_cell = -1;
1244 static int hf_packet_cell_change_notification = -1;
1245 static int hf_packet_cell_change_continue = -1;
1246 static int hf_packet_neighbour_cell_data = -1;
1247 static int hf_packet_serving_cell_data = -1;
1248 static int hf_pho_uplinkassignment = -1;
1249 static int hf_global_timeslot_description = -1;
1250 static int hf_pho_gprs = -1;
1251 static int hf_downlink_tbf = -1;
1252 static int hf_pho_radio_resources = -1;
1253 static int hf_ps_handoverto_a_gb_modepayload = -1;
1254 static int hf_packet_handover_command = -1;
1255 static int hf_pccch_description = -1;
1256 static int hf_gen_cell_sel = -1;
1257 static int hf_psi3_additionr99 = -1;
1258 static int hf_psi5 = -1;
1259 static int hf_psi13 = -1;
1260 
1261 /* Fields unique to EC messages (reuse legacy where possible) */
1262 /*TODO: split exists per message??!? */
1263 static int hf_ec_dl_message_type = -1;
1264 static int hf_used_dl_coverage_class = -1;
1265 static int hf_ec_frequency_parameters_exist = -1;
1266 static int hf_ec_ma_number = -1;
1267 static int hf_primary_tsc_set = -1;
1268 static int hf_dl_coverage_class = -1;
1269 static int hf_starting_dl_timeslot = -1;
1270 static int hf_timeslot_multiplicator = -1;
1271 static int hf_ul_coverage_class = -1;
1272 static int hf_starting_ul_timeslot_offset = -1;
1273 static int hf_ec_packet_timing_advance_exist = -1;
1274 static int hf_ec_p0_and_pr_mode_exist = -1;
1275 static int hf_ec_gamma_exist = -1;
1276 static int hf_ec_alpha_enable = -1;
1277 
1278 static int hf_ec_acknack_description = -1;
1279 static int hf_ec_delay_next_ul_rlc_data_block = -1;
1280 static int hf_ec_delay_next_ul_rlc_data_block_exist = -1;
1281 
1282 static int hf_ec_bsn_offset_exist = -1;
1283 static int hf_ec_bsn_offset = -1;
1284 static int hf_ec_start_first_ul_rlc_data_block = -1;
1285 static int hf_ec_egprs_channel_coding_command_exist = -1;
1286 static int hf_ec_puan_cc_ts_exist = -1;
1287 static int hf_starting_ul_timeslot = -1;
1288 static int hf_starting_dl_timeslot_offset = -1;
1289 static int hf_ec_puan_exist_contres_tlli = -1;
1290 static int hf_ec_puan_monitor_ec_pacch = -1;
1291 static int hf_t3238 = -1;
1292 static int hf_ec_initial_waiting_time = -1;
1293 static int hf_ec_pacch_monitoring_pattern = -1;
1294 static int hf_ec_puan_fua_dealy_exist = -1;
1295 
1296 static int hf_ec_reject_wait_exist = -1;
1297 static int hf_ec_packet_access_reject_count = -1;
1298 
1299 static int hf_ec_t_avg_t_exist = -1;
1300 
1301 static int hf_ec_uplink_tfi_exist = -1;
1302 static int hf_ec_overlaid_cdma_code = -1;
1303 
1304 static int hf_ec_ul_message_type = -1;
1305 static int hf_ec_dl_cc_est = -1;
1306 
1307 static int hf_ec_channel_request_description_exist = -1;
1308 static int hf_ec_priority = -1;
1309 static int hf_ec_number_of_ul_data_blocks = -1;
1310 
1311 static int hf_ec_channel_quality_report_exist = -1;
1312 static int hf_ec_qual_gmsk_exist = -1;
1313 static int hf_ec_qual_8psk_exist = -1;
1314 
1315 static int hf_ecs_p = -1;
1316 static int hf_cc = -1;
1317 static int hf_ec_cps3 = -1;
1318 static int hf_ul_foi = -1;
1319 static int hf_ul_ri = -1;
1320 static int hf_rtlli = -1;
1321 
1322 /* XXX - "exist" fields generated from perl script.  If humans think changes are necessary, feel free */
1323 static int hf_packet_downlink_ack_nack_channel_request_description_exist = -1;
1324 static int hf_egprs_pd_acknack_egprs_channelqualityreport_exist = -1;
1325 static int hf_egprs_pd_acknack_channelrequestdescription_exist = -1;
1326 static int hf_egprs_pd_acknack_extensionbits_exist = -1;
1327 static int hf_fdd_target_cell_bandwith_fdd_exist = -1;
1328 static int hf_tdd_target_cell_bandwith_tdd_exist = -1;
1329 static int hf_eutran_target_cell_measurement_bandwidth_exist = -1;
1330 static int hf_utran_csg_target_cell_plmn_id_exist = -1;
1331 static int hf_eutran_csg_target_cell_plmn_id_exist = -1;
1332 static int hf_pccf_additionsr9_utran_csg_target_cell_exist = -1;
1333 static int hf_pccf_additionsr9_eutran_csg_target_cell_exist = -1;
1334 static int hf_pccf_additionsr8_eutran_target_cell_exist = -1;
1335 static int hf_pccf_additionsr5_g_rnti_extention_exist = -1;
1336 static int hf_pccf_additionsr99_fdd_description_exist = -1;
1337 static int hf_pccf_additionsr99_tdd_description_exist = -1;
1338 static int hf_power_control_parameters_slot0_exist = -1;
1339 static int hf_power_control_parameters_slot1_exist = -1;
1340 static int hf_power_control_parameters_slot2_exist = -1;
1341 static int hf_power_control_parameters_slot3_exist = -1;
1342 static int hf_power_control_parameters_slot4_exist = -1;
1343 static int hf_power_control_parameters_slot5_exist = -1;
1344 static int hf_power_control_parameters_slot6_exist = -1;
1345 static int hf_power_control_parameters_slot7_exist = -1;
1346 static int hf_pu_acknack_gprs_additionsr99_packetextendedtimingadvance_exist = -1;
1347 static int hf_pu_acknack_gprs_common_uplink_ack_nack_data_exist_contention_resolution_tlli_exist = -1;
1348 static int hf_pu_acknack_gprs_common_uplink_ack_nack_data_exist_packet_timing_advance_exist = -1;
1349 static int hf_pu_acknack_gprs_common_uplink_ack_nack_data_exist_power_control_parameters_exist = -1;
1350 static int hf_pu_acknack_gprs_common_uplink_ack_nack_data_exist_extension_bits_exist = -1;
1351 static int hf_pu_acknack_egprs_00_common_uplink_ack_nack_data_exist_contention_resolution_tlli_exist = -1;
1352 static int hf_pu_acknack_egprs_00_common_uplink_ack_nack_data_exist_packet_timing_advance_exist = -1;
1353 static int hf_pu_acknack_egprs_00_packet_extended_timing_advance_exist = -1;
1354 static int hf_pu_acknack_egprs_00_common_uplink_ack_nack_data_exist_power_control_parameters_exist = -1;
1355 static int hf_pu_acknack_egprs_00_common_uplink_ack_nack_data_exist_extension_bits_exist = -1;
1356 static int hf_change_mark_change_mark_2_exist = -1;
1357 static int hf_indirect_encoding_change_mark_exist = -1;
1358 static int hf_timeslot_allocation_exist_exist = -1;
1359 static int hf_timeslot_allocation_power_ctrl_param_slot0_exist = -1;
1360 static int hf_timeslot_allocation_power_ctrl_param_slot1_exist = -1;
1361 static int hf_timeslot_allocation_power_ctrl_param_slot2_exist = -1;
1362 static int hf_timeslot_allocation_power_ctrl_param_slot3_exist = -1;
1363 static int hf_timeslot_allocation_power_ctrl_param_slot4_exist = -1;
1364 static int hf_timeslot_allocation_power_ctrl_param_slot5_exist = -1;
1365 static int hf_timeslot_allocation_power_ctrl_param_slot6_exist = -1;
1366 static int hf_timeslot_allocation_power_ctrl_param_slot7_exist = -1;
1367 static int hf_dynamic_allocation_p0_exist = -1;
1368 static int hf_dynamic_allocation_uplink_tfi_assignment_exist = -1;
1369 static int hf_dynamic_allocation_rlc_data_blocks_granted_exist = -1;
1370 static int hf_dynamic_allocation_tbf_starting_time_exist = -1;
1371 static int hf_single_block_allocation_alpha_and_gamma_tn_exist = -1;
1372 static int hf_single_block_allocation_p0_exist = -1;
1373 static int hf_pua_gprs_additionsr99_packet_extended_timing_advance_exist = -1;
1374 static int hf_pua_gprs_frequency_parameters_exist = -1;
1375 static int hf_compact_reducedma_maio_2_exist = -1;
1376 static int hf_multiblock_allocation_alpha_gamma_tn_exist = -1;
1377 static int hf_multiblock_allocation_p0_bts_pwr_ctrl_pr_mode_exist = -1;
1378 static int hf_pua_egprs_00_contention_resolution_tlli_exist = -1;
1379 static int hf_pua_egprs_00_compact_reducedma_exist = -1;
1380 static int hf_pua_egprs_00_bep_period2_exist = -1;
1381 static int hf_pua_egprs_00_packet_extended_timing_advance_exist = -1;
1382 static int hf_pua_egprs_00_frequency_parameters_exist = -1;
1383 static int hf_pda_additionsr99_egprs_params_exist = -1;
1384 static int hf_pda_additionsr99_bep_period2_exist = -1;
1385 static int hf_pda_additionsr99_packet_extended_timing_advance_exist = -1;
1386 static int hf_pda_additionsr99_compact_reducedma_exist = -1;
1387 static int hf_packet_downlink_assignment_p0_and_bts_pwr_ctrl_mode_exist = -1;
1388 static int hf_packet_downlink_assignment_frequency_parameters_exist = -1;
1389 static int hf_packet_downlink_assignment_downlink_tfi_assignment_exist = -1;
1390 static int hf_packet_downlink_assignment_power_control_parameters_exist = -1;
1391 static int hf_packet_downlink_assignment_tbf_starting_time_exist = -1;
1392 static int hf_packet_downlink_assignment_measurement_mapping_exist = -1;
1393 static int hf_page_request_for_rr_conn_emlpp_priority_exist = -1;
1394 static int hf_packet_paging_request_nln_exist = -1;
1395 static int hf_packet_power_control_timing_advance_global_power_control_parameters_exist = -1;
1396 static int hf_trdynamic_allocation_p0_exist = -1;
1397 static int hf_trdynamic_allocation_rlc_data_blocks_granted_exist = -1;
1398 static int hf_trdynamic_allocation_tbf_starting_time_exist = -1;
1399 static int hf_ptr_gprs_additionsr99_packet_extended_timing_advance_exist = -1;
1400 static int hf_ptr_gprs_common_timeslot_reconfigure_data_exist_downlink_tfi_assignment_exist = -1;
1401 static int hf_ptr_gprs_common_timeslot_reconfigure_data_exist_uplink_tfi_assignment_exist = -1;
1402 static int hf_ptr_gprs_common_timeslot_reconfigure_data_exist_frequency_parameters_exist = -1;
1403 static int hf_ptr_egprs_00_compact_reducedma_exist = -1;
1404 static int hf_ptr_egprs_00_downlink_egprs_windowsize_exist = -1;
1405 static int hf_ptr_egprs_00_uplink_egprs_windowsize_exist = -1;
1406 static int hf_ptr_egprs_00_packet_extended_timing_advance_exist = -1;
1407 static int hf_ptr_egprs_00_common_timeslot_reconfigure_data_exist_downlink_tfi_assignment_exist = -1;
1408 static int hf_ptr_egprs_00_common_timeslot_reconfigure_data_exist_uplink_tfi_assignment_exist = -1;
1409 static int hf_ptr_egprs_00_common_timeslot_reconfigure_data_exist_frequency_parameters_exist = -1;
1410 static int hf_cell_selection_rxlev_and_txpwr_exist = -1;
1411 static int hf_cell_selection_offset_and_time_exist = -1;
1412 static int hf_cell_selection_gprs_reselect_offset_exist = -1;
1413 static int hf_cell_selection_hcs_exist = -1;
1414 static int hf_cell_selection_si13_pbcch_location_exist = -1;
1415 static int hf_cell_selection_2_rxlev_and_txpwr_exist = -1;
1416 static int hf_cell_selection_2_offset_and_time_exist = -1;
1417 static int hf_cell_selection_2_gprs_reselect_offset_exist = -1;
1418 static int hf_cell_selection_2_hcs_exist = -1;
1419 static int hf_cell_selection_2_si13_pbcch_location_exist = -1;
1420 static int hf_reject_wait_exist = -1;
1421 static int hf_cellselectionparamswithfreqdiff_cellselectionparams_exist = -1;
1422 static int hf_add_frequency_list_cell_selection_exist = -1;
1423 static int hf_nc_frequency_list_removed_freq_exist = -1;
1424 static int hf_nc_measurement_parameters_nc_exist = -1;
1425 static int hf_nc_measurement_parameters_with_frequency_list_nc_exist = -1;
1426 static int hf_nc_measurement_parameters_with_frequency_list_nc_frequency_list_exist = -1;
1427 static int hf_gprsmeasurementparams_pmo_pcco_multi_band_reporting_exist = -1;
1428 static int hf_gprsmeasurementparams_pmo_pcco_serving_band_reporting_exist = -1;
1429 static int hf_gprsmeasurementparams_pmo_pcco_offsetthreshold900_exist = -1;
1430 static int hf_gprsmeasurementparams_pmo_pcco_offsetthreshold1800_exist = -1;
1431 static int hf_gprsmeasurementparams_pmo_pcco_offsetthreshold400_exist = -1;
1432 static int hf_gprsmeasurementparams_pmo_pcco_offsetthreshold1900_exist = -1;
1433 static int hf_gprsmeasurementparams_pmo_pcco_offsetthreshold850_exist = -1;
1434 static int hf_multiratparams3g_existmultiratreporting_exist = -1;
1435 static int hf_multiratparams3g_existoffsetthreshold_exist = -1;
1436 static int hf_enh_gprsmeasurementparams3g_pmo_existrepparamsfdd_exist = -1;
1437 static int hf_enh_gprsmeasurementparams3g_pmo_existoffsetthreshold_exist = -1;
1438 static int hf_enh_gprsmeasurementparams3g_pcco_existrepparamsfdd_exist = -1;
1439 static int hf_enh_gprsmeasurementparams3g_pcco_existoffsetthreshold_exist = -1;
1440 static int hf_utran_fdd_description_existbandwidth_exist = -1;
1441 static int hf_utran_tdd_description_existbandwidth_exist = -1;
1442 static int hf_neighbourcelldescription3g_pmo_index_start_3g_exist = -1;
1443 static int hf_neighbourcelldescription3g_pmo_absolute_index_start_emr_exist = -1;
1444 static int hf_neighbourcelldescription3g_pmo_utran_fdd_description_exist = -1;
1445 static int hf_neighbourcelldescription3g_pmo_utran_tdd_description_exist = -1;
1446 static int hf_neighbourcelldescription3g_pmo_cdma2000_description_exist = -1;
1447 static int hf_neighbourcelldescription3g_pmo_removed3gcelldescription_exist = -1;
1448 static int hf_neighbourcelldescription3g_pcco_index_start_3g_exist = -1;
1449 static int hf_neighbourcelldescription3g_pcco_absolute_index_start_emr_exist = -1;
1450 static int hf_neighbourcelldescription3g_pcco_utran_fdd_description_exist = -1;
1451 static int hf_neighbourcelldescription3g_pcco_utran_tdd_description_exist = -1;
1452 static int hf_neighbourcelldescription3g_pcco_removed3gcelldescription_exist = -1;
1453 static int hf_enh_measurement_parameters_pmo_neighbourcelldescription3g_exist = -1;
1454 static int hf_enh_measurement_parameters_pmo_gprsreportpriority_exist = -1;
1455 static int hf_enh_measurement_parameters_pmo_gprsmeasurementparams_exist = -1;
1456 static int hf_enh_measurement_parameters_pmo_gprsmeasurementparams3g_exist = -1;
1457 static int hf_enh_measurement_parameters_pcco_neighbourcelldescription3g_exist = -1;
1458 static int hf_enh_measurement_parameters_pcco_gprsreportpriority_exist = -1;
1459 static int hf_enh_measurement_parameters_pcco_gprsmeasurementparams_exist = -1;
1460 static int hf_enh_measurement_parameters_pcco_gprsmeasurementparams3g_exist = -1;
1461 static int hf_lu_modecellselectionparameters_si13_alt_pbcch_location_exist = -1;
1462 static int hf_lu_modecellselectionparams_lu_modecellselectionparams_exist = -1;
1463 static int hf_lu_modeonlycellselection_rxlev_and_txpwr_exist = -1;
1464 static int hf_lu_modeonlycellselection_offset_and_time_exist = -1;
1465 static int hf_lu_modeonlycellselection_gprs_reselect_offset_exist = -1;
1466 static int hf_lu_modeonlycellselection_hcs_exist = -1;
1467 static int hf_lu_modeonlycellselection_si13_alt_pbcch_location_exist = -1;
1468 static int hf_lu_modeonlycellselectionparamswithfreqdiff_lu_modeonlycellselectionparams_exist = -1;
1469 static int hf_add_lu_modeonlyfrequencylist_lu_modecellselection_exist = -1;
1470 static int hf_gprs_additionalmeasurementparams3g_fdd_reporting_threshold_2_exist = -1;
1471 static int hf_repeatedutran_priorityparameters_existutran_priority_exist = -1;
1472 static int hf_repeatedutran_priorityparameters_existthresh_utran_low_exist = -1;
1473 static int hf_repeatedutran_priorityparameters_existutran_qrxlevmin_exist = -1;
1474 static int hf_priorityparametersdescription3g_pmo_existdefault_utran_parameters_exist = -1;
1475 static int hf_eutran_reporting_threshold_offset_existeutran_fdd_reporting_threshold_offset_exist = -1;
1476 static int hf_eutran_reporting_threshold_offset_existeutran_fdd_reporting_threshold_2_exist = -1;
1477 static int hf_eutran_reporting_threshold_offset_existeutran_fdd_reporting_offset_exist = -1;
1478 static int hf_eutran_reporting_threshold_offset_existeutran_tdd_reporting_threshold_offset_exist = -1;
1479 static int hf_eutran_reporting_threshold_offset_existeutran_tdd_reporting_threshold_2_exist = -1;
1480 static int hf_eutran_reporting_threshold_offset_existeutran_tdd_reporting_offset_exist = -1;
1481 static int hf_repeatedeutran_cells_existmeasurementbandwidth_exist = -1;
1482 static int hf_repeatedeutran_neighbourcells_existeutran_priority_exist = -1;
1483 static int hf_repeatedeutran_neighbourcells_existthresh_eutran_low_exist = -1;
1484 static int hf_repeatedeutran_neighbourcells_existeutran_qrxlevmin_exist = -1;
1485 static int hf_pcid_group_ie_existpcid_bitmap_group_exist = -1;
1486 static int hf_eutran_parametersdescription_pmo_existgprs_eutran_measurementparametersdescription_exist = -1;
1487 static int hf_meas_ctrl_param_desp_existmeasurement_control_eutran_exist = -1;
1488 static int hf_meas_ctrl_param_desp_existmeasurement_control_utran_exist = -1;
1489 static int hf_reselection_based_on_rsrq_existthresh_eutran_low_q_exist = -1;
1490 static int hf_reselection_based_on_rsrq_existeutran_qqualmin_exist = -1;
1491 static int hf_reselection_based_on_rsrq_existeutran_rsrpmin_exist = -1;
1492 static int hf_utran_csg_cells_reporting_desp_existutran_csg_fdd_reporting_threshold_exist = -1;
1493 static int hf_utran_csg_cells_reporting_desp_existutran_csg_tdd_reporting_threshold_exist = -1;
1494 static int hf_eutran_csg_cells_reporting_desp_existeutran_csg_fdd_reporting_threshold_exist = -1;
1495 static int hf_eutran_csg_cells_reporting_desp_existeutran_csg_tdd_reporting_threshold_exist = -1;
1496 static int hf_csg_cells_reporting_desp_existutran_csg_cells_reporting_description_exist = -1;
1497 static int hf_csg_cells_reporting_desp_existeutran_csg_cells_reporting_description_exist = -1;
1498 static int hf_priorityandeutran_parametersdescription_pmo_existservingcellpriorityparametersdescription_exist = -1;
1499 static int hf_priorityandeutran_parametersdescription_pmo_existpriorityparametersdescription3g_pmo_exist = -1;
1500 static int hf_priorityandeutran_parametersdescription_pmo_existeutran_parametersdescription_pmo_exist = -1;
1501 static int hf_threeg_individual_priority_parameters_description_default_utran_priority_exist = -1;
1502 static int hf_eutran_individual_priority_parameters_description_default_eutran_priority_exist = -1;
1503 static int hf_provide_individual_priorities_3g_individual_priority_parameters_description_exist = -1;
1504 static int hf_provide_individual_priorities_eutran_individual_priority_parameters_description_exist = -1;
1505 static int hf_provide_individual_priorities_t3230_timeout_value_exist = -1;
1506 static int hf_pmo_additionsr9_existenhanced_cell_reselection_parameters_description_exist = -1;
1507 static int hf_pmo_additionsr9_existcsg_cells_reporting_description_exist = -1;
1508 static int hf_pmo_additionsr8_existba_ind_3g_pmo_ind_exist = -1;
1509 static int hf_pmo_additionsr8_existpriorityandeutran_parametersdescription_pmo_exist = -1;
1510 static int hf_pmo_additionsr8_existindividualpriorities_pmo_exist = -1;
1511 static int hf_pmo_additionsr8_existthreeg_csg_description_exist = -1;
1512 static int hf_pmo_additionsr8_existeutran_csg_description_exist = -1;
1513 static int hf_pmo_additionsr8_existmeasurement_control_parameters_description_exist = -1;
1514 static int hf_pmo_additionsr7_existreporting_offset_threshold_700_exist = -1;
1515 static int hf_pmo_additionsr7_existreporting_offset_threshold_810_exist = -1;
1516 static int hf_pmo_additionsr5_existgrnti_extension_exist = -1;
1517 static int hf_pmo_additionsr5_lu_modeneighbourcellparams_exist = -1;
1518 static int hf_pmo_additionsr5_existnc_lu_modeonlycapablecelllist_exist = -1;
1519 static int hf_pmo_additionsr5_existgprs_additionalmeasurementparams3g_exist = -1;
1520 static int hf_pcco_additionsr5_existgrnti_extension_exist = -1;
1521 static int hf_pcco_additionsr5_lu_modeneighbourcellparams_exist = -1;
1522 static int hf_pcco_additionsr5_existnc_lu_modeonlycapablecelllist_exist = -1;
1523 static int hf_pcco_additionsr5_existgprs_additionalmeasurementparams3g_exist = -1;
1524 static int hf_pmo_additionsr4_ccn_support_description_id_exist = -1;
1525 static int hf_pmo_additionsr99_enh_measurement_parameters_exist = -1;
1526 static int hf_pcco_additionsr4_container_id_exist = -1;
1527 static int hf_pcco_additionsr4_ccn_support_description_id_exist = -1;
1528 static int hf_pmo_additionsr98_lsa_parameters_exist = -1;
1529 static int hf_pcco_additionsr98_lsa_parameters_exist = -1;
1530 static int hf_target_cell_3g_additionsr8_eutran_target_cell_exist = -1;
1531 static int hf_target_cell_3g_additionsr8_individual_priorities_exist = -1;
1532 static int hf_target_cell_3g_additionsr5_g_rnti_extention_exist = -1;
1533 static int hf_target_cell_3g_fdd_description_exist = -1;
1534 static int hf_target_cell_3g_tdd_description_exist = -1;
1535 static int hf_nc_measurements_bsic_n_exist = -1;
1536 static int hf_reporting_quantity_instance_reporting_quantity_exist = -1;
1537 static int hf_enh_nc_measurement_report_serving_cell_data_exist = -1;
1538 static int hf_enh_nc_measurement_report_reportbitmap_exist = -1;
1539 static int hf_ext_measurement_report_slot0_exist = -1;
1540 static int hf_ext_measurement_report_slot1_exist = -1;
1541 static int hf_ext_measurement_report_slot2_exist = -1;
1542 static int hf_ext_measurement_report_slot3_exist = -1;
1543 static int hf_ext_measurement_report_slot4_exist = -1;
1544 static int hf_ext_measurement_report_slot5_exist = -1;
1545 static int hf_ext_measurement_report_slot6_exist = -1;
1546 static int hf_ext_measurement_report_slot7_exist = -1;
1547 static int hf_ext_measurement_report_i_level_exist = -1;
1548 static int hf_utran_csg_measurement_report_plmn_id_exist = -1;
1549 static int hf_eutran_csg_measurement_report_plmn_id_exist = -1;
1550 static int hf_pmr_additionsr9_utran_csg_meas_rpt_exist = -1;
1551 static int hf_pmr_additionsr9_eutran_csg_meas_rpt_exist = -1;
1552 static int hf_pmr_additionsr8_eutran_meas_rpt_exist = -1;
1553 static int hf_pmr_additionsr5_grnti_exist = -1;
1554 static int hf_pmr_additionsr99_info3g_exist = -1;
1555 static int hf_pmr_additionsr99_measurementreport3g_exist = -1;
1556 static int hf_packet_measurement_report_psi5_change_mark_exist = -1;
1557 static int hf_pemr_additionsr9_utran_csg_target_cell_exist = -1;
1558 static int hf_pemr_additionsr9_eutran_csg_target_cell_exist = -1;
1559 static int hf_bitmap_report_quantity_reporting_quantity_exist = -1;
1560 static int hf_pemr_additionsr8_eutran_meas_rpt_exist = -1;
1561 static int hf_pemr_additionsr5_grnti_ext_exist = -1;
1562 static int hf_packet_measurement_order_nc_measurement_parameters_exist = -1;
1563 static int hf_packet_measurement_order_ext_measurement_parameters_exist = -1;
1564 static int hf_fdd_target_cell_notif_bandwith_fdd_exist = -1;
1565 static int hf_tdd_target_cell_notif_bandwith_tdd_exist = -1;
1566 static int hf_target_cell_3g_notif_fdd_description_exist = -1;
1567 static int hf_target_cell_3g_notif_tdd_description_exist = -1;
1568 static int hf_target_eutran_cell_notif_measurement_bandwidth_exist = -1;
1569 static int hf_target_cell_4g_notif_arfcn_exist = -1;
1570 static int hf_target_cell_4g_notif_3g_target_cell_exist = -1;
1571 static int hf_target_cell_4g_notif_eutran_target_cell_exist = -1;
1572 static int hf_target_cell_4g_notif_eutran_ccn_measurement_report_exist = -1;
1573 static int hf_target_cell_csg_notif_eutran_ccn_measurement_report_exist = -1;
1574 static int hf_pccn_additionsr6_ba_used_3g_exist = -1;
1575 static int hf_packet_cell_change_continue_id_exist = -1;
1576 static int hf_pho_downlinkassignment_egprs_windowsize_exist = -1;
1577 static int hf_pho_usf_1_7_usf_exist = -1;
1578 static int hf_pho_uplinkassignment_channelcodingcommand_exist = -1;
1579 static int hf_pho_uplinkassignment_egprs_channelcodingcommand_exist = -1;
1580 static int hf_pho_uplinkassignment_egprs_windowsize_exist = -1;
1581 static int hf_pho_uplinkassignment_tbf_timeslotallocation_exist = -1;
1582 static int hf_globaltimeslotdescription_ua_pho_ua_exist = -1;
1583 static int hf_pho_gprs_channelcodingcommand_exist = -1;
1584 static int hf_pho_gprs_globaltimeslotdescription_ua_exist = -1;
1585 static int hf_pho_gprs_downlinkassignment_exist = -1;
1586 static int hf_egprs_description_egprs_windowsize_exist = -1;
1587 static int hf_egprs_description_bep_period2_exist = -1;
1588 static int hf_downlinktbf_egprs_description_exist = -1;
1589 static int hf_downlinktbf_downlinkassignment_exist = -1;
1590 static int hf_pho_egprs_egprs_windowsize_exist = -1;
1591 static int hf_pho_egprs_egprs_channelcodingcommand_exist = -1;
1592 static int hf_pho_egprs_bep_period2_exist = -1;
1593 static int hf_pho_egprs_globaltimeslotdescription_ua_exist = -1;
1594 static int hf_pho_egprs_downlinktbf_exist = -1;
1595 static int hf_pho_timingadvance_packetextendedtimingadvance_exist = -1;
1596 static int hf_pho_radioresources_handoverreference_exist = -1;
1597 static int hf_pho_radioresources_ccn_active_exist = -1;
1598 static int hf_pho_radioresources_ccn_active_3g_exist = -1;
1599 static int hf_pho_radioresources_ccn_support_description_exist = -1;
1600 static int hf_pho_radioresources_pho_timingadvance_exist = -1;
1601 static int hf_pho_radioresources_po_pr_exist = -1;
1602 static int hf_pho_radioresources_uplinkcontroltimeslot_exist = -1;
1603 static int hf_ps_handoverto_a_gb_modepayload_nas_container_exist = -1;
1604 static int hf_psi1_psi_count_hr_exist = -1;
1605 static int hf_non_gprs_cell_options_t3212_exist = -1;
1606 static int hf_non_gprs_cell_options_extension_bits_exist = -1;
1607 static int hf_psi2_cell_identification_exist = -1;
1608 static int hf_psi2_non_gprs_cell_options_exist = -1;
1609 static int hf_serving_cell_params_hcs_exist = -1;
1610 static int hf_gen_cell_sel_t_resel_exist = -1;
1611 static int hf_gen_cell_sel_ra_reselect_hysteresis_exist = -1;
1612 static int hf_compact_cell_sel_gprs_rxlev_access_min_exist = -1;
1613 static int hf_compact_cell_sel_gprs_temporary_offset_exist = -1;
1614 static int hf_compact_cell_sel_gprs_reselect_offset_exist = -1;
1615 static int hf_compact_cell_sel_hcs_parm_exist = -1;
1616 static int hf_compact_cell_sel_time_group_exist = -1;
1617 static int hf_compact_cell_sel_guar_constant_pwr_blks_exist = -1;
1618 static int hf_psi3_additionr4_ccn_support_desc_exist = -1;
1619 static int hf_psi3_additionr99_compact_info_exist = -1;
1620 static int hf_psi3_additionr99_additionr4_exist = -1;
1621 static int hf_psi3_additionr98_lsa_parameters_exist = -1;
1622 static int hf_psi3_additionr98_additionr99_exist = -1;
1623 static int hf_psi3_additionr98_exist = -1;
1624 static int hf_measurementparams_multi_band_reporting_exist = -1;
1625 static int hf_measurementparams_serving_band_reporting_exist = -1;
1626 static int hf_measurementparams_scale_ord_exist = -1;
1627 static int hf_measurementparams_offsetthreshold900_exist = -1;
1628 static int hf_measurementparams_offsetthreshold1800_exist = -1;
1629 static int hf_measurementparams_offsetthreshold400_exist = -1;
1630 static int hf_measurementparams_offsetthreshold1900_exist = -1;
1631 static int hf_measurementparams_offsetthreshold850_exist = -1;
1632 static int hf_gprsmeasurementparams3g_psi5_existrepparamsfdd_exist = -1;
1633 static int hf_gprsmeasurementparams3g_psi5_existreportingparamsfdd_exist = -1;
1634 static int hf_gprsmeasurementparams3g_psi5_existmultiratreportingtdd_exist = -1;
1635 static int hf_gprsmeasurementparams3g_psi5_existoffsetthresholdtdd_exist = -1;
1636 static int hf_enh_reporting_parameters_ncc_permitted_exist = -1;
1637 static int hf_enh_reporting_parameters_gprsmeasurementparams_exist = -1;
1638 static int hf_enh_reporting_parameters_gprsmeasurementparams3g_exist = -1;
1639 static int hf_psi5_additions_offsetthreshold_700_exist = -1;
1640 static int hf_psi5_additions_offsetthreshold_810_exist = -1;
1641 static int hf_psi5_additions_gprs_additionalmeasurementparams3g_exist = -1;
1642 static int hf_psi5_additions_additionsr7_exist = -1;
1643 static int hf_psi5_additionsr_enh_reporting_param_exist = -1;
1644 static int hf_psi5_additionsr_additionsr5_exist = -1;
1645 static int hf_psi5_eixst_nc_meas_param_exist = -1;
1646 static int hf_psi13_additions_lb_ms_txpwr_max_cch_exist = -1;
1647 static int hf_psi13_additions_additionsr6_exist = -1;
1648 static int hf_psi13_additionr_additionsr4_exist = -1;
1649 static int hf_psi13_ma_exist = -1;
1650 static int hf_pccf_additionsr8_additionsr9_exist = -1;
1651 static int hf_pccf_additionsr5_additionsr8_exist = -1;
1652 static int hf_pccf_additionsr99_additionsr5_exist = -1;
1653 static int hf_pmo_additionsr8_existadditionsr9_exist = -1;
1654 static int hf_pmo_additionsr7_existadditionsr8_exist = -1;
1655 static int hf_pmo_additionsr6_existadditionsr7_exist = -1;
1656 static int hf_pmo_additionsr5_existadditionsr6_exist = -1;
1657 static int hf_pcco_additionsr5_existadditionsr6_exist = -1;
1658 static int hf_pmo_additionsr4_additionsr5_exist = -1;
1659 static int hf_pmo_additionsr99_additionsr4_exist = -1;
1660 static int hf_pcco_additionsr4_additionsr5_exist = -1;
1661 static int hf_target_cell_gsm_additionsr98_exist = -1;
1662 static int hf_target_cell_3g_additionsr5_additionsr8_exist = -1;
1663 static int hf_target_cell_3g_additionsr5_exist = -1;
1664 static int hf_pmr_additionsr8_additionsr9_exist = -1;
1665 static int hf_pmr_additionsr5_additionsr8_exist = -1;
1666 static int hf_pmr_additionsr99_additionsr5_exist = -1;
1667 static int hf_pemr_additionsr8_additionsr9_exist = -1;
1668 static int hf_pemr_additionsr5_additionsr8_exist = -1;
1669 static int hf_packet_enh_measurement_report_additionsr5_exist = -1;
1670 static int hf_packet_measurement_order_additionsr98_exist = -1;
1671 static int hf_packet_cell_change_notification_additionsr6_exist = -1;
1672 static int hf_psi1_additionsr99_additionsr6_exist = -1;
1673 static int hf_packet_paging_request_repeated_page_info_exist = -1;
1674 static int hf_neighbourcelllist_parameters_exist = -1;
1675 static int hf_nc_frequency_list_add_frequency_exist = -1;
1676 static int hf_utran_fdd_description_cellparams_exist = -1;
1677 static int hf_utran_tdd_description_cellparams_exist = -1;
1678 static int hf_nc_lu_modeonlycapablecelllist_add_lu_modeonlyfrequencylist_exist = -1;
1679 static int hf_priorityparametersdescription3g_pmo_repeatedutran_priorityparameters_a_exist = -1;
1680 static int hf_repeatedeutran_neighbourcells_eutran_cells_a_exist = -1;
1681 static int hf_pcid_group_ie_pcid_pattern_a_exist = -1;
1682 static int hf_repeatedeutran_notallowedcells_eutran_frequency_index_a_exist = -1;
1683 static int hf_repeatedeutran_pcid_to_ta_mapping_pcid_tota_mapping_a_exist = -1;
1684 static int hf_repeatedeutran_pcid_to_ta_mapping_eutran_frequency_index_a_exist = -1;
1685 static int hf_eutran_parametersdescription_pmo_repeatedeutran_neighbourcells_a_exist = -1;
1686 static int hf_eutran_parametersdescription_pmo_repeatedeutran_notallowedcells_a_exist = -1;
1687 static int hf_eutran_parametersdescription_pmo_repeatedeutran_pcid_to_ta_mapping_a_exist = -1;
1688 static int hf_psc_group_psc_pattern_exist = -1;
1689 static int hf_threeg_csg_description_threeg_csg_description_body_exist = -1;
1690 static int hf_eutran_csg_description_eutran_csg_description_body_exist = -1;
1691 static int hf_enh_cell_reselect_param_desp_repeated_eutran_enhanced_cell_reselection_parameters_exist = -1;
1692 static int hf_threeg_individual_priority_parameters_description_repeated_individual_utran_priority_parameters_exist = -1;
1693 static int hf_eutran_individual_priority_parameters_description_repeated_individual_eutran_priority_parameters_exist = -1;
1694 static int hf_lsa_id_info_lsa_id_info_elements_exist = -1;
1695 static int hf_compact_info_compact_neighbour_cell_param_exist = -1;
1696 static int hf_packet_access_reject_reject_exist = -1;
1697 static int hf_enh_nc_measurement_report_repeatedinvalid_bsic_info_exist = -1;
1698 static int hf_nonhoppingpccch_carriers_exist = -1;
1699 static int hf_psi2_reference_frequency_exist = -1;
1700 static int hf_psi2_gprs_ma_exist = -1;
1701 static int hf_psi2_pccch_description_exist = -1;
1702 
1703 
1704 static expert_field ei_li = EI_INIT;
1705 /* Generated from convert_proto_tree_add_text.pl */
1706 static expert_field ei_gsm_rlcmac_coding_scheme_invalid = EI_INIT;
1707 static expert_field ei_gsm_rlcmac_gprs_fanr_header_dissection_not_supported = EI_INIT;
1708 static expert_field ei_gsm_rlcmac_coding_scheme_unknown = EI_INIT;
1709 static expert_field ei_gsm_rlcmac_egprs_header_type_not_handled = EI_INIT;
1710 static expert_field ei_gsm_rlcmac_unexpected_header_extension = EI_INIT;
1711 static expert_field ei_gsm_rlcmac_unknown_pacch_access_burst = EI_INIT;
1712 static expert_field ei_gsm_rlcmac_stream_not_supported = EI_INIT;
1713 
1714 /* Payload type as defined in TS 44.060 / 10.4.7 */
1715 #define PAYLOAD_TYPE_DATA              0
1716 #define PAYLOAD_TYPE_CTRL_NO_OPT_OCTET 1
1717 #define PAYLOAD_TYPE_CTRL_OPT_OCTET    2
1718 #define PAYLOAD_TYPE_RESERVED          3
1719 
1720 
1721 #define GPRS_CS_OFFSET(cS) ((cS)- RLCMAC_CS1)
1722 #define EGPRS_HEADER_TYPE_OFFSET(hT) ((hT)- RLCMAC_HDR_TYPE_1)
1723 
1724 /* Coding and Puncturing Scheme indicator field for Header type 1 in EGPRS TBF or EC TBF or downlink EGPRS2 TBF */
1725 static const guint8 egprs_Header_type1_coding_puncturing_scheme_to_mcs[] = {
1726    9 /* 0x00, "(MCS-9/P1 ; MCS-9/P1)" */,
1727    9 /* 0x01, "(MCS-9/P1 ; MCS-9/P2)" */,
1728    9 /* 0x02, "(MCS-9/P1 ; MCS-9/P3)" */,
1729    MCS_INVALID /* 0x03, "reserved" */,
1730    9 /* 0x04, "(MCS-9/P2 ; MCS-9/P1)" */,
1731    9 /* 0x05, "(MCS-9/P2 ; MCS-9/P2)" */,
1732    9 /* 0x06, "(MCS-9/P2 ; MCS-9/P3)" */,
1733    MCS_INVALID /* 0x07, "reserved" */,
1734    9 /* 0x08, "(MCS-9/P3 ; MCS-9/P1)" */,
1735    9 /* 0x09, "(MCS-9/P3 ; MCS-9/P2)" */,
1736    9 /* 0x0A, "(MCS-9/P3 ; MCS-9/P3)" */,
1737    8 /* 0x0B, "(MCS-8/P1 ; MCS-8/P1)" */,
1738    8 /* 0x0C, "(MCS-8/P1 ; MCS-8/P2)" */,
1739    8 /* 0x0D, "(MCS-8/P1 ; MCS-8/P3)" */,
1740    8 /* 0x0E, "(MCS-8/P2 ; MCS-8/P1)" */,
1741    8 /* 0x0F, "(MCS-8/P2 ; MCS-8/P2)" */,
1742    8 /* 0x10, "(MCS-8/P2 ; MCS-8/P3)" */,
1743    8 /* 0x11, "(MCS-8/P3 ; MCS-8/P1)" */,
1744    8 /* 0x12, "(MCS-8/P3 ; MCS-8/P2)" */,
1745    8 /* 0x13, "(MCS-8/P3 ; MCS-8/P3)" */,
1746    7 /* 0x14, "(MCS-7/P1 ; MCS-7/P1)" */,
1747    7 /* 0x15, "(MCS-7/P1 ; MCS-7/P2)" */,
1748    7 /* 0x16, "(MCS-7/P1 ; MCS-7/P3)" */,
1749    7 /* 0x17, "(MCS-7/P2 ; MCS-7/P1)" */,
1750    7 /* 0x18, "(MCS-7/P2 ; MCS-7/P2)" */,
1751    7 /* 0x19, "(MCS-7/P2 ; MCS-7/P3)" */,
1752    7 /* 0x1A, "(MCS-7/P3 ; MCS-7/P1)" */,
1753    7 /* 0x1B, "(MCS-7/P3 ; MCS-7/P2)" */,
1754    7 /* 0x1C, "(MCS-7/P3 ; MCS-7/P3)" */,
1755    MCS_INVALID /* 0x1D, "reserved" */,
1756    MCS_INVALID /* 0x1E, "reserved" */,
1757    MCS_INVALID /* 0x1F, "reserved" */
1758 };
1759 
1760 /* Coding and Puncturing Scheme indicator field for Header type 2 in (EC-)EGPRS TBF or uplink EGPRS2-A TBF */
1761 static const guint8 egprs_Header_type2_coding_puncturing_scheme_to_mcs[] = {
1762    6 /* {0x00, "MCS-6/P1"} */,
1763    6 /* {0x01, "MCS-6/P2"} */,
1764    6 /* {0x02, "MCS-6/P1 with 6 octet padding"} */,
1765    6 /* {0x03, "MCS-6/P2 with 6 octet padding "} */,
1766    5 /* {0x04, "MCS-5/P1"} */,
1767    5 /* {0x05, "MCS-5/P2"} */,
1768    5 /* {0x06, "MCS-6/P1 with 10 octet padding "} */,
1769    5 /* {0x07, "MCS-6/P2 with 10 octet padding "} */
1770 };
1771 
1772 static const guint8 egprs_Header_type3_coding_puncturing_scheme_to_mcs[] = {
1773    4 /* {0x00, "MCS-4/P1"} */,
1774    4 /* {0x01, "MCS-4/P2"} */,
1775    4 /* {0x02, "MCS-4/P3"} */,
1776    3 /* {0x03, "MCS-3/P1"} */,
1777    3 /* {0x04, "MCS-3/P2"} */,
1778    3 /* {0x05, "MCS-3/P3"} */,
1779    3 /* {0x06, "MCS-3/P1 with padding"} */,
1780    3 /* {0x07, "MCS-3/P2 with padding"} */,
1781    3 /* {0x08, "MCS-3/P3 with padding"} */,
1782    2 /* {0x09, "MCS-2/P1"} */,
1783    2 /* {0x0A, "MCS-2/P2"} */,
1784    1 /* {0x0B, "MCS-1/P1"} */,
1785    1 /* {0x0C, "MCS-1/P2"} */,
1786    2 /* {0x0D, "MCS-2/P1 with padding"} */,
1787    2 /* {0x0E, "MCS-2/P2 with padding"} */,
1788    0 /* {0x0F, "MCS-0"} */
1789 };
1790 
1791 static const guint8 ec_egprs_Header_type3_coding_puncturing_scheme_to_mcs[] = {
1792    4 /* {0x00, "MCS-4/P1"} */,
1793    4 /* {0x01, "MCS-4/P2"} */,
1794    3 /* {0x02, "MCS-3/P1"} */,
1795    3 /* {0x03, "MCS-3/P2"} */,
1796    3 /* {0x04, "MCS-3/P1 with padding"} */,
1797    3 /* {0x05, "MCS-3/P2 with padding"} */,
1798    2 /* {0x06, "MCS-2/P1"} */,
1799    1 /* {0x07, "MCS-1/P1"} */
1800 };
1801 
1802 static crumb_spec_t bits_spec_ul_bsn1[] = {
1803     {10, 6},
1804     {0,  5},
1805     {0,  0}
1806 };
1807 static crumb_spec_t bits_spec_ul_bsn2[] = {
1808     {8,  8},
1809     {0,  2},
1810     {0,  0}
1811 };
1812 
1813 static crumb_spec_t bits_spec_ul_tfi[] = {
1814     {13, 3},
1815     {0,  2},
1816     {0,  0}
1817 };
1818 
1819 static crumb_spec_t bits_spec_ul_type2_cps[] = {
1820     {15, 1},
1821     {0,  2},
1822     {0,  0}
1823 };
1824 static crumb_spec_t bits_spec_ul_type3_cps[] = {
1825     {14, 2},
1826     {0,  2},
1827     {0,  0}
1828 };
1829 
1830 static crumb_spec_t bits_spec_dl_type1_bsn1[] = {
1831     {23, 1},
1832     {8,  8},
1833     {0,  2},
1834     {0,  0}
1835 };
1836 static crumb_spec_t bits_spec_dl_type1_bsn2[] = {
1837     {13, 3},
1838     {0,  7},
1839     {0,  0}
1840 };
1841 
1842 static crumb_spec_t bits_spec_dl_type2_bsn[] = {
1843     {23, 1},
1844     {8,  8},
1845     {0,  2},
1846     {0,  0}
1847 };
1848 
1849 static crumb_spec_t bits_spec_dl_type3_bsn[] = {
1850     {23, 1},
1851     {8,  8},
1852     {0,  2},
1853     {0,  0}
1854 };
1855 
1856 static crumb_spec_t bits_spec_dl_ec_type3_bsn[] = {
1857     {13, 3},
1858     {0,  2},
1859     {0,  0}
1860 };
1861 
1862 static crumb_spec_t bits_spec_dl_ec_type3_rrbp[] = {
1863     {25, 2},
1864     {0,  1},
1865     {0,  0}
1866 };
1867 
1868 static crumb_spec_t bits_spec_dl_tfi[] = {
1869     {12, 4},
1870     {0,  1},
1871     {0,  0}
1872 };
1873 
1874 static crumb_spec_t bits_spec_ul_ec_type3_dl_cc_est[] = {
1875     {15, 1},
1876     {0,  3},
1877     {0,  0}
1878 };
1879 
1880 /* CSN1 structures */
1881 /*(not all parts of CSN_DESCR structure are always initialized.)*/
1882 static const
CSN_DESCR_BEGIN(PLMN_t)1883 CSN_DESCR_BEGIN(PLMN_t)
1884   M_UINT       (PLMN_t,  MCC2,  4, &hf_packet_plmn_mcc2),
1885   M_UINT       (PLMN_t,  MCC1,  4, &hf_packet_plmn_mcc1),
1886   M_UINT       (PLMN_t,  MNC3,  4, &hf_packet_plmn_mnc3),
1887   M_UINT       (PLMN_t,  MCC3,  4, &hf_packet_plmn_mcc3),
1888   M_UINT       (PLMN_t,  MNC2,  4, &hf_packet_plmn_mnc2),
1889   M_UINT       (PLMN_t,  MNC1,  4, &hf_packet_plmn_mnc1),
1890 CSN_DESCR_END  (PLMN_t)
1891 
1892 static const
1893 CSN_DESCR_BEGIN(StartingTime_t)
1894   M_UINT       (StartingTime_t,  N32,  5, &hf_startingtime_n32),
1895   M_UINT       (StartingTime_t,  N51,  6, &hf_startingtime_n51),
1896   M_UINT       (StartingTime_t,  N26,  5, &hf_startingtime_n26),
1897 CSN_DESCR_END  (StartingTime_t)
1898 
1899 /* < Global TFI IE > */
1900 static const
1901 CSN_DESCR_BEGIN(Global_TFI_t)
1902   M_UNION      (Global_TFI_t, 2, &hf_global_tfi),
1903   M_UINT       (Global_TFI_t,  u.UPLINK_TFI,  5, &hf_uplink_tfi),
1904   M_UINT       (Global_TFI_t,  u.DOWNLINK_TFI,  5, &hf_downlink_tfi),
1905 CSN_DESCR_END  (Global_TFI_t)
1906 
1907 /* < Starting Frame Number Description IE > */
1908 static const
1909 CSN_DESCR_BEGIN(Starting_Frame_Number_t)
1910   M_UNION      (Starting_Frame_Number_t, 2, &hf_starting_frame_number),
1911   M_TYPE       (Starting_Frame_Number_t, u.StartingTime, StartingTime_t),
1912   M_UINT       (Starting_Frame_Number_t,  u.k,  13, &hf_starting_frame_number_k),
1913 CSN_DESCR_END(Starting_Frame_Number_t)
1914 
1915 /* < Ack/Nack Description IE > */
1916 static const
1917 CSN_DESCR_BEGIN(Ack_Nack_Description_t)
1918   M_UINT       (Ack_Nack_Description_t,  FINAL_ACK_INDICATION, 1, &hf_final_ack_indication),
1919   M_UINT       (Ack_Nack_Description_t,  STARTING_SEQUENCE_NUMBER,  7, &hf_starting_sequence_number),
1920   M_BITMAP     (Ack_Nack_Description_t, RECEIVED_BLOCK_BITMAP, 64, &hf_received_block_bitmap),
1921 CSN_DESCR_END  (Ack_Nack_Description_t)
1922 
1923 /* < Packet Timing Advance IE > */
1924 static const
1925 CSN_DESCR_BEGIN(Packet_Timing_Advance_t)
1926   M_NEXT_EXIST (Packet_Timing_Advance_t, Exist_TIMING_ADVANCE_VALUE, 1, &hf_timing_advance_value_exist),
1927   M_UINT       (Packet_Timing_Advance_t,  TIMING_ADVANCE_VALUE, 6, &hf_timing_advance_value),
1928 
1929   M_NEXT_EXIST (Packet_Timing_Advance_t, Exist_IndexAndtimeSlot, 2, &hf_timing_advance_index_exist),
1930   M_UINT       (Packet_Timing_Advance_t, TIMING_ADVANCE_INDEX, 4, &hf_timing_advance_index),
1931   M_UINT       (Packet_Timing_Advance_t, TIMING_ADVANCE_TIMESLOT_NUMBER, 3, &hf_timing_advance_timeslot_number),
1932 CSN_DESCR_END  (Packet_Timing_Advance_t)
1933 
1934 /* < Power Control Parameters IE > */
1935 static const
1936 CSN_DESCR_BEGIN(GPRS_Power_Control_Parameters_t)
1937   M_UINT       (GPRS_Power_Control_Parameters_t, ALPHA, 4, &hf_alpha),
1938   M_UINT       (GPRS_Power_Control_Parameters_t, T_AVG_W, 5, &hf_t_avg_w),
1939   M_UINT       (GPRS_Power_Control_Parameters_t, T_AVG_T, 5, &hf_t_avg_t),
1940   M_UINT       (GPRS_Power_Control_Parameters_t, PC_MEAS_CHAN, 1, &hf_pc_meas_chan),
1941   M_UINT       (GPRS_Power_Control_Parameters_t, N_AVG_I, 4, &hf_n_avg_i),
1942 CSN_DESCR_END  (GPRS_Power_Control_Parameters_t)
1943 
1944 /* < Global Power Control Parameters IE > */
1945 static const
1946 CSN_DESCR_BEGIN(Global_Power_Control_Parameters_t)
1947   M_UINT       (Global_Power_Control_Parameters_t, ALPHA, 4, &hf_alpha),
1948   M_UINT       (Global_Power_Control_Parameters_t, T_AVG_W, 5, &hf_t_avg_w),
1949   M_UINT       (Global_Power_Control_Parameters_t, T_AVG_T, 5, &hf_t_avg_t),
1950   M_UINT       (Global_Power_Control_Parameters_t, Pb, 4, &hf_global_power_control_parameters_pb),
1951   M_UINT       (Global_Power_Control_Parameters_t, PC_MEAS_CHAN, 1, &hf_pc_meas_chan),
1952   M_UINT       (Global_Power_Control_Parameters_t, INT_MEAS_CHANNEL_LIST_AVAIL, 1, &hf_global_power_control_parameters_int_meas_channel_list_avail),
1953   M_UINT       (Global_Power_Control_Parameters_t, N_AVG_I, 4, &hf_n_avg_i),
1954 CSN_DESCR_END  (Global_Power_Control_Parameters_t)
1955 
1956 /* < Global Packet Timing Advance IE > */
1957 static const
1958 CSN_DESCR_BEGIN(Global_Packet_Timing_Advance_t)
1959   M_NEXT_EXIST (Global_Packet_Timing_Advance_t, Exist_TIMING_ADVANCE_VALUE, 1, &hf_timing_advance_value_exist),
1960   M_UINT       (Global_Packet_Timing_Advance_t,  TIMING_ADVANCE_VALUE,  6, &hf_timing_advance_value),
1961 
1962   M_NEXT_EXIST (Global_Packet_Timing_Advance_t, Exist_UPLINK_TIMING_ADVANCE, 2, &hf_ul_timing_advance_index_exist),
1963   M_UINT       (Global_Packet_Timing_Advance_t,  UPLINK_TIMING_ADVANCE_INDEX,  4, &hf_ul_timing_advance_index),
1964   M_UINT       (Global_Packet_Timing_Advance_t,  UPLINK_TIMING_ADVANCE_TIMESLOT_NUMBER,  3, &hf_ul_timing_advance_timeslot_number),
1965 
1966   M_NEXT_EXIST (Global_Packet_Timing_Advance_t, Exist_DOWNLINK_TIMING_ADVANCE, 2, &hf_dl_timing_advance_index_exist),
1967   M_UINT       (Global_Packet_Timing_Advance_t,  DOWNLINK_TIMING_ADVANCE_INDEX,  4, &hf_dl_timing_advance_index),
1968   M_UINT       (Global_Packet_Timing_Advance_t,  DOWNLINK_TIMING_ADVANCE_TIMESLOT_NUMBER,  3, &hf_dl_timing_advance_timeslot_number),
1969 CSN_DESCR_END  (Global_Packet_Timing_Advance_t)
1970 
1971 /* < Channel Quality Report struct > */
1972 static const
1973 CSN_DESCR_BEGIN(Channel_Quality_Report_t)
1974   M_UINT       (Channel_Quality_Report_t,  C_VALUE,  6, &hf_channel_quality_report_c_value),
1975   M_UINT       (Channel_Quality_Report_t,  RXQUAL,  3, &hf_channel_quality_report_rxqual),
1976   M_UINT       (Channel_Quality_Report_t,  SIGN_VAR,  6, &hf_channel_quality_report_sign_var),
1977 
1978   M_NEXT_EXIST (Channel_Quality_Report_t, Slot[0].Exist, 1, &hf_channel_quality_report_slot0_i_level_tn_exist),
1979   M_UINT       (Channel_Quality_Report_t,  Slot[0].I_LEVEL_TN,  4, &hf_channel_quality_report_slot0_i_level_tn),
1980 
1981   M_NEXT_EXIST (Channel_Quality_Report_t, Slot[1].Exist, 1, &hf_channel_quality_report_slot1_i_level_tn_exist),
1982   M_UINT       (Channel_Quality_Report_t,  Slot[1].I_LEVEL_TN,  4, &hf_channel_quality_report_slot1_i_level_tn),
1983 
1984   M_NEXT_EXIST (Channel_Quality_Report_t, Slot[2].Exist, 1, &hf_channel_quality_report_slot2_i_level_tn_exist),
1985   M_UINT       (Channel_Quality_Report_t,  Slot[2].I_LEVEL_TN,  4, &hf_channel_quality_report_slot2_i_level_tn),
1986 
1987   M_NEXT_EXIST (Channel_Quality_Report_t, Slot[3].Exist, 1, &hf_channel_quality_report_slot3_i_level_tn_exist),
1988   M_UINT       (Channel_Quality_Report_t,  Slot[3].I_LEVEL_TN,  4, &hf_channel_quality_report_slot3_i_level_tn),
1989 
1990   M_NEXT_EXIST (Channel_Quality_Report_t, Slot[4].Exist, 1, &hf_channel_quality_report_slot4_i_level_tn_exist),
1991   M_UINT       (Channel_Quality_Report_t,  Slot[4].I_LEVEL_TN,  4, &hf_channel_quality_report_slot4_i_level_tn),
1992 
1993   M_NEXT_EXIST (Channel_Quality_Report_t, Slot[5].Exist, 1, &hf_channel_quality_report_slot5_i_level_tn_exist),
1994   M_UINT       (Channel_Quality_Report_t,  Slot[5].I_LEVEL_TN,  4, &hf_channel_quality_report_slot5_i_level_tn),
1995 
1996   M_NEXT_EXIST (Channel_Quality_Report_t, Slot[6].Exist, 1, &hf_channel_quality_report_slot6_i_level_tn_exist),
1997   M_UINT       (Channel_Quality_Report_t,  Slot[6].I_LEVEL_TN,  4, &hf_channel_quality_report_slot6_i_level_tn),
1998 
1999   M_NEXT_EXIST (Channel_Quality_Report_t, Slot[7].Exist, 1, &hf_channel_quality_report_slot7_i_level_tn_exist),
2000   M_UINT       (Channel_Quality_Report_t,  Slot[7].I_LEVEL_TN,  4, &hf_channel_quality_report_slot7_i_level_tn),
2001 CSN_DESCR_END  (Channel_Quality_Report_t)
2002 
2003 /* < EGPRS Ack/Nack Description struct > */
2004 static const
2005 CSN_DESCR_BEGIN   (EGPRS_AckNack_Desc_t)
2006   M_UINT          (EGPRS_AckNack_Desc_t,  FINAL_ACK_INDICATION,  1, &hf_final_ack_indication),
2007   M_UINT          (EGPRS_AckNack_Desc_t,  BEGINNING_OF_WINDOW,  1, &hf_egprs_acknack_beginning_of_window),
2008   M_UINT          (EGPRS_AckNack_Desc_t,  END_OF_WINDOW,  1, &hf_egprs_acknack_end_of_window),
2009   M_UINT          (EGPRS_AckNack_Desc_t,  STARTING_SEQUENCE_NUMBER,  11, &hf_starting_sequence_number),
2010 
2011   M_NEXT_EXIST    (EGPRS_AckNack_Desc_t,  Exist_CRBB, 3, &hf_egprs_acknack_crbb_exist),
2012   M_UINT          (EGPRS_AckNack_Desc_t,  CRBB_LENGTH,  7, &hf_egprs_acknack_crbb_length),
2013   M_UINT          (EGPRS_AckNack_Desc_t,  CRBB_STARTING_COLOR_CODE,  1, &hf_egprs_acknack_crbb_starting_color_code),
2014   M_LEFT_VAR_BMP  (EGPRS_AckNack_Desc_t,  CRBB, CRBB_LENGTH, 0, &hf_egprs_acknack_crbb_bitmap),
2015 
2016   M_LEFT_VAR_BMP_1(EGPRS_AckNack_Desc_t,  URBB, URBB_LENGTH, 0, &hf_egprs_acknack_urbb_bitmap),
2017 CSN_DESCR_END     (EGPRS_AckNack_Desc_t)
2018 
2019 /* < EGPRS Ack/Nack Description IE > */
2020 static gint16 Egprs_Ack_Nack_Desc_w_len_Dissector(proto_tree *tree, csnStream_t* ar, tvbuff_t *tvb, void* data, int ett_csn1 _U_)
2021 {
2022   return csnStreamDissector(tree, ar, CSNDESCR(EGPRS_AckNack_Desc_t), tvb, data, ett_gsm_rlcmac);
2023 }
2024 
2025 /* this intermediate structure is only required because M_SERIALIZE cannot be used as a member of M_UNION */
2026 static const
2027 CSN_DESCR_BEGIN(EGPRS_AckNack_w_len_t)
2028   M_SERIALIZE  (EGPRS_AckNack_w_len_t, Desc, 8, &hf_egprs_acknack_dissector, Egprs_Ack_Nack_Desc_w_len_Dissector),
2029 CSN_DESCR_END  (EGPRS_AckNack_w_len_t)
2030 
2031 static const
2032 CSN_DESCR_BEGIN(EGPRS_AckNack_t)
2033   M_UNION      (EGPRS_AckNack_t,  2, &hf_egprs_acknack),
2034   M_TYPE       (EGPRS_AckNack_t, Desc, EGPRS_AckNack_Desc_t),
2035   M_TYPE       (EGPRS_AckNack_t, Desc, EGPRS_AckNack_w_len_t),
2036 CSN_DESCR_END  (EGPRS_AckNack_t)
2037 
2038 /* <P1 Rest Octets> */
2039 /* <P2 Rest Octets> */
2040 #if 0
2041 static const
2042 CSN_DESCR_BEGIN(MobileAllocationIE_t)
2043   M_UINT       (MobileAllocationIE_t,  Length,  8, &hf_mobileallocationie_length),
2044   M_VAR_ARRAY  (MobileAllocationIE_t, MA, Length, 0),
2045 CSN_DESCR_END  (MobileAllocationIE_t)
2046 #endif
2047 
2048 #if 0
2049 static const
2050 CSN_DESCR_BEGIN(SingleRFChannel_t)
2051   M_UINT       (SingleRFChannel_t,  spare,  2, &hf_single_rf_channel_spare),
2052   M_UINT       (SingleRFChannel_t,  ARFCN,  10, &hf_arfcn),
2053 CSN_DESCR_END  (SingleRFChannel_t)
2054 #endif
2055 
2056 #if 0
2057 static const
2058 CSN_DESCR_BEGIN(RFHoppingChannel_t)
2059   M_UINT       (RFHoppingChannel_t,  MAIO,  6, &hf_maio),
2060   M_UINT       (RFHoppingChannel_t,  HSN,  6, &hf_hsn),
2061 CSN_DESCR_END  (RFHoppingChannel_t)
2062 #endif
2063 
2064 #if 0
2065 static const
2066 CSN_DESCR_BEGIN(MobileAllocation_or_Frequency_Short_List_t)
2067   M_UNION      (MobileAllocation_or_Frequency_Short_List_t, 2),
2068   M_BITMAP     (MobileAllocation_or_Frequency_Short_List_t, u.Frequency_Short_List, 64),
2069   M_TYPE       (MobileAllocation_or_Frequency_Short_List_t, u.MA, MobileAllocationIE_t),
2070 CSN_DESCR_END  (MobileAllocation_or_Frequency_Short_List_t)
2071 #endif
2072 
2073 #if 0
2074 static const
2075 CSN_DESCR_BEGIN(Channel_Description_t)
2076   M_UINT       (Channel_Description_t,  Channel_type_and_TDMA_offset,  5, &hf_channel_description_channel_type_and_tdma_offset),
2077   M_UINT       (Channel_Description_t,  TN,  3, &hf_channel_description_tn),
2078   M_UINT       (Channel_Description_t,  TSC,  3, &hf_tsc),
2079 
2080   M_UNION      (Channel_Description_t, 2),
2081   M_TYPE       (Channel_Description_t, u.SingleRFChannel, SingleRFChannel_t),
2082   M_TYPE       (Channel_Description_t, u.RFHoppingChannel, RFHoppingChannel_t),
2083 CSN_DESCR_END(Channel_Description_t)
2084 #endif
2085 
2086 #if 0
2087 static const
2088 CSN_DESCR_BEGIN(Group_Channel_Description_t)
2089   M_TYPE       (Group_Channel_Description_t, Channel_Description, Channel_Description_t),
2090 
2091   M_NEXT_EXIST (Group_Channel_Description_t, Exist_Hopping, 1),
2092   M_TYPE       (Group_Channel_Description_t, MA_or_Frequency_Short_List, MobileAllocation_or_Frequency_Short_List_t),
2093 CSN_DESCR_END  (Group_Channel_Description_t)
2094 #endif
2095 
2096 #if 0
2097 static const
2098 CSN_DESCR_BEGIN(Group_Call_Reference_t)
2099   M_UINT       (Group_Call_Reference_t,  value,  27, &hf_group_call_reference_value),
2100   M_UINT       (Group_Call_Reference_t,  SF, 1,&hf_group_call_reference_sf),
2101   M_UINT       (Group_Call_Reference_t,  AF, 1, &hf_group_call_reference_af),
2102   M_UINT       (Group_Call_Reference_t,  call_priority,  3, &hf_group_call_reference_call_priority),
2103   M_UINT       (Group_Call_Reference_t,  Ciphering_information,  4, &hf_group_call_reference_ciphering_information),
2104 CSN_DESCR_END  (Group_Call_Reference_t)
2105 #endif
2106 
2107 #if 0
2108 static const
2109 CSN_DESCR_BEGIN(Group_Call_information_t)
2110   M_TYPE       (Group_Call_information_t, Group_Call_Reference, Group_Call_Reference_t),
2111 
2112   M_NEXT_EXIST (Group_Call_information_t, Exist_Group_Channel_Description, 1),
2113   M_TYPE       (Group_Call_information_t, Group_Channel_Description, Group_Channel_Description_t),
2114 CSN_DESCR_END (Group_Call_information_t)
2115 #endif
2116 
2117 #if 0
2118 static const
2119 CSN_DESCR_BEGIN  (P1_Rest_Octets_t)
2120   M_NEXT_EXIST_LH(P1_Rest_Octets_t, Exist_NLN_PCH_and_NLN_status, 2),
2121   M_UINT         (P1_Rest_Octets_t,  NLN_PCH,  2, &hf_nln_pch),
2122   M_UINT         (P1_Rest_Octets_t,  NLN_status,  1, &hf_nln_status),
2123 
2124   M_NEXT_EXIST_LH(P1_Rest_Octets_t, Exist_Priority1, 1),
2125   M_UINT         (P1_Rest_Octets_t,  Priority1,  3, &hf_priority),
2126 
2127   M_NEXT_EXIST_LH(P1_Rest_Octets_t, Exist_Priority2, 1),
2128   M_UINT         (P1_Rest_Octets_t,  Priority2,  3, &hf_priority),
2129 
2130   M_NEXT_EXIST_LH(P1_Rest_Octets_t, Exist_Group_Call_information, 1),
2131   M_TYPE         (P1_Rest_Octets_t, Group_Call_information, Group_Call_information_t),
2132 
2133   M_UINT_LH      (P1_Rest_Octets_t,  Packet_Page_Indication_1,  1, &hf_p1_rest_octets_packet_page_indication_1),
2134   M_UINT_LH      (P1_Rest_Octets_t,  Packet_Page_Indication_2,  1, &hf_p1_rest_octets_packet_page_indication_2),
2135 CSN_DESCR_END    (P1_Rest_Octets_t)
2136 #endif
2137 
2138 #if 0
2139 static const
2140 CSN_DESCR_BEGIN  (P2_Rest_Octets_t)
2141   M_NEXT_EXIST_LH(P2_Rest_Octets_t, Exist_CN3, 1),
2142   M_UINT         (P2_Rest_Octets_t,  CN3,  2, &hf_p2_rest_octets_cn3),
2143 
2144   M_NEXT_EXIST_LH(P2_Rest_Octets_t, Exist_NLN_and_status, 2),
2145   M_UINT         (P2_Rest_Octets_t,  NLN,  2, &hf_nln),
2146   M_UINT         (P2_Rest_Octets_t,  NLN_status,  1, &hf_nln_status),
2147 
2148   M_NEXT_EXIST_LH(P2_Rest_Octets_t, Exist_Priority1, 1),
2149   M_UINT         (P2_Rest_Octets_t,  Priority1,  3, &hf_priority),
2150 
2151   M_NEXT_EXIST_LH(P2_Rest_Octets_t, Exist_Priority2, 1),
2152   M_UINT         (P2_Rest_Octets_t,  Priority2,  3, &hf_priority),
2153 
2154   M_NEXT_EXIST_LH(P2_Rest_Octets_t, Exist_Priority3, 1),
2155   M_UINT         (P2_Rest_Octets_t,  Priority3,  3, &hf_priority),
2156 
2157   M_UINT_LH      (P2_Rest_Octets_t,  Packet_Page_Indication_3,  1, &hf_p2_rest_octets_packet_page_indication_3),
2158 CSN_DESCR_END    (P2_Rest_Octets_t)
2159 #endif
2160 
2161 /* <IA Rest Octets>
2162  * Note!!
2163  * - first two bits skipped and frequencyparameters skipped
2164  * - additions for R99 and EGPRS added
2165  */
2166 #if 0
2167 static const
2168 CSN_DESCR_BEGIN(DynamicAllocation_t)
2169   M_UINT       (DynamicAllocation_t,  USF,  3, &hf_usf),
2170   M_UINT       (DynamicAllocation_t,  USF_GRANULARITY,  1, &hf_usf_granularity),
2171 
2172   M_NEXT_EXIST (DynamicAllocation_t, Exist_P0_PR_MODE, 2),
2173   M_UINT       (DynamicAllocation_t,  P0,  4, &hf_p0),
2174   M_UINT       (DynamicAllocation_t,  PR_MODE,  1, &hf_pr_mode),
2175 CSN_DESCR_END  (DynamicAllocation_t)
2176 #endif
2177 
2178 #if 0
2179 static const
2180 CSN_DESCR_BEGIN(EGPRS_TwoPhaseAccess_t)
2181   M_NEXT_EXIST (EGPRS_TwoPhaseAccess_t, Exist_ALPHA, 1),
2182   M_UINT       (EGPRS_TwoPhaseAccess_t, ALPHA, 4, &hf_alpha),
2183 
2184   M_UINT       (EGPRS_TwoPhaseAccess_t, GAMMA, 5, &hf_gamma),
2185   M_TYPE       (EGPRS_TwoPhaseAccess_t, TBF_STARTING_TIME, StartingTime_t),
2186   M_UINT       (EGPRS_TwoPhaseAccess_t, NR_OF_RADIO_BLOCKS_ALLOCATED, 2, &hf_nr_of_radio_blocks_allocated),
2187 
2188   M_NEXT_EXIST (EGPRS_TwoPhaseAccess_t, Exist_P0_BTS_PWR_CTRL_PR_MODE, 3),
2189   M_UINT       (EGPRS_TwoPhaseAccess_t, P0, 4, &hf_p0),
2190   M_UINT       (EGPRS_TwoPhaseAccess_t, BTS_PWR_CTRL_MODE, 1, &hf_bts_pwr_ctrl_mode),
2191   M_UINT       (EGPRS_TwoPhaseAccess_t, PR_MODE,  1, &hf_pr_mode),
2192 CSN_DESCR_END  (EGPRS_TwoPhaseAccess_t)
2193 #endif
2194 
2195 #if 0
2196 static const
2197 CSN_DESCR_BEGIN(EGPRS_OnePhaseAccess_t)
2198   M_UINT       (EGPRS_OnePhaseAccess_t,  TFI_ASSIGNMENT,  5, &hf_uplink_tfi),
2199   M_UINT       (EGPRS_OnePhaseAccess_t,  POLLING,  1, &hf_polling),
2200 
2201   M_UNION      (EGPRS_OnePhaseAccess_t, 2),
2202   M_TYPE       (EGPRS_OnePhaseAccess_t, Allocation.DynamicAllocation, DynamicAllocation_t),
2203   CSN_ERROR    (EGPRS_OnePhaseAccess_t, "1 <Fixed Allocation>", CSN_ERROR_STREAM_NOT_SUPPORTED, &ei_gsm_rlcmac_stream_not_supported),
2204 
2205   M_UINT       (EGPRS_OnePhaseAccess_t,  EGPRS_CHANNEL_CODING_COMMAND,  4, &hf_egprs_channel_coding_command),
2206   M_UINT       (EGPRS_OnePhaseAccess_t,  TLLI_BLOCK_CHANNEL_CODING,  1, &hf_tlli_block_channel_coding),
2207 
2208   M_NEXT_EXIST (EGPRS_OnePhaseAccess_t, Exist_BEP_PERIOD2, 1),
2209   M_UINT       (EGPRS_OnePhaseAccess_t,  BEP_PERIOD2, 4, &hf_bep_period2),
2210 
2211   M_UINT       (EGPRS_OnePhaseAccess_t,  RESEGMENT, 1, &hf_resegment),
2212   M_UINT       (EGPRS_OnePhaseAccess_t,  EGPRS_WindowSize,  5, &hf_egprs_windowsize),
2213 
2214   M_NEXT_EXIST (EGPRS_OnePhaseAccess_t, Exist_ALPHA, 1),
2215   M_UINT       (EGPRS_OnePhaseAccess_t,  ALPHA, 4, &hf_alpha),
2216 
2217   M_UINT       (EGPRS_OnePhaseAccess_t,  GAMMA, 5, &hf_gamma),
2218 
2219   M_NEXT_EXIST (EGPRS_OnePhaseAccess_t, Exist_TIMING_ADVANCE_INDEX, 1),
2220   M_UINT       (EGPRS_OnePhaseAccess_t,  TIMING_ADVANCE_INDEX,  4, &hf_timing_advance_index),
2221 
2222   M_NEXT_EXIST (EGPRS_OnePhaseAccess_t, Exist_TBF_STARTING_TIME, 1),
2223   M_TYPE       (EGPRS_OnePhaseAccess_t, TBF_STARTING_TIME, StartingTime_t),
2224 CSN_DESCR_END  (EGPRS_OnePhaseAccess_t)
2225 #endif
2226 
2227 #if 0
2228 static const
2229 CSN_DESCR_BEGIN(IA_EGPRS_00_t)
2230   M_UINT       (IA_EGPRS_00_t,  ExtendedRA,  5, &hf_extendedra),
2231 
2232   M_REC_ARRAY  (IA_EGPRS_00_t, AccessTechnologyType, NrOfAccessTechnologies, 4),
2233 
2234   M_UNION      (IA_EGPRS_00_t, 2),
2235   M_TYPE       (IA_EGPRS_00_t, Access.TwoPhaseAccess, EGPRS_TwoPhaseAccess_t),
2236   M_TYPE       (IA_EGPRS_00_t, Access.OnePhaseAccess, EGPRS_OnePhaseAccess_t),
2237 CSN_DESCR_END  (IA_EGPRS_00_t)
2238 #endif
2239 
2240 #if 0
2241 static const
2242 CSN_ChoiceElement_t IA_EGPRS_Choice[] =
2243 {
2244   {2, 0x00, 0, M_TYPE   (IA_EGPRS_t, u.IA_EGPRS_PUA, IA_EGPRS_00_t)},
2245   {2, 0x01, 0, CSN_ERROR(IA_EGPRS_t, "01 <IA_EGPRS>", CSN_ERROR_STREAM_NOT_SUPPORTED, &ei_gsm_rlcmac_stream_not_supported)},
2246   {1, 0x01, 0, CSN_ERROR(IA_EGPRS_t, "1 <IA_EGPRS>", CSN_ERROR_STREAM_NOT_SUPPORTED, &ei_gsm_rlcmac_stream_not_supported)}
2247 };
2248 #endif
2249 
2250 /* Please observe the double usage of UnionType element.
2251  * First, it is used to store the second bit of LL/LH identification of EGPRS contents.
2252  * Thereafter, UnionType will be used to store the index to detected choice.
2253  */
2254 #if 0
2255 static const
2256 CSN_DESCR_BEGIN(IA_EGPRS_t)
2257   M_UINT       (IA_EGPRS_t,  UnionType,  1, &hf_ia_egprs_uniontype ),
2258   M_CHOICE     (IA_EGPRS_t, UnionType, IA_EGPRS_Choice, ElementsOf(IA_EGPRS_Choice)),
2259 CSN_DESCR_END  (IA_EGPRS_t)
2260 
2261 static const
2262 CSN_DESCR_BEGIN(IA_FreqParamsBeforeTime_t)
2263   M_UINT       (IA_FreqParamsBeforeTime_t,  Length,  6, &hf_ia_freqparamsbeforetime_length),
2264   M_UINT       (IA_FreqParamsBeforeTime_t,  MAIO,  6, &hf_maio),
2265   M_VAR_ARRAY  (IA_FreqParamsBeforeTime_t, MobileAllocation, Length, 8),
2266 CSN_DESCR_END  (IA_FreqParamsBeforeTime_t)
2267 #endif
2268 
2269 #if 0
2270 static const
2271 CSN_DESCR_BEGIN  (GPRS_SingleBlockAllocation_t)
2272   M_NEXT_EXIST   (GPRS_SingleBlockAllocation_t, Exist_ALPHA, 1),
2273   M_UINT         (GPRS_SingleBlockAllocation_t,  ALPHA, 4, &hf_alpha),
2274 
2275   M_UINT         (GPRS_SingleBlockAllocation_t, GAMMA, 5, &hf_gamma),
2276   M_FIXED        (GPRS_SingleBlockAllocation_t, 2, 0x01),
2277   M_TYPE         (GPRS_SingleBlockAllocation_t, TBF_STARTING_TIME, StartingTime_t), /*bit(16)*/
2278 
2279   M_NEXT_EXIST_LH(GPRS_SingleBlockAllocation_t, Exist_P0_BTS_PWR_CTRL_PR_MODE, 3),
2280   M_UINT         (GPRS_SingleBlockAllocation_t,  P0, 4, &hf_p0),
2281   M_UINT         (GPRS_SingleBlockAllocation_t,  BTS_PWR_CTRL_MODE, 1, &hf_bts_pwr_ctrl_mode),
2282   M_UINT         (GPRS_SingleBlockAllocation_t,  PR_MODE, 1, &hf_pr_mode),
2283 CSN_DESCR_END    (GPRS_SingleBlockAllocation_t)
2284 #endif
2285 
2286 #if 0
2287 static const
2288 CSN_DESCR_BEGIN  (GPRS_DynamicOrFixedAllocation_t)
2289   M_UINT         (GPRS_DynamicOrFixedAllocation_t,  TFI_ASSIGNMENT,  5, &hf_uplink_tfi),
2290   M_UINT         (GPRS_DynamicOrFixedAllocation_t,  POLLING,  1, &hf_polling),
2291 
2292   M_UNION        (GPRS_DynamicOrFixedAllocation_t, 2),
2293   M_TYPE         (GPRS_DynamicOrFixedAllocation_t, Allocation.DynamicAllocation, DynamicAllocation_t),
2294   CSN_ERROR      (GPRS_DynamicOrFixedAllocation_t, "1 <Fixed Allocation>", CSN_ERROR_STREAM_NOT_SUPPORTED, &ei_gsm_rlcmac_stream_not_supported),
2295 
2296   M_UINT         (GPRS_DynamicOrFixedAllocation_t,  CHANNEL_CODING_COMMAND, 2, &hf_gprs_channel_coding_command),
2297   M_UINT         (GPRS_DynamicOrFixedAllocation_t,  TLLI_BLOCK_CHANNEL_CODING, 1, &hf_tlli_block_channel_coding),
2298 
2299   M_NEXT_EXIST   (GPRS_DynamicOrFixedAllocation_t, Exist_ALPHA, 1),
2300   M_UINT         (GPRS_DynamicOrFixedAllocation_t,  ALPHA, 4, &hf_alpha),
2301 
2302   M_UINT         (GPRS_DynamicOrFixedAllocation_t, GAMMA, 5, &hf_gamma),
2303 
2304   M_NEXT_EXIST   (GPRS_DynamicOrFixedAllocation_t, Exist_TIMING_ADVANCE_INDEX, 1),
2305   M_UINT         (GPRS_DynamicOrFixedAllocation_t,  TIMING_ADVANCE_INDEX,  4, &hf_timing_advance_index),
2306 
2307   M_NEXT_EXIST   (GPRS_DynamicOrFixedAllocation_t, Exist_TBF_STARTING_TIME, 1),
2308   M_TYPE         (GPRS_DynamicOrFixedAllocation_t, TBF_STARTING_TIME, StartingTime_t),
2309 CSN_DESCR_END    (GPRS_DynamicOrFixedAllocation_t)
2310 #endif
2311 
2312 #if 0
2313 static const
2314 CSN_DESCR_BEGIN(PU_IA_AdditionsR99_t)
2315   M_NEXT_EXIST (PU_IA_AdditionsR99_t, Exist_ExtendedRA, 1),
2316   M_UINT       (PU_IA_AdditionsR99_t,  ExtendedRA, 5, &hf_extendedra),
2317 CSN_DESCR_END  (PU_IA_AdditionsR99_t)
2318 #endif
2319 
2320 #if 0
2321 static const
2322 CSN_DESCR_BEGIN          (Packet_Uplink_ImmAssignment_t)
2323   M_UNION                (Packet_Uplink_ImmAssignment_t, 2),
2324   M_TYPE                 (Packet_Uplink_ImmAssignment_t, Access.SingleBlockAllocation, GPRS_SingleBlockAllocation_t),
2325   M_TYPE                 (Packet_Uplink_ImmAssignment_t, Access.DynamicOrFixedAllocation, GPRS_DynamicOrFixedAllocation_t),
2326 
2327   M_NEXT_EXIST_OR_NULL_LH(Packet_Uplink_ImmAssignment_t, Exist_AdditionsR99, 1, &hf_additionsr99_exist),
2328   M_TYPE                 (Packet_Uplink_ImmAssignment_t, AdditionsR99, PU_IA_AdditionsR99_t),
2329 CSN_DESCR_END            (Packet_Uplink_ImmAssignment_t)
2330 #endif
2331 
2332 #if 0
2333 static const
2334 CSN_DESCR_BEGIN(PD_IA_AdditionsR99_t)
2335   M_UINT       (PD_IA_AdditionsR99_t,  EGPRS_WindowSize, 5, &hf_egprs_windowsize),
2336   M_UINT       (PD_IA_AdditionsR99_t,  LINK_QUALITY_MEASUREMENT_MODE, 2, &hf_link_quality_measurement_mode),
2337 
2338   M_NEXT_EXIST (PD_IA_AdditionsR99_t, Exist_BEP_PERIOD2, 1),
2339   M_UINT       (PD_IA_AdditionsR99_t,  BEP_PERIOD2, 4, &hf_bep_period2),
2340 CSN_DESCR_END  (PD_IA_AdditionsR99_t)
2341 #endif
2342 
2343 #if 0
2344 static const
2345 CSN_DESCR_BEGIN(Packet_Downlink_ImmAssignment_t)
2346   M_UINT       (Packet_Downlink_ImmAssignment_t, TLLI, 32, &hf_tlli),
2347 
2348   M_NEXT_EXIST (Packet_Downlink_ImmAssignment_t, Exist_TFI_to_TA_VALID, 6 + 1),
2349   M_UINT       (Packet_Downlink_ImmAssignment_t,  TFI_ASSIGNMENT, 5, &hf_downlink_tfi),
2350 
2351   M_UINT       (Packet_Downlink_ImmAssignment_t, RLC_MODE, 1, &hf_rlc_mode),
2352   M_NEXT_EXIST (Packet_Downlink_ImmAssignment_t, Exist_ALPHA, 1),
2353   M_UINT       (Packet_Downlink_ImmAssignment_t,  ALPHA, 4, &hf_alpha),
2354 
2355   M_UINT       (Packet_Downlink_ImmAssignment_t, GAMMA, 5, &hf_gamma),
2356   M_UINT       (Packet_Downlink_ImmAssignment_t, POLLING, 1, &hf_polling),
2357   M_UINT       (Packet_Downlink_ImmAssignment_t, TA_VALID, 1, &hf_ta_valid),
2358 
2359   M_NEXT_EXIST (Packet_Downlink_ImmAssignment_t, Exist_TIMING_ADVANCE_INDEX, 1),
2360   M_UINT       (Packet_Downlink_ImmAssignment_t,  TIMING_ADVANCE_INDEX, 4, &hf_timing_advance_index),
2361 
2362   M_NEXT_EXIST (Packet_Downlink_ImmAssignment_t, Exist_TBF_STARTING_TIME, 1),
2363   M_TYPE       (Packet_Downlink_ImmAssignment_t, TBF_STARTING_TIME, StartingTime_t),
2364 
2365   M_NEXT_EXIST (Packet_Downlink_ImmAssignment_t, Exist_P0_PR_MODE, 3),
2366   M_UINT       (Packet_Downlink_ImmAssignment_t,  P0, 4, &hf_p0),
2367   M_UINT       (Packet_Downlink_ImmAssignment_t,  BTS_PWR_CTRL_MODE, 1, &hf_bts_pwr_ctrl_mode),
2368   M_UINT       (Packet_Downlink_ImmAssignment_t,  PR_MODE, 1, &hf_pr_mode),
2369 
2370   M_NEXT_EXIST_OR_NULL_LH(Packet_Downlink_ImmAssignment_t, Exist_AdditionsR99, 1, &hf_additionsr99_exist),
2371   M_TYPE       (Packet_Downlink_ImmAssignment_t, AdditionsR99, PD_IA_AdditionsR99_t),
2372 CSN_DESCR_END  (Packet_Downlink_ImmAssignment_t)
2373 #endif
2374 
2375 #if 0
2376 static const
2377 CSN_DESCR_BEGIN          (Second_Part_Packet_Assignment_t)
2378   M_NEXT_EXIST_OR_NULL_LH(Second_Part_Packet_Assignment_t, Exist_SecondPart, 2),
2379   M_NEXT_EXIST           (Second_Part_Packet_Assignment_t, Exist_ExtendedRA, 1),
2380   M_UINT                 (Second_Part_Packet_Assignment_t,  ExtendedRA, 5, &hf_extendedra),
2381 CSN_DESCR_END            (Second_Part_Packet_Assignment_t)
2382 #endif
2383 
2384 #if 0
2385 static const
2386 CSN_DESCR_BEGIN(IA_PacketAssignment_UL_DL_t)
2387   M_UNION      (IA_PacketAssignment_UL_DL_t, 2),
2388   M_TYPE       (IA_PacketAssignment_UL_DL_t, ul_dl.Packet_Uplink_ImmAssignment, Packet_Uplink_ImmAssignment_t),
2389   M_TYPE       (IA_PacketAssignment_UL_DL_t, ul_dl.Packet_Downlink_ImmAssignment, Packet_Downlink_ImmAssignment_t),
2390 CSN_DESCR_END  (IA_PacketAssignment_UL_DL_t)
2391 #endif
2392 
2393 #if 0
2394 static const
2395 CSN_DESCR_BEGIN(IA_PacketAssignment_t)
2396   M_UNION      (IA_PacketAssignment_t, 2),
2397   M_TYPE       (IA_PacketAssignment_t, u.UplinkDownlinkAssignment, IA_PacketAssignment_UL_DL_t),
2398   M_TYPE       (IA_PacketAssignment_t, u.UplinkDownlinkAssignment, Second_Part_Packet_Assignment_t),
2399 CSN_DESCR_END  (IA_PacketAssignment_t)
2400 #endif
2401 
2402 /* <Packet Polling Request> */
2403 static const
2404 CSN_ChoiceElement_t PacketPollingID[] =
2405 {
2406   {1, 0,    0, M_TYPE(PacketPollingID_t, u.Global_TFI, Global_TFI_t)},
2407   {2, 0x02, 0, M_UINT(PacketPollingID_t, u.TLLI, 32, &hf_tlli)},
2408   {3, 0x06, 0, M_UINT(PacketPollingID_t, u.TQI, 16, &hf_tqi)},
2409 /*{3, 0x07, 0, M_TYPE(PacketUplinkID_t, u.Packet_Request_Reference, Packet_Request_Reference_t)},*/
2410 };
2411 
2412 static const
2413 CSN_DESCR_BEGIN(PacketPollingID_t)
2414   M_CHOICE     (PacketPollingID_t, UnionType, PacketPollingID, ElementsOf(PacketPollingID), &hf_packet_polling_id_choice),
2415 CSN_DESCR_END  (PacketPollingID_t)
2416 
2417 static const
2418 CSN_DESCR_BEGIN(Packet_Polling_Request_t)
2419   M_UINT       (Packet_Polling_Request_t,  MESSAGE_TYPE, 6, &hf_dl_message_type),
2420   M_UINT       (Packet_Polling_Request_t,  PAGE_MODE, 2, &hf_page_mode),
2421   M_TYPE       (Packet_Polling_Request_t, ID, PacketPollingID_t),
2422   M_UINT       (Packet_Polling_Request_t,  TYPE_OF_ACK, 1, &hf_ack_type),
2423   M_PADDING_BITS(Packet_Polling_Request_t, &hf_padding),
2424 CSN_DESCR_END  (Packet_Polling_Request_t)
2425 
2426 static const
2427 CSN_DESCR_BEGIN(MobileAllocation_t)
2428   M_UINT_OFFSET(MobileAllocation_t, MA_BitLength, 6, 1, &hf_mobile_bitlength),
2429   M_VAR_BITMAP (MobileAllocation_t, MA_BITMAP, MA_BitLength, 0, &hf_mobile_bitmap),
2430 CSN_DESCR_END  (MobileAllocation_t)
2431 
2432 static const
2433 CSN_DESCR_BEGIN(ARFCN_index_list_t)
2434   M_REC_ARRAY  (ARFCN_index_list_t, ARFCN_INDEX, ElementsOf_ARFCN_INDEX, 6, &hf_arfcn_index, &hf_arfcn_index_exist),
2435 CSN_DESCR_END  (ARFCN_index_list_t)
2436 
2437 static const
2438 CSN_DESCR_BEGIN(GPRS_Mobile_Allocation_t)
2439   M_UINT       (GPRS_Mobile_Allocation_t, HSN, 6, &hf_hsn),
2440   M_REC_ARRAY  (GPRS_Mobile_Allocation_t, RFL_NUMBER, ElementsOf_RFL_NUMBER, 4, &hf_gprs_mobile_allocation_rfl_number, &hf_gprs_mobile_allocation_rfl_number_exist),
2441   M_UNION      (GPRS_Mobile_Allocation_t, 2, &hf_mobile_union),
2442   M_TYPE       (GPRS_Mobile_Allocation_t, u.MA, MobileAllocation_t),
2443   M_TYPE       (GPRS_Mobile_Allocation_t, u.ARFCN_index_list, ARFCN_index_list_t),
2444 CSN_DESCR_END  (GPRS_Mobile_Allocation_t)
2445 
2446 /* < SI 13 Rest Octets > */
2447 static const
2448 CSN_DESCR_BEGIN (Extension_Bits_t)
2449   M_UINT_OFFSET (Extension_Bits_t, extension_length, 6, 1, &hf_si_length),
2450   M_LEFT_VAR_BMP(Extension_Bits_t, Extension_Info, extension_length, 0, &hf_si_rest_bitmap),
2451 CSN_DESCR_END   (Extension_Bits_t)
2452 
2453 static const
2454 CSN_DESCR_BEGIN(GPRS_Cell_Options_t)
2455   M_UINT       (GPRS_Cell_Options_t,  NMO,  2, &hf_gprs_cell_options_nmo),
2456   M_UINT       (GPRS_Cell_Options_t, T3168, 3, &hf_gprs_cell_options_t3168),
2457   M_UINT       (GPRS_Cell_Options_t, T3192, 3, &hf_gprs_cell_options_t3192),
2458   M_UINT       (GPRS_Cell_Options_t,  DRX_TIMER_MAX,  3, &hf_gprs_cell_options_drx_timer_max),
2459   M_UINT       (GPRS_Cell_Options_t,  ACCESS_BURST_TYPE, 1, &hf_gprs_cell_options_access_burst_type),
2460   M_UINT       (GPRS_Cell_Options_t,  CONTROL_ACK_TYPE, 1, &hf_ack_type),
2461   M_UINT       (GPRS_Cell_Options_t,  BS_CV_MAX,  4, &hf_gprs_cell_options_bs_cv_max),
2462 
2463   M_NEXT_EXIST (GPRS_Cell_Options_t, Exist_PAN, 3, &hf_gprs_cell_options_pan_exist),
2464   M_UINT       (GPRS_Cell_Options_t,  PAN_DEC,  3, &hf_gprs_cell_options_pan_dec),
2465   M_UINT       (GPRS_Cell_Options_t,  PAN_INC,  3, &hf_gprs_cell_options_pan_inc),
2466   M_UINT       (GPRS_Cell_Options_t,  PAN_MAX,  3, &hf_gprs_cell_options_pan_max),
2467 
2468   M_NEXT_EXIST (GPRS_Cell_Options_t, Exist_Extension_Bits, 1, &hf_gprs_cell_options_extension_exist),
2469   M_TYPE       (GPRS_Cell_Options_t, Extension_Bits, Extension_Bits_t),
2470 CSN_DESCR_END  (GPRS_Cell_Options_t)
2471 
2472 static const
2473 CSN_DESCR_BEGIN(PBCCH_Not_present_t)
2474   M_UINT       (PBCCH_Not_present_t,  RAC, 8, &hf_rac),
2475   M_UINT       (PBCCH_Not_present_t,  SPGC_CCCH_SUP, 1, &hf_pbcch_not_present_spgc_ccch_sup),
2476   M_UINT       (PBCCH_Not_present_t,  PRIORITY_ACCESS_THR,  3, &hf_pbcch_not_present_priority_access_thr),
2477   M_UINT       (PBCCH_Not_present_t,  NETWORK_CONTROL_ORDER,  2, &hf_pbcch_not_present_network_control_order),
2478   M_TYPE       (PBCCH_Not_present_t, GPRS_Cell_Options, GPRS_Cell_Options_t),
2479   M_TYPE       (PBCCH_Not_present_t, GPRS_Power_Control_Parameters, GPRS_Power_Control_Parameters_t),
2480 CSN_DESCR_END  (PBCCH_Not_present_t)
2481 
2482 static const
2483 CSN_ChoiceElement_t SI13_PBCCH_Description_Channel[] =
2484 {/* this one is used in SI13*/
2485   {2, 0x00, 0, M_NULL(PBCCH_Description_t, u.dummy, 0)},/*Default to BCCH carrier*/
2486   {2, 0x01, 0, M_UINT(PBCCH_Description_t, u.ARFCN, 10, &hf_arfcn)},
2487   {1, 0x01, 0, M_UINT(PBCCH_Description_t, u.MAIO, 6, &hf_maio)},
2488 };
2489 
2490 static const
CSN_DESCR_BEGIN(PBCCH_Description_t)2491 CSN_DESCR_BEGIN(PBCCH_Description_t)/*SI13*/
2492   M_UINT       (PBCCH_Description_t,  Pb,  4, &hf_pbcch_description_pb),
2493   M_UINT       (PBCCH_Description_t,  TSC, 3, &hf_tsc),
2494   M_UINT       (PBCCH_Description_t,  TN,  3, &hf_pbcch_description_tn),
2495 
2496   M_CHOICE     (PBCCH_Description_t, UnionType, SI13_PBCCH_Description_Channel, ElementsOf(SI13_PBCCH_Description_Channel), &hf_pbcch_description_choice),
2497 CSN_DESCR_END  (PBCCH_Description_t)
2498 
2499 static const
2500 CSN_DESCR_BEGIN(PBCCH_present_t)
2501   M_UINT       (PBCCH_present_t,  PSI1_REPEAT_PERIOD,  4, &hf_pbcch_present_psi1_repeat_period),
2502   M_TYPE       (PBCCH_present_t, PBCCH_Description, PBCCH_Description_t),
2503 CSN_DESCR_END  (PBCCH_present_t)
2504 
2505 #if 0
2506 static const
2507 CSN_DESCR_BEGIN(SI13_AdditionsR6)
2508   M_NEXT_EXIST (SI13_AdditionsR6, Exist_LB_MS_TXPWR_MAX_CCH, 1),
2509   M_UINT       (SI13_AdditionsR6,  LB_MS_TXPWR_MAX_CCH,  5, &hf_packet_system_info_type13_lb_ms_mxpwr_max_cch),
2510   M_UINT       (SI13_AdditionsR6,  SI2n_SUPPORT,  2, &hf_packet_system_info_type13_si2n_support),
2511 CSN_DESCR_END  (SI13_AdditionsR6)
2512 #endif
2513 
2514 #if 0
2515 static const
2516 CSN_DESCR_BEGIN(SI13_AdditionsR4)
2517   M_UINT       (SI13_AdditionsR4,  SI_STATUS_IND, 1, &hf_si_status_ind),
2518   M_NEXT_EXIST_OR_NULL_LH (SI13_AdditionsR4, Exist_AdditionsR6, 1),
2519   M_TYPE       (SI13_AdditionsR4,  AdditionsR6, SI13_AdditionsR6),
2520 CSN_DESCR_END  (SI13_AdditionsR4)
2521 #endif
2522 
2523 #if 0
2524 static const
2525 CSN_DESCR_BEGIN(SI13_AdditionR99)
2526   M_UINT       (SI13_AdditionR99,  SGSNR, 1, &hf_sgsnr),
2527   M_NEXT_EXIST_OR_NULL_LH (SI13_AdditionR99, Exist_AdditionsR4, 1),
2528   M_TYPE       (SI13_AdditionR99,  AdditionsR4, SI13_AdditionsR4),
2529 CSN_DESCR_END  (SI13_AdditionR99)
2530 #endif
2531 
2532 #if 0
2533 static const
2534 CSN_DESCR_BEGIN          (SI_13_t)
2535   M_THIS_EXIST_LH        (SI_13_t),
2536 
2537   M_UINT                 (SI_13_t,  BCCH_CHANGE_MARK, 3, &hf_bcch_change_mark),
2538   M_UINT                 (SI_13_t,  SI_CHANGE_FIELD, 4, &hf_si_change_field),
2539 
2540   M_NEXT_EXIST           (SI_13_t, Exist_MA, 2),
2541   M_UINT                 (SI_13_t,  SI13_CHANGE_MARK, 2, &hf_si13_change_mark),
2542   M_TYPE                 (SI_13_t, GPRS_Mobile_Allocation, GPRS_Mobile_Allocation_t),
2543 
2544   M_UNION                (SI_13_t, 2),
2545   M_TYPE                 (SI_13_t, u.PBCCH_Not_present, PBCCH_Not_present_t),
2546   M_TYPE                 (SI_13_t, u.PBCCH_present, PBCCH_present_t),
2547 
2548   M_NEXT_EXIST_OR_NULL_LH(SI_13_t, Exist_AdditionsR99, 1, &hf_additionsr99_exist),
2549   M_TYPE                 (SI_13_t, AdditionsR99, SI13_AdditionR99),
2550 CSN_DESCR_END            (SI_13_t)
2551 #endif
2552 
2553 /************************************************************/
2554 /*                         TS 44.060 messages               */
2555 /************************************************************/
2556 
2557 /* < Packet TBF Release message content > */
2558 static const
2559 CSN_DESCR_BEGIN(Packet_TBF_Release_t)
2560   M_UINT       (Packet_TBF_Release_t, MESSAGE_TYPE, 6, &hf_dl_message_type),
2561   M_UINT       (Packet_TBF_Release_t, PAGE_MODE, 2, &hf_page_mode),
2562   M_FIXED      (Packet_TBF_Release_t, 1, 0x00, &hf_packetbf_release),
2563   M_TYPE       (Packet_TBF_Release_t, Global_TFI, Global_TFI_t),
2564   M_UINT       (Packet_TBF_Release_t, UPLINK_RELEASE, 1, &hf_packetbf_release_uplink_release),
2565   M_UINT       (Packet_TBF_Release_t, DOWNLINK_RELEASE, 1, &hf_packetbf_release_downlink_release),
2566   M_UINT       (Packet_TBF_Release_t, TBF_RELEASE_CAUSE, 4, &hf_packetbf_release_tbf_release_cause),
2567   M_PADDING_BITS(Packet_TBF_Release_t,  &hf_packetbf_padding),
2568 CSN_DESCR_END  (Packet_TBF_Release_t)
2569 
2570 /* < Packet Control Acknowledgement message content > */
2571 
2572 static const
2573 CSN_DESCR_BEGIN        (Packet_Control_Acknowledgement_AdditionsR6_t)
2574   M_NEXT_EXIST         (Packet_Control_Acknowledgement_AdditionsR6_t, Exist_CTRL_ACK_Extension, 1, &hf_packet_control_acknowledgement_additionsr6_ctrl_ack_exist),
2575   M_UINT               (Packet_Control_Acknowledgement_AdditionsR6_t,  CTRL_ACK_Extension,  9, &hf_packet_control_acknowledgement_additionsr6_ctrl_ack_extension),
2576 CSN_DESCR_END          (Packet_Control_Acknowledgement_AdditionsR6_t)
2577 
2578 static const
2579 CSN_DESCR_BEGIN        (Packet_Control_Acknowledgement_AdditionsR5_t)
2580   M_NEXT_EXIST         (Packet_Control_Acknowledgement_AdditionsR5_t, Exist_TN_RRBP, 1, &hf_packet_control_acknowledgement_additionsr5_tn_rrbp_exist),
2581   M_UINT               (Packet_Control_Acknowledgement_AdditionsR5_t,  TN_RRBP,  3, &hf_packet_control_acknowledgement_additionsr5_tn_rrbp),
2582   M_NEXT_EXIST         (Packet_Control_Acknowledgement_AdditionsR5_t, Exist_G_RNTI_Extension, 1, &hf_packet_control_acknowledgement_additionsr5_g_rnti_extension_exist),
2583   M_UINT               (Packet_Control_Acknowledgement_AdditionsR5_t,  G_RNTI_Extension,  4, &hf_packet_control_acknowledgement_additionsr5_g_rnti_extension),
2584 
2585   M_NEXT_EXIST_OR_NULL (Packet_Control_Acknowledgement_AdditionsR5_t, Exist_AdditionsR6, 1, &hf_packet_control_acknowledgement_additionsr6_exist),
2586   M_TYPE               (Packet_Control_Acknowledgement_AdditionsR5_t, AdditionsR6, Packet_Control_Acknowledgement_AdditionsR6_t),
2587 CSN_DESCR_END          (Packet_Control_Acknowledgement_AdditionsR5_t)
2588 
2589 static const
2590 CSN_DESCR_BEGIN        (Packet_Control_Acknowledgement_t)
2591   M_UINT               (Packet_Control_Acknowledgement_t,  PayloadType, 2, &hf_ul_payload_type),
2592   M_UINT               (Packet_Control_Acknowledgement_t,  spare, 5, &hf_ul_mac_header_spare),
2593   M_UINT               (Packet_Control_Acknowledgement_t,  R, 1, &hf_ul_retry),
2594 
2595   M_UINT               (Packet_Control_Acknowledgement_t,  MESSAGE_TYPE, 6, &hf_ul_message_type),
2596   M_UINT               (Packet_Control_Acknowledgement_t,  TLLI, 32, &hf_tlli),
2597   M_UINT               (Packet_Control_Acknowledgement_t,  CTRL_ACK,  2, &hf_packet_control_acknowledgement_ctrl_ack),
2598   M_NEXT_EXIST_OR_NULL (Packet_Control_Acknowledgement_t, Exist_AdditionsR5, 1, &hf_packet_control_acknowledgement_ctrl_ack_exist),
2599   M_TYPE               (Packet_Control_Acknowledgement_t, AdditionsR5, Packet_Control_Acknowledgement_AdditionsR5_t),
2600 
2601   M_PADDING_BITS       (Packet_Control_Acknowledgement_t, &hf_padding),
2602 CSN_DESCR_END  (Packet_Control_Acknowledgement_t)
2603 
2604 /* < Packet Downlink Dummy Control Block message content > */
2605 static const
2606 CSN_DESCR_BEGIN(Packet_Downlink_Dummy_Control_Block_t)
2607   M_UINT       (Packet_Downlink_Dummy_Control_Block_t, MESSAGE_TYPE, 6, &hf_dl_message_type),
2608   M_UINT       (Packet_Downlink_Dummy_Control_Block_t, PAGE_MODE, 2, &hf_page_mode),
2609 
2610   M_NEXT_EXIST (Packet_Downlink_Dummy_Control_Block_t, Exist_PERSISTENCE_LEVEL, 1, &hf_dl_persistent_level_exist),
2611   M_UINT_ARRAY (Packet_Downlink_Dummy_Control_Block_t, PERSISTENCE_LEVEL, 4, 4, &hf_dl_persistent_level),
2612 
2613   M_PADDING_BITS(Packet_Downlink_Dummy_Control_Block_t, &hf_padding ),
2614 CSN_DESCR_END  (Packet_Downlink_Dummy_Control_Block_t)
2615 
2616 /* < Packet Uplink Dummy Control Block message content > */
2617 static const
2618 CSN_DESCR_BEGIN(Packet_Uplink_Dummy_Control_Block_t)
2619   M_UINT       (Packet_Uplink_Dummy_Control_Block_t, PayloadType, 2, &hf_ul_payload_type),
2620   M_UINT       (Packet_Uplink_Dummy_Control_Block_t, spare, 5, &hf_ul_mac_header_spare),
2621   M_UINT       (Packet_Uplink_Dummy_Control_Block_t, R, 1, &hf_ul_retry),
2622 
2623   M_UINT       (Packet_Uplink_Dummy_Control_Block_t, MESSAGE_TYPE, 6, &hf_ul_message_type),
2624   M_UINT       (Packet_Uplink_Dummy_Control_Block_t,  TLLI,  32, &hf_tlli),
2625 /*M_FIXED      (Packet_Uplink_Dummy_Control_Block_t, 1, 0),*/
2626   M_PADDING_BITS(Packet_Uplink_Dummy_Control_Block_t, &hf_padding),
2627 CSN_DESCR_END  (Packet_Uplink_Dummy_Control_Block_t)
2628 
2629 #if 0
2630 static const
2631 CSN_DESCR_BEGIN(Receive_N_PDU_Number_t)
2632   M_UINT       (Receive_N_PDU_Number_t,  nsapi,  4, &hf_receive_n_pdu_number_nsapi),
2633   M_UINT       (Receive_N_PDU_Number_t,  value,  8, &hf_receive_n_pdu_number_value),
2634 CSN_DESCR_END  (Receive_N_PDU_Number_t)
2635 #endif
2636 
2637 #if 0
2638 static gint16 Receive_N_PDU_Number_list_Dissector(proto_tree *tree, csnStream_t* ar, tvbuff_t *tvb, void* data, int ett_csn1 _U_)
2639 {
2640   return csnStreamDissector(tree, ar, CSNDESCR(Receive_N_PDU_Number_t), tvb, data, ett_gsm_rlcmac);
2641 }
2642 #endif
2643 
2644 #if 0
2645 static const
2646 CSN_DESCR_BEGIN(Receive_N_PDU_Number_list_t)
2647   M_SERIALIZE  (Receive_N_PDU_Number_list_t, IEI, 7, Receive_N_PDU_Number_list_Dissector),
2648   M_VAR_TARRAY (Receive_N_PDU_Number_list_t, Receive_N_PDU_Number, Receive_N_PDU_Number_t, Count_Receive_N_PDU_Number),
2649 CSN_DESCR_END  (Receive_N_PDU_Number_list_t)
2650 #endif
2651 
2652 /* < MS Radio Access capability IE > */
2653 static const
2654 CSN_DESCR_BEGIN       (DTM_EGPRS_t)
2655   M_NEXT_EXIST        (DTM_EGPRS_t, Exist_DTM_EGPRS_multislot_class, 1, &hf_dtm_egprs_dtm_egprs_multislot_class_exist),
2656   M_UINT              (DTM_EGPRS_t,  DTM_EGPRS_multislot_class,  2, &hf_dtm_egprs_dtm_egprs_multislot_class),
2657 CSN_DESCR_END         (DTM_EGPRS_t)
2658 
2659 static const
2660 CSN_DESCR_BEGIN       (DTM_EGPRS_HighMultislotClass_t)
2661   M_NEXT_EXIST        (DTM_EGPRS_HighMultislotClass_t, Exist_DTM_EGPRS_HighMultislotClass, 1, &hf_dtm_egprs_highmultislotclass_dtm_egprs_highmultislotclass_exist),
2662   M_UINT              (DTM_EGPRS_HighMultislotClass_t,  DTM_EGPRS_HighMultislotClass,  3, &hf_dtm_egprs_highmultislotclass_dtm_egprs_highmultislotclass),
2663 CSN_DESCR_END         (DTM_EGPRS_HighMultislotClass_t)
2664 
2665 static const
2666 CSN_DESCR_BEGIN       (DownlinkDualCarrierCapability_r7_t)
2667   M_UINT              (DownlinkDualCarrierCapability_r7_t, MultislotCapabilityReductionForDL_DualCarrier, 3, &hf_content_multislot_capability_reduction_for_dl_dual_carrier),
2668   M_UINT              (DownlinkDualCarrierCapability_r7_t, DL_DualCarrierForDTM,  1, &hf_content_dual_carrier_for_dtm),
2669 CSN_DESCR_END         (DownlinkDualCarrierCapability_r7_t)
2670 
2671 static const
2672 CSN_DESCR_BEGIN       (Multislot_capability_t)
2673   M_NEXT_EXIST_OR_NULL(Multislot_capability_t, Exist_HSCSD_multislot_class, 1, &hf_multislot_capability_hscsd_multislot_class_exist),
2674   M_UINT              (Multislot_capability_t,  HSCSD_multislot_class,  5, &hf_multislot_capability_hscsd_multislot_class),
2675 
2676   M_NEXT_EXIST_OR_NULL(Multislot_capability_t, Exist_GPRS_multislot_class, 2, &hf_multislot_capability_gprs_multislot_class_exist),
2677   M_UINT              (Multislot_capability_t,  GPRS_multislot_class,  5, &hf_multislot_capability_gprs_multislot_class),
2678   M_UINT              (Multislot_capability_t,  GPRS_Extended_Dynamic_Allocation_Capability,  1, &hf_multislot_capability_gprs_extended_dynamic_allocation_capability),
2679 
2680   M_NEXT_EXIST_OR_NULL(Multislot_capability_t, Exist_SM, 2, &hf_multislot_capability_sms_exist),
2681   M_UINT              (Multislot_capability_t,  SMS_VALUE,  4, &hf_multislot_capability_sms_value),
2682   M_UINT              (Multislot_capability_t,  SM_VALUE,  4, &hf_multislot_capability_sm_value),
2683 
2684   M_NEXT_EXIST_OR_NULL(Multislot_capability_t, Exist_ECSD_multislot_class, 1, &hf_multislot_capability_ecsd_multislot_class_exist),
2685   M_UINT              (Multislot_capability_t,  ECSD_multislot_class,  5, &hf_multislot_capability_ecsd_multislot_class),
2686 
2687   M_NEXT_EXIST_OR_NULL(Multislot_capability_t, Exist_EGPRS_multislot_class, 2, &hf_multislot_capability_egprs_multislot_class_exist),
2688   M_UINT              (Multislot_capability_t,  EGPRS_multislot_class,  5, &hf_multislot_capability_egprs_multislot_class),
2689   M_UINT              (Multislot_capability_t,  EGPRS_Extended_Dynamic_Allocation_Capability,  1, &hf_multislot_capability_egprs_extended_dynamic_allocation_capability),
2690 
2691   M_NEXT_EXIST_OR_NULL(Multislot_capability_t, Exist_DTM_GPRS_multislot_class, 3, &hf_multislot_capability_dtm_gprs_multislot_class_exist),
2692   M_UINT              (Multislot_capability_t,  DTM_GPRS_multislot_class,  2, &hf_multislot_capability_dtm_gprs_multislot_class),
2693   M_UINT              (Multislot_capability_t,  Single_Slot_DTM,  1, &hf_multislot_capability_single_slot_dtm),
2694   M_TYPE              (Multislot_capability_t, DTM_EGPRS_Params, DTM_EGPRS_t),
2695 CSN_DESCR_END         (Multislot_capability_t)
2696 
2697 static const
2698 CSN_DESCR_BEGIN       (Content_t)
2699   M_UINT              (Content_t,  RF_Power_Capability,  3, &hf_content_rf_power_capability),
2700 
2701   M_NEXT_EXIST_OR_NULL(Content_t, Exist_A5_bits, 1, &hf_a5_bits_exist),
2702   M_UINT_OR_NULL      (Content_t,  A5_bits,  7, &hf_content_a5_bits),
2703 
2704   M_UINT_OR_NULL      (Content_t,  ES_IND,  1, &hf_content_es_ind),
2705   M_UINT_OR_NULL      (Content_t,  PS,  1, &hf_content_ps),
2706   M_UINT_OR_NULL      (Content_t,  VGCS,  1, &hf_content_vgcs),
2707   M_UINT_OR_NULL      (Content_t,  VBS,  1, &hf_content_vbs),
2708 
2709   M_NEXT_EXIST_OR_NULL(Content_t, Exist_Multislot_capability, 1, &hf_multislot_capability_exist),
2710   M_TYPE              (Content_t, Multislot_capability, Multislot_capability_t),
2711 
2712   M_NEXT_EXIST_OR_NULL(Content_t, Exist_Eight_PSK_Power_Capability, 1, &hf_content_eight_psk_power_capability_exist),
2713   M_UINT              (Content_t,  Eight_PSK_Power_Capability,  2, &hf_content_eight_psk_power_capability),
2714 
2715   M_UINT_OR_NULL      (Content_t,  COMPACT_Interference_Measurement_Capability,  1, &hf_content_compact_interference_measurement_capability),
2716   M_UINT_OR_NULL      (Content_t,  Revision_Level_Indicator,  1, &hf_content_revision_level_indicator),
2717   M_UINT_OR_NULL      (Content_t,  UMTS_FDD_Radio_Access_Technology_Capability,  1, &hf_content_umts_fdd_radio_access_technology_capability),
2718   M_UINT_OR_NULL      (Content_t,  UMTS_384_TDD_Radio_Access_Technology_Capability,  1, &hf_content_umts_384_tdd_radio_access_technology_capability),
2719   M_UINT_OR_NULL      (Content_t,  CDMA2000_Radio_Access_Technology_Capability,  1, &hf_content_cdma2000_radio_access_technology_capability),
2720 
2721   M_UINT_OR_NULL      (Content_t,  UMTS_128_TDD_Radio_Access_Technology_Capability,  1, &hf_content_umts_128_tdd_radio_access_technology_capability),
2722   M_UINT_OR_NULL      (Content_t,  GERAN_Feature_Package_1,  1, &hf_content_geran_feature_package_1),
2723 
2724   M_NEXT_EXIST_OR_NULL(Content_t, Exist_Extended_DTM_multislot_class, 2, &hf_content_extended_dtm_gprs_multislot_class_exist),
2725   M_UINT              (Content_t,  Extended_DTM_GPRS_multislot_class,  2, &hf_content_extended_dtm_gprs_multislot_class),
2726   M_UINT              (Content_t,  Extended_DTM_EGPRS_multislot_class,  2, &hf_content_extended_dtm_egprs_multislot_class),
2727 
2728   M_UINT_OR_NULL      (Content_t,  Modulation_based_multislot_class_support,  1, &hf_content_modulation_based_multislot_class_support),
2729 
2730   M_NEXT_EXIST_OR_NULL(Content_t, Exist_HighMultislotCapability, 1, &hf_content_highmultislotcapability_exist),
2731   M_UINT              (Content_t,  HighMultislotCapability,  2, &hf_content_highmultislotcapability),
2732 
2733   M_NEXT_EXIST_OR_NULL(Content_t, Exist_GERAN_lu_ModeCapability, 1, &hf_content_geran_lu_modecapability_exist),
2734   M_UINT              (Content_t,  GERAN_lu_ModeCapability,  4, &hf_content_geran_lu_modecapability),
2735 
2736   M_UINT_OR_NULL      (Content_t,  GMSK_MultislotPowerProfile,  2, &hf_content_gmsk_multislotpowerprofile),
2737   M_UINT_OR_NULL      (Content_t,  EightPSK_MultislotProfile,  2, &hf_content_eightpsk_multislotprofile),
2738 
2739   M_UINT_OR_NULL      (Content_t,  MultipleTBF_Capability,  1, &hf_content_multipletbf_capability),
2740   M_UINT_OR_NULL      (Content_t,  DownlinkAdvancedReceiverPerformance,  2, &hf_content_downlinkadvancedreceiverperformance),
2741   M_UINT_OR_NULL      (Content_t,  ExtendedRLC_MAC_ControlMessageSegmentionsCapability,  1, &hf_content_extendedrlc_mac_controlmessagesegmentionscapability),
2742   M_UINT_OR_NULL      (Content_t,  DTM_EnhancementsCapability,  1, &hf_content_dtm_enhancementscapability),
2743 
2744   M_NEXT_EXIST_OR_NULL(Content_t, Exist_DTM_GPRS_HighMultislotClass, 2, &hf_content_dtm_gprs_highmultislotclass_exist),
2745   M_UINT              (Content_t,  DTM_GPRS_HighMultislotClass,  3, &hf_content_dtm_gprs_highmultislotclass),
2746   M_TYPE              (Content_t, DTM_EGPRS_HighMultislotClass, DTM_EGPRS_HighMultislotClass_t),
2747 
2748   M_UINT_OR_NULL      (Content_t,  PS_HandoverCapability,  1, &hf_content_ps_handovercapability),
2749 
2750   /* additions in release 7 */
2751   M_UINT_OR_NULL      (Content_t,  DTM_Handover_Capability,  1, &hf_content_dtm_handover_capability),
2752   M_NEXT_EXIST_OR_NULL(Content_t, Exist_DownlinkDualCarrierCapability_r7, 1, &hf_content_multislot_capability_reduction_for_dl_dual_carrier_exist),
2753   M_TYPE_OR_NULL      (Content_t, DownlinkDualCarrierCapability_r7, DownlinkDualCarrierCapability_r7_t),
2754 
2755   M_UINT_OR_NULL      (Content_t,  FlexibleTimeslotAssignment,  1, &hf_content_flexible_timeslot_assignment),
2756   M_UINT_OR_NULL      (Content_t,  GAN_PS_HandoverCapability,  1, &hf_content_gan_ps_handover_capability),
2757   M_UINT_OR_NULL      (Content_t,  RLC_Non_persistentMode,  1, &hf_content_rlc_non_persistent_mode),
2758   M_UINT_OR_NULL      (Content_t,  ReducedLatencyCapability,  1, &hf_content_reduced_latency_capability),
2759   M_UINT_OR_NULL      (Content_t,  UplinkEGPRS2,  2, &hf_content_uplink_egprs2),
2760   M_UINT_OR_NULL      (Content_t,  DownlinkEGPRS2,  2, &hf_content_downlink_egprs2),
2761 
2762   /* additions in release 8 */
2763   M_UINT_OR_NULL      (Content_t,  EUTRA_FDD_Support,  1, &hf_content_eutra_fdd_support),
2764   M_UINT_OR_NULL      (Content_t,  EUTRA_TDD_Support,  1, &hf_content_eutra_tdd_support),
2765   M_UINT_OR_NULL      (Content_t,  GERAN_To_EUTRAN_supportInGERAN_PTM,  2, &hf_content_geran_to_eutran_support_in_geran_ptm),
2766   M_UINT_OR_NULL      (Content_t,  PriorityBasedReselectionSupport,  1, &hf_content_priority_based_reselection_support),
2767 
2768 CSN_DESCR_END         (Content_t)
2769 
2770 static gint16 Content_Dissector(proto_tree *tree, csnStream_t* ar, tvbuff_t *tvb, void* data, int ett_csn1 _U_)
2771 {
2772   return csnStreamDissector(tree, ar, CSNDESCR(Content_t), tvb, data, ett_gsm_rlcmac);
2773 }
2774 
2775 static const
CSN_DESCR_BEGIN(Additional_access_technologies_struct_t)2776 CSN_DESCR_BEGIN       (Additional_access_technologies_struct_t)
2777   M_UINT              (Additional_access_technologies_struct_t,  Access_Technology_Type,  4, &hf_additional_accessechnologies_struct_t_access_technology_type),
2778   M_UINT              (Additional_access_technologies_struct_t,  GMSK_Power_class,  3, &hf_additional_accessechnologies_struct_t_gmsk_power_class),
2779   M_UINT              (Additional_access_technologies_struct_t,  Eight_PSK_Power_class,  2, &hf_additional_accessechnologies_struct_t_eight_psk_power_class),
2780 CSN_DESCR_END         (Additional_access_technologies_struct_t)
2781 
2782 static const
2783 CSN_DESCR_BEGIN       (Additional_access_technologies_t)
2784   M_REC_TARRAY        (Additional_access_technologies_t, Additional_access_technologies, Additional_access_technologies_struct_t, Count_additional_access_technologies, &hf_additional_access_technology_exist),
2785 CSN_DESCR_END         (Additional_access_technologies_t)
2786 
2787 static gint16 Additional_access_technologies_Dissector(proto_tree *tree, csnStream_t* ar, tvbuff_t *tvb, void* data, int ett_csn1 _U_)
2788 {
2789   return csnStreamDissector(tree, ar, CSNDESCR(Additional_access_technologies_t), tvb, data, ett_gsm_rlcmac);
2790 }
2791 
2792 static const
2793 CSN_ChoiceElement_t MS_RA_capability_value_Choice[] =
2794 {
2795   {4, AccTech_GSMP,     0, M_SERIALIZE (MS_RA_capability_value_t, u.Content, 7, &hf_content_dissector, Content_Dissector)}, /* Long Form */
2796   {4, AccTech_GSME,     0, M_SERIALIZE (MS_RA_capability_value_t, u.Content, 7, &hf_content_dissector, Content_Dissector)}, /* Long Form */
2797   {4, AccTech_GSMR,     0, M_SERIALIZE (MS_RA_capability_value_t, u.Content, 7, &hf_content_dissector, Content_Dissector)}, /* Long Form */
2798   {4, AccTech_GSM1800,  0, M_SERIALIZE (MS_RA_capability_value_t, u.Content, 7, &hf_content_dissector, Content_Dissector)}, /* Long Form */
2799   {4, AccTech_GSM1900,  0, M_SERIALIZE (MS_RA_capability_value_t, u.Content, 7, &hf_content_dissector, Content_Dissector)}, /* Long Form */
2800   {4, AccTech_GSM450,   0, M_SERIALIZE (MS_RA_capability_value_t, u.Content, 7, &hf_content_dissector, Content_Dissector)}, /* Long Form */
2801   {4, AccTech_GSM480,   0, M_SERIALIZE (MS_RA_capability_value_t, u.Content, 7, &hf_content_dissector, Content_Dissector)}, /* Long Form */
2802   {4, AccTech_GSM850,   0, M_SERIALIZE (MS_RA_capability_value_t, u.Content, 7, &hf_content_dissector, Content_Dissector)}, /* Long Form */
2803   {4, AccTech_GSM750,   0, M_SERIALIZE (MS_RA_capability_value_t, u.Content, 7, &hf_content_dissector, Content_Dissector)}, /* Long Form */
2804   {4, AccTech_GSMT830,  0, M_SERIALIZE (MS_RA_capability_value_t, u.Content, 7, &hf_content_dissector, Content_Dissector)}, /* Long Form */
2805   {4, AccTech_GSMT410,  0, M_SERIALIZE (MS_RA_capability_value_t, u.Content, 7, &hf_content_dissector, Content_Dissector)}, /* Long Form */
2806   {4, AccTech_GSMT900,  0, M_SERIALIZE (MS_RA_capability_value_t, u.Content, 7, &hf_content_dissector, Content_Dissector)}, /* Long Form */
2807   {4, AccTech_GSM710,   0, M_SERIALIZE (MS_RA_capability_value_t, u.Content, 7, &hf_content_dissector, Content_Dissector)}, /* Long Form */
2808   {4, AccTech_GSMT810,  0, M_SERIALIZE (MS_RA_capability_value_t, u.Content, 7, &hf_content_dissector, Content_Dissector)}, /* Long Form */
2809   {4, AccTech_GSMOther, 0, M_SERIALIZE (MS_RA_capability_value_t, u.Additional_access_technologies, 7, &hf_additional_access_dissector, Additional_access_technologies_Dissector)}, /* Short Form */
2810 };
2811 
2812 static const
2813 CSN_DESCR_BEGIN(MS_RA_capability_value_t)
2814   M_CHOICE     (MS_RA_capability_value_t, IndexOfAccTech, MS_RA_capability_value_Choice, ElementsOf(MS_RA_capability_value_Choice), &hf_ms_ra_capability_value_choice),
2815 CSN_DESCR_END  (MS_RA_capability_value_t)
2816 
2817 /*
2818  * TS 24.008 section 10.5.5.12a "MS Radio Access capability".
2819  * This one would be used to decode for instance MS RA Capabilities IE SGSN->MS on the PCU.
2820  * However, an ad-hoc decoder is used in this scenario in wireshark: See packet-gsm_a_gm.c de_gmm_ms_radio_acc_cap().
2821  */
2822 #if 0
2823 static const
2824 CSN_DESCR_BEGIN (MS_Radio_Access_capability_t)
2825   M_REC_TARRAY_1(MS_Radio_Access_capability_t, MS_RA_capability_value, MS_RA_capability_value_t, Count_MS_RA_capability_value, &hf_ms_ra_capability_value),
2826   M_PADDING_BITS(MS_Radio_Access_capability_t, &hf_padding),
2827 CSN_DESCR_END   (MS_Radio_Access_capability_t)
2828 #endif
2829 
2830 /* TS44.060 section 12.30  "MS Radio Access Capability 2". Same as above but without spare bits */
2831 static const
2832 CSN_DESCR_BEGIN (MS_Radio_Access_capability2_t)
2833   M_REC_TARRAY_1(MS_Radio_Access_capability_t, MS_RA_capability_value, MS_RA_capability_value_t, Count_MS_RA_capability_value, &hf_ms_ra_capability_value),
2834 CSN_DESCR_END   (MS_Radio_Access_capability2_t)
2835 
2836 /* < MS Classmark 3 IE > */
2837 #if 0
2838 static const
2839 CSN_DESCR_BEGIN(ARC_t)
2840   M_UINT       (ARC_t,  A5_Bits,  4, &hf_arc_a5_bits),
2841   M_UINT       (ARC_t,  Arc2_Spare,  4, &hf_arc_arc2_spare),
2842   M_UINT       (ARC_t,  Arc1,  4, &hf_arc_arc1),
2843 CSN_DESCR_END  (ARC_t)
2844 #endif
2845 
2846 #if 0
2847 static const
2848 CSN_ChoiceElement_t MultibandChoice[] =
2849 {
2850   {3, 0x00, 0, M_UINT(Multiband_t, u.A5_Bits, 4, &hf_multiband_a5_bits)},
2851   {3, 0x05, 0, M_TYPE(Multiband_t, u.ARC, ARC_t)},
2852   {3, 0x06, 0, M_TYPE(Multiband_t, u.ARC, ARC_t)},
2853   {3, 0x01, 0, M_TYPE(Multiband_t, u.ARC, ARC_t)},
2854   {3, 0x02, 0, M_TYPE(Multiband_t, u.ARC, ARC_t)},
2855   {3, 0x04, 0, M_TYPE(Multiband_t, u.ARC, ARC_t)},
2856 };
2857 #endif
2858 
2859 #if 0
2860 static const
2861 CSN_DESCR_BEGIN(Multiband_t)
2862   M_CHOICE     (Multiband_t, Multiband, MultibandChoice, ElementsOf(MultibandChoice)),
2863 CSN_DESCR_END  (Multiband_t)
2864 #endif
2865 
2866 #if 0
2867 static const
2868 CSN_DESCR_BEGIN(EDGE_RF_Pwr_t)
2869   M_NEXT_EXIST (EDGE_RF_Pwr_t, ExistEDGE_RF_PwrCap1, 1),
2870   M_UINT       (EDGE_RF_Pwr_t,  EDGE_RF_PwrCap1,  2, &hf_edge_rf_pwr_edge_rf_pwrcap1),
2871 
2872   M_NEXT_EXIST (EDGE_RF_Pwr_t, ExistEDGE_RF_PwrCap2, 1),
2873   M_UINT       (EDGE_RF_Pwr_t,  EDGE_RF_PwrCap2,  2, &hf_edge_rf_pwr_edge_rf_pwrcap2),
2874 CSN_DESCR_END  (EDGE_RF_Pwr_t)
2875 #endif
2876 
2877 #if 0
2878 static const
2879 CSN_DESCR_BEGIN(MS_Class3_Unpacked_t)
2880   M_UINT       (MS_Class3_Unpacked_t,  Spare1,  1, &hf_ms_class3_unpacked_spare1),
2881   M_TYPE       (MS_Class3_Unpacked_t, Multiband, Multiband_t),
2882 
2883   M_NEXT_EXIST (MS_Class3_Unpacked_t, Exist_R_Support, 1),
2884   M_UINT       (MS_Class3_Unpacked_t,  R_GSM_Arc,  3, &hf_ms_class3_unpacked_r_gsm_arc),
2885 
2886   M_NEXT_EXIST (MS_Class3_Unpacked_t, Exist_MultiSlotCapability, 1),
2887   M_UINT       (MS_Class3_Unpacked_t,  MultiSlotClass,  5, &hf_ms_class3_unpacked_multislotclass),
2888 
2889   M_UINT       (MS_Class3_Unpacked_t,  UCS2,  1, &hf_ms_class3_unpacked_ucs2),
2890   M_UINT       (MS_Class3_Unpacked_t,  ExtendedMeasurementCapability,  1, &hf_ms_class3_unpacked_extendedmeasurementcapability),
2891 
2892   M_NEXT_EXIST (MS_Class3_Unpacked_t, Exist_MS_MeasurementCapability, 2),
2893   M_UINT       (MS_Class3_Unpacked_t,  SMS_VALUE,  4, &hf_ms_class3_unpacked_sms_value),
2894   M_UINT       (MS_Class3_Unpacked_t,  SM_VALUE,  4, &hf_ms_class3_unpacked_sm_value),
2895 
2896   M_NEXT_EXIST (MS_Class3_Unpacked_t, Exist_MS_PositioningMethodCapability, 1),
2897   M_UINT       (MS_Class3_Unpacked_t,  MS_PositioningMethod,  5, &hf_ms_class3_unpacked_ms_positioningmethod),
2898 
2899   M_NEXT_EXIST (MS_Class3_Unpacked_t, Exist_EDGE_MultiSlotCapability, 1),
2900   M_UINT       (MS_Class3_Unpacked_t,  EDGE_MultiSlotClass,  5, &hf_ms_class3_unpacked_edge_multislotclass),
2901 
2902   M_NEXT_EXIST (MS_Class3_Unpacked_t, Exist_EDGE_Struct, 2),
2903   M_UINT       (MS_Class3_Unpacked_t,  ModulationCapability,  1, &hf_ms_class3_unpacked_modulationcapability),
2904   M_TYPE       (MS_Class3_Unpacked_t, EDGE_RF_PwrCaps, EDGE_RF_Pwr_t),
2905 
2906   M_NEXT_EXIST (MS_Class3_Unpacked_t, Exist_GSM400_Info, 2),
2907   M_UINT       (MS_Class3_Unpacked_t,  GSM400_Bands,  2, &hf_ms_class3_unpacked_gsm400_bands),
2908   M_UINT       (MS_Class3_Unpacked_t,  GSM400_Arc,  4, &hf_ms_class3_unpacked_gsm400_arc),
2909 
2910   M_NEXT_EXIST (MS_Class3_Unpacked_t, Exist_GSM850_Arc, 1),
2911   M_UINT       (MS_Class3_Unpacked_t,  GSM850_Arc,  4, &hf_ms_class3_unpacked_gsm850_arc),
2912 
2913   M_NEXT_EXIST (MS_Class3_Unpacked_t, Exist_PCS1900_Arc, 1),
2914   M_UINT       (MS_Class3_Unpacked_t,  PCS1900_Arc,  4, &hf_ms_class3_unpacked_pcs1900_arc),
2915 
2916   M_UINT       (MS_Class3_Unpacked_t,  UMTS_FDD_Radio_Access_Technology_Capability,  1, &hf_ms_class3_unpacked_umts_fdd_radio_access_technology_capability),
2917   M_UINT       (MS_Class3_Unpacked_t,  UMTS_384_TDD_Radio_Access_Technology_Capability,  1, &hf_ms_class3_unpacked_umts_384_tdd_radio_access_technology_capability),
2918   M_UINT       (MS_Class3_Unpacked_t,  CDMA2000_Radio_Access_Technology_Capability,  1, &hf_ms_class3_unpacked_cdma2000_radio_access_technology_capability),
2919 
2920   M_NEXT_EXIST (MS_Class3_Unpacked_t, Exist_DTM_GPRS_multislot_class, 3),
2921   M_UINT       (MS_Class3_Unpacked_t,  DTM_GPRS_multislot_class,  2, &hf_ms_class3_unpacked_dtm_gprs_multislot_class),
2922   M_UINT       (MS_Class3_Unpacked_t,  Single_Slot_DTM,  1, &hf_ms_class3_unpacked_single_slot_dtm),
2923   M_TYPE       (MS_Class3_Unpacked_t, DTM_EGPRS_Params, DTM_EGPRS_t),
2924 
2925   M_NEXT_EXIST (MS_Class3_Unpacked_t, Exist_SingleBandSupport, 1),
2926   M_UINT       (MS_Class3_Unpacked_t,  GSM_Band,  4, &hf_ms_class3_unpacked_gsm_band),
2927 
2928   M_NEXT_EXIST (MS_Class3_Unpacked_t, Exist_GSM_700_Associated_Radio_Capability, 1),
2929   M_UINT       (MS_Class3_Unpacked_t,  GSM_700_Associated_Radio_Capability,  4, &hf_ms_class3_unpacked_gsm_700_associated_radio_capability),
2930 
2931   M_UINT       (MS_Class3_Unpacked_t,  UMTS_128_TDD_Radio_Access_Technology_Capability,  1, &hf_ms_class3_unpacked_umts_128_tdd_radio_access_technology_capability),
2932   M_UINT       (MS_Class3_Unpacked_t,  GERAN_Feature_Package_1,  1, &hf_ms_class3_unpacked_geran_feature_package_1),
2933 
2934   M_NEXT_EXIST (MS_Class3_Unpacked_t, Exist_Extended_DTM_multislot_class, 2),
2935   M_UINT       (MS_Class3_Unpacked_t,  Extended_DTM_GPRS_multislot_class,  2, &hf_ms_class3_unpacked_extended_dtm_gprs_multislot_class),
2936   M_UINT       (MS_Class3_Unpacked_t,  Extended_DTM_EGPRS_multislot_class,  2, &hf_ms_class3_unpacked_extended_dtm_egprs_multislot_class),
2937 
2938   M_NEXT_EXIST (MS_Class3_Unpacked_t, Exist_HighMultislotCapability, 1),
2939   M_UINT       (MS_Class3_Unpacked_t,  HighMultislotCapability,  2, &hf_ms_class3_unpacked_highmultislotcapability),
2940 
2941   M_NEXT_EXIST (MS_Class3_Unpacked_t, Exist_GERAN_lu_ModeCapability, 1),
2942   M_UINT       (MS_Class3_Unpacked_t,  GERAN_lu_ModeCapability,  4, &hf_ms_class3_unpacked_geran_lu_modecapability),
2943 
2944   M_UINT       (MS_Class3_Unpacked_t,  GERAN_FeaturePackage_2,  1, &hf_ms_class3_unpacked_geran_featurepackage_2),
2945 
2946   M_UINT       (MS_Class3_Unpacked_t,  GMSK_MultislotPowerProfile,  2, &hf_ms_class3_unpacked_gmsk_multislotpowerprofile),
2947   M_UINT       (MS_Class3_Unpacked_t,  EightPSK_MultislotProfile,  2, &hf_ms_class3_unpacked_eightpsk_multislotprofile),
2948 
2949   M_NEXT_EXIST (MS_Class3_Unpacked_t, Exist_TGSM_400_Bands, 2),
2950   M_UINT       (MS_Class3_Unpacked_t,  TGSM_400_BandsSupported,  2, &hf_ms_class3_unpacked_tgsm_400_bandssupported),
2951   M_UINT       (MS_Class3_Unpacked_t,  TGSM_400_AssociatedRadioCapability,  4, &hf_ms_class3_unpacked_tgsm_400_associatedradiocapability),
2952 
2953   M_NEXT_EXIST (MS_Class3_Unpacked_t, Exist_TGSM_900_AssociatedRadioCapability, 1),
2954   M_UINT       (MS_Class3_Unpacked_t,  TGSM_900_AssociatedRadioCapability,  4, &hf_ms_class3_unpacked_tgsm_900_associatedradiocapability),
2955 
2956   M_UINT       (MS_Class3_Unpacked_t,  DownlinkAdvancedReceiverPerformance,  2, &hf_ms_class3_unpacked_downlinkadvancedreceiverperformance),
2957   M_UINT       (MS_Class3_Unpacked_t,  DTM_EnhancementsCapability,  1, &hf_ms_class3_unpacked_dtm_enhancementscapability),
2958 
2959   M_NEXT_EXIST (MS_Class3_Unpacked_t, Exist_DTM_GPRS_HighMultislotClass, 3),
2960   M_UINT       (MS_Class3_Unpacked_t,  DTM_GPRS_HighMultislotClass,  3, &hf_ms_class3_unpacked_dtm_gprs_highmultislotclass),
2961   M_UINT       (MS_Class3_Unpacked_t,  OffsetRequired,  1, &hf_ms_class3_unpacked_offsetrequired),
2962   M_TYPE       (MS_Class3_Unpacked_t, DTM_EGPRS_HighMultislotClass, DTM_EGPRS_HighMultislotClass_t),
2963 
2964   M_UINT       (MS_Class3_Unpacked_t,  RepeatedSACCH_Capability,  1, &hf_ms_class3_unpacked_repeatedsacch_capability),
2965   M_UINT       (MS_Class3_Unpacked_t,  Spare2,  1, &hf_ms_class3_unpacked_spare2),
2966 CSN_DESCR_END  (MS_Class3_Unpacked_t)
2967 #endif
2968 
2969 static const
2970 CSN_DESCR_BEGIN(Channel_Request_Description_t)
2971   M_UINT       (Channel_Request_Description_t,  PEAK_THROUGHPUT_CLASS,  4, &hf_channel_request_description_peak_throughput_class),
2972   M_UINT       (Channel_Request_Description_t,  RADIO_PRIORITY,  2, &hf_channel_request_description_radio_priority),
2973   M_UINT       (Channel_Request_Description_t,  RLC_MODE, 1, &hf_rlc_mode),
2974   M_UINT       (Channel_Request_Description_t,  LLC_PDU_TYPE, 1, &hf_channel_request_description_llc_pdu_type),
2975   M_UINT       (Channel_Request_Description_t,  RLC_OCTET_COUNT,  16, &hf_channel_request_description_rlc_octet_count),
2976 CSN_DESCR_END  (Channel_Request_Description_t)
2977 
2978 /* < Packet Resource Request message content > */
2979 static const
2980 CSN_ChoiceElement_t PacketResourceRequestID[] =
2981 {
2982   {1, 0,    0, M_TYPE(PacketResourceRequestID_t, u.Global_TFI, Global_TFI_t)},
2983   {1, 0x01, 0, M_UINT(PacketResourceRequestID_t, u.TLLI, 32, &hf_tlli)},
2984 };
2985 
2986 static const
2987 CSN_DESCR_BEGIN(PacketResourceRequestID_t)
2988   M_CHOICE     (PacketResourceRequestID_t, UnionType, PacketResourceRequestID, ElementsOf(PacketResourceRequestID), &hf_packet_resource_request_id_choice),
2989 CSN_DESCR_END  (PacketResourceRequestID_t)
2990 
2991 static const
2992 CSN_DESCR_BEGIN(BEP_MeasurementReport_t)
2993   M_NEXT_EXIST (BEP_MeasurementReport_t, Exist, 3, &hf_bep_measurementreport_mean_bep_exist),
2994   M_UNION      (BEP_MeasurementReport_t, 2, &hf_bep_measurementreport_mean_bep_union),
2995   M_UINT       (BEP_MeasurementReport_t,  u.MEAN_BEP_GMSK,  4, &hf_bep_measurementreport_mean_bep_gmsk),
2996   M_UINT       (BEP_MeasurementReport_t,  u.MEAN_BEP_8PSK,  4, &hf_bep_measurementreport_mean_bep_8psk),
2997 CSN_DESCR_END  (BEP_MeasurementReport_t)
2998 
2999 static const
3000 CSN_DESCR_BEGIN(InterferenceMeasurementReport_t)
3001   M_NEXT_EXIST (InterferenceMeasurementReport_t, Exist, 1, &hf_interferencemeasurementreport_i_level_exist),
3002   M_UINT       (InterferenceMeasurementReport_t,  I_LEVEL,  4, &hf_interferencemeasurementreport_i_level),
3003 CSN_DESCR_END  (InterferenceMeasurementReport_t)
3004 
3005 static const
3006 CSN_DESCR_BEGIN(EGPRS_TimeslotLinkQualityMeasurements_t)
3007   M_NEXT_EXIST (EGPRS_TimeslotLinkQualityMeasurements_t, Exist_BEP_MEASUREMENTS, 1, &hf_bep_measurements_exist),
3008   M_TYPE_ARRAY (EGPRS_TimeslotLinkQualityMeasurements_t, BEP_MEASUREMENTS, BEP_MeasurementReport_t, 8),
3009 
3010   M_NEXT_EXIST (EGPRS_TimeslotLinkQualityMeasurements_t, Exist_INTERFERENCE_MEASUREMENTS, 1, &hf_interference_measurements_exist),
3011   M_TYPE_ARRAY (EGPRS_TimeslotLinkQualityMeasurements_t, INTERFERENCE_MEASUREMENTS, InterferenceMeasurementReport_t, 8),
3012 CSN_DESCR_END  (EGPRS_TimeslotLinkQualityMeasurements_t)
3013 
3014 static const
3015 CSN_DESCR_BEGIN(EGPRS_BEP_LinkQualityMeasurements_t)
3016   M_NEXT_EXIST (EGPRS_BEP_LinkQualityMeasurements_t, Exist_MEAN_CV_BEP_GMSK, 2, &hf_egprs_bep_linkqualitymeasurements_mean_bep_gmsk_exist),
3017   M_UINT       (EGPRS_BEP_LinkQualityMeasurements_t,  MEAN_BEP_GMSK,  5, &hf_egprs_bep_linkqualitymeasurements_mean_bep_gmsk),
3018   M_UINT       (EGPRS_BEP_LinkQualityMeasurements_t,  CV_BEP_GMSK,  3, &hf_egprs_bep_linkqualitymeasurements_cv_bep_gmsk),
3019 
3020   M_NEXT_EXIST (EGPRS_BEP_LinkQualityMeasurements_t, Exist_MEAN_CV_BEP_8PSK, 2, &hf_egprs_bep_linkqualitymeasurements_mean_bep_8psk_exist),
3021   M_UINT       (EGPRS_BEP_LinkQualityMeasurements_t,  MEAN_BEP_8PSK,  5, &hf_egprs_bep_linkqualitymeasurements_mean_bep_8psk),
3022   M_UINT       (EGPRS_BEP_LinkQualityMeasurements_t,  CV_BEP_8PSK,  3, &hf_egprs_bep_linkqualitymeasurements_cv_bep_8psk),
3023 CSN_DESCR_END  (EGPRS_BEP_LinkQualityMeasurements_t)
3024 
3025 static const
3026 CSN_DESCR_BEGIN(IU_Mode_Channel_Request_Desk_t)
3027 
3028   M_UINT       (IU_Mode_Channel_Request_Desk_t,  RB_ID,  5, &hf_egprs_prr_additionsr5_rb_id),
3029   M_UINT       (IU_Mode_Channel_Request_Desk_t,  RADIO_PRIORITY,  2, &hf_egprs_prr_additionsr5_radio_priority),
3030 
3031   M_NEXT_EXIST (IU_Mode_Channel_Request_Desk_t, Exist_RLC_BLOCK_COUNT, 1, &hf_egprs_prr_additionsr5_rlc_block_count_exist),
3032   M_UINT       (IU_Mode_Channel_Request_Desk_t,  RLC_BLOCK_COUNT,  8, &hf_egprs_prr_additionsr5_rlc_block_count),
3033 
3034   /* Don't use M_REC_TARRAY as we don't support multiple TBFs
3035   M_NEXT_EXIST (IU_Mode_Channel_Request_Desk_t, Exist_Iu_Mode_ChRequestDesk, 1, &hf_iu_mode_chrequest_exist),
3036   M_TYPE       (IU_Mode_Channel_Request_Desk1, IU_Mode_Channel_Request_Desk_t),*/
3037   M_UINT       (IU_Mode_Channel_Request_Desk_t, Exist_Iu_Mode_ChRequestDesk, 1, &hf_iu_mode_chrequest_exist),
3038 
3039 CSN_DESCR_END  (IU_Mode_Channel_Request_Desk_t)
3040 
3041 static const
3042 CSN_DESCR_BEGIN(IU_Mode_Channel_Request_Desk_RNTI_t)
3043 
3044   M_NEXT_EXIST (IU_Mode_Channel_Request_Desk_RNTI_t, Exist_G_RNTI_Extension, 1, &hf_egprs_prr_additionsr5_g_rnti_exist),
3045   M_UINT       (IU_Mode_Channel_Request_Desk_RNTI_t,  G_RNTI_Extension,  4, &hf_egprs_prr_additionsr5_g_rnti_extension),
3046 
3047   M_TYPE       (IU_Mode_Channel_Request_Desk_RNTI_t, IU_Mode_Channel_Request_Desk, IU_Mode_Channel_Request_Desk_t),
3048 
3049 CSN_DESCR_END  (IU_Mode_Channel_Request_Desk_RNTI_t)
3050 
3051 
3052 static const
3053 CSN_DESCR_BEGIN(Ext_Channel_Request_desc_t)
3054 
3055   M_UINT       (Ext_Channel_Request_desc_t,  PFI, 7, &hf_pfi),
3056   M_UINT       (Ext_Channel_Request_desc_t,  RADIO_PRIORITY,  2, &hf_egprs_prr_additionsr5_radio_priority),
3057   M_UINT       (Ext_Channel_Request_desc_t,  RLC_Mode, 1, &hf_rlc_mode),
3058 
3059   M_NEXT_EXIST (Ext_Channel_Request_desc_t, Exist_LCC_PDU, 1, &hf_egprs_prr_additionsr6_lcc_pdu_exist),
3060   M_UINT       (Ext_Channel_Request_desc_t,  LCC_PDU,  1, &hf_egprs_prr_additionsr6_lcc_pdu),
3061 
3062  /* Don't use M_REC_TARRAY as we don't support multiple TBFs
3063   M_NEXT_EXIST (Ext_Channel_Request_desc_t, Exist_Ext_Channel_Request_desc, 1, &hf_Ext_Channel_Request_desc_exist),
3064   M_TYPE       (Ext_Channel_Request_desc_t, Ext_Channel_Request_desc, Ext_Channel_Request_desc_t),*/
3065   M_UINT       (Ext_Channel_Request_desc_t, Exist_Ext_Channel_Request_desc, 1, &hf_Ext_Channel_Request_desc_exist),
3066 
3067 CSN_DESCR_END  (Ext_Channel_Request_desc_t)
3068 
3069 static const
3070 CSN_DESCR_BEGIN(EGPRS_BEP_LinkQualityMeasurements_type2_t)
3071 
3072   M_NEXT_EXIST (EGPRS_BEP_LinkQualityMeasurements_type2_t, Exist_GMSK_MEAN_BEP, 1, &hf_egprs_prr_additionsr7_gmsk_mean_bep_exist),
3073   M_UINT       (EGPRS_BEP_LinkQualityMeasurements_type2_t,  GMSK_MEAN_BEP,  5, &hf_egprs_prr_additionsr7_gmsk_mean_bep),
3074   M_UINT       (EGPRS_BEP_LinkQualityMeasurements_type2_t,  GMSK_CV_BEP, 3, &hf_egprs_prr_additionsr7_gmsk_cv_bep),
3075 
3076   M_NEXT_EXIST (EGPRS_BEP_LinkQualityMeasurements_type2_t, Exist_8PSK_MEAN_BEP, 1, &hf_egprs_prr_additionsr7_8psk_mean_bep_exist),
3077   M_UINT       (EGPRS_BEP_LinkQualityMeasurements_type2_t,  p8PSK_MEAN_BEP,  5, &hf_egprs_prr_additionsr7_8psk_mean_bep),
3078   M_UINT       (EGPRS_BEP_LinkQualityMeasurements_type2_t,  p8PSK_CV_BEP, 3, &hf_egprs_prr_additionsr7_8psk_cv_bep),
3079 
3080   M_NEXT_EXIST (EGPRS_BEP_LinkQualityMeasurements_type2_t, Exist_QPSK_MEAN_BEP, 1, &hf_egprs_prr_additionsr7_qpsk_mean_bep_exist),
3081   M_UINT       (EGPRS_BEP_LinkQualityMeasurements_type2_t,  QPSK_MEAN_BEP,  5, &hf_egprs_prr_additionsr7_qpsk_mean_bep),
3082   M_UINT       (EGPRS_BEP_LinkQualityMeasurements_type2_t,  QPSK_CV_BEP, 3, &hf_egprs_prr_additionsr7_qpsk_cv_bep),
3083 
3084   M_NEXT_EXIST (EGPRS_BEP_LinkQualityMeasurements_type2_t, Exist_16QAM_NSR_MEAN_BEP, 1, &hf_egprs_prr_additionsr7_16qam_nsr_mean_bep_exist),
3085   M_UINT       (EGPRS_BEP_LinkQualityMeasurements_type2_t,  p16QAM_NSR_MEAN_BEP,  5, &hf_egprs_prr_additionsr7_16qam_nsr_mean_bep),
3086   M_UINT       (EGPRS_BEP_LinkQualityMeasurements_type2_t,  p16QAM_NSR_CV_BEP, 3, &hf_egprs_prr_additionsr7_16qam_nsr_cv_bep),
3087 
3088   M_NEXT_EXIST (EGPRS_BEP_LinkQualityMeasurements_type2_t, Exist_32QAM_NSR_MEAN_BEP, 1, &hf_egprs_prr_additionsr7_32qam_nsr_mean_bep_exist),
3089   M_UINT       (EGPRS_BEP_LinkQualityMeasurements_type2_t,  p32QAM_NSR_MEAN_BEP,  5, &hf_egprs_prr_additionsr7_32qam_nsr_mean_bep),
3090   M_UINT       (EGPRS_BEP_LinkQualityMeasurements_type2_t,  p32QAM_NSR_CV_BEP, 3, &hf_egprs_prr_additionsr7_32qam_nsr_cv_bep),
3091 
3092   M_NEXT_EXIST (EGPRS_BEP_LinkQualityMeasurements_type2_t, Exist_16QAM_HSR_MEAN_BEP, 1, &hf_egprs_prr_additionsr7_16qam_hsr_mean_bep_exist),
3093   M_UINT       (EGPRS_BEP_LinkQualityMeasurements_type2_t,  p16QAM_HSR_MEAN_BEP,  5, &hf_egprs_prr_additionsr7_16qam_hsr_mean_bep),
3094   M_UINT       (EGPRS_BEP_LinkQualityMeasurements_type2_t,  p16QAM_HSR_CV_BEP, 3, &hf_egprs_prr_additionsr7_16qam_hsr_cv_bep),
3095 
3096   M_NEXT_EXIST (EGPRS_BEP_LinkQualityMeasurements_type2_t, Exist_32QAM_HSR_MEAN_BEP, 1, &hf_egprs_prr_additionsr7_32qam_hsr_mean_bep_exist),
3097   M_UINT       (EGPRS_BEP_LinkQualityMeasurements_type2_t,  p32QAM_HSR_MEAN_BEP,  5, &hf_egprs_prr_additionsr7_32qam_hsr_mean_bep),
3098   M_UINT       (EGPRS_BEP_LinkQualityMeasurements_type2_t,  p32QAM_HSR_CV_BEP, 3, &hf_egprs_prr_additionsr7_32qam_hsr_cv_bep),
3099 
3100 CSN_DESCR_END  (EGPRS_BEP_LinkQualityMeasurements_type2_t)
3101 
3102 static const
3103 CSN_DESCR_BEGIN(BEP_MeasurementReport_type2_t)
3104   M_NEXT_EXIST (BEP_MeasurementReport_type2_t, Exist, 1, &hf_bep_measurementreport_mean_bep_exist),
3105   M_UINT       (BEP_MeasurementReport_type2_t,  REPORTED_MODULATION,  2, &hf_bep_measurementreport_reported_modulation),
3106   M_UINT       (BEP_MeasurementReport_type2_t,  MEAN_BEP_TN,  4, &hf_bep_measurementreport_mean_bep_tn),
3107 CSN_DESCR_END  (BEP_MeasurementReport_type2_t)
3108 
3109 static const
3110 CSN_DESCR_BEGIN(InterferenceMeasurementReport_type2_t)
3111   M_NEXT_EXIST (InterferenceMeasurementReport_type2_t, Exist, 1, &hf_interferencemeasurementreport_i_level_exist),
3112   M_UINT       (InterferenceMeasurementReport_type2_t,  I_LEVEL,  4, &hf_interferencemeasurementreport_i_level),
3113 CSN_DESCR_END  (InterferenceMeasurementReport_type2_t)
3114 static const
3115 CSN_DESCR_BEGIN(EGPRS_TimeslotLinkQualityMeasurements_type2_t)
3116   M_NEXT_EXIST (EGPRS_TimeslotLinkQualityMeasurements_type2_t, Exist_BEP_MEASUREMENTS, 1, &hf_bep_measurements_exist),
3117   M_TYPE_ARRAY (EGPRS_TimeslotLinkQualityMeasurements_type2_t, BEP_MEASUREMENTS, BEP_MeasurementReport_type2_t, 8),
3118 
3119   M_NEXT_EXIST (EGPRS_TimeslotLinkQualityMeasurements_type2_t, Exist_INTERFERENCE_MEASUREMENTS, 1, &hf_interference_measurements_exist),
3120   M_TYPE_ARRAY (EGPRS_TimeslotLinkQualityMeasurements_type2_t, INTERFERENCE_MEASUREMENTS, InterferenceMeasurementReport_type2_t, 8),
3121 CSN_DESCR_END  (EGPRS_TimeslotLinkQualityMeasurements_type2_t)
3122 
3123 static const
3124 CSN_DESCR_BEGIN(PRR_AdditionsR12_t)
3125 
3126   M_NEXT_EXIST (PRR_AdditionsR12_t, Exist_Downlink_eTFI, 1, &hf_egprs_downlink_etfi_exist),
3127   M_UINT       (PRR_AdditionsR12_t,  DOWNLINK_ETFI,  3, &hf_prr_additionsr12_downlink_etfi),
3128 
3129 CSN_DESCR_END  (PRR_AdditionsR12_t)
3130 
3131 static const
3132 CSN_DESCR_BEGIN(PRR_AdditionsR10_t)
3133   M_UINT       (PRR_AdditionsR10_t,  LOW_ACCESS_PRIORITY_SIGNALLING,  1, &hf_prr_additionsr10_low_access_priority_signalling),
3134 
3135   M_NEXT_EXIST_OR_NULL(PRR_AdditionsR10_t, Exist_AdditionsR12, 1, &hf_prr_additionsr10_additionsr12_exist),
3136   M_TYPE       (PRR_AdditionsR10_t, AdditionsR12, PRR_AdditionsR12_t),
3137 
3138 CSN_DESCR_END  (PRR_AdditionsR10_t)
3139 
3140 static const
3141 CSN_DESCR_BEGIN(PRR_AdditionsR7_t)
3142   M_UINT       (PRR_AdditionsR7_t,  EARLY_TBF_ESTABLISHMENT,  1, &hf_prr_additionsr7_early_tbf_establishment),
3143 
3144   M_NEXT_EXIST (PRR_AdditionsR7_t, Exist_EGPRS_BEP_LinkQualityMeasurements_type2, 1, &hf_egprs_bep_measurements_type2_exist),
3145   M_TYPE       (PRR_AdditionsR7_t, EGPRS_BEP_LinkQualityMeasurements_type2, EGPRS_BEP_LinkQualityMeasurements_type2_t),
3146 
3147   M_NEXT_EXIST (PRR_AdditionsR7_t, Exist_EGPRS_TimeslotLinkQualityMeasurements_type2, 1, &hf_egprs_timeslotlinkquality_measurements_type2_exist),
3148   M_TYPE       (PRR_AdditionsR7_t, EGPRS_TimeslotLinkQualityMeasurements_type2, EGPRS_TimeslotLinkQualityMeasurements_type2_t),
3149 
3150   M_NEXT_EXIST_OR_NULL(PRR_AdditionsR7_t, Exist_AdditionsR10, 1, &hf_prr_additionsr7_additionsr10_exist),
3151   M_TYPE       (PRR_AdditionsR7_t, AdditionsR10, PRR_AdditionsR10_t),
3152 
3153 CSN_DESCR_END  (PRR_AdditionsR7_t)
3154 
3155 static const
3156 CSN_DESCR_BEGIN(PRR_AdditionsR6_t)
3157   M_NEXT_EXIST (PRR_AdditionsR6_t, Exist_Ext_Channel_Request_desc, 1, &hf_Ext_Channel_Request_desc_exist),
3158   M_TYPE       (PRR_AdditionsR6_t, Ext_Channel_Request_desc, Ext_Channel_Request_desc_t),
3159 
3160   M_NEXT_EXIST_OR_NULL(PRR_AdditionsR6_t, Exist_AdditionsR7, 1, &hf_prr_additionsr6_additionsr7_exist),
3161   M_TYPE       (PRR_AdditionsR6_t, AdditionsR7, PRR_AdditionsR7_t),
3162 
3163 CSN_DESCR_END  (PRR_AdditionsR6_t)
3164 
3165 static const
3166 CSN_DESCR_BEGIN(PRR_AdditionsR5_t)
3167   M_NEXT_EXIST (PRR_AdditionsR5_t, Exist_Iu_Mode_ChRequestDesk, 1, &hf_iu_mode_chrequest_exist),
3168   M_TYPE       (PRR_AdditionsR5_t, IU_Mode_Channel_Request_Desk_RNTI, IU_Mode_Channel_Request_Desk_RNTI_t),
3169 
3170   M_NEXT_EXIST (PRR_AdditionsR5_t, Exist_HFN_LSB, 1, &hf_egprs_prr_additionsr5_hfn_lsb_exist),
3171   M_UINT       (PRR_AdditionsR5_t,  HFN_LSb, 7, &hf_egprs_prr_additionsr5_hfn_lsb),
3172 
3173   M_NEXT_EXIST_OR_NULL(PRR_AdditionsR5_t, Exist_AdditionsR6, 1, &hf_prr_additionsr5_additionsr6_exist),
3174   M_TYPE       (PRR_AdditionsR5_t, AdditionsR6, PRR_AdditionsR6_t),
3175 CSN_DESCR_END  (PRR_AdditionsR5_t)
3176 
3177 static const
3178 CSN_DESCR_BEGIN(PRR_AdditionsR99_t)
3179   M_NEXT_EXIST (PRR_AdditionsR99_t, Exist_EGPRS_BEP_LinkQualityMeasurements, 1, &hf_egprs_bep_measurements_exist),
3180   M_TYPE       (PRR_AdditionsR99_t, EGPRS_BEP_LinkQualityMeasurements, EGPRS_BEP_LinkQualityMeasurements_t),
3181 
3182   M_NEXT_EXIST (PRR_AdditionsR99_t, Exist_EGPRS_TimeslotLinkQualityMeasurements, 1, &hf_egprs_timeslotlinkquality_measurements_exist),
3183   M_TYPE       (PRR_AdditionsR99_t, EGPRS_TimeslotLinkQualityMeasurements, EGPRS_TimeslotLinkQualityMeasurements_t),
3184 
3185   M_NEXT_EXIST (PRR_AdditionsR99_t, Exist_PFI, 1, &hf_pfi_exist),
3186   M_UINT       (PRR_AdditionsR99_t,  PFI, 7, &hf_pfi),
3187 
3188   M_UINT       (PRR_AdditionsR99_t,  MS_RAC_AdditionalInformationAvailable,  1, &hf_prr_additionsr99_ms_rac_additionalinformationavailable),
3189   M_UINT       (PRR_AdditionsR99_t,  RetransmissionOfPRR,  1, &hf_prr_additionsr99_retransmissionofprr),
3190 
3191   M_NEXT_EXIST_OR_NULL(PRR_AdditionsR99_t, Exist_AdditionsR5, 1, &hf_prr_additionsr99_additionsr5_exist),
3192   M_TYPE       (PRR_AdditionsR99_t, AdditionsR5, PRR_AdditionsR5_t),
3193 
3194 CSN_DESCR_END  (PRR_AdditionsR99_t)
3195 
3196 static const
3197 CSN_DESCR_BEGIN       (Packet_Resource_Request_t)
3198   /* Mac header */
3199   M_UINT              (Packet_Resource_Request_t,  PayloadType, 2, &hf_ul_payload_type),
3200   M_UINT              (Packet_Resource_Request_t,  spare, 5, &hf_ul_mac_header_spare),
3201   M_UINT              (Packet_Resource_Request_t,  R, 1, &hf_ul_retry),
3202   M_UINT              (Packet_Resource_Request_t,  MESSAGE_TYPE, 6, &hf_ul_message_type),
3203   /* Mac header */
3204 
3205   M_NEXT_EXIST        (Packet_Resource_Request_t, Exist_ACCESS_TYPE, 1, &hf_packet_resource_request_access_type_exist),
3206   M_UINT              (Packet_Resource_Request_t,  ACCESS_TYPE,  2, &hf_packet_resource_request_access_type),
3207 
3208   M_TYPE              (Packet_Resource_Request_t, ID, PacketResourceRequestID_t),
3209 
3210   M_NEXT_EXIST        (Packet_Resource_Request_t, Exist_MS_Radio_Access_capability2, 1, &hf_ms_radio_access_capability_exist),
3211   M_TYPE              (Packet_Resource_Request_t, MS_Radio_Access_capability2, MS_Radio_Access_capability2_t),
3212 
3213   M_TYPE              (Packet_Resource_Request_t, Channel_Request_Description, Channel_Request_Description_t),
3214 
3215   M_NEXT_EXIST        (Packet_Resource_Request_t, Exist_CHANGE_MARK, 1, &hf_packet_resource_request_change_mark_exist),
3216   M_UINT              (Packet_Resource_Request_t,  CHANGE_MARK,  2, &hf_packet_resource_request_change_mark),
3217 
3218   M_UINT              (Packet_Resource_Request_t,  C_VALUE,  6, &hf_packet_resource_request_c_value),
3219 
3220   M_NEXT_EXIST        (Packet_Resource_Request_t, Exist_SIGN_VAR, 1, &hf_packet_resource_request_sign_var_exist),
3221   M_UINT              (Packet_Resource_Request_t,  SIGN_VAR,  6, &hf_packet_resource_request_sign_var),
3222 
3223   M_TYPE_ARRAY        (Packet_Resource_Request_t,  I_LEVEL_TN, InterferenceMeasurementReport_t, 8),
3224 
3225   M_NEXT_EXIST_OR_NULL(Packet_Resource_Request_t, Exist_AdditionsR99, 1, &hf_additionsr99_exist),
3226   M_TYPE              (Packet_Resource_Request_t, AdditionsR99, PRR_AdditionsR99_t),
3227 
3228    M_PADDING_BITS     (Packet_Resource_Request_t, &hf_padding),
3229 CSN_DESCR_END         (Packet_Resource_Request_t)
3230 
3231 /* < Packet Mobile TBF Status message content > */
3232 static const
3233 CSN_DESCR_BEGIN(Packet_Mobile_TBF_Status_t)
3234   /* Mac header */
3235   M_UINT       (Packet_Mobile_TBF_Status_t,  PayloadType, 2, &hf_ul_payload_type),
3236   M_UINT       (Packet_Mobile_TBF_Status_t,  spare, 5, &hf_ul_mac_header_spare),
3237   M_UINT       (Packet_Mobile_TBF_Status_t,  R, 1, &hf_ul_retry),
3238   M_UINT       (Packet_Mobile_TBF_Status_t,  MESSAGE_TYPE, 6, &hf_ul_message_type),
3239   /* Mac header */
3240 
3241   M_TYPE       (Packet_Mobile_TBF_Status_t, Global_TFI, Global_TFI_t),
3242   M_UINT       (Packet_Mobile_TBF_Status_t,  TBF_CAUSE,  3, &hf_packet_mobile_tbf_status_tbf_cause),
3243 
3244   M_NEXT_EXIST (Packet_Mobile_TBF_Status_t, Exist_STATUS_MESSAGE_TYPE, 1, &hf_dl_message_type_exist),
3245   M_UINT       (Packet_Mobile_TBF_Status_t,  STATUS_MESSAGE_TYPE, 6, &hf_dl_message_type),
3246 
3247   M_PADDING_BITS(Packet_Mobile_TBF_Status_t, &hf_padding),
3248 CSN_DESCR_END  (Packet_Mobile_TBF_Status_t)
3249 
3250 /* < Packet PSI Status message content > */
3251 static const
3252 CSN_DESCR_BEGIN(PSI_Message_t)
3253   M_UINT       (PSI_Message_t, PSI_MESSAGE_TYPE, 6, &hf_dl_message_type),
3254   M_UINT       (PSI_Message_t,  PSIX_CHANGE_MARK,  2, &hf_psi_message_psix_change_mark),
3255   M_NEXT_EXIST (PSI_Message_t, Exist_PSIX_COUNT_and_Instance_Bitmap, 2, &hf_psi_message_psix_count_instance_bitmap_exist),
3256   M_FIXED      (PSI_Message_t, 4, 0, &hf_psi_message_psix_count),   /* Placeholder for PSIX_COUNT (4 bits) */
3257   M_FIXED      (PSI_Message_t, 1, 0, &hf_psi_message_instance_bitmap),   /* Placeholder for Instance bitmap (1 bit) */
3258 CSN_DESCR_END  (PSI_Message_t)
3259 
3260 static const
3261 CSN_DESCR_BEGIN(PSI_Message_List_t)
3262   M_REC_TARRAY (PSI_Message_List_t, PSI_Message, PSI_Message_t, Count_PSI_Message, &hf_psi_message_exist),
3263   M_FIXED      (PSI_Message_List_t, 1, 0x00, &hf_psi_message_list),
3264   M_UINT       (PSI_Message_List_t, ADDITIONAL_MSG_TYPE, 1, &hf_additional_msg_type),
3265 CSN_DESCR_END  (PSI_Message_List_t)
3266 
3267 static const
3268 CSN_DESCR_BEGIN(Unknown_PSI_Message_List_t)
3269   M_FIXED      (Unknown_PSI_Message_List_t, 1, 0x00, &hf_psi_message_list),
3270   M_UINT       (Unknown_PSI_Message_List_t,  ADDITIONAL_MSG_TYPE, 1, &hf_dl_message_type),
3271 CSN_DESCR_END  (Unknown_PSI_Message_List_t)
3272 
3273 static const
3274 CSN_DESCR_BEGIN(Packet_PSI_Status_t)
3275   /* Mac header */
3276   M_UINT       (Packet_PSI_Status_t,  PayloadType, 2, &hf_ul_payload_type),
3277   M_UINT       (Packet_PSI_Status_t,  spare, 5, &hf_ul_mac_header_spare),
3278   M_UINT       (Packet_PSI_Status_t,  R, 1, &hf_ul_retry),
3279   M_UINT       (Packet_PSI_Status_t,  MESSAGE_TYPE, 6, &hf_ul_message_type),
3280   /* Mac header */
3281 
3282   M_TYPE       (Packet_PSI_Status_t, Global_TFI, Global_TFI_t),
3283   M_UINT       (Packet_PSI_Status_t,  PBCCH_CHANGE_MARK,  3, &hf_packet_psi_status_pbcch_change_mark),
3284   M_TYPE       (Packet_PSI_Status_t, PSI_Message_List, PSI_Message_List_t),
3285   M_TYPE       (Packet_PSI_Status_t, Unknown_PSI_Message_List, Unknown_PSI_Message_List_t),
3286   M_PADDING_BITS(Packet_PSI_Status_t, &hf_padding),
3287 CSN_DESCR_END  (Packet_PSI_Status_t)
3288 
3289 /* < Packet SI Status message content > */
3290 
3291 static const
3292 CSN_DESCR_BEGIN(SI_Message_t)
3293   M_UINT       (SI_Message_t,  SI_MESSAGE_TYPE, 8, &hf_si_message_type),
3294   M_UINT       (SI_Message_t,  MESS_REC,  2, &hf_si_message_mess_rec),
3295 CSN_DESCR_END  (SI_Message_t)
3296 
3297 static const
3298 CSN_DESCR_BEGIN(SI_Message_List_t)
3299   M_REC_TARRAY (SI_Message_List_t, SI_Message, SI_Message_t, Count_SI_Message, &hf_si_message_list_exist),
3300   M_FIXED      (SI_Message_List_t, 1, 0x00, &hf_si_message_list),
3301   M_UINT       (SI_Message_List_t, ADDITIONAL_MSG_TYPE, 1, &hf_additional_msg_type),
3302 CSN_DESCR_END  (SI_Message_List_t)
3303 
3304 static const
3305 CSN_DESCR_BEGIN(Unknown_SI_Message_List_t)
3306   M_FIXED      (Unknown_SI_Message_List_t, 1, 0x00, &hf_si_message_list),
3307   M_UINT       (Unknown_SI_Message_List_t, ADDITIONAL_MSG_TYPE, 1, &hf_additional_msg_type),
3308 CSN_DESCR_END  (Unknown_SI_Message_List_t)
3309 
3310 static const
3311 CSN_DESCR_BEGIN(Packet_SI_Status_t)
3312   /* Mac header */
3313   M_UINT       (Packet_SI_Status_t,  PayloadType, 2, &hf_ul_payload_type),
3314   M_UINT       (Packet_SI_Status_t,  spare, 5, &hf_ul_mac_header_spare),
3315   M_UINT       (Packet_SI_Status_t,  R, 1, &hf_ul_retry),
3316   M_UINT       (Packet_SI_Status_t,  MESSAGE_TYPE, 6, &hf_ul_message_type),
3317   /* Mac header */
3318 
3319   M_TYPE       (Packet_SI_Status_t, Global_TFI, Global_TFI_t),
3320   M_UINT       (Packet_SI_Status_t, BCCH_CHANGE_MARK,  3, &hf_bcch_change_mark),
3321   M_TYPE       (Packet_SI_Status_t, SI_Message_List, SI_Message_List_t),
3322   M_TYPE       (Packet_SI_Status_t, Unknown_SI_Message_List, Unknown_SI_Message_List_t),
3323   M_PADDING_BITS(Packet_SI_Status_t, &hf_padding),
3324 CSN_DESCR_END  (Packet_SI_Status_t)
3325 
3326 /* < Packet Downlink Ack/Nack message content > */
3327 static const
3328 CSN_DESCR_BEGIN(PD_AckNack_AdditionsR99_t)
3329   M_NEXT_EXIST (PD_AckNack_AdditionsR99_t, Exist_PFI, 1, &hf_pfi_exist),
3330   M_UINT       (PD_AckNack_AdditionsR99_t,  PFI, 7, &hf_pfi),
3331 CSN_DESCR_END  (PD_AckNack_AdditionsR99_t)
3332 
3333 static const
3334 CSN_DESCR_BEGIN       (Packet_Downlink_Ack_Nack_t)
3335   M_UINT              (Packet_Downlink_Ack_Nack_t,  PayloadType, 2, &hf_ul_payload_type),
3336   M_UINT              (Packet_Downlink_Ack_Nack_t,  spare, 5, &hf_ul_mac_header_spare),
3337   M_UINT              (Packet_Downlink_Ack_Nack_t,  R, 1, &hf_ul_retry),
3338   M_UINT              (Packet_Downlink_Ack_Nack_t,  MESSAGE_TYPE,  6, &hf_ul_message_type),
3339   M_UINT              (Packet_Downlink_Ack_Nack_t,  DOWNLINK_TFI,  5, &hf_downlink_tfi),
3340   M_TYPE              (Packet_Downlink_Ack_Nack_t, Ack_Nack_Description, Ack_Nack_Description_t),
3341 
3342   M_NEXT_EXIST        (Packet_Downlink_Ack_Nack_t, Exist_Channel_Request_Description, 1, &hf_packet_downlink_ack_nack_channel_request_description_exist),
3343   M_TYPE              (Packet_Downlink_Ack_Nack_t, Channel_Request_Description, Channel_Request_Description_t),
3344 
3345   M_TYPE              (Packet_Downlink_Ack_Nack_t, Channel_Quality_Report, Channel_Quality_Report_t),
3346 
3347   M_NEXT_EXIST_OR_NULL(Packet_Downlink_Ack_Nack_t, Exist_AdditionsR99, 1, &hf_additionsr99_exist),
3348   M_TYPE              (Packet_Downlink_Ack_Nack_t, AdditionsR99, PD_AckNack_AdditionsR99_t),
3349 
3350   M_PADDING_BITS      (Packet_Downlink_Ack_Nack_t, &hf_padding),
3351 CSN_DESCR_END         (Packet_Downlink_Ack_Nack_t)
3352 
3353 
3354 /* < EGPRS Packet Downlink Ack/Nack message content > */
3355 static const
3356 CSN_DESCR_BEGIN(EGPRS_ChannelQualityReport_t)
3357   M_TYPE       (EGPRS_ChannelQualityReport_t, EGPRS_BEP_LinkQualityMeasurements, EGPRS_BEP_LinkQualityMeasurements_t),
3358   M_UINT       (EGPRS_ChannelQualityReport_t,  C_VALUE,  6, &hf_egprs_channelqualityreport_c_value),
3359   M_TYPE       (EGPRS_ChannelQualityReport_t, EGPRS_TimeslotLinkQualityMeasurements, EGPRS_TimeslotLinkQualityMeasurements_t),
3360 CSN_DESCR_END  (EGPRS_ChannelQualityReport_t)
3361 
3362 static const
3363 CSN_DESCR_BEGIN(EGPRS_PD_AckNack_t)
3364 /*  M_CALLBACK   (EGPRS_PD_AckNack_t, (void*)21, IsSupported, IsSupported), */
3365   M_UINT       (EGPRS_PD_AckNack_t,  PayloadType, 2, &hf_ul_payload_type),
3366   M_UINT       (EGPRS_PD_AckNack_t,  spare, 5, &hf_ul_mac_header_spare),
3367   M_UINT       (EGPRS_PD_AckNack_t,  R, 1, &hf_ul_retry),
3368 
3369   M_UINT       (EGPRS_PD_AckNack_t,  MESSAGE_TYPE, 6, &hf_ul_message_type),
3370   M_UINT       (EGPRS_PD_AckNack_t,  DOWNLINK_TFI, 5, &hf_downlink_tfi),
3371   M_UINT       (EGPRS_PD_AckNack_t,  MS_OUT_OF_MEMORY,  1, &hf_egprs_pd_acknack_ms_out_of_memory),
3372 
3373   M_NEXT_EXIST (EGPRS_PD_AckNack_t, Exist_EGPRS_ChannelQualityReport, 1, &hf_egprs_pd_acknack_egprs_channelqualityreport_exist),
3374   M_TYPE       (EGPRS_PD_AckNack_t, EGPRS_ChannelQualityReport, EGPRS_ChannelQualityReport_t),
3375 
3376   M_NEXT_EXIST (EGPRS_PD_AckNack_t, Exist_ChannelRequestDescription, 1, &hf_egprs_pd_acknack_channelrequestdescription_exist),
3377   M_TYPE       (EGPRS_PD_AckNack_t, ChannelRequestDescription, Channel_Request_Description_t),
3378 
3379   M_NEXT_EXIST (EGPRS_PD_AckNack_t, Exist_PFI, 1, &hf_pfi_exist),
3380   M_UINT       (EGPRS_PD_AckNack_t,  PFI, 7, &hf_pfi),
3381 
3382   M_NEXT_EXIST (EGPRS_PD_AckNack_t, Exist_ExtensionBits, 1, &hf_egprs_pd_acknack_extensionbits_exist),
3383   M_TYPE       (EGPRS_PD_AckNack_t, ExtensionBits, Extension_Bits_t),
3384 
3385   M_TYPE       (EGPRS_PD_AckNack_t, EGPRS_AckNack, EGPRS_AckNack_t),
3386 /*  M_CALLBACK   (EGPRS_PD_AckNack_t, (void*)24, EGPRS_AckNack, EGPRS_AckNack),  */
3387   M_PADDING_BITS(EGPRS_PD_AckNack_t, &hf_padding),
3388 CSN_DESCR_END  (EGPRS_PD_AckNack_t)
3389 
3390 static const
3391 CSN_DESCR_BEGIN(FDD_Target_Cell_t)
3392   M_UINT       (FDD_Target_Cell_t,  FDD_ARFCN,  14, &hf_fddarget_cell_t_fdd_arfcn),
3393   M_UINT       (FDD_Target_Cell_t,  DIVERSITY,  1, &hf_fddarget_cell_t_diversity),
3394   M_NEXT_EXIST (FDD_Target_Cell_t, Exist_Bandwith_FDD, 1, &hf_fdd_target_cell_bandwith_fdd_exist),
3395   M_UINT       (FDD_Target_Cell_t,  BANDWITH_FDD,  3, &hf_fddarget_cell_t_bandwith_fdd),
3396   M_UINT       (FDD_Target_Cell_t,  SCRAMBLING_CODE,  9, &hf_fddarget_cell_t_scrambling_code),
3397 CSN_DESCR_END  (FDD_Target_Cell_t)
3398 
3399 static const
3400 CSN_DESCR_BEGIN(TDD_Target_Cell_t)
3401   M_UINT       (TDD_Target_Cell_t,  TDD_ARFCN,  14, &hf_tddarget_cell_t_tdd_arfcn),
3402   M_UINT       (TDD_Target_Cell_t,  DIVERSITY_TDD,  1, &hf_tddarget_cell_t_diversity),
3403   M_NEXT_EXIST (TDD_Target_Cell_t, Exist_Bandwith_TDD, 1, &hf_tdd_target_cell_bandwith_tdd_exist),
3404   M_UINT       (TDD_Target_Cell_t,  BANDWITH_TDD,  3, &hf_tddarget_cell_t_bandwith_tdd),
3405   M_UINT       (TDD_Target_Cell_t,  CELL_PARAMETER,  7, &hf_tddarget_cell_t_cell_parameter),
3406   M_UINT       (TDD_Target_Cell_t,  Sync_Case_TSTD,  1, &hf_tddarget_cell_t_sync_case_tstd),
3407 CSN_DESCR_END  (TDD_Target_Cell_t)
3408 
3409 static const
3410 CSN_DESCR_BEGIN(EUTRAN_Target_Cell_t)
3411   M_UINT       (EUTRAN_Target_Cell_t,  EARFCN,  16, &hf_target_cell_eutran_earfcn),
3412   M_NEXT_EXIST (EUTRAN_Target_Cell_t, Exist_Measurement_Bandwidth, 1, &hf_eutran_target_cell_measurement_bandwidth_exist),
3413   M_UINT       (EUTRAN_Target_Cell_t,  Measurement_Bandwidth,  3, &hf_target_cell_eutran_measurement_bandwidth),
3414   M_UINT       (EUTRAN_Target_Cell_t,  Physical_Layer_Cell_Identity,  9, &hf_target_cell_eutran_pl_cell_id),
3415 CSN_DESCR_END  (EUTRAN_Target_Cell_t)
3416 
3417 static const
3418 CSN_DESCR_BEGIN(UTRAN_CSG_Target_Cell_t)
3419   M_UINT       (UTRAN_CSG_Target_Cell_t, UTRAN_CI,  28, &hf_utran_csg_target_cell_ci),
3420   M_NEXT_EXIST (UTRAN_CSG_Target_Cell_t, Exist_PLMN_ID, 1, &hf_utran_csg_target_cell_plmn_id_exist),
3421   M_TYPE       (UTRAN_CSG_Target_Cell_t, PLMN_ID, PLMN_t),
3422 CSN_DESCR_END  (UTRAN_CSG_Target_Cell_t)
3423 
3424 static const
3425 CSN_DESCR_BEGIN(EUTRAN_CSG_Target_Cell_t)
3426   M_UINT       (EUTRAN_CSG_Target_Cell_t, EUTRAN_CI,  28, &hf_eutran_csg_target_cell_ci),
3427   M_UINT       (EUTRAN_CSG_Target_Cell_t, Tracking_Area_Code,  16, &hf_eutran_csg_target_cell_tac),
3428   M_NEXT_EXIST (EUTRAN_CSG_Target_Cell_t, Exist_PLMN_ID, 1, &hf_eutran_csg_target_cell_plmn_id_exist),
3429   M_TYPE       (EUTRAN_CSG_Target_Cell_t, PLMN_ID, PLMN_t),
3430 CSN_DESCR_END  (EUTRAN_CSG_Target_Cell_t)
3431 
3432 static const
3433 CSN_DESCR_BEGIN(PCCF_AdditionsR9_t)
3434   M_NEXT_EXIST (PCCF_AdditionsR9_t, Exist_UTRAN_CSG_Target_Cell, 1, &hf_pccf_additionsr9_utran_csg_target_cell_exist),
3435   M_TYPE       (PCCF_AdditionsR9_t, UTRAN_CSG_Target_Cell, UTRAN_CSG_Target_Cell_t),
3436   M_NEXT_EXIST (PCCF_AdditionsR9_t, Exist_EUTRAN_CSG_Target_Cell, 1, &hf_pccf_additionsr9_eutran_csg_target_cell_exist),
3437   M_TYPE       (PCCF_AdditionsR9_t, EUTRAN_CSG_Target_Cell, EUTRAN_CSG_Target_Cell_t),
3438 CSN_DESCR_END  (PCCF_AdditionsR9_t)
3439 
3440 static const
3441 CSN_DESCR_BEGIN(PCCF_AdditionsR8_t)
3442   M_NEXT_EXIST (PCCF_AdditionsR8_t, Exist_EUTRAN_Target_Cell, 1, &hf_pccf_additionsr8_eutran_target_cell_exist),
3443   M_TYPE       (PCCF_AdditionsR8_t, EUTRAN_Target_Cell, EUTRAN_Target_Cell_t),
3444   M_NEXT_EXIST_OR_NULL(PCCF_AdditionsR8_t, Exist_AdditionsR9, 1, &hf_pccf_additionsr8_additionsr9_exist),
3445   M_TYPE       (PCCF_AdditionsR8_t, AdditionsR9, PCCF_AdditionsR9_t),
3446 CSN_DESCR_END  (PCCF_AdditionsR8_t)
3447 
3448 static const
3449 CSN_DESCR_BEGIN(PCCF_AdditionsR5_t)
3450   M_NEXT_EXIST (PCCF_AdditionsR5_t, Exist_G_RNTI_extention, 1, &hf_pccf_additionsr5_g_rnti_extention_exist),
3451   M_UINT       (PCCF_AdditionsR5_t,  G_RNTI_extention,  4, &hf_pmo_additionsr5_grnti),
3452   M_NEXT_EXIST_OR_NULL(PCCF_AdditionsR5_t, Exist_AdditionsR8, 1, &hf_pccf_additionsr5_additionsr8_exist),
3453   M_TYPE       (PCCF_AdditionsR5_t, AdditionsR8, PCCF_AdditionsR8_t),
3454 CSN_DESCR_END  (PCCF_AdditionsR5_t)
3455 
3456 static const
3457 CSN_DESCR_BEGIN(PCCF_AdditionsR99_t)
3458   M_NEXT_EXIST (PCCF_AdditionsR99_t, Exist_FDD_Description, 1, &hf_pccf_additionsr99_fdd_description_exist),
3459   M_TYPE       (PCCF_AdditionsR99_t, FDD_Target_Cell, FDD_Target_Cell_t),
3460   M_NEXT_EXIST (PCCF_AdditionsR99_t, Exist_TDD_Description, 1, &hf_pccf_additionsr99_tdd_description_exist),
3461   M_TYPE       (PCCF_AdditionsR99_t, TDD_Target_Cell, TDD_Target_Cell_t),
3462   M_NEXT_EXIST_OR_NULL(PCCF_AdditionsR99_t, Exist_AdditionsR5, 1, &hf_pccf_additionsr99_additionsr5_exist),
3463   M_TYPE       (PCCF_AdditionsR99_t, AdditionsR5, PCCF_AdditionsR5_t),
3464 CSN_DESCR_END  (PCCF_AdditionsR99_t)
3465 
3466 /* < Packet Cell Change Failure message content > */
3467 static const
3468 CSN_DESCR_BEGIN(Packet_Cell_Change_Failure_t)
3469   /* Mac header */
3470   M_UINT               (Packet_Cell_Change_Failure_t,  PayloadType, 2, &hf_ul_payload_type),
3471   M_UINT               (Packet_Cell_Change_Failure_t,  spare, 5, &hf_ul_mac_header_spare),
3472   M_UINT               (Packet_Cell_Change_Failure_t,  R, 1, &hf_ul_retry),
3473   M_UINT               (Packet_Cell_Change_Failure_t,  MESSAGE_TYPE, 6, &hf_ul_message_type),
3474   /* Mac header */
3475 
3476   M_UINT               (Packet_Cell_Change_Failure_t,  TLLI, 32, &hf_tlli),
3477   M_UINT               (Packet_Cell_Change_Failure_t,  ARFCN, 10, &hf_arfcn),
3478   M_UINT               (Packet_Cell_Change_Failure_t,  BSIC,  6, &hf_packet_cell_change_failure_bsic),
3479   M_UINT               (Packet_Cell_Change_Failure_t,  CAUSE,  4, &hf_packet_cell_change_failure_cause),
3480 
3481   M_NEXT_EXIST_OR_NULL (Packet_Cell_Change_Failure_t, Exist_AdditionsR99, 1, &hf_additionsr99_exist),
3482   M_TYPE               (Packet_Cell_Change_Failure_t, AdditionsR99, PCCF_AdditionsR99_t),
3483 
3484   M_PADDING_BITS       (Packet_Cell_Change_Failure_t, &hf_padding),
3485 CSN_DESCR_END          (Packet_Cell_Change_Failure_t)
3486 
3487 /* < Packet Uplink Ack/Nack message content > */
3488 static const
3489 CSN_DESCR_BEGIN(Power_Control_Parameters_t)
3490   M_UINT       (Power_Control_Parameters_t, ALPHA, 4, &hf_alpha),
3491 
3492   M_NEXT_EXIST (Power_Control_Parameters_t, Slot[0].Exist, 1, &hf_power_control_parameters_slot0_exist),
3493   M_UINT       (Power_Control_Parameters_t,  Slot[0].GAMMA_TN, 5, &hf_gamma),
3494 
3495   M_NEXT_EXIST (Power_Control_Parameters_t, Slot[1].Exist, 1, &hf_power_control_parameters_slot1_exist),
3496   M_UINT       (Power_Control_Parameters_t,  Slot[1].GAMMA_TN, 5, &hf_gamma),
3497 
3498   M_NEXT_EXIST (Power_Control_Parameters_t, Slot[2].Exist, 1, &hf_power_control_parameters_slot2_exist),
3499   M_UINT       (Power_Control_Parameters_t,  Slot[2].GAMMA_TN, 5, &hf_gamma),
3500 
3501   M_NEXT_EXIST (Power_Control_Parameters_t, Slot[3].Exist, 1, &hf_power_control_parameters_slot3_exist),
3502   M_UINT       (Power_Control_Parameters_t,  Slot[3].GAMMA_TN, 5, &hf_gamma),
3503 
3504   M_NEXT_EXIST (Power_Control_Parameters_t, Slot[4].Exist, 1, &hf_power_control_parameters_slot4_exist),
3505   M_UINT       (Power_Control_Parameters_t,  Slot[4].GAMMA_TN, 5, &hf_gamma),
3506 
3507   M_NEXT_EXIST (Power_Control_Parameters_t, Slot[5].Exist, 1, &hf_power_control_parameters_slot5_exist),
3508   M_UINT       (Power_Control_Parameters_t,  Slot[5].GAMMA_TN, 5, &hf_gamma),
3509 
3510   M_NEXT_EXIST (Power_Control_Parameters_t, Slot[6].Exist, 1, &hf_power_control_parameters_slot6_exist),
3511   M_UINT       (Power_Control_Parameters_t,  Slot[6].GAMMA_TN, 5, &hf_gamma),
3512 
3513   M_NEXT_EXIST (Power_Control_Parameters_t, Slot[7].Exist, 1, &hf_power_control_parameters_slot7_exist),
3514   M_UINT       (Power_Control_Parameters_t,  Slot[7].GAMMA_TN, 5, &hf_gamma),
3515 CSN_DESCR_END  (Power_Control_Parameters_t)
3516 
3517 static const
3518 CSN_DESCR_BEGIN(Fixed_Allocation_Parameters_t)
3519   /* FIXME: Implement Fixed Allocation Parameters from old spec versions, removed in new ones */
3520   M_PADDING_BITS(Fixed_Allocation_Parameters_t, &hf_padding),
3521   CSN_ERROR     (Fixed_Allocation_Parameters_t, "01 <Fixed Allocation>", CSN_ERROR_STREAM_NOT_SUPPORTED, &ei_gsm_rlcmac_stream_not_supported),
3522 CSN_DESCR_END  (Fixed_Allocation_Parameters_t)
3523 
3524 static const
3525 CSN_DESCR_BEGIN(PU_AckNack_GPRS_AdditionsR99_t)
3526   M_NEXT_EXIST (PU_AckNack_GPRS_AdditionsR99_t, Exist_PacketExtendedTimingAdvance, 1, &hf_pu_acknack_gprs_additionsr99_packetextendedtimingadvance_exist),
3527   M_UINT       (PU_AckNack_GPRS_AdditionsR99_t,  PacketExtendedTimingAdvance, 2, &hf_packet_extended_timing_advance),
3528 
3529   M_UINT       (PU_AckNack_GPRS_AdditionsR99_t,  TBF_EST,  1, &hf_pu_acknack_gprs_additionsr99_tbf_est),
3530 CSN_DESCR_END  (PU_AckNack_GPRS_AdditionsR99_t)
3531 
3532 static const
3533 CSN_DESCR_BEGIN       (PU_AckNack_GPRS_t)
3534   M_UINT              (PU_AckNack_GPRS_t,  CHANNEL_CODING_COMMAND, 2, &hf_gprs_channel_coding_command),
3535   M_TYPE              (PU_AckNack_GPRS_t, Ack_Nack_Description, Ack_Nack_Description_t),
3536 
3537   M_NEXT_EXIST        (PU_AckNack_GPRS_t, Common_Uplink_Ack_Nack_Data.Exist_CONTENTION_RESOLUTION_TLLI, 1, &hf_pu_acknack_gprs_common_uplink_ack_nack_data_exist_contention_resolution_tlli_exist),
3538   M_UINT              (PU_AckNack_GPRS_t,  Common_Uplink_Ack_Nack_Data.CONTENTION_RESOLUTION_TLLI, 32, &hf_tlli),
3539 
3540   M_NEXT_EXIST        (PU_AckNack_GPRS_t, Common_Uplink_Ack_Nack_Data.Exist_Packet_Timing_Advance, 1, &hf_pu_acknack_gprs_common_uplink_ack_nack_data_exist_packet_timing_advance_exist),
3541   M_TYPE              (PU_AckNack_GPRS_t, Common_Uplink_Ack_Nack_Data.Packet_Timing_Advance, Packet_Timing_Advance_t),
3542 
3543   M_NEXT_EXIST        (PU_AckNack_GPRS_t, Common_Uplink_Ack_Nack_Data.Exist_Power_Control_Parameters, 1, &hf_pu_acknack_gprs_common_uplink_ack_nack_data_exist_power_control_parameters_exist),
3544   M_TYPE              (PU_AckNack_GPRS_t, Common_Uplink_Ack_Nack_Data.Power_Control_Parameters, Power_Control_Parameters_t),
3545 
3546   M_NEXT_EXIST        (PU_AckNack_GPRS_t, Common_Uplink_Ack_Nack_Data.Exist_Extension_Bits, 1, &hf_pu_acknack_gprs_common_uplink_ack_nack_data_exist_extension_bits_exist),
3547   M_TYPE              (PU_AckNack_GPRS_t, Common_Uplink_Ack_Nack_Data.Extension_Bits, Extension_Bits_t),
3548 
3549   M_NEXT_EXIST        (PU_AckNack_GPRS_t, Exist_Fixed_Allocation_Parameters, 1, &hf_pu_acknack_gprs_fixedallocationdummy),
3550   M_TYPE              (PU_AckNack_GPRS_t, Fixed_Allocation_Parameters, Fixed_Allocation_Parameters_t),
3551 
3552   M_NEXT_EXIST_OR_NULL(PU_AckNack_GPRS_t, Exist_AdditionsR99, 1, &hf_additionsr99_exist),
3553   M_TYPE              (PU_AckNack_GPRS_t, AdditionsR99, PU_AckNack_GPRS_AdditionsR99_t),
3554 CSN_DESCR_END         (PU_AckNack_GPRS_t)
3555 
3556 static const
3557 CSN_DESCR_BEGIN(PU_AckNack_EGPRS_00_t)
3558   M_UINT       (PU_AckNack_EGPRS_00_t,  EGPRS_ChannelCodingCommand, 4, &hf_egprs_channel_coding_command),
3559   M_UINT       (PU_AckNack_EGPRS_00_t,  RESEGMENT, 1, &hf_resegment),
3560   M_UINT       (PU_AckNack_EGPRS_00_t,  PRE_EMPTIVE_TRANSMISSION,  1, &hf_pu_acknack_egprs_00_pre_emptive_transmission),
3561   M_UINT       (PU_AckNack_EGPRS_00_t,  PRR_RETRANSMISSION_REQUEST,  1, &hf_pu_acknack_egprs_00_prr_retransmission_request),
3562   M_UINT       (PU_AckNack_EGPRS_00_t,  ARAC_RETRANSMISSION_REQUEST,  1, &hf_pu_acknack_egprs_00_arac_retransmission_request),
3563 
3564   M_NEXT_EXIST (PU_AckNack_EGPRS_00_t, Common_Uplink_Ack_Nack_Data.Exist_CONTENTION_RESOLUTION_TLLI, 1, &hf_pu_acknack_egprs_00_common_uplink_ack_nack_data_exist_contention_resolution_tlli_exist),
3565   M_UINT       (PU_AckNack_EGPRS_00_t,  Common_Uplink_Ack_Nack_Data.CONTENTION_RESOLUTION_TLLI, 32, &hf_tlli),
3566 
3567   M_UINT       (PU_AckNack_EGPRS_00_t,  TBF_EST,  1, &hf_pu_acknack_egprs_00_tbf_est),
3568 
3569   M_NEXT_EXIST (PU_AckNack_EGPRS_00_t, Common_Uplink_Ack_Nack_Data.Exist_Packet_Timing_Advance, 1, &hf_pu_acknack_egprs_00_common_uplink_ack_nack_data_exist_packet_timing_advance_exist),
3570   M_TYPE       (PU_AckNack_EGPRS_00_t, Common_Uplink_Ack_Nack_Data.Packet_Timing_Advance, Packet_Timing_Advance_t),
3571 
3572   M_NEXT_EXIST (PU_AckNack_EGPRS_00_t, Exist_Packet_Extended_Timing_Advance, 1, &hf_pu_acknack_egprs_00_packet_extended_timing_advance_exist),
3573   M_UINT       (PU_AckNack_EGPRS_00_t,  Packet_Extended_Timing_Advance, 2, &hf_packet_extended_timing_advance),
3574 
3575   M_NEXT_EXIST (PU_AckNack_EGPRS_00_t, Common_Uplink_Ack_Nack_Data.Exist_Power_Control_Parameters, 1, &hf_pu_acknack_egprs_00_common_uplink_ack_nack_data_exist_power_control_parameters_exist),
3576   M_TYPE       (PU_AckNack_EGPRS_00_t, Common_Uplink_Ack_Nack_Data.Power_Control_Parameters, Power_Control_Parameters_t),
3577 
3578   M_NEXT_EXIST (PU_AckNack_EGPRS_00_t, Common_Uplink_Ack_Nack_Data.Exist_Extension_Bits, 1, &hf_pu_acknack_egprs_00_common_uplink_ack_nack_data_exist_extension_bits_exist),
3579   M_TYPE       (PU_AckNack_EGPRS_00_t, Common_Uplink_Ack_Nack_Data.Extension_Bits, Extension_Bits_t),
3580 
3581   M_TYPE       (PU_AckNack_EGPRS_00_t, EGPRS_AckNack, EGPRS_AckNack_t),
3582 /*  M_CALLBACK   (PU_AckNack_EGPRS_00_t, (void*)24, EGPRS_AckNack, EGPRS_AckNack),  */
3583 CSN_DESCR_END  (PU_AckNack_EGPRS_00_t)
3584 
3585 static const
3586 CSN_DESCR_BEGIN(PU_AckNack_EGPRS_t)
3587 /*  M_CALLBACK   (PU_AckNack_EGPRS_t, (void*)21, IsSupported, IsSupported), */
3588   M_UNION      (PU_AckNack_EGPRS_t, 4, &hf_pu_acknack_egrps),
3589   M_TYPE       (PU_AckNack_EGPRS_t, u.PU_AckNack_EGPRS_00, PU_AckNack_EGPRS_00_t),
3590   CSN_ERROR    (PU_AckNack_EGPRS_t, "01 <PU_AckNack_EGPRS>", CSN_ERROR_STREAM_NOT_SUPPORTED, &ei_gsm_rlcmac_stream_not_supported),
3591   CSN_ERROR    (PU_AckNack_EGPRS_t, "10 <PU_AckNack_EGPRS>", CSN_ERROR_STREAM_NOT_SUPPORTED, &ei_gsm_rlcmac_stream_not_supported),
3592   CSN_ERROR    (PU_AckNack_EGPRS_t, "11 <PU_AckNack_EGPRS>", CSN_ERROR_STREAM_NOT_SUPPORTED, &ei_gsm_rlcmac_stream_not_supported),
3593 CSN_DESCR_END  (PU_AckNack_EGPRS_t)
3594 
3595 static const
3596 CSN_DESCR_BEGIN(Packet_Uplink_Ack_Nack_t)
3597   M_UINT       (Packet_Uplink_Ack_Nack_t, MESSAGE_TYPE, 6, &hf_dl_message_type),
3598   M_UINT       (Packet_Uplink_Ack_Nack_t, PAGE_MODE, 2, &hf_page_mode),
3599   M_FIXED      (Packet_Uplink_Ack_Nack_t, 2, 0x00, &hf_pu_acknack),
3600   M_UINT       (Packet_Uplink_Ack_Nack_t, UPLINK_TFI, 5, &hf_uplink_tfi),
3601 
3602   M_UNION      (Packet_Uplink_Ack_Nack_t, 2, &hf_pu_acknack),
3603   M_TYPE       (Packet_Uplink_Ack_Nack_t, u.PU_AckNack_GPRS_Struct, PU_AckNack_GPRS_t),
3604   M_TYPE       (Packet_Uplink_Ack_Nack_t, u.PU_AckNack_EGPRS_Struct, PU_AckNack_EGPRS_t),
3605 
3606   M_PADDING_BITS(Packet_Uplink_Ack_Nack_t, &hf_padding ),
3607 CSN_DESCR_END  (Packet_Uplink_Ack_Nack_t)
3608 
3609 /* < Packet Uplink Assignment message content > */
3610 static const
3611 CSN_DESCR_BEGIN(CHANGE_MARK_t)
3612   M_UINT       (CHANGE_MARK_t,  CHANGE_MARK_1,  2, &hf_change_mark_change_mark_1),
3613 
3614   M_NEXT_EXIST (CHANGE_MARK_t, Exist_CHANGE_MARK_2, 1, &hf_change_mark_change_mark_2_exist),
3615   M_UINT       (CHANGE_MARK_t,  CHANGE_MARK_2,  2, &hf_change_mark_change_mark_2),
3616 CSN_DESCR_END  (CHANGE_MARK_t)
3617 
3618 static const
3619 CSN_DESCR_BEGIN(Indirect_encoding_t)
3620   M_UINT       (Indirect_encoding_t,  MAIO, 6, &hf_maio),
3621   M_UINT       (Indirect_encoding_t,  MA_NUMBER,  4, &hf_indirect_encoding_ma_number),
3622 
3623   M_NEXT_EXIST (Indirect_encoding_t, Exist_CHANGE_MARK, 1, &hf_indirect_encoding_change_mark_exist),
3624   M_TYPE       (Indirect_encoding_t, CHANGE_MARK, CHANGE_MARK_t),
3625 CSN_DESCR_END  (Indirect_encoding_t)
3626 
3627 static const
3628 CSN_DESCR_BEGIN(Direct_encoding_1_t)
3629   M_UINT       (Direct_encoding_1_t,  MAIO, 6, &hf_maio),
3630   M_TYPE       (Direct_encoding_1_t, GPRS_Mobile_Allocation, GPRS_Mobile_Allocation_t),
3631 CSN_DESCR_END  (Direct_encoding_1_t)
3632 
3633 static const
3634 CSN_DESCR_BEGIN(Direct_encoding_2_t)
3635   M_UINT       (Direct_encoding_2_t,  MAIO, 6, &hf_maio),
3636   M_UINT       (Direct_encoding_2_t,  HSN, 6, &hf_hsn),
3637   M_UINT_OFFSET(Direct_encoding_2_t, Length_of_MA_Frequency_List, 4, 3, &hf_ma_frequency_list_length),
3638   M_VAR_ARRAY  (Direct_encoding_2_t, MA_Frequency_List, Length_of_MA_Frequency_List, 0, &hf_ma_frequency_list),
3639 CSN_DESCR_END  (Direct_encoding_2_t)
3640 
3641 static const
3642 CSN_DESCR_BEGIN(Frequency_Parameters_t)
3643   M_UINT       (Frequency_Parameters_t, TSC, 3, &hf_tsc),
3644 
3645   M_UNION      (Frequency_Parameters_t, 4, &hf_frequency_parameters),
3646   M_UINT       (Frequency_Parameters_t, u.ARFCN, 10, &hf_arfcn),
3647   M_TYPE       (Frequency_Parameters_t, u.Indirect_encoding, Indirect_encoding_t),
3648   M_TYPE       (Frequency_Parameters_t, u.Direct_encoding_1, Direct_encoding_1_t),
3649   M_TYPE       (Frequency_Parameters_t, u.Direct_encoding_2, Direct_encoding_2_t),
3650 CSN_DESCR_END  (Frequency_Parameters_t)
3651 
3652 static const
3653 CSN_DESCR_BEGIN(EC_Frequency_Parameters_t)
3654   M_UINT       (EC_Frequency_Parameters_t, EC_MA_NUMBER, 5, &hf_ec_ma_number),
3655   M_UINT       (EC_Frequency_Parameters_t, TSC, 3, &hf_tsc),
3656   M_UINT       (EC_Frequency_Parameters_t, Primary_TSC_Set, 1, &hf_primary_tsc_set),
3657 CSN_DESCR_END  (EC_Frequency_Parameters_t)
3658 
3659 
3660 static const
3661 CSN_DESCR_BEGIN(EC_Packet_Timing_Advance_t)
3662   M_UINT       (EC_Packet_Timing_Advance_t, TIMING_ADVANCE_VALUE, 6, &hf_timing_advance_value),
3663 CSN_DESCR_END  (EC_Packet_Timing_Advance_t)
3664 
3665 
3666 static const
3667 CSN_DESCR_BEGIN(Packet_Request_Reference_t)
3668   M_UINT       (Packet_Request_Reference_t,  RANDOM_ACCESS_INFORMATION,  11, &hf_packet_request_reference_random_access_information),
3669   M_UINT_ARRAY (Packet_Request_Reference_t, FRAME_NUMBER, 8, 2, &hf_packet_request_reference_frame_number),
3670 CSN_DESCR_END  (Packet_Request_Reference_t)
3671 
3672 static const
3673 CSN_DESCR_BEGIN(Timeslot_Allocation_t)
3674   M_NEXT_EXIST (Timeslot_Allocation_t, Exist, 1, &hf_timeslot_allocation_exist_exist),
3675   M_UINT       (Timeslot_Allocation_t,  USF_TN,  3, &hf_usf),
3676 CSN_DESCR_END  (Timeslot_Allocation_t)
3677 
3678 static const
3679 CSN_DESCR_BEGIN(Timeslot_Allocation_Power_Ctrl_Param_t)
3680   M_UINT       (Timeslot_Allocation_Power_Ctrl_Param_t, ALPHA, 4, &hf_alpha),
3681 
3682   M_NEXT_EXIST (Timeslot_Allocation_Power_Ctrl_Param_t, Slot[0].Exist, 2, &hf_timeslot_allocation_power_ctrl_param_slot0_exist),
3683   M_UINT       (Timeslot_Allocation_Power_Ctrl_Param_t,  Slot[0].USF_TN, 3, &hf_usf),
3684   M_UINT       (Timeslot_Allocation_Power_Ctrl_Param_t,  Slot[0].GAMMA_TN, 5, &hf_gamma),
3685 
3686   M_NEXT_EXIST (Timeslot_Allocation_Power_Ctrl_Param_t, Slot[1].Exist, 2, &hf_timeslot_allocation_power_ctrl_param_slot1_exist),
3687   M_UINT       (Timeslot_Allocation_Power_Ctrl_Param_t,  Slot[1].USF_TN, 3, &hf_usf),
3688   M_UINT       (Timeslot_Allocation_Power_Ctrl_Param_t,  Slot[1].GAMMA_TN, 5, &hf_gamma),
3689 
3690   M_NEXT_EXIST (Timeslot_Allocation_Power_Ctrl_Param_t, Slot[2].Exist, 2, &hf_timeslot_allocation_power_ctrl_param_slot2_exist),
3691   M_UINT       (Timeslot_Allocation_Power_Ctrl_Param_t,  Slot[2].USF_TN, 3, &hf_usf),
3692   M_UINT       (Timeslot_Allocation_Power_Ctrl_Param_t,  Slot[2].GAMMA_TN, 5, &hf_gamma),
3693 
3694   M_NEXT_EXIST (Timeslot_Allocation_Power_Ctrl_Param_t, Slot[3].Exist, 2, &hf_timeslot_allocation_power_ctrl_param_slot3_exist),
3695   M_UINT       (Timeslot_Allocation_Power_Ctrl_Param_t,  Slot[3].USF_TN, 3, &hf_usf),
3696   M_UINT       (Timeslot_Allocation_Power_Ctrl_Param_t,  Slot[3].GAMMA_TN, 5, &hf_gamma),
3697 
3698   M_NEXT_EXIST (Timeslot_Allocation_Power_Ctrl_Param_t, Slot[4].Exist, 2, &hf_timeslot_allocation_power_ctrl_param_slot4_exist),
3699   M_UINT       (Timeslot_Allocation_Power_Ctrl_Param_t,  Slot[4].USF_TN, 3, &hf_usf),
3700   M_UINT       (Timeslot_Allocation_Power_Ctrl_Param_t,  Slot[4].GAMMA_TN, 5, &hf_gamma),
3701 
3702   M_NEXT_EXIST (Timeslot_Allocation_Power_Ctrl_Param_t, Slot[5].Exist, 2, &hf_timeslot_allocation_power_ctrl_param_slot5_exist),
3703   M_UINT       (Timeslot_Allocation_Power_Ctrl_Param_t,  Slot[5].USF_TN, 3, &hf_usf),
3704   M_UINT       (Timeslot_Allocation_Power_Ctrl_Param_t,  Slot[5].GAMMA_TN, 5, &hf_gamma),
3705 
3706   M_NEXT_EXIST (Timeslot_Allocation_Power_Ctrl_Param_t, Slot[6].Exist, 2, &hf_timeslot_allocation_power_ctrl_param_slot6_exist),
3707   M_UINT       (Timeslot_Allocation_Power_Ctrl_Param_t,  Slot[6].USF_TN, 3, &hf_usf),
3708   M_UINT       (Timeslot_Allocation_Power_Ctrl_Param_t,  Slot[6].GAMMA_TN, 5, &hf_gamma),
3709 
3710   M_NEXT_EXIST (Timeslot_Allocation_Power_Ctrl_Param_t, Slot[7].Exist, 2, &hf_timeslot_allocation_power_ctrl_param_slot7_exist),
3711   M_UINT       (Timeslot_Allocation_Power_Ctrl_Param_t,  Slot[7].USF_TN, 3, &hf_usf),
3712   M_UINT       (Timeslot_Allocation_Power_Ctrl_Param_t,  Slot[7].GAMMA_TN, 5, &hf_gamma),
3713 CSN_DESCR_END  (Timeslot_Allocation_Power_Ctrl_Param_t)
3714 
3715 /* USED in <Packet Uplink Assignment message content> */
3716 static const
3717 CSN_DESCR_BEGIN(Dynamic_Allocation_t)
3718   M_UINT       (Dynamic_Allocation_t,  Extended_Dynamic_Allocation,  1, &hf_extended_dynamic_allocation),
3719 
3720   M_NEXT_EXIST (Dynamic_Allocation_t, Exist_P0, 2, &hf_dynamic_allocation_p0_exist),
3721   M_UINT       (Dynamic_Allocation_t,  P0, 4, &hf_p0),
3722   M_UINT       (Dynamic_Allocation_t,  PR_MODE, 1, &hf_pr_mode),
3723 
3724   M_UINT       (Dynamic_Allocation_t, USF_GRANULARITY, 1, &hf_usf_granularity),
3725 
3726   M_NEXT_EXIST (Dynamic_Allocation_t, Exist_UPLINK_TFI_ASSIGNMENT, 1, &hf_dynamic_allocation_uplink_tfi_assignment_exist),
3727   M_UINT       (Dynamic_Allocation_t,  UPLINK_TFI_ASSIGNMENT, 5, &hf_uplink_tfi),
3728 
3729   M_NEXT_EXIST (Dynamic_Allocation_t, Exist_RLC_DATA_BLOCKS_GRANTED, 1, &hf_dynamic_allocation_rlc_data_blocks_granted_exist),
3730   M_UINT       (Dynamic_Allocation_t,  RLC_DATA_BLOCKS_GRANTED,  8, &hf_rlc_data_blocks_granted),
3731 
3732   M_NEXT_EXIST (Dynamic_Allocation_t, Exist_TBF_Starting_Time, 1, &hf_dynamic_allocation_tbf_starting_time_exist),
3733   M_TYPE       (Dynamic_Allocation_t, TBF_Starting_Time, Starting_Frame_Number_t),
3734 
3735   M_UNION      (Dynamic_Allocation_t, 2, &hf_dynamic_allocation),
3736   M_TYPE_ARRAY (Dynamic_Allocation_t, u.Timeslot_Allocation, Timeslot_Allocation_t, 8),
3737   M_TYPE       (Dynamic_Allocation_t, u.Timeslot_Allocation_Power_Ctrl_Param, Timeslot_Allocation_Power_Ctrl_Param_t),
3738 CSN_DESCR_END  (Dynamic_Allocation_t)
3739 
3740 static const
3741 CSN_DESCR_BEGIN(Single_Block_Allocation_t)
3742   M_UINT       (Single_Block_Allocation_t,  TIMESLOT_NUMBER,  3, &hf_single_block_allocation_timeslot_number),
3743 
3744   M_NEXT_EXIST (Single_Block_Allocation_t, Exist_ALPHA_and_GAMMA_TN, 2, &hf_single_block_allocation_alpha_and_gamma_tn_exist),
3745   M_UINT       (Single_Block_Allocation_t,  ALPHA, 4, &hf_alpha),
3746   M_UINT       (Single_Block_Allocation_t,  GAMMA_TN, 5, &hf_gamma),
3747 
3748   M_NEXT_EXIST (Single_Block_Allocation_t, Exist_P0, 3, &hf_single_block_allocation_p0_exist),
3749   M_UINT       (Single_Block_Allocation_t,  P0, 4, &hf_p0),
3750   M_UINT       (Single_Block_Allocation_t,  BTS_PWR_CTRL_MODE, 1, &hf_bts_pwr_ctrl_mode),
3751   M_UINT       (Single_Block_Allocation_t,  PR_MODE, 1, &hf_pr_mode),
3752 
3753   M_TYPE       (Single_Block_Allocation_t, TBF_Starting_Time, Starting_Frame_Number_t),
3754 CSN_DESCR_END  (Single_Block_Allocation_t)
3755 
3756 #if 0
3757 static const
3758 CSN_DESCR_BEGIN(DTM_Dynamic_Allocation_t)
3759   M_UINT       (DTM_Dynamic_Allocation_t,  Extended_Dynamic_Allocation,  1, &hf_extended_dynamic_allocation),
3760 
3761   M_NEXT_EXIST (DTM_Dynamic_Allocation_t, Exist_P0, 2),
3762   M_UINT       (DTM_Dynamic_Allocation_t,  P0, 4, &hf_p0),
3763   M_UINT       (DTM_Dynamic_Allocation_t,  PR_MODE, 1, &hf_pr_mode),
3764 
3765   M_UINT       (DTM_Dynamic_Allocation_t,  USF_GRANULARITY, 1, &hf_usf_granularity),
3766 
3767   M_NEXT_EXIST (DTM_Dynamic_Allocation_t, Exist_UPLINK_TFI_ASSIGNMENT, 1),
3768   M_UINT       (DTM_Dynamic_Allocation_t,  UPLINK_TFI_ASSIGNMENT, 5, &hf_uplink_tfi),
3769 
3770   M_NEXT_EXIST (DTM_Dynamic_Allocation_t, Exist_RLC_DATA_BLOCKS_GRANTED, 1),
3771   M_UINT       (DTM_Dynamic_Allocation_t,  RLC_DATA_BLOCKS_GRANTED, 8, &hf_rlc_data_blocks_granted),
3772 
3773   M_UNION      (DTM_Dynamic_Allocation_t, 2),
3774   M_TYPE_ARRAY (DTM_Dynamic_Allocation_t, u.Timeslot_Allocation, Timeslot_Allocation_t, 8),
3775   M_TYPE       (DTM_Dynamic_Allocation_t, u.Timeslot_Allocation_Power_Ctrl_Param, Timeslot_Allocation_Power_Ctrl_Param_t),
3776 CSN_DESCR_END  (DTM_Dynamic_Allocation_t)
3777 #endif
3778 
3779 #if 0
3780 static const
3781 CSN_DESCR_BEGIN(DTM_Single_Block_Allocation_t)
3782   M_UINT       (DTM_Single_Block_Allocation_t, TIMESLOT_NUMBER, 3, &hf_dtm_single_block_allocation_timeslot_number),
3783 
3784   M_NEXT_EXIST (DTM_Single_Block_Allocation_t, Exist_ALPHA_and_GAMMA_TN, 2),
3785   M_UINT       (DTM_Single_Block_Allocation_t,  ALPHA, 4, &hf_alpha),
3786   M_UINT       (DTM_Single_Block_Allocation_t,  GAMMA_TN, 5, &hf_gamma),
3787 
3788   M_NEXT_EXIST (DTM_Single_Block_Allocation_t, Exist_P0, 3),
3789   M_UINT       (DTM_Single_Block_Allocation_t,  P0, 4, &hf_p0),
3790   M_UINT       (DTM_Single_Block_Allocation_t,  BTS_PWR_CTRL_MODE, 1, &hf_bts_pwr_ctrl_mode),
3791   M_UINT       (DTM_Single_Block_Allocation_t,  PR_MODE, 1, &hf_pr_mode),
3792 CSN_DESCR_END  (DTM_Single_Block_Allocation_t)
3793 #endif
3794 
3795 /* Help structures */
3796 typedef struct
3797 {
3798   Global_TFI_t Global_TFI;  /* 0  < Global TFI : < Global TFI IE > > */
3799 } h0_Global_TFI_t;
3800 
3801 #if 0
3802 static const
3803 CSN_DESCR_BEGIN(h0_Global_TFI_t)
3804   M_FIXED      (h0_Global_TFI_t, 1, 0x00),
3805   M_TYPE       (h0_Global_TFI_t, Global_TFI, Global_TFI_t),
3806 CSN_DESCR_END  (h0_Global_TFI_t)
3807 #endif
3808 
3809 typedef struct
3810 {
3811   guint32 TLLI;/* | 10  < TLLI : bit (32) > */
3812 } h10_TLLI_t;
3813 
3814 #if 0
3815 static const
3816 CSN_DESCR_BEGIN(h10_TLLI_t)
3817   M_FIXED      (h10_TLLI_t, 2, 0x02),
3818   M_UINT       (h10_TLLI_t, TLLI, 32, &hf_tlli),
3819 CSN_DESCR_END (h10_TLLI_t)
3820 #endif
3821 
3822 typedef struct
3823 {
3824   guint16 TQI;/*| 110  < TQI : bit (16) > */
3825 } h110_TQI_t;
3826 
3827 #if 0
3828 static const
3829 CSN_DESCR_BEGIN(h110_TQI_t)
3830   M_FIXED      (h110_TQI_t, 3, 0x06),
3831   M_UINT       (h110_TQI_t, TQI, 16, &hf_tqi),
3832 CSN_DESCR_END  (h110_TQI_t)
3833 #endif
3834 
3835 typedef struct
3836 {
3837   Packet_Request_Reference_t Packet_Request_Reference;/*| 111  < Packet Request Reference : < Packet Request Reference IE > > }*/
3838 } h111_Packet_Request_Reference_t;
3839 
3840 #if 0
3841 static const
3842 CSN_DESCR_BEGIN(h111_Packet_Request_Reference_t)
3843   M_FIXED      (h111_Packet_Request_Reference_t, 3, 0x07),
3844   M_TYPE       (h111_Packet_Request_Reference_t, Packet_Request_Reference, Packet_Request_Reference_t),
3845 CSN_DESCR_END  (h111_Packet_Request_Reference_t)
3846 #endif
3847 
3848 static const
3849 CSN_ChoiceElement_t PacketUplinkID[] =
3850 {
3851   {1, 0,    0, M_TYPE(PacketUplinkID_t, u.Global_TFI, Global_TFI_t)},
3852   {2, 0x02, 0, M_UINT(PacketUplinkID_t, u.TLLI, 32, &hf_tlli)},
3853   {3, 0x06, 0, M_UINT(PacketUplinkID_t, u.TQI, 16, &hf_tqi)},
3854   {3, 0x07, 0, M_TYPE(PacketUplinkID_t, u.Packet_Request_Reference, Packet_Request_Reference_t)},
3855 };
3856 
3857 static const
3858 CSN_DESCR_BEGIN(PacketUplinkID_t)
3859   M_CHOICE     (PacketUplinkID_t, UnionType, PacketUplinkID, ElementsOf(PacketUplinkID), &hf_packet_uplink_id_choice),
3860 CSN_DESCR_END  (PacketUplinkID_t)
3861 
3862 static const
3863 CSN_DESCR_BEGIN(PUA_GPRS_AdditionsR99_t)
3864   M_NEXT_EXIST (PUA_GPRS_AdditionsR99_t, Exist_Packet_Extended_Timing_Advance, 1, &hf_pua_gprs_additionsr99_packet_extended_timing_advance_exist),
3865   M_UINT       (PUA_GPRS_AdditionsR99_t,  Packet_Extended_Timing_Advance, 2, &hf_packet_extended_timing_advance),
3866 CSN_DESCR_END  (PUA_GPRS_AdditionsR99_t)
3867 
3868 static const
3869 CSN_DESCR_BEGIN       (PUA_GPRS_t)
3870   M_UINT              (PUA_GPRS_t, CHANNEL_CODING_COMMAND,  2, &hf_gprs_channel_coding_command),
3871   M_UINT              (PUA_GPRS_t, TLLI_BLOCK_CHANNEL_CODING, 1, &hf_tlli_block_channel_coding),
3872   M_TYPE              (PUA_GPRS_t, Packet_Timing_Advance, Packet_Timing_Advance_t),
3873 
3874   M_NEXT_EXIST        (PUA_GPRS_t, Exist_Frequency_Parameters, 1, &hf_pua_gprs_frequency_parameters_exist),
3875   M_TYPE              (PUA_GPRS_t, Frequency_Parameters, Frequency_Parameters_t),
3876 
3877   M_UNION             (PUA_GPRS_t, 4, &hf_pua_grps),
3878   CSN_ERROR           (PUA_GPRS_t, "00 <extension> not implemented", CSN_ERROR_STREAM_NOT_SUPPORTED, &ei_gsm_rlcmac_stream_not_supported),
3879   M_TYPE              (PUA_GPRS_t, u.Dynamic_Allocation, Dynamic_Allocation_t),
3880   M_TYPE              (PUA_GPRS_t, u.Single_Block_Allocation, Single_Block_Allocation_t),
3881   CSN_ERROR           (PUA_GPRS_t, "11 <Fixed Allocation> not supported", CSN_ERROR_STREAM_NOT_SUPPORTED, &ei_gsm_rlcmac_stream_not_supported),
3882 
3883   M_NEXT_EXIST_OR_NULL(PUA_GPRS_t, Exist_AdditionsR99, 1, &hf_additionsr99_exist),
3884   M_TYPE              (PUA_GPRS_t, AdditionsR99, PUA_GPRS_AdditionsR99_t),
3885 CSN_DESCR_END         (PUA_GPRS_t)
3886 
3887 static const
3888 CSN_DESCR_BEGIN(COMPACT_ReducedMA_t)
3889   M_UINT       (COMPACT_ReducedMA_t,  BitmapLength,  7, &hf_compact_reducedma_bitmaplength),
3890   M_VAR_BITMAP (COMPACT_ReducedMA_t, ReducedMA_Bitmap, BitmapLength, 0, &hf_compact_reducedma_bitmap),
3891 
3892   M_NEXT_EXIST (COMPACT_ReducedMA_t, Exist_MAIO_2, 1, &hf_compact_reducedma_maio_2_exist),
3893   M_UINT       (COMPACT_ReducedMA_t,  MAIO_2, 6, &hf_maio),
3894 CSN_DESCR_END  (COMPACT_TeducedMA_t)
3895 
3896 static const
3897 CSN_DESCR_BEGIN(MultiBlock_Allocation_t)
3898   M_UINT       (MultiBlock_Allocation_t, TIMESLOT_NUMBER, 3, &hf_multiblock_allocation_timeslot_number),
3899 
3900   M_NEXT_EXIST (MultiBlock_Allocation_t, Exist_ALPHA_GAMMA_TN, 2, &hf_multiblock_allocation_alpha_gamma_tn_exist),
3901   M_UINT       (MultiBlock_Allocation_t,  ALPHA, 4, &hf_alpha),
3902   M_UINT       (MultiBlock_Allocation_t,  GAMMA_TN, 5, &hf_gamma),
3903 
3904   M_NEXT_EXIST (MultiBlock_Allocation_t, Exist_P0_BTS_PWR_CTRL_PR_MODE, 3, &hf_multiblock_allocation_p0_bts_pwr_ctrl_pr_mode_exist),
3905   M_UINT       (MultiBlock_Allocation_t,  P0, 4, &hf_p0),
3906   M_UINT       (MultiBlock_Allocation_t,  BTS_PWR_CTRL_MODE, 1, &hf_bts_pwr_ctrl_mode),
3907   M_UINT       (MultiBlock_Allocation_t,  PR_MODE, 1, &hf_pr_mode),
3908 
3909   M_TYPE       (MultiBlock_Allocation_t, TBF_Starting_Time, Starting_Frame_Number_t),
3910   M_UINT       (MultiBlock_Allocation_t,  NUMBER_OF_RADIO_BLOCKS_ALLOCATED, 2, &hf_nr_of_radio_blocks_allocated),
3911 CSN_DESCR_END  (MultiBlock_Allocation_t)
3912 
3913 static const
3914 CSN_DESCR_BEGIN (PUA_EGPRS_00_t)
3915   M_NEXT_EXIST  (PUA_EGPRS_00_t, Exist_CONTENTION_RESOLUTION_TLLI, 1, &hf_pua_egprs_00_contention_resolution_tlli_exist),
3916   M_UINT        (PUA_EGPRS_00_t,  CONTENTION_RESOLUTION_TLLI,  32, &hf_tlli),
3917 
3918   M_NEXT_EXIST  (PUA_EGPRS_00_t, Exist_COMPACT_ReducedMA, 1, &hf_pua_egprs_00_compact_reducedma_exist),
3919   M_TYPE        (PUA_EGPRS_00_t, COMPACT_ReducedMA, COMPACT_ReducedMA_t),
3920 
3921   M_UINT        (PUA_EGPRS_00_t,  EGPRS_CHANNEL_CODING_COMMAND, 4, &hf_egprs_channel_coding_command),
3922   M_UINT        (PUA_EGPRS_00_t,  RESEGMENT, 1, &hf_resegment),
3923   M_UINT        (PUA_EGPRS_00_t,  EGPRS_WindowSize, 5, &hf_egprs_windowsize),
3924 
3925   M_REC_ARRAY   (PUA_EGPRS_00_t, AccessTechnologyType, NrOfAccessTechnologies, 4, &hf_pua_egprs_00_access_tech_type, &hf_pua_egprs_00_access_tech_type_exist),
3926 
3927   M_UINT        (PUA_EGPRS_00_t,  ARAC_RETRANSMISSION_REQUEST,  1, &hf_pua_egprs_00_arac_retransmission_request),
3928   M_UINT        (PUA_EGPRS_00_t,  TLLI_BLOCK_CHANNEL_CODING, 1, &hf_tlli_block_channel_coding),
3929 
3930   M_NEXT_EXIST  (PUA_EGPRS_00_t, Exist_BEP_PERIOD2, 1, &hf_pua_egprs_00_bep_period2_exist),
3931   M_UINT        (PUA_EGPRS_00_t,  BEP_PERIOD2, 4, &hf_bep_period2),
3932 
3933   M_TYPE        (PUA_EGPRS_00_t, PacketTimingAdvance, Packet_Timing_Advance_t),
3934 
3935   M_NEXT_EXIST  (PUA_EGPRS_00_t, Exist_Packet_Extended_Timing_Advance, 1, &hf_pua_egprs_00_packet_extended_timing_advance_exist),
3936   M_UINT        (PUA_EGPRS_00_t,  Packet_Extended_Timing_Advance, 2, &hf_packet_extended_timing_advance),
3937 
3938   M_NEXT_EXIST  (PUA_EGPRS_00_t, Exist_Frequency_Parameters, 1, &hf_pua_egprs_00_frequency_parameters_exist),
3939   M_TYPE        (PUA_EGPRS_00_t, Frequency_Parameters, Frequency_Parameters_t),
3940 
3941   M_UNION       (PUA_EGPRS_00_t, 4, &hf_pua_egprs),
3942   CSN_ERROR     (PUA_EGPRS_00_t, "00 <extension>", CSN_ERROR_STREAM_NOT_SUPPORTED, &ei_gsm_rlcmac_stream_not_supported),
3943   M_TYPE        (PUA_EGPRS_00_t, u.Dynamic_Allocation, Dynamic_Allocation_t),
3944   M_TYPE        (PUA_EGPRS_00_t, u.MultiBlock_Allocation, MultiBlock_Allocation_t),
3945   CSN_ERROR     (PUA_EGPRS_00_t, "11 <Fixed Allocation>", CSN_ERROR_STREAM_NOT_SUPPORTED, &ei_gsm_rlcmac_stream_not_supported),
3946 CSN_DESCR_END   (PUA_EGPRS_00_t)
3947 
3948 static const
3949 CSN_DESCR_BEGIN(PUA_EGPRS_t)
3950   M_UNION      (PUA_EGPRS_t, 4, &hf_pua_egprs),
3951   M_TYPE       (PUA_EGPRS_t, u.PUA_EGPRS_00, PUA_EGPRS_00_t),
3952   CSN_ERROR    (PUA_EGPRS_t, "01 <PUA EGPRS>", CSN_ERROR_STREAM_NOT_SUPPORTED, &ei_gsm_rlcmac_stream_not_supported),
3953   CSN_ERROR    (PUA_EGPRS_t, "10 <PUA EGPRS>", CSN_ERROR_STREAM_NOT_SUPPORTED, &ei_gsm_rlcmac_stream_not_supported),
3954   CSN_ERROR    (PUA_EGPRS_t, "11 <PUA EGPRS>", CSN_ERROR_STREAM_NOT_SUPPORTED, &ei_gsm_rlcmac_stream_not_supported),
3955 CSN_DESCR_END  (PUA_EGPRS_t)
3956 
3957 static const
3958 CSN_DESCR_BEGIN(Packet_Uplink_Assignment_t)
3959   M_UINT       (Packet_Uplink_Assignment_t, MESSAGE_TYPE, 6, &hf_dl_message_type),
3960   M_UINT       (Packet_Uplink_Assignment_t, PAGE_MODE, 2, &hf_page_mode),
3961 
3962   M_NEXT_EXIST (Packet_Uplink_Assignment_t, Exist_PERSISTENCE_LEVEL, 1, &hf_dl_persistent_level_exist),
3963   M_UINT_ARRAY (Packet_Uplink_Assignment_t, PERSISTENCE_LEVEL, 4, 4, &hf_dl_persistent_level),
3964 
3965   M_TYPE       (Packet_Uplink_Assignment_t, ID, PacketUplinkID_t),
3966 
3967   M_UNION      (Packet_Uplink_Assignment_t, 2, &hf_pua_assignment),
3968   M_TYPE       (Packet_Uplink_Assignment_t, u.PUA_GPRS_Struct, PUA_GPRS_t),
3969   M_TYPE       (Packet_Uplink_Assignment_t, u.PUA_EGPRS_Struct, PUA_EGPRS_t),
3970 
3971   M_PADDING_BITS(Packet_Uplink_Assignment_t, &hf_padding ),
3972 CSN_DESCR_END  (Packet_Uplink_Assignment_t)
3973 
3974 /* < Packet Downlink Assignment message content > */
3975 static const
3976 CSN_DESCR_BEGIN(Measurement_Mapping_struct_t)
3977   M_TYPE       (Measurement_Mapping_struct_t, Measurement_Starting_Time, Starting_Frame_Number_t),
3978   M_UINT       (Measurement_Mapping_struct_t,  MEASUREMENT_INTERVAL,  5, &hf_measurement_mapping_struct_measurement_interval),
3979   M_UINT       (Measurement_Mapping_struct_t,  MEASUREMENT_BITMAP,  8, &hf_measurement_mapping_struct_measurement_bitmap),
3980 CSN_DESCR_END  (Measurement_Mapping_struct_t)
3981 
3982 static const
3983 CSN_ChoiceElement_t PacketDownlinkID[] =
3984 {
3985   {1,    0, 0, M_TYPE(PacketDownlinkID_t, u.Global_TFI, Global_TFI_t)},
3986   {2, 0x02, 0, M_UINT(PacketDownlinkID_t, u.TLLI, 32, &hf_tlli)},
3987 };
3988 
3989 static const
3990 CSN_DESCR_BEGIN(PacketDownlinkID_t)
3991   M_CHOICE     (PacketDownlinkID_t, UnionType, PacketDownlinkID, ElementsOf(PacketDownlinkID), &hf_packet_downlink_id_choice),
3992 CSN_DESCR_END  (PacketDownlinkID_t)
3993 
3994 static const
3995 CSN_DESCR_BEGIN(PDA_AdditionsR99_t)
3996   M_NEXT_EXIST (PDA_AdditionsR99_t, Exist_EGPRS_Params, 4, &hf_pda_additionsr99_egprs_params_exist), /*if Exist_EGPRS_Params == FALSE then none of the following 4 vars exist */
3997   M_UINT       (PDA_AdditionsR99_t,  EGPRS_WindowSize, 5, &hf_egprs_windowsize),
3998   M_UINT       (PDA_AdditionsR99_t,  LINK_QUALITY_MEASUREMENT_MODE, 2, &hf_link_quality_measurement_mode),
3999   M_NEXT_EXIST (PDA_AdditionsR99_t,  Exist_BEP_PERIOD2, 1, &hf_pda_additionsr99_bep_period2_exist),
4000   M_UINT       (PDA_AdditionsR99_t,   BEP_PERIOD2, 4, &hf_bep_period2),
4001 
4002   M_NEXT_EXIST (PDA_AdditionsR99_t, Exist_Packet_Extended_Timing_Advance, 1, &hf_pda_additionsr99_packet_extended_timing_advance_exist),
4003   M_UINT       (PDA_AdditionsR99_t,  Packet_Extended_Timing_Advance, 2, &hf_packet_extended_timing_advance),
4004 
4005   M_NEXT_EXIST (PDA_AdditionsR99_t, Exist_COMPACT_ReducedMA, 1, &hf_pda_additionsr99_compact_reducedma_exist),
4006   M_TYPE       (PDA_AdditionsR99_t, COMPACT_ReducedMA, COMPACT_ReducedMA_t),
4007 CSN_DESCR_END  (PDA_AdditionsR99_t)
4008 
4009 static const
4010 CSN_DESCR_BEGIN       (Packet_Downlink_Assignment_t)
4011   M_UINT              (Packet_Downlink_Assignment_t, MESSAGE_TYPE, 6, &hf_dl_message_type),
4012   M_UINT              (Packet_Downlink_Assignment_t, PAGE_MODE, 2, &hf_page_mode),
4013 
4014   M_NEXT_EXIST        (Packet_Downlink_Assignment_t, Exist_PERSISTENCE_LEVEL, 1, &hf_dl_persistent_level_exist),
4015   M_UINT_ARRAY        (Packet_Downlink_Assignment_t, PERSISTENCE_LEVEL, 4, 4, &hf_dl_persistent_level),
4016 
4017   M_TYPE              (Packet_Downlink_Assignment_t, ID, PacketDownlinkID_t),
4018 
4019   M_FIXED             (Packet_Downlink_Assignment_t, 1, 0x00, &hf_packet_downlink_assignment),/*-- Message escape */
4020 
4021   M_UINT              (Packet_Downlink_Assignment_t, MAC_MODE, 2, &hf_mac_mode),
4022   M_UINT              (Packet_Downlink_Assignment_t, RLC_MODE, 1, &hf_rlc_mode),
4023   M_UINT              (Packet_Downlink_Assignment_t, CONTROL_ACK, 1, &hf_control_ack),
4024   M_UINT              (Packet_Downlink_Assignment_t, TIMESLOT_ALLOCATION, 8, &hf_dl_timeslot_allocation),
4025   M_TYPE              (Packet_Downlink_Assignment_t, Packet_Timing_Advance, Packet_Timing_Advance_t),
4026 
4027   M_NEXT_EXIST        (Packet_Downlink_Assignment_t, Exist_P0_and_BTS_PWR_CTRL_MODE, 3, &hf_packet_downlink_assignment_p0_and_bts_pwr_ctrl_mode_exist),
4028   M_UINT              (Packet_Downlink_Assignment_t, P0, 4, &hf_p0),
4029   M_UINT              (Packet_Downlink_Assignment_t, BTS_PWR_CTRL_MODE, 1, &hf_bts_pwr_ctrl_mode),
4030   M_UINT              (Packet_Downlink_Assignment_t, PR_MODE, 1, &hf_pr_mode),
4031 
4032   M_NEXT_EXIST        (Packet_Downlink_Assignment_t, Exist_Frequency_Parameters, 1, &hf_packet_downlink_assignment_frequency_parameters_exist),
4033   M_TYPE              (Packet_Downlink_Assignment_t, Frequency_Parameters, Frequency_Parameters_t),
4034 
4035   M_NEXT_EXIST        (Packet_Downlink_Assignment_t, Exist_DOWNLINK_TFI_ASSIGNMENT, 1, &hf_packet_downlink_assignment_downlink_tfi_assignment_exist),
4036   M_UINT              (Packet_Downlink_Assignment_t, DOWNLINK_TFI_ASSIGNMENT, 5, &hf_downlink_tfi),
4037 
4038   M_NEXT_EXIST        (Packet_Downlink_Assignment_t, Exist_Power_Control_Parameters, 1, &hf_packet_downlink_assignment_power_control_parameters_exist),
4039   M_TYPE              (Packet_Downlink_Assignment_t, Power_Control_Parameters, Power_Control_Parameters_t),
4040 
4041   M_NEXT_EXIST        (Packet_Downlink_Assignment_t, Exist_TBF_Starting_Time, 1, &hf_packet_downlink_assignment_tbf_starting_time_exist),
4042   M_TYPE              (Packet_Downlink_Assignment_t, TBF_Starting_Time, Starting_Frame_Number_t),
4043 
4044   M_NEXT_EXIST        (Packet_Downlink_Assignment_t, Exist_Measurement_Mapping, 1, &hf_packet_downlink_assignment_measurement_mapping_exist),
4045   M_TYPE              (Packet_Downlink_Assignment_t, Measurement_Mapping, Measurement_Mapping_struct_t),
4046 
4047   M_NEXT_EXIST_OR_NULL(Packet_Downlink_Assignment_t, Exist_AdditionsR99, 1, &hf_additionsr99_exist),
4048   M_TYPE              (Packet_Downlink_Assignment_t, AdditionsR99, PDA_AdditionsR99_t),
4049 
4050   M_PADDING_BITS    (Packet_Downlink_Assignment_t, &hf_padding),
4051 CSN_DESCR_END         (Packet_Downlink_Assignment_t)
4052 
4053 typedef Packet_Downlink_Assignment_t pdlaCheck_t;
4054 
4055 static const
4056 CSN_DESCR_BEGIN       (EC_Packet_Downlink_Assignment_t)
4057   M_UINT              (EC_Packet_Downlink_Assignment_t, MESSAGE_TYPE, 5, &hf_ec_dl_message_type),
4058   M_UINT              (EC_Packet_Downlink_Assignment_t, USED_DL_COVERAGE_CLASS, 2, &hf_used_dl_coverage_class),
4059   M_FIXED             (EC_Packet_Downlink_Assignment_t, 1, 0x00, &hf_packet_downlink_id_choice),
4060   M_TYPE              (EC_Packet_Downlink_Assignment_t, Global_TFI, Global_TFI_t),
4061   M_UINT              (EC_Packet_Downlink_Assignment_t, CONTROL_ACK, 1, &hf_control_ack),
4062 
4063   M_NEXT_EXIST        (EC_Packet_Downlink_Assignment_t, Exist_Frequency_Parameters, 1, &hf_ec_frequency_parameters_exist),
4064   M_TYPE              (EC_Packet_Downlink_Assignment_t, Frequency_Parameters, EC_Frequency_Parameters_t),
4065 
4066   M_UINT              (EC_Packet_Downlink_Assignment_t, DL_COVERAGE_CLASS, 2, &hf_dl_coverage_class),
4067   M_UINT              (EC_Packet_Downlink_Assignment_t, STARTING_DL_TIMESLOT, 3, &hf_starting_dl_timeslot),
4068   M_UINT              (EC_Packet_Downlink_Assignment_t, TIMESLOT_MULTIPLICATOR, 3, &hf_timeslot_multiplicator),
4069 
4070   M_UINT              (EC_Packet_Downlink_Assignment_t, DOWNLINK_TFI_ASSIGNMENT, 5, &hf_downlink_tfi),
4071 
4072   M_UINT              (EC_Packet_Downlink_Assignment_t, UL_COVERAGE_CLASS, 2, &hf_ul_coverage_class),
4073   M_UINT              (EC_Packet_Downlink_Assignment_t, STARTING_UL_TIMESLOT_OFFSET, 2, &hf_starting_ul_timeslot_offset),
4074 
4075   M_NEXT_EXIST        (EC_Packet_Downlink_Assignment_t, Exist_EC_Packet_Timing_Advance, 1, &hf_ec_packet_timing_advance_exist),
4076   M_TYPE              (EC_Packet_Downlink_Assignment_t, EC_Packet_Timing_Advance, EC_Packet_Timing_Advance_t),
4077 
4078   M_NEXT_EXIST        (EC_Packet_Downlink_Assignment_t, Exist_P0_and_PR_MODE, 2, &hf_ec_p0_and_pr_mode_exist),
4079   M_UINT              (EC_Packet_Downlink_Assignment_t, P0, 4, &hf_p0),
4080   M_UINT              (EC_Packet_Downlink_Assignment_t, PR_MODE, 1, &hf_pr_mode),
4081 
4082   M_NEXT_EXIST        (EC_Packet_Downlink_Assignment_t, Exist_GAMMA, 2, &hf_ec_gamma_exist),
4083   M_UINT              (EC_Packet_Downlink_Assignment_t, GAMMA, 5, &hf_gamma),
4084   M_UINT              (EC_Packet_Downlink_Assignment_t, ALPHA_Enable, 1, &hf_ec_alpha_enable),
4085 
4086   M_PADDING_BITS      (EC_Packet_Downlink_Assignment_t, &hf_padding),
4087 CSN_DESCR_END         (EC_Packet_Downlink_Assignment_t)
4088 
4089 static const
4090 CSN_DESCR_BEGIN       (EC_AckNack_Description_t)
4091   M_UINT              (EC_AckNack_Description_t, STARTING_SEQUENCE_NUMBER, 5, &hf_starting_sequence_number),
4092   M_UINT              (EC_AckNack_Description_t, RECEIVED_BLOCK_BITMAP, 16, &hf_received_block_bitmap),
4093 CSN_DESCR_END         (EC_AckNack_Description_t)
4094 
4095 static const
4096 CSN_DESCR_BEGIN       (EC_Primary_AckNack_Description_t)
4097   M_UINT              (EC_Primary_AckNack_Description_t, STARTING_SEQUENCE_NUMBER, 5, &hf_starting_sequence_number),
4098   M_UINT              (EC_Primary_AckNack_Description_t, RECEIVED_BLOCK_BITMAP, 8, &hf_received_block_bitmap),
4099 CSN_DESCR_END         (EC_Primary_AckNack_Description_t)
4100 
4101 static const
4102 CSN_DESCR_BEGIN       (EC_Primary_AckNack_Description_TLLI_t)
4103   M_UINT              (EC_Primary_AckNack_Description_TLLI_t, CONTENTION_RESOLUTION_TLLI, 32, &hf_tlli),
4104   M_TYPE              (EC_Primary_AckNack_Description_TLLI_t, EC_AckNack_Description, EC_Primary_AckNack_Description_t),
4105 CSN_DESCR_END         (EC_Primary_AckNack_Description_TLLI_t)
4106 
4107 static const
4108 CSN_DESCR_BEGIN       (EC_Primary_AckNack_Description_rTLLI_t)
4109   M_UINT              (EC_Primary_AckNack_Description_rTLLI_t, CONTENTION_RESOLUTION_rTLLI, 4, &hf_tlli),
4110   M_TYPE              (EC_Primary_AckNack_Description_rTLLI_t, EC_AckNack_Description, EC_Primary_AckNack_Description_t),
4111 CSN_DESCR_END         (EC_Primary_AckNack_Description_rTLLI_t)
4112 
4113 static const
4114 CSN_ChoiceElement_t EC_AckNack_Description_Type_Dependent_Contents[] =
4115 {
4116   {2, 0x00, 0, M_TYPE(EC_Packet_Uplink_Ack_Nack_fai0_t, u.EC_AckNack_Description, EC_AckNack_Description_t)},
4117   {2, 0x01, 0, M_TYPE(EC_Packet_Uplink_Ack_Nack_fai0_t, u.EC_Primary_AckNack_Description_TLLI, EC_Primary_AckNack_Description_TLLI_t)},
4118   {2, 0x02, 0, M_TYPE(EC_Packet_Uplink_Ack_Nack_fai0_t, u.EC_Primary_AckNack_Description_rTLLI, EC_Primary_AckNack_Description_rTLLI_t)}
4119 };
4120 
4121 static const
4122 CSN_DESCR_BEGIN       (FUA_Delay_t)
4123   M_NEXT_EXIST        (FUA_Delay_t, Exist_DELAY_NEXT_UL_RLC_DATA_BLOCK, 1, &hf_ec_delay_next_ul_rlc_data_block_exist),
4124   M_UINT              (FUA_Delay_t, DELAY_NEXT_UL_RLC_DATA_BLOCK, 3, &hf_ec_delay_next_ul_rlc_data_block),
4125 CSN_DESCR_END         (FUA_Delay_t)
4126 
4127 static const
4128 CSN_DESCR_BEGIN       (PUAN_Fixed_Uplink_Allocation_t)
4129   M_NEXT_EXIST        (PUAN_Fixed_Uplink_Allocation_t, Exist_BSN_OFFSET, 1, &hf_ec_bsn_offset_exist),
4130   M_UINT              (PUAN_Fixed_Uplink_Allocation_t, BSN_OFFSET, 2, &hf_ec_bsn_offset),
4131   M_UINT              (PUAN_Fixed_Uplink_Allocation_t, START_FIRST_UL_RLC_DATA_BLOCK, 4, &hf_ec_start_first_ul_rlc_data_block),
4132   M_REC_TARRAY        (PUAN_Fixed_Uplink_Allocation_t, FUA_Delay, FUA_Delay_t, Count_FUA_Delay, &hf_ec_puan_fua_dealy_exist),
4133 CSN_DESCR_END         (PUAN_Fixed_Uplink_Allocation_t)
4134 
4135 static const
4136 CSN_DESCR_BEGIN       (EC_Packet_Uplink_Ack_Nack_fai0_t)
4137   M_CHOICE_IL         (EC_Packet_Uplink_Ack_Nack_fai0_t, EC_AckNack_Description_Type, EC_AckNack_Description_Type_Dependent_Contents, ElementsOf(EC_AckNack_Description_Type_Dependent_Contents), &hf_ec_acknack_description),
4138 
4139   M_TYPE              (EC_Packet_Uplink_Ack_Nack_fai0_t, PUAN_Fixed_Uplink_Allocation, PUAN_Fixed_Uplink_Allocation_t),
4140   M_UINT              (EC_Packet_Uplink_Ack_Nack_fai0_t, RESEGMENT, 1, &hf_resegment),
4141 
4142   M_NEXT_EXIST        (EC_Packet_Uplink_Ack_Nack_fai0_t, Exist_EGPRS_Channel_Coding_Command, 1, &hf_ec_egprs_channel_coding_command_exist),
4143   M_UINT              (EC_Packet_Uplink_Ack_Nack_fai0_t, EGPRS_Channel_Coding_Command, 4, &hf_egprs_channel_coding_command),
4144 
4145   M_NEXT_EXIST        (EC_Packet_Uplink_Ack_Nack_fai0_t, Exist_CC_TS, 5, &hf_ec_puan_cc_ts_exist),
4146   M_UINT              (EC_Packet_Uplink_Ack_Nack_fai0_t, UL_COVERAGE_CLASS, 2, &hf_ul_coverage_class),
4147   M_UINT              (EC_Packet_Uplink_Ack_Nack_fai0_t, STARTING_UL_TIMESLOT, 3, &hf_starting_ul_timeslot),
4148   M_UINT              (EC_Packet_Uplink_Ack_Nack_fai0_t, DL_COVERAGE_CLASS, 2, &hf_dl_coverage_class),
4149   M_UINT              (EC_Packet_Uplink_Ack_Nack_fai0_t, STARTING_DL_TIMESLOT_OFFSET, 2, &hf_starting_dl_timeslot_offset),
4150   M_UINT              (EC_Packet_Uplink_Ack_Nack_fai0_t, TIMESLOT_MULTIPLICATOR, 3, &hf_timeslot_multiplicator),
4151 
4152 CSN_DESCR_END         (EC_Packet_Uplink_Ack_Nack_fai0_t)
4153 
4154 static const
4155 CSN_DESCR_BEGIN       (EC_Packet_Uplink_Ack_Nack_fai1_t)
4156   M_NEXT_EXIST        (EC_Packet_Uplink_Ack_Nack_fai1_t, Exist_CONTENTION_RESOLUTION_TLLI, 1, &hf_ec_puan_exist_contres_tlli),
4157   M_UINT              (EC_Packet_Uplink_Ack_Nack_fai1_t, CONTENTION_RESOLUTION_TLLI, 32, &hf_tlli),
4158 
4159   M_NEXT_EXIST        (EC_Packet_Uplink_Ack_Nack_fai1_t, Exist_MONITOR_EC_PACCH, 3, &hf_ec_puan_monitor_ec_pacch),
4160   M_UINT              (EC_Packet_Uplink_Ack_Nack_fai1_t, T3238, 3, &hf_t3238),
4161   M_UINT              (EC_Packet_Uplink_Ack_Nack_fai1_t, Initial_Waiting_Time, 2, &hf_ec_initial_waiting_time),
4162   M_UINT              (EC_Packet_Uplink_Ack_Nack_fai1_t, EC_PACCH_Monitoring_Pattern, 2, &hf_ec_pacch_monitoring_pattern),
4163 
4164 CSN_DESCR_END         (EC_Packet_Uplink_Ack_Nack_fai1_t)
4165 
4166 static const
4167 CSN_ChoiceElement_t PUAN_FAI_Value_Dependent_Contents[] =
4168 {
4169   {1, 0x00, 0, M_TYPE(EC_Packet_Uplink_Ack_Nack_t, u.fai0, EC_Packet_Uplink_Ack_Nack_fai0_t)},
4170   {1, 0x01, 0, M_TYPE(EC_Packet_Uplink_Ack_Nack_t, u.fai1, EC_Packet_Uplink_Ack_Nack_fai1_t)}
4171 };
4172 
4173 static const
4174 CSN_DESCR_BEGIN       (EC_Packet_Uplink_Ack_Nack_t)
4175   M_UINT              (EC_Packet_Uplink_Ack_Nack_t, MESSAGE_TYPE, 5, &hf_ec_dl_message_type),
4176   M_UINT              (EC_Packet_Uplink_Ack_Nack_t, USED_DL_COVERAGE_CLASS, 2, &hf_used_dl_coverage_class),
4177   M_UINT              (EC_Packet_Uplink_Ack_Nack_t, UPLINK_TFI, 5, &hf_uplink_tfi),
4178 
4179   M_CHOICE_IL         (EC_Packet_Uplink_Ack_Nack_t, Final_Ack_Indicator, PUAN_FAI_Value_Dependent_Contents, ElementsOf(PUAN_FAI_Value_Dependent_Contents), &hf_final_ack_indication),
4180 
4181   M_NEXT_EXIST        (EC_Packet_Uplink_Ack_Nack_t, Exist_EC_Packet_Timing_Advance, 1, &hf_ec_packet_timing_advance_exist),
4182   M_TYPE              (EC_Packet_Uplink_Ack_Nack_t, EC_Packet_Timing_Advance, EC_Packet_Timing_Advance_t),
4183 
4184   M_NEXT_EXIST        (EC_Packet_Uplink_Ack_Nack_t, Exist_GAMMA, 2, &hf_ec_gamma_exist),
4185   M_UINT              (EC_Packet_Uplink_Ack_Nack_t, GAMMA, 5, &hf_gamma),
4186   M_UINT              (EC_Packet_Uplink_Ack_Nack_t, ALPHA_Enable, 1, &hf_ec_alpha_enable),
4187 
4188 
4189   M_PADDING_BITS      (EC_Packet_Uplink_Ack_Nack_t, &hf_padding),
4190 CSN_DESCR_END         (EC_Packet_Uplink_Ack_Nack_t)
4191 
4192 static const
4193 CSN_DESCR_BEGIN       (EC_Packet_Polling_Req_t)
4194   M_UINT              (EC_Packet_Polling_Req_t, MESSAGE_TYPE, 5, &hf_ec_dl_message_type),
4195   M_UINT              (EC_Packet_Polling_Req_t, USED_DL_COVERAGE_CLASS, 2, &hf_used_dl_coverage_class),
4196   M_FIXED             (EC_Packet_Polling_Req_t, 1, 0x00, &hf_packet_downlink_id_choice),
4197   M_TYPE              (EC_Packet_Polling_Req_t, Global_TFI, Global_TFI_t),
4198   M_UINT              (EC_Packet_Polling_Req_t, TYPE_OF_ACK, 1, &hf_ack_type),
4199   M_PADDING_BITS      (EC_Packet_Polling_Req_t, &hf_padding),
4200 CSN_DESCR_END         (EC_Packet_Polling_Req_t)
4201 
4202 
4203 static const
4204 CSN_DESCR_BEGIN       (EC_Reject_t)
4205   M_UINT              (EC_Reject_t, DOWNLINK_TFI, 5, &hf_downlink_tfi),
4206   M_NEXT_EXIST        (EC_Reject_t, Exist_Wait, 2,   &hf_ec_reject_wait_exist),
4207   M_UINT              (EC_Reject_t, WAIT_INDICATION, 8, &hf_reject_wait_indication),
4208   M_UINT              (EC_Reject_t, WAIT_INDICATION_SIZE, 1, &hf_reject_wait_indication_size),
4209 CSN_DESCR_END         (EC_Reject_t)
4210 
4211 static const
4212 CSN_DESCR_BEGIN       (EC_Packet_Access_Reject_t)
4213   M_UINT              (EC_Packet_Access_Reject_t, MESSAGE_TYPE, 5, &hf_ec_dl_message_type),
4214   M_UINT              (EC_Packet_Access_Reject_t, USED_DL_COVERAGE_CLASS, 2, &hf_used_dl_coverage_class),
4215   M_REC_TARRAY_1      (EC_Packet_Access_Reject_t, Reject, EC_Reject_t, Reject_Count, &hf_ec_packet_access_reject_count),
4216   M_PADDING_BITS      (EC_Packet_Access_Reject_t, &hf_padding),
4217 CSN_DESCR_END         (EC_Packet_Access_Reject_t)
4218 
4219 
4220 static const
4221 CSN_DESCR_BEGIN       (EC_Packet_Downlink_Dummy_Control_Block_t)
4222   M_UINT              (EC_Packet_Downlink_Dummy_Control_Block_t, MESSAGE_TYPE, 5, &hf_ec_dl_message_type),
4223   M_UINT              (EC_Packet_Downlink_Dummy_Control_Block_t, USED_DL_COVERAGE_CLASS, 2, &hf_used_dl_coverage_class),
4224   M_PADDING_BITS      (EC_Packet_Downlink_Dummy_Control_Block_t, &hf_padding),
4225 CSN_DESCR_END         (EC_Packet_Downlink_Dummy_Control_Block_t)
4226 
4227 static const
4228 CSN_DESCR_BEGIN       (EC_Packet_Power_Control_Timing_Advance_t)
4229   M_UINT              (EC_Packet_Power_Control_Timing_Advance_t, MESSAGE_TYPE, 5, &hf_ec_dl_message_type),
4230   M_UINT              (EC_Packet_Power_Control_Timing_Advance_t, USED_DL_COVERAGE_CLASS, 2, &hf_used_dl_coverage_class),
4231   M_TYPE              (EC_Packet_Power_Control_Timing_Advance_t, Global_TFI, Global_TFI_t),
4232 
4233   M_NEXT_EXIST        (EC_Packet_Power_Control_Timing_Advance_t, Exist_T_AVG_T, 1,   &hf_ec_t_avg_t_exist),
4234   M_UINT              (EC_Packet_Power_Control_Timing_Advance_t, T_AVG_T, 5, &hf_t_avg_t),
4235 
4236   M_NEXT_EXIST        (EC_Packet_Power_Control_Timing_Advance_t, Exist_EC_Packet_Timing_Advance, 1, &hf_ec_packet_timing_advance_exist),
4237   M_TYPE              (EC_Packet_Power_Control_Timing_Advance_t, EC_Packet_Timing_Advance, EC_Packet_Timing_Advance_t),
4238 
4239   M_NEXT_EXIST        (EC_Packet_Power_Control_Timing_Advance_t, Exist_GAMMA, 1, &hf_ec_gamma_exist),
4240   M_UINT              (EC_Packet_Power_Control_Timing_Advance_t, GAMMA, 5, &hf_gamma),
4241 
4242   M_PADDING_BITS      (EC_Packet_Power_Control_Timing_Advance_t, &hf_padding),
4243 CSN_DESCR_END         (EC_Packet_Power_Control_Timing_Advance_t)
4244 
4245 
4246 static const
4247 CSN_DESCR_BEGIN       (EC_Packet_Tbf_Release_t)
4248   M_UINT              (EC_Packet_Tbf_Release_t, MESSAGE_TYPE, 5, &hf_ec_dl_message_type),
4249   M_UINT              (EC_Packet_Tbf_Release_t, USED_DL_COVERAGE_CLASS, 2, &hf_used_dl_coverage_class),
4250   M_FIXED             (EC_Packet_Tbf_Release_t, 1, 0x00, &hf_packet_downlink_id_choice),
4251   M_TYPE              (EC_Packet_Tbf_Release_t, Global_TFI, Global_TFI_t),
4252 
4253   M_UINT              (EC_Packet_Tbf_Release_t, TBF_RELEASE_CAUSE, 4, &hf_packetbf_release_tbf_release_cause),
4254 
4255   M_NEXT_EXIST        (EC_Packet_Tbf_Release_t, Exist_Wait, 2,   &hf_ec_reject_wait_exist),
4256   M_UINT              (EC_Packet_Tbf_Release_t, WAIT_INDICATION, 8, &hf_reject_wait_indication),
4257   M_UINT              (EC_Packet_Tbf_Release_t, WAIT_INDICATION_SIZE, 1, &hf_reject_wait_indication_size),
4258 
4259   M_PADDING_BITS      (EC_Packet_Tbf_Release_t, &hf_padding),
4260 CSN_DESCR_END         (EC_Packet_Tbf_Release_t)
4261 
4262 
4263 static const
4264 CSN_DESCR_BEGIN       (Fixed_Uplink_Allocation_t)
4265   M_UINT              (Fixed_Uplink_Allocation_t, START_FIRST_UL_RLC_DATA_BLOCK, 4, &hf_ec_start_first_ul_rlc_data_block),
4266   M_REC_TARRAY        (Fixed_Uplink_Allocation_t, FUA_Delay, FUA_Delay_t, Count_FUA_Delay, &hf_ec_puan_fua_dealy_exist),
4267 CSN_DESCR_END         (Fixed_Uplink_Allocation_t)
4268 
4269 static const
4270 CSN_DESCR_BEGIN       (EC_Packet_Uplink_Assignment_t)
4271   M_UINT              (EC_Packet_Uplink_Assignment_t, MESSAGE_TYPE, 5, &hf_ec_dl_message_type),
4272   M_UINT              (EC_Packet_Uplink_Assignment_t, USED_DL_COVERAGE_CLASS, 2, &hf_used_dl_coverage_class),
4273 
4274   M_FIXED             (EC_Packet_Uplink_Assignment_t, 1, 0x00, &hf_packet_downlink_id_choice),
4275   M_TYPE              (EC_Packet_Uplink_Assignment_t, Global_TFI, Global_TFI_t),
4276 
4277   M_NEXT_EXIST        (EC_Packet_Uplink_Assignment_t, Exist_UPLINK_TFI_ASSIGNMENT, 1, &hf_ec_uplink_tfi_exist),
4278   M_UINT              (EC_Packet_Uplink_Assignment_t, UPLINK_TFI_ASSIGNMENT, 5, &hf_uplink_tfi),
4279 
4280   M_NEXT_EXIST        (EC_Packet_Uplink_Assignment_t, Exist_EGPRS_Channel_Coding_Command, 1, &hf_ec_egprs_channel_coding_command_exist),
4281   M_UINT              (EC_Packet_Uplink_Assignment_t, EGPRS_Channel_Coding_Command, 4, &hf_egprs_channel_coding_command),
4282 
4283   M_UINT              (EC_Packet_Uplink_Assignment_t, Overlaid_CDMA_Code, 2, &hf_ec_overlaid_cdma_code),
4284 
4285   M_NEXT_EXIST        (EC_Packet_Uplink_Assignment_t, Exist_EC_Packet_Timing_Advance, 1, &hf_ec_packet_timing_advance_exist),
4286   M_TYPE              (EC_Packet_Uplink_Assignment_t, EC_Packet_Timing_Advance, EC_Packet_Timing_Advance_t),
4287 
4288   M_NEXT_EXIST        (EC_Packet_Uplink_Assignment_t, Exist_Frequency_Parameters, 1, &hf_ec_frequency_parameters_exist),
4289   M_TYPE              (EC_Packet_Uplink_Assignment_t, Frequency_Parameters, EC_Frequency_Parameters_t),
4290 
4291   M_UINT              (EC_Packet_Uplink_Assignment_t, UL_COVERAGE_CLASS, 2, &hf_ul_coverage_class),
4292   M_UINT              (EC_Packet_Uplink_Assignment_t, STARTING_UL_TIMESLOT, 3, &hf_starting_ul_timeslot),
4293   M_UINT              (EC_Packet_Uplink_Assignment_t, TIMESLOT_MULTIPLICATOR, 3, &hf_timeslot_multiplicator),
4294 
4295   M_TYPE              (EC_Packet_Uplink_Assignment_t, Fixed_Uplink_Allocation, Fixed_Uplink_Allocation_t),
4296 
4297   M_NEXT_EXIST        (EC_Packet_Uplink_Assignment_t, Exist_P0_and_PR_MODE, 2, &hf_ec_p0_and_pr_mode_exist),
4298   M_UINT              (EC_Packet_Uplink_Assignment_t, P0, 4, &hf_p0),
4299   M_UINT              (EC_Packet_Uplink_Assignment_t, PR_MODE, 1, &hf_pr_mode),
4300 
4301   M_NEXT_EXIST        (EC_Packet_Uplink_Assignment_t, Exist_GAMMA, 2, &hf_ec_gamma_exist),
4302   M_UINT              (EC_Packet_Uplink_Assignment_t, GAMMA, 5, &hf_gamma),
4303   M_UINT              (EC_Packet_Uplink_Assignment_t, ALPHA_Enable, 1, &hf_ec_alpha_enable),
4304 
4305 
4306   M_UINT              (EC_Packet_Uplink_Assignment_t, DL_COVERAGE_CLASS, 2, &hf_dl_coverage_class),
4307   M_UINT              (EC_Packet_Uplink_Assignment_t, STARTING_DL_TIMESLOT_OFFSET, 2, &hf_starting_dl_timeslot_offset),
4308 
4309   M_PADDING_BITS      (EC_Packet_Uplink_Assignment_t, &hf_padding),
4310 CSN_DESCR_END         (EC_Packet_Uplink_Assignment_t)
4311 
4312 static const
4313 CSN_DESCR_BEGIN       (EC_Packet_Uplink_Ack_Nack_And_Contention_Resolution_t)
4314   M_UINT              (EC_Packet_Uplink_Ack_Nack_And_Contention_Resolution_t, MESSAGE_TYPE, 5, &hf_ec_dl_message_type),
4315   M_UINT              (EC_Packet_Uplink_Ack_Nack_And_Contention_Resolution_t, USED_DL_COVERAGE_CLASS, 2, &hf_used_dl_coverage_class),
4316   M_UINT              (EC_Packet_Uplink_Ack_Nack_And_Contention_Resolution_t, UPLINK_TFI, 5, &hf_uplink_tfi),
4317 
4318   M_UINT              (EC_Packet_Uplink_Ack_Nack_And_Contention_Resolution_t, CONTENTION_RESOLUTION_TLLI, 32, &hf_tlli),
4319   M_TYPE              (EC_Packet_Uplink_Ack_Nack_And_Contention_Resolution_t, EC_AckNack_Description, EC_Primary_AckNack_Description_t),
4320   M_TYPE              (EC_Packet_Uplink_Ack_Nack_And_Contention_Resolution_t, PUANCR_Fixed_Uplink_Allocation, Fixed_Uplink_Allocation_t),
4321   M_UINT              (EC_Packet_Uplink_Ack_Nack_And_Contention_Resolution_t, RESEGMENT, 1, &hf_resegment),
4322 
4323   M_PADDING_BITS      (EC_Packet_Uplink_Ack_Nack_And_Contention_Resolution_t, &hf_padding),
4324 CSN_DESCR_END         (EC_Packet_Uplink_Ack_Nack_And_Contention_Resolution_t)
4325 
4326 static const
4327 CSN_DESCR_BEGIN       (EC_Packet_Control_Acknowledgement_t)
4328   M_UINT              (EC_Packet_Control_Acknowledgement_t, MESSAGE_TYPE, 5, &hf_ec_ul_message_type),
4329   M_UINT              (EC_Packet_Control_Acknowledgement_t, TLLI, 32, &hf_tlli),
4330   M_UINT              (EC_Packet_Control_Acknowledgement_t, CTRL_ACK, 2, &hf_packet_control_acknowledgement_ctrl_ack),
4331   M_UINT              (EC_Packet_Control_Acknowledgement_t, DL_CC_EST, 4, &hf_ec_dl_cc_est),
4332   M_PADDING_BITS      (EC_Packet_Control_Acknowledgement_t, &hf_padding),
4333 CSN_DESCR_END         (EC_Packet_Control_Acknowledgement_t)
4334 
4335 static const
4336 CSN_DESCR_BEGIN       (EC_Channel_Request_Description_t)
4337   M_UINT              (EC_Channel_Request_Description_t, PRIORITY, 1, &hf_ec_priority),
4338   M_UINT              (EC_Channel_Request_Description_t, NUMBER_OF_UL_DATA_BLOCKS, 4, &hf_ec_number_of_ul_data_blocks),
4339 CSN_DESCR_END         (EC_Channel_Request_Description_t)
4340 
4341 static const
4342 CSN_ChoiceElement_t PDAN_FAI_Value_Dependent_Contents[] =
4343 {
4344   {1, 0x00, 0, M_TYPE(EC_Packet_Downlink_Ack_Nack_t, EC_AckNack_Description, EC_AckNack_Description_t)},
4345   {1, 0x01, 1, M_FIXED(EC_Packet_Downlink_Ack_Nack_t,1,0x01,&hf_final_ack_indication)}
4346 };
4347 
4348 static const
4349 CSN_DESCR_BEGIN       (EC_Channel_Quality_Report_t)
4350   M_NEXT_EXIST        (EC_Channel_Quality_Report_t, Exist_GMSK, 2, &hf_ec_qual_gmsk_exist),
4351   M_UINT              (EC_Channel_Quality_Report_t, GMSK_MEAN_BEP, 5, &hf_egprs_bep_linkqualitymeasurements_mean_bep_gmsk),
4352   M_UINT              (EC_Channel_Quality_Report_t, GMSK_CV_BEP, 3, &hf_egprs_bep_linkqualitymeasurements_cv_bep_gmsk),
4353 
4354   M_NEXT_EXIST        (EC_Channel_Quality_Report_t, Exist_8PSK, 2, &hf_ec_qual_8psk_exist),
4355   M_UINT              (EC_Channel_Quality_Report_t, PSK_MEAN_BEP, 5, &hf_egprs_bep_linkqualitymeasurements_mean_bep_8psk),
4356   M_UINT              (EC_Channel_Quality_Report_t, PSK_CV_BEP, 3, &hf_egprs_bep_linkqualitymeasurements_cv_bep_8psk),
4357 
4358   M_UINT              (EC_Channel_Quality_Report_t, C_VALUE, 6, &hf_channel_quality_report_c_value),
4359 CSN_DESCR_END         (EC_Channel_Quality_Report_t)
4360 
4361 
4362 
4363 static const
4364 CSN_DESCR_BEGIN       (EC_Packet_Downlink_Ack_Nack_t)
4365   M_UINT              (EC_Packet_Downlink_Ack_Nack_t, MESSAGE_TYPE, 5, &hf_ec_ul_message_type),
4366   M_UINT              (EC_Packet_Downlink_Ack_Nack_t, DOWNLINK_TFI, 5, &hf_downlink_tfi),
4367   M_UINT              (EC_Packet_Downlink_Ack_Nack_t, MS_OUT_OF_MEMORY, 1, &hf_egprs_pd_acknack_ms_out_of_memory),
4368   M_CHOICE_IL         (EC_Packet_Downlink_Ack_Nack_t, Final_Ack_Indicator, PDAN_FAI_Value_Dependent_Contents, ElementsOf(PDAN_FAI_Value_Dependent_Contents), &hf_final_ack_indication),
4369 
4370   M_NEXT_EXIST        (EC_Packet_Downlink_Ack_Nack_t, Exist_EC_Channel_Quality_Report, 2, &hf_ec_channel_quality_report_exist),
4371   M_TYPE              (EC_Packet_Downlink_Ack_Nack_t, EC_Channel_Quality_Report, EC_Channel_Quality_Report_t),
4372   M_UINT              (EC_Packet_Downlink_Ack_Nack_t, DL_CC_EST, 4, &hf_ec_dl_cc_est),
4373 
4374   M_NEXT_EXIST        (EC_Packet_Downlink_Ack_Nack_t, Exist_EC_Channel_Request_Description, 1, &hf_ec_channel_request_description_exist),
4375   M_TYPE              (EC_Packet_Downlink_Ack_Nack_t, EC_Channel_Request_Description, EC_Channel_Request_Description_t),
4376 
4377   M_PADDING_BITS      (EC_Packet_Downlink_Ack_Nack_t, &hf_padding),
4378 CSN_DESCR_END         (EC_Packet_Downlink_Ack_Nack_t)
4379 
4380 #if 0
4381 static const
4382 CSN_DESCR_BEGIN(pdlaCheck_t)
4383   M_UINT       (pdlaCheck_t, MESSAGE_TYPE, 6, &hf_dl_message_type),
4384   M_UINT       (pdlaCheck_t, PAGE_MODE, 2, &hf_page_mode),
4385 
4386   M_NEXT_EXIST (pdlaCheck_t, Exist_PERSISTENCE_LEVEL, 1, &hf_dl_persistent_level_exist),
4387   M_UINT_ARRAY (pdlaCheck_t, PERSISTENCE_LEVEL, 4, 4, &hf_dl_persistent_level),
4388 
4389   M_TYPE       (pdlaCheck_t, ID, PacketDownlinkID_t),
4390 CSN_DESCR_END  (pdlaCheck_t)
4391 #endif
4392 
4393 #if 0
4394 /* DTM Packet UL Assignment */
4395 static const
4396 CSN_DESCR_BEGIN(DTM_Packet_Uplink_Assignment_t)
4397   M_UINT       (DTM_Packet_Uplink_Assignment_t, CHANNEL_CODING_COMMAND, 2, &hf_gprs_channel_coding_command),
4398   M_UINT       (DTM_Packet_Uplink_Assignment_t, TLLI_BLOCK_CHANNEL_CODING, 1, &hf_tlli_block_channel_coding),
4399   M_TYPE       (DTM_Packet_Uplink_Assignment_t, Packet_Timing_Advance, Packet_Timing_Advance_t),
4400 
4401   M_UNION      (DTM_Packet_Uplink_Assignment_t, 3),
4402   CSN_ERROR    (DTM_Packet_Uplink_Assignment_t, "Not Implemented", CSN_ERROR_STREAM_NOT_SUPPORTED, &ei_gsm_rlcmac_stream_not_supported),
4403   M_TYPE       (DTM_Packet_Uplink_Assignment_t, u.DTM_Dynamic_Allocation, DTM_Dynamic_Allocation_t),
4404   M_TYPE       (DTM_Packet_Uplink_Assignment_t, u.DTM_Single_Block_Allocation, DTM_Single_Block_Allocation_t),
4405   M_NEXT_EXIST_OR_NULL  (DTM_Packet_Uplink_Assignment_t, Exist_EGPRS_Parameters, 3),
4406   M_UINT       (DTM_Packet_Uplink_Assignment_t,  EGPRS_CHANNEL_CODING_COMMAND, 4, &hf_egprs_channel_coding_command),
4407   M_UINT       (DTM_Packet_Uplink_Assignment_t,  RESEGMENT, 1, &hf_resegment),
4408   M_UINT       (DTM_Packet_Uplink_Assignment_t,  EGPRS_WindowSize, 5, &hf_egprs_windowsize),
4409   M_NEXT_EXIST (DTM_Packet_Uplink_Assignment_t, Exist_Packet_Extended_Timing_Advance, 1),
4410   M_UINT       (DTM_Packet_Uplink_Assignment_t,  Packet_Extended_Timing_Advance, 2, &hf_packet_extended_timing_advance),
4411 CSN_DESCR_END(DTM_Packet_Uplink_Assignment_t)
4412 #endif
4413 
4414 #if 0
4415 static const
4416 CSN_DESCR_BEGIN(DTM_UL_t)
4417   M_TYPE       (DTM_UL_t, DTM_Packet_Uplink_Assignment, DTM_Packet_Uplink_Assignment_t),
4418 CSN_DESCR_END(DTM_UL_t)
4419 #endif
4420 
4421 /* DTM Packet DL Assignment */
4422 #if 0
4423 static const
4424 CSN_DESCR_BEGIN(DTM_Packet_Downlink_Assignment_t)
4425   M_UINT       (DTM_Packet_Downlink_Assignment_t,  MAC_MODE, 2, &hf_mac_mode),
4426   M_UINT       (DTM_Packet_Downlink_Assignment_t,  RLC_MODE, 1, &hf_rlc_mode),
4427   M_UINT       (DTM_Packet_Downlink_Assignment_t,  TIMESLOT_ALLOCATION, 8, &hf_dl_timeslot_allocation),
4428   M_TYPE       (DTM_Packet_Downlink_Assignment_t, Packet_Timing_Advance, Packet_Timing_Advance_t),
4429 
4430   M_NEXT_EXIST (DTM_Packet_Downlink_Assignment_t, Exist_P0_and_BTS_PWR_CTRL_MODE, 3),
4431   M_UINT       (DTM_Packet_Downlink_Assignment_t,  P0, 4, &hf_p0),
4432   M_UINT       (DTM_Packet_Downlink_Assignment_t,  BTS_PWR_CTRL_MODE, 1, &hf_bts_pwr_ctrl_mode),
4433   M_UINT       (DTM_Packet_Downlink_Assignment_t,  PR_MODE, 1, &hf_pr_mode),
4434 
4435   M_NEXT_EXIST (DTM_Packet_Downlink_Assignment_t, Exist_Power_Control_Parameters, 1),
4436   M_TYPE       (DTM_Packet_Downlink_Assignment_t, Power_Control_Parameters, Power_Control_Parameters_t),
4437 
4438   M_NEXT_EXIST (DTM_Packet_Downlink_Assignment_t, Exist_DOWNLINK_TFI_ASSIGNMENT, 1),
4439   M_UINT       (DTM_Packet_Downlink_Assignment_t,  DOWNLINK_TFI_ASSIGNMENT, 5, &hf_downlink_tfi),
4440 
4441   M_NEXT_EXIST (DTM_Packet_Downlink_Assignment_t, Exist_Measurement_Mapping, 1),
4442   M_TYPE       (DTM_Packet_Downlink_Assignment_t, Measurement_Mapping, Measurement_Mapping_struct_t),
4443   M_NEXT_EXIST_OR_NULL  (DTM_Packet_Downlink_Assignment_t, EGPRS_Mode, 2),
4444   M_UINT       (DTM_Packet_Downlink_Assignment_t,  EGPRS_WindowSize, 5, &hf_egprs_windowsize),
4445   M_UINT       (DTM_Packet_Downlink_Assignment_t,  LINK_QUALITY_MEASUREMENT_MODE, 2, &hf_link_quality_measurement_mode),
4446   M_NEXT_EXIST (DTM_Packet_Downlink_Assignment_t, Exist_Packet_Extended_Timing_Advance, 1),
4447   M_UINT       (DTM_Packet_Downlink_Assignment_t,  Packet_Extended_Timing_Advance, 2, &hf_packet_extended_timing_advance),
4448 CSN_DESCR_END(DTM_Packet_Downlink_Assignment_t)
4449 #endif
4450 
4451 #if 0
4452 static const
4453 CSN_DESCR_BEGIN(DTM_DL_t)
4454   M_TYPE       (DTM_DL_t, DTM_Packet_Downlink_Assignment, DTM_Packet_Downlink_Assignment_t),
4455 CSN_DESCR_END(DTM_DL_t)
4456 #endif
4457 
4458 /* GPRS Broadcast Information */
4459 #if 0
4460 static const
4461 CSN_DESCR_BEGIN(DTM_GPRS_Broadcast_Information_t)
4462   M_TYPE       (DTM_GPRS_Broadcast_Information_t, GPRS_Cell_Options, GPRS_Cell_Options_t),
4463   M_TYPE       (DTM_GPRS_Broadcast_Information_t, GPRS_Power_Control_Parameters, GPRS_Power_Control_Parameters_t),
4464 CSN_DESCR_END(DTM_GPRS_Broadcast_Information_t)
4465 #endif
4466 
4467 #if 0
4468 static const
4469 CSN_DESCR_BEGIN(DTM_GPRS_B_t)
4470   M_TYPE       (DTM_GPRS_B_t, DTM_GPRS_Broadcast_Information, DTM_GPRS_Broadcast_Information_t),
4471 CSN_DESCR_END(DTM_GPRS_B_t)
4472 #endif
4473 
4474 #if 0
4475 static const
4476 CSN_DESCR_BEGIN(DTM_Channel_Request_Description_t)
4477   M_UINT       (DTM_Channel_Request_Description_t,  DTM_Pkt_Est_Cause,  2, &hf_dtm_channel_request_description_dtm_pkt_est_cause),
4478   M_TYPE       (DTM_Channel_Request_Description_t, Channel_Request_Description, Channel_Request_Description_t),
4479   M_NEXT_EXIST (DTM_Channel_Request_Description_t, Exist_PFI, 1, &hf_pfi_exist),
4480   M_UINT       (DTM_Channel_Request_Description_t,  PFI, 7, &hf_pfi),
4481 CSN_DESCR_END(DTM_Channel_Request_Description_t)
4482 #endif
4483 /* DTM  */
4484 
4485 /* < Packet Paging Request message content > */
4486 typedef struct
4487 {
4488   guint8 Length_of_Mobile_Identity_contents;/* bit (4) */
4489   /* NOTE: the rest is handled by cb_parse_mi() */
4490 } Mobile_Identity_t; /* helper */
4491 
cb_parse_mi(proto_tree * tree,tvbuff_t * tvb,void * _mi_length,void * _param2 _U_,int bit_offset,int ett_csn1 _U_,packet_info * pinfo)4492 static CSN_CallBackStatus_t cb_parse_mi(proto_tree *tree, tvbuff_t *tvb,
4493                                         void *_mi_length, void *_param2 _U_,
4494                                         int bit_offset, int ett_csn1 _U_,
4495                                         packet_info *pinfo)
4496 {
4497   guint8 mi_length = *((guint8 *) _mi_length);
4498 
4499   /* de_mid() requires an octet-aligned buffer */
4500   tvbuff_t *mi_tvb = tvb_new_octet_aligned(tvb, bit_offset, mi_length << 3);
4501   add_new_data_source(pinfo, mi_tvb, "Mobile Identity");
4502   de_mid(mi_tvb, tree, pinfo, 0, -1, NULL, 0);
4503 
4504   return mi_length << 3;
4505 }
4506 
4507 static const
4508 CSN_DESCR_BEGIN(Mobile_Identity_t)
4509   M_UINT       (Mobile_Identity_t,  Length_of_Mobile_Identity_contents,  4, &hf_mobile_identity_length_of_mobile_identity_contents),
4510   M_CALLBACK   (Mobile_Identity_t,  cb_parse_mi, Length_of_Mobile_Identity_contents, Length_of_Mobile_Identity_contents),
4511 CSN_DESCR_END  (Mobile_Identity_t)
4512 
4513 static const
4514 CSN_DESCR_BEGIN(Page_request_for_TBF_establishment_t)
4515   M_UNION      (Page_request_for_TBF_establishment_t, 2, &hf_page_request_tfb_establishment),
4516   M_UINT_ARRAY (Page_request_for_TBF_establishment_t, u.PTMSI, 8, 4, &hf_page_request_ptmsi),/* bit (32) == 8*4 */
4517   M_TYPE       (Page_request_for_TBF_establishment_t, u.Mobile_Identity, Mobile_Identity_t),
4518 CSN_DESCR_END  (Page_request_for_TBF_establishment_t)
4519 
4520 static const
4521 CSN_DESCR_BEGIN(Page_request_for_RR_conn_t)
4522   M_UNION      (Page_request_for_RR_conn_t, 2, &hf_page_request_rr_conn),
4523   M_UINT_ARRAY (Page_request_for_RR_conn_t, u.TMSI, 8, 4, &hf_page_request_for_rr_conn_tmsi),/* bit (32) == 8*4 */
4524   M_TYPE       (Page_request_for_RR_conn_t, u.Mobile_Identity, Mobile_Identity_t),
4525 
4526   M_UINT       (Page_request_for_RR_conn_t,  CHANNEL_NEEDED,  2, &hf_page_request_for_rr_conn_channel_needed),
4527 
4528   M_NEXT_EXIST (Page_request_for_RR_conn_t, Exist_eMLPP_PRIORITY, 1, &hf_page_request_for_rr_conn_emlpp_priority_exist),
4529   M_UINT       (Page_request_for_RR_conn_t,  eMLPP_PRIORITY,  3, &hf_page_request_for_rr_conn_emlpp_priority),
4530 CSN_DESCR_END  (Page_request_for_RR_conn_t)
4531 
4532 static const
4533 CSN_DESCR_BEGIN(Repeated_Page_info_t)
4534   M_UNION      (Repeated_Page_info_t, 2, &hf_repeated_page_info),
4535   M_TYPE       (Repeated_Page_info_t, u.Page_req_TBF, Page_request_for_TBF_establishment_t),
4536   M_TYPE       (Repeated_Page_info_t, u.Page_req_RR, Page_request_for_RR_conn_t),
4537 CSN_DESCR_END  (Repeated_Page_info_t)
4538 
4539 static const
4540 CSN_DESCR_BEGIN(Packet_Paging_Request_t)
4541   M_UINT       (Packet_Paging_Request_t, MESSAGE_TYPE, 6, &hf_dl_message_type),
4542   M_UINT       (Packet_Paging_Request_t, PAGE_MODE, 2, &hf_page_mode),
4543 
4544   M_NEXT_EXIST (Packet_Paging_Request_t, Exist_PERSISTENCE_LEVEL, 1, &hf_dl_persistent_level_exist),
4545   M_UINT_ARRAY (Packet_Paging_Request_t, PERSISTENCE_LEVEL, 4, 4, &hf_dl_persistent_level), /* 4bit*4 */
4546 
4547   M_NEXT_EXIST (Packet_Paging_Request_t, Exist_NLN, 1, &hf_packet_paging_request_nln_exist),
4548   M_UINT       (Packet_Paging_Request_t,  NLN, 2, &hf_nln),
4549 
4550   M_REC_TARRAY (Packet_Paging_Request_t, Repeated_Page_info, Repeated_Page_info_t, Count_Repeated_Page_info, &hf_packet_paging_request_repeated_page_info_exist),
4551   M_PADDING_BITS(Packet_Paging_Request_t, &hf_padding),
4552 CSN_DESCR_END  (Packet_Paging_Request_t)
4553 
4554 static const
4555 CSN_DESCR_BEGIN(Packet_PDCH_Release_t)
4556   M_UINT       (Packet_PDCH_Release_t, MESSAGE_TYPE, 6, &hf_dl_message_type),
4557   M_UINT       (Packet_PDCH_Release_t, PAGE_MODE, 2, &hf_page_mode),
4558 
4559   M_FIXED      (Packet_PDCH_Release_t, 1, 0x01, &hf_packet_pdch_release),
4560   M_UINT       (Packet_PDCH_Release_t, TIMESLOTS_AVAILABLE, 8, &hf_packet_pdch_release_timeslots_available),
4561   M_PADDING_BITS(Packet_PDCH_Release_t, &hf_padding),
4562 CSN_DESCR_END  (Packet_PDCH_Release_t)
4563 
4564 /* < Packet Power Control/Timing Advance message content > */
4565 static const
4566 CSN_DESCR_BEGIN(GlobalTimingAndPower_t)
4567   M_TYPE       (GlobalTimingAndPower_t, Global_Packet_Timing_Advance, Global_Packet_Timing_Advance_t),
4568   M_TYPE       (GlobalTimingAndPower_t, Power_Control_Parameters, Power_Control_Parameters_t),
4569 CSN_DESCR_END  (GlobalTimingAndPower_t)
4570 
4571 static const
4572 CSN_DESCR_BEGIN(GlobalTimingOrPower_t)
4573   M_UNION      (GlobalTimingOrPower_t, 2, &hf_global_timing_or_power),
4574   M_TYPE       (GlobalTimingOrPower_t, u.Global_Packet_Timing_Advance, Global_Packet_Timing_Advance_t),
4575   M_TYPE       (GlobalTimingOrPower_t, u.Power_Control_Parameters, Power_Control_Parameters_t),
4576 CSN_DESCR_END  (GlobalTimingOrPower_t)
4577 
4578 static const
4579 CSN_ChoiceElement_t PacketPowerControlTimingAdvanceID[] =
4580 {
4581   {1, 0,    0, M_TYPE(PacketPowerControlTimingAdvanceID_t, u.Global_TFI, Global_TFI_t)},
4582   {3, 0x06, 0, M_UINT(PacketPowerControlTimingAdvanceID_t, u.TQI, 16, &hf_tqi)},
4583   {3, 0x07, 0, M_TYPE(PacketPowerControlTimingAdvanceID_t, u.Packet_Request_Reference, Packet_Request_Reference_t)},
4584 };
4585 
4586 static const
4587 CSN_DESCR_BEGIN(PacketPowerControlTimingAdvanceID_t)
4588   M_CHOICE     (PacketPowerControlTimingAdvanceID_t, UnionType, PacketPowerControlTimingAdvanceID, ElementsOf(PacketPowerControlTimingAdvanceID), &hf_ppc_timing_advance_id_choice),
4589 CSN_DESCR_END  (PacketPowerControlTimingAdvanceID_t)
4590 
4591 static const
4592 CSN_DESCR_BEGIN(Packet_Power_Control_Timing_Advance_t)
4593   M_UINT       (Packet_Power_Control_Timing_Advance_t, MESSAGE_TYPE, 6, &hf_dl_message_type),
4594   M_UINT       (Packet_Power_Control_Timing_Advance_t, PAGE_MODE, 2, &hf_page_mode),
4595 
4596   M_TYPE       (Packet_Power_Control_Timing_Advance_t, ID, PacketPowerControlTimingAdvanceID_t),
4597 
4598   /*-- Message escape*/
4599   M_FIXED      (Packet_Power_Control_Timing_Advance_t, 1, 0x00, &hf_ppc_timing_advance),
4600 
4601   M_NEXT_EXIST (Packet_Power_Control_Timing_Advance_t, Exist_Global_Power_Control_Parameters, 1, &hf_packet_power_control_timing_advance_global_power_control_parameters_exist),
4602   M_TYPE       (Packet_Power_Control_Timing_Advance_t, Global_Power_Control_Parameters, Global_Power_Control_Parameters_t),
4603 
4604   M_UNION      (Packet_Power_Control_Timing_Advance_t, 2, &hf_ppc_timing_advance),
4605   M_TYPE       (Packet_Power_Control_Timing_Advance_t, u.GlobalTimingAndPower, GlobalTimingAndPower_t),
4606   M_TYPE       (Packet_Power_Control_Timing_Advance_t, u.GlobalTimingOrPower, GlobalTimingOrPower_t),
4607 
4608   M_PADDING_BITS(Packet_Power_Control_Timing_Advance_t, &hf_padding),
4609 CSN_DESCR_END  (Packet_Power_Control_Timing_Advance_t)
4610 
4611 /* < Packet Queueing Notification message content > */
4612 static const
4613 CSN_DESCR_BEGIN(Packet_Queueing_Notification_t)
4614   M_UINT       (Packet_Queueing_Notification_t, MESSAGE_TYPE, 6, &hf_dl_message_type),
4615   M_UINT       (Packet_Queueing_Notification_t, PAGE_MODE, 2, &hf_page_mode),
4616 
4617   M_FIXED      (Packet_Queueing_Notification_t, 3, 0x07, &hf_packet_queueing_notif),/* 111 Fixed */
4618   M_TYPE       (Packet_Queueing_Notification_t, Packet_Request_Reference, Packet_Request_Reference_t),
4619 
4620   M_UINT       (Packet_Queueing_Notification_t, TQI, 16, &hf_tqi),
4621   M_PADDING_BITS(Packet_Queueing_Notification_t, &hf_padding),
4622 CSN_DESCR_END  (Packet_Queueing_Notification_t)
4623 
4624 /* USED in Packet Timeslot Reconfigure message content
4625  * This is almost the same structure as used in
4626  * <Packet Uplink Assignment message content> but UPLINK_TFI_ASSIGNMENT is removed.
4627  */
4628 static const
4629 CSN_DESCR_BEGIN(TRDynamic_Allocation_t)
4630   M_UINT       (TRDynamic_Allocation_t,  Extended_Dynamic_Allocation,  1, &hf_extended_dynamic_allocation),
4631 
4632   M_NEXT_EXIST (TRDynamic_Allocation_t, Exist_P0, 2, &hf_trdynamic_allocation_p0_exist),
4633   M_UINT       (TRDynamic_Allocation_t,  P0, 4, &hf_p0),
4634   M_UINT       (TRDynamic_Allocation_t,  PR_MODE, 1, &hf_pr_mode),
4635 
4636   M_UINT       (TRDynamic_Allocation_t,  USF_GRANULARITY, 1, &hf_usf_granularity),
4637 
4638   M_NEXT_EXIST (TRDynamic_Allocation_t, Exist_RLC_DATA_BLOCKS_GRANTED, 1, &hf_trdynamic_allocation_rlc_data_blocks_granted_exist),
4639   M_UINT       (TRDynamic_Allocation_t,  RLC_DATA_BLOCKS_GRANTED,  8, &hf_rlc_data_blocks_granted),
4640 
4641   M_NEXT_EXIST (TRDynamic_Allocation_t, Exist_TBF_Starting_Time, 1, &hf_trdynamic_allocation_tbf_starting_time_exist),
4642   M_TYPE       (TRDynamic_Allocation_t, TBF_Starting_Time, Starting_Frame_Number_t),
4643 
4644   M_UNION      (TRDynamic_Allocation_t, 2, &hf_dynamic_allocation),
4645   M_TYPE_ARRAY (TRDynamic_Allocation_t, u.Timeslot_Allocation, Timeslot_Allocation_t, 8),
4646   M_TYPE       (TRDynamic_Allocation_t, u.Timeslot_Allocation_Power_Ctrl_Param, Timeslot_Allocation_Power_Ctrl_Param_t),
4647 CSN_DESCR_END  (TRDynamic_Allocation_t)
4648 
4649 /* < Packet Timeslot Reconfigure message content > */
4650 static const
4651 CSN_DESCR_BEGIN(PTR_GPRS_AdditionsR99_t)
4652   M_NEXT_EXIST (PTR_GPRS_AdditionsR99_t, Exist_Packet_Extended_Timing_Advance, 1, &hf_ptr_gprs_additionsr99_packet_extended_timing_advance_exist),
4653   M_UINT       (PTR_GPRS_AdditionsR99_t,  Packet_Extended_Timing_Advance, 2, &hf_packet_extended_timing_advance),
4654 CSN_DESCR_END  (PTR_GPRS_AdditionsR99_t)
4655 
4656 static const
4657 CSN_DESCR_BEGIN       (PTR_GPRS_t)
4658   M_UINT              (PTR_GPRS_t,  CHANNEL_CODING_COMMAND,  2, &hf_gprs_channel_coding_command),
4659   M_TYPE              (PTR_GPRS_t, Common_Timeslot_Reconfigure_Data.Global_Packet_Timing_Advance, Global_Packet_Timing_Advance_t),
4660   M_UINT              (PTR_GPRS_t,  Common_Timeslot_Reconfigure_Data.DOWNLINK_RLC_MODE, 1, &hf_rlc_mode),
4661   M_UINT              (PTR_GPRS_t,  Common_Timeslot_Reconfigure_Data.CONTROL_ACK,  1, &hf_control_ack),
4662 
4663   M_NEXT_EXIST        (PTR_GPRS_t, Common_Timeslot_Reconfigure_Data.Exist_DOWNLINK_TFI_ASSIGNMENT, 1, &hf_ptr_gprs_common_timeslot_reconfigure_data_exist_downlink_tfi_assignment_exist),
4664   M_UINT              (PTR_GPRS_t,  Common_Timeslot_Reconfigure_Data.DOWNLINK_TFI_ASSIGNMENT, 5, &hf_downlink_tfi),
4665 
4666   M_NEXT_EXIST        (PTR_GPRS_t, Common_Timeslot_Reconfigure_Data.Exist_UPLINK_TFI_ASSIGNMENT, 1, &hf_ptr_gprs_common_timeslot_reconfigure_data_exist_uplink_tfi_assignment_exist),
4667   M_UINT              (PTR_GPRS_t,  Common_Timeslot_Reconfigure_Data.UPLINK_TFI_ASSIGNMENT, 5, &hf_uplink_tfi),
4668 
4669   M_UINT              (PTR_GPRS_t,  Common_Timeslot_Reconfigure_Data.DOWNLINK_TIMESLOT_ALLOCATION, 8, &hf_dl_timeslot_allocation),
4670 
4671   M_NEXT_EXIST        (PTR_GPRS_t, Common_Timeslot_Reconfigure_Data.Exist_Frequency_Parameters, 1, &hf_ptr_gprs_common_timeslot_reconfigure_data_exist_frequency_parameters_exist),
4672   M_TYPE              (PTR_GPRS_t, Common_Timeslot_Reconfigure_Data.Frequency_Parameters, Frequency_Parameters_t),
4673 
4674   M_UNION             (PTR_GPRS_t, 2, &hf_dynamic_allocation),
4675   M_TYPE              (PTR_GPRS_t, u.Dynamic_Allocation, TRDynamic_Allocation_t),
4676   CSN_ERROR           (PTR_GPRS_t, "1 - Fixed Allocation was removed", CSN_ERROR_STREAM_NOT_SUPPORTED, &ei_gsm_rlcmac_stream_not_supported),
4677 
4678   M_NEXT_EXIST_OR_NULL(PTR_GPRS_t, Exist_AdditionsR99, 1, &hf_additionsr99_exist),
4679   M_TYPE              (PTR_GPRS_t, AdditionsR99, PTR_GPRS_AdditionsR99_t),
4680 CSN_DESCR_END         (PTR_GPRS_t)
4681 
4682 static const
4683 CSN_DESCR_BEGIN(PTR_EGPRS_00_t)
4684   M_NEXT_EXIST (PTR_EGPRS_00_t, Exist_COMPACT_ReducedMA, 1, &hf_ptr_egprs_00_compact_reducedma_exist),
4685   M_TYPE       (PTR_EGPRS_00_t, COMPACT_ReducedMA, COMPACT_ReducedMA_t),
4686 
4687   M_UINT       (PTR_EGPRS_00_t,  EGPRS_ChannelCodingCommand, 4, &hf_egprs_channel_coding_command),
4688   M_UINT       (PTR_EGPRS_00_t,  RESEGMENT,  1, &hf_resegment),
4689 
4690   M_NEXT_EXIST (PTR_EGPRS_00_t, Exist_DOWNLINK_EGPRS_WindowSize, 1, &hf_ptr_egprs_00_downlink_egprs_windowsize_exist),
4691   M_UINT       (PTR_EGPRS_00_t,  DOWNLINK_EGPRS_WindowSize, 5, &hf_egprs_windowsize),
4692 
4693   M_NEXT_EXIST (PTR_EGPRS_00_t, Exist_UPLINK_EGPRS_WindowSize, 1, &hf_ptr_egprs_00_uplink_egprs_windowsize_exist),
4694   M_UINT       (PTR_EGPRS_00_t,  UPLINK_EGPRS_WindowSize, 5, &hf_egprs_windowsize),
4695 
4696   M_UINT       (PTR_EGPRS_00_t,  LINK_QUALITY_MEASUREMENT_MODE, 2, &hf_link_quality_measurement_mode),
4697 
4698   M_TYPE       (PTR_EGPRS_00_t, Common_Timeslot_Reconfigure_Data.Global_Packet_Timing_Advance, Global_Packet_Timing_Advance_t),
4699 
4700   M_NEXT_EXIST (PTR_EGPRS_00_t, Exist_Packet_Extended_Timing_Advance, 1, &hf_ptr_egprs_00_packet_extended_timing_advance_exist),
4701   M_UINT       (PTR_EGPRS_00_t,  Packet_Extended_Timing_Advance, 2, &hf_packet_extended_timing_advance),
4702 
4703   M_UINT       (PTR_EGPRS_00_t,  Common_Timeslot_Reconfigure_Data.DOWNLINK_RLC_MODE, 1, &hf_rlc_mode),
4704   M_UINT       (PTR_EGPRS_00_t,  Common_Timeslot_Reconfigure_Data.CONTROL_ACK,  1, &hf_control_ack),
4705 
4706   M_NEXT_EXIST (PTR_EGPRS_00_t, Common_Timeslot_Reconfigure_Data.Exist_DOWNLINK_TFI_ASSIGNMENT, 1, &hf_ptr_egprs_00_common_timeslot_reconfigure_data_exist_downlink_tfi_assignment_exist),
4707   M_UINT       (PTR_EGPRS_00_t,  Common_Timeslot_Reconfigure_Data.DOWNLINK_TFI_ASSIGNMENT, 5, &hf_downlink_tfi),
4708 
4709   M_NEXT_EXIST (PTR_EGPRS_00_t, Common_Timeslot_Reconfigure_Data.Exist_UPLINK_TFI_ASSIGNMENT, 1, &hf_ptr_egprs_00_common_timeslot_reconfigure_data_exist_uplink_tfi_assignment_exist),
4710   M_UINT       (PTR_EGPRS_00_t,  Common_Timeslot_Reconfigure_Data.UPLINK_TFI_ASSIGNMENT, 5, &hf_uplink_tfi),
4711 
4712   M_UINT       (PTR_EGPRS_00_t,  Common_Timeslot_Reconfigure_Data.DOWNLINK_TIMESLOT_ALLOCATION, 8, &hf_dl_timeslot_allocation),
4713 
4714   M_NEXT_EXIST (PTR_EGPRS_00_t, Common_Timeslot_Reconfigure_Data.Exist_Frequency_Parameters, 1, &hf_ptr_egprs_00_common_timeslot_reconfigure_data_exist_frequency_parameters_exist),
4715   M_TYPE       (PTR_EGPRS_00_t, Common_Timeslot_Reconfigure_Data.Frequency_Parameters, Frequency_Parameters_t),
4716 
4717   M_UNION      (PTR_EGPRS_00_t, 2, &hf_dynamic_allocation),
4718   M_TYPE       (PTR_EGPRS_00_t, u.Dynamic_Allocation, TRDynamic_Allocation_t),
4719   CSN_ERROR    (PTR_EGPRS_00_t, "1 <Fixed Allocation>", CSN_ERROR_STREAM_NOT_SUPPORTED, &ei_gsm_rlcmac_stream_not_supported),
4720 CSN_DESCR_END  (PTR_EGPRS_00_t)
4721 
4722 static const
4723 CSN_DESCR_BEGIN(PTR_EGPRS_t)
4724   M_UNION      (PTR_EGPRS_t, 4, &hf_ptr_egprs),
4725   M_TYPE       (PTR_EGPRS_t, u.PTR_EGPRS_00, PTR_EGPRS_00_t),
4726   CSN_ERROR    (PTR_EGPRS_t, "01 <PTR_EGPRS>", CSN_ERROR_STREAM_NOT_SUPPORTED, &ei_gsm_rlcmac_stream_not_supported),
4727   CSN_ERROR    (PTR_EGPRS_t, "10 <PTR_EGPRS>", CSN_ERROR_STREAM_NOT_SUPPORTED, &ei_gsm_rlcmac_stream_not_supported),
4728   CSN_ERROR    (PTR_EGPRS_t, "11 <PTR_EGPRS>", CSN_ERROR_STREAM_NOT_SUPPORTED, &ei_gsm_rlcmac_stream_not_supported),
4729 CSN_DESCR_END  (PTR_EGPRS_t)
4730 
4731 static const
4732 CSN_DESCR_BEGIN(Packet_Timeslot_Reconfigure_t)
4733   M_UINT       (Packet_Timeslot_Reconfigure_t, MESSAGE_TYPE, 6, &hf_dl_message_type),
4734   M_UINT       (Packet_Timeslot_Reconfigure_t, PAGE_MODE, 2, &hf_page_mode),
4735 
4736   M_FIXED      (Packet_Timeslot_Reconfigure_t, 1, 0x00, &hf_packet_timeslot_reconfigure),
4737   M_TYPE       (Packet_Timeslot_Reconfigure_t, Global_TFI, Global_TFI_t),
4738 
4739   M_UNION      (Packet_Timeslot_Reconfigure_t, 2, &hf_packet_timeslot_reconfigure),
4740   M_TYPE       (Packet_Timeslot_Reconfigure_t, u.PTR_GPRS_Struct, PTR_GPRS_t),
4741   M_TYPE       (Packet_Timeslot_Reconfigure_t, u.PTR_EGPRS_Struct, PTR_EGPRS_t),
4742 
4743   M_PADDING_BITS(Packet_Timeslot_Reconfigure_t, &hf_padding),
4744 CSN_DESCR_END  (Packet_Timeslot_Reconfigure_t)
4745 
4746 typedef Packet_Timeslot_Reconfigure_t PTRCheck_t;
4747 
4748 #if 0
4749 static const
4750 CSN_DESCR_BEGIN(PTRCheck_t)
4751   M_UINT       (PTRCheck_t, MESSAGE_TYPE, 6, &hf_dl_message_type),
4752   M_UINT       (PTRCheck_t, PAGE_MODE, 2, &hf_page_mode),
4753   M_FIXED      (PTRCheck_t, 1, 0x00),/* 0 fixed */
4754   M_TYPE       (PTRCheck_t, Global_TFI, Global_TFI_t),
4755 CSN_DESCR_END  (PTRCheck_t)
4756 #endif
4757 
4758 /* < Packet PRACH Parameters message content > */
4759 static const
CSN_DESCR_BEGIN(PRACH_Control_t)4760 CSN_DESCR_BEGIN(PRACH_Control_t)
4761   M_UINT_ARRAY (PRACH_Control_t, ACC_CONTR_CLASS, 8, 2, &hf_prach_acc_contr_class), /* bit (16) == 8bit*2 */
4762   M_UINT_ARRAY (PRACH_Control_t, MAX_RETRANS, 2, 4, &hf_prach_max_retrans), /* bit (2) * 4 */
4763   M_UINT       (PRACH_Control_t,  S,  4, &hf_prach_control_s),
4764   M_UINT       (PRACH_Control_t,  TX_INT,  4, &hf_prach_control_tx_int),
4765   M_NEXT_EXIST (PRACH_Control_t, Exist_PERSISTENCE_LEVEL, 1, &hf_dl_persistent_level_exist),
4766   M_UINT_ARRAY (PRACH_Control_t, PERSISTENCE_LEVEL, 4, 4, &hf_dl_persistent_level),
4767 CSN_DESCR_END  (PRACH_Control_t)
4768 
4769 static const
4770 CSN_DESCR_BEGIN(Cell_Allocation_t)
4771   M_REC_ARRAY  (Cell_Allocation_t, RFL_Number, NoOfRFLs, 4, &hf_cell_allocation_rfl_number, &hf_cell_allocation_rfl_number_exist),
4772 CSN_DESCR_END  (Cell_Allocation_t)
4773 
4774 static const
4775 CSN_DESCR_BEGIN(HCS_t)
4776   M_UINT       (HCS_t,  PRIORITY_CLASS,  3, &hf_hcs_priority_class),
4777   M_UINT       (HCS_t,  HCS_THR,  5, &hf_hcs_hcs_thr),
4778 CSN_DESCR_END  (HCS_t)
4779 
4780 static const
4781 CSN_DESCR_BEGIN(Location_Repeat_t)
4782   M_UINT       (Location_Repeat_t,  PBCCH_LOCATION,  2, &hf_location_repeat_pbcch_location),
4783   M_UINT       (Location_Repeat_t,  PSI1_REPEAT_PERIOD,  4, &hf_location_repeat_psi1_repeat_period),
4784 CSN_DESCR_END  (Location_Repeat_t)
4785 
4786 static const
4787 CSN_DESCR_BEGIN(SI13_PBCCH_Location_t)
4788   M_UNION      (SI13_PBCCH_Location_t, 2, &hf_si_pbcch_location),
4789   M_UINT       (SI13_PBCCH_Location_t,  u.SI13_LOCATION,  1, &hf_si13_pbcch_location_si13_location),
4790   M_TYPE       (SI13_PBCCH_Location_t, u.lr, Location_Repeat_t),
4791 CSN_DESCR_END  (SI13_PBCCH_Location_t)
4792 
4793 static const
4794 CSN_DESCR_BEGIN(Cell_Selection_t)
4795   M_UINT       (Cell_Selection_t,  BSIC,  6, &hf_cell_selection_bsic),
4796   M_UINT       (Cell_Selection_t,  CELL_BAR_ACCESS_2,  1, &hf_cell_bar_access_2),
4797   M_UINT       (Cell_Selection_t,  EXC_ACC,  1, &hf_exc_acc),
4798   M_UINT       (Cell_Selection_t,  SAME_RA_AS_SERVING_CELL,  1, &hf_cell_selection_same_ra_as_serving_cell),
4799   M_NEXT_EXIST (Cell_Selection_t, Exist_RXLEV_and_TXPWR, 2, &hf_cell_selection_rxlev_and_txpwr_exist),
4800   M_UINT       (Cell_Selection_t,  GPRS_RXLEV_ACCESS_MIN,  6, &hf_cell_selection_gprs_rxlev_access_min),
4801   M_UINT       (Cell_Selection_t,  GPRS_MS_TXPWR_MAX_CCH,  5, &hf_cell_selection_gprs_ms_txpwr_max_cch),
4802   M_NEXT_EXIST (Cell_Selection_t, Exist_OFFSET_and_TIME, 2, &hf_cell_selection_offset_and_time_exist),
4803   M_UINT       (Cell_Selection_t,  GPRS_TEMPORARY_OFFSET,  3, &hf_cell_selection_gprs_temporary_offset),
4804   M_UINT       (Cell_Selection_t,  GPRS_PENALTY_TIME,  5, &hf_cell_selection_gprs_penalty_time),
4805   M_NEXT_EXIST (Cell_Selection_t, Exist_GPRS_RESELECT_OFFSET, 1, &hf_cell_selection_gprs_reselect_offset_exist),
4806   M_UINT       (Cell_Selection_t,  GPRS_RESELECT_OFFSET,  5, &hf_cell_selection_gprs_reselect_offset),
4807   M_NEXT_EXIST (Cell_Selection_t, Exist_HCS, 1, &hf_cell_selection_hcs_exist),
4808   M_TYPE       (Cell_Selection_t, HCS, HCS_t),
4809   M_NEXT_EXIST (Cell_Selection_t, Exist_SI13_PBCCH_Location, 1, &hf_cell_selection_si13_pbcch_location_exist),
4810   M_TYPE       (Cell_Selection_t, SI13_PBCCH_Location, SI13_PBCCH_Location_t),
4811 CSN_DESCR_END  (Cell_Selection_t)
4812 
4813 static const
4814 CSN_DESCR_BEGIN(Cell_Selection_Params_With_FreqDiff_t)
4815   M_VAR_BITMAP (Cell_Selection_Params_With_FreqDiff_t, FREQUENCY_DIFF, FREQ_DIFF_LENGTH, 0, &hf_cell_selection_param_with_freqdiff),
4816   M_TYPE       (Cell_Selection_Params_With_FreqDiff_t, Cell_SelectionParams, Cell_Selection_t),
4817 CSN_DESCR_END  (Cell_Selection_Params_With_FreqDiff_t)
4818 
4819 static CSN_CallBackStatus_t callback_init_Cell_Selection_Params_FREQUENCY_DIFF(proto_tree *tree _U_, tvbuff_t *tvb _U_, void* param1, void* param2,
4820                                                                                int bit_offset _U_, int ett_csn1 _U_, packet_info* pinfo _U_)
4821 {
4822   guint  i;
4823   guint8 freq_diff_len = *(guint8*)param1;
4824   Cell_Selection_Params_With_FreqDiff_t *pCell_Sel_Param = (Cell_Selection_Params_With_FreqDiff_t*)param2;
4825 
4826   for( i=0; i<16; i++, pCell_Sel_Param++ )
4827   {
4828     pCell_Sel_Param->FREQ_DIFF_LENGTH = freq_diff_len;
4829   }
4830 
4831   return 0;
4832 }
4833 
4834 static const
4835 CSN_DESCR_BEGIN(NeighbourCellParameters_t)
4836   M_UINT       (NeighbourCellParameters_t,  START_FREQUENCY,  10, &hf_neighbourcellparameters_start_frequency),
4837   M_TYPE       (NeighbourCellParameters_t, Cell_Selection, Cell_Selection_t),
4838   M_UINT       (NeighbourCellParameters_t,  NR_OF_REMAINING_CELLS,  4, &hf_neighbourcellparameters_nr_of_remaining_cells),
4839   M_UINT_OFFSET(NeighbourCellParameters_t, FREQ_DIFF_LENGTH, 3, 1, &hf_neighbourcellparameters_freq_diff_length),/* offset 1 */
4840   M_CALLBACK   (NeighbourCellParameters_t, callback_init_Cell_Selection_Params_FREQUENCY_DIFF, FREQ_DIFF_LENGTH, Cell_Selection_Params_With_FreqDiff),
4841   M_VAR_TARRAY (NeighbourCellParameters_t, Cell_Selection_Params_With_FreqDiff, Cell_Selection_Params_With_FreqDiff_t, NR_OF_REMAINING_CELLS),
4842 CSN_DESCR_END  (NeighbourCellParameters_t)
4843 
4844 static const
4845 CSN_DESCR_BEGIN(NeighbourCellList_t)
4846   M_REC_TARRAY (NeighbourCellList_t, Parameters, NeighbourCellParameters_t, Count, &hf_neighbourcelllist_parameters_exist),
4847 CSN_DESCR_END  (NeighbourCellList_t)
4848 
4849 static const
4850 CSN_DESCR_BEGIN(Cell_Selection_2_t)
4851   M_UINT       (Cell_Selection_2_t,  CELL_BAR_ACCESS_2,  1, &hf_cell_bar_access_2),
4852   M_UINT       (Cell_Selection_2_t,  EXC_ACC,  1, &hf_exc_acc),
4853   M_UINT       (Cell_Selection_2_t,  SAME_RA_AS_SERVING_CELL,  1, &hf_cell_selection_2_same_ra_as_serving_cell),
4854   M_NEXT_EXIST (Cell_Selection_2_t, Exist_RXLEV_and_TXPWR, 2, &hf_cell_selection_2_rxlev_and_txpwr_exist),
4855   M_UINT       (Cell_Selection_2_t,  GPRS_RXLEV_ACCESS_MIN,  6, &hf_cell_selection_2_gprs_rxlev_access_min),
4856   M_UINT       (Cell_Selection_2_t,  GPRS_MS_TXPWR_MAX_CCH,  5, &hf_cell_selection_2_gprs_ms_txpwr_max_cch),
4857   M_NEXT_EXIST (Cell_Selection_2_t, Exist_OFFSET_and_TIME, 2, &hf_cell_selection_2_offset_and_time_exist),
4858   M_UINT       (Cell_Selection_2_t,  GPRS_TEMPORARY_OFFSET,  3, &hf_cell_selection_2_gprs_temporary_offset),
4859   M_UINT       (Cell_Selection_2_t,  GPRS_PENALTY_TIME,  5, &hf_cell_selection_2_gprs_penalty_time),
4860   M_NEXT_EXIST (Cell_Selection_2_t, Exist_GPRS_RESELECT_OFFSET, 1, &hf_cell_selection_2_gprs_reselect_offset_exist),
4861   M_UINT       (Cell_Selection_2_t,  GPRS_RESELECT_OFFSET,  5, &hf_cell_selection_2_gprs_reselect_offset),
4862   M_NEXT_EXIST (Cell_Selection_2_t, Exist_HCS, 1, &hf_cell_selection_2_hcs_exist),
4863   M_TYPE       (Cell_Selection_2_t, HCS, HCS_t),
4864   M_NEXT_EXIST (Cell_Selection_2_t, Exist_SI13_PBCCH_Location, 1, &hf_cell_selection_2_si13_pbcch_location_exist),
4865   M_TYPE       (Cell_Selection_2_t, SI13_PBCCH_Location, SI13_PBCCH_Location_t),
4866 CSN_DESCR_END  (Cell_Selection_2_t)
4867 
4868 static const
4869 CSN_DESCR_BEGIN(Packet_PRACH_Parameters_t)
4870   M_UINT       (Packet_PRACH_Parameters_t, MESSAGE_TYPE, 6, &hf_dl_message_type),
4871   M_UINT       (Packet_PRACH_Parameters_t, PAGE_MODE, 2, &hf_page_mode),
4872 
4873   M_TYPE       (Packet_PRACH_Parameters_t, PRACH_Control, PRACH_Control_t),
4874   M_PADDING_BITS(Packet_PRACH_Parameters_t, &hf_padding),
4875 CSN_DESCR_END  (Packet_PRACH_Parameters_t)
4876 
4877 /* < Packet Access Reject message content > */
4878 static const
4879 CSN_ChoiceElement_t RejectID[] =
4880 {
4881   {1, 0x00, 0, M_UINT(RejectID_t, u.TLLI, 32, &hf_tlli)},
4882   {2, 0x02, 0, M_TYPE(RejectID_t, u.Packet_Request_Reference, Packet_Request_Reference_t)},
4883   {2, 0x03, 0, M_TYPE(RejectID_t, u.Global_TFI, Global_TFI_t)},
4884 };
4885 
4886 static const
4887 CSN_DESCR_BEGIN(RejectID_t)
4888   M_CHOICE     (RejectID_t, UnionType, RejectID, ElementsOf(RejectID), &hf_reject_id_choice),
4889 CSN_DESCR_END  (RejectID_t)
4890 
4891 static const
4892 CSN_DESCR_BEGIN(Reject_t)
4893   M_TYPE       (Reject_t, ID, RejectID_t),
4894 
4895   M_NEXT_EXIST (Reject_t, Exist_Wait, 2, &hf_reject_wait_exist),
4896   M_UINT       (Reject_t,  WAIT_INDICATION,  8, &hf_reject_wait_indication),
4897   M_UINT       (Reject_t,  WAIT_INDICATION_SIZE,  1, &hf_reject_wait_indication_size),
4898 CSN_DESCR_END  (Reject_t)
4899 
4900 static const
4901 CSN_DESCR_BEGIN(Packet_Access_Reject_t)
4902   M_UINT       (Packet_Access_Reject_t, MESSAGE_TYPE, 6, &hf_dl_message_type),
4903   M_UINT       (Packet_Access_Reject_t, PAGE_MODE, 2, &hf_page_mode),
4904 
4905   M_REC_TARRAY_1(Packet_Access_Reject_t, Reject, Reject_t, Count_Reject, &hf_packet_access_reject_reject_exist),
4906   M_PADDING_BITS(Packet_Access_Reject_t, &hf_padding),
4907 CSN_DESCR_END  (Packet_Access_Reject_t)
4908 
4909 /* < Packet Cell Change Order message content > */
4910 static const
4911 CSN_ChoiceElement_t PacketCellChangeOrderID[] =
4912 {
4913   {1, 0,    0, M_TYPE(PacketCellChangeOrderID_t, u.Global_TFI, Global_TFI_t)},
4914   {2, 0x02, 0, M_UINT(PacketCellChangeOrderID_t, u.TLLI, 32, &hf_tlli)},
4915 };
4916 /* PacketCellChangeOrderID_t; */
4917 
4918 static const
CSN_DESCR_BEGIN(PacketCellChangeOrderID_t)4919 CSN_DESCR_BEGIN(PacketCellChangeOrderID_t)
4920   M_CHOICE     (PacketCellChangeOrderID_t, UnionType, PacketCellChangeOrderID, ElementsOf(PacketCellChangeOrderID), &hf_packet_cell_change_order_id_choice),
4921 CSN_DESCR_END  (PacketCellChangeOrderID_t)
4922 
4923 #if 0
4924 static const
4925 CSN_DESCR_BEGIN(h_FreqBsicCell_t)
4926   M_UINT       (h_FreqBsicCell_t,  BSIC,  6, &hf_h_freqbsiccell_bsic),
4927   M_TYPE       (h_FreqBsicCell_t, Cell_Selection, Cell_Selection_t),
4928 CSN_DESCR_END  (h_FreqBsicCell_t)
4929 #endif
4930 
4931 static const CSN_DESCR_BEGIN(CellSelectionParamsWithFreqDiff_t)
4932   /*FREQUENCY_DIFF is really an integer but the number of bits to decode it are stored in FREQ_DIFF_LENGTH*/
4933   M_VAR_BITMAP (CellSelectionParamsWithFreqDiff_t, FREQUENCY_DIFF, FREQ_DIFF_LENGTH, 0, &hf_cell_selection_param_with_freqdiff),
4934   M_UINT       (CellSelectionParamsWithFreqDiff_t,  BSIC,  6, &hf_cellselectionparamswithfreqdiff_bsic),
4935   M_NEXT_EXIST (CellSelectionParamsWithFreqDiff_t, Exist_CellSelectionParams, 1, &hf_cellselectionparamswithfreqdiff_cellselectionparams_exist),
4936   M_TYPE       (CellSelectionParamsWithFreqDiff_t, CellSelectionParams, Cell_Selection_2_t),
4937 CSN_DESCR_END  (CellSelectionParamsWithFreqDiff_t)
4938 
4939 
4940 static CSN_CallBackStatus_t callback_init_Cell_Sel_Param_2_FREQUENCY_DIFF(proto_tree *tree _U_, tvbuff_t *tvb _U_, void* param1, void* param2,
4941                                                                           int bit_offset _U_, int ett_csn1 _U_, packet_info* pinfo _U_)
4942 {
4943   guint  i;
4944   guint8 freq_diff_len = *(guint8*)param1;
4945   CellSelectionParamsWithFreqDiff_t *pCell_Sel_Param = (CellSelectionParamsWithFreqDiff_t*)param2;
4946 
4947   for( i=0; i<16; i++, pCell_Sel_Param++ )
4948   {
4949     pCell_Sel_Param->FREQ_DIFF_LENGTH = freq_diff_len;
4950   }
4951 
4952   return 0;
4953 }
4954 
4955 
4956 static const
4957 CSN_DESCR_BEGIN(Add_Frequency_list_t)
4958   M_UINT       (Add_Frequency_list_t,  START_FREQUENCY,  10, &hf_add_frequency_list_start_frequency),
4959   M_UINT       (Add_Frequency_list_t,  BSIC,  6, &hf_add_frequency_list_bsic),
4960 
4961   M_NEXT_EXIST (Add_Frequency_list_t, Exist_Cell_Selection, 1, &hf_add_frequency_list_cell_selection_exist),
4962   M_TYPE       (Add_Frequency_list_t, Cell_Selection, Cell_Selection_2_t),
4963 
4964   M_UINT       (Add_Frequency_list_t,  NR_OF_FREQUENCIES,  5, &hf_add_frequency_list_nr_of_frequencies),
4965   M_UINT_OFFSET(Add_Frequency_list_t, FREQ_DIFF_LENGTH, 3, 1, &hf_add_frequency_list_freq_diff_length),/*offset 1*/
4966 
4967   M_CALLBACK   (Add_Frequency_list_t, callback_init_Cell_Sel_Param_2_FREQUENCY_DIFF, FREQ_DIFF_LENGTH, CellSelectionParamsWithFreqDiff),
4968 
4969   M_VAR_TARRAY (Add_Frequency_list_t, CellSelectionParamsWithFreqDiff, CellSelectionParamsWithFreqDiff_t, NR_OF_FREQUENCIES),
4970 CSN_DESCR_END  (Add_Frequency_list_t)
4971 
4972 static const CSN_DESCR_BEGIN(Removed_Freq_Index_t)
4973   M_UINT(Removed_Freq_Index_t, REMOVED_FREQ_INDEX, 6, &hf_removed_freq_index_removed_freq_index),
4974 CSN_DESCR_END(Removed_Freq_Index_t)
4975 
4976 static const
4977 CSN_DESCR_BEGIN(NC_Frequency_list_t)
4978   M_NEXT_EXIST (NC_Frequency_list_t, Exist_REMOVED_FREQ, 2, &hf_nc_frequency_list_removed_freq_exist),
4979   M_UINT_OFFSET(NC_Frequency_list_t, NR_OF_REMOVED_FREQ, 5, 1, &hf_nc_frequency_list_nr_of_removed_freq),/*offset 1*/
4980   M_VAR_TARRAY (NC_Frequency_list_t, Removed_Freq_Index, Removed_Freq_Index_t, NR_OF_REMOVED_FREQ),
4981   M_REC_TARRAY (NC_Frequency_list_t, Add_Frequency, Add_Frequency_list_t, Count_Add_Frequency, &hf_nc_frequency_list_add_frequency_exist),
4982 CSN_DESCR_END  (NC_Frequency_list_t)
4983 
4984 static const
4985 CSN_DESCR_BEGIN(NC_Measurement_Parameters_t)
4986   M_UINT       (NC_Measurement_Parameters_t,  NETWORK_CONTROL_ORDER,  2, &hf_nc_measurement_parameters_network_control_order),
4987 
4988   M_NEXT_EXIST (NC_Measurement_Parameters_t, Exist_NC, 3, &hf_nc_measurement_parameters_nc_exist),
4989   M_UINT       (NC_Measurement_Parameters_t,  NC_NON_DRX_PERIOD,  3, &hf_nc_measurement_parameters_nc_non_drx_period),
4990   M_UINT       (NC_Measurement_Parameters_t,  NC_REPORTING_PERIOD_I,  3, &hf_nc_measurement_parameters_nc_reporting_period_i),
4991   M_UINT       (NC_Measurement_Parameters_t,  NC_REPORTING_PERIOD_T,  3, &hf_nc_measurement_parameters_nc_reporting_period_t),
4992 CSN_DESCR_END  (NC_Measurement_Parameters_t)
4993 
4994 static const
4995 CSN_DESCR_BEGIN(NC_Measurement_Parameters_with_Frequency_List_t)
4996   M_UINT       (NC_Measurement_Parameters_with_Frequency_List_t,  NETWORK_CONTROL_ORDER,  2, &hf_nc_measurement_parameters_with_frequency_list_network_control_order),
4997 
4998   M_NEXT_EXIST (NC_Measurement_Parameters_with_Frequency_List_t, Exist_NC, 3, &hf_nc_measurement_parameters_with_frequency_list_nc_exist),
4999   M_UINT       (NC_Measurement_Parameters_with_Frequency_List_t,  NC_NON_DRX_PERIOD,  3, &hf_nc_measurement_parameters_with_frequency_list_nc_non_drx_period),
5000   M_UINT       (NC_Measurement_Parameters_with_Frequency_List_t,  NC_REPORTING_PERIOD_I,  3, &hf_nc_measurement_parameters_with_frequency_list_nc_reporting_period_i),
5001   M_UINT       (NC_Measurement_Parameters_with_Frequency_List_t,  NC_REPORTING_PERIOD_T,  3, &hf_nc_measurement_parameters_with_frequency_list_nc_reporting_period_t),
5002 
5003   M_NEXT_EXIST (NC_Measurement_Parameters_with_Frequency_List_t, Exist_NC_FREQUENCY_LIST, 1, &hf_nc_measurement_parameters_with_frequency_list_nc_frequency_list_exist),
5004   M_TYPE       (NC_Measurement_Parameters_with_Frequency_List_t, NC_Frequency_list, NC_Frequency_list_t),
5005 CSN_DESCR_END  (NC_Measurement_Parameters_with_Frequency_List_t)
5006 
5007 /* < Packet Cell Change Order message contents > */
5008 static const
5009 CSN_DESCR_BEGIN(BA_IND_t)
5010   M_UINT       (BA_IND_t,  BA_IND,  1, &hf_ba_ind_ba_ind),
5011   M_UINT       (BA_IND_t,  BA_IND_3G,  1, &hf_ba_ind_ba_ind_3g),
5012 CSN_DESCR_END  (BA_IND_t)
5013 
5014 static const
5015 CSN_DESCR_BEGIN(GPRSReportPriority_t)
5016   M_UINT       (GPRSReportPriority_t,  NUMBER_CELLS,  7, &hf_gprsreportpriority_number_cells),
5017   M_VAR_BITMAP (GPRSReportPriority_t, REPORT_PRIORITY, NUMBER_CELLS, 0, &hf_gprsreportpriority_report_priority),
5018 CSN_DESCR_END  (GPRSReportPriority_t)
5019 
5020 static const
5021 CSN_DESCR_BEGIN(OffsetThreshold_t)
5022   M_UINT       (OffsetThreshold_t,  REPORTING_OFFSET,  3, &hf_offsetthreshold_reporting_offset),
5023   M_UINT       (OffsetThreshold_t,  REPORTING_THRESHOLD,  3, &hf_offsetthreshold_reporting_threshold),
5024 CSN_DESCR_END  (OffsetThreshold_t)
5025 
5026 static const
5027 CSN_DESCR_BEGIN(GPRSMeasurementParams_PMO_PCCO_t)
5028   M_NEXT_EXIST (GPRSMeasurementParams_PMO_PCCO_t, Exist_MULTI_BAND_REPORTING, 1, &hf_gprsmeasurementparams_pmo_pcco_multi_band_reporting_exist),
5029   M_UINT       (GPRSMeasurementParams_PMO_PCCO_t,  MULTI_BAND_REPORTING,  2, &hf_gprsmeasurementparams_pmo_pcco_multi_band_reporting),
5030 
5031   M_NEXT_EXIST (GPRSMeasurementParams_PMO_PCCO_t, Exist_SERVING_BAND_REPORTING, 1, &hf_gprsmeasurementparams_pmo_pcco_serving_band_reporting_exist),
5032   M_UINT       (GPRSMeasurementParams_PMO_PCCO_t,  SERVING_BAND_REPORTING,  2, &hf_gprsmeasurementparams_pmo_pcco_serving_band_reporting),
5033 
5034   M_UINT       (GPRSMeasurementParams_PMO_PCCO_t,  SCALE_ORD,  2, &hf_gprsmeasurementparams_pmo_pcco_scale_ord),
5035 
5036   M_NEXT_EXIST (GPRSMeasurementParams_PMO_PCCO_t, Exist_OffsetThreshold900, 1, &hf_gprsmeasurementparams_pmo_pcco_offsetthreshold900_exist),
5037   M_TYPE       (GPRSMeasurementParams_PMO_PCCO_t, OffsetThreshold900, OffsetThreshold_t),
5038 
5039   M_NEXT_EXIST (GPRSMeasurementParams_PMO_PCCO_t, Exist_OffsetThreshold1800, 1, &hf_gprsmeasurementparams_pmo_pcco_offsetthreshold1800_exist),
5040   M_TYPE       (GPRSMeasurementParams_PMO_PCCO_t, OffsetThreshold1800, OffsetThreshold_t),
5041 
5042   M_NEXT_EXIST (GPRSMeasurementParams_PMO_PCCO_t, Exist_OffsetThreshold400, 1, &hf_gprsmeasurementparams_pmo_pcco_offsetthreshold400_exist),
5043   M_TYPE       (GPRSMeasurementParams_PMO_PCCO_t, OffsetThreshold400, OffsetThreshold_t),
5044 
5045   M_NEXT_EXIST (GPRSMeasurementParams_PMO_PCCO_t, Exist_OffsetThreshold1900, 1, &hf_gprsmeasurementparams_pmo_pcco_offsetthreshold1900_exist),
5046   M_TYPE       (GPRSMeasurementParams_PMO_PCCO_t, OffsetThreshold1900, OffsetThreshold_t),
5047 
5048   M_NEXT_EXIST (GPRSMeasurementParams_PMO_PCCO_t, Exist_OffsetThreshold850, 1, &hf_gprsmeasurementparams_pmo_pcco_offsetthreshold850_exist),
5049   M_TYPE       (GPRSMeasurementParams_PMO_PCCO_t, OffsetThreshold850, OffsetThreshold_t),
5050 CSN_DESCR_END  (GPRSMeasurementParams_PMO_PCCO_t)
5051 
5052 #if 0
5053 static const
5054 CSN_DESCR_BEGIN(GPRSMeasurementParams3G_t)
5055   M_UINT       (GPRSMeasurementParams3G_t,  Qsearch_p,  4, &hf_gprsmeasurementparams3g_qsearch_p),
5056   M_UINT       (GPRSMeasurementParams3G_t,  SearchPrio3G,  1, &hf_gprsmeasurementparams3g_searchprio3g),
5057 
5058   M_NEXT_EXIST (GPRSMeasurementParams3G_t, existRepParamsFDD, 2),
5059   M_UINT       (GPRSMeasurementParams3G_t,  RepQuantFDD,  1, &hf_gprsmeasurementparams3g_repquantfdd),
5060   M_UINT       (GPRSMeasurementParams3G_t,  MultiratReportingFDD,  2, &hf_gprsmeasurementparams3g_multiratreportingfdd),
5061 
5062   M_NEXT_EXIST (GPRSMeasurementParams3G_t, existReportingParamsFDD, 2),
5063   M_UINT       (GPRSMeasurementParams3G_t,  ReportingOffsetFDD,  3, &hf_gprsmeasurementparams3g_reportingoffsetfdd),
5064   M_UINT       (GPRSMeasurementParams3G_t,  ReportingThresholdFDD,  3, &hf_gprsmeasurementparams3g_reportingthresholdfdd),
5065 
5066   M_NEXT_EXIST (GPRSMeasurementParams3G_t, existMultiratReportingTDD, 1),
5067   M_UINT       (GPRSMeasurementParams3G_t,  MultiratReportingTDD,  2, &hf_gprsmeasurementparams3g_multiratreportingtdd),
5068 
5069   M_NEXT_EXIST (GPRSMeasurementParams3G_t, existOffsetThresholdTDD, 2),
5070   M_UINT       (GPRSMeasurementParams3G_t,  ReportingOffsetTDD,  3, &hf_gprsmeasurementparams3g_reportingoffsettdd),
5071   M_UINT       (GPRSMeasurementParams3G_t,  ReportingThresholdTDD,  3, &hf_gprsmeasurementparams3g_reportingthresholdtdd),
5072 CSN_DESCR_END  (GPRSMeasurementParams3G_t)
5073 #endif
5074 
5075 static const
5076 CSN_DESCR_BEGIN(MultiratParams3G_t)
5077   M_NEXT_EXIST (MultiratParams3G_t, existMultiratReporting, 1, &hf_multiratparams3g_existmultiratreporting_exist),
5078   M_UINT       (MultiratParams3G_t,  MultiratReporting,  2, &hf_multiratparams3g_multiratreporting),
5079 
5080   M_NEXT_EXIST (MultiratParams3G_t, existOffsetThreshold, 1, &hf_multiratparams3g_existoffsetthreshold_exist),
5081   M_TYPE       (MultiratParams3G_t, OffsetThreshold, OffsetThreshold_t),
5082 CSN_DESCR_END  (MultiratParams3G_t)
5083 
5084 static const
5085 CSN_DESCR_BEGIN(ENH_GPRSMeasurementParams3G_PMO_t)
5086   M_UINT       (ENH_GPRSMeasurementParams3G_PMO_t,  Qsearch_P,  4, &hf_enh_gprsmeasurementparams3g_pmo_qsearch_p),
5087   M_UINT       (ENH_GPRSMeasurementParams3G_PMO_t,  SearchPrio3G,  1, &hf_enh_gprsmeasurementparams3g_pmo_searchprio3g),
5088 
5089   M_NEXT_EXIST (ENH_GPRSMeasurementParams3G_PMO_t, existRepParamsFDD, 2, &hf_enh_gprsmeasurementparams3g_pmo_existrepparamsfdd_exist),
5090   M_UINT       (ENH_GPRSMeasurementParams3G_PMO_t,  RepQuantFDD,  1, &hf_enh_gprsmeasurementparams3g_pmo_repquantfdd),
5091   M_UINT       (ENH_GPRSMeasurementParams3G_PMO_t,  MultiratReportingFDD,  2, &hf_enh_gprsmeasurementparams3g_pmo_multiratreportingfdd),
5092 
5093   M_NEXT_EXIST (ENH_GPRSMeasurementParams3G_PMO_t, existOffsetThreshold, 1, &hf_enh_gprsmeasurementparams3g_pmo_existoffsetthreshold_exist),
5094   M_TYPE       (ENH_GPRSMeasurementParams3G_PMO_t, OffsetThreshold, OffsetThreshold_t),
5095 
5096   M_TYPE       (ENH_GPRSMeasurementParams3G_PMO_t, ParamsTDD, MultiratParams3G_t),
5097   M_TYPE       (ENH_GPRSMeasurementParams3G_PMO_t, ParamsCDMA2000, MultiratParams3G_t),
5098 CSN_DESCR_END  (ENH_GPRSMeasurementParams3G_PMO_t)
5099 
5100 static const
5101 CSN_DESCR_BEGIN(ENH_GPRSMeasurementParams3G_PCCO_t)
5102   M_UINT       (ENH_GPRSMeasurementParams3G_PCCO_t,  Qsearch_P,  4, &hf_enh_gprsmeasurementparams3g_pcco_qsearch_p),
5103   M_UINT       (ENH_GPRSMeasurementParams3G_PCCO_t,  SearchPrio3G,  1, &hf_enh_gprsmeasurementparams3g_pcco_searchprio3g),
5104 
5105   M_NEXT_EXIST (ENH_GPRSMeasurementParams3G_PCCO_t, existRepParamsFDD, 2, &hf_enh_gprsmeasurementparams3g_pcco_existrepparamsfdd_exist),
5106   M_UINT       (ENH_GPRSMeasurementParams3G_PCCO_t,  RepQuantFDD,  1, &hf_enh_gprsmeasurementparams3g_pcco_repquantfdd),
5107   M_UINT       (ENH_GPRSMeasurementParams3G_PCCO_t,  MultiratReportingFDD,  2, &hf_enh_gprsmeasurementparams3g_pcco_multiratreportingfdd),
5108 
5109   M_NEXT_EXIST (ENH_GPRSMeasurementParams3G_PCCO_t, existOffsetThreshold, 1, &hf_enh_gprsmeasurementparams3g_pcco_existoffsetthreshold_exist),
5110   M_TYPE       (ENH_GPRSMeasurementParams3G_PCCO_t, OffsetThreshold, OffsetThreshold_t),
5111 
5112   M_TYPE       (ENH_GPRSMeasurementParams3G_PCCO_t, ParamsTDD, MultiratParams3G_t),
5113 CSN_DESCR_END  (ENH_GPRSMeasurementParams3G_PCCO_t)
5114 
5115 static const
5116 CSN_DESCR_BEGIN(N2_t)
5117   M_UINT       (N2_t,  REMOVED_3GCELL_INDEX,  7, &hf_n2_removed_3gcell_index),
5118   M_UINT       (N2_t,  CELL_DIFF_LENGTH_3G,  3, &hf_n2_cell_diff_length_3g),
5119   M_VAR_BITMAP (N2_t, CELL_DIFF_3G, CELL_DIFF_LENGTH_3G, 0, &hf_n2_cell_diff),
5120 CSN_DESCR_END  (N2_t)
5121 
5122 static const
5123 CSN_DESCR_BEGIN (N1_t)
5124   M_UINT_OFFSET (N1_t, N2_Count, 5, 1, &hf_n2_count), /*offset 1*/
5125   M_VAR_TARRAY  (N1_t, N2s, N2_t, N2_Count),
5126 CSN_DESCR_END   (N1_t)
5127 
5128 static const
5129 CSN_DESCR_BEGIN (Removed3GCellDescription_t)
5130   M_UINT_OFFSET (Removed3GCellDescription_t, N1_Count, 2, 1, &hf_n1_count),  /* offset 1 */
5131   M_VAR_TARRAY  (Removed3GCellDescription_t, N1s, N1_t, N1_Count),
5132 CSN_DESCR_END   (Removed3GCellDescription_t)
5133 
5134 static const
5135 CSN_DESCR_BEGIN(CDMA2000_Description_t)
5136   M_UINT       (CDMA2000_Description_t,  Complete_This,  1, &hf_cdma2000_description_complete_this),
5137   CSN_ERROR    (CDMA2000_Description_t, "Not Implemented", CSN_ERROR_STREAM_NOT_SUPPORTED, &ei_gsm_rlcmac_stream_not_supported),
5138 CSN_DESCR_END  (CDMA2000_Description_t)
5139 
5140 #if 0
5141 static const guint8 NR_OF_FDD_CELLS_map[32] = {0, 10, 19, 28, 36, 44, 52, 60, 67, 74, 81, 88, 95, 102, 109, 116, 122, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0};
5142 #endif
5143 #if 0
5144 static CSN_CallBackStatus_t callback_UTRAN_FDD_map_NrOfFrequencies(proto_tree *tree _U_, tvbuff_t *tvb _U_, void* param1, void* param2,
5145                                                                    int bit_offset _U_, int ett_csn1 _U_, packet_info* pinfo _U_)
5146 {   /* TS 44.060 Table 11.2.9b.2.a */
5147   guint8 *pNrOfCells = (guint8*)param1;
5148   guint8 *pBitsInCellInfo = (guint8*)param2;
5149 
5150   if ( *pNrOfCells < 32 )
5151   {
5152     *pBitsInCellInfo = NR_OF_FDD_CELLS_map[*pNrOfCells];
5153   }
5154   else
5155   {
5156     *pBitsInCellInfo = 0;
5157   }
5158 
5159   return 0;
5160 }
5161 
5162 static CSN_CallBackStatus_t callback_UTRAN_FDD_compute_FDD_CELL_INFORMATION(proto_tree *tree, tvbuff_t *tvb, void* param1, void* param2 _U_,
5163                                                                             int bit_offset, int ett_csn1, packet_info* pinfo _U_)
5164 {
5165   proto_tree   *subtree;
5166   UTRAN_FDD_NeighbourCells_t * pUtranFddNcell = (UTRAN_FDD_NeighbourCells_t*)param1;
5167   gint xdd_cell_info, wsize, nwi, jwi, w[64], i, iused;
5168   gint curr_bit_offset, idx;
5169 
5170   curr_bit_offset = bit_offset;
5171   idx = pUtranFddNcell->BitsInCellInfo;
5172 
5173   if ( idx > 0 )
5174   {
5175     subtree = proto_tree_add_subtree(tree, tvb, curr_bit_offset>>3, 1, ett_csn1, NULL, "FDD_CELL_INFORMATION: ");
5176 
5177     if (pUtranFddNcell->Indic0)
5178     {
5179       proto_tree_add_uint(tree, hf_gsm_rlcmac_scrambling_code, tvb, curr_bit_offset>>3, 0, 0);
5180       proto_tree_add_uint(tree, hf_gsm_rlcmac_diversity, tvb, curr_bit_offset>>3, 0, 0);
5181     }
5182 
5183     if (idx)
5184     {
5185       wsize = 10;
5186       nwi = 1;
5187       jwi = 0;
5188       i = 1;
5189 
5190       while (idx > 0)
5191       {
5192         w[i] = tvb_get_bits(tvb, curr_bit_offset, wsize, ENC_BIG_ENDIAN);
5193         curr_bit_offset += wsize;
5194         idx -= wsize;
5195         if (w[i] == 0)
5196         {
5197           idx = 0;
5198           break;
5199         }
5200         if (++jwi==nwi)
5201         {
5202           jwi = 0;
5203           nwi <<= 1;
5204           wsize--;
5205         }
5206         i++;
5207       }
5208       if (idx < 0)
5209       {
5210         curr_bit_offset += idx;
5211       }
5212       iused = i-1;
5213 
5214       for (i=1; i <= iused; i++)
5215       {
5216         xdd_cell_info = f_k(i, w, 1024);
5217         proto_tree_add_uint(subtree, hf_gsm_rlcmac_scrambling_code, tvb, curr_bit_offset>>3, 0, xdd_cell_info & 0x01FF);
5218         proto_tree_add_uint(subtree, hf_gsm_rlcmac_diversity, tvb, curr_bit_offset>>3, 0, (xdd_cell_info >> 9) & 0x01);
5219       }
5220     }
5221   }
5222 
5223   return curr_bit_offset - bit_offset;
5224 }
5225 #endif
5226 
5227 
5228 static const
5229 CSN_DESCR_BEGIN(UTRAN_FDD_NeighbourCells_t)
5230   M_UINT       (UTRAN_FDD_NeighbourCells_t,  ZERO,      1, &hf_utran_fdd_neighbourcells_zero),
5231   M_UINT       (UTRAN_FDD_NeighbourCells_t,  UARFCN,   14, &hf_utran_fdd_neighbourcells_uarfcn),
5232   M_UINT       (UTRAN_FDD_NeighbourCells_t,  Indic0,      1, &hf_utran_fdd_neighbourcells_indic0),
5233   M_UINT       (UTRAN_FDD_NeighbourCells_t,  NrOfCells,   5, &hf_utran_fdd_neighbourcells_nrofcells),
5234   M_VAR_BITMAP (UTRAN_FDD_NeighbourCells_t, CellInfo,  BitsInCellInfo, 0, &hf_utran_fdd_neighbourcells_cellinfo),
5235 CSN_DESCR_END  (UTRAN_FDD_NeighbourCells_t)
5236 
5237 static const
5238 CSN_DESCR_BEGIN(UTRAN_FDD_Description_t)
5239   M_NEXT_EXIST (UTRAN_FDD_Description_t, existBandwidth, 1, &hf_utran_fdd_description_existbandwidth_exist),
5240   M_UINT       (UTRAN_FDD_Description_t,  Bandwidth,       3, &hf_utran_fdd_description_bandwidth),
5241   M_REC_TARRAY (UTRAN_FDD_Description_t, CellParams, UTRAN_FDD_NeighbourCells_t, NrOfFrequencies, &hf_utran_fdd_description_cellparams_exist),
5242 CSN_DESCR_END  (UTRAN_FDD_Description_t)
5243 
5244 
5245 static const guint8 NR_OF_TDD_CELLS_map[32] = {0, 9, 17, 25, 32, 39, 46, 53, 59, 65, 71, 77, 83, 89, 95, 101, 106, 111, 116, 121, 126, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0};
callback_UTRAN_TDD_map_NrOfFrequencies(proto_tree * tree _U_,tvbuff_t * tvb _U_,void * param1,void * param2,int bit_offset _U_,int ett_csn1 _U_,packet_info * pinfo _U_)5246 static CSN_CallBackStatus_t callback_UTRAN_TDD_map_NrOfFrequencies(proto_tree *tree _U_, tvbuff_t *tvb _U_, void* param1, void* param2,
5247                                                                    int bit_offset _U_, int ett_csn1 _U_, packet_info* pinfo _U_)
5248 {  /* TS 44.060 Table 11.2.9b.2.b */
5249   guint8 * pNrOfCells = (guint8*)param1;
5250   guint8 * pBitsInCellInfo = (guint8*)param2;
5251 
5252   if ( *pNrOfCells < 32 )
5253   {
5254     *pBitsInCellInfo = NR_OF_TDD_CELLS_map[*pNrOfCells];
5255   }
5256   else
5257   {
5258     *pBitsInCellInfo = 0;
5259   }
5260 
5261   return 0;
5262 }
5263 
callback_UTRAN_TDD_compute_TDD_CELL_INFORMATION(proto_tree * tree,tvbuff_t * tvb,void * param1,void * param2 _U_,int bit_offset,int ett_csn1,packet_info * pinfo _U_)5264 static CSN_CallBackStatus_t callback_UTRAN_TDD_compute_TDD_CELL_INFORMATION(proto_tree *tree, tvbuff_t *tvb, void* param1, void* param2 _U_,
5265                                                                             int bit_offset, int ett_csn1, packet_info* pinfo _U_)
5266 {
5267   proto_tree   *subtree;
5268   UTRAN_TDD_NeighbourCells_t *pUtranTddNcell = (UTRAN_TDD_NeighbourCells_t *)param1;
5269   gint xdd_cell_info, wsize, nwi, jwi, w[64], i, iused;
5270   gint curr_bit_offset, idx;
5271 
5272   curr_bit_offset = bit_offset;
5273   idx = pUtranTddNcell->BitsInCellInfo;
5274 
5275   if ( idx > 0 )
5276   {
5277     subtree = proto_tree_add_subtree(tree, tvb, curr_bit_offset>>3, 1, ett_csn1, NULL, "TDD_CELL_INFORMATION: ");
5278 
5279     if (pUtranTddNcell->Indic0)
5280     {
5281       proto_tree_add_uint(tree, hf_gsm_rlcmac_cell_parameter, tvb, curr_bit_offset>>3, 0, 0);
5282       proto_tree_add_uint(tree, hf_gsm_rlcmac_sync_case_tstd, tvb, curr_bit_offset>>3, 0, 0);
5283       proto_tree_add_uint(tree, hf_gsm_rlcmac_diversity_tdd, tvb, curr_bit_offset>>3, 0, 0);
5284     }
5285 
5286     if (idx)
5287     {
5288       wsize = 10;
5289       nwi = 1;
5290       jwi = 0;
5291       i = 1;
5292 
5293       while (idx > 0)
5294       {
5295         w[i] = tvb_get_bits(tvb, curr_bit_offset, wsize, ENC_BIG_ENDIAN);
5296         curr_bit_offset += wsize;
5297         idx -= wsize;
5298         if (w[i] == 0)
5299         {
5300           idx = 0;
5301           break;
5302         }
5303         if (++jwi==nwi)
5304         {
5305           jwi = 0;
5306           nwi <<= 1;
5307           wsize--;
5308         }
5309         i++;
5310       }
5311       if (idx < 0)
5312       {
5313         curr_bit_offset += idx;
5314       }
5315       iused = i-1;
5316 
5317       for (i=1; i <= iused; i++)
5318       {
5319         xdd_cell_info = f_k(i, w, 1024);
5320         proto_tree_add_uint(subtree, hf_gsm_rlcmac_cell_parameter, tvb, curr_bit_offset>>3, 0, xdd_cell_info & 0x007F);
5321         proto_tree_add_uint(subtree, hf_gsm_rlcmac_sync_case_tstd, tvb, curr_bit_offset>>3, 0, (xdd_cell_info >> 7) & 0x01);
5322         proto_tree_add_uint(subtree, hf_gsm_rlcmac_diversity_tdd, tvb, curr_bit_offset>>3, 0, (xdd_cell_info >> 8) & 0x01);
5323       }
5324     }
5325   }
5326 
5327   return curr_bit_offset - bit_offset;
5328 }
5329 
5330 
5331 static const
CSN_DESCR_BEGIN(UTRAN_TDD_NeighbourCells_t)5332 CSN_DESCR_BEGIN(UTRAN_TDD_NeighbourCells_t)
5333   M_UINT       (UTRAN_TDD_NeighbourCells_t,  ZERO,        1, &hf_utran_tdd_neighbourcells_zero),
5334   M_UINT       (UTRAN_TDD_NeighbourCells_t,  UARFCN,     14, &hf_utran_tdd_neighbourcells_uarfcn),
5335   M_UINT       (UTRAN_TDD_NeighbourCells_t,  Indic0,      1, &hf_utran_tdd_neighbourcells_indic0),
5336   M_UINT       (UTRAN_TDD_NeighbourCells_t,  NrOfCells,   5, &hf_utran_tdd_neighbourcells_nrofcells),
5337   M_CALLBACK   (UTRAN_TDD_NeighbourCells_t,  callback_UTRAN_TDD_map_NrOfFrequencies, NrOfCells, BitsInCellInfo),
5338   M_CALLBACK   (UTRAN_TDD_NeighbourCells_t,  callback_UTRAN_TDD_compute_TDD_CELL_INFORMATION, ZERO, CellInfo),
5339 CSN_DESCR_END  (UTRAN_TDD_NeighbourCells_t)
5340 
5341 
5342 static const
5343 CSN_DESCR_BEGIN(UTRAN_TDD_Description_t)
5344   M_NEXT_EXIST (UTRAN_TDD_Description_t, existBandwidth, 1, &hf_utran_tdd_description_existbandwidth_exist),
5345   M_UINT       (UTRAN_TDD_Description_t,  Bandwidth,       3, &hf_utran_tdd_description_bandwidth),
5346   M_REC_TARRAY (UTRAN_TDD_Description_t, CellParams, UTRAN_TDD_NeighbourCells_t, NrOfFrequencies, &hf_utran_tdd_description_cellparams_exist),
5347 CSN_DESCR_END  (UTRAN_TDD_Description_t)
5348 
5349 static const
5350 CSN_DESCR_BEGIN(NeighbourCellDescription3G_PMO_t)
5351   M_NEXT_EXIST (NeighbourCellDescription3G_PMO_t, Exist_Index_Start_3G, 1, &hf_neighbourcelldescription3g_pmo_index_start_3g_exist),
5352   M_UINT       (NeighbourCellDescription3G_PMO_t,  Index_Start_3G, 7, &hf_index_start_3g),
5353   M_NEXT_EXIST (NeighbourCellDescription3G_PMO_t, Exist_Absolute_Index_Start_EMR, 1, &hf_neighbourcelldescription3g_pmo_absolute_index_start_emr_exist),
5354   M_UINT       (NeighbourCellDescription3G_PMO_t,  Absolute_Index_Start_EMR, 7, &hf_absolute_index_start_emr),
5355   M_NEXT_EXIST (NeighbourCellDescription3G_PMO_t, Exist_UTRAN_FDD_Description, 1, &hf_neighbourcelldescription3g_pmo_utran_fdd_description_exist),
5356   M_TYPE       (NeighbourCellDescription3G_PMO_t, UTRAN_FDD_Description, UTRAN_FDD_Description_t),
5357   M_NEXT_EXIST (NeighbourCellDescription3G_PMO_t, Exist_UTRAN_TDD_Description, 1, &hf_neighbourcelldescription3g_pmo_utran_tdd_description_exist),
5358   M_TYPE       (NeighbourCellDescription3G_PMO_t, UTRAN_TDD_Description, UTRAN_TDD_Description_t),
5359   M_NEXT_EXIST (NeighbourCellDescription3G_PMO_t, Exist_CDMA2000_Description, 1, &hf_neighbourcelldescription3g_pmo_cdma2000_description_exist),
5360   M_TYPE       (NeighbourCellDescription3G_PMO_t, CDMA2000_Description, CDMA2000_Description_t),
5361   M_NEXT_EXIST (NeighbourCellDescription3G_PMO_t, Exist_Removed3GCellDescription, 1, &hf_neighbourcelldescription3g_pmo_removed3gcelldescription_exist),
5362   M_TYPE       (NeighbourCellDescription3G_PMO_t, Removed3GCellDescription, Removed3GCellDescription_t),
5363 CSN_DESCR_END  (NeighbourCellDescription3G_PMO_t)
5364 
5365 static const
5366 CSN_DESCR_BEGIN(NeighbourCellDescription3G_PCCO_t)
5367   M_NEXT_EXIST (NeighbourCellDescription3G_PCCO_t, Exist_Index_Start_3G, 1, &hf_neighbourcelldescription3g_pcco_index_start_3g_exist),
5368   M_UINT       (NeighbourCellDescription3G_PCCO_t,  Index_Start_3G, 7, &hf_index_start_3g),
5369   M_NEXT_EXIST (NeighbourCellDescription3G_PCCO_t, Exist_Absolute_Index_Start_EMR, 1, &hf_neighbourcelldescription3g_pcco_absolute_index_start_emr_exist),
5370   M_UINT       (NeighbourCellDescription3G_PCCO_t,  Absolute_Index_Start_EMR, 7, &hf_absolute_index_start_emr),
5371   M_NEXT_EXIST (NeighbourCellDescription3G_PCCO_t, Exist_UTRAN_FDD_Description, 1, &hf_neighbourcelldescription3g_pcco_utran_fdd_description_exist),
5372   M_TYPE       (NeighbourCellDescription3G_PCCO_t, UTRAN_FDD_Description, UTRAN_FDD_Description_t),
5373   M_NEXT_EXIST (NeighbourCellDescription3G_PCCO_t, Exist_UTRAN_TDD_Description, 1, &hf_neighbourcelldescription3g_pcco_utran_tdd_description_exist),
5374   M_TYPE       (NeighbourCellDescription3G_PCCO_t, UTRAN_TDD_Description, UTRAN_TDD_Description_t),
5375   M_NEXT_EXIST (NeighbourCellDescription3G_PCCO_t, Exist_Removed3GCellDescription, 1, &hf_neighbourcelldescription3g_pcco_removed3gcelldescription_exist),
5376   M_TYPE       (NeighbourCellDescription3G_PCCO_t, Removed3GCellDescription, Removed3GCellDescription_t),
5377 CSN_DESCR_END  (NeighbourCellDescription3G_PCCO_t)
5378 
5379 static const
5380 CSN_DESCR_BEGIN(ENH_Measurement_Parameters_PMO_t)
5381   M_UNION      (ENH_Measurement_Parameters_PMO_t, 2, &hf_enh_measurement_parameters_pmo),
5382   M_TYPE       (ENH_Measurement_Parameters_PMO_t, u.BA_IND, BA_IND_t),
5383   M_UINT       (ENH_Measurement_Parameters_PMO_t,  u.PSI3_CHANGE_MARK, 2, &hf_psi3_change_mark),
5384   M_UINT       (ENH_Measurement_Parameters_PMO_t,  PMO_IND,  1, &hf_enh_measurement_parameters_pmo_pmo_ind),
5385 
5386   M_UINT       (ENH_Measurement_Parameters_PMO_t,  REPORT_TYPE,  1, &hf_enh_measurement_parameters_pmo_report_type),
5387   M_UINT       (ENH_Measurement_Parameters_PMO_t,  REPORTING_RATE,  1, &hf_enh_measurement_parameters_pmo_reporting_rate),
5388   M_UINT       (ENH_Measurement_Parameters_PMO_t,  INVALID_BSIC_REPORTING,  1, &hf_enh_measurement_parameters_pmo_invalid_bsic_reporting),
5389 
5390   M_NEXT_EXIST (ENH_Measurement_Parameters_PMO_t, Exist_NeighbourCellDescription3G, 1, &hf_enh_measurement_parameters_pmo_neighbourcelldescription3g_exist),
5391   M_TYPE       (ENH_Measurement_Parameters_PMO_t, NeighbourCellDescription3G, NeighbourCellDescription3G_PMO_t),
5392 
5393   M_NEXT_EXIST (ENH_Measurement_Parameters_PMO_t, Exist_GPRSReportPriority, 1, &hf_enh_measurement_parameters_pmo_gprsreportpriority_exist),
5394   M_TYPE       (ENH_Measurement_Parameters_PMO_t, GPRSReportPriority, GPRSReportPriority_t),
5395 
5396   M_NEXT_EXIST (ENH_Measurement_Parameters_PMO_t, Exist_GPRSMeasurementParams, 1, &hf_enh_measurement_parameters_pmo_gprsmeasurementparams_exist),
5397   M_TYPE       (ENH_Measurement_Parameters_PMO_t, GPRSMeasurementParams, GPRSMeasurementParams_PMO_PCCO_t),
5398 
5399   M_NEXT_EXIST (ENH_Measurement_Parameters_PMO_t, Exist_GPRSMeasurementParams3G, 1, &hf_enh_measurement_parameters_pmo_gprsmeasurementparams3g_exist),
5400   M_TYPE       (ENH_Measurement_Parameters_PMO_t, GPRSMeasurementParams3G, ENH_GPRSMeasurementParams3G_PMO_t),
5401 CSN_DESCR_END  (ENH_Measurement_Parameters_PMO_t)
5402 
5403 static const
5404 CSN_DESCR_BEGIN(ENH_Measurement_Parameters_PCCO_t)
5405   M_UNION      (ENH_Measurement_Parameters_PCCO_t, 2, &hf_enh_measurement_parameters_pcco),
5406   M_TYPE       (ENH_Measurement_Parameters_PCCO_t, u.BA_IND, BA_IND_t),
5407   M_UINT       (ENH_Measurement_Parameters_PCCO_t,  u.PSI3_CHANGE_MARK, 2, &hf_psi3_change_mark),
5408   M_UINT       (ENH_Measurement_Parameters_PCCO_t,  PMO_IND,  1, &hf_enh_measurement_parameters_pcco_pmo_ind),
5409 
5410   M_UINT       (ENH_Measurement_Parameters_PCCO_t,  REPORT_TYPE,  1, &hf_enh_measurement_parameters_pcco_report_type),
5411   M_UINT       (ENH_Measurement_Parameters_PCCO_t,  REPORTING_RATE,  1, &hf_enh_measurement_parameters_pcco_reporting_rate),
5412   M_UINT       (ENH_Measurement_Parameters_PCCO_t,  INVALID_BSIC_REPORTING,  1, &hf_enh_measurement_parameters_pcco_invalid_bsic_reporting),
5413 
5414   M_NEXT_EXIST (ENH_Measurement_Parameters_PCCO_t, Exist_NeighbourCellDescription3G, 1, &hf_enh_measurement_parameters_pcco_neighbourcelldescription3g_exist),
5415   M_TYPE       (ENH_Measurement_Parameters_PCCO_t, NeighbourCellDescription3G, NeighbourCellDescription3G_PCCO_t),
5416 
5417   M_NEXT_EXIST (ENH_Measurement_Parameters_PCCO_t, Exist_GPRSReportPriority, 1, &hf_enh_measurement_parameters_pcco_gprsreportpriority_exist),
5418   M_TYPE       (ENH_Measurement_Parameters_PCCO_t, GPRSReportPriority, GPRSReportPriority_t),
5419 
5420   M_NEXT_EXIST (ENH_Measurement_Parameters_PCCO_t, Exist_GPRSMeasurementParams, 1, &hf_enh_measurement_parameters_pcco_gprsmeasurementparams_exist),
5421   M_TYPE       (ENH_Measurement_Parameters_PCCO_t, GPRSMeasurementParams, GPRSMeasurementParams_PMO_PCCO_t),
5422 
5423   M_NEXT_EXIST (ENH_Measurement_Parameters_PCCO_t, Exist_GPRSMeasurementParams3G, 1, &hf_enh_measurement_parameters_pcco_gprsmeasurementparams3g_exist),
5424   M_TYPE       (ENH_Measurement_Parameters_PCCO_t, GPRSMeasurementParams3G, ENH_GPRSMeasurementParams3G_PCCO_t),
5425 CSN_DESCR_END  (ENH_Measurement_Parameters_PCCO_t)
5426 
5427 static const
5428 CSN_DESCR_BEGIN(CCN_Support_Description_t)
5429   M_UINT       (CCN_Support_Description_t,  NUMBER_CELLS,  7, &hf_ccn_support_description_number_cells),
5430   M_VAR_BITMAP (CCN_Support_Description_t, CCN_SUPPORTED, NUMBER_CELLS, 0, &hf_ccn_supported),
5431 CSN_DESCR_END  (CCN_Support_Description_t)
5432 
5433 static const
5434 CSN_DESCR_BEGIN(lu_ModeCellSelectionParameters_t)
5435   M_UINT       (lu_ModeCellSelectionParameters_t,  CELL_BAR_QUALIFY_3,  2, &hf_lu_modecellselectionparameters_cell_bar_qualify_3),
5436   M_NEXT_EXIST (lu_ModeCellSelectionParameters_t, Exist_SI13_Alt_PBCCH_Location, 1, &hf_lu_modecellselectionparameters_si13_alt_pbcch_location_exist),
5437   M_TYPE       (lu_ModeCellSelectionParameters_t, SI13_Alt_PBCCH_Location, SI13_PBCCH_Location_t),
5438 CSN_DESCR_END  (lu_ModeCellSelectionParameters_t)
5439 
5440 static const
5441 CSN_DESCR_BEGIN(lu_ModeCellSelectionParams_t)
5442   M_NEXT_EXIST (lu_ModeCellSelectionParams_t, Exist_lu_ModeCellSelectionParams, 1, &hf_lu_modecellselectionparams_lu_modecellselectionparams_exist),
5443   M_TYPE       (lu_ModeCellSelectionParams_t, lu_ModeCellSelectionParameters, lu_ModeCellSelectionParameters_t),
5444 CSN_DESCR_END  (lu_ModeCellSelectionParams_t)
5445 
5446 static const
5447 CSN_DESCR_BEGIN(lu_ModeNeighbourCellParams_t)
5448   M_TYPE       (lu_ModeNeighbourCellParams_t, lu_ModeCellSelectionParameters, lu_ModeCellSelectionParams_t),
5449   M_UINT       (lu_ModeNeighbourCellParams_t,  NR_OF_FREQUENCIES,  5, &hf_lu_modeneighbourcellparams_nr_of_frequencies),
5450   M_VAR_TARRAY (lu_ModeNeighbourCellParams_t, lu_ModeCellSelectionParams, lu_ModeCellSelectionParams_t, NR_OF_FREQUENCIES),
5451 CSN_DESCR_END  (lu_ModeNeighbourCellParams_t)
5452 
5453 static const
5454 CSN_DESCR_BEGIN(lu_ModeOnlyCellSelection_t)
5455   M_UINT       (lu_ModeOnlyCellSelection_t,  CELL_BAR_QUALIFY_3,  2, &hf_lu_modeonlycellselection_cell_bar_qualify_3),
5456   M_UINT       (lu_ModeOnlyCellSelection_t,  SAME_RA_AS_SERVING_CELL,  1, &hf_lu_modeonlycellselection_same_ra_as_serving_cell),
5457 
5458   M_NEXT_EXIST (lu_ModeOnlyCellSelection_t, Exist_RXLEV_and_TXPWR, 2, &hf_lu_modeonlycellselection_rxlev_and_txpwr_exist),
5459   M_UINT       (lu_ModeOnlyCellSelection_t,  GPRS_RXLEV_ACCESS_MIN,  6, &hf_lu_modeonlycellselection_gprs_rxlev_access_min),
5460   M_UINT       (lu_ModeOnlyCellSelection_t,  GPRS_MS_TXPWR_MAX_CCH,  5, &hf_lu_modeonlycellselection_gprs_ms_txpwr_max_cch),
5461 
5462   M_NEXT_EXIST (lu_ModeOnlyCellSelection_t, Exist_OFFSET_and_TIME, 2, &hf_lu_modeonlycellselection_offset_and_time_exist),
5463   M_UINT       (lu_ModeOnlyCellSelection_t,  GPRS_TEMPORARY_OFFSET,  3, &hf_lu_modeonlycellselection_gprs_temporary_offset),
5464   M_UINT       (lu_ModeOnlyCellSelection_t,  GPRS_PENALTY_TIME,  5, &hf_lu_modeonlycellselection_gprs_penalty_time),
5465 
5466   M_NEXT_EXIST (lu_ModeOnlyCellSelection_t, Exist_GPRS_RESELECT_OFFSET, 1, &hf_lu_modeonlycellselection_gprs_reselect_offset_exist),
5467   M_UINT       (lu_ModeOnlyCellSelection_t,  GPRS_RESELECT_OFFSET,  5, &hf_lu_modeonlycellselection_gprs_reselect_offset),
5468 
5469   M_NEXT_EXIST (lu_ModeOnlyCellSelection_t, Exist_HCS, 1, &hf_lu_modeonlycellselection_hcs_exist),
5470   M_TYPE       (lu_ModeOnlyCellSelection_t, HCS, HCS_t),
5471 
5472   M_NEXT_EXIST (lu_ModeOnlyCellSelection_t, Exist_SI13_Alt_PBCCH_Location, 1, &hf_lu_modeonlycellselection_si13_alt_pbcch_location_exist),
5473   M_TYPE       (lu_ModeOnlyCellSelection_t, SI13_Alt_PBCCH_Location, SI13_PBCCH_Location_t),
5474 CSN_DESCR_END  (lu_ModeOnlyCellSelection_t)
5475 
5476 static const
5477 CSN_DESCR_BEGIN(lu_ModeOnlyCellSelectionParamsWithFreqDiff_t)
5478   /*FREQUENCY_DIFF is really an integer but the number of bits to decode it are stored in FREQ_DIFF_LENGTH*/
5479   M_VAR_BITMAP (lu_ModeOnlyCellSelectionParamsWithFreqDiff_t, FREQUENCY_DIFF, FREQ_DIFF_LENGTH, 0, &hf_lu_modeonlycellselectionparamswithfreqdiff),
5480   M_UINT       (lu_ModeOnlyCellSelectionParamsWithFreqDiff_t,  BSIC,  6, &hf_lu_modeonlycellselectionparamswithfreqdiff_bsic),
5481   M_NEXT_EXIST (lu_ModeOnlyCellSelectionParamsWithFreqDiff_t, Exist_lu_ModeOnlyCellSelectionParams, 1, &hf_lu_modeonlycellselectionparamswithfreqdiff_lu_modeonlycellselectionparams_exist),
5482   M_TYPE       (lu_ModeOnlyCellSelectionParamsWithFreqDiff_t, lu_ModeOnlyCellSelectionParams, lu_ModeOnlyCellSelection_t),
5483 CSN_DESCR_END  (lu_ModeOnlyCellSelectionParamsWithFreqDiff_t)
5484 
5485 static CSN_CallBackStatus_t callback_init_luMode_Cell_Sel_Param_FREQUENCY_DIFF(proto_tree *tree _U_, tvbuff_t *tvb _U_, void* param1, void* param2,
5486                                                                                int bit_offset _U_, int ett_csn1 _U_, packet_info* pinfo _U_)
5487 {
5488   guint  i;
5489   guint8 freq_diff_len = *(guint8*)param1;
5490   lu_ModeOnlyCellSelectionParamsWithFreqDiff_t *pArray = (lu_ModeOnlyCellSelectionParamsWithFreqDiff_t*)param2;
5491 
5492   for( i=0; i<16; i++, pArray++ )
5493   {
5494     pArray->FREQ_DIFF_LENGTH = freq_diff_len;
5495   }
5496 
5497   return 0;
5498 }
5499 
5500 static const
5501 CSN_DESCR_BEGIN(Add_lu_ModeOnlyFrequencyList_t)
5502   M_UINT       (Add_lu_ModeOnlyFrequencyList_t,  START_FREQUENCY,  10, &hf_add_lu_modeonlyfrequencylist_start_frequency),
5503   M_UINT       (Add_lu_ModeOnlyFrequencyList_t,  BSIC,  6, &hf_add_lu_modeonlyfrequencylist_bsic),
5504 
5505   M_NEXT_EXIST (Add_lu_ModeOnlyFrequencyList_t, Exist_lu_ModeCellSelection, 1, &hf_add_lu_modeonlyfrequencylist_lu_modecellselection_exist),
5506   M_TYPE       (Add_lu_ModeOnlyFrequencyList_t, lu_ModeOnlyCellSelection, lu_ModeOnlyCellSelection_t),
5507 
5508   M_UINT       (Add_lu_ModeOnlyFrequencyList_t,  NR_OF_FREQUENCIES,  5, &hf_add_lu_modeonlyfrequencylist_nr_of_frequencies),
5509   M_UINT       (Add_lu_ModeOnlyFrequencyList_t,  FREQ_DIFF_LENGTH,  3, &hf_add_lu_modeonlyfrequencylist_freq_diff_length),
5510 
5511   M_CALLBACK   (Add_lu_ModeOnlyFrequencyList_t, callback_init_luMode_Cell_Sel_Param_FREQUENCY_DIFF, FREQ_DIFF_LENGTH, lu_ModeOnlyCellSelectionParamsWithFreqDiff),
5512 
5513   M_VAR_TARRAY (Add_lu_ModeOnlyFrequencyList_t, lu_ModeOnlyCellSelectionParamsWithFreqDiff, lu_ModeOnlyCellSelectionParamsWithFreqDiff_t, NR_OF_FREQUENCIES),
5514 CSN_DESCR_END  (Add_lu_ModeOnlyFrequencyList_t)
5515 
5516 static const
5517 CSN_DESCR_BEGIN(NC_lu_ModeOnlyCapableCellList_t)
5518   M_REC_TARRAY (NC_lu_ModeOnlyCapableCellList_t, Add_lu_ModeOnlyFrequencyList, Add_lu_ModeOnlyFrequencyList_t, Count_Add_lu_ModeOnlyFrequencyList, &hf_nc_lu_modeonlycapablecelllist_add_lu_modeonlyfrequencylist_exist),
5519 CSN_DESCR_END  (NC_lu_ModeOnlyCapableCellList_t)
5520 
5521 static const
5522 CSN_DESCR_BEGIN(GPRS_AdditionalMeasurementParams3G_t)
5523   M_NEXT_EXIST (GPRS_AdditionalMeasurementParams3G_t, Exist_FDD_REPORTING_THRESHOLD_2, 1, &hf_gprs_additionalmeasurementparams3g_fdd_reporting_threshold_2_exist),
5524   M_UINT       (GPRS_AdditionalMeasurementParams3G_t,  FDD_REPORTING_THRESHOLD_2,  6, &hf_gprs_additionalmeasurementparams3g_fdd_reporting_threshold_2),
5525 CSN_DESCR_END  (GPRS_AdditionalMeasurementParams3G_t)
5526 
5527 static const
5528 CSN_DESCR_BEGIN(ServingCellPriorityParametersDescription_t)
5529   M_UINT       (ServingCellPriorityParametersDescription_t,  GERAN_PRIORITY,  3, &hf_servingcellpriorityparametersdescription_geran_priority),
5530   M_UINT       (ServingCellPriorityParametersDescription_t,  THRESH_Priority_Search,  4, &hf_servingcellpriorityparametersdescription_thresh_priority_search),
5531   M_UINT       (ServingCellPriorityParametersDescription_t,  THRESH_GSM_low,  4, &hf_servingcellpriorityparametersdescription_thresh_gsm_low),
5532   M_UINT       (ServingCellPriorityParametersDescription_t,  H_PRIO,  2, &hf_servingcellpriorityparametersdescription_h_prio),
5533   M_UINT       (ServingCellPriorityParametersDescription_t,  T_Reselection,  2, &hf_servingcellpriorityparametersdescription_t_reselection),
5534 CSN_DESCR_END  (ServingCellPriorityParametersDescription_t)
5535 
5536 static const
5537 CSN_DESCR_BEGIN(RepeatedUTRAN_PriorityParameters_t)
5538   M_REC_ARRAY  (RepeatedUTRAN_PriorityParameters_t, UTRAN_FREQUENCY_INDEX_a, NumberOfFrequencyIndexes, 5, &hf_repeatedutran_priorityparameters_utran_freq_index, &hf_repeatedutran_priorityparameters_utran_freq_index_exist),
5539 
5540   M_NEXT_EXIST (RepeatedUTRAN_PriorityParameters_t, existUTRAN_PRIORITY, 1, &hf_repeatedutran_priorityparameters_existutran_priority_exist),
5541   M_UINT       (RepeatedUTRAN_PriorityParameters_t,  UTRAN_PRIORITY,  3, &hf_repeatedutran_priorityparameters_utran_priority),
5542 
5543   M_UINT       (RepeatedUTRAN_PriorityParameters_t,  THRESH_UTRAN_high,  5, &hf_repeatedutran_priorityparameters_thresh_utran_high),
5544 
5545   M_NEXT_EXIST (RepeatedUTRAN_PriorityParameters_t, existTHRESH_UTRAN_low, 1, &hf_repeatedutran_priorityparameters_existthresh_utran_low_exist),
5546   M_UINT       (RepeatedUTRAN_PriorityParameters_t,  THRESH_UTRAN_low,  5, &hf_repeatedutran_priorityparameters_thresh_utran_low),
5547 
5548   M_NEXT_EXIST (RepeatedUTRAN_PriorityParameters_t, existUTRAN_QRXLEVMIN, 1, &hf_repeatedutran_priorityparameters_existutran_qrxlevmin_exist),
5549   M_UINT       (RepeatedUTRAN_PriorityParameters_t,  UTRAN_QRXLEVMIN,  5, &hf_repeatedutran_priorityparameters_utran_qrxlevmin),
5550 CSN_DESCR_END  (RepeatedUTRAN_PriorityParameters_t)
5551 
5552 static const
5553 CSN_DESCR_BEGIN(PriorityParametersDescription3G_PMO_t)
5554 
5555   M_NEXT_EXIST (PriorityParametersDescription3G_PMO_t, existDEFAULT_UTRAN_Parameters, 3, &hf_priorityparametersdescription3g_pmo_existdefault_utran_parameters_exist),
5556   M_UINT       (PriorityParametersDescription3G_PMO_t,  DEFAULT_UTRAN_PRIORITY,  3, &hf_priorityparametersdescription3g_pmo_default_utran_priority),
5557   M_UINT       (PriorityParametersDescription3G_PMO_t,  DEFAULT_THRESH_UTRAN,  5, &hf_priorityparametersdescription3g_pmo_default_thresh_utran),
5558   M_UINT       (PriorityParametersDescription3G_PMO_t,  DEFAULT_UTRAN_QRXLEVMIN,  5, &hf_priorityparametersdescription3g_pmo_default_utran_qrxlevmin),
5559 
5560   M_REC_TARRAY (PriorityParametersDescription3G_PMO_t, RepeatedUTRAN_PriorityParameters_a, RepeatedUTRAN_PriorityParameters_t, NumberOfPriorityParameters, &hf_priorityparametersdescription3g_pmo_repeatedutran_priorityparameters_a_exist),
5561 CSN_DESCR_END  (PriorityParametersDescription3G_PMO_t)
5562 
5563 static const
5564 CSN_DESCR_BEGIN(EUTRAN_REPORTING_THRESHOLD_OFFSET_t)
5565   M_NEXT_EXIST (EUTRAN_REPORTING_THRESHOLD_OFFSET_t, existEUTRAN_FDD_REPORTING_THRESHOLD_OFFSET, 5, &hf_eutran_reporting_threshold_offset_existeutran_fdd_reporting_threshold_offset_exist),
5566   M_UINT       (EUTRAN_REPORTING_THRESHOLD_OFFSET_t,  EUTRAN_FDD_REPORTING_THRESHOLD,  3, &hf_eutran_reportinghreshold_offset_t_eutran_fdd_reporting_threshold),
5567   M_NEXT_EXIST (EUTRAN_REPORTING_THRESHOLD_OFFSET_t, existEUTRAN_FDD_REPORTING_THRESHOLD_2, 1, &hf_eutran_reporting_threshold_offset_existeutran_fdd_reporting_threshold_2_exist),
5568   M_UINT       (EUTRAN_REPORTING_THRESHOLD_OFFSET_t,  EUTRAN_FDD_REPORTING_THRESHOLD_2,  6, &hf_eutran_reportinghreshold_offset_t_eutran_fdd_reporting_threshold_2),
5569   M_NEXT_EXIST (EUTRAN_REPORTING_THRESHOLD_OFFSET_t, existEUTRAN_FDD_REPORTING_OFFSET, 1, &hf_eutran_reporting_threshold_offset_existeutran_fdd_reporting_offset_exist),
5570   M_UINT       (EUTRAN_REPORTING_THRESHOLD_OFFSET_t,  EUTRAN_FDD_REPORTING_OFFSET,  3, &hf_eutran_reportinghreshold_offset_t_eutran_fdd_reporting_offset),
5571 
5572   M_NEXT_EXIST (EUTRAN_REPORTING_THRESHOLD_OFFSET_t, existEUTRAN_TDD_REPORTING_THRESHOLD_OFFSET, 5, &hf_eutran_reporting_threshold_offset_existeutran_tdd_reporting_threshold_offset_exist),
5573   M_UINT       (EUTRAN_REPORTING_THRESHOLD_OFFSET_t,  EUTRAN_TDD_REPORTING_THRESHOLD,  3, &hf_eutran_reportinghreshold_offset_t_eutran_tdd_reporting_threshold),
5574   M_NEXT_EXIST (EUTRAN_REPORTING_THRESHOLD_OFFSET_t, existEUTRAN_TDD_REPORTING_THRESHOLD_2, 1, &hf_eutran_reporting_threshold_offset_existeutran_tdd_reporting_threshold_2_exist),
5575   M_UINT       (EUTRAN_REPORTING_THRESHOLD_OFFSET_t,  EUTRAN_TDD_REPORTING_THRESHOLD_2,  6, &hf_eutran_reportinghreshold_offset_t_eutran_tdd_reporting_threshold_2),
5576   M_NEXT_EXIST (EUTRAN_REPORTING_THRESHOLD_OFFSET_t, existEUTRAN_TDD_REPORTING_OFFSET, 1, &hf_eutran_reporting_threshold_offset_existeutran_tdd_reporting_offset_exist),
5577   M_UINT       (EUTRAN_REPORTING_THRESHOLD_OFFSET_t,  EUTRAN_TDD_REPORTING_OFFSET,  3, &hf_eutran_reportinghreshold_offset_t_eutran_tdd_reporting_offset),
5578 CSN_DESCR_END  (EUTRAN_REPORTING_THRESHOLD_OFFSET_t)
5579 
5580 static const
5581 CSN_DESCR_BEGIN(GPRS_EUTRAN_MeasurementParametersDescription_t)
5582   M_UINT       (GPRS_EUTRAN_MeasurementParametersDescription_t,  Qsearch_P_EUTRAN,  4, &hf_gprs_eutran_measurementparametersdescription_qsearch_p_eutran),
5583   M_UINT       (GPRS_EUTRAN_MeasurementParametersDescription_t,  EUTRAN_REP_QUANT, 1, &hf_gprs_eutran_measurementparametersdescription_eutran_rep_quant),
5584   M_UINT       (GPRS_EUTRAN_MeasurementParametersDescription_t,  EUTRAN_MULTIRAT_REPORTING,  2, &hf_gprs_eutran_measurementparametersdescription_eutran_multirat_reporting),
5585   M_TYPE       (GPRS_EUTRAN_MeasurementParametersDescription_t, EUTRAN_REPORTING_THRESHOLD_OFFSET, EUTRAN_REPORTING_THRESHOLD_OFFSET_t),
5586 CSN_DESCR_END  (GPRS_EUTRAN_MeasurementParametersDescription_t)
5587 
5588 static const
5589 CSN_DESCR_BEGIN(RepeatedEUTRAN_Cells_t)
5590   M_UINT       (RepeatedEUTRAN_Cells_t,  EARFCN,  16, &hf_repeatedeutran_cells_earfcn),
5591   M_NEXT_EXIST (RepeatedEUTRAN_Cells_t, existMeasurementBandwidth, 1, &hf_repeatedeutran_cells_existmeasurementbandwidth_exist),
5592   M_UINT       (RepeatedEUTRAN_Cells_t,  MeasurementBandwidth,  3, &hf_repeatedeutran_cells_measurementbandwidth),
5593 CSN_DESCR_END  (RepeatedEUTRAN_Cells_t)
5594 
5595 static const
5596 CSN_DESCR_BEGIN(RepeatedEUTRAN_NeighbourCells_t)
5597   M_REC_TARRAY (RepeatedEUTRAN_NeighbourCells_t, EUTRAN_Cells_a, RepeatedEUTRAN_Cells_t, nbrOfEUTRAN_Cells, &hf_repeatedeutran_neighbourcells_eutran_cells_a_exist),
5598 
5599   M_NEXT_EXIST (RepeatedEUTRAN_NeighbourCells_t, existEUTRAN_PRIORITY, 1, &hf_repeatedeutran_neighbourcells_existeutran_priority_exist),
5600   M_UINT       (RepeatedEUTRAN_NeighbourCells_t,  EUTRAN_PRIORITY,  3, &hf_repeatedeutran_neighbourcells_eutran_priority),
5601 
5602   M_UINT       (RepeatedEUTRAN_NeighbourCells_t,  THRESH_EUTRAN_high,  5, &hf_repeatedeutran_neighbourcells_thresh_eutran_high),
5603 
5604   M_NEXT_EXIST (RepeatedEUTRAN_NeighbourCells_t, existTHRESH_EUTRAN_low, 1, &hf_repeatedeutran_neighbourcells_existthresh_eutran_low_exist),
5605   M_UINT       (RepeatedEUTRAN_NeighbourCells_t,  THRESH_EUTRAN_low,  5, &hf_repeatedeutran_neighbourcells_thresh_eutran_low),
5606 
5607   M_NEXT_EXIST (RepeatedEUTRAN_NeighbourCells_t, existEUTRAN_QRXLEVMIN, 1, &hf_repeatedeutran_neighbourcells_existeutran_qrxlevmin_exist),
5608   M_UINT       (RepeatedEUTRAN_NeighbourCells_t,  EUTRAN_QRXLEVMIN,  5, &hf_repeatedeutran_neighbourcells_eutran_qrxlevmin),
5609 CSN_DESCR_END  (RepeatedEUTRAN_NeighbourCells_t)
5610 
5611 static const
5612 CSN_DESCR_BEGIN(PCID_Pattern_t)
5613   M_UINT       (PCID_Pattern_t,  PCID_Pattern_length,  3, &hf_pcid_pattern_pcid_pattern_length),
5614   M_VAR_BITMAP (PCID_Pattern_t, PCID_Pattern, PCID_Pattern_length, 1, &hf_pcid_pattern_pcid_pattern), /* offset 1, 44.060 12.57 */
5615   M_UINT       (PCID_Pattern_t,  PCID_Pattern_sense,  1, &hf_pcid_pattern_pcid_pattern_sense),
5616 CSN_DESCR_END  (PCID_Pattern_t)
5617 
5618 static const
5619 CSN_DESCR_BEGIN(PCID_Group_IE_t)
5620 
5621   M_REC_ARRAY  (PCID_Group_IE_t, PCID_a, NumberOfPCIDs, 9, &hf_pcid_group_ie_pcid, &hf_pcid_group_ie_pcid_exist),
5622 
5623   M_NEXT_EXIST (PCID_Group_IE_t, existPCID_BITMAP_GROUP, 1, &hf_pcid_group_ie_existpcid_bitmap_group_exist),
5624   M_UINT       (PCID_Group_IE_t,  PCID_BITMAP_GROUP,  6, &hf_pcid_group_ie_pcid_bitmap_group),
5625 
5626   M_REC_TARRAY (PCID_Group_IE_t, PCID_Pattern_a, PCID_Pattern_t, NumberOfPCID_Patterns, &hf_pcid_group_ie_pcid_pattern_a_exist),
5627 CSN_DESCR_END  (PCID_Group_IE_t)
5628 
5629 static const
5630 CSN_DESCR_BEGIN(EUTRAN_FREQUENCY_INDEX_t)
5631   M_UINT       (EUTRAN_FREQUENCY_INDEX_t,  EUTRAN_FREQUENCY_INDEX,  3, &hf_eutran_frequency_index_eutran_frequency_index),
5632 CSN_DESCR_END  (EUTRAN_FREQUENCY_INDEX_t)
5633 
5634 static const
5635 CSN_DESCR_BEGIN(RepeatedEUTRAN_NotAllowedCells_t)
5636   M_TYPE       (RepeatedEUTRAN_NotAllowedCells_t, NotAllowedCells, PCID_Group_IE_t),
5637 
5638   M_REC_TARRAY (RepeatedEUTRAN_NotAllowedCells_t, EUTRAN_FREQUENCY_INDEX_a, EUTRAN_FREQUENCY_INDEX_t, NumberOfFrequencyIndexes, &hf_repeatedeutran_notallowedcells_eutran_frequency_index_a_exist),
5639 CSN_DESCR_END  (RepeatedEUTRAN_NotAllowedCells_t)
5640 
5641 static const
5642 CSN_DESCR_BEGIN(RepeatedEUTRAN_PCID_to_TA_mapping_t)
5643   M_REC_TARRAY (RepeatedEUTRAN_PCID_to_TA_mapping_t, PCID_ToTA_Mapping_a, PCID_Group_IE_t, NumberOfMappings, &hf_repeatedeutran_pcid_to_ta_mapping_pcid_tota_mapping_a_exist),
5644   M_REC_TARRAY (RepeatedEUTRAN_PCID_to_TA_mapping_t, EUTRAN_FREQUENCY_INDEX_a, EUTRAN_FREQUENCY_INDEX_t, NumberOfFrequencyIndexes, &hf_repeatedeutran_pcid_to_ta_mapping_eutran_frequency_index_a_exist),
5645 CSN_DESCR_END  (RepeatedEUTRAN_PCID_to_TA_mapping_t)
5646 
5647 static const
5648 CSN_DESCR_BEGIN(EUTRAN_ParametersDescription_PMO_t)
5649   M_UINT       (EUTRAN_ParametersDescription_PMO_t,  EUTRAN_CCN_ACTIVE, 1, &hf_eutran_parametersdescription_pmo_eutran_ccn_active),
5650 
5651   M_NEXT_EXIST (EUTRAN_ParametersDescription_PMO_t, existGPRS_EUTRAN_MeasurementParametersDescription, 1, &hf_eutran_parametersdescription_pmo_existgprs_eutran_measurementparametersdescription_exist),
5652   M_TYPE       (EUTRAN_ParametersDescription_PMO_t, GPRS_EUTRAN_MeasurementParametersDescription, GPRS_EUTRAN_MeasurementParametersDescription_t),
5653 
5654   M_REC_TARRAY (EUTRAN_ParametersDescription_PMO_t, RepeatedEUTRAN_NeighbourCells_a, RepeatedEUTRAN_NeighbourCells_t, nbrOfRepeatedEUTRAN_NeighbourCellsStructs, &hf_eutran_parametersdescription_pmo_repeatedeutran_neighbourcells_a_exist),
5655   M_REC_TARRAY (EUTRAN_ParametersDescription_PMO_t, RepeatedEUTRAN_NotAllowedCells_a, RepeatedEUTRAN_NotAllowedCells_t, NumberOfNotAllowedCells, &hf_eutran_parametersdescription_pmo_repeatedeutran_notallowedcells_a_exist),
5656   M_REC_TARRAY (EUTRAN_ParametersDescription_PMO_t, RepeatedEUTRAN_PCID_to_TA_mapping_a, RepeatedEUTRAN_PCID_to_TA_mapping_t, NumberOfMappings, &hf_eutran_parametersdescription_pmo_repeatedeutran_pcid_to_ta_mapping_a_exist),
5657 CSN_DESCR_END  (EUTRAN_ParametersDescription_PMO_t)
5658 
5659 static const
5660 CSN_DESCR_BEGIN(PSC_Pattern_t)
5661   M_UINT       (PSC_Pattern_t,  PSC_Pattern_length,  3, &hf_psc_pattern_length),
5662   M_VAR_BITMAP (PSC_Pattern_t,  PSC_Pattern, PSC_Pattern_length, 1, &hf_psc_pattern),
5663   M_UINT       (PSC_Pattern_t,  PSC_Pattern_sense, 1, &hf_psc_pattern_sense),
5664 CSN_DESCR_END  (PSC_Pattern_t)
5665 
5666 static const
5667 CSN_DESCR_BEGIN(PSC_Group_t)
5668   M_REC_ARRAY  (PSC_Group_t, PSC, PSC_Count, 9, &hf_psc_group_psc, &hf_psc_group_psc_exist),
5669   M_REC_TARRAY (PSC_Group_t, PSC_Pattern, PSC_Pattern_t, PSC_Pattern_Count, &hf_psc_group_psc_pattern_exist),
5670 CSN_DESCR_END  (PSC_Group_t)
5671 
5672 static const
5673 CSN_DESCR_BEGIN(ThreeG_CSG_Description_Body_t)
5674   M_TYPE       (ThreeG_CSG_Description_Body_t, CSG_PSC_SPLIT, PSC_Group_t),
5675   M_REC_ARRAY  (ThreeG_CSG_Description_Body_t, UTRAN_FREQUENCY_INDEX, Count, 5, &hf_three3_csg_description_body_utran_freq_index, &hf_three3_csg_description_body_utran_freq_index_exist),
5676 CSN_DESCR_END  (ThreeG_CSG_Description_Body_t)
5677 
5678 static const
5679 CSN_DESCR_BEGIN(ThreeG_CSG_Description_t)
5680   M_REC_TARRAY (ThreeG_CSG_Description_t, ThreeG_CSG_Description_Body, ThreeG_CSG_Description_Body_t, Count, &hf_threeg_csg_description_threeg_csg_description_body_exist),
5681 CSN_DESCR_END  (ThreeG_CSG_Description_t)
5682 
5683 static const
5684 CSN_DESCR_BEGIN(EUTRAN_CSG_Description_Body_t)
5685   M_TYPE       (EUTRAN_CSG_Description_Body_t, CSG_PCI_SPLIT, PSC_Group_t),
5686   M_REC_ARRAY  (EUTRAN_CSG_Description_Body_t, EUTRAN_FREQUENCY_INDEX, Count, 3, &hf_eutran_csg_description_body_eutran_freq_index, &hf_eutran_csg_description_body_eutran_freq_index_exist),
5687 CSN_DESCR_END  (EUTRAN_CSG_Description_Body_t)
5688 
5689 static const
5690 CSN_DESCR_BEGIN(EUTRAN_CSG_Description_t)
5691   M_REC_TARRAY (EUTRAN_CSG_Description_t, EUTRAN_CSG_Description_Body, EUTRAN_CSG_Description_Body_t, Count, &hf_eutran_csg_description_eutran_csg_description_body_exist),
5692 CSN_DESCR_END  (EUTRAN_CSG_Description_t)
5693 
5694 static const
5695 CSN_DESCR_BEGIN(Meas_Ctrl_Param_Desp_t)
5696   M_NEXT_EXIST (Meas_Ctrl_Param_Desp_t, existMeasurement_Control_EUTRAN, 3, &hf_meas_ctrl_param_desp_existmeasurement_control_eutran_exist),
5697   M_UINT       (Meas_Ctrl_Param_Desp_t,  Measurement_Control_EUTRAN, 1, &hf_meas_ctrl_param_meas_ctrl_eutran),
5698   M_UINT       (Meas_Ctrl_Param_Desp_t,  EUTRAN_FREQUENCY_INDEX_top, 3, &hf_meas_ctrl_param_eutran_freq_idx),
5699   M_REC_ARRAY  (Meas_Ctrl_Param_Desp_t,  EUTRAN_FREQUENCY_INDEX, Count_EUTRAN_FREQUENCY_INDEX, 3, &hf_meas_ctrl_param_eutran_freq_idx, &hf_meas_ctrl_param_eutran_freq_idx_exist),
5700   M_NEXT_EXIST (Meas_Ctrl_Param_Desp_t, existMeasurement_Control_UTRAN, 1, &hf_meas_ctrl_param_desp_existmeasurement_control_utran_exist),
5701   M_UINT       (Meas_Ctrl_Param_Desp_t,  Measurement_Control_UTRAN, 1, &hf_meas_ctrl_param_meas_ctrl_utran),
5702   M_UINT       (Meas_Ctrl_Param_Desp_t, UTRAN_FREQUENCY_INDEX_top, 5, &hf_meas_ctrl_param_utran_freq_idx),
5703   M_REC_ARRAY  (Meas_Ctrl_Param_Desp_t, UTRAN_FREQUENCY_INDEX, Count_UTRAN_FREQUENCY_INDEX, 5, &hf_meas_ctrl_param_utran_freq_idx, &hf_meas_ctrl_param_utran_freq_idx_exist),
5704 CSN_DESCR_END  (Meas_Ctrl_Param_Desp_t)
5705 
5706 static const
5707 CSN_DESCR_BEGIN(Reselection_Based_On_RSRQ_t)
5708   M_UINT       (Reselection_Based_On_RSRQ_t,  THRESH_EUTRAN_high_Q,  5, &hf_rept_eutran_enh_cell_resel_param_thresh_eutran_high_q),
5709   M_NEXT_EXIST (Reselection_Based_On_RSRQ_t, existTHRESH_EUTRAN_low_Q, 1, &hf_reselection_based_on_rsrq_existthresh_eutran_low_q_exist),
5710   M_UINT       (Reselection_Based_On_RSRQ_t,  THRESH_EUTRAN_low_Q,  5, &hf_rept_eutran_enh_cell_resel_param_thresh_eutran_low_q),
5711   M_NEXT_EXIST (Reselection_Based_On_RSRQ_t, existEUTRAN_QQUALMIN, 1, &hf_reselection_based_on_rsrq_existeutran_qqualmin_exist),
5712   M_UINT       (Reselection_Based_On_RSRQ_t,  EUTRAN_QQUALMIN,  4, &hf_rept_eutran_enh_cell_resel_param_thresh_eutran_qqualmin),
5713   M_NEXT_EXIST (Reselection_Based_On_RSRQ_t, existEUTRAN_RSRPmin, 1, &hf_reselection_based_on_rsrq_existeutran_rsrpmin_exist),
5714   M_UINT       (Reselection_Based_On_RSRQ_t,  EUTRAN_RSRPmin,  5, &hf_rept_eutran_enh_cell_resel_param_thresh_eutran_rsrpmin),
5715 CSN_DESCR_END  (Reselection_Based_On_RSRQ_t)
5716 
5717 static const
5718 CSN_DESCR_BEGIN(Rept_EUTRAN_Enh_Cell_Resel_Param_t)
5719   M_REC_ARRAY  (Rept_EUTRAN_Enh_Cell_Resel_Param_t,  EUTRAN_FREQUENCY_INDEX, Count_EUTRAN_FREQUENCY_INDEX, 3, &hf_rept_eutran_enh_cell_resel_param_eutran_freq_index, &hf_rept_eutran_enh_cell_resel_param_eutran_freq_index_exist),
5720   M_UNION      (Rept_EUTRAN_Enh_Cell_Resel_Param_t, 2, &hf_rept_eutran_enh_cell_resel_param),
5721   M_UINT       (Rept_EUTRAN_Enh_Cell_Resel_Param_t,  u.EUTRAN_Qmin,  4, &hf_rept_eutran_enh_cell_resel_param_eutran_qmin),
5722   M_TYPE       (Rept_EUTRAN_Enh_Cell_Resel_Param_t,  u.Reselection_Based_On_RSRQ, Reselection_Based_On_RSRQ_t),
5723 CSN_DESCR_END  (Rept_EUTRAN_Enh_Cell_Resel_Param_t)
5724 
5725 static const
5726 CSN_DESCR_BEGIN(Enh_Cell_Reselect_Param_Desp_t)
5727   M_REC_TARRAY (Enh_Cell_Reselect_Param_Desp_t, Repeated_EUTRAN_Enhanced_Cell_Reselection_Parameters, Rept_EUTRAN_Enh_Cell_Resel_Param_t, Count, &hf_enh_cell_reselect_param_desp_repeated_eutran_enhanced_cell_reselection_parameters_exist),
5728 CSN_DESCR_END  (Enh_Cell_Reselect_Param_Desp_t)
5729 
5730 static const
5731 CSN_DESCR_BEGIN(UTRAN_CSG_Cells_Reporting_Desp_t)
5732   M_NEXT_EXIST (UTRAN_CSG_Cells_Reporting_Desp_t, existUTRAN_CSG_FDD_REPORTING_THRESHOLD, 2, &hf_utran_csg_cells_reporting_desp_existutran_csg_fdd_reporting_threshold_exist),
5733   M_UINT       (UTRAN_CSG_Cells_Reporting_Desp_t, UTRAN_CSG_FDD_REPORTING_THRESHOLD, 3, &hf_utran_csg_fdd_reporting_threshold),
5734   M_UINT       (UTRAN_CSG_Cells_Reporting_Desp_t, UTRAN_CSG_FDD_REPORTING_THRESHOLD_2, 6, &hf_utran_csg_fdd_reporting_threshold2),
5735   M_NEXT_EXIST (UTRAN_CSG_Cells_Reporting_Desp_t, existUTRAN_CSG_TDD_REPORTING_THRESHOLD, 1, &hf_utran_csg_cells_reporting_desp_existutran_csg_tdd_reporting_threshold_exist),
5736   M_UINT       (UTRAN_CSG_Cells_Reporting_Desp_t, UTRAN_CSG_TDD_REPORTING_THRESHOLD, 3, &hf_utran_csg_tdd_reporting_threshold),
5737 CSN_DESCR_END  (UTRAN_CSG_Cells_Reporting_Desp_t)
5738 
5739 static const
5740 CSN_DESCR_BEGIN(EUTRAN_CSG_Cells_Reporting_Desp_t)
5741   M_NEXT_EXIST (EUTRAN_CSG_Cells_Reporting_Desp_t, existEUTRAN_CSG_FDD_REPORTING_THRESHOLD, 2, &hf_eutran_csg_cells_reporting_desp_existeutran_csg_fdd_reporting_threshold_exist),
5742   M_UINT       (EUTRAN_CSG_Cells_Reporting_Desp_t, EUTRAN_CSG_FDD_REPORTING_THRESHOLD, 3, &hf_eutran_csg_fdd_reporting_threshold),
5743   M_UINT       (EUTRAN_CSG_Cells_Reporting_Desp_t, EUTRAN_CSG_FDD_REPORTING_THRESHOLD_2, 6, &hf_eutran_csg_fdd_reporting_threshold2),
5744   M_NEXT_EXIST (EUTRAN_CSG_Cells_Reporting_Desp_t, existEUTRAN_CSG_TDD_REPORTING_THRESHOLD, 2, &hf_eutran_csg_cells_reporting_desp_existeutran_csg_tdd_reporting_threshold_exist),
5745   M_UINT       (EUTRAN_CSG_Cells_Reporting_Desp_t, EUTRAN_CSG_TDD_REPORTING_THRESHOLD, 3, &hf_eutran_csg_tdd_reporting_threshold),
5746   M_UINT       (EUTRAN_CSG_Cells_Reporting_Desp_t, EUTRAN_CSG_TDD_REPORTING_THRESHOLD_2, 6, &hf_eutran_csg_tdd_reporting_threshold2),
5747 CSN_DESCR_END  (EUTRAN_CSG_Cells_Reporting_Desp_t)
5748 
5749 
5750 static const
5751 CSN_DESCR_BEGIN(CSG_Cells_Reporting_Desp_t)
5752   M_NEXT_EXIST (CSG_Cells_Reporting_Desp_t, existUTRAN_CSG_Cells_Reporting_Description, 1, &hf_csg_cells_reporting_desp_existutran_csg_cells_reporting_description_exist),
5753   M_TYPE       (CSG_Cells_Reporting_Desp_t, UTRAN_CSG_Cells_Reporting_Description, UTRAN_CSG_Cells_Reporting_Desp_t),
5754   M_NEXT_EXIST (CSG_Cells_Reporting_Desp_t, existEUTRAN_CSG_Cells_Reporting_Description, 1, &hf_csg_cells_reporting_desp_existeutran_csg_cells_reporting_description_exist),
5755   M_TYPE       (CSG_Cells_Reporting_Desp_t, EUTRAN_CSG_Cells_Reporting_Description, EUTRAN_CSG_Cells_Reporting_Desp_t),
5756 CSN_DESCR_END  (CSG_Cells_Reporting_Desp_t)
5757 
5758 static const
5759 CSN_DESCR_BEGIN        (PriorityAndEUTRAN_ParametersDescription_PMO_t)
5760   M_NEXT_EXIST         (PriorityAndEUTRAN_ParametersDescription_PMO_t, existServingCellPriorityParametersDescription, 1, &hf_priorityandeutran_parametersdescription_pmo_existservingcellpriorityparametersdescription_exist),
5761   M_TYPE               (PriorityAndEUTRAN_ParametersDescription_PMO_t, ServingCellPriorityParametersDescription, ServingCellPriorityParametersDescription_t),
5762   M_NEXT_EXIST         (PriorityAndEUTRAN_ParametersDescription_PMO_t, existPriorityParametersDescription3G_PMO, 1, &hf_priorityandeutran_parametersdescription_pmo_existpriorityparametersdescription3g_pmo_exist),
5763   M_TYPE               (PriorityAndEUTRAN_ParametersDescription_PMO_t, PriorityParametersDescription3G_PMO, PriorityParametersDescription3G_PMO_t),
5764   M_NEXT_EXIST         (PriorityAndEUTRAN_ParametersDescription_PMO_t, existEUTRAN_ParametersDescription_PMO, 1, &hf_priorityandeutran_parametersdescription_pmo_existeutran_parametersdescription_pmo_exist),
5765   M_TYPE               (PriorityAndEUTRAN_ParametersDescription_PMO_t, EUTRAN_ParametersDescription_PMO, EUTRAN_ParametersDescription_PMO_t),
5766 CSN_DESCR_END          (PriorityAndEUTRAN_ParametersDescription_PMO_t)
5767 
5768 
5769 static const
5770 CSN_DESCR_BEGIN        (Delete_All_Stored_Individual_Priorities_t)
5771   M_NULL               (Delete_All_Stored_Individual_Priorities_t, dummy, 0),
5772 CSN_DESCR_END          (Delete_All_Stored_Individual_Priorities_t)
5773 
5774 static const
5775 CSN_DESCR_BEGIN        (Individual_UTRAN_Priority_FDD_t)
5776   M_REC_ARRAY          (Individual_UTRAN_Priority_FDD_t, FDD_ARFCN, Count, 14, &hf_idvd_utran_priority_fdd_arfcn, &hf_idvd_utran_priority_fdd_arfcn_exist),
5777 CSN_DESCR_END          (Individual_UTRAN_Priority_FDD_t)
5778 
5779 static const
5780 CSN_DESCR_BEGIN        (Individual_UTRAN_Priority_TDD_t)
5781   M_REC_ARRAY          (Individual_UTRAN_Priority_TDD_t, TDD_ARFCN, Count, 14, &hf_idvd_utran_priority_tdd_arfcn, &hf_idvd_utran_priority_tdd_arfcn_exist),
5782 CSN_DESCR_END          (Individual_UTRAN_Priority_TDD_t)
5783 
5784 static const
5785 CSN_DESCR_BEGIN        (Repeated_Individual_UTRAN_Priority_Parameters_t)
5786   M_UNION              (Repeated_Individual_UTRAN_Priority_Parameters_t, 2, &hf_idvd_utran_priority_param),
5787   M_TYPE               (Repeated_Individual_UTRAN_Priority_Parameters_t, u.Individual_UTRAN_Priority_FDD, Individual_UTRAN_Priority_FDD_t),
5788   M_TYPE               (Repeated_Individual_UTRAN_Priority_Parameters_t, u.Individual_UTRAN_Priority_TDD, Individual_UTRAN_Priority_TDD_t),
5789   M_UINT               (Repeated_Individual_UTRAN_Priority_Parameters_t,  UTRAN_PRIORITY,  3, &hf_idvd_utran_priority),
5790 CSN_DESCR_END          (Repeated_Individual_UTRAN_Priority_Parameters_t)
5791 
5792 static const
5793 CSN_DESCR_BEGIN        (ThreeG_Individual_Priority_Parameters_Description_t)
5794   M_NEXT_EXIST         (ThreeG_Individual_Priority_Parameters_Description_t, Exist_DEFAULT_UTRAN_PRIORITY, 1, &hf_threeg_individual_priority_parameters_description_default_utran_priority_exist),
5795   M_UINT               (ThreeG_Individual_Priority_Parameters_Description_t,  DEFAULT_UTRAN_PRIORITY,  3, &hf_idvd_default_utran_priority),
5796   M_REC_TARRAY         (ThreeG_Individual_Priority_Parameters_Description_t, Repeated_Individual_UTRAN_Priority_Parameters, Repeated_Individual_UTRAN_Priority_Parameters_t, Repeated_Individual_UTRAN_Priority_Parameters_Count, &hf_threeg_individual_priority_parameters_description_repeated_individual_utran_priority_parameters_exist),
5797 CSN_DESCR_END          (ThreeG_Individual_Priority_Parameters_Description_t)
5798 
5799 static const
5800 CSN_DESCR_BEGIN        (Repeated_Individual_EUTRAN_Priority_Parameters_t)
5801   M_REC_ARRAY          (Repeated_Individual_EUTRAN_Priority_Parameters_t, EARFCN, Count, 16, &hf_idvd_eutran_priority_earfcn, &hf_idvd_eutran_priority_earfcn_exist),
5802   M_UINT               (Repeated_Individual_EUTRAN_Priority_Parameters_t,  EUTRAN_PRIORITY,  3, &hf_idvd_eutran_priority),
5803 CSN_DESCR_END          (Repeated_Individual_EUTRAN_Priority_Parameters_t)
5804 
5805 static const
5806 CSN_DESCR_BEGIN        (EUTRAN_Individual_Priority_Parameters_Description_t)
5807   M_NEXT_EXIST         (EUTRAN_Individual_Priority_Parameters_Description_t, Exist_DEFAULT_EUTRAN_PRIORITY, 1, &hf_eutran_individual_priority_parameters_description_default_eutran_priority_exist),
5808   M_UINT               (EUTRAN_Individual_Priority_Parameters_Description_t,  DEFAULT_EUTRAN_PRIORITY,  3, &hf_idvd_default_eutran_priority),
5809   M_REC_TARRAY         (EUTRAN_Individual_Priority_Parameters_Description_t, Repeated_Individual_EUTRAN_Priority_Parameters, Repeated_Individual_EUTRAN_Priority_Parameters_t, Count, &hf_eutran_individual_priority_parameters_description_repeated_individual_eutran_priority_parameters_exist),
5810 CSN_DESCR_END          (EUTRAN_Individual_Priority_Parameters_Description_t)
5811 
5812 static const
5813 CSN_DESCR_BEGIN        (Provide_Individual_Priorities_t)
5814   M_UINT               (Provide_Individual_Priorities_t,  GERAN_PRIORITY,  3, &hf_idvd_prio_geran_priority),
5815   M_NEXT_EXIST         (Provide_Individual_Priorities_t, Exist_3G_Individual_Priority_Parameters_Description, 1, &hf_provide_individual_priorities_3g_individual_priority_parameters_description_exist),
5816   M_TYPE               (Provide_Individual_Priorities_t, ThreeG_Individual_Priority_Parameters_Description, ThreeG_Individual_Priority_Parameters_Description_t),
5817   M_NEXT_EXIST         (Provide_Individual_Priorities_t, Exist_EUTRAN_Individual_Priority_Parameters_Description, 1, &hf_provide_individual_priorities_eutran_individual_priority_parameters_description_exist),
5818   M_TYPE               (Provide_Individual_Priorities_t, EUTRAN_Individual_Priority_Parameters_Description, EUTRAN_Individual_Priority_Parameters_Description_t),
5819   M_NEXT_EXIST         (Provide_Individual_Priorities_t, Exist_T3230_timeout_value, 1, &hf_provide_individual_priorities_t3230_timeout_value_exist),
5820   M_UINT               (Provide_Individual_Priorities_t,  T3230_timeout_value,  3, &hf_idvd_prio_t3230_timeout_value),
5821 CSN_DESCR_END          (Provide_Individual_Priorities_t)
5822 
5823 static const
5824 CSN_DESCR_BEGIN        (Individual_Priorities_t)
5825   M_UNION              (Individual_Priorities_t, 2, &hf_idvd_priorities),
5826   M_TYPE               (Individual_Priorities_t, u.Delete_All_Stored_Individual_Priorities, Delete_All_Stored_Individual_Priorities_t),
5827   M_TYPE               (Individual_Priorities_t, u.Provide_Individual_Priorities, Provide_Individual_Priorities_t),
5828 CSN_DESCR_END          (Individual_Priorities_t)
5829 
5830 static const
5831 CSN_DESCR_BEGIN        (PMO_AdditionsR9_t)
5832   M_NEXT_EXIST         (PMO_AdditionsR9_t, existEnhanced_Cell_Reselection_Parameters_Description, 1, &hf_pmo_additionsr9_existenhanced_cell_reselection_parameters_description_exist),
5833   M_TYPE               (PMO_AdditionsR9_t, Enhanced_Cell_Reselection_Parameters_Description, Enh_Cell_Reselect_Param_Desp_t),
5834   M_NEXT_EXIST         (PMO_AdditionsR9_t, existCSG_Cells_Reporting_Description, 1, &hf_pmo_additionsr9_existcsg_cells_reporting_description_exist),
5835   M_TYPE               (PMO_AdditionsR9_t, CSG_Cells_Reporting_Description, CSG_Cells_Reporting_Desp_t),
5836 CSN_DESCR_END          (PMO_AdditionsR9_t)
5837 
5838 static const
5839 CSN_DESCR_BEGIN        (PMO_AdditionsR8_t)
5840   M_NEXT_EXIST         (PMO_AdditionsR8_t, existBA_IND_3G_PMO_IND, 2, &hf_pmo_additionsr8_existba_ind_3g_pmo_ind_exist),
5841   M_UINT               (PMO_AdditionsR8_t,  BA_IND_3G, 1, &hf_pmo_additionsr8_ba_ind_3g),
5842   M_UINT               (PMO_AdditionsR8_t,  PMO_IND, 1, &hf_pmo_additionsr8_pmo_ind),
5843   M_NEXT_EXIST         (PMO_AdditionsR8_t, existPriorityAndEUTRAN_ParametersDescription_PMO, 1, &hf_pmo_additionsr8_existpriorityandeutran_parametersdescription_pmo_exist),
5844   M_TYPE               (PMO_AdditionsR8_t, PriorityAndEUTRAN_ParametersDescription_PMO, PriorityAndEUTRAN_ParametersDescription_PMO_t),
5845   M_NEXT_EXIST         (PMO_AdditionsR8_t, existIndividualPriorities_PMO, 1, &hf_pmo_additionsr8_existindividualpriorities_pmo_exist),
5846   M_TYPE               (PMO_AdditionsR8_t, IndividualPriorities_PMO, Individual_Priorities_t),
5847   M_NEXT_EXIST         (PMO_AdditionsR8_t, existThreeG_CSG_Description, 1, &hf_pmo_additionsr8_existthreeg_csg_description_exist),
5848   M_TYPE               (PMO_AdditionsR8_t, ThreeG_CSG_Description_PMO, ThreeG_CSG_Description_t),
5849   M_NEXT_EXIST         (PMO_AdditionsR8_t, existEUTRAN_CSG_Description, 1, &hf_pmo_additionsr8_existeutran_csg_description_exist),
5850   M_TYPE               (PMO_AdditionsR8_t, EUTRAN_CSG_Description_PMO, EUTRAN_CSG_Description_t),
5851   M_NEXT_EXIST         (PMO_AdditionsR8_t, existMeasurement_Control_Parameters_Description, 1, &hf_pmo_additionsr8_existmeasurement_control_parameters_description_exist),
5852   M_TYPE               (PMO_AdditionsR8_t, Measurement_Control_Parameters_Description_PMO, Meas_Ctrl_Param_Desp_t),
5853   M_NEXT_EXIST_OR_NULL (PMO_AdditionsR8_t, existAdditionsR9, 1, &hf_pmo_additionsr8_existadditionsr9_exist),
5854   M_TYPE               (PMO_AdditionsR8_t, AdditionsR9, PMO_AdditionsR9_t),
5855 CSN_DESCR_END          (PMO_AdditionsR8_t)
5856 
5857 static const
5858 CSN_DESCR_BEGIN        (PMO_AdditionsR7_t)
5859   M_NEXT_EXIST         (PMO_AdditionsR7_t, existREPORTING_OFFSET_THRESHOLD_700, 2, &hf_pmo_additionsr7_existreporting_offset_threshold_700_exist),
5860   M_UINT               (PMO_AdditionsR7_t,  REPORTING_OFFSET_700,  3, &hf_pmo_additionsr7_reporting_offset_700),
5861   M_UINT               (PMO_AdditionsR7_t,  REPORTING_THRESHOLD_700,  3, &hf_pmo_additionsr7_reporting_threshold_700),
5862 
5863   M_NEXT_EXIST         (PMO_AdditionsR7_t, existREPORTING_OFFSET_THRESHOLD_810, 2, &hf_pmo_additionsr7_existreporting_offset_threshold_810_exist),
5864   M_UINT               (PMO_AdditionsR7_t,  REPORTING_OFFSET_810,  3, &hf_pmo_additionsr7_reporting_offset_810),
5865   M_UINT               (PMO_AdditionsR7_t,  REPORTING_THRESHOLD_810,  3, &hf_pmo_additionsr7_reporting_threshold_810),
5866 
5867   M_NEXT_EXIST_OR_NULL (PMO_AdditionsR7_t, existAdditionsR8, 1, &hf_pmo_additionsr7_existadditionsr8_exist),
5868   M_TYPE               (PMO_AdditionsR7_t, additionsR8, PMO_AdditionsR8_t),
5869 CSN_DESCR_END          (PMO_AdditionsR7_t)
5870 
5871 static const
5872 CSN_DESCR_BEGIN        (PMO_AdditionsR6_t)
5873   M_UINT               (PMO_AdditionsR6_t,  CCN_ACTIVE_3G,  1, &hf_pmo_additionsr6_ccn_active_3g),
5874   M_NEXT_EXIST_OR_NULL (PMO_AdditionsR6_t, existAdditionsR7, 1, &hf_pmo_additionsr6_existadditionsr7_exist),
5875   M_TYPE               (PMO_AdditionsR6_t, additionsR7, PMO_AdditionsR7_t),
5876 CSN_DESCR_END          (PMO_AdditionsR6_t)
5877 
5878 static const
5879 CSN_DESCR_BEGIN(PCCO_AdditionsR6_t)
5880   M_UINT       (PCCO_AdditionsR6_t,  CCN_ACTIVE_3G,  1, &hf_pcco_additionsr6_ccn_active_3g),
5881 CSN_DESCR_END  (PCCO_AdditionsR6_t)
5882 
5883 static const
5884 CSN_DESCR_BEGIN        (PMO_AdditionsR5_t)
5885   M_NEXT_EXIST         (PMO_AdditionsR5_t, existGRNTI_Extension, 1, &hf_pmo_additionsr5_existgrnti_extension_exist),
5886   M_UINT               (PMO_AdditionsR5_t,  GRNTI,  4, &hf_pmo_additionsr5_grnti),
5887   M_NEXT_EXIST         (PMO_AdditionsR5_t, exist_lu_ModeNeighbourCellParams, 1, &hf_pmo_additionsr5_lu_modeneighbourcellparams_exist),
5888   M_REC_TARRAY         (PMO_AdditionsR5_t, lu_ModeNeighbourCellParams, lu_ModeNeighbourCellParams_t, count_lu_ModeNeighbourCellParams, &hf_pmo_additionsr5_lu_modeneighbourcellparams_exist),
5889   M_NEXT_EXIST         (PMO_AdditionsR5_t, existNC_lu_ModeOnlyCapableCellList, 1, &hf_pmo_additionsr5_existnc_lu_modeonlycapablecelllist_exist),
5890   M_TYPE               (PMO_AdditionsR5_t, NC_lu_ModeOnlyCapableCellList, NC_lu_ModeOnlyCapableCellList_t),
5891   M_NEXT_EXIST         (PMO_AdditionsR5_t, existGPRS_AdditionalMeasurementParams3G, 1, &hf_pmo_additionsr5_existgprs_additionalmeasurementparams3g_exist),
5892   M_TYPE               (PMO_AdditionsR5_t, GPRS_AdditionalMeasurementParams3G, GPRS_AdditionalMeasurementParams3G_t),
5893   M_NEXT_EXIST_OR_NULL (PMO_AdditionsR5_t, existAdditionsR6, 1, &hf_pmo_additionsr5_existadditionsr6_exist),
5894   M_TYPE               (PMO_AdditionsR5_t, additionsR6, PMO_AdditionsR6_t),
5895 CSN_DESCR_END  (PMO_AdditionsR5_t)
5896 
5897 static const
5898 CSN_DESCR_BEGIN        (PCCO_AdditionsR5_t)
5899   M_NEXT_EXIST         (PCCO_AdditionsR5_t, existGRNTI_Extension, 1, &hf_pcco_additionsr5_existgrnti_extension_exist),
5900   M_UINT               (PCCO_AdditionsR5_t,  GRNTI,  4, &hf_pcco_additionsr5_grnti),
5901   M_NEXT_EXIST         (PCCO_AdditionsR5_t, exist_lu_ModeNeighbourCellParams, 1, &hf_pcco_additionsr5_lu_modeneighbourcellparams_exist),
5902   M_REC_TARRAY         (PCCO_AdditionsR5_t, lu_ModeNeighbourCellParams, lu_ModeNeighbourCellParams_t, count_lu_ModeNeighbourCellParams, &hf_pcco_additionsr5_lu_modeneighbourcellparams_exist),
5903   M_NEXT_EXIST         (PCCO_AdditionsR5_t, existNC_lu_ModeOnlyCapableCellList, 1, &hf_pcco_additionsr5_existnc_lu_modeonlycapablecelllist_exist),
5904   M_TYPE               (PCCO_AdditionsR5_t, NC_lu_ModeOnlyCapableCellList, NC_lu_ModeOnlyCapableCellList_t),
5905   M_NEXT_EXIST         (PCCO_AdditionsR5_t, existGPRS_AdditionalMeasurementParams3G, 1, &hf_pcco_additionsr5_existgprs_additionalmeasurementparams3g_exist),
5906   M_TYPE               (PCCO_AdditionsR5_t, GPRS_AdditionalMeasurementParams3G, GPRS_AdditionalMeasurementParams3G_t),
5907   M_NEXT_EXIST_OR_NULL (PCCO_AdditionsR5_t, existAdditionsR6, 1, &hf_pcco_additionsr5_existadditionsr6_exist),
5908   M_TYPE               (PCCO_AdditionsR5_t, additionsR6, PCCO_AdditionsR6_t),
5909 CSN_DESCR_END  (PCCO_AdditionsR5_t)
5910 
5911 static const
5912 CSN_DESCR_BEGIN        (PMO_AdditionsR4_t)
5913   M_UINT               (PMO_AdditionsR4_t,  CCN_ACTIVE,  1, &hf_pmo_additionsr4_ccn_active),
5914   M_NEXT_EXIST         (PMO_AdditionsR4_t, Exist_CCN_Support_Description_ID, 1, &hf_pmo_additionsr4_ccn_support_description_id_exist),
5915   M_TYPE               (PMO_AdditionsR4_t, CCN_Support_Description, CCN_Support_Description_t),
5916   M_NEXT_EXIST_OR_NULL (PMO_AdditionsR4_t, Exist_AdditionsR5, 1, &hf_pmo_additionsr4_additionsr5_exist),
5917   M_TYPE               (PMO_AdditionsR4_t, AdditionsR5, PMO_AdditionsR5_t),
5918 CSN_DESCR_END          (PMO_AdditionsR4_t)
5919 
5920 static const
5921 CSN_DESCR_BEGIN        (PMO_AdditionsR99_t)
5922   M_NEXT_EXIST         (PMO_AdditionsR99_t, Exist_ENH_Measurement_Parameters, 1, &hf_pmo_additionsr99_enh_measurement_parameters_exist),
5923   M_TYPE               (PMO_AdditionsR99_t, ENH_Measurement_Parameters, ENH_Measurement_Parameters_PMO_t),
5924   M_NEXT_EXIST_OR_NULL (PMO_AdditionsR99_t, Exist_AdditionsR4, 1, &hf_pmo_additionsr99_additionsr4_exist),
5925   M_TYPE               (PMO_AdditionsR99_t, AdditionsR4, PMO_AdditionsR4_t),
5926 CSN_DESCR_END          (PMO_AdditionsR99_t)
5927 
5928 static const
5929 CSN_DESCR_BEGIN        (PCCO_AdditionsR4_t)
5930   M_UINT               (PCCO_AdditionsR4_t,  CCN_ACTIVE,  1, &hf_pcco_additionsr4_ccn_active),
5931   M_NEXT_EXIST         (PCCO_AdditionsR4_t, Exist_Container_ID, 1, &hf_pcco_additionsr4_container_id_exist),
5932   M_UINT               (PCCO_AdditionsR4_t,  CONTAINER_ID,  2, &hf_pcco_additionsr4_container_id),
5933   M_NEXT_EXIST         (PCCO_AdditionsR4_t, Exist_CCN_Support_Description_ID, 1, &hf_pcco_additionsr4_ccn_support_description_id_exist),
5934   M_TYPE               (PCCO_AdditionsR4_t, CCN_Support_Description, CCN_Support_Description_t),
5935   M_NEXT_EXIST_OR_NULL (PCCO_AdditionsR4_t, Exist_AdditionsR5, 1, &hf_pcco_additionsr4_additionsr5_exist),
5936   M_TYPE               (PCCO_AdditionsR4_t, AdditionsR5, PCCO_AdditionsR5_t),
5937 CSN_DESCR_END  (PCCO_AdditionsR4_t)
5938 
5939 static const
5940 CSN_DESCR_BEGIN        (PCCO_AdditionsR99_t)
5941   M_TYPE               (PCCO_AdditionsR99_t, ENH_Measurement_Parameters, ENH_Measurement_Parameters_PCCO_t),
5942   M_NEXT_EXIST_OR_NULL (PCCO_AdditionsR99_t, Exist_AdditionsR4, 1, &hf_additionsr99_exist),
5943   M_TYPE               (PCCO_AdditionsR99_t, AdditionsR4, PCCO_AdditionsR4_t),
5944 CSN_DESCR_END          (PCCO_AdditionsR99_t)
5945 
5946 static const
5947 CSN_DESCR_BEGIN(LSA_ID_Info_Element_t)
5948   M_UNION      (LSA_ID_Info_Element_t, 2, &hf_lsa_id_info_element),
5949   M_UINT       (LSA_ID_Info_Element_t,  u.LSA_ID,  24, &hf_lsa_id_info_element_lsa_id),
5950   M_UINT       (LSA_ID_Info_Element_t,  u.ShortLSA_ID,  10, &hf_lsa_id_info_element_shortlsa_id),
5951 CSN_DESCR_END  (LSA_ID_Info_Element_t)
5952 
5953 static const
5954 CSN_DESCR_BEGIN(LSA_ID_Info_t)
5955   M_REC_TARRAY (LSA_ID_Info_t, LSA_ID_Info_Elements, LSA_ID_Info_Element_t, Count_LSA_ID_Info_Element, &hf_lsa_id_info_lsa_id_info_elements_exist),
5956 CSN_DESCR_END  (LSA_ID_Info_t)
5957 
5958 static const
5959 CSN_DESCR_BEGIN(LSA_Parameters_t)
5960   M_UINT       (LSA_Parameters_t,  NR_OF_FREQ_OR_CELLS,  5, &hf_lsa_parameters_nr_of_freq_or_cells),
5961   M_VAR_TARRAY (LSA_Parameters_t, LSA_ID_Info, LSA_ID_Info_t, NR_OF_FREQ_OR_CELLS),
5962 CSN_DESCR_END  (LSA_Parameters_t)
5963 
5964 static const
5965 CSN_DESCR_BEGIN        (PMO_AdditionsR98_t)
5966   M_NEXT_EXIST         (PMO_AdditionsR98_t, Exist_LSA_Parameters, 1, &hf_pmo_additionsr98_lsa_parameters_exist),
5967   M_TYPE               (PMO_AdditionsR98_t, LSA_Parameters, LSA_Parameters_t),
5968 
5969   M_NEXT_EXIST_OR_NULL (PMO_AdditionsR98_t, Exist_AdditionsR99, 1, &hf_additionsr99_exist),
5970   M_TYPE               (PMO_AdditionsR98_t, AdditionsR99, PMO_AdditionsR99_t),
5971 CSN_DESCR_END          (PMO_AdditionsR98_t)
5972 
5973 static const
5974 CSN_DESCR_BEGIN        (PCCO_AdditionsR98_t)
5975   M_NEXT_EXIST         (PCCO_AdditionsR98_t, Exist_LSA_Parameters, 1, &hf_pcco_additionsr98_lsa_parameters_exist),
5976   M_TYPE               (PCCO_AdditionsR98_t, LSA_Parameters, LSA_Parameters_t),
5977 
5978   M_NEXT_EXIST_OR_NULL (PCCO_AdditionsR98_t, Exist_AdditionsR99, 1, &hf_additionsr99_exist),
5979   M_TYPE               (PCCO_AdditionsR98_t, AdditionsR99, PCCO_AdditionsR99_t),
5980 CSN_DESCR_END          (PCCO_AdditionsR98_t)
5981 
5982 static const
5983 CSN_DESCR_BEGIN        (Target_Cell_GSM_t)
5984   M_UINT               (Target_Cell_GSM_t,  IMMEDIATE_REL,  1, &hf_target_cell_gsm_immediate_rel),
5985   M_UINT               (Target_Cell_GSM_t,  ARFCN, 10, &hf_arfcn),
5986   M_UINT               (Target_Cell_GSM_t,  BSIC,  6, &hf_target_cell_gsm_bsic),
5987   M_TYPE               (Target_Cell_GSM_t, NC_Measurement_Parameters, NC_Measurement_Parameters_with_Frequency_List_t),
5988   M_NEXT_EXIST_OR_NULL (Target_Cell_GSM_t, Exist_AdditionsR98, 1, &hf_target_cell_gsm_additionsr98_exist),
5989   M_TYPE               (Target_Cell_GSM_t, AdditionsR98, PCCO_AdditionsR98_t),
5990 CSN_DESCR_END          (Target_Cell_GSM_t)
5991 
5992 static const
5993 CSN_DESCR_BEGIN        (Target_Cell_3G_AdditionsR8_t)
5994   M_NEXT_EXIST         (Target_Cell_3G_AdditionsR8_t, Exist_EUTRAN_Target_Cell, 1, &hf_target_cell_3g_additionsr8_eutran_target_cell_exist),
5995   M_TYPE               (Target_Cell_3G_AdditionsR8_t, EUTRAN_Target_Cell, EUTRAN_Target_Cell_t),
5996   M_NEXT_EXIST         (Target_Cell_3G_AdditionsR8_t, Exist_Individual_Priorities, 1, &hf_target_cell_3g_additionsr8_individual_priorities_exist),
5997   M_TYPE               (Target_Cell_3G_AdditionsR8_t, Individual_Priorities, Individual_Priorities_t),
5998 CSN_DESCR_END          (Target_Cell_3G_AdditionsR8_t)
5999 
6000 static const
6001 CSN_DESCR_BEGIN        (Target_Cell_3G_AdditionsR5_t)
6002   M_NEXT_EXIST         (Target_Cell_3G_AdditionsR5_t, Exist_G_RNTI_Extention, 1, &hf_target_cell_3g_additionsr5_g_rnti_extention_exist),
6003   M_UINT               (Target_Cell_3G_AdditionsR5_t,  G_RNTI_Extention,  4, &hf_target_cell_g_rnti_ext),
6004   M_NEXT_EXIST_OR_NULL (Target_Cell_3G_AdditionsR5_t, Exist_AdditionsR8, 1, &hf_target_cell_3g_additionsr5_additionsr8_exist),
6005   M_TYPE               (Target_Cell_3G_AdditionsR5_t, AdditionsR8, Target_Cell_3G_AdditionsR8_t),
6006 CSN_DESCR_END          (Target_Cell_3G_AdditionsR5_t)
6007 
6008 static const
6009 CSN_DESCR_BEGIN(Target_Cell_3G_t)
6010   /* 00 -- Message escape */
6011   M_FIXED      (Target_Cell_3G_t, 2, 0x00, &hf_target_cell_3g),
6012   M_UINT       (Target_Cell_3G_t,  IMMEDIATE_REL,  1, &hf_target_cell_3g_immediate_rel),
6013   M_NEXT_EXIST (Target_Cell_3G_t, Exist_FDD_Description, 1, &hf_target_cell_3g_fdd_description_exist),
6014   M_TYPE       (Target_Cell_3G_t, FDD_Target_Cell, FDD_Target_Cell_t),
6015   M_NEXT_EXIST (Target_Cell_3G_t, Exist_TDD_Description, 1, &hf_target_cell_3g_tdd_description_exist),
6016   M_TYPE       (Target_Cell_3G_t, TDD_Target_Cell, TDD_Target_Cell_t),
6017   M_NEXT_EXIST_OR_NULL (Target_Cell_3G_t, Exist_AdditionsR5, 1, &hf_target_cell_3g_additionsr5_exist),
6018   M_TYPE       (Target_Cell_3G_t, AdditionsR5, Target_Cell_3G_AdditionsR5_t),
6019 CSN_DESCR_END  (Target_Cell_3G_t)
6020 
6021 static const
6022 CSN_DESCR_BEGIN(Packet_Cell_Change_Order_t)
6023   M_UINT       (Packet_Cell_Change_Order_t, MESSAGE_TYPE, 6, &hf_dl_message_type),
6024   M_UINT       (Packet_Cell_Change_Order_t, PAGE_MODE, 2, &hf_page_mode),
6025 
6026   M_TYPE       (Packet_Cell_Change_Order_t, ID, PacketCellChangeOrderID_t),
6027 
6028   M_UNION      (Packet_Cell_Change_Order_t, 2, &hf_packet_cell_change_order),
6029   M_TYPE       (Packet_Cell_Change_Order_t, u.Target_Cell_GSM, Target_Cell_GSM_t),
6030   M_TYPE       (Packet_Cell_Change_Order_t, u.Target_Cell_3G, Target_Cell_3G_t),
6031 
6032   M_PADDING_BITS(Packet_Cell_Change_Order_t, &hf_padding),
6033 CSN_DESCR_END  (Packet_Cell_Change_Order_t)
6034 
6035 /* < Packet (Enhanced) Measurement Report message contents > */
6036 static const
6037 CSN_DESCR_BEGIN(BA_USED_t)
6038   M_UINT       (BA_USED_t,  BA_USED,  1, &hf_ba_used_ba_used),
6039   M_UINT       (BA_USED_t,  BA_USED_3G,  1, &hf_ba_used_ba_used_3g),
6040 CSN_DESCR_END  (BA_USED_t)
6041 
6042 static const
6043 CSN_DESCR_BEGIN(Serving_Cell_Data_t)
6044   M_UINT       (Serving_Cell_Data_t,  RXLEV_SERVING_CELL,  6, &hf_serving_cell_data_rxlev_serving_cell),
6045   M_FIXED      (Serving_Cell_Data_t, 1, 0, &hf_serving_cell_data),
6046 CSN_DESCR_END  (Serving_Cell_Data_t)
6047 
6048 static const
6049 CSN_DESCR_BEGIN(NC_Measurements_t)
6050   M_UINT       (NC_Measurements_t,  FREQUENCY_N,  6, &hf_nc_measurements_frequency_n),
6051 
6052   M_NEXT_EXIST (NC_Measurements_t, Exist_BSIC_N, 1, &hf_nc_measurements_bsic_n_exist),
6053   M_UINT       (NC_Measurements_t,  BSIC_N,  6, &hf_nc_measurements_bsic_n),
6054   M_UINT       (NC_Measurements_t,  RXLEV_N,  6, &hf_nc_measurements_rxlev_n),
6055 CSN_DESCR_END  (NC_Measurements_t)
6056 
6057 static const
6058 CSN_DESCR_BEGIN(RepeatedInvalid_BSIC_Info_t)
6059   M_UINT       (RepeatedInvalid_BSIC_Info_t,  BCCH_FREQ_N,  5, &hf_repeatedinvalid_bsic_info_bcch_freq_n),
6060   M_UINT       (RepeatedInvalid_BSIC_Info_t,  BSIC_N,  6, &hf_repeatedinvalid_bsic_info_bsic_n),
6061   M_UINT       (RepeatedInvalid_BSIC_Info_t,  RXLEV_N,  6, &hf_repeatedinvalid_bsic_info_rxlev_n),
6062 CSN_DESCR_END  (RepeatedInvalid_BSIC_Info_t)
6063 
6064 static const
6065 CSN_DESCR_BEGIN(REPORTING_QUANTITY_Instance_t)
6066   M_NEXT_EXIST (REPORTING_QUANTITY_Instance_t, Exist_REPORTING_QUANTITY, 1, &hf_reporting_quantity_instance_reporting_quantity_exist),
6067   M_UINT       (REPORTING_QUANTITY_Instance_t,  REPORTING_QUANTITY,  6, &hf_reporting_quantity_instance_reporting_quantity),
6068 CSN_DESCR_END  (REPORTING_QUANTITY_Instance_t)
6069 
6070 static const
6071 CSN_DESCR_BEGIN(NC_Measurement_Report_t)
6072   M_UINT       (NC_Measurement_Report_t,  NC_MODE,  1, &hf_nc_measurement_report_nc_mode),
6073   M_TYPE       (NC_Measurement_Report_t, Serving_Cell_Data, Serving_Cell_Data_t),
6074   M_UINT       (NC_Measurement_Report_t,  NUMBER_OF_NC_MEASUREMENTS,  3, &hf_nc_measurement_report_number_of_nc_measurements),
6075   M_VAR_TARRAY (NC_Measurement_Report_t, NC_Measurements, NC_Measurements_t, NUMBER_OF_NC_MEASUREMENTS),
6076 CSN_DESCR_END  (NC_Measurement_Report_t)
6077 
6078 static const
6079 CSN_DESCR_BEGIN(ENH_NC_Measurement_Report_t)
6080   M_UINT       (ENH_NC_Measurement_Report_t,  NC_MODE,  1, &hf_enh_nc_measurement_report_nc_mode),
6081   M_UNION      (ENH_NC_Measurement_Report_t, 2, &hf_enh_nc_measurement_report),
6082   M_TYPE       (ENH_NC_Measurement_Report_t, u.BA_USED, BA_USED_t),
6083   M_UINT       (ENH_NC_Measurement_Report_t,  u.PSI3_CHANGE_MARK, 2, &hf_psi3_change_mark),
6084   M_UINT       (ENH_NC_Measurement_Report_t,  PMO_USED,  1, &hf_enh_nc_measurement_report_pmo_used),
6085   M_UINT       (ENH_NC_Measurement_Report_t,  BSIC_Seen,  1, &hf_enh_nc_measurement_report_bsic_seen),
6086   M_UINT       (ENH_NC_Measurement_Report_t,  SCALE,  1, &hf_enh_nc_measurement_report_scale),
6087   M_NEXT_EXIST (ENH_NC_Measurement_Report_t, Exist_Serving_Cell_Data, 1, &hf_enh_nc_measurement_report_serving_cell_data_exist),
6088   M_TYPE       (ENH_NC_Measurement_Report_t, Serving_Cell_Data, Serving_Cell_Data_t),
6089   M_REC_TARRAY (ENH_NC_Measurement_Report_t, RepeatedInvalid_BSIC_Info, RepeatedInvalid_BSIC_Info_t, Count_RepeatedInvalid_BSIC_Info, &hf_enh_nc_measurement_report_repeatedinvalid_bsic_info_exist),
6090   M_NEXT_EXIST (ENH_NC_Measurement_Report_t, Exist_ReportBitmap, 1, &hf_enh_nc_measurement_report_reportbitmap_exist),
6091   M_VAR_TARRAY (ENH_NC_Measurement_Report_t, REPORTING_QUANTITY_Instances, REPORTING_QUANTITY_Instance_t, Count_REPORTING_QUANTITY_Instances),
6092 CSN_DESCR_END  (ENH_NC_Measurement_Report_t)
6093 
6094 
6095 static const
6096 CSN_DESCR_BEGIN(EXT_Measurement_Report_t)
6097   M_UINT       (EXT_Measurement_Report_t,  EXT_REPORTING_TYPE,  2, &hf_ext_measurement_report_ext_reporting_type),
6098 
6099   M_NEXT_EXIST (EXT_Measurement_Report_t, Exist_I_LEVEL, 1, &hf_ext_measurement_report_i_level_exist),
6100 
6101   M_NEXT_EXIST (EXT_Measurement_Report_t, Slot[0].Exist, 1, &hf_ext_measurement_report_slot0_exist),
6102   M_UINT       (EXT_Measurement_Report_t,  Slot[0].I_LEVEL,  6, &hf_ext_measurement_report_slot0_i_level),
6103 
6104   M_NEXT_EXIST (EXT_Measurement_Report_t, Slot[1].Exist, 1, &hf_ext_measurement_report_slot1_exist),
6105   M_UINT       (EXT_Measurement_Report_t,  Slot[1].I_LEVEL,  6, &hf_ext_measurement_report_slot1_i_level),
6106 
6107   M_NEXT_EXIST (EXT_Measurement_Report_t, Slot[2].Exist, 1, &hf_ext_measurement_report_slot2_exist),
6108   M_UINT       (EXT_Measurement_Report_t,  Slot[2].I_LEVEL,  6, &hf_ext_measurement_report_slot2_i_level),
6109 
6110   M_NEXT_EXIST (EXT_Measurement_Report_t, Slot[3].Exist, 1, &hf_ext_measurement_report_slot3_exist),
6111   M_UINT       (EXT_Measurement_Report_t,  Slot[3].I_LEVEL,  6, &hf_ext_measurement_report_slot3_i_level),
6112 
6113   M_NEXT_EXIST (EXT_Measurement_Report_t, Slot[4].Exist, 1, &hf_ext_measurement_report_slot4_exist),
6114   M_UINT       (EXT_Measurement_Report_t,  Slot[4].I_LEVEL,  6, &hf_ext_measurement_report_slot4_i_level),
6115 
6116   M_NEXT_EXIST (EXT_Measurement_Report_t, Slot[5].Exist, 1, &hf_ext_measurement_report_slot5_exist),
6117   M_UINT       (EXT_Measurement_Report_t,  Slot[5].I_LEVEL,  6, &hf_ext_measurement_report_slot5_i_level),
6118 
6119   M_NEXT_EXIST (EXT_Measurement_Report_t, Slot[6].Exist, 1, &hf_ext_measurement_report_slot6_exist),
6120   M_UINT       (EXT_Measurement_Report_t,  Slot[6].I_LEVEL,  6, &hf_ext_measurement_report_slot6_i_level),
6121 
6122   M_NEXT_EXIST (EXT_Measurement_Report_t, Slot[7].Exist, 1, &hf_ext_measurement_report_slot7_exist),
6123   M_UINT       (EXT_Measurement_Report_t,  Slot[7].I_LEVEL,  6, &hf_ext_measurement_report_slot7_i_level),
6124 
6125   M_UINT       (EXT_Measurement_Report_t,  NUMBER_OF_EXT_MEASUREMENTS,  5, &hf_ext_measurement_report_number_of_ext_measurements),
6126   M_VAR_TARRAY (EXT_Measurement_Report_t, EXT_Measurements, NC_Measurements_t, NUMBER_OF_EXT_MEASUREMENTS),
6127 CSN_DESCR_END  (EXT_Measurement_Report_t)
6128 
6129 static const
6130 CSN_DESCR_BEGIN (Measurements_3G_t)
6131   M_UINT          (Measurements_3G_t,  CELL_LIST_INDEX_3G,  7, &hf_measurements_3g_cell_list_index_3g),
6132   M_UINT          (Measurements_3G_t,  REPORTING_QUANTITY,  6, &hf_measurements_3g_reporting_quantity),
6133 CSN_DESCR_END   (Measurements_3G_t)
6134 
6135 static const
6136 CSN_DESCR_BEGIN (EUTRAN_Measurement_Report_Body_t)
6137   M_UINT        (EUTRAN_Measurement_Report_Body_t,  EUTRAN_FREQUENCY_INDEX,  3, &hf_pmr_eutran_meas_rpt_freq_idx),
6138   M_UINT        (EUTRAN_Measurement_Report_Body_t,  CELL_IDENTITY,  9, &hf_pmr_eutran_meas_rpt_cell_id),
6139   M_UINT        (EUTRAN_Measurement_Report_Body_t,  REPORTING_QUANTITY,  6, &hf_pmr_eutran_meas_rpt_quantity),
6140 CSN_DESCR_END   (EUTRAN_Measurement_Report_Body_t)
6141 
6142 static const
6143 CSN_DESCR_BEGIN (EUTRAN_Measurement_Report_t)
6144   M_UINT_OFFSET (EUTRAN_Measurement_Report_t, N_EUTRAN,  2, 1, &hf_eutran_measurement_report_num_eutran),
6145   M_VAR_TARRAY  (EUTRAN_Measurement_Report_t, Report, EUTRAN_Measurement_Report_Body_t, N_EUTRAN),
6146 CSN_DESCR_END   (EUTRAN_Measurement_Report_t)
6147 
6148 static const
6149 CSN_DESCR_BEGIN(UTRAN_CSG_Measurement_Report_t)
6150   M_UINT       (UTRAN_CSG_Measurement_Report_t,  UTRAN_CGI,  28, &hf_utran_csg_meas_rpt_cgi),
6151   M_NEXT_EXIST (UTRAN_CSG_Measurement_Report_t, Exist_PLMN_ID, 1, &hf_utran_csg_measurement_report_plmn_id_exist),
6152   M_TYPE       (UTRAN_CSG_Measurement_Report_t,  Plmn_ID, PLMN_t),
6153   M_UINT       (UTRAN_CSG_Measurement_Report_t,  CSG_ID,  27, &hf_utran_csg_meas_rpt_csg_id),
6154   M_UINT       (UTRAN_CSG_Measurement_Report_t,  Access_Mode, 1, &hf_utran_csg_meas_rpt_access_mode),
6155   M_UINT       (UTRAN_CSG_Measurement_Report_t,  REPORTING_QUANTITY,  6, &hf_utran_csg_meas_rpt_quantity),
6156 CSN_DESCR_END  (UTRAN_CSG_Measurement_Report_t)
6157 
6158 static const
6159 CSN_DESCR_BEGIN(EUTRAN_CSG_Measurement_Report_t)
6160   M_UINT       (EUTRAN_CSG_Measurement_Report_t, EUTRAN_CGI, 28, &hf_eutran_csg_meas_rpt_cgi),
6161   M_UINT       (EUTRAN_CSG_Measurement_Report_t, Tracking_Area_Code, 16, &hf_eutran_csg_meas_rpt_ta),
6162   M_NEXT_EXIST (EUTRAN_CSG_Measurement_Report_t, Exist_PLMN_ID, 1, &hf_eutran_csg_measurement_report_plmn_id_exist),
6163   M_TYPE       (EUTRAN_CSG_Measurement_Report_t,  Plmn_ID, PLMN_t),
6164   M_UINT       (EUTRAN_CSG_Measurement_Report_t, CSG_ID, 27, &hf_eutran_csg_meas_rpt_csg_id),
6165   M_UINT       (EUTRAN_CSG_Measurement_Report_t, Access_Mode, 1, &hf_eutran_csg_meas_rpt_access_mode),
6166   M_UINT       (EUTRAN_CSG_Measurement_Report_t, REPORTING_QUANTITY, 6, &hf_eutran_csg_meas_rpt_quantity),
6167 CSN_DESCR_END  (EUTRAN_CSG_Measurement_Report_t)
6168 
6169 static const
6170 CSN_DESCR_BEGIN (PMR_AdditionsR9_t)
6171   M_NEXT_EXIST  (PMR_AdditionsR9_t, Exist_UTRAN_CSG_Meas_Rpt, 1, &hf_pmr_additionsr9_utran_csg_meas_rpt_exist),
6172   M_TYPE        (PMR_AdditionsR9_t, UTRAN_CSG_Meas_Rpt, UTRAN_CSG_Measurement_Report_t),
6173   M_NEXT_EXIST  (PMR_AdditionsR9_t, Exist_EUTRAN_CSG_Meas_Rpt, 1, &hf_pmr_additionsr9_eutran_csg_meas_rpt_exist),
6174   M_TYPE        (PMR_AdditionsR9_t, EUTRAN_CSG_Meas_Rpt, EUTRAN_CSG_Measurement_Report_t),
6175 CSN_DESCR_END   (PMR_AdditionsR9_t)
6176 
6177 static const
6178 CSN_DESCR_BEGIN (PMR_AdditionsR8_t)
6179   M_NEXT_EXIST  (PMR_AdditionsR8_t, Exist_EUTRAN_Meas_Rpt, 1, &hf_pmr_additionsr8_eutran_meas_rpt_exist),
6180   M_TYPE        (PMR_AdditionsR8_t, EUTRAN_Meas_Rpt, EUTRAN_Measurement_Report_t),
6181   M_NEXT_EXIST_OR_NULL(PMR_AdditionsR8_t, Exist_AdditionsR9, 1, &hf_pmr_additionsr8_additionsr9_exist),
6182   M_TYPE        (PMR_AdditionsR8_t, AdditionsR9, PMR_AdditionsR9_t),
6183 CSN_DESCR_END   (PMR_AdditionsR8_t)
6184 
6185 static const
6186 CSN_DESCR_BEGIN (PMR_AdditionsR5_t)
6187   M_NEXT_EXIST  (PMR_AdditionsR5_t, Exist_GRNTI, 3, &hf_pmr_additionsr5_grnti_exist),
6188   M_UINT        (PMR_AdditionsR5_t,  GRNTI,  4, &hf_pmo_additionsr5_grnti),
6189   M_NEXT_EXIST_OR_NULL (PMR_AdditionsR5_t, Exist_AdditionsR8, 1, &hf_pmr_additionsr5_additionsr8_exist),
6190   M_TYPE        (PMR_AdditionsR5_t, AdditionsR8, PMR_AdditionsR8_t),
6191 CSN_DESCR_END   (PMR_AdditionsR5_t)
6192 
6193 static const
6194 CSN_DESCR_BEGIN (PMR_AdditionsR99_t)
6195   M_NEXT_EXIST  (PMR_AdditionsR99_t, Exist_Info3G, 4, &hf_pmr_additionsr99_info3g_exist),
6196   M_UNION       (PMR_AdditionsR99_t, 2, &hf_pmr_additionsr99),
6197   M_TYPE        (PMR_AdditionsR99_t, u.BA_USED, BA_USED_t),
6198   M_UINT        (PMR_AdditionsR99_t,  u.PSI3_CHANGE_MARK,  2, &hf_psi3_change_mark),
6199   M_UINT        (PMR_AdditionsR99_t,  PMO_USED,  1, &hf_pmr_additionsr99_pmo_used),
6200 
6201   M_NEXT_EXIST  (PMR_AdditionsR99_t, Exist_MeasurementReport3G, 2, &hf_pmr_additionsr99_measurementreport3g_exist),
6202   M_UINT_OFFSET (PMR_AdditionsR99_t, N_3G, 3, 1, &hf_pmr_additionsr99_n_3g),   /* offset 1 */
6203   M_VAR_TARRAY_OFFSET  (PMR_AdditionsR99_t, Measurements_3G, Measurements_3G_t, N_3G),
6204 
6205   M_NEXT_EXIST_OR_NULL (PMR_AdditionsR99_t, Exist_AdditionsR5, 1, &hf_pmr_additionsr99_additionsr5_exist),
6206   M_TYPE        (PMR_AdditionsR99_t, AdditionsR5, PMR_AdditionsR5_t),
6207 CSN_DESCR_END   (PMR_AdditionsR99_t)
6208 
6209 #if 0
6210 static const
6211 CSN_DESCR_BEGIN(EMR_ServingCell_t)
6212   /*CSN_MEMBER_BIT (EMR_ServingCell_t, DTX_USED),*/
6213   M_UINT         (EMR_ServingCell_t,  DTX_USED,         1, &hf_emr_servingcell_dtx_used),
6214   M_UINT         (EMR_ServingCell_t,  RXLEV_VAL,        6, &hf_emr_servingcell_rxlev_val),
6215   M_UINT         (EMR_ServingCell_t,  RX_QUAL_FULL,     3, &hf_emr_servingcell_rx_qual_full),
6216   M_UINT         (EMR_ServingCell_t,  MEAN_BEP,         5, &hf_emr_servingcell_mean_bep),
6217   M_UINT         (EMR_ServingCell_t,  CV_BEP,           3, &hf_emr_servingcell_cv_bep),
6218   M_UINT         (EMR_ServingCell_t,  NBR_RCVD_BLOCKS,  5, &hf_emr_servingcell_nbr_rcvd_blocks),
6219 CSN_DESCR_END(EMR_ServingCell_t)
6220 #endif
6221 
6222 #if 0
6223 static const
6224 CSN_DESCR_BEGIN   (EnhancedMeasurementReport_t)
6225   M_UINT          (EnhancedMeasurementReport_t,  RR_Short_PD,  1, &hf_enhancedmeasurementreport_rr_short_pd),
6226   M_UINT          (EnhancedMeasurementReport_t,  MESSAGE_TYPE,  5, &hf_enhancedmeasurementreport_message_type),
6227   M_UINT          (EnhancedMeasurementReport_t,  ShortLayer2_Header,  2, &hf_enhancedmeasurementreport_shortlayer2_header),
6228   M_TYPE          (EnhancedMeasurementReport_t, BA_USED, BA_USED_t),
6229   M_UINT          (EnhancedMeasurementReport_t,  BSIC_Seen,  1, &hf_enhancedmeasurementreport_bsic_seen),
6230   M_UINT          (EnhancedMeasurementReport_t,  SCALE,  1, &hf_enhancedmeasurementreport_scale),
6231   M_NEXT_EXIST    (EnhancedMeasurementReport_t, Exist_ServingCellData, 1),
6232   M_TYPE          (EnhancedMeasurementReport_t, ServingCellData, EMR_ServingCell_t),
6233   M_REC_TARRAY    (EnhancedMeasurementReport_t, RepeatedInvalid_BSIC_Info, RepeatedInvalid_BSIC_Info_t,
6234                     Count_RepeatedInvalid_BSIC_Info),
6235   M_NEXT_EXIST    (EnhancedMeasurementReport_t, Exist_ReportBitmap, 1),
6236   M_VAR_TARRAY    (EnhancedMeasurementReport_t, REPORTING_QUANTITY_Instances, REPORTING_QUANTITY_Instance_t, Count_REPORTING_QUANTITY_Instances),
6237 CSN_DESCR_END     (EnhancedMeasurementReport_t)
6238 #endif
6239 
6240 static const
6241 CSN_DESCR_BEGIN       (Packet_Measurement_Report_t)
6242   /* Mac header */
6243   M_UINT              (Packet_Measurement_Report_t,  PayloadType, 2, &hf_ul_payload_type),
6244   M_UINT              (Packet_Measurement_Report_t,  spare, 5, &hf_ul_mac_header_spare),
6245   M_UINT              (Packet_Measurement_Report_t,  R, 1, &hf_ul_retry),
6246   M_UINT              (Packet_Measurement_Report_t,  MESSAGE_TYPE, 6, &hf_ul_message_type),
6247   /* Mac header */
6248 
6249   M_UINT              (Packet_Measurement_Report_t,  TLLI, 32, &hf_tlli),
6250 
6251   M_NEXT_EXIST        (Packet_Measurement_Report_t, Exist_PSI5_CHANGE_MARK, 1, &hf_packet_measurement_report_psi5_change_mark_exist),
6252   M_UINT              (Packet_Measurement_Report_t,  PSI5_CHANGE_MARK,  2, &hf_packet_measurement_report_psi5_change_mark),
6253 
6254   M_UNION             (Packet_Measurement_Report_t, 2, &hf_packet_measurement_report),
6255   M_TYPE              (Packet_Measurement_Report_t, u.NC_Measurement_Report, NC_Measurement_Report_t),
6256   M_TYPE              (Packet_Measurement_Report_t, u.EXT_Measurement_Report, EXT_Measurement_Report_t),
6257 
6258   M_NEXT_EXIST_OR_NULL(Packet_Measurement_Report_t, Exist_AdditionsR99, 1, &hf_additionsr99_exist),
6259   M_TYPE              (Packet_Measurement_Report_t, AdditionsR99, PMR_AdditionsR99_t),
6260 
6261   M_PADDING_BITS      (Packet_Measurement_Report_t, &hf_padding),
6262 CSN_DESCR_END         (Packet_Measurement_Report_t)
6263 
6264 static const
6265 CSN_DESCR_BEGIN (PEMR_AdditionsR9_t)
6266   M_NEXT_EXIST  (PEMR_AdditionsR9_t, Exist_UTRAN_CSG_Target_Cell, 1, &hf_pemr_additionsr9_utran_csg_target_cell_exist),
6267   M_TYPE        (PEMR_AdditionsR9_t, UTRAN_CSG_Target_Cell, UTRAN_CSG_Target_Cell_t),
6268   M_NEXT_EXIST  (PEMR_AdditionsR9_t, Exist_EUTRAN_CSG_Target_Cell, 1, &hf_pemr_additionsr9_eutran_csg_target_cell_exist),
6269   M_TYPE        (PEMR_AdditionsR9_t, EUTRAN_CSG_Target_Cell, EUTRAN_CSG_Target_Cell_t),
6270 CSN_DESCR_END   (PEMR_AdditionsR9_t)
6271 
6272 static const
6273 CSN_DESCR_BEGIN (Bitmap_Report_Quantity_t)
6274   M_NEXT_EXIST  (Bitmap_Report_Quantity_t, Exist_REPORTING_QUANTITY, 1, &hf_bitmap_report_quantity_reporting_quantity_exist),
6275   M_UINT        (Bitmap_Report_Quantity_t,  REPORTING_QUANTITY,  6, &hf_reporting_quantity_instance_reporting_quantity),
6276 CSN_DESCR_END   (Bitmap_Report_Quantity_t)
6277 
6278 static const
6279 CSN_DESCR_BEGIN (PEMR_AdditionsR8_t)
6280   M_UINT_OFFSET (PEMR_AdditionsR8_t, BITMAP_LENGTH,  7, 1, &hf_pemr_additionsr8_bitmap_length),
6281   M_VAR_TARRAY  (PEMR_AdditionsR8_t, Bitmap_Report_Quantity, Bitmap_Report_Quantity_t, BITMAP_LENGTH),
6282   M_NEXT_EXIST  (PEMR_AdditionsR8_t, Exist_EUTRAN_Meas_Rpt, 1, &hf_pemr_additionsr8_eutran_meas_rpt_exist),
6283   M_TYPE        (PEMR_AdditionsR8_t, EUTRAN_Meas_Rpt, EUTRAN_Measurement_Report_t),
6284   M_NEXT_EXIST_OR_NULL(PEMR_AdditionsR8_t, Exist_AdditionsR9, 1, &hf_pemr_additionsr8_additionsr9_exist),
6285   M_TYPE        (PEMR_AdditionsR8_t, AdditionsR9, PEMR_AdditionsR9_t),
6286 CSN_DESCR_END   (PEMR_AdditionsR8_t)
6287 
6288 static const
6289 CSN_DESCR_BEGIN (PEMR_AdditionsR5_t)
6290   M_NEXT_EXIST  (PEMR_AdditionsR5_t, Exist_GRNTI_Ext, 1, &hf_pemr_additionsr5_grnti_ext_exist),
6291   M_UINT        (PEMR_AdditionsR5_t,  GRNTI_Ext,  4, &hf_pmo_additionsr5_grnti),
6292   M_NEXT_EXIST_OR_NULL(PEMR_AdditionsR5_t, Exist_AdditionsR8, 1, &hf_pemr_additionsr5_additionsr8_exist),
6293   M_TYPE        (PEMR_AdditionsR5_t, AdditionsR8, PEMR_AdditionsR8_t),
6294 CSN_DESCR_END   (PEMR_AdditionsR5_t)
6295 
6296 
6297 static const
6298 CSN_DESCR_BEGIN       (Packet_Enh_Measurement_Report_t)
6299   /* Mac header */
6300   M_UINT              (Packet_Enh_Measurement_Report_t,  PayloadType, 2, &hf_ul_payload_type),
6301   M_UINT              (Packet_Enh_Measurement_Report_t,  spare, 5, &hf_ul_mac_header_spare),
6302   M_UINT              (Packet_Enh_Measurement_Report_t,  R, 1, &hf_ul_retry),
6303   M_UINT              (Packet_Enh_Measurement_Report_t,  MESSAGE_TYPE, 6, &hf_ul_message_type),
6304   /* Mac header */
6305 
6306   M_UINT              (Packet_Enh_Measurement_Report_t,  TLLI, 32, &hf_tlli),
6307 
6308   M_TYPE              (Packet_Enh_Measurement_Report_t, Measurements, ENH_NC_Measurement_Report_t),
6309 
6310   M_NEXT_EXIST_OR_NULL(Packet_Enh_Measurement_Report_t, Exist_AdditionsR5, 1, &hf_packet_enh_measurement_report_additionsr5_exist),
6311   M_TYPE              (Packet_Enh_Measurement_Report_t, AdditionsR5, PEMR_AdditionsR5_t),
6312 
6313   M_PADDING_BITS(Packet_Enh_Measurement_Report_t, &hf_padding),
6314 CSN_DESCR_END         (Packet_Enh_Measurement_Report_t)
6315 
6316 /* < Packet Measurement Order message contents > */
6317 #if 0
6318 static const
6319 CSN_DESCR_BEGIN(EXT_Frequency_List_t)
6320   M_UINT       (EXT_Frequency_List_t,  START_FREQUENCY,  10, &hf_ext_frequency_list_start_frequency),
6321   M_UINT       (EXT_Frequency_List_t,  NR_OF_FREQUENCIES,  5, &hf_ext_frequency_list_nr_of_frequencies),
6322   M_UINT       (EXT_Frequency_List_t,  FREQ_DIFF_LENGTH,  3, &hf_ext_frequency_list_freq_diff_length),
6323 
6324 /* TBD: Count_FREQUENCY_DIFF
6325  * guint8 FREQUENCY_DIFF[31];
6326  * bit (FREQ_DIFF_LENGTH) * NR_OF_FREQUENCIES --> MAX is bit(7) * 31
6327  */
6328 CSN_DESCR_END  (EXT_Frequency_List_t)
6329 #endif
6330 
6331 static const
6332 CSN_DESCR_BEGIN        (Packet_Measurement_Order_t)
6333   M_UINT               (Packet_Measurement_Order_t, MESSAGE_TYPE, 6, &hf_dl_message_type),
6334   M_UINT               (Packet_Measurement_Order_t, PAGE_MODE, 2, &hf_page_mode),
6335 
6336   M_TYPE               (Packet_Measurement_Order_t, ID, PacketDownlinkID_t), /* reuse the PDA ID type */
6337 
6338   M_UINT               (Packet_Measurement_Order_t, PMO_INDEX, 3, &hf_packet_measurement_order_pmo_index),
6339   M_UINT               (Packet_Measurement_Order_t, PMO_COUNT, 3, &hf_packet_measurement_order_pmo_count),
6340 
6341   M_NEXT_EXIST         (Packet_Measurement_Order_t, Exist_NC_Measurement_Parameters, 1, &hf_packet_measurement_order_nc_measurement_parameters_exist),
6342   M_TYPE               (Packet_Measurement_Order_t, NC_Measurement_Parameters, NC_Measurement_Parameters_with_Frequency_List_t),
6343 
6344   M_NEXT_EXIST         (Packet_Measurement_Order_t, Exist_EXT_Measurement_Parameters, 1, &hf_packet_measurement_order_ext_measurement_parameters_exist),
6345   M_FIXED              (Packet_Measurement_Order_t, 2, 0x0, &hf_packet_measurement_order),    /* EXT_Measurement_Parameters not handled */
6346 
6347   M_NEXT_EXIST_OR_NULL (Packet_Measurement_Order_t, Exist_AdditionsR98, 1, &hf_packet_measurement_order_additionsr98_exist),
6348   M_TYPE               (Packet_Measurement_Order_t, AdditionsR98, PMO_AdditionsR98_t),
6349 
6350   M_PADDING_BITS       (Packet_Measurement_Order_t, &hf_padding),
6351 CSN_DESCR_END          (Packet_Measurement_Order_t)
6352 
6353 static const
6354 CSN_DESCR_BEGIN(CCN_Measurement_Report_t)
6355   M_UINT       (CCN_Measurement_Report_t,  RXLEV_SERVING_CELL,  6, &hf_ccn_measurement_report_rxlev_serving_cell),
6356   M_FIXED      (CCN_Measurement_Report_t, 1, 0, &hf_ccn_measurement_report),
6357   M_UINT       (CCN_Measurement_Report_t,  NUMBER_OF_NC_MEASUREMENTS,  3, &hf_ccn_measurement_report_number_of_nc_measurements),
6358   M_VAR_TARRAY (CCN_Measurement_Report_t, NC_Measurements, NC_Measurements_t, NUMBER_OF_NC_MEASUREMENTS),
6359 CSN_DESCR_END  (CCN_Measurement_Report_t)
6360 
6361 static const
6362 CSN_DESCR_BEGIN(Target_Cell_GSM_Notif_t)
6363   M_UINT       (Target_Cell_GSM_Notif_t, ARFCN, 10, &hf_arfcn),
6364   M_UINT       (Target_Cell_GSM_Notif_t, BSIC, 6, &hf_target_cell_gsm_notif_bsic),
6365 CSN_DESCR_END  (Target_Cell_GSM_Notif_t)
6366 
6367 static const
6368 CSN_DESCR_BEGIN(FDD_Target_Cell_Notif_t)
6369   M_UINT       (FDD_Target_Cell_Notif_t,  FDD_ARFCN,  14, &hf_fdd_target_cell_notif_fdd_arfcn),
6370   M_NEXT_EXIST (FDD_Target_Cell_Notif_t, Exist_Bandwith_FDD, 1, &hf_fdd_target_cell_notif_bandwith_fdd_exist),
6371   M_UINT       (FDD_Target_Cell_Notif_t,  BANDWITH_FDD,  3, &hf_fdd_target_cell_notif_bandwith_fdd),
6372   M_UINT       (FDD_Target_Cell_Notif_t,  SCRAMBLING_CODE,  9, &hf_fdd_target_cell_notif_scrambling_code),
6373 CSN_DESCR_END  (FDD_Target_Cell_Notif_t)
6374 
6375 static const
6376 CSN_DESCR_BEGIN(TDD_Target_Cell_Notif_t)
6377   M_UINT       (TDD_Target_Cell_Notif_t,  TDD_ARFCN,  14, &hf_tddarget_cell_t_tdd_arfcn),
6378   M_NEXT_EXIST (TDD_Target_Cell_Notif_t, Exist_Bandwith_TDD, 1, &hf_tdd_target_cell_notif_bandwith_tdd_exist),
6379   M_UINT       (TDD_Target_Cell_Notif_t,  BANDWITH_TDD,  3, &hf_tddarget_cell_t_bandwith_tdd),
6380   M_UINT       (TDD_Target_Cell_Notif_t,  CELL_PARAMETER,  7, &hf_tddarget_cell_t_cell_parameter),
6381   M_UINT       (TDD_Target_Cell_Notif_t,  Sync_Case_TSTD,  1, &hf_tddarget_cell_t_sync_case_tstd),
6382 CSN_DESCR_END  (TDD_Target_Cell_Notif_t)
6383 
6384 static const
6385 CSN_DESCR_BEGIN(Target_Cell_3G_Notif_t)
6386   M_NEXT_EXIST (Target_Cell_3G_Notif_t, Exist_FDD_Description, 1, &hf_target_cell_3g_notif_fdd_description_exist),
6387   M_TYPE       (Target_Cell_3G_Notif_t, FDD_Target_Cell_Notif, FDD_Target_Cell_Notif_t),
6388   M_NEXT_EXIST (Target_Cell_3G_Notif_t, Exist_TDD_Description, 1, &hf_target_cell_3g_notif_tdd_description_exist),
6389   M_TYPE       (Target_Cell_3G_Notif_t, TDD_Target_Cell, TDD_Target_Cell_Notif_t),
6390   M_UINT       (Target_Cell_3G_Notif_t,  REPORTING_QUANTITY,  6, &hf_target_cell_3g_notif_reporting_quantity),
6391 CSN_DESCR_END  (Target_Cell_3G_Notif_t)
6392 
6393 static const
6394 CSN_DESCR_BEGIN(Target_EUTRAN_Cell_Notif_t)
6395   M_UINT       (Target_EUTRAN_Cell_Notif_t,  EARFCN,  16, &hf_target_cell_eutran_earfcn),
6396   M_NEXT_EXIST (Target_EUTRAN_Cell_Notif_t, Exist_Measurement_Bandwidth, 1, &hf_target_eutran_cell_notif_measurement_bandwidth_exist),
6397   M_UINT       (Target_EUTRAN_Cell_Notif_t,  Measurement_Bandwidth,  3, &hf_target_cell_eutran_measurement_bandwidth),
6398   M_UINT       (Target_EUTRAN_Cell_Notif_t,  Physical_Layer_Cell_Identity,  9, &hf_target_cell_eutran_pl_cell_id),
6399   M_UINT       (Target_EUTRAN_Cell_Notif_t,  Reporting_Quantity,  6, &hf_packet_cell_change_notification_lte_reporting_quantity),
6400 CSN_DESCR_END  (Target_EUTRAN_Cell_Notif_t)
6401 
6402 static const
6403 CSN_DESCR_BEGIN(Eutran_Ccn_Measurement_Report_Cell_t)
6404   M_UINT       (Eutran_Ccn_Measurement_Report_Cell_t,  EUTRAN_FREQUENCY_INDEX,  3, &hf_eutran_ccn_meas_rpt_freq_idx),
6405   M_UINT       (Eutran_Ccn_Measurement_Report_Cell_t,  CELL_IDENTITY,  9, &hf_eutran_ccn_meas_cell_id),
6406   M_UINT       (Eutran_Ccn_Measurement_Report_Cell_t,  REPORTING_QUANTITY,  6, &hf_eutran_ccn_meas_rpt_quantity),
6407 CSN_DESCR_END  (Eutran_Ccn_Measurement_Report_Cell_t)
6408 
6409 
6410 static const
6411 CSN_DESCR_BEGIN(Eutran_Ccn_Measurement_Report_t)
6412   M_UINT       (Eutran_Ccn_Measurement_Report_t,  ThreeG_BA_USED, 1, &hf_eutran_ccn_meas_rpt_3g_ba_used),
6413   M_UINT_OFFSET(Eutran_Ccn_Measurement_Report_t,  N_EUTRAN,  2, 1, &hf_eutran_ccn_meas_rpt_num_eutran),
6414   M_VAR_TARRAY (Eutran_Ccn_Measurement_Report_t,  Eutran_Ccn_Measurement_Report_Cell, Eutran_Ccn_Measurement_Report_Cell_t, N_EUTRAN),
6415 CSN_DESCR_END  (Eutran_Ccn_Measurement_Report_t)
6416 
6417 static const
6418 CSN_DESCR_BEGIN(Target_Cell_4G_Notif_t)
6419   M_NEXT_EXIST (Target_Cell_4G_Notif_t, Exist_Arfcn, 2, &hf_target_cell_4g_notif_arfcn_exist),
6420   M_UINT       (Target_Cell_4G_Notif_t,  Arfcn, 10, &hf_arfcn),
6421   M_UINT       (Target_Cell_4G_Notif_t,  bsic, 6, &hf_target_cell_gsm_bsic),
6422   M_NEXT_EXIST (Target_Cell_4G_Notif_t, Exist_3G_Target_Cell, 1, &hf_target_cell_4g_notif_3g_target_cell_exist),
6423   M_TYPE       (Target_Cell_4G_Notif_t,  Target_Cell_3G_Notif, Target_Cell_3G_Notif_t),
6424   M_NEXT_EXIST (Target_Cell_4G_Notif_t, Exist_Eutran_Target_Cell, 1, &hf_target_cell_4g_notif_eutran_target_cell_exist),
6425   M_TYPE       (Target_Cell_4G_Notif_t,  Target_EUTRAN_Cell, Target_EUTRAN_Cell_Notif_t),
6426   M_NEXT_EXIST (Target_Cell_4G_Notif_t, Exist_Eutran_Ccn_Measurement_Report, 1, &hf_target_cell_4g_notif_eutran_ccn_measurement_report_exist),
6427   M_TYPE       (Target_Cell_4G_Notif_t,  Eutran_Ccn_Measurement_Report, Eutran_Ccn_Measurement_Report_t),
6428 CSN_DESCR_END  (Target_Cell_4G_Notif_t)
6429 
6430 static const
6431 CSN_DESCR_BEGIN(Target_Cell_CSG_Notif_t)
6432   M_FIXED      (Target_Cell_CSG_Notif_t, 1, 0x00, &hf_target_cell_csg_notif),
6433   M_UNION      (Target_Cell_CSG_Notif_t, 2, &hf_target_cell_csg_notif),
6434   M_TYPE       (Target_Cell_CSG_Notif_t, u.UTRAN_CSG_Measurement_Report, UTRAN_CSG_Measurement_Report_t),
6435   M_TYPE       (Target_Cell_CSG_Notif_t, u.EUTRAN_CSG_Measurement_Report, EUTRAN_CSG_Measurement_Report_t),
6436   M_NEXT_EXIST (Target_Cell_CSG_Notif_t, Exist_Eutran_Ccn_Measurement_Report, 1, &hf_target_cell_csg_notif_eutran_ccn_measurement_report_exist),
6437   M_TYPE       (Target_Cell_CSG_Notif_t,  Eutran_Ccn_Measurement_Report, Eutran_Ccn_Measurement_Report_t),
6438 CSN_DESCR_END  (Target_Cell_CSG_Notif_t)
6439 
6440 static const
6441 CSN_DESCR_BEGIN(Target_Other_RAT_2_Notif_t)
6442   /* 110 vs 1110 */
6443   M_UNION      (Target_Other_RAT_2_Notif_t, 2, &hf_target_other_rat2_notif),
6444   M_TYPE       (Target_Other_RAT_2_Notif_t, u.Target_Cell_4G_Notif, Target_Cell_4G_Notif_t),
6445   M_TYPE       (Target_Other_RAT_2_Notif_t, u.Target_Cell_CSG_Notif, Target_Cell_CSG_Notif_t),
6446 CSN_DESCR_END  (Target_Other_RAT_2_Notif_t)
6447 
6448 static const
6449 CSN_DESCR_BEGIN(Target_Other_RAT_Notif_t)
6450   /* 10 vs 110 */
6451   M_UNION      (Target_Other_RAT_Notif_t, 2, &hf_target_other_rat_notif),
6452   M_TYPE       (Target_Other_RAT_Notif_t, u.Target_Cell_3G_Notif, Target_Cell_3G_Notif_t),
6453   M_TYPE       (Target_Other_RAT_Notif_t, u.Target_Other_RAT_2_Notif, Target_Other_RAT_2_Notif_t),
6454 CSN_DESCR_END  (Target_Other_RAT_Notif_t)
6455 
6456 static const
6457 CSN_DESCR_BEGIN(Target_Cell_t)
6458   /* 0 vs 10 */
6459   M_UNION      (Target_Cell_t, 2, &hf_target_cell),
6460   M_TYPE       (Target_Cell_t, u.Target_Cell_GSM_Notif, Target_Cell_GSM_Notif_t),
6461   M_TYPE       (Target_Cell_t, u.Target_Other_RAT_Notif, Target_Other_RAT_Notif_t),
6462 CSN_DESCR_END  (Target_Cell_t)
6463 
6464 static const
6465 CSN_DESCR_BEGIN (PCCN_AdditionsR6_t)
6466   M_NEXT_EXIST  (PCCN_AdditionsR6_t, Exist_BA_USED_3G, 1, &hf_pccn_additionsr6_ba_used_3g_exist),
6467   M_UINT        (PCCN_AdditionsR6_t,  BA_USED_3G,  1, &hf_pccn_additionsr6_ba_used_3g),
6468 
6469   M_UINT_OFFSET (PCCN_AdditionsR6_t, N_3G, 3, 1, &hf_pccn_additionsr6_n_3g),   /* offset 1 */
6470   M_VAR_TARRAY_OFFSET (PCCN_AdditionsR6_t, Measurements_3G, Measurements_3G_t, N_3G),
6471 CSN_DESCR_END   (PCCN_AdditionsR6_t)
6472 
6473 /* < Packet Cell Change Notification message contents > */
6474 static const
6475 CSN_DESCR_BEGIN(Packet_Cell_Change_Notification_t)
6476   /* Mac header */
6477   M_UINT              (Packet_Cell_Change_Notification_t,  PayloadType, 2, &hf_ul_payload_type),
6478   M_UINT              (Packet_Cell_Change_Notification_t,  spare, 5, &hf_ul_mac_header_spare),
6479   M_UINT              (Packet_Cell_Change_Notification_t,  R, 1, &hf_ul_retry),
6480   M_UINT              (Packet_Cell_Change_Notification_t,  MESSAGE_TYPE, 6, &hf_ul_message_type),
6481   /* Mac header */
6482 
6483   M_TYPE              (Packet_Cell_Change_Notification_t, Global_TFI, Global_TFI_t),
6484   M_TYPE              (Packet_Cell_Change_Notification_t, Target_Cell, Target_Cell_t),
6485 
6486   M_UNION             (Packet_Cell_Change_Notification_t, 2, &hf_packet_cell_change_notification),
6487   M_UINT              (Packet_Cell_Change_Notification_t,  u.BA_IND,  1, &hf_packet_cell_change_notification_ba_ind),
6488   M_UINT              (Packet_Cell_Change_Notification_t,  u.PSI3_CHANGE_MARK, 2, &hf_psi3_change_mark),
6489 
6490   M_UINT              (Packet_Cell_Change_Notification_t,  PMO_USED,  1, &hf_packet_cell_change_notification_pmo_used),
6491   M_UINT              (Packet_Cell_Change_Notification_t,  PCCN_SENDING,  1, &hf_packet_cell_change_notification_pccn_sending),
6492   M_TYPE              (Packet_Cell_Change_Notification_t, CCN_Measurement_Report, CCN_Measurement_Report_t),
6493 
6494   M_NEXT_EXIST_OR_NULL(Packet_Cell_Change_Notification_t, Exist_AdditionsR6, 1, &hf_packet_cell_change_notification_additionsr6_exist),
6495   M_TYPE              (Packet_Cell_Change_Notification_t, AdditionsR6, PCCN_AdditionsR6_t),
6496 
6497   M_PADDING_BITS(Packet_Cell_Change_Notification_t, &hf_padding),
6498 CSN_DESCR_END  (Packet_Cell_Change_Notification_t)
6499 
6500 /* < Packet Cell Change Continue message contents > */
6501 static const
6502 CSN_DESCR_BEGIN(Packet_Cell_Change_Continue_t)
6503   M_UINT       (Packet_Cell_Change_Continue_t, MESSAGE_TYPE, 6, &hf_dl_message_type),
6504   M_UINT       (Packet_Cell_Change_Continue_t, PAGE_MODE, 2, &hf_page_mode),
6505   M_FIXED      (Packet_Cell_Change_Continue_t, 1, 0x00, &hf_packet_cell_change_continue),
6506   M_TYPE       (Packet_Cell_Change_Continue_t, Global_TFI, Global_TFI_t),
6507 
6508   M_NEXT_EXIST (Packet_Cell_Change_Continue_t, Exist_ID, 3, &hf_packet_cell_change_continue_id_exist),
6509   M_UINT       (Packet_Cell_Change_Continue_t, ARFCN, 10, &hf_packet_cell_change_continue_arfcn),
6510   M_UINT       (Packet_Cell_Change_Continue_t, BSIC,  6, &hf_packet_cell_change_continue_bsic),
6511   M_UINT       (Packet_Cell_Change_Continue_t, CONTAINER_ID,  2, &hf_packet_cell_change_continue_container_id),
6512 
6513   M_PADDING_BITS(Packet_Cell_Change_Continue_t, &hf_padding),
6514 CSN_DESCR_END  (Packet_Cell_Change_Continue_t)
6515 
6516 /* < Packet Neighbour Cell Data message contents > */
6517 static const
6518 CSN_DESCR_BEGIN(PNCD_Container_With_ID_t)
6519   M_UINT       (PNCD_Container_With_ID_t,  ARFCN, 10, &hf_arfcn),
6520   M_UINT       (PNCD_Container_With_ID_t,  BSIC,  6, &hf_pncd_container_with_id_bsic),
6521   M_UINT_ARRAY (PNCD_Container_With_ID_t, CONTAINER, 8, 17, &hf_pncd_container_with_id_container),/* 8*17 bits */
6522 CSN_DESCR_END  (PNCD_Container_With_ID_t)
6523 
6524 static const
6525 CSN_DESCR_BEGIN(PNCD_Container_Without_ID_t)
6526   M_UINT_ARRAY (PNCD_Container_Without_ID_t, CONTAINER, 8, 19, &hf_pncd_container_without_id_container),/* 8*19 bits */
6527 CSN_DESCR_END  (PNCD_Container_Without_ID_t)
6528 
6529 static const
6530 CSN_ChoiceElement_t PNCDContainer[] =
6531 {
6532   {1, 0x0, 0, M_TYPE(PNCDContainer_t, u.PNCD_Container_Without_ID, PNCD_Container_Without_ID_t)},
6533   {1, 0x1, 0, M_TYPE(PNCDContainer_t, u.PNCD_Container_With_ID, PNCD_Container_With_ID_t)},
6534 };
6535 
6536 static const
CSN_DESCR_BEGIN(PNCDContainer_t)6537 CSN_DESCR_BEGIN(PNCDContainer_t)
6538   M_CHOICE     (PNCDContainer_t, UnionType, PNCDContainer, ElementsOf(PNCDContainer), &hf_pncd_container_choice),
6539 CSN_DESCR_END  (PNCDContainer_t)
6540 
6541 static const
6542 CSN_DESCR_BEGIN(Packet_Neighbour_Cell_Data_t)
6543   M_UINT       (Packet_Neighbour_Cell_Data_t, MESSAGE_TYPE, 6, &hf_dl_message_type),
6544   M_UINT       (Packet_Neighbour_Cell_Data_t, PAGE_MODE, 2, &hf_page_mode),
6545   M_FIXED      (Packet_Neighbour_Cell_Data_t, 1, 0x00, &hf_packet_neighbour_cell_data),
6546   M_TYPE       (Packet_Neighbour_Cell_Data_t, Global_TFI, Global_TFI_t),
6547 
6548   M_UINT       (Packet_Neighbour_Cell_Data_t, CONTAINER_ID,  2, &hf_packet_neighbour_cell_data_container_id),
6549   M_UINT       (Packet_Neighbour_Cell_Data_t, spare,  1, &hf_packet_neighbour_cell_data_spare),
6550   M_UINT       (Packet_Neighbour_Cell_Data_t, CONTAINER_INDEX,  5, &hf_packet_neighbour_cell_data_container_index),
6551 
6552   M_TYPE       (Packet_Neighbour_Cell_Data_t, Container, PNCDContainer_t),
6553   M_PADDING_BITS(Packet_Neighbour_Cell_Data_t, &hf_padding),
6554 CSN_DESCR_END  (Packet_Neighbour_Cell_Data_t)
6555 
6556 /* < Packet Serving Cell Data message contents > */
6557 static const
6558 CSN_DESCR_BEGIN(Packet_Serving_Cell_Data_t)
6559   M_UINT       (Packet_Serving_Cell_Data_t, MESSAGE_TYPE, 6, &hf_dl_message_type),
6560   M_UINT       (Packet_Serving_Cell_Data_t, PAGE_MODE, 2, &hf_page_mode),
6561   M_FIXED      (Packet_Serving_Cell_Data_t, 1, 0x00, &hf_packet_serving_cell_data),
6562   M_TYPE       (Packet_Serving_Cell_Data_t, Global_TFI, Global_TFI_t),
6563 
6564   M_UINT       (Packet_Serving_Cell_Data_t, spare,  4, &hf_packet_serving_cell_data_spare),
6565   M_UINT       (Packet_Serving_Cell_Data_t, CONTAINER_INDEX,  5, &hf_packet_serving_cell_data_container_index),
6566   M_UINT_ARRAY (Packet_Serving_Cell_Data_t, CONTAINER, 8, 19, &hf_packet_serving_cell_data_container),/* 8*19 bits */
6567   M_PADDING_BITS(Packet_Serving_Cell_Data_t, &hf_padding),
6568 CSN_DESCR_END  (Packet_Serving_Cell_Data_t)
6569 
6570 
6571 /* Enhanced Measurement Report */
6572 #if 0
6573 static const
6574 CSN_DESCR_BEGIN (ServingCellData_t)
6575   M_UINT        (ServingCellData_t,  RXLEV_SERVING_CELL,  6, &hf_servingcelldata_rxlev_serving_cell),
6576   M_FIXED       (ServingCellData_t, 1, 0),
6577 CSN_DESCR_END   (ServingCellData_t)
6578 #endif
6579 
6580 #if 0
6581 static const
6582 CSN_DESCR_BEGIN (Repeated_Invalid_BSIC_Info_t)
6583   M_UINT        (Repeated_Invalid_BSIC_Info_t,  BCCH_FREQ_NCELL,  5, &hf_repeated_invalid_bsic_info_bcch_freq_ncell),
6584   M_UINT        (Repeated_Invalid_BSIC_Info_t,  BSIC,  6, &hf_repeated_invalid_bsic_info_bsic),
6585   M_UINT        (Repeated_Invalid_BSIC_Info_t,  RXLEV_NCELL,  5, &hf_repeated_invalid_bsic_info_rxlev_ncell),
6586 CSN_DESCR_END   (Repeated_Invalid_BSIC_Info_t)
6587 #endif
6588 
6589 #if 0
6590 static const
6591 CSN_DESCR_BEGIN (REPORTING_QUANTITY_t)
6592   M_NEXT_EXIST  (REPORTING_QUANTITY_t, Exist_REPORTING_QUANTITY, 1),
6593   M_UINT        (REPORTING_QUANTITY_t,  REPORTING_QUANTITY,  6, &hf_reporting_quantity_reporting_quantity),
6594 CSN_DESCR_END   (REPORTING_QUANTITY_t)
6595 #endif
6596 
6597 #if 0
6598 static const
6599 CSN_DESCR_BEGIN (NC_MeasurementReport_t)
6600   M_UINT        (NC_MeasurementReport_t, NC_MODE, 1, &hf_nc_measurementreport_nc_mode),
6601   M_UNION       (NC_MeasurementReport_t, 2),
6602   M_TYPE        (NC_MeasurementReport_t,  u.BA_USED, BA_USED_t),
6603   M_UINT        (NC_MeasurementReport_t,  u.PSI3_CHANGE_MARK, 2, &hf_psi3_change_mark),
6604   M_UINT        (NC_MeasurementReport_t, PMO_USED, 1, &hf_nc_measurementreport_pmo_used),
6605   M_UINT        (NC_MeasurementReport_t, SCALE, 1, &hf_nc_measurementreport_scale),
6606 
6607   M_NEXT_EXIST  (NC_MeasurementReport_t, Exist_ServingCellData, 1),
6608   M_TYPE        (NC_MeasurementReport_t, ServingCellData, ServingCellData_t),
6609 
6610   M_REC_TARRAY  (NC_MeasurementReport_t, Repeated_Invalid_BSIC_Info, Repeated_Invalid_BSIC_Info_t, Count_Repeated_Invalid_BSIC_Info),
6611 
6612   M_NEXT_EXIST  (NC_MeasurementReport_t, Exist_Repeated_REPORTING_QUANTITY, 1),
6613   M_VAR_TARRAY  (NC_MeasurementReport_t, Repeated_REPORTING_QUANTITY, REPORTING_QUANTITY_t, Count_Repeated_Reporting_Quantity),
6614 CSN_DESCR_END   (NC_MeasurementReport_t)
6615 #endif
6616 
6617 
6618 
6619 /* < Packet Handover Command message content > */
6620 static const
6621 CSN_DESCR_BEGIN (GlobalTimeslotDescription_t)
6622   M_UNION       (GlobalTimeslotDescription_t, 2, &hf_global_timeslot_description),
6623   M_UINT        (GlobalTimeslotDescription_t,  u.MS_TimeslotAllocation,  8, &hf_globaltimeslotdescription_ms_timeslotallocation),
6624   M_TYPE        (GlobalTimeslotDescription_t, u.Power_Control_Parameters, Power_Control_Parameters_t),
6625 CSN_DESCR_END   (GlobalTimeslotDescription_t)
6626 
6627 static const
6628 CSN_DESCR_BEGIN (PHO_DownlinkAssignment_t)
6629   M_UINT        (PHO_DownlinkAssignment_t,  TimeslotAllocation,  8, &hf_dl_timeslot_allocation),
6630   M_UINT        (PHO_DownlinkAssignment_t,  PFI, 7, &hf_pfi),
6631   M_UINT        (PHO_DownlinkAssignment_t,  RLC_Mode, 1, &hf_rlc_mode),
6632   M_UINT        (PHO_DownlinkAssignment_t,  TFI_Assignment, 5, &hf_downlink_tfi),
6633   M_UINT        (PHO_DownlinkAssignment_t,  ControlACK, 1, &hf_control_ack),
6634 
6635   M_NEXT_EXIST  (PHO_DownlinkAssignment_t, Exist_EGPRS_WindowSize, 1, &hf_pho_downlinkassignment_egprs_windowsize_exist),
6636   M_UINT        (PHO_DownlinkAssignment_t,  EGPRS_WindowSize, 5, &hf_egprs_windowsize),
6637 CSN_DESCR_END   (PHO_DownlinkAssignment_t)
6638 
6639 static const
6640 CSN_DESCR_BEGIN (PHO_USF_1_7_t)
6641   M_NEXT_EXIST  (PHO_USF_1_7_t, Exist_USF, 1, &hf_pho_usf_1_7_usf_exist),
6642   M_UINT        (PHO_USF_1_7_t,  USF,  3, &hf_pho_usf_1_7_usf),
6643 CSN_DESCR_END   (PHO_USF_1_7_t)
6644 
6645 static const
6646 CSN_DESCR_BEGIN       (USF_AllocationArray_t)
6647   M_UINT              (USF_AllocationArray_t,  USF_0,  3, &hf_usf_allocationarray_usf_0),
6648   M_VAR_TARRAY_OFFSET (USF_AllocationArray_t, USF_1_7, PHO_USF_1_7_t, NBR_OfAllocatedTimeslots),
6649 CSN_DESCR_END         (USF_AllocationArray_t)
6650 
6651 static const
6652 CSN_DESCR_BEGIN  (PHO_UplinkAssignment_t)
6653   M_UINT         (PHO_UplinkAssignment_t, PFI, 7, &hf_pfi),
6654   M_UINT         (PHO_UplinkAssignment_t, RLC_Mode, 1, &hf_rlc_mode),
6655   M_UINT         (PHO_UplinkAssignment_t, TFI_Assignment, 5, &hf_downlink_tfi),
6656 
6657   M_NEXT_EXIST   (PHO_UplinkAssignment_t, Exist_ChannelCodingCommand, 1, &hf_pho_uplinkassignment_channelcodingcommand_exist),
6658   M_UINT         (PHO_UplinkAssignment_t,  ChannelCodingCommand, 2, &hf_gprs_channel_coding_command),
6659 
6660   M_NEXT_EXIST   (PHO_UplinkAssignment_t, Exist_EGPRS_ChannelCodingCommand, 1, &hf_pho_uplinkassignment_egprs_channelcodingcommand_exist),
6661   M_UINT         (PHO_UplinkAssignment_t,  EGPRS_ChannelCodingCommand, 4, &hf_egprs_channel_coding_command),
6662 
6663   M_NEXT_EXIST   (PHO_UplinkAssignment_t, Exist_EGPRS_WindowSize, 1, &hf_pho_uplinkassignment_egprs_windowsize_exist),
6664   M_UINT         (PHO_UplinkAssignment_t,  EGPRS_WindowSize, 5, &hf_egprs_windowsize),
6665 
6666   M_UINT         (PHO_UplinkAssignment_t, USF_Granularity, 1, &hf_usf_granularity),
6667 
6668   M_NEXT_EXIST   (PHO_UplinkAssignment_t, Exist_TBF_TimeslotAllocation, 1, &hf_pho_uplinkassignment_tbf_timeslotallocation_exist),
6669   M_LEFT_VAR_BMP (PHO_UplinkAssignment_t,  TBF_TimeslotAllocation, u.USF_AllocationArray.NBR_OfAllocatedTimeslots, 0, &hf_usf_bitmap),
6670 
6671   M_UNION        (PHO_UplinkAssignment_t, 2, &hf_pho_uplinkassignment),
6672   M_UINT         (PHO_UplinkAssignment_t,  u.USF_SingleAllocation, 3, &hf_usf),
6673   M_TYPE         (PHO_UplinkAssignment_t,  u.USF_AllocationArray, USF_AllocationArray_t),
6674 CSN_DESCR_END    (PHO_UplinkAssignment_t)
6675 
6676 static const
6677 CSN_DESCR_BEGIN (GlobalTimeslotDescription_UA_t)
6678   M_TYPE        (GlobalTimeslotDescription_UA_t, GlobalTimeslotDescription, GlobalTimeslotDescription_t),
6679   M_NEXT_EXIST  (GlobalTimeslotDescription_UA_t, Exist_PHO_UA, 2, &hf_globaltimeslotdescription_ua_pho_ua_exist),  /* Don't use M_REC_TARRAY as we don't support multiple TBFs */
6680 
6681   M_TYPE        (GlobalTimeslotDescription_UA_t, PHO_UA, PHO_UplinkAssignment_t),
6682   M_FIXED       (GlobalTimeslotDescription_UA_t, 1, 0x0, &hf_global_timeslot_description), /* Escape recursive */
6683 CSN_DESCR_END   (GlobalTimeslotDescription_UA_t)
6684 
6685 static const
6686 CSN_DESCR_BEGIN (PHO_GPRS_t)
6687   M_NEXT_EXIST  (PHO_GPRS_t, Exist_ChannelCodingCommand, 1, &hf_pho_gprs_channelcodingcommand_exist),
6688   M_UINT        (PHO_GPRS_t,  ChannelCodingCommand, 2, &hf_gprs_channel_coding_command),
6689 
6690   M_NEXT_EXIST  (PHO_GPRS_t, Exist_GlobalTimeslotDescription_UA, 1, &hf_pho_gprs_globaltimeslotdescription_ua_exist),
6691   M_TYPE        (PHO_GPRS_t, GTD_UA, GlobalTimeslotDescription_UA_t),
6692 
6693   M_NEXT_EXIST  (PHO_GPRS_t, Exist_DownlinkAssignment, 2, &hf_pho_gprs_downlinkassignment_exist),  /* Don't use M_REC_TARRAY as we don't support multiple TBFs */
6694   M_TYPE        (PHO_GPRS_t, DownlinkAssignment, PHO_DownlinkAssignment_t),
6695   M_FIXED       (PHO_GPRS_t, 1, 0x0, &hf_pho_gprs), /* Escape recursive */
6696 CSN_DESCR_END   (PHO_GPRS_t)
6697 
6698 static const
6699 CSN_DESCR_BEGIN (EGPRS_Description_t)
6700   M_NEXT_EXIST  (EGPRS_Description_t, Exist_EGPRS_WindowSize, 1, &hf_egprs_description_egprs_windowsize_exist),
6701   M_UINT        (EGPRS_Description_t,  EGPRS_WindowSize, 5, &hf_egprs_windowsize),
6702 
6703   M_UINT        (EGPRS_Description_t,  LinkQualityMeasurementMode,  2, &hf_egprs_description_linkqualitymeasurementmode),
6704   M_NEXT_EXIST  (EGPRS_Description_t, Exist_BEP_Period2, 1, &hf_egprs_description_bep_period2_exist),
6705   M_UINT        (EGPRS_Description_t,  BEP_Period2,  4, &hf_bep_period2),
6706 CSN_DESCR_END   (EGPRS_Description_t)
6707 
6708 static const
6709 CSN_DESCR_BEGIN (DownlinkTBF_t)
6710   M_NEXT_EXIST  (DownlinkTBF_t, Exist_EGPRS_Description, 1, &hf_downlinktbf_egprs_description_exist),
6711   M_TYPE        (DownlinkTBF_t, EGPRS_Description, EGPRS_Description_t),
6712 
6713   M_NEXT_EXIST  (DownlinkTBF_t, Exist_DownlinkAssignment, 2, &hf_downlinktbf_downlinkassignment_exist),  /* Don't use M_REC_TARRAY as we don't support multiple TBFs */
6714   M_TYPE        (DownlinkTBF_t, DownlinkAssignment, PHO_DownlinkAssignment_t),
6715   M_FIXED       (DownlinkTBF_t, 1, 0x0, &hf_downlink_tbf), /* Escape recursive */
6716 CSN_DESCR_END   (DownlinkTBF_t)
6717 
6718 static const
6719 CSN_DESCR_BEGIN (PHO_EGPRS_t)
6720   M_NEXT_EXIST  (PHO_EGPRS_t, Exist_EGPRS_WindowSize, 1, &hf_pho_egprs_egprs_windowsize_exist),
6721   M_UINT        (PHO_EGPRS_t,  EGPRS_WindowSize, 5, &hf_egprs_windowsize),
6722 
6723   M_NEXT_EXIST  (PHO_EGPRS_t, Exist_EGPRS_ChannelCodingCommand, 1, &hf_pho_egprs_egprs_channelcodingcommand_exist),
6724   M_UINT        (PHO_EGPRS_t,  EGPRS_ChannelCodingCommand, 4, &hf_egprs_channel_coding_command),
6725 
6726   M_NEXT_EXIST  (PHO_EGPRS_t, Exist_BEP_Period2, 1, &hf_pho_egprs_bep_period2_exist),
6727   M_UINT        (PHO_EGPRS_t,  BEP_Period2, 4, &hf_bep_period2),
6728 
6729   M_NEXT_EXIST  (PHO_EGPRS_t, Exist_GlobalTimeslotDescription_UA, 1, &hf_pho_egprs_globaltimeslotdescription_ua_exist),
6730   M_TYPE        (PHO_EGPRS_t, GTD_UA, GlobalTimeslotDescription_UA_t),
6731 
6732   M_NEXT_EXIST  (PHO_EGPRS_t, Exist_DownlinkTBF, 1, &hf_pho_egprs_downlinktbf_exist),
6733   M_TYPE        (PHO_EGPRS_t, DownlinkTBF, DownlinkTBF_t),
6734 CSN_DESCR_END   (PHO_EGPRS_t)
6735 
6736 static const
6737 CSN_DESCR_BEGIN(PHO_TimingAdvance_t)
6738   M_TYPE       (PHO_TimingAdvance_t, GlobalPacketTimingAdvance, Global_Packet_Timing_Advance_t),
6739   M_NEXT_EXIST (PHO_TimingAdvance_t, Exist_PacketExtendedTimingAdvance, 1, &hf_pho_timingadvance_packetextendedtimingadvance_exist),
6740   M_UINT       (PHO_TimingAdvance_t,  PacketExtendedTimingAdvance, 2, &hf_packet_extended_timing_advance),
6741 CSN_DESCR_END  (PHO_TimingAdvance_t)
6742 
6743 static const
6744 CSN_DESCR_BEGIN(NAS_Container_For_PS_HO_t)
6745   M_UINT       (NAS_Container_For_PS_HO_t,  NAS_ContainerLength,  7, &hf_nas_container_for_ps_ho_containerlength),
6746   M_UINT       (NAS_Container_For_PS_HO_t,  Spare_1a,  1, &hf_nas_container_for_ps_ho_spare),
6747   M_UINT       (NAS_Container_For_PS_HO_t,  Spare_1b,  1, &hf_nas_container_for_ps_ho_spare),
6748   M_UINT       (NAS_Container_For_PS_HO_t,  Spare_1c,  1, &hf_nas_container_for_ps_ho_spare),
6749   M_UINT       (NAS_Container_For_PS_HO_t,  Old_XID,  1, &hf_nas_container_for_ps_ho_old_xid),
6750   M_UINT       (NAS_Container_For_PS_HO_t,  Spare_1e,  1, &hf_nas_container_for_ps_ho_spare),
6751   M_UINT       (NAS_Container_For_PS_HO_t,  Type_of_Ciphering_Algo,  3, &hf_nas_container_for_ps_ho_type_of_ciphering),
6752   M_UINT       (NAS_Container_For_PS_HO_t,  IOV_UI_value,  32, &hf_nas_container_for_ps_ho_iov_ui_value),
6753 CSN_DESCR_END  (NAS_Container_For_PS_HO_t)
6754 
6755 static CSN_CallBackStatus_t callback_call_handover_to_utran_cmd(proto_tree *tree, tvbuff_t *tvb, void* param1, void* param2 _U_,
6756                                                                 int bit_offset, int ett_csn1 _U_, packet_info* pinfo)
6757 {
6758   guint8 RRC_ContainerLength = *(guint8*)param1;
6759   proto_item *ti;
6760 
6761   tvbuff_t *target_rat_msg_cont_tvb = tvb_new_octet_aligned(tvb, bit_offset, RRC_ContainerLength<<3);
6762   add_new_data_source(pinfo, target_rat_msg_cont_tvb, "HANDOVER TO UTRAN COMMAND");
6763 
6764   ti = proto_tree_add_item(tree, hf_ps_handoverto_utran_payload_rrc_container, target_rat_msg_cont_tvb, 0, -1, ENC_NA);
6765 
6766   if (rrc_irat_ho_to_utran_cmd_handle) {
6767     proto_tree *subtree = proto_item_add_subtree(ti, ett_gsm_rlcmac_container);
6768     call_dissector(rrc_irat_ho_to_utran_cmd_handle, target_rat_msg_cont_tvb, pinfo, subtree);
6769   }
6770 
6771   return RRC_ContainerLength<<3;
6772 }
6773 
6774 static const
CSN_DESCR_BEGIN(PS_HandoverTo_UTRAN_Payload_t)6775 CSN_DESCR_BEGIN(PS_HandoverTo_UTRAN_Payload_t)
6776   M_UINT       (PS_HandoverTo_UTRAN_Payload_t, RRC_ContainerLength, 8, &hf_ps_handoverto_utran_payload_rrc_containerlength),
6777   M_CALLBACK   (PS_HandoverTo_UTRAN_Payload_t, callback_call_handover_to_utran_cmd, RRC_ContainerLength, RRC_ContainerLength),
6778 CSN_DESCR_END  (PS_HandoverTo_UTRAN_Payload_t)
6779 
6780 static CSN_CallBackStatus_t callback_call_eutran_dl_dcch(proto_tree *tree, tvbuff_t *tvb, void* param1, void* param2 _U_,
6781                                                          int bit_offset, int ett_csn1 _U_, packet_info* pinfo)
6782 {
6783   guint8 RRC_ContainerLength = *(guint8*)param1;
6784   proto_item *ti;
6785 
6786   tvbuff_t *target_rat_msg_cont_tvb = tvb_new_octet_aligned(tvb, bit_offset, RRC_ContainerLength<<3);
6787   add_new_data_source(pinfo, target_rat_msg_cont_tvb, "E-UTRAN DL-DCCH Message");
6788 
6789   ti = proto_tree_add_item(tree, hf_ps_handoverto_eutran_payload_rrc_container, target_rat_msg_cont_tvb, 0, -1, ENC_NA);
6790 
6791   if (lte_rrc_dl_dcch_handle) {
6792     proto_tree *subtree = proto_item_add_subtree(ti, ett_gsm_rlcmac_container);
6793     call_dissector(lte_rrc_dl_dcch_handle, target_rat_msg_cont_tvb, pinfo, subtree);
6794   }
6795 
6796   return RRC_ContainerLength<<3;
6797 }
6798 
6799 static const
6800 CSN_DESCR_BEGIN(PS_HandoverTo_E_UTRAN_Payload_t)
6801   M_UINT       (PS_HandoverTo_E_UTRAN_Payload_t, RRC_ContainerLength, 8, &hf_ps_handoverto_eutran_payload_rrc_containerlength),
6802   M_CALLBACK   (PS_HandoverTo_E_UTRAN_Payload_t, callback_call_eutran_dl_dcch, RRC_ContainerLength, RRC_ContainerLength),
6803 CSN_DESCR_END  (PS_HandoverTo_E_UTRAN_Payload_t)
6804 
6805 static const
6806 CSN_DESCR_BEGIN(PHO_RadioResources_t)
6807   M_NEXT_EXIST (PHO_RadioResources_t, Exist_HandoverReference, 1, &hf_pho_radioresources_handoverreference_exist),
6808   M_UINT       (PHO_RadioResources_t,  HandoverReference,  8, &hf_pho_radioresources_handoverreference),
6809 
6810   M_UINT       (PHO_RadioResources_t, ARFCN, 10, &hf_arfcn),
6811   M_UINT       (PHO_RadioResources_t,  SI,  2, &hf_pho_radioresources_si),
6812   M_UINT       (PHO_RadioResources_t,  NCI, 1, &hf_pho_radioresources_nci),
6813   M_UINT       (PHO_RadioResources_t,  BSIC,  6, &hf_pho_radioresources_bsic),
6814   M_NEXT_EXIST (PHO_RadioResources_t, Exist_CCN_Active, 1, &hf_pho_radioresources_ccn_active_exist),
6815   M_UINT       (PHO_RadioResources_t,  CCN_Active, 1, &hf_pho_radioresources_ccn_active),
6816 
6817   M_NEXT_EXIST (PHO_RadioResources_t, Exist_CCN_Active_3G, 1, &hf_pho_radioresources_ccn_active_3g_exist),
6818   M_UINT       (PHO_RadioResources_t,  CCN_Active_3G, 1, &hf_pho_radioresources_ccn_active_3g),
6819 
6820   M_NEXT_EXIST (PHO_RadioResources_t, Exist_CCN_Support_Description, 1, &hf_pho_radioresources_ccn_support_description_exist),
6821   M_TYPE       (PHO_RadioResources_t, CCN_Support_Description, CCN_Support_Description_t),
6822 
6823   M_TYPE       (PHO_RadioResources_t, Frequency_Parameters, Frequency_Parameters_t),
6824   M_UINT       (PHO_RadioResources_t,  NetworkControlOrder,  2, &hf_pho_radioresources_networkcontrolorder),
6825   M_NEXT_EXIST (PHO_RadioResources_t, Exist_PHO_TimingAdvance, 1, &hf_pho_radioresources_pho_timingadvance_exist),
6826   M_TYPE       (PHO_RadioResources_t, PHO_TimingAdvance, PHO_TimingAdvance_t),
6827 
6828   M_UINT       (PHO_RadioResources_t,  Extended_Dynamic_Allocation, 1, &hf_extended_dynamic_allocation),
6829   M_UINT       (PHO_RadioResources_t,  RLC_Reset, 1, &hf_pho_radioresources_rlc_reset),
6830   M_NEXT_EXIST (PHO_RadioResources_t, Exist_PO_PR, 2, &hf_pho_radioresources_po_pr_exist),
6831   M_UINT       (PHO_RadioResources_t,  PO, 4, &hf_p0),
6832   M_UINT       (PHO_RadioResources_t,  PR_Mode, 1, &hf_pr_mode),
6833 
6834 
6835   M_NEXT_EXIST (PHO_RadioResources_t, Exist_UplinkControlTimeslot, 1, &hf_pho_radioresources_uplinkcontroltimeslot_exist),
6836   M_UINT       (PHO_RadioResources_t,  UplinkControlTimeslot,  3, &hf_pho_radioresources_uplinkcontroltimeslot),
6837 
6838   M_UNION      (PHO_RadioResources_t, 2, &hf_pho_radio_resources),
6839   M_TYPE       (PHO_RadioResources_t, u.PHO_GPRS_Mode, PHO_GPRS_t),
6840   M_TYPE       (PHO_RadioResources_t, u.PHO_EGPRS_Mode, PHO_EGPRS_t),
6841 CSN_DESCR_END  (PHO_RadioResources_t)
6842 
6843 static const
6844 CSN_DESCR_BEGIN(PS_HandoverTo_A_GB_ModePayload_t)
6845   M_FIXED      (PS_HandoverTo_A_GB_ModePayload_t, 2, 0x00, &hf_ps_handoverto_a_gb_modepayload), /* For future extension to enum. */
6846   M_TYPE       (PS_HandoverTo_A_GB_ModePayload_t, PHO_RadioResources, PHO_RadioResources_t),
6847 
6848   M_NEXT_EXIST (PS_HandoverTo_A_GB_ModePayload_t, Exist_NAS_Container, 1, &hf_ps_handoverto_a_gb_modepayload_nas_container_exist),
6849   M_TYPE       (PS_HandoverTo_A_GB_ModePayload_t, NAS_Container, NAS_Container_For_PS_HO_t),
6850 CSN_DESCR_END  (PS_HandoverTo_A_GB_ModePayload_t)
6851 
6852 static const
6853 CSN_DESCR_BEGIN(Packet_Handover_Command_t)
6854   M_UINT       (Packet_Handover_Command_t, MessageType,6, &hf_dl_message_type),
6855   M_UINT       (Packet_Handover_Command_t, PageMode, 2, &hf_page_mode),
6856 
6857   M_FIXED      (Packet_Handover_Command_t, 1, 0x00, &hf_packet_handover_command), /* 0 fixed */
6858   M_TYPE       (Packet_Handover_Command_t, Global_TFI, Global_TFI_t),
6859 
6860   M_UINT       (Packet_Handover_Command_t,  ContainerID,  2, &hf_packet_handover_command_containerid),
6861 
6862   M_UNION      (Packet_Handover_Command_t, 4, &hf_packet_handover_command),
6863   M_TYPE       (Packet_Handover_Command_t, u.PS_HandoverTo_A_GB_ModePayload, PS_HandoverTo_A_GB_ModePayload_t),
6864   M_TYPE       (Packet_Handover_Command_t, u.PS_HandoverTo_UTRAN_Payload, PS_HandoverTo_UTRAN_Payload_t),
6865   M_TYPE       (Packet_Handover_Command_t, u.PS_HandoverTo_E_UTRAN_Payload, PS_HandoverTo_E_UTRAN_Payload_t),
6866   CSN_ERROR    (Packet_Handover_Command_t, "11 <extension> not implemented", CSN_ERROR_STREAM_NOT_SUPPORTED, &ei_gsm_rlcmac_stream_not_supported),
6867 
6868   M_PADDING_BITS(Packet_Handover_Command_t, &hf_padding),
6869 CSN_DESCR_END  (Packet_Handover_Command_t)
6870 
6871 /* < End Packet Handover Command > */
6872 
6873 /* < Packet Physical Information message content > */
6874 
6875 static const
6876 CSN_DESCR_BEGIN(Packet_PhysicalInformation_t)
6877   M_UINT       (Packet_PhysicalInformation_t,  MessageType, 6, &hf_dl_message_type),
6878   M_UINT       (Packet_PhysicalInformation_t,  PageMode, 2, &hf_page_mode),
6879 
6880   M_TYPE       (Packet_PhysicalInformation_t, Global_TFI, Global_TFI_t),
6881 
6882   M_UINT       (Packet_PhysicalInformation_t,  TimingAdvance, 8, &hf_timing_advance_value),
6883   M_PADDING_BITS(Packet_PhysicalInformation_t, &hf_padding),
6884 CSN_DESCR_END  (Packet_PhysicalInformation_t)
6885 
6886 /* < End Packet Physical Information > */
6887 
6888 
6889 /* < ADDITIONAL MS RADIO ACCESS CAPABILITIES content > */
6890 static const
6891 CSN_ChoiceElement_t AdditionalMsRadAccessCapID[] =
6892 {
6893   {1, 0,    0, M_TYPE(AdditionalMsRadAccessCapID_t, u.Global_TFI, Global_TFI_t)},
6894   {1, 0x01, 0, M_UINT(AdditionalMsRadAccessCapID_t, u.TLLI, 32, &hf_tlli)},
6895 };
6896 
6897 static const
CSN_DESCR_BEGIN(AdditionalMsRadAccessCapID_t)6898 CSN_DESCR_BEGIN(AdditionalMsRadAccessCapID_t)
6899   M_CHOICE     (AdditionalMsRadAccessCapID_t, UnionType, AdditionalMsRadAccessCapID, ElementsOf(AdditionalMsRadAccessCapID), &hf_additional_ms_rad_access_cap_id_choice),
6900 CSN_DESCR_END  (AdditionalMsRadAccessCapID_t)
6901 
6902 
6903 static const
6904 CSN_DESCR_BEGIN       (Additional_MS_Rad_Access_Cap_t)
6905   /* Mac header */
6906   M_UINT              (Additional_MS_Rad_Access_Cap_t,  PayloadType, 2, &hf_ul_payload_type),
6907   M_UINT              (Additional_MS_Rad_Access_Cap_t,  spare, 5, &hf_ul_mac_header_spare),
6908   M_UINT              (Additional_MS_Rad_Access_Cap_t,  R, 1, &hf_ul_retry),
6909   M_UINT              (Additional_MS_Rad_Access_Cap_t,  MESSAGE_TYPE,  6, &hf_ul_message_type),
6910   /* Mac header */
6911 
6912   M_TYPE              (Additional_MS_Rad_Access_Cap_t,  ID, AdditionalMsRadAccessCapID_t),
6913   M_TYPE              (Additional_MS_Rad_Access_Cap_t,  MS_Radio_Access_capability2, MS_Radio_Access_capability2_t),
6914   M_PADDING_BITS      (Additional_MS_Rad_Access_Cap_t, &hf_padding),
6915 CSN_DESCR_END         (Additional_MS_Rad_Access_Cap_t)
6916 
6917 
6918 /* < End  ADDITIONAL MS RADIO ACCESS CAPABILITIES > */
6919 
6920 
6921 /* < Packet Pause content > */
6922 
6923 static const
6924 CSN_DESCR_BEGIN       (Packet_Pause_t)
6925   M_UINT              (Packet_Pause_t,  MESSAGE_TYPE, 2, &hf_dl_message_type),
6926   M_UINT              (Packet_Pause_t,  TLLI, 32, &hf_tlli),
6927   M_BITMAP            (Packet_Pause_t,  RAI, 48, &hf_rai),
6928   M_PADDING_BITS      (Packet_Pause_t, &hf_padding),
6929 CSN_DESCR_END         (Packet_Pause_t)
6930 
6931 
6932 /* < End Packet Pause > */
6933 
6934 
6935 /* < Packet System Information Type 1 message content > */
6936 static const
6937 CSN_DESCR_BEGIN(PSI1_AdditionsR6_t)
6938   M_UINT       (PSI1_AdditionsR6_t, LB_MS_TXPWR_MAX_CCH, 5, &hf_packet_system_info_type1_lb_ms_txpwr_max_ccch),
6939 CSN_DESCR_END  (PSI1_AdditionsR6_t)
6940 
6941 static const
6942 CSN_DESCR_BEGIN        (PSI1_AdditionsR99_t)
6943   M_UINT               (PSI1_AdditionsR99_t, MSCR,  1, &hf_packet_system_info_type1_mscr),
6944   M_UINT               (PSI1_AdditionsR99_t, SGSNR,  1, &hf_sgsnr),
6945   M_UINT               (PSI1_AdditionsR99_t, BandIndicator,  1, &hf_packet_system_info_type1_band_indicator),
6946   M_NEXT_EXIST_OR_NULL (PSI1_AdditionsR99_t, Exist_AdditionsR6, 1, &hf_psi1_additionsr99_additionsr6_exist),
6947   M_TYPE               (PSI1_AdditionsR99_t, AdditionsR6, PSI1_AdditionsR6_t),
6948 CSN_DESCR_END          (PSI1_AdditionsR99_t)
6949 
6950 static const
6951 CSN_DESCR_BEGIN(PCCCH_Organization_t)
6952   M_UINT       (PCCCH_Organization_t,  BS_PCC_REL,  1, &hf_pccch_org_bs_pcc_rel),
6953   M_UINT       (PCCCH_Organization_t,  BS_PBCCH_BLKS, 2, &hf_pccch_org_pbcch_blks),
6954   M_UINT       (PCCCH_Organization_t,  BS_PAG_BLKS_RES, 4, &hf_pccch_org_pag_blks_res),
6955   M_UINT       (PCCCH_Organization_t,  BS_PRACH_BLKS, 4, &hf_pccch_org_prach_blks),
6956 CSN_DESCR_END  (PCCCH_Organization_t)
6957 
6958 
6959 static const
6960 CSN_DESCR_BEGIN(PSI1_t)
6961   M_UINT               (PSI1_t, MESSAGE_TYPE, 6, &hf_dl_message_type),
6962   M_UINT               (PSI1_t, PAGE_MODE, 2, &hf_page_mode),
6963 
6964   M_UINT               (PSI1_t, PBCCH_CHANGE_MARK,  3, &hf_packet_system_info_type1_pbcch_change_mark),
6965   M_UINT               (PSI1_t, PSI_CHANGE_FIELD,  4, &hf_packet_system_info_type1_psi_change_field),
6966   M_UINT               (PSI1_t, PSI1_REPEAT_PERIOD,  4, &hf_packet_system_info_type1_psi1_repeat_period),
6967   M_UINT               (PSI1_t, PSI_COUNT_LR,  6, &hf_packet_system_info_type1_psi_count_lr),
6968 
6969   M_NEXT_EXIST         (PSI1_t, Exist_PSI_COUNT_HR, 1, &hf_psi1_psi_count_hr_exist),
6970   M_UINT               (PSI1_t, PSI_COUNT_HR,  4, &hf_packet_system_info_type1_psi_count_hr),
6971 
6972   M_UINT               (PSI1_t, MEASUREMENT_ORDER,  1, &hf_packet_system_info_type1_measurement_order),
6973   M_TYPE               (PSI1_t, GPRS_Cell_Options, GPRS_Cell_Options_t),
6974   M_TYPE               (PSI1_t, PRACH_Control, PRACH_Control_t),
6975   M_TYPE               (PSI1_t, PCCCH_Organization, PCCCH_Organization_t),
6976   M_TYPE               (PSI1_t, Global_Power_Control_Parameters, Global_Power_Control_Parameters_t),
6977   M_UINT               (PSI1_t, PSI_STATUS_IND,  1, &hf_packet_system_info_type1_psi_status_ind),
6978 
6979   M_NEXT_EXIST_OR_NULL (PSI1_t, Exist_AdditionsR99, 1, &hf_additionsr99_exist),
6980   M_TYPE               (PSI1_t, AdditionsR99, PSI1_AdditionsR99_t),
6981 
6982   M_PADDING_BITS(PSI1_t, &hf_padding),
6983 CSN_DESCR_END  (PSI1_t)
6984 /* < End Packet System Information Type 1 message content > */
6985 
6986 
6987 /* < Packet System Information Type 2 message content > */
6988 
6989 static const
6990 CSN_DESCR_BEGIN(LAI_t)
6991   M_TYPE       (LAI_t,  PLMN, PLMN_t),
6992   M_UINT       (LAI_t,  LAC,  16, &hf_packet_lai_lac),
6993 CSN_DESCR_END  (LAI_t)
6994 
6995 static const
6996 CSN_DESCR_BEGIN(Cell_Identification_t)
6997   M_TYPE       (Cell_Identification_t,  LAI, LAI_t),
6998   M_UINT       (Cell_Identification_t,  RAC, 8, &hf_rac),
6999   M_UINT       (Cell_Identification_t,  Cell_Identity,  16, &hf_packet_cell_id_cell_identity),
7000 CSN_DESCR_END  (Cell_Identification_t)
7001 
7002 static const
7003 CSN_DESCR_BEGIN(Non_GPRS_Cell_Options_t)
7004   M_UINT       (Non_GPRS_Cell_Options_t,  ATT, 1, &hf_packet_non_gprs_cell_opt_att),
7005 
7006   M_NEXT_EXIST (Non_GPRS_Cell_Options_t, Exist_T3212, 1, &hf_non_gprs_cell_options_t3212_exist),
7007   M_UINT       (Non_GPRS_Cell_Options_t,  T3212, 8, &hf_packet_non_gprs_cell_opt_t3212),
7008 
7009   M_UINT       (Non_GPRS_Cell_Options_t,  NECI, 1, &hf_packet_non_gprs_cell_opt_neci),
7010   M_UINT       (Non_GPRS_Cell_Options_t,  PWRC, 1, &hf_packet_non_gprs_cell_opt_pwrc),
7011   M_UINT       (Non_GPRS_Cell_Options_t,  DTX, 2, &hf_packet_non_gprs_cell_opt_dtx),
7012   M_UINT       (Non_GPRS_Cell_Options_t,  RADIO_LINK_TIMEOUT, 4, &hf_packet_non_gprs_cell_opt_radio_link_timeout),
7013   M_UINT       (Non_GPRS_Cell_Options_t,  BS_AG_BLKS_RES, 3, &hf_packet_non_gprs_cell_opt_bs_ag_blks_res),
7014   M_UINT       (Non_GPRS_Cell_Options_t,  CCCH_CONF, 3, &hf_packet_non_gprs_cell_opt_ccch_conf),
7015   M_UINT       (Non_GPRS_Cell_Options_t,  BS_PA_MFRMS, 3, &hf_packet_non_gprs_cell_opt_bs_pa_mfrms),
7016   M_UINT       (Non_GPRS_Cell_Options_t,  MAX_RETRANS, 2, &hf_packet_non_gprs_cell_opt_max_retrans),
7017   M_UINT       (Non_GPRS_Cell_Options_t,  TX_INTEGER, 4, &hf_packet_non_gprs_cell_opt_tx_int),
7018   M_UINT       (Non_GPRS_Cell_Options_t,  EC, 1, &hf_packet_non_gprs_cell_opt_ec),
7019   M_UINT       (Non_GPRS_Cell_Options_t,  MS_TXPWR_MAX_CCCH, 5, &hf_packet_non_gprs_cell_opt_ms_txpwr_max_ccch),
7020 
7021   M_NEXT_EXIST (Non_GPRS_Cell_Options_t, Exist_Extension_Bits, 1, &hf_non_gprs_cell_options_extension_bits_exist),
7022   M_TYPE       (Non_GPRS_Cell_Options_t,  Extension_Bits, Extension_Bits_t),
7023 CSN_DESCR_END  (Non_GPRS_Cell_Options_t)
7024 
7025 static const
7026 CSN_DESCR_BEGIN(Reference_Frequency_t)
7027   M_UINT(Reference_Frequency_t, NUMBER, 4, &hf_packet_system_info_type2_ref_freq_num),
7028   M_UINT_OFFSET(Reference_Frequency_t, Length, 4, 3, &hf_packet_system_info_type2_ref_freq_length),
7029   M_VAR_ARRAY  (Reference_Frequency_t, Contents[0], Length, 0, &hf_packet_system_info_type2_ref_freq),
7030 CSN_DESCR_END  (Reference_Frequency_t)
7031 
7032 static const
7033 CSN_DESCR_BEGIN(PSI2_MA_t)
7034   M_UINT(PSI2_MA_t, NUMBER, 4, &hf_packet_system_info_type2_ma_number),
7035   M_TYPE(PSI2_MA_t, Mobile_Allocation, GPRS_Mobile_Allocation_t),
7036 CSN_DESCR_END  (PSI2_MA_t)
7037 
7038 static const
7039 CSN_DESCR_BEGIN(Non_Hopping_PCCCH_Carriers_t)
7040   M_UINT(Non_Hopping_PCCCH_Carriers_t, ARFCN, 10, &hf_arfcn),
7041   M_UINT(Non_Hopping_PCCCH_Carriers_t, TIMESLOT_ALLOCATION, 8, &hf_packet_system_info_type2_non_hopping_timeslot),
7042 CSN_DESCR_END  (Non_Hopping_PCCCH_Carriers_t)
7043 
7044 static const
7045 CSN_DESCR_BEGIN(NonHoppingPCCCH_t)
7046   M_REC_TARRAY (NonHoppingPCCCH_t, Carriers, Non_Hopping_PCCCH_Carriers_t, Count_Carriers, &hf_nonhoppingpccch_carriers_exist),
7047 CSN_DESCR_END  (NonHoppingPCCCH_t)
7048 
7049 static const
7050 CSN_DESCR_BEGIN(Hopping_PCCCH_Carriers_t)
7051   M_UINT(Hopping_PCCCH_Carriers_t, MAIO, 6, &hf_maio),
7052   M_UINT(Hopping_PCCCH_Carriers_t, TIMESLOT_ALLOCATION, 8, &hf_packet_system_info_type2_hopping_timeslot),
7053 CSN_DESCR_END  (Hopping_PCCCH_Carriers_t)
7054 
7055 static const
7056 CSN_DESCR_BEGIN(HoppingPCCCH_t)
7057   M_UINT(HoppingPCCCH_t, MA_NUMBER, 4, &hf_packet_system_info_type2_hopping_ma_num),
7058   M_REC_TARRAY (HoppingPCCCH_t, Carriers, Hopping_PCCCH_Carriers_t, Count_Carriers, &hf_nonhoppingpccch_carriers_exist),
7059 CSN_DESCR_END  (HoppingPCCCH_t)
7060 
7061 static const
7062 CSN_DESCR_BEGIN(PCCCH_Description_t)
7063   M_UINT(PCCCH_Description_t, TSC, 3, &hf_tsc),
7064   M_UNION     (PCCCH_Description_t, 2, &hf_pccch_description),
7065   M_TYPE      (PCCCH_Description_t, u.NonHopping, NonHoppingPCCCH_t),
7066   M_TYPE      (PCCCH_Description_t, u.Hopping, HoppingPCCCH_t),
7067 CSN_DESCR_END  (PCCCH_Description_t)
7068 
7069 static const
7070 CSN_DESCR_BEGIN(PSI2_t)
7071   M_UINT       (PSI2_t, MESSAGE_TYPE, 6, &hf_dl_message_type),
7072   M_UINT       (PSI2_t, PAGE_MODE, 2, &hf_page_mode),
7073 
7074   M_UINT       (PSI2_t, CHANGE_MARK, 2, &hf_packet_system_info_type2_change_mark),
7075   M_UINT       (PSI2_t, INDEX, 3, &hf_packet_system_info_type2_index),
7076   M_UINT       (PSI2_t, COUNT, 3, &hf_packet_system_info_type2_count),
7077 
7078   M_NEXT_EXIST (PSI2_t, Exist_Cell_Identification, 1, &hf_psi2_cell_identification_exist),
7079   M_TYPE       (PSI2_t, Cell_Identification, Cell_Identification_t),
7080 
7081   M_NEXT_EXIST (PSI2_t, Exist_Non_GPRS_Cell_Options, 1, &hf_psi2_non_gprs_cell_options_exist),
7082   M_TYPE       (PSI2_t, Non_GPRS_Cell_Options, Non_GPRS_Cell_Options_t),
7083 
7084   M_REC_TARRAY (PSI2_t, Reference_Frequency, Reference_Frequency_t, Count_Reference_Frequency, &hf_psi2_reference_frequency_exist),
7085   M_TYPE       (PSI2_t, Cell_Allocation, Cell_Allocation_t),
7086   M_REC_TARRAY (PSI2_t, GPRS_MA, PSI2_MA_t, Count_GPRS_MA, &hf_psi2_gprs_ma_exist),
7087   M_REC_TARRAY (PSI2_t, PCCCH_Description, PCCCH_Description_t, Count_PCCCH_Description, &hf_psi2_pccch_description_exist),
7088   M_PADDING_BITS(PSI2_t, &hf_padding),
7089 CSN_DESCR_END  (PSI2_t)
7090 /* < End Packet System Information Type 2 message content > */
7091 
7092 
7093 
7094 /* < Packet System Information Type 3 message content > */
7095 static const
7096 CSN_DESCR_BEGIN(Serving_Cell_params_t)
7097   M_UINT       (Serving_Cell_params_t,  CELL_BAR_ACCESS_2, 1, &hf_cell_bar_access_2),
7098   M_UINT       (Serving_Cell_params_t,  EXC_ACC, 1, &hf_exc_acc),
7099   M_UINT       (Serving_Cell_params_t,  GPRS_RXLEV_ACCESS_MIN, 6, &hf_packet_scell_param_gprs_rxlev_access_min),
7100   M_UINT       (Serving_Cell_params_t,  GPRS_MS_TXPWR_MAX_CCH, 5, &hf_packet_scell_param_gprs_ms_txpwr_max_cch),
7101   M_NEXT_EXIST (Serving_Cell_params_t, Exist_HCS, 1, &hf_serving_cell_params_hcs_exist),
7102   M_TYPE       (Serving_Cell_params_t,  HCS, HCS_t),
7103   M_UINT       (Serving_Cell_params_t,  MULTIBAND_REPORTING, 2, &hf_packet_scell_param_multiband_reporting),
7104 CSN_DESCR_END  (Serving_Cell_params_t)
7105 
7106 
7107 static const
7108 CSN_DESCR_BEGIN(Gen_Cell_Sel_t)
7109   M_UINT       (Gen_Cell_Sel_t,  GPRS_CELL_RESELECT_HYSTERESIS, 3, &hf_packet_gen_cell_sel_gprs_cell_resl_hyst),
7110   M_UINT       (Gen_Cell_Sel_t,  C31_HYST, 1, &hf_packet_gen_cell_sel_c31_hyst),
7111   M_UINT       (Gen_Cell_Sel_t,  C32_QUAL, 1, &hf_packet_gen_cell_sel_c32_qual),
7112   M_FIXED      (Gen_Cell_Sel_t, 1, 0x01, &hf_gen_cell_sel),
7113 
7114   M_NEXT_EXIST (Gen_Cell_Sel_t, Exist_T_RESEL, 1, &hf_gen_cell_sel_t_resel_exist),
7115   M_UINT       (Gen_Cell_Sel_t,  T_RESEL, 3, &hf_packet_gen_cell_sel_t_resel),
7116 
7117   M_NEXT_EXIST (Gen_Cell_Sel_t, Exist_RA_RESELECT_HYSTERESIS, 1, &hf_gen_cell_sel_ra_reselect_hysteresis_exist),
7118   M_UINT       (Gen_Cell_Sel_t,  RA_RESELECT_HYSTERESIS, 3, &hf_packet_gen_cell_sel_ra_resel_hyst),
7119 CSN_DESCR_END  (Gen_Cell_Sel_t)
7120 
7121 
7122 static const
7123 CSN_DESCR_BEGIN(COMPACT_Cell_Sel_t)
7124   M_UINT       (COMPACT_Cell_Sel_t,  bsic, 6, &hf_packet_compact_cell_sel_bsic),
7125   M_UINT       (COMPACT_Cell_Sel_t,  CELL_BAR_ACCESS_2, 1, &hf_cell_bar_access_2),
7126   M_UINT       (COMPACT_Cell_Sel_t,  EXC_ACC, 1, &hf_exc_acc),
7127   M_UINT       (COMPACT_Cell_Sel_t,  SAME_RA_AS_SERVING_CELL, 1, &hf_packet_compact_cell_sel_same_as_scell),
7128   M_NEXT_EXIST (COMPACT_Cell_Sel_t, Exist_GPRS_RXLEV_ACCESS_MIN, 2, &hf_compact_cell_sel_gprs_rxlev_access_min_exist),
7129   M_UINT       (COMPACT_Cell_Sel_t,  GPRS_RXLEV_ACCESS_MIN, 6, &hf_packet_compact_cell_sel_gprs_rxlev_access_min),
7130   M_UINT       (COMPACT_Cell_Sel_t,  GPRS_MS_TXPWR_MAX_CCH, 5, &hf_packet_compact_cell_sel_gprs_ms_txpwr_max_cch),
7131   M_NEXT_EXIST (COMPACT_Cell_Sel_t, Exist_GPRS_TEMPORARY_OFFSET, 2, &hf_compact_cell_sel_gprs_temporary_offset_exist),
7132   M_UINT       (COMPACT_Cell_Sel_t,  GPRS_TEMPORARY_OFFSET, 3, &hf_packet_compact_cell_sel_gprs_temp_offset),
7133   M_UINT       (COMPACT_Cell_Sel_t,  GPRS_PENALTY_TIME, 5, &hf_packet_compact_cell_sel_gprs_penalty_time),
7134   M_NEXT_EXIST (COMPACT_Cell_Sel_t, Exist_GPRS_RESELECT_OFFSET, 1, &hf_compact_cell_sel_gprs_reselect_offset_exist),
7135   M_UINT       (COMPACT_Cell_Sel_t,  GPRS_RESELECT_OFFSET, 5, &hf_packet_compact_cell_sel_gprs_resel_offset),
7136   M_NEXT_EXIST (COMPACT_Cell_Sel_t, Exist_Hcs_Parm, 1, &hf_compact_cell_sel_hcs_parm_exist),
7137   M_TYPE       (COMPACT_Cell_Sel_t,  HCS_Param, HCS_t),
7138   M_NEXT_EXIST (COMPACT_Cell_Sel_t, Exist_TIME_GROUP, 1, &hf_compact_cell_sel_time_group_exist),
7139   M_UINT       (COMPACT_Cell_Sel_t,  TIME_GROUP, 2, &hf_packet_compact_cell_sel_time_group),
7140   M_NEXT_EXIST (COMPACT_Cell_Sel_t, Exist_GUAR_CONSTANT_PWR_BLKS, 1, &hf_compact_cell_sel_guar_constant_pwr_blks_exist),
7141   M_UINT       (COMPACT_Cell_Sel_t,  GUAR_CONSTANT_PWR_BLKS, 2, &hf_packet_compact_cell_sel_guar_const_pwr_blks),
7142 CSN_DESCR_END  (COMPACT_Cell_Sel_t)
7143 
7144 static const
7145 CSN_DESCR_BEGIN(COMPACT_Neighbour_Cell_Param_Remaining_t)
7146   M_VAR_BITMAP (COMPACT_Neighbour_Cell_Param_Remaining_t,  FREQUENCY_DIFF, FREQ_DIFF_LENGTH, 0, &hf_packet_compact_neighbour_cell_param_freq_diff),
7147   M_TYPE       (COMPACT_Neighbour_Cell_Param_Remaining_t,  COMPACT_Cell_Sel_Remain_Cells, COMPACT_Cell_Sel_t),
7148 CSN_DESCR_END  (COMPACT_Neighbour_Cell_Param_Remaining_t)
7149 
7150 static CSN_CallBackStatus_t callback_init_COMP_Ncell_Param_FREQUENCY_DIFF(proto_tree *tree _U_, tvbuff_t *tvb _U_, void* param1, void* param2,
7151                                                                           int bit_offset _U_, int ett_csn1 _U_, packet_info* pinfo _U_)
7152 {
7153   guint  i;
7154   guint8 freq_diff_len = *(guint8*)param1;
7155   COMPACT_Neighbour_Cell_Param_Remaining_t *pCom_NCell_Param_rem = (COMPACT_Neighbour_Cell_Param_Remaining_t*)param2;
7156 
7157   for( i=0; i<16; i++, pCom_NCell_Param_rem++ )
7158   {
7159     pCom_NCell_Param_rem->FREQ_DIFF_LENGTH = freq_diff_len;
7160   }
7161 
7162   return 0;
7163 }
7164 
7165 static const
7166 CSN_DESCR_BEGIN(COMPACT_Neighbour_Cell_Param_t)
7167   M_UINT       (COMPACT_Neighbour_Cell_Param_t,  START_FREQUENCY, 10, &hf_packet_compact_ncell_param_start_freq),
7168   M_TYPE       (COMPACT_Neighbour_Cell_Param_t,  COMPACT_Cell_Sel, COMPACT_Cell_Sel_t),
7169   M_UINT       (COMPACT_Neighbour_Cell_Param_t,  NR_OF_REMAINING_CELLS, 4, &hf_packet_compact_ncell_param_nr_of_remaining_cells),
7170   M_UINT_OFFSET(COMPACT_Neighbour_Cell_Param_t,  FREQ_DIFF_LENGTH, 3, 1, &hf_packet_compact_ncell_param_freq_diff_length),
7171   M_CALLBACK   (COMPACT_Neighbour_Cell_Param_t,  callback_init_COMP_Ncell_Param_FREQUENCY_DIFF, FREQ_DIFF_LENGTH, COMPACT_Neighbour_Cell_Param_Remaining),
7172   M_VAR_TARRAY (COMPACT_Neighbour_Cell_Param_t,  COMPACT_Neighbour_Cell_Param_Remaining, COMPACT_Neighbour_Cell_Param_Remaining_t, NR_OF_REMAINING_CELLS),
7173 CSN_DESCR_END  (COMPACT_Neighbour_Cell_Param_t)
7174 
7175 
7176 static const
7177 CSN_DESCR_BEGIN(COMPACT_Info_t)
7178   M_TYPE       (COMPACT_Info_t,  Cell_Identification, Cell_Identification_t),
7179   M_REC_TARRAY (COMPACT_Info_t,  COMPACT_Neighbour_Cell_Param, COMPACT_Neighbour_Cell_Param_t, COMPACT_Neighbour_Cell_Param_Count, &hf_compact_info_compact_neighbour_cell_param_exist),
7180 CSN_DESCR_END  (COMPACT_Info_t)
7181 
7182 
7183 static const
7184 CSN_DESCR_BEGIN(PSI3_AdditionR4_t)
7185   M_NEXT_EXIST (PSI3_AdditionR4_t, Exist_CCN_Support_Desc, 1, &hf_psi3_additionr4_ccn_support_desc_exist),
7186   M_TYPE       (PSI3_AdditionR4_t,  CCN_Support_Desc, CCN_Support_Description_t),
7187 CSN_DESCR_END  (PSI3_AdditionR4_t)
7188 
7189 
7190 static const
7191 CSN_DESCR_BEGIN(PSI3_AdditionR99_t)
7192   M_FIXED      (PSI3_AdditionR99_t, 2, 0x00, &hf_psi3_additionr99),
7193   M_NEXT_EXIST (PSI3_AdditionR99_t, Exist_COMPACT_Info, 1, &hf_psi3_additionr99_compact_info_exist),
7194   M_TYPE       (PSI3_AdditionR99_t,  COMPACT_Info, COMPACT_Info_t),
7195   M_FIXED      (PSI3_AdditionR99_t, 1, 0x00, &hf_psi3_additionr99),
7196   M_NEXT_EXIST (PSI3_AdditionR99_t, Exist_AdditionR4, 1, &hf_psi3_additionr99_additionr4_exist),
7197   M_TYPE       (PSI3_AdditionR99_t,  AdditionR4, PSI3_AdditionR4_t),
7198 CSN_DESCR_END  (PSI3_AdditionR99_t)
7199 
7200 
7201 static const
7202 CSN_DESCR_BEGIN(PSI3_AdditionR98_t)
7203   M_TYPE       (PSI3_AdditionR98_t,  Scell_LSA_ID_Info, LSA_ID_Info_t),
7204 
7205   M_NEXT_EXIST (PSI3_AdditionR98_t, Exist_LSA_Parameters, 1, &hf_psi3_additionr98_lsa_parameters_exist),
7206   M_TYPE       (PSI3_AdditionR98_t,  LSA_Parameters, LSA_Parameters_t),
7207 
7208   M_NEXT_EXIST (PSI3_AdditionR98_t, Exist_AdditionR99, 1, &hf_psi3_additionr98_additionr99_exist),
7209   M_TYPE       (PSI3_AdditionR98_t,  AdditionR99, PSI3_AdditionR99_t),
7210 CSN_DESCR_END  (PSI3_AdditionR98_t)
7211 
7212 
7213 static const
7214 CSN_DESCR_BEGIN(PSI3_t)
7215   M_UINT       (PSI3_t, MESSAGE_TYPE, 6, &hf_dl_message_type),
7216   M_UINT       (PSI3_t, PAGE_MODE, 2, &hf_page_mode),
7217   M_UINT       (PSI3_t, CHANGE_MARK, 2, &hf_packet_system_info_type3_change_mark),
7218   M_UINT       (PSI3_t, BIS_COUNT, 4, &hf_packet_system_info_type3_bis_count),
7219   M_TYPE       (PSI3_t, Serving_Cell_params, Serving_Cell_params_t),
7220   M_TYPE       (PSI3_t, General_Cell_Selection, Gen_Cell_Sel_t),
7221   M_TYPE       (PSI3_t, NeighbourCellList, NeighbourCellList_t),
7222 
7223   M_NEXT_EXIST (PSI3_t, Exist_AdditionR98, 1, &hf_psi3_additionr98_exist),
7224   M_TYPE       (PSI3_t, AdditionR98, PSI3_AdditionR98_t),
7225 
7226   M_PADDING_BITS(PSI3_t, &hf_padding),
7227 CSN_DESCR_END  (PSI3_t)
7228 /* < End Packet System Information Type 3 message content > */
7229 
7230 
7231 /* < Packet System Information Type 5 message content > */
7232 static const
7233 CSN_DESCR_BEGIN(MeasurementParams_t)
7234   M_NEXT_EXIST (MeasurementParams_t, Exist_MULTI_BAND_REPORTING, 1, &hf_measurementparams_multi_band_reporting_exist),
7235   M_UINT       (MeasurementParams_t,  MULTI_BAND_REPORTING,  2, &hf_gprsmeasurementparams_pmo_pcco_multi_band_reporting),
7236 
7237   M_NEXT_EXIST (MeasurementParams_t, Exist_SERVING_BAND_REPORTING, 1, &hf_measurementparams_serving_band_reporting_exist),
7238   M_UINT       (MeasurementParams_t,  SERVING_BAND_REPORTING,  2, &hf_gprsmeasurementparams_pmo_pcco_serving_band_reporting),
7239 
7240   M_NEXT_EXIST (MeasurementParams_t, Exist_SCALE_ORD, 1, &hf_measurementparams_scale_ord_exist),
7241   M_UINT       (MeasurementParams_t,  SCALE_ORD,  2, &hf_gprsmeasurementparams_pmo_pcco_scale_ord),
7242 
7243   M_NEXT_EXIST (MeasurementParams_t, Exist_OffsetThreshold900, 1, &hf_measurementparams_offsetthreshold900_exist),
7244   M_TYPE       (MeasurementParams_t, OffsetThreshold900, OffsetThreshold_t),
7245 
7246   M_NEXT_EXIST (MeasurementParams_t, Exist_OffsetThreshold1800, 1, &hf_measurementparams_offsetthreshold1800_exist),
7247   M_TYPE       (MeasurementParams_t, OffsetThreshold1800, OffsetThreshold_t),
7248 
7249   M_NEXT_EXIST (MeasurementParams_t, Exist_OffsetThreshold400, 1, &hf_measurementparams_offsetthreshold400_exist),
7250   M_TYPE       (MeasurementParams_t, OffsetThreshold400, OffsetThreshold_t),
7251 
7252   M_NEXT_EXIST (MeasurementParams_t, Exist_OffsetThreshold1900, 1, &hf_measurementparams_offsetthreshold1900_exist),
7253   M_TYPE       (MeasurementParams_t, OffsetThreshold1900, OffsetThreshold_t),
7254 
7255   M_NEXT_EXIST (MeasurementParams_t, Exist_OffsetThreshold850, 1, &hf_measurementparams_offsetthreshold850_exist),
7256   M_TYPE       (MeasurementParams_t, OffsetThreshold850, OffsetThreshold_t),
7257 CSN_DESCR_END  (MeasurementParams_t)
7258 
7259 static const
7260 CSN_DESCR_BEGIN(GPRSMeasurementParams3G_PSI5_t)
7261   M_NEXT_EXIST (GPRSMeasurementParams3G_PSI5_t, existRepParamsFDD, 2, &hf_gprsmeasurementparams3g_psi5_existrepparamsfdd_exist),
7262   M_UINT       (GPRSMeasurementParams3G_PSI5_t,  RepQuantFDD,  1, &hf_gprsmeasurementparams3g_psi5_repquantfdd),
7263   M_UINT       (GPRSMeasurementParams3G_PSI5_t,  MultiratReportingFDD,  2, &hf_gprsmeasurementparams3g_psi5_multiratreportingfdd),
7264 
7265   M_NEXT_EXIST (GPRSMeasurementParams3G_PSI5_t, existReportingParamsFDD, 2, &hf_gprsmeasurementparams3g_psi5_existreportingparamsfdd_exist),
7266   M_UINT       (GPRSMeasurementParams3G_PSI5_t,  ReportingOffsetFDD,  3, &hf_gprsmeasurementparams3g_psi5_reportingoffsetfdd),
7267   M_UINT       (GPRSMeasurementParams3G_PSI5_t,  ReportingThresholdFDD,  3, &hf_gprsmeasurementparams3g_psi5_reportingthresholdfdd),
7268 
7269   M_NEXT_EXIST (GPRSMeasurementParams3G_PSI5_t, existMultiratReportingTDD, 1, &hf_gprsmeasurementparams3g_psi5_existmultiratreportingtdd_exist),
7270   M_UINT       (GPRSMeasurementParams3G_PSI5_t,  MultiratReportingTDD,  2, &hf_gprsmeasurementparams3g_psi5_multiratreportingtdd),
7271 
7272   M_NEXT_EXIST (GPRSMeasurementParams3G_PSI5_t, existOffsetThresholdTDD, 2, &hf_gprsmeasurementparams3g_psi5_existoffsetthresholdtdd_exist),
7273   M_UINT       (GPRSMeasurementParams3G_PSI5_t,  ReportingOffsetTDD,  3, &hf_gprsmeasurementparams3g_psi5_reportingoffsettdd),
7274   M_UINT       (GPRSMeasurementParams3G_PSI5_t,  ReportingThresholdTDD,  3, &hf_gprsmeasurementparams3g_psi5_reportingthresholdtdd),
7275 CSN_DESCR_END  (GPRSMeasurementParams3G_PSI5_t)
7276 
7277 static const
7278 CSN_DESCR_BEGIN(ENH_Reporting_Parameters_t)
7279   M_UINT       (ENH_Reporting_Parameters_t,  REPORT_TYPE,  1, &hf_enh_reporting_parameters_report_type),
7280   M_UINT       (ENH_Reporting_Parameters_t,  REPORTING_RATE,  1, &hf_enh_reporting_parameters_reporting_rate),
7281   M_UINT       (ENH_Reporting_Parameters_t,  INVALID_BSIC_REPORTING,  1, &hf_enh_reporting_parameters_invalid_bsic_reporting),
7282 
7283   M_NEXT_EXIST (ENH_Reporting_Parameters_t, Exist_NCC_PERMITTED, 1, &hf_enh_reporting_parameters_ncc_permitted_exist),
7284   M_UINT       (ENH_Reporting_Parameters_t,  NCC_PERMITTED,  8, &hf_enh_reporting_parameters_ncc_permitted),
7285 
7286   M_NEXT_EXIST (ENH_Reporting_Parameters_t, Exist_GPRSMeasurementParams, 1, &hf_enh_reporting_parameters_gprsmeasurementparams_exist),
7287   M_TYPE       (ENH_Reporting_Parameters_t, GPRSMeasurementParams, MeasurementParams_t),
7288 
7289   M_NEXT_EXIST (ENH_Reporting_Parameters_t, Exist_GPRSMeasurementParams3G, 1, &hf_enh_reporting_parameters_gprsmeasurementparams3g_exist),
7290   M_TYPE       (ENH_Reporting_Parameters_t, GPRSMeasurementParams3G, GPRSMeasurementParams3G_PSI5_t),
7291 CSN_DESCR_END  (ENH_Reporting_Parameters_t)
7292 
7293 static const
7294 CSN_DESCR_BEGIN(PSI5_AdditionsR7)
7295   M_NEXT_EXIST (PSI5_AdditionsR7, Exist_OffsetThreshold_700, 1, &hf_psi5_additions_offsetthreshold_700_exist),
7296   M_TYPE       (PSI5_AdditionsR7,  OffsetThreshold_700, OffsetThreshold_t),
7297 
7298   M_NEXT_EXIST (PSI5_AdditionsR7, Exist_OffsetThreshold_810, 1, &hf_psi5_additions_offsetthreshold_810_exist),
7299   M_TYPE       (PSI5_AdditionsR7,  OffsetThreshold_810, OffsetThreshold_t),
7300 CSN_DESCR_END  (PSI5_AdditionsR7)
7301 
7302 static const
7303 CSN_DESCR_BEGIN(PSI5_AdditionsR5)
7304   M_NEXT_EXIST (PSI5_AdditionsR5, Exist_GPRS_AdditionalMeasurementParams3G, 1, &hf_psi5_additions_gprs_additionalmeasurementparams3g_exist),
7305   M_TYPE       (PSI5_AdditionsR5,  GPRS_AdditionalMeasurementParams3G, GPRS_AdditionalMeasurementParams3G_t),
7306 
7307   M_NEXT_EXIST (PSI5_AdditionsR5, Exist_AdditionsR7, 1, &hf_psi5_additions_additionsr7_exist),
7308   M_TYPE       (PSI5_AdditionsR5,  AdditionsR7, PSI5_AdditionsR7),
7309 CSN_DESCR_END  (PSI5_AdditionsR5)
7310 
7311 static const
7312 CSN_DESCR_BEGIN(PSI5_AdditionsR99)
7313   M_NEXT_EXIST (PSI5_AdditionsR99, Exist_ENH_Reporting_Param, 1, &hf_psi5_additionsr_enh_reporting_param_exist),
7314   M_TYPE       (PSI5_AdditionsR99,  ENH_Reporting_Param, ENH_Reporting_Parameters_t),
7315 
7316   M_NEXT_EXIST (PSI5_AdditionsR99, Exist_AdditionsR5, 1, &hf_psi5_additionsr_additionsr5_exist),
7317   M_TYPE       (PSI5_AdditionsR99,  AdditionisR5, PSI5_AdditionsR5),
7318 CSN_DESCR_END  (PSI5_AdditionsR99)
7319 
7320 static const
7321 CSN_DESCR_BEGIN(PSI5_t)
7322   M_UINT       (PSI5_t, MESSAGE_TYPE, 6, &hf_dl_message_type),
7323   M_UINT       (PSI5_t, PAGE_MODE, 2, &hf_page_mode),
7324   M_UINT       (PSI5_t, CHANGE_MARK, 2, &hf_packet_system_info_type5_change_mark),
7325   M_UINT       (PSI5_t, INDEX, 3, &hf_packet_system_info_type5_index),
7326   M_UINT       (PSI5_t, COUNT, 3, &hf_packet_system_info_type5_count),
7327 
7328   M_NEXT_EXIST (PSI5_t, Eixst_NC_Meas_Param, 1, &hf_psi5_eixst_nc_meas_param_exist),
7329   M_TYPE       (PSI5_t, NC_Meas_Param, NC_Measurement_Parameters_t),
7330 
7331   M_FIXED      (PSI5_t, 1, 0x00, &hf_psi5),
7332 
7333   M_NEXT_EXIST (PSI5_t, Exist_AdditionsR99, 1, &hf_additionsr99_exist),
7334   M_TYPE       (PSI5_t,  AdditionsR99, PSI5_AdditionsR99),
7335 
7336   M_PADDING_BITS(PSI5_t, &hf_padding),
7337 CSN_DESCR_END  (PSI5_t)
7338 /* < End Packet System Information Type 5 message content > */
7339 
7340 
7341 /* < Packet System Information Type 13 message content > */
7342 static const
7343 CSN_DESCR_BEGIN(PSI13_AdditionsR6)
7344   M_NEXT_EXIST (PSI13_AdditionsR6, Exist_LB_MS_TXPWR_MAX_CCH, 1, &hf_psi13_additions_lb_ms_txpwr_max_cch_exist),
7345   M_UINT       (PSI13_AdditionsR6,  LB_MS_TXPWR_MAX_CCH,  5, &hf_packet_system_info_type13_lb_ms_mxpwr_max_cch),
7346   M_UINT       (PSI13_AdditionsR6,  SI2n_SUPPORT,  2, &hf_packet_system_info_type13_si2n_support),
7347 CSN_DESCR_END  (PSI13_AdditionsR6)
7348 
7349 static const
7350 CSN_DESCR_BEGIN(PSI13_AdditionsR4)
7351   M_UINT       (PSI13_AdditionsR4, SI_STATUS_IND, 1, &hf_si_status_ind),
7352   M_NEXT_EXIST (PSI13_AdditionsR4, Exist_AdditionsR6, 1, &hf_psi13_additions_additionsr6_exist),
7353   M_TYPE       (PSI13_AdditionsR4,  AdditionsR6, PSI13_AdditionsR6),
7354 CSN_DESCR_END  (PSI13_AdditionsR4)
7355 
7356 static const
7357 CSN_DESCR_BEGIN(PSI13_AdditionR99)
7358   M_UINT       (PSI13_AdditionR99, SGSNR, 1, &hf_sgsnr),
7359   M_NEXT_EXIST (PSI13_AdditionR99, Exist_AdditionsR4, 1, &hf_psi13_additionr_additionsr4_exist),
7360   M_TYPE       (PSI13_AdditionR99,  AdditionsR4, PSI13_AdditionsR4),
7361 CSN_DESCR_END  (PSI13_AdditionR99)
7362 
7363 static const
7364 CSN_DESCR_BEGIN(PSI13_t)
7365   M_UINT       (PSI13_t, MESSAGE_TYPE, 6, &hf_dl_message_type),
7366   M_UINT       (PSI13_t, PAGE_MODE, 2, &hf_page_mode),
7367   M_UINT       (PSI13_t, BCCH_CHANGE_MARK, 3, &hf_bcch_change_mark),
7368   M_UINT       (PSI13_t, SI_CHANGE_FIELD, 4, &hf_si_change_field),
7369 
7370   M_NEXT_EXIST (PSI13_t, Exist_MA, 2, &hf_psi13_ma_exist),
7371   M_UINT       (PSI13_t,  SI13_CHANGE_MARK, 2, &hf_si13_change_mark),
7372   M_TYPE       (PSI13_t,  GPRS_Mobile_Allocation, GPRS_Mobile_Allocation_t),
7373 
7374   M_UNION      (PSI13_t, 2, &hf_psi13),
7375   M_TYPE       (PSI13_t, u.PBCCH_Not_present, PBCCH_Not_present_t),
7376   M_TYPE       (PSI13_t, u.PBCCH_present, PBCCH_present_t),
7377 
7378   M_NEXT_EXIST (PSI13_t, Exist_AdditionsR99, 1, &hf_additionsr99_exist),
7379   M_TYPE       (PSI13_t, AdditionsR99, PSI13_AdditionR99),
7380 
7381   M_PADDING_BITS(PSI13_t, &hf_padding),
7382 CSN_DESCR_END  (PSI13_t)
7383 /* < End Packet System Information Type 13 message content > */
7384 
7385 
7386 #if 0 /* Not used ??? */
7387 typedef const char* MT_Strings_t;
7388 
7389 static const MT_Strings_t szMT_Downlink[] = {
7390   "Invalid Message Type",                /* 0x00 */
7391   "PACKET_CELL_CHANGE_ORDER",            /* 0x01 */
7392   "PACKET_DOWNLINK_ASSIGNMENT",          /* 0x02 */
7393   "PACKET_MEASUREMENT_ORDER",            /* 0x03 */
7394   "PACKET_POLLING_REQUEST",              /* 0x04 */
7395   "PACKET_POWER_CONTROL_TIMING_ADVANCE", /* 0x05 */
7396   "PACKET_QUEUEING_NOTIFICATION",        /* 0x06 */
7397   "PACKET_TIMESLOT_RECONFIGURE",         /* 0x07 */
7398   "PACKET_TBF_RELEASE",                  /* 0x08 */
7399   "PACKET_UPLINK_ACK_NACK",              /* 0x09 */
7400   "PACKET_UPLINK_ASSIGNMENT",            /* 0x0A */
7401   "PACKET_CELL_CHANGE_CONTINUE",         /* 0x0B */
7402   "PACKET_NEIGHBOUR_CELL_DATA",          /* 0x0C */
7403   "PACKET_SERVING_CELL_DATA",            /* 0x0D */
7404   "Invalid Message Type",                /* 0x0E */
7405   "Invalid Message Type",                /* 0x0F */
7406   "Invalid Message Type",                /* 0x10 */
7407   "Invalid Message Type",                /* 0x11 */
7408   "Invalid Message Type",                /* 0x12 */
7409   "Invalid Message Type",                /* 0x13 */
7410   "Invalid Message Type",                /* 0x14 */
7411   "PACKET_HANDOVER_COMMAND",             /* 0x15 */
7412   "PACKET_PHYSICAL_INFORMATION",         /* 0x16 */
7413   "Invalid Message Type",                /* 0x17 */
7414   "Invalid Message Type",                /* 0x18 */
7415   "Invalid Message Type",                /* 0x19 */
7416   "Invalid Message Type",                /* 0x1A */
7417   "Invalid Message Type",                /* 0x1B */
7418   "Invalid Message Type",                /* 0x1C */
7419   "Invalid Message Type",                /* 0x1D */
7420   "Invalid Message Type",                /* 0x1E */
7421   "Invalid Message Type",                /* 0x1F */
7422   "Invalid Message Type",                /* 0x20 */
7423   "PACKET_ACCESS_REJECT",                /* 0x21 */
7424   "PACKET_PAGING_REQUEST",               /* 0x22 */
7425   "PACKET_PDCH_RELEASE",                 /* 0x23 */
7426   "PACKET_PRACH_PARAMETERS",             /* 0x24 */
7427   "PACKET_DOWNLINK_DUMMY_CONTROL_BLOCK", /* 0x25 */
7428   "Invalid Message Type",                /* 0x26 */
7429   "Invalid Message Type",                /* 0x27 */
7430   "Invalid Message Type",                /* 0x28 */
7431   "Invalid Message Type",                /* 0x29 */
7432   "Invalid Message Type",                /* 0x2A */
7433   "Invalid Message Type",                /* 0x2B */
7434   "Invalid Message Type",                /* 0x2C */
7435   "Invalid Message Type",                /* 0x2D */
7436   "Invalid Message Type",                /* 0x2E */
7437   "Invalid Message Type",                /* 0x2F */
7438   "PACKET_SYSTEM_INFO_6",                /* 0x30 */
7439   "PACKET_SYSTEM_INFO_1",                /* 0x31 */
7440   "PACKET_SYSTEM_INFO_2",                /* 0x32 */
7441   "PACKET_SYSTEM_INFO_3",                /* 0x33 */
7442   "PACKET_SYSTEM_INFO_3_BIS",            /* 0x34 */
7443   "PACKET_SYSTEM_INFO_4",                /* 0x35 */
7444   "PACKET_SYSTEM_INFO_5",                /* 0x36 */
7445   "PACKET_SYSTEM_INFO_13",               /* 0x37 */
7446   "PACKET_SYSTEM_INFO_7",                /* 0x38 */
7447   "PACKET_SYSTEM_INFO_8",                /* 0x39 */
7448   "PACKET_SYSTEM_INFO_14",               /* 0x3A */
7449   "Invalid Message Type",                /* 0x3B */
7450   "PACKET_SYSTEM_INFO_3_TER",            /* 0x3C */
7451   "PACKET_SYSTEM_INFO_3_QUATER",         /* 0x3D */
7452   "PACKET_SYSTEM_INFO_15"                /* 0x3E */
7453 };
7454 
7455 static const MT_Strings_t szMT_Uplink[] = {
7456   "PACKET_CELL_CHANGE_FAILURE",          /* 0x00 */
7457   "PACKET_CONTROL_ACKNOWLEDGEMENT",      /* 0x01 */
7458   "PACKET_DOWNLINK_ACK_NACK",            /* 0x02 */
7459   "PACKET_UPLINK_DUMMY_CONTROL_BLOCK",   /* 0x03 */
7460   "PACKET_MEASUREMENT_REPORT",           /* 0x04 */
7461   "PACKET_RESOURCE_REQUEST",             /* 0x05 */
7462   "PACKET_MOBILE_TBF_STATUS",            /* 0x06 */
7463   "PACKET_PSI_STATUS",                   /* 0x07 */
7464   "EGPRS_PACKET_DOWNLINK_ACK_NACK",      /* 0x08 */
7465   "PACKET_PAUSE",                        /* 0x09 */
7466   "PACKET_ENHANCED_MEASUREMENT_REPORT",  /* 0x0A */
7467   "ADDITIONAL_MS_RAC",                   /* 0x0B */
7468   "PACKET_CELL_CHANGE_NOTIFICATION",     /* 0x0C */
7469   "PACKET_SI_STATUS",                    /* 0x0D */
7470 };
7471 
7472 static const char*
7473 MT_DL_TextGet(guint8 mt)
7474 {
7475   if (mt < ElementsOf(szMT_Downlink))
7476   {
7477     return(szMT_Downlink[mt]);
7478   }
7479   else
7480   {
7481     return("Unknown message type");
7482   }
7483 }
7484 
7485 static const char*
7486 MT_UL_TextGet(guint8 mt)
7487 {
7488   if (mt < ElementsOf(szMT_Uplink))
7489   {
7490     return(szMT_Uplink[mt]);
7491   }
7492   else
7493   {
7494     return("Unknown message type");
7495   }
7496 }
7497 
7498 #endif
7499 
7500 /* SI1_RestOctet_t */
7501 
7502 #if 0
7503 static const
7504 CSN_DESCR_BEGIN  (SI1_RestOctet_t)
7505   M_NEXT_EXIST_LH(SI1_RestOctet_t, Exist_NCH_Position, 1),
7506   M_UINT         (SI1_RestOctet_t,  NCH_Position,  5, &hf_si1_restoctet_nch_position),
7507 
7508   M_UINT_LH      (SI1_RestOctet_t,  BandIndicator,  1, &hf_si1_restoctet_bandindicator),
7509 CSN_DESCR_END    (SI1_RestOctet_t)
7510 #endif
7511 
7512 /* SI3_Rest_Octet_t */
7513 #if 0
7514 static const
7515 CSN_DESCR_BEGIN(Selection_Parameters_t)
7516   M_UINT       (Selection_Parameters_t,  CBQ,  1, &hf_selection_parameters_cbq),
7517   M_UINT       (Selection_Parameters_t,  CELL_RESELECT_OFFSET,  6, &hf_selection_parameters_cell_reselect_offset),
7518   M_UINT       (Selection_Parameters_t,  TEMPORARY_OFFSET,  3, &hf_selection_parameters_temporary_offset),
7519   M_UINT       (Selection_Parameters_t,  PENALTY_TIME,  5, &hf_selection_parameters_penalty_time),
7520 CSN_DESCR_END  (Selection_Parameters_t)
7521 
7522 static const
7523 CSN_DESCR_BEGIN  (SI3_Rest_Octet_t)
7524   M_NEXT_EXIST_LH(SI3_Rest_Octet_t, Exist_Selection_Parameters, 1),
7525   M_TYPE         (SI3_Rest_Octet_t, Selection_Parameters, Selection_Parameters_t),
7526 
7527   M_NEXT_EXIST_LH(SI3_Rest_Octet_t, Exist_Power_Offset, 1),
7528   M_UINT         (SI3_Rest_Octet_t,  Power_Offset,  2, &hf_si3_rest_octet_power_offset),
7529 
7530   M_UINT_LH      (SI3_Rest_Octet_t,  System_Information_2ter_Indicator,  1, &hf_si3_rest_octet_system_information_2ter_indicator),
7531   M_UINT_LH      (SI3_Rest_Octet_t,  Early_Classmark_Sending_Control,  1, &hf_si3_rest_octet_early_classmark_sending_control),
7532 
7533   M_NEXT_EXIST_LH(SI3_Rest_Octet_t, Exist_WHERE, 1),
7534   M_UINT         (SI3_Rest_Octet_t,  WHERE,  3, &hf_si3_rest_octet_where),
7535 
7536   M_NEXT_EXIST_LH(SI3_Rest_Octet_t, Exist_GPRS_Indicator, 2),
7537   M_UINT         (SI3_Rest_Octet_t,  RA_COLOUR,  3, &hf_si3_rest_octet_ra_colour),
7538   M_UINT         (SI3_Rest_Octet_t,  SI13_POSITION, 1, &hf_si13_position),
7539 
7540   M_UINT_LH      (SI3_Rest_Octet_t,  ECS_Restriction3G,  1, &hf_si3_rest_octet_ecs_restriction3g),
7541 
7542   M_NEXT_EXIST_LH(SI3_Rest_Octet_t, ExistSI2quaterIndicator, 1),
7543   M_UINT         (SI3_Rest_Octet_t,  SI2quaterIndicator,  1, &hf_si3_rest_octet_si2quaterindicator),
7544 CSN_DESCR_END    (SI3_Rest_Octet_t)
7545 #endif
7546 
7547 #if 0
7548 static const
7549 CSN_DESCR_BEGIN  (SI4_Rest_Octet_t)
7550   M_NEXT_EXIST_LH(SI4_Rest_Octet_t, Exist_Selection_Parameters, 1),
7551   M_TYPE         (SI4_Rest_Octet_t, Selection_Parameters, Selection_Parameters_t),
7552 
7553   M_NEXT_EXIST_LH(SI4_Rest_Octet_t, Exist_Power_Offset, 1),
7554   M_UINT         (SI4_Rest_Octet_t,  Power_Offset,  2, &hf_si4_rest_octet_power_offset),
7555 
7556   M_NEXT_EXIST_LH(SI4_Rest_Octet_t, Exist_GPRS_Indicator, 2),
7557   M_UINT         (SI4_Rest_Octet_t,  RA_COLOUR,  3, &hf_si4_rest_octet_ra_colour),
7558   M_UINT         (SI4_Rest_Octet_t,  SI13_POSITION, 1, &hf_si13_position),
7559 CSN_DESCR_END    (SI4_Rest_Octet_t)
7560 #endif
7561 
7562 /* SI6_RestOctet_t */
7563 
7564 #if 0
7565 static const
7566 CSN_DESCR_BEGIN(PCH_and_NCH_Info_t)
7567   M_UINT       (PCH_and_NCH_Info_t,  PagingChannelRestructuring,  1, &hf_pch_and_nch_info_pagingchannelrestructuring),
7568   M_UINT       (PCH_and_NCH_Info_t,  NLN_SACCH,  2, &hf_pch_and_nch_info_nln_sacch),
7569 
7570   M_NEXT_EXIST (PCH_and_NCH_Info_t, Exist_CallPriority, 1),
7571   M_UINT       (PCH_and_NCH_Info_t,  CallPriority,  3, &hf_pch_and_nch_info_callpriority),
7572 
7573   M_UINT       (PCH_and_NCH_Info_t, NLN_Status, 1, &hf_nln_status),
7574 CSN_DESCR_END  (PCH_and_NCH_Info_t)
7575 
7576 static const
7577 CSN_DESCR_BEGIN  (SI6_RestOctet_t)
7578   M_NEXT_EXIST_LH(SI6_RestOctet_t, Exist_PCH_and_NCH_Info, 1),
7579   M_TYPE         (SI6_RestOctet_t, PCH_and_NCH_Info, PCH_and_NCH_Info_t),
7580 
7581   M_NEXT_EXIST_LH(SI6_RestOctet_t, Exist_VBS_VGCS_Options, 1),
7582   M_UINT         (SI6_RestOctet_t,  VBS_VGCS_Options,  2, &hf_si6_restoctet_vbs_vgcs_options),
7583 
7584   M_NEXT_EXIST_LH(SI6_RestOctet_t, Exist_DTM_Support, 2),
7585   M_UINT         (SI6_RestOctet_t,  RAC, 8, &hf_rac),
7586   M_UINT         (SI6_RestOctet_t,  MAX_LAPDm, 3, &hf_si6_restoctet_max_lapdm),
7587 
7588   M_UINT_LH      (SI6_RestOctet_t,  BandIndicator, 1, &hf_si6_restoctet_bandindicator),
7589 CSN_DESCR_END    (SI6_RestOctet_t)
7590 #endif
7591 
7592 CSN_DESCR_BEGIN  (UL_Data_Mac_Header_t)
7593   M_UINT         (UL_Data_Mac_Header_t,  Payload_Type, 2, &hf_ul_payload_type),
7594   M_UINT         (UL_Data_Mac_Header_t,  Countdown_Value, 4, &hf_countdown_value),
7595   M_UINT         (UL_Data_Mac_Header_t,  SI, 1, &hf_ul_data_si),
7596   M_UINT         (UL_Data_Mac_Header_t,  R, 1, &hf_ul_retry),
7597 CSN_DESCR_END    (UL_Data_Mac_Header_t)
7598 
7599 CSN_DESCR_BEGIN  (UL_Data_Block_GPRS_t)
7600   M_TYPE         (UL_Data_Block_GPRS_t, UL_Data_Mac_Header, UL_Data_Mac_Header_t),
7601   M_UINT         (UL_Data_Block_GPRS_t, Spare, 1, &hf_ul_data_spare),
7602   M_UINT         (UL_Data_Block_GPRS_t, PI, 1, &hf_pi),
7603   M_UINT         (UL_Data_Block_GPRS_t, TFI, 5, &hf_uplink_tfi),
7604   M_UINT         (UL_Data_Block_GPRS_t, TI, 1, &hf_ti),
7605   M_UINT         (UL_Data_Block_GPRS_t, BSN, 7, &hf_bsn),
7606   M_UINT         (UL_Data_Block_GPRS_t, E, 1, &hf_e),
7607 CSN_DESCR_END    (UL_Data_Block_GPRS_t)
7608 
7609 CSN_DESCR_BEGIN  (UL_Data_Block_EGPRS_Header_Type1_t)
7610   M_SPLIT_BITS   (UL_Data_Block_EGPRS_Header_Type1_t, TFI, bits_spec_ul_tfi, 5, &hf_uplink_tfi),
7611   M_BITS_CRUMB   (UL_Data_Block_EGPRS_Header_Type1_t, TFI, bits_spec_ul_tfi, 1, &hf_uplink_tfi),
7612   M_UINT         (UL_Data_Block_EGPRS_Header_Type1_t, Countdown_Value, 4, &hf_countdown_value),
7613   M_UINT         (UL_Data_Block_EGPRS_Header_Type1_t, SI, 1, &hf_ul_data_si),
7614   M_UINT         (UL_Data_Block_EGPRS_Header_Type1_t, R, 1, &hf_ul_retry),
7615   M_SPLIT_BITS   (UL_Data_Block_EGPRS_Header_Type1_t, BSN1, bits_spec_ul_bsn1, 11, &hf_bsn),
7616   M_BITS_CRUMB   (UL_Data_Block_EGPRS_Header_Type1_t, BSN1, bits_spec_ul_bsn1, 1, &hf_bsn),
7617   M_BITS_CRUMB   (UL_Data_Block_EGPRS_Header_Type1_t, TFI, bits_spec_ul_tfi, 0, &hf_uplink_tfi),
7618   M_SPLIT_BITS   (UL_Data_Block_EGPRS_Header_Type1_t, BSN2_offset, bits_spec_ul_bsn2, 10, &hf_bsn2_offset),
7619   M_BITS_CRUMB   (UL_Data_Block_EGPRS_Header_Type1_t, BSN2_offset, bits_spec_ul_bsn2, 1, &hf_bsn2_offset),
7620   M_BITS_CRUMB   (UL_Data_Block_EGPRS_Header_Type1_t, BSN1, bits_spec_ul_bsn1, 0, &hf_bsn),
7621   M_BITS_CRUMB   (UL_Data_Block_EGPRS_Header_Type1_t, BSN2_offset, bits_spec_ul_bsn2, 0, &hf_bsn2_offset),
7622   M_UINT         (UL_Data_Block_EGPRS_Header_Type1_t, SPARE1, 1, &hf_ul_data_spare),
7623   M_UINT         (UL_Data_Block_EGPRS_Header_Type1_t, PI, 1, &hf_pi),
7624   M_UINT         (UL_Data_Block_EGPRS_Header_Type1_t, RSB, 1, &hf_rsb),
7625   M_UINT         (UL_Data_Block_EGPRS_Header_Type1_t, CPS, 5, &hf_cps1),
7626   M_NULL         (UL_Data_Block_EGPRS_Header_Type1_t, dummy, 2),
7627   M_UINT         (UL_Data_Block_EGPRS_Header_Type1_t, SPARE2, 6, &hf_ul_data_spare),
7628 CSN_DESCR_END    (UL_Data_Block_EGPRS_Header_Type1_t)
7629 
7630 CSN_DESCR_BEGIN  (UL_Data_Block_EGPRS_Header_Type2_t)
7631   M_SPLIT_BITS   (UL_Data_Block_EGPRS_Header_Type2_t, TFI, bits_spec_ul_tfi, 5, &hf_uplink_tfi),
7632   M_BITS_CRUMB   (UL_Data_Block_EGPRS_Header_Type2_t, TFI, bits_spec_ul_tfi, 1, &hf_uplink_tfi),
7633   M_UINT         (UL_Data_Block_EGPRS_Header_Type2_t, Countdown_Value, 4, &hf_countdown_value),
7634   M_UINT         (UL_Data_Block_EGPRS_Header_Type2_t, SI, 1, &hf_ul_data_si),
7635   M_UINT         (UL_Data_Block_EGPRS_Header_Type2_t, R, 1, &hf_ul_retry),
7636   M_SPLIT_BITS   (UL_Data_Block_EGPRS_Header_Type2_t, BSN1, bits_spec_ul_bsn1, 11, &hf_bsn),
7637   M_BITS_CRUMB   (UL_Data_Block_EGPRS_Header_Type2_t, BSN1, bits_spec_ul_bsn1, 1, &hf_bsn),
7638   M_BITS_CRUMB   (UL_Data_Block_EGPRS_Header_Type2_t, TFI, bits_spec_ul_tfi, 0, &hf_uplink_tfi),
7639   M_SPLIT_BITS   (UL_Data_Block_EGPRS_Header_Type2_t, CPS, bits_spec_ul_type2_cps, 5, &hf_cps2),
7640   M_BITS_CRUMB   (UL_Data_Block_EGPRS_Header_Type2_t, CPS, bits_spec_ul_type2_cps, 1, &hf_cps2),
7641   M_BITS_CRUMB   (UL_Data_Block_EGPRS_Header_Type2_t, BSN1, bits_spec_ul_bsn1, 0, &hf_bsn),
7642   M_UINT         (UL_Data_Block_EGPRS_Header_Type2_t, SPARE1, 5, &hf_ul_data_spare),
7643   M_UINT         (UL_Data_Block_EGPRS_Header_Type2_t, PI, 1, &hf_pi),
7644   M_UINT         (UL_Data_Block_EGPRS_Header_Type2_t, RSB, 1, &hf_rsb),
7645   M_BITS_CRUMB   (UL_Data_Block_EGPRS_Header_Type2_t, CPS, bits_spec_ul_type2_cps, 0, &hf_cps2),
7646   M_NULL         (UL_Data_Block_EGPRS_Header_Type1_t, dummy, 3),
7647   M_UINT         (UL_Data_Block_EGPRS_Header_Type2_t, SPARE2, 5, &hf_ul_data_spare),
7648 CSN_DESCR_END    (UL_Data_Block_EGPRS_Header_Type2_t)
7649 
7650 CSN_DESCR_BEGIN  (UL_Data_Block_EGPRS_Header_Type3_t)
7651   M_SPLIT_BITS   (UL_Data_Block_EGPRS_Header_Type3_t, TFI, bits_spec_ul_tfi, 5, &hf_uplink_tfi),
7652   M_BITS_CRUMB   (UL_Data_Block_EGPRS_Header_Type3_t, TFI, bits_spec_ul_tfi, 1, &hf_uplink_tfi),
7653   M_UINT         (UL_Data_Block_EGPRS_Header_Type3_t, Countdown_Value, 4, &hf_countdown_value),
7654   M_UINT         (UL_Data_Block_EGPRS_Header_Type3_t, SI, 1, &hf_ul_data_si),
7655   M_UINT         (UL_Data_Block_EGPRS_Header_Type3_t, R, 1, &hf_ul_retry),
7656   M_SPLIT_BITS   (UL_Data_Block_EGPRS_Header_Type3_t, BSN1, bits_spec_ul_bsn1, 11, &hf_bsn),
7657   M_BITS_CRUMB   (UL_Data_Block_EGPRS_Header_Type3_t, BSN1, bits_spec_ul_bsn1, 1, &hf_bsn),
7658   M_BITS_CRUMB   (UL_Data_Block_EGPRS_Header_Type3_t, TFI, bits_spec_ul_tfi, 0, &hf_uplink_tfi),
7659   M_SPLIT_BITS   (UL_Data_Block_EGPRS_Header_Type3_t, CPS, bits_spec_ul_type3_cps, 4, &hf_cps3),
7660   M_BITS_CRUMB   (UL_Data_Block_EGPRS_Header_Type3_t, CPS, bits_spec_ul_type3_cps, 1, &hf_cps3),
7661   M_BITS_CRUMB   (UL_Data_Block_EGPRS_Header_Type3_t, BSN1, bits_spec_ul_bsn1, 0, &hf_bsn),
7662   M_NULL         (UL_Data_Block_EGPRS_Header_Type1_t, dummy, 1),
7663   M_UINT         (UL_Data_Block_EGPRS_Header_Type3_t, SPARE1, 1, &hf_ul_data_spare),
7664   M_UINT         (UL_Data_Block_EGPRS_Header_Type3_t, PI, 1, &hf_pi),
7665   M_UINT         (UL_Data_Block_EGPRS_Header_Type3_t, RSB, 1, &hf_rsb),
7666   M_UINT         (UL_Data_Block_EGPRS_Header_Type3_t, SPB, 2, &hf_ul_spb),
7667   M_BITS_CRUMB   (UL_Data_Block_EGPRS_Header_Type3_t, CPS, bits_spec_ul_type3_cps, 0, &hf_cps3),
7668 CSN_DESCR_END    (UL_Data_Block_EGPRS_Header_Type3_t)
7669 
7670 CSN_DESCR_BEGIN  (UL_Data_Block_EC_EGPRS_Header_Type3_t)
7671   M_SPLIT_BITS   (UL_Data_Block_EC_EGPRS_Header_Type3_t, TFI, bits_spec_ul_tfi, 5, &hf_uplink_tfi),
7672   M_BITS_CRUMB   (UL_Data_Block_EC_EGPRS_Header_Type3_t, TFI, bits_spec_ul_tfi, 1, &hf_uplink_tfi),
7673   M_UINT         (UL_Data_Block_EC_EGPRS_Header_Type3_t, Countdown_Value, 4, &hf_countdown_value),
7674   M_UINT         (UL_Data_Block_EC_EGPRS_Header_Type3_t, FOI, 1, &hf_ul_foi),
7675   M_UINT         (UL_Data_Block_EC_EGPRS_Header_Type3_t, RI, 1, &hf_ul_ri),
7676   M_UINT         (UL_Data_Block_EC_EGPRS_Header_Type3_t, BSN1, 5, &hf_bsn),
7677   M_BITS_CRUMB   (UL_Data_Block_EC_EGPRS_Header_Type3_t, TFI, bits_spec_ul_tfi, 0, &hf_uplink_tfi),
7678   M_SPLIT_BITS   (UL_Data_Block_EC_EGPRS_Header_Type3_t, DL_CC_EST, bits_spec_ul_ec_type3_dl_cc_est, 4, &hf_ec_dl_cc_est),
7679   M_BITS_CRUMB   (UL_Data_Block_EC_EGPRS_Header_Type3_t, DL_CC_EST, bits_spec_ul_ec_type3_dl_cc_est, 1, &hf_ec_dl_cc_est),
7680   M_UINT         (UL_Data_Block_EC_EGPRS_Header_Type3_t, SPB, 2, &hf_ul_spb),
7681   M_UINT         (UL_Data_Block_EC_EGPRS_Header_Type3_t, CPS, 3, &hf_ec_cps3),
7682   M_NULL         (UL_Data_Block_EGPRS_Header_Type1_t,    dummy, 1),
7683   M_UINT         (UL_Data_Block_EC_EGPRS_Header_Type3_t, SPARE1, 2, &hf_ul_data_spare),
7684   M_UINT         (UL_Data_Block_EC_EGPRS_Header_Type3_t, RTLLI, 4, &hf_rtlli),
7685   M_BITS_CRUMB   (UL_Data_Block_EC_EGPRS_Header_Type3_t, DL_CC_EST, bits_spec_ul_ec_type3_dl_cc_est, 0, &hf_ec_dl_cc_est),
7686 CSN_DESCR_END    (UL_Data_Block_EC_EGPRS_Header_Type3_t)
7687 
7688 CSN_DESCR_BEGIN  (UL_Packet_Control_Ack_11_t)
7689   M_UINT         (UL_Packet_Control_Ack_11_t,  MESSAGE_TYPE, 9, &hf_prach11_message_type_9),
7690   M_UINT         (UL_Packet_Control_Ack_11_t,  CTRL_ACK, 2, &hf_packet_control_acknowledgement_ctrl_ack),
7691 CSN_DESCR_END    (UL_Packet_Control_Ack_11_t)
7692 
7693 CSN_DESCR_BEGIN  (UL_Packet_Control_Ack_TN_RRBP_11_t)
7694   M_UINT         (UL_Packet_Control_Ack_TN_RRBP_11_t,  MESSAGE_TYPE, 6, &hf_prach11_message_type_6),
7695   M_UINT         (UL_Packet_Control_Ack_TN_RRBP_11_t,  TN_RRBP, 3, &hf_packet_control_acknowledgement_additionsr5_tn_rrbp),
7696   M_UINT         (UL_Packet_Control_Ack_TN_RRBP_11_t,  CTRL_ACK, 2, &hf_packet_control_acknowledgement_ctrl_ack),
7697 CSN_DESCR_END    (UL_Packet_Control_Ack_TN_RRBP_11_t)
7698 
7699 CSN_DESCR_BEGIN  (UL_Packet_Control_Ack_8_t)
7700   M_UINT         (UL_Packet_Control_Ack_8_t,  MESSAGE_TYPE, 6, &hf_prach8_message_type_6),
7701   M_UINT         (UL_Packet_Control_Ack_8_t,  CTRL_ACK, 2, &hf_packet_control_acknowledgement_ctrl_ack),
7702 CSN_DESCR_END    (UL_Packet_Control_Ack_8_t)
7703 
7704 CSN_DESCR_BEGIN  (UL_Packet_Control_Ack_TN_RRBP_8_t)
7705   M_UINT         (UL_Packet_Control_Ack_TN_RRBP_8_t,  MESSAGE_TYPE, 3, &hf_prach8_message_type_3),
7706   M_UINT         (UL_Packet_Control_Ack_TN_RRBP_8_t,  TN_RRBP, 3, &hf_packet_control_acknowledgement_additionsr5_tn_rrbp),
7707   M_UINT         (UL_Packet_Control_Ack_TN_RRBP_8_t,  CTRL_ACK, 2, &hf_packet_control_acknowledgement_ctrl_ack),
7708 CSN_DESCR_END    (UL_Packet_Control_Ack_TN_RRBP_8_t)
7709 
7710 CSN_DESCR_BEGIN  (DL_Data_Mac_Header_t)
7711   M_UINT         (DL_Data_Mac_Header_t, Payload_Type, 2, &hf_dl_payload_type),
7712   M_UINT         (DL_Data_Mac_Header_t,  RRBP,  2, &hf_rrbp),
7713   M_UINT         (DL_Data_Mac_Header_t,  S_P,  1, &hf_s_p),
7714   M_UINT         (DL_Data_Mac_Header_t,  USF,  3, &hf_usf),
7715 CSN_DESCR_END    (DL_Data_Mac_Header_t)
7716 
7717 
7718 CSN_DESCR_BEGIN  (DL_Data_Block_GPRS_t)
7719   M_TYPE         (DL_Data_Block_GPRS_t, DL_Data_Mac_Header, DL_Data_Mac_Header_t),
7720   M_UINT         (DL_Data_Block_GPRS_t, Power_Reduction, 2, &hf_dl_ctrl_pr),
7721   M_UINT         (DL_Data_Block_GPRS_t, TFI, 5, &hf_downlink_tfi),
7722   M_UINT         (DL_Data_Block_GPRS_t, FBI, 1, &hf_fbi),
7723   M_UINT         (DL_Data_Block_GPRS_t, BSN, 7, &hf_bsn),
7724   M_UINT         (DL_Data_Block_GPRS_t, E, 1, &hf_e),
7725 CSN_DESCR_END    (DL_Data_Block_GPRS_t)
7726 
7727 CSN_DESCR_BEGIN  (DL_Data_Block_EGPRS_Header_Type1_t)
7728   M_SPLIT_BITS   (DL_Data_Block_EGPRS_Header_Type1_t, TFI, bits_spec_dl_tfi, 5, &hf_downlink_tfi),
7729   M_BITS_CRUMB   (DL_Data_Block_EGPRS_Header_Type1_t, TFI, bits_spec_dl_tfi, 1, &hf_downlink_tfi),
7730   M_UINT         (DL_Data_Block_EGPRS_Header_Type1_t, RRBP, 2, &hf_rrbp),
7731   M_UINT         (DL_Data_Block_EGPRS_Header_Type1_t, ES_P, 2, &hf_es_p),
7732   M_UINT         (DL_Data_Block_EGPRS_Header_Type1_t, USF, 3, &hf_usf),
7733   M_SPLIT_BITS   (DL_Data_Block_EGPRS_Header_Type1_t, BSN1, bits_spec_dl_type1_bsn1, 11, &hf_bsn),
7734   M_BITS_CRUMB   (DL_Data_Block_EGPRS_Header_Type1_t, BSN1, bits_spec_dl_type1_bsn1, 2, &hf_bsn),
7735   M_UINT         (DL_Data_Block_EGPRS_Header_Type1_t, Power_Reduction, 2, &hf_dl_ctrl_pr),
7736   M_BITS_CRUMB   (DL_Data_Block_EGPRS_Header_Type1_t, TFI, bits_spec_dl_tfi, 0, &hf_downlink_tfi),
7737   M_BITS_CRUMB   (DL_Data_Block_EGPRS_Header_Type1_t, BSN1, bits_spec_dl_type1_bsn1, 1, &hf_bsn),
7738   M_SPLIT_BITS   (DL_Data_Block_EGPRS_Header_Type1_t, BSN2_offset, bits_spec_dl_type1_bsn2, 11, &hf_bsn2_offset),
7739   M_BITS_CRUMB   (DL_Data_Block_EGPRS_Header_Type1_t, BSN2_offset, bits_spec_dl_type1_bsn2, 1, &hf_bsn2_offset),
7740   M_BITS_CRUMB   (DL_Data_Block_EGPRS_Header_Type1_t, BSN1, bits_spec_dl_type1_bsn1, 0, &hf_bsn),
7741   M_UINT         (DL_Data_Block_EGPRS_Header_Type1_t, CPS, 5, &hf_cps1),
7742   M_BITS_CRUMB   (DL_Data_Block_EGPRS_Header_Type1_t, BSN2_offset, bits_spec_dl_type1_bsn2, 0, &hf_bsn2_offset),
7743 CSN_DESCR_END    (DL_Data_Block_EGPRS_Header_Type1_t)
7744 
7745 CSN_DESCR_BEGIN  (DL_Data_Block_EGPRS_Header_Type2_t)
7746   M_SPLIT_BITS   (DL_Data_Block_EGPRS_Header_Type2_t, TFI, bits_spec_dl_tfi, 5, &hf_downlink_tfi),
7747   M_BITS_CRUMB   (DL_Data_Block_EGPRS_Header_Type2_t, TFI, bits_spec_dl_tfi, 1, &hf_downlink_tfi),
7748   M_UINT         (DL_Data_Block_EGPRS_Header_Type2_t, RRBP, 2, &hf_rrbp),
7749   M_UINT         (DL_Data_Block_EGPRS_Header_Type2_t, ES_P, 2, &hf_es_p),
7750   M_UINT         (DL_Data_Block_EGPRS_Header_Type2_t, USF, 3, &hf_usf),
7751   M_SPLIT_BITS   (DL_Data_Block_EGPRS_Header_Type2_t, BSN1, bits_spec_dl_type2_bsn, 11, &hf_bsn),
7752   M_BITS_CRUMB   (DL_Data_Block_EGPRS_Header_Type2_t, BSN1, bits_spec_dl_type2_bsn, 2, &hf_bsn),
7753   M_UINT         (DL_Data_Block_EGPRS_Header_Type2_t, Power_Reduction, 2, &hf_dl_ctrl_pr),
7754   M_BITS_CRUMB   (DL_Data_Block_EGPRS_Header_Type2_t, TFI, bits_spec_dl_tfi, 0, &hf_downlink_tfi),
7755   M_BITS_CRUMB   (DL_Data_Block_EGPRS_Header_Type2_t, BSN1, bits_spec_dl_type2_bsn, 1, &hf_bsn),
7756   M_NULL         (UL_Data_Block_EGPRS_Header_Type1_t, dummy, 4),
7757   M_UINT         (DL_Data_Block_EGPRS_Header_Type2_t, CPS, 3, &hf_cps2),
7758   M_BITS_CRUMB   (DL_Data_Block_EGPRS_Header_Type2_t, BSN1, bits_spec_dl_type2_bsn, 0, &hf_bsn),
7759 CSN_DESCR_END    (DL_Data_Block_EGPRS_Header_Type2_t)
7760 
7761 CSN_DESCR_BEGIN  (DL_Data_Block_EGPRS_Header_Type3_t)
7762   M_SPLIT_BITS   (DL_Data_Block_EGPRS_Header_Type3_t, TFI, bits_spec_dl_tfi, 5, &hf_downlink_tfi),
7763   M_BITS_CRUMB   (DL_Data_Block_EGPRS_Header_Type3_t, TFI, bits_spec_dl_tfi, 1, &hf_downlink_tfi),
7764   M_UINT         (DL_Data_Block_EGPRS_Header_Type3_t, RRBP, 2, &hf_rrbp),
7765   M_UINT         (DL_Data_Block_EGPRS_Header_Type3_t, ES_P, 2, &hf_es_p),
7766   M_UINT         (DL_Data_Block_EGPRS_Header_Type3_t, USF, 3, &hf_usf),
7767   M_SPLIT_BITS   (DL_Data_Block_EGPRS_Header_Type3_t, BSN1, bits_spec_dl_type3_bsn, 11, &hf_bsn),
7768   M_BITS_CRUMB   (DL_Data_Block_EGPRS_Header_Type3_t, BSN1, bits_spec_dl_type3_bsn, 2, &hf_bsn),
7769   M_UINT         (DL_Data_Block_EGPRS_Header_Type3_t, Power_Reduction, 2, &hf_dl_ctrl_pr),
7770   M_BITS_CRUMB   (DL_Data_Block_EGPRS_Header_Type3_t, TFI, bits_spec_dl_tfi, 0, &hf_downlink_tfi),
7771   M_BITS_CRUMB   (DL_Data_Block_EGPRS_Header_Type3_t, BSN1, bits_spec_dl_type3_bsn, 1, &hf_bsn),
7772   M_NULL         (UL_Data_Block_EGPRS_Header_Type1_t, dummy, 1),
7773   M_UINT         (DL_Data_Block_EGPRS_Header_Type3_t, SPB, 2, &hf_dl_spb),
7774   M_UINT         (DL_Data_Block_EGPRS_Header_Type3_t, CPS, 4, &hf_cps3),
7775   M_BITS_CRUMB   (DL_Data_Block_EGPRS_Header_Type3_t, BSN1, bits_spec_dl_type3_bsn, 0, &hf_bsn),
7776 CSN_DESCR_END    (DL_Data_Block_EGPRS_Header_Type3_t)
7777 
7778 CSN_DESCR_BEGIN  (DL_Data_Block_EC_EGPRS_Header_Type3_t)
7779   M_SPLIT_BITS   (DL_Data_Block_EC_EGPRS_Header_Type3_t, TFI, bits_spec_dl_tfi, 5, &hf_downlink_tfi),
7780   M_BITS_CRUMB   (DL_Data_Block_EC_EGPRS_Header_Type3_t, TFI, bits_spec_dl_tfi, 1, &hf_downlink_tfi),
7781   M_UINT         (DL_Data_Block_EC_EGPRS_Header_Type3_t, SPARE1, 1, &hf_dl_data_spare),
7782   M_SPLIT_BITS   (DL_Data_Block_EC_EGPRS_Header_Type3_t, RRBP, bits_spec_dl_ec_type3_rrbp, 3, &hf_rrbp),
7783   M_BITS_CRUMB   (DL_Data_Block_EC_EGPRS_Header_Type3_t, RRBP, bits_spec_dl_ec_type3_rrbp, 1, &hf_rrbp),
7784   M_UINT         (DL_Data_Block_EC_EGPRS_Header_Type3_t, ECS_P, 2, &hf_ecs_p),
7785   M_UINT         (DL_Data_Block_EC_EGPRS_Header_Type3_t, USF, 3, &hf_usf),
7786   M_SPLIT_BITS   (DL_Data_Block_EC_EGPRS_Header_Type3_t, BSN1, bits_spec_dl_ec_type3_bsn, 5, &hf_bsn),
7787   M_BITS_CRUMB   (DL_Data_Block_EC_EGPRS_Header_Type3_t, BSN1, bits_spec_dl_ec_type3_bsn, 1, &hf_bsn),
7788   M_UINT         (DL_Data_Block_EC_EGPRS_Header_Type3_t, Power_Reduction, 2, &hf_dl_ctrl_pr),
7789   M_BITS_CRUMB   (DL_Data_Block_EC_EGPRS_Header_Type3_t, TFI, bits_spec_dl_tfi, 0, &hf_downlink_tfi),
7790   M_UINT         (DL_Data_Block_EC_EGPRS_Header_Type3_t, SPARE2, 1, &hf_dl_data_spare),
7791   M_UINT         (DL_Data_Block_EC_EGPRS_Header_Type3_t, CC, 2, &hf_cc),
7792   M_UINT         (DL_Data_Block_EC_EGPRS_Header_Type3_t, SPB, 2, &hf_dl_spb),
7793   M_BITS_CRUMB   (DL_Data_Block_EC_EGPRS_Header_Type3_t, BSN1, bits_spec_dl_ec_type3_bsn, 0, &hf_bsn),
7794   M_NULL         (UL_Data_Block_EGPRS_Header_Type1_t,    dummy, 1),
7795   M_UINT         (DL_Data_Block_EC_EGPRS_Header_Type3_t, SPARE3, 2, &hf_dl_data_spare),
7796   M_BITS_CRUMB   (DL_Data_Block_EC_EGPRS_Header_Type3_t, RRBP, bits_spec_dl_ec_type3_rrbp, 0, &hf_rrbp),
7797   M_UINT         (DL_Data_Block_EC_EGPRS_Header_Type3_t, CPS, 3, &hf_ec_cps3),
7798 CSN_DESCR_END    (DL_Data_Block_EC_EGPRS_Header_Type3_t)
7799 
7800 static const value_string dl_rlc_message_type_vals[] = {
7801   /* {0x00,  "Invalid Message Type"},                  */
7802   {0x01, "PACKET_CELL_CHANGE_ORDER"},
7803   {0x02, "PACKET_DOWNLINK_ASSIGNMENT"},
7804   {0x03, "PACKET_MEASUREMENT_ORDER"},
7805   {0x04, "PACKET_POLLING_REQUEST"},
7806   {0x05, "PACKET_POWER_CONTROL_TIMING_ADVANCE"},
7807   {0x06, "PACKET_QUEUEING_NOTIFICATION"},
7808   {0x07, "PACKET_TIMESLOT_RECONFIGURE"},
7809   {0x08, "PACKET_TBF_RELEASE"},
7810   {0x09, "PACKET_UPLINK_ACK_NACK"},
7811   {0x0A, "PACKET_UPLINK_ASSIGNMENT"},
7812   {0x0B, "PACKET_CELL_CHANGE_CONTINUE"},
7813   {0x0C, "PACKET_NEIGHBOUR_CELL_DATA"},
7814   {0x0D, "PACKET_SERVING_CELL_DATA"},
7815   {0x0E, "Invalid Message Type"},
7816   {0x0F, "Invalid Message Type"},
7817   {0x10, "Invalid Message Type"},
7818   {0x11, "Invalid Message Type"},
7819   {0x12, "Invalid Message Type"},
7820   {0x13, "Invalid Message Type"},
7821   {0x14, "Invalid Message Type"},
7822   {0x15, "PACKET_HANDOVER_COMMAND"},
7823   {0x16, "PACKET_PHYSICAL_INFORMATION"},
7824   {0x17, "Invalid Message Type"},
7825   {0x18, "Invalid Message Type"},
7826   {0x19, "Invalid Message Type"},
7827   {0x1A, "Invalid Message Type"},
7828   {0x1B, "Invalid Message Type"},
7829   {0x1C, "Invalid Message Type"},
7830   {0x1D, "Invalid Message Type"},
7831   {0x1E, "Invalid Message Type"},
7832   {0x1F, "Invalid Message Type"},
7833   {0x20, "Invalid Message Type"},
7834   {0x21, "PACKET_ACCESS_REJECT"},
7835   {0x22, "PACKET_PAGING_REQUEST"},
7836   {0x23, "PACKET_PDCH_RELEASE"},
7837   {0x24, "PACKET_PRACH_PARAMETERS"},
7838   {0x25, "PACKET_DOWNLINK_DUMMY_CONTROL_BLOCK"},
7839   {0x26, "Invalid Message Type"},
7840   {0x27, "Invalid Message Type"},
7841   {0x28, "Invalid Message Type"},
7842   {0x29, "Invalid Message Type"},
7843   {0x2A, "Invalid Message Type"},
7844   {0x2B, "Invalid Message Type"},
7845   {0x2C, "Invalid Message Type"},
7846   {0x2D, "Invalid Message Type"},
7847   {0x2E, "Invalid Message Type"},
7848   {0x2F, "Invalid Message Type"},
7849   {0x30, "PACKET_SYSTEM_INFO_6"},
7850   {0x31, "PACKET_SYSTEM_INFO_1"},
7851   {0x32, "PACKET_SYSTEM_INFO_2"},
7852   {0x33, "PACKET_SYSTEM_INFO_3"},
7853   {0x34, "PACKET_SYSTEM_INFO_3_BIS"},
7854   {0x35, "PACKET_SYSTEM_INFO_4"},
7855   {0x36, "PACKET_SYSTEM_INFO_5"},
7856   {0x37, "PACKET_SYSTEM_INFO_13"},
7857   {0x38, "PACKET_SYSTEM_INFO_7"},
7858   {0x39, "PACKET_SYSTEM_INFO_8"},
7859   {0x3A, "PACKET_SYSTEM_INFO_14"},
7860   {0x3B, "Invalid Message Type"},
7861   {0x3C, "PACKET_SYSTEM_INFO_3_TER"},
7862   {0x3D, "PACKET_SYSTEM_INFO_3_QUATER"},
7863   {0x3E, "PACKET_SYSTEM_INFO_15"},
7864   { 0, NULL }
7865 };
7866 
7867 static value_string_ext dl_rlc_message_type_vals_ext = VALUE_STRING_EXT_INIT(dl_rlc_message_type_vals);
7868 
7869 static const value_string ul_rlc_message_type_vals[] = {
7870   {0x00, "PACKET_CELL_CHANGE_FAILURE"},
7871   {0x01, "PACKET_CONTROL_ACKNOWLEDGEMENT"},
7872   {0x02, "PACKET_DOWNLINK_ACK_NACK"},
7873   {0x03, "PACKET_UPLINK_DUMMY_CONTROL_BLOCK"},
7874   {0x04, "PACKET_MEASUREMENT_REPORT"},
7875   {0x05, "PACKET_RESOURCE_REQUEST"},
7876   {0x06, "PACKET_MOBILE_TBF_STATUS"},
7877   {0x07, "PACKET_PSI_STATUS"},
7878   {0x08, "EGPRS_PACKET_DOWNLINK_ACK_NACK"},
7879   {0x09, "PACKET_PAUSE"},
7880   {0x0A, "PACKET_ENHANCED_MEASUREMENT_REPORT"},
7881   {0x0B, "ADDITIONAL_MS_RAC"},
7882   {0x0C, "PACKET_CELL_CHANGE_NOTIFICATION"},
7883   {0x0D, "PACKET_SI_STATUS"},
7884   /* {0x0E, "Invalid Message Type"},                 */
7885   /* {0x0F, "Invalid Message Type"},                 */
7886   /* {0x10, "Invalid Message Type"},                 */
7887   /* {0x11, "Invalid Message Type"},                 */
7888   /* {0x12, "Invalid Message Type"},                 */
7889   /* {0x13, "Invalid Message Type"},                 */
7890   /* {0x14, "Invalid Message Type"},                 */
7891   {0, NULL }
7892 };
7893 
7894 
7895 static const value_string ul_prach8_message_type3_vals[] = {
7896   {0x00, "PACKET_CONTROL_ACKNOWLEDGEMENT"},
7897   {0, NULL }
7898 };
7899 
7900 static const value_string ul_prach8_message_type6_vals[] = {
7901   {0x1F, "PACKET_CONTROL_ACKNOWLEDGEMENT"},
7902   {0, NULL }
7903 };
7904 
7905 static const value_string ul_prach11_message_type6_vals[] = {
7906   {0x37, "PACKET_CONTROL_ACKNOWLEDGEMENT"},
7907   {0, NULL }
7908 };
7909 
7910 static const value_string ul_prach11_message_type9_vals[] = {
7911   {0x1F9, "PACKET_CONTROL_ACKNOWLEDGEMENT"},
7912   {0, NULL }
7913 };
7914 
7915 static value_string_ext ul_rlc_message_type_vals_ext = VALUE_STRING_EXT_INIT(ul_rlc_message_type_vals);
7916 
7917 static const true_false_string retry_vals = {
7918   "MS sent channel request message twice or more",
7919   "MS sent channel request message once"
7920 };
7921 
7922 static const value_string ctrl_ack_vals[] = {
7923   {0x00, "In case the message is sent in access burst format, the MS received two RLC/MAC blocks with the same RTI value, one with RBSN = 0 and the other with RBSN = 1 and the mobile station is requesting new TBF. Otherwise the bit value '00' is reserved and shall not be sent. If received it shall be interpreted as the MS received an RLC/MAC control block addressed to itself and with RBSN = 1, and did not receive an RLC/MAC control block with the same RTI value and RBSN = 0"},
7924   {0x01, "The MS received an RLC/MAC control block addressed to itself and with RBSN = 1, and did not receive an RLC/MAC control block with the same RTI value and RBSN = 0"},
7925   {0x02, "The MS received an RLC/MAC control block addressed to itself and with RBSN = 0, and did not receive an RLC/MAC control block with the same RTI value and RBSN = 1. This value is sent irrespective of the value of the FS bit"},
7926   {0x03, "The MS received two RLC/MAC blocks with the same RTI value, one with RBSN = 0 and the other with RBSN = 1"},
7927   {0, NULL }
7928 };
7929 
7930 static const value_string ul_payload_type_vals[] = {
7931   {0x00, "RLC/MAC block contains an RLC data block"},
7932   {0x01, "RLC/MAC block contains an RLC/MAC control block that does not include the optional octets of the RLC/MAC control header"},
7933   {0x02, "Reserved"},
7934   {0x03, "Reserved"},
7935   {0, NULL }
7936 };
7937 
7938 static const value_string dl_payload_type_vals[] = {
7939   {0x00, "RLC/MAC block contains an RLC data block"},
7940   {0x01, "RLC/MAC block contains an RLC/MAC control block that does not include the optional octets of the RLC/MAC control header"},
7941   {0x02, "RLC/MAC block contains an RLC/MAC control block that includes the optional first octet of the RLC/MAC control header"},
7942   {0x03, "Reserved. The mobile station shall ignore all fields of the RLC/MAC block except for the USF field"},
7943   {0, NULL }
7944 };
7945 
7946 static const value_string dl_ec_payload_type_vals[] = {
7947   {0x00, "RLC/MAC control block, including the normal MAC header"},
7948   {0x01, "RLC/MAC control block, including the extended MAC header"},
7949   {0, NULL }
7950 };
7951 
7952 static const value_string rrbp_vals[] = {
7953   {0x00, "Reserved Block: (N+13) mod 2715648"},
7954   {0x01, "Reserved Block: (N+17 or N+18) mod 2715648"},
7955   {0x02, "Reserved Block: (N+21 or N+22) mod 2715648"},
7956   {0x03, "Reserved Block: (N+26) mod 2715648"},
7957   {0, NULL }
7958 };
7959 
7960 static const value_string ec_cc_vals[] = {
7961   {0x00, "Coverage Class 1"},
7962   {0x01, "Coverage Class 2"},
7963   {0x02, "Coverage Class 3"},
7964   {0x03, "Coverage Class 4"},
7965   {0, NULL }
7966 };
7967 
7968 static const value_string ecs_p_vals[] = {
7969   {0x00, "RRBP field is not valid (no Polling)"},
7970   {0x01, "RRBP field is valid, Ack/Nack report to be included"},
7971   {0x02, "RRBP field is valid, Ack/Nack report to be included. If there is enough room in the RLC/MAC block, a channel quality report shall also be included."},
7972   {0x03, "Reserved"},
7973   {0, NULL }
7974 };
7975 
7976 static const value_string foi_vals[] = {
7977   {0x00, "Countdown Value not present"},
7978   {0x01, "Countdown Value present"},
7979   {0, NULL }
7980 };
7981 
7982 static const value_string ri_vals[] = {
7983   {0x00, "rTLLI field is not valid"},
7984   {0x01, "rTLLI field is valid"},
7985   {0, NULL }
7986 };
7987 
7988 static const value_string rtlli_vals[] = {
7989   {0x00, "rTLLI field is not valid"},
7990   {0x01, "rTLLI field is valid"},
7991   {0, NULL }
7992 };
7993 
7994 static const value_string ec_cc_est_vals[] = {
7995   {0x00, "DL CC 4"},
7996   {0x01, "DL CC 3"},
7997   {0x02, "DL CC 2"},
7998   {0x03, "DL CC 1, < 3dB Over Blind Transmission Threshold"},
7999   {0x04, "DL CC 1, 3dB - 6dB Over Blind Transmission Threshold"},
8000   {0x05, "DL CC 1, 6dB - 9dB Over Blind Transmission Threshold"},
8001   {0x06, "DL CC 1, 9dB - 12dB Over Blind Transmission Threshold"},
8002   {0x07, "DL CC 1, 12dB - 15dB Over Blind Transmission Threshold"},
8003   {0x08, "DL CC 1, 15dB - 18dB Over Blind Transmission Threshold"},
8004   {0x09, "DL CC 1, 18dB - 21dB Over Blind Transmission Threshold"},
8005   {0x0a, "DL CC 1, 21dB - 24dB Over Blind Transmission Threshold"},
8006   {0x0b, "DL CC 1, 24dB - 27dB Over Blind Transmission Threshold"},
8007   {0x0c, "DL CC 1, 27dB - 30dB Over Blind Transmission Threshold"},
8008   {0x0d, "DL CC 1, 30dB - 33dB Over Blind Transmission Threshold"},
8009   {0x0e, "DL CC 1, 33dB - 36dB Over Blind Transmission Threshold"},
8010   {0x0f, "DL CC 1, 36dB - 39dB Over Blind Transmission Threshold"},
8011   {0, NULL }
8012 };
8013 
8014 static const value_string ec_dl_rlc_message_type_vals[] = {
8015   {0x01, "EC PACKET_DOWNLINK_ASSIGNMENT"},
8016   {0x02, "EC PACKET_POLLING_REQ"},
8017   {0x03, "EC PACKET_POWER_CONTROL_TIMING_ADVANCE"},
8018   {0x04, "EC PACKET_TBF_RELEASE"},
8019   {0x05, "EC PACKET_UPLINK_ACK_NACK"},
8020   {0x06, "EC UPLINK_ASSIGNMENT"},
8021   {0x07, "EC PACKET_UPLINK_ACK_NACK_AND_CONTENTION_RESOLUTION"},
8022   {0x11, "EC PACKET_ACCESS_REJECT"},
8023   {0x12, "EC PACKET_DOWNLINK_DUMMY_CONTROL_BLOCK"},
8024   {0, NULL }
8025 
8026 };
8027 
8028 static value_string_ext ec_dl_rlc_message_type_vals_ext = VALUE_STRING_EXT_INIT(ec_dl_rlc_message_type_vals);
8029 
8030 static const value_string ec_ul_rlc_message_type_vals[] = {
8031   {0x01, "EC PACKET_CONTROL_ACKNOWLEDGEMENT"},
8032   {0x02, "EC PACKET_DOWNLINK_ACK_NACK"},
8033   {0, NULL }
8034 
8035 };
8036 
8037 static value_string_ext ec_ul_rlc_message_type_vals_ext = VALUE_STRING_EXT_INIT(ec_ul_rlc_message_type_vals);
8038 
8039 static const true_false_string s_p_vals = {
8040   "RRBP field is valid",
8041   "RRBP field is not valid"
8042 };
8043 
8044 static const true_false_string fbi_vals = {
8045   "Current Block is last RLC data block in TBF",
8046   "Current Block is not last RLC data block in TBF"
8047 };
8048 
8049 static const true_false_string pi_vals = {
8050   "PFI is present if TI field indicates presence of TLLI",
8051   "PFI is not present"
8052 };
8053 
8054 static const true_false_string ti_vals = {
8055   "TLLI/G-RNTI field is present",
8056   "TLLI/G-RNTI field is not present"
8057 };
8058 
8059 static const true_false_string si_vals = {
8060   "MS RLC transmit window is stalled",
8061   "MS RLC transmit window is not stalled"
8062 };
8063 
8064 #if 0
8065 static const true_false_string r_vals = {
8066   "MS sent channel request message twice or more",
8067   "MS sent channel request message once"
8068 };
8069 #endif
8070 
8071 static const true_false_string rsb_vals = {
8072   "At least one RLC data block contained within the EGPRS radio block has been transmitted before",
8073   "All of the RLC data blocks contained within the EGPRS radio block are being transmitted for the first time"
8074 };
8075 
8076 static const value_string es_p_vals[] = {
8077   {0x00, "RRBP field is not valid (no Polling)"},
8078   {0x01, "RRBP field is valid - Extended Ack/Nack bitmap type FPB"},
8079   {0x02, "RRBP field is valid - Extended Ack/Nack bitmap type NPB"},
8080   {0x03, "RRBP field is valid - Ack/Nack bitmap type NPB, measurement report included"},
8081   {0, NULL }
8082 };
8083 
8084 static const value_string dl_spb_vals[] = {
8085   {0x00, "No retransmission"},
8086   {0x01, "Retransmission - third part of block"},
8087   {0x02, "Retransmission - first part of block"},
8088   {0x03, "Retransmission - second part of block"},
8089   {0, NULL }
8090 };
8091 
8092 static const value_string ul_spb_vals[] = {
8093   {0x00, "No retransmission"},
8094   {0x01, "Retransmission - first part of block with 10 octet padding"},
8095   {0x02, "Retransmission - first part of block with no padding or 6 octet padding"},
8096   {0x03, "Retransmission - second part of block"},
8097   {0, NULL }
8098 };
8099 
8100 static const value_string page_mode_vals[] = {
8101   {0x00, "Normal Paging"},
8102   {0x01, "Extended Paging"},
8103   {0x02, "Paging Reorganization"},
8104   {0x03, "Same as before"},
8105   {0, NULL }
8106 };
8107 
8108 static const true_false_string e_vals = {
8109   "No extension octet follows",
8110   "Extension octet follows immediately"
8111 };
8112 
8113 static const value_string me_vals[] = {
8114   {0x00, "The mobile station shall ignore all fields of the RLC/MAC block except for the fields of the MAC header"},
8115   {0x01, "no more LLC segments in this RLC block after the current segment, no more extension octets"},
8116   {0x02, "a new LLC PDU starts after the current LLC PDU and there is another extension octet, which delimits the new LLC PDU"},
8117   {0x03, "a new LLC PDU starts after the current LLC PDU and continues until the end of the RLC information field, no more extension octets"},
8118   {0, NULL }
8119 };
8120 
8121 static const true_false_string ack_type_vals = {
8122   "PACKET CONTROL ACKNOWLEDGEMENT message format shall be an RLC/MAC control block",
8123   "CONTROL ACKNOWLEDGEMENT message format shall be sent as four access bursts"
8124 };
8125 
8126 static const true_false_string fs_vals = {
8127   "Current block contains the final segment of an RLC/MAC control message",
8128   "Current block does not contain the final segment of an RLC/MAC control message"
8129 };
8130 
8131 static const true_false_string ac_vals = {
8132   "TFI/D octet is present",
8133   "TFI/D octet is not present"
8134 };
8135 
8136 static const value_string power_reduction_vals[] = {
8137   {0x00, "0 dB (included) to 3 dB (excluded) less than BCCH level - P0"},
8138   {0x01, "3 dB (included) to 7 dB (excluded) less than BCCH level - P0"},
8139   {0x02, "7 dB (included) to 10 dB (included) less than BCCH level - P0"},
8140   {0x03, "Not usable"},
8141   {0, NULL }
8142 };
8143 
8144 static const value_string ec_power_reduction_vals[] = {
8145   {0x00, "0 dB (included) to 3 dB (excluded) less than BCCH level - P0"},
8146   {0x01, "3 dB (included) to 7 dB (excluded) less than BCCH level - P0"},
8147   {0, NULL }
8148 };
8149 
8150 static const value_string ec_power_reduction_ext_vals[] = {
8151   {0x00, "0 dB (included) to 3 dB (excluded) less than BCCH level - P0"},
8152   {0x01, "3 dB (included) to 7 dB (excluded) less than BCCH level - P0"},
8153   {0x02, "7 dB (included) to 10 dB (included) less than BCCH level - P0"},
8154   {0x03, "Reserved"},
8155   {0, NULL }
8156 };
8157 
8158 static const true_false_string ctrl_d_vals = {
8159   "TFI field identifies a downlink TBF",
8160   "TFI field identifies an uplink TBF"
8161 };
8162 
8163 static const value_string rbsn_e_vals[] = {
8164   {0x00, "2nd RLC/MAC control block"},
8165   {0x01, "3rd / last RLC/MAC control block"},
8166   {0x02, "4th / last RLC/MAC control block"},
8167   {0x03, "5th / last RLC/MAC control block"},
8168   {0x04, "6th / last RLC/MAC control block"},
8169   {0x05, "7th / last RLC/MAC control block"},
8170   {0x06, "8th / last RLC/MAC control block"},
8171   {0x07, "9th and last RLC/MAC control block"},
8172   {0, NULL }
8173 };
8174 
8175 static const value_string alpha_vals[] = {
8176   {0x00, "Alpha* = 0.0"},
8177   {0x01, "Alpha* = 0.1"},
8178   {0x02, "Alpha* = 0.2"},
8179   {0x03, "Alpha* = 0.3"},
8180   {0x04, "Alpha* = 0.4"},
8181   {0x05, "Alpha* = 0.5"},
8182   {0x06, "Alpha* = 0.6"},
8183   {0x07, "Alpha* = 0.7"},
8184   {0x08, "Alpha* = 0.8"},
8185   {0x09, "Alpha* = 0.9"},
8186   {0x0A, "Alpha* = 1.0"},
8187   {0x0B, "Alpha* = 1.0"},
8188   {0x0C, "Alpha* = 1.0"},
8189   {0x0D, "Alpha* = 1.0"},
8190   {0x0E, "Alpha* = 1.0"},
8191   {0x0F, "Alpha* = 1.0"},
8192   {0, NULL }
8193 };
8194 
8195 static const true_false_string rlc_mode_vals = {
8196   "RLC unacknowledged mode",
8197   "RLC acknowledged mode"
8198 };
8199 
8200 static const true_false_string pc_meas_chan_vals = {
8201   "downlink measurements for power control shall be made on PDCH",
8202   "downlink measurements for power control shall be made on BCCH"
8203 };
8204 
8205 static const value_string mac_mode_vals[] = {
8206   {0x00, "Dynamic Allocation"},
8207   {0x01, "Extended Dynamic Allocation"},
8208   {0x02, "Reserved -- The value '10' was allocated in an earlier version of the protocol and shall not be used"},
8209   {0x03, "Reserved -- The value '11' was allocated in an earlier version of the protocol and shall not be used"},
8210   {0, NULL }
8211 };
8212 
8213 static const true_false_string control_ack_vals = {
8214     "A new downlink TBF for the mobile station whose timer T3192 is running",
8215     "Not a new downlink TBF for the mobile station whose timer T3192 is running"
8216 };
8217 
8218 static const value_string cell_change_failure_cause_vals[] = {
8219   {0x00, "Frequency not implemented"},
8220   {0x01, "No response on target cell"},
8221   {0x02, "Immediate Assign Reject or Packet Access Reject on target cell"},
8222   {0x03, "On-going CS connection"},
8223   {0x04, "PS Handover failure - other"},
8224   {0x05, "MS in GMM Standby state"},
8225   {0x06, "Forced to the Standby state"},
8226   {0x07, "Reserved for Future Use"},
8227   {0x08, "Reserved for Future Use"},
8228   {0x09, "Reserved for Future Use"},
8229   {0x0A, "Reserved for Future Use"},
8230   {0x0B, "Reserved for Future Use"},
8231   {0x0C, "Reserved for Future Use"},
8232   {0x0D, "Reserved for Future Use"},
8233   {0x0E, "Reserved for Future Use"},
8234   {0x0F, "Reserved for Future Use"},
8235   {0, NULL }
8236 };
8237 
8238 /* TS 44.060 section 11.2.28 Uplink Ack/Nack */
8239 static const value_string channel_coding_scheme_vals[] = {
8240   {0x00, "CS-1"},
8241   {0x01, "CS-2"},
8242   {0x02, "CS-3"},
8243   {0x03, "CS-4"},
8244   {0, NULL }
8245 };
8246 
8247 static const value_string egprs_modulation_channel_coding_scheme_vals[] = {
8248   {0x00, "MCS-1"},
8249   {0x01, "MCS-2"},
8250   {0x02, "MCS-3"},
8251   {0x03, "MCS-4"},
8252   {0x04, "MCS-5"},
8253   {0x05, "MCS-6"},
8254   {0x06, "MCS-7"},
8255   {0x07, "MCS-8"},
8256   {0x08, "MCS-9"},
8257   {0x09, "MCS-5-7"},
8258   {0x0A, "MCS-6-9"},
8259   {0x0B, "reserved"},
8260   {0x0C, "reserved"},
8261   {0x0D, "reserved"},
8262   {0x0E, "reserved"},
8263   {0x0F, "reserved"},
8264   {0, NULL }
8265 };
8266 
8267 static const value_string egprs_Header_type1_coding_puncturing_scheme_vals[] = {
8268   {0x00, "(MCS-9/P1 ; MCS-9/P1)"},
8269   {0x01, "(MCS-9/P1 ; MCS-9/P2)"},
8270   {0x02, "(MCS-9/P1 ; MCS-9/P3)"},
8271   {0x03, "reserved"},
8272   {0x04, "(MCS-9/P2 ; MCS-9/P1)"},
8273   {0x05, "(MCS-9/P2 ; MCS-9/P2)"},
8274   {0x06, "(MCS-9/P2 ; MCS-9/P3)"},
8275   {0x07, "reserved"},
8276   {0x08, "(MCS-9/P3 ; MCS-9/P1)"},
8277   {0x09, "(MCS-9/P3 ; MCS-9/P2)"},
8278   {0x0A, "(MCS-9/P3 ; MCS-9/P3)"},
8279   {0x0B, "(MCS-8/P1 ; MCS-8/P1)"},
8280   {0x0C, "(MCS-8/P1 ; MCS-8/P2)"},
8281   {0x0D, "(MCS-8/P1 ; MCS-8/P3)"},
8282   {0x0E, "(MCS-8/P2 ; MCS-8/P1)"},
8283   {0x0F, "(MCS-8/P2 ; MCS-8/P2)"},
8284   {0x10, "(MCS-8/P2 ; MCS-8/P3)"},
8285   {0x11, "(MCS-8/P3 ; MCS-8/P1)"},
8286   {0x12, "(MCS-8/P3 ; MCS-8/P2)"},
8287   {0x13, "(MCS-8/P3 ; MCS-8/P3)"},
8288   {0x14, "(MCS-7/P1 ; MCS-7/P1"},
8289   {0x15, "(MCS-7/P1 ; MCS-7/P2)"},
8290   {0x16, "(MCS-7/P1 ; MCS-7/P3)"},
8291   {0x17, "(MCS-7/P2 ; MCS-7/P1)"},
8292   {0x18, "(MCS-7/P2 ; MCS-7/P2)"},
8293   {0x19, "(MCS-7/P2 ; MCS-7/P3)"},
8294   {0x1A, "(MCS-7/P3 ; MCS-7/P1)"},
8295   {0x1B, "(MCS-7/P3 ; MCS-7/P2)"},
8296   {0x1C, "(MCS-7/P3 ; MCS-7/P3)"},
8297   {0x1D, "reserved"},
8298   {0x1E, "reserved"},
8299   {0x1F, "reserved"},
8300   {0, NULL }
8301 };
8302 static value_string_ext egprs_Header_type1_coding_puncturing_scheme_vals_ext = VALUE_STRING_EXT_INIT(egprs_Header_type1_coding_puncturing_scheme_vals);
8303 
8304 static const value_string egprs_Header_type2_coding_puncturing_scheme_vals[] = {
8305   {0x00, "MCS-6/P1"},
8306   {0x01, "MCS-6/P2"},
8307   {0x02, "MCS-6/P1 with 6 octet padding"},
8308   {0x03, "MCS-6/P2 with 6 octet padding "},
8309   {0x04, "MCS-5/P1"},
8310   {0x05, "MCS-5/P2"},
8311   {0x06, "MCS-6/P1 with 10 octet padding "},
8312   {0x07, "MCS-6/P2 with 10 octet padding "},
8313   {0, NULL }
8314 };
8315 static value_string_ext egprs_Header_type2_coding_puncturing_scheme_vals_ext = VALUE_STRING_EXT_INIT(egprs_Header_type2_coding_puncturing_scheme_vals);
8316 
8317 static const value_string egprs_Header_type3_coding_puncturing_scheme_vals[] = {
8318   {0x00, "MCS-4/P1"},
8319   {0x01, "MCS-4/P2"},
8320   {0x02, "MCS-4/P3"},
8321   {0x03, "MCS-3/P1"},
8322   {0x04, "MCS-3/P2"},
8323   {0x05, "MCS-3/P3"},
8324   {0x06, "MCS-3/P1 with padding"},
8325   {0x07, "MCS-3/P2 with padding"},
8326   {0x08, "MCS-3/P3 with padding"},
8327   {0x09, "MCS-2/P1"},
8328   {0x0A, "MCS-2/P2"},
8329   {0x0B, "MCS-1/P1"},
8330   {0x0C, "MCS-1/P2"},
8331   {0x0D, "MCS-2/P1 with padding"},
8332   {0x0E, "MCS-2/P2 with padding"},
8333   {0x0F, "MCS-0"},
8334   {0, NULL }
8335 };
8336 static value_string_ext egprs_Header_type3_coding_puncturing_scheme_vals_ext = VALUE_STRING_EXT_INIT(egprs_Header_type3_coding_puncturing_scheme_vals);
8337 
8338 static const value_string ec_egprs_Header_type3_coding_puncturing_scheme_vals[] = {
8339   {0x00, "MCS-4/P1"},
8340   {0x01, "MCS-4/P2"},
8341   {0x02, "MCS-3/P1"},
8342   {0x03, "MCS-3/P2"},
8343   {0x04, "MCS-3/P1 with padding"},
8344   {0x05, "MCS-3/P2 with padding"},
8345   {0x06, "MCS-2/P1"},
8346   {0x07, "MCS-1/P1"},
8347   {0, NULL }
8348 };
8349 static value_string_ext ec_egprs_Header_type3_coding_puncturing_scheme_vals_ext = VALUE_STRING_EXT_INIT(ec_egprs_Header_type3_coding_puncturing_scheme_vals);
8350 
8351 static const value_string gsm_rlcmac_psi_change_field_vals[] = {
8352   { 0, "Update of unspecified PSI message(s)"},
8353   { 1, "Unknown"},
8354   { 2, "PSI2 updated"},
8355   { 3, "PSI3/PSI3bis/PSI3ter/PSI3quater updated"},
8356   { 4, "Unknown"},
8357   { 5, "PSI5 updated"},
8358   { 6, "PSI6 updated"},
8359   { 7, "PSI7 updated"},
8360   { 8, "PSI8 updated"},
8361   { 9, "Update of unknown SI message type"},
8362   {10, "Update of unknown SI message type"},
8363   {11, "Update of unknown SI message type"},
8364   {12, "Update of unknown SI message type"},
8365   {13, "Update of unknown SI message type"},
8366   {14, "Update of unknown SI message type"},
8367   {15, "Update of unknown SI message type"},
8368   { 0, NULL}
8369 };
8370 
8371 static const value_string gsm_rlcmac_val_plus_1_vals[] = {
8372   { 0, "1"},
8373   { 1, "2"},
8374   { 2, "3"},
8375   { 3, "4"},
8376   { 4, "5"},
8377   { 5, "6"},
8378   { 6, "7"},
8379   { 7, "8"},
8380   { 8, "9"},
8381   { 9, "10"},
8382   {10, "11"},
8383   {11, "12"},
8384   {12, "13"},
8385   {13, "14"},
8386   {14, "15"},
8387   {15, "16"},
8388   { 0, NULL}
8389 };
8390 
8391 static const true_false_string gsm_rlcmac_psi1_measurement_order_value = {
8392   "MS shall send measurement reports for cell re-selection",
8393   "MS performs cell re-selection in both packet idle and transfer mode and shall not send any measurement reports to the network"
8394 };
8395 
8396 static const value_string gsm_rlcmac_nmo_vals[] = {
8397   { 0, "Network Mode of Operation I"},
8398   { 1, "Network Mode of Operation II"},
8399   { 2, "Network Mode of Operation III"},
8400   { 3, "Reserved"},
8401   { 0, NULL}
8402 };
8403 
8404 static const value_string gsm_rlcmac_t3168_vals[] = {
8405   { 0, "500 ms"},
8406   { 1, "1000 ms"},
8407   { 2, "1500 ms"},
8408   { 3, "2000 ms"},
8409   { 4, "2500 ms"},
8410   { 5, "3000 ms"},
8411   { 6, "3500 ms"},
8412   { 7, "4000 ms"},
8413   { 0, NULL}
8414 };
8415 
8416 static const value_string gsm_rlcmac_t3192_vals[] = {
8417   { 0, "500 ms"},
8418   { 1, "1000 ms"},
8419   { 2, "1500 ms"},
8420   { 3, "0 ms"},
8421   { 4, "80 ms"},
8422   { 5, "120 ms"},
8423   { 6, "160 ms"},
8424   { 7, "200 ms"},
8425   { 0, NULL}
8426 };
8427 
8428 /* NAS container for PS HOinformation element according to Table 10.5.1.14/3GPP TS 24.008 */
8429 static const value_string nas_container_for_ps_ho_old_xid[] = {
8430   { 0, "The MS shall perform a Reset of LLC and SNDCP without old XID indicator as specified in 3GPP TS 44.064 and 3GPP TS 44.065"},
8431   { 1, "The MS shall perform a Reset of LLC and SNDCP with old XID indicator as specified in 3GPP TS 44.064 and 3GPP TS 44.065"},
8432   { 0, NULL}
8433 };
8434 
8435 static const value_string nas_container_for_ps_ho_type_of_ciphering[] = {
8436   { 0, "ciphering not used"},
8437   { 1, "GPRS Encryption Algorithm GEA/1"},
8438   { 2, "GPRS Encryption Algorithm GEA/2"},
8439   { 3, "GPRS Encryption Algorithm GEA/3"},
8440   { 4, "GPRS Encryption Algorithm GEA/4"},
8441   { 5, "GPRS Encryption Algorithm GEA/5"},
8442   { 6, "GPRS Encryption Algorithm GEA/6"},
8443   { 7, "GPRS Encryption Algorithm GEA/7"},
8444   { 0, NULL}
8445 };
8446 
8447 static const value_string access_tech_type_vals[] = {
8448   { AccTech_GSMP,     "GSM P"},
8449   { AccTech_GSME,     "GSM E"},
8450   { AccTech_GSMR,     "GSM R"},
8451   { AccTech_GSM1800,  "GSM 1800"},
8452   { AccTech_GSM1900,  "GSM 1900"},
8453   { AccTech_GSM450,   "GSM 450"},
8454   { AccTech_GSM480,   "GSM 480"},
8455   { AccTech_GSM850,   "GSM 850"},
8456   { AccTech_GSM750,   "GSM 750"},
8457   { AccTech_GSMT830,  "GSM T 830"},
8458   { AccTech_GSMT410,  "GSM T 410"},
8459   { AccTech_GSMT900,  "GSM T 900"},
8460   { AccTech_GSM710,   "GSM 710"},
8461   { AccTech_GSMT810,  "GSM T 810"},
8462   { AccTech_GSMOther, "Additional access technologies"},
8463   { 0, NULL}
8464 };
8465 
8466 static const value_string si_message_type_vals[] = {
8467   {0x00, "SYSTEM INFORMATION TYPE 13"},
8468   {0x01, "SYSTEM INFORMATION TYPE 14"},
8469   {0x02, "SYSTEM INFORMATION TYPE 2bis"},
8470   {0x03, "SYSTEM INFORMATION TYPE 2ter"},
8471   {0x04, "SYSTEM INFORMATION TYPE 9"},
8472   {0x05, "SYSTEM INFORMATION TYPE 5bis"},
8473   {0x06, "SYSTEM INFORMATION TYPE 5ter"},
8474   {0x07, "SYSTEM INFORMATION TYPE 2quater"},
8475   {0x18, "SYSTEM INFORMATION TYPE 8"},
8476   {0x19, "SYSTEM INFORMATION TYPE 1"},
8477   {0x1a, "SYSTEM INFORMATION TYPE 2"},
8478   {0x1b, "SYSTEM INFORMATION TYPE 3"},
8479   {0x1c, "SYSTEM INFORMATION TYPE 4"},
8480   {0x1d, "SYSTEM INFORMATION TYPE 5"},
8481   {0x1e, "SYSTEM INFORMATION TYPE 6"},
8482   {0x1f, "SYSTEM INFORMATION TYPE 7"},
8483   {0x3d, "SYSTEM INFORMATION TYPE 16"},
8484   {0x3e, "SYSTEM INFORMATION TYPE 17"},
8485   {0x40, "SYSTEM INFORMATION TYPE 18"},
8486   {0x41, "SYSTEM INFORMATION TYPE 19"},
8487   {0x42, "SYSTEM INFORMATION TYPE 20"},
8488   {0x43, "SYSTEM INFORMATION TYPE 15"},
8489   {0x44, "SYSTEM INFORMATION TYPE 13alt"},
8490   {0x45, "SYSTEM INFORMATION TYPE 2n"},
8491   {0x46, "SYSTEM INFORMATION TYPE 21"},
8492   {0x47, "SYSTEM INFORMATION TYPE 22"},
8493   {0x4f, "SYSTEM INFORMATION TYPE 23"},
8494   { 0, NULL }
8495 };
8496 static value_string_ext si_message_type_vals_ext = VALUE_STRING_EXT_INIT(si_message_type_vals);
8497 
construct_gprs_data_segment_li_array(tvbuff_t * tvb,proto_tree * tree,packet_info * pinfo,guint8 initial_offset,guint8 * li_count,length_indicator_t * li_array,guint64 * e)8498 static gint construct_gprs_data_segment_li_array(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, guint8 initial_offset, guint8 *li_count, length_indicator_t *li_array, guint64 *e)
8499 {
8500   gint        offset = initial_offset;
8501   guint8      li_array_size = *li_count;
8502   proto_item *item;
8503 
8504   *li_count = 0;
8505   while (*e == 0)
8506   {
8507     item = proto_tree_add_bits_item(tree, hf_li, tvb, offset * 8, 6, ENC_BIG_ENDIAN);
8508     if (*li_count < li_array_size)
8509     {
8510       li_array[*li_count].li = tvb_get_guint8(tvb, offset);
8511       li_array[*li_count].offset = offset;
8512       (*li_count)++;
8513     }
8514     else
8515     {
8516       expert_add_info(pinfo, item, &ei_li);
8517     }
8518     proto_tree_add_bits_item(tree, hf_me, tvb, (offset * 8) + 6, 2, ENC_BIG_ENDIAN);
8519     proto_tree_add_bits_ret_val(tree, hf_e, tvb, (offset * 8) + 7, 1, e, ENC_BIG_ENDIAN);
8520     offset++;
8521   }
8522   return (offset - initial_offset);
8523 }
8524 
construct_egprs_data_segment_li_array(tvbuff_t * tvb,proto_tree * tree,packet_info * pinfo,guint8 initial_offset,guint8 * li_count,length_indicator_t * li_array,guint64 * e)8525 static gint construct_egprs_data_segment_li_array(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, guint8 initial_offset, guint8 *li_count, length_indicator_t *li_array, guint64 *e)
8526 {
8527   gint        offset = initial_offset;
8528   guint8      li_array_size = *li_count;
8529   proto_item *item;
8530 
8531   *li_count = 0;
8532   while (*e == 0)
8533   {
8534     item = proto_tree_add_bits_item(tree, hf_li, tvb, offset * 8, 7, ENC_BIG_ENDIAN);
8535     proto_tree_add_bits_ret_val(tree, hf_e, tvb, (offset * 8) + 7, 1, e, ENC_BIG_ENDIAN);
8536     if (*li_count < li_array_size)
8537     {
8538       /* store the LI and offset for use later when dissecting the rlc segments */
8539       li_array[*li_count].offset = offset;
8540       li_array[*li_count].li = tvb_get_guint8(tvb, offset);
8541       (*li_count)++;
8542     }
8543     else
8544     {
8545       expert_add_info(pinfo, item, &ei_li);
8546     }
8547     offset++;
8548   }
8549   return (offset - initial_offset);
8550 }
8551 
dissect_gprs_data_segments(tvbuff_t * tvb,packet_info * pinfo,proto_tree * tree,guint8 initial_offset,guint8 octet_length,gboolean is_uplink,guint8 cs,guint8 li_count,length_indicator_t * li_array)8552 static guint8 dissect_gprs_data_segments(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree,
8553                                          guint8 initial_offset, guint8 octet_length,
8554                                          gboolean is_uplink, guint8 cs,
8555                                          guint8 li_count, length_indicator_t *li_array)
8556 {
8557   guint8      octet_offset = initial_offset;
8558   guint8      i;
8559   tvbuff_t*   data_tvb     = NULL;
8560   gboolean    more         = TRUE, first_li = TRUE;
8561   proto_tree *subtree      = NULL;
8562 
8563   guint8 blk_length = gsm_rlcmac_gprs_cs_to_block_length[cs - 1];
8564   if (blk_length > octet_length)
8565       blk_length = octet_length; /* part of the block or spare bits missing */
8566 
8567   /* decode the LIs and any associated LLC Frames */
8568   for(i = 0; (i < li_count) && more; i++)
8569   {
8570     guint8 li = li_array[i].li >> 2;
8571 
8572     /* if more bit is false, there are no more data segments in this block after the current one */
8573     more = (li_array[i].li & 2) == 2;
8574 
8575     switch (li)
8576     {
8577       case 0:
8578         /* 3GPP TS 44.060 B.2 Example 2 */
8579         col_append_str_uint(pinfo->cinfo, COL_INFO, "Len", blk_length - octet_offset, " ");
8580         subtree = proto_tree_add_subtree_format(tree, tvb, li_array[i].offset, 1, ett_data_segments, NULL,
8581                                     "LI[%d]=%d indicates: The current LLC PDU would fit within current RLC data block but the addition "
8582                                     "of the length indicator octet (to indicate the LLC PDU boundary) causes the LLC PDU to extend into "
8583                                     "another RLC data block",
8584                                     i, li);
8585         data_tvb = tvb_new_subset_length(tvb, octet_offset, blk_length - octet_offset);
8586         call_data_dissector(data_tvb, pinfo, subtree);
8587         octet_offset = blk_length;
8588         break;
8589 
8590       case 63:
8591         if (first_li)
8592         {
8593           subtree = proto_tree_add_subtree_format(tree, tvb, octet_offset, li, ett_data_segments, NULL,
8594                                    "data segment: LI[%d]=%d indicates: The RLC data block contains only filler bits",
8595                                    i, li);
8596         }
8597         else
8598         {
8599           subtree = proto_tree_add_subtree_format(tree, tvb, octet_offset, li, ett_data_segments, NULL,
8600                                    "data segment: LI[%d]=%d indicates: The remainder of the RLC data block contains filler bits",
8601                                    i, li);
8602         }
8603         data_tvb = tvb_new_subset_length(tvb, octet_offset, blk_length - octet_offset);
8604         call_data_dissector(data_tvb, pinfo, subtree);
8605         octet_offset = blk_length;
8606         break;
8607 
8608       default:
8609         col_append_str_uint(pinfo->cinfo, COL_INFO, "Len", li, " ");
8610         subtree = proto_tree_add_subtree_format(tree, tvb, octet_offset, li, ett_data_segments, NULL,
8611                                  "data segment: LI[%d]=%d indicates: (Last segment of) LLC frame (%d octets)",
8612                                  i, li, li);
8613         data_tvb = tvb_new_subset_length(tvb, octet_offset, li);
8614         call_data_dissector(data_tvb, pinfo, subtree);
8615         octet_offset += li;
8616         break;
8617     }
8618     first_li = FALSE;
8619   }
8620 
8621   if (octet_offset < blk_length)
8622   {
8623     /* if there is space left in the RLC Block, then it is a segment of LLC Frame without LI*/
8624     if (more)
8625     {
8626       col_append_str_uint(pinfo->cinfo, COL_INFO, "Len", blk_length - octet_offset, " ");
8627       subtree = proto_tree_add_subtree_format(tree, tvb, octet_offset, blk_length - octet_offset, ett_data_segments, NULL,
8628                                "data segment: LI not present: \n The Upper Layer PDU in the current RLC data block either fills the current RLC data block precisely \nor continues in the following in-sequence RLC data block");
8629       data_tvb = tvb_new_subset_length(tvb, octet_offset, blk_length - octet_offset);
8630       call_data_dissector(data_tvb, pinfo, subtree);
8631      } else {
8632       proto_tree_add_bytes_item(tree, hf_padding, tvb, octet_offset, blk_length - octet_offset, ENC_BIG_ENDIAN, NULL, NULL, NULL);
8633      }
8634   }
8635   octet_offset = blk_length;
8636 
8637   if(octet_offset < octet_length)
8638     proto_tree_add_bits_item(tree, is_uplink ? hf_ul_data_spare : hf_dl_data_spare, tvb,
8639                              octet_offset*8, (octet_length - octet_offset)*8, ENC_BIG_ENDIAN);
8640   return octet_length;
8641 }
8642 
dissect_egprs_data_segments(tvbuff_t * tvb,packet_info * pinfo,proto_tree * tree,guint initial_offset,guint8 octet_length,guint8 li_count,length_indicator_t * li_array)8643 static guint16 dissect_egprs_data_segments(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, guint initial_offset, guint8 octet_length, guint8 li_count, length_indicator_t *li_array)
8644 {
8645   guint       octet_offset = initial_offset;
8646   guint8      i;
8647   tvbuff_t   *data_tvb     = NULL;
8648   gboolean    first_li     = TRUE;
8649   proto_tree *subtree      = NULL;
8650 
8651   /* decode the LIs and any associated LLC Frames */
8652   for(i = 0; i < li_count; i++)
8653   {
8654     guint8 li = li_array[i].li >> 1;
8655 
8656     /* if more bit is false, there are no more data segments in this block after the current one */
8657     switch (li)
8658     {
8659       case 0:
8660         if (first_li)
8661         {
8662           if (li_array[i].li & 1)
8663           {
8664             proto_tree_add_subtree_format(tree, tvb, li_array[i].offset, 1, ett_data_segments, NULL,
8665                                 "LI[%d]=%d indicates: The previous RLC data block contains a Upper Layer PDU, or a part of it, \nthat fills precisely the previous data block and for which there is no length indicator in that RLC data block. \nThe current RLC data block contains a Upper Layer PDU that either fills the current RLC data block precisely or \ncontinues in the next RLC data block.",
8666                                 i, li);
8667           }
8668           else
8669           {
8670             proto_tree_add_subtree_format(tree, tvb, li_array[i].offset, 1, ett_data_segments, NULL,
8671                                 "LI[%d]=%d indicates: The last Upper Layer PDU of the previous in sequence RLC data block ends \nat the boundary of that RLC data block and it has no LI in the header of that RLC data block. \nThus the current RLC data block contains the first segment of all included Upper Layer PDUs.",
8672                                 i, li);
8673           }
8674         }
8675         else
8676         {
8677           proto_tree_add_subtree_format(tree, tvb, li_array[i].offset, 1, ett_data_segments, NULL,
8678                               "LI[%d]=%d indicates: Unexpected occurrence of LI=0.",
8679                               i, li);
8680         }
8681         col_append_str_uint(pinfo->cinfo, COL_INFO, "Len", octet_length - octet_offset, " ");
8682         break;
8683 
8684       case 126:
8685         if (first_li)
8686         {
8687           if (li_array[i].li & 1)
8688           {
8689             proto_tree_add_subtree_format(tree, tvb, li_array[i].offset, 1, ett_data_segments, NULL,
8690                                 "LI[%d]=%d indicates: The current RLC data block contains the first segment of an Upper Layer PDU \nthat either fills the current RLC data block precisely or continues in the next RLC data block.",
8691                                 i, li);
8692           }
8693           else
8694           {
8695             proto_tree_add_subtree_format(tree, tvb, li_array[i].offset, 1, ett_data_segments, NULL,
8696                                 "LI[%d]=%d indicates: The current RLC data block contains the first segment of all included Upper Layer PDUs.",
8697                                 i, li);
8698           }
8699         }
8700         else
8701         {
8702           proto_tree_add_subtree_format(tree, tvb, li_array[i].offset, 1, ett_data_segments, NULL,
8703                               "LI[%d]=%d indicates: Unexpected occurrence of LI=126.",
8704                               i, li);
8705         }
8706         col_append_str_uint(pinfo->cinfo, COL_INFO, "Len", octet_length - octet_offset, " ");
8707         break;
8708 
8709       case 127:
8710         if (first_li)
8711         {
8712           subtree = proto_tree_add_subtree_format(tree, tvb, octet_offset, octet_length - octet_offset, ett_data_segments, NULL,
8713                                    "data segment: LI[%d]=%d indicates: The RLC data block contains only filler bits",
8714                                    i, li);
8715         }
8716         else
8717         {
8718           subtree = proto_tree_add_subtree_format(tree, tvb, octet_offset, octet_length - octet_offset, ett_data_segments, NULL,
8719                                    "data segment: LI[%d]=%d indicates: The remainder of the RLC data block contains filler bits",
8720                                    i, li);
8721         }
8722         data_tvb = tvb_new_subset_length(tvb, octet_offset, octet_length - octet_offset);
8723         call_data_dissector(data_tvb, pinfo, subtree);
8724         octet_offset = octet_length;
8725         break;
8726 
8727       default:
8728         col_append_str_uint(pinfo->cinfo, COL_INFO, "Len", li, " ");
8729         subtree = proto_tree_add_subtree_format(tree, tvb, octet_offset, li, ett_data_segments, NULL,
8730                                  "data segment: LI[%d]=%d indicates: (Last segment of) LLC frame (%d octets)",
8731                                  i, li, li);
8732         data_tvb = tvb_new_subset_length(tvb, octet_offset, li);
8733         call_data_dissector(data_tvb, pinfo, subtree);
8734         octet_offset += li;
8735         break;
8736     }
8737     first_li = FALSE;
8738   }
8739   /* if there is space left in the RLC Block, then it is a segment of LLC Frame without LI*/
8740   if (octet_offset < octet_length)
8741   {
8742     col_append_str_uint(pinfo->cinfo, COL_INFO, "Len", octet_length - octet_offset, " ");
8743     subtree = proto_tree_add_subtree(tree, tvb, octet_offset, octet_length - octet_offset, ett_data_segments, NULL,
8744                              "data segment: LI not present: \n The Upper Layer PDU in the current RLC data block either fills the current RLC data block precisely \nor continues in the following in-sequence RLC data block");
8745     data_tvb = tvb_new_subset_length(tvb, octet_offset, octet_length - octet_offset);
8746     call_data_dissector(data_tvb, pinfo, subtree);
8747     octet_offset = octet_length;
8748   }
8749   return (octet_offset - initial_offset);
8750 }
8751 
8752 static void
dissect_ul_rlc_control_message(tvbuff_t * tvb,packet_info * pinfo,proto_tree * tree,RlcMacUplink_t * data,guint16 bit_length)8753 dissect_ul_rlc_control_message(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, RlcMacUplink_t *data, guint16 bit_length)
8754 {
8755   csnStream_t  ar;
8756   proto_item  *ti;
8757   proto_tree  *rlcmac_tree;
8758   guint        bit_offset = 0;
8759 
8760   csnStreamInit(&ar, 0, bit_length, pinfo);
8761   data->u.MESSAGE_TYPE = tvb_get_bits8(tvb, 8, 6);
8762 
8763   ti = proto_tree_add_protocol_format(tree, proto_gsm_rlcmac, tvb, bit_offset >> 3, -1,
8764                                       "GSM RLC/MAC: %s (%d) (Uplink)",
8765                                       val_to_str_ext(data->u.MESSAGE_TYPE, &ul_rlc_message_type_vals_ext, "Unknown Message Type"),
8766                                       data->u.MESSAGE_TYPE);
8767   rlcmac_tree = proto_item_add_subtree(ti, ett_gsm_rlcmac);
8768 
8769   col_append_sep_str(pinfo->cinfo, COL_INFO, " ", val_to_str_ext(data->u.MESSAGE_TYPE, &ul_rlc_message_type_vals_ext, "Unknown Message Type"));
8770 
8771   switch (data->u.MESSAGE_TYPE)
8772   {
8773     case MT_PACKET_CELL_CHANGE_FAILURE:
8774     {
8775       /*
8776        * data is the pointer to the unpack struct that hold the unpack value
8777        * CSNDESCR is an array that holds the different element types
8778        * ar is the csn context holding the bitcount, offset and output
8779        */
8780       /*ret =*/ csnStreamDissector(rlcmac_tree, &ar, CSNDESCR(Packet_Cell_Change_Failure_t), tvb, &data->u.Packet_Cell_Change_Failure, ett_gsm_rlcmac);
8781       break;
8782     }
8783     case MT_PACKET_CONTROL_ACK:
8784     {
8785       /*ret =*/ csnStreamDissector(rlcmac_tree, &ar, CSNDESCR(Packet_Control_Acknowledgement_t), tvb, &data->u.Packet_Control_Acknowledgement, ett_gsm_rlcmac);
8786       break;
8787     }
8788     case MT_PACKET_DOWNLINK_ACK_NACK:
8789     {
8790       /*ret =*/ csnStreamDissector(rlcmac_tree, &ar, CSNDESCR(Packet_Downlink_Ack_Nack_t), tvb, &data->u.Packet_Downlink_Ack_Nack, ett_gsm_rlcmac);
8791       break;
8792     }
8793     case MT_PACKET_UPLINK_DUMMY_CONTROL_BLOCK:
8794     {
8795       /*ret =*/ csnStreamDissector(rlcmac_tree, &ar, CSNDESCR(Packet_Uplink_Dummy_Control_Block_t), tvb, &data->u.Packet_Uplink_Dummy_Control_Block, ett_gsm_rlcmac);
8796       break;
8797     }
8798     case MT_PACKET_MEASUREMENT_REPORT:
8799     {
8800       /*ret =*/ csnStreamDissector(rlcmac_tree, &ar, CSNDESCR(Packet_Measurement_Report_t), tvb, &data->u.Packet_Measurement_Report, ett_gsm_rlcmac);
8801       break;
8802     }
8803     case MT_PACKET_RESOURCE_REQUEST:
8804     {
8805       /*ret =*/ csnStreamDissector(rlcmac_tree, &ar, CSNDESCR(Packet_Resource_Request_t), tvb, &data->u.Packet_Resource_Request, ett_gsm_rlcmac);
8806       break;
8807     }
8808 
8809     case MT_PACKET_MOBILE_TBF_STATUS:
8810     {
8811       /*ret =*/ csnStreamDissector(rlcmac_tree, &ar, CSNDESCR(Packet_Mobile_TBF_Status_t), tvb, &data->u.Packet_Mobile_TBF_Status, ett_gsm_rlcmac);
8812       break;
8813     }
8814     case MT_PACKET_PSI_STATUS:
8815     {
8816       /*ret =*/ csnStreamDissector(rlcmac_tree, &ar, CSNDESCR(Packet_PSI_Status_t), tvb, &data->u.Packet_PSI_Status, ett_gsm_rlcmac);
8817       break;
8818     }
8819     case MT_EGPRS_PACKET_DOWNLINK_ACK_NACK:
8820     {
8821       /*ret =*/ csnStreamDissector(rlcmac_tree, &ar, CSNDESCR(EGPRS_PD_AckNack_t), tvb, &data->u.Egprs_Packet_Downlink_Ack_Nack, ett_gsm_rlcmac);
8822       break;
8823     }
8824     case MT_PACKET_PAUSE:
8825     {
8826       /*ret =*/ csnStreamDissector(rlcmac_tree, &ar, CSNDESCR(Packet_Pause_t), tvb, &data->u.Packet_Pause, ett_gsm_rlcmac);
8827       break;
8828     }
8829     case MT_PACKET_ENHANCED_MEASUREMENT_REPORT:
8830     {
8831       /*ret =*/ csnStreamDissector(rlcmac_tree, &ar, CSNDESCR(Packet_Enh_Measurement_Report_t), tvb, &data->u.Packet_Enh_Measurement_Report, ett_gsm_rlcmac);
8832       break;
8833     }
8834     case MT_ADDITIONAL_MS_RAC:
8835     {
8836       /*ret =*/ csnStreamDissector(rlcmac_tree, &ar, CSNDESCR(Additional_MS_Rad_Access_Cap_t), tvb, &data->u.Additional_MS_Rad_Access_Cap, ett_gsm_rlcmac);
8837       break;
8838     }
8839     case MT_PACKET_CELL_CHANGE_NOTIFICATION:
8840     {
8841       /*ret =*/ csnStreamDissector(rlcmac_tree, &ar, CSNDESCR(Packet_Cell_Change_Notification_t), tvb, &data->u.Packet_Cell_Change_Notification, ett_gsm_rlcmac);
8842       break;
8843     }
8844     case MT_PACKET_SI_STATUS:
8845     {
8846       /*ret =*/ csnStreamDissector(rlcmac_tree, &ar, CSNDESCR(Packet_SI_Status_t), tvb, &data->u.Packet_SI_Status, ett_gsm_rlcmac);
8847       break;
8848     }
8849     default:
8850       /*ret = -1;*/
8851       break;
8852   }
8853 }
8854 
8855 static void
dissect_dl_rlc_control_message(tvbuff_t * tvb,packet_info * pinfo,proto_tree * tree,RlcMacDownlink_t * data,guint16 initial_bit_offset,guint16 bit_length)8856 dissect_dl_rlc_control_message(tvbuff_t *tvb, packet_info* pinfo, proto_tree *tree, RlcMacDownlink_t *data, guint16 initial_bit_offset, guint16 bit_length)
8857 {
8858   csnStream_t  ar;
8859   proto_item  *ti;
8860   proto_tree  *rlcmac_tree;
8861   guint16      bit_offset = initial_bit_offset;
8862 
8863   ti = proto_tree_add_protocol_format(tree, proto_gsm_rlcmac, tvb, bit_offset >> 3, -1,
8864                                       "%s (%d) (downlink)",
8865                                       val_to_str_ext(data->u.MESSAGE_TYPE, &dl_rlc_message_type_vals_ext, "Unknown Message Type"),
8866                                       data->u.MESSAGE_TYPE);
8867   rlcmac_tree = proto_item_add_subtree(ti, ett_gsm_rlcmac);
8868   /* Initialize the contexts */
8869   csnStreamInit(&ar, bit_offset, bit_length - bit_offset, pinfo);
8870 
8871   switch (data->u.MESSAGE_TYPE)
8872   {
8873     case MT_PACKET_ACCESS_REJECT:
8874     {
8875       /*ret =*/ csnStreamDissector(rlcmac_tree, &ar, CSNDESCR(Packet_Access_Reject_t), tvb, &data->u.Packet_Access_Reject, ett_gsm_rlcmac);
8876       break;
8877     }
8878     case MT_PACKET_CELL_CHANGE_ORDER:
8879     {
8880       /*ret =*/ csnStreamDissector(rlcmac_tree, &ar, CSNDESCR(Packet_Cell_Change_Order_t), tvb, &data->u.Packet_Cell_Change_Order, ett_gsm_rlcmac);
8881       break;
8882     }
8883     case MT_PACKET_CELL_CHANGE_CONTINUE:
8884     {
8885       /*ret =*/ csnStreamDissector(rlcmac_tree, &ar, CSNDESCR(Packet_Cell_Change_Continue_t), tvb, &data->u.Packet_Cell_Change_Continue, ett_gsm_rlcmac);
8886       break;
8887     }
8888     case MT_PACKET_DOWNLINK_ASSIGNMENT:
8889     {
8890       /*ret =*/ csnStreamDissector(rlcmac_tree, &ar, CSNDESCR(Packet_Downlink_Assignment_t), tvb, &data->u.Packet_Downlink_Assignment, ett_gsm_rlcmac);
8891       break;
8892     }
8893     case MT_PACKET_MEASUREMENT_ORDER:
8894     {
8895       /*ret =*/ csnStreamDissector(rlcmac_tree, &ar, CSNDESCR(Packet_Measurement_Order_t), tvb, &data->u.Packet_Measurement_Order, ett_gsm_rlcmac);
8896       break;
8897     }
8898     case MT_PACKET_NEIGHBOUR_CELL_DATA:
8899     {
8900       /*ret =*/ csnStreamDissector(rlcmac_tree, &ar, CSNDESCR(Packet_Neighbour_Cell_Data_t), tvb, &data->u.Packet_Neighbour_Cell_Data, ett_gsm_rlcmac);
8901       break;
8902     }
8903     case MT_PACKET_SERVING_CELL_DATA:
8904     {
8905       /*ret =*/ csnStreamDissector(rlcmac_tree, &ar, CSNDESCR(Packet_Serving_Cell_Data_t), tvb, &data->u.Packet_Serving_Cell_Data, ett_gsm_rlcmac);
8906       break;
8907     }
8908     case MT_PACKET_PAGING_REQUEST:
8909     {
8910       /*ret =*/ csnStreamDissector(rlcmac_tree, &ar, CSNDESCR(Packet_Paging_Request_t), tvb, &data->u.Packet_Paging_Request, ett_gsm_rlcmac);
8911       break;
8912     }
8913     case MT_PACKET_PDCH_RELEASE:
8914     {
8915       /*ret =*/ csnStreamDissector(rlcmac_tree, &ar, CSNDESCR(Packet_PDCH_Release_t), tvb, &data->u.Packet_PDCH_Release, ett_gsm_rlcmac);
8916       break;
8917     }
8918     case MT_PACKET_POLLING_REQ:
8919     {
8920       /*ret =*/ csnStreamDissector(rlcmac_tree, &ar, CSNDESCR(Packet_Polling_Request_t), tvb, &data->u.Packet_Polling_Request, ett_gsm_rlcmac);
8921       break;
8922     }
8923     case MT_PACKET_POWER_CONTROL_TIMING_ADVANCE:
8924     {
8925       /*ret =*/ csnStreamDissector(rlcmac_tree, &ar, CSNDESCR(Packet_Power_Control_Timing_Advance_t), tvb, &data->u.Packet_Power_Control_Timing_Advance, ett_gsm_rlcmac);
8926       break;
8927     }
8928     case MT_PACKET_PRACH_PARAMETERS:
8929     {
8930       /*ret =*/ csnStreamDissector(rlcmac_tree, &ar, CSNDESCR(Packet_PRACH_Parameters_t), tvb, &data->u.Packet_PRACH_Parameters, ett_gsm_rlcmac);
8931       break;
8932     }
8933     case MT_PACKET_QUEUEING_NOTIFICATION:
8934     {
8935       /*ret =*/ csnStreamDissector(rlcmac_tree, &ar, CSNDESCR(Packet_Queueing_Notification_t), tvb, &data->u.Packet_Queueing_Notification, ett_gsm_rlcmac);
8936       break;
8937     }
8938     case MT_PACKET_TIMESLOT_RECONFIGURE:
8939     {
8940       /*ret =*/ csnStreamDissector(rlcmac_tree, &ar, CSNDESCR(Packet_Timeslot_Reconfigure_t), tvb, &data->u.Packet_Timeslot_Reconfigure, ett_gsm_rlcmac);
8941       break;
8942     }
8943     case MT_PACKET_TBF_RELEASE:
8944     {
8945       /*ret =*/ csnStreamDissector(rlcmac_tree, &ar, CSNDESCR(Packet_TBF_Release_t), tvb, &data->u.Packet_TBF_Release, ett_gsm_rlcmac);
8946       break;
8947     }
8948     case MT_PACKET_UPLINK_ACK_NACK:
8949     {
8950       /*ret =*/ csnStreamDissector(rlcmac_tree, &ar, CSNDESCR(Packet_Uplink_Ack_Nack_t), tvb, &data->u.Packet_Uplink_Ack_Nack, ett_gsm_rlcmac);
8951       break;
8952     }
8953     case MT_PACKET_UPLINK_ASSIGNMENT:
8954     {
8955       /*ret =*/ csnStreamDissector(rlcmac_tree, &ar, CSNDESCR(Packet_Uplink_Assignment_t), tvb, &data->u.Packet_Uplink_Assignment, ett_gsm_rlcmac);
8956       break;
8957     }
8958     case MT_PACKET_HANDOVER_COMMAND:
8959     {
8960       /*ret =*/ csnStreamDissector(rlcmac_tree, &ar, CSNDESCR(Packet_Handover_Command_t), tvb, &data->u.Packet_Handover_Command, ett_gsm_rlcmac);
8961       break;
8962     }
8963     case MT_PACKET_PHYSICAL_INFORMATION:
8964     {
8965       /*ret =*/ csnStreamDissector(rlcmac_tree, &ar, CSNDESCR(Packet_PhysicalInformation_t), tvb, &data->u.Packet_Handover_Command, ett_gsm_rlcmac);
8966       break;
8967     }
8968     case MT_PACKET_DOWNLINK_DUMMY_CONTROL_BLOCK:
8969     {
8970       /*ret =*/ csnStreamDissector(rlcmac_tree, &ar, CSNDESCR(Packet_Downlink_Dummy_Control_Block_t), tvb, &data->u.Packet_Downlink_Dummy_Control_Block, ett_gsm_rlcmac);
8971       break;
8972     }
8973     case MT_PACKET_SYSTEM_INFO_1:
8974     {
8975       /*ret =*/ csnStreamDissector(rlcmac_tree, &ar, CSNDESCR(PSI1_t), tvb, &data->u.PSI1, ett_gsm_rlcmac);
8976       break;
8977     }
8978     case MT_PACKET_SYSTEM_INFO_2:
8979     {
8980       /*ret =*/ csnStreamDissector(rlcmac_tree, &ar, CSNDESCR(PSI2_t), tvb, &data->u.PSI2, ett_gsm_rlcmac);
8981       break;
8982     }
8983     case MT_PACKET_SYSTEM_INFO_3:
8984     {
8985       /*ret =*/ csnStreamDissector(rlcmac_tree, &ar, CSNDESCR(PSI3_t), tvb, &data->u.PSI3, ett_gsm_rlcmac);
8986       break;
8987     }
8988     case MT_PACKET_SYSTEM_INFO_5:
8989     {
8990       /*ret =*/ csnStreamDissector(rlcmac_tree, &ar, CSNDESCR(PSI5_t), tvb, &data->u.PSI5, ett_gsm_rlcmac);
8991       break;
8992     }
8993     case MT_PACKET_SYSTEM_INFO_13:
8994     {
8995       /*ret =*/ csnStreamDissector(rlcmac_tree, &ar, CSNDESCR(PSI13_t), tvb, &data->u.PSI13, ett_gsm_rlcmac);
8996       break;
8997     }
8998     default:
8999       /*ret = -1;*/
9000       break;
9001   }
9002 }
9003 
9004 static void
dissect_dl_gprs_block(tvbuff_t * tvb,packet_info * pinfo,proto_tree * tree,RlcMacDownlink_t * data)9005 dissect_dl_gprs_block(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, RlcMacDownlink_t * data)
9006 {
9007   /* See RLC/MAC downlink control block structure in TS 44.060 / 10.3.1 */
9008   proto_item  *ti          = NULL;
9009   proto_tree  *rlcmac_tree = NULL;
9010   csnStream_t  ar;
9011   gint         bit_offset  = 0;
9012   guint16      bit_length  = tvb_reported_length(tvb) * 8;
9013 
9014   guint8 payload_type = tvb_get_bits8(tvb, 0, 2);
9015   guint8 s_p  = tvb_get_bits8(tvb, 4, 1);
9016   guint8 rbsn = tvb_get_bits8(tvb, 8, 1);
9017   guint8 fs   = tvb_get_bits8(tvb, 14, 1);
9018   guint8 ac   = tvb_get_bits8(tvb, 15, 1);
9019 
9020   col_append_sep_str(pinfo->cinfo, COL_INFO, ":", "GPRS DL");
9021   if (payload_type == PAYLOAD_TYPE_DATA)
9022   {
9023     length_indicator_t  li_array[7];
9024     guint8              li_count    = array_length(li_array);
9025     guint8              cs = (data->block_format & 0x0F);
9026     guint64 e;
9027 
9028     col_set_str(pinfo->cinfo, COL_PROTOCOL, "GSM RLC/MAC");
9029     col_append_sep_fstr(pinfo->cinfo, COL_INFO, " ", "DATA: CS%d", cs);
9030     ti = proto_tree_add_protocol_format(tree, proto_gsm_rlcmac, tvb, bit_offset >> 3, -1,
9031                                         "GPRS DL DATA (CS%d)", cs);
9032     rlcmac_tree = proto_item_add_subtree(ti, ett_gsm_rlcmac);
9033 
9034     csnStreamInit(&ar, 0, bit_length, pinfo);
9035 
9036     /* dissect the RLC header */
9037     csnStreamDissector(rlcmac_tree, &ar, CSNDESCR(DL_Data_Block_GPRS_t), tvb, &data->u.DL_Data_Block_GPRS, ett_gsm_rlcmac);
9038     bit_offset = ar.bit_offset;
9039 
9040 
9041     //col_append_fstr()
9042     col_append_str_uint(pinfo->cinfo, COL_INFO, "TFI", data->u.DL_Data_Block_GPRS.TFI, " ");
9043     col_append_str_uint(pinfo->cinfo, COL_INFO, "BSN", data->u.DL_Data_Block_GPRS.BSN, " ");
9044     col_append_str_uint(pinfo->cinfo, COL_INFO, "USF", data->u.DL_Data_Block_GPRS.DL_Data_Mac_Header.USF, " ");
9045     if (data->u.DL_Data_Block_GPRS.DL_Data_Mac_Header.S_P)
9046         col_append_str(pinfo->cinfo, COL_INFO, " [RRBP]");
9047     if (data->u.DL_Data_Block_GPRS.FBI)
9048         col_append_str(pinfo->cinfo, COL_INFO, " [FBI]");
9049 
9050     /* build the array of data segment descriptors */
9051     e = data->u.DL_Data_Block_GPRS.E;
9052     bit_offset += 8 * construct_gprs_data_segment_li_array(tvb, rlcmac_tree, pinfo,
9053                                                            bit_offset / 8,
9054                                                            &li_count,
9055                                                            li_array,
9056                                                            &e);
9057     if (e)
9058     {
9059       /* dissect the data segments */
9060       /*bit_offset += 8 * */ dissect_gprs_data_segments(tvb, pinfo, rlcmac_tree,
9061                                                          bit_offset / 8, bit_length / 8,
9062                                                          FALSE, cs, li_count, li_array);
9063     }
9064     else
9065     {
9066       proto_tree_add_expert(tree, pinfo, &ei_gsm_rlcmac_unexpected_header_extension, tvb, bit_offset >> 3, 1);
9067     }
9068 
9069     return;
9070   }
9071   else if (payload_type == PAYLOAD_TYPE_RESERVED)
9072   {
9073     col_append_sep_str(pinfo->cinfo, COL_INFO, ": ", "GSM RLC/MAC RESERVED MESSAGE TYPE");
9074     /* Dissect the MAC header */
9075     ti = proto_tree_add_protocol_format(tree, proto_gsm_rlcmac, tvb, bit_offset >> 3, -1, "Payload Type: RESERVED (0), not implemented");
9076     rlcmac_tree = proto_item_add_subtree(ti, ett_gsm_rlcmac);
9077     proto_tree_add_bits_item(rlcmac_tree, hf_dl_payload_type, tvb, 0, 2, ENC_BIG_ENDIAN);
9078     proto_tree_add_bits_item(rlcmac_tree, hf_rrbp, tvb, 2, 2, ENC_BIG_ENDIAN);
9079     proto_tree_add_bits_item(rlcmac_tree, hf_s_p, tvb, 4, 1, ENC_BIG_ENDIAN);
9080     proto_tree_add_bits_item(rlcmac_tree, hf_usf, tvb, 5, 3, ENC_BIG_ENDIAN);
9081     return;
9082   }
9083   /* We can decode the message */
9084   else if (data->block_format == RLCMAC_CS1)
9085   {
9086     /* First print the message type and create a tree item */
9087     guint8 message_type_offset = 8;
9088     if (payload_type == PAYLOAD_TYPE_CTRL_OPT_OCTET)
9089     {
9090       message_type_offset += 8;
9091       if (ac == 1)
9092       {
9093         message_type_offset += 8;
9094       }
9095       if ((rbsn == 1) && (fs == 0))
9096       {
9097         message_type_offset += 8;
9098       }
9099     }
9100     data->u.MESSAGE_TYPE = tvb_get_bits8(tvb, message_type_offset, 6);
9101     col_append_sep_fstr(pinfo->cinfo, COL_INFO, " CTRL: ", "%s", val_to_str_ext(data->u.MESSAGE_TYPE, &dl_rlc_message_type_vals_ext, "Unknown Message Type"));
9102     if (s_p)
9103         col_append_str(pinfo->cinfo, COL_INFO, " [RRBP]");
9104     ti = proto_tree_add_protocol_format(tree, proto_gsm_rlcmac, tvb, bit_offset >> 3, -1,
9105                                         "GSM RLC/MAC: %s (%d) (Downlink)",
9106                                         val_to_str_ext(data->u.MESSAGE_TYPE, &dl_rlc_message_type_vals_ext, "Unknown Message Type"),
9107                                         data->u.MESSAGE_TYPE);
9108     rlcmac_tree = proto_item_add_subtree(ti, ett_gsm_rlcmac);
9109 
9110     /* Dissect the MAC header */
9111     proto_tree_add_bits_item(rlcmac_tree, hf_dl_payload_type, tvb, 0, 2, ENC_BIG_ENDIAN);
9112     proto_tree_add_bits_item(rlcmac_tree, hf_rrbp, tvb, 2, 2, ENC_BIG_ENDIAN);
9113     proto_tree_add_bits_item(rlcmac_tree, hf_s_p, tvb, 4, 1, ENC_BIG_ENDIAN);
9114     proto_tree_add_bits_item(rlcmac_tree, hf_usf, tvb, 5, 3, ENC_BIG_ENDIAN);
9115     bit_offset += 8;
9116 
9117 
9118     if (payload_type == PAYLOAD_TYPE_CTRL_OPT_OCTET)
9119     {
9120       proto_tree_add_bits_item(rlcmac_tree, hf_dl_ctrl_rbsn, tvb, 8, 1, ENC_BIG_ENDIAN);
9121       proto_tree_add_bits_item(rlcmac_tree, hf_dl_ctrl_rti, tvb, 9, 5, ENC_BIG_ENDIAN);
9122       proto_tree_add_bits_item(rlcmac_tree, hf_dl_ctrl_fs, tvb, 14, 1, ENC_BIG_ENDIAN);
9123       proto_tree_add_bits_item(rlcmac_tree, hf_dl_ctrl_ac, tvb, 15, 1, ENC_BIG_ENDIAN);
9124       bit_offset += 8;
9125 
9126       if (ac == 1) /* Indicates presence of TFI optional octet*/
9127       {
9128         guint8 ctrl_d = tvb_get_bits8(tvb, 23, 1);
9129 
9130         proto_tree_add_bits_item(rlcmac_tree, hf_dl_ctrl_pr, tvb, 16, 2, ENC_BIG_ENDIAN);
9131         proto_tree_add_bits_item(rlcmac_tree, (ctrl_d?hf_downlink_tfi:hf_uplink_tfi), tvb, 18, 5, ENC_BIG_ENDIAN);
9132         proto_tree_add_bits_item(rlcmac_tree, hf_dl_ctrl_d, tvb, 23, 1, ENC_BIG_ENDIAN);
9133         bit_offset += 8;
9134       }
9135       if ((rbsn == 1) && (fs == 0)) /* Indicates the presence of optional octet 2/3 */
9136       {
9137         proto_tree_add_bits_item(rlcmac_tree, hf_dl_ctrl_rbsn_e, tvb, bit_offset, 3, ENC_BIG_ENDIAN);
9138         bit_offset += 3;
9139         proto_tree_add_bits_item(rlcmac_tree, hf_dl_ctrl_fs_e, tvb, bit_offset++, 1, ENC_BIG_ENDIAN);
9140         proto_tree_add_bits_item(rlcmac_tree, hf_dl_ctrl_spare, tvb, bit_offset, 4, ENC_BIG_ENDIAN);
9141         bit_offset += 4;
9142       }
9143     }
9144     dissect_dl_rlc_control_message(tvb, pinfo, rlcmac_tree, data, bit_offset, bit_length);
9145   }
9146   else
9147   {
9148     proto_tree_add_expert_format(tree, pinfo, &ei_gsm_rlcmac_coding_scheme_invalid, tvb, bit_offset >> 3, -1, "GPRS block with invalid coding scheme (%d) for RLC Control",
9149                         data->block_format);
9150   }
9151 }
9152 
9153 static void
dissect_egprs_dl_header_block(tvbuff_t * tvb,packet_info * pinfo,proto_tree * tree,RlcMacDownlink_t * data,RlcMacPrivateData_t * rlc_mac)9154 dissect_egprs_dl_header_block(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, RlcMacDownlink_t *data, RlcMacPrivateData_t *rlc_mac)
9155 {
9156   if (data->flags & GSM_RLC_MAC_EGPRS_FANR_FLAG)
9157   {
9158     proto_tree_add_expert(tree, pinfo, &ei_gsm_rlcmac_gprs_fanr_header_dissection_not_supported, tvb, 0, -1);
9159   }
9160   else
9161   {
9162     proto_item  *ti;
9163     proto_tree  *rlcmac_tree;
9164     csnStream_t  ar;
9165 
9166     guint16      bit_length = tvb_reported_length(tvb) * 8;
9167 
9168     col_set_str(pinfo->cinfo, COL_PROTOCOL, "GSM RLC/MAC");
9169     col_append_sep_str(pinfo->cinfo, COL_INFO, ":", "EGPRS DL DATA:");
9170     /* Dissect the MAC header */
9171     ti = proto_tree_add_protocol_format(tree, proto_gsm_rlcmac, tvb, 0, -1,
9172                                         "GSM RLC/MAC: EGPRS DL HEADER");
9173     rlcmac_tree = proto_item_add_subtree(ti, ett_gsm_rlcmac);
9174 
9175     rlc_mac->mcs = MCS_INVALID;
9176 
9177     csnStreamInit(&ar, 0, bit_length, pinfo);
9178     switch (data->block_format)
9179     {
9180       case RLCMAC_HDR_TYPE_3:
9181         csnStreamDissector(rlcmac_tree, &ar, CSNDESCR(DL_Data_Block_EGPRS_Header_Type3_t), tvb, &data->u.DL_Data_Block_EGPRS_Header, ett_gsm_rlcmac);
9182         rlc_mac->mcs = egprs_Header_type3_coding_puncturing_scheme_to_mcs[data->u.DL_Data_Block_EGPRS_Header.CPS];
9183         break;
9184 
9185       case RLCMAC_HDR_TYPE_2:
9186         csnStreamDissector(rlcmac_tree, &ar, CSNDESCR(DL_Data_Block_EGPRS_Header_Type2_t), tvb, &data->u.DL_Data_Block_EGPRS_Header, ett_gsm_rlcmac);
9187         rlc_mac->mcs = egprs_Header_type2_coding_puncturing_scheme_to_mcs[data->u.DL_Data_Block_EGPRS_Header.CPS];
9188         break;
9189 
9190       case RLCMAC_HDR_TYPE_1:
9191         csnStreamDissector(rlcmac_tree, &ar, CSNDESCR(DL_Data_Block_EGPRS_Header_Type1_t), tvb, &data->u.DL_Data_Block_EGPRS_Header, ett_gsm_rlcmac);
9192         rlc_mac->mcs = egprs_Header_type1_coding_puncturing_scheme_to_mcs[data->u.DL_Data_Block_EGPRS_Header.CPS];
9193         break;
9194 
9195       default:
9196         proto_tree_add_expert(tree, pinfo, &ei_gsm_rlcmac_egprs_header_type_not_handled, tvb, 0, -1);
9197         break;
9198     }
9199     rlc_mac->u.egprs_dl_header_info.bsn1 = data->u.DL_Data_Block_EGPRS_Header.BSN1;
9200     rlc_mac->u.egprs_dl_header_info.bsn2 =
9201       (data->u.DL_Data_Block_EGPRS_Header.BSN1 + data->u.DL_Data_Block_EGPRS_Header.BSN2_offset) % 2048;
9202 
9203     col_append_sep_fstr(pinfo->cinfo, COL_INFO, " ", "MCS%d", rlc_mac->mcs);
9204     col_append_str_uint(pinfo->cinfo, COL_INFO, "TFI", data->u.DL_Data_Block_EGPRS_Header.TFI, " ");
9205     col_append_str_uint(pinfo->cinfo, COL_INFO, "BSN1", rlc_mac->u.egprs_dl_header_info.bsn1, " ");
9206     if (data->block_format == RLCMAC_HDR_TYPE_1)
9207       col_append_str_uint(pinfo->cinfo, COL_INFO, "BSN2", rlc_mac->u.egprs_dl_header_info.bsn2, " ");
9208     col_append_str_uint(pinfo->cinfo, COL_INFO, "USF", data->u.DL_Data_Block_EGPRS_Header.USF, " ");
9209     if (data->u.DL_Data_Block_EGPRS_Header.ES_P)
9210         col_append_str(pinfo->cinfo, COL_INFO, " [RRBP]");
9211   }
9212 }
9213 
9214 static void
dissect_ec_egprs_dl_header_block(tvbuff_t * tvb,packet_info * pinfo,proto_tree * tree,RlcMacDownlink_t * data,RlcMacPrivateData_t * rlc_mac)9215 dissect_ec_egprs_dl_header_block(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, RlcMacDownlink_t *data, RlcMacPrivateData_t *rlc_mac)
9216 {
9217   if (data->flags & GSM_RLC_MAC_EGPRS_FANR_FLAG)
9218   {
9219     proto_tree_add_expert(tree, pinfo, &ei_gsm_rlcmac_gprs_fanr_header_dissection_not_supported, tvb, 0, -1);
9220   }
9221   else
9222   {
9223     proto_item  *ti;
9224     proto_tree  *rlcmac_tree;
9225     csnStream_t  ar;
9226 
9227     guint16      bit_length = tvb_reported_length(tvb) * 8;
9228 
9229     col_set_str(pinfo->cinfo, COL_PROTOCOL, "GSM RLC/MAC");
9230     col_append_sep_str(pinfo->cinfo, COL_INFO, ":", "EC-GSM-IoT DL:HEADER");
9231     /* Dissect the MAC header */
9232     ti = proto_tree_add_protocol_format(tree, proto_gsm_rlcmac, tvb, 0, -1,
9233                                         "GSM RLC/MAC: EC-GSM-IoT DL HEADER");
9234     rlcmac_tree = proto_item_add_subtree(ti, ett_gsm_rlcmac);
9235 
9236     rlc_mac->mcs = MCS_INVALID;
9237 
9238     csnStreamInit(&ar, 0, bit_length, pinfo);
9239     switch (data->block_format)
9240     {
9241       case RLCMAC_HDR_TYPE_3_EC:
9242         csnStreamDissector(rlcmac_tree, &ar, CSNDESCR(DL_Data_Block_EC_EGPRS_Header_Type3_t), tvb, &data->u.DL_Data_Block_EGPRS_Header, ett_gsm_rlcmac);
9243         rlc_mac->mcs = ec_egprs_Header_type3_coding_puncturing_scheme_to_mcs[data->u.DL_Data_Block_EGPRS_Header.CPS];
9244         break;
9245 
9246       case RLCMAC_HDR_TYPE_1_EC:
9247       case RLCMAC_HDR_TYPE_2_EC:
9248       default:
9249         proto_tree_add_expert(tree, pinfo, &ei_gsm_rlcmac_egprs_header_type_not_handled, tvb, 0, -1);
9250         break;
9251     }
9252     rlc_mac->u.egprs_dl_header_info.bsn1 = data->u.DL_Data_Block_EGPRS_Header.BSN1;
9253     rlc_mac->u.egprs_dl_header_info.bsn2 =
9254       (data->u.DL_Data_Block_EGPRS_Header.BSN1 + data->u.DL_Data_Block_EGPRS_Header.BSN2_offset) % 2048;
9255   }
9256 }
9257 
9258 static void
dissect_ul_rlc_ec_control_message(tvbuff_t * tvb,packet_info * pinfo,proto_tree * tree,RlcMacUplink_t * data)9259 dissect_ul_rlc_ec_control_message(tvbuff_t *tvb, packet_info* pinfo, proto_tree *tree, RlcMacUplink_t *data)
9260 {
9261   csnStream_t  ar;
9262   proto_item  *ti;
9263   proto_tree  *rlcmac_tree;
9264 
9265   csnStreamInit(&ar, 0, tvb_reported_length(tvb) << 3, pinfo);
9266   data->u.MESSAGE_TYPE = tvb_get_bits8(tvb, 0, 5);
9267 
9268   col_append_sep_fstr(pinfo->cinfo, COL_INFO, ":", "EC-GSM-IoT UL:%s", val_to_str_ext(data->u.MESSAGE_TYPE, &ec_ul_rlc_message_type_vals_ext, "Unknown Message Type"));
9269   ti = proto_tree_add_protocol_format(tree, proto_gsm_rlcmac, tvb, 0, -1,
9270                                       "%s (%d) (uplink)",
9271                                       val_to_str_ext(data->u.MESSAGE_TYPE, &ec_ul_rlc_message_type_vals_ext, "Unknown Message Type... "),
9272                                       data->u.MESSAGE_TYPE);
9273   rlcmac_tree = proto_item_add_subtree(ti, ett_gsm_rlcmac);
9274   /* Initialize the contexts */
9275 
9276 
9277   switch (data->u.MESSAGE_TYPE)
9278   {
9279 
9280     case MT_EC_PACKET_CONTROL_ACKNOWLEDGEMENT:
9281     {
9282       csnStreamDissector(rlcmac_tree, &ar, CSNDESCR(EC_Packet_Control_Acknowledgement_t), tvb, &data->u.EC_Packet_Control_Acknowledgement, ett_gsm_rlcmac);
9283     }
9284       break;
9285     case MT_EC_PACKET_DOWNLINK_ACK_NACK:
9286     {
9287       csnStreamDissector(rlcmac_tree, &ar, CSNDESCR(EC_Packet_Downlink_Ack_Nack_t), tvb, &data->u.EC_Packet_Downlink_Ack_Nack, ett_gsm_rlcmac);
9288     }
9289       break;
9290 
9291     default:
9292       /*ret = -1;*/
9293       break;
9294   }
9295 }
9296 
9297 static void
dissect_dl_rlc_ec_control_message(tvbuff_t * tvb,packet_info * pinfo,proto_tree * tree,RlcMacDownlink_t * data)9298 dissect_dl_rlc_ec_control_message(tvbuff_t *tvb, packet_info* pinfo, proto_tree *tree, RlcMacDownlink_t *data)
9299 {
9300   csnStream_t  ar;
9301   proto_item  *ti;
9302   proto_tree  *rlcmac_tree;
9303   guint16      header_bit_offset;
9304   crumb_spec_t crumbs[3];
9305 
9306   header_bit_offset = tvb_get_bits8(tvb, 1, 1) ? 13 : 5;
9307   csnStreamInit(&ar, header_bit_offset, (tvb_reported_length(tvb) << 3) - header_bit_offset, pinfo);
9308   data->u.MESSAGE_TYPE = tvb_get_bits8(tvb, header_bit_offset, 5);
9309 
9310   col_append_sep_fstr(pinfo->cinfo, COL_INFO, ":", "EC-GSM-IoT DL:%s", val_to_str_ext(data->u.MESSAGE_TYPE, &ec_dl_rlc_message_type_vals_ext, "Unknown Message Type"));
9311   ti = proto_tree_add_protocol_format(tree, proto_gsm_rlcmac, tvb, 0, -1,
9312                                       "%s (%d) (downlink)",
9313                                       val_to_str_ext(data->u.MESSAGE_TYPE, &ec_dl_rlc_message_type_vals_ext, "Unknown Message Type... "),
9314                                       data->u.MESSAGE_TYPE);
9315   rlcmac_tree = proto_item_add_subtree(ti, ett_gsm_rlcmac);
9316   /* Initialize the contexts */
9317 
9318   if (header_bit_offset == 5)
9319   {
9320     proto_tree_add_bits_item(rlcmac_tree, hf_dl_ec_ctrl_pr, tvb, 0, 1, ENC_BIG_ENDIAN);
9321   }
9322   proto_tree_add_bits_item(rlcmac_tree, hf_dl_ec_payload_type, tvb, 1, 1, ENC_BIG_ENDIAN);
9323   proto_tree_add_bits_item(rlcmac_tree, hf_ec_rrbp, tvb, 2, 2, ENC_BIG_ENDIAN);
9324   proto_tree_add_bits_item(rlcmac_tree, hf_s_p, tvb, 4, 1, ENC_BIG_ENDIAN);
9325   if (header_bit_offset == 13)
9326   {
9327     crumbs[0].crumb_bit_offset = 0;
9328     crumbs[0].crumb_bit_length = 1;
9329     crumbs[1].crumb_bit_offset = 5;
9330     crumbs[1].crumb_bit_length = 1;
9331     crumbs[2].crumb_bit_offset = 0;
9332     crumbs[2].crumb_bit_length = 0;
9333     proto_tree_add_split_bits_item_ret_val(rlcmac_tree, hf_dl_ec_ctrl_pre, tvb, 0, crumbs, NULL);
9334     proto_tree_add_bits_item(rlcmac_tree, hf_dl_ctrl_rbsn, tvb, 6, 1, ENC_BIG_ENDIAN);
9335     proto_tree_add_bits_item(rlcmac_tree, hf_dl_ctrl_fs, tvb, 7, 1, ENC_BIG_ENDIAN);
9336     proto_tree_add_bits_item(rlcmac_tree, hf_downlink_tfi, tvb, 8, 5, ENC_BIG_ENDIAN);
9337   }
9338 
9339   switch (data->u.MESSAGE_TYPE)
9340   {
9341 
9342     case MT_EC_PACKET_ACCESS_REJECT:
9343     {
9344       csnStreamDissector(rlcmac_tree, &ar, CSNDESCR(EC_Packet_Access_Reject_t), tvb, &data->u.EC_Packet_Access_Reject, ett_gsm_rlcmac);
9345     }
9346       break;
9347     case MT_EC_PACKET_DOWNLINK_ASSIGNMENT:
9348     {
9349       csnStreamDissector(rlcmac_tree, &ar, CSNDESCR(EC_Packet_Downlink_Assignment_t), tvb, &data->u.EC_Packet_Downlink_Assignment, ett_gsm_rlcmac);
9350       break;
9351     }
9352     case MT_EC_PACKET_POLLING_REQ:
9353     {
9354       csnStreamDissector(rlcmac_tree, &ar, CSNDESCR(EC_Packet_Polling_Req_t), tvb, &data->u.EC_Packet_Polling_Req, ett_gsm_rlcmac);
9355       break;
9356     }
9357     case MT_EC_PACKET_POWER_CONTROL_TIMING_ADVANCE:
9358     {
9359       csnStreamDissector(rlcmac_tree, &ar, CSNDESCR(EC_Packet_Power_Control_Timing_Advance_t), tvb, &data->u.EC_Packet_Power_Control_Timing_Advance, ett_gsm_rlcmac);
9360       break;
9361     }
9362     case MT_EC_PACKET_TBF_RELEASE:
9363     {
9364       csnStreamDissector(rlcmac_tree, &ar, CSNDESCR(EC_Packet_Tbf_Release_t), tvb, &data->u.EC_Packet_Tbf_Release, ett_gsm_rlcmac);
9365       break;
9366     }
9367     case MT_EC_PACKET_UPLINK_ACK_NACK:
9368     {
9369       csnStreamDissector(rlcmac_tree, &ar, CSNDESCR(EC_Packet_Uplink_Ack_Nack_t), tvb, &data->u.EC_Packet_Uplink_Ack_Nack, ett_gsm_rlcmac);
9370       break;
9371     }
9372     case MT_EC_PACKET_UPLINK_ASSIGNMENT:
9373     {
9374       csnStreamDissector(rlcmac_tree, &ar, CSNDESCR(EC_Packet_Uplink_Assignment_t), tvb, &data->u.EC_Packet_Uplink_Assignment, ett_gsm_rlcmac);
9375       break;
9376     }
9377     case MT_EC_PACKET_UPLINK_ACK_NACK_AND_CONTENTION_RESOLUTION:
9378     {
9379       csnStreamDissector(rlcmac_tree, &ar, CSNDESCR(EC_Packet_Uplink_Ack_Nack_And_Contention_Resolution_t), tvb, &data->u.EC_Packet_Uplink_Ack_Nack_And_Contention_Resolution, ett_gsm_rlcmac);
9380       break;
9381     }
9382     case MT_EC_PACKET_DOWNLINK_DUMMY_CONTROL_BLOCK:
9383     {
9384       csnStreamDissector(rlcmac_tree, &ar, CSNDESCR(EC_Packet_Downlink_Dummy_Control_Block_t), tvb, &data->u.EC_Packet_Downlink_Dummy_Control_Block, ett_gsm_rlcmac);
9385       break;
9386     }
9387     default:
9388       /*ret = -1;*/
9389       break;
9390   }
9391 }
9392 
9393 static void
dissect_ul_pacch_access_burst(tvbuff_t * tvb,packet_info * pinfo,proto_tree * tree,RlcMacUplink_t * data)9394 dissect_ul_pacch_access_burst(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, RlcMacUplink_t * data)
9395 {
9396   proto_item  *ti;
9397   proto_tree  *rlcmac_tree;
9398   csnStream_t  ar;
9399   guint16      bit_length = tvb_reported_length(tvb) * 8;
9400 
9401   col_set_str(pinfo->cinfo, COL_PROTOCOL, "GSM RLC/MAC");
9402   col_append_sep_str(pinfo->cinfo, COL_INFO, ":", "PACCH ACCESS BURST");
9403   ti = proto_tree_add_protocol_format(tree, proto_gsm_rlcmac, tvb, 0, -1,
9404                                       "GPRS UL PACCH ACCESS BURST");
9405   rlcmac_tree = proto_item_add_subtree(ti, ett_gsm_rlcmac);
9406 
9407   /* Table 11.2.2.1: PACKET CONTROL ACKNOWLEDGEMENT */
9408   /* < Packet Control Acknowledgement 11 bit message > ::=  -- 11-bit access burst format
9409    *
9410    * < MESSAGE_TYPE : bit (9) == 1111 1100 1 >
9411    * |    {    < MESSAGE_TYPE : bit (6) == 110111 >
9412    */
9413   if ((bit_length > 8) && (tvb_get_bits16(tvb, 0, 9, ENC_BIG_ENDIAN) == 0x1F9))
9414   {
9415     csnStreamInit(&ar, 0, bit_length, pinfo);
9416     csnStreamDissector(rlcmac_tree, &ar, CSNDESCR(UL_Packet_Control_Ack_11_t), tvb, &data->u.UL_Packet_Control_Ack_11, ett_gsm_rlcmac);
9417   }
9418   else if ((bit_length > 8) && (tvb_get_bits8(tvb, 0, 6) == 0x37))
9419   {
9420     csnStreamInit(&ar, 0, bit_length, pinfo);
9421     csnStreamDissector(rlcmac_tree, &ar, CSNDESCR(UL_Packet_Control_Ack_TN_RRBP_11_t), tvb, &data->u.UL_Packet_Control_Ack_TN_RRBP_11, ett_gsm_rlcmac);
9422   }
9423   /* < Packet Control Acknowledgement 8 bit message > ::=    -- 8-bit access burst format
9424   * < MESSAGE_TYPE : bit (6) == 0111 11 >
9425   * |    {    < MESSAGE_TYPE : bit (3) == 000>
9426   */
9427   else if (tvb_get_bits8(tvb, 0, 6) == 0x1F)
9428   {
9429     csnStreamInit(&ar, 0, bit_length, pinfo);
9430     csnStreamDissector(rlcmac_tree, &ar, CSNDESCR(UL_Packet_Control_Ack_8_t), tvb, &data->u.UL_Packet_Control_Ack_8, ett_gsm_rlcmac);
9431   }
9432   else if (tvb_get_bits8(tvb, 0, 3) == 0x0)
9433   {
9434     csnStreamInit(&ar, 0, bit_length, pinfo);
9435     csnStreamDissector(rlcmac_tree, &ar, CSNDESCR(UL_Packet_Control_Ack_TN_RRBP_8_t), tvb, &data->u.UL_Packet_Control_Ack_TN_RRBP_8, ett_gsm_rlcmac);
9436   }
9437   else
9438   {
9439     proto_tree_add_expert(tree, pinfo, &ei_gsm_rlcmac_unknown_pacch_access_burst, tvb, 0, -1);
9440     call_data_dissector(tvb, pinfo, tree);
9441   }
9442 }
9443 
9444 static void
dissect_ul_gprs_block(tvbuff_t * tvb,packet_info * pinfo,proto_tree * tree,RlcMacUplink_t * data)9445 dissect_ul_gprs_block(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, RlcMacUplink_t * data)
9446 {
9447   csnStream_t ar;
9448   guint8      payload_type = tvb_get_bits8(tvb, 0, 2);
9449   guint16     bit_length   = tvb_reported_length(tvb) * 8;
9450   gint        bit_offset   = 0;
9451 
9452   col_set_str(pinfo->cinfo, COL_PROTOCOL, "GSM RLC/MAC");
9453   col_append_sep_str(pinfo->cinfo, COL_INFO, ":", "GPRS UL");
9454   if (payload_type == PAYLOAD_TYPE_DATA)
9455   {
9456     proto_item *ti;
9457     proto_tree *rlcmac_tree;
9458     guint64     e;
9459     length_indicator_t li_array[10];
9460     guint8             li_count = array_length(li_array);
9461     guint8             cs = data->block_format & 0x0F;
9462 
9463     col_append_sep_fstr(pinfo->cinfo, COL_INFO, " ", "DATA: CS%d", cs);
9464     ti = proto_tree_add_protocol_format(tree, proto_gsm_rlcmac, tvb, bit_offset >> 3, -1,
9465                                         "GPRS UL DATA (CS%d)", cs);
9466     rlcmac_tree = proto_item_add_subtree(ti, ett_gsm_rlcmac);
9467     data->u.UL_Data_Block_GPRS.TI = 0;
9468     data->u.UL_Data_Block_GPRS.PI = 0;
9469 
9470     csnStreamInit(&ar, 0, bit_length, pinfo);
9471 
9472     /* dissect the RLC header */
9473     csnStreamDissector(rlcmac_tree, &ar, CSNDESCR(UL_Data_Block_GPRS_t), tvb, &data->u.UL_Data_Block_GPRS, ett_gsm_rlcmac);
9474     bit_offset = ar.bit_offset;
9475 
9476     col_append_str_uint(pinfo->cinfo, COL_INFO, "TFI", data->u.UL_Data_Block_GPRS.TFI, " ");
9477     col_append_str_uint(pinfo->cinfo, COL_INFO, "BSN", data->u.UL_Data_Block_GPRS.BSN, " ");
9478     col_append_str_uint(pinfo->cinfo, COL_INFO, "CV", data->u.UL_Data_Block_GPRS.UL_Data_Mac_Header.Countdown_Value, " ");
9479 
9480     /* build the array of data segment descriptors */
9481     e = data->u.UL_Data_Block_GPRS.E;
9482     bit_offset += 8 * construct_gprs_data_segment_li_array(tvb, rlcmac_tree, pinfo,
9483                                                            bit_offset / 8,
9484                                                            &li_count,
9485                                                            li_array,
9486                                                            &e);
9487 
9488     /* the next fields are present according to earlier flags */
9489     if (data->u.UL_Data_Block_GPRS.TI)
9490     {
9491       proto_tree_add_bits_item(rlcmac_tree, hf_tlli, tvb, bit_offset, 32, ENC_BIG_ENDIAN);
9492       bit_offset += 32;
9493     }
9494     if (data->u.UL_Data_Block_GPRS.PI)
9495     {
9496       proto_tree_add_bits_item(rlcmac_tree, hf_pfi, tvb, bit_offset, 7, ENC_BIG_ENDIAN);
9497       bit_offset += 7;
9498       proto_tree_add_bits_ret_val(rlcmac_tree, hf_e, tvb, bit_offset, 1, &e, ENC_BIG_ENDIAN);
9499       bit_offset ++;
9500     }
9501 
9502     if (e)
9503     {
9504       /* dissect the data segments */
9505       /*bit_offset += 8 * */ dissect_gprs_data_segments(tvb, pinfo, rlcmac_tree,
9506                                                          bit_offset / 8, bit_length / 8,
9507                                                          TRUE, cs, li_count, li_array);
9508     }
9509     else
9510     {
9511       proto_tree_add_expert(tree, pinfo, &ei_gsm_rlcmac_unexpected_header_extension, tvb, bit_offset >> 3, 1);
9512     }
9513   }
9514   else if (payload_type == PAYLOAD_TYPE_RESERVED)
9515   {
9516     proto_tree_add_protocol_format(tree, proto_gsm_rlcmac, tvb, bit_offset >> 3, -1, "Payload Type: RESERVED (3)");
9517     col_append_sep_str(pinfo->cinfo, COL_INFO, ": ",  "GSM RLC/MAC RESERVED MESSAGE TYPE");
9518   }
9519   else if (data->block_format == RLCMAC_CS1)
9520   {
9521     col_append_str(pinfo->cinfo, COL_INFO, " CTRL:");
9522     dissect_ul_rlc_control_message(tvb, pinfo, tree, data, bit_length);
9523   }
9524   else
9525   {
9526     proto_tree_add_expert_format(tree, pinfo, &ei_gsm_rlcmac_coding_scheme_invalid, tvb, bit_offset >> 3, -1, "GPRS UL block with Coding Scheme CS%d and incompatible payload type",
9527                         data->block_format &0x0F);
9528   }
9529 }
9530 static void
dissect_egprs_ul_header_block(tvbuff_t * tvb,packet_info * pinfo,proto_tree * tree,RlcMacUplink_t * data,RlcMacPrivateData_t * rlc_mac)9531 dissect_egprs_ul_header_block(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, RlcMacUplink_t *data, RlcMacPrivateData_t *rlc_mac)
9532 {
9533   if (data->flags & GSM_RLC_MAC_EGPRS_FANR_FLAG)
9534   {
9535     proto_tree_add_expert(tree, pinfo, &ei_gsm_rlcmac_gprs_fanr_header_dissection_not_supported, tvb, 0, -1);
9536   }
9537   else
9538   {
9539     proto_item  *ti;
9540     proto_tree  *rlcmac_tree;
9541     csnStream_t  ar;
9542     guint16      bit_offset = 0;
9543     guint16      bit_length = tvb_reported_length(tvb) * 8;
9544 
9545     col_set_str(pinfo->cinfo, COL_PROTOCOL,  "GSM RLC/MAC");
9546     col_append_sep_str(pinfo->cinfo, COL_INFO, ":",  "EGPRS UL DATA:");
9547     ti = proto_tree_add_protocol_format(tree, proto_gsm_rlcmac, tvb, bit_offset >> 3, -1,
9548                                         "GSM RLC/MAC: EGPRS UL HEADER");
9549     rlcmac_tree = proto_item_add_subtree(ti, ett_gsm_rlcmac);
9550     data->u.UL_Data_Block_EGPRS_Header.PI = 0;
9551     rlc_mac->mcs = MCS_INVALID;
9552     csnStreamInit(&ar, 0, bit_length, pinfo);
9553     switch (data->block_format)
9554     {
9555       case RLCMAC_HDR_TYPE_3:
9556         csnStreamDissector(rlcmac_tree, &ar, CSNDESCR(UL_Data_Block_EGPRS_Header_Type3_t), tvb, &data->u.UL_Data_Block_EGPRS_Header, ett_gsm_rlcmac);
9557         rlc_mac->mcs = egprs_Header_type3_coding_puncturing_scheme_to_mcs[data->u.UL_Data_Block_EGPRS_Header.CPS];
9558         break;
9559 
9560       case RLCMAC_HDR_TYPE_2:
9561         csnStreamDissector(rlcmac_tree, &ar, CSNDESCR(UL_Data_Block_EGPRS_Header_Type2_t), tvb, &data->u.UL_Data_Block_EGPRS_Header, ett_gsm_rlcmac);
9562         rlc_mac->mcs = egprs_Header_type2_coding_puncturing_scheme_to_mcs[data->u.UL_Data_Block_EGPRS_Header.CPS];
9563         break;
9564 
9565       case RLCMAC_HDR_TYPE_1:
9566         csnStreamDissector(rlcmac_tree, &ar, CSNDESCR(UL_Data_Block_EGPRS_Header_Type1_t), tvb, &data->u.UL_Data_Block_EGPRS_Header, ett_gsm_rlcmac);
9567         rlc_mac->mcs = egprs_Header_type1_coding_puncturing_scheme_to_mcs[data->u.UL_Data_Block_EGPRS_Header.CPS];
9568         break;
9569 
9570       default:
9571         proto_tree_add_expert(tree, pinfo, &ei_gsm_rlcmac_egprs_header_type_not_handled, tvb, 0, -1);
9572         break;
9573     }
9574 
9575     rlc_mac->u.egprs_ul_header_info.pi = data->u.UL_Data_Block_EGPRS_Header.PI;
9576     rlc_mac->u.egprs_ul_header_info.bsn1 = data->u.UL_Data_Block_EGPRS_Header.BSN1;
9577     rlc_mac->u.egprs_ul_header_info.bsn2 = (data->u.UL_Data_Block_EGPRS_Header.BSN1 + data->u.UL_Data_Block_EGPRS_Header.BSN2_offset) % 2048;
9578 
9579     col_append_sep_fstr(pinfo->cinfo, COL_INFO, " ", "MCS%d", rlc_mac->mcs);
9580     col_append_str_uint(pinfo->cinfo, COL_INFO, "TFI", data->u.UL_Data_Block_EGPRS_Header.TFI, " ");
9581     col_append_str_uint(pinfo->cinfo, COL_INFO, "BSN1", rlc_mac->u.egprs_ul_header_info.bsn1, " ");
9582     if (data->block_format == RLCMAC_HDR_TYPE_1)
9583       col_append_str_uint(pinfo->cinfo, COL_INFO, "BSN2", rlc_mac->u.egprs_ul_header_info.bsn2, " ");
9584     col_append_str_uint(pinfo->cinfo, COL_INFO, "CV", data->u.UL_Data_Block_EGPRS_Header.Countdown_Value, " ");
9585   }
9586 }
9587 
9588 static void
dissect_ec_egprs_ul_header_block(tvbuff_t * tvb,packet_info * pinfo,proto_tree * tree,RlcMacUplink_t * data,RlcMacPrivateData_t * rlc_mac)9589 dissect_ec_egprs_ul_header_block(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, RlcMacUplink_t *data, RlcMacPrivateData_t *rlc_mac)
9590 {
9591   if (data->flags & GSM_RLC_MAC_EGPRS_FANR_FLAG)
9592   {
9593     proto_tree_add_expert(tree, pinfo, &ei_gsm_rlcmac_gprs_fanr_header_dissection_not_supported, tvb, 0, -1);
9594   }
9595   else
9596   {
9597     proto_item  *ti;
9598     proto_tree  *rlcmac_tree;
9599     csnStream_t  ar;
9600     guint16      bit_offset = 0;
9601     guint16      bit_length = tvb_reported_length(tvb) * 8;
9602 
9603     col_set_str(pinfo->cinfo, COL_PROTOCOL,  "GSM RLC/MAC");
9604     col_append_sep_str(pinfo->cinfo, COL_INFO, ":",  "EC-GSM-IoT UL:HEADER");
9605     ti = proto_tree_add_protocol_format(tree, proto_gsm_rlcmac, tvb, bit_offset >> 3, -1,
9606                                         "GSM RLC/MAC: EC-GSM-IoT UL HEADER");
9607     rlcmac_tree = proto_item_add_subtree(ti, ett_gsm_rlcmac);
9608     data->u.UL_Data_Block_EGPRS_Header.PI = 0;
9609     rlc_mac->mcs = MCS_INVALID;
9610     csnStreamInit(&ar, 0, bit_length, pinfo);
9611     switch (data->block_format)
9612     {
9613       case RLCMAC_HDR_TYPE_3_EC:
9614         csnStreamDissector(rlcmac_tree, &ar, CSNDESCR(UL_Data_Block_EC_EGPRS_Header_Type3_t), tvb, &data->u.UL_Data_Block_EGPRS_Header, ett_gsm_rlcmac);
9615         rlc_mac->mcs = ec_egprs_Header_type3_coding_puncturing_scheme_to_mcs[data->u.UL_Data_Block_EGPRS_Header.CPS];
9616         break;
9617 
9618       case RLCMAC_HDR_TYPE_1_EC:
9619       case RLCMAC_HDR_TYPE_2_EC:
9620       default:
9621         proto_tree_add_expert(tree, pinfo, &ei_gsm_rlcmac_egprs_header_type_not_handled, tvb, 0, -1);
9622         break;
9623     }
9624 
9625     rlc_mac->u.egprs_ul_header_info.pi = data->u.UL_Data_Block_EGPRS_Header.PI;
9626     rlc_mac->u.egprs_ul_header_info.bsn1 = data->u.UL_Data_Block_EGPRS_Header.BSN1;
9627     rlc_mac->u.egprs_ul_header_info.bsn2 = (data->u.UL_Data_Block_EGPRS_Header.BSN1 + data->u.UL_Data_Block_EGPRS_Header.BSN2_offset) % 2048;
9628   }
9629 }
9630 
9631 static void
dissect_egprs_ul_data_block(tvbuff_t * tvb,packet_info * pinfo,proto_tree * tree,RlcMacUplink_t * data,egprs_ul_header_info_t * egprs_ul_header_info)9632 dissect_egprs_ul_data_block(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, RlcMacUplink_t *data, egprs_ul_header_info_t *egprs_ul_header_info)
9633 {
9634   proto_item         *ti;
9635   proto_tree         *data_tree;
9636   gint                offset   = 0;
9637   length_indicator_t  li_array[20];
9638   guint8              li_count = array_length(li_array);
9639   guint64             e, tlli_i;
9640   guint16             block_number;
9641 
9642   block_number = (data->flags & GSM_RLC_MAC_EGPRS_BLOCK2)?egprs_ul_header_info->bsn2:egprs_ul_header_info->bsn1;
9643 
9644   ti = proto_tree_add_protocol_format(tree, proto_gsm_rlcmac, tvb, offset, -1,
9645                                       "GSM RLC/MAC: EGPRS UL DATA BLOCK %d (BSN %d)",
9646                                       (data->flags & GSM_RLC_MAC_EGPRS_BLOCK2)?2:1,
9647                                       block_number);
9648   data_tree = proto_item_add_subtree(ti, ett_gsm_rlcmac_data);
9649 
9650   /* we assume that the body of the data block is octet aligned,
9651      but there are 6 unused bits in the first octet to
9652      achieve alignment of the following octets */
9653 
9654   /* the data block starts with 2 bit header */
9655   proto_tree_add_bits_ret_val(data_tree, hf_ti, tvb, 6, 1, &tlli_i, ENC_BIG_ENDIAN);
9656   proto_tree_add_bits_ret_val(data_tree, hf_e, tvb, 7, 1, &e, ENC_BIG_ENDIAN);
9657   offset ++;
9658 
9659   /* build the array of Length Indicators */
9660   offset += construct_egprs_data_segment_li_array(tvb, data_tree, pinfo, offset,
9661                                                   &li_count,
9662                                                   li_array,
9663                                                   &e);
9664 
9665   /* the next fields are present according to earlier flags */
9666   if (tlli_i)
9667   {
9668     proto_tree_add_item(data_tree, hf_tlli, tvb, offset, 4, ENC_LITTLE_ENDIAN);
9669     offset += 4;
9670   }
9671   if (egprs_ul_header_info->pi)
9672   {
9673     proto_tree_add_bits_item(data_tree, hf_pfi, tvb, offset * 8, 7, ENC_BIG_ENDIAN);
9674     proto_tree_add_bits_ret_val(data_tree, hf_e, tvb, (offset * 8) + 7, 1, &e, ENC_BIG_ENDIAN);
9675     offset ++;
9676   }
9677   if (e)
9678   {
9679     /* dissect the data segments */
9680     dissect_egprs_data_segments(tvb, pinfo, data_tree, offset,
9681                                 tvb_reported_length(tvb), li_count, li_array);
9682   }
9683   else
9684   {
9685     proto_tree_add_expert(tree, pinfo, &ei_gsm_rlcmac_unexpected_header_extension, tvb, offset, 1);
9686   }
9687 }
9688 
9689 
9690 static void
dissect_egprs_dl_data_block(tvbuff_t * tvb,packet_info * pinfo,proto_tree * tree,RlcMacDownlink_t * data,egprs_dl_header_info_t * egprs_dl_header_info)9691 dissect_egprs_dl_data_block(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, RlcMacDownlink_t *data, egprs_dl_header_info_t *egprs_dl_header_info)
9692 {
9693   proto_item         *ti;
9694   proto_tree         *data_tree;
9695   gint                offset   = 0;
9696   guint16             block_number;
9697   length_indicator_t  li_array[20];
9698   guint8              li_count = array_length(li_array);
9699   guint64             fbi, e;
9700 
9701   block_number = (data->flags & GSM_RLC_MAC_EGPRS_BLOCK2)?egprs_dl_header_info->bsn2:egprs_dl_header_info->bsn1;
9702 
9703   ti = proto_tree_add_protocol_format(tree, proto_gsm_rlcmac, tvb, offset, -1,
9704                                       "GSM RLC/MAC: EGPRS DL DATA BLOCK %d (BSN %d)",
9705                                       (data->flags & GSM_RLC_MAC_EGPRS_BLOCK2)?2:1,
9706                                       block_number);
9707   data_tree = proto_item_add_subtree(ti, ett_gsm_rlcmac_data);
9708 
9709   /* we assume that there are 6 null bits in the first octet of each data block,
9710      to give octet alignment of the main body of the block.
9711      This alignment should be guaranteed by the transport-protocol dissector that called this one */
9712 
9713   /* the data block starts with 2 bit header */
9714   proto_tree_add_bits_ret_val(data_tree, hf_fbi, tvb, 6, 1, &fbi, ENC_BIG_ENDIAN);
9715   proto_tree_add_bits_ret_val(data_tree, hf_e, tvb, 7, 1, &e, ENC_BIG_ENDIAN);
9716   offset ++;
9717 
9718   /* build the array of data segment descriptors */
9719   offset += construct_egprs_data_segment_li_array(tvb, data_tree, pinfo, 1,
9720                                                   &li_count,
9721                                                   li_array,
9722                                                   &e);
9723   if (e)
9724   {
9725     /* dissect the data segments */
9726     dissect_egprs_data_segments(tvb, pinfo, data_tree, offset,
9727                                 tvb_reported_length(tvb), li_count, li_array);
9728   }
9729   else
9730   {
9731     proto_tree_add_expert(tree, pinfo, &ei_gsm_rlcmac_unexpected_header_extension, tvb, offset, 1);
9732   }
9733 }
9734 
9735 static int
dissect_gsm_rlcmac_downlink(tvbuff_t * tvb,packet_info * pinfo,proto_tree * tree,void * data)9736 dissect_gsm_rlcmac_downlink(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void* data)
9737 {
9738   RlcMacDownlink_t    *rlc_dl;
9739   RlcMacPrivateData_t *rlc_mac = (RlcMacPrivateData_t*)data;
9740 
9741   /* allocate a data structure and guess the coding scheme */
9742   rlc_dl = wmem_new0(pinfo->pool, RlcMacDownlink_t);
9743 
9744   if ((rlc_mac != NULL) && (rlc_mac->magic == GSM_RLC_MAC_MAGIC_NUMBER))
9745   {
9746     /* the transport protocol dissector has provided a data structure that contains (at least) the Coding Scheme */
9747     rlc_dl->block_format = rlc_mac->block_format;
9748     rlc_dl->flags = rlc_mac->flags;
9749   }
9750   else
9751   {
9752     rlc_dl->block_format = RLCMAC_CS1;
9753     rlc_dl->flags = 0;
9754   }
9755 
9756   switch (rlc_dl->block_format)
9757   {
9758     case RLCMAC_CS1:
9759     case RLCMAC_CS2:
9760     case RLCMAC_CS3:
9761     case RLCMAC_CS4:
9762       dissect_dl_gprs_block(tvb, pinfo, tree, rlc_dl);
9763       break;
9764 
9765     case RLCMAC_HDR_TYPE_1:
9766     case RLCMAC_HDR_TYPE_2:
9767     case RLCMAC_HDR_TYPE_3:
9768       if (rlc_dl->flags & (GSM_RLC_MAC_EGPRS_BLOCK1 | GSM_RLC_MAC_EGPRS_BLOCK2))
9769       {
9770         dissect_egprs_dl_data_block(tvb, pinfo, tree, rlc_dl, &rlc_mac->u.egprs_dl_header_info);
9771       }
9772       else
9773       {
9774         dissect_egprs_dl_header_block(tvb, pinfo, tree, rlc_dl, rlc_mac);
9775       }
9776       break;
9777 
9778     case RLCMAC_EC_CS1:
9779       {
9780         dissect_dl_rlc_ec_control_message(tvb, pinfo, tree, rlc_dl);
9781       }
9782       break;
9783 
9784     case RLCMAC_HDR_TYPE_1_EC:
9785     case RLCMAC_HDR_TYPE_2_EC:
9786     case RLCMAC_HDR_TYPE_3_EC:
9787       if (rlc_dl->flags & (GSM_RLC_MAC_EGPRS_BLOCK1 | GSM_RLC_MAC_EGPRS_BLOCK2))
9788       {
9789         dissect_egprs_dl_data_block(tvb, pinfo, tree, rlc_dl, &rlc_mac->u.egprs_dl_header_info);
9790       }
9791       else
9792       {
9793         dissect_ec_egprs_dl_header_block(tvb, pinfo, tree, rlc_dl, rlc_mac);
9794       }
9795       break;
9796 
9797     default:
9798       proto_tree_add_expert_format(tree, pinfo, &ei_gsm_rlcmac_coding_scheme_unknown, tvb, 0, -1, "GSM RLCMAC unknown coding scheme (%d)", rlc_dl->block_format);
9799       break;
9800   }
9801 
9802   return tvb_reported_length(tvb);
9803 }
9804 
9805 static int
dissect_gsm_ec_rlcmac_downlink(tvbuff_t * tvb,packet_info * pinfo,proto_tree * tree,void * data _U_)9806 dissect_gsm_ec_rlcmac_downlink(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void* data _U_)
9807 {
9808   RlcMacPrivateData_t rlc_mac;
9809 
9810   rlc_mac.magic = GSM_RLC_MAC_MAGIC_NUMBER;
9811   rlc_mac.block_format = RLCMAC_EC_CS1;
9812   rlc_mac.flags = 0;
9813   return dissect_gsm_rlcmac_downlink(tvb, pinfo, tree, &rlc_mac);
9814 }
9815 
9816 static int
dissect_gsm_rlcmac_uplink(tvbuff_t * tvb,packet_info * pinfo,proto_tree * tree,void * data)9817 dissect_gsm_rlcmac_uplink(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void* data)
9818 {
9819   RlcMacUplink_t      *rlc_ul;
9820   RlcMacPrivateData_t *rlc_mac = (RlcMacPrivateData_t*)data;
9821 
9822   /* allocate a data structure and set the coding scheme */
9823   rlc_ul = wmem_new0(pinfo->pool, RlcMacUplink_t);
9824 
9825   if ((rlc_mac != NULL) && (rlc_mac->magic == GSM_RLC_MAC_MAGIC_NUMBER))
9826   {
9827     /* the transport protocol dissector has provided a data structure that contains (at least) the Coding Scheme */
9828     rlc_ul->block_format = rlc_mac->block_format;
9829     rlc_ul->flags = rlc_mac->flags;
9830   }
9831   else if (tvb_reported_length(tvb) < 3)
9832   {
9833     /* assume that little packets are PACCH */
9834     rlc_ul->block_format = RLCMAC_PRACH;
9835     rlc_ul->flags = 0;
9836   }
9837   else
9838   {
9839     rlc_ul->block_format = RLCMAC_CS1;
9840     rlc_ul->flags = 0;
9841   }
9842 
9843   switch (rlc_ul->block_format)
9844   {
9845     case RLCMAC_PRACH:
9846       dissect_ul_pacch_access_burst(tvb, pinfo, tree, rlc_ul);
9847       break;
9848 
9849     case RLCMAC_CS1:
9850     case RLCMAC_CS2:
9851     case RLCMAC_CS3:
9852     case RLCMAC_CS4:
9853       dissect_ul_gprs_block(tvb, pinfo, tree, rlc_ul);
9854       break;
9855 
9856     case RLCMAC_HDR_TYPE_1:
9857     case RLCMAC_HDR_TYPE_2:
9858     case RLCMAC_HDR_TYPE_3:
9859       if (rlc_ul->flags & (GSM_RLC_MAC_EGPRS_BLOCK1 | GSM_RLC_MAC_EGPRS_BLOCK2))
9860       {
9861         dissect_egprs_ul_data_block(tvb, pinfo, tree, rlc_ul, &rlc_mac->u.egprs_ul_header_info);
9862       }
9863       else
9864       {
9865         dissect_egprs_ul_header_block(tvb, pinfo, tree, rlc_ul, rlc_mac);
9866       }
9867       break;
9868     case RLCMAC_EC_CS1:
9869       {
9870         dissect_ul_rlc_ec_control_message(tvb, pinfo, tree, rlc_ul);
9871       }
9872     break;
9873 
9874     case RLCMAC_HDR_TYPE_1_EC:
9875     case RLCMAC_HDR_TYPE_2_EC:
9876     case RLCMAC_HDR_TYPE_3_EC:
9877         if (rlc_ul->flags & (GSM_RLC_MAC_EGPRS_BLOCK1 | GSM_RLC_MAC_EGPRS_BLOCK2))
9878         {
9879             dissect_egprs_ul_data_block(tvb, pinfo, tree, rlc_ul, &rlc_mac->u.egprs_ul_header_info);
9880         }
9881         else
9882         {
9883             dissect_ec_egprs_ul_header_block(tvb, pinfo, tree, rlc_ul, rlc_mac);
9884         }
9885         break;
9886 
9887     default:
9888       proto_tree_add_expert_format(tree, pinfo, &ei_gsm_rlcmac_coding_scheme_unknown, tvb, 0, -1, "GSM RLCMAC unknown coding scheme (%d)", rlc_ul->block_format);
9889       break;
9890   }
9891 
9892   return tvb_reported_length(tvb);
9893 }
9894 
9895 static int
dissect_gsm_ec_rlcmac_uplink(tvbuff_t * tvb,packet_info * pinfo,proto_tree * tree,void * data _U_)9896 dissect_gsm_ec_rlcmac_uplink(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void* data _U_)
9897 {
9898   RlcMacPrivateData_t rlc_mac;
9899 
9900   rlc_mac.magic = GSM_RLC_MAC_MAGIC_NUMBER;
9901   rlc_mac.block_format = RLCMAC_EC_CS1;
9902   rlc_mac.flags = 0;
9903   return dissect_gsm_rlcmac_uplink(tvb, pinfo, tree, &rlc_mac);
9904 }
9905 
9906 void
proto_register_gsm_rlcmac(void)9907 proto_register_gsm_rlcmac(void)
9908 {
9909   /* Setup protocol subtree array */
9910   static gint *ett[] = {
9911     &ett_gsm_rlcmac,
9912     &ett_gsm_rlcmac_data,
9913     &ett_data_segments,
9914     &ett_gsm_rlcmac_container
9915   };
9916   static hf_register_info hf[] = {
9917      { &hf_page_mode,
9918        { "PAGE_MODE",        "gsm_rlcmac.page_mode",
9919          FT_UINT8, BASE_DEC, VALS(page_mode_vals), 0x0,
9920          NULL, HFILL
9921        }
9922      },
9923      { &hf_dl_persistent_level_exist,
9924        { "Exist_PERSISTENCE_LEVEL",        "gsm_rlcmac.persistent_level_exist",
9925          FT_UINT8, BASE_DEC, NULL, 0x0,
9926          NULL, HFILL
9927        }
9928      },
9929      { &hf_dl_persistent_level,
9930        { "PERSISTENCE_LEVEL",        "gsm_rlcmac.persistent_level",
9931          FT_UINT8, BASE_DEC, NULL, 0x0,
9932          NULL, HFILL
9933        }
9934      },
9935      { &hf_bsn,
9936        { "BSN",        "gsm_rlcmac.bsn",
9937          FT_UINT32, BASE_DEC, NULL, 0x0,
9938          NULL, HFILL
9939        }
9940      },
9941      { &hf_bsn2_offset,
9942        { "BSN 2 offset", "gsm_rlcmac.bsn2_offset",
9943          FT_UINT32, BASE_DEC, NULL, 0x0,
9944          NULL, HFILL
9945        }
9946      },
9947      { &hf_e,
9948        { "Extension",        "gsm_rlcmac.e",
9949          FT_BOOLEAN, BASE_NONE, TFS(&e_vals), 0x0,
9950          NULL, HFILL
9951        }
9952      },
9953      { &hf_li,
9954        { "Length Indicator",        "gsm_rlcmac.li",
9955          FT_UINT8, BASE_DEC, NULL, 0x0,
9956          NULL, HFILL
9957        }
9958      },
9959      { &hf_pi,
9960        { "PI",        "gsm_rlcmac.pi",
9961          FT_BOOLEAN, BASE_NONE, TFS(&pi_vals), 0x0,
9962          NULL, HFILL
9963        }
9964      },
9965      { &hf_ti,
9966        { "TI",        "gsm_rlcmac.ti",
9967          FT_BOOLEAN, BASE_NONE, TFS(&ti_vals), 0x0,
9968          NULL, HFILL
9969        }
9970      },
9971      { &hf_rsb,
9972        { "RSB",        "gsm_rlcmac.rsb",
9973          FT_BOOLEAN, BASE_NONE, TFS(&rsb_vals), 0x0,
9974          NULL, HFILL
9975        }
9976      },
9977      { &hf_dl_spb,
9978        { "SPB (DL)",        "gsm_rlcmac.dl.spb",
9979          FT_UINT8, BASE_DEC, VALS(dl_spb_vals), 0x0,
9980          NULL, HFILL
9981        }
9982      },
9983      { &hf_ul_spb,
9984        { "SPB (UL)",        "gsm_rlcmac.ul.spb",
9985          FT_UINT8, BASE_DEC, VALS(ul_spb_vals), 0x0,
9986          NULL, HFILL
9987        }
9988      },
9989      { &hf_cps1,
9990        { "CPS",        "gsm_rlcmac.cps",
9991          FT_UINT8, BASE_HEX|BASE_EXT_STRING, &egprs_Header_type1_coding_puncturing_scheme_vals_ext, 0x0,
9992          NULL, HFILL
9993        }
9994      },
9995      { &hf_cps2,
9996        { "CPS",        "gsm_rlcmac.cps",
9997          FT_UINT8, BASE_HEX|BASE_EXT_STRING, &egprs_Header_type2_coding_puncturing_scheme_vals_ext, 0x0,
9998          NULL, HFILL
9999        }
10000      },
10001      { &hf_cps3,
10002        { "CPS",        "gsm_rlcmac.cps",
10003          FT_UINT8, BASE_HEX|BASE_EXT_STRING, &egprs_Header_type3_coding_puncturing_scheme_vals_ext, 0x0,
10004          NULL, HFILL
10005        }
10006      },
10007      { &hf_ec_cps3,
10008        { "CPS",        "gsm_rlcmac.cps",
10009          FT_UINT8, BASE_HEX|BASE_EXT_STRING, &ec_egprs_Header_type3_coding_puncturing_scheme_vals_ext, 0x0,
10010          NULL, HFILL
10011        }
10012      },
10013      { &hf_me,
10014        { "ME",        "gsm_rlcmac.me",
10015          FT_UINT8, BASE_DEC, VALS(me_vals), 0x0,
10016          NULL, HFILL
10017        }
10018      },
10019      { &hf_countdown_value,
10020        { "CV",
10021          "gsm_rlcmac.ul.cv",
10022          FT_UINT8, BASE_DEC, NULL, 0x0,
10023          NULL, HFILL
10024        }
10025      },
10026      { &hf_ul_data_si,
10027        { "SI",
10028          "gsm_rlcmac.ul.data_si",
10029          FT_BOOLEAN, BASE_NONE, TFS(&si_vals), 0x0,
10030          NULL, HFILL
10031        }
10032      },
10033      { &hf_rrbp,
10034        { "RRBP",
10035          "gsm_rlcmac.rrbp",
10036          FT_UINT8, BASE_DEC, VALS(rrbp_vals), 0x0,
10037          NULL, HFILL
10038        }
10039      },
10040      { &hf_ec_rrbp,
10041        { "RRBP",
10042          "gsm_rlcmac.rrbp",
10043          FT_UINT8, BASE_DEC, NULL, 0x0,
10044          NULL, HFILL
10045        }
10046      },
10047      { &hf_s_p,
10048        { "S/P",
10049          "gsm_rlcmac.s_p",
10050          FT_BOOLEAN, BASE_NONE, TFS(&s_p_vals), 0x0,
10051          NULL, HFILL
10052        }
10053      },
10054      { &hf_es_p,
10055        { "ES/P",
10056          "gsm_rlcmac.es_p",
10057          FT_UINT8, BASE_DEC, VALS(es_p_vals), 0x0,
10058          NULL, HFILL
10059        }
10060      },
10061      { &hf_fbi,
10062        { "FBI",
10063          "gsm_rlcmac.fbi",
10064          FT_BOOLEAN, BASE_NONE, TFS(&fbi_vals), 0x0,
10065          NULL, HFILL
10066        }
10067      },
10068      { &hf_uplink_tfi,
10069        { "UL TFI",
10070          "gsm_rlcmac.ul.tfi",
10071          FT_UINT8, BASE_DEC, NULL, 0x0,
10072          NULL, HFILL
10073        }
10074      },
10075      { &hf_global_tfi,
10076        { "Uplink (0) or Downlink (1) TFI",
10077          "gsm_rlcmac.global.tfi",
10078          FT_UINT8, BASE_DEC, NULL, 0x0,
10079          NULL, HFILL
10080        }
10081      },
10082      { &hf_downlink_tfi,
10083        { "DL TFI",
10084          "gsm_rlcmac.dl.tfi",
10085          FT_UINT8, BASE_DEC, NULL, 0x0,
10086          NULL, HFILL
10087        }
10088      },
10089      { &hf_dl_data_spare,
10090        { "DL SPARE",
10091          "gsm_rlcmac.dl.data_spare",
10092          FT_UINT8, BASE_DEC, NULL, 0x0,
10093          NULL, HFILL
10094        }
10095      },
10096      { &hf_ul_data_spare,
10097        { "UL SPARE",
10098          "gsm_rlcmac.ul.data_spare",
10099          FT_UINT8, BASE_DEC, NULL, 0x0,
10100          NULL, HFILL
10101        }
10102      },
10103      { &hf_pfi,
10104        { "PFI",
10105          "gsm_rlcmac.pfi",
10106          FT_UINT8, BASE_DEC, NULL, 0x0,
10107          NULL, HFILL
10108        }
10109      },
10110      { &hf_usf,
10111        { "USF",
10112          "gsm_rlcmac.usf",
10113          FT_UINT8, BASE_DEC, NULL, 0x0,
10114          NULL, HFILL
10115        }
10116      },
10117      { &hf_dl_payload_type,
10118        { "Payload Type (DL)",
10119          "gsm_rlcmac.dl_payload_type",
10120          FT_UINT8, BASE_DEC, VALS(dl_payload_type_vals), 0x0,
10121          NULL, HFILL
10122        }
10123      },
10124      { &hf_dl_ec_payload_type,
10125        { "Payload Type (DL)",
10126          "gsm_rlcmac.dl_payload_type",
10127          FT_UINT8, BASE_DEC, VALS(dl_ec_payload_type_vals), 0x0,
10128          NULL, HFILL
10129        }
10130      },
10131      { &hf_ul_payload_type,
10132        { "Payload Type (UL)",
10133          "gsm_rlcmac.ul_payload_type",
10134          FT_UINT8, BASE_DEC, VALS(ul_payload_type_vals), 0x0,
10135          NULL, HFILL
10136        }
10137      },
10138      { &hf_prach8_message_type_3,
10139        { "Message Type (3 bit)",
10140          "gsm_rlcmac.message_type_3",
10141          FT_UINT8, BASE_DEC, VALS(ul_prach8_message_type3_vals), 0x0,
10142          NULL, HFILL
10143        }
10144      },
10145      { &hf_prach8_message_type_6,
10146        { "Message Type (6 bit)",
10147          "gsm_rlcmac.message_type_6",
10148          FT_UINT8, BASE_DEC, VALS(ul_prach8_message_type6_vals), 0x0,
10149          NULL, HFILL
10150        }
10151      },
10152      { &hf_prach11_message_type_6,
10153        { "Message Type (6 bit)",
10154          "gsm_rlcmac.message_type_6",
10155          FT_UINT8, BASE_DEC, VALS(ul_prach11_message_type6_vals), 0x0,
10156          NULL, HFILL
10157        }
10158      },
10159      { &hf_prach11_message_type_9,
10160        { "Message Type (9 bit)",
10161          "gsm_rlcmac.message_type_9",
10162          FT_UINT8, BASE_DEC, VALS(ul_prach11_message_type9_vals), 0x0,
10163          NULL, HFILL
10164        }
10165      },
10166      { &hf_tlli,
10167        { "TLLI",
10168          "gsm_rlcmac.tlli",
10169          FT_UINT32, BASE_HEX, NULL, 0x0,
10170          NULL, HFILL
10171        }
10172      },
10173     { &hf_dl_ctrl_rbsn,
10174       { "RBSN",
10175         "gsm_rlcmac.dl.rbsn",
10176         FT_UINT8, BASE_DEC, NULL, 0x0,
10177         NULL, HFILL
10178       }
10179     },
10180     { &hf_dl_ctrl_rti,
10181       { "RTI",
10182         "gsm_rlcmac.dl.rti",
10183         FT_UINT8, BASE_DEC, NULL, 0x0,
10184         NULL, HFILL
10185       }
10186     },
10187     { &hf_dl_ctrl_fs,
10188       { "FS",
10189         "gsm_rlcmac.dl.fs",
10190         FT_BOOLEAN, BASE_NONE, TFS(&fs_vals), 0x0,
10191         NULL, HFILL
10192       }
10193     },
10194     { &hf_dl_ctrl_ac,
10195       { "AC",
10196         "gsm_rlcmac.dl.ac",
10197         FT_BOOLEAN, BASE_NONE, TFS(&ac_vals), 0x0,
10198         NULL, HFILL
10199       }
10200     },
10201     { &hf_dl_ctrl_pr,
10202       { "PR",
10203         "gsm_rlcmac.dl.pr",
10204         FT_UINT8, BASE_DEC, VALS(power_reduction_vals), 0x0,
10205         NULL, HFILL
10206       }
10207     },
10208     { &hf_dl_ec_ctrl_pr,
10209       { "PR",
10210         "gsm_rlcmac.dl.pr",
10211         FT_UINT8, BASE_DEC, VALS(ec_power_reduction_vals), 0x0,
10212         NULL, HFILL
10213       }
10214     },
10215     { &hf_dl_ec_ctrl_pre,
10216       { "PRe",
10217         "gsm_rlcmac.dl.pre",
10218         FT_UINT8, BASE_DEC, VALS(ec_power_reduction_ext_vals), 0x0,
10219         NULL, HFILL
10220       }
10221     },
10222     { &hf_dl_ctrl_d,
10223       { "D",
10224         "gsm_rlcmac.dl.d",
10225         FT_BOOLEAN,BASE_NONE, TFS(&ctrl_d_vals), 0x0,
10226         NULL, HFILL
10227       }
10228     },
10229     { &hf_dl_ctrl_rbsn_e,
10230       { "RBSNe",
10231         "gsm_rlcmac.dl.rbsn_e",
10232         FT_UINT8, BASE_DEC, VALS(rbsn_e_vals), 0x0,
10233         NULL, HFILL
10234       }
10235     },
10236     { &hf_dl_ctrl_fs_e,
10237       { "FSe",
10238         "gsm_rlcmac.dl.fs_e",
10239         FT_UINT8, BASE_DEC, NULL, 0x0,
10240         NULL, HFILL
10241       }
10242     },
10243     { &hf_dl_ctrl_spare,
10244       { "DL CTRL SPARE",
10245         "gsm_rlcmac.dl.ctrl_spare",
10246         FT_UINT8, BASE_DEC, NULL, 0x0,
10247         NULL, HFILL
10248       }
10249     },
10250     { &hf_startingtime_n32,
10251       { "N32",        "gsm_rlcmac.dl.n32",
10252         FT_UINT8, BASE_DEC, NULL, 0x0,
10253         NULL, HFILL
10254       }
10255     },
10256     { &hf_startingtime_n51,
10257       { "N51",        "gsm_rlcmac.dl.n51",
10258         FT_UINT8, BASE_DEC, NULL, 0x0,
10259         NULL, HFILL
10260       }
10261     },
10262     { &hf_startingtime_n26,
10263       { "N26",        "gsm_rlcmac.dl.n26",
10264         FT_UINT8, BASE_DEC, NULL, 0x0,
10265         NULL, HFILL
10266       }
10267     },
10268 
10269 /* < Global TFI IE > */
10270 
10271 /* < Starting Frame Number Description IE > */
10272 
10273     { &hf_starting_frame_number,
10274       { "Union",        "gsm_rlcmac.dl.union",
10275         FT_UINT8, BASE_DEC, NULL, 0x0,
10276         NULL, HFILL
10277       }
10278     },
10279     { &hf_starting_frame_number_k,
10280       { "k",        "gsm_rlcmac.dl.k",
10281         FT_UINT8, BASE_DEC, NULL, 0x0,
10282         NULL, HFILL
10283       }
10284     },
10285 
10286 /* < Ack/Nack Description IE > */
10287     { &hf_final_ack_indication,
10288       { "FINAL_ACK_INDICATION",        "gsm_rlcmac.dl.final_ack_indication",
10289         FT_BOOLEAN, BASE_NONE, NULL, 0x0,
10290         NULL, HFILL
10291       }
10292     },
10293     { &hf_starting_sequence_number,
10294       { "STARTING_SEQUENCE_NUMBER",        "gsm_rlcmac.dl.starting_sequence_number",
10295         FT_UINT8, BASE_DEC, NULL, 0x0,
10296         NULL, HFILL
10297       }
10298     },
10299     { &hf_received_block_bitmap,
10300       { "Received Block Bitmap",        "gsm_rlcmac.received_block_bitmap",
10301         FT_UINT8, BASE_DEC, NULL, 0x0,
10302         NULL, HFILL
10303       }
10304     },
10305 
10306 /* < Packet Timing Advance IE > */
10307     { &hf_timing_advance_value,
10308       { "TIMING_ADVANCE_VALUE",        "gsm_rlcmac.dl.timing_advance_value",
10309         FT_UINT8, BASE_DEC, NULL, 0x0,
10310         NULL, HFILL
10311       }
10312     },
10313     { &hf_timing_advance_value_exist,
10314       { "TIMING_ADVANCE_VALUE Exist",        "gsm_rlcmac.dl.timing_advance_value_exist",
10315         FT_UINT8, BASE_DEC, NULL, 0x0,
10316         NULL, HFILL
10317       }
10318     },
10319     { &hf_timing_advance_index,
10320       { "TIMING_ADVANCE_INDEX",        "gsm_rlcmac.dl.timing_advance_index",
10321         FT_UINT8, BASE_DEC, NULL, 0x0,
10322         NULL, HFILL
10323       }
10324     },
10325     { &hf_timing_advance_index_exist,
10326       { "TIMING_ADVANCE_INDEX Exist",        "gsm_rlcmac.dl.timing_advance_index_exist",
10327         FT_UINT8, BASE_DEC, NULL, 0x0,
10328         NULL, HFILL
10329       }
10330     },
10331     { &hf_timing_advance_timeslot_number,
10332       { "TIMING_ADVANCE_TIMESLOT_NUMBER",        "gsm_rlcmac.dl.timing_advance_timeslot_number",
10333         FT_UINT8, BASE_DEC, NULL, 0x0,
10334         NULL, HFILL
10335       }
10336     },
10337 
10338 /* < Power Control Parameters IE > */
10339     { &hf_alpha,
10340       { "ALPHA",        "gsm_rlcmac.dl.alpha",
10341         FT_UINT8, BASE_DEC, VALS(alpha_vals), 0x0,
10342         NULL, HFILL
10343       }
10344     },
10345     { &hf_t_avg_w,
10346       { "T_AVG_W",        "gsm_rlcmac.dl.t_avg_w",
10347         FT_UINT8, BASE_DEC, NULL, 0x0,
10348         NULL, HFILL
10349       }
10350     },
10351     { &hf_t_avg_t,
10352       { "T_AVG_T",        "gsm_rlcmac.dl.t_avg_t",
10353         FT_UINT8, BASE_DEC, NULL, 0x0,
10354         NULL, HFILL
10355       }
10356     },
10357     { &hf_pc_meas_chan,
10358       { "PC_MEAS_CHAN",        "gsm_rlcmac.dl.pc_meas_chan",
10359         FT_BOOLEAN, BASE_NONE, TFS(&pc_meas_chan_vals), 0x0,
10360         NULL, HFILL
10361       }
10362     },
10363     { &hf_n_avg_i,
10364       { "N_AVG_I",        "gsm_rlcmac.dl.n_avg_i",
10365         FT_UINT8, BASE_DEC, NULL, 0x0,
10366         NULL, HFILL
10367       }
10368     },
10369 
10370 /* < Global Power Control Parameters IE > */
10371     { &hf_global_power_control_parameters_pb,
10372       { "Pb",        "gsm_rlcmac.dl.pb",
10373         FT_UINT8, BASE_DEC, NULL, 0x0,
10374         NULL, HFILL
10375       }
10376     },
10377     { &hf_global_power_control_parameters_int_meas_channel_list_avail,
10378       { "INT_MEAS_CHANNEL_LIST_AVAIL",        "gsm_rlcmac.dl.int_meas_channel_list_avail",
10379         FT_UINT8, BASE_DEC, NULL, 0x0,
10380         NULL, HFILL
10381       }
10382     },
10383 
10384 /* < Global Packet Timing Advance IE > */
10385     { &hf_ul_timing_advance_index_exist,
10386       { "UPLINK_TIMING_ADVANCE_INDEX Exist", "gsm_rlcmac.ul.timing_advance_index_exist",
10387         FT_UINT8, BASE_DEC, NULL, 0x0,
10388         NULL, HFILL
10389       }
10390     },
10391     { &hf_ul_timing_advance_index,
10392       { "UPLINK_TIMING_ADVANCE_INDEX", "gsm_rlcmac.ul.timing_advance_index",
10393         FT_UINT8, BASE_DEC, NULL, 0x0,
10394         NULL, HFILL
10395       }
10396     },
10397     { &hf_ul_timing_advance_timeslot_number,
10398       { "UPLINK_TIMING_ADVANCE_TIMESLOT_NUMBER", "gsm_rlcmac.ul.timing_advance_timeslot_number",
10399         FT_UINT8, BASE_DEC, NULL, 0x0,
10400         NULL, HFILL
10401       }
10402     },
10403 
10404     { &hf_dl_timing_advance_index_exist,
10405       { "DOWNLINK_TIMING_ADVANCE_INDEX Exist", "gsm_rlcmac.dl.timing_advance_index_exist",
10406         FT_UINT8, BASE_DEC, NULL, 0x0,
10407         NULL, HFILL
10408       }
10409     },
10410     { &hf_dl_timing_advance_index,
10411       { "DOWNLINK_TIMING_ADVANCE_INDEX", "gsm_rlcmac.dl.timing_advance_index",
10412         FT_UINT8, BASE_DEC, NULL, 0x0,
10413         NULL, HFILL
10414       }
10415     },
10416     { &hf_dl_timing_advance_timeslot_number,
10417       { "DOWNLINK_TIMING_ADVANCE_TIMESLOT_NUMBER", "gsm_rlcmac.dl.timing_advance_timeslot_number",
10418         FT_UINT8, BASE_DEC, NULL, 0x0,
10419         NULL, HFILL
10420       }
10421     },
10422 
10423 /* < Channel Quality Report struct > */
10424     { &hf_channel_quality_report_c_value,
10425       { "C_VALUE",        "gsm_rlcmac.dl.c_value",
10426         FT_UINT8, BASE_DEC, NULL, 0x0,
10427         NULL, HFILL
10428       }
10429     },
10430     { &hf_channel_quality_report_rxqual,
10431       { "RXQUAL",        "gsm_rlcmac.dl.rxqual",
10432         FT_UINT8, BASE_DEC, NULL, 0x0,
10433         NULL, HFILL
10434       }
10435     },
10436     { &hf_channel_quality_report_sign_var,
10437       { "SIGN_VAR",        "gsm_rlcmac.dl.sign_var",
10438         FT_UINT8, BASE_DEC, NULL, 0x0,
10439         NULL, HFILL
10440       }
10441     },
10442     { &hf_channel_quality_report_slot0_i_level_tn,
10443       { "Slot[0].I_LEVEL_TN",        "gsm_rlcmac.dl.slot0_i_level_tn",
10444         FT_UINT8, BASE_DEC, NULL, 0x0,
10445         NULL, HFILL
10446       }
10447     },
10448     { &hf_channel_quality_report_slot1_i_level_tn,
10449       { "Slot[1].I_LEVEL_TN",        "gsm_rlcmac.dl.slot1_i_level_tn",
10450         FT_UINT8, BASE_DEC, NULL, 0x0,
10451         NULL, HFILL
10452       }
10453     },
10454     { &hf_channel_quality_report_slot2_i_level_tn,
10455       { "Slot[2].I_LEVEL_TN",        "gsm_rlcmac.dl.slot2_i_level_tn",
10456         FT_UINT8, BASE_DEC, NULL, 0x0,
10457         NULL, HFILL
10458       }
10459     },
10460     { &hf_channel_quality_report_slot3_i_level_tn,
10461       { "Slot[3].I_LEVEL_TN",        "gsm_rlcmac.dl.slot3_i_level_tn",
10462         FT_UINT8, BASE_DEC, NULL, 0x0,
10463         NULL, HFILL
10464       }
10465     },
10466     { &hf_channel_quality_report_slot4_i_level_tn,
10467       { "Slot[4].I_LEVEL_TN",        "gsm_rlcmac.dl.slot4_i_level_tn",
10468         FT_UINT8, BASE_DEC, NULL, 0x0,
10469         NULL, HFILL
10470       }
10471     },
10472     { &hf_channel_quality_report_slot5_i_level_tn,
10473       { "Slot[5].I_LEVEL_TN",        "gsm_rlcmac.dl.slot5_i_level_tn",
10474         FT_UINT8, BASE_DEC, NULL, 0x0,
10475         NULL, HFILL
10476       }
10477     },
10478     { &hf_channel_quality_report_slot6_i_level_tn,
10479       { "Slot[6].I_LEVEL_TN",        "gsm_rlcmac.dl.slot6_i_level_tn",
10480         FT_UINT8, BASE_DEC, NULL, 0x0,
10481         NULL, HFILL
10482       }
10483     },
10484     { &hf_channel_quality_report_slot7_i_level_tn,
10485       { "Slot[7].I_LEVEL_TN",        "gsm_rlcmac.dl.slot7_i_level_tn",
10486         FT_UINT8, BASE_DEC, NULL, 0x0,
10487         NULL, HFILL
10488       }
10489     },
10490     { &hf_channel_quality_report_slot0_i_level_tn_exist,
10491       { "Slot[0].I_LEVEL_TN Exist",        "gsm_rlcmac.dl.slot0_i_level_tn_exist",
10492         FT_UINT8, BASE_DEC, NULL, 0x0,
10493         NULL, HFILL
10494       }
10495     },
10496     { &hf_channel_quality_report_slot1_i_level_tn_exist,
10497       { "Slot[1].I_LEVEL_TN Exist",        "gsm_rlcmac.dl.slot1_i_level_tn_exist",
10498         FT_UINT8, BASE_DEC, NULL, 0x0,
10499         NULL, HFILL
10500       }
10501     },
10502     { &hf_channel_quality_report_slot2_i_level_tn_exist,
10503       { "Slot[2].I_LEVEL_TN Exist",        "gsm_rlcmac.dl.slot2_i_level_tn_exist",
10504         FT_UINT8, BASE_DEC, NULL, 0x0,
10505         NULL, HFILL
10506       }
10507     },
10508     { &hf_channel_quality_report_slot3_i_level_tn_exist,
10509       { "Slot[3].I_LEVEL_TN Exist",        "gsm_rlcmac.dl.slot3_i_level_tn_exist",
10510         FT_UINT8, BASE_DEC, NULL, 0x0,
10511         NULL, HFILL
10512       }
10513     },
10514     { &hf_channel_quality_report_slot4_i_level_tn_exist,
10515       { "Slot[4].I_LEVEL_TN Exist",        "gsm_rlcmac.dl.slot4_i_level_tn_exist",
10516         FT_UINT8, BASE_DEC, NULL, 0x0,
10517         NULL, HFILL
10518       }
10519     },
10520     { &hf_channel_quality_report_slot5_i_level_tn_exist,
10521       { "Slot[5].I_LEVEL_TN Exist",        "gsm_rlcmac.dl.slot5_i_level_tn_exist",
10522         FT_UINT8, BASE_DEC, NULL, 0x0,
10523         NULL, HFILL
10524       }
10525     },
10526     { &hf_channel_quality_report_slot6_i_level_tn_exist,
10527       { "Slot[6].I_LEVEL_TN Exist",        "gsm_rlcmac.dl.slot6_i_level_tn_exist",
10528         FT_UINT8, BASE_DEC, NULL, 0x0,
10529         NULL, HFILL
10530       }
10531     },
10532     { &hf_channel_quality_report_slot7_i_level_tn_exist,
10533       { "Slot[7].I_LEVEL_TN Exist",        "gsm_rlcmac.dl.slot7_i_level_tn_exist",
10534         FT_UINT8, BASE_DEC, NULL, 0x0,
10535         NULL, HFILL
10536       }
10537     },
10538 
10539 /* < EGPRS Ack/Nack Description > */
10540     { &hf_egprs_acknack_beginning_of_window,
10541       { "BEGINNING_OF_WINDOW",        "gsm_rlcmac.dl.beginning_of_window",
10542         FT_UINT8, BASE_DEC, NULL, 0x0,
10543         NULL, HFILL
10544       }
10545     },
10546     { &hf_egprs_acknack_end_of_window,
10547       { "END_OF_WINDOW",        "gsm_rlcmac.dl.end_of_window",
10548         FT_UINT8, BASE_DEC, NULL, 0x0,
10549         NULL, HFILL
10550       }
10551     },
10552     { &hf_egprs_acknack_crbb_length,
10553       { "CRBB_LENGTH",        "gsm_rlcmac.dl.crbb_length",
10554         FT_UINT8, BASE_DEC, NULL, 0x0,
10555         NULL, HFILL
10556       }
10557     },
10558     { &hf_egprs_acknack_crbb_exist,
10559       { "CRBB Exist",        "gsm_rlcmac.dl.crbb_exist",
10560         FT_UINT8, BASE_DEC, NULL, 0x0,
10561         NULL, HFILL
10562       }
10563     },
10564 
10565     { &hf_egprs_acknack_crbb_starting_color_code,
10566       { "CRBB_STARTING_COLOR_CODE",        "gsm_rlcmac.dl.crbb_starting_color_code",
10567         FT_UINT8, BASE_DEC, NULL, 0x0,
10568         NULL, HFILL
10569       }
10570     },
10571     { &hf_egprs_acknack_crbb_bitmap,
10572       { "CRBB_BITMAP",        "gsm_rlcmac.dl.crbb_bitmap",
10573         FT_UINT64, BASE_DEC, NULL, 0x0,
10574         NULL, HFILL
10575       }
10576     },
10577     { &hf_egprs_acknack_urbb_bitmap,
10578       { "URBB_BITMAP",        "gsm_rlcmac.dl.urbb_bitmap",
10579         FT_UINT64, BASE_DEC, NULL, 0x0,
10580         NULL, HFILL
10581       }
10582     },
10583     { &hf_egprs_acknack_dissector,
10584       { "ACKNACK Dissector length",        "gsm_rlcmac.dl.acknack_dissector",
10585         FT_UINT8, BASE_DEC, NULL, 0x0,
10586         NULL, HFILL
10587       }
10588     },
10589     { &hf_egprs_acknack,
10590       { "ACKNACK",        "gsm_rlcmac.dl.acknack",
10591         FT_UINT8, BASE_DEC, NULL, 0x0,
10592         NULL, HFILL
10593       }
10594     },
10595 
10596 /* <P1 Rest Octets> */
10597 
10598 /* <P2 Rest Octets> */
10599 #if 0
10600     { &hf_mobileallocationie_length,
10601       { "Length",        "gsm_rlcmac.dl.mobileallocationie_length",
10602         FT_UINT8, BASE_DEC, NULL, 0x0,
10603         NULL, HFILL
10604       }
10605     },
10606     { &hf_single_rf_channel_spare,
10607       { "spare",        "gsm_rlcmac.dl.single_rf_channel_spare",
10608         FT_UINT8, BASE_DEC, NULL, 0x0,
10609         NULL, HFILL
10610       }
10611     },
10612 #endif
10613     { &hf_arfcn,
10614       { "ARFCN",        "gsm_rlcmac.dl.arfcn",
10615         FT_UINT8, BASE_DEC, NULL, 0x0,
10616         NULL, HFILL
10617       }
10618     },
10619     { &hf_maio,
10620       { "MAIO",        "gsm_rlcmac.dl.maio",
10621         FT_UINT8, BASE_DEC, NULL, 0x0,
10622         NULL, HFILL
10623       }
10624     },
10625     { &hf_hsn,
10626       { "HSN",        "gsm_rlcmac.dl.hsn",
10627         FT_UINT8, BASE_DEC, NULL, 0x0,
10628         NULL, HFILL
10629       }
10630     },
10631 #if 0
10632     { &hf_channel_description_channel_type_and_tdma_offset,
10633       { "Channel_type_and_TDMA_offset",        "gsm_rlcmac.dl.channel_description_channel_type_and_tdma_offset",
10634         FT_UINT8, BASE_DEC, NULL, 0x0,
10635         NULL, HFILL
10636       }
10637     },
10638     { &hf_channel_description_tn,
10639       { "TN",        "gsm_rlcmac.dl.channel_description_tn",
10640         FT_UINT8, BASE_DEC, NULL, 0x0,
10641         NULL, HFILL
10642       }
10643     },
10644 #endif
10645     { &hf_tsc,
10646       { "TSC",        "gsm_rlcmac.dl.tsc",
10647         FT_UINT8, BASE_DEC, NULL, 0x0,
10648         NULL, HFILL
10649       }
10650     },
10651 #if 0
10652     { &hf_group_call_reference_value,
10653       { "value",        "gsm_rlcmac.dl.group_call_value",
10654         FT_UINT8, BASE_DEC, NULL, 0x0,
10655         NULL, HFILL
10656       }
10657     },
10658     { &hf_group_call_reference_sf,
10659       { "SF",        "gsm_rlcmac.dl.group_call_sf",
10660         FT_BOOLEAN, BASE_NONE, NULL, 0x0,
10661         NULL, HFILL
10662       }
10663     },
10664     { &hf_group_call_reference_af,
10665       { "AF",        "gsm_rlcmac.dl.group_call_af",
10666         FT_BOOLEAN, BASE_NONE, NULL, 0x0,
10667         NULL, HFILL
10668       }
10669     },
10670     { &hf_group_call_reference_call_priority,
10671       { "call_priority",        "gsm_rlcmac.dl.group_call_reference_call_priority",
10672         FT_UINT8, BASE_DEC, NULL, 0x0,
10673         NULL, HFILL
10674       }
10675     },
10676     { &hf_group_call_reference_ciphering_information,
10677       { "Ciphering_information",        "gsm_rlcmac.dl.group_call_reference_call_ciphering_information",
10678         FT_UINT8, BASE_DEC, NULL, 0x0,
10679         NULL, HFILL
10680       }
10681     },
10682     { &hf_nln_pch,
10683       { "NLN_PCH",        "gsm_rlcmac.dl.nln_pch",
10684         FT_UINT8, BASE_DEC, NULL, 0x0,
10685         NULL, HFILL
10686       }
10687     },
10688     { &hf_nln_status,
10689       { "NLN_status",        "gsm_rlcmac.dl.nln_status",
10690         FT_UINT8, BASE_DEC, NULL, 0x0,
10691         NULL, HFILL
10692       }
10693     },
10694     { &hf_priority,
10695       { "Priority",        "gsm_rlcmac.dl.priority",
10696         FT_UINT8, BASE_DEC, NULL, 0x0,
10697         NULL, HFILL
10698       }
10699     },
10700     { &hf_p1_rest_octets_packet_page_indication_1,
10701       { "Packet_Page_Indication_1",        "gsm_rlcmac.dl.p1_rest_octets_packet_page_indication_1",
10702         FT_UINT8, BASE_DEC, NULL, 0x0,
10703         NULL, HFILL
10704       }
10705     },
10706     { &hf_p1_rest_octets_packet_page_indication_2,
10707       { "Packet_Page_Indication_2",        "gsm_rlcmac.dl.p1_rest_octets_packet_page_indication_2",
10708         FT_UINT8, BASE_DEC, NULL, 0x0,
10709         NULL, HFILL
10710       }
10711     },
10712     { &hf_p2_rest_octets_cn3,
10713       { "CN3",        "gsm_rlcmac.dl.p2_rest_octets_cn3",
10714         FT_UINT8, BASE_DEC, NULL, 0x0,
10715         NULL, HFILL
10716       }
10717     },
10718 #endif
10719     { &hf_nln,
10720       { "NLN",        "gsm_rlcmac.dl.nln",
10721         FT_UINT8, BASE_DEC, NULL, 0x0,
10722         NULL, HFILL
10723       }
10724     },
10725 #if 0
10726     { &hf_p2_rest_octets_packet_page_indication_3,
10727       { "Packet_Page_Indication_3",        "gsm_rlcmac.dl.p2_rest_octets_packet_page_indication_3",
10728         FT_UINT8, BASE_DEC, NULL, 0x0,
10729         NULL, HFILL
10730       }
10731     },
10732 #endif
10733 
10734 /* <IA Rest Octets> */
10735     { &hf_usf_bitmap,
10736       { "USF_BITMAP",        "gsm_rlcmac.dl.usf_bitmap",
10737         FT_UINT64, BASE_DEC, NULL, 0x0,
10738         NULL, HFILL
10739       }
10740     },
10741     { &hf_usf_granularity,
10742       { "USF_GRANULARITY",        "gsm_rlcmac.dl.usf_granularity",
10743         FT_UINT8, BASE_DEC, NULL, 0x0,
10744         NULL, HFILL
10745       }
10746     },
10747     { &hf_p0,
10748       { "P0",        "gsm_rlcmac.dl.p0",
10749         FT_UINT8, BASE_DEC, NULL, 0x0,
10750         NULL, HFILL
10751       }
10752     },
10753     { &hf_pr_mode,
10754       { "PR_MODE",        "gsm_rlcmac.dl.pr_mode",
10755         FT_UINT8, BASE_DEC, NULL, 0x0,
10756         NULL, HFILL
10757       }
10758     },
10759     { &hf_gamma,
10760       { "GAMMA",        "gsm_rlcmac.dl.gamma",
10761         FT_UINT8, BASE_DEC, NULL, 0x0,
10762         NULL, HFILL
10763       }
10764     },
10765     { &hf_nr_of_radio_blocks_allocated,
10766       { "NR_OF_RADIO_BLOCKS_ALLOCATED",        "gsm_rlcmac.dl.nr_of_radio_blocks_allocated",
10767         FT_UINT8, BASE_DEC, NULL, 0x0,
10768         NULL, HFILL
10769       }
10770     },
10771     { &hf_bts_pwr_ctrl_mode,
10772       { "BTS_PWR_CTRL_MODE",        "gsm_rlcmac.dl.bts_pwr_ctrl_mode",
10773         FT_UINT8, BASE_DEC, NULL, 0x0,
10774         NULL, HFILL
10775       }
10776     },
10777 #if 0
10778     { &hf_polling,
10779       { "POLLING",        "gsm_rlcmac.dl.polling",
10780         FT_UINT8, BASE_DEC, NULL, 0x0,
10781         NULL, HFILL
10782       }
10783     },
10784 #endif
10785     { &hf_egprs_channel_coding_command,
10786       { "EGPRS_CHANNEL_CODING_COMMAND",        "gsm_rlcmac.dl.egprs_channel_coding_command",
10787         FT_UINT8, BASE_DEC, VALS(egprs_modulation_channel_coding_scheme_vals), 0x0,
10788         NULL, HFILL
10789       }
10790     },
10791     { &hf_tlli_block_channel_coding,
10792       { "TLLI_BLOCK_CHANNEL_CODING",        "gsm_rlcmac.dl.tlli_block_channel_coding",
10793         FT_UINT8, BASE_DEC, NULL, 0x0,
10794         NULL, HFILL
10795       }
10796     },
10797     { &hf_bep_period2,
10798       { "BEP_PERIOD2",        "gsm_rlcmac.dl.bep_period2",
10799         FT_UINT8, BASE_DEC, NULL, 0x0,
10800         NULL, HFILL
10801       }
10802     },
10803     { &hf_resegment,
10804       { "RESEGMENT",        "gsm_rlcmac.dl.resegment",
10805         FT_UINT8, BASE_DEC, NULL, 0x0,
10806         NULL, HFILL
10807       }
10808     },
10809     { &hf_egprs_windowsize,
10810       { "EGPRS_WindowSize",        "gsm_rlcmac.dl.egprs_windowsize",
10811         FT_UINT8, BASE_DEC, NULL, 0x0,
10812         NULL, HFILL
10813       }
10814     },
10815 #if 0
10816     { &hf_extendedra,
10817       { "ExtendedRA",        "gsm_rlcmac.dl.extendedra",
10818         FT_UINT8, BASE_DEC, NULL, 0x0,
10819         NULL, HFILL
10820       }
10821     },
10822     { &hf_ia_egprs_uniontype,
10823       { "UnionType",        "gsm_rlcmac.dl.ia_egprs_00_uniontype",
10824         FT_UINT8, BASE_DEC, NULL, 0x0,
10825         NULL, HFILL
10826       }
10827     },
10828     { &hf_ia_freqparamsbeforetime_length,
10829       { "Length",        "gsm_rlcmac.dl.ia_freqparamsbeforetime_length",
10830         FT_UINT8, BASE_DEC, NULL, 0x0,
10831         NULL, HFILL
10832       }
10833     },
10834 #endif
10835     { &hf_gprs_channel_coding_command,
10836       { "CHANNEL_CODING_COMMAND",        "gsm_rlcmac.dl.gprs_channel_coding_command",
10837         FT_UINT8, BASE_DEC, VALS(channel_coding_scheme_vals), 0x0,
10838         NULL, HFILL
10839       }
10840     },
10841     { &hf_link_quality_measurement_mode,
10842       { "LINK_QUALITY_MEASUREMENT_MODE",        "gsm_rlcmac.dl.link_quality_measurement_mode",
10843         FT_UINT8, BASE_DEC, NULL, 0x0,
10844         NULL, HFILL
10845       }
10846     },
10847     { &hf_rlc_mode,
10848       { "RLC_MODE",        "gsm_rlcmac.dl.rlc_mode",
10849         FT_BOOLEAN, BASE_NONE, TFS(&rlc_mode_vals), 0x0,
10850         NULL, HFILL
10851       }
10852     },
10853 #if 0
10854     { &hf_ta_valid,
10855       { "TA_VALID",        "gsm_rlcmac.dl.packet_downlink_immassignment_ta_valid",
10856         FT_UINT8, BASE_DEC, NULL, 0x0,
10857         NULL, HFILL
10858       }
10859     },
10860 #endif
10861     { &hf_tqi,
10862       { "TQI",        "gsm_rlcmac.dl.tqi",
10863         FT_UINT8, BASE_DEC, NULL, 0x0,
10864         NULL, HFILL
10865       }
10866     },
10867 /* <Packet Polling Request> */
10868     { &hf_dl_message_type,
10869       { "MESSAGE_TYPE (DL)",        "gsm_rlcmac.dl.message_type",
10870         FT_UINT8, BASE_DEC|BASE_EXT_STRING, &dl_rlc_message_type_vals_ext, 0x0,
10871         NULL, HFILL
10872       }
10873     },
10874     { &hf_dl_message_type_exist,
10875       { "Exist_STATUS_MESSAGE_TYPE",        "gsm_rlcmac.dl.message_type_exist",
10876         FT_UINT8, BASE_DEC, NULL, 0x0,
10877         NULL, HFILL
10878       }
10879     },
10880     { &hf_packet_polling_id_choice,
10881       { "Packet Polling Choice",        "gsm_rlcmac.dl.packet_polling_id.choice",
10882         FT_UINT8, BASE_DEC, NULL, 0x0,
10883         NULL, HFILL
10884       }
10885     },
10886     { &hf_mobile_bitlength,
10887       { "Bit length",        "gsm_rlcmac.dl.bitlength",
10888         FT_UINT8, BASE_DEC, NULL, 0x0,
10889         NULL, HFILL
10890       }
10891     },
10892     { &hf_mobile_bitmap,
10893       { "Bitmap",        "gsm_rlcmac.dl.bitmap",
10894         FT_UINT8, BASE_DEC, NULL, 0x0,
10895         NULL, HFILL
10896       }
10897     },
10898     { &hf_mobile_union,
10899       { "Mobile Allocation",        "gsm_rlcmac.dl.mobile_allocation",
10900         FT_UINT8, BASE_DEC, NULL, 0x0,
10901         NULL, HFILL
10902       }
10903     },
10904     { &hf_arfcn_index,
10905       { "ARFCN_INDEX",        "gsm_rlcmac.dl.arfcn_index",
10906         FT_UINT8, BASE_DEC, NULL, 0x0,
10907         NULL, HFILL
10908       }
10909     },
10910     { &hf_arfcn_index_exist,
10911       { "ARFCN_INDEX Exist",        "gsm_rlcmac.dl.arfcn_index_exist",
10912         FT_UINT8, BASE_DEC, NULL, 0x0,
10913         NULL, HFILL
10914       }
10915     },
10916     { &hf_gprs_mobile_allocation_rfl_number,
10917       { "RFL_NUMBER",        "gsm_rlcmac.dl.gprs_mobile_allocation_rfl_number",
10918         FT_UINT8, BASE_DEC, NULL, 0x0,
10919         NULL, HFILL
10920       }
10921     },
10922     { &hf_gprs_mobile_allocation_rfl_number_exist,
10923       { "RFL_NUMBER Exist",        "gsm_rlcmac.dl.gprs_mobile_allocation_rfl_number_exist",
10924         FT_UINT8, BASE_DEC, NULL, 0x0,
10925         NULL, HFILL
10926       }
10927     },
10928 
10929 /* < SI 13 Rest Octets > */
10930     { &hf_si_rest_bitmap,
10931       { "BITMAP",        "gsm_rlcmac.si.rest_bitmap",
10932         FT_UINT64, BASE_DEC, NULL, 0x0,
10933         NULL, HFILL
10934       }
10935     },
10936     { &hf_si_length,
10937       { "Length",        "gsm_rlcmac.si.length",
10938         FT_UINT8, BASE_DEC, NULL, 0x0,
10939         NULL, HFILL
10940       }
10941     },
10942     { &hf_gprs_cell_options_nmo,
10943       { "NMO",        "gsm_rlcmac.dl.gprs_cell_options_nmo",
10944         FT_UINT8, BASE_DEC, VALS(gsm_rlcmac_nmo_vals), 0x0,
10945         NULL, HFILL
10946       }
10947     },
10948     { &hf_gprs_cell_options_t3168,
10949       { "T3168", "gsm_rlcmac.dl.gprs_cell_options_t3168",
10950         FT_UINT8, BASE_DEC, VALS(gsm_rlcmac_t3168_vals), 0x0,
10951         NULL, HFILL
10952       }
10953     },
10954     { &hf_gprs_cell_options_t3192,
10955       { "T3192", "gsm_rlcmac.dl.gprs_cell_options_t3192",
10956         FT_UINT8, BASE_DEC, VALS(gsm_rlcmac_t3192_vals), 0x0,
10957         NULL, HFILL
10958       }
10959     },
10960     { &hf_gprs_cell_options_drx_timer_max,
10961       { "DRX_TIMER_MAX",        "gsm_rlcmac.dl.gprs_cell_options_drx_timer_max",
10962         FT_UINT8, BASE_DEC, NULL, 0x0,
10963         NULL, HFILL
10964       }
10965     },
10966     { &hf_gprs_cell_options_access_burst_type,
10967       { "ACCESS_BURST_TYPE",        "gsm_rlcmac.dl.gprs_cell_options_access_burst_type",
10968         FT_BOOLEAN, BASE_NONE, NULL, 0x0,
10969         NULL, HFILL
10970       }
10971     },
10972     { &hf_ack_type,
10973       { "CONTROL_ACK_TYPE",        "gsm_rlcmac.dl.ack_type",
10974         FT_BOOLEAN, BASE_NONE, TFS(&ack_type_vals), 0x0,
10975         NULL, HFILL
10976       }
10977     },
10978     { &hf_padding,
10979       { "Padding",        "gsm_rlcmac.dl.padding",
10980         FT_BYTES, BASE_NONE, NULL, 0x0,
10981         NULL, HFILL
10982       }
10983     },
10984     { &hf_gprs_cell_options_bs_cv_max,
10985       { "BS_CV_MAX",        "gsm_rlcmac.dl.gprs_cell_options_bs_cv_max",
10986         FT_UINT8, BASE_DEC, NULL, 0x0,
10987         NULL, HFILL
10988       }
10989     },
10990     { &hf_gprs_cell_options_pan_dec,
10991       { "PAN_DEC",        "gsm_rlcmac.dl.gprs_cell_options_pan_dec",
10992         FT_UINT8, BASE_DEC, NULL, 0x0,
10993         NULL, HFILL
10994       }
10995     },
10996     { &hf_gprs_cell_options_pan_exist,
10997       { "Exist_PAN",        "gsm_rlcmac.dl.gprs_cell_options_pan_exist",
10998         FT_UINT8, BASE_DEC, NULL, 0x0,
10999         NULL, HFILL
11000       }
11001     },
11002     { &hf_gprs_cell_options_pan_inc,
11003       { "PAN_INC",        "gsm_rlcmac.dl.gprs_cell_options_pan_inc",
11004         FT_UINT8, BASE_DEC, NULL, 0x0,
11005         NULL, HFILL
11006       }
11007     },
11008     { &hf_gprs_cell_options_pan_max,
11009       { "PAN_MAX",        "gsm_rlcmac.dl.gprs_cell_options_pan_max",
11010         FT_UINT8, BASE_DEC, NULL, 0x0,
11011         NULL, HFILL
11012       }
11013     },
11014     { &hf_gprs_cell_options_extension_exist,
11015       { "Exist_Extension_Bits",        "gsm_rlcmac.dl.gprs_cell_options_extension_exist",
11016         FT_UINT8, BASE_DEC, NULL, 0x0,
11017         NULL, HFILL
11018       }
11019     },
11020     { &hf_rac,
11021       { "RAC",        "gsm_rlcmac.dl.rac",
11022         FT_UINT8, BASE_DEC, NULL, 0x0,
11023         NULL, HFILL
11024       }
11025     },
11026     { &hf_pbcch_not_present_spgc_ccch_sup,
11027       { "SPGC_CCCH_SUP",        "gsm_rlcmac.dl.pbcch_not_present_spgc_ccch_sup",
11028         FT_BOOLEAN, BASE_NONE, NULL, 0x0,
11029         NULL, HFILL
11030       }
11031     },
11032     { &hf_pbcch_not_present_priority_access_thr,
11033       { "PRIORITY_ACCESS_THR",        "gsm_rlcmac.dl.pbcch_not_present_priority_access_thr",
11034         FT_UINT8, BASE_DEC, NULL, 0x0,
11035         NULL, HFILL
11036       }
11037     },
11038     { &hf_pbcch_not_present_network_control_order,
11039       { "NETWORK_CONTROL_ORDER",        "gsm_rlcmac.dl.pbcch_not_present_network_control_order",
11040         FT_UINT8, BASE_DEC, NULL, 0x0,
11041         NULL, HFILL
11042       }
11043     },
11044     { &hf_pbcch_description_pb,
11045       { "Pb",        "gsm_rlcmac.dl.pbcch_description_pb",
11046         FT_UINT8, BASE_DEC, NULL, 0x0,
11047         NULL, HFILL
11048       }
11049     },
11050     { &hf_pbcch_description_tn,
11051       { "TN",        "gsm_rlcmac.dl.pbcch_description_tn",
11052         FT_UINT8, BASE_DEC, NULL, 0x0,
11053         NULL, HFILL
11054       }
11055     },
11056     { &hf_pbcch_description_choice,
11057       { "Description Choice",        "gsm_rlcmac.dl.pbcch_description_choice",
11058         FT_UINT8, BASE_DEC, NULL, 0x0,
11059         NULL, HFILL
11060       }
11061     },
11062     { &hf_pbcch_present_psi1_repeat_period,
11063       { "PSI1_REPEAT_PERIOD",        "gsm_rlcmac.dl.pbcch_present_psi1_repeat_period",
11064         FT_UINT8, BASE_DEC, VALS(gsm_rlcmac_val_plus_1_vals), 0x0,
11065         NULL, HFILL
11066       }
11067     },
11068     { &hf_bcch_change_mark,
11069       { "BCCH_CHANGE_MARK",        "gsm_rlcmac.dl.bcch_change_mark",
11070         FT_UINT8, BASE_DEC, NULL, 0x0,
11071         NULL, HFILL
11072       }
11073     },
11074     { &hf_si_change_field,
11075       { "SI_CHANGE_FIELD",        "gsm_rlcmac.dl.si_change_field",
11076         FT_UINT8, BASE_DEC, NULL, 0x0,
11077         NULL, HFILL
11078       }
11079     },
11080     { &hf_si13_change_mark,
11081       { "SI13_CHANGE_MARK",        "gsm_rlcmac.dl.si13_change_mark",
11082         FT_UINT8, BASE_DEC, NULL, 0x0,
11083         NULL, HFILL
11084       }
11085     },
11086     { &hf_sgsnr,
11087       { "SGSNR",        "gsm_rlcmac.dl.sgsnr",
11088         FT_UINT8, BASE_DEC, NULL, 0x0,
11089         NULL, HFILL
11090       }
11091     },
11092     { &hf_si_status_ind,
11093       { "SI_STATUS_IND",        "gsm_rlcmac.dl.si_status_ind",
11094         FT_UINT8, BASE_DEC, NULL, 0x0,
11095         NULL, HFILL
11096       }
11097     },
11098 
11099 /* < Packet TBF Release message content > */
11100     { &hf_packetbf_release,
11101       { "RELEASE",        "gsm_rlcmac.dl.packetbf_release",
11102         FT_UINT8, BASE_DEC, NULL, 0x0,
11103         NULL, HFILL
11104       }
11105     },
11106     { &hf_packetbf_padding,
11107       { "Padding",        "gsm_rlcmac.dl.packetbf_padding",
11108         FT_UINT8, BASE_DEC, NULL, 0x0,
11109         NULL, HFILL
11110       }
11111     },
11112     { &hf_packetbf_release_uplink_release,
11113       { "UPLINK_RELEASE",        "gsm_rlcmac.dl.packetbf_release_uplink_release",
11114         FT_BOOLEAN, BASE_NONE, NULL, 0x0,
11115         NULL, HFILL
11116       }
11117     },
11118     { &hf_packetbf_release_downlink_release,
11119       { "DOWNLINK_RELEASE",        "gsm_rlcmac.dl.packetbf_release_downlink_release",
11120         FT_BOOLEAN, BASE_NONE, NULL, 0x0,
11121         NULL, HFILL
11122       }
11123     },
11124     { &hf_packetbf_release_tbf_release_cause,
11125       { "TBF_RELEASE_CAUSE",        "gsm_rlcmac.dl.packetbf_release_tbf_release_cause",
11126         FT_UINT8, BASE_DEC, NULL, 0x0,
11127         NULL, HFILL
11128       }
11129     },
11130 
11131 /* < Packet Control Acknowledgement message content > */
11132     { &hf_packet_control_acknowledgement_additionsr6_ctrl_ack_extension,
11133       { "CTRL_ACK_Extension",        "gsm_rlcmac.ul.packet_control_ack_additionsr6_ctrl_ack_extension",
11134         FT_UINT8, BASE_DEC, NULL, 0x0,
11135         NULL, HFILL
11136       }
11137     },
11138     { &hf_packet_control_acknowledgement_additionsr6_ctrl_ack_exist,
11139       { "Exist_CTRL_ACK_Extension",        "gsm_rlcmac.ul.packet_control_ack_additionsr6_ctrl_ack_exist",
11140         FT_UINT8, BASE_DEC, NULL, 0x0,
11141         NULL, HFILL
11142       }
11143     },
11144     { &hf_packet_control_acknowledgement_additionsr5_tn_rrbp_exist,
11145       { "Exist_TN_RRBP",        "gsm_rlcmac.ul.packet_control_ack_additionsr5_tn_rrbp_exist",
11146         FT_UINT8, BASE_DEC, NULL, 0x0,
11147         NULL, HFILL
11148       }
11149     },
11150     { &hf_packet_control_acknowledgement_additionsr5_g_rnti_extension_exist,
11151       { "Exist_TN_RRBP",        "gsm_rlcmac.ul.packet_control_ack_additionsr5_g_rnti_extension_exist",
11152         FT_UINT8, BASE_DEC, NULL, 0x0,
11153         NULL, HFILL
11154       }
11155     },
11156     { &hf_packet_control_acknowledgement_additionsr6_exist,
11157       { "Exist_AdditionsR6",        "gsm_rlcmac.ul.packet_control_ack_additionsr6_exist",
11158         FT_UINT8, BASE_DEC, NULL, 0x0,
11159         NULL, HFILL
11160       }
11161     },
11162     { &hf_packet_control_acknowledgement_additionsr5_tn_rrbp,
11163       { "TN_RRBP",        "gsm_rlcmac.ul.packet_control_ack_additionsr5_tn_rrbp",
11164         FT_UINT8, BASE_DEC, NULL, 0x0,
11165         NULL, HFILL
11166       }
11167     },
11168     { &hf_packet_control_acknowledgement_additionsr5_g_rnti_extension,
11169       { "G_RNTI_Extension",        "gsm_rlcmac.ul.packet_control_ack_additionsr5_g_rnti_extension",
11170         FT_UINT8, BASE_DEC, NULL, 0x0,
11171         NULL, HFILL
11172       }
11173     },
11174     { &hf_ul_retry,
11175       { "R",        "gsm_rlcmac.ul.retry",
11176         FT_BOOLEAN, BASE_NONE, TFS(&retry_vals), 0x0,
11177         NULL, HFILL
11178       }
11179     },
11180     { &hf_ul_message_type,
11181       { "MESSAGE_TYPE (UL)",        "gsm_rlcmac.ul.message_type",
11182         FT_UINT8, BASE_DEC|BASE_EXT_STRING, &ul_rlc_message_type_vals_ext, 0x0,
11183         NULL, HFILL
11184       }
11185     },
11186     { &hf_packet_control_acknowledgement_ctrl_ack,
11187       { "CTRL_ACK",        "gsm_rlcmac.ul.packet_control_ack_ctrl_ack",
11188         FT_UINT8, BASE_DEC, VALS(ctrl_ack_vals), 0x0,
11189         NULL, HFILL
11190       }
11191     },
11192     { &hf_packet_control_acknowledgement_ctrl_ack_exist,
11193       { "Exist_AdditionsR5",        "gsm_rlcmac.ul.packet_control_ack_ctrl_ack_exist",
11194         FT_UINT8, BASE_DEC, NULL, 0x0,
11195         NULL, HFILL
11196       }
11197     },
11198 
11199 /* < Packet Downlink Dummy Control Block message content > */
11200 
11201 /* < Packet Uplink Dummy Control Block message content > */
11202 #if 0
11203     { &hf_receive_n_pdu_number_nsapi,
11204       { "nsapi",        "gsm_rlcmac.dl.receive_n_pdu_number_nsapi",
11205         FT_UINT8, BASE_DEC, NULL, 0x0,
11206         NULL, HFILL
11207       }
11208     },
11209     { &hf_receive_n_pdu_number_value,
11210       { "value",        "gsm_rlcmac.dl.receive_n_pdu_number_value",
11211         FT_UINT8, BASE_DEC, NULL, 0x0,
11212         NULL, HFILL
11213       }
11214     },
11215 #endif
11216 
11217 /* < MS Radio Access capability IE > */
11218     { &hf_dtm_egprs_dtm_egprs_multislot_class,
11219       { "DTM_EGPRS_multislot_class",        "gsm_rlcmac.ul.dtm_egprs_multislot_class",
11220         FT_UINT8, BASE_DEC, NULL, 0x0,
11221         NULL, HFILL
11222       }
11223     },
11224     { &hf_dtm_egprs_highmultislotclass_dtm_egprs_highmultislotclass,
11225       { "DTM_EGPRS_HighMultislotClass",        "gsm_rlcmac.ul.dtm_egprs_highmultislotclass",
11226         FT_UINT8, BASE_DEC, NULL, 0x0,
11227         NULL, HFILL
11228       }
11229     },
11230     { &hf_multislot_capability_hscsd_multislot_class,
11231       { "HSCSD_multislot_class",        "gsm_rlcmac.ul.hscsd_multislot_class",
11232         FT_UINT8, BASE_DEC, NULL, 0x0,
11233         NULL, HFILL
11234       }
11235     },
11236     { &hf_multislot_capability_gprs_multislot_class,
11237       { "GPRS_multislot_class",        "gsm_rlcmac.ul.gprs_multislot_class",
11238         FT_UINT8, BASE_DEC, NULL, 0x0,
11239         NULL, HFILL
11240       }
11241     },
11242     { &hf_multislot_capability_gprs_extended_dynamic_allocation_capability,
11243       { "GPRS_Extended_Dynamic_Allocation_Capability",        "gsm_rlcmac.ul.gprs_extended_dynamic_allocation_capability",
11244         FT_UINT8, BASE_DEC, NULL, 0x0,
11245         NULL, HFILL
11246       }
11247     },
11248     { &hf_multislot_capability_sms_value,
11249       { "SMS_VALUE",        "gsm_rlcmac.ul.sms_value",
11250         FT_UINT8, BASE_DEC, NULL, 0x0,
11251         NULL, HFILL
11252       }
11253     },
11254     { &hf_multislot_capability_sm_value,
11255       { "SM_VALUE",        "gsm_rlcmac.ul.sm_value",
11256         FT_UINT8, BASE_DEC, NULL, 0x0,
11257         NULL, HFILL
11258       }
11259     },
11260     { &hf_multislot_capability_ecsd_multislot_class,
11261       { "ECSD_multislot_class",        "gsm_rlcmac.ul.ecsd_multislot_class",
11262         FT_UINT8, BASE_DEC, NULL, 0x0,
11263         NULL, HFILL
11264       }
11265     },
11266     { &hf_multislot_capability_egprs_multislot_class,
11267       { "EGPRS_multislot_class",        "gsm_rlcmac.ul.egprs_multislot_class",
11268         FT_UINT8, BASE_DEC, NULL, 0x0,
11269         NULL, HFILL
11270       }
11271     },
11272     { &hf_multislot_capability_egprs_extended_dynamic_allocation_capability,
11273       { "EGPRS_Extended_Dynamic_Allocation_Capability",        "gsm_rlcmac.ul.egprs_extended_dynamic_allocation_capability",
11274         FT_UINT8, BASE_DEC, NULL, 0x0,
11275         NULL, HFILL
11276       }
11277     },
11278     { &hf_multislot_capability_dtm_gprs_multislot_class,
11279       { "DTM_GPRS_multislot_class",        "gsm_rlcmac.ul.dtm_gprs_multislot_class",
11280         FT_UINT8, BASE_DEC, NULL, 0x0,
11281         NULL, HFILL
11282       }
11283     },
11284     { &hf_multislot_capability_single_slot_dtm,
11285       { "Single_Slot_DTM",        "gsm_rlcmac.ul.single_slot_dtm",
11286         FT_UINT8, BASE_DEC, NULL, 0x0,
11287         NULL, HFILL
11288       }
11289     },
11290     { &hf_dtm_egprs_dtm_egprs_multislot_class_exist,
11291       { "Exist_DTM_EGPRS_multislot_class",        "gsm_rlcmac.ul.egprs_multislot_class_exist",
11292         FT_UINT8, BASE_DEC, NULL, 0x0,
11293         NULL, HFILL
11294       }
11295     },
11296     { &hf_dtm_egprs_highmultislotclass_dtm_egprs_highmultislotclass_exist,
11297       { "Exist_DTM_EGPRS_HighMultislotClass",        "gsm_rlcmac.ul.egprs_highmultislotclass_exist",
11298         FT_UINT8, BASE_DEC, NULL, 0x0,
11299         NULL, HFILL
11300       }
11301     },
11302     { &hf_multislot_capability_hscsd_multislot_class_exist,
11303       { "Exist_HSCSD_multislot_class",        "gsm_rlcmac.ul.hscsd_multislot_class_exist",
11304         FT_UINT8, BASE_DEC, NULL, 0x0,
11305         NULL, HFILL
11306       }
11307     },
11308     { &hf_multislot_capability_gprs_multislot_class_exist,
11309       { "Exist_GPRS_multislot_class",        "gsm_rlcmac.ul.gprs_multislot_class_exist",
11310         FT_UINT8, BASE_DEC, NULL, 0x0,
11311         NULL, HFILL
11312       }
11313     },
11314     { &hf_multislot_capability_sms_exist,
11315       { "Exist_SM",        "gsm_rlcmac.ul.sms_exist",
11316         FT_UINT8, BASE_DEC, NULL, 0x0,
11317         NULL, HFILL
11318       }
11319     },
11320     { &hf_multislot_capability_ecsd_multislot_class_exist,
11321       { "Exist_ECSD_multislot_class",        "gsm_rlcmac.ul.ecsd_multislot_class_exist",
11322         FT_UINT8, BASE_DEC, NULL, 0x0,
11323         NULL, HFILL
11324       }
11325     },
11326     { &hf_multislot_capability_egprs_multislot_class_exist,
11327       { "Exist_EGPRS_multislot_class",        "gsm_rlcmac.ul.egprs_multislot_class_exist",
11328         FT_UINT8, BASE_DEC, NULL, 0x0,
11329         NULL, HFILL
11330       }
11331     },
11332     { &hf_multislot_capability_dtm_gprs_multislot_class_exist,
11333       { "Exist_DTM_GPRS_multislot_class",        "gsm_rlcmac.ul.gprs_multislot_class_exist",
11334         FT_UINT8, BASE_DEC, NULL, 0x0,
11335         NULL, HFILL
11336       }
11337     },
11338 
11339     { &hf_content_rf_power_capability,
11340       { "RF_Power_Capability",        "gsm_rlcmac.ul.rf_power_capability",
11341         FT_UINT8, BASE_DEC, NULL, 0x0,
11342         NULL, HFILL
11343       }
11344     },
11345     { &hf_content_a5_bits,
11346       { "A5_bits",        "gsm_rlcmac.ul.a5_bits",
11347         FT_UINT8, BASE_DEC, NULL, 0x0,
11348         NULL, HFILL
11349       }
11350     },
11351     { &hf_content_es_ind,
11352       { "ES_IND",        "gsm_rlcmac.ul.es_ind",
11353         FT_UINT8, BASE_DEC, NULL, 0x0,
11354         NULL, HFILL
11355       }
11356     },
11357     { &hf_content_ps,
11358       { "PS",        "gsm_rlcmac.ul.ps",
11359         FT_UINT8, BASE_DEC, NULL, 0x0,
11360         NULL, HFILL
11361       }
11362     },
11363     { &hf_content_vgcs,
11364       { "VGCS",        "gsm_rlcmac.ul.vgcs",
11365         FT_UINT8, BASE_DEC, NULL, 0x0,
11366         NULL, HFILL
11367       }
11368     },
11369     { &hf_content_vbs,
11370       { "VBS",        "gsm_rlcmac.ul.vbs",
11371         FT_UINT8, BASE_DEC, NULL, 0x0,
11372         NULL, HFILL
11373       }
11374     },
11375     { &hf_content_eight_psk_power_capability,
11376       { "Eight_PSK_Power_Capability",        "gsm_rlcmac.ul.eight_psk_power_capability",
11377         FT_UINT8, BASE_DEC, NULL, 0x0,
11378         NULL, HFILL
11379       }
11380     },
11381     { &hf_content_compact_interference_measurement_capability,
11382       { "COMPACT_Interference_Measurement_Capability",        "gsm_rlcmac.ul.compact_interference_measurement_capability",
11383         FT_UINT8, BASE_DEC, NULL, 0x0,
11384         NULL, HFILL
11385       }
11386     },
11387     { &hf_content_revision_level_indicator,
11388       { "Revision_Level_Indicator",        "gsm_rlcmac.ul.revision_level_indicator",
11389         FT_UINT8, BASE_DEC, NULL, 0x0,
11390         NULL, HFILL
11391       }
11392     },
11393     { &hf_content_umts_fdd_radio_access_technology_capability,
11394       { "UMTS_FDD_Radio_Access_Technology_Capability",        "gsm_rlcmac.ul.umts_fdd_radio_access_technology_capability",
11395         FT_UINT8, BASE_DEC, NULL, 0x0,
11396         NULL, HFILL
11397       }
11398     },
11399     { &hf_content_umts_384_tdd_radio_access_technology_capability,
11400       { "UMTS_384_TDD_Radio_Access_Technology_Capability",        "gsm_rlcmac.ul.umts_384_tdd_radio_access_technology_capability",
11401         FT_UINT8, BASE_DEC, NULL, 0x0,
11402         NULL, HFILL
11403       }
11404     },
11405     { &hf_content_cdma2000_radio_access_technology_capability,
11406       { "CDMA2000_Radio_Access_Technology_Capability",        "gsm_rlcmac.ul.cdma2000_radio_access_technology_capability",
11407         FT_UINT8, BASE_DEC, NULL, 0x0,
11408         NULL, HFILL
11409       }
11410     },
11411     { &hf_content_umts_128_tdd_radio_access_technology_capability,
11412       { "UMTS_128_TDD_Radio_Access_Technology_Capability",        "gsm_rlcmac.ul.umts_128_tdd_radio_access_technology_capability",
11413         FT_UINT8, BASE_DEC, NULL, 0x0,
11414         NULL, HFILL
11415       }
11416     },
11417     { &hf_a5_bits_exist,
11418       { "Exist_A5_bits",        "gsm_rlcmac.ul.a5_bits_exist",
11419         FT_UINT8, BASE_DEC, NULL, 0x0,
11420         NULL, HFILL
11421       }
11422     },
11423     { &hf_multislot_capability_exist,
11424       { "Exist_Multislot_capability",        "gsm_rlcmac.ul.multislot_capability_exist",
11425         FT_UINT8, BASE_DEC, NULL, 0x0,
11426         NULL, HFILL
11427       }
11428     },
11429     { &hf_content_eight_psk_power_capability_exist,
11430       { "Exist_Eight_PSK_Power_Capability",        "gsm_rlcmac.ul.eight_psk_power_capability_exist",
11431         FT_UINT8, BASE_DEC, NULL, 0x0,
11432         NULL, HFILL
11433       }
11434     },
11435     { &hf_content_extended_dtm_gprs_multislot_class_exist,
11436       { "Exist_Extended_DTM_multislot_class",        "gsm_rlcmac.ul.extended_dtm_gprs_multislot_class_exist",
11437         FT_UINT8, BASE_DEC, NULL, 0x0,
11438         NULL, HFILL
11439       }
11440     },
11441     { &hf_content_highmultislotcapability_exist,
11442       { "Exist_HighMultislotCapability",        "gsm_rlcmac.ul.highmultislotcapability_exist",
11443         FT_UINT8, BASE_DEC, NULL, 0x0,
11444         NULL, HFILL
11445       }
11446     },
11447     { &hf_content_geran_lu_modecapability_exist,
11448       { "Exist_GERAN_lu_ModeCapability",        "gsm_rlcmac.ul.geran_lu_modecapability_exist",
11449         FT_UINT8, BASE_DEC, NULL, 0x0,
11450         NULL, HFILL
11451       }
11452     },
11453     { &hf_content_dtm_gprs_highmultislotclass_exist,
11454       { "Exist_DTM_GPRS_HighMultislotClass",        "gsm_rlcmac.ul.dtm_gprs_highmultislotclass_exist",
11455         FT_UINT8, BASE_DEC, NULL, 0x0,
11456         NULL, HFILL
11457       }
11458     },
11459     { &hf_content_geran_feature_package_1,
11460       { "GERAN_Feature_Package_1",        "gsm_rlcmac.ul.geran_feature_package_1",
11461         FT_UINT8, BASE_DEC, NULL, 0x0,
11462         NULL, HFILL
11463       }
11464     },
11465     { &hf_content_extended_dtm_gprs_multislot_class,
11466       { "Extended_DTM_GPRS_multislot_class",        "gsm_rlcmac.ul.extended_dtm_gprs_multislot_class",
11467         FT_UINT8, BASE_DEC, NULL, 0x0,
11468         NULL, HFILL
11469       }
11470     },
11471     { &hf_content_extended_dtm_egprs_multislot_class,
11472       { "Extended_DTM_EGPRS_multislot_class",        "gsm_rlcmac.ul.extended_dtm_egprs_multislot_class",
11473         FT_UINT8, BASE_DEC, NULL, 0x0,
11474         NULL, HFILL
11475       }
11476     },
11477     { &hf_content_modulation_based_multislot_class_support,
11478       { "Modulation_based_multislot_class_support",        "gsm_rlcmac.ul.modulation_based_multislot_class_support",
11479         FT_UINT8, BASE_DEC, NULL, 0x0,
11480         NULL, HFILL
11481       }
11482     },
11483     { &hf_content_highmultislotcapability,
11484       { "HighMultislotCapability",        "gsm_rlcmac.ul.highmultislotcapability",
11485         FT_UINT8, BASE_DEC, NULL, 0x0,
11486         NULL, HFILL
11487       }
11488     },
11489     { &hf_content_geran_lu_modecapability,
11490       { "GERAN_lu_ModeCapability",        "gsm_rlcmac.ul.geran_lu_modecapability",
11491         FT_UINT8, BASE_DEC, NULL, 0x0,
11492         NULL, HFILL
11493       }
11494     },
11495     { &hf_content_gmsk_multislotpowerprofile,
11496       { "GMSK_MultislotPowerProfile",        "gsm_rlcmac.ul.gmsk_multislotpowerprofile",
11497         FT_UINT8, BASE_DEC, NULL, 0x0,
11498         NULL, HFILL
11499       }
11500     },
11501     { &hf_content_eightpsk_multislotprofile,
11502       { "EightPSK_MultislotProfile",        "gsm_rlcmac.ul.eightpsk_multislotprofile",
11503         FT_UINT8, BASE_DEC, NULL, 0x0,
11504         NULL, HFILL
11505       }
11506     },
11507     { &hf_content_multipletbf_capability,
11508       { "MultipleTBF_Capability",        "gsm_rlcmac.ul.multipletbf_capability",
11509         FT_UINT8, BASE_DEC, NULL, 0x0,
11510         NULL, HFILL
11511       }
11512     },
11513     { &hf_content_downlinkadvancedreceiverperformance,
11514       { "DownlinkAdvancedReceiverPerformance",        "gsm_rlcmac.ul.downlinkadvancedreceiverperformance",
11515         FT_UINT8, BASE_DEC, NULL, 0x0,
11516         NULL, HFILL
11517       }
11518     },
11519     { &hf_content_extendedrlc_mac_controlmessagesegmentionscapability,
11520       { "ExtendedRLC_MAC_ControlMessageSegmentionsCapability",        "gsm_rlcmac.ul.extendedrlc_mac_controlmessagesegmentionscapability",
11521         FT_UINT8, BASE_DEC, NULL, 0x0,
11522         NULL, HFILL
11523       }
11524     },
11525     { &hf_content_dtm_enhancementscapability,
11526       { "DTM_EnhancementsCapability",        "gsm_rlcmac.ul.dtm_enhancementscapability",
11527         FT_UINT8, BASE_DEC, NULL, 0x0,
11528         NULL, HFILL
11529       }
11530     },
11531     { &hf_content_dtm_gprs_highmultislotclass,
11532       { "DTM_GPRS_HighMultislotClass",        "gsm_rlcmac.ul.dtm_gprs_highmultislotclass",
11533         FT_UINT8, BASE_DEC, NULL, 0x0,
11534         NULL, HFILL
11535       }
11536     },
11537     { &hf_content_ps_handovercapability,
11538       { "PS_HandoverCapability",        "gsm_rlcmac.ul.ps_handovercapability",
11539         FT_UINT8, BASE_DEC, NULL, 0x0,
11540         NULL, HFILL
11541       }
11542     },
11543     { &hf_content_dtm_handover_capability ,
11544       { "DTM_HandoverCapability",        "gsm_rlcmac.ul.dtm_handover_capability",
11545         FT_UINT8, BASE_DEC, NULL, 0x0,
11546         NULL, HFILL
11547       }
11548     },
11549     { &hf_content_multislot_capability_reduction_for_dl_dual_carrier_exist ,
11550       { "Exist_MultislotCapabilityReductionForDL_DualCarrier",        "gsm_rlcmac.ul.multislot_capability_reduction_for_dl_dual_carrier_exist",
11551         FT_UINT8, BASE_DEC, NULL, 0x0,
11552         NULL, HFILL
11553       }
11554     },
11555     { &hf_content_multislot_capability_reduction_for_dl_dual_carrier ,
11556       { "MultislotCapabilityReductionForDL_DualCarrier",        "gsm_rlcmac.ul.multislot_capability_reduction_for_dl_dual_carrier",
11557         FT_UINT8, BASE_DEC, NULL, 0x0,
11558         NULL, HFILL
11559       }
11560     },
11561     { &hf_content_dual_carrier_for_dtm ,
11562       { "DL_DualCarrierForDTM",        "gsm_rlcmac.ul.dual_carrier_for_dtm",
11563         FT_UINT8, BASE_DEC, NULL, 0x0,
11564         NULL, HFILL
11565       }
11566     },
11567     { &hf_content_flexible_timeslot_assignment ,
11568       { "FlexibleTimeslotAssignment",        "gsm_rlcmac.ul.flexible_timeslot_assignment",
11569         FT_UINT8, BASE_DEC, NULL, 0x0,
11570         NULL, HFILL
11571       }
11572     },
11573     { &hf_content_gan_ps_handover_capability ,
11574       { "GAN_PS_HandoverCapability",        "gsm_rlcmac.ul.gan_ps_handover_capability",
11575         FT_UINT8, BASE_DEC, NULL, 0x0,
11576         NULL, HFILL
11577       }
11578     },
11579     { &hf_content_rlc_non_persistent_mode ,
11580       { "RLC_Non_persistentMode",        "gsm_rlcmac.ul.rlc_non_persistent_mode",
11581         FT_UINT8, BASE_DEC, NULL, 0x0,
11582         NULL, HFILL
11583       }
11584     },
11585     { &hf_content_reduced_latency_capability ,
11586       { "ReducedLatencyCapability",        "gsm_rlcmac.ul.reduced_latency_capability",
11587         FT_UINT8, BASE_DEC, NULL, 0x0,
11588         NULL, HFILL
11589       }
11590     },
11591     { &hf_content_uplink_egprs2 ,
11592       { "UplinkEGPRS2",        "gsm_rlcmac.ul.uplink_egprs2",
11593         FT_UINT8, BASE_DEC, NULL, 0x0,
11594         NULL, HFILL
11595       }
11596     },
11597     { &hf_content_downlink_egprs2 ,
11598       { "DownlinkEGPRS2",        "gsm_rlcmac.ul.downlink_egprs2",
11599         FT_UINT8, BASE_DEC, NULL, 0x0,
11600         NULL, HFILL
11601       }
11602 	},
11603     { &hf_content_eutra_fdd_support  ,
11604       { "EUTRA_FDD_Support",        "gsm_rlcmac.ul.eutra_fdd_support",
11605         FT_UINT8, BASE_DEC, NULL, 0x0,
11606         NULL, HFILL
11607       }
11608     },
11609     { &hf_content_eutra_tdd_support  ,
11610       { "EUTRA_TDD_Support",        "gsm_rlcmac.ul.eutra_tdd_support",
11611         FT_UINT8, BASE_DEC, NULL, 0x0,
11612         NULL, HFILL
11613       }
11614     },
11615     { &hf_content_geran_to_eutran_support_in_geran_ptm ,
11616       { "GERAN_To_EUTRAN_supportInGERAN_PTM",        "gsm_rlcmac.ul.geran_to_eutran_support_in_geran_ptm",
11617         FT_UINT8, BASE_DEC, NULL, 0x0,
11618         NULL, HFILL
11619       }
11620     },
11621     { &hf_content_priority_based_reselection_support ,
11622       { "PriorityBasedReselectionSupport",        "gsm_rlcmac.ul.priority_based_reselection_support",
11623         FT_UINT8, BASE_DEC, NULL, 0x0,
11624         NULL, HFILL
11625       }
11626     },
11627     { &hf_additional_accessechnologies_struct_t_access_technology_type,
11628       { "Access_Technology_Type",        "gsm_rlcmac.ul.access_technology_type",
11629         FT_UINT8, BASE_DEC, NULL, 0x0,
11630         NULL, HFILL
11631       }
11632     },
11633     { &hf_additional_accessechnologies_struct_t_gmsk_power_class,
11634       { "GMSK_Power_class",        "gsm_rlcmac.ul.gmsk_power_class",
11635         FT_UINT8, BASE_DEC, NULL, 0x0,
11636         NULL, HFILL
11637       }
11638     },
11639     { &hf_additional_accessechnologies_struct_t_eight_psk_power_class,
11640       { "Eight_PSK_Power_class",        "gsm_rlcmac.ul.eight_psk_power_class",
11641         FT_UINT8, BASE_DEC, NULL, 0x0,
11642         NULL, HFILL
11643       }
11644     },
11645     { &hf_additional_access_technology_exist,
11646       { "Exist",        "gsm_rlcmac.ul.additional_access_technology_exist",
11647         FT_UINT8, BASE_DEC, NULL, 0x0,
11648         NULL, HFILL
11649       }
11650     },
11651     { &hf_content_dissector,
11652       { "Content Dissector",        "gsm_rlcmac.content_dissector",
11653         FT_UINT8, BASE_DEC, NULL, 0x0,
11654         NULL, HFILL
11655       }
11656     },
11657     { &hf_additional_access_dissector,
11658       { "Additional Access Dissector",        "gsm_rlcmac.additional_access_dissector",
11659         FT_UINT8, BASE_DEC, NULL, 0x0,
11660         NULL, HFILL
11661       }
11662     },
11663     { &hf_ms_ra_capability_value_choice,
11664       { "Capability Value Choice",        "gsm_rlcmac.ms_ra_capability_value_choice",
11665         FT_UINT8, BASE_DEC, VALS(access_tech_type_vals), 0x0,
11666         NULL, HFILL
11667       }
11668     },
11669     { &hf_ms_ra_capability_value,
11670       { "Capability Value Exist",        "gsm_rlcmac.ms_ra_capability_value",
11671         FT_UINT8, BASE_DEC, NULL, 0x0,
11672         NULL, HFILL
11673       }
11674     },
11675 
11676 /**
11677     { &hf_ms_radio_access_capability_iei,
11678       { "IEI",        "gsm_rlcmac.ul.iei",
11679         FT_UINT8, BASE_DEC, NULL, 0x0,
11680         NULL, HFILL
11681       }
11682     },
11683     { &hf_ms_radio_access_capability_length,
11684       { "Length",        "gsm_rlcmac.ul.length",
11685         FT_UINT8, BASE_DEC, NULL, 0x0,
11686         NULL, HFILL
11687       }
11688     },
11689 **/
11690 /* < MS Classmark 3 IE > */
11691 #if 0
11692     { &hf_arc_a5_bits,
11693       { "A5_Bits",        "gsm_rlcmac.ul.a5_bits",
11694         FT_UINT8, BASE_DEC, NULL, 0x0,
11695         NULL, HFILL
11696       }
11697     },
11698     { &hf_arc_arc2_spare,
11699       { "Arc2_Spare",        "gsm_rlcmac.ul.arc2_spare",
11700         FT_UINT8, BASE_DEC, NULL, 0x0,
11701         NULL, HFILL
11702       }
11703     },
11704     { &hf_arc_arc1,
11705       { "Arc1",        "gsm_rlcmac.ul.arc1",
11706         FT_UINT8, BASE_DEC, NULL, 0x0,
11707         NULL, HFILL
11708       }
11709     },
11710     { &hf_multiband_a5_bits,
11711       { "A5 Bits",        "gsm_rlcmac.ul.multiband_a5_bits",
11712         FT_UINT8, BASE_DEC, NULL, 0x0,
11713         NULL, HFILL
11714       }
11715     },
11716     { &hf_edge_rf_pwr_edge_rf_pwrcap1,
11717       { "EDGE_RF_PwrCap1",        "gsm_rlcmac.ul.edge_rf_pwrcap1",
11718         FT_UINT8, BASE_DEC, NULL, 0x0,
11719         NULL, HFILL
11720       }
11721     },
11722     { &hf_edge_rf_pwr_edge_rf_pwrcap2,
11723       { "EDGE_RF_PwrCap2",        "gsm_rlcmac.ul.edge_rf_pwrcap2",
11724         FT_UINT8, BASE_DEC, NULL, 0x0,
11725         NULL, HFILL
11726       }
11727     },
11728     { &hf_ms_class3_unpacked_spare1,
11729       { "Spare1",        "gsm_rlcmac.ul.ms_class3_unpacked_spare1",
11730         FT_UINT8, BASE_DEC, NULL, 0x0,
11731         NULL, HFILL
11732       }
11733     },
11734     { &hf_ms_class3_unpacked_r_gsm_arc,
11735       { "R_GSM_Arc",        "gsm_rlcmac.ul.ms_class3_unpacked_r_gsm_arc",
11736         FT_UINT8, BASE_DEC, NULL, 0x0,
11737         NULL, HFILL
11738       }
11739     },
11740     { &hf_ms_class3_unpacked_multislotclass,
11741       { "MultiSlotClass",        "gsm_rlcmac.ul.ms_class3_unpacked_multislotclass",
11742         FT_UINT8, BASE_DEC, NULL, 0x0,
11743         NULL, HFILL
11744       }
11745     },
11746     { &hf_ms_class3_unpacked_ucs2,
11747       { "UCS2",        "gsm_rlcmac.ul.ms_class3_unpacked_ucs2",
11748         FT_UINT8, BASE_DEC, NULL, 0x0,
11749         NULL, HFILL
11750       }
11751     },
11752     { &hf_ms_class3_unpacked_extendedmeasurementcapability,
11753       { "ExtendedMeasurementCapability",        "gsm_rlcmac.ul.ms_class3_unpacked_extendedmeasurementcapability",
11754         FT_UINT8, BASE_DEC, NULL, 0x0,
11755         NULL, HFILL
11756       }
11757     },
11758     { &hf_ms_class3_unpacked_sms_value,
11759       { "SMS_VALUE",        "gsm_rlcmac.ul.ms_class3_unpacked_sms_value",
11760         FT_UINT8, BASE_DEC, NULL, 0x0,
11761         NULL, HFILL
11762       }
11763     },
11764     { &hf_ms_class3_unpacked_sm_value,
11765       { "SM_VALUE",        "gsm_rlcmac.ul.ms_class3_unpacked_sm_value",
11766         FT_UINT8, BASE_DEC, NULL, 0x0,
11767         NULL, HFILL
11768       }
11769     },
11770     { &hf_ms_class3_unpacked_ms_positioningmethod,
11771       { "MS_PositioningMethod",        "gsm_rlcmac.ul.ms_class3_unpacked_ms_positioningmethod",
11772         FT_UINT8, BASE_DEC, NULL, 0x0,
11773         NULL, HFILL
11774       }
11775     },
11776     { &hf_ms_class3_unpacked_edge_multislotclass,
11777       { "EDGE_MultiSlotClass",        "gsm_rlcmac.ul.ms_class3_unpacked_edge_multislotclass",
11778         FT_UINT8, BASE_DEC, NULL, 0x0,
11779         NULL, HFILL
11780       }
11781     },
11782     { &hf_ms_class3_unpacked_modulationcapability,
11783       { "ModulationCapability",        "gsm_rlcmac.ul.ms_class3_unpacked_modulationcapability",
11784         FT_UINT8, BASE_DEC, NULL, 0x0,
11785         NULL, HFILL
11786       }
11787     },
11788     { &hf_ms_class3_unpacked_gsm400_bands,
11789       { "GSM400_Bands",        "gsm_rlcmac.ul.ms_class3_unpacked_gsm400_bands",
11790         FT_UINT8, BASE_DEC, NULL, 0x0,
11791         NULL, HFILL
11792       }
11793     },
11794     { &hf_ms_class3_unpacked_gsm400_arc,
11795       { "GSM400_Arc",        "gsm_rlcmac.ul.ms_class3_unpacked_gsm400_arc",
11796         FT_UINT8, BASE_DEC, NULL, 0x0,
11797         NULL, HFILL
11798       }
11799     },
11800     { &hf_ms_class3_unpacked_gsm850_arc,
11801       { "GSM850_Arc",        "gsm_rlcmac.ul.ms_class3_unpacked_gsm850_arc",
11802         FT_UINT8, BASE_DEC, NULL, 0x0,
11803         NULL, HFILL
11804       }
11805     },
11806     { &hf_ms_class3_unpacked_pcs1900_arc,
11807       { "PCS1900_Arc",        "gsm_rlcmac.ul.ms_class3_unpacked_pcs1900_arc",
11808         FT_UINT8, BASE_DEC, NULL, 0x0,
11809         NULL, HFILL
11810       }
11811     },
11812     { &hf_ms_class3_unpacked_umts_fdd_radio_access_technology_capability,
11813       { "UMTS_FDD_Radio_Access_Technology_Capability",        "gsm_rlcmac.ul.ms_class3_unpacked_umts_fdd_radio_access_technology_capability",
11814         FT_UINT8, BASE_DEC, NULL, 0x0,
11815         NULL, HFILL
11816       }
11817     },
11818     { &hf_ms_class3_unpacked_umts_384_tdd_radio_access_technology_capability,
11819       { "UMTS_384_TDD_Radio_Access_Technology_Capability",        "gsm_rlcmac.ul.ms_class3_unpacked_umts_384_tdd_radio_access_technology_capability",
11820         FT_UINT8, BASE_DEC, NULL, 0x0,
11821         NULL, HFILL
11822       }
11823     },
11824     { &hf_ms_class3_unpacked_cdma2000_radio_access_technology_capability,
11825       { "CDMA2000_Radio_Access_Technology_Capability",        "gsm_rlcmac.ul.ms_class3_unpacked_cdma2000_radio_access_technology_capability",
11826         FT_UINT8, BASE_DEC, NULL, 0x0,
11827         NULL, HFILL
11828       }
11829     },
11830     { &hf_ms_class3_unpacked_dtm_gprs_multislot_class,
11831       { "DTM_GPRS_multislot_class",        "gsm_rlcmac.ul.ms_class3_unpacked_dtm_gprs_multislot_class",
11832         FT_UINT8, BASE_DEC, NULL, 0x0,
11833         NULL, HFILL
11834       }
11835     },
11836     { &hf_ms_class3_unpacked_single_slot_dtm,
11837       { "Single_Slot_DTM",        "gsm_rlcmac.ul.ms_class3_unpacked_single_slot_dtm",
11838         FT_UINT8, BASE_DEC, NULL, 0x0,
11839         NULL, HFILL
11840       }
11841     },
11842     { &hf_ms_class3_unpacked_gsm_band,
11843       { "GSM_Band",        "gsm_rlcmac.ul.ms_class3_unpacked_gsm_band",
11844         FT_UINT8, BASE_DEC, NULL, 0x0,
11845         NULL, HFILL
11846       }
11847     },
11848     { &hf_ms_class3_unpacked_gsm_700_associated_radio_capability,
11849       { "GSM_700_Associated_Radio_Capability",        "gsm_rlcmac.ul.ms_class3_unpacked_gsm_700_associated_radio_capability",
11850         FT_UINT8, BASE_DEC, NULL, 0x0,
11851         NULL, HFILL
11852       }
11853     },
11854     { &hf_ms_class3_unpacked_umts_128_tdd_radio_access_technology_capability,
11855       { "UMTS_128_TDD_Radio_Access_Technology_Capability",        "gsm_rlcmac.ul.ms_class3_unpacked_umts_128_tdd_radio_access_technology_capability",
11856         FT_UINT8, BASE_DEC, NULL, 0x0,
11857         NULL, HFILL
11858       }
11859     },
11860     { &hf_ms_class3_unpacked_geran_feature_package_1,
11861       { "GERAN_Feature_Package_1",        "gsm_rlcmac.ul.ms_class3_unpacked_geran_feature_package_1",
11862         FT_UINT8, BASE_DEC, NULL, 0x0,
11863         NULL, HFILL
11864       }
11865     },
11866     { &hf_ms_class3_unpacked_extended_dtm_gprs_multislot_class,
11867       { "Extended_DTM_GPRS_multislot_class",        "gsm_rlcmac.ul.ms_class3_unpacked_extended_dtm_gprs_multislot_class",
11868         FT_UINT8, BASE_DEC, NULL, 0x0,
11869         NULL, HFILL
11870       }
11871     },
11872     { &hf_ms_class3_unpacked_extended_dtm_egprs_multislot_class,
11873       { "Extended_DTM_EGPRS_multislot_class",        "gsm_rlcmac.ul.ms_class3_unpacked_extended_dtm_egprs_multislot_class",
11874         FT_UINT8, BASE_DEC, NULL, 0x0,
11875         NULL, HFILL
11876       }
11877     },
11878     { &hf_ms_class3_unpacked_highmultislotcapability,
11879       { "HighMultislotCapability",        "gsm_rlcmac.ul.ms_class3_unpacked_highmultislotcapability",
11880         FT_UINT8, BASE_DEC, NULL, 0x0,
11881         NULL, HFILL
11882       }
11883     },
11884     { &hf_ms_class3_unpacked_geran_lu_modecapability,
11885       { "GERAN_lu_ModeCapability",        "gsm_rlcmac.ul.ms_class3_unpacked_geran_lu_modecapability",
11886         FT_UINT8, BASE_DEC, NULL, 0x0,
11887         NULL, HFILL
11888       }
11889     },
11890     { &hf_ms_class3_unpacked_geran_featurepackage_2,
11891       { "GERAN_FeaturePackage_2",        "gsm_rlcmac.ul.ms_class3_unpacked_geran_featurepackage_2",
11892         FT_UINT8, BASE_DEC, NULL, 0x0,
11893         NULL, HFILL
11894       }
11895     },
11896     { &hf_ms_class3_unpacked_gmsk_multislotpowerprofile,
11897       { "GMSK_MultislotPowerProfile",        "gsm_rlcmac.ul.ms_class3_unpacked_gmsk_multislotpowerprofile",
11898         FT_UINT8, BASE_DEC, NULL, 0x0,
11899         NULL, HFILL
11900       }
11901     },
11902     { &hf_ms_class3_unpacked_eightpsk_multislotprofile,
11903       { "EightPSK_MultislotProfile",        "gsm_rlcmac.ul.ms_class3_unpacked_eightpsk_multislotprofile",
11904         FT_UINT8, BASE_DEC, NULL, 0x0,
11905         NULL, HFILL
11906       }
11907     },
11908     { &hf_ms_class3_unpacked_tgsm_400_bandssupported,
11909       { "TGSM_400_BandsSupported",        "gsm_rlcmac.ul.ms_class3_unpacked_tgsm_400_bandssupported",
11910         FT_UINT8, BASE_DEC, NULL, 0x0,
11911         NULL, HFILL
11912       }
11913     },
11914     { &hf_ms_class3_unpacked_tgsm_400_associatedradiocapability,
11915       { "TGSM_400_AssociatedRadioCapability",        "gsm_rlcmac.ul.ms_class3_unpacked_tgsm_400_associatedradiocapability",
11916         FT_UINT8, BASE_DEC, NULL, 0x0,
11917         NULL, HFILL
11918       }
11919     },
11920     { &hf_ms_class3_unpacked_tgsm_900_associatedradiocapability,
11921       { "TGSM_900_AssociatedRadioCapability",        "gsm_rlcmac.ul.ms_class3_unpacked_tgsm_900_associatedradiocapability",
11922         FT_UINT8, BASE_DEC, NULL, 0x0,
11923         NULL, HFILL
11924       }
11925     },
11926     { &hf_ms_class3_unpacked_downlinkadvancedreceiverperformance,
11927       { "DownlinkAdvancedReceiverPerformance",        "gsm_rlcmac.ul.ms_class3_unpacked_downlinkadvancedreceiverperformance",
11928         FT_UINT8, BASE_DEC, NULL, 0x0,
11929         NULL, HFILL
11930       }
11931     },
11932     { &hf_ms_class3_unpacked_dtm_enhancementscapability,
11933       { "DTM_EnhancementsCapability",        "gsm_rlcmac.ul.ms_class3_unpacked_dtm_enhancementscapability",
11934         FT_UINT8, BASE_DEC, NULL, 0x0,
11935         NULL, HFILL
11936       }
11937     },
11938     { &hf_ms_class3_unpacked_dtm_gprs_highmultislotclass,
11939       { "DTM_GPRS_HighMultislotClass",        "gsm_rlcmac.ul.ms_class3_unpacked_dtm_gprs_highmultislotclass",
11940         FT_UINT8, BASE_DEC, NULL, 0x0,
11941         NULL, HFILL
11942       }
11943     },
11944     { &hf_ms_class3_unpacked_offsetrequired,
11945       { "OffsetRequired",        "gsm_rlcmac.ul.ms_class3_unpacked_offsetrequired",
11946         FT_UINT8, BASE_DEC, NULL, 0x0,
11947         NULL, HFILL
11948       }
11949     },
11950     { &hf_ms_class3_unpacked_repeatedsacch_capability,
11951       { "RepeatedSACCH_Capability",        "gsm_rlcmac.ul.ms_class3_unpacked_repeatedsacch_capability",
11952         FT_UINT8, BASE_DEC, NULL, 0x0,
11953         NULL, HFILL
11954       }
11955     },
11956     { &hf_ms_class3_unpacked_spare2,
11957       { "Spare2",        "gsm_rlcmac.ul.ms_class3_unpacked_spare2",
11958         FT_UINT8, BASE_DEC, NULL, 0x0,
11959         NULL, HFILL
11960       }
11961     },
11962 #endif
11963     { &hf_channel_request_description_peak_throughput_class,
11964       { "PEAK_THROUGHPUT_CLASS",        "gsm_rlcmac.ul.channel_request_description_peak_throughput_class",
11965         FT_UINT8, BASE_DEC, NULL, 0x0,
11966         NULL, HFILL
11967       }
11968     },
11969     { &hf_channel_request_description_radio_priority,
11970       { "RADIO_PRIORITY",        "gsm_rlcmac.ul.channel_request_description_radio_priority",
11971         FT_UINT8, BASE_DEC, NULL, 0x0,
11972         NULL, HFILL
11973       }
11974     },
11975     { &hf_channel_request_description_llc_pdu_type,
11976       { "LLC_PDU_TYPE",        "gsm_rlcmac.ul.channel_request_description_llc_pdu_type",
11977         FT_BOOLEAN, BASE_NONE, NULL, 0x0,
11978         NULL, HFILL
11979       }
11980     },
11981     { &hf_channel_request_description_rlc_octet_count,
11982       { "RLC_OCTET_COUNT",        "gsm_rlcmac.ul.channel_request_description_rlc_octet_count",
11983         FT_UINT8, BASE_DEC, NULL, 0x0,
11984         NULL, HFILL
11985       }
11986     },
11987     { &hf_packet_resource_request_id_choice,
11988       { "Request ID Choice",        "gsm_rlcmac.ul.packet_resource_request_id_choice",
11989         FT_UINT8, BASE_DEC, NULL, 0x0,
11990         NULL, HFILL
11991       }
11992     },
11993     { &hf_bep_measurementreport_mean_bep_exist,
11994       { "Exist",        "gsm_rlcmac.ul.bep_measurementreport_mean_bep_exist",
11995         FT_UINT8, BASE_DEC, NULL, 0x0,
11996         NULL, HFILL
11997       }
11998     },
11999     { &hf_bep_measurementreport_mean_bep_union,
12000       { "BEP_MeasurementReport",        "gsm_rlcmac.ul.bep_measurementreport_mean_bep_union",
12001         FT_UINT8, BASE_DEC, NULL, 0x0,
12002         NULL, HFILL
12003       }
12004     },
12005     { &hf_interferencemeasurementreport_i_level_exist,
12006       { "Exist",        "gsm_rlcmac.ul.interferencemeasurementreport_i_level_exist",
12007         FT_UINT8, BASE_DEC, NULL, 0x0,
12008         NULL, HFILL
12009       }
12010     },
12011     { &hf_bep_measurements_exist,
12012       { "Exist_BEP_MEASUREMENTS",        "gsm_rlcmac.ul.bep_measurements_exist",
12013         FT_UINT8, BASE_DEC, NULL, 0x0,
12014         NULL, HFILL
12015       }
12016     },
12017     { &hf_interference_measurements_exist,
12018       { "Exist_INTERFERENCE_MEASUREMENTS",        "gsm_rlcmac.ul.interference_measurements_exist",
12019         FT_UINT8, BASE_DEC, NULL, 0x0,
12020         NULL, HFILL
12021       }
12022     },
12023     { &hf_egprs_bep_linkqualitymeasurements_mean_bep_gmsk_exist,
12024       { "Exist_MEAN_CV_BEP_GMSK",        "gsm_rlcmac.ul.egprs_bep_linkqualitymeasurements_mean_bep_gmsk_exist",
12025         FT_UINT8, BASE_DEC, NULL, 0x0,
12026         NULL, HFILL
12027       }
12028     },
12029     { &hf_egprs_bep_linkqualitymeasurements_mean_bep_8psk_exist,
12030       { "Exist_MEAN_CV_BEP_8PSK",        "gsm_rlcmac.ul.egprs_bep_linkqualitymeasurements_mean_bep_8psk_exist",
12031         FT_UINT8, BASE_DEC, NULL, 0x0,
12032         NULL, HFILL
12033       }
12034     },
12035     { &hf_egprs_bep_measurements_exist,
12036       { "Exist_EGPRS_BEP_LinkQualityMeasurements",        "gsm_rlcmac.ul.egprs_bep_measurements_exist",
12037         FT_UINT8, BASE_DEC, NULL, 0x0,
12038         NULL, HFILL
12039       }
12040     },
12041     { &hf_egprs_timeslotlinkquality_measurements_exist,
12042       { "Exist_EGPRS_TimeslotLinkQualityMeasurements",        "gsm_rlcmac.ul.egprs_timeslotlinkquality_measurements_exist",
12043         FT_UINT8, BASE_DEC, NULL, 0x0,
12044         NULL, HFILL
12045       }
12046     },
12047     { &hf_pfi_exist,
12048       { "Exist_PFI",        "gsm_rlcmac.ul.pfi_exist",
12049         FT_UINT8, BASE_DEC, NULL, 0x0,
12050         NULL, HFILL
12051       }
12052     },
12053 
12054 /* < Packet Resource Request message content > */
12055     { &hf_bep_measurementreport_mean_bep_gmsk,
12056       { "MEAN_BEP_GMSK",        "gsm_rlcmac.ul.prr_mean_bep_gmsk",
12057         FT_UINT8, BASE_DEC, NULL, 0x0,
12058         NULL, HFILL
12059       }
12060     },
12061     { &hf_bep_measurementreport_mean_bep_8psk,
12062       { "MEAN_BEP_8PSK",        "gsm_rlcmac.ul.prr_mean_bep_8psk",
12063         FT_UINT8, BASE_DEC, NULL, 0x0,
12064         NULL, HFILL
12065       }
12066     },
12067     { &hf_interferencemeasurementreport_i_level,
12068       { "I_LEVEL",        "gsm_rlcmac.ul.prr_i_level",
12069         FT_UINT8, BASE_DEC, NULL, 0x0,
12070         NULL, HFILL
12071       }
12072     },
12073     { &hf_egprs_bep_linkqualitymeasurements_mean_bep_gmsk,
12074       { "MEAN_BEP_GMSK",        "gsm_rlcmac.ul.prr_mean_bep_gmsk",
12075         FT_UINT8, BASE_DEC, NULL, 0x0,
12076         NULL, HFILL
12077       }
12078     },
12079     { &hf_egprs_bep_linkqualitymeasurements_cv_bep_gmsk,
12080       { "CV_BEP_GMSK",        "gsm_rlcmac.ul.prr_cv_bep_gmsk",
12081         FT_UINT8, BASE_DEC, NULL, 0x0,
12082         NULL, HFILL
12083       }
12084     },
12085     { &hf_egprs_bep_linkqualitymeasurements_mean_bep_8psk,
12086       { "MEAN_BEP_8PSK",        "gsm_rlcmac.ul.prr_mean_bep_8psk",
12087         FT_UINT8, BASE_DEC, NULL, 0x0,
12088         NULL, HFILL
12089       }
12090     },
12091     { &hf_egprs_bep_linkqualitymeasurements_cv_bep_8psk,
12092       { "CV_BEP_8PSK",        "gsm_rlcmac.ul.prr_cv_bep_8psk",
12093         FT_UINT8, BASE_DEC, NULL, 0x0,
12094         NULL, HFILL
12095       }
12096     },
12097     { &hf_egprs_prr_additionsr5_g_rnti_exist,
12098       { "Exist_G_RNTI",        "gsm_rlcmac.ul.prr_g_rnti_exist",
12099         FT_UINT8, BASE_DEC, NULL, 0x0,
12100         NULL, HFILL
12101       }
12102     },
12103     { &hf_egprs_prr_additionsr5_g_rnti_extension,
12104       { "G_RNTI_Extension",        "gsm_rlcmac.ul.prr_g_rnti_extension",
12105         FT_UINT8, BASE_DEC, NULL, 0x0,
12106         NULL, HFILL
12107       }
12108     },
12109     { &hf_egprs_prr_additionsr5_rb_id,
12110       { "RB_ID",        "gsm_rlcmac.ul.prr_rb_id",
12111         FT_UINT8, BASE_DEC, NULL, 0x0,
12112         NULL, HFILL
12113       }
12114     },
12115     { &hf_egprs_prr_additionsr5_radio_priority,
12116       { "Radio_Priority",        "gsm_rlcmac.ul.prr_radio_priority",
12117         FT_UINT8, BASE_DEC, NULL, 0x0,
12118         NULL, HFILL
12119       }
12120     },
12121     { &hf_egprs_prr_additionsr5_rlc_block_count_exist,
12122       { "Exist_RLC_Block_Count",        "gsm_rlcmac.ul.prr_exist_rlc_block_count",
12123         FT_UINT8, BASE_DEC, NULL, 0x0,
12124         NULL, HFILL
12125       }
12126     },
12127     { &hf_egprs_prr_additionsr5_rlc_block_count,
12128       { "RLC_Block_Count",        "gsm_rlcmac.ul.prr_rlc_block_count",
12129         FT_UINT8, BASE_DEC, NULL, 0x0,
12130         NULL, HFILL
12131       }
12132     },
12133     { &hf_iu_mode_chrequest_exist,
12134       { "Iu_Mode_ChRequestDesk",        "gsm_rlcmac.ul.prr_iu_mode_chrequestdesk",
12135         FT_UINT8, BASE_DEC, NULL, 0x0,
12136         NULL, HFILL
12137       }
12138     },
12139     { &hf_egprs_prr_additionsr6_lcc_pdu_exist,
12140       { "Exist_LCC_PDU",        "gsm_rlcmac.ul.prr_exist_lcc_pdu",
12141         FT_UINT8, BASE_DEC, NULL, 0x0,
12142         NULL, HFILL
12143       }
12144     },
12145     { &hf_egprs_prr_additionsr6_lcc_pdu,
12146       { "LCC_PDU",        "gsm_rlcmac.ul.prr_lcc_pdu",
12147         FT_UINT8, BASE_DEC, NULL, 0x0,
12148         NULL, HFILL
12149       }
12150     },
12151     { &hf_Ext_Channel_Request_desc_exist,
12152       { "Exist_Channel_request_desc",        "gsm_rlcmac.ul.prr_channel_request_desc",
12153         FT_UINT8, BASE_DEC, NULL, 0x0,
12154         NULL, HFILL
12155       }
12156     },
12157     { &hf_egprs_prr_additionsr7_gmsk_mean_bep_exist,
12158       { "Exist_GMSK_MEAN_BEP",        "gsm_rlcmac.ul.prr_exist_gmsk_mean_bep",
12159         FT_UINT8, BASE_DEC, NULL, 0x0,
12160         NULL, HFILL
12161       }
12162     },
12163     { &hf_egprs_prr_additionsr7_gmsk_mean_bep,
12164       { "GMSK_MEAN_BEP",        "gsm_rlcmac.ul.prr_gmsk_bep",
12165         FT_UINT8, BASE_DEC, NULL, 0x0,
12166         NULL, HFILL
12167       }
12168     },
12169     { &hf_egprs_prr_additionsr7_gmsk_cv_bep,
12170       { "GMSK_CV_BEP",        "gsm_rlcmac.ul.prr_gmsk_cv_bep",
12171         FT_UINT8, BASE_DEC, NULL, 0x0,
12172         NULL, HFILL
12173       }
12174     },
12175     { &hf_egprs_prr_additionsr7_8psk_mean_bep_exist,
12176       { "Exist_8PSK_MEAN_BEP",        "gsm_rlcmac.ul.prr_exist_8psk_mean_bep",
12177         FT_UINT8, BASE_DEC, NULL, 0x0,
12178         NULL, HFILL
12179       }
12180     },
12181     { &hf_egprs_prr_additionsr7_8psk_mean_bep,
12182       { "p8PSK_MEAN_BEP",        "gsm_rlcmac.ul.prr_8psk_mean_bep",
12183         FT_UINT8, BASE_DEC, NULL, 0x0,
12184         NULL, HFILL
12185       }
12186     },
12187     { &hf_egprs_prr_additionsr7_8psk_cv_bep,
12188       { "p8PSK_CV_BEP",        "gsm_rlcmac.ul.prr_8psk_cv_bep",
12189         FT_UINT8, BASE_DEC, NULL, 0x0,
12190         NULL, HFILL
12191       }
12192     },
12193     { &hf_egprs_prr_additionsr7_qpsk_mean_bep_exist,
12194       { "Exist_QPSK_MEAN_BEP",        "gsm_rlcmac.ul.prr_exist_qpsk_mean_bep",
12195         FT_UINT8, BASE_DEC, NULL, 0x0,
12196         NULL, HFILL
12197       }
12198     },
12199     { &hf_egprs_prr_additionsr7_qpsk_mean_bep,
12200       { "QPSK_MEAN_BEP",        "gsm_rlcmac.ul.prr_qpsk_mean_bep",
12201         FT_UINT8, BASE_DEC, NULL, 0x0,
12202         NULL, HFILL
12203       }
12204     },
12205     { &hf_egprs_prr_additionsr7_qpsk_cv_bep,
12206       { "QPSK_CV_BEP",        "gsm_rlcmac.ul.prr_qpsk_cv_bep",
12207         FT_UINT8, BASE_DEC, NULL, 0x0,
12208         NULL, HFILL
12209       }
12210     },
12211     { &hf_egprs_prr_additionsr7_16qam_nsr_mean_bep_exist,
12212       { "Exist_16QAM_NSR_MEAN_BEP",        "gsm_rlcmac.ul.prr_exist_16qam__nsr_mean_bep",
12213         FT_UINT8, BASE_DEC, NULL, 0x0,
12214         NULL, HFILL
12215       }
12216     },
12217     { &hf_egprs_prr_additionsr7_16qam_nsr_mean_bep,
12218       { "p16QAM_NSR_MEAN_BEP",        "gsm_rlcmac.ul.prr_16qam_nsr_mean_bep",
12219         FT_UINT8, BASE_DEC, NULL, 0x0,
12220         NULL, HFILL
12221       }
12222     },
12223     { &hf_egprs_prr_additionsr7_16qam_nsr_cv_bep,
12224       { "p16QAM_NSR_CV_BEP",        "gsm_rlcmac.ul.prr_16qam_nsr_cv_bep",
12225         FT_UINT8, BASE_DEC, NULL, 0x0,
12226         NULL, HFILL
12227       }
12228     },
12229     { &hf_egprs_prr_additionsr7_32qam_nsr_mean_bep_exist,
12230       { "Exist_32QAM_NSR_MEAN_BEP",        "gsm_rlcmac.ul.prr_exist_32qam_nsr_mean_bep",
12231         FT_UINT8, BASE_DEC, NULL, 0x0,
12232         NULL, HFILL
12233       }
12234     },
12235     { &hf_egprs_prr_additionsr7_32qam_nsr_mean_bep,
12236       { "p32QAM_NSR_MEAN_BEP",        "gsm_rlcmac.ul.prr_32qam_nsr_mean_bep",
12237         FT_UINT8, BASE_DEC, NULL, 0x0,
12238         NULL, HFILL
12239       }
12240     },
12241     { &hf_egprs_prr_additionsr7_32qam_nsr_cv_bep,
12242       { "p32QAM_NSR_CV_BEP",        "gsm_rlcmac.ul.prr_32qam_nsr_cv_bep",
12243         FT_UINT8, BASE_DEC, NULL, 0x0,
12244         NULL, HFILL
12245       }
12246     },
12247     { &hf_egprs_prr_additionsr7_16qam_hsr_mean_bep_exist,
12248       { "Exist_16QAM_HSR_MEAN_BEP",        "gsm_rlcmac.ul.prr_esixt_16qam_hsr_mean_bep",
12249         FT_UINT8, BASE_DEC, NULL, 0x0,
12250         NULL, HFILL
12251       }
12252     },
12253     { &hf_egprs_prr_additionsr7_16qam_hsr_mean_bep,
12254       { "p16QAM_HSR_MEAN_BEP",        "gsm_rlcmac.ul.prr_16qam_hsr_mean_bep",
12255         FT_UINT8, BASE_DEC, NULL, 0x0,
12256         NULL, HFILL
12257       }
12258     },
12259     { &hf_egprs_prr_additionsr7_16qam_hsr_cv_bep,
12260       { "p16QAM_HSR_CV_BEP",        "gsm_rlcmac.ul.prr_16qam_hsr_cv_bep",
12261         FT_UINT8, BASE_DEC, NULL, 0x0,
12262         NULL, HFILL
12263       }
12264     },
12265     { &hf_egprs_prr_additionsr7_32qam_hsr_mean_bep_exist,
12266       { "Exist_32QAM_HSR_MEAN_BEP",        "gsm_rlcmac.ul.prr_exist_32qam_hsr_mean_bep",
12267         FT_UINT8, BASE_DEC, NULL, 0x0,
12268         NULL, HFILL
12269       }
12270     },
12271     { &hf_egprs_prr_additionsr7_32qam_hsr_mean_bep,
12272       { "p32QAM_HSR_MEAN_BEP",        "gsm_rlcmac.ul.prr_32qam_hsr_mean_bep",
12273         FT_UINT8, BASE_DEC, NULL, 0x0,
12274         NULL, HFILL
12275       }
12276     },
12277     { &hf_egprs_prr_additionsr7_32qam_hsr_cv_bep,
12278       { "p32QAM_HSR_CV_BEP",        "gsm_rlcmac.ul.prr_32qam_hsr_cv_bep",
12279         FT_UINT8, BASE_DEC, NULL, 0x0,
12280         NULL, HFILL
12281       }
12282     },
12283     { &hf_bep_measurementreport_reported_modulation,
12284       { "REPORTED_MODULATION",        "gsm_rlcmac.ul.prr_reported_modulation",
12285         FT_UINT8, BASE_DEC, NULL, 0x0,
12286         NULL, HFILL
12287       }
12288     },
12289     { &hf_bep_measurementreport_mean_bep_tn,
12290       { "MEAN_BEP_TN",        "gsm_rlcmac.ul.prr_mean_bep_tn",
12291         FT_UINT8, BASE_DEC, NULL, 0x0,
12292         NULL, HFILL
12293       }
12294     },
12295     { &hf_prr_additionsr99_additionsr5_exist,
12296       { "Exist_AdditionsR5",        "gsm_rlcmac.ul.prr_exist_r5",
12297         FT_UINT8, BASE_DEC, NULL, 0x0,
12298         NULL, HFILL
12299       }
12300     },
12301     { &hf_egprs_prr_additionsr5_hfn_lsb_exist,
12302       { "Exist_HFN_LSB",        "gsm_rlcmac.ul.prr_exist_hfn_lsb",
12303         FT_UINT8, BASE_DEC, NULL, 0x0,
12304         NULL, HFILL
12305       }
12306     },
12307     { &hf_egprs_prr_additionsr5_hfn_lsb,
12308       { "HFN_LSB",        "gsm_rlcmac.ul.prr_hfn_lsb",
12309         FT_UINT8, BASE_DEC, NULL, 0x0,
12310         NULL, HFILL
12311       }
12312     },
12313     { &hf_prr_additionsr5_additionsr6_exist,
12314       { "Exist_AdditionsR6",        "gsm_rlcmac.ul.prr_exist_r6",
12315         FT_UINT8, BASE_DEC, NULL, 0x0,
12316         NULL, HFILL
12317       }
12318     },
12319     { &hf_prr_additionsr6_additionsr7_exist,
12320       { "Exist_AdditionsR7",        "gsm_rlcmac.ul.prr_exsit_r7",
12321         FT_UINT8, BASE_DEC, NULL, 0x0,
12322         NULL, HFILL
12323       }
12324     },
12325     { &hf_prr_additionsr7_early_tbf_establishment,
12326       { "EARLY_TBF_ESTABLISHMENT",        "gsm_rlcmac.ul.prr_early_tbf_establishment",
12327         FT_UINT8, BASE_DEC, NULL, 0x0,
12328         NULL, HFILL
12329       }
12330     },
12331     { &hf_egprs_bep_measurements_type2_exist,
12332       { "Exist_EGPRS_BEP_LinkQualityMeasurements_type2",        "gsm_rlcmac.ul.prr_exist_egprs_bep_measurements_type2",
12333         FT_UINT8, BASE_DEC, NULL, 0x0,
12334         NULL, HFILL
12335       }
12336     },
12337     { &hf_egprs_timeslotlinkquality_measurements_type2_exist,
12338       { "Exist_EGPRS_TimeslotLinkQualityMeasurements_type2",        "gsm_rlcmac.ul.prr_exist_egprs_temeslotquality_meas_type2",
12339         FT_UINT8, BASE_DEC, NULL, 0x0,
12340         NULL, HFILL
12341       }
12342     },
12343     { &hf_prr_additionsr7_additionsr10_exist,
12344       { "Exist_AdditionsR10",        "gsm_rlcmac.ul.prr_exist_r10",
12345         FT_UINT8, BASE_DEC, NULL, 0x0,
12346         NULL, HFILL
12347       }
12348     },
12349     { &hf_prr_additionsr10_low_access_priority_signalling,
12350       { "LOW_ACCESS_PRIORITY_SIGNALLING",        "gsm_rlcmac.ul.prr_low_access_signalling",
12351         FT_UINT8, BASE_DEC, NULL, 0x0,
12352         NULL, HFILL
12353       }
12354     },
12355     { &hf_prr_additionsr10_additionsr12_exist,
12356       { "Exist_AdditionsR12",        "gsm_rlcmac.ul.prr_exist_r12",
12357         FT_UINT8, BASE_DEC, NULL, 0x0,
12358         NULL, HFILL
12359       }
12360     },
12361     { &hf_egprs_downlink_etfi_exist,
12362       { "Exist_Downlink_eTFI",        "gsm_rlcmac.ul.prr_exist_downlink_etfi",
12363         FT_UINT8, BASE_DEC, NULL, 0x0,
12364         NULL, HFILL
12365       }
12366     },
12367     { &hf_prr_additionsr12_downlink_etfi,
12368       { "DOWNLINK_ETFI",        "gsm_rlcmac.ul.prr_downlink_etfi",
12369         FT_UINT8, BASE_DEC, NULL, 0x0,
12370         NULL, HFILL
12371       }
12372     },
12373     { &hf_prr_additionsr99_ms_rac_additionalinformationavailable,
12374       { "MS_RAC_AdditionalInformationAvailable",        "gsm_rlcmac.ul.prr_ms_rac_additionalinformationavailable",
12375         FT_UINT8, BASE_DEC, NULL, 0x0,
12376         NULL, HFILL
12377       }
12378     },
12379     { &hf_prr_additionsr99_retransmissionofprr,
12380       { "RetransmissionOfPRR",        "gsm_rlcmac.ul.prr_retransmissionofprr",
12381         FT_UINT8, BASE_DEC, NULL, 0x0,
12382         NULL, HFILL
12383       }
12384     },
12385     { &hf_additional_ms_rad_access_cap_id_choice,
12386       { "AdditionalMsRadAccessCapID Choice",        "gsm_rlcmac.ul.additional_ms_rad_access_cap_id_choice",
12387         FT_UINT8, BASE_DEC, NULL, 0x0,
12388         NULL, HFILL
12389       }
12390     },
12391     { &hf_ul_mac_header_spare,
12392       { "spare",        "gsm_rlcmac.ul.mac_spare",
12393         FT_UINT8, BASE_DEC, NULL, 0x0,
12394         NULL, HFILL
12395       }
12396     },
12397     { &hf_packet_resource_request_access_type,
12398       { "ACCESS_TYPE",        "gsm_rlcmac.ul.prr_access_type",
12399         FT_UINT8, BASE_DEC, NULL, 0x0,
12400         NULL, HFILL
12401       }
12402     },
12403     { &hf_packet_resource_request_access_type_exist,
12404       { "Exist_ACCESS_TYPE",        "gsm_rlcmac.ul.prr_access_type_exist",
12405         FT_UINT8, BASE_DEC, NULL, 0x0,
12406         NULL, HFILL
12407       }
12408     },
12409     { &hf_ms_radio_access_capability_exist,
12410       { "Exist_MS_Radio_Access_capability",        "gsm_rlcmac.ul.ms_radio_access_capability_exist",
12411         FT_UINT8, BASE_DEC, NULL, 0x0,
12412         NULL, HFILL
12413       }
12414     },
12415     { &hf_packet_resource_request_change_mark_exist,
12416       { "Exist_CHANGE_MARK",        "gsm_rlcmac.ul.prr_change_mark_exist",
12417         FT_UINT8, BASE_DEC, NULL, 0x0,
12418         NULL, HFILL
12419       }
12420     },
12421     { &hf_packet_resource_request_sign_var_exist,
12422       { "Exist_SIGN_VAR",        "gsm_rlcmac.ul.prr_sign_var_exist",
12423         FT_UINT8, BASE_DEC, NULL, 0x0,
12424         NULL, HFILL
12425       }
12426     },
12427     { &hf_additionsr99_exist,
12428       { "Exist_AdditionsR99",        "gsm_rlcmac.ul.additionsr99_exist",
12429         FT_UINT8, BASE_DEC, NULL, 0x0,
12430         NULL, HFILL
12431       }
12432     },
12433 
12434     { &hf_packet_resource_request_change_mark,
12435       { "CHANGE_MARK",        "gsm_rlcmac.ul.prr_change_mark",
12436         FT_UINT8, BASE_DEC, NULL, 0x0,
12437         NULL, HFILL
12438       }
12439     },
12440     { &hf_packet_resource_request_c_value,
12441       { "C_VALUE",        "gsm_rlcmac.ul.prr_c_value",
12442         FT_UINT8, BASE_DEC, NULL, 0x0,
12443         NULL, HFILL
12444       }
12445     },
12446     { &hf_packet_resource_request_sign_var,
12447       { "SIGN_VAR",        "gsm_rlcmac.ul.prr_sign_var",
12448         FT_UINT8, BASE_DEC, NULL, 0x0,
12449         NULL, HFILL
12450       }
12451     },
12452 
12453 /* < Packet Mobile TBF Status message content > */
12454     { &hf_packet_mobile_tbf_status_tbf_cause,
12455       { "TBF_CAUSE",        "gsm_rlcmac.ul.pmts_tbf_cause",
12456         FT_UINT8, BASE_DEC, NULL, 0x0,
12457         NULL, HFILL
12458       }
12459     },
12460 /* < Packet PSI Status message content > */
12461     { &hf_psi_message_psix_change_mark,
12462       { "PSIX_CHANGE_MARK",        "gsm_rlcmac.ul.pps_psix_change_mark",
12463         FT_UINT8, BASE_DEC, NULL, 0x0,
12464         NULL, HFILL
12465       }
12466     },
12467     { &hf_additional_msg_type,
12468       { "ADDITIONAL_MSG_TYPE",        "gsm_rlcmac.ul.additional_msg_type",
12469         FT_UINT8, BASE_DEC, NULL, 0x0,
12470         NULL, HFILL
12471       }
12472     },
12473     { &hf_packet_psi_status_pbcch_change_mark,
12474       { "PBCCH_CHANGE_MARK",        "gsm_rlcmac.ul.pps_pbcch_change_mark",
12475         FT_UINT8, BASE_DEC, NULL, 0x0,
12476         NULL, HFILL
12477       }
12478     },
12479     { &hf_psi_message_psix_count_instance_bitmap_exist,
12480       { "Exist_PSIX_COUNT_and_Instance_Bitmap",        "gsm_rlcmac.ul.pps_count_instance_bitmap_exist",
12481         FT_UINT8, BASE_DEC, NULL, 0x0,
12482         NULL, HFILL
12483       }
12484     },
12485     { &hf_psi_message_psix_count,
12486       { "PSIX_COUNT",        "gsm_rlcmac.ul.pps_count",
12487         FT_UINT8, BASE_DEC, NULL, 0x0,
12488         NULL, HFILL
12489       }
12490     },
12491     { &hf_psi_message_instance_bitmap,
12492       { "Instance bitmap",        "gsm_rlcmac.ul.pps_instance_bitmap",
12493         FT_UINT8, BASE_DEC, NULL, 0x0,
12494         NULL, HFILL
12495       }
12496     },
12497     { &hf_psi_message_exist,
12498       { "PSI_Message Exists",        "gsm_rlcmac.ul.pps_message_exist",
12499         FT_UINT8, BASE_DEC, NULL, 0x0,
12500         NULL, HFILL
12501       }
12502     },
12503     { &hf_psi_message_list,
12504       { "Message List",        "gsm_rlcmac.ul.pps_message_list",
12505         FT_UINT8, BASE_DEC, NULL, 0x0,
12506         NULL, HFILL
12507       }
12508     },
12509 
12510 /* < Packet SI Status message content > */
12511     { &hf_si_message_type,
12512       { "MESSAGE_TYPE",        "gsm_rlcmac.ul.si_message_type",
12513         FT_UINT8, BASE_HEX|BASE_EXT_STRING, &si_message_type_vals_ext, 0x0,
12514         NULL, HFILL
12515       }
12516     },
12517     { &hf_si_message_mess_rec,
12518       { "MESS_REC",        "gsm_rlcmac.ul.si_message_mess_rec",
12519         FT_UINT8, BASE_DEC, NULL, 0x0,
12520         NULL, HFILL
12521       }
12522     },
12523     { &hf_si_message_list_exist,
12524       { "SI_Message Exists",        "gsm_rlcmac.ul.si_message_list_exist",
12525         FT_UINT8, BASE_DEC, NULL, 0x0,
12526         NULL, HFILL
12527       }
12528     },
12529     { &hf_si_message_list,
12530       { "Message List",        "gsm_rlcmac.ul.si_message_list",
12531         FT_UINT8, BASE_DEC, NULL, 0x0,
12532         NULL, HFILL
12533       }
12534     },
12535 
12536 /* < Packet Downlink Ack/Nack message content > */
12537 
12538 /* < EGPRS Packet Downlink Ack/Nack message content > */
12539     { &hf_egprs_channelqualityreport_c_value,
12540       { "C_VALUE",        "gsm_rlcmac.ul.epdan_c_value",
12541         FT_UINT8, BASE_DEC, NULL, 0x0,
12542         NULL, HFILL
12543       }
12544     },
12545     { &hf_egprs_pd_acknack_ms_out_of_memory,
12546       { "MS_OUT_OF_MEMORY",        "gsm_rlcmac.ul.epdan_ms_out_of_memory",
12547         FT_UINT8, BASE_DEC, NULL, 0x0,
12548         NULL, HFILL
12549       }
12550     },
12551     { &hf_fddarget_cell_t_fdd_arfcn,
12552       { "FDD_ARFCN",        "gsm_rlcmac.ul.epdan_fdd_arfcn",
12553         FT_UINT8, BASE_DEC, NULL, 0x0,
12554         NULL, HFILL
12555       }
12556     },
12557     { &hf_fddarget_cell_t_diversity,
12558       { "DIVERSITY",        "gsm_rlcmac.ul.epdan_diversity",
12559         FT_UINT8, BASE_DEC, NULL, 0x0,
12560         NULL, HFILL
12561       }
12562     },
12563     { &hf_fddarget_cell_t_bandwith_fdd,
12564       { "BANDWIDTH_FDD",        "gsm_rlcmac.ul.epdan_bandwidth_fdd",
12565         FT_UINT8, BASE_DEC, NULL, 0x0,
12566         NULL, HFILL
12567       }
12568     },
12569     { &hf_fddarget_cell_t_scrambling_code,
12570       { "SCRAMBLING_CODE",        "gsm_rlcmac.ul.epdan_scrambling_code",
12571         FT_UINT8, BASE_DEC, NULL, 0x0,
12572         NULL, HFILL
12573       }
12574     },
12575     { &hf_tddarget_cell_t_tdd_arfcn,
12576       { "TDD-ARFCN",        "gsm_rlcmac.ul.epdan_tdd_arfcn",
12577         FT_UINT8, BASE_DEC, NULL, 0x0,
12578         NULL, HFILL
12579       }
12580     },
12581     { &hf_tddarget_cell_t_diversity,
12582       { "Diversity TDD",        "gsm_rlcmac.ul.epdan_diversity_tdd",
12583         FT_UINT8, BASE_DEC, NULL, 0x0,
12584         NULL, HFILL
12585       }
12586     },
12587     { &hf_tddarget_cell_t_bandwith_tdd,
12588       { "Bandwidth_TDD",        "gsm_rlcmac.ul.epdan_bandwidth_tdd",
12589         FT_UINT8, BASE_DEC, NULL, 0x0,
12590         NULL, HFILL
12591       }
12592     },
12593     { &hf_tddarget_cell_t_cell_parameter,
12594       { "Cell Parameter",        "gsm_rlcmac.ul.epdan_cell_param",
12595         FT_UINT8, BASE_DEC, NULL, 0x0,
12596         NULL, HFILL
12597       }
12598     },
12599     { &hf_tddarget_cell_t_sync_case_tstd,
12600       { "Sync Case TSTD",        "gsm_rlcmac.ul.epdan_sync_case_tstd",
12601         FT_UINT8, BASE_DEC, NULL, 0x0,
12602         NULL, HFILL
12603       }
12604     },
12605 
12606 /* < Packet Cell Change Failure message content > */
12607     { &hf_packet_cell_change_failure_bsic,
12608       { "BSIC",        "gsm_rlcmac.ul.pccf_bsic",
12609         FT_UINT8, BASE_DEC, NULL, 0x0,
12610         NULL, HFILL
12611       }
12612     },
12613     { &hf_packet_cell_change_failure_cause,
12614       { "CAUSE",        "gsm_rlcmac.ul.pccf_cause",
12615         FT_UINT8, BASE_DEC, VALS(cell_change_failure_cause_vals), 0x0,
12616         NULL, HFILL
12617       }
12618     },
12619     { &hf_utran_csg_target_cell_ci,
12620       { "UTRAN_CI",        "gsm_rlcmac.ul.utran_csg_target_cell_ci",
12621         FT_UINT32, BASE_DEC, NULL, 0x0,
12622         NULL, HFILL
12623       }
12624     },
12625     { &hf_eutran_csg_target_cell_ci,
12626       { "EUTRAN_CI",        "gsm_rlcmac.ul.eutran_csg_target_cell_ci",
12627         FT_UINT32, BASE_DEC, NULL, 0x0,
12628         NULL, HFILL
12629       }
12630     },
12631     { &hf_eutran_csg_target_cell_tac,
12632       { "Tracking Area Code",        "gsm_rlcmac.ul.eutran_csg_target_cell_tac",
12633         FT_UINT16, BASE_DEC, NULL, 0x0,
12634         NULL, HFILL
12635       }
12636     },
12637 
12638 /* < Packet Uplink Ack/Nack message content > */
12639     { &hf_pu_acknack_gprs_additionsr99_tbf_est,
12640       { "TBF_EST",        "gsm_rlcmac.ul.puan_tbf_est",
12641         FT_UINT8, BASE_DEC, NULL, 0x0,
12642         NULL, HFILL
12643       }
12644     },
12645     { &hf_pu_acknack_gprs_fixedallocationdummy,
12646       { "FixedAllocationDummy",        "gsm_rlcmac.ul.puan_fixedallocationdummy",
12647         FT_UINT8, BASE_DEC, NULL, 0x0,
12648         NULL, HFILL
12649       }
12650     },
12651     { &hf_pu_acknack_egprs_00_pre_emptive_transmission,
12652       { "PRE_EMPTIVE_TRANSMISSION",        "gsm_rlcmac.ul.puan_pre_emptive_transmission",
12653         FT_UINT8, BASE_DEC, NULL, 0x0,
12654         NULL, HFILL
12655       }
12656     },
12657     { &hf_pu_acknack_egprs_00_prr_retransmission_request,
12658       { "PRR_RETRANSMISSION_REQUEST",        "gsm_rlcmac.ul.puan_prr_retransmission_request",
12659         FT_UINT8, BASE_DEC, NULL, 0x0,
12660         NULL, HFILL
12661       }
12662     },
12663     { &hf_pu_acknack_egprs_00_arac_retransmission_request,
12664       { "ARAC_RETRANSMISSION_REQUEST",        "gsm_rlcmac.ul.puan_arac_retransmission_request",
12665         FT_UINT8, BASE_DEC, NULL, 0x0,
12666         NULL, HFILL
12667       }
12668     },
12669     { &hf_pu_acknack_egprs_00_tbf_est,
12670       { "TBF_EST",        "gsm_rlcmac.ul.puan_tbf_est",
12671         FT_UINT8, BASE_DEC, NULL, 0x0,
12672         NULL, HFILL
12673       }
12674     },
12675     { &hf_packet_uplink_id_choice,
12676       { "Packet_Uplink_ID Choice",        "gsm_rlcmac.ul.packet_uplink_id_choice",
12677         FT_UINT8, BASE_DEC, NULL, 0x0,
12678         NULL, HFILL
12679       }
12680     },
12681     { &hf_packet_extended_timing_advance,
12682       { "Packet_Extended_Timing_Advance",        "gsm_rlcmac.ul.packet_extended_timing_advance",
12683         FT_UINT8, BASE_DEC, NULL, 0x0,
12684         NULL, HFILL
12685       }
12686     },
12687 
12688 /* < Packet Uplink Assignment message content > */
12689     { &hf_change_mark_change_mark_1,
12690       { "CHANGE_MARK_1",        "gsm_rlcmac.dl.pua_change_mark_1",
12691         FT_UINT8, BASE_DEC, NULL, 0x0,
12692         NULL, HFILL
12693       }
12694     },
12695     { &hf_change_mark_change_mark_2,
12696       { "CHANGE_MARK_2",        "gsm_rlcmac.dl.pua_change_mark_2",
12697         FT_UINT8, BASE_DEC, NULL, 0x0,
12698         NULL, HFILL
12699       }
12700     },
12701     { &hf_indirect_encoding_ma_number,
12702       { "MA_NUMBER",        "gsm_rlcmac.dl.pua_ma_number",
12703         FT_UINT8, BASE_DEC, NULL, 0x0,
12704         NULL, HFILL
12705       }
12706     },
12707     { &hf_ma_frequency_list_length,
12708       { "MA Frequency List Length",        "gsm_rlcmac.dl.ma_frequency_list_length",
12709         FT_UINT8, BASE_DEC, NULL, 0x0,
12710         NULL, HFILL
12711       }
12712     },
12713     { &hf_ma_frequency_list,
12714       { "MA Frequency List",        "gsm_rlcmac.dl.ma_frequency_list",
12715         FT_UINT8, BASE_DEC, NULL, 0x0,
12716         NULL, HFILL
12717       }
12718     },
12719     { &hf_packet_request_reference_random_access_information,
12720       { "RANDOM_ACCESS_INFORMATION",        "gsm_rlcmac.dl.pua_random_access_information",
12721         FT_UINT8, BASE_DEC, NULL, 0x0,
12722         NULL, HFILL
12723       }
12724     },
12725     { &hf_packet_request_reference_frame_number,
12726       { "FRAME_NUMBER",        "gsm_rlcmac.dl.pua_frame_number",
12727         FT_UINT8, BASE_DEC, NULL, 0x0,
12728         NULL, HFILL
12729       }
12730     },
12731     { &hf_extended_dynamic_allocation,
12732       { "Extended_Dynamic_Allocation",        "gsm_rlcmac.dl.extended_dynamic_allocation",
12733         FT_UINT8, BASE_DEC, NULL, 0x0,
12734         NULL, HFILL
12735       }
12736     },
12737     { &hf_ppc_timing_advance_id_choice,
12738       { "PacketPowerControlTimingAdvanceID",        "gsm_rlcmac.dl.ppc_timing_advance_id_choice",
12739         FT_UINT8, BASE_DEC, NULL, 0x0,
12740         NULL, HFILL
12741       }
12742     },
12743     { &hf_rlc_data_blocks_granted,
12744       { "RLC_DATA_BLOCKS_GRANTED",        "gsm_rlcmac.dl.rlc_data_blocks_granted",
12745         FT_UINT8, BASE_DEC, NULL, 0x0,
12746         NULL, HFILL
12747       }
12748     },
12749     { &hf_single_block_allocation_timeslot_number,
12750       { "TIMESLOT_NUMBER",        "gsm_rlcmac.dl.pua_timeslot_number",
12751         FT_UINT8, BASE_DEC, NULL, 0x0,
12752         NULL, HFILL
12753       }
12754     },
12755 #if 0
12756     { &hf_dtm_single_block_allocation_timeslot_number,
12757       { "TIMESLOT_NUMBER",        "gsm_rlcmac.dl.pua_dtm_timeslot_number",
12758         FT_UINT8, BASE_DEC, NULL, 0x0,
12759         NULL, HFILL
12760       }
12761     },
12762 #endif
12763     { &hf_compact_reducedma_bitmaplength,
12764       { "BitmapLength",        "gsm_rlcmac.dl.pua_bitmaplength",
12765         FT_UINT8, BASE_DEC, NULL, 0x0,
12766         NULL, HFILL
12767       }
12768     },
12769     { &hf_compact_reducedma_bitmap,
12770       { "Bitmap",        "gsm_rlcmac.dl.pua_bitmap",
12771         FT_UINT8, BASE_DEC, NULL, 0x0,
12772         NULL, HFILL
12773       }
12774     },
12775     { &hf_multiblock_allocation_timeslot_number,
12776       { "TIMESLOT_NUMBER",        "gsm_rlcmac.dl.pua_multiblock_timeslot_number",
12777         FT_UINT8, BASE_DEC, NULL, 0x0,
12778         NULL, HFILL
12779       }
12780     },
12781     { &hf_pua_egprs_00_arac_retransmission_request,
12782       { "ARAC_RETRANSMISSION_REQUEST",        "gsm_rlcmac.dl.pua_egprs_00_arac_retransmission_request",
12783         FT_UINT8, BASE_DEC, NULL, 0x0,
12784         NULL, HFILL
12785       }
12786     },
12787     { &hf_pua_egprs_00_access_tech_type,
12788       { "AccessTechnologyType",        "gsm_rlcmac.dl.pua_egprs_00_access_tech_type",
12789         FT_UINT8, BASE_DEC, NULL, 0x0,
12790         NULL, HFILL
12791       }
12792     },
12793     { &hf_pua_egprs_00_access_tech_type_exist,
12794       { "AccessTechnologyType Exist",        "gsm_rlcmac.dl.pua_egprs_00_access_tech_type_exist",
12795         FT_UINT8, BASE_DEC, NULL, 0x0,
12796         NULL, HFILL
12797       }
12798     },
12799 
12800 /* < Packet Downlink Assignment message content > */
12801     { &hf_measurement_mapping_struct_measurement_interval,
12802       { "MEASUREMENT_INTERVAL",        "gsm_rlcmac.dl.pda_measurement_interval",
12803         FT_UINT8, BASE_DEC, NULL, 0x0,
12804         NULL, HFILL
12805       }
12806     },
12807     { &hf_measurement_mapping_struct_measurement_bitmap,
12808       { "MEASUREMENT_BITMAP",        "gsm_rlcmac.dl.pda_measurement_bitmap",
12809         FT_UINT8, BASE_DEC, NULL, 0x0,
12810         NULL, HFILL
12811       }
12812     },
12813     { &hf_packet_downlink_id_choice,
12814       { "Packet Downlink ID Choice",        "gsm_rlcmac.dl.id_choice",
12815         FT_UINT8, BASE_DEC, NULL, 0x0,
12816         NULL, HFILL
12817       }
12818     },
12819     { &hf_mac_mode,
12820       { "MAC_MODE",        "gsm_rlcmac.dl.mac_mode",
12821         FT_UINT8, BASE_DEC, VALS(mac_mode_vals), 0x0,
12822         NULL, HFILL
12823       }
12824     },
12825     { &hf_control_ack,
12826       { "CONTROL_ACK",        "gsm_rlcmac.dl.control_ack",
12827         FT_BOOLEAN, BASE_NONE, TFS(&control_ack_vals), 0x0,
12828         NULL, HFILL
12829       }
12830     },
12831     { &hf_dl_timeslot_allocation,
12832       { "TIMESLOT_ALLOCATION",        "gsm_rlcmac.dl.timeslot_allocation",
12833         FT_UINT8, BASE_DEC, NULL, 0x0,
12834         NULL, HFILL
12835       }
12836     },
12837 #if 0
12838     { &hf_dtm_channel_request_description_dtm_pkt_est_cause,
12839       { "DTM_Pkt_Est_Cause",        "gsm_rlcmac.dl.pda_dtm_pkt_est_cause",
12840         FT_UINT8, BASE_DEC, NULL, 0x0,
12841         NULL, HFILL
12842       }
12843     },
12844 #endif
12845 
12846 /* < Packet Paging Request message content > */
12847     { &hf_mobile_identity_length_of_mobile_identity_contents,
12848       { "Length_of_Mobile_Identity_contents",        "gsm_rlcmac.dl.ppr_length_of_mobile_identity_contents",
12849         FT_UINT8, BASE_DEC, NULL, 0x0,
12850         NULL, HFILL
12851       }
12852     },
12853     { &hf_page_request_for_rr_conn_channel_needed,
12854       { "CHANNEL_NEEDED",        "gsm_rlcmac.dl.ppr_channel_needed",
12855         FT_UINT8, BASE_DEC, NULL, 0x0,
12856         NULL, HFILL
12857       }
12858     },
12859     { &hf_page_request_for_rr_conn_tmsi,
12860       { "TMSI",        "gsm_rlcmac.dl.ppr_conn_tmsi",
12861         FT_UINT8, BASE_DEC, NULL, 0x0,
12862         NULL, HFILL
12863       }
12864     },
12865     { &hf_page_request_for_rr_conn_emlpp_priority,
12866       { "eMLPP_PRIORITY",        "gsm_rlcmac.dl.ppr_emlpp_priority",
12867         FT_UINT8, BASE_DEC, NULL, 0x0,
12868         NULL, HFILL
12869       }
12870     },
12871     { &hf_page_request_ptmsi,
12872       { "u.PTMSI",        "gsm_rlcmac.dl.page_request_ptmsi",
12873         FT_UINT8, BASE_DEC, NULL, 0x0,
12874         NULL, HFILL
12875       }
12876     },
12877     { &hf_packet_pdch_release_timeslots_available,
12878       { "TIMESLOTS_AVAILABLE",        "gsm_rlcmac.dl.ppr_timeslots_available",
12879         FT_UINT8, BASE_DEC, NULL, 0x0,
12880         NULL, HFILL
12881       }
12882     },
12883 /* < Packet Power Control/Timing Advance message content > */
12884 
12885 /* < Packet Queueing Notification message content > */
12886 
12887 /* < Packet Timeslot Reconfigure message content > */
12888 
12889 /* < Packet PRACH Parameters message content > */
12890     { &hf_prach_acc_contr_class,
12891       { "ACC_CONTR_CLASS",        "gsm_rlcmac.dl.prach_acc_contr_class",
12892         FT_UINT8, BASE_DEC, NULL, 0x0,
12893         NULL, HFILL
12894       }
12895     },
12896     { &hf_prach_max_retrans,
12897       { "MAX_RETRANS",        "gsm_rlcmac.dl.prach_max_retrans",
12898         FT_UINT8, BASE_DEC, NULL, 0x0,
12899         NULL, HFILL
12900       }
12901     },
12902     { &hf_prach_control_s,
12903       { "S",        "gsm_rlcmac.dl.prach_s",
12904         FT_UINT8, BASE_DEC, NULL, 0x0,
12905         NULL, HFILL
12906       }
12907     },
12908     { &hf_prach_control_tx_int,
12909       { "TX_INT",        "gsm_rlcmac.dl.prach_tx_int",
12910         FT_UINT8, BASE_DEC, NULL, 0x0,
12911         NULL, HFILL
12912       }
12913     },
12914     { &hf_cell_allocation_rfl_number,
12915       { "RFL_Number",        "gsm_rlcmac.dl.cell_allocation_rfl_number",
12916         FT_UINT8, BASE_DEC, NULL, 0x0,
12917         NULL, HFILL
12918       }
12919     },
12920     { &hf_cell_allocation_rfl_number_exist,
12921       { "RFL_Number Exist",        "gsm_rlcmac.dl.cell_allocation_rfl_number_exist",
12922         FT_UINT8, BASE_DEC, NULL, 0x0,
12923         NULL, HFILL
12924       }
12925     },
12926     { &hf_hcs_priority_class,
12927       { "PRIORITY_CLASS",        "gsm_rlcmac.dl.hcs_priority_class",
12928         FT_UINT8, BASE_DEC, NULL, 0x0,
12929         NULL, HFILL
12930       }
12931     },
12932     { &hf_hcs_hcs_thr,
12933       { "HCS_THR",        "gsm_rlcmac.dl.hcs_thr",
12934         FT_UINT8, BASE_DEC, NULL, 0x0,
12935         NULL, HFILL
12936       }
12937     },
12938     { &hf_location_repeat_pbcch_location,
12939       { "PBCCH_LOCATION",        "gsm_rlcmac.dl.pbcch_location",
12940         FT_UINT8, BASE_DEC, NULL, 0x0,
12941         NULL, HFILL
12942       }
12943     },
12944     { &hf_location_repeat_psi1_repeat_period,
12945       { "PSI1_REPEAT_PERIOD",        "gsm_rlcmac.dl.psi1_repeat_period",
12946         FT_UINT8, BASE_DEC, VALS(gsm_rlcmac_val_plus_1_vals), 0x0,
12947         NULL, HFILL
12948       }
12949     },
12950     { &hf_si13_pbcch_location_si13_location,
12951       { "SI13_LOCATION",        "gsm_rlcmac.dl.si13_location",
12952         FT_UINT8, BASE_DEC, NULL, 0x0,
12953         NULL, HFILL
12954       }
12955     },
12956     { &hf_cell_selection_bsic,
12957       { "BSIC",        "gsm_rlcmac.dl.cell_selection_bsic",
12958         FT_UINT8, BASE_DEC, NULL, 0x0,
12959         NULL, HFILL
12960       }
12961     },
12962     { &hf_cell_bar_access_2,
12963       { "CELL_BAR_ACCESS_2",        "gsm_rlcmac.dl.cell_selection_cell_bar_access_2",
12964         FT_UINT8, BASE_DEC, NULL, 0x0,
12965         NULL, HFILL
12966       }
12967     },
12968     { &hf_exc_acc,
12969       { "EXC_ACC",        "gsm_rlcmac.dl.exc_acc",
12970         FT_UINT8, BASE_DEC, NULL, 0x0,
12971         NULL, HFILL
12972       }
12973     },
12974     { &hf_cell_selection_same_ra_as_serving_cell,
12975       { "SAME_RA_AS_SERVING_CELL",        "gsm_rlcmac.dl.cell_selection_same_ra_as_serving_cell",
12976         FT_UINT8, BASE_DEC, NULL, 0x0,
12977         NULL, HFILL
12978       }
12979     },
12980     { &hf_cell_selection_gprs_rxlev_access_min,
12981       { "GPRS_RXLEV_ACCESS_MIN",        "gsm_rlcmac.dl.cell_selection_gprs_rxlev_access_min",
12982         FT_UINT8, BASE_DEC, NULL, 0x0,
12983         NULL, HFILL
12984       }
12985     },
12986     { &hf_cell_selection_gprs_ms_txpwr_max_cch,
12987       { "GPRS_MS_TXPWR_MAX_CCH",        "gsm_rlcmac.dl.cell_selection_gprs_ms_txpwr_max_cch",
12988         FT_UINT8, BASE_DEC, NULL, 0x0,
12989         NULL, HFILL
12990       }
12991     },
12992     { &hf_cell_selection_gprs_temporary_offset,
12993       { "GPRS_TEMPORARY_OFFSET",        "gsm_rlcmac.dl.cell_selection_gprs_temporary_offset",
12994         FT_UINT8, BASE_DEC, NULL, 0x0,
12995         NULL, HFILL
12996       }
12997     },
12998     { &hf_cell_selection_gprs_penalty_time,
12999       { "GPRS_PENALTY_TIME",        "gsm_rlcmac.dl.cell_selection_gprs_penalty_time",
13000         FT_UINT8, BASE_DEC, NULL, 0x0,
13001         NULL, HFILL
13002       }
13003     },
13004     { &hf_cell_selection_gprs_reselect_offset,
13005       { "GPRS_RESELECT_OFFSET",        "gsm_rlcmac.dl.cell_selection_gprs_reselect_offset",
13006         FT_UINT8, BASE_DEC, NULL, 0x0,
13007         NULL, HFILL
13008       }
13009     },
13010     { &hf_cell_selection_param_with_freqdiff,
13011       { "FREQUENCY_DIFF",        "gsm_rlcmac.dl.cell_selection_param_with_freqdiff",
13012         FT_UINT8, BASE_DEC, NULL, 0x0,
13013         NULL, HFILL
13014       }
13015     },
13016     { &hf_neighbourcellparameters_start_frequency,
13017       { "START_FREQUENCY",        "gsm_rlcmac.dl.cell_selection_start_frequency",
13018         FT_UINT8, BASE_DEC, NULL, 0x0,
13019         NULL, HFILL
13020       }
13021     },
13022     { &hf_neighbourcellparameters_nr_of_remaining_cells,
13023       { "NR_OF_REMAINING_CELLS",        "gsm_rlcmac.dl.cell_selection_nr_of_remaining_cells",
13024         FT_UINT8, BASE_DEC, NULL, 0x0,
13025         NULL, HFILL
13026       }
13027     },
13028     { &hf_neighbourcellparameters_freq_diff_length,
13029       { "FREQ_DIFF_LENGTH",        "gsm_rlcmac.dl.cellparameters_freq_diff_length",
13030         FT_UINT8, BASE_DEC, NULL, 0x0,
13031         NULL, HFILL
13032       }
13033     },
13034     { &hf_cell_selection_2_same_ra_as_serving_cell,
13035       { "SAME_RA_AS_SERVING_CELL",        "gsm_rlcmac.dl.cell_selection2_same_ra_as_serving_cell",
13036         FT_UINT8, BASE_DEC, NULL, 0x0,
13037         NULL, HFILL
13038       }
13039     },
13040     { &hf_cell_selection_2_gprs_rxlev_access_min,
13041       { "GPRS_RXLEV_ACCESS_MIN",        "gsm_rlcmac.dl.cell_selection2_gprs_rxlev_access_min",
13042         FT_UINT8, BASE_DEC, NULL, 0x0,
13043         NULL, HFILL
13044       }
13045     },
13046     { &hf_cell_selection_2_gprs_ms_txpwr_max_cch,
13047       { "GPRS_MS_TXPWR_MAX_CCH",        "gsm_rlcmac.dl.cell_selection2_gprs_ms_txpwr_max_cch",
13048         FT_UINT8, BASE_DEC, NULL, 0x0,
13049         NULL, HFILL
13050       }
13051     },
13052     { &hf_cell_selection_2_gprs_temporary_offset,
13053       { "GPRS_TEMPORARY_OFFSET",        "gsm_rlcmac.dl.cell_selection2_gprs_temporary_offset",
13054         FT_UINT8, BASE_DEC, NULL, 0x0,
13055         NULL, HFILL
13056       }
13057     },
13058     { &hf_cell_selection_2_gprs_penalty_time,
13059       { "GPRS_PENALTY_TIME",        "gsm_rlcmac.dl.cell_selection2_gprs_penalty_time",
13060         FT_UINT8, BASE_DEC, NULL, 0x0,
13061         NULL, HFILL
13062       }
13063     },
13064     { &hf_cell_selection_2_gprs_reselect_offset,
13065       { "GPRS_RESELECT_OFFSET",        "gsm_rlcmac.dl.cell_selection2_gprs_reselect_offset",
13066         FT_UINT8, BASE_DEC, NULL, 0x0,
13067         NULL, HFILL
13068       }
13069     },
13070 
13071 /* < Packet Access Reject message content > */
13072     { &hf_reject_id_choice,
13073       { "Reject ID Choice",        "gsm_rlcmac.dl.reject_id_choice",
13074         FT_UINT8, BASE_DEC, NULL, 0x0,
13075         NULL, HFILL
13076       }
13077     },
13078     { &hf_reject_wait_indication,
13079       { "WAIT_INDICATION",        "gsm_rlcmac.dl.par_wait_indication",
13080         FT_UINT8, BASE_DEC, NULL, 0x0,
13081         NULL, HFILL
13082       }
13083     },
13084     { &hf_reject_wait_indication_size,
13085       { "WAIT_INDICATION_SIZE",        "gsm_rlcmac.dl.par_wait_indication_size",
13086         FT_UINT8, BASE_DEC, NULL, 0x0,
13087         NULL, HFILL
13088       }
13089     },
13090     { &hf_packet_cell_change_order_id_choice,
13091       { "PacketCellChangeOrderID Choice",        "gsm_rlcmac.dl.packet_cell_change_order_id_choice",
13092         FT_UINT8, BASE_DEC, NULL, 0x0,
13093         NULL, HFILL
13094       }
13095     },
13096 
13097 /* < Packet Cell Change Order message content > */
13098 #if 0
13099     { &hf_h_freqbsiccell_bsic,
13100       { "BSIC",        "gsm_rlcmac.dl.pcco_bsic",
13101         FT_UINT8, BASE_DEC, NULL, 0x0,
13102         NULL, HFILL
13103       }
13104     },
13105 #endif
13106     { &hf_cellselectionparamswithfreqdiff_bsic,
13107       { "BSIC",        "gsm_rlcmac.dl.pcco_bsic",
13108         FT_UINT8, BASE_DEC, NULL, 0x0,
13109         NULL, HFILL
13110       }
13111     },
13112     { &hf_add_frequency_list_start_frequency,
13113       { "START_FREQUENCY",        "gsm_rlcmac.dl.add_frequency_list_start_frequency",
13114         FT_UINT8, BASE_DEC, NULL, 0x0,
13115         NULL, HFILL
13116       }
13117     },
13118     { &hf_add_frequency_list_bsic,
13119       { "BSIC",        "gsm_rlcmac.dl.add_frequency_list_bsic",
13120         FT_UINT8, BASE_DEC, NULL, 0x0,
13121         NULL, HFILL
13122       }
13123     },
13124     { &hf_add_frequency_list_nr_of_frequencies,
13125       { "NR_OF_FREQUENCIES",        "gsm_rlcmac.dl.add_frequency_list_nr_of_frequencies",
13126         FT_UINT8, BASE_DEC, NULL, 0x0,
13127         NULL, HFILL
13128       }
13129     },
13130     { &hf_add_frequency_list_freq_diff_length,
13131       { "FREQ_DIFF_LENGTH",        "gsm_rlcmac.dl.add_frequency_list_freq_diff_length",
13132         FT_UINT8, BASE_DEC, NULL, 0x0,
13133         NULL, HFILL
13134       }
13135     },
13136     { &hf_nc_frequency_list_nr_of_removed_freq,
13137       { "NR_OF_REMOVED_FREQ",        "gsm_rlcmac.dl.add_frequency_list_nr_of_removed_freq",
13138         FT_UINT8, BASE_DEC, NULL, 0x0,
13139         NULL, HFILL
13140       }
13141     },
13142     { &hf_removed_freq_index_removed_freq_index,
13143       { "REMOVED FREQUENCIES",        "gsm_rlcmac.dl.removed_freq_index",
13144         FT_UINT8, BASE_DEC, NULL, 0x0,
13145         NULL, HFILL
13146       }
13147     },
13148     { &hf_nc_measurement_parameters_network_control_order,
13149       { "NETWORK_CONTROL_ORDER",        "gsm_rlcmac.dl.nc_measurement_parameters_network_control_order",
13150         FT_UINT8, BASE_DEC, NULL, 0x0,
13151         NULL, HFILL
13152       }
13153     },
13154     { &hf_nc_measurement_parameters_nc_non_drx_period,
13155       { "NC_NON_DRX_PERIOD",        "gsm_rlcmac.dl.nc_measurement_parameters_nc_non_drx_period",
13156         FT_UINT8, BASE_DEC, NULL, 0x0,
13157         NULL, HFILL
13158       }
13159     },
13160     { &hf_nc_measurement_parameters_nc_reporting_period_i,
13161       { "NC_REPORTING_PERIOD_I",        "gsm_rlcmac.dl.nc_measurement_parameters_nc_reporting_period_i",
13162         FT_UINT8, BASE_DEC, NULL, 0x0,
13163         NULL, HFILL
13164       }
13165     },
13166     { &hf_nc_measurement_parameters_nc_reporting_period_t,
13167       { "NC_REPORTING_PERIOD_T",        "gsm_rlcmac.dl.nc_measurement_parameters_nc_reporting_period_t",
13168         FT_UINT8, BASE_DEC, NULL, 0x0,
13169         NULL, HFILL
13170       }
13171     },
13172     { &hf_nc_measurement_parameters_with_frequency_list_network_control_order,
13173       { "NETWORK_CONTROL_ORDER",        "gsm_rlcmac.dl.nc_measurement_parameters_network_control_order",
13174         FT_UINT8, BASE_DEC, NULL, 0x0,
13175         NULL, HFILL
13176       }
13177     },
13178     { &hf_nc_measurement_parameters_with_frequency_list_nc_non_drx_period,
13179       { "NC_NON_DRX_PERIOD",        "gsm_rlcmac.dl.nc_measurement_parameters_nc_non_drx_period",
13180         FT_UINT8, BASE_DEC, NULL, 0x0,
13181         NULL, HFILL
13182       }
13183     },
13184     { &hf_nc_measurement_parameters_with_frequency_list_nc_reporting_period_i,
13185       { "NC_REPORTING_PERIOD_I",        "gsm_rlcmac.dl.nc_measurement_parameters_nc_reporting_period_i",
13186         FT_UINT8, BASE_DEC, NULL, 0x0,
13187         NULL, HFILL
13188       }
13189     },
13190     { &hf_nc_measurement_parameters_with_frequency_list_nc_reporting_period_t,
13191       { "NC_REPORTING_PERIOD_T",        "gsm_rlcmac.dl.nc_measurement_parameters_nc_reporting_period_t",
13192         FT_UINT8, BASE_DEC, NULL, 0x0,
13193         NULL, HFILL
13194       }
13195     },
13196 
13197 /* < Packet Cell Change Order message contents > */
13198     { &hf_ba_ind_ba_ind,
13199       { "BA_IND",        "gsm_rlcmac.dl.pcco_ba_ind",
13200         FT_UINT8, BASE_DEC, NULL, 0x0,
13201         NULL, HFILL
13202       }
13203     },
13204     { &hf_ba_ind_ba_ind_3g,
13205       { "BA_IND_3G",        "gsm_rlcmac.dl.pcco_ba_ind_3g",
13206         FT_UINT8, BASE_DEC, NULL, 0x0,
13207         NULL, HFILL
13208       }
13209     },
13210     { &hf_gprsreportpriority_number_cells,
13211       { "NUMBER_CELLS",        "gsm_rlcmac.dl.gprsreportpriority_number_cells",
13212         FT_UINT8, BASE_DEC, NULL, 0x0,
13213         NULL, HFILL
13214       }
13215     },
13216     { &hf_gprsreportpriority_report_priority,
13217       { "REPORT_PRIORITY",        "gsm_rlcmac.dl.gprsreportpriority_report_priority",
13218         FT_UINT8, BASE_DEC, NULL, 0x0,
13219         NULL, HFILL
13220       }
13221     },
13222     { &hf_offsetthreshold_reporting_offset,
13223       { "REPORTING_OFFSET",        "gsm_rlcmac.dl.offsetthreshold_reporting_offset",
13224         FT_UINT8, BASE_DEC, NULL, 0x0,
13225         NULL, HFILL
13226       }
13227     },
13228     { &hf_offsetthreshold_reporting_threshold,
13229       { "REPORTING_THRESHOLD",        "gsm_rlcmac.dl.offsetthreshold_reporting_threshold",
13230         FT_UINT8, BASE_DEC, NULL, 0x0,
13231         NULL, HFILL
13232       }
13233     },
13234     { &hf_gprsmeasurementparams_pmo_pcco_multi_band_reporting,
13235       { "MULTI_BAND_REPORTING",        "gsm_rlcmac.dl.gprsmeasurementparams_pmo_pcco_multi_band_reporting",
13236         FT_UINT8, BASE_DEC, NULL, 0x0,
13237         NULL, HFILL
13238       }
13239     },
13240     { &hf_gprsmeasurementparams_pmo_pcco_serving_band_reporting,
13241       { "SERVING_BAND_REPORTING",        "gsm_rlcmac.dl.gprsmeasurementparams_pmo_pcco_serving_band_reporting",
13242         FT_UINT8, BASE_DEC, NULL, 0x0,
13243         NULL, HFILL
13244       }
13245     },
13246     { &hf_gprsmeasurementparams_pmo_pcco_scale_ord,
13247       { "SCALE_ORD",        "gsm_rlcmac.dl.gprsmeasurementparams_pmo_pcco_scale_ord",
13248         FT_UINT8, BASE_DEC, NULL, 0x0,
13249         NULL, HFILL
13250       }
13251     },
13252 #if 0
13253     { &hf_gprsmeasurementparams3g_qsearch_p,
13254       { "Qsearch_p",        "gsm_rlcmac.dl.gprsmeasurementparams3g_qsearch_p",
13255         FT_UINT8, BASE_DEC, NULL, 0x0,
13256         NULL, HFILL
13257       }
13258     },
13259     { &hf_gprsmeasurementparams3g_searchprio3g,
13260       { "SearchPrio3G",        "gsm_rlcmac.dl.gprsmeasurementparams3g_searchprio3g",
13261         FT_UINT8, BASE_DEC, NULL, 0x0,
13262         NULL, HFILL
13263       }
13264     },
13265     { &hf_gprsmeasurementparams3g_repquantfdd,
13266       { "RepQuantFDD",        "gsm_rlcmac.dl.gprsmeasurementparams3g_repquantfdd",
13267         FT_UINT8, BASE_DEC, NULL, 0x0,
13268         NULL, HFILL
13269       }
13270     },
13271     { &hf_gprsmeasurementparams3g_multiratreportingfdd,
13272       { "MultiratReportingFDD",        "gsm_rlcmac.dl.gprsmeasurementparams3g_multiratreportingfdd",
13273         FT_UINT8, BASE_DEC, NULL, 0x0,
13274         NULL, HFILL
13275       }
13276     },
13277     { &hf_gprsmeasurementparams3g_reportingoffsetfdd,
13278       { "ReportingOffsetFDD",        "gsm_rlcmac.dl.gprsmeasurementparams3g_reportingoffsetfdd",
13279         FT_UINT8, BASE_DEC, NULL, 0x0,
13280         NULL, HFILL
13281       }
13282     },
13283     { &hf_gprsmeasurementparams3g_reportingthresholdfdd,
13284       { "ReportingThresholdFDD",        "gsm_rlcmac.dl.gprsmeasurementparams3g_reportingthresholdfdd",
13285         FT_UINT8, BASE_DEC, NULL, 0x0,
13286         NULL, HFILL
13287       }
13288     },
13289     { &hf_gprsmeasurementparams3g_multiratreportingtdd,
13290       { "MultiratReportingTDD",        "gsm_rlcmac.dl.gprsmeasurementparams3g_multiratreportingtdd",
13291         FT_UINT8, BASE_DEC, NULL, 0x0,
13292         NULL, HFILL
13293       }
13294     },
13295     { &hf_gprsmeasurementparams3g_reportingoffsettdd,
13296       { "ReportingOffsetTDD",        "gsm_rlcmac.dl.gprsmeasurementparams3g_reportingoffsettdd",
13297         FT_UINT8, BASE_DEC, NULL, 0x0,
13298         NULL, HFILL
13299       }
13300     },
13301     { &hf_gprsmeasurementparams3g_reportingthresholdtdd,
13302       { "ReportingThresholdTDD",        "gsm_rlcmac.dl.gprsmeasurementparams3g_reportingthresholdtdd",
13303         FT_UINT8, BASE_DEC, NULL, 0x0,
13304         NULL, HFILL
13305       }
13306     },
13307 #endif
13308     { &hf_multiratparams3g_multiratreporting,
13309       { "MultiratReporting",        "gsm_rlcmac.dl.multiratparams3g_multiratreporting",
13310         FT_UINT8, BASE_DEC, NULL, 0x0,
13311         NULL, HFILL
13312       }
13313     },
13314     { &hf_enh_gprsmeasurementparams3g_pmo_qsearch_p,
13315       { "Qsearch_P",        "gsm_rlcmac.dl.enh_gprsmeasurementparams3g_pmo_qsearch_p",
13316         FT_UINT8, BASE_DEC, NULL, 0x0,
13317         NULL, HFILL
13318       }
13319     },
13320     { &hf_enh_gprsmeasurementparams3g_pmo_searchprio3g,
13321       { "SearchPrio3G",        "gsm_rlcmac.dl.enh_gprsmeasurementparams3g_pmo_searchprio3g",
13322         FT_UINT8, BASE_DEC, NULL, 0x0,
13323         NULL, HFILL
13324       }
13325     },
13326     { &hf_enh_gprsmeasurementparams3g_pmo_repquantfdd,
13327       { "RepQuantFDD",        "gsm_rlcmac.dl.enh_gprsmeasurementparams3g_pmo_repquantfdd",
13328         FT_UINT8, BASE_DEC, NULL, 0x0,
13329         NULL, HFILL
13330       }
13331     },
13332     { &hf_enh_gprsmeasurementparams3g_pmo_multiratreportingfdd,
13333       { "MultiratReportingFDD",        "gsm_rlcmac.dl.enh_gprsmeasurementparams3g_pmo_multiratreportingfdd",
13334         FT_UINT8, BASE_DEC, NULL, 0x0,
13335         NULL, HFILL
13336       }
13337     },
13338     { &hf_enh_gprsmeasurementparams3g_pcco_qsearch_p,
13339       { "Qsearch_P",        "gsm_rlcmac.dl.enh_gprsmeasurementparams3g_pcco_qsearch_p",
13340         FT_UINT8, BASE_DEC, NULL, 0x0,
13341         NULL, HFILL
13342       }
13343     },
13344     { &hf_enh_gprsmeasurementparams3g_pcco_searchprio3g,
13345       { "SearchPrio3G",        "gsm_rlcmac.dl.enh_gprsmeasurementparams3g_pcco_searchprio3g",
13346         FT_UINT8, BASE_DEC, NULL, 0x0,
13347         NULL, HFILL
13348       }
13349     },
13350     { &hf_enh_gprsmeasurementparams3g_pcco_repquantfdd,
13351       { "RepQuantFDD",        "gsm_rlcmac.dl.enh_gprsmeasurementparams3g_pcco_repquantfdd",
13352         FT_UINT8, BASE_DEC, NULL, 0x0,
13353         NULL, HFILL
13354       }
13355     },
13356     { &hf_enh_gprsmeasurementparams3g_pcco_multiratreportingfdd,
13357       { "MultiratReportingFDD",        "gsm_rlcmac.dl.enh_gprsmeasurementparams3g_pcco_multiratreportingfdd",
13358         FT_UINT8, BASE_DEC, NULL, 0x0,
13359         NULL, HFILL
13360       }
13361     },
13362     { &hf_n2_removed_3gcell_index,
13363       { "REMOVED_3GCELL_INDEX",        "gsm_rlcmac.dl.removed_3gcell_index",
13364         FT_UINT8, BASE_DEC, NULL, 0x0,
13365         NULL, HFILL
13366       }
13367     },
13368     { &hf_n2_cell_diff_length_3g,
13369       { "CELL_DIFF_LENGTH_3G",        "gsm_rlcmac.dl.cell_diff_length_3g",
13370         FT_UINT8, BASE_DEC, NULL, 0x0,
13371         NULL, HFILL
13372       }
13373     },
13374     { &hf_n2_cell_diff,
13375       { "CELL_DIFF",        "gsm_rlcmac.dl.cell_diff",
13376         FT_UINT8, BASE_DEC, NULL, 0x0,
13377         NULL, HFILL
13378       }
13379     },
13380     { &hf_n2_count,
13381       { "N2 Count",        "gsm_rlcmac.dl.n2_count",
13382         FT_UINT8, BASE_DEC, NULL, 0x0,
13383         NULL, HFILL
13384       }
13385     },
13386     { &hf_n1_count,
13387       { "N1 Count",        "gsm_rlcmac.dl.n1_count",
13388         FT_UINT8, BASE_DEC, NULL, 0x0,
13389         NULL, HFILL
13390       }
13391     },
13392     { &hf_cdma2000_description_complete_this,
13393       { "Complete_This",        "gsm_rlcmac.dl.complete_this",
13394         FT_UINT8, BASE_DEC, NULL, 0x0,
13395         NULL, HFILL
13396       }
13397     },
13398     { &hf_utran_fdd_neighbourcells_zero,
13399       { "ZERO",        "gsm_rlcmac.dl.utran_fdd_neighbourcells_zero",
13400         FT_UINT8, BASE_DEC, NULL, 0x0,
13401         NULL, HFILL
13402       }
13403     },
13404     { &hf_utran_fdd_neighbourcells_uarfcn,
13405       { "UARFCN",        "gsm_rlcmac.dl.utran_fdd_neighbourcells_uarfcn",
13406         FT_UINT8, BASE_DEC, NULL, 0x0,
13407         NULL, HFILL
13408       }
13409     },
13410     { &hf_utran_fdd_neighbourcells_indic0,
13411       { "Indic0",        "gsm_rlcmac.dl.utran_fdd_neighbourcells_indic0",
13412         FT_UINT8, BASE_DEC, NULL, 0x0,
13413         NULL, HFILL
13414       }
13415     },
13416     { &hf_utran_fdd_neighbourcells_nrofcells,
13417       { "NrOfCells",        "gsm_rlcmac.dl.utran_fdd_neighbourcells_nrofcells",
13418         FT_UINT8, BASE_DEC, NULL, 0x0,
13419         NULL, HFILL
13420       }
13421     },
13422     { &hf_utran_fdd_neighbourcells_cellinfo,
13423       { "CellInfo",        "gsm_rlcmac.dl.utran_fdd_neighbourcells_cellinfo",
13424         FT_UINT8, BASE_DEC, NULL, 0x0,
13425         NULL, HFILL
13426       }
13427     },
13428     { &hf_utran_fdd_description_bandwidth,
13429       { "Bandwidth",        "gsm_rlcmac.dl.utran_fdd_neighbourcells_bandwidth",
13430         FT_UINT8, BASE_DEC, NULL, 0x0,
13431         NULL, HFILL
13432       }
13433     },
13434     { &hf_utran_tdd_neighbourcells_zero,
13435       { "ZERO",        "gsm_rlcmac.dl.utran_tdd_neighbourcells_zero",
13436         FT_UINT8, BASE_DEC, NULL, 0x0,
13437         NULL, HFILL
13438       }
13439     },
13440     { &hf_utran_tdd_neighbourcells_uarfcn,
13441       { "UARFCN",        "gsm_rlcmac.dl.utran_tdd_neighbourcells_uarfcn",
13442         FT_UINT8, BASE_DEC, NULL, 0x0,
13443         NULL, HFILL
13444       }
13445     },
13446     { &hf_utran_tdd_neighbourcells_indic0,
13447       { "Indic0",        "gsm_rlcmac.dl.utran_tdd_neighbourcells_indic0",
13448         FT_UINT8, BASE_DEC, NULL, 0x0,
13449         NULL, HFILL
13450       }
13451     },
13452     { &hf_utran_tdd_neighbourcells_nrofcells,
13453       { "NrOfCells",        "gsm_rlcmac.dl.utran_tdd_neighbourcells_nrofcells",
13454         FT_UINT8, BASE_DEC, NULL, 0x0,
13455         NULL, HFILL
13456       }
13457     },
13458     { &hf_utran_tdd_description_bandwidth,
13459       { "Bandwidth",        "gsm_rlcmac.dl.utran_tdd_description_bandwidth",
13460         FT_UINT8, BASE_DEC, NULL, 0x0,
13461         NULL, HFILL
13462       }
13463     },
13464     { &hf_index_start_3g,
13465       { "Index_Start_3G",        "gsm_rlcmac.dl.index_start_3g",
13466         FT_UINT8, BASE_DEC, NULL, 0x0,
13467         NULL, HFILL
13468       }
13469     },
13470     { &hf_absolute_index_start_emr,
13471       { "Absolute_Index_Start_EMR",        "gsm_rlcmac.dl.absolute_index_start_emr",
13472         FT_UINT8, BASE_DEC, NULL, 0x0,
13473         NULL, HFILL
13474       }
13475     },
13476     { &hf_psi3_change_mark,
13477       { "PSI3_CHANGE_MARK",        "gsm_rlcmac.dl.psi3_change_mark",
13478         FT_UINT8, BASE_DEC, NULL, 0x0,
13479         NULL, HFILL
13480       }
13481     },
13482     { &hf_enh_measurement_parameters_pmo_pmo_ind,
13483       { "PMO_IND",        "gsm_rlcmac.dl.enh_measurement_parameters_pmo_pmo_ind",
13484         FT_UINT8, BASE_DEC, NULL, 0x0,
13485         NULL, HFILL
13486       }
13487     },
13488     { &hf_enh_measurement_parameters_pmo_report_type,
13489       { "REPORT_TYPE",        "gsm_rlcmac.dl.enh_measurement_parameters_pmo_report_type",
13490         FT_UINT8, BASE_DEC, NULL, 0x0,
13491         NULL, HFILL
13492       }
13493     },
13494     { &hf_enh_measurement_parameters_pmo_reporting_rate,
13495       { "REPORTING_RATE",        "gsm_rlcmac.dl.enh_measurement_parameters_pmo_reporting_rate",
13496         FT_UINT8, BASE_DEC, NULL, 0x0,
13497         NULL, HFILL
13498       }
13499     },
13500     { &hf_enh_measurement_parameters_pmo_invalid_bsic_reporting,
13501       { "INVALID_BSIC_REPORTING",        "gsm_rlcmac.dl.enh_measurement_parameters_pmo_invalid_bsic_reporting",
13502         FT_UINT8, BASE_DEC, NULL, 0x0,
13503         NULL, HFILL
13504       }
13505     },
13506     { &hf_enh_measurement_parameters_pcco_pmo_ind,
13507       { "PMO_IND",        "gsm_rlcmac.dl.enh_measurement_parameters_pcco_pmo_ind",
13508         FT_UINT8, BASE_DEC, NULL, 0x0,
13509         NULL, HFILL
13510       }
13511     },
13512     { &hf_enh_measurement_parameters_pcco_report_type,
13513       { "REPORT_TYPE",        "gsm_rlcmac.dl.enh_measurement_parameters_pcco_report_type",
13514         FT_UINT8, BASE_DEC, NULL, 0x0,
13515         NULL, HFILL
13516       }
13517     },
13518     { &hf_enh_measurement_parameters_pcco_reporting_rate,
13519       { "REPORTING_RATE",        "gsm_rlcmac.dl.enh_measurement_parameters_pcco_reporting_rate",
13520         FT_UINT8, BASE_DEC, NULL, 0x0,
13521         NULL, HFILL
13522       }
13523     },
13524     { &hf_enh_measurement_parameters_pcco_invalid_bsic_reporting,
13525       { "INVALID_BSIC_REPORTING",        "gsm_rlcmac.dl.enh_measurement_parameters_pcco_invalid_bsic_reporting",
13526         FT_UINT8, BASE_DEC, NULL, 0x0,
13527         NULL, HFILL
13528       }
13529     },
13530     { &hf_ccn_support_description_number_cells,
13531       { "NUMBER_CELLS",        "gsm_rlcmac.dl.ccn_support_description_number_cells",
13532         FT_UINT8, BASE_DEC, NULL, 0x0,
13533         NULL, HFILL
13534       }
13535     },
13536     { &hf_ccn_supported,
13537       { "CCN_SUPPORTED",        "gsm_rlcmac.dl.ccn_supported",
13538         FT_UINT8, BASE_DEC, NULL, 0x0,
13539         NULL, HFILL
13540       }
13541     },
13542     { &hf_lu_modecellselectionparameters_cell_bar_qualify_3,
13543       { "CELL_BAR_QUALIFY_3",        "gsm_rlcmac.dl.lu_modecellselectionparameters_cell_bar_qualify_3",
13544         FT_UINT8, BASE_DEC, NULL, 0x0,
13545         NULL, HFILL
13546       }
13547     },
13548     { &hf_lu_modeneighbourcellparams_nr_of_frequencies,
13549       { "NR_OF_FREQUENCIES",        "gsm_rlcmac.dl.lu_modecellselectionparameters_nr_of_frequencies",
13550         FT_UINT8, BASE_DEC, NULL, 0x0,
13551         NULL, HFILL
13552       }
13553     },
13554     { &hf_lu_modeonlycellselection_cell_bar_qualify_3,
13555       { "CELL_BAR_QUALIFY_3",        "gsm_rlcmac.dl.lu_modeonlycellselection_cell_bar_qualify_3",
13556         FT_UINT8, BASE_DEC, NULL, 0x0,
13557         NULL, HFILL
13558       }
13559     },
13560     { &hf_lu_modeonlycellselection_same_ra_as_serving_cell,
13561       { "SAME_RA_AS_SERVING_CELL",        "gsm_rlcmac.dl.lu_modeonlycellselection_same_ra_as_serving_cell",
13562         FT_UINT8, BASE_DEC, NULL, 0x0,
13563         NULL, HFILL
13564       }
13565     },
13566     { &hf_lu_modeonlycellselection_gprs_rxlev_access_min,
13567       { "GPRS_RXLEV_ACCESS_MIN",        "gsm_rlcmac.dl.lu_modeonlycellselection_gprs_rxlev_access_min",
13568         FT_UINT8, BASE_DEC, NULL, 0x0,
13569         NULL, HFILL
13570       }
13571     },
13572     { &hf_lu_modeonlycellselection_gprs_ms_txpwr_max_cch,
13573       { "GPRS_MS_TXPWR_MAX_CCH",        "gsm_rlcmac.dl.lu_modeonlycellselection_gprs_ms_txpwr_max_cch",
13574         FT_UINT8, BASE_DEC, NULL, 0x0,
13575         NULL, HFILL
13576       }
13577     },
13578     { &hf_lu_modeonlycellselection_gprs_temporary_offset,
13579       { "GPRS_TEMPORARY_OFFSET",        "gsm_rlcmac.dl.lu_modeonlycellselection_gprs_temporary_offset",
13580         FT_UINT8, BASE_DEC, NULL, 0x0,
13581         NULL, HFILL
13582       }
13583     },
13584     { &hf_lu_modeonlycellselection_gprs_penalty_time,
13585       { "GPRS_PENALTY_TIME",        "gsm_rlcmac.dl.lu_modeonlycellselection_gprs_penalty_time",
13586         FT_UINT8, BASE_DEC, NULL, 0x0,
13587         NULL, HFILL
13588       }
13589     },
13590     { &hf_lu_modeonlycellselection_gprs_reselect_offset,
13591       { "GPRS_RESELECT_OFFSET",        "gsm_rlcmac.dl.lu_modeonlycellselection_gprs_reselect_offset",
13592         FT_UINT8, BASE_DEC, NULL, 0x0,
13593         NULL, HFILL
13594       }
13595     },
13596     { &hf_lu_modeonlycellselectionparamswithfreqdiff,
13597       { "FREQUENCY_DIFF",        "gsm_rlcmac.dl.lu_modeonlycellselectionparamswithfreqdiff",
13598         FT_UINT8, BASE_DEC, NULL, 0x0,
13599         NULL, HFILL
13600       }
13601     },
13602     { &hf_lu_modeonlycellselectionparamswithfreqdiff_bsic,
13603       { "BSIC",        "gsm_rlcmac.dl.lu_modeonlycellselectionparamswithfreqdiff_bsic",
13604         FT_UINT8, BASE_DEC, NULL, 0x0,
13605         NULL, HFILL
13606       }
13607     },
13608     { &hf_add_lu_modeonlyfrequencylist_start_frequency,
13609       { "START_FREQUENCY",        "gsm_rlcmac.dl.dd_lu_modeonlyfrequencylist_start_frequency",
13610         FT_UINT8, BASE_DEC, NULL, 0x0,
13611         NULL, HFILL
13612       }
13613     },
13614     { &hf_add_lu_modeonlyfrequencylist_bsic,
13615       { "BSIC",        "gsm_rlcmac.dl.dd_lu_modeonlyfrequencylist_bsic",
13616         FT_UINT8, BASE_DEC, NULL, 0x0,
13617         NULL, HFILL
13618       }
13619     },
13620     { &hf_add_lu_modeonlyfrequencylist_nr_of_frequencies,
13621       { "NR_OF_FREQUENCIES",        "gsm_rlcmac.dl.dd_lu_modeonlyfrequencylist_nr_of_frequencies",
13622         FT_UINT8, BASE_DEC, NULL, 0x0,
13623         NULL, HFILL
13624       }
13625     },
13626     { &hf_add_lu_modeonlyfrequencylist_freq_diff_length,
13627       { "FREQ_DIFF_LENGTH",        "gsm_rlcmac.dl.dd_lu_modeonlyfrequencylist_freq_diff_length",
13628         FT_UINT8, BASE_DEC, NULL, 0x0,
13629         NULL, HFILL
13630       }
13631     },
13632     { &hf_gprs_additionalmeasurementparams3g_fdd_reporting_threshold_2,
13633       { "FDD_REPORTING_THRESHOLD_2",        "gsm_rlcmac.dl.gprs_additionalmeasurementparams3g_fdd_reporting_threshold_2",
13634         FT_UINT8, BASE_DEC, NULL, 0x0,
13635         NULL, HFILL
13636       }
13637     },
13638     { &hf_servingcellpriorityparametersdescription_geran_priority,
13639       { "GERAN_PRIORITY",        "gsm_rlcmac.dl.servingcellpriorityparametersdescription_geran_priority",
13640         FT_UINT8, BASE_DEC, NULL, 0x0,
13641         NULL, HFILL
13642       }
13643     },
13644     { &hf_servingcellpriorityparametersdescription_thresh_priority_search,
13645       { "THRESH_Priority_Search",        "gsm_rlcmac.dl.servingcellpriorityparametersdescription_thresh_priority_search",
13646         FT_UINT8, BASE_DEC, NULL, 0x0,
13647         NULL, HFILL
13648       }
13649     },
13650     { &hf_servingcellpriorityparametersdescription_thresh_gsm_low,
13651       { "THRESH_GSM_low",        "gsm_rlcmac.dl.servingcellpriorityparametersdescription_thresh_gsm_low",
13652         FT_UINT8, BASE_DEC, NULL, 0x0,
13653         NULL, HFILL
13654       }
13655     },
13656     { &hf_servingcellpriorityparametersdescription_h_prio,
13657       { "H_PRIO",        "gsm_rlcmac.dl.servingcellpriorityparametersdescription_h_prio",
13658         FT_UINT8, BASE_DEC, NULL, 0x0,
13659         NULL, HFILL
13660       }
13661     },
13662     { &hf_servingcellpriorityparametersdescription_t_reselection,
13663       { "T_Reselection",        "gsm_rlcmac.dl.servingcellpriorityparametersdescription_t_reselection",
13664         FT_UINT8, BASE_DEC, NULL, 0x0,
13665         NULL, HFILL
13666       }
13667     },
13668     { &hf_repeatedutran_priorityparameters_utran_freq_index,
13669       { "UTRAN_FREQUENCY_INDEX_a",        "gsm_rlcmac.dl.repeatedutran_priorityparameters_utran_freq_index",
13670         FT_UINT8, BASE_DEC, NULL, 0x0,
13671         NULL, HFILL
13672       }
13673     },
13674     { &hf_repeatedutran_priorityparameters_utran_freq_index_exist,
13675       { "UTRAN_FREQUENCY_INDEX_a Exist",        "gsm_rlcmac.dl.repeatedutran_priorityparameters_utran_freq_index_exist",
13676         FT_UINT8, BASE_DEC, NULL, 0x0,
13677         NULL, HFILL
13678       }
13679     },
13680     { &hf_repeatedutran_priorityparameters_utran_priority,
13681       { "UTRAN_PRIORITY",        "gsm_rlcmac.dl.repeatedutran_priorityparameters_utran_priority",
13682         FT_UINT8, BASE_DEC, NULL, 0x0,
13683         NULL, HFILL
13684       }
13685     },
13686     { &hf_repeatedutran_priorityparameters_thresh_utran_high,
13687       { "THRESH_UTRAN_high",        "gsm_rlcmac.dl.repeatedutran_priorityparameters_thresh_utran_high",
13688         FT_UINT8, BASE_DEC, NULL, 0x0,
13689         NULL, HFILL
13690       }
13691     },
13692     { &hf_repeatedutran_priorityparameters_thresh_utran_low,
13693       { "THRESH_UTRAN_low",        "gsm_rlcmac.dl.repeatedutran_priorityparameters_thresh_utran_low",
13694         FT_UINT8, BASE_DEC, NULL, 0x0,
13695         NULL, HFILL
13696       }
13697     },
13698     { &hf_repeatedutran_priorityparameters_utran_qrxlevmin,
13699       { "UTRAN_QRXLEVMIN",        "gsm_rlcmac.dl.repeatedutran_priorityparameters_utran_qrxlevmin",
13700         FT_UINT8, BASE_DEC, NULL, 0x0,
13701         NULL, HFILL
13702       }
13703     },
13704     { &hf_priorityparametersdescription3g_pmo_default_utran_priority,
13705       { "DEFAULT_UTRAN_PRIORITY",        "gsm_rlcmac.dl.priorityparametersdescription3g_pmo_default_utran_priority",
13706         FT_UINT8, BASE_DEC, NULL, 0x0,
13707         NULL, HFILL
13708       }
13709     },
13710     { &hf_priorityparametersdescription3g_pmo_default_thresh_utran,
13711       { "DEFAULT_THRESH_UTRAN",        "gsm_rlcmac.dl.priorityparametersdescription3g_pmo_default_thresh_utran",
13712         FT_UINT8, BASE_DEC, NULL, 0x0,
13713         NULL, HFILL
13714       }
13715     },
13716     { &hf_priorityparametersdescription3g_pmo_default_utran_qrxlevmin,
13717       { "DEFAULT_UTRAN_QRXLEVMIN",        "gsm_rlcmac.dl.priorityparametersdescription3g_pmo_default_utran_qrxlevmin",
13718         FT_UINT8, BASE_DEC, NULL, 0x0,
13719         NULL, HFILL
13720       }
13721     },
13722     { &hf_eutran_reportinghreshold_offset_t_eutran_fdd_reporting_threshold,
13723       { "EUTRAN_FDD_REPORTING_THRESHOLD",        "gsm_rlcmac.dl.eutran_fdd_reporting_threshold",
13724         FT_UINT8, BASE_DEC, NULL, 0x0,
13725         NULL, HFILL
13726       }
13727     },
13728     { &hf_eutran_reportinghreshold_offset_t_eutran_fdd_reporting_threshold_2,
13729       { "EUTRAN_FDD_REPORTING_THRESHOLD_2",        "gsm_rlcmac.dl.eutran_fdd_reporting_threshold_2",
13730         FT_UINT8, BASE_DEC, NULL, 0x0,
13731         NULL, HFILL
13732       }
13733     },
13734     { &hf_eutran_reportinghreshold_offset_t_eutran_fdd_reporting_offset,
13735       { "EUTRAN_FDD_REPORTING_OFFSET",        "gsm_rlcmac.dl.eutran_fdd_reporting_offset",
13736         FT_UINT8, BASE_DEC, NULL, 0x0,
13737         NULL, HFILL
13738       }
13739     },
13740     { &hf_eutran_reportinghreshold_offset_t_eutran_tdd_reporting_threshold,
13741       { "EUTRAN_TDD_REPORTING_THRESHOLD",        "gsm_rlcmac.dl.eutran_tdd_reporting_threshold",
13742         FT_UINT8, BASE_DEC, NULL, 0x0,
13743         NULL, HFILL
13744       }
13745     },
13746     { &hf_eutran_reportinghreshold_offset_t_eutran_tdd_reporting_threshold_2,
13747       { "EUTRAN_TDD_REPORTING_THRESHOLD_2",        "gsm_rlcmac.dl.eutran_tdd_reporting_threshold_2",
13748         FT_UINT8, BASE_DEC, NULL, 0x0,
13749         NULL, HFILL
13750       }
13751     },
13752     { &hf_eutran_reportinghreshold_offset_t_eutran_tdd_reporting_offset,
13753       { "EUTRAN_TDD_REPORTING_OFFSET",        "gsm_rlcmac.dl.eutran_tdd_reporting_offset",
13754         FT_UINT8, BASE_DEC, NULL, 0x0,
13755         NULL, HFILL
13756       }
13757     },
13758     { &hf_gprs_eutran_measurementparametersdescription_qsearch_p_eutran,
13759       { "Qsearch_P_EUTRAN",        "gsm_rlcmac.dl.qsearch_p_eutran",
13760         FT_UINT8, BASE_DEC, NULL, 0x0,
13761         NULL, HFILL
13762       }
13763     },
13764     { &hf_gprs_eutran_measurementparametersdescription_eutran_rep_quant,
13765       { "EUTRAN_REP_QUANT",        "gsm_rlcmac.dl.eutran_rep_quant",
13766         FT_BOOLEAN, BASE_NONE, NULL, 0x0,
13767         NULL, HFILL
13768       }
13769     },
13770     { &hf_gprs_eutran_measurementparametersdescription_eutran_multirat_reporting,
13771       { "EUTRAN_MULTIRAT_REPORTING",        "gsm_rlcmac.dl.eutran_multirat_reporting",
13772         FT_UINT8, BASE_DEC, NULL, 0x0,
13773         NULL, HFILL
13774       }
13775     },
13776     { &hf_repeatedeutran_cells_earfcn,
13777       { "EARFCN",        "gsm_rlcmac.dl.repeatedeutran_cells_earfcn",
13778         FT_UINT8, BASE_DEC, NULL, 0x0,
13779         NULL, HFILL
13780       }
13781     },
13782     { &hf_repeatedeutran_cells_measurementbandwidth,
13783       { "MeasurementBandwidth",        "gsm_rlcmac.dl.repeatedeutran_cells_measurementbandwidth",
13784         FT_UINT8, BASE_DEC, NULL, 0x0,
13785         NULL, HFILL
13786       }
13787     },
13788     { &hf_repeatedeutran_neighbourcells_eutran_priority,
13789       { "EUTRAN_PRIORITY",        "gsm_rlcmac.dl.repeatedeutran_neighbourcells_eutran_priority",
13790         FT_UINT8, BASE_DEC, NULL, 0x0,
13791         NULL, HFILL
13792       }
13793     },
13794     { &hf_repeatedeutran_neighbourcells_thresh_eutran_high,
13795       { "THRESH_EUTRAN_high",        "gsm_rlcmac.dl.repeatedeutran_neighbourcells_thresh_eutran_high",
13796         FT_UINT8, BASE_DEC, NULL, 0x0,
13797         NULL, HFILL
13798       }
13799     },
13800     { &hf_repeatedeutran_neighbourcells_thresh_eutran_low,
13801       { "THRESH_EUTRAN_low",        "gsm_rlcmac.dl.repeatedeutran_neighbourcells_thresh_eutran_low",
13802         FT_UINT8, BASE_DEC, NULL, 0x0,
13803         NULL, HFILL
13804       }
13805     },
13806     { &hf_repeatedeutran_neighbourcells_eutran_qrxlevmin,
13807       { "EUTRAN_QRXLEVMIN",        "gsm_rlcmac.dl.repeatedeutran_neighbourcells_eutran_qrxlevmin",
13808         FT_UINT8, BASE_DEC, NULL, 0x0,
13809         NULL, HFILL
13810       }
13811     },
13812     { &hf_pcid_pattern_pcid_pattern_length,
13813       { "PCID_Pattern_length",        "gsm_rlcmac.dl.pcid_pattern_pcid_pattern_length",
13814         FT_UINT8, BASE_DEC, NULL, 0x0,
13815         NULL, HFILL
13816       }
13817     },
13818     { &hf_pcid_pattern_pcid_pattern,
13819       { "PCID_Pattern",        "gsm_rlcmac.dl.pcid_pattern_pcid_pattern",
13820         FT_UINT8, BASE_DEC, NULL, 0x0,
13821         NULL, HFILL
13822       }
13823     },
13824     { &hf_pcid_pattern_pcid_pattern_sense,
13825       { "PCID_Pattern_sense",        "gsm_rlcmac.dl.pcid_pattern_pcid_pattern_sense",
13826         FT_UINT8, BASE_DEC, NULL, 0x0,
13827         NULL, HFILL
13828       }
13829     },
13830     { &hf_pcid_group_ie_pcid_bitmap_group,
13831       { "PCID_BITMAP_GROUP",        "gsm_rlcmac.dl.pcid_group_ie_pcid_bitmap_group",
13832         FT_UINT8, BASE_DEC, NULL, 0x0,
13833         NULL, HFILL
13834       }
13835     },
13836     { &hf_pcid_group_ie_pcid,
13837       { "PCID_a",        "gsm_rlcmac.dl.pcid_group_ie_pcid",
13838         FT_UINT8, BASE_DEC, NULL, 0x0,
13839         NULL, HFILL
13840       }
13841     },
13842     { &hf_pcid_group_ie_pcid_exist,
13843       { "PCID_a Exist",        "gsm_rlcmac.dl.pcid_group_ie_pcid_bitmap_exist",
13844         FT_UINT8, BASE_DEC, NULL, 0x0,
13845         NULL, HFILL
13846       }
13847     },
13848     { &hf_eutran_frequency_index_eutran_frequency_index,
13849       { "EUTRAN_FREQUENCY_INDEX",        "gsm_rlcmac.dl.eutran_frequency_index_eutran_frequency_index",
13850         FT_UINT8, BASE_DEC, NULL, 0x0,
13851         NULL, HFILL
13852       }
13853     },
13854     { &hf_psc_pattern_length,
13855       { "PSC_pattern_length",        "gsm_rlcmac.dl.psc_pattern_length",
13856         FT_UINT8, BASE_DEC, NULL, 0x0,
13857         NULL, HFILL
13858       }
13859     },
13860     { &hf_psc_pattern,
13861       { "PSC_pattern",        "gsm_rlcmac.dl.psc_pattern",
13862         FT_UINT8, BASE_DEC, NULL, 0x0,
13863         NULL, HFILL
13864       }
13865     },
13866     { &hf_psc_pattern_sense,
13867       { "PSC_pattern_sense",        "gsm_rlcmac.dl.psc_pattern_sense",
13868         FT_UINT8, BASE_DEC, NULL, 0x0,
13869         NULL, HFILL
13870       }
13871     },
13872     { &hf_psc_group_psc,
13873       { "PSC",        "gsm_rlcmac.dl.psc_group_psc",
13874         FT_UINT8, BASE_DEC, NULL, 0x0,
13875         NULL, HFILL
13876       }
13877     },
13878     { &hf_psc_group_psc_exist,
13879       { "PSC Exist",        "gsm_rlcmac.dl.psc_group_psc_exist",
13880         FT_UINT8, BASE_DEC, NULL, 0x0,
13881         NULL, HFILL
13882       }
13883     },
13884     { &hf_three3_csg_description_body_utran_freq_index,
13885       { "UTRAN_FREQUENCY_INDEX",        "gsm_rlcmac.dl.three3_csg_description_body_utran_freq_index",
13886         FT_UINT8, BASE_DEC, NULL, 0x0,
13887         NULL, HFILL
13888       }
13889     },
13890     { &hf_three3_csg_description_body_utran_freq_index_exist,
13891       { "UTRAN_FREQUENCY_INDEX Exist",        "gsm_rlcmac.dl.three3_csg_description_body_utran_freq_index_exist",
13892         FT_UINT8, BASE_DEC, NULL, 0x0,
13893         NULL, HFILL
13894       }
13895     },
13896     { &hf_eutran_csg_description_body_eutran_freq_index,
13897       { "EUTRAN_FREQUENCY_INDEX",        "gsm_rlcmac.dl.eutran_csg_description_body_eutran_freq_index",
13898         FT_UINT8, BASE_DEC, NULL, 0x0,
13899         NULL, HFILL
13900       }
13901     },
13902     { &hf_eutran_csg_description_body_eutran_freq_index_exist,
13903       { "EUTRAN_FREQUENCY_INDEX Exist",        "gsm_rlcmac.dl.eutran_csg_description_body_eutran_freq_index_exist",
13904         FT_UINT8, BASE_DEC, NULL, 0x0,
13905         NULL, HFILL
13906       }
13907     },
13908     { &hf_meas_ctrl_param_meas_ctrl_eutran,
13909       { "Measurement_Control_E-UTRAN",        "gsm_rlcmac.dl.meas_ctrl_param_eutran",
13910         FT_UINT8, BASE_DEC, NULL, 0x0,
13911         NULL, HFILL
13912       }
13913     },
13914     { &hf_meas_ctrl_param_eutran_freq_idx,
13915       { "EUTRAN_FREQUENCY_INDEX",        "gsm_rlcmac.dl.meas_ctrl_param_eutran_freq_idx",
13916         FT_UINT8, BASE_DEC, NULL, 0x0,
13917         NULL, HFILL
13918       }
13919     },
13920     { &hf_meas_ctrl_param_eutran_freq_idx_exist,
13921       { "EUTRAN_FREQUENCY_INDEX Exist",        "gsm_rlcmac.dl.meas_ctrl_param_eutran_freq_idx_exist",
13922         FT_UINT8, BASE_DEC, NULL, 0x0,
13923         NULL, HFILL
13924       }
13925     },
13926     { &hf_meas_ctrl_param_meas_ctrl_utran,
13927       { "Measurement_Control_UTRAN",        "gsm_rlcmac.dl.meas_ctrl_param_utran",
13928         FT_UINT8, BASE_DEC, NULL, 0x0,
13929         NULL, HFILL
13930       }
13931     },
13932     { &hf_meas_ctrl_param_utran_freq_idx,
13933       { "UTRAN_FREQUENCY_INDEX",        "gsm_rlcmac.dl.meas_ctrl_param_utran_freq_idx",
13934         FT_UINT8, BASE_DEC, NULL, 0x0,
13935         NULL, HFILL
13936       }
13937     },
13938     { &hf_meas_ctrl_param_utran_freq_idx_exist,
13939       { "UTRAN_FREQUENCY_INDEX Exist",        "gsm_rlcmac.dl.meas_ctrl_param_utran_freq_idx_exist",
13940         FT_UINT8, BASE_DEC, NULL, 0x0,
13941         NULL, HFILL
13942       }
13943     },
13944     { &hf_rept_eutran_enh_cell_resel_param_eutran_qmin,
13945       { "E-UTRAN_Qmin",        "gsm_rlcmac.dl.enh_cell_resel_param_eutran_qmin",
13946         FT_UINT8, BASE_DEC, NULL, 0x0,
13947         NULL, HFILL
13948       }
13949     },
13950     { &hf_rept_eutran_enh_cell_resel_param_eutran_freq_index,
13951       { "EUTRAN_FREQUENCY_INDEX",        "gsm_rlcmac.dl.enh_cell_resel_param_eutran_freq_index",
13952         FT_UINT8, BASE_DEC, NULL, 0x0,
13953         NULL, HFILL
13954       }
13955     },
13956     { &hf_rept_eutran_enh_cell_resel_param_eutran_freq_index_exist,
13957       { "EUTRAN_FREQUENCY_INDEX Exist",        "gsm_rlcmac.dl.enh_cell_resel_param_eutran_freq_index_exist",
13958         FT_UINT8, BASE_DEC, NULL, 0x0,
13959         NULL, HFILL
13960       }
13961     },
13962     { &hf_rept_eutran_enh_cell_resel_param_thresh_eutran_high_q,
13963       { "THRESH_E-UTRAN_high_Q",        "gsm_rlcmac.dl.enh_cell_resel_param_eutran_high_q",
13964         FT_UINT8, BASE_DEC, NULL, 0x0,
13965         NULL, HFILL
13966       }
13967     },
13968     { &hf_rept_eutran_enh_cell_resel_param_thresh_eutran_low_q,
13969       { "THRESH_E-UTRAN_low_Q",        "gsm_rlcmac.dl.enh_cell_resel_param_eutran_low_q",
13970         FT_UINT8, BASE_DEC, NULL, 0x0,
13971         NULL, HFILL
13972       }
13973     },
13974     { &hf_rept_eutran_enh_cell_resel_param_thresh_eutran_qqualmin,
13975       { "E-UTRAN_QQUALMIN",        "gsm_rlcmac.dl.enh_cell_resel_param_eutran_qqualmin",
13976         FT_UINT8, BASE_DEC, NULL, 0x0,
13977         NULL, HFILL
13978       }
13979     },
13980     { &hf_rept_eutran_enh_cell_resel_param_thresh_eutran_rsrpmin,
13981       { "E-UTRAN_RSRPmin",        "gsm_rlcmac.dl.enh_cell_resel_param_eutran_rsrpmin",
13982         FT_UINT8, BASE_DEC, NULL, 0x0,
13983         NULL, HFILL
13984       }
13985     },
13986     { &hf_utran_csg_fdd_reporting_threshold,
13987       { "UTRAN_CSG_FDD_REPORTING_THRESHOLD",        "gsm_rlcmac.dl.utran_csg_fdd_reporting_threshold",
13988         FT_UINT8, BASE_DEC, NULL, 0x0,
13989         NULL, HFILL
13990       }
13991     },
13992     { &hf_utran_csg_fdd_reporting_threshold2,
13993       { "UTRAN_CSG_FDD_REPORTING_THRESHOLD_2",        "gsm_rlcmac.dl.utran_csg_fdd_reporting_threshold2",
13994         FT_UINT8, BASE_DEC, NULL, 0x0,
13995         NULL, HFILL
13996       }
13997     },
13998     { &hf_utran_csg_tdd_reporting_threshold,
13999       { "UTRAN_CSG_TDD_REPORTING_THRESHOLD",        "gsm_rlcmac.dl.utran_csg_tdd_reporting_threshold",
14000         FT_UINT8, BASE_DEC, NULL, 0x0,
14001         NULL, HFILL
14002       }
14003     },
14004     { &hf_eutran_csg_fdd_reporting_threshold,
14005       { "E-UTRAN_CSG_FDD_REPORTING_THRESHOLD",        "gsm_rlcmac.dl.eutran_csg_fdd_reporting_threshold",
14006         FT_UINT8, BASE_DEC, NULL, 0x0,
14007         NULL, HFILL
14008       }
14009     },
14010     { &hf_eutran_csg_fdd_reporting_threshold2,
14011       { "E-UTRAN_CSG_FDD_REPORTING_THRESHOLD_2",        "gsm_rlcmac.dl.eutran_csg_fdd_reporting_threshold2",
14012         FT_UINT8, BASE_DEC, NULL, 0x0,
14013         NULL, HFILL
14014       }
14015     },
14016     { &hf_eutran_csg_tdd_reporting_threshold,
14017       { "E-UTRAN_CSG_TDD_REPORTING_THRESHOLD",        "gsm_rlcmac.dl.eutran_csg_tdd_reporting_threshold",
14018         FT_UINT8, BASE_DEC, NULL, 0x0,
14019         NULL, HFILL
14020       }
14021     },
14022     { &hf_eutran_csg_tdd_reporting_threshold2,
14023       { "E-UTRAN_CSG_TDD_REPORTING_THRESHOLD_2",        "gsm_rlcmac.dl.eutran_csg_tdd_reporting_threshold2",
14024         FT_UINT8, BASE_DEC, NULL, 0x0,
14025         NULL, HFILL
14026       }
14027     },
14028     { &hf_eutran_parametersdescription_pmo_eutran_ccn_active,
14029       { "EUTRAN_CCN_ACTIVE",        "gsm_rlcmac.dl.eutran_parametersdescription_pmo_eutran_ccn_active",
14030         FT_BOOLEAN, BASE_NONE, NULL, 0x0,
14031         NULL, HFILL
14032       }
14033     },
14034     { &hf_pmo_additionsr8_ba_ind_3g,
14035       { "BA_IND_3G",        "gsm_rlcmac.dl.pmo_additionsr8_ba_ind_3g",
14036         FT_BOOLEAN, BASE_NONE, NULL, 0x0,
14037         NULL, HFILL
14038       }
14039     },
14040     { &hf_pmo_additionsr8_pmo_ind,
14041       { "PMO_IND",        "gsm_rlcmac.dl.pmo_additionsr8_pmo_ind",
14042         FT_BOOLEAN, BASE_NONE, NULL, 0x0,
14043         NULL, HFILL
14044       }
14045     },
14046     { &hf_pmo_additionsr7_reporting_offset_700,
14047       { "REPORTING_OFFSET_700",        "gsm_rlcmac.dl.pmo_additionsr7_reporting_offset_700",
14048         FT_UINT8, BASE_DEC, NULL, 0x0,
14049         NULL, HFILL
14050       }
14051     },
14052     { &hf_pmo_additionsr7_reporting_threshold_700,
14053       { "REPORTING_THRESHOLD_700",        "gsm_rlcmac.dl.pmo_additionsr7_reporting_threshold_700",
14054         FT_UINT8, BASE_DEC, NULL, 0x0,
14055         NULL, HFILL
14056       }
14057     },
14058     { &hf_pmo_additionsr7_reporting_offset_810,
14059       { "REPORTING_OFFSET_810",        "gsm_rlcmac.dl.pmo_additionsr7_reporting_offset_810",
14060         FT_UINT8, BASE_DEC, NULL, 0x0,
14061         NULL, HFILL
14062       }
14063     },
14064     { &hf_pmo_additionsr7_reporting_threshold_810,
14065       { "REPORTING_THRESHOLD_810",        "gsm_rlcmac.dl.pmo_additionsr7_reporting_threshold_810",
14066         FT_UINT8, BASE_DEC, NULL, 0x0,
14067         NULL, HFILL
14068       }
14069     },
14070     { &hf_pmo_additionsr6_ccn_active_3g,
14071       { "CCN_ACTIVE_3G",        "gsm_rlcmac.dl.pmo_additionsr6_ccn_active_3g",
14072         FT_UINT8, BASE_DEC, NULL, 0x0,
14073         NULL, HFILL
14074       }
14075     },
14076     { &hf_pcco_additionsr6_ccn_active_3g,
14077       { "CCN_ACTIVE_3G",        "gsm_rlcmac.dl.pcco_additionsr6_ccn_active_3g",
14078         FT_UINT8, BASE_DEC, NULL, 0x0,
14079         NULL, HFILL
14080       }
14081     },
14082     { &hf_pmo_additionsr5_grnti,
14083       { "GRNTI",        "gsm_rlcmac.dl.pmo_additionsr5_grnti",
14084         FT_UINT8, BASE_DEC, NULL, 0x0,
14085         NULL, HFILL
14086       }
14087     },
14088     { &hf_pcco_additionsr5_grnti,
14089       { "GRNTI",        "gsm_rlcmac.dl.pcco_additionsr5_grnti",
14090         FT_UINT8, BASE_DEC, NULL, 0x0,
14091         NULL, HFILL
14092       }
14093     },
14094     { &hf_pmo_additionsr4_ccn_active,
14095       { "CCN_ACTIVE",        "gsm_rlcmac.dl.pmo_additionsr4_ccn_active",
14096         FT_UINT8, BASE_DEC, NULL, 0x0,
14097         NULL, HFILL
14098       }
14099     },
14100     { &hf_pcco_additionsr4_ccn_active,
14101       { "CCN_ACTIVE",        "gsm_rlcmac.dl.pcco_additionsr4_ccn_active",
14102         FT_UINT8, BASE_DEC, NULL, 0x0,
14103         NULL, HFILL
14104       }
14105     },
14106     { &hf_pcco_additionsr4_container_id,
14107       { "CONTAINER_ID",        "gsm_rlcmac.dl.pcco_additionsr4_container_id",
14108         FT_UINT8, BASE_DEC, NULL, 0x0,
14109         NULL, HFILL
14110       }
14111     },
14112     { &hf_lsa_id_info_element_lsa_id,
14113       { "LSA_ID",        "gsm_rlcmac.dl.lsa_id",
14114         FT_UINT8, BASE_DEC, NULL, 0x0,
14115         NULL, HFILL
14116       }
14117     },
14118     { &hf_lsa_id_info_element_shortlsa_id,
14119       { "ShortLSA_ID",        "gsm_rlcmac.dl.lsa_shortlsa_id",
14120         FT_UINT8, BASE_DEC, NULL, 0x0,
14121         NULL, HFILL
14122       }
14123     },
14124     { &hf_lsa_parameters_nr_of_freq_or_cells,
14125       { "NR_OF_FREQ_OR_CELLS",        "gsm_rlcmac.dl.lsa_nr_of_freq_or_cells",
14126         FT_UINT8, BASE_DEC, NULL, 0x0,
14127         NULL, HFILL
14128       }
14129     },
14130     { &hf_target_cell_gsm_immediate_rel,
14131       { "IMMEDIATE_REL",        "gsm_rlcmac.dl.taget_cell_immediate_rel",
14132         FT_UINT8, BASE_DEC, NULL, 0x0,
14133         NULL, HFILL
14134       }
14135     },
14136     { &hf_target_cell_gsm_bsic,
14137       { "BSIC",        "gsm_rlcmac.dl.taget_cell_gsm_bsic",
14138         FT_UINT8, BASE_DEC, NULL, 0x0,
14139         NULL, HFILL
14140       }
14141     },
14142     { &hf_target_cell_3g_immediate_rel,
14143       { "IMMEDIATE_REL",        "gsm_rlcmac.dl.immediate_rel",
14144         FT_UINT8, BASE_DEC, NULL, 0x0,
14145         NULL, HFILL
14146       }
14147     },
14148     { &hf_target_cell_eutran_earfcn,
14149       { "EARFCN",        "gsm_rlcmac.dl.pcco_target_cell_eutran_earfcn",
14150         FT_UINT16, BASE_DEC, NULL, 0x0,
14151         NULL, HFILL
14152       }
14153     },
14154     { &hf_target_cell_eutran_measurement_bandwidth,
14155       { "Measurement Bandwidth",        "gsm_rlcmac.dl.pcco_target_cell_eutran_meas_bw",
14156         FT_UINT8, BASE_DEC, NULL, 0x0,
14157         NULL, HFILL
14158       }
14159     },
14160     { &hf_target_cell_eutran_pl_cell_id,
14161       { "Physical Layer Cell Identity",        "gsm_rlcmac.dl.pcco_target_cell_eutran_cell_id",
14162         FT_UINT16, BASE_DEC, NULL, 0x0,
14163         NULL, HFILL
14164       }
14165     },
14166     { &hf_idvd_utran_priority_fdd_arfcn,
14167       { "FDD_ARFCN",        "gsm_rlcmac.dl.idvl_utran_priority_fdd_arfcn",
14168         FT_UINT8, BASE_DEC, NULL, 0x0,
14169         NULL, HFILL
14170       }
14171     },
14172     { &hf_idvd_utran_priority_fdd_arfcn_exist,
14173       { "FDD_ARFCN Exist",        "gsm_rlcmac.dl.idvl_utran_priority_fdd_arfcn_exist",
14174         FT_UINT8, BASE_DEC, NULL, 0x0,
14175         NULL, HFILL
14176       }
14177     },
14178     { &hf_idvd_utran_priority_tdd_arfcn,
14179       { "TDD_ARFCN",        "gsm_rlcmac.dl.idvl_utran_priority_tdd_arfcn",
14180         FT_UINT8, BASE_DEC, NULL, 0x0,
14181         NULL, HFILL
14182       }
14183     },
14184     { &hf_idvd_utran_priority_tdd_arfcn_exist,
14185       { "TDD_ARFCN Exist",        "gsm_rlcmac.dl.idvl_utran_priority_tdd_arfcn_exist",
14186         FT_UINT8, BASE_DEC, NULL, 0x0,
14187         NULL, HFILL
14188       }
14189     },
14190 
14191     { &hf_idvd_default_utran_priority,
14192       { "DEFAULT_UTRAN_PRIORITY",        "gsm_rlcmac.dl.idvl_prio_dlft_geran_prio",
14193         FT_UINT8, BASE_DEC, NULL, 0x0,
14194         NULL, HFILL
14195       }
14196     },
14197     { &hf_idvd_utran_priority,
14198       { "UTRAN_PRIORITY",        "gsm_rlcmac.dl.idvl_prio_geran_prio",
14199         FT_UINT8, BASE_DEC, NULL, 0x0,
14200         NULL, HFILL
14201       }
14202     },
14203     { &hf_idvd_default_eutran_priority,
14204       { "DEFAULT_E-UTRAN_PRIORITY",        "gsm_rlcmac.dl.idvl_prio_dlft_eutran_prio",
14205         FT_UINT8, BASE_DEC, NULL, 0x0,
14206         NULL, HFILL
14207       }
14208     },
14209     { &hf_idvd_eutran_priority,
14210       { "E-UTRAN_PRIORITY",        "gsm_rlcmac.dl.idvl_prio_eutran_prio",
14211         FT_UINT8, BASE_DEC, NULL, 0x0,
14212         NULL, HFILL
14213       }
14214     },
14215     { &hf_idvd_eutran_priority_earfcn,
14216       { "EARFCN",        "gsm_rlcmac.dl.idvl_eutran_priority_earfcn",
14217         FT_UINT8, BASE_DEC, NULL, 0x0,
14218         NULL, HFILL
14219       }
14220     },
14221     { &hf_idvd_eutran_priority_earfcn_exist,
14222       { "EARFCN Exist",        "gsm_rlcmac.dl.idvl_eutran_priority_earfcn_exist",
14223         FT_UINT8, BASE_DEC, NULL, 0x0,
14224         NULL, HFILL
14225       }
14226     },
14227     { &hf_idvd_prio_geran_priority,
14228       { "GERAN_PRIORITY",        "gsm_rlcmac.dl.idvl_prio_dlft_geran_prio",
14229         FT_UINT8, BASE_DEC, NULL, 0x0,
14230         NULL, HFILL
14231       }
14232     },
14233     { &hf_idvd_prio_t3230_timeout_value,
14234       { "T3230 timeout value",        "gsm_rlcmac.dl.idvl_prio_t3230",
14235         FT_UINT8, BASE_DEC, NULL, 0x0,
14236         NULL, HFILL
14237       }
14238     },
14239     { &hf_target_cell_g_rnti_ext,
14240       { "G-RNTI extension",        "gsm_rlcmac.dl.pcco_g_rnti_ext",
14241         FT_UINT8, BASE_DEC, NULL, 0x0,
14242         NULL, HFILL
14243       }
14244     },
14245 
14246 /* < Packet (Enhanced) Measurement Report message contents > */
14247     { &hf_ba_used_ba_used,
14248       { "BA_USED",        "gsm_rlcmac.ul.ba_used",
14249         FT_UINT8, BASE_DEC, NULL, 0x0,
14250         NULL, HFILL
14251       }
14252     },
14253     { &hf_ba_used_ba_used_3g,
14254       { "BA_USED_3G",        "gsm_rlcmac.ul.ba_used_3g",
14255         FT_UINT8, BASE_DEC, NULL, 0x0,
14256         NULL, HFILL
14257       }
14258     },
14259     { &hf_serving_cell_data_rxlev_serving_cell,
14260       { "RXLEV_SERVING_CELL",        "gsm_rlcmac.ul.rxlev_serving_cell",
14261         FT_UINT8, BASE_DEC, NULL, 0x0,
14262         NULL, HFILL
14263       }
14264     },
14265     { &hf_nc_measurements_frequency_n,
14266       { "FREQUENCY_N",        "gsm_rlcmac.ul.frequency_n",
14267         FT_UINT8, BASE_DEC, NULL, 0x0,
14268         NULL, HFILL
14269       }
14270     },
14271     { &hf_nc_measurements_bsic_n,
14272       { "BSIC_N",        "gsm_rlcmac.ul.bsic_n",
14273         FT_UINT8, BASE_DEC, NULL, 0x0,
14274         NULL, HFILL
14275       }
14276     },
14277     { &hf_nc_measurements_rxlev_n,
14278       { "RXLEV_N",        "gsm_rlcmac.ul.rxlev_n",
14279         FT_UINT8, BASE_DEC, NULL, 0x0,
14280         NULL, HFILL
14281       }
14282     },
14283     { &hf_repeatedinvalid_bsic_info_bcch_freq_n,
14284       { "BCCH_FREQ_N",        "gsm_rlcmac.ul.bcch_freq_n",
14285         FT_UINT8, BASE_DEC, NULL, 0x0,
14286         NULL, HFILL
14287       }
14288     },
14289     { &hf_repeatedinvalid_bsic_info_bsic_n,
14290       { "BSIC_N",        "gsm_rlcmac.ul.bsic_n",
14291         FT_UINT8, BASE_DEC, NULL, 0x0,
14292         NULL, HFILL
14293       }
14294     },
14295     { &hf_repeatedinvalid_bsic_info_rxlev_n,
14296       { "RXLEV_N",        "gsm_rlcmac.ul.rxlev_n",
14297         FT_UINT8, BASE_DEC, NULL, 0x0,
14298         NULL, HFILL
14299       }
14300     },
14301     { &hf_reporting_quantity_instance_reporting_quantity,
14302       { "REPORTING_QUANTITY",        "gsm_rlcmac.ul.reporting_quantity",
14303         FT_UINT8, BASE_DEC, NULL, 0x0,
14304         NULL, HFILL
14305       }
14306     },
14307     { &hf_pemr_additionsr8_bitmap_length,
14308       { "BITMAP_LENGTH",        "gsm_rlcmac.ul.pemr_additionsr8_bitmap_length",
14309         FT_UINT8, BASE_DEC, NULL, 0x0,
14310         NULL, HFILL
14311       }
14312     },
14313     { &hf_nc_measurement_report_nc_mode,
14314       { "NC_MODE",        "gsm_rlcmac.ul.nc_mode",
14315         FT_UINT8, BASE_DEC, NULL, 0x0,
14316         NULL, HFILL
14317       }
14318     },
14319     { &hf_nc_measurement_report_number_of_nc_measurements,
14320       { "NUMBER_OF_NC_MEASUREMENTS",        "gsm_rlcmac.ul.number_of_nc_measurements",
14321         FT_UINT8, BASE_DEC, NULL, 0x0,
14322         NULL, HFILL
14323       }
14324     },
14325     { &hf_enh_nc_measurement_report_nc_mode,
14326       { "NC_MODE",        "gsm_rlcmac.ul.nc_mode",
14327         FT_UINT8, BASE_DEC, NULL, 0x0,
14328         NULL, HFILL
14329       }
14330     },
14331     { &hf_enh_nc_measurement_report_pmo_used,
14332       { "PMO_USED",        "gsm_rlcmac.ul.pmo_used",
14333         FT_UINT8, BASE_DEC, NULL, 0x0,
14334         NULL, HFILL
14335       }
14336     },
14337     { &hf_enh_nc_measurement_report_bsic_seen,
14338       { "BSIC_Seen",        "gsm_rlcmac.ul.bsic_seen",
14339         FT_UINT8, BASE_DEC, NULL, 0x0,
14340         NULL, HFILL
14341       }
14342     },
14343     { &hf_enh_nc_measurement_report_scale,
14344       { "SCALE",        "gsm_rlcmac.ul.scale",
14345         FT_UINT8, BASE_DEC, NULL, 0x0,
14346         NULL, HFILL
14347       }
14348     },
14349     { &hf_ext_measurement_report_ext_reporting_type,
14350       { "EXT_REPORTING_TYPE",        "gsm_rlcmac.ul.ext_reporting_type",
14351         FT_UINT8, BASE_DEC, NULL, 0x0,
14352         NULL, HFILL
14353       }
14354     },
14355     { &hf_ext_measurement_report_slot0_i_level,
14356       { "Slot[0].I_LEVEL",        "gsm_rlcmac.ul.slot0_i_level",
14357         FT_UINT8, BASE_DEC, NULL, 0x0,
14358         NULL, HFILL
14359       }
14360     },
14361     { &hf_ext_measurement_report_slot1_i_level,
14362       { "Slot[1].I_LEVEL",        "gsm_rlcmac.ul.slot1_i_level",
14363         FT_UINT8, BASE_DEC, NULL, 0x0,
14364         NULL, HFILL
14365       }
14366     },
14367     { &hf_ext_measurement_report_slot2_i_level,
14368       { "Slot[2].I_LEVEL",        "gsm_rlcmac.ul.slot2_i_level",
14369         FT_UINT8, BASE_DEC, NULL, 0x0,
14370         NULL, HFILL
14371       }
14372     },
14373     { &hf_ext_measurement_report_slot3_i_level,
14374       { "Slot[3].I_LEVEL",        "gsm_rlcmac.ul.slot3_i_level",
14375         FT_UINT8, BASE_DEC, NULL, 0x0,
14376         NULL, HFILL
14377       }
14378     },
14379     { &hf_ext_measurement_report_slot4_i_level,
14380       { "Slot[4].I_LEVEL",        "gsm_rlcmac.ul.slot4_i_level",
14381         FT_UINT8, BASE_DEC, NULL, 0x0,
14382         NULL, HFILL
14383       }
14384     },
14385     { &hf_ext_measurement_report_slot5_i_level,
14386       { "Slot[5].I_LEVEL",        "gsm_rlcmac.ul.slot5_i_level",
14387         FT_UINT8, BASE_DEC, NULL, 0x0,
14388         NULL, HFILL
14389       }
14390     },
14391     { &hf_ext_measurement_report_slot6_i_level,
14392       { "Slot[6].I_LEVEL",        "gsm_rlcmac.ul.slot6_i_level",
14393         FT_UINT8, BASE_DEC, NULL, 0x0,
14394         NULL, HFILL
14395       }
14396     },
14397     { &hf_ext_measurement_report_slot7_i_level,
14398       { "Slot[7].I_LEVEL",        "gsm_rlcmac.ul.slot7_i_level",
14399         FT_UINT8, BASE_DEC, NULL, 0x0,
14400         NULL, HFILL
14401       }
14402     },
14403     { &hf_ext_measurement_report_number_of_ext_measurements,
14404       { "NUMBER_OF_EXT_MEASUREMENTS",        "gsm_rlcmac.ul.number_of_ext_measurements",
14405         FT_UINT8, BASE_DEC, NULL, 0x0,
14406         NULL, HFILL
14407       }
14408     },
14409     { &hf_measurements_3g_cell_list_index_3g,
14410       { "CELL_LIST_INDEX_3G",        "gsm_rlcmac.ul.measurements_3g_cell_list_index_3g",
14411         FT_UINT8, BASE_DEC, NULL, 0x0,
14412         NULL, HFILL
14413       }
14414     },
14415     { &hf_measurements_3g_reporting_quantity,
14416       { "REPORTING_QUANTITY",        "gsm_rlcmac.ul.measurements_3g_reporting_quantity",
14417         FT_UINT8, BASE_DEC, NULL, 0x0,
14418         NULL, HFILL
14419       }
14420     },
14421     { &hf_pmr_additionsr99_pmo_used,
14422       { "PMO_USED",        "gsm_rlcmac.ul.pmr_additionsr99_pmo_used",
14423         FT_UINT8, BASE_DEC, NULL, 0x0,
14424         NULL, HFILL
14425       }
14426     },
14427     { &hf_pmr_additionsr99_n_3g,
14428       { "N_3G",        "gsm_rlcmac.ul.pmr_additionsr99_n_3g",
14429         FT_UINT8, BASE_DEC, NULL, 0x0,
14430         NULL, HFILL
14431       }
14432     },
14433     { &hf_pmr_eutran_meas_rpt_freq_idx,
14434       { "E-UTRAN_FREQUENCY_INDEX",        "gsm_rlcmac.ul.pmr_eutran_meas_rpt_freq_idx",
14435         FT_UINT8, BASE_DEC, NULL, 0x0,
14436         NULL, HFILL
14437       }
14438     },
14439     { &hf_pmr_eutran_meas_rpt_cell_id,
14440       { "CELL IDENTITY",        "gsm_rlcmac.ul.pmr_eutran_meas_rpt_cell_id",
14441         FT_UINT16, BASE_DEC, NULL, 0x0,
14442         NULL, HFILL
14443       }
14444     },
14445     { &hf_pmr_eutran_meas_rpt_quantity,
14446       { "REPORTING_QUANTITY",        "gsm_rlcmac.ul.pmr_eutran_meas_rpt_quantity",
14447         FT_UINT8, BASE_DEC, NULL, 0x0,
14448         NULL, HFILL
14449       }
14450     },
14451     { &hf_eutran_measurement_report_num_eutran,
14452       { "N_EUTRAN",        "gsm_rlcmac.uleutran_measurement_report_num_eutran",
14453         FT_UINT8, BASE_DEC, NULL, 0x0,
14454         NULL, HFILL
14455       }
14456     },
14457 
14458 #if 0
14459     { &hf_emr_servingcell_dtx_used,
14460       { "DTX_USED",        "gsm_rlcmac.ul.emr_servingcell_dtx_used",
14461         FT_BOOLEAN, BASE_NONE, NULL, 0x0,
14462         NULL, HFILL
14463       }
14464     },
14465     { &hf_emr_servingcell_rxlev_val,
14466       { "RXLEV_VAL",        "gsm_rlcmac.ul.emr_servingcell_rxlev_val",
14467         FT_UINT8, BASE_DEC, NULL, 0x0,
14468         NULL, HFILL
14469       }
14470     },
14471     { &hf_emr_servingcell_rx_qual_full,
14472       { "RX_QUAL_FULL",        "gsm_rlcmac.ul.emr_servingcell_rx_qual_full",
14473         FT_UINT8, BASE_DEC, NULL, 0x0,
14474         NULL, HFILL
14475       }
14476     },
14477     { &hf_emr_servingcell_mean_bep,
14478       { "MEAN_BEP",        "gsm_rlcmac.ul.emr_mean_bep",
14479         FT_UINT8, BASE_DEC, NULL, 0x0,
14480         NULL, HFILL
14481       }
14482     },
14483     { &hf_emr_servingcell_cv_bep,
14484       { "CV_BEP",        "gsm_rlcmac.ul.emr_cv_bep",
14485         FT_UINT8, BASE_DEC, NULL, 0x0,
14486         NULL, HFILL
14487       }
14488     },
14489     { &hf_emr_servingcell_nbr_rcvd_blocks,
14490       { "NBR_RCVD_BLOCKS",        "gsm_rlcmac.ul.emr_nbr_rcvd_blocks",
14491         FT_UINT8, BASE_DEC, NULL, 0x0,
14492         NULL, HFILL
14493       }
14494     },
14495     { &hf_enhancedmeasurementreport_rr_short_pd,
14496       { "RR_Short_PD",        "gsm_rlcmac.ul.emr_rr_short_pd",
14497         FT_UINT8, BASE_DEC, NULL, 0x0,
14498         NULL, HFILL
14499       }
14500     },
14501     { &hf_enhancedmeasurementreport_message_type,
14502       { "MESSAGE_TYPE",        "gsm_rlcmac.ul.emr_message_type",
14503         FT_UINT8, BASE_DEC, NULL, 0x0,
14504         NULL, HFILL
14505       }
14506     },
14507     { &hf_enhancedmeasurementreport_shortlayer2_header,
14508       { "ShortLayer2_Header",        "gsm_rlcmac.ul.emr_shortlayer2_header",
14509         FT_UINT8, BASE_DEC, NULL, 0x0,
14510         NULL, HFILL
14511       }
14512     },
14513     { &hf_enhancedmeasurementreport_bsic_seen,
14514       { "BSIC_Seen",        "gsm_rlcmac.ul.emr_bsic_seen",
14515         FT_UINT8, BASE_DEC, NULL, 0x0,
14516         NULL, HFILL
14517       }
14518     },
14519     { &hf_enhancedmeasurementreport_scale,
14520       { "SCALE",        "gsm_rlcmac.ul.emr_scale",
14521         FT_UINT8, BASE_DEC, NULL, 0x0,
14522         NULL, HFILL
14523       }
14524     },
14525 #endif
14526     { &hf_packet_measurement_report_psi5_change_mark,
14527       { "PSI5_CHANGE_MARK",        "gsm_rlcmac.ul.pmr_psi5_change_mark",
14528         FT_UINT8, BASE_DEC, NULL, 0x0,
14529         NULL, HFILL
14530       }
14531     },
14532 
14533 /* < Packet Measurement Order message contents > */
14534 #if 0
14535     { &hf_ext_frequency_list_start_frequency,
14536       { "START_FREQUENCY",        "gsm_rlcmac.dl.ext_frequency_list_start_frequency",
14537         FT_UINT8, BASE_DEC, NULL, 0x0,
14538         NULL, HFILL
14539       }
14540     },
14541     { &hf_ext_frequency_list_nr_of_frequencies,
14542       { "NR_OF_FREQUENCIES",        "gsm_rlcmac.dl.ext_frequency_list_nr_of_frequencies",
14543         FT_UINT8, BASE_DEC, NULL, 0x0,
14544         NULL, HFILL
14545       }
14546     },
14547     { &hf_ext_frequency_list_freq_diff_length,
14548       { "FREQ_DIFF_LENGTH",        "gsm_rlcmac.dl.ext_frequency_list_freq_diff_length",
14549         FT_UINT8, BASE_DEC, NULL, 0x0,
14550         NULL, HFILL
14551       }
14552     },
14553 #endif
14554     { &hf_packet_measurement_order_pmo_index,
14555       { "PMO_INDEX",        "gsm_rlcmac.dl.pmo_index",
14556         FT_UINT8, BASE_DEC, NULL, 0x0,
14557         NULL, HFILL
14558       }
14559     },
14560     { &hf_packet_measurement_order_pmo_count,
14561       { "PMO_COUNT",        "gsm_rlcmac.dl.pmo_count",
14562         FT_UINT8, BASE_DEC, NULL, 0x0,
14563         NULL, HFILL
14564       }
14565     },
14566     { &hf_ccn_measurement_report_rxlev_serving_cell,
14567       { "RXLEV_SERVING_CELL",        "gsm_rlcmac.dl.rxlev_serving_cell",
14568         FT_UINT8, BASE_DEC, NULL, 0x0,
14569         NULL, HFILL
14570       }
14571     },
14572     { &hf_ccn_measurement_report_number_of_nc_measurements,
14573       { "NUMBER_OF_NC_MEASUREMENTS",        "gsm_rlcmac.dl.number_of_nc_measurements",
14574         FT_UINT8, BASE_DEC, NULL, 0x0,
14575         NULL, HFILL
14576       }
14577     },
14578     { &hf_target_cell_gsm_notif_bsic,
14579       { "BSIC",        "gsm_rlcmac.dl.target_cell_gsm_notif_bsic",
14580         FT_UINT8, BASE_DEC, NULL, 0x0,
14581         NULL, HFILL
14582       }
14583     },
14584     { &hf_fdd_target_cell_notif_fdd_arfcn,
14585       { "FDD_ARFCN",        "gsm_rlcmac.dl.fdd_target_cell_notif_fdd_arfcn",
14586         FT_UINT8, BASE_DEC, NULL, 0x0,
14587         NULL, HFILL
14588       }
14589     },
14590     { &hf_fdd_target_cell_notif_bandwith_fdd,
14591       { "BANDWIDTH_FDD",        "gsm_rlcmac.dl.fdd_target_cell_notif_bandwidth_fdd",
14592         FT_UINT8, BASE_DEC, NULL, 0x0,
14593         NULL, HFILL
14594       }
14595     },
14596     { &hf_fdd_target_cell_notif_scrambling_code,
14597       { "SCRAMBLING_CODE",        "gsm_rlcmac.dl.fdd_target_cell_notif_scrambling_code",
14598         FT_UINT8, BASE_DEC, NULL, 0x0,
14599         NULL, HFILL
14600       }
14601     },
14602     { &hf_target_cell_3g_notif_reporting_quantity,
14603       { "REPORTING_QUANTITY",        "gsm_rlcmac.dl.target_cell_3g_notif_reporting_quantity",
14604         FT_UINT8, BASE_DEC, NULL, 0x0,
14605         NULL, HFILL
14606       }
14607     },
14608     { &hf_pccn_additionsr6_ba_used_3g,
14609       { "BA_USED_3G",        "gsm_rlcmac.dl.pccn_additionsr6_ba_used_3g",
14610         FT_UINT8, BASE_DEC, NULL, 0x0,
14611         NULL, HFILL
14612       }
14613     },
14614     { &hf_pccn_additionsr6_n_3g,
14615       { "N_3G",        "gsm_rlcmac.dl.pccn_additionsr6_n_3g",
14616         FT_UINT8, BASE_DEC, NULL, 0x0,
14617         NULL, HFILL
14618       }
14619     },
14620 /* < Packet Cell Change Notification message contents > */
14621     { &hf_packet_cell_change_notification_ba_ind,
14622       { "BA_IND",        "gsm_rlcmac.ul.pccn_ba_ind",
14623         FT_UINT8, BASE_DEC, NULL, 0x0,
14624         NULL, HFILL
14625       }
14626     },
14627     { &hf_packet_cell_change_notification_pmo_used,
14628       { "PMO_USED",        "gsm_rlcmac.ul.pccn_pmo_used",
14629         FT_UINT8, BASE_DEC, NULL, 0x0,
14630         NULL, HFILL
14631       }
14632     },
14633     { &hf_packet_cell_change_notification_pccn_sending,
14634       { "PCCN_SENDING",        "gsm_rlcmac.ul.pccn_pccn_sending",
14635         FT_UINT8, BASE_DEC, NULL, 0x0,
14636         NULL, HFILL
14637       }
14638     },
14639     { &hf_packet_cell_change_notification_lte_reporting_quantity,
14640       { "REPORTING_QUANTITY",        "gsm_rlcmac.ul.pccn_lte_reporting_quantity",
14641         FT_UINT8, BASE_DEC, NULL, 0x0,
14642         NULL, HFILL
14643       }
14644     },
14645     { &hf_eutran_ccn_meas_rpt_3g_ba_used,
14646       { "3G_BA_USED",        "gsm_rlcmac.ul.pccn_eutran_ccn_meas_rpt_3g_ba_used",
14647         FT_UINT8, BASE_DEC, NULL, 0x0,
14648         NULL, HFILL
14649       }
14650     },
14651     { &hf_eutran_ccn_meas_rpt_num_eutran,
14652       { "N_EUTRAN",        "gsm_rlcmac.ul.pccn_eutran_ccn_meas_rpt_num_eutran",
14653         FT_UINT8, BASE_DEC, NULL, 0x0,
14654         NULL, HFILL
14655       }
14656     },
14657     { &hf_eutran_ccn_meas_rpt_freq_idx,
14658       { "E-UTRAN_FREQUENCY_INDEX",        "gsm_rlcmac.ul.pccn_eutran_ccn_meas_rpt_freq_idx",
14659         FT_UINT8, BASE_DEC, NULL, 0x0,
14660         NULL, HFILL
14661       }
14662     },
14663     { &hf_eutran_ccn_meas_cell_id,
14664       { "CELL IDENTITY",        "gsm_rlcmac.ul.pccn_eutran_ccn_meas_rpt_cell_id",
14665         FT_UINT32, BASE_DEC, NULL, 0x0,
14666         NULL, HFILL
14667       }
14668     },
14669     { &hf_eutran_ccn_meas_rpt_quantity,
14670       { "REPORTING_QUANTITY",        "gsm_rlcmac.ul.pccn_eutran_ccn_meas_rpt_rpt_quantity",
14671         FT_UINT8, BASE_DEC, NULL, 0x0,
14672         NULL, HFILL
14673       }
14674     },
14675     { &hf_utran_csg_meas_rpt_cgi,
14676       { "UTRAN_CGI",        "gsm_rlcmac.ul.utran_csg_meas_rpt_cgi",
14677         FT_UINT32, BASE_DEC, NULL, 0x0,
14678         NULL, HFILL
14679       }
14680     },
14681     { &hf_utran_csg_meas_rpt_csg_id,
14682       { "CSG_ID",        "gsm_rlcmac.ul.utran_csg_meas_rpt_csg_id",
14683         FT_UINT32, BASE_DEC, NULL, 0x0,
14684         NULL, HFILL
14685       }
14686     },
14687     { &hf_utran_csg_meas_rpt_access_mode,
14688       { "Access Mode",        "gsm_rlcmac.ul.utran_csg_meas_rpt_access_mode",
14689         FT_UINT8, BASE_DEC, NULL, 0x0,
14690         NULL, HFILL
14691       }
14692     },
14693     { &hf_utran_csg_meas_rpt_quantity,
14694       { "REPORTING_QUANTITY",        "gsm_rlcmac.ul.utran_csg_meas_rpt_quantity",
14695         FT_UINT8, BASE_DEC, NULL, 0x0,
14696         NULL, HFILL
14697       }
14698     },
14699     { &hf_eutran_csg_meas_rpt_cgi,
14700       { "EUTRAN_CGI",        "gsm_rlcmac.ul.eutran_csg_meas_rpt_cgi",
14701         FT_UINT32, BASE_DEC, NULL, 0x0,
14702         NULL, HFILL
14703       }
14704     },
14705     { &hf_eutran_csg_meas_rpt_ta,
14706       { "Tracking Area Code",        "gsm_rlcmac.ul.eutran_csg_meas_rpt_ta",
14707         FT_UINT32, BASE_DEC, NULL, 0x0,
14708         NULL, HFILL
14709       }
14710     },
14711     { &hf_eutran_csg_meas_rpt_csg_id,
14712       { "CSG_ID",        "gsm_rlcmac.ul.eutran_csg_meas_rpt_csg_id",
14713         FT_UINT32, BASE_DEC, NULL, 0x0,
14714         NULL, HFILL
14715       }
14716     },
14717     { &hf_eutran_csg_meas_rpt_access_mode,
14718       { "Access Mode",        "gsm_rlcmac.ul.eutran_csg_meas_rpt_access_mode",
14719         FT_UINT8, BASE_DEC, NULL, 0x0,
14720         NULL, HFILL
14721       }
14722     },
14723     { &hf_eutran_csg_meas_rpt_quantity,
14724       { "REPORTING_QUANTITY",        "gsm_rlcmac.ul.eutran_csg_meas_rpt_quantity",
14725         FT_UINT8, BASE_DEC, NULL, 0x0,
14726         NULL, HFILL
14727       }
14728     },
14729 
14730 /* < Packet Cell Change Continue message contents > */
14731     { &hf_packet_cell_change_continue_arfcn,
14732       { "ARFCN",        "gsm_rlcmac.dl.pccc_arfcn",
14733         FT_UINT8, BASE_DEC, NULL, 0x0,
14734         NULL, HFILL
14735       }
14736     },
14737     { &hf_packet_cell_change_continue_bsic,
14738       { "BSIC",        "gsm_rlcmac.dl.pccc_bsic",
14739         FT_UINT8, BASE_DEC, NULL, 0x0,
14740         NULL, HFILL
14741       }
14742     },
14743     { &hf_packet_cell_change_continue_container_id,
14744       { "CONTAINER_ID",        "gsm_rlcmac.dl.pccc_container_id",
14745         FT_UINT8, BASE_DEC, NULL, 0x0,
14746         NULL, HFILL
14747       }
14748     },
14749 
14750 /* < Packet Neighbour Cell Data message contents > */
14751     { &hf_pncd_container_with_id_bsic,
14752       { "BSIC",        "gsm_rlcmac.dl.pncd_bsic",
14753         FT_UINT8, BASE_DEC, NULL, 0x0,
14754         NULL, HFILL
14755       }
14756     },
14757     { &hf_pncd_container_with_id_container,
14758       { "CONTAINER",        "gsm_rlcmac.dl.pncd_with_id_container",
14759         FT_UINT8, BASE_HEX, NULL, 0x0,
14760         NULL, HFILL
14761       }
14762     },
14763     { &hf_pncd_container_without_id_container,
14764       { "CONTAINER",        "gsm_rlcmac.dl.pncd_without_id_container",
14765         FT_UINT8, BASE_HEX, NULL, 0x0,
14766         NULL, HFILL
14767       }
14768     },
14769     { &hf_pncd_container_choice,
14770       { "PNCD_CONTAINER Choice",        "gsm_rlcmac.dl.pncd_container_choice",
14771         FT_UINT8, BASE_DEC, NULL, 0x0,
14772         NULL, HFILL
14773       }
14774     },
14775     { &hf_packet_neighbour_cell_data_container_id,
14776       { "CONTAINER_ID",        "gsm_rlcmac.dl.pncd_container_id",
14777         FT_UINT8, BASE_DEC, NULL, 0x0,
14778         NULL, HFILL
14779       }
14780     },
14781     { &hf_packet_neighbour_cell_data_spare,
14782       { "spare",        "gsm_rlcmac.dl.pncd_spare",
14783         FT_UINT8, BASE_DEC, NULL, 0x0,
14784         NULL, HFILL
14785       }
14786     },
14787     { &hf_packet_neighbour_cell_data_container_index,
14788       { "CONTAINER_INDEX",        "gsm_rlcmac.dl.pncd_container_index",
14789         FT_UINT8, BASE_DEC, NULL, 0x0,
14790         NULL, HFILL
14791       }
14792     },
14793 
14794 /* < Packet Serving Cell Data message contents > */
14795     { &hf_packet_serving_cell_data_spare,
14796       { "spare",        "gsm_rlcmac.dl.pscd_spare",
14797         FT_UINT8, BASE_DEC, NULL, 0x0,
14798         NULL, HFILL
14799       }
14800     },
14801     { &hf_packet_serving_cell_data_container_index,
14802       { "CONTAINER_INDEX",        "gsm_rlcmac.dl.pscd_container_index",
14803         FT_UINT8, BASE_DEC, NULL, 0x0,
14804         NULL, HFILL
14805       }
14806     },
14807     { &hf_packet_serving_cell_data_container,
14808       { "CONTAINER",        "gsm_rlcmac.dl.pscd_container",
14809         FT_UINT8, BASE_HEX, NULL, 0x0,
14810         NULL, HFILL
14811       }
14812     },
14813 #if 0
14814     { &hf_servingcelldata_rxlev_serving_cell,
14815       { "RXLEV_SERVING_CELL",        "gsm_rlcmac.dl.servingcelldata_rxlev_serving_cell",
14816         FT_UINT8, BASE_DEC, NULL, 0x0,
14817         NULL, HFILL
14818       }
14819     },
14820     { &hf_repeated_invalid_bsic_info_bcch_freq_ncell,
14821       { "BCCH_FREQ_NCELL",        "gsm_rlcmac.dl.repeated_invalid_bsic_info_bcch_freq_ncell",
14822         FT_UINT8, BASE_DEC, NULL, 0x0,
14823         NULL, HFILL
14824       }
14825     },
14826     { &hf_repeated_invalid_bsic_info_bsic,
14827       { "BSIC",        "gsm_rlcmac.dl.repeated_invalid_bsic_info_bsic",
14828         FT_UINT8, BASE_DEC, NULL, 0x0,
14829         NULL, HFILL
14830       }
14831     },
14832     { &hf_repeated_invalid_bsic_info_rxlev_ncell,
14833       { "RXLEV_NCELL",        "gsm_rlcmac.dl.repeated_invalid_bsic_info_rxlev_ncell",
14834         FT_UINT8, BASE_DEC, NULL, 0x0,
14835         NULL, HFILL
14836       }
14837     },
14838     { &hf_reporting_quantity_reporting_quantity,
14839       { "REPORTING_QUANTITY",        "gsm_rlcmac.dl.repeated_invalid_bsic_info_reporting_quantity",
14840         FT_UINT8, BASE_DEC, NULL, 0x0,
14841         NULL, HFILL
14842       }
14843     },
14844     { &hf_nc_measurementreport_nc_mode,
14845       { "NC_MODE",        "gsm_rlcmac.dl.nc_measurementreport_nc_mode",
14846         FT_BOOLEAN, BASE_NONE, NULL, 0x0,
14847         NULL, HFILL
14848       }
14849     },
14850     { &hf_nc_measurementreport_pmo_used,
14851       { "PMO_USED",        "gsm_rlcmac.dl.nc_measurementreport_pmo_used",
14852         FT_BOOLEAN, BASE_NONE, NULL, 0x0,
14853         NULL, HFILL
14854       }
14855     },
14856     { &hf_nc_measurementreport_scale,
14857       { "SCALE",        "gsm_rlcmac.dl.nc_measurementreport_scale",
14858         FT_BOOLEAN, BASE_NONE, NULL, 0x0,
14859         NULL, HFILL
14860       }
14861     },
14862 #endif
14863 
14864 /* < Packet Handover Command message content > */
14865     { &hf_globaltimeslotdescription_ms_timeslotallocation,
14866       { "MS_TimeslotAllocation",        "gsm_rlcmac.dl.pho_ms_timeslotallocation",
14867         FT_UINT8, BASE_DEC, NULL, 0x0,
14868         NULL, HFILL
14869       }
14870     },
14871     { &hf_pho_usf_1_7_usf,
14872       { "USF",        "gsm_rlcmac.dl.pho_usf",
14873         FT_UINT8, BASE_DEC, NULL, 0x0,
14874         NULL, HFILL
14875       }
14876     },
14877     { &hf_usf_allocationarray_usf_0,
14878       { "USF_0",        "gsm_rlcmac.dl.pho_usf_0",
14879         FT_UINT8, BASE_DEC, NULL, 0x0,
14880         NULL, HFILL
14881       }
14882     },
14883     { &hf_egprs_description_linkqualitymeasurementmode,
14884       { "LinkQualityMeasurementMode",        "gsm_rlcmac.dl.linkqualitymeasurementmode",
14885         FT_UINT8, BASE_DEC, NULL, 0x0,
14886         NULL, HFILL
14887       }
14888     },
14889     { &hf_nas_container_for_ps_ho_containerlength,
14890       { "NAS_ContainerLength",        "gsm_rlcmac.dl.nas_container_for_ps_ho_length",
14891         FT_UINT8, BASE_DEC, NULL, 0x0,
14892         NULL, HFILL
14893       }
14894     },
14895     { &hf_nas_container_for_ps_ho_spare,
14896       { "Spare",        "gsm_rlcmac.dl.nas_container_for_ps_ho_spare",
14897         FT_UINT8, BASE_DEC, NULL, 0x0,
14898         NULL, HFILL
14899       }
14900     },
14901     { &hf_nas_container_for_ps_ho_old_xid,
14902       { "Old XID",        "gsm_rlcmac.dl.nas_container_for_ps_ho_old_xid",
14903       FT_UINT8, BASE_DEC, VALS(nas_container_for_ps_ho_old_xid), 0x0,
14904       NULL, HFILL
14905       }
14906     },
14907     { &hf_nas_container_for_ps_ho_type_of_ciphering,
14908       { "Type of Ciphering Algorithm",        "gsm_rlcmac.dl.nas_container_for_ps_ho_type_of_ciphering",
14909       FT_UINT8, BASE_DEC, VALS(nas_container_for_ps_ho_type_of_ciphering), 0x0,
14910       NULL, HFILL
14911       }
14912     },
14913     { &hf_nas_container_for_ps_ho_iov_ui_value,
14914       { "IOV-UI value",        "gsm_rlcmac.dl.nas_container_for_ps_ho_iov_ui_value",
14915       FT_UINT32, BASE_DEC, NULL, 0x0,
14916       NULL, HFILL
14917       }
14918     },
14919     { &hf_ps_handoverto_utran_payload_rrc_containerlength,
14920       { "RRC_ContainerLength",        "gsm_rlcmac.dl.ps_handoverto_utran_payload_rrc_containerlength",
14921         FT_UINT8, BASE_DEC, NULL, 0x0,
14922         NULL, HFILL
14923       }
14924     },
14925     { &hf_ps_handoverto_utran_payload_rrc_container,
14926       { "RRC_Container",        "gsm_rlcmac.dl.ps_handoverto_utran_payload_rrc_container",
14927         FT_BYTES, BASE_NONE, NULL, 0x0,
14928         NULL, HFILL
14929       }
14930     },
14931     { &hf_ps_handoverto_eutran_payload_rrc_containerlength,
14932       { "RRC_ContainerLength",        "gsm_rlcmac.dl.ps_handoverto_eutran_payload_rrc_containerlength",
14933       FT_UINT8, BASE_DEC, NULL, 0x0,
14934       NULL, HFILL
14935     }
14936     },
14937     { &hf_ps_handoverto_eutran_payload_rrc_container,
14938       { "RRC_Container",        "gsm_rlcmac.dl.ps_handoverto_eutran_payload_rrc_container",
14939       FT_BYTES, BASE_NONE, NULL, 0x0,
14940       NULL, HFILL
14941       }
14942     },
14943     { &hf_pho_radioresources_handoverreference,
14944       { "HandoverReference",        "gsm_rlcmac.dl.pho_radioresources_handoverreference",
14945         FT_UINT8, BASE_DEC, NULL, 0x0,
14946         NULL, HFILL
14947       }
14948     },
14949     { &hf_pho_radioresources_si,
14950       { "SI",        "gsm_rlcmac.dl.pho_radioresources_si",
14951         FT_UINT8, BASE_DEC, NULL, 0x0,
14952         NULL, HFILL
14953       }
14954     },
14955     { &hf_pho_radioresources_nci,
14956       { "NCI",        "gsm_rlcmac.dl.pho_radioresources_nci",
14957         FT_BOOLEAN, BASE_NONE, NULL, 0x0,
14958         NULL, HFILL
14959       }
14960     },
14961     { &hf_pho_radioresources_bsic,
14962       { "BSIC",        "gsm_rlcmac.dl.pho_radioresources_bsic",
14963         FT_UINT8, BASE_DEC, NULL, 0x0,
14964         NULL, HFILL
14965       }
14966     },
14967     { &hf_pho_radioresources_ccn_active,
14968       { "CCN_Active",        "gsm_rlcmac.dl.pho_radioresources_ccn_active",
14969         FT_BOOLEAN, BASE_NONE, NULL, 0x0,
14970         NULL, HFILL
14971       }
14972     },
14973     { &hf_pho_radioresources_ccn_active_3g,
14974       { "CCN_Active_3G",        "gsm_rlcmac.dl.pho_radioresources_ccn_active_3g",
14975         FT_BOOLEAN, BASE_NONE, NULL, 0x0,
14976         NULL, HFILL
14977       }
14978     },
14979     { &hf_pho_radioresources_networkcontrolorder,
14980       { "NetworkControlOrder",        "gsm_rlcmac.dl.pho_radioresources_networkcontrolorder",
14981         FT_UINT8, BASE_DEC, NULL, 0x0,
14982         NULL, HFILL
14983       }
14984     },
14985     { &hf_pho_radioresources_rlc_reset,
14986       { "RLC_Reset",        "gsm_rlcmac.dl.pho_radioresources_rlc_reset",
14987         FT_BOOLEAN, BASE_NONE, NULL, 0x0,
14988         NULL, HFILL
14989       }
14990     },
14991     { &hf_pho_radioresources_uplinkcontroltimeslot,
14992       { "UplinkControlTimeslot",        "gsm_rlcmac.dl.pho_radioresources_uplinkcontroltimeslot",
14993         FT_UINT8, BASE_DEC, NULL, 0x0,
14994         NULL, HFILL
14995       }
14996     },
14997     { &hf_packet_handover_command_containerid,
14998       { "ContainerID",        "gsm_rlcmac.dl.pho_containerid",
14999         FT_UINT8, BASE_DEC, NULL, 0x0,
15000         NULL, HFILL
15001       }
15002     },
15003 /* < End Packet Handover Command > */
15004 
15005 /* < Packet Physical Information message content > */
15006 
15007 /* < End Packet Physical Information > */
15008 #if 0
15009     { &hf_si1_restoctet_nch_position,
15010       { "NCH_Position",        "gsm_rlcmac.dl.i1_restoctet_nch_position",
15011         FT_UINT8, BASE_DEC, NULL, 0x0,
15012         NULL, HFILL
15013       }
15014     },
15015     { &hf_si1_restoctet_bandindicator,
15016       { "BandIndicator",        "gsm_rlcmac.dl.i1_restoctet_bandindicator",
15017         FT_UINT8, BASE_DEC, NULL, 0x0,
15018         NULL, HFILL
15019       }
15020     },
15021     { &hf_selection_parameters_cbq,
15022       { "CBQ",        "gsm_rlcmac.dl.selection_parameters_cbq",
15023         FT_UINT8, BASE_DEC, NULL, 0x0,
15024         NULL, HFILL
15025       }
15026     },
15027     { &hf_selection_parameters_cell_reselect_offset,
15028       { "CELL_RESELECT_OFFSET",        "gsm_rlcmac.dl.cell_reselect_offset",
15029         FT_UINT8, BASE_DEC, NULL, 0x0,
15030         NULL, HFILL
15031       }
15032     },
15033     { &hf_selection_parameters_temporary_offset,
15034       { "TEMPORARY_OFFSET",        "gsm_rlcmac.dl.selection_parameters_temporary_offset",
15035         FT_UINT8, BASE_DEC, NULL, 0x0,
15036         NULL, HFILL
15037       }
15038     },
15039     { &hf_selection_parameters_penalty_time,
15040       { "PENALTY_TIME",        "gsm_rlcmac.dl.selection_parameters_penalty_time",
15041         FT_UINT8, BASE_DEC, NULL, 0x0,
15042         NULL, HFILL
15043       }
15044     },
15045     { &hf_si3_rest_octet_power_offset,
15046       { "Power_Offset",        "gsm_rlcmac.dl.si3_rest_octet_power_offset",
15047         FT_UINT8, BASE_DEC, NULL, 0x0,
15048         NULL, HFILL
15049       }
15050     },
15051     { &hf_si3_rest_octet_system_information_2ter_indicator,
15052       { "System_Information_2ter_Indicator",        "gsm_rlcmac.dl.si3_rest_octet_system_information_2ter_indicator",
15053         FT_UINT8, BASE_DEC, NULL, 0x0,
15054         NULL, HFILL
15055       }
15056     },
15057     { &hf_si3_rest_octet_early_classmark_sending_control,
15058       { "Early_Classmark_Sending_Control",        "gsm_rlcmac.dl.si3_rest_octet_early_classmark_sending_control",
15059         FT_UINT8, BASE_DEC, NULL, 0x0,
15060         NULL, HFILL
15061       }
15062     },
15063     { &hf_si3_rest_octet_where,
15064       { "WHERE",        "gsm_rlcmac.dl.si3_rest_octet_where",
15065         FT_UINT8, BASE_DEC, NULL, 0x0,
15066         NULL, HFILL
15067       }
15068     },
15069     { &hf_si3_rest_octet_ra_colour,
15070       { "RA_COLOUR",        "gsm_rlcmac.dl.si3_rest_octet_ra_colour",
15071         FT_UINT8, BASE_DEC, NULL, 0x0,
15072         NULL, HFILL
15073       }
15074     },
15075     { &hf_si13_position,
15076       { "SI13_POSITION",        "gsm_rlcmac.dl.si13_position",
15077         FT_UINT8, BASE_DEC, NULL, 0x0,
15078         NULL, HFILL
15079       }
15080     },
15081     { &hf_si3_rest_octet_ecs_restriction3g,
15082       { "ECS_Restriction3G",        "gsm_rlcmac.dl.si3_rest_octet_ecs_restriction3g",
15083         FT_UINT8, BASE_DEC, NULL, 0x0,
15084         NULL, HFILL
15085       }
15086     },
15087     { &hf_si3_rest_octet_si2quaterindicator,
15088       { "SI2quaterIndicator",        "gsm_rlcmac.dl.si3_rest_octet_si2quaterindicator",
15089         FT_UINT8, BASE_DEC, NULL, 0x0,
15090         NULL, HFILL
15091       }
15092     },
15093     { &hf_si4_rest_octet_power_offset,
15094       { "Power_Offset",        "gsm_rlcmac.dl.si4_rest_octet_power_offset",
15095         FT_UINT8, BASE_DEC, NULL, 0x0,
15096         NULL, HFILL
15097       }
15098     },
15099     { &hf_si4_rest_octet_ra_colour,
15100       { "RA_COLOUR",        "gsm_rlcmac.dl.si4_rest_octet_ra_colour",
15101         FT_UINT8, BASE_DEC, NULL, 0x0,
15102         NULL, HFILL
15103       }
15104     },
15105     { &hf_pch_and_nch_info_pagingchannelrestructuring,
15106       { "PagingChannelRestructuring",        "gsm_rlcmac.dl.pch_and_nch_info_pagingchannelrestructuring",
15107         FT_UINT8, BASE_DEC, NULL, 0x0,
15108         NULL, HFILL
15109       }
15110     },
15111     { &hf_pch_and_nch_info_nln_sacch,
15112       { "NLN_SACCH",        "gsm_rlcmac.dl.pch_and_nch_info_nln_sacch",
15113         FT_UINT8, BASE_DEC, NULL, 0x0,
15114         NULL, HFILL
15115       }
15116     },
15117     { &hf_pch_and_nch_info_callpriority,
15118       { "CallPriority",        "gsm_rlcmac.dl.pch_and_nch_info_callpriority",
15119         FT_UINT8, BASE_DEC, NULL, 0x0,
15120         NULL, HFILL
15121       }
15122     },
15123     { &hf_si6_restoctet_vbs_vgcs_options,
15124       { "VBS_VGCS_Options",        "gsm_rlcmac.dl.si6_restoctet_vbs_vgcs_options",
15125         FT_UINT8, BASE_DEC, NULL, 0x0,
15126         NULL, HFILL
15127       }
15128     },
15129     { &hf_si6_restoctet_max_lapdm,
15130       { "MAX_LAPDm",        "gsm_rlcmac.dl.si6_restoctet_max_lapdm",
15131         FT_UINT8, BASE_DEC, NULL, 0x0,
15132         NULL, HFILL
15133       }
15134     },
15135     { &hf_si6_restoctet_bandindicator,
15136       { "BandIndicator",        "gsm_rlcmac.dl.si6_restoctet_bandindicator",
15137         FT_UINT8, BASE_DEC, NULL, 0x0,
15138         NULL, HFILL
15139       }
15140     },
15141 #endif
15142 /* < Additional MS Radio Access Capability message content > */
15143 /* < End Additional MS Radio Access Capability> */
15144 
15145 /* < Packet Pause message content > */
15146 /* < End Packet Pause> */
15147 
15148 /* < Packet System Information Type 1 message content > */
15149     { &hf_packet_system_info_type1_pbcch_change_mark,
15150       { "PBCCH_CHANGE_MARK",        "gsm_rlcmac.dl.psi1_pbcch_change_mark",
15151         FT_UINT8, BASE_DEC, NULL, 0x0,
15152         NULL, HFILL
15153       }
15154     },
15155     { &hf_packet_system_info_type1_psi_change_field,
15156       { "PSI_CHANGE_FIELD",        "gsm_rlcmac.dl.psi1_psi_change_field",
15157         FT_UINT8, BASE_DEC, VALS(gsm_rlcmac_psi_change_field_vals), 0x0,
15158         NULL, HFILL
15159       }
15160     },
15161     { &hf_packet_system_info_type1_psi1_repeat_period,
15162       { "PSI1_REPEAT_PERIOD",        "gsm_rlcmac.dl.psi1_psi1_repeat_period",
15163         FT_UINT8, BASE_DEC, VALS(gsm_rlcmac_val_plus_1_vals), 0x0,
15164         NULL, HFILL
15165       }
15166     },
15167     { &hf_packet_system_info_type1_psi_count_lr,
15168       { "PSI_COUNT_LR",        "gsm_rlcmac.dl.psi1_psi_count_lr",
15169         FT_UINT8, BASE_DEC, NULL, 0x0,
15170         NULL, HFILL
15171       }
15172     },
15173     { &hf_packet_system_info_type1_psi_count_hr,
15174       { "PSI_COUNT_HR",        "gsm_rlcmac.dl.psi1_psi_count_hr",
15175         FT_UINT8, BASE_DEC, VALS(gsm_rlcmac_val_plus_1_vals), 0x0,
15176         NULL, HFILL
15177       }
15178     },
15179     { &hf_packet_system_info_type1_measurement_order,
15180       { "MEASUREMENT_ORDER",        "gsm_rlcmac.dl.psi1_measurement_order",
15181         FT_BOOLEAN, BASE_NONE, TFS(&gsm_rlcmac_psi1_measurement_order_value), 0x0,
15182         NULL, HFILL
15183       }
15184     },
15185     { &hf_packet_system_info_type1_psi_status_ind,
15186       { "PSI_STATUS_IND",        "gsm_rlcmac.dl.psi1_psi_status_ind",
15187         FT_UINT8, BASE_DEC, NULL, 0x0,
15188         NULL, HFILL
15189       }
15190     },
15191     { &hf_packet_system_info_type1_mscr,
15192       { "MSCR",        "gsm_rlcmac.dl.psi1_mscr",
15193         FT_UINT8, BASE_DEC, NULL, 0x0,
15194         NULL, HFILL
15195       }
15196     },
15197     { &hf_packet_system_info_type1_band_indicator,
15198       { "BAND_INDICATOR",        "gsm_rlcmac.dl.psi1_band_indicator",
15199         FT_UINT8, BASE_DEC, NULL, 0x0,
15200         NULL, HFILL
15201       }
15202     },
15203     { &hf_packet_system_info_type1_lb_ms_txpwr_max_ccch,
15204       { "LB_MS_TXPWR_MAX_CCCH", "gsm_rlcmac.dl.psi1_lb_ms_txpwr_max_ccch",
15205         FT_UINT8, BASE_DEC, NULL, 0x0,
15206         NULL, HFILL
15207       }
15208     },
15209     { &hf_rai,
15210       { "RAI",        "gsm_rlcmac.rai",
15211         FT_UINT8, BASE_DEC, NULL, 0x0,
15212         NULL, HFILL
15213       }
15214     },
15215     { &hf_pccch_org_bs_pcc_rel,
15216       { "BS_PCC_REL",        "gsm_rlcmac.dl.pccch_org_bs_pcc_rel",
15217         FT_UINT8, BASE_DEC, NULL, 0x0,
15218         NULL, HFILL
15219       }
15220     },
15221     { &hf_pccch_org_pbcch_blks,
15222       { "PBCCH_BLKS",        "gsm_rlcmac.dl.pccch_org_pbcch_blks",
15223         FT_UINT8, BASE_DEC, NULL, 0x0,
15224         NULL, HFILL
15225       }
15226     },
15227     { &hf_pccch_org_pag_blks_res,
15228       { "PAG_BLKS_RES",        "gsm_rlcmac.dl.pccch_org_pag_blks_res",
15229         FT_UINT8, BASE_DEC, NULL, 0x0,
15230         NULL, HFILL
15231       }
15232     },
15233     { &hf_pccch_org_prach_blks,
15234       { "PRACH_BLKS",        "gsm_rlcmac.dl.pccch_org_prach_blks",
15235         FT_UINT8, BASE_DEC, NULL, 0x0,
15236         NULL, HFILL
15237       }
15238     },
15239 /* < End Packet System Information Type 1 message content > */
15240 
15241 /* < Packet System Information Type 2 message content > */
15242     { &hf_packet_system_info_type2_change_mark,
15243       { "PSI2_CHANGE_MARK",        "gsm_rlcmac.dl.psi2_change_mark",
15244         FT_UINT8, BASE_DEC, NULL, 0x0,
15245         NULL, HFILL
15246       }
15247     },
15248     { &hf_packet_system_info_type2_index,
15249       { "PSI2_INDEX",        "gsm_rlcmac.dl.psi2_INDEX",
15250         FT_UINT8, BASE_DEC, NULL, 0x0,
15251         NULL, HFILL
15252       }
15253     },
15254     { &hf_packet_system_info_type2_count,
15255       { "PSI2_COUNT",        "gsm_rlcmac.dl.psi2_COUNT",
15256         FT_UINT8, BASE_DEC, NULL, 0x0,
15257         NULL, HFILL
15258       }
15259     },
15260     { &hf_packet_cell_id_cell_identity,
15261       { "CELL_IDENTITY",        "gsm_rlcmac.dl.cell_id_cell_identity",
15262         FT_UINT16, BASE_DEC, NULL, 0x0,
15263         NULL, HFILL
15264       }
15265     },
15266     { &hf_packet_lai_lac,
15267       { "LAC",        "gsm_rlcmac.dl.lai_lac",
15268         FT_UINT16, BASE_DEC, NULL, 0x0,
15269         NULL, HFILL
15270       }
15271     },
15272     { &hf_packet_plmn_mcc1,
15273       { "MCC1",        "gsm_rlcmac.dl.plmn_mcc1",
15274         FT_UINT8, BASE_DEC, NULL, 0x0,
15275         NULL, HFILL
15276       }
15277     },
15278     { &hf_packet_plmn_mcc2,
15279       { "MCC2",        "gsm_rlcmac.dl.plmn_mcc2",
15280         FT_UINT8, BASE_DEC, NULL, 0x0,
15281         NULL, HFILL
15282       }
15283     },
15284     { &hf_packet_plmn_mcc3,
15285       { "MCC3",        "gsm_rlcmac.dl.plmn_mcc3",
15286         FT_UINT8, BASE_DEC, NULL, 0x0,
15287         NULL, HFILL
15288       }
15289     },
15290     { &hf_packet_plmn_mnc1,
15291       { "MNC1",        "gsm_rlcmac.dl.plmn_mnc1",
15292         FT_UINT8, BASE_DEC, NULL, 0x0,
15293         NULL, HFILL
15294       }
15295     },
15296     { &hf_packet_plmn_mnc2,
15297       { "MNC2",        "gsm_rlcmac.dl.plmn_mnc2",
15298         FT_UINT8, BASE_DEC, NULL, 0x0,
15299         NULL, HFILL
15300       }
15301     },
15302     { &hf_packet_plmn_mnc3,
15303       { "MNC3",        "gsm_rlcmac.dl.plmn_mnc3",
15304         FT_UINT8, BASE_DEC, NULL, 0x0,
15305         NULL, HFILL
15306       }
15307     },
15308     { &hf_packet_non_gprs_cell_opt_att,
15309       { "ATT",        "gsm_rlcmac.dl.non_gprs_cell_opt_att",
15310         FT_UINT8, BASE_DEC, NULL, 0x0,
15311         NULL, HFILL
15312       }
15313     },
15314     { &hf_packet_non_gprs_cell_opt_t3212,
15315       { "T3212",        "gsm_rlcmac.dl.non_gprs_cell_opt_t3212",
15316         FT_UINT8, BASE_DEC, NULL, 0x0,
15317         NULL, HFILL
15318       }
15319     },
15320     { &hf_packet_non_gprs_cell_opt_neci,
15321       { "NECI",        "gsm_rlcmac.dl.non_gprs_cell_opt_neci",
15322         FT_UINT8, BASE_DEC, NULL, 0x0,
15323         NULL, HFILL
15324       }
15325     },
15326     { &hf_packet_non_gprs_cell_opt_pwrc,
15327       { "PWRC",        "gsm_rlcmac.dl.non_gprs_cell_opt_pwrc",
15328         FT_UINT8, BASE_DEC, NULL, 0x0,
15329         NULL, HFILL
15330       }
15331     },
15332     { &hf_packet_non_gprs_cell_opt_dtx,
15333       { "DTX",        "gsm_rlcmac.dl.non_gprs_cell_opt_dtx",
15334         FT_UINT8, BASE_DEC, NULL, 0x0,
15335         NULL, HFILL
15336       }
15337     },
15338     { &hf_packet_non_gprs_cell_opt_radio_link_timeout,
15339       { "RADIO_LINK_TIMEOUT",        "gsm_rlcmac.dl.non_gprs_cell_opt_radio_link_timeout",
15340         FT_UINT8, BASE_DEC, NULL, 0x0,
15341         NULL, HFILL
15342       }
15343     },
15344     { &hf_packet_non_gprs_cell_opt_bs_ag_blks_res,
15345       { "BS_AG_BLKS_RES",        "gsm_rlcmac.dl.non_gprs_cell_opt_bs_ag_blks_res",
15346         FT_UINT8, BASE_DEC, NULL, 0x0,
15347         NULL, HFILL
15348       }
15349     },
15350     { &hf_packet_non_gprs_cell_opt_ccch_conf,
15351       { "CCCH_CONF",        "gsm_rlcmac.dl.non_gprs_cell_opt_ccch_conf",
15352         FT_UINT8, BASE_DEC, NULL, 0x0,
15353         NULL, HFILL
15354       }
15355     },
15356     { &hf_packet_non_gprs_cell_opt_bs_pa_mfrms,
15357       { "BS_PA_MFRMS",        "gsm_rlcmac.dl.non_gprs_cell_opt_bs_pa_mfrms",
15358         FT_UINT8, BASE_DEC, NULL, 0x0,
15359         NULL, HFILL
15360       }
15361     },
15362     { &hf_packet_non_gprs_cell_opt_max_retrans,
15363       { "MAX_RETRANS",        "gsm_rlcmac.dl.non_gprs_cell_opt_max_retrans",
15364         FT_UINT8, BASE_DEC, NULL, 0x0,
15365         NULL, HFILL
15366       }
15367     },
15368     { &hf_packet_non_gprs_cell_opt_tx_int,
15369       { "TX_INTEGER",        "gsm_rlcmac.dl.non_gprs_cell_opt_tx_integer",
15370         FT_UINT8, BASE_DEC, NULL, 0x0,
15371         NULL, HFILL
15372       }
15373     },
15374     { &hf_packet_non_gprs_cell_opt_ec,
15375       { "EC",        "gsm_rlcmac.dl.non_gprs_cell_opt_ec",
15376         FT_UINT8, BASE_DEC, NULL, 0x0,
15377         NULL, HFILL
15378       }
15379     },
15380     { &hf_packet_non_gprs_cell_opt_ms_txpwr_max_ccch,
15381       { "MS_TXPWR_MAX_CCCH",        "gsm_rlcmac.dl.non_gprs_cell_opt_ms_txpwr_max_ccch",
15382         FT_UINT8, BASE_DEC, NULL, 0x0,
15383         NULL, HFILL
15384       }
15385     },
15386 #if 0
15387     { &hf_packet_non_gprs_cell_opt_ext_len,
15388       { "Extension_Length",        "gsm_rlcmac.dl.non_gprs_cell_opt_extension_length",
15389         FT_UINT8, BASE_DEC, NULL, 0x0,
15390         NULL, HFILL
15391       }
15392     },
15393 #endif
15394     { &hf_packet_system_info_type2_ref_freq_num,
15395       { "RFL_NUMBER",        "gsm_rlcmac.dl.psi2_ref_freq_number",
15396         FT_UINT8, BASE_DEC, NULL, 0x0,
15397         NULL, HFILL
15398       }
15399     },
15400     { &hf_packet_system_info_type2_ref_freq_length,
15401       { "Length",        "gsm_rlcmac.dl.psi2_ref_freq_length",
15402         FT_UINT8, BASE_DEC, NULL, 0x0,
15403         NULL, HFILL
15404       }
15405     },
15406     { &hf_packet_system_info_type2_ref_freq,
15407       { "Contents",        "gsm_rlcmac.dl.psi2_ref_freq",
15408         FT_UINT8, BASE_DEC, NULL, 0x0,
15409         NULL, HFILL
15410       }
15411     },    { &hf_packet_system_info_type2_ma_number,
15412       { "MA_NUMBER",        "gsm_rlcmac.dl.psi2_ma_number",
15413         FT_UINT8, BASE_DEC, NULL, 0x0,
15414         NULL, HFILL
15415       }
15416     },
15417     { &hf_packet_system_info_type2_non_hopping_timeslot,
15418       { "TIMESLOT",        "gsm_rlcmac.dl.psi2_pccch_desc_non_hopping_timeslot",
15419         FT_UINT8, BASE_HEX, NULL, 0x0,
15420         NULL, HFILL
15421       }
15422     },
15423     { &hf_packet_system_info_type2_hopping_ma_num,
15424       { "MA_NUMBER",        "gsm_rlcmac.dl.psi2_pccch_desc_hopping_ma_num",
15425         FT_UINT8, BASE_HEX, NULL, 0x0,
15426         NULL, HFILL
15427       }
15428     },
15429     { &hf_packet_system_info_type2_hopping_timeslot,
15430       { "TIMESLOT",        "gsm_rlcmac.dl.psi2_pccch_desc_hopping_timeslot",
15431         FT_UINT8, BASE_HEX, NULL, 0x0,
15432         NULL, HFILL
15433       }
15434     },
15435 /* < End Packet System Information Type 2 message content > */
15436 
15437 
15438 /* < Packet System Information Type 3 message content > */
15439     { &hf_packet_system_info_type3_change_mark,
15440       { "PSI3_CHANGE_MARK",        "gsm_rlcmac.dl.psi3_change_mark",
15441         FT_UINT8, BASE_DEC, NULL, 0x0,
15442         NULL, HFILL
15443       }
15444     },
15445     { &hf_packet_system_info_type3_bis_count,
15446       { "PSI3_BIS_COUNT",        "gsm_rlcmac.dl.psi3_bis_count",
15447         FT_UINT8, BASE_DEC, NULL, 0x0,
15448         NULL, HFILL
15449       }
15450     },
15451     { &hf_packet_scell_param_gprs_rxlev_access_min,
15452       { "RXLEV_ACCESS_MIN",        "gsm_rlcmac.dl.psi3_scell_param_gprs_rxlev_access_min",
15453         FT_UINT8, BASE_DEC, NULL, 0x0,
15454         NULL, HFILL
15455       }
15456     },
15457     { &hf_packet_scell_param_gprs_ms_txpwr_max_cch,
15458       { "MS_TXPWR_MAX_CCH",        "gsm_rlcmac.dl.psi3_scell_param_ms_txpwr_max_cch",
15459         FT_UINT8, BASE_DEC, NULL, 0x0,
15460         NULL, HFILL
15461       }
15462     },
15463     { &hf_packet_scell_param_multiband_reporting,
15464       { "MULTIBAND_REPORTING",        "gsm_rlcmac.dl.psi3_scell_param_multiband_reporting",
15465         FT_UINT8, BASE_DEC, NULL, 0x0,
15466         NULL, HFILL
15467       }
15468     },
15469     { &hf_packet_gen_cell_sel_gprs_cell_resl_hyst,
15470       { "GPRS_CELL_RESELECT_HYSTERESIS",        "gsm_rlcmac.dl.psi3_gen_cell_sel_resel_hyst",
15471         FT_UINT8, BASE_DEC, NULL, 0x0,
15472         NULL, HFILL
15473       }
15474     },
15475     { &hf_packet_gen_cell_sel_c31_hyst,
15476       { "C31_HYST",        "gsm_rlcmac.dl.psi3_gen_cell_sel_c31_hyst",
15477         FT_UINT8, BASE_DEC, NULL, 0x0,
15478         NULL, HFILL
15479       }
15480     },
15481     { &hf_packet_gen_cell_sel_c32_qual,
15482       { "C32_QUAL",        "gsm_rlcmac.dl.psi3_gen_cell_sel_c32_qual",
15483         FT_UINT8, BASE_DEC, NULL, 0x0,
15484         NULL, HFILL
15485       }
15486     },
15487     { &hf_packet_gen_cell_sel_t_resel,
15488       { "T_RESEL",        "gsm_rlcmac.dl.psi3_gen_cell_sel_t_resel",
15489         FT_UINT8, BASE_DEC, NULL, 0x0,
15490         NULL, HFILL
15491       }
15492     },
15493     { &hf_packet_gen_cell_sel_ra_resel_hyst,
15494       { "RA_RESELECT_HYSTERESIS",        "gsm_rlcmac.dl.psi3_gen_cell_sel_ra_resel_hyst",
15495         FT_UINT8, BASE_DEC, NULL, 0x0,
15496         NULL, HFILL
15497       }
15498     },
15499     { &hf_packet_compact_cell_sel_bsic,
15500       { "BSIC",        "gsm_rlcmac.dl.psi3_compact_cell_sel_bsic",
15501         FT_UINT8, BASE_DEC, NULL, 0x0,
15502         NULL, HFILL
15503       }
15504     },
15505     { &hf_packet_compact_cell_sel_same_as_scell,
15506       { "SAME_AS_SERVING_CELL",        "gsm_rlcmac.dl.psi3_compact_cell_sel_same_as_scell",
15507         FT_UINT8, BASE_DEC, NULL, 0x0,
15508         NULL, HFILL
15509       }
15510     },
15511     { &hf_packet_compact_cell_sel_gprs_rxlev_access_min,
15512       { "GPRS_RXLEV_ACCESS_MIN",        "gsm_rlcmac.dl.psi3_compact_cell_sel_gprs_rxlev_access_min",
15513         FT_UINT8, BASE_DEC, NULL, 0x0,
15514         NULL, HFILL
15515       }
15516     },
15517     { &hf_packet_compact_cell_sel_gprs_ms_txpwr_max_cch,
15518       { "GPRS_MS_TXPWR_MAX_CCH",        "gsm_rlcmac.dl.psi3_compact_cell_sel_gprs_ms_txpwr_cch",
15519         FT_UINT8, BASE_DEC, NULL, 0x0,
15520         NULL, HFILL
15521       }
15522     },
15523     { &hf_packet_compact_cell_sel_gprs_temp_offset,
15524       { "GPRS_TEMP_OFFSET",        "gsm_rlcmac.dl.psi3_compact_cell_sel_gprs_temp_offset",
15525         FT_UINT8, BASE_DEC, NULL, 0x0,
15526         NULL, HFILL
15527       }
15528     },
15529     { &hf_packet_compact_cell_sel_gprs_penalty_time,
15530       { "GPRS_PENALTY_TIME",        "gsm_rlcmac.dl.psi3_compact_cell_sel_gprs_penalty_time",
15531         FT_UINT8, BASE_DEC, NULL, 0x0,
15532         NULL, HFILL
15533       }
15534     },
15535     { &hf_packet_compact_cell_sel_gprs_resel_offset,
15536       { "GPRS_RESEL_OFFSET",        "gsm_rlcmac.dl.psi3_compact_cell_sel_gprs_resel_offset",
15537         FT_UINT8, BASE_DEC, NULL, 0x0,
15538         NULL, HFILL
15539       }
15540     },
15541     { &hf_packet_compact_cell_sel_time_group,
15542       { "TIME_GROUP",        "gsm_rlcmac.dl.psi3_compact_cell_sel_time_group",
15543         FT_UINT8, BASE_DEC, NULL, 0x0,
15544         NULL, HFILL
15545       }
15546     },
15547     { &hf_packet_compact_cell_sel_guar_const_pwr_blks,
15548       { "GUAR_CONSTANT_PWR_BLKS",        "gsm_rlcmac.dl.psi3_compact_cell_sel_guar_const_pwr_blks",
15549         FT_UINT8, BASE_DEC, NULL, 0x0,
15550         NULL, HFILL
15551       }
15552     },
15553     { &hf_packet_compact_neighbour_cell_param_freq_diff,
15554       { "FREQUENCY_DIFF",        "gsm_rlcmac.dl.packet_compact_neighbour_cell_param_freq_diff",
15555         FT_UINT8, BASE_DEC, NULL, 0x0,
15556         NULL, HFILL
15557       }
15558     },
15559     { &hf_packet_compact_ncell_param_start_freq,
15560       { "START_FREQUENCY",        "gsm_rlcmac.dl.psi3_compact_ncell_start_freq",
15561         FT_UINT16, BASE_DEC, NULL, 0x0,
15562         NULL, HFILL
15563       }
15564     },
15565     { &hf_packet_compact_ncell_param_nr_of_remaining_cells,
15566       { "NR_OF_REMAINING_CELLS",        "gsm_rlcmac.dl.psi3_compact_ncell_nr_of_remaining_cells",
15567         FT_UINT8, BASE_DEC, NULL, 0x0,
15568         NULL, HFILL
15569       }
15570     },
15571     { &hf_packet_compact_ncell_param_freq_diff_length,
15572       { "FREQ_DIFF_LENGTH",        "gsm_rlcmac.dl.psi3_compact_ncell_freq_diff_length",
15573         FT_UINT8, BASE_DEC, NULL, 0x0,
15574         NULL, HFILL
15575       }
15576     },
15577 /* < End Packet System Information Type 3 message content > */
15578 
15579 /* < Packet System Information Type 5 message content > */
15580     { &hf_gprsmeasurementparams3g_psi5_repquantfdd,
15581       { "FDD_REP_QUANT",        "gsm_rlcmac.dl.psi5_rep_quant_fdd",
15582         FT_UINT8, BASE_DEC, NULL, 0x0,
15583         NULL, HFILL
15584       }
15585     },
15586     { &hf_gprsmeasurementparams3g_psi5_multiratreportingfdd,
15587       { "FDD_MULTIRAT_REPORTING",        "gsm_rlcmac.dl.psi5_multirat_reporting_fdd",
15588         FT_UINT8, BASE_DEC, NULL, 0x0,
15589         NULL, HFILL
15590       }
15591     },
15592     { &hf_gprsmeasurementparams3g_psi5_reportingoffsetfdd,
15593       { "FDD_REPORTING_OFFSET",        "gsm_rlcmac.dl.psi5_reporting_offset_fdd",
15594         FT_UINT8, BASE_DEC, NULL, 0x0,
15595         NULL, HFILL
15596       }
15597     },
15598     { &hf_gprsmeasurementparams3g_psi5_reportingthresholdfdd,
15599       { "FDD_REPORTING_THRESHOLD",        "gsm_rlcmac.dl.psi5_reporting_threshold_fdd",
15600         FT_UINT8, BASE_DEC, NULL, 0x0,
15601         NULL, HFILL
15602       }
15603     },
15604     { &hf_gprsmeasurementparams3g_psi5_multiratreportingtdd,
15605       { "TDD_MULTIRAT_REPORTING",        "gsm_rlcmac.dl.psi5_multirat_reporting_tdd",
15606         FT_UINT8, BASE_DEC, NULL, 0x0,
15607         NULL, HFILL
15608       }
15609     },
15610     { &hf_gprsmeasurementparams3g_psi5_reportingoffsettdd,
15611       { "TDD_REPORTING_OFFSET",        "gsm_rlcmac.dl.psi5_reporting_offset_tdd",
15612         FT_UINT8, BASE_DEC, NULL, 0x0,
15613         NULL, HFILL
15614       }
15615     },
15616     { &hf_gprsmeasurementparams3g_psi5_reportingthresholdtdd,
15617       { "TDD_REPORTING_THRESHOLD",        "gsm_rlcmac.dl.psi5_reporting_threshold_tdd",
15618         FT_UINT8, BASE_DEC, NULL, 0x0,
15619         NULL, HFILL
15620       }
15621     },
15622     { &hf_enh_reporting_parameters_report_type,
15623       { "Report_Type",        "gsm_rlcmac.dl.psi5_enh_reporting_param_report_type",
15624         FT_UINT8, BASE_DEC, NULL, 0x0,
15625         NULL, HFILL
15626       }
15627     },
15628     { &hf_enh_reporting_parameters_reporting_rate,
15629       { "REPORTING_RATE",        "gsm_rlcmac.dl.psi5_enh_reporting_param_reporting_rate",
15630         FT_UINT8, BASE_DEC, NULL, 0x0,
15631         NULL, HFILL
15632       }
15633     },
15634     { &hf_enh_reporting_parameters_invalid_bsic_reporting,
15635       { "INVALID_BSIC_REPORTING",        "gsm_rlcmac.dl.psi5_enh_reporting_param_invalid_bsic_reporting",
15636         FT_UINT8, BASE_DEC, NULL, 0x0,
15637         NULL, HFILL
15638       }
15639     },
15640     { &hf_enh_reporting_parameters_ncc_permitted,
15641       { "NCC_PERMITTED",        "gsm_rlcmac.dl.psi5_enh_reporting_param_ncc_permitted",
15642         FT_UINT8, BASE_DEC, NULL, 0x0,
15643         NULL, HFILL
15644       }
15645     },
15646     { &hf_packet_system_info_type5_change_mark,
15647       { "PSI5_CHANGE_MARK",        "gsm_rlcmac.dl.psi5_change_mark",
15648         FT_UINT8, BASE_DEC, NULL, 0x0,
15649         NULL, HFILL
15650       }
15651     },
15652     { &hf_packet_system_info_type5_index,
15653       { "PSI5_INDEX",        "gsm_rlcmac.dl.psi5_index",
15654         FT_UINT8, BASE_DEC, NULL, 0x0,
15655         NULL, HFILL
15656       }
15657     },
15658     { &hf_packet_system_info_type5_count,
15659       { "PSI5_COUNT",        "gsm_rlcmac.dl.psi5_count",
15660         FT_UINT8, BASE_DEC, NULL, 0x0,
15661         NULL, HFILL
15662       }
15663     },
15664 /* < End Packet System Information Type 5 message content > */
15665 
15666 /* < Packet System Information Type 13 message content > */
15667     { &hf_packet_system_info_type13_lb_ms_mxpwr_max_cch,
15668       { "LB_MS_TXPWR_MAX_CCH",        "gsm_rlcmac.dl.psi13_lb_ms_txpwr_max_cch",
15669         FT_UINT8, BASE_DEC, NULL, 0x0,
15670         NULL, HFILL
15671       }
15672     },
15673     { &hf_packet_system_info_type13_si2n_support,
15674       { "SI2n_SUPPORT",        "gsm_rlcmac.dl.psi13_si2n_support",
15675         FT_UINT8, BASE_DEC, NULL, 0x0,
15676         NULL, HFILL
15677       }
15678     },
15679 /* < End Packet System Information Type 13 message content > */
15680 
15681 /* Unsorted FIXED and UNION fields */
15682     { &hf_pu_acknack_egrps,
15683       { "PU_AckNack_EGPRS",        "gsm_rlcmac.pu_acknack_egrps",
15684         FT_UINT8, BASE_DEC, NULL, 0x0,
15685         NULL, HFILL
15686       }
15687     },
15688     { &hf_pu_acknack,
15689       { "Packet_Ack_Nack",        "gsm_rlcmac.pu_acknack",
15690         FT_UINT8, BASE_DEC, NULL, 0x0,
15691         NULL, HFILL
15692       }
15693     },
15694     { &hf_frequency_parameters,
15695       { "Frequency_Parameters",        "gsm_rlcmac.frequency_parameters",
15696         FT_UINT8, BASE_DEC, NULL, 0x0,
15697         NULL, HFILL
15698       }
15699     },
15700     { &hf_dynamic_allocation,
15701       { "Dynamic_Allocation",        "gsm_rlcmac.dynamic_allocation",
15702         FT_UINT8, BASE_DEC, NULL, 0x0,
15703         NULL, HFILL
15704       }
15705     },
15706     { &hf_pua_grps,
15707       { "PUA_GPRS",        "gsm_rlcmac.pua_grps",
15708         FT_UINT8, BASE_DEC, NULL, 0x0,
15709         NULL, HFILL
15710       }
15711     },
15712     { &hf_pua_egprs,
15713       { "PUA_GPRS",        "gsm_rlcmac.pua_egprs",
15714         FT_UINT8, BASE_DEC, NULL, 0x0,
15715         NULL, HFILL
15716       }
15717     },
15718     { &hf_pua_assignment,
15719       { "Packet_Uplink_Assignment",        "gsm_rlcmac.pua_assignment",
15720         FT_UINT8, BASE_DEC, NULL, 0x0,
15721         NULL, HFILL
15722       }
15723     },
15724     { &hf_packet_downlink_assignment,
15725       { "Packet_Downlink_Assignment",        "gsm_rlcmac.packet_downlink_assignment",
15726         FT_UINT8, BASE_DEC, NULL, 0x0,
15727         NULL, HFILL
15728       }
15729     },
15730     { &hf_page_request_tfb_establishment,
15731       { "Page_request_for_TBF_establishment",        "gsm_rlcmac.page_request_tfb_establishment",
15732         FT_UINT8, BASE_DEC, NULL, 0x0,
15733         NULL, HFILL
15734       }
15735     },
15736     { &hf_page_request_rr_conn,
15737       { "Page_request_for_RR_conn",        "gsm_rlcmac.page_request_rr_conn",
15738         FT_UINT8, BASE_DEC, NULL, 0x0,
15739         NULL, HFILL
15740       }
15741     },
15742     { &hf_repeated_page_info,
15743       { "Repeated_Page_info",        "gsm_rlcmac.repeated_page_info",
15744         FT_UINT8, BASE_DEC, NULL, 0x0,
15745         NULL, HFILL
15746       }
15747     },
15748     { &hf_packet_pdch_release,
15749       { "Packet_PDCH_Release",        "gsm_rlcmac.packet_pdch_release",
15750         FT_UINT8, BASE_DEC, NULL, 0x0,
15751         NULL, HFILL
15752       }
15753     },
15754     { &hf_global_timing_or_power,
15755       { "GlobalTimingOrPower",        "gsm_rlcmac.global_timing_or_power",
15756         FT_UINT8, BASE_DEC, NULL, 0x0,
15757         NULL, HFILL
15758       }
15759     },
15760     { &hf_ppc_timing_advance,
15761       { "Packet_Power_Control_Timing_Advance",        "gsm_rlcmac.ppc_timing_advance",
15762         FT_UINT8, BASE_DEC, NULL, 0x0,
15763         NULL, HFILL
15764       }
15765     },
15766     { &hf_packet_queueing_notif,
15767       { "Packet_Queueing_Notification",        "gsm_rlcmac.packet_queueing_notif",
15768         FT_UINT8, BASE_DEC, NULL, 0x0,
15769         NULL, HFILL
15770       }
15771     },
15772     { &hf_ptr_egprs,
15773       { "PTR_EGPRS",        "gsm_rlcmac.ptr_egprs",
15774         FT_UINT8, BASE_DEC, NULL, 0x0,
15775         NULL, HFILL
15776       }
15777     },
15778     { &hf_packet_timeslot_reconfigure,
15779       { "Packet_Timeslot_Reconfigure",        "gsm_rlcmac.packet_timeslot_reconfigure",
15780         FT_UINT8, BASE_DEC, NULL, 0x0,
15781         NULL, HFILL
15782       }
15783     },
15784     { &hf_si_pbcch_location,
15785       { "SI13_PBCCH_Location",        "gsm_rlcmac.si_pbcch_location",
15786         FT_UINT8, BASE_DEC, NULL, 0x0,
15787         NULL, HFILL
15788       }
15789     },
15790     { &hf_enh_measurement_parameters_pmo,
15791       { "ENH_Measurement_Parameters_PMO",        "gsm_rlcmac.enh_measurement_parameters_pmo",
15792         FT_UINT8, BASE_DEC, NULL, 0x0,
15793         NULL, HFILL
15794       }
15795     },
15796     { &hf_enh_measurement_parameters_pcco,
15797       { "ENH_Measurement_Parameters_PCCO",        "gsm_rlcmac.enh_measurement_parameters_pcco",
15798         FT_UINT8, BASE_DEC, NULL, 0x0,
15799         NULL, HFILL
15800       }
15801     },
15802     { &hf_rept_eutran_enh_cell_resel_param,
15803       { "Rept_EUTRAN_Enh_Cell_Resel_Param",        "gsm_rlcmac.rept_eutran_enh_cell_resel_param",
15804         FT_UINT8, BASE_DEC, NULL, 0x0,
15805         NULL, HFILL
15806       }
15807     },
15808     { &hf_idvd_utran_priority_param,
15809       { "Repeated_Individual_UTRAN_Priority_Parameters",        "gsm_rlcmac.idvd_utran_priority_param",
15810         FT_UINT8, BASE_DEC, NULL, 0x0,
15811         NULL, HFILL
15812       }
15813     },
15814     { &hf_idvd_priorities,
15815       { "Individual_Priorities",        "gsm_rlcmac.idvd_priorities",
15816         FT_UINT8, BASE_DEC, NULL, 0x0,
15817         NULL, HFILL
15818       }
15819     },
15820     { &hf_lsa_id_info_element,
15821       { "LSA_ID_Info_Element",        "gsm_rlcmac.lsa_id_info_element",
15822         FT_UINT8, BASE_DEC, NULL, 0x0,
15823         NULL, HFILL
15824       }
15825     },
15826     { &hf_target_cell_3g,
15827       { "Target_Cell_3G",        "gsm_rlcmac.target_cell_3g",
15828         FT_UINT8, BASE_DEC, NULL, 0x0,
15829         NULL, HFILL
15830       }
15831     },
15832     { &hf_packet_cell_change_order,
15833       { "Packet_Cell_Change_Order",        "gsm_rlcmac.packet_cell_change_order",
15834         FT_UINT8, BASE_DEC, NULL, 0x0,
15835         NULL, HFILL
15836       }
15837     },
15838     { &hf_serving_cell_data,
15839       { "Serving_Cell_Data",        "gsm_rlcmac.serving_cell_data",
15840         FT_UINT8, BASE_DEC, NULL, 0x0,
15841         NULL, HFILL
15842       }
15843     },
15844     { &hf_enh_nc_measurement_report,
15845       { "ENH_NC_Measurement_Report",        "gsm_rlcmac.enh_nc_measurement_report",
15846         FT_UINT8, BASE_DEC, NULL, 0x0,
15847         NULL, HFILL
15848       }
15849     },
15850     { &hf_pmr_additionsr99,
15851       { "PMR_AdditionsR99",        "gsm_rlcmac.pmr_additionsr99",
15852         FT_UINT8, BASE_DEC, NULL, 0x0,
15853         NULL, HFILL
15854       }
15855     },
15856     { &hf_packet_measurement_report,
15857       { "Packet_Measurement_Report",        "gsm_rlcmac.packet_measurement_report",
15858         FT_UINT8, BASE_DEC, NULL, 0x0,
15859         NULL, HFILL
15860       }
15861     },
15862     { &hf_packet_measurement_order,
15863       { "Packet_Measurement_Order",        "gsm_rlcmac.packet_measurement_order",
15864         FT_UINT8, BASE_DEC, NULL, 0x0,
15865         NULL, HFILL
15866       }
15867     },
15868     { &hf_ccn_measurement_report,
15869       { "CCN_Measurement_Report",        "gsm_rlcmac.ccn_measurement_report",
15870         FT_UINT8, BASE_DEC, NULL, 0x0,
15871         NULL, HFILL
15872       }
15873     },
15874     { &hf_target_cell_csg_notif,
15875       { "Target_Cell_CSG_Notif",        "gsm_rlcmac.target_cell_csg_notif",
15876         FT_UINT8, BASE_DEC, NULL, 0x0,
15877         NULL, HFILL
15878       }
15879     },
15880     { &hf_target_other_rat2_notif,
15881       { "Target_Other_RAT_2_Notif",        "gsm_rlcmac.target_other_rat2_notif",
15882         FT_UINT8, BASE_DEC, NULL, 0x0,
15883         NULL, HFILL
15884       }
15885     },
15886     { &hf_target_other_rat_notif,
15887       { "Target_Other_RAT_Notif",        "gsm_rlcmac.target_other_rat_notif",
15888         FT_UINT8, BASE_DEC, NULL, 0x0,
15889         NULL, HFILL
15890       }
15891     },
15892     { &hf_target_cell,
15893       { "Target_Cell",        "gsm_rlcmac.target_cell",
15894         FT_UINT8, BASE_DEC, NULL, 0x0,
15895         NULL, HFILL
15896       }
15897     },
15898     { &hf_packet_cell_change_notification,
15899       { "Packet_Cell_Change_Notification",        "gsm_rlcmac.packet_cell_change_notification",
15900         FT_UINT8, BASE_DEC, NULL, 0x0,
15901         NULL, HFILL
15902       }
15903     },
15904     { &hf_packet_cell_change_continue,
15905       { "Packet_Cell_Change_Continue",        "gsm_rlcmac.packet_cell_change_continue",
15906         FT_UINT8, BASE_DEC, NULL, 0x0,
15907         NULL, HFILL
15908       }
15909     },
15910     { &hf_packet_neighbour_cell_data,
15911       { "Packet_Neighbour_Cell_Data",        "gsm_rlcmac.packet_neighbour_cell_data",
15912         FT_UINT8, BASE_DEC, NULL, 0x0,
15913         NULL, HFILL
15914       }
15915     },
15916     { &hf_packet_serving_cell_data,
15917       { "Packet_Serving_Cell_Data",        "gsm_rlcmac.packet_serving_cell_data",
15918         FT_UINT8, BASE_DEC, NULL, 0x0,
15919         NULL, HFILL
15920       }
15921     },
15922     { &hf_pho_uplinkassignment,
15923       { "PHO_UplinkAssignment",        "gsm_rlcmac.pho_uplinkassignment",
15924         FT_UINT8, BASE_DEC, NULL, 0x0,
15925         NULL, HFILL
15926       }
15927     },
15928     { &hf_global_timeslot_description,
15929       { "GlobalTimeslotDescription",        "gsm_rlcmac.global_timeslot_description",
15930         FT_UINT8, BASE_DEC, NULL, 0x0,
15931         NULL, HFILL
15932       }
15933     },
15934     { &hf_pho_gprs,
15935       { "PHO_GPRS",        "gsm_rlcmac.pho_gprs",
15936         FT_UINT8, BASE_DEC, NULL, 0x0,
15937         NULL, HFILL
15938       }
15939     },
15940     { &hf_downlink_tbf,
15941       { "DownlinkTBF",        "gsm_rlcmac.downlink_tbf",
15942         FT_UINT8, BASE_DEC, NULL, 0x0,
15943         NULL, HFILL
15944       }
15945     },
15946     { &hf_pho_radio_resources,
15947       { "PHO_RadioResources",        "gsm_rlcmac.pho_radio_resources",
15948         FT_UINT8, BASE_DEC, NULL, 0x0,
15949         NULL, HFILL
15950       }
15951     },
15952     { &hf_ps_handoverto_a_gb_modepayload,
15953       { "PS_HandoverTo_A_GB_ModePayload",        "gsm_rlcmac.ps_handoverto_a_gb_modepayload",
15954         FT_UINT8, BASE_DEC, NULL, 0x0,
15955         NULL, HFILL
15956       }
15957     },
15958     { &hf_packet_handover_command,
15959       { "Packet_Handover_Command",        "gsm_rlcmac.packet_handover_command",
15960         FT_UINT8, BASE_DEC, NULL, 0x0,
15961         NULL, HFILL
15962       }
15963     },
15964     { &hf_pccch_description,
15965       { "PCCCH_Description",        "gsm_rlcmac.pccch_description",
15966         FT_UINT8, BASE_DEC, NULL, 0x0,
15967         NULL, HFILL
15968       }
15969     },
15970     { &hf_gen_cell_sel,
15971       { "Gen_Cell_Sel",        "gsm_rlcmac.gen_cell_sel",
15972         FT_UINT8, BASE_DEC, NULL, 0x0,
15973         NULL, HFILL
15974       }
15975     },
15976     { &hf_psi3_additionr99,
15977       { "PSI3_AdditionR99",        "gsm_rlcmac.psi3_additionr99",
15978         FT_UINT8, BASE_DEC, NULL, 0x0,
15979         NULL, HFILL
15980       }
15981     },
15982     { &hf_psi5,
15983       { "PSI5",        "gsm_rlcmac.psi5",
15984         FT_UINT8, BASE_DEC, NULL, 0x0,
15985         NULL, HFILL
15986       }
15987     },
15988     { &hf_psi13,
15989       { "PSI13",        "gsm_rlcmac.psi13",
15990         FT_UINT8, BASE_DEC, NULL, 0x0,
15991         NULL, HFILL
15992       }
15993     },
15994     /* XXX - "exist" fields generated from perl script.  If humans think changes are necessary, feel free */
15995     { &hf_packet_downlink_ack_nack_channel_request_description_exist,
15996       { "Exist_Channel_Request_Description", "gsm_rlcmac.packet_downlink_ack_nack.channel_request_description_exist",
15997         FT_UINT8, BASE_DEC, NULL, 0x0,
15998         NULL, HFILL
15999       }
16000     },
16001     { &hf_egprs_pd_acknack_egprs_channelqualityreport_exist,
16002       { "Exist_EGPRS_ChannelQualityReport", "gsm_rlcmac.egprs_pd_acknack.egprs_channelqualityreport_exist",
16003         FT_UINT8, BASE_DEC, NULL, 0x0,
16004         NULL, HFILL
16005       }
16006     },
16007     { &hf_egprs_pd_acknack_channelrequestdescription_exist,
16008       { "Exist_ChannelRequestDescription", "gsm_rlcmac.egprs_pd_acknack.channelrequestdescription_exist",
16009         FT_UINT8, BASE_DEC, NULL, 0x0,
16010         NULL, HFILL
16011       }
16012     },
16013     { &hf_egprs_pd_acknack_extensionbits_exist,
16014       { "Exist_ExtensionBits", "gsm_rlcmac.egprs_pd_acknack.extensionbits_exist",
16015         FT_UINT8, BASE_DEC, NULL, 0x0,
16016         NULL, HFILL
16017       }
16018     },
16019     { &hf_fdd_target_cell_bandwith_fdd_exist,
16020       { "Exist_Bandwidth_FDD", "gsm_rlcmac.fdd_target_cell.bandwidth_fdd_exist",
16021         FT_UINT8, BASE_DEC, NULL, 0x0,
16022         NULL, HFILL
16023       }
16024     },
16025     { &hf_tdd_target_cell_bandwith_tdd_exist,
16026       { "Exist_Bandwidth_TDD", "gsm_rlcmac.tdd_target_cell.bandwidth_tdd_exist",
16027         FT_UINT8, BASE_DEC, NULL, 0x0,
16028         NULL, HFILL
16029       }
16030     },
16031     { &hf_eutran_target_cell_measurement_bandwidth_exist,
16032       { "Exist_Measurement_Bandwidth", "gsm_rlcmac.eutran_target_cell.measurement_bandwidth_exist",
16033         FT_UINT8, BASE_DEC, NULL, 0x0,
16034         NULL, HFILL
16035       }
16036     },
16037     { &hf_utran_csg_target_cell_plmn_id_exist,
16038       { "Exist_PLMN_ID", "gsm_rlcmac.utran_csg_target_cell.plmn_id_exist",
16039         FT_UINT8, BASE_DEC, NULL, 0x0,
16040         NULL, HFILL
16041       }
16042     },
16043     { &hf_eutran_csg_target_cell_plmn_id_exist,
16044       { "Exist_PLMN_ID", "gsm_rlcmac.eutran_csg_target_cell.plmn_id_exist",
16045         FT_UINT8, BASE_DEC, NULL, 0x0,
16046         NULL, HFILL
16047       }
16048     },
16049     { &hf_pccf_additionsr9_utran_csg_target_cell_exist,
16050       { "Exist_UTRAN_CSG_Target_Cell", "gsm_rlcmac.pccf_additionsr9.utran_csg_target_cell_exist",
16051         FT_UINT8, BASE_DEC, NULL, 0x0,
16052         NULL, HFILL
16053       }
16054     },
16055     { &hf_pccf_additionsr9_eutran_csg_target_cell_exist,
16056       { "Exist_EUTRAN_CSG_Target_Cell", "gsm_rlcmac.pccf_additionsr9.eutran_csg_target_cell_exist",
16057         FT_UINT8, BASE_DEC, NULL, 0x0,
16058         NULL, HFILL
16059       }
16060     },
16061     { &hf_pccf_additionsr8_eutran_target_cell_exist,
16062       { "Exist_EUTRAN_Target_Cell", "gsm_rlcmac.pccf_additionsr8.eutran_target_cell_exist",
16063         FT_UINT8, BASE_DEC, NULL, 0x0,
16064         NULL, HFILL
16065       }
16066     },
16067     { &hf_pccf_additionsr5_g_rnti_extention_exist,
16068       { "Exist_G_RNTI_extension", "gsm_rlcmac.pccf_additionsr5.g_rnti_extension_exist",
16069         FT_UINT8, BASE_DEC, NULL, 0x0,
16070         NULL, HFILL
16071       }
16072     },
16073     { &hf_pccf_additionsr99_fdd_description_exist,
16074       { "Exist_FDD_Description", "gsm_rlcmac.pccf_additionsr99.fdd_description_exist",
16075         FT_UINT8, BASE_DEC, NULL, 0x0,
16076         NULL, HFILL
16077       }
16078     },
16079     { &hf_pccf_additionsr99_tdd_description_exist,
16080       { "Exist_TDD_Description", "gsm_rlcmac.pccf_additionsr99.tdd_description_exist",
16081         FT_UINT8, BASE_DEC, NULL, 0x0,
16082         NULL, HFILL
16083       }
16084     },
16085     { &hf_power_control_parameters_slot0_exist,
16086       { "Slot[0].Exist", "gsm_rlcmac.power_control_parameters.slot0_exist",
16087         FT_UINT8, BASE_DEC, NULL, 0x0,
16088         NULL, HFILL
16089       }
16090     },
16091     { &hf_power_control_parameters_slot1_exist,
16092       { "Slot[1].Exist", "gsm_rlcmac.power_control_parameters.slot1_exist",
16093         FT_UINT8, BASE_DEC, NULL, 0x0,
16094         NULL, HFILL
16095       }
16096     },
16097     { &hf_power_control_parameters_slot2_exist,
16098       { "Slot[2].Exist", "gsm_rlcmac.power_control_parameters.slot2_exist",
16099         FT_UINT8, BASE_DEC, NULL, 0x0,
16100         NULL, HFILL
16101       }
16102     },
16103     { &hf_power_control_parameters_slot3_exist,
16104       { "Slot[3].Exist", "gsm_rlcmac.power_control_parameters.slot3_exist",
16105         FT_UINT8, BASE_DEC, NULL, 0x0,
16106         NULL, HFILL
16107       }
16108     },
16109     { &hf_power_control_parameters_slot4_exist,
16110       { "Slot[4].Exist", "gsm_rlcmac.power_control_parameters.slot4_exist",
16111         FT_UINT8, BASE_DEC, NULL, 0x0,
16112         NULL, HFILL
16113       }
16114     },
16115     { &hf_power_control_parameters_slot5_exist,
16116       { "Slot[5].Exist", "gsm_rlcmac.power_control_parameters.slot5_exist",
16117         FT_UINT8, BASE_DEC, NULL, 0x0,
16118         NULL, HFILL
16119       }
16120     },
16121     { &hf_power_control_parameters_slot6_exist,
16122       { "Slot[6].Exist", "gsm_rlcmac.power_control_parameters.slot6_exist",
16123         FT_UINT8, BASE_DEC, NULL, 0x0,
16124         NULL, HFILL
16125       }
16126     },
16127     { &hf_power_control_parameters_slot7_exist,
16128       { "Slot[7].Exist", "gsm_rlcmac.power_control_parameters.slot7_exist",
16129         FT_UINT8, BASE_DEC, NULL, 0x0,
16130         NULL, HFILL
16131       }
16132     },
16133     { &hf_pu_acknack_gprs_additionsr99_packetextendedtimingadvance_exist,
16134       { "Exist_PacketExtendedTimingAdvance", "gsm_rlcmac.pu_acknack_gprs_additionsr99.packetextendedtimingadvance_exist",
16135         FT_UINT8, BASE_DEC, NULL, 0x0,
16136         NULL, HFILL
16137       }
16138     },
16139     { &hf_pu_acknack_gprs_common_uplink_ack_nack_data_exist_contention_resolution_tlli_exist,
16140       { "Common_Uplink_Ack_Nack_Data.Exist_CONTENTION_RESOLUTION_TLLI", "gsm_rlcmac.pu_acknack_gprs.common_uplink_ack_nack_data.exist_contention_resolution_tlli_exist",
16141         FT_UINT8, BASE_DEC, NULL, 0x0,
16142         NULL, HFILL
16143       }
16144     },
16145     { &hf_pu_acknack_gprs_common_uplink_ack_nack_data_exist_packet_timing_advance_exist,
16146       { "Common_Uplink_Ack_Nack_Data.Exist_Packet_Timing_Advance", "gsm_rlcmac.pu_acknack_gprs.common_uplink_ack_nack_data.exist_packet_timing_advance_exist",
16147         FT_UINT8, BASE_DEC, NULL, 0x0,
16148         NULL, HFILL
16149       }
16150     },
16151     { &hf_pu_acknack_gprs_common_uplink_ack_nack_data_exist_power_control_parameters_exist,
16152       { "Common_Uplink_Ack_Nack_Data.Exist_Power_Control_Parameters", "gsm_rlcmac.pu_acknack_gprs.common_uplink_ack_nack_data.exist_power_control_parameters_exist",
16153         FT_UINT8, BASE_DEC, NULL, 0x0,
16154         NULL, HFILL
16155       }
16156     },
16157     { &hf_pu_acknack_gprs_common_uplink_ack_nack_data_exist_extension_bits_exist,
16158       { "Common_Uplink_Ack_Nack_Data.Exist_Extension_Bits", "gsm_rlcmac.pu_acknack_gprs.common_uplink_ack_nack_data.exist_extension_bits_exist",
16159         FT_UINT8, BASE_DEC, NULL, 0x0,
16160         NULL, HFILL
16161       }
16162     },
16163     { &hf_pu_acknack_egprs_00_common_uplink_ack_nack_data_exist_contention_resolution_tlli_exist,
16164       { "Common_Uplink_Ack_Nack_Data.Exist_CONTENTION_RESOLUTION_TLLI", "gsm_rlcmac.pu_acknack_egprs_00.common_uplink_ack_nack_data.exist_contention_resolution_tlli_exist",
16165         FT_UINT8, BASE_DEC, NULL, 0x0,
16166         NULL, HFILL
16167       }
16168     },
16169     { &hf_pu_acknack_egprs_00_common_uplink_ack_nack_data_exist_packet_timing_advance_exist,
16170       { "Common_Uplink_Ack_Nack_Data.Exist_Packet_Timing_Advance", "gsm_rlcmac.pu_acknack_egprs_00.common_uplink_ack_nack_data.exist_packet_timing_advance_exist",
16171         FT_UINT8, BASE_DEC, NULL, 0x0,
16172         NULL, HFILL
16173       }
16174     },
16175     { &hf_pu_acknack_egprs_00_packet_extended_timing_advance_exist,
16176       { "Exist_Packet_Extended_Timing_Advance", "gsm_rlcmac.pu_acknack_egprs_00.packet_extended_timing_advance_exist",
16177         FT_UINT8, BASE_DEC, NULL, 0x0,
16178         NULL, HFILL
16179       }
16180     },
16181     { &hf_pu_acknack_egprs_00_common_uplink_ack_nack_data_exist_power_control_parameters_exist,
16182       { "Common_Uplink_Ack_Nack_Data.Exist_Power_Control_Parameters", "gsm_rlcmac.pu_acknack_egprs_00.common_uplink_ack_nack_data.exist_power_control_parameters_exist",
16183         FT_UINT8, BASE_DEC, NULL, 0x0,
16184         NULL, HFILL
16185       }
16186     },
16187     { &hf_pu_acknack_egprs_00_common_uplink_ack_nack_data_exist_extension_bits_exist,
16188       { "Common_Uplink_Ack_Nack_Data.Exist_Extension_Bits", "gsm_rlcmac.pu_acknack_egprs_00.common_uplink_ack_nack_data.exist_extension_bits_exist",
16189         FT_UINT8, BASE_DEC, NULL, 0x0,
16190         NULL, HFILL
16191       }
16192     },
16193     { &hf_change_mark_change_mark_2_exist,
16194       { "Exist_CHANGE_MARK_2", "gsm_rlcmac.change_mark.change_mark_2_exist",
16195         FT_UINT8, BASE_DEC, NULL, 0x0,
16196         NULL, HFILL
16197       }
16198     },
16199     { &hf_indirect_encoding_change_mark_exist,
16200       { "Exist_CHANGE_MARK", "gsm_rlcmac.indirect_encoding.change_mark_exist",
16201         FT_UINT8, BASE_DEC, NULL, 0x0,
16202         NULL, HFILL
16203       }
16204     },
16205     { &hf_timeslot_allocation_exist_exist,
16206       { "Exist", "gsm_rlcmac.timeslot_allocation.exist",
16207         FT_UINT8, BASE_DEC, NULL, 0x0,
16208         NULL, HFILL
16209       }
16210     },
16211     { &hf_timeslot_allocation_power_ctrl_param_slot0_exist,
16212       { "USF_TN0.Exist", "gsm_rlcmac.timeslot_allocation_power_ctrl_param.slot0_exist",
16213         FT_UINT8, BASE_DEC, NULL, 0x0,
16214         NULL, HFILL
16215       }
16216     },
16217     { &hf_timeslot_allocation_power_ctrl_param_slot1_exist,
16218       { "USF_TN1.Exist", "gsm_rlcmac.timeslot_allocation_power_ctrl_param.slot1_exist",
16219         FT_UINT8, BASE_DEC, NULL, 0x0,
16220         NULL, HFILL
16221       }
16222     },
16223     { &hf_timeslot_allocation_power_ctrl_param_slot2_exist,
16224       { "USF_TN2.Exist", "gsm_rlcmac.timeslot_allocation_power_ctrl_param.slot2_exist",
16225         FT_UINT8, BASE_DEC, NULL, 0x0,
16226         NULL, HFILL
16227       }
16228     },
16229     { &hf_timeslot_allocation_power_ctrl_param_slot3_exist,
16230       { "USF_TN3.Exist", "gsm_rlcmac.timeslot_allocation_power_ctrl_param.slot3_exist",
16231         FT_UINT8, BASE_DEC, NULL, 0x0,
16232         NULL, HFILL
16233       }
16234     },
16235     { &hf_timeslot_allocation_power_ctrl_param_slot4_exist,
16236       { "USF_TN4.Exist", "gsm_rlcmac.timeslot_allocation_power_ctrl_param.slot4_exist",
16237         FT_UINT8, BASE_DEC, NULL, 0x0,
16238         NULL, HFILL
16239       }
16240     },
16241     { &hf_timeslot_allocation_power_ctrl_param_slot5_exist,
16242       { "USF_TN5.Exist", "gsm_rlcmac.timeslot_allocation_power_ctrl_param.slot5_exist",
16243         FT_UINT8, BASE_DEC, NULL, 0x0,
16244         NULL, HFILL
16245       }
16246     },
16247     { &hf_timeslot_allocation_power_ctrl_param_slot6_exist,
16248       { "USF_TN6.Exist", "gsm_rlcmac.timeslot_allocation_power_ctrl_param.slot6_exist",
16249         FT_UINT8, BASE_DEC, NULL, 0x0,
16250         NULL, HFILL
16251       }
16252     },
16253     { &hf_timeslot_allocation_power_ctrl_param_slot7_exist,
16254       { "USF_TN7.Exist", "gsm_rlcmac.timeslot_allocation_power_ctrl_param.slot7_exist",
16255         FT_UINT8, BASE_DEC, NULL, 0x0,
16256         NULL, HFILL
16257       }
16258     },
16259     { &hf_dynamic_allocation_p0_exist,
16260       { "Exist_P0", "gsm_rlcmac.dynamic_allocation.p0_exist",
16261         FT_UINT8, BASE_DEC, NULL, 0x0,
16262         NULL, HFILL
16263       }
16264     },
16265     { &hf_dynamic_allocation_uplink_tfi_assignment_exist,
16266       { "Exist_UPLINK_TFI_ASSIGNMENT", "gsm_rlcmac.dynamic_allocation.uplink_tfi_assignment_exist",
16267         FT_UINT8, BASE_DEC, NULL, 0x0,
16268         NULL, HFILL
16269       }
16270     },
16271     { &hf_dynamic_allocation_rlc_data_blocks_granted_exist,
16272       { "Exist_RLC_DATA_BLOCKS_GRANTED", "gsm_rlcmac.dynamic_allocation.rlc_data_blocks_granted_exist",
16273         FT_UINT8, BASE_DEC, NULL, 0x0,
16274         NULL, HFILL
16275       }
16276     },
16277     { &hf_dynamic_allocation_tbf_starting_time_exist,
16278       { "Exist_TBF_Starting_Time", "gsm_rlcmac.dynamic_allocation.tbf_starting_time_exist",
16279         FT_UINT8, BASE_DEC, NULL, 0x0,
16280         NULL, HFILL
16281       }
16282     },
16283     { &hf_single_block_allocation_alpha_and_gamma_tn_exist,
16284       { "Exist_ALPHA_and_GAMMA_TN", "gsm_rlcmac.single_block_allocation.alpha_and_gamma_tn_exist",
16285         FT_UINT8, BASE_DEC, NULL, 0x0,
16286         NULL, HFILL
16287       }
16288     },
16289     { &hf_single_block_allocation_p0_exist,
16290       { "Exist_P0", "gsm_rlcmac.single_block_allocation.p0_exist",
16291         FT_UINT8, BASE_DEC, NULL, 0x0,
16292         NULL, HFILL
16293       }
16294     },
16295     { &hf_pua_gprs_additionsr99_packet_extended_timing_advance_exist,
16296       { "Exist_Packet_Extended_Timing_Advance", "gsm_rlcmac.pua_gprs_additionsr99.packet_extended_timing_advance_exist",
16297         FT_UINT8, BASE_DEC, NULL, 0x0,
16298         NULL, HFILL
16299       }
16300     },
16301     { &hf_pua_gprs_frequency_parameters_exist,
16302       { "Exist_Frequency_Parameters", "gsm_rlcmac.pua_gprs.frequency_parameters_exist",
16303         FT_UINT8, BASE_DEC, NULL, 0x0,
16304         NULL, HFILL
16305       }
16306     },
16307     { &hf_compact_reducedma_maio_2_exist,
16308       { "Exist_MAIO_2", "gsm_rlcmac.compact_reducedma.maio_2_exist",
16309         FT_UINT8, BASE_DEC, NULL, 0x0,
16310         NULL, HFILL
16311       }
16312     },
16313     { &hf_multiblock_allocation_alpha_gamma_tn_exist,
16314       { "Exist_ALPHA_GAMMA_TN", "gsm_rlcmac.multiblock_allocation.alpha_gamma_tn_exist",
16315         FT_UINT8, BASE_DEC, NULL, 0x0,
16316         NULL, HFILL
16317       }
16318     },
16319     { &hf_multiblock_allocation_p0_bts_pwr_ctrl_pr_mode_exist,
16320       { "Exist_P0_BTS_PWR_CTRL_PR_MODE", "gsm_rlcmac.multiblock_allocation.p0_bts_pwr_ctrl_pr_mode_exist",
16321         FT_UINT8, BASE_DEC, NULL, 0x0,
16322         NULL, HFILL
16323       }
16324     },
16325     { &hf_pua_egprs_00_contention_resolution_tlli_exist,
16326       { "Exist_CONTENTION_RESOLUTION_TLLI", "gsm_rlcmac.pua_egprs_00.contention_resolution_tlli_exist",
16327         FT_UINT8, BASE_DEC, NULL, 0x0,
16328         NULL, HFILL
16329       }
16330     },
16331     { &hf_pua_egprs_00_compact_reducedma_exist,
16332       { "Exist_COMPACT_ReducedMA", "gsm_rlcmac.pua_egprs_00.compact_reducedma_exist",
16333         FT_UINT8, BASE_DEC, NULL, 0x0,
16334         NULL, HFILL
16335       }
16336     },
16337     { &hf_pua_egprs_00_bep_period2_exist,
16338       { "Exist_BEP_PERIOD2", "gsm_rlcmac.pua_egprs_00.bep_period2_exist",
16339         FT_UINT8, BASE_DEC, NULL, 0x0,
16340         NULL, HFILL
16341       }
16342     },
16343     { &hf_pua_egprs_00_packet_extended_timing_advance_exist,
16344       { "Exist_Packet_Extended_Timing_Advance", "gsm_rlcmac.pua_egprs_00.packet_extended_timing_advance_exist",
16345         FT_UINT8, BASE_DEC, NULL, 0x0,
16346         NULL, HFILL
16347       }
16348     },
16349     { &hf_pua_egprs_00_frequency_parameters_exist,
16350       { "Exist_Frequency_Parameters", "gsm_rlcmac.pua_egprs_00.frequency_parameters_exist",
16351         FT_UINT8, BASE_DEC, NULL, 0x0,
16352         NULL, HFILL
16353       }
16354     },
16355     { &hf_pda_additionsr99_egprs_params_exist,
16356       { "Exist_EGPRS_Params", "gsm_rlcmac.pda_additionsr99.egprs_params_exist",
16357         FT_UINT8, BASE_DEC, NULL, 0x0,
16358         NULL, HFILL
16359       }
16360     },
16361     { &hf_pda_additionsr99_bep_period2_exist,
16362       { "Exist_BEP_PERIOD2", "gsm_rlcmac.pda_additionsr99.bep_period2_exist",
16363         FT_UINT8, BASE_DEC, NULL, 0x0,
16364         NULL, HFILL
16365       }
16366     },
16367     { &hf_pda_additionsr99_packet_extended_timing_advance_exist,
16368       { "Exist_Packet_Extended_Timing_Advance", "gsm_rlcmac.pda_additionsr99.packet_extended_timing_advance_exist",
16369         FT_UINT8, BASE_DEC, NULL, 0x0,
16370         NULL, HFILL
16371       }
16372     },
16373     { &hf_pda_additionsr99_compact_reducedma_exist,
16374       { "Exist_COMPACT_ReducedMA", "gsm_rlcmac.pda_additionsr99.compact_reducedma_exist",
16375         FT_UINT8, BASE_DEC, NULL, 0x0,
16376         NULL, HFILL
16377       }
16378     },
16379     { &hf_packet_downlink_assignment_p0_and_bts_pwr_ctrl_mode_exist,
16380       { "Exist_P0_and_BTS_PWR_CTRL_MODE", "gsm_rlcmac.packet_downlink_assignment.p0_and_bts_pwr_ctrl_mode_exist",
16381         FT_UINT8, BASE_DEC, NULL, 0x0,
16382         NULL, HFILL
16383       }
16384     },
16385     { &hf_packet_downlink_assignment_frequency_parameters_exist,
16386       { "Exist_Frequency_Parameters", "gsm_rlcmac.packet_downlink_assignment.frequency_parameters_exist",
16387         FT_UINT8, BASE_DEC, NULL, 0x0,
16388         NULL, HFILL
16389       }
16390     },
16391     { &hf_packet_downlink_assignment_downlink_tfi_assignment_exist,
16392       { "Exist_DOWNLINK_TFI_ASSIGNMENT", "gsm_rlcmac.packet_downlink_assignment.downlink_tfi_assignment_exist",
16393         FT_UINT8, BASE_DEC, NULL, 0x0,
16394         NULL, HFILL
16395       }
16396     },
16397     { &hf_packet_downlink_assignment_power_control_parameters_exist,
16398       { "Exist_Power_Control_Parameters", "gsm_rlcmac.packet_downlink_assignment.power_control_parameters_exist",
16399         FT_UINT8, BASE_DEC, NULL, 0x0,
16400         NULL, HFILL
16401       }
16402     },
16403     { &hf_packet_downlink_assignment_tbf_starting_time_exist,
16404       { "Exist_TBF_Starting_Time", "gsm_rlcmac.packet_downlink_assignment.tbf_starting_time_exist",
16405         FT_UINT8, BASE_DEC, NULL, 0x0,
16406         NULL, HFILL
16407       }
16408     },
16409     { &hf_packet_downlink_assignment_measurement_mapping_exist,
16410       { "Exist_Measurement_Mapping", "gsm_rlcmac.packet_downlink_assignment.measurement_mapping_exist",
16411         FT_UINT8, BASE_DEC, NULL, 0x0,
16412         NULL, HFILL
16413       }
16414     },
16415     { &hf_page_request_for_rr_conn_emlpp_priority_exist,
16416       { "Exist_eMLPP_PRIORITY", "gsm_rlcmac.page_request_for_rr_conn.emlpp_priority_exist",
16417         FT_UINT8, BASE_DEC, NULL, 0x0,
16418         NULL, HFILL
16419       }
16420     },
16421     { &hf_packet_paging_request_nln_exist,
16422       { "Exist_NLN", "gsm_rlcmac.packet_paging_request.nln_exist",
16423         FT_UINT8, BASE_DEC, NULL, 0x0,
16424         NULL, HFILL
16425       }
16426     },
16427     { &hf_packet_power_control_timing_advance_global_power_control_parameters_exist,
16428       { "Exist_Global_Power_Control_Parameters", "gsm_rlcmac.packet_power_control_timing_advance.global_power_control_parameters_exist",
16429         FT_UINT8, BASE_DEC, NULL, 0x0,
16430         NULL, HFILL
16431       }
16432     },
16433     { &hf_trdynamic_allocation_p0_exist,
16434       { "Exist_P0", "gsm_rlcmac.trdynamic_allocation.p0_exist",
16435         FT_UINT8, BASE_DEC, NULL, 0x0,
16436         NULL, HFILL
16437       }
16438     },
16439     { &hf_trdynamic_allocation_rlc_data_blocks_granted_exist,
16440       { "Exist_RLC_DATA_BLOCKS_GRANTED", "gsm_rlcmac.trdynamic_allocation.rlc_data_blocks_granted_exist",
16441         FT_UINT8, BASE_DEC, NULL, 0x0,
16442         NULL, HFILL
16443       }
16444     },
16445     { &hf_trdynamic_allocation_tbf_starting_time_exist,
16446       { "Exist_TBF_Starting_Time", "gsm_rlcmac.trdynamic_allocation.tbf_starting_time_exist",
16447         FT_UINT8, BASE_DEC, NULL, 0x0,
16448         NULL, HFILL
16449       }
16450     },
16451     { &hf_ptr_gprs_additionsr99_packet_extended_timing_advance_exist,
16452       { "Exist_Packet_Extended_Timing_Advance", "gsm_rlcmac.ptr_gprs_additionsr99.packet_extended_timing_advance_exist",
16453         FT_UINT8, BASE_DEC, NULL, 0x0,
16454         NULL, HFILL
16455       }
16456     },
16457     { &hf_ptr_gprs_common_timeslot_reconfigure_data_exist_downlink_tfi_assignment_exist,
16458       { "Common_Timeslot_Reconfigure_Data.Exist_DOWNLINK_TFI_ASSIGNMENT", "gsm_rlcmac.ptr_gprs.common_timeslot_reconfigure_data.exist_downlink_tfi_assignment_exist",
16459         FT_UINT8, BASE_DEC, NULL, 0x0,
16460         NULL, HFILL
16461       }
16462     },
16463     { &hf_ptr_gprs_common_timeslot_reconfigure_data_exist_uplink_tfi_assignment_exist,
16464       { "Common_Timeslot_Reconfigure_Data.Exist_UPLINK_TFI_ASSIGNMENT", "gsm_rlcmac.ptr_gprs.common_timeslot_reconfigure_data.exist_uplink_tfi_assignment_exist",
16465         FT_UINT8, BASE_DEC, NULL, 0x0,
16466         NULL, HFILL
16467       }
16468     },
16469     { &hf_ptr_gprs_common_timeslot_reconfigure_data_exist_frequency_parameters_exist,
16470       { "Common_Timeslot_Reconfigure_Data.Exist_Frequency_Parameters", "gsm_rlcmac.ptr_gprs.common_timeslot_reconfigure_data.exist_frequency_parameters_exist",
16471         FT_UINT8, BASE_DEC, NULL, 0x0,
16472         NULL, HFILL
16473       }
16474     },
16475     { &hf_ptr_egprs_00_compact_reducedma_exist,
16476       { "Exist_COMPACT_ReducedMA", "gsm_rlcmac.ptr_egprs_00.compact_reducedma_exist",
16477         FT_UINT8, BASE_DEC, NULL, 0x0,
16478         NULL, HFILL
16479       }
16480     },
16481     { &hf_ptr_egprs_00_downlink_egprs_windowsize_exist,
16482       { "Exist_DOWNLINK_EGPRS_WindowSize", "gsm_rlcmac.ptr_egprs_00.downlink_egprs_windowsize_exist",
16483         FT_UINT8, BASE_DEC, NULL, 0x0,
16484         NULL, HFILL
16485       }
16486     },
16487     { &hf_ptr_egprs_00_uplink_egprs_windowsize_exist,
16488       { "Exist_UPLINK_EGPRS_WindowSize", "gsm_rlcmac.ptr_egprs_00.uplink_egprs_windowsize_exist",
16489         FT_UINT8, BASE_DEC, NULL, 0x0,
16490         NULL, HFILL
16491       }
16492     },
16493     { &hf_ptr_egprs_00_packet_extended_timing_advance_exist,
16494       { "Exist_Packet_Extended_Timing_Advance", "gsm_rlcmac.ptr_egprs_00.packet_extended_timing_advance_exist",
16495         FT_UINT8, BASE_DEC, NULL, 0x0,
16496         NULL, HFILL
16497       }
16498     },
16499     { &hf_ptr_egprs_00_common_timeslot_reconfigure_data_exist_downlink_tfi_assignment_exist,
16500       { "Common_Timeslot_Reconfigure_Data.Exist_DOWNLINK_TFI_ASSIGNMENT", "gsm_rlcmac.ptr_egprs_00.common_timeslot_reconfigure_data.exist_downlink_tfi_assignment_exist",
16501         FT_UINT8, BASE_DEC, NULL, 0x0,
16502         NULL, HFILL
16503       }
16504     },
16505     { &hf_ptr_egprs_00_common_timeslot_reconfigure_data_exist_uplink_tfi_assignment_exist,
16506       { "Common_Timeslot_Reconfigure_Data.Exist_UPLINK_TFI_ASSIGNMENT", "gsm_rlcmac.ptr_egprs_00.common_timeslot_reconfigure_data.exist_uplink_tfi_assignment_exist",
16507         FT_UINT8, BASE_DEC, NULL, 0x0,
16508         NULL, HFILL
16509       }
16510     },
16511     { &hf_ptr_egprs_00_common_timeslot_reconfigure_data_exist_frequency_parameters_exist,
16512       { "Common_Timeslot_Reconfigure_Data.Exist_Frequency_Parameters", "gsm_rlcmac.ptr_egprs_00.common_timeslot_reconfigure_data.exist_frequency_parameters_exist",
16513         FT_UINT8, BASE_DEC, NULL, 0x0,
16514         NULL, HFILL
16515       }
16516     },
16517     { &hf_cell_selection_rxlev_and_txpwr_exist,
16518       { "Exist_RXLEV_and_TXPWR", "gsm_rlcmac.cell_selection.rxlev_and_txpwr_exist",
16519         FT_UINT8, BASE_DEC, NULL, 0x0,
16520         NULL, HFILL
16521       }
16522     },
16523     { &hf_cell_selection_offset_and_time_exist,
16524       { "Exist_OFFSET_and_TIME", "gsm_rlcmac.cell_selection.offset_and_time_exist",
16525         FT_UINT8, BASE_DEC, NULL, 0x0,
16526         NULL, HFILL
16527       }
16528     },
16529     { &hf_cell_selection_gprs_reselect_offset_exist,
16530       { "Exist_GPRS_RESELECT_OFFSET", "gsm_rlcmac.cell_selection.gprs_reselect_offset_exist",
16531         FT_UINT8, BASE_DEC, NULL, 0x0,
16532         NULL, HFILL
16533       }
16534     },
16535     { &hf_cell_selection_hcs_exist,
16536       { "Exist_HCS", "gsm_rlcmac.cell_selection.hcs_exist",
16537         FT_UINT8, BASE_DEC, NULL, 0x0,
16538         NULL, HFILL
16539       }
16540     },
16541     { &hf_cell_selection_si13_pbcch_location_exist,
16542       { "Exist_SI13_PBCCH_Location", "gsm_rlcmac.cell_selection.si13_pbcch_location_exist",
16543         FT_UINT8, BASE_DEC, NULL, 0x0,
16544         NULL, HFILL
16545       }
16546     },
16547     { &hf_cell_selection_2_rxlev_and_txpwr_exist,
16548       { "Exist_RXLEV_and_TXPWR", "gsm_rlcmac.cell_selection_2.rxlev_and_txpwr_exist",
16549         FT_UINT8, BASE_DEC, NULL, 0x0,
16550         NULL, HFILL
16551       }
16552     },
16553     { &hf_cell_selection_2_offset_and_time_exist,
16554       { "Exist_OFFSET_and_TIME", "gsm_rlcmac.cell_selection_2.offset_and_time_exist",
16555         FT_UINT8, BASE_DEC, NULL, 0x0,
16556         NULL, HFILL
16557       }
16558     },
16559     { &hf_cell_selection_2_gprs_reselect_offset_exist,
16560       { "Exist_GPRS_RESELECT_OFFSET", "gsm_rlcmac.cell_selection_2.gprs_reselect_offset_exist",
16561         FT_UINT8, BASE_DEC, NULL, 0x0,
16562         NULL, HFILL
16563       }
16564     },
16565     { &hf_cell_selection_2_hcs_exist,
16566       { "Exist_HCS", "gsm_rlcmac.cell_selection_2.hcs_exist",
16567         FT_UINT8, BASE_DEC, NULL, 0x0,
16568         NULL, HFILL
16569       }
16570     },
16571     { &hf_cell_selection_2_si13_pbcch_location_exist,
16572       { "Exist_SI13_PBCCH_Location", "gsm_rlcmac.cell_selection_2.si13_pbcch_location_exist",
16573         FT_UINT8, BASE_DEC, NULL, 0x0,
16574         NULL, HFILL
16575       }
16576     },
16577     { &hf_reject_wait_exist,
16578       { "Exist_Wait", "gsm_rlcmac.reject.wait_exist",
16579         FT_UINT8, BASE_DEC, NULL, 0x0,
16580         NULL, HFILL
16581       }
16582     },
16583     { &hf_cellselectionparamswithfreqdiff_cellselectionparams_exist,
16584       { "Exist_CellSelectionParams", "gsm_rlcmac.cellselectionparamswithfreqdiff.cellselectionparams_exist",
16585         FT_UINT8, BASE_DEC, NULL, 0x0,
16586         NULL, HFILL
16587       }
16588     },
16589     { &hf_add_frequency_list_cell_selection_exist,
16590       { "Exist_Cell_Selection", "gsm_rlcmac.add_frequency_list.cell_selection_exist",
16591         FT_UINT8, BASE_DEC, NULL, 0x0,
16592         NULL, HFILL
16593       }
16594     },
16595     { &hf_nc_frequency_list_removed_freq_exist,
16596       { "Exist_REMOVED_FREQ", "gsm_rlcmac.nc_frequency_list.removed_freq_exist",
16597         FT_UINT8, BASE_DEC, NULL, 0x0,
16598         NULL, HFILL
16599       }
16600     },
16601     { &hf_nc_measurement_parameters_nc_exist,
16602       { "Exist_NC", "gsm_rlcmac.nc_measurement_parameters.nc_exist",
16603         FT_UINT8, BASE_DEC, NULL, 0x0,
16604         NULL, HFILL
16605       }
16606     },
16607     { &hf_nc_measurement_parameters_with_frequency_list_nc_exist,
16608       { "Exist_NC", "gsm_rlcmac.nc_measurement_parameters_with_frequency_list.nc_exist",
16609         FT_UINT8, BASE_DEC, NULL, 0x0,
16610         NULL, HFILL
16611       }
16612     },
16613     { &hf_nc_measurement_parameters_with_frequency_list_nc_frequency_list_exist,
16614       { "Exist_NC_FREQUENCY_LIST", "gsm_rlcmac.nc_measurement_parameters_with_frequency_list.nc_frequency_list_exist",
16615         FT_UINT8, BASE_DEC, NULL, 0x0,
16616         NULL, HFILL
16617       }
16618     },
16619     { &hf_gprsmeasurementparams_pmo_pcco_multi_band_reporting_exist,
16620       { "Exist_MULTI_BAND_REPORTING", "gsm_rlcmac.gprsmeasurementparams_pmo_pcco.multi_band_reporting_exist",
16621         FT_UINT8, BASE_DEC, NULL, 0x0,
16622         NULL, HFILL
16623       }
16624     },
16625     { &hf_gprsmeasurementparams_pmo_pcco_serving_band_reporting_exist,
16626       { "Exist_SERVING_BAND_REPORTING", "gsm_rlcmac.gprsmeasurementparams_pmo_pcco.serving_band_reporting_exist",
16627         FT_UINT8, BASE_DEC, NULL, 0x0,
16628         NULL, HFILL
16629       }
16630     },
16631     { &hf_gprsmeasurementparams_pmo_pcco_offsetthreshold900_exist,
16632       { "Exist_OffsetThreshold900", "gsm_rlcmac.gprsmeasurementparams_pmo_pcco.offsetthreshold900_exist",
16633         FT_UINT8, BASE_DEC, NULL, 0x0,
16634         NULL, HFILL
16635       }
16636     },
16637     { &hf_gprsmeasurementparams_pmo_pcco_offsetthreshold1800_exist,
16638       { "Exist_OffsetThreshold1800", "gsm_rlcmac.gprsmeasurementparams_pmo_pcco.offsetthreshold1800_exist",
16639         FT_UINT8, BASE_DEC, NULL, 0x0,
16640         NULL, HFILL
16641       }
16642     },
16643     { &hf_gprsmeasurementparams_pmo_pcco_offsetthreshold400_exist,
16644       { "Exist_OffsetThreshold400", "gsm_rlcmac.gprsmeasurementparams_pmo_pcco.offsetthreshold400_exist",
16645         FT_UINT8, BASE_DEC, NULL, 0x0,
16646         NULL, HFILL
16647       }
16648     },
16649     { &hf_gprsmeasurementparams_pmo_pcco_offsetthreshold1900_exist,
16650       { "Exist_OffsetThreshold1900", "gsm_rlcmac.gprsmeasurementparams_pmo_pcco.offsetthreshold1900_exist",
16651         FT_UINT8, BASE_DEC, NULL, 0x0,
16652         NULL, HFILL
16653       }
16654     },
16655     { &hf_gprsmeasurementparams_pmo_pcco_offsetthreshold850_exist,
16656       { "Exist_OffsetThreshold850", "gsm_rlcmac.gprsmeasurementparams_pmo_pcco.offsetthreshold850_exist",
16657         FT_UINT8, BASE_DEC, NULL, 0x0,
16658         NULL, HFILL
16659       }
16660     },
16661     { &hf_multiratparams3g_existmultiratreporting_exist,
16662       { "existMultiratReporting", "gsm_rlcmac.multiratparams3g.existmultiratreporting_exist",
16663         FT_UINT8, BASE_DEC, NULL, 0x0,
16664         NULL, HFILL
16665       }
16666     },
16667     { &hf_multiratparams3g_existoffsetthreshold_exist,
16668       { "existOffsetThreshold", "gsm_rlcmac.multiratparams3g.existoffsetthreshold_exist",
16669         FT_UINT8, BASE_DEC, NULL, 0x0,
16670         NULL, HFILL
16671       }
16672     },
16673     { &hf_enh_gprsmeasurementparams3g_pmo_existrepparamsfdd_exist,
16674       { "existRepParamsFDD", "gsm_rlcmac.enh_gprsmeasurementparams3g_pmo.existrepparamsfdd_exist",
16675         FT_UINT8, BASE_DEC, NULL, 0x0,
16676         NULL, HFILL
16677       }
16678     },
16679     { &hf_enh_gprsmeasurementparams3g_pmo_existoffsetthreshold_exist,
16680       { "existOffsetThreshold", "gsm_rlcmac.enh_gprsmeasurementparams3g_pmo.existoffsetthreshold_exist",
16681         FT_UINT8, BASE_DEC, NULL, 0x0,
16682         NULL, HFILL
16683       }
16684     },
16685     { &hf_enh_gprsmeasurementparams3g_pcco_existrepparamsfdd_exist,
16686       { "existRepParamsFDD", "gsm_rlcmac.enh_gprsmeasurementparams3g_pcco.existrepparamsfdd_exist",
16687         FT_UINT8, BASE_DEC, NULL, 0x0,
16688         NULL, HFILL
16689       }
16690     },
16691     { &hf_enh_gprsmeasurementparams3g_pcco_existoffsetthreshold_exist,
16692       { "existOffsetThreshold", "gsm_rlcmac.enh_gprsmeasurementparams3g_pcco.existoffsetthreshold_exist",
16693         FT_UINT8, BASE_DEC, NULL, 0x0,
16694         NULL, HFILL
16695       }
16696     },
16697     { &hf_utran_fdd_description_existbandwidth_exist,
16698       { "existBandwidth", "gsm_rlcmac.utran_fdd_description.existbandwidth_exist",
16699         FT_UINT8, BASE_DEC, NULL, 0x0,
16700         NULL, HFILL
16701       }
16702     },
16703     { &hf_utran_tdd_description_existbandwidth_exist,
16704       { "existBandwidth", "gsm_rlcmac.utran_tdd_description.existbandwidth_exist",
16705         FT_UINT8, BASE_DEC, NULL, 0x0,
16706         NULL, HFILL
16707       }
16708     },
16709     { &hf_neighbourcelldescription3g_pmo_index_start_3g_exist,
16710       { "Exist_Index_Start_3G", "gsm_rlcmac.neighbourcelldescription3g_pmo.index_start_3g_exist",
16711         FT_UINT8, BASE_DEC, NULL, 0x0,
16712         NULL, HFILL
16713       }
16714     },
16715     { &hf_neighbourcelldescription3g_pmo_absolute_index_start_emr_exist,
16716       { "Exist_Absolute_Index_Start_EMR", "gsm_rlcmac.neighbourcelldescription3g_pmo.absolute_index_start_emr_exist",
16717         FT_UINT8, BASE_DEC, NULL, 0x0,
16718         NULL, HFILL
16719       }
16720     },
16721     { &hf_neighbourcelldescription3g_pmo_utran_fdd_description_exist,
16722       { "Exist_UTRAN_FDD_Description", "gsm_rlcmac.neighbourcelldescription3g_pmo.utran_fdd_description_exist",
16723         FT_UINT8, BASE_DEC, NULL, 0x0,
16724         NULL, HFILL
16725       }
16726     },
16727     { &hf_neighbourcelldescription3g_pmo_utran_tdd_description_exist,
16728       { "Exist_UTRAN_TDD_Description", "gsm_rlcmac.neighbourcelldescription3g_pmo.utran_tdd_description_exist",
16729         FT_UINT8, BASE_DEC, NULL, 0x0,
16730         NULL, HFILL
16731       }
16732     },
16733     { &hf_neighbourcelldescription3g_pmo_cdma2000_description_exist,
16734       { "Exist_CDMA2000_Description", "gsm_rlcmac.neighbourcelldescription3g_pmo.cdma2000_description_exist",
16735         FT_UINT8, BASE_DEC, NULL, 0x0,
16736         NULL, HFILL
16737       }
16738     },
16739     { &hf_neighbourcelldescription3g_pmo_removed3gcelldescription_exist,
16740       { "Exist_Removed3GCellDescription", "gsm_rlcmac.neighbourcelldescription3g_pmo.removed3gcelldescription_exist",
16741         FT_UINT8, BASE_DEC, NULL, 0x0,
16742         NULL, HFILL
16743       }
16744     },
16745     { &hf_neighbourcelldescription3g_pcco_index_start_3g_exist,
16746       { "Exist_Index_Start_3G", "gsm_rlcmac.neighbourcelldescription3g_pcco.index_start_3g_exist",
16747         FT_UINT8, BASE_DEC, NULL, 0x0,
16748         NULL, HFILL
16749       }
16750     },
16751     { &hf_neighbourcelldescription3g_pcco_absolute_index_start_emr_exist,
16752       { "Exist_Absolute_Index_Start_EMR", "gsm_rlcmac.neighbourcelldescription3g_pcco.absolute_index_start_emr_exist",
16753         FT_UINT8, BASE_DEC, NULL, 0x0,
16754         NULL, HFILL
16755       }
16756     },
16757     { &hf_neighbourcelldescription3g_pcco_utran_fdd_description_exist,
16758       { "Exist_UTRAN_FDD_Description", "gsm_rlcmac.neighbourcelldescription3g_pcco.utran_fdd_description_exist",
16759         FT_UINT8, BASE_DEC, NULL, 0x0,
16760         NULL, HFILL
16761       }
16762     },
16763     { &hf_neighbourcelldescription3g_pcco_utran_tdd_description_exist,
16764       { "Exist_UTRAN_TDD_Description", "gsm_rlcmac.neighbourcelldescription3g_pcco.utran_tdd_description_exist",
16765         FT_UINT8, BASE_DEC, NULL, 0x0,
16766         NULL, HFILL
16767       }
16768     },
16769     { &hf_neighbourcelldescription3g_pcco_removed3gcelldescription_exist,
16770       { "Exist_Removed3GCellDescription", "gsm_rlcmac.neighbourcelldescription3g_pcco.removed3gcelldescription_exist",
16771         FT_UINT8, BASE_DEC, NULL, 0x0,
16772         NULL, HFILL
16773       }
16774     },
16775     { &hf_enh_measurement_parameters_pmo_neighbourcelldescription3g_exist,
16776       { "Exist_NeighbourCellDescription3G", "gsm_rlcmac.enh_measurement_parameters_pmo.neighbourcelldescription3g_exist",
16777         FT_UINT8, BASE_DEC, NULL, 0x0,
16778         NULL, HFILL
16779       }
16780     },
16781     { &hf_enh_measurement_parameters_pmo_gprsreportpriority_exist,
16782       { "Exist_GPRSReportPriority", "gsm_rlcmac.enh_measurement_parameters_pmo.gprsreportpriority_exist",
16783         FT_UINT8, BASE_DEC, NULL, 0x0,
16784         NULL, HFILL
16785       }
16786     },
16787     { &hf_enh_measurement_parameters_pmo_gprsmeasurementparams_exist,
16788       { "Exist_GPRSMeasurementParams", "gsm_rlcmac.enh_measurement_parameters_pmo.gprsmeasurementparams_exist",
16789         FT_UINT8, BASE_DEC, NULL, 0x0,
16790         NULL, HFILL
16791       }
16792     },
16793     { &hf_enh_measurement_parameters_pmo_gprsmeasurementparams3g_exist,
16794       { "Exist_GPRSMeasurementParams3G", "gsm_rlcmac.enh_measurement_parameters_pmo.gprsmeasurementparams3g_exist",
16795         FT_UINT8, BASE_DEC, NULL, 0x0,
16796         NULL, HFILL
16797       }
16798     },
16799     { &hf_enh_measurement_parameters_pcco_neighbourcelldescription3g_exist,
16800       { "Exist_NeighbourCellDescription3G", "gsm_rlcmac.enh_measurement_parameters_pcco.neighbourcelldescription3g_exist",
16801         FT_UINT8, BASE_DEC, NULL, 0x0,
16802         NULL, HFILL
16803       }
16804     },
16805     { &hf_enh_measurement_parameters_pcco_gprsreportpriority_exist,
16806       { "Exist_GPRSReportPriority", "gsm_rlcmac.enh_measurement_parameters_pcco.gprsreportpriority_exist",
16807         FT_UINT8, BASE_DEC, NULL, 0x0,
16808         NULL, HFILL
16809       }
16810     },
16811     { &hf_enh_measurement_parameters_pcco_gprsmeasurementparams_exist,
16812       { "Exist_GPRSMeasurementParams", "gsm_rlcmac.enh_measurement_parameters_pcco.gprsmeasurementparams_exist",
16813         FT_UINT8, BASE_DEC, NULL, 0x0,
16814         NULL, HFILL
16815       }
16816     },
16817     { &hf_enh_measurement_parameters_pcco_gprsmeasurementparams3g_exist,
16818       { "Exist_GPRSMeasurementParams3G", "gsm_rlcmac.enh_measurement_parameters_pcco.gprsmeasurementparams3g_exist",
16819         FT_UINT8, BASE_DEC, NULL, 0x0,
16820         NULL, HFILL
16821       }
16822     },
16823     { &hf_lu_modecellselectionparameters_si13_alt_pbcch_location_exist,
16824       { "Exist_SI13_Alt_PBCCH_Location", "gsm_rlcmac.lu_modecellselectionparameters.si13_alt_pbcch_location_exist",
16825         FT_UINT8, BASE_DEC, NULL, 0x0,
16826         NULL, HFILL
16827       }
16828     },
16829     { &hf_lu_modecellselectionparams_lu_modecellselectionparams_exist,
16830       { "Exist_lu_ModeCellSelectionParams", "gsm_rlcmac.lu_modecellselectionparams.lu_modecellselectionparams_exist",
16831         FT_UINT8, BASE_DEC, NULL, 0x0,
16832         NULL, HFILL
16833       }
16834     },
16835     { &hf_lu_modeonlycellselection_rxlev_and_txpwr_exist,
16836       { "Exist_RXLEV_and_TXPWR", "gsm_rlcmac.lu_modeonlycellselection.rxlev_and_txpwr_exist",
16837         FT_UINT8, BASE_DEC, NULL, 0x0,
16838         NULL, HFILL
16839       }
16840     },
16841     { &hf_lu_modeonlycellselection_offset_and_time_exist,
16842       { "Exist_OFFSET_and_TIME", "gsm_rlcmac.lu_modeonlycellselection.offset_and_time_exist",
16843         FT_UINT8, BASE_DEC, NULL, 0x0,
16844         NULL, HFILL
16845       }
16846     },
16847     { &hf_lu_modeonlycellselection_gprs_reselect_offset_exist,
16848       { "Exist_GPRS_RESELECT_OFFSET", "gsm_rlcmac.lu_modeonlycellselection.gprs_reselect_offset_exist",
16849         FT_UINT8, BASE_DEC, NULL, 0x0,
16850         NULL, HFILL
16851       }
16852     },
16853     { &hf_lu_modeonlycellselection_hcs_exist,
16854       { "Exist_HCS", "gsm_rlcmac.lu_modeonlycellselection.hcs_exist",
16855         FT_UINT8, BASE_DEC, NULL, 0x0,
16856         NULL, HFILL
16857       }
16858     },
16859     { &hf_lu_modeonlycellselection_si13_alt_pbcch_location_exist,
16860       { "Exist_SI13_Alt_PBCCH_Location", "gsm_rlcmac.lu_modeonlycellselection.si13_alt_pbcch_location_exist",
16861         FT_UINT8, BASE_DEC, NULL, 0x0,
16862         NULL, HFILL
16863       }
16864     },
16865     { &hf_lu_modeonlycellselectionparamswithfreqdiff_lu_modeonlycellselectionparams_exist,
16866       { "Exist_lu_ModeOnlyCellSelectionParams", "gsm_rlcmac.lu_modeonlycellselectionparamswithfreqdiff.lu_modeonlycellselectionparams_exist",
16867         FT_UINT8, BASE_DEC, NULL, 0x0,
16868         NULL, HFILL
16869       }
16870     },
16871     { &hf_add_lu_modeonlyfrequencylist_lu_modecellselection_exist,
16872       { "Exist_lu_ModeCellSelection", "gsm_rlcmac.add_lu_modeonlyfrequencylist.lu_modecellselection_exist",
16873         FT_UINT8, BASE_DEC, NULL, 0x0,
16874         NULL, HFILL
16875       }
16876     },
16877     { &hf_gprs_additionalmeasurementparams3g_fdd_reporting_threshold_2_exist,
16878       { "Exist_FDD_REPORTING_THRESHOLD_2", "gsm_rlcmac.gprs_additionalmeasurementparams3g.fdd_reporting_threshold_2_exist",
16879         FT_UINT8, BASE_DEC, NULL, 0x0,
16880         NULL, HFILL
16881       }
16882     },
16883     { &hf_repeatedutran_priorityparameters_existutran_priority_exist,
16884       { "existUTRAN_PRIORITY", "gsm_rlcmac.repeatedutran_priorityparameters.existutran_priority_exist",
16885         FT_UINT8, BASE_DEC, NULL, 0x0,
16886         NULL, HFILL
16887       }
16888     },
16889     { &hf_repeatedutran_priorityparameters_existthresh_utran_low_exist,
16890       { "existTHRESH_UTRAN_low", "gsm_rlcmac.repeatedutran_priorityparameters.existthresh_utran_low_exist",
16891         FT_UINT8, BASE_DEC, NULL, 0x0,
16892         NULL, HFILL
16893       }
16894     },
16895     { &hf_repeatedutran_priorityparameters_existutran_qrxlevmin_exist,
16896       { "existUTRAN_QRXLEVMIN", "gsm_rlcmac.repeatedutran_priorityparameters.existutran_qrxlevmin_exist",
16897         FT_UINT8, BASE_DEC, NULL, 0x0,
16898         NULL, HFILL
16899       }
16900     },
16901     { &hf_priorityparametersdescription3g_pmo_existdefault_utran_parameters_exist,
16902       { "existDEFAULT_UTRAN_Parameters", "gsm_rlcmac.priorityparametersdescription3g_pmo.existdefault_utran_parameters_exist",
16903         FT_UINT8, BASE_DEC, NULL, 0x0,
16904         NULL, HFILL
16905       }
16906     },
16907     { &hf_eutran_reporting_threshold_offset_existeutran_fdd_reporting_threshold_offset_exist,
16908       { "existEUTRAN_FDD_REPORTING_THRESHOLD_OFFSET", "gsm_rlcmac.eutran_reporting_threshold_offset.existeutran_fdd_reporting_threshold_offset_exist",
16909         FT_UINT8, BASE_DEC, NULL, 0x0,
16910         NULL, HFILL
16911       }
16912     },
16913     { &hf_eutran_reporting_threshold_offset_existeutran_fdd_reporting_threshold_2_exist,
16914       { "existEUTRAN_FDD_REPORTING_THRESHOLD_2", "gsm_rlcmac.eutran_reporting_threshold_offset.existeutran_fdd_reporting_threshold_2_exist",
16915         FT_UINT8, BASE_DEC, NULL, 0x0,
16916         NULL, HFILL
16917       }
16918     },
16919     { &hf_eutran_reporting_threshold_offset_existeutran_fdd_reporting_offset_exist,
16920       { "existEUTRAN_FDD_REPORTING_OFFSET", "gsm_rlcmac.eutran_reporting_threshold_offset.existeutran_fdd_reporting_offset_exist",
16921         FT_UINT8, BASE_DEC, NULL, 0x0,
16922         NULL, HFILL
16923       }
16924     },
16925     { &hf_eutran_reporting_threshold_offset_existeutran_tdd_reporting_threshold_offset_exist,
16926       { "existEUTRAN_TDD_REPORTING_THRESHOLD_OFFSET", "gsm_rlcmac.eutran_reporting_threshold_offset.existeutran_tdd_reporting_threshold_offset_exist",
16927         FT_UINT8, BASE_DEC, NULL, 0x0,
16928         NULL, HFILL
16929       }
16930     },
16931     { &hf_eutran_reporting_threshold_offset_existeutran_tdd_reporting_threshold_2_exist,
16932       { "existEUTRAN_TDD_REPORTING_THRESHOLD_2", "gsm_rlcmac.eutran_reporting_threshold_offset.existeutran_tdd_reporting_threshold_2_exist",
16933         FT_UINT8, BASE_DEC, NULL, 0x0,
16934         NULL, HFILL
16935       }
16936     },
16937     { &hf_eutran_reporting_threshold_offset_existeutran_tdd_reporting_offset_exist,
16938       { "existEUTRAN_TDD_REPORTING_OFFSET", "gsm_rlcmac.eutran_reporting_threshold_offset.existeutran_tdd_reporting_offset_exist",
16939         FT_UINT8, BASE_DEC, NULL, 0x0,
16940         NULL, HFILL
16941       }
16942     },
16943     { &hf_repeatedeutran_cells_existmeasurementbandwidth_exist,
16944       { "existMeasurementBandwidth", "gsm_rlcmac.repeatedeutran_cells.existmeasurementbandwidth_exist",
16945         FT_UINT8, BASE_DEC, NULL, 0x0,
16946         NULL, HFILL
16947       }
16948     },
16949     { &hf_repeatedeutran_neighbourcells_existeutran_priority_exist,
16950       { "existEUTRAN_PRIORITY", "gsm_rlcmac.repeatedeutran_neighbourcells.existeutran_priority_exist",
16951         FT_UINT8, BASE_DEC, NULL, 0x0,
16952         NULL, HFILL
16953       }
16954     },
16955     { &hf_repeatedeutran_neighbourcells_existthresh_eutran_low_exist,
16956       { "existTHRESH_EUTRAN_low", "gsm_rlcmac.repeatedeutran_neighbourcells.existthresh_eutran_low_exist",
16957         FT_UINT8, BASE_DEC, NULL, 0x0,
16958         NULL, HFILL
16959       }
16960     },
16961     { &hf_repeatedeutran_neighbourcells_existeutran_qrxlevmin_exist,
16962       { "existEUTRAN_QRXLEVMIN", "gsm_rlcmac.repeatedeutran_neighbourcells.existeutran_qrxlevmin_exist",
16963         FT_UINT8, BASE_DEC, NULL, 0x0,
16964         NULL, HFILL
16965       }
16966     },
16967     { &hf_pcid_group_ie_existpcid_bitmap_group_exist,
16968       { "existPCID_BITMAP_GROUP", "gsm_rlcmac.pcid_group_ie.existpcid_bitmap_group_exist",
16969         FT_UINT8, BASE_DEC, NULL, 0x0,
16970         NULL, HFILL
16971       }
16972     },
16973     { &hf_eutran_parametersdescription_pmo_existgprs_eutran_measurementparametersdescription_exist,
16974       { "existGPRS_EUTRAN_MeasurementParametersDescription", "gsm_rlcmac.eutran_parametersdescription_pmo.existgprs_eutran_measurementparametersdescription_exist",
16975         FT_UINT8, BASE_DEC, NULL, 0x0,
16976         NULL, HFILL
16977       }
16978     },
16979     { &hf_meas_ctrl_param_desp_existmeasurement_control_eutran_exist,
16980       { "existMeasurement_Control_EUTRAN", "gsm_rlcmac.meas_ctrl_param_desp.existmeasurement_control_eutran_exist",
16981         FT_UINT8, BASE_DEC, NULL, 0x0,
16982         NULL, HFILL
16983       }
16984     },
16985     { &hf_meas_ctrl_param_desp_existmeasurement_control_utran_exist,
16986       { "existMeasurement_Control_UTRAN", "gsm_rlcmac.meas_ctrl_param_desp.existmeasurement_control_utran_exist",
16987         FT_UINT8, BASE_DEC, NULL, 0x0,
16988         NULL, HFILL
16989       }
16990     },
16991     { &hf_reselection_based_on_rsrq_existthresh_eutran_low_q_exist,
16992       { "existTHRESH_EUTRAN_low_Q", "gsm_rlcmac.reselection_based_on_rsrq.existthresh_eutran_low_q_exist",
16993         FT_UINT8, BASE_DEC, NULL, 0x0,
16994         NULL, HFILL
16995       }
16996     },
16997     { &hf_reselection_based_on_rsrq_existeutran_qqualmin_exist,
16998       { "existEUTRAN_QQUALMIN", "gsm_rlcmac.reselection_based_on_rsrq.existeutran_qqualmin_exist",
16999         FT_UINT8, BASE_DEC, NULL, 0x0,
17000         NULL, HFILL
17001       }
17002     },
17003     { &hf_reselection_based_on_rsrq_existeutran_rsrpmin_exist,
17004       { "existEUTRAN_RSRPmin", "gsm_rlcmac.reselection_based_on_rsrq.existeutran_rsrpmin_exist",
17005         FT_UINT8, BASE_DEC, NULL, 0x0,
17006         NULL, HFILL
17007       }
17008     },
17009     { &hf_utran_csg_cells_reporting_desp_existutran_csg_fdd_reporting_threshold_exist,
17010       { "existUTRAN_CSG_FDD_REPORTING_THRESHOLD", "gsm_rlcmac.utran_csg_cells_reporting_desp.existutran_csg_fdd_reporting_threshold_exist",
17011         FT_UINT8, BASE_DEC, NULL, 0x0,
17012         NULL, HFILL
17013       }
17014     },
17015     { &hf_utran_csg_cells_reporting_desp_existutran_csg_tdd_reporting_threshold_exist,
17016       { "existUTRAN_CSG_TDD_REPORTING_THRESHOLD", "gsm_rlcmac.utran_csg_cells_reporting_desp.existutran_csg_tdd_reporting_threshold_exist",
17017         FT_UINT8, BASE_DEC, NULL, 0x0,
17018         NULL, HFILL
17019       }
17020     },
17021     { &hf_eutran_csg_cells_reporting_desp_existeutran_csg_fdd_reporting_threshold_exist,
17022       { "existEUTRAN_CSG_FDD_REPORTING_THRESHOLD", "gsm_rlcmac.eutran_csg_cells_reporting_desp.existeutran_csg_fdd_reporting_threshold_exist",
17023         FT_UINT8, BASE_DEC, NULL, 0x0,
17024         NULL, HFILL
17025       }
17026     },
17027     { &hf_eutran_csg_cells_reporting_desp_existeutran_csg_tdd_reporting_threshold_exist,
17028       { "existEUTRAN_CSG_TDD_REPORTING_THRESHOLD", "gsm_rlcmac.eutran_csg_cells_reporting_desp.existeutran_csg_tdd_reporting_threshold_exist",
17029         FT_UINT8, BASE_DEC, NULL, 0x0,
17030         NULL, HFILL
17031       }
17032     },
17033     { &hf_csg_cells_reporting_desp_existutran_csg_cells_reporting_description_exist,
17034       { "existUTRAN_CSG_Cells_Reporting_Description", "gsm_rlcmac.csg_cells_reporting_desp.existutran_csg_cells_reporting_description_exist",
17035         FT_UINT8, BASE_DEC, NULL, 0x0,
17036         NULL, HFILL
17037       }
17038     },
17039     { &hf_csg_cells_reporting_desp_existeutran_csg_cells_reporting_description_exist,
17040       { "existEUTRAN_CSG_Cells_Reporting_Description", "gsm_rlcmac.csg_cells_reporting_desp.existeutran_csg_cells_reporting_description_exist",
17041         FT_UINT8, BASE_DEC, NULL, 0x0,
17042         NULL, HFILL
17043       }
17044     },
17045     { &hf_priorityandeutran_parametersdescription_pmo_existservingcellpriorityparametersdescription_exist,
17046       { "existServingCellPriorityParametersDescription", "gsm_rlcmac.priorityandeutran_parametersdescription_pmo.existservingcellpriorityparametersdescription_exist",
17047         FT_UINT8, BASE_DEC, NULL, 0x0,
17048         NULL, HFILL
17049       }
17050     },
17051     { &hf_priorityandeutran_parametersdescription_pmo_existpriorityparametersdescription3g_pmo_exist,
17052       { "existPriorityParametersDescription3G_PMO", "gsm_rlcmac.priorityandeutran_parametersdescription_pmo.existpriorityparametersdescription3g_pmo_exist",
17053         FT_UINT8, BASE_DEC, NULL, 0x0,
17054         NULL, HFILL
17055       }
17056     },
17057     { &hf_priorityandeutran_parametersdescription_pmo_existeutran_parametersdescription_pmo_exist,
17058       { "existEUTRAN_ParametersDescription_PMO", "gsm_rlcmac.priorityandeutran_parametersdescription_pmo.existeutran_parametersdescription_pmo_exist",
17059         FT_UINT8, BASE_DEC, NULL, 0x0,
17060         NULL, HFILL
17061       }
17062     },
17063     { &hf_threeg_individual_priority_parameters_description_default_utran_priority_exist,
17064       { "Exist_DEFAULT_UTRAN_PRIORITY", "gsm_rlcmac.threeg_individual_priority_parameters_description.default_utran_priority_exist",
17065         FT_UINT8, BASE_DEC, NULL, 0x0,
17066         NULL, HFILL
17067       }
17068     },
17069     { &hf_eutran_individual_priority_parameters_description_default_eutran_priority_exist,
17070       { "Exist_DEFAULT_EUTRAN_PRIORITY", "gsm_rlcmac.eutran_individual_priority_parameters_description.default_eutran_priority_exist",
17071         FT_UINT8, BASE_DEC, NULL, 0x0,
17072         NULL, HFILL
17073       }
17074     },
17075     { &hf_provide_individual_priorities_3g_individual_priority_parameters_description_exist,
17076       { "Exist_3G_Individual_Priority_Parameters_Description", "gsm_rlcmac.provide_individual_priorities.3g_individual_priority_parameters_description_exist",
17077         FT_UINT8, BASE_DEC, NULL, 0x0,
17078         NULL, HFILL
17079       }
17080     },
17081     { &hf_provide_individual_priorities_eutran_individual_priority_parameters_description_exist,
17082       { "Exist_EUTRAN_Individual_Priority_Parameters_Description", "gsm_rlcmac.provide_individual_priorities.eutran_individual_priority_parameters_description_exist",
17083         FT_UINT8, BASE_DEC, NULL, 0x0,
17084         NULL, HFILL
17085       }
17086     },
17087     { &hf_provide_individual_priorities_t3230_timeout_value_exist,
17088       { "Exist_T3230_timeout_value", "gsm_rlcmac.provide_individual_priorities.t3230_timeout_value_exist",
17089         FT_UINT8, BASE_DEC, NULL, 0x0,
17090         NULL, HFILL
17091       }
17092     },
17093     { &hf_pmo_additionsr9_existenhanced_cell_reselection_parameters_description_exist,
17094       { "existEnhanced_Cell_Reselection_Parameters_Description", "gsm_rlcmac.pmo_additionsr9.existenhanced_cell_reselection_parameters_description_exist",
17095         FT_UINT8, BASE_DEC, NULL, 0x0,
17096         NULL, HFILL
17097       }
17098     },
17099     { &hf_pmo_additionsr9_existcsg_cells_reporting_description_exist,
17100       { "existCSG_Cells_Reporting_Description", "gsm_rlcmac.pmo_additionsr9.existcsg_cells_reporting_description_exist",
17101         FT_UINT8, BASE_DEC, NULL, 0x0,
17102         NULL, HFILL
17103       }
17104     },
17105     { &hf_pmo_additionsr8_existba_ind_3g_pmo_ind_exist,
17106       { "existBA_IND_3G_PMO_IND", "gsm_rlcmac.pmo_additionsr8.existba_ind_3g_pmo_ind_exist",
17107         FT_UINT8, BASE_DEC, NULL, 0x0,
17108         NULL, HFILL
17109       }
17110     },
17111     { &hf_pmo_additionsr8_existpriorityandeutran_parametersdescription_pmo_exist,
17112       { "existPriorityAndEUTRAN_ParametersDescription_PMO", "gsm_rlcmac.pmo_additionsr8.existpriorityandeutran_parametersdescription_pmo_exist",
17113         FT_UINT8, BASE_DEC, NULL, 0x0,
17114         NULL, HFILL
17115       }
17116     },
17117     { &hf_pmo_additionsr8_existindividualpriorities_pmo_exist,
17118       { "existIndividualPriorities_PMO", "gsm_rlcmac.pmo_additionsr8.existindividualpriorities_pmo_exist",
17119         FT_UINT8, BASE_DEC, NULL, 0x0,
17120         NULL, HFILL
17121       }
17122     },
17123     { &hf_pmo_additionsr8_existthreeg_csg_description_exist,
17124       { "existThreeG_CSG_Description", "gsm_rlcmac.pmo_additionsr8.existthreeg_csg_description_exist",
17125         FT_UINT8, BASE_DEC, NULL, 0x0,
17126         NULL, HFILL
17127       }
17128     },
17129     { &hf_pmo_additionsr8_existeutran_csg_description_exist,
17130       { "existEUTRAN_CSG_Description", "gsm_rlcmac.pmo_additionsr8.existeutran_csg_description_exist",
17131         FT_UINT8, BASE_DEC, NULL, 0x0,
17132         NULL, HFILL
17133       }
17134     },
17135     { &hf_pmo_additionsr8_existmeasurement_control_parameters_description_exist,
17136       { "existMeasurement_Control_Parameters_Description", "gsm_rlcmac.pmo_additionsr8.existmeasurement_control_parameters_description_exist",
17137         FT_UINT8, BASE_DEC, NULL, 0x0,
17138         NULL, HFILL
17139       }
17140     },
17141     { &hf_pmo_additionsr7_existreporting_offset_threshold_700_exist,
17142       { "existREPORTING_OFFSET_THRESHOLD_700", "gsm_rlcmac.pmo_additionsr7.existreporting_offset_threshold_700_exist",
17143         FT_UINT8, BASE_DEC, NULL, 0x0,
17144         NULL, HFILL
17145       }
17146     },
17147     { &hf_pmo_additionsr7_existreporting_offset_threshold_810_exist,
17148       { "existREPORTING_OFFSET_THRESHOLD_810", "gsm_rlcmac.pmo_additionsr7.existreporting_offset_threshold_810_exist",
17149         FT_UINT8, BASE_DEC, NULL, 0x0,
17150         NULL, HFILL
17151       }
17152     },
17153     { &hf_pmo_additionsr5_existgrnti_extension_exist,
17154       { "existGRNTI_Extension", "gsm_rlcmac.pmo_additionsr5.existgrnti_extension_exist",
17155         FT_UINT8, BASE_DEC, NULL, 0x0,
17156         NULL, HFILL
17157       }
17158     },
17159     { &hf_pmo_additionsr5_lu_modeneighbourcellparams_exist,
17160       { "exist_lu_ModeNeighbourCellParams", "gsm_rlcmac.pmo_additionsr5.lu_modeneighbourcellparams_exist",
17161         FT_UINT8, BASE_DEC, NULL, 0x0,
17162         NULL, HFILL
17163       }
17164     },
17165     { &hf_pmo_additionsr5_existnc_lu_modeonlycapablecelllist_exist,
17166       { "existNC_lu_ModeOnlyCapableCellList", "gsm_rlcmac.pmo_additionsr5.existnc_lu_modeonlycapablecelllist_exist",
17167         FT_UINT8, BASE_DEC, NULL, 0x0,
17168         NULL, HFILL
17169       }
17170     },
17171     { &hf_pmo_additionsr5_existgprs_additionalmeasurementparams3g_exist,
17172       { "existGPRS_AdditionalMeasurementParams3G", "gsm_rlcmac.pmo_additionsr5.existgprs_additionalmeasurementparams3g_exist",
17173         FT_UINT8, BASE_DEC, NULL, 0x0,
17174         NULL, HFILL
17175       }
17176     },
17177     { &hf_pcco_additionsr5_existgrnti_extension_exist,
17178       { "existGRNTI_Extension", "gsm_rlcmac.pcco_additionsr5.existgrnti_extension_exist",
17179         FT_UINT8, BASE_DEC, NULL, 0x0,
17180         NULL, HFILL
17181       }
17182     },
17183     { &hf_pcco_additionsr5_lu_modeneighbourcellparams_exist,
17184       { "exist_lu_ModeNeighbourCellParams", "gsm_rlcmac.pcco_additionsr5.lu_modeneighbourcellparams_exist",
17185         FT_UINT8, BASE_DEC, NULL, 0x0,
17186         NULL, HFILL
17187       }
17188     },
17189     { &hf_pcco_additionsr5_existnc_lu_modeonlycapablecelllist_exist,
17190       { "existNC_lu_ModeOnlyCapableCellList", "gsm_rlcmac.pcco_additionsr5.existnc_lu_modeonlycapablecelllist_exist",
17191         FT_UINT8, BASE_DEC, NULL, 0x0,
17192         NULL, HFILL
17193       }
17194     },
17195     { &hf_pcco_additionsr5_existgprs_additionalmeasurementparams3g_exist,
17196       { "existGPRS_AdditionalMeasurementParams3G", "gsm_rlcmac.pcco_additionsr5.existgprs_additionalmeasurementparams3g_exist",
17197         FT_UINT8, BASE_DEC, NULL, 0x0,
17198         NULL, HFILL
17199       }
17200     },
17201     { &hf_pmo_additionsr4_ccn_support_description_id_exist,
17202       { "Exist_CCN_Support_Description_ID", "gsm_rlcmac.pmo_additionsr4.ccn_support_description_id_exist",
17203         FT_UINT8, BASE_DEC, NULL, 0x0,
17204         NULL, HFILL
17205       }
17206     },
17207     { &hf_pmo_additionsr99_enh_measurement_parameters_exist,
17208       { "Exist_ENH_Measurement_Parameters", "gsm_rlcmac.pmo_additionsr99.enh_measurement_parameters_exist",
17209         FT_UINT8, BASE_DEC, NULL, 0x0,
17210         NULL, HFILL
17211       }
17212     },
17213     { &hf_pcco_additionsr4_container_id_exist,
17214       { "Exist_Container_ID", "gsm_rlcmac.pcco_additionsr4.container_id_exist",
17215         FT_UINT8, BASE_DEC, NULL, 0x0,
17216         NULL, HFILL
17217       }
17218     },
17219     { &hf_pcco_additionsr4_ccn_support_description_id_exist,
17220       { "Exist_CCN_Support_Description_ID", "gsm_rlcmac.pcco_additionsr4.ccn_support_description_id_exist",
17221         FT_UINT8, BASE_DEC, NULL, 0x0,
17222         NULL, HFILL
17223       }
17224     },
17225     { &hf_pmo_additionsr98_lsa_parameters_exist,
17226       { "Exist_LSA_Parameters", "gsm_rlcmac.pmo_additionsr98.lsa_parameters_exist",
17227         FT_UINT8, BASE_DEC, NULL, 0x0,
17228         NULL, HFILL
17229       }
17230     },
17231     { &hf_pcco_additionsr98_lsa_parameters_exist,
17232       { "Exist_LSA_Parameters", "gsm_rlcmac.pcco_additionsr98.lsa_parameters_exist",
17233         FT_UINT8, BASE_DEC, NULL, 0x0,
17234         NULL, HFILL
17235       }
17236     },
17237     { &hf_target_cell_3g_additionsr8_eutran_target_cell_exist,
17238       { "Exist_EUTRAN_Target_Cell", "gsm_rlcmac.target_cell_3g_additionsr8.eutran_target_cell_exist",
17239         FT_UINT8, BASE_DEC, NULL, 0x0,
17240         NULL, HFILL
17241       }
17242     },
17243     { &hf_target_cell_3g_additionsr8_individual_priorities_exist,
17244       { "Exist_Individual_Priorities", "gsm_rlcmac.target_cell_3g_additionsr8.individual_priorities_exist",
17245         FT_UINT8, BASE_DEC, NULL, 0x0,
17246         NULL, HFILL
17247       }
17248     },
17249     { &hf_target_cell_3g_additionsr5_g_rnti_extention_exist,
17250       { "Exist_G_RNTI_Extension", "gsm_rlcmac.target_cell_3g_additionsr5.g_rnti_extension_exist",
17251         FT_UINT8, BASE_DEC, NULL, 0x0,
17252         NULL, HFILL
17253       }
17254     },
17255     { &hf_target_cell_3g_fdd_description_exist,
17256       { "Exist_FDD_Description", "gsm_rlcmac.target_cell_3g.fdd_description_exist",
17257         FT_UINT8, BASE_DEC, NULL, 0x0,
17258         NULL, HFILL
17259       }
17260     },
17261     { &hf_target_cell_3g_tdd_description_exist,
17262       { "Exist_TDD_Description", "gsm_rlcmac.target_cell_3g.tdd_description_exist",
17263         FT_UINT8, BASE_DEC, NULL, 0x0,
17264         NULL, HFILL
17265       }
17266     },
17267     { &hf_nc_measurements_bsic_n_exist,
17268       { "Exist_BSIC_N", "gsm_rlcmac.nc_measurements.bsic_n_exist",
17269         FT_UINT8, BASE_DEC, NULL, 0x0,
17270         NULL, HFILL
17271       }
17272     },
17273     { &hf_reporting_quantity_instance_reporting_quantity_exist,
17274       { "Exist_REPORTING_QUANTITY", "gsm_rlcmac.reporting_quantity_instance.reporting_quantity_exist",
17275         FT_UINT8, BASE_DEC, NULL, 0x0,
17276         NULL, HFILL
17277       }
17278     },
17279     { &hf_enh_nc_measurement_report_serving_cell_data_exist,
17280       { "Exist_Serving_Cell_Data", "gsm_rlcmac.enh_nc_measurement_report.serving_cell_data_exist",
17281         FT_UINT8, BASE_DEC, NULL, 0x0,
17282         NULL, HFILL
17283       }
17284     },
17285     { &hf_enh_nc_measurement_report_reportbitmap_exist,
17286       { "Exist_ReportBitmap", "gsm_rlcmac.enh_nc_measurement_report.reportbitmap_exist",
17287         FT_UINT8, BASE_DEC, NULL, 0x0,
17288         NULL, HFILL
17289       }
17290     },
17291     { &hf_ext_measurement_report_slot0_exist,
17292       { "Slot[0].Exist", "gsm_rlcmac.ext_measurement_report.slot0_exist",
17293         FT_UINT8, BASE_DEC, NULL, 0x0,
17294         NULL, HFILL
17295       }
17296     },
17297     { &hf_ext_measurement_report_slot1_exist,
17298       { "Slot[1].Exist", "gsm_rlcmac.ext_measurement_report.slot1_exist",
17299         FT_UINT8, BASE_DEC, NULL, 0x0,
17300         NULL, HFILL
17301       }
17302     },
17303     { &hf_ext_measurement_report_slot2_exist,
17304       { "Slot[2].Exist", "gsm_rlcmac.ext_measurement_report.slot2_exist",
17305         FT_UINT8, BASE_DEC, NULL, 0x0,
17306         NULL, HFILL
17307       }
17308     },
17309     { &hf_ext_measurement_report_slot3_exist,
17310       { "Slot[3].Exist", "gsm_rlcmac.ext_measurement_report.slot3_exist",
17311         FT_UINT8, BASE_DEC, NULL, 0x0,
17312         NULL, HFILL
17313       }
17314     },
17315     { &hf_ext_measurement_report_slot4_exist,
17316       { "Slot[4].Exist", "gsm_rlcmac.ext_measurement_report.slot4_exist",
17317         FT_UINT8, BASE_DEC, NULL, 0x0,
17318         NULL, HFILL
17319       }
17320     },
17321     { &hf_ext_measurement_report_slot5_exist,
17322       { "Slot[5].Exist", "gsm_rlcmac.ext_measurement_report.slot5_exist",
17323         FT_UINT8, BASE_DEC, NULL, 0x0,
17324         NULL, HFILL
17325       }
17326     },
17327     { &hf_ext_measurement_report_slot6_exist,
17328       { "Slot[6].Exist", "gsm_rlcmac.ext_measurement_report.slot6_exist",
17329         FT_UINT8, BASE_DEC, NULL, 0x0,
17330         NULL, HFILL
17331       }
17332     },
17333     { &hf_ext_measurement_report_slot7_exist,
17334       { "Slot[7].Exist", "gsm_rlcmac.ext_measurement_report.slot7_exist",
17335         FT_UINT8, BASE_DEC, NULL, 0x0,
17336         NULL, HFILL
17337       }
17338     },
17339     { &hf_ext_measurement_report_i_level_exist,
17340       { "Exist_I_LEVEL", "gsm_rlcmac.ext_measurement_report.i_level_exist",
17341         FT_UINT8, BASE_DEC, NULL, 0x0,
17342         NULL, HFILL
17343       }
17344     },
17345     { &hf_utran_csg_measurement_report_plmn_id_exist,
17346       { "Exist_PLMN_ID", "gsm_rlcmac.utran_csg_measurement_report.plmn_id_exist",
17347         FT_UINT8, BASE_DEC, NULL, 0x0,
17348         NULL, HFILL
17349       }
17350     },
17351     { &hf_eutran_csg_measurement_report_plmn_id_exist,
17352       { "Exist_PLMN_ID", "gsm_rlcmac.eutran_csg_measurement_report.plmn_id_exist",
17353         FT_UINT8, BASE_DEC, NULL, 0x0,
17354         NULL, HFILL
17355       }
17356     },
17357     { &hf_pmr_additionsr9_utran_csg_meas_rpt_exist,
17358       { "Exist_UTRAN_CSG_Meas_Rpt", "gsm_rlcmac.pmr_additionsr9.utran_csg_meas_rpt_exist",
17359         FT_UINT8, BASE_DEC, NULL, 0x0,
17360         NULL, HFILL
17361       }
17362     },
17363     { &hf_pmr_additionsr9_eutran_csg_meas_rpt_exist,
17364       { "Exist_EUTRAN_CSG_Meas_Rpt", "gsm_rlcmac.pmr_additionsr9.eutran_csg_meas_rpt_exist",
17365         FT_UINT8, BASE_DEC, NULL, 0x0,
17366         NULL, HFILL
17367       }
17368     },
17369     { &hf_pmr_additionsr8_eutran_meas_rpt_exist,
17370       { "Exist_EUTRAN_Meas_Rpt", "gsm_rlcmac.pmr_additionsr8.eutran_meas_rpt_exist",
17371         FT_UINT8, BASE_DEC, NULL, 0x0,
17372         NULL, HFILL
17373       }
17374     },
17375     { &hf_pmr_additionsr5_grnti_exist,
17376       { "Exist_GRNTI", "gsm_rlcmac.pmr_additionsr5.grnti_exist",
17377         FT_UINT8, BASE_DEC, NULL, 0x0,
17378         NULL, HFILL
17379       }
17380     },
17381     { &hf_pmr_additionsr99_info3g_exist,
17382       { "Exist_Info3G", "gsm_rlcmac.pmr_additionsr99.info3g_exist",
17383         FT_UINT8, BASE_DEC, NULL, 0x0,
17384         NULL, HFILL
17385       }
17386     },
17387     { &hf_pmr_additionsr99_measurementreport3g_exist,
17388       { "Exist_MeasurementReport3G", "gsm_rlcmac.pmr_additionsr99.measurementreport3g_exist",
17389         FT_UINT8, BASE_DEC, NULL, 0x0,
17390         NULL, HFILL
17391       }
17392     },
17393     { &hf_packet_measurement_report_psi5_change_mark_exist,
17394       { "Exist_PSI5_CHANGE_MARK", "gsm_rlcmac.packet_measurement_report.psi5_change_mark_exist",
17395         FT_UINT8, BASE_DEC, NULL, 0x0,
17396         NULL, HFILL
17397       }
17398     },
17399     { &hf_pemr_additionsr9_utran_csg_target_cell_exist,
17400       { "Exist_UTRAN_CSG_Target_Cell", "gsm_rlcmac.pemr_additionsr9.utran_csg_target_cell_exist",
17401         FT_UINT8, BASE_DEC, NULL, 0x0,
17402         NULL, HFILL
17403       }
17404     },
17405     { &hf_pemr_additionsr9_eutran_csg_target_cell_exist,
17406       { "Exist_EUTRAN_CSG_Target_Cell", "gsm_rlcmac.pemr_additionsr9.eutran_csg_target_cell_exist",
17407         FT_UINT8, BASE_DEC, NULL, 0x0,
17408         NULL, HFILL
17409       }
17410     },
17411     { &hf_bitmap_report_quantity_reporting_quantity_exist,
17412       { "Exist_REPORTING_QUANTITY", "gsm_rlcmac.bitmap_report_quantity.reporting_quantity_exist",
17413         FT_UINT8, BASE_DEC, NULL, 0x0,
17414         NULL, HFILL
17415       }
17416     },
17417     { &hf_pemr_additionsr8_eutran_meas_rpt_exist,
17418       { "Exist_EUTRAN_Meas_Rpt", "gsm_rlcmac.pemr_additionsr8.eutran_meas_rpt_exist",
17419         FT_UINT8, BASE_DEC, NULL, 0x0,
17420         NULL, HFILL
17421       }
17422     },
17423     { &hf_pemr_additionsr5_grnti_ext_exist,
17424       { "Exist_GRNTI_Ext", "gsm_rlcmac.pemr_additionsr5.grnti_ext_exist",
17425         FT_UINT8, BASE_DEC, NULL, 0x0,
17426         NULL, HFILL
17427       }
17428     },
17429     { &hf_packet_measurement_order_nc_measurement_parameters_exist,
17430       { "Exist_NC_Measurement_Parameters", "gsm_rlcmac.packet_measurement_order.nc_measurement_parameters_exist",
17431         FT_UINT8, BASE_DEC, NULL, 0x0,
17432         NULL, HFILL
17433       }
17434     },
17435     { &hf_packet_measurement_order_ext_measurement_parameters_exist,
17436       { "Exist_EXT_Measurement_Parameters", "gsm_rlcmac.packet_measurement_order.ext_measurement_parameters_exist",
17437         FT_UINT8, BASE_DEC, NULL, 0x0,
17438         NULL, HFILL
17439       }
17440     },
17441     { &hf_fdd_target_cell_notif_bandwith_fdd_exist,
17442       { "Exist_Bandwidth_FDD", "gsm_rlcmac.fdd_target_cell_notif.bandwidth_fdd_exist",
17443         FT_UINT8, BASE_DEC, NULL, 0x0,
17444         NULL, HFILL
17445       }
17446     },
17447     { &hf_tdd_target_cell_notif_bandwith_tdd_exist,
17448       { "Exist_Bandwidth_TDD", "gsm_rlcmac.tdd_target_cell_notif.bandwidth_tdd_exist",
17449         FT_UINT8, BASE_DEC, NULL, 0x0,
17450         NULL, HFILL
17451       }
17452     },
17453     { &hf_target_cell_3g_notif_fdd_description_exist,
17454       { "Exist_FDD_Description", "gsm_rlcmac.target_cell_3g_notif.fdd_description_exist",
17455         FT_UINT8, BASE_DEC, NULL, 0x0,
17456         NULL, HFILL
17457       }
17458     },
17459     { &hf_target_cell_3g_notif_tdd_description_exist,
17460       { "Exist_TDD_Description", "gsm_rlcmac.target_cell_3g_notif.tdd_description_exist",
17461         FT_UINT8, BASE_DEC, NULL, 0x0,
17462         NULL, HFILL
17463       }
17464     },
17465     { &hf_target_eutran_cell_notif_measurement_bandwidth_exist,
17466       { "Exist_Measurement_Bandwidth", "gsm_rlcmac.target_eutran_cell_notif.measurement_bandwidth_exist",
17467         FT_UINT8, BASE_DEC, NULL, 0x0,
17468         NULL, HFILL
17469       }
17470     },
17471     { &hf_target_cell_4g_notif_arfcn_exist,
17472       { "Exist_Arfcn", "gsm_rlcmac.target_cell_4g_notif.arfcn_exist",
17473         FT_UINT8, BASE_DEC, NULL, 0x0,
17474         NULL, HFILL
17475       }
17476     },
17477     { &hf_target_cell_4g_notif_3g_target_cell_exist,
17478       { "Exist_3G_Target_Cell", "gsm_rlcmac.target_cell_4g_notif.3g_target_cell_exist",
17479         FT_UINT8, BASE_DEC, NULL, 0x0,
17480         NULL, HFILL
17481       }
17482     },
17483     { &hf_target_cell_4g_notif_eutran_target_cell_exist,
17484       { "Exist_Eutran_Target_Cell", "gsm_rlcmac.target_cell_4g_notif.eutran_target_cell_exist",
17485         FT_UINT8, BASE_DEC, NULL, 0x0,
17486         NULL, HFILL
17487       }
17488     },
17489     { &hf_target_cell_4g_notif_eutran_ccn_measurement_report_exist,
17490       { "Exist_Eutran_Ccn_Measurement_Report", "gsm_rlcmac.target_cell_4g_notif.eutran_ccn_measurement_report_exist",
17491         FT_UINT8, BASE_DEC, NULL, 0x0,
17492         NULL, HFILL
17493       }
17494     },
17495     { &hf_target_cell_csg_notif_eutran_ccn_measurement_report_exist,
17496       { "Exist_Eutran_Ccn_Measurement_Report", "gsm_rlcmac.target_cell_csg_notif.eutran_ccn_measurement_report_exist",
17497         FT_UINT8, BASE_DEC, NULL, 0x0,
17498         NULL, HFILL
17499       }
17500     },
17501     { &hf_pccn_additionsr6_ba_used_3g_exist,
17502       { "Exist_BA_USED_3G", "gsm_rlcmac.pccn_additionsr6.ba_used_3g_exist",
17503         FT_UINT8, BASE_DEC, NULL, 0x0,
17504         NULL, HFILL
17505       }
17506     },
17507     { &hf_packet_cell_change_continue_id_exist,
17508       { "Exist_ID", "gsm_rlcmac.packet_cell_change_continue.id_exist",
17509         FT_UINT8, BASE_DEC, NULL, 0x0,
17510         NULL, HFILL
17511       }
17512     },
17513     { &hf_pho_downlinkassignment_egprs_windowsize_exist,
17514       { "Exist_EGPRS_WindowSize", "gsm_rlcmac.pho_downlinkassignment.egprs_windowsize_exist",
17515         FT_UINT8, BASE_DEC, NULL, 0x0,
17516         NULL, HFILL
17517       }
17518     },
17519     { &hf_pho_usf_1_7_usf_exist,
17520       { "Exist_USF", "gsm_rlcmac.pho_usf_1_7.usf_exist",
17521         FT_UINT8, BASE_DEC, NULL, 0x0,
17522         NULL, HFILL
17523       }
17524     },
17525     { &hf_pho_uplinkassignment_channelcodingcommand_exist,
17526       { "Exist_ChannelCodingCommand", "gsm_rlcmac.pho_uplinkassignment.channelcodingcommand_exist",
17527         FT_UINT8, BASE_DEC, NULL, 0x0,
17528         NULL, HFILL
17529       }
17530     },
17531     { &hf_pho_uplinkassignment_egprs_channelcodingcommand_exist,
17532       { "Exist_EGPRS_ChannelCodingCommand", "gsm_rlcmac.pho_uplinkassignment.egprs_channelcodingcommand_exist",
17533         FT_UINT8, BASE_DEC, NULL, 0x0,
17534         NULL, HFILL
17535       }
17536     },
17537     { &hf_pho_uplinkassignment_egprs_windowsize_exist,
17538       { "Exist_EGPRS_WindowSize", "gsm_rlcmac.pho_uplinkassignment.egprs_windowsize_exist",
17539         FT_UINT8, BASE_DEC, NULL, 0x0,
17540         NULL, HFILL
17541       }
17542     },
17543     { &hf_pho_uplinkassignment_tbf_timeslotallocation_exist,
17544       { "Exist_TBF_TimeslotAllocation", "gsm_rlcmac.pho_uplinkassignment.tbf_timeslotallocation_exist",
17545         FT_UINT8, BASE_DEC, NULL, 0x0,
17546         NULL, HFILL
17547       }
17548     },
17549     { &hf_globaltimeslotdescription_ua_pho_ua_exist,
17550       { "Exist_PHO_UA", "gsm_rlcmac.globaltimeslotdescription_ua.pho_ua_exist",
17551         FT_UINT8, BASE_DEC, NULL, 0x0,
17552         NULL, HFILL
17553       }
17554     },
17555     { &hf_pho_gprs_channelcodingcommand_exist,
17556       { "Exist_ChannelCodingCommand", "gsm_rlcmac.pho_gprs.channelcodingcommand_exist",
17557         FT_UINT8, BASE_DEC, NULL, 0x0,
17558         NULL, HFILL
17559       }
17560     },
17561     { &hf_pho_gprs_globaltimeslotdescription_ua_exist,
17562       { "Exist_GlobalTimeslotDescription_UA", "gsm_rlcmac.pho_gprs.globaltimeslotdescription_ua_exist",
17563         FT_UINT8, BASE_DEC, NULL, 0x0,
17564         NULL, HFILL
17565       }
17566     },
17567     { &hf_pho_gprs_downlinkassignment_exist,
17568       { "Exist_DownlinkAssignment", "gsm_rlcmac.pho_gprs.downlinkassignment_exist",
17569         FT_UINT8, BASE_DEC, NULL, 0x0,
17570         NULL, HFILL
17571       }
17572     },
17573     { &hf_egprs_description_egprs_windowsize_exist,
17574       { "Exist_EGPRS_WindowSize", "gsm_rlcmac.egprs_description.egprs_windowsize_exist",
17575         FT_UINT8, BASE_DEC, NULL, 0x0,
17576         NULL, HFILL
17577       }
17578     },
17579     { &hf_egprs_description_bep_period2_exist,
17580       { "Exist_BEP_Period2", "gsm_rlcmac.egprs_description.bep_period2_exist",
17581         FT_UINT8, BASE_DEC, NULL, 0x0,
17582         NULL, HFILL
17583       }
17584     },
17585     { &hf_downlinktbf_egprs_description_exist,
17586       { "Exist_EGPRS_Description", "gsm_rlcmac.downlinktbf.egprs_description_exist",
17587         FT_UINT8, BASE_DEC, NULL, 0x0,
17588         NULL, HFILL
17589       }
17590     },
17591     { &hf_downlinktbf_downlinkassignment_exist,
17592       { "Exist_DownlinkAssignment", "gsm_rlcmac.downlinktbf.downlinkassignment_exist",
17593         FT_UINT8, BASE_DEC, NULL, 0x0,
17594         NULL, HFILL
17595       }
17596     },
17597     { &hf_pho_egprs_egprs_windowsize_exist,
17598       { "Exist_EGPRS_WindowSize", "gsm_rlcmac.pho_egprs.egprs_windowsize_exist",
17599         FT_UINT8, BASE_DEC, NULL, 0x0,
17600         NULL, HFILL
17601       }
17602     },
17603     { &hf_pho_egprs_egprs_channelcodingcommand_exist,
17604       { "Exist_EGPRS_ChannelCodingCommand", "gsm_rlcmac.pho_egprs.egprs_channelcodingcommand_exist",
17605         FT_UINT8, BASE_DEC, NULL, 0x0,
17606         NULL, HFILL
17607       }
17608     },
17609     { &hf_pho_egprs_bep_period2_exist,
17610       { "Exist_BEP_Period2", "gsm_rlcmac.pho_egprs.bep_period2_exist",
17611         FT_UINT8, BASE_DEC, NULL, 0x0,
17612         NULL, HFILL
17613       }
17614     },
17615     { &hf_pho_egprs_globaltimeslotdescription_ua_exist,
17616       { "Exist_GlobalTimeslotDescription_UA", "gsm_rlcmac.pho_egprs.globaltimeslotdescription_ua_exist",
17617         FT_UINT8, BASE_DEC, NULL, 0x0,
17618         NULL, HFILL
17619       }
17620     },
17621     { &hf_pho_egprs_downlinktbf_exist,
17622       { "Exist_DownlinkTBF", "gsm_rlcmac.pho_egprs.downlinktbf_exist",
17623         FT_UINT8, BASE_DEC, NULL, 0x0,
17624         NULL, HFILL
17625       }
17626     },
17627     { &hf_pho_timingadvance_packetextendedtimingadvance_exist,
17628       { "Exist_PacketExtendedTimingAdvance", "gsm_rlcmac.pho_timingadvance.packetextendedtimingadvance_exist",
17629         FT_UINT8, BASE_DEC, NULL, 0x0,
17630         NULL, HFILL
17631       }
17632     },
17633     { &hf_pho_radioresources_handoverreference_exist,
17634       { "Exist_HandoverReference", "gsm_rlcmac.pho_radioresources.handoverreference_exist",
17635         FT_UINT8, BASE_DEC, NULL, 0x0,
17636         NULL, HFILL
17637       }
17638     },
17639     { &hf_pho_radioresources_ccn_active_exist,
17640       { "Exist_CCN_Active", "gsm_rlcmac.pho_radioresources.ccn_active_exist",
17641         FT_UINT8, BASE_DEC, NULL, 0x0,
17642         NULL, HFILL
17643       }
17644     },
17645     { &hf_pho_radioresources_ccn_active_3g_exist,
17646       { "Exist_CCN_Active_3G", "gsm_rlcmac.pho_radioresources.ccn_active_3g_exist",
17647         FT_UINT8, BASE_DEC, NULL, 0x0,
17648         NULL, HFILL
17649       }
17650     },
17651     { &hf_pho_radioresources_ccn_support_description_exist,
17652       { "Exist_CCN_Support_Description", "gsm_rlcmac.pho_radioresources.ccn_support_description_exist",
17653         FT_UINT8, BASE_DEC, NULL, 0x0,
17654         NULL, HFILL
17655       }
17656     },
17657     { &hf_pho_radioresources_pho_timingadvance_exist,
17658       { "Exist_PHO_TimingAdvance", "gsm_rlcmac.pho_radioresources.pho_timingadvance_exist",
17659         FT_UINT8, BASE_DEC, NULL, 0x0,
17660         NULL, HFILL
17661       }
17662     },
17663     { &hf_pho_radioresources_po_pr_exist,
17664       { "Exist_PO_PR", "gsm_rlcmac.pho_radioresources.po_pr_exist",
17665         FT_UINT8, BASE_DEC, NULL, 0x0,
17666         NULL, HFILL
17667       }
17668     },
17669     { &hf_pho_radioresources_uplinkcontroltimeslot_exist,
17670       { "Exist_UplinkControlTimeslot", "gsm_rlcmac.pho_radioresources.uplinkcontroltimeslot_exist",
17671         FT_UINT8, BASE_DEC, NULL, 0x0,
17672         NULL, HFILL
17673       }
17674     },
17675     { &hf_ps_handoverto_a_gb_modepayload_nas_container_exist,
17676       { "Exist_NAS_Container", "gsm_rlcmac.ps_handoverto_a_gb_modepayload.nas_container_exist",
17677         FT_UINT8, BASE_DEC, NULL, 0x0,
17678         NULL, HFILL
17679       }
17680     },
17681     { &hf_psi1_psi_count_hr_exist,
17682       { "Exist_PSI_COUNT_HR", "gsm_rlcmac.psi1.psi_count_hr_exist",
17683         FT_UINT8, BASE_DEC, NULL, 0x0,
17684         NULL, HFILL
17685       }
17686     },
17687     { &hf_non_gprs_cell_options_t3212_exist,
17688       { "Exist_T3212", "gsm_rlcmac.non_gprs_cell_options.t3212_exist",
17689         FT_UINT8, BASE_DEC, NULL, 0x0,
17690         NULL, HFILL
17691       }
17692     },
17693     { &hf_non_gprs_cell_options_extension_bits_exist,
17694       { "Exist_Extension_Bits", "gsm_rlcmac.non_gprs_cell_options.extension_bits_exist",
17695         FT_UINT8, BASE_DEC, NULL, 0x0,
17696         NULL, HFILL
17697       }
17698     },
17699     { &hf_psi2_cell_identification_exist,
17700       { "Exist_Cell_Identification", "gsm_rlcmac.psi2.cell_identification_exist",
17701         FT_UINT8, BASE_DEC, NULL, 0x0,
17702         NULL, HFILL
17703       }
17704     },
17705     { &hf_psi2_non_gprs_cell_options_exist,
17706       { "Exist_Non_GPRS_Cell_Options", "gsm_rlcmac.psi2.non_gprs_cell_options_exist",
17707         FT_UINT8, BASE_DEC, NULL, 0x0,
17708         NULL, HFILL
17709       }
17710     },
17711     { &hf_serving_cell_params_hcs_exist,
17712       { "Exist_HCS", "gsm_rlcmac.serving_cell_params.hcs_exist",
17713         FT_UINT8, BASE_DEC, NULL, 0x0,
17714         NULL, HFILL
17715       }
17716     },
17717     { &hf_gen_cell_sel_t_resel_exist,
17718       { "Exist_T_RESEL", "gsm_rlcmac.gen_cell_sel.t_resel_exist",
17719         FT_UINT8, BASE_DEC, NULL, 0x0,
17720         NULL, HFILL
17721       }
17722     },
17723     { &hf_gen_cell_sel_ra_reselect_hysteresis_exist,
17724       { "Exist_RA_RESELECT_HYSTERESIS", "gsm_rlcmac.gen_cell_sel.ra_reselect_hysteresis_exist",
17725         FT_UINT8, BASE_DEC, NULL, 0x0,
17726         NULL, HFILL
17727       }
17728     },
17729     { &hf_compact_cell_sel_gprs_rxlev_access_min_exist,
17730       { "Exist_GPRS_RXLEV_ACCESS_MIN", "gsm_rlcmac.compact_cell_sel.gprs_rxlev_access_min_exist",
17731         FT_UINT8, BASE_DEC, NULL, 0x0,
17732         NULL, HFILL
17733       }
17734     },
17735     { &hf_compact_cell_sel_gprs_temporary_offset_exist,
17736       { "Exist_GPRS_TEMPORARY_OFFSET", "gsm_rlcmac.compact_cell_sel.gprs_temporary_offset_exist",
17737         FT_UINT8, BASE_DEC, NULL, 0x0,
17738         NULL, HFILL
17739       }
17740     },
17741     { &hf_compact_cell_sel_gprs_reselect_offset_exist,
17742       { "Exist_GPRS_RESELECT_OFFSET", "gsm_rlcmac.compact_cell_sel.gprs_reselect_offset_exist",
17743         FT_UINT8, BASE_DEC, NULL, 0x0,
17744         NULL, HFILL
17745       }
17746     },
17747     { &hf_compact_cell_sel_hcs_parm_exist,
17748       { "Exist_Hcs_Parm", "gsm_rlcmac.compact_cell_sel.hcs_parm_exist",
17749         FT_UINT8, BASE_DEC, NULL, 0x0,
17750         NULL, HFILL
17751       }
17752     },
17753     { &hf_compact_cell_sel_time_group_exist,
17754       { "Exist_TIME_GROUP", "gsm_rlcmac.compact_cell_sel.time_group_exist",
17755         FT_UINT8, BASE_DEC, NULL, 0x0,
17756         NULL, HFILL
17757       }
17758     },
17759     { &hf_compact_cell_sel_guar_constant_pwr_blks_exist,
17760       { "Exist_GUAR_CONSTANT_PWR_BLKS", "gsm_rlcmac.compact_cell_sel.guar_constant_pwr_blks_exist",
17761         FT_UINT8, BASE_DEC, NULL, 0x0,
17762         NULL, HFILL
17763       }
17764     },
17765     { &hf_psi3_additionr4_ccn_support_desc_exist,
17766       { "Exist_CCN_Support_Desc", "gsm_rlcmac.psi3_additionr4.ccn_support_desc_exist",
17767         FT_UINT8, BASE_DEC, NULL, 0x0,
17768         NULL, HFILL
17769       }
17770     },
17771     { &hf_psi3_additionr99_compact_info_exist,
17772       { "Exist_COMPACT_Info", "gsm_rlcmac.psi3_additionr99.compact_info_exist",
17773         FT_UINT8, BASE_DEC, NULL, 0x0,
17774         NULL, HFILL
17775       }
17776     },
17777     { &hf_psi3_additionr99_additionr4_exist,
17778       { "Exist_AdditionR4", "gsm_rlcmac.psi3_additionr99.additionr4_exist",
17779         FT_UINT8, BASE_DEC, NULL, 0x0,
17780         NULL, HFILL
17781       }
17782     },
17783     { &hf_psi3_additionr98_lsa_parameters_exist,
17784       { "Exist_LSA_Parameters", "gsm_rlcmac.psi3_additionr98.lsa_parameters_exist",
17785         FT_UINT8, BASE_DEC, NULL, 0x0,
17786         NULL, HFILL
17787       }
17788     },
17789     { &hf_psi3_additionr98_additionr99_exist,
17790       { "Exist_AdditionR99", "gsm_rlcmac.psi3_additionr98.additionr99_exist",
17791         FT_UINT8, BASE_DEC, NULL, 0x0,
17792         NULL, HFILL
17793       }
17794     },
17795     { &hf_psi3_additionr98_exist,
17796       { "Exist_AdditionR98", "gsm_rlcmac.psi3.additionr98_exist",
17797         FT_UINT8, BASE_DEC, NULL, 0x0,
17798         NULL, HFILL
17799       }
17800     },
17801     { &hf_measurementparams_multi_band_reporting_exist,
17802       { "Exist_MULTI_BAND_REPORTING", "gsm_rlcmac.measurementparams.multi_band_reporting_exist",
17803         FT_UINT8, BASE_DEC, NULL, 0x0,
17804         NULL, HFILL
17805       }
17806     },
17807     { &hf_measurementparams_serving_band_reporting_exist,
17808       { "Exist_SERVING_BAND_REPORTING", "gsm_rlcmac.measurementparams.serving_band_reporting_exist",
17809         FT_UINT8, BASE_DEC, NULL, 0x0,
17810         NULL, HFILL
17811       }
17812     },
17813     { &hf_measurementparams_scale_ord_exist,
17814       { "Exist_SCALE_ORD", "gsm_rlcmac.measurementparams.scale_ord_exist",
17815         FT_UINT8, BASE_DEC, NULL, 0x0,
17816         NULL, HFILL
17817       }
17818     },
17819     { &hf_measurementparams_offsetthreshold900_exist,
17820       { "Exist_OffsetThreshold900", "gsm_rlcmac.measurementparams.offsetthreshold900_exist",
17821         FT_UINT8, BASE_DEC, NULL, 0x0,
17822         NULL, HFILL
17823       }
17824     },
17825     { &hf_measurementparams_offsetthreshold1800_exist,
17826       { "Exist_OffsetThreshold1800", "gsm_rlcmac.measurementparams.offsetthreshold1800_exist",
17827         FT_UINT8, BASE_DEC, NULL, 0x0,
17828         NULL, HFILL
17829       }
17830     },
17831     { &hf_measurementparams_offsetthreshold400_exist,
17832       { "Exist_OffsetThreshold400", "gsm_rlcmac.measurementparams.offsetthreshold400_exist",
17833         FT_UINT8, BASE_DEC, NULL, 0x0,
17834         NULL, HFILL
17835       }
17836     },
17837     { &hf_measurementparams_offsetthreshold1900_exist,
17838       { "Exist_OffsetThreshold1900", "gsm_rlcmac.measurementparams.offsetthreshold1900_exist",
17839         FT_UINT8, BASE_DEC, NULL, 0x0,
17840         NULL, HFILL
17841       }
17842     },
17843     { &hf_measurementparams_offsetthreshold850_exist,
17844       { "Exist_OffsetThreshold850", "gsm_rlcmac.measurementparams.offsetthreshold850_exist",
17845         FT_UINT8, BASE_DEC, NULL, 0x0,
17846         NULL, HFILL
17847       }
17848     },
17849     { &hf_gprsmeasurementparams3g_psi5_existrepparamsfdd_exist,
17850       { "existRepParamsFDD", "gsm_rlcmac.gprsmeasurementparams3g_psi5.existrepparamsfdd_exist",
17851         FT_UINT8, BASE_DEC, NULL, 0x0,
17852         NULL, HFILL
17853       }
17854     },
17855     { &hf_gprsmeasurementparams3g_psi5_existreportingparamsfdd_exist,
17856       { "existReportingParamsFDD", "gsm_rlcmac.gprsmeasurementparams3g_psi5.existreportingparamsfdd_exist",
17857         FT_UINT8, BASE_DEC, NULL, 0x0,
17858         NULL, HFILL
17859       }
17860     },
17861     { &hf_gprsmeasurementparams3g_psi5_existmultiratreportingtdd_exist,
17862       { "existMultiratReportingTDD", "gsm_rlcmac.gprsmeasurementparams3g_psi5.existmultiratreportingtdd_exist",
17863         FT_UINT8, BASE_DEC, NULL, 0x0,
17864         NULL, HFILL
17865       }
17866     },
17867     { &hf_gprsmeasurementparams3g_psi5_existoffsetthresholdtdd_exist,
17868       { "existOffsetThresholdTDD", "gsm_rlcmac.gprsmeasurementparams3g_psi5.existoffsetthresholdtdd_exist",
17869         FT_UINT8, BASE_DEC, NULL, 0x0,
17870         NULL, HFILL
17871       }
17872     },
17873     { &hf_enh_reporting_parameters_ncc_permitted_exist,
17874       { "Exist_NCC_PERMITTED", "gsm_rlcmac.enh_reporting_parameters.ncc_permitted_exist",
17875         FT_UINT8, BASE_DEC, NULL, 0x0,
17876         NULL, HFILL
17877       }
17878     },
17879     { &hf_enh_reporting_parameters_gprsmeasurementparams_exist,
17880       { "Exist_GPRSMeasurementParams", "gsm_rlcmac.enh_reporting_parameters.gprsmeasurementparams_exist",
17881         FT_UINT8, BASE_DEC, NULL, 0x0,
17882         NULL, HFILL
17883       }
17884     },
17885     { &hf_enh_reporting_parameters_gprsmeasurementparams3g_exist,
17886       { "Exist_GPRSMeasurementParams3G", "gsm_rlcmac.enh_reporting_parameters.gprsmeasurementparams3g_exist",
17887         FT_UINT8, BASE_DEC, NULL, 0x0,
17888         NULL, HFILL
17889       }
17890     },
17891     { &hf_psi5_additions_offsetthreshold_700_exist,
17892       { "Exist_OffsetThreshold_700", "gsm_rlcmac.psi5_additions.offsetthreshold_700_exist",
17893         FT_UINT8, BASE_DEC, NULL, 0x0,
17894         NULL, HFILL
17895       }
17896     },
17897     { &hf_psi5_additions_offsetthreshold_810_exist,
17898       { "Exist_OffsetThreshold_810", "gsm_rlcmac.psi5_additions.offsetthreshold_810_exist",
17899         FT_UINT8, BASE_DEC, NULL, 0x0,
17900         NULL, HFILL
17901       }
17902     },
17903     { &hf_psi5_additions_gprs_additionalmeasurementparams3g_exist,
17904       { "Exist_GPRS_AdditionalMeasurementParams3G", "gsm_rlcmac.psi5_additions.gprs_additionalmeasurementparams3g_exist",
17905         FT_UINT8, BASE_DEC, NULL, 0x0,
17906         NULL, HFILL
17907       }
17908     },
17909     { &hf_psi5_additions_additionsr7_exist,
17910       { "Exist_AdditionsR7", "gsm_rlcmac.psi5_additions.additionsr7_exist",
17911         FT_UINT8, BASE_DEC, NULL, 0x0,
17912         NULL, HFILL
17913       }
17914     },
17915     { &hf_psi5_additionsr_enh_reporting_param_exist,
17916       { "Exist_ENH_Reporting_Param", "gsm_rlcmac.psi5_additionsr.enh_reporting_param_exist",
17917         FT_UINT8, BASE_DEC, NULL, 0x0,
17918         NULL, HFILL
17919       }
17920     },
17921     { &hf_psi5_additionsr_additionsr5_exist,
17922       { "Exist_AdditionsR5", "gsm_rlcmac.psi5_additionsr.additionsr5_exist",
17923         FT_UINT8, BASE_DEC, NULL, 0x0,
17924         NULL, HFILL
17925       }
17926     },
17927     { &hf_psi5_eixst_nc_meas_param_exist,
17928       { "Eixst_NC_Meas_Param", "gsm_rlcmac.psi5.eixst_nc_meas_param_exist",
17929         FT_UINT8, BASE_DEC, NULL, 0x0,
17930         NULL, HFILL
17931       }
17932     },
17933     { &hf_psi13_additions_lb_ms_txpwr_max_cch_exist,
17934       { "Exist_LB_MS_TXPWR_MAX_CCH", "gsm_rlcmac.psi13_additions.lb_ms_txpwr_max_cch_exist",
17935         FT_UINT8, BASE_DEC, NULL, 0x0,
17936         NULL, HFILL
17937       }
17938     },
17939     { &hf_psi13_additions_additionsr6_exist,
17940       { "Exist_AdditionsR6", "gsm_rlcmac.psi13_additions.additionsr6_exist",
17941         FT_UINT8, BASE_DEC, NULL, 0x0,
17942         NULL, HFILL
17943       }
17944     },
17945     { &hf_psi13_additionr_additionsr4_exist,
17946       { "Exist_AdditionsR4", "gsm_rlcmac.psi13_additionr.additionsr4_exist",
17947         FT_UINT8, BASE_DEC, NULL, 0x0,
17948         NULL, HFILL
17949       }
17950     },
17951     { &hf_psi13_ma_exist,
17952       { "Exist_MA", "gsm_rlcmac.psi13.ma_exist",
17953         FT_UINT8, BASE_DEC, NULL, 0x0,
17954         NULL, HFILL
17955       }
17956     },
17957     { &hf_pccf_additionsr8_additionsr9_exist,
17958       { "Exist_AdditionsR9", "gsm_rlcmac.pccf_additionsr8.additionsr9_exist",
17959         FT_UINT8, BASE_DEC, NULL, 0x0,
17960         NULL, HFILL
17961       }
17962     },
17963     { &hf_pccf_additionsr5_additionsr8_exist,
17964       { "Exist_AdditionsR8", "gsm_rlcmac.pccf_additionsr5.additionsr8_exist",
17965         FT_UINT8, BASE_DEC, NULL, 0x0,
17966         NULL, HFILL
17967       }
17968     },
17969     { &hf_pccf_additionsr99_additionsr5_exist,
17970       { "Exist_AdditionsR5", "gsm_rlcmac.pccf_additionsr99.additionsr5_exist",
17971         FT_UINT8, BASE_DEC, NULL, 0x0,
17972         NULL, HFILL
17973       }
17974     },
17975     { &hf_pmo_additionsr8_existadditionsr9_exist,
17976       { "existAdditionsR9", "gsm_rlcmac.pmo_additionsr8.existadditionsr9_exist",
17977         FT_UINT8, BASE_DEC, NULL, 0x0,
17978         NULL, HFILL
17979       }
17980     },
17981     { &hf_pmo_additionsr7_existadditionsr8_exist,
17982       { "existAdditionsR8", "gsm_rlcmac.pmo_additionsr7.existadditionsr8_exist",
17983         FT_UINT8, BASE_DEC, NULL, 0x0,
17984         NULL, HFILL
17985       }
17986     },
17987     { &hf_pmo_additionsr6_existadditionsr7_exist,
17988       { "existAdditionsR7", "gsm_rlcmac.pmo_additionsr6.existadditionsr7_exist",
17989         FT_UINT8, BASE_DEC, NULL, 0x0,
17990         NULL, HFILL
17991       }
17992     },
17993     { &hf_pmo_additionsr5_existadditionsr6_exist,
17994       { "existAdditionsR6", "gsm_rlcmac.pmo_additionsr5.existadditionsr6_exist",
17995         FT_UINT8, BASE_DEC, NULL, 0x0,
17996         NULL, HFILL
17997       }
17998     },
17999     { &hf_pcco_additionsr5_existadditionsr6_exist,
18000       { "existAdditionsR6", "gsm_rlcmac.pcco_additionsr5.existadditionsr6_exist",
18001         FT_UINT8, BASE_DEC, NULL, 0x0,
18002         NULL, HFILL
18003       }
18004     },
18005     { &hf_pmo_additionsr4_additionsr5_exist,
18006       { "Exist_AdditionsR5", "gsm_rlcmac.pmo_additionsr4.additionsr5_exist",
18007         FT_UINT8, BASE_DEC, NULL, 0x0,
18008         NULL, HFILL
18009       }
18010     },
18011     { &hf_pmo_additionsr99_additionsr4_exist,
18012       { "Exist_AdditionsR4", "gsm_rlcmac.pmo_additionsr99.additionsr4_exist",
18013         FT_UINT8, BASE_DEC, NULL, 0x0,
18014         NULL, HFILL
18015       }
18016     },
18017     { &hf_pcco_additionsr4_additionsr5_exist,
18018       { "Exist_AdditionsR5", "gsm_rlcmac.pcco_additionsr4.additionsr5_exist",
18019         FT_UINT8, BASE_DEC, NULL, 0x0,
18020         NULL, HFILL
18021       }
18022     },
18023     { &hf_target_cell_gsm_additionsr98_exist,
18024       { "Exist_AdditionsR98", "gsm_rlcmac.target_cell_gsm.additionsr98_exist",
18025         FT_UINT8, BASE_DEC, NULL, 0x0,
18026         NULL, HFILL
18027       }
18028     },
18029     { &hf_target_cell_3g_additionsr5_additionsr8_exist,
18030       { "Exist_AdditionsR8", "gsm_rlcmac.target_cell_3g_additionsr5.additionsr8_exist",
18031         FT_UINT8, BASE_DEC, NULL, 0x0,
18032         NULL, HFILL
18033       }
18034     },
18035     { &hf_target_cell_3g_additionsr5_exist,
18036       { "Exist_AdditionsR5", "gsm_rlcmac.target_cell_3g.additionsr5_exist",
18037         FT_UINT8, BASE_DEC, NULL, 0x0,
18038         NULL, HFILL
18039       }
18040     },
18041     { &hf_pmr_additionsr8_additionsr9_exist,
18042       { "Exist_AdditionsR9", "gsm_rlcmac.pmr_additionsr8.additionsr9_exist",
18043         FT_UINT8, BASE_DEC, NULL, 0x0,
18044         NULL, HFILL
18045       }
18046     },
18047     { &hf_pmr_additionsr5_additionsr8_exist,
18048       { "Exist_AdditionsR8", "gsm_rlcmac.pmr_additionsr5.additionsr8_exist",
18049         FT_UINT8, BASE_DEC, NULL, 0x0,
18050         NULL, HFILL
18051       }
18052     },
18053     { &hf_pmr_additionsr99_additionsr5_exist,
18054       { "Exist_AdditionsR5", "gsm_rlcmac.pmr_additionsr99.additionsr5_exist",
18055         FT_UINT8, BASE_DEC, NULL, 0x0,
18056         NULL, HFILL
18057       }
18058     },
18059     { &hf_pemr_additionsr8_additionsr9_exist,
18060       { "Exist_AdditionsR9", "gsm_rlcmac.pemr_additionsr8.additionsr9_exist",
18061         FT_UINT8, BASE_DEC, NULL, 0x0,
18062         NULL, HFILL
18063       }
18064     },
18065     { &hf_pemr_additionsr5_additionsr8_exist,
18066       { "Exist_AdditionsR8", "gsm_rlcmac.pemr_additionsr5.additionsr8_exist",
18067         FT_UINT8, BASE_DEC, NULL, 0x0,
18068         NULL, HFILL
18069       }
18070     },
18071     { &hf_packet_enh_measurement_report_additionsr5_exist,
18072       { "Exist_AdditionsR5", "gsm_rlcmac.packet_enh_measurement_report.additionsr5_exist",
18073         FT_UINT8, BASE_DEC, NULL, 0x0,
18074         NULL, HFILL
18075       }
18076     },
18077     { &hf_packet_measurement_order_additionsr98_exist,
18078       { "Exist_AdditionsR98", "gsm_rlcmac.packet_measurement_order.additionsr98_exist",
18079         FT_UINT8, BASE_DEC, NULL, 0x0,
18080         NULL, HFILL
18081       }
18082     },
18083     { &hf_packet_cell_change_notification_additionsr6_exist,
18084       { "Exist_AdditionsR6", "gsm_rlcmac.packet_cell_change_notification.additionsr6_exist",
18085         FT_UINT8, BASE_DEC, NULL, 0x0,
18086         NULL, HFILL
18087       }
18088     },
18089     { &hf_psi1_additionsr99_additionsr6_exist,
18090       { "Exist_AdditionsR6", "gsm_rlcmac.psi1_additionsr99.additionsr6_exist",
18091         FT_UINT8, BASE_DEC, NULL, 0x0,
18092         NULL, HFILL
18093       }
18094     },
18095     { &hf_packet_paging_request_repeated_page_info_exist,
18096       { "Repeated_Page_info Exist", "gsm_rlcmac.packet_paging_request.repeated_page_info_exist",
18097         FT_UINT8, BASE_DEC, NULL, 0x0,
18098         NULL, HFILL
18099       }
18100     },
18101     { &hf_neighbourcelllist_parameters_exist,
18102       { "Parameters Exist", "gsm_rlcmac.neighbourcelllist.parameters_exist",
18103         FT_UINT8, BASE_DEC, NULL, 0x0,
18104         NULL, HFILL
18105       }
18106     },
18107     { &hf_nc_frequency_list_add_frequency_exist,
18108       { "Add_Frequency Exist", "gsm_rlcmac.nc_frequency_list.add_frequency_exist",
18109         FT_UINT8, BASE_DEC, NULL, 0x0,
18110         NULL, HFILL
18111       }
18112     },
18113     { &hf_utran_fdd_description_cellparams_exist,
18114       { "CellParams Exist", "gsm_rlcmac.utran_fdd_description.cellparams_exist",
18115         FT_UINT8, BASE_DEC, NULL, 0x0,
18116         NULL, HFILL
18117       }
18118     },
18119     { &hf_utran_tdd_description_cellparams_exist,
18120       { "CellParams Exist", "gsm_rlcmac.utran_tdd_description.cellparams_exist",
18121         FT_UINT8, BASE_DEC, NULL, 0x0,
18122         NULL, HFILL
18123       }
18124     },
18125     { &hf_nc_lu_modeonlycapablecelllist_add_lu_modeonlyfrequencylist_exist,
18126       { "Add_lu_ModeOnlyFrequencyList Exist", "gsm_rlcmac.nc_lu_modeonlycapablecelllist.add_lu_modeonlyfrequencylist_exist",
18127         FT_UINT8, BASE_DEC, NULL, 0x0,
18128         NULL, HFILL
18129       }
18130     },
18131     { &hf_priorityparametersdescription3g_pmo_repeatedutran_priorityparameters_a_exist,
18132       { "RepeatedUTRAN_PriorityParameters_a Exist", "gsm_rlcmac.priorityparametersdescription3g_pmo.repeatedutran_priorityparameters_a_exist",
18133         FT_UINT8, BASE_DEC, NULL, 0x0,
18134         NULL, HFILL
18135       }
18136     },
18137     { &hf_repeatedeutran_neighbourcells_eutran_cells_a_exist,
18138       { "EUTRAN_Cells_a Exist", "gsm_rlcmac.repeatedeutran_neighbourcells.eutran_cells_a_exist",
18139         FT_UINT8, BASE_DEC, NULL, 0x0,
18140         NULL, HFILL
18141       }
18142     },
18143     { &hf_pcid_group_ie_pcid_pattern_a_exist,
18144       { "PCID_Pattern_a Exist", "gsm_rlcmac.pcid_group_ie.pcid_pattern_a_exist",
18145         FT_UINT8, BASE_DEC, NULL, 0x0,
18146         NULL, HFILL
18147       }
18148     },
18149     { &hf_repeatedeutran_notallowedcells_eutran_frequency_index_a_exist,
18150       { "EUTRAN_FREQUENCY_INDEX_a Exist", "gsm_rlcmac.repeatedeutran_notallowedcells.eutran_frequency_index_a_exist",
18151         FT_UINT8, BASE_DEC, NULL, 0x0,
18152         NULL, HFILL
18153       }
18154     },
18155     { &hf_repeatedeutran_pcid_to_ta_mapping_pcid_tota_mapping_a_exist,
18156       { "PCID_ToTA_Mapping_a Exist", "gsm_rlcmac.repeatedeutran_pcid_to_ta_mapping.pcid_tota_mapping_a_exist",
18157         FT_UINT8, BASE_DEC, NULL, 0x0,
18158         NULL, HFILL
18159       }
18160     },
18161     { &hf_repeatedeutran_pcid_to_ta_mapping_eutran_frequency_index_a_exist,
18162       { "EUTRAN_FREQUENCY_INDEX_a Exist", "gsm_rlcmac.repeatedeutran_pcid_to_ta_mapping.eutran_frequency_index_a_exist",
18163         FT_UINT8, BASE_DEC, NULL, 0x0,
18164         NULL, HFILL
18165       }
18166     },
18167     { &hf_eutran_parametersdescription_pmo_repeatedeutran_neighbourcells_a_exist,
18168       { "RepeatedEUTRAN_NeighbourCells_a Exist", "gsm_rlcmac.eutran_parametersdescription_pmo.repeatedeutran_neighbourcells_a_exist",
18169         FT_UINT8, BASE_DEC, NULL, 0x0,
18170         NULL, HFILL
18171       }
18172     },
18173     { &hf_eutran_parametersdescription_pmo_repeatedeutran_notallowedcells_a_exist,
18174       { "RepeatedEUTRAN_NotAllowedCells_a Exist", "gsm_rlcmac.eutran_parametersdescription_pmo.repeatedeutran_notallowedcells_a_exist",
18175         FT_UINT8, BASE_DEC, NULL, 0x0,
18176         NULL, HFILL
18177       }
18178     },
18179     { &hf_eutran_parametersdescription_pmo_repeatedeutran_pcid_to_ta_mapping_a_exist,
18180       { "RepeatedEUTRAN_PCID_to_TA_mapping_a Exist", "gsm_rlcmac.eutran_parametersdescription_pmo.repeatedeutran_pcid_to_ta_mapping_a_exist",
18181         FT_UINT8, BASE_DEC, NULL, 0x0,
18182         NULL, HFILL
18183       }
18184     },
18185     { &hf_psc_group_psc_pattern_exist,
18186       { "PSC_Pattern Exist", "gsm_rlcmac.psc_group.psc_pattern_exist",
18187         FT_UINT8, BASE_DEC, NULL, 0x0,
18188         NULL, HFILL
18189       }
18190     },
18191     { &hf_threeg_csg_description_threeg_csg_description_body_exist,
18192       { "ThreeG_CSG_Description_Body Exist", "gsm_rlcmac.threeg_csg_description.threeg_csg_description_body_exist",
18193         FT_UINT8, BASE_DEC, NULL, 0x0,
18194         NULL, HFILL
18195       }
18196     },
18197     { &hf_eutran_csg_description_eutran_csg_description_body_exist,
18198       { "EUTRAN_CSG_Description_Body Exist", "gsm_rlcmac.eutran_csg_description.eutran_csg_description_body_exist",
18199         FT_UINT8, BASE_DEC, NULL, 0x0,
18200         NULL, HFILL
18201       }
18202     },
18203     { &hf_enh_cell_reselect_param_desp_repeated_eutran_enhanced_cell_reselection_parameters_exist,
18204       { "Repeated_EUTRAN_Enhanced_Cell_Reselection_Parameters Exist", "gsm_rlcmac.enh_cell_reselect_param_desp.repeated_eutran_enhanced_cell_reselection_parameters_exist",
18205         FT_UINT8, BASE_DEC, NULL, 0x0,
18206         NULL, HFILL
18207       }
18208     },
18209     { &hf_threeg_individual_priority_parameters_description_repeated_individual_utran_priority_parameters_exist,
18210       { "Repeated_Individual_UTRAN_Priority_Parameters Exist", "gsm_rlcmac.threeg_individual_priority_parameters_description.repeated_individual_utran_priority_parameters_exist",
18211         FT_UINT8, BASE_DEC, NULL, 0x0,
18212         NULL, HFILL
18213       }
18214     },
18215     { &hf_eutran_individual_priority_parameters_description_repeated_individual_eutran_priority_parameters_exist,
18216       { "Repeated_Individual_EUTRAN_Priority_Parameters Exist", "gsm_rlcmac.eutran_individual_priority_parameters_description.repeated_individual_eutran_priority_parameters_exist",
18217         FT_UINT8, BASE_DEC, NULL, 0x0,
18218         NULL, HFILL
18219       }
18220     },
18221     { &hf_lsa_id_info_lsa_id_info_elements_exist,
18222       { "LSA_ID_Info_Elements Exist", "gsm_rlcmac.lsa_id_info.lsa_id_info_elements_exist",
18223         FT_UINT8, BASE_DEC, NULL, 0x0,
18224         NULL, HFILL
18225       }
18226     },
18227     { &hf_compact_info_compact_neighbour_cell_param_exist,
18228       { "COMPACT_Neighbour_Cell_Param Exist", "gsm_rlcmac.compact_info.compact_neighbour_cell_param_exist",
18229         FT_UINT8, BASE_DEC, NULL, 0x0,
18230         NULL, HFILL
18231       }
18232     },
18233 
18234     { &hf_packet_access_reject_reject_exist,
18235       { "Reject[1] Exist", "gsm_rlcmac.packet_access_reject.reject_exist",
18236         FT_UINT8, BASE_DEC, NULL, 0x0,
18237         NULL, HFILL
18238       }
18239     },
18240     { &hf_enh_nc_measurement_report_repeatedinvalid_bsic_info_exist,
18241       { "RepeatedInvalid_BSIC_Info[0] Exist", "gsm_rlcmac.enh_nc_measurement_report.repeatedinvalid_bsic_info_exist",
18242         FT_UINT8, BASE_DEC, NULL, 0x0,
18243         NULL, HFILL
18244       }
18245     },
18246     { &hf_nonhoppingpccch_carriers_exist,
18247       { "Carriers[0] Exist", "gsm_rlcmac.nonhoppingpccch.carriers_exist",
18248         FT_UINT8, BASE_DEC, NULL, 0x0,
18249         NULL, HFILL
18250       }
18251     },
18252     { &hf_psi2_reference_frequency_exist,
18253       { "Reference_Frequency[0] Exist", "gsm_rlcmac.psi2.reference_frequency_exist",
18254         FT_UINT8, BASE_DEC, NULL, 0x0,
18255         NULL, HFILL
18256       }
18257     },
18258     { &hf_psi2_gprs_ma_exist,
18259       { "GPRS_MA[0] Exist", "gsm_rlcmac.psi2.gprs_ma_exist",
18260         FT_UINT8, BASE_DEC, NULL, 0x0,
18261         NULL, HFILL
18262       }
18263     },
18264     { &hf_psi2_pccch_description_exist,
18265       { "PCCCH_Description[0] Exist", "gsm_rlcmac.psi2.pccch_description_exist",
18266         FT_UINT8, BASE_DEC, NULL, 0x0,
18267         NULL, HFILL
18268       }
18269     },
18270 
18271 
18272     { &hf_ec_dl_message_type,
18273       { "MESSAGE_TYPE", "gsm_rlcmac.dl.ec_message_type",
18274         FT_UINT8, BASE_DEC, VALS(ec_dl_rlc_message_type_vals), 0x0,
18275         NULL, HFILL
18276       }
18277     },
18278 
18279     { &hf_used_dl_coverage_class,
18280       { "USED_DL_COVERAGE_CLASS", "gsm_rlcmac.dl.used_dl_coverage_class",
18281         FT_UINT8, BASE_DEC, VALS(ec_cc_vals), 0x0,
18282         NULL, HFILL
18283       }
18284     },
18285     { &hf_ec_frequency_parameters_exist,
18286       { "EC_FREQUENCY_PARAMETERS_EXIST", "gsm_rlcmac.dl.ec_frequency_parameters_exist",
18287         FT_UINT8, BASE_DEC, NULL, 0x0,
18288         NULL, HFILL
18289       }
18290     },
18291     { &hf_ec_ma_number,
18292       { "EC_MOBILE_ALLOCATION_SET", "gsm_rlcmac.dl.ec_ma_number",
18293         FT_UINT8, BASE_DEC, NULL, 0x0,
18294         NULL, HFILL
18295       }
18296     },
18297     { &hf_primary_tsc_set,
18298       { "PRIMARY_TSC_SET", "gsm_rlcmac.dl.primary_tsc_set",
18299         FT_UINT8, BASE_DEC, NULL, 0x0,
18300         NULL, HFILL
18301       }
18302     },
18303     { &hf_dl_coverage_class,
18304       { "DL_COVERAGE_CLASS (Assignment)", "gsm_rlcmac.dl.dl_coverage_class",
18305         FT_UINT8, BASE_DEC, VALS(ec_cc_vals), 0x0,
18306         NULL, HFILL
18307       }
18308     },
18309     { &hf_starting_dl_timeslot,
18310       { "STARTING_DL_TIMESLOT", "gsm_rlcmac.dl.starting_dl_timeslot",
18311         FT_UINT8, BASE_DEC, NULL, 0x0,
18312         NULL, HFILL
18313       }
18314     },
18315     { &hf_timeslot_multiplicator,
18316       { "TIMESLOT_MULTIPLICATOR", "gsm_rlcmac.dl.ec_timeslot_multiplicator",
18317         FT_UINT8, BASE_DEC, NULL, 0x0,
18318         NULL, HFILL
18319       }
18320     },
18321     { &hf_ul_coverage_class,
18322       { "UL_COVERAGE_CLASS (Assignment)", "gsm_rlcmac.dl.ul_coverage_class",
18323         FT_UINT8, BASE_DEC, VALS(ec_cc_vals), 0x0,
18324         NULL, HFILL
18325       }
18326     },
18327     { &hf_starting_ul_timeslot_offset,
18328       { "STARTING_UL_TIMESLOT_OFFSET", "gsm_rlcmac.dl.starting_ul_timeslot_offset",
18329         FT_UINT8, BASE_DEC, NULL, 0x0,
18330         NULL, HFILL
18331       }
18332     },
18333     { &hf_ec_packet_timing_advance_exist,
18334       { "EC_PACKET_TIMING_ADVANCE Exist", "gsm_rlcmac.dl.ec_packet_timing_advance_exist",
18335         FT_UINT8, BASE_DEC, NULL, 0x0,
18336         NULL, HFILL
18337       }
18338     },
18339     { &hf_ec_p0_and_pr_mode_exist,
18340       { "P0_AND_PR_MODE Exist", "gsm_rlcmac.dl.ec_p0_and_pr_mode_exist",
18341         FT_UINT8, BASE_DEC, NULL, 0x0,
18342         NULL, HFILL
18343       }
18344     },
18345     { &hf_ec_gamma_exist,
18346       { "GAMMA Exist", "gsm_rlcmac.dl.ec_gamma_exist",
18347         FT_UINT8, BASE_DEC, NULL, 0x0,
18348         NULL, HFILL
18349       }
18350     },
18351     { &hf_ec_alpha_enable,
18352       { "ALPHA Enable", "gsm_rlcmac.dl.ec_alpha_enable",
18353         FT_UINT8, BASE_DEC, NULL, 0x0,
18354         NULL, HFILL
18355       }
18356     },
18357 
18358     { &hf_ec_acknack_description,
18359       { "EC_ACKNACK_DESCRIPTION", "gsm_rlcmac.dl.ec_acknack_description",
18360         FT_UINT8, BASE_DEC, NULL, 0x0,
18361         NULL, HFILL
18362       }
18363     },
18364 
18365     { &hf_ec_delay_next_ul_rlc_data_block,
18366       { "EC_DELAY_NEXT_UL_RLC_DATA_BLOCK", "gsm_rlcmac.dl.ec_delay_next_ul_rlc_data_block",
18367         FT_UINT8, BASE_DEC, NULL, 0x0,
18368         NULL, HFILL
18369       }
18370     },
18371 
18372     { &hf_ec_delay_next_ul_rlc_data_block_exist,
18373       { "EC_DELAY_NEXT_UL_RLC_DATA_BLOCK_EXIST", "gsm_rlcmac.dl.ec_delay_next_ul_rlc_data_block_exist",
18374         FT_UINT8, BASE_DEC, NULL, 0x0,
18375         NULL, HFILL
18376       }
18377     },
18378 
18379     { &hf_ec_bsn_offset_exist,
18380       { "EC_BSN_OFFSET Exist", "gsm_rlcmac.dl.ec_bsn_offset_exist",
18381         FT_UINT8, BASE_DEC, NULL, 0x0,
18382         NULL, HFILL
18383       }
18384     },
18385 
18386     { &hf_ec_bsn_offset,
18387       { "EC_BSN_OFFSET", "gsm_rlcmac.dl.ec_bsn_offset",
18388         FT_UINT8, BASE_DEC, NULL, 0x0,
18389         NULL, HFILL
18390       }
18391     },
18392 
18393     { &hf_ec_start_first_ul_rlc_data_block,
18394       { "EC_START_FIRST_UL_RLC_DATA_BLOCK", "gsm_rlcmac.dl.ec_start_first_ul_rlc_data_block",
18395         FT_UINT8, BASE_DEC, NULL, 0x0,
18396         NULL, HFILL
18397       }
18398     },
18399 
18400     { &hf_ec_egprs_channel_coding_command_exist,
18401       { "EC_EGPRS_CHANNEL_CODING_COMMAND_EXIST", "gsm_rlcmac.dl.ec_egprs_channel_coding_command_exist",
18402         FT_UINT8, BASE_DEC, NULL, 0x0,
18403         NULL, HFILL
18404       }
18405     },
18406 
18407     { &hf_ec_puan_cc_ts_exist,
18408       { "EC_PUAN_CC_TS Exist", "gsm_rlcmac.dl.ec_puan_cc_ts_exist",
18409         FT_UINT8, BASE_DEC, NULL, 0x0,
18410         NULL, HFILL
18411       }
18412     },
18413 
18414     { &hf_starting_ul_timeslot,
18415       { "STARTING_UL_TIMESLOT", "gsm_rlcmac.dl.starting_ul_timeslot",
18416         FT_UINT8, BASE_DEC, NULL, 0x0,
18417         NULL, HFILL
18418       }
18419     },
18420 
18421     { &hf_starting_dl_timeslot_offset,
18422       { "STARTING_DL_TIMESLOT_OFFSET", "gsm_rlcmac.dl.starting_dl_timeslot_offset",
18423         FT_UINT8, BASE_DEC, NULL, 0x0,
18424         NULL, HFILL
18425       }
18426     },
18427 
18428     { &hf_ec_puan_exist_contres_tlli,
18429       { "EC_PUAN_EXIST_CONTRES_TLLI", "gsm_rlcmac.dl.ec_puan_exist_contres_tlli",
18430         FT_UINT8, BASE_DEC, NULL, 0x0,
18431         NULL, HFILL
18432       }
18433     },
18434 
18435     { &hf_ec_puan_monitor_ec_pacch,
18436       { "EC_PUAN_MONITOR_EC_PACCH", "gsm_rlcmac.dl.ec_puan_monitor_ec_pacch",
18437         FT_UINT8, BASE_DEC, NULL, 0x0,
18438         NULL, HFILL
18439       }
18440     },
18441 
18442     { &hf_t3238,
18443       { "T3238", "gsm_rlcmac.dl.t3238",
18444         FT_UINT8, BASE_DEC, NULL, 0x0,
18445         NULL, HFILL
18446       }
18447     },
18448 
18449     { &hf_ec_initial_waiting_time,
18450       { "EC_INITIAL_WAITING_TIME", "gsm_rlcmac.dl.ec_initial_waiting_time",
18451         FT_UINT8, BASE_DEC, NULL, 0x0,
18452         NULL, HFILL
18453       }
18454     },
18455 
18456     { &hf_ec_pacch_monitoring_pattern,
18457       { "EC_PACCH_MONITORING_PATTERN", "gsm_rlcmac.dl.ec_pacch_monitoring_pattern",
18458         FT_UINT8, BASE_DEC, NULL, 0x0,
18459         NULL, HFILL
18460       }
18461     },
18462 
18463     { &hf_ec_puan_fua_dealy_exist,
18464       { "EC_PUAN_FUA_DEALY Exist", "gsm_rlcmac.dl.ec_puan_fua_dealy_exist",
18465         FT_UINT8, BASE_DEC, NULL, 0x0,
18466         NULL, HFILL
18467       }
18468     },
18469 
18470     { &hf_ec_reject_wait_exist,
18471       { "EC_WAIT Exist", "gsm_rlcmac.reject.ec_wait_exist", /* Check this */
18472         FT_UINT8, BASE_DEC, NULL, 0x0,
18473         NULL, HFILL
18474       }
18475     },
18476 
18477     { &hf_ec_packet_access_reject_count,
18478       { "Number of Rejects", "gsm_rlcmac.dl.ec_packet_access_reject_count",
18479         FT_UINT8, BASE_DEC, NULL, 0x0,
18480         NULL, HFILL
18481       }
18482     },
18483 
18484     { &hf_ec_t_avg_t_exist,
18485       { "EC_T_AVG_T Exist", "gsm_rlcmac.dl.ec_t_avg_t_exist",
18486         FT_UINT8, BASE_DEC, NULL, 0x0,
18487         NULL, HFILL
18488       }
18489     },
18490 
18491     { &hf_ec_uplink_tfi_exist,
18492       { "EC_UPLINK_TFI Exist", "gsm_rlcmac.dl.ec_uplink_tfi_exist",
18493         FT_UINT8, BASE_DEC, NULL, 0x0,
18494         NULL, HFILL
18495       }
18496     },
18497 
18498     { &hf_ec_overlaid_cdma_code,
18499       { "EC_OVERLAID_CDMA_CODE", "gsm_rlcmac.dl.ec_overlaid_cdma_code",
18500         FT_UINT8, BASE_DEC, NULL, 0x0,
18501         NULL, HFILL
18502       }
18503     },
18504     { &hf_cc,
18505       { "COVERAGE_CLASS", "gsm_rlcmac.dl.cc",
18506         FT_UINT8, BASE_DEC, VALS(ec_cc_vals), 0x0,
18507         NULL, HFILL
18508       }
18509     },
18510     { &hf_ecs_p,
18511       { "ECS_P", "gsm_rlcmac.dl.ecs_p",
18512         FT_UINT8, BASE_DEC, VALS(ecs_p_vals), 0x0,
18513         NULL, HFILL
18514       }
18515     },
18516     { &hf_ul_foi,
18517       { "FOI", "gsm_rlcmac.ul.foi",
18518         FT_UINT8, BASE_DEC, VALS(foi_vals), 0x0,
18519         NULL, HFILL
18520       }
18521     },
18522     { &hf_ul_ri,
18523       { "RI", "gsm_rlcmac.ul.ri",
18524         FT_UINT8, BASE_DEC, VALS(ri_vals), 0x0,
18525         NULL, HFILL
18526       }
18527     },
18528     { &hf_rtlli,
18529       { "rTLLI", "gsm_rlcmac.ul.rtlli",
18530         FT_UINT8, BASE_DEC, VALS(rtlli_vals), 0x0,
18531         NULL, HFILL
18532       }
18533     },
18534     { &hf_ec_ul_message_type,
18535       { "MESSAGE_TYPE", "gsm_rlcmac.ul.ec_message_type",
18536         FT_UINT8, BASE_DEC, VALS(ec_ul_rlc_message_type_vals), 0x0,
18537         NULL, HFILL
18538       }
18539     },
18540 
18541     { &hf_ec_dl_cc_est,
18542       { "DL_CC_EST", "gsm_rlcmac.ul.dl_cc_est",
18543         FT_UINT8, BASE_DEC, VALS(ec_cc_est_vals), 0x0,
18544         NULL, HFILL
18545       }
18546     },
18547 
18548     { &hf_ec_channel_request_description_exist,
18549       { "EC_CHANNEL_REQUEST_DESCRIPTION_EXIST", "gsm_rlcmac.ul.ec_channel_request_description_exist",
18550         FT_UINT8, BASE_DEC, NULL, 0x0,
18551         NULL, HFILL
18552       }
18553     },
18554 
18555     { &hf_ec_priority,
18556       { "EC_PRIORITY", "gsm_rlcmac.ul.ec_priority",
18557         FT_UINT8, BASE_DEC, NULL, 0x0,
18558         NULL, HFILL
18559       }
18560     },
18561 
18562     { &hf_ec_number_of_ul_data_blocks,
18563       { "EC_NUMBER_OF_UL_DATA_BLOCKS", "gsm_rlcmac.ul.ec_number_of_ul_data_blocks",
18564         FT_UINT8, BASE_DEC, NULL, 0x0,
18565         NULL, HFILL
18566       }
18567     },
18568 
18569     { &hf_ec_channel_quality_report_exist,
18570       { "EC_CHANNEL_QUALITY_REPORT Exist", "gsm_rlcmac.ul.ec_channel_quality_report_exist",
18571         FT_UINT8, BASE_DEC, NULL, 0x0,
18572         NULL, HFILL
18573       }
18574     },
18575 
18576     { &hf_ec_qual_gmsk_exist,
18577       { "EC_QUAL_GMSK Exist", "gsm_rlcmac.ul.ec_qual_gmsk_exist",
18578         FT_UINT8, BASE_DEC, NULL, 0x0,
18579         NULL, HFILL
18580       }
18581     },
18582 
18583     { &hf_ec_qual_8psk_exist,
18584       { "EC_QUAL_8PSK Exist", "gsm_rlcmac.ul.ec_qual_8psk_exist",
18585         FT_UINT8, BASE_DEC, NULL, 0x0,
18586         NULL, HFILL
18587       }
18588     },
18589 
18590       /* Generated from convert_proto_tree_add_text.pl */
18591 #if 0
18592       { &hf_gsm_rlcmac_scrambling_code, { "Scrambling Code", "gsm_rlcmac.scrambling_code", FT_UINT32, BASE_DEC, NULL, 0x0, NULL, HFILL }},
18593       { &hf_gsm_rlcmac_diversity, { "Diversity", "gsm_rlcmac.diversity", FT_UINT32, BASE_DEC, NULL, 0x0, NULL, HFILL }},
18594 #endif
18595       { &hf_gsm_rlcmac_cell_parameter, { "Cell Parameter", "gsm_rlcmac.cell_parameter", FT_UINT32, BASE_DEC, NULL, 0x0, NULL, HFILL }},
18596       { &hf_gsm_rlcmac_sync_case_tstd, { "Sync Case TSTD", "gsm_rlcmac.sync_case_tstd", FT_UINT32, BASE_DEC, NULL, 0x0, NULL, HFILL }},
18597       { &hf_gsm_rlcmac_diversity_tdd, { "Diversity TDD", "gsm_rlcmac.diversity_tdd", FT_UINT32, BASE_DEC, NULL, 0x0, NULL, HFILL }},
18598   };
18599 
18600   static ei_register_info ei[] = {
18601      { &ei_li, { "gsm_rlcmac.li.too_many", PI_UNDECODED, PI_ERROR, "Too many LIs, corresponding blocks will not be decoded", EXPFILL }},
18602       /* Generated from convert_proto_tree_add_text.pl */
18603       { &ei_gsm_rlcmac_unexpected_header_extension, { "gsm_rlcmac.unexpected_header_extension", PI_MALFORMED, PI_ERROR, "Unexpected header extension, dissection abandoned", EXPFILL }},
18604       { &ei_gsm_rlcmac_coding_scheme_invalid, { "gsm_rlcmac.coding_scheme.invalid", PI_PROTOCOL, PI_WARN, "Invalid coding scheme", EXPFILL }},
18605       { &ei_gsm_rlcmac_gprs_fanr_header_dissection_not_supported, { "gsm_rlcmac.gprs_fanr_header_dissection_not_supported", PI_UNDECODED, PI_WARN, "GPRS FANR Header dissection not supported (yet)", EXPFILL }},
18606       { &ei_gsm_rlcmac_egprs_header_type_not_handled, { "gsm_rlcmac.egprs_header_type_not_handled", PI_UNDECODED, PI_WARN, "EGPRS Header Type not handled (yet)", EXPFILL }},
18607       { &ei_gsm_rlcmac_coding_scheme_unknown, { "gsm_rlcmac.coding_scheme.unknown", PI_PROTOCOL, PI_WARN, "GSM RLCMAC unknown coding scheme", EXPFILL }},
18608       { &ei_gsm_rlcmac_unknown_pacch_access_burst, { "gsm_rlcmac.unknown_pacch_access_burst", PI_PROTOCOL, PI_WARN, "Unknown PACCH access burst", EXPFILL }},
18609       { &ei_gsm_rlcmac_stream_not_supported, { "gsm_rlcmac.stream_not_supported", PI_UNDECODED, PI_WARN, "Stream not supported", EXPFILL }},
18610   };
18611 
18612   expert_module_t* expert_gsm_rlcmac;
18613 
18614   /* Register the protocol name and description */
18615   proto_gsm_rlcmac = proto_register_protocol("Radio Link Control, Medium Access Control, 3GPP TS44.060",
18616                                              "GSM RLC MAC", "gsm_rlcmac");
18617 
18618   /* Required function calls to register the header fields and subtrees used */
18619   proto_register_field_array(proto_gsm_rlcmac, hf, array_length(hf));
18620   proto_register_subtree_array(ett, array_length(ett));
18621   expert_gsm_rlcmac = expert_register_protocol(proto_gsm_rlcmac);
18622   expert_register_field_array(expert_gsm_rlcmac, ei, array_length(ei));
18623   register_dissector("gsm_rlcmac_ul", dissect_gsm_rlcmac_uplink, proto_gsm_rlcmac);
18624   register_dissector("gsm_rlcmac_dl", dissect_gsm_rlcmac_downlink, proto_gsm_rlcmac);
18625   register_dissector("gsm_ec_rlcmac_ul", dissect_gsm_ec_rlcmac_uplink, proto_gsm_rlcmac);
18626   register_dissector("gsm_ec_rlcmac_dl", dissect_gsm_ec_rlcmac_downlink, proto_gsm_rlcmac);
18627 }
18628 
proto_reg_handoff_gsm_rlcmac(void)18629 void proto_reg_handoff_gsm_rlcmac(void)
18630 {
18631   lte_rrc_dl_dcch_handle = find_dissector("lte_rrc.dl_dcch");
18632   rrc_irat_ho_to_utran_cmd_handle = find_dissector("rrc.irat.ho_to_utran_cmd");
18633 }
18634 
18635 /*
18636  * Editor modelines
18637  *
18638  * Local Variables:
18639  * c-basic-offset: 2
18640  * tab-width: 8
18641  * indent-tabs-mode: nil
18642  * End:
18643  *
18644  * ex: set shiftwidth=2 tabstop=8 expandtab:
18645  * :indentSize=2:tabSize=8:noTabs=true:
18646  */
18647