view cdg3/cdginc-locosto/p_em.h @ 77:3b2d13172b6c

cl_imei.c: implemented new FreeCalypso IMEI finding logic
author Mychaela Falconia <falcon@freecalypso.org>
date Sun, 02 Oct 2016 03:48:22 +0000
parents c15047b3d00d
children
line wrap: on
line source

/*
+--------------------------------------------------------------------------+
| PROJECT : PROTOCOL STACK                                                 |
| FILE    : p_em.h                                                         |
| SOURCE  : "sap\em.pdf"                                                   |
| LastModified : "2002-02-25"                                              |
| IdAndVersion : "8304.129.96.103"                                         |
| SrcFileTime  : "Thu Nov 29 09:40:50 2007"                                |
| Generated by CCDGEN_2.5.5A on Thu Sep 25 09:18:53 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
 */


#ifndef P_EM_H
#define P_EM_H


#define CDG_ENTER__P_EM_H

#define CDG_ENTER__FILENAME _P_EM_H
#define CDG_ENTER__P_EM_H__FILE_TYPE CDGINC
#define CDG_ENTER__P_EM_H__LAST_MODIFIED _2002_02_25
#define CDG_ENTER__P_EM_H__ID_AND_VERSION _8304_129_96_103

#define CDG_ENTER__P_EM_H__SRC_FILE_TIME _Thu_Nov_29_09_40_50_2007

#include "CDG_ENTER.h"

#undef CDG_ENTER__P_EM_H

#undef CDG_ENTER__FILENAME


#include "p_em.val"

#ifndef __T_net_ctrl__
#define __T_net_ctrl__
/*
 * Network control
 * CCDGEN:WriteStruct_Count==1481
 */
typedef struct
{
  U8                        spgc_ccch_sup;            /*<  0:  1> SPLIT_PG_CYCLE_SUPPORT: whether it is supported or not - should be BOOL, but BOOL is not valid in SAP */
  U8                        priority_access_thr;      /*<  1:  1> packet access to the network according to priority level */
  U8                        _align0;                  /*<  2:  1> alignment                                          */
  U8                        _align1;                  /*<  3:  1> alignment                                          */
} T_net_ctrl;
#endif

#ifndef __T_em_imeisv__
#define __T_em_imeisv__
/*
 * IMEISV
 * CCDGEN:WriteStruct_Count==1482
 */
typedef struct
{
  U8                        ident_type;               /*<  0:  1> Type of identity                                   */
  U8                        odd_even;                 /*<  1:  1> Odd/ Even indication                               */
  U8                        v_ident_dig;              /*<  2:  1> valid-flag                                         */
  U8                        c_ident_dig;              /*<  3:  1> counter                                            */
  U8                        ident_dig[16];            /*<  4: 16> Identity digit                                     */
} T_em_imeisv;
#endif

/*
 * IMSI
 * CCDGEN:WriteStruct_Count==1483
 */
#ifndef __T_em_imsi__
#define __T_em_imsi__
typedef T_em_imeisv T_em_imsi;
#endif
#ifndef __T_hop_chn__
#define __T_hop_chn__
/*
 * frequency hopping channel list after time
 * CCDGEN:WriteStruct_Count==1484
 */
typedef struct
{
  U8                        maio;                     /*<  0:  1> Mobile allocation index offset                     */
  U8                        nr_arfcns;                /*<  1:  1> Number of arfcns in hopping list                   */
  U16                       ma[65];                   /*<  2:130> MA list after time                                 */
} T_hop_chn;
#endif

#ifndef __T_classm2__
#define __T_classm2__
/*
 * Classmark 2
 * CCDGEN:WriteStruct_Count==1485
 */
typedef struct
{
  U8                        rev_lev;                  /*<  0:  1> rev_lev                                            */
  U8                        es_ind;                   /*<  1:  1> es_ind                                             */
  U8                        a5_1;                     /*<  2:  1> a5_1                                               */
  U8                        rf_pow_cap;               /*<  3:  1> rf_pow_cap                                         */
  U8                        ps_cap;                   /*<  4:  1> ps_cap                                             */
  U8                        ss_screen;                /*<  5:  1> ss_screen                                          */
  U8                        sm_cap;                   /*<  6:  1> sm_cap                                             */
  U8                        freq_cap;                 /*<  7:  1> freq_cap                                           */
  U8                        class_3;                  /*<  8:  1> class_3                                            */
  U8                        cmsp;                     /*<  9:  1> cmsp                                               */
  U8                        a5_3;                     /*< 10:  1> a5_3                                               */
  U8                        a5_2;                     /*< 11:  1> a5_2                                               */
} T_classm2;
#endif

#ifndef __T_meas_cap__
#define __T_meas_cap__
/*
 * meas_cap
 * CCDGEN:WriteStruct_Count==1486
 */
typedef struct
{
  U8                        sw_time;                  /*<  0:  1> sw_time                                            */
  U8                        sws_time;                 /*<  1:  1> sws_time                                           */
  U8                        dummy1;                   /*<  2:  1> dummy1                                             */
  U8                        dummy2;                   /*<  3:  1> dummy2                                             */
} T_meas_cap;
#endif

#ifndef __T_classm3__
#define __T_classm3__
/*
 * Classmark 3
 * CCDGEN:WriteStruct_Count==1487
 */
