dell-wmi: Add KEY_SWITCHVIDEOMODE for Dell N4110.
PATCH 1/1 dell-wmi: Add KEY_SWITCHVIDEOMODE for Dell N4110.
This key is reported by the keyboard controller but also generates WMI events. By adding it to the legacy keymap the WMI messages can be silenced.
--- drivers/platform/x86/dell-wmi.c | 3 +++ 1 file changed, 3 insertions(+)
(quoted diff) +0 -0
b/drivers/platform/x86/dell-wmi.c
index 60e0900..72f6cc8 100644
drivers/platform/x86/dell-wmi.c +0 -0
@@ -92,6 +92,9 @@ static const struct key_entry dell_wmi_legacy_keymap[]
__initconst = {
{ KE_IGNORE, 0xe025, { KEY_RESERVED } },
{ KE_IGNORE, 0xe026, { KEY_RESERVED } },
+ /* For laptops like the Dell Inspiron N4110 with a monitor hotkey */
+ { KE_KEY, 0xe027, { KEY_SWITCHVIDEOMODE } },
+
{ KE_IGNORE, 0xe02e, { KEY_VOLUMEDOWN } }, { KE_IGNORE, 0xe030, { KEY_VOLUMEUP } }, { KE_IGNORE, 0xe033, { KEY_KBDILLUMUP } },
Signature · 1 line
1.8.5.3
From 66440f78e9989d759be4dd550f76179d8df64083 Mon Sep 17 00:00:00 2001
From: Souvik Banerjee <[email protected]>
Date: Mon, 20 Jan 2014 09:10:29 -0600
Subject: [PATCH] dell-wmi: Add KEY_SWITCHVIDEOMODE for Dell N4110.
This key is reported by the keyboard controller but also generates WMI events. By adding it to the legacy keymap the WMI messages can be silenced.
--- drivers/platform/x86/dell-wmi.c | 3 +++ 1 file changed, 3 insertions(+)
drivers/platform/x86/dell-wmi.c +3 -0
@@ -92,6 +92,9 @@ static const struct key_entry dell_wmi_legacy_keymap[] __initconst = { { KE_IGNORE, 0xe025, { KEY_RESERVED } }, { KE_IGNORE, 0xe026, { KEY_RESERVED } }, +/* For laptops like the Dell Inspiron N4110 with a monitor hotkey */ + { KE_KEY, 0xe027, { KEY_SWITCHVIDEOMODE } }, + { KE_IGNORE, 0xe02e, { KEY_VOLUMEDOWN } }, { KE_IGNORE, 0xe030, { KEY_VOLUMEUP } }, { KE_IGNORE, 0xe033, { KEY_KBDILLUMUP } },
Signature · 1 line
1.8.5.3
Quoted 3 lines · Souvik Banerjee
This key is reported by the keyboard controller but also generates WMI events. By adding it to the legacy keymap the WMI messages can be silenced.
Wouldn't this result in it being reported twice?
Signature · 1 line
Matthew Garrett | [email protected]
Forgot to cc the LKML.
-------- Original Message --------
Subject: Re: [PATCH] dell-wmi: Add KEY_SWITCHVIDEOMODE for Dell N4110.
Date: Mon, 20 Jan 2014 10:05:03 -0600
From: Souvik Banerjee <[email protected]>
To: Matthew Garrett <[email protected]>
No, I don't think so. My testing shows that it is now just reported by the keyboard controller. My commit is similar to 'f1566f0dc07ec9b5409b348070f5a700032d7881' in which keys for the Dell XPS L502X are added to the legacy keymap to reduce the noise. Without this patch dell-wmi reports an unknown key, but with it those messages are silenced.
--
Souvik Banerjee
Quoted 7 lines · Matthew Garrett
Quoted 3 lines · Souvik Banerjee
This key is reported by the keyboard controller but also generates WMI events. By adding it to the legacy keymap the WMI messages can be silenced.
Wouldn't this result in it being reported twice?
I used KE_KEY instead of KE_IGNORE. Should it be changed to KE_IGNORE? On my kernel build with KE_KEY everything works as expected, but I have not tried it with KE_IGNORE.
--
Souvik Banerjee
Quoted 2 lines · Matthew Garrett
Sorry, I missed the
KE_IGNOREsomehow. This should be fine. Thanks!
Quoted 3 lines · Souvik Banerjee
I used
KE_KEYinstead ofKE_IGNORE. Should it be changed toKE_IGNORE? On my kernel build withKE_KEYeverything works as expected, but I have not tried it withKE_IGNORE.
KE_KEY means that dell-wmi will report the key. If it's also being reported via the keyboard controller then it should be KE_IGNORE instead.
Signature · 1 line
Matthew Garrett | [email protected]
I see. Here's the patch with KE_IGNORE instead of KE_KEY. Does it look ok?
This key is reported by the keyboard controller but also generates WMI events. By adding it to the legacy keymap the WMI messages can be silenced.
--- drivers/platform/x86/dell-wmi.c | 3 +++ 1 file changed, 3 insertions(+)
(quoted diff) +0 -0
b/drivers/platform/x86/dell-wmi.c
index 60e0900..72f6cc8 100644
drivers/platform/x86/dell-wmi.c +0 -0
@@ -92,6 +92,9 @@ static const struct key_entry dell_wmi_legacy_keymap[]
__initconst = {
{ KE_IGNORE, 0xe025, { KEY_RESERVED } },
{ KE_IGNORE, 0xe026, { KEY_RESERVED } },+ /* For laptops like the Dell Inspiron N4110 with a monitor hotkey */
+ { KE_IGNORE, 0xe027, { KEY_SWITCHVIDEOMODE } },
+
{ KE_IGNORE, 0xe02e, { KEY_VOLUMEDOWN } },
{ KE_IGNORE, 0xe030, { KEY_VOLUMEUP } },
{ KE_IGNORE, 0xe033, { KEY_KBDILLUMUP } },Signature · 1 line
1.8.5.3
Quoted 9 lines · Matthew Garrett
Quoted 3 lines · Souvik Banerjee
I used
KE_KEYinstead ofKE_IGNORE. Should it be changed toKE_IGNORE? On my kernel build withKE_KEYeverything works as expected, but I have not tried it withKE_IGNORE.
KE_KEYmeans that dell-wmi will report the key. If it's also being reported via the keyboard controller then it should beKE_IGNOREinstead.
From 66440f78e9989d759be4dd550f76179d8df64083 Mon Sep 17 00:00:00 2001
From: Souvik Banerjee <[email protected]>
Date: Mon, 20 Jan 2014 09:10:29 -0600
Subject: [PATCH] dell-wmi: Add KEY_SWITCHVIDEOMODE for Dell N4110.
This key is reported by the keyboard controller but also generates WMI events. By adding it to the legacy keymap the WMI messages can be silenced.
--- drivers/platform/x86/dell-wmi.c | 3 +++ 1 file changed, 3 insertions(+)
drivers/platform/x86/dell-wmi.c +3 -0
@@ -92,6 +92,9 @@ static const struct key_entry dell_wmi_legacy_keymap[] __initconst = { { KE_IGNORE, 0xe025, { KEY_RESERVED } }, { KE_IGNORE, 0xe026, { KEY_RESERVED } }, +/* For laptops like the Dell Inspiron N4110 with a monitor hotkey */ + { KE_IGNORE, 0xe027, { KEY_SWITCHVIDEOMODE } }, + { KE_IGNORE, 0xe02e, { KEY_VOLUMEDOWN } }, { KE_IGNORE, 0xe030, { KEY_VOLUMEUP } }, { KE_IGNORE, 0xe033, { KEY_KBDILLUMUP } },
Signature · 1 line
1.8.5.3