History

Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/hid

Pull HID updates from Jiri Kosina: - substantial cleanup of the generic and transport layers, in the direction of an ultimate goal of making struct hid_device completely transport independent, by Benjamin Tissoires - cp2112 driver from David Barksdale - a lot of fixes and new hardware support (Dualshock 4) to hid-sony driver, by Frank Praznik - support for Win 8.1 multitouch protocol by Andrew Duggan - other smaller fixes / device ID additions * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/hid: (75 commits) HID: sony: fix force feedback mismerge HID: sony: Set the quriks flag for Bluetooth controllers HID: sony: Fix Sixaxis cable state detection HID: uhid: Add UHID_CREATE2 + UHID_INPUT2 HID: hyperv: fix _raw_request() prototype HID: hyperv: Implement a stub raw_request() entry point HID: hid-sensor-hub: fix sleeping function called from invalid context HID: multitouch: add support for Win 8.1 multitouch touchpads HID: remove hid_output_raw_report transport implementations HID: sony: do not rely on hid_output_raw_report HID: cp2112: remove the last hid_output_raw_report() call HID: cp2112: remove various hid_out_raw_report calls HID: multitouch: add support of other generic collections in hid-mt HID: multitouch: remove pen special handling HID: multitouch: remove registered devices with default behavior HID: hidp: Add a comment that some devices depend on the current behavior of uniq HID: sony: Prevent duplicate controller connections. HID: sony: Perform a boundry check on the sixaxis battery level index. HID: sony: Fix work queue issues HID: sony: Fix multi-line comment styling ...

Linus Torvalds committed 12 years ago

Commit 0f1b1e62 parents 159d813 3ae821e29 files · +3022 −658Browse files

Showing the changes to include/uapi/linux (1 of 29 files). Show all

Unified · Split

include/uapi/linux/uhid.h+23−0
@@ -21,6 +21,7 @@ · 20 unmodified lines
2121
2222 #include <linux/input.h>
2323 #include <linux/types.h>
24+#include <linux/hid.h>
2425
2526 enum uhid_event_type {
2627 UHID_CREATE,
@@ -34,6 +35,8 @@ enum uhid_event_type { · 7 unmodified lines
3435 UHID_INPUT,
3536 UHID_FEATURE,
3637 UHID_FEATURE_ANSWER,
38+ UHID_CREATE2,
39+ UHID_INPUT2,
3740 };
3841
3942 struct uhid_create_req {
@@ -50,6 +53,19 @@ struct uhid_create_req { · 10 unmodified lines
5053 __u32 country;
5154 } __attribute__((__packed__));
5255
56+struct uhid_create2_req {
57+ __u8 name[128];
58+ __u8 phys[64];
59+ __u8 uniq[64];
60+ __u16 rd_size;
61+ __u16 bus;
62+ __u32 vendor;
63+ __u32 product;
64+ __u32 version;
65+ __u32 country;
66+ __u8 rd_data[HID_MAX_DESCRIPTOR_SIZE];
67+} __attribute__((__packed__));
68+
5369 #define UHID_DATA_MAX 4096
5470
5571 enum uhid_report_type {
@@ -63,6 +79,11 @@ struct uhid_input_req { · 7 unmodified lines
6379 __u16 size;
6480 } __attribute__((__packed__));
6581
82+struct uhid_input2_req {
83+ __u16 size;
84+ __u8 data[UHID_DATA_MAX];
85+} __attribute__((__packed__));
86+
6687 struct uhid_output_req {
6788 __u8 data[UHID_DATA_MAX];
6889 __u16 size;
@@ -100,6 +121,8 @@ struct uhid_event { · 31 unmodified lines
100121 struct uhid_output_ev_req output_ev;
101122 struct uhid_feature_req feature;
102123 struct uhid_feature_answer_req feature_answer;
124+ struct uhid_create2_req create2;
125+ struct uhid_input2_req input2;
103126 } u;
104127 } __attribute__((__packed__));
105128