typedef struct
{
  U8                        mb_sub;                   /*<  0:  1> mb_sub                                             */
  U8                        a5_7;                     /*<  1:  1> a5_7                                               */
  U8                        a5_6;                     /*<  2:  1> a5_6                                               */
  U8                        a5_5;                     /*<  3:  1> a5_5                                               */
  U8                        a5_4;                     /*<  4:  1> a5_4                                               */
  U8                        v_radio_cap_2;            /*<  5:  1> v_radio_cap_2                                      */
  U8                        radio_cap_2;              /*<  6:  1> radio_cap_2                                        */
  U8                        v_radio_cap_1;            /*<  7:  1> v_radio_cap_1                                      */
  U8                        radio_cap_1;              /*<  8:  1> radio_cap_1                                        */
  U8                        v_r_support;              /*<  9:  1> v_r_support                                        */
  U8                        r_support;                /*< 10:  1> r_support                                          */
  U8                        v_m_s_class;              /*< 11:  1> v_m_s_class                                        */
  U8                        m_s_class;                /*< 12:  1> m_s_class                                          */
  U8                        ucs2_treat;               /*< 13:  1> ucs2_treat                                         */
  U8                        ext_meas_cap;             /*< 14:  1> ext_meas_cap                                       */
  U8                        v_meas_cap;               /*< 15:  1> v_meas_cap                                         */
  T_meas_cap                meas_cap;                 /*< 16:  4> meas_cap                                           */
} T_classm3;
#endif

#ifndef __T_ul_tbf_par__
#define __T_ul_tbf_par__
/*
 * ul tbf parameter
 * CCDGEN:WriteStruct_Count==1488
 */
typedef struct
{
  U8                        tfi;                      /*<  0:  1> Basic Element                                      */
  U8                        mac_mod;                  /*<  1:  1> Basic Element                                      */
  U16                       ul_nb_block;              /*<  2:  2> Number of blocks to be sent for uplink             */
  U8                        cv;                       /*<  4:  1> countdown value                                    */
  U8                        cs;                       /*<  5:  1> Basic Element                                      */
  U8                        _align0;                  /*<  6:  1> alignment                                          */
  U8                        _align1;                  /*<  7:  1> alignment                                          */
} T_ul_tbf_par;
#endif

#ifndef __T_dl_tbf_par__
#define __T_dl_tbf_par__
/*
 * dl tbf parameters
 * CCDGEN:WriteStruct_Count==1489
 */
typedef struct
{
  U8                        tfi;                      /*<  0:  1> Basic Element                                      */
  U8                        mac_mod;                  /*<  1:  1> Basic Element                                      */
  U8                        _align0;                  /*<  2:  1> alignment                                          */
  U8                        _align1;                  /*<  3:  1> alignment                                          */
} T_dl_tbf_par;
#endif

#ifndef __T_t3312__
#define __T_t3312__
/*
 * Structured Element
 * CCDGEN:WriteStruct_Count==1490
 */
typedef struct
{
  U8                        t3312_deactivated;        /*<  0:  1> Periodic RAU timer state                           */
  U8                        _align0;                  /*<  1:  1> alignment                                          */
  U8                        _align1;                  /*<  2:  1> alignment                                          */
  U8                        _align2;                  /*<  3:  1> alignment                                          */
  U32                       t3312_val;                /*<  4:  4> Periodic RAU timer value in seconds                */
} T_t3312;
#endif

#ifndef __T_amr_cod_prop__
#define __T_amr_cod_prop__
/*
 * Parameters for multirate speech field
 * CCDGEN:WriteStruct_Count==1491
 */
typedef struct
{
  U8                        amr_codec_thr;            /*<  0:  1> Lower thresholds for switching between mode j and j-1 */
  U8                        amr_codec_hyst;           /*<  1:  1> Hysteresis values to obtain the higher thresholds for switching between mode j and j+1 */
  U8                        _align0;                  /*<  2:  1> alignment                                          */
  U8                        _align1;                  /*<  3:  1> alignment                                          */
} T_amr_cod_prop;
#endif

#ifndef __T_hop_chn2__
#define __T_hop_chn2__
/*
 * Frequency channel hopping list before time
 * CCDGEN:WriteStruct_Count==1492
 */
typedef struct
{
  U8                        maio;                     /*<  0:  1> Mobile allocation index offset                     */
  U8                        nr_arfcns;                /*<  1:  1> Number of arfcns in hopping list                   */
  U16                       ma[65];                   /*<  2:130> MA list after time                                 */
} T_hop_chn2;
#endif


/*
 * End of substructure section, begin of primitive definition section
 */

#ifndef __T_EM_SC_INFO_REQ__
#define __T_EM_SC_INFO_REQ__
/*
 * 
 * CCDGEN:WriteStruct_Count==1493
 */
typedef struct
{
  U16                       data;                     /*<  0:  2> requested data                                     */
  U8                        _align0;                  /*<  2:  1> alignment                                          */
  U8                        _align1;                  /*<  3:  1> alignment                                          */
} T_EM_SC_INFO_REQ;
#endif

#ifndef __T_EM_SC_INFO_CNF__
#define __T_EM_SC_INFO_CNF__
/*
 * 
 * CCDGEN:WriteStruct_Count==1494
 */
typedef struct
{
  U16                       arfcn;                    /*<  0:  2> channel number                                     */
  S16                       c1;                       /*<  2:  2> path loss criterion C1                             */
  S16                       c2;                       /*<  4:  2> reselection criterion C2                           */
  U8                        rxlev;                    /*<  6:  1> received field strength                            */
  U8                        bsic;                     /*<  7:  1> base station ID code                               */
  U8                        dsc;                      /*<  8:  1> actual downlink signalling counter                 */
  U8                        txlev;                    /*<  9:  1> Power Level                                        */
  U8                        tn;                       /*< 10:  1> timeslot number                                    */
  U8                        rlt;                      /*< 11:  1> actual radiolink timeout counter                   */
  U8                        tav;                      /*< 12:  1> timing advance                                     */
  U8                        rxlev_f;                  /*< 13:  1> received field strength                            */
  U8                        rxlev_s;                  /*< 14:  1> received field strength                            */
  U8                        rxqual_f;                 /*< 15:  1> received quality                                   */
  U8                        rxqual_s;                 /*< 16:  1> received quality                                   */
  U8                        _align0;                  /*< 17:  1> alignment                                          */
  U16                       lac;                      /*< 18:  2> location area code                                 */
  U8                        cba;                      /*< 20:  1> cell bar access                                    */
  U8                        cbq;                      /*< 21:  1> cell bar  qualifier                                */
  U16                       cell_id;                  /*< 22:  2> cell identity SC                                   */
  U8                        cell_type_ind;            /*< 24:  1> Indicates the cell type GSM/GPRS                   */
  U8                        vocoder;                  /*< 25:  1> Vocoder type                                       */
  U8                        _align1;                  /*< 26:  1> alignment                                          */
  U8                        _align2;                  /*< 27:  1> alignment                                          */
} T_EM_SC_INFO_CNF;
#endif

