xref: /aosp_15_r20/bionic/libc/kernel/uapi/linux/uinput.h (revision 8d67ca893c1523eb926b9080dbe4e2ffd2a27ba1)
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__UINPUT_H_
8*8d67ca89SAndroid Build Coastguard Worker #define _UAPI__UINPUT_H_
9*8d67ca89SAndroid Build Coastguard Worker #include <linux/types.h>
10*8d67ca89SAndroid Build Coastguard Worker #include <linux/input.h>
11*8d67ca89SAndroid Build Coastguard Worker #define UINPUT_VERSION 5
12*8d67ca89SAndroid Build Coastguard Worker #define UINPUT_MAX_NAME_SIZE 80
13*8d67ca89SAndroid Build Coastguard Worker struct uinput_ff_upload {
14*8d67ca89SAndroid Build Coastguard Worker   __u32 request_id;
15*8d67ca89SAndroid Build Coastguard Worker   __s32 retval;
16*8d67ca89SAndroid Build Coastguard Worker   struct ff_effect effect;
17*8d67ca89SAndroid Build Coastguard Worker   struct ff_effect old;
18*8d67ca89SAndroid Build Coastguard Worker };
19*8d67ca89SAndroid Build Coastguard Worker struct uinput_ff_erase {
20*8d67ca89SAndroid Build Coastguard Worker   __u32 request_id;
21*8d67ca89SAndroid Build Coastguard Worker   __s32 retval;
22*8d67ca89SAndroid Build Coastguard Worker   __u32 effect_id;
23*8d67ca89SAndroid Build Coastguard Worker };
24*8d67ca89SAndroid Build Coastguard Worker #define UINPUT_IOCTL_BASE 'U'
25*8d67ca89SAndroid Build Coastguard Worker #define UI_DEV_CREATE _IO(UINPUT_IOCTL_BASE, 1)
26*8d67ca89SAndroid Build Coastguard Worker #define UI_DEV_DESTROY _IO(UINPUT_IOCTL_BASE, 2)
27*8d67ca89SAndroid Build Coastguard Worker struct uinput_setup {
28*8d67ca89SAndroid Build Coastguard Worker   struct input_id id;
29*8d67ca89SAndroid Build Coastguard Worker   char name[UINPUT_MAX_NAME_SIZE];
30*8d67ca89SAndroid Build Coastguard Worker   __u32 ff_effects_max;
31*8d67ca89SAndroid Build Coastguard Worker };
32*8d67ca89SAndroid Build Coastguard Worker #define UI_DEV_SETUP _IOW(UINPUT_IOCTL_BASE, 3, struct uinput_setup)
33*8d67ca89SAndroid Build Coastguard Worker struct uinput_abs_setup {
34*8d67ca89SAndroid Build Coastguard Worker   __u16 code;
35*8d67ca89SAndroid Build Coastguard Worker   struct input_absinfo absinfo;
36*8d67ca89SAndroid Build Coastguard Worker };
37*8d67ca89SAndroid Build Coastguard Worker #define UI_ABS_SETUP _IOW(UINPUT_IOCTL_BASE, 4, struct uinput_abs_setup)
38*8d67ca89SAndroid Build Coastguard Worker #define UI_SET_EVBIT _IOW(UINPUT_IOCTL_BASE, 100, int)
39*8d67ca89SAndroid Build Coastguard Worker #define UI_SET_KEYBIT _IOW(UINPUT_IOCTL_BASE, 101, int)
40*8d67ca89SAndroid Build Coastguard Worker #define UI_SET_RELBIT _IOW(UINPUT_IOCTL_BASE, 102, int)
41*8d67ca89SAndroid Build Coastguard Worker #define UI_SET_ABSBIT _IOW(UINPUT_IOCTL_BASE, 103, int)
42*8d67ca89SAndroid Build Coastguard Worker #define UI_SET_MSCBIT _IOW(UINPUT_IOCTL_BASE, 104, int)
43*8d67ca89SAndroid Build Coastguard Worker #define UI_SET_LEDBIT _IOW(UINPUT_IOCTL_BASE, 105, int)
44*8d67ca89SAndroid Build Coastguard Worker #define UI_SET_SNDBIT _IOW(UINPUT_IOCTL_BASE, 106, int)
45*8d67ca89SAndroid Build Coastguard Worker #define UI_SET_FFBIT _IOW(UINPUT_IOCTL_BASE, 107, int)
46*8d67ca89SAndroid Build Coastguard Worker #define UI_SET_PHYS _IOW(UINPUT_IOCTL_BASE, 108, char *)
47*8d67ca89SAndroid Build Coastguard Worker #define UI_SET_SWBIT _IOW(UINPUT_IOCTL_BASE, 109, int)
48*8d67ca89SAndroid Build Coastguard Worker #define UI_SET_PROPBIT _IOW(UINPUT_IOCTL_BASE, 110, int)
49*8d67ca89SAndroid Build Coastguard Worker #define UI_BEGIN_FF_UPLOAD _IOWR(UINPUT_IOCTL_BASE, 200, struct uinput_ff_upload)
50*8d67ca89SAndroid Build Coastguard Worker #define UI_END_FF_UPLOAD _IOW(UINPUT_IOCTL_BASE, 201, struct uinput_ff_upload)
51*8d67ca89SAndroid Build Coastguard Worker #define UI_BEGIN_FF_ERASE _IOWR(UINPUT_IOCTL_BASE, 202, struct uinput_ff_erase)
52*8d67ca89SAndroid Build Coastguard Worker #define UI_END_FF_ERASE _IOW(UINPUT_IOCTL_BASE, 203, struct uinput_ff_erase)
53*8d67ca89SAndroid Build Coastguard Worker #define UI_GET_SYSNAME(len) _IOC(_IOC_READ, UINPUT_IOCTL_BASE, 44, len)
54*8d67ca89SAndroid Build Coastguard Worker #define UI_GET_VERSION _IOR(UINPUT_IOCTL_BASE, 45, unsigned int)
55*8d67ca89SAndroid Build Coastguard Worker #define EV_UINPUT 0x0101
56*8d67ca89SAndroid Build Coastguard Worker #define UI_FF_UPLOAD 1
57*8d67ca89SAndroid Build Coastguard Worker #define UI_FF_ERASE 2
58*8d67ca89SAndroid Build Coastguard Worker struct uinput_user_dev {
59*8d67ca89SAndroid Build Coastguard Worker   char name[UINPUT_MAX_NAME_SIZE];
60*8d67ca89SAndroid Build Coastguard Worker   struct input_id id;
61*8d67ca89SAndroid Build Coastguard Worker   __u32 ff_effects_max;
62*8d67ca89SAndroid Build Coastguard Worker   __s32 absmax[ABS_CNT];
63*8d67ca89SAndroid Build Coastguard Worker   __s32 absmin[ABS_CNT];
64*8d67ca89SAndroid Build Coastguard Worker   __s32 absfuzz[ABS_CNT];
65*8d67ca89SAndroid Build Coastguard Worker   __s32 absflat[ABS_CNT];
66*8d67ca89SAndroid Build Coastguard Worker };
67*8d67ca89SAndroid Build Coastguard Worker #endif
68