mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2024-11-25 18:20:54 +07:00
Input: atkbd - add keyboard quirk for HP Pavilion ZV6100 laptop
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@student.chalmers.se> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
This commit is contained in:
parent
93b8eef1c0
commit
181f63827a
@ -883,6 +883,23 @@ static void atkbd_inventec_keymap_fixup(struct atkbd *atkbd)
|
||||
atkbd->force_release_mask);
|
||||
}
|
||||
|
||||
/*
|
||||
* Perform fixup for HP Pavilion ZV6100 laptop that doesn't generate release
|
||||
* for its volume buttons
|
||||
*/
|
||||
static void atkbd_hp_zv6100_keymap_fixup(struct atkbd *atkbd)
|
||||
{
|
||||
const unsigned int forced_release_keys[] = {
|
||||
0xae, 0xb0,
|
||||
};
|
||||
int i;
|
||||
|
||||
if (atkbd->set == 2)
|
||||
for (i = 0; i < ARRAY_SIZE(forced_release_keys); i++)
|
||||
__set_bit(forced_release_keys[i],
|
||||
atkbd->force_release_mask);
|
||||
}
|
||||
|
||||
/*
|
||||
* atkbd_set_keycode_table() initializes keyboard's keycode table
|
||||
* according to the selected scancode set
|
||||
@ -1484,6 +1501,15 @@ static struct dmi_system_id atkbd_dmi_quirk_table[] __initdata = {
|
||||
.callback = atkbd_setup_fixup,
|
||||
.driver_data = atkbd_hp_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_hp_zv6100_keymap_fixup,
|
||||
},
|
||||
{
|
||||
.ident = "Inventec Symphony",
|
||||
.matches = {
|
||||
|
Loading…
Reference in New Issue
Block a user