[PATCH] Input: Add keyboard quirk for HP Pavilion ZV6100 laptop

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,

Sending an updated version of a trivial patch from last November which got no feedback on the list.
Applies cleanly against the latest input.git tree (and probably other recent trees).

Cheers,
Rikard

----

Add quirk for misbehaving volume buttons on HP Pavilion ZV6100 laptop which
are not sending keyrelease events, as reported by Aaron Pickett.

Signed-off-by: Rikard Ljungstrand <lrikard@xxxxxxxxxxxxxxxxxxx>
---
 drivers/input/keyboard/atkbd.c |   16 +++++++++++++---
 1 files changed, 13 insertions(+), 3 deletions(-)

diff --git a/drivers/input/keyboard/atkbd.c b/drivers/input/keyboard/atkbd.c
index 379b7ff..99e73a1 100644
--- a/drivers/input/keyboard/atkbd.c
+++ b/drivers/input/keyboard/atkbd.c
@@ -868,9 +868,10 @@ static void atkbd_hp_keymap_fixup(struct atkbd *atkbd)
 }
 
 /*
- * Inventec system with broken key release on volume keys
+ * Perform fixup for Inventec system and HP Pavilion ZV6100 laptop that don't
+ * generate release for their volume buttons
  */
-static void atkbd_inventec_keymap_fixup(struct atkbd *atkbd)
+static void atkbd_inventec_and_hp_zv6100_keymap_fixup(struct atkbd *atkbd)
 {
 	const unsigned int forced_release_keys[] = {
 		0xae, 0xb0,
@@ -1491,7 +1492,16 @@ static struct dmi_system_id atkbd_dmi_quirk_table[] __initdata = {
 			DMI_MATCH(DMI_PRODUCT_NAME, "SYMPHONY 6.0/7.0"),
 		},
 		.callback = atkbd_setup_fixup,
-		.driver_data = atkbd_inventec_keymap_fixup,
+		.driver_data = atkbd_inventec_and_hp_zv6100_keymap_fixup,
+	},
+	{
+		.ident = "HP Pavilion ZV6100",
+		.matches = {
+			DMI_MATCH(DMI_SYS_VENDOR, "Hewlett-Packard"),
+			DMI_MATCH(DMI_PRODUCT_NAME, "Pavilion ZV6100"),
+		},
+		.callback = atkbd_setup_fixup,
+		.driver_data = atkbd_inventec_and_hp_zv6100_keymap_fixup,
 	},
 	{ }
 };
-- 
1.5.6.3
--
To unsubscribe from this list: send the line "unsubscribe linux-input" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Media Devel]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Linux Wireless Networking]     [Linux Omap]

  Powered by Linux