| 1 | #ifndef SRL_H_ |
|---|
| 2 | #define SRL_H_ |
|---|
| 3 | |
|---|
| 4 | /** |
|---|
| 5 | @file |
|---|
| 6 | @module{SRL} |
|---|
| 7 | @short SRL Api main header |
|---|
| 8 | */ |
|---|
| 9 | |
|---|
| 10 | #include "libsrl/srl_public_types.h" |
|---|
| 11 | //#include "libsrl/srl_private_types.h" |
|---|
| 12 | |
|---|
| 13 | #include "libsrl/srl_lock.h" |
|---|
| 14 | #include "libsrl/srl_mwmr.h" |
|---|
| 15 | #include "libsrl/srl_log.h" |
|---|
| 16 | #include "libsrl/srl_barrier.h" |
|---|
| 17 | #include "libsrl/srl_memspace.h" |
|---|
| 18 | |
|---|
| 19 | #include "libsrl/srl_hw_helpers.h" |
|---|
| 20 | |
|---|
| 21 | //kernel use! |
|---|
| 22 | //#include "libsrl/srl_mwmr_sys.h" |
|---|
| 23 | |
|---|
| 24 | #define GET_MWMR(port) GET_ARG(port, VOBJ_TYPE_MWMR) |
|---|
| 25 | /* port, APP_NAME, TASK, #task_name, alias */ |
|---|
| 26 | # define SRL_GET_ARG(task_name, port, type) \ |
|---|
| 27 | ({ \ |
|---|
| 28 | srl_mwmr_t _mwmr; \ |
|---|
| 29 | if( giet_vobj_get_vbase( APP_NAME , alias_##task_name.port, type, (unsigned int*)&_mwmr ) ) \ |
|---|
| 30 | { \ |
|---|
| 31 | srl_log_printf( NONE, "\n[ERROR] in "#task_name" task :\n"); \ |
|---|
| 32 | srl_log_printf( NONE, " undefined port <"#port"> for channel(%s): %d\n", alias_##task_name.port,_mwmr); \ |
|---|
| 33 | srl_log_printf( TRACE, "*** &"#port" = %x\n\n", (unsigned int)_mwmr ); \ |
|---|
| 34 | srl_exit(); \ |
|---|
| 35 | }else \ |
|---|
| 36 | srl_log_printf( TRACE, "%s:%d: arg of %s for %s,from %s; &"#port" = %x\n\n", __FILE__, __LINE__, APP_NAME, #task_name,#port, (unsigned int)_mwmr ); \ |
|---|
| 37 | _mwmr;\ |
|---|
| 38 | }) |
|---|
| 39 | |
|---|
| 40 | |
|---|
| 41 | |
|---|
| 42 | |
|---|
| 43 | #endif |
|---|
| 44 | |
|---|