diff options
Diffstat (limited to 'meta/recipes-devtools/qemu/qemu/wacom.patch')
-rw-r--r-- | meta/recipes-devtools/qemu/qemu/wacom.patch | 16 |
1 files changed, 8 insertions, 8 deletions
diff --git a/meta/recipes-devtools/qemu/qemu/wacom.patch b/meta/recipes-devtools/qemu/qemu/wacom.patch index fd1b4a6963..cd06aa4ac6 100644 --- a/meta/recipes-devtools/qemu/qemu/wacom.patch +++ b/meta/recipes-devtools/qemu/qemu/wacom.patch | |||
@@ -1,7 +1,7 @@ | |||
1 | The USB wacom device is missing a HID descriptor which causes it | 1 | The USB wacom device is missing a HID descriptor which causes it |
2 | to fail to operate with recent kernels (e.g. 3.17). | 2 | to fail to operate with recent kernels (e.g. 3.17). |
3 | 3 | ||
4 | This patch adds a HID desriptor to the device, based upon one from | 4 | This patch adds a HID desriptor to the device, based upon one from |
5 | real wcom device. | 5 | real wcom device. |
6 | 6 | ||
7 | Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> | 7 | Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> |
@@ -16,12 +16,12 @@ Index: qemu-2.1.0/hw/usb/dev-wacom.c | |||
16 | @@ -68,6 +68,89 @@ | 16 | @@ -68,6 +68,89 @@ |
17 | [STR_SERIALNUMBER] = "1", | 17 | [STR_SERIALNUMBER] = "1", |
18 | }; | 18 | }; |
19 | 19 | ||
20 | +static const uint8_t qemu_tablet_hid_report_descriptor[] = { | 20 | +static const uint8_t qemu_tablet_hid_report_descriptor[] = { |
21 | + 0x05, 0x01, /* Usage Page (Generic Desktop) */ | 21 | + 0x05, 0x01, /* Usage Page (Generic Desktop) */ |
22 | + 0x09, 0x02, /* Usage (Mouse) */ | 22 | + 0x09, 0x02, /* Usage (Mouse) */ |
23 | + 0xa1, 0x01, /* Collection (Application) */ | 23 | + 0xa1, 0x01, /* Collection (Application) */ |
24 | + 0x85, 0x01, /* Report ID (1) */ | 24 | + 0x85, 0x01, /* Report ID (1) */ |
25 | + 0x09, 0x01, /* Usage (Pointer) */ | 25 | + 0x09, 0x01, /* Usage (Pointer) */ |
26 | + 0xa1, 0x00, /* Collection (Physical) */ | 26 | + 0xa1, 0x00, /* Collection (Physical) */ |
27 | + 0x05, 0x09, /* Usage Page (Button) */ | 27 | + 0x05, 0x09, /* Usage Page (Button) */ |
@@ -48,7 +48,7 @@ Index: qemu-2.1.0/hw/usb/dev-wacom.c | |||
48 | + 0x05, 0x0d, /* Usage Page (Digitizer) */ | 48 | + 0x05, 0x0d, /* Usage Page (Digitizer) */ |
49 | + 0x09, 0x01, /* Usage (Digitizer) */ | 49 | + 0x09, 0x01, /* Usage (Digitizer) */ |
50 | + 0xa1, 0x01, /* Collection (Application) */ | 50 | + 0xa1, 0x01, /* Collection (Application) */ |
51 | + 0x85, 0x02, /* Report ID (2) */ | 51 | + 0x85, 0x02, /* Report ID (2) */ |
52 | + 0xa1, 0x00, /* Collection (Physical) */ | 52 | + 0xa1, 0x00, /* Collection (Physical) */ |
53 | + 0x06, 0x00, 0xff, /* Usage Page (Vendor 0xff00) */ | 53 | + 0x06, 0x00, 0xff, /* Usage Page (Vendor 0xff00) */ |
54 | + 0x09, 0x01, /* Usage (Digitizer) */ | 54 | + 0x09, 0x01, /* Usage (Digitizer) */ |
@@ -59,14 +59,14 @@ Index: qemu-2.1.0/hw/usb/dev-wacom.c | |||
59 | + 0x81, 0x02, /* Input (Data, Variable, Absolute) */ | 59 | + 0x81, 0x02, /* Input (Data, Variable, Absolute) */ |
60 | + 0xc0, /* End Collection */ | 60 | + 0xc0, /* End Collection */ |
61 | + 0x09, 0x01, /* Usage (Digitizer) */ | 61 | + 0x09, 0x01, /* Usage (Digitizer) */ |
62 | + 0x85, 0x02, /* Report ID (2) */ | 62 | + 0x85, 0x02, /* Report ID (2) */ |
63 | + 0x95, 0x01, /* Report Count (1) */ | 63 | + 0x95, 0x01, /* Report Count (1) */ |
64 | + 0xb1, 0x02, /* FEATURE (2) */ | 64 | + 0xb1, 0x02, /* FEATURE (2) */ |
65 | + 0xc0, /* End Collection */ | 65 | + 0xc0, /* End Collection */ |
66 | + 0x06, 0x00, 0xff, /* Usage Page (Vendor 0xff00) */ | 66 | + 0x06, 0x00, 0xff, /* Usage Page (Vendor 0xff00) */ |
67 | + 0x09, 0x01, /* Usage (Digitizer) */ | 67 | + 0x09, 0x01, /* Usage (Digitizer) */ |
68 | + 0xa1, 0x01, /* Collection (Application) */ | 68 | + 0xa1, 0x01, /* Collection (Application) */ |
69 | + 0x85, 0x02, /* Report ID (2) */ | 69 | + 0x85, 0x02, /* Report ID (2) */ |
70 | + 0x05, 0x0d, /* Usage Page (Digitizer) */ | 70 | + 0x05, 0x0d, /* Usage Page (Digitizer) */ |
71 | + 0x09, 0x22, /* Usage (Finger) */ | 71 | + 0x09, 0x22, /* Usage (Finger) */ |
72 | + 0xa1, 0x00, /* Collection (Physical) */ | 72 | + 0xa1, 0x00, /* Collection (Physical) */ |
@@ -95,7 +95,7 @@ Index: qemu-2.1.0/hw/usb/dev-wacom.c | |||
95 | + 0x75, 0x08, /* Report Size (8) */ | 95 | + 0x75, 0x08, /* Report Size (8) */ |
96 | + 0x95, 0x0d, /* Report Count (13) */ | 96 | + 0x95, 0x0d, /* Report Count (13) */ |
97 | + 0x81, 0x02, /* Input (Data, Variable, Absolute) */ | 97 | + 0x81, 0x02, /* Input (Data, Variable, Absolute) */ |
98 | + 0xc0, /* End Collection */ | 98 | + 0xc0, /* End Collection */ |
99 | + 0xc0, /* End Collection */ | 99 | + 0xc0, /* End Collection */ |
100 | +}; | 100 | +}; |
101 | + | 101 | + |
@@ -114,7 +114,7 @@ Index: qemu-2.1.0/hw/usb/dev-wacom.c | |||
114 | }, | 114 | }, |
115 | @@ -265,6 +350,15 @@ | 115 | @@ -265,6 +350,15 @@ |
116 | } | 116 | } |
117 | 117 | ||
118 | switch (request) { | 118 | switch (request) { |
119 | + case InterfaceRequest | USB_REQ_GET_DESCRIPTOR: | 119 | + case InterfaceRequest | USB_REQ_GET_DESCRIPTOR: |
120 | + switch (value >> 8) { | 120 | + switch (value >> 8) { |