public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
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...)


             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