[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <54b4b55c-ef29-40ae-a576-0c0b35ea9625@kylinos.cn>
Date: Thu, 18 Sep 2025 22:05:50 +0800
From: zhangheng <zhangheng@...inos.cn>
To: Terry Junge <linuxhid@...micgizmosystems.com>,
Staffan Melin <staffan.melin@...illator.se>,
Salvatore Bonaccorso <carnil@...ian.org>
Cc: Jiri Kosina <jkosina@...e.com>, Benjamin Tissoires <bentiss@...nel.org>,
linux-input@...r.kernel.org, linux-kernel@...r.kernel.org,
regressions@...ts.linux.dev, stable@...r.kernel.org, 1114557@...s.debian.org
Subject: Re: [regression] 1a8953f4f774 ("HID: Add IGNORE quirk for
SMARTLINKTECHNOLOGY") causes issue with ID 4c4a:4155 Jieli Technology USB
Composite Device
It's interesting that I found another USB device with the same ID, but
it's a USB headphone, device descriptors in headphone.txt
Microphone.txt is the device descriptor for SMARTLINKTechnology.
I was originally planning to differentiate according to bcdHID, but
there is hdev ->version=0x100, therefore, I created the v3 patch.
The microphone device is normal, but I'm not sure if your touchscreen
function is working properly.
[ 67.417805] usb 1-3.4.2: new full-speed USB device number 11 using
xhci_hcd
[ 67.566700] usb 1-3.4.2: New USB device found, idVendor=4c4a,
idProduct=4155, bcdDevice= 1.00
[ 67.566707] usb 1-3.4.2: New USB device strings: Mfr=1, Product=2,
SerialNumber=3
[ 67.566712] usb 1-3.4.2: Product: USB Composite Device
[ 67.566717] usb 1-3.4.2: Manufacturer: SmartlinkTechnology
[ 67.566721] usb 1-3.4.2: SerialNumber: 20201111000001
[ 67.568816] DEBUG: drivers/hid/hid-quirks.c 1227 hid_gets_squirk
hdev->version = 0x100
[ 67.568827] DEBUG: drivers/hid/hid-quirks.c 1025 hid_ignore
hdev->version = 0x100
[ 67.568832] DEBUG: drivers/hid/hid-quirks.c 1227 hid_gets_squirk
hdev->version = 0x100
[ 67.569256] DEBUG: drivers/hid/hid-quirks.c 1227 hid_gets_squirk
hdev->version = 0x201
[ 39.692821] DEBUG: drivers/hid/usbhid/hid-core.c 985 usbhid_parse
dev->serial = 20201111000001
Later, I thought of using a serial number, Later, I thought of using a
serial number, but the headphone serial number was NULL,
and printing it directly would trigger OOPs, at present, I can only
consider distinguishing between manufacturers, this is v4 patch.
If there are better ideas or patches, they can also be provided. The
microphone device will arrive in a few days, and I will verify it then.
在 2025/9/16 7:06, Terry Junge 写道:
>
> On 9/15/25 1:37 AM, zhangheng wrote:
>> Apply this new patch and test the kernel again. I don't have the original mic device in my hands, which means I have to wait for a response for testing now.
>>
>> You can test it first, and the other mic device also needs to be retested
> Your patch will not work as you expect for two reasons.
>
> if (hid_match_id(hdev, hid_ignore_list) ||
> (hid_match_id(hdev, hid_ignore_mic) && (hdev->version > 1.1)))
> quirks |= HID_QUIRK_IGNORE;
>
> hdev->version is U32 not float. Version (bcdDevice) 1.00 would be 0x0100. The value 1.1 is probably cast to 0x0001.
>
> Second, both devices have identical VID, PID, bcdDevice, and Product names.
>
> [ 563.104908] usb 1-1.4.1.2: New USB device found, idVendor=4c4a, idProduct=4155, bcdDevice= 1.00
> [ 563.104910] usb 1-1.4.1.2: New USB device strings: Mfr=1, Product=2, SerialNumber=3
> [ 563.104911] usb 1-1.4.1.2: Product: USB Composite Device
> [ 563.104912] usb 1-1.4.1.2: Manufacturer: SmartlinkTechnology
> [ 563.104913] usb 1-1.4.1.2: SerialNumber: 20201111000001
>
> [ 10.451534] usb 3-3: New USB device found, idVendor=4c4a, idProduct=4155, bcdDevice= 1.00
> [ 10.451540] usb 3-3: New USB device strings: Mfr=1, Product=2, SerialNumber=3
> [ 10.451543] usb 3-3: Product: USB Composite Device
> [ 10.451545] usb 3-3: Manufacturer: Jieli Technology
> [ 10.451546] usb 3-3: SerialNumber: FFFFFFFFFFFFFFFF
>
> If you could get the descriptors for the microphone device, it would be helpful.
>
> Thanks,
> Terry
>
>> 在 2025/9/13 21:11, Staffan Melin 写道:
>>> Ah, thanks, I get it now :)
>>>
>>> So I got 6.16.7, and the patch applied without problems.
>>>
>>> But no luck, the same results as before: touchscreen not working, xinput --list not showing the Jieli touchscreen. dmesg shows the same as before, too.
>>>
>>> Best regards,
>>>
>>> Staffan
>>>
>>>
>>> On 2025-09-13 10:55, Salvatore Bonaccorso wrote:
>>>> Hi Staffan,
>>>>
>>>> chiming in hopefully it is of help.
>>>>
>>>> Now really with the patch ...
>>>>
>>>> On Fri, Sep 12, 2025 at 09:57:04PM +0200, Staffan Melin wrote:
>>>>> Thank you,
>>>>>
>>>>> I tried to apply this patch to 6.12.39, the first problematic kernel, as
>>>>> well as 6.12.41, the first bad I tried, and on both I got an error message:
>>>>>
>>>>> Applying: HID: quirks: Add device descriptor for 4c4a:4155
>>>>> error: patch failed: drivers/hid/hid-quirks.c:1068
>>>>> error: drivers/hid/hid-quirks.c: patch does not apply
>>>>> Patch failed at 0001 HID: quirks: Add device descriptor for 4c4a:4155
>>>>>
>>>>> To which kernel version should I apply the patch?
>>>> As the deveopment goes from mainline then down to stable series, the
>>>> fix needs to be developed first for mainline. So the patch is targeted
>>>> there.
>>>>
>>>> But please find attached an updated patch which hopefully should work
>>>> which resolved the context changes on top of 6.12.47.
>>>>
>>>> But ideally you can provide a Tested-by on zhangheng's mainline patch
>>>> to get things rolling as needed.
>>>>
>>>> Regards,
>>>> Salvatore
Content of type "text/html" skipped
View attachment "v3-0001-HID-quirks-Add-device-descriptor-for-4c4a-4155.patch" of type "text/plain" (2504 bytes)
View attachment "v4-0001-HID-quirks-Add-device-descriptor-for-4c4a-4155.patch" of type "text/plain" (2031 bytes)
View attachment "headphone.txt" of type "text/plain" (9696 bytes)
View attachment "microphone.txt" of type "text/plain" (7021 bytes)
Powered by blists - more mailing lists