HID: multitouch: Add quirk for Hantick 5288 touchpad
authorYouwan Wang <youwan@nfschina.com>
Mon, 16 Dec 2024 02:18:01 +0000 (10:18 +0800)
committerJiri Kosina <jkosina@suse.com>
Thu, 9 Jan 2025 09:01:13 +0000 (10:01 +0100)
This device sometimes doesn't send touch release signals when moving
from >=2 fingers to <2 fingers. Using MT_QUIRK_NOT_SEEN_MEANS_UP instead
of MT_QUIRK_ALWAYS_VALID makes sure that no touches become stuck.

Signed-off-by: Enze Xie <enze@nfschina.com>
Signed-off-by: Youwan Wang <youwan@nfschina.com>
Signed-off-by: Jiri Kosina <jkosina@suse.com>
drivers/hid/hid-multitouch.c

index 42c0bd9d2f31e333aec8bb902b8c4a6b80fb511d..82900857bfd87c7cb698ea70cea264e2725dd884 100644 (file)
@@ -2314,6 +2314,11 @@ static const struct hid_device_id mt_devices[] = {
                HID_DEVICE(HID_BUS_ANY, HID_GROUP_ANY, USB_VENDOR_ID_SIS_TOUCH,
                        HID_ANY_ID) },
 
+       /* Hantick */
+       { .driver_data = MT_CLS_NSMU,
+               HID_DEVICE(BUS_I2C, HID_GROUP_MULTITOUCH_WIN_8,
+                          I2C_VENDOR_ID_HANTICK, I2C_PRODUCT_ID_HANTICK_5288) },
+
        /* Generic MT device */
        { HID_DEVICE(HID_BUS_ANY, HID_GROUP_MULTITOUCH, HID_ANY_ID, HID_ANY_ID) },