On Wed, 9 Mar 2011, Benjamin Tissoires wrote: > Ouch, sorry for that. In fact, hid-mosart is buggy since its creation > for the relative/absolute behavior you are observing. > A patch corrects this and has been included in 2.6.38, but it has not > been backported to 2.6.37. > The name of the patch is "HID: hid-mosart: ignore buttons report". > > Jiri, Greg, do you think we can include this in the stable queue? Absolutely. Adding stable@xxxxxxxxxx to CC: and inlcuding the patch below. [ upstream commit ad6d42670279d ] From: Benjamin Tissoires <benjamin.tissoires@xxxxxxx> Subject: [PATCH] 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@xxxxxxx> Acked-by: Chase Douglas <chase.douglas@xxxxxxxxxxxxx> Signed-off-by: Jiri Kosina <jkosina@xxxxxxx> --- 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 ac5421d..acd8a49 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; -- 1.7.3.1 -- To unsubscribe from this list: send the line "unsubscribe linux-input" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html