FreeCalypso > hg > fc-magnetite
diff cdg3/cdginc-locosto/m_rr_com.h @ 16:c15047b3d00d
cdg3: import from freecalypso-citrine/cdg
author | Mychaela Falconia <falcon@freecalypso.org> |
---|---|
date | Tue, 27 Sep 2016 16:27:34 +0000 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/cdg3/cdginc-locosto/m_rr_com.h Tue Sep 27 16:27:34 2016 +0000 @@ -0,0 +1,1513 @@ +/* ++--------------------------------------------------------------------------+ +| PROJECT : PROTOCOL STACK | +| FILE : m_rr_com.h | +| SOURCE : "msg\rr_com.mdf" | +| LastModified : "2004-01-16" | +| IdAndVersion : "8010.606.02.008" | +| SrcFileTime : "Wed Nov 28 10:20:42 2007" | +| Generated by CCDGEN_2.5.5A on Thu Sep 25 09:18:52 2014 | +| !!DO NOT MODIFY!!DO NOT MODIFY!!DO NOT MODIFY!! | ++--------------------------------------------------------------------------+ +*/ + +/* PRAGMAS + * PREFIX : NONE + * COMPATIBILITY_DEFINES : NO (require PREFIX) + * ALWAYS_ENUM_IN_VAL_FILE: NO + * ENABLE_GROUP: NO + * CAPITALIZE_TYPENAME: NO + * CCDNAME: RR_COM + */ + + +#ifndef M_RR_COM_H +#define M_RR_COM_H + + +#define CDG_ENTER__M_RR_COM_H + +#define CDG_ENTER__FILENAME _M_RR_COM_H +#define CDG_ENTER__M_RR_COM_H__FILE_TYPE CDGINC +#define CDG_ENTER__M_RR_COM_H__LAST_MODIFIED _2004_01_16 +#define CDG_ENTER__M_RR_COM_H__ID_AND_VERSION _8010_606_02_008 + +#define CDG_ENTER__M_RR_COM_H__SRC_FILE_TIME _Wed_Nov_28_10_20_42_2007 + +#include "CDG_ENTER.h" + +#undef CDG_ENTER__M_RR_COM_H + +#undef CDG_ENTER__FILENAME + + +#include "m_rr_com.val" + +#ifndef __T_a5_bits__ +#define __T_a5_bits__ +/* + * A5 bits + * CCDGEN:WriteStruct_Count==1 + */ +typedef struct +{ + U8 a5_1; /*< 0: 1> A5/1; Encryption algorithm A5/1. Note inverse logic for the A5/1 encryption algorithm between classmark 1 and 2 on the one hand (available=0 or not=1) and radio access capability on the other hand (available=1 or not=0). */ + U8 a5_2; /*< 1: 1> A5/2; Encryption algorithm A5/2 available (1) or not (0) */ + U8 a5_3; /*< 2: 1> A5/3; Encryption algorithm A5/3 available (1) or not (0) */ + U8 a5_4; /*< 3: 1> A5/4; Encryption algorithm A5/4 available (1) or not (0) */ + U8 a5_5; /*< 4: 1> A5/5; Encryption algorithm A5/5 available (1) or not (0) */ + U8 a5_6; /*< 5: 1> A5/6; Encryption algorithm A5/6 available (1) or not (0) */ + U8 a5_7; /*< 6: 1> A5/7; Encryption algorithm A5/7 available (1) or not (0) */ + U8 _align0; /*< 7: 1> alignment */ +} T_a5_bits; +#endif + + +// STRUCT-FF: REL99 +#ifndef __T_acc_tech_req__ +#define __T_acc_tech_req__ +/* + * Access Technologies Request + * CCDGEN:WriteStruct_Count==2 + */ +typedef struct +{ + U8 v_acc_tech_typ; /*< 0: 1> valid-flag */ + U8 c_acc_tech_typ; /*< 1: 1> counter */ + U8 acc_tech_typ[MAX_NUM_ACC_TYPE]; /*< 2: 16> Access Technology Type */ + U8 _align0; /*< 18: 1> alignment */ + U8 _align1; /*< 19: 1> alignment */ +} T_acc_tech_req; +#endif + + +// STRUCT-FF: REL99 +#ifndef __T_add_acc_tech_elem__ +#define __T_add_acc_tech_elem__ +/* + * Additonal Access Technologies Element + * CCDGEN:WriteStruct_Count==3 + */ +typedef struct +{ + U8 acc_tech_typ; /*< 0: 1> Access Technology Type */ + U8 pow_class; /*< 1: 1> RF Power Capability */ + U8 pow_8psk_cap; /*< 2: 1> 8-PSK Power Capability */ + U8 _align0; /*< 3: 1> alignment */ +} T_add_acc_tech_elem; +#endif + + +// STRUCT-FF: REL99 +#ifndef __T_add_acc_tech__ +#define __T_add_acc_tech__ +/* + * Additonal Access Technologies + * CCDGEN:WriteStruct_Count==4 + */ +typedef struct +{ + U8 _align0; /*< 0: 1> alignment */ + U8 _align1; /*< 1: 1> alignment */ + U8 v_add_acc_tech_elem; /*< 2: 1> valid-flag */ + U8 c_add_acc_tech_elem; /*< 3: 1> counter */ + T_add_acc_tech_elem add_acc_tech_elem[MAX_ADD_RA_CAP]; /*< 4: 16> Additonal Access Technologies Element */ +} T_add_acc_tech; +#endif + + +// STRUCT-FF: REL99 +#ifndef __T_bsic_struct__ +#define __T_bsic_struct__ +/* + * BSIC Structure + * CCDGEN:WriteStruct_Count==5 + */ +typedef struct +{ +// ELEM-FF: REL99 + U8 freq_scroll; /*< 0: 1> Frequency Scrolling */ + U8 bsic; /*< 1: 1> BSIC */ + U8 _align0; /*< 2: 1> alignment */ + U8 _align1; /*< 3: 1> alignment */ +} T_bsic_struct; +#endif + + +// STRUCT-FF: REL99 +#ifndef __T_gprs_bsic__ +#define __T_gprs_bsic__ +/* + * GPRS BSIC Description + * CCDGEN:WriteStruct_Count==6 + */ +typedef struct +{ + U8 v_ba_start_bsic; /*< 0: 1> valid-flag */ + U8 ba_start_bsic; /*< 1: 1> BA Index Start BSIC */ + U8 bsic; /*< 2: 1> BSIC */ +// ELEM-FF: REL99 + U8 rem_bsic; /*< 3: 1> Number Remaining BSIC */ + U8 _align0; /*< 4: 1> alignment */ + U8 _align1; /*< 5: 1> alignment */ + U8 _align2; /*< 6: 1> alignment */ + U8 c_bsic_struct; /*< 7: 1> counter */ + T_bsic_struct bsic_struct[MAX_BSIC]; /*< 8: 72> BSIC Structure */ +} T_gprs_bsic; +#endif + +#ifndef __T_mob_class_1__ +#define __T_mob_class_1__ +/* + * Mobile Station Classmark 1 + * CCDGEN:WriteStruct_Count==7 + */ +typedef struct +{ + U8 rev_lev; /*< 0: 1> Revision Level */ + U8 es_ind; /*< 1: 1> Early Classmark Sending; 'controlled early classmark sending' option is implemented (1) or not (0) in the MS */ + U8 a5_1; /*< 2: 1> A5/1; Encryption algorithm A5/1. Note inverse logic for the A5/1 encryption algorithm between classmark 1 and 2 on the one hand (available=0 or not=1) and radio access capability on the other hand (available=1 or not=0). */ + U8 rf_pow_cap; /*< 3: 1> RF power capability */ +} T_mob_class_1; +#endif + +#ifndef __T_mob_class_2__ +#define __T_mob_class_2__ +/* + * Mobile Station Classmark 2 + * CCDGEN:WriteStruct_Count==8 + */ +typedef struct +{ + U8 rev_lev; /*< 0: 1> Revision Level */ + U8 es_ind; /*< 1: 1> Early Classmark Sending; 'controlled early classmark sending' option is implemented (1) or not (0) in the MS */ + U8 a5_1; /*< 2: 1> A5/1; Encryption algorithm A5/1. Note inverse logic for the A5/1 encryption algorithm between classmark 1 and 2 on the one hand (available=0 or not=1) and radio access capability on the other hand (available=1 or not=0). */ + U8 rf_pow_cap; /*< 3: 1> RF power capability */ + U8 ps; /*< 4: 1> Pseudo Synchronisation capability; Pseudo synchronisation capabilty is present (1) or not (0) */ + U8 ss_screen; /*< 5: 1> SS Screening Indicator */ + U8 mt_pp_sms; /*< 6: 1> Short Message capability; MS does supports (1) MT point to point SMS or not (0) */ + U8 vbs; /*< 7: 1> Voice Broadcast Service; VBS capability and notification wanted (1) or not (0) */ + U8 vgcs; /*< 8: 1> Voice Group Call Service; VGCS capability and notification wanted (1) or not (0) */ + U8 egsm; /*< 9: 1> Frequency capability */ + U8 class3; /*< 10: 1> Classmark 3; The MS supports options that are indicated in classmark 3 (1) or it does not support any classmark 3 options (0) */ + U8 lcsva; /*< 11: 1> LCSVA capability; LCS value added location request notification supported (1) or not (0) */ + U8 ucs2_treat; /*< 12: 1> UCS2 treatment */ + U8 solsa; /*< 13: 1> SoLSA Supported; MS does supports SoLSA (1) or not (0) */ + U8 cmsp; /*< 14: 1> CMSP Supported; MS does supports (1) CM service Prompt (network initiated MO CM connection request) or not (0) */ + U8 a5_3; /*< 15: 1> A5/3; Encryption algorithm A5/3 available (1) or not (0) */ + U8 a5_2; /*< 16: 1> A5/2; Encryption algorithm A5/2 available (1) or not (0) */ + U8 _align0; /*< 17: 1> alignment */ + U8 _align1; /*< 18: 1> alignment */ + U8 _align2; /*< 19: 1> alignment */ +} T_mob_class_2; +#endif + +#ifndef __T_dtm_ms__ +#define __T_dtm_ms__ +/* + * DTM Multislot Structure + * CCDGEN:WriteStruct_Count==9 + */ +typedef struct +{ + U8 dtm_g_ms_class; /*< 0: 1> DTM GPRS Multi Slot Sub-Class */ + U8 mac_support; /*< 1: 1> MAC Mode support; MS does supports dynamice and fixed allocation (1) or only exclusive allocation (0) */ + U8 v_dtm_e_ms_class; /*< 2: 1> valid-flag */ + U8 dtm_e_ms_class; /*< 3: 1> DTM EGPRS Multi Slot Sub-Class; only if the MS supports EGPRS DTM */ +} T_dtm_ms; +#endif + + +// STRUCT-FF: TI_PS_FF_REL99_AND_ABOVE +#ifndef __T_dtm_high_ms__ +#define __T_dtm_high_ms__ +/* + * DTM High Multislot Structure + * CCDGEN:WriteStruct_Count==10 + */ +typedef struct +{ + U8 dtm_g_high_ms_class; /*< 0: 1> DTM GPRS High Multi Slot Sub-Class */ + U8 offset_required; /*< 1: 1> Offset required */ + U8 v_dtm_e_high_ms_class; /*< 2: 1> valid-flag */ + U8 dtm_e_high_ms_class; /*< 3: 1> DTM EGPRS High Multi Slot Sub-Class; only if the MS supports EGPRS DTM */ +} T_dtm_high_ms; +#endif + +#ifndef __T_egde_struct__ +#define __T_egde_struct__ +/* + * EGDE Structure + * CCDGEN:WriteStruct_Count==11 + */ +typedef struct +{ + U8 mod; /*< 0: 1> Modulation Capability; MS does supports 8-PSK modulation for uplink and downlink (1) or only for downlink (0) in addition to GSMK */ + U8 v_egde_pow1; /*< 1: 1> valid-flag */ + U8 egde_pow1; /*< 2: 1> EGDE RF Power Capability 1 */ + U8 v_egde_pow2; /*< 3: 1> valid-flag */ + U8 egde_pow2; /*< 4: 1> EGDE RF Power Capability 2 */ + U8 _align0; /*< 5: 1> alignment */ + U8 _align1; /*< 6: 1> alignment */ + U8 _align2; /*< 7: 1> alignment */ +} T_egde_struct; +#endif + + +// STRUCT-FF: REL99 +#ifndef __T_gprs_rep_prio__ +#define __T_gprs_rep_prio__ +/* + * GPRS REPORT PRIORITY Description + * CCDGEN:WriteStruct_Count==12 + */ +typedef struct +{ +// ELEM-FF: REL99 + U8 num_cells; /*< 0: 1> Number of Cells */ +// ELEM-FF: REL99 + U8 c_rep_priority; /*< 1: 1> counter */ + U8 rep_priority[MAX_NNC]; /*< 2: 96> Reporting Priority */ + U8 _align0; /*< 98: 1> alignment */ + U8 _align1; /*< 99: 1> alignment */ +} T_gprs_rep_prio; +#endif + +#ifndef __T_gsm400_struct__ +#define __T_gsm400_struct__ +/* + * GSM 400 Bands Supported Structure + * CCDGEN:WriteStruct_Count==13 + */ +typedef struct +{ + U8 gsm400_supp; /*< 0: 1> GSM 400 Bands Supported */ + U8 gsm400_cap; /*< 1: 1> GSM 400 Associated Radio Capability */ + U8 _align0; /*< 2: 1> alignment */ + U8 _align1; /*< 3: 1> alignment */ +} T_gsm400_struct; +#endif + + +// STRUCT-FF: TI_PS_FF_REL99_AND_ABOVE +#ifndef __T_t_gsm400_struct__ +#define __T_t_gsm400_struct__ +/* + * GSM 400 Bands Supported Structure + * CCDGEN:WriteStruct_Count==14 + */ +typedef struct +{ + U8 t_gsm400_supp; /*< 0: 1> T-GSM 400 Bands Supported */ + U8 t_gsm400_cap; /*< 1: 1> T-GSM 400 Associated Radio Capability */ + U8 _align0; /*< 2: 1> alignment */ + U8 _align1; /*< 3: 1> alignment */ +} T_t_gsm400_struct; +#endif + +#ifndef __T_measurement__ +#define __T_measurement__ +/* + * Measurement Capability + * CCDGEN:WriteStruct_Count==15 + */ +typedef struct +{ + U8 sms_val; /*< 0: 1> Switch-Measure-Switch-Value */ + U8 sm_val; /*< 1: 1> Switch-Measure-Value */ + U8 _align0; /*< 2: 1> alignment */ + U8 _align1; /*< 3: 1> alignment */ +} T_measurement; +#endif + +#ifndef __T_pos_method__ +#define __T_pos_method__ +/* + * MS Positioning Method + * CCDGEN:WriteStruct_Count==16 + */ +typedef struct +{ + U8 assist_eotd; /*< 0: 1> MS assisted E-OTD; MS does supports assisted E-OTD (1) or not (0) */ + U8 based_eotd; /*< 1: 1> MS based E-OTD; MS does supports based E-OTD (1) or not (0) */ + U8 assist_gps; /*< 2: 1> MS assisted GPS; MS does supports assisted GPS (1) or not (0) */ + U8 based_gps; /*< 3: 1> MS based GPS; MS does supports based GPS (1) or not (0) */ + U8 conv_gps; /*< 4: 1> MS conventional GPS; MS does supports conventional GPS (1) or not (0) */ + U8 _align0; /*< 5: 1> alignment */ + U8 _align1; /*< 6: 1> alignment */ + U8 _align2; /*< 7: 1> alignment */ +} T_pos_method; +#endif + +#ifndef __T_pow_class4__ +#define __T_pow_class4__ +/* + * RF Power Capability (4 bits); Power Class of GSM 400, GSM 850, GSM 900, DCS 1800, PCS 1900 + * CCDGEN:WriteStruct_Count==17 + */ +typedef struct +{ + U8 pow_class; /*< 0: 1> RF Power Capability */ + U8 _align0; /*< 1: 1> alignment */ + U8 _align1; /*< 2: 1> alignment */ + U8 _align2; /*< 3: 1> alignment */ +} T_pow_class4; +#endif + + +// STRUCT-FF: REL99 +#ifndef __T_dtm_struct__ +#define __T_dtm_struct__ +/* + * DTM (E-)GPRS Multislot Sub-Class and MAC Mode Support + * CCDGEN:WriteStruct_Count==18 + */ +typedef struct +{ + U8 dtm_g_ms_class; /*< 0: 1> DTM GPRS Multi Slot Sub-Class */ + U8 mac_support; /*< 1: 1> MAC Mode support; MS does supports dynamice and fixed allocation (1) or only exclusive allocation (0) */ + U8 v_dtm_e_ms_class; /*< 2: 1> valid-flag */ + U8 dtm_e_ms_class; /*< 3: 1> DTM EGPRS Multi Slot Sub-Class; only if the MS supports EGPRS DTM */ +} T_dtm_struct; +#endif + + +// STRUCT-FF: REL99 +#ifndef __T_egprs_struct__ +#define __T_egprs_struct__ +/* + * GPRS Multislot Class and Extended Dynamic Allocation Capability + * CCDGEN:WriteStruct_Count==19 + */ +typedef struct +{ + U8 egprs_ms_class; /*< 0: 1> EGPRS Multi Slot Class */ + U8 egprs_eda; /*< 1: 1> EGPRS Extended Dynamic Allocation Capability; MS does supports dynamice and fixed allocation (1) or only exclusive allocation (0) */ + U8 _align0; /*< 2: 1> alignment */ + U8 _align1; /*< 3: 1> alignment */ +} T_egprs_struct; +#endif + +#ifndef __T_gprs_struct__ +#define __T_gprs_struct__ +/* + * GPRS Multislot Class and Extended Dynamic Allocation Capability + * CCDGEN:WriteStruct_Count==20 + */ +typedef struct +{ + U8 gprs_ms_class; /*< 0: 1> GPRS Multi Slot Class */ + U8 gprs_eda; /*< 1: 1> GPRS Extended Dynamic Allocation Capability; MS does supports dynamice and fixed allocation (1) or only exclusive allocation (0) */ + U8 _align0; /*< 2: 1> alignment */ + U8 _align1; /*< 3: 1> alignment */ +} T_gprs_struct; +#endif + +#ifndef __T_rf_ms__ +#define __T_rf_ms__ +/* + * MS RF Multi Slot Capability + * CCDGEN:WriteStruct_Count==21 + */ +typedef struct +{ + U8 gsm_ms_class; /*< 0: 1> GSM Multi Slot Class */ + U8 edge_ms_class; /*< 1: 1> EDGE Multi Slot Class */ + U8 hscsd_ms_class; /*< 2: 1> HSCSD Multi Slot Class */ + U8 gprs_ms_class; /*< 3: 1> GPRS Multi Slot Class */ + U8 dtm_g; /*< 4: 1> DTM GPRS Multi Slot Capability; GPRS MS does supports dual transfer mode (DTM) */ + U8 dtm_g_ms_class; /*< 5: 1> DTM GPRS Multi Slot Sub-Class */ + U8 ecsd_ms_class; /*< 6: 1> ECSD Multi Slot Class */ + U8 egprs_ms_class; /*< 7: 1> EGPRS Multi Slot Class */ + U8 dtm_e; /*< 8: 1> DTM EGPRS Multi Slot Capability; EGPRS MS does supports dual transfer mode (DTM) */ + U8 dtm_e_ms_class; /*< 9: 1> DTM EGPRS Multi Slot Sub-Class; only if the MS supports EGPRS DTM */ + U8 _align0; /*< 10: 1> alignment */ + U8 _align1; /*< 11: 1> alignment */ +} T_rf_ms; +#endif + + +// STRUCT-FF: REL99 AND ( TI_PS_FF_EMR OR TI_PS_FF_RTD ) +#ifndef __T_rtds6__ +#define __T_rtds6__ +/* + * Real Time Difference Structure 6 Bit + * CCDGEN:WriteStruct_Count==22 + */ +typedef struct +{ + U8 v_rtd6; /*< 0: 1> valid-flag */ + U8 c_rtd6; /*< 1: 1> counter */ + U8 rtd6[MAXRTD6]; /*< 2: 8> Real Time Difference 6 Bit */ + U8 _align0; /*< 10: 1> alignment */ + U8 _align1; /*< 11: 1> alignment */ +} T_rtds6; +#endif + + +/* + * Real Time Difference Structure 6 Bit + * CCDGEN:WriteStruct_Count==23 + */ +#ifndef __T_rtds6_add__ +#define __T_rtds6_add__ +typedef T_rtds6 T_rtds6_add; +#endif + +// STRUCT-FF: REL99 AND ( TI_PS_FF_EMR OR TI_PS_FF_RTD ) +#ifndef __T_rtdd6__ +#define __T_rtdd6__ +/* + * Real Time Difference Description 6 Bit + * CCDGEN:WriteStruct_Count==24 + */ +typedef struct +{ + U8 v_ba_start_rtd; /*< 0: 1> valid-flag */ + U8 ba_start_rtd; /*< 1: 1> BA Index Start RTD */ + U8 _align0; /*< 2: 1> alignment */ + U8 _align1; /*< 3: 1> alignment */ + T_rtds6 rtds6; /*< 4: 12> Real Time Difference Structure 6 Bit */ + U8 _align2; /*< 16: 1> alignment */ + U8 _align3; /*< 17: 1> alignment */ + U8 v_rtds6_add; /*< 18: 1> valid-flag */ + U8 c_rtds6_add; /*< 19: 1> counter */ + T_rtds6_add rtds6_add[MAXRTDS6]; /*< 20:240> Real Time Difference Structure 6 Bit */ +} T_rtdd6; +#endif + + +// STRUCT-FF: REL99 AND ( TI_PS_FF_EMR OR TI_PS_FF_RTD ) +#ifndef __T_rtds12__ +#define __T_rtds12__ +/* + * Real Time Difference Structure 12 Bit + * CCDGEN:WriteStruct_Count==25 + */ +typedef struct +{ + U8 v_rtd12; /*< 0: 1> valid-flag */ + U8 c_rtd12; /*< 1: 1> counter */ + U16 rtd12[MAXRTD12]; /*< 2: 12> Real Time Difference 12 Bit */ + U8 _align0; /*< 14: 1> alignment */ + U8 _align1; /*< 15: 1> alignment */ +} T_rtds12; +#endif + + +/* + * Real Time Difference Structure 12 Bit + * CCDGEN:WriteStruct_Count==26 + */ +#ifndef __T_rtds12_add__ +#define __T_rtds12_add__ +typedef T_rtds12 T_rtds12_add; +#endif + +// STRUCT-FF: REL99 AND ( TI_PS_FF_EMR OR TI_PS_FF_RTD ) +#ifndef __T_rtdd12__ +#define __T_rtdd12__ +/* + * Real Time Difference Description 12 Bit + * CCDGEN:WriteStruct_Count==27 + */ +typedef struct +{ + U8 v_ba_start_rtd; /*< 0: 1> valid-flag */ + U8 ba_start_rtd; /*< 1: 1> BA Index Start RTD */ + U8 _align0; /*< 2: 1> alignment */ + U8 _align1; /*< 3: 1> alignment */ + T_rtds12 rtds12; /*< 4: 16> Real Time Difference Structure 12 Bit */ + U8 _align2; /*< 20: 1> alignment */ + U8 _align3; /*< 21: 1> alignment */ + U8 v_rtds12_add; /*< 22: 1> valid-flag */ + U8 c_rtds12_add; /*< 23: 1> counter */ + T_rtds12_add rtds12_add[MAXRTDS12]; /*< 24:160> Real Time Difference Structure 12 Bit */ +} T_rtdd12; +#endif + + +// STRUCT-FF: REL99 AND ( TI_PS_FF_EMR OR TI_PS_FF_RTD ) +#ifndef __T_rtdd__ +#define __T_rtdd__ +/* + * GPRS Real Time Difference Description + * CCDGEN:WriteStruct_Count==28 + */ +typedef struct +{ + U8 _align0; /*< 0: 1> alignment */ + U8 _align1; /*< 1: 1> alignment */ + U8 _align2; /*< 2: 1> alignment */ + U8 v_rtdd6; /*< 3: 1> valid-flag */ + T_rtdd6 rtdd6; /*< 4:260> Real Time Difference Description 6 Bit */ + U8 _align3; /*<264: 1> alignment */ + U8 _align4; /*<265: 1> alignment */ + U8 _align5; /*<266: 1> alignment */ + U8 v_rtdd12; /*<267: 1> valid-flag */ + T_rtdd12 rtdd12; /*<268:184> Real Time Difference Description 12 Bit */ +} T_rtdd; +#endif + + +// STRUCT-FF: REL99 AND ( TI_PS_FF_EMR OR TI_PS_FF_RTD ) +#ifndef __T_report_900__ +#define __T_report_900__ +/* + * Reporting 900 + * CCDGEN:WriteStruct_Count==29 + */ +typedef struct +{ + U8 rep_offset_900; /*< 0: 1> 900 reporting offset */ + U8 th_rep_900; /*< 1: 1> 900 reporting threshold */ + U8 _align0; /*< 2: 1> alignment */ + U8 _align1; /*< 3: 1> alignment */ +} T_report_900; +#endif + + +// STRUCT-FF: REL99 AND ( TI_PS_FF_EMR OR TI_PS_FF_RTD ) +#ifndef __T_report_1800__ +#define __T_report_1800__ +/* + * Reporting 1800 + * CCDGEN:WriteStruct_Count==30 + */ +typedef struct +{ + U8 rep_offset_1800; /*< 0: 1> 1800 reporting offset */ + U8 th_rep_1800; /*< 1: 1> 1800 reporting threshold */ + U8 _align0; /*< 2: 1> alignment */ + U8 _align1; /*< 3: 1> alignment */ +} T_report_1800; +#endif + + +// STRUCT-FF: REL99 AND ( TI_PS_FF_EMR OR TI_PS_FF_RTD ) +#ifndef __T_report_400__ +#define __T_report_400__ +/* + * Reporting 400 + * CCDGEN:WriteStruct_Count==31 + */ +typedef struct +{ + U8 rep_offset_400; /*< 0: 1> 400 reporting offset */ + U8 th_rep_400; /*< 1: 1> 400 reporting threshold */ + U8 _align0; /*< 2: 1> alignment */ + U8 _align1; /*< 3: 1> alignment */ +} T_report_400; +#endif + + +// STRUCT-FF: REL99 AND ( TI_PS_FF_EMR OR TI_PS_FF_RTD ) +#ifndef __T_report_1900__ +#define __T_report_1900__ +/* + * Reporting 1900 + * CCDGEN:WriteStruct_Count==32 + */ +typedef struct +{ + U8 rep_offset_1900; /*< 0: 1> 1900 reporting offset */ + U8 th_rep_1900; /*< 1: 1> 1900 reporting threshold */ + U8 _align0; /*< 2: 1> alignment */ + U8 _align1; /*< 3: 1> alignment */ +} T_report_1900; +#endif + + +// STRUCT-FF: REL99 AND ( TI_PS_FF_EMR OR TI_PS_FF_RTD ) +#ifndef __T_report_850__ +#define __T_report_850__ +/* + * Reporting 850 + * CCDGEN:WriteStruct_Count==33 + */ +typedef struct +{ + U8 rep_offset_850; /*< 0: 1> 850 reporting offset */ + U8 th_rep_850; /*< 1: 1> 850 reporting threshold */ + U8 _align0; /*< 2: 1> alignment */ + U8 _align1; /*< 3: 1> alignment */ +} T_report_850; +#endif + +#ifndef __T_sms_sm_value__ +#define __T_sms_sm_value__ +/* + * MS Measurement Capability + * CCDGEN:WriteStruct_Count==34 + */ +typedef struct +{ + U8 sms_val; /*< 0: 1> Switch-Measure-Switch-Value */ + U8 sm_val; /*< 1: 1> Switch-Measure-Value */ + U8 _align0; /*< 2: 1> alignment */ + U8 _align1; /*< 3: 1> alignment */ +} T_sms_sm_value; +#endif + +#ifndef __T_ms_struct__ +#define __T_ms_struct__ +/* + * Multislot Capability Struct + * CCDGEN:WriteStruct_Count==35 + */ +typedef struct +{ + U8 v_hscsd_ms_class; /*< 0: 1> valid-flag */ + U8 hscsd_ms_class; /*< 1: 1> HSCSD Multi Slot Class */ + U8 _align0; /*< 2: 1> alignment */ + U8 v_gprs_struct; /*< 3: 1> valid-flag */ + T_gprs_struct gprs_struct; /*< 4: 4> GPRS Multislot Class and Extended Dynamic Allocation Capability */ + U8 _align1; /*< 8: 1> alignment */ + U8 _align2; /*< 9: 1> alignment */ + U8 _align3; /*< 10: 1> alignment */ + U8 v_sms_sm_value; /*< 11: 1> valid-flag */ + T_sms_sm_value sms_sm_value; /*< 12: 4> MS Measurement Capability */ +// ELEM-FF: REL99 + U8 v_ecsd_ms_class; /*< 16: 1> valid-flag */ + U8 ecsd_ms_class; /*< 17: 1> ECSD Multi Slot Class */ +// ELEM-FF: REL99 + U8 _align4; /*< 18: 1> alignment */ + U8 v_egprs_struct; /*< 19: 1> valid-flag */ + T_egprs_struct egprs_struct; /*< 20: 4> GPRS Multislot Class and Extended Dynamic Allocation Capability */ +// ELEM-FF: REL99 + U8 _align5; /*< 24: 1> alignment */ + U8 _align6; /*< 25: 1> alignment */ + U8 _align7; /*< 26: 1> alignment */ + U8 v_dtm_struct; /*< 27: 1> valid-flag */ + T_dtm_struct dtm_struct; /*< 28: 4> DTM (E-)GPRS Multislot Sub-Class and MAC Mode Support */ +} T_ms_struct; +#endif + +#ifndef __T_acc_cap__ +#define __T_acc_cap__ +/* + * Access capabilities + * CCDGEN:WriteStruct_Count==36 + */ +typedef struct +{ + U8 pow_class; /*< 0: 1> RF Power Capability */ + U8 _align0; /*< 1: 1> alignment */ + U8 _align1; /*< 2: 1> alignment */ + U8 v_a5_bits; /*< 3: 1> valid-flag */ + T_a5_bits a5_bits; /*< 4: 8> A5 bits */ + U8 es_ind; /*< 12: 1> Early Classmark Sending; 'controlled early classmark sending' option is implemented (1) or not (0) in the MS */ + U8 ps; /*< 13: 1> Pseudo Synchronisation capability; Pseudo synchronisation capabilty is present (1) or not (0) */ + U8 vgcs; /*< 14: 1> Voice Group Call Service; VGCS capability and notification wanted (1) or not (0) */ + U8 vbs; /*< 15: 1> Voice Broadcast Service; VBS capability and notification wanted (1) or not (0) */ + U8 _align2; /*< 16: 1> alignment */ + U8 _align3; /*< 17: 1> alignment */ + U8 _align4; /*< 18: 1> alignment */ + U8 v_ms_struct; /*< 19: 1> valid-flag */ + T_ms_struct ms_struct; /*< 20: 32> Multislot Capability Struct */ +// ELEM-FF: REL99 + U8 v_pow_8psk_cap; /*< 52: 1> valid-flag */ + U8 pow_8psk_cap; /*< 53: 1> 8-PSK Power Capability */ +// ELEM-FF: REL99 + U8 compact; /*< 54: 1> COMPACT Interference Measurement Capability; COMPACT Interference Measurement Capability is implemented (1) or not (0) */ +// ELEM-FF: REL99 + U8 rev99; /*< 55: 1> Revision Level */ +// ELEM-FF: REL99 + U8 umts_fdd; /*< 56: 1> UMTS FDD Radio Access Technology; MS does supports UMTS FDD (1) or not (0) */ +// ELEM-FF: REL99 + U8 umts_tdd; /*< 57: 1> UMTS 3.84 Mcps TDD Radio Access Technology; MS does supports UMTS TDD (1) or not (0) */ +// ELEM-FF: REL99 + U8 cdma2000; /*< 58: 1> CDMA 2000 Radio Access Technology; MS does supports CDMA 2000 (1) or not (0) */ + U8 _align5; /*< 59: 1> alignment */ +} T_acc_cap; +#endif + + +// STRUCT-FF: !REL99 +// #ifndef __T_ra_cap2__ +// #define __T_ra_cap2__ +// +// RAC structure for R97 +// CCDGEN:WriteStruct_Count==37 +// +// typedef struct +// { +// U8 acc_tech_typ; /*< 0: 1> Access Technology Type */ +// U8 _align0; /*< 1: 1> alignment */ +// U8 _align1; /*< 2: 1> alignment */ +// U8 _align2; /*< 3: 1> alignment */ +// T_acc_cap acc_cap; /*< 4: 60> Access capabilities */ +// } T_ra_cap2; +// #endif +// + +// STRUCT-FF: REL99 +#ifndef __T_ra_cap_values__ +#define __T_ra_cap_values__ +/* + * Actual MS RA capability value part + * CCDGEN:WriteStruct_Count==38 + */ +typedef struct +{ + U8 acc_tech_typ; /*< 0: 1> Access Technology Type */ + U8 _align0; /*< 1: 1> alignment */ + U8 _align1; /*< 2: 1> alignment */ + U8 v_acc_cap; /*< 3: 1> valid-flag */ + T_acc_cap acc_cap; /*< 4: 60> Access capabilities */ + U8 _align2; /*< 64: 1> alignment */ + U8 _align3; /*< 65: 1> alignment */ + U8 _align4; /*< 66: 1> alignment */ + U8 v_add_acc_tech; /*< 67: 1> valid-flag */ + T_add_acc_tech add_acc_tech; /*< 68: 20> Additonal Access Technologies */ +} T_ra_cap_values; +#endif + + +// STRUCT-FF: REL99 +#ifndef __T_ra_cap_r__ +#define __T_ra_cap_r__ +/* + * Recursive MS RA capability value part + * CCDGEN:WriteStruct_Count==39 + */ +typedef struct +{ + T_ra_cap_values ra_cap_values; /*< 0: 88> Actual MS RA capability value part */ +} T_ra_cap_r; +#endif + +#ifndef __T_ra_cap__ +#define __T_ra_cap__ +/* + * MS RA capability value part + * CCDGEN:WriteStruct_Count==40 + */ +typedef struct +{ +// ELEM-FF: REL99 + T_ra_cap_values ra_cap_values; /*< 0: 88> Actual MS RA capability value part */ +// ELEM-FF: REL99 + U8 _align0; /*< 88: 1> alignment */ + U8 _align1; /*< 89: 1> alignment */ + U8 v_ra_cap_r; /*< 90: 1> valid-flag */ + U8 c_ra_cap_r; /*< 91: 1> counter */ + T_ra_cap_r ra_cap_r[MAX_ADD_RA_CAP]; /*< 92:352> Recursive MS RA capability value part */ +// ELEM-FF: !REL99 +// U8 acc_tech_typ; /*< 0: 0> Access Technology Type */ +// ELEM-FF: !REL99 +// T_acc_cap acc_cap; /*< 0: 0> Access capabilities */ +// ELEM-FF: !REL99 +// U8 flag_ra_cap2; /*< 0: 0> Valid flag for MS RA capability value part II; Second part of MS RA capability is available (1) or not (1) */ +// ELEM-FF: !REL99 +// U8 v_ra_cap2; /*< 0: 0> valid-flag */ +// // T_ra_cap2 ra_cap2; /*< 0: 0> RAC structure for R97 */ +} T_ra_cap; +#endif + +#ifndef __T_rf_power__ +#define __T_rf_power__ +/* + * MS RF Power Classes + * CCDGEN:WriteStruct_Count==41 + */ +typedef struct +{ + T_pow_class4 pow_class4[5]; /*< 0: 20> RF Power Capability (4 bits); Power Class of GSM 400, GSM 850, GSM 900, DCS 1800, PCS 1900 */ + U8 egde_pow1; /*< 20: 1> EGDE RF Power Capability 1 */ + U8 egde_pow2; /*< 21: 1> EGDE RF Power Capability 2 */ + U8 _align0; /*< 22: 1> alignment */ + U8 _align1; /*< 23: 1> alignment */ +} T_rf_power; +#endif + +#ifndef __T_rf_cap__ +#define __T_rf_cap__ +/* + * MS RF Capability + * CCDGEN:WriteStruct_Count==42 + */ +typedef struct +{ + U8 setbands; /*< 0: 1> Set Frequency Bands; bitmask of set frequency bands */ + U8 bands; /*< 1: 1> Supported Frequency Bands; bitmask of all available frequency bands */ + U8 _align0; /*< 2: 1> alignment */ + U8 _align1; /*< 3: 1> alignment */ + T_rf_power rf_power; /*< 4: 24> MS RF Power Classes */ + T_rf_ms rf_ms; /*< 28: 12> MS RF Multi Slot Capability */ + U8 es_ind; /*< 40: 1> Early Classmark Sending; 'controlled early classmark sending' option is implemented (1) or not (0) in the MS */ + U8 ps; /*< 41: 1> Pseudo Synchronisation capability; Pseudo synchronisation capabilty is present (1) or not (0) */ + U8 mt_pp_sms; /*< 42: 1> Short Message capability; MS does supports (1) MT point to point SMS or not (0) */ + U8 lcsva; /*< 43: 1> LCSVA capability; LCS value added location request notification supported (1) or not (0) */ + U8 solsa; /*< 44: 1> SoLSA Supported; MS does supports SoLSA (1) or not (0) */ + U8 cmsp; /*< 45: 1> CMSP Supported; MS does supports (1) CM service Prompt (network initiated MO CM connection request) or not (0) */ + U8 mod; /*< 46: 1> Modulation Capability; MS does supports 8-PSK modulation for uplink and downlink (1) or only for downlink (0) in addition to GSMK */ + U8 mac_support; /*< 47: 1> MAC Mode support; MS does supports dynamice and fixed allocation (1) or only exclusive allocation (0) */ + U8 meas; /*< 48: 1> Measurement Capability; Indicates whether the IE contains any value about the measurement capabilities or not */ + U8 ext_meas; /*< 49: 1> Extended Measurement Capability; MS does supports 'extended measurements`(1) or not (0) */ + U8 compact; /*< 50: 1> COMPACT Interference Measurement Capability; COMPACT Interference Measurement Capability is implemented (1) or not (0) */ + U8 vbs; /*< 51: 1> Voice Broadcast Service; VBS capability and notification wanted (1) or not (0) */ + U8 vgcs; /*< 52: 1> Voice Group Call Service; VGCS capability and notification wanted (1) or not (0) */ + U8 ucs2_treat; /*< 53: 1> UCS2 treatment */ + U8 ss_screen; /*< 54: 1> SS Screening Indicator */ + U8 sms_val; /*< 55: 1> Switch-Measure-Switch-Value */ + U8 sm_val; /*< 56: 1> Switch-Measure-Value */ + U8 _align2; /*< 57: 1> alignment */ + U8 _align3; /*< 58: 1> alignment */ + U8 _align4; /*< 59: 1> alignment */ + T_a5_bits a5_bits; /*< 60: 8> A5 bits */ + U8 assist_eotd; /*< 68: 1> MS assisted E-OTD; MS does supports assisted E-OTD (1) or not (0) */ + U8 based_eotd; /*< 69: 1> MS based E-OTD; MS does supports based E-OTD (1) or not (0) */ + U8 assist_gps; /*< 70: 1> MS assisted GPS; MS does supports assisted GPS (1) or not (0) */ + U8 based_gps; /*< 71: 1> MS based GPS; MS does supports based GPS (1) or not (0) */ + U8 conv_gps; /*< 72: 1> MS conventional GPS; MS does supports conventional GPS (1) or not (0) */ + U8 gprs_eda; /*< 73: 1> GPRS Extended Dynamic Allocation Capability; MS does supports dynamice and fixed allocation (1) or only exclusive allocation (0) */ + U8 egprs_eda; /*< 74: 1> EGPRS Extended Dynamic Allocation Capability; MS does supports dynamice and fixed allocation (1) or only exclusive allocation (0) */ + U8 _align5; /*< 75: 1> alignment */ +} T_rf_cap; +#endif + +#ifndef __T_pan_struct__ +#define __T_pan_struct__ +/* + * PAN Structure + * CCDGEN:WriteStruct_Count==43 + */ +typedef struct +{ + U8 dec; /*< 0: 1> PAN_DEC */ + U8 inc; /*< 1: 1> PAN_INC */ + U8 pmax; /*< 2: 1> PAN_MAX */ + U8 _align0; /*< 3: 1> alignment */ +} T_pan_struct; +#endif + + +// STRUCT-FF: REL99 +#ifndef __T_ccn_support_description__ +#define __T_ccn_support_description__ +/* + * ccn support description towards all neighbour + * CCDGEN:WriteStruct_Count==44 + */ +typedef struct +{ + U8 num_cells; /*< 0: 1> Number of Cells */ + U8 c_ccn_support; /*< 1: 1> counter */ + U8 ccn_support[BIT7_MAX]; /*< 2:128> CCN is supported towards the corresponding cell */ + U8 _align0; /*<130: 1> alignment */ + U8 _align1; /*<131: 1> alignment */ +} T_ccn_support_description; +#endif + + +// STRUCT-FF: REL99 OR TI_PS_FF_REL99_AND_ABOVE +#ifndef __T_ext_dtm_ms__ +#define __T_ext_dtm_ms__ +/* + * Extended DTM Multislot Structure + * CCDGEN:WriteStruct_Count==45 + */ +typedef struct +{ + U8 ext_dtm_g_ms_class; /*< 0: 1> Extended DTM GPRS Multi Slot Sub-Class */ + U8 ext_dtm_e_ms_class; /*< 1: 1> Extended DTM EGPRS Multi Slot Sub-Class */ + U8 _align0; /*< 2: 1> alignment */ + U8 _align1; /*< 3: 1> alignment */ +} T_ext_dtm_ms; +#endif + +#ifndef __T_mob_class_3__ +#define __T_mob_class_3__ +/* + * Mobile Station Classmark 3 + * CCDGEN:WriteStruct_Count==46 + */ +typedef struct +{ + U8 mb_value; /*< 0: 1> Multiband Support */ + U8 a5_7; /*< 1: 1> A5/7; Encryption algorithm A5/7 available (1) or not (0) */ + U8 a5_6; /*< 2: 1> A5/6; Encryption algorithm A5/6 available (1) or not (0) */ + U8 a5_5; /*< 3: 1> A5/5; Encryption algorithm A5/5 available (1) or not (0) */ + U8 a5_4; /*< 4: 1> A5/4; Encryption algorithm A5/4 available (1) or not (0) */ + U8 v_radio_cap_2; /*< 5: 1> valid-flag */ + U8 radio_cap_2; /*< 6: 1> Associated Radio Capability 2 */ + U8 v_radio_cap_1; /*< 7: 1> valid-flag */ + U8 radio_cap_1; /*< 8: 1> Associated Radio Capability 1 */ + U8 v_rgsm_class; /*< 9: 1> valid-flag */ + U8 rgsm_class; /*< 10: 1> R Support (R-GSM Class) */ + U8 v_ms_class; /*< 11: 1> valid-flag */ + U8 ms_class; /*< 12: 1> Multi Slot Class */ + U8 ucs2_treat; /*< 13: 1> UCS2 treatment */ + U8 ext_meas; /*< 14: 1> Extended Measurement Capability; MS does supports 'extended measurements`(1) or not (0) */ + U8 v_measurement; /*< 15: 1> valid-flag */ + T_measurement measurement; /*< 16: 4> Measurement Capability */ + U8 _align0; /*< 20: 1> alignment */ + U8 _align1; /*< 21: 1> alignment */ + U8 _align2; /*< 22: 1> alignment */ + U8 v_pos_method; /*< 23: 1> valid-flag */ + T_pos_method pos_method; /*< 24: 8> MS Positioning Method */ + U8 v_edge_ms_class; /*< 32: 1> valid-flag */ + U8 edge_ms_class; /*< 33: 1> EDGE Multi Slot Class */ + U8 _align3; /*< 34: 1> alignment */ + U8 v_egde_struct; /*< 35: 1> valid-flag */ + T_egde_struct egde_struct; /*< 36: 8> EGDE Structure */ + U8 _align4; /*< 44: 1> alignment */ + U8 _align5; /*< 45: 1> alignment */ + U8 _align6; /*< 46: 1> alignment */ + U8 v_gsm400_struct; /*< 47: 1> valid-flag */ + T_gsm400_struct gsm400_struct; /*< 48: 4> GSM 400 Bands Supported Structure */ + U8 v_gsm850_cap; /*< 52: 1> valid-flag */ + U8 gsm850_cap; /*< 53: 1> GSM 850 Associated Radio Capability */ + U8 v_pcs1900_cap; /*< 54: 1> valid-flag */ + U8 pcs1900_cap; /*< 55: 1> PCS 1900 Associated Radio Cap. */ + U8 umts_fdd; /*< 56: 1> UMTS FDD Radio Access Technology; MS does supports UMTS FDD (1) or not (0) */ + U8 umts_tdd; /*< 57: 1> UMTS 3.84 Mcps TDD Radio Access Technology; MS does supports UMTS TDD (1) or not (0) */ + U8 cdma2000; /*< 58: 1> CDMA 2000 Radio Access Technology; MS does supports CDMA 2000 (1) or not (0) */ + U8 v_dtm_ms; /*< 59: 1> valid-flag */ + T_dtm_ms dtm_ms; /*< 60: 4> DTM Multislot Structure */ + U8 v_single_band; /*< 64: 1> valid-flag */ + U8 single_band; /*< 65: 1> Single GSM Band Support */ + U8 v_gsm700_cap; /*< 66: 1> valid-flag */ + U8 gsm700_cap; /*< 67: 1> GSM 700 Associated Radio Capability */ + U8 umts_tdd_128; /*< 68: 1> UMTS 1.28 Mcps TDD Radio Access Technology; MS does supports UMTS TDD (1) or not (0) */ + U8 geran_feat_pack_1; /*< 69: 1> Network Support for GERAN Feature 1 Package */ + U8 _align7; /*< 70: 1> alignment */ + U8 v_ext_dtm_ms; /*< 71: 1> valid-flag */ + T_ext_dtm_ms ext_dtm_ms; /*< 72: 4> Extended DTM Multislot Structure */ + U8 v_high_ms_cap; /*< 76: 1> valid-flag */ + U8 high_ms_cap; /*< 77: 1> High Multislot Capability */ + U8 v_geran_iu_mod_cap; /*< 78: 1> valid-flag */ + U8 geran_iu_mod_cap; /*< 79: 1> GERAN Iu Mode Capabilities */ + U8 geran_feat_pack_2; /*< 80: 1> GERAN Feature Package 2 */ + U8 gmsk_ms_pwr_prof; /*< 81: 1> GMSK Multislot Power Profile */ + U8 psk8_ms_pwr_prof; /*< 82: 1> 8-PSK Multislot Power Profile */ + U8 v_t_gsm400_struct; /*< 83: 1> valid-flag */ + T_t_gsm400_struct t_gsm400_struct; /*< 84: 4> GSM 400 Bands Supported Structure */ + U8 v_t_gsm900_cap; /*< 88: 1> valid-flag */ + U8 t_gsm900_cap; /*< 89: 1> T-GSM 400 Associated Radio Capability */ + U8 dl_adv_rx_per; /*< 90: 1> Downlink Advanced Receiver Performance */ + U8 dtm_enhance_cap; /*< 91: 1> DTM Enhancements Capability */ + U8 _align8; /*< 92: 1> alignment */ + U8 _align9; /*< 93: 1> alignment */ + U8 _align10; /*< 94: 1> alignment */ + U8 v_dtm_high_ms; /*< 95: 1> valid-flag */ + T_dtm_high_ms dtm_high_ms; /*< 96: 4> DTM High Multislot Structure */ + U8 rep_acch_cap; /*<100: 1> Indicates whether the MS supports Repeated SACCH and Repeated FACCH */ + U8 _align11; /*<101: 1> alignment */ + U8 _align12; /*<102: 1> alignment */ + U8 _align13; /*<103: 1> alignment */ +} T_mob_class_3; +#endif + + +// STRUCT-FF: REL99 AND ( TI_PS_FF_EMR OR TI_PS_FF_RTD ) +#ifndef __T_tdd_ci_struct__ +#define __T_tdd_ci_struct__ +/* + * TDD Neighbour cell information + * CCDGEN:WriteStruct_Count==47 + */ +typedef struct +{ + U8 tdd_indic0; /*< 0: 1> TDD_Indic0 */ + U8 c_tdd_ncell_data; /*< 1: 1> counter */ + U16 tdd_ncell_data[MAX_TDD_CELLS]; /*< 2: 42> bits 1-7 are the Cell Parameter, bit 8 is the Sync Case and bit 9 is the Diversity bit. */ +} T_tdd_ci_struct; +#endif + + +// STRUCT-FF: REL99 AND ( TI_PS_FF_EMR OR TI_PS_FF_RTD ) +#ifndef __T_fdd_ci_struct__ +#define __T_fdd_ci_struct__ +/* + * FDD Neighbour cell information + * CCDGEN:WriteStruct_Count==48 + */ +typedef struct +{ + U8 fdd_indic0; /*< 0: 1> FDD_Indic0 */ + U8 c_fdd_ncell_data; /*< 1: 1> counter */ + U16 fdd_ncell_data[MAX_FDD_CELLS]; /*< 2: 34> bits 1-9 are the Scrambling Code and bit 10 is the corresponding Diversity Parameter */ +} T_fdd_ci_struct; +#endif + + +// STRUCT-FF: REL99 AND ( TI_PS_FF_EMR OR TI_PS_FF_RTD ) +#ifndef __T_rep_u_tdd_cells__ +#define __T_rep_u_tdd_cells__ +/* + * Repeated UTRAN TDD Neighbour cells + * CCDGEN:WriteStruct_Count==49 + */ +typedef struct +{ + U8 flag; /*< 0: 1> Flag */ + U8 v_tdd_arfcn; /*< 1: 1> valid-flag */ + U16 tdd_arfcn; /*< 2: 2> TDD_ARFCN */ + U8 v_tdd_arfcn_index; /*< 4: 1> valid-flag */ + U8 tdd_arfcn_index; /*< 5: 1> TDD ARFCN index */ + U8 _align0; /*< 6: 1> alignment */ + U8 _align1; /*< 7: 1> alignment */ + T_tdd_ci_struct tdd_ci_struct; /*< 8: 44> TDD Neighbour cell information */ +} T_rep_u_tdd_cells; +#endif + + +// STRUCT-FF: REL99 AND ( TI_PS_FF_EMR OR TI_PS_FF_RTD ) +#ifndef __T_rep_u_fdd_cells__ +#define __T_rep_u_fdd_cells__ +/* + * Repeated UTRAN FDD Neighbour cells + * CCDGEN:WriteStruct_Count==50 + */ +typedef struct +{ + U8 flag; /*< 0: 1> Flag */ + U8 v_fdd_arfcn; /*< 1: 1> valid-flag */ + U16 fdd_arfcn; /*< 2: 2> FDD_ARFCN */ + U8 v_fdd_arfcn_index; /*< 4: 1> valid-flag */ + U8 fdd_arfcn_index; /*< 5: 1> FDD ARFCN index */ + U8 _align0; /*< 6: 1> alignment */ + U8 _align1; /*< 7: 1> alignment */ + T_fdd_ci_struct fdd_ci_struct; /*< 8: 36> FDD Neighbour cell information */ +} T_rep_u_fdd_cells; +#endif + + +// STRUCT-FF: REL99 AND ( TI_PS_FF_EMR OR TI_PS_FF_RTD ) +#ifndef __T_utran_tdd__ +#define __T_utran_tdd__ +/* + * UTRAN TDD description + * CCDGEN:WriteStruct_Count==51 + */ +typedef struct +{ + U8 v_bw_tdd; /*< 0: 1> valid-flag */ + U8 bw_tdd; /*< 1: 1> Bandwidth TDD */ + U8 v_rep_u_tdd_cells; /*< 2: 1> valid-flag */ + U8 c_rep_u_tdd_cells; /*< 3: 1> counter */ + T_rep_u_tdd_cells rep_u_tdd_cells[MAX_TDD]; /*< 4:6812> Repeated UTRAN TDD Neighbour cells */ +} T_utran_tdd; +#endif + + +// STRUCT-FF: REL99 AND ( TI_PS_FF_EMR OR TI_PS_FF_RTD ) +#ifndef __T_utran_fdd__ +#define __T_utran_fdd__ +/* + * UTRAN FDD description + * CCDGEN:WriteStruct_Count==52 + */ +typedef struct +{ + U8 v_bw_fdd; /*< 0: 1> valid-flag */ + U8 bw_fdd; /*< 1: 1> Bandwidth FDD */ + U8 v_rep_u_fdd_cells; /*< 2: 1> valid-flag */ + U8 c_rep_u_fdd_cells; /*< 3: 1> counter */ + T_rep_u_fdd_cells rep_u_fdd_cells[MAX_FDD]; /*< 4:5764> Repeated UTRAN FDD Neighbour cells */ +} T_utran_fdd; +#endif + + +// STRUCT-FF: REL99 AND ( TI_PS_FF_EMR OR TI_PS_FF_RTD ) +#ifndef __T_threeg_cells__ +#define __T_threeg_cells__ +/* + * 3G Neighbour Cell Description + * CCDGEN:WriteStruct_Count==53 + */ +typedef struct +{ + U8 v_index_start_3g; /*< 0: 1> valid-flag */ + U8 index_start_3g; /*< 1: 1> Index Start 3G */ + U8 v_abs_index_emr; /*< 2: 1> valid-flag */ + U8 abs_index_emr; /*< 3: 1> Absolute Index start EMR */ + U8 _align0; /*< 4: 1> alignment */ + U8 _align1; /*< 5: 1> alignment */ + U8 _align2; /*< 6: 1> alignment */ + U8 v_utran_fdd; /*< 7: 1> valid-flag */ + T_utran_fdd utran_fdd; /*< 8:5768> UTRAN FDD description */ + U8 _align3; /*<5776: 1> alignment */ + U8 _align4; /*<5777: 1> alignment */ + U8 _align5; /*<5778: 1> alignment */ + U8 v_utran_tdd; /*<5779: 1> valid-flag */ + T_utran_tdd utran_tdd; /*<5780:6816> UTRAN TDD description */ +} T_threeg_cells; +#endif + + +// STRUCT-FF: REL99 AND ( TI_PS_FF_EMR OR TI_PS_FF_RTD ) +#ifndef __T_cd2k_str_000__ +#define __T_cd2k_str_000__ +/* + * Structured Element + * CCDGEN:WriteStruct_Count==54 + */ +typedef struct +{ + U8 td_mode; /*< 0: 1> TD_MODE */ + U8 td_power_level; /*< 1: 1> TD_POWER_LEVEL */ + U8 _align0; /*< 2: 1> alignment */ + U8 _align1; /*< 3: 1> alignment */ +} T_cd2k_str_000; +#endif + + +// STRUCT-FF: REL99 AND ( TI_PS_FF_EMR OR TI_PS_FF_RTD ) +#ifndef __T_cd2k_str_001__ +#define __T_cd2k_str_001__ +/* + * Structured Element + * CCDGEN:WriteStruct_Count==55 + */ +typedef struct +{ + U8 qof; /*< 0: 1> QOF */ + U8 walsh_len_a; /*< 1: 1> WALSH_LEN_A */ + U8 aux_pilot_walsh; /*< 2: 1> AUX_PILOT_WALSH */ + U8 _align0; /*< 3: 1> alignment */ +} T_cd2k_str_001; +#endif + + +// STRUCT-FF: REL99 AND ( TI_PS_FF_EMR OR TI_PS_FF_RTD ) +#ifndef __T_cd2k_str_010__ +#define __T_cd2k_str_010__ +/* + * Structured Element + * CCDGEN:WriteStruct_Count==56 + */ +typedef struct +{ + U8 qof; /*< 0: 1> QOF */ + U8 walsh_len_b; /*< 1: 1> WALSH_LEN_B */ + U8 aux_td_walsh; /*< 2: 1> AUX_TD_WALSH */ + U8 aux_td_power_level; /*< 3: 1> AUX_TD_POWER_LEVEL */ + U8 td_mode; /*< 4: 1> TD_MODE */ + U8 _align0; /*< 5: 1> alignment */ + U8 _align1; /*< 6: 1> alignment */ + U8 _align2; /*< 7: 1> alignment */ +} T_cd2k_str_010; +#endif + + +// STRUCT-FF: REL99 AND ( TI_PS_FF_EMR OR TI_PS_FF_RTD ) +#ifndef __T_cd2k_str_011__ +#define __T_cd2k_str_011__ +/* + * Structured Element + * CCDGEN:WriteStruct_Count==57 + */ +typedef struct +{ + U8 sr3_prim_pilot; /*< 0: 1> SR3_PRIM_PILOT */ + U8 sr3_pilot_power1; /*< 1: 1> SR3_PILOT_POWER1 */ + U8 sr3_pilot_power2; /*< 2: 1> SR3_PILOT_POWER2 */ + U8 _align0; /*< 3: 1> alignment */ +} T_cd2k_str_011; +#endif + + +// STRUCT-FF: REL99 AND ( TI_PS_FF_EMR OR TI_PS_FF_RTD ) +#ifndef __T_cd2k_str_110_1__ +#define __T_cd2k_str_110_1__ +/* + * Structured Element + * CCDGEN:WriteStruct_Count==58 + */ +typedef struct +{ + U8 qof1; /*< 0: 1> QOF1 */ + U8 walsh_length1; /*< 1: 1> WALSH_LENGTH1 */ + U8 aux_pilot_walsh1; /*< 2: 1> AUX_PILOT_WALSH1 */ + U8 _align0; /*< 3: 1> alignment */ +} T_cd2k_str_110_1; +#endif + + +// STRUCT-FF: REL99 AND ( TI_PS_FF_EMR OR TI_PS_FF_RTD ) +#ifndef __T_cd2k_str_110_2__ +#define __T_cd2k_str_110_2__ +/* + * Structured Element + * CCDGEN:WriteStruct_Count==59 + */ +typedef struct +{ + U8 qof2; /*< 0: 1> QOF2 */ + U8 walsh_length2; /*< 1: 1> WALSH_LENGTH2 */ + U8 aux_pilot_walsh2; /*< 2: 1> AUX_PILOT_WALSH2 */ + U8 _align0; /*< 3: 1> alignment */ +} T_cd2k_str_110_2; +#endif + + +// STRUCT-FF: REL99 AND ( TI_PS_FF_EMR OR TI_PS_FF_RTD ) +#ifndef __T_cd2k_str_110__ +#define __T_cd2k_str_110__ +/* + * Structured Element + * CCDGEN:WriteStruct_Count==60 + */ +typedef struct +{ + T_cd2k_str_011 cd2k_str_011; /*< 0: 4> Structured Element */ + U8 qof; /*< 4: 1> QOF */ + U8 walsh_len_c; /*< 5: 1> WALSH_LEN_C */ + U8 aux_walsh_len; /*< 6: 1> AUX_WALSH_LEN */ + U8 _align0; /*< 7: 1> alignment */ + T_cd2k_str_110_1 cd2k_str_110_1; /*< 8: 4> Structured Element */ + T_cd2k_str_110_2 cd2k_str_110_2; /*< 12: 4> Structured Element */ +} T_cd2k_str_110; +#endif + + +// STRUCT-FF: REL99 AND ( TI_PS_FF_EMR OR TI_PS_FF_RTD ) +#ifndef __T_cd2k_str_all__ +#define __T_cd2k_str_all__ +/* + * Structured Element + * CCDGEN:WriteStruct_Count==61 + */ +typedef struct +{ + U8 flag_3bit; /*< 0: 1> FLAG 3 bits */ + U8 _align0; /*< 1: 1> alignment */ + U8 _align1; /*< 2: 1> alignment */ + U8 v_cd2k_str_000; /*< 3: 1> valid-flag */ + T_cd2k_str_000 cd2k_str_000; /*< 4: 4> Structured Element */ + U8 _align2; /*< 8: 1> alignment */ + U8 _align3; /*< 9: 1> alignment */ + U8 _align4; /*< 10: 1> alignment */ + U8 v_cd2k_str_001; /*< 11: 1> valid-flag */ + T_cd2k_str_001 cd2k_str_001; /*< 12: 4> Structured Element */ + U8 _align5; /*< 16: 1> alignment */ + U8 _align6; /*< 17: 1> alignment */ + U8 _align7; /*< 18: 1> alignment */ + U8 v_cd2k_str_010; /*< 19: 1> valid-flag */ + T_cd2k_str_010 cd2k_str_010; /*< 20: 8> Structured Element */ + U8 _align8; /*< 28: 1> alignment */ + U8 _align9; /*< 29: 1> alignment */ + U8 _align10; /*< 30: 1> alignment */ + U8 v_cd2k_str_011; /*< 31: 1> valid-flag */ + T_cd2k_str_011 cd2k_str_011; /*< 32: 4> Structured Element */ + U8 _align11; /*< 36: 1> alignment */ + U8 _align12; /*< 37: 1> alignment */ + U8 _align13; /*< 38: 1> alignment */ + U8 v_cd2k_str_110; /*< 39: 1> valid-flag */ + T_cd2k_str_110 cd2k_str_110; /*< 40: 16> Structured Element */ +} T_cd2k_str_all; +#endif + + +// STRUCT-FF: REL99 AND ( TI_PS_FF_EMR OR TI_PS_FF_RTD ) +#ifndef __T_cd2k_cell_str__ +#define __T_cd2k_cell_str__ +/* + * Structured Element + * CCDGEN:WriteStruct_Count==62 + */ +typedef struct +{ + U16 pilot_PN_offset; /*< 0: 2> Pilot PN offset */ + U8 _align0; /*< 2: 1> alignment */ + U8 v_cd2k_str_all; /*< 3: 1> valid-flag */ + T_cd2k_str_all cd2k_str_all; /*< 4: 56> Structured Element */ +} T_cd2k_cell_str; +#endif + + +// STRUCT-FF: REL99 AND ( TI_PS_FF_EMR OR TI_PS_FF_RTD ) +#ifndef __T_cdma2000_cell_desc__ +#define __T_cdma2000_cell_desc__ +/* + * CDMA2000 neighbour cell description structure + * CCDGEN:WriteStruct_Count==63 + */ +typedef struct +{ + U8 cdma2000_frequency_band; /*< 0: 1> cdma2000 frequency band */ + U8 _align0; /*< 1: 1> alignment */ + U16 cdma2000_frequency; /*< 2: 2> cdma2000 frequency */ + U8 number_cdma2000_cells; /*< 4: 1> number_cdma2000_cells */ + U8 _align1; /*< 5: 1> alignment */ + U8 _align2; /*< 6: 1> alignment */ + U8 c_cd2k_cell_str; /*< 7: 1> counter */ + T_cd2k_cell_str cd2k_cell_str[MAX_CDMA2K_NEIGH_CELLS]; /*< 8:3840> Structured Element */ +} T_cdma2000_cell_desc; +#endif + + +// STRUCT-FF: REL99 AND ( TI_PS_FF_EMR OR TI_PS_FF_RTD ) +#ifndef __T_fdd_report__ +#define __T_fdd_report__ +/* + * FDD Reporting + * CCDGEN:WriteStruct_Count==64 + */ +typedef struct +{ + U8 fdd_rep_offset; /*< 0: 1> FDD Reporting Offset */ + U8 fdd_rep_thres; /*< 1: 1> FDD Reporting Threshold */ + U8 _align0; /*< 2: 1> alignment */ + U8 _align1; /*< 3: 1> alignment */ +} T_fdd_report; +#endif + + +// STRUCT-FF: REL99 AND ( TI_PS_FF_EMR OR TI_PS_FF_RTD ) +#ifndef __T_tdd_rep__ +#define __T_tdd_rep__ +/* + * TDD Reporting + * CCDGEN:WriteStruct_Count==65 + */ +typedef struct +{ + U8 tdd_rep_offset; /*< 0: 1> TDD Reporting Offset */ + U8 tdd_rep_thres; /*< 1: 1> TDD Reporting Threshold */ + U8 _align0; /*< 2: 1> alignment */ + U8 _align1; /*< 3: 1> alignment */ +} T_tdd_rep; +#endif + + +// STRUCT-FF: REL99 AND ( TI_PS_FF_EMR OR TI_PS_FF_RTD ) +#ifndef __T_cdma2000_rep__ +#define __T_cdma2000_rep__ +/* + * Structured Element + * CCDGEN:WriteStruct_Count==66 + */ +typedef struct +{ + U8 cdma2000_rep_offset; /*< 0: 1> CDMA2000 Reporting Offset */ + U8 cdma2000_rep_thres; /*< 1: 1> CDMA2000 Reporting Threshold */ + U8 _align0; /*< 2: 1> alignment */ + U8 _align1; /*< 3: 1> alignment */ +} T_cdma2000_rep; +#endif + + +// STRUCT-FF: REL99 +#ifndef __T_egprs_pck_ch_req_bep_per__ +#define __T_egprs_pck_ch_req_bep_per__ +/* + * EGPRS packet channel and BEP period structure + * CCDGEN:WriteStruct_Count==67 + */ +typedef struct +{ + U8 egprs_packet_channel_request; /*< 0: 1> EGPRS packet channel request message sent */ + U8 bep_period; /*< 1: 1> BEP Period */ + U8 _align0; /*< 2: 1> alignment */ + U8 _align1; /*< 3: 1> alignment */ +} T_egprs_pck_ch_req_bep_per; +#endif + + +// STRUCT-FF: REL99 +#ifndef __T_gprs_ext_info__ +#define __T_gprs_ext_info__ +/* + * GPRS cell options Extension Information + * CCDGEN:WriteStruct_Count==68 + */ +typedef struct +{ + U8 flag; /*< 0: 1> Flag */ + U8 _align0; /*< 1: 1> alignment */ + U8 _align1; /*< 2: 1> alignment */ + U8 v_egprs_pck_ch_req_bep_per; /*< 3: 1> valid-flag */ + T_egprs_pck_ch_req_bep_per egprs_pck_ch_req_bep_per; /*< 4: 4> EGPRS packet channel and BEP period structure */ + U8 v_pfc_feature_mode; /*< 8: 1> valid-flag */ + U8 pfc_feature_mode; /*< 9: 1> PFC feature support by the N/W */ + U8 v_dtm_support; /*< 10: 1> valid-flag */ + U8 dtm_support; /*< 11: 1> DTM support by the cell */ + U8 v_bss_paging_coord; /*< 12: 1> valid-flag */ + U8 bss_paging_coord; /*< 13: 1> BSS paging co-ordination */ + U8 v_ccn_active; /*< 14: 1> valid-flag */ + U8 ccn_active; /*< 15: 1> Indicates NACC support by rel 4 network */ + U8 v_nw_ext_ul_tbf; /*< 16: 1> valid-flag */ + U8 nw_ext_ul_tbf; /*< 17: 1> Indicates Extended UL TBF support by rel 4 network */ + U8 _align2; /*< 18: 1> alignment */ + U8 _align3; /*< 19: 1> alignment */ +} T_gprs_ext_info; +#endif + +#ifndef __T_gprs_ext_bits__ +#define __T_gprs_ext_bits__ +/* + * GPRS cell options extensions Bits IE + * CCDGEN:WriteStruct_Count==69 + */ +typedef struct +{ +// ELEM-FF: REL99 + U8 ext_len; /*< 0: 1> Extension Length */ +// ELEM-FF: REL99 + U8 _align0; /*< 1: 1> alignment */ + U8 _align1; /*< 2: 1> alignment */ + U8 _align2; /*< 3: 1> alignment */ + T_gprs_ext_info gprs_ext_info; /*< 4: 20> BIT STRING: GPRS cell options Extension Information */ +// ELEM-FF: !REL99 +// U8 ext_len; /*< 0: 0> Extension Length */ +// ELEM-FF: !REL99 +// U8 c_spare_ext; /*< 0: 0> counter */ +// // U8 spare_ext[64]; /*< 0: 0> Spare bits(s) */ +} T_gprs_ext_bits; +#endif + +#ifndef __T_gprs_cell_opt__ +#define __T_gprs_cell_opt__ +/* + * GPRS Cell Options + * CCDGEN:WriteStruct_Count==70 + */ +typedef struct +{ + U8 nmo; /*< 0: 1> NMO */ + U8 t3168; /*< 1: 1> T3168 */ + U8 t3192; /*< 2: 1> T3192 */ + U8 drx_t_max; /*< 3: 1> DRX_TIMER_MAX */ + U8 ab_type; /*< 4: 1> Access Burst Type */ + U8 ctrl_ack_type; /*< 5: 1> CONTROL_ACK_TYPE */ + U8 bs_cv_max; /*< 6: 1> BS_CV_MAX */ + U8 v_pan_struct; /*< 7: 1> valid-flag */ + T_pan_struct pan_struct; /*< 8: 4> PAN Structure */ + U8 _align0; /*< 12: 1> alignment */ + U8 _align1; /*< 13: 1> alignment */ + U8 _align2; /*< 14: 1> alignment */ + U8 v_gprs_ext_bits; /*< 15: 1> valid-flag */ + T_gprs_ext_bits gprs_ext_bits; /*< 16: 24> GPRS cell options extensions Bits IE */ +} T_gprs_cell_opt; +#endif + + +/* + * End of substructure section, begin of message definition section + */ + +#ifndef __T_MS_RF_CAPABILITY__ +#define __T_MS_RF_CAPABILITY__ +/* + * + * CCDGEN:WriteStruct_Count==71 + */ +typedef struct +{ + U8 msg_type; /*< 0: 1> Message Type */ + U8 _align0; /*< 1: 1> alignment */ + U8 _align1; /*< 2: 1> alignment */ + U8 _align2; /*< 3: 1> alignment */ + T_rf_cap rf_cap; /*< 4: 76> MS RF Capability */ +} T_MS_RF_CAPABILITY; +#endif + + +#include "CDG_LEAVE.h" + + +#endif