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