Pre-ci test passed git-svn-id: http://svn.eurecom.fr/openair4G/trunk@4000 818b1a75-f10b-46b9-bf7c-635c3b92a50f
1366 lines
36 KiB
C
Executable File
1366 lines
36 KiB
C
Executable File
/***************************************************************************
|
|
rrc_ue.c
|
|
-------------------
|
|
begin : Nov 10, 2001
|
|
copyright : (C) 2001, 2010 by Eurecom
|
|
author : Michelle.Wetterwald@eurecom.fr
|
|
**************************************************************************
|
|
This file contains the code generated by the Esterel engine
|
|
|
|
IT MUST NOT BE MODIFIED MANUALLY
|
|
***************************************************************************/
|
|
/********************
|
|
//OpenAir definitions
|
|
********************/
|
|
#include "LAYER2/MAC/extern.h"
|
|
#include "UTIL/MEM/mem_block.h"
|
|
//-----------------------------------------------------------------------------
|
|
#include "rrc_ue_vars.h"
|
|
//-----------------------------------------------------------------------------
|
|
/* "SAXORT STRL Compiler version 3.1.6n compiled on Fri_Oct_18_15:50:53_CEST_2002" */
|
|
|
|
/* automaton kernel code*/
|
|
//#include <stdlib.h>
|
|
//#include <stdio.h>
|
|
//#include <string.h>
|
|
#include "rrc_ue.h"
|
|
#define SIZEOFINT 32
|
|
#define B_SET_VECTOR_MASK(i) ((unsigned int)1 << i)
|
|
#define B_RES_VECTOR_MASK(i) (~((unsigned int)1 << i))
|
|
#define BIT_SET(b_vector, bit_number) (b_vector)[(bit_number) / SIZEOFINT] |= B_SET_VECTOR_MASK((bit_number) % SIZEOFINT)
|
|
#define BIT_RESET(b_vector, bit_number) (b_vector)[(bit_number) / SIZEOFINT] &= ~B_SET_VECTOR_MASK((bit_number) % SIZEOFINT)
|
|
|
|
#define IS_ON(point) (_On[point / SIZEOFINT] & B_SET_VECTOR_MASK(point % SIZEOFINT))
|
|
#define IS_PAUSE_ON(point) (_Pause[point / SIZEOFINT] & B_SET_VECTOR_MASK(point % SIZEOFINT))
|
|
|
|
#define HALT_POINT_NUM 43
|
|
#define HALT_POINT_VECTOR_SIZE ((HALT_POINT_NUM-1)/(int)SIZEOFINT)+1
|
|
static unsigned int _On[HALT_POINT_VECTOR_SIZE];
|
|
static unsigned int _Pause[HALT_POINT_VECTOR_SIZE];
|
|
|
|
#define SIGNAL_NUM 55
|
|
#define SIGNAL_VECTOR_SIZE 2
|
|
#define SIGNAL_WITH_PRE_VECTOR_SIZE 1
|
|
#define GLOBALMAXPRELEVEL 2
|
|
static unsigned int _Sig[SIGNAL_VECTOR_SIZE];
|
|
static unsigned int _SigPreTab[GLOBALMAXPRELEVEL][SIGNAL_WITH_PRE_VECTOR_SIZE];
|
|
static unsigned int *_SigPre_0 = _SigPreTab[0];
|
|
static unsigned int *_SigPre_1 = _SigPreTab[1];
|
|
#define EMIT(vector, signal) (vector)[signal / SIZEOFINT] |= B_SET_VECTOR_MASK(signal % SIZEOFINT)
|
|
#define CLEAR_SIGNAL(vector, signal) (vector)[signal / SIZEOFINT] &= B_RES_VECTOR_MASK(signal % SIZEOFINT)
|
|
#define IS_SIGNAL(vector, signal) ((vector)[signal / SIZEOFINT] & B_SET_VECTOR_MASK(signal % SIZEOFINT))
|
|
|
|
#define GUARD_NUM 13
|
|
#define GUARD_VECTOR_SIZE ((GUARD_NUM-1)/(int)SIZEOFINT)+1
|
|
static unsigned int _Guard[GUARD_VECTOR_SIZE];
|
|
#define IS_GUARD(guard) (_Guard[guard / SIZEOFINT] & B_SET_VECTOR_MASK(guard % SIZEOFINT))
|
|
#define SET_GUARD(guard) _Guard[guard / SIZEOFINT] |= B_SET_VECTOR_MASK(guard % SIZEOFINT)
|
|
#define RESET_GUARD(guard) _Guard[guard / SIZEOFINT] &= B_RES_VECTOR_MASK(guard % SIZEOFINT)
|
|
|
|
#ifndef _PREDEFINED_TYPES
|
|
# define _PREDEFINED_TYPES
|
|
typedef int boolean;
|
|
typedef int integer;
|
|
# ifndef STRLEN
|
|
# define STRLEN 81
|
|
# endif
|
|
typedef char *string;
|
|
# define _integer(x, y) (*x) = (y)
|
|
# define _boolean(x, y) (*x) = (y)
|
|
# define _float(x, y) (*x) = (y)
|
|
# define _double(x, y) (*x) = (y)
|
|
# define _string(x, y) strcpy((*x), (y))
|
|
# define _eq_integer(x, y) ((x) == (y))
|
|
# define _eq_boolean(x, y) ((x) == (y))
|
|
# define _eq_float(x, y) ((x) == (y))
|
|
# define _eq_double(x, y) ((x) == (y))
|
|
# define _eq_string(x, y) (!strcmp((x), (y)))
|
|
# define _ne_integer(x, y) ((x) != (y))
|
|
# define _ne_boolean(x, y) ((x) != (y))
|
|
# define _ne_float(x, y) ((x) != (y))
|
|
# define _ne_double(x, y) ((x) != (y))
|
|
# define _ne_string(x, y) (strcmp((x), (y)))
|
|
# define _cond_integer(x, y, z) ((x)?(y):(z))
|
|
# define _cond_boolean(x, y, z) ((x)?(y):(z))
|
|
# define _cond_float(x, y, z) ((x)?(y):(z))
|
|
# define _cond_double(x, y, z) ((x)?(y):(z))
|
|
# define _cond_string(x, y, z) ((x)?(y):(z))
|
|
# define _string_to_text(x) (x)
|
|
# define _text_to_string(x, y) (strcpy((*x), (y)))
|
|
# define _plus_(x, y) (x) + (y)
|
|
# define _minus_(x, y) (x) - (y)
|
|
# define _times_(x, y) (x) * (y)
|
|
# define _div_(x, y) (x) / (y)
|
|
# define _mod_(x, y) (x) % (y)
|
|
# define _not_(x) !(x)
|
|
# define _or_(x, y) (x) || (y)
|
|
# define _and_(x, y) (x) && (y)
|
|
# define _equal_(x, y) (x) == (y)
|
|
# define _diff_(x, y) (x) != (y)
|
|
# define _sup_(x, y) (x) > (y)
|
|
# define _supequal_(x, y) (x) >= (y)
|
|
# define _inf_(x, y) (x) < (y)
|
|
# define _infequal_(x, y) (x) <= (y)
|
|
#endif
|
|
#ifndef SUCCESS
|
|
extern integer SUCCESS;
|
|
#endif
|
|
#ifndef FAILURE
|
|
extern integer FAILURE;
|
|
#endif
|
|
#ifndef ALREADY_C
|
|
extern integer ALREADY_C;
|
|
#endif
|
|
#ifndef CELL_FACH
|
|
extern integer CELL_FACH;
|
|
#endif
|
|
#ifndef CELL_DCH
|
|
extern integer CELL_DCH;
|
|
#endif
|
|
#ifndef CELL_PCH
|
|
extern integer CELL_PCH;
|
|
#endif
|
|
#ifndef RRC_CONN_REQ
|
|
extern integer RRC_CONN_REQ;
|
|
#endif
|
|
#ifndef RRC_CONN_SETUP
|
|
extern integer RRC_CONN_SETUP;
|
|
#endif
|
|
#ifndef RRC_CONN_SETUP_COMPLETE
|
|
extern integer RRC_CONN_SETUP_COMPLETE;
|
|
#endif
|
|
#ifndef RRC_CONN_REL_COMPLETE
|
|
extern integer RRC_CONN_REL_COMPLETE;
|
|
#endif
|
|
#ifndef RRC_CONN_RELEASE
|
|
extern integer RRC_CONN_RELEASE;
|
|
#endif
|
|
#ifndef IDLE
|
|
extern integer IDLE;
|
|
#endif
|
|
#ifndef N300
|
|
extern integer N300;
|
|
#endif
|
|
#ifndef N308
|
|
extern integer N308;
|
|
#endif
|
|
static boolean Var__ThisIsTheEnd__157;
|
|
#define __Sig_sc_in_Connection_Management_DOT_Idle_117 0
|
|
#define __Sig_sc_in_Connection_Management_DOT_Connected_DOT_CELL_DCH_118 0
|
|
#define __Sig_sc_in_Connection_Management_DOT_Connected_DOT_CELL_FACH_119 1
|
|
#define __Sig_sc_go_5_CELL_DCH_138 1
|
|
static integer Var_msg_142;
|
|
#define __Sig_sc_go_24_ConnReq_sent_141 2
|
|
static integer Var_msg_143;
|
|
#define __Sig_sc_go_18_ConnSU_fail2_145 3
|
|
#define __Sig_sc_go_14_Timer_started_153 4
|
|
static integer Sig_max_value_151;
|
|
#define __Sig_sc_go_14_Timer_started_156 5
|
|
static integer Sig_max_value_154;
|
|
#define __Sig_sc_go_41_ConnRel_send_146 6
|
|
#define __Sig_sc_go_40_ConnRel_proc_148 7
|
|
static integer Var_msg_147;
|
|
static integer Var_msg_149;
|
|
static integer Var_msg_150;
|
|
#define __Sig_Conn_Setup_End_136 8
|
|
static int Sig_V308_135_Pre0 = 0;
|
|
static int Sig_V308_135_Pre1 = 0;
|
|
static integer Sig_V308_135[2];
|
|
#define __Sig_start_T308_133 9
|
|
static integer Sig_start_T308_133;
|
|
static int Sig_V300_132_Pre0 = 0;
|
|
static int Sig_V300_132_Pre1 = 0;
|
|
static integer Sig_V300_132[2];
|
|
#define __Sig_inc_V300_131 10
|
|
#define __Sig_start_T300_130 11
|
|
static integer Sig_start_T300_130;
|
|
#define __Sig_Conn_Rel_Compl_Repeat_129 12
|
|
#define __Sig_Conn_Rel_Compl_Stop_128 13
|
|
#define __Sig_Conn_Request_Repeat_127 14
|
|
#define __Sig_Conn_Request_Stop_126 15
|
|
#define __Sig_Waiting_Connection_124 16
|
|
#define __Sig_Go_state_CELL_FACH_122 17
|
|
#define __Sig_Go_state_CELL_DCH_121 18
|
|
#define __Sig_Go_Idle_120 19
|
|
#define __Out_O_wait_116 20
|
|
static integer Out_O_wait_116;
|
|
#define __Out_O_UpdateSI_852_115 21
|
|
#define __Out_O_startT308_114 22
|
|
#define __Out_O_stopT300_113 23
|
|
#define __Out_O_startT300_112 24
|
|
#define __Out_O_NAS_CONN_LOSS_IND_111 25
|
|
#define __Out_O_NAS_CONN_RELEASE_IND_110 26
|
|
#define __Out_O_NAS_CONN_ESTAB_RESP_109 27
|
|
static integer Out_O_NAS_CONN_ESTAB_RESP_109;
|
|
#define __Out_O_SEND_DCCH_UM_108 28
|
|
static integer Out_O_SEND_DCCH_UM_108;
|
|
#define __Out_O_SEND_DCCH_AM_107 29
|
|
static integer Out_O_SEND_DCCH_AM_107;
|
|
#define __Out_O_SEND_CCCH_106 30
|
|
static integer Out_O_SEND_CCCH_106;
|
|
#define __Out_O_Setup_FACHRACH_105 31
|
|
#define __Out_O_PHY_SYNCH_104 32
|
|
#define __In_I_Go_CELL_FACH_103 33
|
|
#define __In_I_Go_CELL_DCH_102 34
|
|
#define __In_I_WaitTimerExpired_101 35
|
|
#define __In_I_T308_TimeOut_100 36
|
|
#define __In_I_T300_TimeOut_99 37
|
|
#define __In_I_NAS_CONN_RELEASE_REQ_98 38
|
|
#define __In_I_NAS_CONN_ESTABLISHMENT_REQ_97 39
|
|
#define __In_I_RRC_CONNECTION_RELEASE_96 40
|
|
#define __In_I_RRC_CONNECTION_REJECT_95 41
|
|
#define __In_I_RRC_CONNECTION_SETUP_94 42
|
|
#define __In_I_RLC_Success_93 43
|
|
#define __In_I_RLC_Failure_92 44
|
|
#define __In_I_CPHY_CONNECTION_LOSS_91 45
|
|
#define __In_I_CPHY_SYNCH_IND_90 46
|
|
#define __In_I_CPHY_SYNCH_Failure_89 47
|
|
#define __In_I_rcved_on_CCCH_88 48
|
|
#define __In_I_rcved_on_DCCH_87 49
|
|
#define __In_I_Wait_Time_86 50
|
|
static integer In_I_Wait_Time_86;
|
|
#define __In_I_IE_Freq_Info_85 51
|
|
#define __In_I_IE_RRC_State_84 52
|
|
static integer In_I_IE_RRC_State_84;
|
|
#define __In_UE_ID_INIT_83 53
|
|
static integer In_UE_ID_INIT_83;
|
|
#define __In_UE_ID_MSG_82 54
|
|
static integer In_UE_ID_MSG_82;
|
|
#ifndef encode_message
|
|
extern void encode_message (integer *, integer);
|
|
#endif
|
|
#ifndef Select_PRACH
|
|
extern void Select_PRACH ();
|
|
#endif
|
|
#ifndef Select_Secondary_CCPCH
|
|
extern void Select_Secondary_CCPCH ();
|
|
#endif
|
|
#ifndef Set_State
|
|
extern void Set_State (integer, boolean);
|
|
#endif
|
|
#ifndef release_radio_resources
|
|
extern void release_radio_resources ();
|
|
#endif
|
|
#ifndef clear_variables_rel
|
|
extern void clear_variables_rel ();
|
|
#endif
|
|
#ifndef ue_clear_transaction
|
|
extern void ue_clear_transaction (integer);
|
|
#endif
|
|
#ifndef INTEGER_COMBINE
|
|
extern integer INTEGER_COMBINE (integer, integer);
|
|
#endif
|
|
|
|
extern void RRC_UE_O_O_wait (integer);
|
|
extern void RRC_UE_O_O_UpdateSI_852 (void);
|
|
extern void RRC_UE_O_O_startT308 (void);
|
|
extern void RRC_UE_O_O_stopT300 (void);
|
|
extern void RRC_UE_O_O_startT300 (void);
|
|
extern void RRC_UE_O_O_NAS_CONN_LOSS_IND (void);
|
|
extern void RRC_UE_O_O_NAS_CONN_RELEASE_IND (void);
|
|
extern void RRC_UE_O_O_NAS_CONN_ESTAB_RESP (integer);
|
|
extern void RRC_UE_O_O_SEND_DCCH_UM (integer);
|
|
extern void RRC_UE_O_O_SEND_DCCH_AM (integer);
|
|
extern void RRC_UE_O_O_SEND_CCCH (integer);
|
|
extern void RRC_UE_O_O_Setup_FACHRACH (void);
|
|
extern void RRC_UE_O_O_PHY_SYNCH (void);
|
|
void
|
|
RRC_UE_I_I_Go_CELL_FACH (void)
|
|
{
|
|
EMIT (_Sig, __In_I_Go_CELL_FACH_103);
|
|
}
|
|
|
|
void
|
|
RRC_UE_I_I_Go_CELL_DCH (void)
|
|
{
|
|
EMIT (_Sig, __In_I_Go_CELL_DCH_102);
|
|
}
|
|
|
|
void
|
|
RRC_UE_I_I_WaitTimerExpired (void)
|
|
{
|
|
EMIT (_Sig, __In_I_WaitTimerExpired_101);
|
|
}
|
|
|
|
void
|
|
RRC_UE_I_I_T308_TimeOut (void)
|
|
{
|
|
EMIT (_Sig, __In_I_T308_TimeOut_100);
|
|
}
|
|
|
|
void
|
|
RRC_UE_I_I_T300_TimeOut (void)
|
|
{
|
|
EMIT (_Sig, __In_I_T300_TimeOut_99);
|
|
}
|
|
|
|
void
|
|
RRC_UE_I_I_NAS_CONN_RELEASE_REQ (void)
|
|
{
|
|
EMIT (_Sig, __In_I_NAS_CONN_RELEASE_REQ_98);
|
|
}
|
|
|
|
void
|
|
RRC_UE_I_I_NAS_CONN_ESTABLISHMENT_REQ (void)
|
|
{
|
|
EMIT (_Sig, __In_I_NAS_CONN_ESTABLISHMENT_REQ_97);
|
|
}
|
|
|
|
void
|
|
RRC_UE_I_I_RRC_CONNECTION_RELEASE (void)
|
|
{
|
|
EMIT (_Sig, __In_I_RRC_CONNECTION_RELEASE_96);
|
|
}
|
|
|
|
void
|
|
RRC_UE_I_I_RRC_CONNECTION_REJECT (void)
|
|
{
|
|
EMIT (_Sig, __In_I_RRC_CONNECTION_REJECT_95);
|
|
}
|
|
|
|
void
|
|
RRC_UE_I_I_RRC_CONNECTION_SETUP (void)
|
|
{
|
|
EMIT (_Sig, __In_I_RRC_CONNECTION_SETUP_94);
|
|
}
|
|
|
|
void
|
|
RRC_UE_I_I_RLC_Success (void)
|
|
{
|
|
EMIT (_Sig, __In_I_RLC_Success_93);
|
|
}
|
|
|
|
void
|
|
RRC_UE_I_I_RLC_Failure (void)
|
|
{
|
|
EMIT (_Sig, __In_I_RLC_Failure_92);
|
|
}
|
|
|
|
void
|
|
RRC_UE_I_I_CPHY_CONNECTION_LOSS (void)
|
|
{
|
|
EMIT (_Sig, __In_I_CPHY_CONNECTION_LOSS_91);
|
|
}
|
|
|
|
void
|
|
RRC_UE_I_I_CPHY_SYNCH_IND (void)
|
|
{
|
|
EMIT (_Sig, __In_I_CPHY_SYNCH_IND_90);
|
|
}
|
|
|
|
void
|
|
RRC_UE_I_I_CPHY_SYNCH_Failure (void)
|
|
{
|
|
EMIT (_Sig, __In_I_CPHY_SYNCH_Failure_89);
|
|
}
|
|
|
|
void
|
|
RRC_UE_I_I_rcved_on_CCCH (void)
|
|
{
|
|
EMIT (_Sig, __In_I_rcved_on_CCCH_88);
|
|
}
|
|
|
|
void
|
|
RRC_UE_I_I_rcved_on_DCCH (void)
|
|
{
|
|
EMIT (_Sig, __In_I_rcved_on_DCCH_87);
|
|
}
|
|
|
|
void
|
|
RRC_UE_I_I_Wait_Time (integer value)
|
|
{
|
|
EMIT (_Sig, __In_I_Wait_Time_86);
|
|
_integer (&In_I_Wait_Time_86, value);
|
|
}
|
|
|
|
void
|
|
RRC_UE_I_I_IE_Freq_Info (void)
|
|
{
|
|
EMIT (_Sig, __In_I_IE_Freq_Info_85);
|
|
}
|
|
|
|
void
|
|
RRC_UE_I_I_IE_RRC_State (integer value)
|
|
{
|
|
EMIT (_Sig, __In_I_IE_RRC_State_84);
|
|
_integer (&In_I_IE_RRC_State_84, value);
|
|
}
|
|
|
|
void
|
|
RRC_UE_I_UE_ID_INIT (integer value)
|
|
{
|
|
EMIT (_Sig, __In_UE_ID_INIT_83);
|
|
_integer (&In_UE_ID_INIT_83, value);
|
|
}
|
|
|
|
void
|
|
RRC_UE_I_UE_ID_MSG (integer value)
|
|
{
|
|
EMIT (_Sig, __In_UE_ID_MSG_82);
|
|
_integer (&In_UE_ID_MSG_82, value);
|
|
}
|
|
|
|
static void
|
|
Point_0 (void)
|
|
{
|
|
/*#0 */
|
|
_boolean (&Var__ThisIsTheEnd__157, 1);
|
|
CLEAR_SIGNAL (_SigPre_0, __Sig_sc_in_Connection_Management_DOT_Connected_DOT_CELL_DCH_118);
|
|
CLEAR_SIGNAL (_SigPre_1, __Sig_sc_in_Connection_Management_DOT_Connected_DOT_CELL_DCH_118);
|
|
CLEAR_SIGNAL (_SigPre_0, __Sig_sc_in_Connection_Management_DOT_Connected_DOT_CELL_FACH_119);
|
|
CLEAR_SIGNAL (_SigPre_1, __Sig_sc_in_Connection_Management_DOT_Connected_DOT_CELL_FACH_119);
|
|
Set_State (IDLE, 0);
|
|
_Pause[0] |= 0x2088011a;
|
|
_Pause[1] |= 0x12; /* PauseOn: #1 #3 #4 #8 #19 #23 #29 #33 #36 */
|
|
}
|
|
|
|
static void
|
|
Point_1 (void)
|
|
{
|
|
/*#1 AutoPauseOn */
|
|
if (IS_SIGNAL (_Sig, __In_I_NAS_CONN_RELEASE_REQ_98)) {
|
|
if ((IS_SIGNAL (_SigPre_1, __Sig_sc_in_Connection_Management_DOT_Connected_DOT_CELL_FACH_119) || IS_SIGNAL (_SigPre_1, __Sig_sc_in_Connection_Management_DOT_Connected_DOT_CELL_DCH_118))) {
|
|
encode_message (&Var_msg_150, RRC_CONN_RELEASE);
|
|
EMIT (_Sig, __Out_O_SEND_DCCH_AM_107);
|
|
if (!(IS_GUARD (9)))
|
|
_integer (&Out_O_SEND_DCCH_AM_107, Var_msg_150);
|
|
else
|
|
_integer (&Out_O_SEND_DCCH_AM_107, INTEGER_COMBINE (Out_O_SEND_DCCH_AM_107, Var_msg_150));
|
|
SET_GUARD (9);
|
|
_On[0] |= 0x100000; /* On: #20 */
|
|
_On[0] &= ~0x2; /* Off: #1 */
|
|
_Pause[0] |= 0x4; /* PauseOn: #2 */
|
|
}
|
|
}
|
|
}
|
|
|
|
static void
|
|
Point_2 (void)
|
|
{
|
|
/*#2 AutoPauseOn */
|
|
if ((IS_SIGNAL (_Sig, __In_I_RLC_Success_93) || IS_SIGNAL (_Sig, __In_I_RLC_Failure_92))) {
|
|
release_radio_resources ();
|
|
clear_variables_rel ();
|
|
EMIT (_Sig, __Sig_Go_Idle_120);
|
|
EMIT (_Sig, __Out_O_UpdateSI_852_115);
|
|
if (!(IS_GUARD (1))) {
|
|
RRC_UE_O_O_UpdateSI_852 ();
|
|
SET_GUARD (1);
|
|
}
|
|
EMIT (_Sig, __Sig_Conn_Setup_End_136);
|
|
_On[0] |= 0x1000000; /* On: #24 */
|
|
_On[0] &= ~0x4; /* Off: #2 */
|
|
}
|
|
}
|
|
|
|
static void
|
|
Point_3 (void)
|
|
{
|
|
/*#3 AutoPauseOn */
|
|
EMIT (_Sig, __Sig_sc_in_Connection_Management_DOT_Idle_117);
|
|
}
|
|
|
|
static void
|
|
Point_4 (void)
|
|
{
|
|
/*#4 AutoPauseOn */
|
|
if (IS_SIGNAL (_Sig, __In_I_NAS_CONN_ESTABLISHMENT_REQ_97)) {
|
|
_On[0] |= 0x10000000; /* On: #28 */
|
|
_On[0] &= ~0x10; /* Off: #4 */
|
|
}
|
|
}
|
|
|
|
static void
|
|
Point_5 (void)
|
|
{
|
|
/*#5 AutoPauseOn */
|
|
if (IS_SIGNAL (_Sig, __In_I_WaitTimerExpired_101)) {
|
|
EMIT (_Sig, __Sig_inc_V300_131);
|
|
_On[0] |= 0x10000; /* On: #16 */
|
|
_On[0] &= ~0x20; /* Off: #5 */
|
|
}
|
|
}
|
|
|
|
static void
|
|
Point_6 (void)
|
|
{
|
|
/*#6 */
|
|
if (IS_SIGNAL (_Sig, __In_I_RRC_CONNECTION_REJECT_95)) {
|
|
EMIT (_Sig, __Out_O_stopT300_113);
|
|
if (!(IS_GUARD (3))) {
|
|
RRC_UE_O_O_stopT300 ();
|
|
SET_GUARD (3);
|
|
}
|
|
if (((In_I_Wait_Time_86 > 0) && (Sig_V300_132[Sig_V300_132_Pre1] <= N300))) {
|
|
if (IS_SIGNAL (_Sig, __In_I_IE_Freq_Info_85)) {
|
|
EMIT (_Sig, __Sig_sc_go_18_ConnSU_fail2_145);
|
|
_On[0] |= 0x10000; /* On: #16 */
|
|
} else {
|
|
EMIT (_Sig, __Out_O_wait_116);
|
|
_integer (&Out_O_wait_116, In_I_Wait_Time_86);
|
|
RRC_UE_O_O_wait (Out_O_wait_116);
|
|
_Pause[0] |= 0x20; /* PauseOn: #5 */
|
|
}
|
|
} else {
|
|
EMIT (_Sig, __Sig_sc_go_18_ConnSU_fail2_145);
|
|
_On[0] |= 0x10000; /* On: #16 */
|
|
}
|
|
} else {
|
|
if (IS_SIGNAL (_Sig, __In_I_RRC_CONNECTION_SETUP_94)) {
|
|
EMIT (_Sig, __Out_O_stopT300_113);
|
|
if (!(IS_GUARD (3))) {
|
|
RRC_UE_O_O_stopT300 ();
|
|
SET_GUARD (3);
|
|
}
|
|
_Pause[0] |= 0x80; /* PauseOn: #7 */
|
|
if (_eq_integer (In_I_IE_RRC_State_84, CELL_FACH)) {
|
|
Select_PRACH ();
|
|
Select_Secondary_CCPCH ();
|
|
}
|
|
EMIT (_Sig, __Out_O_PHY_SYNCH_104);
|
|
if (!(IS_GUARD (12))) {
|
|
RRC_UE_O_O_PHY_SYNCH ();
|
|
SET_GUARD (12);
|
|
}
|
|
} else {
|
|
_On[1] |= 0x80; /* On: #39 */
|
|
}
|
|
}
|
|
}
|
|
|
|
static void
|
|
Point_7 (void)
|
|
{
|
|
/*#7 AutoPauseOn */
|
|
if (IS_SIGNAL (_Sig, __In_I_CPHY_SYNCH_Failure_89)) {
|
|
_On[0] &= ~0x80; /* Off: #7 */
|
|
if ((Sig_V300_132[Sig_V300_132_Pre1] <= N300)) {
|
|
EMIT (_Sig, __Sig_inc_V300_131);
|
|
_On[0] |= 0x10000; /* On: #16 */
|
|
} else {
|
|
EMIT (_Sig, __Sig_sc_go_18_ConnSU_fail2_145);
|
|
_On[0] |= 0x10000; /* On: #16 */
|
|
}
|
|
} else {
|
|
if (IS_SIGNAL (_Sig, __In_I_CPHY_SYNCH_IND_90)) {
|
|
_On[0] &= ~0x80; /* Off: #7 */
|
|
_Pause[0] |= 0x8000; /* PauseOn: #15 */
|
|
if (_eq_integer (In_I_IE_RRC_State_84, CELL_FACH)) {
|
|
EMIT (_Sig, __Sig_Go_state_CELL_FACH_122);
|
|
}
|
|
if (_eq_integer (In_I_IE_RRC_State_84, CELL_DCH)) {
|
|
EMIT (_Sig, __Sig_Go_state_CELL_DCH_121);
|
|
}
|
|
encode_message (&Var_msg_143, RRC_CONN_SETUP_COMPLETE);
|
|
EMIT (_Sig, __Out_O_SEND_DCCH_AM_107);
|
|
if (!(IS_GUARD (9)))
|
|
_integer (&Out_O_SEND_DCCH_AM_107, Var_msg_143);
|
|
else
|
|
_integer (&Out_O_SEND_DCCH_AM_107, INTEGER_COMBINE (Out_O_SEND_DCCH_AM_107, Var_msg_143));
|
|
SET_GUARD (9);
|
|
_On[0] |= 0x100000; /* On: #20 */
|
|
}
|
|
}
|
|
}
|
|
|
|
static void
|
|
Point_8 (void)
|
|
{
|
|
/*#8 AutoPauseOn */
|
|
if ((IS_SIGNAL (_Sig, __Sig_Go_state_CELL_DCH_121) || IS_SIGNAL (_Sig, __Sig_Go_state_CELL_FACH_122))) {
|
|
CLEAR_SIGNAL (_Sig, __Sig_sc_go_5_CELL_DCH_138);
|
|
_On[0] |= 0x200; /* On: #9 */
|
|
_On[0] &= ~0x100; /* Off: #8 */
|
|
_Pause[0] |= 0x8000000; /* PauseOn: #27 */
|
|
_Pause[0] &= ~0x8;
|
|
_On[0] &= ~0x8; /* PauseOff: #3 */
|
|
}
|
|
}
|
|
|
|
static void
|
|
Point_9 (void)
|
|
{
|
|
/*#9 AutoPauseOn */
|
|
if (IS_SIGNAL (_Sig, __Sig_Go_state_CELL_FACH_122)) {
|
|
SET_GUARD (0);
|
|
_On[0] &= ~0x200; /* Off: #9 */
|
|
} else {
|
|
if (IS_SIGNAL (_Sig, __Sig_Go_state_CELL_DCH_121)) {
|
|
SET_GUARD (0);
|
|
EMIT (_Sig, __Sig_sc_go_5_CELL_DCH_138);
|
|
_On[0] &= ~0x200; /* Off: #9 */
|
|
}
|
|
}
|
|
if (IS_GUARD (0)) {
|
|
if (IS_SIGNAL (_Sig, __Sig_sc_go_5_CELL_DCH_138)) {
|
|
EMIT (_SigPre_0, __Sig_sc_in_Connection_Management_DOT_Connected_DOT_CELL_DCH_118);
|
|
_Pause[0] |= 0xc00; /* PauseOn: #10 #11 */
|
|
if (IS_SIGNAL (_Sig, __In_I_Go_CELL_DCH_102)) {
|
|
Set_State (CELL_DCH, 1);
|
|
} else {
|
|
Set_State (CELL_DCH, 0);
|
|
}
|
|
} else {
|
|
EMIT (_SigPre_0, __Sig_sc_in_Connection_Management_DOT_Connected_DOT_CELL_FACH_119);
|
|
_Pause[0] |= 0x3000; /* PauseOn: #12 #13 */
|
|
if (IS_SIGNAL (_Sig, __In_I_Go_CELL_FACH_103)) {
|
|
Set_State (CELL_FACH, 1);
|
|
} else {
|
|
Set_State (CELL_FACH, 0);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
static void
|
|
Point_10 (void)
|
|
{
|
|
/*#10 AutoPauseOn */
|
|
EMIT (_SigPre_0, __Sig_sc_in_Connection_Management_DOT_Connected_DOT_CELL_DCH_118);
|
|
}
|
|
|
|
static void
|
|
Point_11 (void)
|
|
{
|
|
/*#11 AutoPauseOn */
|
|
if ((IS_SIGNAL (_Sig, __Sig_Go_state_CELL_FACH_122) || IS_SIGNAL (_Sig, __In_I_Go_CELL_FACH_103))) {
|
|
_On[0] |= 0x4000; /* On: #14 */
|
|
_On[0] &= ~0x800; /* Off: #11 */
|
|
_Pause[0] &= ~0x400;
|
|
_On[0] &= ~0x400; /* PauseOff: #10 */
|
|
}
|
|
}
|
|
|
|
static void
|
|
Point_12 (void)
|
|
{
|
|
/*#12 AutoPauseOn */
|
|
EMIT (_SigPre_0, __Sig_sc_in_Connection_Management_DOT_Connected_DOT_CELL_FACH_119);
|
|
}
|
|
|
|
static void
|
|
Point_13 (void)
|
|
{
|
|
/*#13 AutoPauseOn */
|
|
if ((IS_SIGNAL (_Sig, __Sig_Go_state_CELL_DCH_121) || IS_SIGNAL (_Sig, __In_I_Go_CELL_DCH_102))) {
|
|
EMIT (_Sig, __Sig_sc_go_5_CELL_DCH_138);
|
|
_On[0] |= 0x4000; /* On: #14 */
|
|
_On[0] &= ~0x2000; /* Off: #13 */
|
|
_Pause[0] &= ~0x1000;
|
|
_On[0] &= ~0x1000; /* PauseOff: #12 */
|
|
}
|
|
}
|
|
|
|
static void
|
|
Point_14 (void)
|
|
{
|
|
/*#14 */
|
|
if (IS_SIGNAL (_Sig, __Sig_sc_go_5_CELL_DCH_138)) {
|
|
EMIT (_SigPre_0, __Sig_sc_in_Connection_Management_DOT_Connected_DOT_CELL_DCH_118);
|
|
_Pause[0] |= 0xc00; /* PauseOn: #10 #11 */
|
|
if (IS_SIGNAL (_Sig, __In_I_Go_CELL_DCH_102)) {
|
|
Set_State (CELL_DCH, 1);
|
|
} else {
|
|
Set_State (CELL_DCH, 0);
|
|
}
|
|
} else {
|
|
EMIT (_SigPre_0, __Sig_sc_in_Connection_Management_DOT_Connected_DOT_CELL_FACH_119);
|
|
_Pause[0] |= 0x3000; /* PauseOn: #12 #13 */
|
|
if (IS_SIGNAL (_Sig, __In_I_Go_CELL_FACH_103)) {
|
|
Set_State (CELL_FACH, 1);
|
|
} else {
|
|
Set_State (CELL_FACH, 0);
|
|
}
|
|
}
|
|
}
|
|
|
|
static void
|
|
Point_15 (void)
|
|
{
|
|
/*#15 AutoPauseOn */
|
|
if (IS_SIGNAL (_Sig, __In_I_RLC_Failure_92)) {
|
|
EMIT (_Sig, __Sig_Go_Idle_120);
|
|
EMIT (_Sig, __Sig_sc_go_18_ConnSU_fail2_145);
|
|
_On[0] |= 0x10000; /* On: #16 */
|
|
_On[0] &= ~0x8000; /* Off: #15 */
|
|
} else {
|
|
if (IS_SIGNAL (_Sig, __In_I_RLC_Success_93)) {
|
|
EMIT (_Sig, __Out_O_NAS_CONN_ESTAB_RESP_109);
|
|
if (!(IS_GUARD (7)))
|
|
_integer (&Out_O_NAS_CONN_ESTAB_RESP_109, SUCCESS);
|
|
else
|
|
_integer (&Out_O_NAS_CONN_ESTAB_RESP_109, INTEGER_COMBINE (Out_O_NAS_CONN_ESTAB_RESP_109, SUCCESS));
|
|
SET_GUARD (7);
|
|
ue_clear_transaction (RRC_CONN_SETUP);
|
|
EMIT (_Sig, __Sig_Conn_Setup_End_136);
|
|
_On[1] |= 0x200; /* On: #41 */
|
|
_On[0] &= ~0x8000; /* Off: #15 */
|
|
}
|
|
}
|
|
}
|
|
|
|
static void
|
|
Point_16 (void)
|
|
{
|
|
/*#16 */
|
|
if (IS_SIGNAL (_Sig, __Sig_sc_go_18_ConnSU_fail2_145)) {
|
|
EMIT (_Sig, __Sig_Conn_Setup_End_136);
|
|
EMIT (_Sig, __Out_O_UpdateSI_852_115);
|
|
if (!(IS_GUARD (1))) {
|
|
RRC_UE_O_O_UpdateSI_852 ();
|
|
SET_GUARD (1);
|
|
}
|
|
EMIT (_Sig, __Out_O_NAS_CONN_ESTAB_RESP_109);
|
|
if (!(IS_GUARD (7)))
|
|
_integer (&Out_O_NAS_CONN_ESTAB_RESP_109, FAILURE);
|
|
else
|
|
_integer (&Out_O_NAS_CONN_ESTAB_RESP_109, INTEGER_COMBINE (Out_O_NAS_CONN_ESTAB_RESP_109, FAILURE));
|
|
SET_GUARD (7);
|
|
_On[1] |= 0x200; /* On: #41 */
|
|
} else {
|
|
_Pause[0] |= 0x40; /* PauseOn: #6 */
|
|
}
|
|
}
|
|
|
|
static void
|
|
Point_17 (void)
|
|
{
|
|
/*#17 */
|
|
if (IS_SIGNAL (_Sig, __In_I_T308_TimeOut_100)) {
|
|
if ((Sig_V308_135[Sig_V308_135_Pre1] > Sig_max_value_154)) {
|
|
EMIT (_Sig, __Sig_Conn_Rel_Compl_Stop_128);
|
|
_On[1] |= 0x4; /* On: #34 */
|
|
} else {
|
|
EMIT (_Sig, __Sig_Conn_Rel_Compl_Repeat_129);
|
|
_On[1] |= 0x1; /* On: #32 */
|
|
}
|
|
} else {
|
|
_On[0] |= 0x80000000; /* On: #31 */
|
|
}
|
|
}
|
|
|
|
static void
|
|
Point_18 (void)
|
|
{
|
|
/*#18 AutoPauseOn */
|
|
if (IS_SIGNAL (_Sig, __Sig_Conn_Rel_Compl_Repeat_129)) {
|
|
EMIT (_Sig, __Sig_sc_go_41_ConnRel_send_146);
|
|
_On[0] |= 0x400000; /* On: #22 */
|
|
_On[0] &= ~0x40000; /* Off: #18 */
|
|
} else {
|
|
if (IS_SIGNAL (_Sig, __Sig_Conn_Rel_Compl_Stop_128)) {
|
|
EMIT (_Sig, __Sig_sc_go_40_ConnRel_proc_148);
|
|
_On[0] |= 0x400000; /* On: #22 */
|
|
_On[0] &= ~0x40000; /* Off: #18 */
|
|
}
|
|
}
|
|
}
|
|
|
|
static void
|
|
Point_19 (void)
|
|
{
|
|
/*#19 AutoPauseOn */
|
|
if (IS_SIGNAL (_Sig, __In_I_RRC_CONNECTION_RELEASE_96)) {
|
|
_On[0] &= ~0x80000; /* Off: #19 */
|
|
if (IS_SIGNAL (_SigPre_1, __Sig_sc_in_Connection_Management_DOT_Connected_DOT_CELL_FACH_119)) {
|
|
if (IS_SIGNAL (_Sig, __In_I_rcved_on_CCCH_88)) {
|
|
EMIT (_Sig, __Sig_sc_go_40_ConnRel_proc_148);
|
|
_On[0] |= 0x400000; /* On: #22 */
|
|
} else {
|
|
if (IS_SIGNAL (_Sig, __In_I_rcved_on_DCCH_87)) {
|
|
encode_message (&Var_msg_147, RRC_CONN_REL_COMPLETE);
|
|
EMIT (_Sig, __Out_O_SEND_DCCH_AM_107);
|
|
if (!(IS_GUARD (9)))
|
|
_integer (&Out_O_SEND_DCCH_AM_107, Var_msg_147);
|
|
else
|
|
_integer (&Out_O_SEND_DCCH_AM_107, INTEGER_COMBINE (Out_O_SEND_DCCH_AM_107, Var_msg_147));
|
|
SET_GUARD (9);
|
|
_On[0] |= 0x100000; /* On: #20 */
|
|
_Pause[0] |= 0x200000; /* PauseOn: #21 */
|
|
} else {
|
|
_On[0] |= 0x400000; /* On: #22 */
|
|
}
|
|
}
|
|
} else {
|
|
if (IS_SIGNAL (_SigPre_1, __Sig_sc_in_Connection_Management_DOT_Connected_DOT_CELL_DCH_118)) {
|
|
encode_message (&Var_msg_147, RRC_CONN_REL_COMPLETE);
|
|
EMIT (_Sig, __Sig_start_T308_133);
|
|
_integer (&Sig_start_T308_133, N308);
|
|
EMIT (_Sig, __Sig_sc_go_41_ConnRel_send_146);
|
|
_On[0] |= 0x400000; /* On: #22 */
|
|
} else {
|
|
_On[0] |= 0x400000; /* On: #22 */
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
static void
|
|
Point_20 (void)
|
|
{
|
|
/*#20 */
|
|
RRC_UE_O_O_SEND_DCCH_AM (Out_O_SEND_DCCH_AM_107);
|
|
}
|
|
|
|
static void
|
|
Point_21 (void)
|
|
{
|
|
/*#21 AutoPauseOn */
|
|
if ((IS_SIGNAL (_Sig, __In_I_RLC_Success_93) || IS_SIGNAL (_Sig, __In_I_RLC_Failure_92))) {
|
|
EMIT (_Sig, __Sig_sc_go_40_ConnRel_proc_148);
|
|
_On[0] |= 0x400000; /* On: #22 */
|
|
_On[0] &= ~0x200000; /* Off: #21 */
|
|
}
|
|
}
|
|
|
|
static void
|
|
Point_22 (void)
|
|
{
|
|
/*#22 */
|
|
if (IS_SIGNAL (_Sig, __Sig_sc_go_40_ConnRel_proc_148)) {
|
|
release_radio_resources ();
|
|
EMIT (_Sig, __Out_O_NAS_CONN_RELEASE_IND_110);
|
|
if (!(IS_GUARD (6))) {
|
|
RRC_UE_O_O_NAS_CONN_RELEASE_IND ();
|
|
SET_GUARD (6);
|
|
}
|
|
clear_variables_rel ();
|
|
EMIT (_Sig, __Sig_Go_Idle_120);
|
|
EMIT (_Sig, __Out_O_UpdateSI_852_115);
|
|
if (!(IS_GUARD (1))) {
|
|
RRC_UE_O_O_UpdateSI_852 ();
|
|
SET_GUARD (1);
|
|
}
|
|
EMIT (_Sig, __Sig_Conn_Setup_End_136);
|
|
_On[0] |= 0x4000000; /* On: #26 */
|
|
} else {
|
|
_On[0] |= 0x40000000; /* On: #30 */
|
|
}
|
|
}
|
|
|
|
static void
|
|
Point_23 (void)
|
|
{
|
|
/*#23 AutoPauseOn */
|
|
if (IS_SIGNAL (_Sig, __In_I_CPHY_CONNECTION_LOSS_91)) {
|
|
release_radio_resources ();
|
|
EMIT (_Sig, __Out_O_NAS_CONN_LOSS_IND_111);
|
|
if (!(IS_GUARD (5))) {
|
|
RRC_UE_O_O_NAS_CONN_LOSS_IND ();
|
|
SET_GUARD (5);
|
|
}
|
|
clear_variables_rel ();
|
|
EMIT (_Sig, __Out_O_UpdateSI_852_115);
|
|
if (!(IS_GUARD (1))) {
|
|
RRC_UE_O_O_UpdateSI_852 ();
|
|
SET_GUARD (1);
|
|
}
|
|
EMIT (_Sig, __Sig_Conn_Setup_End_136);
|
|
EMIT (_Sig, __Sig_Go_Idle_120);
|
|
_On[0] |= 0x2000000; /* On: #25 */
|
|
_On[0] &= ~0x800000; /* Off: #23 */
|
|
}
|
|
}
|
|
|
|
static void
|
|
Point_24 (void)
|
|
{
|
|
/*#24 AutoPauseOn */
|
|
if (IS_SIGNAL (_Sig, __Sig_Conn_Setup_End_136)) {
|
|
_On[0] &= ~0x1000000; /* Off: #24 */
|
|
_Pause[0] |= 0x2; /* PauseOn: #1 */
|
|
}
|
|
}
|
|
|
|
static void
|
|
Point_25 (void)
|
|
{
|
|
/*#25 AutoPauseOn */
|
|
if (IS_SIGNAL (_Sig, __Sig_Conn_Setup_End_136)) {
|
|
_On[0] &= ~0x2000000; /* Off: #25 */
|
|
_Pause[0] |= 0x800000; /* PauseOn: #23 */
|
|
}
|
|
}
|
|
|
|
static void
|
|
Point_26 (void)
|
|
{
|
|
/*#26 AutoPauseOn */
|
|
if (IS_SIGNAL (_Sig, __Sig_Conn_Setup_End_136)) {
|
|
_On[0] |= 0x40000000; /* On: #30 */
|
|
_On[0] &= ~0x4000000; /* Off: #26 */
|
|
}
|
|
}
|
|
|
|
static void
|
|
Point_27 (void)
|
|
{
|
|
/*#27 AutoPauseOn */
|
|
if (IS_SIGNAL (_Sig, __Sig_Go_Idle_120)) {
|
|
Set_State (IDLE, 0);
|
|
EMIT (_Sig, __Sig_sc_in_Connection_Management_DOT_Idle_117);
|
|
_On[0] &= ~0x8000000; /* Off: #27 */
|
|
_Pause[0] |= 0x108; /* PauseOn: #3 #8 */
|
|
_Pause[0] &= ~0x3e00;
|
|
_On[0] &= ~0x3e00; /* PauseOff: #9 #10 #11 #12 #13 */
|
|
}
|
|
}
|
|
|
|
static void
|
|
Point_28 (void)
|
|
{
|
|
/*#28 AutoPauseOn */
|
|
if (IS_SIGNAL (_Sig, __Sig_sc_in_Connection_Management_DOT_Idle_117)) {
|
|
EMIT (_Sig, __Out_O_Setup_FACHRACH_105);
|
|
if (!(IS_GUARD (11))) {
|
|
RRC_UE_O_O_Setup_FACHRACH ();
|
|
SET_GUARD (11);
|
|
}
|
|
encode_message (&Var_msg_142, RRC_CONN_REQ);
|
|
EMIT (_Sig, __Sig_Waiting_Connection_124);
|
|
EMIT (_Sig, __Sig_start_T300_130);
|
|
_integer (&Sig_start_T300_130, N300);
|
|
EMIT (_Sig, __Sig_sc_go_24_ConnReq_sent_141);
|
|
_On[1] |= 0x400; /* On: #42 */
|
|
_On[0] &= ~0x10000000; /* Off: #28 */
|
|
} else {
|
|
if ((!IS_SIGNAL (_Sig, __Sig_sc_in_Connection_Management_DOT_Idle_117))) {
|
|
EMIT (_Sig, __Out_O_NAS_CONN_ESTAB_RESP_109);
|
|
if (!(IS_GUARD (7)))
|
|
_integer (&Out_O_NAS_CONN_ESTAB_RESP_109, ALREADY_C);
|
|
else
|
|
_integer (&Out_O_NAS_CONN_ESTAB_RESP_109, INTEGER_COMBINE (Out_O_NAS_CONN_ESTAB_RESP_109, ALREADY_C));
|
|
SET_GUARD (7);
|
|
_On[1] |= 0x600; /* On: #41 #42 */
|
|
_On[0] &= ~0x10000000; /* Off: #28 */
|
|
}
|
|
}
|
|
}
|
|
|
|
static void
|
|
Point_29 (void)
|
|
{
|
|
/*#29 AutoPauseOn */
|
|
if (IS_SIGNAL (_Sig, __Sig_Waiting_Connection_124)) {
|
|
_On[1] |= 0x100; /* On: #40 */
|
|
_On[0] &= ~0x20000000; /* Off: #29 */
|
|
_Pause[0] |= 0x40; /* PauseOn: #6 */
|
|
}
|
|
}
|
|
|
|
static void
|
|
Point_30 (void)
|
|
{
|
|
/*#30 */
|
|
if (IS_SIGNAL (_Sig, __Sig_sc_go_41_ConnRel_send_146)) {
|
|
EMIT (_Sig, __Out_O_SEND_DCCH_UM_108);
|
|
if (!(IS_GUARD (8)))
|
|
_integer (&Out_O_SEND_DCCH_UM_108, Var_msg_147);
|
|
else
|
|
_integer (&Out_O_SEND_DCCH_UM_108, INTEGER_COMBINE (Out_O_SEND_DCCH_UM_108, Var_msg_147));
|
|
SET_GUARD (8);
|
|
EMIT (_Sig, __Out_O_startT308_114);
|
|
if (!(IS_GUARD (2))) {
|
|
RRC_UE_O_O_startT308 ();
|
|
SET_GUARD (2);
|
|
}
|
|
RRC_UE_O_O_SEND_DCCH_UM (Out_O_SEND_DCCH_UM_108);
|
|
_Pause[0] |= 0x40000; /* PauseOn: #18 */
|
|
} else {
|
|
_Pause[0] |= 0x80000; /* PauseOn: #19 */
|
|
}
|
|
}
|
|
|
|
static void
|
|
Point_31 (void)
|
|
{
|
|
/*#31 */
|
|
if (IS_SIGNAL (_Sig, __Sig_Conn_Setup_End_136)) {
|
|
_On[1] |= 0x4; /* On: #34 */
|
|
} else {
|
|
_Pause[0] |= 0x20000; /* PauseOn: #17 */
|
|
}
|
|
}
|
|
|
|
static void
|
|
Point_32 (void)
|
|
{
|
|
/*#32 */
|
|
Sig_V308_135_Pre0 = Sig_V308_135_Pre1 ^ 1;
|
|
_integer (&Sig_V308_135[Sig_V308_135_Pre0], (Sig_V308_135[Sig_V308_135_Pre1] + 1));
|
|
EMIT (_Sig, __Sig_sc_go_14_Timer_started_156);
|
|
_On[1] |= 0x4; /* On: #34 */
|
|
}
|
|
|
|
static void
|
|
Point_33 (void)
|
|
{
|
|
/*#33 AutoPauseOn */
|
|
if (IS_SIGNAL (_Sig, __Sig_start_T308_133)) {
|
|
Sig_V308_135_Pre0 = Sig_V308_135_Pre1 ^ 1;
|
|
_integer (&Sig_V308_135[Sig_V308_135_Pre0], 1);
|
|
_integer (&Sig_max_value_154, Sig_start_T308_133);
|
|
EMIT (_Sig, __Sig_sc_go_14_Timer_started_156);
|
|
_On[1] |= 0x4; /* On: #34 */
|
|
_On[1] &= ~0x2; /* Off: #33 */
|
|
}
|
|
}
|
|
|
|
static void
|
|
Point_34 (void)
|
|
{
|
|
/*#34 */
|
|
if (IS_SIGNAL (_Sig, __Sig_sc_go_14_Timer_started_156)) {
|
|
_Pause[0] |= 0x20000; /* PauseOn: #17 */
|
|
} else {
|
|
_Pause[1] |= 0x2; /* PauseOn: #33 */
|
|
}
|
|
}
|
|
|
|
static void
|
|
Point_35 (void)
|
|
{
|
|
/*#35 AutoPauseOn */
|
|
if ((IS_SIGNAL (_Sig, __In_I_T300_TimeOut_99) || IS_SIGNAL (_Sig, __Sig_inc_V300_131))) {
|
|
_On[1] &= ~0x8; /* Off: #35 */
|
|
if ((Sig_V300_132[Sig_V300_132_Pre1] > Sig_max_value_151)) {
|
|
EMIT (_Sig, __Sig_Conn_Request_Stop_126);
|
|
_On[1] |= 0x20; /* On: #37 */
|
|
} else {
|
|
EMIT (_Sig, __Sig_Conn_Request_Repeat_127);
|
|
Sig_V300_132_Pre0 = Sig_V300_132_Pre1 ^ 1;
|
|
_integer (&Sig_V300_132[Sig_V300_132_Pre0], (Sig_V300_132[Sig_V300_132_Pre1] + 1));
|
|
EMIT (_Sig, __Sig_sc_go_14_Timer_started_153);
|
|
_On[1] |= 0x20; /* On: #37 */
|
|
}
|
|
} else {
|
|
if (IS_SIGNAL (_Sig, __Sig_Conn_Setup_End_136)) {
|
|
_On[1] |= 0x20; /* On: #37 */
|
|
_On[1] &= ~0x8; /* Off: #35 */
|
|
}
|
|
}
|
|
}
|
|
|
|
static void
|
|
Point_36 (void)
|
|
{
|
|
/*#36 AutoPauseOn */
|
|
if (IS_SIGNAL (_Sig, __Sig_start_T300_130)) {
|
|
Sig_V300_132_Pre0 = Sig_V300_132_Pre1 ^ 1;
|
|
_integer (&Sig_V300_132[Sig_V300_132_Pre0], 1);
|
|
_integer (&Sig_max_value_151, Sig_start_T300_130);
|
|
EMIT (_Sig, __Sig_sc_go_14_Timer_started_153);
|
|
_On[1] |= 0x20; /* On: #37 */
|
|
_On[1] &= ~0x10; /* Off: #36 */
|
|
}
|
|
}
|
|
|
|
static void
|
|
Point_37 (void)
|
|
{
|
|
/*#37 */
|
|
if (IS_SIGNAL (_Sig, __Sig_sc_go_14_Timer_started_153)) {
|
|
_Pause[1] |= 0x8; /* PauseOn: #35 */
|
|
} else {
|
|
_Pause[1] |= 0x10; /* PauseOn: #36 */
|
|
}
|
|
}
|
|
|
|
static void
|
|
Point_38 (void)
|
|
{
|
|
/*#38 AutoPauseOn */
|
|
if (IS_SIGNAL (_Sig, __Sig_Conn_Request_Repeat_127)) {
|
|
EMIT (_Sig, __Sig_sc_go_24_ConnReq_sent_141);
|
|
_On[1] |= 0x400; /* On: #42 */
|
|
_On[1] &= ~0x40; /* Off: #38 */
|
|
} else {
|
|
if (IS_SIGNAL (_Sig, __Sig_Conn_Request_Stop_126)) {
|
|
_On[1] |= 0x400; /* On: #42 */
|
|
_On[1] &= ~0x40; /* Off: #38 */
|
|
} else {
|
|
if (IS_SIGNAL (_Sig, __Sig_Conn_Setup_End_136)) {
|
|
_On[1] |= 0x400; /* On: #42 */
|
|
_On[1] &= ~0x40; /* Off: #38 */
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
static void
|
|
Point_39 (void)
|
|
{
|
|
/*#39 */
|
|
if (IS_SIGNAL (_Sig, __Sig_Conn_Request_Stop_126)) {
|
|
EMIT (_Sig, __Out_O_NAS_CONN_ESTAB_RESP_109);
|
|
if (!(IS_GUARD (7)))
|
|
_integer (&Out_O_NAS_CONN_ESTAB_RESP_109, FAILURE);
|
|
else
|
|
_integer (&Out_O_NAS_CONN_ESTAB_RESP_109, INTEGER_COMBINE (Out_O_NAS_CONN_ESTAB_RESP_109, FAILURE));
|
|
SET_GUARD (7);
|
|
_On[1] |= 0x200; /* On: #41 */
|
|
} else {
|
|
_Pause[0] |= 0x40; /* PauseOn: #6 */
|
|
}
|
|
}
|
|
|
|
static void
|
|
Point_40 (void)
|
|
{
|
|
/*#40 AutoPauseOn */
|
|
if ((IS_SIGNAL (_Sig, __Sig_Conn_Setup_End_136) || IS_SIGNAL (_Sig, __Sig_Conn_Request_Stop_126))) {
|
|
_On[1] &= ~0x100; /* Off: #40 */
|
|
_Pause[0] |= 0x20000000; /* PauseOn: #29 */
|
|
_Pause[0] &= ~0x80e0;
|
|
_On[0] &= ~0x80a0; /* PauseOff: #5 #6 #7 #15 */
|
|
}
|
|
}
|
|
|
|
static void
|
|
Point_41 (void)
|
|
{
|
|
/*#41 */
|
|
RRC_UE_O_O_NAS_CONN_ESTAB_RESP (Out_O_NAS_CONN_ESTAB_RESP_109);
|
|
}
|
|
|
|
static void
|
|
Point_42 (void)
|
|
{
|
|
/*#42 */
|
|
if (IS_SIGNAL (_Sig, __Sig_sc_go_24_ConnReq_sent_141)) {
|
|
EMIT (_Sig, __Out_O_SEND_CCCH_106);
|
|
if (!(IS_GUARD (10)))
|
|
_integer (&Out_O_SEND_CCCH_106, Var_msg_142);
|
|
else
|
|
_integer (&Out_O_SEND_CCCH_106, INTEGER_COMBINE (Out_O_SEND_CCCH_106, Var_msg_142));
|
|
SET_GUARD (10);
|
|
EMIT (_Sig, __Out_O_startT300_112);
|
|
if (!(IS_GUARD (4))) {
|
|
RRC_UE_O_O_startT300 ();
|
|
SET_GUARD (4);
|
|
}
|
|
RRC_UE_O_O_SEND_CCCH (Out_O_SEND_CCCH_106);
|
|
_Pause[1] |= 0x40; /* PauseOn: #38 */
|
|
} else {
|
|
_Pause[0] |= 0x10; /* PauseOn: #4 */
|
|
}
|
|
}
|
|
|
|
|
|
int
|
|
RRC_UE (void)
|
|
{
|
|
unsigned int *Points;
|
|
|
|
Points = _On;
|
|
if (*Points) {
|
|
if (*Points & 0x1) {
|
|
Point_0 ();
|
|
}
|
|
if (*Points & 0x2) {
|
|
Point_1 ();
|
|
}
|
|
if (*Points & 0x4) {
|
|
Point_2 ();
|
|
}
|
|
if (*Points & 0x8) {
|
|
Point_3 ();
|
|
}
|
|
if (*Points & 0x10) {
|
|
Point_4 ();
|
|
}
|
|
if (*Points & 0x20) {
|
|
Point_5 ();
|
|
}
|
|
if (*Points & 0x40) {
|
|
Point_6 ();
|
|
}
|
|
if (*Points & 0x80) {
|
|
Point_7 ();
|
|
}
|
|
if (*Points & 0x100) {
|
|
Point_8 ();
|
|
}
|
|
if (*Points & 0x200) {
|
|
Point_9 ();
|
|
}
|
|
if (*Points & 0x400) {
|
|
Point_10 ();
|
|
}
|
|
if (*Points & 0x800) {
|
|
Point_11 ();
|
|
}
|
|
if (*Points & 0x1000) {
|
|
Point_12 ();
|
|
}
|
|
if (*Points & 0x2000) {
|
|
Point_13 ();
|
|
}
|
|
if (*Points & 0x4000) {
|
|
Point_14 ();
|
|
}
|
|
if (*Points & 0x8000) {
|
|
Point_15 ();
|
|
}
|
|
if (*Points & 0x10000) {
|
|
Point_16 ();
|
|
}
|
|
if (*Points & 0x20000) {
|
|
Point_17 ();
|
|
}
|
|
if (*Points & 0x40000) {
|
|
Point_18 ();
|
|
}
|
|
if (*Points & 0x80000) {
|
|
Point_19 ();
|
|
}
|
|
if (*Points & 0x100000) {
|
|
Point_20 ();
|
|
}
|
|
if (*Points & 0x200000) {
|
|
Point_21 ();
|
|
}
|
|
if (*Points & 0x400000) {
|
|
Point_22 ();
|
|
}
|
|
if (*Points & 0x800000) {
|
|
Point_23 ();
|
|
}
|
|
if (*Points & 0x1000000) {
|
|
Point_24 ();
|
|
}
|
|
if (*Points & 0x2000000) {
|
|
Point_25 ();
|
|
}
|
|
if (*Points & 0x4000000) {
|
|
Point_26 ();
|
|
}
|
|
if (*Points & 0x8000000) {
|
|
Point_27 ();
|
|
}
|
|
if (*Points & 0x10000000) {
|
|
Point_28 ();
|
|
}
|
|
if (*Points & 0x20000000) {
|
|
Point_29 ();
|
|
}
|
|
if (*Points & 0x40000000) {
|
|
Point_30 ();
|
|
}
|
|
if (*Points & 0x80000000) {
|
|
Point_31 ();
|
|
}
|
|
}
|
|
Points++;
|
|
if (*Points) {
|
|
if (*Points & 0x1) {
|
|
Point_32 ();
|
|
}
|
|
if (*Points & 0x2) {
|
|
Point_33 ();
|
|
}
|
|
if (*Points & 0x4) {
|
|
Point_34 ();
|
|
}
|
|
if (*Points & 0x8) {
|
|
Point_35 ();
|
|
}
|
|
if (*Points & 0x10) {
|
|
Point_36 ();
|
|
}
|
|
if (*Points & 0x20) {
|
|
Point_37 ();
|
|
}
|
|
if (*Points & 0x40) {
|
|
Point_38 ();
|
|
}
|
|
if (*Points & 0x80) {
|
|
Point_39 ();
|
|
}
|
|
if (*Points & 0x100) {
|
|
Point_40 ();
|
|
}
|
|
if (*Points & 0x200) {
|
|
Point_41 ();
|
|
}
|
|
if (*Points & 0x400) {
|
|
Point_42 ();
|
|
}
|
|
}
|
|
Points++;
|
|
{
|
|
int j;
|
|
unsigned int *_tmp;
|
|
|
|
_tmp = _SigPre_1;
|
|
_SigPre_1 = _SigPre_0;
|
|
_SigPre_0 = _tmp;
|
|
for (j = 0; j < SIGNAL_WITH_PRE_VECTOR_SIZE; j++)
|
|
_SigPre_0[j] = 0;
|
|
for (j = 0; j < SIGNAL_VECTOR_SIZE; j++)
|
|
_Sig[j] = 0;
|
|
Sig_V308_135_Pre1 = Sig_V308_135_Pre0;
|
|
Sig_V300_132_Pre1 = Sig_V300_132_Pre0;
|
|
_On[0] = _Pause[0] | (_On[0] & 0x3facbfbe);
|
|
_On[1] = _Pause[1] | (_On[1] & 0x15a);
|
|
/* AutoPauseOn: #1 #2 #3 #4 #5 #7 #8 #9 #10 #11 #12 #13 #15 #18 #19 #21 #23 #24 #25 #26 #27 #28 #29 #33 #35 #36 #38 #40 */
|
|
for (j = 0; j < HALT_POINT_VECTOR_SIZE; j++)
|
|
_Pause[j] = 0;
|
|
for (j = 0; j < GUARD_VECTOR_SIZE; j++)
|
|
_Guard[j] = 0;
|
|
}
|
|
return Var__ThisIsTheEnd__157;
|
|
}
|
|
|
|
int
|
|
RRC_UE_reset (void)
|
|
{
|
|
int i, j;
|
|
|
|
for (j = 0; j < SIGNAL_VECTOR_SIZE; j++)
|
|
_Sig[j] = 0;
|
|
for (i = 0; i < GLOBALMAXPRELEVEL; i++)
|
|
for (j = 0; j < SIGNAL_WITH_PRE_VECTOR_SIZE; j++)
|
|
_SigPreTab[i][j] = 0;
|
|
_integer (&In_UE_ID_INIT_83, 33);
|
|
for (i = 0; i < HALT_POINT_VECTOR_SIZE; i++)
|
|
_On[i] = 0;
|
|
for (i = 0; i < HALT_POINT_VECTOR_SIZE; i++)
|
|
_Pause[i] = 0;
|
|
for (i = 0; i < GUARD_VECTOR_SIZE; i++)
|
|
_Guard[i] = 0;
|
|
BIT_SET (_On, 0);
|
|
return 1;
|
|
}
|
|
|
|
typedef int (*SimInitFunc_t) ();
|
|
int
|
|
RRC_UE_init (char **pError, SimInitFunc_t pFunc)
|
|
{
|
|
return 1;
|
|
}
|
|
typedef int (*SimEndFunc_t) ();
|
|
int
|
|
RRC_UE_end (SimEndFunc_t pFunc)
|
|
{
|
|
return 1;
|
|
}
|
|
|
|
int
|
|
RRC_UE_run (void)
|
|
{
|
|
return RRC_UE ();
|
|
}
|
|
|
|
int
|
|
RRC_UE_getError (void)
|
|
{
|
|
return 0;
|
|
}
|
|
|
|
char *
|
|
RRC_UE_getErrorMessage (void)
|
|
{
|
|
return (char *) 0;
|
|
}
|