Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 2bcaa6a4 authored by Dave Andrews's avatar Dave Andrews Committed by Dmitry Torokhov
Browse files

Input: atkbd - add Compaq Presario R4000-series repeat quirk

Compaq Presario R4000-series laptops are not sending a "volume up button
release" and "volume down button release" signal in the PS/2 protocol for
atkbd. The URL below has some of confirmed reports:

https://bugs.launchpad.net/ubuntu/+source/linux/+bug/385477



Signed-off-by: default avatarDave Andrews <jetdog330@hotmail.com>
Signed-off-by: default avatarDmitry Torokhov <dtor@mail.ru>
parent ced909ff
Loading
Loading
Loading
Loading
+35 −0
Original line number Diff line number Diff line
@@ -879,6 +879,14 @@ static unsigned int atkbd_hp_zv6100_forced_release_keys[] = {
	0xae, 0xb0, -1U
};

/*
 * Perform fixup for HP (Compaq) Presario R4000 R4100 R4200 that don't generate
 * release for their volume buttons
 */
static unsigned int atkbd_hp_r4000_forced_release_keys[] = {
	0xae, 0xb0, -1U
};

/*
 * Samsung NC10,NC20 with Fn+F? key release not working
 */
@@ -1536,6 +1544,33 @@ static struct dmi_system_id atkbd_dmi_quirk_table[] __initdata = {
		.callback = atkbd_setup_forced_release,
		.driver_data = atkbd_hp_zv6100_forced_release_keys,
	},
	{
		.ident = "HP Presario R4000",
		.matches = {
			DMI_MATCH(DMI_SYS_VENDOR, "Hewlett-Packard"),
			DMI_MATCH(DMI_PRODUCT_NAME, "Presario R4000"),
		},
		.callback = atkbd_setup_forced_release,
		.driver_data = atkbd_hp_r4000_forced_release_keys,
	},
	{
		.ident = "HP Presario R4100",
		.matches = {
			DMI_MATCH(DMI_SYS_VENDOR, "Hewlett-Packard"),
			DMI_MATCH(DMI_PRODUCT_NAME, "Presario R4100"),
		},
		.callback = atkbd_setup_forced_release,
		.driver_data = atkbd_hp_r4000_forced_release_keys,
	},
	{
		.ident = "HP Presario R4200",
		.matches = {
			DMI_MATCH(DMI_SYS_VENDOR, "Hewlett-Packard"),
			DMI_MATCH(DMI_PRODUCT_NAME, "Presario R4200"),
		},
		.callback = atkbd_setup_forced_release,
		.driver_data = atkbd_hp_r4000_forced_release_keys,
	},
	{
		.ident = "Inventec Symphony",
		.matches = {