This is sporadically reproducible for me. It's probably a hardware
quirk. I have Ubuntu 20.04 with Linux 5.4.0-37-generic. I'm using a
"Microsoft Mobile Mouse 4000" which presents itself as 045e:07b2
"Microsoft Corp. 2.4GHz Transceiver v8.0 used by mouse Wireless Desktop
900". The issue only occurs when the transceiver is plugged into a
desktop USB hub (MBHUB-43ST presenting as VIA Labs 2109:2813). When it
is working, inspecting the event stream with cat
/sys/kernel/debug/hid/.../events while slowly scrolling gives a series
of events of size 3:

report (size 10) (numbered) =  1a 00 00 00 00 00 03 00 00 00
Button.0001 = 0
Button.0002 = 0
Button.0003 = 0
Button.0004 = 0
Button.0005 = 0
GenericDesktop.X = 0
GenericDesktop.Y = 0
GenericDesktop.Wheel = 3
Consumer.HorizontalWheel = 0

Fast scrolling gives events that are some multiple of 3.

After suspend/resume, the events have a size of 1:

report (size 10) (numbered) =  1a 00 00 00 00 00 01 00 00 00
Button.0001 = 0
Button.0002 = 0
Button.0003 = 0
Button.0004 = 0
Button.0005 = 0
GenericDesktop.X = 0
GenericDesktop.Y = 0
GenericDesktop.Wheel = 1
Consumer.HorizontalWheel = 0

My reading of the source implies that the kernel is not scaling these
events, the numbers are coming straight from the hardware.

The power light on the desktop hub briefly goes off as the laptop enters
suspend. This doesn't always happen but seems to be correlated with the
mouse breaking.

Removing and re-adding the usbhid kernel module does fix it, but I
suspect that's because the device is reset rather than because of any
state in the kernel.

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1825736

Title:
  Mouse scroll wheel barely works after suspend

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1825736/+subscriptions

-- 
ubuntu-bugs mailing list
ubuntu-bugs@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to