diff options
author | Benjamin Tissoires <benjamin.tissoires@enac.fr> | 2010-12-14 11:38:18 +0100 |
---|---|---|
committer | Jiri Kosina <jkosina@suse.cz> | 2010-12-14 11:40:50 +0100 |
commit | ad6d42670279da8f33f633f8a96a67cd7ef3b1da (patch) | |
tree | 081e430f4db77e93c921186fc0c55118fc0f8f83 | |
parent | 6a66bbd693c12f71697c61207aa18bc5a12da0ab (diff) | |
download | linux-stable-ad6d42670279da8f33f633f8a96a67cd7ef3b1da.tar.gz linux-stable-ad6d42670279da8f33f633f8a96a67cd7ef3b1da.tar.bz2 linux-stable-ad6d42670279da8f33f633f8a96a67cd7ef3b1da.zip |
HID: hid-mosart: ignore buttons report
This commit allows the device to be recognized as a touchscreen, and not a
touchpad by xf86-input-evdev.
The device has 2 modes. The first one is an emulation of a touchscreen by
sending left and right button, and the second mode is the one used in
dual-touch (sending trackingID, touch and else).
That's why there is a hid report containing left and right buttons
(9000001 and 9000002). The point is that xorg relies on these fields to
determine if it's a touchpad or a touchscreen.
Clearing the report (return -1) makes xorg detecting it out of the box
as a quite pleasant (dual)touchscreen.
Signed-off-by: Benjamin Tissoires <benjamin.tissoires@enac.fr>
Acked-by: Chase Douglas <chase.douglas@canonical.com>
Signed-off-by: Jiri Kosina <jkosina@suse.cz>
-rw-r--r-- | drivers/hid/hid-mosart.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/hid/hid-mosart.c b/drivers/hid/hid-mosart.c index ac5421d568f1..acd8a4983c09 100644 --- a/drivers/hid/hid-mosart.c +++ b/drivers/hid/hid-mosart.c @@ -90,6 +90,10 @@ static int mosart_input_mapping(struct hid_device *hdev, struct hid_input *hi, case 0xff000000: /* ignore HID features */ return -1; + + case HID_UP_BUTTON: + /* ignore buttons */ + return -1; } return 0; |