#ifndef __T_EM_SC_GPRS_INFO_REQ__
#define __T_EM_SC_GPRS_INFO_REQ__
/*
 * 
 * CCDGEN:WriteStruct_Count==1495
 */
typedef struct
{
  U16                       data;                     /*<  0:  2> requested data                                     */
  U8                        _align0;                  /*<  2:  1> alignment                                          */
  U8                        _align1;                  /*<  3:  1> alignment                                          */
} T_EM_SC_GPRS_INFO_REQ;
#endif

#ifndef __T_EM_SC_GPRS_INFO_CNF__
#define __T_EM_SC_GPRS_INFO_CNF__
/*
 * 
 * CCDGEN:WriteStruct_Count==1496
 */
typedef struct
{
  U8                        gmm_state;                /*<  0:  1> codes the GPRS state                               */
  U8                        tn;                       /*<  1:  1> timeslot number                                    */
  U8                        nmo;                      /*<  2:  1> network mode of operation                          */
  U8                        _align0;                  /*<  3:  1> alignment                                          */
  T_net_ctrl                net_ctrl;                 /*<  4:  4> Network control                                    */
  U8                        cba;                      /*<  8:  1> cell bar access                                    */
  U8                        rac;                      /*<  9:  1> routing area code                                  */
  U8                        tav;                      /*< 10:  1> timing advance                                     */
  U8                        dsc;                      /*< 11:  1> actual downlink signalling counter                 */
  S16                       c31;                      /*< 12:  2> reselection criterion C31 (GPRS)                   */
  S16                       c32;                      /*< 14:  2> reselection criterion C32 (GPRS)                   */
  U8                        nco;                      /*< 16:  1> Network Controlled reselection Order               */
// ELEM-FF: REL99 
  U8                        bss_paging_coord;         /*< 17:  1> BS paging coordination                             */
// ELEM-FF: REL99 
  U8                        band_ind;                 /*< 18:  1> Band Indicator                                     */
  U8                        _align1;                  /*< 19:  1> alignment                                          */
} T_EM_SC_GPRS_INFO_CNF;
#endif

#ifndef __T_EM_NC_INFO_REQ__
#define __T_EM_NC_INFO_REQ__
/*
 * 
 * CCDGEN:WriteStruct_Count==1497
 */
typedef struct
{
  U16                       data;                     /*<  0:  2> requested data                                     */
  U8                        _align0;                  /*<  2:  1> alignment                                          */
  U8                        _align1;                  /*<  3:  1> alignment                                          */
} T_EM_NC_INFO_REQ;
#endif

#ifndef __T_EM_NC_INFO_CNF__
#define __T_EM_NC_INFO_CNF__
/*
 * 
 * CCDGEN:WriteStruct_Count==1498
 */
typedef struct
{
  U8                        no_ncells;                /*<  0:  1> no of neighbour cells                              */
  U8                        _align0;                  /*<  1:  1> alignment                                          */
  U16                       arfcn_nc[6];              /*<  2: 12> channel number                                     */
  S16                       c1_nc[6];                 /*< 14: 12> path loss criterion C1 neighbour cells             */
  S16                       c2_nc[6];                 /*< 26: 12> reselection criterion C2 neighbour cells           */
  U8                        rxlev_nc[6];              /*< 38:  6> received field strength neighbour cell             */
  U8                        bsic_nc[6];               /*< 44:  6> base station ID code neighbour cell                */
  U16                       cell_id_nc[6];            /*< 50: 12> cell identity neighbour cell                       */
  U16                       lac_nc[6];                /*< 62: 12> location area code neighbour cells                 */
  U8                        _align1;                  /*< 74:  1> alignment                                          */
  U8                        _align2;                  /*< 75:  1> alignment                                          */
  U32                       frame_offset[6];          /*< 76: 24> frame offset                                       */
  U32                       time_alignmt[6];          /*<100: 24> time alignment                                     */
  U8                        cba_nc[6];                /*<124:  6> cell bar access neighbour cells                    */
  U8                        cbq_nc[6];                /*<130:  6> cell bar qualifier neighbour cells                 */
  U8                        cell_type_ind[6];         /*<136:  6> Indicates the cell type GSM/GPRS                   */
  U8                        rac[6];                   /*<142:  6> routing area code                                  */
  U8                        temp_offset[6];           /*<148:  6> Stores temporary offset                            */
  U8                        cell_resel_offset[6];     /*<154:  6> stores cell reselect offset                        */
  U8                        rxlev_acc_min[6];         /*<160:  6> stores RXLEV_ACCESS_MIN                            */
  U8                        _align3;                  /*<166:  1> alignment                                          */
  U8                        _align4;                  /*<167:  1> alignment                                          */
} T_EM_NC_INFO_CNF;
#endif

#ifndef __T_EM_LOC_PAG_INFO_REQ__
#define __T_EM_LOC_PAG_INFO_REQ__
/*
 * 
 * CCDGEN:WriteStruct_Count==1499
 */
