FreeCalypso > hg > fc-magnetite
view cdg211/cdginc/p_em.h @ 673:62a5285e014a
Lorekeeping: allow tpudrv-leonardo.lib on Leonardo/Tango
Back in 2015 the Mother's idea was to produce a FreeCalypso development
board that would be a clone of TI Leonardo, including the original
quadband RFFE; one major additional stipulation was that this board
needed to be able to run original unmodified TCS211-20070608 firmware
with all blobs intact, with only minimal binary patches to main.lib
and tpudrv.lib. The necessary patched libs were produced at that time
in the tcs211-patches repository.
That plan was changed and we produced FCDEV3B instead, with Openmoko's
triband RFFE instead of Leonardo quadband, but when FC Magnetite started
in 2016, a TPUDRV_blob= provision was still made, allowing the possibility
of patching OM's tpudrv.lib for a restored Leonardo RFFE.
Now in 2020 we have FC Tango which is essentially a verbatim clone of
Leonardo core, including the original quadband RFFE. We have also
deblobbed our firmware so much that we have absolutely no real need
for a blob version of tpudrv.lib - but I thought it would be neat to put
the ancient TPUDRV_blob= mechanism (classic config) to its originally
intended use, just for the heck of it.
author | Mychaela Falconia <falcon@freecalypso.org> |
---|---|
date | Fri, 29 May 2020 03:55:36 +0000 |
parents | 56abf6cf8a0b |
children |
line wrap: on
line source
/* +--------------------------------------------------------------------------+ | PROJECT : PROTOCOL STACK | | FILE : p_em.h | | SOURCE : "__out__\g23m_dfile\prim\em.pdf" | | LastModified : "2002-02-25" | | IdAndVersion : "8304.129.96.103" | | SrcFileTime : "Tue Apr 5 09:42:26 2005" | | Generated by CCDGEN_2.5.5 on Fri Jun 08 13:59:15 2007 | | !!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 _Tue_Apr_5_09_42_26_2005 #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==1049 */ 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==1050 */ 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==1051 */ #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==1052 */ 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==1053 */ 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==1054 */ 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==1055 */ 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==1056 */ 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==1057 */ 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==1058 */ 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==1059 */ 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==1060 */ 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==1061 */ 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==1062 */ 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==1063 */ 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==1064 */ 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 */ U8 _align1; /*< 17: 1> alignment */ U8 _align2; /*< 18: 1> alignment */ U8 _align3; /*< 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==1065 */ 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==1066 */ 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==1067 */ 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==1068 */ 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==1069 */ 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==1070 */ 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 */ U8 _align0; /*< 6: 1> alignment */ U8 _align1; /*< 7: 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==1071 */ 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==1072 */ 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==1073 */ 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==1074 */ 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==1075 */ 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==1076 */ 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==1077 */ 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==1078 */ 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==1079 */ 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==1080 */ 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==1081 */ 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==1082 */ 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==1083 */ 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==1084 */ 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==1085 */ 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==1086 */ 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==1087 */ 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==1088 */ 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==1089 */ 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==1090 */ 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==1091 */ 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==1092 */ 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==1093 */ 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==1094 */ 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==1095 */ 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==1096 */ 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==1097 */ 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==1098 */ 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==1099 */ 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==1100 */ 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==1101 */ 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==1102 */ 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==1103 */ 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==1104 */ 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==1105 */ 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==1106 */ 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==1107 */ 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==1108 */ 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 #include "CDG_LEAVE.h" #endif