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
21 21
22#include <linux/input.h>22#include <linux/input.h>
23#include <linux/types.h>23#include <linux/types.h>
24#include <linux/hid.h>
24 25
25enum uhid_event_type {26enum uhid_event_type {
26 UHID_CREATE,27 UHID_CREATE,
@@ -34,6 +35,8 @@ enum uhid_event_type { · 7 unmodified lines
34 UHID_INPUT,35 UHID_INPUT,
35 UHID_FEATURE,36 UHID_FEATURE,
36 UHID_FEATURE_ANSWER,37 UHID_FEATURE_ANSWER,
38 UHID_CREATE2,
39 UHID_INPUT2,
37};40};
38 41
39struct uhid_create_req {42struct uhid_create_req {
@@ -50,6 +53,19 @@ struct uhid_create_req { · 10 unmodified lines
50 __u32 country;53 __u32 country;
51} __attribute__((__packed__));54} __attribute__((__packed__));
52 55
56struct 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
53#define UHID_DATA_MAX 409669#define UHID_DATA_MAX 4096
54 70
55enum uhid_report_type {71enum uhid_report_type {
@@ -63,6 +79,11 @@ struct uhid_input_req { · 7 unmodified lines
63 __u16 size;79 __u16 size;
64} __attribute__((__packed__));80} __attribute__((__packed__));
65 81
82struct uhid_input2_req {
83 __u16 size;
84 __u8 data[UHID_DATA_MAX];
85} __attribute__((__packed__));
86
66struct uhid_output_req {87struct uhid_output_req {
67 __u8 data[UHID_DATA_MAX];88 __u8 data[UHID_DATA_MAX];
68 __u16 size;89 __u16 size;
@@ -100,6 +121,8 @@ struct uhid_event { · 31 unmodified lines
100 struct uhid_output_ev_req output_ev;121 struct uhid_output_ev_req output_ev;
101 struct uhid_feature_req feature;122 struct uhid_feature_req feature;
102 struct uhid_feature_answer_req feature_answer;123 struct uhid_feature_answer_req feature_answer;
124 struct uhid_create2_req create2;
125 struct uhid_input2_req input2;
103 } u;126 } u;
104} __attribute__((__packed__));127} __attribute__((__packed__));
105 128