0
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
1 /*******************************************************************************
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
2 *
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
3 * File Name : atp_env.c
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
4 *
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
5 * Generic functions of ATP definition
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
6 *
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
7 * (C) Texas Instruments, all rights reserved
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
8 *
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
9 * Version number : 0.1 Date : 28-Feb-2000
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
10 *
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
11 * History : 0.1 - Created by E. Baissus
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
12 * : 0.9 (3-May-2000) : reviewed
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
13 *
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
14 * Author : Eric Baissus : e-baissus@ti.com
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
15 *
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
16 * (C) Copyright 2000 by Texas Instruments Incorporated, All Rights Reserved
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
17 ******************************************************************************/
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
18
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
19 //#include "rv_general.h"
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
20 #include "rvf/rvf_api.h"
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
21 #include "atp/atp_api.h"
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
22 #include "atp/atp_i.h"
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
23 #include "atp/atp_config.h"
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
24 #include "atp/atp_env.h"
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
25 #include "rvm/rvm_priorities.h"
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
26 #include "rvm/rvm_gen.h"
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
27 #include "rvm/rvm_use_id_list.h"
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
28
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
29 #include <string.h>
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
30
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
31
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
32 /* Memory bank dedicated to internal use of ATP entity (initiated in atp_init) */
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
33 T_RVF_MB_ID atp_mb_prim;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
34 T_RVM_RETURN (*atp_error_ft)(T_RVM_NAME swe_name, T_RVM_RETURN error_cause, \
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
35 T_RVM_ERROR_TYPE error_type,T_RVM_STRING error_msg);
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
36
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
37 T_ATP_SWE_STATE atp_swe_state = ATP_STOPPED;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
38
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
39
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
40 /******************************************************************************
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
41 * Function name: atp_get_info
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
42 *
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
43 * Description : Generic ATP get info function : provide general information
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
44 * regarding the ATP SWE to the Riviera Manager
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
45 * For more details, see Riviera Manager documentation
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
46 *
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
47 * Parameters : Pointer on the info structure
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
48 *
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
49 * Return : Always OK
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
50 *
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
51 * History : 0.1 (30-May-2000) - Created
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
52 *
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
53 ******************************************************************************/
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
54 T_RVM_RETURN atp_get_info (T_RVM_INFO_SWE * swe_info_p)
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
55 {
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
56 if (swe_info_p == NULL)
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
57 {
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
58 return RVM_INVALID_PARAMETER;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
59 }
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
60
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
61 /* Provide SWE USEID and type */
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
62 swe_info_p->swe_type = RVM_SWE_TYPE_1;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
63 swe_info_p->type_info.type1.swe_use_id = ATP_USE_ID;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
64 strcpy (swe_info_p->type_info.type1.swe_name,
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
65 "ATP");
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
66
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
67 /* Return Path of ATP */
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
68 swe_info_p->type_info.type1.return_path.callback_func = NULL;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
69 swe_info_p->type_info.type1.return_path.addr_id = 0;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
70
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
71
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
72 /* ATP MB */
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
73 swe_info_p->type_info.type1.nb_mem_bank = 1;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
74 memcpy (swe_info_p->type_info.type1.mem_bank[0].bank_name,
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
75 "ATP_PRIM",
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
76 sizeof("ATP_PRIM"));
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
77 swe_info_p->type_info.type1.mem_bank[0].initial_params.size = ATP_MB_PRIM_SIZE;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
78 swe_info_p->type_info.type1.mem_bank[0].initial_params.watermark = ATP_MB_PRIM_WATERMARK;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
79
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
80 /* ATP generic RVM functions */
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
81 swe_info_p->type_info.type1.init = &atp_init;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
82 swe_info_p->type_info.type1.start = &atp_start;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
83 swe_info_p->type_info.type1.stop = &atp_stop;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
84 swe_info_p->type_info.type1.kill = &atp_kill;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
85 swe_info_p->type_info.type1.set_info = &atp_set_info;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
86
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
87 /* Linked SW entities : ATP does not need any other entity to run
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
88 Actually, other SWE will register to ATP before using its services */
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
89 swe_info_p->type_info.type1.nb_linked_swe = 0;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
90
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
91 return RVM_OK;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
92 }
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
93
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
94
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
95
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
96 /******************************************************************************
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
97 * Function name: atp_set_info
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
98 *
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
99 * Description : Generic ATP set info function : environment use it to set a
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
100 * a certain number of information for ATP
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
101 * For more details, see Riviera Manager documentation
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
102 *
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
103 * Parameters :
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
104 *
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
105 * Return : Always OK
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
106 *
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
107 * History : 0.1 (30-May-2000) - Created
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
108 *
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
109 ******************************************************************************/
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
110 T_RVM_RETURN
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
111 atp_set_info(T_RVF_ADDR_ID addr_id,
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
112 T_RV_RETURN return_path[],
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
113 T_RVF_MB_ID mb_id[],
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
114 T_RVM_RETURN (*rvm_error_ft) ( T_RVM_NAME swe_name,
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
115 T_RVM_RETURN error_cause,
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
116 T_RVM_ERROR_TYPE error_type,
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
117 T_RVM_STRING error_msg) )
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
118 {
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
119
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
120 /* Save the parameters given by environment */
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
121
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
122 /* Bank Ids */
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
123 atp_mb_prim = mb_id [0];
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
124
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
125 /* Error function */
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
126 atp_error_ft = rvm_error_ft;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
127
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
128 return RVM_OK;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
129 }
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
130
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
131
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
132
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
133
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
134
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
135
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
136 /******************************************************************************
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
137 * Function name: atp_init
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
138 *
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
139 * Description : This function is used to initialise the ATP entity
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
140 *
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
141 * Parameters : none
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
142 *
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
143 * Return : Standard error
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
144 * RV_OK
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
145 *
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
146 * History : 0.1 (29-Feb-2000)
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
147 * : 0.9 (3-May-2000) : reviewed
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
148 * : 1.0 (30-May-2000) updated to support RVM
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
149 ******************************************************************************/
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
150 T_RVM_RETURN atp_init(void)
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
151 {
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
152 UINT8 i;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
153
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
154
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
155 // Initialise global variables used by ATP
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
156 atp_nb_sw_entity=0; // Number of SW entity which has been registered into ATP excluding GSM
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
157 atp_first_port_p = NULL; // No port instance has been created yet
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
158
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
159 // Initialise SW entity list table
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
160 for(i=1;i<(ATP_MAX_NB_SW_ENTITY+1);i++)
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
161 {
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
162 atp_sw_entity_table_p[i]=NULL;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
163 }
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
164
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
165 atp_swe_state=ATP_STARTED ;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
166
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
167 rvf_send_trace("ATP : Initialisation performed ",31,NULL_PARAM,RV_TRACE_LEVEL_DEBUG_LOW,
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
168 ATP_USE_ID);
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
169
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
170 return RVM_OK;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
171 }
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
172
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
173
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
174
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
175
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
176
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
177
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
178 /******************************************************************************
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
179 * Function name: atp_start
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
180 *
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
181 * Description : This function is used to start ATP (used by RVM)
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
182 *
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
183 * Parameters : none
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
184 *
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
185 * Return :
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
186 * RVM_OK
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
187 *
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
188 * History
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
189 * : 1.0 (30-May-2000) created
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
190 ******************************************************************************/
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
191 T_RVM_RETURN atp_start (void)
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
192 {
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
193
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
194 atp_swe_state=ATP_STARTED;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
195
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
196 rvf_send_trace("ATP : Start performed ",31,NULL_PARAM,RV_TRACE_LEVEL_DEBUG_LOW,
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
197 ATP_USE_ID);
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
198
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
199 return RVM_OK;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
200 }
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
201
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
202
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
203
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
204
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
205 /******************************************************************************
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
206 * Function name: atp_stop
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
207 *
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
208 * Description : This function is used to stop ATP (used by RVM)
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
209 *
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
210 * Parameters : none
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
211 *
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
212 * Return :
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
213 * RVM_OK
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
214 *
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
215 * History
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
216 * : 1.0 (30-May-2000) created
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
217 ******************************************************************************/
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
218 T_RVM_RETURN atp_stop (void)
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
219 {
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
220
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
221 atp_swe_state=ATP_STOPPED;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
222
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
223 return RVM_OK;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
224 }
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
225
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
226
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
227
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
228
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
229 /******************************************************************************
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
230 * Function name: atp_kill
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
231 *
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
232 * Description : This function is used to kill ATP (used by RVM)
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
233 *
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
234 * Parameters : none
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
235 *
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
236 * Return :
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
237 * RVM_OK
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
238 *
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
239 * History
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
240 * : 1.0 (30-May-2000) created
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
241 ******************************************************************************/
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
242 T_RVM_RETURN atp_kill (void)
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
243 {
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
244 if (atp_delete_all_port() ==RV_OK)
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
245 {
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
246 return atp_dereg_all();
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
247 }
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
248 return RVM_INTERNAL_ERR;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
249 }
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
250
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
251
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
252
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
253
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
254 /******************************************************************************
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
255 * Function name: atp_error
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
256 *
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
257 * Description : Generic ATP error function
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
258 *
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
259 * Parameters :
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
260 *
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
261 * Return : no return
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
262 *
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
263 * History : 0.1 (1-Marsh-2000) - Created
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
264 *
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
265 ******************************************************************************/
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
266 void atp_error(T_ATP_ERROR_REASON atp_error_reason)
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
267 {
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
268
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
269 switch (atp_error_reason)
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
270 {
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
271 case ATP_ERROR_MB_PRIM_RED:
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
272 {
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
273
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
274 rvf_send_trace("ATP : ATP MEMORY BANK CRASHED !!!!!!!",37,NULL_PARAM,RV_TRACE_LEVEL_ERROR,
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
275 ATP_USE_ID);
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
276
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
277 atp_error_ft("ATP",RVM_MEMORY_ERR,0," ATP memory bank irrecoverably crashed ");
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
278 break;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
279 }
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
280
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
281 default:
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
282 {
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
283 rvf_send_trace("ATP : Function ATP error has been called",40,NULL_PARAM,
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
284 RV_TRACE_LEVEL_ERROR, ATP_USE_ID);
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
285
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
286 atp_error_ft("ATP",RVM_INTERNAL_ERR,0," ATP irrecoverable error occured ");
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
287 break;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
288 }
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
289 }
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
290 }
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
291
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
292
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
293
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
294
|