typedef struct
{
  U16                       data;                     /*<  0:  2> requested data                                     */
  U8                        _align0;                  /*<  2:  1> alignment                                          */
  U8                        _align1;                  /*<  3:  1> alignment                                          */
} T_EM_LOC_PAG_INFO_REQ;
#endif

#ifndef __T_EM_LOC_PAG_INFO_CNF__
#define __T_EM_LOC_PAG_INFO_CNF__
/*
 * 
 * CCDGEN:WriteStruct_Count==1500
 */
typedef struct
{
  U8                        bs_pa_mfrms;              /*<  0:  1> Multiframe Period                                  */
  U8                        t3212;                    /*<  1:  1> Timer T3212                                        */
  U8                        mcc[3];                   /*<  2:  3> mobile country code                                */
  U8                        mnc[3];                   /*<  5:  3> mobile network code                                */
  U32                       tmsi;                     /*<  8:  4> binary representation TMSI                         */
} T_EM_LOC_PAG_INFO_CNF;
#endif

#ifndef __T_EM_PLMN_INFO_REQ__
#define __T_EM_PLMN_INFO_REQ__
/*
 * 
 * CCDGEN:WriteStruct_Count==1501
 */
typedef struct
{
  U16                       data;                     /*<  0:  2> requested data                                     */
  U8                        _align0;                  /*<  2:  1> alignment                                          */
  U8                        _align1;                  /*<  3:  1> alignment                                          */
} T_EM_PLMN_INFO_REQ;
#endif

#ifndef __T_EM_PLMN_INFO_CNF__
#define __T_EM_PLMN_INFO_CNF__
/*
 * 
 * CCDGEN:WriteStruct_Count==1502
 */
typedef struct
{
  U8                        no_creq_max;              /*<  0:  1> mobile country code                                */
  U8                        reest_flag;               /*<  1:  1> Re-establishment flag                              */
  U8                        txpwr_max;                /*<  2:  1> Max power level in a cell                          */
  U8                        rxlev_min;                /*<  3:  1> min. rxlev to access the cell                      */
  U16                       rel_cause;                /*<  4:  2> release cause                                      */
// ELEM-FF: REL99 
  U8                        sgsnr_rel;                /*<  6:  1> SGSNR release                                      */
// ELEM-FF: REL99 
  U8                        mscr_rel;                 /*<  7:  1> MSCR Release                                       */
// ELEM-FF: REL99 
  U8                        net_rel;                  /*<  8:  1> N/W Rel. information                               */
  U8                        _align0;                  /*<  9:  1> alignment                                          */
  U8                        _align1;                  /*< 10:  1> alignment                                          */
  U8                        _align2;                  /*< 11:  1> alignment                                          */
} T_EM_PLMN_INFO_CNF;
#endif

#ifndef __T_EM_CIP_HOP_DTX_INFO_REQ__
#define __T_EM_CIP_HOP_DTX_INFO_REQ__
/*
 * 
 * CCDGEN:WriteStruct_Count==1503
 */
typedef struct
{
  U16                       data;                     /*<  0:  2> requested data                                     */
  U8                        _align0;                  /*<  2:  1> alignment                                          */
  U8                        _align1;                  /*<  3:  1> alignment                                          */
} T_EM_CIP_HOP_DTX_INFO_REQ;
#endif

#ifndef __T_EM_CIP_HOP_DTX_INFO_CNF__
#define __T_EM_CIP_HOP_DTX_INFO_CNF__
/*
 * 
 * CCDGEN:WriteStruct_Count==1504
 */
typedef struct
{
  U8                        ciph_stat;                /*<  0:  1> Cipher status                                      */
  U8                        hop;                      /*<  1:  1> Hopping valid or not flag                          */
  U16                       arfcn;                    /*<  2:  2> channel number                                     */
  U8                        hsn;                      /*<  4:  1> Hopping sequence number                            */
  U8                        dtx_stat;                 /*<  5:  1> DTX status                                         */
  U8                        v_start;                  /*<  6:  1> starting time valid                                */
  U8                        _align0;                  /*<  7:  1> alignment                                          */
  T_hop_chn                 hop_chn;                  /*<  8:132> frequency hopping channel list after time          */
  T_hop_chn2                hop_chn2;                 /*<140:132> Frequency channel hopping list before time         */
} T_EM_CIP_HOP_DTX_INFO_CNF;
#endif

#ifndef __T_EM_POWER_INFO_REQ__
#define __T_EM_POWER_INFO_REQ__
/*
 * 
 * CCDGEN:WriteStruct_Count==1505
 */
typedef struct
{
  U16                       data;                     /*<  0:  2> requested data                                     */
  U8                        _align0;                  /*<  2:  1> alignment                                          */
  U8                        _align1;                  /*<  3:  1> alignment                                          */
} T_EM_POWER_INFO_REQ;
#endif

#ifndef __T_EM_POWER_INFO_CNF__
#define __T_EM_POWER_INFO_CNF__
/*
 * 
 * CCDGEN:WriteStruct_Count==1506
 */
typedef struct
{
  T_classm2                 classm2;                  /*<  0: 12> Classmark 2                                        */
  T_classm3                 classm3;                  /*< 12: 20> Classmark 3                                        */
} T_EM_POWER_INFO_CNF;
#endif

#ifndef __T_EM_IDENTITY_INFO_REQ__
#define __T_EM_IDENTITY_INFO_REQ__
/*
 * 
 * CCDGEN:WriteStruct_Count==1507
 */
typedef struct
{
  U16                       data;                     /*<  0:  2> requested data                                     */
  U8                        _align0;                  /*<  2:  1> alignment                                          */
  U8                        _align1;                  /*<  3:  1> alignment                                          */
} T_EM_IDENTITY_INFO_REQ;
#endif

#ifndef __T_EM_IDENTITY_INFO_CNF__
#define __T_EM_IDENTITY_INFO_CNF__
/*
 * 
 * CCDGEN:WriteStruct_Count==1508
 */
