xref: /aosp_15_r20/prebuilts/build-tools/sysroots/aarch64-unknown-linux-musl/include/linux/joystick.h (revision cda5da8d549138a6648c5ee6d7a49cf8f4a657be)
1*cda5da8dSAndroid Build Coastguard Worker /*
2*cda5da8dSAndroid Build Coastguard Worker  * This file is auto-generated. Modifications will be lost.
3*cda5da8dSAndroid Build Coastguard Worker  *
4*cda5da8dSAndroid Build Coastguard Worker  * See https://android.googlesource.com/platform/bionic/+/master/libc/kernel/
5*cda5da8dSAndroid Build Coastguard Worker  * for more information.
6*cda5da8dSAndroid Build Coastguard Worker  */
7*cda5da8dSAndroid Build Coastguard Worker #ifndef _UAPI_LINUX_JOYSTICK_H
8*cda5da8dSAndroid Build Coastguard Worker #define _UAPI_LINUX_JOYSTICK_H
9*cda5da8dSAndroid Build Coastguard Worker #include <linux/types.h>
10*cda5da8dSAndroid Build Coastguard Worker #include <linux/input.h>
11*cda5da8dSAndroid Build Coastguard Worker #define JS_VERSION 0x020100
12*cda5da8dSAndroid Build Coastguard Worker #define JS_EVENT_BUTTON 0x01
13*cda5da8dSAndroid Build Coastguard Worker #define JS_EVENT_AXIS 0x02
14*cda5da8dSAndroid Build Coastguard Worker #define JS_EVENT_INIT 0x80
15*cda5da8dSAndroid Build Coastguard Worker struct js_event {
16*cda5da8dSAndroid Build Coastguard Worker   __u32 time;
17*cda5da8dSAndroid Build Coastguard Worker   __s16 value;
18*cda5da8dSAndroid Build Coastguard Worker   __u8 type;
19*cda5da8dSAndroid Build Coastguard Worker   __u8 number;
20*cda5da8dSAndroid Build Coastguard Worker };
21*cda5da8dSAndroid Build Coastguard Worker #define JSIOCGVERSION _IOR('j', 0x01, __u32)
22*cda5da8dSAndroid Build Coastguard Worker #define JSIOCGAXES _IOR('j', 0x11, __u8)
23*cda5da8dSAndroid Build Coastguard Worker #define JSIOCGBUTTONS _IOR('j', 0x12, __u8)
24*cda5da8dSAndroid Build Coastguard Worker #define JSIOCGNAME(len) _IOC(_IOC_READ, 'j', 0x13, len)
25*cda5da8dSAndroid Build Coastguard Worker #define JSIOCSCORR _IOW('j', 0x21, struct js_corr)
26*cda5da8dSAndroid Build Coastguard Worker #define JSIOCGCORR _IOR('j', 0x22, struct js_corr)
27*cda5da8dSAndroid Build Coastguard Worker #define JSIOCSAXMAP _IOW('j', 0x31, __u8[ABS_CNT])
28*cda5da8dSAndroid Build Coastguard Worker #define JSIOCGAXMAP _IOR('j', 0x32, __u8[ABS_CNT])
29*cda5da8dSAndroid Build Coastguard Worker #define JSIOCSBTNMAP _IOW('j', 0x33, __u16[KEY_MAX - BTN_MISC + 1])
30*cda5da8dSAndroid Build Coastguard Worker #define JSIOCGBTNMAP _IOR('j', 0x34, __u16[KEY_MAX - BTN_MISC + 1])
31*cda5da8dSAndroid Build Coastguard Worker #define JS_CORR_NONE 0x00
32*cda5da8dSAndroid Build Coastguard Worker #define JS_CORR_BROKEN 0x01
33*cda5da8dSAndroid Build Coastguard Worker struct js_corr {
34*cda5da8dSAndroid Build Coastguard Worker   __s32 coef[8];
35*cda5da8dSAndroid Build Coastguard Worker   __s16 prec;
36*cda5da8dSAndroid Build Coastguard Worker   __u16 type;
37*cda5da8dSAndroid Build Coastguard Worker };
38*cda5da8dSAndroid Build Coastguard Worker #define JS_RETURN sizeof(struct JS_DATA_TYPE)
39*cda5da8dSAndroid Build Coastguard Worker #define JS_TRUE 1
40*cda5da8dSAndroid Build Coastguard Worker #define JS_FALSE 0
41*cda5da8dSAndroid Build Coastguard Worker #define JS_X_0 0x01
42*cda5da8dSAndroid Build Coastguard Worker #define JS_Y_0 0x02
43*cda5da8dSAndroid Build Coastguard Worker #define JS_X_1 0x04
44*cda5da8dSAndroid Build Coastguard Worker #define JS_Y_1 0x08
45*cda5da8dSAndroid Build Coastguard Worker #define JS_MAX 2
46*cda5da8dSAndroid Build Coastguard Worker #define JS_DEF_TIMEOUT 0x1300
47*cda5da8dSAndroid Build Coastguard Worker #define JS_DEF_CORR 0
48*cda5da8dSAndroid Build Coastguard Worker #define JS_DEF_TIMELIMIT 10L
49*cda5da8dSAndroid Build Coastguard Worker #define JS_SET_CAL 1
50*cda5da8dSAndroid Build Coastguard Worker #define JS_GET_CAL 2
51*cda5da8dSAndroid Build Coastguard Worker #define JS_SET_TIMEOUT 3
52*cda5da8dSAndroid Build Coastguard Worker #define JS_GET_TIMEOUT 4
53*cda5da8dSAndroid Build Coastguard Worker #define JS_SET_TIMELIMIT 5
54*cda5da8dSAndroid Build Coastguard Worker #define JS_GET_TIMELIMIT 6
55*cda5da8dSAndroid Build Coastguard Worker #define JS_GET_ALL 7
56*cda5da8dSAndroid Build Coastguard Worker #define JS_SET_ALL 8
57*cda5da8dSAndroid Build Coastguard Worker struct JS_DATA_TYPE {
58*cda5da8dSAndroid Build Coastguard Worker   __s32 buttons;
59*cda5da8dSAndroid Build Coastguard Worker   __s32 x;
60*cda5da8dSAndroid Build Coastguard Worker   __s32 y;
61*cda5da8dSAndroid Build Coastguard Worker };
62*cda5da8dSAndroid Build Coastguard Worker struct JS_DATA_SAVE_TYPE_32 {
63*cda5da8dSAndroid Build Coastguard Worker   __s32 JS_TIMEOUT;
64*cda5da8dSAndroid Build Coastguard Worker   __s32 BUSY;
65*cda5da8dSAndroid Build Coastguard Worker   __s32 JS_EXPIRETIME;
66*cda5da8dSAndroid Build Coastguard Worker   __s32 JS_TIMELIMIT;
67*cda5da8dSAndroid Build Coastguard Worker   struct JS_DATA_TYPE JS_SAVE;
68*cda5da8dSAndroid Build Coastguard Worker   struct JS_DATA_TYPE JS_CORR;
69*cda5da8dSAndroid Build Coastguard Worker };
70*cda5da8dSAndroid Build Coastguard Worker struct JS_DATA_SAVE_TYPE_64 {
71*cda5da8dSAndroid Build Coastguard Worker   __s32 JS_TIMEOUT;
72*cda5da8dSAndroid Build Coastguard Worker   __s32 BUSY;
73*cda5da8dSAndroid Build Coastguard Worker   __s64 JS_EXPIRETIME;
74*cda5da8dSAndroid Build Coastguard Worker   __s64 JS_TIMELIMIT;
75*cda5da8dSAndroid Build Coastguard Worker   struct JS_DATA_TYPE JS_SAVE;
76*cda5da8dSAndroid Build Coastguard Worker   struct JS_DATA_TYPE JS_CORR;
77*cda5da8dSAndroid Build Coastguard Worker };
78*cda5da8dSAndroid Build Coastguard Worker #endif
79