linux/drivers/input
Zongmin Zhou c853246539 Input: vmmouse - disable vmmouse before entering suspend mode
Currently, when trying to suspend and resume with VirtualPS/2 VMMouse
there is an error message after resuming:

	psmouse serio1: vmmouse: Unable to re-enable mouse when reconnecting, err: -6

and the mouse will no longer be operable, requiring full rescan to find a
another driver to use for the port.

This error is due to QEMU still generating PS2 events which the kernel is
not consuming until resume time, where they interfere with mouse
identification and ultimately resulting in an error getting
VMMOUSE_VERSION_ID.

Test scenario:

1) start virtual machine with qemu command "vmport=on"
2) click suspend botton to enter suspend mode
3) resume and observe the error message in the kernel logs

Let's fix this by disabling the vmmouse in its reset handler. This will
notify qemu to stop vmmouse and remove the handler.

Signed-off-by: Zongmin Zhou<zhouzongmin@kylinos.cn>
Reviewed-by: Zack Rusin <zackr@vmware.com>
Link: https://lore.kernel.org/r/20220322021046.1087954-1-zhouzongmin@kylinos.cn
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
2022-05-18 15:02:13 -07:00
..
gameport bus: Make remove callback return void 2021-07-21 11:53:42 +02:00
joystick Input: add Raspberry Pi Sense HAT joystick driver 2022-04-24 18:25:02 -07:00
keyboard Input: bcm-keypad - remove unneeded NULL check before clk_disable_unprepare 2022-05-16 21:10:12 -07:00
misc Input: sparcspkr - fix refcount leak in bbc_beep_probe 2022-05-16 21:10:11 -07:00
mouse Input: vmmouse - disable vmmouse before entering suspend mode 2022-05-18 15:02:13 -07:00
rmi4 Input: synaptics-rmi4 - remove unnecessary flush_workqueue() 2022-04-24 18:25:09 -07:00
serio Linux 5.17-rc4 2022-02-18 13:30:38 -08:00
tablet Input: aiptek - remove redundant assignment to variable ret 2022-04-20 13:41:17 -07:00
touchscreen Input: add Imagis touchscreen driver 2022-03-20 22:00:12 -07:00
apm-power.c
evbug.c Input: evbug - remove an empty comment block 2021-05-24 21:06:39 -07:00
evdev.c Input: evdev - per-client waitgroups 2020-10-06 18:34:15 -07:00
ff-core.c Input: ff-core - correct magnitude setting for rumble compatibility 2021-12-06 23:24:03 -08:00
ff-memless.c
input-compat.c
input-compat.h
input-leds.c
input-mt.c Input: MT - avoid comma separated statements 2020-08-25 10:26:05 -07:00
input-poller.c Input: use input_device_enabled() 2020-12-02 22:10:33 -08:00
input-poller.h
input.c Input: remove unneeded variable in input_inhibit_device() 2022-04-24 18:24:59 -07:00
joydev.c HID: nintendo: add IMU support 2021-10-27 10:05:52 +02:00
Kconfig Input: extract ChromeOS vivaldi physmap show function 2022-03-14 21:11:09 -07:00
Makefile Input: extract ChromeOS vivaldi physmap show function 2022-03-14 21:11:09 -07:00
matrix-keymap.c
mousedev.c
sparse-keymap.c
touchscreen.c Input: touchscreen - avoid bitwise vs logical OR warning 2021-10-15 22:22:54 -07:00
vivaldi-fmap.c Input: extract ChromeOS vivaldi physmap show function 2022-03-14 21:11:09 -07:00