1/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
2/*
3 *  include/linux/timerfd.h
4 *
5 *  Copyright (C) 2007  Davide Libenzi <davidel@xmailserver.org>
6 *
7 */
8
9#ifndef _UAPI_LINUX_TIMERFD_H
10#define _UAPI_LINUX_TIMERFD_H
11
12#include <linux/types.h>
13
14/* For O_CLOEXEC and O_NONBLOCK */
15#include <linux/fcntl.h>
16
17/* For _IO helpers */
18#include <linux/ioctl.h>
19
20/*
21 * CAREFUL: Check include/asm-generic/fcntl.h when defining
22 * new flags, since they might collide with O_* ones. We want
23 * to re-use O_* flags that couldn't possibly have a meaning
24 * from eventfd, in order to leave a free define-space for
25 * shared O_* flags.
26 *
27 * Also make sure to update the masks in include/linux/timerfd.h
28 * when adding new flags.
29 */
30#define TFD_TIMER_ABSTIME (1 << 0)
31#define TFD_TIMER_CANCEL_ON_SET (1 << 1)
32#define TFD_CLOEXEC O_CLOEXEC
33#define TFD_NONBLOCK O_NONBLOCK
34
35#define TFD_IOC_SET_TICKS	_IOW('T', 0, __u64)
36
37#endif /* _UAPI_LINUX_TIMERFD_H */
38