HID: wacom: Fix ABS_MISC reporting for Cintiq Companion 2
authorJason Gerecke <killertofu@gmail.com>
Mon, 2 Nov 2015 23:41:13 +0000 (15:41 -0800)
committerJiri Kosina <jkosina@suse.cz>
Tue, 3 Nov 2015 13:36:23 +0000 (14:36 +0100)
The pad handling code introduced for the Cintiq Companion 2 (f7acb55)
looks at the wrong bytes in the report when deciding whether ABS_MISC
should be sent. This does not cause any issues with the X driver now
that the pen and pad have been split to separate devices, but is
incorrect and has caused issues when backporting to distros with pre-
3.17 kernels.

Signed-off-by: Jason Gerecke <jason.gerecke@wacom.com>
Reviewed-by: Ping Cheng <pingc@wacom.com>
Signed-off-by: Jiri Kosina <jkosina@suse.cz>
drivers/hid/wacom_wac.c

index 453da6d5c58347189626faf863b12ae8c694c24d..9db6a8b1150cbe53cc287d8fe0d3eca5bed4e4f1 100644 (file)
@@ -966,7 +966,7 @@ static int wacom_intuos_irq(struct wacom_wac *wacom)
                        input_report_key(input, BTN_A, (data[2] & 0x80));  /* Down   */
                        input_report_key(input, BTN_0, (data[1] & 0x01));  /* Center */
 
-                       if (data[4] | (data[3] & 0x01)) {
+                       if (data[2] | (data[1] & 0x07)) {
                                input_report_abs(input, ABS_MISC, PAD_DEVICE_ID);
                        } else {
                                input_report_abs(input, ABS_MISC, 0);