@@ -1937,6 +1937,19 @@ static const struct dmi_system_id atkbd_dmi_quirk_table[] __initconst = {
.callback = atkbd_skip_commands_fixup,
.driver_data = (void *)ATKBD_SKIP_DEACTIVATE,
},
+ {
+ /*
+ * "HP Laptop 15s-fq2xxx" and "HP laptop 15s-fq4xxx" both get
+ * confused by ATKBD_CMD_GETID.
+ */
+ .matches = {
+ DMI_MATCH(DMI_SYS_VENDOR, "HP"),
+ /* Partial match to match both systems */
+ DMI_MATCH(DMI_PRODUCT_NAME, "HP Laptop 15s-fq"),
+ },
+ .callback = atkbd_skip_commands_fixup,
+ .driver_data = (void *)ATKBD_SKIP_GETID,
+ },
{ }
};
On "HP Laptop 15s-fq2xxx" and "HP laptop 15s-fq4xxx" laptops the keyboard gets confused by Linux probing it and won't work for the first 2 - 5 minutes or so (waiting for EC watchdog reset?). Testing has shown that Linux sending ATKBD_CMD_GETID causes the keyboard to not work for the first 2 - 5 minutes. Add a quirk setting skip_commands = ATKBD_SKIP_GETID to fix this. Closes: https://bugzilla.redhat.com/show_bug.cgi?id=2086156 Signed-off-by: Hans de Goede <hdegoede@redhat.com> --- drivers/input/keyboard/atkbd.c | 13 +++++++++++++ 1 file changed, 13 insertions(+)