From: David Monro <davidm@amberdata.demon.co.uk>
To: linux-kernel@vger.kernel.org, vojtech@suse.cz
Subject: handling an oddball PS/2 keyboard
Date: Thu, 25 Dec 2003 02:49:40 +0000 [thread overview]
Message-ID: <3FEA5044.5090106@amberdata.demon.co.uk> (raw)
Hi,
I have a slightly odd PS/2 keyboard which I'm not quite sure of the best
way to handle. Its an NCD N-97, which shipped with some NCD X terminals
and also with some Mips workstations IIRC. Most of the keys produce the
normal scancodes, and most which don't can be fixed using setkeycodes.
However there are 2 keys which can't be made to work, which are F9 and
F10. The problem is that these produce raw scancodes 0x60 and 0x61,
which means the _release_ codes (setting the top bit) are 0xe0 and 0xe1.
Unfortunately on a normal PS/2 keyboard these are special prefixes, and
so pressing these keys usually ends up getting the keyboard driver into
a very confused state.
What would be the cleanest way of handling this? My quick and dirty plan
is to add a parameter to the atkbd module which just disables the
special handling of e0 and e1 (which from a cursory glance seems to be
pretty easy). However, I know that the NCD X terminals used to be able
to autodetect this keyboard. I'm guessing that they did this using the
ATKBD_CMD_GETID command, which on this keyboard returns 0xab85 (and the
comments in atkbd.c suggest that 0xab83 is normal). So the _really_ neat
way of handling this would be to match that ID and turn off the e0/e1
processing then (and it would also allow me to map the keys correctly
out-of-the box...).
So.. could I get a bunch of people to have a look in
/proc/bus/input/devices, and see what the 'Version' field for their
keyboard is? If it turns out that 0xab85 turns up on normal keyboards
then obviously I'll have to abandon the 2nd approach (or find another
way to ID it).
What chance would either of these approaches have of getting merged?
Cheers,
David
(please CC to me, I'm not currently subscribed...)
next reply other threads:[~2003-12-25 2:52 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2003-12-25 2:49 David Monro [this message]
2003-12-25 6:39 ` handling an oddball PS/2 keyboard Andries Brouwer
2003-12-25 13:16 ` John Bradford
2003-12-25 15:10 ` David Monro
2003-12-25 15:21 ` John Bradford
2003-12-26 2:04 ` handling an oddball PS/2 keyboard (w/ patch) David Monro
2003-12-26 10:22 ` Vojtech Pavlik
2003-12-26 23:58 ` Andries Brouwer
2004-01-16 10:41 ` Vojtech Pavlik
2003-12-25 15:08 ` handling an oddball PS/2 keyboard David Monro
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=3FEA5044.5090106@amberdata.demon.co.uk \
--to=davidm@amberdata.demon.co.uk \
--cc=linux-kernel@vger.kernel.org \
--cc=vojtech@suse.cz \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox