[PATCH 2/2] HID: wacom: do not detect Pad devices as joysticks

From: Benjamin Tissoires
Date: Tue Sep 13 2016 - 05:52:54 EST


Well, joydev consider our Pad devices as joysticks and associate a
/dev/input/jsX node for them.

The problem is that it consider the ABS_X value as 0, and sends some
spurious joystick events saying the X axis is full left (Y too, but full
up). Given that we are basically screwed, add one more BTN which tells
joydev to ignore the Pad device and doesn't interfere with the rest of
the udev rules and the processing.

Signed-off-by: Benjamin Tissoires <benjamin.tissoires@xxxxxxxxxx>
---
drivers/hid/wacom_wac.c | 3 +++
1 file changed, 3 insertions(+)

diff --git a/drivers/hid/wacom_wac.c b/drivers/hid/wacom_wac.c
index 8fd115f..498f4a8 100644
--- a/drivers/hid/wacom_wac.c
+++ b/drivers/hid/wacom_wac.c
@@ -2920,6 +2920,9 @@ int wacom_setup_pad_input_capabilities(struct input_dev *input_dev,
/* kept for making udev and libwacom accepting the pad */
__set_bit(BTN_STYLUS, input_dev->keybit);

+ /* added to be ignored by joydev */
+ __set_bit(BTN_TOOL_PEN, input_dev->keybit);
+
wacom_setup_numbered_buttons(input_dev, features->numbered_buttons);

switch (features->type) {
--
2.7.4