xref: /aosp_15_r20/bionic/libc/kernel/uapi/linux/user_events.h (revision 8d67ca893c1523eb926b9080dbe4e2ffd2a27ba1)
1 /*
2  * This file is auto-generated. Modifications will be lost.
3  *
4  * See https://android.googlesource.com/platform/bionic/+/master/libc/kernel/
5  * for more information.
6  */
7 #ifndef _UAPI_LINUX_USER_EVENTS_H
8 #define _UAPI_LINUX_USER_EVENTS_H
9 #include <linux/types.h>
10 #include <linux/ioctl.h>
11 #define USER_EVENTS_SYSTEM "user_events"
12 #define USER_EVENTS_MULTI_SYSTEM "user_events_multi"
13 #define USER_EVENTS_PREFIX "u:"
14 #define DYN_LOC(offset,size) ((size) << 16 | (offset))
15 enum user_reg_flag {
16   USER_EVENT_REG_PERSIST = 1U << 0,
17   USER_EVENT_REG_MULTI_FORMAT = 1U << 1,
18   USER_EVENT_REG_MAX = 1U << 2,
19 };
20 struct user_reg {
21   __u32 size;
22   __u8 enable_bit;
23   __u8 enable_size;
24   __u16 flags;
25   __u64 enable_addr;
26   __u64 name_args;
27   __u32 write_index;
28 } __attribute__((__packed__));
29 struct user_unreg {
30   __u32 size;
31   __u8 disable_bit;
32   __u8 __reserved;
33   __u16 __reserved2;
34   __u64 disable_addr;
35 } __attribute__((__packed__));
36 #define DIAG_IOC_MAGIC '*'
37 #define DIAG_IOCSREG _IOWR(DIAG_IOC_MAGIC, 0, struct user_reg *)
38 #define DIAG_IOCSDEL _IOW(DIAG_IOC_MAGIC, 1, char *)
39 #define DIAG_IOCSUNREG _IOW(DIAG_IOC_MAGIC, 2, struct user_unreg *)
40 #endif
41