@@ -995,6 +995,24 @@ static const struct dmi_system_id __initconst i8042_dmi_kbdreset_table[] = {
{ }
};
+static const struct dmi_system_id __initconst i8042_dmi_dumbkbd_table[] = {
+ {
+ /* HP 15-dy2xxx - keyboard */
+ .matches = {
+ DMI_MATCH(DMI_SYS_VENDOR, "HP"),
+ DMI_MATCH(DMI_PRODUCT_NAME, "HP Laptop 15-dy2xxx"),
+ },
+ },
+ {
+ /* HP 15s-fq2xxx - keyboard */
+ .matches = {
+ DMI_MATCH(DMI_SYS_VENDOR, "HP"),
+ DMI_MATCH(DMI_PRODUCT_NAME, "HP Laptop 15s-fq2xxx"),
+ },
+ },
+ { }
+};
+
static const struct dmi_system_id i8042_dmi_probe_defer_table[] __initconst = {
{
/* ASUS ZenBook UX425UA */
@@ -1333,6 +1351,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;
+
if (dmi_check_system(i8042_dmi_probe_defer_table))
i8042_probe_defer = true;
These two sets of HP laptops have a long keyboard initialization delay due to the controller not delivering interrupts correctly as previously determined by Egor and Vojtech. For the 15-dy2044nr models I have at work the issue persists even after manually updating the system firmware to the latest revision from the Microsoft update catalog (15.21.0.0). Egor submitted a patch for 15s-fq2xxx systems previously but it seems to have been missed/forgotten, so I've included both here. Link: https://lore.kernel.org/lkml/20210528154339.GA9116@suse.com/ Link: https://lore.kernel.org/all/20210609073333.8425-1-egori@altlinux.org/ Signed-off-by: gurevitch <mail@gurevit.ch> --- drivers/input/serio/i8042-x86ia64io.h | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) -- 2.37.1