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@xxxxxxxx/ Signed-off-by: Egor Ignatov <egori@xxxxxxxxxxxx> --- drivers/input/serio/i8042-x86ia64io.h | 14 ++++++++++++++ 1 file changed, 14 insertions(+) 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 -- 2.29.3