diff options
author | Hans de Goede <j.w.r.degoede@hhs.nl> | 2007-06-12 22:04:32 +0200 |
---|---|---|
committer | Jiri Kosina <jkosina@suse.cz> | 2007-07-09 14:13:32 +0200 |
commit | 5fce620c0c7caa9e8d9588e8dcc66c52c456851a (patch) | |
tree | 069734e79bd8022620bd4c163f0cc67206e6ea1b /drivers/hid | |
parent | 1b3ebe931195725cceee825c430a8bd5319c2566 (diff) | |
download | op-kernel-dev-5fce620c0c7caa9e8d9588e8dcc66c52c456851a.zip op-kernel-dev-5fce620c0c7caa9e8d9588e8dcc66c52c456851a.tar.gz |
HID: fix mismatch between hid-input HUT find/search mapping and the HUT
When comparing usb vs ps2 / testing the keycodes generated for the easy access
keys on my trust (microsoft compatible) keyboard. I noticed the search key
generated the keycode for find when connected through USB. This lead me to
check the consumer page mappings in hid-input.c . And it turns out the the
mapping for ID 0x221 deviates from the HUT standard document:
http://www.usb.org/developers/devclass_docs/Hut1_12.pdf
Currently it is incorrectly mapped to find, whereas it should be mapped to
search. I also added missing bindings for ID 0x21f, the real find and for
0x222, goto.
Signed-off-by: Hans de Goede <j.w.r.degoede@hhs.nl>
Signed-off-by: Jiri Kosina <jkosina@suse.cz>
Diffstat (limited to 'drivers/hid')
-rw-r--r-- | drivers/hid/hid-input.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/hid/hid-input.c b/drivers/hid/hid-input.c index 70bf541..6cb8846 100644 --- a/drivers/hid/hid-input.c +++ b/drivers/hid/hid-input.c @@ -598,7 +598,9 @@ static void hidinput_configure_usage(struct hid_input *hidinput, struct hid_fiel case 0x21b: map_key_clear(KEY_COPY); break; case 0x21c: map_key_clear(KEY_CUT); break; case 0x21d: map_key_clear(KEY_PASTE); break; - case 0x221: map_key_clear(KEY_FIND); break; + case 0x21f: map_key_clear(KEY_FIND); break; + case 0x221: map_key_clear(KEY_SEARCH); break; + case 0x222: map_key_clear(KEY_GOTO); break; case 0x223: map_key_clear(KEY_HOMEPAGE); break; case 0x224: map_key_clear(KEY_BACK); break; case 0x225: map_key_clear(KEY_FORWARD); break; |