X-Git-Url: https://codewiz.org/gitweb?a=blobdiff_plain;f=bertos%2Fkern%2Frtask.c;h=cfe35ce6a38219c83f35cc79a1cd54b5ce0f72eb;hb=121f4d98bd4d74629809697ab66001ebcbac76ce;hp=dddbd6d75e31c321a63cde0bed308732818d1976;hpb=7911a6f01bc8a19f220f98e2fdc8595f65996853;p=bertos.git diff --git a/bertos/kern/rtask.c b/bertos/kern/rtask.c index dddbd6d7..cfe35ce6 100644 --- a/bertos/kern/rtask.c +++ b/bertos/kern/rtask.c @@ -45,6 +45,8 @@ #define LOG_FORMAT RTASK_LOG_FORMAT #include +#include + #include #include @@ -73,7 +75,7 @@ struct RTask void *user_data; }; -DECLARE_POOL_STATIC(rtask_pool, RTask, CONFIG_RTASK_POOL_SIZE); +DEFINE_POOL_STATIC(rtask_pool, RTask, CONFIG_RTASK_POOL_SIZE); static Process *process = NULL; static List rt_list; static Semaphore rtask_sem; @@ -84,7 +86,8 @@ static Semaphore rtask_sem; sem_release(&rtask_sem); \ } while (0) -#warning "Remove synctimer_poll and use a list directly" + +//TODO: "Remove synctimer_poll and use a list directly" static NORETURN void rtask_proc(void) { while (1) @@ -143,7 +146,7 @@ RTask *rtask_add(rtask_cb_t cb, mtime_t delay, void *cb_data) rt->callback = cb; rt->user_data = cb_data; timer_setSoftint(&rt->t, rtask_trampoline, rt); - timer_setDelay(&rt->t, delay); + timer_setDelay(&rt->t, ms_to_ticks(delay)); RTASK_ATOMIC(synctimer_add(&rt->t, &rt_list)); sig_send(process, NEW_TASK); }