typedef struct
{
  T_em_imeisv               em_imeisv;                /*<  0: 20> IMEISV                                             */
  T_em_imsi                 em_imsi;                  /*< 20: 20> IMSI                                               */
  U32                       tmsi;                     /*< 40:  4> binary representation TMSI                         */
} T_EM_IDENTITY_INFO_CNF;
#endif

#ifndef __T_EM_SW_VERSION_INFO_REQ__
#define __T_EM_SW_VERSION_INFO_REQ__
/*
 * 
 * CCDGEN:WriteStruct_Count==1509
 */
typedef struct
{
  U16                       data;                     /*<  0:  2> requested data                                     */
  U8                        _align0;                  /*<  2:  1> alignment                                          */
  U8                        _align1;                  /*<  3:  1> alignment                                          */
} T_EM_SW_VERSION_INFO_REQ;
#endif

#ifndef __T_EM_SW_VERSION_INFO_CNF__
#define __T_EM_SW_VERSION_INFO_CNF__
/*
 * 
 * CCDGEN:WriteStruct_Count==1510
 */
typedef struct
{
  U16                       v_mmi;                    /*<  0:  2> not implemented yet                                */
  U16                       v_sim;                    /*<  2:  2> not implemented yet                                */
  U16                       v_cc;                     /*<  4:  2> not implemented yet                                */
  U16                       v_ss;                     /*<  6:  2> not implemented yet                                */
  U16                       v_sms;                    /*<  8:  2> not implemented yet                                */
  U16                       v_mm;                     /*< 10:  2> not implemented yet                                */
  U16                       v_rr;                     /*< 12:  2> not implemented yet                                */
  U16                       v_dl;                     /*< 14:  2> not implemented yet                                */
  U16                       v_l1;                     /*< 16:  2> not implemented yet                                */
  U8                        _align0;                  /*< 18:  1> alignment                                          */
  U8                        _align1;                  /*< 19:  1> alignment                                          */
} T_EM_SW_VERSION_INFO_CNF;
#endif

#ifndef __T_EM_COUNTER_IDLE_IND__
#define __T_EM_COUNTER_IDLE_IND__
/*
 * 
 * CCDGEN:WriteStruct_Count==1511
 */
typedef struct
{
  U8                        max_dlt;                  /*<  0:  1> maximum downlink timeout counter                   */
  U8                        act_dlt;                  /*<  1:  1> actual downlink timeout counter                    */
  U8                        _align0;                  /*<  2:  1> alignment                                          */
  U8                        _align1;                  /*<  3:  1> alignment                                          */
} T_EM_COUNTER_IDLE_IND;
#endif

#ifndef __T_EM_COUNTER_DEDI_IND__
#define __T_EM_COUNTER_DEDI_IND__
/*
 * 
 * CCDGEN:WriteStruct_Count==1512
 */
typedef struct
{
  U8                        max_rlt;                  /*<  0:  1> maximum radiolink timeout counter                  */
  U8                        act_rlt;                  /*<  1:  1> actual radiolink timeout counter                   */
  U8                        _align0;                  /*<  2:  1> alignment                                          */
  U8                        _align1;                  /*<  3:  1> alignment                                          */
} T_EM_COUNTER_DEDI_IND;
#endif

#ifndef __T_EM_L1_EVENT_REQ__
#define __T_EM_L1_EVENT_REQ__
/*
 * 
 * CCDGEN:WriteStruct_Count==1513
 */
typedef struct
{
  U16                       bitmask_l1_h;             /*<  0:  2> bitmask for L1 higher bits                         */
  U8                        _align0;                  /*<  2:  1> alignment                                          */
  U8                        _align1;                  /*<  3:  1> alignment                                          */
  U32                       bitmask_l1_l;             /*<  4:  4> bitmask for L1 lower bits                          */
} T_EM_L1_EVENT_REQ;
#endif

#ifndef __T_EM_DL_EVENT_REQ__
#define __T_EM_DL_EVENT_REQ__
/*
 * 
 * CCDGEN:WriteStruct_Count==1514
 */
typedef struct
{
  U16                       bitmask_dl;               /*<  0:  2> bitmask for DL                                     */
  U8                        _align0;                  /*<  2:  1> alignment                                          */
  U8                        _align1;                  /*<  3:  1> alignment                                          */
} T_EM_DL_EVENT_REQ;
#endif

#ifndef __T_EM_RR_EVENT_REQ__
#define __T_EM_RR_EVENT_REQ__
/*
 * 
 * CCDGEN:WriteStruct_Count==1515
 */
typedef struct
{
  U16                       bitmask_rr_h;             /*<  0:  2> bitmask for RR higher bits                         */
  U8                        _align0;                  /*<  2:  1> alignment                                          */
  U8                        _align1;                  /*<  3:  1> alignment                                          */
  U32                       bitmask_rr_l;             /*<  4:  4> bitmask for RR lower bits                          */
} T_EM_RR_EVENT_REQ;
#endif

#ifndef __T_EM_MM_EVENT_REQ__
#define __T_EM_MM_EVENT_REQ__
/*
 * 
 * CCDGEN:WriteStruct_Count==1516
 */
typedef struct
{
  U32                       bitmask_mm;               /*<  0:  4> bitmask for MM                                     */
} T_EM_MM_EVENT_REQ;
#endif

#ifndef __T_EM_CC_EVENT_REQ__
#define __T_EM_CC_EVENT_REQ__
/*
 * 
 * CCDGEN:WriteStruct_Count==1517
 */
typedef struct
{
  U32                       bitmask_cc_h;             /*<  0:  4> bitmask for CC higher bits                         */
  U32                       bitmask_cc_l;             /*<  4:  4> bitmask for CC lower bits                          */
} T_EM_CC_EVENT_REQ;
#endif

