[parisc-linux-cvs] fix for "unknown scancode 7f"

Richard Hirst rhirst@linuxcare.com
Wed, 19 Dec 2001 23:25:14 +0000


My UK Compaq keyboard has the bar+backslash key left of 'Z', and
it generates scancode 0x7f.  0x7f isn't translated to anything by
default, so it doesn't work.  In theory I can use setkeycodes to
map that scancode to the keycode I want, but we never registered
any setkeycode/getkeycode functions for PS/2 keyboards.  Now that
I've fixed that, I can "setkeycodes 7f 86" and the key works.

+EXTRAVERSION = -pa21
 
Index: drivers/char/hp_psaux.c
===================================================================
RCS file: /var/cvs/linux/drivers/char/hp_psaux.c,v
retrieving revision 1.16
diff -u -r1.16 hp_psaux.c
--- drivers/char/hp_psaux.c     2001/10/29 18:38:21     1.16
+++ drivers/char/hp_psaux.c     2001/12/19 23:13:56
@@ -493,8 +493,12 @@
 }
 
 extern int pckbd_translate(unsigned char, unsigned char *, char);
+extern int pckbd_setkeycode(unsigned int, unsigned int);
+extern int pckbd_getkeycode(unsigned int);
 
 static struct kbd_ops gsc_ps2_kbd_ops = {
+       setkeycode:     pckbd_setkeycode,
+       getkeycode:     pckbd_getkeycode,
        translate:      pckbd_translate,
        leds:           lasikbd_leds,
 #ifdef CONFIG_MAGIC_SYSRQ