[PATCH v4] HID: quirks: Change manufacturer for 4c4a:4155

zhangheng posted 1 patch 3 months, 2 weeks ago
drivers/hid/hid-ids.h    |  4 ++--
drivers/hid/hid-quirks.c | 13 ++++++++++++-
2 files changed, 14 insertions(+), 3 deletions(-)
[PATCH v4] HID: quirks: Change manufacturer for 4c4a:4155
Posted by zhangheng 3 months, 2 weeks ago
From 01be0e31b4fd991f955f77ec06d0c8b7a6d0fb13 Mon Sep 17 00:00:00 2001
From: Zhang Heng <zhangheng@kylinos.cn>
Date: Fri, 12 Sep 2025 20:38:18 +0800
Subject: [PATCH v4] HID: quirks: Change manufacturer for 4c4a:4155

Based on available evidence, the USB ID 4c4a:4155 used by multiple
devices has been attributed to Jieli. The commit 1a8953f4f774
("HID: Add IGNORE quirk for SMARTLINKTECHNOLOGY") affected touchscreen
functionality. Added checks for manufacturer and serial number to
maintain microphone compatibility, enabling both devices to function
properly.

Fixes: 1a8953f4f774 ("HID: Add IGNORE quirk for SMARTLINKTECHNOLOGY")
Cc: stable@vger.kernel.org
Tested-by: staffan.melin@oscillator.se
Signed-off-by: Zhang Heng <zhangheng@kylinos.cn>
---
Changes in v4:
-- add serial number. Since I saw JIELI using identical IDs for different
devices with distinct serial numbers, I worry SMARTLINKTECHNOLOGY might
reuse this ID for touchscreens. Adding serial number verification provides
extra insurance.
 drivers/hid/hid-ids.h    |  4 ++--
 drivers/hid/hid-quirks.c | 13 ++++++++++++-
 2 files changed, 14 insertions(+), 3 deletions(-)

diff --git a/drivers/hid/hid-ids.h b/drivers/hid/hid-ids.h
index 66f05d02cfca..5e6e87487205 100644
--- a/drivers/hid/hid-ids.h
+++ b/drivers/hid/hid-ids.h
@@ -1546,7 +1546,7 @@
 #define USB_VENDOR_ID_SIGNOTEC			0x2133
 #define USB_DEVICE_ID_SIGNOTEC_VIEWSONIC_PD1011	0x0018
 
-#define USB_VENDOR_ID_SMARTLINKTECHNOLOGY              0x4c4a
-#define USB_DEVICE_ID_SMARTLINKTECHNOLOGY_4155         0x4155
+#define USB_VENDOR_ID_JIELI_SDK_DEFAULT		0x4c4a
+#define USB_DEVICE_ID_JIELI_SDK_4155		0x4155
 
 #endif
diff --git a/drivers/hid/hid-quirks.c b/drivers/hid/hid-quirks.c
index bcd4bccf1a7c..22760ac50f2d 100644
--- a/drivers/hid/hid-quirks.c
+++ b/drivers/hid/hid-quirks.c
@@ -915,7 +915,6 @@ static const struct hid_device_id hid_ignore_list[] = {
 #endif
 	{ HID_USB_DEVICE(USB_VENDOR_ID_YEALINK, USB_DEVICE_ID_YEALINK_P1K_P4K_B2K) },
 	{ HID_USB_DEVICE(USB_VENDOR_ID_QUANTA, USB_DEVICE_ID_QUANTA_HP_5MP_CAMERA_5473) },
-	{ HID_USB_DEVICE(USB_VENDOR_ID_SMARTLINKTECHNOLOGY, USB_DEVICE_ID_SMARTLINKTECHNOLOGY_4155) },
 	{ }
 };
 
@@ -1064,6 +1063,18 @@ bool hid_ignore(struct hid_device *hdev)
 					     strlen(elan_acpi_id[i].id)))
 					return true;
 		break;
+	case USB_VENDOR_ID_JIELI_SDK_DEFAULT:
+		/*
+		 * Multiple USB devices with identical IDs (mic & touchscreen).
+		 * The touch screen requires hid core processing, but the
+		 * microphone does not. They can be distinguished by manufacturer
+		 * and serial number.
+		 */
+		if (hdev->product == USB_DEVICE_ID_JIELI_SDK_4155 &&
+		    strncmp(hdev->name, "SmartlinkTechnology", 19) == 0 &&
+		    strncmp(hdev->uniq, "20201111000001", 14) == 0)
+			return true;
+		break;
 	}
 
 	if (hdev->type == HID_TYPE_USBMOUSE &&
-- 
2.47.1

Re: [PATCH v4] HID: quirks: Change manufacturer for 4c4a:4155
Posted by Jiri Kosina 3 months, 1 week ago
I have updated the shortlog to be a little bit more descriptive and 
applied, thanks.

-- 
Jiri Kosina
SUSE Labs
Re: [PATCH v4] HID: quirks: Change manufacturer for 4c4a:4155
Posted by Terry Junge 3 months, 2 weeks ago
for v4-0001-HID-quirks-Change-manufacturer-for-4c4a-4155.patch

Reviewed-by: Terry Junge <linuxhid@cosmicgizmosystems.com>

On 10/25/2025 8:34 PM, zhangheng wrote:
Re: [PATCH v4] HID: quirks: Change manufacturer for 4c4a:4155
Posted by Staffan Melin 3 months, 2 weeks ago
Thank you,
 
this patch also works fine on my GPD DUO.
 
Tested-by: Staffan Melin, staffan.melin@oscillator.se
 
Best regards,
 
Staffan Melin
 
"zhangheng" zhangheng@kylinos.cn – 26 oktober 2025 kl. 04:35
> 
> 
>