comparison src/cs/riviera/rvm/rvm_api.h @ 0:b6a5e36de839

src/cs: initial import from Magnetite
author Mychaela Falconia <falcon@freecalypso.org>
date Sun, 15 Jul 2018 04:39:26 +0000
parents
children
comparison
equal deleted inserted replaced
-1:000000000000 0:b6a5e36de839
1 /**
2 *
3 * @file rvm_api.h
4 *
5 * Public interface of the Riviera Manager.
6 *
7 * @author Cristian Livadiotti (c-livadiotti@ti.com)
8 * @version 0.2
9 *
10 */
11
12 /*
13 * Revision History:
14 *
15 * 06/04/2000 Cristian Livadiotti Create.
16 * 10/18/2001 David Lamy-Charrier Update for new Riviera 1.6.
17 *
18 * (C) Copyright 2001 by Texas Instruments Incorporated, All Rights Reserved
19 */
20
21
22 #ifndef __RVM_API_H_
23 #define __RVM_API_H_
24
25 #include "rv/rv_general.h"
26 //#include "rvf_i.h"
27
28
29 #ifdef __cplusplus
30 extern "C" {
31 #endif
32
33 /******************************************************
34 * Message type used by rvf: add, del and Modify timers
35 *******************************************************/
36 #define RVM_MSG_OFFSET_PUB BUILD_MESSAGE_OFFSET(RVM_USE_ID)
37
38 #define RVM_TMS_MSG (RVM_MSG_OFFSET_PUB | 0x004)
39 #define RVF_NOTIFY_MSG (RVM_MSG_OFFSET_PUB | 0x006)
40
41 /******************************************************************/
42 /* RVM functions return type and values */
43 /******************************************************************/
44
45 /* Return type */
46 typedef T_RV_RET T_RVM_RETURN;
47
48
49 /* RVM return parameters definition */
50 #define RVM_OK RV_OK
51 #define RVM_NOT_SUPPORTED RV_NOT_SUPPORTED
52 #define RVM_NOT_READY RV_NOT_READY
53 #define RVM_MEMORY_ERR RV_MEMORY_ERR
54 #define RVM_INTERNAL_ERR RV_INTERNAL_ERR
55 #define RVM_INVALID_PARAMETER RV_INVALID_PARAMETER
56
57
58 /******************************************************************/
59 /* Definition / Types related to both API functions and messages */
60 /******************************************************************/
61
62 /* RVM USEID definition (Unique Software Entity IDentifier)*/
63 typedef UINT32 T_RVM_USE_ID;
64
65 #define RVM_INVALID_USE_ID (0)
66
67 /* RVM name prototype */
68 #define RVM_NAME_MAX_LEN (10)
69 typedef char T_RVM_NAME[RVM_NAME_MAX_LEN];
70
71 typedef UINT32 T_RVM_VERSION;
72
73
74 /***********************************************/
75 /* Definition / Types related to messages only */
76 /***********************************************/
77
78 /* Message used as a result from a rvm_start or rv_stop function call */
79 /*--------------------------------------------------------------------*/
80 #define RVM_EVT_TO_APPLI (60009) // Value of the event field in the message buffer
81
82
83 /* Action field of the results message to application */
84 typedef enum {
85 RVM_START_APPLI = 0,
86 RVM_STOP_APPLI = 1
87 }T_RVM_APPLI_ACTION;
88
89
90 /* structure of RVM returned message to appli */
91 typedef struct
92 {
93 T_RV_HDR header; // event field will be RVM_EVT_TO_APPLI
94 T_RV_RETURN_PATH rp;
95 T_RVM_APPLI_ACTION action; // Indicates if the result is coming from a rvm_start or a rvm_stop function call
96 T_RVM_NAME swe_name; // Name of the SW entity
97 UINT8 swe_index; // Number of the SW entity
98 T_RVM_RETURN result;
99 } T_RVM_APPLI_RESULT;
100
101
102
103
104 /***************************************/
105 /* RVM external functions declarations */
106 /***************************************/
107
108 /* enable init at boot up */
109 BOOLEAN rvm_init(void);
110 /* launch the creation process to start the specified SWE */
111 T_RVM_RETURN rvm_start_swe( T_RVM_USE_ID swe_id, T_RV_RETURN_PATH return_path);
112
113 /* stop the specified SWE */
114 T_RVM_RETURN rvm_stop_swe( T_RVM_USE_ID swe_id, T_RV_RETURN_PATH return_path);
115 T_RVM_RETURN rvm_swe_stopped(T_RV_HDR* p_msg);
116
117 /* function called to start the RV Environment */
118 T_RVM_RETURN rvm_start_environment();
119
120 /* function called to get the return_path of a SWE */
121 T_RVM_RETURN rvm_get_swe_information( T_RVM_USE_ID swe_id,
122 T_RV_RETURN_PATH * return_path);
123
124 /* function called to get the user-friendly name of a SWE */
125 T_RVM_RETURN rvm_get_swe_name( T_RVM_USE_ID swe_id,
126 T_RVM_NAME swe_name);
127
128 /* function called to get the version number of a SWE */
129 T_RVM_RETURN rvm_get_swe_version( T_RVM_USE_ID swe_id,
130 T_RVM_VERSION * swe_version);
131
132 #ifdef __cplusplus
133 }
134 #endif
135
136
137 #endif /* __RVM_API_H_ */