]> git.proxmox.com Git - mirror_ubuntu-disco-kernel.git/commit
HID: microsoft: fix invalid rdesc for 3k kbd
authorJiri Slaby <jslaby@suse.cz>
Fri, 19 Oct 2012 11:28:46 +0000 (13:28 +0200)
committerJiri Kosina <jkosina@suse.cz>
Wed, 31 Oct 2012 09:42:32 +0000 (10:42 +0100)
commit3ccc60f9d8c39180c205dba1a020735bda1b2491
tree63873aa7034175722c79fb56f855b7cdc9bc0ce2
parentdef7cb8cd4e3258db88050eaaca5438bcc3dafca
HID: microsoft: fix invalid rdesc for 3k kbd

Microsoft Digital Media Keyboard 3000 has two interfaces, and the
second one has a report descriptor with a bug. The second collection
says:
05 01 -- global; usage page -- 01 -- Generic Desktop Controls
09 80 -- local; usage -- 80 -- System Control
a1 01 -- main; collection -- 01 -- application

85 03 -- global; report ID -- 03
19 00 -- local; Usage Minimum -- 00
29 ff -- local; Usage Maximum -- ff
15 00 -- global; Logical Minimum -- 0
26 ff 00 -- global; Logical Maximum -- ff
81 00 -- main; input

c0 -- main; End Collection

I.e. it makes us think that there are all kinds of usages of system
control. That the keyboard is a not only a keyboard, but also a
joystick, mouse, gamepad, keypad, etc. The same as for the Wireless
Desktop Receiver, this should be Physical Min/Max. So fix that
appropriately.

References: https://bugzilla.novell.com/show_bug.cgi?id=776834
Cc: <stable@vger.kernel.org>
Signed-off-by: Jiri Slaby <jslaby@suse.cz>
Signed-off-by: Jiri Kosina <jkosina@suse.cz>
drivers/hid/hid-microsoft.c