]> www.infradead.org Git - linux.git/commit
Input: i8042 - add forcenorestore quirk to leave controller untouched even on s3
authorWerner Sembach <wse@tuxedocomputers.com>
Thu, 4 Jan 2024 18:31:17 +0000 (19:31 +0100)
committerDmitry Torokhov <dmitry.torokhov@gmail.com>
Mon, 19 Aug 2024 04:28:23 +0000 (21:28 -0700)
commit3d765ae2daccc570b3f4fbcb57eb321b12cdded2
tree01f39adda68a5d987ce8ac7118cf507cb7029afd
parent7ce7c2283fa6843ab3c2adfeb83dcc504a107858
Input: i8042 - add forcenorestore quirk to leave controller untouched even on s3

On s3 resume the i8042 driver tries to restore the controller to a known
state by reinitializing things, however this can confuse the controller
with different effects. Mostly occasionally unresponsive keyboards after
resume.

These issues do not rise on s0ix resume as here the controller is assumed
to preserved its state from before suspend.

This patch adds a quirk for devices where the reinitialization on s3 resume
is not needed and might be harmful as described above. It does this by
using the s0ix resume code path at selected locations.

This new quirk goes beyond what the preexisting reset=never quirk does,
which only skips some reinitialization steps.

Signed-off-by: Werner Sembach <wse@tuxedocomputers.com>
Cc: stable@vger.kernel.org
Reviewed-by: Hans de Goede <hdegoede@redhat.com>
Link: https://lore.kernel.org/r/20240104183118.779778-2-wse@tuxedocomputers.com
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
drivers/input/serio/i8042-acpipnpio.h
drivers/input/serio/i8042.c