aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKenneth Chan <[email protected]>2020-08-22 02:14:31 +0800
committerHans de Goede <[email protected]>2020-11-10 14:49:50 +0100
commited83c9171829ff16a08e29b58df6c11190a83740 (patch)
tree6fcd0188498b75c61faacfc8150ea88dcba66149
parente3a9afbbc309c51421d9beb3390ba42522fa6afe (diff)
platform/x86: panasonic-laptop: Resolve hotkey double trigger bug
Sometimes double ACPI events are triggered for brightness, vol and mute hotkeys. This patch fixes it. Signed-off-by: Kenneth Chan <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Hans de Goede <[email protected]>
-rw-r--r--drivers/platform/x86/panasonic-laptop.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/drivers/platform/x86/panasonic-laptop.c b/drivers/platform/x86/panasonic-laptop.c
index 3b0294ee9d3e..6779099a3ec9 100644
--- a/drivers/platform/x86/panasonic-laptop.c
+++ b/drivers/platform/x86/panasonic-laptop.c
@@ -13,6 +13,7 @@
*
* ChangeLog:
* Aug.18, 2020 Kenneth Chan <[email protected]>
+ * resolve hotkey double trigger
* add write support to mute
* fix sticky_key init bug
* fix naming of platform files for consistency with other
@@ -597,9 +598,11 @@ static void acpi_pcc_generate_keyinput(struct pcc_acpi *pcc)
result & 0xf, 0x80, false);
}
- if (!sparse_keymap_report_event(hotk_input_dev,
- result & 0xf, result & 0x80, false))
- pr_err("Unknown hotkey event: 0x%04llx\n", result);
+ if ((result & 0xf) == 0x7 || (result & 0xf) == 0x9 || (result & 0xf) == 0xa) {
+ if (!sparse_keymap_report_event(hotk_input_dev,
+ result & 0xf, result & 0x80, false))
+ pr_err("Unknown hotkey event: 0x%04llx\n", result);
+ }
}
static void acpi_pcc_hotkey_notify(struct acpi_device *device, u32 event)