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

From: rydberg
Date: Thu Jul 18 2013 - 15:23:15 EST


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?

>
> Signed-off-by: Benjamin Tissoires <benjamin.tissoires@xxxxxxxxxx>
> ---
> 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
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/