diff options
Diffstat (limited to 'libc/kernel/uapi/linux/uhid.h')
-rw-r--r-- | libc/kernel/uapi/linux/uhid.h | 189 |
1 files changed, 135 insertions, 54 deletions
diff --git a/libc/kernel/uapi/linux/uhid.h b/libc/kernel/uapi/linux/uhid.h index 37c3b17..e012a8d 100644 --- a/libc/kernel/uapi/linux/uhid.h +++ b/libc/kernel/uapi/linux/uhid.h @@ -21,88 +21,169 @@ #include <linux/input.h> #include <linux/types.h> /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ +#include <linux/hid.h> enum uhid_event_type { - UHID_CREATE, - UHID_DESTROY, - UHID_START, + __UHID_LEGACY_CREATE, + UHID_DESTROY, /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ - UHID_STOP, - UHID_OPEN, - UHID_CLOSE, - UHID_OUTPUT, + UHID_START, + UHID_STOP, + UHID_OPEN, + UHID_CLOSE, /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ - UHID_OUTPUT_EV, - UHID_INPUT, - UHID_FEATURE, - UHID_FEATURE_ANSWER, + UHID_OUTPUT, + __UHID_LEGACY_OUTPUT_EV, + __UHID_LEGACY_INPUT, + UHID_GET_REPORT, /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ + UHID_GET_REPORT_REPLY, + UHID_CREATE2, + UHID_INPUT2, + UHID_SET_REPORT, +/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ + UHID_SET_REPORT_REPLY, }; -struct uhid_create_req { - __u8 name[128]; - __u8 phys[64]; +struct uhid_create2_req { + __u8 name[128]; /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ - __u8 uniq[64]; - __u8 __user *rd_data; - __u16 rd_size; - __u16 bus; + __u8 phys[64]; + __u8 uniq[64]; + __u16 rd_size; + __u16 bus; /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ - __u32 vendor; - __u32 product; - __u32 version; - __u32 country; + __u32 vendor; + __u32 product; + __u32 version; + __u32 country; /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ + __u8 rd_data[HID_MAX_DESCRIPTOR_SIZE]; } __attribute__((__packed__)); +enum uhid_dev_flag { + UHID_DEV_NUMBERED_FEATURE_REPORTS = (1ULL << 0), +/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ + UHID_DEV_NUMBERED_OUTPUT_REPORTS = (1ULL << 1), + UHID_DEV_NUMBERED_INPUT_REPORTS = (1ULL << 2), +}; +struct uhid_start_req { +/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ + __u64 dev_flags; +}; #define UHID_DATA_MAX 4096 enum uhid_report_type { - UHID_FEATURE_REPORT, /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ - UHID_OUTPUT_REPORT, - UHID_INPUT_REPORT, + UHID_FEATURE_REPORT, + UHID_OUTPUT_REPORT, + UHID_INPUT_REPORT, }; -struct uhid_input_req { /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ - __u8 data[UHID_DATA_MAX]; - __u16 size; +struct uhid_input2_req { + __u16 size; + __u8 data[UHID_DATA_MAX]; } __attribute__((__packed__)); +/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ struct uhid_output_req { + __u8 data[UHID_DATA_MAX]; + __u16 size; + __u8 rtype; +/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ +} __attribute__((__packed__)); +struct uhid_get_report_req { + __u32 id; + __u8 rnum; +/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ + __u8 rtype; +} __attribute__((__packed__)); +struct uhid_get_report_reply_req { + __u32 id; +/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ + __u16 err; + __u16 size; + __u8 data[UHID_DATA_MAX]; +} __attribute__((__packed__)); +/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ +struct uhid_set_report_req { + __u32 id; + __u8 rnum; + __u8 rtype; +/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ + __u16 size; + __u8 data[UHID_DATA_MAX]; +} __attribute__((__packed__)); +struct uhid_set_report_reply_req { /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ - __u8 data[UHID_DATA_MAX]; - __u16 size; - __u8 rtype; + __u32 id; + __u16 err; } __attribute__((__packed__)); +enum uhid_legacy_event_type { /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ + UHID_CREATE = __UHID_LEGACY_CREATE, + UHID_OUTPUT_EV = __UHID_LEGACY_OUTPUT_EV, + UHID_INPUT = __UHID_LEGACY_INPUT, + UHID_FEATURE = UHID_GET_REPORT, +/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ + UHID_FEATURE_ANSWER = UHID_GET_REPORT_REPLY, +}; +struct uhid_create_req { + __u8 name[128]; +/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ + __u8 phys[64]; + __u8 uniq[64]; + __u8 __user * rd_data; + __u16 rd_size; +/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ + __u16 bus; + __u32 vendor; + __u32 product; + __u32 version; +/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ + __u32 country; +} __attribute__((__packed__)); +struct uhid_input_req { + __u8 data[UHID_DATA_MAX]; +/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ + __u16 size; +} __attribute__((__packed__)); struct uhid_output_ev_req { - __u16 type; - __u16 code; - __s32 value; + __u16 type; /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ + __u16 code; + __s32 value; } __attribute__((__packed__)); struct uhid_feature_req { - __u32 id; - __u8 rnum; /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ - __u8 rtype; + __u32 id; + __u8 rnum; + __u8 rtype; } __attribute__((__packed__)); +/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ struct uhid_feature_answer_req { - __u32 id; + __u32 id; + __u16 err; + __u16 size; /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ - __u16 err; - __u16 size; - __u8 data[UHID_DATA_MAX]; + __u8 data[UHID_DATA_MAX]; } __attribute__((__packed__)); -/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ struct uhid_event { - __u32 type; - union { - struct uhid_create_req create; -/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ - struct uhid_input_req input; - struct uhid_output_req output; - struct uhid_output_ev_req output_ev; - struct uhid_feature_req feature; -/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ - struct uhid_feature_answer_req feature_answer; - } u; + __u32 type; +/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ + union { + struct uhid_create_req create; + struct uhid_input_req input; + struct uhid_output_req output; +/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ + struct uhid_output_ev_req output_ev; + struct uhid_feature_req feature; + struct uhid_get_report_req get_report; + struct uhid_feature_answer_req feature_answer; +/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ + struct uhid_get_report_reply_req get_report_reply; + struct uhid_create2_req create2; + struct uhid_input2_req input2; + struct uhid_set_report_req set_report; +/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ + struct uhid_set_report_reply_req set_report_reply; + struct uhid_start_req start; + } u; } __attribute__((__packed__)); -#endif /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ +#endif |