#ifndef __T_EM_SS_EVENT_REQ__
#define __T_EM_SS_EVENT_REQ__
/*
 * 
 * CCDGEN:WriteStruct_Count==1518
 */
typedef struct
{
  U16                       bitmask_ss;               /*<  0:  2> bitmask for SS                                     */
  U8                        _align0;                  /*<  2:  1> alignment                                          */
  U8                        _align1;                  /*<  3:  1> alignment                                          */
} T_EM_SS_EVENT_REQ;
#endif

#ifndef __T_EM_SMS_EVENT_REQ__
#define __T_EM_SMS_EVENT_REQ__
/*
 * 
 * CCDGEN:WriteStruct_Count==1519
 */
typedef struct
{
  U32                       bitmask_sms_h;            /*<  0:  4> bitmask for SMS higher bits                        */
  U32                       bitmask_sms_l;            /*<  4:  4> bitmask for SMS lower bits                         */
} T_EM_SMS_EVENT_REQ;
#endif

#ifndef __T_EM_SIM_EVENT_REQ__
#define __T_EM_SIM_EVENT_REQ__
/*
 * 
 * CCDGEN:WriteStruct_Count==1520
 */
typedef struct
{
  U32                       bitmask_sim;              /*<  0:  4> bitmask for SIM                                    */
} T_EM_SIM_EVENT_REQ;
#endif

#ifndef __T_EM_DATA_IND__
#define __T_EM_DATA_IND__
/*
 * 
 * CCDGEN:WriteStruct_Count==1521
 */
typedef struct
{
  U8                        entity;                   /*<  0:  1> Entity name                                        */
  U8                        _align0;                  /*<  1:  1> alignment                                          */
  U8                        _align1;                  /*<  2:  1> alignment                                          */
  U8                        _align2;                  /*<  3:  1> alignment                                          */
} T_EM_DATA_IND;
#endif

#ifndef __T_EM_FMM_SC_INFO_REQ__
#define __T_EM_FMM_SC_INFO_REQ__
/*
 * 
 * CCDGEN:WriteStruct_Count==1522
 */
typedef struct
{
  U16                       data;                     /*<  0:  2> requested data                                     */
  U8                        _align0;                  /*<  2:  1> alignment                                          */
  U8                        _align1;                  /*<  3:  1> alignment                                          */
} T_EM_FMM_SC_INFO_REQ;
#endif

#ifndef __T_EM_FMM_SC_INFO_CNF__
#define __T_EM_FMM_SC_INFO_CNF__
/*
 * 
 * CCDGEN:WriteStruct_Count==1523
 */
typedef struct
{
  U16                       arfcn;                    /*<  0:  2> channel number                                     */
  S16                       c1;                       /*<  2:  2> path loss criterion C1                             */
  S16                       c2;                       /*<  4:  2> reselection criterion C2                           */
  U8                        rac;                      /*<  6:  1> routing area code                                  */
  U8                        hyst;                     /*<  7:  1> C2 / C32 Hysteresis                                */
  S16                       c32;                      /*<  8:  2> reselection criterion C32 (GPRS)                   */
  U8                        gprs_prio_class;          /*< 10:  1> GPRS_PRIORITY_CLASS                                */
  U8                        _align0;                  /*< 11:  1> alignment                                          */
} T_EM_FMM_SC_INFO_CNF;
#endif

#ifndef __T_EM_FMM_SC_GPRS_INFO_REQ__
#define __T_EM_FMM_SC_GPRS_INFO_REQ__
/*
 * 
 * CCDGEN:WriteStruct_Count==1524
 */
typedef struct
{
  U16                       data;                     /*<  0:  2> requested data                                     */
  U8                        _align0;                  /*<  2:  1> alignment                                          */
  U8                        _align1;                  /*<  3:  1> alignment                                          */
} T_EM_FMM_SC_GPRS_INFO_REQ;
#endif

#ifndef __T_EM_FMM_SC_GPRS_INFO_CNF__
#define __T_EM_FMM_SC_GPRS_INFO_CNF__
/*
 * 
 * CCDGEN:WriteStruct_Count==1525
 */
typedef struct
{
  U8                        c31_hyst;                 /*<  0:  1> C31_HYST                                           */
  U8                        ra_re_hyst;               /*<  1:  1> RAC_HYSTERESIS                                     */
  U8                        nco;                      /*<  2:  1> Network Controlled reselection Order               */
  U8                        _align0;                  /*<  3:  1> alignment                                          */
} T_EM_FMM_SC_GPRS_INFO_CNF;
#endif

#ifndef __T_EM_FMM_NC_INFO_REQ__
#define __T_EM_FMM_NC_INFO_REQ__
/*
 * 
 * CCDGEN:WriteStruct_Count==1526
 */
typedef struct
{
  U16                       data;                     /*<  0:  2> requested data                                     */
  U8                        _align0;                  /*<  2:  1> alignment                                          */
  U8                        _align1;                  /*<  3:  1> alignment                                          */
} T_EM_FMM_NC_INFO_REQ;
#endif

#ifndef __T_EM_FMM_NC_INFO_CNF__
#define __T_EM_FMM_NC_INFO_CNF__
/*
 * 
 * CCDGEN:WriteStruct_Count==1527
 */
typedef struct
{
  U8                        no_ncells;                /*<  0:  1> no of neighbour cells                              */
  U8                        _align0;                  /*<  1:  1> alignment                                          */
  U16                       arfcn_nc[6];              /*<  2: 12> channel number                                     */
  S16                       c2_nc[6];                 /*< 14: 12> reselection criterion C2 neighbour cells           */
  U8                        rac_nc[6];                /*< 26:  6> routing area code                                  */
  S16                       c31_nc[6];                /*< 32: 12> reselection criterion C31 (GPRS) neighbour cells   */
  S16                       c32_nc[6];                /*< 44: 12> reselection criterion C32 (GPRS) neighbour cells   */
  U8                        gprs_prio_class_nc[6];    /*< 56:  6> GPRS_PRIORITY_CLASS                                */
  U8                        _align1;                  /*< 62:  1> alignment                                          */
  U8                        _align2;                  /*< 63:  1> alignment                                          */
} T_EM_FMM_NC_INFO_CNF;
#endif

