FreeCalypso > hg > fc-magnetite
annotate src/g23m-aci/uart/uart_rtp.c @ 239:e0b9c21d7908
AT@TONE and AT@TSTOP audio test commands implemented
| author | Mychaela Falconia <falcon@freecalypso.org> | 
|---|---|
| date | Wed, 22 Mar 2017 04:51:29 +0000 | 
| parents | 53929b40109c | 
| children | 
| rev | line source | 
|---|---|
| 
162
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
1 /* | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
2 +----------------------------------------------------------------------------- | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
3 | Project : | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
4 | Modul : | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
5 +----------------------------------------------------------------------------- | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
6 | Copyright 2002 Texas Instruments Berlin, AG | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
7 | All rights reserved. | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
8 | | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
9 | This file is confidential and a trade secret of Texas | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
10 | Instruments Berlin, AG | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
11 | The receipt of or possession of this file does not convey | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
12 | any rights to reproduce or disclose its contents or to | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
13 | manufacture, use, or sell anything it may describe, in | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
14 | whole, or in part, without the specific written consent of | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
15 | Texas Instruments Berlin, AG. | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
16 +----------------------------------------------------------------------------- | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
17 | Purpose : This modul is part of the entity UART and implements all | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
18 | functions to handle the incoming primitives as described in | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
19 | the SDL-documentation (RT-statemachine) | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
20 +----------------------------------------------------------------------------- | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
21 */ | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
22 | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
23 #ifndef UART_RTP_C | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
24 #define UART_RTP_C | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
25 #endif /* !UART_RTP_C */ | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
26 | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
27 #define ENTITY_UART | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
28 | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
29 /*==== INCLUDES =============================================================*/ | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
30 | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
31 #ifdef _SIMULATION_ | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
32 #include <stdio.h> | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
33 #endif | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
34 | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
35 #ifdef WIN32 | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
36 #include "nucleus.h" | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
37 #endif /* WIN32 */ | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
38 #include "typedefs.h" /* to get Condat data types */ | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
39 #include "vsi.h" /* to get a lot of macros */ | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
40 #include "macdef.h" /* to get a lot of macros */ | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
41 #include "custom.h" | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
42 #include "gsm.h" /* to get a lot of macros */ | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
43 #include "cnf_uart.h" /* to get cnf-definitions */ | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
44 #include "mon_uart.h" /* to get mon-definitions */ | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
45 #include "prim.h" /* to get the definitions of used SAP and directions */ | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
46 #ifdef DTILIB | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
47 #include "dti.h" /* to get dti lib */ | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
48 #endif /* DTILIB */ | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
49 #include "pei.h" /* to get PEI interface */ | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
50 #ifdef FF_MULTI_PORT | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
51 #include "gsi.h" /* to get definitions of serial driver */ | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
52 #else /* FF_MULTI_PORT */ | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
53 #ifdef _TARGET_ | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
54 #include "uart/serialswitch.h" | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
55 #include "uart/traceswitch.h" | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
56 #else /* _TARGET_ */ | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
57 #include "serial_dat.h" /* to get definitions of serial driver */ | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
58 #endif /* _TARGET_ */ | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
59 #endif /* FF_MULTI_PORT */ | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
60 #include "uart.h" /* to get the global entity definitions */ | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
61 | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
62 #include "uart_kers.h" /* to get KER signal definitions */ | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
63 | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
64 /*==== CONST ================================================================*/ | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
65 | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
66 /*==== LOCAL VARS ===========================================================*/ | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
67 | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
68 /*==== PRIVATE FUNCTIONS ====================================================*/ | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
69 | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
70 /*==== PUBLIC FUNCTIONS =====================================================*/ | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
71 | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
72 | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
73 | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
74 /* | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
75 +------------------------------------------------------------------------------ | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
76 | Function : rt_t1_expired | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
77 +------------------------------------------------------------------------------ | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
78 | Description : Handles the expitration of the acknowledge timer t1. | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
79 | | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
80 | Parameters : no parameters | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
81 | | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
82 +------------------------------------------------------------------------------ | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
83 */ | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
84 GLOBAL void rt_t1_expired () | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
85 { | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
86 TRACE_FUNCTION( "rt_t1_expired" ); | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
87 | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
88 switch( uart_data->rt.state_t1 ) | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
89 { | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
90 case UART_RT_STARTED: | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
91 uart_data->rt.state_t1 = UART_RT_STOPPED; | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
92 sig_rt_ker_timeout_t1_ind(); | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
93 break; | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
94 default: | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
95 TRACE_ERROR( "RT_T1_EXPIRED unexpected" ); | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
96 break; | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
97 } | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
98 } /* rt_t1_expired() */ | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
99 | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
100 | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
101 | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
102 /* | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
103 +------------------------------------------------------------------------------ | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
104 | Function : rt_t2_expired | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
105 +------------------------------------------------------------------------------ | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
106 | Description : Handles the expitration of the response timer t2. | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
107 | | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
108 | Parameters : no parameters | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
109 | | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
110 +------------------------------------------------------------------------------ | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
111 */ | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
112 GLOBAL void rt_t2_expired () | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
113 { | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
114 TRACE_FUNCTION( "rt_t2_expired" ); | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
115 | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
116 switch( uart_data->rt.state_t2 ) | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
117 { | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
118 case UART_RT_STARTED: | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
119 uart_data->rt.state_t2 = UART_RT_STOPPED; | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
120 sig_rt_ker_timeout_t2_ind(); | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
121 break; | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
122 default: | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
123 TRACE_ERROR( "RT_T2_EXPIRED unexpected" ); | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
124 break; | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
125 } | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
126 } /* rt_t2_expired() */ | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
127 | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
128 | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
129 | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
130 /* | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
131 +------------------------------------------------------------------------------ | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
132 | Function : rt_t3_expired | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
133 +------------------------------------------------------------------------------ | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
134 | Description : Handles the expiration of the wake-up timer t3. | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
135 | | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
136 | Parameters : no parameters | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
137 | | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
138 +------------------------------------------------------------------------------ | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
139 */ | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
140 GLOBAL void rt_t3_expired () | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
141 { | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
142 TRACE_FUNCTION( "rt_t3_expired" ); | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
143 | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
144 switch( uart_data->rt.state_t3 ) | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
145 { | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
146 case UART_RT_STARTED: | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
147 uart_data->rt.state_t3 = UART_RT_STOPPED; | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
148 sig_rt_ker_timeout_t3_ind(); | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
149 break; | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
150 default: | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
151 TRACE_ERROR( "RT_T3_EXPIRED unexpected" ); | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
152 break; | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
153 } | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
154 } /* rt_t3_expired() */ | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
155 | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
156 | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
157 /* | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
158 +------------------------------------------------------------------------------ | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
159 | Function : rt_tesd_expired | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
160 +------------------------------------------------------------------------------ | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
161 | Description : Handles the expiration of the timer tesd. | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
162 | | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
163 | Parameters : no parameters | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
164 | | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
165 +------------------------------------------------------------------------------ | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
166 */ | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
167 GLOBAL void rt_tesd_expired () | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
168 { | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
169 TRACE_FUNCTION( "rt_tesd_expired" ); | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
170 | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
171 switch( uart_data->rt.state_tesd ) | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
172 { | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
173 case UART_RT_STARTED: | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
174 /* uart_data->rt.state_tesd = UART_RT_STOPPED; state_tesd is not reset here | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
175 * Every DLC that needs TESD will call "sig_dtx_rt_start_tesd_req" but only to | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
176 * indicate its TESD-startvalue. The timer is started hereafter with the lowest | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
177 * startvalue. | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
178 */ | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
179 uart_data->rt.tesd = (T_TIME)-1; | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
180 sig_rt_ker_timeout_tesd_ind(); | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
181 if( uart_data->rt.tesd != ((T_TIME)-1) ) | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
182 { /* | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
183 * timer needs to be restarted | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
184 */ | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
185 #ifdef _SIMULATION_ | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
186 char buf[80]; | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
187 sprintf(buf, "ESD: Restart timer TESD: %d", uart_data->rt.tesd); | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
188 TRACE_EVENT(buf); | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
189 #endif /* _SIMULATION_ */ | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
190 if (TIMER_START(UART_handle, uart_data->timer_tesd_index, uart_data->rt.tesd) NEQ VSI_OK) | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
191 { | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
192 TRACE_EVENT_P1("VSI entity: Can't start timer, uart_rtp(%d)", | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
193 __LINE__); | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
194 } | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
195 uart_data->rt.state_tesd = UART_RT_STARTED; | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
196 } | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
197 else | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
198 { | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
199 #ifdef _SIMULATION_ | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
200 TRACE_EVENT("Nobody restarted the timer"); | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
201 #endif /* _SIMULATION_ */ | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
202 uart_data->rt.state_tesd = UART_RT_STOPPED; | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
203 } | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
204 break; | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
205 default: | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
206 TRACE_ERROR( "RT_TESD_EXPIRED unexpected" ); | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
207 break; | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
208 } | 
| 
 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
209 } /* rt_tesd_expired() */ | 
