diff options
author | Thomas Gleixner <tglx@linutronix.de> | 2017-05-30 23:15:41 +0200 |
---|---|---|
committer | Thomas Gleixner <tglx@linutronix.de> | 2017-06-04 15:40:23 +0200 |
commit | bab0aae9dcba9466dcc968b8bd21914f8f691631 (patch) | |
tree | 4099065707529a821372baf4a3d1d268ebda32d5 /kernel/time/posix-timers.h | |
parent | 03676b41a8ffcbb1f6d9eb6ca754b2bfa431fd59 (diff) |
posix-timers: Move posix-timer internals to core
None of these declarations is required outside of kernel/time. Move them to
an internal header.
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: John Stultz <john.stultz@linaro.org>
Cc: Christoph Hellwig <hch@lst.de>
Link: http://lkml.kernel.org/r/20170530211656.394803853@linutronix.de
Diffstat (limited to 'kernel/time/posix-timers.h')
-rw-r--r-- | kernel/time/posix-timers.h | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/kernel/time/posix-timers.h b/kernel/time/posix-timers.h new file mode 100644 index 000000000000..ad2dbd29b389 --- /dev/null +++ b/kernel/time/posix-timers.h @@ -0,0 +1,29 @@ +#define TIMER_RETRY 1 + +struct k_clock { + int (*clock_getres) (const clockid_t which_clock, struct timespec64 *tp); + int (*clock_set) (const clockid_t which_clock, + const struct timespec64 *tp); + int (*clock_get) (const clockid_t which_clock, struct timespec64 *tp); + int (*clock_adj) (const clockid_t which_clock, struct timex *tx); + int (*timer_create) (struct k_itimer *timer); + int (*nsleep) (const clockid_t which_clock, int flags, + struct timespec64 *, struct timespec __user *); + long (*nsleep_restart) (struct restart_block *restart_block); + int (*timer_set) (struct k_itimer *timr, int flags, + struct itimerspec64 *new_setting, + struct itimerspec64 *old_setting); + int (*timer_del) (struct k_itimer *timr); + void (*timer_get) (struct k_itimer *timr, + struct itimerspec64 *cur_setting); +}; + +extern const struct k_clock clock_posix_cpu; +extern const struct k_clock clock_posix_dynamic; +extern const struct k_clock clock_process; +extern const struct k_clock clock_thread; +extern const struct k_clock alarm_clock; + +int posix_timer_event(struct k_itimer *timr, int si_private); + +void posix_cpu_timer_schedule(struct k_itimer *timer); |