* [PATCH] Input: atkbd - skip deactivate for Lenovo IdeaPad Slim 3 14IWC11
@ 2026-09-11 18:23 Iustin Ivan
2026-09-11 18:52 ` Hans de Goede
0 siblings, 1 reply; 2+ messages in thread
From: Iustin Ivan @ 2026-09-11 18:23 UTC (permalink / raw)
To: Dmitry Torokhov
Cc: linux-input, linux-kernel, Hans de Goede, Iustin Ivan, stable
The internal keyboard on the Lenovo IdeaPad Slim 3 14IWC11 (83RQ) does
not work after boot. The keyboard ACKs every command during probe,
including ATKBD_CMD_ENABLE, but never sends any scancodes afterwards.
Booting with 'i8042.dumbkbd=1' makes it work at the cost of the
CapsLock LED. Adding the atkbd_deactivate_fixup quirk fixes the
keyboard and the LED natively.
DMI: LENOVO 83RQ/LNVNB161216, BIOS U2CN19WW 03/30/2026
Fixes: 9cf6e24c9fbf ("Input: atkbd - do not skip atkbd_deactivate() when skipping ATKBD_CMD_GETID")
Cc: stable@vger.kernel.org
Signed-off-by: Iustin Ivan <iustinivan2002@gmail.com>
---
drivers/input/keyboard/atkbd.c | 8 ++++++++
1 file changed, 8 insertions(+)
diff --git a/drivers/input/keyboard/atkbd.c b/drivers/input/keyboard/atkbd.c
index b9ad2381f885..923f77808381 100644
--- a/drivers/input/keyboard/atkbd.c
+++ b/drivers/input/keyboard/atkbd.c
@@ -1938,6 +1938,14 @@ static const struct dmi_system_id atkbd_dmi_quirk_table[] __initconst = {
},
.callback = atkbd_deactivate_fixup,
},
+ {
+ /* Lenovo IdeaPad Slim 3 14IWC11 (83RQ) */
+ .matches = {
+ DMI_MATCH(DMI_SYS_VENDOR, "LENOVO"),
+ DMI_MATCH(DMI_PRODUCT_NAME, "83RQ"),
+ },
+ .callback = atkbd_deactivate_fixup,
+ },
{
/* Xiaomi Book Pro 14 (TM2424) */
.matches = {
--
2.55.0
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: [PATCH] Input: atkbd - skip deactivate for Lenovo IdeaPad Slim 3 14IWC11
2026-09-11 18:23 [PATCH] Input: atkbd - skip deactivate for Lenovo IdeaPad Slim 3 14IWC11 Iustin Ivan
@ 2026-09-11 18:52 ` Hans de Goede
0 siblings, 0 replies; 2+ messages in thread
From: Hans de Goede @ 2026-09-11 18:52 UTC (permalink / raw)
To: Iustin Ivan, Dmitry Torokhov; +Cc: linux-input, linux-kernel, stable
Hi,
On 11-Sep-26 8:23 PM, Iustin Ivan wrote:
> The internal keyboard on the Lenovo IdeaPad Slim 3 14IWC11 (83RQ) does
> not work after boot. The keyboard ACKs every command during probe,
> including ATKBD_CMD_ENABLE, but never sends any scancodes afterwards.
> Booting with 'i8042.dumbkbd=1' makes it work at the cost of the
> CapsLock LED. Adding the atkbd_deactivate_fixup quirk fixes the
> keyboard and the LED natively.
>
> DMI: LENOVO 83RQ/LNVNB161216, BIOS U2CN19WW 03/30/2026
>
> Fixes: 9cf6e24c9fbf ("Input: atkbd - do not skip atkbd_deactivate() when skipping ATKBD_CMD_GETID")
> Cc: stable@vger.kernel.org
> Signed-off-by: Iustin Ivan <iustinivan2002@gmail.com>
I'm starting to wonder if we should not just make this behavior the default.
IIRC the whole deactivate thing was added as a workaround for multi-byte scancodes
getting split-up during suspend/resume. I wonder if we can come-up with some
better fix for that ?
Regards,
Hans
> ---
> drivers/input/keyboard/atkbd.c | 8 ++++++++
> 1 file changed, 8 insertions(+)
>
> diff --git a/drivers/input/keyboard/atkbd.c b/drivers/input/keyboard/atkbd.c
> index b9ad2381f885..923f77808381 100644
> --- a/drivers/input/keyboard/atkbd.c
> +++ b/drivers/input/keyboard/atkbd.c
> @@ -1938,6 +1938,14 @@ static const struct dmi_system_id atkbd_dmi_quirk_table[] __initconst = {
> },
> .callback = atkbd_deactivate_fixup,
> },
> + {
> + /* Lenovo IdeaPad Slim 3 14IWC11 (83RQ) */
> + .matches = {
> + DMI_MATCH(DMI_SYS_VENDOR, "LENOVO"),
> + DMI_MATCH(DMI_PRODUCT_NAME, "83RQ"),
> + },
> + .callback = atkbd_deactivate_fixup,
> + },
> {
> /* Xiaomi Book Pro 14 (TM2424) */
> .matches = {
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2026-09-11 18:52 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2026-09-11 18:23 [PATCH] Input: atkbd - skip deactivate for Lenovo IdeaPad Slim 3 14IWC11 Iustin Ivan
2026-09-11 18:52 ` Hans de Goede
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®