18 #ifndef _COBALT_POSIX_TIMER_H
19 #define _COBALT_POSIX_TIMER_H
21 #include <linux/types.h>
22 #include <linux/time.h>
23 #include <linux/list.h>
24 #include <cobalt/kernel/timer.h>
25 #include <xenomai/posix/signal.h>
26 #include <xenomai/posix/syscall.h>
29 struct cobalt_kqueues;
32 struct xntimer timerbase;
37 struct cobalt_sigpending sigp;
38 struct cobalt_extref extref;
41 int cobalt_timer_deliver(timer_t timerid);
43 void cobalt_timers_cleanup(
struct cobalt_process *p);
45 static inline timer_t cobalt_timer_id(
const struct cobalt_timer *timer)
51 cobalt_timer_by_id(
struct cobalt_process *p, timer_t timer_id);
53 void cobalt_timer_handler(
struct xntimer *xntimer);
55 void __cobalt_timer_getval(
struct xntimer *__restrict__ timer,
56 struct itimerspec *__restrict__ value);
58 int __cobalt_timer_setval(
struct xntimer *__restrict__ timer,
int clock_flag,
59 const struct itimerspec *__restrict__ value);
61 int __cobalt_timer_create(clockid_t clock,
62 const struct sigevent *sev,
63 timer_t __user *u_tm);
65 int __cobalt_timer_settime(timer_t timerid,
int flags,
66 const struct itimerspec *__restrict__ value,
67 struct itimerspec *__restrict__ ovalue);
69 int __cobalt_timer_gettime(timer_t timerid,
struct itimerspec *value);
73 const struct sigevent __user *u_sev,
74 timer_t __user *u_tm));
79 (timer_t tm,
int flags,
80 const struct itimerspec __user *u_newval,
81 struct itimerspec __user *u_oldval));
84 (timer_t tm,
struct itimerspec __user *u_val));
int timer_create(clockid_t clockid, const struct sigevent *__restrict__ evp, timer_t *__restrict__ timerid)
Create a timer.
Definition: timer.c:72
int timer_gettime(timer_t timerid, struct itimerspec *value)
Get timer next expiration date and reload value.
Definition: timer.c:202
int timer_delete(timer_t timerid)
Delete a timer object.
Definition: timer.c:102
int timer_getoverrun(timer_t timerid)
Get expiration overruns count since the most recent timer expiration signal delivery.
Definition: timer.c:235
int timer_settime(timer_t timerid, int flags, const struct itimerspec *__restrict__ value, struct itimerspec *__restrict__ ovalue)
Start or stop a timer.
Definition: timer.c:161