FreeCalypso > hg > freecalypso-citrine
diff riviera/rvm/rvm_api.h @ 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 |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/riviera/rvm/rvm_api.h Thu Jun 09 00:02:41 2016 +0000 @@ -0,0 +1,137 @@ +/** + * + * @file rvm_api.h + * + * Public interface of the Riviera Manager. + * + * @author Cristian Livadiotti (c-livadiotti@ti.com) + * @version 0.2 + * + */ + +/* + * Revision History: + * + * 06/04/2000 Cristian Livadiotti Create. + * 10/18/2001 David Lamy-Charrier Update for new Riviera 1.6. + * + * (C) Copyright 2001 by Texas Instruments Incorporated, All Rights Reserved + */ + + +#ifndef __RVM_API_H_ +#define __RVM_API_H_ + +#include "../rv/rv_general.h" +//#include "rvf_i.h" + + +#ifdef __cplusplus +extern "C" { +#endif + +/****************************************************** +* Message type used by rvf: add, del and Modify timers +*******************************************************/ +#define RVM_MSG_OFFSET_PUB BUILD_MESSAGE_OFFSET(RVM_USE_ID) + +#define RVM_TMS_MSG (RVM_MSG_OFFSET_PUB | 0x004) +#define RVF_NOTIFY_MSG (RVM_MSG_OFFSET_PUB | 0x006) + +/******************************************************************/ +/* RVM functions return type and values */ +/******************************************************************/ + +/* Return type */ +typedef T_RV_RET T_RVM_RETURN; + + +/* RVM return parameters definition */ +#define RVM_OK RV_OK +#define RVM_NOT_SUPPORTED RV_NOT_SUPPORTED +#define RVM_NOT_READY RV_NOT_READY +#define RVM_MEMORY_ERR RV_MEMORY_ERR +#define RVM_INTERNAL_ERR RV_INTERNAL_ERR +#define RVM_INVALID_PARAMETER RV_INVALID_PARAMETER + + +/******************************************************************/ +/* Definition / Types related to both API functions and messages */ +/******************************************************************/ + +/* RVM USEID definition (Unique Software Entity IDentifier)*/ +typedef UINT32 T_RVM_USE_ID; + +#define RVM_INVALID_USE_ID (0) + +/* RVM name prototype */ +#define RVM_NAME_MAX_LEN (10) +typedef char T_RVM_NAME[RVM_NAME_MAX_LEN]; + +typedef UINT32 T_RVM_VERSION; + + +/***********************************************/ +/* Definition / Types related to messages only */ +/***********************************************/ + +/* Message used as a result from a rvm_start or rv_stop function call */ +/*--------------------------------------------------------------------*/ +#define RVM_EVT_TO_APPLI (60009) // Value of the event field in the message buffer + + +/* Action field of the results message to application */ +typedef enum { + RVM_START_APPLI = 0, + RVM_STOP_APPLI = 1 +}T_RVM_APPLI_ACTION; + + +/* structure of RVM returned message to appli */ +typedef struct +{ + T_RV_HDR header; // event field will be RVM_EVT_TO_APPLI + T_RV_RETURN_PATH rp; + T_RVM_APPLI_ACTION action; // Indicates if the result is coming from a rvm_start or a rvm_stop function call + T_RVM_NAME swe_name; // Name of the SW entity + UINT8 swe_index; // Number of the SW entity + T_RVM_RETURN result; +} T_RVM_APPLI_RESULT; + + + + +/***************************************/ +/* RVM external functions declarations */ +/***************************************/ + +/* enable init at boot up */ +BOOLEAN rvm_init(void); +/* launch the creation process to start the specified SWE */ +T_RVM_RETURN rvm_start_swe( T_RVM_USE_ID swe_id, T_RV_RETURN_PATH return_path); + +/* stop the specified SWE */ +T_RVM_RETURN rvm_stop_swe( T_RVM_USE_ID swe_id, T_RV_RETURN_PATH return_path); +T_RVM_RETURN rvm_swe_stopped(T_RV_HDR* p_msg); + +/* function called to start the RV Environment */ +T_RVM_RETURN rvm_start_environment(); + +/* function called to get the return_path of a SWE */ +T_RVM_RETURN rvm_get_swe_information( T_RVM_USE_ID swe_id, + T_RV_RETURN_PATH * return_path); + +/* function called to get the user-friendly name of a SWE */ +T_RVM_RETURN rvm_get_swe_name( T_RVM_USE_ID swe_id, + T_RVM_NAME swe_name); + +/* function called to get the version number of a SWE */ +T_RVM_RETURN rvm_get_swe_version( T_RVM_USE_ID swe_id, + T_RVM_VERSION * swe_version); + +#ifdef __cplusplus +} +#endif + + +#endif /* __RVM_API_H_ */