Re: FWD: Holtek mouse stopped working after kernel upgrade from 5.15.7 to 5.15.8

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 17.12.21 09:13, Benjamin Tissoires wrote:
> Hi,
> 
> On 12/17/21 08:00, Thorsten Leemhuis wrote:
>> Hi, this is your Linux kernel regression tracker speaking.
>>
>> I noticed a bugreport from Tomasz C. (CCed) that sounds a lot like a
>> regression between v5.15.7..v5.15.8 and likely better dealt with by
>> email:
>>
>> To quote from: https://bugzilla.kernel.org/show_bug.cgi?id=215341
>>
>>> After updating kernel from 5.15.7 to 5.15.8 on ArchLinux
>>> distribution, Holtek USB mouse stopped working.
>>> Exact model:
>>> 04d9:a067 Holtek Semiconductor, Inc. USB Gaming Mouse
>>>
>>> The dmesg output for this device from kernel version 5.15.8:
>>>
>>> [    2.501958] usb 2-1.2.3: new full-speed USB device number 6 using
>>> ehci-pci
>>> [    2.624369] usb 2-1.2.3: New USB device found, idVendor=04d9,
>>> idProduct=a067, bcdDevice= 1.16
>>> [    2.624376] usb 2-1.2.3: New USB device strings: Mfr=1, Product=2,
>>> SerialNumber=0
>>> [    2.624379] usb 2-1.2.3: Product: USB Gaming Mouse
>>> [    2.624382] usb 2-1.2.3: Manufacturer: Holtek
>>>
>>> After disconnecting and connecting the USB:
>>>
>>> [   71.976731] usb 2-1.2.3: USB disconnect, device number 6
>>> [   75.013021] usb 2-1.2.3: new full-speed USB device number 8 using
>>> ehci-pci
>>> [   75.135865] usb 2-1.2.3: New USB device found, idVendor=04d9,
>>> idProduct=a067, bcdDevice= 1.16
>>> [   75.135873] usb 2-1.2.3: New USB device strings: Mfr=1, Product=2,
>>> SerialNumber=0
>>> [   75.135877] usb 2-1.2.3: Product: USB Gaming Mouse
>>> [   75.135880] usb 2-1.2.3: Manufacturer: Holtek
>>>
>>>
>>> On kernel version 5.15.7:
>>>
>>> [    2.280515] usb 2-1.2.3: new full-speed USB device number 6 using
>>> ehci-pci
>>> [    2.379777] usb 2-1.2.3: New USB device found, idVendor=04d9,
>>> idProduct=a067, bcdDevice= 1.16
>>> [    2.379784] usb 2-1.2.3: New USB device strings: Mfr=1, Product=2,
>>> SerialNumber=0
>>> [    2.379787] usb 2-1.2.3: Product: USB Gaming Mouse
>>> [    2.379790] usb 2-1.2.3: Manufacturer: Holtek
>>> [    2.398578] input: Holtek USB Gaming Mouse as
>>> /devices/pci0000:00/0000:00:1d.0/usb2/2-1/2-1.2/2-1.2.3/2-1.2.3:1.0/0003:04D9:A067.0005/input/input11
>>>
>>> [    2.450977] holtek_mouse 0003:04D9:A067.0005: input,hidraw4: USB
>>> HID v1.10 Keyboard [Holtek USB Gaming Mouse] on
>>> usb-0000:00:1d.0-1.2.3/input0
>>> [    2.451013] holtek_mouse 0003:04D9:A067.0006: Fixing up report
>>> descriptor
>>> [    2.452189] input: Holtek USB Gaming Mouse as
>>> /devices/pci0000:00/0000:00:1d.0/usb2/2-1/2-1.2/2-1.2.3/2-1.2.3:1.1/0003:04D9:A067.0006/input/input12
>>>
>>> [    2.468510] usb 2-1.2.4: new high-speed USB device number 7 using
>>> ehci-pci
>>> [    2.503913] holtek_mouse 0003:04D9:A067.0006:
>>> input,hiddev96,hidraw5: USB HID v1.10 Mouse [Holtek USB Gaming Mouse]
>>> on usb-0000:00:1d.0-1.2.3/input1
>>> [    2.504105] holtek_mouse 0003:04D9:A067.0007: hiddev97,hidraw6:
>>> USB HID v1.10 Device [Holtek USB Gaming Mouse] on
>>> usb-0000:00:1d.0-1.2.3/input2
>>>
>>> Rolling back the kernel to version 5.15.7 solves the problem.
> 
> Oops, sorry. An overlook from a precedent commit.
> 
> Can you confirm the following patch works?

Tomasz, could you give it a try please?

> (and also tell me if the
> links I put are sufficient for regzbot)

They should be, many thx for placing them. But FWIW, by ...

> ---
> rom 8f38596f2620c4b22ff9e2622917ac2b69aa8320 Mon Sep 17 00:00:00 2001
> From: Benjamin Tissoires <benjamin.tissoires@xxxxxxxxxx>
> Date: Fri, 17 Dec 2021 09:03:32 +0100
> Subject: [PATCH] HID: holtek: fix mouse probing
> 
> An overlook from the previous commit: we don't even parse or start the
> device, meaning that the device is not presented to user space.
> 
> Fixes: 93020953d0fa ("HID: check for valid USB device for many HID
> drivers")
> Link: https://bugzilla.kernel.org/show_bug.cgi?id=215341
> Link:
> https://lore.kernel.org/regressions/e4efbf13-bd8d-0370-629b-6c80c0044b15@xxxxxxxxxxxxx/

...kernel standards you should use the kernel.org redirector here
instead by doing a a s!regressions!r! (regzbot doesn't care; I'll
improve my text templates to make this more obvious).

Ciao, Thorsten

> Signed-off-by: Benjamin Tissoires <benjamin.tissoires@xxxxxxxxxx>
> ---
>  drivers/hid/hid-holtek-mouse.c | 15 +++++++++++++++
>  1 file changed, 15 insertions(+)
> 
> diff --git a/drivers/hid/hid-holtek-mouse.c
> b/drivers/hid/hid-holtek-mouse.c
> index b7172c48ef9f..7c907939bfae 100644
> --- a/drivers/hid/hid-holtek-mouse.c
> +++ b/drivers/hid/hid-holtek-mouse.c
> @@ -65,8 +65,23 @@ static __u8 *holtek_mouse_report_fixup(struct
> hid_device *hdev, __u8 *rdesc,
>  static int holtek_mouse_probe(struct hid_device *hdev,
>                    const struct hid_device_id *id)
>  {
> +    int ret;
> +
>      if (!hid_is_usb(hdev))
>          return -EINVAL;
> +
> +    ret = hid_parse(hdev);
> +    if (ret) {
> +        hid_err(hdev, "hid parse failed: %d\n", ret);
> +        return ret;
> +    }
> +
> +    ret = hid_hw_start(hdev, HID_CONNECT_DEFAULT);
> +    if (ret) {
> +        hid_err(hdev, "hw start failed: %d\n", ret);
> +        return ret;
> +    }
> +
>      return 0;
>  }
>  



[Index of Archives]     [Linux Kernel]     [Kernel Development Newbies]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Hiking]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux