Re: [PATCH 1/1] hid:Fix problem on GeneralTouch multi-touchscreen

From: Jiri Kosina
Date: Thu Sep 27 2012 - 05:52:43 EST


On Thu, 27 Sep 2012, GeneralTouch wrote:

> From: Xianhan Yu <aroundight77@xxxxxxxxx>
>
> Fix the touch-up no response problem on GeneralTouch twofingers
> touchscreen and modify the driver for new GeneralTouch PWT touchscreen.
>
> Signed-off-by: Xianhan Yu <aroundight77@xxxxxxxxx>

Thank you for the patch. Please find a few comments below. Please address
those and resubmit.

Also adding Henrik to CC, as he is maintainer of hid multitouch.

> ---
> drivers/hid/hid-ids.h | 1 +
> drivers/hid/hid-multitouch.c | 18 +++++++++++++++++-
> 2 files changed, 18 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/hid/hid-ids.h b/drivers/hid/hid-ids.h
> index 1dcb76f..1325695 100644
> --- a/drivers/hid/hid-ids.h
> +++ b/drivers/hid/hid-ids.h
> @@ -305,6 +305,7 @@
>
> #define USB_VENDOR_ID_GENERAL_TOUCH 0x0dfc
> #define USB_DEVICE_ID_GENERAL_TOUCH_WIN7_TWOFINGERS 0x0003
> +#define USB_DEVICE_ID_GENERAL_TOUCH_WIN8_PWT_TENFINGERS 0x0100
>
> #define USB_VENDOR_ID_GLAB 0x06c2
> #define USB_DEVICE_ID_4_PHIDGETSERVO_30 0x0038
> diff --git a/drivers/hid/hid-multitouch.c b/drivers/hid/hid-multitouch.c
> index 59c8b5c..959a892 100644
> --- a/drivers/hid/hid-multitouch.c
> +++ b/drivers/hid/hid-multitouch.c
> @@ -115,6 +115,8 @@ struct mt_device {
> #define MT_CLS_EGALAX_SERIAL 0x0104
> #define MT_CLS_TOPSEED 0x0105
> #define MT_CLS_PANASONIC 0x0106
> +#define MT_CLS_GENERALTOUCH_TWOFINGERS 0X0107
> +#define MT_CLS_GENERALTOUCH_PWT_TENFINGERS 0X0108

Please use '0x' here as a prefix. Both are correct, but the convention is
to use 0x at least in the kernel.

Also please use tabs instead of spaces to properly align with the rest of
the constants.

>
> #define MT_DEFAULT_MAXCONTACT 10
>
> @@ -215,6 +217,17 @@ static struct mt_class mt_classes[] = {
> { .name = MT_CLS_PANASONIC,
> .quirks = MT_QUIRK_NOT_SEEN_MEANS_UP,
> .maxcontacts = 4 },
> + { .name = MT_CLS_GENERALTOUCH_TWOFINGERS,
> + .quirks = MT_QUIRK_NOT_SEEN_MEANS_UP |
> + MT_QUIRK_VALID_IS_INRANGE |
> + MT_QUIRK_SLOT_IS_CONTACTNUMBER,
> + .maxcontacts = 2
> + },
> + { .name = MT_CLS_GENERALTOUCH_PWT_TENFINGERS,
> + .quirks = MT_QUIRK_NOT_SEEN_MEANS_UP |
> + MT_QUIRK_SLOT_IS_CONTACTNUMBER,
> + .maxcontacts = 10
> + },

Please use tabs as well here, to use the same formatting as the rest of
the file.

>
> { }
> };
> @@ -893,9 +906,12 @@ static const struct hid_device_id mt_devices[] = {
> USB_DEVICE_ID_ELO_TS2515) },
>
> /* GeneralTouch panel */
> - { .driver_data = MT_CLS_DUAL_INRANGE_CONTACTNUMBER,
> + { .driver_data = MT_CLS_GENERALTOUCH_TWOFINGERS,
> MT_USB_DEVICE(USB_VENDOR_ID_GENERAL_TOUCH,
> USB_DEVICE_ID_GENERAL_TOUCH_WIN7_TWOFINGERS) },
> + { .driver_data = MT_CLS_GENERALTOUCH_PWT_TENFINGERS,
> + MT_USB_DEVICE(USB_VENDOR_ID_GENERAL_TOUCH,
> + USB_DEVICE_ID_GENERAL_TOUCH_WIN8_PWT_TENFINGERS) },
>
> /* Gametel game controller */
> { .driver_data = MT_CLS_DEFAULT,

And here as well.

--
Jiri Kosina
SUSE Labs
--
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/