[Feature]Upload Modem source code
Change-Id: Id4294f30faced84d3e6fd6d5e61e1111bf287a37
diff --git a/mcu/protocol/interface/asn/rr/include/csn_common.h b/mcu/protocol/interface/asn/rr/include/csn_common.h
new file mode 100644
index 0000000..9df091f
--- /dev/null
+++ b/mcu/protocol/interface/asn/rr/include/csn_common.h
@@ -0,0 +1,328 @@
+/*******************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2007
+*
+* BY OPENING THIS FILE, BUYER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND AGREES
+* THAT THE SOFTWARE/FIRMWARE AND ITS DOCUMENTATIONS ("MEDIATEK SOFTWARE")
+* RECEIVED FROM MEDIATEK AND/OR ITS REPRESENTATIVES ARE PROVIDED TO BUYER ON
+* AN "AS-IS" BASIS ONLY. MEDIATEK EXPRESSLY DISCLAIMS ANY AND ALL WARRANTIES,
+* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF
+* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NONINFRINGEMENT.
+* NEITHER DOES MEDIATEK PROVIDE ANY WARRANTY WHATSOEVER WITH RESPECT TO THE
+* SOFTWARE OF ANY THIRD PARTY WHICH MAY BE USED BY, INCORPORATED IN, OR
+* SUPPLIED WITH THE MEDIATEK SOFTWARE, AND BUYER AGREES TO LOOK ONLY TO SUCH
+* THIRD PARTY FOR ANY WARRANTY CLAIM RELATING THERETO. MEDIATEK SHALL ALSO
+* NOT BE RESPONSIBLE FOR ANY MEDIATEK SOFTWARE RELEASES MADE TO BUYER'S
+* SPECIFICATION OR TO CONFORM TO A PARTICULAR STANDARD OR OPEN FORUM.
+*
+* BUYER'S SOLE AND EXCLUSIVE REMEDY AND MEDIATEK'S ENTIRE AND CUMULATIVE
+* LIABILITY WITH RESPECT TO THE MEDIATEK SOFTWARE RELEASED HEREUNDER WILL BE,
+* AT MEDIATEK'S OPTION, TO REVISE OR REPLACE THE MEDIATEK SOFTWARE AT ISSUE,
+* OR REFUND ANY SOFTWARE LICENSE FEES OR SERVICE CHARGE PAID BY BUYER TO
+* MEDIATEK FOR SUCH MEDIATEK SOFTWARE AT ISSUE.
+*
+* THE TRANSACTION CONTEMPLATED HEREUNDER SHALL BE CONSTRUED IN ACCORDANCE
+* WITH THE LAWS OF THE STATE OF CALIFORNIA, USA, EXCLUDING ITS CONFLICT OF
+* LAWS PRINCIPLES. ANY DISPUTES, CONTROVERSIES OR CLAIMS ARISING THEREOF AND
+* RELATED THERETO SHALL BE SETTLED BY ARBITRATION IN SAN FRANCISCO, CA, UNDER
+* THE RULES OF THE INTERNATIONAL CHAMBER OF COMMERCE (ICC).
+*
+*****************************************************************************/
+/*******************************************************************************
+* Filename:
+* ---------
+* csn_common.h : header file
+*
+* Project:
+* --------
+* csn.1 common ------ CSN.1 common file
+*
+* Description:
+* ------------
+* This file defines the data structures for csn common functions
+* If user want to modify the file, please discuss with the owner
+*
+* Author:
+* -------
+ * -------
+*
+*******************************************************************************/
+
+#ifndef _CSN_COMMON_H_
+#define _CSN_COMMON_H_
+
+#ifdef __cplusplus
+ extern "C" {
+#endif
+
+//#include <string.h>
+//#include <stdlib.h>
+//#include <setjmp.h>
+
+#include "mtkcsn_global.h"
+#include "error_struct_enum.h"
+
+/*Evelyn: Remove redundant header and file */
+#include "asn1lib.h"
+#include "as_common.h"
+
+#ifdef _CSN_TEST_
+ #include <time.h>
+ #include <stdarg.h>
+ #include <stdio.h>
+ #include <assert.h>
+ #define DSVALUEINFO ".\\dsvalueinfo.txt"
+ #define DLLEXPORT __declspec( dllexport )
+
+ //#define _CSN_RANDOM_TEST_ //for random encode test //this was removed to "csn_macro_define.h"
+
+#else
+ #define DLLEXPORT
+
+#ifdef _CSN_DEBUG_ON_TARGET_
+ TRC_MSG(CSN_WARNING_INFO, "[CSN] trace: %s %d.")
+#endif
+
+#endif
+
+#ifdef _CSN_TEST_
+typedef enum
+{
+ ABSENT=0,
+ PRESENT
+}ispresent;
+#endif
+
+typedef enum
+{
+ SINGLE_L=0,
+ SINGLE_H
+}isLHpresent;
+
+#ifdef _CSN_TEST_
+//follow is for error struct
+typedef struct AsnListNode
+{
+ struct AsnListNode *prev;
+ struct AsnListNode *next;
+ void *data;
+}AsnListNode;
+
+typedef struct AsnList
+{
+ AsnListNode *first;
+ AsnListNode *last;
+ AsnListNode *curr;
+ int count;
+ int dataSize;
+}AsnList;
+
+typedef enum ErrorDetail {
+ SPARE_ERROR,
+ OUT_OF_RANGE_ERROR,
+ IGNORE_FUNCTION
+} ErrorDetail;
+#endif
+
+typedef struct CSN_ErrorStruct {
+ CSN_ErrorType error_type; //here is different from ErrorStruct
+ asn_error_detail error_flag;
+ int structNameEnum;
+ asn_list cond_errors;
+ int comp_req;
+// int errorlineno;
+// S8 errorfile[1024];
+}CSN_ErrorStruct;
+
+
+#ifndef NOT_USED
+#define NOT_USED(x) (void)(x)
+#endif
+
+#ifndef UA1_ERROR_1
+#define UA1_ERROR_1() CsnError1(pContext, (S8 *)__FILE__, __LINE__)
+#endif
+
+#define INFINIT_EXPONENT_INIT_SIZE 2 //initial allocate memory size
+#define INFINIT_EXPONENT_INC_SIZE 2 //increase size for every time
+
+#define MAX_TOLERABLE_MEM_BLOCK_NUM 20 //should greater than 4
+#define MAX_TOLERABLE_MEM_BLOCK_INC_SIZE (5*4) //multiple of 4 bytes
+
+#define MAX_U32 0xffffffff
+
+typedef struct
+{
+ S8 * name; //label
+ U8 * value;
+ U32 length;
+}FunctionInfoNode;
+
+typedef struct
+{
+ FunctionInfoNode fin;
+ struct FunctionInfoList *ppNext;
+}FunctionInfoList;
+
+typedef struct
+{
+ void *pMemBlock[MAX_TOLERABLE_MEM_BLOCK_NUM];
+ void **ppNext;
+ void **ppEnd;
+}CsnAllocRecord;
+
+/*
+typedef struct
+{
+ jmp_buf env;
+ struct JmpBufList *ppNext;
+}JmpBufList;
+*/
+
+#ifdef _CSN_TEST_
+ #include <setjmp.h>
+ #define csn_jmpbuf jmp_buf
+#else
+ #if defined(__MTK_TARGET__) && defined(__RVCT__)
+ typedef long long csn_jmpbuf[17];
+ #elif defined(__MTK_TARGET__)
+ #include <setjmp.h>
+ #define csn_jmpbuf jmp_buf
+ #else
+
+ ///add for vc9.0
+ //vc 9.0 have un-standard code , cgen could not pass the parse
+ // GEN_FOR_PC: just defined when codegen_modis
+ #ifndef GEN_FOR_PC
+ #include <setjmp.h>
+ #else
+ #define _JBLEN 16
+ #define _JBTYPE int
+ typedef _JBTYPE jmp_buf[_JBLEN];
+ #endif
+ ///
+ #define csn_jmpbuf jmp_buf
+
+ #endif
+#endif
+
+
+typedef struct
+{
+ U8 *pEncoded;
+ U8 *pEncodedEnd;
+ U32 limitBitLength; //for user defined buffer bit length
+ csn_jmpbuf env;
+ void *encodeAlloc;
+ CsnAllocRecord *decodeAlloc;
+ FunctionInfoList *fil; // for csn function
+}CsnContext;
+
+
+typedef U32 (*FP_EN)(U8 *frame, void *pmtk_d, U32 bit_offset, U32 frame_size, CsnContext *pParentContext);
+typedef U32 (*FP_DE)(void *pmtk_d, U8 *frame, U32 bit_offset, U32 frame_size, void *err_hndl, CsnContext *pParentContext);
+#define TEST_CASE_NUM 10000
+
+#ifdef _CSN_TEST_
+
+U32 csn_act_mask(U32 width);
+U32 get_bits(U8 *frame, U32 offset, U32 width);
+U32 get_bits_1_8(U8 *addr, U32 offset, U32 width);
+U32 get_bits_9_16(U8 *addr, U32 offset, U32 width);
+U32 get_bits_17_24(U8 *addr, U32 offset, U32 width);
+U32 get_bits_25_32(U8 *addr, U32 offset, U32 width);
+
+void put_bits_25_32(U8 *addr, U32 bitoffset, U32 bitlength, U32 data);
+void put_bits_17_24(U8 *addr, U32 bitoffset, U32 bitlength, U32 data);
+void put_bits_9_16(U8 *addr, U32 bitoffset, U32 bitlength, U32 data);
+void put_bits_1_8(U8 *addr, U32 bitoffset, U32 bitlength, U32 data);
+void put_bits(U8 *addr, U32 bitoffset, U32 bitlength, U32 data);
+
+#endif
+U16 get_16bits_L_endian_2_B_endian(U8 *addr, U32 offset);
+
+extern void update_addr_n_offset(kal_uint8 **addr, kal_uint32 *offset_ptr, kal_uint32 width);
+
+extern void put_bits_slim(kal_uint8 **addr, kal_uint32 *offset_ptr, kal_uint32 width, kal_uint32 put_val);
+extern void put_bits_1_8_slim(kal_uint8 **addr, kal_uint32 *offset_ptr, kal_uint32 width, kal_uint32 put_val);
+extern void put_bits_9_16_slim(kal_uint8 **addr, kal_uint32 *offset_ptr, kal_uint32 width, kal_uint32 put_val);
+extern void put_bits_17_24_slim(kal_uint8 **addr, kal_uint32 *offset_ptr, kal_uint32 width, kal_uint32 put_val);
+extern void put_bits_25_32_slim(kal_uint8 **addr, kal_uint32 *offset_ptr, kal_uint32 width, kal_uint32 put_val);
+
+extern kal_uint32 get_bits_slim(kal_uint8 **addr, kal_uint32 *offset_ptr, kal_uint32 width);
+extern kal_uint32 get_bits_1_8_slim(kal_uint8 **addr, kal_uint32 *offset_ptr, kal_uint32 width);
+extern kal_uint32 get_bits_9_16_slim(kal_uint8 **addr, kal_uint32 *offset_ptr, kal_uint32 width);
+extern kal_uint32 get_bits_17_24_slim(kal_uint8 **addr, kal_uint32 *offset_ptr, kal_uint32 width);
+extern kal_uint32 get_bits_25_32_slim(kal_uint8 **addr, kal_uint32 *offset_ptr, kal_uint32 width);
+
+U32 get_spare_bits(U8 *frame, U32 bit_offset, U32 numBits, U32 frame_size, void *err_hndl, CsnContext *pContext);
+U32 get_spare_padding(U8 *frame, U32 bit_offset, U32 numBits, U32 frame_size, void *err_hndl, CsnContext *pContext);
+U32 get_padding_bits(U8 *frame, U32 bit_offset, U32 numBits, U32 frame_size, void *err_hndl, CsnContext *pContext);
+
+
+DLLEXPORT void CsnRootDecodeFree( void *pType);
+DLLEXPORT void CsnRootDecodeAlloc( void **ppType, U32 size );
+DLLEXPORT void CsnDecodeAlloc( CsnContext *pContext, void **ppMem, U32 size );
+DLLEXPORT void CsnDecodeFree( CsnAllocRecord *decodeAlloc);
+
+void ** CsnFindInMemList(CsnContext *pContext, void **ppMem);
+void CsnDeleteMemMarkFromList(CsnContext *pContext, void ** ppMem );
+void CsnDecodeReAlloc( CsnContext *pContext, void **ppMem, U32 newsize, U32 oldsize);
+void CsnRootEncodeAutoAlloc(CsnContext *pContext); //
+void CsnRootEncodeAutoFree (CsnContext *pContext); //
+void CsnBitFieldCopy(U8 * new_frame, U32 new_bit_offset, U8 * old_frame, U32 bit_offset,U32 copylength);
+
+
+void csn_init_ErrorStruct(void * err_hndl);
+void csn_set_ErrorStruct(void * err_hndl, enum_error_struct_type errorstructname,CSN_ErrorType errortype);
+void csn_set_ErrorStruct1(CsnContext * pContext, void * err_hndl, enum_error_struct_type errorstructname,CSN_ErrorType errortype);
+
+void clear_csn_function_from_list(S8 * name, CsnContext * pContext);
+void add_to_csn_function_list(S8 * name, U8 * value, U32 length, CsnContext * pContext);
+//Bool special_function_handle(S8 * name, U8 * value, U32 length, CsnContext * pContext);
+//void special_deal_with_reserve_max_value(S8 * name, U8 * value, U32 length, CsnContext * pContext);
+
+void CsnError1( CsnContext *pContext, S8 * file, U32 line );
+
+void csn_initFifo( CsnContext *pContext, U8 *buffer, U32 bufferByteLength );
+void csn_getLongBits(U8 * frame, U32 bits, U32 bitoffset, U8 *outputBuffer, U32 numBits);
+void csn_putLongBits(U8 * frame, U32 bits, U32 bitoffset, U8 *data, U32 numBits );
+
+//for match L\H string or encode L\H string
+U8 match_LH(CsnContext *pContext, U32 bitoffset, U8 value, S8 * pLHString);
+void put_LH(CsnContext *pContext, U8 *frame, U32 bit_offset, S8 * pLHString);
+
+
+U32 put_spare_bits(U8 *frame, U32 bit_offset, U32 numBits, U32 frame_size, CsnContext *pContext);
+U32 put_spare_padding(U8 *frame, U32 bit_offset, U32 numBits, U32 frame_size, CsnContext *pContext);
+U32 put_padding_bits(U8 *frame, U32 bit_offset, U32 numBits, U32 frame_size, CsnContext *pContext);
+
+///user defined functions // mapping to csn.1 functions
+U32 val(S8 * label, CsnContext * pContext);
+U32 len(S8 * label, CsnContext * pContext);
+//U32 fdd_cell_info_p(S8 * label, CsnContext * pContext);
+//U32 tdd_cell_info_q(S8 * label, CsnContext * pContext);
+//U32 max_val(S8 * label, CsnContext * pContext);
+
+//U32 n(S8 * label, CsnContext * pContext);
+//U32 m(S8 * label, CsnContext * pContext);
+
+///for test
+#ifdef _CSN_TEST_
+int OutputDSValueInfo(const S8 *ptext, ...);
+int OutputTestInfo(const S8 *ptext, ...);
+int csn_rand_u32(void);
+void csn_rand_buffer(U8 * pBuffer, U32 numBits);
+#endif
+///
+
+
+
+#ifdef __cplusplus
+}
+#endif
+#endif /* _CSN_COMMON_H */
diff --git a/mcu/protocol/interface/asn/rr/include/csn_memory.h b/mcu/protocol/interface/asn/rr/include/csn_memory.h
new file mode 100644
index 0000000..b77c751
--- /dev/null
+++ b/mcu/protocol/interface/asn/rr/include/csn_memory.h
@@ -0,0 +1,76 @@
+/*******************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2007
+*
+* BY OPENING THIS FILE, BUYER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND AGREES
+* THAT THE SOFTWARE/FIRMWARE AND ITS DOCUMENTATIONS ("MEDIATEK SOFTWARE")
+* RECEIVED FROM MEDIATEK AND/OR ITS REPRESENTATIVES ARE PROVIDED TO BUYER ON
+* AN "AS-IS" BASIS ONLY. MEDIATEK EXPRESSLY DISCLAIMS ANY AND ALL WARRANTIES,
+* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF
+* MERCHANTAB ILITY, FITNESS FOR A PARTICULAR PURPOSE OR NONINFRINGEMENT.
+* NEITHER DOES MEDIATEK PROVIDE ANY WARRANTY WHATSOEVER WITH RESPECT TO THE
+* SOFTWARE OF ANY THIRD PARTY WHICH MAY BE USED BY, INCORPORATED IN, OR
+* SUPPLIED WITH THE MEDIATEK SOFTWARE, AND BUYER AGREES TO LOOK ONLY TO SUCH
+* THIRD PARTY FOR ANY WARRANTY CLAIM RELATING THERETO. MEDIATEK SHALL ALSO
+* NOT BE RESPONSIBLE FOR ANY MEDIATEK SOFTWARE RELEASES MADE TO BUYER'S
+* SPECIFICATION OR TO CONFORM TO A PARTICULAR STANDARD OR OPEN FORUM.
+*
+* BUYER'S SOLE AND EXCLUSIVE REMEDY AND MEDIATEK'S ENTIRE AND CUMULATIVE
+* LIABILITY WITH RESPECT TO THE MEDIATEK SOFTWARE RELEASED HEREUNDER WILL BE,
+* AT MEDIATEK'S OPTION, TO REVISE OR REPLACE THE MEDIATEK SOFTWARE AT ISSUE,
+* OR REFUND ANY SOFTWARE LICENSE FEES OR SERVICE CHARGE PAID BY BUYER TO
+* MEDIATEK FOR SUCH MEDIATEK SOFTWARE AT ISSUE.
+*
+* THE TRANSACTION CONTEMPLATED HEREUNDER SHALL BE CONSTRUED IN ACCORDANCE
+* WITH THE LAWS OF THE STATE OF CALIFORNIA, USA, EXCLUDING ITS CONFLICT OF
+* LAWS PRINCIPLES. ANY DISPUTES, CONTROVERSIES OR CLAIMS ARISING THEREOF AND
+* RELATED THERETO SHALL BE SETTLED BY ARBITRATION IN SAN FRANCISCO, CA, UNDER
+* THE RULES OF THE INTERNATIONAL CHAMBER OF COMMERCE (ICC).
+*
+*****************************************************************************/
+/*******************************************************************************
+* Filename:
+* ---------
+* csn_memory.h : header file
+*
+* Project:
+* --------
+* csn.1 common ------ CSN.1 common file
+*
+* Description:
+* ------------
+* This file defines the data structure for csn memory functions
+* If user want to modify the file, please discuss with the owner
+*
+* Author:
+* -------
+ * -------
+*
+*******************************************************************************/
+#if !defined _CSN_MEMORY_H_
+#define _CSN_MEMORY_H_
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+//#include "app_buff_alloc.h"
+#include "mtkcsn_global.h"
+
+
+extern void csnMemFree(void ** ppBuffer);
+extern void * csnMemAlloc(void ** ppBuffer, unsigned long size);
+extern void * csnMemReAlloc(void ** ppBuffer, unsigned long newsize, unsigned long oldsize);
+
+extern void * csnMemCopy(void * pDest, const void * pSource, U32 uLen);
+extern S32 csnMemCmp(void *p1, void *p2, U32 uLen);
+extern void * csnMemSet(void *p, U32 value, U32 uLen);
+
+#ifdef __cplusplus
+}
+#endif
+#endif // _CSN_MEMORY_H_
diff --git a/mcu/protocol/interface/asn/rr/include/csn_special.h b/mcu/protocol/interface/asn/rr/include/csn_special.h
new file mode 100644
index 0000000..7442389
--- /dev/null
+++ b/mcu/protocol/interface/asn/rr/include/csn_special.h
@@ -0,0 +1,90 @@
+/*******************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2007
+*
+* BY OPENING THIS FILE, BUYER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND AGREES
+* THAT THE SOFTWARE/FIRMWARE AND ITS DOCUMENTATIONS ("MEDIATEK SOFTWARE")
+* RECEIVED FROM MEDIATEK AND/OR ITS REPRESENTATIVES ARE PROVIDED TO BUYER ON
+* AN "AS-IS" BASIS ONLY. MEDIATEK EXPRESSLY DISCLAIMS ANY AND ALL WARRANTIES,
+* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF
+* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NONINFRINGEMENT.
+* NEITHER DOES MEDIATEK PROVIDE ANY WARRANTY WHATSOEVER WITH RESPECT TO THE
+* SOFTWARE OF ANY THIRD PARTY WHICH MAY BE USED BY, INCORPORATED IN, OR
+* SUPPLIED WITH THE MEDIATEK SOFTWARE, AND BUYER AGREES TO LOOK ONLY TO SUCH
+* THIRD PARTY FOR ANY WARRANTY CLAIM RELATING THERETO. MEDIATEK SHALL ALSO
+* NOT BE RESPONSIBLE FOR ANY MEDIATEK SOFTWARE RELEASES MADE TO BUYER'S
+* SPECIFICATION OR TO CONFORM TO A PARTICULAR STANDARD OR OPEN FORUM.
+*
+* BUYER'S SOLE AND EXCLUSIVE REMEDY AND MEDIATEK'S ENTIRE AND CUMULATIVE
+* LIABILITY WITH RESPECT TO THE MEDIATEK SOFTWARE RELEASED HEREUNDER WILL BE,
+* AT MEDIATEK'S OPTION, TO REVISE OR REPLACE THE MEDIATEK SOFTWARE AT ISSUE,
+* OR REFUND ANY SOFTWARE LICENSE FEES OR SERVICE CHARGE PAID BY BUYER TO
+* MEDIATEK FOR SUCH MEDIATEK SOFTWARE AT ISSUE.
+*
+* THE TRANSACTION CONTEMPLATED HEREUNDER SHALL BE CONSTRUED IN ACCORDANCE
+* WITH THE LAWS OF THE STATE OF CALIFORNIA, USA, EXCLUDING ITS CONFLICT OF
+* LAWS PRINCIPLES. ANY DISPUTES, CONTROVERSIES OR CLAIMS ARISING THEREOF AND
+* RELATED THERETO SHALL BE SETTLED BY ARBITRATION IN SAN FRANCISCO, CA, UNDER
+* THE RULES OF THE INTERNATIONAL CHAMBER OF COMMERCE (ICC).
+*
+*****************************************************************************/
+/*******************************************************************************
+* Filename:
+* ---------
+* csn_special.h : header file
+*
+* Project:
+* --------
+* csn.1 common ------ CSN.1 common file
+*
+* Description:
+* ------------
+* This file defines the special support for csn spec
+* If user want to modify the file, please discuss with the owner
+*
+* Author:
+* -------
+ * -------
+*
+*******************************************************************************/
+
+#ifndef _CSN_SPECIAL_H_
+#define _CSN_SPECIAL_H_
+
+#ifdef __cplusplus
+ extern "C" {
+#endif
+
+#include "mtkcsn_global.h"
+#include "csn_memory.h"
+#include "csn_common.h"
+
+
+Bool special_function_handle(S8 * name, U8 * value, U32 length, CsnContext * pContext);
+void special_deal_with_reserve_max_value(S8 * name, U8 * value, U32 length, CsnContext * pContext);
+
+///user defined functions // mapping to csn.1 functions
+
+U32 fdd_cell_info_p(S8 * label, CsnContext * pContext);
+U32 tdd_cell_info_q(S8 * label, CsnContext * pContext);
+U32 max_val(S8 * label, CsnContext * pContext);
+
+U32 n_r6(S8 * label, CsnContext * pContext);
+U32 m_r6(S8 * label, CsnContext * pContext);
+
+U32 n_r7_2_1(S8 * label, CsnContext * pContext);
+U32 n_r7_2_2(S8 * label, CsnContext * pContext);
+U32 n_r7_3(S8 * label, CsnContext * pContext);
+U32 m_r7_2_1(S8 * label, CsnContext * pContext);
+U32 m_r7_2_2(S8 * label, CsnContext * pContext);
+U32 m_r7_3(S8 * label, CsnContext * pContext);
+
+
+#ifdef __cplusplus
+}
+#endif
+#endif /* _CSN_SPECIAL_H_ */
diff --git a/mcu/protocol/interface/asn/rr/include/error_struct_enum.h b/mcu/protocol/interface/asn/rr/include/error_struct_enum.h
new file mode 100644
index 0000000..954b44f
--- /dev/null
+++ b/mcu/protocol/interface/asn/rr/include/error_struct_enum.h
@@ -0,0 +1,334 @@
+/*****************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2005
+*
+* BY OPENING THIS FILE, BUYER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND AGREES
+* THAT THE SOFTWARE/FIRMWARE AND ITS DOCUMENTATIONS ("MEDIATEK SOFTWARE")
+* RECEIVED FROM MEDIATEK AND/OR ITS REPRESENTATIVES ARE PROVIDED TO BUYER ON
+* AN "AS-IS" BASIS ONLY. MEDIATEK EXPRESSLY DISCLAIMS ANY AND ALL WARRANTIES,
+* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF
+* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NONINFRINGEMENT.
+* NEITHER DOES MEDIATEK PROVIDE ANY WARRANTY WHATSOEVER WITH RESPECT TO THE
+* SOFTWARE OF ANY THIRD PARTY WHICH MAY BE USED BY, INCORPORATED IN, OR
+* SUPPLIED WITH THE MEDIATEK SOFTWARE, AND BUYER AGREES TO LOOK ONLY TO SUCH
+* THIRD PARTY FOR ANY WARRANTY CLAIM RELATING THERETO. MEDIATEK SHALL ALSO
+* NOT BE RESPONSIBLE FOR ANY MEDIATEK SOFTWARE RELEASES MADE TO BUYER'S
+* SPECIFICATION OR TO CONFORM TO A PARTICULAR STANDARD OR OPEN FORUM.
+*
+* BUYER'S SOLE AND EXCLUSIVE REMEDY AND MEDIATEK'S ENTIRE AND CUMULATIVE
+* LIABILITY WITH RESPECT TO THE MEDIATEK SOFTWARE RELEASED HEREUNDER WILL BE,
+* AT MEDIATEK'S OPTION, TO REVISE OR REPLACE THE MEDIATEK SOFTWARE AT ISSUE,
+* OR REFUND ANY SOFTWARE LICENSE FEES OR SERVICE CHARGE PAID BY BUYER TO
+* MEDIATEK FOR SUCH MEDIATEK SOFTWARE AT ISSUE.
+*
+* THE TRANSACTION CONTEMPLATED HEREUNDER SHALL BE CONSTRUED IN ACCORDANCE
+* WITH THE LAWS OF THE STATE OF CALIFORNIA, USA, EXCLUDING ITS CONFLICT OF
+* LAWS PRINCIPLES. ANY DISPUTES, CONTROVERSIES OR CLAIMS ARISING THEREOF AND
+* RELATED THERETO SHALL BE SETTLED BY ARBITRATION IN SAN FRANCISCO, CA, UNDER
+* THE RULES OF THE INTERNATIONAL CHAMBER OF COMMERCE (ICC).
+*
+*****************************************************************************/
+
+/******************************************************************************
+ * Filename:
+ * ---------
+ * nstd_struct_enum.h
+ *
+ * Project:
+ * --------
+ * MAUI
+ *
+ * Description:
+ * ------------
+ *
+ * Author:
+ * -------
+ * -------
+ *
+ *=============================================================================
+ * HISTORY
+ * Below this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *------------------------------------------------------------------------------
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ * removed!
+ * removed!
+ * removed!
+ * removed!
+ * removed!
+ * removed!
+ * removed!
+ * removed!
+ * removed!
+ * removed!
+ * removed!
+ * removed!
+ * removed!
+ * removed!
+ * removed!
+ * removed!
+ * removed!
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ *------------------------------------------------------------------------------
+ * Upper this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *=============================================================================
+ ******************************************************************************/
+
+/********************************************************************************
+* Copyright Statement:
+* --------------------
+*
+* This product has been developed using a protocol stack
+* developed by Sasken Communication Technologies Limited.
+*
+********************************************************************************/
+
+#ifndef _ERROR_STRUCT_ENUM_H_
+#define _ERROR_STRUCT_ENUM_H_
+
+typedef enum {
+RR_NO_ERROR_STRUCT = 0,
+RR_PACKET_DOWNLINK_STRUCT_ERROR ,
+PDCH_DYNAMIC_ALLOC_STRUCT_ERROR,
+PDCH_SINGLE_BLK_ALLOC_STRUCT_ERROR,
+PDCH_FIXED_ALLOC_STRUCT_ERROR,
+RR_PACKET_UPLINK_STRUCT_ERROR,
+RMC_START_TIME_STRUCT_ERROR,
+STARTING_TIME_ERROR,
+RMC_P0_PWR_CNTRL_MODE_STRUCT_ERROR,
+RMC_SINGLE_BLOCK_ALLOC_STRUCT_ERROR,
+RMC_P0_PR_MODE_STRUCT_ERROR,
+RMC_DYN_ALLOC_STRUCT_ERROR,
+RMC_FIXED_ALLOC_STRUCT_ERROR,
+RMC_DYN_OR_FIXED_ALLOC_STRUCT_ERROR,
+RMC_PKT_UL_ASGN_STRUCT_ERROR,
+RMC_ACCESS_TECH_REQ_ELEM_STRUCT_ERROR,
+RMC_ACCESS_TECH_REQ_STRUCT_ERROR,
+RMC_MULTI_BLK_ALLOC_STRUCT_ERROR,
+RMC_EGPRS_MOD_AND_CODING_STRUCT_ERROR,
+RMC_EGPRS_WINDOW_SIZE_STRUCT_ERROR,
+RMC_EGPRS_DYN_OR_FIXED_ALLOC_STRUCT_ERROR,
+RMC_EGPRS_PKT_UL_ASGN_STRUCT_ERROR,
+RMC_FREQ_PARAMS_WITH_LENGTH_STRUCT_ERROR,
+RMC_RLC_MODE_ALPHA_GAMMA_STRUCT_ERROR,
+RMC_EGPRS_TBF_MODE_STRUCT_ERROR,
+RMC_PKT_DL_ASGN_STRUCT_ERROR,
+IAREST_OCTETS_ERROR,
+
+PERSIST_LEVEL_STRUCT_ERROR,
+GLOBAL_TFISTRUCT_ERROR,
+TIMING_ADV_IDX_TSLOT_STRUCT_ERROR,
+PKT_TIMING_ADVANCE_STRUCT_ERROR,
+CHNG_MARK1STRUCT_ERROR,
+INDIRECT_ENCODE_STRUCT_ERROR,
+DIRECT_ENCODE1STRUCT_ERROR,
+FREQ_PARAMS_PEER_STRUCT_ERROR,
+STARTING_FRAME_NUM_STRUCT_ERROR,
+PKT_REQ_REF_STRUCT_ERROR,
+USF_STRUCT_ERROR,
+TIME_SLOT_ALLOC_STRUCT_ERROR,
+USF_GAMMA_STRUCT_ERROR,
+RR_USF_PWR_CTRL_STRUCT_ERROR,
+TIME_SLOT_PWR_CTRL_ALLOC_STRUCT_ERROR,
+P0PR_MODE_STRUCT_ERROR,
+DYNAMIC_ALLOC_STRUCT_ERROR,
+ALPHA_GAMMA_STRUCT_ERROR,
+BTS_MODE_STRUCT_ERROR,
+SINGLE_BLK_ALLOC_STRUCT_ERROR,
+GAMMA_TN_VALUE_STRUCT_ERROR,
+PWR_CTRL_PARAMS_PEER_STRUCT_ERROR,
+FIXED_ALLOC_STRUCT_ERROR,
+EXTEND_TIMING_ADV_STRUCT_ERROR,
+GPRSUPLNK_ASSIGN_STRUCT_ERROR,
+PKT_UPLINK_ASSIGNMENT_MSG_ERROR,
+MEAS_MAP_PEER_STRUCT_ERROR,
+PKT_DOWNLINK_ASSIGN_ERROR,
+WAIT_STRUCT_ERROR,
+REJECT_STRUCT_ERROR,
+PACKET_ACCESS_REJECT_ERROR,
+PACKET_QUEING_NOTIFICATION_ERROR,
+ALLOC_BITMAP_STRUCT_ERROR,
+ALLOC_STRUCT_ERROR,
+ACK_NACK_FIXED_ALLOC_STRUCT_ERROR,
+GPRSUPLNK_ACK_NACK_STRUCT_ERROR,
+PKT_UPLINK_ACK_NACK_ERROR,
+TIMING_ADV_INDEX_TN_STRUCT_ERROR,
+GLOBAL_PKT_TIM_ADV_STRUCT_ERROR,
+GLOBAL_PWR_CTRL_PARAMS_STRUCT_ERROR,
+GLOBAL_PWR_CTRL_PKT_TIM_STRUCT_ERROR,
+PKT_PWR_CTRL_TIM_ADV_STRUCT_ERROR,
+TS_RECONFIG_DYNAMIC_ALLOC_STRUCT_ERROR,
+TS_RECONFIG_FIXED_ALLOC_STRUCT_ERROR,
+GPRS_TIMESLOT_RECONFIG_ERROR,
+PKT_TIMESLOT_RECONFIGURE_ERROR,
+PACKET_POLLING_REQUEST_ERROR,
+HEADER_STRUCT_ERROR,
+EXTENSION_BIT_STRUCT_ERROR,
+REL_5_LATER_PDAS_STRUCT_ERROR,
+REL_5_LATER_PUAS_STRUCT_ERROR,
+REL_5_LATER_PTR_STRUCT_ERROR,
+REL_6_PDAS_STRUCT_ERROR,
+REL_6_PUAS_STRUCT_ERROR,
+REL_6_PTR_STRUCT_ERROR,
+ACK_NACK_DESC_STRUCT_ERROR,
+
+// Evelyn: Merge CSN generated Error_struct_enum
+DYNAMIC_ALLOCATION_2_STRUCT_ERROR,
+ASSIGNMENT_INFO_STRUCT_ERROR,
+ENHANCED_MEASUREMENT_REPORT_STRUCT_ERROR,
+EXTENDED_MEASUREMENT_REPORT_STRUCT_ERROR,
+GPRS_SUSPENSION_REQUEST_STRUCT_ERROR,
+HANDOVER_FAILURE_STRUCT_ERROR,
+ASSIGNMENT_FAILURE_STRUCT_ERROR,
+ASSIGNMENT_COMPLETE_STRUCT_ERROR,
+UPLINK_ASSIGNMENT_2_STRUCT_ERROR,
+BTTI_MULTIPLE_DOWNLINK_ASSIGNMENT_STRUCT_ERROR,
+RTTI_MULTIPLE_DOWNLINK_ASSIGNMENT_SC_STRUCT_ERROR,
+RTTI_MULTIPLE_DOWNLINK_ASSIGNMENT_DC_STRUCT_ERROR,
+MULTIPLE_UPLINK_ASSIGNMENT_2_STRUCT_ERROR,
+PDCH_PAIRS_DESCRIPTION_IE_FOR_MTTR_ERROR,
+PACKET_CONTROL_ACKNOWLEDGEMENT_MESSAGE_CONTENT_ERROR,
+PACKET_CONTROL_ACKNOWLEDGEMENT_11_BIT_MESSAGE_ERROR,
+PACKET_CONTROL_ACKNOWLEDGEMENT_8_BIT_MESSAGE_ERROR,
+PACKET_CELL_CHANGE_FAILURE_MESSAGE_CONTENT_ERROR,
+PACKET_CELL_CHANGE_NOTIFICATION_MESSAGE_CONTENT_ERROR,
+PACKET_DOWNLINK_ACK_NACK_MESSAGE_CONTENT_ERROR,
+PACKET_UPLINK_DUMMY_CONTROL_BLOCK_MESSAGE_CONTENT_ERROR,
+PACKET_MEASUREMENT_REPORT_MESSAGE_CONTENT_ERROR,
+PACKET_MOBILE_TBF_STATUS_MESSAGE_CONTENT_ERROR,
+PACKET_PSI_STATUS_MESSAGE_CONTENT_ERROR,
+PACKET_SI_STATUS_MESSAGE_CONTENT_ERROR,
+PACKET_PAUSE_MESSAGE_CONTENT_ERROR,
+ADDITIONAL_MS_RADIO_ACCESS_CAPABILITIES_MESSAGE_CONTENT_ERROR,
+MS_NETWORK_CAPABILITY_VALUE_PART_ERROR,
+P_3_G_NEIGHBOUR_CELL_DESCRIPTION_STRUCT_MI_ERROR,
+HANDOVER_COMPLETE_MESG_STRUCT_ERROR,
+PAGING_RESPONSE_ERROR,
+CSN_PAGING_REQUEST_TYPE1_ERROR,
+PACKET_ENHANCED_MEASUREMENT_REPORT_MESSAGE_CONTENT_ERROR,
+PACKET_RESOURCE_REQUEST_MESSAGE_CONTENT_ERROR,
+MEASUREMENT_INFORMATION_STRUCT_ERROR,
+MEASUREMENT_REPORT_STRUCT_ERROR,
+PACKET_TIMESLOT_RECONFIGURE_MESSAGE_CONTENT_ERROR,
+PACKET_UPLINK_ACK_NACK_MESSAGE_CONTENT_ERROR,
+PACKET_TBF_RELEASE_MESSAGE_CONTENT_ERROR,
+PSI16_MESSAGE_CONTENT_ERROR,
+PSI15_MESSAGE_CONTENT_ERROR,
+PSI14_MESSAGE_CONTENT_ERROR,
+PSI13_MESSAGE_CONTENT_ERROR,
+PSI8_MESSAGE_CONTENT_ERROR,
+PSI7_MESSAGE_CONTENT_ERROR,
+PSI6_MESSAGE_CONTENT_ERROR,
+PSI4_MESSAGE_CONTENT_ERROR,
+PSI3_QUATER_MESSAGE_CONTENT_ERROR,
+PSI3_TER_MESSAGE_CONTENT_ERROR,
+PSI3_BIS_MESSAGE_CONTENT_ERROR,
+PSI3_MESSAGE_CONTENT_ERROR,
+PSI1_MESSAGE_CONTENT_ERROR,
+PACKET_SERVING_CELL_DATA_MESSAGE_CONTENT_ERROR,
+PACKET_QUEUEING_NOTIFICATION_MESSAGE_CONTENT_ERROR,
+PACKET_PRACH_PARAMETERS_MESSAGE_CONTENT_ERROR,
+PACKET_POWER_CONTROL_TIMING_ADVANCE_MESSAGE_CONTENT_ERROR,
+PACKET_POLLING_REQUEST_MESSAGE_CONTENT_ERROR,
+PACKET_PDCH_RELEASE_MESSAGE_CONTENT_ERROR,
+PACKET_PAGING_REQUEST_MESSAGE_CONTENT_ERROR,
+PACKET_NEIGHBOUR_CELL_DATA_MESSAGE_CONTENT_ERROR,
+PACKET_DOWNLINK_DUMMY_CONTROL_BLOCK_MESSAGE_CONTENT_ERROR,
+PACKET_DOWNLINK_ASSIGNMENT_MESSAGE_CONTENT_ERROR,
+PACKET_CELL_CHANGE_CONTINUE_MESSAGE_CONTENT_ERROR,
+PACKET_ACCESS_REJECT_MESSAGE_CONTENT_ERROR,
+PACKET_UPLINK_ASSIGNMENT_MESSAGE_CONTENT_ERROR,
+MULTIPLE_TBF_DOWNLINK_ASSIGNMENT_MESSAGE_CONTENT_ERROR,
+MULTIPLE_TBF_UPLINK_ASSIGNMENT_MESSAGE_CONTENT_ERROR,
+PS_HANDOVER_COMMAND_MESSAGE_CONTENT_ERROR,
+MULTIPLE_TBF_TIMESLOT_RECONFIGURE_MESSAGE_CONTENT_ERROR,
+PS_HANDOVER_RADIO_RESOURCES_2_IE_ERROR,
+EGPRS_PACKET_DOWNLINK_ACK_NACK_MESSAGE_CONTENT_ERROR,
+MS_RA_CAPABILITY_VALUE_PART_STRUCT_ERROR,
+PSI5_MESSAGE_CONTENT_ERROR,
+PSI2_MESSAGE_CONTENT_ERROR,
+PACKET_MEASUREMENT_ORDER_MESSAGE_CONTENT_ERROR,
+PACKET_CELL_CHANGE_ORDER_MESSAGE_CONTENT_ERROR,
+CHANNEL_RELEASE_STRUCT_ERROR,
+RR_PEER_CLASSMARK_CHANGE_STRUCT_ERROR,
+PAGING_REQUEST_TYPE1_STRUCT_ERROR,
+PAGING_REQUEST_TYPE2_STRUCT_ERROR,
+PAGING_REQUEST_TYPE3_STRUCT_ERROR,
+MEASUREMENT_INFORMATION_ERROR,
+SI_2TER_STRUCT_ERROR,
+SI_2QUATER_STRUCT_ERROR,
+RR_EM_CELL_SELECT_PARA_INFO_STRUCT_ERROR,
+RR_EM_CHANNEL_DESCR_INFO_STRUCT_ERROR,
+RR_EM_CTRL_CHANNEL_DESCR_INFO_STRUCT_ERROR,
+RR_EM_RACH_CTRL_PARA_INFO_STRUCT_ERROR,
+RR_EM_RADIO_LINK_COUNTER_INFO_STRUCT_ERROR,
+RR_EM_CA_LIST_INFO_STRUCT_ERROR,
+RR_EM_CONTROL_MSG_INFO_STRUCT_ERROR,
+RR_EM_SI2Q_INFO_STRUCT_ERROR,
+RR_EM_MI_INFO_STRUCT_ERROR,
+RR_EM_MEASUREMENT_REPORT_INFO_STRUCT_ERROR,
+ENUM_ERROR_STRUCT_TYPE_END
+}enum_error_struct_type;
+
+typedef enum {
+CSN_NOT_ERROR=0,
+CSN_UNRECOVERABLE_ERROR,
+CSN_ERRORTYPE_END
+}CSN_ErrorType;
+
+#endif /* _ERROR_STRUCT_ENUM_H */
+
diff --git a/mcu/protocol/interface/asn/rr/include/gprs_mtbf.h b/mcu/protocol/interface/asn/rr/include/gprs_mtbf.h
new file mode 100644
index 0000000..48ab961
--- /dev/null
+++ b/mcu/protocol/interface/asn/rr/include/gprs_mtbf.h
@@ -0,0 +1,53 @@
+/**************************************************************************
+ * *
+ * Copyright (c) 2001 Sasken Communication Technologies Limited (SASKEN) *
+ * All Rights Reserved. *
+ * *
+ * THIS IS UNPUBLISHED PROPRIETARY SOURCE CODE OF SASKEN *
+ * The above copyright notice does not evidence any actual or intended *
+ * publication of such source code. *
+ * *
+ **************************************************************************
+ *
+ * FILE NAME:
+ * SYNOPSIS :
+ *
+ */
+
+/* Evelyn 20090415: Merge R6 */
+
+#ifndef _GPRS_MTBF_H_
+#define _GPRS_MTBF_H_
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#ifdef TEST_TOOL
+#include "tt_defs.h"
+#else
+#include "kal_public_api.h" //MSBB change #include "kal_release.h"
+#endif
+#include "nstd_alloc_bitmap.h"
+
+
+#include "nstd_pmo.h"
+#include "gprs_rlcmac_common.h"
+#include "gprs_rlcmac_dl.h"
+#include "gprs_rlcmac_ul.h"
+
+#include "gprs_mtbf_struct.h"
+#include "gprs_mtbf_pun.h"
+#include "error_struct_enum.h"
+
+#ifdef TOOL
+#include "set_nstd_alloc_bitmap.h"
+#include "get_nstd_alloc_bitmap.h"
+#include "set_gprs_mtbf.h"
+#include "get_gprs_mtbf.h"
+#endif
+#ifdef __cplusplus
+}
+#endif
+
+#endif
diff --git a/mcu/protocol/interface/asn/rr/include/gprs_mtbf_pun.h b/mcu/protocol/interface/asn/rr/include/gprs_mtbf_pun.h
new file mode 100644
index 0000000..7ed062c
--- /dev/null
+++ b/mcu/protocol/interface/asn/rr/include/gprs_mtbf_pun.h
@@ -0,0 +1,186 @@
+/*******************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2002
+*
+*******************************************************************************
+ * FILENAME : gprs_mtbf_pun.h
+ * SYNOPSIS : Functions for encoding/decoding.
+ *
+ * R E V I S I O N H I S T O R Y
+ *
+ */
+
+ /* Evelyn 20090415: Merge R6 */
+
+#ifdef MTK_PEER
+#define IMP __declspec(dllimport)
+#else
+#define IMP
+#endif
+#ifndef _GPRS_MTBF_PUN_H
+#define _GPRS_MTBF_PUN_H
+#define tlli_g_rnti_struct_size(x) 5
+IMP unsigned int tlli_g_rnti_struct_bits(void *);
+IMP void tlli_g_rnti_struct_alloc(void *);
+IMP void tlli_g_rnti_struct_dealloc(void *);
+IMP unsigned int tlli_g_rnti_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int tlli_g_rnti_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define bts_mode_modify_struct_size(x) 1
+IMP unsigned int bts_mode_modify_struct_bits(void *);
+IMP void bts_mode_modify_struct_alloc(void *);
+IMP void bts_mode_modify_struct_dealloc(void *);
+IMP unsigned int bts_mode_modify_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int bts_mode_modify_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int egprs_window_size_struct_bits(void *);
+IMP void egprs_window_size_struct_alloc(void *);
+IMP void egprs_window_size_struct_dealloc(void *);
+IMP unsigned int egprs_window_size_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int egprs_window_size_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int hfn_lsb_struct_bits(void *);
+IMP void hfn_lsb_struct_alloc(void *);
+IMP void hfn_lsb_struct_dealloc(void *);
+IMP unsigned int hfn_lsb_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int hfn_lsb_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int mtbf_downlink_tbf_assign_struct_bits(void *);
+IMP void mtbf_downlink_tbf_assign_struct_alloc(void *);
+IMP void mtbf_downlink_tbf_assign_struct_dealloc(void *);
+IMP unsigned int mtbf_downlink_tbf_assign_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int mtbf_downlink_tbf_assign_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define pfi_rlcmode_struct_size(x) 1
+IMP unsigned int pfi_rlcmode_struct_bits(void *);
+IMP void pfi_rlcmode_struct_alloc(void *);
+IMP void pfi_rlcmode_struct_dealloc(void *);
+IMP unsigned int pfi_rlcmode_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int pfi_rlcmode_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int tbf_address_rel6_struct_bits(void *);
+IMP void tbf_address_rel6_struct_alloc(void *);
+IMP void tbf_address_rel6_struct_dealloc(void *);
+IMP unsigned int tbf_address_rel6_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int tbf_address_rel6_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *, kal_bool);
+
+IMP unsigned int downlink_tbf_assign_struct_bits(void *);
+IMP void downlink_tbf_assign_struct_alloc(void *);
+IMP void downlink_tbf_assign_struct_dealloc(void *);
+IMP unsigned int downlink_tbf_assign_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int downlink_tbf_assign_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int egprsdl_assign_additions_mtbf_struct_bits(void *);
+IMP void egprsdl_assign_additions_mtbf_struct_alloc(void *);
+IMP void egprsdl_assign_additions_mtbf_struct_dealloc(void *);
+IMP unsigned int egprsdl_assign_additions_mtbf_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int egprsdl_assign_additions_mtbf_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int mtbf_downlink_assign_bits(void *);
+IMP void mtbf_downlink_assign_alloc(void *);
+IMP void mtbf_downlink_assign_dealloc(void *);
+IMP unsigned int mtbf_downlink_assign_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int mtbf_downlink_assign_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int gamma_choise_struct_bits(void *);
+IMP void gamma_choise_struct_alloc(void *);
+IMP void gamma_choise_struct_dealloc(void *);
+IMP unsigned int gamma_choise_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int gamma_choise_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int alpha_gamma_choise_struct_bits(void *);
+IMP void alpha_gamma_choise_struct_alloc(void *);
+IMP void alpha_gamma_choise_struct_dealloc(void *);
+IMP unsigned int alpha_gamma_choise_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int alpha_gamma_choise_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int timeslot_desc_struct_bits(void *);
+IMP void timeslot_desc_struct_alloc(void *);
+IMP void timeslot_desc_struct_dealloc(void *);
+IMP unsigned int timeslot_desc_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int timeslot_desc_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *, kal_bool);
+
+IMP unsigned int usf_alloc_struct_bits(void *);
+IMP void usf_alloc_struct_alloc(void *);
+IMP void usf_alloc_struct_dealloc(void *);
+IMP unsigned int usf_alloc_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int usf_alloc_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int different_usf_alloc_struct_bits(void *);
+IMP void different_usf_alloc_struct_alloc(void *);
+IMP void different_usf_alloc_struct_dealloc(void *);
+IMP unsigned int different_usf_alloc_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int different_usf_alloc_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *, unsigned int);
+
+IMP unsigned int uplink_tbf_assign_struct_bits(void *);
+IMP void uplink_tbf_assign_struct_alloc(void *);
+IMP void uplink_tbf_assign_struct_dealloc(void *);
+IMP unsigned int uplink_tbf_assign_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int uplink_tbf_assign_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *, unsigned int, kal_bool);
+
+IMP unsigned int uplink_assign_struct_bits(void *);
+IMP void uplink_assign_struct_alloc(void *);
+IMP void uplink_assign_struct_dealloc(void *);
+IMP unsigned int uplink_assign_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int uplink_assign_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int gprs_uplink_assign_mtbf_struct_bits(void *);
+IMP void gprs_uplink_assign_mtbf_struct_alloc(void *);
+IMP void gprs_uplink_assign_mtbf_struct_dealloc(void *);
+IMP unsigned int gprs_uplink_assign_mtbf_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int gprs_uplink_assign_mtbf_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int egprs_uplink_assign_mtbf_struct_bits(void *);
+IMP void egprs_uplink_assign_mtbf_struct_alloc(void *);
+IMP void egprs_uplink_assign_mtbf_struct_dealloc(void *);
+IMP unsigned int egprs_uplink_assign_mtbf_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int egprs_uplink_assign_mtbf_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int mtbf_uplink_assign_bits(void *);
+IMP void mtbf_uplink_assign_alloc(void *);
+IMP void mtbf_uplink_assign_dealloc(void *);
+IMP unsigned int mtbf_uplink_assign_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int mtbf_uplink_assign_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int ts_reconfig_dl_tbf_assign_struct_bits(void *);
+IMP void ts_reconfig_dl_tbf_assign_struct_alloc(void *);
+IMP void ts_reconfig_dl_tbf_assign_struct_dealloc(void *);
+IMP unsigned int ts_reconfig_dl_tbf_assign_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int ts_reconfig_dl_tbf_assign_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int ts_reconfig_dl_tbf_assign_mtbf_struct_bits(void *);
+IMP void ts_reconfig_dl_tbf_assign_mtbf_struct_alloc(void *);
+IMP void ts_reconfig_dl_tbf_assign_mtbf_struct_dealloc(void *);
+IMP unsigned int ts_reconfig_dl_tbf_assign_mtbf_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int ts_reconfig_dl_tbf_assign_mtbf_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int ts_reconfig_ul_assign_struct_bits(void *);
+IMP void ts_reconfig_ul_assign_struct_alloc(void *);
+IMP void ts_reconfig_ul_assign_struct_dealloc(void *);
+IMP unsigned int ts_reconfig_ul_assign_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int ts_reconfig_ul_assign_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int gprs_ts_reconfig_mtbf_struct_bits(void *);
+IMP void gprs_ts_reconfig_mtbf_struct_alloc(void *);
+IMP void gprs_ts_reconfig_mtbf_struct_dealloc(void *);
+IMP unsigned int gprs_ts_reconfig_mtbf_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int gprs_ts_reconfig_mtbf_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int egprs_ts_reconfig_mtbf_struct_bits(void *);
+IMP void egprs_ts_reconfig_mtbf_struct_alloc(void *);
+IMP void egprs_ts_reconfig_mtbf_struct_dealloc(void *);
+IMP unsigned int egprs_ts_reconfig_mtbf_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int egprs_ts_reconfig_mtbf_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int mtbf_timeslot_reconfigure_assign_bits(void *);
+IMP void mtbf_timeslot_reconfigure_assign_alloc(void *);
+IMP void mtbf_timeslot_reconfigure_assign_dealloc(void *);
+IMP unsigned int mtbf_timeslot_reconfigure_assign_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int mtbf_timeslot_reconfigure_assign_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+extern kal_uint8 rr_get_1s_count(kal_uint32 number);
+#endif
diff --git a/mcu/protocol/interface/asn/rr/include/gprs_mtbf_struct.h b/mcu/protocol/interface/asn/rr/include/gprs_mtbf_struct.h
new file mode 100644
index 0000000..d59b75a
--- /dev/null
+++ b/mcu/protocol/interface/asn/rr/include/gprs_mtbf_struct.h
@@ -0,0 +1,396 @@
+/*******************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2002
+*
+*******************************************************************************
+ * FILENAME : gprs_mtbf_struct.h
+ * SYNOPSIS : Functions for encoding/decoding.
+ *
+ * R E V I S I O N H I S T O R Y
+ *
+ */
+
+#include "kal_general_types.h"
+#include "rr_common_def.h"
+#include "gprs_rlcmac_dl_struct.h"
+#include "gprs_rlcmac_common_struct.h"
+
+ /* Evelyn 20090415: Merge R6 */
+
+#ifndef _GPRS_MTBF_STRUCT_H
+#define _GPRS_MTBF_STRUCT_H
+
+typedef struct {
+ kal_uint32 tlli_or_grnti; /* TLLI or G-RNTI*/
+ kal_uint8 g_rnti_ext; /* G-RNTI EXTENTION*/
+} tlli_g_rnti_struct;
+
+typedef struct {
+ kal_uint8 p0; /* P0*/
+ kal_uint8 pr_mode; /* PR_MODE*/
+} bts_mode_modify_struct;
+
+typedef struct {
+ ispresent egprs_window_size_choice_tag;
+ union {
+ kal_uint8 p_egprs_window_size;
+ } egprs_window_size_choice_value;
+} egprs_window_size_struct;
+
+typedef struct {
+ ispresent hfn_lsb_choice_tag;
+ union {
+ kal_uint8 p_hfn_lsb;
+ } hfn_lsb_choice_value;
+} hfn_lsb_struct;
+
+typedef struct {
+ kal_uint8 pfi; /* PFI*/
+ kal_uint8 rlcmode; /* RLC MODE*/
+} pfi_rlcmode_struct;
+
+typedef struct {
+ ispresent RB_PFI_choice_tag;
+ union {
+ kal_uint8 rb;
+ pfi_rlcmode_struct pfi;
+ } RB_PFI_choice_value;
+} tbf_address_rel6_struct;
+
+typedef struct {
+ tbf_address_rel6_struct tbf_address; /* TBF addressed*/
+ kal_uint8 downlink_tfi; /* DOWN LINK TFI*/
+ kal_uint8 ctrl_ack; /* CONTROL ACK*/
+ egprs_window_size_struct egprs_window; /* EDGE Window Size*/
+ hfn_lsb_struct hfn_lsb; /* HFN_LSB*/
+} downlink_tbf_assign_struct;
+
+typedef struct {
+ kal_uint8 timeslot; /* Timeslot allocation*/
+ unsigned int no_downlink_tbf_assign;
+ unsigned int downlink_tbf_assign_size;
+ downlink_tbf_assign_struct *downlink_tbf_assign;
+} mtbf_downlink_tbf_assign_struct;
+
+typedef struct {
+ ispresent egprs_ws_choice_tag;
+ union {
+ kal_uint8 p_egprs_ws;
+ } egprs_ws_choice_value;
+ kal_uint8 link_quality_meas_mode; /* link quality measurement mode*/
+ ispresent bep_period_choice_tag;
+ union {
+ kal_uint8 p_bep_period2;
+ } bep_period_choice_value;
+} egprsdl_assign_additions_mtbf_struct;
+
+typedef struct {
+ header_struct header; /* HEADER*/
+ kal_uint8 msgtype; /* MSG TYPE*/
+ kal_uint8 page_mode; /* PAGE MODE*/
+ ispresent per_level_choice_tag;
+ union {
+ persist_level_struct p_persist_level;
+ } per_level_choice_value;
+ msid_enum ms_add_choice_tag;
+ union {
+ global_tfistruct global_tfi;
+ tlli_g_rnti_struct tlli_g_rnti;
+ } ms_add_choice_value;
+ kal_uint8 msgescape; /* MESSAGE ESCAPE*/
+ pkt_timing_advance_struct pkt_time_adv_value; /* PACKET TIMING ADVANCE STRUCTURE*/
+ ispresent pwr_ctrl_mode_choice_tag;
+ union {
+ bts_mode_modify_struct p_pwr_ctrl_mode;
+ } pwr_ctrl_mode_choice_value;
+ ispresent freq_params_choice_tag;
+ union {
+ freq_params_peer_struct p_freq_params;
+ } freq_params_choice_value;
+ ispresent pwr_ctrl_param_choice_tag;
+ union {
+ pwr_ctrl_params_peer_struct p_power_ctrl_param_value;
+ } pwr_ctrl_param_choice_value;
+ ispresent tbf_starting_time_choice_tag;
+ union {
+ starting_frame_num_struct p_tbf_starting_time;
+ } tbf_starting_time_choice_value;
+ ispresent rel99choice_tag;
+ union {
+ egprsdl_assign_additions_mtbf_struct p_rel99;
+ } rel99choice_value;
+ ispresent extend_timing_adv_choice_tag;
+ union {
+ kal_uint8 p_extend_timng_adv;
+ } extend_timing_adv_choice_value;
+ ispresent uplink_ctrl_tn_choice_tag;
+ union {
+ kal_uint8 p_uplink_ctrl_tn;
+ } uplink_ctrl_tn_choice_value;
+ unsigned int no_mtbf_downlink_tbf_assign;
+ unsigned int mtbf_downlink_tbf_assign_size;
+ mtbf_downlink_tbf_assign_struct *mtbf_downlink_tbf_assign;
+} mtbf_downlink_assign;
+
+typedef struct {
+ ispresent gamma_choice_tag;
+ union {
+ kal_uint8 p_gamma;
+ } gamma_choice_value;
+} gamma_choise_struct;
+
+typedef struct {
+ kal_uint8 alpha; /* GAMMA*/
+ gamma_choise_struct gamma_tn[8];
+} alpha_gamma_choise_struct;
+
+typedef struct {
+ ispresent usf_alloc_choice_tag;
+ union {
+ kal_uint8 p_usf_alloc;
+ } usf_alloc_choice_value;
+} usf_alloc_struct;
+
+typedef struct {
+ kal_uint8 usf_alloc; /* USF ALLOCATION*/
+ usf_alloc_struct nex_usf_alloc[7];
+} different_usf_alloc_struct;
+
+typedef struct {
+ tbf_address_rel6_struct tbf_address; /* TBF addressed*/
+ kal_uint8 uplink_tfi; /* UPLINK TFI*/
+ ispresent cs_choice_tag;
+ union {
+ kal_uint8 p_coding_scheme;
+ } cs_choice_value;
+ ispresent egprs_cs_choice_tag;
+ union {
+ kal_uint8 p_global_egprs_cs;
+ } egprs_cs_choice_value;
+ ispresent egprs_window_size_choice_tag;
+ union {
+ kal_uint8 p_global_egprs_window_size;
+ } egprs_window_size_choice_value;
+ kal_uint8 usf_granularity; /* USF GRANULARITY*/
+ ispresent tbf_tn_choice_tag;
+ union {
+ kal_uint8 p_tbf_tn;
+ } tbf_tn_choice_value;
+ ispresent usf_choice_tag;
+ union {
+ kal_uint8 global_usf;
+ different_usf_alloc_struct diff_usf;
+ } usf_choice_value;
+ kal_uint8 tn_pos[8]; /* UL TN allocation based on 8 timeslot decription*/
+ kal_uint8 usf_on_tn[8]; /* USF allocation based on 8 timeslot decription*/
+} uplink_tbf_assign_struct;
+
+typedef struct {
+ ispresent timeslot_desc_choice_tag;
+ union {
+ kal_uint8 ms_tn_alloc;
+ alpha_gamma_choise_struct tn_pwr_ctrl_alloc;
+ } timeslot_desc_choice_value;
+ unsigned int no_uplink_tbf_assign;
+ unsigned int uplink_tbf_assign_size;
+ uplink_tbf_assign_struct *uplink_tbf_assign;
+ kal_uint8 ms_tn;
+} timeslot_desc_struct;
+
+typedef struct {
+ kal_uint8 extended_dyn_alloc; /* EXT DYNAMIC ALLOCATION*/
+ ispresent uplink_ctrl_tn_choice_tag;
+ union {
+ kal_uint8 p_uplink_ctrl_tn;
+ } uplink_ctrl_tn_choice_value;
+ ispresent p0pr_mode_choice_tag;
+ union {
+ p0pr_mode_struct p_p0pr;
+ } p0pr_mode_choice_value;
+ ispresent tbf_starting_time_choice_tag;
+ union {
+ starting_frame_num_struct p_tbf_starting_time;
+ } tbf_starting_time_choice_value;
+ ispresent global_tn_choice_tag;
+ union {
+ timeslot_desc_struct p_global_tn;
+ } global_tn_choice_value;
+} uplink_assign_struct;
+
+typedef struct {
+ ispresent global_cs_choice_tag;
+ union {
+ kal_uint8 p_coding_scheme;
+ } global_cs_choice_value;
+ kal_uint8 tlli_blk_ch_code; /* TLLI CODE*/
+ pkt_timing_advance_struct pkt_time_adv_value; /* PACKET TIMING ADVANCE STRUCTURE*/
+ ispresent extend_timing_adv_choice_tag;
+ union {
+ kal_uint8 p_extend_timng_adv;
+ } extend_timing_adv_choice_value;
+ ispresent freq_params_choice_tag;
+ union {
+ freq_params_peer_struct p_freq_params;
+ } freq_params_choice_value;
+ ispresent uplink_assign_choice_tag;
+ union {
+ uplink_assign_struct p_uplink_tbf;
+ } uplink_assign_choice_value;
+} gprs_uplink_assign_mtbf_struct;
+
+typedef struct {
+ kal_uint8 msgescape; /* MESSAGE ESCAPE*/
+ ispresent global_egprs_window_size_choice_tag;
+ union {
+ kal_uint8 p_global_egprs_window_size;
+ } global_egprs_window_size_choice_value;
+ ispresent global_egprs_cs_choice_tag;
+ union {
+ kal_uint8 p_global_egprs_cs;
+ } global_egprs_cs_choice_value;
+ kal_uint8 resegment; /* RESEGMENT*/
+ kal_uint8 tlli_blk_ch_code; /* TLLI CODE*/
+ ispresent bep_period2_choice_tag;
+ union {
+ kal_uint8 p_bep_period2;
+ } bep_period2_choice_value;
+ pkt_timing_advance_struct pkt_time_adv_value; /* PACKET TIMING ADVANCE STRUCTURE*/
+ ispresent extend_timing_adv_choice_tag;
+ union {
+ kal_uint8 p_extend_timng_adv;
+ } extend_timing_adv_choice_value;
+ ispresent freq_params_choice_tag;
+ union {
+ freq_params_peer_struct p_freq_params;
+ } freq_params_choice_value;
+ ispresent uplink_assign_choice_tag;
+ union {
+ uplink_assign_struct p_uplink_tbf;
+ } uplink_assign_choice_value;
+} egprs_uplink_assign_mtbf_struct;
+
+typedef struct {
+ header_struct header; /* HEADER*/
+ kal_uint8 msgtype; /* MSG TYPE*/
+ kal_uint8 page_mode; /* PAGE MODE*/
+ ispresent per_level_choice_tag;
+ union {
+ persist_level_struct p_persist_level;
+ } per_level_choice_value;
+ msid_enum ms_add_choice_tag;
+ union {
+ global_tfistruct global_tfi;
+ tlli_g_rnti_struct tlli_g_rnti;
+ } ms_add_choice_value;
+ ispresent uplink_assgn_mtbf_choice_tag;
+ union {
+ gprs_uplink_assign_mtbf_struct a_gprs_uplink_assign_mtbf;
+ egprs_uplink_assign_mtbf_struct p_egprs_uplink_assign_mtbf;
+ } uplink_assgn_mtbf_choice_value;
+} mtbf_uplink_assign;
+
+typedef struct {
+ tbf_address_rel6_struct tbf_address; /* TBF addressed*/
+ ispresent uplink_ctrl_tn_choice_tag;
+ union {
+ kal_uint8 p_uplink_ctrl_tn;
+ } uplink_ctrl_tn_choice_value;
+ kal_uint8 downlink_tfi; /* DOWN LINK TFI*/
+ kal_uint8 ctrl_ack; /* CONTROL ACK*/
+ egprs_window_size_struct egprs_window; /* EDGE Window Size*/
+} ts_reconfig_dl_tbf_assign_struct;
+
+typedef struct {
+ kal_uint8 timeslot; /* Timeslot allocation*/
+ ispresent uplink_ctrl_tn_choice_tag;
+ union {
+ kal_uint8 p_uplink_ctrl_tn;
+ } uplink_ctrl_tn_choice_value;
+ unsigned int no_downlink_tbf_assign;
+ unsigned int downlink_tbf_assign_size;
+ ts_reconfig_dl_tbf_assign_struct *downlink_tbf_assign;
+} ts_reconfig_dl_tbf_assign_mtbf_struct;
+
+typedef struct {
+ kal_uint8 extended_dyn_alloc; /* EXT DYNAMIC ALLOCATION*/
+ ispresent p0pr_mode_choice_tag;
+ union {
+ p0pr_mode_struct p_p0pr;
+ } p0pr_mode_choice_value;
+ ispresent tbf_starting_time_choice_tag;
+ union {
+ starting_frame_num_struct p_tbf_starting_time;
+ } tbf_starting_time_choice_value;
+ ispresent global_tn_choice_tag;
+ union {
+ timeslot_desc_struct p_global_tn;
+ } global_tn_choice_value;
+} ts_reconfig_ul_assign_struct;
+
+typedef struct {
+ ispresent global_cs_choice_tag;
+ union {
+ kal_uint8 p_coding_scheme;
+ } global_cs_choice_value;
+ global_pkt_tim_adv_struct g_pkt_tim_adv; /* GLOBAL PACKET TIMING ADVANCE*/
+ ispresent freq_params_choice_tag;
+ union {
+ freq_params_peer_struct p_freq_params;
+ } freq_params_choice_value;
+ ispresent extend_timing_adv_choice_tag;
+ union {
+ kal_uint8 p_extend_timng_adv;
+ } extend_timing_adv_choice_value;
+ unsigned int no_ts_reconfig_dl_tbf_assign_mtbf;
+ unsigned int ts_reconfig_dl_tbf_assign_mtbf_size;
+ ts_reconfig_dl_tbf_assign_mtbf_struct *ts_reconfig_dl_tbf_assign_mtbf;
+ ts_reconfig_ul_assign_struct uplink_tbf; /* Multiple Uplink Assignment*/
+} gprs_ts_reconfig_mtbf_struct;
+
+typedef struct {
+ kal_uint8 msgescape; /* MESSAGE ESCAPE*/
+ ispresent global_egprs_cs_choice_tag;
+ union {
+ kal_uint8 p_global_egprs_cs;
+ } global_egprs_cs_choice_value;
+ kal_uint8 resegment; /* RESEGMENT*/
+ ispresent dl_egprs_window_size_choice_tag;
+ union {
+ kal_uint8 p_global_egprs_window_size;
+ } dl_egprs_window_size_choice_value;
+ ispresent rel99choice_tag;
+ union {
+ egprsdl_assign_additions_mtbf_struct p_rel99;
+ } rel99choice_value;
+ global_pkt_tim_adv_struct g_pkt_tim_adv; /* GLOBAL PACKET TIMING ADVANCE*/
+ ispresent extend_timing_adv_choice_tag;
+ union {
+ kal_uint8 p_extend_timng_adv;
+ } extend_timing_adv_choice_value;
+ ispresent freq_params_choice_tag;
+ union {
+ freq_params_peer_struct p_freq_params;
+ } freq_params_choice_value;
+ unsigned int no_ts_reconfig_dl_tbf_assign_mtbf;
+ unsigned int ts_reconfig_dl_tbf_assign_mtbf_size;
+ ts_reconfig_dl_tbf_assign_mtbf_struct *ts_reconfig_dl_tbf_assign_mtbf;
+ ts_reconfig_ul_assign_struct uplink_tbf; /* Multiple Uplink Assignment*/
+} egprs_ts_reconfig_mtbf_struct;
+
+typedef struct {
+ header_struct header; /* HEADER*/
+ kal_uint8 msgtype; /* MSG TYPE*/
+ kal_uint8 page_mode; /* PAGE MODE*/
+ kal_uint8 msgesc1; /* MESSAGE ESCAPE*/
+ global_tfistruct global_tfi; /* GLOBAL TFI*/
+ ispresent ts_reconfig_mtbf_choice_tag;
+ union {
+ gprs_ts_reconfig_mtbf_struct a_gprs_ts_reconfig_mtbf;
+ egprs_ts_reconfig_mtbf_struct p_egprs_ts_reconfig_mtbf;
+ } ts_reconfig_mtbf_choice_value;
+} mtbf_timeslot_reconfigure_assign;
+#endif
diff --git a/mcu/protocol/interface/asn/rr/include/gprs_rlcmac_common.h b/mcu/protocol/interface/asn/rr/include/gprs_rlcmac_common.h
new file mode 100644
index 0000000..aa22250
--- /dev/null
+++ b/mcu/protocol/interface/asn/rr/include/gprs_rlcmac_common.h
@@ -0,0 +1,123 @@
+/*****************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2005
+*
+* BY OPENING THIS FILE, BUYER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND AGREES
+* THAT THE SOFTWARE/FIRMWARE AND ITS DOCUMENTATIONS ("MEDIATEK SOFTWARE")
+* RECEIVED FROM MEDIATEK AND/OR ITS REPRESENTATIVES ARE PROVIDED TO BUYER ON
+* AN "AS-IS" BASIS ONLY. MEDIATEK EXPRESSLY DISCLAIMS ANY AND ALL WARRANTIES,
+* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF
+* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NONINFRINGEMENT.
+* NEITHER DOES MEDIATEK PROVIDE ANY WARRANTY WHATSOEVER WITH RESPECT TO THE
+* SOFTWARE OF ANY THIRD PARTY WHICH MAY BE USED BY, INCORPORATED IN, OR
+* SUPPLIED WITH THE MEDIATEK SOFTWARE, AND BUYER AGREES TO LOOK ONLY TO SUCH
+* THIRD PARTY FOR ANY WARRANTY CLAIM RELATING THERETO. MEDIATEK SHALL ALSO
+* NOT BE RESPONSIBLE FOR ANY MEDIATEK SOFTWARE RELEASES MADE TO BUYER'S
+* SPECIFICATION OR TO CONFORM TO A PARTICULAR STANDARD OR OPEN FORUM.
+*
+* BUYER'S SOLE AND EXCLUSIVE REMEDY AND MEDIATEK'S ENTIRE AND CUMULATIVE
+* LIABILITY WITH RESPECT TO THE MEDIATEK SOFTWARE RELEASED HEREUNDER WILL BE,
+* AT MEDIATEK'S OPTION, TO REVISE OR REPLACE THE MEDIATEK SOFTWARE AT ISSUE,
+* OR REFUND ANY SOFTWARE LICENSE FEES OR SERVICE CHARGE PAID BY BUYER TO
+* MEDIATEK FOR SUCH MEDIATEK SOFTWARE AT ISSUE.
+*
+* THE TRANSACTION CONTEMPLATED HEREUNDER SHALL BE CONSTRUED IN ACCORDANCE
+* WITH THE LAWS OF THE STATE OF CALIFORNIA, USA, EXCLUDING ITS CONFLICT OF
+* LAWS PRINCIPLES. ANY DISPUTES, CONTROVERSIES OR CLAIMS ARISING THEREOF AND
+* RELATED THERETO SHALL BE SETTLED BY ARBITRATION IN SAN FRANCISCO, CA, UNDER
+* THE RULES OF THE INTERNATIONAL CHAMBER OF COMMERCE (ICC).
+*
+*****************************************************************************/
+
+/*******************************************************************************
+ * Filename:
+ * ---------
+ * gprs_rlcmac_common.h
+ *
+ * Project:
+ * --------
+ * MAUI
+ *
+ * Description:
+ * ------------
+ *
+ *
+ * Author:
+ * -------
+ *
+ *
+ *==============================================================================
+ * HISTORY
+ * Below this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *------------------------------------------------------------------------------
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ *------------------------------------------------------------------------------
+ * Upper this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *==============================================================================
+ *******************************************************************************/
+
+/********************************************************************************
+* Copyright Statement:
+* --------------------
+*
+* This product has been developed using a protocol stack
+* developed by Sasken Communication Technologies Limited.
+*
+********************************************************************************/
+
+
+
+#ifndef _GPRS_RLCMAC_COMMON_H_
+#define _GPRS_RLCMAC_COMMON_H_
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#ifdef TEST_TOOL
+#include "tt_defs.h"
+#else
+#endif
+
+#ifdef TOOL
+#include "set_nstd_alloc_bitmap.h"
+#include "get_nstd_alloc_bitmap.h"
+#include "set_gprs_rlcmac_common.h"
+#include "get_gprs_rlcmac_common.h"
+#endif
+#ifdef __cplusplus
+}
+#endif
+
+#endif
+
+
diff --git a/mcu/protocol/interface/asn/rr/include/gprs_rlcmac_common_pun.h b/mcu/protocol/interface/asn/rr/include/gprs_rlcmac_common_pun.h
new file mode 100644
index 0000000..7cb9cb9
--- /dev/null
+++ b/mcu/protocol/interface/asn/rr/include/gprs_rlcmac_common_pun.h
@@ -0,0 +1,177 @@
+/*****************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2005
+*
+* BY OPENING THIS FILE, BUYER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND AGREES
+* THAT THE SOFTWARE/FIRMWARE AND ITS DOCUMENTATIONS ("MEDIATEK SOFTWARE")
+* RECEIVED FROM MEDIATEK AND/OR ITS REPRESENTATIVES ARE PROVIDED TO BUYER ON
+* AN "AS-IS" BASIS ONLY. MEDIATEK EXPRESSLY DISCLAIMS ANY AND ALL WARRANTIES,
+* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF
+* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NONINFRINGEMENT.
+* NEITHER DOES MEDIATEK PROVIDE ANY WARRANTY WHATSOEVER WITH RESPECT TO THE
+* SOFTWARE OF ANY THIRD PARTY WHICH MAY BE USED BY, INCORPORATED IN, OR
+* SUPPLIED WITH THE MEDIATEK SOFTWARE, AND BUYER AGREES TO LOOK ONLY TO SUCH
+* THIRD PARTY FOR ANY WARRANTY CLAIM RELATING THERETO. MEDIATEK SHALL ALSO
+* NOT BE RESPONSIBLE FOR ANY MEDIATEK SOFTWARE RELEASES MADE TO BUYER'S
+* SPECIFICATION OR TO CONFORM TO A PARTICULAR STANDARD OR OPEN FORUM.
+*
+* BUYER'S SOLE AND EXCLUSIVE REMEDY AND MEDIATEK'S ENTIRE AND CUMULATIVE
+* LIABILITY WITH RESPECT TO THE MEDIATEK SOFTWARE RELEASED HEREUNDER WILL BE,
+* AT MEDIATEK'S OPTION, TO REVISE OR REPLACE THE MEDIATEK SOFTWARE AT ISSUE,
+* OR REFUND ANY SOFTWARE LICENSE FEES OR SERVICE CHARGE PAID BY BUYER TO
+* MEDIATEK FOR SUCH MEDIATEK SOFTWARE AT ISSUE.
+*
+* THE TRANSACTION CONTEMPLATED HEREUNDER SHALL BE CONSTRUED IN ACCORDANCE
+* WITH THE LAWS OF THE STATE OF CALIFORNIA, USA, EXCLUDING ITS CONFLICT OF
+* LAWS PRINCIPLES. ANY DISPUTES, CONTROVERSIES OR CLAIMS ARISING THEREOF AND
+* RELATED THERETO SHALL BE SETTLED BY ARBITRATION IN SAN FRANCISCO, CA, UNDER
+* THE RULES OF THE INTERNATIONAL CHAMBER OF COMMERCE (ICC).
+*
+*****************************************************************************/
+
+/*******************************************************************************
+ * Filename:
+ * ---------
+ * gprs_rlcmac_common_pun.h
+ *
+ * Project:
+ * --------
+ * MAUI
+ *
+ * Description:
+ * ------------
+ *
+ *
+ * Author:
+ * -------
+ *
+ *
+ *==============================================================================
+ * HISTORY
+ * Below this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *------------------------------------------------------------------------------
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ *------------------------------------------------------------------------------
+ * Upper this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *==============================================================================
+ *******************************************************************************/
+
+/********************************************************************************
+* Copyright Statement:
+* --------------------
+*
+* This product has been developed using a protocol stack
+* developed by Sasken Communication Technologies Limited.
+*
+********************************************************************************/
+
+
+/*******************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2002
+*
+*******************************************************************************
+ * FILENAME : gprs_rlcmac_common_pun.h
+ * SYNOPSIS : Functions for encoding/decoding.
+ *
+ * R E V I S I O N H I S T O R Y
+ *
+ */
+#ifdef MTK_PEER
+#define IMP __declspec(dllimport)
+#else
+#define IMP
+#endif
+#ifndef _GPRS_RLCMAC_COMMON_PUN_H
+#define _GPRS_RLCMAC_COMMON_PUN_H
+
+/*Evelyn: Remove redundant header and file */
+#include "kal_general_types.h"
+
+#define ul_ctrl_header_struct_size(x) 1
+IMP unsigned int ul_ctrl_header_struct_bits(void *);
+IMP void ul_ctrl_header_struct_alloc(void *);
+IMP void ul_ctrl_header_struct_dealloc(void *);
+IMP unsigned int ul_ctrl_header_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int ul_ctrl_header_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define data_blk_hdr_struct_size(x) 1
+IMP unsigned int data_blk_hdr_struct_bits(void *);
+IMP void data_blk_hdr_struct_alloc(void *);
+IMP void data_blk_hdr_struct_dealloc(void *);
+IMP unsigned int data_blk_hdr_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int data_blk_hdr_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define third_octet_struct_size(x) 1
+IMP unsigned int third_octet_struct_bits(void *);
+IMP void third_octet_struct_alloc(void *);
+IMP void third_octet_struct_dealloc(void *);
+IMP unsigned int third_octet_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int third_octet_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int ctrl_blk_hdr_struct_bits(void *);
+IMP void ctrl_blk_hdr_struct_alloc(void *);
+IMP void ctrl_blk_hdr_struct_dealloc(void *);
+IMP unsigned int ctrl_blk_hdr_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int ctrl_blk_hdr_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int header_struct_bits(void *);
+IMP void header_struct_alloc(void *);
+IMP void header_struct_dealloc(void *);
+IMP unsigned int header_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int header_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define ack_nack_desc_struct_size(x) 9
+IMP unsigned int ack_nack_desc_struct_bits(void *);
+IMP void ack_nack_desc_struct_alloc(void *);
+IMP void ack_nack_desc_struct_dealloc(void *);
+IMP unsigned int ack_nack_desc_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int ack_nack_desc_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+/* Claire 041224 change : Move code from nstd_egprs_ack_pun.c to gprs_rlcmac_common_rest.c */
+IMP unsigned int egprsack_nack_description_struct_bits(void *);
+IMP void egprsack_nack_description_struct_alloc(void *);
+IMP void egprsack_nack_description_struct_dealloc(void *);
+IMP unsigned int egprsack_nack_description_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int egprsack_nack_description_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#endif
+
+
diff --git a/mcu/protocol/interface/asn/rr/include/gprs_rlcmac_common_struct.h b/mcu/protocol/interface/asn/rr/include/gprs_rlcmac_common_struct.h
new file mode 100644
index 0000000..f96b09d
--- /dev/null
+++ b/mcu/protocol/interface/asn/rr/include/gprs_rlcmac_common_struct.h
@@ -0,0 +1,195 @@
+/*****************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2005
+*
+* BY OPENING THIS FILE, BUYER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND AGREES
+* THAT THE SOFTWARE/FIRMWARE AND ITS DOCUMENTATIONS ("MEDIATEK SOFTWARE")
+* RECEIVED FROM MEDIATEK AND/OR ITS REPRESENTATIVES ARE PROVIDED TO BUYER ON
+* AN "AS-IS" BASIS ONLY. MEDIATEK EXPRESSLY DISCLAIMS ANY AND ALL WARRANTIES,
+* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF
+* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NONINFRINGEMENT.
+* NEITHER DOES MEDIATEK PROVIDE ANY WARRANTY WHATSOEVER WITH RESPECT TO THE
+* SOFTWARE OF ANY THIRD PARTY WHICH MAY BE USED BY, INCORPORATED IN, OR
+* SUPPLIED WITH THE MEDIATEK SOFTWARE, AND BUYER AGREES TO LOOK ONLY TO SUCH
+* THIRD PARTY FOR ANY WARRANTY CLAIM RELATING THERETO. MEDIATEK SHALL ALSO
+* NOT BE RESPONSIBLE FOR ANY MEDIATEK SOFTWARE RELEASES MADE TO BUYER'S
+* SPECIFICATION OR TO CONFORM TO A PARTICULAR STANDARD OR OPEN FORUM.
+*
+* BUYER'S SOLE AND EXCLUSIVE REMEDY AND MEDIATEK'S ENTIRE AND CUMULATIVE
+* LIABILITY WITH RESPECT TO THE MEDIATEK SOFTWARE RELEASED HEREUNDER WILL BE,
+* AT MEDIATEK'S OPTION, TO REVISE OR REPLACE THE MEDIATEK SOFTWARE AT ISSUE,
+* OR REFUND ANY SOFTWARE LICENSE FEES OR SERVICE CHARGE PAID BY BUYER TO
+* MEDIATEK FOR SUCH MEDIATEK SOFTWARE AT ISSUE.
+*
+* THE TRANSACTION CONTEMPLATED HEREUNDER SHALL BE CONSTRUED IN ACCORDANCE
+* WITH THE LAWS OF THE STATE OF CALIFORNIA, USA, EXCLUDING ITS CONFLICT OF
+* LAWS PRINCIPLES. ANY DISPUTES, CONTROVERSIES OR CLAIMS ARISING THEREOF AND
+* RELATED THERETO SHALL BE SETTLED BY ARBITRATION IN SAN FRANCISCO, CA, UNDER
+* THE RULES OF THE INTERNATIONAL CHAMBER OF COMMERCE (ICC).
+*
+*****************************************************************************/
+
+/*******************************************************************************
+ * Filename:
+ * ---------
+ * gprs_rlcmac_common_struct.h
+ *
+ * Project:
+ * --------
+ * MAUI
+ *
+ * Description:
+ * ------------
+ *
+ *
+ * Author:
+ * -------
+ *
+ *
+ *==============================================================================
+ * HISTORY
+ * Below this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *------------------------------------------------------------------------------
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ *------------------------------------------------------------------------------
+ * Upper this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *==============================================================================
+ *******************************************************************************/
+
+/********************************************************************************
+* Copyright Statement:
+* --------------------
+*
+* This product has been developed using a protocol stack
+* developed by Sasken Communication Technologies Limited.
+*
+********************************************************************************/
+
+
+/*******************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2002
+*
+*******************************************************************************
+ * FILENAME : gprs_rlcmac_common_struct.h
+ * SYNOPSIS : Functions for encoding/decoding.
+ *
+ * R E V I S I O N H I S T O R Y
+ *
+ */
+#ifndef _GPRS_RLCMAC_COMMON_STRUCT_H
+#define _GPRS_RLCMAC_COMMON_STRUCT_H
+
+/*Evelyn: Remove redundant header and file */
+#include "kal_general_types.h"
+#include "rr_common_def.h"
+
+typedef struct {
+ kal_uint8 payloadtype;
+ kal_uint8 spare;
+ kal_uint8 retry;
+} ul_ctrl_header_struct;
+
+typedef struct {
+ kal_uint8 rrbp; /* RELATIVE REVERSE BLOCK PERIOD*/
+ kal_uint8 s_or_p; /* SUPPLEMENTARY AND POLLING BIT*/
+ kal_uint8 usf; /* UPLINK STATE FLAG*/
+} data_blk_hdr_struct;
+
+typedef struct {
+ kal_uint8 pr; /* power reduction*/
+ kal_uint8 tfi; /* power reduction*/
+ kal_uint8 dir; /* direction bit*/
+} third_octet_struct;
+
+typedef struct {
+ kal_uint8 rrbp; /* RELATIVE REVERSE BLOCK PERIOD*/
+ kal_uint8 s_or_p; /* SUPPLEMENTARY AND POLLING BIT*/
+ kal_uint8 usf; /* UPLINK STATE FLAG*/
+ kal_uint8 rbsn; /* RBSN*/
+ kal_uint8 rti; /* radio transaction identifier*/
+ kal_uint8 fs; /* final segment bit*/
+ ispresent third_octet_choice_tag;
+ union {
+ third_octet_struct pthird_octet_choice;
+ } third_octet_choice_value;
+} ctrl_blk_hdr_struct;
+
+typedef struct {
+ pay_load_type_enum pay_load_tag;
+ union {
+ data_blk_hdr_struct data_blk_hdr;
+ data_blk_hdr_struct ctrl_blk_hdr1;
+ ctrl_blk_hdr_struct ctrl_blk_hdr2;
+ } pay_load_value;
+} header_struct;
+
+typedef struct {
+ kal_uint8 final_ack_indication; /* FINAL ACK INDICATION*/
+ kal_uint8 starting_sequence_number; /* STARTING SEQUENCE NUMBER*/
+ kal_uint8 rxd_blk_bitmap[8];
+} ack_nack_desc_struct;
+
+#ifdef __EGPRS_MODE__
+typedef struct egprsack_nack_description_struct{
+ kal_uint8 final_ack_indication;
+ kal_uint16 begin_window;
+ kal_uint16 end_window;
+ kal_uint16 start_seq_no;
+ kal_uint8 is_compressed;
+ kal_uint8 color_code;
+ kal_uint8 c_bitmap_length;
+ kal_uint8 c_bitmap[16];
+ kal_uint8 uc_bitmap_length;
+ kal_uint8 uc_bitmap[40];
+} egprsack_nack_description_struct;
+#endif
+
+/* Austin 040406: support PSI status */
+typedef struct {
+ ispresent tfi_choice_tag;
+ union {
+ kal_uint8 ul_tfi;
+ kal_uint8 dl_tfi;
+ } tfi_choice_value;
+} global_tfistruct;
+#endif
+
+
diff --git a/mcu/protocol/interface/asn/rr/include/gprs_rlcmac_dl.h b/mcu/protocol/interface/asn/rr/include/gprs_rlcmac_dl.h
new file mode 100644
index 0000000..9b6e1f9
--- /dev/null
+++ b/mcu/protocol/interface/asn/rr/include/gprs_rlcmac_dl.h
@@ -0,0 +1,123 @@
+/*****************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2005
+*
+* BY OPENING THIS FILE, BUYER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND AGREES
+* THAT THE SOFTWARE/FIRMWARE AND ITS DOCUMENTATIONS ("MEDIATEK SOFTWARE")
+* RECEIVED FROM MEDIATEK AND/OR ITS REPRESENTATIVES ARE PROVIDED TO BUYER ON
+* AN "AS-IS" BASIS ONLY. MEDIATEK EXPRESSLY DISCLAIMS ANY AND ALL WARRANTIES,
+* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF
+* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NONINFRINGEMENT.
+* NEITHER DOES MEDIATEK PROVIDE ANY WARRANTY WHATSOEVER WITH RESPECT TO THE
+* SOFTWARE OF ANY THIRD PARTY WHICH MAY BE USED BY, INCORPORATED IN, OR
+* SUPPLIED WITH THE MEDIATEK SOFTWARE, AND BUYER AGREES TO LOOK ONLY TO SUCH
+* THIRD PARTY FOR ANY WARRANTY CLAIM RELATING THERETO. MEDIATEK SHALL ALSO
+* NOT BE RESPONSIBLE FOR ANY MEDIATEK SOFTWARE RELEASES MADE TO BUYER'S
+* SPECIFICATION OR TO CONFORM TO A PARTICULAR STANDARD OR OPEN FORUM.
+*
+* BUYER'S SOLE AND EXCLUSIVE REMEDY AND MEDIATEK'S ENTIRE AND CUMULATIVE
+* LIABILITY WITH RESPECT TO THE MEDIATEK SOFTWARE RELEASED HEREUNDER WILL BE,
+* AT MEDIATEK'S OPTION, TO REVISE OR REPLACE THE MEDIATEK SOFTWARE AT ISSUE,
+* OR REFUND ANY SOFTWARE LICENSE FEES OR SERVICE CHARGE PAID BY BUYER TO
+* MEDIATEK FOR SUCH MEDIATEK SOFTWARE AT ISSUE.
+*
+* THE TRANSACTION CONTEMPLATED HEREUNDER SHALL BE CONSTRUED IN ACCORDANCE
+* WITH THE LAWS OF THE STATE OF CALIFORNIA, USA, EXCLUDING ITS CONFLICT OF
+* LAWS PRINCIPLES. ANY DISPUTES, CONTROVERSIES OR CLAIMS ARISING THEREOF AND
+* RELATED THERETO SHALL BE SETTLED BY ARBITRATION IN SAN FRANCISCO, CA, UNDER
+* THE RULES OF THE INTERNATIONAL CHAMBER OF COMMERCE (ICC).
+*
+*****************************************************************************/
+
+/*******************************************************************************
+ * Filename:
+ * ---------
+ * gprs_rlcmac_dl.h
+ *
+ * Project:
+ * --------
+ * MAUI
+ *
+ * Description:
+ * ------------
+ *
+ *
+ * Author:
+ * -------
+ *
+ *
+ *==============================================================================
+ * HISTORY
+ * Below this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *------------------------------------------------------------------------------
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ *------------------------------------------------------------------------------
+ * Upper this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *==============================================================================
+ *******************************************************************************/
+
+/********************************************************************************
+* Copyright Statement:
+* --------------------
+*
+* This product has been developed using a protocol stack
+* developed by Sasken Communication Technologies Limited.
+*
+********************************************************************************/
+
+
+
+#ifndef _GPRS_RLCMAC_DL_H_
+#define _GPRS_RLCMAC_DL_H_
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#ifdef TEST_TOOL
+#include "tt_defs.h"
+#else
+#endif
+
+#ifdef TOOL
+#include "set_nstd_alloc_bitmap.h"
+#include "get_nstd_alloc_bitmap.h"
+#include "set_gprs_rlcmac_dl.h"
+#include "get_gprs_rlcmac_dl.h"
+#endif
+#ifdef __cplusplus
+}
+#endif
+
+#endif
+
+
diff --git a/mcu/protocol/interface/asn/rr/include/gprs_rlcmac_dl_pun.h b/mcu/protocol/interface/asn/rr/include/gprs_rlcmac_dl_pun.h
new file mode 100644
index 0000000..be5eadd
--- /dev/null
+++ b/mcu/protocol/interface/asn/rr/include/gprs_rlcmac_dl_pun.h
@@ -0,0 +1,480 @@
+/*****************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2005
+*
+* BY OPENING THIS FILE, BUYER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND AGREES
+* THAT THE SOFTWARE/FIRMWARE AND ITS DOCUMENTATIONS ("MEDIATEK SOFTWARE")
+* RECEIVED FROM MEDIATEK AND/OR ITS REPRESENTATIVES ARE PROVIDED TO BUYER ON
+* AN "AS-IS" BASIS ONLY. MEDIATEK EXPRESSLY DISCLAIMS ANY AND ALL WARRANTIES,
+* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF
+* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NONINFRINGEMENT.
+* NEITHER DOES MEDIATEK PROVIDE ANY WARRANTY WHATSOEVER WITH RESPECT TO THE
+* SOFTWARE OF ANY THIRD PARTY WHICH MAY BE USED BY, INCORPORATED IN, OR
+* SUPPLIED WITH THE MEDIATEK SOFTWARE, AND BUYER AGREES TO LOOK ONLY TO SUCH
+* THIRD PARTY FOR ANY WARRANTY CLAIM RELATING THERETO. MEDIATEK SHALL ALSO
+* NOT BE RESPONSIBLE FOR ANY MEDIATEK SOFTWARE RELEASES MADE TO BUYER'S
+* SPECIFICATION OR TO CONFORM TO A PARTICULAR STANDARD OR OPEN FORUM.
+*
+* BUYER'S SOLE AND EXCLUSIVE REMEDY AND MEDIATEK'S ENTIRE AND CUMULATIVE
+* LIABILITY WITH RESPECT TO THE MEDIATEK SOFTWARE RELEASED HEREUNDER WILL BE,
+* AT MEDIATEK'S OPTION, TO REVISE OR REPLACE THE MEDIATEK SOFTWARE AT ISSUE,
+* OR REFUND ANY SOFTWARE LICENSE FEES OR SERVICE CHARGE PAID BY BUYER TO
+* MEDIATEK FOR SUCH MEDIATEK SOFTWARE AT ISSUE.
+*
+* THE TRANSACTION CONTEMPLATED HEREUNDER SHALL BE CONSTRUED IN ACCORDANCE
+* WITH THE LAWS OF THE STATE OF CALIFORNIA, USA, EXCLUDING ITS CONFLICT OF
+* LAWS PRINCIPLES. ANY DISPUTES, CONTROVERSIES OR CLAIMS ARISING THEREOF AND
+* RELATED THERETO SHALL BE SETTLED BY ARBITRATION IN SAN FRANCISCO, CA, UNDER
+* THE RULES OF THE INTERNATIONAL CHAMBER OF COMMERCE (ICC).
+*
+*****************************************************************************/
+
+/*******************************************************************************
+ * Filename:
+ * ---------
+ * gprs_rlcmac_dl_pun.h
+ *
+ * Project:
+ * --------
+ * MAUI
+ *
+ * Description:
+ * ------------
+ *
+ *
+ * Author:
+ * -------
+ *
+ *
+ *==============================================================================
+ * HISTORY
+ * Below this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *------------------------------------------------------------------------------
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ *------------------------------------------------------------------------------
+ * Upper this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *==============================================================================
+ *******************************************************************************/
+
+/********************************************************************************
+* Copyright Statement:
+* --------------------
+*
+* This product has been developed using a protocol stack
+* developed by Sasken Communication Technologies Limited.
+*
+********************************************************************************/
+
+
+/*******************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2002
+*
+*******************************************************************************
+ * FILENAME : gprs_rlcmac_dl_pun.h
+ * SYNOPSIS : Functions for encoding/decoding.
+ *
+ * R E V I S I O N H I S T O R Y
+ *
+ */
+#ifdef MTK_PEER
+#define IMP __declspec(dllimport)
+#else
+#define IMP
+#endif
+#ifndef _GPRS_RLCMAC_DL_PUN_H
+#define _GPRS_RLCMAC_DL_PUN_H
+
+/*Evelyn: Remove redundant header and file */
+#include "kal_general_types.h"
+
+#define persist_level_struct_size(x) 2
+IMP unsigned int persist_level_struct_bits(void *);
+IMP void persist_level_struct_alloc(void *);
+IMP void persist_level_struct_dealloc(void *);
+IMP unsigned int persist_level_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int persist_level_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int global_tfistruct_bits(void *);
+IMP void global_tfistruct_alloc(void *);
+IMP void global_tfistruct_dealloc(void *);
+IMP unsigned int global_tfistruct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int global_tfistruct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define timing_adv_idx_tslot_struct_size(x) 1
+IMP unsigned int timing_adv_idx_tslot_struct_bits(void *);
+IMP void timing_adv_idx_tslot_struct_alloc(void *);
+IMP void timing_adv_idx_tslot_struct_dealloc(void *);
+IMP unsigned int timing_adv_idx_tslot_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int timing_adv_idx_tslot_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int pkt_timing_advance_struct_bits(void *);
+IMP void pkt_timing_advance_struct_alloc(void *);
+IMP void pkt_timing_advance_struct_dealloc(void *);
+IMP unsigned int pkt_timing_advance_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int pkt_timing_advance_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int chng_mark1struct_bits(void *);
+IMP void chng_mark1struct_alloc(void *);
+IMP void chng_mark1struct_dealloc(void *);
+IMP unsigned int chng_mark1struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int chng_mark1struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int indirect_encode_struct_bits(void *);
+IMP void indirect_encode_struct_alloc(void *);
+IMP void indirect_encode_struct_dealloc(void *);
+IMP unsigned int indirect_encode_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int indirect_encode_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int direct_encode1struct_bits(void *);
+IMP void direct_encode1struct_alloc(void *);
+IMP void direct_encode1struct_dealloc(void *);
+IMP unsigned int direct_encode1struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int direct_encode1struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int freq_params_peer_struct_bits(void *);
+IMP void freq_params_peer_struct_alloc(void *);
+IMP void freq_params_peer_struct_dealloc(void *);
+IMP unsigned int freq_params_peer_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int freq_params_peer_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int starting_frame_num_struct_bits(void *);
+IMP void starting_frame_num_struct_alloc(void *);
+IMP void starting_frame_num_struct_dealloc(void *);
+IMP unsigned int starting_frame_num_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int starting_frame_num_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define pkt_req_ref_struct_size(x) 4
+IMP unsigned int pkt_req_ref_struct_bits(void *);
+IMP void pkt_req_ref_struct_alloc(void *);
+IMP void pkt_req_ref_struct_dealloc(void *);
+IMP unsigned int pkt_req_ref_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int pkt_req_ref_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int usf_struct_bits(void *);
+IMP void usf_struct_alloc(void *);
+IMP void usf_struct_dealloc(void *);
+IMP unsigned int usf_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int usf_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int time_slot_alloc_struct_bits(void *);
+IMP void time_slot_alloc_struct_alloc(void *);
+IMP void time_slot_alloc_struct_dealloc(void *);
+IMP unsigned int time_slot_alloc_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int time_slot_alloc_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define usf_gamma_struct_size(x) 1
+IMP unsigned int usf_gamma_struct_bits(void *);
+IMP void usf_gamma_struct_alloc(void *);
+IMP void usf_gamma_struct_dealloc(void *);
+IMP unsigned int usf_gamma_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int usf_gamma_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int rr_usf_pwr_ctrl_struct_bits(void *);
+IMP void rr_usf_pwr_ctrl_struct_alloc(void *);
+IMP void rr_usf_pwr_ctrl_struct_dealloc(void *);
+IMP unsigned int rr_usf_pwr_ctrl_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int rr_usf_pwr_ctrl_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int time_slot_pwr_ctrl_alloc_struct_bits(void *);
+IMP void time_slot_pwr_ctrl_alloc_struct_alloc(void *);
+IMP void time_slot_pwr_ctrl_alloc_struct_dealloc(void *);
+IMP unsigned int time_slot_pwr_ctrl_alloc_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int time_slot_pwr_ctrl_alloc_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define p0pr_mode_struct_size(x) 1
+IMP unsigned int p0pr_mode_struct_bits(void *);
+IMP void p0pr_mode_struct_alloc(void *);
+IMP void p0pr_mode_struct_dealloc(void *);
+IMP unsigned int p0pr_mode_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int p0pr_mode_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int dynamic_alloc_struct_bits(void *);
+IMP void dynamic_alloc_struct_alloc(void *);
+IMP void dynamic_alloc_struct_dealloc(void *);
+IMP unsigned int dynamic_alloc_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int dynamic_alloc_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define alpha_gamma_struct_size(x) 2
+IMP unsigned int alpha_gamma_struct_bits(void *);
+IMP void alpha_gamma_struct_alloc(void *);
+IMP void alpha_gamma_struct_dealloc(void *);
+IMP unsigned int alpha_gamma_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int alpha_gamma_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define bts_mode_struct_size(x) 1
+IMP unsigned int bts_mode_struct_bits(void *);
+IMP void bts_mode_struct_alloc(void *);
+IMP void bts_mode_struct_dealloc(void *);
+IMP unsigned int bts_mode_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int bts_mode_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int single_blk_alloc_struct_bits(void *);
+IMP void single_blk_alloc_struct_alloc(void *);
+IMP void single_blk_alloc_struct_dealloc(void *);
+IMP unsigned int single_blk_alloc_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int single_blk_alloc_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+/* Claire 041123 new : Add for decoding Multi Block Allocation struct in PUAS */
+#ifdef __EGPRS_MODE__
+IMP unsigned int multi_blk_alloc_struct_bits(void *);
+IMP void multi_blk_alloc_struct_alloc(void *);
+IMP void multi_blk_alloc_struct_dealloc(void *);
+IMP unsigned int multi_blk_alloc_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int multi_blk_alloc_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+#endif
+
+IMP unsigned int gamma_tn_value_struct_bits(void *);
+IMP void gamma_tn_value_struct_alloc(void *);
+IMP void gamma_tn_value_struct_dealloc(void *);
+IMP unsigned int gamma_tn_value_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int gamma_tn_value_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int pwr_ctrl_params_peer_struct_bits(void *);
+IMP void pwr_ctrl_params_peer_struct_alloc(void *);
+IMP void pwr_ctrl_params_peer_struct_dealloc(void *);
+IMP unsigned int pwr_ctrl_params_peer_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int pwr_ctrl_params_peer_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int fixed_alloc_struct_bits(void *);
+IMP void fixed_alloc_struct_alloc(void *);
+IMP void fixed_alloc_struct_dealloc(void *);
+IMP unsigned int fixed_alloc_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int fixed_alloc_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int extend_timing_adv_struct_bits(void *);
+IMP void extend_timing_adv_struct_alloc(void *);
+IMP void extend_timing_adv_struct_dealloc(void *);
+IMP unsigned int extend_timing_adv_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int extend_timing_adv_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+/* Evelyn 20090415: Merge R6 */
+IMP unsigned int gprsuplnk_assign_struct_bits(void *);
+IMP void gprsuplnk_assign_struct_alloc(void *);
+IMP void gprsuplnk_assign_struct_dealloc(void *);
+IMP unsigned int gprsuplnk_assign_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int gprsuplnk_assign_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#ifdef __EGPRS_MODE__
+#define rmc_access_tech_req_elem_struct_size(x) 1
+IMP unsigned int rmc_access_tech_req_elem_struct_bits(void *);
+IMP void rmc_access_tech_req_elem_struct_alloc(void *);
+IMP void rmc_access_tech_req_elem_struct_dealloc(void *);
+IMP unsigned int rmc_access_tech_req_elem_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int rmc_access_tech_req_elem_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int rmc_access_tech_req_struct_bits(void *);
+IMP void rmc_access_tech_req_struct_alloc(void *);
+IMP void rmc_access_tech_req_struct_dealloc(void *);
+IMP unsigned int rmc_access_tech_req_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int rmc_access_tech_req_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int egprsuplnk_assign_struct_bits(void *);
+IMP void egprsuplnk_assign_struct_alloc(void *);
+IMP void egprsuplnk_assign_struct_dealloc(void *);
+IMP unsigned int egprsuplnk_assign_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int egprsuplnk_assign_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+#endif
+
+IMP unsigned int pkt_uplink_assignment_msg_bits(void *);
+IMP void pkt_uplink_assignment_msg_alloc(void *);
+IMP void pkt_uplink_assignment_msg_dealloc(void *);
+IMP unsigned int pkt_uplink_assignment_msg_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int pkt_uplink_assignment_msg_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int meas_map_peer_struct_bits(void *);
+IMP void meas_map_peer_struct_alloc(void *);
+IMP void meas_map_peer_struct_dealloc(void *);
+IMP unsigned int meas_map_peer_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int meas_map_peer_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#ifdef __EGPRS_MODE__
+IMP unsigned int egprsws_link_quality_bits(void *);
+IMP void egprsws_link_quality_alloc(void *);
+IMP void egprsws_link_quality_dealloc(void *);
+IMP unsigned int egprsws_link_quality_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int egprsws_link_quality_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int egprsdl_assign_additions_struct_bits(void *);
+IMP void egprsdl_assign_additions_struct_alloc(void *);
+IMP void egprsdl_assign_additions_struct_dealloc(void *);
+IMP unsigned int egprsdl_assign_additions_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int egprsdl_assign_additions_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+#endif
+/* Evelyn 20090415: Merge R6 */
+IMP unsigned int pkt_downlink_assign_bits(void *);
+IMP void pkt_downlink_assign_alloc(void *);
+IMP void pkt_downlink_assign_dealloc(void *);
+IMP unsigned int pkt_downlink_assign_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int pkt_downlink_assign_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define wait_struct_size(x) 2
+IMP unsigned int wait_struct_bits(void *);
+IMP void wait_struct_alloc(void *);
+IMP void wait_struct_dealloc(void *);
+IMP unsigned int wait_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int wait_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int reject_struct_bits(void *);
+IMP void reject_struct_alloc(void *);
+IMP void reject_struct_dealloc(void *);
+IMP unsigned int reject_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int reject_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int packet_access_reject_bits(void *);
+IMP void packet_access_reject_alloc(void *);
+IMP void packet_access_reject_dealloc(void *);
+IMP unsigned int packet_access_reject_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int packet_access_reject_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int packet_queing_notification_bits(void *);
+IMP void packet_queing_notification_alloc(void *);
+IMP void packet_queing_notification_dealloc(void *);
+IMP unsigned int packet_queing_notification_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int packet_queing_notification_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int alloc_bitmap_struct_bits(void *);
+IMP void alloc_bitmap_struct_alloc(void *);
+IMP void alloc_bitmap_struct_dealloc(void *);
+IMP unsigned int alloc_bitmap_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int alloc_bitmap_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int ack_nack_fixed_alloc_struct_bits(void *);
+IMP void ack_nack_fixed_alloc_struct_alloc(void *);
+IMP void ack_nack_fixed_alloc_struct_dealloc(void *);
+IMP unsigned int ack_nack_fixed_alloc_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int ack_nack_fixed_alloc_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int gprsuplnk_ack_nack_struct_bits(void *);
+IMP void gprsuplnk_ack_nack_struct_alloc(void *);
+IMP void gprsuplnk_ack_nack_struct_dealloc(void *);
+IMP unsigned int gprsuplnk_ack_nack_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int gprsuplnk_ack_nack_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#ifdef __EGPRS_MODE__
+IMP unsigned int egprsuplnk_ack_nack_struct_bits(void *);
+IMP void egprsuplnk_ack_nack_struct_alloc(void *);
+IMP void egprsuplnk_ack_nack_struct_dealloc(void *);
+IMP unsigned int egprsuplnk_ack_nack_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int egprsuplnk_ack_nack_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+#endif
+
+IMP unsigned int pkt_uplink_ack_nack_bits(void *);
+IMP void pkt_uplink_ack_nack_alloc(void *);
+IMP void pkt_uplink_ack_nack_dealloc(void *);
+IMP unsigned int pkt_uplink_ack_nack_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int pkt_uplink_ack_nack_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define timing_adv_index_tn_struct_size(x) 1
+IMP unsigned int timing_adv_index_tn_struct_bits(void *);
+IMP void timing_adv_index_tn_struct_alloc(void *);
+IMP void timing_adv_index_tn_struct_dealloc(void *);
+IMP unsigned int timing_adv_index_tn_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int timing_adv_index_tn_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int global_pkt_tim_adv_struct_bits(void *);
+IMP void global_pkt_tim_adv_struct_alloc(void *);
+IMP void global_pkt_tim_adv_struct_dealloc(void *);
+IMP unsigned int global_pkt_tim_adv_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int global_pkt_tim_adv_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define global_pwr_ctrl_params_struct_size(x) 3
+IMP unsigned int global_pwr_ctrl_params_struct_bits(void *);
+IMP void global_pwr_ctrl_params_struct_alloc(void *);
+IMP void global_pwr_ctrl_params_struct_dealloc(void *);
+IMP unsigned int global_pwr_ctrl_params_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int global_pwr_ctrl_params_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int global_pwr_ctrl_pkt_tim_struct_bits(void *);
+IMP void global_pwr_ctrl_pkt_tim_struct_alloc(void *);
+IMP void global_pwr_ctrl_pkt_tim_struct_dealloc(void *);
+IMP unsigned int global_pwr_ctrl_pkt_tim_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int global_pwr_ctrl_pkt_tim_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int pkt_pwr_ctrl_tim_adv_struct_bits(void *);
+IMP void pkt_pwr_ctrl_tim_adv_struct_alloc(void *);
+IMP void pkt_pwr_ctrl_tim_adv_struct_dealloc(void *);
+IMP unsigned int pkt_pwr_ctrl_tim_adv_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int pkt_pwr_ctrl_tim_adv_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int ts_reconfig_dynamic_alloc_struct_bits(void *);
+IMP void ts_reconfig_dynamic_alloc_struct_alloc(void *);
+IMP void ts_reconfig_dynamic_alloc_struct_dealloc(void *);
+IMP unsigned int ts_reconfig_dynamic_alloc_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int ts_reconfig_dynamic_alloc_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int ts_reconfig_fixed_alloc_struct_bits(void *);
+IMP void ts_reconfig_fixed_alloc_struct_alloc(void *);
+IMP void ts_reconfig_fixed_alloc_struct_dealloc(void *);
+IMP unsigned int ts_reconfig_fixed_alloc_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int ts_reconfig_fixed_alloc_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+/* Evelyn 20090415: Merge R6 */
+IMP unsigned int gprs_timeslot_reconfig_bits(void *);
+IMP void gprs_timeslot_reconfig_alloc(void *);
+IMP void gprs_timeslot_reconfig_dealloc(void *);
+IMP unsigned int gprs_timeslot_reconfig_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int gprs_timeslot_reconfig_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#ifdef __EGPRS_MODE__
+IMP unsigned int egprs_timeslot_reconfig_bits(void *);
+IMP void egprs_timeslot_reconfig_alloc(void *);
+IMP void egprs_timeslot_reconfig_dealloc(void *);
+IMP unsigned int egprs_timeslot_reconfig_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int egprs_timeslot_reconfig_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+#endif
+
+IMP unsigned int pkt_timeslot_reconfigure_bits(void *);
+IMP void pkt_timeslot_reconfigure_alloc(void *);
+IMP void pkt_timeslot_reconfigure_dealloc(void *);
+IMP unsigned int pkt_timeslot_reconfigure_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int pkt_timeslot_reconfigure_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int packet_polling_request_bits(void *);
+IMP void packet_polling_request_alloc(void *);
+IMP void packet_polling_request_dealloc(void *);
+IMP unsigned int packet_polling_request_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int packet_polling_request_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#endif
+
+
diff --git a/mcu/protocol/interface/asn/rr/include/gprs_rlcmac_dl_struct.h b/mcu/protocol/interface/asn/rr/include/gprs_rlcmac_dl_struct.h
new file mode 100644
index 0000000..e5077b7
--- /dev/null
+++ b/mcu/protocol/interface/asn/rr/include/gprs_rlcmac_dl_struct.h
@@ -0,0 +1,978 @@
+/*****************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2005
+*
+* BY OPENING THIS FILE, BUYER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND AGREES
+* THAT THE SOFTWARE/FIRMWARE AND ITS DOCUMENTATIONS ("MEDIATEK SOFTWARE")
+* RECEIVED FROM MEDIATEK AND/OR ITS REPRESENTATIVES ARE PROVIDED TO BUYER ON
+* AN "AS-IS" BASIS ONLY. MEDIATEK EXPRESSLY DISCLAIMS ANY AND ALL WARRANTIES,
+* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF
+* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NONINFRINGEMENT.
+* NEITHER DOES MEDIATEK PROVIDE ANY WARRANTY WHATSOEVER WITH RESPECT TO THE
+* SOFTWARE OF ANY THIRD PARTY WHICH MAY BE USED BY, INCORPORATED IN, OR
+* SUPPLIED WITH THE MEDIATEK SOFTWARE, AND BUYER AGREES TO LOOK ONLY TO SUCH
+* THIRD PARTY FOR ANY WARRANTY CLAIM RELATING THERETO. MEDIATEK SHALL ALSO
+* NOT BE RESPONSIBLE FOR ANY MEDIATEK SOFTWARE RELEASES MADE TO BUYER'S
+* SPECIFICATION OR TO CONFORM TO A PARTICULAR STANDARD OR OPEN FORUM.
+*
+* BUYER'S SOLE AND EXCLUSIVE REMEDY AND MEDIATEK'S ENTIRE AND CUMULATIVE
+* LIABILITY WITH RESPECT TO THE MEDIATEK SOFTWARE RELEASED HEREUNDER WILL BE,
+* AT MEDIATEK'S OPTION, TO REVISE OR REPLACE THE MEDIATEK SOFTWARE AT ISSUE,
+* OR REFUND ANY SOFTWARE LICENSE FEES OR SERVICE CHARGE PAID BY BUYER TO
+* MEDIATEK FOR SUCH MEDIATEK SOFTWARE AT ISSUE.
+*
+* THE TRANSACTION CONTEMPLATED HEREUNDER SHALL BE CONSTRUED IN ACCORDANCE
+* WITH THE LAWS OF THE STATE OF CALIFORNIA, USA, EXCLUDING ITS CONFLICT OF
+* LAWS PRINCIPLES. ANY DISPUTES, CONTROVERSIES OR CLAIMS ARISING THEREOF AND
+* RELATED THERETO SHALL BE SETTLED BY ARBITRATION IN SAN FRANCISCO, CA, UNDER
+* THE RULES OF THE INTERNATIONAL CHAMBER OF COMMERCE (ICC).
+*
+*****************************************************************************/
+
+/*******************************************************************************
+ * Filename:
+ * ---------
+ * gprs_rlcmac_dl_struct.h
+ *
+ * Project:
+ * --------
+ * MAUI
+ *
+ * Description:
+ * ------------
+ *
+ *
+ * Author:
+ * -------
+ *
+ *
+ *==============================================================================
+ * HISTORY
+ * Below this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *------------------------------------------------------------------------------
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ *------------------------------------------------------------------------------
+ * Upper this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *==============================================================================
+ *******************************************************************************/
+
+/********************************************************************************
+* Copyright Statement:
+* --------------------
+*
+* This product has been developed using a protocol stack
+* developed by Sasken Communication Technologies Limited.
+*
+********************************************************************************/
+
+
+/*******************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2002
+*
+*******************************************************************************
+ * FILENAME : gprs_rlcmac_dl_struct.h
+ * SYNOPSIS : Functions for encoding/decoding.
+ *
+ * R E V I S I O N H I S T O R Y
+ *
+ */
+#ifndef _GPRS_RLCMAC_DL_STRUCT_H
+#define _GPRS_RLCMAC_DL_STRUCT_H
+
+/*Evelyn: Remove redundant header and file */
+#include "kal_general_types.h"
+#include "rr_common_def.h"
+#include "nstd_mobile_alloc_peer_struct.h"
+#include "nstd_alloc_bitmap_struct.h"
+#include "gprs_rlcmac_common_struct.h"
+#include "nstd_extension_bit_struct.h"
+
+typedef struct {
+ kal_uint8 persist_level[4];
+} persist_level_struct;
+
+typedef struct {
+ kal_uint8 timing_adv_index; /* TIMING ADV INDEX*/
+ kal_uint8 timing_adv_time_slot_no; /* TIMING ADV TIMESLOT NUMBER*/
+} timing_adv_idx_tslot_struct;
+
+typedef struct {
+ ispresent timing_adv_val_choice_tag;
+ union {
+ kal_uint8 p_timing_adv_val;
+ } timing_adv_val_choice_value;
+ ispresent timing_adv_idx_tslot_choice_tag;
+ union {
+ timing_adv_idx_tslot_struct p_timing_adv_index;
+ } timing_adv_idx_tslot_choice_value;
+} pkt_timing_advance_struct;
+
+typedef struct {
+ kal_uint8 chng_mark1; /* CHANGE MARK 1*/
+ ispresent chng_mark2choice_tag;
+ union {
+ kal_uint8 p_chng_mark2;
+ } chng_mark2choice_value;
+} chng_mark1struct;
+
+typedef struct {
+ kal_uint8 maio; /* MAIO*/
+ kal_uint8 ma_number; /* MA NUMBER*/
+ ispresent chng_mark1choice_tag;
+ union {
+ chng_mark1struct p_chng_mark1;
+ } chng_mark1choice_value;
+} indirect_encode_struct;
+
+typedef struct {
+ kal_uint8 maio; /* MAIO*/
+ rr_gprs_mobile_alloc_peer_struct gprs_mobile_alloc; /* GPRS MOBILE ALLOC STRUCT*/
+} direct_encode1struct;
+
+typedef struct {
+ kal_uint8 tsc; /* TSC*/
+ freq_enum freq_encoding_choice_tag;
+ union {
+ kal_uint16 arfcn;
+ indirect_encode_struct indirect_encode;
+ direct_encode1struct direct_encode1;
+ direct_encode2struct direct_encode2;
+ } freq_encoding_choice_value;
+} freq_params_peer_struct;
+
+typedef struct {
+ ispresent frame_num_encode_choice_tag;
+ union {
+ kal_uint16 a_absolute;
+ kal_uint16 p_relative;
+ } frame_num_encode_choice_value;
+} starting_frame_num_struct;
+
+typedef struct {
+ kal_uint16 random_access_info; /* RANDOM ACCESS INFORMATION*/
+ kal_uint16 frame_no; /* FRAME NUMBER*/
+} pkt_req_ref_struct;
+
+typedef struct {
+ ispresent usf_time_slot_choice_tag;
+ union {
+ kal_uint8 p_usf_time_slot;
+ } usf_time_slot_choice_value;
+} usf_struct;
+
+typedef struct {
+ usf_struct usf_alloc_struct[8];
+} time_slot_alloc_struct;
+
+typedef struct {
+ kal_uint8 usf_val; /* usf value*/
+ kal_uint8 gamma_tn; /* gamma value*/
+} usf_gamma_struct;
+
+typedef struct {
+ ispresent usf_gamma_time_slot_choice_tag;
+ union {
+ usf_gamma_struct p_usf_pwr_ctrl_time_slot;
+ } usf_gamma_time_slot_choice_value;
+} rr_usf_pwr_ctrl_struct;
+
+typedef struct {
+ kal_uint8 alpha; /* ALPHA*/
+ rr_usf_pwr_ctrl_struct usf_pwr_ctrl_struct[8];
+} time_slot_pwr_ctrl_alloc_struct;
+
+typedef struct {
+ kal_uint8 p0; /* p0 BIT*/
+ kal_uint8 pr_mode; /* PR MODE*/
+} p0pr_mode_struct;
+
+typedef struct {
+ kal_uint8 extended_dyn_alloc; /* EXT DYNAMIC ALLOCATION*/
+ ispresent p0pr_mode_choice_tag;
+ union {
+ p0pr_mode_struct p_p0pr;
+ } p0pr_mode_choice_value;
+ kal_uint8 usf_granularity; /* USF GRANULARITY*/
+ ispresent tfi_assignment_choice_tag;
+ union {
+ kal_uint8 p_tfi_assignment;
+ } tfi_assignment_choice_value;
+ ispresent rlc_blks_granted_choice_tag;
+ union {
+ kal_uint8 p_rlc_blks_granted;
+ } rlc_blks_granted_choice_value;
+ ispresent tbf_starting_time_choice_tag;
+ union {
+ starting_frame_num_struct p_tbf_starting_time;
+ } tbf_starting_time_choice_value;
+ ispresent time_slot_pwr_ctrl_choice_tag;
+ union {
+ time_slot_alloc_struct a_time_slot_alloc;
+ time_slot_pwr_ctrl_alloc_struct p_time_slot_alloc;
+ } time_slot_pwr_ctrl_choice_value;
+} dynamic_alloc_struct;
+
+typedef struct {
+ kal_uint8 alpha; /* ALPHA*/
+ kal_uint8 gammatn; /* GAMMA*/
+} alpha_gamma_struct;
+
+typedef struct {
+ kal_uint8 p0; /* P0*/
+ kal_uint8 bts_mode; /* BTS MODE*/
+ kal_uint8 pr_mode; /* PR_MODE*/
+} bts_mode_struct;
+
+typedef struct {
+ kal_uint8 time_slot_no; /* TIME SLOT NUMBER*/
+ ispresent alpha_gamma_choice_tag;
+ union {
+ alpha_gamma_struct p_alpha_gamma;
+ } alpha_gamma_choice_value;
+ ispresent pwr_ctrl_mode_choice_tag;
+ union {
+ bts_mode_struct p_pwr_ctrl_mode;
+ } pwr_ctrl_mode_choice_value;
+ starting_frame_num_struct tbf_starting_time; /* TBF STARTING TIME*/
+} single_blk_alloc_struct;
+
+/* Claire 041123 new : Add for decoding Multi Block Allocation struct in PUAS */
+#ifdef __EGPRS_MODE__
+typedef struct {
+ kal_uint8 time_slot_no; /* TIME SLOT NUMBER*/
+ ispresent alpha_gamma_choice_tag;
+ union {
+ alpha_gamma_struct p_alpha_gamma;
+ } alpha_gamma_choice_value;
+ ispresent pwr_ctrl_mode_choice_tag;
+ union {
+ bts_mode_struct p_pwr_ctrl_mode;
+ } pwr_ctrl_mode_choice_value;
+ starting_frame_num_struct tbf_starting_time; /* TBF STARTING TIME*/
+ kal_uint8 no_of_blks_alloc;
+} multi_blk_alloc_struct;
+#endif
+
+typedef struct {
+ ispresent gamma_tn_val_choice_tag;
+ union {
+ kal_uint8 p_gamma_tn_value;
+ } gamma_tn_val_choice_value;
+} gamma_tn_value_struct;
+
+typedef struct {
+ kal_uint8 alpha; /* ALPHA*/
+ gamma_tn_value_struct gamma_tn_val_struct[8];
+} pwr_ctrl_params_peer_struct;
+
+typedef struct {
+ ispresent up_link_tfichoice_tag;
+ union {
+ kal_uint8 p_uplink_tfi_assgn;
+ } up_link_tfichoice_value;
+ kal_uint8 final_allocation; /* FINAL ALLOCATION*/
+ kal_uint8 down_link_ctrl_time_slot; /* DOWN LINK CONTROL TIME SLOT*/
+ ispresent pwr_ctrl_mode_choice_tag;
+ union {
+ bts_mode_struct p_pwr_ctrl_mode;
+ } pwr_ctrl_mode_choice_value;
+ ispresent pwr_ctrl_time_slot_choice_tag;
+ union {
+ kal_uint8 a_time_slot_allocation;
+ pwr_ctrl_params_peer_struct p_pwr_ctrl_params;
+ } pwr_ctrl_time_slot_choice_value;
+ kal_uint8 half_duplex_mode; /* HALF DUPLEX MODE*/
+ starting_frame_num_struct tbf_starting_time; /* TBF STARTING TIME*/
+ kal_uint8 msgesc; /* MESSAGE ESCAPE*/
+ alloc_struct alloc_bit_map; /* ALLOCATION BITMAP*/
+} fixed_alloc_struct;
+
+typedef struct {
+ ispresent extend_timing_adv_choice_tag;
+ union {
+ kal_uint8 p_extend_timing_adv;
+ } extend_timing_adv_choice_value;
+} extend_timing_adv_struct;
+
+/* Evelyn 20090415: Merge R6 */
+
+typedef struct {
+ kal_uint8 ch_code_cmd; /* CHANNEL CODING COMMAND*/
+ kal_uint8 tlli_blk_ch_code; /* TLLI CODE*/
+ pkt_timing_advance_struct pkt_time_advance; /* PACKET TIME ADVANCE STRUCTURE*/
+ ispresent freq_params_choice_tag;
+ union {
+ freq_params_peer_struct p_freq_params;
+ } freq_params_choice_value;
+ challoc_enum alloc_type_choice_tag;
+ union {
+ dynamic_alloc_struct dynamic_alloc;
+ single_blk_alloc_struct single_blk_alloc;
+ fixed_alloc_struct fixed_alloc;
+ } alloc_type_choice_value;
+/* Evelyn 20090415: Merge R6 */
+ ispresent rel99choice_tag;
+ union {
+ extend_timing_adv_struct p_rel99;
+ } rel99choice_value;
+} gprsuplnk_assign_struct;
+
+#ifdef __EGPRS_MODE__
+
+/* Claire 041123 test */
+typedef struct {
+ kal_uint8 access_tech_type;
+} rmc_access_tech_req_elem_struct;
+
+typedef struct {
+ kal_uint8 access_tech_type;
+ unsigned int no_access_tech_list;
+ unsigned int access_tech_list_size;
+ rmc_access_tech_req_elem_struct *access_tech_list;
+} rmc_access_tech_req_struct;
+/* End Claire 041123 test */
+
+typedef struct {
+ /* Claire 041123 change : Correct egprsuplnk_assign_struct pack unpack bug */
+ //kal_uint8 msgescape1; /* message ESCAPE*/
+ ispresent cont_res_tlli_choice_tag;
+ union {
+ kal_uint32 p_cont_resolution_tlli;
+ } cont_res_tlli_choice_value;
+
+ ispresent compact_reduce_ma_choice_tag;
+ union {
+ kal_uint8 p_compact_reduce_ma;
+ } compact_reduce_ma_choice_value;
+ kal_uint8 egprs_ch_coding_cmd; /* EGPRS channel coding command*/
+ kal_uint8 resegment; /* resegment*/
+ kal_uint8 window_size; /* EGPRS window size*/
+
+/* Claire 041123 change : Correct egprsuplnk_assign_struct pack unpack bug */
+ ispresent ch1_tag;
+ union {
+ rmc_access_tech_req_struct access_tech_req;
+ } ch1_value;
+ kal_uint8 arac_retxn_req;
+/* End Claire 041123 change : Correct egprsuplnk_assign_struct pack unpack bug */
+
+ kal_uint8 tlli_blk_ch_coding; /* TLLI block channel coding*/
+ ispresent bep_period_choice_tag;
+ union {
+ kal_uint8 p_bep_period2;
+ } bep_period_choice_value;
+ pkt_timing_advance_struct pkt_timing_advance; /* TIME ADV STRUCT*/
+ ispresent ext_time_adv_choice_tag;
+ union {
+ kal_uint8 p_extend_timing_advance;
+ } ext_time_adv_choice_value;
+ ispresent freq_params_choice_tag;
+ union {
+ freq_params_peer_struct p_freq_params;
+ } freq_params_choice_value;
+ challoc_enum alloc_type_choice_tag;
+ union {
+ dynamic_alloc_struct dynamic_alloc;
+/* Claire 041123 new : Add for decoding Multi Block Allocation struct in PUAS */
+ //single_blk_alloc_struct single_blk_alloc;
+ multi_blk_alloc_struct multi_blk_alloc;
+ fixed_alloc_struct fixed_alloc;
+ } alloc_type_choice_value;
+/* Evelyn 20090415: Merge R6 */
+} egprsuplnk_assign_struct;
+
+typedef struct {
+ header_struct header; /* HEADER*/
+ kal_uint8 msgtype; /* MSG TYPE*/
+ kal_uint8 page_mode; /* PAGE MODE*/
+ ispresent per_level_choice_tag;
+ union {
+ persist_level_struct p_persist_level;
+ } per_level_choice_value;
+ msid_enum ms_id_choice_tag;
+ union {
+ global_tfistruct global_tfi;
+ kal_uint32 tlli;
+ kal_uint16 tqi;
+ pkt_req_ref_struct pkt_req_ref;
+ } ms_id_choice_value;
+ ispresent up_link_assgn_choice_tag;
+ union {
+ gprsuplnk_assign_struct a_gprs_up_lnk_assign;
+ egprsuplnk_assign_struct p_egprs_up_lnk_assign;
+ } up_link_assgn_choice_value;
+} pkt_uplink_assignment_msg;
+#else /* -------------------GPRS MODE-------------------------------*/
+typedef struct {
+ header_struct header; /* HEADER*/
+ kal_uint8 msgtype; /* MSG TYPE*/
+ kal_uint8 page_mode; /* PAGE MODE*/
+ ispresent per_level_choice_tag;
+ union {
+ persist_level_struct p_persist_level;
+ } per_level_choice_value;
+ msid_enum ms_id_choice_tag;
+ union {
+ global_tfistruct global_tfi;
+ kal_uint32 tlli;
+ kal_uint16 tqi;
+ pkt_req_ref_struct pkt_req_ref;
+ } ms_id_choice_value;
+ kal_uint8 msgesc; /* MESSAGE ESCAPE*/
+ gprsuplnk_assign_struct gprs_up_lnk_assign; /* GPRS uplink assignment*/
+} pkt_uplink_assignment_msg;
+#endif
+
+typedef struct {
+ starting_frame_num_struct measurement_start_time; /* startframe structure*/
+ kal_uint8 measurement_interval; /* MEASUREMENT INTERVAL*/
+ kal_uint8 measurement_bitmap; /* MEASUREMENT BIT MAP*/
+} meas_map_peer_struct;
+
+/* Evelyn 20090415: Merge R6 */
+
+#ifdef __EGPRS_MODE__
+typedef struct {
+ kal_uint8 window_size; /* EGPRS window size*/
+ kal_uint8 link_quality_meas_mode; /* link quality measurement mode*/
+ ispresent bep_period_choice_tag;
+ union {
+ kal_uint8 p_bep_period2;
+ } bep_period_choice_value;
+} egprsws_link_quality;
+
+typedef struct {
+ ispresent egprs_ws_link_quality_choice_tag;
+ union {
+ egprsws_link_quality p_egprs_ws_link_quality;
+ } egprs_ws_link_quality_choice_value;
+} egprsdl_assign_additions_struct;
+
+typedef struct {
+ header_struct header; /* HEADER*/
+ kal_uint8 msgtype; /* MSG TYPE*/
+ kal_uint8 page_mode; /* PAGE MODE*/
+ ispresent per_level_choice_tag;
+ union {
+ persist_level_struct p_persist_level;
+ } per_level_choice_value;
+ msid_enum ms_add_choice_tag;
+ union {
+ global_tfistruct global_tfi;
+ kal_uint32 tlli;
+ } ms_add_choice_value;
+ kal_uint8 msgescape; /* MESSAGE ESCAPE*/
+ kal_uint8 mac_mode; /* MAC MODE*/
+ kal_uint8 rlc_mode; /* RLC MODE*/
+ kal_uint8 ctrl_ack; /* CONTROL ACK*/
+ kal_uint8 time_slotalloc; /* TIMESLOT ALLOCATION*/
+ pkt_timing_advance_struct pkt_time_adv_value; /* PACKET TIMING ADVANCE STRUCTURE*/
+ ispresent pwr_ctrl_mode_choice_tag;
+ union {
+ bts_mode_struct p_pwr_ctrl_mode;
+ } pwr_ctrl_mode_choice_value;
+ ispresent freq_params_choice_tag;
+ union {
+ freq_params_peer_struct p_freq_params;
+ } freq_params_choice_value;
+ ispresent down_link_tfi_choice_tag;
+ union {
+ kal_uint8 p_down_link_tfi_assign;
+ } down_link_tfi_choice_value;
+ ispresent pwr_ctrl_param_choice_tag;
+ union {
+ pwr_ctrl_params_peer_struct p_power_ctrl_param_value;
+ } pwr_ctrl_param_choice_value;
+ ispresent tbf_starting_time_choice_tag;
+ union {
+ starting_frame_num_struct p_tbf_starting_time;
+ } tbf_starting_time_choice_value;
+ ispresent meas_map_choice_tag;
+ union {
+ meas_map_peer_struct p_measurement_map;
+ } meas_map_choice_value;
+ ispresent rel99choice_tag;
+ union {
+ egprsdl_assign_additions_struct p_rel99;
+ } rel99choice_value;
+ ispresent extend_timing_adv_choice_tag;
+ union {
+ kal_uint8 p_extend_timng_adv;
+ } extend_timing_adv_choice_value;
+/* Evelyn 20090415: Merge R6 */
+} pkt_downlink_assign;
+#else
+typedef struct {
+ header_struct header; /* HEADER*/
+ kal_uint8 msgtype; /* MSG TYPE*/
+ kal_uint8 page_mode; /* PAGE MODE*/
+ ispresent per_level_choice_tag;
+ union {
+ persist_level_struct p_persist_level;
+ } per_level_choice_value;
+ msid_enum ms_add_choice_tag;
+ union {
+ global_tfistruct global_tfi;
+ kal_uint32 tlli;
+ } ms_add_choice_value;
+ kal_uint8 msgescape; /* MESSAGE ESCAPE*/
+ kal_uint8 mac_mode; /* MAC MODE*/
+ kal_uint8 rlc_mode; /* RLC MODE*/
+ kal_uint8 ctrl_ack; /* CONTROL ACK*/
+ kal_uint8 time_slotalloc; /* TIMESLOT ALLOCATION*/
+ pkt_timing_advance_struct pkt_time_adv_value; /* PACKET TIMING ADVANCE STRUCTURE*/
+ ispresent pwr_ctrl_mode_choice_tag;
+ union {
+ bts_mode_struct p_pwr_ctrl_mode;
+ } pwr_ctrl_mode_choice_value;
+ ispresent freq_params_choice_tag;
+ union {
+ freq_params_peer_struct p_freq_params;
+ } freq_params_choice_value;
+ ispresent down_link_tfi_choice_tag;
+ union {
+ kal_uint8 p_down_link_tfi_assign;
+ } down_link_tfi_choice_value;
+ ispresent pwr_ctrl_param_choice_tag;
+ union {
+ pwr_ctrl_params_peer_struct p_power_ctrl_param_value;
+ } pwr_ctrl_param_choice_value;
+ ispresent tbf_starting_time_choice_tag;
+ union {
+ starting_frame_num_struct p_tbf_starting_time;
+ } tbf_starting_time_choice_value;
+ ispresent meas_map_choice_tag;
+ union {
+ meas_map_peer_struct p_measurement_map;
+ } meas_map_choice_value;
+/* Evelyn 20090415: Merge R6 */
+ kal_uint8 egprsescape; /* ESCAPTE COMPACT Reduced MA*/
+ ispresent extend_timing_adv_choice_tag;
+ union {
+ kal_uint8 p_extend_timng_adv;
+ } extend_timing_adv_choice_value;
+} pkt_downlink_assign;
+#endif
+
+typedef struct {
+ kal_uint8 wait_indication;
+ kal_uint8 wait_indication_size;
+} wait_struct;
+
+typedef struct {
+ add_enum ms_id_choice_tag;
+ union {
+ kal_uint32 tlli;
+ pkt_req_ref_struct pkt_req_ref;
+ global_tfistruct global_tfi;
+ } ms_id_choice_value;
+ ispresent wait_ind_choice_tag;
+ union {
+ wait_struct p_wait_ind_val;
+ } wait_ind_choice_value;
+} reject_struct;
+
+typedef struct {
+ header_struct header; /* HEADER*/
+ kal_uint8 msg_type; /* MSG TYPE*/
+ kal_uint8 page_mode; /* PAGE MODE*/
+ reject_struct reject; /* REJECT STRUCTURE*/
+ unsigned int no_additional_reject;
+ unsigned int additional_reject_size;
+ reject_struct *additional_reject;
+} packet_access_reject;
+
+typedef struct {
+ header_struct header; /* HEADER*/
+ kal_uint8 msgtype; /* MSG TYPE*/
+ kal_uint8 page_mode; /* PAGE MODE*/
+ msid_enum pkt_req_ref_choice_tag;
+ union {
+ pkt_req_ref_struct packet_request_ref;
+ } pkt_req_ref_choice_value;
+ kal_uint16 tqi; /* TQI*/
+} packet_queing_notification;
+
+typedef struct {
+ starting_frame_num_struct tbf_starting; /* TBF STARTING TIME*/
+ ispresent time_slot_choice_tag;
+ union {
+ kal_uint8 p_time_slot_alloc;
+ } time_slot_choice_value;
+ kal_uint8 msgesc; /* MESSAGE ESCAPE*/
+ alloc_struct alloc_bit_map; /* ALLOCATION BITMAP*/
+} alloc_bitmap_struct;
+
+typedef struct {
+ kal_uint8 final_alloc; /* FINAL ALLOCATION*/
+ ispresent repeat_alloc_choice_tag;
+ union {
+ kal_uint8 a_ts_over_ride;
+ alloc_bitmap_struct p_alloc_bitmap;
+ } repeat_alloc_choice_value;
+} ack_nack_fixed_alloc_struct;
+
+typedef struct {
+ kal_uint8 ch_coding_cmd; /* CHCODINGCMD*/
+ ack_nack_desc_struct ack_nack_descrp; /* ACKNACKDESC*/
+ ispresent cont_res_tlli_choice_tag;
+ union {
+ kal_uint32 p_cont_resolution_tlli;
+ } cont_res_tlli_choice_value;
+ ispresent pkt_timing_adv_choice_tag;
+ union {
+ pkt_timing_advance_struct p_pkt_timing_adv_value;
+ } pkt_timing_adv_choice_value;
+ ispresent pwr_ctrl_params_choice_tag;
+ union {
+ pwr_ctrl_params_peer_struct p_pwr_ctrl_param_value;
+ } pwr_ctrl_params_choice_value;
+ ispresent extend_bits_choice_tag;
+ union {
+ extension_bit_struct p_ext_bits_value;
+ } extend_bits_choice_value;
+ ispresent fixed_alloc_choice_tag;
+ union {
+ ack_nack_fixed_alloc_struct p_fixed_alloc_params;
+ } fixed_alloc_choice_value;
+
+ ispresent rel99choice_tag;
+ union {
+ extend_timing_adv_struct p_rel99;
+ } rel99choice_value;
+ kal_uint8 tbf_est; /* TBF_EST */
+} gprsuplnk_ack_nack_struct;
+
+#ifdef __EGPRS_MODE__
+
+typedef struct {
+ kal_uint8 msgescape1; /* message ESCAPE*/
+ kal_uint8 egprs_ch_coding_cmd; /* EGPRS channel coding command*/
+ kal_uint8 resegment; /* resegment*/
+ kal_uint8 pre_emptive_txn; /* pre emptive transmission*/
+ /* Claire 041104 change : Correct egprsuplnk_ack_nack_struct pack unpack bug */
+ kal_uint8 prr_retxn_req;
+ kal_uint8 arac_retxn_req;
+ /* End Claire 041104 change : Correct egprsuplnk_ack_nack_struct pack unpack bug */
+ ispresent cont_res_tlli_choice_tag;
+ union {
+ kal_uint32 p_cont_res_tlli;
+ } cont_res_tlli_choice_value;
+ /* Claire 041104 change : Correct egprsuplnk_ack_nack_struct pack unpack bug */
+ kal_uint8 tbf_est;
+ /* End Claire 041104 change : Correct egprsuplnk_ack_nack_struct pack unpack bug */
+ ispresent pkt_timing_adv_choice_tag;
+ union {
+ pkt_timing_advance_struct p_pkt_timing_advance;
+ } pkt_timing_adv_choice_value;
+ ispresent extend_timing_adv_choice_tag;
+ union {
+ kal_uint8 p_extend_timing_advance;
+ } extend_timing_adv_choice_value;
+ ispresent pwr_ctrl_params_choice_tag;
+ union {
+ pwr_ctrl_params_peer_struct p_pwr_ctrl_params_value;
+ } pwr_ctrl_params_choice_value;
+ ispresent extend_bits_choice_tag;
+ union {
+ extension_bit_struct p_ext_bits_value;
+ } extend_bits_choice_value;
+ egprsack_nack_description_struct egprs_ack_nack_desc_struct;
+ ispresent fixed_alloc_choice_tag;
+ union {
+ ack_nack_fixed_alloc_struct p_fixed_allocation;
+ } fixed_alloc_choice_value;
+} egprsuplnk_ack_nack_struct;
+
+typedef struct {
+ header_struct header; /* HEADER STRUCT*/
+ kal_uint8 msgtype; /* MSG TYPE*/
+ kal_uint8 page_mode; /* PAGEMODE*/
+ kal_uint8 msgescape1; /* message ESCAPE*/
+ kal_uint8 up_link_tfi; /* UPLINKTFI*/
+ ispresent gprs_ul_ack_nack_choice_tag;
+ union {
+ gprsuplnk_ack_nack_struct a_gprs_up_lnk_ack_nack;
+ egprsuplnk_ack_nack_struct p_egprs_up_lnk_ack_nack;
+ } gprs_ul_ack_nack_choice_value;
+} pkt_uplink_ack_nack;
+
+#else
+typedef struct {
+ header_struct header; /* HEADER STRUCT*/
+ kal_uint8 msgtype; /* MSG TYPE*/
+ kal_uint8 page_mode; /* PAGEMODE*/
+ kal_uint8 msgescape1; /* message ESCAPE*/
+ kal_uint8 up_link_tfi; /* UPLINKTFI*/
+ kal_uint8 msgesc; /* MESSAGE ESCAPE*/
+ gprsuplnk_ack_nack_struct gprs_up_lnk_ack_nack; /* GPRS uplink ack/nack*/
+} pkt_uplink_ack_nack;
+#endif
+
+typedef struct {
+ kal_uint8 timing_adv_index; /* UP LINK TIM ADV INDEX*/
+ kal_uint8 timing_adv_ts_number; /* TIMING ADV TIMESLOT NUM*/
+} timing_adv_index_tn_struct;
+
+typedef struct {
+ ispresent timing_adv_choice_tag;
+ union {
+ kal_uint8 p_timing_adv_val;
+ } timing_adv_choice_value;
+ ispresent ul_timing_adv_index_tn_choice_tag;
+ union {
+ timing_adv_index_tn_struct p_ul_timing_adv_index_tn;
+ } ul_timing_adv_index_tn_choice_value;
+ ispresent dl_timing_adv_index_tn_choice_tag;
+ union {
+ timing_adv_index_tn_struct p_dl_timing_adv_index_tn;
+ } dl_timing_adv_index_tn_choice_value;
+} global_pkt_tim_adv_struct;
+
+typedef struct {
+ kal_uint8 alpha; /* ALPHA*/
+ kal_uint8 tavgw; /* T_AVG_W*/
+ kal_uint8 tavgt; /* T_AVG_T*/
+ kal_uint8 pb; /* PB*/
+ kal_uint8 pc_meas_chan; /* PC MEAS CHAN*/
+ kal_uint8 int_meas_ch_list; /* INT MEAS CHAN LIST AVAIL*/
+ kal_uint8 navgi; /* N_AVG_I*/
+} global_pwr_ctrl_params_struct;
+
+typedef struct {
+ global_pkt_tim_adv_struct g_pkt_tim_adv; /* GPKTTIMSTRUCT*/
+ pwr_ctrl_params_peer_struct pwr_ctrl_params; /* PWRCONPARASTRUCT*/
+} global_pwr_ctrl_pkt_tim_struct;
+
+typedef struct {
+ header_struct header; /* HEADER STRUCT*/
+ kal_uint8 msgtype; /* MSG TYPE*/
+ kal_uint8 page_mode; /* PAGE MODE*/
+ msid1_enum tqi_tfi_choice_tag;
+ union {
+ global_tfistruct a_global_tfi;
+ kal_uint16 a_tqi;
+ pkt_req_ref_struct a_pkt_req_ref;
+ } tqi_tfi_choice_value;
+ kal_uint8 msgesc; /* MESSAGE ESCAPE*/
+ ispresent gpwr_ctrlparams_choice_tag;
+ union {
+ global_pwr_ctrl_params_struct p_glo_pwr_ctrl_params;
+ } gpwr_ctrlparams_choice_value;
+ add_enum gpwr_ctrl_pkt_tim_choice_tag;
+ union {
+ global_pwr_ctrl_pkt_tim_struct gpwr_ctrl_pkt_timing;
+ global_pkt_tim_adv_struct g_pkt_tim_adv_params;
+ pwr_ctrl_params_peer_struct pwr_ctrl_params;
+ } gpwr_ctrl_pkt_tim_choice_value;
+} pkt_pwr_ctrl_tim_adv_struct;
+
+typedef struct {
+ kal_uint8 extended_dyn_alloc; /* EXT DYNAMIC ALLOCATION*/
+ ispresent p0pr_mode_choice_tag;
+ union {
+ p0pr_mode_struct p_p0pr;
+ } p0pr_mode_choice_value;
+ kal_uint8 usf_granularity; /* USF GRANULARITY*/
+ ispresent rlc_blks_granted_choice_tag;
+ union {
+ kal_uint8 p_rlc_blks_granted;
+ } rlc_blks_granted_choice_value;
+ ispresent tbf_starting_time_choice_tag;
+ union {
+ starting_frame_num_struct p_tbf_starting_time;
+ } tbf_starting_time_choice_value;
+ ispresent time_slot_pwr_ctrl_choice_tag;
+ union {
+ time_slot_alloc_struct a_time_slot_alloc;
+ time_slot_pwr_ctrl_alloc_struct p_time_slot_alloc;
+ } time_slot_pwr_ctrl_choice_value;
+} ts_reconfig_dynamic_alloc_struct;
+
+typedef struct {
+ ispresent pwr_ctrl_time_slot_choice_tag;
+ union {
+ kal_uint8 a_time_slot_allocation;
+ pwr_ctrl_params_peer_struct p_pwr_ctrl_params;
+ } pwr_ctrl_time_slot_choice_value;
+ kal_uint8 final_allocation; /* FINAL ALLOCATION*/
+ kal_uint8 down_link_ctrl_time_slot; /* DOWN LINK CONTROL TIME SLOT*/
+ ispresent pwr_ctrl_mode_choice_tag;
+ union {
+ bts_mode_struct p_pwr_ctrl_mode;
+ } pwr_ctrl_mode_choice_value;
+ ispresent meas_map_choice_tag;
+ union {
+ meas_map_peer_struct p_meas_map;
+ } meas_map_choice_value;
+ starting_frame_num_struct tbf_starting_time; /* TBF START TIME STRUCTURE*/
+ kal_uint8 msgesc; /* MESSAGE ESCAPE*/
+ alloc_struct alloc_bit_map; /* ALLOCATION BITMAP*/
+} ts_reconfig_fixed_alloc_struct;
+/* Evelyn 20090415: Merge R6 */
+
+typedef struct {
+ kal_uint8 ch_coding_cmd; /* CHANNEL CODING COMMAND*/
+ global_pkt_tim_adv_struct g_pkt_tim_adv; /* GLOBAL PACKET TIMING ADVANCE*/
+ kal_uint8 dl_rlc_mode; /* DOWN LINK RLC MODE*/
+ kal_uint8 ctrl_ack; /* CONTROL ACKNOWLEDGE*/
+ ispresent dl_tfi_assgn_choice_tag;
+ union {
+ kal_uint8 p_dl_tfi;
+ } dl_tfi_assgn_choice_value;
+ ispresent ul_tfi_assgn_choice_tag;
+ union {
+ kal_uint8 p_ul_tfi;
+ } ul_tfi_assgn_choice_value;
+ kal_uint8 dl_timeslot_alloc; /* DOWNLINK ALLOCATION*/
+ ispresent freq_params_choice_tag;
+ union {
+ freq_params_peer_struct p_freq_params;
+ } freq_params_choice_value;
+ ispresent alloc_type_choice_tag;
+ union {
+ ts_reconfig_dynamic_alloc_struct dynamic_alloc;
+ ts_reconfig_fixed_alloc_struct fixed_alloc;
+ } alloc_type_choice_value;
+/* Evelyn 20090415: Merge R6 */
+ ispresent rel99choice_tag;
+ union {
+ extend_timing_adv_struct p_rel99;
+ } rel99choice_value;
+} gprs_timeslot_reconfig;
+
+#ifdef __EGPRS_MODE__
+
+typedef struct {
+ kal_uint8 msgescape1; /* MESSAGE ESCAPE*/
+ ispresent compact_choice_tag;
+ union {
+ kal_uint8 p_compact_reduced_ma;
+ } compact_choice_value;
+ kal_uint8 ch_coding_cmd; /* EGPRS CHANNEL CODING COMMAND*/
+ kal_uint8 resegment; /* RESEGMENT*/
+ /* Claire 041110 change : Solve egprs_timeslot_reconfig bug */
+ ispresent dl_egprs_window_size_tag;
+ union {
+ kal_uint8 p_dl_egprs_window_size;
+ } dl_egprs_window_size_value;
+ ispresent ul_egprs_window_size_tag;
+ union {
+ kal_uint8 p_ul_egprs_window_size;
+ } ul_egprs_window_size_value;
+ /* End Claire 041110 change : Solve egprs_timeslot_reconfig bug */
+
+ kal_uint8 lnk_quality_meas_mode; /* LINK QUALITY MEASUREMENT MODE*/
+ global_pkt_tim_adv_struct g_pkt_tim_adv; /* GLOBAL PACKET TIMING ADVANCE*/
+ ispresent extend_tim_adv_choice_tag;
+ union {
+ kal_uint8 pextend_tim_adv;
+ } extend_tim_adv_choice_value;
+ kal_uint8 dl_rlc_mode; /* DOWNLINK RLC MODE*/
+ kal_uint8 control_ack; /* CONTROL ACK*/
+ ispresent dl_tfi_assgn_tag;
+ union {
+ kal_uint8 p_dl_tfi_assgn;
+ } dl_tfi_assgn_value;
+ ispresent ul_tfi_assgn_tag;
+ union {
+ kal_uint8 p_ul_tfi_assgn;
+ } ul_tfi_assgn_value;
+ kal_uint8 dl_timeslot_alloc; /* DL TIMESLOT ALLOCATION*/
+ ispresent freq_params_choice_tag;
+ union {
+ freq_params_peer_struct p_freq_params;
+ } freq_params_choice_value;
+ ispresent alloc_choice_tag;
+ union {
+ ts_reconfig_dynamic_alloc_struct a_dynamic_alloc;
+ ts_reconfig_fixed_alloc_struct p_fixed_alloc;
+ } alloc_choice_value;
+/* Evelyn 20090415: Merge R6 */
+} egprs_timeslot_reconfig;
+
+typedef struct {
+ header_struct header; /* HEADER*/
+ kal_uint8 msgtype; /* MSG TYPE*/
+ kal_uint8 page_mode; /* PAGEMODE*/
+ ispresent global_tfi_tag;
+ union {
+ global_tfistruct global_tfi;
+ } global_tfi_value;
+ ispresent gprs_choice_tag;
+ union {
+ gprs_timeslot_reconfig a_gprs_timeslot_reconfig;
+ egprs_timeslot_reconfig p_egprs_timeslot_reconfig;
+ } gprs_choice_value;
+} pkt_timeslot_reconfigure;
+#else
+typedef struct {
+ header_struct header; /* HEADER*/
+ kal_uint8 msgtype; /* MSG TYPE*/
+ kal_uint8 page_mode; /* PAGEMODE*/
+ ispresent global_tfi_tag;
+ union {
+ global_tfistruct global_tfi;
+ } global_tfi_value;
+ kal_uint8 msgesc; /* MESSAGE ESCAPE*/
+ gprs_timeslot_reconfig gprs_timeslot_reconfig_inst; /* TIMESLOT RECONFIG STRUCTURE*/
+} pkt_timeslot_reconfigure;
+#endif
+
+typedef struct {
+ header_struct header; /* HEADER*/
+ kal_uint8 msgtype; /* MSG TYPE*/
+ kal_uint8 page_mode; /* PAGE MODE*/
+ msid_enum ms_id_choice_tag;
+ union {
+ global_tfistruct global_tfi;
+ kal_uint32 tlli;
+ kal_uint16 tqi;
+ } ms_id_choice_value;
+ kal_uint8 typeof_ack; /* TYPE_OF_ACK*/
+} packet_polling_request;
+#endif
+
+
diff --git a/mcu/protocol/interface/asn/rr/include/gprs_rlcmac_peer.h b/mcu/protocol/interface/asn/rr/include/gprs_rlcmac_peer.h
new file mode 100644
index 0000000..53e9a9b
--- /dev/null
+++ b/mcu/protocol/interface/asn/rr/include/gprs_rlcmac_peer.h
@@ -0,0 +1,130 @@
+/*****************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2005
+*
+* BY OPENING THIS FILE, BUYER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND AGREES
+* THAT THE SOFTWARE/FIRMWARE AND ITS DOCUMENTATIONS ("MEDIATEK SOFTWARE")
+* RECEIVED FROM MEDIATEK AND/OR ITS REPRESENTATIVES ARE PROVIDED TO BUYER ON
+* AN "AS-IS" BASIS ONLY. MEDIATEK EXPRESSLY DISCLAIMS ANY AND ALL WARRANTIES,
+* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF
+* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NONINFRINGEMENT.
+* NEITHER DOES MEDIATEK PROVIDE ANY WARRANTY WHATSOEVER WITH RESPECT TO THE
+* SOFTWARE OF ANY THIRD PARTY WHICH MAY BE USED BY, INCORPORATED IN, OR
+* SUPPLIED WITH THE MEDIATEK SOFTWARE, AND BUYER AGREES TO LOOK ONLY TO SUCH
+* THIRD PARTY FOR ANY WARRANTY CLAIM RELATING THERETO. MEDIATEK SHALL ALSO
+* NOT BE RESPONSIBLE FOR ANY MEDIATEK SOFTWARE RELEASES MADE TO BUYER'S
+* SPECIFICATION OR TO CONFORM TO A PARTICULAR STANDARD OR OPEN FORUM.
+*
+* BUYER'S SOLE AND EXCLUSIVE REMEDY AND MEDIATEK'S ENTIRE AND CUMULATIVE
+* LIABILITY WITH RESPECT TO THE MEDIATEK SOFTWARE RELEASED HEREUNDER WILL BE,
+* AT MEDIATEK'S OPTION, TO REVISE OR REPLACE THE MEDIATEK SOFTWARE AT ISSUE,
+* OR REFUND ANY SOFTWARE LICENSE FEES OR SERVICE CHARGE PAID BY BUYER TO
+* MEDIATEK FOR SUCH MEDIATEK SOFTWARE AT ISSUE.
+*
+* THE TRANSACTION CONTEMPLATED HEREUNDER SHALL BE CONSTRUED IN ACCORDANCE
+* WITH THE LAWS OF THE STATE OF CALIFORNIA, USA, EXCLUDING ITS CONFLICT OF
+* LAWS PRINCIPLES. ANY DISPUTES, CONTROVERSIES OR CLAIMS ARISING THEREOF AND
+* RELATED THERETO SHALL BE SETTLED BY ARBITRATION IN SAN FRANCISCO, CA, UNDER
+* THE RULES OF THE INTERNATIONAL CHAMBER OF COMMERCE (ICC).
+*
+*****************************************************************************/
+
+/*******************************************************************************
+ * Filename:
+ * ---------
+ * gprs_rlcmac_peer.h
+ *
+ * Project:
+ * --------
+ * MAUI
+ *
+ * Description:
+ * ------------
+ *
+ *
+ * Author:
+ * -------
+ *
+ *
+ *==============================================================================
+ * HISTORY
+ * Below this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *------------------------------------------------------------------------------
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ *------------------------------------------------------------------------------
+ * Upper this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *==============================================================================
+ *******************************************************************************/
+
+/********************************************************************************
+* Copyright Statement:
+* --------------------
+*
+* This product has been developed using a protocol stack
+* developed by Sasken Communication Technologies Limited.
+*
+********************************************************************************/
+
+
+#ifndef _GPRS_RLCMAC_PEER_H_
+#define _GPRS_RLCMAC_PEER_H_
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#ifdef TEST_TOOL
+#include "tt_defs.h"
+#else
+#endif
+
+#ifdef TOOL
+#include "set_nstd_alloc_bitmap.h"
+#include "get_nstd_alloc_bitmap.h"
+#include "set_gprs_rlcmac_peer.h"
+#include "get_gprs_rlcmac_peer.h"
+#endif
+#ifdef __cplusplus
+}
+#endif
+
+#endif
+
+
diff --git a/mcu/protocol/interface/asn/rr/include/gprs_rlcmac_peer_pun.h b/mcu/protocol/interface/asn/rr/include/gprs_rlcmac_peer_pun.h
new file mode 100644
index 0000000..ac2ea91
--- /dev/null
+++ b/mcu/protocol/interface/asn/rr/include/gprs_rlcmac_peer_pun.h
@@ -0,0 +1,369 @@
+/*****************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2005
+*
+* BY OPENING THIS FILE, BUYER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND AGREES
+* THAT THE SOFTWARE/FIRMWARE AND ITS DOCUMENTATIONS ("MEDIATEK SOFTWARE")
+* RECEIVED FROM MEDIATEK AND/OR ITS REPRESENTATIVES ARE PROVIDED TO BUYER ON
+* AN "AS-IS" BASIS ONLY. MEDIATEK EXPRESSLY DISCLAIMS ANY AND ALL WARRANTIES,
+* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF
+* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NONINFRINGEMENT.
+* NEITHER DOES MEDIATEK PROVIDE ANY WARRANTY WHATSOEVER WITH RESPECT TO THE
+* SOFTWARE OF ANY THIRD PARTY WHICH MAY BE USED BY, INCORPORATED IN, OR
+* SUPPLIED WITH THE MEDIATEK SOFTWARE, AND BUYER AGREES TO LOOK ONLY TO SUCH
+* THIRD PARTY FOR ANY WARRANTY CLAIM RELATING THERETO. MEDIATEK SHALL ALSO
+* NOT BE RESPONSIBLE FOR ANY MEDIATEK SOFTWARE RELEASES MADE TO BUYER'S
+* SPECIFICATION OR TO CONFORM TO A PARTICULAR STANDARD OR OPEN FORUM.
+*
+* BUYER'S SOLE AND EXCLUSIVE REMEDY AND MEDIATEK'S ENTIRE AND CUMULATIVE
+* LIABILITY WITH RESPECT TO THE MEDIATEK SOFTWARE RELEASED HEREUNDER WILL BE,
+* AT MEDIATEK'S OPTION, TO REVISE OR REPLACE THE MEDIATEK SOFTWARE AT ISSUE,
+* OR REFUND ANY SOFTWARE LICENSE FEES OR SERVICE CHARGE PAID BY BUYER TO
+* MEDIATEK FOR SUCH MEDIATEK SOFTWARE AT ISSUE.
+*
+* THE TRANSACTION CONTEMPLATED HEREUNDER SHALL BE CONSTRUED IN ACCORDANCE
+* WITH THE LAWS OF THE STATE OF CALIFORNIA, USA, EXCLUDING ITS CONFLICT OF
+* LAWS PRINCIPLES. ANY DISPUTES, CONTROVERSIES OR CLAIMS ARISING THEREOF AND
+* RELATED THERETO SHALL BE SETTLED BY ARBITRATION IN SAN FRANCISCO, CA, UNDER
+* THE RULES OF THE INTERNATIONAL CHAMBER OF COMMERCE (ICC).
+*
+*****************************************************************************/
+
+/*******************************************************************************
+ * Filename:
+ * ---------
+ * gprs_rlcmac_peer_pun.h
+ *
+ * Project:
+ * --------
+ * MAUI
+ *
+ * Description:
+ * ------------
+ *
+ *
+ * Author:
+ * -------
+ *
+ *
+ *==============================================================================
+ * HISTORY
+ * Below this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *------------------------------------------------------------------------------
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ *------------------------------------------------------------------------------
+ * Upper this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *==============================================================================
+ *******************************************************************************/
+
+/********************************************************************************
+* Copyright Statement:
+* --------------------
+*
+* This product has been developed using a protocol stack
+* developed by Sasken Communication Technologies Limited.
+*
+********************************************************************************/
+
+
+/*******************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2002
+*
+*******************************************************************************
+ * FILENAME : gprs_rlcmac_peer_pun.h
+ * SYNOPSIS : Functions for encoding/decoding.
+ *
+ * R E V I S I O N H I S T O R Y
+ *
+ */
+#ifdef MTK_PEER
+#define IMP __declspec(dllimport)
+#else
+#define IMP
+#endif
+#ifndef _GPRS_RLCMAC_PEER_PUN_H
+#define _GPRS_RLCMAC_PEER_PUN_H
+
+#define access_tech_struct_size(x) 1
+IMP unsigned int access_tech_struct_bits(void *);
+IMP void access_tech_struct_alloc(void *);
+IMP void access_tech_struct_dealloc(void *);
+IMP unsigned int access_tech_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int access_tech_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int access_tech_list_bits(void *);
+IMP void access_tech_list_alloc(void *);
+IMP void access_tech_list_dealloc(void *);
+IMP unsigned int access_tech_list_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int access_tech_list_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int pkt_downlink_dummy_ctrl_blk_bits(void *);
+IMP void pkt_downlink_dummy_ctrl_blk_alloc(void *);
+IMP void pkt_downlink_dummy_ctrl_blk_dealloc(void *);
+IMP unsigned int pkt_downlink_dummy_ctrl_blk_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int pkt_downlink_dummy_ctrl_blk_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int packet_pdchrelease_bits(void *);
+IMP void packet_pdchrelease_alloc(void *);
+IMP void packet_pdchrelease_dealloc(void *);
+IMP unsigned int packet_pdchrelease_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int packet_pdchrelease_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int pkt_mobile_tbfstatus_bits(void *);
+IMP void pkt_mobile_tbfstatus_alloc(void *);
+IMP void pkt_mobile_tbfstatus_dealloc(void *);
+IMP unsigned int pkt_mobile_tbfstatus_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int pkt_mobile_tbfstatus_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int pkt_ctrl_ack_struct_bits(void *);
+IMP void pkt_ctrl_ack_struct_alloc(void *);
+IMP void pkt_ctrl_ack_struct_dealloc(void *);
+IMP unsigned int pkt_ctrl_ack_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int pkt_ctrl_ack_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int pkt_uplink_dummy_bits(void *);
+IMP void pkt_uplink_dummy_alloc(void *);
+IMP void pkt_uplink_dummy_dealloc(void *);
+IMP unsigned int pkt_uplink_dummy_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int pkt_uplink_dummy_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int prach_ctrl_params_struct_bits(void *);
+IMP void prach_ctrl_params_struct_alloc(void *);
+IMP void prach_ctrl_params_struct_dealloc(void *);
+IMP unsigned int prach_ctrl_params_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int prach_ctrl_params_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int pkt_prach_params_struct_bits(void *);
+IMP void pkt_prach_params_struct_alloc(void *);
+IMP void pkt_prach_params_struct_dealloc(void *);
+IMP unsigned int pkt_prach_params_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int pkt_prach_params_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int pkt_tbfrelease_struct_bits(void *);
+IMP void pkt_tbfrelease_struct_alloc(void *);
+IMP void pkt_tbfrelease_struct_dealloc(void *);
+IMP unsigned int pkt_tbfrelease_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int pkt_tbfrelease_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define gprsmulslot1struct_size(x) 2
+IMP unsigned int gprsmulslot1struct_bits(void *);
+IMP void gprsmulslot1struct_alloc(void *);
+IMP void gprsmulslot1struct_dealloc(void *);
+IMP unsigned int gprsmulslot1struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int gprsmulslot1struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define gprsmulslot_struct_size(x) 1
+IMP unsigned int gprsmulslot_struct_bits(void *);
+IMP void gprsmulslot_struct_alloc(void *);
+IMP void gprsmulslot_struct_dealloc(void *);
+IMP unsigned int gprsmulslot_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int gprsmulslot_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int multi_cap_struct_bits(void *);
+IMP void multi_cap_struct_alloc(void *);
+IMP void multi_cap_struct_dealloc(void *);
+IMP unsigned int multi_cap_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int multi_cap_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define ms_meas_cap_struct_size(x) 1
+IMP unsigned int ms_meas_cap_struct_bits(void *);
+IMP void ms_meas_cap_struct_alloc(void *);
+IMP void ms_meas_cap_struct_dealloc(void *);
+IMP unsigned int ms_meas_cap_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int ms_meas_cap_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int paccess_tech_struct_bits(void *);
+IMP void paccess_tech_struct_alloc(void *);
+IMP void paccess_tech_struct_dealloc(void *);
+IMP unsigned int paccess_tech_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int paccess_tech_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int eaccess_tech_struct_bits(void *);
+IMP void eaccess_tech_struct_alloc(void *);
+IMP void eaccess_tech_struct_dealloc(void *);
+IMP unsigned int eaccess_tech_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int eaccess_tech_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int raccess_tech_struct_bits(void *);
+IMP void raccess_tech_struct_alloc(void *);
+IMP void raccess_tech_struct_dealloc(void *);
+IMP unsigned int raccess_tech_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int raccess_tech_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int aaccess_tech_struct_bits(void *);
+IMP void aaccess_tech_struct_alloc(void *);
+IMP void aaccess_tech_struct_dealloc(void *);
+IMP unsigned int aaccess_tech_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int aaccess_tech_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int ms_racapability_struct_bits(void *);
+IMP void ms_racapability_struct_alloc(void *);
+IMP void ms_racapability_struct_dealloc(void *);
+IMP unsigned int ms_racapability_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int ms_racapability_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int ms_radio_cap_struct_bits(void *);
+IMP void ms_radio_cap_struct_alloc(void *);
+IMP void ms_radio_cap_struct_dealloc(void *);
+IMP unsigned int ms_radio_cap_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int ms_radio_cap_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int pkt_resource_request_struct_bits(void *);
+IMP void pkt_resource_request_struct_alloc(void *);
+IMP void pkt_resource_request_struct_dealloc(void *);
+IMP unsigned int pkt_resource_request_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int pkt_resource_request_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define nc_list_struct_size(x) 2
+IMP unsigned int nc_list_struct_bits(void *);
+IMP void nc_list_struct_alloc(void *);
+IMP void nc_list_struct_dealloc(void *);
+IMP unsigned int nc_list_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int nc_list_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int nc_freq_list_struct_bits(void *);
+IMP void nc_freq_list_struct_alloc(void *);
+IMP void nc_freq_list_struct_dealloc(void *);
+IMP unsigned int nc_freq_list_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int nc_freq_list_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int nc_meas_params_struct_bits(void *);
+IMP void nc_meas_params_struct_alloc(void *);
+IMP void nc_meas_params_struct_dealloc(void *);
+IMP unsigned int nc_meas_params_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int nc_meas_params_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int int_freq_list_struct_bits(void *);
+IMP void int_freq_list_struct_alloc(void *);
+IMP void int_freq_list_struct_dealloc(void *);
+IMP unsigned int int_freq_list_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int int_freq_list_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int ncc_or_freq_struct_bits(void *);
+IMP void ncc_or_freq_struct_alloc(void *);
+IMP void ncc_or_freq_struct_dealloc(void *);
+IMP unsigned int ncc_or_freq_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int ncc_or_freq_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int em1struct_bits(void *);
+IMP void em1struct_alloc(void *);
+IMP void em1struct_dealloc(void *);
+IMP unsigned int em1struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int em1struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int ext_meas_params_struct_bits(void *);
+IMP void ext_meas_params_struct_alloc(void *);
+IMP void ext_meas_params_struct_dealloc(void *);
+IMP unsigned int ext_meas_params_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int ext_meas_params_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int measurement_peer_struct_bits(void *);
+IMP void measurement_peer_struct_alloc(void *);
+IMP void measurement_peer_struct_dealloc(void *);
+IMP unsigned int measurement_peer_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int measurement_peer_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int pkt_measurement_order_struct_bits(void *);
+IMP void pkt_measurement_order_struct_alloc(void *);
+IMP void pkt_measurement_order_struct_dealloc(void *);
+IMP unsigned int pkt_measurement_order_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int pkt_measurement_order_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int pkt_cell_change_order_bits(void *);
+IMP void pkt_cell_change_order_alloc(void *);
+IMP void pkt_cell_change_order_dealloc(void *);
+IMP unsigned int pkt_cell_change_order_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int pkt_cell_change_order_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int mobile_idstruct_bits(void *);
+IMP void mobile_idstruct_alloc(void *);
+IMP void mobile_idstruct_dealloc(void *);
+IMP unsigned int mobile_idstruct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int mobile_idstruct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int ptmsistruct_bits(void *);
+IMP void ptmsistruct_alloc(void *);
+IMP void ptmsistruct_dealloc(void *);
+IMP unsigned int ptmsistruct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int ptmsistruct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int tmsistruct_bits(void *);
+IMP void tmsistruct_alloc(void *);
+IMP void tmsistruct_dealloc(void *);
+IMP unsigned int tmsistruct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int tmsistruct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int repeated_page_info_struct_bits(void *);
+IMP void repeated_page_info_struct_alloc(void *);
+IMP void repeated_page_info_struct_dealloc(void *);
+IMP unsigned int repeated_page_info_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int repeated_page_info_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int packet_paging_request_bits(void *);
+IMP void packet_paging_request_alloc(void *);
+IMP void packet_paging_request_dealloc(void *);
+IMP unsigned int packet_paging_request_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int packet_paging_request_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define pdu_descript_struct_size(x) 2
+IMP unsigned int pdu_descript_struct_bits(void *);
+IMP void pdu_descript_struct_alloc(void *);
+IMP void pdu_descript_struct_dealloc(void *);
+IMP unsigned int pdu_descript_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int pdu_descript_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define mode_flag_struct_size(x) 1
+IMP unsigned int mode_flag_struct_bits(void *);
+IMP void mode_flag_struct_alloc(void *);
+IMP void mode_flag_struct_dealloc(void *);
+IMP unsigned int mode_flag_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int mode_flag_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define gprs_test_mode_cmd_struct_size(x) 5
+IMP unsigned int gprs_test_mode_cmd_struct_bits(void *);
+IMP void gprs_test_mode_cmd_struct_alloc(void *);
+IMP void gprs_test_mode_cmd_struct_dealloc(void *);
+IMP unsigned int gprs_test_mode_cmd_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int gprs_test_mode_cmd_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#endif
+
+
diff --git a/mcu/protocol/interface/asn/rr/include/gprs_rlcmac_peer_struct.h b/mcu/protocol/interface/asn/rr/include/gprs_rlcmac_peer_struct.h
new file mode 100644
index 0000000..b0e2fad
--- /dev/null
+++ b/mcu/protocol/interface/asn/rr/include/gprs_rlcmac_peer_struct.h
@@ -0,0 +1,524 @@
+/*****************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2005
+*
+* BY OPENING THIS FILE, BUYER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND AGREES
+* THAT THE SOFTWARE/FIRMWARE AND ITS DOCUMENTATIONS ("MEDIATEK SOFTWARE")
+* RECEIVED FROM MEDIATEK AND/OR ITS REPRESENTATIVES ARE PROVIDED TO BUYER ON
+* AN "AS-IS" BASIS ONLY. MEDIATEK EXPRESSLY DISCLAIMS ANY AND ALL WARRANTIES,
+* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF
+* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NONINFRINGEMENT.
+* NEITHER DOES MEDIATEK PROVIDE ANY WARRANTY WHATSOEVER WITH RESPECT TO THE
+* SOFTWARE OF ANY THIRD PARTY WHICH MAY BE USED BY, INCORPORATED IN, OR
+* SUPPLIED WITH THE MEDIATEK SOFTWARE, AND BUYER AGREES TO LOOK ONLY TO SUCH
+* THIRD PARTY FOR ANY WARRANTY CLAIM RELATING THERETO. MEDIATEK SHALL ALSO
+* NOT BE RESPONSIBLE FOR ANY MEDIATEK SOFTWARE RELEASES MADE TO BUYER'S
+* SPECIFICATION OR TO CONFORM TO A PARTICULAR STANDARD OR OPEN FORUM.
+*
+* BUYER'S SOLE AND EXCLUSIVE REMEDY AND MEDIATEK'S ENTIRE AND CUMULATIVE
+* LIABILITY WITH RESPECT TO THE MEDIATEK SOFTWARE RELEASED HEREUNDER WILL BE,
+* AT MEDIATEK'S OPTION, TO REVISE OR REPLACE THE MEDIATEK SOFTWARE AT ISSUE,
+* OR REFUND ANY SOFTWARE LICENSE FEES OR SERVICE CHARGE PAID BY BUYER TO
+* MEDIATEK FOR SUCH MEDIATEK SOFTWARE AT ISSUE.
+*
+* THE TRANSACTION CONTEMPLATED HEREUNDER SHALL BE CONSTRUED IN ACCORDANCE
+* WITH THE LAWS OF THE STATE OF CALIFORNIA, USA, EXCLUDING ITS CONFLICT OF
+* LAWS PRINCIPLES. ANY DISPUTES, CONTROVERSIES OR CLAIMS ARISING THEREOF AND
+* RELATED THERETO SHALL BE SETTLED BY ARBITRATION IN SAN FRANCISCO, CA, UNDER
+* THE RULES OF THE INTERNATIONAL CHAMBER OF COMMERCE (ICC).
+*
+*****************************************************************************/
+
+/*******************************************************************************
+ * Filename:
+ * ---------
+ * gprs_rlcmac_peer_struct.h
+ *
+ * Project:
+ * --------
+ * MAUI
+ *
+ * Description:
+ * ------------
+ *
+ *
+ * Author:
+ * -------
+ *
+ *
+ *==============================================================================
+ * HISTORY
+ * Below this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *------------------------------------------------------------------------------
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ *------------------------------------------------------------------------------
+ * Upper this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *==============================================================================
+ *******************************************************************************/
+
+/********************************************************************************
+* Copyright Statement:
+* --------------------
+*
+* This product has been developed using a protocol stack
+* developed by Sasken Communication Technologies Limited.
+*
+********************************************************************************/
+
+
+/*******************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2002
+*
+*******************************************************************************
+ * FILENAME : gprs_rlcmac_peer_struct.h
+ * SYNOPSIS : Functions for encoding/decoding.
+ *
+ * R E V I S I O N H I S T O R Y
+ *
+ */
+#ifndef _GPRS_RLCMAC_PEER_STRUCT_H
+#define _GPRS_RLCMAC_PEER_STRUCT_H
+
+/*Evelyn: Remove redundant header and file */
+#include "gprs_rlcmac_common_struct.h"
+#include "rr_common_def.h"
+#include "gprs_rlcmac_dl_struct.h"
+#include "gprs_rlcmac_ul_struct.h"
+#include "nstd_pmo_struct.h"
+
+typedef struct {
+ kal_uint8 acc_tech_type; /* access tech. type*/
+} access_tech_struct;
+
+typedef struct {
+ unsigned int no_acc_tech_list;
+ unsigned int acc_tech_list_size;
+ access_tech_struct *acc_tech_list;
+} access_tech_list;
+
+typedef struct {
+ header_struct header; /* HEADER STRUCT*/
+ kal_uint8 msgtype; /* MSG TYPE*/
+ kal_uint8 page_mode; /* PAGE MODE*/
+ ispresent persist_level_choice_tag;
+ union {
+ persist_level_struct p_persistence_level;
+ } persist_level_choice_value;
+} pkt_downlink_dummy_ctrl_blk;
+
+typedef struct {
+ header_struct header; /* HEADER STRUCT*/
+ kal_uint8 msgtype; /* MSG TYPE*/
+ kal_uint8 page_mode; /* PAGE MODE*/
+ ispresent time_slot_alloc_choice_tag;
+ union {
+ kal_uint8 p_time_slot_alloted;
+ } time_slot_alloc_choice_value;
+} packet_pdchrelease;
+
+typedef struct {
+ header_struct header; /* HEADER STRUCT*/
+ kal_uint8 msgtype; /* MSG TYPE*/
+ global_tfistruct global_tfi; /* GLOBAL TFI STRUCT*/
+ kal_uint8 tbf_cause; /* TBF CAUSE*/
+ ispresent status_choice_tag;
+ union {
+ kal_uint8 p_status_msg_type;
+ } status_choice_value;
+} pkt_mobile_tbfstatus;
+
+typedef struct {
+ header_struct header; /* HEADER STRUCT*/
+ kal_uint8 msgtype; /* MSG TYPE*/
+ kal_uint32 tlli; /* TLLI*/
+ kal_uint8 ctrlack; /* CTRL-ACK*/
+} pkt_ctrl_ack_struct;
+
+typedef struct {
+ header_struct header; /* HEADER STRUCT*/
+ kal_uint8 msgtype; /* MSG TYPE*/
+ kal_uint32 tlli; /* TLLI*/
+} pkt_uplink_dummy;
+
+typedef struct {
+ kal_uint16 access_ctrl_class; /* ACC CONTROL CLASS*/
+ kal_uint8 max_retrans[4];
+ kal_uint8 s; /* S */
+ kal_uint8 tx_int; /* TX INT*/
+ ispresent persist_level_choice_tag;
+ union {
+ persist_level_struct p_persist_level;
+ } persist_level_choice_value;
+} prach_ctrl_params_struct;
+
+typedef struct {
+ header_struct header; /* HEADER STRUCT*/
+ kal_uint8 msgtype; /* MSG TYPE*/
+ kal_uint8 page_mode; /* PAGE MODE*/
+ prach_ctrl_params_struct prach_ctrl_params; /* PRACHCONTPARASTRUCT*/
+} pkt_prach_params_struct;
+
+typedef struct {
+ header_struct header; /* HEADER STRUCT*/
+ kal_uint8 msgtype; /* MSG TYPE*/
+ kal_uint8 page_mode; /* PAGE MODE*/
+ kal_uint8 msg_escape; /* ESCAPE SEQ*/
+ global_tfistruct global_tfi; /* GLOBAL TFI STRUCT*/
+ kal_uint8 up_link_release; /* UP LINK RELEASE*/
+ kal_uint8 dn_link_release; /* DN LINK RELEASE*/
+ kal_uint8 tbf_release_cause; /* TBF RELEASE*/
+} pkt_tbfrelease_struct;
+
+typedef struct {
+ kal_uint8 multi_slot; /* MULTI SLOT CLASS*/
+ kal_uint8 gprs_mul_slot_class; /* GPRS MULTI SLOT CLASS*/
+ kal_uint8 ext_dyna_capability; /* EXTENDED DYNAMIC CAPABILITY*/
+} gprsmulslot1struct;
+
+typedef struct {
+ kal_uint8 mul_slot; /* MULTI SLOT CLASS*/
+ kal_uint8 ext_dyn_capability; /* EXTENDED DYNAMIC CAPABILITY*/
+} gprsmulslot_struct;
+
+typedef struct {
+ freq_enum multi_slot_choice_tag;
+ union {
+ gprsmulslot_struct gprs_mul_slot;
+ kal_uint8 mul_slot_class;
+ gprsmulslot1struct gprs_mul_slot1;
+ } multi_slot_choice_value;
+} multi_cap_struct;
+
+#ifndef _MS_MEAS_CAP_STRUCT
+#define _MS_MEAS_CAP_STRUCT
+typedef struct {
+ kal_uint8 sms_value; /* SMS VALUE*/
+ kal_uint8 sm_value; /* SM VALUE*/
+} ms_meas_cap_struct;
+#endif
+
+typedef struct {
+ kal_uint8 p_type_len;
+ kal_uint8 p_pseudosynch; /* PSEUDO SYCHRONISATION*/
+ kal_uint8 p_cipher_algo5;
+ kal_uint8 p_voice_grp_call_serv; /* VOICE GROUP CALL SERVICE*/
+ kal_uint8 p_voice_broad_cast_serv; /* VOICE BROADCAST SERVICE*/
+ kal_uint8 p_pwr_capability; /* POWER CAPABILITY*/
+ ms_meas_cap_struct p_ms_meas_capability; /* MS MEASUREMENT CAPABILITY*/
+ kal_uint8 p_rev_level; /* GSM REVISION LEVEL*/
+ kal_uint8 p_es_ind; /* ES IND*/
+ multi_cap_struct p_multi_capability; /* MULTI SLOT CAPABILITY*/
+} paccess_tech_struct;
+
+typedef struct {
+ kal_uint8 e_type_len;
+ kal_uint8 e_pseudo_synch; /* PSEUDO SYCHRONISATION*/
+ kal_uint8 e_cipher_algo5;
+ kal_uint8 e_voice_grp_call_serv; /* VOICE GROUP CALL SERVICE*/
+ kal_uint8 e_voice_broad_cast_serv; /* VOICE BROADCAST SERVICE*/
+ kal_uint8 e_pwr_capability; /* POWER CAPABILITY*/
+ ms_meas_cap_struct e_ms_meascapability; /* MS MEASUREMENT CAPABILITY*/
+ kal_uint8 e_rev_level; /* GSM REVISION LEVEL*/
+ kal_uint8 e_es_ind; /* ES IND*/
+ multi_cap_struct e_multi_capability; /* MULTI SLOT CAPABILITY*/
+} eaccess_tech_struct;
+
+typedef struct {
+ kal_uint8 r_type_len;
+ kal_uint8 r_pseudo_synch; /* PSEUDO SYCHRONISATION*/
+ kal_uint8 r_cipher_algo5;
+ kal_uint8 r_voice_grp_call_serv; /* VOICE GROUP CALL SERVICE*/
+ kal_uint8 r_voice_broad_cast_serv; /* VOICE BROADCAST SERVICE*/
+ kal_uint8 r_pwr_capability; /* POWER CAPABILITY*/
+ ms_meas_cap_struct r_ms_meascapability; /* MS MEASUREMENT CAPABILITY*/
+ kal_uint8 r_rev_level; /* GSM REVISION LEVEL*/
+ kal_uint8 r_es_ind; /* ES IND*/
+ multi_cap_struct r_multi_capability; /* MULTI SLOT CAPABILITY*/
+} raccess_tech_struct;
+
+typedef struct {
+ kal_uint8 a_type_len;
+ kal_uint8 a_pseudo_synch; /* PSEUDO SYCHRONISATION*/
+ kal_uint8 a_cipher_algo5;
+ kal_uint8 a_voice_grp_call_serv; /* VOICE GROUP CALL SERVICE*/
+ kal_uint8 a_voice_broad_cast_serv; /* VOICE BROADCAST SERVICE*/
+ kal_uint8 a_pwr_capability; /* POWER CAPABILITY*/
+ ms_meas_cap_struct a_ms_meas_cap_struct; /* MS MEASUREMENT CAPABILITY*/
+ kal_uint8 a_ms_meascapability; /* GSM REVISION LEVEL*/
+ kal_uint8 a_rev_level; /* REVISION LEVEL*/
+ kal_uint8 a_es_ind; /* ES IND*/
+ multi_cap_struct a_multi_capability; /* MULTI SLOT CAPABILITY*/
+} aaccess_tech_struct;
+
+typedef struct {
+ ispresent p_access_choice_tag;
+ union {
+ paccess_tech_struct p_paccess;
+ } p_access_choice_value;
+ ispresent e_access_choice_tag;
+ union {
+ eaccess_tech_struct p_eaccess;
+ } e_access_choice_value;
+ ispresent r_access_choice_tag;
+ union {
+ raccess_tech_struct p_raccess;
+ } r_access_choice_value;
+ ispresent a_access_short_tag;
+ union {
+ aaccess_tech_struct p_aaccess;
+ } a_access_short_value;
+} ms_racapability_struct;
+
+typedef struct {
+ kal_uint8 access_cap_iei; /* MS RADIO CAPABILITY IEI*/
+ kal_uint8 length;
+ ms_racapability_struct ms_racapability;
+} ms_radio_cap_struct;
+
+typedef struct {
+ header_struct header; /* HEADER STRUCT*/
+ kal_uint8 msgtype; /* MSG TYPE*/
+ ispresent access_type_choice_tag;
+ union {
+ kal_uint8 p_bacctype;
+ } access_type_choice_value;
+ ispresent tlli_tfi_choice_tag;
+ union {
+ global_tfistruct global_tfi;
+ kal_uint32 tlli;
+ } tlli_tfi_choice_value;
+ ispresent ms_radio_cap_choice_tag;
+ union {
+ ms_radio_cap_struct p_msradio_cap;
+ } ms_radio_cap_choice_value;
+ ch_request_desc_struct channel_req; /* CHANNEL REQUEST DESCRIPTION */
+ ispresent chng_mark_choice_tag;
+ union {
+ kal_uint8 p_chng_mark;
+ } chng_mark_choice_value;
+ kal_uint8 cvalue; /* C VALUE*/
+ ispresent sigvar_choice_tag;
+ union {
+ kal_uint8 p_signvar;
+ } sigvar_choice_value;
+ ilevel_tn_struct i_level_tn_values[8];
+} pkt_resource_request_struct;
+
+typedef struct {
+ kal_uint8 nc_non_drx_period;
+ kal_uint8 nc_rep_perioid_i;
+ kal_uint8 nc_rep_period_t;
+} nc_list_struct;
+
+typedef struct {
+ ispresent rmvd_freq_choice_tag;
+ union {
+ rmvd_freq_list_struct p_rmvd_freq_list;
+ } rmvd_freq_choice_value;
+ unsigned int no_add_freq_list;
+ unsigned int add_freq_list_size;
+ add_freq_struct *add_freq_list;
+} nc_freq_list_struct;
+
+typedef struct {
+ kal_uint8 nw_ctrl_order; /* NETWORK CONTROL ORDER*/
+ ispresent nc_list_choice_tag;
+ union {
+ nc_list_struct p_nc_list;
+ } nc_list_choice_value;
+ ispresent nc_freq_list_choice_tag;
+ union {
+ nc_freq_list_struct p_nc_freq_list;
+ } nc_freq_list_choice_value;
+} nc_meas_params_struct;
+
+typedef struct {
+ ispresent ch227_tag;
+ union {
+ kal_uint8 pintfreqlist;
+ } ch227_value;
+} int_freq_list_struct;
+
+typedef struct {
+ twobit ch226_tag;
+ union {
+ kal_uint8 ncc_permit;
+ int_freq_list_struct intfreq;
+ } ch226_value;
+} ncc_or_freq_struct;
+
+typedef struct {
+ ispresent ext_rep_type_choice_tag;
+ union {
+ ncc_or_freq_struct pext_rep_type;
+ } ext_rep_type_choice_value;
+ ispresent ext_rep_per_choice_tag;
+ union {
+ kal_uint8 pext_rep_period;
+ } ext_rep_per_choice_value;
+ ext_freq_list_struct first_ext_freq_list; /* FIRST EXT FREQ LIST STRUCT*/
+ unsigned int no_ext_freq_list;
+ unsigned int ext_freq_list_size;
+ ext_freq_list_struct *ext_freq_list;
+} em1struct;
+
+typedef struct {
+ twobit ext_meas_order_tag;
+ union {
+ em1struct EM1;
+ } ext_meas_order_value;
+} ext_meas_params_struct;
+
+typedef struct {
+ kal_uint8 pmo_index; /* PMO INDEX*/
+ kal_uint8 pmo_count; /* PMO COUNT*/
+ ispresent nc_meas_choice_tag;
+ union {
+ nc_meas_params_struct p_nc_meas_params;
+ } nc_meas_choice_value;
+ ispresent ext_meas_choice_tag;
+ union {
+ ext_meas_params_struct p_extmeas_params;
+ } ext_meas_choice_value;
+} measurement_peer_struct;
+
+typedef struct {
+ header_struct header; /* HEADER*/
+ kal_uint8 msg_type; /* MSG TYPE*/
+ kal_uint8 page_mode; /* PAGE MODE*/
+ msid_enum tlli_tfi_choice_tag;
+ union {
+ global_tfistruct global_tfi;
+ kal_uint32 tlli;
+ } tlli_tfi_choice_value;
+ measurement_peer_struct measurement_params; /* MEASUREMENT STRUCT*/
+} pkt_measurement_order_struct;
+
+typedef struct {
+ header_struct header; /* HEADER*/
+ kal_uint8 msg_type; /* MSG TYPE*/
+ kal_uint8 page_mode; /* PAGE MODE*/
+ msid_enum tlli_tfi_choice_tag;
+ union {
+ global_tfistruct global_tfi;
+ kal_uint32 tlli;
+ } tlli_tfi_choice_value;
+ kal_uint8 msgescape; /* MESSAGE ESCAPE*/
+ kal_uint8 immediaterel; /* IMMEDIATE REL*/
+ kal_uint16 arfcn; /* ARFCN*/
+ kal_uint8 bsic; /* BSIC*/
+ nc_meas_params_struct nc_meas_params; /* NC MEASUREMENT PARAMETER STRUCTURE*/
+} pkt_cell_change_order;
+
+typedef struct {
+ kal_uint8 no_mobile;
+ kal_uint8 mobile_size;
+ kal_uint8 *mobile; /* mobile identity*/
+} mobile_idstruct;
+
+typedef struct {
+ ispresent ptmsi_choice_tag;
+ union {
+ kal_uint32 a_ch_ptmsi;
+ mobile_idstruct p_ch_ptmsi;
+ } ptmsi_choice_value;
+} ptmsistruct;
+
+typedef struct {
+ ispresent tmsi_choice_tag;
+ union {
+ kal_uint32 a_ch_tmsi;
+ mobile_idstruct p_ch_tmsi;
+ } tmsi_choice_value;
+ kal_uint8 channel_needed; /* CHANNEL_NEEDED*/
+ ispresent e_mlpp_choice_tag;
+ union {
+ kal_uint8 p_emlpp_priority;
+ } e_mlpp_choice_value;
+} tmsistruct;
+
+typedef struct {
+ ispresent tmsi_ptmsi_choice_tag;
+ union {
+ ptmsistruct a_ptmsi;
+ tmsistruct p_tmsi;
+ } tmsi_ptmsi_choice_value;
+} repeated_page_info_struct;
+
+typedef struct {
+ header_struct header; /* HEADER*/
+ kal_uint8 msgtype; /* MSG TYPE*/
+ kal_uint8 page_mode; /* PAGE MODE*/
+ ispresent persis_level_choice_tag;
+ union {
+ persist_level_struct p_persistance_level;
+ } persis_level_choice_value;
+ ispresent notif_list_num_choice_tag;
+ union {
+ kal_uint8 p_notif_list_num;
+ } notif_list_num_choice_value;
+ unsigned int no_repeated_page_info;
+ unsigned int repeated_page_info_size;
+ repeated_page_info_struct *repeated_page_info;
+} packet_paging_request;
+
+typedef struct {
+ kal_uint8 pdu_length_indicator;
+ kal_uint8 pdu_descript_spare;
+ kal_uint16 no_of_pdus;
+} pdu_descript_struct;
+
+typedef struct {
+ kal_uint8 mode_flag_spare;
+ kal_uint8 dl_timeslot_offset;
+ kal_uint8 mode;
+} mode_flag_struct;
+
+typedef struct {
+ kal_uint8 skip_ind;
+ kal_uint8 proto_disc;
+ kal_uint8 msg_type;
+ pdu_descript_struct pdu_descript;
+ mode_flag_struct mode_flag; /* Mode Flag Struct*/
+} gprs_test_mode_cmd_struct;
+#endif
+
+
diff --git a/mcu/protocol/interface/asn/rr/include/gprs_rlcmac_ul.h b/mcu/protocol/interface/asn/rr/include/gprs_rlcmac_ul.h
new file mode 100644
index 0000000..296bf21
--- /dev/null
+++ b/mcu/protocol/interface/asn/rr/include/gprs_rlcmac_ul.h
@@ -0,0 +1,123 @@
+/*****************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2005
+*
+* BY OPENING THIS FILE, BUYER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND AGREES
+* THAT THE SOFTWARE/FIRMWARE AND ITS DOCUMENTATIONS ("MEDIATEK SOFTWARE")
+* RECEIVED FROM MEDIATEK AND/OR ITS REPRESENTATIVES ARE PROVIDED TO BUYER ON
+* AN "AS-IS" BASIS ONLY. MEDIATEK EXPRESSLY DISCLAIMS ANY AND ALL WARRANTIES,
+* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF
+* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NONINFRINGEMENT.
+* NEITHER DOES MEDIATEK PROVIDE ANY WARRANTY WHATSOEVER WITH RESPECT TO THE
+* SOFTWARE OF ANY THIRD PARTY WHICH MAY BE USED BY, INCORPORATED IN, OR
+* SUPPLIED WITH THE MEDIATEK SOFTWARE, AND BUYER AGREES TO LOOK ONLY TO SUCH
+* THIRD PARTY FOR ANY WARRANTY CLAIM RELATING THERETO. MEDIATEK SHALL ALSO
+* NOT BE RESPONSIBLE FOR ANY MEDIATEK SOFTWARE RELEASES MADE TO BUYER'S
+* SPECIFICATION OR TO CONFORM TO A PARTICULAR STANDARD OR OPEN FORUM.
+*
+* BUYER'S SOLE AND EXCLUSIVE REMEDY AND MEDIATEK'S ENTIRE AND CUMULATIVE
+* LIABILITY WITH RESPECT TO THE MEDIATEK SOFTWARE RELEASED HEREUNDER WILL BE,
+* AT MEDIATEK'S OPTION, TO REVISE OR REPLACE THE MEDIATEK SOFTWARE AT ISSUE,
+* OR REFUND ANY SOFTWARE LICENSE FEES OR SERVICE CHARGE PAID BY BUYER TO
+* MEDIATEK FOR SUCH MEDIATEK SOFTWARE AT ISSUE.
+*
+* THE TRANSACTION CONTEMPLATED HEREUNDER SHALL BE CONSTRUED IN ACCORDANCE
+* WITH THE LAWS OF THE STATE OF CALIFORNIA, USA, EXCLUDING ITS CONFLICT OF
+* LAWS PRINCIPLES. ANY DISPUTES, CONTROVERSIES OR CLAIMS ARISING THEREOF AND
+* RELATED THERETO SHALL BE SETTLED BY ARBITRATION IN SAN FRANCISCO, CA, UNDER
+* THE RULES OF THE INTERNATIONAL CHAMBER OF COMMERCE (ICC).
+*
+*****************************************************************************/
+
+/*******************************************************************************
+ * Filename:
+ * ---------
+ * gprs_rlcmac_ul.h
+ *
+ * Project:
+ * --------
+ * MAUI
+ *
+ * Description:
+ * ------------
+ *
+ *
+ * Author:
+ * -------
+ *
+ *
+ *==============================================================================
+ * HISTORY
+ * Below this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *------------------------------------------------------------------------------
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ *------------------------------------------------------------------------------
+ * Upper this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *==============================================================================
+ *******************************************************************************/
+
+/********************************************************************************
+* Copyright Statement:
+* --------------------
+*
+* This product has been developed using a protocol stack
+* developed by Sasken Communication Technologies Limited.
+*
+********************************************************************************/
+
+
+
+#ifndef _GPRS_RLCMAC_UL_H_
+#define _GPRS_RLCMAC_UL_H_
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#ifdef TEST_TOOL
+#include "tt_defs.h"
+#else
+#endif
+
+#ifdef TOOL
+#include "set_nstd_alloc_bitmap.h"
+#include "get_nstd_alloc_bitmap.h"
+#include "set_gprs_rlcmac_ul.h"
+#include "get_gprs_rlcmac_ul.h"
+#endif
+#ifdef __cplusplus
+}
+#endif
+
+#endif
+
+
diff --git a/mcu/protocol/interface/asn/rr/include/gprs_rlcmac_ul_pun.h b/mcu/protocol/interface/asn/rr/include/gprs_rlcmac_ul_pun.h
new file mode 100644
index 0000000..a371381
--- /dev/null
+++ b/mcu/protocol/interface/asn/rr/include/gprs_rlcmac_ul_pun.h
@@ -0,0 +1,275 @@
+/*****************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2005
+*
+* BY OPENING THIS FILE, BUYER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND AGREES
+* THAT THE SOFTWARE/FIRMWARE AND ITS DOCUMENTATIONS ("MEDIATEK SOFTWARE")
+* RECEIVED FROM MEDIATEK AND/OR ITS REPRESENTATIVES ARE PROVIDED TO BUYER ON
+* AN "AS-IS" BASIS ONLY. MEDIATEK EXPRESSLY DISCLAIMS ANY AND ALL WARRANTIES,
+* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF
+* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NONINFRINGEMENT.
+* NEITHER DOES MEDIATEK PROVIDE ANY WARRANTY WHATSOEVER WITH RESPECT TO THE
+* SOFTWARE OF ANY THIRD PARTY WHICH MAY BE USED BY, INCORPORATED IN, OR
+* SUPPLIED WITH THE MEDIATEK SOFTWARE, AND BUYER AGREES TO LOOK ONLY TO SUCH
+* THIRD PARTY FOR ANY WARRANTY CLAIM RELATING THERETO. MEDIATEK SHALL ALSO
+* NOT BE RESPONSIBLE FOR ANY MEDIATEK SOFTWARE RELEASES MADE TO BUYER'S
+* SPECIFICATION OR TO CONFORM TO A PARTICULAR STANDARD OR OPEN FORUM.
+*
+* BUYER'S SOLE AND EXCLUSIVE REMEDY AND MEDIATEK'S ENTIRE AND CUMULATIVE
+* LIABILITY WITH RESPECT TO THE MEDIATEK SOFTWARE RELEASED HEREUNDER WILL BE,
+* AT MEDIATEK'S OPTION, TO REVISE OR REPLACE THE MEDIATEK SOFTWARE AT ISSUE,
+* OR REFUND ANY SOFTWARE LICENSE FEES OR SERVICE CHARGE PAID BY BUYER TO
+* MEDIATEK FOR SUCH MEDIATEK SOFTWARE AT ISSUE.
+*
+* THE TRANSACTION CONTEMPLATED HEREUNDER SHALL BE CONSTRUED IN ACCORDANCE
+* WITH THE LAWS OF THE STATE OF CALIFORNIA, USA, EXCLUDING ITS CONFLICT OF
+* LAWS PRINCIPLES. ANY DISPUTES, CONTROVERSIES OR CLAIMS ARISING THEREOF AND
+* RELATED THERETO SHALL BE SETTLED BY ARBITRATION IN SAN FRANCISCO, CA, UNDER
+* THE RULES OF THE INTERNATIONAL CHAMBER OF COMMERCE (ICC).
+*
+*****************************************************************************/
+
+/*******************************************************************************
+ * Filename:
+ * ---------
+ * gprs_rlcmac_ul_pun.h
+ *
+ * Project:
+ * --------
+ * MAUI
+ *
+ * Description:
+ * ------------
+ *
+ *
+ * Author:
+ * -------
+ *
+ *
+ *==============================================================================
+ * HISTORY
+ * Below this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *------------------------------------------------------------------------------
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ *------------------------------------------------------------------------------
+ * Upper this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *==============================================================================
+ *******************************************************************************/
+
+/********************************************************************************
+* Copyright Statement:
+* --------------------
+*
+* This product has been developed using a protocol stack
+* developed by Sasken Communication Technologies Limited.
+*
+********************************************************************************/
+
+
+/*******************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2002
+*
+*******************************************************************************
+ * FILENAME : gprs_rlcmac_ul_pun.h
+ * SYNOPSIS : Functions for encoding/decoding.
+ *
+ * R E V I S I O N H I S T O R Y
+ *
+ */
+#ifdef MTK_PEER
+#define IMP __declspec(dllimport)
+#else
+#define IMP
+#endif
+#ifndef _GPRS_RLCMAC_UL_PUN_H
+#define _GPRS_RLCMAC_UL_PUN_H
+
+/*Evelyn: Remove redundant header and file */
+#include "kal_general_types.h"
+
+IMP unsigned int utran_fdd_struct_bits(void *);
+IMP void utran_fdd_struct_alloc(void *);
+IMP void utran_fdd_struct_dealloc(void *);
+IMP unsigned int utran_fdd_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int utran_fdd_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int add_3G_r99_struct_bits(void *);
+IMP void add_3G_r99_struct_alloc(void *);
+IMP void add_3G_r99_struct_dealloc(void *);
+IMP unsigned int add_3G_r99_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int add_3G_r99_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int pkt_cell_change_failure_msg_bits(void *);
+IMP void pkt_cell_change_failure_msg_alloc(void *);
+IMP void pkt_cell_change_failure_msg_dealloc(void *);
+IMP unsigned int pkt_cell_change_failure_msg_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int pkt_cell_change_failure_msg_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int level_struct_bits(void *);
+IMP void level_struct_alloc(void *);
+IMP void level_struct_dealloc(void *);
+IMP unsigned int level_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int level_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int interference_level_struct_bits(void *);
+IMP void interference_level_struct_alloc(void *);
+IMP void interference_level_struct_dealloc(void *);
+IMP unsigned int interference_level_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int interference_level_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int ext_meas_report_struct_bits(void *);
+IMP void ext_meas_report_struct_alloc(void *);
+IMP void ext_meas_report_struct_dealloc(void *);
+IMP unsigned int ext_meas_report_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int ext_meas_report_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define ba_used_struct_size(x) 1
+IMP unsigned int ba_used_struct_bits(void *);
+IMP void ba_used_struct_alloc(void *);
+IMP void ba_used_struct_dealloc(void *);
+IMP unsigned int ba_used_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int ba_used_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int pmo_used_struct_bits(void *);
+IMP void pmo_used_struct_alloc(void *);
+IMP void pmo_used_struct_dealloc(void *);
+IMP unsigned int pmo_used_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int pmo_used_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int pmr_add_r99_struct_bits(void *);
+IMP void pmr_add_r99_struct_alloc(void *);
+IMP void pmr_add_r99_struct_dealloc(void *);
+IMP unsigned int pmr_add_r99_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int pmr_add_r99_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int pkt_meas_report_struct_bits(void *);
+IMP void pkt_meas_report_struct_alloc(void *);
+
+IMP void pkt_meas_report_struct_dealloc(void *);
+IMP unsigned int pkt_meas_report_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int pkt_meas_report_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int serving_cell_data_struct_bits(void *);
+IMP void serving_cell_data_struct_alloc(void *);
+IMP void serving_cell_data_struct_dealloc(void *);
+IMP unsigned int serving_cell_data_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int serving_cell_data_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define rp_bsic_struct_size(x) 3
+IMP unsigned int rp_bsic_struct_bits(void *);
+IMP void rp_bsic_struct_alloc(void *);
+IMP void rp_bsic_struct_dealloc(void *);
+IMP unsigned int rp_bsic_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int rp_bsic_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int reporting_quantity_struct_bits(void *);
+IMP void reporting_quantity_struct_alloc(void *, kal_uint8);
+IMP void reporting_quantity_struct_dealloc(void *);
+IMP unsigned int reporting_quantity_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int reporting_quantity_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int invalid_bsic_struct_bits(void *);
+IMP void invalid_bsic_struct_alloc(void *);
+IMP void invalid_bsic_struct_dealloc(void *);
+IMP unsigned int invalid_bsic_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int invalid_bsic_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int enh_nc_meas_rep_struct_bits(void *);
+IMP void enh_nc_meas_rep_struct_alloc(void *);
+IMP void enh_nc_meas_rep_struct_dealloc(void *);
+IMP unsigned int enh_nc_meas_rep_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int enh_nc_meas_rep_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int pkt_enh_meas_report_struct_bits(void *);
+IMP void pkt_enh_meas_report_struct_alloc(void *);
+IMP void pkt_enh_meas_report_struct_dealloc(void *);
+IMP unsigned int pkt_enh_meas_report_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int pkt_enh_meas_report_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define ch_request_desc_struct_size(x) 3
+IMP unsigned int ch_request_desc_struct_bits(void *);
+IMP void ch_request_desc_struct_alloc(void *);
+IMP void ch_request_desc_struct_dealloc(void *);
+IMP unsigned int ch_request_desc_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int ch_request_desc_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int ilevel_tn_struct_bits(void *);
+IMP void ilevel_tn_struct_alloc(void *);
+IMP void ilevel_tn_struct_dealloc(void *);
+IMP unsigned int ilevel_tn_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int ilevel_tn_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int ch_quality_report_struct_bits(void *);
+IMP void ch_quality_report_struct_alloc(void *);
+IMP void ch_quality_report_struct_dealloc(void *);
+IMP unsigned int ch_quality_report_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int ch_quality_report_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int pkt_dn_link_ack_nack_bits(void *);
+IMP void pkt_dn_link_ack_nack_alloc(void *);
+IMP void pkt_dn_link_ack_nack_dealloc(void *);
+IMP unsigned int pkt_dn_link_ack_nack_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int pkt_dn_link_ack_nack_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+/* Austin 040406: support PSI status */
+IMP void pkt_psi_status_struct_alloc(void *);
+IMP unsigned int pkt_psi_status_struct_pack(kal_uint8 *, void *, unsigned int);
+
+#ifdef __REL4__ // chris, nacc_coding
+IMP void pkt_cell_change_notification_struct_alloc(void *);
+IMP unsigned int pkt_cell_change_notification_struct_pack(kal_uint8 *, void *, unsigned int);
+
+/*Byron: Packet SI Status*/
+IMP unsigned int pkt_si_status_struct_pack(kal_uint8 * frame, void * mtk_d,
+ unsigned int bit_offset);
+#endif
+
+#endif
+
+
diff --git a/mcu/protocol/interface/asn/rr/include/gprs_rlcmac_ul_struct.h b/mcu/protocol/interface/asn/rr/include/gprs_rlcmac_ul_struct.h
new file mode 100644
index 0000000..f000dc6
--- /dev/null
+++ b/mcu/protocol/interface/asn/rr/include/gprs_rlcmac_ul_struct.h
@@ -0,0 +1,537 @@
+/*****************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2005
+*
+* BY OPENING THIS FILE, BUYER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND AGREES
+* THAT THE SOFTWARE/FIRMWARE AND ITS DOCUMENTATIONS ("MEDIATEK SOFTWARE")
+* RECEIVED FROM MEDIATEK AND/OR ITS REPRESENTATIVES ARE PROVIDED TO BUYER ON
+* AN "AS-IS" BASIS ONLY. MEDIATEK EXPRESSLY DISCLAIMS ANY AND ALL WARRANTIES,
+* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF
+* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NONINFRINGEMENT.
+* NEITHER DOES MEDIATEK PROVIDE ANY WARRANTY WHATSOEVER WITH RESPECT TO THE
+* SOFTWARE OF ANY THIRD PARTY WHICH MAY BE USED BY, INCORPORATED IN, OR
+* SUPPLIED WITH THE MEDIATEK SOFTWARE, AND BUYER AGREES TO LOOK ONLY TO SUCH
+* THIRD PARTY FOR ANY WARRANTY CLAIM RELATING THERETO. MEDIATEK SHALL ALSO
+* NOT BE RESPONSIBLE FOR ANY MEDIATEK SOFTWARE RELEASES MADE TO BUYER'S
+* SPECIFICATION OR TO CONFORM TO A PARTICULAR STANDARD OR OPEN FORUM.
+*
+* BUYER'S SOLE AND EXCLUSIVE REMEDY AND MEDIATEK'S ENTIRE AND CUMULATIVE
+* LIABILITY WITH RESPECT TO THE MEDIATEK SOFTWARE RELEASED HEREUNDER WILL BE,
+* AT MEDIATEK'S OPTION, TO REVISE OR REPLACE THE MEDIATEK SOFTWARE AT ISSUE,
+* OR REFUND ANY SOFTWARE LICENSE FEES OR SERVICE CHARGE PAID BY BUYER TO
+* MEDIATEK FOR SUCH MEDIATEK SOFTWARE AT ISSUE.
+*
+* THE TRANSACTION CONTEMPLATED HEREUNDER SHALL BE CONSTRUED IN ACCORDANCE
+* WITH THE LAWS OF THE STATE OF CALIFORNIA, USA, EXCLUDING ITS CONFLICT OF
+* LAWS PRINCIPLES. ANY DISPUTES, CONTROVERSIES OR CLAIMS ARISING THEREOF AND
+* RELATED THERETO SHALL BE SETTLED BY ARBITRATION IN SAN FRANCISCO, CA, UNDER
+* THE RULES OF THE INTERNATIONAL CHAMBER OF COMMERCE (ICC).
+*
+*****************************************************************************/
+
+/*******************************************************************************
+ * Filename:
+ * ---------
+ * gprs_rlcmac_ul_struct.h
+ *
+ * Project:
+ * --------
+ * MAUI
+ *
+ * Description:
+ * ------------
+ *
+ *
+ * Author:
+ * -------
+ *
+ *
+ *==============================================================================
+ * HISTORY
+ * Below this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *------------------------------------------------------------------------------
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ *------------------------------------------------------------------------------
+ * Upper this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *==============================================================================
+ *******************************************************************************/
+
+/********************************************************************************
+* Copyright Statement:
+* --------------------
+*
+* This product has been developed using a protocol stack
+* developed by Sasken Communication Technologies Limited.
+*
+********************************************************************************/
+
+
+/*******************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2002
+*
+*******************************************************************************
+ * FILENAME : gprs_rlcmac_ul_struct.h
+ * SYNOPSIS : Functions for encoding/decoding.
+ *
+ * R E V I S I O N H I S T O R Y
+ *
+ */
+#ifndef _GPRS_RLCMAC_UL_STRUCT_H
+#define _GPRS_RLCMAC_UL_STRUCT_H
+
+#ifdef __GERAN_R6__
+#define NUM_OF_SI_MESSAGE 10 /* SI1, SI2, SI2bis, SI2ter, SI2quarter, SI3, SI4, SI7, SI8, SI2n */
+#else
+#define NUM_OF_SI_MESSAGE 9 /* SI1, SI2, SI2bis, SI2ter, SI2quarter, SI3, SI4, SI7, SI8 */
+#endif
+
+/*Evelyn: Remove redundant header and file */
+#include "kal_general_types.h"
+#include "rr_common_def.h"
+#include "gprs_rlcmac_common_struct.h"
+#include "nstd_pkt_meas_report_struct.h"
+
+typedef struct {
+ kal_uint16 uarfcn; /* UARFCN*/
+ kal_uint8 diversity; /* DIVERSITY*/
+ ispresent bandwidth_fdd_tag;
+ union {
+ kal_uint8 p_bw_fdd;
+ } bandwidth_fdd_value;
+ kal_uint16 scrambling_code; /* SCRAMBLING CODE*/
+} utran_fdd_struct;
+
+typedef struct {
+ kal_uint16 uarfcn; /* UARFCN*/
+ kal_uint8 diversity; /* DIVERSITY*/
+ ispresent bandwidth_tdd_tag;
+ union {
+ kal_uint8 p_bw_tdd;
+ } bandwidth_tdd_value;
+ kal_uint16 cell_parameter; /* CELL PARAMETER*/
+ kal_uint8 sctd; /* Sync Case TSTD*/
+} utran_tdd_struct;
+
+typedef struct {
+ ispresent utran_fdd_tag;
+ union {
+ utran_fdd_struct p_utran_fdd;
+ } utran_fdd_value;
+ ispresent utran_tdd_tag;
+ union {
+ utran_tdd_struct p_utran_tdd;
+ } utran_tdd_value;
+} add_3G_r99_struct;
+
+typedef struct {
+ ul_ctrl_header_struct header; /* HEADER STRUCT*/
+ kal_uint8 msgtype; /* MSG TYPE*/
+ kal_uint32 tlli; /* TLLI*/
+ kal_uint16 arfcn; /* ARFCN*/
+ kal_uint8 bsic; /* BSIC*/
+ kal_uint8 cause; /* CAUSE*/
+ ispresent add_3G_r99_choice_tag;
+ union {
+ add_3G_r99_struct p_add_3G_r99;
+ } add_3G_r99_choice_value;
+} pkt_cell_change_failure_msg;
+
+typedef struct {
+ ispresent i_level_choice0_tag;
+ union {
+ kal_uint8 p_leveln0;
+ } i_level_choice0_value;
+ ispresent i_level_choice1_tag;
+ union {
+ kal_uint8 p_leveln1;
+ } i_level_choice1_value;
+ ispresent i_level_choice2_tag;
+ union {
+ kal_uint8 p_leveln2;
+ } i_level_choice2_value;
+ ispresent i_level_choice3_tag;
+ union {
+ kal_uint8 p_leveln3;
+ } i_level_choice3_value;
+ ispresent i_level_choice4_tag;
+ union {
+ kal_uint8 p_leveln4;
+ } i_level_choice4_value;
+ ispresent i_level_choice5_tag;
+ union {
+ kal_uint8 p_leveln5;
+ } i_level_choice5_value;
+ ispresent i_level_choice6_tag;
+ union {
+ kal_uint8 p_leveln6;
+ } i_level_choice6_value;
+ ispresent i_level_choice7_tag;
+ union {
+ kal_uint8 p_leveln7;
+ } i_level_choice7_value;
+} level_struct;
+
+typedef struct {
+ level_struct interf_level_struct[8];
+} interference_level_struct;
+
+typedef struct {
+ kal_uint8 ext_report_type; /* EXT REPORTING TYPE*/
+ ispresent ext_report_choice_tag;
+ union {
+ level_struct p_ext_meas_report;
+ } ext_report_choice_value;
+ kal_uint8 no_freq_bisc2;
+ kal_uint8 freq_bisc2_size;
+ freq_bisc_struct *freq_bisc2; /* FREQ BISC */
+} ext_meas_report_struct;
+
+typedef struct {
+ kal_uint8 ba_used; /* BA_USED*/
+ kal_uint8 umts_ba_used; /* 3*/
+} ba_used_struct;
+
+typedef struct {
+ ispresent psi3chng_mark_choice_tag;
+ union {
+ ba_used_struct a_psi3chng_mark;
+ kal_uint8 p_psi3chng_mark;
+ } psi3chng_mark_choice_value;
+ kal_uint8 pmo_used; /* PMO_USED*/
+} pmo_used_struct;
+
+typedef struct {
+ ispresent pmo_used_choice_tag;
+ union {
+ pmo_used_struct p_pmo_used;
+ } pmo_used_choice_value;
+ ispresent umts_meas_rp_choice_tag;
+/*
+ union {
+ } umts_meas_rp_choice_value;
+*/
+} pmr_add_r99_struct;
+
+typedef struct {
+ kal_uint8 rxlev_serving_cell;
+ ispresent interf_choice_tag;
+ union {
+ kal_uint8 p_interf_serving_cell;
+ } interf_choice_value;
+} serving_cell_data_struct;
+
+typedef struct {
+ kal_uint8 bcch_freq_ncell;
+ kal_uint8 bsic;
+ kal_uint8 rxlev;
+} rp_bsic_struct;
+
+typedef struct {
+ ispresent reporting_quantity_choice_tag;
+ union {
+ kal_uint8 p_reporting_quantity;
+ } reporting_quantity_choice_value;
+} reporting_quantity_struct;
+
+typedef struct {
+ ispresent invalid_bsic_choice_tag;
+ union {
+ rp_bsic_struct p_invalid_bsic;
+ } invalid_bsic_choice_value;
+} invalid_bsic_struct;
+
+typedef struct {
+ kal_uint8 nc_mode;
+ ispresent psi3_chng_mark_choice_tag;
+ union {
+ ba_used_struct a_psi3_chng_mark;
+ kal_uint8 p_psi3_chng_mark;
+ } psi3_chng_mark_choice_value;
+ kal_uint8 pmo_used;
+ kal_uint8 bsic_seen;
+ kal_uint8 scale;
+ ispresent serving_cell_data_choice_tag;
+ union {
+ serving_cell_data_struct p_serving_cell_data;
+ } serving_cell_data_choice_value;
+ kal_uint8 no_repeated_invalid_bsic;
+ kal_uint8 repeated_invalid_bsic_size;
+ invalid_bsic_struct *repeated_invalid_bsic;
+ kal_uint8 no_reporting_quantity;
+ kal_uint8 reporting_quantity_size;
+ ispresent bitmap_reporting_choice_tag;
+ union {
+ reporting_quantity_struct *p_bitmap_reporting;
+ } bitmap_reporting_choice_value;
+} enh_nc_meas_rep_struct;
+
+#ifdef __UMTS_RAT__
+typedef struct {
+ kal_uint8 cell_index;
+ kal_uint8 rep_quan;
+} umts_cell_rep_struct;
+
+typedef struct {
+ kal_uint8 num_umts_cell; /* FREQUENCY N*/
+ ispresent umts_cell_reporting_choice_tag;
+ umts_cell_rep_struct *u_cell_reporting;
+} umts_meas_rep_struct;
+#endif
+
+
+typedef struct {
+ ul_ctrl_header_struct header; /* HEADER STRUCT*/
+ kal_uint8 msgtype; /* MSG TYPE*/
+ kal_uint32 tlli; /* TLLI*/
+ ispresent psi5chng_mark_choice_tag;
+ union {
+ kal_uint8 p_psi5chng_mark;
+ } psi5chng_mark_choice_value;
+ ispresent nc_meas_report_choice_tag;
+ union {
+ nc_meas_rep_struct a_nc_meas_report;
+ ext_meas_report_struct p_ext_meas_report;
+ } nc_meas_report_choice_value;
+ ispresent umts_meas_report_choice_tag;
+#ifdef __UMTS_RAT__
+ union {
+ umts_meas_rep_struct u_umts_meas_report;
+ }nc_umts_meas_report_choice_value;
+#endif
+ ispresent r99_choice_tag;
+ union {
+ pmr_add_r99_struct p_r99_choice;
+ } r99_choice_value;
+} pkt_meas_report_struct;
+
+typedef struct {
+ ul_ctrl_header_struct header;
+ kal_uint8 msgtype;
+ kal_uint32 tlli;
+ enh_nc_meas_rep_struct enh_nc_meas_rep;
+} pkt_enh_meas_report_struct;
+
+typedef struct {
+ kal_uint8 peak_thru_class; /* PEAK THRUPUT CLASS*/
+ kal_uint8 radio_priority; /* RADIO PRIORITY*/
+ kal_uint8 rlc_mode; /* RLC MODE*/
+ kal_uint8 llc_pdu_type; /* LLC PDU TYPE*/
+ kal_uint16 rlc_octet_count; /* RLC OCTET COUNT*/
+} ch_request_desc_struct;
+
+typedef struct {
+ ispresent ilevel_choice_tag;
+ union {
+ kal_uint8 p_ilevel_tn;
+ } ilevel_choice_value;
+} ilevel_tn_struct;
+
+typedef struct {
+ kal_uint8 c_value; /* C-VALUE*/
+ kal_uint8 rx_qual; /* RXQUAL*/
+ kal_uint8 sign_var; /* SIGN-VAR*/
+ ilevel_tn_struct i_level_tn_value[8];
+} ch_quality_report_struct;
+
+typedef struct {
+ ul_ctrl_header_struct header; /* HEADER STRUCT*/
+ kal_uint8 msgtype; /* MSG TYPE*/
+ kal_uint8 dn_lnk_tfi; /* DOWN LINK TFI*/
+ ack_nack_desc_struct ack_nack2; /* ACKNACKDESCSTRUCT*/
+ ispresent ch_req_desc_choice_tag;
+ union {
+ ch_request_desc_struct p_ch_req_desc;
+ } ch_req_desc_choice_value;
+ ch_quality_report_struct ch_qua_report; /* ch_quality_report_struct*/
+} pkt_dn_link_ack_nack;
+
+/* Austin 040406: support PSI status */
+typedef struct {
+ kal_uint8 psix_msgtype; /* PSI MSG TYPE */
+ kal_uint8 psix_chng_mark; /* PSI CHANGE MARK */
+ ispresent instance_bitmap_tag;
+ kal_uint8 psix_count; /* PSIX_COUNT */
+ kal_uint16 instance_bitmap;
+} psi_msg_struct;
+
+typedef struct {
+ unsigned int no_psi_msg;
+ psi_msg_struct psi_msg_list[10]; /* Rel99: PSI2, 3, 3bis, 4, 5, 3ter, 3qualter, 6, 7, 8 */
+ kal_uint8 additional_msg_type;
+} psi_msg_list_struct;
+
+typedef struct {
+ kal_uint8 psix_msgtype; /* PSI MSG TYPE */
+} unknown_psi_msg_struct;
+
+typedef struct {
+ unsigned int no_unknown_psi_msg;
+ unknown_psi_msg_struct unknown_psi_msg_list[1]; /* not realy used now */
+ kal_uint8 additional_msg_type;
+} unknown_psi_msg_list_struct;
+
+typedef struct {
+ ul_ctrl_header_struct header; /* HEADER STRUCT*/
+ kal_uint8 msgtype; /* MSG TYPE*/
+ global_tfistruct global_tfi; /* GLOBAL TFI */
+ kal_uint8 pbcch_chng_mark; /* PBCCH CHANGE MARK */
+ psi_msg_list_struct psi_msg_list;
+ unknown_psi_msg_list_struct unknown_psi_msg_list;
+} pkt_psi_status_struct;
+
+
+#ifdef __GERAN_R4__
+typedef struct
+{
+ kal_uint16 arfcn; /* ARFCN*/
+ kal_uint8 bsic; /* BSIC*/
+}cell_2g_struct;
+
+typedef struct
+{
+ ispresent cell_2G_choice_tag;
+ cell_2g_struct cell_2g;
+ ispresent cell_3G_r6_choice_tag;
+ add_3G_r99_struct cell_3g;
+ kal_uint8 cell_rep_quan;
+}ccn_target_cell_struct;
+
+typedef struct
+{
+ ul_ctrl_header_struct header;
+ kal_uint8 msgtype;
+ global_tfistruct global_tfi;
+ ccn_target_cell_struct ccn_target_cell;
+ kal_bool ba_or_psi3_used;
+ kal_bool ba_used;
+ kal_uint8 psi3_change_mark;
+ kal_uint8 pmo_used;
+ kal_uint8 pccn_sending; /* It re-send or not*/
+ nc_meas_rep_struct ccn_measurement_report; /* This struct is identical to the NC Measurement Report struct
+ specified in the PACKET MEASUREMENT REPORT message with the exception that the NC_MODE parameter
+ is not part of the struct. We will skip nc_mode in encode function*/
+#ifdef __UMTS_RAT__
+ ispresent umts_meas_report_choice_tag;
+
+ ispresent umts_ba_used_tag;
+ kal_bool umts_ba_used;
+ union {
+ umts_meas_rep_struct u_umts_meas_report;
+ }nc_umts_meas_report_choice_value;
+#endif
+} pkt_cell_change_notification_struct;
+
+/*Byron: 2006/06/29: For Packet SI Status*/
+typedef struct {
+ kal_uint8 six_msgtype; /* SI MSG TYPE */
+ kal_uint8 mess_rec; /* message received type */
+ ispresent instance_bitmap_tag;
+ kal_uint8 six_change_mark; /*SIX change mark*/
+ kal_uint8 six_count; /* SIX_COUNT */
+ kal_uint16 instance_bitmap;
+} si_msg_struct;
+
+typedef struct {
+ kal_uint8 no_si_msg;
+ si_msg_struct si_msg_list[NUM_OF_SI_MESSAGE];
+ kal_uint8 additional_msg_type;
+} si_msg_list_struct;
+
+typedef struct {
+ kal_uint8 six_msgtype; /* SI MSG TYPE */
+} unknown_si_msg_struct;
+
+typedef struct {
+ kal_uint8 no_unknown_si_msg;
+ unknown_si_msg_struct unknown_si_msg_list[1]; /* not realy used now */
+ kal_uint8 additional_msg_type;
+} unknown_si_msg_list_struct;
+
+typedef struct {
+ ul_ctrl_header_struct header; /* HEADER STRUCT*/
+ kal_uint8 msgtype; /* MSG TYPE*/
+ global_tfistruct global_tfi; /* GLOBAL TFI */
+ kal_uint8 bcch_chng_mark; /* PBCCH CHANGE MARK */
+ si_msg_list_struct si_msg_list;
+ unknown_si_msg_list_struct unknown_si_msg_list;
+} pkt_si_status_struct;
+
+#endif
+
+#endif
+
+
diff --git a/mcu/protocol/interface/asn/rr/include/meascell.h b/mcu/protocol/interface/asn/rr/include/meascell.h
new file mode 100644
index 0000000..98cff7e
--- /dev/null
+++ b/mcu/protocol/interface/asn/rr/include/meascell.h
@@ -0,0 +1,120 @@
+/*****************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2005
+*
+* BY OPENING THIS FILE, BUYER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND AGREES
+* THAT THE SOFTWARE/FIRMWARE AND ITS DOCUMENTATIONS ("MEDIATEK SOFTWARE")
+* RECEIVED FROM MEDIATEK AND/OR ITS REPRESENTATIVES ARE PROVIDED TO BUYER ON
+* AN "AS-IS" BASIS ONLY. MEDIATEK EXPRESSLY DISCLAIMS ANY AND ALL WARRANTIES,
+* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF
+* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NONINFRINGEMENT.
+* NEITHER DOES MEDIATEK PROVIDE ANY WARRANTY WHATSOEVER WITH RESPECT TO THE
+* SOFTWARE OF ANY THIRD PARTY WHICH MAY BE USED BY, INCORPORATED IN, OR
+* SUPPLIED WITH THE MEDIATEK SOFTWARE, AND BUYER AGREES TO LOOK ONLY TO SUCH
+* THIRD PARTY FOR ANY WARRANTY CLAIM RELATING THERETO. MEDIATEK SHALL ALSO
+* NOT BE RESPONSIBLE FOR ANY MEDIATEK SOFTWARE RELEASES MADE TO BUYER'S
+* SPECIFICATION OR TO CONFORM TO A PARTICULAR STANDARD OR OPEN FORUM.
+*
+* BUYER'S SOLE AND EXCLUSIVE REMEDY AND MEDIATEK'S ENTIRE AND CUMULATIVE
+* LIABILITY WITH RESPECT TO THE MEDIATEK SOFTWARE RELEASED HEREUNDER WILL BE,
+* AT MEDIATEK'S OPTION, TO REVISE OR REPLACE THE MEDIATEK SOFTWARE AT ISSUE,
+* OR REFUND ANY SOFTWARE LICENSE FEES OR SERVICE CHARGE PAID BY BUYER TO
+* MEDIATEK FOR SUCH MEDIATEK SOFTWARE AT ISSUE.
+*
+* THE TRANSACTION CONTEMPLATED HEREUNDER SHALL BE CONSTRUED IN ACCORDANCE
+* WITH THE LAWS OF THE STATE OF CALIFORNIA, USA, EXCLUDING ITS CONFLICT OF
+* LAWS PRINCIPLES. ANY DISPUTES, CONTROVERSIES OR CLAIMS ARISING THEREOF AND
+* RELATED THERETO SHALL BE SETTLED BY ARBITRATION IN SAN FRANCISCO, CA, UNDER
+* THE RULES OF THE INTERNATIONAL CHAMBER OF COMMERCE (ICC).
+*
+*****************************************************************************/
+
+/*******************************************************************************
+ * Filename:
+ * ---------
+ * meascell.h
+ *
+ * Project:
+ * --------
+ * MAUI
+ *
+ * Description:
+ * ------------
+ *
+ *
+ * Author:
+ * -------
+ *
+ *
+ *==============================================================================
+ * HISTORY
+ * Below this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *------------------------------------------------------------------------------
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ *------------------------------------------------------------------------------
+ * Upper this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *==============================================================================
+ *******************************************************************************/
+
+/********************************************************************************
+* Copyright Statement:
+* --------------------
+*
+* This product has been developed using a protocol stack
+* developed by Sasken Communication Technologies Limited.
+*
+********************************************************************************/
+
+
+
+#ifndef _meascell_H_
+#define _meascell_H_
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#ifdef TEST_TOOL
+#include "tt_defs.h"
+#endif
+
+#ifdef TOOL
+#include "set_meascell.h"
+#include "get_meascell.h"
+#endif
+#ifdef __cplusplus
+}
+#endif
+
+#endif
+
+
diff --git a/mcu/protocol/interface/asn/rr/include/meascell_pun.h b/mcu/protocol/interface/asn/rr/include/meascell_pun.h
new file mode 100644
index 0000000..5eb5bf8
--- /dev/null
+++ b/mcu/protocol/interface/asn/rr/include/meascell_pun.h
@@ -0,0 +1,169 @@
+/*****************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2005
+*
+* BY OPENING THIS FILE, BUYER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND AGREES
+* THAT THE SOFTWARE/FIRMWARE AND ITS DOCUMENTATIONS ("MEDIATEK SOFTWARE")
+* RECEIVED FROM MEDIATEK AND/OR ITS REPRESENTATIVES ARE PROVIDED TO BUYER ON
+* AN "AS-IS" BASIS ONLY. MEDIATEK EXPRESSLY DISCLAIMS ANY AND ALL WARRANTIES,
+* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF
+* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NONINFRINGEMENT.
+* NEITHER DOES MEDIATEK PROVIDE ANY WARRANTY WHATSOEVER WITH RESPECT TO THE
+* SOFTWARE OF ANY THIRD PARTY WHICH MAY BE USED BY, INCORPORATED IN, OR
+* SUPPLIED WITH THE MEDIATEK SOFTWARE, AND BUYER AGREES TO LOOK ONLY TO SUCH
+* THIRD PARTY FOR ANY WARRANTY CLAIM RELATING THERETO. MEDIATEK SHALL ALSO
+* NOT BE RESPONSIBLE FOR ANY MEDIATEK SOFTWARE RELEASES MADE TO BUYER'S
+* SPECIFICATION OR TO CONFORM TO A PARTICULAR STANDARD OR OPEN FORUM.
+*
+* BUYER'S SOLE AND EXCLUSIVE REMEDY AND MEDIATEK'S ENTIRE AND CUMULATIVE
+* LIABILITY WITH RESPECT TO THE MEDIATEK SOFTWARE RELEASED HEREUNDER WILL BE,
+* AT MEDIATEK'S OPTION, TO REVISE OR REPLACE THE MEDIATEK SOFTWARE AT ISSUE,
+* OR REFUND ANY SOFTWARE LICENSE FEES OR SERVICE CHARGE PAID BY BUYER TO
+* MEDIATEK FOR SUCH MEDIATEK SOFTWARE AT ISSUE.
+*
+* THE TRANSACTION CONTEMPLATED HEREUNDER SHALL BE CONSTRUED IN ACCORDANCE
+* WITH THE LAWS OF THE STATE OF CALIFORNIA, USA, EXCLUDING ITS CONFLICT OF
+* LAWS PRINCIPLES. ANY DISPUTES, CONTROVERSIES OR CLAIMS ARISING THEREOF AND
+* RELATED THERETO SHALL BE SETTLED BY ARBITRATION IN SAN FRANCISCO, CA, UNDER
+* THE RULES OF THE INTERNATIONAL CHAMBER OF COMMERCE (ICC).
+*
+*****************************************************************************/
+
+/*******************************************************************************
+ * Filename:
+ * ---------
+ * meascell_pun.h
+ *
+ * Project:
+ * --------
+ * MAUI
+ *
+ * Description:
+ * ------------
+ *
+ *
+ * Author:
+ * -------
+ *
+ *
+ *==============================================================================
+ * HISTORY
+ * Below this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *------------------------------------------------------------------------------
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ *------------------------------------------------------------------------------
+ * Upper this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *==============================================================================
+ *******************************************************************************/
+
+/********************************************************************************
+* Copyright Statement:
+* --------------------
+*
+* This product has been developed using a protocol stack
+* developed by Sasken Communication Technologies Limited.
+*
+********************************************************************************/
+
+
+/*******************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2002
+*
+*******************************************************************************
+ * FILENAME : meascell_pun.h
+ * SYNOPSIS : Functions for encoding/decoding.
+ *
+ * R E V I S I O N H I S T O R Y
+ *
+ */
+#ifdef MTK_PEER
+#define IMP __declspec(dllimport)
+#else
+#define IMP
+#endif
+#ifndef _MEASCELL_PUN_H
+
+#include "kal_general_types.h"
+
+#define _MEASCELL_PUN_H
+#define gprs_struct_size(x) 2
+IMP unsigned int gprs_struct_bits(void *);
+IMP void gprs_struct_alloc(void *);
+IMP void gprs_struct_dealloc(void *);
+IMP unsigned int gprs_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int gprs_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define gprs_one_struct_size(x) 1
+IMP unsigned int gprs_one_struct_bits(void *);
+IMP void gprs_one_struct_alloc(void *);
+IMP void gprs_one_struct_dealloc(void *);
+IMP unsigned int gprs_one_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int gprs_one_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define hcs_struct_size(x) 1
+IMP unsigned int hcs_struct_bits(void *);
+IMP void hcs_struct_alloc(void *);
+IMP void hcs_struct_dealloc(void *);
+IMP unsigned int hcs_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int hcs_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define loc_per_struct_size(x) 1
+IMP unsigned int loc_per_struct_bits(void *);
+IMP void loc_per_struct_alloc(void *);
+IMP void loc_per_struct_dealloc(void *);
+IMP unsigned int loc_per_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int loc_per_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int si_pbcch_struct_bits(void *);
+IMP void si_pbcch_struct_alloc(void *);
+IMP void si_pbcch_struct_dealloc(void *);
+IMP unsigned int si_pbcch_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int si_pbcch_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int cell_selection_struct_bits(void *);
+IMP void cell_selection_struct_alloc(void *);
+IMP void cell_selection_struct_dealloc(void *);
+IMP unsigned int cell_selection_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int cell_selection_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#endif
+
+
diff --git a/mcu/protocol/interface/asn/rr/include/meascell_struct.h b/mcu/protocol/interface/asn/rr/include/meascell_struct.h
new file mode 100644
index 0000000..daad5f7
--- /dev/null
+++ b/mcu/protocol/interface/asn/rr/include/meascell_struct.h
@@ -0,0 +1,178 @@
+/*****************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2005
+*
+* BY OPENING THIS FILE, BUYER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND AGREES
+* THAT THE SOFTWARE/FIRMWARE AND ITS DOCUMENTATIONS ("MEDIATEK SOFTWARE")
+* RECEIVED FROM MEDIATEK AND/OR ITS REPRESENTATIVES ARE PROVIDED TO BUYER ON
+* AN "AS-IS" BASIS ONLY. MEDIATEK EXPRESSLY DISCLAIMS ANY AND ALL WARRANTIES,
+* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF
+* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NONINFRINGEMENT.
+* NEITHER DOES MEDIATEK PROVIDE ANY WARRANTY WHATSOEVER WITH RESPECT TO THE
+* SOFTWARE OF ANY THIRD PARTY WHICH MAY BE USED BY, INCORPORATED IN, OR
+* SUPPLIED WITH THE MEDIATEK SOFTWARE, AND BUYER AGREES TO LOOK ONLY TO SUCH
+* THIRD PARTY FOR ANY WARRANTY CLAIM RELATING THERETO. MEDIATEK SHALL ALSO
+* NOT BE RESPONSIBLE FOR ANY MEDIATEK SOFTWARE RELEASES MADE TO BUYER'S
+* SPECIFICATION OR TO CONFORM TO A PARTICULAR STANDARD OR OPEN FORUM.
+*
+* BUYER'S SOLE AND EXCLUSIVE REMEDY AND MEDIATEK'S ENTIRE AND CUMULATIVE
+* LIABILITY WITH RESPECT TO THE MEDIATEK SOFTWARE RELEASED HEREUNDER WILL BE,
+* AT MEDIATEK'S OPTION, TO REVISE OR REPLACE THE MEDIATEK SOFTWARE AT ISSUE,
+* OR REFUND ANY SOFTWARE LICENSE FEES OR SERVICE CHARGE PAID BY BUYER TO
+* MEDIATEK FOR SUCH MEDIATEK SOFTWARE AT ISSUE.
+*
+* THE TRANSACTION CONTEMPLATED HEREUNDER SHALL BE CONSTRUED IN ACCORDANCE
+* WITH THE LAWS OF THE STATE OF CALIFORNIA, USA, EXCLUDING ITS CONFLICT OF
+* LAWS PRINCIPLES. ANY DISPUTES, CONTROVERSIES OR CLAIMS ARISING THEREOF AND
+* RELATED THERETO SHALL BE SETTLED BY ARBITRATION IN SAN FRANCISCO, CA, UNDER
+* THE RULES OF THE INTERNATIONAL CHAMBER OF COMMERCE (ICC).
+*
+*****************************************************************************/
+
+/*******************************************************************************
+ * Filename:
+ * ---------
+ * meascell_struct.h
+ *
+ * Project:
+ * --------
+ * MAUI
+ *
+ * Description:
+ * ------------
+ *
+ *
+ * Author:
+ * -------
+ *
+ *
+ *==============================================================================
+ * HISTORY
+ * Below this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *------------------------------------------------------------------------------
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ *------------------------------------------------------------------------------
+ * Upper this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *==============================================================================
+ *******************************************************************************/
+
+/********************************************************************************
+* Copyright Statement:
+* --------------------
+*
+* This product has been developed using a protocol stack
+* developed by Sasken Communication Technologies Limited.
+*
+********************************************************************************/
+
+
+/*******************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2002
+*
+*******************************************************************************
+ * FILENAME : meascell_struct.h
+ * SYNOPSIS : Functions for encoding/decoding.
+ *
+ * R E V I S I O N H I S T O R Y
+ *
+ */
+#ifndef _MEASCELL_STRUCT_H
+#define _MEASCELL_STRUCT_H
+
+#include "rr_common_def.h"
+#include "kal_general_types.h"
+
+typedef struct {
+ kal_uint8 gprsmin; /* GPRS RXLEV ACCESS MIN*/
+ kal_uint8 gprscch; /* GPRS MS TXPWR MAX CCH*/
+} gprs_struct;
+
+typedef struct {
+ kal_uint8 gprsoffset; /* GPRS TEMPORARY OFFSET*/
+ kal_uint8 gprstime; /* GPRS PENALITY TIME*/
+} gprs_one_struct;
+
+typedef struct {
+ kal_uint8 gprspriclass; /* GPRS PRIORITY CLASS*/
+ kal_uint8 gprshcsthr; /* GPRS HCS THR*/
+} hcs_struct;
+
+typedef struct {
+ kal_uint8 pbcchloc; /* PBCCH LOCATION*/
+ kal_uint8 psiperiod; /* PSI REPEAT PERIOD*/
+} loc_per_struct;
+
+typedef struct {
+ ispresent loc_per_struct_choice_tag;
+ union {
+ kal_uint8 asiloc;
+ loc_per_struct psiloc;
+ } loc_per_struct_choice_value;
+} si_pbcch_struct;
+
+typedef struct {
+ kal_uint8 cell_bar; /* CELL BAR ACCESS*/
+ kal_uint8 exc_acc; /* EXC_ACCESS*/
+ kal_uint8 same_cell; /* SAME RA AS SERVING CELL*/
+ ispresent gprs_struct_choice_tag;
+ union {
+ gprs_struct pgprs;
+ } gprs_struct_choice_value;
+ ispresent gprs_ones_struct_choice_tag;
+ union {
+ gprs_one_struct pgprsone;
+ } gprs_ones_struct_choice_value;
+ ispresent gprs_resl_off_choice_tag;
+ union {
+ kal_uint8 pgprsresoffsset;
+ } gprs_resl_off_choice_value;
+ ispresent hcs_params_choice_tag;
+ union {
+ hcs_struct phcspara;
+ } hcs_params_choice_value;
+ ispresent si_pbcch_loc_choice_tag;
+ union {
+ si_pbcch_struct psipbcch;
+ } si_pbcch_loc_choice_value;
+} cell_selection_struct;
+#endif
+
+
diff --git a/mcu/protocol/interface/asn/rr/include/measurement_report.h b/mcu/protocol/interface/asn/rr/include/measurement_report.h
new file mode 100644
index 0000000..a377365
--- /dev/null
+++ b/mcu/protocol/interface/asn/rr/include/measurement_report.h
@@ -0,0 +1,126 @@
+/*****************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2005
+*
+* BY OPENING THIS FILE, BUYER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND AGREES
+* THAT THE SOFTWARE/FIRMWARE AND ITS DOCUMENTATIONS ("MEDIATEK SOFTWARE")
+* RECEIVED FROM MEDIATEK AND/OR ITS REPRESENTATIVES ARE PROVIDED TO BUYER ON
+* AN "AS-IS" BASIS ONLY. MEDIATEK EXPRESSLY DISCLAIMS ANY AND ALL WARRANTIES,
+* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF
+* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NONINFRINGEMENT.
+* NEITHER DOES MEDIATEK PROVIDE ANY WARRANTY WHATSOEVER WITH RESPECT TO THE
+* SOFTWARE OF ANY THIRD PARTY WHICH MAY BE USED BY, INCORPORATED IN, OR
+* SUPPLIED WITH THE MEDIATEK SOFTWARE, AND BUYER AGREES TO LOOK ONLY TO SUCH
+* THIRD PARTY FOR ANY WARRANTY CLAIM RELATING THERETO. MEDIATEK SHALL ALSO
+* NOT BE RESPONSIBLE FOR ANY MEDIATEK SOFTWARE RELEASES MADE TO BUYER'S
+* SPECIFICATION OR TO CONFORM TO A PARTICULAR STANDARD OR OPEN FORUM.
+*
+* BUYER'S SOLE AND EXCLUSIVE REMEDY AND MEDIATEK'S ENTIRE AND CUMULATIVE
+* LIABILITY WITH RESPECT TO THE MEDIATEK SOFTWARE RELEASED HEREUNDER WILL BE,
+* AT MEDIATEK'S OPTION, TO REVISE OR REPLACE THE MEDIATEK SOFTWARE AT ISSUE,
+* OR REFUND ANY SOFTWARE LICENSE FEES OR SERVICE CHARGE PAID BY BUYER TO
+* MEDIATEK FOR SUCH MEDIATEK SOFTWARE AT ISSUE.
+*
+* THE TRANSACTION CONTEMPLATED HEREUNDER SHALL BE CONSTRUED IN ACCORDANCE
+* WITH THE LAWS OF THE STATE OF CALIFORNIA, USA, EXCLUDING ITS CONFLICT OF
+* LAWS PRINCIPLES. ANY DISPUTES, CONTROVERSIES OR CLAIMS ARISING THEREOF AND
+* RELATED THERETO SHALL BE SETTLED BY ARBITRATION IN SAN FRANCISCO, CA, UNDER
+* THE RULES OF THE INTERNATIONAL CHAMBER OF COMMERCE (ICC).
+*
+*****************************************************************************/
+
+/*******************************************************************************
+ * Filename:
+ * ---------
+ * measurement_report.h
+ *
+ * Project:
+ * --------
+ * MAUI
+ *
+ * Description:
+ * ------------
+ *
+ *
+ * Author:
+ * -------
+ *
+ *
+ *==============================================================================
+ * HISTORY
+ * Below this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *------------------------------------------------------------------------------
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ *------------------------------------------------------------------------------
+ * Upper this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *==============================================================================
+ *******************************************************************************/
+
+/********************************************************************************
+* Copyright Statement:
+* --------------------
+*
+* This product has been developed using a protocol stack
+* developed by Sasken Communication Technologies Limited.
+*
+********************************************************************************/
+
+
+#ifndef _MEASUREMENT_REPORT_H
+#define _MEASUREMENT_REPORT_H
+
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#ifdef TEST_TOOL
+#include "tt_defs.h"
+#else
+#include "kal_public_api.h"
+#endif
+
+#include "measurement_report_struct.h"
+#include "measurement_report_pun.h"
+
+#ifdef TOOL
+#include "set_measurement_report.h"
+#include "get_measurement_report.h"
+#endif
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif
+
+
diff --git a/mcu/protocol/interface/asn/rr/include/mtk_csn.h b/mcu/protocol/interface/asn/rr/include/mtk_csn.h
new file mode 100644
index 0000000..fd1e0ce
--- /dev/null
+++ b/mcu/protocol/interface/asn/rr/include/mtk_csn.h
@@ -0,0 +1,13799 @@
+/*******************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2007
+*
+* BY OPENING THIS FILE, BUYER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND AGREES
+* THAT THE SOFTWARE/FIRMWARE AND ITS DOCUMENTATIONS ("MEDIATEK SOFTWARE")
+* RECEIVED FROM MEDIATEK AND/OR ITS REPRESENTATIVES ARE PROVIDED TO BUYER ON
+* AN "AS-IS" BASIS ONLY. MEDIATEK EXPRESSLY DISCLAIMS ANY AND ALL WARRANTIES,
+* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF
+* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NONINFRINGEMENT.
+* NEITHER DOES MEDIATEK PROVIDE ANY WARRANTY WHATSOEVER WITH RESPECT TO THE
+* SOFTWARE OF ANY THIRD PARTY WHICH MAY BE USED BY, INCORPORATED IN, OR
+* SUPPLIED WITH THE MEDIATEK SOFTWARE, AND BUYER AGREES TO LOOK ONLY TO SUCH
+* THIRD PARTY FOR ANY WARRANTY CLAIM RELATING THERETO. MEDIATEK SHALL ALSO
+* NOT BE RESPONSIBLE FOR ANY MEDIATEK SOFTWARE RELEASES MADE TO BUYER'S
+* SPECIFICATION OR TO CONFORM TO A PARTICULAR STANDARD OR OPEN FORUM.
+*
+* BUYER'S SOLE AND EXCLUSIVE REMEDY AND MEDIATEK'S ENTIRE AND CUMULATIVE
+* LIABILITY WITH RESPECT TO THE MEDIATEK SOFTWARE RELEASED HEREUNDER WILL BE,
+* AT MEDIATEK'S OPTION, TO REVISE OR REPLACE THE MEDIATEK SOFTWARE AT ISSUE,
+* OR REFUND ANY SOFTWARE LICENSE FEES OR SERVICE CHARGE PAID BY BUYER TO
+* MEDIATEK FOR SUCH MEDIATEK SOFTWARE AT ISSUE.
+*
+* THE TRANSACTION CONTEMPLATED HEREUNDER SHALL BE CONSTRUED IN ACCORDANCE
+* WITH THE LAWS OF THE STATE OF CALIFORNIA, USA, EXCLUDING ITS CONFLICT OF
+* LAWS PRINCIPLES. ANY DISPUTES, CONTROVERSIES OR CLAIMS ARISING THEREOF AND
+* RELATED THERETO SHALL BE SETTLED BY ARBITRATION IN SAN FRANCISCO, CA, UNDER
+* THE RULES OF THE INTERNATIONAL CHAMBER OF COMMERCE (ICC).
+*
+*****************************************************************************/
+/***************************************************************************
+* Filename:
+* ---------
+* mtk_csn.h
+*
+* Source:
+* ------------
+* CS_R99.csn
+* PS_R99.csn
+* PS_R6.csn
+* PS_Common.csn
+* PS_R99_UL.csn
+* PS_Common_UL.csn
+*
+* DESCRIPTION:
+* Auto generated by MTK CSN.1 Compiler [v1.1034.00], Mon Sep 06 10:56:57 2010
+*
+***************************************************************************/
+#if !defined _MTK_CSN_H
+#define _MTK_CSN_H
+
+#include "mtkcsn_global.h"
+#include "csn_common.h"
+
+/*Evelyn: Remove redundant header and file */
+#include "rr_common_def.h"
+#include "kal_general_types.h"
+#include "as_common.h"
+
+/* For L4CPS_EM_STATUS_IND peer buff decoding */
+#include "em_gas_public_struct.h"
+#include "ps_public_struct.h"
+#include "em_struct.h"
+
+
+/* SEQUENCE repeated utran fdd neighbour cells struct mi */
+typedef struct repeated_utran_fdd_neighbour_cells_struct_mi{
+ U16 fdd_arfcn;
+ U8 fdd_indic0;
+ U8 nr_of_fdd_cells;
+ U16 numElements_fdd_cell_information_field;
+ U8 * fdd_cell_information_field;
+}repeated_utran_fdd_neighbour_cells_struct_mi;
+
+/* SEQUENCE repeated utran tdd neighbour cells struct mi */
+typedef struct repeated_utran_tdd_neighbour_cells_struct_mi{
+ U16 tdd_arfcn;
+ U8 tdd_indic0;
+ U8 nr_of_tdd_cells;
+ U16 numElements_tdd_cell_information_field;
+ U8 * tdd_cell_information_field;
+}repeated_utran_tdd_neighbour_cells_struct_mi;
+
+typedef enum {
+ CDMA_2000_DESCRIPTION_STRUCT_MI_S_4,
+ CDMA_2000_DESCRIPTION_STRUCT_MI_S_5,
+ CDMA_2000_DESCRIPTION_STRUCT_MI_S_6,
+ CDMA_2000_DESCRIPTION_STRUCT_MI_S_7,
+ CDMA_2000_DESCRIPTION_STRUCT_MI_S_8
+}cdma_2000_description_struct_mi_s_3_enum;
+
+typedef struct cdma_2000_description_struct_mi_s_4{
+ U8 td_mode;
+ U8 td_power_level;
+}cdma_2000_description_struct_mi_s_4;
+
+typedef struct cdma_2000_description_struct_mi_s_5{
+ U8 qof;
+ U8 walsh_len_a;
+ U16 numElements_aux_pilot_walsh;
+ U8 * aux_pilot_walsh;
+}cdma_2000_description_struct_mi_s_5;
+
+typedef struct cdma_2000_description_struct_mi_s_6{
+ U8 qof;
+ U8 walsh_len_b;
+ U16 numElements_aux_td_walsh;
+ U8 * aux_td_walsh;
+ U8 aux_td_power_level;
+ U8 td_mode;
+}cdma_2000_description_struct_mi_s_6;
+
+typedef struct cdma_2000_description_struct_mi_s_7{
+ U8 sr3_prim_pilot;
+ U8 sr3_pilot_power1;
+ U8 sr3_pilot_power2;
+}cdma_2000_description_struct_mi_s_7;
+
+typedef struct cdma_2000_description_struct_mi_s_10{
+ U8 qof1;
+ U8 walsh_length1;
+ U16 numElements_aux_pilot_walsh1;
+ U8 * aux_pilot_walsh1;
+}cdma_2000_description_struct_mi_s_10;
+
+typedef struct cdma_2000_description_struct_mi_s_12{
+ U8 qof2;
+ U8 walsh_length2;
+ U16 numElements_aux_pilot_walsh2;
+ U8 * aux_pilot_walsh2;
+}cdma_2000_description_struct_mi_s_12;
+
+typedef struct cdma_2000_description_struct_mi_s_8{
+ U8 sr3_prim_pilot;
+ U8 sr3_pilot_power1;
+ U8 sr3_pilot_power2;
+ U8 qof;
+ U8 walsh_len_c;
+ U16 numElements_aux_walsh_len;
+ U8 * aux_walsh_len;
+ ispresent cdma_2000_description_struct_mi_s_9_tag;
+ union cdma_2000_description_struct_mi_s_9_value{
+ cdma_2000_description_struct_mi_s_10 m_cdma_2000_description_struct_mi_s_10;
+ }cdma_2000_description_struct_mi_s_9_value;
+ ispresent cdma_2000_description_struct_mi_s_11_tag;
+ union cdma_2000_description_struct_mi_s_11_value{
+ cdma_2000_description_struct_mi_s_12 m_cdma_2000_description_struct_mi_s_12;
+ }cdma_2000_description_struct_mi_s_11_value;
+}cdma_2000_description_struct_mi_s_8;
+
+typedef struct cdma_2000_description_struct_mi_s_3{
+ cdma_2000_description_struct_mi_s_3_enum cdma_2000_description_struct_mi_s_3_tag;
+ union cdma_2000_description_struct_mi_s_3_value{
+ cdma_2000_description_struct_mi_s_4 m_cdma_2000_description_struct_mi_s_4;
+ cdma_2000_description_struct_mi_s_5 m_cdma_2000_description_struct_mi_s_5;
+ cdma_2000_description_struct_mi_s_6 m_cdma_2000_description_struct_mi_s_6;
+ cdma_2000_description_struct_mi_s_7 m_cdma_2000_description_struct_mi_s_7;
+ cdma_2000_description_struct_mi_s_8 m_cdma_2000_description_struct_mi_s_8;
+ }cdma_2000_description_struct_mi_s_3_value;
+}cdma_2000_description_struct_mi_s_3;
+
+typedef struct cdma_2000_description_struct_mi_s_1{
+ U16 pilot_pn_offset;
+ ispresent cdma_2000_description_struct_mi_s_2_tag;
+ union cdma_2000_description_struct_mi_s_2_value{
+ cdma_2000_description_struct_mi_s_3 m_cdma_2000_description_struct_mi_s_3;
+ }cdma_2000_description_struct_mi_s_2_value;
+}cdma_2000_description_struct_mi_s_1;
+
+/* SEQUENCE cdma 2000 description struct mi */
+typedef struct cdma_2000_description_struct_mi{
+ U8 cdma2000_frequency_band;
+ U16 cdma2000_frequency;
+ U8 number_cdma2000_cells;
+ U16 numElements_m_cdma_2000_description_struct_mi_s_1;
+ cdma_2000_description_struct_mi_s_1 * m_cdma_2000_description_struct_mi_s_1;
+}cdma_2000_description_struct_mi;
+
+/* SEQUENCE rtd6 struct mi */
+typedef struct rtd6_struct_mi{
+ U16 numElements_rtd;
+ U8 * rtd;
+}rtd6_struct_mi;
+
+/* SEQUENCE rtd12 struct mi */
+typedef struct rtd12_struct_mi{
+ U16 numElements_rtd;
+ U16 * rtd;
+}rtd12_struct_mi;
+
+typedef struct bsic_description_struct_s_2{
+ U8 frequency_scrolling;
+ U8 bsic;
+}bsic_description_struct_s_2;
+
+/* SEQUENCE bsic description struct */
+typedef struct bsic_description_struct{
+ ispresent bsic_description_struct_s_1_tag;
+ union bsic_description_struct_s_1_value{
+ U8 ba_index_start_bsic;
+ }bsic_description_struct_s_1_value;
+ U8 bsic;
+ U8 number_remaining_bsic;
+ U16 numElements_m_bsic_description_struct_s_2;
+ bsic_description_struct_s_2 * m_bsic_description_struct_s_2;
+}bsic_description_struct;
+
+/* SEQUENCE report priority description struct */
+typedef struct report_priority_description_struct{
+ U8 number_cells;
+ U16 numElements_rep_priority;
+ U8 * rep_priority;
+}report_priority_description_struct;
+
+typedef struct measurement_parameters_description_struct_s_4{
+ U8 p_900__reporting_offset;
+ U8 p_900__reporting_threshold;
+}measurement_parameters_description_struct_s_4;
+
+typedef struct measurement_parameters_description_struct_s_6{
+ U8 p_1800__reporting_offset;
+ U8 p_1800__reporting_threshold;
+}measurement_parameters_description_struct_s_6;
+
+typedef struct measurement_parameters_description_struct_s_8{
+ U8 p_400__reporting_offset;
+ U8 p_400__reporting_threshold;
+}measurement_parameters_description_struct_s_8;
+
+typedef struct measurement_parameters_description_struct_s_10{
+ U8 p_1900__reporting_offset;
+ U8 p_1900__reporting_threshold;
+}measurement_parameters_description_struct_s_10;
+
+typedef struct measurement_parameters_description_struct_s_12{
+ U8 p_850__reporting_offset;
+ U8 p_850__reporting_threshold;
+}measurement_parameters_description_struct_s_12;
+
+/* SEQUENCE measurement parameters description struct */
+typedef struct measurement_parameters_description_struct{
+ ispresent measurement_parameters_description_struct_s_1_tag;
+ union measurement_parameters_description_struct_s_1_value{
+ U8 multiband_reporting;
+ }measurement_parameters_description_struct_s_1_value;
+ ispresent measurement_parameters_description_struct_s_2_tag;
+ union measurement_parameters_description_struct_s_2_value{
+ U8 serving_band_reporting;
+ }measurement_parameters_description_struct_s_2_value;
+ U8 scale_ord;
+ ispresent measurement_parameters_description_struct_s_3_tag;
+ union measurement_parameters_description_struct_s_3_value{
+ measurement_parameters_description_struct_s_4 m_measurement_parameters_description_struct_s_4;
+ }measurement_parameters_description_struct_s_3_value;
+ ispresent measurement_parameters_description_struct_s_5_tag;
+ union measurement_parameters_description_struct_s_5_value{
+ measurement_parameters_description_struct_s_6 m_measurement_parameters_description_struct_s_6;
+ }measurement_parameters_description_struct_s_5_value;
+ ispresent measurement_parameters_description_struct_s_7_tag;
+ union measurement_parameters_description_struct_s_7_value{
+ measurement_parameters_description_struct_s_8 m_measurement_parameters_description_struct_s_8;
+ }measurement_parameters_description_struct_s_7_value;
+ ispresent measurement_parameters_description_struct_s_9_tag;
+ union measurement_parameters_description_struct_s_9_value{
+ measurement_parameters_description_struct_s_10 m_measurement_parameters_description_struct_s_10;
+ }measurement_parameters_description_struct_s_9_value;
+ ispresent measurement_parameters_description_struct_s_11_tag;
+ union measurement_parameters_description_struct_s_11_value{
+ measurement_parameters_description_struct_s_12 m_measurement_parameters_description_struct_s_12;
+ }measurement_parameters_description_struct_s_11_value;
+}measurement_parameters_description_struct;
+
+typedef struct p_3_g_measurement_parameters_description_struct_mi_s_3{
+ U8 fdd_reporting_offset;
+ U8 fdd_reporting_threshold;
+}p_3_g_measurement_parameters_description_struct_mi_s_3;
+
+typedef struct p_3_g_measurement_parameters_description_struct_mi_s_6{
+ U8 tdd_reporting_offset;
+ U8 tdd_reporting_threshold;
+}p_3_g_measurement_parameters_description_struct_mi_s_6;
+
+typedef struct p_3_g_measurement_parameters_description_struct_mi_s_9{
+ U8 cdma2000_reporting_offset;
+ U8 cdma2000_reporting_threshold;
+}p_3_g_measurement_parameters_description_struct_mi_s_9;
+
+/* SEQUENCE 3 g measurement parameters description struct mi */
+typedef struct p_3_g_measurement_parameters_description_struct_mi{
+ U8 qsearch_c;
+ U8 p_3_g_search_prio;
+ U8 fdd_rep_quant;
+ ispresent p_3_g_measurement_parameters_description_struct_mi_s_1_tag;
+ union p_3_g_measurement_parameters_description_struct_mi_s_1_value{
+ U8 fdd_multirat_reporting;
+ }p_3_g_measurement_parameters_description_struct_mi_s_1_value;
+ ispresent p_3_g_measurement_parameters_description_struct_mi_s_2_tag;
+ union p_3_g_measurement_parameters_description_struct_mi_s_2_value{
+ p_3_g_measurement_parameters_description_struct_mi_s_3 m_p_3_g_measurement_parameters_description_struct_mi_s_3;
+ }p_3_g_measurement_parameters_description_struct_mi_s_2_value;
+ ispresent p_3_g_measurement_parameters_description_struct_mi_s_4_tag;
+ union p_3_g_measurement_parameters_description_struct_mi_s_4_value{
+ U8 tdd_multirat_reporting;
+ }p_3_g_measurement_parameters_description_struct_mi_s_4_value;
+ ispresent p_3_g_measurement_parameters_description_struct_mi_s_5_tag;
+ union p_3_g_measurement_parameters_description_struct_mi_s_5_value{
+ p_3_g_measurement_parameters_description_struct_mi_s_6 m_p_3_g_measurement_parameters_description_struct_mi_s_6;
+ }p_3_g_measurement_parameters_description_struct_mi_s_5_value;
+ ispresent p_3_g_measurement_parameters_description_struct_mi_s_7_tag;
+ union p_3_g_measurement_parameters_description_struct_mi_s_7_value{
+ U8 cdma2000_multirat_reporting;
+ }p_3_g_measurement_parameters_description_struct_mi_s_7_value;
+ ispresent p_3_g_measurement_parameters_description_struct_mi_s_8_tag;
+ union p_3_g_measurement_parameters_description_struct_mi_s_8_value{
+ p_3_g_measurement_parameters_description_struct_mi_s_9 m_p_3_g_measurement_parameters_description_struct_mi_s_9;
+ }p_3_g_measurement_parameters_description_struct_mi_s_8_value;
+}p_3_g_measurement_parameters_description_struct_mi;
+
+/* SEQUENCE 3 g additional measurement parameters description 2 struct */
+typedef struct p_3_g_additional_measurement_parameters_description_2_struct{
+ ispresent p_3_g_additional_measurement_parameters_description_2_struct_s_0_tag;
+ union p_3_g_additional_measurement_parameters_description_2_struct_s_0_value{
+ U8 fdd_reporting_threshold_2;
+ }p_3_g_additional_measurement_parameters_description_2_struct_s_0_value;
+}p_3_g_additional_measurement_parameters_description_2_struct;
+
+/* SEQUENCE repeated utran measurement control parameters struct */
+typedef struct repeated_utran_measurement_control_parameters_struct{
+ U16 numElements_utran_frequency_index;
+ U8 * utran_frequency_index;
+ U8 measurement_control_utran;
+}repeated_utran_measurement_control_parameters_struct;
+
+typedef struct not_allowed_cells_struct_s_3{
+ U8 pcid_pattern_length;
+ U16 numElements_pcid_pattern;
+ U8 * pcid_pattern;
+ U8 pcid_pattern_sense;
+}not_allowed_cells_struct_s_3;
+
+/* SEQUENCE not allowed cells struct */
+typedef struct not_allowed_cells_struct{
+ U16 numElements_pcid;
+ U16 * pcid;
+ ispresent not_allowed_cells_struct_s_2_tag;
+ union not_allowed_cells_struct_s_2_value{
+ U8 pcid_bitmap_group;
+ }not_allowed_cells_struct_s_2_value;
+ U16 numElements_m_not_allowed_cells_struct_s_3;
+ not_allowed_cells_struct_s_3 * m_not_allowed_cells_struct_s_3;
+}not_allowed_cells_struct;
+
+/* SEQUENCE cs serving cell data struct */
+typedef struct cs_serving_cell_data_struct{
+ U8 dtx_used;
+ U8 rxlev_val;
+ U8 rx_qual_full;
+ U8 mean_bep;
+ U8 cv_bep;
+ U8 nbr_rcvd_blocks;
+}cs_serving_cell_data_struct;
+
+/* SEQUENCE repeated invalid_bsic_information struct */
+typedef struct repeated_invalid_bsic_information_struct{
+ U8 bcch_freq_ncell;
+ U8 bsic;
+ U8 rxlev_ncell;
+}repeated_invalid_bsic_information_struct;
+
+typedef struct e_utran_measurement_report_struct_s_1{
+ U8 e_utran_frequency_index;
+ U16 cell_identity;
+ U8 reporting_quantity;
+}e_utran_measurement_report_struct_s_1;
+
+/* SEQUENCE e-utran measurement report struct */
+typedef struct e_utran_measurement_report_struct{
+ U8 n_e_utran;
+ U16 numElements_m_e_utran_measurement_report_struct_s_1;
+ e_utran_measurement_report_struct_s_1 * m_e_utran_measurement_report_struct_s_1;
+}e_utran_measurement_report_struct;
+
+typedef U8 extended_measurement_report_type_struct;
+
+/* SEQUENCE gas_extended_meas_results_struct */
+typedef struct gas_extended_meas_results_struct{
+ U8 sc_used;
+ U8 dtx_used;
+ U8 rxlev_carrier0;
+ U8 rxlev_carrier1;
+ U8 rxlev_carrier2;
+ U8 rxlev_carrier3;
+ U8 rxlev_carrier4;
+ U8 rxlev_carrier5;
+ U8 rxlev_carrier6;
+ U8 rxlev_carrier7;
+ U8 rxlev_carrier8;
+ U8 rxlev_carrier9;
+ U8 rxlev_carrier10;
+ U8 rxlev_carrier11;
+ U8 rxlev_carrier12;
+ U8 rxlev_carrier13;
+ U8 rxlev_carrier14;
+ U8 rxlev_carrier15;
+ U8 rxlev_carrier16;
+ U8 rxlev_carrier17;
+ U8 rxlev_carrier18;
+ U8 rxlev_carrier19;
+ U8 rxlev_carrier20;
+}gas_extended_meas_results_struct;
+
+typedef U8 measurement_report_type_struct;
+
+/* SEQUENCE ncell report struct */
+typedef struct ncell_report_struct{
+ U8 rxlev_ncell;
+ U8 bcch_freq_ncell;
+ U8 bsic_ncell;
+}ncell_report_struct;
+
+typedef U8 gprs_suspension_req_type_struct;
+
+typedef U32 gas_tlli_struct;
+
+/* SEQUENCE gas_rai_struct */
+typedef struct gas_rai_struct{
+ U8 mcc_digit2;
+ U8 mcc_digit1;
+ U8 mnc_digit3;
+ U8 mcc_digit3;
+ U8 mnc_digit2;
+ U8 mnc_digit1;
+ U8 lac;
+ U8 rac;
+}gas_rai_struct;
+
+typedef U8 gas_suspension_cause_struct;
+
+typedef U8 handover_failure_type_struct;
+
+typedef U8 handover_complete_type_struct;
+
+/* SEQUENCE gas_mobile_time_difference_struct */
+typedef struct gas_mobile_time_difference_struct{
+ U32 otd_value;
+}gas_mobile_time_difference_struct;
+
+#if 0
+/* under construction !*/
+#endif
+
+typedef U8 assignment_complete_type_struct;
+
+typedef U8 gas_rr_cause_struct;
+
+typedef U8 paging_response_type_struct;
+
+/* DEFINED gas_spare_bit_struct */
+typedef struct gas_spare_bit_struct{
+ U8 nousebit;
+}gas_spare_bit_struct;
+
+typedef U8 gas_ciphering_key_sn_struct;
+
+/* SEQUENCE gas_ms_classmark_struct */
+typedef struct gas_ms_classmark_struct{
+ U8 length;
+ U8 revision_level;
+ U8 es_ind;
+ U8 a5_1;
+ U8 rf_capability;
+ U8 ps_capa;
+ U8 ss_screen_ind;
+ U8 sm_capabi;
+ U8 vbs;
+ U8 vgcs;
+ U8 fc;
+ U8 cm3;
+ U8 lcs_cap;
+ U8 ucs2;
+ U8 solsa;
+ U8 cmsp;
+ U8 a5_3;
+ U8 a5_2;
+}gas_ms_classmark_struct;
+
+typedef struct gas_additional_update_parameter_struct{
+ U8 IEI;
+ U8 CSMO;
+ U8 CSMT;
+}gas_additional_update_parameter_struct;
+
+/* SEQUENCE gas_l2_pseudo_length_struct */
+typedef struct gas_l2_pseudo_length_struct{
+ U8 length;
+ U8 fixed_valuefield;
+}gas_l2_pseudo_length_struct;
+
+typedef U8 gas_skip_indicator_struct;
+
+typedef U8 gas_protocol_disc_struct;
+
+typedef U8 paging_request_struct;
+
+/* SEQUENCE gas_channels_needed_struct */
+typedef struct gas_channels_needed_struct{
+ U8 channel_second;
+ U8 channel_first;
+}gas_channels_needed_struct;
+
+/* SEQUENCE gas_page_mode_struct */
+typedef struct gas_page_mode_struct{
+ U8 page_mode;
+}gas_page_mode_struct;
+
+/* SEQUENCE gas_mobile_identity_struct_2 */
+typedef struct gas_mobile_identity_struct_2{
+ U8 digit0;
+ U8 odd_or_even;
+ U8 identity_type;
+ U16 numElements_digit_byte;
+ U8 * digit_byte;
+}gas_mobile_identity_struct_2;
+
+/* SEQUENCE gas_nln_status_struct */
+typedef struct gas_nln_status_struct{
+ U8 pch;
+ U8 status;
+}gas_nln_status_struct;
+
+/* SEQUENCE hcs struct 1 */
+typedef struct hcs_struct_1{
+ U8 priority_class;
+ U8 hcs_thr;
+}hcs_struct_1;
+
+typedef enum {
+ UPLINK_TFI,
+ DOWNLINK_TFI
+}global_tfi_ie_s_0_enum;
+
+/* SEQUENCE global tfi ie */
+typedef struct global_tfi_ie{
+ global_tfi_ie_s_0_enum global_tfi_ie_s_0_tag;
+ union global_tfi_ie_s_0_value{
+ U8 uplink_tfi;
+ U8 downlink_tfi;
+ }global_tfi_ie_s_0_value;
+}global_tfi_ie;
+
+/* SEQUENCE packet request reference ie */
+typedef struct packet_request_reference_ie{
+ U16 random_access_information_value;
+ U16 frame_number;
+}packet_request_reference_ie;
+
+typedef struct packet_timing_advance_ie_s_3{
+ U8 timing_advance_index;
+ U8 timing_advance_timeslot_number;
+}packet_timing_advance_ie_s_3;
+
+/* SEQUENCE packet timing advance ie */
+typedef struct packet_timing_advance_ie{
+ ispresent packet_timing_advance_ie_s_1_tag;
+ union packet_timing_advance_ie_s_1_value{
+ U8 timing_advance_value;
+ }packet_timing_advance_ie_s_1_value;
+ ispresent packet_timing_advance_ie_s_2_tag;
+ union packet_timing_advance_ie_s_2_value{
+ packet_timing_advance_ie_s_3 m_packet_timing_advance_ie_s_3;
+ }packet_timing_advance_ie_s_2_value;
+}packet_timing_advance_ie;
+
+/* SEQUENCE compact reduced ma ie */
+typedef struct compact_reduced_ma_ie{
+ U8 length_of_reduced_ma_bitmap;
+ U16 numElements_reduced_ma_bitmap;
+ U8 * reduced_ma_bitmap;
+ ispresent compact_reduced_ma_ie_s_1_tag;
+ union compact_reduced_ma_ie_s_1_value{
+ U8 maio_2;
+ }compact_reduced_ma_ie_s_1_value;
+}compact_reduced_ma_ie;
+
+typedef struct indirect_encoding_struct_s_2{
+ U8 change_mark_1;
+ ispresent indirect_encoding_struct_s_3_tag;
+ union indirect_encoding_struct_s_3_value{
+ U8 change_mark_2;
+ }indirect_encoding_struct_s_3_value;
+}indirect_encoding_struct_s_2;
+
+/* SEQUENCE indirect encoding struct */
+typedef struct indirect_encoding_struct{
+ U8 maio;
+ U8 ma_number;
+ ispresent indirect_encoding_struct_s_1_tag;
+ union indirect_encoding_struct_s_1_value{
+ indirect_encoding_struct_s_2 m_indirect_encoding_struct_s_2;
+ }indirect_encoding_struct_s_1_value;
+}indirect_encoding_struct;
+
+/* SEQUENCE direct encoding 2 struct */
+typedef struct direct_encoding_2_struct{
+ U8 maio;
+ U8 hsn;
+ U8 length_of_ma_frequency_list_contents;
+ U16 numElements_ma_frequency_list_contents;
+ U8 * ma_frequency_list_contents;
+}direct_encoding_2_struct;
+
+typedef enum {
+ GPRS_MOBILE_ALLOCATION_IE_S_3,
+ GPRS_MOBILE_ALLOCATION_IE_S_4
+}gprs_mobile_allocation_ie_s_2_enum;
+
+typedef struct gprs_mobile_allocation_ie_s_3{
+ U8 ma_length;
+ U16 numElements_ma_bitmap;
+ U8 * ma_bitmap;
+}gprs_mobile_allocation_ie_s_3;
+
+typedef struct gprs_mobile_allocation_ie_s_4{
+ ispresent gprs_mobile_allocation_ie_s_4_tag;
+ union gprs_mobile_allocation_ie_s_4_value{
+ struct arfcn_index_list_struct_1 * arfcn_index_list;
+ }gprs_mobile_allocation_ie_s_4_value;
+}gprs_mobile_allocation_ie_s_4;
+
+/* SEQUENCE gprs mobile allocation ie */
+typedef struct gprs_mobile_allocation_ie{
+ U8 hsn;
+ ispresent gprs_mobile_allocation_ie_s_1_tag;
+ union gprs_mobile_allocation_ie_s_1_value{
+ struct rfl_number_list_struct_1 * rfl_number_list;
+ }gprs_mobile_allocation_ie_s_1_value;
+ gprs_mobile_allocation_ie_s_2_enum gprs_mobile_allocation_ie_s_2_tag;
+ union gprs_mobile_allocation_ie_s_2_value{
+ gprs_mobile_allocation_ie_s_3 m_gprs_mobile_allocation_ie_s_3;
+ gprs_mobile_allocation_ie_s_4 m_gprs_mobile_allocation_ie_s_4;
+ }gprs_mobile_allocation_ie_s_2_value;
+}gprs_mobile_allocation_ie;
+
+/* SEQUENCE rfl number list struct 1 */
+typedef struct rfl_number_list_struct_1{
+ U8 rfl_number;
+ ispresent rfl_number_list_struct_1_s_1_tag;
+ union rfl_number_list_struct_1_s_1_value{
+ struct rfl_number_list_struct_1 * m_rfl_number_list_struct_1;
+ }rfl_number_list_struct_1_s_1_value;
+}rfl_number_list_struct_1;
+
+/* SEQUENCE arfcn index list struct 1 */
+typedef struct arfcn_index_list_struct_1{
+ U8 arfcn_index;
+ ispresent arfcn_index_list_struct_1_s_1_tag;
+ union arfcn_index_list_struct_1_s_1_value{
+ struct arfcn_index_list_struct_1 * m_arfcn_index_list_struct_1;
+ }arfcn_index_list_struct_1_s_1_value;
+}arfcn_index_list_struct_1;
+
+/* SEQUENCE utran fdd target cell ie */
+typedef struct utran_fdd_target_cell_ie{
+ U16 fdd_arfcn;
+ U8 diversity;
+ ispresent utran_fdd_target_cell_ie_s_1_tag;
+ union utran_fdd_target_cell_ie_s_1_value{
+ U8 bandwidth_fdd;
+ }utran_fdd_target_cell_ie_s_1_value;
+ U16 scrambling_code;
+}utran_fdd_target_cell_ie;
+
+/* SEQUENCE utran tdd target cell ie */
+typedef struct utran_tdd_target_cell_ie{
+ U16 tdd_arfcn;
+ U8 diversity_tdd;
+ ispresent utran_tdd_target_cell_ie_s_1_tag;
+ union utran_tdd_target_cell_ie_s_1_value{
+ U8 bandwidth_tdd;
+ }utran_tdd_target_cell_ie_s_1_value;
+ U8 cell_parameter;
+ U8 sync_case_tstd;
+}utran_tdd_target_cell_ie;
+
+typedef enum {
+ LSA_ID,
+ SHORTLSA_ID
+}lsa_id_information_struct_s_2_enum;
+
+typedef struct lsa_id_information_struct_s_1{
+ lsa_id_information_struct_s_2_enum lsa_id_information_struct_s_2_tag;
+ union lsa_id_information_struct_s_2_value{
+ U32 lsa_id;
+ U16 shortlsa_id;
+ }lsa_id_information_struct_s_2_value;
+}lsa_id_information_struct_s_1;
+
+/* SEQUENCE lsa id information struct */
+typedef struct lsa_id_information_struct{
+ U16 numElements_m_lsa_id_information_struct_s_1;
+ lsa_id_information_struct_s_1 * m_lsa_id_information_struct_s_1;
+}lsa_id_information_struct;
+
+typedef struct power_control_parameters_ie_s_1{
+ ispresent power_control_parameters_ie_s_1_tag;
+ union power_control_parameters_ie_s_1_value{
+ U8 gamma_tn;
+ }power_control_parameters_ie_s_1_value;
+}power_control_parameters_ie_s_1;
+
+/* SEQUENCE power control parameters ie */
+typedef struct power_control_parameters_ie{
+ U8 alpha;
+ power_control_parameters_ie_s_1 m_power_control_parameters_ie_s_1[8];
+}power_control_parameters_ie;
+
+typedef struct removed_3gcell_description_struct_s_2{
+ U8 removed_3gcell_index;
+ U8 p_3_g_cell_diff_length;
+ U16 numElements_p_3_gcell_diff;
+ U8 * p_3_gcell_diff;
+}removed_3gcell_description_struct_s_2;
+
+typedef struct removed_3gcell_description_struct_s_1{
+ U8 n2;
+ U16 numElements_m_removed_3gcell_description_struct_s_2;
+ removed_3gcell_description_struct_s_2 * m_removed_3gcell_description_struct_s_2;
+}removed_3gcell_description_struct_s_1;
+
+/* SEQUENCE removed_3gcell_description struct */
+typedef struct removed_3gcell_description_struct{
+ U8 n1;
+ U16 numElements_m_removed_3gcell_description_struct_s_1;
+ removed_3gcell_description_struct_s_1 * m_removed_3gcell_description_struct_s_1;
+}removed_3gcell_description_struct;
+
+/* SEQUENCE repeated utran fdd neighbour cells struct */
+typedef struct repeated_utran_fdd_neighbour_cells_struct{
+ U16 fdd_arfcn;
+ U8 fdd_indic0;
+ U8 nr_of_fdd_cells;
+ U16 numElements_fdd_cell_information_field;
+ U8 * fdd_cell_information_field;
+}repeated_utran_fdd_neighbour_cells_struct;
+
+/* SEQUENCE repeated utran tdd neighbour cells struct */
+typedef struct repeated_utran_tdd_neighbour_cells_struct{
+ U8 tdd_indic0;
+ U16 tdd_arfcn;
+ U8 nr_of_tdd_cells;
+ U16 numElements_tdd_cell_information_field;
+ U8 * tdd_cell_information_field;
+}repeated_utran_tdd_neighbour_cells_struct;
+
+/* SEQUENCE gprs rep priority description struct */
+typedef struct gprs_rep_priority_description_struct{
+ U8 number_cells;
+ U16 numElements_rep_priority;
+ U8 * rep_priority;
+}gprs_rep_priority_description_struct;
+
+typedef struct gprs_measurement_parameters_description_struct_s_4{
+ U8 p_900__reporting_offset;
+ U8 p_900__reporting_threshold;
+}gprs_measurement_parameters_description_struct_s_4;
+
+typedef struct gprs_measurement_parameters_description_struct_s_6{
+ U8 p_1800__reporting_offset;
+ U8 p_1800__reporting_threshold;
+}gprs_measurement_parameters_description_struct_s_6;
+
+typedef struct gprs_measurement_parameters_description_struct_s_8{
+ U8 p_400__reporting_offset;
+ U8 p_400__reporting_threshold;
+}gprs_measurement_parameters_description_struct_s_8;
+
+typedef struct gprs_measurement_parameters_description_struct_s_10{
+ U8 p_1900__reporting_offset;
+ U8 p_1900__reporting_threshold;
+}gprs_measurement_parameters_description_struct_s_10;
+
+typedef struct gprs_measurement_parameters_description_struct_s_12{
+ U8 p_850__reporting_offset;
+ U8 p_850__reporting_threshold;
+}gprs_measurement_parameters_description_struct_s_12;
+
+/* SEQUENCE gprs measurement parameters description struct */
+typedef struct gprs_measurement_parameters_description_struct{
+ ispresent gprs_measurement_parameters_description_struct_s_1_tag;
+ union gprs_measurement_parameters_description_struct_s_1_value{
+ U8 multiband_reporting;
+ }gprs_measurement_parameters_description_struct_s_1_value;
+ ispresent gprs_measurement_parameters_description_struct_s_2_tag;
+ union gprs_measurement_parameters_description_struct_s_2_value{
+ U8 serving_band_reporting;
+ }gprs_measurement_parameters_description_struct_s_2_value;
+ U8 scale_ord;
+ ispresent gprs_measurement_parameters_description_struct_s_3_tag;
+ union gprs_measurement_parameters_description_struct_s_3_value{
+ gprs_measurement_parameters_description_struct_s_4 m_gprs_measurement_parameters_description_struct_s_4;
+ }gprs_measurement_parameters_description_struct_s_3_value;
+ ispresent gprs_measurement_parameters_description_struct_s_5_tag;
+ union gprs_measurement_parameters_description_struct_s_5_value{
+ gprs_measurement_parameters_description_struct_s_6 m_gprs_measurement_parameters_description_struct_s_6;
+ }gprs_measurement_parameters_description_struct_s_5_value;
+ ispresent gprs_measurement_parameters_description_struct_s_7_tag;
+ union gprs_measurement_parameters_description_struct_s_7_value{
+ gprs_measurement_parameters_description_struct_s_8 m_gprs_measurement_parameters_description_struct_s_8;
+ }gprs_measurement_parameters_description_struct_s_7_value;
+ ispresent gprs_measurement_parameters_description_struct_s_9_tag;
+ union gprs_measurement_parameters_description_struct_s_9_value{
+ gprs_measurement_parameters_description_struct_s_10 m_gprs_measurement_parameters_description_struct_s_10;
+ }gprs_measurement_parameters_description_struct_s_9_value;
+ ispresent gprs_measurement_parameters_description_struct_s_11_tag;
+ union gprs_measurement_parameters_description_struct_s_11_value{
+ gprs_measurement_parameters_description_struct_s_12 m_gprs_measurement_parameters_description_struct_s_12;
+ }gprs_measurement_parameters_description_struct_s_11_value;
+}gprs_measurement_parameters_description_struct;
+
+typedef struct gprs_3_g_measurement_parameters_bis_description_struct_s_2{
+ U8 fdd_rep_quant;
+ U8 fdd_multirat_reporting;
+}gprs_3_g_measurement_parameters_bis_description_struct_s_2;
+
+typedef struct gprs_3_g_measurement_parameters_bis_description_struct_s_4{
+ U8 fdd_reporting_offset;
+ U8 fdd_reporting_threshold;
+}gprs_3_g_measurement_parameters_bis_description_struct_s_4;
+
+typedef struct gprs_3_g_measurement_parameters_bis_description_struct_s_7{
+ U8 tdd_reporting_offset;
+ U8 tdd_reporting_threshold;
+}gprs_3_g_measurement_parameters_bis_description_struct_s_7;
+
+typedef struct gprs_3_g_measurement_parameters_bis_description_struct_s_10{
+ U8 cdma2000_reporting_offset;
+ U8 cdma2000_reporting_threshold;
+}gprs_3_g_measurement_parameters_bis_description_struct_s_10;
+
+/* SEQUENCE gprs 3 g measurement parameters bis description struct */
+typedef struct gprs_3_g_measurement_parameters_bis_description_struct{
+ U8 qsearch_p;
+ U8 p_3_g_search_prio;
+ ispresent gprs_3_g_measurement_parameters_bis_description_struct_s_1_tag;
+ union gprs_3_g_measurement_parameters_bis_description_struct_s_1_value{
+ gprs_3_g_measurement_parameters_bis_description_struct_s_2 m_gprs_3_g_measurement_parameters_bis_description_struct_s_2;
+ }gprs_3_g_measurement_parameters_bis_description_struct_s_1_value;
+ ispresent gprs_3_g_measurement_parameters_bis_description_struct_s_3_tag;
+ union gprs_3_g_measurement_parameters_bis_description_struct_s_3_value{
+ gprs_3_g_measurement_parameters_bis_description_struct_s_4 m_gprs_3_g_measurement_parameters_bis_description_struct_s_4;
+ }gprs_3_g_measurement_parameters_bis_description_struct_s_3_value;
+ ispresent gprs_3_g_measurement_parameters_bis_description_struct_s_5_tag;
+ union gprs_3_g_measurement_parameters_bis_description_struct_s_5_value{
+ U8 tdd_multirat_reporting;
+ }gprs_3_g_measurement_parameters_bis_description_struct_s_5_value;
+ ispresent gprs_3_g_measurement_parameters_bis_description_struct_s_6_tag;
+ union gprs_3_g_measurement_parameters_bis_description_struct_s_6_value{
+ gprs_3_g_measurement_parameters_bis_description_struct_s_7 m_gprs_3_g_measurement_parameters_bis_description_struct_s_7;
+ }gprs_3_g_measurement_parameters_bis_description_struct_s_6_value;
+ ispresent gprs_3_g_measurement_parameters_bis_description_struct_s_8_tag;
+ union gprs_3_g_measurement_parameters_bis_description_struct_s_8_value{
+ U8 cdma2000_multirat_reporting;
+ }gprs_3_g_measurement_parameters_bis_description_struct_s_8_value;
+ ispresent gprs_3_g_measurement_parameters_bis_description_struct_s_9_tag;
+ union gprs_3_g_measurement_parameters_bis_description_struct_s_9_value{
+ gprs_3_g_measurement_parameters_bis_description_struct_s_10 m_gprs_3_g_measurement_parameters_bis_description_struct_s_10;
+ }gprs_3_g_measurement_parameters_bis_description_struct_s_9_value;
+}gprs_3_g_measurement_parameters_bis_description_struct;
+
+/* SEQUENCE ccn support description struct */
+typedef struct ccn_support_description_struct{
+ U8 number_cells;
+ U16 numElements_ccn_supported;
+ U8 * ccn_supported;
+}ccn_support_description_struct;
+
+/* SEQUENCE gprs 3 g additional measurement parameters description 2 struct */
+typedef struct gprs_3_g_additional_measurement_parameters_description_2_struct{
+ ispresent gprs_3_g_additional_measurement_parameters_description_2_struct_s_0_tag;
+ union gprs_3_g_additional_measurement_parameters_description_2_struct_s_0_value{
+ U8 fdd_reporting_threshold_2;
+ }gprs_3_g_additional_measurement_parameters_description_2_struct_s_0_value;
+}gprs_3_g_additional_measurement_parameters_description_2_struct;
+
+typedef enum {
+ CDMA2000_DESCRIPTION_STRUCT_S_4,
+ CDMA2000_DESCRIPTION_STRUCT_S_5,
+ CDMA2000_DESCRIPTION_STRUCT_S_6,
+ CDMA2000_DESCRIPTION_STRUCT_S_7,
+ CDMA2000_DESCRIPTION_STRUCT_S_8
+}cdma2000_description_struct_s_3_enum;
+
+typedef struct cdma2000_description_struct_s_4{
+ U8 td_mode;
+ U8 td_power_level;
+}cdma2000_description_struct_s_4;
+
+typedef struct cdma2000_description_struct_s_5{
+ U8 qof;
+ U8 walsh_len_a;
+ U16 numElements_aux_pilot_walsh;
+ U8 * aux_pilot_walsh;
+}cdma2000_description_struct_s_5;
+
+typedef struct cdma2000_description_struct_s_6{
+ U8 qof;
+ U8 walsh_len_b;
+ U16 numElements_aux_td_walsh;
+ U8 * aux_td_walsh;
+ U8 aux_td_power_level;
+ U8 td_mode;
+}cdma2000_description_struct_s_6;
+
+typedef struct cdma2000_description_struct_s_7{
+ U8 sr3_prim_pilot;
+ U8 sr3_pilot_power1;
+ U8 sr3_pilot_power2;
+}cdma2000_description_struct_s_7;
+
+typedef struct cdma2000_description_struct_s_10{
+ U8 qof1;
+ U8 walsh_length1;
+ U16 numElements_aux_pilot_walsh1;
+ U8 * aux_pilot_walsh1;
+}cdma2000_description_struct_s_10;
+
+typedef struct cdma2000_description_struct_s_12{
+ U8 qof2;
+ U8 walsh_length2;
+ U16 numElements_aux_pilot_walsh2;
+ U8 * aux_pilot_walsh2;
+}cdma2000_description_struct_s_12;
+
+typedef struct cdma2000_description_struct_s_8{
+ U8 sr3_prim_pilot;
+ U8 sr3_pilot_power1;
+ U8 sr3_pilot_power2;
+ U8 qof;
+ U8 walsh_len_c;
+ U16 numElements_aux_walsh_len;
+ U8 * aux_walsh_len;
+ ispresent cdma2000_description_struct_s_9_tag;
+ union cdma2000_description_struct_s_9_value{
+ cdma2000_description_struct_s_10 m_cdma2000_description_struct_s_10;
+ }cdma2000_description_struct_s_9_value;
+ ispresent cdma2000_description_struct_s_11_tag;
+ union cdma2000_description_struct_s_11_value{
+ cdma2000_description_struct_s_12 m_cdma2000_description_struct_s_12;
+ }cdma2000_description_struct_s_11_value;
+}cdma2000_description_struct_s_8;
+
+typedef struct cdma2000_description_struct_s_3{
+ cdma2000_description_struct_s_3_enum cdma2000_description_struct_s_3_tag;
+ union cdma2000_description_struct_s_3_value{
+ cdma2000_description_struct_s_4 m_cdma2000_description_struct_s_4;
+ cdma2000_description_struct_s_5 m_cdma2000_description_struct_s_5;
+ cdma2000_description_struct_s_6 m_cdma2000_description_struct_s_6;
+ cdma2000_description_struct_s_7 m_cdma2000_description_struct_s_7;
+ cdma2000_description_struct_s_8 m_cdma2000_description_struct_s_8;
+ }cdma2000_description_struct_s_3_value;
+}cdma2000_description_struct_s_3;
+
+typedef struct cdma2000_description_struct_s_1{
+ U16 pilot_pn_offset;
+ ispresent cdma2000_description_struct_s_2_tag;
+ union cdma2000_description_struct_s_2_value{
+ cdma2000_description_struct_s_3 m_cdma2000_description_struct_s_3;
+ }cdma2000_description_struct_s_2_value;
+}cdma2000_description_struct_s_1;
+
+/* SEQUENCE cdma2000 description struct */
+typedef struct cdma2000_description_struct{
+ U8 cdma2000_frequency_band;
+ U16 cdma2000_frequency;
+ U8 number_cdma2000_cells;
+ U16 numElements_m_cdma2000_description_struct_s_1;
+ cdma2000_description_struct_s_1 * m_cdma2000_description_struct_s_1;
+}cdma2000_description_struct;
+
+/* SEQUENCE global power control parameters ie */
+typedef struct global_power_control_parameters_ie{
+ U8 alpha;
+ U8 t_avg_w;
+ U8 t_avg_t;
+ U8 pb;
+ U8 pc_meas_chan;
+ U8 int_meas_channel_list_avail;
+ U8 n_avg_i;
+}global_power_control_parameters_ie;
+
+typedef struct global_packet_timing_advance_ie_s_3{
+ U8 uplink_timing_advance_index;
+ U8 uplink_timing_advance_timeslot_number;
+}global_packet_timing_advance_ie_s_3;
+
+typedef struct global_packet_timing_advance_ie_s_5{
+ U8 downlink_timing_advance_index;
+ U8 downlink_timing_advance_timeslot_number;
+}global_packet_timing_advance_ie_s_5;
+
+/* SEQUENCE global packet timing advance ie */
+typedef struct global_packet_timing_advance_ie{
+ ispresent global_packet_timing_advance_ie_s_1_tag;
+ union global_packet_timing_advance_ie_s_1_value{
+ U8 timing_advance_value;
+ }global_packet_timing_advance_ie_s_1_value;
+ ispresent global_packet_timing_advance_ie_s_2_tag;
+ union global_packet_timing_advance_ie_s_2_value{
+ global_packet_timing_advance_ie_s_3 m_global_packet_timing_advance_ie_s_3;
+ }global_packet_timing_advance_ie_s_2_value;
+ ispresent global_packet_timing_advance_ie_s_4_tag;
+ union global_packet_timing_advance_ie_s_4_value{
+ global_packet_timing_advance_ie_s_5 m_global_packet_timing_advance_ie_s_5;
+ }global_packet_timing_advance_ie_s_4_value;
+}global_packet_timing_advance_ie;
+
+typedef enum {
+ CONTAINER_DATA,
+ CONTAINER_DATA_1,
+ M_PADDING_BITS
+}exclusion_choice_enum;
+
+typedef struct container_data{
+ U16 numElements_container_data;
+ U8 * container_data;
+}container_data;
+
+typedef struct container_data_1{
+ U16 numElements_container_data_1;
+ U8 * container_data_1;
+}container_data_1;
+
+/* SEQUENCE container repetition struct */
+typedef struct container_repetition_struct{
+ U8 pd;
+ exclusion_choice_enum exclusion_choice_tag;
+ U8 cd_length;
+ union exclusion_choice_value{
+ container_data m_container_data;
+ container_data_1 m_container_data_1;
+ }exclusion_choice_value;
+}container_repetition_struct;
+
+typedef struct extension_information_for_gprs_s_3{
+ U8 egprs_packet_channel_request;
+ U8 bep_period;
+}extension_information_for_gprs_s_3;
+
+typedef struct extension_information_for_gprs_s_7{
+ U8 dedicated_mode_mbms_notification_support;
+ U8 mnci_support;
+}extension_information_for_gprs_s_7;
+
+/* SEQUENCE extension information for gprs */
+typedef struct extension_information_for_gprs{
+ Bool is_extension_information_for_gprs_s_1_present; //truncation or optional
+ ispresent extension_information_for_gprs_s_2_tag;
+ union extension_information_for_gprs_s_2_value{
+ extension_information_for_gprs_s_3 m_extension_information_for_gprs_s_3;
+ }extension_information_for_gprs_s_2_value;
+ U8 pfc_feature_mode;
+ U8 dtm_support;
+ U8 bss_paging_coordination;
+ Bool is_extension_information_for_gprs_s_4_present; //truncation or optional
+ U8 ccn_active;
+ U8 nw_ext_utbf;
+ Bool is_extension_information_for_gprs_s_5_present; //truncation or optional
+ U8 multiple_tbf_capability;
+ U8 ext_utbf_no_data;
+ U8 dtm_enhancements_capability;
+ ispresent extension_information_for_gprs_s_6_tag;
+ union extension_information_for_gprs_s_6_value{
+ extension_information_for_gprs_s_7 m_extension_information_for_gprs_s_7;
+ }extension_information_for_gprs_s_6_value;
+}extension_information_for_gprs;
+
+/* SEQUENCE pccch organization parameters ie */
+typedef struct pccch_organization_parameters_ie{
+ U8 bs_pcc_rel;
+ U8 bs_pbcch_blks;
+ U8 bs_pag_blks_res;
+ U8 bs_prach_blks;
+}pccch_organization_parameters_ie;
+
+/* SEQUENCE cell identification ie */
+typedef struct cell_identification_ie{
+ U8 location_area_identification_ie[5];
+ U8 rac;
+ U8 cell_identity_ie[2];
+}cell_identification_ie;
+
+/* SEQUENCE extension information for non gprs */
+typedef struct extension_information_for_non_gprs{
+ U8 ecsc;
+ U8 p_3_g_ecsr;
+}extension_information_for_non_gprs;
+
+typedef enum {
+ SI13_LOCATION,
+ SI13_PBCCH_LOCATION_STRUCT_1_S_1
+}si13_pbcch_location_struct_1_s_0_enum;
+
+typedef struct si13_pbcch_location_struct_1_s_1{
+ U8 pbcch_location;
+ U8 psi1_repeat_period;
+}si13_pbcch_location_struct_1_s_1;
+
+/* SEQUENCE si13_pbcch_location struct 1 */
+typedef struct si13_pbcch_location_struct_1{
+ si13_pbcch_location_struct_1_s_0_enum si13_pbcch_location_struct_1_s_0_tag;
+ union si13_pbcch_location_struct_1_s_0_value{
+ U8 si13_location;
+ si13_pbcch_location_struct_1_s_1 m_si13_pbcch_location_struct_1_s_1;
+ }si13_pbcch_location_struct_1_s_0_value;
+}si13_pbcch_location_struct_1;
+
+typedef struct cell_selection_struct_2_s_2{
+ U8 gprs_rxlev_access_min;
+ U8 gprs_ms_txpwr_max_cch;
+}cell_selection_struct_2_s_2;
+
+typedef struct cell_selection_struct_2_s_4{
+ U8 gprs_temporary_offset;
+ U8 gprs_penalty_time;
+}cell_selection_struct_2_s_4;
+
+/* SEQUENCE cell selection struct 2 */
+typedef struct cell_selection_struct_2{
+ U8 bsic;
+ U8 cell_bar_access_2;
+ U8 exc_acc;
+ U8 same_ra_as_serving_cell;
+ ispresent cell_selection_struct_2_s_1_tag;
+ union cell_selection_struct_2_s_1_value{
+ cell_selection_struct_2_s_2 m_cell_selection_struct_2_s_2;
+ }cell_selection_struct_2_s_1_value;
+ ispresent cell_selection_struct_2_s_3_tag;
+ union cell_selection_struct_2_s_3_value{
+ cell_selection_struct_2_s_4 m_cell_selection_struct_2_s_4;
+ }cell_selection_struct_2_s_3_value;
+ ispresent cell_selection_struct_2_s_5_tag;
+ union cell_selection_struct_2_s_5_value{
+ U8 gprs_reselect_offset;
+ }cell_selection_struct_2_s_5_value;
+ ispresent cell_selection_struct_2_s_6_tag;
+ union cell_selection_struct_2_s_6_value{
+ hcs_struct_1 hcs_params;
+ }cell_selection_struct_2_s_6_value;
+ ispresent cell_selection_struct_2_s_7_tag;
+ union cell_selection_struct_2_s_7_value{
+ si13_pbcch_location_struct_1 si13_pbcch_location;
+ }cell_selection_struct_2_s_7_value;
+}cell_selection_struct_2;
+
+/* SEQUENCE gprs power control parameters struct */
+typedef struct gprs_power_control_parameters_struct{
+ U8 alpha;
+ U8 t_avg_w;
+ U8 t_avg_t;
+ U8 pc_meas_chan;
+ U8 n_avg_i;
+}gprs_power_control_parameters_struct;
+
+/* SEQUENCE ack/nack description ie */
+typedef struct ack_nack_description_ie{
+ U8 final_ack_indication;
+ U8 starting_sequence_number;
+ U16 numElements_received_block_bitmap;
+ U8 * received_block_bitmap;
+}ack_nack_description_ie;
+
+typedef struct egprs_ack_nack_description_struct_s_2{
+ U8 compressed_bitmap_length;
+ U8 compressed_bitmap_starting_color_code;
+ U16 numElements_compressed_received_block_bitmap;
+ U8 * compressed_received_block_bitmap;
+}egprs_ack_nack_description_struct_s_2;
+
+/* SEQUENCE egprs ack/nack description struct */
+typedef struct egprs_ack_nack_description_struct{
+ U8 final_ack_indication;
+ U8 beginning_of_window;
+ U8 end_of_window;
+ U16 starting_sequence_number;
+ ispresent egprs_ack_nack_description_struct_s_1_tag;
+ union egprs_ack_nack_description_struct_s_1_value{
+ egprs_ack_nack_description_struct_s_2 m_egprs_ack_nack_description_struct_s_2;
+ }egprs_ack_nack_description_struct_s_1_value;
+ U16 numElements_uncompressed_received_block_bitmap;
+ U8 * uncompressed_received_block_bitmap;
+}egprs_ack_nack_description_struct;
+
+/* SEQUENCE extension bits ie */
+typedef struct extension_bits_ie{
+ U8 extension_length;
+}extension_bits_ie;
+
+/* SEQUENCE gra id struct */
+typedef struct gra_id_struct{
+ U8 number_of_gra_ids;
+ U16 numElements_gra_id;
+ U16 * gra_id;
+}gra_id_struct;
+
+typedef U8 cn_domain_identity_ie;
+
+typedef U8 cn_domain_specific_drx_cycle_length_coefficient_ie;
+
+/* SEQUENCE utran frequency list description struct */
+typedef struct utran_frequency_list_description_struct{
+ U16 numElements_fdd_arfcn;
+ U16 * fdd_arfcn;
+ U16 numElements_tdd_arfcn;
+ U16 * tdd_arfcn;
+}utran_frequency_list_description_struct;
+
+typedef enum {
+ CONCAT_0,
+ ARFCN2,
+ MAIO
+}pbcch_description_struct_s_1_enum;
+
+/* SEQUENCE pbcch description struct */
+typedef struct pbcch_description_struct{
+ U8 pb;
+ U8 tsc;
+ U8 tn;
+ pbcch_description_struct_s_1_enum pbcch_description_struct_s_1_tag;
+ union pbcch_description_struct_s_1_value{
+ U16 arfcn2;
+ U8 maio;
+ }pbcch_description_struct_s_1_value;
+}pbcch_description_struct;
+
+/* SEQUENCE dynamic arfcn mapping */
+typedef struct dynamic_arfcn_mapping{
+ U8 gsm_band;
+ U16 arfcn_first;
+ U16 band_offset;
+ U8 arfcn_range;
+}dynamic_arfcn_mapping;
+
+/* SEQUENCE nongsm message struct */
+typedef struct nongsm_message_struct{
+ U8 nongsm_protocol_discriminator;
+ U8 nr_of_container_octets;
+ U16 numElements_container;
+ U8 * container;
+}nongsm_message_struct;
+
+typedef struct gprs_3_g_measurement_parameters_description_struct_s_2{
+ U8 fdd_rep_quant;
+ U8 fdd_multirat_reporting;
+}gprs_3_g_measurement_parameters_description_struct_s_2;
+
+typedef struct gprs_3_g_measurement_parameters_description_struct_s_4{
+ U8 fdd_reporting_offset;
+ U8 fdd_reporting_threshold;
+}gprs_3_g_measurement_parameters_description_struct_s_4;
+
+typedef struct gprs_3_g_measurement_parameters_description_struct_s_7{
+ U8 tdd_reporting_offset;
+ U8 tdd_reporting_threshold;
+}gprs_3_g_measurement_parameters_description_struct_s_7;
+
+/* SEQUENCE gprs 3 g measurement parameters description struct */
+typedef struct gprs_3_g_measurement_parameters_description_struct{
+ ispresent gprs_3_g_measurement_parameters_description_struct_s_1_tag;
+ union gprs_3_g_measurement_parameters_description_struct_s_1_value{
+ gprs_3_g_measurement_parameters_description_struct_s_2 m_gprs_3_g_measurement_parameters_description_struct_s_2;
+ }gprs_3_g_measurement_parameters_description_struct_s_1_value;
+ ispresent gprs_3_g_measurement_parameters_description_struct_s_3_tag;
+ union gprs_3_g_measurement_parameters_description_struct_s_3_value{
+ gprs_3_g_measurement_parameters_description_struct_s_4 m_gprs_3_g_measurement_parameters_description_struct_s_4;
+ }gprs_3_g_measurement_parameters_description_struct_s_3_value;
+ ispresent gprs_3_g_measurement_parameters_description_struct_s_5_tag;
+ union gprs_3_g_measurement_parameters_description_struct_s_5_value{
+ U8 tdd_multirat_reporting;
+ }gprs_3_g_measurement_parameters_description_struct_s_5_value;
+ ispresent gprs_3_g_measurement_parameters_description_struct_s_6_tag;
+ union gprs_3_g_measurement_parameters_description_struct_s_6_value{
+ gprs_3_g_measurement_parameters_description_struct_s_7 m_gprs_3_g_measurement_parameters_description_struct_s_7;
+ }gprs_3_g_measurement_parameters_description_struct_s_6_value;
+}gprs_3_g_measurement_parameters_description_struct;
+
+typedef enum {
+ CHANNEL_GROUP_STRUCT_ARFCN,
+ CHANNEL_GROUP_STRUCT_S_2
+}channel_group_struct_s_1_enum;
+
+typedef struct channel_group_struct_s_2{
+ U8 ma_number;
+ U8 maio;
+}channel_group_struct_s_2;
+
+/* SEQUENCE channel group struct */
+typedef struct channel_group_struct{
+ channel_group_struct_s_1_enum channel_group_struct_s_1_tag;
+ union channel_group_struct_s_1_value{
+ U16 channel_group_struct_arfcn;
+ channel_group_struct_s_2 m_channel_group_struct_s_2;
+ }channel_group_struct_s_1_value;
+ U8 timeslot_allocation;
+}channel_group_struct;
+
+typedef struct p_3_g_measurement_parameters_description_struct_s_2{
+ U8 fdd_gprs_qoffset;
+ U8 fdd_qmin;
+}p_3_g_measurement_parameters_description_struct_s_2;
+
+/* SEQUENCE 3 g measurement parameters description struct */
+typedef struct p_3_g_measurement_parameters_description_struct{
+ U8 qsearch_p;
+ U8 p_3_g_search_prio;
+ ispresent p_3_g_measurement_parameters_description_struct_s_1_tag;
+ union p_3_g_measurement_parameters_description_struct_s_1_value{
+ p_3_g_measurement_parameters_description_struct_s_2 m_p_3_g_measurement_parameters_description_struct_s_2;
+ }p_3_g_measurement_parameters_description_struct_s_1_value;
+ ispresent p_3_g_measurement_parameters_description_struct_s_3_tag;
+ union p_3_g_measurement_parameters_description_struct_s_3_value{
+ U8 tdd_gprs_qoffset;
+ }p_3_g_measurement_parameters_description_struct_s_3_value;
+}p_3_g_measurement_parameters_description_struct;
+
+typedef struct p_3_g_initial_dedicated_mode_reporting_description_struct_s_2{
+ U8 fdd_qoffset;
+ U8 fdd_rep_quant;
+ U8 fdd_multirat_reporting;
+}p_3_g_initial_dedicated_mode_reporting_description_struct_s_2;
+
+typedef struct p_3_g_initial_dedicated_mode_reporting_description_struct_s_4{
+ U8 tdd_qoffset;
+ U8 tdd_multirat_reporting;
+}p_3_g_initial_dedicated_mode_reporting_description_struct_s_4;
+
+/* SEQUENCE 3 g initial dedicated mode reporting description struct */
+typedef struct p_3_g_initial_dedicated_mode_reporting_description_struct{
+ U8 p_3_g_ba_ind;
+ U8 qsearch_i;
+ U8 qsearch_c_initial;
+ ispresent p_3_g_initial_dedicated_mode_reporting_description_struct_s_1_tag;
+ union p_3_g_initial_dedicated_mode_reporting_description_struct_s_1_value{
+ p_3_g_initial_dedicated_mode_reporting_description_struct_s_2 m_p_3_g_initial_dedicated_mode_reporting_description_struct_s_2;
+ }p_3_g_initial_dedicated_mode_reporting_description_struct_s_1_value;
+ ispresent p_3_g_initial_dedicated_mode_reporting_description_struct_s_3_tag;
+ union p_3_g_initial_dedicated_mode_reporting_description_struct_s_3_value{
+ p_3_g_initial_dedicated_mode_reporting_description_struct_s_4 m_p_3_g_initial_dedicated_mode_reporting_description_struct_s_4;
+ }p_3_g_initial_dedicated_mode_reporting_description_struct_s_3_value;
+}p_3_g_initial_dedicated_mode_reporting_description_struct;
+
+/* SEQUENCE gprs 3 g additional measurement parameters description struct */
+typedef struct gprs_3_g_additional_measurement_parameters_description_struct{
+ U8 fdd_qmin_offset;
+ U8 fdd_rscpmin;
+}gprs_3_g_additional_measurement_parameters_description_struct;
+
+/* SEQUENCE rtd6 struct */
+typedef struct rtd6_struct{
+ ispresent rtd6_struct_s_0_tag;
+ union rtd6_struct_s_0_value{
+ U8 rtd;
+ }rtd6_struct_s_0_value;
+}rtd6_struct;
+
+/* SEQUENCE rtd12 struct */
+typedef struct rtd12_struct{
+ ispresent rtd12_struct_s_0_tag;
+ union rtd12_struct_s_0_value{
+ U16 rtd;
+ }rtd12_struct_s_0_value;
+}rtd12_struct;
+
+/* SEQUENCE ncp2 property struct */
+typedef struct ncp2_property_struct{
+ U8 same_ra_as_serving_cell;
+ U8 cell_bar_access_2;
+ U8 bcc;
+}ncp2_property_struct;
+
+/* SEQUENCE neighbour parameter set struct */
+typedef struct neighbour_parameter_set_struct{
+ ispresent neighbour_parameter_set_struct_s_1_tag;
+ union neighbour_parameter_set_struct_s_1_value{
+ U8 ncc;
+ }neighbour_parameter_set_struct_s_1_value;
+ U8 exc_acc;
+ ispresent neighbour_parameter_set_struct_s_2_tag;
+ union neighbour_parameter_set_struct_s_2_value{
+ U8 gprs_rxlev_access_min;
+ }neighbour_parameter_set_struct_s_2_value;
+ ispresent neighbour_parameter_set_struct_s_3_tag;
+ union neighbour_parameter_set_struct_s_3_value{
+ U8 gprs_ms_txpwr_max_cch;
+ }neighbour_parameter_set_struct_s_3_value;
+ ispresent neighbour_parameter_set_struct_s_4_tag;
+ union neighbour_parameter_set_struct_s_4_value{
+ U8 priority_class;
+ }neighbour_parameter_set_struct_s_4_value;
+ ispresent neighbour_parameter_set_struct_s_5_tag;
+ union neighbour_parameter_set_struct_s_5_value{
+ U8 hcs_thr;
+ }neighbour_parameter_set_struct_s_5_value;
+ ispresent neighbour_parameter_set_struct_s_6_tag;
+ union neighbour_parameter_set_struct_s_6_value{
+ si13_pbcch_location_struct_1 si13_pbcch_location;
+ }neighbour_parameter_set_struct_s_6_value;
+ U8 gprs_temporary_offset;
+ U8 gprs_penalty_time;
+ U8 gprs_reselect_offset;
+}neighbour_parameter_set_struct;
+
+/* SEQUENCE compact ncp2 property struct */
+typedef struct compact_ncp2_property_struct{
+ U8 same_ra_as_serving_cell;
+ U8 cell_bar_access_2;
+ U8 bcc;
+ ispresent compact_ncp2_property_struct_s_1_tag;
+ union compact_ncp2_property_struct_s_1_value{
+ U8 time_group;
+ }compact_ncp2_property_struct_s_1_value;
+}compact_ncp2_property_struct;
+
+/* SEQUENCE compact neighbour parameter set struct */
+typedef struct compact_neighbour_parameter_set_struct{
+ ispresent compact_neighbour_parameter_set_struct_s_1_tag;
+ union compact_neighbour_parameter_set_struct_s_1_value{
+ U8 ncc;
+ }compact_neighbour_parameter_set_struct_s_1_value;
+ U8 exc_acc;
+ ispresent compact_neighbour_parameter_set_struct_s_2_tag;
+ union compact_neighbour_parameter_set_struct_s_2_value{
+ U8 gprs_rxlev_access_min;
+ }compact_neighbour_parameter_set_struct_s_2_value;
+ ispresent compact_neighbour_parameter_set_struct_s_3_tag;
+ union compact_neighbour_parameter_set_struct_s_3_value{
+ U8 gprs_ms_txpwr_max_cch;
+ }compact_neighbour_parameter_set_struct_s_3_value;
+ ispresent compact_neighbour_parameter_set_struct_s_4_tag;
+ union compact_neighbour_parameter_set_struct_s_4_value{
+ U8 gprs_priority_class;
+ }compact_neighbour_parameter_set_struct_s_4_value;
+ ispresent compact_neighbour_parameter_set_struct_s_5_tag;
+ union compact_neighbour_parameter_set_struct_s_5_value{
+ U8 gprs_hcs_thr;
+ }compact_neighbour_parameter_set_struct_s_5_value;
+ U8 gprs_temporary_offset;
+ U8 gprs_penalty_time;
+ U8 gprs_reselect_offset;
+ ispresent compact_neighbour_parameter_set_struct_s_6_tag;
+ union compact_neighbour_parameter_set_struct_s_6_value{
+ U8 guar_constant_pwr_blks;
+ }compact_neighbour_parameter_set_struct_s_6_value;
+}compact_neighbour_parameter_set_struct;
+
+/* SEQUENCE serving cell params struct 1 */
+typedef struct serving_cell_params_struct_1{
+ U8 cell_bar_access_2;
+ U8 exc_acc;
+ U8 gprs_rxlev_access_min;
+ U8 gprs_ms_txpwr_max_cch;
+ ispresent serving_cell_params_struct_1_s_1_tag;
+ union serving_cell_params_struct_1_s_1_value{
+ hcs_struct_1 hcs_serving_cell_parameters;
+ }serving_cell_params_struct_1_s_1_value;
+ U8 multiband_reporting;
+}serving_cell_params_struct_1;
+
+/* SEQUENCE gen cell sel struct */
+typedef struct gen_cell_sel_struct{
+ U8 gprs_cell_reselect_hysteresis;
+ U8 c31_hyst;
+ U8 c32_qual;
+ U8 random_access_retry;
+ ispresent gen_cell_sel_struct_s_1_tag;
+ union gen_cell_sel_struct_s_1_value{
+ U8 t_resel;
+ }gen_cell_sel_struct_s_1_value;
+ ispresent gen_cell_sel_struct_s_2_tag;
+ union gen_cell_sel_struct_s_2_value{
+ U8 ra_reselect_hysteresis;
+ }gen_cell_sel_struct_s_2_value;
+}gen_cell_sel_struct;
+
+typedef struct compact_cell_selection_struct_1_s_2{
+ U8 gprs_rxlev_access_min;
+ U8 gprs_ms_txpwr_max_cch;
+}compact_cell_selection_struct_1_s_2;
+
+typedef struct compact_cell_selection_struct_1_s_4{
+ U8 gprs_temporary_offset;
+ U8 gprs_penalty_time;
+}compact_cell_selection_struct_1_s_4;
+
+/* SEQUENCE compact cell selection struct 1 */
+typedef struct compact_cell_selection_struct_1{
+ U8 bsic;
+ U8 cell_bar_access_2;
+ U8 exc_acc;
+ U8 same_ra_as_serving_cell;
+ ispresent compact_cell_selection_struct_1_s_1_tag;
+ union compact_cell_selection_struct_1_s_1_value{
+ compact_cell_selection_struct_1_s_2 m_compact_cell_selection_struct_1_s_2;
+ }compact_cell_selection_struct_1_s_1_value;
+ ispresent compact_cell_selection_struct_1_s_3_tag;
+ union compact_cell_selection_struct_1_s_3_value{
+ compact_cell_selection_struct_1_s_4 m_compact_cell_selection_struct_1_s_4;
+ }compact_cell_selection_struct_1_s_3_value;
+ ispresent compact_cell_selection_struct_1_s_5_tag;
+ union compact_cell_selection_struct_1_s_5_value{
+ U8 gprs_reselect_offset;
+ }compact_cell_selection_struct_1_s_5_value;
+ ispresent compact_cell_selection_struct_1_s_6_tag;
+ union compact_cell_selection_struct_1_s_6_value{
+ hcs_struct_1 hcs_params;
+ }compact_cell_selection_struct_1_s_6_value;
+ ispresent compact_cell_selection_struct_1_s_7_tag;
+ union compact_cell_selection_struct_1_s_7_value{
+ U8 time_group;
+ }compact_cell_selection_struct_1_s_7_value;
+ ispresent compact_cell_selection_struct_1_s_8_tag;
+ union compact_cell_selection_struct_1_s_8_value{
+ U8 guar_constant_pwr_blks;
+ }compact_cell_selection_struct_1_s_8_value;
+}compact_cell_selection_struct_1;
+
+/* SEQUENCE reference frequency struct */
+typedef struct reference_frequency_struct{
+ U8 rfl_number;
+ U8 length_of_rfl_contents;
+ U16 numElements_rfl_contents;
+ U8 * rfl_contents;
+}reference_frequency_struct;
+
+typedef U8 cell_allocation_struct_1;
+
+/* SEQUENCE gprs mobile allocations struct */
+typedef struct gprs_mobile_allocations_struct{
+ U8 ma_number;
+ gprs_mobile_allocation_ie gprs_mobile_allocation;
+}gprs_mobile_allocations_struct;
+
+/* SEQUENCE non-hopping pccch carriers struct */
+typedef struct non_hopping_pccch_carriers_struct{
+ U16 arfcn;
+ U8 timeslot_allocation;
+}non_hopping_pccch_carriers_struct;
+
+/* SEQUENCE hopping pccch carriers struct */
+typedef struct hopping_pccch_carriers_struct{
+ U8 maio;
+ U8 timeslot_allocation;
+}hopping_pccch_carriers_struct;
+
+/* SEQUENCE number of idle blocks struct */
+typedef struct number_of_idle_blocks_struct{
+ ispresent number_of_idle_blocks_struct_s_1_tag;
+ union number_of_idle_blocks_struct_s_1_value{
+ U8 nib_ccch_0;
+ }number_of_idle_blocks_struct_s_1_value;
+ ispresent number_of_idle_blocks_struct_s_3_tag;
+ union number_of_idle_blocks_struct_s_3_value{
+ U8 nib_ccch_1;
+ }number_of_idle_blocks_struct_s_3_value;
+ ispresent number_of_idle_blocks_struct_s_5_tag;
+ union number_of_idle_blocks_struct_s_5_value{
+ U8 nib_ccch_2;
+ }number_of_idle_blocks_struct_s_5_value;
+ ispresent number_of_idle_blocks_struct_s_7_tag;
+ union number_of_idle_blocks_struct_s_7_value{
+ U8 nib_ccch_3;
+ }number_of_idle_blocks_struct_s_7_value;
+}number_of_idle_blocks_struct;
+
+/* SEQUENCE additional psi messages struct */
+typedef struct additional_psi_messages_struct{
+ U8 non_gsm_information;
+ U8 psi8_broadcast;
+ U8 psi3ter_broadcast;
+ U8 psi3quater_broadcast;
+}additional_psi_messages_struct;
+
+typedef enum {
+ REPEATED_PAGE_INFO_STRUCT_1_S_1,
+ REPEATED_PAGE_INFO_STRUCT_1_S_3
+}repeated_page_info_struct_1_s_0_enum;
+
+typedef enum {
+ PTMSI,
+ REPEATED_PAGE_INFO_STRUCT_1_S_2
+}repeated_page_info_struct_1_s_1_enum;
+
+typedef struct repeated_page_info_struct_1_s_2{
+ U8 length_of_mobile_identity_contents;
+ U16 numElements_mobile_identity;
+ U8 * mobile_identity;
+}repeated_page_info_struct_1_s_2;
+
+typedef struct repeated_page_info_struct_1_s_1{
+ repeated_page_info_struct_1_s_1_enum repeated_page_info_struct_1_s_1_tag;
+ union repeated_page_info_struct_1_s_1_value{
+ U32 ptmsi;
+ repeated_page_info_struct_1_s_2 m_repeated_page_info_struct_1_s_2;
+ }repeated_page_info_struct_1_s_1_value;
+}repeated_page_info_struct_1_s_1;
+
+typedef enum {
+ TMSI,
+ REPEATED_PAGE_INFO_STRUCT_1_S_5
+}repeated_page_info_struct_1_s_4_enum;
+
+typedef struct repeated_page_info_struct_1_s_5{
+ U8 length_of_mobile_identity_contents;
+ U16 numElements_mobile_identity;
+ U8 * mobile_identity;
+}repeated_page_info_struct_1_s_5;
+
+typedef struct repeated_page_info_struct_1_s_3{
+ repeated_page_info_struct_1_s_4_enum repeated_page_info_struct_1_s_4_tag;
+ union repeated_page_info_struct_1_s_4_value{
+ U32 tmsi;
+ repeated_page_info_struct_1_s_5 m_repeated_page_info_struct_1_s_5;
+ }repeated_page_info_struct_1_s_4_value;
+ U8 channel_needed;
+ ispresent repeated_page_info_struct_1_s_6_tag;
+ union repeated_page_info_struct_1_s_6_value{
+ U8 emlpp_priority;
+ }repeated_page_info_struct_1_s_6_value;
+}repeated_page_info_struct_1_s_3;
+
+/* SEQUENCE repeated page info struct 1 */
+typedef struct repeated_page_info_struct_1{
+ repeated_page_info_struct_1_s_0_enum repeated_page_info_struct_1_s_0_tag;
+ union repeated_page_info_struct_1_s_0_value{
+ repeated_page_info_struct_1_s_1 m_repeated_page_info_struct_1_s_1;
+ repeated_page_info_struct_1_s_3 m_repeated_page_info_struct_1_s_3;
+ }repeated_page_info_struct_1_s_0_value;
+}repeated_page_info_struct_1;
+
+/* SEQUENCE page info struct */
+typedef struct page_info_struct{
+ U8 paging_cause;
+ U8 cn_domain_identity;
+ ispresent page_info_struct_s_1_tag;
+ union page_info_struct_s_1_value{
+ U8 paging_record_type_identifier;
+ }page_info_struct_s_1_value;
+}page_info_struct;
+
+typedef struct ext_frequency_list_struct_s_1{
+ U16 numElements_frequency_diff;
+ U8 * frequency_diff;
+}ext_frequency_list_struct_s_1;
+
+/* SEQUENCE ext frequency list struct */
+typedef struct ext_frequency_list_struct{
+ U16 start_frequency;
+ U8 nr_of_frequencies;
+ U8 freq_diff_length;
+ U16 numElements_m_ext_frequency_list_struct_s_1;
+ ext_frequency_list_struct_s_1 * m_ext_frequency_list_struct_s_1;
+}ext_frequency_list_struct;
+
+typedef enum {
+ TLLI___G_RNTI,
+ REJECT_STRUCT_1_S_2
+}reject_struct_1_s_1_enum;
+
+typedef enum {
+ PACKET_REQUEST_REFERENCE,
+ GLOBAL_TFI
+}reject_struct_1_s_2_enum;
+
+typedef struct reject_struct_1_s_2{
+ reject_struct_1_s_2_enum reject_struct_1_s_2_tag;
+ union reject_struct_1_s_2_value{
+ packet_request_reference_ie packet_request_reference;
+ global_tfi_ie global_tfi;
+ }reject_struct_1_s_2_value;
+}reject_struct_1_s_2;
+
+typedef struct reject_struct_1_s_4{
+ U8 wait_indication;
+ U8 wait__indication_size;
+}reject_struct_1_s_4;
+
+/* SEQUENCE reject struct 1 */
+typedef struct reject_struct_1{
+ reject_struct_1_s_1_enum reject_struct_1_s_1_tag;
+ union reject_struct_1_s_1_value{
+ U32 tlli___g_rnti;
+ reject_struct_1_s_2 m_reject_struct_1_s_2;
+ }reject_struct_1_s_1_value;
+ ispresent reject_struct_1_s_3_tag;
+ union reject_struct_1_s_3_value{
+ reject_struct_1_s_4 m_reject_struct_1_s_4;
+ }reject_struct_1_s_3_value;
+}reject_struct_1;
+
+/* SEQUENCE iu mode reject struct 1 */
+typedef struct iu_mode_reject_struct_1{
+ U8 g_rnti_extension;
+ U16 numElements_rb_id;
+ U8 * rb_id;
+}iu_mode_reject_struct_1;
+
+/* SEQUENCE a/gb mode reject struct 1 */
+typedef struct a_gb_mode_reject_struct_1{
+ U16 numElements_pfi;
+ U8 * pfi;
+}a_gb_mode_reject_struct_1;
+
+typedef struct _timeslot_allocation_struct{
+ ispresent timeslot_allocation_struct_s_0_tag;
+ union timeslot_allocation_struct_s_0_value{
+ U8 usf_tn;
+ }timeslot_allocation_struct_s_0_value;
+}_timeslot_allocation_struct;
+
+/* SEQUENCE timeslot allocation struct */
+typedef struct timeslot_allocation_struct_s_0{
+ _timeslot_allocation_struct m__timeslot_allocation_struct[8];
+}timeslot_allocation_struct;
+
+typedef struct timeslot_allocation_with_power_control_parameters_s_2{
+ U8 usf_tn;
+ U8 gamma_tn;
+}timeslot_allocation_with_power_control_parameters_s_2;
+
+typedef struct timeslot_allocation_with_power_control_parameters_s_1{
+ ispresent timeslot_allocation_with_power_control_parameters_s_1_tag;
+ union timeslot_allocation_with_power_control_parameters_s_1_value{
+ timeslot_allocation_with_power_control_parameters_s_2 m_timeslot_allocation_with_power_control_parameters_s_2;
+ }timeslot_allocation_with_power_control_parameters_s_1_value;
+}timeslot_allocation_with_power_control_parameters_s_1;
+
+/* SEQUENCE timeslot allocation with power control parameters */
+typedef struct timeslot_allocation_with_power_control_parameters{
+ U8 alpha;
+ timeslot_allocation_with_power_control_parameters_s_1 m_timeslot_allocation_with_power_control_parameters_s_1[8];
+}timeslot_allocation_with_power_control_parameters;
+
+/* SEQUENCE access technologies request struct */
+typedef struct access_technologies_request_struct{
+ U8 access_technology_type;
+ ispresent access_technologies_request_struct_s_1_tag;
+ union access_technologies_request_struct_s_1_value{
+ struct access_technologies_request_struct * m_access_technologies_request_struct;
+ }access_technologies_request_struct_s_1_value;
+}access_technologies_request_struct;
+
+typedef U8 egprs_modulation_and_coding_ie;
+
+typedef U8 egprs_window_size_ie;
+
+typedef U16 absolute_frame_number_encoding;
+
+typedef U16 relative_frame_number_encoding;
+
+typedef enum {
+ RB_ID,
+ DOWNLINK_TBF_ASSIGNMENT_STRUCT_FOR_MTTR_S_2
+}downlink_tbf_assignment_struct_for_mttr_s_1_enum;
+
+typedef struct downlink_tbf_assignment_struct_for_mttr_s_2{
+ U8 pfi;
+ U8 rlc_mode;
+}downlink_tbf_assignment_struct_for_mttr_s_2;
+
+/* SEQUENCE downlink tbf assignment struct for mttr */
+typedef struct downlink_tbf_assignment_struct_for_mttr{
+ downlink_tbf_assignment_struct_for_mttr_s_1_enum downlink_tbf_assignment_struct_for_mttr_s_1_tag;
+ union downlink_tbf_assignment_struct_for_mttr_s_1_value{
+ U8 rb_id;
+ downlink_tbf_assignment_struct_for_mttr_s_2 m_downlink_tbf_assignment_struct_for_mttr_s_2;
+ }downlink_tbf_assignment_struct_for_mttr_s_1_value;
+ ispresent downlink_tbf_assignment_struct_for_mttr_s_3_tag;
+ union downlink_tbf_assignment_struct_for_mttr_s_3_value{
+ U8 uplink_control_timeslot;
+ }downlink_tbf_assignment_struct_for_mttr_s_3_value;
+ U8 tfi_assignment;
+ U8 control_ack;
+ ispresent downlink_tbf_assignment_struct_for_mttr_s_4_tag;
+ union downlink_tbf_assignment_struct_for_mttr_s_4_value{
+ egprs_window_size_ie downlink_egprs_window_size;
+ }downlink_tbf_assignment_struct_for_mttr_s_4_value;
+}downlink_tbf_assignment_struct_for_mttr;
+
+/* SEQUENCE resegment ie */
+typedef struct resegment_ie{
+ U8 resegment_ie_bit;
+}resegment_ie;
+
+/* SEQUENCE rrc container ie */
+typedef struct rrc_container_ie{
+ U8 rrc_container_length;
+ U16 numElements_rrc_container_data;
+ U8 * rrc_container_data;
+}rrc_container_ie;
+
+/* SEQUENCE nas container for ps handover ie */
+typedef struct nas_container_for_ps_handover_ie{
+ U8 nas_container_length;
+ U16 numElements_nas_container_data;
+ U8 * nas_container_data;
+}nas_container_for_ps_handover_ie;
+
+/* SEQUENCE downlink tbf assignment struct for ps ho */
+typedef struct downlink_tbf_assignment_struct_for_ps_ho{
+ ispresent downlink_tbf_assignment_struct_for_ps_ho_s_1_tag;
+ union downlink_tbf_assignment_struct_for_ps_ho_s_1_value{
+ U8 pfi;
+ }downlink_tbf_assignment_struct_for_ps_ho_s_1_value;
+ U8 rlc_mode;
+ U8 tfi_assignment;
+ U8 control_ack;
+ ispresent downlink_tbf_assignment_struct_for_ps_ho_s_2_tag;
+ union downlink_tbf_assignment_struct_for_ps_ho_s_2_value{
+ egprs_window_size_ie egprs_window_size;
+ }downlink_tbf_assignment_struct_for_ps_ho_s_2_value;
+}downlink_tbf_assignment_struct_for_ps_ho;
+
+/* SEQUENCE downlink assignment struct */
+typedef struct downlink_assignment_struct{
+ U8 timeslot_allocation;
+ downlink_tbf_assignment_struct_for_ps_ho downlink_tbf_assignment;
+}downlink_assignment_struct;
+
+typedef struct tbf_timeslot_allocation_1{
+ U16 numElements_tbf_timeslot_allocation_1;
+ U8 * tbf_timeslot_allocation_1;
+}tbf_timeslot_allocation_1;
+
+typedef enum {
+ USF_ALLOCATION,
+ UPLINK_TBF_ASSIGNMENT_STRUCT_S_7
+}uplink_tbf_assignment_struct_s_6_enum;
+
+typedef struct uplink_tbf_assignment_struct_s_8{
+ ispresent uplink_tbf_assignment_struct_s_8_tag;
+ union uplink_tbf_assignment_struct_s_8_value{
+ U8 usf_allocation;
+ }uplink_tbf_assignment_struct_s_8_value;
+}uplink_tbf_assignment_struct_s_8;
+
+typedef struct uplink_tbf_assignment_struct_s_7{
+ U8 usf_allocation;
+ U16 numElements_m_uplink_tbf_assignment_struct_s_8;
+ uplink_tbf_assignment_struct_s_8 * m_uplink_tbf_assignment_struct_s_8;
+}uplink_tbf_assignment_struct_s_7;
+
+/* SEQUENCE uplink tbf assignment struct */
+typedef struct uplink_tbf_assignment_struct{
+ ispresent uplink_tbf_assignment_struct_s_1_tag;
+ union uplink_tbf_assignment_struct_s_1_value{
+ U8 pfi;
+ }uplink_tbf_assignment_struct_s_1_value;
+ U8 rlc_mode;
+ U8 tfi_assignment;
+ ispresent uplink_tbf_assignment_struct_s_2_tag;
+ union uplink_tbf_assignment_struct_s_2_value{
+ U8 channel_coding_command;
+ }uplink_tbf_assignment_struct_s_2_value;
+ ispresent uplink_tbf_assignment_struct_s_3_tag;
+ union uplink_tbf_assignment_struct_s_3_value{
+ egprs_modulation_and_coding_ie egprs_channel_coding_command;
+ }uplink_tbf_assignment_struct_s_3_value;
+ ispresent uplink_tbf_assignment_struct_s_4_tag;
+ union uplink_tbf_assignment_struct_s_4_value{
+ egprs_window_size_ie egprs_window_size;
+ }uplink_tbf_assignment_struct_s_4_value;
+ U8 usf_granularity;
+ ispresent uplink_tbf_assignment_struct_s_5_tag;
+ union uplink_tbf_assignment_struct_s_5_value{
+ tbf_timeslot_allocation_1 m_tbf_timeslot_allocation_1;
+ }uplink_tbf_assignment_struct_s_5_value;
+ uplink_tbf_assignment_struct_s_6_enum uplink_tbf_assignment_struct_s_6_tag;
+ union uplink_tbf_assignment_struct_s_6_value{
+ U8 usf_allocation;
+ uplink_tbf_assignment_struct_s_7 m_uplink_tbf_assignment_struct_s_7;
+ }uplink_tbf_assignment_struct_s_6_value;
+}uplink_tbf_assignment_struct;
+
+typedef enum {
+ MS_TIMESLOT_ALLOCATION,
+ TIMESLOT_DESCRIPTION_STRUCT_S_1
+}timeslot_description_struct_s_0_enum;
+
+typedef struct timeslot_description_struct_s_2{
+ ispresent timeslot_description_struct_s_2_tag;
+ union timeslot_description_struct_s_2_value{
+ U8 gamma_tn;
+ }timeslot_description_struct_s_2_value;
+}timeslot_description_struct_s_2;
+
+typedef struct timeslot_description_struct_s_1{
+ U8 alpha;
+ timeslot_description_struct_s_2 m_timeslot_description_struct_s_2[8];
+}timeslot_description_struct_s_1;
+
+/* SEQUENCE timeslot description struct */
+typedef struct timeslot_description_struct{
+ timeslot_description_struct_s_0_enum timeslot_description_struct_s_0_tag;
+ union timeslot_description_struct_s_0_value{
+ U8 ms_timeslot_allocation;
+ timeslot_description_struct_s_1 m_timeslot_description_struct_s_1;
+ }timeslot_description_struct_s_0_value;
+}timeslot_description_struct;
+
+typedef enum {
+ DOWNLINK_TBF_ASSIGNMENT_STRUCT_RB_ID,
+ DOWNLINK_TBF_ASSIGNMENT_STRUCT_S_2
+}downlink_tbf_assignment_struct_s_1_enum;
+
+typedef struct downlink_tbf_assignment_struct_s_2{
+ U8 pfi;
+ U8 rlc_mode;
+}downlink_tbf_assignment_struct_s_2;
+
+/* SEQUENCE downlink tbf assignment struct */
+typedef struct downlink_tbf_assignment_struct{
+ downlink_tbf_assignment_struct_s_1_enum downlink_tbf_assignment_struct_s_1_tag;
+ union downlink_tbf_assignment_struct_s_1_value{
+ U8 rb_id;
+ downlink_tbf_assignment_struct_s_2 m_downlink_tbf_assignment_struct_s_2;
+ }downlink_tbf_assignment_struct_s_1_value;
+ U8 tfi_assignment;
+ U8 control_ack;
+ ispresent downlink_tbf_assignment_struct_s_3_tag;
+ union downlink_tbf_assignment_struct_s_3_value{
+ egprs_window_size_ie egprs_window_size;
+ }downlink_tbf_assignment_struct_s_3_value;
+ ispresent downlink_tbf_assignment_struct_s_4_tag;
+ union downlink_tbf_assignment_struct_s_4_value{
+ U8 hfn_lsb;
+ }downlink_tbf_assignment_struct_s_4_value;
+}downlink_tbf_assignment_struct;
+
+typedef U32 tlli___g_rnti_ie;
+
+typedef struct persistence_level_ie{
+ U8 persistence_level[4];
+}persistence_level_ie;
+
+typedef struct dynamic_allocation_2_struct_s_4{
+ U8 p0_c2;
+ U8 pr_mode_c2;
+}dynamic_allocation_2_struct_s_4;
+
+typedef struct dynamic_allocation_2_struct_s_2{
+ U8 p0_c1;
+ U8 pr_mode_c1;
+ ispresent dynamic_allocation_2_struct_s_3_tag;
+ union dynamic_allocation_2_struct_s_3_value{
+ dynamic_allocation_2_struct_s_4 m_dynamic_allocation_2_struct_s_4;
+ }dynamic_allocation_2_struct_s_3_value;
+}dynamic_allocation_2_struct_s_2;
+
+typedef enum {
+ DYNAMIC_ALLOCATION_2_STRUCT_S_7,
+ DYNAMIC_ALLOCATION_2_STRUCT_S_9
+}dynamic_allocation_2_struct_s_6_enum;
+
+typedef struct dynamic_allocation_2_struct_s_8{
+ ispresent dynamic_allocation_2_struct_s_8_tag;
+ union dynamic_allocation_2_struct_s_8_value{
+ U8 usf;
+ }dynamic_allocation_2_struct_s_8_value;
+}dynamic_allocation_2_struct_s_8;
+
+typedef struct dynamic_allocation_2_struct_s_7{
+ U8 n_usf;
+ U16 numElements_m_dynamic_allocation_2_struct_s_8;
+ dynamic_allocation_2_struct_s_8 * m_dynamic_allocation_2_struct_s_8;
+}dynamic_allocation_2_struct_s_7;
+
+typedef enum {
+ DYNAMIC_ALLOCATION_2_STRUCT_S_12,
+ DYNAMIC_ALLOCATION_2_STRUCT_S_15
+}dynamic_allocation_2_struct_s_11_enum;
+
+typedef struct dynamic_allocation_2_struct_s_14{
+ U8 usf;
+ U8 gamma;
+}dynamic_allocation_2_struct_s_14;
+
+typedef struct dynamic_allocation_2_struct_s_13{
+ ispresent dynamic_allocation_2_struct_s_13_tag;
+ union dynamic_allocation_2_struct_s_13_value{
+ dynamic_allocation_2_struct_s_14 m_dynamic_allocation_2_struct_s_14;
+ }dynamic_allocation_2_struct_s_13_value;
+}dynamic_allocation_2_struct_s_13;
+
+typedef struct dynamic_allocation_2_struct_s_12{
+ U8 n_ts;
+ U16 numElements_m_dynamic_allocation_2_struct_s_13;
+ dynamic_allocation_2_struct_s_13 * m_dynamic_allocation_2_struct_s_13;
+}dynamic_allocation_2_struct_s_12;
+
+typedef struct dynamic_allocation_2_struct_s_17{
+ U8 usf;
+ U8 gamma;
+}dynamic_allocation_2_struct_s_17;
+
+typedef struct dynamic_allocation_2_struct_s_16{
+ ispresent dynamic_allocation_2_struct_s_16_tag;
+ union dynamic_allocation_2_struct_s_16_value{
+ dynamic_allocation_2_struct_s_17 m_dynamic_allocation_2_struct_s_17;
+ }dynamic_allocation_2_struct_s_16_value;
+}dynamic_allocation_2_struct_s_16;
+
+typedef struct dynamic_allocation_2_struct_s_20{
+ U8 usf_2;
+ ispresent dynamic_allocation_2_struct_s_21_tag;
+ union dynamic_allocation_2_struct_s_21_value{
+ U8 gamma;
+ }dynamic_allocation_2_struct_s_21_value;
+}dynamic_allocation_2_struct_s_20;
+
+typedef struct dynamic_allocation_2_struct_s_19{
+ ispresent dynamic_allocation_2_struct_s_19_tag;
+ union dynamic_allocation_2_struct_s_19_value{
+ dynamic_allocation_2_struct_s_20 m_dynamic_allocation_2_struct_s_20;
+ }dynamic_allocation_2_struct_s_19_value;
+}dynamic_allocation_2_struct_s_19;
+
+typedef struct _dynamic_allocation_2_struct_s_19{
+ U16 numElements_m_dynamic_allocation_2_struct_s_19;
+ dynamic_allocation_2_struct_s_19 * m_dynamic_allocation_2_struct_s_19;
+}_dynamic_allocation_2_struct_s_19;
+
+typedef struct dynamic_allocation_2_struct_s_15{
+ U8 n_pairs;
+ U16 numElements_m_dynamic_allocation_2_struct_s_16;
+ dynamic_allocation_2_struct_s_16 * m_dynamic_allocation_2_struct_s_16;
+ ispresent dynamic_allocation_2_struct_s_18_tag;
+ union dynamic_allocation_2_struct_s_18_value{
+ _dynamic_allocation_2_struct_s_19 m_dynamic_allocation_2_struct_s_19;
+ }dynamic_allocation_2_struct_s_18_value;
+}dynamic_allocation_2_struct_s_15;
+
+typedef struct dynamic_allocation_2_struct_s_9{
+ U8 alpha_c1;
+ ispresent dynamic_allocation_2_struct_s_10_tag;
+ union dynamic_allocation_2_struct_s_10_value{
+ U8 alpha_c2;
+ }dynamic_allocation_2_struct_s_10_value;
+ dynamic_allocation_2_struct_s_11_enum dynamic_allocation_2_struct_s_11_tag;
+ union dynamic_allocation_2_struct_s_11_value{
+ dynamic_allocation_2_struct_s_12 m_dynamic_allocation_2_struct_s_12;
+ dynamic_allocation_2_struct_s_15 m_dynamic_allocation_2_struct_s_15;
+ }dynamic_allocation_2_struct_s_11_value;
+}dynamic_allocation_2_struct_s_9;
+
+/* SEQUENCE dynamic allocation 2 struct */
+typedef struct dynamic_allocation_2_struct{
+ U8 extended_dynamic_allocation;
+ ispresent dynamic_allocation_2_struct_s_1_tag;
+ union dynamic_allocation_2_struct_s_1_value{
+ dynamic_allocation_2_struct_s_2 m_dynamic_allocation_2_struct_s_2;
+ }dynamic_allocation_2_struct_s_1_value;
+ U8 usf_granularity;
+ ispresent dynamic_allocation_2_struct_s_5_tag;
+ union dynamic_allocation_2_struct_s_5_value{
+ U8 uplink_tfi_assignment;
+ }dynamic_allocation_2_struct_s_5_value;
+ dynamic_allocation_2_struct_s_6_enum dynamic_allocation_2_struct_s_6_tag;
+ union dynamic_allocation_2_struct_s_6_value{
+ dynamic_allocation_2_struct_s_7 m_dynamic_allocation_2_struct_s_7;
+ dynamic_allocation_2_struct_s_9 m_dynamic_allocation_2_struct_s_9;
+ }dynamic_allocation_2_struct_s_6_value;
+}dynamic_allocation_2_struct;
+
+typedef enum {
+ TIMESLOT_DESCRIPTION_2_STRUCT_S_1,
+ TIMESLOT_DESCRIPTION_2_STRUCT_S_3
+}timeslot_description_2_struct_s_0_enum;
+
+typedef struct timeslot_description_2_struct_s_1{
+ U8 ms_timeslot_allocation_c1;
+ ispresent timeslot_description_2_struct_s_2_tag;
+ union timeslot_description_2_struct_s_2_value{
+ U8 ms_timeslot_allocation_c2;
+ }timeslot_description_2_struct_s_2_value;
+}timeslot_description_2_struct_s_1;
+
+typedef struct timeslot_description_2_struct_s_4{
+ ispresent timeslot_description_2_struct_s_4_tag;
+ union timeslot_description_2_struct_s_4_value{
+ U8 gamma_tn_c1;
+ }timeslot_description_2_struct_s_4_value;
+}timeslot_description_2_struct_s_4;
+
+typedef struct timeslot_description_2_struct_s_6{
+ ispresent timeslot_description_2_struct_s_6_tag;
+ union timeslot_description_2_struct_s_6_value{
+ U8 gamma_tn_c2;
+ }timeslot_description_2_struct_s_6_value;
+}timeslot_description_2_struct_s_6;
+
+typedef struct timeslot_description_2_struct_s_3{
+ U8 alpha_c1;
+ timeslot_description_2_struct_s_4 m_timeslot_description_2_struct_s_4[8];
+ ispresent timeslot_description_2_struct_s_5_tag;
+ union timeslot_description_2_struct_s_5_value{
+ U8 alpha_c2;
+ }timeslot_description_2_struct_s_5_value;
+ timeslot_description_2_struct_s_6 m_timeslot_description_2_struct_s_6[8];
+}timeslot_description_2_struct_s_3;
+
+/* SEQUENCE timeslot description 2 struct */
+typedef struct timeslot_description_2_struct{
+ timeslot_description_2_struct_s_0_enum timeslot_description_2_struct_s_0_tag;
+ union timeslot_description_2_struct_s_0_value{
+ timeslot_description_2_struct_s_1 m_timeslot_description_2_struct_s_1;
+ timeslot_description_2_struct_s_3 m_timeslot_description_2_struct_s_3;
+ }timeslot_description_2_struct_s_0_value;
+}timeslot_description_2_struct;
+
+typedef enum {
+ DUAL_CARRIER_TIMESLOT_DESCRIPTION_STRUCT_S_1,
+ DUAL_CARRIER_TIMESLOT_DESCRIPTION_STRUCT_S_3
+}dual_carrier_timeslot_description_struct_s_0_enum;
+
+typedef struct dual_carrier_timeslot_description_struct_s_1{
+ U8 ms_timeslot_allocation_c1;
+ ispresent dual_carrier_timeslot_description_struct_s_2_tag;
+ union dual_carrier_timeslot_description_struct_s_2_value{
+ U8 ms_timeslot_allocation_c2;
+ }dual_carrier_timeslot_description_struct_s_2_value;
+}dual_carrier_timeslot_description_struct_s_1;
+
+typedef struct dual_carrier_timeslot_description_struct_s_4{
+ ispresent dual_carrier_timeslot_description_struct_s_4_tag;
+ union dual_carrier_timeslot_description_struct_s_4_value{
+ U8 gamma_tn_c1;
+ }dual_carrier_timeslot_description_struct_s_4_value;
+}dual_carrier_timeslot_description_struct_s_4;
+
+typedef struct dual_carrier_timeslot_description_struct_s_6{
+ ispresent dual_carrier_timeslot_description_struct_s_6_tag;
+ union dual_carrier_timeslot_description_struct_s_6_value{
+ U8 gamma_tn_c2;
+ }dual_carrier_timeslot_description_struct_s_6_value;
+}dual_carrier_timeslot_description_struct_s_6;
+
+typedef struct dual_carrier_timeslot_description_struct_s_3{
+ U8 alpha_c1;
+ dual_carrier_timeslot_description_struct_s_4 m_dual_carrier_timeslot_description_struct_s_4[8];
+ ispresent dual_carrier_timeslot_description_struct_s_5_tag;
+ union dual_carrier_timeslot_description_struct_s_5_value{
+ U8 alpha_c2;
+ }dual_carrier_timeslot_description_struct_s_5_value;
+ dual_carrier_timeslot_description_struct_s_6 m_dual_carrier_timeslot_description_struct_s_6[8];
+}dual_carrier_timeslot_description_struct_s_3;
+
+/* SEQUENCE dual carrier timeslot description struct */
+typedef struct dual_carrier_timeslot_description_struct{
+ dual_carrier_timeslot_description_struct_s_0_enum dual_carrier_timeslot_description_struct_s_0_tag;
+ union dual_carrier_timeslot_description_struct_s_0_value{
+ dual_carrier_timeslot_description_struct_s_1 m_dual_carrier_timeslot_description_struct_s_1;
+ dual_carrier_timeslot_description_struct_s_3 m_dual_carrier_timeslot_description_struct_s_3;
+ }dual_carrier_timeslot_description_struct_s_0_value;
+}dual_carrier_timeslot_description_struct;
+
+typedef struct uplink_tbf_assignment_2_struct_s_5{
+ U8 reported_timeslots_c1;
+ ispresent uplink_tbf_assignment_2_struct_s_6_tag;
+ union uplink_tbf_assignment_2_struct_s_6_value{
+ U8 reported_timeslots_c2;
+ }uplink_tbf_assignment_2_struct_s_6_value;
+}uplink_tbf_assignment_2_struct_s_5;
+
+typedef struct tbf_timeslot_allocation_2{
+ U16 numElements_tbf_timeslot_allocation_2;
+ U8 * tbf_timeslot_allocation_2;
+}tbf_timeslot_allocation_2;
+
+typedef enum {
+ UPLINK_TBF_ASSIGNMENT_2_STRUCT_S_9,
+ UPLINK_TBF_ASSIGNMENT_2_STRUCT_S_11
+}uplink_tbf_assignment_2_struct_s_8_enum;
+
+typedef struct uplink_tbf_assignment_2_struct_s_9{
+ U8 usf_allocation_c1;
+ ispresent uplink_tbf_assignment_2_struct_s_10_tag;
+ union uplink_tbf_assignment_2_struct_s_10_value{
+ U8 usf_allocation_c2;
+ }uplink_tbf_assignment_2_struct_s_10_value;
+}uplink_tbf_assignment_2_struct_s_9;
+
+typedef struct uplink_tbf_assignment_2_struct_s_12{
+ ispresent uplink_tbf_assignment_2_struct_s_12_tag;
+ union uplink_tbf_assignment_2_struct_s_12_value{
+ U8 usf_allocation;
+ }uplink_tbf_assignment_2_struct_s_12_value;
+}uplink_tbf_assignment_2_struct_s_12;
+
+typedef struct uplink_tbf_assignment_2_struct_s_11{
+ U8 usf_allocation;
+ U16 numElements_m_uplink_tbf_assignment_2_struct_s_12;
+ uplink_tbf_assignment_2_struct_s_12 * m_uplink_tbf_assignment_2_struct_s_12;
+}uplink_tbf_assignment_2_struct_s_11;
+
+/* SEQUENCE uplink tbf assignment 2 struct */
+typedef struct uplink_tbf_assignment_2_struct{
+ U8 pfi;
+ U8 rlc_mode;
+ U8 tfi_assignment;
+ ispresent uplink_tbf_assignment_2_struct_s_1_tag;
+ union uplink_tbf_assignment_2_struct_s_1_value{
+ egprs_modulation_and_coding_ie egprs_channel_coding_command;
+ }uplink_tbf_assignment_2_struct_s_1_value;
+ ispresent uplink_tbf_assignment_2_struct_s_2_tag;
+ union uplink_tbf_assignment_2_struct_s_2_value{
+ egprs_window_size_ie egprs_window_size;
+ }uplink_tbf_assignment_2_struct_s_2_value;
+ U8 usf_granularity;
+ ispresent uplink_tbf_assignment_2_struct_s_3_tag;
+ union uplink_tbf_assignment_2_struct_s_3_value{
+ U8 npm_transfer_time;
+ }uplink_tbf_assignment_2_struct_s_3_value;
+ ispresent uplink_tbf_assignment_2_struct_s_4_tag;
+ union uplink_tbf_assignment_2_struct_s_4_value{
+ uplink_tbf_assignment_2_struct_s_5 m_uplink_tbf_assignment_2_struct_s_5;
+ }uplink_tbf_assignment_2_struct_s_4_value;
+ ispresent uplink_tbf_assignment_2_struct_s_7_tag;
+ union uplink_tbf_assignment_2_struct_s_7_value{
+ tbf_timeslot_allocation_2 m_tbf_timeslot_allocation_2;
+ }uplink_tbf_assignment_2_struct_s_7_value;
+ uplink_tbf_assignment_2_struct_s_8_enum uplink_tbf_assignment_2_struct_s_8_tag;
+ union uplink_tbf_assignment_2_struct_s_8_value{
+ uplink_tbf_assignment_2_struct_s_9 m_uplink_tbf_assignment_2_struct_s_9;
+ uplink_tbf_assignment_2_struct_s_11 m_uplink_tbf_assignment_2_struct_s_11;
+ }uplink_tbf_assignment_2_struct_s_8_value;
+}uplink_tbf_assignment_2_struct;
+
+/* SEQUENCE assignment info struct */
+typedef struct assignment_info_struct{
+ U8 assignment_type;
+ U8 carrier_id;
+}assignment_info_struct;
+
+typedef enum {
+ PDCH_PAIRS_DESCRIPTION_IE_S_1,
+ PDCH_PAIRS_DESCRIPTION_IE_S_3
+}pdch_pairs_description_ie_s_0_enum;
+
+typedef enum {
+ CONCAT_00,
+ CONCAT_01,
+ PDCH_PAIRS_DESCRIPTION_IE_S_2
+}pdch_pairs_description_ie_s_1_enum;
+
+typedef struct pdch_pairs_description_ie_s_2{
+ U8 downlink_pdch_pairs_c1;
+ U8 uplink_pdch_pairs_c1;
+}pdch_pairs_description_ie_s_2;
+
+typedef struct pdch_pairs_description_ie_s_1{
+ pdch_pairs_description_ie_s_1_enum pdch_pairs_description_ie_s_1_tag;
+ union pdch_pairs_description_ie_s_1_value{
+ pdch_pairs_description_ie_s_2 m_pdch_pairs_description_ie_s_2;
+ }pdch_pairs_description_ie_s_1_value;
+}pdch_pairs_description_ie_s_1;
+
+typedef enum {
+ PDCH_PAIRS_DESCRIPTION_IE_CONCAT_00,
+ PDCH_PAIRS_DESCRIPTION_IE_CONCAT_01,
+ PDCH_PAIRS_DESCRIPTION_IE_S_4
+}pdch_pairs_description_ie_s_3_enum;
+
+typedef struct pdch_pairs_description_ie_s_4{
+ U8 downlink_pdch_pairs_c1;
+ U8 downlink_pdch_pairs_c2;
+ U8 uplink_pdch_pairs_c1;
+ U8 uplink_pdch_pairs_c2;
+}pdch_pairs_description_ie_s_4;
+
+typedef struct pdch_pairs_description_ie_s_3{
+ pdch_pairs_description_ie_s_3_enum pdch_pairs_description_ie_s_3_tag;
+ union pdch_pairs_description_ie_s_3_value{
+ pdch_pairs_description_ie_s_4 m_pdch_pairs_description_ie_s_4;
+ }pdch_pairs_description_ie_s_3_value;
+}pdch_pairs_description_ie_s_3;
+
+/* SEQUENCE pdch pairs description ie */
+typedef struct pdch_pairs_description_ie{
+ pdch_pairs_description_ie_s_0_enum pdch_pairs_description_ie_s_0_tag;
+ union pdch_pairs_description_ie_s_0_value{
+ pdch_pairs_description_ie_s_1 m_pdch_pairs_description_ie_s_1;
+ pdch_pairs_description_ie_s_3 m_pdch_pairs_description_ie_s_3;
+ }pdch_pairs_description_ie_s_0_value;
+}pdch_pairs_description_ie;
+
+/* SEQUENCE dual carrier direct encoding 1 struct */
+typedef struct dual_carrier_direct_encoding_1_struct{
+ ispresent dual_carrier_direct_encoding_1_struct_s_1_tag;
+ union dual_carrier_direct_encoding_1_struct_s_1_value{
+ U8 maio1;
+ }dual_carrier_direct_encoding_1_struct_s_1_value;
+ ispresent dual_carrier_direct_encoding_1_struct_s_2_tag;
+ union dual_carrier_direct_encoding_1_struct_s_2_value{
+ U8 maio2;
+ }dual_carrier_direct_encoding_1_struct_s_2_value;
+ gprs_mobile_allocation_ie gprs_mobile_allocation;
+}dual_carrier_direct_encoding_1_struct;
+
+typedef struct dual_carrier_indirect_encoding_struct_s_4{
+ U8 change_mark_1;
+ ispresent dual_carrier_indirect_encoding_struct_s_5_tag;
+ union dual_carrier_indirect_encoding_struct_s_5_value{
+ U8 change_mark_2;
+ }dual_carrier_indirect_encoding_struct_s_5_value;
+}dual_carrier_indirect_encoding_struct_s_4;
+
+/* SEQUENCE dual carrier indirect encoding struct */
+typedef struct dual_carrier_indirect_encoding_struct{
+ ispresent dual_carrier_indirect_encoding_struct_s_1_tag;
+ union dual_carrier_indirect_encoding_struct_s_1_value{
+ U8 maio1;
+ }dual_carrier_indirect_encoding_struct_s_1_value;
+ ispresent dual_carrier_indirect_encoding_struct_s_2_tag;
+ union dual_carrier_indirect_encoding_struct_s_2_value{
+ U8 maio2;
+ }dual_carrier_indirect_encoding_struct_s_2_value;
+ U8 ma_number;
+ ispresent dual_carrier_indirect_encoding_struct_s_3_tag;
+ union dual_carrier_indirect_encoding_struct_s_3_value{
+ dual_carrier_indirect_encoding_struct_s_4 m_dual_carrier_indirect_encoding_struct_s_4;
+ }dual_carrier_indirect_encoding_struct_s_3_value;
+}dual_carrier_indirect_encoding_struct;
+
+/* SEQUENCE dual carrier direct encoding 2 struct */
+typedef struct dual_carrier_direct_encoding_2_struct{
+ ispresent dual_carrier_direct_encoding_2_struct_s_1_tag;
+ union dual_carrier_direct_encoding_2_struct_s_1_value{
+ U8 maio1;
+ }dual_carrier_direct_encoding_2_struct_s_1_value;
+ ispresent dual_carrier_direct_encoding_2_struct_s_2_tag;
+ union dual_carrier_direct_encoding_2_struct_s_2_value{
+ U8 maio2;
+ }dual_carrier_direct_encoding_2_struct_s_2_value;
+ U8 hsn;
+ U8 length_of_ma_frequency_list_contents;
+ U16 numElements_ma_frequency_list_contents;
+ U8 * ma_frequency_list_contents;
+}dual_carrier_direct_encoding_2_struct;
+
+typedef U8 egprs_level_ie;
+
+typedef enum {
+ PULSE_FORMAT_CODING_1,
+ PULSE_FORMAT_CODING_2
+}pulse_format_ie_s_0_enum;
+
+/* SEQUENCE pulse format ie */
+typedef struct pulse_format_ie{
+ pulse_format_ie_s_0_enum pulse_format_ie_s_0_tag;
+ union pulse_format_ie_s_0_value{
+ U8 pulse_format_coding_1;
+ U8 pulse_format_coding_2;
+ }pulse_format_ie_s_0_value;
+}pulse_format_ie;
+
+/* SEQUENCE downlink tbf assignment 2 struct */
+typedef struct downlink_tbf_assignment_2_struct{
+ U8 pfi;
+ U8 rlc_mode;
+ U8 tfi_assignment;
+ U8 control_ack;
+ ispresent downlink_tbf_assignment_2_struct_s_1_tag;
+ union downlink_tbf_assignment_2_struct_s_1_value{
+ U8 npm_transfer_time;
+ }downlink_tbf_assignment_2_struct_s_1_value;
+ U8 event_based_fanr;
+ ispresent downlink_tbf_assignment_2_struct_s_2_tag;
+ union downlink_tbf_assignment_2_struct_s_2_value{
+ egprs_window_size_ie downlink_egprs_window_size;
+ }downlink_tbf_assignment_2_struct_s_2_value;
+}downlink_tbf_assignment_2_struct;
+
+/* SEQUENCE downlink tbf assignment 2 struct 2 */
+typedef struct downlink_tbf_assignment_2_struct_2{
+ ispresent downlink_tbf_assignment_2_struct_2_s_1_tag;
+ union downlink_tbf_assignment_2_struct_2_s_1_value{
+ U8 pfi;
+ }downlink_tbf_assignment_2_struct_2_s_1_value;
+ U8 rlc_mode;
+ ispresent downlink_tbf_assignment_2_struct_2_s_2_tag;
+ union downlink_tbf_assignment_2_struct_2_s_2_value{
+ U8 uplink_control_timeslot_c1;
+ }downlink_tbf_assignment_2_struct_2_s_2_value;
+ ispresent downlink_tbf_assignment_2_struct_2_s_3_tag;
+ union downlink_tbf_assignment_2_struct_2_s_3_value{
+ U8 uplink_control_timeslot_c2;
+ }downlink_tbf_assignment_2_struct_2_s_3_value;
+ U8 tfi_assignment;
+ U8 control_ack;
+ ispresent downlink_tbf_assignment_2_struct_2_s_4_tag;
+ union downlink_tbf_assignment_2_struct_2_s_4_value{
+ U8 npm_transfer_time;
+ }downlink_tbf_assignment_2_struct_2_s_4_value;
+ U8 event_based_fanr;
+ ispresent downlink_tbf_assignment_2_struct_2_s_5_tag;
+ union downlink_tbf_assignment_2_struct_2_s_5_value{
+ egprs_window_size_ie downlink_egprs_window_size;
+ }downlink_tbf_assignment_2_struct_2_s_5_value;
+}downlink_tbf_assignment_2_struct_2;
+
+typedef struct uplink_tbf_assignment_2_struct_for_mttr_s_5{
+ U8 reported_timeslots_c1;
+ ispresent uplink_tbf_assignment_2_struct_for_mttr_s_6_tag;
+ union uplink_tbf_assignment_2_struct_for_mttr_s_6_value{
+ U8 reported_timeslots_c2;
+ }uplink_tbf_assignment_2_struct_for_mttr_s_6_value;
+}uplink_tbf_assignment_2_struct_for_mttr_s_5;
+
+typedef struct tbf_timeslot_allocation_3{
+ U16 numElements_tbf_timeslot_allocation_3;
+ U8 * tbf_timeslot_allocation_3;
+}tbf_timeslot_allocation_3;
+
+typedef enum {
+ UPLINK_TBF_ASSIGNMENT_2_STRUCT_FOR_MTTR_S_9,
+ UPLINK_TBF_ASSIGNMENT_2_STRUCT_FOR_MTTR_S_11
+}uplink_tbf_assignment_2_struct_for_mttr_s_8_enum;
+
+typedef struct uplink_tbf_assignment_2_struct_for_mttr_s_9{
+ U8 usf_allocation_c1;
+ ispresent uplink_tbf_assignment_2_struct_for_mttr_s_10_tag;
+ union uplink_tbf_assignment_2_struct_for_mttr_s_10_value{
+ U8 usf_allocation_c2;
+ }uplink_tbf_assignment_2_struct_for_mttr_s_10_value;
+}uplink_tbf_assignment_2_struct_for_mttr_s_9;
+
+typedef struct uplink_tbf_assignment_2_struct_for_mttr_s_12{
+ ispresent uplink_tbf_assignment_2_struct_for_mttr_s_12_tag;
+ union uplink_tbf_assignment_2_struct_for_mttr_s_12_value{
+ U8 usf_allocation;
+ }uplink_tbf_assignment_2_struct_for_mttr_s_12_value;
+}uplink_tbf_assignment_2_struct_for_mttr_s_12;
+
+typedef struct uplink_tbf_assignment_2_struct_for_mttr_s_11{
+ U8 usf_allocation;
+ U16 numElements_m_uplink_tbf_assignment_2_struct_for_mttr_s_12;
+ uplink_tbf_assignment_2_struct_for_mttr_s_12 * m_uplink_tbf_assignment_2_struct_for_mttr_s_12;
+}uplink_tbf_assignment_2_struct_for_mttr_s_11;
+
+/* SEQUENCE uplink tbf assignment 2 struct for mttr */
+typedef struct uplink_tbf_assignment_2_struct_for_mttr{
+ U8 pfi;
+ U8 rlc_mode;
+ U8 tfi_assignment;
+ ispresent uplink_tbf_assignment_2_struct_for_mttr_s_1_tag;
+ union uplink_tbf_assignment_2_struct_for_mttr_s_1_value{
+ egprs_modulation_and_coding_ie egprs_channel_coding_command;
+ }uplink_tbf_assignment_2_struct_for_mttr_s_1_value;
+ ispresent uplink_tbf_assignment_2_struct_for_mttr_s_2_tag;
+ union uplink_tbf_assignment_2_struct_for_mttr_s_2_value{
+ egprs_window_size_ie egprs_window_size;
+ }uplink_tbf_assignment_2_struct_for_mttr_s_2_value;
+ ispresent uplink_tbf_assignment_2_struct_for_mttr_s_3_tag;
+ union uplink_tbf_assignment_2_struct_for_mttr_s_3_value{
+ U8 npm_transfer_time;
+ }uplink_tbf_assignment_2_struct_for_mttr_s_3_value;
+ ispresent uplink_tbf_assignment_2_struct_for_mttr_s_4_tag;
+ union uplink_tbf_assignment_2_struct_for_mttr_s_4_value{
+ uplink_tbf_assignment_2_struct_for_mttr_s_5 m_uplink_tbf_assignment_2_struct_for_mttr_s_5;
+ }uplink_tbf_assignment_2_struct_for_mttr_s_4_value;
+ U8 usf_granularity;
+ ispresent uplink_tbf_assignment_2_struct_for_mttr_s_7_tag;
+ union uplink_tbf_assignment_2_struct_for_mttr_s_7_value{
+ tbf_timeslot_allocation_3 m_tbf_timeslot_allocation_3;
+ }uplink_tbf_assignment_2_struct_for_mttr_s_7_value;
+ uplink_tbf_assignment_2_struct_for_mttr_s_8_enum uplink_tbf_assignment_2_struct_for_mttr_s_8_tag;
+ union uplink_tbf_assignment_2_struct_for_mttr_s_8_value{
+ uplink_tbf_assignment_2_struct_for_mttr_s_9 m_uplink_tbf_assignment_2_struct_for_mttr_s_9;
+ uplink_tbf_assignment_2_struct_for_mttr_s_11 m_uplink_tbf_assignment_2_struct_for_mttr_s_11;
+ }uplink_tbf_assignment_2_struct_for_mttr_s_8_value;
+}uplink_tbf_assignment_2_struct_for_mttr;
+
+typedef struct power_control_parameter_in_mtbf_assignment_s_3{
+ ispresent power_control_parameter_in_mtbf_assignment_s_3_tag;
+ union power_control_parameter_in_mtbf_assignment_s_3_value{
+ U8 gamma;
+ }power_control_parameter_in_mtbf_assignment_s_3_value;
+}power_control_parameter_in_mtbf_assignment_s_3;
+
+typedef struct power_control_parameter_in_mtbf_assignment_s_5{
+ ispresent power_control_parameter_in_mtbf_assignment_s_5_tag;
+ union power_control_parameter_in_mtbf_assignment_s_5_value{
+ U8 gamma;
+ }power_control_parameter_in_mtbf_assignment_s_5_value;
+}power_control_parameter_in_mtbf_assignment_s_5;
+
+typedef struct _power_control_parameter_in_mtbf_assignment_s_5{
+ U16 numElements_m_power_control_parameter_in_mtbf_assignment_s_5;
+ power_control_parameter_in_mtbf_assignment_s_5 * m_power_control_parameter_in_mtbf_assignment_s_5;
+}_power_control_parameter_in_mtbf_assignment_s_5;
+
+typedef struct power_control_parameter_in_mtbf_assignment_s_1{
+ U8 alpha_c1;
+ ispresent power_control_parameter_in_mtbf_assignment_s_2_tag;
+ union power_control_parameter_in_mtbf_assignment_s_2_value{
+ U8 alpha_c2;
+ }power_control_parameter_in_mtbf_assignment_s_2_value;
+ U8 n_pairs;
+ U16 numElements_m_power_control_parameter_in_mtbf_assignment_s_3;
+ power_control_parameter_in_mtbf_assignment_s_3 * m_power_control_parameter_in_mtbf_assignment_s_3;
+ ispresent power_control_parameter_in_mtbf_assignment_s_4_tag;
+ union power_control_parameter_in_mtbf_assignment_s_4_value{
+ _power_control_parameter_in_mtbf_assignment_s_5 m_power_control_parameter_in_mtbf_assignment_s_5;
+ }power_control_parameter_in_mtbf_assignment_s_4_value;
+}power_control_parameter_in_mtbf_assignment_s_1;
+
+/* SEQUENCE power control parameter in mtbf assignment */
+typedef struct power_control_parameter_in_mtbf_assignment{
+ ispresent power_control_parameter_in_mtbf_assignment_s_0_tag;
+ union power_control_parameter_in_mtbf_assignment_s_0_value{
+ power_control_parameter_in_mtbf_assignment_s_1 m_power_control_parameter_in_mtbf_assignment_s_1;
+ }power_control_parameter_in_mtbf_assignment_s_0_value;
+}power_control_parameter_in_mtbf_assignment;
+
+typedef struct uplink_tbf_assignment_2_struct_in_ps_ho_rr_2_s_6{
+ U8 reported_timeslots_c1;
+ ispresent uplink_tbf_assignment_2_struct_in_ps_ho_rr_2_s_7_tag;
+ union uplink_tbf_assignment_2_struct_in_ps_ho_rr_2_s_7_value{
+ U8 reported_timeslots_c2;
+ }uplink_tbf_assignment_2_struct_in_ps_ho_rr_2_s_7_value;
+}uplink_tbf_assignment_2_struct_in_ps_ho_rr_2_s_6;
+
+typedef struct tbf_timeslot_allocation_4{
+ U16 numElements_tbf_timeslot_allocation_4;
+ U8 * tbf_timeslot_allocation_4;
+}tbf_timeslot_allocation_4;
+
+typedef enum {
+ UPLINK_TBF_ASSIGNMENT_2_STRUCT_IN_PS_HO_RR_2_S_10,
+ UPLINK_TBF_ASSIGNMENT_2_STRUCT_IN_PS_HO_RR_2_S_12
+}uplink_tbf_assignment_2_struct_in_ps_ho_rr_2_s_9_enum;
+
+typedef struct uplink_tbf_assignment_2_struct_in_ps_ho_rr_2_s_10{
+ U8 usf_allocation_c1;
+ ispresent uplink_tbf_assignment_2_struct_in_ps_ho_rr_2_s_11_tag;
+ union uplink_tbf_assignment_2_struct_in_ps_ho_rr_2_s_11_value{
+ U8 usf_allocation_c2;
+ }uplink_tbf_assignment_2_struct_in_ps_ho_rr_2_s_11_value;
+}uplink_tbf_assignment_2_struct_in_ps_ho_rr_2_s_10;
+
+typedef struct uplink_tbf_assignment_2_struct_in_ps_ho_rr_2_s_13{
+ ispresent uplink_tbf_assignment_2_struct_in_ps_ho_rr_2_s_13_tag;
+ union uplink_tbf_assignment_2_struct_in_ps_ho_rr_2_s_13_value{
+ U8 usf_allocation;
+ }uplink_tbf_assignment_2_struct_in_ps_ho_rr_2_s_13_value;
+}uplink_tbf_assignment_2_struct_in_ps_ho_rr_2_s_13;
+
+typedef struct uplink_tbf_assignment_2_struct_in_ps_ho_rr_2_s_12{
+ U8 usf_allocation;
+ U16 numElements_m_uplink_tbf_assignment_2_struct_in_ps_ho_rr_2_s_13;
+ uplink_tbf_assignment_2_struct_in_ps_ho_rr_2_s_13 * m_uplink_tbf_assignment_2_struct_in_ps_ho_rr_2_s_13;
+}uplink_tbf_assignment_2_struct_in_ps_ho_rr_2_s_12;
+
+/* SEQUENCE uplink tbf assignment 2 struct in ps ho rr 2 */
+typedef struct uplink_tbf_assignment_2_struct_in_ps_ho_rr_2{
+ ispresent uplink_tbf_assignment_2_struct_in_ps_ho_rr_2_s_1_tag;
+ union uplink_tbf_assignment_2_struct_in_ps_ho_rr_2_s_1_value{
+ U8 pfi;
+ }uplink_tbf_assignment_2_struct_in_ps_ho_rr_2_s_1_value;
+ U8 rlc_mode;
+ U8 tfi_assignment;
+ ispresent uplink_tbf_assignment_2_struct_in_ps_ho_rr_2_s_2_tag;
+ union uplink_tbf_assignment_2_struct_in_ps_ho_rr_2_s_2_value{
+ egprs_modulation_and_coding_ie egprs_channel_coding_command;
+ }uplink_tbf_assignment_2_struct_in_ps_ho_rr_2_s_2_value;
+ ispresent uplink_tbf_assignment_2_struct_in_ps_ho_rr_2_s_3_tag;
+ union uplink_tbf_assignment_2_struct_in_ps_ho_rr_2_s_3_value{
+ egprs_window_size_ie egprs_window_size;
+ }uplink_tbf_assignment_2_struct_in_ps_ho_rr_2_s_3_value;
+ ispresent uplink_tbf_assignment_2_struct_in_ps_ho_rr_2_s_4_tag;
+ union uplink_tbf_assignment_2_struct_in_ps_ho_rr_2_s_4_value{
+ U8 npm_transfer_time;
+ }uplink_tbf_assignment_2_struct_in_ps_ho_rr_2_s_4_value;
+ ispresent uplink_tbf_assignment_2_struct_in_ps_ho_rr_2_s_5_tag;
+ union uplink_tbf_assignment_2_struct_in_ps_ho_rr_2_s_5_value{
+ uplink_tbf_assignment_2_struct_in_ps_ho_rr_2_s_6 m_uplink_tbf_assignment_2_struct_in_ps_ho_rr_2_s_6;
+ }uplink_tbf_assignment_2_struct_in_ps_ho_rr_2_s_5_value;
+ U8 usf_granularity;
+ ispresent uplink_tbf_assignment_2_struct_in_ps_ho_rr_2_s_8_tag;
+ union uplink_tbf_assignment_2_struct_in_ps_ho_rr_2_s_8_value{
+ tbf_timeslot_allocation_4 m_tbf_timeslot_allocation_4;
+ }uplink_tbf_assignment_2_struct_in_ps_ho_rr_2_s_8_value;
+ uplink_tbf_assignment_2_struct_in_ps_ho_rr_2_s_9_enum uplink_tbf_assignment_2_struct_in_ps_ho_rr_2_s_9_tag;
+ union uplink_tbf_assignment_2_struct_in_ps_ho_rr_2_s_9_value{
+ uplink_tbf_assignment_2_struct_in_ps_ho_rr_2_s_10 m_uplink_tbf_assignment_2_struct_in_ps_ho_rr_2_s_10;
+ uplink_tbf_assignment_2_struct_in_ps_ho_rr_2_s_12 m_uplink_tbf_assignment_2_struct_in_ps_ho_rr_2_s_12;
+ }uplink_tbf_assignment_2_struct_in_ps_ho_rr_2_s_9_value;
+}uplink_tbf_assignment_2_struct_in_ps_ho_rr_2;
+
+/* SEQUENCE extension information */
+typedef struct extension_information{
+ Bool is_extension_information_bit_present; //truncation or optional
+ U8 extension_information_bit;
+}extension_information;
+
+/* SEQUENCE e-utran target cell ie */
+typedef struct e_utran_target_cell_ie{
+ U16 earfcn;
+ ispresent e_utran_target_cell_ie_s_1_tag;
+ union e_utran_target_cell_ie_s_1_value{
+ U8 measurement_bandwidth;
+ }e_utran_target_cell_ie_s_1_value;
+ U16 physical_layer_cell_identity;
+}e_utran_target_cell_ie;
+
+/* SEQUENCE e-utran target cell ie */
+typedef struct e_utran_target_cell_extended_earfcn_ie{
+ U32 extended_earfcn;
+ ispresent e_utran_target_cell_extended_earfcn_ie_s_1_tag;
+ union e_utran_target_cell_extended_earfcn_ie_s_1_value{
+ U8 measurement_bandwidth;
+ }e_utran_target_cell_extended_earfcn_ie_s_1_value;
+ U16 physical_layer_cell_identity;
+}e_utran_target_cell_extended_earfcn_ie;
+
+/* SEQUENCE plmn-id field */
+typedef struct plmn_id_field{
+ U16 mcc;
+ U16 mnc;
+}plmn_id_field;
+
+/* SEQUENCE utran csg target cell ie */
+typedef struct utran_csg_target_cell_ie{
+ U32 utran_ci;
+ ispresent utran_csg_target_cell_ie_s_1_tag;
+ union utran_csg_target_cell_ie_s_1_value{
+ plmn_id_field plmn_id;
+ }utran_csg_target_cell_ie_s_1_value;
+}utran_csg_target_cell_ie;
+
+/* SEQUENCE e-utran csg target cell ie */
+typedef struct e_utran_csg_target_cell_ie{
+ U32 e__utran_ci;
+ U16 tracking_area_code;
+ ispresent e_utran_csg_target_cell_ie_s_1_tag;
+ union e_utran_csg_target_cell_ie_s_1_value{
+ plmn_id_field plmn_id;
+ }e_utran_csg_target_cell_ie_s_1_value;
+}e_utran_csg_target_cell_ie;
+
+/* SEQUENCE e-utran target cell struct */
+typedef struct e_utran_target_cell_struct{
+ U16 earfcn;
+ ispresent e_utran_target_cell_struct_s_1_tag;
+ union e_utran_target_cell_struct_s_1_value{
+ U8 measurement_bandwidth;
+ }e_utran_target_cell_struct_s_1_value;
+ U16 physical_layer_cell_identity;
+ U8 reporting_quantity;
+}e_utran_target_cell_struct;
+
+/* SEQUENCE e-utran target cell struct */
+typedef struct e_utran_target_cell_extended_earfcn_struct{
+ U32 extended_earfcn;
+ ispresent e_utran_target_cell_extended_earfcn_struct_s_1_tag;
+ union e_utran_target_cell_extended_earfcn_struct_s_1_value{
+ U8 measurement_bandwidth;
+ }e_utran_target_cell_extended_earfcn_struct_s_1_value;
+ U16 physical_layer_cell_identity;
+ U8 reporting_quantity;
+}e_utran_target_cell_extended_earfcn_struct;
+
+typedef struct e_utran_ccn_measurement_report_struct_s_1{
+ U8 e_utran_frequency_index;
+ U16 cell_identity;
+ U8 reporting_quantity;
+}e_utran_ccn_measurement_report_struct_s_1;
+
+/* SEQUENCE e-utran ccn measurement report struct */
+typedef struct e_utran_ccn_measurement_report_struct{
+ U8 p_3_g_ba_used;
+ U8 n_e_utran;
+ U16 numElements_m_e_utran_ccn_measurement_report_struct_s_1;
+ e_utran_ccn_measurement_report_struct_s_1 * m_e_utran_ccn_measurement_report_struct_s_1;
+}e_utran_ccn_measurement_report_struct;
+
+/* SEQUENCE utran csg measurement report ie */
+typedef struct utran_csg_measurement_report_ie{
+ U32 utran_cgi;
+ ispresent utran_csg_measurement_report_ie_s_1_tag;
+ union utran_csg_measurement_report_ie_s_1_value{
+ plmn_id_field plmn_id;
+ }utran_csg_measurement_report_ie_s_1_value;
+ U32 csg_id;
+ U8 access_mode;
+ U8 reporting_quantity;
+}utran_csg_measurement_report_ie;
+
+/* SEQUENCE e-utran csg measurement report ie */
+typedef struct e_utran_csg_measurement_report_ie{
+ U32 e_utran_ci;
+ U16 tracking_area_code;
+ ispresent e_utran_csg_measurement_report_ie_s_1_tag;
+ union e_utran_csg_measurement_report_ie_s_1_value{
+ plmn_id_field plmn_id;
+ }e_utran_csg_measurement_report_ie_s_1_value;
+ U32 csg_id;
+ U8 access_mode;
+ U8 reporting_quantity;
+}e_utran_csg_measurement_report_ie;
+
+/* SEQUENCE uplink header struct */
+typedef struct uplink_header_struct{
+ U8 payload_type;
+ U8 retry;
+ U8 message_type;
+}uplink_header_struct;
+
+/* SEQUENCE channel request description ie */
+typedef struct channel_request_description_ie{
+ U8 peak_throughput_class;
+ U8 radio_priority;
+ U8 rlc_mode;
+ U8 llc__pdu_type;
+ U16 rlc_octet_count;
+}channel_request_description_ie;
+
+/* SEQUENCE iu mode channel request description ie */
+typedef struct iu_mode_channel_request_description_ie{
+ U8 rb_id;
+ U8 radio_priority;
+ ispresent iu_mode_channel_request_description_ie_s_1_tag;
+ union iu_mode_channel_request_description_ie_s_1_value{
+ U8 rlc_block_count;
+ }iu_mode_channel_request_description_ie_s_1_value;
+ ispresent iu_mode_channel_request_description_ie_s_2_tag;
+ union iu_mode_channel_request_description_ie_s_2_value{
+ struct iu_mode_channel_request_description_ie * m_iu_mode_channel_request_description_ie;
+ }iu_mode_channel_request_description_ie_s_2_value;
+}iu_mode_channel_request_description_ie;
+
+/* SEQUENCE extended channel request description ie */
+typedef struct extended_channel_request_description_ie{
+ U8 pfi;
+ U8 radio_priority;
+ U8 rlc_mode;
+ ispresent extended_channel_request_description_ie_s_1_tag;
+ union extended_channel_request_description_ie_s_1_value{
+ U8 llc__pdu_type;
+ }extended_channel_request_description_ie_s_1_value;
+ ispresent extended_channel_request_description_ie_s_2_tag;
+ union extended_channel_request_description_ie_s_2_value{
+ struct extended_channel_request_description_ie * m_extended_channel_request_description_ie;
+ }extended_channel_request_description_ie_s_2_value;
+}extended_channel_request_description_ie;
+
+typedef struct egprs_bep_link_quality_measurements_ie_s_2{
+ U8 gmsk_mean_bep;
+ U8 gmsk_cv_bep;
+}egprs_bep_link_quality_measurements_ie_s_2;
+
+typedef struct egprs_bep_link_quality_measurements_ie_s_4{
+ U8 p_8_psk_mean_bep;
+ U8 p_8_psk_cv_bep;
+}egprs_bep_link_quality_measurements_ie_s_4;
+
+/* SEQUENCE egprs bep link quality measurements ie */
+typedef struct egprs_bep_link_quality_measurements_ie{
+ ispresent egprs_bep_link_quality_measurements_ie_s_1_tag;
+ union egprs_bep_link_quality_measurements_ie_s_1_value{
+ egprs_bep_link_quality_measurements_ie_s_2 m_egprs_bep_link_quality_measurements_ie_s_2;
+ }egprs_bep_link_quality_measurements_ie_s_1_value;
+ ispresent egprs_bep_link_quality_measurements_ie_s_3_tag;
+ union egprs_bep_link_quality_measurements_ie_s_3_value{
+ egprs_bep_link_quality_measurements_ie_s_4 m_egprs_bep_link_quality_measurements_ie_s_4;
+ }egprs_bep_link_quality_measurements_ie_s_3_value;
+}egprs_bep_link_quality_measurements_ie;
+
+typedef enum {
+ GMSK_MEAN_BEP__TN0,
+ P_8_PSK_MEAN_BEP__TN0
+}bep_measurement_report_struct_s_2_enum;
+
+typedef struct bep_measurement_report_struct_s_2{
+ bep_measurement_report_struct_s_2_enum bep_measurement_report_struct_s_2_tag;
+ union bep_measurement_report_struct_s_2_value{
+ U8 gmsk_mean_bep__tn0;
+ U8 p_8_psk_mean_bep__tn0;
+ }bep_measurement_report_struct_s_2_value;
+}bep_measurement_report_struct_s_2;
+
+typedef enum {
+ GMSK_MEAN_BEP__TN1,
+ P_8_PSK_MEAN_BEP__TN1
+}bep_measurement_report_struct_s_4_enum;
+
+typedef struct bep_measurement_report_struct_s_4{
+ bep_measurement_report_struct_s_4_enum bep_measurement_report_struct_s_4_tag;
+ union bep_measurement_report_struct_s_4_value{
+ U8 gmsk_mean_bep__tn1;
+ U8 p_8_psk_mean_bep__tn1;
+ }bep_measurement_report_struct_s_4_value;
+}bep_measurement_report_struct_s_4;
+
+typedef enum {
+ GMSK_MEAN_BEP__TN2,
+ P_8_PSK_MEAN_BEP__TN2
+}bep_measurement_report_struct_s_6_enum;
+
+typedef struct bep_measurement_report_struct_s_6{
+ bep_measurement_report_struct_s_6_enum bep_measurement_report_struct_s_6_tag;
+ union bep_measurement_report_struct_s_6_value{
+ U8 gmsk_mean_bep__tn2;
+ U8 p_8_psk_mean_bep__tn2;
+ }bep_measurement_report_struct_s_6_value;
+}bep_measurement_report_struct_s_6;
+
+typedef enum {
+ GMSK_MEAN_BEP__TN3,
+ P_8_PSK_MEAN_BEP__TN3
+}bep_measurement_report_struct_s_8_enum;
+
+typedef struct bep_measurement_report_struct_s_8{
+ bep_measurement_report_struct_s_8_enum bep_measurement_report_struct_s_8_tag;
+ union bep_measurement_report_struct_s_8_value{
+ U8 gmsk_mean_bep__tn3;
+ U8 p_8_psk_mean_bep__tn3;
+ }bep_measurement_report_struct_s_8_value;
+}bep_measurement_report_struct_s_8;
+
+typedef enum {
+ GMSK_MEAN_BEP__TN4,
+ P_8_PSK_MEAN_BEP__TN4
+}bep_measurement_report_struct_s_10_enum;
+
+typedef struct bep_measurement_report_struct_s_10{
+ bep_measurement_report_struct_s_10_enum bep_measurement_report_struct_s_10_tag;
+ union bep_measurement_report_struct_s_10_value{
+ U8 gmsk_mean_bep__tn4;
+ U8 p_8_psk_mean_bep__tn4;
+ }bep_measurement_report_struct_s_10_value;
+}bep_measurement_report_struct_s_10;
+
+typedef enum {
+ GMSK_MEAN_BEP__TN5,
+ P_8_PSK_MEAN_BEP__TN5
+}bep_measurement_report_struct_s_12_enum;
+
+typedef struct bep_measurement_report_struct_s_12{
+ bep_measurement_report_struct_s_12_enum bep_measurement_report_struct_s_12_tag;
+ union bep_measurement_report_struct_s_12_value{
+ U8 gmsk_mean_bep__tn5;
+ U8 p_8_psk_mean_bep__tn5;
+ }bep_measurement_report_struct_s_12_value;
+}bep_measurement_report_struct_s_12;
+
+typedef enum {
+ GMSK_MEAN_BEP__TN6,
+ P_8_PSK_MEAN_BEP__TN6
+}bep_measurement_report_struct_s_14_enum;
+
+typedef struct bep_measurement_report_struct_s_14{
+ bep_measurement_report_struct_s_14_enum bep_measurement_report_struct_s_14_tag;
+ union bep_measurement_report_struct_s_14_value{
+ U8 gmsk_mean_bep__tn6;
+ U8 p_8_psk_mean_bep__tn6;
+ }bep_measurement_report_struct_s_14_value;
+}bep_measurement_report_struct_s_14;
+
+typedef enum {
+ GMSK_MEAN_BEP__TN7,
+ P_8_PSK_MEAN_BEP__TN7
+}bep_measurement_report_struct_s_16_enum;
+
+typedef struct bep_measurement_report_struct_s_16{
+ bep_measurement_report_struct_s_16_enum bep_measurement_report_struct_s_16_tag;
+ union bep_measurement_report_struct_s_16_value{
+ U8 gmsk_mean_bep__tn7;
+ U8 p_8_psk_mean_bep__tn7;
+ }bep_measurement_report_struct_s_16_value;
+}bep_measurement_report_struct_s_16;
+
+/* SEQUENCE bep measurement report struct */
+typedef struct bep_measurement_report_struct{
+ ispresent bep_measurement_report_struct_s_1_tag;
+ union bep_measurement_report_struct_s_1_value{
+ bep_measurement_report_struct_s_2 m_bep_measurement_report_struct_s_2;
+ }bep_measurement_report_struct_s_1_value;
+ ispresent bep_measurement_report_struct_s_3_tag;
+ union bep_measurement_report_struct_s_3_value{
+ bep_measurement_report_struct_s_4 m_bep_measurement_report_struct_s_4;
+ }bep_measurement_report_struct_s_3_value;
+ ispresent bep_measurement_report_struct_s_5_tag;
+ union bep_measurement_report_struct_s_5_value{
+ bep_measurement_report_struct_s_6 m_bep_measurement_report_struct_s_6;
+ }bep_measurement_report_struct_s_5_value;
+ ispresent bep_measurement_report_struct_s_7_tag;
+ union bep_measurement_report_struct_s_7_value{
+ bep_measurement_report_struct_s_8 m_bep_measurement_report_struct_s_8;
+ }bep_measurement_report_struct_s_7_value;
+ ispresent bep_measurement_report_struct_s_9_tag;
+ union bep_measurement_report_struct_s_9_value{
+ bep_measurement_report_struct_s_10 m_bep_measurement_report_struct_s_10;
+ }bep_measurement_report_struct_s_9_value;
+ ispresent bep_measurement_report_struct_s_11_tag;
+ union bep_measurement_report_struct_s_11_value{
+ bep_measurement_report_struct_s_12 m_bep_measurement_report_struct_s_12;
+ }bep_measurement_report_struct_s_11_value;
+ ispresent bep_measurement_report_struct_s_13_tag;
+ union bep_measurement_report_struct_s_13_value{
+ bep_measurement_report_struct_s_14 m_bep_measurement_report_struct_s_14;
+ }bep_measurement_report_struct_s_13_value;
+ ispresent bep_measurement_report_struct_s_15_tag;
+ union bep_measurement_report_struct_s_15_value{
+ bep_measurement_report_struct_s_16 m_bep_measurement_report_struct_s_16;
+ }bep_measurement_report_struct_s_15_value;
+}bep_measurement_report_struct;
+
+/* SEQUENCE interference measurement report struct */
+typedef struct interference_measurement_report_struct{
+ ispresent interference_measurement_report_struct_s_1_tag;
+ union interference_measurement_report_struct_s_1_value{
+ U8 i_level_tn0;
+ }interference_measurement_report_struct_s_1_value;
+ ispresent interference_measurement_report_struct_s_2_tag;
+ union interference_measurement_report_struct_s_2_value{
+ U8 i_level_tn1;
+ }interference_measurement_report_struct_s_2_value;
+ ispresent interference_measurement_report_struct_s_3_tag;
+ union interference_measurement_report_struct_s_3_value{
+ U8 i_level_tn2;
+ }interference_measurement_report_struct_s_3_value;
+ ispresent interference_measurement_report_struct_s_4_tag;
+ union interference_measurement_report_struct_s_4_value{
+ U8 i_level_tn3;
+ }interference_measurement_report_struct_s_4_value;
+ ispresent interference_measurement_report_struct_s_5_tag;
+ union interference_measurement_report_struct_s_5_value{
+ U8 i_level_tn4;
+ }interference_measurement_report_struct_s_5_value;
+ ispresent interference_measurement_report_struct_s_6_tag;
+ union interference_measurement_report_struct_s_6_value{
+ U8 i_level_tn5;
+ }interference_measurement_report_struct_s_6_value;
+ ispresent interference_measurement_report_struct_s_7_tag;
+ union interference_measurement_report_struct_s_7_value{
+ U8 i_level_tn6;
+ }interference_measurement_report_struct_s_7_value;
+ ispresent interference_measurement_report_struct_s_8_tag;
+ union interference_measurement_report_struct_s_8_value{
+ U8 i_level_tn7;
+ }interference_measurement_report_struct_s_8_value;
+}interference_measurement_report_struct;
+
+typedef struct ccn_measurement_report_struct_s_2{
+ U8 frequency_n;
+ ispresent ccn_measurement_report_struct_s_3_tag;
+ union ccn_measurement_report_struct_s_3_value{
+ U8 bsic_n;
+ }ccn_measurement_report_struct_s_3_value;
+ U8 rxlev_n;
+}ccn_measurement_report_struct_s_2;
+
+/* SEQUENCE ccn measurement report struct */
+typedef struct ccn_measurement_report_struct{
+ U8 rxlev_serving_cell;
+ ispresent ccn_measurement_report_struct_s_1_tag;
+ union ccn_measurement_report_struct_s_1_value{
+ U8 interference_serving_cell;
+ }ccn_measurement_report_struct_s_1_value;
+ U8 number_of_nc_measurements;
+ U16 numElements_m_ccn_measurement_report_struct_s_2;
+ ccn_measurement_report_struct_s_2 * m_ccn_measurement_report_struct_s_2;
+}ccn_measurement_report_struct;
+
+typedef struct p_3_g_target_cell_struct_s_2{
+ U16 fdd_arfcn;
+ ispresent p_3_g_target_cell_struct_s_3_tag;
+ union p_3_g_target_cell_struct_s_3_value{
+ U8 bandwidth_fdd;
+ }p_3_g_target_cell_struct_s_3_value;
+ U16 scrambling_code;
+}p_3_g_target_cell_struct_s_2;
+
+typedef struct p_3_g_target_cell_struct_s_5{
+ U16 tdd_arfcn;
+ ispresent p_3_g_target_cell_struct_s_6_tag;
+ union p_3_g_target_cell_struct_s_6_value{
+ U8 bandwidth_tdd;
+ }p_3_g_target_cell_struct_s_6_value;
+ U8 cell_parameter;
+ U8 sync_case;
+}p_3_g_target_cell_struct_s_5;
+
+/* SEQUENCE 3 g target cell struct */
+typedef struct p_3_g_target_cell_struct{
+ ispresent p_3_g_target_cell_struct_s_1_tag;
+ union p_3_g_target_cell_struct_s_1_value{
+ p_3_g_target_cell_struct_s_2 m_p_3_g_target_cell_struct_s_2;
+ }p_3_g_target_cell_struct_s_1_value;
+ ispresent p_3_g_target_cell_struct_s_4_tag;
+ union p_3_g_target_cell_struct_s_4_value{
+ p_3_g_target_cell_struct_s_5 m_p_3_g_target_cell_struct_s_5;
+ }p_3_g_target_cell_struct_s_4_value;
+ U8 reporting_quantity;
+}p_3_g_target_cell_struct;
+
+typedef struct p_3_g_ccn_measurement_report_struct_s_1{
+ U8 p_3_g_cell_list_index;
+ U8 reporting_quantity;
+}p_3_g_ccn_measurement_report_struct_s_1;
+
+/* SEQUENCE 3 g ccn measurement report struct */
+typedef struct p_3_g_ccn_measurement_report_struct{
+ U8 n_3g;
+ U16 numElements_m_p_3_g_ccn_measurement_report_struct_s_1;
+ p_3_g_ccn_measurement_report_struct_s_1 * m_p_3_g_ccn_measurement_report_struct_s_1;
+}p_3_g_ccn_measurement_report_struct;
+
+/* SEQUENCE channel quality report struct */
+typedef struct channel_quality_report_struct{
+ U8 c_value;
+ U8 rxqual;
+ U8 sign_var;
+ ispresent channel_quality_report_struct_s_1_tag;
+ union channel_quality_report_struct_s_1_value{
+ U8 i_level_tn0;
+ }channel_quality_report_struct_s_1_value;
+ ispresent channel_quality_report_struct_s_2_tag;
+ union channel_quality_report_struct_s_2_value{
+ U8 i_level_tn1;
+ }channel_quality_report_struct_s_2_value;
+ ispresent channel_quality_report_struct_s_3_tag;
+ union channel_quality_report_struct_s_3_value{
+ U8 i_level_tn2;
+ }channel_quality_report_struct_s_3_value;
+ ispresent channel_quality_report_struct_s_4_tag;
+ union channel_quality_report_struct_s_4_value{
+ U8 i_level_tn3;
+ }channel_quality_report_struct_s_4_value;
+ ispresent channel_quality_report_struct_s_5_tag;
+ union channel_quality_report_struct_s_5_value{
+ U8 i_level_tn4;
+ }channel_quality_report_struct_s_5_value;
+ ispresent channel_quality_report_struct_s_6_tag;
+ union channel_quality_report_struct_s_6_value{
+ U8 i_level_tn5;
+ }channel_quality_report_struct_s_6_value;
+ ispresent channel_quality_report_struct_s_7_tag;
+ union channel_quality_report_struct_s_7_value{
+ U8 i_level_tn6;
+ }channel_quality_report_struct_s_7_value;
+ ispresent channel_quality_report_struct_s_8_tag;
+ union channel_quality_report_struct_s_8_value{
+ U8 i_level_tn7;
+ }channel_quality_report_struct_s_8_value;
+}channel_quality_report_struct;
+
+/* SEQUENCE epd a/n extension info */
+typedef struct epd_a_n_extension_info{
+ Bool is_epd_a_n_extension_info_s_1_present; //truncation or optional
+ ispresent epd_a_n_extension_info_s_2_tag;
+ union epd_a_n_extension_info_s_2_value{
+ struct iu_mode_channel_request_description_ie * iu_mode_channel_request_description;
+ }epd_a_n_extension_info_s_2_value;
+ ispresent epd_a_n_extension_info_s_3_tag;
+ union epd_a_n_extension_info_s_3_value{
+ U8 rb_id;
+ }epd_a_n_extension_info_s_3_value;
+ ispresent epd_a_n_extension_info_s_4_tag;
+ union epd_a_n_extension_info_s_4_value{
+ U8 timeslot_number;
+ }epd_a_n_extension_info_s_4_value;
+ Bool is_epd_a_n_extension_info_s_5_present; //truncation or optional
+ ispresent epd_a_n_extension_info_s_6_tag;
+ union epd_a_n_extension_info_s_6_value{
+ struct extended_channel_request_description_ie * extended_channel_request_description;
+ }epd_a_n_extension_info_s_6_value;
+}epd_a_n_extension_info;
+
+typedef struct nc_measurement_report_struct_s_2{
+ U8 frequency_n;
+ ispresent nc_measurement_report_struct_s_3_tag;
+ union nc_measurement_report_struct_s_3_value{
+ U8 bsic_n;
+ }nc_measurement_report_struct_s_3_value;
+ U8 rxlev_n;
+}nc_measurement_report_struct_s_2;
+
+/* SEQUENCE nc measurement report struct */
+typedef struct nc_measurement_report_struct{
+ U8 nc_mode;
+ U8 rxlev_serving_cell;
+ ispresent nc_measurement_report_struct_s_1_tag;
+ union nc_measurement_report_struct_s_1_value{
+ U8 interference_serving_cell;
+ }nc_measurement_report_struct_s_1_value;
+ U8 number_of_nc_measurements;
+ U16 numElements_m_nc_measurement_report_struct_s_2;
+ nc_measurement_report_struct_s_2 * m_nc_measurement_report_struct_s_2;
+}nc_measurement_report_struct;
+
+typedef struct ext_measurement_report_struct_s_2{
+ ispresent ext_measurement_report_struct_s_3_tag;
+ union ext_measurement_report_struct_s_3_value{
+ U8 i_level_tn0;
+ }ext_measurement_report_struct_s_3_value;
+ ispresent ext_measurement_report_struct_s_4_tag;
+ union ext_measurement_report_struct_s_4_value{
+ U8 i_level_tn1;
+ }ext_measurement_report_struct_s_4_value;
+ ispresent ext_measurement_report_struct_s_5_tag;
+ union ext_measurement_report_struct_s_5_value{
+ U8 i_level_tn2;
+ }ext_measurement_report_struct_s_5_value;
+ ispresent ext_measurement_report_struct_s_6_tag;
+ union ext_measurement_report_struct_s_6_value{
+ U8 i_level_tn3;
+ }ext_measurement_report_struct_s_6_value;
+ ispresent ext_measurement_report_struct_s_7_tag;
+ union ext_measurement_report_struct_s_7_value{
+ U8 i_level_tn4;
+ }ext_measurement_report_struct_s_7_value;
+ ispresent ext_measurement_report_struct_s_8_tag;
+ union ext_measurement_report_struct_s_8_value{
+ U8 i_level_tn5;
+ }ext_measurement_report_struct_s_8_value;
+ ispresent ext_measurement_report_struct_s_9_tag;
+ union ext_measurement_report_struct_s_9_value{
+ U8 i_level_tn6;
+ }ext_measurement_report_struct_s_9_value;
+ ispresent ext_measurement_report_struct_s_10_tag;
+ union ext_measurement_report_struct_s_10_value{
+ U8 i_level_tn7;
+ }ext_measurement_report_struct_s_10_value;
+}ext_measurement_report_struct_s_2;
+
+typedef struct ext_measurement_report_struct_s_11{
+ U8 frequency_n;
+ ispresent ext_measurement_report_struct_s_12_tag;
+ union ext_measurement_report_struct_s_12_value{
+ U8 bsic_n;
+ }ext_measurement_report_struct_s_12_value;
+ U8 rxlev_n;
+}ext_measurement_report_struct_s_11;
+
+/* SEQUENCE ext measurement report struct */
+typedef struct ext_measurement_report_struct{
+ U8 ext_reporting_type;
+ ispresent ext_measurement_report_struct_s_1_tag;
+ union ext_measurement_report_struct_s_1_value{
+ ext_measurement_report_struct_s_2 m_ext_measurement_report_struct_s_2;
+ }ext_measurement_report_struct_s_1_value;
+ U8 number_of_measurements;
+ U16 numElements_m_ext_measurement_report_struct_s_11;
+ ext_measurement_report_struct_s_11 * m_ext_measurement_report_struct_s_11;
+}ext_measurement_report_struct;
+
+typedef struct p_3_g_measurement_report_struct_s_1{
+ U8 p_3_g_cell_list_index;
+ U8 reporting_quantity;
+}p_3_g_measurement_report_struct_s_1;
+
+/* SEQUENCE 3 g measurement report struct */
+typedef struct p_3_g_measurement_report_struct{
+ U8 n_3g;
+ U16 numElements_m_p_3_g_measurement_report_struct_s_1;
+ p_3_g_measurement_report_struct_s_1 * m_p_3_g_measurement_report_struct_s_1;
+}p_3_g_measurement_report_struct;
+
+/* SEQUENCE serving cell data struct 1 */
+typedef struct serving_cell_data_struct_1{
+ U8 rxlev_serving_cell;
+ ispresent serving_cell_data_struct_1_s_1_tag;
+ union serving_cell_data_struct_1_s_1_value{
+ U8 interference_serving_cell;
+ }serving_cell_data_struct_1_s_1_value;
+}serving_cell_data_struct_1;
+
+typedef struct psi_message_list_struct_s_3{
+ U8 psix_count;
+ U16 numElements_instance_bitmap;
+ U8 * instance_bitmap;
+}psi_message_list_struct_s_3;
+
+typedef struct psi_message_list_struct_s_1{
+ U8 message_type;
+ U8 psix_change_mark;
+ ispresent psi_message_list_struct_s_2_tag;
+ union psi_message_list_struct_s_2_value{
+ psi_message_list_struct_s_3 m_psi_message_list_struct_s_3;
+ }psi_message_list_struct_s_2_value;
+}psi_message_list_struct_s_1;
+
+/* SEQUENCE psi message list struct */
+typedef struct psi_message_list_struct{
+ U16 numElements_m_psi_message_list_struct_s_1;
+ psi_message_list_struct_s_1 * m_psi_message_list_struct_s_1;
+ U8 additional_msg_type;
+}psi_message_list_struct;
+
+/* SEQUENCE unknown psi message list struct */
+typedef struct unknown_psi_message_list_struct{
+ U16 numElements_message_type;
+ U8 * message_type;
+ U8 additional_msg_type;
+}unknown_psi_message_list_struct;
+
+typedef enum {
+ SI_MESSAGE_LIST_STRUCT_S_2_NULL,
+ SI_MESSAGE_LIST_STRUCT_SI_MESSAGE_LIST_STRUCT_S_2_NULL,
+ SI_MESSAGE_LIST_STRUCT_S_3,
+ SIX_CHANGE_MARK
+}si_message_list_struct_s_2_enum;
+
+typedef struct si_message_list_struct_s_3{
+ U8 six_change_mark;
+ U8 six_count;
+ U16 numElements_instance_bitmap;
+ U8 * instance_bitmap;
+}si_message_list_struct_s_3;
+
+typedef struct si_message_list_struct_s_1{
+ U8 si_message_type;
+ si_message_list_struct_s_2_enum si_message_list_struct_s_2_tag;
+ U8 mess_rec;
+ union si_message_list_struct_s_2_value{
+ si_message_list_struct_s_3 m_si_message_list_struct_s_3;
+ U8 six_change_mark;
+ }si_message_list_struct_s_2_value;
+}si_message_list_struct_s_1;
+
+/* SEQUENCE si message list struct */
+typedef struct si_message_list_struct{
+ U16 numElements_m_si_message_list_struct_s_1;
+ si_message_list_struct_s_1 * m_si_message_list_struct_s_1;
+ U8 additional_msg_type;
+}si_message_list_struct;
+
+/* SEQUENCE unknown si message list struct */
+typedef struct unknown_si_message_list_struct{
+ U16 numElements_si_message_type;
+ U8 * si_message_type;
+ U8 additional_msg_type;
+}unknown_si_message_list_struct;
+
+/* SEQUENCE additional access technologies struct */
+typedef struct additional_access_technologies_struct{
+ U8 access_technology_type;
+ U8 gmsk_power_class;
+ U8 p_8_psk_power_class;
+}additional_access_technologies_struct;
+
+typedef struct multislot_capability_struct_s_4{
+ U8 gprs_multislot_class;
+ U8 gprs_extended_dynamic_allocation_capability;
+}multislot_capability_struct_s_4;
+
+typedef struct multislot_capability_struct_s_6{
+ U8 sms_value;
+ U8 sm_value;
+}multislot_capability_struct_s_6;
+
+typedef struct multislot_capability_struct_s_10{
+ U8 egprs_multislot_class;
+ U8 egprs_extended_dynamic_allocation_capability;
+}multislot_capability_struct_s_10;
+
+typedef struct multislot_capability_struct_s_12{
+ U8 dtm_gprs_multi_slot_class;
+ U8 single_slot_dtm;
+ ispresent multislot_capability_struct_s_13_tag;
+ union multislot_capability_struct_s_13_value{
+ U8 dtm_egprs_multi_slot_class;
+ }multislot_capability_struct_s_13_value;
+}multislot_capability_struct_s_12;
+
+/* SEQUENCE multislot capability struct */
+typedef struct multislot_capability_struct{
+ Bool is_multislot_capability_struct_s_1_present; //truncation or optional
+ ispresent multislot_capability_struct_s_2_tag;
+ union multislot_capability_struct_s_2_value{
+ U8 hscsd_multislot_class;
+ }multislot_capability_struct_s_2_value;
+ ispresent multislot_capability_struct_s_3_tag;
+ union multislot_capability_struct_s_3_value{
+ multislot_capability_struct_s_4 m_multislot_capability_struct_s_4;
+ }multislot_capability_struct_s_3_value;
+ ispresent multislot_capability_struct_s_5_tag;
+ union multislot_capability_struct_s_5_value{
+ multislot_capability_struct_s_6 m_multislot_capability_struct_s_6;
+ }multislot_capability_struct_s_5_value;
+ Bool is_multislot_capability_struct_s_7_present; //truncation or optional
+ ispresent multislot_capability_struct_s_8_tag;
+ union multislot_capability_struct_s_8_value{
+ U8 ecsd_multislot_class;
+ }multislot_capability_struct_s_8_value;
+ ispresent multislot_capability_struct_s_9_tag;
+ union multislot_capability_struct_s_9_value{
+ multislot_capability_struct_s_10 m_multislot_capability_struct_s_10;
+ }multislot_capability_struct_s_9_value;
+ ispresent multislot_capability_struct_s_11_tag;
+ union multislot_capability_struct_s_11_value{
+ multislot_capability_struct_s_12 m_multislot_capability_struct_s_12;
+ }multislot_capability_struct_s_11_value;
+}multislot_capability_struct;
+
+/* SEQUENCE geran iu mode capabilities */
+typedef struct geran_iu_mode_capabilities{
+ U8 length;
+ U8 flo_iu_capability;
+}geran_iu_mode_capabilities;
+
+/* SEQUENCE a5 bits */
+typedef struct a5_bits{
+ U8 a5_1;
+ U8 a5_2;
+ U8 a5_3;
+ U8 a5_4;
+ U8 a5_5;
+ U8 a5_6;
+ U8 a5_7;
+}a5_bits;
+
+typedef U8 gea1_bits;
+
+/* SEQUENCE extended gea bits */
+typedef struct extended_gea_bits{
+ U8 gea_2;
+ U8 gea_3;
+ U8 gea_4;
+ U8 gea_5;
+ U8 gea_6;
+ U8 gea_7;
+}extended_gea_bits;
+
+/* SEQUENCE data_blk_hdr_struct1 */
+typedef struct data_blk_hdr_struct1{
+ U8 rrbp;
+ U8 s_or_p;
+ U8 usf;
+}data_blk_hdr_struct1;
+
+/* SEQUENCE third_octet_struct1 */
+typedef struct third_octet_struct1{
+ U8 pr;
+ U8 tfi;
+ U8 dir;
+}third_octet_struct1;
+
+/* SEQUENCE utran fdd description struct mi */
+typedef struct utran_fdd_description_struct_mi{
+ ispresent utran_fdd_description_struct_mi_s_1_tag;
+ union utran_fdd_description_struct_mi_s_1_value{
+ U8 bandwidth_fdd;
+ }utran_fdd_description_struct_mi_s_1_value;
+ U16 numElements_repeated_utran_fdd_neighbour_cells;
+ repeated_utran_fdd_neighbour_cells_struct_mi * repeated_utran_fdd_neighbour_cells;
+}utran_fdd_description_struct_mi;
+
+/* SEQUENCE utran tdd description struct mi */
+typedef struct utran_tdd_description_struct_mi{
+ ispresent utran_tdd_description_struct_mi_s_1_tag;
+ union utran_tdd_description_struct_mi_s_1_value{
+ U8 bandwidth_tdd;
+ }utran_tdd_description_struct_mi_s_1_value;
+ U16 numElements_repeated_utran_tdd_neighbour_cells;
+ repeated_utran_tdd_neighbour_cells_struct_mi * repeated_utran_tdd_neighbour_cells;
+}utran_tdd_description_struct_mi;
+
+typedef struct real_time_difference_description_struct_mi_s_2{
+ ispresent real_time_difference_description_struct_mi_s_3_tag;
+ union real_time_difference_description_struct_mi_s_3_value{
+ U8 ba_index_start_rtd;
+ }real_time_difference_description_struct_mi_s_3_value;
+ rtd6_struct_mi rtd_struct;
+ U16 numElements_rtd2_struct;
+ rtd6_struct_mi * rtd2_struct;
+}real_time_difference_description_struct_mi_s_2;
+
+typedef struct real_time_difference_description_struct_mi_s_6{
+ ispresent real_time_difference_description_struct_mi_s_7_tag;
+ union real_time_difference_description_struct_mi_s_7_value{
+ U8 ba_index_start_rtd;
+ }real_time_difference_description_struct_mi_s_7_value;
+ rtd12_struct_mi rtd_struct;
+ U16 numElements_rtd2_struct;
+ rtd12_struct_mi * rtd2_struct;
+}real_time_difference_description_struct_mi_s_6;
+
+/* SEQUENCE real time difference description struct mi */
+typedef struct real_time_difference_description_struct_mi{
+ ispresent real_time_difference_description_struct_mi_s_1_tag;
+ union real_time_difference_description_struct_mi_s_1_value{
+ real_time_difference_description_struct_mi_s_2 m_real_time_difference_description_struct_mi_s_2;
+ }real_time_difference_description_struct_mi_s_1_value;
+ ispresent real_time_difference_description_struct_mi_s_5_tag;
+ union real_time_difference_description_struct_mi_s_5_value{
+ real_time_difference_description_struct_mi_s_6 m_real_time_difference_description_struct_mi_s_6;
+ }real_time_difference_description_struct_mi_s_5_value;
+}real_time_difference_description_struct_mi;
+
+/* SEQUENCE 3 g measurement control parameters description struct */
+typedef struct p_3_g_measurement_control_parameters_description_struct{
+ U8 utran_start;
+ U8 utran_stop;
+ ispresent p_3_g_measurement_control_parameters_description_struct_s_1_tag;
+ union p_3_g_measurement_control_parameters_description_struct_s_1_value{
+ U8 default_measurement_control_utran;
+ }p_3_g_measurement_control_parameters_description_struct_s_1_value;
+ U16 numElements_repeated_utran_measurement_control_parameters;
+ repeated_utran_measurement_control_parameters_struct * repeated_utran_measurement_control_parameters;
+}p_3_g_measurement_control_parameters_description_struct;
+
+typedef struct measurement_control_e_utran{
+ U8 measurement_control_e_utran_bit;
+ ispresent repeated_e_utran_neighbour_cells_struct_s_1_tag;
+ union repeated_e_utran_neighbour_cells_struct_s_1_value{
+ U8 measurement_bandwidth;
+ }repeated_e_utran_neighbour_cells_struct_s_1_value;
+}measurement_control_e_utran;
+
+/* SEQUENCE repeated e-utran neighbour cells struct */
+typedef struct repeated_e_utran_neighbour_cells_struct{
+ U16 earfcn;
+ U16 numElements_m_measurement_control_e_utran;
+ measurement_control_e_utran * m_measurement_control_e_utran;
+ ispresent repeated_e_utran_neighbour_cells_struct_s_2_tag;
+ union repeated_e_utran_neighbour_cells_struct_s_2_value{
+ not_allowed_cells_struct not_allowed_cells;
+ }repeated_e_utran_neighbour_cells_struct_s_2_value;
+}repeated_e_utran_neighbour_cells_struct;
+
+typedef struct enhanced_measurement_report_struct_s_4{
+ ispresent enhanced_measurement_report_struct_s_4_tag;
+ union enhanced_measurement_report_struct_s_4_value{
+ U8 reporting_quantity;
+ }enhanced_measurement_report_struct_s_4_value;
+}enhanced_measurement_report_struct_s_4;
+
+typedef struct _enhanced_measurement_report_struct_s_4{
+ U16 numElements_m_enhanced_measurement_report_struct_s_4;
+ enhanced_measurement_report_struct_s_4 * m_enhanced_measurement_report_struct_s_4;
+}_enhanced_measurement_report_struct_s_4;
+
+typedef enum {
+ ENHANCED_MEASUREMENT_REPORT_STRUCT_S_5_NULL,
+ ENHANCED_MEASUREMENT_REPORT_STRUCT_S_5_BIT, // L
+ ENHANCED_MEASUREMENT_REPORT_STRUCT_S_6 // H
+}enhanced_measurement_report_struct_s_5_enum;
+
+typedef struct enhanced_measurement_report_struct_s_5_bit{
+ U16 numElements_enhanced_measurement_report_struct_s_5_bit;
+ U8 * enhanced_measurement_report_struct_s_5_bit;
+}enhanced_measurement_report_struct_s_5_bit;
+
+typedef struct enhanced_measurement_report_struct_s_7{
+ ispresent enhanced_measurement_report_struct_s_7_tag;
+ union enhanced_measurement_report_struct_s_7_value{
+ U8 reporting_quantity;
+ }enhanced_measurement_report_struct_s_7_value;
+}enhanced_measurement_report_struct_s_7;
+
+typedef enum {
+ ENHANCED_MEASUREMENT_REPORT_STRUCT_S_9_NULL,
+ ENHANCED_MEASUREMENT_REPORT_STRUCT_S_9_BIT, // L
+ ENHANCED_MEASUREMENT_REPORT_STRUCT_S_10 // H
+}enhanced_measurement_report_struct_s_9_enum;
+
+typedef struct enhanced_measurement_report_struct_s_9_bit{
+ U16 numElements_enhanced_measurement_report_struct_s_9_bit;
+ U8 * enhanced_measurement_report_struct_s_9_bit;
+}enhanced_measurement_report_struct_s_9_bit;
+
+typedef struct enhanced_measurement_report_struct_s_10{
+ ispresent enhanced_measurement_report_struct_s_10_tag;
+ union enhanced_measurement_report_struct_s_10_value{
+ utran_csg_measurement_report_ie utran_csg_measurement_report;
+ }enhanced_measurement_report_struct_s_10_value;
+}enhanced_measurement_report_struct_s_10;
+
+typedef struct enhanced_measurement_report_struct_s_6{
+ U8 bitmap_length;
+ U16 numElements_m_enhanced_measurement_report_struct_s_7;
+ enhanced_measurement_report_struct_s_7 * m_enhanced_measurement_report_struct_s_7;
+ ispresent enhanced_measurement_report_struct_s_8_tag;
+ union enhanced_measurement_report_struct_s_8_value{
+ e_utran_measurement_report_struct e_utran_measurement_report;
+ }enhanced_measurement_report_struct_s_8_value;
+ enhanced_measurement_report_struct_s_9_enum enhanced_measurement_report_struct_s_9_tag;
+ union enhanced_measurement_report_struct_s_9_value{
+ enhanced_measurement_report_struct_s_9_bit m_enhanced_measurement_report_struct_s_9_bit;
+ enhanced_measurement_report_struct_s_10 m_enhanced_measurement_report_struct_s_10;
+ }enhanced_measurement_report_struct_s_9_value;
+}enhanced_measurement_report_struct_s_6;
+
+/* SEQUENCE enhanced measurement report struct */
+typedef struct enhanced_measurement_report_struct{
+ U8 rr_short_pd;
+ U8 message_type;
+ U8 short_layer_2_header;
+ U8 ba_used;
+ U8 p_3_g_ba_used;
+ U8 bsic_seen;
+ U8 scale;
+ ispresent enhanced_measurement_report_struct_s_1_tag;
+ union enhanced_measurement_report_struct_s_1_value{
+ cs_serving_cell_data_struct serving_cell_data;
+ }enhanced_measurement_report_struct_s_1_value;
+ U16 numElements_repeated_invalid_bsic_information;
+ repeated_invalid_bsic_information_struct * repeated_invalid_bsic_information;
+ ispresent enhanced_measurement_report_struct_s_3_tag;
+ union enhanced_measurement_report_struct_s_3_value{
+ _enhanced_measurement_report_struct_s_4 m_enhanced_measurement_report_struct_s_4;
+ }enhanced_measurement_report_struct_s_3_value;
+ enhanced_measurement_report_struct_s_5_enum enhanced_measurement_report_struct_s_5_tag;
+ union enhanced_measurement_report_struct_s_5_value{
+ enhanced_measurement_report_struct_s_5_bit m_enhanced_measurement_report_struct_s_5_bit;
+ enhanced_measurement_report_struct_s_6 m_enhanced_measurement_report_struct_s_6;
+ }enhanced_measurement_report_struct_s_5_value;
+}enhanced_measurement_report_struct;
+
+/* SEQUENCE extended_measurement_report_struct */
+typedef struct extended_measurement_report_struct{
+ gas_skip_indicator_struct skip_ind;
+ gas_protocol_disc_struct proto_disc;
+ extended_measurement_report_type_struct mesg_type;
+ gas_extended_meas_results_struct extended_measurement_results;
+}extended_measurement_report_struct;
+
+typedef enum {
+ NO_NCELL_M,
+ GAS_MEAS_CONTENT_STRUCT_S_2
+}gas_meas_content_struct_s_1_enum;
+
+typedef enum {
+ GAS_MEAS_CONTENT_STRUCT_S_4_NULL,
+ GAS_MEAS_CONTENT_STRUCT_CONCAT_0,
+ UTRAN_CSG_MEASUREMENT_REPORT
+}gas_meas_content_struct_s_4_enum;
+
+typedef struct gas_meas_content_struct_s_2{
+ U16 numElements_ncell_report;
+ ncell_report_struct * ncell_report;
+ gas_meas_content_struct_s_4_enum gas_meas_content_struct_s_4_tag;
+ union gas_meas_content_struct_s_4_value{
+ utran_csg_measurement_report_ie utran_csg_measurement_report;
+ }gas_meas_content_struct_s_4_value;
+}gas_meas_content_struct_s_2;
+
+/* SEQUENCE gas_meas_content_struct */
+typedef struct gas_meas_content_struct{
+ U8 ba_used;
+ U8 dtx_used;
+ U8 rxlev_full_serving_cell;
+ U8 p_3_g_ba_used;
+ U8 meas_valid;
+ U8 rxlev_sub_serving_cell;
+ U8 rxqual_full_serving_cell;
+ U8 rxqual_sub_serving_cell;
+ gas_meas_content_struct_s_1_enum gas_meas_content_struct_s_1_tag;
+ U8 no_ncell_m;
+ union gas_meas_content_struct_s_1_value{
+ gas_meas_content_struct_s_2 m_gas_meas_content_struct_s_2;
+ }gas_meas_content_struct_s_1_value;
+}gas_meas_content_struct;
+
+/* SEQUENCE gprs_suspension_request struct */
+typedef struct gprs_suspension_request_struct{
+ gas_skip_indicator_struct skip_ind;
+ gas_protocol_disc_struct proto_disc;
+ gprs_suspension_req_type_struct mesg_type;
+ gas_tlli_struct tlli;
+ gas_rai_struct rai;
+ gas_suspension_cause_struct suspension_cause;
+}gprs_suspension_request_struct;
+
+/* SEQUENCE handover_failure struct */
+typedef struct handover_failure_struct{
+ gas_skip_indicator_struct skip_ind;
+ gas_protocol_disc_struct proto_disc;
+ handover_failure_type_struct mesg_type;
+ gas_rr_cause_struct rr_cause;
+}handover_failure_struct;
+
+/* SEQUENCE gas_otd_struct */
+typedef struct gas_otd_struct{
+ U8 otd_iei;
+ U8 length;
+ gas_mobile_time_difference_struct m_gas_mobile_time_difference_struct;
+}gas_otd_struct;
+
+/* SEQUENCE assignment_failure_struct */
+typedef struct assignment_failure_struct{
+ U8 skip_ind;
+ U8 proto_disc;
+ U8 mesg_type;
+ U8 rr_cause;
+}assignment_failure_struct;
+
+/* SEQUENCE assignment_complete_struct */
+typedef struct assignment_complete_struct{
+ gas_skip_indicator_struct skip_ind;
+ gas_protocol_disc_struct proto_disc;
+ assignment_complete_type_struct mesg_type;
+ gas_rr_cause_struct rr_cause;
+}assignment_complete_struct;
+
+/* SEQUENCE gas_mobile_identity_struct */
+typedef struct gas_mobile_identity_struct{
+ U8 length;
+ gas_mobile_identity_struct_2 m_gas_mobile_identity_struct_2;
+}gas_mobile_identity_struct;
+
+/* SEQUENCE gas_mobile_identity2_struct */
+typedef struct gas_mobile_identity2_struct{
+ U8 mobile_identity_iei;
+ U8 length;
+ gas_mobile_identity_struct_2 m_gas_mobile_identity_struct_2;
+}gas_mobile_identity2_struct;
+
+/* SEQUENCE gas_p1_rest_octets_struct */
+typedef struct gas_p1_rest_octets_struct{
+ isLHpresent nln_tag;
+ union nln_value{
+ gas_nln_status_struct nln;
+ }nln_value;
+ isLHpresent priority1_tag;
+ union priority1_value{
+ U8 priority1;
+ }priority1_value;
+ isLHpresent priority2_tag;
+ union priority2_value{
+ U8 priority2;
+ }priority2_value;
+ isLHpresent vgcs_tag;
+ union vgcs_value{
+ U8 vgcs;
+ }vgcs_value;
+ isLHpresent pkt_page1_tag;
+ isLHpresent pkt_page2_tag;
+}gas_p1_rest_octets_struct;
+
+typedef enum {
+ M_ABSOLUTE_FRAME_NUMBER_ENCODING,
+ M_RELATIVE_FRAME_NUMBER_ENCODING
+}starting_frame_number_description_ie_s_0_enum;
+
+/* SEQUENCE starting frame number description ie */
+typedef struct starting_frame_number_description_ie{
+ starting_frame_number_description_ie_s_0_enum starting_frame_number_description_ie_s_0_tag;
+ union starting_frame_number_description_ie_s_0_value{
+ absolute_frame_number_encoding m_absolute_frame_number_encoding;
+ relative_frame_number_encoding m_relative_frame_number_encoding;
+ }starting_frame_number_description_ie_s_0_value;
+}starting_frame_number_description_ie;
+
+/* SEQUENCE direct encoding 1 struct */
+typedef struct direct_encoding_1_struct{
+ U8 maio;
+ gprs_mobile_allocation_ie gprs_mobile_allocation;
+}direct_encoding_1_struct;
+
+/* SEQUENCE lsa parameters ie */
+typedef struct lsa_parameters_ie{
+ U8 nr_of_freq_or_cells;
+ U16 numElements_lsa_id_information;
+ lsa_id_information_struct * lsa_id_information;
+}lsa_parameters_ie;
+
+/* SEQUENCE utran fdd description struct */
+typedef struct utran_fdd_description_struct{
+ ispresent utran_fdd_description_struct_s_1_tag;
+ union utran_fdd_description_struct_s_1_value{
+ U8 bandwidth_fdd;
+ }utran_fdd_description_struct_s_1_value;
+ U16 numElements_repeated_utran_fdd_neighbour_cells;
+ repeated_utran_fdd_neighbour_cells_struct * repeated_utran_fdd_neighbour_cells;
+}utran_fdd_description_struct;
+
+/* SEQUENCE utran tdd description struct */
+typedef struct utran_tdd_description_struct{
+ ispresent utran_tdd_description_struct_s_1_tag;
+ union utran_tdd_description_struct_s_1_value{
+ U8 bandwidth_tdd;
+ }utran_tdd_description_struct_s_1_value;
+ U16 numElements_repeated_utran_tdd_neighbour_cells;
+ repeated_utran_tdd_neighbour_cells_struct * repeated_utran_tdd_neighbour_cells;
+}utran_tdd_description_struct;
+
+/* SEQUENCE iu mode cell selection struct 1 */
+typedef struct iu_mode_cell_selection_struct_1{
+ U8 cell_bar_qualify_3;
+ ispresent iu_mode_cell_selection_struct_1_s_1_tag;
+ union iu_mode_cell_selection_struct_1_s_1_value{
+ si13_pbcch_location_struct_1 si13alt_pbcch_location;
+ }iu_mode_cell_selection_struct_1_s_1_value;
+}iu_mode_cell_selection_struct_1;
+
+typedef struct iu_mode_only_cell_selection_struct_1_s_2{
+ U8 gprs_rxlev_access_min;
+ U8 gprs_ms_txpwr_max_cch;
+}iu_mode_only_cell_selection_struct_1_s_2;
+
+typedef struct iu_mode_only_cell_selection_struct_1_s_4{
+ U8 gprs_temporary_offset;
+ U8 gprs_penalty_time;
+}iu_mode_only_cell_selection_struct_1_s_4;
+
+/* SEQUENCE iu mode only cell selection struct 1 */
+typedef struct iu_mode_only_cell_selection_struct_1{
+ U8 cell_bar_qualify_3;
+ U8 same_ra_as_serving_cell;
+ ispresent iu_mode_only_cell_selection_struct_1_s_1_tag;
+ union iu_mode_only_cell_selection_struct_1_s_1_value{
+ iu_mode_only_cell_selection_struct_1_s_2 m_iu_mode_only_cell_selection_struct_1_s_2;
+ }iu_mode_only_cell_selection_struct_1_s_1_value;
+ ispresent iu_mode_only_cell_selection_struct_1_s_3_tag;
+ union iu_mode_only_cell_selection_struct_1_s_3_value{
+ iu_mode_only_cell_selection_struct_1_s_4 m_iu_mode_only_cell_selection_struct_1_s_4;
+ }iu_mode_only_cell_selection_struct_1_s_3_value;
+ ispresent iu_mode_only_cell_selection_struct_1_s_5_tag;
+ union iu_mode_only_cell_selection_struct_1_s_5_value{
+ U8 gprs_reselect_offset;
+ }iu_mode_only_cell_selection_struct_1_s_5_value;
+ ispresent iu_mode_only_cell_selection_struct_1_s_6_tag;
+ union iu_mode_only_cell_selection_struct_1_s_6_value{
+ hcs_struct_1 hcs_params;
+ }iu_mode_only_cell_selection_struct_1_s_6_value;
+ ispresent iu_mode_only_cell_selection_struct_1_s_7_tag;
+ union iu_mode_only_cell_selection_struct_1_s_7_value{
+ si13_pbcch_location_struct_1 si13alt_pbcch_location;
+ }iu_mode_only_cell_selection_struct_1_s_7_value;
+}iu_mode_only_cell_selection_struct_1;
+
+/* SEQUENCE prach control parameters ie */
+typedef struct prach_control_parameters_ie{
+ U16 acc_contr_class;
+ U8 max_retrans[4];
+ U8 s;
+ U8 tx_int;
+ ispresent prach_control_parameters_ie_s_1_tag;
+ union prach_control_parameters_ie_s_1_value{
+ persistence_level_ie persistence_level;
+ }prach_control_parameters_ie_s_1_value;
+}prach_control_parameters_ie;
+
+typedef struct gprs_cell_options_ie_s_2{
+ U8 pan_dec;
+ U8 pan_inc;
+ U8 pan_max;
+}gprs_cell_options_ie_s_2;
+
+typedef struct gprs_cell_options_ie_s_4{
+ U8 extension_length;
+ extension_information_for_gprs m_extension_information_for_gprs;
+}gprs_cell_options_ie_s_4;
+
+/* SEQUENCE gprs cell options ie */
+typedef struct gprs_cell_options_ie{
+ U8 nmo;
+ U8 t3168;
+ U8 t3192;
+ U8 drx_timer_max;
+ U8 access_burst_type;
+ U8 control_ack_type;
+ U8 bs_cv_max;
+ ispresent gprs_cell_options_ie_s_1_tag;
+ union gprs_cell_options_ie_s_1_value{
+ gprs_cell_options_ie_s_2 m_gprs_cell_options_ie_s_2;
+ }gprs_cell_options_ie_s_1_value;
+ ispresent gprs_cell_options_ie_s_3_tag;
+ union gprs_cell_options_ie_s_3_value{
+ gprs_cell_options_ie_s_4 m_gprs_cell_options_ie_s_4;
+ }gprs_cell_options_ie_s_3_value;
+}gprs_cell_options_ie;
+
+typedef struct non_gprs_cell_options_ie_s_3{
+ U8 extension_length;
+ extension_information_for_non_gprs m_extension_information_for_non_gprs;
+}non_gprs_cell_options_ie_s_3;
+
+/* SEQUENCE non gprs cell options ie */
+typedef struct non_gprs_cell_options_ie{
+ U8 att;
+ ispresent non_gprs_cell_options_ie_s_1_tag;
+ union non_gprs_cell_options_ie_s_1_value{
+ U8 t3212;
+ }non_gprs_cell_options_ie_s_1_value;
+ U8 neci;
+ U8 pwrc;
+ U8 dtx;
+ U8 radio_link_timeout;
+ U8 bs_ag_blks_res;
+ U8 ccch_conf;
+ U8 bs_pa_mfrms;
+ U8 max_retrans;
+ U8 tx_integer;
+ U8 ec;
+ U8 ms_txpwr_max_ccch;
+ ispresent non_gprs_cell_options_ie_s_2_tag;
+ union non_gprs_cell_options_ie_s_2_value{
+ non_gprs_cell_options_ie_s_3 m_non_gprs_cell_options_ie_s_3;
+ }non_gprs_cell_options_ie_s_2_value;
+}non_gprs_cell_options_ie;
+
+typedef struct cell_selection_struct_1_s_2{
+ U8 gprs_rxlev_access_min;
+ U8 gprs_ms_txpwr_max_cch;
+}cell_selection_struct_1_s_2;
+
+typedef struct cell_selection_struct_1_s_4{
+ U8 gprs_temporary_offset;
+ U8 gprs_penalty_time;
+}cell_selection_struct_1_s_4;
+
+/* SEQUENCE cell selection struct 1 */
+typedef struct cell_selection_struct_1{
+ U8 cell_bar_access_2;
+ U8 exc_acc;
+ U8 same_ra_as_serving_cell;
+ ispresent cell_selection_struct_1_s_1_tag;
+ union cell_selection_struct_1_s_1_value{
+ cell_selection_struct_1_s_2 m_cell_selection_struct_1_s_2;
+ }cell_selection_struct_1_s_1_value;
+ ispresent cell_selection_struct_1_s_3_tag;
+ union cell_selection_struct_1_s_3_value{
+ cell_selection_struct_1_s_4 m_cell_selection_struct_1_s_4;
+ }cell_selection_struct_1_s_3_value;
+ ispresent cell_selection_struct_1_s_5_tag;
+ union cell_selection_struct_1_s_5_value{
+ U8 gprs_reselect_offset;
+ }cell_selection_struct_1_s_5_value;
+ ispresent cell_selection_struct_1_s_6_tag;
+ union cell_selection_struct_1_s_6_value{
+ hcs_struct_1 hcs_params;
+ }cell_selection_struct_1_s_6_value;
+ ispresent cell_selection_struct_1_s_7_tag;
+ union cell_selection_struct_1_s_7_value{
+ si13_pbcch_location_struct_1 si13_pbcch_location;
+ }cell_selection_struct_1_s_7_value;
+}cell_selection_struct_1;
+
+typedef struct neighbour_cell_params_struct_s_1{
+ U16 numElements_frequency_diff;
+ U8 * frequency_diff;
+ cell_selection_struct_1 cell_selection_params;
+}neighbour_cell_params_struct_s_1;
+
+/* SEQUENCE neighbour cell params struct */
+typedef struct neighbour_cell_params_struct{
+ U16 start_frequency;
+ cell_selection_struct_2 cell_selection_params;
+ U8 nr_of_remaining_cells;
+ U8 freq_diff_length;
+ U16 numElements_m_neighbour_cell_params_struct_s_1;
+ neighbour_cell_params_struct_s_1 * m_neighbour_cell_params_struct_s_1;
+}neighbour_cell_params_struct;
+
+typedef struct iu_mode_only_neighbour_cell_params_struct_s_1{
+ U16 numElements_frequency_diff;
+ U8 * frequency_diff;
+ iu_mode_only_cell_selection_struct_1 iu_mode_only_cell_selection_params;
+}iu_mode_only_neighbour_cell_params_struct_s_1;
+
+/* SEQUENCE iu mode only neighbour cell params struct */
+typedef struct iu_mode_only_neighbour_cell_params_struct{
+ U16 start_frequency;
+ iu_mode_only_cell_selection_struct_1 iu_mode_only_cell_selection_params;
+ U8 nr_of_remaining_cells;
+ U8 freq_diff_length;
+ U16 numElements_m_iu_mode_only_neighbour_cell_params_struct_s_1;
+ iu_mode_only_neighbour_cell_params_struct_s_1 * m_iu_mode_only_neighbour_cell_params_struct_s_1;
+}iu_mode_only_neighbour_cell_params_struct;
+
+typedef enum {
+ TS_OVERRIDE,
+ FIXED_ALLOCATION_STRUCT_S_2
+}fixed_allocation_struct_s_1_enum;
+
+typedef enum {
+ FIXED_ALLOCATION_STRUCT_S_7,
+ ALLOCATION_BITMAP
+}fixed_allocation_struct_s_6_enum;
+
+typedef struct fixed_allocation_struct_s_7{
+ U8 blocks_or_block_periods;
+ U8 allocation_bitmap_length;
+ U16 numElements_allocation_bitmap;
+ U8 * allocation_bitmap;
+}fixed_allocation_struct_s_7;
+
+typedef struct allocation_bitmap{
+ U16 numElements_allocation_bitmap;
+ U8 * allocation_bitmap;
+}allocation_bitmap;
+
+typedef struct fixed_allocation_struct_s_2{
+ starting_frame_number_description_ie tbf_starting_time;
+ ispresent fixed_allocation_struct_s_3_tag;
+ union fixed_allocation_struct_s_3_value{
+ U8 timeslot_allocation;
+ }fixed_allocation_struct_s_3_value;
+ fixed_allocation_struct_s_6_enum fixed_allocation_struct_s_6_tag;
+ union fixed_allocation_struct_s_6_value{
+ fixed_allocation_struct_s_7 m_fixed_allocation_struct_s_7;
+ allocation_bitmap m_allocation_bitmap;
+ }fixed_allocation_struct_s_6_value;
+}fixed_allocation_struct_s_2;
+
+/* SEQUENCE fixed allocation struct */
+typedef struct fixed_allocation_struct{
+ U8 final_allocation;
+ fixed_allocation_struct_s_1_enum fixed_allocation_struct_s_1_tag;
+ union fixed_allocation_struct_s_1_value{
+ U8 ts_override;
+ fixed_allocation_struct_s_2 m_fixed_allocation_struct_s_2;
+ }fixed_allocation_struct_s_1_value;
+}fixed_allocation_struct;
+
+/* SEQUENCE measurement mapping struct */
+typedef struct measurement_mapping_struct{
+ starting_frame_number_description_ie measurement_starting_time;
+ U8 measurement_interval;
+ U8 measurement_bitmap;
+}measurement_mapping_struct;
+
+typedef enum {
+ M_EGPRS_ACK_NACK_DESCRIPTION_STRUCT,
+ EGPRS_ACK_NACK_DESCRIPTION_IE_S_1
+}egprs_ack_nack_description_ie_s_0_enum;
+
+typedef struct egprs_ack_nack_description_ie_s_1{
+ U8 length;
+ egprs_ack_nack_description_struct m_egprs_ack_nack_description_struct;
+}egprs_ack_nack_description_ie_s_1;
+
+/* SEQUENCE egprs ack/nack description ie */
+typedef struct egprs_ack_nack_description_ie{
+ egprs_ack_nack_description_ie_s_0_enum egprs_ack_nack_description_ie_s_0_tag;
+ union egprs_ack_nack_description_ie_s_0_value{
+ egprs_ack_nack_description_struct m_egprs_ack_nack_description_struct;
+ egprs_ack_nack_description_ie_s_1 m_egprs_ack_nack_description_ie_s_1;
+ }egprs_ack_nack_description_ie_s_0_value;
+}egprs_ack_nack_description_ie;
+
+typedef struct ccch_access_information_struct_s_2{
+ U8 si13_change_mark;
+ gprs_mobile_allocation_ie si13_mobile_allocation;
+}ccch_access_information_struct_s_2;
+
+typedef enum {
+ CCCH_ACCESS_INFORMATION_STRUCT_S_3_NULL,
+ CCCH_ACCESS_INFORMATION_STRUCT_S_3_BIT,
+ CCCH_ACCESS_INFORMATION_STRUCT_S_4
+}ccch_access_information_struct_s_3_enum;
+
+typedef struct ccch_access_information_struct_s_3_bit{
+ U16 numElements_ccch_access_information_struct_s_3_bit;
+ U8 * ccch_access_information_struct_s_3_bit;
+}ccch_access_information_struct_s_3_bit;
+
+typedef enum {
+ CCCH_ACCESS_INFORMATION_STRUCT_S_5_NULL,
+ CCCH_ACCESS_INFORMATION_STRUCT_S_5_BIT,
+ CCCH_ACCESS_INFORMATION_STRUCT_S_6
+}ccch_access_information_struct_s_5_enum;
+
+typedef struct ccch_access_information_struct_s_5_bit{
+ U16 numElements_ccch_access_information_struct_s_5_bit;
+ U8 * ccch_access_information_struct_s_5_bit;
+}ccch_access_information_struct_s_5_bit;
+
+typedef struct ccch_access_information_struct_s_6{
+ ispresent ccch_access_information_struct_s_7_tag;
+ union ccch_access_information_struct_s_7_value{
+ U8 lb_ms_txpwr_max_cch;
+ }ccch_access_information_struct_s_7_value;
+ U8 si2n_support;
+}ccch_access_information_struct_s_6;
+
+typedef struct ccch_access_information_struct_s_4{
+ U8 rac;
+ U8 si_status_ind;
+ ccch_access_information_struct_s_5_enum ccch_access_information_struct_s_5_tag;
+ union ccch_access_information_struct_s_5_value{
+ ccch_access_information_struct_s_5_bit m_ccch_access_information_struct_s_5_bit;
+ ccch_access_information_struct_s_6 m_ccch_access_information_struct_s_6;
+ }ccch_access_information_struct_s_5_value;
+}ccch_access_information_struct_s_4;
+
+/* SEQUENCE ccch access information struct */
+typedef struct ccch_access_information_struct{
+ U8 bcch_change_mark;
+ ispresent ccch_access_information_struct_s_1_tag;
+ union ccch_access_information_struct_s_1_value{
+ ccch_access_information_struct_s_2 m_ccch_access_information_struct_s_2;
+ }ccch_access_information_struct_s_1_value;
+ U8 spgc_ccch_sup;
+ U8 priority_access_thr;
+ U8 network_control_order;
+ gprs_cell_options_ie gprs_cell_options;
+ gprs_power_control_parameters_struct gprs_power_control_parameters;
+ U8 sgsnr;
+ ccch_access_information_struct_s_3_enum ccch_access_information_struct_s_3_tag;
+ union ccch_access_information_struct_s_3_value{
+ ccch_access_information_struct_s_3_bit m_ccch_access_information_struct_s_3_bit;
+ ccch_access_information_struct_s_4 m_ccch_access_information_struct_s_4;
+ }ccch_access_information_struct_s_3_value;
+}ccch_access_information_struct;
+
+/* SEQUENCE dynamic arfcn mapping description struct */
+typedef struct dynamic_arfcn_mapping_description_struct{
+ ispresent dynamic_arfcn_mapping_description_struct_s_1_tag;
+ union dynamic_arfcn_mapping_description_struct_s_1_value{
+ U8 dm_change_mark;
+ }dynamic_arfcn_mapping_description_struct_s_1_value;
+ U16 numElements_m_dynamic_arfcn_mapping;
+ dynamic_arfcn_mapping * m_dynamic_arfcn_mapping;
+}dynamic_arfcn_mapping_description_struct;
+
+/* SEQUENCE enh reporting parameters struct */
+typedef struct enh_reporting_parameters_struct{
+ U8 report_type;
+ U8 reporting_rate;
+ U8 invalid_bsic_reporting;
+ ispresent enh_reporting_parameters_struct_s_1_tag;
+ union enh_reporting_parameters_struct_s_1_value{
+ U8 ncc_permitted;
+ }enh_reporting_parameters_struct_s_1_value;
+ ispresent enh_reporting_parameters_struct_s_2_tag;
+ union enh_reporting_parameters_struct_s_2_value{
+ gprs_measurement_parameters_description_struct gprs_measurement_parameters_description;
+ }enh_reporting_parameters_struct_s_2_value;
+ ispresent enh_reporting_parameters_struct_s_3_tag;
+ union enh_reporting_parameters_struct_s_3_value{
+ gprs_3_g_measurement_parameters_description_struct gprs_3_g_measurement_parameters_description;
+ }enh_reporting_parameters_struct_s_3_value;
+}enh_reporting_parameters_struct;
+
+/* SEQUENCE channel list struct */
+typedef struct channel_list_struct{
+ channel_group_struct channel_group;
+ U16 numElements_channel_group_cont;
+ channel_group_struct * channel_group_cont;
+}channel_list_struct;
+
+typedef struct real_time_difference_description_struct_s_2{
+ ispresent real_time_difference_description_struct_s_3_tag;
+ union real_time_difference_description_struct_s_3_value{
+ U8 cell_index_start_rtd;
+ }real_time_difference_description_struct_s_3_value;
+ rtd6_struct rtd_struct;
+ U16 numElements_rtd_struct_cont;
+ rtd6_struct * rtd_struct_cont;
+}real_time_difference_description_struct_s_2;
+
+typedef struct real_time_difference_description_struct_s_6{
+ ispresent real_time_difference_description_struct_s_7_tag;
+ union real_time_difference_description_struct_s_7_value{
+ U8 cell_index_start_rtd;
+ }real_time_difference_description_struct_s_7_value;
+ rtd12_struct rtd_struct;
+ U16 numElements_rtd_struct_cont;
+ rtd12_struct * rtd_struct_cont;
+}real_time_difference_description_struct_s_6;
+
+/* SEQUENCE real time difference description struct */
+typedef struct real_time_difference_description_struct{
+ ispresent real_time_difference_description_struct_s_1_tag;
+ union real_time_difference_description_struct_s_1_value{
+ real_time_difference_description_struct_s_2 m_real_time_difference_description_struct_s_2;
+ }real_time_difference_description_struct_s_1_value;
+ ispresent real_time_difference_description_struct_s_5_tag;
+ union real_time_difference_description_struct_s_5_value{
+ real_time_difference_description_struct_s_6 m_real_time_difference_description_struct_s_6;
+ }real_time_difference_description_struct_s_5_value;
+}real_time_difference_description_struct;
+
+typedef struct neighbour_cell_params_2_struct_s_2{
+ struct ncp2_repeat_struct * m_ncp2_repeat_struct;
+ U8 cell_params_pointer;
+}neighbour_cell_params_2_struct_s_2;
+
+/* SEQUENCE neighbour cell params 2 struct */
+typedef struct neighbour_cell_params_2_struct{
+ U16 numElements_m_neighbour_cell_params_2_struct_s_2;
+ neighbour_cell_params_2_struct_s_2 * m_neighbour_cell_params_2_struct_s_2;
+ U16 numElements_neighbour_parameter_set;
+ neighbour_parameter_set_struct * neighbour_parameter_set;
+}neighbour_cell_params_2_struct;
+
+typedef enum {
+ NCP2_REPEAT_STRUCT_S_3,
+ CONCAT_0000
+}ncp2_repeat_struct_s_2_enum;
+
+typedef struct ncp2_repeat_struct_s_4{
+ U16 numElements_frequency_diff;
+ U8 * frequency_diff;
+ ncp2_property_struct m_ncp2_property_struct;
+}ncp2_repeat_struct_s_4;
+
+typedef struct ncp2_repeat_struct_s_3{
+ U8 freq_diff_length;
+ U16 numElements_m_ncp2_repeat_struct_s_4;
+ ncp2_repeat_struct_s_4 * m_ncp2_repeat_struct_s_4;
+ struct ncp2_repeat_struct * m_ncp2_repeat_struct;
+}ncp2_repeat_struct_s_3;
+
+typedef struct ncp2_repeat_struct_s_1{
+ U16 start_frequency;
+ ncp2_property_struct m_ncp2_property_struct;
+ ncp2_repeat_struct_s_2_enum ncp2_repeat_struct_s_2_tag;
+ U8 nr_of_remaining_cells;
+ union ncp2_repeat_struct_s_2_value{
+ ncp2_repeat_struct_s_3 m_ncp2_repeat_struct_s_3;
+ }ncp2_repeat_struct_s_2_value;
+}ncp2_repeat_struct_s_1;
+
+/* SEQUENCE ncp2 repeat struct */
+typedef struct ncp2_repeat_struct{
+ ispresent ncp2_repeat_struct_s_0_tag;
+ union ncp2_repeat_struct_s_0_value{
+ ncp2_repeat_struct_s_1 m_ncp2_repeat_struct_s_1;
+ }ncp2_repeat_struct_s_0_value;
+}ncp2_repeat_struct;
+
+typedef struct compact_neighbour_cell_params_2_struct_s_2{
+ struct compact_ncp2_repeat_struct * m_compact_ncp2_repeat_struct;
+ U8 cell_params_pointer;
+}compact_neighbour_cell_params_2_struct_s_2;
+
+/* SEQUENCE compact neighbour cell params 2 struct */
+typedef struct compact_neighbour_cell_params_2_struct{
+ U16 numElements_m_compact_neighbour_cell_params_2_struct_s_2;
+ compact_neighbour_cell_params_2_struct_s_2 * m_compact_neighbour_cell_params_2_struct_s_2;
+ U16 numElements_compact_neighbour_parameter_set;
+ compact_neighbour_parameter_set_struct * compact_neighbour_parameter_set;
+}compact_neighbour_cell_params_2_struct;
+
+typedef enum {
+ COMPACT_NCP2_REPEAT_STRUCT_S_3,
+ COMPACT_NCP2_REPEAT_STRUCT_CONCAT_0000
+}compact_ncp2_repeat_struct_s_2_enum;
+
+typedef struct compact_ncp2_repeat_struct_s_4{
+ U16 numElements_frequency_diff;
+ U8 * frequency_diff;
+ compact_ncp2_property_struct m_compact_ncp2_property_struct;
+}compact_ncp2_repeat_struct_s_4;
+
+typedef struct compact_ncp2_repeat_struct_s_3{
+ U8 freq_diff_length;
+ U16 numElements_m_compact_ncp2_repeat_struct_s_4;
+ compact_ncp2_repeat_struct_s_4 * m_compact_ncp2_repeat_struct_s_4;
+ struct compact_ncp2_repeat_struct * m_compact_ncp2_repeat_struct;
+}compact_ncp2_repeat_struct_s_3;
+
+typedef struct compact_ncp2_repeat_struct_s_1{
+ U16 start_frequency;
+ compact_ncp2_property_struct m_compact_ncp2_property_struct;
+ compact_ncp2_repeat_struct_s_2_enum compact_ncp2_repeat_struct_s_2_tag;
+ U8 nr_of_remaining_cells;
+ union compact_ncp2_repeat_struct_s_2_value{
+ compact_ncp2_repeat_struct_s_3 m_compact_ncp2_repeat_struct_s_3;
+ }compact_ncp2_repeat_struct_s_2_value;
+}compact_ncp2_repeat_struct_s_1;
+
+/* SEQUENCE compact ncp2 repeat struct */
+typedef struct compact_ncp2_repeat_struct{
+ ispresent compact_ncp2_repeat_struct_s_0_tag;
+ union compact_ncp2_repeat_struct_s_0_value{
+ compact_ncp2_repeat_struct_s_1 m_compact_ncp2_repeat_struct_s_1;
+ }compact_ncp2_repeat_struct_s_0_value;
+}compact_ncp2_repeat_struct;
+
+typedef struct compact_neighbour_cell_params_struct_s_1{
+ U16 numElements_frequency_diff;
+ U8 * frequency_diff;
+ compact_cell_selection_struct_1 compact_cell_selection_params;
+}compact_neighbour_cell_params_struct_s_1;
+
+/* SEQUENCE compact neighbour cell params struct */
+typedef struct compact_neighbour_cell_params_struct{
+ U16 start_frequency;
+ compact_cell_selection_struct_1 compact_cell_selection_params;
+ U8 nr_of_remaining_cells;
+ U8 freq_diff_length;
+ U16 numElements_m_compact_neighbour_cell_params_struct_s_1;
+ compact_neighbour_cell_params_struct_s_1 * m_compact_neighbour_cell_params_struct_s_1;
+}compact_neighbour_cell_params_struct;
+
+/* SEQUENCE reference frequency lists struct */
+typedef struct reference_frequency_lists_struct{
+ U16 numElements_m_reference_frequency_struct;
+ reference_frequency_struct * m_reference_frequency_struct;
+}reference_frequency_lists_struct;
+
+/* SEQUENCE cell allocation lists struct */
+typedef struct cell_allocation_lists_struct{
+ U16 numElements_m_cell_allocation_struct_1;
+ cell_allocation_struct_1 * m_cell_allocation_struct_1;
+}cell_allocation_lists_struct;
+
+/* SEQUENCE gprs mobile allocations lists struct */
+typedef struct gprs_mobile_allocations_lists_struct{
+ U16 numElements_m_gprs_mobile_allocations_struct;
+ gprs_mobile_allocations_struct * m_gprs_mobile_allocations_struct;
+}gprs_mobile_allocations_lists_struct;
+
+/* SEQUENCE non-hopping pccch carriers lists struct */
+typedef struct non_hopping_pccch_carriers_lists_struct{
+ U16 numElements_m_non_hopping_pccch_carriers_struct;
+ non_hopping_pccch_carriers_struct * m_non_hopping_pccch_carriers_struct;
+}non_hopping_pccch_carriers_lists_struct;
+
+/* SEQUENCE hopping pccch carriers lists struct */
+typedef struct hopping_pccch_carriers_lists_struct{
+ U16 numElements_m_hopping_pccch_carriers_struct;
+ hopping_pccch_carriers_struct * m_hopping_pccch_carriers_struct;
+}hopping_pccch_carriers_lists_struct;
+
+/* SEQUENCE compact control info struct */
+typedef struct compact_control_info_struct{
+ U8 large_cell_operation;
+ ispresent compact_control_info_struct_s_1_tag;
+ union compact_control_info_struct_s_1_value{
+ number_of_idle_blocks_struct number_of_idle_blocks;
+ }compact_control_info_struct_s_1_value;
+ ispresent compact_control_info_struct_s_2_tag;
+ union compact_control_info_struct_s_2_value{
+ U8 n_ccch_nh;
+ }compact_control_info_struct_s_2_value;
+}compact_control_info_struct;
+
+typedef enum {
+ G_RNTI,
+ REPEATED_IU_PAGE_INFO_STRUCT_S_1
+}repeated_iu_page_info_struct_s_0_enum;
+
+typedef enum {
+ REPEATED_IU_PAGE_INFO_STRUCT_TMSI,
+ REPEATED_IU_PAGE_INFO_STRUCT_PTMSI,
+ REPEATED_IU_PAGE_INFO_STRUCT_S_3
+}repeated_iu_page_info_struct_s_2_enum;
+
+typedef struct repeated_iu_page_info_struct_s_4{
+ U8 length_of_mobile_identity_contents;
+ U16 numElements_mobile_identity;
+ U8 * mobile_identity;
+}repeated_iu_page_info_struct_s_4;
+
+typedef struct repeated_iu_page_info_struct_s_3{
+ repeated_iu_page_info_struct_s_4 m_repeated_iu_page_info_struct_s_4;
+ page_info_struct page_info_struct;
+}repeated_iu_page_info_struct_s_3;
+
+typedef struct repeated_iu_page_info_struct_s_1{
+ repeated_iu_page_info_struct_s_2_enum repeated_iu_page_info_struct_s_2_tag;
+ union repeated_iu_page_info_struct_s_2_value{
+ U32 tmsi;
+ U32 ptmsi;
+ repeated_iu_page_info_struct_s_3 m_repeated_iu_page_info_struct_s_3;
+ }repeated_iu_page_info_struct_s_2_value;
+ ispresent repeated_iu_page_info_struct_s_5_tag;
+ union repeated_iu_page_info_struct_s_5_value{
+ U8 emlpp_priority;
+ }repeated_iu_page_info_struct_s_5_value;
+}repeated_iu_page_info_struct_s_1;
+
+/* SEQUENCE repeated iu page info struct */
+typedef struct repeated_iu_page_info_struct{
+ repeated_iu_page_info_struct_s_0_enum repeated_iu_page_info_struct_s_0_tag;
+ union repeated_iu_page_info_struct_s_0_value{
+ U32 g_rnti;
+ repeated_iu_page_info_struct_s_1 m_repeated_iu_page_info_struct_s_1;
+ }repeated_iu_page_info_struct_s_0_value;
+}repeated_iu_page_info_struct;
+
+/* SEQUENCE ext frequency list description struct */
+typedef struct ext_frequency_list_description_struct{
+ ext_frequency_list_struct ext_frequency_list;
+ U16 numElements_ext_frequency_list_cont;
+ ext_frequency_list_struct * ext_frequency_list_cont;
+}ext_frequency_list_description_struct;
+
+typedef struct add_frequency_list_struct_s_2{
+ U16 numElements_frequency_diff;
+ U8 * frequency_diff;
+ U8 bsic;
+ ispresent add_frequency_list_struct_s_3_tag;
+ union add_frequency_list_struct_s_3_value{
+ cell_selection_struct_1 cell_selection_params;
+ }add_frequency_list_struct_s_3_value;
+}add_frequency_list_struct_s_2;
+
+/* SEQUENCE add frequency list struct */
+typedef struct add_frequency_list_struct{
+ U16 start_frequency;
+ U8 bsic;
+ ispresent add_frequency_list_struct_s_1_tag;
+ union add_frequency_list_struct_s_1_value{
+ cell_selection_struct_1 cell_selection_params;
+ }add_frequency_list_struct_s_1_value;
+ U8 nr_of_frequencies;
+ U8 freq_diff_length;
+ U16 numElements_m_add_frequency_list_struct_s_2;
+ add_frequency_list_struct_s_2 * m_add_frequency_list_struct_s_2;
+}add_frequency_list_struct;
+
+typedef struct dynamic_allocation_struct_s_2{
+ U8 p0;
+ U8 pr_mode;
+}dynamic_allocation_struct_s_2;
+
+typedef enum {
+ TIMESLOT_ALLOCATION,
+ TIMESLOT_ALLOCATION_WITH_POWER_CONTROL
+}dynamic_allocation_struct_s_6_enum;
+
+/* SEQUENCE dynamic allocation struct */
+typedef struct dynamic_allocation_struct{
+ U8 extended_dynamic_allocation;
+ ispresent dynamic_allocation_struct_s_1_tag;
+ union dynamic_allocation_struct_s_1_value{
+ dynamic_allocation_struct_s_2 m_dynamic_allocation_struct_s_2;
+ }dynamic_allocation_struct_s_1_value;
+ U8 usf_granularity;
+ ispresent dynamic_allocation_struct_s_3_tag;
+ union dynamic_allocation_struct_s_3_value{
+ U8 uplink_tfi_assignment;
+ }dynamic_allocation_struct_s_3_value;
+ ispresent dynamic_allocation_struct_s_4_tag;
+ union dynamic_allocation_struct_s_4_value{
+ U8 rlc_data_blocks_granted;
+ }dynamic_allocation_struct_s_4_value;
+ ispresent dynamic_allocation_struct_s_5_tag;
+ union dynamic_allocation_struct_s_5_value{
+ starting_frame_number_description_ie tbf_starting_time;
+ }dynamic_allocation_struct_s_5_value;
+ dynamic_allocation_struct_s_6_enum dynamic_allocation_struct_s_6_tag;
+ union dynamic_allocation_struct_s_6_value{
+ timeslot_allocation_struct timeslot_allocation;
+ timeslot_allocation_with_power_control_parameters timeslot_allocation_with_power_control;
+ }dynamic_allocation_struct_s_6_value;
+}dynamic_allocation_struct;
+
+typedef struct dynamic_allocation_in_ptr_struct_s_2{
+ U8 p0;
+ U8 pr_mode;
+}dynamic_allocation_in_ptr_struct_s_2;
+
+typedef enum {
+ DYNAMIC_ALLOCATION_IN_PTR_STRUCT_TIMESLOT_ALLOCATION,
+ DYNAMIC_ALLOCATION_IN_PTR_STRUCT_TIMESLOT_ALLOCATION_WITH_POWER_CONTROL
+}dynamic_allocation_in_ptr_struct_s_5_enum;
+
+/* SEQUENCE dynamic allocation in ptr struct */
+typedef struct dynamic_allocation_in_ptr_struct{
+ U8 extended_dynamic_allocation;
+ ispresent dynamic_allocation_in_ptr_struct_s_1_tag;
+ union dynamic_allocation_in_ptr_struct_s_1_value{
+ dynamic_allocation_in_ptr_struct_s_2 m_dynamic_allocation_in_ptr_struct_s_2;
+ }dynamic_allocation_in_ptr_struct_s_1_value;
+ U8 usf_granularity;
+ ispresent dynamic_allocation_in_ptr_struct_s_3_tag;
+ union dynamic_allocation_in_ptr_struct_s_3_value{
+ U8 rlc_data_blocks_granted;
+ }dynamic_allocation_in_ptr_struct_s_3_value;
+ ispresent dynamic_allocation_in_ptr_struct_s_4_tag;
+ union dynamic_allocation_in_ptr_struct_s_4_value{
+ starting_frame_number_description_ie tbf_starting_time;
+ }dynamic_allocation_in_ptr_struct_s_4_value;
+ dynamic_allocation_in_ptr_struct_s_5_enum dynamic_allocation_in_ptr_struct_s_5_tag;
+ union dynamic_allocation_in_ptr_struct_s_5_value{
+ timeslot_allocation_struct timeslot_allocation;
+ timeslot_allocation_with_power_control_parameters timeslot_allocation_with_power_control;
+ }dynamic_allocation_in_ptr_struct_s_5_value;
+}dynamic_allocation_in_ptr_struct;
+
+typedef struct single_block_allocation_struct_s_2{
+ U8 alpha;
+ U8 gamma_tn;
+}single_block_allocation_struct_s_2;
+
+typedef struct single_block_allocation_struct_s_4{
+ U8 p0;
+ U8 bts_pwr_ctrl_mode;
+ U8 pr_mode;
+}single_block_allocation_struct_s_4;
+
+/* SEQUENCE single block allocation struct */
+typedef struct single_block_allocation_struct{
+ U8 timeslot_number;
+ ispresent single_block_allocation_struct_s_1_tag;
+ union single_block_allocation_struct_s_1_value{
+ single_block_allocation_struct_s_2 m_single_block_allocation_struct_s_2;
+ }single_block_allocation_struct_s_1_value;
+ ispresent single_block_allocation_struct_s_3_tag;
+ union single_block_allocation_struct_s_3_value{
+ single_block_allocation_struct_s_4 m_single_block_allocation_struct_s_4;
+ }single_block_allocation_struct_s_3_value;
+ starting_frame_number_description_ie tbf_starting_time;
+}single_block_allocation_struct;
+
+typedef struct multi_block_allocation_struct_s_2{
+ U8 alpha;
+ U8 gamma_tn;
+}multi_block_allocation_struct_s_2;
+
+typedef struct multi_block_allocation_struct_s_4{
+ U8 p0;
+ U8 bts_pwr_ctrl_mode;
+ U8 pr_mode;
+}multi_block_allocation_struct_s_4;
+
+/* SEQUENCE multi block allocation struct */
+typedef struct multi_block_allocation_struct{
+ U8 timeslot_number;
+ ispresent multi_block_allocation_struct_s_1_tag;
+ union multi_block_allocation_struct_s_1_value{
+ multi_block_allocation_struct_s_2 m_multi_block_allocation_struct_s_2;
+ }multi_block_allocation_struct_s_1_value;
+ ispresent multi_block_allocation_struct_s_3_tag;
+ union multi_block_allocation_struct_s_3_value{
+ multi_block_allocation_struct_s_4 m_multi_block_allocation_struct_s_4;
+ }multi_block_allocation_struct_s_3_value;
+ starting_frame_number_description_ie tbf_starting_time;
+ U8 number_of_radio_blocks_allocated;
+}multi_block_allocation_struct;
+
+/* SEQUENCE global tn uplink tbf assignment */
+typedef struct global_tn_uplink_tbf_assignment{
+ timeslot_description_struct global_timeslot_description;
+ U16 numElements_uplink_tbf_assignment;
+ uplink_tbf_assignment_struct * uplink_tbf_assignment;
+}global_tn_uplink_tbf_assignment;
+
+/* SEQUENCE multiple downlink tbf assignment struct */
+typedef struct multiple_downlink_tbf_assignment_struct{
+ U8 timeslot_allocation;
+ U16 numElements_downlink_tbf_assignment;
+ downlink_tbf_assignment_struct * downlink_tbf_assignment;
+}multiple_downlink_tbf_assignment_struct;
+
+/* SEQUENCE multiple downlink assignment struct */
+typedef struct multiple_downlink_assignment_struct{
+ U8 timeslot_allocation;
+ ispresent multiple_downlink_assignment_struct_s_1_tag;
+ union multiple_downlink_assignment_struct_s_1_value{
+ U8 uplink_control_timeslot;
+ }multiple_downlink_assignment_struct_s_1_value;
+ U16 numElements_downlink_tbf_assignment;
+ downlink_tbf_assignment_struct_for_mttr * downlink_tbf_assignment;
+}multiple_downlink_assignment_struct;
+
+typedef struct multiple_uplink_assignment_struct_s_2{
+ U8 p0;
+ U8 pr_mode;
+}multiple_uplink_assignment_struct_s_2;
+
+/* SEQUENCE multiple uplink assignment struct */
+typedef struct multiple_uplink_assignment_struct{
+ U8 extended_dynamic_allocation;
+ ispresent multiple_uplink_assignment_struct_s_1_tag;
+ union multiple_uplink_assignment_struct_s_1_value{
+ multiple_uplink_assignment_struct_s_2 m_multiple_uplink_assignment_struct_s_2;
+ }multiple_uplink_assignment_struct_s_1_value;
+ ispresent multiple_uplink_assignment_struct_s_3_tag;
+ union multiple_uplink_assignment_struct_s_3_value{
+ starting_frame_number_description_ie tbf_starting_time;
+ }multiple_uplink_assignment_struct_s_3_value;
+ ispresent multiple_uplink_assignment_struct_s_4_tag;
+ union multiple_uplink_assignment_struct_s_4_value{
+ global_tn_uplink_tbf_assignment global_tn_uplink_tbf_parameters;
+ }multiple_uplink_assignment_struct_s_4_value;
+}multiple_uplink_assignment_struct;
+
+typedef struct egprs_mode_struct_s_9{
+ ispresent egprs_mode_struct_s_10_tag;
+ union egprs_mode_struct_s_10_value{
+ egprs_window_size_ie egprs_window_size;
+ }egprs_mode_struct_s_10_value;
+ U8 link_quality_measurement_mode;
+ ispresent egprs_mode_struct_s_11_tag;
+ union egprs_mode_struct_s_11_value{
+ U8 bep_period2;
+ }egprs_mode_struct_s_11_value;
+}egprs_mode_struct_s_9;
+
+typedef struct egprs_mode_struct_s_7{
+ ispresent egprs_mode_struct_s_8_tag;
+ union egprs_mode_struct_s_8_value{
+ egprs_mode_struct_s_9 m_egprs_mode_struct_s_9;
+ }egprs_mode_struct_s_8_value;
+ U16 numElements_downlink_assignment;
+ downlink_assignment_struct * downlink_assignment;
+}egprs_mode_struct_s_7;
+
+/* SEQUENCE egprs mode struct */
+typedef struct egprs_mode_struct{
+ ispresent egprs_mode_struct_s_2_tag;
+ union egprs_mode_struct_s_2_value{
+ egprs_window_size_ie egprs_window_size;
+ }egprs_mode_struct_s_2_value;
+ ispresent egprs_mode_struct_s_3_tag;
+ union egprs_mode_struct_s_3_value{
+ egprs_modulation_and_coding_ie egprs_channel_coding_command;
+ }egprs_mode_struct_s_3_value;
+ ispresent egprs_mode_struct_s_4_tag;
+ union egprs_mode_struct_s_4_value{
+ U8 bep_period2;
+ }egprs_mode_struct_s_4_value;
+ ispresent egprs_mode_struct_s_5_tag;
+ union egprs_mode_struct_s_5_value{
+ global_tn_uplink_tbf_assignment global_tn_uplink_tbf_parameters;
+ }egprs_mode_struct_s_5_value;
+ ispresent egprs_mode_struct_s_6_tag;
+ union egprs_mode_struct_s_6_value{
+ egprs_mode_struct_s_7 m_egprs_mode_struct_s_7;
+ }egprs_mode_struct_s_6_value;
+}egprs_mode_struct;
+
+/* SEQUENCE gprs mode struct */
+typedef struct gprs_mode_struct{
+ ispresent gprs_mode_struct_s_1_tag;
+ union gprs_mode_struct_s_1_value{
+ U8 channel_coding_command;
+ }gprs_mode_struct_s_1_value;
+ ispresent gprs_mode_struct_s_2_tag;
+ union gprs_mode_struct_s_2_value{
+ global_tn_uplink_tbf_assignment global_tn_uplink_tbf_parameters;
+ }gprs_mode_struct_s_2_value;
+ U16 numElements_downlink_assignment;
+ downlink_assignment_struct * downlink_assignment;
+}gprs_mode_struct;
+
+typedef struct uplink_assignment_struct_s_3{
+ U8 p0;
+ U8 pr_mode;
+}uplink_assignment_struct_s_3;
+
+/* SEQUENCE uplink assignment struct */
+typedef struct uplink_assignment_struct{
+ U8 extended_dynamic_allocation;
+ ispresent uplink_assignment_struct_s_1_tag;
+ union uplink_assignment_struct_s_1_value{
+ U8 uplink_control_timeslot;
+ }uplink_assignment_struct_s_1_value;
+ ispresent uplink_assignment_struct_s_2_tag;
+ union uplink_assignment_struct_s_2_value{
+ uplink_assignment_struct_s_3 m_uplink_assignment_struct_s_3;
+ }uplink_assignment_struct_s_2_value;
+ ispresent uplink_assignment_struct_s_4_tag;
+ union uplink_assignment_struct_s_4_value{
+ starting_frame_number_description_ie tbf_starting_time;
+ }uplink_assignment_struct_s_4_value;
+ ispresent uplink_assignment_struct_s_5_tag;
+ union uplink_assignment_struct_s_5_value{
+ global_tn_uplink_tbf_assignment global_tn_uplink_tbf_parameters;
+ }uplink_assignment_struct_s_5_value;
+}uplink_assignment_struct;
+
+typedef struct uplink_assignment_2_struct_s_6{
+ U8 p0_c2;
+ U8 pr_mode_c2;
+}uplink_assignment_2_struct_s_6;
+
+typedef struct uplink_assignment_2_struct_s_4{
+ U8 p0_c1;
+ U8 pr_mode_c1;
+ ispresent uplink_assignment_2_struct_s_5_tag;
+ union uplink_assignment_2_struct_s_5_value{
+ uplink_assignment_2_struct_s_6 m_uplink_assignment_2_struct_s_6;
+ }uplink_assignment_2_struct_s_5_value;
+}uplink_assignment_2_struct_s_4;
+
+typedef struct uplink_assignment_2_struct_s_8{
+ ispresent uplink_assignment_2_struct_s_8_tag;
+ union uplink_assignment_2_struct_s_8_value{
+ U8 tsh;
+ }uplink_assignment_2_struct_s_8_value;
+}uplink_assignment_2_struct_s_8;
+
+typedef struct uplink_assignment_2_struct_s_12{
+ timeslot_description_2_struct global_timeslot_description;
+ U16 numElements_uplink_tbf_assignment_2;
+ uplink_tbf_assignment_2_struct * uplink_tbf_assignment_2;
+}uplink_assignment_2_struct_s_12;
+
+typedef struct uplink_assignment_2_struct_s_16{
+ uplink_tbf_assignment_2_struct uplink_tbf_assignment_2;
+ U8 rtti_usf_mode;
+}uplink_assignment_2_struct_s_16;
+
+typedef struct uplink_assignment_2_struct_s_15{
+ pdch_pairs_description_ie pdch_pairs_description;
+ power_control_parameter_in_mtbf_assignment power_control_parameter_mtbf;
+ U16 numElements_m_uplink_assignment_2_struct_s_16;
+ uplink_assignment_2_struct_s_16 * m_uplink_assignment_2_struct_s_16;
+}uplink_assignment_2_struct_s_15;
+
+typedef struct uplink_assignment_2_struct_s_10{
+ ispresent uplink_assignment_2_struct_s_11_tag;
+ union uplink_assignment_2_struct_s_11_value{
+ uplink_assignment_2_struct_s_12 m_uplink_assignment_2_struct_s_12;
+ }uplink_assignment_2_struct_s_11_value;
+ ispresent uplink_assignment_2_struct_s_14_tag;
+ union uplink_assignment_2_struct_s_14_value{
+ uplink_assignment_2_struct_s_15 m_uplink_assignment_2_struct_s_15;
+ }uplink_assignment_2_struct_s_14_value;
+}uplink_assignment_2_struct_s_10;
+
+/* SEQUENCE uplink assignment 2 struct */
+typedef struct uplink_assignment_2_struct{
+ U8 extended_dynamic_allocation;
+ ispresent uplink_assignment_2_struct_s_1_tag;
+ union uplink_assignment_2_struct_s_1_value{
+ U8 uplink_control_timeslot_c1;
+ }uplink_assignment_2_struct_s_1_value;
+ ispresent uplink_assignment_2_struct_s_2_tag;
+ union uplink_assignment_2_struct_s_2_value{
+ U8 uplink_control_timeslot_c2;
+ }uplink_assignment_2_struct_s_2_value;
+ ispresent uplink_assignment_2_struct_s_3_tag;
+ union uplink_assignment_2_struct_s_3_value{
+ uplink_assignment_2_struct_s_4 m_uplink_assignment_2_struct_s_4;
+ }uplink_assignment_2_struct_s_3_value;
+ ispresent uplink_assignment_2_struct_s_7_tag;
+ union uplink_assignment_2_struct_s_7_value{
+ uplink_assignment_2_struct_s_8 m_uplink_assignment_2_struct_s_8;
+ }uplink_assignment_2_struct_s_7_value;
+ ispresent uplink_assignment_2_struct_s_9_tag;
+ union uplink_assignment_2_struct_s_9_value{
+ uplink_assignment_2_struct_s_10 m_uplink_assignment_2_struct_s_10;
+ }uplink_assignment_2_struct_s_9_value;
+}uplink_assignment_2_struct;
+
+typedef enum {
+ DUAL_CARRIER_FREQUENCY_PARAMETERS_IE_S_2,
+ INDIRECT_ENCODING,
+ DIRECT_ENCODING_1,
+ DIRECT_ENCODING_2
+}dual_carrier_frequency_parameters_ie_s_1_enum;
+
+typedef struct dual_carrier_frequency_parameters_ie_s_3{
+ U16 arfcn1;
+ U16 arfcn2;
+}dual_carrier_frequency_parameters_ie_s_3;
+
+typedef struct dual_carrier_frequency_parameters_ie_s_2{
+ ispresent dual_carrier_frequency_parameters_ie_s_2_tag;
+ union dual_carrier_frequency_parameters_ie_s_2_value{
+ dual_carrier_frequency_parameters_ie_s_3 m_dual_carrier_frequency_parameters_ie_s_3;
+ }dual_carrier_frequency_parameters_ie_s_2_value;
+}dual_carrier_frequency_parameters_ie_s_2;
+
+/* SEQUENCE dual carrier frequency parameters ie */
+typedef struct dual_carrier_frequency_parameters_ie{
+ U8 tsc;
+ dual_carrier_frequency_parameters_ie_s_1_enum dual_carrier_frequency_parameters_ie_s_1_tag;
+ union dual_carrier_frequency_parameters_ie_s_1_value{
+ dual_carrier_frequency_parameters_ie_s_2 m_dual_carrier_frequency_parameters_ie_s_2;
+ dual_carrier_indirect_encoding_struct indirect_encoding;
+ dual_carrier_direct_encoding_1_struct direct_encoding_1;
+ dual_carrier_direct_encoding_2_struct direct_encoding_2;
+ }dual_carrier_frequency_parameters_ie_s_1_value;
+}dual_carrier_frequency_parameters_ie;
+
+/* SEQUENCE btti multiple downlink assignment struct */
+typedef struct btti_multiple_downlink_assignment_struct{
+ ispresent btti_multiple_downlink_assignment_struct_s_1_tag;
+ union btti_multiple_downlink_assignment_struct_s_1_value{
+ U8 timeslot_allocation_c1;
+ }btti_multiple_downlink_assignment_struct_s_1_value;
+ ispresent btti_multiple_downlink_assignment_struct_s_2_tag;
+ union btti_multiple_downlink_assignment_struct_s_2_value{
+ U8 timeslot_allocation_c2;
+ }btti_multiple_downlink_assignment_struct_s_2_value;
+ U16 numElements_downlink_tbf_assignment;
+ downlink_tbf_assignment_2_struct * downlink_tbf_assignment;
+}btti_multiple_downlink_assignment_struct;
+
+/* SEQUENCE rtti multiple downlink assignment sc struct */
+typedef struct rtti_multiple_downlink_assignment_sc_struct{
+ U8 rtti_downlink_pdch_pair_assignment_sc;
+ U16 numElements_downlink_tbf_assignment;
+ downlink_tbf_assignment_2_struct * downlink_tbf_assignment;
+}rtti_multiple_downlink_assignment_sc_struct;
+
+/* SEQUENCE rtti multiple downlink assignment dc struct */
+typedef struct rtti_multiple_downlink_assignment_dc_struct{
+ U8 rtti_downlink_pdch_pair_assignment_dc;
+ U16 numElements_downlink_tbf_assignment;
+ downlink_tbf_assignment_2_struct * downlink_tbf_assignment;
+}rtti_multiple_downlink_assignment_dc_struct;
+
+/* SEQUENCE btti multiple downlink assignment struct 2 */
+typedef struct btti_multiple_downlink_assignment_struct_2{
+ ispresent btti_multiple_downlink_assignment_struct_2_s_1_tag;
+ union btti_multiple_downlink_assignment_struct_2_s_1_value{
+ U8 timeslot_allocation_c1;
+ }btti_multiple_downlink_assignment_struct_2_s_1_value;
+ ispresent btti_multiple_downlink_assignment_struct_2_s_2_tag;
+ union btti_multiple_downlink_assignment_struct_2_s_2_value{
+ U8 timeslot_allocation_c2;
+ }btti_multiple_downlink_assignment_struct_2_s_2_value;
+ ispresent btti_multiple_downlink_assignment_struct_2_s_3_tag;
+ union btti_multiple_downlink_assignment_struct_2_s_3_value{
+ U8 uplink_control_timeslot_c1;
+ }btti_multiple_downlink_assignment_struct_2_s_3_value;
+ ispresent btti_multiple_downlink_assignment_struct_2_s_4_tag;
+ union btti_multiple_downlink_assignment_struct_2_s_4_value{
+ U8 uplink_control_timeslot_c2;
+ }btti_multiple_downlink_assignment_struct_2_s_4_value;
+ U16 numElements_downlink_tbf_assignment;
+ downlink_tbf_assignment_2_struct_2 * downlink_tbf_assignment;
+}btti_multiple_downlink_assignment_struct_2;
+
+/* SEQUENCE rtti multiple downlink assignment sc struct 2 */
+typedef struct rtti_multiple_downlink_assignment_sc_struct_2{
+ U8 rtti_downlink_pdch_pair_assignment_sc;
+ ispresent rtti_multiple_downlink_assignment_sc_struct_2_s_1_tag;
+ union rtti_multiple_downlink_assignment_sc_struct_2_s_1_value{
+ U8 uplink_control_timeslot_c1;
+ }rtti_multiple_downlink_assignment_sc_struct_2_s_1_value;
+ U16 numElements_downlink_tbf_assignment;
+ downlink_tbf_assignment_2_struct_2 * downlink_tbf_assignment;
+}rtti_multiple_downlink_assignment_sc_struct_2;
+
+/* SEQUENCE rtti multiple downlink assignment dc struct 2 */
+typedef struct rtti_multiple_downlink_assignment_dc_struct_2{
+ U8 rtti_downlink_pdch_pair_assignment_dc;
+ ispresent rtti_multiple_downlink_assignment_dc_struct_2_s_1_tag;
+ union rtti_multiple_downlink_assignment_dc_struct_2_s_1_value{
+ U8 uplink_control_timeslot_c1;
+ }rtti_multiple_downlink_assignment_dc_struct_2_s_1_value;
+ ispresent rtti_multiple_downlink_assignment_dc_struct_2_s_2_tag;
+ union rtti_multiple_downlink_assignment_dc_struct_2_s_2_value{
+ U8 uplink_control_timeslot_c2;
+ }rtti_multiple_downlink_assignment_dc_struct_2_s_2_value;
+ U16 numElements_downlink_tbf_assignment;
+ downlink_tbf_assignment_2_struct_2 * downlink_tbf_assignment;
+}rtti_multiple_downlink_assignment_dc_struct_2;
+
+typedef struct multiple_uplink_assignment_2_struct_s_4{
+ U8 p0_c2;
+ U8 pr_mode_c2;
+}multiple_uplink_assignment_2_struct_s_4;
+
+typedef struct multiple_uplink_assignment_2_struct_s_2{
+ U8 p0_c1;
+ U8 pr_mode_c1;
+ ispresent multiple_uplink_assignment_2_struct_s_3_tag;
+ union multiple_uplink_assignment_2_struct_s_3_value{
+ multiple_uplink_assignment_2_struct_s_4 m_multiple_uplink_assignment_2_struct_s_4;
+ }multiple_uplink_assignment_2_struct_s_3_value;
+}multiple_uplink_assignment_2_struct_s_2;
+
+typedef struct multiple_uplink_assignment_2_struct_s_6{
+ ispresent multiple_uplink_assignment_2_struct_s_6_tag;
+ union multiple_uplink_assignment_2_struct_s_6_value{
+ U8 tsh;
+ }multiple_uplink_assignment_2_struct_s_6_value;
+}multiple_uplink_assignment_2_struct_s_6;
+
+typedef struct multiple_uplink_assignment_2_struct_s_10{
+ timeslot_description_2_struct global_timeslot_description;
+ U16 numElements_uplink_tbf_assignment;
+ uplink_tbf_assignment_2_struct_for_mttr * uplink_tbf_assignment;
+}multiple_uplink_assignment_2_struct_s_10;
+
+typedef struct multiple_uplink_assignment_2_struct_s_14{
+ uplink_tbf_assignment_2_struct_for_mttr uplink_tbf_assignment;
+ U8 rtti_usf_mode;
+}multiple_uplink_assignment_2_struct_s_14;
+
+typedef struct multiple_uplink_assignment_2_struct_s_13{
+ power_control_parameter_in_mtbf_assignment power_control_parameter_mtbf;
+ U16 numElements_m_multiple_uplink_assignment_2_struct_s_14;
+ multiple_uplink_assignment_2_struct_s_14 * m_multiple_uplink_assignment_2_struct_s_14;
+}multiple_uplink_assignment_2_struct_s_13;
+
+typedef struct multiple_uplink_assignment_2_struct_s_8{
+ ispresent multiple_uplink_assignment_2_struct_s_9_tag;
+ union multiple_uplink_assignment_2_struct_s_9_value{
+ multiple_uplink_assignment_2_struct_s_10 m_multiple_uplink_assignment_2_struct_s_10;
+ }multiple_uplink_assignment_2_struct_s_9_value;
+ ispresent multiple_uplink_assignment_2_struct_s_12_tag;
+ union multiple_uplink_assignment_2_struct_s_12_value{
+ multiple_uplink_assignment_2_struct_s_13 m_multiple_uplink_assignment_2_struct_s_13;
+ }multiple_uplink_assignment_2_struct_s_12_value;
+}multiple_uplink_assignment_2_struct_s_8;
+
+/* SEQUENCE multiple uplink assignment 2 struct */
+typedef struct multiple_uplink_assignment_2_struct{
+ U8 extended_dynamic_allocation;
+ ispresent multiple_uplink_assignment_2_struct_s_1_tag;
+ union multiple_uplink_assignment_2_struct_s_1_value{
+ multiple_uplink_assignment_2_struct_s_2 m_multiple_uplink_assignment_2_struct_s_2;
+ }multiple_uplink_assignment_2_struct_s_1_value;
+ ispresent multiple_uplink_assignment_2_struct_s_5_tag;
+ union multiple_uplink_assignment_2_struct_s_5_value{
+ multiple_uplink_assignment_2_struct_s_6 m_multiple_uplink_assignment_2_struct_s_6;
+ }multiple_uplink_assignment_2_struct_s_5_value;
+ ispresent multiple_uplink_assignment_2_struct_s_7_tag;
+ union multiple_uplink_assignment_2_struct_s_7_value{
+ multiple_uplink_assignment_2_struct_s_8 m_multiple_uplink_assignment_2_struct_s_8;
+ }multiple_uplink_assignment_2_struct_s_7_value;
+}multiple_uplink_assignment_2_struct;
+
+typedef enum {
+ PDCH_PAIRS_DESCRIPTION_IE_FOR_MTTR_S_1,
+ PDCH_PAIRS_DESCRIPTION_IE_FOR_MTTR_S_5
+}pdch_pairs_description_ie_for_mttr_s_0_enum;
+
+typedef enum {
+ PDCH_PAIRS_DESCRIPTION_IE_FOR_MTTR_CONCAT_00,
+ PDCH_PAIRS_DESCRIPTION_IE_FOR_MTTR_CONCAT_01,
+ PDCH_PAIRS_DESCRIPTION_IE_FOR_MTTR_S_3
+}pdch_pairs_description_ie_for_mttr_s_2_enum;
+
+typedef struct pdch_pairs_description_ie_for_mttr_s_3{
+ U8 downlink_pdch_pairs_c1;
+ U8 uplink_pdch_pairs_c1;
+}pdch_pairs_description_ie_for_mttr_s_3;
+
+typedef struct pdch_pairs_description_ie_for_mttr_s_1{
+ pdch_pairs_description_ie_for_mttr_s_2_enum pdch_pairs_description_ie_for_mttr_s_2_tag;
+ union pdch_pairs_description_ie_for_mttr_s_2_value{
+ pdch_pairs_description_ie_for_mttr_s_3 m_pdch_pairs_description_ie_for_mttr_s_3;
+ }pdch_pairs_description_ie_for_mttr_s_2_value;
+ U16 numElements_rtti_multiple_downlink_assignment_sc;
+ rtti_multiple_downlink_assignment_sc_struct_2 * rtti_multiple_downlink_assignment_sc;
+}pdch_pairs_description_ie_for_mttr_s_1;
+
+typedef enum {
+ PDCH_PAIRS_DESCRIPTION_IE_FOR_MTTR_CONCAT_001,
+ PDCH_PAIRS_DESCRIPTION_IE_FOR_MTTR_CONCAT_011,
+ PDCH_PAIRS_DESCRIPTION_IE_FOR_MTTR_S_7
+}pdch_pairs_description_ie_for_mttr_s_6_enum;
+
+typedef struct pdch_pairs_description_ie_for_mttr_s_7{
+ U8 downlink_pdch_pairs_c1;
+ U8 downlink_pdch_pairs_c2;
+ U8 uplink_pdch_pairs_c1;
+ U8 uplink_pdch_pairs_c2;
+}pdch_pairs_description_ie_for_mttr_s_7;
+
+typedef struct pdch_pairs_description_ie_for_mttr_s_5{
+ pdch_pairs_description_ie_for_mttr_s_6_enum pdch_pairs_description_ie_for_mttr_s_6_tag;
+ union pdch_pairs_description_ie_for_mttr_s_6_value{
+ pdch_pairs_description_ie_for_mttr_s_7 m_pdch_pairs_description_ie_for_mttr_s_7;
+ }pdch_pairs_description_ie_for_mttr_s_6_value;
+ U16 numElements_rtti_multiple_downlink_assignment_dc;
+ rtti_multiple_downlink_assignment_dc_struct_2 * rtti_multiple_downlink_assignment_dc;
+}pdch_pairs_description_ie_for_mttr_s_5;
+
+/* SEQUENCE pdch pairs description ie for mttr */
+typedef struct pdch_pairs_description_ie_for_mttr{
+ pdch_pairs_description_ie_for_mttr_s_0_enum pdch_pairs_description_ie_for_mttr_s_0_tag;
+ union pdch_pairs_description_ie_for_mttr_s_0_value{
+ pdch_pairs_description_ie_for_mttr_s_1 m_pdch_pairs_description_ie_for_mttr_s_1;
+ pdch_pairs_description_ie_for_mttr_s_5 m_pdch_pairs_description_ie_for_mttr_s_5;
+ }pdch_pairs_description_ie_for_mttr_s_0_value;
+}pdch_pairs_description_ie_for_mttr;
+
+typedef struct multiple_uplink_assignment_2_struct_in_ps_ho_rr_2_s_4{
+ U8 p0_c2;
+ U8 pr_mode_c2;
+}multiple_uplink_assignment_2_struct_in_ps_ho_rr_2_s_4;
+
+typedef struct multiple_uplink_assignment_2_struct_in_ps_ho_rr_2_s_2{
+ U8 p0_c1;
+ U8 pr_mode_c1;
+ ispresent multiple_uplink_assignment_2_struct_in_ps_ho_rr_2_s_3_tag;
+ union multiple_uplink_assignment_2_struct_in_ps_ho_rr_2_s_3_value{
+ multiple_uplink_assignment_2_struct_in_ps_ho_rr_2_s_4 m_multiple_uplink_assignment_2_struct_in_ps_ho_rr_2_s_4;
+ }multiple_uplink_assignment_2_struct_in_ps_ho_rr_2_s_3_value;
+}multiple_uplink_assignment_2_struct_in_ps_ho_rr_2_s_2;
+
+typedef struct multiple_uplink_assignment_2_struct_in_ps_ho_rr_2_s_6{
+ ispresent multiple_uplink_assignment_2_struct_in_ps_ho_rr_2_s_6_tag;
+ union multiple_uplink_assignment_2_struct_in_ps_ho_rr_2_s_6_value{
+ U8 tsh;
+ }multiple_uplink_assignment_2_struct_in_ps_ho_rr_2_s_6_value;
+}multiple_uplink_assignment_2_struct_in_ps_ho_rr_2_s_6;
+
+typedef struct multiple_uplink_assignment_2_struct_in_ps_ho_rr_2_s_10{
+ timeslot_description_2_struct global_timeslot_description;
+ U16 numElements_uplink_tbf_assignment;
+ uplink_tbf_assignment_2_struct_in_ps_ho_rr_2 * uplink_tbf_assignment;
+}multiple_uplink_assignment_2_struct_in_ps_ho_rr_2_s_10;
+
+typedef struct multiple_uplink_assignment_2_struct_in_ps_ho_rr_2_s_15{
+ uplink_tbf_assignment_2_struct_in_ps_ho_rr_2 uplink_tbf_assignment;
+ U8 rtti_usf_mode;
+}multiple_uplink_assignment_2_struct_in_ps_ho_rr_2_s_15;
+
+typedef struct multiple_uplink_assignment_2_struct_in_ps_ho_rr_2_s_13{
+ ispresent multiple_uplink_assignment_2_struct_in_ps_ho_rr_2_s_14_tag;
+ union multiple_uplink_assignment_2_struct_in_ps_ho_rr_2_s_14_value{
+ pdch_pairs_description_ie uplink_assignment_pdch_pairs_description;
+ }multiple_uplink_assignment_2_struct_in_ps_ho_rr_2_s_14_value;
+ power_control_parameter_in_mtbf_assignment power_control_parameter_mtbf;
+ U16 numElements_m_multiple_uplink_assignment_2_struct_in_ps_ho_rr_2_s_15;
+ multiple_uplink_assignment_2_struct_in_ps_ho_rr_2_s_15 * m_multiple_uplink_assignment_2_struct_in_ps_ho_rr_2_s_15;
+}multiple_uplink_assignment_2_struct_in_ps_ho_rr_2_s_13;
+
+typedef struct multiple_uplink_assignment_2_struct_in_ps_ho_rr_2_s_8{
+ ispresent multiple_uplink_assignment_2_struct_in_ps_ho_rr_2_s_9_tag;
+ union multiple_uplink_assignment_2_struct_in_ps_ho_rr_2_s_9_value{
+ multiple_uplink_assignment_2_struct_in_ps_ho_rr_2_s_10 m_multiple_uplink_assignment_2_struct_in_ps_ho_rr_2_s_10;
+ }multiple_uplink_assignment_2_struct_in_ps_ho_rr_2_s_9_value;
+ ispresent multiple_uplink_assignment_2_struct_in_ps_ho_rr_2_s_12_tag;
+ union multiple_uplink_assignment_2_struct_in_ps_ho_rr_2_s_12_value{
+ multiple_uplink_assignment_2_struct_in_ps_ho_rr_2_s_13 m_multiple_uplink_assignment_2_struct_in_ps_ho_rr_2_s_13;
+ }multiple_uplink_assignment_2_struct_in_ps_ho_rr_2_s_12_value;
+}multiple_uplink_assignment_2_struct_in_ps_ho_rr_2_s_8;
+
+/* SEQUENCE multiple uplink assignment 2 struct in ps ho rr 2 */
+typedef struct multiple_uplink_assignment_2_struct_in_ps_ho_rr_2{
+ U8 extended_dynamic_allocation;
+ ispresent multiple_uplink_assignment_2_struct_in_ps_ho_rr_2_s_1_tag;
+ union multiple_uplink_assignment_2_struct_in_ps_ho_rr_2_s_1_value{
+ multiple_uplink_assignment_2_struct_in_ps_ho_rr_2_s_2 m_multiple_uplink_assignment_2_struct_in_ps_ho_rr_2_s_2;
+ }multiple_uplink_assignment_2_struct_in_ps_ho_rr_2_s_1_value;
+ ispresent multiple_uplink_assignment_2_struct_in_ps_ho_rr_2_s_5_tag;
+ union multiple_uplink_assignment_2_struct_in_ps_ho_rr_2_s_5_value{
+ multiple_uplink_assignment_2_struct_in_ps_ho_rr_2_s_6 m_multiple_uplink_assignment_2_struct_in_ps_ho_rr_2_s_6;
+ }multiple_uplink_assignment_2_struct_in_ps_ho_rr_2_s_5_value;
+ ispresent multiple_uplink_assignment_2_struct_in_ps_ho_rr_2_s_7_tag;
+ union multiple_uplink_assignment_2_struct_in_ps_ho_rr_2_s_7_value{
+ multiple_uplink_assignment_2_struct_in_ps_ho_rr_2_s_8 m_multiple_uplink_assignment_2_struct_in_ps_ho_rr_2_s_8;
+ }multiple_uplink_assignment_2_struct_in_ps_ho_rr_2_s_7_value;
+}multiple_uplink_assignment_2_struct_in_ps_ho_rr_2;
+
+typedef enum {
+ PACKET_CONTROL_ACKNOWLEDGEMENT_MESSAGE_CONTENT_S_1_NULL,
+ PACKET_CONTROL_ACKNOWLEDGEMENT_MESSAGE_CONTENT_S_1_BIT,
+ PACKET_CONTROL_ACKNOWLEDGEMENT_MESSAGE_CONTENT_S_2
+}packet_control_acknowledgement_message_content_s_1_enum;
+
+typedef struct packet_control_acknowledgement_message_content_s_1_bit{
+ U16 numElements_packet_control_acknowledgement_message_content_s_1_bit;
+ U8 * packet_control_acknowledgement_message_content_s_1_bit;
+}packet_control_acknowledgement_message_content_s_1_bit;
+
+typedef enum {
+ PACKET_CONTROL_ACKNOWLEDGEMENT_MESSAGE_CONTENT_S_5_NULL,
+ PACKET_CONTROL_ACKNOWLEDGEMENT_MESSAGE_CONTENT_S_5_BIT,
+ PACKET_CONTROL_ACKNOWLEDGEMENT_MESSAGE_CONTENT_S_6
+}packet_control_acknowledgement_message_content_s_5_enum;
+
+typedef struct packet_control_acknowledgement_message_content_s_5_bit{
+ U16 numElements_packet_control_acknowledgement_message_content_s_5_bit;
+ U8 * packet_control_acknowledgement_message_content_s_5_bit;
+}packet_control_acknowledgement_message_content_s_5_bit;
+
+typedef struct packet_control_acknowledgement_message_content_s_6{
+ ispresent packet_control_acknowledgement_message_content_s_7_tag;
+ union packet_control_acknowledgement_message_content_s_7_value{
+ U16 ctrl_ack_extension;
+ }packet_control_acknowledgement_message_content_s_7_value;
+}packet_control_acknowledgement_message_content_s_6;
+
+typedef struct packet_control_acknowledgement_message_content_s_2{
+ ispresent packet_control_acknowledgement_message_content_s_3_tag;
+ union packet_control_acknowledgement_message_content_s_3_value{
+ U8 tn_rrbp;
+ }packet_control_acknowledgement_message_content_s_3_value;
+ ispresent packet_control_acknowledgement_message_content_s_4_tag;
+ union packet_control_acknowledgement_message_content_s_4_value{
+ U8 g_rnti_extension;
+ }packet_control_acknowledgement_message_content_s_4_value;
+ packet_control_acknowledgement_message_content_s_5_enum packet_control_acknowledgement_message_content_s_5_tag;
+ union packet_control_acknowledgement_message_content_s_5_value{
+ packet_control_acknowledgement_message_content_s_5_bit m_packet_control_acknowledgement_message_content_s_5_bit;
+ packet_control_acknowledgement_message_content_s_6 m_packet_control_acknowledgement_message_content_s_6;
+ }packet_control_acknowledgement_message_content_s_5_value;
+}packet_control_acknowledgement_message_content_s_2;
+
+/* SEQUENCE packet control acknowledgement message content */
+typedef struct packet_control_acknowledgement_message_content{
+ uplink_header_struct header;
+ U32 tlli_g_rnti;
+ U8 ctrl_ack;
+ packet_control_acknowledgement_message_content_s_1_enum packet_control_acknowledgement_message_content_s_1_tag;
+ union packet_control_acknowledgement_message_content_s_1_value{
+ packet_control_acknowledgement_message_content_s_1_bit m_packet_control_acknowledgement_message_content_s_1_bit;
+ packet_control_acknowledgement_message_content_s_2 m_packet_control_acknowledgement_message_content_s_2;
+ }packet_control_acknowledgement_message_content_s_1_value;
+}packet_control_acknowledgement_message_content;
+
+typedef enum {
+ MESSAGE_TYPE,
+ PACKET_CONTROL_ACKNOWLEDGEMENT_11_BIT_MESSAGE_S_2
+}packet_control_acknowledgement_11_bit_message_s_1_enum;
+
+typedef struct packet_control_acknowledgement_11_bit_message_s_2{
+ U8 tn_rrbp;
+ U8 ctrl_ack;
+}packet_control_acknowledgement_11_bit_message_s_2;
+
+/* SEQUENCE packet control acknowledgement 11 bit message */
+typedef struct packet_control_acknowledgement_11_bit_message{
+ uplink_header_struct header;
+ packet_control_acknowledgement_11_bit_message_s_1_enum packet_control_acknowledgement_11_bit_message_s_1_tag;
+ U16 message_type;
+ union packet_control_acknowledgement_11_bit_message_s_1_value{
+ packet_control_acknowledgement_11_bit_message_s_2 m_packet_control_acknowledgement_11_bit_message_s_2;
+ }packet_control_acknowledgement_11_bit_message_s_1_value;
+}packet_control_acknowledgement_11_bit_message;
+
+typedef enum {
+ PACKET_CONTROL_ACKNOWLEDGEMENT_8_BIT_MESSAGE_MESSAGE_TYPE,
+ TN_RRBP
+}packet_control_acknowledgement_8_bit_message_s_1_enum;
+
+/* SEQUENCE packet control acknowledgement 8 bit message */
+typedef struct packet_control_acknowledgement_8_bit_message{
+ uplink_header_struct header;
+ packet_control_acknowledgement_8_bit_message_s_1_enum packet_control_acknowledgement_8_bit_message_s_1_tag;
+ U8 message_type;
+ union packet_control_acknowledgement_8_bit_message_s_1_value{
+ U8 tn_rrbp;
+ }packet_control_acknowledgement_8_bit_message_s_1_value;
+ U8 ctrl_ack;
+}packet_control_acknowledgement_8_bit_message;
+
+typedef enum {
+ PACKET_CELL_CHANGE_FAILURE_MESSAGE_CONTENT_S_1_NULL,
+ PACKET_CELL_CHANGE_FAILURE_MESSAGE_CONTENT_S_1_BIT,
+ PACKET_CELL_CHANGE_FAILURE_MESSAGE_CONTENT_S_2
+}packet_cell_change_failure_message_content_s_1_enum;
+
+typedef struct packet_cell_change_failure_message_content_s_1_bit{
+ U16 numElements_packet_cell_change_failure_message_content_s_1_bit;
+ U8 * packet_cell_change_failure_message_content_s_1_bit;
+}packet_cell_change_failure_message_content_s_1_bit;
+
+typedef enum {
+ PACKET_CELL_CHANGE_FAILURE_MESSAGE_CONTENT_S_5_NULL,
+ PACKET_CELL_CHANGE_FAILURE_MESSAGE_CONTENT_S_5_BIT,
+ PACKET_CELL_CHANGE_FAILURE_MESSAGE_CONTENT_S_6
+}packet_cell_change_failure_message_content_s_5_enum;
+
+typedef struct packet_cell_change_failure_message_content_s_5_bit{
+ U16 numElements_packet_cell_change_failure_message_content_s_5_bit;
+ U8 * packet_cell_change_failure_message_content_s_5_bit;
+}packet_cell_change_failure_message_content_s_5_bit;
+
+typedef enum {
+ PACKET_CELL_CHANGE_FAILURE_MESSAGE_CONTENT_S_8_NULL,
+ PACKET_CELL_CHANGE_FAILURE_MESSAGE_CONTENT_S_8_BIT,
+ PACKET_CELL_CHANGE_FAILURE_MESSAGE_CONTENT_S_9
+}packet_cell_change_failure_message_content_s_8_enum;
+
+typedef struct packet_cell_change_failure_message_content_s_8_bit{
+ U16 numElements_packet_cell_change_failure_message_content_s_8_bit;
+ U8 * packet_cell_change_failure_message_content_s_8_bit;
+}packet_cell_change_failure_message_content_s_8_bit;
+
+typedef enum {
+ PACKET_CELL_CHANGE_FAILURE_MESSAGE_CONTENT_S_11_NULL,
+ PACKET_CELL_CHANGE_FAILURE_MESSAGE_CONTENT_S_11_BIT,
+ PACKET_CELL_CHANGE_FAILURE_MESSAGE_CONTENT_S_12
+}packet_cell_change_failure_message_content_s_11_enum;
+
+typedef struct packet_cell_change_failure_message_content_s_11_bit{
+ U16 numElements_packet_cell_change_failure_message_content_s_11_bit;
+ U8 * packet_cell_change_failure_message_content_s_11_bit;
+}packet_cell_change_failure_message_content_s_11_bit;
+
+typedef enum {
+ PACKET_CELL_CHANGE_FAILURE_MESSAGE_CONTENT_S_15_NULL,
+ PACKET_CELL_CHANGE_FAILURE_MESSAGE_CONTENT_S_15_BIT,
+ PACKET_CELL_CHANGE_FAILURE_MESSAGE_CONTENT_S_16
+}packet_cell_change_failure_message_content_s_15_enum;
+
+typedef struct packet_cell_change_failure_message_content_s_15_bit{
+ U16 numElements_packet_cell_change_failure_message_content_s_15_bit;
+ U8 * packet_cell_change_failure_message_content_s_15_bit;
+}packet_cell_change_failure_message_content_s_15_bit;
+
+typedef struct packet_cell_change_failure_message_content_s_16{
+ ispresent packet_cell_change_failure_message_content_s_17_tag;
+ union packet_cell_change_failure_message_content_s_17_value{
+ e_utran_target_cell_extended_earfcn_ie e_utran_target_cell_extended_earfcn;
+ }packet_cell_change_failure_message_content_s_17_value;
+
+}packet_cell_change_failure_message_content_s_16;
+
+typedef struct packet_cell_change_failure_message_content_s_12{
+ ispresent packet_cell_change_failure_message_content_s_13_tag;
+ union packet_cell_change_failure_message_content_s_13_value{
+ utran_csg_target_cell_ie utran_csg_target_cell;
+ }packet_cell_change_failure_message_content_s_13_value;
+ ispresent packet_cell_change_failure_message_content_s_14_tag;
+ union packet_cell_change_failure_message_content_s_14_value{
+ e_utran_csg_target_cell_ie e_utran_csg_target_cell;
+ }packet_cell_change_failure_message_content_s_14_value;
+ /*Rel 11*/
+ packet_cell_change_failure_message_content_s_15_enum packet_cell_change_failure_message_content_s_15_tag;
+ union packet_cell_change_failure_message_content_s_15_value{
+ packet_cell_change_failure_message_content_s_15_bit m_packet_cell_change_failure_message_content_s_15_bit;
+ packet_cell_change_failure_message_content_s_16 m_packet_cell_change_failure_message_content_s_16;
+ }packet_cell_change_failure_message_content_s_15_value;
+}packet_cell_change_failure_message_content_s_12;
+
+typedef struct packet_cell_change_failure_message_content_s_9{
+ ispresent packet_cell_change_failure_message_content_s_10_tag;
+ union packet_cell_change_failure_message_content_s_10_value{
+ e_utran_target_cell_ie e_utran_target_cell;
+ }packet_cell_change_failure_message_content_s_10_value;
+ packet_cell_change_failure_message_content_s_11_enum packet_cell_change_failure_message_content_s_11_tag;
+ union packet_cell_change_failure_message_content_s_11_value{
+ packet_cell_change_failure_message_content_s_11_bit m_packet_cell_change_failure_message_content_s_11_bit;
+ packet_cell_change_failure_message_content_s_12 m_packet_cell_change_failure_message_content_s_12;
+ }packet_cell_change_failure_message_content_s_11_value;
+}packet_cell_change_failure_message_content_s_9;
+
+typedef struct packet_cell_change_failure_message_content_s_6{
+ ispresent packet_cell_change_failure_message_content_s_7_tag;
+ union packet_cell_change_failure_message_content_s_7_value{
+ U8 g_rnti_extension;
+ }packet_cell_change_failure_message_content_s_7_value;
+ packet_cell_change_failure_message_content_s_8_enum packet_cell_change_failure_message_content_s_8_tag;
+ union packet_cell_change_failure_message_content_s_8_value{
+ packet_cell_change_failure_message_content_s_8_bit m_packet_cell_change_failure_message_content_s_8_bit;
+ packet_cell_change_failure_message_content_s_9 m_packet_cell_change_failure_message_content_s_9;
+ }packet_cell_change_failure_message_content_s_8_value;
+}packet_cell_change_failure_message_content_s_6;
+
+typedef struct packet_cell_change_failure_message_content_s_2{
+ ispresent packet_cell_change_failure_message_content_s_3_tag;
+ union packet_cell_change_failure_message_content_s_3_value{
+ utran_fdd_target_cell_ie utran_fdd_target_cell;
+ }packet_cell_change_failure_message_content_s_3_value;
+ ispresent packet_cell_change_failure_message_content_s_4_tag;
+ union packet_cell_change_failure_message_content_s_4_value{
+ utran_tdd_target_cell_ie utran_tdd_target_cell;
+ }packet_cell_change_failure_message_content_s_4_value;
+ packet_cell_change_failure_message_content_s_5_enum packet_cell_change_failure_message_content_s_5_tag;
+ union packet_cell_change_failure_message_content_s_5_value{
+ packet_cell_change_failure_message_content_s_5_bit m_packet_cell_change_failure_message_content_s_5_bit;
+ packet_cell_change_failure_message_content_s_6 m_packet_cell_change_failure_message_content_s_6;
+ }packet_cell_change_failure_message_content_s_5_value;
+}packet_cell_change_failure_message_content_s_2;
+
+/* SEQUENCE packet cell change failure message content */
+typedef struct packet_cell_change_failure_message_content{
+ uplink_header_struct header;
+ U32 tlli___g_rnti;
+ U16 arfcn;
+ U8 bsic;
+ U8 cause;
+ packet_cell_change_failure_message_content_s_1_enum packet_cell_change_failure_message_content_s_1_tag;
+ union packet_cell_change_failure_message_content_s_1_value{
+ packet_cell_change_failure_message_content_s_1_bit m_packet_cell_change_failure_message_content_s_1_bit;
+ packet_cell_change_failure_message_content_s_2 m_packet_cell_change_failure_message_content_s_2;
+ }packet_cell_change_failure_message_content_s_1_value;
+}packet_cell_change_failure_message_content;
+
+typedef enum {
+ PACKET_CELL_CHANGE_NOTIFICATION_MESSAGE_CONTENT_S_2,
+ P_3_G_TARGET_CELL,
+ PACKET_CELL_CHANGE_NOTIFICATION_MESSAGE_CONTENT_S_3,
+ PACKET_CELL_CHANGE_NOTIFICATION_MESSAGE_CONTENT_S_9
+}packet_cell_change_notification_message_content_s_1_enum;
+
+typedef struct packet_cell_change_notification_message_content_s_2{
+ U16 arfcn;
+ U8 bsic;
+}packet_cell_change_notification_message_content_s_2;
+
+typedef struct packet_cell_change_notification_message_content_s_5{
+ U16 arfcn;
+ U8 bsic;
+}packet_cell_change_notification_message_content_s_5;
+
+typedef struct packet_cell_change_notification_message_content_s_3{
+ ispresent packet_cell_change_notification_message_content_s_4_tag;
+ union packet_cell_change_notification_message_content_s_4_value{
+ packet_cell_change_notification_message_content_s_5 m_packet_cell_change_notification_message_content_s_5;
+ }packet_cell_change_notification_message_content_s_4_value;
+ ispresent packet_cell_change_notification_message_content_s_6_tag;
+ union packet_cell_change_notification_message_content_s_6_value{
+ p_3_g_target_cell_struct p_3_g_target_cell;
+ }packet_cell_change_notification_message_content_s_6_value;
+ ispresent packet_cell_change_notification_message_content_s_7_tag;
+ union packet_cell_change_notification_message_content_s_7_value{
+ e_utran_target_cell_struct e_utran_target_cell;
+ }packet_cell_change_notification_message_content_s_7_value;
+ ispresent packet_cell_change_notification_message_content_s_8_tag;
+ union packet_cell_change_notification_message_content_s_8_value{
+ e_utran_ccn_measurement_report_struct e_utran_ccn_measurement_report;
+ }packet_cell_change_notification_message_content_s_8_value;
+}packet_cell_change_notification_message_content_s_3;
+
+typedef enum {
+ UTRAN_CSG_TARGET_CELL_MEASUREMENT_REPORT,
+ E_UTRAN_CSG_TARGET_CELL_MEASUREMENT_REPORT
+}packet_cell_change_notification_message_content_s_10_enum;
+
+typedef struct packet_cell_change_notification_message_content_s_9{
+ packet_cell_change_notification_message_content_s_10_enum packet_cell_change_notification_message_content_s_10_tag;
+ union packet_cell_change_notification_message_content_s_10_value{
+ utran_csg_measurement_report_ie utran_csg_target_cell_measurement_report;
+ e_utran_csg_measurement_report_ie e_utran_csg_target_cell_measurement_report;
+ }packet_cell_change_notification_message_content_s_10_value;
+ ispresent packet_cell_change_notification_message_content_s_11_tag;
+ union packet_cell_change_notification_message_content_s_11_value{
+ e_utran_ccn_measurement_report_struct e_utran_ccn_measurement_report;
+ }packet_cell_change_notification_message_content_s_11_value;
+}packet_cell_change_notification_message_content_s_9;
+
+typedef enum {
+ BA_USED,
+ PSI3_CHANGE_MARK
+}packet_cell_change_notification_message_content_s_12_enum;
+
+typedef enum {
+ PACKET_CELL_CHANGE_NOTIFICATION_MESSAGE_CONTENT_S_13_NULL,
+ PACKET_CELL_CHANGE_NOTIFICATION_MESSAGE_CONTENT_S_13_BIT,
+ PACKET_CELL_CHANGE_NOTIFICATION_MESSAGE_CONTENT_S_14
+}packet_cell_change_notification_message_content_s_13_enum;
+
+typedef struct packet_cell_change_notification_message_content_s_13_bit{
+ U16 numElements_packet_cell_change_notification_message_content_s_13_bit;
+ U8 * packet_cell_change_notification_message_content_s_13_bit;
+}packet_cell_change_notification_message_content_s_13_bit;
+
+typedef enum {
+ PACKET_CELL_CHANGE_NOTIFICATION_MESSAGE_CONTENT_S_16_NULL,
+ PACKET_CELL_CHANGE_NOTIFICATION_MESSAGE_CONTENT_S_16_BIT,
+ PACKET_CELL_CHANGE_NOTIFICATION_MESSAGE_CONTENT_S_17
+}packet_cell_change_notification_message_content_s_16_enum;
+
+typedef struct packet_cell_change_notification_message_content_s_16_bit{
+ U16 numElements_packet_cell_change_notification_message_content_s_16_bit;
+ U8 * packet_cell_change_notification_message_content_s_16_bit;
+}packet_cell_change_notification_message_content_s_16_bit;
+
+/*Rel11*/
+typedef enum {
+ PACKET_CELL_CHANGE_NOTIFICATION_MESSAGE_CONTENT_S_18_NULL,
+ PACKET_CELL_CHANGE_NOTIFICATION_MESSAGE_CONTENT_S_18_BIT,
+ PACKET_CELL_CHANGE_NOTIFICATION_MESSAGE_CONTENT_S_19
+}packet_cell_change_notification_message_content_s_18_enum;
+
+typedef struct packet_cell_change_notification_message_content_s_18_bit{
+ U16 numElements_packet_cell_change_notification_message_content_s_18_bit;
+ U8 * packet_cell_change_notification_message_content_s_18_bit;
+}packet_cell_change_notification_message_content_s_18_bit;
+
+
+typedef struct packet_cell_change_notification_message_content_s_19{
+ ispresent packet_cell_change_notification_message_content_s_20_tag;
+ union packet_cell_change_notification_message_content_s_20_value{
+ e_utran_target_cell_extended_earfcn_struct e_utran_target_cell_extended_earfcn;
+ }packet_cell_change_notification_message_content_s_20_value;
+}packet_cell_change_notification_message_content_s_19;
+
+typedef struct packet_cell_change_notification_message_content_s_17{
+ U8 csg_discriminator;
+ packet_cell_change_notification_message_content_s_18_enum packet_cell_change_notification_message_content_s_18_tag;
+ union packet_cell_change_notification_message_content_s_18_value{
+ packet_cell_change_notification_message_content_s_18_bit m_packet_cell_change_notification_message_content_s_18_bit;
+ packet_cell_change_notification_message_content_s_19 m_packet_cell_change_notification_message_content_s_19;
+ }packet_cell_change_notification_message_content_s_18_value;
+}packet_cell_change_notification_message_content_s_17;
+
+typedef struct packet_cell_change_notification_message_content_s_14{
+ ispresent packet_cell_change_notification_message_content_s_15_tag;
+ union packet_cell_change_notification_message_content_s_15_value{
+ U8 p_3_g_ba_used;
+ }packet_cell_change_notification_message_content_s_15_value;
+ p_3_g_ccn_measurement_report_struct p_3_g_ccn_measurement_report;
+ packet_cell_change_notification_message_content_s_16_enum packet_cell_change_notification_message_content_s_16_tag;
+ union packet_cell_change_notification_message_content_s_16_value{
+ packet_cell_change_notification_message_content_s_16_bit m_packet_cell_change_notification_message_content_s_16_bit;
+ packet_cell_change_notification_message_content_s_17 m_packet_cell_change_notification_message_content_s_17;
+ }packet_cell_change_notification_message_content_s_16_value;
+}packet_cell_change_notification_message_content_s_14;
+
+/* SEQUENCE packet cell change notification message content */
+typedef struct packet_cell_change_notification_message_content{
+ uplink_header_struct header;
+ global_tfi_ie global_tfi;
+ packet_cell_change_notification_message_content_s_1_enum packet_cell_change_notification_message_content_s_1_tag;
+ union packet_cell_change_notification_message_content_s_1_value{
+ packet_cell_change_notification_message_content_s_2 m_packet_cell_change_notification_message_content_s_2;
+ p_3_g_target_cell_struct p_3_g_target_cell;
+ packet_cell_change_notification_message_content_s_3 m_packet_cell_change_notification_message_content_s_3;
+ packet_cell_change_notification_message_content_s_9 m_packet_cell_change_notification_message_content_s_9;
+ }packet_cell_change_notification_message_content_s_1_value;
+ packet_cell_change_notification_message_content_s_12_enum packet_cell_change_notification_message_content_s_12_tag;
+ union packet_cell_change_notification_message_content_s_12_value{
+ U8 ba_used;
+ U8 psi3_change_mark;
+ }packet_cell_change_notification_message_content_s_12_value;
+ U8 pmo_used;
+ U8 pccn_sending;
+ ccn_measurement_report_struct ccn_measurement_report;
+ packet_cell_change_notification_message_content_s_13_enum packet_cell_change_notification_message_content_s_13_tag;
+ union packet_cell_change_notification_message_content_s_13_value{
+ packet_cell_change_notification_message_content_s_13_bit m_packet_cell_change_notification_message_content_s_13_bit;
+ packet_cell_change_notification_message_content_s_14 m_packet_cell_change_notification_message_content_s_14;
+ }packet_cell_change_notification_message_content_s_13_value;
+}packet_cell_change_notification_message_content;
+
+typedef enum {
+ PACKET_DOWNLINK_ACK_NACK_MESSAGE_CONTENT_S_2_NULL,
+ PACKET_DOWNLINK_ACK_NACK_MESSAGE_CONTENT_S_2_BIT,
+ PACKET_DOWNLINK_ACK_NACK_MESSAGE_CONTENT_S_3
+}packet_downlink_ack_nack_message_content_s_2_enum;
+
+typedef struct packet_downlink_ack_nack_message_content_s_2_bit{
+ U16 numElements_packet_downlink_ack_nack_message_content_s_2_bit;
+ U8 * packet_downlink_ack_nack_message_content_s_2_bit;
+}packet_downlink_ack_nack_message_content_s_2_bit;
+
+typedef enum {
+ PACKET_DOWNLINK_ACK_NACK_MESSAGE_CONTENT_S_5_NULL,
+ PACKET_DOWNLINK_ACK_NACK_MESSAGE_CONTENT_S_5_BIT,
+ PACKET_DOWNLINK_ACK_NACK_MESSAGE_CONTENT_S_6
+}packet_downlink_ack_nack_message_content_s_5_enum;
+
+typedef struct packet_downlink_ack_nack_message_content_s_5_bit{
+ U16 numElements_packet_downlink_ack_nack_message_content_s_5_bit;
+ U8 * packet_downlink_ack_nack_message_content_s_5_bit;
+}packet_downlink_ack_nack_message_content_s_5_bit;
+
+typedef enum {
+ PACKET_DOWNLINK_ACK_NACK_MESSAGE_CONTENT_S_10_NULL,
+ PACKET_DOWNLINK_ACK_NACK_MESSAGE_CONTENT_S_10_BIT,
+ PACKET_DOWNLINK_ACK_NACK_MESSAGE_CONTENT_S_11
+}packet_downlink_ack_nack_message_content_s_10_enum;
+
+typedef struct packet_downlink_ack_nack_message_content_s_10_bit{
+ U16 numElements_packet_downlink_ack_nack_message_content_s_10_bit;
+ U8 * packet_downlink_ack_nack_message_content_s_10_bit;
+}packet_downlink_ack_nack_message_content_s_10_bit;
+
+typedef struct packet_downlink_ack_nack_message_content_s_11{
+ ispresent packet_downlink_ack_nack_message_content_s_11_tag;
+ union packet_downlink_ack_nack_message_content_s_11_value{
+ struct extended_channel_request_description_ie * extended_channel_request_description;
+ }packet_downlink_ack_nack_message_content_s_11_value;
+}packet_downlink_ack_nack_message_content_s_11;
+
+typedef struct packet_downlink_ack_nack_message_content_s_6{
+ ispresent packet_downlink_ack_nack_message_content_s_7_tag;
+ union packet_downlink_ack_nack_message_content_s_7_value{
+ struct iu_mode_channel_request_description_ie * iu_mode_channel_request_description;
+ }packet_downlink_ack_nack_message_content_s_7_value;
+ ispresent packet_downlink_ack_nack_message_content_s_8_tag;
+ union packet_downlink_ack_nack_message_content_s_8_value{
+ U8 rb_id;
+ }packet_downlink_ack_nack_message_content_s_8_value;
+ ispresent packet_downlink_ack_nack_message_content_s_9_tag;
+ union packet_downlink_ack_nack_message_content_s_9_value{
+ U8 timeslot_number;
+ }packet_downlink_ack_nack_message_content_s_9_value;
+ packet_downlink_ack_nack_message_content_s_10_enum packet_downlink_ack_nack_message_content_s_10_tag;
+ union packet_downlink_ack_nack_message_content_s_10_value{
+ packet_downlink_ack_nack_message_content_s_10_bit m_packet_downlink_ack_nack_message_content_s_10_bit;
+ packet_downlink_ack_nack_message_content_s_11 m_packet_downlink_ack_nack_message_content_s_11;
+ }packet_downlink_ack_nack_message_content_s_10_value;
+}packet_downlink_ack_nack_message_content_s_6;
+
+typedef struct packet_downlink_ack_nack_message_content_s_3{
+ ispresent packet_downlink_ack_nack_message_content_s_4_tag;
+ union packet_downlink_ack_nack_message_content_s_4_value{
+ U8 pfi;
+ }packet_downlink_ack_nack_message_content_s_4_value;
+ packet_downlink_ack_nack_message_content_s_5_enum packet_downlink_ack_nack_message_content_s_5_tag;
+ union packet_downlink_ack_nack_message_content_s_5_value{
+ packet_downlink_ack_nack_message_content_s_5_bit m_packet_downlink_ack_nack_message_content_s_5_bit;
+ packet_downlink_ack_nack_message_content_s_6 m_packet_downlink_ack_nack_message_content_s_6;
+ }packet_downlink_ack_nack_message_content_s_5_value;
+}packet_downlink_ack_nack_message_content_s_3;
+
+/* SEQUENCE packet downlink ack/nack message content */
+typedef struct packet_downlink_ack_nack_message_content{
+ uplink_header_struct header;
+ U8 downlink_tfi;
+ ack_nack_description_ie ack_nack_description;
+ ispresent packet_downlink_ack_nack_message_content_s_1_tag;
+ union packet_downlink_ack_nack_message_content_s_1_value{
+ channel_request_description_ie channel_request_description;
+ }packet_downlink_ack_nack_message_content_s_1_value;
+ channel_quality_report_struct channel_quality_report;
+ packet_downlink_ack_nack_message_content_s_2_enum packet_downlink_ack_nack_message_content_s_2_tag;
+ union packet_downlink_ack_nack_message_content_s_2_value{
+ packet_downlink_ack_nack_message_content_s_2_bit m_packet_downlink_ack_nack_message_content_s_2_bit;
+ packet_downlink_ack_nack_message_content_s_3 m_packet_downlink_ack_nack_message_content_s_3;
+ }packet_downlink_ack_nack_message_content_s_2_value;
+}packet_downlink_ack_nack_message_content;
+
+typedef enum {
+ PACKET_UPLINK_DUMMY_CONTROL_BLOCK_MESSAGE_CONTENT_S_1_NULL,
+ PACKET_UPLINK_DUMMY_CONTROL_BLOCK_MESSAGE_CONTENT_S_1_BIT,
+ PACKET_UPLINK_DUMMY_CONTROL_BLOCK_MESSAGE_CONTENT_S_2
+}packet_uplink_dummy_control_block_message_content_s_1_enum;
+
+typedef struct packet_uplink_dummy_control_block_message_content_s_1_bit{
+ U16 numElements_packet_uplink_dummy_control_block_message_content_s_1_bit;
+ U8 * packet_uplink_dummy_control_block_message_content_s_1_bit;
+}packet_uplink_dummy_control_block_message_content_s_1_bit;
+
+typedef struct packet_uplink_dummy_control_block_message_content_s_2{
+ ispresent packet_uplink_dummy_control_block_message_content_s_3_tag;
+ union packet_uplink_dummy_control_block_message_content_s_3_value{
+ U8 g_rnti_extension;
+ }packet_uplink_dummy_control_block_message_content_s_3_value;
+}packet_uplink_dummy_control_block_message_content_s_2;
+
+/* SEQUENCE packet uplink dummy control block message content */
+typedef struct packet_uplink_dummy_control_block_message_content{
+ uplink_header_struct header;
+ U32 tlli___g_rnti;
+ packet_uplink_dummy_control_block_message_content_s_1_enum packet_uplink_dummy_control_block_message_content_s_1_tag;
+ union packet_uplink_dummy_control_block_message_content_s_1_value{
+ packet_uplink_dummy_control_block_message_content_s_1_bit m_packet_uplink_dummy_control_block_message_content_s_1_bit;
+ packet_uplink_dummy_control_block_message_content_s_2 m_packet_uplink_dummy_control_block_message_content_s_2;
+ }packet_uplink_dummy_control_block_message_content_s_1_value;
+}packet_uplink_dummy_control_block_message_content;
+
+typedef enum {
+ NC_MEASUREMENT_REPORT,
+ EXT_MEASUREMENT_REPORT
+}packet_measurement_report_message_content_s_2_enum;
+
+typedef enum {
+ PACKET_MEASUREMENT_REPORT_MESSAGE_CONTENT_S_3_NULL,
+ PACKET_MEASUREMENT_REPORT_MESSAGE_CONTENT_S_3_BIT,
+ PACKET_MEASUREMENT_REPORT_MESSAGE_CONTENT_S_4
+}packet_measurement_report_message_content_s_3_enum;
+
+typedef struct packet_measurement_report_message_content_s_3_bit{
+ U16 numElements_packet_measurement_report_message_content_s_3_bit;
+ U8 * packet_measurement_report_message_content_s_3_bit;
+}packet_measurement_report_message_content_s_3_bit;
+
+typedef enum {
+ PACKET_MEASUREMENT_REPORT_MESSAGE_CONTENT_S_8,
+ PACKET_MEASUREMENT_REPORT_MESSAGE_CONTENT_PSI3_CHANGE_MARK
+}packet_measurement_report_message_content_s_7_enum;
+
+typedef struct packet_measurement_report_message_content_s_8{
+ U8 ba_used;
+ U8 p_3_g_ba_used;
+}packet_measurement_report_message_content_s_8;
+
+typedef struct packet_measurement_report_message_content_s_6{
+ packet_measurement_report_message_content_s_7_enum packet_measurement_report_message_content_s_7_tag;
+ union packet_measurement_report_message_content_s_7_value{
+ packet_measurement_report_message_content_s_8 m_packet_measurement_report_message_content_s_8;
+ U8 psi3_change_mark;
+ }packet_measurement_report_message_content_s_7_value;
+ U8 pmo_used;
+}packet_measurement_report_message_content_s_6;
+
+typedef enum {
+ PACKET_MEASUREMENT_REPORT_MESSAGE_CONTENT_S_10_NULL,
+ PACKET_MEASUREMENT_REPORT_MESSAGE_CONTENT_S_10_BIT,
+ PACKET_MEASUREMENT_REPORT_MESSAGE_CONTENT_S_11
+}packet_measurement_report_message_content_s_10_enum;
+
+typedef struct packet_measurement_report_message_content_s_10_bit{
+ U16 numElements_packet_measurement_report_message_content_s_10_bit;
+ U8 * packet_measurement_report_message_content_s_10_bit;
+}packet_measurement_report_message_content_s_10_bit;
+
+typedef enum {
+ PACKET_MEASUREMENT_REPORT_MESSAGE_CONTENT_S_13_NULL,
+ PACKET_MEASUREMENT_REPORT_MESSAGE_CONTENT_S_13_BIT,
+ PACKET_MEASUREMENT_REPORT_MESSAGE_CONTENT_S_14
+}packet_measurement_report_message_content_s_13_enum;
+
+typedef struct packet_measurement_report_message_content_s_13_bit{
+ U16 numElements_packet_measurement_report_message_content_s_13_bit;
+ U8 * packet_measurement_report_message_content_s_13_bit;
+}packet_measurement_report_message_content_s_13_bit;
+
+typedef enum {
+ PACKET_MEASUREMENT_REPORT_MESSAGE_CONTENT_S_16_NULL,
+ PACKET_MEASUREMENT_REPORT_MESSAGE_CONTENT_S_16_BIT,
+ PACKET_MEASUREMENT_REPORT_MESSAGE_CONTENT_S_17
+}packet_measurement_report_message_content_s_16_enum;
+
+typedef struct packet_measurement_report_message_content_s_16_bit{
+ U16 numElements_packet_measurement_report_message_content_s_16_bit;
+ U8 * packet_measurement_report_message_content_s_16_bit;
+}packet_measurement_report_message_content_s_16_bit;
+
+typedef struct packet_measurement_report_message_content_s_17{
+ ispresent packet_measurement_report_message_content_s_18_tag;
+ union packet_measurement_report_message_content_s_18_value{
+ utran_csg_measurement_report_ie utran_csg_measurement_report;
+ }packet_measurement_report_message_content_s_18_value;
+ ispresent packet_measurement_report_message_content_s_19_tag;
+ union packet_measurement_report_message_content_s_19_value{
+ e_utran_csg_measurement_report_ie e_utran_csg_measurement_report;
+ }packet_measurement_report_message_content_s_19_value;
+}packet_measurement_report_message_content_s_17;
+
+typedef struct packet_measurement_report_message_content_s_14{
+ ispresent packet_measurement_report_message_content_s_15_tag;
+ union packet_measurement_report_message_content_s_15_value{
+ e_utran_measurement_report_struct e_utran_measurement_report;
+ }packet_measurement_report_message_content_s_15_value;
+ packet_measurement_report_message_content_s_16_enum packet_measurement_report_message_content_s_16_tag;
+ union packet_measurement_report_message_content_s_16_value{
+ packet_measurement_report_message_content_s_16_bit m_packet_measurement_report_message_content_s_16_bit;
+ packet_measurement_report_message_content_s_17 m_packet_measurement_report_message_content_s_17;
+ }packet_measurement_report_message_content_s_16_value;
+}packet_measurement_report_message_content_s_14;
+
+typedef struct packet_measurement_report_message_content_s_11{
+ ispresent packet_measurement_report_message_content_s_12_tag;
+ union packet_measurement_report_message_content_s_12_value{
+ U8 g_rnti_extension;
+ }packet_measurement_report_message_content_s_12_value;
+ packet_measurement_report_message_content_s_13_enum packet_measurement_report_message_content_s_13_tag;
+ union packet_measurement_report_message_content_s_13_value{
+ packet_measurement_report_message_content_s_13_bit m_packet_measurement_report_message_content_s_13_bit;
+ packet_measurement_report_message_content_s_14 m_packet_measurement_report_message_content_s_14;
+ }packet_measurement_report_message_content_s_13_value;
+}packet_measurement_report_message_content_s_11;
+
+typedef struct packet_measurement_report_message_content_s_4{
+ ispresent packet_measurement_report_message_content_s_5_tag;
+ union packet_measurement_report_message_content_s_5_value{
+ packet_measurement_report_message_content_s_6 m_packet_measurement_report_message_content_s_6;
+ }packet_measurement_report_message_content_s_5_value;
+ ispresent packet_measurement_report_message_content_s_9_tag;
+ union packet_measurement_report_message_content_s_9_value{
+ p_3_g_measurement_report_struct p_3_g_measurement_report;
+ }packet_measurement_report_message_content_s_9_value;
+ packet_measurement_report_message_content_s_10_enum packet_measurement_report_message_content_s_10_tag;
+ union packet_measurement_report_message_content_s_10_value{
+ packet_measurement_report_message_content_s_10_bit m_packet_measurement_report_message_content_s_10_bit;
+ packet_measurement_report_message_content_s_11 m_packet_measurement_report_message_content_s_11;
+ }packet_measurement_report_message_content_s_10_value;
+}packet_measurement_report_message_content_s_4;
+
+/* SEQUENCE packet measurement report message content */
+typedef struct packet_measurement_report_message_content{
+ uplink_header_struct header;
+ U32 tlli___g_rnti;
+ ispresent packet_measurement_report_message_content_s_1_tag;
+ union packet_measurement_report_message_content_s_1_value{
+ U8 psi5_change_mark;
+ }packet_measurement_report_message_content_s_1_value;
+ packet_measurement_report_message_content_s_2_enum packet_measurement_report_message_content_s_2_tag;
+ union packet_measurement_report_message_content_s_2_value{
+ nc_measurement_report_struct nc_measurement_report;
+ ext_measurement_report_struct ext_measurement_report;
+ }packet_measurement_report_message_content_s_2_value;
+ packet_measurement_report_message_content_s_3_enum packet_measurement_report_message_content_s_3_tag;
+ union packet_measurement_report_message_content_s_3_value{
+ packet_measurement_report_message_content_s_3_bit m_packet_measurement_report_message_content_s_3_bit;
+ packet_measurement_report_message_content_s_4 m_packet_measurement_report_message_content_s_4;
+ }packet_measurement_report_message_content_s_3_value;
+}packet_measurement_report_message_content;
+
+/* SEQUENCE packet mobile tbf status message content */
+typedef struct packet_mobile_tbf_status_message_content{
+ uplink_header_struct header;
+ global_tfi_ie global_tfi;
+ U8 tbf_cause;
+ ispresent packet_mobile_tbf_status_message_content_s_1_tag;
+ union packet_mobile_tbf_status_message_content_s_1_value{
+ U8 status_message_type;
+ }packet_mobile_tbf_status_message_content_s_1_value;
+}packet_mobile_tbf_status_message_content;
+
+typedef enum {
+ PACKET_PSI_STATUS_MESSAGE_CONTENT_S_1_NULL,
+ PACKET_PSI_STATUS_MESSAGE_CONTENT_S_1_BIT,
+ PACKET_PSI_STATUS_MESSAGE_CONTENT_S_2
+}packet_psi_status_message_content_s_1_enum;
+
+typedef struct packet_psi_status_message_content_s_1_bit{
+ U16 numElements_packet_psi_status_message_content_s_1_bit;
+ U8 * packet_psi_status_message_content_s_1_bit;
+}packet_psi_status_message_content_s_1_bit;
+
+typedef struct packet_psi_status_message_content_s_2{
+ U8 ps_rel_req;
+}packet_psi_status_message_content_s_2;
+
+/* SEQUENCE packet psi status message content */
+typedef struct packet_psi_status_message_content{
+ uplink_header_struct header;
+ global_tfi_ie global_tfi;
+ U8 pbcch_change_mark;
+ psi_message_list_struct received_psi_message_list;
+ unknown_psi_message_list_struct received_unknown_psi_message_list;
+ packet_psi_status_message_content_s_1_enum packet_psi_status_message_content_s_1_tag;
+ union packet_psi_status_message_content_s_1_value{
+ packet_psi_status_message_content_s_1_bit m_packet_psi_status_message_content_s_1_bit;
+ packet_psi_status_message_content_s_2 m_packet_psi_status_message_content_s_2;
+ }packet_psi_status_message_content_s_1_value;
+}packet_psi_status_message_content;
+
+typedef enum {
+ PACKET_SI_STATUS_MESSAGE_CONTENT_S_1_NULL,
+ PACKET_SI_STATUS_MESSAGE_CONTENT_S_1_BIT,
+ PACKET_SI_STATUS_MESSAGE_CONTENT_S_2
+}packet_si_status_message_content_s_1_enum;
+
+typedef struct packet_si_status_message_content_s_1_bit{
+ U16 numElements_packet_si_status_message_content_s_1_bit;
+ U8 * packet_si_status_message_content_s_1_bit;
+}packet_si_status_message_content_s_1_bit;
+
+typedef struct packet_si_status_message_content_s_2{
+ U8 pscsi_support;
+ U8 ps_rel_req;
+}packet_si_status_message_content_s_2;
+
+/* SEQUENCE packet si status message content */
+typedef struct packet_si_status_message_content{
+ uplink_header_struct header;
+ global_tfi_ie global_tfi;
+ U8 bcch_change_mark;
+ si_message_list_struct received_si_message_list;
+ unknown_si_message_list_struct received_unknown_si_message_list;
+ packet_si_status_message_content_s_1_enum packet_si_status_message_content_s_1_tag;
+ union packet_si_status_message_content_s_1_value{
+ packet_si_status_message_content_s_1_bit m_packet_si_status_message_content_s_1_bit;
+ packet_si_status_message_content_s_2 m_packet_si_status_message_content_s_2;
+ }packet_si_status_message_content_s_1_value;
+}packet_si_status_message_content;
+
+/* SEQUENCE packet pause message content */
+typedef struct packet_pause_message_content{
+ uplink_header_struct header;
+ U32 tlli;
+ U16 numElements_rai;
+ U8 * rai;
+}packet_pause_message_content;
+
+typedef enum {
+ ADDITIONAL_MS_RADIO_ACCESS_CAPABILITIES_MESSAGE_CONTENT_GLOBAL_TFI,
+ TLLI
+}additional_ms_radio_access_capabilities_message_content_s_1_enum;
+
+/* SEQUENCE additional ms radio access capabilities message content */
+typedef struct additional_ms_radio_access_capabilities_message_content{
+ uplink_header_struct header;
+ additional_ms_radio_access_capabilities_message_content_s_1_enum additional_ms_radio_access_capabilities_message_content_s_1_tag;
+ union additional_ms_radio_access_capabilities_message_content_s_1_value{
+ global_tfi_ie global_tfi;
+ U32 tlli;
+ }additional_ms_radio_access_capabilities_message_content_s_1_value;
+ struct ms_ra_capability_value_part_struct * ms_radio_access_capability_2;
+}additional_ms_radio_access_capabilities_message_content;
+
+/* SEQUENCE egprs timeslot link quality measurements ie */
+typedef struct egprs_timeslot_link_quality_measurements_ie{
+ ispresent egprs_timeslot_link_quality_measurements_ie_s_1_tag;
+ union egprs_timeslot_link_quality_measurements_ie_s_1_value{
+ bep_measurement_report_struct bep_measurements;
+ }egprs_timeslot_link_quality_measurements_ie_s_1_value;
+ ispresent egprs_timeslot_link_quality_measurements_ie_s_2_tag;
+ union egprs_timeslot_link_quality_measurements_ie_s_2_value{
+ interference_measurement_report_struct interference_measurements;
+ }egprs_timeslot_link_quality_measurements_ie_s_2_value;
+}egprs_timeslot_link_quality_measurements_ie;
+
+typedef enum {
+ NC_MEASUREMENT_REPORT_STRUCT_EN_S_2,
+ NC_MEASUREMENT_REPORT_STRUCT_EN_PSI3_CHANGE_MARK
+}nc_measurement_report_struct_en_s_1_enum;
+
+typedef struct nc_measurement_report_struct_en_s_2{
+ U8 ba_used;
+ U8 p_3_g_ba_used;
+}nc_measurement_report_struct_en_s_2;
+
+typedef struct nc_measurement_report_struct_en_s_6{
+ ispresent nc_measurement_report_struct_en_s_6_tag;
+ union nc_measurement_report_struct_en_s_6_value{
+ U8 reporting_quantity;
+ }nc_measurement_report_struct_en_s_6_value;
+}nc_measurement_report_struct_en_s_6;
+
+typedef struct _nc_measurement_report_struct_en_s_6{
+ U16 numElements_m_nc_measurement_report_struct_en_s_6;
+ nc_measurement_report_struct_en_s_6 * m_nc_measurement_report_struct_en_s_6;
+}_nc_measurement_report_struct_en_s_6;
+
+/* SEQUENCE nc measurement report struct en */
+typedef struct nc_measurement_report_struct_en{
+ U8 nc_mode;
+ nc_measurement_report_struct_en_s_1_enum nc_measurement_report_struct_en_s_1_tag;
+ union nc_measurement_report_struct_en_s_1_value{
+ nc_measurement_report_struct_en_s_2 m_nc_measurement_report_struct_en_s_2;
+ U8 psi3_change_mark;
+ }nc_measurement_report_struct_en_s_1_value;
+ U8 pmo_used;
+ U8 bsic_seen;
+ U8 scale;
+ ispresent nc_measurement_report_struct_en_s_3_tag;
+ union nc_measurement_report_struct_en_s_3_value{
+ serving_cell_data_struct_1 serving_cell_data;
+ }nc_measurement_report_struct_en_s_3_value;
+ U16 numElements_repeated_invalid_bsic_information;
+ repeated_invalid_bsic_information_struct * repeated_invalid_bsic_information;
+ ispresent nc_measurement_report_struct_en_s_5_tag;
+ union nc_measurement_report_struct_en_s_5_value{
+ _nc_measurement_report_struct_en_s_6 m_nc_measurement_report_struct_en_s_6;
+ }nc_measurement_report_struct_en_s_5_value;
+}nc_measurement_report_struct_en;
+
+/* SEQUENCE additional access technologies list */
+typedef struct additional_access_technologies_list{
+ U16 numElements_additional_access_technologies;
+ additional_access_technologies_struct * additional_access_technologies;
+}additional_access_technologies_list;
+
+typedef struct content_s_8{
+ U8 extended_dtm_gprs_multi_slot_class;
+ U8 extended_dtm_egprs_multi_slot_class;
+}content_s_8;
+
+typedef struct content_s_14{
+ U8 dtm_gprs_high_multi_slot_class;
+ ispresent content_s_15_tag;
+ union content_s_15_value{
+ U8 dtm_egprs_high_multi_slot_class;
+ }content_s_15_value;
+}content_s_14;
+
+/* SEQUENCE content */
+typedef struct content{
+ Bool is_content_s_1_present; //truncation or optional
+ U8 rf_power_capability;
+ ispresent content_s_2_tag;
+ union content_s_2_value{
+ a5_bits a5_bits;
+ }content_s_2_value;
+ U8 es_ind;
+ U8 ps;
+ U8 vgcs;
+ U8 vbs;
+ ispresent content_s_3_tag;
+ union content_s_3_value{
+ multislot_capability_struct multislot_capability;
+ }content_s_3_value;
+ Bool is_content_s_4_present; //truncation or optional
+ ispresent content_s_5_tag;
+ union content_s_5_value{
+ U8 p_8_psk_power_capability;
+ }content_s_5_value;
+ U8 compact_interference_measurement_capability;
+ U8 revision_level_indicator;
+ U8 umts_fdd_radio_access_technology_capability;
+ U8 umts_3__84_mcps_tdd_radio_access_technology_capability;
+ U8 cdma_2000_radio_access_technology_capability;
+ Bool is_content_s_6_present; //truncation or optional
+ U8 umts_1__28_mcps_tdd_radio_access_technology_capability;
+ U8 geran_feature_package_1;
+ ispresent content_s_7_tag;
+ union content_s_7_value{
+ content_s_8 m_content_s_8;
+ }content_s_7_value;
+ U8 modulation_based_multislot_class_support;
+ Bool is_content_s_9_present; //truncation or optional
+ ispresent content_s_10_tag;
+ union content_s_10_value{
+ U8 high_multislot_capability;
+ }content_s_10_value;
+ ispresent content_s_11_tag;
+ union content_s_11_value{
+ geran_iu_mode_capabilities m_geran_iu_mode_capabilities;
+ }content_s_11_value;
+ U8 gmsk_multislot_power_profile;
+ U8 p_8__psk_multislot_power_profile;
+ Bool is_content_s_12_present; //truncation or optional
+ U8 multiple_tbf_capability;
+ U8 downlink_advanced_receiver_performance;
+ U8 extended_rlc_mac_control_message_segmentation_capability;
+ U8 dtm_enhancements_capability;
+ ispresent content_s_13_tag;
+ union content_s_13_value{
+ content_s_14 m_content_s_14;
+ }content_s_13_value;
+ U8 ps_handover_capability;
+}content;
+
+typedef struct ms_network_capability_value_part_s_1{
+ Bool is_lcs_va_capability_present; //truncation or optional
+ U8 lcs_va_capability;
+ Bool is_ps_inter_rat_ho_to_utran_iu_mode_capability_present; //truncation or optional
+ U8 ps_inter_rat_ho_to_utran_iu_mode_capability;
+}ms_network_capability_value_part_s_1;
+
+/* SEQUENCE ms network capability value part */
+typedef struct ms_network_capability_value_part{
+ gea1_bits m_gea1_bits;
+ U8 sm_capabilities_via_dedicated_channels;
+ U8 sm_capabilities_via_gprs_channels;
+ U8 ucs2_support;
+ U8 ss_screening_indicator;
+ U8 solsa_capability;
+ U8 revision_level_indicator;
+ U8 pfc_feature_mode;
+ extended_gea_bits m_extended_gea_bits;
+ ms_network_capability_value_part_s_1 m_ms_network_capability_value_part_s_1; //truncation ;
+}ms_network_capability_value_part;
+
+/* SEQUENCE ctrl_blk_hdr_struct1 */
+typedef struct ctrl_blk_hdr_struct1{
+ U8 rrbp;
+ U8 s_or_p;
+ U8 usf;
+ U8 rbsn;
+ U8 rti;
+ U8 fs;
+ ispresent third_octet_choice_tag;
+ union third_octet_choice_value{
+ third_octet_struct1 pthird_octet_choice;
+ }third_octet_choice_value;
+}ctrl_blk_hdr_struct1;
+
+/* SEQUENCE 3 g neighbour cell description struct mi */
+typedef struct p_3_g_neighbour_cell_description_struct_mi{
+ ispresent p_3_g_neighbour_cell_description_struct_mi_s_1_tag;
+ union p_3_g_neighbour_cell_description_struct_mi_s_1_value{
+ U8 p_3_g_wait;
+ }p_3_g_neighbour_cell_description_struct_mi_s_1_value;
+ ispresent p_3_g_neighbour_cell_description_struct_mi_s_2_tag;
+ union p_3_g_neighbour_cell_description_struct_mi_s_2_value{
+ U8 index_start_3g;
+ }p_3_g_neighbour_cell_description_struct_mi_s_2_value;
+ ispresent p_3_g_neighbour_cell_description_struct_mi_s_3_tag;
+ union p_3_g_neighbour_cell_description_struct_mi_s_3_value{
+ U8 absolute_index_start_emr;
+ }p_3_g_neighbour_cell_description_struct_mi_s_3_value;
+ ispresent p_3_g_neighbour_cell_description_struct_mi_s_4_tag;
+ union p_3_g_neighbour_cell_description_struct_mi_s_4_value{
+ utran_fdd_description_struct_mi utran_fdd_description;
+ }p_3_g_neighbour_cell_description_struct_mi_s_4_value;
+ ispresent p_3_g_neighbour_cell_description_struct_mi_s_5_tag;
+ union p_3_g_neighbour_cell_description_struct_mi_s_5_value{
+ utran_tdd_description_struct_mi utran_tdd_description;
+ }p_3_g_neighbour_cell_description_struct_mi_s_5_value;
+ ispresent p_3_g_neighbour_cell_description_struct_mi_s_6_tag;
+ union p_3_g_neighbour_cell_description_struct_mi_s_6_value{
+ cdma_2000_description_struct_mi cdma_2000_description;
+ }p_3_g_neighbour_cell_description_struct_mi_s_6_value;
+}p_3_g_neighbour_cell_description_struct_mi;
+
+typedef struct e_utran_measurement_parameters_description_struct_s_3{
+ U8 e_utran_fdd_reporting_threshold;
+ U8 e_utran_fdd_reporting_threshold_2;
+}e_utran_measurement_parameters_description_struct_s_3;
+
+typedef struct e_utran_measurement_parameters_description_struct_s_5{
+ U8 e_utran_tdd_reporting_threshold;
+ U8 e_utran_tdd_reporting_threshold_2;
+}e_utran_measurement_parameters_description_struct_s_5;
+
+typedef struct e_utran_measurement_parameters_description_struct_s_7{
+ U8 e_utran_measurement_report_offset;
+ U8 reporting_granularity;
+}e_utran_measurement_parameters_description_struct_s_7;
+
+/* SEQUENCE e-utran measurement parameters description struct */
+typedef struct e_utran_measurement_parameters_description_struct{
+ U8 e_utran_ba_ind;
+ U8 qsearch_c_e_utran;
+ U8 e_utran_start;
+ U8 e_utran_stop;
+ U8 e_utran_rep_quant;
+ ispresent e_utran_measurement_parameters_description_struct_s_1_tag;
+ union e_utran_measurement_parameters_description_struct_s_1_value{
+ U8 e_utran_multirat_reporting;
+ }e_utran_measurement_parameters_description_struct_s_1_value;
+ ispresent e_utran_measurement_parameters_description_struct_s_2_tag;
+ union e_utran_measurement_parameters_description_struct_s_2_value{
+ e_utran_measurement_parameters_description_struct_s_3 m_e_utran_measurement_parameters_description_struct_s_3;
+ }e_utran_measurement_parameters_description_struct_s_2_value;
+ ispresent e_utran_measurement_parameters_description_struct_s_4_tag;
+ union e_utran_measurement_parameters_description_struct_s_4_value{
+ e_utran_measurement_parameters_description_struct_s_5 m_e_utran_measurement_parameters_description_struct_s_5;
+ }e_utran_measurement_parameters_description_struct_s_4_value;
+ ispresent e_utran_measurement_parameters_description_struct_s_6_tag;
+ union e_utran_measurement_parameters_description_struct_s_6_value{
+ e_utran_measurement_parameters_description_struct_s_7 m_e_utran_measurement_parameters_description_struct_s_7;
+ }e_utran_measurement_parameters_description_struct_s_6_value;
+ U16 numElements_repeated_e_utran_neighbour_cells;
+ repeated_e_utran_neighbour_cells_struct * repeated_e_utran_neighbour_cells;
+}e_utran_measurement_parameters_description_struct;
+
+/* SEQUENCE gas_meas_results_struct */
+typedef struct gas_meas_results_struct{
+ gas_meas_content_struct meas_content;
+}gas_meas_results_struct;
+
+/* SEQUENCE handover_complete_mesg_struct */
+typedef struct handover_complete_mesg_struct{
+ gas_skip_indicator_struct skip_ind;
+ gas_protocol_disc_struct proto_disc;
+ handover_complete_type_struct mesg_type;
+ gas_rr_cause_struct rr_cause;
+ Bool is_otd_present; //truncation or optional
+ gas_otd_struct otd;
+}handover_complete_mesg_struct;
+
+/* SEQUENCE paging_response */
+typedef struct paging_response{
+ gas_skip_indicator_struct skip_ind;
+ gas_protocol_disc_struct proto_disc;
+ paging_response_type_struct mesg_type;
+ gas_spare_bit_struct spare_bit;
+ gas_ciphering_key_sn_struct ciphering_key_sn;
+ gas_ms_classmark_struct ms_classmark;
+ gas_mobile_identity_struct mobile_identity1;
+ Bool is_additional_parameter_struct_present;
+ gas_additional_update_parameter_struct additional_update_parameter;
+}paging_response;
+
+/* SEQUENCE csn_paging_request_type1 */
+typedef struct csn_paging_request_type1{
+ gas_l2_pseudo_length_struct l2pseudo_length;
+ gas_skip_indicator_struct skip_ind;
+ gas_protocol_disc_struct proto_disc;
+ paging_request_struct mesg_type;
+ gas_channels_needed_struct channels_needed;
+ gas_page_mode_struct page_mode;
+ gas_mobile_identity_struct mobile_identity1;
+ Bool is_mobile_identity2_present; //truncation or optional
+ gas_mobile_identity2_struct mobile_identity2;
+ gas_p1_rest_octets_struct p1rest_octets;
+}csn_paging_request_type1;
+
+typedef enum {
+ ARFCN1,
+ FREQUENCY_PARAMETERS_IE_INDIRECT_ENCODING,
+ FREQUENCY_PARAMETERS_IE_DIRECT_ENCODING_1,
+ FREQUENCY_PARAMETERS_IE_DIRECT_ENCODING_2
+}frequency_parameters_ie_s_1_enum;
+
+/* SEQUENCE frequency parameters ie */
+typedef struct frequency_parameters_ie{
+ U8 tsc;
+ frequency_parameters_ie_s_1_enum frequency_parameters_ie_s_1_tag;
+ union frequency_parameters_ie_s_1_value{
+ U16 arfcn1;
+ indirect_encoding_struct indirect_encoding;
+ direct_encoding_1_struct direct_encoding_1;
+ direct_encoding_2_struct direct_encoding_2;
+ }frequency_parameters_ie_s_1_value;
+}frequency_parameters_ie;
+
+/* SEQUENCE 3 g neighbour cell description struct */
+typedef struct p_3_g_neighbour_cell_description_struct{
+ ispresent p_3_g_neighbour_cell_description_struct_s_1_tag;
+ union p_3_g_neighbour_cell_description_struct_s_1_value{
+ U8 index_start_3g;
+ }p_3_g_neighbour_cell_description_struct_s_1_value;
+ ispresent p_3_g_neighbour_cell_description_struct_s_2_tag;
+ union p_3_g_neighbour_cell_description_struct_s_2_value{
+ U8 absolute_index_start_emr;
+ }p_3_g_neighbour_cell_description_struct_s_2_value;
+ ispresent p_3_g_neighbour_cell_description_struct_s_3_tag;
+ union p_3_g_neighbour_cell_description_struct_s_3_value{
+ utran_fdd_description_struct utran_fdd_description;
+ }p_3_g_neighbour_cell_description_struct_s_3_value;
+ ispresent p_3_g_neighbour_cell_description_struct_s_4_tag;
+ union p_3_g_neighbour_cell_description_struct_s_4_value{
+ utran_tdd_description_struct utran_tdd_description;
+ }p_3_g_neighbour_cell_description_struct_s_4_value;
+ ispresent p_3_g_neighbour_cell_description_struct_s_5_tag;
+ union p_3_g_neighbour_cell_description_struct_s_5_value{
+ cdma2000_description_struct cdma2000_description;
+ }p_3_g_neighbour_cell_description_struct_s_5_value;
+ ispresent p_3_g_neighbour_cell_description_struct_s_6_tag;
+ union p_3_g_neighbour_cell_description_struct_s_6_value{
+ removed_3gcell_description_struct removed_3gcell_description;
+ }p_3_g_neighbour_cell_description_struct_s_6_value;
+}p_3_g_neighbour_cell_description_struct;
+
+typedef struct iu_mode_neighbour_cell_params_struct_s_2{
+ ispresent iu_mode_neighbour_cell_params_struct_s_2_tag;
+ union iu_mode_neighbour_cell_params_struct_s_2_value{
+ iu_mode_cell_selection_struct_1 iu_mode_cell_selection_params;
+ }iu_mode_neighbour_cell_params_struct_s_2_value;
+}iu_mode_neighbour_cell_params_struct_s_2;
+
+/* SEQUENCE iu mode neighbour cell params struct */
+typedef struct iu_mode_neighbour_cell_params_struct{
+ ispresent iu_mode_neighbour_cell_params_struct_s_1_tag;
+ union iu_mode_neighbour_cell_params_struct_s_1_value{
+ iu_mode_cell_selection_struct_1 iu_mode_cell_selection_params;
+ }iu_mode_neighbour_cell_params_struct_s_1_value;
+ U8 nr_of_frequencies;
+ U16 numElements_m_iu_mode_neighbour_cell_params_struct_s_2;
+ iu_mode_neighbour_cell_params_struct_s_2 * m_iu_mode_neighbour_cell_params_struct_s_2;
+}iu_mode_neighbour_cell_params_struct;
+
+typedef struct add_iu_mode_only_cell_list_struct_s_2{
+ U16 numElements_frequency_diff;
+ U8 * frequency_diff;
+ U8 bsic;
+ ispresent add_iu_mode_only_cell_list_struct_s_3_tag;
+ union add_iu_mode_only_cell_list_struct_s_3_value{
+ iu_mode_only_cell_selection_struct_1 cell_selection_params;
+ }add_iu_mode_only_cell_list_struct_s_3_value;
+}add_iu_mode_only_cell_list_struct_s_2;
+
+/* SEQUENCE add iu mode only cell list struct */
+typedef struct add_iu_mode_only_cell_list_struct{
+ U16 start_frequency;
+ U8 bsic;
+ ispresent add_iu_mode_only_cell_list_struct_s_1_tag;
+ union add_iu_mode_only_cell_list_struct_s_1_value{
+ iu_mode_only_cell_selection_struct_1 cell_selection_params;
+ }add_iu_mode_only_cell_list_struct_s_1_value;
+ U8 nr_of_frequencies;
+ U8 freq_diff_length;
+ U16 numElements_m_add_iu_mode_only_cell_list_struct_s_2;
+ add_iu_mode_only_cell_list_struct_s_2 * m_add_iu_mode_only_cell_list_struct_s_2;
+}add_iu_mode_only_cell_list_struct;
+
+typedef enum {
+ UPLINK_TIMESLOT_ALLOCATION,
+ POWER_CONTROL_PARAMETERS
+}fixed_allocation_struct_2_s_1_enum;
+
+typedef struct fixed_allocation_struct_2_s_3{
+ U8 p0;
+ U8 bts_pwr_ctrl_mode;
+ U8 pr_mode;
+}fixed_allocation_struct_2_s_3;
+
+typedef enum {
+ FIXED_ALLOCATION_STRUCT_2_S_8,
+ ALLOCATION_BITMAP_1
+}fixed_allocation_struct_2_s_7_enum;
+
+typedef struct fixed_allocation_struct_2_s_8{
+ U8 blocks_or_block_periods;
+ U8 allocation_bitmap_length;
+ U16 numElements_allocation_bitmap;
+ U8 * allocation_bitmap;
+}fixed_allocation_struct_2_s_8;
+
+typedef struct allocation_bitmap_1{
+ U16 numElements_allocation_bitmap_1;
+ U8 * allocation_bitmap_1;
+}allocation_bitmap_1;
+
+/* SEQUENCE fixed allocation struct 2 */
+typedef struct fixed_allocation_struct_2{
+ fixed_allocation_struct_2_s_1_enum fixed_allocation_struct_2_s_1_tag;
+ union fixed_allocation_struct_2_s_1_value{
+ U8 uplink_timeslot_allocation;
+ power_control_parameters_ie power_control_parameters;
+ }fixed_allocation_struct_2_s_1_value;
+ U8 final_allocation;
+ U8 downlink_control_timeslot;
+ ispresent fixed_allocation_struct_2_s_2_tag;
+ union fixed_allocation_struct_2_s_2_value{
+ fixed_allocation_struct_2_s_3 m_fixed_allocation_struct_2_s_3;
+ }fixed_allocation_struct_2_s_2_value;
+ ispresent fixed_allocation_struct_2_s_4_tag;
+ union fixed_allocation_struct_2_s_4_value{
+ measurement_mapping_struct measurement_mapping;
+ }fixed_allocation_struct_2_s_4_value;
+ starting_frame_number_description_ie tbf_starting_time;
+ fixed_allocation_struct_2_s_7_enum fixed_allocation_struct_2_s_7_tag;
+ union fixed_allocation_struct_2_s_7_value{
+ fixed_allocation_struct_2_s_8 m_fixed_allocation_struct_2_s_8;
+ allocation_bitmap_1 m_allocation_bitmap_1;
+ }fixed_allocation_struct_2_s_7_value;
+}fixed_allocation_struct_2;
+
+typedef enum {
+ PBCCH_DESCRIPTION_STRUCT_2_S_1_NULL,
+ PBCCH_DESCRIPTION_STRUCT_2_S_1_BIT,
+ PSI_CHANGED_IND
+}pbcch_description_struct_2_s_1_enum;
+
+typedef struct pbcch_description_struct_2_s_1_bit{
+ U16 numElements_pbcch_description_struct_2_s_1_bit;
+ U8 * pbcch_description_struct_2_s_1_bit;
+}pbcch_description_struct_2_s_1_bit;
+
+/* SEQUENCE pbcch description struct 2 */
+typedef struct pbcch_description_struct_2{
+ U8 psi1_repeat_period;
+ U8 pb;
+ U8 tn;
+ frequency_parameters_ie pbcch_frequency_description;
+ pbcch_description_struct_2_s_1_enum pbcch_description_struct_2_s_1_tag;
+ union pbcch_description_struct_2_s_1_value{
+ pbcch_description_struct_2_s_1_bit m_pbcch_description_struct_2_s_1_bit;
+ U8 psi_changed_ind;
+ }pbcch_description_struct_2_s_1_value;
+}pbcch_description_struct_2;
+
+/* SEQUENCE cbch channel description struct */
+typedef struct cbch_channel_description_struct{
+ U8 channel_type_tdma_offset;
+ U8 tn;
+ frequency_parameters_ie frequency_parameters;
+}cbch_channel_description_struct;
+
+/* SEQUENCE compact information struct */
+typedef struct compact_information_struct{
+ cell_identification_ie cell_identification;
+ U16 numElements_m_compact_neighbour_cell_params_struct;
+ compact_neighbour_cell_params_struct * m_compact_neighbour_cell_params_struct;
+}compact_information_struct;
+
+typedef enum {
+ NON_HOPPING_PCCCH_CARRIERS,
+ PCCCH_DESCRIPTION_STRUCT_1_S_2
+}pccch_description_struct_1_s_1_enum;
+
+typedef struct pccch_description_struct_1_s_2{
+ U8 ma_number;
+ hopping_pccch_carriers_lists_struct hopping_pccch_carriers;
+}pccch_description_struct_1_s_2;
+
+/* SEQUENCE pccch description struct 1 */
+typedef struct pccch_description_struct_1{
+ U8 tsc;
+ pccch_description_struct_1_s_1_enum pccch_description_struct_1_s_1_tag;
+ union pccch_description_struct_1_s_1_value{
+ non_hopping_pccch_carriers_lists_struct non_hopping_pccch_carriers;
+ pccch_description_struct_1_s_2 m_pccch_description_struct_1_s_2;
+ }pccch_description_struct_1_s_1_value;
+}pccch_description_struct_1;
+
+typedef enum {
+ EXT_REPORTING_TYPE_1,
+ NCC_PERMITTED,
+ EM1_STRUCT_S_3,
+ EM1_STRUCT_EXT_REPORTING_TYPE_1
+}em1_struct_s_2_enum;
+
+typedef struct em1_struct_s_3{
+ ispresent em1_struct_s_3_tag;
+ union em1_struct_s_3_value{
+ U8 int_frequency;
+ }em1_struct_s_3_value;
+}em1_struct_s_3;
+
+typedef struct em1_struct_s_2{
+ em1_struct_s_2_enum em1_struct_s_2_tag;
+ U8 ext_reporting_type_1;
+ union em1_struct_s_2_value{
+ U8 ncc_permitted;
+ em1_struct_s_3 m_em1_struct_s_3;
+ }em1_struct_s_2_value;
+}em1_struct_s_2;
+
+/* SEQUENCE em1 struct */
+typedef struct em1_struct{
+ ispresent em1_struct_s_1_tag;
+ union em1_struct_s_1_value{
+ em1_struct_s_2 m_em1_struct_s_2;
+ }em1_struct_s_1_value;
+ ispresent em1_struct_s_4_tag;
+ union em1_struct_s_4_value{
+ U8 ext_reporting_period;
+ }em1_struct_s_4_value;
+ ext_frequency_list_description_struct ext_frequency_list;
+}em1_struct;
+
+typedef struct nc_frequency_list_struct_s_2{
+ U8 nr_of_removed_freq;
+ U16 numElements_removed_freq_index;
+ U8 * removed_freq_index;
+}nc_frequency_list_struct_s_2;
+
+/* SEQUENCE nc frequency list struct */
+typedef struct nc_frequency_list_struct{
+ ispresent nc_frequency_list_struct_s_1_tag;
+ union nc_frequency_list_struct_s_1_value{
+ nc_frequency_list_struct_s_2 m_nc_frequency_list_struct_s_2;
+ }nc_frequency_list_struct_s_1_value;
+ U16 numElements_list_of_added_frequency;
+ add_frequency_list_struct * list_of_added_frequency;
+}nc_frequency_list_struct;
+
+typedef struct ps_handover_radio_resources_ie_s_6{
+ global_packet_timing_advance_ie global_packet_timing_advance;
+ ispresent ps_handover_radio_resources_ie_s_7_tag;
+ union ps_handover_radio_resources_ie_s_7_value{
+ U8 packet_extended_timing_advance;
+ }ps_handover_radio_resources_ie_s_7_value;
+}ps_handover_radio_resources_ie_s_6;
+
+typedef struct ps_handover_radio_resources_ie_s_9{
+ U8 p0;
+ U8 pr_mode;
+}ps_handover_radio_resources_ie_s_9;
+
+typedef enum {
+ GPRS_MODE,
+ EGPRS_MODE
+}ps_handover_radio_resources_ie_s_11_enum;
+
+/* SEQUENCE ps handover radio resources ie */
+typedef struct ps_handover_radio_resources_ie{
+ ispresent ps_handover_radio_resources_ie_s_1_tag;
+ union ps_handover_radio_resources_ie_s_1_value{
+ U8 handover_reference;
+ }ps_handover_radio_resources_ie_s_1_value;
+ U16 arfcn;
+ U8 si;
+ U8 nci;
+ U8 bsic;
+ ispresent ps_handover_radio_resources_ie_s_2_tag;
+ union ps_handover_radio_resources_ie_s_2_value{
+ U8 ccn_active;
+ }ps_handover_radio_resources_ie_s_2_value;
+ ispresent ps_handover_radio_resources_ie_s_3_tag;
+ union ps_handover_radio_resources_ie_s_3_value{
+ U8 p_3_g_ccn_active;
+ }ps_handover_radio_resources_ie_s_3_value;
+ ispresent ps_handover_radio_resources_ie_s_4_tag;
+ union ps_handover_radio_resources_ie_s_4_value{
+ ccn_support_description_struct ccn_support_description;
+ }ps_handover_radio_resources_ie_s_4_value;
+ frequency_parameters_ie frequency_parameters;
+ U8 network_control_order;
+ ispresent ps_handover_radio_resources_ie_s_5_tag;
+ union ps_handover_radio_resources_ie_s_5_value{
+ ps_handover_radio_resources_ie_s_6 m_ps_handover_radio_resources_ie_s_6;
+ }ps_handover_radio_resources_ie_s_5_value;
+ U8 extended_dynamic_allocation;
+ U8 rlc_reset;
+ ispresent ps_handover_radio_resources_ie_s_8_tag;
+ union ps_handover_radio_resources_ie_s_8_value{
+ ps_handover_radio_resources_ie_s_9 m_ps_handover_radio_resources_ie_s_9;
+ }ps_handover_radio_resources_ie_s_8_value;
+ ispresent ps_handover_radio_resources_ie_s_10_tag;
+ union ps_handover_radio_resources_ie_s_10_value{
+ U8 uplink_control_timeslot;
+ }ps_handover_radio_resources_ie_s_10_value;
+ ps_handover_radio_resources_ie_s_11_enum ps_handover_radio_resources_ie_s_11_tag;
+ union ps_handover_radio_resources_ie_s_11_value{
+ gprs_mode_struct gprs_mode;
+ egprs_mode_struct egprs_mode;
+ }ps_handover_radio_resources_ie_s_11_value;
+}ps_handover_radio_resources_ie;
+
+typedef struct egprs_mode_struct_in_ps_ho_rr_2_s_6{
+ dual_carrier_timeslot_description_struct dual_carrier_global_timeslot_description;
+ multiple_uplink_assignment_2_struct_in_ps_ho_rr_2 multiple_uplink_assignment;
+}egprs_mode_struct_in_ps_ho_rr_2_s_6;
+
+typedef struct egprs_mode_struct_in_ps_ho_rr_2_s_11{
+ ispresent egprs_mode_struct_in_ps_ho_rr_2_s_12_tag;
+ union egprs_mode_struct_in_ps_ho_rr_2_s_12_value{
+ egprs_window_size_ie egprs_window_size;
+ }egprs_mode_struct_in_ps_ho_rr_2_s_12_value;
+ U8 link_quality_measurement_mode;
+ ispresent egprs_mode_struct_in_ps_ho_rr_2_s_13_tag;
+ union egprs_mode_struct_in_ps_ho_rr_2_s_13_value{
+ U8 bep_period2;
+ }egprs_mode_struct_in_ps_ho_rr_2_s_13_value;
+}egprs_mode_struct_in_ps_ho_rr_2_s_11;
+
+typedef struct egprs_mode_struct_in_ps_ho_rr_2_s_15{
+ U8 fanr;
+ U16 numElements_btti_multiple_downlink_assignment;
+ btti_multiple_downlink_assignment_struct_2 * btti_multiple_downlink_assignment;
+}egprs_mode_struct_in_ps_ho_rr_2_s_15;
+
+typedef enum {
+ EGPRS_MODE_STRUCT_IN_PS_HO_RR_2_S_19,
+ EGPRS_MODE_STRUCT_IN_PS_HO_RR_2_S_23
+}egprs_mode_struct_in_ps_ho_rr_2_s_18_enum;
+
+typedef enum {
+ EGPRS_MODE_STRUCT_IN_PS_HO_RR_2_CONCAT_00,
+ EGPRS_MODE_STRUCT_IN_PS_HO_RR_2_CONCAT_01,
+ EGPRS_MODE_STRUCT_IN_PS_HO_RR_2_S_21
+}egprs_mode_struct_in_ps_ho_rr_2_s_20_enum;
+
+typedef struct egprs_mode_struct_in_ps_ho_rr_2_s_21{
+ U8 downlink_pdch_pairs_c1;
+ U8 uplink_pdch_pairs_c1;
+}egprs_mode_struct_in_ps_ho_rr_2_s_21;
+
+typedef struct egprs_mode_struct_in_ps_ho_rr_2_s_19{
+ egprs_mode_struct_in_ps_ho_rr_2_s_20_enum egprs_mode_struct_in_ps_ho_rr_2_s_20_tag;
+ union egprs_mode_struct_in_ps_ho_rr_2_s_20_value{
+ egprs_mode_struct_in_ps_ho_rr_2_s_21 m_egprs_mode_struct_in_ps_ho_rr_2_s_21;
+ }egprs_mode_struct_in_ps_ho_rr_2_s_20_value;
+ U16 numElements_rtti_multiple_downlink_assignment_sc;
+ rtti_multiple_downlink_assignment_sc_struct_2 * rtti_multiple_downlink_assignment_sc;
+}egprs_mode_struct_in_ps_ho_rr_2_s_19;
+
+typedef enum {
+ EGPRS_MODE_STRUCT_IN_PS_HO_RR_2_CONCAT_001,
+ EGPRS_MODE_STRUCT_IN_PS_HO_RR_2_CONCAT_011,
+ EGPRS_MODE_STRUCT_IN_PS_HO_RR_2_S_25
+}egprs_mode_struct_in_ps_ho_rr_2_s_24_enum;
+
+typedef struct egprs_mode_struct_in_ps_ho_rr_2_s_25{
+ U8 downlink_pdch_pairs_c1;
+ U8 downlink_pdch_pairs_c2;
+ U8 uplink_pdch_pairs_c1;
+ U8 uplink_pdch_pairs_c2;
+}egprs_mode_struct_in_ps_ho_rr_2_s_25;
+
+typedef struct egprs_mode_struct_in_ps_ho_rr_2_s_23{
+ egprs_mode_struct_in_ps_ho_rr_2_s_24_enum egprs_mode_struct_in_ps_ho_rr_2_s_24_tag;
+ union egprs_mode_struct_in_ps_ho_rr_2_s_24_value{
+ egprs_mode_struct_in_ps_ho_rr_2_s_25 m_egprs_mode_struct_in_ps_ho_rr_2_s_25;
+ }egprs_mode_struct_in_ps_ho_rr_2_s_24_value;
+ U16 numElements_rtti_multiple_downlink_assignment_dc;
+ rtti_multiple_downlink_assignment_dc_struct_2 * rtti_multiple_downlink_assignment_dc;
+}egprs_mode_struct_in_ps_ho_rr_2_s_23;
+
+typedef struct egprs_mode_struct_in_ps_ho_rr_2_s_18{
+ egprs_mode_struct_in_ps_ho_rr_2_s_18_enum egprs_mode_struct_in_ps_ho_rr_2_s_18_tag;
+ union egprs_mode_struct_in_ps_ho_rr_2_s_18_value{
+ egprs_mode_struct_in_ps_ho_rr_2_s_19 m_egprs_mode_struct_in_ps_ho_rr_2_s_19;
+ egprs_mode_struct_in_ps_ho_rr_2_s_23 m_egprs_mode_struct_in_ps_ho_rr_2_s_23;
+ }egprs_mode_struct_in_ps_ho_rr_2_s_18_value;
+}egprs_mode_struct_in_ps_ho_rr_2_s_18;
+
+typedef struct egprs_mode_struct_in_ps_ho_rr_2_s_9{
+ ispresent egprs_mode_struct_in_ps_ho_rr_2_s_10_tag;
+ union egprs_mode_struct_in_ps_ho_rr_2_s_10_value{
+ egprs_mode_struct_in_ps_ho_rr_2_s_11 m_egprs_mode_struct_in_ps_ho_rr_2_s_11;
+ }egprs_mode_struct_in_ps_ho_rr_2_s_10_value;
+ ispresent egprs_mode_struct_in_ps_ho_rr_2_s_14_tag;
+ union egprs_mode_struct_in_ps_ho_rr_2_s_14_value{
+ egprs_mode_struct_in_ps_ho_rr_2_s_15 m_egprs_mode_struct_in_ps_ho_rr_2_s_15;
+ }egprs_mode_struct_in_ps_ho_rr_2_s_14_value;
+ ispresent egprs_mode_struct_in_ps_ho_rr_2_s_17_tag;
+ union egprs_mode_struct_in_ps_ho_rr_2_s_17_value{
+ egprs_mode_struct_in_ps_ho_rr_2_s_18 m_egprs_mode_struct_in_ps_ho_rr_2_s_18;
+ }egprs_mode_struct_in_ps_ho_rr_2_s_17_value;
+}egprs_mode_struct_in_ps_ho_rr_2_s_9;
+
+/* SEQUENCE egprs mode struct in ps ho rr 2 */
+typedef struct egprs_mode_struct_in_ps_ho_rr_2{
+ ispresent egprs_mode_struct_in_ps_ho_rr_2_s_2_tag;
+ union egprs_mode_struct_in_ps_ho_rr_2_s_2_value{
+ egprs_window_size_ie egprs_window_size;
+ }egprs_mode_struct_in_ps_ho_rr_2_s_2_value;
+ ispresent egprs_mode_struct_in_ps_ho_rr_2_s_3_tag;
+ union egprs_mode_struct_in_ps_ho_rr_2_s_3_value{
+ egprs_modulation_and_coding_ie egprs_channel_coding_command;
+ }egprs_mode_struct_in_ps_ho_rr_2_s_3_value;
+ ispresent egprs_mode_struct_in_ps_ho_rr_2_s_4_tag;
+ union egprs_mode_struct_in_ps_ho_rr_2_s_4_value{
+ U8 bep_period2;
+ }egprs_mode_struct_in_ps_ho_rr_2_s_4_value;
+ ispresent egprs_mode_struct_in_ps_ho_rr_2_s_5_tag;
+ union egprs_mode_struct_in_ps_ho_rr_2_s_5_value{
+ egprs_mode_struct_in_ps_ho_rr_2_s_6 m_egprs_mode_struct_in_ps_ho_rr_2_s_6;
+ }egprs_mode_struct_in_ps_ho_rr_2_s_5_value;
+ ispresent egprs_mode_struct_in_ps_ho_rr_2_s_8_tag;
+ union egprs_mode_struct_in_ps_ho_rr_2_s_8_value{
+ egprs_mode_struct_in_ps_ho_rr_2_s_9 m_egprs_mode_struct_in_ps_ho_rr_2_s_9;
+ }egprs_mode_struct_in_ps_ho_rr_2_s_8_value;
+}egprs_mode_struct_in_ps_ho_rr_2;
+
+typedef enum {
+ PACKET_ENHANCED_MEASUREMENT_REPORT_MESSAGE_CONTENT_S_2_NULL,
+ PACKET_ENHANCED_MEASUREMENT_REPORT_MESSAGE_CONTENT_S_2_BIT,
+ PACKET_ENHANCED_MEASUREMENT_REPORT_MESSAGE_CONTENT_S_3
+}packet_enhanced_measurement_report_message_content_s_2_enum;
+
+typedef struct packet_enhanced_measurement_report_message_content_s_2_bit{
+ U16 numElements_packet_enhanced_measurement_report_message_content_s_2_bit;
+ U8 * packet_enhanced_measurement_report_message_content_s_2_bit;
+}packet_enhanced_measurement_report_message_content_s_2_bit;
+
+typedef enum {
+ PACKET_ENHANCED_MEASUREMENT_REPORT_MESSAGE_CONTENT_S_5_NULL,
+ PACKET_ENHANCED_MEASUREMENT_REPORT_MESSAGE_CONTENT_S_5_BIT,
+ PACKET_ENHANCED_MEASUREMENT_REPORT_MESSAGE_CONTENT_S_6
+}packet_enhanced_measurement_report_message_content_s_5_enum;
+
+typedef struct packet_enhanced_measurement_report_message_content_s_5_bit{
+ U16 numElements_packet_enhanced_measurement_report_message_content_s_5_bit;
+ U8 * packet_enhanced_measurement_report_message_content_s_5_bit;
+}packet_enhanced_measurement_report_message_content_s_5_bit;
+
+typedef struct packet_enhanced_measurement_report_message_content_s_7{
+ ispresent packet_enhanced_measurement_report_message_content_s_7_tag;
+ union packet_enhanced_measurement_report_message_content_s_7_value{
+ U8 reporting_quantity;
+ }packet_enhanced_measurement_report_message_content_s_7_value;
+}packet_enhanced_measurement_report_message_content_s_7;
+
+typedef enum {
+ PACKET_ENHANCED_MEASUREMENT_REPORT_MESSAGE_CONTENT_S_9_NULL,
+ PACKET_ENHANCED_MEASUREMENT_REPORT_MESSAGE_CONTENT_S_9_BIT,
+ PACKET_ENHANCED_MEASUREMENT_REPORT_MESSAGE_CONTENT_S_10
+}packet_enhanced_measurement_report_message_content_s_9_enum;
+
+typedef struct packet_enhanced_measurement_report_message_content_s_9_bit{
+ U16 numElements_packet_enhanced_measurement_report_message_content_s_9_bit;
+ U8 * packet_enhanced_measurement_report_message_content_s_9_bit;
+}packet_enhanced_measurement_report_message_content_s_9_bit;
+
+typedef struct packet_enhanced_measurement_report_message_content_s_10{
+ ispresent packet_enhanced_measurement_report_message_content_s_11_tag;
+ union packet_enhanced_measurement_report_message_content_s_11_value{
+ utran_csg_measurement_report_ie utran_csg_measurement_report;
+ }packet_enhanced_measurement_report_message_content_s_11_value;
+ ispresent packet_enhanced_measurement_report_message_content_s_12_tag;
+ union packet_enhanced_measurement_report_message_content_s_12_value{
+ e_utran_csg_measurement_report_ie e_utran_csg_measurement_report;
+ }packet_enhanced_measurement_report_message_content_s_12_value;
+}packet_enhanced_measurement_report_message_content_s_10;
+
+typedef struct packet_enhanced_measurement_report_message_content_s_6{
+ U8 bitmap_length;
+ U16 numElements_m_packet_enhanced_measurement_report_message_content_s_7;
+ packet_enhanced_measurement_report_message_content_s_7 * m_packet_enhanced_measurement_report_message_content_s_7;
+ ispresent packet_enhanced_measurement_report_message_content_s_8_tag;
+ union packet_enhanced_measurement_report_message_content_s_8_value{
+ e_utran_measurement_report_struct e_utran_measurement_report;
+ }packet_enhanced_measurement_report_message_content_s_8_value;
+ packet_enhanced_measurement_report_message_content_s_9_enum packet_enhanced_measurement_report_message_content_s_9_tag;
+ union packet_enhanced_measurement_report_message_content_s_9_value{
+ packet_enhanced_measurement_report_message_content_s_9_bit m_packet_enhanced_measurement_report_message_content_s_9_bit;
+ packet_enhanced_measurement_report_message_content_s_10 m_packet_enhanced_measurement_report_message_content_s_10;
+ }packet_enhanced_measurement_report_message_content_s_9_value;
+}packet_enhanced_measurement_report_message_content_s_6;
+
+typedef struct packet_enhanced_measurement_report_message_content_s_3{
+ ispresent packet_enhanced_measurement_report_message_content_s_4_tag;
+ union packet_enhanced_measurement_report_message_content_s_4_value{
+ U8 g_rnti_extension;
+ }packet_enhanced_measurement_report_message_content_s_4_value;
+ packet_enhanced_measurement_report_message_content_s_5_enum packet_enhanced_measurement_report_message_content_s_5_tag;
+ union packet_enhanced_measurement_report_message_content_s_5_value{
+ packet_enhanced_measurement_report_message_content_s_5_bit m_packet_enhanced_measurement_report_message_content_s_5_bit;
+ packet_enhanced_measurement_report_message_content_s_6 m_packet_enhanced_measurement_report_message_content_s_6;
+ }packet_enhanced_measurement_report_message_content_s_5_value;
+}packet_enhanced_measurement_report_message_content_s_3;
+
+/* SEQUENCE packet enhanced measurement report message content */
+typedef struct packet_enhanced_measurement_report_message_content{
+ uplink_header_struct header;
+ U32 tlli___g_rnti;
+ nc_measurement_report_struct_en nc_measurement_report;
+ packet_enhanced_measurement_report_message_content_s_2_enum packet_enhanced_measurement_report_message_content_s_2_tag;
+ union packet_enhanced_measurement_report_message_content_s_2_value{
+ packet_enhanced_measurement_report_message_content_s_2_bit m_packet_enhanced_measurement_report_message_content_s_2_bit;
+ packet_enhanced_measurement_report_message_content_s_3 m_packet_enhanced_measurement_report_message_content_s_3;
+ }packet_enhanced_measurement_report_message_content_s_2_value;
+}packet_enhanced_measurement_report_message_content;
+
+typedef enum {
+ PACKET_RESOURCE_REQUEST_MESSAGE_CONTENT_GLOBAL_TFI,
+ PACKET_RESOURCE_REQUEST_MESSAGE_CONTENT_TLLI___G_RNTI
+}packet_resource_request_message_content_s_2_enum;
+
+typedef enum {
+ PACKET_RESOURCE_REQUEST_MESSAGE_CONTENT_S_14_NULL,
+ PACKET_RESOURCE_REQUEST_MESSAGE_CONTENT_S_14_BIT,
+ PACKET_RESOURCE_REQUEST_MESSAGE_CONTENT_S_15
+}packet_resource_request_message_content_s_14_enum;
+
+typedef struct packet_resource_request_message_content_s_14_bit{
+ U16 numElements_packet_resource_request_message_content_s_14_bit;
+ U8 * packet_resource_request_message_content_s_14_bit;
+}packet_resource_request_message_content_s_14_bit;
+
+typedef enum {
+ PACKET_RESOURCE_REQUEST_MESSAGE_CONTENT_S_19_NULL,
+ PACKET_RESOURCE_REQUEST_MESSAGE_CONTENT_S_19_BIT,
+ PACKET_RESOURCE_REQUEST_MESSAGE_CONTENT_S_20
+}packet_resource_request_message_content_s_19_enum;
+
+typedef struct packet_resource_request_message_content_s_19_bit{
+ U16 numElements_packet_resource_request_message_content_s_19_bit;
+ U8 * packet_resource_request_message_content_s_19_bit;
+}packet_resource_request_message_content_s_19_bit;
+
+typedef struct packet_resource_request_message_content_s_22{
+ ispresent packet_resource_request_message_content_s_23_tag;
+ union packet_resource_request_message_content_s_23_value{
+ U8 g_rnti_extension;
+ }packet_resource_request_message_content_s_23_value;
+ struct iu_mode_channel_request_description_ie * iu_mode_channel_request_description;
+}packet_resource_request_message_content_s_22;
+
+typedef enum {
+ PACKET_RESOURCE_REQUEST_MESSAGE_CONTENT_S_25_NULL,
+ PACKET_RESOURCE_REQUEST_MESSAGE_CONTENT_S_25_BIT,
+ PACKET_RESOURCE_REQUEST_MESSAGE_CONTENT_S_26
+}packet_resource_request_message_content_s_25_enum;
+
+typedef struct packet_resource_request_message_content_s_25_bit{
+ U16 numElements_packet_resource_request_message_content_s_25_bit;
+ U8 * packet_resource_request_message_content_s_25_bit;
+}packet_resource_request_message_content_s_25_bit;
+
+typedef struct packet_resource_request_message_content_s_26{
+ ispresent packet_resource_request_message_content_s_27_tag;
+ union packet_resource_request_message_content_s_27_value{
+ struct extended_channel_request_description_ie * extended_channel_request_description;
+ }packet_resource_request_message_content_s_27_value;
+}packet_resource_request_message_content_s_26;
+
+typedef struct packet_resource_request_message_content_s_20{
+ ispresent packet_resource_request_message_content_s_21_tag;
+ union packet_resource_request_message_content_s_21_value{
+ packet_resource_request_message_content_s_22 m_packet_resource_request_message_content_s_22;
+ }packet_resource_request_message_content_s_21_value;
+ ispresent packet_resource_request_message_content_s_24_tag;
+ union packet_resource_request_message_content_s_24_value{
+ U8 hfn_lsb;
+ }packet_resource_request_message_content_s_24_value;
+ packet_resource_request_message_content_s_25_enum packet_resource_request_message_content_s_25_tag;
+ union packet_resource_request_message_content_s_25_value{
+ packet_resource_request_message_content_s_25_bit m_packet_resource_request_message_content_s_25_bit;
+ packet_resource_request_message_content_s_26 m_packet_resource_request_message_content_s_26;
+ }packet_resource_request_message_content_s_25_value;
+}packet_resource_request_message_content_s_20;
+
+typedef struct packet_resource_request_message_content_s_15{
+ ispresent packet_resource_request_message_content_s_16_tag;
+ union packet_resource_request_message_content_s_16_value{
+ egprs_bep_link_quality_measurements_ie egprs_bep_link_quality_measurements;
+ }packet_resource_request_message_content_s_16_value;
+ ispresent packet_resource_request_message_content_s_17_tag;
+ union packet_resource_request_message_content_s_17_value{
+ egprs_timeslot_link_quality_measurements_ie egprs_timeslot_link_quality_measurements;
+ }packet_resource_request_message_content_s_17_value;
+ ispresent packet_resource_request_message_content_s_18_tag;
+ union packet_resource_request_message_content_s_18_value{
+ U8 pfi;
+ }packet_resource_request_message_content_s_18_value;
+ U8 additional_ms_rac_information_available;
+ U8 retransmission_of_prr;
+ packet_resource_request_message_content_s_19_enum packet_resource_request_message_content_s_19_tag;
+ union packet_resource_request_message_content_s_19_value{
+ packet_resource_request_message_content_s_19_bit m_packet_resource_request_message_content_s_19_bit;
+ packet_resource_request_message_content_s_20 m_packet_resource_request_message_content_s_20;
+ }packet_resource_request_message_content_s_19_value;
+}packet_resource_request_message_content_s_15;
+
+/* SEQUENCE packet resource request message content */
+typedef struct packet_resource_request_message_content{
+ uplink_header_struct header;
+ ispresent packet_resource_request_message_content_s_1_tag;
+ union packet_resource_request_message_content_s_1_value{
+ U8 access_type;
+ }packet_resource_request_message_content_s_1_value;
+ packet_resource_request_message_content_s_2_enum packet_resource_request_message_content_s_2_tag;
+ union packet_resource_request_message_content_s_2_value{
+ global_tfi_ie global_tfi;
+ tlli___g_rnti_ie tlli___g_rnti;
+ }packet_resource_request_message_content_s_2_value;
+ ispresent packet_resource_request_message_content_s_3_tag;
+ union packet_resource_request_message_content_s_3_value{
+ struct ms_ra_capability_value_part_struct * ms_radio_access_capability_2;
+ }packet_resource_request_message_content_s_3_value;
+ channel_request_description_ie channel_request_description;
+ ispresent packet_resource_request_message_content_s_4_tag;
+ union packet_resource_request_message_content_s_4_value{
+ U8 change_mark;
+ }packet_resource_request_message_content_s_4_value;
+ U8 c_value;
+ ispresent packet_resource_request_message_content_s_5_tag;
+ union packet_resource_request_message_content_s_5_value{
+ U8 sign_var;
+ }packet_resource_request_message_content_s_5_value;
+ ispresent packet_resource_request_message_content_s_6_tag;
+ union packet_resource_request_message_content_s_6_value{
+ U8 i_level_tn0;
+ }packet_resource_request_message_content_s_6_value;
+ ispresent packet_resource_request_message_content_s_7_tag;
+ union packet_resource_request_message_content_s_7_value{
+ U8 i_level_tn1;
+ }packet_resource_request_message_content_s_7_value;
+ ispresent packet_resource_request_message_content_s_8_tag;
+ union packet_resource_request_message_content_s_8_value{
+ U8 i_level_tn2;
+ }packet_resource_request_message_content_s_8_value;
+ ispresent packet_resource_request_message_content_s_9_tag;
+ union packet_resource_request_message_content_s_9_value{
+ U8 i_level_tn3;
+ }packet_resource_request_message_content_s_9_value;
+ ispresent packet_resource_request_message_content_s_10_tag;
+ union packet_resource_request_message_content_s_10_value{
+ U8 i_level_tn4;
+ }packet_resource_request_message_content_s_10_value;
+ ispresent packet_resource_request_message_content_s_11_tag;
+ union packet_resource_request_message_content_s_11_value{
+ U8 i_level_tn5;
+ }packet_resource_request_message_content_s_11_value;
+ ispresent packet_resource_request_message_content_s_12_tag;
+ union packet_resource_request_message_content_s_12_value{
+ U8 i_level_tn6;
+ }packet_resource_request_message_content_s_12_value;
+ ispresent packet_resource_request_message_content_s_13_tag;
+ union packet_resource_request_message_content_s_13_value{
+ U8 i_level_tn7;
+ }packet_resource_request_message_content_s_13_value;
+ packet_resource_request_message_content_s_14_enum packet_resource_request_message_content_s_14_tag;
+ union packet_resource_request_message_content_s_14_value{
+ packet_resource_request_message_content_s_14_bit m_packet_resource_request_message_content_s_14_bit;
+ packet_resource_request_message_content_s_15 m_packet_resource_request_message_content_s_15;
+ }packet_resource_request_message_content_s_14_value;
+}packet_resource_request_message_content;
+
+/* SEQUENCE egprs channel quality report ie */
+typedef struct egprs_channel_quality_report_ie{
+ egprs_bep_link_quality_measurements_ie egprs_bep_link_quality_measurements;
+ U8 c_value;
+ egprs_timeslot_link_quality_measurements_ie egprs_timeslot_link_quality_measurements;
+}egprs_channel_quality_report_ie;
+
+/* SEQUENCE access capabilities struct */
+typedef struct access_capabilities_struct{
+ U8 length;
+ content m_content;
+}access_capabilities_struct;
+
+typedef enum {
+ DATA_BLK_HDR,
+ CTRL_BLK_HDR1,
+ CTRL_BLK_HDR2
+}pay_load_enum;
+
+/* SEQUENCE header_struct1 */
+typedef struct header_struct1{
+ pay_load_enum pay_load_tag;
+ union pay_load_value{
+ data_blk_hdr_struct1 data_blk_hdr;
+ data_blk_hdr_struct1 ctrl_blk_hdr1;
+ ctrl_blk_hdr_struct1 ctrl_blk_hdr2;
+ }pay_load_value;
+}header_struct1;
+
+#if 0
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+#endif
+
+/* SEQUENCE measurement_report_struct */
+typedef struct measurement_report_struct{
+ gas_skip_indicator_struct skip_ind;
+ gas_protocol_disc_struct proto_disc;
+ measurement_report_type_struct mesg_type;
+ gas_meas_results_struct measurement_results;
+}measurement_report_struct;
+
+typedef enum {
+ PACKET_TIMESLOT_RECONFIGURE_MESSAGE_CONTENT_S_4,
+ S_23
+}packet_timeslot_reconfigure_message_content_s_3_enum;
+
+typedef enum {
+ DYNAMIC_ALLOCATION,
+ FIXED_ALLOCATION
+}packet_timeslot_reconfigure_message_content_s_9_enum;
+
+typedef enum {
+ PACKET_TIMESLOT_RECONFIGURE_MESSAGE_CONTENT_S_10_NULL,
+ PACKET_TIMESLOT_RECONFIGURE_MESSAGE_CONTENT_S_10_BIT,
+ PACKET_TIMESLOT_RECONFIGURE_MESSAGE_CONTENT_S_11
+}packet_timeslot_reconfigure_message_content_s_10_enum;
+
+typedef struct packet_timeslot_reconfigure_message_content_s_10_bit{
+ U16 numElements_packet_timeslot_reconfigure_message_content_s_10_bit;
+ U8 * packet_timeslot_reconfigure_message_content_s_10_bit;
+}packet_timeslot_reconfigure_message_content_s_10_bit;
+
+typedef enum {
+ PACKET_TIMESLOT_RECONFIGURE_MESSAGE_CONTENT_S_13_NULL,
+ PACKET_TIMESLOT_RECONFIGURE_MESSAGE_CONTENT_S_13_BIT,
+ PACKET_TIMESLOT_RECONFIGURE_MESSAGE_CONTENT_S_14
+}packet_timeslot_reconfigure_message_content_s_13_enum;
+
+typedef struct packet_timeslot_reconfigure_message_content_s_13_bit{
+ U16 numElements_packet_timeslot_reconfigure_message_content_s_13_bit;
+ U8 * packet_timeslot_reconfigure_message_content_s_13_bit;
+}packet_timeslot_reconfigure_message_content_s_13_bit;
+
+typedef struct packet_timeslot_reconfigure_message_content_s_16{
+ U8 rb_id_of_downlink_tbf;
+ U8 rb_id_of_uplink_tbf;
+}packet_timeslot_reconfigure_message_content_s_16;
+
+typedef enum {
+ PACKET_TIMESLOT_RECONFIGURE_MESSAGE_CONTENT_S_18_NULL,
+ PACKET_TIMESLOT_RECONFIGURE_MESSAGE_CONTENT_S_18_BIT,
+ PACKET_TIMESLOT_RECONFIGURE_MESSAGE_CONTENT_S_19
+}packet_timeslot_reconfigure_message_content_s_18_enum;
+
+typedef struct packet_timeslot_reconfigure_message_content_s_18_bit{
+ U16 numElements_packet_timeslot_reconfigure_message_content_s_18_bit;
+ U8 * packet_timeslot_reconfigure_message_content_s_18_bit;
+}packet_timeslot_reconfigure_message_content_s_18_bit;
+
+typedef struct packet_timeslot_reconfigure_message_content_s_19{
+ ispresent packet_timeslot_reconfigure_message_content_s_20_tag;
+ union packet_timeslot_reconfigure_message_content_s_20_value{
+ U8 pfi_of_downlink_tbf;
+ }packet_timeslot_reconfigure_message_content_s_20_value;
+ ispresent packet_timeslot_reconfigure_message_content_s_21_tag;
+ union packet_timeslot_reconfigure_message_content_s_21_value{
+ U8 pfi_of_uplink_tbf;
+ }packet_timeslot_reconfigure_message_content_s_21_value;
+ ispresent s_22_tag;
+ union s_22_value{
+ U8 uplink_rlc_mode;
+ }s_22_value;
+}packet_timeslot_reconfigure_message_content_s_19;
+
+typedef struct packet_timeslot_reconfigure_message_content_s_14{
+ ispresent packet_timeslot_reconfigure_message_content_s_15_tag;
+ union packet_timeslot_reconfigure_message_content_s_15_value{
+ packet_timeslot_reconfigure_message_content_s_16 m_packet_timeslot_reconfigure_message_content_s_16;
+ }packet_timeslot_reconfigure_message_content_s_15_value;
+ ispresent packet_timeslot_reconfigure_message_content_s_17_tag;
+ union packet_timeslot_reconfigure_message_content_s_17_value{
+ U8 uplink_control_timeslot;
+ }packet_timeslot_reconfigure_message_content_s_17_value;
+ packet_timeslot_reconfigure_message_content_s_18_enum packet_timeslot_reconfigure_message_content_s_18_tag;
+ union packet_timeslot_reconfigure_message_content_s_18_value{
+ packet_timeslot_reconfigure_message_content_s_18_bit m_packet_timeslot_reconfigure_message_content_s_18_bit;
+ packet_timeslot_reconfigure_message_content_s_19 m_packet_timeslot_reconfigure_message_content_s_19;
+ }packet_timeslot_reconfigure_message_content_s_18_value;
+}packet_timeslot_reconfigure_message_content_s_14;
+
+typedef struct packet_timeslot_reconfigure_message_content_s_11{
+ ispresent packet_timeslot_reconfigure_message_content_s_12_tag;
+ union packet_timeslot_reconfigure_message_content_s_12_value{
+ U8 packet_extended_timing_advance;
+ }packet_timeslot_reconfigure_message_content_s_12_value;
+ packet_timeslot_reconfigure_message_content_s_13_enum packet_timeslot_reconfigure_message_content_s_13_tag;
+ union packet_timeslot_reconfigure_message_content_s_13_value{
+ packet_timeslot_reconfigure_message_content_s_13_bit m_packet_timeslot_reconfigure_message_content_s_13_bit;
+ packet_timeslot_reconfigure_message_content_s_14 m_packet_timeslot_reconfigure_message_content_s_14;
+ }packet_timeslot_reconfigure_message_content_s_13_value;
+}packet_timeslot_reconfigure_message_content_s_11;
+
+typedef struct packet_timeslot_reconfigure_message_content_s_5{
+ U8 channel_coding_command;
+ global_packet_timing_advance_ie global_packet_timing_advance;
+ U8 downlink_rlc_mode;
+ U8 control_ack;
+ ispresent packet_timeslot_reconfigure_message_content_s_6_tag;
+ union packet_timeslot_reconfigure_message_content_s_6_value{
+ U8 downlink_tfi_assignment;
+ }packet_timeslot_reconfigure_message_content_s_6_value;
+ ispresent packet_timeslot_reconfigure_message_content_s_7_tag;
+ union packet_timeslot_reconfigure_message_content_s_7_value{
+ U8 uplink_tfi_assignment;
+ }packet_timeslot_reconfigure_message_content_s_7_value;
+ U8 downlink_timeslot_allocation;
+ ispresent packet_timeslot_reconfigure_message_content_s_8_tag;
+ union packet_timeslot_reconfigure_message_content_s_8_value{
+ frequency_parameters_ie frequency_parameters;
+ }packet_timeslot_reconfigure_message_content_s_8_value;
+ packet_timeslot_reconfigure_message_content_s_9_enum packet_timeslot_reconfigure_message_content_s_9_tag;
+ union packet_timeslot_reconfigure_message_content_s_9_value{
+ dynamic_allocation_in_ptr_struct dynamic_allocation;
+ fixed_allocation_struct_2 fixed_allocation;
+ }packet_timeslot_reconfigure_message_content_s_9_value;
+ packet_timeslot_reconfigure_message_content_s_10_enum packet_timeslot_reconfigure_message_content_s_10_tag;
+ union packet_timeslot_reconfigure_message_content_s_10_value{
+ packet_timeslot_reconfigure_message_content_s_10_bit m_packet_timeslot_reconfigure_message_content_s_10_bit;
+ packet_timeslot_reconfigure_message_content_s_11 m_packet_timeslot_reconfigure_message_content_s_11;
+ }packet_timeslot_reconfigure_message_content_s_10_value;
+}packet_timeslot_reconfigure_message_content_s_5;
+
+typedef enum {
+ S_24,
+ S_48
+}s_23_enum;
+
+typedef enum {
+ PACKET_TIMESLOT_RECONFIGURE_MESSAGE_CONTENT_DYNAMIC_ALLOCATION,
+ PACKET_TIMESLOT_RECONFIGURE_MESSAGE_CONTENT_FIXED_ALLOCATION
+}s_33_enum;
+
+typedef enum {
+ S_34_NULL,
+ S_34_BIT,
+ S_35
+}s_34_enum;
+
+typedef struct s_34_bit{
+ U16 numElements_s_34_bit;
+ U8 * s_34_bit;
+}s_34_bit;
+
+typedef struct s_37{
+ U8 rb_id_of_downlink_tbf;
+ U8 rb_id_of_uplink_tbf;
+}s_37;
+
+typedef enum {
+ S_39_NULL,
+ S_39_BIT,
+ S_40
+}s_39_enum;
+
+typedef struct s_39_bit{
+ U16 numElements_s_39_bit;
+ U8 * s_39_bit;
+}s_39_bit;
+
+typedef enum {
+ S_44_NULL,
+ S_44_BIT,
+ S_45
+}s_44_enum;
+
+typedef struct s_44_bit{
+ U16 numElements_s_44_bit;
+ U8 * s_44_bit;
+}s_44_bit;
+
+typedef struct s_45{
+ ispresent s_46_tag;
+ union s_46_value{
+ U8 downlink_npm_transfer_time;
+ }s_46_value;
+ ispresent s_47_tag;
+ union s_47_value{
+ U8 uplink_npm_transfer_time;
+ }s_47_value;
+}s_45;
+
+typedef struct s_40{
+ ispresent s_41_tag;
+ union s_41_value{
+ U8 pfi_of_downlink_tbf;
+ }s_41_value;
+ ispresent s_42_tag;
+ union s_42_value{
+ U8 pfi_of_uplink_tbf;
+ }s_42_value;
+ ispresent s_43_tag;
+ union s_43_value{
+ U8 uplink_rlc_mode;
+ }s_43_value;
+ s_44_enum s_44_tag;
+ union s_44_value{
+ s_44_bit m_s_44_bit;
+ s_45 m_s_45;
+ }s_44_value;
+}s_40;
+
+typedef struct s_35{
+ ispresent s_36_tag;
+ union s_36_value{
+ s_37 m_s_37;
+ }s_36_value;
+ ispresent s_38_tag;
+ union s_38_value{
+ U8 uplink_control_timeslot;
+ }s_38_value;
+ s_39_enum s_39_tag;
+ union s_39_value{
+ s_39_bit m_s_39_bit;
+ s_40 m_s_40;
+ }s_39_value;
+}s_35;
+
+typedef struct s_25{
+ ispresent s_26_tag;
+ union s_26_value{
+ compact_reduced_ma_ie compact_reduced_ma;
+ }s_26_value;
+ U8 egprs_channel_coding_command;
+ U8 resegment;
+ ispresent s_27_tag;
+ union s_27_value{
+ U8 downlink_egprs_window_size;
+ }s_27_value;
+ ispresent s_28_tag;
+ union s_28_value{
+ U8 uplink_egprs_window_size;
+ }s_28_value;
+ U8 link_quality_measurement_mode;
+ global_packet_timing_advance_ie global_packet_timing_advance;
+ ispresent s_29_tag;
+ union s_29_value{
+ U8 packet_extended_timing_advance;
+ }s_29_value;
+ U8 downlink_rlc_mode;
+ U8 control_ack;
+ ispresent s_30_tag;
+ union s_30_value{
+ U8 downlink_tfi_assignment;
+ }s_30_value;
+ ispresent s_31_tag;
+ union s_31_value{
+ U8 uplink_tfi_assignment;
+ }s_31_value;
+ U8 downlink_timeslot_allocation;
+ ispresent s_32_tag;
+ union s_32_value{
+ frequency_parameters_ie frequency_parameters;
+ }s_32_value;
+ s_33_enum s_33_tag;
+ union s_33_value{
+ dynamic_allocation_in_ptr_struct dynamic_allocation;
+ fixed_allocation_struct_2 fixed_allocation;
+ }s_33_value;
+ s_34_enum s_34_tag;
+ union s_34_value{
+ s_34_bit m_s_34_bit;
+ s_35 m_s_35;
+ }s_34_value;
+}s_25;
+
+typedef enum {
+ S_56,
+ S_58
+}s_55_enum;
+
+typedef struct s_56{
+ U8 timeslot_allocation_c1;
+ ispresent s_57_tag;
+ union s_57_value{
+ U8 timeslot_allocation_c2;
+ }s_57_value;
+}s_56;
+
+typedef enum {
+ S_60,
+ S_63
+}s_59_enum;
+
+typedef enum {
+ PACKET_TIMESLOT_RECONFIGURE_MESSAGE_CONTENT_CONCAT_00,
+ PACKET_TIMESLOT_RECONFIGURE_MESSAGE_CONTENT_CONCAT_01,
+ S_62
+}s_61_enum;
+
+typedef struct s_62{
+ U8 downlink_pdch_pairs_c1;
+ U8 uplink_pdch_pairs_c1;
+}s_62;
+
+typedef struct s_60{
+ s_61_enum s_61_tag;
+ union s_61_value{
+ s_62 m_s_62;
+ }s_61_value;
+ U8 rtti_downlink_pdch_pair_assignment_sc;
+}s_60;
+
+typedef enum {
+ PACKET_TIMESLOT_RECONFIGURE_MESSAGE_CONTENT_CONCAT_001,
+ PACKET_TIMESLOT_RECONFIGURE_MESSAGE_CONTENT_CONCAT_011,
+ S_65
+}s_64_enum;
+
+typedef struct s_65{
+ U8 downlink_pdch_pairs_c1;
+ U8 downlink_pdch_pairs_c2;
+ U8 uplink_pdch_pairs_c1;
+ U8 uplink_pdch_pairs_c2;
+}s_65;
+
+typedef struct s_63{
+ s_64_enum s_64_tag;
+ union s_64_value{
+ s_65 m_s_65;
+ }s_64_value;
+ U8 rtti_downlink_pdch_pair_assignment_dc;
+}s_63;
+
+typedef struct s_58{
+ U8 rtti_usf_mode;
+ s_59_enum s_59_tag;
+ union s_59_value{
+ s_60 m_s_60;
+ s_63 m_s_63;
+ }s_59_value;
+}s_58;
+
+typedef enum {
+ PACKET_TIMESLOT_RECONFIGURE_MESSAGE_CONTENT_CONCAT_002,
+ S_67,
+ DUAL_CARRIER_FREQUENCY_PARAMETERS
+}s_66_enum;
+
+typedef struct s_67{
+ ispresent s_68_tag;
+ union s_68_value{
+ frequency_parameters_ie frequency_parameters_c1;
+ }s_68_value;
+ ispresent s_69_tag;
+ union s_69_value{
+ frequency_parameters_ie frequency_parameters_c2;
+ }s_69_value;
+}s_67;
+
+typedef struct s_80{
+ U8 reported_timeslots_c1;
+ ispresent s_81_tag;
+ union s_81_value{
+ U8 reported_timeslots_c2;
+ }s_81_value;
+ U8 tsh;
+}s_80;
+
+typedef struct s_79{
+ ispresent s_79_tag;
+ union s_79_value{
+ s_80 m_s_80;
+ }s_79_value;
+}s_79;
+
+typedef struct s_49{
+ U8 egprs_channel_coding_command;
+ U8 resegment;
+ assignment_info_struct assignment_info;
+ ispresent s_50_tag;
+ union s_50_value{
+ egprs_window_size_ie downlink_egprs_window_size;
+ }s_50_value;
+ ispresent s_51_tag;
+ union s_51_value{
+ egprs_window_size_ie uplink_egprs_window_size;
+ }s_51_value;
+ U8 link_quality_measurement_mode;
+ ispresent s_52_tag;
+ union s_52_value{
+ U8 bep_period2;
+ }s_52_value;
+ global_packet_timing_advance_ie global_packet_timing_advance;
+ ispresent s_53_tag;
+ union s_53_value{
+ U8 packet_extended_timing_advance;
+ }s_53_value;
+ U8 downlink_rlc_mode;
+ U8 control_ack;
+ ispresent s_54_tag;
+ union s_54_value{
+ U8 downlink_tfi_assignment;
+ }s_54_value;
+ s_55_enum s_55_tag;
+ union s_55_value{
+ s_56 m_s_56;
+ s_58 m_s_58;
+ }s_55_value;
+ s_66_enum s_66_tag;
+ union s_66_value{
+ s_67 m_s_67;
+ dual_carrier_frequency_parameters_ie dual_carrier_frequency_parameters;
+ }s_66_value;
+ dynamic_allocation_2_struct dynamic_allocation_2;
+ ispresent s_70_tag;
+ union s_70_value{
+ U8 uplink_control_timeslot_c1;
+ }s_70_value;
+ ispresent s_71_tag;
+ union s_71_value{
+ U8 uplink_control_timeslot_c2;
+ }s_71_value;
+ ispresent s_72_tag;
+ union s_72_value{
+ U8 pfi_of_downlink_tbf;
+ }s_72_value;
+ ispresent s_73_tag;
+ union s_73_value{
+ U8 pfi_of_uplink_tbf;
+ }s_73_value;
+ ispresent s_74_tag;
+ union s_74_value{
+ U8 uplink_rlc_mode;
+ }s_74_value;
+ ispresent s_75_tag;
+ union s_75_value{
+ U8 downlink_npm_transfer_time;
+ }s_75_value;
+ ispresent s_76_tag;
+ union s_76_value{
+ U8 uplink_npm_transfer_time;
+ }s_76_value;
+ ispresent s_77_tag;
+ union s_77_value{
+ U8 event_based_fanr;
+ }s_77_value;
+ ispresent s_78_tag;
+ union s_78_value{
+ s_79 m_s_79;
+ }s_78_value;
+ egprs_level_ie uplink_egprs_level;
+ egprs_level_ie downlink_egprs_level;
+ ispresent s_82_tag;
+ union s_82_value{
+ pulse_format_ie pulse_format;
+ }s_82_value;
+}s_49;
+
+typedef struct s_23{
+ s_23_enum s_23_tag;
+ union s_23_value{
+ s_25 m_s_25;
+ s_49 m_s_49;
+ }s_23_value;
+}s_23;
+
+/* SEQUENCE packet timeslot reconfigure message content */
+typedef struct packet_timeslot_reconfigure_message_content{
+ header_struct1 header;
+ U8 msgtype;
+ U8 page_mode;
+ global_tfi_ie global_tfi;
+ packet_timeslot_reconfigure_message_content_s_3_enum packet_timeslot_reconfigure_message_content_s_3_tag;
+ union packet_timeslot_reconfigure_message_content_s_3_value{
+ packet_timeslot_reconfigure_message_content_s_5 m_packet_timeslot_reconfigure_message_content_s_5;
+ s_23 m_s_23;
+ }packet_timeslot_reconfigure_message_content_s_3_value;
+}packet_timeslot_reconfigure_message_content;
+
+typedef enum {
+ PACKET_UPLINK_ACK_NACK_MESSAGE_CONTENT_S_4,
+ PACKET_UPLINK_ACK_NACK_MESSAGE_CONTENT_S_18
+}packet_uplink_ack_nack_message_content_s_3_enum;
+
+typedef enum {
+ PACKET_UPLINK_ACK_NACK_MESSAGE_CONTENT_S_11_NULL,
+ PACKET_UPLINK_ACK_NACK_MESSAGE_CONTENT_S_11_BIT,
+ PACKET_UPLINK_ACK_NACK_MESSAGE_CONTENT_S_12
+}packet_uplink_ack_nack_message_content_s_11_enum;
+
+typedef struct packet_uplink_ack_nack_message_content_s_11_bit{
+ U16 numElements_packet_uplink_ack_nack_message_content_s_11_bit;
+ U8 * packet_uplink_ack_nack_message_content_s_11_bit;
+}packet_uplink_ack_nack_message_content_s_11_bit;
+
+typedef enum {
+ PACKET_UPLINK_ACK_NACK_MESSAGE_CONTENT_S_14_NULL,
+ PACKET_UPLINK_ACK_NACK_MESSAGE_CONTENT_S_14_BIT,
+ PACKET_UPLINK_ACK_NACK_MESSAGE_CONTENT_S_15
+}packet_uplink_ack_nack_message_content_s_14_enum;
+
+typedef struct packet_uplink_ack_nack_message_content_s_14_bit{
+ U16 numElements_packet_uplink_ack_nack_message_content_s_14_bit;
+ U8 * packet_uplink_ack_nack_message_content_s_14_bit;
+}packet_uplink_ack_nack_message_content_s_14_bit;
+
+typedef struct packet_uplink_ack_nack_message_content_s_15{
+ ispresent packet_uplink_ack_nack_message_content_s_16_tag;
+ union packet_uplink_ack_nack_message_content_s_16_value{
+ U8 contention_resolution_identifier_extension;
+ }packet_uplink_ack_nack_message_content_s_16_value;
+ ispresent packet_uplink_ack_nack_message_content_s_17_tag;
+ union packet_uplink_ack_nack_message_content_s_17_value{
+ U8 rb_id;
+ }packet_uplink_ack_nack_message_content_s_17_value;
+}packet_uplink_ack_nack_message_content_s_15;
+
+typedef struct packet_uplink_ack_nack_message_content_s_12{
+ ispresent packet_uplink_ack_nack_message_content_s_13_tag;
+ union packet_uplink_ack_nack_message_content_s_13_value{
+ U8 packet_extended_timing_advance;
+ }packet_uplink_ack_nack_message_content_s_13_value;
+ U8 tbf_est;
+ packet_uplink_ack_nack_message_content_s_14_enum packet_uplink_ack_nack_message_content_s_14_tag;
+ union packet_uplink_ack_nack_message_content_s_14_value{
+ packet_uplink_ack_nack_message_content_s_14_bit m_packet_uplink_ack_nack_message_content_s_14_bit;
+ packet_uplink_ack_nack_message_content_s_15 m_packet_uplink_ack_nack_message_content_s_15;
+ }packet_uplink_ack_nack_message_content_s_14_value;
+}packet_uplink_ack_nack_message_content_s_12;
+
+typedef struct packet_uplink_ack_nack_message_content_s_5{
+ U8 channel_coding_command;
+ ack_nack_description_ie ack_nack_description;
+ ispresent packet_uplink_ack_nack_message_content_s_6_tag;
+ union packet_uplink_ack_nack_message_content_s_6_value{
+ U32 contention_resolution_tlli;
+ }packet_uplink_ack_nack_message_content_s_6_value;
+ ispresent packet_uplink_ack_nack_message_content_s_7_tag;
+ union packet_uplink_ack_nack_message_content_s_7_value{
+ packet_timing_advance_ie packet_timing_advance;
+ }packet_uplink_ack_nack_message_content_s_7_value;
+ ispresent packet_uplink_ack_nack_message_content_s_8_tag;
+ union packet_uplink_ack_nack_message_content_s_8_value{
+ power_control_parameters_ie power_control_parameters;
+ }packet_uplink_ack_nack_message_content_s_8_value;
+ ispresent packet_uplink_ack_nack_message_content_s_9_tag;
+ union packet_uplink_ack_nack_message_content_s_9_value{
+ extension_bits_ie extension_bits;
+ }packet_uplink_ack_nack_message_content_s_9_value;
+ ispresent packet_uplink_ack_nack_message_content_s_10_tag;
+ union packet_uplink_ack_nack_message_content_s_10_value{
+ fixed_allocation_struct fixed_allocation_parameters;
+ }packet_uplink_ack_nack_message_content_s_10_value;
+ packet_uplink_ack_nack_message_content_s_11_enum packet_uplink_ack_nack_message_content_s_11_tag;
+ union packet_uplink_ack_nack_message_content_s_11_value{
+ packet_uplink_ack_nack_message_content_s_11_bit m_packet_uplink_ack_nack_message_content_s_11_bit;
+ packet_uplink_ack_nack_message_content_s_12 m_packet_uplink_ack_nack_message_content_s_12;
+ }packet_uplink_ack_nack_message_content_s_11_value;
+}packet_uplink_ack_nack_message_content_s_5;
+
+typedef struct packet_uplink_ack_nack_message_content_s_27{
+ Bool is_egprs_ack_nack_description_present; //truncation or optional
+ egprs_ack_nack_description_ie egprs_ack_nack_description;
+ Bool is_packet_uplink_ack_nack_message_content_s_28_present; //truncation or optional
+ ispresent packet_uplink_ack_nack_message_content_s_28_tag;
+ union packet_uplink_ack_nack_message_content_s_28_value{
+ fixed_allocation_struct fixed_allocation_parameters;
+ }packet_uplink_ack_nack_message_content_s_28_value;
+}packet_uplink_ack_nack_message_content_s_27;
+
+typedef enum {
+ PACKET_UPLINK_ACK_NACK_MESSAGE_CONTENT_S_29_NULL,
+ PACKET_UPLINK_ACK_NACK_MESSAGE_CONTENT_S_29_BIT,
+ PACKET_UPLINK_ACK_NACK_MESSAGE_CONTENT_S_30
+}packet_uplink_ack_nack_message_content_s_29_enum;
+
+typedef struct packet_uplink_ack_nack_message_content_s_29_bit{
+ U16 numElements_packet_uplink_ack_nack_message_content_s_29_bit;
+ U8 * packet_uplink_ack_nack_message_content_s_29_bit;
+}packet_uplink_ack_nack_message_content_s_29_bit;
+
+typedef struct packet_uplink_ack_nack_message_content_s_30{
+ ispresent packet_uplink_ack_nack_message_content_s_31_tag;
+ union packet_uplink_ack_nack_message_content_s_31_value{
+ U8 contention_resolution_identifier_extension;
+ }packet_uplink_ack_nack_message_content_s_31_value;
+ ispresent packet_uplink_ack_nack_message_content_s_32_tag;
+ union packet_uplink_ack_nack_message_content_s_32_value{
+ U8 rb_id;
+ }packet_uplink_ack_nack_message_content_s_32_value;
+}packet_uplink_ack_nack_message_content_s_30;
+
+typedef struct packet_uplink_ack_nack_message_content_s_21{
+ U8 egprs_channel_coding_command;
+ U8 resegment;
+ U8 pre_emptive_transmission;
+ U8 prr_retransmission_request;
+ U8 arac_retransmission_request;
+ ispresent packet_uplink_ack_nack_message_content_s_22_tag;
+ union packet_uplink_ack_nack_message_content_s_22_value{
+ U32 contention_resolution_tlli;
+ }packet_uplink_ack_nack_message_content_s_22_value;
+ U8 tbf_est;
+ ispresent packet_uplink_ack_nack_message_content_s_23_tag;
+ union packet_uplink_ack_nack_message_content_s_23_value{
+ packet_timing_advance_ie packet_timing_advance;
+ }packet_uplink_ack_nack_message_content_s_23_value;
+ ispresent packet_uplink_ack_nack_message_content_s_24_tag;
+ union packet_uplink_ack_nack_message_content_s_24_value{
+ U8 packet_extended_timing_advance;
+ }packet_uplink_ack_nack_message_content_s_24_value;
+ ispresent packet_uplink_ack_nack_message_content_s_25_tag;
+ union packet_uplink_ack_nack_message_content_s_25_value{
+ power_control_parameters_ie power_control_parameters;
+ }packet_uplink_ack_nack_message_content_s_25_value;
+ ispresent packet_uplink_ack_nack_message_content_s_26_tag;
+ union packet_uplink_ack_nack_message_content_s_26_value{
+ extension_bits_ie extension_bits;
+ }packet_uplink_ack_nack_message_content_s_26_value;
+ packet_uplink_ack_nack_message_content_s_27 m_packet_uplink_ack_nack_message_content_s_27; //truncation ;
+ packet_uplink_ack_nack_message_content_s_29_enum packet_uplink_ack_nack_message_content_s_29_tag;
+ union packet_uplink_ack_nack_message_content_s_29_value{
+ packet_uplink_ack_nack_message_content_s_29_bit m_packet_uplink_ack_nack_message_content_s_29_bit;
+ packet_uplink_ack_nack_message_content_s_30 m_packet_uplink_ack_nack_message_content_s_30;
+ }packet_uplink_ack_nack_message_content_s_29_value;
+}packet_uplink_ack_nack_message_content_s_21;
+
+/* SEQUENCE packet uplink ack/nack message content */
+typedef struct packet_uplink_ack_nack_message_content{
+ header_struct1 header;
+ U8 msgtype;
+ U8 page_mode;
+ U8 uplink_tfi;
+ packet_uplink_ack_nack_message_content_s_3_enum packet_uplink_ack_nack_message_content_s_3_tag;
+ union packet_uplink_ack_nack_message_content_s_3_value{
+ packet_uplink_ack_nack_message_content_s_5 m_packet_uplink_ack_nack_message_content_s_5;
+ packet_uplink_ack_nack_message_content_s_21 m_packet_uplink_ack_nack_message_content_s_21;
+ }packet_uplink_ack_nack_message_content_s_3_value;
+}packet_uplink_ack_nack_message_content;
+
+/* SEQUENCE packet tbf release message content */
+typedef struct packet_tbf_release_message_content{
+ header_struct1 header;
+ U8 msgtype;
+ U8 page_mode;
+ global_tfi_ie global_tfi;
+ U8 uplink_release;
+ U8 downlink_release;
+ U8 tbf_release_cause;
+}packet_tbf_release_message_content;
+
+typedef struct psi16_message_content_s_1{
+ cn_domain_identity_ie cn_domain_identity;
+ cn_domain_specific_drx_cycle_length_coefficient_ie cn_domain_specific_drx_cycle_length_coefficient;
+}psi16_message_content_s_1;
+
+/* SEQUENCE psi16 message content */
+typedef struct psi16_message_content{
+ header_struct1 header;
+ U8 msgtype;
+ U8 page_mode;
+ U8 psi16_change_mark;
+ U8 psi16_index;
+ U8 psi16_count;
+ gra_id_struct gra_id_list;
+ U8 iu_mode_nmo_support;
+ U8 cn_domain_list;
+ U16 numElements_m_psi16_message_content_s_1;
+ psi16_message_content_s_1 * m_psi16_message_content_s_1;
+ ispresent psi16_message_content_s_2_tag;
+ union psi16_message_content_s_2_value{
+ U16 p_3_g_lac;
+ }psi16_message_content_s_2_value;
+ ispresent psi16_message_content_s_3_tag;
+ union psi16_message_content_s_3_value{
+ U8 p_3_g_rac;
+ }psi16_message_content_s_3_value;
+ ispresent psi16_message_content_s_4_tag;
+ union psi16_message_content_s_4_value{
+ U8 gra_and_cell_update_timer;
+ }psi16_message_content_s_4_value;
+}psi16_message_content;
+
+/* SEQUENCE psi15 message content */
+typedef struct psi15_message_content{
+ header_struct1 header;
+ U8 msgtype;
+ U8 page_mode;
+ ispresent psi15_message_content_s_1_tag;
+ union psi15_message_content_s_1_value{
+ utran_frequency_list_description_struct utran_frequency_list;
+ }psi15_message_content_s_1_value;
+}psi15_message_content;
+
+typedef enum {
+ CCCH_ACCESS_INFORMATION,
+ PSI14_MESSAGE_CONTENT_S_2
+}psi14_message_content_s_1_enum;
+
+typedef struct psi14_message_content_s_2{
+ pbcch_description_struct_2 pbcch_description;
+}psi14_message_content_s_2;
+
+/* SEQUENCE psi14 message content */
+typedef struct psi14_message_content{
+ header_struct1 header;
+ U8 msgtype;
+ U8 page_mode;
+ psi14_message_content_s_1_enum psi14_message_content_s_1_tag;
+ union psi14_message_content_s_1_value{
+ ccch_access_information_struct ccch_access_information;
+ psi14_message_content_s_2 m_psi14_message_content_s_2;
+ }psi14_message_content_s_1_value;
+}psi14_message_content;
+
+typedef struct psi13_message_content_s_2{
+ U8 si13_change_mark;
+ gprs_mobile_allocation_ie gprs_mobile_allocation;
+}psi13_message_content_s_2;
+
+typedef enum {
+ PSI13_MESSAGE_CONTENT_S_4,
+ PSI13_MESSAGE_CONTENT_S_5
+}psi13_message_content_s_3_enum;
+
+typedef struct psi13_message_content_s_4{
+ U8 rac;
+ U8 spgc_ccch_sup;
+ U8 priority_access_thr;
+ U8 network_control_order;
+ gprs_cell_options_ie gprs_cell_options;
+ gprs_power_control_parameters_struct gprs_power_control_parameters;
+}psi13_message_content_s_4;
+
+typedef struct psi13_message_content_s_5{
+ U8 psi1_repeat_period;
+ pbcch_description_struct pbcch_description;
+}psi13_message_content_s_5;
+
+typedef enum {
+ PSI13_MESSAGE_CONTENT_S_6_NULL,
+ PSI13_MESSAGE_CONTENT_S_6_BIT,
+ PSI13_MESSAGE_CONTENT_S_7
+}psi13_message_content_s_6_enum;
+
+typedef struct psi13_message_content_s_6_bit{
+ U16 numElements_psi13_message_content_s_6_bit;
+ U8 * psi13_message_content_s_6_bit;
+}psi13_message_content_s_6_bit;
+
+typedef enum {
+ PSI13_MESSAGE_CONTENT_S_8_NULL,
+ PSI13_MESSAGE_CONTENT_S_8_BIT,
+ PSI13_MESSAGE_CONTENT_S_9
+}psi13_message_content_s_8_enum;
+
+typedef struct psi13_message_content_s_8_bit{
+ U16 numElements_psi13_message_content_s_8_bit;
+ U8 * psi13_message_content_s_8_bit;
+}psi13_message_content_s_8_bit;
+
+typedef enum {
+ PSI13_MESSAGE_CONTENT_S_10_NULL,
+ PSI13_MESSAGE_CONTENT_S_10_BIT,
+ PSI13_MESSAGE_CONTENT_S_11
+}psi13_message_content_s_10_enum;
+
+typedef struct psi13_message_content_s_10_bit{
+ U16 numElements_psi13_message_content_s_10_bit;
+ U8 * psi13_message_content_s_10_bit;
+}psi13_message_content_s_10_bit;
+
+typedef struct psi13_message_content_s_11{
+ ispresent psi13_message_content_s_12_tag;
+ union psi13_message_content_s_12_value{
+ U8 lb_ms_txpwr_max_cch;
+ }psi13_message_content_s_12_value;
+ U8 si2n_support;
+}psi13_message_content_s_11;
+
+typedef struct psi13_message_content_s_9{
+ U8 si_status_ind;
+ psi13_message_content_s_10_enum psi13_message_content_s_10_tag;
+ union psi13_message_content_s_10_value{
+ psi13_message_content_s_10_bit m_psi13_message_content_s_10_bit;
+ psi13_message_content_s_11 m_psi13_message_content_s_11;
+ }psi13_message_content_s_10_value;
+}psi13_message_content_s_9;
+
+typedef struct psi13_message_content_s_7{
+ U8 sgsnr;
+ psi13_message_content_s_8_enum psi13_message_content_s_8_tag;
+ union psi13_message_content_s_8_value{
+ psi13_message_content_s_8_bit m_psi13_message_content_s_8_bit;
+ psi13_message_content_s_9 m_psi13_message_content_s_9;
+ }psi13_message_content_s_8_value;
+}psi13_message_content_s_7;
+
+/* SEQUENCE psi13 message content */
+typedef struct psi13_message_content{
+ header_struct1 header;
+ U8 msgtype;
+ U8 page_mode;
+ U8 bcch_change_mark;
+ U8 si_change_field;
+ ispresent psi13_message_content_s_1_tag;
+ union psi13_message_content_s_1_value{
+ psi13_message_content_s_2 m_psi13_message_content_s_2;
+ }psi13_message_content_s_1_value;
+ psi13_message_content_s_3_enum psi13_message_content_s_3_tag;
+ union psi13_message_content_s_3_value{
+ psi13_message_content_s_4 m_psi13_message_content_s_4;
+ psi13_message_content_s_5 m_psi13_message_content_s_5;
+ }psi13_message_content_s_3_value;
+ psi13_message_content_s_6_enum psi13_message_content_s_6_tag;
+ union psi13_message_content_s_6_value{
+ psi13_message_content_s_6_bit m_psi13_message_content_s_6_bit;
+ psi13_message_content_s_7 m_psi13_message_content_s_7;
+ }psi13_message_content_s_6_value;
+}psi13_message_content;
+
+typedef enum {
+ PSI8_MESSAGE_CONTENT_S_2_NULL,
+ PSI8_MESSAGE_CONTENT_S_2_BIT,
+ PSI8_MESSAGE_CONTENT_S_3
+}psi8_message_content_s_2_enum;
+
+typedef struct psi8_message_content_s_2_bit{
+ U16 numElements_psi8_message_content_s_2_bit;
+ U8 * psi8_message_content_s_2_bit;
+}psi8_message_content_s_2_bit;
+
+typedef struct psi8_message_content_s_3{
+ ispresent psi8_message_content_s_4_tag;
+ union psi8_message_content_s_4_value{
+ dynamic_arfcn_mapping_description_struct dynamic_arfcn_mapping_description;
+ }psi8_message_content_s_4_value;
+}psi8_message_content_s_3;
+
+/* SEQUENCE psi8 message content */
+typedef struct psi8_message_content{
+ header_struct1 header;
+ U8 msgtype;
+ U8 page_mode;
+ U8 psi8_change_mark;
+ U8 psi8_index;
+ U8 psi8_count;
+ ispresent psi8_message_content_s_1_tag;
+ union psi8_message_content_s_1_value{
+ cbch_channel_description_struct cbch_channel_description;
+ }psi8_message_content_s_1_value;
+ psi8_message_content_s_2_enum psi8_message_content_s_2_tag;
+ union psi8_message_content_s_2_value{
+ psi8_message_content_s_2_bit m_psi8_message_content_s_2_bit;
+ psi8_message_content_s_3 m_psi8_message_content_s_3;
+ }psi8_message_content_s_2_value;
+}psi8_message_content;
+
+typedef struct psi7_message_content_s_2{
+ Bool is_nongsm_message_present; //truncation or optional
+ U16 numElements_nongsm_message;
+ nongsm_message_struct * nongsm_message;
+ Bool is_psi7_message_content_s_3_present; //truncation or optional
+}psi7_message_content_s_2;
+
+/* SEQUENCE psi7 message content */
+typedef struct psi7_message_content{
+ header_struct1 header;
+ U8 msgtype;
+ U8 page_mode;
+ U8 psi6_change_mark;
+ U8 psi6_index;
+ U8 psi6_count;
+ psi7_message_content_s_2 m_psi7_message_content_s_2; //truncation ;
+}psi7_message_content;
+
+typedef struct psi6_message_content_s_2{
+ Bool is_nongsm_message_present; //truncation or optional
+ U16 numElements_nongsm_message;
+ nongsm_message_struct * nongsm_message;
+ Bool is_psi6_message_content_s_3_present; //truncation or optional
+}psi6_message_content_s_2;
+
+/* SEQUENCE psi6 message content */
+typedef struct psi6_message_content{
+ header_struct1 header;
+ U8 msgtype;
+ U8 page_mode;
+ U8 psi6_change_mark;
+ U8 psi6_index;
+ U8 psi6_count;
+ psi6_message_content_s_2 m_psi6_message_content_s_2; //truncation ;
+}psi6_message_content;
+
+/* SEQUENCE psi4 message content */
+typedef struct psi4_message_content{
+ header_struct1 header;
+ U8 msgtype;
+ U8 page_mode;
+ U8 psi4_change_mark;
+ U8 psi4_index;
+ U8 psi4_count;
+ channel_list_struct int_meas_channel_list;
+}psi4_message_content;
+
+typedef enum {
+ PSI3_QUATER_MESSAGE_CONTENT_S_6_NULL,
+ PSI3_QUATER_MESSAGE_CONTENT_S_7,
+ PSI3_QUATER_MESSAGE_CONTENT_S_8
+}psi3_quater_message_content_s_6_enum;
+
+typedef struct psi3_quater_message_content_s_7{
+ U16 numElements_psi3_quater_message_content_s_7_bit;
+ U8 * psi3_quater_message_content_s_7_bit;
+}psi3_quater_message_content_s_7;
+
+typedef enum {
+ PSI3_QUATER_MESSAGE_CONTENT_S_11_NULL,
+ PSI3_QUATER_MESSAGE_CONTENT_S_11_BIT,
+ PSI3_QUATER_MESSAGE_CONTENT_S_12
+}psi3_quater_message_content_s_11_enum;
+
+typedef struct psi3_quater_message_content_s_11_bit{
+ U16 numElements_psi3_quater_message_content_s_11_bit;
+ U8 * psi3_quater_message_content_s_11_bit;
+}psi3_quater_message_content_s_11_bit;
+
+typedef struct psi3_quater_message_content_s_12{
+ U8 p_3_g_ccn_active;
+}psi3_quater_message_content_s_12;
+
+typedef struct psi3_quater_message_content_s_8{
+ ispresent psi3_quater_message_content_s_9_tag;
+ union psi3_quater_message_content_s_9_value{
+ gprs_3_g_additional_measurement_parameters_description_struct gprs_3_g_additional_measurement_parameters_description;
+ }psi3_quater_message_content_s_9_value;
+ ispresent psi3_quater_message_content_s_10_tag;
+ union psi3_quater_message_content_s_10_value{
+ gprs_3_g_additional_measurement_parameters_description_2_struct gprs_3_g_additional_measurement_parameters_description_2;
+ }psi3_quater_message_content_s_10_value;
+ psi3_quater_message_content_s_11_enum psi3_quater_message_content_s_11_tag;
+ union psi3_quater_message_content_s_11_value{
+ psi3_quater_message_content_s_11_bit m_psi3_quater_message_content_s_11_bit;
+ psi3_quater_message_content_s_12 m_psi3_quater_message_content_s_12;
+ }psi3_quater_message_content_s_11_value;
+}psi3_quater_message_content_s_8;
+
+typedef struct psi3_quater_message_content_s_1{
+ Bool is_psi3_quater_message_content_s_2_present; //truncation or optional
+ ispresent psi3_quater_message_content_s_2_tag;
+ union psi3_quater_message_content_s_2_value{
+ gprs_rep_priority_description_struct gprs_rep_priority_description;
+ }psi3_quater_message_content_s_2_value;
+ Bool is_psi3_quater_message_content_s_3_present; //truncation or optional
+ ispresent psi3_quater_message_content_s_3_tag;
+ union psi3_quater_message_content_s_3_value{
+ p_3_g_neighbour_cell_description_struct p_3_g_neighbour_cells_description;
+ }psi3_quater_message_content_s_3_value;
+ Bool is_psi3_quater_message_content_s_4_present; //truncation or optional
+ ispresent psi3_quater_message_content_s_4_tag;
+ union psi3_quater_message_content_s_4_value{
+ p_3_g_measurement_parameters_description_struct p_3_g_measurement_parameters_description;
+ }psi3_quater_message_content_s_4_value;
+ Bool is_psi3_quater_message_content_s_5_present; //truncation or optional
+ ispresent psi3_quater_message_content_s_5_tag;
+ union psi3_quater_message_content_s_5_value{
+ p_3_g_initial_dedicated_mode_reporting_description_struct p_3_g_initial_dedicated_mode_reporting_description;
+ }psi3_quater_message_content_s_5_value;
+ Bool is_psi3_quater_message_content_s_6_present; //truncation or optional
+ psi3_quater_message_content_s_6_enum psi3_quater_message_content_s_6_tag;
+ union psi3_quater_message_content_s_6_value{
+ psi3_quater_message_content_s_7 m_psi3_quater_message_content_s_7;
+ psi3_quater_message_content_s_8 m_psi3_quater_message_content_s_8;
+ }psi3_quater_message_content_s_6_value;
+}psi3_quater_message_content_s_1;
+
+/* SEQUENCE psi3 quater message content */
+typedef struct psi3_quater_message_content{
+ header_struct1 header;
+ U8 msgtype;
+ U8 page_mode;
+ U8 psi3_change_mark;
+ U8 psi3_quater_index;
+ U8 psi3_quater_count;
+ psi3_quater_message_content_s_1 m_psi3_quater_message_content_s_1; //truncation ;
+}psi3_quater_message_content;
+
+typedef struct psi3_ter_message_content_s_1{
+ Bool is_psi3_ter_message_content_s_2_present; //truncation or optional
+ ispresent psi3_ter_message_content_s_2_tag;
+ union psi3_ter_message_content_s_2_value{
+ real_time_difference_description_struct real_time_difference_description;
+ }psi3_ter_message_content_s_2_value;
+ Bool is_psi3_ter_message_content_s_3_present; //truncation or optional
+ ispresent psi3_ter_message_content_s_3_tag;
+ union psi3_ter_message_content_s_3_value{
+ gprs_rep_priority_description_struct gprs_rep_priority_description;
+ }psi3_ter_message_content_s_3_value;
+}psi3_ter_message_content_s_1;
+
+/* SEQUENCE psi3 ter message content */
+typedef struct psi3_ter_message_content{
+ header_struct1 header;
+ U8 msgtype;
+ U8 page_mode;
+ U8 psi3_change_mark;
+ U8 psi3_ter_index;
+ U8 psi3_ter_count;
+ psi3_ter_message_content_s_1 m_psi3_ter_message_content_s_1; //truncation ;
+}psi3_ter_message_content;
+
+typedef enum {
+ PSI3_BIS_MESSAGE_CONTENT_S_4_NULL,
+ PSI3_BIS_MESSAGE_CONTENT_S_4_BIT,
+ PSI3_BIS_MESSAGE_CONTENT_S_5
+}psi3_bis_message_content_s_4_enum;
+
+typedef struct psi3_bis_message_content_s_4_bit{
+ U16 numElements_psi3_bis_message_content_s_4_bit;
+ U8 * psi3_bis_message_content_s_4_bit;
+}psi3_bis_message_content_s_4_bit;
+
+typedef enum {
+ PSI3_BIS_MESSAGE_CONTENT_S_7_NULL,
+ PSI3_BIS_MESSAGE_CONTENT_S_7_BIT,
+ PSI3_BIS_MESSAGE_CONTENT_S_8
+}psi3_bis_message_content_s_7_enum;
+
+typedef struct psi3_bis_message_content_s_7_bit{
+ U16 numElements_psi3_bis_message_content_s_7_bit;
+ U8 * psi3_bis_message_content_s_7_bit;
+}psi3_bis_message_content_s_7_bit;
+
+typedef enum {
+ PSI3_BIS_MESSAGE_CONTENT_S_10_NULL,
+ PSI3_BIS_MESSAGE_CONTENT_S_10_BIT,
+ PSI3_BIS_MESSAGE_CONTENT_S_11
+}psi3_bis_message_content_s_10_enum;
+
+typedef struct psi3_bis_message_content_s_10_bit{
+ U16 numElements_psi3_bis_message_content_s_10_bit;
+ U8 * psi3_bis_message_content_s_10_bit;
+}psi3_bis_message_content_s_10_bit;
+
+typedef enum {
+ PSI3_BIS_MESSAGE_CONTENT_S_13_NULL,
+ PSI3_BIS_MESSAGE_CONTENT_S_13_BIT,
+ PSI3_BIS_MESSAGE_CONTENT_S_14
+}psi3_bis_message_content_s_13_enum;
+
+typedef struct psi3_bis_message_content_s_13_bit{
+ U16 numElements_psi3_bis_message_content_s_13_bit;
+ U8 * psi3_bis_message_content_s_13_bit;
+}psi3_bis_message_content_s_13_bit;
+
+typedef struct psi3_bis_message_content_s_14{
+ U16 numElements_m_iu_mode_neighbour_cell_params_struct;
+ iu_mode_neighbour_cell_params_struct * m_iu_mode_neighbour_cell_params_struct;
+ U16 numElements_m_iu_mode_only_neighbour_cell_params_struct;
+ iu_mode_only_neighbour_cell_params_struct * m_iu_mode_only_neighbour_cell_params_struct;
+}psi3_bis_message_content_s_14;
+
+typedef struct psi3_bis_message_content_s_11{
+ ispresent psi3_bis_message_content_s_12_tag;
+ union psi3_bis_message_content_s_12_value{
+ ccn_support_description_struct ccn_support_description;
+ }psi3_bis_message_content_s_12_value;
+ psi3_bis_message_content_s_13_enum psi3_bis_message_content_s_13_tag;
+ union psi3_bis_message_content_s_13_value{
+ psi3_bis_message_content_s_13_bit m_psi3_bis_message_content_s_13_bit;
+ psi3_bis_message_content_s_14 m_psi3_bis_message_content_s_14;
+ }psi3_bis_message_content_s_13_value;
+}psi3_bis_message_content_s_11;
+
+typedef struct psi3_bis_message_content_s_8{
+ U16 numElements_m_compact_neighbour_cell_params_2_struct;
+ compact_neighbour_cell_params_2_struct * m_compact_neighbour_cell_params_2_struct;
+ psi3_bis_message_content_s_10_enum psi3_bis_message_content_s_10_tag;
+ union psi3_bis_message_content_s_10_value{
+ psi3_bis_message_content_s_10_bit m_psi3_bis_message_content_s_10_bit;
+ psi3_bis_message_content_s_11 m_psi3_bis_message_content_s_11;
+ }psi3_bis_message_content_s_10_value;
+}psi3_bis_message_content_s_8;
+
+typedef struct psi3_bis_message_content_s_5{
+ ispresent psi3_bis_message_content_s_6_tag;
+ union psi3_bis_message_content_s_6_value{
+ lsa_parameters_ie lsa_parameters;
+ }psi3_bis_message_content_s_6_value;
+ psi3_bis_message_content_s_7_enum psi3_bis_message_content_s_7_tag;
+ union psi3_bis_message_content_s_7_value{
+ psi3_bis_message_content_s_7_bit m_psi3_bis_message_content_s_7_bit;
+ psi3_bis_message_content_s_8 m_psi3_bis_message_content_s_8;
+ }psi3_bis_message_content_s_7_value;
+}psi3_bis_message_content_s_5;
+
+typedef struct psi3_bis_message_content_s_1{
+ Bool is_neighbour_cell_parameters_present; //truncation or optional
+ U16 numElements_m_neighbour_cell_params_struct;
+ neighbour_cell_params_struct * m_neighbour_cell_params_struct;
+ Bool is_neighbour_cell_parameters_2_present; //truncation or optional
+ U16 numElements_m_neighbour_cell_params_2_struct;
+ neighbour_cell_params_2_struct * m_neighbour_cell_params_2_struct;
+ Bool is_psi3_bis_message_content_s_4_present; //truncation or optional
+ psi3_bis_message_content_s_4_enum psi3_bis_message_content_s_4_tag;
+ union psi3_bis_message_content_s_4_value{
+ psi3_bis_message_content_s_4_bit m_psi3_bis_message_content_s_4_bit;
+ psi3_bis_message_content_s_5 m_psi3_bis_message_content_s_5;
+ }psi3_bis_message_content_s_4_value;
+}psi3_bis_message_content_s_1;
+
+/* SEQUENCE psi3 bis message content */
+typedef struct psi3_bis_message_content{
+ header_struct1 header;
+ U8 msgtype;
+ U8 page_mode;
+ U8 psi3_change_mark;
+ U8 psi3_bis_index;
+ U8 psi3_bis_count;
+ psi3_bis_message_content_s_1 m_psi3_bis_message_content_s_1; //truncation ;
+}psi3_bis_message_content;
+
+typedef enum {
+ PSI3_MESSAGE_CONTENT_S_2_NULL,
+ PSI3_MESSAGE_CONTENT_S_2_BIT,
+ PSI3_MESSAGE_CONTENT_S_3
+}psi3_message_content_s_2_enum;
+
+typedef struct psi3_message_content_s_2_bit{
+ U16 numElements_psi3_message_content_s_2_bit;
+ U8 * psi3_message_content_s_2_bit;
+}psi3_message_content_s_2_bit;
+
+typedef enum {
+ PSI3_MESSAGE_CONTENT_S_5_NULL,
+ PSI3_MESSAGE_CONTENT_S_5_BIT,
+ PSI3_MESSAGE_CONTENT_S_6
+}psi3_message_content_s_5_enum;
+
+typedef struct psi3_message_content_s_5_bit{
+ U16 numElements_psi3_message_content_s_5_bit;
+ U8 * psi3_message_content_s_5_bit;
+}psi3_message_content_s_5_bit;
+
+typedef enum {
+ PSI3_MESSAGE_CONTENT_S_8_NULL,
+ PSI3_MESSAGE_CONTENT_S_8_BIT,
+ PSI3_MESSAGE_CONTENT_S_9
+}psi3_message_content_s_8_enum;
+
+typedef struct psi3_message_content_s_8_bit{
+ U16 numElements_psi3_message_content_s_8_bit;
+ U8 * psi3_message_content_s_8_bit;
+}psi3_message_content_s_8_bit;
+
+typedef enum {
+ PSI3_MESSAGE_CONTENT_S_11_NULL,
+ PSI3_MESSAGE_CONTENT_S_11_BIT,
+ PSI3_MESSAGE_CONTENT_S_12
+}psi3_message_content_s_11_enum;
+
+typedef struct psi3_message_content_s_11_bit{
+ U16 numElements_psi3_message_content_s_11_bit;
+ U8 * psi3_message_content_s_11_bit;
+}psi3_message_content_s_11_bit;
+
+typedef struct psi3_message_content_s_12{
+ U8 cell_bar_qualify_3;
+ U16 numElements_m_iu_mode_neighbour_cell_params_struct;
+ iu_mode_neighbour_cell_params_struct * m_iu_mode_neighbour_cell_params_struct;
+ U16 numElements_m_iu_mode_only_neighbour_cell_params_struct;
+ iu_mode_only_neighbour_cell_params_struct * m_iu_mode_only_neighbour_cell_params_struct;
+}psi3_message_content_s_12;
+
+typedef struct psi3_message_content_s_9{
+ ispresent psi3_message_content_s_10_tag;
+ union psi3_message_content_s_10_value{
+ ccn_support_description_struct ccn_support_description;
+ }psi3_message_content_s_10_value;
+ psi3_message_content_s_11_enum psi3_message_content_s_11_tag;
+ union psi3_message_content_s_11_value{
+ psi3_message_content_s_11_bit m_psi3_message_content_s_11_bit;
+ psi3_message_content_s_12 m_psi3_message_content_s_12;
+ }psi3_message_content_s_11_value;
+}psi3_message_content_s_9;
+
+typedef struct psi3_message_content_s_6{
+ ispresent psi3_message_content_s_7_tag;
+ union psi3_message_content_s_7_value{
+ compact_information_struct compact_information;
+ }psi3_message_content_s_7_value;
+ psi3_message_content_s_8_enum psi3_message_content_s_8_tag;
+ union psi3_message_content_s_8_value{
+ psi3_message_content_s_8_bit m_psi3_message_content_s_8_bit;
+ psi3_message_content_s_9 m_psi3_message_content_s_9;
+ }psi3_message_content_s_8_value;
+}psi3_message_content_s_6;
+
+typedef struct psi3_message_content_s_3{
+ lsa_id_information_struct serving_cell_lsa_id_information;
+ ispresent psi3_message_content_s_4_tag;
+ union psi3_message_content_s_4_value{
+ lsa_parameters_ie lsa_parameters;
+ }psi3_message_content_s_4_value;
+ psi3_message_content_s_5_enum psi3_message_content_s_5_tag;
+ union psi3_message_content_s_5_value{
+ psi3_message_content_s_5_bit m_psi3_message_content_s_5_bit;
+ psi3_message_content_s_6 m_psi3_message_content_s_6;
+ }psi3_message_content_s_5_value;
+}psi3_message_content_s_3;
+
+/* SEQUENCE psi3 message content */
+typedef struct psi3_message_content{
+ header_struct1 header;
+ U8 msgtype;
+ U8 page_mode;
+ U8 psi3_change_mark;
+ U8 psi3_bis_count;
+ serving_cell_params_struct_1 serving_cell_parameters;
+ gen_cell_sel_struct general_cell_selection_parameter;
+ U16 numElements_m_neighbour_cell_params_struct;
+ neighbour_cell_params_struct * m_neighbour_cell_params_struct;
+ psi3_message_content_s_2_enum psi3_message_content_s_2_tag;
+ union psi3_message_content_s_2_value{
+ psi3_message_content_s_2_bit m_psi3_message_content_s_2_bit;
+ psi3_message_content_s_3 m_psi3_message_content_s_3;
+ }psi3_message_content_s_2_value;
+}psi3_message_content;
+
+typedef enum {
+ PSI1_MESSAGE_CONTENT_S_2_NULL,
+ PSI1_MESSAGE_CONTENT_CONCAT_0,
+ PSI1_MESSAGE_CONTENT_S_3
+}psi1_message_content_s_2_enum;
+
+typedef enum {
+ PSI1_MESSAGE_CONTENT_S_4_NULL,
+ PSI1_MESSAGE_CONTENT_CONCAT_01,
+ PSI1_MESSAGE_CONTENT_S_5
+}psi1_message_content_s_4_enum;
+
+typedef struct psi1_message_content_s_5{
+ ispresent psi1_message_content_s_6_tag;
+ union psi1_message_content_s_6_value{
+ U8 lb_ms_txpwr_max_cch;
+ }psi1_message_content_s_6_value;
+}psi1_message_content_s_5;
+
+typedef struct psi1_message_content_s_3{
+ U8 mscr;
+ U8 sgsnr;
+ U8 band_indicator;
+ psi1_message_content_s_4_enum psi1_message_content_s_4_tag;
+ union psi1_message_content_s_4_value{
+ psi1_message_content_s_5 m_psi1_message_content_s_5;
+ }psi1_message_content_s_4_value;
+}psi1_message_content_s_3;
+
+/* SEQUENCE psi1 message content */
+typedef struct psi1_message_content{
+ header_struct1 header;
+ U8 msgtype;
+ U8 page_mode;
+ U8 pbcch_change_mark;
+ U8 psi_change_field;
+ U8 psi1_repeat_period;
+ U8 psi_count_lr;
+ ispresent psi1_message_content_s_1_tag;
+ union psi1_message_content_s_1_value{
+ U8 psi_count_hr;
+ }psi1_message_content_s_1_value;
+ U8 measurement_order;
+ gprs_cell_options_ie gprs_cell_options;
+ prach_control_parameters_ie prach_control_parameters;
+ pccch_organization_parameters_ie pccch_organization_parameters;
+ global_power_control_parameters_ie global_power_control_parameters;
+ U8 psi_status_ind;
+ psi1_message_content_s_2_enum psi1_message_content_s_2_tag;
+ union psi1_message_content_s_2_value{
+ psi1_message_content_s_3 m_psi1_message_content_s_3;
+ }psi1_message_content_s_2_value;
+}psi1_message_content;
+
+/* SEQUENCE packet serving cell data message content */
+typedef struct packet_serving_cell_data_message_content{
+ header_struct1 header;
+ U8 msgtype;
+ U8 page_mode;
+ global_tfi_ie global_tfi;
+ U8 spare;
+ U8 container_index;
+ U16 numElements_container;
+ container_repetition_struct * container;
+}packet_serving_cell_data_message_content;
+
+/* SEQUENCE packet queueing notification message content */
+typedef struct packet_queueing_notification_message_content{
+ header_struct1 header;
+ U8 msgtype;
+ U8 page_mode;
+ packet_request_reference_ie packet_request_reference;
+ U16 tqi;
+}packet_queueing_notification_message_content;
+
+/* SEQUENCE packet prach parameters message content */
+typedef struct packet_prach_parameters_message_content{
+ header_struct1 header;
+ U8 msgtype;
+ U8 page_mode;
+ prach_control_parameters_ie prach_control_parameters;
+}packet_prach_parameters_message_content;
+
+typedef enum {
+ PACKET_POWER_CONTROL_TIMING_ADVANCE_MESSAGE_CONTENT_GLOBAL_TFI,
+ TQI,
+ PACKET_POWER_CONTROL_TIMING_ADVANCE_MESSAGE_CONTENT_PACKET_REQUEST_REFERENCE
+}packet_power_control_timing_advance_message_content_s_3_enum;
+
+typedef enum {
+ PACKET_POWER_CONTROL_TIMING_ADVANCE_MESSAGE_CONTENT_S_10,
+ PACKET_POWER_CONTROL_TIMING_ADVANCE_MESSAGE_CONTENT_S_11
+}packet_power_control_timing_advance_message_content_s_9_enum;
+
+typedef struct packet_power_control_timing_advance_message_content_s_10{
+ global_packet_timing_advance_ie global_packet_timing_advance;
+ power_control_parameters_ie power_control_parameters;
+}packet_power_control_timing_advance_message_content_s_10;
+
+typedef enum {
+ GLOBAL_PACKET_TIMING_ADVANCE,
+ PACKET_POWER_CONTROL_TIMING_ADVANCE_MESSAGE_CONTENT_POWER_CONTROL_PARAMETERS
+}packet_power_control_timing_advance_message_content_s_11_enum;
+
+typedef struct packet_power_control_timing_advance_message_content_s_11{
+ packet_power_control_timing_advance_message_content_s_11_enum packet_power_control_timing_advance_message_content_s_11_tag;
+ union packet_power_control_timing_advance_message_content_s_11_value{
+ global_packet_timing_advance_ie global_packet_timing_advance;
+ power_control_parameters_ie power_control_parameters;
+ }packet_power_control_timing_advance_message_content_s_11_value;
+}packet_power_control_timing_advance_message_content_s_11;
+
+typedef enum {
+ PACKET_POWER_CONTROL_TIMING_ADVANCE_MESSAGE_CONTENT_S_12_NULL,
+ PACKET_POWER_CONTROL_TIMING_ADVANCE_MESSAGE_CONTENT_S_12_BIT,
+ PACKET_POWER_CONTROL_TIMING_ADVANCE_MESSAGE_CONTENT_S_13
+}packet_power_control_timing_advance_message_content_s_12_enum;
+
+typedef struct packet_power_control_timing_advance_message_content_s_12_bit{
+ U16 numElements_packet_power_control_timing_advance_message_content_s_12_bit;
+ U8 * packet_power_control_timing_advance_message_content_s_12_bit;
+}packet_power_control_timing_advance_message_content_s_12_bit;
+
+typedef enum {
+ PACKET_POWER_CONTROL_TIMING_ADVANCE_MESSAGE_CONTENT_S_15_NULL,
+ PACKET_POWER_CONTROL_TIMING_ADVANCE_MESSAGE_CONTENT_S_15_BIT,
+ PACKET_POWER_CONTROL_TIMING_ADVANCE_MESSAGE_CONTENT_S_16
+}packet_power_control_timing_advance_message_content_s_15_enum;
+
+typedef struct packet_power_control_timing_advance_message_content_s_15_bit{
+ U16 numElements_packet_power_control_timing_advance_message_content_s_15_bit;
+ U8 * packet_power_control_timing_advance_message_content_s_15_bit;
+}packet_power_control_timing_advance_message_content_s_15_bit;
+
+typedef struct packet_power_control_timing_advance_message_content_s_16{
+ ispresent packet_power_control_timing_advance_message_content_s_17_tag;
+ union packet_power_control_timing_advance_message_content_s_17_value{
+ U8 carrier_identification;
+ }packet_power_control_timing_advance_message_content_s_17_value;
+}packet_power_control_timing_advance_message_content_s_16;
+
+typedef struct packet_power_control_timing_advance_message_content_s_13{
+ ispresent packet_power_control_timing_advance_message_content_s_14_tag;
+ union packet_power_control_timing_advance_message_content_s_14_value{
+ U8 packet_extended_timing_advance;
+ }packet_power_control_timing_advance_message_content_s_14_value;
+ packet_power_control_timing_advance_message_content_s_15_enum packet_power_control_timing_advance_message_content_s_15_tag;
+ union packet_power_control_timing_advance_message_content_s_15_value{
+ packet_power_control_timing_advance_message_content_s_15_bit m_packet_power_control_timing_advance_message_content_s_15_bit;
+ packet_power_control_timing_advance_message_content_s_16 m_packet_power_control_timing_advance_message_content_s_16;
+ }packet_power_control_timing_advance_message_content_s_15_value;
+}packet_power_control_timing_advance_message_content_s_13;
+
+/* SEQUENCE packet power control/timing advance message content */
+typedef struct packet_power_control_timing_advance_message_content{
+ header_struct1 header;
+ U8 msgtype;
+ U8 page_mode;
+ packet_power_control_timing_advance_message_content_s_3_enum packet_power_control_timing_advance_message_content_s_3_tag;
+ union packet_power_control_timing_advance_message_content_s_3_value{
+ global_tfi_ie global_tfi;
+ U16 tqi;
+ packet_request_reference_ie packet_request_reference;
+ }packet_power_control_timing_advance_message_content_s_3_value;
+ ispresent packet_power_control_timing_advance_message_content_s_8_tag;
+ union packet_power_control_timing_advance_message_content_s_8_value{
+ global_power_control_parameters_ie global_power_control_parameters;
+ }packet_power_control_timing_advance_message_content_s_8_value;
+ packet_power_control_timing_advance_message_content_s_9_enum packet_power_control_timing_advance_message_content_s_9_tag;
+ union packet_power_control_timing_advance_message_content_s_9_value{
+ packet_power_control_timing_advance_message_content_s_10 m_packet_power_control_timing_advance_message_content_s_10;
+ packet_power_control_timing_advance_message_content_s_11 m_packet_power_control_timing_advance_message_content_s_11;
+ }packet_power_control_timing_advance_message_content_s_9_value;
+ packet_power_control_timing_advance_message_content_s_12_enum packet_power_control_timing_advance_message_content_s_12_tag;
+ union packet_power_control_timing_advance_message_content_s_12_value{
+ packet_power_control_timing_advance_message_content_s_12_bit m_packet_power_control_timing_advance_message_content_s_12_bit;
+ packet_power_control_timing_advance_message_content_s_13 m_packet_power_control_timing_advance_message_content_s_13;
+ }packet_power_control_timing_advance_message_content_s_12_value;
+}packet_power_control_timing_advance_message_content;
+
+typedef enum {
+ PACKET_POLLING_REQUEST_MESSAGE_CONTENT_GLOBAL_TFI,
+ PACKET_POLLING_REQUEST_MESSAGE_CONTENT_TLLI___G_RNTI,
+ PACKET_POLLING_REQUEST_MESSAGE_CONTENT_TQI
+}packet_polling_request_message_content_s_3_enum;
+
+typedef enum {
+ PACKET_POLLING_REQUEST_MESSAGE_CONTENT_S_6_NULL,
+ PACKET_POLLING_REQUEST_MESSAGE_CONTENT_S_6_BIT,
+ PACKET_POLLING_REQUEST_MESSAGE_CONTENT_S_7
+}packet_polling_request_message_content_s_6_enum;
+
+typedef struct packet_polling_request_message_content_s_6_bit{
+ U16 numElements_packet_polling_request_message_content_s_6_bit;
+ U8 * packet_polling_request_message_content_s_6_bit;
+}packet_polling_request_message_content_s_6_bit;
+
+typedef struct packet_polling_request_message_content_s_7{
+ ispresent packet_polling_request_message_content_s_8_tag;
+ union packet_polling_request_message_content_s_8_value{
+ U8 g_rnti_extension;
+ }packet_polling_request_message_content_s_8_value;
+}packet_polling_request_message_content_s_7;
+
+/* SEQUENCE packet polling request message content */
+typedef struct packet_polling_request_message_content{
+ header_struct1 header;
+ U8 msgtype;
+ U8 page_mode;
+ packet_polling_request_message_content_s_3_enum packet_polling_request_message_content_s_3_tag;
+ union packet_polling_request_message_content_s_3_value{
+ global_tfi_ie global_tfi;
+ U32 tlli___g_rnti;
+ U16 tqi;
+ }packet_polling_request_message_content_s_3_value;
+ U8 type_of_ack;
+ packet_polling_request_message_content_s_6_enum packet_polling_request_message_content_s_6_tag;
+ union packet_polling_request_message_content_s_6_value{
+ packet_polling_request_message_content_s_6_bit m_packet_polling_request_message_content_s_6_bit;
+ packet_polling_request_message_content_s_7 m_packet_polling_request_message_content_s_7;
+ }packet_polling_request_message_content_s_6_value;
+}packet_polling_request_message_content;
+
+/* SEQUENCE packet pdch release message content */
+typedef struct packet_pdch_release_message_content{
+ header_struct1 header;
+ U8 msgtype;
+ U8 page_mode;
+ U8 timeslots_available;
+}packet_pdch_release_message_content;
+
+typedef enum {
+ PACKET_PAGING_REQUEST_MESSAGE_CONTENT_S_5_NULL,
+ PACKET_PAGING_REQUEST_MESSAGE_CONTENT_S_5_BIT,
+ PACKET_PAGING_REQUEST_MESSAGE_CONTENT_S_6
+}packet_paging_request_message_content_s_5_enum;
+
+typedef struct packet_paging_request_message_content_s_5_bit{
+ U16 numElements_packet_paging_request_message_content_s_5_bit;
+ U8 * packet_paging_request_message_content_s_5_bit;
+}packet_paging_request_message_content_s_5_bit;
+
+typedef struct packet_paging_request_message_content_s_6{
+ U16 numElements_repeated_iu_page_info;
+ repeated_iu_page_info_struct * repeated_iu_page_info;
+}packet_paging_request_message_content_s_6;
+
+typedef struct packet_paging_request_message_content_s_3{
+ Bool is_packet_paging_request_message_content_s_4_present; //truncation or optional
+ U16 numElements_repeated_page_info;
+ repeated_page_info_struct_1 * repeated_page_info;
+ Bool is_packet_paging_request_message_content_s_5_present; //truncation or optional
+ packet_paging_request_message_content_s_5_enum packet_paging_request_message_content_s_5_tag;
+ union packet_paging_request_message_content_s_5_value{
+ packet_paging_request_message_content_s_5_bit m_packet_paging_request_message_content_s_5_bit;
+ packet_paging_request_message_content_s_6 m_packet_paging_request_message_content_s_6;
+ }packet_paging_request_message_content_s_5_value;
+}packet_paging_request_message_content_s_3;
+
+/* SEQUENCE packet paging request message content */
+typedef struct packet_paging_request_message_content{
+ header_struct1 header;
+ U8 msgtype;
+ U8 page_mode;
+ ispresent packet_paging_request_message_content_s_1_tag;
+ union packet_paging_request_message_content_s_1_value{
+ persistence_level_ie persistence_level;
+ }packet_paging_request_message_content_s_1_value;
+ ispresent packet_paging_request_message_content_s_2_tag;
+ union packet_paging_request_message_content_s_2_value{
+ U8 nln;
+ }packet_paging_request_message_content_s_2_value;
+ packet_paging_request_message_content_s_3 m_packet_paging_request_message_content_s_3; //truncation ;
+}packet_paging_request_message_content;
+
+typedef struct packet_neighbour_cell_data_message_content_s_6{
+ U16 arfcn;
+ U8 bsic;
+}packet_neighbour_cell_data_message_content_s_6;
+
+/* SEQUENCE packet neighbour cell data message content */
+typedef struct packet_neighbour_cell_data_message_content{
+ header_struct1 header;
+ U8 msgtype;
+ U8 page_mode;
+ global_tfi_ie global_tfi;
+ U8 container_id;
+ U8 container_index;
+ ispresent packet_neighbour_cell_data_message_content_s_5_tag;
+ union packet_neighbour_cell_data_message_content_s_5_value{
+ packet_neighbour_cell_data_message_content_s_6 m_packet_neighbour_cell_data_message_content_s_6;
+ }packet_neighbour_cell_data_message_content_s_5_value;
+ container_repetition_struct container;
+}packet_neighbour_cell_data_message_content;
+
+/* SEQUENCE packet downlink dummy control block message content */
+typedef struct packet_downlink_dummy_control_block_message_content{
+ header_struct1 header;
+ U8 msgtype;
+ U8 page_mode;
+ ispresent packet_downlink_dummy_control_block_message_content_s_1_tag;
+ union packet_downlink_dummy_control_block_message_content_s_1_value{
+ persistence_level_ie persistence_level;
+ }packet_downlink_dummy_control_block_message_content_s_1_value;
+}packet_downlink_dummy_control_block_message_content;
+
+typedef enum {
+ PACKET_DOWNLINK_ASSIGNMENT_MESSAGE_CONTENT_GLOBAL_TFI,
+ TLLI__G_RNTI
+}packet_downlink_assignment_message_content_s_4_enum;
+
+typedef enum {
+ PACKET_DOWNLINK_ASSIGNMENT_MESSAGE_CONTENT_S_6,
+ PACKET_DOWNLINK_ASSIGNMENT_MESSAGE_CONTENT_S_36
+}packet_downlink_assignment_message_content_s_5_enum;
+
+typedef struct packet_downlink_assignment_message_content_s_9{
+ U8 p0;
+ U8 bts_pwr_ctrl_mode;
+ U8 pr_mode;
+}packet_downlink_assignment_message_content_s_9;
+
+typedef enum {
+ PACKET_DOWNLINK_ASSIGNMENT_MESSAGE_CONTENT_S_16_NULL,
+ PACKET_DOWNLINK_ASSIGNMENT_MESSAGE_CONTENT_S_16_BIT,
+ PACKET_DOWNLINK_ASSIGNMENT_MESSAGE_CONTENT_S_17
+}packet_downlink_assignment_message_content_s_16_enum;
+
+typedef struct packet_downlink_assignment_message_content_s_16_bit{
+ U16 numElements_packet_downlink_assignment_message_content_s_16_bit;
+ U8 * packet_downlink_assignment_message_content_s_16_bit;
+}packet_downlink_assignment_message_content_s_16_bit;
+
+typedef struct packet_downlink_assignment_message_content_s_19{
+ U8 egprs_window_size;
+ U8 link_quality_measurement_mode;
+ ispresent packet_downlink_assignment_message_content_s_20_tag;
+ union packet_downlink_assignment_message_content_s_20_value{
+ U8 bep_period2;
+ }packet_downlink_assignment_message_content_s_20_value;
+}packet_downlink_assignment_message_content_s_19;
+
+typedef enum {
+ PACKET_DOWNLINK_ASSIGNMENT_MESSAGE_CONTENT_S_23_NULL,
+ PACKET_DOWNLINK_ASSIGNMENT_MESSAGE_CONTENT_S_23_BIT,
+ PACKET_DOWNLINK_ASSIGNMENT_MESSAGE_CONTENT_S_24
+}packet_downlink_assignment_message_content_s_23_enum;
+
+typedef struct packet_downlink_assignment_message_content_s_23_bit{
+ U16 numElements_packet_downlink_assignment_message_content_s_23_bit;
+ U8 * packet_downlink_assignment_message_content_s_23_bit;
+}packet_downlink_assignment_message_content_s_23_bit;
+
+typedef struct packet_downlink_assignment_message_content_s_26{
+ U8 rb_id;
+ ispresent packet_downlink_assignment_message_content_s_27_tag;
+ union packet_downlink_assignment_message_content_s_27_value{
+ U8 g_rnti_extension;
+ }packet_downlink_assignment_message_content_s_27_value;
+ ispresent packet_downlink_assignment_message_content_s_28_tag;
+ union packet_downlink_assignment_message_content_s_28_value{
+ U8 uplink_control_timeslot;
+ }packet_downlink_assignment_message_content_s_28_value;
+ ispresent packet_downlink_assignment_message_content_s_29_tag;
+ union packet_downlink_assignment_message_content_s_29_value{
+ U8 hfn_lsb;
+ }packet_downlink_assignment_message_content_s_29_value;
+}packet_downlink_assignment_message_content_s_26;
+
+typedef enum {
+ PACKET_DOWNLINK_ASSIGNMENT_MESSAGE_CONTENT_S_30_NULL,
+ PACKET_DOWNLINK_ASSIGNMENT_MESSAGE_CONTENT_S_30_BIT,
+ PACKET_DOWNLINK_ASSIGNMENT_MESSAGE_CONTENT_S_31
+}packet_downlink_assignment_message_content_s_30_enum;
+
+typedef struct packet_downlink_assignment_message_content_s_30_bit{
+ U16 numElements_packet_downlink_assignment_message_content_s_30_bit;
+ U8 * packet_downlink_assignment_message_content_s_30_bit;
+}packet_downlink_assignment_message_content_s_30_bit;
+
+typedef enum {
+ PACKET_DOWNLINK_ASSIGNMENT_MESSAGE_CONTENT_S_33_NULL,
+ PACKET_DOWNLINK_ASSIGNMENT_MESSAGE_CONTENT_S_33_BIT,
+ PACKET_DOWNLINK_ASSIGNMENT_MESSAGE_CONTENT_S_34
+}packet_downlink_assignment_message_content_s_33_enum;
+
+typedef struct packet_downlink_assignment_message_content_s_33_bit{
+ U16 numElements_packet_downlink_assignment_message_content_s_33_bit;
+ U8 * packet_downlink_assignment_message_content_s_33_bit;
+}packet_downlink_assignment_message_content_s_33_bit;
+
+typedef struct packet_downlink_assignment_message_content_s_34{
+ ispresent packet_downlink_assignment_message_content_s_35_tag;
+ union packet_downlink_assignment_message_content_s_35_value{
+ U8 npm_transfer_time;
+ }packet_downlink_assignment_message_content_s_35_value;
+}packet_downlink_assignment_message_content_s_34;
+
+typedef struct packet_downlink_assignment_message_content_s_31{
+ ispresent packet_downlink_assignment_message_content_s_32_tag;
+ union packet_downlink_assignment_message_content_s_32_value{
+ U8 pfi;
+ }packet_downlink_assignment_message_content_s_32_value;
+ packet_downlink_assignment_message_content_s_33_enum packet_downlink_assignment_message_content_s_33_tag;
+ union packet_downlink_assignment_message_content_s_33_value{
+ packet_downlink_assignment_message_content_s_33_bit m_packet_downlink_assignment_message_content_s_33_bit;
+ packet_downlink_assignment_message_content_s_34 m_packet_downlink_assignment_message_content_s_34;
+ }packet_downlink_assignment_message_content_s_33_value;
+}packet_downlink_assignment_message_content_s_31;
+
+typedef struct packet_downlink_assignment_message_content_s_24{
+ ispresent packet_downlink_assignment_message_content_s_25_tag;
+ union packet_downlink_assignment_message_content_s_25_value{
+ packet_downlink_assignment_message_content_s_26 m_packet_downlink_assignment_message_content_s_26;
+ }packet_downlink_assignment_message_content_s_25_value;
+ packet_downlink_assignment_message_content_s_30_enum packet_downlink_assignment_message_content_s_30_tag;
+ union packet_downlink_assignment_message_content_s_30_value{
+ packet_downlink_assignment_message_content_s_30_bit m_packet_downlink_assignment_message_content_s_30_bit;
+ packet_downlink_assignment_message_content_s_31 m_packet_downlink_assignment_message_content_s_31;
+ }packet_downlink_assignment_message_content_s_30_value;
+}packet_downlink_assignment_message_content_s_24;
+
+typedef struct packet_downlink_assignment_message_content_s_17{
+ ispresent packet_downlink_assignment_message_content_s_18_tag;
+ union packet_downlink_assignment_message_content_s_18_value{
+ packet_downlink_assignment_message_content_s_19 m_packet_downlink_assignment_message_content_s_19;
+ }packet_downlink_assignment_message_content_s_18_value;
+ ispresent packet_downlink_assignment_message_content_s_21_tag;
+ union packet_downlink_assignment_message_content_s_21_value{
+ U8 packet_extended_timing_advance;
+ }packet_downlink_assignment_message_content_s_21_value;
+ ispresent packet_downlink_assignment_message_content_s_22_tag;
+ union packet_downlink_assignment_message_content_s_22_value{
+ compact_reduced_ma_ie compact_reduced_ma;
+ }packet_downlink_assignment_message_content_s_22_value;
+ packet_downlink_assignment_message_content_s_23_enum packet_downlink_assignment_message_content_s_23_tag;
+ union packet_downlink_assignment_message_content_s_23_value{
+ packet_downlink_assignment_message_content_s_23_bit m_packet_downlink_assignment_message_content_s_23_bit;
+ packet_downlink_assignment_message_content_s_24 m_packet_downlink_assignment_message_content_s_24;
+ }packet_downlink_assignment_message_content_s_23_value;
+}packet_downlink_assignment_message_content_s_17;
+
+typedef struct packet_downlink_assignment_message_content_s_10{
+ Bool is_packet_downlink_assignment_message_content_s_11_present; //truncation or optional
+ ispresent packet_downlink_assignment_message_content_s_11_tag;
+ union packet_downlink_assignment_message_content_s_11_value{
+ frequency_parameters_ie frequency_parameters;
+ }packet_downlink_assignment_message_content_s_11_value;
+ Bool is_packet_downlink_assignment_message_content_s_12_present; //truncation or optional
+ ispresent packet_downlink_assignment_message_content_s_12_tag;
+ union packet_downlink_assignment_message_content_s_12_value{
+ U8 downlink_tfi_assignment;
+ }packet_downlink_assignment_message_content_s_12_value;
+ Bool is_packet_downlink_assignment_message_content_s_13_present; //truncation or optional
+ ispresent packet_downlink_assignment_message_content_s_13_tag;
+ union packet_downlink_assignment_message_content_s_13_value{
+ power_control_parameters_ie power_control_parameters;
+ }packet_downlink_assignment_message_content_s_13_value;
+ Bool is_packet_downlink_assignment_message_content_s_14_present; //truncation or optional
+ ispresent packet_downlink_assignment_message_content_s_14_tag;
+ union packet_downlink_assignment_message_content_s_14_value{
+ starting_frame_number_description_ie tbf_starting_time;
+ }packet_downlink_assignment_message_content_s_14_value;
+ Bool is_packet_downlink_assignment_message_content_s_15_present; //truncation or optional
+ ispresent packet_downlink_assignment_message_content_s_15_tag;
+ union packet_downlink_assignment_message_content_s_15_value{
+ measurement_mapping_struct measurement_mapping;
+ }packet_downlink_assignment_message_content_s_15_value;
+ Bool is_packet_downlink_assignment_message_content_s_16_present; //truncation or optional
+ packet_downlink_assignment_message_content_s_16_enum packet_downlink_assignment_message_content_s_16_tag;
+ union packet_downlink_assignment_message_content_s_16_value{
+ packet_downlink_assignment_message_content_s_16_bit m_packet_downlink_assignment_message_content_s_16_bit;
+ packet_downlink_assignment_message_content_s_17 m_packet_downlink_assignment_message_content_s_17;
+ }packet_downlink_assignment_message_content_s_16_value;
+}packet_downlink_assignment_message_content_s_10;
+
+typedef struct packet_downlink_assignment_message_content_s_7{
+ U8 mac_mode;
+ U8 rlc_mode;
+ U8 control_ack;
+ U8 timeslot_allocation;
+ packet_timing_advance_ie packet_timing_advance;
+ ispresent packet_downlink_assignment_message_content_s_8_tag;
+ union packet_downlink_assignment_message_content_s_8_value{
+ packet_downlink_assignment_message_content_s_9 m_packet_downlink_assignment_message_content_s_9;
+ }packet_downlink_assignment_message_content_s_8_value;
+ packet_downlink_assignment_message_content_s_10 m_packet_downlink_assignment_message_content_s_10; //truncation ;
+}packet_downlink_assignment_message_content_s_7;
+
+typedef enum {
+ PACKET_DOWNLINK_ASSIGNMENT_MESSAGE_CONTENT_S_40,
+ PACKET_DOWNLINK_ASSIGNMENT_MESSAGE_CONTENT_S_42
+}packet_downlink_assignment_message_content_s_39_enum;
+
+typedef struct packet_downlink_assignment_message_content_s_40{
+ U8 timeslot_allocation_c1;
+ ispresent packet_downlink_assignment_message_content_s_41_tag;
+ union packet_downlink_assignment_message_content_s_41_value{
+ U8 timeslot_allocation_c2;
+ }packet_downlink_assignment_message_content_s_41_value;
+}packet_downlink_assignment_message_content_s_40;
+
+typedef enum {
+ PACKET_DOWNLINK_ASSIGNMENT_MESSAGE_CONTENT_S_43,
+ PACKET_DOWNLINK_ASSIGNMENT_MESSAGE_CONTENT_S_46
+}packet_downlink_assignment_message_content_s_42_enum;
+
+typedef enum {
+ PACKET_DOWNLINK_ASSIGNMENT_MESSAGE_CONTENT_CONCAT_00,
+ PACKET_DOWNLINK_ASSIGNMENT_MESSAGE_CONTENT_CONCAT_01,
+ PACKET_DOWNLINK_ASSIGNMENT_MESSAGE_CONTENT_S_45
+}packet_downlink_assignment_message_content_s_44_enum;
+
+typedef struct packet_downlink_assignment_message_content_s_45{
+ U8 downlink_pdch_pairs_c1;
+ U8 uplink_pdch_pairs_c1;
+}packet_downlink_assignment_message_content_s_45;
+
+typedef struct packet_downlink_assignment_message_content_s_43{
+ packet_downlink_assignment_message_content_s_44_enum packet_downlink_assignment_message_content_s_44_tag;
+ union packet_downlink_assignment_message_content_s_44_value{
+ packet_downlink_assignment_message_content_s_45 m_packet_downlink_assignment_message_content_s_45;
+ }packet_downlink_assignment_message_content_s_44_value;
+ U8 rtti_downlink_pdch_pair_assignment_sc;
+}packet_downlink_assignment_message_content_s_43;
+
+typedef enum {
+ PACKET_DOWNLINK_ASSIGNMENT_MESSAGE_CONTENT_CONCAT_001,
+ PACKET_DOWNLINK_ASSIGNMENT_MESSAGE_CONTENT_CONCAT_011,
+ PACKET_DOWNLINK_ASSIGNMENT_MESSAGE_CONTENT_S_48
+}packet_downlink_assignment_message_content_s_47_enum;
+
+typedef struct packet_downlink_assignment_message_content_s_48{
+ U8 downlink_pdch_pairs_c1;
+ U8 downlink_pdch_pairs_c2;
+ U8 uplink_pdch_pairs_c1;
+ U8 uplink_pdch_pairs_c2;
+}packet_downlink_assignment_message_content_s_48;
+
+typedef struct packet_downlink_assignment_message_content_s_46{
+ packet_downlink_assignment_message_content_s_47_enum packet_downlink_assignment_message_content_s_47_tag;
+ union packet_downlink_assignment_message_content_s_47_value{
+ packet_downlink_assignment_message_content_s_48 m_packet_downlink_assignment_message_content_s_48;
+ }packet_downlink_assignment_message_content_s_47_value;
+ U8 rtti_downlink_pdch_pair_assignment_dc;
+}packet_downlink_assignment_message_content_s_46;
+
+typedef struct packet_downlink_assignment_message_content_s_42{
+ packet_downlink_assignment_message_content_s_42_enum packet_downlink_assignment_message_content_s_42_tag;
+ union packet_downlink_assignment_message_content_s_42_value{
+ packet_downlink_assignment_message_content_s_43 m_packet_downlink_assignment_message_content_s_43;
+ packet_downlink_assignment_message_content_s_46 m_packet_downlink_assignment_message_content_s_46;
+ }packet_downlink_assignment_message_content_s_42_value;
+}packet_downlink_assignment_message_content_s_42;
+
+typedef enum {
+ PACKET_DOWNLINK_ASSIGNMENT_MESSAGE_CONTENT_CONCAT_002,
+ PACKET_DOWNLINK_ASSIGNMENT_MESSAGE_CONTENT_S_50,
+ PACKET_DOWNLINK_ASSIGNMENT_MESSAGE_CONTENT_DUAL_CARRIER_FREQUENCY_PARAMETERS
+}packet_downlink_assignment_message_content_s_49_enum;
+
+typedef struct packet_downlink_assignment_message_content_s_50{
+ ispresent packet_downlink_assignment_message_content_s_51_tag;
+ union packet_downlink_assignment_message_content_s_51_value{
+ frequency_parameters_ie frequency_parameters_c1;
+ }packet_downlink_assignment_message_content_s_51_value;
+ ispresent packet_downlink_assignment_message_content_s_52_tag;
+ union packet_downlink_assignment_message_content_s_52_value{
+ frequency_parameters_ie frequency_parameters_c2;
+ }packet_downlink_assignment_message_content_s_52_value;
+}packet_downlink_assignment_message_content_s_50;
+
+typedef struct packet_downlink_assignment_message_content_s_56{
+ U8 p0_c2;
+ U8 pr_mode_c2;
+}packet_downlink_assignment_message_content_s_56;
+
+typedef struct packet_downlink_assignment_message_content_s_54{
+ U8 p0_c1;
+ U8 pr_mode_c1;
+ ispresent packet_downlink_assignment_message_content_s_55_tag;
+ union packet_downlink_assignment_message_content_s_55_value{
+ packet_downlink_assignment_message_content_s_56 m_packet_downlink_assignment_message_content_s_56;
+ }packet_downlink_assignment_message_content_s_55_value;
+}packet_downlink_assignment_message_content_s_54;
+
+typedef struct packet_downlink_assignment_message_content_s_61{
+ egprs_window_size_ie egprs_window_size;
+ U8 link_quality_measurement_mode;
+ ispresent packet_downlink_assignment_message_content_s_62_tag;
+ union packet_downlink_assignment_message_content_s_62_value{
+ U8 bep_period2;
+ }packet_downlink_assignment_message_content_s_62_value;
+}packet_downlink_assignment_message_content_s_61;
+
+typedef struct packet_downlink_assignment_message_content_s_38{
+ Bool is_rlc_mode_present; //truncation or optional
+ U8 rlc_mode;
+ Bool is_control_ack_present; //truncation or optional
+ U8 control_ack;
+ Bool is_assignment_info_present; //truncation or optional
+ assignment_info_struct assignment_info;
+ Bool is_packet_downlink_assignment_message_content_s_39_present; //truncation or optional
+ packet_downlink_assignment_message_content_s_39_enum packet_downlink_assignment_message_content_s_39_tag;
+ union packet_downlink_assignment_message_content_s_39_value{
+ packet_downlink_assignment_message_content_s_40 m_packet_downlink_assignment_message_content_s_40;
+ packet_downlink_assignment_message_content_s_42 m_packet_downlink_assignment_message_content_s_42;
+ }packet_downlink_assignment_message_content_s_39_value;
+ Bool is_packet_timing_advance_present; //truncation or optional
+ packet_timing_advance_ie packet_timing_advance;
+ Bool is_packet_downlink_assignment_message_content_s_49_present; //truncation or optional
+ packet_downlink_assignment_message_content_s_49_enum packet_downlink_assignment_message_content_s_49_tag;
+ union packet_downlink_assignment_message_content_s_49_value{
+ packet_downlink_assignment_message_content_s_50 m_packet_downlink_assignment_message_content_s_50;
+ dual_carrier_frequency_parameters_ie dual_carrier_frequency_parameters;
+ }packet_downlink_assignment_message_content_s_49_value;
+ Bool is_packet_downlink_assignment_message_content_s_53_present; //truncation or optional
+ ispresent packet_downlink_assignment_message_content_s_53_tag;
+ union packet_downlink_assignment_message_content_s_53_value{
+ packet_downlink_assignment_message_content_s_54 m_packet_downlink_assignment_message_content_s_54;
+ }packet_downlink_assignment_message_content_s_53_value;
+ Bool is_packet_downlink_assignment_message_content_s_57_present; //truncation or optional
+ ispresent packet_downlink_assignment_message_content_s_57_tag;
+ union packet_downlink_assignment_message_content_s_57_value{
+ U8 downlink_tfi_assignment;
+ }packet_downlink_assignment_message_content_s_57_value;
+ Bool is_packet_downlink_assignment_message_content_s_58_present; //truncation or optional
+ ispresent packet_downlink_assignment_message_content_s_58_tag;
+ union packet_downlink_assignment_message_content_s_58_value{
+ power_control_parameters_ie power_control_parameters_c1;
+ }packet_downlink_assignment_message_content_s_58_value;
+ Bool is_packet_downlink_assignment_message_content_s_59_present; //truncation or optional
+ ispresent packet_downlink_assignment_message_content_s_59_tag;
+ union packet_downlink_assignment_message_content_s_59_value{
+ power_control_parameters_ie power_control_parameters_c2;
+ }packet_downlink_assignment_message_content_s_59_value;
+ Bool is_packet_downlink_assignment_message_content_s_60_present; //truncation or optional
+ ispresent packet_downlink_assignment_message_content_s_60_tag;
+ union packet_downlink_assignment_message_content_s_60_value{
+ packet_downlink_assignment_message_content_s_61 m_packet_downlink_assignment_message_content_s_61;
+ }packet_downlink_assignment_message_content_s_60_value;
+ Bool is_packet_downlink_assignment_message_content_s_63_present; //truncation or optional
+ ispresent packet_downlink_assignment_message_content_s_63_tag;
+ union packet_downlink_assignment_message_content_s_63_value{
+ U8 packet_extended_timing_advance;
+ }packet_downlink_assignment_message_content_s_63_value;
+ Bool is_packet_downlink_assignment_message_content_s_64_present; //truncation or optional
+ ispresent packet_downlink_assignment_message_content_s_64_tag;
+ union packet_downlink_assignment_message_content_s_64_value{
+ U8 pfi;
+ }packet_downlink_assignment_message_content_s_64_value;
+ Bool is_packet_downlink_assignment_message_content_s_65_present; //truncation or optional
+ ispresent packet_downlink_assignment_message_content_s_65_tag;
+ union packet_downlink_assignment_message_content_s_65_value{
+ U8 npm_transfer_time;
+ }packet_downlink_assignment_message_content_s_65_value;
+ Bool is_packet_downlink_assignment_message_content_s_66_present; //truncation or optional
+ ispresent packet_downlink_assignment_message_content_s_66_tag;
+ union packet_downlink_assignment_message_content_s_66_value{
+ U8 event_based_fanr;
+ }packet_downlink_assignment_message_content_s_66_value;
+ Bool is_downlink_egprs_level_present; //truncation or optional
+ egprs_level_ie downlink_egprs_level;
+}packet_downlink_assignment_message_content_s_38;
+
+/* SEQUENCE packet downlink assignment message content */
+typedef struct packet_downlink_assignment_message_content{
+ header_struct1 header;
+ U8 msgtype;
+ U8 page_mode;
+ ispresent packet_downlink_assignment_message_content_s_1_tag;
+ union packet_downlink_assignment_message_content_s_1_value{
+ persistence_level_ie persistence_level;
+ }packet_downlink_assignment_message_content_s_1_value;
+ packet_downlink_assignment_message_content_s_4_enum packet_downlink_assignment_message_content_s_4_tag;
+ union packet_downlink_assignment_message_content_s_4_value{
+ global_tfi_ie global_tfi;
+ U32 tlli__g_rnti;
+ }packet_downlink_assignment_message_content_s_4_value;
+ packet_downlink_assignment_message_content_s_5_enum packet_downlink_assignment_message_content_s_5_tag;
+ union packet_downlink_assignment_message_content_s_5_value{
+ packet_downlink_assignment_message_content_s_7 m_packet_downlink_assignment_message_content_s_7;
+ packet_downlink_assignment_message_content_s_38 m_packet_downlink_assignment_message_content_s_38;
+ }packet_downlink_assignment_message_content_s_5_value;
+}packet_downlink_assignment_message_content;
+
+typedef struct packet_cell_change_continue_message_content_s_6{
+ U16 arfcn;
+ U8 bsic;
+ U8 container_id;
+}packet_cell_change_continue_message_content_s_6;
+
+/* SEQUENCE packet cell change continue message content */
+typedef struct packet_cell_change_continue_message_content{
+ header_struct1 header;
+ U8 msgtype;
+ U8 page_mode;
+ global_tfi_ie global_tfi;
+ ispresent packet_cell_change_continue_message_content_s_5_tag;
+ union packet_cell_change_continue_message_content_s_5_value{
+ packet_cell_change_continue_message_content_s_6 m_packet_cell_change_continue_message_content_s_6;
+ }packet_cell_change_continue_message_content_s_5_value;
+}packet_cell_change_continue_message_content;
+
+typedef enum {
+ PACKET_ACCESS_REJECT_MESSAGE_CONTENT_S_3_NULL,
+ PACKET_ACCESS_REJECT_MESSAGE_CONTENT_S_3_BIT,
+ PACKET_ACCESS_REJECT_MESSAGE_CONTENT_S_4
+}packet_access_reject_message_content_s_3_enum;
+
+typedef struct packet_access_reject_message_content_s_3_bit{
+ U16 numElements_packet_access_reject_message_content_s_3_bit;
+ U8 * packet_access_reject_message_content_s_3_bit;
+}packet_access_reject_message_content_s_3_bit;
+
+typedef enum {
+ PACKET_ACCESS_REJECT_MESSAGE_CONTENT_S_6_NULL,
+ PACKET_ACCESS_REJECT_MESSAGE_CONTENT_S_6_BIT,
+ PACKET_ACCESS_REJECT_MESSAGE_CONTENT_S_7
+}packet_access_reject_message_content_s_6_enum;
+
+typedef struct packet_access_reject_message_content_s_6_bit{
+ U16 numElements_packet_access_reject_message_content_s_6_bit;
+ U8 * packet_access_reject_message_content_s_6_bit;
+}packet_access_reject_message_content_s_6_bit;
+
+typedef struct packet_access_reject_message_content_s_8{
+ a_gb_mode_reject_struct_1 a_gb_mode_reject;
+}packet_access_reject_message_content_s_8;
+
+typedef struct _packet_access_reject_message_content_s_8{
+ U16 numElements_m_packet_access_reject_message_content_s_8;
+ packet_access_reject_message_content_s_8 * m_packet_access_reject_message_content_s_8;
+}_packet_access_reject_message_content_s_8;
+
+typedef struct packet_access_reject_message_content_s_4{
+ U16 numElements_iu_mode_reject;
+ iu_mode_reject_struct_1 * iu_mode_reject;
+ packet_access_reject_message_content_s_6_enum packet_access_reject_message_content_s_6_tag;
+ union packet_access_reject_message_content_s_6_value{
+ packet_access_reject_message_content_s_6_bit m_packet_access_reject_message_content_s_6_bit;
+ _packet_access_reject_message_content_s_8 m_packet_access_reject_message_content_s_8;
+ }packet_access_reject_message_content_s_6_value;
+}packet_access_reject_message_content_s_4;
+
+typedef struct packet_access_reject_message_content_s_1{
+ Bool is_packet_access_reject_message_content_s_2_present; //truncation or optional
+ U16 numElements_additional_reject;
+ reject_struct_1 * additional_reject;
+ Bool is_packet_access_reject_message_content_s_3_present; //truncation or optional
+ packet_access_reject_message_content_s_3_enum packet_access_reject_message_content_s_3_tag;
+ union packet_access_reject_message_content_s_3_value{
+ packet_access_reject_message_content_s_3_bit m_packet_access_reject_message_content_s_3_bit;
+ packet_access_reject_message_content_s_4 m_packet_access_reject_message_content_s_4;
+ }packet_access_reject_message_content_s_3_value;
+}packet_access_reject_message_content_s_1;
+
+/* SEQUENCE packet access reject message content */
+typedef struct packet_access_reject_message_content{
+ header_struct1 header;
+ U8 msgtype;
+ U8 page_mode;
+ reject_struct_1 reject;
+ packet_access_reject_message_content_s_1 m_packet_access_reject_message_content_s_1; //truncation ;
+}packet_access_reject_message_content;
+
+typedef enum {
+ PACKET_UPLINK_ASSIGNMENT_MESSAGE_CONTENT_GLOBAL_TFI,
+ PACKET_UPLINK_ASSIGNMENT_MESSAGE_CONTENT_TLLI___G_RNTI,
+ PACKET_UPLINK_ASSIGNMENT_MESSAGE_CONTENT_TQI,
+ PACKET_UPLINK_ASSIGNMENT_MESSAGE_CONTENT_PACKET_REQUEST_REFERENCE
+}packet_uplink_assignment_message_content_s_4_enum;
+
+typedef enum {
+ PACKET_UPLINK_ASSIGNMENT_MESSAGE_CONTENT_S_6,
+ PACKET_UPLINK_ASSIGNMENT_MESSAGE_CONTENT_S_21
+}packet_uplink_assignment_message_content_s_5_enum;
+
+typedef enum {
+ PACKET_UPLINK_ASSIGNMENT_MESSAGE_CONTENT_DYNAMIC_ALLOCATION,
+ SINGLE_BLOCK_ALLOCATION,
+ M_EXTENSION,
+ PACKET_UPLINK_ASSIGNMENT_MESSAGE_CONTENT_FIXED_ALLOCATION
+}packet_uplink_assignment_message_content_s_9_enum;
+
+typedef enum {
+ PACKET_UPLINK_ASSIGNMENT_MESSAGE_CONTENT_S_10_NULL,
+ PACKET_UPLINK_ASSIGNMENT_MESSAGE_CONTENT_S_10_BIT,
+ PACKET_UPLINK_ASSIGNMENT_MESSAGE_CONTENT_S_11
+}packet_uplink_assignment_message_content_s_10_enum;
+
+typedef struct packet_uplink_assignment_message_content_s_10_bit{
+ U16 numElements_packet_uplink_assignment_message_content_s_10_bit;
+ U8 * packet_uplink_assignment_message_content_s_10_bit;
+}packet_uplink_assignment_message_content_s_10_bit;
+
+typedef enum {
+ PACKET_UPLINK_ASSIGNMENT_MESSAGE_CONTENT_S_13_NULL,
+ PACKET_UPLINK_ASSIGNMENT_MESSAGE_CONTENT_S_13_BIT,
+ PACKET_UPLINK_ASSIGNMENT_MESSAGE_CONTENT_S_14
+}packet_uplink_assignment_message_content_s_13_enum;
+
+typedef struct packet_uplink_assignment_message_content_s_13_bit{
+ U16 numElements_packet_uplink_assignment_message_content_s_13_bit;
+ U8 * packet_uplink_assignment_message_content_s_13_bit;
+}packet_uplink_assignment_message_content_s_13_bit;
+
+typedef enum {
+ PACKET_UPLINK_ASSIGNMENT_MESSAGE_CONTENT_S_17_NULL,
+ PACKET_UPLINK_ASSIGNMENT_MESSAGE_CONTENT_S_17_BIT,
+ PACKET_UPLINK_ASSIGNMENT_MESSAGE_CONTENT_S_18
+}packet_uplink_assignment_message_content_s_17_enum;
+
+typedef struct packet_uplink_assignment_message_content_s_17_bit{
+ U16 numElements_packet_uplink_assignment_message_content_s_17_bit;
+ U8 * packet_uplink_assignment_message_content_s_17_bit;
+}packet_uplink_assignment_message_content_s_17_bit;
+
+typedef struct packet_uplink_assignment_message_content_s_18{
+ ispresent packet_uplink_assignment_message_content_s_19_tag;
+ union packet_uplink_assignment_message_content_s_19_value{
+ U8 pfi;
+ }packet_uplink_assignment_message_content_s_19_value;
+ ispresent packet_uplink_assignment_message_content_s_20_tag;
+ union packet_uplink_assignment_message_content_s_20_value{
+ U8 rlc_mode;
+ }packet_uplink_assignment_message_content_s_20_value;
+}packet_uplink_assignment_message_content_s_18;
+
+typedef struct packet_uplink_assignment_message_content_s_14{
+ ispresent packet_uplink_assignment_message_content_s_15_tag;
+ union packet_uplink_assignment_message_content_s_15_value{
+ U8 g_rnti_extension;
+ }packet_uplink_assignment_message_content_s_15_value;
+ ispresent packet_uplink_assignment_message_content_s_16_tag;
+ union packet_uplink_assignment_message_content_s_16_value{
+ U8 rb_id;
+ }packet_uplink_assignment_message_content_s_16_value;
+ packet_uplink_assignment_message_content_s_17_enum packet_uplink_assignment_message_content_s_17_tag;
+ union packet_uplink_assignment_message_content_s_17_value{
+ packet_uplink_assignment_message_content_s_17_bit m_packet_uplink_assignment_message_content_s_17_bit;
+ packet_uplink_assignment_message_content_s_18 m_packet_uplink_assignment_message_content_s_18;
+ }packet_uplink_assignment_message_content_s_17_value;
+}packet_uplink_assignment_message_content_s_14;
+
+typedef struct packet_uplink_assignment_message_content_s_11{
+ ispresent packet_uplink_assignment_message_content_s_12_tag;
+ union packet_uplink_assignment_message_content_s_12_value{
+ U8 packet_extended_timing_advance;
+ }packet_uplink_assignment_message_content_s_12_value;
+ packet_uplink_assignment_message_content_s_13_enum packet_uplink_assignment_message_content_s_13_tag;
+ union packet_uplink_assignment_message_content_s_13_value{
+ packet_uplink_assignment_message_content_s_13_bit m_packet_uplink_assignment_message_content_s_13_bit;
+ packet_uplink_assignment_message_content_s_14 m_packet_uplink_assignment_message_content_s_14;
+ }packet_uplink_assignment_message_content_s_13_value;
+}packet_uplink_assignment_message_content_s_11;
+
+typedef struct packet_uplink_assignment_message_content_s_7{
+ U8 channel_coding_command;
+ U8 tlli_block_channel_coding;
+ packet_timing_advance_ie packet_timing_advance;
+ ispresent packet_uplink_assignment_message_content_s_8_tag;
+ union packet_uplink_assignment_message_content_s_8_value{
+ frequency_parameters_ie frequency_parameters;
+ }packet_uplink_assignment_message_content_s_8_value;
+ packet_uplink_assignment_message_content_s_9_enum packet_uplink_assignment_message_content_s_9_tag;
+ union packet_uplink_assignment_message_content_s_9_value{
+ dynamic_allocation_struct dynamic_allocation;
+ single_block_allocation_struct single_block_allocation;
+ fixed_allocation_struct_2 fixed_allocation;
+ }packet_uplink_assignment_message_content_s_9_value;
+ packet_uplink_assignment_message_content_s_10_enum packet_uplink_assignment_message_content_s_10_tag;
+ union packet_uplink_assignment_message_content_s_10_value{
+ packet_uplink_assignment_message_content_s_10_bit m_packet_uplink_assignment_message_content_s_10_bit;
+ packet_uplink_assignment_message_content_s_11 m_packet_uplink_assignment_message_content_s_11;
+ }packet_uplink_assignment_message_content_s_10_value;
+}packet_uplink_assignment_message_content_s_7;
+
+typedef enum {
+ PACKET_UPLINK_ASSIGNMENT_MESSAGE_CONTENT_S_22,
+ PACKET_UPLINK_ASSIGNMENT_MESSAGE_CONTENT_S_42
+}packet_uplink_assignment_message_content_s_21_enum;
+
+typedef enum {
+ PACKET_UPLINK_ASSIGNMENT_MESSAGE_CONTENT_DYNAMIC_ALLOCATION1,
+ MULTI_BLOCK_ALLOCATION,
+ PACKET_UPLINK_ASSIGNMENT_MESSAGE_CONTENT_M_EXTENSION,
+ PACKET_UPLINK_ASSIGNMENT_MESSAGE_CONTENT_FIXED_ALLOCATION1
+}packet_uplink_assignment_message_content_s_30_enum;
+
+typedef enum {
+ PACKET_UPLINK_ASSIGNMENT_MESSAGE_CONTENT_S_31_NULL,
+ PACKET_UPLINK_ASSIGNMENT_MESSAGE_CONTENT_S_31_BIT,
+ PACKET_UPLINK_ASSIGNMENT_MESSAGE_CONTENT_S_32
+}packet_uplink_assignment_message_content_s_31_enum;
+
+typedef struct packet_uplink_assignment_message_content_s_31_bit{
+ U16 numElements_packet_uplink_assignment_message_content_s_31_bit;
+ U8 * packet_uplink_assignment_message_content_s_31_bit;
+}packet_uplink_assignment_message_content_s_31_bit;
+
+typedef enum {
+ PACKET_UPLINK_ASSIGNMENT_MESSAGE_CONTENT_S_35_NULL,
+ PACKET_UPLINK_ASSIGNMENT_MESSAGE_CONTENT_S_35_BIT,
+ PACKET_UPLINK_ASSIGNMENT_MESSAGE_CONTENT_S_36
+}packet_uplink_assignment_message_content_s_35_enum;
+
+typedef struct packet_uplink_assignment_message_content_s_35_bit{
+ U16 numElements_packet_uplink_assignment_message_content_s_35_bit;
+ U8 * packet_uplink_assignment_message_content_s_35_bit;
+}packet_uplink_assignment_message_content_s_35_bit;
+
+typedef enum {
+ PACKET_UPLINK_ASSIGNMENT_MESSAGE_CONTENT_S_39_NULL,
+ PACKET_UPLINK_ASSIGNMENT_MESSAGE_CONTENT_S_39_BIT,
+ PACKET_UPLINK_ASSIGNMENT_MESSAGE_CONTENT_S_40
+}packet_uplink_assignment_message_content_s_39_enum;
+
+typedef struct packet_uplink_assignment_message_content_s_39_bit{
+ U16 numElements_packet_uplink_assignment_message_content_s_39_bit;
+ U8 * packet_uplink_assignment_message_content_s_39_bit;
+}packet_uplink_assignment_message_content_s_39_bit;
+
+typedef struct packet_uplink_assignment_message_content_s_40{
+ ispresent packet_uplink_assignment_message_content_s_41_tag;
+ union packet_uplink_assignment_message_content_s_41_value{
+ U8 npm_transfer_time;
+ }packet_uplink_assignment_message_content_s_41_value;
+}packet_uplink_assignment_message_content_s_40;
+
+typedef struct packet_uplink_assignment_message_content_s_36{
+ ispresent packet_uplink_assignment_message_content_s_37_tag;
+ union packet_uplink_assignment_message_content_s_37_value{
+ U8 pfi;
+ }packet_uplink_assignment_message_content_s_37_value;
+ ispresent packet_uplink_assignment_message_content_s_38_tag;
+ union packet_uplink_assignment_message_content_s_38_value{
+ U8 rlc_mode;
+ }packet_uplink_assignment_message_content_s_38_value;
+ packet_uplink_assignment_message_content_s_39_enum packet_uplink_assignment_message_content_s_39_tag;
+ union packet_uplink_assignment_message_content_s_39_value{
+ packet_uplink_assignment_message_content_s_39_bit m_packet_uplink_assignment_message_content_s_39_bit;
+ packet_uplink_assignment_message_content_s_40 m_packet_uplink_assignment_message_content_s_40;
+ }packet_uplink_assignment_message_content_s_39_value;
+}packet_uplink_assignment_message_content_s_36;
+
+typedef struct packet_uplink_assignment_message_content_s_32{
+ ispresent packet_uplink_assignment_message_content_s_33_tag;
+ union packet_uplink_assignment_message_content_s_33_value{
+ U8 g_rnti_extension;
+ }packet_uplink_assignment_message_content_s_33_value;
+ ispresent packet_uplink_assignment_message_content_s_34_tag;
+ union packet_uplink_assignment_message_content_s_34_value{
+ U8 rb_id;
+ }packet_uplink_assignment_message_content_s_34_value;
+ packet_uplink_assignment_message_content_s_35_enum packet_uplink_assignment_message_content_s_35_tag;
+ union packet_uplink_assignment_message_content_s_35_value{
+ packet_uplink_assignment_message_content_s_35_bit m_packet_uplink_assignment_message_content_s_35_bit;
+ packet_uplink_assignment_message_content_s_36 m_packet_uplink_assignment_message_content_s_36;
+ }packet_uplink_assignment_message_content_s_35_value;
+}packet_uplink_assignment_message_content_s_32;
+
+typedef struct packet_uplink_assignment_message_content_s_23{
+ ispresent packet_uplink_assignment_message_content_s_24_tag;
+ union packet_uplink_assignment_message_content_s_24_value{
+ U32 contention_resolution_tlli;
+ }packet_uplink_assignment_message_content_s_24_value;
+ ispresent packet_uplink_assignment_message_content_s_25_tag;
+ union packet_uplink_assignment_message_content_s_25_value{
+ compact_reduced_ma_ie compact_reduced_ma;
+ }packet_uplink_assignment_message_content_s_25_value;
+ U8 egprs_channel_coding_command;
+ U8 resegment;
+ U8 egprs_window_size;
+ ispresent packet_uplink_assignment_message_content_s_26_tag;
+ union packet_uplink_assignment_message_content_s_26_value{
+ struct access_technologies_request_struct * access_technologies_request;
+ }packet_uplink_assignment_message_content_s_26_value;
+ U8 arac_retransmission_request;
+ U8 tlli_block_channel_coding;
+ ispresent packet_uplink_assignment_message_content_s_27_tag;
+ union packet_uplink_assignment_message_content_s_27_value{
+ U8 bep_period2;
+ }packet_uplink_assignment_message_content_s_27_value;
+ packet_timing_advance_ie packet_timing_advance;
+ ispresent packet_uplink_assignment_message_content_s_28_tag;
+ union packet_uplink_assignment_message_content_s_28_value{
+ U8 packet_extended_timing_advance;
+ }packet_uplink_assignment_message_content_s_28_value;
+ ispresent packet_uplink_assignment_message_content_s_29_tag;
+ union packet_uplink_assignment_message_content_s_29_value{
+ frequency_parameters_ie frequency_parameters;
+ }packet_uplink_assignment_message_content_s_29_value;
+ packet_uplink_assignment_message_content_s_30_enum packet_uplink_assignment_message_content_s_30_tag;
+ union packet_uplink_assignment_message_content_s_30_value{
+ dynamic_allocation_struct dynamic_allocation;
+ multi_block_allocation_struct multi_block_allocation;
+ fixed_allocation_struct_2 fixed_allocation;
+ }packet_uplink_assignment_message_content_s_30_value;
+ packet_uplink_assignment_message_content_s_31_enum packet_uplink_assignment_message_content_s_31_tag;
+ union packet_uplink_assignment_message_content_s_31_value{
+ packet_uplink_assignment_message_content_s_31_bit m_packet_uplink_assignment_message_content_s_31_bit;
+ packet_uplink_assignment_message_content_s_32 m_packet_uplink_assignment_message_content_s_32;
+ }packet_uplink_assignment_message_content_s_31_value;
+}packet_uplink_assignment_message_content_s_23;
+
+typedef struct packet_uplink_assignment_message_content_s_49{
+ U8 rtti_usf_mode;
+ pdch_pairs_description_ie pdch_pairs_description;
+}packet_uplink_assignment_message_content_s_49;
+
+typedef enum {
+ PACKET_UPLINK_ASSIGNMENT_MESSAGE_CONTENT_CONCAT_00,
+ PACKET_UPLINK_ASSIGNMENT_MESSAGE_CONTENT_S_51,
+ PACKET_UPLINK_ASSIGNMENT_MESSAGE_CONTENT_DUAL_CARRIER_FREQUENCY_PARAMETERS
+}packet_uplink_assignment_message_content_s_50_enum;
+
+typedef struct packet_uplink_assignment_message_content_s_51{
+ ispresent packet_uplink_assignment_message_content_s_52_tag;
+ union packet_uplink_assignment_message_content_s_52_value{
+ frequency_parameters_ie frequency_parameters_c1;
+ }packet_uplink_assignment_message_content_s_52_value;
+ ispresent packet_uplink_assignment_message_content_s_53_tag;
+ union packet_uplink_assignment_message_content_s_53_value{
+ frequency_parameters_ie frequency_parameters_c2;
+ }packet_uplink_assignment_message_content_s_53_value;
+}packet_uplink_assignment_message_content_s_51;
+
+typedef struct packet_uplink_assignment_message_content_s_59{
+ U8 reported_timeslots_c1;
+ ispresent packet_uplink_assignment_message_content_s_60_tag;
+ union packet_uplink_assignment_message_content_s_60_value{
+ U8 reported_timeslots_c2;
+ }packet_uplink_assignment_message_content_s_60_value;
+ U8 tsh;
+}packet_uplink_assignment_message_content_s_59;
+
+typedef struct packet_uplink_assignment_message_content_s_58{
+ ispresent packet_uplink_assignment_message_content_s_58_tag;
+ union packet_uplink_assignment_message_content_s_58_value{
+ packet_uplink_assignment_message_content_s_59 m_packet_uplink_assignment_message_content_s_59;
+ }packet_uplink_assignment_message_content_s_58_value;
+}packet_uplink_assignment_message_content_s_58;
+
+typedef struct packet_uplink_assignment_message_content_s_43{
+ ispresent packet_uplink_assignment_message_content_s_44_tag;
+ union packet_uplink_assignment_message_content_s_44_value{
+ U32 contention_resolution_tlli;
+ }packet_uplink_assignment_message_content_s_44_value;
+ U8 resegment;
+ assignment_info_struct assignment_info;
+ egprs_window_size_ie egprs_window_size;
+ ispresent packet_uplink_assignment_message_content_s_45_tag;
+ union packet_uplink_assignment_message_content_s_45_value{
+ struct access_technologies_request_struct * access_technologies_request;
+ }packet_uplink_assignment_message_content_s_45_value;
+ U8 arac_retransmission_request;
+ U8 tlli_block_channel_coding;
+ ispresent packet_uplink_assignment_message_content_s_46_tag;
+ union packet_uplink_assignment_message_content_s_46_value{
+ U8 bep_period2;
+ }packet_uplink_assignment_message_content_s_46_value;
+ packet_timing_advance_ie packet_timing_advance;
+ ispresent packet_uplink_assignment_message_content_s_47_tag;
+ union packet_uplink_assignment_message_content_s_47_value{
+ U8 packet_extended_timing_advance;
+ }packet_uplink_assignment_message_content_s_47_value;
+ ispresent packet_uplink_assignment_message_content_s_48_tag;
+ union packet_uplink_assignment_message_content_s_48_value{
+ packet_uplink_assignment_message_content_s_49 m_packet_uplink_assignment_message_content_s_49;
+ }packet_uplink_assignment_message_content_s_48_value;
+ dynamic_allocation_2_struct dynamic_allocation_2;
+ egprs_modulation_and_coding_ie egprs_channel_coding_command;
+ packet_uplink_assignment_message_content_s_50_enum packet_uplink_assignment_message_content_s_50_tag;
+ union packet_uplink_assignment_message_content_s_50_value{
+ packet_uplink_assignment_message_content_s_51 m_packet_uplink_assignment_message_content_s_51;
+ dual_carrier_frequency_parameters_ie dual_carrier_frequency_parameters;
+ }packet_uplink_assignment_message_content_s_50_value;
+ ispresent packet_uplink_assignment_message_content_s_54_tag;
+ union packet_uplink_assignment_message_content_s_54_value{
+ U8 pfi;
+ }packet_uplink_assignment_message_content_s_54_value;
+ ispresent packet_uplink_assignment_message_content_s_55_tag;
+ union packet_uplink_assignment_message_content_s_55_value{
+ U8 rlc_mode;
+ }packet_uplink_assignment_message_content_s_55_value;
+ ispresent packet_uplink_assignment_message_content_s_56_tag;
+ union packet_uplink_assignment_message_content_s_56_value{
+ U8 npm_transfer_time;
+ }packet_uplink_assignment_message_content_s_56_value;
+ ispresent packet_uplink_assignment_message_content_s_57_tag;
+ union packet_uplink_assignment_message_content_s_57_value{
+ packet_uplink_assignment_message_content_s_58 m_packet_uplink_assignment_message_content_s_58;
+ }packet_uplink_assignment_message_content_s_57_value;
+ egprs_level_ie uplink_egprs_level;
+ ispresent packet_uplink_assignment_message_content_s_61_tag;
+ union packet_uplink_assignment_message_content_s_61_value{
+ pulse_format_ie pulse_format;
+ }packet_uplink_assignment_message_content_s_61_value;
+}packet_uplink_assignment_message_content_s_43;
+
+typedef struct packet_uplink_assignment_message_content_s_21{
+ packet_uplink_assignment_message_content_s_21_enum packet_uplink_assignment_message_content_s_21_tag;
+ union packet_uplink_assignment_message_content_s_21_value{
+ packet_uplink_assignment_message_content_s_23 m_packet_uplink_assignment_message_content_s_23;
+ packet_uplink_assignment_message_content_s_43 m_packet_uplink_assignment_message_content_s_43;
+ }packet_uplink_assignment_message_content_s_21_value;
+}packet_uplink_assignment_message_content_s_21;
+
+/* SEQUENCE packet uplink assignment message content */
+typedef struct packet_uplink_assignment_message_content{
+ header_struct1 header;
+ U8 msgtype;
+ U8 page_mode;
+ ispresent packet_uplink_assignment_message_content_s_1_tag;
+ union packet_uplink_assignment_message_content_s_1_value{
+ persistence_level_ie persistence_level;
+ }packet_uplink_assignment_message_content_s_1_value;
+ packet_uplink_assignment_message_content_s_4_enum packet_uplink_assignment_message_content_s_4_tag;
+ union packet_uplink_assignment_message_content_s_4_value{
+ global_tfi_ie global_tfi;
+ U32 tlli___g_rnti;
+ U16 tqi;
+ packet_request_reference_ie packet_request_reference;
+ }packet_uplink_assignment_message_content_s_4_value;
+ packet_uplink_assignment_message_content_s_5_enum packet_uplink_assignment_message_content_s_5_tag;
+ union packet_uplink_assignment_message_content_s_5_value{
+ packet_uplink_assignment_message_content_s_7 m_packet_uplink_assignment_message_content_s_7;
+ packet_uplink_assignment_message_content_s_21 m_packet_uplink_assignment_message_content_s_21;
+ }packet_uplink_assignment_message_content_s_5_value;
+}packet_uplink_assignment_message_content;
+
+typedef enum {
+ MULTIPLE_TBF_DOWNLINK_ASSIGNMENT_MESSAGE_CONTENT_GLOBAL_TFI,
+ MULTIPLE_TBF_DOWNLINK_ASSIGNMENT_MESSAGE_CONTENT_S_5
+}multiple_tbf_downlink_assignment_message_content_s_4_enum;
+
+typedef struct multiple_tbf_downlink_assignment_message_content_s_5{
+ tlli___g_rnti_ie tlli___g_rnti;
+ U8 g_rnti_extension;
+}multiple_tbf_downlink_assignment_message_content_s_5;
+
+typedef enum {
+ MULTIPLE_TBF_DOWNLINK_ASSIGNMENT_MESSAGE_CONTENT_S_7,
+ MULTIPLE_TBF_DOWNLINK_ASSIGNMENT_MESSAGE_CONTENT_S_25
+}multiple_tbf_downlink_assignment_message_content_s_6_enum;
+
+typedef struct multiple_tbf_downlink_assignment_message_content_s_10{
+ U8 p0;
+ U8 pr_mode;
+}multiple_tbf_downlink_assignment_message_content_s_10;
+
+typedef struct multiple_tbf_downlink_assignment_message_content_s_16{
+ ispresent multiple_tbf_downlink_assignment_message_content_s_17_tag;
+ union multiple_tbf_downlink_assignment_message_content_s_17_value{
+ egprs_window_size_ie egprs_window_size;
+ }multiple_tbf_downlink_assignment_message_content_s_17_value;
+ U8 link_quality_measurement_mode;
+ ispresent multiple_tbf_downlink_assignment_message_content_s_18_tag;
+ union multiple_tbf_downlink_assignment_message_content_s_18_value{
+ U8 bep_period2;
+ }multiple_tbf_downlink_assignment_message_content_s_18_value;
+}multiple_tbf_downlink_assignment_message_content_s_16;
+
+typedef enum {
+ MULTIPLE_TBF_DOWNLINK_ASSIGNMENT_MESSAGE_CONTENT_S_22_NULL,
+ MULTIPLE_TBF_DOWNLINK_ASSIGNMENT_MESSAGE_CONTENT_S_22_BIT,
+ MULTIPLE_TBF_DOWNLINK_ASSIGNMENT_MESSAGE_CONTENT_S_23
+}multiple_tbf_downlink_assignment_message_content_s_22_enum;
+
+typedef struct multiple_tbf_downlink_assignment_message_content_s_22_bit{
+ U16 numElements_multiple_tbf_downlink_assignment_message_content_s_22_bit;
+ U8 * multiple_tbf_downlink_assignment_message_content_s_22_bit;
+}multiple_tbf_downlink_assignment_message_content_s_22_bit;
+
+typedef struct multiple_tbf_downlink_assignment_message_content_s_24{
+ ispresent multiple_tbf_downlink_assignment_message_content_s_24_tag;
+ union multiple_tbf_downlink_assignment_message_content_s_24_value{
+ U8 npm_transfer_time;
+ }multiple_tbf_downlink_assignment_message_content_s_24_value;
+}multiple_tbf_downlink_assignment_message_content_s_24;
+
+typedef struct multiple_tbf_downlink_assignment_message_content_s_23{
+ U16 numElements_m_multiple_tbf_downlink_assignment_message_content_s_24;
+ multiple_tbf_downlink_assignment_message_content_s_24 * m_multiple_tbf_downlink_assignment_message_content_s_24;
+}multiple_tbf_downlink_assignment_message_content_s_23;
+
+typedef struct multiple_tbf_downlink_assignment_message_content_s_8{
+ packet_timing_advance_ie packet_timing_advance;
+ ispresent multiple_tbf_downlink_assignment_message_content_s_9_tag;
+ union multiple_tbf_downlink_assignment_message_content_s_9_value{
+ multiple_tbf_downlink_assignment_message_content_s_10 m_multiple_tbf_downlink_assignment_message_content_s_10;
+ }multiple_tbf_downlink_assignment_message_content_s_9_value;
+ ispresent multiple_tbf_downlink_assignment_message_content_s_12_tag;
+ union multiple_tbf_downlink_assignment_message_content_s_12_value{
+ frequency_parameters_ie frequency_parameters;
+ }multiple_tbf_downlink_assignment_message_content_s_12_value;
+ ispresent multiple_tbf_downlink_assignment_message_content_s_13_tag;
+ union multiple_tbf_downlink_assignment_message_content_s_13_value{
+ power_control_parameters_ie power_control_parameters;
+ }multiple_tbf_downlink_assignment_message_content_s_13_value;
+ ispresent multiple_tbf_downlink_assignment_message_content_s_14_tag;
+ union multiple_tbf_downlink_assignment_message_content_s_14_value{
+ starting_frame_number_description_ie tbf_starting_time;
+ }multiple_tbf_downlink_assignment_message_content_s_14_value;
+ ispresent multiple_tbf_downlink_assignment_message_content_s_15_tag;
+ union multiple_tbf_downlink_assignment_message_content_s_15_value{
+ multiple_tbf_downlink_assignment_message_content_s_16 m_multiple_tbf_downlink_assignment_message_content_s_16;
+ }multiple_tbf_downlink_assignment_message_content_s_15_value;
+ ispresent multiple_tbf_downlink_assignment_message_content_s_19_tag;
+ union multiple_tbf_downlink_assignment_message_content_s_19_value{
+ U8 packet_extended_timing_advance;
+ }multiple_tbf_downlink_assignment_message_content_s_19_value;
+ ispresent multiple_tbf_downlink_assignment_message_content_s_20_tag;
+ union multiple_tbf_downlink_assignment_message_content_s_20_value{
+ U8 uplink_control_timeslot;
+ }multiple_tbf_downlink_assignment_message_content_s_20_value;
+ U16 numElements_multiple_downlink_tbf_assignment;
+ multiple_downlink_tbf_assignment_struct * multiple_downlink_tbf_assignment;
+ multiple_tbf_downlink_assignment_message_content_s_22_enum multiple_tbf_downlink_assignment_message_content_s_22_tag;
+ union multiple_tbf_downlink_assignment_message_content_s_22_value{
+ multiple_tbf_downlink_assignment_message_content_s_22_bit m_multiple_tbf_downlink_assignment_message_content_s_22_bit;
+ multiple_tbf_downlink_assignment_message_content_s_23 m_multiple_tbf_downlink_assignment_message_content_s_23;
+ }multiple_tbf_downlink_assignment_message_content_s_22_value;
+}multiple_tbf_downlink_assignment_message_content_s_8;
+
+typedef struct multiple_tbf_downlink_assignment_message_content_s_32{
+ U8 p0_c2;
+ U8 pr_mode_c2;
+}multiple_tbf_downlink_assignment_message_content_s_32;
+
+typedef struct multiple_tbf_downlink_assignment_message_content_s_30{
+ U8 p0_c1;
+ U8 pr_mode_c1;
+ ispresent multiple_tbf_downlink_assignment_message_content_s_31_tag;
+ union multiple_tbf_downlink_assignment_message_content_s_31_value{
+ multiple_tbf_downlink_assignment_message_content_s_32 m_multiple_tbf_downlink_assignment_message_content_s_32;
+ }multiple_tbf_downlink_assignment_message_content_s_31_value;
+}multiple_tbf_downlink_assignment_message_content_s_30;
+
+typedef enum {
+ MULTIPLE_TBF_DOWNLINK_ASSIGNMENT_MESSAGE_CONTENT_CONCAT_00,
+ MULTIPLE_TBF_DOWNLINK_ASSIGNMENT_MESSAGE_CONTENT_S_35,
+ MULTIPLE_TBF_DOWNLINK_ASSIGNMENT_MESSAGE_CONTENT_DUAL_CARRIER_FREQUENCY_PARAMETERS
+}multiple_tbf_downlink_assignment_message_content_s_34_enum;
+
+typedef struct multiple_tbf_downlink_assignment_message_content_s_35{
+ ispresent multiple_tbf_downlink_assignment_message_content_s_36_tag;
+ union multiple_tbf_downlink_assignment_message_content_s_36_value{
+ frequency_parameters_ie frequency_parameters_c1;
+ }multiple_tbf_downlink_assignment_message_content_s_36_value;
+ ispresent multiple_tbf_downlink_assignment_message_content_s_37_tag;
+ union multiple_tbf_downlink_assignment_message_content_s_37_value{
+ frequency_parameters_ie frequency_parameters_c2;
+ }multiple_tbf_downlink_assignment_message_content_s_37_value;
+}multiple_tbf_downlink_assignment_message_content_s_35;
+
+typedef struct multiple_tbf_downlink_assignment_message_content_s_41{
+ ispresent multiple_tbf_downlink_assignment_message_content_s_42_tag;
+ union multiple_tbf_downlink_assignment_message_content_s_42_value{
+ egprs_window_size_ie egprs_window_size;
+ }multiple_tbf_downlink_assignment_message_content_s_42_value;
+ U8 link_quality_measurement_mode;
+ ispresent multiple_tbf_downlink_assignment_message_content_s_43_tag;
+ union multiple_tbf_downlink_assignment_message_content_s_43_value{
+ U8 bep_period2;
+ }multiple_tbf_downlink_assignment_message_content_s_43_value;
+}multiple_tbf_downlink_assignment_message_content_s_41;
+
+typedef struct multiple_tbf_downlink_assignment_message_content_s_48{
+ U8 fanr;
+ U16 numElements_btti_multiple_downlink_assignment;
+ btti_multiple_downlink_assignment_struct * btti_multiple_downlink_assignment;
+}multiple_tbf_downlink_assignment_message_content_s_48;
+
+typedef enum {
+ MULTIPLE_TBF_DOWNLINK_ASSIGNMENT_MESSAGE_CONTENT_S_52,
+ MULTIPLE_TBF_DOWNLINK_ASSIGNMENT_MESSAGE_CONTENT_S_56
+}multiple_tbf_downlink_assignment_message_content_s_51_enum;
+
+typedef enum {
+ MULTIPLE_TBF_DOWNLINK_ASSIGNMENT_MESSAGE_CONTENT_CONCAT_001,
+ MULTIPLE_TBF_DOWNLINK_ASSIGNMENT_MESSAGE_CONTENT_CONCAT_01,
+ MULTIPLE_TBF_DOWNLINK_ASSIGNMENT_MESSAGE_CONTENT_S_54
+}multiple_tbf_downlink_assignment_message_content_s_53_enum;
+
+typedef struct multiple_tbf_downlink_assignment_message_content_s_54{
+ U8 downlink_pdch_pairs_c1;
+ U8 uplink_pdch_pairs_c1;
+}multiple_tbf_downlink_assignment_message_content_s_54;
+
+typedef struct multiple_tbf_downlink_assignment_message_content_s_52{
+ multiple_tbf_downlink_assignment_message_content_s_53_enum multiple_tbf_downlink_assignment_message_content_s_53_tag;
+ union multiple_tbf_downlink_assignment_message_content_s_53_value{
+ multiple_tbf_downlink_assignment_message_content_s_54 m_multiple_tbf_downlink_assignment_message_content_s_54;
+ }multiple_tbf_downlink_assignment_message_content_s_53_value;
+ U16 numElements_rtti_multiple_downlink_assignment_sc;
+ rtti_multiple_downlink_assignment_sc_struct * rtti_multiple_downlink_assignment_sc;
+}multiple_tbf_downlink_assignment_message_content_s_52;
+
+typedef enum {
+ MULTIPLE_TBF_DOWNLINK_ASSIGNMENT_MESSAGE_CONTENT_CONCAT_002,
+ MULTIPLE_TBF_DOWNLINK_ASSIGNMENT_MESSAGE_CONTENT_CONCAT_011,
+ MULTIPLE_TBF_DOWNLINK_ASSIGNMENT_MESSAGE_CONTENT_S_58
+}multiple_tbf_downlink_assignment_message_content_s_57_enum;
+
+typedef struct multiple_tbf_downlink_assignment_message_content_s_58{
+ U8 downlink_pdch_pairs_c1;
+ U8 downlink_pdch_pairs_c2;
+ U8 uplink_pdch_pairs_c1;
+ U8 uplink_pdch_pairs_c2;
+}multiple_tbf_downlink_assignment_message_content_s_58;
+
+typedef struct multiple_tbf_downlink_assignment_message_content_s_56{
+ multiple_tbf_downlink_assignment_message_content_s_57_enum multiple_tbf_downlink_assignment_message_content_s_57_tag;
+ union multiple_tbf_downlink_assignment_message_content_s_57_value{
+ multiple_tbf_downlink_assignment_message_content_s_58 m_multiple_tbf_downlink_assignment_message_content_s_58;
+ }multiple_tbf_downlink_assignment_message_content_s_57_value;
+ U16 numElements_rtti_multiple_downlink_assignment_dc;
+ rtti_multiple_downlink_assignment_dc_struct * rtti_multiple_downlink_assignment_dc;
+}multiple_tbf_downlink_assignment_message_content_s_56;
+
+typedef struct multiple_tbf_downlink_assignment_message_content_s_51{
+ multiple_tbf_downlink_assignment_message_content_s_51_enum multiple_tbf_downlink_assignment_message_content_s_51_tag;
+ union multiple_tbf_downlink_assignment_message_content_s_51_value{
+ multiple_tbf_downlink_assignment_message_content_s_52 m_multiple_tbf_downlink_assignment_message_content_s_52;
+ multiple_tbf_downlink_assignment_message_content_s_56 m_multiple_tbf_downlink_assignment_message_content_s_56;
+ }multiple_tbf_downlink_assignment_message_content_s_51_value;
+}multiple_tbf_downlink_assignment_message_content_s_51;
+
+typedef struct multiple_tbf_downlink_assignment_message_content_s_33{
+ Bool is_multiple_tbf_downlink_assignment_message_content_s_34_present; //truncation or optional
+ multiple_tbf_downlink_assignment_message_content_s_34_enum multiple_tbf_downlink_assignment_message_content_s_34_tag;
+ union multiple_tbf_downlink_assignment_message_content_s_34_value{
+ multiple_tbf_downlink_assignment_message_content_s_35 m_multiple_tbf_downlink_assignment_message_content_s_35;
+ dual_carrier_frequency_parameters_ie dual_carrier_frequency_parameters;
+ }multiple_tbf_downlink_assignment_message_content_s_34_value;
+ Bool is_multiple_tbf_downlink_assignment_message_content_s_38_present; //truncation or optional
+ ispresent multiple_tbf_downlink_assignment_message_content_s_38_tag;
+ union multiple_tbf_downlink_assignment_message_content_s_38_value{
+ power_control_parameters_ie power_control_parameters_c1;
+ }multiple_tbf_downlink_assignment_message_content_s_38_value;
+ Bool is_multiple_tbf_downlink_assignment_message_content_s_39_present; //truncation or optional
+ ispresent multiple_tbf_downlink_assignment_message_content_s_39_tag;
+ union multiple_tbf_downlink_assignment_message_content_s_39_value{
+ power_control_parameters_ie power_control_parameters_c2;
+ }multiple_tbf_downlink_assignment_message_content_s_39_value;
+ Bool is_multiple_tbf_downlink_assignment_message_content_s_40_present; //truncation or optional
+ ispresent multiple_tbf_downlink_assignment_message_content_s_40_tag;
+ union multiple_tbf_downlink_assignment_message_content_s_40_value{
+ multiple_tbf_downlink_assignment_message_content_s_41 m_multiple_tbf_downlink_assignment_message_content_s_41;
+ }multiple_tbf_downlink_assignment_message_content_s_40_value;
+ Bool is_multiple_tbf_downlink_assignment_message_content_s_44_present; //truncation or optional
+ ispresent multiple_tbf_downlink_assignment_message_content_s_44_tag;
+ union multiple_tbf_downlink_assignment_message_content_s_44_value{
+ U8 packet_extended_timing_advance;
+ }multiple_tbf_downlink_assignment_message_content_s_44_value;
+ Bool is_multiple_tbf_downlink_assignment_message_content_s_45_present; //truncation or optional
+ ispresent multiple_tbf_downlink_assignment_message_content_s_45_tag;
+ union multiple_tbf_downlink_assignment_message_content_s_45_value{
+ U8 uplink_control_timeslot_c1;
+ }multiple_tbf_downlink_assignment_message_content_s_45_value;
+ Bool is_multiple_tbf_downlink_assignment_message_content_s_46_present; //truncation or optional
+ ispresent multiple_tbf_downlink_assignment_message_content_s_46_tag;
+ union multiple_tbf_downlink_assignment_message_content_s_46_value{
+ U8 uplink_control_timeslot_c2;
+ }multiple_tbf_downlink_assignment_message_content_s_46_value;
+ Bool is_multiple_tbf_downlink_assignment_message_content_s_47_present; //truncation or optional
+ ispresent multiple_tbf_downlink_assignment_message_content_s_47_tag;
+ union multiple_tbf_downlink_assignment_message_content_s_47_value{
+ multiple_tbf_downlink_assignment_message_content_s_48 m_multiple_tbf_downlink_assignment_message_content_s_48;
+ }multiple_tbf_downlink_assignment_message_content_s_47_value;
+ Bool is_multiple_tbf_downlink_assignment_message_content_s_50_present; //truncation or optional
+ ispresent multiple_tbf_downlink_assignment_message_content_s_50_tag;
+ union multiple_tbf_downlink_assignment_message_content_s_50_value{
+ multiple_tbf_downlink_assignment_message_content_s_51 m_multiple_tbf_downlink_assignment_message_content_s_51;
+ }multiple_tbf_downlink_assignment_message_content_s_50_value;
+ Bool is_downlink_egprs_level_present; //truncation or optional
+ egprs_level_ie downlink_egprs_level;
+}multiple_tbf_downlink_assignment_message_content_s_33;
+
+typedef struct multiple_tbf_downlink_assignment_message_content_s_28{
+ packet_timing_advance_ie packet_timing_advance;
+ assignment_info_struct assignment_info;
+ ispresent multiple_tbf_downlink_assignment_message_content_s_29_tag;
+ union multiple_tbf_downlink_assignment_message_content_s_29_value{
+ multiple_tbf_downlink_assignment_message_content_s_30 m_multiple_tbf_downlink_assignment_message_content_s_30;
+ }multiple_tbf_downlink_assignment_message_content_s_29_value;
+ multiple_tbf_downlink_assignment_message_content_s_33 m_multiple_tbf_downlink_assignment_message_content_s_33; //truncation ;
+}multiple_tbf_downlink_assignment_message_content_s_28;
+
+/* SEQUENCE multiple tbf downlink assignment message content */
+typedef struct multiple_tbf_downlink_assignment_message_content{
+ header_struct1 header;
+ U8 msgtype;
+ U8 page_mode;
+ ispresent multiple_tbf_downlink_assignment_message_content_s_1_tag;
+ union multiple_tbf_downlink_assignment_message_content_s_1_value{
+ persistence_level_ie persistence_level;
+ }multiple_tbf_downlink_assignment_message_content_s_1_value;
+ multiple_tbf_downlink_assignment_message_content_s_4_enum multiple_tbf_downlink_assignment_message_content_s_4_tag;
+ union multiple_tbf_downlink_assignment_message_content_s_4_value{
+ global_tfi_ie global_tfi;
+ multiple_tbf_downlink_assignment_message_content_s_5 m_multiple_tbf_downlink_assignment_message_content_s_5;
+ }multiple_tbf_downlink_assignment_message_content_s_4_value;
+ multiple_tbf_downlink_assignment_message_content_s_6_enum multiple_tbf_downlink_assignment_message_content_s_6_tag;
+ union multiple_tbf_downlink_assignment_message_content_s_6_value{
+ multiple_tbf_downlink_assignment_message_content_s_8 m_multiple_tbf_downlink_assignment_message_content_s_8;
+ multiple_tbf_downlink_assignment_message_content_s_28 m_multiple_tbf_downlink_assignment_message_content_s_28;
+ }multiple_tbf_downlink_assignment_message_content_s_6_value;
+}multiple_tbf_downlink_assignment_message_content;
+
+typedef enum {
+ MULTIPLE_TBF_UPLINK_ASSIGNMENT_MESSAGE_CONTENT_GLOBAL_TFI,
+ MULTIPLE_TBF_UPLINK_ASSIGNMENT_MESSAGE_CONTENT_S_5
+}multiple_tbf_uplink_assignment_message_content_s_4_enum;
+
+typedef struct multiple_tbf_uplink_assignment_message_content_s_5{
+ tlli___g_rnti_ie tlli___g_rnti;
+ U8 g_rnti_extension;
+}multiple_tbf_uplink_assignment_message_content_s_5;
+
+typedef enum {
+ MULTIPLE_TBF_UPLINK_ASSIGNMENT_MESSAGE_CONTENT_S_7,
+ MULTIPLE_TBF_UPLINK_ASSIGNMENT_MESSAGE_CONTENT_S_13
+}multiple_tbf_uplink_assignment_message_content_s_6_enum;
+
+typedef struct multiple_tbf_uplink_assignment_message_content_s_8{
+ ispresent multiple_tbf_uplink_assignment_message_content_s_9_tag;
+ union multiple_tbf_uplink_assignment_message_content_s_9_value{
+ U8 channel_coding_command;
+ }multiple_tbf_uplink_assignment_message_content_s_9_value;
+ U8 tlli_block_channel_coding;
+ packet_timing_advance_ie packet_timing_advance;
+ ispresent multiple_tbf_uplink_assignment_message_content_s_10_tag;
+ union multiple_tbf_uplink_assignment_message_content_s_10_value{
+ U8 packet_extended_timing_advance;
+ }multiple_tbf_uplink_assignment_message_content_s_10_value;
+ ispresent multiple_tbf_uplink_assignment_message_content_s_11_tag;
+ union multiple_tbf_uplink_assignment_message_content_s_11_value{
+ frequency_parameters_ie frequency_parameters;
+ }multiple_tbf_uplink_assignment_message_content_s_11_value;
+ ispresent multiple_tbf_uplink_assignment_message_content_s_12_tag;
+ union multiple_tbf_uplink_assignment_message_content_s_12_value{
+ uplink_assignment_struct uplink_tbf_assignment;
+ }multiple_tbf_uplink_assignment_message_content_s_12_value;
+}multiple_tbf_uplink_assignment_message_content_s_8;
+
+typedef enum {
+ MULTIPLE_TBF_UPLINK_ASSIGNMENT_MESSAGE_CONTENT_S_14,
+ MULTIPLE_TBF_UPLINK_ASSIGNMENT_MESSAGE_CONTENT_S_25
+}multiple_tbf_uplink_assignment_message_content_s_13_enum;
+
+typedef enum {
+ MULTIPLE_TBF_UPLINK_ASSIGNMENT_MESSAGE_CONTENT_S_22_NULL,
+ MULTIPLE_TBF_UPLINK_ASSIGNMENT_MESSAGE_CONTENT_S_22_BIT,
+ MULTIPLE_TBF_UPLINK_ASSIGNMENT_MESSAGE_CONTENT_S_23
+}multiple_tbf_uplink_assignment_message_content_s_22_enum;
+
+typedef struct multiple_tbf_uplink_assignment_message_content_s_22_bit{
+ U16 numElements_multiple_tbf_uplink_assignment_message_content_s_22_bit;
+ U8 * multiple_tbf_uplink_assignment_message_content_s_22_bit;
+}multiple_tbf_uplink_assignment_message_content_s_22_bit;
+
+typedef struct multiple_tbf_uplink_assignment_message_content_s_24{
+ ispresent multiple_tbf_uplink_assignment_message_content_s_24_tag;
+ union multiple_tbf_uplink_assignment_message_content_s_24_value{
+ U8 npm_transfer_time;
+ }multiple_tbf_uplink_assignment_message_content_s_24_value;
+}multiple_tbf_uplink_assignment_message_content_s_24;
+
+typedef struct multiple_tbf_uplink_assignment_message_content_s_23{
+ U16 numElements_m_multiple_tbf_uplink_assignment_message_content_s_24;
+ multiple_tbf_uplink_assignment_message_content_s_24 * m_multiple_tbf_uplink_assignment_message_content_s_24;
+}multiple_tbf_uplink_assignment_message_content_s_23;
+
+typedef struct multiple_tbf_uplink_assignment_message_content_s_15{
+ ispresent multiple_tbf_uplink_assignment_message_content_s_16_tag;
+ union multiple_tbf_uplink_assignment_message_content_s_16_value{
+ egprs_window_size_ie egprs_window_size;
+ }multiple_tbf_uplink_assignment_message_content_s_16_value;
+ ispresent multiple_tbf_uplink_assignment_message_content_s_17_tag;
+ union multiple_tbf_uplink_assignment_message_content_s_17_value{
+ egprs_modulation_and_coding_ie egprs_channel_coding_command;
+ }multiple_tbf_uplink_assignment_message_content_s_17_value;
+ resegment_ie resegment;
+ U8 tlli_block_channel_coding;
+ ispresent multiple_tbf_uplink_assignment_message_content_s_18_tag;
+ union multiple_tbf_uplink_assignment_message_content_s_18_value{
+ U8 bep_period2;
+ }multiple_tbf_uplink_assignment_message_content_s_18_value;
+ packet_timing_advance_ie packet_timing_advance;
+ ispresent multiple_tbf_uplink_assignment_message_content_s_19_tag;
+ union multiple_tbf_uplink_assignment_message_content_s_19_value{
+ U8 packet_extended_timing_advance;
+ }multiple_tbf_uplink_assignment_message_content_s_19_value;
+ ispresent multiple_tbf_uplink_assignment_message_content_s_20_tag;
+ union multiple_tbf_uplink_assignment_message_content_s_20_value{
+ frequency_parameters_ie frequency_parameters;
+ }multiple_tbf_uplink_assignment_message_content_s_20_value;
+ ispresent multiple_tbf_uplink_assignment_message_content_s_21_tag;
+ union multiple_tbf_uplink_assignment_message_content_s_21_value{
+ uplink_assignment_struct uplink_tbf_assignment;
+ }multiple_tbf_uplink_assignment_message_content_s_21_value;
+ multiple_tbf_uplink_assignment_message_content_s_22_enum multiple_tbf_uplink_assignment_message_content_s_22_tag;
+ union multiple_tbf_uplink_assignment_message_content_s_22_value{
+ multiple_tbf_uplink_assignment_message_content_s_22_bit m_multiple_tbf_uplink_assignment_message_content_s_22_bit;
+ multiple_tbf_uplink_assignment_message_content_s_23 m_multiple_tbf_uplink_assignment_message_content_s_23;
+ }multiple_tbf_uplink_assignment_message_content_s_22_value;
+}multiple_tbf_uplink_assignment_message_content_s_15;
+
+typedef enum {
+ MULTIPLE_TBF_UPLINK_ASSIGNMENT_MESSAGE_CONTENT_CONCAT_00,
+ MULTIPLE_TBF_UPLINK_ASSIGNMENT_MESSAGE_CONTENT_S_32,
+ MULTIPLE_TBF_UPLINK_ASSIGNMENT_MESSAGE_CONTENT_DUAL_CARRIER_FREQUENCY_PARAMETERS
+}multiple_tbf_uplink_assignment_message_content_s_31_enum;
+
+typedef struct multiple_tbf_uplink_assignment_message_content_s_32{
+ ispresent multiple_tbf_uplink_assignment_message_content_s_33_tag;
+ union multiple_tbf_uplink_assignment_message_content_s_33_value{
+ frequency_parameters_ie frequency_parameters_c1;
+ }multiple_tbf_uplink_assignment_message_content_s_33_value;
+ ispresent multiple_tbf_uplink_assignment_message_content_s_34_tag;
+ union multiple_tbf_uplink_assignment_message_content_s_34_value{
+ frequency_parameters_ie frequency_parameters_c2;
+ }multiple_tbf_uplink_assignment_message_content_s_34_value;
+}multiple_tbf_uplink_assignment_message_content_s_32;
+
+typedef struct multiple_tbf_uplink_assignment_message_content_s_26{
+ ispresent multiple_tbf_uplink_assignment_message_content_s_27_tag;
+ union multiple_tbf_uplink_assignment_message_content_s_27_value{
+ egprs_window_size_ie egprs_window_size;
+ }multiple_tbf_uplink_assignment_message_content_s_27_value;
+ ispresent multiple_tbf_uplink_assignment_message_content_s_28_tag;
+ union multiple_tbf_uplink_assignment_message_content_s_28_value{
+ egprs_modulation_and_coding_ie egprs_channel_coding_command;
+ }multiple_tbf_uplink_assignment_message_content_s_28_value;
+ assignment_info_struct assignment_info;
+ U8 resegment;
+ U8 tlli_block_channel_coding;
+ ispresent multiple_tbf_uplink_assignment_message_content_s_29_tag;
+ union multiple_tbf_uplink_assignment_message_content_s_29_value{
+ U8 bep_period2;
+ }multiple_tbf_uplink_assignment_message_content_s_29_value;
+ packet_timing_advance_ie packet_timing_advance;
+ ispresent multiple_tbf_uplink_assignment_message_content_s_30_tag;
+ union multiple_tbf_uplink_assignment_message_content_s_30_value{
+ U8 packet_extended_timing_advance;
+ }multiple_tbf_uplink_assignment_message_content_s_30_value;
+ multiple_tbf_uplink_assignment_message_content_s_31_enum multiple_tbf_uplink_assignment_message_content_s_31_tag;
+ union multiple_tbf_uplink_assignment_message_content_s_31_value{
+ multiple_tbf_uplink_assignment_message_content_s_32 m_multiple_tbf_uplink_assignment_message_content_s_32;
+ dual_carrier_frequency_parameters_ie dual_carrier_frequency_parameters;
+ }multiple_tbf_uplink_assignment_message_content_s_31_value;
+ ispresent multiple_tbf_uplink_assignment_message_content_s_35_tag;
+ union multiple_tbf_uplink_assignment_message_content_s_35_value{
+ uplink_assignment_2_struct uplink_tbf_assignment_2;
+ }multiple_tbf_uplink_assignment_message_content_s_35_value;
+ egprs_level_ie uplink_egprs_level;
+ ispresent multiple_tbf_uplink_assignment_message_content_s_36_tag;
+ union multiple_tbf_uplink_assignment_message_content_s_36_value{
+ pulse_format_ie pulse_format;
+ }multiple_tbf_uplink_assignment_message_content_s_36_value;
+}multiple_tbf_uplink_assignment_message_content_s_26;
+
+typedef struct multiple_tbf_uplink_assignment_message_content_s_13{
+ multiple_tbf_uplink_assignment_message_content_s_13_enum multiple_tbf_uplink_assignment_message_content_s_13_tag;
+ union multiple_tbf_uplink_assignment_message_content_s_13_value{
+ multiple_tbf_uplink_assignment_message_content_s_15 m_multiple_tbf_uplink_assignment_message_content_s_15;
+ multiple_tbf_uplink_assignment_message_content_s_26 m_multiple_tbf_uplink_assignment_message_content_s_26;
+ }multiple_tbf_uplink_assignment_message_content_s_13_value;
+}multiple_tbf_uplink_assignment_message_content_s_13;
+
+/* SEQUENCE multiple tbf uplink assignment message content */
+typedef struct multiple_tbf_uplink_assignment_message_content{
+ header_struct1 header;
+ U8 msgtype;
+ U8 page_mode;
+ ispresent multiple_tbf_uplink_assignment_message_content_s_1_tag;
+ union multiple_tbf_uplink_assignment_message_content_s_1_value{
+ persistence_level_ie persistence_level;
+ }multiple_tbf_uplink_assignment_message_content_s_1_value;
+ multiple_tbf_uplink_assignment_message_content_s_4_enum multiple_tbf_uplink_assignment_message_content_s_4_tag;
+ union multiple_tbf_uplink_assignment_message_content_s_4_value{
+ global_tfi_ie global_tfi;
+ multiple_tbf_uplink_assignment_message_content_s_5 m_multiple_tbf_uplink_assignment_message_content_s_5;
+ }multiple_tbf_uplink_assignment_message_content_s_4_value;
+ multiple_tbf_uplink_assignment_message_content_s_6_enum multiple_tbf_uplink_assignment_message_content_s_6_tag;
+ union multiple_tbf_uplink_assignment_message_content_s_6_value{
+ multiple_tbf_uplink_assignment_message_content_s_8 m_multiple_tbf_uplink_assignment_message_content_s_8;
+ multiple_tbf_uplink_assignment_message_content_s_13 m_multiple_tbf_uplink_assignment_message_content_s_13;
+ }multiple_tbf_uplink_assignment_message_content_s_6_value;
+}multiple_tbf_uplink_assignment_message_content;
+
+
+typedef enum {
+ MULTIPLE_TBF_TIMESLOT_RECONFIGURE_MESSAGE_CONTENT_S_4,
+ MULTIPLE_TBF_TIMESLOT_RECONFIGURE_MESSAGE_CONTENT_S_10
+}multiple_tbf_timeslot_reconfigure_message_content_s_3_enum;
+
+typedef struct multiple_tbf_timeslot_reconfigure_message_content_s_5{
+ ispresent multiple_tbf_timeslot_reconfigure_message_content_s_6_tag;
+ union multiple_tbf_timeslot_reconfigure_message_content_s_6_value{
+ U8 channel_coding_command;
+ }multiple_tbf_timeslot_reconfigure_message_content_s_6_value;
+ global_packet_timing_advance_ie global_packet_timing_advance;
+ ispresent multiple_tbf_timeslot_reconfigure_message_content_s_7_tag;
+ union multiple_tbf_timeslot_reconfigure_message_content_s_7_value{
+ frequency_parameters_ie frequency_parameters;
+ }multiple_tbf_timeslot_reconfigure_message_content_s_7_value;
+ ispresent multiple_tbf_timeslot_reconfigure_message_content_s_8_tag;
+ union multiple_tbf_timeslot_reconfigure_message_content_s_8_value{
+ U8 packet_extended_timing_advance;
+ }multiple_tbf_timeslot_reconfigure_message_content_s_8_value;
+ U16 numElements_multiple_downlink_assignment;
+ multiple_downlink_assignment_struct * multiple_downlink_assignment;
+ multiple_uplink_assignment_struct multiple_uplink_assignment;
+}multiple_tbf_timeslot_reconfigure_message_content_s_5;
+
+typedef enum {
+ MULTIPLE_TBF_TIMESLOT_RECONFIGURE_MESSAGE_CONTENT_S_11,
+ MULTIPLE_TBF_TIMESLOT_RECONFIGURE_MESSAGE_CONTENT_S_25
+}multiple_tbf_timeslot_reconfigure_message_content_s_10_enum;
+
+typedef struct multiple_tbf_timeslot_reconfigure_message_content_s_16{
+ ispresent multiple_tbf_timeslot_reconfigure_message_content_s_17_tag;
+ union multiple_tbf_timeslot_reconfigure_message_content_s_17_value{
+ egprs_window_size_ie uplink_egprs_window_size;
+ }multiple_tbf_timeslot_reconfigure_message_content_s_17_value;
+ U8 link_quality_measurement_mode;
+ ispresent multiple_tbf_timeslot_reconfigure_message_content_s_18_tag;
+ union multiple_tbf_timeslot_reconfigure_message_content_s_18_value{
+ U8 bep_period2;
+ }multiple_tbf_timeslot_reconfigure_message_content_s_18_value;
+}multiple_tbf_timeslot_reconfigure_message_content_s_16;
+
+typedef enum {
+ MULTIPLE_TBF_TIMESLOT_RECONFIGURE_MESSAGE_CONTENT_S_22_NULL,
+ MULTIPLE_TBF_TIMESLOT_RECONFIGURE_MESSAGE_CONTENT_S_22_BIT,
+ MULTIPLE_TBF_TIMESLOT_RECONFIGURE_MESSAGE_CONTENT_S_23
+}multiple_tbf_timeslot_reconfigure_message_content_s_22_enum;
+
+typedef struct multiple_tbf_timeslot_reconfigure_message_content_s_22_bit{
+ U16 numElements_multiple_tbf_timeslot_reconfigure_message_content_s_22_bit;
+ U8 * multiple_tbf_timeslot_reconfigure_message_content_s_22_bit;
+}multiple_tbf_timeslot_reconfigure_message_content_s_22_bit;
+
+typedef struct multiple_tbf_timeslot_reconfigure_message_content_s_24{
+ ispresent multiple_tbf_timeslot_reconfigure_message_content_s_24_tag;
+ union multiple_tbf_timeslot_reconfigure_message_content_s_24_value{
+ U8 npm_transfer_time;
+ }multiple_tbf_timeslot_reconfigure_message_content_s_24_value;
+}multiple_tbf_timeslot_reconfigure_message_content_s_24;
+
+typedef struct multiple_tbf_timeslot_reconfigure_message_content_s_23{
+ U16 numElements_m_multiple_tbf_timeslot_reconfigure_message_content_s_24;
+ multiple_tbf_timeslot_reconfigure_message_content_s_24 * m_multiple_tbf_timeslot_reconfigure_message_content_s_24;
+}multiple_tbf_timeslot_reconfigure_message_content_s_23;
+
+typedef struct multiple_tbf_timeslot_reconfigure_message_content_s_12{
+ ispresent multiple_tbf_timeslot_reconfigure_message_content_s_13_tag;
+ union multiple_tbf_timeslot_reconfigure_message_content_s_13_value{
+ egprs_modulation_and_coding_ie egprs_channel_coding_command;
+ }multiple_tbf_timeslot_reconfigure_message_content_s_13_value;
+ U8 resegment;
+ ispresent multiple_tbf_timeslot_reconfigure_message_content_s_14_tag;
+ union multiple_tbf_timeslot_reconfigure_message_content_s_14_value{
+ egprs_window_size_ie downlink_egprs_window_size;
+ }multiple_tbf_timeslot_reconfigure_message_content_s_14_value;
+ ispresent multiple_tbf_timeslot_reconfigure_message_content_s_15_tag;
+ union multiple_tbf_timeslot_reconfigure_message_content_s_15_value{
+ multiple_tbf_timeslot_reconfigure_message_content_s_16 m_multiple_tbf_timeslot_reconfigure_message_content_s_16;
+ }multiple_tbf_timeslot_reconfigure_message_content_s_15_value;
+ global_packet_timing_advance_ie global_packet_timing_advance;
+ ispresent multiple_tbf_timeslot_reconfigure_message_content_s_19_tag;
+ union multiple_tbf_timeslot_reconfigure_message_content_s_19_value{
+ U8 packet_extended_timing_advance;
+ }multiple_tbf_timeslot_reconfigure_message_content_s_19_value;
+ ispresent multiple_tbf_timeslot_reconfigure_message_content_s_20_tag;
+ union multiple_tbf_timeslot_reconfigure_message_content_s_20_value{
+ frequency_parameters_ie frequency_parameters;
+ }multiple_tbf_timeslot_reconfigure_message_content_s_20_value;
+ U16 numElements_multiple_downlink_assignment;
+ multiple_downlink_assignment_struct * multiple_downlink_assignment;
+ multiple_uplink_assignment_struct multiple_uplink_assignment;
+ multiple_tbf_timeslot_reconfigure_message_content_s_22_enum multiple_tbf_timeslot_reconfigure_message_content_s_22_tag;
+ union multiple_tbf_timeslot_reconfigure_message_content_s_22_value{
+ multiple_tbf_timeslot_reconfigure_message_content_s_22_bit m_multiple_tbf_timeslot_reconfigure_message_content_s_22_bit;
+ multiple_tbf_timeslot_reconfigure_message_content_s_23 m_multiple_tbf_timeslot_reconfigure_message_content_s_23;
+ }multiple_tbf_timeslot_reconfigure_message_content_s_22_value;
+}multiple_tbf_timeslot_reconfigure_message_content_s_12;
+
+typedef struct multiple_tbf_timeslot_reconfigure_message_content_s_30{
+ ispresent multiple_tbf_timeslot_reconfigure_message_content_s_31_tag;
+ union multiple_tbf_timeslot_reconfigure_message_content_s_31_value{
+ egprs_window_size_ie uplink_egprs_window_size;
+ }multiple_tbf_timeslot_reconfigure_message_content_s_31_value;
+ U8 link_quality_measurement_mode;
+ ispresent multiple_tbf_timeslot_reconfigure_message_content_s_32_tag;
+ union multiple_tbf_timeslot_reconfigure_message_content_s_32_value{
+ U8 bep_period2;
+ }multiple_tbf_timeslot_reconfigure_message_content_s_32_value;
+}multiple_tbf_timeslot_reconfigure_message_content_s_30;
+
+typedef enum {
+ MULTIPLE_TBF_TIMESLOT_RECONFIGURE_MESSAGE_CONTENT_CONCAT_00,
+ MULTIPLE_TBF_TIMESLOT_RECONFIGURE_MESSAGE_CONTENT_S_35,
+ MULTIPLE_TBF_TIMESLOT_RECONFIGURE_MESSAGE_CONTENT_DUAL_CARRIER_FREQUENCY_PARAMETERS
+}multiple_tbf_timeslot_reconfigure_message_content_s_34_enum;
+
+typedef struct multiple_tbf_timeslot_reconfigure_message_content_s_35{
+ ispresent multiple_tbf_timeslot_reconfigure_message_content_s_36_tag;
+ union multiple_tbf_timeslot_reconfigure_message_content_s_36_value{
+ frequency_parameters_ie frequency_parameters_c1;
+ }multiple_tbf_timeslot_reconfigure_message_content_s_36_value;
+ ispresent multiple_tbf_timeslot_reconfigure_message_content_s_37_tag;
+ union multiple_tbf_timeslot_reconfigure_message_content_s_37_value{
+ frequency_parameters_ie frequency_parameters_c2;
+ }multiple_tbf_timeslot_reconfigure_message_content_s_37_value;
+}multiple_tbf_timeslot_reconfigure_message_content_s_35;
+
+typedef struct multiple_tbf_timeslot_reconfigure_message_content_s_39{
+ U8 fanr;
+ U16 numElements_btti_multiple_downlink_assignment;
+ btti_multiple_downlink_assignment_struct_2 * btti_multiple_downlink_assignment;
+}multiple_tbf_timeslot_reconfigure_message_content_s_39;
+
+typedef struct multiple_tbf_timeslot_reconfigure_message_content_s_26{
+ ispresent multiple_tbf_timeslot_reconfigure_message_content_s_27_tag;
+ union multiple_tbf_timeslot_reconfigure_message_content_s_27_value{
+ egprs_modulation_and_coding_ie egprs_channel_coding_command;
+ }multiple_tbf_timeslot_reconfigure_message_content_s_27_value;
+ U8 resegment;
+ ispresent multiple_tbf_timeslot_reconfigure_message_content_s_28_tag;
+ union multiple_tbf_timeslot_reconfigure_message_content_s_28_value{
+ egprs_window_size_ie downlink_egprs_window_size;
+ }multiple_tbf_timeslot_reconfigure_message_content_s_28_value;
+ ispresent multiple_tbf_timeslot_reconfigure_message_content_s_29_tag;
+ union multiple_tbf_timeslot_reconfigure_message_content_s_29_value{
+ multiple_tbf_timeslot_reconfigure_message_content_s_30 m_multiple_tbf_timeslot_reconfigure_message_content_s_30;
+ }multiple_tbf_timeslot_reconfigure_message_content_s_29_value;
+ global_packet_timing_advance_ie global_packet_timing_advance;
+ ispresent multiple_tbf_timeslot_reconfigure_message_content_s_33_tag;
+ union multiple_tbf_timeslot_reconfigure_message_content_s_33_value{
+ U8 packet_extended_timing_advance;
+ }multiple_tbf_timeslot_reconfigure_message_content_s_33_value;
+ multiple_tbf_timeslot_reconfigure_message_content_s_34_enum multiple_tbf_timeslot_reconfigure_message_content_s_34_tag;
+ union multiple_tbf_timeslot_reconfigure_message_content_s_34_value{
+ multiple_tbf_timeslot_reconfigure_message_content_s_35 m_multiple_tbf_timeslot_reconfigure_message_content_s_35;
+ dual_carrier_frequency_parameters_ie dual_carrier_frequency_parameters;
+ }multiple_tbf_timeslot_reconfigure_message_content_s_34_value;
+ ispresent multiple_tbf_timeslot_reconfigure_message_content_s_38_tag;
+ union multiple_tbf_timeslot_reconfigure_message_content_s_38_value{
+ multiple_tbf_timeslot_reconfigure_message_content_s_39 m_multiple_tbf_timeslot_reconfigure_message_content_s_39;
+ }multiple_tbf_timeslot_reconfigure_message_content_s_38_value;
+ ispresent multiple_tbf_timeslot_reconfigure_message_content_s_41_tag;
+ union multiple_tbf_timeslot_reconfigure_message_content_s_41_value{
+ pdch_pairs_description_ie_for_mttr pdch_pairs_description_for_mttr;
+ }multiple_tbf_timeslot_reconfigure_message_content_s_41_value;
+ ispresent multiple_tbf_timeslot_reconfigure_message_content_s_42_tag;
+ union multiple_tbf_timeslot_reconfigure_message_content_s_42_value{
+ multiple_uplink_assignment_2_struct multiple_uplink_assignment;
+ }multiple_tbf_timeslot_reconfigure_message_content_s_42_value;
+ egprs_level_ie uplink_egprs_level;
+ egprs_level_ie downlink_egprs_level;
+ ispresent multiple_tbf_timeslot_reconfigure_message_content_s_43_tag;
+ union multiple_tbf_timeslot_reconfigure_message_content_s_43_value{
+ pulse_format_ie pulse_format;
+ }multiple_tbf_timeslot_reconfigure_message_content_s_43_value;
+}multiple_tbf_timeslot_reconfigure_message_content_s_26;
+
+typedef struct multiple_tbf_timeslot_reconfigure_message_content_s_10{
+ multiple_tbf_timeslot_reconfigure_message_content_s_10_enum multiple_tbf_timeslot_reconfigure_message_content_s_10_tag;
+ union multiple_tbf_timeslot_reconfigure_message_content_s_10_value{
+ multiple_tbf_timeslot_reconfigure_message_content_s_12 m_multiple_tbf_timeslot_reconfigure_message_content_s_12;
+ multiple_tbf_timeslot_reconfigure_message_content_s_26 m_multiple_tbf_timeslot_reconfigure_message_content_s_26;
+ }multiple_tbf_timeslot_reconfigure_message_content_s_10_value;
+}multiple_tbf_timeslot_reconfigure_message_content_s_10;
+
+/* SEQUENCE multiple tbf timeslot reconfigure message content */
+typedef struct multiple_tbf_timeslot_reconfigure_message_content{
+ header_struct1 header;
+ U8 msgtype;
+ U8 page_mode;
+ global_tfi_ie global_tfi;
+ multiple_tbf_timeslot_reconfigure_message_content_s_3_enum multiple_tbf_timeslot_reconfigure_message_content_s_3_tag;
+ union multiple_tbf_timeslot_reconfigure_message_content_s_3_value{
+ multiple_tbf_timeslot_reconfigure_message_content_s_5 m_multiple_tbf_timeslot_reconfigure_message_content_s_5;
+ multiple_tbf_timeslot_reconfigure_message_content_s_10 m_multiple_tbf_timeslot_reconfigure_message_content_s_10;
+ }multiple_tbf_timeslot_reconfigure_message_content_s_3_value;
+}multiple_tbf_timeslot_reconfigure_message_content;
+
+typedef struct nc_measurement_parameters_struct_s_2{
+ U8 nc__non_drx_period;
+ U8 nc_reporting_period_i;
+ U8 nc_reporting_period_t;
+}nc_measurement_parameters_struct_s_2;
+
+/* SEQUENCE nc measurement parameters struct */
+typedef struct nc_measurement_parameters_struct{
+ U8 network_control_order;
+ ispresent nc_measurement_parameters_struct_s_1_tag;
+ union nc_measurement_parameters_struct_s_1_value{
+ nc_measurement_parameters_struct_s_2 m_nc_measurement_parameters_struct_s_2;
+ }nc_measurement_parameters_struct_s_1_value;
+ ispresent nc_measurement_parameters_struct_s_3_tag;
+ union nc_measurement_parameters_struct_s_3_value{
+ nc_frequency_list_struct nc_frequency_list;
+ }nc_measurement_parameters_struct_s_3_value;
+}nc_measurement_parameters_struct;
+
+typedef enum {
+ ENH_MEASUREMENT_PARAMETERS_STRUCT_S_2,
+ ENH_MEASUREMENT_PARAMETERS_STRUCT_PSI3_CHANGE_MARK
+}enh_measurement_parameters_struct_s_1_enum;
+
+typedef struct enh_measurement_parameters_struct_s_2{
+ U8 ba_ind;
+ U8 p_3_g_ba_ind;
+}enh_measurement_parameters_struct_s_2;
+
+/* SEQUENCE enh measurement parameters struct */
+typedef struct enh_measurement_parameters_struct{
+ enh_measurement_parameters_struct_s_1_enum enh_measurement_parameters_struct_s_1_tag;
+ union enh_measurement_parameters_struct_s_1_value{
+ enh_measurement_parameters_struct_s_2 m_enh_measurement_parameters_struct_s_2;
+ U8 psi3_change_mark;
+ }enh_measurement_parameters_struct_s_1_value;
+ U8 pmo_ind;
+ U8 report_type;
+ U8 reporting_rate;
+ U8 invalid_bsic_reporting;
+ ispresent enh_measurement_parameters_struct_s_3_tag;
+ union enh_measurement_parameters_struct_s_3_value{
+ p_3_g_neighbour_cell_description_struct p_3_g_neighbour_cell_description;
+ }enh_measurement_parameters_struct_s_3_value;
+ ispresent enh_measurement_parameters_struct_s_4_tag;
+ union enh_measurement_parameters_struct_s_4_value{
+ gprs_rep_priority_description_struct gprs_rep_priority_description;
+ }enh_measurement_parameters_struct_s_4_value;
+ ispresent enh_measurement_parameters_struct_s_5_tag;
+ union enh_measurement_parameters_struct_s_5_value{
+ gprs_measurement_parameters_description_struct gprs_measurement_parameters_description;
+ }enh_measurement_parameters_struct_s_5_value;
+ ispresent enh_measurement_parameters_struct_s_6_tag;
+ union enh_measurement_parameters_struct_s_6_value{
+ gprs_3_g_measurement_parameters_bis_description_struct gprs_3_g_measurement_parameters_description;
+ }enh_measurement_parameters_struct_s_6_value;
+}enh_measurement_parameters_struct;
+
+/* SEQUENCE nc iu mode only cell list struct */
+typedef struct nc_iu_mode_only_cell_list_struct{
+ U16 numElements_list_of_added_cells;
+ add_iu_mode_only_cell_list_struct * list_of_added_cells;
+}nc_iu_mode_only_cell_list_struct;
+
+/* SEQUENCE pccch description lists struct */
+typedef struct pccch_description_lists_struct{
+ U16 numElements_m_pccch_description_struct_1;
+ pccch_description_struct_1 * m_pccch_description_struct_1;
+}pccch_description_lists_struct;
+
+typedef enum {
+ EXT_MEASUREMENT_ORDER,
+ M_EM1_STRUCT,
+ EXT_MEASUREMENT_PARAMETERS_STRUCT_EXT_MEASUREMENT_ORDER,
+ EXT_MEASUREMENT_PARAMETERS_STRUCT_EXT_MEASUREMENT_ORDER1
+}ext_measurement_parameters_struct_s_0_enum;
+
+/* SEQUENCE ext measurement parameters struct */
+typedef struct ext_measurement_parameters_struct{
+ ext_measurement_parameters_struct_s_0_enum ext_measurement_parameters_struct_s_0_tag;
+ U8 ext_measurement_order;
+ union ext_measurement_parameters_struct_s_0_value{
+ em1_struct m_em1_struct;
+ }ext_measurement_parameters_struct_s_0_value;
+}ext_measurement_parameters_struct;
+
+typedef enum {
+ GSM_TARGET_CELL_STRUCT_S_1_NULL,
+ GSM_TARGET_CELL_STRUCT_S_1_BIT,
+ GSM_TARGET_CELL_STRUCT_S_2
+}gsm_target_cell_struct_s_1_enum;
+
+typedef struct gsm_target_cell_struct_s_1_bit{
+ U16 numElements_gsm_target_cell_struct_s_1_bit;
+ U8 * gsm_target_cell_struct_s_1_bit;
+}gsm_target_cell_struct_s_1_bit;
+
+typedef enum {
+ GSM_TARGET_CELL_STRUCT_S_4_NULL,
+ GSM_TARGET_CELL_STRUCT_S_4_BIT,
+ GSM_TARGET_CELL_STRUCT_S_5
+}gsm_target_cell_struct_s_4_enum;
+
+typedef struct gsm_target_cell_struct_s_4_bit{
+ U16 numElements_gsm_target_cell_struct_s_4_bit;
+ U8 * gsm_target_cell_struct_s_4_bit;
+}gsm_target_cell_struct_s_4_bit;
+
+typedef enum {
+ GSM_TARGET_CELL_STRUCT_S_6_NULL,
+ GSM_TARGET_CELL_STRUCT_S_6_BIT,
+ GSM_TARGET_CELL_STRUCT_S_7
+}gsm_target_cell_struct_s_6_enum;
+
+typedef struct gsm_target_cell_struct_s_6_bit{
+ U16 numElements_gsm_target_cell_struct_s_6_bit;
+ U8 * gsm_target_cell_struct_s_6_bit;
+}gsm_target_cell_struct_s_6_bit;
+
+typedef enum {
+ GSM_TARGET_CELL_STRUCT_S_10_NULL,
+ GSM_TARGET_CELL_STRUCT_S_10_BIT,
+ GSM_TARGET_CELL_STRUCT_S_11
+}gsm_target_cell_struct_s_10_enum;
+
+typedef struct gsm_target_cell_struct_s_10_bit{
+ U16 numElements_gsm_target_cell_struct_s_10_bit;
+ U8 * gsm_target_cell_struct_s_10_bit;
+}gsm_target_cell_struct_s_10_bit;
+
+typedef struct gsm_target_cell_struct_s_14{
+ iu_mode_neighbour_cell_params_struct m_iu_mode_neighbour_cell_params_struct;
+}gsm_target_cell_struct_s_14;
+
+typedef struct _gsm_target_cell_struct_s_14{
+ U16 numElements_m_gsm_target_cell_struct_s_14;
+ gsm_target_cell_struct_s_14 * m_gsm_target_cell_struct_s_14;
+}_gsm_target_cell_struct_s_14;
+
+typedef enum {
+ GSM_TARGET_CELL_STRUCT_S_17_NULL,
+ GSM_TARGET_CELL_STRUCT_S_17_BIT,
+ GSM_TARGET_CELL_STRUCT_S_18
+}gsm_target_cell_struct_s_17_enum;
+
+typedef struct gsm_target_cell_struct_s_17_bit{
+ U16 numElements_gsm_target_cell_struct_s_17_bit;
+ U8 * gsm_target_cell_struct_s_17_bit;
+}gsm_target_cell_struct_s_17_bit;
+
+typedef enum {
+ GSM_TARGET_CELL_STRUCT_S_19_NULL,
+ GSM_TARGET_CELL_STRUCT_S_19_BIT,
+ GSM_TARGET_CELL_STRUCT_S_20
+}gsm_target_cell_struct_s_19_enum;
+
+typedef struct gsm_target_cell_struct_s_19_bit{
+ U16 numElements_gsm_target_cell_struct_s_19_bit;
+ U8 * gsm_target_cell_struct_s_19_bit;
+}gsm_target_cell_struct_s_19_bit;
+
+typedef struct gsm_target_cell_struct_s_22{
+ U8 p_700__reporting_offset;
+ U8 p_700__reporting_threshold;
+}gsm_target_cell_struct_s_22;
+
+typedef struct gsm_target_cell_struct_s_24{
+ U8 p_810__reporting_offset;
+ U8 p_810__reporting_threshold;
+}gsm_target_cell_struct_s_24;
+
+typedef struct gsm_target_cell_struct_s_20{
+ ispresent gsm_target_cell_struct_s_21_tag;
+ union gsm_target_cell_struct_s_21_value{
+ gsm_target_cell_struct_s_22 m_gsm_target_cell_struct_s_22;
+ }gsm_target_cell_struct_s_21_value;
+ ispresent gsm_target_cell_struct_s_23_tag;
+ union gsm_target_cell_struct_s_23_value{
+ gsm_target_cell_struct_s_24 m_gsm_target_cell_struct_s_24;
+ }gsm_target_cell_struct_s_23_value;
+}gsm_target_cell_struct_s_20;
+
+typedef struct gsm_target_cell_struct_s_18{
+ U8 p_3_g_ccn_active;
+ gsm_target_cell_struct_s_19_enum gsm_target_cell_struct_s_19_tag;
+ union gsm_target_cell_struct_s_19_value{
+ gsm_target_cell_struct_s_19_bit m_gsm_target_cell_struct_s_19_bit;
+ gsm_target_cell_struct_s_20 m_gsm_target_cell_struct_s_20;
+ }gsm_target_cell_struct_s_19_value;
+}gsm_target_cell_struct_s_18;
+
+typedef struct gsm_target_cell_struct_s_11{
+ ispresent gsm_target_cell_struct_s_12_tag;
+ union gsm_target_cell_struct_s_12_value{
+ U8 g_rnti_extension;
+ }gsm_target_cell_struct_s_12_value;
+ ispresent gsm_target_cell_struct_s_13_tag;
+ union gsm_target_cell_struct_s_13_value{
+ _gsm_target_cell_struct_s_14 m_gsm_target_cell_struct_s_14;
+ }gsm_target_cell_struct_s_13_value;
+ ispresent gsm_target_cell_struct_s_15_tag;
+ union gsm_target_cell_struct_s_15_value{
+ nc_iu_mode_only_cell_list_struct nc_iu_mode_only_capable_cell_list;
+ }gsm_target_cell_struct_s_15_value;
+ ispresent gsm_target_cell_struct_s_16_tag;
+ union gsm_target_cell_struct_s_16_value{
+ gprs_3_g_additional_measurement_parameters_description_2_struct gprs_3_g_additional_measurement_parameters_description_2;
+ }gsm_target_cell_struct_s_16_value;
+ gsm_target_cell_struct_s_17_enum gsm_target_cell_struct_s_17_tag;
+ union gsm_target_cell_struct_s_17_value{
+ gsm_target_cell_struct_s_17_bit m_gsm_target_cell_struct_s_17_bit;
+ gsm_target_cell_struct_s_18 m_gsm_target_cell_struct_s_18;
+ }gsm_target_cell_struct_s_17_value;
+}gsm_target_cell_struct_s_11;
+
+typedef struct gsm_target_cell_struct_s_7{
+ U8 ccn_active;
+ ispresent gsm_target_cell_struct_s_8_tag;
+ union gsm_target_cell_struct_s_8_value{
+ U8 container_id;
+ }gsm_target_cell_struct_s_8_value;
+ ispresent gsm_target_cell_struct_s_9_tag;
+ union gsm_target_cell_struct_s_9_value{
+ ccn_support_description_struct ccn_support_description;
+ }gsm_target_cell_struct_s_9_value;
+ gsm_target_cell_struct_s_10_enum gsm_target_cell_struct_s_10_tag;
+ union gsm_target_cell_struct_s_10_value{
+ gsm_target_cell_struct_s_10_bit m_gsm_target_cell_struct_s_10_bit;
+ gsm_target_cell_struct_s_11 m_gsm_target_cell_struct_s_11;
+ }gsm_target_cell_struct_s_10_value;
+}gsm_target_cell_struct_s_7;
+
+typedef struct gsm_target_cell_struct_s_5{
+ enh_measurement_parameters_struct enh_measurement_parameters;
+ gsm_target_cell_struct_s_6_enum gsm_target_cell_struct_s_6_tag;
+ union gsm_target_cell_struct_s_6_value{
+ gsm_target_cell_struct_s_6_bit m_gsm_target_cell_struct_s_6_bit;
+ gsm_target_cell_struct_s_7 m_gsm_target_cell_struct_s_7;
+ }gsm_target_cell_struct_s_6_value;
+}gsm_target_cell_struct_s_5;
+
+typedef struct gsm_target_cell_struct_s_2{
+ ispresent gsm_target_cell_struct_s_3_tag;
+ union gsm_target_cell_struct_s_3_value{
+ lsa_parameters_ie lsa_parameters;
+ }gsm_target_cell_struct_s_3_value;
+ gsm_target_cell_struct_s_4_enum gsm_target_cell_struct_s_4_tag;
+ union gsm_target_cell_struct_s_4_value{
+ gsm_target_cell_struct_s_4_bit m_gsm_target_cell_struct_s_4_bit;
+ gsm_target_cell_struct_s_5 m_gsm_target_cell_struct_s_5;
+ }gsm_target_cell_struct_s_4_value;
+}gsm_target_cell_struct_s_2;
+
+/* SEQUENCE gsm target cell struct */
+typedef struct gsm_target_cell_struct{
+ U16 arfcn;
+ U8 bsic;
+ nc_measurement_parameters_struct nc_measurement_parameters;
+ gsm_target_cell_struct_s_1_enum gsm_target_cell_struct_s_1_tag;
+ union gsm_target_cell_struct_s_1_value{
+ gsm_target_cell_struct_s_1_bit m_gsm_target_cell_struct_s_1_bit;
+ gsm_target_cell_struct_s_2 m_gsm_target_cell_struct_s_2;
+ }gsm_target_cell_struct_s_1_value;
+}gsm_target_cell_struct;
+
+typedef enum {
+ PS_HANDOVER_RADIO_RESOURCES_2_IE_S_6,
+ PS_HANDOVER_RADIO_RESOURCES_2_IE_DUAL_CARRIER_FREQUENCY_PARAMETERS
+}ps_handover_radio_resources_2_ie_s_5_enum;
+
+typedef struct ps_handover_radio_resources_2_ie_s_6{
+ frequency_parameters_ie frequency_parameters_c1;
+ ispresent ps_handover_radio_resources_2_ie_s_7_tag;
+ union ps_handover_radio_resources_2_ie_s_7_value{
+ frequency_parameters_ie frequency_parameters_c2;
+ }ps_handover_radio_resources_2_ie_s_7_value;
+}ps_handover_radio_resources_2_ie_s_6;
+
+typedef struct ps_handover_radio_resources_2_ie_s_9{
+ global_packet_timing_advance_ie global_packet_timing_advance;
+ ispresent ps_handover_radio_resources_2_ie_s_10_tag;
+ union ps_handover_radio_resources_2_ie_s_10_value{
+ U8 packet_extended_timing_advance;
+ }ps_handover_radio_resources_2_ie_s_10_value;
+}ps_handover_radio_resources_2_ie_s_9;
+
+typedef struct ps_handover_radio_resources_2_ie_s_14{
+ U8 extension_length;
+ extension_information m_extension_information;
+}ps_handover_radio_resources_2_ie_s_14;
+
+/* SEQUENCE ps handover radio resources 2 ie */
+typedef struct ps_handover_radio_resources_2_ie{
+ ispresent ps_handover_radio_resources_2_ie_s_1_tag;
+ union ps_handover_radio_resources_2_ie_s_1_value{
+ U8 handover_reference;
+ }ps_handover_radio_resources_2_ie_s_1_value;
+ U16 arfcn;
+ U8 si;
+ U8 nci;
+ U8 bsic;
+ ispresent ps_handover_radio_resources_2_ie_s_2_tag;
+ union ps_handover_radio_resources_2_ie_s_2_value{
+ U8 ccn_active;
+ }ps_handover_radio_resources_2_ie_s_2_value;
+ ispresent ps_handover_radio_resources_2_ie_s_3_tag;
+ union ps_handover_radio_resources_2_ie_s_3_value{
+ U8 p_3_g_ccn_active;
+ }ps_handover_radio_resources_2_ie_s_3_value;
+ ispresent ps_handover_radio_resources_2_ie_s_4_tag;
+ union ps_handover_radio_resources_2_ie_s_4_value{
+ ccn_support_description_struct ccn_support_description;
+ }ps_handover_radio_resources_2_ie_s_4_value;
+ ps_handover_radio_resources_2_ie_s_5_enum ps_handover_radio_resources_2_ie_s_5_tag;
+ union ps_handover_radio_resources_2_ie_s_5_value{
+ ps_handover_radio_resources_2_ie_s_6 m_ps_handover_radio_resources_2_ie_s_6;
+ dual_carrier_frequency_parameters_ie dual_carrier_frequency_parameters;
+ }ps_handover_radio_resources_2_ie_s_5_value;
+ U8 network_control_order;
+ ispresent ps_handover_radio_resources_2_ie_s_8_tag;
+ union ps_handover_radio_resources_2_ie_s_8_value{
+ ps_handover_radio_resources_2_ie_s_9 m_ps_handover_radio_resources_2_ie_s_9;
+ }ps_handover_radio_resources_2_ie_s_8_value;
+ U8 rlc_reset;
+ egprs_level_ie uplink_egprs_level;
+ ispresent ps_handover_radio_resources_2_ie_s_11_tag;
+ union ps_handover_radio_resources_2_ie_s_11_value{
+ egprs_level_ie downlink_egprs_level;
+ }ps_handover_radio_resources_2_ie_s_11_value;
+ ispresent ps_handover_radio_resources_2_ie_s_12_tag;
+ union ps_handover_radio_resources_2_ie_s_12_value{
+ pulse_format_ie pulse_format;
+ }ps_handover_radio_resources_2_ie_s_12_value;
+ egprs_mode_struct_in_ps_ho_rr_2 egprs_mode;
+ ispresent ps_handover_radio_resources_2_ie_s_13_tag;
+ union ps_handover_radio_resources_2_ie_s_13_value{
+ ps_handover_radio_resources_2_ie_s_14 m_ps_handover_radio_resources_2_ie_s_14;
+ }ps_handover_radio_resources_2_ie_s_13_value;
+}ps_handover_radio_resources_2_ie;
+
+typedef struct egprs_packet_downlink_ack_nack_message_content_s_5{
+ U8 epd_a_n_extension_length;
+ epd_a_n_extension_info m_epd_a_n_extension_info;
+}egprs_packet_downlink_ack_nack_message_content_s_5;
+
+/* SEQUENCE egprs packet downlink ack/nack message content */
+typedef struct egprs_packet_downlink_ack_nack_message_content{
+ uplink_header_struct header;
+ U8 downlink_tfi;
+ U8 ms_out_of_memory;
+ ispresent egprs_packet_downlink_ack_nack_message_content_s_1_tag;
+ union egprs_packet_downlink_ack_nack_message_content_s_1_value{
+ egprs_channel_quality_report_ie egprs_channel_quality_report;
+ }egprs_packet_downlink_ack_nack_message_content_s_1_value;
+ ispresent egprs_packet_downlink_ack_nack_message_content_s_2_tag;
+ union egprs_packet_downlink_ack_nack_message_content_s_2_value{
+ channel_request_description_ie channel_request_description;
+ }egprs_packet_downlink_ack_nack_message_content_s_2_value;
+ ispresent egprs_packet_downlink_ack_nack_message_content_s_3_tag;
+ union egprs_packet_downlink_ack_nack_message_content_s_3_value{
+ U8 pfi;
+ }egprs_packet_downlink_ack_nack_message_content_s_3_value;
+ ispresent egprs_packet_downlink_ack_nack_message_content_s_4_tag;
+ union egprs_packet_downlink_ack_nack_message_content_s_4_value{
+ egprs_packet_downlink_ack_nack_message_content_s_5 m_egprs_packet_downlink_ack_nack_message_content_s_5;
+ }egprs_packet_downlink_ack_nack_message_content_s_4_value;
+ egprs_ack_nack_description_ie egprs_ack_nack_description;
+}egprs_packet_downlink_ack_nack_message_content;
+
+typedef enum {
+ ACCESS_CAPABILITIES,
+ MS_RA_CAPABILITY_VALUE_PART_STRUCT_S_2
+}ms_ra_capability_value_part_struct_s_1_enum;
+
+typedef struct ms_ra_capability_value_part_struct_s_2{
+ U8 length;
+ additional_access_technologies_list m_additional_access_technologies_list;
+}ms_ra_capability_value_part_struct_s_2;
+
+/* SEQUENCE ms ra capability value part struct */
+typedef struct ms_ra_capability_value_part_struct{
+ ms_ra_capability_value_part_struct_s_1_enum ms_ra_capability_value_part_struct_s_1_tag;
+ U8 access_technology_type;
+ union ms_ra_capability_value_part_struct_s_1_value{
+ access_capabilities_struct access_capabilities;
+ ms_ra_capability_value_part_struct_s_2 m_ms_ra_capability_value_part_struct_s_2;
+ }ms_ra_capability_value_part_struct_s_1_value;
+ ispresent ms_ra_capability_value_part_struct_s_4_tag;
+ union ms_ra_capability_value_part_struct_s_4_value{
+ struct ms_ra_capability_value_part_struct * m_ms_ra_capability_value_part_struct;
+ }ms_ra_capability_value_part_struct_s_4_value;
+}ms_ra_capability_value_part_struct;
+
+typedef enum {
+ PSI5_MESSAGE_CONTENT_S_3_NULL,
+ PSI5_MESSAGE_CONTENT_S_3_BIT,
+ PSI5_MESSAGE_CONTENT_S_4
+}psi5_message_content_s_3_enum;
+
+typedef struct psi5_message_content_s_3_bit{
+ U16 numElements_psi5_message_content_s_3_bit;
+ U8 * psi5_message_content_s_3_bit;
+}psi5_message_content_s_3_bit;
+
+typedef enum {
+ PSI5_MESSAGE_CONTENT_S_6_NULL,
+ PSI5_MESSAGE_CONTENT_S_6_BIT,
+ PSI5_MESSAGE_CONTENT_S_7
+}psi5_message_content_s_6_enum;
+
+typedef struct psi5_message_content_s_6_bit{
+ U16 numElements_psi5_message_content_s_6_bit;
+ U8 * psi5_message_content_s_6_bit;
+}psi5_message_content_s_6_bit;
+
+typedef enum {
+ PSI5_MESSAGE_CONTENT_S_9_NULL,
+ PSI5_MESSAGE_CONTENT_S_9_BIT,
+ PSI5_MESSAGE_CONTENT_S_10
+}psi5_message_content_s_9_enum;
+
+typedef struct psi5_message_content_s_9_bit{
+ U16 numElements_psi5_message_content_s_9_bit;
+ U8 * psi5_message_content_s_9_bit;
+}psi5_message_content_s_9_bit;
+
+typedef struct psi5_message_content_s_12{
+ U8 p_700__reporting_offset;
+ U8 p_700__reporting_threshold;
+}psi5_message_content_s_12;
+
+typedef struct psi5_message_content_s_14{
+ U8 p_810__reporting_offset;
+ U8 p_810__reporting_threshold;
+}psi5_message_content_s_14;
+
+typedef struct psi5_message_content_s_10{
+ ispresent psi5_message_content_s_11_tag;
+ union psi5_message_content_s_11_value{
+ psi5_message_content_s_12 m_psi5_message_content_s_12;
+ }psi5_message_content_s_11_value;
+ ispresent psi5_message_content_s_13_tag;
+ union psi5_message_content_s_13_value{
+ psi5_message_content_s_14 m_psi5_message_content_s_14;
+ }psi5_message_content_s_13_value;
+}psi5_message_content_s_10;
+
+typedef struct psi5_message_content_s_7{
+ ispresent psi5_message_content_s_8_tag;
+ union psi5_message_content_s_8_value{
+ gprs_3_g_additional_measurement_parameters_description_2_struct gprs_3_g_additional_measurement_parameters_description_2;
+ }psi5_message_content_s_8_value;
+ psi5_message_content_s_9_enum psi5_message_content_s_9_tag;
+ union psi5_message_content_s_9_value{
+ psi5_message_content_s_9_bit m_psi5_message_content_s_9_bit;
+ psi5_message_content_s_10 m_psi5_message_content_s_10;
+ }psi5_message_content_s_9_value;
+}psi5_message_content_s_7;
+
+typedef struct psi5_message_content_s_4{
+ ispresent psi5_message_content_s_5_tag;
+ union psi5_message_content_s_5_value{
+ enh_reporting_parameters_struct enh_reporting_parameters;
+ }psi5_message_content_s_5_value;
+ psi5_message_content_s_6_enum psi5_message_content_s_6_tag;
+ union psi5_message_content_s_6_value{
+ psi5_message_content_s_6_bit m_psi5_message_content_s_6_bit;
+ psi5_message_content_s_7 m_psi5_message_content_s_7;
+ }psi5_message_content_s_6_value;
+}psi5_message_content_s_4;
+
+/* SEQUENCE psi5 message content */
+typedef struct psi5_message_content{
+ header_struct1 header;
+ U8 msgtype;
+ U8 page_mode;
+ U8 psi5_change_mark;
+ U8 psi5_index;
+ U8 psi5_count;
+ ispresent psi5_message_content_s_1_tag;
+ union psi5_message_content_s_1_value{
+ nc_measurement_parameters_struct nc_measurement_parameters;
+ }psi5_message_content_s_1_value;
+ ispresent psi5_message_content_s_2_tag;
+ union psi5_message_content_s_2_value{
+ ext_measurement_parameters_struct ext_measurement_parameters;
+ }psi5_message_content_s_2_value;
+ psi5_message_content_s_3_enum psi5_message_content_s_3_tag;
+ union psi5_message_content_s_3_value{
+ psi5_message_content_s_3_bit m_psi5_message_content_s_3_bit;
+ psi5_message_content_s_4 m_psi5_message_content_s_4;
+ }psi5_message_content_s_3_value;
+}psi5_message_content;
+
+typedef enum {
+ PSI2_MESSAGE_CONTENT_S_4_NULL,
+ PSI2_MESSAGE_CONTENT_S_4_BIT,
+ PSI2_MESSAGE_CONTENT_S_5
+}psi2_message_content_s_4_enum;
+
+typedef struct psi2_message_content_s_4_bit{
+ U16 numElements_psi2_message_content_s_4_bit;
+ U8 * psi2_message_content_s_4_bit;
+}psi2_message_content_s_4_bit;
+
+typedef struct psi2_message_content_s_5{
+ ispresent psi2_message_content_s_6_tag;
+ union psi2_message_content_s_6_value{
+ compact_control_info_struct compact_control_information;
+ }psi2_message_content_s_6_value;
+ ispresent psi2_message_content_s_7_tag;
+ union psi2_message_content_s_7_value{
+ additional_psi_messages_struct additional_psi_messages;
+ }psi2_message_content_s_7_value;
+}psi2_message_content_s_5;
+
+typedef struct psi2_message_content_s_1{
+ Bool is_psi2_message_content_s_2_present; //truncation or optional
+ ispresent psi2_message_content_s_2_tag;
+ union psi2_message_content_s_2_value{
+ cell_identification_ie cell_identification;
+ }psi2_message_content_s_2_value;
+ Bool is_psi2_message_content_s_3_present; //truncation or optional
+ ispresent psi2_message_content_s_3_tag;
+ union psi2_message_content_s_3_value{
+ non_gprs_cell_options_ie non_gprs_cell_options;
+ }psi2_message_content_s_3_value;
+ Bool is_reference_frequency_lists_present; //truncation or optional
+ reference_frequency_lists_struct reference_frequency_lists;
+ Bool is_cell_allocation_present; //truncation or optional
+ cell_allocation_lists_struct cell_allocation;
+ Bool is_gprs_mobile_allocations_present; //truncation or optional
+ gprs_mobile_allocations_lists_struct gprs_mobile_allocations;
+ Bool is_pccch_description_present; //truncation or optional
+ pccch_description_lists_struct pccch_description;
+ Bool is_psi2_message_content_s_4_present; //truncation or optional
+ psi2_message_content_s_4_enum psi2_message_content_s_4_tag;
+ union psi2_message_content_s_4_value{
+ psi2_message_content_s_4_bit m_psi2_message_content_s_4_bit;
+ psi2_message_content_s_5 m_psi2_message_content_s_5;
+ }psi2_message_content_s_4_value;
+}psi2_message_content_s_1;
+
+/* SEQUENCE psi2 message content */
+typedef struct psi2_message_content{
+ header_struct1 header;
+ U8 msgtype;
+ U8 page_mode;
+ U8 psi2_change_mark;
+ U8 psi2_index;
+ U8 psi2_count;
+ psi2_message_content_s_1 m_psi2_message_content_s_1; //truncation ;
+}psi2_message_content;
+
+typedef enum {
+ PACKET_MEASUREMENT_ORDER_MESSAGE_CONTENT_GLOBAL_TFI,
+ PACKET_MEASUREMENT_ORDER_MESSAGE_CONTENT_TLLI___G_RNTI
+}packet_measurement_order_message_content_s_3_enum;
+
+typedef enum {
+ PACKET_MEASUREMENT_ORDER_MESSAGE_CONTENT_S_8_NULL,
+ PACKET_MEASUREMENT_ORDER_MESSAGE_CONTENT_S_8_BIT,
+ PACKET_MEASUREMENT_ORDER_MESSAGE_CONTENT_S_9
+}packet_measurement_order_message_content_s_8_enum;
+
+typedef struct packet_measurement_order_message_content_s_8_bit{
+ U16 numElements_packet_measurement_order_message_content_s_8_bit;
+ U8 * packet_measurement_order_message_content_s_8_bit;
+}packet_measurement_order_message_content_s_8_bit;
+
+typedef enum {
+ PACKET_MEASUREMENT_ORDER_MESSAGE_CONTENT_S_11_NULL,
+ PACKET_MEASUREMENT_ORDER_MESSAGE_CONTENT_S_11_BIT,
+ PACKET_MEASUREMENT_ORDER_MESSAGE_CONTENT_S_12
+}packet_measurement_order_message_content_s_11_enum;
+
+typedef struct packet_measurement_order_message_content_s_11_bit{
+ U16 numElements_packet_measurement_order_message_content_s_11_bit;
+ U8 * packet_measurement_order_message_content_s_11_bit;
+}packet_measurement_order_message_content_s_11_bit;
+
+typedef enum {
+ PACKET_MEASUREMENT_ORDER_MESSAGE_CONTENT_S_14_NULL,
+ PACKET_MEASUREMENT_ORDER_MESSAGE_CONTENT_S_14_BIT,
+ PACKET_MEASUREMENT_ORDER_MESSAGE_CONTENT_S_15
+}packet_measurement_order_message_content_s_14_enum;
+
+typedef struct packet_measurement_order_message_content_s_14_bit{
+ U16 numElements_packet_measurement_order_message_content_s_14_bit;
+ U8 * packet_measurement_order_message_content_s_14_bit;
+}packet_measurement_order_message_content_s_14_bit;
+
+typedef enum {
+ PACKET_MEASUREMENT_ORDER_MESSAGE_CONTENT_S_17_NULL,
+ PACKET_MEASUREMENT_ORDER_MESSAGE_CONTENT_S_17_BIT,
+ PACKET_MEASUREMENT_ORDER_MESSAGE_CONTENT_S_18
+}packet_measurement_order_message_content_s_17_enum;
+
+typedef struct packet_measurement_order_message_content_s_17_bit{
+ U16 numElements_packet_measurement_order_message_content_s_17_bit;
+ U8 * packet_measurement_order_message_content_s_17_bit;
+}packet_measurement_order_message_content_s_17_bit;
+
+typedef struct packet_measurement_order_message_content_s_21{
+ iu_mode_neighbour_cell_params_struct m_iu_mode_neighbour_cell_params_struct;
+}packet_measurement_order_message_content_s_21;
+
+typedef struct _packet_measurement_order_message_content_s_21{
+ U16 numElements_m_packet_measurement_order_message_content_s_21;
+ packet_measurement_order_message_content_s_21 * m_packet_measurement_order_message_content_s_21;
+}_packet_measurement_order_message_content_s_21;
+
+typedef enum {
+ PACKET_MEASUREMENT_ORDER_MESSAGE_CONTENT_S_24_NULL,
+ PACKET_MEASUREMENT_ORDER_MESSAGE_CONTENT_S_24_BIT,
+ PACKET_MEASUREMENT_ORDER_MESSAGE_CONTENT_S_25
+}packet_measurement_order_message_content_s_24_enum;
+
+typedef struct packet_measurement_order_message_content_s_24_bit{
+ U16 numElements_packet_measurement_order_message_content_s_24_bit;
+ U8 * packet_measurement_order_message_content_s_24_bit;
+}packet_measurement_order_message_content_s_24_bit;
+
+typedef enum {
+ PACKET_MEASUREMENT_ORDER_MESSAGE_CONTENT_S_26_NULL,
+ PACKET_MEASUREMENT_ORDER_MESSAGE_CONTENT_S_26_BIT,
+ PACKET_MEASUREMENT_ORDER_MESSAGE_CONTENT_S_27
+}packet_measurement_order_message_content_s_26_enum;
+
+typedef struct packet_measurement_order_message_content_s_26_bit{
+ U16 numElements_packet_measurement_order_message_content_s_26_bit;
+ U8 * packet_measurement_order_message_content_s_26_bit;
+}packet_measurement_order_message_content_s_26_bit;
+
+typedef struct packet_measurement_order_message_content_s_29{
+ U8 p_700__reporting_offset;
+ U8 p_700__reporting_threshold;
+}packet_measurement_order_message_content_s_29;
+
+typedef struct packet_measurement_order_message_content_s_31{
+ U8 p_810__reporting_offset;
+ U8 p_810__reporting_threshold;
+}packet_measurement_order_message_content_s_31;
+
+typedef struct packet_measurement_order_message_content_s_27{
+ ispresent packet_measurement_order_message_content_s_28_tag;
+ union packet_measurement_order_message_content_s_28_value{
+ packet_measurement_order_message_content_s_29 m_packet_measurement_order_message_content_s_29;
+ }packet_measurement_order_message_content_s_28_value;
+ ispresent packet_measurement_order_message_content_s_30_tag;
+ union packet_measurement_order_message_content_s_30_value{
+ packet_measurement_order_message_content_s_31 m_packet_measurement_order_message_content_s_31;
+ }packet_measurement_order_message_content_s_30_value;
+}packet_measurement_order_message_content_s_27;
+
+typedef struct packet_measurement_order_message_content_s_25{
+ U8 p_3_g_ccn_active;
+ packet_measurement_order_message_content_s_26_enum packet_measurement_order_message_content_s_26_tag;
+ union packet_measurement_order_message_content_s_26_value{
+ packet_measurement_order_message_content_s_26_bit m_packet_measurement_order_message_content_s_26_bit;
+ packet_measurement_order_message_content_s_27 m_packet_measurement_order_message_content_s_27;
+ }packet_measurement_order_message_content_s_26_value;
+}packet_measurement_order_message_content_s_25;
+
+typedef struct packet_measurement_order_message_content_s_18{
+ ispresent packet_measurement_order_message_content_s_19_tag;
+ union packet_measurement_order_message_content_s_19_value{
+ U8 g_rnti_extension;
+ }packet_measurement_order_message_content_s_19_value;
+ ispresent packet_measurement_order_message_content_s_20_tag;
+ union packet_measurement_order_message_content_s_20_value{
+ _packet_measurement_order_message_content_s_21 m_packet_measurement_order_message_content_s_21;
+ }packet_measurement_order_message_content_s_20_value;
+ ispresent packet_measurement_order_message_content_s_22_tag;
+ union packet_measurement_order_message_content_s_22_value{
+ nc_iu_mode_only_cell_list_struct nc_iu_mode_only_capable_cell_list;
+ }packet_measurement_order_message_content_s_22_value;
+ ispresent packet_measurement_order_message_content_s_23_tag;
+ union packet_measurement_order_message_content_s_23_value{
+ gprs_3_g_additional_measurement_parameters_description_2_struct gprs_3_g_additional_measurement_parameters_description_2;
+ }packet_measurement_order_message_content_s_23_value;
+ packet_measurement_order_message_content_s_24_enum packet_measurement_order_message_content_s_24_tag;
+ union packet_measurement_order_message_content_s_24_value{
+ packet_measurement_order_message_content_s_24_bit m_packet_measurement_order_message_content_s_24_bit;
+ packet_measurement_order_message_content_s_25 m_packet_measurement_order_message_content_s_25;
+ }packet_measurement_order_message_content_s_24_value;
+}packet_measurement_order_message_content_s_18;
+
+typedef struct packet_measurement_order_message_content_s_15{
+ U8 ccn_active;
+ ispresent packet_measurement_order_message_content_s_16_tag;
+ union packet_measurement_order_message_content_s_16_value{
+ ccn_support_description_struct ccn_support_description;
+ }packet_measurement_order_message_content_s_16_value;
+ packet_measurement_order_message_content_s_17_enum packet_measurement_order_message_content_s_17_tag;
+ union packet_measurement_order_message_content_s_17_value{
+ packet_measurement_order_message_content_s_17_bit m_packet_measurement_order_message_content_s_17_bit;
+ packet_measurement_order_message_content_s_18 m_packet_measurement_order_message_content_s_18;
+ }packet_measurement_order_message_content_s_17_value;
+}packet_measurement_order_message_content_s_15;
+
+typedef struct packet_measurement_order_message_content_s_12{
+ ispresent packet_measurement_order_message_content_s_13_tag;
+ union packet_measurement_order_message_content_s_13_value{
+ enh_measurement_parameters_struct enh_measurement_parameters;
+ }packet_measurement_order_message_content_s_13_value;
+ packet_measurement_order_message_content_s_14_enum packet_measurement_order_message_content_s_14_tag;
+ union packet_measurement_order_message_content_s_14_value{
+ packet_measurement_order_message_content_s_14_bit m_packet_measurement_order_message_content_s_14_bit;
+ packet_measurement_order_message_content_s_15 m_packet_measurement_order_message_content_s_15;
+ }packet_measurement_order_message_content_s_14_value;
+}packet_measurement_order_message_content_s_12;
+
+typedef struct packet_measurement_order_message_content_s_9{
+ ispresent packet_measurement_order_message_content_s_10_tag;
+ union packet_measurement_order_message_content_s_10_value{
+ lsa_parameters_ie lsa_parameters;
+ }packet_measurement_order_message_content_s_10_value;
+ packet_measurement_order_message_content_s_11_enum packet_measurement_order_message_content_s_11_tag;
+ union packet_measurement_order_message_content_s_11_value{
+ packet_measurement_order_message_content_s_11_bit m_packet_measurement_order_message_content_s_11_bit;
+ packet_measurement_order_message_content_s_12 m_packet_measurement_order_message_content_s_12;
+ }packet_measurement_order_message_content_s_11_value;
+}packet_measurement_order_message_content_s_9;
+
+/* SEQUENCE packet measurement order message content */
+typedef struct packet_measurement_order_message_content{
+ header_struct1 header;
+ U8 msgtype;
+ U8 page_mode;
+ packet_measurement_order_message_content_s_3_enum packet_measurement_order_message_content_s_3_tag;
+ union packet_measurement_order_message_content_s_3_value{
+ global_tfi_ie global_tfi;
+ U32 tlli___g_rnti;
+ }packet_measurement_order_message_content_s_3_value;
+ U8 pmo_index;
+ U8 pmo_count;
+ ispresent packet_measurement_order_message_content_s_6_tag;
+ union packet_measurement_order_message_content_s_6_value{
+ nc_measurement_parameters_struct nc_measurement_parameters;
+ }packet_measurement_order_message_content_s_6_value;
+ ispresent packet_measurement_order_message_content_s_7_tag;
+ union packet_measurement_order_message_content_s_7_value{
+ ext_measurement_parameters_struct ext_measurement_parameters;
+ }packet_measurement_order_message_content_s_7_value;
+ packet_measurement_order_message_content_s_8_enum packet_measurement_order_message_content_s_8_tag;
+ union packet_measurement_order_message_content_s_8_value{
+ packet_measurement_order_message_content_s_8_bit m_packet_measurement_order_message_content_s_8_bit;
+ packet_measurement_order_message_content_s_9 m_packet_measurement_order_message_content_s_9;
+ }packet_measurement_order_message_content_s_8_value;
+}packet_measurement_order_message_content;
+
+typedef enum {
+ PACKET_CELL_CHANGE_ORDER_MESSAGE_CONTENT_GLOBAL_TFI,
+ PACKET_CELL_CHANGE_ORDER_MESSAGE_CONTENT_TLLI___G_RNTI
+}packet_cell_change_order_message_content_s_3_enum;
+
+typedef enum {
+ PACKET_CELL_CHANGE_ORDER_MESSAGE_CONTENT_S_5,
+ PACKET_CELL_CHANGE_ORDER_MESSAGE_CONTENT_S_7
+}packet_cell_change_order_message_content_s_4_enum;
+
+typedef struct packet_cell_change_order_message_content_s_6{
+ U8 immediate_rel;
+ gsm_target_cell_struct gsm_target_cell;
+}packet_cell_change_order_message_content_s_6;
+
+typedef enum {
+ PACKET_CELL_CHANGE_ORDER_MESSAGE_CONTENT_S_13_NULL,
+ PACKET_CELL_CHANGE_ORDER_MESSAGE_CONTENT_S_13_BIT,
+ PACKET_CELL_CHANGE_ORDER_MESSAGE_CONTENT_S_14
+}packet_cell_change_order_message_content_s_13_enum;
+
+typedef struct packet_cell_change_order_message_content_s_13_bit{
+ U16 numElements_packet_cell_change_order_message_content_s_13_bit;
+ U8 * packet_cell_change_order_message_content_s_13_bit;
+}packet_cell_change_order_message_content_s_13_bit;
+
+typedef struct packet_cell_change_order_message_content_s_14{
+ ispresent packet_cell_change_order_message_content_s_15_tag;
+ union packet_cell_change_order_message_content_s_15_value{
+ U8 g_rnti_extension;
+ }packet_cell_change_order_message_content_s_15_value;
+}packet_cell_change_order_message_content_s_14;
+
+typedef struct packet_cell_change_order_message_content_s_10{
+ U8 immediate_rel;
+ ispresent packet_cell_change_order_message_content_s_11_tag;
+ union packet_cell_change_order_message_content_s_11_value{
+ utran_fdd_target_cell_ie utran_fdd_target_cell;
+ }packet_cell_change_order_message_content_s_11_value;
+ ispresent packet_cell_change_order_message_content_s_12_tag;
+ union packet_cell_change_order_message_content_s_12_value{
+ utran_tdd_target_cell_ie utran_tdd_target_cell;
+ }packet_cell_change_order_message_content_s_12_value;
+ packet_cell_change_order_message_content_s_13_enum packet_cell_change_order_message_content_s_13_tag;
+ union packet_cell_change_order_message_content_s_13_value{
+ packet_cell_change_order_message_content_s_13_bit m_packet_cell_change_order_message_content_s_13_bit;
+ packet_cell_change_order_message_content_s_14 m_packet_cell_change_order_message_content_s_14;
+ }packet_cell_change_order_message_content_s_13_value;
+}packet_cell_change_order_message_content_s_10;
+
+/* SEQUENCE packet cell change order message content */
+typedef struct packet_cell_change_order_message_content{
+ header_struct1 header;
+ U8 msgtype;
+ U8 page_mode;
+ packet_cell_change_order_message_content_s_3_enum packet_cell_change_order_message_content_s_3_tag;
+ union packet_cell_change_order_message_content_s_3_value{
+ global_tfi_ie global_tfi;
+ U32 tlli___g_rnti;
+ }packet_cell_change_order_message_content_s_3_value;
+ packet_cell_change_order_message_content_s_4_enum packet_cell_change_order_message_content_s_4_tag;
+ union packet_cell_change_order_message_content_s_4_value{
+ packet_cell_change_order_message_content_s_6 m_packet_cell_change_order_message_content_s_6;
+ packet_cell_change_order_message_content_s_10 m_packet_cell_change_order_message_content_s_10;
+ }packet_cell_change_order_message_content_s_4_value;
+}packet_cell_change_order_message_content;
+
+typedef enum {
+ PS_HANDOVER_TO_A_GB_MODE_PAYLOAD,
+ PS_HANDOVER_TO_UTRAN_PAYLOAD
+}ps_handover_command_message_content_s_3_enum;
+
+typedef enum {
+ PS_HANDOVER_RR_INFO,
+ PS_HANDOVER_RR_2_INFO
+}ps_handover_command_message_content_s_4_enum;
+
+typedef struct ps_handover_to_a_gb_mode_payload{
+ ps_handover_command_message_content_s_4_enum ps_handover_command_message_content_s_4_tag;
+ union ps_handover_command_message_content_s_4_value{
+ ps_handover_radio_resources_ie ps_handover_rr_info;
+ ps_handover_radio_resources_2_ie ps_handover_rr_2_info;
+ }ps_handover_command_message_content_s_4_value;
+ ispresent ps_handover_command_message_content_s_5_tag;
+ union ps_handover_command_message_content_s_5_value{
+ nas_container_for_ps_handover_ie m_nas_container_for_ps_handover_ie;
+ }ps_handover_command_message_content_s_5_value;
+}ps_handover_to_a_gb_mode_payload;
+
+/* SEQUENCE ps handover command message content */
+typedef struct ps_handover_command_message_content{
+ header_struct1 header;
+ U8 msgtype;
+ U8 page_mode;
+ global_tfi_ie global_tfi;
+ U8 container_id;
+ ps_handover_command_message_content_s_3_enum ps_handover_command_message_content_s_3_tag;
+ union ps_handover_command_message_content_s_3_value{
+ ps_handover_to_a_gb_mode_payload m_ps_handover_to_a_gb_mode_payload;
+ rrc_container_ie ps_handover_to_utran_payload;
+ }ps_handover_command_message_content_s_3_value;
+}ps_handover_command_message_content;
+
+typedef struct range__struct_s_1{
+ U16 range_lower;
+ U16 range_higher;
+}range__struct_s_1;
+
+/* SEQUENCE range__struct */
+typedef struct range__struct{
+ U8 num_of_ranges;
+ U16 numElements_m_range__struct_s_1;
+ range__struct_s_1 * m_range__struct_s_1;
+ U16 numElements_range__struct_bit;
+ U8 * range__struct_bit;
+}range__struct;
+
+/* SEQUENCE grp_cphr_key_num_struct */
+typedef struct grp_cphr_key_num_struct{
+ U8 grp_cphr_key_num_iei;
+ U8 grp_cphr_key_num;
+}grp_cphr_key_num_struct;
+
+typedef enum {
+ S_2,
+ S_3
+}grp_ch_desc_struct_s_1_enum;
+
+typedef struct s_2{
+ U8 maio;
+ U8 hsn;
+}s_2;
+
+typedef struct s_3{
+ U8 spare_bits;
+ U16 arfcn;
+}s_3;
+
+/* SEQUENCE grp_ch_desc_struct */
+typedef struct grp_ch_desc_struct{
+ U8 grp_ch_desc_iei;
+ U8 length;
+ U8 ch_typeand_tdma;
+ U8 tn;
+ U8 training_seq;
+ grp_ch_desc_struct_s_1_enum grp_ch_desc_struct_s_1_tag;
+ union grp_ch_desc_struct_s_1_value{
+ s_2 m_s_2;
+ s_3 m_s_3;
+ }grp_ch_desc_struct_s_1_value;
+ U16 numElements_ma;
+ U8 * ma;
+}grp_ch_desc_struct;
+
+/* SEQUENCE gprs_rsmp_struct */
+typedef struct gprs_rsmp_struct{
+ U8 gprs_rsmp_iei;
+ U8 ack;
+}gprs_rsmp_struct;
+
+/* SEQUENCE range_limits_struct */
+typedef struct range_limits_struct{
+ U16 range_lower;
+ U16 range_upper;
+}range_limits_struct;
+
+typedef struct fdd_arfcn_struct{
+ U16 fdd_arfcn;
+}fdd_arfcn_struct;
+
+typedef struct tdd_arfcn_struct{
+ U16 tdd_arfcn;
+}tdd_arfcn_struct;
+
+/* SEQUENCE fdd_tdd_arfcn_struct */
+typedef struct fdd_tdd_arfcn_struct{
+ U16 numElements_m_fdd_arfcn_struct;
+ fdd_arfcn_struct * m_fdd_arfcn_struct;
+ U16 numElements_m_tdd_arfcn_struct;
+ tdd_arfcn_struct * m_tdd_arfcn_struct;
+ U16 numElements_fdd_tdd_arfcn_struct_bit;
+ U8 * fdd_tdd_arfcn_struct_bit;
+}fdd_tdd_arfcn_struct;
+
+/* SEQUENCE cell_ch_desc_struct */
+typedef struct cell_ch_desc_struct{
+ U8 cell_ch_desc;
+ U8 freq_bit_map[16];
+}cell_ch_desc_struct;
+
+/* SEQUENCE gsm_desc_struct */
+typedef struct gsm_desc_struct{
+ U8 band_ind;
+ U16 arfcn;
+ U8 bsic;
+}gsm_desc_struct;
+
+typedef struct utran_fdd_desc_struct_s_3{
+ U8 fdd_indic0;
+ U8 nr_of_fdd_cells;
+ U16 numElements_fdd_cell_info_field;
+ U8 * fdd_cell_info_field;
+}utran_fdd_desc_struct_s_3;
+
+/* SEQUENCE utran_fdd_desc_struct */
+typedef struct utran_fdd_desc_struct{
+ ispresent utran_fdd_desc_struct_s_1_tag;
+ union utran_fdd_desc_struct_s_1_value{
+ U8 bandwidth_fdd;
+ }utran_fdd_desc_struct_s_1_value;
+ U16 fdd_arfcn;
+ ispresent utran_fdd_desc_struct_s_2_tag;
+ union utran_fdd_desc_struct_s_2_value{
+ utran_fdd_desc_struct_s_3 m_utran_fdd_desc_struct_s_3;
+ }utran_fdd_desc_struct_s_2_value;
+}utran_fdd_desc_struct;
+
+typedef struct utran_tdd_desc_struct_s_3{
+ U8 tdd_indic0;
+ U8 nr_of_tdd_cells;
+ U16 numElements_tdd_cell_info_field;
+ U8 * tdd_cell_info_field;
+}utran_tdd_desc_struct_s_3;
+
+/* SEQUENCE utran_tdd_desc_struct */
+typedef struct utran_tdd_desc_struct{
+ ispresent utran_tdd_desc_struct_s_1_tag;
+ union utran_tdd_desc_struct_s_1_value{
+ U8 bandwidth_tdd;
+ }utran_tdd_desc_struct_s_1_value;
+ U16 tdd_arfcn;
+ ispresent utran_tdd_desc_struct_s_2_tag;
+ union utran_tdd_desc_struct_s_2_value{
+ utran_tdd_desc_struct_s_3 m_utran_tdd_desc_struct_s_3;
+ }utran_tdd_desc_struct_s_2_value;
+}utran_tdd_desc_struct;
+
+typedef struct pcid_grp_ie_s_3{
+ U8 pcid_pattern_length;
+ U16 numElements_pcid_pattern;
+ U8 * pcid_pattern;
+ U8 pcid_pattern_sense;
+}pcid_grp_ie_s_3;
+
+/* SEQUENCE pcid_grp_ie */
+typedef struct pcid_grp_ie{
+ U16 numElements_pcid;
+ U16 * pcid;
+ ispresent pcid_grp_ie_s_2_tag;
+ union pcid_grp_ie_s_2_value{
+ U8 pcid_bitmap_group;
+ }pcid_grp_ie_s_2_value;
+ U16 numElements_m_pcid_grp_ie_s_3;
+ pcid_grp_ie_s_3 * m_pcid_grp_ie_s_3;
+}pcid_grp_ie;
+
+/* SEQUENCE ehncd_dtm_cs_rel_ind_struct */
+typedef struct ehncd_dtm_cs_rel_ind_struct{
+ U8 ehncd_dtm_cs_rel_ind_iei;
+ U8 ind;
+}ehncd_dtm_cs_rel_ind_struct;
+
+/* SEQUENCE vgcs_cphr_param_struct */
+typedef struct vgcs_cphr_param_struct{
+ U8 vgcs_cphr_param_iei;
+ U8 length;
+ U8 spare_bits;
+ U8 rand_ind;
+ U8 lac_ind;
+ U8 cell_ind;
+ U8 b22_count;
+ U8 cell_global_count;
+ U16 numElements_data;
+ U8 * data;
+}vgcs_cphr_param_struct;
+
+/* SEQUENCE grp_ch_desc2_struct */
+typedef struct grp_ch_desc2_struct{
+ U8 grp_ch_desc2_iei;
+ U8 length;
+ U8 ch_typeand_tdma;
+ U8 tn;
+ U8 training_seq;
+ U8 maio;
+ U8 hsn;
+ U8 freq_short_list[8];
+}grp_ch_desc2_struct;
+
+/* SEQUENCE talker_identity_struct */
+typedef struct talker_identity_struct{
+ U8 talker_identity_iei;
+ U8 length;
+ U8 spare_bits;
+ U8 filler_bits;
+ U16 numElements_talker_identity_field;
+ U8 * talker_identity_field;
+}talker_identity_struct;
+
+/* SEQUENCE talker_priority_status_struct */
+typedef struct talker_priority_status_struct{
+ U8 talker_priority_status_iei;
+ U8 length;
+ U8 es;
+ U8 spare_bits;
+ U8 uai;
+ U8 priority;
+}talker_priority_status_struct;
+
+/* SEQUENCE vgcs_amr_config_struct */
+typedef struct vgcs_amr_config_struct{
+ U8 vgcs_amr_config_iei;
+ U8 length;
+ U8 amr_config;
+ U8 spare_bits;
+}vgcs_amr_config_struct;
+
+typedef enum {
+ REPEATED_INDIVIDUAL_UTRAN_PRIORITY_PARAMETERS_STRUCT_S_2,
+ REPEATED_INDIVIDUAL_UTRAN_PRIORITY_PARAMETERS_STRUCT_S_4
+}repeated_individual_utran_priority_parameters_struct_s_1_enum;
+
+typedef struct repeated_individual_utran_priority_parameters_struct_s_3{
+ U16 fdd_arfcn;
+}repeated_individual_utran_priority_parameters_struct_s_3;
+
+typedef struct _repeated_individual_utran_priority_parameters_struct_s_3{
+ U16 numElements_m_repeated_individual_utran_priority_parameters_struct_s_3;
+ repeated_individual_utran_priority_parameters_struct_s_3 * m_repeated_individual_utran_priority_parameters_struct_s_3;
+}_repeated_individual_utran_priority_parameters_struct_s_3;
+
+typedef struct repeated_individual_utran_priority_parameters_struct_s_5{
+ U16 tdd_arfcn;
+}repeated_individual_utran_priority_parameters_struct_s_5;
+
+typedef struct _repeated_individual_utran_priority_parameters_struct_s_5{
+ U16 numElements_m_repeated_individual_utran_priority_parameters_struct_s_5;
+ repeated_individual_utran_priority_parameters_struct_s_5 * m_repeated_individual_utran_priority_parameters_struct_s_5;
+}_repeated_individual_utran_priority_parameters_struct_s_5;
+
+/* SEQUENCE repeated individual utran priority parameters struct */
+typedef struct repeated_individual_utran_priority_parameters_struct{
+ repeated_individual_utran_priority_parameters_struct_s_1_enum repeated_individual_utran_priority_parameters_struct_s_1_tag;
+ union repeated_individual_utran_priority_parameters_struct_s_1_value{
+ _repeated_individual_utran_priority_parameters_struct_s_3 m_repeated_individual_utran_priority_parameters_struct_s_3;
+ _repeated_individual_utran_priority_parameters_struct_s_5 m_repeated_individual_utran_priority_parameters_struct_s_5;
+ }repeated_individual_utran_priority_parameters_struct_s_1_value;
+ U8 utran_priority;
+}repeated_individual_utran_priority_parameters_struct;
+
+/* SEQUENCE repeated individual e-utran priority parameters description struct */
+typedef struct repeated_individual_e_utran_priority_parameters_description_struct{
+ U16 numElements_earfcn;
+ U16 * earfcn;
+ U8 e_utran_priority;
+}repeated_individual_e_utran_priority_parameters_description_struct;
+
+/* SEQUENCE repeated individual e-utran PP with extened earfcn description struct */
+typedef struct repeated_individual_e_utran_pp_extended_earfcn_description_struct{
+ U16 numElements_earfcn;
+ U32 * extended_earfcn;
+ U8 e_utran_priority;
+}repeated_individual_e_utran_pp_extended_earfcn_description_struct;
+
+/* SEQUENCE ba_range_struct */
+typedef struct ba_range_struct{
+ U8 ba_range_iei;
+ U8 length;
+ range__struct m_range__struct;
+}ba_range_struct;
+
+typedef struct ba_freq_struct{
+ U16 ba_freq;
+}ba_freq_struct;
+
+/* SEQUENCE range_limits_ba_freq_struct */
+typedef struct range_limits_ba_freq_struct{
+ U16 numElements_m_range_limits_struct;
+ range_limits_struct * m_range_limits_struct;
+ U16 numElements_m_ba_freq_struct;
+ ba_freq_struct * m_ba_freq_struct;
+ U16 numElements_range_limits_ba_freq_struct_bit;
+ U8 * range_limits_ba_freq_struct_bit;
+}range_limits_ba_freq_struct;
+
+/* SEQUENCE utran_freq_list_struct */
+typedef struct utran_freq_list_struct{
+ U8 utran_freq_list_iei;
+ U8 length;
+ fdd_tdd_arfcn_struct m_fdd_tdd_arfcn_struct;
+}utran_freq_list_struct;
+
+/* SEQUENCE e_utran_desc_struct */
+typedef struct e_utran_desc_struct{
+ U16 earfcn;
+ ispresent e_utran_desc_struct_s_1_tag;
+ union e_utran_desc_struct_s_1_value{
+ U8 meas_bandwidth;
+ }e_utran_desc_struct_s_1_value;
+ ispresent e_utran_desc_struct_s_2_tag;
+ union e_utran_desc_struct_s_2_value{
+ pcid_grp_ie not_allowed_cells;
+ }e_utran_desc_struct_s_2_value;
+ ispresent e_utran_desc_struct_s_3_tag;
+ union e_utran_desc_struct_s_3_value{
+ U16 target_pcid;
+ }e_utran_desc_struct_s_3_value;
+}e_utran_desc_struct;
+
+/* SEQUENCE 3 g individual priority parameters description struct */
+typedef struct p_3_g_individual_priority_parameters_description_struct{
+ ispresent p_3_g_individual_priority_parameters_description_struct_s_1_tag;
+ union p_3_g_individual_priority_parameters_description_struct_s_1_value{
+ U8 default_utran_priority;
+ }p_3_g_individual_priority_parameters_description_struct_s_1_value;
+ U16 numElements_repeated_individual_utran_priority_parameters;
+ repeated_individual_utran_priority_parameters_struct * repeated_individual_utran_priority_parameters;
+}p_3_g_individual_priority_parameters_description_struct;
+
+/* SEQUENCE e-utran individual priority parameters description struct */
+typedef struct e_utran_individual_priority_parameters_description_struct{
+ ispresent e_utran_individual_priority_parameters_description_struct_s_1_tag;
+ union e_utran_individual_priority_parameters_description_struct_s_1_value{
+ U8 default_e_utran_priority;
+ }e_utran_individual_priority_parameters_description_struct_s_1_value;
+ U16 numElements_repeated_individual_e_utran_priority_parameters;
+ repeated_individual_e_utran_priority_parameters_description_struct * repeated_individual_e_utran_priority_parameters;
+}e_utran_individual_priority_parameters_description_struct;
+
+/* SEQUENCE e-utran IPP with extended EARFCNs description struct */
+typedef struct e_utran_ipp_extended_earfcn_description_struct{
+ ispresent e_utran_ipp_extended_earfcn_description_struct_s_1_tag;
+ union e_utran_ipp_extended_earfcn_description_struct_s_1_value{
+ U8 default_e_utran_priority;
+ }e_utran_ipp_extended_earfcn_description_struct_s_1_value;
+ U16 numElements_repeated_individual_e_utran_priority_parameters;
+ repeated_individual_e_utran_pp_extended_earfcn_description_struct * repeated_individual_e_utran_pp_extended_earfcn;
+}e_utran_ipp_extended_earfcn_description_struct;
+
+/* SEQUENCE ba_list_pref__struct */
+typedef struct ba_list_pref__struct{
+ U8 ba_list_pref_iei;
+ U8 length;
+ range_limits_ba_freq_struct m_range_limits_ba_freq_struct;
+}ba_list_pref__struct;
+
+typedef enum {
+ rdrct_gsm_desc,
+ rdrct_utran_fdd,
+ rdrct_utran_tdd,
+ rdrct_e_utran
+}redirection_target_struct_s_1_enum;
+
+typedef struct redirection_target_struct_s_3{
+ gsm_desc_struct gsm_desc;
+}redirection_target_struct_s_3;
+
+typedef struct _redirection_target_struct_s_3{
+ U16 numElements_m_redirection_target_struct_s_3;
+ redirection_target_struct_s_3 * gsm;
+}_redirection_target_struct_s_3;
+
+typedef struct s_5{
+ utran_fdd_desc_struct utran_fdd_desc;
+}s_5;
+
+typedef struct _s_5{
+ U16 numElements_m_s_5;
+ s_5 * utran_fdd;
+}_s_5;
+
+typedef struct s_7{
+ utran_tdd_desc_struct utran_tdd_desc;
+}s_7;
+
+typedef struct _s_7{
+ U16 numElements_m_s_7;
+ s_7 * utran_tdd;
+}_s_7;
+
+typedef struct s_9{
+ e_utran_desc_struct e_utran_desc;
+}s_9;
+
+typedef struct _s_9{
+ U16 numElements_m_s_9;
+ s_9 * e_utran;
+}_s_9;
+
+/* SEQUENCE redirection_target_struct */
+typedef struct redirection_target_struct{
+ redirection_target_struct_s_1_enum redirection_target_struct_s_1_tag;
+ union redirection_target_struct_s_1_value{
+ _redirection_target_struct_s_3 rdrct_gsm_desc;
+ _s_5 rdrct_utran_fdd;
+ _s_7 rdrct_utran_tdd;
+ _s_9 rdrct_e_utran;
+ }redirection_target_struct_s_1_value;
+ U16 numElements_redirection_target_struct_bit;
+ //U8 * redirection_target_struct_bit;
+ Bool * redirection_target_struct_bit;
+}redirection_target_struct;
+
+typedef enum {
+ CHANNEL_REL_INDIVIDUAL_PRIO_STRUCT_S_5_NULL,
+ CHANNEL_REL_INDIVIDUAL_PRIO_STRUCT_LHSTRING_L, // L
+ CHANNEL_REL_INDIVIDUAL_PRIO_STRUCT_S_6 // H
+}indiv_prio_struct_s_5_enum;
+
+typedef struct indiv_prio_struct_s_6{
+ ispresent indiv_prio_struct_s_7_tag;
+ union indiv_prio_struct_s_7_value{
+ e_utran_ipp_extended_earfcn_description_struct e_utran_ipp_extended_earfcn_description;
+ }indiv_prio_struct_s_7_value;
+}indiv_prio_struct_s_6;
+
+typedef struct indiv_prio_struct_s_1{
+ U8 geran_priority;
+ ispresent indiv_prio_struct_s_2_tag;
+ union indiv_prio_struct_s_2_value{
+ p_3_g_individual_priority_parameters_description_struct p_3_g_individual_priority_parameters_description;
+ }indiv_prio_struct_s_2_value;
+ ispresent indiv_prio_struct_s_3_tag;
+ union indiv_prio_struct_s_3_value{
+ e_utran_individual_priority_parameters_description_struct e_utran_individual_priority_parameters_description;
+ }indiv_prio_struct_s_3_value;
+ ispresent indiv_prio_struct_s_4_tag;
+ union indiv_prio_struct_s_4_value{
+ U8 t3230_timeout_value;
+ }indiv_prio_struct_s_4_value;
+
+ indiv_prio_struct_s_5_enum indiv_prio_struct_s_5_tag;
+ union indiv_prio_struct_s_5_value{
+ indiv_prio_struct_s_6 m_indiv_prio_struct_s_6;
+ }indiv_prio_struct_s_5_value;
+}indiv_prio_struct_s_1;
+
+/* SEQUENCE indiv_prio_struct */
+typedef struct indiv_prio_struct{
+ ispresent indiv_prio_struct_s_0_tag;
+ union indiv_prio_struct_s_0_value{
+ indiv_prio_struct_s_1 m_indiv_prio_struct_s_1;
+ }indiv_prio_struct_s_0_value;
+}indiv_prio_struct;
+
+/* SEQUENCE cell_sel_ind_after_rel_struct */
+typedef struct cell_sel_ind_after_rel_struct{
+ U8 cell_sel_ind_after_rel_iei;
+ U8 length;
+ redirection_target_struct m_redirection_target_struct;
+}cell_sel_ind_after_rel_struct;
+
+/* SEQUENCE individual_priority_struct */
+typedef struct individual_priority_struct{
+ U8 indiv_prio_iei;
+ U8 length;
+ indiv_prio_struct m_indiv_prio_struct;
+}individual_priority_struct;
+
+/* SEQUENCE channel_release_struct */
+typedef struct channel_release_struct{
+ U8 skip_ind;
+ U8 proto_disc;
+ U8 mesg_type;
+ U8 rr_cause;
+ Bool is_ba_range_present; //truncation or optional
+ ba_range_struct ba_range;
+ Bool is_grp_ch_desc_present; //truncation or optional
+ grp_ch_desc_struct grp_ch_desc;
+ Bool is_grp_cphr_key_num_present; //truncation or optional
+ grp_cphr_key_num_struct grp_cphr_key_num;
+ Bool is_gprs_rsmp_present; //truncation or optional
+ gprs_rsmp_struct gprs_rsmp;
+ Bool is_ba_list__pref_present; //truncation or optional
+ ba_list_pref__struct ba_list__pref;
+ Bool is_utran_freq_list_present; //truncation or optional
+ utran_freq_list_struct utran_freq_list;
+ Bool is_cell_ch_desc_present; //truncation or optional
+ cell_ch_desc_struct cell_ch_desc;
+ Bool is_cell_sel_ind_after_rel_present; //truncation or optional
+ cell_sel_ind_after_rel_struct cell_sel_ind_after_rel;
+ Bool is_ehncd_dtm_cs_rel_ind_present; //truncation or optional
+ ehncd_dtm_cs_rel_ind_struct ehncd_dtm_cs_rel_ind;
+ Bool is_vgcs_cphr_param_present; //truncation or optional
+ vgcs_cphr_param_struct vgcs_cphr_param;
+ Bool is_grp_ch_desc2_present; //truncation or optional
+ grp_ch_desc2_struct grp_ch_desc2;
+ Bool is_talker_identity_present; //truncation or optional
+ talker_identity_struct talker_identity;
+ Bool is_talker_priority_status_present; //truncation or optional
+ talker_priority_status_struct talker_priority_status;
+ Bool is_vgcs_amr_config_present; //truncation or optional
+ vgcs_amr_config_struct vgcs_amr_config;
+ Bool is_indiv_prio_present; //truncation or optional
+ individual_priority_struct indiv_prio;
+}channel_release_struct;
+
+/* SEQUENCE mobile_station_classmark2_struct */
+typedef struct mobile_station_classmark2_struct{
+ U8 length;
+ U8 revision_level;
+ U8 es_ind;
+ U8 a5_1;
+ U8 rf_power_capability;
+ U8 ps_capa;
+ U8 ss_screen_indicator;
+ U8 sm_capa;
+ U8 vbs;
+ U8 vgcs;
+ U8 fc;
+ U8 cm3;
+ U8 lcsva_capa;
+ U8 ucs2;
+ U8 solsa;
+ U8 cmsp;
+ U8 a5_3;
+ U8 a5_2;
+}mobile_station_classmark2_struct;
+
+/* SEQUENCE a5 bits for cm3 */
+typedef struct a5_bits_for_cm3{
+ U8 a5_7;
+ U8 a5_6;
+ U8 a5_5;
+ U8 a5_4;
+}a5_bits_for_cm3;
+
+typedef U8 r_support;
+
+typedef U8 hscsd_multi_slot_capability;
+
+/* SEQUENCE ms measurement capability */
+typedef struct ms_measurement_capability{
+ U8 sms_value;
+ U8 sm_value;
+}ms_measurement_capability;
+
+typedef U8 ms_positioning_method_capability;
+
+typedef U8 ecsd_multi_slot_capability;
+
+/* SEQUENCE 8 psk struct */
+typedef struct p_8_psk_struct{
+ U8 modulation_capability;
+ ispresent p_8_psk_struct_s_1_tag;
+ union p_8_psk_struct_s_1_value{
+ U8 p_8_psk_rf_power_capability_1;
+ }p_8_psk_struct_s_1_value;
+ ispresent p_8_psk_struct_s_2_tag;
+ union p_8_psk_struct_s_2_value{
+ U8 p_8_psk_rf_power_capability_2;
+ }p_8_psk_struct_s_2_value;
+}p_8_psk_struct;
+
+typedef U8 single_band_support;
+
+/* SEQUENCE channels_needed_struct */
+typedef struct channels_needed_struct{
+ U8 second_channel;
+ U8 first_channel;
+}channels_needed_struct;
+
+/* SEQUENCE page_mode_struct */
+typedef struct page_mode_struct{
+ U8 page_mode;
+}page_mode_struct;
+
+/* SEQUENCE mobile_identity_struct */
+typedef struct mobile_identity_for_paging_struct{
+ U8 digit_0;
+ U8 odd_or_even;
+ U8 identity_type;
+ U16 numElements_rest_digit;
+ U8 * rest_digit;
+}mobile_identity_for_paging_struct;
+
+typedef enum {
+ MBMS_SERVICE_ID,
+ TMGI_IE_S_1
+}tmgi_ie_s_0_enum;
+
+typedef struct tmgi_ie_s_1{
+ U32 mbms_service_id;
+ U16 mcc;
+ U16 mnc;
+}tmgi_ie_s_1;
+
+/* SEQUENCE tmgi ie */
+typedef struct tmgi_ie{
+ tmgi_ie_s_0_enum tmgi_ie_s_0_tag;
+ union tmgi_ie_s_0_value{
+ U32 mbms_service_id;
+ tmgi_ie_s_1 m_tmgi_ie_s_1;
+ }tmgi_ie_s_0_value;
+}tmgi_ie;
+
+typedef struct mbms_session_parameters_list_ie_s_1{
+ U8 length_of_mbms_bearer_identity;
+ U16 numElements_mbms_bearer_identity;
+ U8 * mbms_bearer_identity;
+ U8 estimated_session_duration;
+ ispresent mbms_session_parameters_list_ie_s_2_tag;
+ union mbms_session_parameters_list_ie_s_2_value{
+ U16 mbms_radio_bearer_starting_time;
+ }mbms_session_parameters_list_ie_s_2_value;
+ ispresent mbms_session_parameters_list_ie_s_3_tag;
+ union mbms_session_parameters_list_ie_s_3_value{
+ U8 egprs_window_size;
+ }mbms_session_parameters_list_ie_s_3_value;
+ ispresent mbms_session_parameters_list_ie_s_4_tag;
+ union mbms_session_parameters_list_ie_s_4_value{
+ U8 npm_transfer_time;
+ }mbms_session_parameters_list_ie_s_4_value;
+}mbms_session_parameters_list_ie_s_1;
+
+/* SEQUENCE mbms session parameters list ie */
+typedef struct mbms_session_parameters_list_ie{
+ U16 numElements_m_mbms_session_parameters_list_ie_s_1;
+ mbms_session_parameters_list_ie_s_1 * m_mbms_session_parameters_list_ie_s_1;
+}mbms_session_parameters_list_ie;
+
+/* SEQUENCE mprach control parameters ie */
+typedef struct mprach_control_parameters_ie{
+ ispresent mprach_control_parameters_ie_s_1_tag;
+ union mprach_control_parameters_ie_s_1_value{
+ U16 acc_contr_class;
+ }mprach_control_parameters_ie_s_1_value;
+ ispresent mprach_control_parameters_ie_s_2_tag;
+ union mprach_control_parameters_ie_s_2_value{
+ U8 max_retrans;
+ }mprach_control_parameters_ie_s_2_value;
+ U8 s;
+ ispresent mprach_control_parameters_ie_s_3_tag;
+ union mprach_control_parameters_ie_s_3_value{
+ U8 tx_int;
+ }mprach_control_parameters_ie_s_3_value;
+ ispresent mprach_control_parameters_ie_s_4_tag;
+ union mprach_control_parameters_ie_s_4_value{
+ U8 persistence_level;
+ }mprach_control_parameters_ie_s_4_value;
+}mprach_control_parameters_ie;
+
+typedef enum {
+ MOBILE_ALLOCATION,
+ FREQUENCY_SHORT_LIST_FOR_PAGING_REQ
+}group_channel_description_for_paging_req_s_2_enum;
+
+typedef struct frequency_short_list_for_paging_req{
+ U16 numElements_frequency_short_list_for_paging_req;
+ U8 * frequency_short_list_for_paging_req;
+}frequency_short_list_for_paging_req;
+
+typedef struct group_channel_description_for_paging_req_s_2{
+ group_channel_description_for_paging_req_s_2_enum group_channel_description_for_paging_req_s_2_tag;
+ union group_channel_description_for_paging_req_s_2_value{
+ struct bit_string * mobile_allocation;
+ frequency_short_list_for_paging_req m_frequency_short_list_for_paging_req;
+ }group_channel_description_for_paging_req_s_2_value;
+}group_channel_description_for_paging_req_s_2;
+
+/* SEQUENCE group channel description for paging req */
+typedef struct group_channel_description_for_paging_req{
+ U32 channel_description;
+ ispresent group_channel_description_for_paging_req_s_1_tag;
+ union group_channel_description_for_paging_req_s_1_value{
+ group_channel_description_for_paging_req_s_2 m_group_channel_description_for_paging_req_s_2;
+ }group_channel_description_for_paging_req_s_1_value;
+}group_channel_description_for_paging_req;
+
+typedef enum {
+ BIT_STRING_S_0_NULL,
+ M_BIT_STRING
+}bit_string_s_0_enum;
+
+/* SEQUENCE bit string */
+typedef struct bit_string{
+ bit_string_s_0_enum bit_string_s_0_tag;
+ union bit_string_s_0_value{
+ struct bit_string * m_bit_string;
+ }bit_string_s_0_value;
+}bit_string;
+
+typedef enum {
+ TOTAL_NO_OF_SEGMENTS_FOR_ETWS_PRIMARY_NOTIFICATION,
+ SEGMENT_NUMBER
+}etws_primary_notification_struct_s_1_enum;
+
+/* SEQUENCE etws primary notification struct */
+typedef struct etws_primary_notification_struct{
+ etws_primary_notification_struct_s_1_enum etws_primary_notification_struct_s_1_tag;
+ union etws_primary_notification_struct_s_1_value{
+ U8 total_no_of_segments_for_etws_primary_notification;
+ U8 segment_number;
+ }etws_primary_notification_struct_s_1_value;
+ U8 pni;
+ U8 length_of_segment;
+ U16 numElements_etws_primary_notification_data;
+ U8 * etws_primary_notification_data;
+}etws_primary_notification_struct;
+
+typedef struct p3_rest_octets_struct_s_2{
+ U8 cn3;
+ U8 cn4;
+}p3_rest_octets_struct_s_2;
+
+typedef struct p3_rest_octets_struct_s_4{
+ U8 nln;
+ U8 nln_status;
+}p3_rest_octets_struct_s_4;
+
+typedef enum {
+ P3_REST_OCTETS_STRUCT_S_9_NULL,
+ LHSTRING_L_p3_rest, // L
+ P3_REST_OCTETS_STRUCT_S_10 // H
+}p3_rest_octets_struct_s_9_enum;
+
+typedef struct p3_rest_octets_struct_s_10{
+ U8 implicit_reject_cs;
+ U8 implicit_reject_ps;
+}p3_rest_octets_struct_s_10;
+
+/* SEQUENCE p3_rest_octets_struct */
+typedef struct p3_rest_octets_struct{
+ isLHpresent p3_rest_octets_struct_s_1_tag;
+ union p3_rest_octets_struct_s_1_value{
+ p3_rest_octets_struct_s_2 m_p3_rest_octets_struct_s_2;
+ }p3_rest_octets_struct_s_1_value;
+ isLHpresent p3_rest_octets_struct_s_3_tag;
+ union p3_rest_octets_struct_s_3_value{
+ p3_rest_octets_struct_s_4 m_p3_rest_octets_struct_s_4;
+ }p3_rest_octets_struct_s_3_value;
+ isLHpresent p3_rest_octets_struct_s_5_tag;
+ union p3_rest_octets_struct_s_5_value{
+ U8 priority1;
+ }p3_rest_octets_struct_s_5_value;
+ isLHpresent p3_rest_octets_struct_s_6_tag;
+ union p3_rest_octets_struct_s_6_value{
+ U8 priority2;
+ }p3_rest_octets_struct_s_6_value;
+ isLHpresent p3_rest_octets_struct_s_7_tag;
+ union p3_rest_octets_struct_s_7_value{
+ U8 priority3;
+ }p3_rest_octets_struct_s_7_value;
+ isLHpresent p3_rest_octets_struct_s_8_tag;
+ union p3_rest_octets_struct_s_8_value{
+ U8 priority4;
+ }p3_rest_octets_struct_s_8_value;
+ p3_rest_octets_struct_s_9_enum p3_rest_octets_struct_s_9_tag;
+ union p3_rest_octets_struct_s_9_value{
+ p3_rest_octets_struct_s_10 m_p3_rest_octets_struct_s_10;
+ }p3_rest_octets_struct_s_9_value;
+}p3_rest_octets_struct;
+
+/* SEQUENCE measurement parameters description si2q struct */
+typedef struct measurement_parameters_description_si2q_struct{
+ U8 report_type;
+ U8 serving_band_reporting;
+}measurement_parameters_description_si2q_struct;
+
+typedef struct p_3_g_measurement_parameters_description_si2q_struct_s_2{
+ U8 fdd_qoffset;
+ U8 fdd_rep_quant;
+ U8 fdd_multirat_reporting;
+ U8 fdd_qmin;
+}p_3_g_measurement_parameters_description_si2q_struct_s_2;
+
+typedef struct p_3_g_measurement_parameters_description_si2q_struct_s_4{
+ U8 tdd_qoffset;
+ U8 tdd_multirat_reporting;
+}p_3_g_measurement_parameters_description_si2q_struct_s_4;
+
+/* SEQUENCE 3 g measurement parameters description si2q struct */
+typedef struct p_3_g_measurement_parameters_description_si2q_struct{
+ U8 qsearch_i;
+ U8 qsearch_c_initial;
+ ispresent p_3_g_measurement_parameters_description_si2q_struct_s_1_tag;
+ union p_3_g_measurement_parameters_description_si2q_struct_s_1_value{
+ p_3_g_measurement_parameters_description_si2q_struct_s_2 m_p_3_g_measurement_parameters_description_si2q_struct_s_2;
+ }p_3_g_measurement_parameters_description_si2q_struct_s_1_value;
+ ispresent p_3_g_measurement_parameters_description_si2q_struct_s_3_tag;
+ union p_3_g_measurement_parameters_description_si2q_struct_s_3_value{
+ p_3_g_measurement_parameters_description_si2q_struct_s_4 m_p_3_g_measurement_parameters_description_si2q_struct_s_4;
+ }p_3_g_measurement_parameters_description_si2q_struct_s_3_value;
+}p_3_g_measurement_parameters_description_si2q_struct;
+
+/* SEQUENCE rtd6 si2q struct */
+typedef struct rtd6_si2q_struct{
+ U16 numElements_rtd;
+ U8 * rtd;
+}rtd6_si2q_struct;
+
+/* SEQUENCE rtd12 si2q struct */
+typedef struct rtd12_si2q_struct{
+ U16 numElements_rtd;
+ U16 * rtd;
+}rtd12_si2q_struct;
+
+typedef struct gprs_bsic_description_struct_s_2{
+ U8 frequency_scrolling;
+ U8 bsic;
+}gprs_bsic_description_struct_s_2;
+
+/* SEQUENCE gprs_bsic description struct */
+typedef struct gprs_bsic_description_struct{
+ ispresent gprs_bsic_description_struct_s_1_tag;
+ union gprs_bsic_description_struct_s_1_value{
+ U8 ba_index_start_bsic;
+ }gprs_bsic_description_struct_s_1_value;
+ U8 bsic;
+ U8 number_remaining_bsic;
+ U16 numElements_m_gprs_bsic_description_struct_s_2;
+ gprs_bsic_description_struct_s_2 * m_gprs_bsic_description_struct_s_2;
+}gprs_bsic_description_struct;
+
+/* SEQUENCE gprs_report_priority description struct */
+typedef struct gprs_report_priority_description_struct{
+ U8 number_cells;
+ U16 numElements_rep_priority;
+ U8 * rep_priority;
+}gprs_report_priority_description_struct;
+
+/* SEQUENCE gprs_measurement parameters description struct */
+typedef struct gprs_measurement_parameters_description_si2q_struct{
+ U8 report_type;
+ U8 reporting_rate;
+ U8 invalid_bsic_reporting;
+ ispresent gprs_measurement_parameters_description_struct_s_1_tag;
+ union gprs_measurement_parameters_description_struct_s_1_value_si2q{
+ U8 multiband_reporting;
+ }gprs_measurement_parameters_description_struct_s_1_value_si2q;
+ ispresent gprs_measurement_parameters_description_struct_s_2_tag;
+ union gprs_measurement_parameters_description_struct_s_2_value_si2q{
+ U8 serving_band_reporting;
+ }gprs_measurement_parameters_description_struct_s_2_value_si2q;
+ U8 scale_ord;
+ ispresent gprs_measurement_parameters_description_struct_s_3_tag;
+ union gprs_measurement_parameters_description_struct_s_3_value_si2q{
+ gprs_measurement_parameters_description_struct_s_4 m_gprs_measurement_parameters_description_struct_s_4;
+ }gprs_measurement_parameters_description_struct_s_3_value_si2q;
+ ispresent gprs_measurement_parameters_description_struct_s_5_tag;
+ union gprs_measurement_parameters_description_struct_s_5_value_si2q{
+ gprs_measurement_parameters_description_struct_s_6 m_gprs_measurement_parameters_description_struct_s_6;
+ }gprs_measurement_parameters_description_struct_s_5_value_si2q;
+ ispresent gprs_measurement_parameters_description_struct_s_7_tag;
+ union gprs_measurement_parameters_description_struct_s_7_value_si2q{
+ gprs_measurement_parameters_description_struct_s_8 m_gprs_measurement_parameters_description_struct_s_8;
+ }gprs_measurement_parameters_description_struct_s_7_value_si2q;
+ ispresent gprs_measurement_parameters_description_struct_s_9_tag;
+ union gprs_measurement_parameters_description_struct_s_9_value_si2q{
+ gprs_measurement_parameters_description_struct_s_10 m_gprs_measurement_parameters_description_struct_s_10;
+ }gprs_measurement_parameters_description_struct_s_9_value_si2q;
+ ispresent gprs_measurement_parameters_description_struct_s_11_tag;
+ union gprs_measurement_parameters_description_struct_s_11_value_si2q{
+ gprs_measurement_parameters_description_struct_s_12 m_gprs_measurement_parameters_description_struct_s_12;
+ }gprs_measurement_parameters_description_struct_s_11_value_si2q;
+}gprs_measurement_parameters_description_si2q_struct;
+
+typedef struct gprs_3g_measurement_parameters_description_struct_s_3{
+ U8 fdd_rep_quant;
+ U8 fdd_multirat_reporting;
+}gprs_3g_measurement_parameters_description_struct_s_3;
+
+typedef struct gprs_3g_measurement_parameters_description_struct_s_5{
+ U8 fdd_reporting_offset;
+ U8 fdd_reporting_threshold;
+}gprs_3g_measurement_parameters_description_struct_s_5;
+
+typedef struct gprs_3g_measurement_parameters_description_struct_s_8{
+ U8 tdd_reporting_offset;
+ U8 tdd_reporting_threshold;
+}gprs_3g_measurement_parameters_description_struct_s_8;
+
+/* SEQUENCE gprs_3g measurement parameters description struct */
+typedef struct gprs_3g_measurement_parameters_description_struct{
+ U8 qsearch_p;
+ ispresent gprs_3g_measurement_parameters_description_struct_s_2_tag;
+ union gprs_3g_measurement_parameters_description_struct_s_2_value{
+ gprs_3g_measurement_parameters_description_struct_s_3 m_gprs_3g_measurement_parameters_description_struct_s_3;
+ }gprs_3g_measurement_parameters_description_struct_s_2_value;
+ ispresent gprs_3g_measurement_parameters_description_struct_s_4_tag;
+ union gprs_3g_measurement_parameters_description_struct_s_4_value{
+ gprs_3g_measurement_parameters_description_struct_s_5 m_gprs_3g_measurement_parameters_description_struct_s_5;
+ }gprs_3g_measurement_parameters_description_struct_s_4_value;
+ ispresent gprs_3g_measurement_parameters_description_struct_s_6_tag;
+ union gprs_3g_measurement_parameters_description_struct_s_6_value{
+ U8 tdd_multirat_reporting;
+ }gprs_3g_measurement_parameters_description_struct_s_6_value;
+ ispresent gprs_3g_measurement_parameters_description_struct_s_7_tag;
+ union gprs_3g_measurement_parameters_description_struct_s_7_value{
+ gprs_3g_measurement_parameters_description_struct_s_8 m_gprs_3g_measurement_parameters_description_struct_s_8;
+ }gprs_3g_measurement_parameters_description_struct_s_7_value;
+}gprs_3g_measurement_parameters_description_struct;
+
+typedef struct nc_measurement_parameters_si2q_struct_s_2{
+ U8 nc__non_drx_period;
+ U8 nc_reporting_period_i;
+ U8 nc_reporting_period_t;
+}nc_measurement_parameters_si2q_struct_s_2;
+
+/* SEQUENCE nc measurement parameters si2q struct */
+typedef struct nc_measurement_parameters_si2q_struct{
+ U8 network_control_order;
+ ispresent nc_measurement_parameters_si2q_struct_s_1_tag;
+ union nc_measurement_parameters_si2q_struct_s_1_value{
+ nc_measurement_parameters_si2q_struct_s_2 m_nc_measurement_parameters_si2q_struct_s_2;
+ }nc_measurement_parameters_si2q_struct_s_1_value;
+}nc_measurement_parameters_si2q_struct;
+
+/* SEQUENCE 3 g additional measurement parameters description struct */
+typedef struct p_3_g_additional_measurement_parameters_description_struct{
+ U8 fdd_qmin_offset;
+ U8 fdd_rscpmin;
+}p_3_g_additional_measurement_parameters_description_struct;
+
+/* SEQUENCE serving cell priority parameters description struct */
+typedef struct serving_cell_priority_parameters_description_struct{
+ U8 geran_priority;
+ U8 thresh_priority_search;
+ U8 thresh_gsm_low;
+ U8 h_prio;
+ U8 t_reselection;
+}serving_cell_priority_parameters_description_struct;
+
+/* SEQUENCE repeated utran priority parameters struct */
+typedef struct repeated_utran_priority_parameters_struct{
+ U16 numElements_utran_frequency_index;
+ U8 * utran_frequency_index;
+ ispresent repeated_utran_priority_parameters_struct_s_2_tag;
+ union repeated_utran_priority_parameters_struct_s_2_value{
+ U8 utran_priority;
+ }repeated_utran_priority_parameters_struct_s_2_value;
+ U8 thresh_utran_high;
+ ispresent repeated_utran_priority_parameters_struct_s_3_tag;
+ union repeated_utran_priority_parameters_struct_s_3_value{
+ U8 thresh_utran_low;
+ }repeated_utran_priority_parameters_struct_s_3_value;
+ ispresent repeated_utran_priority_parameters_struct_s_4_tag;
+ union repeated_utran_priority_parameters_struct_s_4_value{
+ U8 utran_qrxlevmin;
+ }repeated_utran_priority_parameters_struct_s_4_value;
+}repeated_utran_priority_parameters_struct;
+
+typedef struct gprs_e_utran_measurement_parameters_description_struct_s_2{
+ U8 e_utran_fdd_reporting_threshold;
+ ispresent gprs_e_utran_measurement_parameters_description_struct_s_3_tag;
+ union gprs_e_utran_measurement_parameters_description_struct_s_3_value{
+ U8 e_utran_fdd_reporting_threshold_2;
+ }gprs_e_utran_measurement_parameters_description_struct_s_3_value;
+ ispresent gprs_e_utran_measurement_parameters_description_struct_s_4_tag;
+ union gprs_e_utran_measurement_parameters_description_struct_s_4_value{
+ U8 e_utran_fdd_reporting_offset;
+ }gprs_e_utran_measurement_parameters_description_struct_s_4_value;
+}gprs_e_utran_measurement_parameters_description_struct_s_2;
+
+typedef struct gprs_e_utran_measurement_parameters_description_struct_s_6{
+ U8 e_utran_tdd_reporting_threshold;
+ ispresent gprs_e_utran_measurement_parameters_description_struct_s_7_tag;
+ union gprs_e_utran_measurement_parameters_description_struct_s_7_value{
+ U8 e_utran_tdd_reporting_threshold_2;
+ }gprs_e_utran_measurement_parameters_description_struct_s_7_value;
+ ispresent gprs_e_utran_measurement_parameters_description_struct_s_8_tag;
+ union gprs_e_utran_measurement_parameters_description_struct_s_8_value{
+ U8 e_utran_tdd_reporting_offset;
+ }gprs_e_utran_measurement_parameters_description_struct_s_8_value;
+}gprs_e_utran_measurement_parameters_description_struct_s_6;
+
+/* SEQUENCE gprs e-utran measurement parameters description struct */
+typedef struct gprs_e_utran_measurement_parameters_description_struct{
+ U8 qsearch_p_e_utran;
+ U8 e_utran_rep_quant;
+ U8 e_utran_multirat_reporting;
+ ispresent gprs_e_utran_measurement_parameters_description_struct_s_1_tag;
+ union gprs_e_utran_measurement_parameters_description_struct_s_1_value{
+ gprs_e_utran_measurement_parameters_description_struct_s_2 m_gprs_e_utran_measurement_parameters_description_struct_s_2;
+ }gprs_e_utran_measurement_parameters_description_struct_s_1_value;
+ ispresent gprs_e_utran_measurement_parameters_description_struct_s_5_tag;
+ union gprs_e_utran_measurement_parameters_description_struct_s_5_value{
+ gprs_e_utran_measurement_parameters_description_struct_s_6 m_gprs_e_utran_measurement_parameters_description_struct_s_6;
+ }gprs_e_utran_measurement_parameters_description_struct_s_5_value;
+}gprs_e_utran_measurement_parameters_description_struct;
+
+typedef struct repeated_e_utran_neighbour_cells_si2q_struct_s_1{
+ U16 earfcn;
+ ispresent repeated_e_utran_neighbour_cells_si2q_struct_s_2_tag;
+ union repeated_e_utran_neighbour_cells_si2q_struct_s_2_value{
+ U8 measurement_bandwidth;
+ }repeated_e_utran_neighbour_cells_si2q_struct_s_2_value;
+}repeated_e_utran_neighbour_cells_si2q_struct_s_1;
+
+/* SEQUENCE repeated e-utran neighbour cells si2q struct */
+typedef struct repeated_e_utran_neighbour_cells_si2q_struct{
+ U16 numElements_m_repeated_e_utran_neighbour_cells_si2q_struct_s_1;
+ repeated_e_utran_neighbour_cells_si2q_struct_s_1 * m_repeated_e_utran_neighbour_cells_si2q_struct_s_1;
+ ispresent repeated_e_utran_neighbour_cells_si2q_struct_s_3_tag;
+ union repeated_e_utran_neighbour_cells_si2q_struct_s_3_value{
+ U8 e_utran_priority;
+ }repeated_e_utran_neighbour_cells_si2q_struct_s_3_value;
+ U8 thresh_e_utran_high;
+ ispresent repeated_e_utran_neighbour_cells_si2q_struct_s_4_tag;
+ union repeated_e_utran_neighbour_cells_si2q_struct_s_4_value{
+ U8 thresh_e_utran_low;
+ }repeated_e_utran_neighbour_cells_si2q_struct_s_4_value;
+ ispresent repeated_e_utran_neighbour_cells_si2q_struct_s_5_tag;
+ union repeated_e_utran_neighbour_cells_si2q_struct_s_5_value{
+ U8 e_utran_qrxlevmin;
+ }repeated_e_utran_neighbour_cells_si2q_struct_s_5_value;
+}repeated_e_utran_neighbour_cells_si2q_struct;
+
+typedef struct psc_group_ie_s_2{
+ U8 psc_pattern_length;
+ U16 numElements_psc_pattern;
+ U8 * psc_pattern;
+ U8 psc_pattern_sense;
+}psc_group_ie_s_2;
+
+/* SEQUENCE psc group ie */
+typedef struct psc_group_ie{
+ U16 numElements_psc;
+ U16 * psc;
+ U16 numElements_m_psc_group_ie_s_2;
+ psc_group_ie_s_2 * m_psc_group_ie_s_2;
+}psc_group_ie;
+
+typedef struct pcid_group_ie_s_3{
+ U8 pcid_pattern_length;
+ U16 numElements_pcid_pattern;
+ U8 * pcid_pattern;
+ U8 pcid_pattern_sense;
+}pcid_group_ie_s_3;
+
+/* SEQUENCE pcid group ie */
+typedef struct pcid_group_ie{
+ U16 numElements_pcid;
+ U16 * pcid;
+ ispresent pcid_group_ie_s_2_tag;
+ union pcid_group_ie_s_2_value{
+ U8 pcid_bitmap_group;
+ }pcid_group_ie_s_2_value;
+ U16 numElements_m_pcid_group_ie_s_3;
+ pcid_group_ie_s_3 * m_pcid_group_ie_s_3;
+}pcid_group_ie;
+
+typedef enum {
+ E_UTRAN_QMIN,
+ REPEATED_E_UTRAN_ENHANCED_CELL_RESELECTION_PARAMETERS_STRUCT_S_3
+}repeated_e_utran_enhanced_cell_reselection_parameters_struct_s_2_enum;
+
+typedef struct repeated_e_utran_enhanced_cell_reselection_parameters_struct_s_3{
+ U8 thresh_e_utran_high_q;
+ ispresent repeated_e_utran_enhanced_cell_reselection_parameters_struct_s_4_tag;
+ union repeated_e_utran_enhanced_cell_reselection_parameters_struct_s_4_value{
+ U8 thresh_e_utran_low_q;
+ }repeated_e_utran_enhanced_cell_reselection_parameters_struct_s_4_value;
+ ispresent repeated_e_utran_enhanced_cell_reselection_parameters_struct_s_5_tag;
+ union repeated_e_utran_enhanced_cell_reselection_parameters_struct_s_5_value{
+ U8 e_utran_qqualmin;
+ }repeated_e_utran_enhanced_cell_reselection_parameters_struct_s_5_value;
+ ispresent repeated_e_utran_enhanced_cell_reselection_parameters_struct_s_6_tag;
+ union repeated_e_utran_enhanced_cell_reselection_parameters_struct_s_6_value{
+ U8 e_utran_rsrpmin;
+ }repeated_e_utran_enhanced_cell_reselection_parameters_struct_s_6_value;
+}repeated_e_utran_enhanced_cell_reselection_parameters_struct_s_3;
+
+/* SEQUENCE repeated e-utran enhanced cell reselection parameters struct */
+typedef struct repeated_e_utran_enhanced_cell_reselection_parameters_struct{
+ U16 numElements_e_utran_frequency_index;
+ U8 * e_utran_frequency_index;
+ repeated_e_utran_enhanced_cell_reselection_parameters_struct_s_2_enum repeated_e_utran_enhanced_cell_reselection_parameters_struct_s_2_tag;
+ union repeated_e_utran_enhanced_cell_reselection_parameters_struct_s_2_value{
+ U8 e_utran_qmin;
+ repeated_e_utran_enhanced_cell_reselection_parameters_struct_s_3 m_repeated_e_utran_enhanced_cell_reselection_parameters_struct_s_3;
+ }repeated_e_utran_enhanced_cell_reselection_parameters_struct_s_2_value;
+}repeated_e_utran_enhanced_cell_reselection_parameters_struct;
+
+typedef struct utran_csg_cells_reporting_description_struct_s_2{
+ U8 utran_csg_fdd_reporting_threshold;
+ U8 utran_csg_fdd_reporting_threshold_2;
+}utran_csg_cells_reporting_description_struct_s_2;
+
+/* SEQUENCE utran csg cells reporting description struct */
+typedef struct utran_csg_cells_reporting_description_struct{
+ ispresent utran_csg_cells_reporting_description_struct_s_1_tag;
+ union utran_csg_cells_reporting_description_struct_s_1_value{
+ utran_csg_cells_reporting_description_struct_s_2 m_utran_csg_cells_reporting_description_struct_s_2;
+ }utran_csg_cells_reporting_description_struct_s_1_value;
+ ispresent utran_csg_cells_reporting_description_struct_s_3_tag;
+ union utran_csg_cells_reporting_description_struct_s_3_value{
+ U8 utran_csg_tdd_reporting_threshold;
+ }utran_csg_cells_reporting_description_struct_s_3_value;
+}utran_csg_cells_reporting_description_struct;
+
+typedef struct e_utran_csg_cells_reporting_description_struct_s_2{
+ U8 e_utran_csg_fdd_reporting_threshold;
+ U8 e_utran_csg_fdd_reporting_threshold_2;
+}e_utran_csg_cells_reporting_description_struct_s_2;
+
+typedef struct e_utran_csg_cells_reporting_description_struct_s_4{
+ U8 e_utran_csg_tdd_reporting_threshold;
+ U8 e_utran_csg_fdd_reporting_threshold_2;
+}e_utran_csg_cells_reporting_description_struct_s_4;
+
+/* SEQUENCE e-utran csg cells reporting description struct */
+typedef struct e_utran_csg_cells_reporting_description_struct{
+ ispresent e_utran_csg_cells_reporting_description_struct_s_1_tag;
+ union e_utran_csg_cells_reporting_description_struct_s_1_value{
+ e_utran_csg_cells_reporting_description_struct_s_2 m_e_utran_csg_cells_reporting_description_struct_s_2;
+ }e_utran_csg_cells_reporting_description_struct_s_1_value;
+ ispresent e_utran_csg_cells_reporting_description_struct_s_3_tag;
+ union e_utran_csg_cells_reporting_description_struct_s_3_value{
+ e_utran_csg_cells_reporting_description_struct_s_4 m_e_utran_csg_cells_reporting_description_struct_s_4;
+ }e_utran_csg_cells_reporting_description_struct_s_3_value;
+}e_utran_csg_cells_reporting_description_struct;
+
+typedef enum {
+ CDMA_2000_DESCRIPTION_STRUCT_S_4,
+ CDMA_2000_DESCRIPTION_STRUCT_S_5,
+ CDMA_2000_DESCRIPTION_STRUCT_S_6,
+ CDMA_2000_DESCRIPTION_STRUCT_S_7,
+ CDMA_2000_DESCRIPTION_STRUCT_S_8
+}cdma_2000_description_struct_s_3_enum;
+
+typedef struct cdma_2000_description_struct_s_4{
+ U8 td_mode;
+ U8 td_power_level;
+}cdma_2000_description_struct_s_4;
+
+typedef struct cdma_2000_description_struct_s_5{
+ U8 qof;
+ U8 walsh_len_a;
+ U16 numElements_aux_pilot_walsh;
+ U8 * aux_pilot_walsh;
+}cdma_2000_description_struct_s_5;
+
+typedef struct cdma_2000_description_struct_s_6{
+ U8 qof;
+ U8 walsh_len_b;
+ U16 numElements_aux_td_walsh;
+ U8 * aux_td_walsh;
+ U8 aux_td_power_level;
+ U8 td_mode;
+}cdma_2000_description_struct_s_6;
+
+typedef struct cdma_2000_description_struct_s_7{
+ U8 sr3_prim_pilot;
+ U8 sr3_pilot_power1;
+ U8 sr3_pilot_power2;
+}cdma_2000_description_struct_s_7;
+
+typedef struct cdma_2000_description_struct_s_10{
+ U8 qof1;
+ U8 walsh_length1;
+ U16 numElements_aux_pilot_walsh1;
+ U8 * aux_pilot_walsh1;
+}cdma_2000_description_struct_s_10;
+
+typedef struct cdma_2000_description_struct_s_12{
+ U8 qof2;
+ U8 walsh_length2;
+ U16 numElements_aux_pilot_walsh2;
+ U8 * aux_pilot_walsh2;
+}cdma_2000_description_struct_s_12;
+
+typedef struct cdma_2000_description_struct_s_8{
+ U8 sr3_prim_pilot;
+ U8 sr3_pilot_power1;
+ U8 sr3_pilot_power2;
+ U8 qof;
+ U8 walsh_len_c;
+ U16 numElements_aux_walsh_len;
+ U8 * aux_walsh_len;
+ ispresent cdma_2000_description_struct_s_9_tag;
+ union cdma_2000_description_struct_s_9_value{
+ cdma_2000_description_struct_s_10 m_cdma_2000_description_struct_s_10;
+ }cdma_2000_description_struct_s_9_value;
+ ispresent cdma_2000_description_struct_s_11_tag;
+ union cdma_2000_description_struct_s_11_value{
+ cdma_2000_description_struct_s_12 m_cdma_2000_description_struct_s_12;
+ }cdma_2000_description_struct_s_11_value;
+}cdma_2000_description_struct_s_8;
+
+typedef struct cdma_2000_description_struct_s_3{
+ cdma_2000_description_struct_s_3_enum cdma_2000_description_struct_s_3_tag;
+ union cdma_2000_description_struct_s_3_value{
+ cdma_2000_description_struct_s_4 m_cdma_2000_description_struct_s_4;
+ cdma_2000_description_struct_s_5 m_cdma_2000_description_struct_s_5;
+ cdma_2000_description_struct_s_6 m_cdma_2000_description_struct_s_6;
+ cdma_2000_description_struct_s_7 m_cdma_2000_description_struct_s_7;
+ cdma_2000_description_struct_s_8 m_cdma_2000_description_struct_s_8;
+ }cdma_2000_description_struct_s_3_value;
+}cdma_2000_description_struct_s_3;
+
+typedef struct cdma_2000_description_struct_s_1{
+ U16 pilot_pn_offset;
+ ispresent cdma_2000_description_struct_s_2_tag;
+ union cdma_2000_description_struct_s_2_value{
+ cdma_2000_description_struct_s_3 m_cdma_2000_description_struct_s_3;
+ }cdma_2000_description_struct_s_2_value;
+}cdma_2000_description_struct_s_1;
+
+/* SEQUENCE cdma 2000 description struct */
+typedef struct cdma_2000_description_struct{
+ U8 cdma2000_frequency_band;
+ U16 cdma2000_frequency;
+ U8 number_cdma2000_cells;
+ U16 numElements_m_cdma_2000_description_struct_s_1;
+ cdma_2000_description_struct_s_1 * m_cdma_2000_description_struct_s_1;
+}cdma_2000_description_struct;
+
+/* SEQUENCE rtd6 mi struct */
+typedef struct rtd6_mi_struct{
+ U16 numElements_rtd;
+ U8 * rtd;
+}rtd6_mi_struct;
+
+/* SEQUENCE rtd12 mi struct */
+typedef struct rtd12_mi_struct{
+ U16 numElements_rtd;
+ U16 * rtd;
+}rtd12_mi_struct;
+
+typedef struct measurement_parameters_description_mi_struct_s_4{
+ U8 p_900__reporting_offset;
+ U8 p_900__reporting_threshold;
+}measurement_parameters_description_mi_struct_s_4;
+
+typedef struct measurement_parameters_description_mi_struct_s_6{
+ U8 p_1800__reporting_offset;
+ U8 p_1800__reporting_threshold;
+}measurement_parameters_description_mi_struct_s_6;
+
+typedef struct measurement_parameters_description_mi_struct_s_8{
+ U8 p_400__reporting_offset;
+ U8 p_400__reporting_threshold;
+}measurement_parameters_description_mi_struct_s_8;
+
+typedef struct measurement_parameters_description_mi_struct_s_10{
+ U8 p_1900__reporting_offset;
+ U8 p_1900__reporting_threshold;
+}measurement_parameters_description_mi_struct_s_10;
+
+typedef struct measurement_parameters_description_mi_struct_s_12{
+ U8 p_850__reporting_offset;
+ U8 p_850__reporting_threshold;
+}measurement_parameters_description_mi_struct_s_12;
+
+/* SEQUENCE measurement parameters description mi struct */
+typedef struct measurement_parameters_description_mi_struct{
+ ispresent measurement_parameters_description_mi_struct_s_1_tag;
+ union measurement_parameters_description_mi_struct_s_1_value{
+ U8 multiband_reporting;
+ }measurement_parameters_description_mi_struct_s_1_value;
+ ispresent measurement_parameters_description_mi_struct_s_2_tag;
+ union measurement_parameters_description_mi_struct_s_2_value{
+ U8 serving_band_reporting;
+ }measurement_parameters_description_mi_struct_s_2_value;
+ U8 scale_ord;
+ ispresent measurement_parameters_description_mi_struct_s_3_tag;
+ union measurement_parameters_description_mi_struct_s_3_value{
+ measurement_parameters_description_mi_struct_s_4 m_measurement_parameters_description_mi_struct_s_4;
+ }measurement_parameters_description_mi_struct_s_3_value;
+ ispresent measurement_parameters_description_mi_struct_s_5_tag;
+ union measurement_parameters_description_mi_struct_s_5_value{
+ measurement_parameters_description_mi_struct_s_6 m_measurement_parameters_description_mi_struct_s_6;
+ }measurement_parameters_description_mi_struct_s_5_value;
+ ispresent measurement_parameters_description_mi_struct_s_7_tag;
+ union measurement_parameters_description_mi_struct_s_7_value{
+ measurement_parameters_description_mi_struct_s_8 m_measurement_parameters_description_mi_struct_s_8;
+ }measurement_parameters_description_mi_struct_s_7_value;
+ ispresent measurement_parameters_description_mi_struct_s_9_tag;
+ union measurement_parameters_description_mi_struct_s_9_value{
+ measurement_parameters_description_mi_struct_s_10 m_measurement_parameters_description_mi_struct_s_10;
+ }measurement_parameters_description_mi_struct_s_9_value;
+ ispresent measurement_parameters_description_mi_struct_s_11_tag;
+ union measurement_parameters_description_mi_struct_s_11_value{
+ measurement_parameters_description_mi_struct_s_12 m_measurement_parameters_description_mi_struct_s_12;
+ }measurement_parameters_description_mi_struct_s_11_value;
+}measurement_parameters_description_mi_struct;
+
+typedef struct p_3_g_measurement_parameters_description_mi_struct_s_4{
+ U8 fdd_reporting_offset;
+ U8 fdd_reporting_threshold;
+}p_3_g_measurement_parameters_description_mi_struct_s_4;
+
+typedef struct p_3_g_measurement_parameters_description_mi_struct_s_7{
+ U8 tdd_reporting_offset;
+ U8 tdd_reporting_threshold;
+}p_3_g_measurement_parameters_description_mi_struct_s_7;
+
+typedef struct p_3_g_measurement_parameters_description_mi_struct_s_10{
+ U8 cdma2000_reporting_offset;
+ U8 cdma2000_reporting_threshold;
+}p_3_g_measurement_parameters_description_mi_struct_s_10;
+
+/* SEQUENCE 3 g measurement parameters description mi struct */
+typedef struct p_3_g_measurement_parameters_description_mi_struct{
+ U8 qsearch_c;
+ U8 fdd_rep_quant;
+ ispresent p_3_g_measurement_parameters_description_mi_struct_s_2_tag;
+ union p_3_g_measurement_parameters_description_mi_struct_s_2_value{
+ U8 fdd_multirat_reporting;
+ }p_3_g_measurement_parameters_description_mi_struct_s_2_value;
+ ispresent p_3_g_measurement_parameters_description_mi_struct_s_3_tag;
+ union p_3_g_measurement_parameters_description_mi_struct_s_3_value{
+ p_3_g_measurement_parameters_description_mi_struct_s_4 m_p_3_g_measurement_parameters_description_mi_struct_s_4;
+ }p_3_g_measurement_parameters_description_mi_struct_s_3_value;
+ ispresent p_3_g_measurement_parameters_description_mi_struct_s_5_tag;
+ union p_3_g_measurement_parameters_description_mi_struct_s_5_value{
+ U8 tdd_multirat_reporting;
+ }p_3_g_measurement_parameters_description_mi_struct_s_5_value;
+ ispresent p_3_g_measurement_parameters_description_mi_struct_s_6_tag;
+ union p_3_g_measurement_parameters_description_mi_struct_s_6_value{
+ p_3_g_measurement_parameters_description_mi_struct_s_7 m_p_3_g_measurement_parameters_description_mi_struct_s_7;
+ }p_3_g_measurement_parameters_description_mi_struct_s_6_value;
+ ispresent p_3_g_measurement_parameters_description_mi_struct_s_8_tag;
+ union p_3_g_measurement_parameters_description_mi_struct_s_8_value{
+ U8 cdma2000_multirat_reporting;
+ }p_3_g_measurement_parameters_description_mi_struct_s_8_value;
+ ispresent p_3_g_measurement_parameters_description_mi_struct_s_9_tag;
+ union p_3_g_measurement_parameters_description_mi_struct_s_9_value{
+ p_3_g_measurement_parameters_description_mi_struct_s_10 m_p_3_g_measurement_parameters_description_mi_struct_s_10;
+ }p_3_g_measurement_parameters_description_mi_struct_s_9_value;
+}p_3_g_measurement_parameters_description_mi_struct;
+
+typedef enum {
+ E_UTRAN_MEASUREMENT_PARAMETERS_DESCRIPTION_STRUCT_S_2,
+ E_UTRAN_MEASUREMENT_PARAMETERS_DESCRIPTION_STRUCT_S_11
+}e_utran_measurement_parameters_description_struct_s_1_enum;
+
+typedef struct e_utran_measurement_parameters_description_struct_s_4{
+ U8 e_utran_fdd_reporting_threshold;
+ ispresent e_utran_measurement_parameters_description_struct_s_5_tag;
+ union e_utran_measurement_parameters_description_struct_s_5_value{
+ U8 e_utran_fdd_reporting_threshold_2;
+ }e_utran_measurement_parameters_description_struct_s_5_value;
+ ispresent e_utran_measurement_parameters_description_struct_s_6_tag;
+ union e_utran_measurement_parameters_description_struct_s_6_value_mi{
+ U8 e_utran_fdd_reporting_offset;
+ }e_utran_measurement_parameters_description_struct_s_6_value_mi;
+}e_utran_measurement_parameters_description_struct_s_4;
+
+typedef struct e_utran_measurement_parameters_description_struct_s_8{
+ U8 e_utran_tdd_reporting_threshold;
+ ispresent e_utran_measurement_parameters_description_struct_s_9_tag;
+ union e_utran_measurement_parameters_description_struct_s_9_value{
+ U8 e_utran_tdd_reporting_threshold_2;
+ }e_utran_measurement_parameters_description_struct_s_9_value;
+ ispresent e_utran_measurement_parameters_description_struct_s_10_tag;
+ union e_utran_measurement_parameters_description_struct_s_10_value{
+ U8 e_utran_tdd_reporting_offset;
+ }e_utran_measurement_parameters_description_struct_s_10_value;
+}e_utran_measurement_parameters_description_struct_s_8;
+
+typedef struct e_utran_measurement_parameters_description_struct_s_2{
+ ispresent e_utran_measurement_parameters_description_struct_s_3_tag;
+ union e_utran_measurement_parameters_description_struct_s_3_value{
+ e_utran_measurement_parameters_description_struct_s_4 m_e_utran_measurement_parameters_description_struct_s_4;
+ }e_utran_measurement_parameters_description_struct_s_3_value;
+ ispresent e_utran_measurement_parameters_description_struct_s_7_tag;
+ union e_utran_measurement_parameters_description_struct_s_7_value{
+ e_utran_measurement_parameters_description_struct_s_8 m_e_utran_measurement_parameters_description_struct_s_8;
+ }e_utran_measurement_parameters_description_struct_s_7_value;
+}e_utran_measurement_parameters_description_struct_s_2;
+
+typedef struct e_utran_measurement_parameters_description_struct_s_13{
+ U8 e_utran_fdd_measurement_report_offset;
+ ispresent e_utran_measurement_parameters_description_struct_s_14_tag;
+ union e_utran_measurement_parameters_description_struct_s_14_value{
+ U8 e_utran_fdd_reporting_threshold_2;
+ }e_utran_measurement_parameters_description_struct_s_14_value;
+ ispresent e_utran_measurement_parameters_description_struct_s_15_tag;
+ union e_utran_measurement_parameters_description_struct_s_15_value{
+ U8 e_utran_fdd_reporting_offset;
+ }e_utran_measurement_parameters_description_struct_s_15_value;
+}e_utran_measurement_parameters_description_struct_s_13;
+
+typedef struct e_utran_measurement_parameters_description_struct_s_17{
+ U8 e_utran_tdd_measurement_report_offset;
+ ispresent e_utran_measurement_parameters_description_struct_s_18_tag;
+ union e_utran_measurement_parameters_description_struct_s_18_value{
+ U8 e_utran_tdd_reporting_threshold_2;
+ }e_utran_measurement_parameters_description_struct_s_18_value;
+ ispresent e_utran_measurement_parameters_description_struct_s_19_tag;
+ union e_utran_measurement_parameters_description_struct_s_19_value{
+ U8 e_utran_tdd_reporting_offset;
+ }e_utran_measurement_parameters_description_struct_s_19_value;
+}e_utran_measurement_parameters_description_struct_s_17;
+
+typedef struct e_utran_measurement_parameters_description_struct_s_11{
+ ispresent e_utran_measurement_parameters_description_struct_s_12_tag;
+ union e_utran_measurement_parameters_description_struct_s_12_value{
+ e_utran_measurement_parameters_description_struct_s_13 m_e_utran_measurement_parameters_description_struct_s_13;
+ }e_utran_measurement_parameters_description_struct_s_12_value;
+ ispresent e_utran_measurement_parameters_description_struct_s_16_tag;
+ union e_utran_measurement_parameters_description_struct_s_16_value{
+ e_utran_measurement_parameters_description_struct_s_17 m_e_utran_measurement_parameters_description_struct_s_17;
+ }e_utran_measurement_parameters_description_struct_s_16_value;
+ U8 reporting_granularity;
+}e_utran_measurement_parameters_description_struct_s_11;
+
+/* SEQUENCE e-utran measurement parameters description struct */
+typedef struct e_utran_measurement_parameters_description_mi_struct{
+ U8 qsearch_c_e_utran;
+ U8 e_utran_rep_quant;
+ U8 e_utran_multirat_reporting;
+ e_utran_measurement_parameters_description_struct_s_1_enum e_utran_measurement_parameters_description_struct_s_1_tag;
+ union e_utran_measurement_parameters_description_struct_s_1_value_mi{
+ e_utran_measurement_parameters_description_struct_s_2 m_e_utran_measurement_parameters_description_struct_s_2;
+ e_utran_measurement_parameters_description_struct_s_11 m_e_utran_measurement_parameters_description_struct_s_11;
+ }e_utran_measurement_parameters_description_struct_s_1_value_mi;
+}e_utran_measurement_parameters_description_mi_struct;
+
+/* SEQUENCE repeated e-utran neighbour cells mi struct */
+typedef struct repeated_e_utran_neighbour_cells_mi_struct{
+ U16 earfcn;
+ U16 numElements_earfcn;
+ U16 * p_earfcn;
+ ispresent repeated_e_utran_neighbour_cells_mi_struct_s_2_tag;
+ union repeated_e_utran_neighbour_cells_mi_struct_s_2_value{
+ U8 measurement_bandwidth;
+ }repeated_e_utran_neighbour_cells_mi_struct_s_2_value;
+}repeated_e_utran_neighbour_cells_mi_struct;
+
+/* SEQUENCE repeated e-utran not allowed cells mi struct */
+typedef struct repeated_e_utran_not_allowed_cells_mi_struct{
+ pcid_group_ie not_allowed_cells;
+ U16 numElements_e_utran_frequency_index;
+ U8 * e_utran_frequency_index;
+}repeated_e_utran_not_allowed_cells_mi_struct;
+
+/* SEQUENCE repeated e-utran measurement control parameters struct */
+typedef struct repeated_e_utran_measurement_control_parameters_struct{
+ U16 numElements_e_utran_frequency_index;
+ U8 * e_utran_frequency_index;
+ U8 measurement_control_e_utran;
+}repeated_e_utran_measurement_control_parameters_struct;
+
+typedef struct e_utran_csg_description_mi_struct_s_1{
+ pcid_group_ie csg_pci_split;
+ U16 numElements_e_utran_frequency_index;
+ U8 * e_utran_frequency_index;
+}e_utran_csg_description_mi_struct_s_1;
+
+/* SEQUENCE e-utran csg description mi struct */
+typedef struct e_utran_csg_description_mi_struct{
+ U16 numElements_m_e_utran_csg_description_mi_struct_s_1;
+ e_utran_csg_description_mi_struct_s_1 * m_e_utran_csg_description_mi_struct_s_1;
+}e_utran_csg_description_mi_struct;
+
+typedef enum {
+ M_A5_BITS_FOR_CM3,
+ MOBILE_STATION_CLASSMARK3_STRUCT_S_2,
+ MOBILE_STATION_CLASSMARK3_STRUCT_S_3,
+ MOBILE_STATION_CLASSMARK3_STRUCT_S_4,
+ MOBILE_STATION_CLASSMARK3_STRUCT_S_5,
+ MOBILE_STATION_CLASSMARK3_STRUCT_S_6
+}mobile_station_classmark3_struct_s_1_enum;
+
+typedef struct mobile_station_classmark3_struct_s_2{
+ a5_bits_for_cm3 m_a5_bits_for_cm3;
+ U8 associated_radio_capability_2;
+ U8 associated_radio_capability_1;
+}mobile_station_classmark3_struct_s_2;
+
+typedef struct mobile_station_classmark3_struct_s_3{
+ a5_bits_for_cm3 m_a5_bits_for_cm3;
+ U8 associated_radio_capability_2;
+ U8 associated_radio_capability_1;
+}mobile_station_classmark3_struct_s_3;
+
+typedef struct mobile_station_classmark3_struct_s_4{
+ a5_bits_for_cm3 m_a5_bits_for_cm3;
+ U8 associated_radio_capability_1;
+}mobile_station_classmark3_struct_s_4;
+
+typedef struct mobile_station_classmark3_struct_s_5{
+ a5_bits_for_cm3 m_a5_bits_for_cm3;
+ U8 associated_radio_capability_1;
+}mobile_station_classmark3_struct_s_5;
+
+typedef struct mobile_station_classmark3_struct_s_6{
+ a5_bits_for_cm3 m_a5_bits_for_cm3;
+ U8 associated_radio_capability_1;
+}mobile_station_classmark3_struct_s_6;
+
+typedef enum {
+ CONCAT_01_mbms,
+ CONCAT_10_mbms,
+ CONCAT_11_mbms
+}gsm_400_bands_supported_enum;
+
+typedef struct mobile_station_classmark3_struct_s_14{
+ gsm_400_bands_supported_enum gsm_400_bands_supported_tag;
+ U8 gsm_400_associated_radio_capability;
+}mobile_station_classmark3_struct_s_14;
+
+typedef struct mobile_station_classmark3_struct_s_18{
+ U8 dtm_gprs_multi_slot_class;
+ U8 single_slot_dtm;
+ ispresent mobile_station_classmark3_struct_s_19_tag;
+ union mobile_station_classmark3_struct_s_19_value{
+ U8 dtm_egprs_multi_slot_class;
+ }mobile_station_classmark3_struct_s_19_value;
+}mobile_station_classmark3_struct_s_18;
+
+typedef struct mobile_station_classmark3_struct_s_23{
+ U8 extended_dtm_gprs_multi_slot_class;
+ U8 extended_dtm_egprs_multi_slot_class;
+}mobile_station_classmark3_struct_s_23;
+
+typedef enum {
+ MOBILE_STATION_CLASSMARK3_STRUCT_CONCAT_01,
+ MOBILE_STATION_CLASSMARK3_STRUCT_CONCAT_10,
+ MOBILE_STATION_CLASSMARK3_STRUCT_CONCAT_11
+}t_gsm_400_bands_supported_enum;
+
+typedef struct mobile_station_classmark3_struct_s_27{
+ t_gsm_400_bands_supported_enum t_gsm_400_bands_supported_tag;
+ U8 t_gsm_400_associated_radio_capability;
+}mobile_station_classmark3_struct_s_27;
+
+typedef struct mobile_station_classmark3_struct_s_29{
+ U8 dtm_gprs_high_multi_slot_class;
+ U8 offset_required;
+ ispresent mobile_station_classmark3_struct_s_30_tag;
+ union mobile_station_classmark3_struct_s_30_value{
+ U8 dtm_egprs_high_multi_slot_class;
+ }mobile_station_classmark3_struct_s_30_value;
+}mobile_station_classmark3_struct_s_29;
+
+/* SEQUENCE mobile_station_classmark3_struct */
+typedef struct mobile_station_classmark3_struct{
+ U8 mobile_station_classmark3_iei;
+ U8 length;
+ mobile_station_classmark3_struct_s_1_enum mobile_station_classmark3_struct_s_1_tag;
+ union mobile_station_classmark3_struct_s_1_value{
+ a5_bits_for_cm3 m_a5_bits_for_cm3;
+ mobile_station_classmark3_struct_s_2 m_mobile_station_classmark3_struct_s_2;
+ mobile_station_classmark3_struct_s_3 m_mobile_station_classmark3_struct_s_3;
+ mobile_station_classmark3_struct_s_4 m_mobile_station_classmark3_struct_s_4;
+ mobile_station_classmark3_struct_s_5 m_mobile_station_classmark3_struct_s_5;
+ mobile_station_classmark3_struct_s_6 m_mobile_station_classmark3_struct_s_6;
+ }mobile_station_classmark3_struct_s_1_value;
+ ispresent mobile_station_classmark3_struct_s_7_tag;
+ union mobile_station_classmark3_struct_s_7_value{
+ r_support m_r_support;
+ }mobile_station_classmark3_struct_s_7_value;
+ ispresent mobile_station_classmark3_struct_s_8_tag;
+ union mobile_station_classmark3_struct_s_8_value{
+ hscsd_multi_slot_capability m_hscsd_multi_slot_capability;
+ }mobile_station_classmark3_struct_s_8_value;
+ U8 ucs2_treatment;
+ U8 extended_measurement_capability;
+ ispresent mobile_station_classmark3_struct_s_9_tag;
+ union mobile_station_classmark3_struct_s_9_value{
+ ms_measurement_capability m_ms_measurement_capability;
+ }mobile_station_classmark3_struct_s_9_value;
+ ispresent mobile_station_classmark3_struct_s_10_tag;
+ union mobile_station_classmark3_struct_s_10_value{
+ ms_positioning_method_capability m_ms_positioning_method_capability;
+ }mobile_station_classmark3_struct_s_10_value;
+ ispresent mobile_station_classmark3_struct_s_11_tag;
+ union mobile_station_classmark3_struct_s_11_value{
+ ecsd_multi_slot_capability m_ecsd_multi_slot_capability;
+ }mobile_station_classmark3_struct_s_11_value;
+ ispresent mobile_station_classmark3_struct_s_12_tag;
+ union mobile_station_classmark3_struct_s_12_value{
+ p_8_psk_struct m_p_8_psk_struct;
+ }mobile_station_classmark3_struct_s_12_value;
+ ispresent mobile_station_classmark3_struct_s_13_tag;
+ union mobile_station_classmark3_struct_s_13_value{
+ mobile_station_classmark3_struct_s_14 m_mobile_station_classmark3_struct_s_14;
+ }mobile_station_classmark3_struct_s_13_value;
+ ispresent mobile_station_classmark3_struct_s_15_tag;
+ union mobile_station_classmark3_struct_s_15_value{
+ U8 gsm_850_associated_radio_capability;
+ }mobile_station_classmark3_struct_s_15_value;
+ ispresent mobile_station_classmark3_struct_s_16_tag;
+ union mobile_station_classmark3_struct_s_16_value{
+ U8 gsm_1900_associated_radio_capability;
+ }mobile_station_classmark3_struct_s_16_value;
+ U8 umts_fdd_radio_access_technology_capability;
+ U8 umts_3__84_mcps_tdd_radio_access_technology_capability;
+ U8 cdma_2000_radio_access_technology_capability;
+ ispresent mobile_station_classmark3_struct_s_17_tag;
+ union mobile_station_classmark3_struct_s_17_value{
+ mobile_station_classmark3_struct_s_18 m_mobile_station_classmark3_struct_s_18;
+ }mobile_station_classmark3_struct_s_17_value;
+ ispresent mobile_station_classmark3_struct_s_20_tag;
+ union mobile_station_classmark3_struct_s_20_value{
+ single_band_support m_single_band_support;
+ }mobile_station_classmark3_struct_s_20_value;
+ ispresent mobile_station_classmark3_struct_s_21_tag;
+ union mobile_station_classmark3_struct_s_21_value{
+ U8 gsm_750_associated_radio_capability;
+ }mobile_station_classmark3_struct_s_21_value;
+ U8 umts_1__28_mcps_tdd_radio_access_technology_capability;
+ U8 geran_feature_package_1;
+ ispresent mobile_station_classmark3_struct_s_22_tag;
+ union mobile_station_classmark3_struct_s_22_value{
+ mobile_station_classmark3_struct_s_23 m_mobile_station_classmark3_struct_s_23;
+ }mobile_station_classmark3_struct_s_22_value;
+ ispresent mobile_station_classmark3_struct_s_24_tag;
+ union mobile_station_classmark3_struct_s_24_value{
+ U8 high_multislot_capability;
+ }mobile_station_classmark3_struct_s_24_value;
+ ispresent mobile_station_classmark3_struct_s_25_tag;
+ union mobile_station_classmark3_struct_s_25_value{
+ geran_iu_mode_capabilities m_geran_iu_mode_capabilities;
+ }mobile_station_classmark3_struct_s_25_value;
+ U8 geran_feature_package_2;
+ U8 gmsk_multislot_power_profile;
+ U8 p_8_psk_multislot_power_profile;
+ ispresent mobile_station_classmark3_struct_s_26_tag;
+ union mobile_station_classmark3_struct_s_26_value{
+ mobile_station_classmark3_struct_s_27 m_mobile_station_classmark3_struct_s_27;
+ }mobile_station_classmark3_struct_s_26_value;
+ U8 downlink_advanced_receiver_performance;
+ U8 dtm_enhancements_capability;
+ ispresent mobile_station_classmark3_struct_s_28_tag;
+ union mobile_station_classmark3_struct_s_28_value{
+ mobile_station_classmark3_struct_s_29 m_mobile_station_classmark3_struct_s_29;
+ }mobile_station_classmark3_struct_s_28_value;
+ U8 repeated_acch_capability;
+ ispresent mobile_station_classmark3_struct_s_31_tag;
+ union mobile_station_classmark3_struct_s_31_value{
+ U8 gsm_710_associated_radio_capability;
+ }mobile_station_classmark3_struct_s_31_value;
+ ispresent mobile_station_classmark3_struct_s_32_tag;
+ union mobile_station_classmark3_struct_s_32_value{
+ U8 t_gsm_810_associated_radio_capability;
+ }mobile_station_classmark3_struct_s_32_value;
+ U8 ciphering_mode_setting_capability;
+ U8 additional_positioning_capabilities;
+ U8 eutra_fdd_support;
+ U8 eutra_tdd_support;
+ U8 eutra_meas_reporting_support;
+ U8 priority_based_reselection_support;
+ U8 utra_csg_cells_reporting;
+ U8 vamos_level;
+ /* R10 */
+ U8 tighter_capability;
+ U8 selective_ciphering_of_downlink_sacch;
+ /* R11 */
+ U8 cs_to_ps_srvcc_from_geran_to_utra;
+ U8 cs_to_ps_srvcc_from_geran_to_eutra;
+ U8 geran_netwrok_sharing_support;
+ U8 eutra_wideband_rsrq_measurement_support;
+
+ /* R12 */
+ U8 er_band_support;
+ U8 utra_multiple_freq_band_ind_support;
+ U8 eutra_multiple_freq_band_ind_support;
+ U8 extended_tsc_set_cap_support;
+ U8 extended_earfcn_value_range;
+
+}mobile_station_classmark3_struct;
+
+/* SEQUENCE paging_request_type3_struct */
+typedef struct paging_request_type3_struct{
+ U8 l2pseudo_length;
+ U8 skip_ind;
+ U8 proto_disc;
+ U8 mesg_type;
+ channels_needed_struct m_channels_needed_struct;
+ page_mode_struct m_page_mode_struct;
+ U8 tmsi_ptmsi1_struct[4];
+ U8 tmsi_ptmsi2_struct[4];
+ U8 tmsi_ptmsi3_struct[4];
+ U8 tmsi_ptmsi4_struct[4];
+ p3_rest_octets_struct m_p3_rest_octets_struct;
+}paging_request_type3_struct;
+
+/* SEQUENCE mobile_identity1_struct */
+typedef struct mobile_identity1_struct{
+ U8 length;
+ mobile_identity_for_paging_struct m_mobile_identity_struct;
+}mobile_identity1_struct;
+
+/* SEQUENCE mobile_identity2_struct */
+typedef struct mobile_identity2_struct{
+ U8 mobile_identity_iei;
+ U8 length;
+ mobile_identity_for_paging_struct m_mobile_identity_struct;
+}mobile_identity2_struct;
+
+/* SEQUENCE mobile_identity3_struct */
+typedef struct mobile_identity3_struct{
+ U8 mobile_identity_iei;
+ U8 length;
+ mobile_identity_for_paging_struct m_mobile_identity_struct;
+}mobile_identity3_struct;
+
+typedef struct mbms_session_list_ie_s_1{
+ tmgi_ie tmgi;
+ ispresent mbms_session_list_ie_s_2_tag;
+ union mbms_session_list_ie_s_2_value{
+ U8 mbms_session_identity;
+ }mbms_session_list_ie_s_2_value;
+}mbms_session_list_ie_s_1;
+
+/* SEQUENCE mbms session list ie */
+typedef struct mbms_session_list_ie{
+ U16 numElements_m_mbms_session_list_ie_s_1;
+ mbms_session_list_ie_s_1 * m_mbms_session_list_ie_s_1;
+}mbms_session_list_ie;
+
+/* SEQUENCE group call information */
+typedef struct group_call_information{
+ U16 numElements_group_call_reference;
+ U8 * group_call_reference;
+ ispresent group_call_information_s_1_tag;
+ union group_call_information_s_1_value{
+ group_channel_description_for_paging_req m_group_channel_description_for_paging_req;
+ }group_call_information_s_1_value;
+}group_call_information;
+
+typedef struct gprs_real_time_difference_description_struct_s_2{
+ ispresent gprs_real_time_difference_description_struct_s_3_tag;
+ union gprs_real_time_difference_description_struct_s_3_value{
+ U8 ba_index_start_rtd;
+ }gprs_real_time_difference_description_struct_s_3_value;
+ rtd6_si2q_struct rtd;
+ U16 numElements_rtd;
+ rtd6_si2q_struct * p_rtd;
+}gprs_real_time_difference_description_struct_s_2;
+
+typedef struct gprs_real_time_difference_description_struct_s_6{
+ ispresent gprs_real_time_difference_description_struct_s_7_tag;
+ union gprs_real_time_difference_description_struct_s_7_value{
+ U8 ba_index_start_rtd;
+ }gprs_real_time_difference_description_struct_s_7_value;
+ rtd12_si2q_struct rtd;
+ U16 numElements_rtd;
+ rtd12_si2q_struct * p_rtd;
+}gprs_real_time_difference_description_struct_s_6;
+
+/* SEQUENCE gprs_real time difference description struct */
+typedef struct gprs_real_time_difference_description_struct{
+ ispresent gprs_real_time_difference_description_struct_s_1_tag;
+ union gprs_real_time_difference_description_struct_s_1_value{
+ gprs_real_time_difference_description_struct_s_2 m_gprs_real_time_difference_description_struct_s_2;
+ }gprs_real_time_difference_description_struct_s_1_value;
+ ispresent gprs_real_time_difference_description_struct_s_5_tag;
+ union gprs_real_time_difference_description_struct_s_5_value{
+ gprs_real_time_difference_description_struct_s_6 m_gprs_real_time_difference_description_struct_s_6;
+ }gprs_real_time_difference_description_struct_s_5_value;
+}gprs_real_time_difference_description_struct;
+
+/* SEQUENCE si2q extension information */
+typedef struct si2q_extension_information{
+ ispresent si2q_extension_information_s_1_tag;
+ union si2q_extension_information_s_1_value{
+ ccn_support_description_struct ccn_support_description;
+ }si2q_extension_information_s_1_value;
+}si2q_extension_information;
+
+typedef struct p_3_g_priority_parameters_description_struct_s_2{
+ U8 default_utran_priority;
+ U8 default_thresh_utran;
+ U8 default_utran_qrxlevmin;
+}p_3_g_priority_parameters_description_struct_s_2;
+
+/* SEQUENCE 3 g priority parameters description struct */
+typedef struct p_3_g_priority_parameters_description_struct{
+ U8 utran_start;
+ U8 utran_stop;
+ ispresent p_3_g_priority_parameters_description_struct_s_1_tag;
+ union p_3_g_priority_parameters_description_struct_s_1_value{
+ p_3_g_priority_parameters_description_struct_s_2 m_p_3_g_priority_parameters_description_struct_s_2;
+ }p_3_g_priority_parameters_description_struct_s_1_value;
+ U16 numElements_repeated_utran_priority_parameters;
+ repeated_utran_priority_parameters_struct * repeated_utran_priority_parameters;
+}p_3_g_priority_parameters_description_struct;
+
+/* SEQUENCE repeated e-utran not allowed cells si2q struct */
+typedef struct repeated_e_utran_not_allowed_cells_si2q_struct{
+ pcid_group_ie not_allowed_cells;
+ U16 numElements_e_utran_frequency_index;
+ U8 * e_utran_frequency_index;
+}repeated_e_utran_not_allowed_cells_si2q_struct;
+
+/* SEQUENCE repeated e-utran pcid to ta mapping struct */
+typedef struct repeated_e_utran_pcid_to_ta_mapping_struct{
+ U16 numElements_pcid_to_ta_mapping;
+ pcid_group_ie * pcid_to_ta_mapping;
+ U16 numElements_e_utran_frequency_index;
+ U8 * e_utran_frequency_index;
+}repeated_e_utran_pcid_to_ta_mapping_struct;
+
+typedef struct p_3_g_csg_description_struct_s_1{
+ psc_group_ie csg_psc_split;
+ U16 numElements_utran_frequency_index;
+ U8 * utran_frequency_index;
+}p_3_g_csg_description_struct_s_1;
+
+typedef enum {
+ CSG_FDD_UARFCN,
+ CSG_TDD_UARFCN
+}p_3_g_csg_description_struct_s_4_enum;
+
+typedef struct p_3_g_csg_description_struct_s_3{
+ p_3_g_csg_description_struct_s_4_enum p_3_g_csg_description_struct_s_4_tag;
+ union p_3_g_csg_description_struct_s_4_value{
+ U16 csg_fdd_uarfcn;
+ U16 csg_tdd_uarfcn;
+ }p_3_g_csg_description_struct_s_4_value;
+}p_3_g_csg_description_struct_s_3;
+
+/* SEQUENCE 3 g csg description struct */
+typedef struct p_3_g_csg_description_struct{
+ U16 numElements_m_p_3_g_csg_description_struct_s_1;
+ p_3_g_csg_description_struct_s_1 * m_p_3_g_csg_description_struct_s_1;
+ U16 numElements_m_p_3_g_csg_description_struct_s_3;
+ p_3_g_csg_description_struct_s_3 * m_p_3_g_csg_description_struct_s_3;
+}p_3_g_csg_description_struct;
+
+typedef struct e_utran_csg_description_si2q_struct_s_1{
+ pcid_group_ie csg_pci_split;
+ U16 numElements_e_utran_frequency_index;
+ U8 * e_utran_frequency_index;
+}e_utran_csg_description_si2q_struct_s_1;
+
+/* SEQUENCE e-utran csg description si2q struct */
+typedef struct e_utran_csg_description_si2q_struct{
+ U16 numElements_m_e_utran_csg_description_si2q_struct_s_1;
+ e_utran_csg_description_si2q_struct_s_1 * m_e_utran_csg_description_si2q_struct_s_1;
+ U16 numElements_csg_earfcn;
+ U16 * csg_earfcn;
+}e_utran_csg_description_si2q_struct;
+
+/* SEQUENCE enhanced cell reselection parameters ie */
+typedef struct enhanced_cell_reselection_parameters_ie{
+ U16 numElements_repeated_e_utran_enhanced_cell_reselection_parameters;
+ repeated_e_utran_enhanced_cell_reselection_parameters_struct * repeated_e_utran_enhanced_cell_reselection_parameters;
+}enhanced_cell_reselection_parameters_ie;
+
+/* SEQUENCE csg cells reporting description struct */
+typedef struct csg_cells_reporting_description_struct{
+ ispresent csg_cells_reporting_description_struct_s_1_tag;
+ union csg_cells_reporting_description_struct_s_1_value{
+ utran_csg_cells_reporting_description_struct utran_csg_cells_reporting_description;
+ }csg_cells_reporting_description_struct_s_1_value;
+ ispresent csg_cells_reporting_description_struct_s_2_tag;
+ union csg_cells_reporting_description_struct_s_2_value{
+ e_utran_csg_cells_reporting_description_struct e_utran_csg_cells_reporting_description;
+ }csg_cells_reporting_description_struct_s_2_value;
+}csg_cells_reporting_description_struct;
+
+
+/* Rel11*/
+typedef struct repeated_earfcn_extended_si2q_struct{
+ U32 extended_earfcn;
+}repeated_earfcn_extended_si2q_struct;
+
+
+/* SEQUENCE extended earfcn description si2q struct */
+typedef struct extended_earfcn_description_si2q_struct{
+ U16 numElements_extended_earfcn;
+ repeated_earfcn_extended_si2q_struct * m_repeated_earfcn_extended;
+}extended_earfcn_description_si2q_struct;
+
+/* SEQUENCE extended earfcn csg description si2q struct */
+typedef struct extended_earfcn_description_csg_struct{
+ U16 numElements_csg_extended_earfcn;
+ U32 * csg_extended_earfcn;
+}extended_earfcn_description_csg_struct;
+
+
+/* SEQUENCE 3 g neighbour cell description mi struct */
+typedef struct p_3_g_neighbour_cell_description_mi_struct{
+ ispresent p_3_g_neighbour_cell_description_mi_struct_s_1_tag;
+ union p_3_g_neighbour_cell_description_mi_struct_s_1_value{
+ U8 p_3_g_wait;
+ }p_3_g_neighbour_cell_description_mi_struct_s_1_value;
+ ispresent p_3_g_neighbour_cell_description_mi_struct_s_2_tag;
+ union p_3_g_neighbour_cell_description_mi_struct_s_2_value{
+ U8 index_start_3g;
+ }p_3_g_neighbour_cell_description_mi_struct_s_2_value;
+ ispresent p_3_g_neighbour_cell_description_mi_struct_s_3_tag;
+ union p_3_g_neighbour_cell_description_mi_struct_s_3_value{
+ U8 absolute_index_start_emr;
+ }p_3_g_neighbour_cell_description_mi_struct_s_3_value;
+ ispresent p_3_g_neighbour_cell_description_mi_struct_s_4_tag;
+ union p_3_g_neighbour_cell_description_mi_struct_s_4_value{
+ utran_fdd_description_struct utran_fdd_description;
+ }p_3_g_neighbour_cell_description_mi_struct_s_4_value;
+ ispresent p_3_g_neighbour_cell_description_mi_struct_s_5_tag;
+ union p_3_g_neighbour_cell_description_mi_struct_s_5_value{
+ utran_tdd_description_struct utran_tdd_description;
+ }p_3_g_neighbour_cell_description_mi_struct_s_5_value;
+ ispresent p_3_g_neighbour_cell_description_mi_struct_s_6_tag;
+ union p_3_g_neighbour_cell_description_mi_struct_s_6_value{
+ cdma_2000_description_struct cdma2000_description;
+ }p_3_g_neighbour_cell_description_mi_struct_s_6_value;
+}p_3_g_neighbour_cell_description_mi_struct;
+
+typedef struct real_time_difference_description_struct_s_2_mi{
+ ispresent real_time_difference_description_struct_s_3_tag;
+ union real_time_difference_description_struct_s_3_value_mi{
+ U8 ba_index_start_rtd;
+ }real_time_difference_description_struct_s_3_value_mi;
+ rtd6_mi_struct rtd_struct;
+ U16 numElements_rtd_struct;
+ rtd6_mi_struct * p_rtd_struct;
+}real_time_difference_description_struct_s_2_mi;
+
+typedef struct real_time_difference_description_struct_s_6_mi{
+ ispresent real_time_difference_description_struct_s_7_tag;
+ union real_time_difference_description_struct_s_7_value_mi{
+ U8 ba_index_start_rtd;
+ }real_time_difference_description_struct_s_7_value_mi;
+ rtd12_mi_struct rtd_struct;
+ U16 numElements_rtd_struct;
+ rtd12_mi_struct * p_rtd_struct;
+}real_time_difference_description_struct_s_6_mi;
+
+/* SEQUENCE 3 g measurement control parameters description struct */
+typedef struct p_3_g_measurement_control_parameters_description_mi_struct{
+ ispresent p_3_g_measurement_control_parameters_description_struct_s_1_tag;
+ union p_3_g_measurement_control_parameters_description_struct_s_1_value_mi{
+ U8 default_measurement_control_utran;
+ }p_3_g_measurement_control_parameters_description_struct_s_1_value_mi;
+ U16 numElements_repeated_utran_measurement_control_parameters;
+ repeated_utran_measurement_control_parameters_struct * repeated_utran_measurement_control_parameters;
+}p_3_g_measurement_control_parameters_description_mi_struct;
+
+/* SEQUENCE e-utran measurement control parameters description struct */
+typedef struct e_utran_measurement_control_parameters_description_struct{
+ ispresent e_utran_measurement_control_parameters_description_struct_s_1_tag;
+ union e_utran_measurement_control_parameters_description_struct_s_1_value{
+ U8 default_measurement_control_e_utran;
+ }e_utran_measurement_control_parameters_description_struct_s_1_value;
+ U16 numElements_repeated_e_utran_measurement_control_parameters;
+ repeated_e_utran_measurement_control_parameters_struct * repeated_e_utran_measurement_control_parameters;
+}e_utran_measurement_control_parameters_description_struct;
+
+/* SEQUENCE rr_peer_classmark_change_struct */
+typedef struct rr_peer_classmark_change_struct{
+ U8 skip_ind;
+ U8 proto_disc;
+ U8 mesg_type;
+ mobile_station_classmark2_struct m_mobile_station_classmark2_struct;
+ Bool is_m_mobile_station_classmark3_struct_present; //truncation or optional
+ mobile_station_classmark3_struct m_mobile_station_classmark3_struct;
+}rr_peer_classmark_change_struct;
+
+/* SEQUENCE 3 g neighbour cell description si2q struct */
+typedef struct p_3_g_neighbour_cell_description_si2q_struct{
+ ispresent p_3_g_neighbour_cell_description_si2q_struct_s_1_tag;
+ union p_3_g_neighbour_cell_description_si2q_struct_s_1_value{
+ U8 index_start_3g;
+ }p_3_g_neighbour_cell_description_si2q_struct_s_1_value;
+ ispresent p_3_g_neighbour_cell_description_si2q_struct_s_2_tag;
+ union p_3_g_neighbour_cell_description_si2q_struct_s_2_value{
+ U8 absolute_index_start_emr;
+ }p_3_g_neighbour_cell_description_si2q_struct_s_2_value;
+ ispresent p_3_g_neighbour_cell_description_si2q_struct_s_3_tag;
+ union p_3_g_neighbour_cell_description_si2q_struct_s_3_value{
+ utran_fdd_description_struct utran_fdd_description;
+ }p_3_g_neighbour_cell_description_si2q_struct_s_3_value;
+ ispresent p_3_g_neighbour_cell_description_si2q_struct_s_4_tag;
+ union p_3_g_neighbour_cell_description_si2q_struct_s_4_value{
+ utran_tdd_description_struct utran_tdd_description;
+ }p_3_g_neighbour_cell_description_si2q_struct_s_4_value;
+}p_3_g_neighbour_cell_description_si2q_struct;
+
+/* SEQUENCE e-utran parameters description si2q struct */
+typedef struct e_utran_parameters_description_si2q_struct{
+ U8 e_utran_ccn_active;
+ U8 e_utran_start;
+ U8 e_utran_stop;
+ ispresent e_utran_parameters_description_si2q_struct_s_1_tag;
+ union e_utran_parameters_description_si2q_struct_s_1_value{
+ e_utran_measurement_parameters_description_struct e_utran_measurement_parameters_description;
+ }e_utran_parameters_description_si2q_struct_s_1_value;
+ ispresent e_utran_parameters_description_si2q_struct_s_2_tag;
+ union e_utran_parameters_description_si2q_struct_s_2_value{
+ gprs_e_utran_measurement_parameters_description_struct gprs_e_utran_measurement_parameters_description;
+ }e_utran_parameters_description_si2q_struct_s_2_value;
+ U16 numElements_repeated_e_utran_neighbour_cells;
+ repeated_e_utran_neighbour_cells_si2q_struct * repeated_e_utran_neighbour_cells;
+ U16 numElements_repeated_e_utran_not_allowed_cells;
+ repeated_e_utran_not_allowed_cells_si2q_struct * repeated_e_utran_not_allowed_cells;
+ U16 numElements_repeated_e_utran_pcid_to_ta_mapping;
+ repeated_e_utran_pcid_to_ta_mapping_struct * repeated_e_utran_pcid_to_ta_mapping;
+}e_utran_parameters_description_si2q_struct;
+
+/* SEQUENCE 3 g supplementary parameters description struct */
+typedef struct p_3_g_supplementary_parameters_description_struct{
+ U8 utran_start;
+ U8 utran_stop;
+ ispresent p_3_g_supplementary_parameters_description_struct_s_1_tag;
+ union p_3_g_supplementary_parameters_description_struct_s_1_value{
+ p_3_g_measurement_control_parameters_description_struct p_3_g_measurement_control_parameters_description;
+ }p_3_g_supplementary_parameters_description_struct_s_1_value;
+}p_3_g_supplementary_parameters_description_struct;
+
+/* SEQUENCE e-utran parameters description mi struct */
+typedef struct e_utran_parameters_description_mi_struct{
+ U8 e_utran_start;
+ U8 e_utran_stop;
+ ispresent e_utran_parameters_description_mi_struct_s_1_tag;
+ union e_utran_parameters_description_mi_struct_s_1_value{
+ e_utran_measurement_parameters_description_struct e_utran_measurement_parameters_description;
+ }e_utran_parameters_description_mi_struct_s_1_value;
+ U16 numElements_repeated_e_utran_neighbour_cells;
+ repeated_e_utran_neighbour_cells_mi_struct * repeated_e_utran_neighbour_cells;
+ U16 numElements_repeated_e_utran_not_allowed_cells;
+ repeated_e_utran_not_allowed_cells_mi_struct * repeated_e_utran_not_allowed_cells;
+ ispresent e_utran_parameters_description_mi_struct_s_4_tag;
+ union e_utran_parameters_description_mi_struct_s_4_value{
+ e_utran_measurement_control_parameters_description_struct e_utran_measurement_control_parameters_description;
+ }e_utran_parameters_description_mi_struct_s_4_value;
+}e_utran_parameters_description_mi_struct;
+
+/* SEQUENCE mbms p-t-m channel description ie */
+typedef struct mbms_p_t_m_channel_description_ie{
+ ispresent mbms_p_t_m_channel_description_ie_s_1_tag;
+ union mbms_p_t_m_channel_description_ie_s_1_value{
+ frequency_parameters_ie frequency_parameters;
+ }mbms_p_t_m_channel_description_ie_s_1_value;
+ U8 dl_timeslot_allocation;
+}mbms_p_t_m_channel_description_ie;
+
+/* SEQUENCE mprach description ie */
+typedef struct mprach_description_ie{
+ ispresent mprach_description_ie_s_1_tag;
+ union mprach_description_ie_s_1_value{
+ frequency_parameters_ie frequency_parameters;
+ }mprach_description_ie_s_1_value;
+ U8 mprach_timeslot_number;
+ U8 usf;
+ ispresent mprach_description_ie_s_2_tag;
+ union mprach_description_ie_s_2_value{
+ mprach_control_parameters_ie mprach_control_parameters;
+ }mprach_description_ie_s_2_value;
+}mprach_description_ie;
+
+/* SEQUENCE priority n e-utran parameters description struct */
+typedef struct priority_n_e_utran_parameters_description_struct{
+ ispresent priority_n_e_utran_parameters_description_struct_s_1_tag;
+ union priority_n_e_utran_parameters_description_struct_s_1_value{
+ serving_cell_priority_parameters_description_struct serving_cell_priority_parameters_description;
+ }priority_n_e_utran_parameters_description_struct_s_1_value;
+ ispresent priority_n_e_utran_parameters_description_struct_s_2_tag;
+ union priority_n_e_utran_parameters_description_struct_s_2_value{
+ p_3_g_priority_parameters_description_struct p_3_g_priority_parameters_description;
+ }priority_n_e_utran_parameters_description_struct_s_2_value;
+ ispresent priority_n_e_utran_parameters_description_struct_s_3_tag;
+ union priority_n_e_utran_parameters_description_struct_s_3_value{
+ e_utran_parameters_description_si2q_struct e_utran_parameters_description;
+ }priority_n_e_utran_parameters_description_struct_s_3_value;
+}priority_n_e_utran_parameters_description_struct;
+
+typedef struct measurement_information_s_6{
+ U8 extension_length;
+}measurement_information_s_6;
+
+typedef enum {
+ MEASUREMENT_INFORMATION_S_9_NULL,
+ MEASUREMENT_INFORMATION_LHSTRING_L, // L
+ MEASUREMENT_INFORMATION_S_10 // H
+}measurement_information_s_9_enum;
+
+typedef enum {
+ MEASUREMENT_INFORMATION_S_12_NULL,
+ MEASUREMENT_INFORMATION_LHSTRING_L1, // L
+ MEASUREMENT_INFORMATION_S_13 // H
+}measurement_information_s_12_enum;
+
+typedef struct measurement_information_s_15{
+ U8 p_700__reporting_offset;
+ U8 p_700__reporting_threshold;
+}measurement_information_s_15;
+
+typedef struct measurement_information_s_17{
+ U8 p_810__reporting_offset;
+ U8 p_810__reporting_threshold;
+}measurement_information_s_17;
+
+typedef enum {
+ MEASUREMENT_INFORMATION_S_18_NULL,
+ MEASUREMENT_INFORMATION_LHSTRING_L2, // L
+ MEASUREMENT_INFORMATION_S_19 // H
+}measurement_information_s_18_enum;
+
+typedef struct measurement_information_s_19{
+ ispresent measurement_information_s_20_tag;
+ union measurement_information_s_20_value{
+ p_3_g_supplementary_parameters_description_struct p_3_g_supplementary_parameters_description;
+ }measurement_information_s_20_value;
+ ispresent measurement_information_s_21_tag;
+ union measurement_information_s_21_value{
+ e_utran_parameters_description_mi_struct e_utran_parameters_description;
+ }measurement_information_s_21_value;
+ ispresent measurement_information_s_22_tag;
+ union measurement_information_s_22_value{
+ e_utran_csg_description_mi_struct e_utran_csg_description;
+ }measurement_information_s_22_value;
+}measurement_information_s_19;
+
+typedef struct measurement_information_s_13{
+ ispresent measurement_information_s_14_tag;
+ union measurement_information_s_14_value{
+ measurement_information_s_15 m_measurement_information_s_15;
+ }measurement_information_s_14_value;
+ ispresent measurement_information_s_16_tag;
+ union measurement_information_s_16_value{
+ measurement_information_s_17 m_measurement_information_s_17;
+ }measurement_information_s_16_value;
+ measurement_information_s_18_enum measurement_information_s_18_tag;
+ union measurement_information_s_18_value{
+ measurement_information_s_19 m_measurement_information_s_19;
+ }measurement_information_s_18_value;
+}measurement_information_s_13;
+
+typedef struct measurement_information_s_10{
+ ispresent measurement_information_s_11_tag;
+ union measurement_information_s_11_value{
+ p_3_g_additional_measurement_parameters_description_2_struct p_3_g_additional_measurement_parameters_description_2;
+ }measurement_information_s_11_value;
+ measurement_information_s_12_enum measurement_information_s_12_tag;
+ union measurement_information_s_12_value{
+ measurement_information_s_13 m_measurement_information_s_13;
+ }measurement_information_s_12_value;
+}measurement_information_s_10;
+
+/* SEQUENCE measurement information */
+typedef struct measurement_information_struct{
+ U8 rr_short_pd;
+ U8 message_type;
+ U8 short_layer_2_header;
+ U8 ba_ind;
+ U8 p_3_g_ba_ind;
+ U8 mp_change_mark;
+ U8 mi_index;
+ U8 mi_count;
+ U8 pwrc;
+ U8 report_type;
+ U8 reporting_rate;
+ U8 invalid_bsic_reporting;
+ ispresent measurement_information_s_1_tag;
+ union measurement_information_s_1_value{
+ real_time_difference_description_struct real_time_difference_description;
+ }measurement_information_s_1_value;
+ ispresent measurement_information_s_2_tag;
+ union measurement_information_s_2_value{
+ bsic_description_struct bsic_description;
+ }measurement_information_s_2_value;
+ ispresent measurement_information_s_3_tag;
+ union measurement_information_s_3_value{
+ report_priority_description_struct report_priority_description;
+ }measurement_information_s_3_value;
+ ispresent measurement_information_s_4_tag;
+ union measurement_information_s_4_value{
+ measurement_parameters_description_mi_struct measurement_parameters_description;
+ }measurement_information_s_4_value;
+ ispresent measurement_information_s_5_tag;
+ union measurement_information_s_5_value{
+ measurement_information_s_6 m_measurement_information_s_6;
+ }measurement_information_s_5_value;
+ ispresent measurement_information_s_7_tag;
+ union measurement_information_s_7_value{
+ p_3_g_neighbour_cell_description_mi_struct p_3_g_neighbour_cell_description;
+ }measurement_information_s_7_value;
+ ispresent measurement_information_s_8_tag;
+ union measurement_information_s_8_value{
+ p_3_g_measurement_parameters_description_mi_struct p_3_g_measurement_parameters_description;
+ }measurement_information_s_8_value;
+ measurement_information_s_9_enum measurement_information_s_9_tag;
+ union measurement_information_s_9_value{
+ measurement_information_s_10 m_measurement_information_s_10;
+ }measurement_information_s_9_value;
+}measurement_information_struct;
+
+typedef enum {
+ MBMS_CHANNEL_PARAMETERS_IE_S_1,
+ MBMS_CHANNEL_PARAMETERS_IE_S_3
+}mbms_channel_parameters_ie_s_0_enum;
+
+typedef struct mbms_channel_parameters_ie_s_2{
+ mbms_p_t_m_channel_description_ie mbms_p_t_m_channel_description;
+ mbms_session_parameters_list_ie mbms_session_parameters_list;
+}mbms_channel_parameters_ie_s_2;
+
+typedef struct mbms_channel_parameters_ie_s_1{
+ ispresent mbms_channel_parameters_ie_s_1_tag;
+ union mbms_channel_parameters_ie_s_1_value{
+ mbms_channel_parameters_ie_s_2 m_mbms_channel_parameters_ie_s_2;
+ }mbms_channel_parameters_ie_s_1_value;
+}mbms_channel_parameters_ie_s_1;
+
+typedef struct mbms_channel_parameters_ie_s_3{
+ ispresent mbms_channel_parameters_ie_s_3_tag;
+ union mbms_channel_parameters_ie_s_3_value{
+ mprach_description_ie mprach_description;
+ }mbms_channel_parameters_ie_s_3_value;
+}mbms_channel_parameters_ie_s_3;
+
+/* SEQUENCE mbms channel parameters ie */
+typedef struct mbms_channel_parameters_ie{
+ mbms_channel_parameters_ie_s_0_enum mbms_channel_parameters_ie_s_0_tag;
+ union mbms_channel_parameters_ie_s_0_value{
+ mbms_channel_parameters_ie_s_1 m_mbms_channel_parameters_ie_s_1;
+ mbms_channel_parameters_ie_s_3 m_mbms_channel_parameters_ie_s_3;
+ }mbms_channel_parameters_ie_s_0_value;
+}mbms_channel_parameters_ie;
+
+typedef struct si2quater_rest_octets_struct_s_8{
+ U8 extension_length;
+ si2q_extension_information m_si2q_extension_information;
+}si2quater_rest_octets_struct_s_8;
+
+typedef enum {
+ SI2QUATER_REST_OCTETS_STRUCT_S_13_NULL,
+ SI2QUATER_REST_OCTETS_STRUCT_LHSTRING_L, // L
+ SI2QUATER_REST_OCTETS_STRUCT_S_14 // H
+}si2quater_rest_octets_struct_s_13_enum;
+
+typedef enum {
+ SI2QUATER_REST_OCTETS_STRUCT_S_17_NULL,
+ SI2QUATER_REST_OCTETS_STRUCT_LHSTRING_L1, // L
+ SI2QUATER_REST_OCTETS_STRUCT_S_18 // H
+}si2quater_rest_octets_struct_s_17_enum;
+
+typedef enum {
+ SI2QUATER_REST_OCTETS_STRUCT_S_19_NULL,
+ SI2QUATER_REST_OCTETS_STRUCT_LHSTRING_L2, // L
+ SI2QUATER_REST_OCTETS_STRUCT_S_20 // H
+}si2quater_rest_octets_struct_s_19_enum;
+
+typedef struct si2quater_rest_octets_struct_s_22{
+ U8 p_700__reporting_offset;
+ U8 p_700__reporting_threshold;
+}si2quater_rest_octets_struct_s_22;
+
+typedef struct si2quater_rest_octets_struct_s_24{
+ U8 p_810__reporting_offset;
+ U8 p_810__reporting_threshold;
+}si2quater_rest_octets_struct_s_24;
+
+typedef enum {
+ SI2QUATER_REST_OCTETS_STRUCT_S_25_NULL,
+ SI2QUATER_REST_OCTETS_STRUCT_LHSTRING_L3, // L
+ SI2QUATER_REST_OCTETS_STRUCT_S_26 // H
+}si2quater_rest_octets_struct_s_25_enum;
+
+typedef enum {
+ SI2QUATER_REST_OCTETS_STRUCT_S_30_NULL,
+ SI2QUATER_REST_OCTETS_STRUCT_LHSTRING_L4, // L
+ SI2QUATER_REST_OCTETS_STRUCT_S_31 // H
+}si2quater_rest_octets_struct_s_30_enum;
+
+typedef enum {
+ SI2QUATER_REST_OCTETS_STRUCT_S_34_NULL,
+ SI2QUATER_REST_OCTETS_STRUCT_LHSTRING_L5, // L
+ SI2QUATER_REST_OCTETS_STRUCT_S_35 // H
+}si2quater_rest_octets_struct_s_34_enum;
+
+typedef enum {
+ SI2QUATER_REST_OCTETS_STRUCT_S_37_NULL,
+ SI2QUATER_REST_OCTETS_STRUCT_LHSTRING_L6, // L
+ SI2QUATER_REST_OCTETS_STRUCT_S_38 // H
+}si2quater_rest_octets_struct_s_37_enum;
+
+typedef struct si2quater_rest_octets_struct_s_38{
+ ispresent si2quater_rest_octets_struct_s_39_tag;
+ union si2quater_rest_octets_struct_s_39_value{
+ extended_earfcn_description_si2q_struct extended_earfcn_description;
+ }si2quater_rest_octets_struct_s_39_value;
+ ispresent si2quater_rest_octets_struct_s_40_tag;
+ union si2quater_rest_octets_struct_s_40_value{
+ extended_earfcn_description_csg_struct extended_earfcn_csg_description;
+ }si2quater_rest_octets_struct_s_40_value;
+}si2quater_rest_octets_struct_s_38;
+
+typedef struct si2quater_rest_octets_struct_s_35{
+ ispresent si2quater_rest_octets_struct_s_36_tag;
+ union si2quater_rest_octets_struct_s_36_value{
+ U8 init_pwr_red;
+ }si2quater_rest_octets_struct_s_36_value;
+ U8 nc2_csg_pccn_permitted;
+ /*Rel 11*/
+ si2quater_rest_octets_struct_s_37_enum si2quater_rest_octets_struct_s_37_tag;
+ union si2quater_rest_octets_struct_s_37_value{
+ si2quater_rest_octets_struct_s_38 m_si2quater_rest_octets_struct_s_38;
+ }si2quater_rest_octets_struct_s_37_value;
+}si2quater_rest_octets_struct_s_35;
+
+typedef struct si2quater_rest_octets_struct_s_31{
+ ispresent si2quater_rest_octets_struct_s_32_tag;
+ union si2quater_rest_octets_struct_s_32_value{
+ enhanced_cell_reselection_parameters_ie enhanced_cell_reselection_parameters_description;
+ }si2quater_rest_octets_struct_s_32_value;
+ ispresent si2quater_rest_octets_struct_s_33_tag;
+ union si2quater_rest_octets_struct_s_33_value{
+ csg_cells_reporting_description_struct csg_cells_reporting_description;
+ }si2quater_rest_octets_struct_s_33_value;
+ si2quater_rest_octets_struct_s_34_enum si2quater_rest_octets_struct_s_34_tag;
+ union si2quater_rest_octets_struct_s_34_value{
+ si2quater_rest_octets_struct_s_35 m_si2quater_rest_octets_struct_s_35;
+ }si2quater_rest_octets_struct_s_34_value;
+}si2quater_rest_octets_struct_s_31;
+
+typedef struct si2quater_rest_octets_struct_s_26{
+ ispresent si2quater_rest_octets_struct_s_27_tag;
+ union si2quater_rest_octets_struct_s_27_value{
+ priority_n_e_utran_parameters_description_struct priority_n_e_utran_parameters_description;
+ }si2quater_rest_octets_struct_s_27_value;
+ ispresent si2quater_rest_octets_struct_s_28_tag;
+ union si2quater_rest_octets_struct_s_28_value{
+ p_3_g_csg_description_struct p_3_g_csg_description;
+ }si2quater_rest_octets_struct_s_28_value;
+ ispresent si2quater_rest_octets_struct_s_29_tag;
+ union si2quater_rest_octets_struct_s_29_value{
+ e_utran_csg_description_si2q_struct e_utran_csg_description;
+ }si2quater_rest_octets_struct_s_29_value;
+ si2quater_rest_octets_struct_s_30_enum si2quater_rest_octets_struct_s_30_tag;
+ union si2quater_rest_octets_struct_s_30_value{
+ si2quater_rest_octets_struct_s_31 m_si2quater_rest_octets_struct_s_31;
+ }si2quater_rest_octets_struct_s_30_value;
+}si2quater_rest_octets_struct_s_26;
+
+typedef struct si2quater_rest_octets_struct_s_20{
+ ispresent si2quater_rest_octets_struct_s_21_tag;
+ union si2quater_rest_octets_struct_s_21_value{
+ si2quater_rest_octets_struct_s_22 m_si2quater_rest_octets_struct_s_22;
+ }si2quater_rest_octets_struct_s_21_value;
+ ispresent si2quater_rest_octets_struct_s_23_tag;
+ union si2quater_rest_octets_struct_s_23_value{
+ si2quater_rest_octets_struct_s_24 m_si2quater_rest_octets_struct_s_24;
+ }si2quater_rest_octets_struct_s_23_value;
+ si2quater_rest_octets_struct_s_25_enum si2quater_rest_octets_struct_s_25_tag;
+ union si2quater_rest_octets_struct_s_25_value{
+ si2quater_rest_octets_struct_s_26 m_si2quater_rest_octets_struct_s_26;
+ }si2quater_rest_octets_struct_s_25_value;
+}si2quater_rest_octets_struct_s_20;
+
+typedef struct si2quater_rest_octets_struct_s_18{
+ U8 p_3_g_ccn_active;
+ si2quater_rest_octets_struct_s_19_enum si2quater_rest_octets_struct_s_19_tag;
+ union si2quater_rest_octets_struct_s_19_value{
+ si2quater_rest_octets_struct_s_20 m_si2quater_rest_octets_struct_s_20;
+ }si2quater_rest_octets_struct_s_19_value;
+}si2quater_rest_octets_struct_s_18;
+
+typedef struct si2quater_rest_octets_struct_s_14{
+ ispresent si2quater_rest_octets_struct_s_15_tag;
+ union si2quater_rest_octets_struct_s_15_value{
+ p_3_g_additional_measurement_parameters_description_struct p_3_g_additional_measurement_parameters_description;
+ }si2quater_rest_octets_struct_s_15_value;
+ ispresent si2quater_rest_octets_struct_s_16_tag;
+ union si2quater_rest_octets_struct_s_16_value{
+ p_3_g_additional_measurement_parameters_description_2_struct p_3_g_additional_measurement_parameters_description_2;
+ }si2quater_rest_octets_struct_s_16_value;
+ si2quater_rest_octets_struct_s_17_enum si2quater_rest_octets_struct_s_17_tag;
+ union si2quater_rest_octets_struct_s_17_value{
+ si2quater_rest_octets_struct_s_18 m_si2quater_rest_octets_struct_s_18;
+ }si2quater_rest_octets_struct_s_17_value;
+}si2quater_rest_octets_struct_s_14;
+
+/* SEQUENCE si2quater rest octets struct */
+typedef struct si2quater_rest_octets_struct{
+ U8 ba_ind;
+ U8 p_3_g_ba_ind;
+ U8 mp_change_mark;
+ U8 si2quater_index;
+ U8 si2quater_count;
+ ispresent si2quater_rest_octets_struct_s_1_tag;
+ union si2quater_rest_octets_struct_s_1_value{
+ measurement_parameters_description_si2q_struct measurement_parameters_description;
+ }si2quater_rest_octets_struct_s_1_value;
+ ispresent si2quater_rest_octets_struct_s_2_tag;
+ union si2quater_rest_octets_struct_s_2_value{
+ gprs_real_time_difference_description_struct gprs_real_time_difference_description;
+ }si2quater_rest_octets_struct_s_2_value;
+ ispresent si2quater_rest_octets_struct_s_3_tag;
+ union si2quater_rest_octets_struct_s_3_value{
+ gprs_bsic_description_struct gprs_bsic_description;
+ }si2quater_rest_octets_struct_s_3_value;
+ ispresent si2quater_rest_octets_struct_s_4_tag;
+ union si2quater_rest_octets_struct_s_4_value{
+ gprs_report_priority_description_struct gprs_report_priority_description;
+ }si2quater_rest_octets_struct_s_4_value;
+ ispresent si2quater_rest_octets_struct_s_5_tag;
+ union si2quater_rest_octets_struct_s_5_value{
+ gprs_measurement_parameters_description_struct gprs_measurement_parameters_description;
+ }si2quater_rest_octets_struct_s_5_value;
+ ispresent si2quater_rest_octets_struct_s_6_tag;
+ union si2quater_rest_octets_struct_s_6_value{
+ nc_measurement_parameters_si2q_struct nc_measurement_parameters;
+ }si2quater_rest_octets_struct_s_6_value;
+ ispresent si2quater_rest_octets_struct_s_7_tag;
+ union si2quater_rest_octets_struct_s_7_value{
+ si2quater_rest_octets_struct_s_8 m_si2quater_rest_octets_struct_s_8;
+ }si2quater_rest_octets_struct_s_7_value;
+ ispresent si2quater_rest_octets_struct_s_10_tag;
+ union si2quater_rest_octets_struct_s_10_value{
+ p_3_g_neighbour_cell_description_si2q_struct p_3_g_neighbour_cell_description;
+ }si2quater_rest_octets_struct_s_10_value;
+ ispresent si2quater_rest_octets_struct_s_11_tag;
+ union si2quater_rest_octets_struct_s_11_value{
+ p_3_g_measurement_parameters_description_si2q_struct p_3_g_measurement_parameters_description;
+ }si2quater_rest_octets_struct_s_11_value;
+ ispresent si2quater_rest_octets_struct_s_12_tag;
+ union si2quater_rest_octets_struct_s_12_value{
+ gprs_3g_measurement_parameters_description_struct gprs_3g_measurement_parameters_description;
+ }si2quater_rest_octets_struct_s_12_value;
+ si2quater_rest_octets_struct_s_13_enum si2quater_rest_octets_struct_s_13_tag;
+ union si2quater_rest_octets_struct_s_13_value{
+ si2quater_rest_octets_struct_s_14 m_si2quater_rest_octets_struct_s_14;
+ }si2quater_rest_octets_struct_s_13_value;
+}si2quater_rest_octets_struct;
+
+typedef enum {
+ CONCAT_0_mbms,
+ CONCAT_1_mbms
+}mbms_information_s_3_enum;
+
+typedef struct mbms_information_s_2{
+ mbms_information_s_3_enum mbms_information_s_3_tag;
+ mbms_session_list_ie mbms_sessions_list;
+}mbms_information_s_2;
+
+typedef struct mbms_information_s_4{
+ mbms_channel_parameters_ie mbms_channel_parameters;
+ mbms_session_list_ie mbms_sessions_list;
+}mbms_information_s_4;
+
+/* SEQUENCE mbms information */
+typedef struct mbms_information{
+ mbms_session_list_ie mbms_sessions_list;
+ ispresent mbms_information_s_1_tag;
+ union mbms_information_s_1_value{
+ mbms_information_s_2 m_mbms_information_s_2;
+ }mbms_information_s_1_value;
+ U16 numElements_m_mbms_information_s_4;
+ mbms_information_s_4 * m_mbms_information_s_4;
+}mbms_information;
+
+typedef struct p2_rest_octets_struct_s_3{
+ U8 nln;
+ U8 nln_status;
+}p2_rest_octets_struct_s_3;
+
+typedef enum {
+ P2_REST_OCTETS_STRUCT_S_7_NULL,
+ P2_REST_OCTETS_STRUCT_LHSTRING_L, // L
+ P2_REST_OCTETS_STRUCT_S_8 // H
+}p2_rest_octets_struct_s_7_enum;
+
+typedef struct p2_rest_octets_struct_s_9{
+ ispresent p2_rest_octets_struct_s_10_tag;
+ union p2_rest_octets_struct_s_10_value{
+ mbms_channel_parameters_ie mbms_notification_3;
+ }p2_rest_octets_struct_s_10_value;
+ ispresent p2_rest_octets_struct_s_11_tag;
+ union p2_rest_octets_struct_s_11_value{
+ mbms_information m_mbms_information;
+ }p2_rest_octets_struct_s_11_value;
+}p2_rest_octets_struct_s_9;
+
+typedef struct p2_rest_octets_struct_s_8{
+ ispresent p2_rest_octets_struct_s_8_tag;
+ union p2_rest_octets_struct_s_8_value{
+ p2_rest_octets_struct_s_9 m_p2_rest_octets_struct_s_9;
+ }p2_rest_octets_struct_s_8_value;
+}p2_rest_octets_struct_s_8;
+
+typedef enum {
+ P2_REST_OCTETS_STRUCT_S_12_NULL,
+ P2_REST_OCTETS_STRUCT_LHSTRING_L1, // L
+ P2_REST_OCTETS_STRUCT_S_13 // H
+}p2_rest_octets_struct_s_12_enum;
+
+typedef struct p2_rest_octets_struct_s_13{
+ U8 implicit_reject_cs;
+ U8 implicit_reject_ps;
+}p2_rest_octets_struct_s_13;
+
+/* SEQUENCE p2_rest_octets_struct */
+typedef struct p2_rest_octets_struct{
+ isLHpresent p2_rest_octets_struct_s_1_tag;
+ union p2_rest_octets_struct_s_1_value{
+ U8 cn3;
+ }p2_rest_octets_struct_s_1_value;
+ isLHpresent p2_rest_octets_struct_s_2_tag;
+ union p2_rest_octets_struct_s_2_value{
+ p2_rest_octets_struct_s_3 m_p2_rest_octets_struct_s_3;
+ }p2_rest_octets_struct_s_2_value;
+ isLHpresent p2_rest_octets_struct_s_4_tag;
+ union p2_rest_octets_struct_s_4_value{
+ U8 priority1;
+ }p2_rest_octets_struct_s_4_value;
+ isLHpresent p2_rest_octets_struct_s_5_tag;
+ union p2_rest_octets_struct_s_5_value{
+ U8 priority2;
+ }p2_rest_octets_struct_s_5_value;
+ isLHpresent p2_rest_octets_struct_s_6_tag;
+ union p2_rest_octets_struct_s_6_value{
+ U8 priority3;
+ }p2_rest_octets_struct_s_6_value;
+ isLHpresent packet_page_indication_3_tag;
+ p2_rest_octets_struct_s_7_enum p2_rest_octets_struct_s_7_tag;
+ union p2_rest_octets_struct_s_7_value{
+ p2_rest_octets_struct_s_8 m_p2_rest_octets_struct_s_8;
+ }p2_rest_octets_struct_s_7_value;
+ p2_rest_octets_struct_s_12_enum p2_rest_octets_struct_s_12_tag;
+ union p2_rest_octets_struct_s_12_value{
+ p2_rest_octets_struct_s_13 m_p2_rest_octets_struct_s_13;
+ }p2_rest_octets_struct_s_12_value;
+}p2_rest_octets_struct;
+
+/* SEQUENCE si_2quater_struct */
+typedef struct si_2quater_struct{
+ U8 l2pseudo_length;
+ U8 skip_ind;
+ U8 proto_disc;
+ U8 mesg_type;
+ si2quater_rest_octets_struct m_si2quater_rest_octets_struct;
+}si_2quater_struct;
+
+
+/* SEQUENCE paging_request_type2_struct */
+typedef struct paging_request_type2_struct{
+ U8 l2pseudo_length;
+ U8 skip_ind;
+ U8 proto_disc;
+ U8 mesg_type;
+ channels_needed_struct m_channels_needed_struct;
+ page_mode_struct m_page_mode_struct;
+ U8 tmsi_ptmsi1_struct[4];
+ U8 tmsi_ptmsi2_struct[4];
+ Bool is_m_mobile_identity3_struct_present; //truncation or optional
+ mobile_identity3_struct m_mobile_identity3_struct;
+ p2_rest_octets_struct m_p2_rest_octets_struct;
+}paging_request_type2_struct;
+
+typedef struct p1_rest_octets_struct_s_2{
+ U8 nln;
+ U8 nln_status;
+}p1_rest_octets_struct_s_2;
+
+typedef enum {
+ P1_REST_OCTETS_STRUCT_S_6_NULL,
+ P1_REST_OCTETS_STRUCT_LHSTRING_L, // L
+ P1_REST_OCTETS_STRUCT_S_7 // H
+}p1_rest_octets_struct_s_6_enum;
+
+typedef enum {
+ CELL_GLOBAL_COUNT,
+ P1_REST_OCTETS_STRUCT_S_10,
+ P1_REST_OCTETS_STRUCT_S_11,
+ P1_REST_OCTETS_STRUCT_S_12
+}p1_rest_octets_struct_s_9_enum;
+
+typedef struct p1_rest_octets_struct_s_10{
+ U8 cell_global_count;
+ U16 numElements_vstk_rand;
+ U8 * vstk_rand;
+}p1_rest_octets_struct_s_10;
+
+typedef struct p1_rest_octets_struct_s_11{
+ U32 reduced_gcr;
+ U16 numElements_vstk_rand;
+ U8 * vstk_rand;
+}p1_rest_octets_struct_s_11;
+
+typedef struct p1_rest_octets_struct_s_12{
+ U8 cell_global_count;
+ U32 reduced_gcr;
+ U16 numElements_vstk_rand;
+ U8 * vstk_rand;
+}p1_rest_octets_struct_s_12;
+
+typedef struct p1_rest_octets_struct_s_9{
+ p1_rest_octets_struct_s_9_enum p1_rest_octets_struct_s_9_tag;
+ union p1_rest_octets_struct_s_9_value{
+ U8 cell_global_count;
+ p1_rest_octets_struct_s_10 m_p1_rest_octets_struct_s_10;
+ p1_rest_octets_struct_s_11 m_p1_rest_octets_struct_s_11;
+ p1_rest_octets_struct_s_12 m_p1_rest_octets_struct_s_12;
+ }p1_rest_octets_struct_s_9_value;
+}p1_rest_octets_struct_s_9;
+
+typedef struct mbms_notification_2{
+ ispresent mbms_notification_2_tag;
+ union mbms_notification_2_value{
+ mbms_channel_parameters_ie m_mbms_channel_parameters_ie;
+ }mbms_notification_2_value;
+}mbms_notification_2;
+
+typedef struct p1_rest_octets_struct_s_14{
+ ispresent p1_rest_octets_struct_s_15_tag;
+ union p1_rest_octets_struct_s_15_value{
+ mbms_channel_parameters_ie mbms_notification_1;
+ }p1_rest_octets_struct_s_15_value;
+ ispresent p1_rest_octets_struct_s_16_tag;
+ union p1_rest_octets_struct_s_16_value{
+ mbms_notification_2 m_mbms_notification_2;
+ }p1_rest_octets_struct_s_16_value;
+ ispresent p1_rest_octets_struct_s_17_tag;
+ union p1_rest_octets_struct_s_17_value{
+ mbms_information m_mbms_information;
+ }p1_rest_octets_struct_s_17_value;
+}p1_rest_octets_struct_s_14;
+
+typedef struct p1_rest_octets_struct_s_7{
+ ispresent p1_rest_octets_struct_s_8_tag;
+ union p1_rest_octets_struct_s_8_value{
+ p1_rest_octets_struct_s_9 m_p1_rest_octets_struct_s_9;
+ }p1_rest_octets_struct_s_8_value;
+ ispresent p1_rest_octets_struct_s_13_tag;
+ union p1_rest_octets_struct_s_13_value{
+ p1_rest_octets_struct_s_14 m_p1_rest_octets_struct_s_14;
+ }p1_rest_octets_struct_s_13_value;
+}p1_rest_octets_struct_s_7;
+
+typedef enum {
+ P1_REST_OCTETS_STRUCT_S_18_NULL,
+ P1_REST_OCTETS_STRUCT_LHSTRING_L1, // L
+ P1_REST_OCTETS_STRUCT_S_19 // H
+}p1_rest_octets_struct_s_18_enum;
+
+typedef struct p1_rest_octets_struct_s_19{
+ ispresent p1_rest_octets_struct_s_19_tag;
+ union p1_rest_octets_struct_s_19_value{
+ U8 amr_config;
+ }p1_rest_octets_struct_s_19_value;
+}p1_rest_octets_struct_s_19;
+
+typedef enum {
+ P1_REST_OCTETS_STRUCT_S_20_NULL,
+ P1_REST_OCTETS_STRUCT_LHSTRING_L2, // L
+ P1_REST_OCTETS_STRUCT_S_21 // H
+}p1_rest_octets_struct_s_20_enum;
+
+typedef struct p1_rest_octets_struct_s_21{
+ U8 priority_uplink_access;
+ ispresent p1_rest_octets_struct_s_22_tag;
+ union p1_rest_octets_struct_s_22_value{
+ etws_primary_notification_struct etws_primary_notification;
+ }p1_rest_octets_struct_s_22_value;
+}p1_rest_octets_struct_s_21;
+
+typedef enum {
+ P1_REST_OCTETS_STRUCT_S_23_NULL,
+ P1_REST_OCTETS_STRUCT_LHSTRING_L3, // L
+ P1_REST_OCTETS_STRUCT_S_24 // H
+}p1_rest_octets_struct_s_23_enum;
+
+typedef struct p1_rest_octets_struct_s_24{
+ U8 implicit_reject_cs;
+ U8 implicit_reject_ps;
+}p1_rest_octets_struct_s_24;
+
+/* SEQUENCE p1_rest_octets_struct */
+typedef struct p1_rest_octets_struct{
+ isLHpresent p1_rest_octets_struct_s_1_tag;
+ union p1_rest_octets_struct_s_1_value{
+ p1_rest_octets_struct_s_2 m_p1_rest_octets_struct_s_2;
+ }p1_rest_octets_struct_s_1_value;
+ isLHpresent p1_rest_octets_struct_s_3_tag;
+ union p1_rest_octets_struct_s_3_value{
+ U8 priority1;
+ }p1_rest_octets_struct_s_3_value;
+ isLHpresent p1_rest_octets_struct_s_4_tag;
+ union p1_rest_octets_struct_s_4_value{
+ U8 priority2;
+ }p1_rest_octets_struct_s_4_value;
+ isLHpresent p1_rest_octets_struct_s_5_tag;
+ union p1_rest_octets_struct_s_5_value{
+ group_call_information m_group_call_information;
+ }p1_rest_octets_struct_s_5_value;
+ isLHpresent packet_page_indication_1_tag;
+ isLHpresent packet_page_indication_2_tag;
+ p1_rest_octets_struct_s_6_enum p1_rest_octets_struct_s_6_tag;
+ union p1_rest_octets_struct_s_6_value{
+ p1_rest_octets_struct_s_7 m_p1_rest_octets_struct_s_7;
+ }p1_rest_octets_struct_s_6_value;
+ p1_rest_octets_struct_s_18_enum p1_rest_octets_struct_s_18_tag;
+ union p1_rest_octets_struct_s_18_value{
+ p1_rest_octets_struct_s_19 m_p1_rest_octets_struct_s_19;
+ }p1_rest_octets_struct_s_18_value;
+ p1_rest_octets_struct_s_20_enum p1_rest_octets_struct_s_20_tag;
+ union p1_rest_octets_struct_s_20_value{
+ p1_rest_octets_struct_s_21 m_p1_rest_octets_struct_s_21;
+ }p1_rest_octets_struct_s_20_value;
+ p1_rest_octets_struct_s_23_enum p1_rest_octets_struct_s_23_tag;
+ union p1_rest_octets_struct_s_23_value{
+ p1_rest_octets_struct_s_24 m_p1_rest_octets_struct_s_24;
+ }p1_rest_octets_struct_s_23_value;
+}p1_rest_octets_struct;
+
+/* SEQUENCE paging_request_type1_struct */
+typedef struct paging_request_type1_struct{
+ U8 l2pseudo_length;
+ U8 skip_ind;
+ U8 proto_disc;
+ U8 mesg_type;
+ channels_needed_struct m_channels_needed_struct;
+ page_mode_struct m_page_mode_struct;
+ mobile_identity1_struct m_mobile_identity1_struct;
+ Bool is_m_mobile_identity2_struct_present; //truncation or optional
+ mobile_identity2_struct m_mobile_identity2_struct;
+ p1_rest_octets_struct m_p1_rest_octets_struct;
+}paging_request_type1_struct;
+
+/* SEQUENCE utran fdd description struct si2ter */
+typedef struct utran_fdd_description_struct_si2ter{
+ U16 fdd_arfcn;
+ ispresent utran_fdd_description_struct_si2ter_s_1_tag;
+ union utran_fdd_description_struct_si2ter_s_1_value{
+ U8 bandwidth_fdd;
+ }utran_fdd_description_struct_si2ter_s_1_value;
+}utran_fdd_description_struct_si2ter;
+
+/* SEQUENCE utran tdd description struct si2ter */
+typedef struct utran_tdd_description_struct_si2ter{
+ U16 tdd_arfcn;
+ ispresent utran_tdd_description_struct_si2ter_s_1_tag;
+ union utran_tdd_description_struct_si2ter_s_1_value{
+ U8 bandwidth_tdd;
+ }utran_tdd_description_struct_si2ter_s_1_value;
+}utran_tdd_description_struct_si2ter;
+
+typedef struct p_3_g_measurement_parameters_description_struct_si2ter_s_2{
+ U8 fdd_qoffset;
+ U8 fdd_qmin;
+}p_3_g_measurement_parameters_description_struct_si2ter_s_2;
+
+/* SEQUENCE 3 g measurement parameters description struct si2ter */
+typedef struct p_3_g_measurement_parameters_description_struct_si2ter{
+ U8 qsearch_i;
+ ispresent p_3_g_measurement_parameters_description_struct_si2ter_s_1_tag;
+ union p_3_g_measurement_parameters_description_struct_si2ter_s_1_value{
+ p_3_g_measurement_parameters_description_struct_si2ter_s_2 m_p_3_g_measurement_parameters_description_struct_si2ter_s_2;
+ }p_3_g_measurement_parameters_description_struct_si2ter_s_1_value;
+ ispresent p_3_g_measurement_parameters_description_struct_si2ter_s_3_tag;
+ union p_3_g_measurement_parameters_description_struct_si2ter_s_3_value{
+ U8 tdd_qoffset;
+ }p_3_g_measurement_parameters_description_struct_si2ter_s_3_value;
+}p_3_g_measurement_parameters_description_struct_si2ter;
+
+typedef enum {
+ SI2TER_REST_OCTETS_STRUCT_S_6_NULL,
+ SI2TER_REST_OCTETS_STRUCT_LHSTRING_L, // L
+ SI2TER_REST_OCTETS_STRUCT_S_7 // H
+}si2ter_rest_octets_struct_s_6_enum;
+
+typedef struct si2ter_rest_octets_struct_s_7{
+ ispresent si2ter_rest_octets_struct_s_7_tag;
+ union si2ter_rest_octets_struct_s_7_value{
+ p_3_g_additional_measurement_parameters_description_struct p_3_g_additional_measurement_parameters_description;
+ }si2ter_rest_octets_struct_s_7_value;
+}si2ter_rest_octets_struct_s_7;
+
+typedef struct si2ter_rest_octets_struct_s_2{
+ U8 si2ter_mp_change_mark;
+ U8 si2ter_3g_change_mark;
+ U8 si2ter_index;
+ U8 si2ter_count;
+ ispresent si2ter_rest_octets_struct_s_3_tag;
+ union si2ter_rest_octets_struct_s_3_value{
+ utran_fdd_description_struct_si2ter utran_fdd_description;
+ }si2ter_rest_octets_struct_s_3_value;
+ ispresent si2ter_rest_octets_struct_s_4_tag;
+ union si2ter_rest_octets_struct_s_4_value{
+ utran_tdd_description_struct_si2ter utran_tdd_description;
+ }si2ter_rest_octets_struct_s_4_value;
+ ispresent si2ter_rest_octets_struct_s_5_tag;
+ union si2ter_rest_octets_struct_s_5_value{
+ p_3_g_measurement_parameters_description_struct_si2ter p_3_g_measurement_parameters_description;
+ }si2ter_rest_octets_struct_s_5_value;
+ si2ter_rest_octets_struct_s_6_enum si2ter_rest_octets_struct_s_6_tag;
+ union si2ter_rest_octets_struct_s_6_value{
+ si2ter_rest_octets_struct_s_7 m_si2ter_rest_octets_struct_s_7;
+ }si2ter_rest_octets_struct_s_6_value;
+}si2ter_rest_octets_struct_s_2;
+
+/* SEQUENCE si2ter rest octets struct */
+typedef struct si2ter_rest_octets_struct{
+ isLHpresent si2ter_rest_octets_struct_s_1_tag;
+ union si2ter_rest_octets_struct_s_1_value{
+ si2ter_rest_octets_struct_s_2 m_si2ter_rest_octets_struct_s_2;
+ }si2ter_rest_octets_struct_s_1_value;
+}si2ter_rest_octets_struct;
+
+/* SEQUENCE si_2ter_struct */
+typedef struct si_2ter_struct{
+ U8 l2pseudo_length;
+ U8 skip_ind;
+ U8 proto_disc;
+ U8 mesg_type;
+ si2ter_rest_octets_struct m_si2ter_rest_octets_struct;
+}si_2ter_struct;
+
+//Encode Function Declaration
+
+DLLEXPORT extern U32 enhanced_measurement_report_struct_pack(U8 *frame, void *pmtk_d, U32 bit_offset, U32 frame_size, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 assignment_info_struct_pack(U8 *frame, void *pmtk_d, U32 bit_offset, U32 frame_size, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 enhanced_measurement_report_struct_pack(U8 *frame, void *pmtk_d, U32 bit_offset, U32 frame_size, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 extended_measurement_report_struct_pack(U8 *frame, void *pmtk_d, U32 bit_offset, U32 frame_size, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 gprs_suspension_request_struct_pack(U8 *frame, void *pmtk_d, U32 bit_offset, U32 frame_size, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 handover_failure_struct_pack(U8 *frame, void *pmtk_d, U32 bit_offset, U32 frame_size, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 assignment_failure_struct_pack(U8 *frame, void *pmtk_d, U32 bit_offset, U32 frame_size, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 assignment_complete_struct_pack(U8 *frame, void *pmtk_d, U32 bit_offset, U32 frame_size, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 uplink_assignment_2_struct_pack(U8 *frame, void *pmtk_d, U32 bit_offset, U32 frame_size, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 btti_multiple_downlink_assignment_struct_pack(U8 *frame, void *pmtk_d, U32 bit_offset, U32 frame_size, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 rtti_multiple_downlink_assignment_sc_struct_pack(U8 *frame, void *pmtk_d, U32 bit_offset, U32 frame_size, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 rtti_multiple_downlink_assignment_dc_struct_pack(U8 *frame, void *pmtk_d, U32 bit_offset, U32 frame_size, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 multiple_uplink_assignment_2_struct_pack(U8 *frame, void *pmtk_d, U32 bit_offset, U32 frame_size, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 pdch_pairs_description_ie_for_mttr_pack(U8 *frame, void *pmtk_d, U32 bit_offset, U32 frame_size, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 packet_control_acknowledgement_message_content_pack(U8 *frame, void *pmtk_d, U32 bit_offset, U32 frame_size, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 packet_control_acknowledgement_11_bit_message_pack(U8 *frame, void *pmtk_d, U32 bit_offset, U32 frame_size, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 packet_control_acknowledgement_8_bit_message_pack(U8 *frame, void *pmtk_d, U32 bit_offset, U32 frame_size, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 packet_cell_change_failure_message_content_pack(U8 *frame, void *pmtk_d, U32 bit_offset, U32 frame_size, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 packet_cell_change_notification_message_content_pack(U8 *frame, void *pmtk_d, U32 bit_offset, U32 frame_size, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 packet_downlink_ack_nack_message_content_pack(U8 *frame, void *pmtk_d, U32 bit_offset, U32 frame_size, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 packet_uplink_dummy_control_block_message_content_pack(U8 *frame, void *pmtk_d, U32 bit_offset, U32 frame_size, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 packet_measurement_report_message_content_pack(U8 *frame, void *pmtk_d, U32 bit_offset, U32 frame_size, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 packet_mobile_tbf_status_message_content_pack(U8 *frame, void *pmtk_d, U32 bit_offset, U32 frame_size, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 packet_psi_status_message_content_pack(U8 *frame, void *pmtk_d, U32 bit_offset, U32 frame_size, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 packet_si_status_message_content_pack(U8 *frame, void *pmtk_d, U32 bit_offset, U32 frame_size, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 packet_pause_message_content_pack(U8 *frame, void *pmtk_d, U32 bit_offset, U32 frame_size, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 additional_ms_radio_access_capabilities_message_content_pack(U8 *frame, void *pmtk_d, U32 bit_offset, U32 frame_size, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 ms_network_capability_value_part_pack(U8 *frame, void *pmtk_d, U32 bit_offset, U32 frame_size, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 p_3_g_neighbour_cell_description_struct_mi_pack(U8 *frame, void *pmtk_d, U32 bit_offset, U32 frame_size, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 handover_complete_mesg_struct_pack(U8 *frame, void *pmtk_d, U32 bit_offset, U32 frame_size, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 paging_response_pack(U8 *frame, void *pmtk_d, U32 bit_offset, U32 frame_size, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 csn_paging_request_type1_pack(U8 *frame, void *pmtk_d, U32 bit_offset, U32 frame_size, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 packet_enhanced_measurement_report_message_content_pack(U8 *frame, void *pmtk_d, U32 bit_offset, U32 frame_size, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 packet_resource_request_message_content_pack(U8 *frame, void *pmtk_d, U32 bit_offset, U32 frame_size, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 measurement_information_struct_pack(U8 *frame, void *pmtk_d, U32 bit_offset, U32 frame_size, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 measurement_report_struct_pack(U8 *frame, void *pmtk_d, U32 bit_offset, U32 frame_size, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 packet_timeslot_reconfigure_message_content_pack(U8 *frame, void *pmtk_d, U32 bit_offset, U32 frame_size, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 packet_uplink_ack_nack_message_content_pack(U8 *frame, void *pmtk_d, U32 bit_offset, U32 frame_size, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 packet_tbf_release_message_content_pack(U8 *frame, void *pmtk_d, U32 bit_offset, U32 frame_size, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 psi16_message_content_pack(U8 *frame, void *pmtk_d, U32 bit_offset, U32 frame_size, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 psi15_message_content_pack(U8 *frame, void *pmtk_d, U32 bit_offset, U32 frame_size, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 psi14_message_content_pack(U8 *frame, void *pmtk_d, U32 bit_offset, U32 frame_size, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 psi13_message_content_pack(U8 *frame, void *pmtk_d, U32 bit_offset, U32 frame_size, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 psi8_message_content_pack(U8 *frame, void *pmtk_d, U32 bit_offset, U32 frame_size, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 psi7_message_content_pack(U8 *frame, void *pmtk_d, U32 bit_offset, U32 frame_size, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 psi6_message_content_pack(U8 *frame, void *pmtk_d, U32 bit_offset, U32 frame_size, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 psi4_message_content_pack(U8 *frame, void *pmtk_d, U32 bit_offset, U32 frame_size, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 psi3_quater_message_content_pack(U8 *frame, void *pmtk_d, U32 bit_offset, U32 frame_size, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 psi3_ter_message_content_pack(U8 *frame, void *pmtk_d, U32 bit_offset, U32 frame_size, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 psi3_bis_message_content_pack(U8 *frame, void *pmtk_d, U32 bit_offset, U32 frame_size, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 psi3_message_content_pack(U8 *frame, void *pmtk_d, U32 bit_offset, U32 frame_size, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 psi1_message_content_pack(U8 *frame, void *pmtk_d, U32 bit_offset, U32 frame_size, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 packet_serving_cell_data_message_content_pack(U8 *frame, void *pmtk_d, U32 bit_offset, U32 frame_size, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 packet_queueing_notification_message_content_pack(U8 *frame, void *pmtk_d, U32 bit_offset, U32 frame_size, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 packet_prach_parameters_message_content_pack(U8 *frame, void *pmtk_d, U32 bit_offset, U32 frame_size, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 packet_power_control_timing_advance_message_content_pack(U8 *frame, void *pmtk_d, U32 bit_offset, U32 frame_size, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 packet_polling_request_message_content_pack(U8 *frame, void *pmtk_d, U32 bit_offset, U32 frame_size, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 packet_pdch_release_message_content_pack(U8 *frame, void *pmtk_d, U32 bit_offset, U32 frame_size, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 packet_paging_request_message_content_pack(U8 *frame, void *pmtk_d, U32 bit_offset, U32 frame_size, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 packet_neighbour_cell_data_message_content_pack(U8 *frame, void *pmtk_d, U32 bit_offset, U32 frame_size, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 packet_downlink_dummy_control_block_message_content_pack(U8 *frame, void *pmtk_d, U32 bit_offset, U32 frame_size, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 packet_downlink_assignment_message_content_pack(U8 *frame, void *pmtk_d, U32 bit_offset, U32 frame_size, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 packet_cell_change_continue_message_content_pack(U8 *frame, void *pmtk_d, U32 bit_offset, U32 frame_size, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 packet_access_reject_message_content_pack(U8 *frame, void *pmtk_d, U32 bit_offset, U32 frame_size, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 packet_uplink_assignment_message_content_pack(U8 *frame, void *pmtk_d, U32 bit_offset, U32 frame_size, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 multiple_tbf_downlink_assignment_message_content_pack(U8 *frame, void *pmtk_d, U32 bit_offset, U32 frame_size, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 multiple_tbf_uplink_assignment_message_content_pack(U8 *frame, void *pmtk_d, U32 bit_offset, U32 frame_size, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 ps_handover_command_message_content_pack(U8 *frame, void *pmtk_d, U32 bit_offset, U32 frame_size, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 multiple_tbf_timeslot_reconfigure_message_content_pack(U8 *frame, void *pmtk_d, U32 bit_offset, U32 frame_size, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 ps_handover_radio_resources_2_ie_pack(U8 *frame, void *pmtk_d, U32 bit_offset, U32 frame_size, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 egprs_packet_downlink_ack_nack_message_content_pack(U8 *frame, void *pmtk_d, U32 bit_offset, U32 frame_size, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 ms_ra_capability_value_part_struct_pack(U8 *frame, void *pmtk_d, U32 bit_offset, U32 frame_size, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 psi5_message_content_pack(U8 *frame, void *pmtk_d, U32 bit_offset, U32 frame_size, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 psi2_message_content_pack(U8 *frame, void *pmtk_d, U32 bit_offset, U32 frame_size, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 packet_measurement_order_message_content_pack(U8 *frame, void *pmtk_d, U32 bit_offset, U32 frame_size, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 packet_cell_change_order_message_content_pack(U8 *frame, void *pmtk_d, U32 bit_offset, U32 frame_size, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 channel_release_struct_pack(U8 *frame, void *pmtk_d, U32 bit_offset, U32 frame_size, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 rr_peer_classmark_change_struct_pack(U8 *frame, void *pmtk_d, U32 bit_offset, U32 frame_size, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 paging_request_type3_struct_pack(U8 *frame, void *pmtk_d, U32 bit_offset, U32 frame_size, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 paging_request_type2_struct_pack(U8 *frame, void *pmtk_d, U32 bit_offset, U32 frame_size, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 paging_request_type1_struct_pack(U8 *frame, void *pmtk_d, U32 bit_offset, U32 frame_size, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 si_2ter_struct_pack(U8 *frame, void *pmtk_d, U32 bit_offset, U32 frame_size, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 si2_quater_struct_pack(U8 *frame, void *pmtk_d, U32 bit_offset, U32 frame_size, CsnContext *pParentContext );
+
+//Decode Function Declaration
+
+DLLEXPORT extern U32 dynamic_allocation_2_struct_unpack( void *pmtk_d, U8 *frame, U32 bit_offset, U32 frame_size, void *err_hndl, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 assignment_info_struct_unpack( void *pmtk_d, U8 *frame, U32 bit_offset, U32 frame_size, void *err_hndl, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 enhanced_measurement_report_struct_unpack( void *pmtk_d, U8 *frame, U32 bit_offset, U32 frame_size, void *err_hndl, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 extended_measurement_report_struct_unpack( void *pmtk_d, U8 *frame, U32 bit_offset, U32 frame_size, void *err_hndl, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 gprs_suspension_request_struct_unpack( void *pmtk_d, U8 *frame, U32 bit_offset, U32 frame_size, void *err_hndl, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 handover_failure_struct_unpack( void *pmtk_d, U8 *frame, U32 bit_offset, U32 frame_size, void *err_hndl, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 assignment_failure_struct_unpack( void *pmtk_d, U8 *frame, U32 bit_offset, U32 frame_size, void *err_hndl, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 assignment_complete_struct_unpack( void *pmtk_d, U8 *frame, U32 bit_offset, U32 frame_size, void *err_hndl, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 uplink_assignment_2_struct_unpack( void *pmtk_d, U8 *frame, U32 bit_offset, U32 frame_size, void *err_hndl, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 btti_multiple_downlink_assignment_struct_unpack( void *pmtk_d, U8 *frame, U32 bit_offset, U32 frame_size, void *err_hndl, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 rtti_multiple_downlink_assignment_sc_struct_unpack( void *pmtk_d, U8 *frame, U32 bit_offset, U32 frame_size, void *err_hndl, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 rtti_multiple_downlink_assignment_dc_struct_unpack( void *pmtk_d, U8 *frame, U32 bit_offset, U32 frame_size, void *err_hndl, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 multiple_uplink_assignment_2_struct_unpack( void *pmtk_d, U8 *frame, U32 bit_offset, U32 frame_size, void *err_hndl, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 pdch_pairs_description_ie_for_mttr_unpack( void *pmtk_d, U8 *frame, U32 bit_offset, U32 frame_size, void *err_hndl, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 packet_control_acknowledgement_message_content_unpack( void *pmtk_d, U8 *frame, U32 bit_offset, U32 frame_size, void *err_hndl, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 packet_control_acknowledgement_11_bit_message_unpack( void *pmtk_d, U8 *frame, U32 bit_offset, U32 frame_size, void *err_hndl, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 packet_control_acknowledgement_8_bit_message_unpack( void *pmtk_d, U8 *frame, U32 bit_offset, U32 frame_size, void *err_hndl, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 packet_cell_change_failure_message_content_unpack( void *pmtk_d, U8 *frame, U32 bit_offset, U32 frame_size, void *err_hndl, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 packet_cell_change_notification_message_content_unpack( void *pmtk_d, U8 *frame, U32 bit_offset, U32 frame_size, void *err_hndl, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 packet_downlink_ack_nack_message_content_unpack( void *pmtk_d, U8 *frame, U32 bit_offset, U32 frame_size, void *err_hndl, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 packet_uplink_dummy_control_block_message_content_unpack( void *pmtk_d, U8 *frame, U32 bit_offset, U32 frame_size, void *err_hndl, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 packet_measurement_report_message_content_unpack( void *pmtk_d, U8 *frame, U32 bit_offset, U32 frame_size, void *err_hndl, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 packet_mobile_tbf_status_message_content_unpack( void *pmtk_d, U8 *frame, U32 bit_offset, U32 frame_size, void *err_hndl, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 packet_psi_status_message_content_unpack( void *pmtk_d, U8 *frame, U32 bit_offset, U32 frame_size, void *err_hndl, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 packet_si_status_message_content_unpack( void *pmtk_d, U8 *frame, U32 bit_offset, U32 frame_size, void *err_hndl, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 packet_pause_message_content_unpack( void *pmtk_d, U8 *frame, U32 bit_offset, U32 frame_size, void *err_hndl, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 additional_ms_radio_access_capabilities_message_content_unpack( void *pmtk_d, U8 *frame, U32 bit_offset, U32 frame_size, void *err_hndl, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 ms_network_capability_value_part_unpack( void *pmtk_d, U8 *frame, U32 bit_offset, U32 frame_size, void *err_hndl, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 p_3_g_neighbour_cell_description_struct_mi_unpack( void *pmtk_d, U8 *frame, U32 bit_offset, U32 frame_size, void *err_hndl, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 handover_complete_mesg_struct_unpack( void *pmtk_d, U8 *frame, U32 bit_offset, U32 frame_size, void *err_hndl, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 paging_response_unpack( void *pmtk_d, U8 *frame, U32 bit_offset, U32 frame_size, void *err_hndl, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 csn_paging_request_type1_unpack( void *pmtk_d, U8 *frame, U32 bit_offset, U32 frame_size, void *err_hndl, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 packet_enhanced_measurement_report_message_content_unpack( void *pmtk_d, U8 *frame, U32 bit_offset, U32 frame_size, void *err_hndl, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 packet_resource_request_message_content_unpack( void *pmtk_d, U8 *frame, U32 bit_offset, U32 frame_size, void *err_hndl, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 measurement_information_struct_unpack( void *pmtk_d, U8 *frame, U32 bit_offset, U32 frame_size, void *err_hndl, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 measurement_report_struct_unpack( void *pmtk_d, U8 *frame, U32 bit_offset, U32 frame_size, void *err_hndl, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 packet_timeslot_reconfigure_message_content_unpack( void *pmtk_d, U8 *frame, U32 bit_offset, U32 frame_size, void *err_hndl, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 packet_uplink_ack_nack_message_content_unpack( void *pmtk_d, U8 *frame, U32 bit_offset, U32 frame_size, void *err_hndl, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 packet_tbf_release_message_content_unpack( void *pmtk_d, U8 *frame, U32 bit_offset, U32 frame_size, void *err_hndl, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 psi16_message_content_unpack( void *pmtk_d, U8 *frame, U32 bit_offset, U32 frame_size, void *err_hndl, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 psi15_message_content_unpack( void *pmtk_d, U8 *frame, U32 bit_offset, U32 frame_size, void *err_hndl, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 psi14_message_content_unpack( void *pmtk_d, U8 *frame, U32 bit_offset, U32 frame_size, void *err_hndl, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 psi13_message_content_unpack( void *pmtk_d, U8 *frame, U32 bit_offset, U32 frame_size, void *err_hndl, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 psi8_message_content_unpack( void *pmtk_d, U8 *frame, U32 bit_offset, U32 frame_size, void *err_hndl, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 psi7_message_content_unpack( void *pmtk_d, U8 *frame, U32 bit_offset, U32 frame_size, void *err_hndl, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 psi6_message_content_unpack( void *pmtk_d, U8 *frame, U32 bit_offset, U32 frame_size, void *err_hndl, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 psi4_message_content_unpack( void *pmtk_d, U8 *frame, U32 bit_offset, U32 frame_size, void *err_hndl, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 psi3_quater_message_content_unpack( void *pmtk_d, U8 *frame, U32 bit_offset, U32 frame_size, void *err_hndl, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 psi3_ter_message_content_unpack( void *pmtk_d, U8 *frame, U32 bit_offset, U32 frame_size, void *err_hndl, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 psi3_bis_message_content_unpack( void *pmtk_d, U8 *frame, U32 bit_offset, U32 frame_size, void *err_hndl, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 psi3_message_content_unpack( void *pmtk_d, U8 *frame, U32 bit_offset, U32 frame_size, void *err_hndl, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 psi1_message_content_unpack( void *pmtk_d, U8 *frame, U32 bit_offset, U32 frame_size, void *err_hndl, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 packet_serving_cell_data_message_content_unpack( void *pmtk_d, U8 *frame, U32 bit_offset, U32 frame_size, void *err_hndl, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 packet_queueing_notification_message_content_unpack( void *pmtk_d, U8 *frame, U32 bit_offset, U32 frame_size, void *err_hndl, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 packet_prach_parameters_message_content_unpack( void *pmtk_d, U8 *frame, U32 bit_offset, U32 frame_size, void *err_hndl, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 packet_power_control_timing_advance_message_content_unpack( void *pmtk_d, U8 *frame, U32 bit_offset, U32 frame_size, void *err_hndl, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 packet_polling_request_message_content_unpack( void *pmtk_d, U8 *frame, U32 bit_offset, U32 frame_size, void *err_hndl, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 packet_pdch_release_message_content_unpack( void *pmtk_d, U8 *frame, U32 bit_offset, U32 frame_size, void *err_hndl, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 packet_paging_request_message_content_unpack( void *pmtk_d, U8 *frame, U32 bit_offset, U32 frame_size, void *err_hndl, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 packet_neighbour_cell_data_message_content_unpack( void *pmtk_d, U8 *frame, U32 bit_offset, U32 frame_size, void *err_hndl, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 packet_downlink_dummy_control_block_message_content_unpack( void *pmtk_d, U8 *frame, U32 bit_offset, U32 frame_size, void *err_hndl, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 packet_downlink_assignment_message_content_unpack( void *pmtk_d, U8 *frame, U32 bit_offset, U32 frame_size, void *err_hndl, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 packet_cell_change_continue_message_content_unpack( void *pmtk_d, U8 *frame, U32 bit_offset, U32 frame_size, void *err_hndl, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 packet_access_reject_message_content_unpack( void *pmtk_d, U8 *frame, U32 bit_offset, U32 frame_size, void *err_hndl, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 packet_uplink_assignment_message_content_unpack( void *pmtk_d, U8 *frame, U32 bit_offset, U32 frame_size, void *err_hndl, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 multiple_tbf_downlink_assignment_message_content_unpack( void *pmtk_d, U8 *frame, U32 bit_offset, U32 frame_size, void *err_hndl, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 multiple_tbf_uplink_assignment_message_content_unpack( void *pmtk_d, U8 *frame, U32 bit_offset, U32 frame_size, void *err_hndl, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 ps_handover_command_message_content_unpack( void *pmtk_d, U8 *frame, U32 bit_offset, U32 frame_size, void *err_hndl, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 multiple_tbf_timeslot_reconfigure_message_content_unpack( void *pmtk_d, U8 *frame, U32 bit_offset, U32 frame_size, void *err_hndl, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 ps_handover_radio_resources_2_ie_unpack( void *pmtk_d, U8 *frame, U32 bit_offset, U32 frame_size, void *err_hndl, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 egprs_packet_downlink_ack_nack_message_content_unpack( void *pmtk_d, U8 *frame, U32 bit_offset, U32 frame_size, void *err_hndl, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 ms_ra_capability_value_part_struct_unpack( void *pmtk_d, U8 *frame, U32 bit_offset, U32 frame_size, void *err_hndl, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 psi5_message_content_unpack( void *pmtk_d, U8 *frame, U32 bit_offset, U32 frame_size, void *err_hndl, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 psi2_message_content_unpack( void *pmtk_d, U8 *frame, U32 bit_offset, U32 frame_size, void *err_hndl, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 packet_measurement_order_message_content_unpack( void *pmtk_d, U8 *frame, U32 bit_offset, U32 frame_size, void *err_hndl, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 packet_cell_change_order_message_content_unpack( void *pmtk_d, U8 *frame, U32 bit_offset, U32 frame_size, void *err_hndl, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 channel_release_struct_unpack( void *pmtk_d, U8 *frame, U32 bit_offset, U32 frame_size, void *err_hndl, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 rr_peer_classmark_change_struct_unpack( void *pmtk_d, U8 *frame, U32 bit_offset, U32 frame_size, void *err_hndl, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 paging_request_type3_struct_unpack( void *pmtk_d, U8 *frame, U32 bit_offset, U32 frame_size, void *err_hndl, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 paging_request_type2_struct_unpack( void *pmtk_d, U8 *frame, U32 bit_offset, U32 frame_size, void *err_hndl, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 paging_request_type1_struct_unpack( void *pmtk_d, U8 *frame, U32 bit_offset, U32 frame_size, void *err_hndl, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 si_2ter_struct_unpack( void *pmtk_d, U8 *frame, U32 bit_offset, U32 frame_size, void *err_hndl, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 si2_quater_struct_unpack( void *pmtk_d, U8 *frame, U32 bit_offset, U32 frame_size, void *err_hndl, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 rr_em_cell_select_para_info_struct_unpack( void *pmtk_d, U8 *frame, U32 bit_offset, U32 frame_size, void *err_hndl, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 rr_em_channel_descr_info_struct_unpack( void *pmtk_d, U8 *frame, U32 bit_offset, U32 frame_size, void *err_hndl, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 rr_em_ctrl_channel_descr_info_struct_unpack( void *pmtk_d, U8 *frame, U32 bit_offset, U32 frame_size, void *err_hndl, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 rr_em_rach_ctrl_para_info_struct_unpack( void *pmtk_d, U8 *frame, U32 bit_offset, U32 frame_size, void *err_hndl, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 rr_em_lai_info_struct_unpack( void *pmtk_d, U8 *frame, U32 bit_offset, U32 frame_size, void *err_hndl, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 rr_em_radio_link_counter_info_struct_unpack( void *pmtk_d, U8 *frame, U32 bit_offset, U32 frame_size, void *err_hndl, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 rr_em_ca_list_info_struct_unpack( void *pmtk_d, U8 *frame, U32 bit_offset, U32 frame_size, void *err_hndl, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 rr_em_control_msg_info_struct_unpack( void *pmtk_d, U8 *frame, U32 bit_offset, U32 frame_size, void *err_hndl, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 rr_em_si2q_info_struct_unpack( void *pmtk_d, U8 *frame, U32 bit_offset, U32 frame_size, void *err_hndl, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 rr_em_mi_info_struct_unpack( void *pmtk_d, U8 *frame, U32 bit_offset, U32 frame_size, void *err_hndl, CsnContext *pParentContext );
+
+DLLEXPORT extern U32 rr_em_measurement_report_info_struct_unpack( void *pmtk_d, U8 *frame, U32 bit_offset, U32 frame_size, void *err_hndl, CsnContext *pParentContext );
+
+#endif /* _MTK_CSN_H */
+
diff --git a/mcu/protocol/interface/asn/rr/include/mtkcsn_global.h b/mcu/protocol/interface/asn/rr/include/mtkcsn_global.h
new file mode 100644
index 0000000..97c48ee
--- /dev/null
+++ b/mcu/protocol/interface/asn/rr/include/mtkcsn_global.h
@@ -0,0 +1,132 @@
+/*******************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2007
+*
+* BY OPENING THIS FILE, BUYER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND AGREES
+* THAT THE SOFTWARE/FIRMWARE AND ITS DOCUMENTATIONS ("MEDIATEK SOFTWARE")
+* RECEIVED FROM MEDIATEK AND/OR ITS REPRESENTATIVES ARE PROVIDED TO BUYER ON
+* AN "AS-IS" BASIS ONLY. MEDIATEK EXPRESSLY DISCLAIMS ANY AND ALL WARRANTIES,
+* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF
+* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NONINFRINGEMENT.
+* NEITHER DOES MEDIATEK PROVIDE ANY WARRANTY WHATSOEVER WITH RESPECT TO THE
+* SOFTWARE OF ANY THIRD PARTY WHICH MAY BE USED BY, INCORPORATED IN, OR
+* SUPPLIED WITH THE MEDIATEK SOFTWARE, AND BUYER AGREES TO LOOK ONLY TO SUCH
+* THIRD PARTY FOR ANY WARRANTY CLAIM RELATING THERETO. MEDIATEK SHALL ALSO
+* NOT BE RESPONSIBLE FOR ANY MEDIATEK SOFTWARE RELEASES MADE TO BUYER'S
+* SPECIFICATION OR TO CONFORM TO A PARTICULAR STANDARD OR OPEN FORUM.
+*
+* BUYER'S SOLE AND EXCLUSIVE REME DY AND MEDIATEK'S ENTIRE AND CUMULATIVE
+* LIABILITY WITH RESPECT TO THE MEDIATEK SOFTWARE RELEASED HEREUNDER WILL BE,
+* AT MEDIATEK'S OPTION, TO REVISE OR REPLACE THE MEDIATEK SOFTWARE AT ISSUE,
+* OR REFUND ANY SOFTWARE LICENSE FEES OR SERVICE CHARGE PAID BY BUYER TO
+* MEDIATEK FOR SUCH MEDIATEK SOFTWARE AT ISSUE.
+*
+* THE TRANSACTION CONTEMPLATED HEREUNDER SHALL BE CONSTRUED IN ACCORDANCE
+* WITH THE LAWS OF THE STATE OF CALIFORNIA, USA, EXCLUDING ITS CONFLICT OF
+* LAWS PRINCIPLES. ANY DISPUTES, CONTROVERSIES OR CLAIMS ARISING THEREOF AND
+* RELATED THERETO SHALL BE SETTLED BY ARBITRATION IN SAN FRANCISCO, CA, UNDER
+* THE RULES OF THE INTERNATIONAL CHAMBER OF COMMERCE (ICC).
+*
+*****************************************************************************/
+/*******************************************************************************
+* Filename:
+* ---------
+* mtkcsn_global.h : header file
+*
+* Project:
+* --------
+* csn.1 common ------ CSN.1 common file
+*
+* Description:
+* ------------
+* This file defines the basic data type
+* If user want to modify the file, please discuss with the owner
+*
+* Author:
+* -------
+ * -------
+*
+*******************************************************************************/
+#if !defined _CSN_GLOBAL_H_
+#define _CSN_GLOBAL_H_
+
+/*Evelyn: Remove redundant header and file */
+#include "kal_general_types.h"
+#include "as_common.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+
+//#define _CSN_TEST_ //if no need any more, comment this marco
+//#define MCD_DLL_EXPORT
+
+
+#ifdef _CSN_TEST_
+
+#include "csn_macro_define.h"
+
+#define ASSERT(x) assert(x)
+
+typedef unsigned char U8;
+typedef unsigned short U16;
+typedef unsigned int U32;
+typedef U8 Bool;
+
+
+typedef char S8;
+typedef short S16;
+typedef int S32;
+
+
+#ifndef TRUE
+#define TRUE 1
+#endif
+#ifndef FALSE
+#define FALSE 0
+#endif
+
+#ifndef NULL
+#define NULL (void *)0
+#endif
+
+
+#else
+
+#include "rr_common_headers.h"
+
+typedef kal_uint8 U8;
+typedef kal_uint16 U16;
+typedef kal_uint32 U32;
+#ifndef Bool
+typedef kal_uint8 Bool;
+#endif
+
+
+typedef kal_int8 S8;
+typedef kal_int16 S16;
+typedef kal_int32 S32;
+
+
+#ifndef TRUE
+#define TRUE KAL_TRUE
+#endif
+#ifndef FALSE
+#define FALSE KAL_FALSE
+#endif
+
+#ifndef NULL
+#define NULL (void *)0
+#endif
+
+#endif
+
+#ifdef __cplusplus
+}
+#endif
+#endif //_CSN_GLOBAL_H_
diff --git a/mcu/protocol/interface/asn/rr/include/nstd_alloc_bitmap.h b/mcu/protocol/interface/asn/rr/include/nstd_alloc_bitmap.h
new file mode 100644
index 0000000..74c37b5
--- /dev/null
+++ b/mcu/protocol/interface/asn/rr/include/nstd_alloc_bitmap.h
@@ -0,0 +1,120 @@
+/*****************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2005
+*
+* BY OPENING THIS FILE, BUYER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND AGREES
+* THAT THE SOFTWARE/FIRMWARE AND ITS DOCUMENTATIONS ("MEDIATEK SOFTWARE")
+* RECEIVED FROM MEDIATEK AND/OR ITS REPRESENTATIVES ARE PROVIDED TO BUYER ON
+* AN "AS-IS" BASIS ONLY. MEDIATEK EXPRESSLY DISCLAIMS ANY AND ALL WARRANTIES,
+* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF
+* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NONINFRINGEMENT.
+* NEITHER DOES MEDIATEK PROVIDE ANY WARRANTY WHATSOEVER WITH RESPECT TO THE
+* SOFTWARE OF ANY THIRD PARTY WHICH MAY BE USED BY, INCORPORATED IN, OR
+* SUPPLIED WITH THE MEDIATEK SOFTWARE, AND BUYER AGREES TO LOOK ONLY TO SUCH
+* THIRD PARTY FOR ANY WARRANTY CLAIM RELATING THERETO. MEDIATEK SHALL ALSO
+* NOT BE RESPONSIBLE FOR ANY MEDIATEK SOFTWARE RELEASES MADE TO BUYER'S
+* SPECIFICATION OR TO CONFORM TO A PARTICULAR STANDARD OR OPEN FORUM.
+*
+* BUYER'S SOLE AND EXCLUSIVE REMEDY AND MEDIATEK'S ENTIRE AND CUMULATIVE
+* LIABILITY WITH RESPECT TO THE MEDIATEK SOFTWARE RELEASED HEREUNDER WILL BE,
+* AT MEDIATEK'S OPTION, TO REVISE OR REPLACE THE MEDIATEK SOFTWARE AT ISSUE,
+* OR REFUND ANY SOFTWARE LICENSE FEES OR SERVICE CHARGE PAID BY BUYER TO
+* MEDIATEK FOR SUCH MEDIATEK SOFTWARE AT ISSUE.
+*
+* THE TRANSACTION CONTEMPLATED HEREUNDER SHALL BE CONSTRUED IN ACCORDANCE
+* WITH THE LAWS OF THE STATE OF CALIFORNIA, USA, EXCLUDING ITS CONFLICT OF
+* LAWS PRINCIPLES. ANY DISPUTES, CONTROVERSIES OR CLAIMS ARISING THEREOF AND
+* RELATED THERETO SHALL BE SETTLED BY ARBITRATION IN SAN FRANCISCO, CA, UNDER
+* THE RULES OF THE INTERNATIONAL CHAMBER OF COMMERCE (ICC).
+*
+*****************************************************************************/
+
+/******************************************************************************
+ * Filename:
+ * ---------
+ * nstd_alloc_bitmap.h
+ *
+ * Project:
+ * --------
+ * MAUI
+ *
+ * Description:
+ * ------------
+ *
+ * Author:
+ * -------
+ * -------
+ *
+ *=============================================================================
+ * HISTORY
+ * Below this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *------------------------------------------------------------------------------
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ *------------------------------------------------------------------------------
+ * Upper this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *=============================================================================
+ ******************************************************************************/
+
+/********************************************************************************
+* Copyright Statement:
+* --------------------
+*
+* This product has been developed using a protocol stack
+* developed by Sasken Communication Technologies Limited.
+*
+********************************************************************************/
+
+#ifndef _ALLOC_BITMAP_H
+#define _ALLOC_BITMAP_H
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#ifdef TEST_TOOL
+#include "tt_defs.h"
+#else
+#endif
+
+#ifdef TOOL
+#include "set_nstd_alloc_bitmap.h"
+#include "get_nstd_alloc_bitmap.h"
+#endif
+#ifdef __cplusplus
+}
+#endif
+
+
+
+#endif
+
+
diff --git a/mcu/protocol/interface/asn/rr/include/nstd_alloc_bitmap_pun.h b/mcu/protocol/interface/asn/rr/include/nstd_alloc_bitmap_pun.h
new file mode 100644
index 0000000..0b14f6f
--- /dev/null
+++ b/mcu/protocol/interface/asn/rr/include/nstd_alloc_bitmap_pun.h
@@ -0,0 +1,136 @@
+/*****************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2005
+*
+* BY OPENING THIS FILE, BUYER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND AGREES
+* THAT THE SOFTWARE/FIRMWARE AND ITS DOCUMENTATIONS ("MEDIATEK SOFTWARE")
+* RECEIVED FROM MEDIATEK AND/OR ITS REPRESENTATIVES ARE PROVIDED TO BUYER ON
+* AN "AS-IS" BASIS ONLY. MEDIATEK EXPRESSLY DISCLAIMS ANY AND ALL WARRANTIES,
+* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF
+* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NONINFRINGEMENT.
+* NEITHER DOES MEDIATEK PROVIDE ANY WARRANTY WHATSOEVER WITH RESPECT TO THE
+* SOFTWARE OF ANY THIRD PARTY WHICH MAY BE USED BY, INCORPORATED IN, OR
+* SUPPLIED WITH THE MEDIATEK SOFTWARE, AND BUYER AGREES TO LOOK ONLY TO SUCH
+* THIRD PARTY FOR ANY WARRANTY CLAIM RELATING THERETO. MEDIATEK SHALL ALSO
+* NOT BE RESPONSIBLE FOR ANY MEDIATEK SOFTWARE RELEASES MADE TO BUYER'S
+* SPECIFICATION OR TO CONFORM TO A PARTICULAR STANDARD OR OPEN FORUM.
+*
+* BUYER'S SOLE AND EXCLUSIVE REMEDY AND MEDIATEK'S ENTIRE AND CUMULATIVE
+* LIABILITY WITH RESPECT TO THE MEDIATEK SOFTWARE RELEASED HEREUNDER WILL BE,
+* AT MEDIATEK'S OPTION, TO REVISE OR REPLACE THE MEDIATEK SOFTWARE AT ISSUE,
+* OR REFUND ANY SOFTWARE LICENSE FEES OR SERVICE CHARGE PAID BY BUYER TO
+* MEDIATEK FOR SUCH MEDIATEK SOFTWARE AT ISSUE.
+*
+* THE TRANSACTION CONTEMPLATED HEREUNDER SHALL BE CONSTRUED IN ACCORDANCE
+* WITH THE LAWS OF THE STATE OF CALIFORNIA, USA, EXCLUDING ITS CONFLICT OF
+* LAWS PRINCIPLES. ANY DISPUTES, CONTROVERSIES OR CLAIMS ARISING THEREOF AND
+* RELATED THERETO SHALL BE SETTLED BY ARBITRATION IN SAN FRANCISCO, CA, UNDER
+* THE RULES OF THE INTERNATIONAL CHAMBER OF COMMERCE (ICC).
+*
+*****************************************************************************/
+
+/*******************************************************************************
+ * Filename:
+ * ---------
+ * nstd_alloc_bitmap_pun.h
+ *
+ * Project:
+ * --------
+ * MAUI
+ *
+ * Description:
+ * ------------
+ *
+ *
+ * Author:
+ * -------
+ *
+ *
+ *==============================================================================
+ * HISTORY
+ * Below this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *------------------------------------------------------------------------------
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ *------------------------------------------------------------------------------
+ * Upper this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *==============================================================================
+ *******************************************************************************/
+
+/********************************************************************************
+* Copyright Statement:
+* --------------------
+*
+* This product has been developed using a protocol stack
+* developed by Sasken Communication Technologies Limited.
+*
+********************************************************************************/
+
+
+/*******************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2002
+*
+*******************************************************************************
+ * FILENAME : nstd_alloc_bitmap_pun.h
+ * SYNOPSIS : Functions for encoding/decoding.
+ *
+ * R E V I S I O N H I S T O R Y
+ *
+ */
+#ifdef MTK_PEER
+#define IMP __declspec(dllimport)
+#else
+#define IMP
+#endif
+#ifndef _NSTD_ALLOC_BITMAP_PUN_H
+#define _NSTD_ALLOC_BITMAP_PUN_H
+
+/*Evelyn: Remove redundant header and file */
+#include "kal_general_types.h"
+
+IMP unsigned int alloc_struct_bits(void *);
+IMP void alloc_struct_alloc(void *);
+IMP void alloc_struct_dealloc(void *);
+IMP unsigned int alloc_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int alloc_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#endif
+
+
diff --git a/mcu/protocol/interface/asn/rr/include/nstd_alloc_bitmap_struct.h b/mcu/protocol/interface/asn/rr/include/nstd_alloc_bitmap_struct.h
new file mode 100644
index 0000000..a8f3b3d
--- /dev/null
+++ b/mcu/protocol/interface/asn/rr/include/nstd_alloc_bitmap_struct.h
@@ -0,0 +1,133 @@
+/*****************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2005
+*
+* BY OPENING THIS FILE, BUYER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND AGREES
+* THAT THE SOFTWARE/FIRMWARE AND ITS DOCUMENTATIONS ("MEDIATEK SOFTWARE")
+* RECEIVED FROM MEDIATEK AND/OR ITS REPRESENTATIVES ARE PROVIDED TO BUYER ON
+* AN "AS-IS" BASIS ONLY. MEDIATEK EXPRESSLY DISCLAIMS ANY AND ALL WARRANTIES,
+* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF
+* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NONINFRINGEMENT.
+* NEITHER DOES MEDIATEK PROVIDE ANY WARRANTY WHATSOEVER WITH RESPECT TO THE
+* SOFTWARE OF ANY THIRD PARTY WHICH MAY BE USED BY, INCORPORATED IN, OR
+* SUPPLIED WITH THE MEDIATEK SOFTWARE, AND BUYER AGREES TO LOOK ONLY TO SUCH
+* THIRD PARTY FOR ANY WARRANTY CLAIM RELATING THERETO. MEDIATEK SHALL ALSO
+* NOT BE RESPONSIBLE FOR ANY MEDIATEK SOFTWARE RELEASES MADE TO BUYER'S
+* SPECIFICATION OR TO CONFORM TO A PARTICULAR STANDARD OR OPEN FORUM.
+*
+* BUYER'S SOLE AND EXCLUSIVE REMEDY AND MEDIATEK'S ENTIRE AND CUMULATIVE
+* LIABILITY WITH RESPECT TO THE MEDIATEK SOFTWARE RELEASED HEREUNDER WILL BE,
+* AT MEDIATEK'S OPTION, TO REVISE OR REPLACE THE MEDIATEK SOFTWARE AT ISSUE,
+* OR REFUND ANY SOFTWARE LICENSE FEES OR SERVICE CHARGE PAID BY BUYER TO
+* MEDIATEK FOR SUCH MEDIATEK SOFTWARE AT ISSUE.
+*
+* THE TRANSACTION CONTEMPLATED HEREUNDER SHALL BE CONSTRUED IN ACCORDANCE
+* WITH THE LAWS OF THE STATE OF CALIFORNIA, USA, EXCLUDING ITS CONFLICT OF
+* LAWS PRINCIPLES. ANY DISPUTES, CONTROVERSIES OR CLAIMS ARISING THEREOF AND
+* RELATED THERETO SHALL BE SETTLED BY ARBITRATION IN SAN FRANCISCO, CA, UNDER
+* THE RULES OF THE INTERNATIONAL CHAMBER OF COMMERCE (ICC).
+*
+*****************************************************************************/
+
+/*******************************************************************************
+ * Filename:
+ * ---------
+ * nstd_alloc_bitmap_struct.h
+ *
+ * Project:
+ * --------
+ * MAUI
+ *
+ * Description:
+ * ------------
+ *
+ *
+ * Author:
+ * -------
+ *
+ *
+ *==============================================================================
+ * HISTORY
+ * Below this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *------------------------------------------------------------------------------
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ *------------------------------------------------------------------------------
+ * Upper this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *==============================================================================
+ *******************************************************************************/
+
+/********************************************************************************
+* Copyright Statement:
+* --------------------
+*
+* This product has been developed using a protocol stack
+* developed by Sasken Communication Technologies Limited.
+*
+********************************************************************************/
+
+
+/*******************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2002
+*
+*******************************************************************************
+ * FILENAME : nstd_alloc_bitmap_struct.h
+ * SYNOPSIS : Functions for encoding/decoding.
+ *
+ * R E V I S I O N H I S T O R Y
+ *
+ */
+#ifndef _NSTD_ALLOC_BITMAP_STRUCT_H
+#define _NSTD_ALLOC_BITMAP_STRUCT_H
+
+/*Evelyn: Remove redundant header and file */
+#include "kal_general_types.h"
+
+typedef struct {
+ kal_uint8 len_encoded;
+ kal_uint8 blk_or_blk_period; /* BLK OR BLK PERIOD*/
+ kal_uint8 alloc_bitmap_length; /* ALLOC BITMAP LENGTH*/
+ kal_uint8 no_alloc_bitmap;
+ kal_uint8 alloc_bitmap_size;
+ kal_uint8 *alloc_bitmap;
+} alloc_struct;
+#endif
+
+
diff --git a/mcu/protocol/interface/asn/rr/include/nstd_channel_rel.h b/mcu/protocol/interface/asn/rr/include/nstd_channel_rel.h
new file mode 100644
index 0000000..fc92dbf
--- /dev/null
+++ b/mcu/protocol/interface/asn/rr/include/nstd_channel_rel.h
@@ -0,0 +1,125 @@
+/*****************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2005
+*
+* BY OPENING THIS FILE, BUYER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND AGREES
+* THAT THE SOFTWARE/FIRMWARE AND ITS DOCUMENTATIONS ("MEDIATEK SOFTWARE")
+* RECEIVED FROM MEDIATEK AND/OR ITS REPRESENTATIVES ARE PROVIDED TO BUYER ON
+* AN "AS-IS" BASIS ONLY. MEDIATEK EXPRESSLY DISCLAIMS ANY AND ALL WARRANTIES,
+* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF
+* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NONINFRINGEMENT.
+* NEITHER DOES MEDIATEK PROVIDE ANY WARRANTY WHATSOEVER WITH RESPECT TO THE
+* SOFTWARE OF ANY THIRD PARTY WHICH MAY BE USED BY, INCORPORATED IN, OR
+* SUPPLIED WITH THE MEDIATEK SOFTWARE, AND BUYER AGREES TO LOOK ONLY TO SUCH
+* THIRD PARTY FOR ANY WARRANTY CLAIM RELATING THERETO. MEDIATEK SHALL ALSO
+* NOT BE RESPONSIBLE FOR ANY MEDIATEK SOFTWARE RELEASES MADE TO BUYER'S
+* SPECIFICATION OR TO CONFORM TO A PARTICULAR STANDARD OR OPEN FORUM.
+*
+* BUYER'S SOLE AND EXCLUSIVE REMEDY AND MEDIATEK'S ENTIRE AND CUMULATIVE
+* LIABILITY WITH RESPECT TO THE MEDIATEK SOFTWARE RELEASED HEREUNDER WILL BE,
+* AT MEDIATEK'S OPTION, TO REVISE OR REPLACE THE MEDIATEK SOFTWARE AT ISSUE,
+* OR REFUND ANY SOFTWARE LICENSE FEES OR SERVICE CHARGE PAID BY BUYER TO
+* MEDIATEK FOR SUCH MEDIATEK SOFTWARE AT ISSUE.
+*
+* THE TRANSACTION CONTEMPLATED HEREUNDER SHALL BE CONSTRUED IN ACCORDANCE
+* WITH THE LAWS OF THE STATE OF CALIFORNIA, USA, EXCLUDING ITS CONFLICT OF
+* LAWS PRINCIPLES. ANY DISPUTES, CONTROVERSIES OR CLAIMS ARISING THEREOF AND
+* RELATED THERETO SHALL BE SETTLED BY ARBITRATION IN SAN FRANCISCO, CA, UNDER
+* THE RULES OF THE INTERNATIONAL CHAMBER OF COMMERCE (ICC).
+*
+*****************************************************************************/
+
+/******************************************************************************
+ * Filename:
+ * ---------
+ * nstd_channel_rel.h
+ *
+ * Project:
+ * --------
+ * MAUI
+ *
+ * Description:
+ * ------------
+ *
+ * Author:
+ * -------
+ * -------
+ *
+ *=============================================================================
+ * HISTORY
+ * Below this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *------------------------------------------------------------------------------
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ *------------------------------------------------------------------------------
+ * Upper this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *=============================================================================
+ ******************************************************************************/
+
+/********************************************************************************
+* Copyright Statement:
+* --------------------
+*
+* This product has been developed using a protocol stack
+* developed by Sasken Communication Technologies Limited.
+*
+********************************************************************************/
+
+#ifndef _nstd_channel_rel_H
+#define _nstd_channel_rel_H
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#ifdef TEST_TOOL
+#include "tt_defs.h"
+#else
+#endif
+
+#ifdef TOOL
+#include "set_nstd_channel_rel.h"
+#include "get_nstd_channel_rel.h"
+#endif
+#ifdef __cplusplus
+}
+#endif
+
+#endif
+
diff --git a/mcu/protocol/interface/asn/rr/include/nstd_channel_rel_pun.h b/mcu/protocol/interface/asn/rr/include/nstd_channel_rel_pun.h
new file mode 100644
index 0000000..9dde938
--- /dev/null
+++ b/mcu/protocol/interface/asn/rr/include/nstd_channel_rel_pun.h
@@ -0,0 +1,191 @@
+/*****************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2005
+*
+* BY OPENING THIS FILE, BUYER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND AGREES
+* THAT THE SOFTWARE/FIRMWARE AND ITS DOCUMENTATIONS ("MEDIATEK SOFTWARE")
+* RECEIVED FROM MEDIATEK AND/OR ITS REPRESENTATIVES ARE PROVIDED TO BUYER ON
+* AN "AS-IS" BASIS ONLY. MEDIATEK EXPRESSLY DISCLAIMS ANY AND ALL WARRANTIES,
+* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF
+* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NONINFRINGEMENT.
+* NEITHER DOES MEDIATEK PROVIDE ANY WARRANTY WHATSOEVER WITH RESPECT TO THE
+* SOFTWARE OF ANY THIRD PARTY WHICH MAY BE USED BY, INCORPORATED IN, OR
+* SUPPLIED WITH THE MEDIATEK SOFTWARE, AND BUYER AGREES TO LOOK ONLY TO SUCH
+* THIRD PARTY FOR ANY WARRANTY CLAIM RELATING THERETO. MEDIATEK SHALL ALSO
+* NOT BE RESPONSIBLE FOR ANY MEDIATEK SOFTWARE RELEASES MADE TO BUYER'S
+* SPECIFICATION OR TO CONFORM TO A PARTICULAR STANDARD OR OPEN FORUM.
+*
+* BUYER'S SOLE AND EXCLUSIVE REMEDY AND MEDIATEK'S ENTIRE AND CUMULATIVE
+* LIABILITY WITH RESPECT TO THE MEDIATEK SOFTWARE RELEASED HEREUNDER WILL BE,
+* AT MEDIATEK'S OPTION, TO REVISE OR REPLACE THE MEDIATEK SOFTWARE AT ISSUE,
+* OR REFUND ANY SOFTWARE LICENSE FEES OR SERVICE CHARGE PAID BY BUYER TO
+* MEDIATEK FOR SUCH MEDIATEK SOFTWARE AT ISSUE.
+*
+* THE TRANSACTION CONTEMPLATED HEREUNDER SHALL BE CONSTRUED IN ACCORDANCE
+* WITH THE LAWS OF THE STATE OF CALIFORNIA, USA, EXCLUDING ITS CONFLICT OF
+* LAWS PRINCIPLES. ANY DISPUTES, CONTROVERSIES OR CLAIMS ARISING THEREOF AND
+* RELATED THERETO SHALL BE SETTLED BY ARBITRATION IN SAN FRANCISCO, CA, UNDER
+* THE RULES OF THE INTERNATIONAL CHAMBER OF COMMERCE (ICC).
+*
+*****************************************************************************/
+
+/*******************************************************************************
+ * Filename:
+ * ---------
+ * nstd_channel_rel_pun.h
+ *
+ * Project:
+ * --------
+ * MAUI
+ *
+ * Description:
+ * ------------
+ *
+ *
+ * Author:
+ * -------
+ *
+ *
+ *==============================================================================
+ * HISTORY
+ * Below this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *------------------------------------------------------------------------------
+ * removed!
+ * removed!
+ * removed!
+ * removed!
+ * removed!
+ * removed!
+ * removed!
+ * removed!
+ * removed!
+ * removed!
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ *------------------------------------------------------------------------------
+ * Upper this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *==============================================================================
+ *******************************************************************************/
+
+/********************************************************************************
+* Copyright Statement:
+* --------------------
+*
+* This product has been developed using a protocol stack
+* developed by Sasken Communication Technologies Limited.
+*
+********************************************************************************/
+
+
+/*******************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2002
+*
+*******************************************************************************
+ * FILENAME : nstd_channel_rel_pun.h
+ * SYNOPSIS : Functions for encoding/decoding.
+ *
+ * R E V I S I O N H I S T O R Y
+ *
+ */
+#ifdef MTK_PEER
+#define IMP __declspec(dllimport)
+#else
+#define IMP
+#endif
+#ifndef _NSTD_CHANNEL_REL_PUN_H
+#define _NSTD_CHANNEL_REL_PUN_H
+
+/*Evelyn: Remove redundant header and file */
+#include "kal_general_types.h"
+
+#define field1_struct_size(x) 2
+IMP unsigned int field1_struct_bits(void *);
+IMP void field1_struct_alloc(void *);
+IMP void field1_struct_dealloc(void *);
+IMP unsigned int field1_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int field1_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define field2_struct_size(x) 2
+IMP unsigned int field2_struct_bits(void *);
+IMP void field2_struct_alloc(void *);
+IMP void field2_struct_dealloc(void *);
+IMP unsigned int field2_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int field2_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int group_channel_description_struct_bits(void *);
+IMP void group_channel_description_struct_alloc(void *);
+IMP void group_channel_description_struct_dealloc(void *);
+IMP unsigned int group_channel_description_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int group_channel_description_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define range_struct_size(x) 3
+IMP unsigned int range_struct_bits(void *);
+IMP void range_struct_alloc(void *);
+IMP void range_struct_dealloc(void *);
+IMP unsigned int range_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int range_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int ba_list_pref_struct_bits(void *);
+IMP void ba_list_pref_struct_alloc(void *);
+IMP void ba_list_pref_struct_dealloc(void *);
+IMP unsigned int ba_list_pref_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int ba_list_pref_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define gprs_resumption_struct_size(x) 1
+IMP unsigned int gprs_resumption_struct_bits(void *);
+IMP void gprs_resumption_struct_alloc(void *);
+IMP void gprs_resumption_struct_dealloc(void *);
+IMP unsigned int gprs_resumption_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int gprs_resumption_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int channel_release_struct_bits(void *);
+IMP void channel_release_struct_alloc(void *);
+IMP void channel_release_struct_dealloc(void *);
+
+#if 0
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+#endif
+#endif
+
diff --git a/mcu/protocol/interface/asn/rr/include/nstd_channel_rel_struct.h b/mcu/protocol/interface/asn/rr/include/nstd_channel_rel_struct.h
new file mode 100644
index 0000000..04ec467
--- /dev/null
+++ b/mcu/protocol/interface/asn/rr/include/nstd_channel_rel_struct.h
@@ -0,0 +1,205 @@
+/*****************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2005
+*
+* BY OPENING THIS FILE, BUYER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND AGREES
+* THAT THE SOFTWARE/FIRMWARE AND ITS DOCUMENTATIONS ("MEDIATEK SOFTWARE")
+* RECEIVED FROM MEDIATEK AND/OR ITS REPRESENTATIVES ARE PROVIDED TO BUYER ON
+* AN "AS-IS" BASIS ONLY. MEDIATEK EXPRESSLY DISCLAIMS ANY AND ALL WARRANTIES,
+* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF
+* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NONINFRINGEMENT.
+* NEITHER DOES MEDIATEK PROVIDE ANY WARRANTY WHATSOEVER WITH RESPECT TO THE
+* SOFTWARE OF ANY THIRD PARTY WHICH MAY BE USED BY, INCORPORATED IN, OR
+* SUPPLIED WITH THE MEDIATEK SOFTWARE, AND BUYER AGREES TO LOOK ONLY TO SUCH
+* THIRD PARTY FOR ANY WARRANTY CLAIM RELATING THERETO. MEDIATEK SHALL ALSO
+* NOT BE RESPONSIBLE FOR ANY MEDIATEK SOFTWARE RELEASES MADE TO BUYER'S
+* SPECIFICATION OR TO CONFORM TO A PARTICULAR STANDARD OR OPEN FORUM.
+*
+* BUYER'S SOLE AND EXCLUSIVE REMEDY AND MEDIATEK'S ENTIRE AND CUMULATIVE
+* LIABILITY WITH RESPECT TO THE MEDIATEK SOFTWARE RELEASED HEREUNDER WILL BE,
+* AT MEDIATEK'S OPTION, TO REVISE OR REPLACE THE MEDIATEK SOFTWARE AT ISSUE,
+* OR REFUND ANY SOFTWARE LICENSE FEES OR SERVICE CHARGE PAID BY BUYER TO
+* MEDIATEK FOR SUCH MEDIATEK SOFTWARE AT ISSUE.
+*
+* THE TRANSACTION CONTEMPLATED HEREUNDER SHALL BE CONSTRUED IN ACCORDANCE
+* WITH THE LAWS OF THE STATE OF CALIFORNIA, USA, EXCLUDING ITS CONFLICT OF
+* LAWS PRINCIPLES. ANY DISPUTES, CONTROVERSIES OR CLAIMS ARISING THEREOF AND
+* RELATED THERETO SHALL BE SETTLED BY ARBITRATION IN SAN FRANCISCO, CA, UNDER
+* THE RULES OF THE INTERNATIONAL CHAMBER OF COMMERCE (ICC).
+*
+*****************************************************************************/
+
+/*******************************************************************************
+ * Filename:
+ * ---------
+ * nstd_channel_rel_struct.h
+ *
+ * Project:
+ * --------
+ * MAUI
+ *
+ * Description:
+ * ------------
+ *
+ *
+ * Author:
+ * -------
+ *
+ *
+ *==============================================================================
+ * HISTORY
+ * Below this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *------------------------------------------------------------------------------
+ * removed!
+ * removed!
+ * removed!
+ * removed!
+ * removed!
+ * removed!
+ * removed!
+ * removed!
+ * removed!
+ * removed!
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ *------------------------------------------------------------------------------
+ * Upper this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *==============================================================================
+ *******************************************************************************/
+
+/********************************************************************************
+* Copyright Statement:
+* --------------------
+*
+* This product has been developed using a protocol stack
+* developed by Sasken Communication Technologies Limited.
+*
+********************************************************************************/
+
+
+/*******************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2002
+*
+*******************************************************************************
+ * FILENAME : nstd_channel_rel_struct.h
+ * SYNOPSIS : Functions for encoding/decoding.
+ *
+ * R E V I S I O N H I S T O R Y
+ *
+ */
+#ifndef _NSTD_CHANNEL_REL_STRUCT_H
+#define _NSTD_CHANNEL_REL_STRUCT_H
+
+/*Evelyn: Remove redundant header and file */
+#include "kal_general_types.h"
+#include "l3_inc_enums.h"
+
+typedef struct {
+ kal_uint8 spare;
+ kal_uint8 arfcn_high;
+ kal_uint8 arfcn_low;
+} field1_struct;
+
+typedef struct {
+ kal_uint8 maio_high;
+ kal_uint8 maio_low;
+ kal_uint8 hsn;
+} field2_struct;
+
+typedef struct {
+ kal_uint8 length;
+ kal_uint8 ch_typeand_tdma;
+ kal_uint8 tn;
+ kal_uint8 training_seq; /* training sequence code*/
+ is_present_enum hopping_ch_tag;
+ union {
+ field1_struct channel_select1;
+ field2_struct channel_select2;
+ } hopping_ch_value;
+ kal_uint8 no_ma;
+ kal_uint8 ma_size;
+ kal_uint8 *ma;
+} group_channel_description_struct;
+
+typedef struct {
+ kal_uint16 range_lower;
+ kal_uint16 range_higher;
+} range_struct;
+
+typedef struct {
+ unsigned int no_rangelimit;
+ unsigned int rangelimit_size;
+ range_struct *rangelimit;
+ unsigned int no_ba_freq;
+ unsigned int ba_freq_size;
+ kal_uint16 *ba_freq;
+} ba_list_pref_struct;
+
+typedef struct {
+ kal_uint8 spare;
+ kal_uint8 ack;
+} gprs_resumption_struct;
+
+#if 0
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+#endif
+#endif
+
diff --git a/mcu/protocol/interface/asn/rr/include/nstd_egprs_ack.h b/mcu/protocol/interface/asn/rr/include/nstd_egprs_ack.h
new file mode 100644
index 0000000..19d8dab
--- /dev/null
+++ b/mcu/protocol/interface/asn/rr/include/nstd_egprs_ack.h
@@ -0,0 +1,113 @@
+/*****************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2005
+*
+* BY OPENING THIS FILE, BUYER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND AGREES
+* THAT THE SOFTWARE/FIRMWARE AND ITS DOCUMENTATIONS ("MEDIATEK SOFTWARE")
+* RECEIVED FROM MEDIATEK AND/OR ITS REPRESENTATIVES ARE PROVIDED TO BUYER ON
+* AN "AS-IS" BASIS ONLY. MEDIATEK EXPRESSLY DISCLAIMS ANY AND ALL WARRANTIES,
+* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF
+* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NONINFRINGEMENT.
+* NEITHER DOES MEDIATEK PROVIDE ANY WARRANTY WHATSOEVER WITH RESPECT TO THE
+* SOFTWARE OF ANY THIRD PARTY WHICH MAY BE USED BY, INCORPORATED IN, OR
+* SUPPLIED WITH THE MEDIATEK SOFTWARE, AND BUYER AGREES TO LOOK ONLY TO SUCH
+* THIRD PARTY FOR ANY WARRANTY CLAIM RELATING THERETO. MEDIATEK SHALL ALSO
+* NOT BE RESPONSIBLE FOR ANY MEDIATEK SOFTWARE RELEASES MADE TO BUYER'S
+* SPECIFICATION OR TO CONFORM TO A PARTICULAR STANDARD OR OPEN FORUM.
+*
+* BUYER'S SOLE AND EXCLUSIVE REMEDY AND MEDIATEK'S ENTIRE AND CUMULATIVE
+* LIABILITY WITH RESPECT TO THE MEDIATEK SOFTWARE RELEASED HEREUNDER WILL BE,
+* AT MEDIATEK'S OPTION, TO REVISE OR REPLACE THE MEDIATEK SOFTWARE AT ISSUE,
+* OR REFUND ANY SOFTWARE LICENSE FEES OR SERVICE CHARGE PAID BY BUYER TO
+* MEDIATEK FOR SUCH MEDIATEK SOFTWARE AT ISSUE.
+*
+* THE TRANSACTION CONTEMPLATED HEREUNDER SHALL BE CONSTRUED IN ACCORDANCE
+* WITH THE LAWS OF THE STATE OF CALIFORNIA, USA, EXCLUDING ITS CONFLICT OF
+* LAWS PRINCIPLES. ANY DISPUTES, CONTROVERSIES OR CLAIMS ARISING THEREOF AND
+* RELATED THERETO SHALL BE SETTLED BY ARBITRATION IN SAN FRANCISCO, CA, UNDER
+* THE RULES OF THE INTERNATIONAL CHAMBER OF COMMERCE (ICC).
+*
+*****************************************************************************/
+
+/******************************************************************************
+ * Filename:
+ * ---------
+ * nstd_egprs_ack.h
+ *
+ * Project:
+ * --------
+ * MAUI
+ *
+ * Description:
+ * ------------
+ *
+ * Author:
+ * -------
+ * -------
+ *
+ *=============================================================================
+ * HISTORY
+ * Below this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *------------------------------------------------------------------------------
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ *------------------------------------------------------------------------------
+ * Upper this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *=============================================================================
+ ******************************************************************************/
+
+/********************************************************************************
+* Copyright Statement:
+* --------------------
+*
+* This product has been developed using a protocol stack
+* developed by Sasken Communication Technologies Limited.
+*
+********************************************************************************/
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#ifdef TEST_TOOL
+#include "tt_defs.h"
+#else
+#endif
+
+#ifdef TOOL
+#include "set_nstd_egprs_ack.h"
+#include "get_nstd_egprs_ack.h"
+#endif
+#ifdef __cplusplus
+}
+
+#endif
+
diff --git a/mcu/protocol/interface/asn/rr/include/nstd_egprs_ack_pun.h b/mcu/protocol/interface/asn/rr/include/nstd_egprs_ack_pun.h
new file mode 100644
index 0000000..62d1c13
--- /dev/null
+++ b/mcu/protocol/interface/asn/rr/include/nstd_egprs_ack_pun.h
@@ -0,0 +1,137 @@
+/*****************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2005
+*
+* BY OPENING THIS FILE, BUYER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND AGREES
+* THAT THE SOFTWARE/FIRMWARE AND ITS DOCUMENTATIONS ("MEDIATEK SOFTWARE")
+* RECEIVED FROM MEDIATEK AND/OR ITS REPRESENTATIVES ARE PROVIDED TO BUYER ON
+* AN "AS-IS" BASIS ONLY. MEDIATEK EXPRESSLY DISCLAIMS ANY AND ALL WARRANTIES,
+* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF
+* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NONINFRINGEMENT.
+* NEITHER DOES MEDIATEK PROVIDE ANY WARRANTY WHATSOEVER WITH RESPECT TO THE
+* SOFTWARE OF ANY THIRD PARTY WHICH MAY BE USED BY, INCORPORATED IN, OR
+* SUPPLIED WITH THE MEDIATEK SOFTWARE, AND BUYER AGREES TO LOOK ONLY TO SUCH
+* THIRD PARTY FOR ANY WARRANTY CLAIM RELATING THERETO. MEDIATEK SHALL ALSO
+* NOT BE RESPONSIBLE FOR ANY MEDIATEK SOFTWARE RELEASES MADE TO BUYER'S
+* SPECIFICATION OR TO CONFORM TO A PARTICULAR STANDARD OR OPEN FORUM.
+*
+* BUYER'S SOLE AND EXCLUSIVE REMEDY AND MEDIATEK'S ENTIRE AND CUMULATIVE
+* LIABILITY WITH RESPECT TO THE MEDIATEK SOFTWARE RELEASED HEREUNDER WILL BE,
+* AT MEDIATEK'S OPTION, TO REVISE OR REPLACE THE MEDIATEK SOFTWARE AT ISSUE,
+* OR REFUND ANY SOFTWARE LICENSE FEES OR SERVICE CHARGE PAID BY BUYER TO
+* MEDIATEK FOR SUCH MEDIATEK SOFTWARE AT ISSUE.
+*
+* THE TRANSACTION CONTEMPLATED HEREUNDER SHALL BE CONSTRUED IN ACCORDANCE
+* WITH THE LAWS OF THE STATE OF CALIFORNIA, USA, EXCLUDING ITS CONFLICT OF
+* LAWS PRINCIPLES. ANY DISPUTES, CONTROVERSIES OR CLAIMS ARISING THEREOF AND
+* RELATED THERETO SHALL BE SETTLED BY ARBITRATION IN SAN FRANCISCO, CA, UNDER
+* THE RULES OF THE INTERNATIONAL CHAMBER OF COMMERCE (ICC).
+*
+*****************************************************************************/
+
+/*******************************************************************************
+ * Filename:
+ * ---------
+ * nstd_egprs_ack_pun.h
+ *
+ * Project:
+ * --------
+ * MAUI
+ *
+ * Description:
+ * ------------
+ *
+ *
+ * Author:
+ * -------
+ *
+ *
+ *==============================================================================
+ * HISTORY
+ * Below this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *------------------------------------------------------------------------------
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ *------------------------------------------------------------------------------
+ * Upper this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *==============================================================================
+ *******************************************************************************/
+
+/********************************************************************************
+* Copyright Statement:
+* --------------------
+*
+* This product has been developed using a protocol stack
+* developed by Sasken Communication Technologies Limited.
+*
+********************************************************************************/
+
+
+/*******************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2002
+*
+*******************************************************************************
+ * FILENAME : nstd_egprs_ack_pun.h
+ * SYNOPSIS : Functions for encoding/decoding.
+ *
+ * R E V I S I O N H I S T O R Y
+ *
+ */
+#ifdef MTK_PEER
+#define IMP __declspec(dllimport)
+#else
+#define IMP
+#endif
+#ifndef _NSTD_EGPRS_ACK_PUN_H
+#define _NSTD_EGPRS_ACK_PUN_H
+
+/*Evelyn: Remove redundant header and file */
+#include "kal_general_types.h"
+
+#define egprsack_nack_description_struct_size(x) 60
+IMP unsigned int egprsack_nack_description_struct_bits(void *);
+IMP void egprsack_nack_description_struct_alloc(void *);
+IMP void egprsack_nack_description_struct_dealloc(void *);
+IMP unsigned int egprsack_nack_description_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int egprsack_nack_description_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#endif
+
+
diff --git a/mcu/protocol/interface/asn/rr/include/nstd_egprs_ack_struct.h b/mcu/protocol/interface/asn/rr/include/nstd_egprs_ack_struct.h
new file mode 100644
index 0000000..e14ebc8
--- /dev/null
+++ b/mcu/protocol/interface/asn/rr/include/nstd_egprs_ack_struct.h
@@ -0,0 +1,137 @@
+/*****************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2005
+*
+* BY OPENING THIS FILE, BUYER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND AGREES
+* THAT THE SOFTWARE/FIRMWARE AND ITS DOCUMENTATIONS ("MEDIATEK SOFTWARE")
+* RECEIVED FROM MEDIATEK AND/OR ITS REPRESENTATIVES ARE PROVIDED TO BUYER ON
+* AN "AS-IS" BASIS ONLY. MEDIATEK EXPRESSLY DISCLAIMS ANY AND ALL WARRANTIES,
+* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF
+* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NONINFRINGEMENT.
+* NEITHER DOES MEDIATEK PROVIDE ANY WARRANTY WHATSOEVER WITH RESPECT TO THE
+* SOFTWARE OF ANY THIRD PARTY WHICH MAY BE USED BY, INCORPORATED IN, OR
+* SUPPLIED WITH THE MEDIATEK SOFTWARE, AND BUYER AGREES TO LOOK ONLY TO SUCH
+* THIRD PARTY FOR ANY WARRANTY CLAIM RELATING THERETO. MEDIATEK SHALL ALSO
+* NOT BE RESPONSIBLE FOR ANY MEDIATEK SOFTWARE RELEASES MADE TO BUYER'S
+* SPECIFICATION OR TO CONFORM TO A PARTICULAR STANDARD OR OPEN FORUM.
+*
+* BUYER'S SOLE AND EXCLUSIVE REMEDY AND MEDIATEK'S ENTIRE AND CUMULATIVE
+* LIABILITY WITH RESPECT TO THE MEDIATEK SOFTWARE RELEASED HEREUNDER WILL BE,
+* AT MEDIATEK'S OPTION, TO REVISE OR REPLACE THE MEDIATEK SOFTWARE AT ISSUE,
+* OR REFUND ANY SOFTWARE LICENSE FEES OR SERVICE CHARGE PAID BY BUYER TO
+* MEDIATEK FOR SUCH MEDIATEK SOFTWARE AT ISSUE.
+*
+* THE TRANSACTION CONTEMPLATED HEREUNDER SHALL BE CONSTRUED IN ACCORDANCE
+* WITH THE LAWS OF THE STATE OF CALIFORNIA, USA, EXCLUDING ITS CONFLICT OF
+* LAWS PRINCIPLES. ANY DISPUTES, CONTROVERSIES OR CLAIMS ARISING THEREOF AND
+* RELATED THERETO SHALL BE SETTLED BY ARBITRATION IN SAN FRANCISCO, CA, UNDER
+* THE RULES OF THE INTERNATIONAL CHAMBER OF COMMERCE (ICC).
+*
+*****************************************************************************/
+
+/*******************************************************************************
+ * Filename:
+ * ---------
+ * nstd_egprs_ack_struct.h
+ *
+ * Project:
+ * --------
+ * MAUI
+ *
+ * Description:
+ * ------------
+ *
+ *
+ * Author:
+ * -------
+ *
+ *
+ *==============================================================================
+ * HISTORY
+ * Below this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *------------------------------------------------------------------------------
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ *------------------------------------------------------------------------------
+ * Upper this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *==============================================================================
+ *******************************************************************************/
+
+/********************************************************************************
+* Copyright Statement:
+* --------------------
+*
+* This product has been developed using a protocol stack
+* developed by Sasken Communication Technologies Limited.
+*
+********************************************************************************/
+
+
+/*******************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2002
+*
+*******************************************************************************
+ * FILENAME : nstd_egprs_ack_struct.h
+ * SYNOPSIS : Functions for encoding/decoding.
+ *
+ * R E V I S I O N H I S T O R Y
+ *
+ */
+#ifndef _NSTD_EGPRS_ACK_STRUCT_H
+#define _NSTD_EGPRS_ACK_STRUCT_H
+
+/*Evelyn: Remove redundant header and file */
+#include "kal_general_types.h"
+
+typedef struct {
+ kal_uint8 final_ack_ind; /* final_ack_ind*/
+ kal_uint8 begin_window; /* begin_window*/
+ kal_uint8 end_window; /* end_window*/
+ kal_uint16 start_seq_no; /* start_seq_no*/
+ kal_uint8 is_compressed; /* is_compressed*/
+ kal_uint8 color_code; /* color_code*/
+ kal_uint8 c_bitmap_length; /* c_bitmap_length*/
+ kal_uint8 c_bitmap[16];
+ kal_uint8 uc_bitmap_length; /* uc_bitmap_length*/
+ kal_uint8 uc_bitmap[40];
+} egprsack_nack_description_struct;
+#endif
+
+
diff --git a/mcu/protocol/interface/asn/rr/include/nstd_egprs_headers.h b/mcu/protocol/interface/asn/rr/include/nstd_egprs_headers.h
new file mode 100644
index 0000000..f9cbe3e
--- /dev/null
+++ b/mcu/protocol/interface/asn/rr/include/nstd_egprs_headers.h
@@ -0,0 +1,144 @@
+/*****************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2005
+*
+* BY OPENING THIS FILE, BUYER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND AGREES
+* THAT THE SOFTWARE/FIRMWARE AND ITS DOCUMENTATIONS ("MEDIATEK SOFTWARE")
+* RECEIVED FROM MEDIATEK AND/OR ITS REPRESENTATIVES ARE PROVIDED TO BUYER ON
+* AN "AS-IS" BASIS ONLY. MEDIATEK EXPRESSLY DISCLAIMS ANY AND ALL WARRANTIES,
+* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF
+* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NONINFRINGEMENT.
+* NEITHER DOES MEDIATEK PROVIDE ANY WARRANTY WHATSOEVER WITH RESPECT TO THE
+* SOFTWARE OF ANY THIRD PARTY WHICH MAY BE USED BY, INCORPORATED IN, OR
+* SUPPLIED WITH THE MEDIATEK SOFTWARE, AND BUYER AGREES TO LOOK ONLY TO SUCH
+* THIRD PARTY FOR ANY WARRANTY CLAIM RELATING THERETO. MEDIATEK SHALL ALSO
+* NOT BE RESPONSIBLE FOR ANY MEDIATEK SOFTWARE RELEASES MADE TO BUYER'S
+* SPECIFICATION OR TO CONFORM TO A PARTICULAR STANDARD OR OPEN FORUM.
+*
+* BUYER'S SOLE AND EXCLUSIVE REMEDY AND MEDIATEK'S ENTIRE AND CUMULATIVE
+* LIABILITY WITH RESPECT TO THE MEDIATEK SOFTWARE RELEASED HEREUNDER WILL BE,
+* AT MEDIATEK'S OPTION, TO REVISE OR REPLACE THE MEDIATEK SOFTWARE AT ISSUE,
+* OR REFUND ANY SOFTWARE LICENSE FEES OR SERVICE CHARGE PAID BY BUYER TO
+* MEDIATEK FOR SUCH MEDIATEK SOFTWARE AT ISSUE.
+*
+* THE TRANSACTION CONTEMPLATED HEREUNDER SHALL BE CONSTRUED IN ACCORDANCE
+* WITH THE LAWS OF THE STATE OF CALIFORNIA, USA, EXCLUDING ITS CONFLICT OF
+* LAWS PRINCIPLES. ANY DISPUTES, CONTROVERSIES OR CLAIMS ARISING THEREOF AND
+* RELATED THERETO SHALL BE SETTLED BY ARBITRATION IN SAN FRANCISCO, CA, UNDER
+* THE RULES OF THE INTERNATIONAL CHAMBER OF COMMERCE (ICC).
+*
+*****************************************************************************/
+
+/******************************************************************************
+ * Filename:
+ * ---------
+ * nstd_egprs_headers.h
+ *
+ * Project:
+ * --------
+ * MAUI
+ *
+ * Description:
+ * ------------
+ *
+ * Author:
+ * -------
+ * -------
+ *
+ *=============================================================================
+ * HISTORY
+ * Below this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *------------------------------------------------------------------------------
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ *------------------------------------------------------------------------------
+ * Upper this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *=============================================================================
+ ******************************************************************************/
+
+/********************************************************************************
+* Copyright Statement:
+* --------------------
+*
+* This product has been developed using a protocol stack
+* developed by Sasken Communication Technologies Limited.
+*
+********************************************************************************/
+
+
+#ifndef _nstd_egprs_headers_H
+#define _nstd_egprs_headers_H
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#ifdef TEST_TOOL
+#include "tt_defs.h"
+#else
+#endif
+
+#include "nstd_egprs_headers_struct.h"
+
+#ifdef TOOL
+#include "set_nstd_egprs_headers.h"
+#include "get_nstd_egprs_headers.h"
+#endif
+#ifdef __cplusplus
+}
+#endif
+
+unsigned int egprs_ul_t1_header_struct_print(
+ egprs_ul_t1_header_struct*, struct prtBuffMgr * , int tabs);
+unsigned int egprs_ul_t2_header_struct_print(
+ egprs_ul_t2_header_struct*, struct prtBuffMgr * , int tabs);
+unsigned int egprs_ul_t3_header_struct_print(
+ egprs_ul_t3_header_struct*, struct prtBuffMgr * , int tabs);
+
+unsigned int egprs_dl_t1_header_struct_print(
+ egprs_dl_t1_header_struct*, struct prtBuffMgr * , int tabs);
+unsigned int egprs_dl_t2_header_struct_print(
+ egprs_dl_t2_header_struct*, struct prtBuffMgr * , int tabs);
+unsigned int egprs_dl_t3_header_struct_print(
+ egprs_dl_t3_header_struct*, struct prtBuffMgr * , int tabs);
+
+
+#endif /* _nstd_egprs_headers_H */
+
+
diff --git a/mcu/protocol/interface/asn/rr/include/nstd_egprs_headers_pun.h b/mcu/protocol/interface/asn/rr/include/nstd_egprs_headers_pun.h
new file mode 100644
index 0000000..9488e4a
--- /dev/null
+++ b/mcu/protocol/interface/asn/rr/include/nstd_egprs_headers_pun.h
@@ -0,0 +1,172 @@
+/*****************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2005
+*
+* BY OPENING THIS FILE, BUYER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND AGREES
+* THAT THE SOFTWARE/FIRMWARE AND ITS DOCUMENTATIONS ("MEDIATEK SOFTWARE")
+* RECEIVED FROM MEDIATEK AND/OR ITS REPRESENTATIVES ARE PROVIDED TO BUYER ON
+* AN "AS-IS" BASIS ONLY. MEDIATEK EXPRESSLY DISCLAIMS ANY AND ALL WARRANTIES,
+* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF
+* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NONINFRINGEMENT.
+* NEITHER DOES MEDIATEK PROVIDE ANY WARRANTY WHATSOEVER WITH RESPECT TO THE
+* SOFTWARE OF ANY THIRD PARTY WHICH MAY BE USED BY, INCORPORATED IN, OR
+* SUPPLIED WITH THE MEDIATEK SOFTWARE, AND BUYER AGREES TO LOOK ONLY TO SUCH
+* THIRD PARTY FOR ANY WARRANTY CLAIM RELATING THERETO. MEDIATEK SHALL ALSO
+* NOT BE RESPONSIBLE FOR ANY MEDIATEK SOFTWARE RELEASES MADE TO BUYER'S
+* SPECIFICATION OR TO CONFORM TO A PARTICULAR STANDARD OR OPEN FORUM.
+*
+* BUYER'S SOLE AND EXCLUSIVE REMEDY AND MEDIATEK'S ENTIRE AND CUMULATIVE
+* LIABILITY WITH RESPECT TO THE MEDIATEK SOFTWARE RELEASED HEREUNDER WILL BE,
+* AT MEDIATEK'S OPTION, TO REVISE OR REPLACE THE MEDIATEK SOFTWARE AT ISSUE,
+* OR REFUND ANY SOFTWARE LICENSE FEES OR SERVICE CHARGE PAID BY BUYER TO
+* MEDIATEK FOR SUCH MEDIATEK SOFTWARE AT ISSUE.
+*
+* THE TRANSACTION CONTEMPLATED HEREUNDER SHALL BE CONSTRUED IN ACCORDANCE
+* WITH THE LAWS OF THE STATE OF CALIFORNIA, USA, EXCLUDING ITS CONFLICT OF
+* LAWS PRINCIPLES. ANY DISPUTES, CONTROVERSIES OR CLAIMS ARISING THEREOF AND
+* RELATED THERETO SHALL BE SETTLED BY ARBITRATION IN SAN FRANCISCO, CA, UNDER
+* THE RULES OF THE INTERNATIONAL CHAMBER OF COMMERCE (ICC).
+*
+*****************************************************************************/
+
+/*******************************************************************************
+ * Filename:
+ * ---------
+ * nstd_egprs_headers_pun.h
+ *
+ * Project:
+ * --------
+ * MAUI
+ *
+ * Description:
+ * ------------
+ *
+ *
+ * Author:
+ * -------
+ *
+ *
+ *==============================================================================
+ * HISTORY
+ * Below this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *------------------------------------------------------------------------------
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ *------------------------------------------------------------------------------
+ * Upper this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *==============================================================================
+ *******************************************************************************/
+
+/********************************************************************************
+* Copyright Statement:
+* --------------------
+*
+* This product has been developed using a protocol stack
+* developed by Sasken Communication Technologies Limited.
+*
+********************************************************************************/
+
+
+/*******************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2002
+*
+*******************************************************************************
+ * FILENAME : nstd_egprs_headers_pun.h
+ * SYNOPSIS : Functions for encoding/decoding.
+ *
+ * R E V I S I O N H I S T O R Y
+ *
+ */
+#ifdef MTK_PEER
+#define IMP __declspec(dllimport)
+#else
+#define IMP
+#endif
+#ifndef _NSTD_EGPRS_HEADERS_PUN_H
+#define _NSTD_EGPRS_HEADERS_PUN_H
+
+/*Evelyn: Remove redundant header and file */
+#include "kal_general_types.h"
+
+#define egprs_ul_t1_header_struct_size(x) 11
+IMP unsigned int egprs_ul_t1_header_struct_bits(void *);
+IMP void egprs_ul_t1_header_struct_alloc(void *);
+IMP void egprs_ul_t1_header_struct_dealloc(void *);
+IMP unsigned int egprs_ul_t1_header_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int egprs_ul_t1_header_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define egprs_ul_t2_header_struct_size(x) 9
+IMP unsigned int egprs_ul_t2_header_struct_bits(void *);
+IMP void egprs_ul_t2_header_struct_alloc(void *);
+IMP void egprs_ul_t2_header_struct_dealloc(void *);
+IMP unsigned int egprs_ul_t2_header_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int egprs_ul_t2_header_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define egprs_ul_t3_header_struct_size(x) 10
+IMP unsigned int egprs_ul_t3_header_struct_bits(void *);
+IMP void egprs_ul_t3_header_struct_alloc(void *);
+IMP void egprs_ul_t3_header_struct_dealloc(void *);
+IMP unsigned int egprs_ul_t3_header_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int egprs_ul_t3_header_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define egprs_dl_t1_header_struct_size(x) 10
+IMP unsigned int egprs_dl_t1_header_struct_bits(void *);
+IMP void egprs_dl_t1_header_struct_alloc(void *);
+IMP void egprs_dl_t1_header_struct_dealloc(void *);
+IMP unsigned int egprs_dl_t1_header_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int egprs_dl_t1_header_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define egprs_dl_t2_header_struct_size(x) 8
+IMP unsigned int egprs_dl_t2_header_struct_bits(void *);
+IMP void egprs_dl_t2_header_struct_alloc(void *);
+IMP void egprs_dl_t2_header_struct_dealloc(void *);
+IMP unsigned int egprs_dl_t2_header_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int egprs_dl_t2_header_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define egprs_dl_t3_header_struct_size(x) 9
+IMP unsigned int egprs_dl_t3_header_struct_bits(void *);
+IMP void egprs_dl_t3_header_struct_alloc(void *);
+IMP void egprs_dl_t3_header_struct_dealloc(void *);
+IMP unsigned int egprs_dl_t3_header_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int egprs_dl_t3_header_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#endif
+
+
diff --git a/mcu/protocol/interface/asn/rr/include/nstd_egprs_headers_struct.h b/mcu/protocol/interface/asn/rr/include/nstd_egprs_headers_struct.h
new file mode 100644
index 0000000..e12db46
--- /dev/null
+++ b/mcu/protocol/interface/asn/rr/include/nstd_egprs_headers_struct.h
@@ -0,0 +1,191 @@
+/*****************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2005
+*
+* BY OPENING THIS FILE, BUYER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND AGREES
+* THAT THE SOFTWARE/FIRMWARE AND ITS DOCUMENTATIONS ("MEDIATEK SOFTWARE")
+* RECEIVED FROM MEDIATEK AND/OR ITS REPRESENTATIVES ARE PROVIDED TO BUYER ON
+* AN "AS-IS" BASIS ONLY. MEDIATEK EXPRESSLY DISCLAIMS ANY AND ALL WARRANTIES,
+* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF
+* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NONINFRINGEMENT.
+* NEITHER DOES MEDIATEK PROVIDE ANY WARRANTY WHATSOEVER WITH RESPECT TO THE
+* SOFTWARE OF ANY THIRD PARTY WHICH MAY BE USED BY, INCORPORATED IN, OR
+* SUPPLIED WITH THE MEDIATEK SOFTWARE, AND BUYER AGREES TO LOOK ONLY TO SUCH
+* THIRD PARTY FOR ANY WARRANTY CLAIM RELATING THERETO. MEDIATEK SHALL ALSO
+* NOT BE RESPONSIBLE FOR ANY MEDIATEK SOFTWARE RELEASES MADE TO BUYER'S
+* SPECIFICATION OR TO CONFORM TO A PARTICULAR STANDARD OR OPEN FORUM.
+*
+* BUYER'S SOLE AND EXCLUSIVE REMEDY AND MEDIATEK'S ENTIRE AND CUMULATIVE
+* LIABILITY WITH RESPECT TO THE MEDIATEK SOFTWARE RELEASED HEREUNDER WILL BE,
+* AT MEDIATEK'S OPTION, TO REVISE OR REPLACE THE MEDIATEK SOFTWARE AT ISSUE,
+* OR REFUND ANY SOFTWARE LICENSE FEES OR SERVICE CHARGE PAID BY BUYER TO
+* MEDIATEK FOR SUCH MEDIATEK SOFTWARE AT ISSUE.
+*
+* THE TRANSACTION CONTEMPLATED HEREUNDER SHALL BE CONSTRUED IN ACCORDANCE
+* WITH THE LAWS OF THE STATE OF CALIFORNIA, USA, EXCLUDING ITS CONFLICT OF
+* LAWS PRINCIPLES. ANY DISPUTES, CONTROVERSIES OR CLAIMS ARISING THEREOF AND
+* RELATED THERETO SHALL BE SETTLED BY ARBITRATION IN SAN FRANCISCO, CA, UNDER
+* THE RULES OF THE INTERNATIONAL CHAMBER OF COMMERCE (ICC).
+*
+*****************************************************************************/
+
+/*******************************************************************************
+ * Filename:
+ * ---------
+ * nstd_egprs_headers_struct.h
+ *
+ * Project:
+ * --------
+ * MAUI
+ *
+ * Description:
+ * ------------
+ *
+ *
+ * Author:
+ * -------
+ *
+ *
+ *==============================================================================
+ * HISTORY
+ * Below this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *------------------------------------------------------------------------------
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ *------------------------------------------------------------------------------
+ * Upper this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *==============================================================================
+ *******************************************************************************/
+
+/********************************************************************************
+* Copyright Statement:
+* --------------------
+*
+* This product has been developed using a protocol stack
+* developed by Sasken Communication Technologies Limited.
+*
+********************************************************************************/
+
+
+/*******************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2002
+*
+*******************************************************************************
+ * FILENAME : nstd_egprs_headers_struct.h
+ * SYNOPSIS : Functions for encoding/decoding.
+ *
+ * R E V I S I O N H I S T O R Y
+ *
+ */
+#ifndef _NSTD_EGPRS_HEADERS_STRUCT_H
+#define _NSTD_EGPRS_HEADERS_STRUCT_H
+
+/*Evelyn: Remove redundant header and file */
+#include "kal_general_types.h"
+
+typedef struct {
+ kal_uint8 tfi;
+ kal_uint8 cv;
+ kal_uint8 stall_ind;
+ kal_uint8 retr;
+ kal_uint16 bsn1;
+ kal_uint16 bsn2;
+ kal_uint8 cps;
+ kal_uint8 rsb;
+ kal_uint8 pi;
+} egprs_ul_t1_header_struct;
+
+typedef struct {
+ kal_uint8 tfi;
+ kal_uint8 cv;
+ kal_uint8 stall_ind;
+ kal_uint8 retr;
+ kal_uint16 bsn1;
+ kal_uint8 cps;
+ kal_uint8 rsb;
+ kal_uint8 pi;
+} egprs_ul_t2_header_struct;
+
+typedef struct {
+ kal_uint8 tfi;
+ kal_uint8 cv;
+ kal_uint8 stall_ind;
+ kal_uint8 retr;
+ kal_uint16 bsn1;
+ kal_uint8 cps;
+ kal_uint8 spb;
+ kal_uint8 rsb;
+ kal_uint8 pi;
+} egprs_ul_t3_header_struct;
+
+typedef struct {
+ kal_uint8 tfi; /* temporary flow identifier*/
+ kal_uint8 rrbp; /* RRBP field*/
+ kal_uint8 es_orp; /* EGPRS supplementary/polling*/
+ kal_uint8 usf; /* USF field*/
+ kal_uint16 bsn1; /* block sequence no. 1*/
+ kal_uint16 bsn2; /* block sequence no. 2*/
+ kal_uint8 pr; /* power reduction*/
+ kal_uint8 cps; /* coding & puncturing scheme*/
+} egprs_dl_t1_header_struct;
+
+typedef struct {
+ kal_uint8 tfi; /* temporary flow identifier*/
+ kal_uint8 rrbp; /* RRBP field*/
+ kal_uint8 es_orp; /* EGPRS supplementary/polling*/
+ kal_uint8 usf; /* USF field*/
+ kal_uint16 bsn1; /* block sequence no. 1*/
+ kal_uint8 pr; /* power reduction*/
+ kal_uint8 cps; /* coding & puncturing scheme*/
+} egprs_dl_t2_header_struct;
+
+typedef struct {
+ kal_uint8 tfi; /* temporary flow identifier*/
+ kal_uint8 rrbp; /* RRBP field*/
+ kal_uint8 es_orp; /* EGPRS supplementary/polling*/
+ kal_uint8 usf; /* USF field*/
+ kal_uint16 bsn1; /* block sequence no. 1*/
+ kal_uint8 pr; /* power reduction*/
+ kal_uint8 spb; /* split block indicator*/
+ kal_uint8 cps; /* coding & puncturing scheme*/
+} egprs_dl_t3_header_struct;
+#endif
+
+
diff --git a/mcu/protocol/interface/asn/rr/include/nstd_extension_bit.h b/mcu/protocol/interface/asn/rr/include/nstd_extension_bit.h
new file mode 100644
index 0000000..b03e454
--- /dev/null
+++ b/mcu/protocol/interface/asn/rr/include/nstd_extension_bit.h
@@ -0,0 +1,120 @@
+/*****************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2005
+*
+* BY OPENING THIS FILE, BUYER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND AGREES
+* THAT THE SOFTWARE/FIRMWARE AND ITS DOCUMENTATIONS ("MEDIATEK SOFTWARE")
+* RECEIVED FROM MEDIATEK AND/OR ITS REPRESENTATIVES ARE PROVIDED TO BUYER ON
+* AN "AS-IS" BASIS ONLY. MEDIATEK EXPRESSLY DISCLAIMS ANY AND ALL WARRANTIES,
+* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF
+* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NONINFRINGEMENT.
+* NEITHER DOES MEDIATEK PROVIDE ANY WARRANTY WHATSOEVER WITH RESPECT TO THE
+* SOFTWARE OF ANY THIRD PARTY WHICH MAY BE USED BY, INCORPORATED IN, OR
+* SUPPLIED WITH THE MEDIATEK SOFTWARE, AND BUYER AGREES TO LOOK ONLY TO SUCH
+* THIRD PARTY FOR ANY WARRANTY CLAIM RELATING THERETO. MEDIATEK SHALL ALSO
+* NOT BE RESPONSIBLE FOR ANY MEDIATEK SOFTWARE RELEASES MADE TO BUYER'S
+* SPECIFICATION OR TO CONFORM TO A PARTICULAR STANDARD OR OPEN FORUM.
+*
+* BUYER'S SOLE AND EXCLUSIVE REMEDY AND MEDIATEK'S ENTIRE AND CUMULATIVE
+* LIABILITY WITH RESPECT TO THE MEDIATEK SOFTWARE RELEASED HEREUNDER WILL BE,
+* AT MEDIATEK'S OPTION, TO REVISE OR REPLACE THE MEDIATEK SOFTWARE AT ISSUE,
+* OR REFUND ANY SOFTWARE LICENSE FEES OR SERVICE CHARGE PAID BY BUYER TO
+* MEDIATEK FOR SUCH MEDIATEK SOFTWARE AT ISSUE.
+*
+* THE TRANSACTION CONTEMPLATED HEREUNDER SHALL BE CONSTRUED IN ACCORDANCE
+* WITH THE LAWS OF THE STATE OF CALIFORNIA, USA, EXCLUDING ITS CONFLICT OF
+* LAWS PRINCIPLES. ANY DISPUTES, CONTROVERSIES OR CLAIMS ARISING THEREOF AND
+* RELATED THERETO SHALL BE SETTLED BY ARBITRATION IN SAN FRANCISCO, CA, UNDER
+* THE RULES OF THE INTERNATIONAL CHAMBER OF COMMERCE (ICC).
+*
+*****************************************************************************/
+
+/******************************************************************************
+ * Filename:
+ * ---------
+ * nstd_extension_bit.h
+ *
+ * Project:
+ * --------
+ * MAUI
+ *
+ * Description:
+ * ------------
+ *
+ * Author:
+ * -------
+ * -------
+ *
+ *=============================================================================
+ * HISTORY
+ * Below this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *------------------------------------------------------------------------------
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ *------------------------------------------------------------------------------
+ * Upper this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *=============================================================================
+ ******************************************************************************/
+
+/********************************************************************************
+* Copyright Statement:
+* --------------------
+*
+* This product has been developed using a protocol stack
+* developed by Sasken Communication Technologies Limited.
+*
+********************************************************************************/
+
+#ifndef _EXTENSION_BIT_H
+#define _EXTENSION_BIT_H
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#ifdef TEST_TOOL
+#include "tt_defs.h"
+#else
+#endif
+
+#ifdef TOOL
+#include "set_nstd_extension_bit.h"
+#include "get_nstd_extension_bit.h"
+#endif
+#ifdef __cplusplus
+}
+#endif
+
+
+
+#endif
+
+
diff --git a/mcu/protocol/interface/asn/rr/include/nstd_extension_bit_pun.h b/mcu/protocol/interface/asn/rr/include/nstd_extension_bit_pun.h
new file mode 100644
index 0000000..4bb8679
--- /dev/null
+++ b/mcu/protocol/interface/asn/rr/include/nstd_extension_bit_pun.h
@@ -0,0 +1,136 @@
+/*****************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2005
+*
+* BY OPENING THIS FILE, BUYER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND AGREES
+* THAT THE SOFTWARE/FIRMWARE AND ITS DOCUMENTATIONS ("MEDIATEK SOFTWARE")
+* RECEIVED FROM MEDIATEK AND/OR ITS REPRESENTATIVES ARE PROVIDED TO BUYER ON
+* AN "AS-IS" BASIS ONLY. MEDIATEK EXPRESSLY DISCLAIMS ANY AND ALL WARRANTIES,
+* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF
+* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NONINFRINGEMENT.
+* NEITHER DOES MEDIATEK PROVIDE ANY WARRANTY WHATSOEVER WITH RESPECT TO THE
+* SOFTWARE OF ANY THIRD PARTY WHICH MAY BE USED BY, INCORPORATED IN, OR
+* SUPPLIED WITH THE MEDIATEK SOFTWARE, AND BUYER AGREES TO LOOK ONLY TO SUCH
+* THIRD PARTY FOR ANY WARRANTY CLAIM RELATING THERETO. MEDIATEK SHALL ALSO
+* NOT BE RESPONSIBLE FOR ANY MEDIATEK SOFTWARE RELEASES MADE TO BUYER'S
+* SPECIFICATION OR TO CONFORM TO A PARTICULAR STANDARD OR OPEN FORUM.
+*
+* BUYER'S SOLE AND EXCLUSIVE REMEDY AND MEDIATEK'S ENTIRE AND CUMULATIVE
+* LIABILITY WITH RESPECT TO THE MEDIATEK SOFTWARE RELEASED HEREUNDER WILL BE,
+* AT MEDIATEK'S OPTION, TO REVISE OR REPLACE THE MEDIATEK SOFTWARE AT ISSUE,
+* OR REFUND ANY SOFTWARE LICENSE FEES OR SERVICE CHARGE PAID BY BUYER TO
+* MEDIATEK FOR SUCH MEDIATEK SOFTWARE AT ISSUE.
+*
+* THE TRANSACTION CONTEMPLATED HEREUNDER SHALL BE CONSTRUED IN ACCORDANCE
+* WITH THE LAWS OF THE STATE OF CALIFORNIA, USA, EXCLUDING ITS CONFLICT OF
+* LAWS PRINCIPLES. ANY DISPUTES, CONTROVERSIES OR CLAIMS ARISING THEREOF AND
+* RELATED THERETO SHALL BE SETTLED BY ARBITRATION IN SAN FRANCISCO, CA, UNDER
+* THE RULES OF THE INTERNATIONAL CHAMBER OF COMMERCE (ICC).
+*
+*****************************************************************************/
+
+/*******************************************************************************
+ * Filename:
+ * ---------
+ * nstd_extension_bit_pun.h
+ *
+ * Project:
+ * --------
+ * MAUI
+ *
+ * Description:
+ * ------------
+ *
+ *
+ * Author:
+ * -------
+ *
+ *
+ *==============================================================================
+ * HISTORY
+ * Below this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *------------------------------------------------------------------------------
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ *------------------------------------------------------------------------------
+ * Upper this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *==============================================================================
+ *******************************************************************************/
+
+/********************************************************************************
+* Copyright Statement:
+* --------------------
+*
+* This product has been developed using a protocol stack
+* developed by Sasken Communication Technologies Limited.
+*
+********************************************************************************/
+
+
+/*******************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2002
+*
+*******************************************************************************
+ * FILENAME : nstd_extension_bit_pun.h
+ * SYNOPSIS : Functions for encoding/decoding.
+ *
+ * R E V I S I O N H I S T O R Y
+ *
+ */
+#ifdef MTK_PEER
+#define IMP __declspec(dllimport)
+#else
+#define IMP
+#endif
+#ifndef _NSTD_EXTENSION_BIT_PUN_H
+#define _NSTD_EXTENSION_BIT_PUN_H
+
+/*Evelyn: Remove redundant header and file */
+#include "kal_general_types.h"
+
+IMP unsigned int extension_bit_struct_bits(void *);
+IMP void extension_bit_struct_alloc(void *);
+IMP void extension_bit_struct_dealloc(void *);
+IMP unsigned int extension_bit_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int extension_bit_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#endif
+
+
diff --git a/mcu/protocol/interface/asn/rr/include/nstd_extension_bit_struct.h b/mcu/protocol/interface/asn/rr/include/nstd_extension_bit_struct.h
new file mode 100644
index 0000000..26ce54d
--- /dev/null
+++ b/mcu/protocol/interface/asn/rr/include/nstd_extension_bit_struct.h
@@ -0,0 +1,131 @@
+/*****************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2005
+*
+* BY OPENING THIS FILE, BUYER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND AGREES
+* THAT THE SOFTWARE/FIRMWARE AND ITS DOCUMENTATIONS ("MEDIATEK SOFTWARE")
+* RECEIVED FROM MEDIATEK AND/OR ITS REPRESENTATIVES ARE PROVIDED TO BUYER ON
+* AN "AS-IS" BASIS ONLY. MEDIATEK EXPRESSLY DISCLAIMS ANY AND ALL WARRANTIES,
+* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF
+* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NONINFRINGEMENT.
+* NEITHER DOES MEDIATEK PROVIDE ANY WARRANTY WHATSOEVER WITH RESPECT TO THE
+* SOFTWARE OF ANY THIRD PARTY WHICH MAY BE USED BY, INCORPORATED IN, OR
+* SUPPLIED WITH THE MEDIATEK SOFTWARE, AND BUYER AGREES TO LOOK ONLY TO SUCH
+* THIRD PARTY FOR ANY WARRANTY CLAIM RELATING THERETO. MEDIATEK SHALL ALSO
+* NOT BE RESPONSIBLE FOR ANY MEDIATEK SOFTWARE RELEASES MADE TO BUYER'S
+* SPECIFICATION OR TO CONFORM TO A PARTICULAR STANDARD OR OPEN FORUM.
+*
+* BUYER'S SOLE AND EXCLUSIVE REMEDY AND MEDIATEK'S ENTIRE AND CUMULATIVE
+* LIABILITY WITH RESPECT TO THE MEDIATEK SOFTWARE RELEASED HEREUNDER WILL BE,
+* AT MEDIATEK'S OPTION, TO REVISE OR REPLACE THE MEDIATEK SOFTWARE AT ISSUE,
+* OR REFUND ANY SOFTWARE LICENSE FEES OR SERVICE CHARGE PAID BY BUYER TO
+* MEDIATEK FOR SUCH MEDIATEK SOFTWARE AT ISSUE.
+*
+* THE TRANSACTION CONTEMPLATED HEREUNDER SHALL BE CONSTRUED IN ACCORDANCE
+* WITH THE LAWS OF THE STATE OF CALIFORNIA, USA, EXCLUDING ITS CONFLICT OF
+* LAWS PRINCIPLES. ANY DISPUTES, CONTROVERSIES OR CLAIMS ARISING THEREOF AND
+* RELATED THERETO SHALL BE SETTLED BY ARBITRATION IN SAN FRANCISCO, CA, UNDER
+* THE RULES OF THE INTERNATIONAL CHAMBER OF COMMERCE (ICC).
+*
+*****************************************************************************/
+
+/*******************************************************************************
+ * Filename:
+ * ---------
+ * nstd_extension_bit_struct.h
+ *
+ * Project:
+ * --------
+ * MAUI
+ *
+ * Description:
+ * ------------
+ *
+ *
+ * Author:
+ * -------
+ *
+ *
+ *==============================================================================
+ * HISTORY
+ * Below this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *------------------------------------------------------------------------------
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ *------------------------------------------------------------------------------
+ * Upper this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *==============================================================================
+ *******************************************************************************/
+
+/********************************************************************************
+* Copyright Statement:
+* --------------------
+*
+* This product has been developed using a protocol stack
+* developed by Sasken Communication Technologies Limited.
+*
+********************************************************************************/
+
+
+/*******************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2002
+*
+*******************************************************************************
+ * FILENAME : nstd_extension_bit_struct.h
+ * SYNOPSIS : Functions for encoding/decoding.
+ *
+ * R E V I S I O N H I S T O R Y
+ *
+ */
+#ifndef _NSTD_EXTENSION_BIT_STRUCT_H
+#define _NSTD_EXTENSION_BIT_STRUCT_H
+
+/*Evelyn: Remove redundant header and file */
+#include "kal_general_types.h"
+
+typedef struct {
+ kal_uint8 spare_length; /* EXTENTION BITS LENGTH*/
+ kal_uint8 no_spare;
+ kal_uint8 spare_size;
+ kal_uint8 *spare; /* SPARE*/
+} extension_bit_struct;
+#endif
+
+
diff --git a/mcu/protocol/interface/asn/rr/include/nstd_gprsmobileiestruct.h b/mcu/protocol/interface/asn/rr/include/nstd_gprsmobileiestruct.h
new file mode 100644
index 0000000..616ed7f
--- /dev/null
+++ b/mcu/protocol/interface/asn/rr/include/nstd_gprsmobileiestruct.h
@@ -0,0 +1,121 @@
+/*****************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2005
+*
+* BY OPENING THIS FILE, BUYER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND AGREES
+* THAT THE SOFTWARE/FIRMWARE AND ITS DOCUMENTATIONS ("MEDIATEK SOFTWARE")
+* RECEIVED FROM MEDIATEK AND/OR ITS REPRESENTATIVES ARE PROVIDED TO BUYER ON
+* AN "AS-IS" BASIS ONLY. MEDIATEK EXPRESSLY DISCLAIMS ANY AND ALL WARRANTIES,
+* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF
+* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NONINFRINGEMENT.
+* NEITHER DOES MEDIATEK PROVIDE ANY WARRANTY WHATSOEVER WITH RESPECT TO THE
+* SOFTWARE OF ANY THIRD PARTY WHICH MAY BE USED BY, INCORPORATED IN, OR
+* SUPPLIED WITH THE MEDIATEK SOFTWARE, AND BUYER AGREES TO LOOK ONLY TO SUCH
+* THIRD PARTY FOR ANY WARRANTY CLAIM RELATING THERETO. MEDIATEK SHALL ALSO
+* NOT BE RESPONSIBLE FOR ANY MEDIATEK SOFTWARE RELEASES MADE TO BUYER'S
+* SPECIFICATION OR TO CONFORM TO A PARTICULAR STANDARD OR OPEN FORUM.
+*
+* BUYER'S SOLE AND EXCLUSIVE REMEDY AND MEDIATEK'S ENTIRE AND CUMULATIVE
+* LIABILITY WITH RESPECT TO THE MEDIATEK SOFTWARE RELEASED HEREUNDER WILL BE,
+* AT MEDIATEK'S OPTION, TO REVISE OR REPLACE THE MEDIATEK SOFTWARE AT ISSUE,
+* OR REFUND ANY SOFTWARE LICENSE FEES OR SERVICE CHARGE PAID BY BUYER TO
+* MEDIATEK FOR SUCH MEDIATEK SOFTWARE AT ISSUE.
+*
+* THE TRANSACTION CONTEMPLATED HEREUNDER SHALL BE CONSTRUED IN ACCORDANCE
+* WITH THE LAWS OF THE STATE OF CALIFORNIA, USA, EXCLUDING ITS CONFLICT OF
+* LAWS PRINCIPLES. ANY DISPUTES, CONTROVERSIES OR CLAIMS ARISING THEREOF AND
+* RELATED THERETO SHALL BE SETTLED BY ARBITRATION IN SAN FRANCISCO, CA, UNDER
+* THE RULES OF THE INTERNATIONAL CHAMBER OF COMMERCE (ICC).
+*
+*****************************************************************************/
+
+/******************************************************************************
+ * Filename:
+ * ---------
+ * nstd_gprsmobileiestruct.h
+ *
+ * Project:
+ * --------
+ * MAUI
+ *
+ * Description:
+ * ------------
+ *
+ * Author:
+ * -------
+ * -------
+ *
+ *=============================================================================
+ * HISTORY
+ * Below this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *------------------------------------------------------------------------------
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ *------------------------------------------------------------------------------
+ * Upper this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *=============================================================================
+ ******************************************************************************/
+
+/********************************************************************************
+* Copyright Statement:
+* --------------------
+*
+* This product has been developed using a protocol stack
+* developed by Sasken Communication Technologies Limited.
+*
+********************************************************************************/
+
+
+
+#ifndef _GPRSMOBILEIESTRUCT_H_
+#define _GPRSMOBILEIESTRUCT_H_
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#ifdef TEST_TOOL
+#include "tt_defs.h"
+#else
+#endif
+
+#ifdef TOOL
+#include "set_gprsmobileiestruct.h"
+#include "get_gprsmobileiestruct.h"
+#endif
+#ifdef __cplusplus
+}
+#endif
+
+
+
+#endif
+
diff --git a/mcu/protocol/interface/asn/rr/include/nstd_gprsmobileiestruct_pun.h b/mcu/protocol/interface/asn/rr/include/nstd_gprsmobileiestruct_pun.h
new file mode 100644
index 0000000..d7a5a59
--- /dev/null
+++ b/mcu/protocol/interface/asn/rr/include/nstd_gprsmobileiestruct_pun.h
@@ -0,0 +1,154 @@
+/*****************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2005
+*
+* BY OPENING THIS FILE, BUYER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND AGREES
+* THAT THE SOFTWARE/FIRMWARE AND ITS DOCUMENTATIONS ("MEDIATEK SOFTWARE")
+* RECEIVED FROM MEDIATEK AND/OR ITS REPRESENTATIVES ARE PROVIDED TO BUYER ON
+* AN "AS-IS" BASIS ONLY. MEDIATEK EXPRESSLY DISCLAIMS ANY AND ALL WARRANTIES,
+* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF
+* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NONINFRINGEMENT.
+* NEITHER DOES MEDIATEK PROVIDE ANY WARRANTY WHATSOEVER WITH RESPECT TO THE
+* SOFTWARE OF ANY THIRD PARTY WHICH MAY BE USED BY, INCORPORATED IN, OR
+* SUPPLIED WITH THE MEDIATEK SOFTWARE, AND BUYER AGREES TO LOOK ONLY TO SUCH
+* THIRD PARTY FOR ANY WARRANTY CLAIM RELATING THERETO. MEDIATEK SHALL ALSO
+* NOT BE RESPONSIBLE FOR ANY MEDIATEK SOFTWARE RELEASES MADE TO BUYER'S
+* SPECIFICATION OR TO CONFORM TO A PARTICULAR STANDARD OR OPEN FORUM.
+*
+* BUYER'S SOLE AND EXCLUSIVE REMEDY AND MEDIATEK'S ENTIRE AND CUMULATIVE
+* LIABILITY WITH RESPECT TO THE MEDIATEK SOFTWARE RELEASED HEREUNDER WILL BE,
+* AT MEDIATEK'S OPTION, TO REVISE OR REPLACE THE MEDIATEK SOFTWARE AT ISSUE,
+* OR REFUND ANY SOFTWARE LICENSE FEES OR SERVICE CHARGE PAID BY BUYER TO
+* MEDIATEK FOR SUCH MEDIATEK SOFTWARE AT ISSUE.
+*
+* THE TRANSACTION CONTEMPLATED HEREUNDER SHALL BE CONSTRUED IN ACCORDANCE
+* WITH THE LAWS OF THE STATE OF CALIFORNIA, USA, EXCLUDING ITS CONFLICT OF
+* LAWS PRINCIPLES. ANY DISPUTES, CONTROVERSIES OR CLAIMS ARISING THEREOF AND
+* RELATED THERETO SHALL BE SETTLED BY ARBITRATION IN SAN FRANCISCO, CA, UNDER
+* THE RULES OF THE INTERNATIONAL CHAMBER OF COMMERCE (ICC).
+*
+*****************************************************************************/
+
+/*******************************************************************************
+ * Filename:
+ * ---------
+ * nstd_gprsmobileiestruct_pun.h
+ *
+ * Project:
+ * --------
+ * MAUI
+ *
+ * Description:
+ * ------------
+ *
+ *
+ * Author:
+ * -------
+ *
+ *
+ *==============================================================================
+ * HISTORY
+ * Below this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *------------------------------------------------------------------------------
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ *------------------------------------------------------------------------------
+ * Upper this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *==============================================================================
+ *******************************************************************************/
+
+/********************************************************************************
+* Copyright Statement:
+* --------------------
+*
+* This product has been developed using a protocol stack
+* developed by Sasken Communication Technologies Limited.
+*
+********************************************************************************/
+
+
+/*******************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2002
+*
+*******************************************************************************
+ * FILENAME : nstd_gprsmobileiestruct_pun.h
+ * SYNOPSIS : Functions for encoding/decoding.
+ *
+ * R E V I S I O N H I S T O R Y
+ *
+ */
+#ifdef MTK_PEER
+#define IMP __declspec(dllimport)
+#else
+#define IMP
+#endif
+#ifndef _NSTD_GPRSMOBILEIESTRUCT_PUN_H
+#define _NSTD_GPRSMOBILEIESTRUCT_PUN_H
+
+/*Evelyn: Remove redundant header and file */
+#include "kal_general_types.h"
+
+IMP unsigned int arfcnindexliststruct_bits(void *);
+IMP void arfcnindexliststruct_alloc(void *);
+IMP void arfcnindexliststruct_dealloc(void *);
+IMP unsigned int arfcnindexliststruct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int arfcnindexliststruct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int arfcnstruct1_bits(void *);
+IMP void arfcnstruct1_alloc(void *);
+IMP void arfcnstruct1_dealloc(void *);
+IMP unsigned int arfcnstruct1_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int arfcnstruct1_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int rflliststruct1_bits(void *);
+IMP void rflliststruct1_alloc(void *);
+IMP void rflliststruct1_dealloc(void *);
+IMP unsigned int rflliststruct1_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int rflliststruct1_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int gprsmobileiestruct_bits(void *);
+IMP void gprsmobileiestruct_alloc(void *);
+IMP void gprsmobileiestruct_dealloc(void *);
+IMP unsigned int gprsmobileiestruct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int gprsmobileiestruct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#endif
+
+
diff --git a/mcu/protocol/interface/asn/rr/include/nstd_gprsmobileiestruct_struct.h b/mcu/protocol/interface/asn/rr/include/nstd_gprsmobileiestruct_struct.h
new file mode 100644
index 0000000..d581feb
--- /dev/null
+++ b/mcu/protocol/interface/asn/rr/include/nstd_gprsmobileiestruct_struct.h
@@ -0,0 +1,158 @@
+/*****************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2005
+*
+* BY OPENING THIS FILE, BUYER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND AGREES
+* THAT THE SOFTWARE/FIRMWARE AND ITS DOCUMENTATIONS ("MEDIATEK SOFTWARE")
+* RECEIVED FROM MEDIATEK AND/OR ITS REPRESENTATIVES ARE PROVIDED TO BUYER ON
+* AN "AS-IS" BASIS ONLY. MEDIATEK EXPRESSLY DISCLAIMS ANY AND ALL WARRANTIES,
+* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF
+* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NONINFRINGEMENT.
+* NEITHER DOES MEDIATEK PROVIDE ANY WARRANTY WHATSOEVER WITH RESPECT TO THE
+* SOFTWARE OF ANY THIRD PARTY WHICH MAY BE USED BY, INCORPORATED IN, OR
+* SUPPLIED WITH THE MEDIATEK SOFTWARE, AND BUYER AGREES TO LOOK ONLY TO SUCH
+* THIRD PARTY FOR ANY WARRANTY CLAIM RELATING THERETO. MEDIATEK SHALL ALSO
+* NOT BE RESPONSIBLE FOR ANY MEDIATEK SOFTWARE RELEASES MADE TO BUYER'S
+* SPECIFICATION OR TO CONFORM TO A PARTICULAR STANDARD OR OPEN FORUM.
+*
+* BUYER'S SOLE AND EXCLUSIVE REMEDY AND MEDIATEK'S ENTIRE AND CUMULATIVE
+* LIABILITY WITH RESPECT TO THE MEDIATEK SOFTWARE RELEASED HEREUNDER WILL BE,
+* AT MEDIATEK'S OPTION, TO REVISE OR REPLACE THE MEDIATEK SOFTWARE AT ISSUE,
+* OR REFUND ANY SOFTWARE LICENSE FEES OR SERVICE CHARGE PAID BY BUYER TO
+* MEDIATEK FOR SUCH MEDIATEK SOFTWARE AT ISSUE.
+*
+* THE TRANSACTION CONTEMPLATED HEREUNDER SHALL BE CONSTRUED IN ACCORDANCE
+* WITH THE LAWS OF THE STATE OF CALIFORNIA, USA, EXCLUDING ITS CONFLICT OF
+* LAWS PRINCIPLES. ANY DISPUTES, CONTROVERSIES OR CLAIMS ARISING THEREOF AND
+* RELATED THERETO SHALL BE SETTLED BY ARBITRATION IN SAN FRANCISCO, CA, UNDER
+* THE RULES OF THE INTERNATIONAL CHAMBER OF COMMERCE (ICC).
+*
+*****************************************************************************/
+
+/*******************************************************************************
+ * Filename:
+ * ---------
+ * nstd_gprsmobileiestruct_struct.h
+ *
+ * Project:
+ * --------
+ * MAUI
+ *
+ * Description:
+ * ------------
+ *
+ *
+ * Author:
+ * -------
+ *
+ *
+ *==============================================================================
+ * HISTORY
+ * Below this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *------------------------------------------------------------------------------
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ *------------------------------------------------------------------------------
+ * Upper this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *==============================================================================
+ *******************************************************************************/
+
+/********************************************************************************
+* Copyright Statement:
+* --------------------
+*
+* This product has been developed using a protocol stack
+* developed by Sasken Communication Technologies Limited.
+*
+********************************************************************************/
+
+
+/*******************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2002
+*
+*******************************************************************************
+ * FILENAME : nstd_gprsmobileiestruct_struct.h
+ * SYNOPSIS : Functions for encoding/decoding.
+ *
+ * R E V I S I O N H I S T O R Y
+ *
+ */
+#ifndef _NSTD_GPRSMOBILEIESTRUCT_STRUCT_H
+#define _NSTD_GPRSMOBILEIESTRUCT_STRUCT_H
+
+/*Evelyn: Remove redundant header and file */
+#include "kal_general_types.h"
+#include "rr_common_def.h"
+#include "nstd_mastruct1_struct.h"
+
+typedef struct {
+ unsigned int no_arflist;
+ unsigned int arflist_size;
+ kal_uint8 *arflist;
+} arfcnindexliststruct;
+
+typedef struct {
+ ispresent ch207_tag;
+ union {
+ arfcnindexliststruct parfcn;
+ } ch207_value;
+} arfcnstruct1;
+
+typedef struct {
+ unsigned int no_rfl;
+ unsigned int rfl_size;
+ kal_uint8 *rfl;
+} rflliststruct1;
+
+typedef struct {
+ kal_uint8 hsn; /* HSN*/
+ ispresent ch208_tag;
+ union {
+ rflliststruct1 prfl;
+ } ch208_value;
+ ispresent ch209_tag;
+ union {
+ mastruct1 ach;
+ arfcnstruct1 pch;
+ } ch209_value;
+} gprsmobileiestruct;
+#endif
+
+
diff --git a/mcu/protocol/interface/asn/rr/include/nstd_mastruct1.h b/mcu/protocol/interface/asn/rr/include/nstd_mastruct1.h
new file mode 100644
index 0000000..081e7fa
--- /dev/null
+++ b/mcu/protocol/interface/asn/rr/include/nstd_mastruct1.h
@@ -0,0 +1,121 @@
+/*****************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2005
+*
+* BY OPENING THIS FILE, BUYER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND AGREES
+* THAT THE SOFTWARE/FIRMWARE AND ITS DOCUMENTATIONS ("MEDIATEK SOFTWARE")
+* RECEIVED FROM MEDIATEK AND/OR ITS REPRESENTATIVES ARE PROVIDED TO BUYER ON
+* AN "AS-IS" BASIS ONLY. MEDIATEK EXPRESSLY DISCLAIMS ANY AND ALL WARRANTIES,
+* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF
+* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NONINFRINGEMENT.
+* NEITHER DOES MEDIATEK PROVIDE ANY WARRANTY WHATSOEVER WITH RESPECT TO THE
+* SOFTWARE OF ANY THIRD PARTY WHICH MAY BE USED BY, INCORPORATED IN, OR
+* SUPPLIED WITH THE MEDIATEK SOFTWARE, AND BUYER AGREES TO LOOK ONLY TO SUCH
+* THIRD PARTY FOR ANY WARRANTY CLAIM RELATING THERETO. MEDIATEK SHALL ALSO
+* NOT BE RESPONSIBLE FOR ANY MEDIATEK SOFTWARE RELEASES MADE TO BUYER'S
+* SPECIFICATION OR TO CONFORM TO A PARTICULAR STANDARD OR OPEN FORUM.
+*
+* BUYER'S SOLE AND EXCLUSIVE REMEDY AND MEDIATEK'S ENTIRE AND CUMULATIVE
+* LIABILITY WITH RESPECT TO THE MEDIATEK SOFTWARE RELEASED HEREUNDER WILL BE,
+* AT MEDIATEK'S OPTION, TO REVISE OR REPLACE THE MEDIATEK SOFTWARE AT ISSUE,
+* OR REFUND ANY SOFTWARE LICENSE FEES OR SERVICE CHARGE PAID BY BUYER TO
+* MEDIATEK FOR SUCH MEDIATEK SOFTWARE AT ISSUE.
+*
+* THE TRANSACTION CONTEMPLATED HEREUNDER SHALL BE CONSTRUED IN ACCORDANCE
+* WITH THE LAWS OF THE STATE OF CALIFORNIA, USA, EXCLUDING ITS CONFLICT OF
+* LAWS PRINCIPLES. ANY DISPUTES, CONTROVERSIES OR CLAIMS ARISING THEREOF AND
+* RELATED THERETO SHALL BE SETTLED BY ARBITRATION IN SAN FRANCISCO, CA, UNDER
+* THE RULES OF THE INTERNATIONAL CHAMBER OF COMMERCE (ICC).
+*
+*****************************************************************************/
+
+/******************************************************************************
+ * Filename:
+ * ---------
+ * nstd_mastruct1.h
+ *
+ * Project:
+ * --------
+ * MAUI
+ *
+ * Description:
+ * ------------
+ *
+ * Author:
+ * -------
+ * -------
+ *
+ *=============================================================================
+ * HISTORY
+ * Below this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *------------------------------------------------------------------------------
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ *------------------------------------------------------------------------------
+ * Upper this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *=============================================================================
+ ******************************************************************************/
+
+/********************************************************************************
+* Copyright Statement:
+* --------------------
+*
+* This product has been developed using a protocol stack
+* developed by Sasken Communication Technologies Limited.
+*
+********************************************************************************/
+
+
+
+#ifndef _mastruct1_H_
+#define _mastruct1_H_
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#ifdef TEST_TOOL
+#include "tt_defs.h"
+#else
+#endif
+
+#ifdef TOOL
+#include "set_nstd_mastruct1.h"
+#include "get_nstd_mastruct1.h"
+#endif
+#ifdef __cplusplus
+}
+#endif
+
+
+
+#endif
+
diff --git a/mcu/protocol/interface/asn/rr/include/nstd_mastruct1_pun.h b/mcu/protocol/interface/asn/rr/include/nstd_mastruct1_pun.h
new file mode 100644
index 0000000..0044aa0
--- /dev/null
+++ b/mcu/protocol/interface/asn/rr/include/nstd_mastruct1_pun.h
@@ -0,0 +1,136 @@
+/*****************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2005
+*
+* BY OPENING THIS FILE, BUYER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND AGREES
+* THAT THE SOFTWARE/FIRMWARE AND ITS DOCUMENTATIONS ("MEDIATEK SOFTWARE")
+* RECEIVED FROM MEDIATEK AND/OR ITS REPRESENTATIVES ARE PROVIDED TO BUYER ON
+* AN "AS-IS" BASIS ONLY. MEDIATEK EXPRESSLY DISCLAIMS ANY AND ALL WARRANTIES,
+* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF
+* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NONINFRINGEMENT.
+* NEITHER DOES MEDIATEK PROVIDE ANY WARRANTY WHATSOEVER WITH RESPECT TO THE
+* SOFTWARE OF ANY THIRD PARTY WHICH MAY BE USED BY, INCORPORATED IN, OR
+* SUPPLIED WITH THE MEDIATEK SOFTWARE, AND BUYER AGREES TO LOOK ONLY TO SUCH
+* THIRD PARTY FOR ANY WARRANTY CLAIM RELATING THERETO. MEDIATEK SHALL ALSO
+* NOT BE RESPONSIBLE FOR ANY MEDIATEK SOFTWARE RELEASES MADE TO BUYER'S
+* SPECIFICATION OR TO CONFORM TO A PARTICULAR STANDARD OR OPEN FORUM.
+*
+* BUYER'S SOLE AND EXCLUSIVE REMEDY AND MEDIATEK'S ENTIRE AND CUMULATIVE
+* LIABILITY WITH RESPECT TO THE MEDIATEK SOFTWARE RELEASED HEREUNDER WILL BE,
+* AT MEDIATEK'S OPTION, TO REVISE OR REPLACE THE MEDIATEK SOFTWARE AT ISSUE,
+* OR REFUND ANY SOFTWARE LICENSE FEES OR SERVICE CHARGE PAID BY BUYER TO
+* MEDIATEK FOR SUCH MEDIATEK SOFTWARE AT ISSUE.
+*
+* THE TRANSACTION CONTEMPLATED HEREUNDER SHALL BE CONSTRUED IN ACCORDANCE
+* WITH THE LAWS OF THE STATE OF CALIFORNIA, USA, EXCLUDING ITS CONFLICT OF
+* LAWS PRINCIPLES. ANY DISPUTES, CONTROVERSIES OR CLAIMS ARISING THEREOF AND
+* RELATED THERETO SHALL BE SETTLED BY ARBITRATION IN SAN FRANCISCO, CA, UNDER
+* THE RULES OF THE INTERNATIONAL CHAMBER OF COMMERCE (ICC).
+*
+*****************************************************************************/
+
+/*******************************************************************************
+ * Filename:
+ * ---------
+ * nstd_mastruct1_pun.h
+ *
+ * Project:
+ * --------
+ * MAUI
+ *
+ * Description:
+ * ------------
+ *
+ *
+ * Author:
+ * -------
+ *
+ *
+ *==============================================================================
+ * HISTORY
+ * Below this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *------------------------------------------------------------------------------
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ *------------------------------------------------------------------------------
+ * Upper this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *==============================================================================
+ *******************************************************************************/
+
+/********************************************************************************
+* Copyright Statement:
+* --------------------
+*
+* This product has been developed using a protocol stack
+* developed by Sasken Communication Technologies Limited.
+*
+********************************************************************************/
+
+
+/*******************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2002
+*
+*******************************************************************************
+ * FILENAME : nstd_mastruct1_pun.h
+ * SYNOPSIS : Functions for encoding/decoding.
+ *
+ * R E V I S I O N H I S T O R Y
+ *
+ */
+#ifdef MTK_PEER
+#define IMP __declspec(dllimport)
+#else
+#define IMP
+#endif
+#ifndef _NSTD_MASTRUCT1_PUN_H
+#define _NSTD_MASTRUCT1_PUN_H
+
+/*Evelyn: Remove redundant header and file */
+#include "kal_general_types.h"
+
+IMP unsigned int mastruct1_bits(void *);
+IMP void mastruct1_alloc(void *);
+IMP void mastruct1_dealloc(void *);
+IMP unsigned int mastruct1_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int mastruct1_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#endif
+
+
diff --git a/mcu/protocol/interface/asn/rr/include/nstd_mastruct1_struct.h b/mcu/protocol/interface/asn/rr/include/nstd_mastruct1_struct.h
new file mode 100644
index 0000000..f6e7087
--- /dev/null
+++ b/mcu/protocol/interface/asn/rr/include/nstd_mastruct1_struct.h
@@ -0,0 +1,130 @@
+/*****************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2005
+*
+* BY OPENING THIS FILE, BUYER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND AGREES
+* THAT THE SOFTWARE/FIRMWARE AND ITS DOCUMENTATIONS ("MEDIATEK SOFTWARE")
+* RECEIVED FROM MEDIATEK AND/OR ITS REPRESENTATIVES ARE PROVIDED TO BUYER ON
+* AN "AS-IS" BASIS ONLY. MEDIATEK EXPRESSLY DISCLAIMS ANY AND ALL WARRANTIES,
+* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF
+* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NONINFRINGEMENT.
+* NEITHER DOES MEDIATEK PROVIDE ANY WARRANTY WHATSOEVER WITH RESPECT TO THE
+* SOFTWARE OF ANY THIRD PARTY WHICH MAY BE USED BY, INCORPORATED IN, OR
+* SUPPLIED WITH THE MEDIATEK SOFTWARE, AND BUYER AGREES TO LOOK ONLY TO SUCH
+* THIRD PARTY FOR ANY WARRANTY CLAIM RELATING THERETO. MEDIATEK SHALL ALSO
+* NOT BE RESPONSIBLE FOR ANY MEDIATEK SOFTWARE RELEASES MADE TO BUYER'S
+* SPECIFICATION OR TO CONFORM TO A PARTICULAR STANDARD OR OPEN FORUM.
+*
+* BUYER'S SOLE AND EXCLUSIVE REMEDY AND MEDIATEK'S ENTIRE AND CUMULATIVE
+* LIABILITY WITH RESPECT TO THE MEDIATEK SOFTWARE RELEASED HEREUNDER WILL BE,
+* AT MEDIATEK'S OPTION, TO REVISE OR REPLACE THE MEDIATEK SOFTWARE AT ISSUE,
+* OR REFUND ANY SOFTWARE LICENSE FEES OR SERVICE CHARGE PAID BY BUYER TO
+* MEDIATEK FOR SUCH MEDIATEK SOFTWARE AT ISSUE.
+*
+* THE TRANSACTION CONTEMPLATED HEREUNDER SHALL BE CONSTRUED IN ACCORDANCE
+* WITH THE LAWS OF THE STATE OF CALIFORNIA, USA, EXCLUDING ITS CONFLICT OF
+* LAWS PRINCIPLES. ANY DISPUTES, CONTROVERSIES OR CLAIMS ARISING THEREOF AND
+* RELATED THERETO SHALL BE SETTLED BY ARBITRATION IN SAN FRANCISCO, CA, UNDER
+* THE RULES OF THE INTERNATIONAL CHAMBER OF COMMERCE (ICC).
+*
+*****************************************************************************/
+
+/*******************************************************************************
+ * Filename:
+ * ---------
+ * nstd_mastruct1_struct.h
+ *
+ * Project:
+ * --------
+ * MAUI
+ *
+ * Description:
+ * ------------
+ *
+ *
+ * Author:
+ * -------
+ *
+ *
+ *==============================================================================
+ * HISTORY
+ * Below this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *------------------------------------------------------------------------------
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ *------------------------------------------------------------------------------
+ * Upper this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *==============================================================================
+ *******************************************************************************/
+
+/********************************************************************************
+* Copyright Statement:
+* --------------------
+*
+* This product has been developed using a protocol stack
+* developed by Sasken Communication Technologies Limited.
+*
+********************************************************************************/
+
+
+/*******************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2002
+*
+*******************************************************************************
+ * FILENAME : nstd_mastruct1_struct.h
+ * SYNOPSIS : Functions for encoding/decoding.
+ *
+ * R E V I S I O N H I S T O R Y
+ *
+ */
+#ifndef _NSTD_MASTRUCT1_STRUCT_H
+#define _NSTD_MASTRUCT1_STRUCT_H
+
+/*Evelyn: Remove redundant header and file */
+#include "kal_general_types.h"
+
+typedef struct {
+ kal_uint8 no_ma_bit_map;
+ kal_uint8 ma_bit_map_size;
+ kal_uint8 *ma_bit_map; /* BIT MAP*/
+} mastruct1;
+#endif
+
+
diff --git a/mcu/protocol/interface/asn/rr/include/nstd_mobile_alloc_peer.h b/mcu/protocol/interface/asn/rr/include/nstd_mobile_alloc_peer.h
new file mode 100644
index 0000000..87bd5c2
--- /dev/null
+++ b/mcu/protocol/interface/asn/rr/include/nstd_mobile_alloc_peer.h
@@ -0,0 +1,121 @@
+/*****************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2005
+*
+* BY OPENING THIS FILE, BUYER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND AGREES
+* THAT THE SOFTWARE/FIRMWARE AND ITS DOCUMENTATIONS ("MEDIATEK SOFTWARE")
+* RECEIVED FROM MEDIATEK AND/OR ITS REPRESENTATIVES ARE PROVIDED TO BUYER ON
+* AN "AS-IS" BASIS ONLY. MEDIATEK EXPRESSLY DISCLAIMS ANY AND ALL WARRANTIES,
+* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF
+* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NONINFRINGEMENT.
+* NEITHER DOES MEDIATEK PROVIDE ANY WARRANTY WHATSOEVER WITH RESPECT TO THE
+* SOFTWARE OF ANY THIRD PARTY WHICH MAY BE USED BY, INCORPORATED IN, OR
+* SUPPLIED WITH THE MEDIATEK SOFTWARE, AND BUYER AGREES TO LOOK ONLY TO SUCH
+* THIRD PARTY FOR ANY WARRANTY CLAIM RELATING THERETO. MEDIATEK SHALL ALSO
+* NOT BE RESPONSIBLE FOR ANY MEDIATEK SOFTWARE RELEASES MADE TO BUYER'S
+* SPECIFICATION OR TO CONFORM TO A PARTICULAR STANDARD OR OPEN FORUM.
+*
+* BUYER'S SOLE AND EXCLUSIVE REMEDY AND MEDIATEK'S ENTIRE AND CUMULATIVE
+* LIABILITY WITH RESPECT TO THE MEDIATEK SOFTWARE RELEASED HEREUNDER WILL BE,
+* AT MEDIATEK'S OPTION, TO REVISE OR REPLACE THE MEDIATEK SOFTWARE AT ISSUE,
+* OR REFUND ANY SOFTWARE LICENSE FEES OR SERVICE CHARGE PAID BY BUYER TO
+* MEDIATEK FOR SUCH MEDIATEK SOFTWARE AT ISSUE.
+*
+* THE TRANSACTION CONTEMPLATED HEREUNDER SHALL BE CONSTRUED IN ACCORDANCE
+* WITH THE LAWS OF THE STATE OF CALIFORNIA, USA, EXCLUDING ITS CONFLICT OF
+* LAWS PRINCIPLES. ANY DISPUTES, CONTROVERSIES OR CLAIMS ARISING THEREOF AND
+* RELATED THERETO SHALL BE SETTLED BY ARBITRATION IN SAN FRANCISCO, CA, UNDER
+* THE RULES OF THE INTERNATIONAL CHAMBER OF COMMERCE (ICC).
+*
+*****************************************************************************/
+
+/******************************************************************************
+ * Filename:
+ * ---------
+ * nstd_mobile_alloc_peer.h
+ *
+ * Project:
+ * --------
+ * MAUI
+ *
+ * Description:
+ * ------------
+ *
+ * Author:
+ * -------
+ * -------
+ *
+ *=============================================================================
+ * HISTORY
+ * Below this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *------------------------------------------------------------------------------
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ *------------------------------------------------------------------------------
+ * Upper this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *=============================================================================
+ ******************************************************************************/
+
+/********************************************************************************
+* Copyright Statement:
+* --------------------
+*
+* This product has been developed using a protocol stack
+* developed by Sasken Communication Technologies Limited.
+*
+********************************************************************************/
+
+
+#ifndef _nstd_mobile_alloc_peer_H
+#define _nstd_mobile_alloc_peer_H
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#ifdef TEST_TOOL
+#include "tt_defs.h"
+#else
+#endif
+
+#ifdef TOOL
+#include "set_nstd_mobile_alloc_peer.h"
+#include "get_nstd_mobile_alloc_peer.h"
+#endif
+#ifdef __cplusplus
+}
+#endif
+
+
+
+#endif
+
+
diff --git a/mcu/protocol/interface/asn/rr/include/nstd_mobile_alloc_peer_pun.h b/mcu/protocol/interface/asn/rr/include/nstd_mobile_alloc_peer_pun.h
new file mode 100644
index 0000000..c0aa845
--- /dev/null
+++ b/mcu/protocol/interface/asn/rr/include/nstd_mobile_alloc_peer_pun.h
@@ -0,0 +1,172 @@
+/*****************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2005
+*
+* BY OPENING THIS FILE, BUYER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND AGREES
+* THAT THE SOFTWARE/FIRMWARE AND ITS DOCUMENTATIONS ("MEDIATEK SOFTWARE")
+* RECEIVED FROM MEDIATEK AND/OR ITS REPRESENTATIVES ARE PROVIDED TO BUYER ON
+* AN "AS-IS" BASIS ONLY. MEDIATEK EXPRESSLY DISCLAIMS ANY AND ALL WARRANTIES,
+* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF
+* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NONINFRINGEMENT.
+* NEITHER DOES MEDIATEK PROVIDE ANY WARRANTY WHATSOEVER WITH RESPECT TO THE
+* SOFTWARE OF ANY THIRD PARTY WHICH MAY BE USED BY, INCORPORATED IN, OR
+* SUPPLIED WITH THE MEDIATEK SOFTWARE, AND BUYER AGREES TO LOOK ONLY TO SUCH
+* THIRD PARTY FOR ANY WARRANTY CLAIM RELATING THERETO. MEDIATEK SHALL ALSO
+* NOT BE RESPONSIBLE FOR ANY MEDIATEK SOFTWARE RELEASES MADE TO BUYER'S
+* SPECIFICATION OR TO CONFORM TO A PARTICULAR STANDARD OR OPEN FORUM.
+*
+* BUYER'S SOLE AND EXCLUSIVE REMEDY AND MEDIATEK'S ENTIRE AND CUMULATIVE
+* LIABILITY WITH RESPECT TO THE MEDIATEK SOFTWARE RELEASED HEREUNDER WILL BE,
+* AT MEDIATEK'S OPTION, TO REVISE OR REPLACE THE MEDIATEK SOFTWARE AT ISSUE,
+* OR REFUND ANY SOFTWARE LICENSE FEES OR SERVICE CHARGE PAID BY BUYER TO
+* MEDIATEK FOR SUCH MEDIATEK SOFTWARE AT ISSUE.
+*
+* THE TRANSACTION CONTEMPLATED HEREUNDER SHALL BE CONSTRUED IN ACCORDANCE
+* WITH THE LAWS OF THE STATE OF CALIFORNIA, USA, EXCLUDING ITS CONFLICT OF
+* LAWS PRINCIPLES. ANY DISPUTES, CONTROVERSIES OR CLAIMS ARISING THEREOF AND
+* RELATED THERETO SHALL BE SETTLED BY ARBITRATION IN SAN FRANCISCO, CA, UNDER
+* THE RULES OF THE INTERNATIONAL CHAMBER OF COMMERCE (ICC).
+*
+*****************************************************************************/
+
+/*******************************************************************************
+ * Filename:
+ * ---------
+ * nstd_mobile_alloc_peer_pun.h
+ *
+ * Project:
+ * --------
+ * MAUI
+ *
+ * Description:
+ * ------------
+ *
+ *
+ * Author:
+ * -------
+ *
+ *
+ *==============================================================================
+ * HISTORY
+ * Below this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *------------------------------------------------------------------------------
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ *------------------------------------------------------------------------------
+ * Upper this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *==============================================================================
+ *******************************************************************************/
+
+/********************************************************************************
+* Copyright Statement:
+* --------------------
+*
+* This product has been developed using a protocol stack
+* developed by Sasken Communication Technologies Limited.
+*
+********************************************************************************/
+
+
+/*******************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2002
+*
+*******************************************************************************
+ * FILENAME : nstd_mobile_alloc_peer_pun.h
+ * SYNOPSIS : Functions for encoding/decoding.
+ *
+ * R E V I S I O N H I S T O R Y
+ *
+ */
+#ifdef MTK_PEER
+#define IMP __declspec(dllimport)
+#else
+#define IMP
+#endif
+#ifndef _NSTD_MOBILE_ALLOC_PEER_PUN_H
+#define _NSTD_MOBILE_ALLOC_PEER_PUN_H
+
+/*Evelyn: Remove redundant header and file */
+#include "kal_general_types.h"
+
+IMP unsigned int ma_bitmap_struct_bits(void *);
+IMP void ma_bitmap_struct_alloc(void *);
+IMP void ma_bitmap_struct_dealloc(void *);
+IMP unsigned int ma_bitmap_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int ma_bitmap_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int arfcn_list_struct_bits(void *);
+IMP void arfcn_list_struct_alloc(void *);
+IMP void arfcn_list_struct_dealloc(void *);
+IMP unsigned int arfcn_list_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int arfcn_list_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int arfcn_index_list_struct_bits(void *);
+IMP void arfcn_index_list_struct_alloc(void *);
+IMP void arfcn_index_list_struct_dealloc(void *);
+IMP unsigned int arfcn_index_list_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int arfcn_index_list_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int rr_rfl_num_list_peer_struct_bits(void *);
+IMP void rr_rfl_num_list_peer_struct_alloc(void *);
+IMP void rr_rfl_num_list_peer_struct_dealloc(void *);
+IMP unsigned int rr_rfl_num_list_peer_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int rr_rfl_num_list_peer_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int rfl_list_struct_bits(void *);
+IMP void rfl_list_struct_alloc(void *);
+IMP void rfl_list_struct_dealloc(void *);
+IMP unsigned int rfl_list_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int rfl_list_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int rr_gprs_mobile_alloc_peer_struct_bits(void *);
+IMP void rr_gprs_mobile_alloc_peer_struct_alloc(void *);
+IMP void rr_gprs_mobile_alloc_peer_struct_dealloc(void *);
+IMP unsigned int rr_gprs_mobile_alloc_peer_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int rr_gprs_mobile_alloc_peer_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int direct_encode2struct_bits(void *);
+IMP void direct_encode2struct_alloc(void *);
+IMP void direct_encode2struct_dealloc(void *);
+IMP unsigned int direct_encode2struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int direct_encode2struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#endif
+
+
diff --git a/mcu/protocol/interface/asn/rr/include/nstd_mobile_alloc_peer_struct.h b/mcu/protocol/interface/asn/rr/include/nstd_mobile_alloc_peer_struct.h
new file mode 100644
index 0000000..93ddd9e
--- /dev/null
+++ b/mcu/protocol/interface/asn/rr/include/nstd_mobile_alloc_peer_struct.h
@@ -0,0 +1,189 @@
+/*****************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2005
+*
+* BY OPENING THIS FILE, BUYER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND AGREES
+* THAT THE SOFTWARE/FIRMWARE AND ITS DOCUMENTATIONS ("MEDIATEK SOFTWARE")
+* RECEIVED FROM MEDIATEK AND/OR ITS REPRESENTATIVES ARE PROVIDED TO BUYER ON
+* AN "AS-IS" BASIS ONLY. MEDIATEK EXPRESSLY DISCLAIMS ANY AND ALL WARRANTIES,
+* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF
+* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NONINFRINGEMENT.
+* NEITHER DOES MEDIATEK PROVIDE ANY WARRANTY WHATSOEVER WITH RESPECT TO THE
+* SOFTWARE OF ANY THIRD PARTY WHICH MAY BE USED BY, INCORPORATED IN, OR
+* SUPPLIED WITH THE MEDIATEK SOFTWARE, AND BUYER AGREES TO LOOK ONLY TO SUCH
+* THIRD PARTY FOR ANY WARRANTY CLAIM RELATING THERETO. MEDIATEK SHALL ALSO
+* NOT BE RESPONSIBLE FOR ANY MEDIATEK SOFTWARE RELEASES MADE TO BUYER'S
+* SPECIFICATION OR TO CONFORM TO A PARTICULAR STANDARD OR OPEN FORUM.
+*
+* BUYER'S SOLE AND EXCLUSIVE REMEDY AND MEDIATEK'S ENTIRE AND CUMULATIVE
+* LIABILITY WITH RESPECT TO THE MEDIATEK SOFTWARE RELEASED HEREUNDER WILL BE,
+* AT MEDIATEK'S OPTION, TO REVISE OR REPLACE THE MEDIATEK SOFTWARE AT ISSUE,
+* OR REFUND ANY SOFTWARE LICENSE FEES OR SERVICE CHARGE PAID BY BUYER TO
+* MEDIATEK FOR SUCH MEDIATEK SOFTWARE AT ISSUE.
+*
+* THE TRANSACTION CONTEMPLATED HEREUNDER SHALL BE CONSTRUED IN ACCORDANCE
+* WITH THE LAWS OF THE STATE OF CALIFORNIA, USA, EXCLUDING ITS CONFLICT OF
+* LAWS PRINCIPLES. ANY DISPUTES, CONTROVERSIES OR CLAIMS ARISING THEREOF AND
+* RELATED THERETO SHALL BE SETTLED BY ARBITRATION IN SAN FRANCISCO, CA, UNDER
+* THE RULES OF THE INTERNATIONAL CHAMBER OF COMMERCE (ICC).
+*
+*****************************************************************************/
+
+/*******************************************************************************
+ * Filename:
+ * ---------
+ * nstd_mobile_alloc_peer_struct.h
+ *
+ * Project:
+ * --------
+ * MAUI
+ *
+ * Description:
+ * ------------
+ *
+ *
+ * Author:
+ * -------
+ *
+ *
+ *==============================================================================
+ * HISTORY
+ * Below this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *------------------------------------------------------------------------------
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ *------------------------------------------------------------------------------
+ * Upper this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *==============================================================================
+ *******************************************************************************/
+
+/********************************************************************************
+* Copyright Statement:
+* --------------------
+*
+* This product has been developed using a protocol stack
+* developed by Sasken Communication Technologies Limited.
+*
+********************************************************************************/
+
+
+/*******************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2002
+*
+*******************************************************************************
+ * FILENAME : nstd_mobile_alloc_peer_struct.h
+ * SYNOPSIS : Functions for encoding/decoding.
+ *
+ * R E V I S I O N H I S T O R Y
+ *
+ */
+#ifndef _NSTD_MOBILE_ALLOC_PEER_STRUCT_H
+#define _NSTD_MOBILE_ALLOC_PEER_STRUCT_H
+
+/*Evelyn: Remove redundant header and file */
+#include "kal_general_types.h"
+#include "rr_common_def.h"
+
+typedef struct {
+ kal_uint8 ma_length; /* MA*/
+ /* Simon 20060907: for Columbia EDGE FT: MA length 43 => 5 bits are not enough */
+ //kal_uint32 ma_bitmap_bits:5;
+ kal_uint8 ma_bitmap_bits;
+ kal_uint32 ma_bitmap; /* MA BITMAP*/
+ /* Lanslo 20060909: for Columbia EDGE FT => MAX MA length = 1 to 64 bits (MA_LENGTH field is 6 bits)*/
+ kal_uint32 ma_bitmap_2; /* MA BITMAP 2 */
+} ma_bitmap_struct;
+
+typedef struct {
+ unsigned int no_fld;
+ unsigned int fld_size;
+ kal_uint8 *fld;
+} arfcn_list_struct;
+
+typedef struct {
+ kal_uint8 arfcn_index; /* ARFCN INDEX*/
+ ispresent arfcn_index_list_choice_tag;
+ union {
+ arfcn_list_struct p_arfcn_index_list;
+ } arfcn_index_list_choice_value;
+} arfcn_index_list_struct;
+
+typedef struct {
+ unsigned int no_field;
+ unsigned int field_size;
+ kal_uint8 *field;
+} rr_rfl_num_list_peer_struct;
+
+typedef struct {
+ kal_uint8 rfl_num; /* RFL NUMBER*/
+ ispresent rfl_num_list_choice_tag;
+ union {
+ rr_rfl_num_list_peer_struct p_rfl_num_list;
+ } rfl_num_list_choice_value;
+} rfl_list_struct;
+
+typedef struct {
+ kal_uint8 hsn; /* HSN*/
+ ispresent rfl_num_list_choice_tag;
+ union {
+ rfl_list_struct p_rfl_num_list;
+ } rfl_num_list_choice_value;
+ ispresent ma_arfcn_choice_tag;
+ union {
+ ma_bitmap_struct a_ma_length_bitmap;
+ arfcn_index_list_struct p_arfcn_index_list;
+ } ma_arfcn_choice_value;
+} rr_gprs_mobile_alloc_peer_struct;
+
+typedef struct {
+ kal_uint8 maio; /* MAIO*/
+ kal_uint8 hsn; /* HSN*/
+ kal_uint8 ma_freq_list_length; /* LENGTH OF MA FREQUENCY LIST*/
+ kal_uint8 no_ma_freq_list_contents;
+ kal_uint8 ma_freq_list_contents_size;
+ kal_uint8 *ma_freq_list_contents; /* MA FREQ LIST CONTENT*/
+} direct_encode2struct;
+#endif
+
+
diff --git a/mcu/protocol/interface/asn/rr/include/nstd_pkt_meas_report.h b/mcu/protocol/interface/asn/rr/include/nstd_pkt_meas_report.h
new file mode 100644
index 0000000..110ae7d
--- /dev/null
+++ b/mcu/protocol/interface/asn/rr/include/nstd_pkt_meas_report.h
@@ -0,0 +1,132 @@
+/*****************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2005
+*
+* BY OPENING THIS FILE, BUYER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND AGREES
+* THAT THE SOFTWARE/FIRMWARE AND ITS DOCUMENTATIONS ("MEDIATEK SOFTWARE")
+* RECEIVED FROM MEDIATEK AND/OR ITS REPRESENTATIVES ARE PROVIDED TO BUYER ON
+* AN "AS-IS" BASIS ONLY. MEDIATEK EXPRESSLY DISCLAIMS ANY AND ALL WARRANTIES,
+* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF
+* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NONINFRINGEMENT.
+* NEITHER DOES MEDIATEK PROVIDE ANY WARRANTY WHATSOEVER WITH RESPECT TO THE
+* SOFTWARE OF ANY THIRD PARTY WHICH MAY BE USED BY, INCORPORATED IN, OR
+* SUPPLIED WITH THE MEDIATEK SOFTWARE, AND BUYER AGREES TO LOOK ONLY TO SUCH
+* THIRD PARTY FOR ANY WARRANTY CLAIM RELATING THERETO. MEDIATEK SHALL ALSO
+* NOT BE RESPONSIBLE FOR ANY MEDIATEK SOFTWARE RELEASES MADE TO BUYER'S
+* SPECIFICATION OR TO CONFORM TO A PARTICULAR STANDARD OR OPEN FORUM.
+*
+* BUYER'S SOLE AND EXCLUSIVE REMEDY AND MEDIATEK'S ENTIRE AND CUMULATIVE
+* LIABILITY WITH RESPECT TO THE MEDIATEK SOFTWARE RELEASED HEREUNDER WILL BE,
+* AT MEDIATEK'S OPTION, TO REVISE OR REPLACE THE MEDIATEK SOFTWARE AT ISSUE,
+* OR REFUND ANY SOFTWARE LICENSE FEES OR SERVICE CHARGE PAID BY BUYER TO
+* MEDIATEK FOR SUCH MEDIATEK SOFTWARE AT ISSUE.
+*
+* THE TRANSACTION CONTEMPLATED HEREUNDER SHALL BE CONSTRUED IN ACCORDANCE
+* WITH THE LAWS OF THE STATE OF CALIFORNIA, USA, EXCLUDING ITS CONFLICT OF
+* LAWS PRINCIPLES. ANY DISPUTES, CONTROVERSIES OR CLAIMS ARISING THEREOF AND
+* RELATED THERETO SHALL BE SETTLED BY ARBITRATION IN SAN FRANCISCO, CA, UNDER
+* THE RULES OF THE INTERNATIONAL CHAMBER OF COMMERCE (ICC).
+*
+*****************************************************************************/
+
+/*******************************************************************************
+ * Filename:
+ * ---------
+ * nstd_pkt_meas_report.h
+ *
+ * Project:
+ * --------
+ * MAUI
+ *
+ * Description:
+ * ------------
+ *
+ *
+ * Author:
+ * -------
+ *
+ *
+ *==============================================================================
+ * HISTORY
+ * Below this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *------------------------------------------------------------------------------
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ *------------------------------------------------------------------------------
+ * Upper this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *==============================================================================
+ *******************************************************************************/
+
+/********************************************************************************
+* Copyright Statement:
+* --------------------
+*
+* This product has been developed using a protocol stack
+* developed by Sasken Communication Technologies Limited.
+*
+********************************************************************************/
+
+
+
+#ifndef _nstd_pkt_meas_report_H
+#define _nstd_pkt_meas_report_H
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#ifdef TEST_TOOL
+#include "tt_defs.h"
+#else
+#include "kal_public_api.h"
+#endif
+#include "nstd_alloc_bitmap.h"
+#include "nstd_pmo.h"
+#include "gprs_rlcmac_common.h"
+#include "nstd_pkt_meas_report_struct.h"
+#include "nstd_pkt_meas_report_pun.h"
+#include "asn1lib.h"
+#ifdef TOOL
+#include "set_nstd_pkt_meas_report.h"
+#include "get_nstd_pkt_meas_report.h"
+#endif
+#ifdef __cplusplus
+}
+#endif
+
+
+
+#endif
+
diff --git a/mcu/protocol/interface/asn/rr/include/nstd_pkt_meas_report_pun.h b/mcu/protocol/interface/asn/rr/include/nstd_pkt_meas_report_pun.h
new file mode 100644
index 0000000..7801c3c
--- /dev/null
+++ b/mcu/protocol/interface/asn/rr/include/nstd_pkt_meas_report_pun.h
@@ -0,0 +1,152 @@
+/*****************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2005
+*
+* BY OPENING THIS FILE, BUYER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND AGREES
+* THAT THE SOFTWARE/FIRMWARE AND ITS DOCUMENTATIONS ("MEDIATEK SOFTWARE")
+* RECEIVED FROM MEDIATEK AND/OR ITS REPRESENTATIVES ARE PROVIDED TO BUYER ON
+* AN "AS-IS" BASIS ONLY. MEDIATEK EXPRESSLY DISCLAIMS ANY AND ALL WARRANTIES,
+* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF
+* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NONINFRINGEMENT.
+* NEITHER DOES MEDIATEK PROVIDE ANY WARRANTY WHATSOEVER WITH RESPECT TO THE
+* SOFTWARE OF ANY THIRD PARTY WHICH MAY BE USED BY, INCORPORATED IN, OR
+* SUPPLIED WITH THE MEDIATEK SOFTWARE, AND BUYER AGREES TO LOOK ONLY TO SUCH
+* THIRD PARTY FOR ANY WARRANTY CLAIM RELATING THERETO. MEDIATEK SHALL ALSO
+* NOT BE RESPONSIBLE FOR ANY MEDIATEK SOFTWARE RELEASES MADE TO BUYER'S
+* SPECIFICATION OR TO CONFORM TO A PARTICULAR STANDARD OR OPEN FORUM.
+*
+* BUYER'S SOLE AND EXCLUSIVE REMEDY AND MEDIATEK'S ENTIRE AND CUMULATIVE
+* LIABILITY WITH RESPECT TO THE MEDIATEK SOFTWARE RELEASED HEREUNDER WILL BE,
+* AT MEDIATEK'S OPTION, TO REVISE OR REPLACE THE MEDIATEK SOFTWARE AT ISSUE,
+* OR REFUND ANY SOFTWARE LICENSE FEES OR SERVICE CHARGE PAID BY BUYER TO
+* MEDIATEK FOR SUCH MEDIATEK SOFTWARE AT ISSUE.
+*
+* THE TRANSACTION CONTEMPLATED HEREUNDER SHALL BE CONSTRUED IN ACCORDANCE
+* WITH THE LAWS OF THE STATE OF CALIFORNIA, USA, EXCLUDING ITS CONFLICT OF
+* LAWS PRINCIPLES. ANY DISPUTES, CONTROVERSIES OR CLAIMS ARISING THEREOF AND
+* RELATED THERETO SHALL BE SETTLED BY ARBITRATION IN SAN FRANCISCO, CA, UNDER
+* THE RULES OF THE INTERNATIONAL CHAMBER OF COMMERCE (ICC).
+*
+*****************************************************************************/
+
+/*******************************************************************************
+ * Filename:
+ * ---------
+ * nstd_pkt_meas_report_pun.h
+ *
+ * Project:
+ * --------
+ * MAUI
+ *
+ * Description:
+ * ------------
+ *
+ *
+ * Author:
+ * -------
+ *
+ *
+ *==============================================================================
+ * HISTORY
+ * Below this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *------------------------------------------------------------------------------
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ *------------------------------------------------------------------------------
+ * Upper this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *==============================================================================
+ *******************************************************************************/
+
+/********************************************************************************
+* Copyright Statement:
+* --------------------
+*
+* This product has been developed using a protocol stack
+* developed by Sasken Communication Technologies Limited.
+*
+********************************************************************************/
+
+
+/*******************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2002
+*
+*******************************************************************************
+ * FILENAME : nstd_pkt_meas_report_pun.h
+ * SYNOPSIS : Functions for encoding/decoding.
+ *
+ * R E V I S I O N H I S T O R Y
+ *
+ */
+#ifdef MTK_PEER
+#define IMP __declspec(dllimport)
+#else
+#define IMP
+#endif
+#ifndef _NSTD_PKT_MEAS_REPORT_PUN_H
+#define _NSTD_PKT_MEAS_REPORT_PUN_H
+
+#include "kal_general_types.h"
+
+IMP unsigned int freq_bisc_struct_bits(void *);
+IMP void freq_bisc_struct_alloc(void *);
+IMP void freq_bisc_struct_dealloc(void *);
+IMP unsigned int freq_bisc_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int freq_bisc_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int nc_meas_rep_struct_bits(void *);
+IMP void nc_meas_rep_struct_alloc(void *);
+IMP void nc_meas_rep_struct_dealloc(void *);
+IMP void umts_meas_rep_struct_alloc(void *);
+IMP void umts_meas_rep_struct_dealloc(void *);
+IMP unsigned int nc_meas_rep_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int nc_meas_rep_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int umts_meas_rep_struct_pack(kal_uint8 * frame, void *mtk_d, unsigned int bit_offset);
+#endif
+
+
diff --git a/mcu/protocol/interface/asn/rr/include/nstd_pkt_meas_report_struct.h b/mcu/protocol/interface/asn/rr/include/nstd_pkt_meas_report_struct.h
new file mode 100644
index 0000000..3cd3eed
--- /dev/null
+++ b/mcu/protocol/interface/asn/rr/include/nstd_pkt_meas_report_struct.h
@@ -0,0 +1,149 @@
+/*****************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2005
+*
+* BY OPENING THIS FILE, BUYER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND AGREES
+* THAT THE SOFTWARE/FIRMWARE AND ITS DOCUMENTATIONS ("MEDIATEK SOFTWARE")
+* RECEIVED FROM MEDIATEK AND/OR ITS REPRESENTATIVES ARE PROVIDED TO BUYER ON
+* AN "AS-IS" BASIS ONLY. MEDIATEK EXPRESSLY DISCLAIMS ANY AND ALL WARRANTIES,
+* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF
+* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NONINFRINGEMENT.
+* NEITHER DOES MEDIATEK PROVIDE ANY WARRANTY WHATSOEVER WITH RESPECT TO THE
+* SOFTWARE OF ANY THIRD PARTY WHICH MAY BE USED BY, INCORPORATED IN, OR
+* SUPPLIED WITH THE MEDIATEK SOFTWARE, AND BUYER AGREES TO LOOK ONLY TO SUCH
+* THIRD PARTY FOR ANY WARRANTY CLAIM RELATING THERETO. MEDIATEK SHALL ALSO
+* NOT BE RESPONSIBLE FOR ANY MEDIATEK SOFTWARE RELEASES MADE TO BUYER'S
+* SPECIFICATION OR TO CONFORM TO A PARTICULAR STANDARD OR OPEN FORUM.
+*
+* BUYER'S SOLE AND EXCLUSIVE REMEDY AND MEDIATEK'S ENTIRE AND CUMULATIVE
+* LIABILITY WITH RESPECT TO THE MEDIATEK SOFTWARE RELEASED HEREUNDER WILL BE,
+* AT MEDIATEK'S OPTION, TO REVISE OR REPLACE THE MEDIATEK SOFTWARE AT ISSUE,
+* OR REFUND ANY SOFTWARE LICENSE FEES OR SERVICE CHARGE PAID BY BUYER TO
+* MEDIATEK FOR SUCH MEDIATEK SOFTWARE AT ISSUE.
+*
+* THE TRANSACTION CONTEMPLATED HEREUNDER SHALL BE CONSTRUED IN ACCORDANCE
+* WITH THE LAWS OF THE STATE OF CALIFORNIA, USA, EXCLUDING ITS CONFLICT OF
+* LAWS PRINCIPLES. ANY DISPUTES, CONTROVERSIES OR CLAIMS ARISING THEREOF AND
+* RELATED THERETO SHALL BE SETTLED BY ARBITRATION IN SAN FRANCISCO, CA, UNDER
+* THE RULES OF THE INTERNATIONAL CHAMBER OF COMMERCE (ICC).
+*
+*****************************************************************************/
+
+/*******************************************************************************
+ * Filename:
+ * ---------
+ * nstd_pkt_meas_report_struct.h
+ *
+ * Project:
+ * --------
+ * MAUI
+ *
+ * Description:
+ * ------------
+ *
+ *
+ * Author:
+ * -------
+ *
+ *
+ *==============================================================================
+ * HISTORY
+ * Below this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *------------------------------------------------------------------------------
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ *------------------------------------------------------------------------------
+ * Upper this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *==============================================================================
+ *******************************************************************************/
+
+/********************************************************************************
+* Copyright Statement:
+* --------------------
+*
+* This product has been developed using a protocol stack
+* developed by Sasken Communication Technologies Limited.
+*
+********************************************************************************/
+
+
+/*******************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2002
+*
+*******************************************************************************
+ * FILENAME : nstd_pkt_meas_report_struct.h
+ * SYNOPSIS : Functions for encoding/decoding.
+ *
+ * R E V I S I O N H I S T O R Y
+ *
+ */
+#ifndef _NSTD_PKT_MEAS_REPORT_STRUCT_H
+#define _NSTD_PKT_MEAS_REPORT_STRUCT_H
+
+#include "rr_common_def.h"
+#include "kal_general_types.h"
+
+typedef struct {
+ kal_uint8 frequ_encyn; /* FREQUENCY N*/
+ ispresent bsic_nchoice_tag;
+ union {
+ kal_uint8 p_bsic_n;
+ } bsic_nchoice_value;
+ kal_uint8 rxlev; /* RXLEV*/
+} freq_bisc_struct;
+
+typedef struct {
+ kal_uint8 nc_mode; /* NC MODE*/
+ kal_uint8 rxlev_serving_cell; /* RX LEVEL SERVING CELL*/
+ ispresent interf_ser_cell_choice_tag;
+ union {
+ kal_uint8 p_inter_serv_cell;
+ } interf_ser_cell_choice_value;
+ kal_uint8 no_freq_bisc1;
+ kal_uint8 freq_bisc1_size;
+ freq_bisc_struct *freq_bisc1; /* FREQBISC STRUCT*/
+} nc_meas_rep_struct;
+#endif
+
+
diff --git a/mcu/protocol/interface/asn/rr/include/nstd_pmo.h b/mcu/protocol/interface/asn/rr/include/nstd_pmo.h
new file mode 100644
index 0000000..5781b31
--- /dev/null
+++ b/mcu/protocol/interface/asn/rr/include/nstd_pmo.h
@@ -0,0 +1,120 @@
+/*****************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2005
+*
+* BY OPENING THIS FILE, BUYER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND AGREES
+* THAT THE SOFTWARE/FIRMWARE AND ITS DOCUMENTATIONS ("MEDIATEK SOFTWARE")
+* RECEIVED FROM MEDIATEK AND/OR ITS REPRESENTATIVES ARE PROVIDED TO BUYER ON
+* AN "AS-IS" BASIS ONLY. MEDIATEK EXPRESSLY DISCLAIMS ANY AND ALL WARRANTIES,
+* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF
+* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NONINFRINGEMENT.
+* NEITHER DOES MEDIATEK PROVIDE ANY WARRANTY WHATSOEVER WITH RESPECT TO THE
+* SOFTWARE OF ANY THIRD PARTY WHICH MAY BE USED BY, INCORPORATED IN, OR
+* SUPPLIED WITH THE MEDIATEK SOFTWARE, AND BUYER AGREES TO LOOK ONLY TO SUCH
+* THIRD PARTY FOR ANY WARRANTY CLAIM RELATING THERETO. MEDIATEK SHALL ALSO
+* NOT BE RESPONSIBLE FOR ANY MEDIATEK SOFTWARE RELEASES MADE TO BUYER'S
+* SPECIFICATION OR TO CONFORM TO A PARTICULAR STANDARD OR OPEN FORUM.
+*
+* BUYER'S SOLE AND EXCLUSIVE REMEDY AND MEDIATEK'S ENTIRE AND CUMULATIVE
+* LIABILITY WITH RESPECT TO THE MEDIATEK SOFTWARE RELEASED HEREUNDER WILL BE,
+* AT MEDIATEK'S OPTION, TO REVISE OR REPLACE THE MEDIATEK SOFTWARE AT ISSUE,
+* OR REFUND ANY SOFTWARE LICENSE FEES OR SERVICE CHARGE PAID BY BUYER TO
+* MEDIATEK FOR SUCH MEDIATEK SOFTWARE AT ISSUE.
+*
+* THE TRANSACTION CONTEMPLATED HEREUNDER SHALL BE CONSTRUED IN ACCORDANCE
+* WITH THE LAWS OF THE STATE OF CALIFORNIA, USA, EXCLUDING ITS CONFLICT OF
+* LAWS PRINCIPLES. ANY DISPUTES, CONTROVERSIES OR CLAIMS ARISING THEREOF AND
+* RELATED THERETO SHALL BE SETTLED BY ARBITRATION IN SAN FRANCISCO, CA, UNDER
+* THE RULES OF THE INTERNATIONAL CHAMBER OF COMMERCE (ICC).
+*
+*****************************************************************************/
+
+/******************************************************************************
+ * Filename:
+ * ---------
+ * nstd_pmo.h
+ *
+ * Project:
+ * --------
+ * MAUI
+ *
+ * Description:
+ * ------------
+ *
+ * Author:
+ * -------
+ * -------
+ *
+ *=============================================================================
+ * HISTORY
+ * Below this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *------------------------------------------------------------------------------
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ *------------------------------------------------------------------------------
+ * Upper this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *=============================================================================
+ ******************************************************************************/
+
+/********************************************************************************
+* Copyright Statement:
+* --------------------
+*
+* This product has been developed using a protocol stack
+* developed by Sasken Communication Technologies Limited.
+*
+********************************************************************************/
+
+
+#ifndef _nstd_pmo_H
+#define _nstd_pmo_H
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#ifdef TEST_TOOL
+#include "tt_defs.h"
+#endif
+
+#ifdef TOOL
+#include "set_nstd_pmo.h"
+#include "get_nstd_pmo.h"
+#endif
+#ifdef __cplusplus
+}
+#endif
+
+
+
+#endif
+
+
diff --git a/mcu/protocol/interface/asn/rr/include/nstd_pmo_pun.h b/mcu/protocol/interface/asn/rr/include/nstd_pmo_pun.h
new file mode 100644
index 0000000..7f4660c
--- /dev/null
+++ b/mcu/protocol/interface/asn/rr/include/nstd_pmo_pun.h
@@ -0,0 +1,159 @@
+/*****************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2005
+*
+* BY OPENING THIS FILE, BUYER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND AGREES
+* THAT THE SOFTWARE/FIRMWARE AND ITS DOCUMENTATIONS ("MEDIATEK SOFTWARE")
+* RECEIVED FROM MEDIATEK AND/OR ITS REPRESENTATIVES ARE PROVIDED TO BUYER ON
+* AN "AS-IS" BASIS ONLY. MEDIATEK EXPRESSLY DISCLAIMS ANY AND ALL WARRANTIES,
+* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF
+* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NONINFRINGEMENT.
+* NEITHER DOES MEDIATEK PROVIDE ANY WARRANTY WHATSOEVER WITH RESPECT TO THE
+* SOFTWARE OF ANY THIRD PARTY WHICH MAY BE USED BY, INCORPORATED IN, OR
+* SUPPLIED WITH THE MEDIATEK SOFTWARE, AND BUYER AGREES TO LOOK ONLY TO SUCH
+* THIRD PARTY FOR ANY WARRANTY CLAIM RELATING THERETO. MEDIATEK SHALL ALSO
+* NOT BE RESPONSIBLE FOR ANY MEDIATEK SOFTWARE RELEASES MADE TO BUYER'S
+* SPECIFICATION OR TO CONFORM TO A PARTICULAR STANDARD OR OPEN FORUM.
+*
+* BUYER'S SOLE AND EXCLUSIVE REMEDY AND MEDIATEK'S ENTIRE AND CUMULATIVE
+* LIABILITY WITH RESPECT TO THE MEDIATEK SOFTWARE RELEASED HEREUNDER WILL BE,
+* AT MEDIATEK'S OPTION, TO REVISE OR REPLACE THE MEDIATEK SOFTWARE AT ISSUE,
+* OR REFUND ANY SOFTWARE LICENSE FEES OR SERVICE CHARGE PAID BY BUYER TO
+* MEDIATEK FOR SUCH MEDIATEK SOFTWARE AT ISSUE.
+*
+* THE TRANSACTION CONTEMPLATED HEREUNDER SHALL BE CONSTRUED IN ACCORDANCE
+* WITH THE LAWS OF THE STATE OF CALIFORNIA, USA, EXCLUDING ITS CONFLICT OF
+* LAWS PRINCIPLES. ANY DISPUTES, CONTROVERSIES OR CLAIMS ARISING THEREOF AND
+* RELATED THERETO SHALL BE SETTLED BY ARBITRATION IN SAN FRANCISCO, CA, UNDER
+* THE RULES OF THE INTERNATIONAL CHAMBER OF COMMERCE (ICC).
+*
+*****************************************************************************/
+
+/*******************************************************************************
+ * Filename:
+ * ---------
+ * nstd_pmo_pun.h
+ *
+ * Project:
+ * --------
+ * MAUI
+ *
+ * Description:
+ * ------------
+ *
+ *
+ * Author:
+ * -------
+ *
+ *
+ *==============================================================================
+ * HISTORY
+ * Below this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *------------------------------------------------------------------------------
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ *------------------------------------------------------------------------------
+ * Upper this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *==============================================================================
+ *******************************************************************************/
+
+/********************************************************************************
+* Copyright Statement:
+* --------------------
+*
+* This product has been developed using a protocol stack
+* developed by Sasken Communication Technologies Limited.
+*
+********************************************************************************/
+
+
+/*******************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2002
+*
+*******************************************************************************
+ * FILENAME : nstd_pmo_pun.h
+ * SYNOPSIS : Functions for encoding/decoding.
+ *
+ * R E V I S I O N H I S T O R Y
+ *
+ */
+#ifdef MTK_PEER
+#define IMP __declspec(dllimport)
+#else
+#define IMP
+#endif
+#ifndef _NSTD_PMO_PUN_H
+#define _NSTD_PMO_PUN_H
+
+#include "kal_general_types.h"
+
+IMP unsigned int rmvd_freq_list_struct_bits(void *);
+IMP void rmvd_freq_list_struct_alloc(void *);
+IMP void rmvd_freq_list_struct_dealloc(void *);
+IMP unsigned int rmvd_freq_list_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int rmvd_freq_list_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int nc_freq_diff_struct_bits(void *);
+IMP void nc_freq_diff_struct_alloc(void *);
+IMP void nc_freq_diff_struct_dealloc(void *);
+IMP unsigned int nc_freq_diff_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int nc_freq_diff_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int add_freq_struct_bits(void *);
+IMP void add_freq_struct_alloc(void *);
+IMP void add_freq_struct_dealloc(void *);
+IMP unsigned int add_freq_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int add_freq_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int freq_diff_struct_bits(void *);
+IMP void freq_diff_struct_alloc(void *);
+IMP void freq_diff_struct_dealloc(void *);
+IMP unsigned int freq_diff_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int freq_diff_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int ext_freq_list_struct_bits(void *);
+IMP void ext_freq_list_struct_alloc(void *);
+IMP void ext_freq_list_struct_dealloc(void *);
+IMP unsigned int ext_freq_list_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int ext_freq_list_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#endif
+
+
diff --git a/mcu/protocol/interface/asn/rr/include/nstd_pmo_struct.h b/mcu/protocol/interface/asn/rr/include/nstd_pmo_struct.h
new file mode 100644
index 0000000..c79543b
--- /dev/null
+++ b/mcu/protocol/interface/asn/rr/include/nstd_pmo_struct.h
@@ -0,0 +1,165 @@
+/*****************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2005
+*
+* BY OPENING THIS FILE, BUYER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND AGREES
+* THAT THE SOFTWARE/FIRMWARE AND ITS DOCUMENTATIONS ("MEDIATEK SOFTWARE")
+* RECEIVED FROM MEDIATEK AND/OR ITS REPRESENTATIVES ARE PROVIDED TO BUYER ON
+* AN "AS-IS" BASIS ONLY. MEDIATEK EXPRESSLY DISCLAIMS ANY AND ALL WARRANTIES,
+* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF
+* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NONINFRINGEMENT.
+* NEITHER DOES MEDIATEK PROVIDE ANY WARRANTY WHATSOEVER WITH RESPECT TO THE
+* SOFTWARE OF ANY THIRD PARTY WHICH MAY BE USED BY, INCORPORATED IN, OR
+* SUPPLIED WITH THE MEDIATEK SOFTWARE, AND BUYER AGREES TO LOOK ONLY TO SUCH
+* THIRD PARTY FOR ANY WARRANTY CLAIM RELATING THERETO. MEDIATEK SHALL ALSO
+* NOT BE RESPONSIBLE FOR ANY MEDIATEK SOFTWARE RELEASES MADE TO BUYER'S
+* SPECIFICATION OR TO CONFORM TO A PARTICULAR STANDARD OR OPEN FORUM.
+*
+* BUYER'S SOLE AND EXCLUSIVE REMEDY AND MEDIATEK'S ENTIRE AND CUMULATIVE
+* LIABILITY WITH RESPECT TO THE MEDIATEK SOFTWARE RELEASED HEREUNDER WILL BE,
+* AT MEDIATEK'S OPTION, TO REVISE OR REPLACE THE MEDIATEK SOFTWARE AT ISSUE,
+* OR REFUND ANY SOFTWARE LICENSE FEES OR SERVICE CHARGE PAID BY BUYER TO
+* MEDIATEK FOR SUCH MEDIATEK SOFTWARE AT ISSUE.
+*
+* THE TRANSACTION CONTEMPLATED HEREUNDER SHALL BE CONSTRUED IN ACCORDANCE
+* WITH THE LAWS OF THE STATE OF CALIFORNIA, USA, EXCLUDING ITS CONFLICT OF
+* LAWS PRINCIPLES. ANY DISPUTES, CONTROVERSIES OR CLAIMS ARISING THEREOF AND
+* RELATED THERETO SHALL BE SETTLED BY ARBITRATION IN SAN FRANCISCO, CA, UNDER
+* THE RULES OF THE INTERNATIONAL CHAMBER OF COMMERCE (ICC).
+*
+*****************************************************************************/
+
+/*******************************************************************************
+ * Filename:
+ * ---------
+ * nstd_pmo_struct.h
+ *
+ * Project:
+ * --------
+ * MAUI
+ *
+ * Description:
+ * ------------
+ *
+ *
+ * Author:
+ * -------
+ *
+ *
+ *==============================================================================
+ * HISTORY
+ * Below this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *------------------------------------------------------------------------------
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ *------------------------------------------------------------------------------
+ * Upper this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *==============================================================================
+ *******************************************************************************/
+
+/********************************************************************************
+* Copyright Statement:
+* --------------------
+*
+* This product has been developed using a protocol stack
+* developed by Sasken Communication Technologies Limited.
+*
+********************************************************************************/
+
+
+/*******************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2002
+*
+*******************************************************************************
+ * FILENAME : nstd_pmo_struct.h
+ * SYNOPSIS : Functions for encoding/decoding.
+ *
+ * R E V I S I O N H I S T O R Y
+ *
+ */
+#ifndef _NSTD_PMO_STRUCT_H
+#define _NSTD_PMO_STRUCT_H
+
+#include "rr_common_def.h"
+#include "meascell_struct.h"
+#include "kal_general_types.h"
+
+typedef struct {
+ kal_uint8 no_rmvd_freq_index;
+ kal_uint8 rmvd_freq_index_size;
+ kal_uint8 *rmvd_freq_index; /* RMVD FREQ INDEX*/
+} rmvd_freq_list_struct;
+
+typedef struct {
+ kal_uint32 temp_bits:3;
+ kal_uint8 temp;
+ kal_uint8 bsic;
+ ispresent cell_sel_params_choice_tag;
+ union {
+ cell_selection_struct p_cell_sel_params;
+ } cell_sel_params_choice_value;
+} nc_freq_diff_struct;
+
+typedef struct {
+ kal_uint16 start_freq; /* START FREQUENCY*/
+ kal_uint8 bsic; /* BSIC*/
+ ispresent cell_sel_params_choice_tag;
+ union {
+ cell_selection_struct p_cell_sel_params;
+ } cell_sel_params_choice_value;
+ kal_uint8 no_freq_diff;
+ kal_uint8 freq_diff_size;
+ nc_freq_diff_struct *freq_diff;
+} add_freq_struct;
+
+typedef struct {
+ kal_uint32 temp_bits:3;
+ kal_uint8 temp; /* FREQ DIFF*/
+} freq_diff_struct;
+
+typedef struct {
+ kal_uint16 start_freq; /* START FREQUENCY*/
+ kal_uint8 no_freqdiff;
+ kal_uint8 freqdiff_size;
+ freq_diff_struct *freqdiff;
+} ext_freq_list_struct;
+#endif
+
+
diff --git a/mcu/protocol/interface/asn/rr/include/nstd_psi.h b/mcu/protocol/interface/asn/rr/include/nstd_psi.h
new file mode 100644
index 0000000..aaf6b13
--- /dev/null
+++ b/mcu/protocol/interface/asn/rr/include/nstd_psi.h
@@ -0,0 +1,130 @@
+/*****************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2005
+*
+* BY OPENING THIS FILE, BUYER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND AGREES
+* THAT THE SOFTWARE/FIRMWARE AND ITS DOCUMENTATIONS ("MEDIATEK SOFTWARE")
+* RECEIVED FROM MEDIATEK AND/OR ITS REPRESENTATIVES ARE PROVIDED TO BUYER ON
+* AN "AS-IS" BASIS ONLY. MEDIATEK EXPRESSLY DISCLAIMS ANY AND ALL WARRANTIES,
+* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF
+* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NONINFRINGEMENT.
+* NEITHER DOES MEDIATEK PROVIDE ANY WARRANTY WHATSOEVER WITH RESPECT TO THE
+* SOFTWARE OF ANY THIRD PARTY WHICH MAY BE USED BY, INCORPORATED IN, OR
+* SUPPLIED WITH THE MEDIATEK SOFTWARE, AND BUYER AGREES TO LOOK ONLY TO SUCH
+* THIRD PARTY FOR ANY WARRANTY CLAIM RELATING THERETO. MEDIATEK SHALL ALSO
+* NOT BE RESPONSIBLE FOR ANY MEDIATEK SOFTWARE RELEASES MADE TO BUYER'S
+* SPECIFICATION OR TO CONFORM TO A PARTICULAR STANDARD OR OPEN FORUM.
+*
+* BUYER'S SOLE AND EXCLUSIVE REMEDY AND MEDIATEK'S ENTIRE AND CUMULATIVE
+* LIABILITY WITH RESPECT TO THE MEDIATEK SOFTWARE RELEASED HEREUNDER WILL BE,
+* AT MEDIATEK'S OPTION, TO REVISE OR REPLACE THE MEDIATEK SOFTWARE AT ISSUE,
+* OR REFUND ANY SOFTWARE LICENSE FEES OR SERVICE CHARGE PAID BY BUYER TO
+* MEDIATEK FOR SUCH MEDIATEK SOFTWARE AT ISSUE.
+*
+* THE TRANSACTION CONTEMPLATED HEREUNDER SHALL BE CONSTRUED IN ACCORDANCE
+* WITH THE LAWS OF THE STATE OF CALIFORNIA, USA, EXCLUDING ITS CONFLICT OF
+* LAWS PRINCIPLES. ANY DISPUTES, CONTROVERSIES OR CLAIMS ARISING THEREOF AND
+* RELATED THERETO SHALL BE SETTLED BY ARBITRATION IN SAN FRANCISCO, CA, UNDER
+* THE RULES OF THE INTERNATIONAL CHAMBER OF COMMERCE (ICC).
+*
+*****************************************************************************/
+
+/******************************************************************************
+ * Filename:
+ * ---------
+ * nstd_psi.h
+ *
+ * Project:
+ * --------
+ * MAUI
+ *
+ * Description:
+ * ------------
+ *
+ * Author:
+ * -------
+ * -------
+ *
+ *=============================================================================
+ * HISTORY
+ * Below this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *------------------------------------------------------------------------------
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ *------------------------------------------------------------------------------
+ * Upper this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *=============================================================================
+ ******************************************************************************/
+
+/********************************************************************************
+* Copyright Statement:
+* --------------------
+*
+* This product has been developed using a protocol stack
+* developed by Sasken Communication Technologies Limited.
+*
+********************************************************************************/
+
+
+#ifndef _NSTD_PSI_H
+#define _NSTD_PSI_H
+
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#ifdef TEST_TOOL
+#include "tt_defs.h"
+#else
+#include "kal_public_api.h"
+#endif
+#include "rr_common_def.h"
+#include "meascell.h"
+#include "nstdpsi_struct.h"
+#include "nstdpsi_pun.h"
+#include "asn1lib.h"
+#ifdef TOOL
+#include "set_nstdpsi.h"
+#include "get_nstdpsi.h"
+#endif
+#ifdef __cplusplus
+}
+#endif
+
+
+#endif
+
+
diff --git a/mcu/protocol/interface/asn/rr/include/nstd_psi_ie.h b/mcu/protocol/interface/asn/rr/include/nstd_psi_ie.h
new file mode 100644
index 0000000..fe16ff5
--- /dev/null
+++ b/mcu/protocol/interface/asn/rr/include/nstd_psi_ie.h
@@ -0,0 +1,119 @@
+/*****************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2005
+*
+* BY OPENING THIS FILE, BUYER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND AGREES
+* THAT THE SOFTWARE/FIRMWARE AND ITS DOCUMENTATIONS ("MEDIATEK SOFTWARE")
+* RECEIVED FROM MEDIATEK AND/OR ITS REPRESENTATIVES ARE PROVIDED TO BUYER ON
+* AN "AS-IS" BASIS ONLY. MEDIATEK EXPRESSLY DISCLAIMS ANY AND ALL WARRANTIES,
+* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF
+* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NONINFRINGEMENT.
+* NEITHER DOES MEDIATEK PROVIDE ANY WARRANTY WHATSOEVER WITH RESPECT TO THE
+* SOFTWARE OF ANY THIRD PARTY WHICH MAY BE USED BY, INCORPORATED IN, OR
+* SUPPLIED WITH THE MEDIATEK SOFTWARE, AND BUYER AGREES TO LOOK ONLY TO SUCH
+* THIRD PARTY FOR ANY WARRANTY CLAIM RELATING THERETO. MEDIATEK SHALL ALSO
+* NOT BE RESPONSIBLE FOR ANY MEDIATEK SOFTWARE RELEASES MADE TO BUYER'S
+* SPECIFICATION OR TO CONFORM TO A PARTICULAR STANDARD OR OPEN FORUM.
+*
+* BUYER'S SOLE AND EXCLUSIVE REMEDY AND MEDIATEK'S ENTIRE AND CUMULATIVE
+* LIABILITY WITH RESPECT TO THE MEDIATEK SOFTWARE RELEASED HEREUNDER WILL BE,
+* AT MEDIATEK'S OPTION, TO REVISE OR REPLACE THE MEDIATEK SOFTWARE AT ISSUE,
+* OR REFUND ANY SOFTWARE LICENSE FEES OR SERVICE CHARGE PAID BY BUYER TO
+* MEDIATEK FOR SUCH MEDIATEK SOFTWARE AT ISSUE.
+*
+* THE TRANSACTION CONTEMPLATED HEREUNDER SHALL BE CONSTRUED IN ACCORDANCE
+* WITH THE LAWS OF THE STATE OF CALIFORNIA, USA, EXCLUDING ITS CONFLICT OF
+* LAWS PRINCIPLES. ANY DISPUTES, CONTROVERSIES OR CLAIMS ARISING THEREOF AND
+* RELATED THERETO SHALL BE SETTLED BY ARBITRATION IN SAN FRANCISCO, CA, UNDER
+* THE RULES OF THE INTERNATIONAL CHAMBER OF COMMERCE (ICC).
+*
+*****************************************************************************/
+
+/******************************************************************************
+ * Filename:
+ * ---------
+ * nstd_psi_ie.h
+ *
+ * Project:
+ * --------
+ * MAUI
+ *
+ * Description:
+ * ------------
+ *
+ * Author:
+ * -------
+ * -------
+ *
+ *=============================================================================
+ * HISTORY
+ * Below this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *------------------------------------------------------------------------------
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ *------------------------------------------------------------------------------
+ * Upper this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *=============================================================================
+ ******************************************************************************/
+
+/********************************************************************************
+* Copyright Statement:
+* --------------------
+*
+* This product has been developed using a protocol stack
+* developed by Sasken Communication Technologies Limited.
+*
+********************************************************************************/
+
+#ifndef _PSI_IE_H
+#define _PSI_IE_H
+
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#ifdef TEST_TOOL
+#include "tt_defs.h"
+#endif
+#ifdef TOOL
+#include "set_psi_ie.h"
+#include "get_psi_ie.h"
+#endif
+#ifdef __cplusplus
+}
+#endif
+
+
+
+#endif
+
+
diff --git a/mcu/protocol/interface/asn/rr/include/nstd_psi_ie_pun.h b/mcu/protocol/interface/asn/rr/include/nstd_psi_ie_pun.h
new file mode 100644
index 0000000..7a599ea
--- /dev/null
+++ b/mcu/protocol/interface/asn/rr/include/nstd_psi_ie_pun.h
@@ -0,0 +1,173 @@
+/*****************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2005
+*
+* BY OPENING THIS FILE, BUYER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND AGREES
+* THAT THE SOFTWARE/FIRMWARE AND ITS DOCUMENTATIONS ("MEDIATEK SOFTWARE")
+* RECEIVED FROM MEDIATEK AND/OR ITS REPRESENTATIVES ARE PROVIDED TO BUYER ON
+* AN "AS-IS" BASIS ONLY. MEDIATEK EXPRESSLY DISCLAIMS ANY AND ALL WARRANTIES,
+* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF
+* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NONINFRINGEMENT.
+* NEITHER DOES MEDIATEK PROVIDE ANY WARRANTY WHATSOEVER WITH RESPECT TO THE
+* SOFTWARE OF ANY THIRD PARTY WHICH MAY BE USED BY, INCORPORATED IN, OR
+* SUPPLIED WITH THE MEDIATEK SOFTWARE, AND BUYER AGREES TO LOOK ONLY TO SUCH
+* THIRD PARTY FOR ANY WARRANTY CLAIM RELATING THERETO. MEDIATEK SHALL ALSO
+* NOT BE RESPONSIBLE FOR ANY MEDIATEK SOFTWARE RELEASES MADE TO BUYER'S
+* SPECIFICATION OR TO CONFORM TO A PARTICULAR STANDARD OR OPEN FORUM.
+*
+* BUYER'S SOLE AND EXCLUSIVE REMEDY AND MEDIATEK'S ENTIRE AND CUMULATIVE
+* LIABILITY WITH RESPECT TO THE MEDIATEK SOFTWARE RELEASED HEREUNDER WILL BE,
+* AT MEDIATEK'S OPTION, TO REVISE OR REPLACE THE MEDIATEK SOFTWARE AT ISSUE,
+* OR REFUND ANY SOFTWARE LICENSE FEES OR SERVICE CHARGE PAID BY BUYER TO
+* MEDIATEK FOR SUCH MEDIATEK SOFTWARE AT ISSUE.
+*
+* THE TRANSACTION CONTEMPLATED HEREUNDER SHALL BE CONSTRUED IN ACCORDANCE
+* WITH THE LAWS OF THE STATE OF CALIFORNIA, USA, EXCLUDING ITS CONFLICT OF
+* LAWS PRINCIPLES. ANY DISPUTES, CONTROVERSIES OR CLAIMS ARISING THEREOF AND
+* RELATED THERETO SHALL BE SETTLED BY ARBITRATION IN SAN FRANCISCO, CA, UNDER
+* THE RULES OF THE INTERNATIONAL CHAMBER OF COMMERCE (ICC).
+*
+*****************************************************************************/
+
+/*******************************************************************************
+ * Filename:
+ * ---------
+ * nstd_psi_ie_pun.h
+ *
+ * Project:
+ * --------
+ * MAUI
+ *
+ * Description:
+ * ------------
+ *
+ *
+ * Author:
+ * -------
+ *
+ *
+ *==============================================================================
+ * HISTORY
+ * Below this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *------------------------------------------------------------------------------
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ *------------------------------------------------------------------------------
+ * Upper this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *==============================================================================
+ *******************************************************************************/
+
+/********************************************************************************
+* Copyright Statement:
+* --------------------
+*
+* This product has been developed using a protocol stack
+* developed by Sasken Communication Technologies Limited.
+*
+********************************************************************************/
+
+
+/*******************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2002
+*
+*******************************************************************************
+ * FILENAME : nstd_psi_ie_pun.h
+ * SYNOPSIS : Functions for encoding/decoding.
+ *
+ * R E V I S I O N H I S T O R Y
+ *
+ */
+#ifdef MTK_PEER
+#define IMP __declspec(dllimport)
+#else
+#define IMP
+#endif
+#ifndef _NSTD_PSI_IE_PUN_H
+#define _NSTD_PSI_IE_PUN_H
+
+/* W1043 Suggest Add for RHR */
+#include "kal_general_types.h"
+
+IMP unsigned int remain_cell_para_struct_bits(void *);
+IMP void remain_cell_para_struct_alloc(void *);
+IMP void remain_cell_para_struct_dealloc(void *);
+IMP unsigned int remain_cell_para_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int remain_cell_para_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int neighcellparastruct_bits(void *);
+IMP void neighcellparastruct_alloc(void *);
+IMP void neighcellparastruct_dealloc(void *);
+IMP unsigned int neighcellparastruct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int neighcellparastruct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define remain_cell_para_struct2_size(x) 1
+IMP unsigned int remain_cell_para_struct2_bits(void *);
+IMP void remain_cell_para_struct2_alloc(void *);
+IMP void remain_cell_para_struct2_dealloc(void *);
+IMP unsigned int remain_cell_para_struct2_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int remain_cell_para_struct2_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int structure2_bits(void *);
+IMP void structure2_alloc(void *);
+IMP void structure2_dealloc(void *);
+IMP unsigned int structure2_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int structure2_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int structure1_bits(void *);
+IMP void structure1_alloc(void *);
+IMP void structure1_dealloc(void *);
+IMP unsigned int structure1_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int structure1_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int neighparasetstruct_bits(void *);
+IMP void neighparasetstruct_alloc(void *);
+IMP void neighparasetstruct_dealloc(void *);
+IMP unsigned int neighparasetstruct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int neighparasetstruct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int neighcellpara2struct_bits(void *);
+IMP void neighcellpara2struct_alloc(void *);
+IMP void neighcellpara2struct_dealloc(void *);
+IMP unsigned int neighcellpara2struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int neighcellpara2struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#endif
+
+
diff --git a/mcu/protocol/interface/asn/rr/include/nstd_psi_ie_struct.h b/mcu/protocol/interface/asn/rr/include/nstd_psi_ie_struct.h
new file mode 100644
index 0000000..9a129fa
--- /dev/null
+++ b/mcu/protocol/interface/asn/rr/include/nstd_psi_ie_struct.h
@@ -0,0 +1,214 @@
+/*****************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2005
+*
+* BY OPENING THIS FILE, BUYER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND AGREES
+* THAT THE SOFTWARE/FIRMWARE AND ITS DOCUMENTATIONS ("MEDIATEK SOFTWARE")
+* RECEIVED FROM MEDIATEK AND/OR ITS REPRESENTATIVES ARE PROVIDED TO BUYER ON
+* AN "AS-IS" BASIS ONLY. MEDIATEK EXPRESSLY DISCLAIMS ANY AND ALL WARRANTIES,
+* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF
+* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NONINFRINGEMENT.
+* NEITHER DOES MEDIATEK PROVIDE ANY WARRANTY WHATSOEVER WITH RESPECT TO THE
+* SOFTWARE OF ANY THIRD PARTY WHICH MAY BE USED BY, INCORPORATED IN, OR
+* SUPPLIED WITH THE MEDIATEK SOFTWARE, AND BUYER AGREES TO LOOK ONLY TO SUCH
+* THIRD PARTY FOR ANY WARRANTY CLAIM RELATING THERETO. MEDIATEK SHALL ALSO
+* NOT BE RESPONSIBLE FOR ANY MEDIATEK SOFTWARE RELEASES MADE TO BUYER'S
+* SPECIFICATION OR TO CONFORM TO A PARTICULAR STANDARD OR OPEN FORUM.
+*
+* BUYER'S SOLE AND EXCLUSIVE REMEDY AND MEDIATEK'S ENTIRE AND CUMULATIVE
+* LIABILITY WITH RESPECT TO THE MEDIATEK SOFTWARE RELEASED HEREUNDER WILL BE,
+* AT MEDIATEK'S OPTION, TO REVISE OR REPLACE THE MEDIATEK SOFTWARE AT ISSUE,
+* OR REFUND ANY SOFTWARE LICENSE FEES OR SERVICE CHARGE PAID BY BUYER TO
+* MEDIATEK FOR SUCH MEDIATEK SOFTWARE AT ISSUE.
+*
+* THE TRANSACTION CONTEMPLATED HEREUNDER SHALL BE CONSTRUED IN ACCORDANCE
+* WITH THE LAWS OF THE STATE OF CALIFORNIA, USA, EXCLUDING ITS CONFLICT OF
+* LAWS PRINCIPLES. ANY DISPUTES, CONTROVERSIES OR CLAIMS ARISING THEREOF AND
+* RELATED THERETO SHALL BE SETTLED BY ARBITRATION IN SAN FRANCISCO, CA, UNDER
+* THE RULES OF THE INTERNATIONAL CHAMBER OF COMMERCE (ICC).
+*
+*****************************************************************************/
+
+/*******************************************************************************
+ * Filename:
+ * ---------
+ * nstd_psi_ie_struct.h
+ *
+ * Project:
+ * --------
+ * MAUI
+ *
+ * Description:
+ * ------------
+ *
+ *
+ * Author:
+ * -------
+ *
+ *
+ *==============================================================================
+ * HISTORY
+ * Below this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *------------------------------------------------------------------------------
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ *------------------------------------------------------------------------------
+ * Upper this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *==============================================================================
+ *******************************************************************************/
+
+/********************************************************************************
+* Copyright Statement:
+* --------------------
+*
+* This product has been developed using a protocol stack
+* developed by Sasken Communication Technologies Limited.
+*
+********************************************************************************/
+
+
+/*******************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2002
+*
+*******************************************************************************
+ * FILENAME : nstd_psi_ie_struct.h
+ * SYNOPSIS : Functions for encoding/decoding.
+ *
+ * R E V I S I O N H I S T O R Y
+ *
+ */
+#ifndef _NSTD_PSI_IE_STRUCT_H
+#define _NSTD_PSI_IE_STRUCT_H
+
+/* Suggest Add for RHR */
+#include "meascell_struct.h"
+#include "rr_common_def.h"
+/* W1043 Suggest Add for RHR */
+#include "kal_general_types.h"
+
+typedef struct {
+ kal_uint8 bsic; /* BSIC part of cell selection structure in PSI3 case*/
+ cell_selection_struct cell_selection; /* cell selection struct*/
+} remain_cell_para_struct;
+
+typedef struct {
+ kal_uint16 startfreq; /* START FREQUENCY*/
+ kal_uint8 bsic; /* BSIC*/
+ cell_selection_struct cell_selection; /* CELL SELECTION STRUCTURE*/
+ kal_uint8 freq_diff_len; /* freq. diff length*/
+ kal_uint8 no_freq_diff;
+ kal_uint8 freq_diff_size;
+ kal_uint8 *freq_diff; /* freq. diff*/
+ kal_uint8 no_remain_cell_para;
+ kal_uint8 remain_cell_para_size;
+ remain_cell_para_struct *remain_cell_para; /* remaining cell params*/
+} neighcellparastruct;
+
+typedef struct {
+ kal_uint8 same_ra_as_serv_cell;
+ kal_uint8 cell_bar_access2;
+ kal_uint8 bcc;
+} remain_cell_para_struct2;
+
+typedef struct {
+ kal_uint16 startfreq; /* START FREQUENCY*/
+ kal_uint8 rasercell; /* SAME RA SERVING CELL*/
+ kal_uint8 cellbaracc; /* CELL BAR ACCESS*/
+ kal_uint8 bcc; /* BCC*/
+ kal_uint8 freq_diff_len; /* freq. diff length*/
+ kal_uint8 no_freq_diff;
+ kal_uint8 freq_diff_size;
+ kal_uint8 *freq_diff; /* freq. diff*/
+ kal_uint8 no_remain_cell_para2;
+ kal_uint8 remain_cell_para2_size;
+ remain_cell_para_struct2 *remain_cell_para2; /* remaining cell params*/
+} structure2;
+
+typedef struct {
+ unsigned int no_secondstruct;
+ unsigned int secondstruct_size;
+ structure2 *secondstruct;
+ kal_uint8 cellparaptr; /* CELL PARA PTR*/
+} structure1;
+
+typedef struct {
+ ispresent ch232_tag;
+ union {
+ kal_uint8 ncc;
+ } ch232_value;
+ kal_uint8 excacc; /* EXC ACC*/
+ ispresent ch233_tag;
+ union {
+ kal_uint8 rxlev;
+ } ch233_value;
+ ispresent ch234_tag;
+ union {
+ kal_uint8 mstxpwr;
+ } ch234_value;
+ ispresent ch235_tag;
+ union {
+ kal_uint8 priority;
+ } ch235_value;
+ ispresent ch236_tag;
+ union {
+ kal_uint8 hcthr;
+ } ch236_value;
+ ispresent ch237_tag;
+ union {
+ si_pbcch_struct si13pbcch;
+ } ch237_value;
+ kal_uint8 gprstempoff; /* GPRS TEMP OFFSET*/
+ kal_uint8 gprspentime; /* GPRS PENALTY TIME*/
+ kal_uint8 gprsoffset; /* GPRS RESELECT OFFSET*/
+} neighparasetstruct;
+
+typedef struct {
+ kal_uint8 generation; /* GENERATION*/
+ unsigned int no_firststruct;
+ unsigned int firststruct_size;
+ structure1 *firststruct;
+ kal_uint8 max_cell_para_ptr;
+ kal_uint8 no_neighparaset;
+ kal_uint8 neighparaset_size;
+ neighparasetstruct *neighparaset; /* NEIGHPARASET*/
+} neighcellpara2struct;
+#endif
+
+
diff --git a/mcu/protocol/interface/asn/rr/include/nstd_si_9.h b/mcu/protocol/interface/asn/rr/include/nstd_si_9.h
new file mode 100644
index 0000000..cfabffa
--- /dev/null
+++ b/mcu/protocol/interface/asn/rr/include/nstd_si_9.h
@@ -0,0 +1,131 @@
+/*****************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2005
+*
+* BY OPENING THIS FILE, BUYER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND AGREES
+* THAT THE SOFTWARE/FIRMWARE AND ITS DOCUMENTATIONS ("MEDIATEK SOFTWARE")
+* RECEIVED FROM MEDIATEK AND/OR ITS REPRESENTATIVES ARE PROVIDED TO BUYER ON
+* AN "AS-IS" BASIS ONLY. MEDIATEK EXPRESSLY DISCLAIMS ANY AND ALL WARRANTIES,
+* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF
+* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NONINFRINGEMENT.
+* NEITHER DOES MEDIATEK PROVIDE ANY WARRANTY WHATSOEVER WITH RESPECT TO THE
+* SOFTWARE OF ANY THIRD PARTY WHICH MAY BE USED BY, INCORPORATED IN, OR
+* SUPPLIED WITH THE MEDIATEK SOFTWARE, AND BUYER AGREES TO LOOK ONLY TO SUCH
+* THIRD PARTY FOR ANY WARRANTY CLAIM RELATING THERETO. MEDIATEK SHALL ALSO
+* NOT BE RESPONSIBLE FOR ANY MEDIATEK SOFTWARE RELEASES MADE TO BUYER'S
+* SPECIFICATION OR TO CONFORM TO A PARTICULAR STANDARD OR OPEN FORUM.
+*
+* BUYER'S SOLE AND EXCLUSIVE REMEDY AND MEDIATEK'S ENTIRE AND CUMULATIVE
+* LIABILITY WITH RESPECT TO THE MEDIATEK SOFTWARE RELEASED HEREUNDER WILL BE,
+* AT MEDIATEK'S OPTION, TO REVISE OR REPLACE THE MEDIATEK SOFTWARE AT ISSUE,
+* OR REFUND ANY SOFTWARE LICENSE FEES OR SERVICE CHARGE PAID BY BUYER TO
+* MEDIATEK FOR SUCH MEDIATEK SOFTWARE AT ISSUE.
+*
+* THE TRANSACTION CONTEMPLATED HEREUNDER SHALL BE CONSTRUED IN ACCORDANCE
+* WITH THE LAWS OF THE STATE OF CALIFORNIA, USA, EXCLUDING ITS CONFLICT OF
+* LAWS PRINCIPLES. ANY DISPUTES, CONTROVERSIES OR CLAIMS ARISING THEREOF AND
+* RELATED THERETO SHALL BE SETTLED BY ARBITRATION IN SAN FRANCISCO, CA, UNDER
+* THE RULES OF THE INTERNATIONAL CHAMBER OF COMMERCE (ICC).
+*
+*****************************************************************************/
+
+/******************************************************************************
+ * Filename:
+ * ---------
+ * nstd_si_9.h
+ *
+ * Project:
+ * --------
+ * MAUI
+ *
+ * Description:
+ * ------------
+ *
+ * Author:
+ * -------
+ * -------
+ *
+ *=============================================================================
+ * HISTORY
+ * Below this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *------------------------------------------------------------------------------
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ *------------------------------------------------------------------------------
+ * Upper this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *=============================================================================
+ ******************************************************************************/
+
+/********************************************************************************
+* Copyright Statement:
+* --------------------
+*
+* This product has been developed using a protocol stack
+* developed by Sasken Communication Technologies Limited.
+*
+********************************************************************************/
+
+
+#ifndef _SI_9_H
+#define _SI_9_H
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#ifdef TEST_TOOL
+#include "tt_defs.h"
+#endif
+
+typedef enum {
+ INFO_TYPE_4 = 0x00,
+ INFO_TYPE_5 = 0x02,
+ INFO_TYPE_6 = 0x03
+} info_typeenum;
+
+#ifdef TOOL
+#include "set_nstd_si_9.h"
+#include "get_nstd_si_9.h"
+#endif
+#ifdef __cplusplus
+}
+#endif
+
+#endif /*_SI_9_H*/
+
diff --git a/mcu/protocol/interface/asn/rr/include/nstd_si_9_pun.h b/mcu/protocol/interface/asn/rr/include/nstd_si_9_pun.h
new file mode 100644
index 0000000..2da0be9
--- /dev/null
+++ b/mcu/protocol/interface/asn/rr/include/nstd_si_9_pun.h
@@ -0,0 +1,169 @@
+/*****************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2005
+*
+* BY OPENING THIS FILE, BUYER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND AGREES
+* THAT THE SOFTWARE/FIRMWARE AND ITS DOCUMENTATIONS ("MEDIATEK SOFTWARE")
+* RECEIVED FROM MEDIATEK AND/OR ITS REPRESENTATIVES ARE PROVIDED TO BUYER ON
+* AN "AS-IS" BASIS ONLY. MEDIATEK EXPRESSLY DISCLAIMS ANY AND ALL WARRANTIES,
+* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF
+* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NONINFRINGEMENT.
+* NEITHER DOES MEDIATEK PROVIDE ANY WARRANTY WHATSOEVER WITH RESPECT TO THE
+* SOFTWARE OF ANY THIRD PARTY WHICH MAY BE USED BY, INCORPORATED IN, OR
+* SUPPLIED WITH THE MEDIATEK SOFTWARE, AND BUYER AGREES TO LOOK ONLY TO SUCH
+* THIRD PARTY FOR ANY WARRANTY CLAIM RELATING THERETO. MEDIATEK SHALL ALSO
+* NOT BE RESPONSIBLE FOR ANY MEDIATEK SOFTWARE RELEASES MADE TO BUYER'S
+* SPECIFICATION OR TO CONFORM TO A PARTICULAR STANDARD OR OPEN FORUM.
+*
+* BUYER'S SOLE AND EXCLUSIVE REMEDY AND MEDIATEK'S ENTIRE AND CUMULATIVE
+* LIABILITY WITH RESPECT TO THE MEDIATEK SOFTWARE RELEASED HEREUNDER WILL BE,
+* AT MEDIATEK'S OPTION, TO REVISE OR REPLACE THE MEDIATEK SOFTWARE AT ISSUE,
+* OR REFUND ANY SOFTWARE LICENSE FEES OR SERVICE CHARGE PAID BY BUYER TO
+* MEDIATEK FOR SUCH MEDIATEK SOFTWARE AT ISSUE.
+*
+* THE TRANSACTION CONTEMPLATED HEREUNDER SHALL BE CONSTRUED IN ACCORDANCE
+* WITH THE LAWS OF THE STATE OF CALIFORNIA, USA, EXCLUDING ITS CONFLICT OF
+* LAWS PRINCIPLES. ANY DISPUTES, CONTROVERSIES OR CLAIMS ARISING THEREOF AND
+* RELATED THERETO SHALL BE SETTLED BY ARBITRATION IN SAN FRANCISCO, CA, UNDER
+* THE RULES OF THE INTERNATIONAL CHAMBER OF COMMERCE (ICC).
+*
+*****************************************************************************/
+
+/*******************************************************************************
+ * Filename:
+ * ---------
+ * nstd_si_9_pun.h
+ *
+ * Project:
+ * --------
+ * MAUI
+ *
+ * Description:
+ * ------------
+ *
+ *
+ * Author:
+ * -------
+ *
+ *
+ *==============================================================================
+ * HISTORY
+ * Below this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *------------------------------------------------------------------------------
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ *------------------------------------------------------------------------------
+ * Upper this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *==============================================================================
+ *******************************************************************************/
+
+/********************************************************************************
+* Copyright Statement:
+* --------------------
+*
+* This product has been developed using a protocol stack
+* developed by Sasken Communication Technologies Limited.
+*
+********************************************************************************/
+
+
+/*******************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2002
+*
+*******************************************************************************
+ * FILENAME : nstd_si_9_pun.h
+ * SYNOPSIS : Functions for encoding/decoding.
+ *
+ * R E V I S I O N H I S T O R Y
+ *
+ */
+#ifdef MTK_PEER
+#define IMP __declspec(dllimport)
+#else
+#define IMP
+#endif
+#ifndef _NSTD_SI_9_PUN_H
+#define _NSTD_SI_9_PUN_H
+
+IMP unsigned int infotype_struct_bits(void *);
+IMP void infotype_struct_alloc(void *);
+IMP void infotype_struct_dealloc(void *);
+IMP unsigned int infotype_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int infotype_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int POSITION_bits(void *);
+IMP void POSITION_alloc(void *);
+IMP void POSITION_dealloc(void *);
+IMP unsigned int POSITION_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int POSITION_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int positions_struct_bits(void *);
+IMP void positions_struct_alloc(void *);
+IMP void positions_struct_dealloc(void *);
+IMP unsigned int positions_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int positions_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int SCHEDINFO_bits(void *);
+IMP void SCHEDINFO_alloc(void *);
+IMP void SCHEDINFO_dealloc(void *);
+IMP unsigned int SCHEDINFO_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int SCHEDINFO_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int schedinfo_struct_bits(void *);
+IMP void schedinfo_struct_alloc(void *);
+IMP void schedinfo_struct_dealloc(void *);
+IMP unsigned int schedinfo_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int schedinfo_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int SI_9_REST_OCT_bits(void *);
+IMP void SI_9_REST_OCT_alloc(void *);
+IMP void SI_9_REST_OCT_dealloc(void *);
+IMP unsigned int SI_9_REST_OCT_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int SI_9_REST_OCT_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int si_9_struct_bits(void *);
+IMP void si_9_struct_alloc(void *);
+IMP void si_9_struct_dealloc(void *);
+IMP unsigned int si_9_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int si_9_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#endif
+
+
diff --git a/mcu/protocol/interface/asn/rr/include/nstd_si_9_struct.h b/mcu/protocol/interface/asn/rr/include/nstd_si_9_struct.h
new file mode 100644
index 0000000..3a6e2c1
--- /dev/null
+++ b/mcu/protocol/interface/asn/rr/include/nstd_si_9_struct.h
@@ -0,0 +1,174 @@
+/*****************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2005
+*
+* BY OPENING THIS FILE, BUYER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND AGREES
+* THAT THE SOFTWARE/FIRMWARE AND ITS DOCUMENTATIONS ("MEDIATEK SOFTWARE")
+* RECEIVED FROM MEDIATEK AND/OR ITS REPRESENTATIVES ARE PROVIDED TO BUYER ON
+* AN "AS-IS" BASIS ONLY. MEDIATEK EXPRESSLY DISCLAIMS ANY AND ALL WARRANTIES,
+* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF
+* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NONINFRINGEMENT.
+* NEITHER DOES MEDIATEK PROVIDE ANY WARRANTY WHATSOEVER WITH RESPECT TO THE
+* SOFTWARE OF ANY THIRD PARTY WHICH MAY BE USED BY, INCORPORATED IN, OR
+* SUPPLIED WITH THE MEDIATEK SOFTWARE, AND BUYER AGREES TO LOOK ONLY TO SUCH
+* THIRD PARTY FOR ANY WARRANTY CLAIM RELATING THERETO. MEDIATEK SHALL ALSO
+* NOT BE RESPONSIBLE FOR ANY MEDIATEK SOFTWARE RELEASES MADE TO BUYER'S
+* SPECIFICATION OR TO CONFORM TO A PARTICULAR STANDARD OR OPEN FORUM.
+*
+* BUYER'S SOLE AND EXCLUSIVE REMEDY AND MEDIATEK'S ENTIRE AND CUMULATIVE
+* LIABILITY WITH RESPECT TO THE MEDIATEK SOFTWARE RELEASED HEREUNDER WILL BE,
+* AT MEDIATEK'S OPTION, TO REVISE OR REPLACE THE MEDIATEK SOFTWARE AT ISSUE,
+* OR REFUND ANY SOFTWARE LICENSE FEES OR SERVICE CHARGE PAID BY BUYER TO
+* MEDIATEK FOR SUCH MEDIATEK SOFTWARE AT ISSUE.
+*
+* THE TRANSACTION CONTEMPLATED HEREUNDER SHALL BE CONSTRUED IN ACCORDANCE
+* WITH THE LAWS OF THE STATE OF CALIFORNIA, USA, EXCLUDING ITS CONFLICT OF
+* LAWS PRINCIPLES. ANY DISPUTES, CONTROVERSIES OR CLAIMS ARISING THEREOF AND
+* RELATED THERETO SHALL BE SETTLED BY ARBITRATION IN SAN FRANCISCO, CA, UNDER
+* THE RULES OF THE INTERNATIONAL CHAMBER OF COMMERCE (ICC).
+*
+*****************************************************************************/
+
+/*******************************************************************************
+ * Filename:
+ * ---------
+ * nstd_si_9_struct.h
+ *
+ * Project:
+ * --------
+ * MAUI
+ *
+ * Description:
+ * ------------
+ *
+ *
+ * Author:
+ * -------
+ *
+ *
+ *==============================================================================
+ * HISTORY
+ * Below this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *------------------------------------------------------------------------------
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ *------------------------------------------------------------------------------
+ * Upper this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *==============================================================================
+ *******************************************************************************/
+
+/********************************************************************************
+* Copyright Statement:
+* --------------------
+*
+* This product has been developed using a protocol stack
+* developed by Sasken Communication Technologies Limited.
+*
+********************************************************************************/
+
+
+/*******************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2002
+*
+*******************************************************************************
+ * FILENAME : nstd_si_9_struct.h
+ * SYNOPSIS : Functions for encoding/decoding.
+ *
+ * R E V I S I O N H I S T O R Y
+ *
+ */
+#ifndef _NSTD_SI_9_STRUCT_H
+#define _NSTD_SI_9_STRUCT_H
+
+/* Suggest Add for RHR */
+#include "nstd_si_9.h"
+#include "l3_inc_enums.h"
+#include "si_peer_struct.h"
+
+typedef struct {
+ info_typeenum ch_info_type_tag;
+ union {
+ kal_uint8 infotype4;
+ kal_uint8 infotype5;
+ kal_uint8 infotype6;
+ } ch_info_type_value;
+} infotype_struct;
+
+typedef struct {
+ kal_uint32 relpos_bits:4;
+ kal_uint16 relpos;
+ kal_uint8 bcchtype;
+} POSITION;
+
+typedef struct {
+ POSITION pos_1;
+ is_present_enum ch_position_tag;
+ union {
+ POSITION pos_2;
+ } ch_position_value;
+} positions_struct;
+
+typedef struct {
+ infotype_struct info;
+ positions_struct pos;
+} SCHEDINFO;
+
+typedef struct {
+ infotype_struct info;
+ positions_struct pos;
+ unsigned int no_schedule;
+ unsigned int schedule_size;
+ SCHEDINFO *schedule;
+} schedinfo_struct;
+
+typedef struct {
+ is_present_enum ch1_tag;
+ union {
+ schedinfo_struct schedulinginfo;
+ } ch1_value;
+} SI_9_REST_OCT;
+
+typedef struct {
+ si_9_part1of2_struct si9part1of2;
+ SI_9_REST_OCT si9part2of2;
+} si_9_struct;
+#endif
+
+
diff --git a/mcu/protocol/interface/asn/rr/include/nstd_spare_bit.h b/mcu/protocol/interface/asn/rr/include/nstd_spare_bit.h
new file mode 100644
index 0000000..d87a926
--- /dev/null
+++ b/mcu/protocol/interface/asn/rr/include/nstd_spare_bit.h
@@ -0,0 +1,119 @@
+/*****************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2005
+*
+* BY OPENING THIS FILE, BUYER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND AGREES
+* THAT THE SOFTWARE/FIRMWARE AND ITS DOCUMENTATIONS ("MEDIATEK SOFTWARE")
+* RECEIVED FROM MEDIATEK AND/OR ITS REPRESENTATIVES ARE PROVIDED TO BUYER ON
+* AN "AS-IS" BASIS ONLY. MEDIATEK EXPRESSLY DISCLAIMS ANY AND ALL WARRANTIES,
+* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF
+* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NONINFRINGEMENT.
+* NEITHER DOES MEDIATEK PROVIDE ANY WARRANTY WHATSOEVER WITH RESPECT TO THE
+* SOFTWARE OF ANY THIRD PARTY WHICH MAY BE USED BY, INCORPORATED IN, OR
+* SUPPLIED WITH THE MEDIATEK SOFTWARE, AND BUYER AGREES TO LOOK ONLY TO SUCH
+* THIRD PARTY FOR ANY WARRANTY CLAIM RELATING THERETO. MEDIATEK SHALL ALSO
+* NOT BE RESPONSIBLE FOR ANY MEDIATEK SOFTWARE RELEASES MADE TO BUYER'S
+* SPECIFICATION OR TO CONFORM TO A PARTICULAR STANDARD OR OPEN FORUM.
+*
+* BUYER'S SOLE AND EXCLUSIVE REMEDY AND MEDIATEK'S ENTIRE AND CUMULATIVE
+* LIABILITY WITH RESPECT TO THE MEDIATEK SOFTWARE RELEASED HEREUNDER WILL BE,
+* AT MEDIATEK'S OPTION, TO REVISE OR REPLACE THE MEDIATEK SOFTWARE AT ISSUE,
+* OR REFUND ANY SOFTWARE LICENSE FEES OR SERVICE CHARGE PAID BY BUYER TO
+* MEDIATEK FOR SUCH MEDIATEK SOFTWARE AT ISSUE.
+*
+* THE TRANSACTION CONTEMPLATED HEREUNDER SHALL BE CONSTRUED IN ACCORDANCE
+* WITH THE LAWS OF THE STATE OF CALIFORNIA, USA, EXCLUDING ITS CONFLICT OF
+* LAWS PRINCIPLES. ANY DISPUTES, CONTROVERSIES OR CLAIMS ARISING THEREOF AND
+* RELATED THERETO SHALL BE SETTLED BY ARBITRATION IN SAN FRANCISCO, CA, UNDER
+* THE RULES OF THE INTERNATIONAL CHAMBER OF COMMERCE (ICC).
+*
+*****************************************************************************/
+
+/******************************************************************************
+ * Filename:
+ * ---------
+ * nstd_spare_bit.h
+ *
+ * Project:
+ * --------
+ * MAUI
+ *
+ * Description:
+ * ------------
+ *
+ * Author:
+ * -------
+ * -------
+ *
+ *=============================================================================
+ * HISTORY
+ * Below this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *------------------------------------------------------------------------------
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ *------------------------------------------------------------------------------
+ * Upper this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *=============================================================================
+ ******************************************************************************/
+
+/********************************************************************************
+* Copyright Statement:
+* --------------------
+*
+* This product has been developed using a protocol stack
+* developed by Sasken Communication Technologies Limited.
+*
+********************************************************************************/
+
+
+#ifndef _SPARE_BIT_H_
+#define _SPARE_BIT_H_
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#ifdef TEST_TOOL
+#include "tt_defs.h"
+#else
+#endif
+
+#ifdef TOOL
+#include "set_spare_bit.h"
+#include "get_spare_bit.h"
+#endif
+#ifdef __cplusplus
+}
+#endif
+
+#endif
+
+
diff --git a/mcu/protocol/interface/asn/rr/include/nstd_spare_bit_pun.h b/mcu/protocol/interface/asn/rr/include/nstd_spare_bit_pun.h
new file mode 100644
index 0000000..85c427d
--- /dev/null
+++ b/mcu/protocol/interface/asn/rr/include/nstd_spare_bit_pun.h
@@ -0,0 +1,137 @@
+/*****************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2005
+*
+* BY OPENING THIS FILE, BUYER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND AGREES
+* THAT THE SOFTWARE/FIRMWARE AND ITS DOCUMENTATIONS ("MEDIATEK SOFTWARE")
+* RECEIVED FROM MEDIATEK AND/OR ITS REPRESENTATIVES ARE PROVIDED TO BUYER ON
+* AN "AS-IS" BASIS ONLY. MEDIATEK EXPRESSLY DISCLAIMS ANY AND ALL WARRANTIES,
+* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF
+* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NONINFRINGEMENT.
+* NEITHER DOES MEDIATEK PROVIDE ANY WARRANTY WHATSOEVER WITH RESPECT TO THE
+* SOFTWARE OF ANY THIRD PARTY WHICH MAY BE USED BY, INCORPORATED IN, OR
+* SUPPLIED WITH THE MEDIATEK SOFTWARE, AND BUYER AGREES TO LOOK ONLY TO SUCH
+* THIRD PARTY FOR ANY WARRANTY CLAIM RELATING THERETO. MEDIATEK SHALL ALSO
+* NOT BE RESPONSIBLE FOR ANY MEDIATEK SOFTWARE RELEASES MADE TO BUYER'S
+* SPECIFICATION OR TO CONFORM TO A PARTICULAR STANDARD OR OPEN FORUM.
+*
+* BUYER'S SOLE AND EXCLUSIVE REMEDY AND MEDIATEK'S ENTIRE AND CUMULATIVE
+* LIABILITY WITH RESPECT TO THE MEDIATEK SOFTWARE RELEASED HEREUNDER WILL BE,
+* AT MEDIATEK'S OPTION, TO REVISE OR REPLACE THE MEDIATEK SOFTWARE AT ISSUE,
+* OR REFUND ANY SOFTWARE LICENSE FEES OR SERVICE CHARGE PAID BY BUYER TO
+* MEDIATEK FOR SUCH MEDIATEK SOFTWARE AT ISSUE.
+*
+* THE TRANSACTION CONTEMPLATED HEREUNDER SHALL BE CONSTRUED IN ACCORDANCE
+* WITH THE LAWS OF THE STATE OF CALIFORNIA, USA, EXCLUDING ITS CONFLICT OF
+* LAWS PRINCIPLES. ANY DISPUTES, CONTROVERSIES OR CLAIMS ARISING THEREOF AND
+* RELATED THERETO SHALL BE SETTLED BY ARBITRATION IN SAN FRANCISCO, CA, UNDER
+* THE RULES OF THE INTERNATIONAL CHAMBER OF COMMERCE (ICC).
+*
+*****************************************************************************/
+
+/*******************************************************************************
+ * Filename:
+ * ---------
+ * nstd_spare_bit_pun.h
+ *
+ * Project:
+ * --------
+ * MAUI
+ *
+ * Description:
+ * ------------
+ *
+ *
+ * Author:
+ * -------
+ *
+ *
+ *==============================================================================
+ * HISTORY
+ * Below this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *------------------------------------------------------------------------------
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ *------------------------------------------------------------------------------
+ * Upper this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *==============================================================================
+ *******************************************************************************/
+
+/********************************************************************************
+* Copyright Statement:
+* --------------------
+*
+* This product has been developed using a protocol stack
+* developed by Sasken Communication Technologies Limited.
+*
+********************************************************************************/
+
+
+/*******************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2002
+*
+*******************************************************************************
+ * FILENAME : nstd_spare_bit_pun.h
+ * SYNOPSIS : Functions for encoding/decoding.
+ *
+ * R E V I S I O N H I S T O R Y
+ *
+ */
+#ifdef MTK_PEER
+#define IMP __declspec(dllimport)
+#else
+#define IMP
+#endif
+#ifndef _NSTD_SPARE_BIT_PUN_H
+#define _NSTD_SPARE_BIT_PUN_H
+
+/*Evelyn: Remove redundant header and file */
+#include "kal_general_types.h"
+
+#define SPARE_BIT_TYPE_size(x) 1
+IMP unsigned int SPARE_BIT_TYPE_bits(void *);
+IMP void SPARE_BIT_TYPE_alloc(void *);
+IMP void SPARE_BIT_TYPE_dealloc(void *);
+IMP unsigned int SPARE_BIT_TYPE_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int SPARE_BIT_TYPE_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#endif
+
+
diff --git a/mcu/protocol/interface/asn/rr/include/nstd_spare_bit_struct.h b/mcu/protocol/interface/asn/rr/include/nstd_spare_bit_struct.h
new file mode 100644
index 0000000..11cf6f0
--- /dev/null
+++ b/mcu/protocol/interface/asn/rr/include/nstd_spare_bit_struct.h
@@ -0,0 +1,128 @@
+/*****************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2005
+*
+* BY OPENING THIS FILE, BUYER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND AGREES
+* THAT THE SOFTWARE/FIRMWARE AND ITS DOCUMENTATIONS ("MEDIATEK SOFTWARE")
+* RECEIVED FROM MEDIATEK AND/OR ITS REPRESENTATIVES ARE PROVIDED TO BUYER ON
+* AN "AS-IS" BASIS ONLY. MEDIATEK EXPRESSLY DISCLAIMS ANY AND ALL WARRANTIES,
+* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF
+* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NONINFRINGEMENT.
+* NEITHER DOES MEDIATEK PROVIDE ANY WARRANTY WHATSOEVER WITH RESPECT TO THE
+* SOFTWARE OF ANY THIRD PARTY WHICH MAY BE USED BY, INCORPORATED IN, OR
+* SUPPLIED WITH THE MEDIATEK SOFTWARE, AND BUYER AGREES TO LOOK ONLY TO SUCH
+* THIRD PARTY FOR ANY WARRANTY CLAIM RELATING THERETO. MEDIATEK SHALL ALSO
+* NOT BE RESPONSIBLE FOR ANY MEDIATEK SOFTWARE RELEASES MADE TO BUYER'S
+* SPECIFICATION OR TO CONFORM TO A PARTICULAR STANDARD OR OPEN FORUM.
+*
+* BUYER'S SOLE AND EXCLUSIVE REMEDY AND MEDIATEK'S ENTIRE AND CUMULATIVE
+* LIABILITY WITH RESPECT TO THE MEDIATEK SOFTWARE RELEASED HEREUNDER WILL BE,
+* AT MEDIATEK'S OPTION, TO REVISE OR REPLACE THE MEDIATEK SOFTWARE AT ISSUE,
+* OR REFUND ANY SOFTWARE LICENSE FEES OR SERVICE CHARGE PAID BY BUYER TO
+* MEDIATEK FOR SUCH MEDIATEK SOFTWARE AT ISSUE.
+*
+* THE TRANSACTION CONTEMPLATED HEREUNDER SHALL BE CONSTRUED IN ACCORDANCE
+* WITH THE LAWS OF THE STATE OF CALIFORNIA, USA, EXCLUDING ITS CONFLICT OF
+* LAWS PRINCIPLES. ANY DISPUTES, CONTROVERSIES OR CLAIMS ARISING THEREOF AND
+* RELATED THERETO SHALL BE SETTLED BY ARBITRATION IN SAN FRANCISCO, CA, UNDER
+* THE RULES OF THE INTERNATIONAL CHAMBER OF COMMERCE (ICC).
+*
+*****************************************************************************/
+
+/*******************************************************************************
+ * Filename:
+ * ---------
+ * nstd_spare_bit_struct.h
+ *
+ * Project:
+ * --------
+ * MAUI
+ *
+ * Description:
+ * ------------
+ *
+ *
+ * Author:
+ * -------
+ *
+ *
+ *==============================================================================
+ * HISTORY
+ * Below this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *------------------------------------------------------------------------------
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ *------------------------------------------------------------------------------
+ * Upper this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *==============================================================================
+ *******************************************************************************/
+
+/********************************************************************************
+* Copyright Statement:
+* --------------------
+*
+* This product has been developed using a protocol stack
+* developed by Sasken Communication Technologies Limited.
+*
+********************************************************************************/
+
+
+/*******************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2002
+*
+*******************************************************************************
+ * FILENAME : nstd_spare_bit_struct.h
+ * SYNOPSIS : Functions for encoding/decoding.
+ *
+ * R E V I S I O N H I S T O R Y
+ *
+ */
+#ifndef _NSTD_SPARE_BIT_STRUCT_H
+#define _NSTD_SPARE_BIT_STRUCT_H
+
+/*Evelyn: Remove redundant header and file */
+#include "kal_general_types.h"
+
+typedef struct {
+ kal_uint8 spare_bit;
+} SPARE_BIT_TYPE;
+#endif
+
+
diff --git a/mcu/protocol/interface/asn/rr/include/ps_ho.h b/mcu/protocol/interface/asn/rr/include/ps_ho.h
new file mode 100644
index 0000000..653a92c
--- /dev/null
+++ b/mcu/protocol/interface/asn/rr/include/ps_ho.h
@@ -0,0 +1,53 @@
+/**************************************************************************
+ * *
+ * Copyright (c) 2001 Sasken Communication Technologies Limited (SASKEN) *
+ * All Rights Reserved. *
+ * *
+ * THIS IS UNPUBLISHED PROPRIETARY SOURCE CODE OF SASKEN *
+ * The above copyright notice does not evidence any actual or intended *
+ * publication of such source code. *
+ * *
+ **************************************************************************
+ *
+ * FILE NAME:
+ * SYNOPSIS :
+ *
+ */
+
+/* Evelyn 20090415: Merge R6 */
+
+#ifndef _PS_HO_H_
+#define _PS_HO_H_
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#ifdef TEST_TOOL
+#include "tt_defs.h"
+#else
+#include "kal_public_api.h"
+#endif
+#include "nstd_alloc_bitmap.h"
+
+#include "nstd_pmo.h"
+#include "gprs_rlcmac_common.h"
+#include "gprs_rlcmac_dl.h"
+#include "gprs_rlcmac_ul.h"
+#include "gprs_mtbf.h"
+
+#include "ps_ho_struct.h"
+#include "ps_ho_pun.h"
+#include "error_struct_enum.h"
+
+#ifdef TOOL
+#include "set_nstd_alloc_bitmap.h"
+#include "get_nstd_alloc_bitmap.h"
+#include "set_ps_ho.h"
+#include "get_ps_ho.h"
+#endif
+#ifdef __cplusplus
+}
+#endif
+
+#endif
diff --git a/mcu/protocol/interface/asn/rr/include/ps_ho_pun.h b/mcu/protocol/interface/asn/rr/include/ps_ho_pun.h
new file mode 100644
index 0000000..8595774
--- /dev/null
+++ b/mcu/protocol/interface/asn/rr/include/ps_ho_pun.h
@@ -0,0 +1,94 @@
+/*******************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2002
+*
+*******************************************************************************
+ * FILENAME : ps_ho_pun.h
+ * SYNOPSIS : Functions for encoding/decoding.
+ *
+ * R E V I S I O N H I S T O R Y
+ *
+ */
+
+ /* Evelyn 20090415: Merge R6 */
+
+#ifdef MTK_PEER
+#define IMP __declspec(dllimport)
+#else
+#define IMP
+#endif
+#ifndef _PS_HO_PUN_H
+#define _PS_HO_PUN_H
+#define rrc_container_ie_size(x) 1
+IMP unsigned int rrc_container_ie_bits(void *);
+IMP void rrc_container_ie_alloc(void *);
+IMP void rrc_container_ie_dealloc(void *);
+IMP unsigned int rrc_container_ie_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int rrc_container_ie_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define nas_container_ie_size(x) 1
+IMP unsigned int nas_container_ie_bits(void *);
+IMP void nas_container_ie_alloc(void *);
+IMP void nas_container_ie_dealloc(void *);
+IMP unsigned int nas_container_ie_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int nas_container_ie_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int global_and_extended_timing_adv_struct_bits(void *);
+IMP void global_and_extended_timing_adv_struct_alloc(void *);
+IMP void global_and_extended_timing_adv_struct_dealloc(void *);
+IMP unsigned int global_and_extended_timing_adv_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int global_and_extended_timing_adv_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int ps_ho_downlink_tbf_assign_struct_bits(void *);
+IMP void ps_ho_downlink_tbf_assign_struct_alloc(void *);
+IMP void ps_ho_downlink_tbf_assign_struct_dealloc(void *);
+IMP unsigned int ps_ho_downlink_tbf_assign_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int ps_ho_downlink_tbf_assign_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int ps_ho_edge_dl_struct_bits(void *);
+IMP void ps_ho_edge_dl_struct_alloc(void *);
+IMP void ps_ho_edge_dl_struct_dealloc(void *);
+IMP unsigned int ps_ho_edge_dl_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int ps_ho_edge_dl_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int ps_ho_edge_dl_exist_bits(void *);
+IMP void ps_ho_edge_dl_exist_alloc(void *);
+IMP void ps_ho_edge_dl_exist_dealloc(void *);
+IMP unsigned int ps_ho_edge_dl_exist_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int ps_ho_edge_dl_exist_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int gprs_mode_struct_bits(void *);
+IMP void gprs_mode_struct_alloc(void *);
+IMP void gprs_mode_struct_dealloc(void *);
+IMP unsigned int gprs_mode_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int gprs_mode_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int egprs_mode_struct_bits(void *);
+IMP void egprs_mode_struct_alloc(void *);
+IMP void egprs_mode_struct_dealloc(void *);
+IMP unsigned int egprs_mode_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int egprs_mode_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int ps_ho_radio_resource_struct_bits(void *);
+IMP void ps_ho_radio_resource_struct_alloc(void *);
+IMP void ps_ho_radio_resource_struct_dealloc(void *);
+IMP unsigned int ps_ho_radio_resource_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int ps_ho_radio_resource_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int ps_ho_to_geran_struct_bits(void *);
+IMP void ps_ho_to_geran_struct_alloc(void *);
+IMP void ps_ho_to_geran_struct_dealloc(void *);
+IMP unsigned int ps_ho_to_geran_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int ps_ho_to_geran_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int ps_ho_command_struct_bits(void *);
+IMP void ps_ho_command_struct_alloc(void *);
+IMP void ps_ho_command_struct_dealloc(void *);
+IMP unsigned int ps_ho_command_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int ps_ho_command_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#endif
diff --git a/mcu/protocol/interface/asn/rr/include/ps_ho_struct.h b/mcu/protocol/interface/asn/rr/include/ps_ho_struct.h
new file mode 100644
index 0000000..c81a09d
--- /dev/null
+++ b/mcu/protocol/interface/asn/rr/include/ps_ho_struct.h
@@ -0,0 +1,182 @@
+/*******************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2002
+*
+*******************************************************************************
+ * FILENAME : ps_ho_struct.h
+ * SYNOPSIS : Functions for encoding/decoding.
+ *
+ * R E V I S I O N H I S T O R Y
+ *
+ */
+
+#include "kal_general_types.h"
+#include "rr_common_def.h"
+#include "gprs_rlcmac_dl_struct.h"
+#include "gprs_rlcmac_common_struct.h"
+
+ /* Evelyn 20090415: Merge R6 */
+
+#ifndef _PS_HO_STRUCT_H
+#define _PS_HO_STRUCT_H
+
+typedef struct {
+ kal_uint8 rrc_container_length; /* RRC CONTAINER OFFSET*/
+ kal_uint8* rrc_container_data;
+} rrc_container_ie;
+
+typedef struct {
+ kal_uint8 nas_container_offset; /* NAS CONTAINER OFFSET*/
+ kal_uint8 *nas_container_data; /* NAS CONTAINER OFFSET*/
+} nas_container_ie;
+
+typedef struct {
+ global_pkt_tim_adv_struct g_pkt_tim_adv; /* GLOBAL PACKET TIMING ADVANCE*/
+ ispresent extend_tim_adv_choice_tag;
+ union {
+ kal_uint8 p_extend_tim_adv;
+ } extend_tim_adv_choice_value;
+} global_and_extended_timing_adv_struct;
+
+typedef struct {
+ kal_uint8 timeslot_alloc; /* TIMESLOT ALLOCATION*/
+ ispresent pfi_choice_tag;
+ union {
+ kal_uint8 p_pfi;
+ } pfi_choice_value;
+ kal_uint8 rlc_mode; /* RLC MODE*/
+ kal_uint8 downlink_tfi; /* DOWN LINK TFI*/
+ kal_uint8 ctrl_ack; /* CONTROL ACK*/
+ egprs_window_size_struct egprs_window; /* EDGE Window Size*/
+} ps_ho_downlink_tbf_assign_struct;
+
+typedef struct {
+ egprs_window_size_struct egprs_window; /* EDGE Window Size*/
+ kal_uint8 link_quality_mode; /* LINK QUALITY MEASUREMENT MODE*/
+ ispresent bep_period_choice_tag;
+ union {
+ kal_uint8 p_bep_period2;
+ } bep_period_choice_value;
+} ps_ho_edge_dl_struct;
+
+typedef struct {
+ ispresent ps_ho_edge_dl_choice_tag;
+ union {
+ ps_ho_edge_dl_struct p_ps_ho_edge_dl;
+ } ps_ho_edge_dl_choice_value;
+ unsigned int no_ps_ho_dl_tbf_assign;
+ unsigned int ps_ho_dl_tbf_assign_size;
+ ps_ho_downlink_tbf_assign_struct *ps_ho_dl_tbf_assign;
+} ps_ho_edge_dl_exist;
+
+typedef struct {
+ ispresent cs_choice_tag;
+ union {
+ kal_uint8 p_coding_scheme;
+ } cs_choice_value;
+ ispresent global_tn_choice_tag;
+ union {
+ timeslot_desc_struct p_global_tn;
+ } global_tn_choice_value;
+ unsigned int no_ps_ho_dl_tbf_assign;
+ unsigned int ps_ho_dl_tbf_assign_size;
+ ps_ho_downlink_tbf_assign_struct *ps_ho_dl_tbf_assign;
+} gprs_mode_struct;
+
+typedef struct {
+ ispresent egprs_window_size_choice_tag;
+ union {
+ kal_uint8 p_global_egprs_window_size;
+ } egprs_window_size_choice_value;
+ ispresent egprs_cs_choice_tag;
+ union {
+ kal_uint8 p_global_egprs_cs;
+ } egprs_cs_choice_value;
+ ispresent bep_period_choice_tag;
+ union {
+ kal_uint8 p_bep_period2;
+ } bep_period_choice_value;
+ ispresent global_tn_choice_tag;
+ union {
+ timeslot_desc_struct p_global_tn;
+ } global_tn_choice_value;
+ ispresent dl_tbf_choice_tag;
+ union {
+ ps_ho_edge_dl_exist p_dl_tbf;
+ } dl_tbf_choice_value;
+} egprs_mode_struct;
+
+typedef struct {
+ ispresent ho_ref_choice_tag;
+ union {
+ kal_uint8 p_ho_ref;
+ } ho_ref_choice_value;
+ kal_uint16 arfcn; /* ARFCN*/
+ kal_uint8 si; /* SI*/
+ kal_uint8 nci; /* NCI*/
+ kal_uint8 BSIC; /* BSIC*/
+ ispresent ccn_active_choice_tag;
+ union {
+ kal_uint8 p_ccn_active;
+ } ccn_active_choice_value;
+ ispresent utran_ccn_active_choice_tag;
+ union {
+ // need modify
+ kal_uint8 p_3g_ccn_active;
+ } utran_ccn_active_choice_value;
+ ispresent ccn_desc_choice_tag;
+ union {
+ kal_uint8 p_ccn_desc;
+ } ccn_desc_choice_value;
+ freq_params_peer_struct freq_param; /* FREQUENCY PARAMETERS*/
+ kal_uint8 NCO; /* NETWORK CONTROL MODE*/
+ ispresent timing_adv_choice_tag;
+ union {
+ global_and_extended_timing_adv_struct p_timing_adv;
+ } timing_adv_choice_value;
+ kal_uint8 extended_da; /* EXTENDED DYNAMIC ALLOCATION*/
+ kal_uint8 rlc_reset; /* RLC_RESET*/
+ ispresent p0pr_choice_tag;
+ union {
+ p0pr_mode_struct p_p0pr;
+ } p0pr_choice_value;
+ ispresent ul_ctrl_tn_choice_tag;
+ union {
+ kal_uint8 p_ul_ctrl_tn;
+ } ul_ctrl_tn_choice_value;
+ ispresent tbf_mode_choice_tag;
+ union {
+ gprs_mode_struct a_gprs_mode;
+ egprs_mode_struct p_egprs_mode;
+ } tbf_mode_choice_value;
+} ps_ho_radio_resource_struct;
+
+typedef struct {
+ ispresent rr_info_choice_tag;
+ union {
+ ps_ho_radio_resource_struct rr_info;
+ } rr_info_choice_value;
+ ispresent nas_container_choice_tag;
+ union {
+ nas_container_ie p_nas_container;
+ } nas_container_choice_value;
+} ps_ho_to_geran_struct;
+
+typedef struct {
+ header_struct header; /* HEADER*/
+ kal_uint8 msgtype; /* MSG TYPE*/
+ kal_uint8 page_mode; /* PAGE MODE*/
+ kal_uint8 msgesc1; /* MESSAGE ESCAPE*/
+ global_tfistruct global_tfi; /* GLOBAL TFI*/
+ kal_uint8 container_id; /* CONTAINER ID*/
+ ispresent ps_ho_dir_choise_tag;
+ union {
+ ps_ho_to_geran_struct ps_ho_to_geran;
+ rrc_container_ie ps_ho_to_utran;
+ } ps_ho_dir_choise_value;
+} ps_ho_command_struct;
+#endif
diff --git a/mcu/protocol/interface/asn/rr/include/psipeer.h b/mcu/protocol/interface/asn/rr/include/psipeer.h
new file mode 100644
index 0000000..b4862eb
--- /dev/null
+++ b/mcu/protocol/interface/asn/rr/include/psipeer.h
@@ -0,0 +1,122 @@
+/*****************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2005
+*
+* BY OPENING THIS FILE, BUYER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND AGREES
+* THAT THE SOFTWARE/FIRMWARE AND ITS DOCUMENTATIONS ("MEDIATEK SOFTWARE")
+* RECEIVED FROM MEDIATEK AND/OR ITS REPRESENTATIVES ARE PROVIDED TO BUYER ON
+* AN "AS-IS" BASIS ONLY. MEDIATEK EXPRESSLY DISCLAIMS ANY AND ALL WARRANTIES,
+* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF
+* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NONINFRINGEMENT.
+* NEITHER DOES MEDIATEK PROVIDE ANY WARRANTY WHATSOEVER WITH RESPECT TO THE
+* SOFTWARE OF ANY THIRD PARTY WHICH MAY BE USED BY, INCORPORATED IN, OR
+* SUPPLIED WITH THE MEDIATEK SOFTWARE, AND BUYER AGREES TO LOOK ONLY TO SUCH
+* THIRD PARTY FOR ANY WARRANTY CLAIM RELATING THERETO. MEDIATEK SHALL ALSO
+* NOT BE RESPONSIBLE FOR ANY MEDIATEK SOFTWARE RELEASES MADE TO BUYER'S
+* SPECIFICATION OR TO CONFORM TO A PARTICULAR STANDARD OR OPEN FORUM.
+*
+* BUYER'S SOLE AND EXCLUSIVE REMEDY AND MEDIATEK'S ENTIRE AND CUMULATIVE
+* LIABILITY WITH RESPECT TO THE MEDIATEK SOFTWARE RELEASED HEREUNDER WILL BE,
+* AT MEDIATEK'S OPTION, TO REVISE OR REPLACE THE MEDIATEK SOFTWARE AT ISSUE,
+* OR REFUND ANY SOFTWARE LICENSE FEES OR SERVICE CHARGE PAID BY BUYER TO
+* MEDIATEK FOR SUCH MEDIATEK SOFTWARE AT ISSUE.
+*
+* THE TRANSACTION CONTEMPLATED HEREUNDER SHALL BE CONSTRUED IN ACCORDANCE
+* WITH THE LAWS OF THE STATE OF CALIFORNIA, USA, EXCLUDING ITS CONFLICT OF
+* LAWS PRINCIPLES. ANY DISPUTES, CONTROVERSIES OR CLAIMS ARISING THEREOF AND
+* RELATED THERETO SHALL BE SETTLED BY ARBITRATION IN SAN FRANCISCO, CA, UNDER
+* THE RULES OF THE INTERNATIONAL CHAMBER OF COMMERCE (ICC).
+*
+*****************************************************************************/
+
+/******************************************************************************
+ * Filename:
+ * ---------
+ * psipeer.h
+ *
+ * Project:
+ * --------
+ * MAUI
+ *
+ * Description:
+ * ------------
+ *
+ * Author:
+ * -------
+ * -------
+ *
+ *=============================================================================
+ * HISTORY
+ * Below this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *------------------------------------------------------------------------------
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ *------------------------------------------------------------------------------
+ * Upper this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *=============================================================================
+ ******************************************************************************/
+
+/********************************************************************************
+* Copyright Statement:
+* --------------------
+*
+* This product has been developed using a protocol stack
+* developed by Sasken Communication Technologies Limited.
+*
+********************************************************************************/
+
+
+#ifndef _PSI_PEER_H
+#define _PSI_PEER_H
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#ifdef TEST_TOOL
+#include "tt_defs.h"
+#endif
+
+#ifdef TOOL
+#include "set_psipeer.h"
+#include "get_psipeer.h"
+#endif
+#ifdef __cplusplus
+}
+#endif
+
+#endif
+
+
diff --git a/mcu/protocol/interface/asn/rr/include/psipeer_pun.h b/mcu/protocol/interface/asn/rr/include/psipeer_pun.h
new file mode 100644
index 0000000..54dd4c3
--- /dev/null
+++ b/mcu/protocol/interface/asn/rr/include/psipeer_pun.h
@@ -0,0 +1,401 @@
+/*****************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2005
+*
+* BY OPENING THIS FILE, BUYER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND AGREES
+* THAT THE SOFTWARE/FIRMWARE AND ITS DOCUMENTATIONS ("MEDIATEK SOFTWARE")
+* RECEIVED FROM MEDIATEK AND/OR ITS REPRESENTATIVES ARE PROVIDED TO BUYER ON
+* AN "AS-IS" BASIS ONLY. MEDIATEK EXPRESSLY DISCLAIMS ANY AND ALL WARRANTIES,
+* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF
+* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NONINFRINGEMENT.
+* NEITHER DOES MEDIATEK PROVIDE ANY WARRANTY WHATSOEVER WITH RESPECT TO THE
+* SOFTWARE OF ANY THIRD PARTY WHICH MAY BE USED BY, INCORPORATED IN, OR
+* SUPPLIED WITH THE MEDIATEK SOFTWARE, AND BUYER AGREES TO LOOK ONLY TO SUCH
+* THIRD PARTY FOR ANY WARRANTY CLAIM RELATING THERETO. MEDIATEK SHALL ALSO
+* NOT BE RESPONSIBLE FOR ANY MEDIATEK SOFTWARE RELEASES MADE TO BUYER'S
+* SPECIFICATION OR TO CONFORM TO A PARTICULAR STANDARD OR OPEN FORUM.
+*
+* BUYER'S SOLE AND EXCLUSIVE REMEDY AND MEDIATEK'S ENTIRE AND CUMULATIVE
+* LIABILITY WITH RESPECT TO THE MEDIATEK SOFTWARE RELEASED HEREUNDER WILL BE,
+* AT MEDIATEK'S OPTION, TO REVISE OR REPLACE THE MEDIATEK SOFTWARE AT ISSUE,
+* OR REFUND ANY SOFTWARE LICENSE FEES OR SERVICE CHARGE PAID BY BUYER TO
+* MEDIATEK FOR SUCH MEDIATEK SOFTWARE AT ISSUE.
+*
+* THE TRANSACTION CONTEMPLATED HEREUNDER SHALL BE CONSTRUED IN ACCORDANCE
+* WITH THE LAWS OF THE STATE OF CALIFORNIA, USA, EXCLUDING ITS CONFLICT OF
+* LAWS PRINCIPLES. ANY DISPUTES, CONTROVERSIES OR CLAIMS ARISING THEREOF AND
+* RELATED THERETO SHALL BE SETTLED BY ARBITRATION IN SAN FRANCISCO, CA, UNDER
+* THE RULES OF THE INTERNATIONAL CHAMBER OF COMMERCE (ICC).
+*
+*****************************************************************************/
+
+/*******************************************************************************
+ * Filename:
+ * ---------
+ * psipeer_pun.h
+ *
+ * Project:
+ * --------
+ * MAUI
+ *
+ * Description:
+ * ------------
+ *
+ *
+ * Author:
+ * -------
+ *
+ *
+ *==============================================================================
+ * HISTORY
+ * Below this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *------------------------------------------------------------------------------
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ *------------------------------------------------------------------------------
+ * Upper this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *==============================================================================
+ *******************************************************************************/
+
+/********************************************************************************
+* Copyright Statement:
+* --------------------
+*
+* This product has been developed using a protocol stack
+* developed by Sasken Communication Technologies Limited.
+*
+********************************************************************************/
+
+
+/*******************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2002
+*
+*******************************************************************************
+ * FILENAME : psipeer_pun.h
+ * SYNOPSIS : Functions for encoding/decoding.
+ *
+ * R E V I S I O N H I S T O R Y
+ *
+ */
+#ifdef MTK_PEER
+#define IMP __declspec(dllimport)
+#else
+#define IMP
+#endif
+#ifndef _PSIPEER_PUN_H
+#define _PSIPEER_PUN_H
+
+#define panstruct_size(x) 2
+IMP unsigned int panstruct_bits(void *);
+IMP void panstruct_alloc(void *);
+IMP void panstruct_dealloc(void *);
+IMP unsigned int panstruct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int panstruct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define egprs_params_struct_size(x) 1
+IMP unsigned int egprs_params_struct_bits(void *);
+IMP void egprs_params_struct_alloc(void *);
+IMP void egprs_params_struct_dealloc(void *);
+IMP unsigned int egprs_params_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int egprs_params_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int extensionstruct_bits(void *);
+IMP void extensionstruct_alloc(void *);
+IMP void extensionstruct_dealloc(void *);
+IMP unsigned int extensionstruct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int extensionstruct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int gprscelloptionsstruct_bits(void *);
+IMP void gprscelloptionsstruct_alloc(void *);
+IMP void gprscelloptionsstruct_dealloc(void *);
+IMP unsigned int gprscelloptionsstruct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int gprscelloptionsstruct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define perchseqstruct_size(x) 2
+IMP unsigned int perchseqstruct_bits(void *);
+IMP void perchseqstruct_alloc(void *);
+IMP void perchseqstruct_dealloc(void *);
+IMP unsigned int perchseqstruct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int perchseqstruct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define pccchorgparamstruct_size(x) 2
+IMP unsigned int pccchorgparamstruct_bits(void *);
+IMP void pccchorgparamstruct_alloc(void *);
+IMP void pccchorgparamstruct_dealloc(void *);
+IMP unsigned int pccchorgparamstruct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int pccchorgparamstruct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define sgsnr_mscr_struct_size(x) 1
+IMP unsigned int sgsnr_mscr_struct_bits(void *);
+IMP void sgsnr_mscr_struct_alloc(void *);
+IMP void sgsnr_mscr_struct_dealloc(void *);
+IMP unsigned int sgsnr_mscr_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int sgsnr_mscr_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int psi1msg_bits(void *);
+IMP void psi1msg_alloc(void *);
+IMP void psi1msg_dealloc(void *);
+IMP unsigned int psi1msg_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int psi1msg_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define cellidentificationstruct_size(x) 8
+IMP unsigned int cellidentificationstruct_bits(void *);
+IMP void cellidentificationstruct_alloc(void *);
+IMP void cellidentificationstruct_dealloc(void *);
+IMP unsigned int cellidentificationstruct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int cellidentificationstruct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int nongprscelloption_bits(void *);
+IMP void nongprscelloption_alloc(void *);
+IMP void nongprscelloption_dealloc(void *);
+IMP unsigned int nongprscelloption_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int nongprscelloption_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int reffreqstruct_bits(void *);
+IMP void reffreqstruct_alloc(void *);
+IMP void reffreqstruct_dealloc(void *);
+IMP unsigned int reffreqstruct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int reffreqstruct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int reffreqliststruct_bits(void *);
+IMP void reffreqliststruct_alloc(void *);
+IMP void reffreqliststruct_dealloc(void *);
+IMP unsigned int reffreqliststruct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int reffreqliststruct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int cellallocationliststruct_bits(void *);
+IMP void cellallocationliststruct_alloc(void *);
+IMP void cellallocationliststruct_dealloc(void *);
+IMP unsigned int cellallocationliststruct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int cellallocationliststruct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int gprsmobileallocationsstruct_bits(void *);
+IMP void gprsmobileallocationsstruct_alloc(void *);
+IMP void gprsmobileallocationsstruct_dealloc(void *);
+IMP unsigned int gprsmobileallocationsstruct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int gprsmobileallocationsstruct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int gprsmobileallocationsliststruct_bits(void *);
+IMP void gprsmobileallocationsliststruct_alloc(void *);
+IMP void gprsmobileallocationsliststruct_dealloc(void *);
+IMP unsigned int gprsmobileallocationsliststruct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int gprsmobileallocationsliststruct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define nonhoppingpcccchstruct_size(x) 3
+IMP unsigned int nonhoppingpcccchstruct_bits(void *);
+IMP void nonhoppingpcccchstruct_alloc(void *);
+IMP void nonhoppingpcccchstruct_dealloc(void *);
+IMP unsigned int nonhoppingpcccchstruct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int nonhoppingpcccchstruct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int nonhoppingpccchlist_bits(void *);
+IMP void nonhoppingpccchlist_alloc(void *);
+IMP void nonhoppingpccchlist_dealloc(void *);
+IMP unsigned int nonhoppingpccchlist_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int nonhoppingpccchlist_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define hoppingpccchstruct_size(x) 2
+IMP unsigned int hoppingpccchstruct_bits(void *);
+IMP void hoppingpccchstruct_alloc(void *);
+IMP void hoppingpccchstruct_dealloc(void *);
+IMP unsigned int hoppingpccchstruct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int hoppingpccchstruct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int hoppingpccchlist_bits(void *);
+IMP void hoppingpccchlist_alloc(void *);
+IMP void hoppingpccchlist_dealloc(void *);
+IMP unsigned int hoppingpccchlist_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int hoppingpccchlist_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int mahoppingpccchlist_bits(void *);
+IMP void mahoppingpccchlist_alloc(void *);
+IMP void mahoppingpccchlist_dealloc(void *);
+IMP unsigned int mahoppingpccchlist_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int mahoppingpccchlist_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int pccchstruct_bits(void *);
+IMP void pccchstruct_alloc(void *);
+IMP void pccchstruct_dealloc(void *);
+IMP unsigned int pccchstruct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int pccchstruct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int pccchdesliststruct_bits(void *);
+IMP void pccchdesliststruct_alloc(void *);
+IMP void pccchdesliststruct_dealloc(void *);
+IMP unsigned int pccchdesliststruct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int pccchdesliststruct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int psi2msg_bits(void *);
+IMP void psi2msg_alloc(void *);
+IMP void psi2msg_dealloc(void *);
+IMP unsigned int psi2msg_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int psi2msg_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int sercellparastruct_bits(void *);
+IMP void sercellparastruct_alloc(void *);
+IMP void sercellparastruct_dealloc(void *);
+IMP unsigned int sercellparastruct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int sercellparastruct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int gencellparastruct_bits(void *);
+IMP void gencellparastruct_alloc(void *);
+IMP void gencellparastruct_dealloc(void *);
+IMP unsigned int gencellparastruct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int gencellparastruct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int psi3msg_bits(void *);
+IMP void psi3msg_alloc(void *);
+IMP void psi3msg_dealloc(void *);
+IMP unsigned int psi3msg_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int psi3msg_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define chgrpstruct_size(x) 2
+IMP unsigned int chgrpstruct_bits(void *);
+IMP void chgrpstruct_alloc(void *);
+IMP void chgrpstruct_dealloc(void *);
+IMP unsigned int chgrpstruct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int chgrpstruct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int channelgroupstruct_bits(void *);
+IMP void channelgroupstruct_alloc(void *);
+IMP void channelgroupstruct_dealloc(void *);
+IMP unsigned int channelgroupstruct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int channelgroupstruct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int psi4msg_bits(void *);
+IMP void psi4msg_alloc(void *);
+IMP void psi4msg_dealloc(void *);
+IMP unsigned int psi4msg_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int psi4msg_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int nc_meas_para_struct_bits(void *);
+IMP void nc_meas_para_struct_alloc(void *);
+IMP void nc_meas_para_struct_dealloc(void *);
+IMP unsigned int nc_meas_para_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int nc_meas_para_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int psi5msg_bits(void *);
+IMP void psi5msg_alloc(void *);
+IMP void psi5msg_dealloc(void *);
+IMP unsigned int psi5msg_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int psi5msg_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int psimsgstruct_bits(void *);
+IMP void psimsgstruct_alloc(void *);
+IMP void psimsgstruct_dealloc(void *);
+IMP unsigned int psimsgstruct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int psimsgstruct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int bcchcarstruct_bits(void *);
+IMP void bcchcarstruct_alloc(void *);
+IMP void bcchcarstruct_dealloc(void *);
+IMP unsigned int bcchcarstruct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int bcchcarstruct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int pbcchdescstruct_bits(void *);
+IMP void pbcchdescstruct_alloc(void *);
+IMP void pbcchdescstruct_dealloc(void *);
+IMP unsigned int pbcchdescstruct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int pbcchdescstruct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define pwrcontparastruct_size(x) 3
+IMP unsigned int pwrcontparastruct_bits(void *);
+IMP void pwrcontparastruct_alloc(void *);
+IMP void pwrcontparastruct_dealloc(void *);
+IMP unsigned int pwrcontparastruct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int pwrcontparastruct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int apbcchstruct_bits(void *);
+IMP void apbcchstruct_alloc(void *);
+IMP void apbcchstruct_dealloc(void *);
+IMP unsigned int apbcchstruct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int apbcchstruct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int ppbcchstruct_bits(void *);
+IMP void ppbcchstruct_alloc(void *);
+IMP void ppbcchstruct_dealloc(void *);
+IMP unsigned int ppbcchstruct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int ppbcchstruct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int psi13msg_bits(void *);
+IMP void psi13msg_alloc(void *);
+IMP void psi13msg_dealloc(void *);
+IMP unsigned int psi13msg_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int psi13msg_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int psixstruct_bits(void *);
+IMP void psixstruct_alloc(void *);
+IMP void psixstruct_dealloc(void *);
+IMP unsigned int psixstruct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int psixstruct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int psimsgliststruct1_bits(void *);
+IMP void psimsgliststruct1_alloc(void *);
+IMP void psimsgliststruct1_dealloc(void *);
+IMP unsigned int psimsgliststruct1_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int psimsgliststruct1_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int psimsgliststruct_bits(void *);
+IMP void psimsgliststruct_alloc(void *);
+IMP void psimsgliststruct_dealloc(void *);
+IMP unsigned int psimsgliststruct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int psimsgliststruct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int unpsimsgliststruct_bits(void *);
+IMP void unpsimsgliststruct_alloc(void *);
+IMP void unpsimsgliststruct_dealloc(void *);
+IMP unsigned int unpsimsgliststruct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int unpsimsgliststruct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int pktpsistatus_bits(void *);
+IMP void pktpsistatus_alloc(void *);
+IMP void pktpsistatus_dealloc(void *);
+IMP unsigned int pktpsistatus_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int pktpsistatus_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int psi3bismsg_bits(void *);
+IMP void psi3bismsg_alloc(void *);
+IMP void psi3bismsg_dealloc(void *);
+IMP unsigned int psi3bismsg_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int psi3bismsg_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#endif
+
+
diff --git a/mcu/protocol/interface/asn/rr/include/psipeer_struct.h b/mcu/protocol/interface/asn/rr/include/psipeer_struct.h
new file mode 100644
index 0000000..e535dd4
--- /dev/null
+++ b/mcu/protocol/interface/asn/rr/include/psipeer_struct.h
@@ -0,0 +1,547 @@
+/*****************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2005
+*
+* BY OPENING THIS FILE, BUYER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND AGREES
+* THAT THE SOFTWARE/FIRMWARE AND ITS DOCUMENTATIONS ("MEDIATEK SOFTWARE")
+* RECEIVED FROM MEDIATEK AND/OR ITS REPRESENTATIVES ARE PROVIDED TO BUYER ON
+* AN "AS-IS" BASIS ONLY. MEDIATEK EXPRESSLY DISCLAIMS ANY AND ALL WARRANTIES,
+* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF
+* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NONINFRINGEMENT.
+* NEITHER DOES MEDIATEK PROVIDE ANY WARRANTY WHATSOEVER WITH RESPECT TO THE
+* SOFTWARE OF ANY THIRD PARTY WHICH MAY BE USED BY, INCORPORATED IN, OR
+* SUPPLIED WITH THE MEDIATEK SOFTWARE, AND BUYER AGREES TO LOOK ONLY TO SUCH
+* THIRD PARTY FOR ANY WARRANTY CLAIM RELATING THERETO. MEDIATEK SHALL ALSO
+* NOT BE RESPONSIBLE FOR ANY MEDIATEK SOFTWARE RELEASES MADE TO BUYER'S
+* SPECIFICATION OR TO CONFORM TO A PARTICULAR STANDARD OR OPEN FORUM.
+*
+* BUYER'S SOLE AND EXCLUSIVE REMEDY AND MEDIATEK'S ENTIRE AND CUMULATIVE
+* LIABILITY WITH RESPECT TO THE MEDIATEK SOFTWARE RELEASED HEREUNDER WILL BE,
+* AT MEDIATEK'S OPTION, TO REVISE OR REPLACE THE MEDIATEK SOFTWARE AT ISSUE,
+* OR REFUND ANY SOFTWARE LICENSE FEES OR SERVICE CHARGE PAID BY BUYER TO
+* MEDIATEK FOR SUCH MEDIATEK SOFTWARE AT ISSUE.
+*
+* THE TRANSACTION CONTEMPLATED HEREUNDER SHALL BE CONSTRUED IN ACCORDANCE
+* WITH THE LAWS OF THE STATE OF CALIFORNIA, USA, EXCLUDING ITS CONFLICT OF
+* LAWS PRINCIPLES. ANY DISPUTES, CONTROVERSIES OR CLAIMS ARISING THEREOF AND
+* RELATED THERETO SHALL BE SETTLED BY ARBITRATION IN SAN FRANCISCO, CA, UNDER
+* THE RULES OF THE INTERNATIONAL CHAMBER OF COMMERCE (ICC).
+*
+*****************************************************************************/
+
+/*******************************************************************************
+ * Filename:
+ * ---------
+ * psipeer_struct.h
+ *
+ * Project:
+ * --------
+ * MAUI
+ *
+ * Description:
+ * ------------
+ *
+ *
+ * Author:
+ * -------
+ *
+ *
+ *==============================================================================
+ * HISTORY
+ * Below this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *------------------------------------------------------------------------------
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ *------------------------------------------------------------------------------
+ * Upper this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *==============================================================================
+ *******************************************************************************/
+
+/********************************************************************************
+* Copyright Statement:
+* --------------------
+*
+* This product has been developed using a protocol stack
+* developed by Sasken Communication Technologies Limited.
+*
+********************************************************************************/
+
+
+/*******************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2002
+*
+*******************************************************************************
+ * FILENAME : psipeer_struct.h
+ * SYNOPSIS : Functions for encoding/decoding.
+ *
+ * R E V I S I O N H I S T O R Y
+ *
+ */
+#ifndef _PSIPEER_STRUCT_H
+#define _PSIPEER_STRUCT_H
+
+/* Suggest Add for RHR */
+#include "rr_common_def.h"
+#include "gprs_rlcmac_common_struct.h"
+#include "gprs_rlcmac_peer_struct.h"
+#include "gprs_rlcmac_dl_struct.h"
+#include "nstd_gprsmobileiestruct_struct.h"
+#include "meascell_struct.h"
+#include "nstd_psi_ie_struct.h"
+
+typedef struct {
+ kal_uint8 pan_dec; /* PAN_DEC*/
+ kal_uint8 pan_inc; /* PAN_INC*/
+ kal_uint8 pan_max; /* PAN_MAX*/
+} panstruct;
+
+typedef struct {
+ kal_uint8 egprs_pkt_channel_req; /* EGPRS PACKET CHANNEL REQUEST*/
+ kal_uint8 bep_period; /* BEP_PERIOD*/
+} egprs_params_struct;
+
+typedef struct {
+ kal_uint8 extension_len; /* EXTENSION LEN*/
+ ispresent egprs_info_choice_tag;
+ union {
+ egprs_params_struct p_egprs_info;
+ } egprs_info_choice_value;
+ kal_uint8 pfc_feature_mode; /* PFC FEATURE MODE*/
+ kal_uint8 DTM_support; /* DTM SUPPORT*/
+ kal_uint8 bss_paging_coord; /* BSS PAGING COORDINATION*/
+} extensionstruct;
+
+typedef struct {
+ kal_uint8 nmo; /* NMO*/
+ kal_uint8 t3168; /* T3168*/
+ kal_uint8 t3192; /* T3192*/
+ kal_uint8 drx_timer_max; /* DRX_TIMER_MAX*/
+ kal_uint8 access_burst_type; /* ACCESS_BURST_TYPE*/
+ kal_uint8 control_ack_type; /* CONTROL_ACK_TYPE*/
+ kal_uint8 bs_cv_max; /* BS_CV_MAX*/
+ ispresent ch201_tag;
+ union {
+ panstruct ppanstruct;
+ } ch201_value;
+ ispresent ch202_tag;
+ union {
+ extensionstruct pextension;
+ } ch202_value;
+} gprscelloptionsstruct;
+
+typedef struct {
+ kal_uint8 perslvlseq[4];
+} perchseqstruct;
+
+typedef struct {
+ kal_uint8 bspcc; /* BS_PCC_REL*/
+ kal_uint8 bspbcch; /* BS_PBCCH_BLKS*/
+ kal_uint8 bspag; /* BS_PAGE_BLKS_RES*/
+ kal_uint8 bsprach; /* BS_PRACH_BLKS*/
+} pccchorgparamstruct;
+
+typedef struct {
+ kal_uint8 mscr; /* 1*/
+ kal_uint8 sgsnr; /* 1*/
+} sgsnr_mscr_struct;
+
+typedef struct {
+ header_struct header; /* HEADERSTRUCT*/
+ kal_uint8 msgtype; /* msgtype*/
+ kal_uint8 pagemode; /* PAGE MODE*/
+ kal_uint8 pbcchchangemark; /* PBCCH CHANGE MARK*/
+ kal_uint8 psichangefield; /* PSI CHANGE FIELD*/
+ kal_uint8 psi1repeatfield; /* PSI1 REPEAT FIELD*/
+ kal_uint8 psicountlr; /* PSI COUNT LR*/
+ ispresent ch204_tag;
+ union {
+ kal_uint8 ppsicount;
+ } ch204_value;
+ kal_uint8 measurementorder; /* MEASUREMENT ORDER*/
+ gprscelloptionsstruct gprscelloptions; /* GPRS CELL OPTIONS*/
+ prach_ctrl_params_struct prachcontrolparam; /* PRACH CONTROL PARAMETERS*/
+ pccchorgparamstruct pccchorgparam; /* PRACH ORGANISATION PARAMETERS*/
+ global_pwr_ctrl_params_struct globalpowerctlpar; /* GLOBAL POWER CONTROL PARAMETERS*/
+ kal_uint8 psi_status_ind; /* PSI STATUS IND*/
+ ispresent chnwrel_tag;
+ union {
+ sgsnr_mscr_struct psgsnr;
+ } chnwrel_value;
+} psi1msg;
+
+typedef struct {
+ kal_uint8 location_area_identification[5];
+ kal_uint8 rac; /* ROUTING AREA CODE*/
+ kal_uint16 cell_identity; /* CELL IDENTITY*/
+} cellidentificationstruct;
+
+typedef struct {
+ kal_uint8 att; /* ATTACH/DETACH ALLOWED*/
+ ispresent ch205_tag;
+ union {
+ kal_uint8 pt3212;
+ } ch205_value;
+ kal_uint8 neci; /* HALF RATE SUPPORT*/
+ kal_uint8 pwrc; /* POWER CONTROL INDICATOR*/
+ kal_uint8 dtx; /* DTX INDICATOR*/
+ kal_uint8 radiolink_timeout; /* TIMER FOR RR CONNECTION*/
+ kal_uint8 bs_agblks_res; /* BLOCKS RESERVED FOR ACCESS
+ GRANT*/
+ kal_uint8 ccch_conf; /* CHANNELS CONFIGURATION FOR
+ CCCH*/
+ kal_uint8 bs_pa_mfrms; /* NO OF 51 M-FRAMES BETWEEN
+ PAGING*/
+ kal_uint8 max_retrans; /* MAX NO OF RETRANSMISSIONS*/
+ kal_uint8 tx_integer; /* NO OF SLOTS TO SPREAD TX*/
+ kal_uint8 ec; /* EMERGENCY CALL ALLOWED*/
+ kal_uint8 ms_tx_pwr; /* MAXIMUM TX POWER LEVEL*/
+ ispresent ch206_tag;
+ union {
+ extensionstruct pextension;
+ } ch206_value;
+} nongprscelloption;
+
+typedef struct {
+ kal_uint8 rfl_number; /* RFL NUMBER*/
+ kal_uint8 no_rfl_contents;
+ kal_uint8 rfl_contents_size;
+ kal_uint8 *rfl_contents; /* RFL CONTENTS*/
+} reffreqstruct;
+
+typedef struct {
+ unsigned int no_reffreqlist;
+ unsigned int reffreqlist_size;
+ reffreqstruct *reffreqlist;
+} reffreqliststruct;
+
+typedef struct {
+ unsigned int no_cellalloc;
+ unsigned int cellalloc_size;
+ kal_uint8 *cellalloc;
+} cellallocationliststruct;
+
+typedef struct {
+ kal_uint8 manumber; /* MANUMBER*/
+ gprsmobileiestruct gprsmobileie; /* GPRSMOBILEIESTRUCT*/
+} gprsmobileallocationsstruct;
+
+typedef struct {
+ unsigned int no_gprsmobile;
+ unsigned int gprsmobile_size;
+ gprsmobileallocationsstruct *gprsmobile;
+} gprsmobileallocationsliststruct;
+
+typedef struct {
+ kal_uint16 arfcn; /* ARFCN */
+ kal_uint8 timeslotalloc; /* TIMESLOT ALLOC*/
+} nonhoppingpcccchstruct;
+
+typedef struct {
+ unsigned int no_nh;
+ unsigned int nh_size;
+ nonhoppingpcccchstruct *nh;
+} nonhoppingpccchlist;
+
+typedef struct {
+ kal_uint8 maio; /* MAIO*/
+ kal_uint8 timeslotallocn; /* TIMESLOT ALLOCN*/
+} hoppingpccchstruct;
+
+typedef struct {
+ unsigned int no_h;
+ unsigned int h_size;
+ hoppingpccchstruct *h;
+} hoppingpccchlist;
+
+typedef struct {
+ kal_uint8 manumber; /* MA NUMBER */
+ hoppingpccchlist hoppingpccch; /* HOPPING PCCCH LIST*/
+} mahoppingpccchlist;
+
+typedef struct {
+ kal_uint8 tsc; /* TSC*/
+ ispresent ch210_tag;
+ union {
+ nonhoppingpccchlist anonhopping;
+ mahoppingpccchlist pnonhopping;
+ } ch210_value;
+} pccchstruct;
+
+typedef struct {
+ unsigned int no_pccchlist;
+ unsigned int pccchlist_size;
+ pccchstruct *pccchlist;
+} pccchdesliststruct;
+
+typedef struct {
+ header_struct header; /* HEADER STRUCT*/
+ kal_uint8 msgtype; /* msgtype */
+ kal_uint8 pagemode; /* PAGE MODE*/
+ kal_uint8 psi2changemark; /* PSI2 CHANGE MARK*/
+ kal_uint8 psi2index; /* PSI2 INDEX*/
+ kal_uint8 psi2count; /* PSI2 COUNT*/
+ ispresent ch211_tag;
+ union {
+ cellidentificationstruct p_cell_identification;
+ } ch211_value;
+ ispresent ch212_tag;
+ union {
+ nongprscelloption p_non_gprscell_options;
+ } ch212_value;
+ reffreqliststruct ref_freqlst;
+ cellallocationliststruct cell_allocation;
+ gprsmobileallocationsliststruct gprs_mobile_allocations;
+ pccchdesliststruct pccch_des;
+} psi2msg;
+
+typedef struct {
+ kal_uint8 cellbaracess; /* CELL BAR ACCESS 2*/
+ kal_uint8 excacc; /* EXC_ACC*/
+ kal_uint8 gprsmin; /* GPRS_RXLEV_ACCESS_MIN*/
+ kal_uint8 gprscch; /* GPRS MS TXPWR MAX CCH*/
+ ispresent ch213_tag;
+ union {
+ hcs_struct phcs;
+ } ch213_value;
+ kal_uint8 multi_band_reporting; /* MULTI BAND REPORTING*/
+} sercellparastruct;
+
+typedef struct {
+ kal_uint8 gprscellhys; /* GPRS CELL RESELECT HYSTERESIS*/
+ kal_uint8 chyst; /* C31 HYST*/
+ kal_uint8 cqual; /* C32 QUAL*/
+ kal_uint8 randomaccretry; /* RANDOM ACCESS RETRY*/
+ ispresent ch214_tag;
+ union {
+ kal_uint8 ptresel;
+ } ch214_value;
+ ispresent ch215_tag;
+ union {
+ kal_uint8 prahys;
+ } ch215_value;
+} gencellparastruct;
+
+typedef struct {
+ header_struct header; /* HEADERSTRUCT*/
+ kal_uint8 msgtype; /* msgtype */
+ kal_uint8 pagemode; /* PAGE MODE*/
+ kal_uint8 psi3chmark; /* PSI3 CHANGE MARK*/
+ kal_uint8 psi3biscount; /* PSI3 BSI COUNT*/
+ sercellparastruct sercellpara; /* SERVING CELL PARAMETERS*/
+ gencellparastruct gencellpara; /* GENERAL CELL SELECTION PARAMETER*/
+ unsigned int no_neighcellpara;
+ unsigned int neighcellpara_size;
+ neighcellparastruct *neighcellpara;
+} psi3msg;
+
+typedef struct {
+ kal_uint8 manumber; /* MA_NUMBER*/
+ kal_uint8 maio; /* MAIO*/
+} chgrpstruct;
+
+typedef struct {
+ ispresent ch222_tag;
+ union {
+ kal_uint16 arfcn;
+ chgrpstruct pchgrp;
+ } ch222_value;
+ kal_uint8 timeslotalloc; /* TIMESLOT ALLOCATION*/
+} channelgroupstruct;
+
+typedef struct {
+ header_struct header; /* HEADERSTRUCT*/
+ kal_uint8 msgtype; /* MSGTYPE */
+ kal_uint8 pagemode; /* PAGE MODE*/
+ kal_uint8 psi4chmark; /* PSI CHANGE MARK*/
+ kal_uint8 psi4index; /* PSI4_INDEX*/
+ kal_uint8 psi4count; /* PSI4_COUNT*/
+ channelgroupstruct chgrp;
+ unsigned int no_chlist;
+ unsigned int chlist_size;
+ channelgroupstruct *chlist;
+} psi4msg;
+
+typedef struct {
+ kal_uint8 nw_ctrl_order; /* NETWORK CONTROL ORDER*/
+ ispresent nc_list_choice_tag;
+ union {
+ nc_list_struct p_nc_list;
+ } nc_list_choice_value;
+} nc_meas_para_struct;
+
+typedef struct {
+ header_struct header; /* HEADERSTRUCT*/
+ kal_uint8 msgtype; /* MSGTYPE */
+ kal_uint8 pagemode; /* PAGE MODE*/
+ kal_uint8 psi5chmark; /* PSI CHANGE MARK*/
+ kal_uint8 psi5index; /* PSI5_INDEX*/
+ kal_uint8 psi5count; /* PSI5_COUNT*/
+ ispresent nc_meas_choice_tag;
+ union {
+ nc_meas_para_struct p_nc_meas_params;
+ } nc_meas_choice_value;
+ ispresent ext_meas_choice_tag;
+ union {
+ ext_meas_params_struct p_extmeas_params;
+ } ext_meas_choice_value;
+} psi5msg;
+
+typedef struct {
+ kal_uint8 si13chgmark; /* SI13 CHG MARK*/
+ gprsmobileiestruct gprsmoballocation; /* GPRS MOBILE ALLOC IE rr_gprs_mobile_alloc_peer_struct*/
+} psimsgstruct;
+
+typedef struct {
+ add_enum ch228_tag;
+ union {
+ kal_uint16 arfcn;
+ kal_uint8 maio;
+ } ch228_value;
+} bcchcarstruct;
+
+typedef struct {
+ kal_uint8 pb; /* pb*/
+ kal_uint8 tsc; /* TSC*/
+ kal_uint8 tn; /* TN*/
+ bcchcarstruct bcchcar; /* BCCHCARSTRUCT*/
+} pbcchdescstruct;
+
+typedef struct {
+ kal_uint8 alpha;
+ kal_uint8 tavgw;
+ kal_uint8 tavgt;
+ kal_uint8 pcmeaschan;
+ kal_uint8 navgi;
+} pwrcontparastruct;
+
+typedef struct {
+ kal_uint8 rac; /* RAC*/
+ kal_uint8 spgc_ccch_sup; /* SPGC CCCH SUP*/
+ kal_uint8 priacc_thr; /* PRIORITY ACC THR*/
+ kal_uint8 nwcontrolord; /* NW CONTROL ORDER*/
+ gprscelloptionsstruct gprscellopt; /* GPRS CELL OPTIONS*/
+ pwrcontparastruct powconpara; /* PWRCONPARASTRUCT*/
+} apbcchstruct;
+
+typedef struct {
+ kal_uint8 psi1_rep_per; /* PSI1 REPEAT PERIOD*/
+ pbcchdescstruct pbcch; /* PBCCHDESCSTRUCT*/
+} ppbcchstruct;
+
+typedef struct {
+ header_struct header; /* HEADERSTRUCT*/
+ kal_uint8 msgtype; /* MSGTYPE */
+ kal_uint8 pagemode; /* PAGE MODE*/
+ kal_uint8 bcch_chg_mark; /* BCCH CHG MARK*/
+ kal_uint8 sichgfield; /* SI CHG FIELD*/
+ ispresent ch229_tag;
+ union {
+ psimsgstruct ppsi13;
+ } ch229_value;
+ ispresent ch230_tag;
+ union {
+ apbcchstruct apbcch;
+ ppbcchstruct ppbcch;
+ } ch230_value;
+ ispresent sgsnr_choice_tag;
+ union {
+ kal_uint8 psgsnr;
+ } sgsnr_choice_value;
+} psi13msg;
+
+typedef struct {
+ kal_uint8 psixct;
+ kal_uint8 no_instbitmap;
+ kal_uint8 instbitmap_size;
+ kal_uint8 *instbitmap;
+} psixstruct;
+
+typedef struct {
+ kal_uint8 messagtype;
+ kal_uint8 psixchmk; /* PSIX CHANGE MARK*/
+ ispresent ch231_tag;
+ union {
+ psixstruct psix;
+ } ch231_value;
+} psimsgliststruct1;
+
+typedef struct {
+ unsigned int no_psimsg;
+ unsigned int psimsg_size;
+ psimsgliststruct1 *psimsg;
+ kal_uint8 addmsgtype; /* ADDTIONAL MSG TYPE*/
+} psimsgliststruct;
+
+typedef struct {
+ unsigned int no_mesgtype;
+ unsigned int mesgtype_size;
+ kal_uint8 *mesgtype;
+ kal_uint8 addmsgtype; /* ADDITIONAL MSG TYPE*/
+} unpsimsgliststruct;
+
+typedef struct {
+ header_struct header; /* HEADERSTRUCT*/
+ kal_uint8 msgtype; /* MSGTYPE */
+ kal_uint8 messtype; /* MESSAGE TYPE*/
+ global_tfistruct globaltfi; /* GLOBALTFI*/
+ kal_uint8 pbcchchmk; /* PBCCH CHANGE MARK*/
+ unsigned int no_rpsimsglist;
+ unsigned int rpsimsglist_size;
+ psimsgliststruct *rpsimsglist;
+ unpsimsgliststruct unpsimsglist; /* UNPSIMSGLST STRUCT*/
+} pktpsistatus;
+
+typedef struct {
+ header_struct header; /* HEADER STRUCT*/
+ kal_uint8 msgtype; /* MSG TYPE*/
+ kal_uint8 pagemode; /* PAGE MODE*/
+ kal_uint8 psi3chmk; /* PS3 CH MARK*/
+ kal_uint8 psi3bisind; /* PSI3 BIS INDEX*/
+ kal_uint8 psi3biscnt; /* PSI3 BIS COUNT*/
+ unsigned int no_neighcellpara1;
+ unsigned int neighcellpara1_size;
+ neighcellparastruct *neighcellpara1;
+ unsigned int no_neighcellpara2;
+ unsigned int neighcellpara2_size;
+ neighcellpara2struct *neighcellpara2;
+} psi3bismsg;
+#endif
+
+
diff --git a/mcu/protocol/interface/asn/rr/include/rmc_peer.h b/mcu/protocol/interface/asn/rr/include/rmc_peer.h
new file mode 100644
index 0000000..5b8bdfb
--- /dev/null
+++ b/mcu/protocol/interface/asn/rr/include/rmc_peer.h
@@ -0,0 +1,135 @@
+/*****************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2005
+*
+* BY OPENING THIS FILE, BUYER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND AGREES
+* THAT THE SOFTWARE/FIRMWARE AND ITS DOCUMENTATIONS ("MEDIATEK SOFTWARE")
+* RECEIVED FROM MEDIATEK AND/OR ITS REPRESENTATIVES ARE PROVIDED TO BUYER ON
+* AN "AS-IS" BASIS ONLY. MEDIATEK EXPRESSLY DISCLAIMS ANY AND ALL WARRANTIES,
+* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF
+* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NONINFRINGEMENT.
+* NEITHER DOES MEDIATEK PROVIDE ANY WARRANTY WHATSOEVER WITH RESPECT TO THE
+* SOFTWARE OF ANY THIRD PARTY WHICH MAY BE USED BY, INCORPORATED IN, OR
+* SUPPLIED WITH THE MEDIATEK SOFTWARE, AND BUYER AGREES TO LOOK ONLY TO SUCH
+* THIRD PARTY FOR ANY WARRANTY CLAIM RELATING THERETO. MEDIATEK SHALL ALSO
+* NOT BE RESPONSIBLE FOR ANY MEDIATEK SOFTWARE RELEASES MADE TO BUYER'S
+* SPECIFICATION OR TO CONFORM TO A PARTICULAR STANDARD OR OPEN FORUM.
+*
+* BUYER'S SOLE AND EXCLUSIVE REMEDY AND MEDIATEK'S ENTIRE AND CUMULATIVE
+* LIABILITY WITH RESPECT TO THE MEDIATEK SOFTWARE RELEASED HEREUNDER WILL BE,
+* AT MEDIATEK'S OPTION, TO REVISE OR REPLACE THE MEDIATEK SOFTWARE AT ISSUE,
+* OR REFUND ANY SOFTWARE LICENSE FEES OR SERVICE CHARGE PAID BY BUYER TO
+* MEDIATEK FOR SUCH MEDIATEK SOFTWARE AT ISSUE.
+*
+* THE TRANSACTION CONTEMPLATED HEREUNDER SHALL BE CONSTRUED IN ACCORDANCE
+* WITH THE LAWS OF THE STATE OF CALIFORNIA, USA, EXCLUDING ITS CONFLICT OF
+* LAWS PRINCIPLES. ANY DISPUTES, CONTROVERSIES OR CLAIMS ARISING THEREOF AND
+* RELATED THERETO SHALL BE SETTLED BY ARBITRATION IN SAN FRANCISCO, CA, UNDER
+* THE RULES OF THE INTERNATIONAL CHAMBER OF COMMERCE (ICC).
+*
+*****************************************************************************/
+
+/******************************************************************************
+ * Filename:
+ * ---------
+ * rmc_peer.h
+ *
+ * Project:
+ * --------
+ * MAUI
+ *
+ * Description:
+ * ------------
+ *
+ * Author:
+ * -------
+ * -------
+ *
+ *=============================================================================
+ * HISTORY
+ * Below this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *------------------------------------------------------------------------------
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ *------------------------------------------------------------------------------
+ * Upper this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *=============================================================================
+ ******************************************************************************/
+
+/********************************************************************************
+* Copyright Statement:
+* --------------------
+*
+* This product has been developed using a protocol stack
+* developed by Sasken Communication Technologies Limited.
+*
+********************************************************************************/
+
+#ifndef RMC_PEER_H
+#define RMC_PEER_H
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#ifdef TEST_TOOL
+#include "tt_defs.h"
+#endif
+
+typedef enum {
+ NOBAND = 0,
+ BAND1 = 1,
+ BAND2 = 2,
+ BAND23 = 6,
+ BAND3 = 4,
+ BAND13 = 5
+} multi_band_enum;
+
+
+#ifdef TOOL
+#include "set_rmc_peer.h"
+#include "get_rmc_peer.h"
+#endif
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* RMC_PEER_H */
+
+
diff --git a/mcu/protocol/interface/asn/rr/include/rmc_peer_dl.h b/mcu/protocol/interface/asn/rr/include/rmc_peer_dl.h
new file mode 100644
index 0000000..2a53fd1
--- /dev/null
+++ b/mcu/protocol/interface/asn/rr/include/rmc_peer_dl.h
@@ -0,0 +1,155 @@
+/*****************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2005
+*
+* BY OPENING THIS FILE, BUYER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND AGREES
+* THAT THE SOFTWARE/FIRMWARE AND ITS DOCUMENTATIONS ("MEDIATEK SOFTWARE")
+* RECEIVED FROM MEDIATEK AND/OR ITS REPRESENTATIVES ARE PROVIDED TO BUYER ON
+* AN "AS-IS" BASIS ONLY. MEDIATEK EXPRESSLY DISCLAIMS ANY AND ALL WARRANTIES,
+* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF
+* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NONINFRINGEMENT.
+* NEITHER DOES MEDIATEK PROVIDE ANY WARRANTY WHATSOEVER WITH RESPECT TO THE
+* SOFTWARE OF ANY THIRD PARTY WHICH MAY BE USED BY, INCORPORATED IN, OR
+* SUPPLIED WITH THE MEDIATEK SOFTWARE, AND BUYER AGREES TO LOOK ONLY TO SUCH
+* THIRD PARTY FOR ANY WARRANTY CLAIM RELATING THERETO. MEDIATEK SHALL ALSO
+* NOT BE RESPONSIBLE FOR ANY MEDIATEK SOFTWARE RELEASES MADE TO BUYER'S
+* SPECIFICATION OR TO CONFORM TO A PARTICULAR STANDARD OR OPEN FORUM.
+*
+* BUYER'S SOLE AND EXCLUSIVE REMEDY AND MEDIATEK'S ENTIRE AND CUMULATIVE
+* LIABILITY WITH RESPECT TO THE MEDIATEK SOFTWARE RELEASED HEREUNDER WILL BE,
+* AT MEDIATEK'S OPTION, TO REVISE OR REPLACE THE MEDIATEK SOFTWARE AT ISSUE,
+* OR REFUND ANY SOFTWARE LICENSE FEES OR SERVICE CHARGE PAID BY BUYER TO
+* MEDIATEK FOR SUCH MEDIATEK SOFTWARE AT ISSUE.
+*
+* THE TRANSACTION CONTEMPLATED HEREUNDER SHALL BE CONSTRUED IN ACCORDANCE
+* WITH THE LAWS OF THE STATE OF CALIFORNIA, USA, EXCLUDING ITS CONFLICT OF
+* LAWS PRINCIPLES. ANY DISPUTES, CONTROVERSIES OR CLAIMS ARISING THEREOF AND
+* RELATED THERETO SHALL BE SETTLED BY ARBITRATION IN SAN FRANCISCO, CA, UNDER
+* THE RULES OF THE INTERNATIONAL CHAMBER OF COMMERCE (ICC).
+*
+*****************************************************************************/
+
+/******************************************************************************
+ * Filename:
+ * ---------
+ * rmc_peer_dl.h
+ *
+ * Project:
+ * --------
+ * MAUI
+ *
+ * Description:
+ * ------------
+ *
+ * Author:
+ * -------
+ * -------
+ *
+ *=============================================================================
+ * HISTORY
+ * Below this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *------------------------------------------------------------------------------
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ *------------------------------------------------------------------------------
+ * Upper this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *=============================================================================
+ ******************************************************************************/
+
+/********************************************************************************
+* Copyright Statement:
+* --------------------
+*
+* This product has been developed using a protocol stack
+* developed by Sasken Communication Technologies Limited.
+*
+********************************************************************************/
+
+
+#ifndef RMC_PEER_DL_H
+#define RMC_PEER_DL_H
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#ifdef TEST_TOOL
+#include "tt_defs.h"
+#endif
+
+
+typedef enum {
+ absent = 0,
+ present = 1
+
+} enum_is_present;
+
+typedef enum {
+ non_hop_or_indirect_enc_type = 0,
+ direct_enc_type = 1
+
+} chan_config;
+
+typedef enum {
+ binary_zero = 0x0,
+ binary_one = 0x1,
+ binary_second_one = 0x1,
+ binary_two = 0x2,
+ binary_three = 0x3,
+ binary_four = 0x4,
+ binary_five = 0x5,
+ binary_six = 0x6,
+ binary_seven = 0x7,
+ binary_eight = 0x8,
+ binary_nine = 0x9,
+ binary_ten = 0xa,
+ binary_eleven = 0xb,
+ binary_twelve = 0xc,
+ binary_thirteen = 0xd
+
+} chan_asgn_type;
+
+
+#ifdef TOOL
+#include "set_rmc_peer_dl.h"
+#include "get_rmc_peer_dl.h"
+#endif
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* RMC_PEER_DL_H */
+
+
diff --git a/mcu/protocol/interface/asn/rr/include/rmc_peer_dl_pun.h b/mcu/protocol/interface/asn/rr/include/rmc_peer_dl_pun.h
new file mode 100644
index 0000000..81ffb23
--- /dev/null
+++ b/mcu/protocol/interface/asn/rr/include/rmc_peer_dl_pun.h
@@ -0,0 +1,278 @@
+/*****************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2005
+*
+* BY OPENING THIS FILE, BUYER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND AGREES
+* THAT THE SOFTWARE/FIRMWARE AND ITS DOCUMENTATIONS ("MEDIATEK SOFTWARE")
+* RECEIVED FROM MEDIATEK AND/OR ITS REPRESENTATIVES ARE PROVIDED TO BUYER ON
+* AN "AS-IS" BASIS ONLY. MEDIATEK EXPRESSLY DISCLAIMS ANY AND ALL WARRANTIES,
+* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF
+* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NONINFRINGEMENT.
+* NEITHER DOES MEDIATEK PROVIDE ANY WARRANTY WHATSOEVER WITH RESPECT TO THE
+* SOFTWARE OF ANY THIRD PARTY WHICH MAY BE USED BY, INCORPORATED IN, OR
+* SUPPLIED WITH THE MEDIATEK SOFTWARE, AND BUYER AGREES TO LOOK ONLY TO SUCH
+* THIRD PARTY FOR ANY WARRANTY CLAIM RELATING THERETO. MEDIATEK SHALL ALSO
+* NOT BE RESPONSIBLE FOR ANY MEDIATEK SOFTWARE RELEASES MADE TO BUYER'S
+* SPECIFICATION OR TO CONFORM TO A PARTICULAR STANDARD OR OPEN FORUM.
+*
+* BUYER'S SOLE AND EXCLUSIVE REMEDY AND MEDIATEK'S ENTIRE AND CUMULATIVE
+* LIABILITY WITH RESPECT TO THE MEDIATEK SOFTWARE RELEASED HEREUNDER WILL BE,
+* AT MEDIATEK'S OPTION, TO REVISE OR REPLACE THE MEDIATEK SOFTWARE AT ISSUE,
+* OR REFUND ANY SOFTWARE LICENSE FEES OR SERVICE CHARGE PAID BY BUYER TO
+* MEDIATEK FOR SUCH MEDIATEK SOFTWARE AT ISSUE.
+*
+* THE TRANSACTION CONTEMPLATED HEREUNDER SHALL BE CONSTRUED IN ACCORDANCE
+* WITH THE LAWS OF THE STATE OF CALIFORNIA, USA, EXCLUDING ITS CONFLICT OF
+* LAWS PRINCIPLES. ANY DISPUTES, CONTROVERSIES OR CLAIMS ARISING THEREOF AND
+* RELATED THERETO SHALL BE SETTLED BY ARBITRATION IN SAN FRANCISCO, CA, UNDER
+* THE RULES OF THE INTERNATIONAL CHAMBER OF COMMERCE (ICC).
+*
+*****************************************************************************/
+
+/*******************************************************************************
+ * Filename:
+ * ---------
+ * rmc_peer_dl_pun.h
+ *
+ * Project:
+ * --------
+ * MAUI
+ *
+ * Description:
+ * ------------
+ *
+ *
+ * Author:
+ * -------
+ *
+ *
+ *==============================================================================
+ * HISTORY
+ * Below this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *------------------------------------------------------------------------------
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ *------------------------------------------------------------------------------
+ * Upper this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *==============================================================================
+ *******************************************************************************/
+
+/********************************************************************************
+* Copyright Statement:
+* --------------------
+*
+* This product has been developed using a protocol stack
+* developed by Sasken Communication Technologies Limited.
+*
+********************************************************************************/
+
+
+/*******************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2002
+*
+*******************************************************************************
+ * FILENAME : rmc_peer_dl_pun.h
+ * SYNOPSIS : Functions for encoding/decoding.
+ *
+ * R E V I S I O N H I S T O R Y
+ *
+ */
+#ifdef MTK_PEER
+#define IMP __declspec(dllimport)
+#else
+#define IMP
+#endif
+#ifndef _RMC_PEER_DL_PUN_H
+#define _RMC_PEER_DL_PUN_H
+
+IMP unsigned int rr_packet_downlink_struct_bits(void *);
+IMP void rr_packet_downlink_struct_alloc(void *);
+IMP void rr_packet_downlink_struct_dealloc(void *);
+IMP unsigned int rr_packet_downlink_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int rr_packet_downlink_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int pdch_dynamic_alloc_struct_bits(void *);
+IMP void pdch_dynamic_alloc_struct_alloc(void *);
+IMP void pdch_dynamic_alloc_struct_dealloc(void *);
+IMP unsigned int pdch_dynamic_alloc_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int pdch_dynamic_alloc_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int pdch_single_blk_alloc_struct_bits(void *);
+IMP void pdch_single_blk_alloc_struct_alloc(void *);
+IMP void pdch_single_blk_alloc_struct_dealloc(void *);
+IMP unsigned int pdch_single_blk_alloc_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int pdch_single_blk_alloc_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int pdch_fixed_alloc_struct_bits(void *);
+IMP void pdch_fixed_alloc_struct_alloc(void *);
+IMP void pdch_fixed_alloc_struct_dealloc(void *);
+IMP unsigned int pdch_fixed_alloc_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int pdch_fixed_alloc_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int rr_packet_uplink_struct_bits(void *);
+IMP void rr_packet_uplink_struct_alloc(void *);
+IMP void rr_packet_uplink_struct_dealloc(void *);
+IMP unsigned int rr_packet_uplink_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int rr_packet_uplink_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define rmc_start_time_struct_size(x) 2
+IMP unsigned int rmc_start_time_struct_bits(void *);
+IMP void rmc_start_time_struct_alloc(void *);
+IMP void rmc_start_time_struct_dealloc(void *);
+IMP unsigned int rmc_start_time_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int rmc_start_time_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int starting_time_bits(void *);
+IMP void starting_time_alloc(void *);
+IMP void starting_time_dealloc(void *);
+IMP unsigned int starting_time_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int starting_time_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define rmc_p0_pwr_cntrl_mode_struct_size(x) 1
+IMP unsigned int rmc_p0_pwr_cntrl_mode_struct_bits(void *);
+IMP void rmc_p0_pwr_cntrl_mode_struct_alloc(void *);
+IMP void rmc_p0_pwr_cntrl_mode_struct_dealloc(void *);
+IMP unsigned int rmc_p0_pwr_cntrl_mode_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int rmc_p0_pwr_cntrl_mode_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int rmc_single_block_alloc_struct_bits(void *);
+IMP void rmc_single_block_alloc_struct_alloc(void *);
+IMP void rmc_single_block_alloc_struct_dealloc(void *);
+IMP unsigned int rmc_single_block_alloc_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int rmc_single_block_alloc_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define rmc_p0_pr_mode_struct_size(x) 1
+IMP unsigned int rmc_p0_pr_mode_struct_bits(void *);
+IMP void rmc_p0_pr_mode_struct_alloc(void *);
+IMP void rmc_p0_pr_mode_struct_dealloc(void *);
+IMP unsigned int rmc_p0_pr_mode_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int rmc_p0_pr_mode_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int rmc_dyn_alloc_struct_bits(void *);
+IMP void rmc_dyn_alloc_struct_alloc(void *);
+IMP void rmc_dyn_alloc_struct_dealloc(void *);
+IMP unsigned int rmc_dyn_alloc_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int rmc_dyn_alloc_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int rmc_fixed_alloc_struct_bits(void *);
+IMP void rmc_fixed_alloc_struct_alloc(void *);
+IMP void rmc_fixed_alloc_struct_dealloc(void *);
+IMP unsigned int rmc_fixed_alloc_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int rmc_fixed_alloc_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int rmc_dyn_or_fixed_alloc_struct_bits(void *);
+IMP void rmc_dyn_or_fixed_alloc_struct_alloc(void *);
+IMP void rmc_dyn_or_fixed_alloc_struct_dealloc(void *);
+IMP unsigned int rmc_dyn_or_fixed_alloc_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int rmc_dyn_or_fixed_alloc_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int rmc_pkt_ul_asgn_struct_bits(void *);
+IMP void rmc_pkt_ul_asgn_struct_alloc(void *);
+IMP void rmc_pkt_ul_asgn_struct_dealloc(void *);
+IMP unsigned int rmc_pkt_ul_asgn_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int rmc_pkt_ul_asgn_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#ifdef __EGPRS_MODE__
+IMP unsigned int rmc_multi_blk_alloc_struct_bits(void *);
+IMP void rmc_multi_blk_alloc_struct_alloc(void *);
+IMP void rmc_multi_blk_alloc_struct_dealloc(void *);
+IMP unsigned int rmc_multi_blk_alloc_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int rmc_multi_blk_alloc_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define rmc_egprs_mod_and_coding_struct_size(x) 1
+IMP unsigned int rmc_egprs_mod_and_coding_struct_bits(void *);
+IMP void rmc_egprs_mod_and_coding_struct_alloc(void *);
+IMP void rmc_egprs_mod_and_coding_struct_dealloc(void *);
+IMP unsigned int rmc_egprs_mod_and_coding_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int rmc_egprs_mod_and_coding_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define rmc_egprs_window_size_struct_size(x) 1
+IMP unsigned int rmc_egprs_window_size_struct_bits(void *);
+IMP void rmc_egprs_window_size_struct_alloc(void *);
+IMP void rmc_egprs_window_size_struct_dealloc(void *);
+IMP unsigned int rmc_egprs_window_size_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int rmc_egprs_window_size_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int rmc_egprs_dyn_or_fixed_alloc_struct_bits(void *);
+IMP void rmc_egprs_dyn_or_fixed_alloc_struct_alloc(void *);
+IMP void rmc_egprs_dyn_or_fixed_alloc_struct_dealloc(void *);
+IMP unsigned int rmc_egprs_dyn_or_fixed_alloc_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int rmc_egprs_dyn_or_fixed_alloc_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int rmc_egprs_pkt_ul_asgn_struct_bits(void *);
+IMP void rmc_egprs_pkt_ul_asgn_struct_alloc(void *);
+IMP void rmc_egprs_pkt_ul_asgn_struct_dealloc(void *);
+IMP unsigned int rmc_egprs_pkt_ul_asgn_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int rmc_egprs_pkt_ul_asgn_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#endif
+
+
+IMP unsigned int rmc_freq_params_with_length_struct_bits(void *);
+IMP void rmc_freq_params_with_length_struct_alloc(void *);
+IMP void rmc_freq_params_with_length_struct_dealloc(void *);
+IMP unsigned int rmc_freq_params_with_length_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int rmc_freq_params_with_length_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int rmc_rlc_mode_alpha_gamma_struct_bits(void *);
+IMP void rmc_rlc_mode_alpha_gamma_struct_alloc(void *);
+IMP void rmc_rlc_mode_alpha_gamma_struct_dealloc(void *);
+IMP unsigned int rmc_rlc_mode_alpha_gamma_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int rmc_rlc_mode_alpha_gamma_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int rmc_pkt_dl_asgn_struct_bits(void *);
+IMP void rmc_pkt_dl_asgn_struct_alloc(void *);
+IMP void rmc_pkt_dl_asgn_struct_dealloc(void *);
+IMP unsigned int rmc_pkt_dl_asgn_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int rmc_pkt_dl_asgn_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *, kal_uint8);
+
+IMP unsigned int iarest_octets_bits(void *);
+IMP void iarest_octets_alloc(void *);
+IMP void iarest_octets_dealloc(void *);
+IMP unsigned int iarest_octets_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int iarest_octets_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#endif
+
+
diff --git a/mcu/protocol/interface/asn/rr/include/rmc_peer_dl_struct.h b/mcu/protocol/interface/asn/rr/include/rmc_peer_dl_struct.h
new file mode 100644
index 0000000..510b69e
--- /dev/null
+++ b/mcu/protocol/interface/asn/rr/include/rmc_peer_dl_struct.h
@@ -0,0 +1,500 @@
+/*****************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2005
+*
+* BY OPENING THIS FILE, BUYER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND AGREES
+* THAT THE SOFTWARE/FIRMWARE AND ITS DOCUMENTATIONS ("MEDIATEK SOFTWARE")
+* RECEIVED FROM MEDIATEK AND/OR ITS REPRESENTATIVES ARE PROVIDED TO BUYER ON
+* AN "AS-IS" BASIS ONLY. MEDIATEK EXPRESSLY DISCLAIMS ANY AND ALL WARRANTIES,
+* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF
+* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NONINFRINGEMENT.
+* NEITHER DOES MEDIATEK PROVIDE ANY WARRANTY WHATSOEVER WITH RESPECT TO THE
+* SOFTWARE OF ANY THIRD PARTY WHICH MAY BE USED BY, INCORPORATED IN, OR
+* SUPPLIED WITH THE MEDIATEK SOFTWARE, AND BUYER AGREES TO LOOK ONLY TO SUCH
+* THIRD PARTY FOR ANY WARRANTY CLAIM RELATING THERETO. MEDIATEK SHALL ALSO
+* NOT BE RESPONSIBLE FOR ANY MEDIATEK SOFTWARE RELEASES MADE TO BUYER'S
+* SPECIFICATION OR TO CONFORM TO A PARTICULAR STANDARD OR OPEN FORUM.
+*
+* BUYER'S SOLE AND EXCLUSIVE REMEDY AND MEDIATEK'S ENTIRE AND CUMULATIVE
+* LIABILITY WITH RESPECT TO THE MEDIATEK SOFTWARE RELEASED HEREUNDER WILL BE,
+* AT MEDIATEK'S OPTION, TO REVISE OR REPLACE THE MEDIATEK SOFTWARE AT ISSUE,
+* OR REFUND ANY SOFTWARE LICENSE FEES OR SERVICE CHARGE PAID BY BUYER TO
+* MEDIATEK FOR SUCH MEDIATEK SOFTWARE AT ISSUE.
+*
+* THE TRANSACTION CONTEMPLATED HEREUNDER SHALL BE CONSTRUED IN ACCORDANCE
+* WITH THE LAWS OF THE STATE OF CALIFORNIA, USA, EXCLUDING ITS CONFLICT OF
+* LAWS PRINCIPLES. ANY DISPUTES, CONTROVERSIES OR CLAIMS ARISING THEREOF AND
+* RELATED THERETO SHALL BE SETTLED BY ARBITRATION IN SAN FRANCISCO, CA, UNDER
+* THE RULES OF THE INTERNATIONAL CHAMBER OF COMMERCE (ICC).
+*
+*****************************************************************************/
+
+/*******************************************************************************
+ * Filename:
+ * ---------
+ * rmc_peer_dl_struct.h
+ *
+ * Project:
+ * --------
+ * MAUI
+ *
+ * Description:
+ * ------------
+ *
+ *
+ * Author:
+ * -------
+ *
+ *
+ *==============================================================================
+ * HISTORY
+ * Below this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *------------------------------------------------------------------------------
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ *------------------------------------------------------------------------------
+ * Upper this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *==============================================================================
+ *******************************************************************************/
+
+/********************************************************************************
+* Copyright Statement:
+* --------------------
+*
+* This product has been developed using a protocol stack
+* developed by Sasken Communication Technologies Limited.
+*
+********************************************************************************/
+
+
+/*******************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2002
+*
+*******************************************************************************
+ * FILENAME : rmc_peer_dl_struct.h
+ * SYNOPSIS : Functions for encoding/decoding.
+ *
+ * R E V I S I O N H I S T O R Y
+ *
+ */
+#ifndef _RMC_PEER_DL_STRUCT_H
+#define _RMC_PEER_DL_STRUCT_H
+
+#ifdef __PS_SERVICE__
+#include "gprs_rlcmac_dl_struct.h"
+#endif
+#include "rmc_peer_dl.h"
+#include "rr_common_def.h"
+#include "nstd_alloc_bitmap_struct.h"
+#include "rr_spare_bit.h"
+
+#ifdef __PS_SERVICE__
+typedef struct {
+ kal_uint8 length;
+ kal_uint8 mac_mode;
+ kal_uint8 rlc_mode;
+ kal_uint8 timeslot_alloc;
+ pkt_timing_advance_struct pkt_time_adv_value; /* PACKET TIMING ADVANCE STRUCTURE*/
+ enum_is_present p0pr_choice_tag;
+ union {
+ bts_mode_struct p0pwr_mode;
+ } p0pr_choice_value;
+ enum_is_present pwr_ctrl_param_choice_tag;
+ union {
+ pwr_ctrl_params_peer_struct p_power_ctrl_param_value;
+ } pwr_ctrl_param_choice_value;
+ enum_is_present downlink_choice_tag;
+ union {
+ kal_uint8 downlink_assignment;
+ } downlink_choice_value;
+ enum_is_present meas_map_choice_tag;
+ union {
+ meas_map_peer_struct p_measurement_map;
+ } meas_map_choice_value;
+ enum_is_present pkt_choice_tag;
+ union {
+ kal_uint8 pkttime_advance;
+ } pkt_choice_value;
+} rr_packet_downlink_struct;
+
+typedef struct {
+ kal_uint8 extended_dyn_alloc; /* EXT DYNAMIC ALLOCATION*/
+ enum_is_present p0pr_mode_choice_tag;
+ union {
+ p0pr_mode_struct p_p0pr;
+ } p0pr_mode_choice_value;
+ kal_uint8 usf_granularity; /* USF GRANULARITY*/
+ enum_is_present tfi_assignment_choice_tag;
+ union {
+ kal_uint8 p_tfi_assignment;
+ } tfi_assignment_choice_value;
+ enum_is_present rlc_blks_granted_choice_tag;
+ union {
+ kal_uint8 p_rlc_blks_granted;
+ } rlc_blks_granted_choice_value;
+ enum_is_present time_slot_pwr_ctrl_choice_tag;
+ union {
+ time_slot_alloc_struct a_time_slot_alloc;
+ time_slot_pwr_ctrl_alloc_struct p_time_slot_alloc;
+ } time_slot_pwr_ctrl_choice_value;
+} pdch_dynamic_alloc_struct;
+
+typedef struct {
+ kal_uint8 time_slot_no; /* TIME SLOT NUMBER*/
+ enum_is_present alpha_gamma_choice_tag;
+ union {
+ alpha_gamma_struct p_alpha_gamma;
+ } alpha_gamma_choice_value;
+ enum_is_present pwr_ctrl_mode_choice_tag;
+ union {
+ bts_mode_struct p_pwr_ctrl_mode;
+ } pwr_ctrl_mode_choice_value;
+} pdch_single_blk_alloc_struct;
+
+typedef struct {
+ enum_is_present up_link_tfichoice_tag;
+ union {
+ kal_uint8 p_uplink_tfi_assgn;
+ } up_link_tfichoice_value;
+ kal_uint8 final_allocation; /* FINAL ALLOCATION*/
+ kal_uint8 down_link_ctrl_time_slot; /* DOWN LINK CONTROL TIME SLOT*/
+ enum_is_present pwr_ctrl_mode_choice_tag;
+ union {
+ bts_mode_struct p_pwr_ctrl_mode;
+ } pwr_ctrl_mode_choice_value;
+ ispresent pwr_ctrl_time_slot_choice_tag;
+ union {
+ kal_uint8 a_time_slot_allocation;
+ pwr_ctrl_params_peer_struct p_pwr_ctrl_params;
+ } pwr_ctrl_time_slot_choice_value;
+ kal_uint8 half_duplex_mode; /* HALF DUPLEX MODE*/
+ kal_uint8 msgesc; /* MESSAGE ESCAPE*/
+ alloc_struct alloc_bit_map; /* ALLOCATION BITMAP*/
+} pdch_fixed_alloc_struct;
+
+typedef struct {
+ kal_uint8 length;
+ kal_uint8 ch_coding_command;
+ kal_uint8 tlli_block_ch_coding;
+ pkt_timing_advance_struct pkt_time_adv_value; /* PACKET TIMING ADVANCE STRUCTURE*/
+ challoc_enum alloc_type_choice_tag;
+ union {
+ pdch_dynamic_alloc_struct dynamic_alloc;
+ pdch_single_blk_alloc_struct single_blk_alloc;
+ pdch_fixed_alloc_struct fixed_alloc;
+ } alloc_type_choice_value;
+ enum_is_present time_choice_tag;
+ union {
+ kal_uint8 packet_ext_time_advance;
+ } time_choice_value;
+} rr_packet_uplink_struct;
+
+#endif
+typedef struct {
+ kal_uint8 t1;
+ kal_uint8 t3;
+ kal_uint8 t2;
+} rmc_start_time_struct;
+
+typedef struct {
+ kal_uint8 start_time_structP;
+ rmc_start_time_struct start_time_struct;
+} starting_time;
+
+#ifdef __PS_SERVICE__
+typedef struct {
+ kal_uint8 p0;
+ kal_uint8 bts_pwr_cntrl_mode;
+ kal_uint8 pr_mode;
+} rmc_p0_pwr_cntrl_mode_struct;
+
+typedef struct {
+ enum_is_present alpha_tag;
+ union {
+ kal_uint8 alpha;
+ } alpha_value;
+ kal_uint8 gamma;
+ kal_uint8 control_bits; /* always set to 01 for compatibility with
+ rel '97.*/
+ rmc_start_time_struct tbf_start_time;
+ rr_spare_bit_enum pwr_cntrl_mode_tag;
+ union {
+ rmc_p0_pwr_cntrl_mode_struct pwr_cntrl_mode;
+ } pwr_cntrl_mode_value;
+} rmc_single_block_alloc_struct;
+
+typedef struct {
+ kal_uint8 p0;
+ kal_uint8 pr_mode;
+} rmc_p0_pr_mode_struct;
+
+typedef struct {
+ kal_uint8 usf;
+ kal_uint8 usf_gran;
+ enum_is_present p0pr_mode_tag;
+ union {
+ rmc_p0_pr_mode_struct p0pr_mode;
+ } p0pr_mode_value;
+} rmc_dyn_alloc_struct;
+
+typedef struct {
+ kal_uint32 alloc_bit_map_bits:5;
+ kal_uint32 alloc_bit_map;
+ enum_is_present p0pwr_cntrl_mode_tag;
+ union {
+ rmc_p0_pwr_cntrl_mode_struct p0pwr_cntrl_mode;
+ } p0pwr_cntrl_mode_value;
+} rmc_fixed_alloc_struct;
+
+typedef struct {
+ kal_uint8 tfi_assign;
+ kal_uint8 polling;
+ enum_is_present alloc_info_tag;
+ union {
+ rmc_dyn_alloc_struct dyn;
+ rmc_fixed_alloc_struct fixed;
+ } alloc_info_value;
+ kal_uint8 chan_coding_command;
+ kal_uint8 tlli_blk_chan_coding;
+ enum_is_present alpha_tag;
+ union {
+ kal_uint8 alpha;
+ } alpha_value;
+ kal_uint8 gamma;
+ enum_is_present timing_adv_tag;
+ union {
+ kal_uint8 timing_adv_index;
+ } timing_adv_value;
+ enum_is_present tbf_start_time_tag;
+ union {
+ rmc_start_time_struct tbf_start_time;
+ } tbf_start_time_value;
+} rmc_dyn_or_fixed_alloc_struct;
+
+typedef struct {
+ enum_is_present alloc_info_tag;
+ union {
+ rmc_single_block_alloc_struct single_blk_alloc;
+ rmc_dyn_or_fixed_alloc_struct dyn_or_fixed_alloc;
+ } alloc_info_value;
+} rmc_pkt_ul_asgn_struct;
+
+#ifdef __EGPRS_MODE__
+#if 0
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+#endif
+
+typedef struct {
+ enum_is_present ch1_tag;
+ union {
+ kal_uint8 alpha;
+ } ch1_value;
+ kal_uint8 gamma;
+ rmc_start_time_struct tbf_start_time;
+ kal_uint8 no_of_blks_alloc;
+ enum_is_present ch2_tag;
+ union {
+ rmc_p0_pwr_cntrl_mode_struct p0;
+ } ch2_value;
+} rmc_multi_blk_alloc_struct;
+
+typedef struct {
+ kal_uint8 mod_and_coding_scheme;
+} rmc_egprs_mod_and_coding_struct;
+
+typedef struct {
+ kal_uint8 window_size;
+} rmc_egprs_window_size_struct;
+
+typedef struct {
+ kal_uint8 tfi_assign;
+ kal_uint8 polling;
+ enum_is_present ch1_tag;
+ union {
+ rmc_dyn_alloc_struct dyn;
+ rmc_fixed_alloc_struct fixed;
+ } ch1_value;
+ rmc_egprs_mod_and_coding_struct chan_coding_command;
+ kal_uint8 tlli_blk_chan_coding;
+ enum_is_present ch2_tag;
+ union {
+ kal_uint8 bep_period2;
+ } ch2_value;
+ kal_uint8 resegment;
+ rmc_egprs_window_size_struct window_size;
+ enum_is_present ch3_tag;
+ union {
+ kal_uint8 alpha;
+ } ch3_value;
+ kal_uint8 gamma;
+ enum_is_present ch4_tag;
+ union {
+ kal_uint8 timing_adv;
+ } ch4_value;
+ enum_is_present ch5_tag;
+ union {
+ rmc_start_time_struct tbf_start_time;
+ } ch5_value;
+} rmc_egprs_dyn_or_fixed_alloc_struct;
+
+typedef struct {
+ /* Claire 041217 change : Solve IA EGPRS PUAS unpack missing extended_ra bug */
+ kal_uint8 extended_ra;
+ enum_is_present ch1_tag;
+ union {
+ rmc_access_tech_req_struct access_tech_req;
+ } ch1_value;
+ enum_is_present ch2_tag;
+ union {
+ rmc_multi_blk_alloc_struct multi_blk_alloc;
+ rmc_egprs_dyn_or_fixed_alloc_struct egprs_dyn_or_fixed_alloc;
+ } ch2_value;
+} rmc_egprs_pkt_ul_asgn_struct;
+
+#endif
+
+typedef struct {
+ kal_uint8 no_freq_params;
+ kal_uint8 freq_params_size;
+ kal_uint8 *freq_params; /* the first six bits indicate the
+ length which could be anywhere
+ between 0 and 61. the lease
+ significant 6 bits of the first octet
+ that follows the length bits is
+ the MAIO field.*/
+} rmc_freq_params_with_length_struct;
+
+typedef struct {
+ kal_uint8 tfi_assign;
+ kal_uint8 rlc_mode;
+ enum_is_present ch1_tag;
+ union {
+ kal_uint8 alpha;
+ } ch1_value;
+ kal_uint8 gamma;
+ kal_uint8 polling;
+ kal_uint8 ta_valid;
+} rmc_rlc_mode_alpha_gamma_struct;
+
+/* Claire 041127 change : Correct rmc_pkt_dl_asgn_struct pack unpack bug */
+#ifdef __EGPRS_MODE__
+typedef struct {
+ kal_uint32 tlli;
+ enum_is_present rlc_mode_tag;
+ union {
+ rmc_rlc_mode_alpha_gamma_struct rlc_mode_pwr_cntrl;
+ } rlc_mode_value;
+ enum_is_present timing_adv_tag;
+ union {
+ kal_uint8 timing_adv_index;
+ } timing_adv_value;
+ enum_is_present tbf_start_time_tag;
+ union {
+ rmc_start_time_struct tbf_start_time;
+ } tbf_start_time_value;
+ enum_is_present pwr_cntrl_tag;
+ union {
+ rmc_p0_pwr_cntrl_mode_struct p0pwr_cntrl_mode;
+ } pwr_cntrl_value;
+ enum_is_present egprs_ws_link_quality_choice_tag;
+ union {
+ egprsws_link_quality p_egprs_ws_link_quality;
+ } egprs_ws_link_quality_choice_value;
+ } rmc_pkt_dl_asgn_struct;
+
+#else
+typedef struct {
+ kal_uint32 tlli;
+ enum_is_present rlc_mode_tag;
+ union {
+ rmc_rlc_mode_alpha_gamma_struct rlc_mode_pwr_cntrl;
+ } rlc_mode_value;
+ enum_is_present timing_adv_tag;
+ union {
+ kal_uint8 timing_adv_index;
+ } timing_adv_value;
+ enum_is_present tbf_start_time_tag;
+ union {
+ rmc_start_time_struct tbf_start_time;
+ } tbf_start_time_value;
+ enum_is_present pwr_cntrl_tag;
+ union {
+ rmc_p0_pwr_cntrl_mode_struct p0pwr_cntrl_mode;
+ } pwr_cntrl_value;
+} rmc_pkt_dl_asgn_struct;
+#endif
+
+#ifdef __EGPRS_MODE__
+typedef struct {
+ chan_asgn_type chan_asgn_tag;
+ union {
+ rmc_egprs_pkt_ul_asgn_struct egprs_pkt_ul_asgn;
+ rmc_freq_params_with_length_struct freq_params;
+ rmc_pkt_ul_asgn_struct pkt_ul_asgn;
+ rmc_pkt_dl_asgn_struct pkt_dl_asgn;
+ } chan_asgn_value;
+} iarest_octets;
+#else
+typedef struct {
+ chan_asgn_type chan_asgn_tag;
+ union {
+ rmc_freq_params_with_length_struct freq_params;
+ rmc_pkt_ul_asgn_struct pkt_ul_asgn;
+ rmc_pkt_dl_asgn_struct pkt_dl_asgn;
+ } chan_asgn_value;
+} iarest_octets;
+#endif
+#endif //simon
+#endif
+
+
diff --git a/mcu/protocol/interface/asn/rr/include/rmc_peer_pun.h b/mcu/protocol/interface/asn/rr/include/rmc_peer_pun.h
new file mode 100644
index 0000000..650835b
--- /dev/null
+++ b/mcu/protocol/interface/asn/rr/include/rmc_peer_pun.h
@@ -0,0 +1,746 @@
+/*****************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2005
+*
+* BY OPENING THIS FILE, BUYER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND AGREES
+* THAT THE SOFTWARE/FIRMWARE AND ITS DOCUMENTATIONS ("MEDIATEK SOFTWARE")
+* RECEIVED FROM MEDIATEK AND/OR ITS REPRESENTATIVES ARE PROVIDED TO BUYER ON
+* AN "AS-IS" BASIS ONLY. MEDIATEK EXPRESSLY DISCLAIMS ANY AND ALL WARRANTIES,
+* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF
+* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NONINFRINGEMENT.
+* NEITHER DOES MEDIATEK PROVIDE ANY WARRANTY WHATSOEVER WITH RESPECT TO THE
+* SOFTWARE OF ANY THIRD PARTY WHICH MAY BE USED BY, INCORPORATED IN, OR
+* SUPPLIED WITH THE MEDIATEK SOFTWARE, AND BUYER AGREES TO LOOK ONLY TO SUCH
+* THIRD PARTY FOR ANY WARRANTY CLAIM RELATING THERETO. MEDIATEK SHALL ALSO
+* NOT BE RESPONSIBLE FOR ANY MEDIATEK SOFTWARE RELEASES MADE TO BUYER'S
+* SPECIFICATION OR TO CONFORM TO A PARTICULAR STANDARD OR OPEN FORUM.
+*
+* BUYER'S SOLE AND EXCLUSIVE REMEDY AND MEDIATEK'S ENTIRE AND CUMULATIVE
+* LIABILITY WITH RESPECT TO THE MEDIATEK SOFTWARE RELEASED HEREUNDER WILL BE,
+* AT MEDIATEK'S OPTION, TO REVISE OR REPLACE THE MEDIATEK SOFTWARE AT ISSUE,
+* OR REFUND ANY SOFTWARE LICENSE FEES OR SERVICE CHARGE PAID BY BUYER TO
+* MEDIATEK FOR SUCH MEDIATEK SOFTWARE AT ISSUE.
+*
+* THE TRANSACTION CONTEMPLATED HEREUNDER SHALL BE CONSTRUED IN ACCORDANCE
+* WITH THE LAWS OF THE STATE OF CALIFORNIA, USA, EXCLUDING ITS CONFLICT OF
+* LAWS PRINCIPLES. ANY DISPUTES, CONTROVERSIES OR CLAIMS ARISING THEREOF AND
+* RELATED THERETO SHALL BE SETTLED BY ARBITRATION IN SAN FRANCISCO, CA, UNDER
+* THE RULES OF THE INTERNATIONAL CHAMBER OF COMMERCE (ICC).
+*
+*****************************************************************************/
+
+/*******************************************************************************
+ * Filename:
+ * ---------
+ * rmc_peer_pun.h
+ *
+ * Project:
+ * --------
+ * MAUI
+ *
+ * Description:
+ * ------------
+ *
+ *
+ * Author:
+ * -------
+ *
+ *
+ *==============================================================================
+ * HISTORY
+ * Below this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *------------------------------------------------------------------------------
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ * removed!
+ * removed!
+ * removed!
+ * removed!
+ * removed!
+ * removed!
+ * removed!
+ * removed!
+ * removed!
+ * removed!
+ * removed!
+ * removed!
+ * removed!
+ * removed!
+ * removed!
+ * removed!
+ * removed!
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ *------------------------------------------------------------------------------
+ * Upper this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *==============================================================================
+ *******************************************************************************/
+
+/********************************************************************************
+* Copyright Statement:
+* --------------------
+*
+* This product has been developed using a protocol stack
+* developed by Sasken Communication Technologies Limited.
+*
+********************************************************************************/
+
+
+/*******************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2002
+*
+*******************************************************************************
+ * FILENAME : rmc_peer_pun.h
+ * SYNOPSIS : Functions for encoding/decoding.
+ *
+ * R E V I S I O N H I S T O R Y
+ *
+ */
+#ifdef MTK_PEER
+#define IMP __declspec(dllimport)
+#else
+#define IMP
+#endif
+#ifndef _RMC_PEER_PUN_H
+#define _RMC_PEER_PUN_H
+
+#define spare_and_arfcn_struct_size(x) 2
+IMP unsigned int spare_and_arfcn_struct_bits(void *);
+IMP void spare_and_arfcn_struct_alloc(void *);
+IMP void spare_and_arfcn_struct_dealloc(void *);
+IMP unsigned int spare_and_arfcn_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int spare_and_arfcn_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define maio_and_hsn_struct_size(x) 2
+IMP unsigned int maio_and_hsn_struct_bits(void *);
+IMP void maio_and_hsn_struct_alloc(void *);
+IMP void maio_and_hsn_struct_dealloc(void *);
+IMP unsigned int maio_and_hsn_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int maio_and_hsn_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int chan_desc_struct_bits(void *);
+IMP void chan_desc_struct_alloc(void *);
+IMP void chan_desc_struct_dealloc(void *);
+IMP unsigned int chan_desc_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int chan_desc_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int rmc_maio_struct_bits(void *);
+IMP void rmc_maio_struct_alloc(void *);
+IMP void rmc_maio_struct_dealloc(void *);
+IMP unsigned int rmc_maio_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int rmc_maio_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define arfcn_struct_size(x) 2
+IMP unsigned int arfcn_struct_bits(void *);
+IMP void arfcn_struct_alloc(void *);
+IMP void arfcn_struct_dealloc(void *);
+IMP unsigned int arfcn_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int arfcn_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int non_hop_or_indirect_enc_struct_bits(void *);
+IMP void non_hop_or_indirect_enc_struct_alloc(void *);
+IMP void non_hop_or_indirect_enc_struct_dealloc(void *);
+IMP unsigned int non_hop_or_indirect_enc_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int non_hop_or_indirect_enc_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define direct_enc_struct_size(x) 2
+IMP unsigned int direct_enc_struct_bits(void *);
+IMP void direct_enc_struct_alloc(void *);
+IMP void direct_enc_struct_dealloc(void *);
+IMP unsigned int direct_enc_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int direct_enc_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int pkt_chan_desc_struct_bits(void *);
+IMP void pkt_chan_desc_struct_alloc(void *);
+IMP void pkt_chan_desc_struct_dealloc(void *);
+IMP unsigned int pkt_chan_desc_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int pkt_chan_desc_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define m_timing_advance_struct_size(x) 1
+IMP unsigned int m_timing_advance_struct_bits(void *);
+IMP void m_timing_advance_struct_alloc(void *);
+IMP void m_timing_advance_struct_dealloc(void *);
+IMP unsigned int m_timing_advance_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int m_timing_advance_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define rmc_request_reference_struct_size(x) 3
+IMP unsigned int rmc_request_reference_struct_bits(void *);
+IMP void rmc_request_reference_struct_alloc(void *);
+IMP void rmc_request_reference_struct_dealloc(void *);
+IMP unsigned int rmc_request_reference_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int rmc_request_reference_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int rmc_mobile_alloc_struct_bits(void *);
+IMP void rmc_mobile_alloc_struct_alloc(void *);
+IMP void rmc_mobile_alloc_struct_dealloc(void *);
+IMP unsigned int rmc_mobile_alloc_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int rmc_mobile_alloc_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define mesg_type_struct_size(x) 1
+IMP unsigned int mesg_type_struct_bits(void *);
+IMP void mesg_type_struct_alloc(void *);
+IMP void mesg_type_struct_dealloc(void *);
+IMP unsigned int mesg_type_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int mesg_type_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define rr_rmc_page_mode_struct_size(x) 1
+IMP unsigned int rr_rmc_page_mode_struct_bits(void *);
+IMP void rr_rmc_page_mode_struct_alloc(void *);
+IMP void rr_rmc_page_mode_struct_dealloc(void *);
+IMP unsigned int rr_rmc_page_mode_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int rr_rmc_page_mode_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define dedicated_mode_or_tbf_struct_size(x) 1
+IMP unsigned int dedicated_mode_or_tbf_struct_bits(void *);
+IMP void dedicated_mode_or_tbf_struct_alloc(void *);
+IMP void dedicated_mode_or_tbf_struct_dealloc(void *);
+IMP unsigned int dedicated_mode_or_tbf_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int dedicated_mode_or_tbf_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define rmc_rr_protocol_disc_struct_size(x) 1
+IMP unsigned int rmc_rr_protocol_disc_struct_bits(void *);
+IMP void rmc_rr_protocol_disc_struct_alloc(void *);
+IMP void rmc_rr_protocol_disc_struct_dealloc(void *);
+IMP unsigned int rmc_rr_protocol_disc_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int rmc_rr_protocol_disc_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define rmc_rr_skip_indicator_struct_size(x) 1
+IMP unsigned int rmc_rr_skip_indicator_struct_bits(void *);
+IMP void rmc_rr_skip_indicator_struct_alloc(void *);
+IMP void rmc_rr_skip_indicator_struct_dealloc(void *);
+IMP unsigned int rmc_rr_skip_indicator_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int rmc_rr_skip_indicator_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define rmc_l2_pseudo_length_struct_size(x) 1
+IMP unsigned int rmc_l2_pseudo_length_struct_bits(void *);
+IMP void rmc_l2_pseudo_length_struct_alloc(void *);
+IMP void rmc_l2_pseudo_length_struct_dealloc(void *);
+IMP unsigned int rmc_l2_pseudo_length_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int rmc_l2_pseudo_length_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int immediate_assign_message_bits(void *);
+IMP void immediate_assign_message_alloc(void *);
+IMP void immediate_assign_message_dealloc(void *);
+IMP unsigned int immediate_assign_message_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int immediate_assign_message_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define rmc_spare_half_octet_struct_size(x) 1
+IMP unsigned int rmc_spare_half_octet_struct_bits(void *);
+IMP void rmc_spare_half_octet_struct_alloc(void *);
+IMP void rmc_spare_half_octet_struct_dealloc(void *);
+IMP unsigned int rmc_spare_half_octet_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int rmc_spare_half_octet_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define rmc_wait_indication_struct_size(x) 1
+IMP unsigned int rmc_wait_indication_struct_bits(void *);
+IMP void rmc_wait_indication_struct_alloc(void *);
+IMP void rmc_wait_indication_struct_dealloc(void *);
+IMP unsigned int rmc_wait_indication_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int rmc_wait_indication_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define iarrest_octets_size(x) 3
+IMP unsigned int iarrest_octets_bits(void *);
+IMP void iarrest_octets_alloc(void *);
+IMP void iarrest_octets_dealloc(void *);
+IMP unsigned int iarrest_octets_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int iarrest_octets_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define imm_asgn_rej_msg_struct_size(x) 23
+IMP unsigned int imm_asgn_rej_msg_struct_bits(void *);
+IMP void imm_asgn_rej_msg_struct_alloc(void *);
+IMP void imm_asgn_rej_msg_struct_dealloc(void *);
+IMP unsigned int imm_asgn_rej_msg_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int imm_asgn_rej_msg_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int immediate_assign_dedicated_bits(void *);
+IMP void immediate_assign_dedicated_alloc(void *);
+IMP void immediate_assign_dedicated_dealloc(void *);
+IMP unsigned int immediate_assign_dedicated_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int immediate_assign_dedicated_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int immediate_assign_ext_message_bits(void *);
+IMP void immediate_assign_ext_message_alloc(void *);
+IMP void immediate_assign_ext_message_dealloc(void *);
+IMP unsigned int immediate_assign_ext_message_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int immediate_assign_ext_message_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#if 0
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+#endif
+
+#define rr_status_struct_size(x) 3
+IMP unsigned int rr_status_struct_bits(void *);
+IMP void rr_status_struct_alloc(void *);
+IMP void rr_status_struct_dealloc(void *);
+IMP unsigned int rr_status_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int rr_status_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define cell_channel_description_struct_size(x) 16
+IMP unsigned int cell_channel_description_struct_bits(void *);
+IMP void cell_channel_description_struct_alloc(void *);
+IMP void cell_channel_description_struct_dealloc(void *);
+IMP unsigned int cell_channel_description_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int cell_channel_description_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define cell_description_struct_size(x) 2
+IMP unsigned int cell_description_struct_bits(void *);
+IMP void cell_description_struct_alloc(void *);
+IMP void cell_description_struct_dealloc(void *);
+IMP unsigned int cell_description_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int cell_description_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define nc_mode_struct_size(x) 1
+IMP unsigned int nc_mode_struct_bits(void *);
+IMP void nc_mode_struct_alloc(void *);
+IMP void nc_mode_struct_dealloc(void *);
+IMP unsigned int nc_mode_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int nc_mode_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define rr_cell_change_order_struct_size(x) 5
+IMP unsigned int rr_cell_change_order_struct_bits(void *);
+IMP void rr_cell_change_order_struct_alloc(void *);
+IMP void rr_cell_change_order_struct_dealloc(void *);
+IMP unsigned int rr_cell_change_order_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int rr_cell_change_order_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define extended_measurement_freq_list_struct_size(x) 16
+IMP unsigned int extended_measurement_freq_list_struct_bits(void *);
+IMP void extended_measurement_freq_list_struct_alloc(void *);
+IMP void extended_measurement_freq_list_struct_dealloc(void *);
+IMP unsigned int extended_measurement_freq_list_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int extended_measurement_freq_list_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define extended_measurement_order_struct_size(x) 19
+IMP unsigned int extended_measurement_order_struct_bits(void *);
+IMP void extended_measurement_order_struct_alloc(void *);
+IMP void extended_measurement_order_struct_dealloc(void *);
+IMP unsigned int extended_measurement_order_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int extended_measurement_order_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int channel_description_struct_bits(void *);
+IMP void channel_description_struct_alloc(void *);
+IMP void channel_description_struct_dealloc(void *);
+IMP unsigned int channel_description_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int channel_description_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int frequency_list_struct_bits(void *);
+IMP void frequency_list_struct_alloc(void *);
+IMP void frequency_list_struct_dealloc(void *);
+IMP unsigned int frequency_list_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int frequency_list_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int frequency_short_list_struct_bits(void *);
+IMP void frequency_short_list_struct_alloc(void *);
+IMP void frequency_short_list_struct_dealloc(void *);
+IMP unsigned int frequency_short_list_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int frequency_short_list_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define frequency_channel_sequence_struct_size(x) 9
+IMP unsigned int frequency_channel_sequence_struct_bits(void *);
+IMP void frequency_channel_sequence_struct_alloc(void *);
+IMP void frequency_channel_sequence_struct_dealloc(void *);
+IMP unsigned int frequency_channel_sequence_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int frequency_channel_sequence_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define power_command_struct_size(x) 1
+IMP unsigned int power_command_struct_bits(void *);
+IMP void power_command_struct_alloc(void *);
+IMP void power_command_struct_dealloc(void *);
+IMP unsigned int power_command_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int power_command_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define cipher_mode_setting_struct_size(x) 1
+IMP unsigned int cipher_mode_setting_struct_bits(void *);
+IMP void cipher_mode_setting_struct_alloc(void *);
+IMP void cipher_mode_setting_struct_dealloc(void *);
+IMP unsigned int cipher_mode_setting_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int cipher_mode_setting_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define vgcs_target_mode_indication_struct_size(x) 2
+IMP unsigned int vgcs_target_mode_indication_struct_bits(void *);
+IMP void vgcs_target_mode_indication_struct_alloc(void *);
+IMP void vgcs_target_mode_indication_struct_dealloc(void *);
+IMP unsigned int vgcs_target_mode_indication_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int vgcs_target_mode_indication_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int assignment_command_struct_bits(void *);
+IMP void assignment_command_struct_alloc(void *);
+IMP void assignment_command_struct_dealloc(void *);
+IMP unsigned int assignment_command_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int assignment_command_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int pdch_assignment_command_struct_bits(void *);
+IMP void pdch_assignment_command_struct_alloc(void *);
+IMP void pdch_assignment_command_struct_dealloc(void *);
+IMP unsigned int pdch_assignment_command_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int pdch_assignment_command_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define classmark2_struct_size(x) 4
+IMP unsigned int classmark2_struct_bits(void *);
+IMP void classmark2_struct_alloc(void *);
+IMP void classmark2_struct_dealloc(void *);
+IMP unsigned int classmark2_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int classmark2_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define a5_bits_struct_size(x) 1
+IMP unsigned int a5_bits_struct_bits(void *);
+IMP void a5_bits_struct_alloc(void *);
+IMP void a5_bits_struct_dealloc(void *);
+IMP unsigned int a5_bits_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int a5_bits_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define a5_bits_1_struct_size(x) 2
+IMP unsigned int a5_bits_1_struct_bits(void *);
+IMP void a5_bits_1_struct_alloc(void *);
+IMP void a5_bits_1_struct_dealloc(void *);
+IMP unsigned int a5_bits_1_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int a5_bits_1_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define a5_bits_2_struct_size(x) 2
+IMP unsigned int a5_bits_2_struct_bits(void *);
+IMP void a5_bits_2_struct_alloc(void *);
+IMP void a5_bits_2_struct_dealloc(void *);
+IMP unsigned int a5_bits_2_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int a5_bits_2_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int edge_struct_bits(void *);
+IMP void edge_struct_alloc(void *);
+IMP void edge_struct_dealloc(void *);
+IMP unsigned int edge_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int edge_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define gsm_band_inf_struct_size(x) 1
+IMP unsigned int gsm_band_inf_struct_bits(void *);
+IMP void gsm_band_inf_struct_alloc(void *);
+IMP void gsm_band_inf_struct_dealloc(void *);
+IMP unsigned int gsm_band_inf_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int gsm_band_inf_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define gprs_mlt_slt_struct_size(x) 1
+IMP unsigned int gprs_mlt_slt_struct_bits(void *);
+IMP void gprs_mlt_slt_struct_alloc(void *);
+IMP void gprs_mlt_slt_struct_dealloc(void *);
+IMP unsigned int gprs_mlt_slt_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int gprs_mlt_slt_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int classmark3_struct_bits(void *);
+IMP void classmark3_struct_alloc(void *);
+IMP void classmark3_struct_dealloc(void *);
+IMP unsigned int classmark3_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int classmark3_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define classmark_enq_mask_size(x) 2
+IMP unsigned int classmark_enq_mask_bits(void *);
+IMP void classmark_enq_mask_alloc(void *);
+IMP void classmark_enq_mask_dealloc(void *);
+IMP unsigned int classmark_enq_mask_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int classmark_enq_mask_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int rr_peer_classmark_enquiry_struct_bits(void *);
+IMP void rr_peer_classmark_enquiry_struct_alloc(void *);
+IMP void rr_peer_classmark_enquiry_struct_dealloc(void *);
+IMP unsigned int rr_peer_classmark_enquiry_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int rr_peer_classmark_enquiry_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define rr_peer_partial_release_complete_struct_size(x) 2
+IMP unsigned int rr_peer_partial_release_complete_struct_bits(void *);
+IMP void rr_peer_partial_release_complete_struct_alloc(void *);
+IMP void rr_peer_partial_release_complete_struct_dealloc(void *);
+IMP unsigned int rr_peer_partial_release_complete_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int rr_peer_partial_release_complete_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int rr_peer_additional_assignment_struct_bits(void *);
+IMP void rr_peer_additional_assignment_struct_alloc(void *);
+IMP void rr_peer_additional_assignment_struct_dealloc(void *);
+IMP unsigned int rr_peer_additional_assignment_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int rr_peer_additional_assignment_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#if 0
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+#endif
+
+#define rr_peer_rr_status_struct_size(x) 3
+IMP unsigned int rr_peer_rr_status_struct_bits(void *);
+IMP void rr_peer_rr_status_struct_alloc(void *);
+IMP void rr_peer_rr_status_struct_dealloc(void *);
+IMP unsigned int rr_peer_rr_status_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int rr_peer_rr_status_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int rr_peer_partial_release_struct_bits(void *);
+IMP void rr_peer_partial_release_struct_alloc(void *);
+IMP void rr_peer_partial_release_struct_dealloc(void *);
+IMP unsigned int rr_peer_partial_release_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int rr_peer_partial_release_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define loop_type_struct_size(x) 1
+IMP unsigned int loop_type_struct_bits(void *);
+IMP void loop_type_struct_alloc(void *);
+IMP void loop_type_struct_dealloc(void *);
+IMP unsigned int loop_type_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int loop_type_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define close_tch_loop_cmd_struct_size(x) 3
+IMP unsigned int close_tch_loop_cmd_struct_bits(void *);
+IMP void close_tch_loop_cmd_struct_alloc(void *);
+IMP void close_tch_loop_cmd_struct_dealloc(void *);
+IMP unsigned int close_tch_loop_cmd_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int close_tch_loop_cmd_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int open_loop_cmd_struct_bits(void *);
+IMP void open_loop_cmd_struct_alloc(void *);
+IMP void open_loop_cmd_struct_dealloc(void *);
+IMP unsigned int open_loop_cmd_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int open_loop_cmd_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define close_multi_loop_cmd_struct_size(x) 3
+IMP unsigned int close_multi_loop_cmd_struct_bits(void *);
+IMP void close_multi_loop_cmd_struct_alloc(void *);
+IMP void close_multi_loop_cmd_struct_dealloc(void *);
+IMP unsigned int close_multi_loop_cmd_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int close_multi_loop_cmd_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define open_multi_loop_cmd_struct_size(x) 2
+IMP unsigned int open_multi_loop_cmd_struct_bits(void *);
+IMP void open_multi_loop_cmd_struct_alloc(void *);
+IMP void open_multi_loop_cmd_struct_dealloc(void *);
+IMP unsigned int open_multi_loop_cmd_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int open_multi_loop_cmd_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define close_multi_loop_ack_result_struct_size(x) 1
+IMP unsigned int close_multi_loop_ack_result_struct_bits(void *);
+IMP void close_multi_loop_ack_result_struct_alloc(void *);
+IMP void close_multi_loop_ack_result_struct_dealloc(void *);
+IMP unsigned int close_multi_loop_ack_result_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int close_multi_loop_ack_result_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define close_multi_loop_ack_size(x) 3
+IMP unsigned int close_multi_loop_ack_bits(void *);
+IMP void close_multi_loop_ack_alloc(void *);
+IMP void close_multi_loop_ack_dealloc(void *);
+IMP unsigned int close_multi_loop_ack_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int close_multi_loop_ack_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define cipher_mode_command_struct_size(x) 3
+IMP unsigned int cipher_mode_command_struct_bits(void *);
+IMP void cipher_mode_command_struct_alloc(void *);
+IMP void cipher_mode_command_struct_dealloc(void *);
+IMP unsigned int cipher_mode_command_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int cipher_mode_command_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int cipher_mode_complete_struct_bits(void *);
+IMP void cipher_mode_complete_struct_alloc(void *);
+IMP void cipher_mode_complete_struct_dealloc(void *);
+IMP unsigned int cipher_mode_complete_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int cipher_mode_complete_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int configuration_change_command_struct_bits(void *);
+IMP void configuration_change_command_struct_alloc(void *);
+IMP void configuration_change_command_struct_dealloc(void *);
+IMP unsigned int configuration_change_command_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int configuration_change_command_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define sync_info_struct_size(x) 1
+IMP unsigned int sync_info_struct_bits(void *);
+IMP void sync_info_struct_alloc(void *);
+IMP void sync_info_struct_dealloc(void *);
+IMP unsigned int sync_info_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int sync_info_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define real_time_diff_struct_size(x) 2
+IMP unsigned int real_time_diff_struct_bits(void *);
+IMP void real_time_diff_struct_alloc(void *);
+IMP void real_time_diff_struct_dealloc(void *);
+IMP unsigned int real_time_diff_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int real_time_diff_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define mob_obs_time_diff_struct_size(x) 4
+IMP unsigned int mob_obs_time_diff_struct_bits(void *);
+IMP void mob_obs_time_diff_struct_alloc(void *);
+IMP void mob_obs_time_diff_struct_dealloc(void *);
+IMP unsigned int mob_obs_time_diff_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int mob_obs_time_diff_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int handover_command_struct_bits(void *);
+IMP void handover_command_struct_alloc(void *);
+IMP void handover_command_struct_dealloc(void *);
+IMP unsigned int handover_command_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int handover_command_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int handover_complete_struct_bits(void *);
+IMP void handover_complete_struct_alloc(void *);
+IMP void handover_complete_struct_dealloc(void *);
+IMP unsigned int handover_complete_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int handover_complete_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define physical_information_struct_size(x) 3
+IMP unsigned int physical_information_struct_bits(void *);
+IMP void physical_information_struct_alloc(void *);
+IMP void physical_information_struct_dealloc(void *);
+IMP unsigned int physical_information_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int physical_information_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int apdu_data_struct_bits(void *);
+IMP void apdu_data_struct_alloc(void * );
+IMP void apdu_data_struct_dealloc(void * );
+IMP unsigned int apdu_data_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int apdu_data_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+IMP unsigned int application_information_struct_bits(void *);
+IMP void application_information_struct_alloc(void *);
+IMP void application_information_struct_dealloc(void *);
+IMP unsigned int application_information_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int application_information_struct_unpack(void * , kal_uint8 * ,unsigned int , unsigned int , void * );
+IMP unsigned int channel_request_struct_bits(void * );
+IMP void channel_request_struct_alloc(void * );
+IMP void channel_request_struct_dealloc(void * );
+IMP unsigned int channel_request_struct_pack(kal_uint8 * , void * ,unsigned int );
+IMP unsigned int channel_request_struct_unpack(void * , kal_uint8 * ,unsigned int , unsigned int , void * );
+IMP unsigned int frequency_redefinition_struct_bits(void *);
+IMP void frequency_redefinition_struct_alloc(void *);
+IMP void frequency_redefinition_struct_dealloc(void *);
+IMP unsigned int frequency_redefinition_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int frequency_redefinition_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int channel_mode_modify_struct_bits(void *);
+IMP void channel_mode_modify_struct_alloc(void *);
+IMP void channel_mode_modify_struct_dealloc(void *);
+IMP unsigned int channel_mode_modify_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int channel_mode_modify_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int channel_mode_modify_ack_struct_bits(void *);
+IMP void channel_mode_modify_ack_struct_alloc(void *);
+IMP void channel_mode_modify_ack_struct_dealloc(void *);
+IMP unsigned int channel_mode_modify_ack_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int channel_mode_modify_ack_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#ifdef __ETWS_SUPPORT__
+extern void rr_decode_group_call_info(bit_stream *bs_ptr, kal_uint16 *length, kal_bool *result);
+extern void rr_decode_cell_global_count(bit_stream *bs_ptr, kal_uint16 *length, kal_bool *result);
+extern void rr_decode_mbms_para(bit_stream *bs_ptr, kal_uint16 *length, kal_bool *result);
+extern void rr_decode_mbms_channel_para_ie(bit_stream *bs_ptr, kal_uint16 *length, kal_bool *result);
+extern void rr_decode_mbms_session_list_ie(bit_stream *bs_ptr, kal_uint16 *length, kal_bool *result);
+extern void rr_decode_mbms_freq_para_ie(bit_stream *bs_ptr, kal_uint16 *length, kal_bool *result);
+#ifdef __PS_SERVICE__
+extern void rr_decode_page_info_struct(bit_stream *bs_ptr, kal_uint16 *length);
+extern void rr_decode_repeated_iu_page_info(bit_stream *bs_ptr, kal_uint16 *length);
+#endif /* __PS_SERVICE__ */
+#endif /* __ETWS_SUPPORT__ */
+
+#endif
+
+
diff --git a/mcu/protocol/interface/asn/rr/include/rmc_peer_struct.h b/mcu/protocol/interface/asn/rr/include/rmc_peer_struct.h
new file mode 100644
index 0000000..4084b6e
--- /dev/null
+++ b/mcu/protocol/interface/asn/rr/include/rmc_peer_struct.h
@@ -0,0 +1,1150 @@
+/*****************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2005
+*
+* BY OPENING THIS FILE, BUYER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND AGREES
+* THAT THE SOFTWARE/FIRMWARE AND ITS DOCUMENTATIONS ("MEDIATEK SOFTWARE")
+* RECEIVED FROM MEDIATEK AND/OR ITS REPRESENTATIVES ARE PROVIDED TO BUYER ON
+* AN "AS-IS" BASIS ONLY. MEDIATEK EXPRESSLY DISCLAIMS ANY AND ALL WARRANTIES,
+* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF
+* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NONINFRINGEMENT.
+* NEITHER DOES MEDIATEK PROVIDE ANY WARRANTY WHATSOEVER WITH RESPECT TO THE
+* SOFTWARE OF ANY THIRD PARTY WHICH MAY BE USED BY, INCORPORATED IN, OR
+* SUPPLIED WITH THE MEDIATEK SOFTWARE, AND BUYER AGREES TO LOOK ONLY TO SUCH
+* THIRD PARTY FOR ANY WARRANTY CLAIM RELATING THERETO. MEDIATEK SHALL ALSO
+* NOT BE RESPONSIBLE FOR ANY MEDIATEK SOFTWARE RELEASES MADE TO BUYER'S
+* SPECIFICATION OR TO CONFORM TO A PARTICULAR STANDARD OR OPEN FORUM.
+*
+* BUYER'S SOLE AND EXCLUSIVE REMEDY AND MEDIATEK'S ENTIRE AND CUMULATIVE
+* LIABILITY WITH RESPECT TO THE MEDIATEK SOFTWARE RELEASED HEREUNDER WILL BE,
+* AT MEDIATEK'S OPTION, TO REVISE OR REPLACE THE MEDIATEK SOFTWARE AT ISSUE,
+* OR REFUND ANY SOFTWARE LICENSE FEES OR SERVICE CHARGE PAID BY BUYER TO
+* MEDIATEK FOR SUCH MEDIATEK SOFTWARE AT ISSUE.
+*
+* THE TRANSACTION CONTEMPLATED HEREUNDER SHALL BE CONSTRUED IN ACCORDANCE
+* WITH THE LAWS OF THE STATE OF CALIFORNIA, USA, EXCLUDING ITS CONFLICT OF
+* LAWS PRINCIPLES. ANY DISPUTES, CONTROVERSIES OR CLAIMS ARISING THEREOF AND
+* RELATED THERETO SHALL BE SETTLED BY ARBITRATION IN SAN FRANCISCO, CA, UNDER
+* THE RULES OF THE INTERNATIONAL CHAMBER OF COMMERCE (ICC).
+*
+*****************************************************************************/
+
+/*******************************************************************************
+ * Filename:
+ * ---------
+ * rmc_peer_struct.h
+ *
+ * Project:
+ * --------
+ * MAUI
+ *
+ * Description:
+ * ------------
+ *
+ *
+ * Author:
+ * -------
+ *
+ *
+ *==============================================================================
+ * HISTORY
+ * Below this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *------------------------------------------------------------------------------
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ * removed!
+ * removed!
+ * removed!
+ * removed!
+ * removed!
+ * removed!
+ * removed!
+ * removed!
+ * removed!
+ * removed!
+ * removed!
+ * removed!
+ * removed!
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ *------------------------------------------------------------------------------
+ * Upper this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *==============================================================================
+ *******************************************************************************/
+
+/********************************************************************************
+* Copyright Statement:
+* --------------------
+*
+* This product has been developed using a protocol stack
+* developed by Sasken Communication Technologies Limited.
+*
+********************************************************************************/
+
+
+/*******************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2002
+*
+*******************************************************************************
+ * FILENAME : rmc_peer_struct.h
+ * SYNOPSIS : Functions for encoding/decoding.
+ *
+ * R E V I S I O N H I S T O R Y
+ *
+ */
+#ifndef _RMC_PEER_STRUCT_H
+#define _RMC_PEER_STRUCT_H
+
+#include "rmc_peer_dl.h"
+#include "rmc_peer_dl_struct.h"
+#include "rr_spare_bit.h"
+#include "nstd_spare_bit_struct.h"
+#include "l3_inc_enums.h"
+#include "nstd_channel_rel_struct.h"
+#include "rmc_peer.h"
+#include "mcd_l3_inc_struct.h"
+#ifdef __PS_SERVICE__
+#include "gprs_rlcmac_peer_struct.h"
+#endif /* __PS_SERVICE__ */
+
+#ifndef _MS_MEAS_CAP_STRUCT
+#define _MS_MEAS_CAP_STRUCT
+typedef struct {
+ kal_uint8 sms_value; /* SMS VALUE*/
+ kal_uint8 sm_value; /* SM VALUE*/
+} ms_meas_cap_struct;
+#endif
+
+typedef struct {
+ kal_uint8 spare;
+ kal_uint16 arfcn;
+} spare_and_arfcn_struct;
+
+typedef struct {
+ kal_uint8 maio;
+ kal_uint8 hsn;
+} maio_and_hsn_struct;
+
+typedef struct {
+ kal_uint8 chan_type_tdmaoffset;
+ kal_uint8 tn;
+ kal_uint8 tsc;
+ enum_is_present maio_tag;
+ union {
+ spare_and_arfcn_struct spare_and_arfcn;
+ maio_and_hsn_struct maio_and_hsn;
+ } maio_value;
+} chan_desc_struct;
+
+typedef struct {
+ kal_uint8 spare;
+ kal_uint8 maio;
+ kal_uint8 ma_num;
+ enum_is_present ch1_tag;
+ union {
+ kal_uint8 spare;
+ kal_uint8 chngmark1;
+ } ch1_value;
+} rmc_maio_struct;
+
+typedef struct {
+ kal_uint8 spare;
+ kal_uint16 arfcn;
+} arfcn_struct;
+
+typedef struct {
+ enum_is_present ch1_tag;
+ union {
+ arfcn_struct arfcn;
+ rmc_maio_struct maio;
+ } ch1_value;
+} non_hop_or_indirect_enc_struct;
+
+typedef struct {
+ kal_uint8 maio;
+ kal_uint8 hsn;
+} direct_enc_struct;
+
+typedef struct {
+ kal_uint8 chan_type; /* shall be ignored by the receiver.
+ always set to the value 00001.*/
+ kal_uint8 tn; /* time slot number*/
+ kal_uint8 tsc; /* training sequence code*/
+ chan_config ch_config_tag;
+ union {
+ non_hop_or_indirect_enc_struct non_hop_or_indirect_enc;
+ direct_enc_struct direct_enc;
+ } ch_config_value;
+} pkt_chan_desc_struct;
+
+typedef struct {
+ kal_uint8 value; /* valid values for all bands other than
+ GSM 400 are 0-63. for GSM 400, the valid
+ values are 0-219.*/
+} m_timing_advance_struct;
+
+typedef struct {
+ kal_uint8 random_acc_info; /* random access info. to be coded in the
+ same way as the channel request message.*/
+ kal_uint8 t1;
+ kal_uint8 t3;
+ kal_uint8 t2;
+} rmc_request_reference_struct;
+
+typedef struct {
+ kal_uint8 no_mobile_alloc;
+ kal_uint8 mobile_alloc_size;
+ kal_uint8 *mobile_alloc;
+} rmc_mobile_alloc_struct;
+
+typedef struct {
+ kal_uint8 mesg_type;
+} mesg_type_struct;
+
+typedef struct {
+ kal_uint8 spare;
+ kal_uint8 page_mode; /* indicates whether the paging mode
+ is normal paging, extended paging,
+ paging reorganization or same as
+ before.*/
+} rr_rmc_page_mode_struct;
+
+typedef struct {
+ kal_uint8 spare;
+ kal_uint8 two_mesg_asgn_ind;
+ kal_uint8 down_link;
+ kal_uint8 tbf_or_dedicated_mode_ind;
+} dedicated_mode_or_tbf_struct;
+
+typedef struct {
+ kal_uint8 proto_disc;
+} rmc_rr_protocol_disc_struct;
+
+typedef struct {
+ kal_uint8 skip_ind;
+} rmc_rr_skip_indicator_struct;
+
+typedef struct {
+ kal_uint8 length;
+ kal_uint8 fixed_valuefield;
+} rmc_l2_pseudo_length_struct;
+
+typedef struct {
+ rmc_l2_pseudo_length_struct l2pseudo_length;
+ rmc_rr_skip_indicator_struct skip;
+ rmc_rr_protocol_disc_struct proto_disc;
+ mesg_type_struct mesg_type;
+ dedicated_mode_or_tbf_struct ded_or_tbf;
+ rr_rmc_page_mode_struct page_mode;
+ pkt_chan_desc_struct pkt_chan_desc;
+ rmc_request_reference_struct req_ref;
+ m_timing_advance_struct time_adv;
+ rmc_mobile_alloc_struct mob_alloc;
+#ifdef __PS_SERVICE__
+ iarest_octets rest_oct;
+#endif
+} immediate_assign_message;
+
+typedef struct {
+ kal_uint8 spare;
+} rmc_spare_half_octet_struct;
+
+typedef struct {
+ kal_uint8 time_out_value; /* T3122 or T3142 timeout value*/
+} rmc_wait_indication_struct;
+
+typedef struct {
+ kal_uint32 spare; /* set to 0x0 always*/
+} iarrest_octets;
+
+typedef struct {
+ rmc_l2_pseudo_length_struct length;
+ rmc_rr_skip_indicator_struct skip_ind;
+ rmc_rr_protocol_disc_struct protocol_disc;
+ mesg_type_struct mesg_type;
+ rmc_spare_half_octet_struct spare;
+ rr_rmc_page_mode_struct page_mode;
+ rmc_request_reference_struct req_ref1;
+ rmc_wait_indication_struct wait_ind1;
+ rmc_request_reference_struct req_ref2;
+ rmc_wait_indication_struct wait_ind2;
+ rmc_request_reference_struct req_ref3;
+ rmc_wait_indication_struct wait_ind3;
+ rmc_request_reference_struct req_ref4;
+ rmc_wait_indication_struct wait_ind4;
+ iarrest_octets rest_octets;
+} imm_asgn_rej_msg_struct;
+
+typedef struct {
+ rmc_l2_pseudo_length_struct l2pseudo_length;
+ rmc_rr_skip_indicator_struct skip;
+ rmc_rr_protocol_disc_struct proto_disc;
+ mesg_type_struct mesg_type;
+ dedicated_mode_or_tbf_struct ded_or_tbf;
+ rr_rmc_page_mode_struct page_mode;
+ chan_desc_struct chan_desc; /* always ded description*/
+ rmc_request_reference_struct req_ref;
+ m_timing_advance_struct time_adv;
+ rmc_mobile_alloc_struct mob_alloc;
+#ifdef __PS_SERVICE__
+ iarest_octets rest_oct;
+#endif
+} immediate_assign_dedicated;
+
+typedef struct {
+ rmc_l2_pseudo_length_struct l2pseudo_length;
+ rmc_rr_skip_indicator_struct skip;
+ rmc_rr_protocol_disc_struct proto_disc;
+ mesg_type_struct mesg_type;
+ rmc_spare_half_octet_struct spare;
+ rr_rmc_page_mode_struct page_mode;
+ chan_desc_struct chan_desc1; /* channel description */
+ rmc_request_reference_struct req_ref1;
+ m_timing_advance_struct time_adv1;
+ chan_desc_struct chan_desc2; /* channel description */
+ rmc_request_reference_struct req_ref2;
+ m_timing_advance_struct time_adv2;
+ rmc_mobile_alloc_struct mob_alloc;
+ kal_uint8 no_iax_rest_oct;
+ kal_uint8 iax_rest_oct_size;
+ kal_uint8 *iax_rest_oct; /* spare*/
+} immediate_assign_ext_message;
+
+#if 0
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+#endif
+
+typedef struct {
+ kal_uint8 skip_indicator;
+ kal_uint8 protocol_disc;
+ kal_uint8 message_type;
+ kal_uint8 rr_cause;
+} rr_status_struct;
+
+typedef struct {
+ kal_uint8 format_id;
+ kal_uint8 spare;
+ kal_uint8 ca_arfcn_1;
+ kal_uint8 ca_arfcn_2[15];
+} cell_channel_description_struct;
+
+typedef struct {
+ kal_uint8 bcch_arfcn_high; /* high part*/
+ kal_uint8 ncc;
+ kal_uint8 bcc;
+ kal_uint8 bcch_arfcn_low; /* low part*/
+} cell_description_struct;
+
+typedef struct {
+ kal_uint8 spare;
+ kal_uint8 nc_mode;
+} nc_mode_struct;
+
+typedef struct {
+ kal_uint8 skip_indicator;
+ kal_uint8 protocol_disc;
+ kal_uint8 message_type;
+ cell_description_struct cell_description;
+ kal_uint8 spare_half_octet;
+ nc_mode_struct nc_mode;
+} rr_cell_change_order_struct;
+
+typedef struct {
+ kal_uint8 format_id;
+ kal_uint8 spare;
+ kal_uint8 seq_code;
+ kal_uint8 ca_arfcn_1;
+ kal_uint8 ca_arfcn_2[15];
+} extended_measurement_freq_list_struct;
+
+typedef struct {
+ kal_uint8 l2pseudo_length;
+ kal_uint8 skip_indicator;
+ kal_uint8 protocol_disc;
+ kal_uint8 message_type;
+ extended_measurement_freq_list_struct ext_freq_list;
+} extended_measurement_order_struct;
+
+typedef struct {
+ kal_uint8 ch_typeand_tdma;
+ kal_uint8 tn;
+ kal_uint8 training_seq; /* training sequence code*/
+ is_present_enum hopping_ch_tag;
+ union {
+ field1_struct channel_select1;
+ field2_struct channel_select2;
+ } hopping_ch_value;
+} channel_description_struct;
+
+typedef struct {
+ kal_uint8 no_ca_arfcn;
+ kal_uint8 ca_arfcn_size;
+ kal_uint8 *ca_arfcn;
+} frequency_list_struct;
+
+typedef struct {
+ kal_uint8 no_ca_arfcn;
+ kal_uint8 ca_arfcn_size;
+ kal_uint8 *ca_arfcn;
+} frequency_short_list_struct;
+
+typedef struct {
+ kal_uint8 spare;
+ kal_uint8 lowest_arfcn;
+ kal_uint8 inc_skip_arfcn[16];
+} frequency_channel_sequence_struct;
+
+typedef struct {
+ kal_uint8 atc;
+ kal_uint8 spare;
+ kal_uint8 fpc;
+ kal_uint8 power_level;
+} power_command_struct;
+
+typedef struct {
+ kal_uint8 algo_identifier;
+ kal_uint8 sc;
+} cipher_mode_setting_struct;
+
+typedef struct {
+ kal_uint8 length;
+ kal_uint8 target_mode;
+ kal_uint8 group_cipher_key_no;
+ kal_uint8 spare1;
+ kal_uint8 spare2;
+} vgcs_target_mode_indication_struct;
+
+typedef struct {
+ kal_uint8 skip_indicator;
+ kal_uint8 protocol_disc;
+ kal_uint8 message_type;
+ channel_description_struct channel_desc1;
+ power_command_struct power_command;
+ kal_uint8 freq_list1P;
+ frequency_list_struct freq_list1;
+ kal_uint8 cell_channel_descP;
+ cell_channel_description_struct cell_channel_desc;
+ kal_uint8 multi_slot_allocP;
+ kal_uint8 no_multi_slot_alloc;
+ kal_uint8 multi_slot_alloc_size;
+ kal_uint8 *multi_slot_alloc;
+ kal_uint8 channel_mode1P;
+ kal_uint8 channel_mode1;
+ kal_uint8 channel_mode2P;
+ kal_uint8 channel_mode2;
+ kal_uint8 channel_mode3P;
+ kal_uint8 channel_mode3;
+ kal_uint8 channel_mode4P;
+ kal_uint8 channel_mode4;
+ kal_uint8 channel_mode5P;
+ kal_uint8 channel_mode5;
+ kal_uint8 channel_mode6P;
+ kal_uint8 channel_mode6;
+ kal_uint8 channel_mode7P;
+ kal_uint8 channel_mode7;
+ kal_uint8 channel_mode8P;
+ kal_uint8 channel_mode8;
+ kal_uint8 channel_desc2P;
+ channel_description_struct channel_desc2;
+ kal_uint8 channel_mode9P;
+ kal_uint8 channel_mode9;
+ kal_uint8 mobile_alloc1P;
+ kal_uint8 no_mobile_alloc1;
+ kal_uint8 mobile_alloc1_size;
+ kal_uint8 *mobile_alloc1;
+ kal_uint8 starting_timeP;
+ rmc_start_time_struct starting_time;
+ kal_uint8 freq_list2P;
+ frequency_list_struct freq_list2;
+ kal_uint8 channel_desc3P;
+ channel_description_struct channel_desc3;
+ kal_uint8 channel_desc4P;
+ channel_description_struct channel_desc4;
+ kal_uint8 freq_channel_seqP;
+ frequency_channel_sequence_struct freq_channel_seq;
+ kal_uint8 mobile_alloc2P;
+ kal_uint8 no_mobile_alloc2;
+ kal_uint8 mobile_alloc2_size;
+ kal_uint8 *mobile_alloc2;
+ kal_uint8 cipher_modeP;
+ cipher_mode_setting_struct cipher_mode;
+ kal_uint8 vgcs_target_modeP;
+ vgcs_target_mode_indication_struct vgcs_target_mode;
+ kal_uint8 multi_rate_configP;
+ kal_uint8 no_multi_rate_config;
+ kal_uint8 multi_rate_config_size;
+ /* kal_uint8 *multi_rate_config; */
+ kal_uint8 multirate_speech_version;
+ kal_uint8 nscb;
+ kal_uint8 icmi;
+ kal_uint8 start_mode;
+ kal_uint8 active_codec_set;
+ kal_uint8 threshold[3];
+ kal_uint8 hysteresis[3];
+} assignment_command_struct;
+
+#ifdef __PS_SERVICE__
+typedef struct {
+ kal_uint8 skip_indicator;
+ kal_uint8 protocol_disc;
+ kal_uint8 message_type;
+ channel_description_struct channel_desc1;
+ kal_uint8 cell_channel_descP;
+ cell_channel_description_struct cell_channel_desc;
+ kal_uint8 freq_list1P;
+ frequency_list_struct freq_list1;
+ kal_uint8 mobile_alloc1P;
+ kal_uint8 no_mobile_alloc1;
+ kal_uint8 mobile_alloc1_size;
+ kal_uint8 *mobile_alloc1;
+ kal_uint8 starting_timeP;
+ rmc_start_time_struct starting_time;
+ kal_uint8 freq_list2P;
+ frequency_list_struct freq_list2;
+ kal_uint8 channel_desc2P;
+ channel_description_struct channel_desc2;
+ kal_uint8 freq_channel_seqP;
+ frequency_channel_sequence_struct freq_channel_seq;
+ kal_uint8 mobile_alloc2P;
+ kal_uint8 no_mobile_alloc2;
+ kal_uint8 mobile_alloc2_size;
+ kal_uint8 *mobile_alloc2;
+ kal_uint8 rr_packet_uplinkP;
+ rr_packet_uplink_struct rr_packet_uplink;
+ kal_uint8 rr_packet_downlinkP;
+ rr_packet_downlink_struct rr_packet_downlink;
+} pdch_assignment_command_struct;
+#endif
+
+typedef struct {
+ kal_uint8 length; /* length of contents*/
+ kal_uint8 spare_0; /* spare*/
+ kal_uint8 rev_level; /* revision level*/
+ kal_uint8 es_ind; /* ES IND*/
+ kal_uint8 a5_1; /* A5/1 supported*/
+ kal_uint8 rf_cap; /* Rf Power Capability*/
+ kal_uint8 spare_1; /* spare*/
+ kal_uint8 ps_cap; /* PS capability*/
+ kal_uint8 ss_screen_ind; /* SS screen Indicator*/
+ kal_uint8 sm_cap; /* SM capability*/
+ kal_uint8 vbs; /* VBS*/
+ kal_uint8 vgcs; /* VGCS*/
+ kal_uint8 fc; /* FC*/
+ kal_uint8 cm3; /* CM3*/
+ kal_uint8 spare_2; /* spare*/
+ kal_uint8 lcsva_cap; /* LCSVA capability*/
+ kal_uint8 ucs2; /* UCS2*/
+ kal_uint8 so_lsa; /* SoLSA*/
+ kal_uint8 cmsp; /* CMSP*/
+ kal_uint8 a5_3; /* A5/3*/
+ kal_uint8 a5_2; /* A5/2*/
+} classmark2_struct;
+
+typedef struct {
+ kal_uint8 a5_7; /* A5/7*/
+ kal_uint8 a5_6; /* A5/6*/
+ kal_uint8 a5_5; /* A5/5*/
+ kal_uint8 a5_4; /* A5/4*/
+} a5_bits_struct;
+
+typedef struct {
+ a5_bits_struct a5bits;
+ kal_uint8 arc2; /* assoc radio cap 2*/
+ kal_uint8 arc1; /* assoc radio cap 1*/
+} a5_bits_1_struct;
+
+typedef struct {
+ a5_bits_struct a5bits;
+ kal_uint8 spare; /* spare*/
+ kal_uint8 arc1; /* assoc radio cap 1*/
+} a5_bits_2_struct;
+
+typedef struct {
+ kal_uint8 mod_cap; /* modulation capability*/
+ enum_is_present ch_rf_pwr_cap1_tag;
+ union {
+ kal_uint8 e_rf_pwr_cap1;
+ } ch_rf_pwr_cap1_value;
+ enum_is_present ch_rf_pwr_cap2_tag;
+ union {
+ kal_uint8 e_rf_pwr_cap2;
+ } ch_rf_pwr_cap2_value;
+} edge_struct;
+
+typedef struct {
+ kal_uint8 gsm_bnd_sup; /* GSM 400 bands supported*/
+ kal_uint8 gsm_arc1; /* GSM 400 associated radio capability*/
+} gsm_band_inf_struct;
+
+typedef struct {
+ kal_uint8 d_gmssc; /* DTM GPRS multi slot sub-class*/
+ kal_uint8 mac_md_sup; /* MAC mode support*/
+} gprs_mlt_slt_struct;
+
+typedef struct {
+ kal_uint8 length; /* length of classmark contents*/
+ kal_uint8 spare; /* spare*/
+ multi_band_enum ch1_tag;
+ union {
+ a5_bits_struct a5bits;
+ a5_bits_1_struct a5bits_1;
+ a5_bits_1_struct a5bits_1_1;
+ a5_bits_2_struct a5bits_2;
+ a5_bits_2_struct a5bits_2_1;
+ a5_bits_2_struct a5bits_2_2;
+ } ch1_value;
+ enum_is_present ch2_tag;
+ union {
+ kal_uint8 r_support;
+ } ch2_value;
+ enum_is_present ch3_tag;
+ union {
+ kal_uint8 m_slot_cap;
+ } ch3_value;
+ kal_uint8 ucs2; /* UCS2 treatment*/
+ kal_uint8 ext_meas_cap; /* extended meas capability*/
+ enum_is_present ch4_tag;
+ union {
+ ms_meas_cap_struct meas_cap;
+ } ch4_value;
+ enum_is_present ch5_tag;
+ union {
+ kal_uint8 ms_pos_cap;
+ } ch5_value;
+ enum_is_present ch6_tag;
+ union {
+ kal_uint8 edgem_slot_cap;
+ } ch6_value;
+ enum_is_present ch7_tag;
+ union {
+ edge_struct edge_struct_inst;
+ } ch7_value;
+ enum_is_present ch8_tag;
+ union {
+ gsm_band_inf_struct gsm_bnd_inf;
+ } ch8_value;
+ enum_is_present ch9_tag;
+ union {
+ kal_uint8 gsm_arc2;
+ } ch9_value;
+ enum_is_present ch10_tag;
+ union {
+ kal_uint8 pcs_arc;
+ } ch10_value;
+ kal_uint8 umts_fratc; /* UMTS FDD radio access tech. cap.*/
+ kal_uint8 umts_tratc; /* UMTS TDD radio access tech. cap.*/
+ kal_uint8 cdma_ratc; /* CDMA 2000 radio access tech. cap.*/
+ enum_is_present ch11_tag;
+ union {
+ gprs_mlt_slt_struct gprs_mslot;
+ } ch11_value;
+ enum_is_present ch12_tag;
+ union {
+ kal_uint8 egprs_mslot;
+ } ch12_value;
+ kal_uint8 spare1; /* spare*/
+} classmark3_struct;
+
+typedef struct {
+ kal_uint8 classmark_length;
+ kal_uint8 classmark_mask;
+} classmark_enq_mask;
+
+typedef struct {
+ rmc_rr_skip_indicator_struct skip_ind;
+ rmc_rr_protocol_disc_struct proto_disc;
+ mesg_type_struct mesg_type;
+ kal_uint8 classmark_enq_mask_instP;
+ classmark_enq_mask classmark_enq_mask_inst;
+} rr_peer_classmark_enquiry_struct;
+
+typedef struct {
+ rmc_rr_skip_indicator_struct skip_ind;
+ rmc_rr_protocol_disc_struct proto_disc;
+ mesg_type_struct mesg_type;
+} rr_peer_partial_release_complete_struct;
+
+typedef struct {
+ rmc_rr_skip_indicator_struct skip_ind;
+ rmc_rr_protocol_disc_struct proto_disc;
+ mesg_type_struct mesg_type;
+ chan_desc_struct chan_desc;
+ kal_uint8 mobile_allocP;
+ rmc_mobile_alloc_struct mobile_alloc; /* mobile allocation*/
+ kal_uint8 start_timeP;
+ rmc_start_time_struct start_time; /* starting time*/
+} rr_peer_additional_assignment_struct;
+
+#if 0
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+#endif
+
+typedef struct {
+ rmc_rr_skip_indicator_struct skip_ind;
+ rmc_rr_protocol_disc_struct proto_disc;
+ mesg_type_struct mesg_type;
+ kal_uint8 rr_cause; /* RR cause*/
+} rr_peer_rr_status_struct;
+
+typedef struct {
+ rmc_rr_skip_indicator_struct skip_ind;
+ rmc_rr_protocol_disc_struct proto_disc;
+ mesg_type_struct mesg_type;
+ chan_desc_struct chan_desc; /* chan desc*/
+} rr_peer_partial_release_struct;
+
+typedef struct {
+ kal_uint8 tn_slot;
+ kal_uint8 mech;
+ kal_uint8 chc;
+} loop_type_struct;
+
+typedef struct {
+ kal_uint8 skip_indicator;
+ kal_uint8 protocol_disc;
+ kal_uint8 message_type;
+ kal_uint8 sub_channel;
+} close_tch_loop_cmd_struct;
+
+typedef struct {
+ kal_uint8 skip_indicator;
+ kal_uint8 protocol_disc;
+ kal_uint8 message_type;
+ kal_uint8 ackP;
+ kal_uint8 ack;
+} open_loop_cmd_struct;
+
+typedef struct {
+ kal_uint8 skip_indicator;
+ kal_uint8 protocol_disc;
+ kal_uint8 message_type;
+ loop_type_struct loop_type;
+} close_multi_loop_cmd_struct;
+
+typedef struct {
+ kal_uint8 skip_indicator;
+ kal_uint8 protocol_disc;
+ kal_uint8 message_type;
+} open_multi_loop_cmd_struct;
+
+typedef struct {
+ kal_uint8 spare;
+ kal_uint8 chc;
+ kal_uint8 loop_mechanism;
+ kal_uint8 error_ind;
+} close_multi_loop_ack_result_struct;
+
+typedef struct {
+ kal_uint8 skip_indicator;
+ kal_uint8 protocol_disc;
+ kal_uint8 message_type;
+ close_multi_loop_ack_result_struct result;
+} close_multi_loop_ack;
+
+typedef struct {
+ kal_uint8 skip_indicator;
+ kal_uint8 protocol_disc;
+ kal_uint8 message_type;
+ kal_uint8 cipherresponse;
+ cipher_mode_setting_struct ciphermode;
+} cipher_mode_command_struct;
+
+typedef struct {
+ kal_uint8 skip_indicator;
+ kal_uint8 protocol_disc;
+ kal_uint8 message_type;
+ kal_uint8 imeisvP;
+ imeisv_struct imeisv;
+} cipher_mode_complete_struct;
+
+typedef struct {
+ kal_uint8 skip_indicator;
+ kal_uint8 protocol_disc;
+ kal_uint8 message_type;
+ kal_uint8 no_multi_slot_alloc;
+ kal_uint8 multi_slot_alloc_size;
+ kal_uint8 *multi_slot_alloc;
+ kal_uint8 channel_mode1P;
+ kal_uint8 channel_mode1;
+ kal_uint8 channel_mode2P;
+ kal_uint8 channel_mode2;
+ kal_uint8 channel_mode3P;
+ kal_uint8 channel_mode3;
+ kal_uint8 channel_mode4P;
+ kal_uint8 channel_mode4;
+ kal_uint8 channel_mode5P;
+ kal_uint8 channel_mode5;
+ kal_uint8 channel_mode6P;
+ kal_uint8 channel_mode6;
+ kal_uint8 channel_mode7P;
+ kal_uint8 channel_mode7;
+ kal_uint8 channel_mode8P;
+ kal_uint8 channel_mode8;
+} configuration_change_command_struct;
+
+typedef struct {
+ kal_uint8 nci;
+ kal_uint8 rot;
+ kal_uint8 si;
+} sync_info_struct;
+
+typedef struct {
+ kal_uint8 length;
+ kal_uint8 value;
+} real_time_diff_struct;
+
+typedef struct {
+ kal_uint8 length;
+ kal_uint32 value;
+ kal_uint8 spare;
+} mob_obs_time_diff_struct;
+
+typedef struct {
+ kal_uint8 skip_indicator;
+ kal_uint8 protocol_disc;
+ kal_uint8 message_type;
+ cell_description_struct cell_description;
+ channel_description_struct channel_desc1;
+ kal_uint8 handover_ref;
+ power_command_struct power_command;
+ kal_uint8 sync_indP;
+ sync_info_struct sync_ind;
+ kal_uint8 freq_short_list1P;
+ frequency_short_list_struct freq_short_list1;
+ kal_uint8 freq_list1P;
+ frequency_list_struct freq_list1;
+ kal_uint8 cell_channel_descP;
+ cell_channel_description_struct cell_channel_desc;
+ kal_uint8 multi_slot_allocP;
+ kal_uint8 no_multi_slot_alloc;
+ kal_uint8 multi_slot_alloc_size;
+ kal_uint8 *multi_slot_alloc;
+ kal_uint8 channel_mode1P;
+ kal_uint8 channel_mode1;
+ kal_uint8 channel_mode2P;
+ kal_uint8 channel_mode2;
+ kal_uint8 channel_mode3P;
+ kal_uint8 channel_mode3;
+ kal_uint8 channel_mode4P;
+ kal_uint8 channel_mode4;
+ kal_uint8 channel_mode5P;
+ kal_uint8 channel_mode5;
+ kal_uint8 channel_mode6P;
+ kal_uint8 channel_mode6;
+ kal_uint8 channel_mode7P;
+ kal_uint8 channel_mode7;
+ kal_uint8 channel_mode8P;
+ kal_uint8 channel_mode8;
+ kal_uint8 channel_desc2P;
+ channel_description_struct channel_desc2;
+ kal_uint8 channel_mode9P;
+ kal_uint8 channel_mode9;
+ kal_uint8 freq_channel_seq_aftP;
+ frequency_channel_sequence_struct freq_channel_seq_aft;
+ kal_uint8 mobile_alloc1P;
+ kal_uint8 no_mobile_alloc1;
+ kal_uint8 mobile_alloc1_size;
+ kal_uint8 *mobile_alloc1;
+ kal_uint8 starting_timeP;
+ rmc_start_time_struct starting_time;
+ kal_uint8 rtdP;
+ real_time_diff_struct rtd;
+ kal_uint8 timing_advP;
+ kal_uint8 timing_adv;
+ kal_uint8 freq_short_list2P;
+ frequency_short_list_struct freq_short_list2;
+ kal_uint8 freq_list2P;
+ frequency_list_struct freq_list2;
+ kal_uint8 channel_desc3P;
+ channel_description_struct channel_desc3;
+ kal_uint8 channel_desc4P;
+ channel_description_struct channel_desc4;
+ kal_uint8 freq_channel_seq_bfrP;
+ frequency_channel_sequence_struct freq_channel_seq_bfr;
+ kal_uint8 mobile_alloc2P;
+ kal_uint8 no_mobile_alloc2;
+ kal_uint8 mobile_alloc2_size;
+ kal_uint8 *mobile_alloc2;
+ kal_uint8 cipher_modeP;
+ cipher_mode_setting_struct cipher_mode;
+ kal_uint8 vgcs_target_modeP;
+ vgcs_target_mode_indication_struct vgcs_target_mode;
+ kal_uint8 multi_rate_configP;
+ kal_uint8 no_multi_rate_config;
+ kal_uint8 multi_rate_config_size;
+ /* kal_uint8 *multi_rate_config; */
+ kal_uint8 multirate_speech_version;
+ kal_uint8 nscb;
+ kal_uint8 icmi;
+ kal_uint8 start_mode;
+ kal_uint8 active_codec_set;
+ kal_uint8 threshold[3];
+ kal_uint8 hysteresis[3];
+} handover_command_struct;
+
+typedef struct {
+ kal_uint8 skip_indicator;
+ kal_uint8 protocol_disc;
+ kal_uint8 message_type;
+ kal_uint8 motdP;
+ mob_obs_time_diff_struct motd;
+} handover_complete_struct;
+
+typedef struct {
+ kal_uint8 skip_indicator;
+ kal_uint8 protocol_disc;
+ kal_uint8 message_type;
+ kal_uint8 timing_adv;
+} physical_information_struct;
+
+typedef struct {
+ kal_uint8 no_apdu_alloc;
+ kal_uint8 *apdu_alloc;
+} apdu_data_struct;
+
+typedef enum {
+ RRLP = 0,
+ ETWS = 1
+} enum_apdu_id;
+
+typedef struct {
+ kal_uint8 skip_indicator;
+ kal_uint8 protocol_disc;
+ kal_uint8 message_type;
+ kal_uint8 spare_bit;
+ kal_uint8 first_seg;
+ kal_uint8 last_seg;
+ kal_uint8 cr_id;
+ enum_apdu_id apdu_id;
+ apdu_data_struct apdu_data;
+} application_information_struct;
+
+typedef struct {
+ kal_uint8 random_acc_info;
+} channel_request_struct_1;
+typedef struct {
+ kal_uint8 skip_indicator;
+ kal_uint8 protocol_disc;
+ kal_uint8 message_type;
+ channel_description_struct channel_desc;
+ rmc_mobile_alloc_struct mob_alloc;
+ rmc_start_time_struct starting_time;
+ kal_uint8 cell_channel_descP;
+ cell_channel_description_struct cell_channel_desc;
+} frequency_redefinition_struct;
+
+typedef struct {
+ kal_uint8 skip_indicator;
+ kal_uint8 protocol_disc;
+ kal_uint8 message_type;
+ channel_description_struct channel_desc;
+ kal_uint8 channel_mode;
+ kal_uint8 vgcs_target_modeP;
+ vgcs_target_mode_indication_struct vgcs_target_mode;
+ kal_uint8 multi_rate_configP;
+ kal_uint8 no_multi_rate_config;
+ kal_uint8 multi_rate_config_size;
+ /* kal_uint8 *multi_rate_config; */
+ kal_uint8 multirate_speech_version;
+ kal_uint8 nscb;
+ kal_uint8 icmi;
+ kal_uint8 start_mode;
+ kal_uint8 active_codec_set;
+ kal_uint8 threshold[3];
+ kal_uint8 hysteresis[3];
+} channel_mode_modify_struct;
+
+typedef struct {
+ kal_uint8 skip_indicator;
+ kal_uint8 protocol_disc;
+ kal_uint8 message_type;
+ channel_description_struct channel_desc;
+ kal_uint8 channel_mode;
+} channel_mode_modify_ack_struct;
+#endif
+
+
diff --git a/mcu/protocol/interface/asn/rr/include/si_peer.h b/mcu/protocol/interface/asn/rr/include/si_peer.h
new file mode 100644
index 0000000..117986e
--- /dev/null
+++ b/mcu/protocol/interface/asn/rr/include/si_peer.h
@@ -0,0 +1,126 @@
+/*****************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2005
+*
+* BY OPENING THIS FILE, BUYER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND AGREES
+* THAT THE SOFTWARE/FIRMWARE AND ITS DOCUMENTATIONS ("MEDIATEK SOFTWARE")
+* RECEIVED FROM MEDIATEK AND/OR ITS REPRESENTATIVES ARE PROVIDED TO BUYER ON
+* AN "AS-IS" BASIS ONLY. MEDIATEK EXPRESSLY DISCLAIMS ANY AND ALL WARRANTIES,
+* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF
+* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NONINFRINGEMENT.
+* NEITHER DOES MEDIATEK PROVIDE ANY WARRANTY WHATSOEVER WITH RESPECT TO THE
+* SOFTWARE OF ANY THIRD PARTY WHICH MAY BE USED BY, INCORPORATED IN, OR
+* SUPPLIED WITH THE MEDIATEK SOFTWARE, AND BUYER AGREES TO LOOK ONLY TO SUCH
+* THIRD PARTY FOR ANY WARRANTY CLAIM RELATING THERETO. MEDIATEK SHALL ALSO
+* NOT BE RESPONSIBLE FOR ANY MEDIATEK SOFTWARE RELEASES MADE TO BUYER'S
+* SPECIFICATION OR TO CONFORM TO A PARTICULAR STANDARD OR OPEN FORUM.
+*
+* BUYER'S SOLE AND EXCLUSIVE REMEDY AND MEDIATEK'S ENTIRE AND CUMULATIVE
+* LIABILITY WITH RESPECT TO THE MEDIATEK SOFTWARE RELEASED HEREUNDER WILL BE,
+* AT MEDIATEK'S OPTION, TO REVISE OR REPLACE THE MEDIATEK SOFTWARE AT ISSUE,
+* OR REFUND ANY SOFTWARE LICENSE FEES OR SERVICE CHARGE PAID BY BUYER TO
+* MEDIATEK FOR SUCH MEDIATEK SOFTWARE AT ISSUE.
+*
+* THE TRANSACTION CONTEMPLATED HEREUNDER SHALL BE CONSTRUED IN ACCORDANCE
+* WITH THE LAWS OF THE STATE OF CALIFORNIA, USA, EXCLUDING ITS CONFLICT OF
+* LAWS PRINCIPLES. ANY DISPUTES, CONTROVERSIES OR CLAIMS ARISING THEREOF AND
+* RELATED THERETO SHALL BE SETTLED BY ARBITRATION IN SAN FRANCISCO, CA, UNDER
+* THE RULES OF THE INTERNATIONAL CHAMBER OF COMMERCE (ICC).
+*
+*****************************************************************************/
+
+/******************************************************************************
+ * Filename:
+ * ---------
+ * si_peer.h
+ *
+ * Project:
+ * --------
+ * MAUI
+ *
+ * Description:
+ * ------------
+ *
+ * Author:
+ * -------
+ * -------
+ *
+ *=============================================================================
+ * HISTORY
+ * Below this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *------------------------------------------------------------------------------
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ *------------------------------------------------------------------------------
+ * Upper this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *=============================================================================
+ ******************************************************************************/
+
+/********************************************************************************
+* Copyright Statement:
+* --------------------
+*
+* This product has been developed using a protocol stack
+* developed by Sasken Communication Technologies Limited.
+*
+********************************************************************************/
+
+
+#ifndef _SI_PEER_H_
+#define _SI_PEER_H_
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#ifdef TEST_TOOL
+#include "tt_defs.h"
+#endif
+
+#ifdef TOOL
+#include "set_si_peer.h"
+#include "get_si_peer.h"
+#endif
+#ifdef __cplusplus
+}
+#endif
+
+#endif
+
+
diff --git a/mcu/protocol/interface/asn/rr/include/si_peer_pun.h b/mcu/protocol/interface/asn/rr/include/si_peer_pun.h
new file mode 100644
index 0000000..b3fa39b
--- /dev/null
+++ b/mcu/protocol/interface/asn/rr/include/si_peer_pun.h
@@ -0,0 +1,566 @@
+/*****************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2005
+*
+* BY OPENING THIS FILE, BUYER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND AGREES
+* THAT THE SOFTWARE/FIRMWARE AND ITS DOCUMENTATIONS ("MEDIATEK SOFTWARE")
+* RECEIVED FROM MEDIATEK AND/OR ITS REPRESENTATIVES ARE PROVIDED TO BUYER ON
+* AN "AS-IS" BASIS ONLY. MEDIATEK EXPRESSLY DISCLAIMS ANY AND ALL WARRANTIES,
+* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF
+* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NONINFRINGEMENT.
+* NEITHER DOES MEDIATEK PROVIDE ANY WARRANTY WHATSOEVER WITH RESPECT TO THE
+* SOFTWARE OF ANY THIRD PARTY WHICH MAY BE USED BY, INCORPORATED IN, OR
+* SUPPLIED WITH THE MEDIATEK SOFTWARE, AND BUYER AGREES TO LOOK ONLY TO SUCH
+* THIRD PARTY FOR ANY WARRANTY CLAIM RELATING THERETO. MEDIATEK SHALL ALSO
+* NOT BE RESPONSIBLE FOR ANY MEDIATEK SOFTWARE RELEASES MADE TO BUYER'S
+* SPECIFICATION OR TO CONFORM TO A PARTICULAR STANDARD OR OPEN FORUM.
+*
+* BUYER'S SOLE AND EXCLUSIVE REMEDY AND MEDIATEK'S ENTIRE AND CUMULATIVE
+* LIABILITY WITH RESPECT TO THE MEDIATEK SOFTWARE RELEASED HEREUNDER WILL BE,
+* AT MEDIATEK'S OPTION, TO REVISE OR REPLACE THE MEDIATEK SOFTWARE AT ISSUE,
+* OR REFUND ANY SOFTWARE LICENSE FEES OR SERVICE CHARGE PAID BY BUYER TO
+* MEDIATEK FOR SUCH MEDIATEK SOFTWARE AT ISSUE.
+*
+* THE TRANSACTION CONTEMPLATED HEREUNDER SHALL BE CONSTRUED IN ACCORDANCE
+* WITH THE LAWS OF THE STATE OF CALIFORNIA, USA, EXCLUDING ITS CONFLICT OF
+* LAWS PRINCIPLES. ANY DISPUTES, CONTROVERSIES OR CLAIMS ARISING THEREOF AND
+* RELATED THERETO SHALL BE SETTLED BY ARBITRATION IN SAN FRANCISCO, CA, UNDER
+* THE RULES OF THE INTERNATIONAL CHAMBER OF COMMERCE (ICC).
+*
+*****************************************************************************/
+
+/*******************************************************************************
+ * Filename:
+ * ---------
+ * si_peer_pun.h
+ *
+ * Project:
+ * --------
+ * MAUI
+ *
+ * Description:
+ * ------------
+ *
+ *
+ * Author:
+ * -------
+ *
+ *
+ *==============================================================================
+ * HISTORY
+ * Below this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *------------------------------------------------------------------------------
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ *------------------------------------------------------------------------------
+ * Upper this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *==============================================================================
+ *******************************************************************************/
+
+/********************************************************************************
+* Copyright Statement:
+* --------------------
+*
+* This product has been developed using a protocol stack
+* developed by Sasken Communication Technologies Limited.
+*
+********************************************************************************/
+
+
+/*******************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2002
+*
+*******************************************************************************
+ * FILENAME : si_peer_pun.h
+ * SYNOPSIS : Functions for encoding/decoding.
+ *
+ * R E V I S I O N H I S T O R Y
+ *
+ */
+#ifdef MTK_PEER
+#define IMP __declspec(dllimport)
+#else
+#define IMP
+#endif
+#ifndef _SI_PEER_PUN_H
+#define _SI_PEER_PUN_H
+
+#define ctrl_chan_desc_struct_size(x) 3
+IMP unsigned int ctrl_chan_desc_struct_bits(void *);
+IMP void ctrl_chan_desc_struct_alloc(void *);
+IMP void ctrl_chan_desc_struct_dealloc(void *);
+IMP unsigned int ctrl_chan_desc_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int ctrl_chan_desc_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define celloptions_size(x) 1
+IMP unsigned int celloptions_bits(void *);
+IMP void celloptions_alloc(void *);
+IMP void celloptions_dealloc(void *);
+IMP unsigned int celloptions_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int celloptions_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define cellselectionparams_size(x) 2
+IMP unsigned int cellselectionparams_bits(void *);
+IMP void cellselectionparams_alloc(void *);
+IMP void cellselectionparams_dealloc(void *);
+IMP unsigned int cellselectionparams_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int cellselectionparams_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define rachparams_size(x) 3
+IMP unsigned int rachparams_bits(void *);
+IMP void rachparams_alloc(void *);
+IMP void rachparams_dealloc(void *);
+IMP unsigned int rachparams_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int rachparams_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int si1restoct_bits(void *);
+IMP void si1restoct_alloc(void *);
+IMP void si1restoct_dealloc(void *);
+IMP unsigned int si1restoct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int si1restoct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define selectionparams_size(x) 2
+IMP unsigned int selectionparams_bits(void *);
+IMP void selectionparams_alloc(void *);
+IMP void selectionparams_dealloc(void *);
+IMP unsigned int selectionparams_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int selectionparams_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define pwroffset_size(x) 1
+IMP unsigned int pwroffset_bits(void *);
+IMP void pwroffset_alloc(void *);
+IMP void pwroffset_dealloc(void *);
+IMP unsigned int pwroffset_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int pwroffset_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define gprsind_size(x) 1
+IMP unsigned int gprsind_bits(void *);
+IMP void gprsind_alloc(void *);
+IMP void gprsind_dealloc(void *);
+IMP unsigned int gprsind_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int gprsind_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int si_3_rest_octet_struct_bits(void *);
+IMP void si_3_rest_octet_struct_alloc(void *);
+IMP void si_3_rest_octet_struct_dealloc(void *);
+IMP unsigned int si_3_rest_octet_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int si_3_rest_octet_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int lsa_identity_struct_bits(void *);
+IMP void lsa_identity_struct_alloc(void *);
+IMP void lsa_identity_struct_dealloc(void *);
+IMP unsigned int lsa_identity_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int lsa_identity_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int lsa_id_info_struct_bits(void *);
+IMP void lsa_id_info_struct_alloc(void *);
+IMP void lsa_id_info_struct_dealloc(void *);
+IMP unsigned int lsa_id_info_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int lsa_id_info_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define mcc_mnc_struct_size(x) 3
+IMP unsigned int mcc_mnc_struct_bits(void *);
+IMP void mcc_mnc_struct_alloc(void *);
+IMP void mcc_mnc_struct_dealloc(void *);
+IMP unsigned int mcc_mnc_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int mcc_mnc_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int lsa_params_struct_bits(void *);
+IMP void lsa_params_struct_alloc(void *);
+IMP void lsa_params_struct_dealloc(void *);
+IMP unsigned int lsa_params_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int lsa_params_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int si_4_rest_octet_s_struct_bits(void *);
+IMP void si_4_rest_octet_s_struct_alloc(void *);
+IMP void si_4_rest_octet_s_struct_dealloc(void *);
+IMP unsigned int si_4_rest_octet_s_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int si_4_rest_octet_s_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int si4restoct_bits(void *);
+IMP void si4restoct_alloc(void *);
+IMP void si4restoct_dealloc(void *);
+IMP unsigned int si4restoct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int si4restoct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define maio_size(x) 2
+IMP unsigned int maio_bits(void *);
+IMP void maio_alloc(void *);
+IMP void maio_dealloc(void *);
+IMP unsigned int maio_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int maio_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define arfcn_choice_size(x) 2
+IMP unsigned int arfcn_choice_bits(void *);
+IMP void arfcn_choice_alloc(void *);
+IMP void arfcn_choice_dealloc(void *);
+IMP unsigned int arfcn_choice_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int arfcn_choice_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int channeldesc_bits(void *);
+IMP void channeldesc_alloc(void *);
+IMP void channeldesc_dealloc(void *);
+IMP unsigned int channeldesc_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int channeldesc_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define pchinf_size(x) 1
+IMP unsigned int pchinf_bits(void *);
+IMP void pchinf_alloc(void *);
+IMP void pchinf_dealloc(void *);
+IMP unsigned int pchinf_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int pchinf_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int si6restoct_bits(void *);
+IMP void si6restoct_alloc(void *);
+IMP void si6restoct_dealloc(void *);
+IMP unsigned int si6restoct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int si6restoct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int rfl_number_struct_bits(void *);
+IMP void rfl_number_struct_alloc(void *);
+IMP void rfl_number_struct_dealloc(void *);
+IMP unsigned int rfl_number_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int rfl_number_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int rfl_number_list_struct_bits(void *);
+IMP void rfl_number_list_struct_alloc(void *);
+IMP void rfl_number_list_struct_dealloc(void *);
+IMP unsigned int rfl_number_list_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int rfl_number_list_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int ma_struct_bits(void *);
+IMP void ma_struct_alloc(void *);
+IMP void ma_struct_dealloc(void *);
+IMP unsigned int ma_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int ma_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int arfcn_index_list1_struct_bits(void *);
+IMP void arfcn_index_list1_struct_alloc(void *);
+IMP void arfcn_index_list1_struct_dealloc(void *);
+IMP unsigned int arfcn_index_list1_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int arfcn_index_list1_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int si_arfcn_index_list_struct_bits(void *);
+IMP void si_arfcn_index_list_struct_alloc(void *);
+IMP void si_arfcn_index_list_struct_dealloc(void *);
+IMP unsigned int si_arfcn_index_list_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int si_arfcn_index_list_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int gprsmoballocstruct_bits(void *);
+IMP void gprsmoballocstruct_alloc(void *);
+IMP void gprsmoballocstruct_dealloc(void *);
+IMP unsigned int gprsmoballocstruct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int gprsmoballocstruct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int sinonhopppbcchcarr_bits(void *);
+IMP void sinonhopppbcchcarr_alloc(void *);
+IMP void sinonhopppbcchcarr_dealloc(void *);
+IMP unsigned int sinonhopppbcchcarr_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int sinonhopppbcchcarr_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int sibcchcarstruct_bits(void *);
+IMP void sibcchcarstruct_alloc(void *);
+IMP void sibcchcarstruct_dealloc(void *);
+IMP unsigned int sibcchcarstruct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int sibcchcarstruct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int sipbcchdescstruct_bits(void *);
+IMP void sipbcchdescstruct_alloc(void *);
+IMP void sipbcchdescstruct_dealloc(void *);
+IMP unsigned int sipbcchdescstruct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int sipbcchdescstruct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int sippbcchstruct_bits(void *);
+IMP void sippbcchstruct_alloc(void *);
+IMP void sippbcchstruct_dealloc(void *);
+IMP unsigned int sippbcchstruct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int sippbcchstruct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int si13restoct_bits(void *);
+IMP void si13restoct_alloc(void *);
+IMP void si13restoct_dealloc(void *);
+IMP unsigned int si13restoct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int si13restoct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define CELL_CH_DESC_BITMAP0_size(x) 16
+IMP unsigned int CELL_CH_DESC_BITMAP0_bits(void *);
+IMP void CELL_CH_DESC_BITMAP0_alloc(void *);
+IMP void CELL_CH_DESC_BITMAP0_dealloc(void *);
+IMP unsigned int CELL_CH_DESC_BITMAP0_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int CELL_CH_DESC_BITMAP0_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define nch_position_struct_size(x) 1
+IMP unsigned int nch_position_struct_bits(void *);
+IMP void nch_position_struct_alloc(void *);
+IMP void nch_position_struct_dealloc(void *);
+IMP unsigned int nch_position_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int nch_position_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int si_1_rest_octet_struct_bits(void *);
+IMP void si_1_rest_octet_struct_alloc(void *);
+IMP void si_1_rest_octet_struct_dealloc(void *);
+IMP unsigned int si_1_rest_octet_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int si_1_rest_octet_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int si_1_struct_bits(void *);
+IMP void si_1_struct_alloc(void *);
+IMP void si_1_struct_dealloc(void *);
+IMP unsigned int si_1_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int si_1_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define neigh_cells_desc1_struct_size(x) 16
+IMP unsigned int neigh_cells_desc1_struct_bits(void *);
+IMP void neigh_cells_desc1_struct_alloc(void *);
+IMP void neigh_cells_desc1_struct_dealloc(void *);
+IMP unsigned int neigh_cells_desc1_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int neigh_cells_desc1_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define neigh_cells_desc2_struct_size(x) 16
+IMP unsigned int neigh_cells_desc2_struct_bits(void *);
+IMP void neigh_cells_desc2_struct_alloc(void *);
+IMP void neigh_cells_desc2_struct_dealloc(void *);
+IMP unsigned int neigh_cells_desc2_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int neigh_cells_desc2_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define si_2_struct_size(x) 23
+IMP unsigned int si_2_struct_bits(void *);
+IMP void si_2_struct_alloc(void *);
+IMP void si_2_struct_dealloc(void *);
+IMP unsigned int si_2_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int si_2_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define si_2bis_rest_octets_struct_size(x) 1
+IMP unsigned int si_2bis_rest_octets_struct_bits(void *);
+IMP void si_2bis_rest_octets_struct_alloc(void *);
+IMP void si_2bis_rest_octets_struct_dealloc(void *);
+IMP unsigned int si_2bis_rest_octets_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int si_2bis_rest_octets_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define si_2bis_struct_size(x) 23
+IMP unsigned int si_2bis_struct_bits(void *);
+IMP void si_2bis_struct_alloc(void *);
+IMP void si_2bis_struct_dealloc(void *);
+IMP unsigned int si_2bis_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int si_2bis_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define si_2ter_rest_octets_struct_size(x) 4
+IMP unsigned int si_2ter_rest_octets_struct_bits(void *);
+IMP void si_2ter_rest_octets_struct_alloc(void *);
+IMP void si_2ter_rest_octets_struct_dealloc(void *);
+IMP unsigned int si_2ter_rest_octets_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int si_2ter_rest_octets_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define si_2ter_struct_size(x) 23
+IMP unsigned int si_2ter_struct_bits(void *);
+IMP void si_2ter_struct_alloc(void *);
+IMP void si_2ter_struct_dealloc(void *);
+IMP unsigned int si_2ter_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int si_2ter_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define si_2quater_rest_octets_struct_size(x) 20
+IMP unsigned int si_2quater_rest_octets_struct_bits(void *);
+IMP void si_2quater_rest_octets_struct_alloc(void *);
+IMP void si_2quater_rest_octets_struct_dealloc(void *);
+IMP unsigned int si_2quater_rest_octets_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int si_2quater_rest_octets_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define si_2quater_struct_size(x) 23
+IMP unsigned int si_2quater_struct_bits(void *);
+IMP void si_2quater_struct_alloc(void *);
+IMP void si_2quater_struct_dealloc(void *);
+IMP unsigned int si_2quater_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int si_2quater_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define PLMN_size(x) 3
+IMP unsigned int PLMN_bits(void *);
+IMP void PLMN_alloc(void *);
+IMP void PLMN_dealloc(void *);
+IMP unsigned int PLMN_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int PLMN_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define LAI_size(x) 5
+IMP unsigned int LAI_bits(void *);
+IMP void LAI_alloc(void *);
+IMP void LAI_dealloc(void *);
+IMP unsigned int LAI_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int LAI_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int si_3_struct_bits(void *);
+IMP void si_3_struct_alloc(void *);
+IMP void si_3_struct_dealloc(void *);
+IMP unsigned int si_3_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int si_3_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define si_4_part1of4_struct_size(x) 13
+IMP unsigned int si_4_part1of4_struct_bits(void *);
+IMP void si_4_part1of4_struct_alloc(void *);
+IMP void si_4_part1of4_struct_dealloc(void *);
+IMP unsigned int si_4_part1of4_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int si_4_part1of4_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int si_4_part2of4_struct_bits(void *);
+IMP void si_4_part2of4_struct_alloc(void *);
+IMP void si_4_part2of4_struct_dealloc(void *);
+IMP unsigned int si_4_part2of4_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int si_4_part2of4_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int si_4_part3of4_struct_bits(void *);
+IMP void si_4_part3of4_struct_alloc(void *);
+IMP void si_4_part3of4_struct_dealloc(void *);
+IMP unsigned int si_4_part3of4_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int si_4_part3of4_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int si_4_part4of4_struct_bits(void *);
+IMP void si_4_part4of4_struct_alloc(void *);
+IMP void si_4_part4of4_struct_dealloc(void *);
+IMP unsigned int si_4_part4of4_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int si_4_part4of4_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int si_4_struct_bits(void *);
+IMP void si_4_struct_alloc(void *);
+IMP void si_4_struct_dealloc(void *);
+IMP unsigned int si_4_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int si_4_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define si_5_struct_size(x) 19
+IMP unsigned int si_5_struct_bits(void *);
+IMP void si_5_struct_alloc(void *);
+IMP void si_5_struct_dealloc(void *);
+IMP unsigned int si_5_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int si_5_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define si_5bis_struct_size(x) 19
+IMP unsigned int si_5bis_struct_bits(void *);
+IMP void si_5bis_struct_alloc(void *);
+IMP void si_5bis_struct_dealloc(void *);
+IMP unsigned int si_5bis_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int si_5bis_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define si_5ter_struct_size(x) 19
+IMP unsigned int si_5ter_struct_bits(void *);
+IMP void si_5ter_struct_alloc(void *);
+IMP void si_5ter_struct_dealloc(void *);
+IMP unsigned int si_5ter_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int si_5ter_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int si_6_struct_bits(void *);
+IMP void si_6_struct_alloc(void *);
+IMP void si_6_struct_dealloc(void *);
+IMP unsigned int si_6_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int si_6_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int si_7_struct_bits(void *);
+IMP void si_7_struct_alloc(void *);
+IMP void si_7_struct_dealloc(void *);
+IMP unsigned int si_7_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int si_7_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int si_8_struct_bits(void *);
+IMP void si_8_struct_alloc(void *);
+IMP void si_8_struct_dealloc(void *);
+IMP unsigned int si_8_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int si_8_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define si_9_part1of2_struct_size(x) 6
+IMP unsigned int si_9_part1of2_struct_bits(void *);
+IMP void si_9_part1of2_struct_alloc(void *);
+IMP void si_9_part1of2_struct_dealloc(void *);
+IMP unsigned int si_9_part1of2_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int si_9_part1of2_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int si_13_struct_bits(void *);
+IMP void si_13_struct_alloc(void *);
+IMP void si_13_struct_dealloc(void *);
+IMP unsigned int si_13_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int si_13_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int si_16_struct_bits(void *);
+IMP void si_16_struct_alloc(void *);
+IMP void si_16_struct_dealloc(void *);
+IMP unsigned int si_16_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int si_16_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int si_17_struct_bits(void *);
+IMP void si_17_struct_alloc(void *);
+IMP void si_17_struct_dealloc(void *);
+IMP unsigned int si_17_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int si_17_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int si_non_gsm_msg_struct_bits(void *);
+IMP void si_non_gsm_msg_struct_alloc(void *);
+IMP void si_non_gsm_msg_struct_dealloc(void *);
+IMP unsigned int si_non_gsm_msg_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int si_non_gsm_msg_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int SI18_REST_OCTETS_bits(void *);
+IMP void SI18_REST_OCTETS_alloc(void *);
+IMP void SI18_REST_OCTETS_dealloc(void *);
+IMP unsigned int SI18_REST_OCTETS_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int SI18_REST_OCTETS_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int si_18_struct_bits(void *);
+IMP void si_18_struct_alloc(void *);
+IMP void si_18_struct_dealloc(void *);
+IMP unsigned int si_18_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int si_18_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define SI_19_REST_OCTETS_size(x) 20
+IMP unsigned int SI_19_REST_OCTETS_bits(void *);
+IMP void SI_19_REST_OCTETS_alloc(void *);
+IMP void SI_19_REST_OCTETS_dealloc(void *);
+IMP unsigned int SI_19_REST_OCTETS_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int SI_19_REST_OCTETS_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#define si_19_struct_size(x) 23
+IMP unsigned int si_19_struct_bits(void *);
+IMP void si_19_struct_alloc(void *);
+IMP void si_19_struct_dealloc(void *);
+IMP unsigned int si_19_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int si_19_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+IMP unsigned int si_20_struct_bits(void *);
+IMP void si_20_struct_alloc(void *);
+IMP void si_20_struct_dealloc(void *);
+IMP unsigned int si_20_struct_pack(kal_uint8 *, void *, unsigned int);
+IMP unsigned int si_20_struct_unpack(void *, kal_uint8 *, unsigned int, unsigned int, void *);
+
+#endif
+
+
diff --git a/mcu/protocol/interface/asn/rr/include/si_peer_struct.h b/mcu/protocol/interface/asn/rr/include/si_peer_struct.h
new file mode 100644
index 0000000..4ea7596
--- /dev/null
+++ b/mcu/protocol/interface/asn/rr/include/si_peer_struct.h
@@ -0,0 +1,709 @@
+/*****************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2005
+*
+* BY OPENING THIS FILE, BUYER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND AGREES
+* THAT THE SOFTWARE/FIRMWARE AND ITS DOCUMENTATIONS ("MEDIATEK SOFTWARE")
+* RECEIVED FROM MEDIATEK AND/OR ITS REPRESENTATIVES ARE PROVIDED TO BUYER ON
+* AN "AS-IS" BASIS ONLY. MEDIATEK EXPRESSLY DISCLAIMS ANY AND ALL WARRANTIES,
+* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF
+* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NONINFRINGEMENT.
+* NEITHER DOES MEDIATEK PROVIDE ANY WARRANTY WHATSOEVER WITH RESPECT TO THE
+* SOFTWARE OF ANY THIRD PARTY WHICH MAY BE USED BY, INCORPORATED IN, OR
+* SUPPLIED WITH THE MEDIATEK SOFTWARE, AND BUYER AGREES TO LOOK ONLY TO SUCH
+* THIRD PARTY FOR ANY WARRANTY CLAIM RELATING THERETO. MEDIATEK SHALL ALSO
+* NOT BE RESPONSIBLE FOR ANY MEDIATEK SOFTWARE RELEASES MADE TO BUYER'S
+* SPECIFICATION OR TO CONFORM TO A PARTICULAR STANDARD OR OPEN FORUM.
+*
+* BUYER'S SOLE AND EXCLUSIVE REMEDY AND MEDIATEK'S ENTIRE AND CUMULATIVE
+* LIABILITY WITH RESPECT TO THE MEDIATEK SOFTWARE RELEASED HEREUNDER WILL BE,
+* AT MEDIATEK'S OPTION, TO REVISE OR REPLACE THE MEDIATEK SOFTWARE AT ISSUE,
+* OR REFUND ANY SOFTWARE LICENSE FEES OR SERVICE CHARGE PAID BY BUYER TO
+* MEDIATEK FOR SUCH MEDIATEK SOFTWARE AT ISSUE.
+*
+* THE TRANSACTION CONTEMPLATED HEREUNDER SHALL BE CONSTRUED IN ACCORDANCE
+* WITH THE LAWS OF THE STATE OF CALIFORNIA, USA, EXCLUDING ITS CONFLICT OF
+* LAWS PRINCIPLES. ANY DISPUTES, CONTROVERSIES OR CLAIMS ARISING THEREOF AND
+* RELATED THERETO SHALL BE SETTLED BY ARBITRATION IN SAN FRANCISCO, CA, UNDER
+* THE RULES OF THE INTERNATIONAL CHAMBER OF COMMERCE (ICC).
+*
+*****************************************************************************/
+
+/*******************************************************************************
+ * Filename:
+ * ---------
+ * si_peer_struct.h
+ *
+ * Project:
+ * --------
+ * MAUI
+ *
+ * Description:
+ * ------------
+ *
+ *
+ * Author:
+ * -------
+ *
+ *
+ *==============================================================================
+ * HISTORY
+ * Below this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *------------------------------------------------------------------------------
+ * removed!
+ * removed!
+ * removed!
+ * removed!
+ * removed!
+ * removed!
+ * removed!
+ * removed!
+ * removed!
+ * removed!
+ * removed!
+ * removed!
+ * removed!
+ * removed!
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ * removed!
+ * removed!
+ * removed!
+ *
+ *------------------------------------------------------------------------------
+ * Upper this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
+ *==============================================================================
+ *******************************************************************************/
+
+/********************************************************************************
+* Copyright Statement:
+* --------------------
+*
+* This product has been developed using a protocol stack
+* developed by Sasken Communication Technologies Limited.
+*
+********************************************************************************/
+
+
+/*******************************************************************************
+* Copyright Statement:
+* --------------------
+* This software is protected by Copyright and the information contained
+* herein is confidential. The software may not be copied and the information
+* contained herein may not be used or disclosed except with the written
+* permission of MediaTek Inc. (C) 2002
+*
+*******************************************************************************
+ * FILENAME : si_peer_struct.h
+ * SYNOPSIS : Functions for encoding/decoding.
+ *
+ * R E V I S I O N H I S T O R Y
+ *
+ */
+#ifndef _SI_PEER_STRUCT_H
+#define _SI_PEER_STRUCT_H
+
+/* Suggest Add for RHR */
+#include "rr_spare_bit.h"
+#include "nstd_spare_bit_struct.h"
+#include "l3_inc_enums.h"
+#ifdef __PS_SERVICE__
+#include "psipeer_struct.h"
+#endif
+
+typedef struct {
+ kal_uint8 mscr;
+ kal_uint8 att;
+ kal_uint8 bsagblksres;
+ kal_uint8 ccchconf;
+ kal_uint8 spare; /* version check req*/
+ kal_uint8 cbq2;
+ kal_uint8 bspamfrms;
+ kal_uint8 t3212val;
+} ctrl_chan_desc_struct;
+
+typedef struct {
+ kal_uint8 dtx_or_spare;
+ kal_uint8 pwrc;
+ kal_uint8 dtx;
+ kal_uint8 radio_link_timeout;
+} celloptions;
+
+typedef struct {
+ kal_uint8 cell_resel_hyst;
+ kal_uint8 txpwr_max_cch;
+ kal_uint8 acs;
+ kal_uint8 neci;
+ kal_uint8 rxlev_acc_min;
+} cellselectionparams;
+
+typedef struct {
+ kal_uint8 maxretrans;
+ kal_uint8 txint;
+ kal_uint8 cellbaracc;
+ kal_uint8 re;
+ kal_uint8 accctrlclass_2;
+ kal_uint8 ec;
+ kal_uint16 accctrlclass_1;
+} rachparams;
+
+typedef struct {
+ rr_spare_bit_enum ch1_tag;
+ union {
+ kal_uint8 nchpos;
+ } ch1_value;
+} si1restoct;
+
+typedef struct {
+ kal_uint8 cbq;
+ kal_uint8 cellreseloffset;
+ kal_uint8 tempoffset;
+ kal_uint8 penaltytime;
+} selectionparams;
+
+typedef struct {
+ kal_uint8 offset;
+} pwroffset;
+
+typedef struct {
+ kal_uint8 racolor;
+ kal_uint8 si13pos;
+} gprsind;
+
+typedef struct {
+ rr_spare_bit_enum ch1_tag;
+ union {
+ selectionparams selparams;
+ } ch1_value;
+ rr_spare_bit_enum ch12_tag;
+ union {
+ pwroffset pwroff;
+ } ch12_value;
+ SPARE_BIT_TYPE si2terind;
+ SPARE_BIT_TYPE earlyclassmark;
+ rr_spare_bit_enum ch2_tag;
+ union {
+ kal_uint8 scheduling;
+ } ch2_value;
+ rr_spare_bit_enum ch3_tag;
+ union {
+ gprsind gprsindication;
+ } ch3_value;
+} si_3_rest_octet_struct;
+
+typedef struct {
+ is_present_enum ID_tag;
+ union {
+ kal_uint32 lsa_id;
+ kal_uint16 short_lsa_id;
+ } ID_value;
+} lsa_identity_struct;
+
+typedef struct {
+ unsigned int no_lsa_id_info;
+ unsigned int lsa_id_info_size;
+ lsa_identity_struct *lsa_id_info;
+} lsa_id_info_struct;
+
+typedef struct {
+ kal_uint16 mcc;
+ kal_uint16 mnc;
+} mcc_mnc_struct;
+
+typedef struct {
+ kal_uint8 prio_thr;
+ kal_uint8 lsa_offset;
+ is_present_enum MCC_tag;
+ union {
+ mcc_mnc_struct mcc_mnc;
+ } MCC_value;
+} lsa_params_struct;
+
+typedef struct {
+ rr_spare_bit_enum ch1_tag;
+ union {
+ lsa_params_struct lsapara;
+ } ch1_value;
+ rr_spare_bit_enum ch2_tag;
+ union {
+ kal_uint16 cellid;
+ } ch2_value;
+ rr_spare_bit_enum ch3_tag;
+ union {
+ lsa_id_info_struct lsaidinfo;
+ } ch3_value;
+} si_4_rest_octet_s_struct;
+
+typedef struct {
+ rr_spare_bit_enum ch1_tag;
+ union {
+ selectionparams selparams;
+ } ch1_value;
+ rr_spare_bit_enum ch2_tag;
+ union {
+ pwroffset pwroff;
+ } ch2_value;
+ rr_spare_bit_enum ch3_tag;
+ union {
+ gprsind gprsindication;
+ } ch3_value;
+ rr_spare_bit_enum ch4_tag;
+ union {
+ kal_uint8 ibreak;
+ si_4_rest_octet_s_struct si4_s;
+ } ch4_value;
+} si4restoct;
+
+typedef struct {
+ kal_uint8 maio;
+ kal_uint8 hsn;
+} maio;
+
+typedef struct {
+ kal_uint8 spare;
+ kal_uint16 arfcn;
+} arfcn_choice;
+
+typedef struct {
+ kal_uint8 chan_type;
+ kal_uint8 tn;
+ kal_uint8 tsc;
+ is_present_enum h_tag;
+ union {
+ maio maioandhsn;
+ arfcn_choice arfcn;
+ } h_value;
+} channeldesc;
+
+typedef struct {
+ kal_uint8 restruct;
+ kal_uint8 nln;
+ kal_uint8 callprio;
+ kal_uint8 nlnstatus;
+} pchinf;
+
+typedef struct {
+ rr_spare_bit_enum ch1_tag;
+ union {
+ pchinf pchinfo;
+ } ch1_value;
+ rr_spare_bit_enum ch2_tag;
+ union {
+ kal_uint8 vbsopts;
+ } ch2_value;
+} si6restoct;
+
+typedef struct {
+ unsigned int no_rfl_number;
+ unsigned int rfl_number_size;
+ kal_uint8 *rfl_number;
+} rfl_number_struct;
+
+typedef struct {
+ is_present_enum ch1_tag;
+ union {
+ rfl_number_struct rfl_number;
+ } ch1_value;
+} rfl_number_list_struct;
+
+typedef struct {
+ kal_uint8 ma_length;
+ kal_uint8 no_ma_bitmap;
+ kal_uint8 ma_bitmap_size;
+ kal_uint8 *ma_bitmap;
+} ma_struct;
+
+typedef struct {
+ unsigned int no_arfcn_index;
+ unsigned int arfcn_index_size;
+ kal_uint8 *arfcn_index;
+} arfcn_index_list1_struct;
+
+typedef struct {
+ is_present_enum ch1_tag;
+ union {
+ arfcn_index_list1_struct arfcn_index_list_struct;
+ } ch1_value;
+} si_arfcn_index_list_struct;
+
+typedef struct {
+ kal_uint8 hsn;
+ is_present_enum ch1_tag;
+ union {
+ rfl_number_list_struct rfl_number_list;
+ } ch1_value;
+ is_present_enum ch2_tag;
+ union {
+ ma_struct ma_lengh_and_bitmap;
+ si_arfcn_index_list_struct arfcn_index_list;
+ } ch2_value;
+} gprsmoballocstruct;
+
+typedef struct {
+ is_present_enum pbcchcarr_tag;
+ union {
+ kal_uint16 arfcn;
+ } pbcchcarr_value;
+} sinonhopppbcchcarr;
+
+typedef struct {
+ is_present_enum ch228_tag;
+ union {
+ kal_uint8 maio;
+ sinonhopppbcchcarr nonhoppcarr;
+ } ch228_value;
+} sibcchcarstruct;
+
+typedef struct {
+ kal_uint8 pb; /* pb*/
+ kal_uint8 tsc; /* TSC*/
+ kal_uint8 tn; /* TN*/
+ sibcchcarstruct bcchcar; /* BCCHCARSTRUCT*/
+} sipbcchdescstruct;
+
+typedef struct {
+ kal_uint8 psi1_rep_per; /* PSI1 REPEAT PERIOD*/
+ sipbcchdescstruct pbcch; /* PBCCHDESCSTRUCT*/
+} sippbcchstruct;
+
+#ifdef __PS_SERVICE__
+typedef struct {
+ kal_uint8 bcch_chg_mark; /* BCCH CHG MARK*/
+ kal_uint8 sichgfield; /* SI CHG FIELD*/
+ is_present_enum ch229_tag;
+ union {
+ psimsgstruct ppsi13;
+ } ch229_value;
+ is_present_enum ch230_tag;
+ union {
+ apbcchstruct apbcch;
+ sippbcchstruct ppbcch;
+ } ch230_value;
+ rr_spare_bit_enum ch1_tag;
+ union {
+ kal_uint8 sgsnr;
+ } ch1_value;
+} si13restoct;
+#endif
+
+typedef struct {
+ kal_uint8 format_id;
+ kal_uint8 spare;
+ kal_uint8 ca_arfcn_1;
+ kal_uint8 ca_arfcn_2[15];
+} CELL_CH_DESC_BITMAP0;
+
+typedef struct {
+ kal_uint8 nchpos;
+} nch_position_struct;
+
+typedef struct {
+ rr_spare_bit_enum nch_present_tag;
+ union {
+ nch_position_struct nch_position;
+ } nch_present_value;
+} si_1_rest_octet_struct;
+
+typedef struct {
+ kal_uint8 l2pseudo_length;
+ kal_uint8 skip_ind;
+ kal_uint8 rr_mgmt_proto_disc;
+ kal_uint8 si_type1msg_type;
+ CELL_CH_DESC_BITMAP0 cell_ch_desc;
+ rachparams rach_ctrl_params;
+ si_1_rest_octet_struct si1rest_octets;
+} si_1_struct;
+
+typedef struct {
+ kal_uint8 bitmap_1;
+ kal_uint8 ext_ind;
+ kal_uint8 ba_ind;
+ kal_uint8 bitmap_2;
+ kal_uint8 bitmap_3[15];
+} neigh_cells_desc1_struct;
+
+typedef struct {
+ kal_uint8 bitmap_1;
+ kal_uint8 multiband_reporting;
+ kal_uint8 ba_ind;
+ kal_uint8 bitmap_2;
+ kal_uint8 bitmap_3[15];
+} neigh_cells_desc2_struct;
+
+typedef struct {
+ kal_uint8 l2pseudo_length;
+ kal_uint8 skip_ind;
+ kal_uint8 rr_mgmt_proto_disc;
+ kal_uint8 si_type2msg_type;
+ neigh_cells_desc1_struct bcch_freq_list;
+ kal_uint8 ncc_permitted;
+ rachparams rach_ctrl_params;
+} si_2_struct;
+
+typedef struct {
+ kal_uint8 rest_octet; /* TBD*/
+} si_2bis_rest_octets_struct;
+
+typedef struct {
+ kal_uint8 l2pseudo_length;
+ kal_uint8 skip_ind;
+ kal_uint8 rr_mgmt_proto_disc;
+ kal_uint8 si_type2bis_msg_type;
+ neigh_cells_desc1_struct extbcch_freq_list;
+ rachparams rach_ctrl_params;
+ si_2bis_rest_octets_struct si2bis_rest_octets;
+} si_2bis_struct;
+
+#if 0
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+/* under construction !*/
+#endif
+
+typedef struct {
+ kal_uint8 mcc2;
+ kal_uint8 mcc1;
+ kal_uint8 mnc3;
+ kal_uint8 mcc3;
+ kal_uint8 mnc2;
+ kal_uint8 mnc1;
+} PLMN;
+
+typedef struct {
+ PLMN plmn;
+ kal_uint16 la_code;
+} LAI;
+
+typedef struct {
+ kal_uint8 l2pseudo_length;
+ kal_uint8 skip_ind;
+ kal_uint8 rr_mgmt_proto_disc;
+ kal_uint8 si_type3msg_type;
+ kal_uint16 cell_identity;
+ LAI lai;
+ ctrl_chan_desc_struct ctrl_ch_desc;
+ celloptions cell_options;
+ cellselectionparams cell_sel_params;
+ rachparams rach_ctrl_params;
+ si_3_rest_octet_struct si3rest_octets;
+} si_3_struct;
+
+typedef struct {
+ kal_uint8 l2pseudo_length;
+ kal_uint8 skip_ind;
+ kal_uint8 rr_mgmt_proto_disc;
+ kal_uint8 si_type4msg_type;
+ LAI lai;
+ cellselectionparams cell_sel_params;
+ rachparams rach_ctrl_params;
+} si_4_part1of4_struct;
+
+typedef struct {
+ kal_uint8 cbch_ch_descP;
+ channeldesc cbch_ch_desc;
+} si_4_part2of4_struct;
+
+typedef struct {
+ kal_uint8 macP;
+ kal_uint32 mac;
+} si_4_part3of4_struct;
+
+typedef struct {
+ si4restoct si4rest_octet;
+} si_4_part4of4_struct;
+
+typedef struct {
+ si_4_part1of4_struct si4part1of4;
+ si_4_part2of4_struct si4part2of4;
+ si_4_part3of4_struct si4part3of4;
+ si_4_part4of4_struct si4part4of4;
+} si_4_struct;
+
+typedef struct {
+ kal_uint8 l2pseudo_length;
+ kal_uint8 skip_ind;
+ kal_uint8 rr_mgmt_proto_disc;
+ kal_uint8 si_type5msg_type;
+ neigh_cells_desc1_struct bcch_freq_list;
+} si_5_struct;
+
+typedef struct {
+ kal_uint8 l2pseudo_length;
+ kal_uint8 skip_ind;
+ kal_uint8 rr_mgmt_proto_disc;
+ kal_uint8 si_type5bis_msg_type;
+ neigh_cells_desc1_struct extbcch_freq_list;
+} si_5bis_struct;
+
+typedef struct {
+ kal_uint8 l2pseudo_length;
+ kal_uint8 skip_ind;
+ kal_uint8 rr_mgmt_proto_disc;
+ kal_uint8 si_type5ter_msg_type;
+ neigh_cells_desc2_struct extbcch_freq_list;
+} si_5ter_struct;
+
+typedef struct {
+ kal_uint8 l2pseudo_length;
+ kal_uint8 skip_ind;
+ kal_uint8 rr_mgmt_proto_disc;
+ kal_uint8 si_type6msg_type;
+ kal_uint16 cell_identity;
+ LAI lai;
+ celloptions cell_options;
+ kal_uint8 ncc_permitted;
+ si6restoct si6rest_octets;
+} si_6_struct;
+
+typedef struct {
+ kal_uint8 l2pseudo_length;
+ kal_uint8 skip_ind;
+ kal_uint8 rr_mgmt_proto_disc;
+ kal_uint8 si_type7msg_type;
+ si4restoct si7rest_octets;
+} si_7_struct;
+
+typedef struct {
+ kal_uint8 l2pseudo_length;
+ kal_uint8 skip_ind;
+ kal_uint8 rr_mgmt_proto_disc;
+ kal_uint8 si_type8msg_type;
+ si4restoct si8rest_octets;
+} si_8_struct;
+
+typedef struct {
+ kal_uint8 l2pseudo_length;
+ kal_uint8 skip_ind;
+ kal_uint8 rr_mgmt_proto_disc;
+ kal_uint8 si_type9msg_type;
+ rachparams rach_ctrl_params;
+} si_9_part1of2_struct;
+
+#ifdef __PS_SERVICE__
+typedef struct {
+ kal_uint8 l2pseudo_length;
+ kal_uint8 skip_ind;
+ kal_uint8 rr_mgmt_proto_disc;
+ kal_uint8 si_type13msg_type;
+ rr_spare_bit_enum ch1_tag;
+ union {
+ si13restoct si13rest_octets;
+ } ch1_value;
+} si_13_struct;
+#endif
+
+typedef struct {
+ kal_uint8 l2pseudo_length;
+ kal_uint8 skip_ind;
+ kal_uint8 rr_mgmt_proto_disc;
+ kal_uint8 si_type16msg_type;
+ lsa_params_struct si16rest_octets;
+} si_16_struct;
+
+typedef struct {
+ kal_uint8 l2pseudo_length;
+ kal_uint8 skip_ind;
+ kal_uint8 rr_mgmt_proto_disc;
+ kal_uint8 si_type17msg_type;
+ lsa_params_struct si17rest_octets;
+} si_17_struct;
+
+typedef struct {
+ kal_uint8 non_gsm_proto_disc;
+ kal_uint8 nrof_container_octets;
+ kal_uint8 no_container;
+ kal_uint8 container_size;
+ kal_uint8 *container; /* nrof_container_octets */
+} si_non_gsm_msg_struct;
+
+typedef struct {
+ kal_uint8 no_non_gsm_msg;
+ kal_uint8 non_gsm_msg_size;
+ si_non_gsm_msg_struct *non_gsm_msg; /* nrof_container_octets */
+} SI18_REST_OCTETS;
+
+typedef struct {
+ kal_uint8 l2pseudo_length;
+ kal_uint8 skip_ind;
+ kal_uint8 rr_mgmt_proto_disc;
+ kal_uint8 si_type13msg_type;
+ SI18_REST_OCTETS si18rest_octets;
+} si_18_struct;
+
+typedef struct {
+ kal_uint8 spare[20];
+} SI_19_REST_OCTETS;
+
+typedef struct {
+ kal_uint8 l2pseudo_length;
+ kal_uint8 skip_ind;
+ kal_uint8 rr_mgmt_proto_disc;
+ kal_uint8 si_type19msg_type;
+ SI_19_REST_OCTETS si19rest_octets;
+} si_19_struct;
+
+typedef struct {
+ kal_uint8 l2pseudo_length;
+ kal_uint8 skip_ind;
+ kal_uint8 rr_mgmt_proto_disc;
+ kal_uint8 si_type20msg_type;
+ SI18_REST_OCTETS si20rest_octets;
+} si_20_struct;
+#endif
+
+