comparison gpf/frame/vsi_mis.c @ 0:75a11d740a02

initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
author Mychaela Falconia <falcon@freecalypso.org>
date Thu, 09 Jun 2016 00:02:41 +0000
parents
children
comparison
equal deleted inserted replaced
-1:000000000000 0:75a11d740a02
1 /*
2 +------------------------------------------------------------------------------
3 | File: vsi_mis.c
4 +------------------------------------------------------------------------------
5 | Copyright 2002 Texas Instruments Berlin, AG
6 | All rights reserved.
7 |
8 | This file is confidential and a trade secret of Texas
9 | Instruments Berlin, AG
10 | The receipt of or possession of this file does not convey
11 | any rights to reproduce or disclose its contents or to
12 | manufacture, use, or sell anything it may describe, in
13 | whole, or in part, without the specific written consent of
14 | Texas Instruments Berlin, AG.
15 +-----------------------------------------------------------------------------
16 | Purpose : This Module defines the virtual system interface part
17 | for miscellaneous things.
18 +-----------------------------------------------------------------------------
19 */
20
21 #ifndef __VSI_MIS_C__
22 #define __VSI_MIS_C__
23 #endif
24
25 /*==== INCLUDES ===================================================*/
26
27 #include <string.h>
28
29 #include "gpfconf.h"
30 #include "typedefs.h"
31
32 #include "vsi.h"
33 #include "os.h"
34 #include "frm_defs.h"
35 #include "frm_types.h"
36 #include "frm_glob.h"
37
38 /*==== TYPES ======================================================*/
39
40
41 /*==== CONSTANTS ==================================================*/
42
43
44 /*==== EXTERNALS ==================================================*/
45
46 /* -------------- S H A R E D - BEGIN ---------------- */
47 #ifdef _TOOLS_
48 #pragma data_seg("FRAME_SHARED")
49 #endif
50
51
52 /*==== VARIABLES ==================================================*/
53
54 #ifdef _TOOLS_
55 #pragma data_seg()
56 #endif
57 /* -------------- S H A R E D - END ---------------- */
58
59 /*==== FUNCTIONS ==================================================*/
60
61
62 #ifndef RUN_INT_RAM
63 /*
64 +--------------------------------------------------------------------+
65 | PROJECT : GSM-Frame (8415) MODULE : VSI_MIS |
66 | STATE : code ROUTINE : vsi_gettaskname |
67 +--------------------------------------------------------------------+
68
69 PURPOSE : reads the name of a task
70
71 */
72
73 int vsi_gettaskname (T_HANDLE Caller, T_HANDLE Handle, char *Name)
74 {
75
76 if ( os_GetTaskName ( Caller, Handle, Name ) != OS_ERROR )
77 return VSI_OK;
78
79 return VSI_ERROR;
80 }
81 #endif
82
83 #ifndef RUN_INT_RAM
84 /*
85 +--------------------------------------------------------------------+
86 | PROJECT : GSM-Frame (8415) MODULE : VSI_MIS |
87 | STATE : code ROUTINE : vsi_gettaskhandle |
88 +--------------------------------------------------------------------+
89
90 PURPOSE : reads the name of a task
91
92 */
93
94 T_HANDLE vsi_gettaskhandle (T_HANDLE Caller, char *Name)
95 {
96 OS_HANDLE Handle;
97
98 if (os_GetTaskHandle( Caller, Name, &Handle ) != OS_ERROR )
99 {
100 return Handle;
101 }
102 return VSI_ERROR;
103 }
104 #endif
105
106 #ifndef RUN_INT_RAM
107 /*
108 +--------------------------------------------------------------------+
109 | PROJECT : GSM-Frame (8415) MODULE : VSI_MIS |
110 | STATE : code ROUTINE : vsi_gettaskflags |
111 +--------------------------------------------------------------------+
112
113 PURPOSE : reads the flags of a task
114
115 */
116
117 int vsi_gettaskflags (T_HANDLE Caller, T_HANDLE Handle, U32 *Flags)
118 {
119
120 *Flags = pf_TaskTable[Handle].Flags;
121 return VSI_OK;
122
123 }
124 #endif
125
126 #ifndef RUN_INT_RAM
127 /*
128 +--------------------------------------------------------------------+
129 | PROJECT : GSM-Frame (8415) MODULE : VSI_MIS |
130 | STATE : code ROUTINE : vsi_time |
131 +--------------------------------------------------------------------+
132
133 PURPOSE : get time
134
135 */
136
137 int vsi_t_time (T_HANDLE Caller, T_TIME *Value)
138 {
139
140 os_GetTime ( Caller, Value );
141 return VSI_OK;
142
143 }
144 #endif
145
146 #ifndef RUN_INT_RAM
147 /*
148 +--------------------------------------------------------------------+
149 | PROJECT : GSM-Frame (8415) MODULE : VSI_MIS |
150 | STATE : code ROUTINE : vsi_sleep |
151 +--------------------------------------------------------------------+
152
153 PURPOSE : suspend task
154
155 */
156
157 int vsi_t_sleep (T_HANDLE Caller, T_TIME Value)
158 {
159
160 os_SuspendTask ( Caller, Value );
161 return VSI_OK;
162
163 }
164 #endif
165
166 #ifndef RUN_INT_RAM
167 /*
168 +--------------------------------------------------------------------+
169 | PROJECT : GSM-Frame (8415) MODULE : VSI_MIS |
170 | STATE : code ROUTINE : vsi_object_info |
171 +--------------------------------------------------------------------+
172
173 PURPOSE : read information about created objects
174
175 */
176 int vsi_object_info (T_HANDLE Caller, USHORT Id, USHORT Index, char *Buffer, USHORT Size)
177 {
178 if ( os_ObjectInformation ( Caller, Id, Index, Size, Buffer ) == OS_OK )
179 {
180 if ( strlen (Buffer) > TTRACE_LEN )
181 vsi_o_assert ( NO_TASK, OS_SYST_ERR_STR_TOO_LONG, __FILE__, __LINE__,
182 "Traced string too long" );
183 return VSI_OK;
184 }
185 return VSI_ERROR;
186
187 }
188 #endif
189
190 #ifndef RUN_FLASH
191 /*
192 +--------------------------------------------------------------------+
193 | PROJECT : GSM-Frame (8415) MODULE : VSI_PRO |
194 | STATE : code ROUTINE : vsi_p_name |
195 +--------------------------------------------------------------------+
196
197 PURPOSE : reads the name of a task
198
199 */
200
201 int vsi_e_name (T_HANDLE Caller, T_HANDLE Handle, char *Name)
202 {
203 if ( Handle >= 0 && Handle <= MaxEntities && pf_TaskTable[Handle].Name[0] != 0 )
204 {
205 strcpy ( Name, pf_TaskTable[Handle].Name );
206 return VSI_OK;
207 }
208 return VSI_ERROR;
209 }
210 #endif
211
212 #ifndef RUN_FLASH
213 /*
214 +--------------------------------------------------------------------+
215 | PROJECT : GSM-Frame (8415) MODULE : VSI_PRO |
216 | STATE : code ROUTINE : vsi_p_handle |
217 +--------------------------------------------------------------------+
218
219 PURPOSE : reads the name of a task
220
221 */
222
223 T_HANDLE vsi_e_handle (T_HANDLE Caller, char *Name)
224 {
225 T_HANDLE e_handle;
226
227 if ( Name == NULL )
228 {
229 return e_running[os_MyHandle()];
230 }
231 else
232 {
233 for ( e_handle = MaxEntities; e_handle > 0; e_handle-- )
234 {
235 if ( pf_TaskTable[e_handle].Name[0] != 0 && !strncmp ( pf_TaskTable[e_handle].Name, Name, RESOURCE_NAMELEN-1 ) )
236 return e_handle;
237 }
238 }
239 return VSI_ERROR;
240 }
241 #endif
242