blob: 644a9d9ace4fb030e03e5779b7f00e417175f2ee [file] [log] [blame]
From f568b2b255fa1857fe78f5fcec6ff75c3f2bd8cb Mon Sep 17 00:00:00 2001
From: Jongpil Jung <jongpil19.jung@samsung.corp-partner.google.com>
Date: Fri, 23 Aug 2024 14:03:16 +0900
Subject: [PATCH] CHROMIUM: HID: multitouch: skip driver reset for Zinitix
device
When host received zero length data, touch session will be reset.
In Zinitix touchpad (15e5:650e),it makes lag issue under sluggish.
We want to skip reset.
BUG=b:346917118, b:350609957
TEST=build kernel and update kernel on dut
check if touchpad works
UPSTREAM-TASK=b:361723324
Change-Id: I2bd81edfd3eba58f72fe38f03fe5e77a5cc813ea
Signed-off-by: Jongpil Jung <jongpil19.jung@samsung.corp-partner.google.com>
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/kernel/+/5808335
Reviewed-by: Lalith Rajendran <lalithkraj@google.com>
Reviewed-by: Subrata Banik <subratabanik@chromium.org>
---
drivers/hid/hid-ids.h | 2 ++
drivers/hid/hid-multitouch.c | 5 ++++-
2 files changed, 6 insertions(+), 1 deletion(-)
diff --git a/drivers/hid/hid-ids.h b/drivers/hid/hid-ids.h
index 235c9f44f75bc92b0ada45fc196fbea9e8b7df28..ab066c7223e63f71b0839a7c5d7ee51e5e3a8551 100644
--- a/drivers/hid/hid-ids.h
+++ b/drivers/hid/hid-ids.h
@@ -1476,4 +1476,6 @@
#define USB_VENDOR_ID_SIGNOTEC 0x2133
#define USB_DEVICE_ID_SIGNOTEC_VIEWSONIC_PD1011 0x0018
+#define USB_VENDOR_ID_ZINITIX 0x14e5
+
#endif
diff --git a/drivers/hid/hid-multitouch.c b/drivers/hid/hid-multitouch.c
index f53d33a156bcfd5ea72bc2a8af5eaffac4269b73..4a89d3790b8a6537d43af279c8c9358b0b540e4a 100644
--- a/drivers/hid/hid-multitouch.c
+++ b/drivers/hid/hid-multitouch.c
@@ -2331,7 +2331,10 @@ static const struct hid_device_id mt_devices[] = {
{ .driver_data = MT_CLS_WIN_8_FORCE_MULTI_INPUT_NSMU,
HID_DEVICE(BUS_I2C, HID_GROUP_MULTITOUCH_WIN_8,
USB_VENDOR_ID_ELAN, 0x32ae) },
-
+ /* Zinitix devices */
+ { .driver_data = MT_CLS_WIN_8_SKIP_RESET,
+ HID_DEVICE(HID_BUS_ANY, HID_GROUP_MULTITOUCH_WIN_8,
+ USB_VENDOR_ID_ZINITIX, 0x650e) },
/* Elitegroup panel */
{ .driver_data = MT_CLS_SERIAL,
MT_USB_DEVICE(USB_VENDOR_ID_ELITEGROUP,
--
2.47.0.199.ga7371fff76-goog