| From 6ec04d93ba05befd67b66c06df976099385c1471 Mon Sep 17 00:00:00 2001 |
| From: Dmitry Torokhov <dmitry.torokhov@gmail.com> |
| Date: Fri, 18 Jan 2019 14:35:45 -0800 |
| Subject: HID: input: add mapping for "Toggle Display" key |
| |
| [ Upstream commit c01908a14bf735b871170092807c618bb9dae654 ] |
| |
| According to HUT 1.12 usage 0xb5 from the generic desktop page is reserved |
| for switching between external and internal display, so let's add the |
| mapping. |
| |
| Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com> |
| Signed-off-by: Sasha Levin <sashal@kernel.org> |
| --- |
| drivers/hid/hid-input.c | 8 ++++++++ |
| 1 file changed, 8 insertions(+) |
| |
| diff --git a/drivers/hid/hid-input.c b/drivers/hid/hid-input.c |
| index 55e6f18ff627d..d988b92b20c82 100644 |
| --- a/drivers/hid/hid-input.c |
| +++ b/drivers/hid/hid-input.c |
| @@ -677,6 +677,14 @@ static void hidinput_configure_usage(struct hid_input *hidinput, struct hid_fiel |
| break; |
| } |
| |
| + if ((usage->hid & 0xf0) == 0xb0) { /* SC - Display */ |
| + switch (usage->hid & 0xf) { |
| + case 0x05: map_key_clear(KEY_SWITCHVIDEOMODE); break; |
| + default: goto ignore; |
| + } |
| + break; |
| + } |
| + |
| /* |
| * Some lazy vendors declare 255 usages for System Control, |
| * leading to the creation of ABS_X|Y axis and too many others. |
| -- |
| 2.20.1 |
| |