|
@@ -114,6 +114,31 @@ struct input_keymap_entry {
|
|
|
#define EVIOCGUNIQ(len) _IOC(_IOC_READ, 'E', 0x08, len) /* get unique identifier */
|
|
|
#define EVIOCGPROP(len) _IOC(_IOC_READ, 'E', 0x09, len) /* get device properties */
|
|
|
|
|
|
+/**
|
|
|
+ * EVIOCGMTSLOTS(len) - get MT slot values
|
|
|
+ *
|
|
|
+ * The ioctl buffer argument should be binary equivalent to
|
|
|
+ *
|
|
|
+ * struct input_mt_request_layout {
|
|
|
+ * __u32 code;
|
|
|
+ * __s32 values[num_slots];
|
|
|
+ * };
|
|
|
+ *
|
|
|
+ * where num_slots is the (arbitrary) number of MT slots to extract.
|
|
|
+ *
|
|
|
+ * The ioctl size argument (len) is the size of the buffer, which
|
|
|
+ * should satisfy len = (num_slots + 1) * sizeof(__s32). If len is
|
|
|
+ * too small to fit all available slots, the first num_slots are
|
|
|
+ * returned.
|
|
|
+ *
|
|
|
+ * Before the call, code is set to the wanted ABS_MT event type. On
|
|
|
+ * return, values[] is filled with the slot values for the specified
|
|
|
+ * ABS_MT code.
|
|
|
+ *
|
|
|
+ * If the request code is not an ABS_MT value, -EINVAL is returned.
|
|
|
+ */
|
|
|
+#define EVIOCGMTSLOTS(len) _IOC(_IOC_READ, 'E', 0x0a, len)
|
|
|
+
|
|
|
#define EVIOCGKEY(len) _IOC(_IOC_READ, 'E', 0x18, len) /* get global key state */
|
|
|
#define EVIOCGLED(len) _IOC(_IOC_READ, 'E', 0x19, len) /* get all LEDs */
|
|
|
#define EVIOCGSND(len) _IOC(_IOC_READ, 'E', 0x1a, len) /* get all sounds status */
|