FreeCalypso > hg > fc-magnetite
annotate src/gpf2/tst/drv/titrc.c @ 597:f18b29e27be5
First attempt at MCSI voice path automatic switching
The function is implemented at the ACI level in both aci2 and aci3,
successfully avoids triggering the DSP bug on the first call,
but the shutdown of MCSI upon call completion is not working properly yet
in either version.
author | Mychaela Falconia <falcon@freecalypso.org> |
---|---|
date | Wed, 27 Mar 2019 22:18:35 +0000 |
parents | cd37d228dae0 |
children |
rev | line source |
---|---|
294
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
1 /* |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
2 +------------------------------------------------------------------------------ |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
3 | File: titrc.c |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
4 +------------------------------------------------------------------------------ |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
5 | Copyright 2004 Texas Instruments Deutschland, AG |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
6 | All rights reserved. |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
7 | |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
8 | This file is confidential and a trade secret of Texas |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
9 | Instruments Berlin, AG |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
10 | The receipt of or possession of this file does not convey |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
11 | any rights to reproduce or disclose its contents or to |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
12 | manufacture, use, or sell anything it may describe, in |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
13 | whole, or in part, without the specific written consent of |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
14 | Texas Instruments Deutschland, AG. |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
15 +----------------------------------------------------------------------------- |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
16 | Purpose : This Module defines the functionality of the TITRC driver |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
17 | to communicate with the TI trace task. |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
18 +----------------------------------------------------------------------------- |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
19 */ |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
20 |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
21 |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
22 #ifndef __TITRC_C__ |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
23 #define __TITRC_C__ |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
24 #endif |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
25 |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
26 #include "typedefs.h" |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
27 #include "string.h" |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
28 #include "tstheader.h" |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
29 #include "rvt_gen.h" |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
30 #include "gdi.h" |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
31 #include "serialswitch.h" |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
32 |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
33 /*==== TYPES ======================================================*/ |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
34 |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
35 typedef struct |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
36 { |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
37 USHORT Handle; |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
38 USHORT EnabledSignalType; |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
39 T_DRV_CB_FUNC Callback; |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
40 T_RVT_USER_ID trc_id; |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
41 unsigned char connected; |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
42 T_RVT_BUFFER read_ptr; |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
43 unsigned int read_len; |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
44 } T_TITRC_DATA; |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
45 |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
46 /*==== CONSTANTS ==================================================*/ |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
47 |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
48 #define ALLOWED_TITRC_SIGNALS (DRV_SIGTYPE_READ|DRV_SIGTYPE_CONNECT) |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
49 |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
50 |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
51 /*==== EXTERNALS ==================================================*/ |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
52 |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
53 extern USHORT emergeny_trace; |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
54 |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
55 /*==== VARIABLES ==================================================*/ |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
56 |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
57 #ifndef RUN_INT_RAM |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
58 T_TITRC_DATA TITRC_Data; |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
59 T_DRV_SIGNAL Signal; |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
60 #else |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
61 extern T_TITRC_DATA TITRC_Data; |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
62 #endif |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
63 |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
64 #ifndef RUN_FLASH |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
65 char header_buffer[TST_BIG_HEADER_SIZE]; |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
66 #endif |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
67 |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
68 /*==== FUNCTIONS ==================================================*/ |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
69 |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
70 #ifndef RUN_INT_RAM |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
71 extern USHORT TITRC_Write ( void *Buffer, ULONG *BytesToWrite ) ; |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
72 #endif |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
73 |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
74 #ifndef RUN_INT_RAM |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
75 /* |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
76 +--------------------------------------------------------------------+ |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
77 | PROJECT : GSM-Frame (8415) MODULE : TITRC | |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
78 | STATE : code ROUTINE : TITRC_Read | |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
79 +--------------------------------------------------------------------+ |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
80 |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
81 PURPOSE : read data from driver |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
82 |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
83 */ |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
84 USHORT TITRC_Read ( void *Buffer, ULONG *BytesToRead ) |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
85 { |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
86 |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
87 if ( TITRC_Data.read_ptr ) |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
88 { |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
89 if ( *BytesToRead != 0 ) |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
90 { |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
91 if ( *BytesToRead > TITRC_Data.read_len ) |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
92 *BytesToRead = TITRC_Data.read_len; |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
93 |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
94 memcpy ( Buffer, TITRC_Data.read_ptr, *BytesToRead ); |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
95 |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
96 if ( *BytesToRead < TITRC_Data.read_len ) |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
97 { |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
98 TITRC_Data.read_ptr += *BytesToRead; |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
99 TITRC_Data.read_len -= *BytesToRead; |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
100 } |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
101 else |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
102 TITRC_Data.read_ptr = NULL; |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
103 } |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
104 else |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
105 { |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
106 *BytesToRead = TITRC_Data.read_len; |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
107 } |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
108 } |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
109 else |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
110 { |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
111 *BytesToRead = 0; |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
112 } |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
113 |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
114 return DRV_OK; |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
115 } |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
116 #endif |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
117 |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
118 #ifndef RUN_FLASH |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
119 /* |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
120 +--------------------------------------------------------------------+ |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
121 | PROJECT : GSM-Frame (8415) MODULE : TITRC | |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
122 | STATE : code ROUTINE : TITRC_Write | |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
123 +--------------------------------------------------------------------+ |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
124 |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
125 PURPOSE : write data to driver |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
126 |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
127 */ |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
128 USHORT TITRC_Write ( void *Buffer, ULONG *BytesToWrite ) |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
129 { |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
130 T_RVT_FORMAT msg_format; |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
131 char *ptr = (char*)Buffer; |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
132 ULONG BytesWritten; |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
133 ULONG ToWrite; |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
134 T_RVT_BUFFER rvt_buffer; |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
135 |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
136 msg_format = RVT_BINARY_FORMAT; |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
137 |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
138 if ( emergeny_trace ) |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
139 { |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
140 ptr--; |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
141 *ptr = 0x13; |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
142 ToWrite = (ULONG)*BytesToWrite; |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
143 ToWrite += 1; |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
144 BytesWritten = (ULONG)SER_tr_WriteNBytes (1, (SYS_UWORD8*)ptr, (SYS_UWORD32)ToWrite); |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
145 *BytesToWrite = BytesWritten; |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
146 } |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
147 else |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
148 { |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
149 if ( *BytesToWrite & PRIM_HEADER_FLAG ) |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
150 { |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
151 memcpy ( header_buffer, (char*)Buffer, TST_BIG_HEADER_SIZE ); |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
152 return DRV_OK; |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
153 } |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
154 if ( *BytesToWrite & PRIM_DATA_FLAG ) |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
155 { |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
156 ToWrite = *BytesToWrite & ~PRIM_DATA_FLAG; |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
157 if ( rvt_mem_alloc(TITRC_Data.trc_id, ToWrite+TST_BIG_HEADER_SIZE, &rvt_buffer) != RVT_OK ) |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
158 return DRV_BUFFER_FULL; |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
159 if ( rvt_buffer != NULL ) |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
160 { |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
161 memcpy ( (char*)rvt_buffer, header_buffer, TST_BIG_HEADER_SIZE ); |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
162 memcpy ( (char*)rvt_buffer+TST_BIG_HEADER_SIZE, (char*)Buffer, ToWrite ); |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
163 if ( rvt_send_trace_no_cpy ( rvt_buffer, TITRC_Data.trc_id, (T_RVT_MSG_LG)ToWrite+TST_BIG_HEADER_SIZE, msg_format ) != RVT_OK ) |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
164 return DRV_BUFFER_FULL; |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
165 else |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
166 return DRV_OK; |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
167 } |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
168 } |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
169 if ( rvt_send_trace_cpy ( (T_RVT_BUFFER)Buffer, TITRC_Data.trc_id, (T_RVT_MSG_LG)*BytesToWrite, msg_format ) != RVT_OK ) |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
170 return DRV_BUFFER_FULL; |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
171 } |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
172 return DRV_OK; |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
173 } |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
174 #endif |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
175 |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
176 #ifndef RUN_INT_RAM |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
177 /* |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
178 +--------------------------------------------------------------------+ |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
179 | PROJECT : GSM-Frame (8415) MODULE : TITRC | |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
180 | STATE : code ROUTINE : TITRC_SetSignal | |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
181 +--------------------------------------------------------------------+ |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
182 |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
183 PURPOSE : enable signal for the driver |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
184 |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
185 */ |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
186 USHORT TITRC_SetSignal ( USHORT SignalType ) |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
187 { |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
188 if ( !(SignalType & ALLOWED_TITRC_SIGNALS) ) |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
189 return DRV_INVALID_PARAMS; |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
190 else |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
191 TITRC_Data.EnabledSignalType |= SignalType; |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
192 |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
193 return DRV_OK; |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
194 } |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
195 #endif |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
196 |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
197 #ifndef RUN_INT_RAM |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
198 /* |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
199 +--------------------------------------------------------------------+ |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
200 | PROJECT : GSM-Frame (8415) MODULE : TITRC | |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
201 | STATE : code ROUTINE : TITRC_ResetSignal | |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
202 +--------------------------------------------------------------------+ |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
203 |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
204 PURPOSE : disable signal for the driver |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
205 |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
206 */ |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
207 USHORT TITRC_ResetSignal ( USHORT SignalType ) |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
208 { |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
209 if ( !(SignalType & ALLOWED_TITRC_SIGNALS) ) |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
210 return DRV_INVALID_PARAMS; |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
211 else |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
212 TITRC_Data.EnabledSignalType &= ~SignalType; |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
213 |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
214 return DRV_OK; |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
215 } |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
216 #endif |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
217 |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
218 #ifndef RUN_INT_RAM |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
219 /* |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
220 +--------------------------------------------------------------------+ |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
221 | PROJECT : GSM-Frame (8415) MODULE : TITRC | |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
222 | STATE : code ROUTINE : TITRC_SetConfig | |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
223 +--------------------------------------------------------------------+ |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
224 |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
225 PURPOSE : set configuration for the driver |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
226 |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
227 */ |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
228 USHORT TITRC_SetConfig ( char *Buffer ) |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
229 { |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
230 |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
231 if ( TITRC_Data.connected == FALSE ) |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
232 { |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
233 Signal.SignalType = DRV_SIGTYPE_CONNECT; |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
234 Signal.DrvHandle = TITRC_Data.Handle; |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
235 (TITRC_Data.Callback)( &Signal ); |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
236 TITRC_Data.connected = TRUE; |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
237 } |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
238 return DRV_OK; |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
239 } |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
240 #endif |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
241 |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
242 #ifndef RUN_INT_RAM |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
243 /* |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
244 +--------------------------------------------------------------------+ |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
245 | PROJECT : GSM-Frame (8415) MODULE : TITRC | |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
246 | STATE : code ROUTINE : TITRC_Callback | |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
247 +--------------------------------------------------------------------+ |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
248 |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
249 PURPOSE : callback function of the driver |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
250 |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
251 */ |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
252 int callback_busy = 0; |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
253 void TITRC_Callback ( T_RVT_BUFFER ptr, UINT16 len ) |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
254 { |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
255 if ( callback_busy == 1 ) |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
256 for (;;) |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
257 ; |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
258 |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
259 callback_busy = 1; |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
260 if ( TITRC_Data.EnabledSignalType & DRV_SIGTYPE_READ ) |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
261 { |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
262 TITRC_Data.read_ptr = ptr; |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
263 TITRC_Data.read_len = len; |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
264 Signal.SignalType = DRV_SIGTYPE_READ; |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
265 Signal.DrvHandle = TITRC_Data.Handle; |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
266 (TITRC_Data.Callback)( &Signal ); |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
267 } |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
268 callback_busy = 0; |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
269 } |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
270 #endif |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
271 |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
272 #ifndef RUN_INT_RAM |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
273 /* |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
274 +--------------------------------------------------------------------+ |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
275 | PROJECT : GSM-Frame (8415) MODULE : TITRC | |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
276 | STATE : code ROUTINE : TITRC_Init | |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
277 +--------------------------------------------------------------------+ |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
278 |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
279 PURPOSE : initialize driver |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
280 |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
281 */ |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
282 USHORT TITRC_Init ( USHORT DrvHandle, T_DRV_CB_FUNC CallbackFunc, T_DRV_EXPORT const **DrvInfo ) |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
283 { |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
284 static const T_DRV_EXPORT TITRC_Info = |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
285 { |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
286 "TITRC", |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
287 0, |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
288 { |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
289 #ifdef _TOOLS_ |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
290 TITRC_Init, |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
291 #endif |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
292 NULL, |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
293 TITRC_Read, |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
294 TITRC_Write, |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
295 NULL, |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
296 NULL, |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
297 NULL, |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
298 TITRC_SetSignal, |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
299 TITRC_ResetSignal, |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
300 TITRC_SetConfig, |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
301 NULL, |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
302 NULL, |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
303 } |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
304 }; |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
305 |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
306 TITRC_Data.connected = FALSE; |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
307 |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
308 TITRC_Data.Handle = DrvHandle; |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
309 |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
310 TITRC_Data.EnabledSignalType = 0; |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
311 |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
312 TITRC_Data.Callback = CallbackFunc; |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
313 |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
314 if ( rvt_register_id ( (char*)"L23",&TITRC_Data.trc_id, TITRC_Callback ) == RVT_INVALID_PARAMETER ) |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
315 return DRV_INITFAILURE; |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
316 |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
317 *DrvInfo = &TITRC_Info; |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
318 |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
319 return DRV_OK; |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
320 } |
cd37d228dae0
src/gpf2/{misc,tst}: import from TCS211 semi-src
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
321 #endif |