All of lore.kernel.org
 help / color / mirror / Atom feed
* [patch 3/3] dell-wmi: mask off BIS-provided garbage in scancode data
@ 2009-05-12 20:35 akpm
  0 siblings, 0 replies; only message in thread
From: akpm @ 2009-05-12 20:35 UTC (permalink / raw)
  To: lenb; +Cc: linux-acpi, akpm, mario_limonciello, dtor, len.brown, mjg

From: Mario Limonciello <mario_limonciello@dell.com>

In debugging with some future machines that actually contain BIOS level
support for dell-wmi, I've determined that the upper half of the data that
comes back from wmi_get_event_data may sometimes contain extra information
that isn't currently relevant when pulling scan codes out of the data. 
This causes dell-wmi to improperly respond to these events.

Cc: Matthew Garrett <mjg@redhat.com>
Cc: Dmitry Torokhov <dtor@mail.ru>
Cc: Len Brown <len.brown@intel.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
---

 drivers/platform/x86/dell-wmi.c |    4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff -puN drivers/platform/x86/dell-wmi.c~dell-wmi-mask-off-bis-provided-garbage-in-scancode-data drivers/platform/x86/dell-wmi.c
--- a/drivers/platform/x86/dell-wmi.c~dell-wmi-mask-off-bis-provided-garbage-in-scancode-data
+++ a/drivers/platform/x86/dell-wmi.c
@@ -122,7 +122,7 @@ static void dell_wmi_notify(u32 value, v
 
 	if (obj && obj->type == ACPI_TYPE_BUFFER) {
 		int *buffer = (int *)obj->buffer.pointer;
-		key = dell_wmi_get_entry_by_scancode(buffer[1]);
+		key = dell_wmi_get_entry_by_scancode(0xFFFF & buffer[1]);
 		if (key) {
 			input_report_key(dell_wmi_input_dev, key->keycode, 1);
 			input_sync(dell_wmi_input_dev);
@@ -130,7 +130,7 @@ static void dell_wmi_notify(u32 value, v
 			input_sync(dell_wmi_input_dev);
 		} else
 			printk(KERN_INFO "dell-wmi: Unknown key %x pressed\n",
-			       buffer[1]);
+			       0xFFFF & buffer[1]);
 	}
 }
 
_

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2009-05-12 21:01 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2009-05-12 20:35 [patch 3/3] dell-wmi: mask off BIS-provided garbage in scancode data akpm

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.