diff mbox series

Input: i8042 - add HP 15s-fq2xxx to dumbkbd list

Message ID 20210531135407.30816-1-egori@altlinux.org (mailing list archive)
State Superseded
Headers show
Series Input: i8042 - add HP 15s-fq2xxx to dumbkbd list | expand

Commit Message

Egor Ignatov May 31, 2021, 1:54 p.m. UTC
The virtual i8042 keyboard controller on the HP Laptop 15s-fq2xxx
is not properly delivering GETID interrupts resulting in a large
initialization delay. With dumbkbd, the driver does not ask for the
keyboard ID, and uses the default configuration, which works fine
with this keyboard.

Link: https://lore.kernel.org/lkml/20210528154339.GA9116@suse.com/
Signed-off-by: Egor Ignatov <egori@altlinux.org>
---
 drivers/input/serio/i8042-x86ia64io.h | 14 ++++++++++++++
 1 file changed, 14 insertions(+)
diff mbox series

Patch

diff --git a/drivers/input/serio/i8042-x86ia64io.h b/drivers/input/serio/i8042-x86ia64io.h
index a5a003553646..a29588014abc 100644
--- a/drivers/input/serio/i8042-x86ia64io.h
+++ b/drivers/input/serio/i8042-x86ia64io.h
@@ -981,6 +981,17 @@  static const struct dmi_system_id __initconst i8042_dmi_kbdreset_table[] = {
 	{ }
 };
 
+static const struct dmi_system_id __initconst i8042_dmi_dumbkbd_table[] = {
+	{
+		/* HP 15s-fq2xxx - keyboard */
+		.matches = {
+			DMI_MATCH(DMI_SYS_VENDOR, "HP"),
+			DMI_MATCH(DMI_PRODUCT_NAME, "HP Laptop 15s-fq2xxx"),
+		},
+	},
+	{ }
+};
+
 #endif /* CONFIG_X86 */
 
 #ifdef CONFIG_PNP
@@ -1301,6 +1312,9 @@  static int __init i8042_platform_init(void)
 	if (dmi_check_system(i8042_dmi_kbdreset_table))
 		i8042_kbdreset = true;
 
+	if (dmi_check_system(i8042_dmi_dumbkbd_table))
+		i8042_dumbkbd = true;
+
 	/*
 	 * A20 was already enabled during early kernel init. But some buggy
 	 * BIOSes (in MSI Laptops) require A20 to be enabled using 8042 to