From 9b4b5459207142cda725a44262696d0e7c45e5d9 Mon Sep 17 00:00:00 2001 From: yves Date: Mon, 2 Apr 2018 22:12:16 +0200 Subject: [PATCH] Proposal integration FN+F9 for KeyboardBacklight when trying to turn on the keyboard light FN+F9 ''' [ 775.626810] acer_wmi: Unknown key number - 0x84 ''' --- drivers/platform/x86/acer-wmi.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/drivers/platform/x86/acer-wmi.c b/drivers/platform/x86/acer-wmi.c index 1be71f956d5c28..fa4736c4436287 100644 --- a/drivers/platform/x86/acer-wmi.c +++ b/drivers/platform/x86/acer-wmi.c @@ -128,6 +128,7 @@ static const struct key_entry acer_wmi_keymap[] __initconst = { {KE_KEY, KEY_TOUCHPAD_OFF, {KEY_TOUCHPAD_OFF} }, {KE_IGNORE, 0x83, {KEY_TOUCHPAD_TOGGLE} }, {KE_KEY, 0x85, {KEY_TOUCHPAD_TOGGLE} }, + {KE_KEY, 0x84, {KEY_KEYBOARD_BACKLIGHT_TOGGLE} }, /* Keyboard Backlight Toggle */ {KE_KEY, 0x86, {KEY_WLAN} }, {KE_END, 0} }; @@ -153,6 +154,8 @@ struct event_return_value { #define ACER_WMID3_GDS_TOUCHPAD (1<<1) /* Touchpad */ +#define ACER_WMID3_GDS_KEYBOARD_BACKLIGHT (1<<0) /* Keyboard Backlight */ + /* Hotkey Customized Setting and Acer Application Status. * Set Device Default Value and Report Acer Application Status. * When Acer Application starts, it will run this method to inform @@ -1777,6 +1780,9 @@ static void acer_wmi_notify(u32 value, void *context) case KEY_TOUCHPAD_TOGGLE: scancode = (device_state & ACER_WMID3_GDS_TOUCHPAD) ? KEY_TOUCHPAD_ON : KEY_TOUCHPAD_OFF; + case KEY_KEYBOARD_BACKLIGHT_TOGGLE: + scancode = (device_state & ACER_WMID3_GDS_KEYBOARD_BACKLIGHT) ? + KEY_KEYBOARD_BACKLIGHT_ON : KEY_KEYBOARD_BACKLIGHT_OFF; } sparse_keymap_report_event(acer_wmi_input_dev, scancode, 1, true); }