The internal keyboard of the HONOR WIN Gaming H7 (NWB-G) stops working
after commit 9cf6e24c9fbf17e52de9fff07f12be7565ea6d61 ("Input: atkbd -
do not skip atkbd_deactivate() when skipping ATKBD_CMD_GETID"). That
commit made the ATKBD_CMD_GETID-skip path, taken on modern portable
machines, fall through to atkbd_deactivate() and send
ATKBD_CMD_RESET_DIS (0xf5).
On the affected machine atkbd binds to serio0 without reporting an
error, but IRQ1 does not increment when keys are pressed and no
keystroke is ever delivered. With atkbd_skip_deactivate set through the
existing atkbd_deactivate_fixup callback the keyboard works normally,
matching the existing HONOR FMB-P, Lenovo 83QK and Xiaomi Book Pro 14
entries.
Add a DMI quirk entry for HONOR/NWB-G.
DMI: HONOR NWB-G/NWB-G-PCB, BIOS 1.10
Fixes: 9cf6e24c9fbf17e52de9fff07f12be7565ea6d61 ("Input: atkbd - do not skip atkbd_deactivate() when skipping ATKBD_CMD_GETID")
Cc: stable@kernel.org
Tested-by: Tao juncheng <mono268@foxmail.com>
Signed-off-by: Tao juncheng <mono268@foxmail.com>
---
Resend of <20260901140336.10568-1-tjc1437@gmail.com>; no comments
received in three weeks. No code change.
The address used for the original submission is no longer reachable, so
this resend is sent and signed off from mono268@foxmail.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 c8ad55f26ea8..de8edab3cb0f 100644
--- a/drivers/input/keyboard/atkbd.c
+++ b/drivers/input/keyboard/atkbd.c
@@ -1923,6 +1923,14 @@ static const struct dmi_system_id atkbd_dmi_quirk_table[] __initconst = {
},
.callback = atkbd_deactivate_fixup,
},
+ {
+ /* HONOR WIN Gaming H7 */
+ .matches = {
+ DMI_MATCH(DMI_SYS_VENDOR, "HONOR"),
+ DMI_MATCH(DMI_PRODUCT_NAME, "NWB-G"),
+ },
+ .callback = atkbd_deactivate_fixup,
+ },
{ }
};
--
2.47.0