[PATCH] HID: multitouch: new class MT_CLS_EGALAX_P80H84
From: Ian Ray
Date: Tue Feb 17 2026 - 06:52:15 EST
Add class MT_CLS_EGALAX_P80H84 to describe eGalaxy P80H84 touchscreen.
The eGalaxy P80H84 touchscreen reports 'HID_GROUP_MULTITOUCH_WIN_8' and
this caused the generic 'MT_CLS_WIN_8' class to be detected.
The new class does _not_ export all inputs, since doing so results in a
visible mouse cursor when only the touchscreen is connected.
The visible mouse cursor was exposed by c23e2043d5f7 ("HID: multitouch:
do not filter mice nodes").
Before this change:
-- >8 --
kernel: input: eGalax Inc. eGalaxTouch P80H84 2537 v00_T3 k4.10.139 as /devices/platform/soc/2100000.bus/2184000.usb/ci_hdrc.0/usb1/1-1/1-1.4/1-1.4:1.0/0003:0EEF:C002.0001/input/input1
kernel: input: eGalax Inc. eGalaxTouch P80H84 2537 v00_T3 k4.10.139 UNKNOWN as /devices/platform/soc/2100000.bus/2184000.usb/ci_hdrc.0/usb1/1-1/1-1.4/1-1.4:1.0/0003:0EEF:C002.0001/input/input3
kernel: hid-multitouch 0003:0EEF:C002.0001: input,hidraw0: USB HID v1.11 Pointer [eGalax Inc. eGalaxTouch P80H84 2537 v00_T3 k4.10.139] on usb-ci_hdrc.0-1.4/input0
-- >8 --
After this change:
-- >8 --
kernel: input: eGalax Inc. eGalaxTouch P80H84 2537 v00_T3 k4.10.139 as /devices/platform/soc/2100000.bus/2184000.usb/ci_hdrc.0/usb1/1-1/1-1.4/1-1.4:1.0/0003:0EEF:C002.0001/input/input1
kernel: hid-multitouch 0003:0EEF:C002.0001: input,hidraw0: USB HID v1.11 Pointer [eGalax Inc. eGalaxTouch P80H84 2537 v00_T3 k4.10.139] on usb-ci_hdrc.0-1.4/input0
-- >8 --
Fixes: f9e82295eec1 ("HID: multitouch: add eGalaxTouch P80H84 support")
Signed-off-by: Ian Ray <ian.ray@xxxxxxxxxxxxxxxx>
---
drivers/hid/hid-multitouch.c | 11 +++++++++--
1 file changed, 9 insertions(+), 2 deletions(-)
diff --git a/drivers/hid/hid-multitouch.c b/drivers/hid/hid-multitouch.c
index 7daa8f6d8187..8052b35bfd7d 100644
--- a/drivers/hid/hid-multitouch.c
+++ b/drivers/hid/hid-multitouch.c
@@ -233,6 +233,7 @@ static void mt_post_parse(struct mt_device *td, struct mt_application *app);
#define MT_CLS_SMART_TECH 0x0113
#define MT_CLS_APPLE_TOUCHBAR 0x0114
#define MT_CLS_YOGABOOK9I 0x0115
+#define MT_CLS_EGALAX_P80H84 0x0116
#define MT_CLS_SIS 0x0457
#define MT_DEFAULT_MAXCONTACT 10
@@ -438,6 +439,11 @@ static const struct mt_class mt_classes[] = {
MT_QUIRK_YOGABOOK9I,
.export_all_inputs = true
},
+ { .name = MT_CLS_EGALAX_P80H84,
+ .quirks = MT_QUIRK_ALWAYS_VALID |
+ MT_QUIRK_IGNORE_DUPLICATES |
+ MT_QUIRK_CONTACT_CNT_ACCURATE,
+ },
{ }
};
@@ -2215,8 +2221,9 @@ static const struct hid_device_id mt_devices[] = {
{ .driver_data = MT_CLS_EGALAX_SERIAL,
MT_USB_DEVICE(USB_VENDOR_ID_DWAV,
USB_DEVICE_ID_DWAV_EGALAX_MULTITOUCH_C000) },
- { .driver_data = MT_CLS_EGALAX,
- MT_USB_DEVICE(USB_VENDOR_ID_DWAV,
+ { .driver_data = MT_CLS_EGALAX_P80H84,
+ HID_DEVICE(HID_BUS_ANY, HID_GROUP_MULTITOUCH_WIN_8,
+ USB_VENDOR_ID_DWAV,
USB_DEVICE_ID_DWAV_EGALAX_MULTITOUCH_C002) },
/* Elan devices */
--
2.49.0