#ifndef __T_EM_FMM_RLC_TRANS_INFO_REQ__
#define __T_EM_FMM_RLC_TRANS_INFO_REQ__
/*
 * 
 * CCDGEN:WriteStruct_Count==1528
 */
typedef struct
{
  U16                       data;                     /*<  0:  2> requested data                                     */
  U8                        _align0;                  /*<  2:  1> alignment                                          */
  U8                        _align1;                  /*<  3:  1> alignment                                          */
} T_EM_FMM_RLC_TRANS_INFO_REQ;
#endif

#ifndef __T_EM_FMM_RLC_TRANS_INFO_CNF__
#define __T_EM_FMM_RLC_TRANS_INFO_CNF__
/*
 * 
 * CCDGEN:WriteStruct_Count==1529
 */
typedef struct
{
  U8                        rlc_num_retrans;          /*<  0:  1> Info about the number of retransmitted RLCs        */
  U8                        _align0;                  /*<  1:  1> alignment                                          */
  U16                       rlc_num_trans;            /*<  2:  2> Info about the number of transmitted RLCs          */
  U8                        rlc_pdu_cnt;              /*<  4:  1> Info about the number of transmitted RLCs          */
  U8                        _align1;                  /*<  5:  1> alignment                                          */
  U8                        _align2;                  /*<  6:  1> alignment                                          */
  U8                        _align3;                  /*<  7:  1> alignment                                          */
  U32                       rlc_start_fn;             /*<  8:  4> Info about the number of transmitted RLCs          */
  U32                       rlc_end_fn;               /*< 12:  4> Info about the number of transmitted RLCs          */
  U16                       rlc_tbc;                  /*< 16:  2> Number of rlc data blocks during the tbf, which is requested to send */
  U8                        _align4;                  /*< 18:  1> alignment                                          */
  U8                        _align5;                  /*< 19:  1> alignment                                          */
} T_EM_FMM_RLC_TRANS_INFO_CNF;
#endif

#ifndef __T_EM_FMM_RESELECTION_START_IND__
#define __T_EM_FMM_RESELECTION_START_IND__
/*
 * 
 * CCDGEN:WriteStruct_Count==1530
 */
typedef struct
{
  U16                       arfcn;                    /*<  0:  2> channel number                                     */
  U8                        rac;                      /*<  2:  1> routing area code                                  */
  U8                        res_type;                 /*<  3:  1> Reselection Type                                   */
} T_EM_FMM_RESELECTION_START_IND;
#endif

#ifndef __T_EM_FMM_RESELECTION_END_IND__
#define __T_EM_FMM_RESELECTION_END_IND__
/*
 * 
 * CCDGEN:WriteStruct_Count==1531
 */
typedef struct
{
  U16                       arfcn;                    /*<  0:  2> channel number                                     */
  U8                        rac;                      /*<  2:  1> routing area code                                  */
  U8                        _align0;                  /*<  3:  1> alignment                                          */
} T_EM_FMM_RESELECTION_END_IND;
#endif

#ifndef __T_EM_FMM_TBF_INFO_REQ__
#define __T_EM_FMM_TBF_INFO_REQ__
/*
 * 
 * CCDGEN:WriteStruct_Count==1532
 */
typedef struct
{
  U16                       data;                     /*<  0:  2> requested data                                     */
  U8                        _align0;                  /*<  2:  1> alignment                                          */
  U8                        _align1;                  /*<  3:  1> alignment                                          */
} T_EM_FMM_TBF_INFO_REQ;
#endif

#ifndef __T_EM_FMM_TBF_INFO_CNF__
#define __T_EM_FMM_TBF_INFO_CNF__
/*
 * 
 * CCDGEN:WriteStruct_Count==1533
 */
typedef struct
{
  U8                        tbf_trans_type;           /*<  0:  1> TBF unique ID                                      */
  U8                        tbf_num_ults;             /*<  1:  1> number of assigned Timeslots                       */
  U16                       tbf_num_rlc;              /*<  2:  2> number of granted uplink RLC blocks                */
} T_EM_FMM_TBF_INFO_CNF;
#endif

#ifndef __T_EM_PCO_TRACE_REQ__
#define __T_EM_PCO_TRACE_REQ__
/*
 * 
 * CCDGEN:WriteStruct_Count==1534
 */
typedef struct
{
  U32                       pco_bitmap;               /*<  0:  4> EM-Data output to PCO according to bitmap          */
} T_EM_PCO_TRACE_REQ;
#endif

#ifndef __T_EM_GRLC_INFO_REQ__
#define __T_EM_GRLC_INFO_REQ__
/*
 * 
 * CCDGEN:WriteStruct_Count==1535
 */
typedef struct
{
  U16                       data;                     /*<  0:  2> requested data                                     */
  U8                        _align0;                  /*<  2:  1> alignment                                          */
  U8                        _align1;                  /*<  3:  1> alignment                                          */
} T_EM_GRLC_INFO_REQ;
#endif

#ifndef __T_EM_GRLC_INFO_CNF__
#define __T_EM_GRLC_INFO_CNF__
/*
 * 
 * CCDGEN:WriteStruct_Count==1536
 */
