Thread (5 messages) 5 messages, 3 authors, 2013-07-24

Re: [PATCH] HID: multitouch: do not init reports for multitouch devices

From: <hidden>
Date: 2013-07-18 19:23:09
Also in: lkml

Hi Benjamin,
Some multitouch screens do not like to be polled for input reports.
However, the Win8 spec says that all touches should be sent during
each report, making the initialization of reports unnecessary.
The Win7 spec is less precise, but we can safely assume that when
the module is loaded (at boot), no one is touching the screen.

Add the quirk HID_QUIRK_NO_INIT_REPORTS so that we do not have to
introduce a quirk for each problematic device.
I assume you have tested thoroughly for regressions? How about odd
eGalax devices, for instance? Changes affecting existing hardware
makes me nervous. Is it so bad to add this quirk on a per-device
basis? Or perhaps turned on by default for win8 devices only?
quoted hunk ↗ jump to hunk
Signed-off-by: Benjamin Tissoires <redacted>
---
 drivers/hid/hid-multitouch.c | 9 +++++++++
 1 file changed, 9 insertions(+)
diff --git a/drivers/hid/hid-multitouch.c b/drivers/hid/hid-multitouch.c
index d99b959..197c2e6 100644
--- a/drivers/hid/hid-multitouch.c
+++ b/drivers/hid/hid-multitouch.c
@@ -957,6 +957,15 @@ static int mt_probe(struct hid_device *hdev, const struct hid_device_id *id)
 	hdev->quirks |= HID_QUIRK_NO_INPUT_SYNC;
 
 	/*
+	 * Some multitouch screens do not like to be polled for input reports.
+	 * However, the Win8 spec says that all touches should be sent during
+	 * each report, making the initialization of reports unnecessary.
+	 * The Win7 spec is less precise, but we can safely assume that when
+	 * the module is loaded (at boot), no one is touching the screen.
+	 */
+	hdev->quirks |= HID_QUIRK_NO_INIT_REPORTS;
+
+	/*
 	 * This allows the driver to handle different input sensors
 	 * that emits events through different reports on the same HID
 	 * device.
-- 
1.8.3.1
Thanks,
Henrik
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help