From 36fa80ce2f602411d97d778ad9a0ed9d06f2ca18 Mon Sep 17 00:00:00 2001 From: balbastrep Date: Wed, 16 May 2007 11:46:31 +0000 Subject: [PATCH] Fosa for rtlinux already compiles, however some functions are still missed git-svn-id: http://www.frescor.org/private/svn/frescor/fosa/trunk@408 35b4ef3e-fd22-0410-ab77-dab3279adceb --- include/fosa_opaque_types.h | 3 +++ src_rtlinux/fosa_clocks_and_timers.c | 5 +++-- src_rtlinux/fosa_mutexes_and_condvars.c | 10 ++++----- src_rtlinux/fosa_threads_and_signals.c | 29 ++++++++++++++----------- 4 files changed, 27 insertions(+), 20 deletions(-) diff --git a/include/fosa_opaque_types.h b/include/fosa_opaque_types.h index 63e4eaf..68b48d8 100644 --- a/include/fosa_opaque_types.h +++ b/include/fosa_opaque_types.h @@ -72,6 +72,9 @@ #include #include +#ifdef RT_LINUX +#include +#endif #define FOSA_CLOCK_ID_T_OPAQUE clockid_t #define FOSA_SYSTEM_CLOCK_OPAQUE CLOCK_REALTIME diff --git a/src_rtlinux/fosa_clocks_and_timers.c b/src_rtlinux/fosa_clocks_and_timers.c index 6e0dfe0..49d8315 100644 --- a/src_rtlinux/fosa_clocks_and_timers.c +++ b/src_rtlinux/fosa_clocks_and_timers.c @@ -65,7 +65,7 @@ *************************/ int fosa_clock_get_time(fosa_clock_id_t clockid, - struct timespec current_time){ + struct timespec *current_time){ return clock_gettime(clockid, current_time); } @@ -87,7 +87,8 @@ int fosa_timer_create(fosa_clock_id_t clockid, event.sigev_notify = SIGEV_SIGNAL; event.sigev_signo = signal; - event.sigval.sival_ptr = info; + /* missed */ + /* event.sigval.sival_ptr = info; */ return timer_create(clockid, &event, timerid); } diff --git a/src_rtlinux/fosa_mutexes_and_condvars.c b/src_rtlinux/fosa_mutexes_and_condvars.c index 9ba813b..d11e5af 100644 --- a/src_rtlinux/fosa_mutexes_and_condvars.c +++ b/src_rtlinux/fosa_mutexes_and_condvars.c @@ -70,9 +70,9 @@ int fosa_mutex_init(frsh_mutex_t *mutex, int prioceiling){ - pthread_mutexattr_t *attr; - *attr->prioceiling=prioceiling; - return pthread_mutex_init(mutex, attr); + pthread_mutexattr_t attr; + attr.prioceiling=prioceiling; + return pthread_mutex_init(mutex, &attr); } int fosa_mutex_destroy(frsh_mutex_t *mutex){ @@ -106,7 +106,7 @@ int fosa_mutex_unlock(frsh_mutex_t *mutex){ *********************/ int fosa_cond_init(fosa_cond_t *cond){ - return pthread_cond_init(pthread_cond_t *cond, NULL); + return pthread_cond_init(cond, NULL); } int fosa_cond_destroy(fosa_cond_t *cond){ @@ -128,6 +128,6 @@ int fosa_cond_wait(fosa_cond_t *cond, frsh_mutex_t *mutex){ int fosa_cond_timedwait(fosa_cond_t *cond, frsh_mutex_t *mutex, const struct timespec abstime){ - return pthread_cond_timedwait(cond, mutex, abstime); + return pthread_cond_timedwait(cond, mutex, &abstime); } diff --git a/src_rtlinux/fosa_threads_and_signals.c b/src_rtlinux/fosa_threads_and_signals.c index d542b8a..e7f901c 100644 --- a/src_rtlinux/fosa_threads_and_signals.c +++ b/src_rtlinux/fosa_threads_and_signals.c @@ -57,7 +57,7 @@ // FOSA(Frescor Operating System Adaptation layer) //================================================ - +#include /************************* * Thread identification @@ -94,7 +94,8 @@ int fosa_thread_create (frsh_thread_id_t *tid, const frsh_thread_attr_t *attr, int fosa_thread_set_specific_data (int key, frsh_thread_id_t tid, const void * value){ if ((0sched_param.sched_priority = prio; return 0; - } + }*/ return EINVAL; } @@ -173,27 +175,28 @@ int fosa_thread_get_prio (frsh_thread_id_t tid, int *prio){ int fosa_set_accepted_signals(frsh_signal_t set[], int size) { int x; - rtl_sigset_t bitset; + // MISSED + /*rtl_sigset_t bitset; rtl_sigfillset(bitset); // By default all signals will be blocked. for (x=0; x