source: soft/giet_vm/libs/libsrl/srl_args.h @ 222

Last change on this file since 222 was 215, checked in by karaoui, 12 years ago

New components are now mandotory in the XML description:

The files giet_vsegs.ld and hard_config.h are now autogenerated by the xml2bin tool.

File size: 1.7 KB
Line 
1#ifndef SRL_ARGS_H
2#define SRL_ARGS_H
3
4
5
6#define SRL_GET_MWMR(port)      (srl_mwmr_t) APP_GET_ARG(port, VOBJ_TYPE_MWMR)
7#define SRL_GET_BARRIER(port)   APP_GET_ARG(port, VOBJ_TYPE_BARRIER)
8#define SRL_GET_LOCK(port)      APP_GET_ARG(port, VOBJ_TYPE_LOCK)
9//#define SRL_GET_MEMSPACE(port)  APP_GET_ARG(port, VOBJ_TYPE_BUFFER) TODO
10#define SRL_GET_MEMSPACE        #error "SRL_GET_MEMSPACE is not implemented"//
11
12
13# define SRL_GET_VBASE(task_name, port, type)                                                      \
14({                                                                                                 \
15    unsigned int  vbase;                                                                           \
16    if( giet_vobj_get_vbase( APP_NAME , alias_##task_name.port, type, &vbase ) )                   \
17    {                                                                                              \
18        srl_log_printf( NONE, "\n[ERROR] in "#task_name" task :\n");                               \
19        srl_log_printf( NONE, "          undefined port <"#port"> for channel(%s): %d\n",          \
20                                                                alias_##task_name.port,vbase);     \
21        srl_log_printf( TRACE, "*** &"#port" = %x\n\n", vbase );                                   \
22        srl_exit();                                                                                \
23    }else                                                                                          \
24        srl_log_printf( TRACE, "%s:%d: arg of %s for %s,from %s; &"#port" = %x\n\n",               \
25                            __FILE__, __LINE__, APP_NAME, #task_name,#port, vbase );               \
26    vbase;\
27})
28
29
30
31#endif
Note: See TracBrowser for help on using the repository browser.