typedef struct
{
  U8                        grlc_state;               /*<  0:  1> grlc state                                         */
  U8                        tbf_mod;                  /*<  1:  1> Basic Element                                      */
  U8                        _align0;                  /*<  2:  1> alignment                                          */
  U8                        _align1;                  /*<  3:  1> alignment                                          */
  T_ul_tbf_par              ul_tbf_par;               /*<  4:  8> ul tbf parameter                                   */
  T_dl_tbf_par              dl_tbf_par;               /*< 12:  4> dl tbf parameters                                  */
} T_EM_GRLC_INFO_CNF;
#endif

#ifndef __T_EM_GMM_INFO_REQ__
#define __T_EM_GMM_INFO_REQ__
/*
 * 
 * CCDGEN:WriteStruct_Count==1537
 */
typedef struct
{
  U16                       data;                     /*<  0:  2> requested data                                     */
  U8                        _align0;                  /*<  2:  1> alignment                                          */
  U8                        _align1;                  /*<  3:  1> alignment                                          */
} T_EM_GMM_INFO_REQ;
#endif

#ifndef __T_EM_GMM_INFO_CNF__
#define __T_EM_GMM_INFO_CNF__
/*
 * 
 * CCDGEN:WriteStruct_Count==1538
 */
typedef struct
{
  U8                        ready_state;              /*<  0:  1> ready-standby state                                */
  U8                        ciphering_algorithm;      /*<  1:  1> ciphering algorithm                                */
  U8                        _align0;                  /*<  2:  1> alignment                                          */
  U8                        _align1;                  /*<  3:  1> alignment                                          */
  U32                       tlli;                     /*<  4:  4> tlli                                               */
  U32                       ptmsi;                    /*<  8:  4> ptmsi                                              */
  U32                       ptmsi_sig;                /*< 12:  4> ptmsi signature                                    */
  U32                       ready_timer;              /*< 16:  4> ready timer T3314                                  */
  T_t3312                   t3312;                    /*< 20:  8> Structured Element                                 */
} T_EM_GMM_INFO_CNF;
#endif

#ifndef __T_EM_AMR_INFO_REQ__
#define __T_EM_AMR_INFO_REQ__
/*
 * 
 * CCDGEN:WriteStruct_Count==1539
 */
typedef struct
{
  U16                       data;                     /*<  0:  2> requested data                                     */
  U8                        _align0;                  /*<  2:  1> alignment                                          */
  U8                        _align1;                  /*<  3:  1> alignment                                          */
} T_EM_AMR_INFO_REQ;
#endif

#ifndef __T_EM_AMR_INFO_CNF__
#define __T_EM_AMR_INFO_CNF__
/*
 * 
 * CCDGEN:WriteStruct_Count==1540
 */
typedef struct
{
  U8                        amr_vocoder;              /*<  0:  1> AMR vocoder type                                   */
  U8                        amr_icmi;                 /*<  1:  1> AMR initial codec mode indicator                   */
  U8                        amr_icm;                  /*<  2:  1> AMR initial codec mode(index in the ACS)           */
  U8                        amr_acs;                  /*<  3:  1> AMR active codec set                               */
  U8                        amr_first_codec;          /*<  4:  1> Highest bit rate AMR codec mode                    */
  U8                        amr_nr_modes;             /*<  5:  1> Number of AMR codec modes                          */
  U8                        _align0;                  /*<  6:  1> alignment                                          */
  U8                        _align1;                  /*<  7:  1> alignment                                          */
  T_amr_cod_prop            amr_cod_prop[3];          /*<  8: 12> Parameters for multirate speech field              */
} T_EM_AMR_INFO_CNF;
#endif

#ifndef __T_EM_THROUGHPUT_INFO_REQ__
#define __T_EM_THROUGHPUT_INFO_REQ__
/*
 * 
 * CCDGEN:WriteStruct_Count==1541
 */
typedef struct
{
  U16                       data;                     /*<  0:  2> requested data                                     */
  U8                        _align0;                  /*<  2:  1> alignment                                          */
  U8                        _align1;                  /*<  3:  1> alignment                                          */
} T_EM_THROUGHPUT_INFO_REQ;
#endif

#ifndef __T_EM_THROUGHPUT_INFO_CNF__
#define __T_EM_THROUGHPUT_INFO_CNF__
/*
 * 
 * CCDGEN:WriteStruct_Count==1542
 */
typedef struct
{
  U32                       ul_net_octet;             /*<  0:  4> octet count on up link                             */
  U32                       ul_gross_octet;           /*<  4:  4> Gross throughput octet count on up link            */
  U32                       dl_net_octet;             /*<  8:  4> Net throughput octet count on down link            */
  U32                       dl_gross_octet;           /*< 12:  4> Gross throughput octet count on down link          */
  U32                       dl_crc_errors;            /*< 16:  4> CRC errors in Downlink                             */
} T_EM_THROUGHPUT_INFO_CNF;
#endif

#ifndef __T_EM_GRR_EVENT_REQ__
#define __T_EM_GRR_EVENT_REQ__
/*
 * 
 * CCDGEN:WriteStruct_Count==1543
 */
typedef struct
{
  U32                       bitmask_grr;              /*<  0:  4> Bitmask for GRR                                    */
} T_EM_GRR_EVENT_REQ;
#endif

#ifndef __T_EM_GMM_EVENT_REQ__
#define __T_EM_GMM_EVENT_REQ__
/*
 * 
 * CCDGEN:WriteStruct_Count==1544
 */
typedef struct
{
  U32                       bitmask_gmm;              /*<  0:  4> GMM bitmask                                        */
} T_EM_GMM_EVENT_REQ;
#endif

#ifndef __T_EM_GRLC_EVENT_REQ__
#define __T_EM_GRLC_EVENT_REQ__
/*
 * 
 * CCDGEN:WriteStruct_Count==1545
 */
typedef struct
{
  U32                       bitmask_grlc;             /*<  0:  4> GRLC bitmask                                       */
} T_EM_GRLC_EVENT_REQ;
#endif


#include "CDG_LEAVE.h"


#endif