[PATCH] Input: i8042 - enable dumbkbd quirk for HP 15-dy2xxx and 15s-fq2xxx

From: gurevitch
Date: Sat Jul 30 2022 - 02:38:23 EST


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@xxxxxxxx/
Link: https://lore.kernel.org/all/20210609073333.8425-1-egori@xxxxxxxxxxxx/

Signed-off-by: gurevitch <mail@xxxxxxxxxx>
---
drivers/input/serio/i8042-x86ia64io.h | 21 +++++++++++++++++++++
1 file changed, 21 insertions(+)

diff --git a/drivers/input/serio/i8042-x86ia64io.h b/drivers/input/serio/i8042-x86ia64io.h
index 148a7c5fd..a2454d277 100644
--- a/drivers/input/serio/i8042-x86ia64io.h
+++ b/drivers/input/serio/i8042-x86ia64io.h
@@ -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;

--
2.37.1