1 /****************************************************************************
2  ****************************************************************************
3  ***
4  ***   This header was automatically generated from a Linux kernel header
5  ***   of the same name, to make information necessary for userspace to
6  ***   call into the kernel available to libc.  It contains only constants,
7  ***   structures, and macros generated from the original header, and thus,
8  ***   contains no copyrightable information.
9  ***
10  ***   To edit the content of this header, modify the corresponding
11  ***   source file (e.g. under external/kernel-headers/original/) then
12  ***   run bionic/libc/kernel/tools/update_all.py
13  ***
14  ***   Any manual change here will be lost the next time this script will
15  ***   be run. You've been warned!
16  ***
17  ****************************************************************************
18  ****************************************************************************/
19 #ifndef _UAPI_LINUX_SYNC_H
20 #define _UAPI_LINUX_SYNC_H
21 #include <linux/ioctl.h>
22 #include <linux/types.h>
23 struct sync_merge_data {
24   char name[32];
25   __s32 fd2;
26   __s32 fence;
27   __u32 flags;
28   __u32 pad;
29 };
30 struct sync_fence_info {
31   char obj_name[32];
32   char driver_name[32];
33   __s32 status;
34   __u32 flags;
35   __u64 timestamp_ns;
36 };
37 struct sync_file_info {
38   char name[32];
39   __s32 status;
40   __u32 flags;
41   __u32 num_fences;
42   __u32 pad;
43   __u64 sync_fence_info;
44 };
45 #define SYNC_IOC_MAGIC '>'
46 #define SYNC_IOC_MERGE _IOWR(SYNC_IOC_MAGIC, 3, struct sync_merge_data)
47 #define SYNC_IOC_FILE_INFO _IOWR(SYNC_IOC_MAGIC, 4, struct sync_file_info)
48 #endif
49