linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* 2.5.40: AT keyboard input problem
@ 2002-10-03  6:59 Tobias Ringstrom
  2002-10-03  7:15 ` DevilKin
                   ` (3 more replies)
  0 siblings, 4 replies; 23+ messages in thread
From: Tobias Ringstrom @ 2002-10-03  6:59 UTC (permalink / raw)
  To: Vojtech Pavlik; +Cc: Kernel Mailing List

While 2.5 has worked better than I hoped for so far, I do have a problem 
with the new input layer (I think) that is easily reproducible, and quite 
irritating.

If I press and hold my left Alt key, press and release the right AltGr
key, and then release the left Alt key, I get one of the following
messages in dmesg:

atkbd.c: Unknown key (set 2, scancode 0x1b8, on isa0060/serio0) pressed.
atkbd.c: Unknown key (set 2, scancode 0x1b8, on isa0060/serio0) pressed.
atkbd.c: Unknown key (set 2, scancode 0xb8, on isa0060/serio0) pressed.
atkbd.c: Unknown key (set 2, scancode 0xb8, on isa0060/serio0) pressed.
atkbd.c: Unknown key (set 2, scancode 0xb8, on isa0060/serio0) pressed.
atkbd.c: Unknown key (set 2, scancode 0xb8, on isa0060/serio0) pressed.
atkbd.c: Unknown key (set 2, scancode 0xb8, on isa0060/serio0) pressed.
atkbd.c: Unknown key (set 2, scancode 0x1b8, on isa0060/serio0) pressed.
atkbd.c: Unknown key (set 2, scancode 0xb8, on isa0060/serio0) pressed.
atkbd.c: Unknown key (set 2, scancode 0xb8, on isa0060/serio0) pressed.
atkbd.c: Unknown key (set 2, scancode 0x1b8, on isa0060/serio0) pressed.
atkbd.c: Unknown key (set 2, scancode 0x1b8, on isa0060/serio0) pressed.
atkbd.c: Unknown key (set 2, scancode 0xb8, on isa0060/serio0) pressed.
atkbd.c: Unknown key (set 2, scancode 0xb8, on isa0060/serio0) pressed.
atkbd.c: Unknown key (set 2, scancode 0x1b8, on isa0060/serio0) pressed.
atkbd.c: Unknown key (set 2, scancode 0x9d, on isa0060/serio0) pressed.
atkbd.c: Unknown key (set 2, scancode 0x9d, on isa0060/serio0) pressed.

The left Alt key is now stuck until I press and release it again.

The same thing happens for a few other combinations as well. I happens 
both in X and in the console.

Please let me know if you need more info.

/Tobias


^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: 2.5.40: AT keyboard input problem
  2002-10-03  6:59 2.5.40: AT keyboard input problem Tobias Ringstrom
@ 2002-10-03  7:15 ` DevilKin
  2002-10-03  8:36 ` jbradford
                   ` (2 subsequent siblings)
  3 siblings, 0 replies; 23+ messages in thread
From: DevilKin @ 2002-10-03  7:15 UTC (permalink / raw)
  To: Tobias Ringstrom; +Cc: linux-kernel

On Thursday 03 October 2002 08:59, Tobias Ringstrom wrote:
> While 2.5 has worked better than I hoped for so far, I do have a problem
> with the new input layer (I think) that is easily reproducible, and quite
> irritating.

I have a similar problem, first noted when using the SysRQ.

With the 2.4.x kernels i can press Alt-SysRQ, and then press the keys I want 
successively (e.g. S M O for Sync Umount Off). Now i have to release 
Alt-SysRQ everytime, and 1/2 of the time it doesn't recognize the press i 
gave.

Also, the Alt key tends to get stuck now and again, and sometimes for no 
reason i get multiple chars when I only strike a key once.

Odd behaviour.

DK
-- 
You should never wear your best trousers when you go out to fight for
freedom and liberty.
		-- Henrik Ibsen


^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: 2.5.40: AT keyboard input problem
  2002-10-03  6:59 2.5.40: AT keyboard input problem Tobias Ringstrom
  2002-10-03  7:15 ` DevilKin
@ 2002-10-03  8:36 ` jbradford
  2002-10-03  8:48   ` Vojtech Pavlik
  2002-10-03  8:47 ` Vojtech Pavlik
  2002-10-03 12:48 ` Jon Portnoy
  3 siblings, 1 reply; 23+ messages in thread
From: jbradford @ 2002-10-03  8:36 UTC (permalink / raw)
  To: Tobias Ringstrom; +Cc: vojtech, linux-kernel

> While 2.5 has worked better than I hoped for so far, I do have a problem 
> with the new input layer (I think) that is easily reproducible, and quite 
> irritating.
> 
> If I press and hold my left Alt key, press and release the right AltGr
> key, and then release the left Alt key, I get one of the following
> messages in dmesg:

[snip]

> The same thing happens for a few other combinations as well. I happens 
> both in X and in the console.

I am getting similar odd behavior with 2.5.40 and a Japanese keyboard.  Specifically, if I bang away at repeatedly on 't', 'h', '@', and ';', I get unknown key messages in dmesg.

I posted about this a while ago, but I don't think anybody noticed :-)

John.

^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: 2.5.40: AT keyboard input problem
  2002-10-03  6:59 2.5.40: AT keyboard input problem Tobias Ringstrom
  2002-10-03  7:15 ` DevilKin
  2002-10-03  8:36 ` jbradford
@ 2002-10-03  8:47 ` Vojtech Pavlik
  2002-10-03 12:08   ` Tobias Ringstrom
  2002-10-03 12:48 ` Jon Portnoy
  3 siblings, 1 reply; 23+ messages in thread
From: Vojtech Pavlik @ 2002-10-03  8:47 UTC (permalink / raw)
  To: Tobias Ringstrom; +Cc: Vojtech Pavlik, Kernel Mailing List

On Thu, Oct 03, 2002 at 08:59:30AM +0200, Tobias Ringstrom wrote:
> While 2.5 has worked better than I hoped for so far, I do have a problem 
> with the new input layer (I think) that is easily reproducible, and quite 
> irritating.
> 
> If I press and hold my left Alt key, press and release the right AltGr
> key, and then release the left Alt key, I get one of the following
> messages in dmesg:
> 
> atkbd.c: Unknown key (set 2, scancode 0x1b8, on isa0060/serio0) pressed.
> atkbd.c: Unknown key (set 2, scancode 0x1b8, on isa0060/serio0) pressed.
> atkbd.c: Unknown key (set 2, scancode 0xb8, on isa0060/serio0) pressed.
> atkbd.c: Unknown key (set 2, scancode 0xb8, on isa0060/serio0) pressed.
> atkbd.c: Unknown key (set 2, scancode 0xb8, on isa0060/serio0) pressed.
> atkbd.c: Unknown key (set 2, scancode 0xb8, on isa0060/serio0) pressed.
> atkbd.c: Unknown key (set 2, scancode 0xb8, on isa0060/serio0) pressed.
> atkbd.c: Unknown key (set 2, scancode 0x1b8, on isa0060/serio0) pressed.
> atkbd.c: Unknown key (set 2, scancode 0xb8, on isa0060/serio0) pressed.
> atkbd.c: Unknown key (set 2, scancode 0xb8, on isa0060/serio0) pressed.
> atkbd.c: Unknown key (set 2, scancode 0x1b8, on isa0060/serio0) pressed.
> atkbd.c: Unknown key (set 2, scancode 0x1b8, on isa0060/serio0) pressed.
> atkbd.c: Unknown key (set 2, scancode 0xb8, on isa0060/serio0) pressed.
> atkbd.c: Unknown key (set 2, scancode 0xb8, on isa0060/serio0) pressed.
> atkbd.c: Unknown key (set 2, scancode 0x1b8, on isa0060/serio0) pressed.
> atkbd.c: Unknown key (set 2, scancode 0x9d, on isa0060/serio0) pressed.
> atkbd.c: Unknown key (set 2, scancode 0x9d, on isa0060/serio0) pressed.
> 
> The left Alt key is now stuck until I press and release it again.
> 
> The same thing happens for a few other combinations as well. I happens 
> both in X and in the console.
> 
> Please let me know if you need more info.

Yes, please try with #I8042_DEBUG_IO enabled, try all the suspicious key
combinations and add comments to the log file which is which. This will
allow me to fix it properly.

Thanks in advance. :)

-- 
Vojtech Pavlik
SuSE Labs

^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: 2.5.40: AT keyboard input problem
  2002-10-03  8:36 ` jbradford
@ 2002-10-03  8:48   ` Vojtech Pavlik
  2002-10-03 10:14     ` jbradford
  0 siblings, 1 reply; 23+ messages in thread
From: Vojtech Pavlik @ 2002-10-03  8:48 UTC (permalink / raw)
  To: jbradford; +Cc: Tobias Ringstrom, vojtech, linux-kernel

On Thu, Oct 03, 2002 at 09:36:05AM +0100, jbradford@dial.pipex.com wrote:
> > While 2.5 has worked better than I hoped for so far, I do have a problem 
> > with the new input layer (I think) that is easily reproducible, and quite 
> > irritating.
> > 
> > If I press and hold my left Alt key, press and release the right AltGr
> > key, and then release the left Alt key, I get one of the following
> > messages in dmesg:
> 
> [snip]
> 
> > The same thing happens for a few other combinations as well. I happens 
> > both in X and in the console.
> 
> I am getting similar odd behavior with 2.5.40 and a Japanese keyboard.  Specifically, if I bang away at repeatedly on 't', 'h', '@', and ';', I get unknown key messages in dmesg.
> 
> I posted about this a while ago, but I don't think anybody noticed :-)

Can you #define I8042_DEBUG_IO in i8042.h and send me the 'dmesg' output
of the unknown key message and data around it?

-- 
Vojtech Pavlik
SuSE Labs

^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: 2.5.40: AT keyboard input problem
  2002-10-03 10:14     ` jbradford
@ 2002-10-03 10:13       ` Vojtech Pavlik
  2002-10-03 11:34         ` jbradford
  0 siblings, 1 reply; 23+ messages in thread
From: Vojtech Pavlik @ 2002-10-03 10:13 UTC (permalink / raw)
  To: jbradford; +Cc: Vojtech Pavlik, tori, linux-kernel

On Thu, Oct 03, 2002 at 11:14:02AM +0100, jbradford@dial.pipex.com wrote:
> > 
> > On Thu, Oct 03, 2002 at 09:36:05AM +0100, jbradford@dial.pipex.com wrote:
> > > > While 2.5 has worked better than I hoped for so far, I do have a problem 
> > > > with the new input layer (I think) that is easily reproducible, and quite 
> > > > irritating.
> > > > 
> > > > If I press and hold my left Alt key, press and release the right AltGr
> > > > key, and then release the left Alt key, I get one of the following
> > > > messages in dmesg:
> > > 
> > > [snip]
> > > 
> > > > The same thing happens for a few other combinations as well. I happens 
> > > > both in X and in the console.
> > > 
> > > I am getting similar odd behavior with 2.5.40 and a Japanese keyboard.  Specifically, if I bang away at repeatedly on 't', 'h', '@', and ';', I get unknown key messages in dmesg.
> > > 
> > > I posted about this a while ago, but I don't think anybody noticed :-)
> > 
> > Can you #define I8042_DEBUG_IO in i8042.h and send me the 'dmesg' output
> > of the unknown key message and data around it?
> 
> OK, that was fun - every time I managed to cause the error, by the time I'd switched to another VT, and typed dmesg, it was flooded with other keypresses :-).  I should have used a serial terminal, but anyway, here goes:
> 
> i8042.c: fa <- i8042 (interrupt, kbd, 1) [694909]
> i8042.c: f0 -> i8042 (kbd-data) [694909]
> i8042.c: fa <- i8042 (interrupt, kbd, 1) [694912]
> i8042.c: 00 -> i8042 (kbd-data) [694912]
> i8042.c: fa <- i8042 (interrupt, kbd, 1) [694915]
> i8042.c: 41 <- i8042 (interrupt, kbd, 1) [694916]
> input: AT Set 2 keyboard on isa0060/serio0
> i8042.c: 94 <- i8042 (interrupt, kbd, 1) [694937]
> i8042.c: a3 <- i8042 (interrupt, kbd, 1) [694943]
> i8042.c: 38 <- i8042 (interrupt, kbd, 1) [696272]
> i8042.c: 3d <- i8042 (interrupt, kbd, 1) [696372]
> i8042.c: bd <- i8042 (interrupt, kbd, 1) [696440]
> i8042.c: b8 <- i8042 (interrupt, kbd, 1) [696446]
> i8042.c: 1c <- i8042 (interrupt, kbd, 1) [697112]
> 
> This was in the syslog:
> 
> Oct  3 10:54:59 darkstar kernel: atkbd.c: Unknown key (set 2, scancode 0x94, on isa0060/serio0) pressed.

What's on the lines just before this one from i8042.c?

> I am unable to reproduce this by pressing any single key.  Only by repeatedly pressing many keys, (I.E. bashing the keyboard like mad), does this occur, (and not always with the same scancode).  Very odd.
> 
> This particular IBM Japanese keyboard seems to be even more exotic than most, in several ways, that might be relevant:
> 
> The Henkaku/Zenkaku key, which is in the top left, below escape, does not have a scancode by default, I.E. showkey -s reports nothing when it is pressed.

showkey -s doesn't return true rawmode anymore because of USB keyboards,
etc. So I'll need the dmesg log of these keys pressed.

> The three kana shift keys, (one between alt and the spacebar, and two between alt-gr and the spacebar), which are marked differently to any other Japanese keyboard I've ever seen, all report the keycode 57, and scancode 0x39 when pressed, and scancode 0xb9 when released - the same as the space bar.  Therefore it doesn't seem possible to use them as independent keys.

Again, the dmesg log for these would be more interesting.

> The keyboard has a speaker in it, and a volume control, but it's never made a single noise, apart from a click when it's switched on, (so it does work).
> 
> This is a very strange keyboard :-).  94X1110 is the IBM part number.
> 
> John.

-- 
Vojtech Pavlik
SuSE Labs

^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: 2.5.40: AT keyboard input problem
  2002-10-03  8:48   ` Vojtech Pavlik
@ 2002-10-03 10:14     ` jbradford
  2002-10-03 10:13       ` Vojtech Pavlik
  0 siblings, 1 reply; 23+ messages in thread
From: jbradford @ 2002-10-03 10:14 UTC (permalink / raw)
  To: Vojtech Pavlik; +Cc: tori, linux-kernel

> 
> On Thu, Oct 03, 2002 at 09:36:05AM +0100, jbradford@dial.pipex.com wrote:
> > > While 2.5 has worked better than I hoped for so far, I do have a problem 
> > > with the new input layer (I think) that is easily reproducible, and quite 
> > > irritating.
> > > 
> > > If I press and hold my left Alt key, press and release the right AltGr
> > > key, and then release the left Alt key, I get one of the following
> > > messages in dmesg:
> > 
> > [snip]
> > 
> > > The same thing happens for a few other combinations as well. I happens 
> > > both in X and in the console.
> > 
> > I am getting similar odd behavior with 2.5.40 and a Japanese keyboard.  Specifically, if I bang away at repeatedly on 't', 'h', '@', and ';', I get unknown key messages in dmesg.
> > 
> > I posted about this a while ago, but I don't think anybody noticed :-)
> 
> Can you #define I8042_DEBUG_IO in i8042.h and send me the 'dmesg' output
> of the unknown key message and data around it?

OK, that was fun - every time I managed to cause the error, by the time I'd switched to another VT, and typed dmesg, it was flooded with other keypresses :-).  I should have used a serial terminal, but anyway, here goes:

i8042.c: fa <- i8042 (interrupt, kbd, 1) [694909]
i8042.c: f0 -> i8042 (kbd-data) [694909]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [694912]
i8042.c: 00 -> i8042 (kbd-data) [694912]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [694915]
i8042.c: 41 <- i8042 (interrupt, kbd, 1) [694916]
input: AT Set 2 keyboard on isa0060/serio0
i8042.c: 94 <- i8042 (interrupt, kbd, 1) [694937]
i8042.c: a3 <- i8042 (interrupt, kbd, 1) [694943]
i8042.c: 38 <- i8042 (interrupt, kbd, 1) [696272]
i8042.c: 3d <- i8042 (interrupt, kbd, 1) [696372]
i8042.c: bd <- i8042 (interrupt, kbd, 1) [696440]
i8042.c: b8 <- i8042 (interrupt, kbd, 1) [696446]
i8042.c: 1c <- i8042 (interrupt, kbd, 1) [697112]

This was in the syslog:

Oct  3 10:54:59 darkstar kernel: atkbd.c: Unknown key (set 2, scancode 0x94, on isa0060/serio0) pressed.

I am unable to reproduce this by pressing any single key.  Only by repeatedly pressing many keys, (I.E. bashing the keyboard like mad), does this occur, (and not always with the same scancode).  Very odd.

This particular IBM Japanese keyboard seems to be even more exotic than most, in several ways, that might be relevant:

The Henkaku/Zenkaku key, which is in the top left, below escape, does not have a scancode by default, I.E. showkey -s reports nothing when it is pressed.

The three kana shift keys, (one between alt and the spacebar, and two between alt-gr and the spacebar), which are marked differently to any other Japanese keyboard I've ever seen, all report the keycode 57, and scancode 0x39 when pressed, and scancode 0xb9 when released - the same as the space bar.  Therefore it doesn't seem possible to use them as independent keys.

The keyboard has a speaker in it, and a volume control, but it's never made a single noise, apart from a click when it's switched on, (so it does work).

This is a very strange keyboard :-).  94X1110 is the IBM part number.

John.

^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: 2.5.40: AT keyboard input problem
  2002-10-03 11:34         ` jbradford
@ 2002-10-03 11:31           ` Vojtech Pavlik
  2002-10-03 12:42             ` jbradford
  0 siblings, 1 reply; 23+ messages in thread
From: Vojtech Pavlik @ 2002-10-03 11:31 UTC (permalink / raw)
  To: jbradford; +Cc: Vojtech Pavlik, tori, linux-kernel

On Thu, Oct 03, 2002 at 12:34:15PM +0100, jbradford@dial.pipex.com wrote:
> > On Thu, Oct 03, 2002 at 11:14:02AM +0100, jbradford@dial.pipex.com wrote:
> > > > 
> > > > On Thu, Oct 03, 2002 at 09:36:05AM +0100, jbradford@dial.pipex.com wrote:
> > > > > > While 2.5 has worked better than I hoped for so far, I do have a problem 
> > > > > > with the new input layer (I think) that is easily reproducible, and quite 
> > > > > > irritating.
> > > > > > 
> > > > > > If I press and hold my left Alt key, press and release the right AltGr
> > > > > > key, and then release the left Alt key, I get one of the following
> > > > > > messages in dmesg:
> > > > > 
> > > > > [snip]
> > > > > 
> > > > > > The same thing happens for a few other combinations as well. I happens 
> > > > > > both in X and in the console.
> > > > > 
> > > > > I am getting similar odd behavior with 2.5.40 and a Japanese keyboard.
> > > > > Specifically, if I bang away at repeatedly on 't', 'h', '@', and ';', I
> > > > > get unknown key messages in dmesg.
> > > > > 
> > > > > I posted about this a while ago, but I don't think anybody noticed :-)
> > > > 
> > > > Can you #define I8042_DEBUG_IO in i8042.h and send me the 'dmesg' output
> > > > of the unknown key message and data around it?
> > > 
> > > OK, that was fun - every time I managed to cause the error, by the time I'd
> > > switched to another VT, and typed dmesg, it was flooded with other keypresses
> > > :-).  I should have used a serial terminal, but anyway, here goes:
> > > 
> > > i8042.c: fa <- i8042 (interrupt, kbd, 1) [694909]
> > > i8042.c: f0 -> i8042 (kbd-data) [694909]
> > > i8042.c: fa <- i8042 (interrupt, kbd, 1) [694912]
> > > i8042.c: 00 -> i8042 (kbd-data) [694912]
> > > i8042.c: fa <- i8042 (interrupt, kbd, 1) [694915]
> > > i8042.c: 41 <- i8042 (interrupt, kbd, 1) [694916]
> > > input: AT Set 2 keyboard on isa0060/serio0
> > > i8042.c: 94 <- i8042 (interrupt, kbd, 1) [694937]
> > > i8042.c: a3 <- i8042 (interrupt, kbd, 1) [694943]
> > > i8042.c: 38 <- i8042 (interrupt, kbd, 1) [696272]
> > > i8042.c: 3d <- i8042 (interrupt, kbd, 1) [696372]
> > > i8042.c: bd <- i8042 (interrupt, kbd, 1) [696440]
> > > i8042.c: b8 <- i8042 (interrupt, kbd, 1) [696446]
> > > i8042.c: 1c <- i8042 (interrupt, kbd, 1) [697112]
> > > 
> > > This was in the syslog:
> > > 
> > > Oct  3 10:54:59 darkstar kernel: atkbd.c: Unknown key (set 2, scancode 0x94, on isa0060/serio0) pressed.
> > 
> > What's on the lines just before this one from i8042.c?
> 
> Forget the above report, I've since done a more comprehensive one, (below):

Yes, that one is perfect. Now some more tests to do with the keyboard:

1) The same with i8042_direct on the kernel command line.
2) The same with i8042_direct and atkbd_set=3 on the kernel command line.

It may make the extra keyboards work and will definitely explain what's
happening in greater detail.

-- 
Vojtech Pavlik
SuSE Labs

^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: 2.5.40: AT keyboard input problem
  2002-10-03 10:13       ` Vojtech Pavlik
@ 2002-10-03 11:34         ` jbradford
  2002-10-03 11:31           ` Vojtech Pavlik
  0 siblings, 1 reply; 23+ messages in thread
From: jbradford @ 2002-10-03 11:34 UTC (permalink / raw)
  To: Vojtech Pavlik; +Cc: tori, linux-kernel

> On Thu, Oct 03, 2002 at 11:14:02AM +0100, jbradford@dial.pipex.com wrote:
> > > 
> > > On Thu, Oct 03, 2002 at 09:36:05AM +0100, jbradford@dial.pipex.com wrote:
> > > > > While 2.5 has worked better than I hoped for so far, I do have a problem 
> > > > > with the new input layer (I think) that is easily reproducible, and quite 
> > > > > irritating.
> > > > > 
> > > > > If I press and hold my left Alt key, press and release the right AltGr
> > > > > key, and then release the left Alt key, I get one of the following
> > > > > messages in dmesg:
> > > > 
> > > > [snip]
> > > > 
> > > > > The same thing happens for a few other combinations as well. I happens 
> > > > > both in X and in the console.
> > > > 
> > > > I am getting similar odd behavior with 2.5.40 and a Japanese keyboard.
> > > > Specifically, if I bang away at repeatedly on 't', 'h', '@', and ';', I
> > > > get unknown key messages in dmesg.
> > > > 
> > > > I posted about this a while ago, but I don't think anybody noticed :-)
> > > 
> > > Can you #define I8042_DEBUG_IO in i8042.h and send me the 'dmesg' output
> > > of the unknown key message and data around it?
> > 
> > OK, that was fun - every time I managed to cause the error, by the time I'd
> > switched to another VT, and typed dmesg, it was flooded with other keypresses
> > :-).  I should have used a serial terminal, but anyway, here goes:
> > 
> > i8042.c: fa <- i8042 (interrupt, kbd, 1) [694909]
> > i8042.c: f0 -> i8042 (kbd-data) [694909]
> > i8042.c: fa <- i8042 (interrupt, kbd, 1) [694912]
> > i8042.c: 00 -> i8042 (kbd-data) [694912]
> > i8042.c: fa <- i8042 (interrupt, kbd, 1) [694915]
> > i8042.c: 41 <- i8042 (interrupt, kbd, 1) [694916]
> > input: AT Set 2 keyboard on isa0060/serio0
> > i8042.c: 94 <- i8042 (interrupt, kbd, 1) [694937]
> > i8042.c: a3 <- i8042 (interrupt, kbd, 1) [694943]
> > i8042.c: 38 <- i8042 (interrupt, kbd, 1) [696272]
> > i8042.c: 3d <- i8042 (interrupt, kbd, 1) [696372]
> > i8042.c: bd <- i8042 (interrupt, kbd, 1) [696440]
> > i8042.c: b8 <- i8042 (interrupt, kbd, 1) [696446]
> > i8042.c: 1c <- i8042 (interrupt, kbd, 1) [697112]
> > 
> > This was in the syslog:
> > 
> > Oct  3 10:54:59 darkstar kernel: atkbd.c: Unknown key (set 2, scancode 0x94, on isa0060/serio0) pressed.
> 
> What's on the lines just before this one from i8042.c?

Forget the above report, I've since done a more comprehensive one, (below):

> > I am unable to reproduce this by pressing any single key.  Only by repeatedly
> > pressing many keys, (I.E. bashing the keyboard like mad), does this occur,
> > (and not always with the same scancode).  Very odd.
> > 
> > This particular IBM Japanese keyboard seems to be even more exotic than most,
> > in several ways, that might be relevant:
> > 
> > The Henkaku/Zenkaku key, which is in the top left, below escape, does not have
> > a scancode by default, I.E. showkey -s reports nothing when it is pressed.
> 
> showkey -s doesn't return true rawmode anymore because of USB keyboards,
> etc. So I'll need the dmesg log of these keys pressed.

Hmmm, but it's never worked since the 2.0.x days, (I've used this keyboard for over 5 years).

> > The three kana shift keys, (one between alt and the spacebar, and two between
> > alt-gr and the spacebar), which are marked differently to any other Japanese
> > keyboard I've ever seen, all report the keycode 57, and scancode 0x39 when
> > pressed, and scancode 0xb9 when released - the same as the space bar.
> > Therefore it doesn't seem possible to use them as independent keys.
> 
> Again, the dmesg log for these would be more interesting.

OK, here goes.  This is dmesg output from a serial terminal, showing a boot, (quite a lot of keyboard activity during boot, not sure if this is normal or not), and a single keypress of Henkaku/Zenkaku:

Linux version 2.5.40 (root@darkstar) (gcc version 2.95.3 20010315 (release)) #11 Thu Oct 3 10:37:32 BST 2002
Video mode to be used for restore is ffff
BIOS-provided physical RAM map:
 BIOS-e820: 0000000000000000 - 00000000000a0000 (usable)
 BIOS-e820: 00000000000f0000 - 0000000000100000 (reserved)
 BIOS-e820: 0000000000100000 - 0000000008000000 (usable)
 BIOS-e820: 00000000ffff0000 - 0000000100000000 (reserved)
128MB LOWMEM available.
On node 0 totalpages: 32768
  DMA zone: 4096 pages
  Normal zone: 28672 pages
  HighMem zone: 0 pages
Building zonelist for node : 0
Kernel command line: BOOT_IMAGE=linux-debug ro root=301
Initializing CPU#0
Detected 200.459 MHz processor.
Console: colour VGA+ 80x25
Calibrating delay loop... 396.28 BogoMIPS
Memory: 127388k/131072k available (1104k kernel code, 3300k reserved, 335k data, 224k init, 0k highmem)
Security Scaffold v1.0.0 initialized
Dentry-cache hash table entries: 16384 (order: 5, 131072 bytes)
Inode-cache hash table entries: 8192 (order: 4, 65536 bytes)
Mount-cache hash table entries: 512 (order: 0, 4096 bytes)
CPU: Before vendor init, caps: 008001bf 00000000 00000000, vendor = 0
Intel Pentium with F0 0F bug - workaround enabled.
CPU: After vendor init, caps: 008001bf 00000000 00000000 00000000
CPU:     After generic, caps: 008001bf 00000000 00000000 00000000
CPU:             Common caps: 008001bf 00000000 00000000 00000000
CPU: Intel Pentium MMX stepping 03
Checking 'hlt' instruction... OK.
POSIX conformance testing by UNIFIX
Linux NET4.0 for Linux 2.4
Based upon Swansea University Computer Society NET3.039
Initializing RT netlink socket
PCI: PCI BIOS revision 2.10 entry at 0xfb460, last bus=0
PCI: Using configuration type 1
adding '' to cpu class interfaces
PCI: Probing PCI hardware
PCI: Probing PCI hardware (bus 00)
Starting kswapd
BIO: pool of 256 setup, 14Kb (56 bytes/bio)
biovec pool[0]:   1 bvecs: 246 entries (12 bytes)
biovec pool[1]:   4 bvecs: 246 entries (48 bytes)
biovec pool[2]:  16 bvecs: 246 entries (192 bytes)
biovec pool[3]:  64 bvecs: 246 entries (768 bytes)
biovec pool[4]: 128 bvecs: 123 entries (1536 bytes)
biovec pool[5]: 256 bvecs:  61 entries (3072 bytes)
aio_setup: sizeof(struct page) = 40
Capability LSM initialized
Limiting direct PCI/PCI transfers.
Activating ISA DMA hang workarounds.
Serial: 8250/16550 driver $Revision: 1.90 $ IRQ sharing disabled
ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A
ttyS1 at I/O 0x2f8 (irq = 3) is a 16550A
block request queues:
 128 requests per read queue
 128 requests per write queue
 8 requests per batch
 enter congestion at 31
 exit congestion at 33
Floppy drive(s): fd0 is 1.44M
FDC 0 is a post-1991 82077
PPP generic driver version 2.4.2
Uniform Multi-Platform E-IDE driver Revision: 7.00alpha2
ide: Assuming 33MHz system bus speed for PIO modes; override with idebus=xx
PIIX3: IDE controller at PCI slot 00:07.1
PIIX3: chipset revision 0
PIIX3: not 100% native mode: will probe irqs later
    ide0: BM-DMA at 0xf000-0xf007, BIOS settings: hda:pio, hdb:pio
hda: Maxtor 90432D2, ATA DISK drive
ide0 at 0x1f0-0x1f7,0x3f6 on irq 14
hda: host protected area => 1
hda: 8440992 sectors (4322 MB) w/512KiB Cache, CHS=525/255/63, (U)DMA
 hda: hda1
SCSI subsystem driver Revision: 1.00
scsi0 : Adaptec AIC7XXX EISA/VLB/PCI SCSI HBA DRIVER, Rev 6.2.4
        <Adaptec 2940A Ultra SCSI adapter>
        aic7860: Ultra Single Channel A, SCSI Id=7, 3/253 SCBs

  Vendor: NEC       Model: CD-ROM DRIVE:462  Rev: 1.16
  Type:   CD-ROM                             ANSI SCSI revision: 02
(scsi0:A:1): 10.000MB/s transfers (10.000MHz, offset 15)
Attached scsi CD-ROM sr0 at scsi0, channel 0, id 1, lun 0
sr0: scsi-1 drive
Uniform CD-ROM driver Revision: 3.12
input: PC Speaker
i8042.c: 20 -> i8042 (command) [0]
i8042.c: 47 <- i8042 (return) [0]
i8042.c: 60 -> i8042 (command) [0]
i8042.c: 56 -> i8042 (parameter) [0]
i8042.c: d3 -> i8042 (command) [0]
i8042.c: 5a -> i8042 (parameter) [0]
i8042.c: a5 <- i8042 (return) [0]
i8042.c: a9 -> i8042 (command) [0]
i8042.c: 00 <- i8042 (return) [0]
i8042.c: a7 -> i8042 (command) [1]
i8042.c: 20 -> i8042 (command) [1]
i8042.c: 76 <- i8042 (return) [1]
i8042.c: a8 -> i8042 (command) [1]
i8042.c: 20 -> i8042 (command) [1]
i8042.c: 56 <- i8042 (return) [1]
i8042.c: 60 -> i8042 (command) [2]
i8042.c: 74 -> i8042 (parameter) [2]
i8042.c: 60 -> i8042 (command) [2]
i8042.c: 54 -> i8042 (parameter) [2]
i8042.c: 60 -> i8042 (command) [2]
i8042.c: 56 -> i8042 (parameter) [2]
i8042.c: d4 -> i8042 (command) [2]
i8042.c: ed -> i8042 (parameter) [2]
i8042.c: 60 -> i8042 (command) [56]
i8042.c: 54 -> i8042 (parameter) [56]
i8042.c: fe <- i8042 (interrupt, aux, 12, timeout) [57]
serio: i8042 AUX port at 0x60,0x64 irq 12
i8042.c: 60 -> i8042 (command) [57]
i8042.c: 44 -> i8042 (parameter) [57]
i8042.c: 60 -> i8042 (command) [57]
i8042.c: 45 -> i8042 (parameter) [57]
i8042.c: ed -> i8042 (kbd-data) [58]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [60]
i8042.c: 00 -> i8042 (kbd-data) [60]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [63]
i8042.c: f2 -> i8042 (kbd-data) [63]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [66]
i8042.c: ab <- i8042 (interrupt, kbd, 1) [67]
i8042.c: 90 <- i8042 (interrupt, kbd, 1) [68]
i8042.c: f8 -> i8042 (kbd-data) [68]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [71]
i8042.c: f4 -> i8042 (kbd-data) [71]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [75]
i8042.c: ea -> i8042 (kbd-data) [75]
i8042.c: fe <- i8042 (interrupt, kbd, 1) [78]
i8042.c: f0 -> i8042 (kbd-data) [78]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [81]
i8042.c: 02 -> i8042 (kbd-data) [81]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [83]
i8042.c: f0 -> i8042 (kbd-data) [83]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [86]
i8042.c: 00 -> i8042 (kbd-data) [86]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [89]
i8042.c: 41 <- i8042 (interrupt, kbd, 1) [90]
input: AT Set 2 keyboard on isa0060/serio0
serio: i8042 KBD port at 0x60,0x64 irq 1
NET4: Linux TCP/IP 1.0 for NET4.0
IP Protocols: ICMP, UDP, TCP
IP: routing cache hash table of 1024 buckets, 8Kbytes
TCP: Hash tables configured (established 8192 bind 8192)
ip_conntrack version 2.1 (1024 buckets, 8192 max) - 292 bytes per conntrack
NET4: Unix domain sockets 1.0/SMP for Linux NET4.0.
VFS: Mounted root (ext2 filesystem) readonly.
Freeing unused kernel memory: 224k freed
i8042.c: ff <- i8042 (interrupt, kbd, 1) [60446]

..and this is a boot followed by a press of the four keys - '???', 'space', '???', 'hiragana/romaji characters', (I can't read the text on the ones marked '???').

Linux version 2.5.40 (root@darkstar) (gcc version 2.95.3 20010315 (release)) #11 Thu Oct 3 10:37:32 BST 2002
Video mode to be used for restore is ffff
BIOS-provided physical RAM map:
 BIOS-e820: 0000000000000000 - 00000000000a0000 (usable)
 BIOS-e820: 00000000000f0000 - 0000000000100000 (reserved)
 BIOS-e820: 0000000000100000 - 0000000008000000 (usable)
 BIOS-e820: 00000000ffff0000 - 0000000100000000 (reserved)
128MB LOWMEM available.
On node 0 totalpages: 32768
  DMA zone: 4096 pages
  Normal zone: 28672 pages
  HighMem zone: 0 pages
Building zonelist for node : 0
Kernel command line: BOOT_IMAGE=linux-debug ro root=301
Initializing CPU#0
Detected 200.483 MHz processor.
Console: colour VGA+ 80x25
Calibrating delay loop... 396.28 BogoMIPS
Memory: 127388k/131072k available (1104k kernel code, 3300k reserved, 335k data, 224k init, 0k highmem)
Security Scaffold v1.0.0 initialized
Dentry-cache hash table entries: 16384 (order: 5, 131072 bytes)
Inode-cache hash table entries: 8192 (order: 4, 65536 bytes)
Mount-cache hash table entries: 512 (order: 0, 4096 bytes)
CPU: Before vendor init, caps: 008001bf 00000000 00000000, vendor = 0
Intel Pentium with F0 0F bug - workaround enabled.
CPU: After vendor init, caps: 008001bf 00000000 00000000 00000000
CPU:     After generic, caps: 008001bf 00000000 00000000 00000000
CPU:             Common caps: 008001bf 00000000 00000000 00000000
CPU: Intel Pentium MMX stepping 03
Checking 'hlt' instruction... OK.
POSIX conformance testing by UNIFIX
Linux NET4.0 for Linux 2.4
Based upon Swansea University Computer Society NET3.039
Initializing RT netlink socket
PCI: PCI BIOS revision 2.10 entry at 0xfb460, last bus=0
PCI: Using configuration type 1
adding '' to cpu class interfaces
PCI: Probing PCI hardware
PCI: Probing PCI hardware (bus 00)
Starting kswapd
BIO: pool of 256 setup, 14Kb (56 bytes/bio)
biovec pool[0]:   1 bvecs: 246 entries (12 bytes)
biovec pool[1]:   4 bvecs: 246 entries (48 bytes)
biovec pool[2]:  16 bvecs: 246 entries (192 bytes)
biovec pool[3]:  64 bvecs: 246 entries (768 bytes)
biovec pool[4]: 128 bvecs: 123 entries (1536 bytes)
biovec pool[5]: 256 bvecs:  61 entries (3072 bytes)
aio_setup: sizeof(struct page) = 40
Capability LSM initialized
Limiting direct PCI/PCI transfers.
Activating ISA DMA hang workarounds.
Serial: 8250/16550 driver $Revision: 1.90 $ IRQ sharing disabled
ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A
ttyS1 at I/O 0x2f8 (irq = 3) is a 16550A
block request queues:
 128 requests per read queue
 128 requests per write queue
 8 requests per batch
 enter congestion at 31
 exit congestion at 33
Floppy drive(s): fd0 is 1.44M
FDC 0 is a post-1991 82077
PPP generic driver version 2.4.2
Uniform Multi-Platform E-IDE driver Revision: 7.00alpha2
ide: Assuming 33MHz system bus speed for PIO modes; override with idebus=xx
PIIX3: IDE controller at PCI slot 00:07.1
PIIX3: chipset revision 0
PIIX3: not 100% native mode: will probe irqs later
    ide0: BM-DMA at 0xf000-0xf007, BIOS settings: hda:pio, hdb:pio
hda: Maxtor 90432D2, ATA DISK drive
ide0 at 0x1f0-0x1f7,0x3f6 on irq 14
hda: host protected area => 1
hda: 8440992 sectors (4322 MB) w/512KiB Cache, CHS=525/255/63, (U)DMA
 hda: hda1
SCSI subsystem driver Revision: 1.00
scsi0 : Adaptec AIC7XXX EISA/VLB/PCI SCSI HBA DRIVER, Rev 6.2.4
        <Adaptec 2940A Ultra SCSI adapter>
        aic7860: Ultra Single Channel A, SCSI Id=7, 3/253 SCBs

  Vendor: NEC       Model: CD-ROM DRIVE:462  Rev: 1.16
  Type:   CD-ROM                             ANSI SCSI revision: 02
(scsi0:A:1): 10.000MB/s transfers (10.000MHz, offset 15)
Attached scsi CD-ROM sr0 at scsi0, channel 0, id 1, lun 0
sr0: scsi-1 drive
Uniform CD-ROM driver Revision: 3.12
input: PC Speaker
i8042.c: 20 -> i8042 (command) [0]
i8042.c: 47 <- i8042 (return) [0]
i8042.c: 60 -> i8042 (command) [0]
i8042.c: 56 -> i8042 (parameter) [0]
i8042.c: d3 -> i8042 (command) [0]
i8042.c: 5a -> i8042 (parameter) [0]
i8042.c: a5 <- i8042 (return) [0]
i8042.c: a9 -> i8042 (command) [1]
i8042.c: 00 <- i8042 (return) [1]
i8042.c: a7 -> i8042 (command) [1]
i8042.c: 20 -> i8042 (command) [1]
i8042.c: 76 <- i8042 (return) [1]
i8042.c: a8 -> i8042 (command) [1]
i8042.c: 20 -> i8042 (command) [1]
i8042.c: 56 <- i8042 (return) [1]
i8042.c: 60 -> i8042 (command) [2]
i8042.c: 74 -> i8042 (parameter) [2]
i8042.c: 60 -> i8042 (command) [2]
i8042.c: 54 -> i8042 (parameter) [2]
i8042.c: 60 -> i8042 (command) [2]
i8042.c: 56 -> i8042 (parameter) [2]
i8042.c: d4 -> i8042 (command) [2]
i8042.c: ed -> i8042 (parameter) [2]
i8042.c: 60 -> i8042 (command) [56]
i8042.c: 54 -> i8042 (parameter) [56]
i8042.c: fe <- i8042 (interrupt, aux, 12, timeout) [57]
serio: i8042 AUX port at 0x60,0x64 irq 12
i8042.c: 60 -> i8042 (command) [57]
i8042.c: 44 -> i8042 (parameter) [57]
i8042.c: 60 -> i8042 (command) [57]
i8042.c: 45 -> i8042 (parameter) [57]
i8042.c: ed -> i8042 (kbd-data) [58]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [61]
i8042.c: 00 -> i8042 (kbd-data) [61]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [63]
i8042.c: f2 -> i8042 (kbd-data) [63]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [66]
i8042.c: ab <- i8042 (interrupt, kbd, 1) [67]
i8042.c: 90 <- i8042 (interrupt, kbd, 1) [69]
i8042.c: f8 -> i8042 (kbd-data) [69]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [72]
i8042.c: f4 -> i8042 (kbd-data) [72]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [75]
i8042.c: ea -> i8042 (kbd-data) [75]
i8042.c: fe <- i8042 (interrupt, kbd, 1) [78]
i8042.c: f0 -> i8042 (kbd-data) [78]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [81]
i8042.c: 02 -> i8042 (kbd-data) [81]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [84]
i8042.c: f0 -> i8042 (kbd-data) [84]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [87]
i8042.c: 00 -> i8042 (kbd-data) [87]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [89]
i8042.c: 41 <- i8042 (interrupt, kbd, 1) [90]
input: AT Set 2 keyboard on isa0060/serio0
serio: i8042 KBD port at 0x60,0x64 irq 1
NET4: Linux TCP/IP 1.0 for NET4.0
IP Protocols: ICMP, UDP, TCP
IP: routing cache hash table of 1024 buckets, 8Kbytes
TCP: Hash tables configured (established 8192 bind 8192)
ip_conntrack version 2.1 (1024 buckets, 8192 max) - 292 bytes per conntrack
NET4: Unix domain sockets 1.0/SMP for Linux NET4.0.
VFS: Mounted root (ext2 filesystem) readonly.
Freeing unused kernel memory: 224k freed
i8042.c: 39 <- i8042 (interrupt, kbd, 1) [48100]
i8042.c: b9 <- i8042 (interrupt, kbd, 1) [48204]
i8042.c: 39 <- i8042 (interrupt, kbd, 1) [49910]
i8042.c: b9 <- i8042 (interrupt, kbd, 1) [50005]
i8042.c: 39 <- i8042 (interrupt, kbd, 1) [51453]
i8042.c: b9 <- i8042 (interrupt, kbd, 1) [51548]
i8042.c: 39 <- i8042 (interrupt, kbd, 1) [57544]
i8042.c: b9 <- i8042 (interrupt, kbd, 1) [57638]

..finally, this is the output of a 'bashing away at t, h, ; and @' session:

input: AT Set 2 keyboard on isa0060/serio0
i8042.c: 27 <- i8042 (interrupt, kbd, 1) [202218]
i8042.c: 2a <- i8042 (interrupt, kbd, 1) [202228]
i8042.c: 03 <- i8042 (interrupt, kbd, 1) [202231]
i8042.c: aa <- i8042 (interrupt, kbd, 1) [202245]
i8042.c: 14 <- i8042 (interrupt, kbd, 1) [202247]
i8042.c: 23 <- i8042 (interrupt, kbd, 1) [202254]
i8042.c: 83 <- i8042 (interrupt, kbd, 1) [202282]
i8042.c: aa <- i8042 (interrupt, kbd, 1) [202286]
i8042.c: 60 -> i8042 (command) [202286]
i8042.c: 44 -> i8042 (parameter) [202286]
i8042.c: 60 -> i8042 (command) [202286]
i8042.c: 45 -> i8042 (parameter) [202286]
i8042.c: ed -> i8042 (kbd-data) [202286]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [202289]
i8042.c: 00 -> i8042 (kbd-data) [202289]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [202292]
i8042.c: f2 -> i8042 (kbd-data) [202292]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [202296]
i8042.c: ab <- i8042 (interrupt, kbd, 1) [202297]
i8042.c: 90 <- i8042 (interrupt, kbd, 1) [202298]
i8042.c: f8 -> i8042 (kbd-data) [202298]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [202301]
i8042.c: f4 -> i8042 (kbd-data) [202301]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [202305]
i8042.c: ea -> i8042 (kbd-data) [202305]
i8042.c: fe <- i8042 (interrupt, kbd, 1) [202308]
i8042.c: f0 -> i8042 (kbd-data) [202308]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [202311]
i8042.c: 02 -> i8042 (kbd-data) [202311]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [202313]
i8042.c: f0 -> i8042 (kbd-data) [202313]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [202316]
i8042.c: 00 -> i8042 (kbd-data) [202316]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [202319]
i8042.c: 41 <- i8042 (interrupt, kbd, 1) [202320]
input: AT Set 2 keyboard on isa0060/serio0
i8042.c: 94 <- i8042 (interrupt, kbd, 1) [202333]
i8042.c: a3 <- i8042 (interrupt, kbd, 1) [202339]
i8042.c: 2a <- i8042 (interrupt, kbd, 1) [202355]
i8042.c: 03 <- i8042 (interrupt, kbd, 1) [202358]
i8042.c: aa <- i8042 (interrupt, kbd, 1) [202364]
i8042.c: 27 <- i8042 (interrupt, kbd, 1) [202367]
i8042.c: a7 <- i8042 (interrupt, kbd, 1) [202418]
i8042.c: 23 <- i8042 (interrupt, kbd, 1) [202421]
i8042.c: 83 <- i8042 (interrupt, kbd, 1) [202431]
i8042.c: aa <- i8042 (interrupt, kbd, 1) [202434]
i8042.c: 60 -> i8042 (command) [202434]
i8042.c: 44 -> i8042 (parameter) [202434]
i8042.c: 60 -> i8042 (command) [202435]
i8042.c: 45 -> i8042 (parameter) [202435]
i8042.c: ed -> i8042 (kbd-data) [202435]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [202439]
i8042.c: 00 -> i8042 (kbd-data) [202439]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [202442]
i8042.c: f2 -> i8042 (kbd-data) [202442]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [202445]
i8042.c: ab <- i8042 (interrupt, kbd, 1) [202446]
i8042.c: 90 <- i8042 (interrupt, kbd, 1) [202447]
i8042.c: f8 -> i8042 (kbd-data) [202447]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [202450]
i8042.c: f4 -> i8042 (kbd-data) [202450]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [202454]
i8042.c: ea -> i8042 (kbd-data) [202454]
i8042.c: fe <- i8042 (interrupt, kbd, 1) [202457]
i8042.c: f0 -> i8042 (kbd-data) [202457]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [202460]
i8042.c: 02 -> i8042 (kbd-data) [202460]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [202462]
i8042.c: f0 -> i8042 (kbd-data) [202462]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [202465]
i8042.c: 00 -> i8042 (kbd-data) [202465]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [202468]
i8042.c: 41 <- i8042 (interrupt, kbd, 1) [202469]
input: AT Set 2 keyboard on isa0060/serio0
i8042.c: 94 <- i8042 (interrupt, kbd, 1) [202483]
atkbd.c: Unknown key (set 2, scancode 0x94, on isa0060/serio0) pressed.
i8042.c: 27 <- i8042 (interrupt, kbd, 1) [202495]
i8042.c: a3 <- i8042 (interrupt, kbd, 1) [202501]
i8042.c: 2a <- i8042 (interrupt, kbd, 1) [202510]
i8042.c: 03 <- i8042 (interrupt, kbd, 1) [202512]
i8042.c: a7 <- i8042 (interrupt, kbd, 1) [202555]
i8042.c: 83 <- i8042 (interrupt, kbd, 1) [202566]
i8042.c: aa <- i8042 (interrupt, kbd, 1) [202569]
i8042.c: 14 <- i8042 (interrupt, kbd, 1) [202581]
i8042.c: 23 <- i8042 (interrupt, kbd, 1) [202587]
i8042.c: 2a <- i8042 (interrupt, kbd, 1) [202642]
i8042.c: 03 <- i8042 (interrupt, kbd, 1) [202644]
i8042.c: aa <- i8042 (interrupt, kbd, 1) [202652]
i8042.c: 27 <- i8042 (interrupt, kbd, 1) [202654]
i8042.c: 94 <- i8042 (interrupt, kbd, 1) [202665]
i8042.c: a3 <- i8042 (interrupt, kbd, 1) [202672]
i8042.c: 83 <- i8042 (interrupt, kbd, 1) [202692]
i8042.c: aa <- i8042 (interrupt, kbd, 1) [202695]
i8042.c: 60 -> i8042 (command) [202695]
i8042.c: 44 -> i8042 (parameter) [202695]
i8042.c: 60 -> i8042 (command) [202696]
i8042.c: 45 -> i8042 (parameter) [202696]
i8042.c: ed -> i8042 (kbd-data) [202696]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [202699]
i8042.c: 00 -> i8042 (kbd-data) [202699]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [202701]
i8042.c: f2 -> i8042 (kbd-data) [202701]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [202705]
i8042.c: ab <- i8042 (interrupt, kbd, 1) [202707]
i8042.c: 90 <- i8042 (interrupt, kbd, 1) [202708]
i8042.c: f8 -> i8042 (kbd-data) [202708]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [202711]
i8042.c: f4 -> i8042 (kbd-data) [202711]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [202714]
i8042.c: ea -> i8042 (kbd-data) [202714]
i8042.c: fe <- i8042 (interrupt, kbd, 1) [202717]
i8042.c: f0 -> i8042 (kbd-data) [202717]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [202720]
i8042.c: 02 -> i8042 (kbd-data) [202720]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [202723]
i8042.c: f0 -> i8042 (kbd-data) [202723]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [202726]
i8042.c: 00 -> i8042 (kbd-data) [202726]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [202728]
i8042.c: 41 <- i8042 (interrupt, kbd, 1) [202729]
input: AT Set 2 keyboard on isa0060/serio0
i8042.c: 14 <- i8042 (interrupt, kbd, 1) [202749]
i8042.c: 23 <- i8042 (interrupt, kbd, 1) [202754]
i8042.c: 2a <- i8042 (interrupt, kbd, 1) [202774]
i8042.c: 03 <- i8042 (interrupt, kbd, 1) [202776]
i8042.c: aa <- i8042 (interrupt, kbd, 1) [202783]
i8042.c: 27 <- i8042 (interrupt, kbd, 1) [202786]
i8042.c: 94 <- i8042 (interrupt, kbd, 1) [202815]
i8042.c: a3 <- i8042 (interrupt, kbd, 1) [202822]
i8042.c: 83 <- i8042 (interrupt, kbd, 1) [202832]
i8042.c: aa <- i8042 (interrupt, kbd, 1) [202836]
i8042.c: 60 -> i8042 (command) [202836]
i8042.c: 44 -> i8042 (parameter) [202836]
i8042.c: 60 -> i8042 (command) [202836]
i8042.c: 45 -> i8042 (parameter) [202836]
i8042.c: ed -> i8042 (kbd-data) [202836]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [202839]
i8042.c: 00 -> i8042 (kbd-data) [202839]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [202842]
i8042.c: f2 -> i8042 (kbd-data) [202842]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [202846]
i8042.c: ab <- i8042 (interrupt, kbd, 1) [202847]
i8042.c: 90 <- i8042 (interrupt, kbd, 1) [202848]
i8042.c: f8 -> i8042 (kbd-data) [202848]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [202851]
i8042.c: f4 -> i8042 (kbd-data) [202851]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [202855]
i8042.c: ea -> i8042 (kbd-data) [202855]
i8042.c: fe <- i8042 (interrupt, kbd, 1) [202858]
i8042.c: f0 -> i8042 (kbd-data) [202858]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [202861]
i8042.c: 02 -> i8042 (kbd-data) [202861]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [202863]
i8042.c: f0 -> i8042 (kbd-data) [202863]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [202866]
i8042.c: 00 -> i8042 (kbd-data) [202866]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [202869]
i8042.c: 41 <- i8042 (interrupt, kbd, 1) [202870]
input: AT Set 2 keyboard on isa0060/serio0
i8042.c: 27 <- i8042 (interrupt, kbd, 1) [202891]
i8042.c: 2a <- i8042 (interrupt, kbd, 1) [202901]
i8042.c: 03 <- i8042 (interrupt, kbd, 1) [202904]
i8042.c: aa <- i8042 (interrupt, kbd, 1) [202918]
i8042.c: 14 <- i8042 (interrupt, kbd, 1) [202920]
i8042.c: 23 <- i8042 (interrupt, kbd, 1) [202926]
i8042.c: 83 <- i8042 (interrupt, kbd, 1) [202954]
i8042.c: aa <- i8042 (interrupt, kbd, 1) [202958]
i8042.c: 60 -> i8042 (command) [202958]
i8042.c: 44 -> i8042 (parameter) [202958]
i8042.c: 60 -> i8042 (command) [202958]
i8042.c: 45 -> i8042 (parameter) [202958]
i8042.c: ed -> i8042 (kbd-data) [202958]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [202961]
i8042.c: 00 -> i8042 (kbd-data) [202961]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [202964]
i8042.c: f2 -> i8042 (kbd-data) [202964]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [202967]
i8042.c: ab <- i8042 (interrupt, kbd, 1) [202968]
i8042.c: 90 <- i8042 (interrupt, kbd, 1) [202969]
i8042.c: f8 -> i8042 (kbd-data) [202969]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [202973]
i8042.c: f4 -> i8042 (kbd-data) [202973]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [202977]
i8042.c: ea -> i8042 (kbd-data) [202977]
i8042.c: fe <- i8042 (interrupt, kbd, 1) [202980]
i8042.c: f0 -> i8042 (kbd-data) [202980]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [202983]
i8042.c: 02 -> i8042 (kbd-data) [202983]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [202985]
i8042.c: f0 -> i8042 (kbd-data) [202985]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [202988]
i8042.c: 00 -> i8042 (kbd-data) [202988]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [202991]
i8042.c: 41 <- i8042 (interrupt, kbd, 1) [202992]
input: AT Set 2 keyboard on isa0060/serio0
i8042.c: 94 <- i8042 (interrupt, kbd, 1) [202998]
i8042.c: a3 <- i8042 (interrupt, kbd, 1) [203004]
i8042.c: 2a <- i8042 (interrupt, kbd, 1) [203020]
i8042.c: 03 <- i8042 (interrupt, kbd, 1) [203022]
i8042.c: aa <- i8042 (interrupt, kbd, 1) [203030]
i8042.c: 27 <- i8042 (interrupt, kbd, 1) [203032]
i8042.c: 23 <- i8042 (interrupt, kbd, 1) [203072]
i8042.c: 83 <- i8042 (interrupt, kbd, 1) [203082]
i8042.c: aa <- i8042 (interrupt, kbd, 1) [203086]
i8042.c: 60 -> i8042 (command) [203086]
i8042.c: 44 -> i8042 (parameter) [203086]
i8042.c: 60 -> i8042 (command) [203086]
i8042.c: 45 -> i8042 (parameter) [203086]
i8042.c: ed -> i8042 (kbd-data) [203086]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [203091]
i8042.c: 00 -> i8042 (kbd-data) [203091]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [203093]
i8042.c: f2 -> i8042 (kbd-data) [203093]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [203096]
i8042.c: ab <- i8042 (interrupt, kbd, 1) [203097]
i8042.c: 90 <- i8042 (interrupt, kbd, 1) [203099]
i8042.c: f8 -> i8042 (kbd-data) [203099]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [203102]
i8042.c: f4 -> i8042 (kbd-data) [203102]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [203106]
i8042.c: ea -> i8042 (kbd-data) [203106]
i8042.c: fe <- i8042 (interrupt, kbd, 1) [203109]
i8042.c: f0 -> i8042 (kbd-data) [203109]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [203112]
i8042.c: 02 -> i8042 (kbd-data) [203112]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [203115]
i8042.c: f0 -> i8042 (kbd-data) [203115]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [203118]
i8042.c: 00 -> i8042 (kbd-data) [203118]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [203120]
i8042.c: 41 <- i8042 (interrupt, kbd, 1) [203121]
input: AT Set 2 keyboard on isa0060/serio0
i8042.c: 27 <- i8042 (interrupt, kbd, 1) [203136]
i8042.c: 2a <- i8042 (interrupt, kbd, 1) [203146]
i8042.c: 03 <- i8042 (interrupt, kbd, 1) [203149]
i8042.c: 94 <- i8042 (interrupt, kbd, 1) [203163]
atkbd.c: Unknown key (set 2, scancode 0x94, on isa0060/serio0) pressed.
i8042.c: a3 <- i8042 (interrupt, kbd, 1) [203170]
i8042.c: 83 <- i8042 (interrupt, kbd, 1) [203207]
i8042.c: aa <- i8042 (interrupt, kbd, 1) [203210]
i8042.c: a7 <- i8042 (interrupt, kbd, 1) [203216]
i8042.c: 23 <- i8042 (interrupt, kbd, 1) [203236]
i8042.c: 14 <- i8042 (interrupt, kbd, 1) [203246]
i8042.c: 2a <- i8042 (interrupt, kbd, 1) [203267]
i8042.c: 03 <- i8042 (interrupt, kbd, 1) [203270]
i8042.c: aa <- i8042 (interrupt, kbd, 1) [203276]
i8042.c: 27 <- i8042 (interrupt, kbd, 1) [203278]
i8042.c: 94 <- i8042 (interrupt, kbd, 1) [203317]
i8042.c: a3 <- i8042 (interrupt, kbd, 1) [203333]
i8042.c: 83 <- i8042 (interrupt, kbd, 1) [203343]
i8042.c: aa <- i8042 (interrupt, kbd, 1) [203347]
i8042.c: 60 -> i8042 (command) [203347]
i8042.c: 44 -> i8042 (parameter) [203347]
i8042.c: 60 -> i8042 (command) [203347]
i8042.c: 45 -> i8042 (parameter) [203347]
i8042.c: ed -> i8042 (kbd-data) [203347]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [203350]
i8042.c: 00 -> i8042 (kbd-data) [203350]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [203353]
i8042.c: f2 -> i8042 (kbd-data) [203353]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [203356]
i8042.c: ab <- i8042 (interrupt, kbd, 1) [203357]
i8042.c: 90 <- i8042 (interrupt, kbd, 1) [203358]
i8042.c: f8 -> i8042 (kbd-data) [203358]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [203362]
i8042.c: f4 -> i8042 (kbd-data) [203362]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [203366]
i8042.c: ea -> i8042 (kbd-data) [203366]
i8042.c: fe <- i8042 (interrupt, kbd, 1) [203369]
i8042.c: f0 -> i8042 (kbd-data) [203369]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [203372]
i8042.c: 02 -> i8042 (kbd-data) [203372]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [203374]
i8042.c: f0 -> i8042 (kbd-data) [203374]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [203377]
i8042.c: 00 -> i8042 (kbd-data) [203377]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [203380]
i8042.c: 41 <- i8042 (interrupt, kbd, 1) [203381]
input: AT Set 2 keyboard on isa0060/serio0
i8042.c: 27 <- i8042 (interrupt, kbd, 1) [203402]
i8042.c: 2a <- i8042 (interrupt, kbd, 1) [203412]
i8042.c: 03 <- i8042 (interrupt, kbd, 1) [203415]
i8042.c: aa <- i8042 (interrupt, kbd, 1) [203429]
i8042.c: 14 <- i8042 (interrupt, kbd, 1) [203432]
i8042.c: 23 <- i8042 (interrupt, kbd, 1) [203438]
i8042.c: 83 <- i8042 (interrupt, kbd, 1) [203467]
i8042.c: aa <- i8042 (interrupt, kbd, 1) [203470]
i8042.c: 60 -> i8042 (command) [203470]
i8042.c: 44 -> i8042 (parameter) [203470]
i8042.c: 60 -> i8042 (command) [203470]
i8042.c: 45 -> i8042 (parameter) [203470]
i8042.c: ed -> i8042 (kbd-data) [203471]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [203474]
i8042.c: 00 -> i8042 (kbd-data) [203474]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [203476]
i8042.c: f2 -> i8042 (kbd-data) [203476]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [203480]
i8042.c: ab <- i8042 (interrupt, kbd, 1) [203481]
i8042.c: 90 <- i8042 (interrupt, kbd, 1) [203482]
i8042.c: f8 -> i8042 (kbd-data) [203482]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [203486]
i8042.c: f4 -> i8042 (kbd-data) [203486]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [203489]
i8042.c: ea -> i8042 (kbd-data) [203489]
i8042.c: fe <- i8042 (interrupt, kbd, 1) [203492]
i8042.c: f0 -> i8042 (kbd-data) [203492]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [203495]
i8042.c: 02 -> i8042 (kbd-data) [203495]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [203497]
i8042.c: f0 -> i8042 (kbd-data) [203498]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [203501]
i8042.c: 00 -> i8042 (kbd-data) [203501]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [203503]
i8042.c: 41 <- i8042 (interrupt, kbd, 1) [203504]
input: AT Set 2 keyboard on isa0060/serio0
i8042.c: a3 <- i8042 (interrupt, kbd, 1) [203512]
i8042.c: 94 <- i8042 (interrupt, kbd, 1) [203522]
i8042.c: 27 <- i8042 (interrupt, kbd, 1) [203549]
i8042.c: 23 <- i8042 (interrupt, kbd, 1) [203581]
i8042.c: 14 <- i8042 (interrupt, kbd, 1) [203591]
i8042.c: a7 <- i8042 (interrupt, kbd, 1) [203606]
i8042.c: 94 <- i8042 (interrupt, kbd, 1) [203663]
i8042.c: a3 <- i8042 (interrupt, kbd, 1) [203677]
i8042.c: 1d <- i8042 (interrupt, kbd, 1) [205982]
i8042.c: 11 <- i8042 (interrupt, kbd, 1) [206144]
i8042.c: 91 <- i8042 (interrupt, kbd, 1) [206284]
i8042.c: 9d <- i8042 (interrupt, kbd, 1) [206457]

My interpretation of all this is that Henkaku/Zenkaku is reporting a weird scancode, (FF), the characterset selection keys are all acting as a spacebar, and something is confusing it in to go in to a different 'mode' or something during the bashing session.

Incidently, I think there must be a secret key combination to switch the logic in this keyboard to something more Japanese - the key that I am using successfully as ALT, is labelled as follows on the keytop:

KANJI

KATAKANA

and on the front of the key, it says 'KANJI something' in green, (I can't understand all of it).

So, obviously this key is not supposed to be used as ALT, despite being in the position of ALT.

I suspect that they keyboard can emulate a US or Japanese keyboard, and it's stuck in US mode, but who knows?

> > The keyboard has a speaker in it, and a volume control, but it's never made a single noise,
> > apart from a click when it's switched on, (so it does work).
> > 
> > This is a very strange keyboard :-).  94X1110 is the IBM part number.

John.

^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: 2.5.40: AT keyboard input problem
  2002-10-03  8:47 ` Vojtech Pavlik
@ 2002-10-03 12:08   ` Tobias Ringstrom
  2002-10-03 12:10     ` Vojtech Pavlik
  0 siblings, 1 reply; 23+ messages in thread
From: Tobias Ringstrom @ 2002-10-03 12:08 UTC (permalink / raw)
  To: Vojtech Pavlik; +Cc: Kernel Mailing List

On Thu, 3 Oct 2002, Vojtech Pavlik wrote:

> Yes, please try with #I8042_DEBUG_IO enabled, try all the suspicious key
> combinations and add comments to the log file which is which. This will
> allow me to fix it properly.

I hope this is enough.  There are more combinations, I'm sure.  I hope 
that it is one bug causing them all, though.

/Tobias


Oct  3 13:59:40 gtbdhcp105 kernel: i8042.c: 20 <- i8042 (interrupt, kbd, 1) [44928]
Oct  3 13:59:40 gtbdhcp105 kernel: i8042.c: a0 <- i8042 (interrupt, kbd, 1) [45011]
Oct  3 13:59:40 gtbdhcp105 kernel: i8042.c: 32 <- i8042 (interrupt, kbd, 1) [45036]
Oct  3 13:59:40 gtbdhcp105 kernel: i8042.c: b2 <- i8042 (interrupt, kbd, 1) [45110]
Oct  3 13:59:40 gtbdhcp105 kernel: i8042.c: 12 <- i8042 (interrupt, kbd, 1) [45114]
Oct  3 13:59:40 gtbdhcp105 kernel: i8042.c: 92 <- i8042 (interrupt, kbd, 1) [45185]
Oct  3 13:59:40 gtbdhcp105 kernel: i8042.c: 1f <- i8042 (interrupt, kbd, 1) [45274]
Oct  3 13:59:41 gtbdhcp105 kernel: i8042.c: 22 <- i8042 (interrupt, kbd, 1) [45307]
Oct  3 13:59:41 gtbdhcp105 kernel: i8042.c: 9f <- i8042 (interrupt, kbd, 1) [45329]
Oct  3 13:59:41 gtbdhcp105 kernel: i8042.c: a2 <- i8042 (interrupt, kbd, 1) [45373]
Oct  3 13:59:41 gtbdhcp105 kernel: i8042.c: 1c <- i8042 (interrupt, kbd, 1) [45495]
Oct  3 13:59:41 gtbdhcp105 kernel: i8042.c: 9c <- i8042 (interrupt, kbd, 1) [45547]
Oct  3 13:59:46 gtbdhcp105 kernel: i8042.c: 1d <- i8042 (interrupt, kbd, 1) [51078]
Oct  3 13:59:47 gtbdhcp105 kernel: i8042.c: 38 <- i8042 (interrupt, kbd, 1) [51315]
Oct  3 13:59:47 gtbdhcp105 kernel: i8042.c: b8 <- i8042 (interrupt, kbd, 1) [51484]
Oct  3 13:59:47 gtbdhcp105 kernel: i8042.c: 9d <- i8042 (interrupt, kbd, 1) [51764]
Oct  3 13:59:48 gtbdhcp105 kernel: i8042.c: 1d <- i8042 (interrupt, kbd, 1) [53237]
Oct  3 13:59:49 gtbdhcp105 kernel: i8042.c: 38 <- i8042 (interrupt, kbd, 1) [53459]
Oct  3 13:59:49 gtbdhcp105 kernel: i8042.c: b8 <- i8042 (interrupt, kbd, 1) [53640]
Oct  3 13:59:49 gtbdhcp105 kernel: i8042.c: 9d <- i8042 (interrupt, kbd, 1) [53905]
Oct  3 13:59:50 gtbdhcp105 kernel: i8042.c: 1c <- i8042 (interrupt, kbd, 1) [54660]
Oct  3 13:59:50 gtbdhcp105 kernel: i8042.c: 9c <- i8042 (interrupt, kbd, 1) [54751]
Oct  3 13:59:50 gtbdhcp105 kernel: i8042.c: 1c <- i8042 (interrupt, kbd, 1) [54926]
Oct  3 13:59:50 gtbdhcp105 kernel: i8042.c: 9c <- i8042 (interrupt, kbd, 1) [55022]
Oct  3 13:59:52 gtbdhcp105 kernel: i8042.c: 38 <- i8042 (interrupt, kbd, 1) [56998]
Oct  3 13:59:52 gtbdhcp105 kernel: i8042.c: 38 <- i8042 (interrupt, kbd, 1) [57243]
Oct  3 13:59:52 gtbdhcp105 kernel: i8042.c: 38 <- i8042 (interrupt, kbd, 1) [57273]
Oct  3 13:59:52 gtbdhcp105 kernel: i8042.c: 38 <- i8042 (interrupt, kbd, 1) [57304]
Oct  3 13:59:53 gtbdhcp105 kernel: i8042.c: 38 <- i8042 (interrupt, kbd, 1) [57334]
Oct  3 13:59:53 gtbdhcp105 kernel: i8042.c: 38 <- i8042 (interrupt, kbd, 1) [57365]
Oct  3 13:59:53 gtbdhcp105 kernel: i8042.c: 38 <- i8042 (interrupt, kbd, 1) [57395]
Oct  3 13:59:53 gtbdhcp105 kernel: i8042.c: e0 <- i8042 (interrupt, kbd, 1) [57410]
Oct  3 13:59:53 gtbdhcp105 kernel: i8042.c: 38 <- i8042 (interrupt, kbd, 1) [57415]
Oct  3 13:59:53 gtbdhcp105 kernel: i8042.c: e0 <- i8042 (interrupt, kbd, 1) [57596]
Oct  3 13:59:53 gtbdhcp105 kernel: i8042.c: b8 <- i8042 (interrupt, kbd, 1) [57605]
Oct  3 13:59:53 gtbdhcp105 kernel: i8042.c: b8 <- i8042 (interrupt, kbd, 1) [57955]
Oct  3 13:59:53 gtbdhcp105 kernel: atkbd.c: Unknown key (set 2, scancode 0xb8, on isa0060/serio0) pressed.
Oct  3 13:59:55 gtbdhcp105 kernel: i8042.c: 1c <- i8042 (interrupt, kbd, 1) [59584]
Oct  3 13:59:55 gtbdhcp105 kernel: i8042.c: 9c <- i8042 (interrupt, kbd, 1) [59683]
Oct  3 13:59:55 gtbdhcp105 kernel: i8042.c: 1c <- i8042 (interrupt, kbd, 1) [59875]
Oct  3 13:59:55 gtbdhcp105 kernel: i8042.c: 9c <- i8042 (interrupt, kbd, 1) [59974]
Oct  3 13:59:56 gtbdhcp105 kernel: i8042.c: 38 <- i8042 (interrupt, kbd, 1) [61228]
Oct  3 13:59:57 gtbdhcp105 kernel: i8042.c: b8 <- i8042 (interrupt, kbd, 1) [61311]
Oct  3 13:59:57 gtbdhcp105 kernel: i8042.c: 1c <- i8042 (interrupt, kbd, 1) [61721]
Oct  3 13:59:57 gtbdhcp105 kernel: i8042.c: 9c <- i8042 (interrupt, kbd, 1) [61838]
Oct  3 13:59:57 gtbdhcp105 kernel: i8042.c: 1c <- i8042 (interrupt, kbd, 1) [62137]
Oct  3 13:59:57 gtbdhcp105 kernel: i8042.c: 9c <- i8042 (interrupt, kbd, 1) [62248]
Oct  3 13:59:58 gtbdhcp105 kernel: i8042.c: e0 <- i8042 (interrupt, kbd, 1) [62980]
Oct  3 13:59:58 gtbdhcp105 kernel: i8042.c: 38 <- i8042 (interrupt, kbd, 1) [62985]
Oct  3 13:59:58 gtbdhcp105 kernel: i8042.c: e0 <- i8042 (interrupt, kbd, 1) [63229]
Oct  3 13:59:58 gtbdhcp105 kernel: i8042.c: 38 <- i8042 (interrupt, kbd, 1) [63233]
Oct  3 13:59:58 gtbdhcp105 kernel: i8042.c: e0 <- i8042 (interrupt, kbd, 1) [63263]
Oct  3 13:59:58 gtbdhcp105 kernel: i8042.c: 38 <- i8042 (interrupt, kbd, 1) [63268]
Oct  3 13:59:58 gtbdhcp105 kernel: i8042.c: 38 <- i8042 (interrupt, kbd, 1) [63283]
Oct  3 13:59:59 gtbdhcp105 kernel: i8042.c: b8 <- i8042 (interrupt, kbd, 1) [63505]
Oct  3 13:59:59 gtbdhcp105 kernel: i8042.c: e0 <- i8042 (interrupt, kbd, 1) [63932]
Oct  3 13:59:59 gtbdhcp105 kernel: i8042.c: b8 <- i8042 (interrupt, kbd, 1) [63941]
Oct  3 13:59:59 gtbdhcp105 kernel: atkbd.c: Unknown key (set 2, scancode 0x1b8, on isa0060/serio0) pressed.
Oct  3 14:00:01 gtbdhcp105 kernel: i8042.c: e0 <- i8042 (interrupt, kbd, 1) [65563]
Oct  3 14:00:01 gtbdhcp105 kernel: i8042.c: 38 <- i8042 (interrupt, kbd, 1) [65567]
Oct  3 14:00:01 gtbdhcp105 kernel: i8042.c: e0 <- i8042 (interrupt, kbd, 1) [65676]
Oct  3 14:00:01 gtbdhcp105 kernel: i8042.c: b8 <- i8042 (interrupt, kbd, 1) [65685]
Oct  3 14:00:01 gtbdhcp105 kernel: i8042.c: 1c <- i8042 (interrupt, kbd, 1) [66281]
Oct  3 14:00:02 gtbdhcp105 kernel: i8042.c: 9c <- i8042 (interrupt, kbd, 1) [66379]
Oct  3 14:00:02 gtbdhcp105 kernel: i8042.c: 1c <- i8042 (interrupt, kbd, 1) [66501]
Oct  3 14:00:02 gtbdhcp105 kernel: i8042.c: 9c <- i8042 (interrupt, kbd, 1) [66576]
Oct  3 14:00:02 gtbdhcp105 kernel: i8042.c: 1c <- i8042 (interrupt, kbd, 1) [66680]
Oct  3 14:00:02 gtbdhcp105 kernel: i8042.c: 9c <- i8042 (interrupt, kbd, 1) [66763]


^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: 2.5.40: AT keyboard input problem
  2002-10-03 12:08   ` Tobias Ringstrom
@ 2002-10-03 12:10     ` Vojtech Pavlik
  2002-10-03 12:28       ` Tobias Ringstrom
  0 siblings, 1 reply; 23+ messages in thread
From: Vojtech Pavlik @ 2002-10-03 12:10 UTC (permalink / raw)
  To: Tobias Ringstrom; +Cc: Vojtech Pavlik, Kernel Mailing List

On Thu, Oct 03, 2002 at 02:08:26PM +0200, Tobias Ringstrom wrote:
> On Thu, 3 Oct 2002, Vojtech Pavlik wrote:
> 
> > Yes, please try with #I8042_DEBUG_IO enabled, try all the suspicious key
> > combinations and add comments to the log file which is which. This will
> > allow me to fix it properly.
> 
> I hope this is enough.  There are more combinations, I'm sure.  I hope 
> that it is one bug causing them all, though.

Perfect, thanks.

Are you possible to reproduce it when you use "i8042_direct" on the
kernel command line?

> /Tobias
> 
> 
> Oct  3 13:59:40 gtbdhcp105 kernel: i8042.c: 20 <- i8042 (interrupt, kbd, 1) [44928]
> Oct  3 13:59:40 gtbdhcp105 kernel: i8042.c: a0 <- i8042 (interrupt, kbd, 1) [45011]
> Oct  3 13:59:40 gtbdhcp105 kernel: i8042.c: 32 <- i8042 (interrupt, kbd, 1) [45036]
> Oct  3 13:59:40 gtbdhcp105 kernel: i8042.c: b2 <- i8042 (interrupt, kbd, 1) [45110]
> Oct  3 13:59:40 gtbdhcp105 kernel: i8042.c: 12 <- i8042 (interrupt, kbd, 1) [45114]
> Oct  3 13:59:40 gtbdhcp105 kernel: i8042.c: 92 <- i8042 (interrupt, kbd, 1) [45185]
> Oct  3 13:59:40 gtbdhcp105 kernel: i8042.c: 1f <- i8042 (interrupt, kbd, 1) [45274]
> Oct  3 13:59:41 gtbdhcp105 kernel: i8042.c: 22 <- i8042 (interrupt, kbd, 1) [45307]
> Oct  3 13:59:41 gtbdhcp105 kernel: i8042.c: 9f <- i8042 (interrupt, kbd, 1) [45329]
> Oct  3 13:59:41 gtbdhcp105 kernel: i8042.c: a2 <- i8042 (interrupt, kbd, 1) [45373]
> Oct  3 13:59:41 gtbdhcp105 kernel: i8042.c: 1c <- i8042 (interrupt, kbd, 1) [45495]
> Oct  3 13:59:41 gtbdhcp105 kernel: i8042.c: 9c <- i8042 (interrupt, kbd, 1) [45547]
> Oct  3 13:59:46 gtbdhcp105 kernel: i8042.c: 1d <- i8042 (interrupt, kbd, 1) [51078]
> Oct  3 13:59:47 gtbdhcp105 kernel: i8042.c: 38 <- i8042 (interrupt, kbd, 1) [51315]
> Oct  3 13:59:47 gtbdhcp105 kernel: i8042.c: b8 <- i8042 (interrupt, kbd, 1) [51484]
> Oct  3 13:59:47 gtbdhcp105 kernel: i8042.c: 9d <- i8042 (interrupt, kbd, 1) [51764]
> Oct  3 13:59:48 gtbdhcp105 kernel: i8042.c: 1d <- i8042 (interrupt, kbd, 1) [53237]
> Oct  3 13:59:49 gtbdhcp105 kernel: i8042.c: 38 <- i8042 (interrupt, kbd, 1) [53459]
> Oct  3 13:59:49 gtbdhcp105 kernel: i8042.c: b8 <- i8042 (interrupt, kbd, 1) [53640]
> Oct  3 13:59:49 gtbdhcp105 kernel: i8042.c: 9d <- i8042 (interrupt, kbd, 1) [53905]
> Oct  3 13:59:50 gtbdhcp105 kernel: i8042.c: 1c <- i8042 (interrupt, kbd, 1) [54660]
> Oct  3 13:59:50 gtbdhcp105 kernel: i8042.c: 9c <- i8042 (interrupt, kbd, 1) [54751]
> Oct  3 13:59:50 gtbdhcp105 kernel: i8042.c: 1c <- i8042 (interrupt, kbd, 1) [54926]
> Oct  3 13:59:50 gtbdhcp105 kernel: i8042.c: 9c <- i8042 (interrupt, kbd, 1) [55022]
> Oct  3 13:59:52 gtbdhcp105 kernel: i8042.c: 38 <- i8042 (interrupt, kbd, 1) [56998]
> Oct  3 13:59:52 gtbdhcp105 kernel: i8042.c: 38 <- i8042 (interrupt, kbd, 1) [57243]
> Oct  3 13:59:52 gtbdhcp105 kernel: i8042.c: 38 <- i8042 (interrupt, kbd, 1) [57273]
> Oct  3 13:59:52 gtbdhcp105 kernel: i8042.c: 38 <- i8042 (interrupt, kbd, 1) [57304]
> Oct  3 13:59:53 gtbdhcp105 kernel: i8042.c: 38 <- i8042 (interrupt, kbd, 1) [57334]
> Oct  3 13:59:53 gtbdhcp105 kernel: i8042.c: 38 <- i8042 (interrupt, kbd, 1) [57365]
> Oct  3 13:59:53 gtbdhcp105 kernel: i8042.c: 38 <- i8042 (interrupt, kbd, 1) [57395]
> Oct  3 13:59:53 gtbdhcp105 kernel: i8042.c: e0 <- i8042 (interrupt, kbd, 1) [57410]
> Oct  3 13:59:53 gtbdhcp105 kernel: i8042.c: 38 <- i8042 (interrupt, kbd, 1) [57415]
> Oct  3 13:59:53 gtbdhcp105 kernel: i8042.c: e0 <- i8042 (interrupt, kbd, 1) [57596]
> Oct  3 13:59:53 gtbdhcp105 kernel: i8042.c: b8 <- i8042 (interrupt, kbd, 1) [57605]
> Oct  3 13:59:53 gtbdhcp105 kernel: i8042.c: b8 <- i8042 (interrupt, kbd, 1) [57955]
> Oct  3 13:59:53 gtbdhcp105 kernel: atkbd.c: Unknown key (set 2, scancode 0xb8, on isa0060/serio0) pressed.
> Oct  3 13:59:55 gtbdhcp105 kernel: i8042.c: 1c <- i8042 (interrupt, kbd, 1) [59584]
> Oct  3 13:59:55 gtbdhcp105 kernel: i8042.c: 9c <- i8042 (interrupt, kbd, 1) [59683]
> Oct  3 13:59:55 gtbdhcp105 kernel: i8042.c: 1c <- i8042 (interrupt, kbd, 1) [59875]
> Oct  3 13:59:55 gtbdhcp105 kernel: i8042.c: 9c <- i8042 (interrupt, kbd, 1) [59974]
> Oct  3 13:59:56 gtbdhcp105 kernel: i8042.c: 38 <- i8042 (interrupt, kbd, 1) [61228]
> Oct  3 13:59:57 gtbdhcp105 kernel: i8042.c: b8 <- i8042 (interrupt, kbd, 1) [61311]
> Oct  3 13:59:57 gtbdhcp105 kernel: i8042.c: 1c <- i8042 (interrupt, kbd, 1) [61721]
> Oct  3 13:59:57 gtbdhcp105 kernel: i8042.c: 9c <- i8042 (interrupt, kbd, 1) [61838]
> Oct  3 13:59:57 gtbdhcp105 kernel: i8042.c: 1c <- i8042 (interrupt, kbd, 1) [62137]
> Oct  3 13:59:57 gtbdhcp105 kernel: i8042.c: 9c <- i8042 (interrupt, kbd, 1) [62248]
> Oct  3 13:59:58 gtbdhcp105 kernel: i8042.c: e0 <- i8042 (interrupt, kbd, 1) [62980]
> Oct  3 13:59:58 gtbdhcp105 kernel: i8042.c: 38 <- i8042 (interrupt, kbd, 1) [62985]
> Oct  3 13:59:58 gtbdhcp105 kernel: i8042.c: e0 <- i8042 (interrupt, kbd, 1) [63229]
> Oct  3 13:59:58 gtbdhcp105 kernel: i8042.c: 38 <- i8042 (interrupt, kbd, 1) [63233]
> Oct  3 13:59:58 gtbdhcp105 kernel: i8042.c: e0 <- i8042 (interrupt, kbd, 1) [63263]
> Oct  3 13:59:58 gtbdhcp105 kernel: i8042.c: 38 <- i8042 (interrupt, kbd, 1) [63268]
> Oct  3 13:59:58 gtbdhcp105 kernel: i8042.c: 38 <- i8042 (interrupt, kbd, 1) [63283]
> Oct  3 13:59:59 gtbdhcp105 kernel: i8042.c: b8 <- i8042 (interrupt, kbd, 1) [63505]
> Oct  3 13:59:59 gtbdhcp105 kernel: i8042.c: e0 <- i8042 (interrupt, kbd, 1) [63932]
> Oct  3 13:59:59 gtbdhcp105 kernel: i8042.c: b8 <- i8042 (interrupt, kbd, 1) [63941]
> Oct  3 13:59:59 gtbdhcp105 kernel: atkbd.c: Unknown key (set 2, scancode 0x1b8, on isa0060/serio0) pressed.
> Oct  3 14:00:01 gtbdhcp105 kernel: i8042.c: e0 <- i8042 (interrupt, kbd, 1) [65563]
> Oct  3 14:00:01 gtbdhcp105 kernel: i8042.c: 38 <- i8042 (interrupt, kbd, 1) [65567]
> Oct  3 14:00:01 gtbdhcp105 kernel: i8042.c: e0 <- i8042 (interrupt, kbd, 1) [65676]
> Oct  3 14:00:01 gtbdhcp105 kernel: i8042.c: b8 <- i8042 (interrupt, kbd, 1) [65685]
> Oct  3 14:00:01 gtbdhcp105 kernel: i8042.c: 1c <- i8042 (interrupt, kbd, 1) [66281]
> Oct  3 14:00:02 gtbdhcp105 kernel: i8042.c: 9c <- i8042 (interrupt, kbd, 1) [66379]
> Oct  3 14:00:02 gtbdhcp105 kernel: i8042.c: 1c <- i8042 (interrupt, kbd, 1) [66501]
> Oct  3 14:00:02 gtbdhcp105 kernel: i8042.c: 9c <- i8042 (interrupt, kbd, 1) [66576]
> Oct  3 14:00:02 gtbdhcp105 kernel: i8042.c: 1c <- i8042 (interrupt, kbd, 1) [66680]
> Oct  3 14:00:02 gtbdhcp105 kernel: i8042.c: 9c <- i8042 (interrupt, kbd, 1) [66763]

-- 
Vojtech Pavlik
SuSE Labs

^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: 2.5.40: AT keyboard input problem
  2002-10-03 12:10     ` Vojtech Pavlik
@ 2002-10-03 12:28       ` Tobias Ringstrom
  2002-10-03 12:31         ` Vojtech Pavlik
  0 siblings, 1 reply; 23+ messages in thread
From: Tobias Ringstrom @ 2002-10-03 12:28 UTC (permalink / raw)
  To: Vojtech Pavlik; +Cc: Kernel Mailing List

On Thu, 3 Oct 2002, Vojtech Pavlik wrote:

> On Thu, Oct 03, 2002 at 02:08:26PM +0200, Tobias Ringstrom wrote:
> > On Thu, 3 Oct 2002, Vojtech Pavlik wrote:
> > 
> > > Yes, please try with #I8042_DEBUG_IO enabled, try all the suspicious key
> > > combinations and add comments to the log file which is which. This will
> > > allow me to fix it properly.
> > 
> > I hope this is enough.  There are more combinations, I'm sure.  I hope 
> > that it is one bug causing them all, though.
> 
> Perfect, thanks.
> 
> Are you possible to reproduce it when you use "i8042_direct" on the
> kernel command line?

No, the problem went away.

/Tobias


^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: 2.5.40: AT keyboard input problem
  2002-10-03 12:28       ` Tobias Ringstrom
@ 2002-10-03 12:31         ` Vojtech Pavlik
       [not found]           ` <Pine.LNX.4.44.0210031442500.14559-100000@boris.prodako.se>
  0 siblings, 1 reply; 23+ messages in thread
From: Vojtech Pavlik @ 2002-10-03 12:31 UTC (permalink / raw)
  To: Tobias Ringstrom; +Cc: Vojtech Pavlik, Kernel Mailing List

On Thu, Oct 03, 2002 at 02:28:44PM +0200, Tobias Ringstrom wrote:
> On Thu, 3 Oct 2002, Vojtech Pavlik wrote:
> 
> > On Thu, Oct 03, 2002 at 02:08:26PM +0200, Tobias Ringstrom wrote:
> > > On Thu, 3 Oct 2002, Vojtech Pavlik wrote:
> > > 
> > > > Yes, please try with #I8042_DEBUG_IO enabled, try all the suspicious key
> > > > combinations and add comments to the log file which is which. This will
> > > > allow me to fix it properly.
> > > 
> > > I hope this is enough.  There are more combinations, I'm sure.  I hope 
> > > that it is one bug causing them all, though.
> > 
> > Perfect, thanks.
> > 
> > Are you possible to reproduce it when you use "i8042_direct" on the
> > kernel command line?
> 
> No, the problem went away.

Good. You can use that for now, and I'll make a fix so that it works
even without it.

-- 
Vojtech Pavlik
SuSE Labs

^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: 2.5.40: AT keyboard input problem
  2002-10-03 11:31           ` Vojtech Pavlik
@ 2002-10-03 12:42             ` jbradford
  2002-10-03 12:43               ` Vojtech Pavlik
  0 siblings, 1 reply; 23+ messages in thread
From: jbradford @ 2002-10-03 12:42 UTC (permalink / raw)
  To: Vojtech Pavlik; +Cc: tori, linux-kernel

> 
> On Thu, Oct 03, 2002 at 12:34:15PM +0100, jbradford@dial.pipex.com wrote:
> > > On Thu, Oct 03, 2002 at 11:14:02AM +0100, jbradford@dial.pipex.com wrote:
> > > > > 
> > > > > On Thu, Oct 03, 2002 at 09:36:05AM +0100, jbradford@dial.pipex.com wrote:
> > > > > > > While 2.5 has worked better than I hoped for so far, I do have a problem 
> > > > > > > with the new input layer (I think) that is easily reproducible, and quite 
> > > > > > > irritating.
> > > > > > > 
> > > > > > > If I press and hold my left Alt key, press and release the right AltGr
> > > > > > > key, and then release the left Alt key, I get one of the following
> > > > > > > messages in dmesg:
> > > > > > 
> > > > > > [snip]
> > > > > > 
> > > > > > > The same thing happens for a few other combinations as well. I happens 
> > > > > > > both in X and in the console.
> > > > > > 
> > > > > > I am getting similar odd behavior with 2.5.40 and a Japanese keyboard.
> > > > > > Specifically, if I bang away at repeatedly on 't', 'h', '@', and ';', I
> > > > > > get unknown key messages in dmesg.
> > > > > > 
> > > > > > I posted about this a while ago, but I don't think anybody noticed :-)
> > > > > 
> > > > > Can you #define I8042_DEBUG_IO in i8042.h and send me the 'dmesg' output
> > > > > of the unknown key message and data around it?
> > > > 
> > > > OK, that was fun - every time I managed to cause the error, by the time I'd
> > > > switched to another VT, and typed dmesg, it was flooded with other keypresses
> > > > :-).  I should have used a serial terminal, but anyway, here goes:
> > > > 
> > > > i8042.c: fa <- i8042 (interrupt, kbd, 1) [694909]
> > > > i8042.c: f0 -> i8042 (kbd-data) [694909]
> > > > i8042.c: fa <- i8042 (interrupt, kbd, 1) [694912]
> > > > i8042.c: 00 -> i8042 (kbd-data) [694912]
> > > > i8042.c: fa <- i8042 (interrupt, kbd, 1) [694915]
> > > > i8042.c: 41 <- i8042 (interrupt, kbd, 1) [694916]
> > > > input: AT Set 2 keyboard on isa0060/serio0
> > > > i8042.c: 94 <- i8042 (interrupt, kbd, 1) [694937]
> > > > i8042.c: a3 <- i8042 (interrupt, kbd, 1) [694943]
> > > > i8042.c: 38 <- i8042 (interrupt, kbd, 1) [696272]
> > > > i8042.c: 3d <- i8042 (interrupt, kbd, 1) [696372]
> > > > i8042.c: bd <- i8042 (interrupt, kbd, 1) [696440]
> > > > i8042.c: b8 <- i8042 (interrupt, kbd, 1) [696446]
> > > > i8042.c: 1c <- i8042 (interrupt, kbd, 1) [697112]
> > > > 
> > > > This was in the syslog:
> > > > 
> > > > Oct  3 10:54:59 darkstar kernel: atkbd.c: Unknown key (set 2, scancode 0x94, on isa0060/serio0) pressed.
> > > 
> > > What's on the lines just before this one from i8042.c?
> > 
> > Forget the above report, I've since done a more comprehensive one, (below):
> 
> Yes, that one is perfect. Now some more tests to do with the keyboard:
> 
> 1) The same with i8042_direct on the kernel command line.

OK, here is the dmesg output - I've cut out things not releating to the keyboard.  This shows a boot followed by presses of - 'Henkaku/Zenkaku', '???', 'space', '???', and 'Hiragana/Romaji':

input: PC Speaker
i8042.c: 20 -> i8042 (command) [0]
i8042.c: 47 <- i8042 (return) [0]
i8042.c: 60 -> i8042 (command) [0]
i8042.c: 16 -> i8042 (parameter) [0]
i8042.c: d3 -> i8042 (command) [0]
i8042.c: 5a -> i8042 (parameter) [0]
i8042.c: a5 <- i8042 (return) [0]
i8042.c: a9 -> i8042 (command) [1]
i8042.c: 00 <- i8042 (return) [1]
i8042.c: a7 -> i8042 (command) [1]
i8042.c: 20 -> i8042 (command) [1]
i8042.c: 36 <- i8042 (return) [1]
i8042.c: a8 -> i8042 (command) [1]
i8042.c: 20 -> i8042 (command) [2]
i8042.c: 16 <- i8042 (return) [2]
i8042.c: 60 -> i8042 (command) [2]
i8042.c: 34 -> i8042 (parameter) [2]
i8042.c: 60 -> i8042 (command) [2]
i8042.c: 14 -> i8042 (parameter) [2]
i8042.c: 60 -> i8042 (command) [2]
i8042.c: 16 -> i8042 (parameter) [2]
i8042.c: d4 -> i8042 (command) [2]
i8042.c: ed -> i8042 (parameter) [2]
i8042.c: 60 -> i8042 (command) [56]
i8042.c: 14 -> i8042 (parameter) [56]
i8042.c: fe <- i8042 (interrupt, aux, 12, timeout) [57]
serio: i8042 AUX port at 0x60,0x64 irq 12
i8042.c: 60 -> i8042 (command) [57]
i8042.c: 04 -> i8042 (parameter) [57]
i8042.c: 60 -> i8042 (command) [57]
i8042.c: 05 -> i8042 (parameter) [57]
i8042.c: ed -> i8042 (kbd-data) [58]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [61]
i8042.c: 00 -> i8042 (kbd-data) [61]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [63]
i8042.c: f2 -> i8042 (kbd-data) [63]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [66]
i8042.c: ab <- i8042 (interrupt, kbd, 1) [67]
i8042.c: 90 <- i8042 (interrupt, kbd, 1) [68]
i8042.c: f8 -> i8042 (kbd-data) [68]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [71]
i8042.c: f4 -> i8042 (kbd-data) [71]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [75]
i8042.c: ea -> i8042 (kbd-data) [75]
i8042.c: fe <- i8042 (interrupt, kbd, 1) [78]
i8042.c: f0 -> i8042 (kbd-data) [78]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [81]
i8042.c: 02 -> i8042 (kbd-data) [81]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [83]
i8042.c: f0 -> i8042 (kbd-data) [83]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [86]
i8042.c: 00 -> i8042 (kbd-data) [86]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [89]
i8042.c: 02 <- i8042 (interrupt, kbd, 1) [90]
input: AT Set 2 keyboard on isa0060/serio0
serio: i8042 KBD port at 0x60,0x64 irq 1
NET4: Linux TCP/IP 1.0 for NET4.0
IP Protocols: ICMP, UDP, TCP
IP: routing cache hash table of 1024 buckets, 8Kbytes
TCP: Hash tables configured (established 8192 bind 8192)
ip_conntrack version 2.1 (1024 buckets, 8192 max) - 292 bytes per conntrack
NET4: Unix domain sockets 1.0/SMP for Linux NET4.0.
VFS: Mounted root (ext2 filesystem) readonly.
Freeing unused kernel memory: 224k freed
i8042.c: 00 <- i8042 (interrupt, kbd, 1) [138631]
atkbd.c: Unknown key (set 2, scancode 0x0, on isa0060/serio0) pressed.
i8042.c: 29 <- i8042 (interrupt, kbd, 1) [199889]
i8042.c: f0 <- i8042 (interrupt, kbd, 1) [199972]
i8042.c: 29 <- i8042 (interrupt, kbd, 1) [199974]
i8042.c: 29 <- i8042 (interrupt, kbd, 1) [200469]
i8042.c: f0 <- i8042 (interrupt, kbd, 1) [200554]
i8042.c: 29 <- i8042 (interrupt, kbd, 1) [200555]
i8042.c: 29 <- i8042 (interrupt, kbd, 1) [200922]
i8042.c: f0 <- i8042 (interrupt, kbd, 1) [201024]
i8042.c: 29 <- i8042 (interrupt, kbd, 1) [201025]
i8042.c: 29 <- i8042 (interrupt, kbd, 1) [201415]
i8042.c: f0 <- i8042 (interrupt, kbd, 1) [201516]
i8042.c: 29 <- i8042 (interrupt, kbd, 1) [201518]

> 2) The same with i8042_direct and atkbd_set=3 on the kernel command line.
> 
> It may make the extra keyboards work and will definitely explain what's
> happening in greater detail.

Right, this one is interesting - same keypresses as above, and this time the keys work, (excellent :-) ), Henkaku/Zenkaku is mapped to backtick, (as expected, as I am using a Russian keymap), and the other extra keys are not mapped to anything, (again, as to be expected).

input: PC Speaker
i8042.c: 20 -> i8042 (command) [0]
i8042.c: 47 <- i8042 (return) [0]
i8042.c: 60 -> i8042 (command) [0]
i8042.c: 16 -> i8042 (parameter) [0]
i8042.c: d3 -> i8042 (command) [1]
i8042.c: 5a -> i8042 (parameter) [1]
i8042.c: a5 <- i8042 (return) [1]
i8042.c: a9 -> i8042 (command) [1]
i8042.c: 00 <- i8042 (return) [1]
i8042.c: a7 -> i8042 (command) [1]
i8042.c: 20 -> i8042 (command) [1]
i8042.c: 36 <- i8042 (return) [1]
i8042.c: a8 -> i8042 (command) [2]
i8042.c: 20 -> i8042 (command) [2]
i8042.c: 16 <- i8042 (return) [2]
i8042.c: 60 -> i8042 (command) [2]
i8042.c: 34 -> i8042 (parameter) [2]
i8042.c: 60 -> i8042 (command) [2]
i8042.c: 14 -> i8042 (parameter) [2]
i8042.c: 60 -> i8042 (command) [3]
i8042.c: 16 -> i8042 (parameter) [3]
i8042.c: d4 -> i8042 (command) [3]
i8042.c: ed -> i8042 (parameter) [3]
i8042.c: 60 -> i8042 (command) [56]
i8042.c: 14 -> i8042 (parameter) [56]
i8042.c: fe <- i8042 (interrupt, aux, 12, timeout) [57]
serio: i8042 AUX port at 0x60,0x64 irq 12
i8042.c: 60 -> i8042 (command) [58]
i8042.c: 04 -> i8042 (parameter) [58]
i8042.c: 60 -> i8042 (command) [58]
i8042.c: 05 -> i8042 (parameter) [58]
i8042.c: ed -> i8042 (kbd-data) [58]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [61]
i8042.c: 00 -> i8042 (kbd-data) [61]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [63]
i8042.c: f2 -> i8042 (kbd-data) [63]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [66]
i8042.c: ab <- i8042 (interrupt, kbd, 1) [67]
i8042.c: 90 <- i8042 (interrupt, kbd, 1) [68]
i8042.c: f8 -> i8042 (kbd-data) [68]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [71]
i8042.c: f4 -> i8042 (kbd-data) [71]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [75]
i8042.c: ea -> i8042 (kbd-data) [75]
i8042.c: fe <- i8042 (interrupt, kbd, 1) [78]
i8042.c: f0 -> i8042 (kbd-data) [78]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [81]
i8042.c: 03 -> i8042 (kbd-data) [81]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [83]
i8042.c: f0 -> i8042 (kbd-data) [83]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [86]
i8042.c: 00 -> i8042 (kbd-data) [86]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [89]
i8042.c: 03 <- i8042 (interrupt, kbd, 1) [90]
input: AT Set 3 keyboard on isa0060/serio0
serio: i8042 KBD port at 0x60,0x64 irq 1
NET4: Linux TCP/IP 1.0 for NET4.0
IP Protocols: ICMP, UDP, TCP
IP: routing cache hash table of 1024 buckets, 8Kbytes
TCP: Hash tables configured (established 8192 bind 8192)
ip_conntrack version 2.1 (1024 buckets, 8192 max) - 292 bytes per conntrack
NET4: Unix domain sockets 1.0/SMP for Linux NET4.0.
VFS: Mounted root (ext2 filesystem) readonly.
Freeing unused kernel memory: 224k freed
i8042.c: 0e <- i8042 (interrupt, kbd, 1) [37041]
i8042.c: f0 <- i8042 (interrupt, kbd, 1) [37142]
i8042.c: 0e <- i8042 (interrupt, kbd, 1) [37143]
i8042.c: 85 <- i8042 (interrupt, kbd, 1) [41289]
atkbd.c: Unknown key (set 3, scancode 0x85, on isa0060/serio0) pressed.
i8042.c: f0 <- i8042 (interrupt, kbd, 1) [41382]
i8042.c: 85 <- i8042 (interrupt, kbd, 1) [41384]
atkbd.c: Unknown key (set 3, scancode 0x85, on isa0060/serio0) released.
i8042.c: 29 <- i8042 (interrupt, kbd, 1) [42385]
i8042.c: f0 <- i8042 (interrupt, kbd, 1) [42478]
i8042.c: 29 <- i8042 (interrupt, kbd, 1) [42480]
i8042.c: 86 <- i8042 (interrupt, kbd, 1) [43519]
atkbd.c: Unknown key (set 3, scancode 0x86, on isa0060/serio0) pressed.
i8042.c: f0 <- i8042 (interrupt, kbd, 1) [43596]
i8042.c: 86 <- i8042 (interrupt, kbd, 1) [43598]
atkbd.c: Unknown key (set 3, scancode 0x86, on isa0060/serio0) released.
i8042.c: 87 <- i8042 (interrupt, kbd, 1) [45273]
atkbd.c: Unknown key (set 3, scancode 0x87, on isa0060/serio0) pressed.
i8042.c: f0 <- i8042 (interrupt, kbd, 1) [45366]
i8042.c: 87 <- i8042 (interrupt, kbd, 1) [45367]
atkbd.c: Unknown key (set 3, scancode 0x87, on isa0060/serio0) released.

Interestingly, I wasn't able to reproduce the bashing multiple keys error, using i8042_direct or atkbd_set=3.

John.

^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: 2.5.40: AT keyboard input problem
  2002-10-03 12:42             ` jbradford
@ 2002-10-03 12:43               ` Vojtech Pavlik
  2002-10-03 13:20                 ` jbradford
  0 siblings, 1 reply; 23+ messages in thread
From: Vojtech Pavlik @ 2002-10-03 12:43 UTC (permalink / raw)
  To: jbradford; +Cc: Vojtech Pavlik, tori, linux-kernel

On Thu, Oct 03, 2002 at 01:42:02PM +0100, jbradford@dial.pipex.com wrote:

> > 1) The same with i8042_direct on the kernel command line.
> 
> OK, here is the dmesg output - I've cut out things not releating to
> the keyboard.  This shows a boot followed by presses of -
> 'Henkaku/Zenkaku', '???', 'space', '???', and 'Hiragana/Romaji':

> i8042.c: 00 <- i8042 (interrupt, kbd, 1) [138631]
> atkbd.c: Unknown key (set 2, scancode 0x0, on isa0060/serio0) pressed.
> i8042.c: 29 <- i8042 (interrupt, kbd, 1) [199889]
> i8042.c: f0 <- i8042 (interrupt, kbd, 1) [199972]
> i8042.c: 29 <- i8042 (interrupt, kbd, 1) [199974]
> i8042.c: 29 <- i8042 (interrupt, kbd, 1) [200469]
> i8042.c: f0 <- i8042 (interrupt, kbd, 1) [200554]
> i8042.c: 29 <- i8042 (interrupt, kbd, 1) [200555]
> i8042.c: 29 <- i8042 (interrupt, kbd, 1) [200922]
> i8042.c: f0 <- i8042 (interrupt, kbd, 1) [201024]
> i8042.c: 29 <- i8042 (interrupt, kbd, 1) [201025]
> i8042.c: 29 <- i8042 (interrupt, kbd, 1) [201415]
> i8042.c: f0 <- i8042 (interrupt, kbd, 1) [201516]
> i8042.c: 29 <- i8042 (interrupt, kbd, 1) [201518]

Obviously, the keyboard doesn't know how to send these keys in Set 2.

> > 2) The same with i8042_direct and atkbd_set=3 on the kernel command line.
> > 
> > It may make the extra keyboards work and will definitely explain what's
> > happening in greater detail.
> 
> Right, this one is interesting - same keypresses as above, and this
> time the keys work, (excellent :-) ), Henkaku/Zenkaku is mapped to
> backtick, (as expected, as I am using a Russian keymap), and the other
> extra keys are not mapped to anything, (again, as to be expected).
> 
> i8042.c: 0e <- i8042 (interrupt, kbd, 1) [37041]
> i8042.c: f0 <- i8042 (interrupt, kbd, 1) [37142]
> i8042.c: 0e <- i8042 (interrupt, kbd, 1) [37143]
> i8042.c: 85 <- i8042 (interrupt, kbd, 1) [41289]
> atkbd.c: Unknown key (set 3, scancode 0x85, on isa0060/serio0) pressed.
> i8042.c: f0 <- i8042 (interrupt, kbd, 1) [41382]
> i8042.c: 85 <- i8042 (interrupt, kbd, 1) [41384]
> atkbd.c: Unknown key (set 3, scancode 0x85, on isa0060/serio0) released.
> i8042.c: 29 <- i8042 (interrupt, kbd, 1) [42385]
> i8042.c: f0 <- i8042 (interrupt, kbd, 1) [42478]
> i8042.c: 29 <- i8042 (interrupt, kbd, 1) [42480]
> i8042.c: 86 <- i8042 (interrupt, kbd, 1) [43519]
> atkbd.c: Unknown key (set 3, scancode 0x86, on isa0060/serio0) pressed.
> i8042.c: f0 <- i8042 (interrupt, kbd, 1) [43596]
> i8042.c: 86 <- i8042 (interrupt, kbd, 1) [43598]
> atkbd.c: Unknown key (set 3, scancode 0x86, on isa0060/serio0) released.
> i8042.c: 87 <- i8042 (interrupt, kbd, 1) [45273]
> atkbd.c: Unknown key (set 3, scancode 0x87, on isa0060/serio0) pressed.
> i8042.c: f0 <- i8042 (interrupt, kbd, 1) [45366]
> i8042.c: 87 <- i8042 (interrupt, kbd, 1) [45367]
> atkbd.c: Unknown key (set 3, scancode 0x87, on isa0060/serio0) released.

And it is happy in Set 3. Do you by any chance know the names of the
unknown keys so that I could add them to the Set 3 default scancode map?

> Interestingly, I wasn't able to reproduce the bashing multiple keys
> error, using i8042_direct or atkbd_set=3.

Yes, it can only happen without i8042_direct.

-- 
Vojtech Pavlik
SuSE Labs

^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: 2.5.40: AT keyboard input problem
  2002-10-03  6:59 2.5.40: AT keyboard input problem Tobias Ringstrom
                   ` (2 preceding siblings ...)
  2002-10-03  8:47 ` Vojtech Pavlik
@ 2002-10-03 12:48 ` Jon Portnoy
  2002-10-03 12:51   ` Vojtech Pavlik
  3 siblings, 1 reply; 23+ messages in thread
From: Jon Portnoy @ 2002-10-03 12:48 UTC (permalink / raw)
  To: Tobias Ringstrom; +Cc: Vojtech Pavlik, Kernel Mailing List

Reproduced with an AT keyboard here, too.


On Thu, 3 Oct 2002, Tobias Ringstrom wrote:

[snip]
> 
> If I press and hold my left Alt key, press and release the right AltGr
> key, and then release the left Alt key, I get one of the following
> messages in dmesg:
> 
> atkbd.c: Unknown key (set 2, scancode 0x1b8, on isa0060/serio0) pressed.
[snip]
> 
> The left Alt key is now stuck until I press and release it again.
> 
> The same thing happens for a few other combinations as well. I happens 
> both in X and in the console.
> 
> Please let me know if you need more info.
> 
> /Tobias


^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: 2.5.40: AT keyboard input problem
  2002-10-03 12:48 ` Jon Portnoy
@ 2002-10-03 12:51   ` Vojtech Pavlik
  0 siblings, 0 replies; 23+ messages in thread
From: Vojtech Pavlik @ 2002-10-03 12:51 UTC (permalink / raw)
  To: Jon Portnoy; +Cc: Tobias Ringstrom, Vojtech Pavlik, Kernel Mailing List

On Thu, Oct 03, 2002 at 08:48:19AM -0400, Jon Portnoy wrote:

> Reproduced with an AT keyboard here, too.

I know where the problem is now - it's pressing two keys, one with
scancode 'e0 xx', the other 'yy' where xx == yy at the same time. 

Now I'm looking for a nice clean way to fix it.

> On Thu, 3 Oct 2002, Tobias Ringstrom wrote:
> 
> [snip]
> > 
> > If I press and hold my left Alt key, press and release the right AltGr
> > key, and then release the left Alt key, I get one of the following
> > messages in dmesg:
> > 
> > atkbd.c: Unknown key (set 2, scancode 0x1b8, on isa0060/serio0) pressed.
> [snip]
> > 
> > The left Alt key is now stuck until I press and release it again.
> > 
> > The same thing happens for a few other combinations as well. I happens 
> > both in X and in the console.
> > 
> > Please let me know if you need more info.
> > 
> > /Tobias

-- 
Vojtech Pavlik
SuSE Labs

^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: 2.5.40: AT keyboard input problem
  2002-10-03 13:20                 ` jbradford
@ 2002-10-03 13:17                   ` Vojtech Pavlik
  2002-10-03 13:40                   ` Vojtech Pavlik
                                     ` (2 subsequent siblings)
  3 siblings, 0 replies; 23+ messages in thread
From: Vojtech Pavlik @ 2002-10-03 13:17 UTC (permalink / raw)
  To: jbradford; +Cc: Vojtech Pavlik, tori, linux-kernel

On Thu, Oct 03, 2002 at 02:20:48PM +0100, jbradford@dial.pipex.com wrote:
> > > i8042.c: 00 <- i8042 (interrupt, kbd, 1) [138631]
> > > atkbd.c: Unknown key (set 2, scancode 0x0, on isa0060/serio0) pressed.
> > > i8042.c: 29 <- i8042 (interrupt, kbd, 1) [199889]
> > > i8042.c: f0 <- i8042 (interrupt, kbd, 1) [199972]
> > > i8042.c: 29 <- i8042 (interrupt, kbd, 1) [199974]
> > > i8042.c: 29 <- i8042 (interrupt, kbd, 1) [200469]
> > > i8042.c: f0 <- i8042 (interrupt, kbd, 1) [200554]
> > > i8042.c: 29 <- i8042 (interrupt, kbd, 1) [200555]
> > > i8042.c: 29 <- i8042 (interrupt, kbd, 1) [200922]
> > > i8042.c: f0 <- i8042 (interrupt, kbd, 1) [201024]
> > > i8042.c: 29 <- i8042 (interrupt, kbd, 1) [201025]
> > > i8042.c: 29 <- i8042 (interrupt, kbd, 1) [201415]
> > > i8042.c: f0 <- i8042 (interrupt, kbd, 1) [201516]
> > > i8042.c: 29 <- i8042 (interrupt, kbd, 1) [201518]
> > 
> > Obviously, the keyboard doesn't know how to send these keys in Set 2.
> 
> Ah, OK, so I need to force it to use Set 3 by default.  Passing atkbd_set=3 on it's own didn't seem to work, (only works with i8042_direct).

Yes, set 3 can only work correctly with atkbd_direct also specified.

> > > i8042.c: 0e <- i8042 (interrupt, kbd, 1) [37041]
> > > i8042.c: f0 <- i8042 (interrupt, kbd, 1) [37142]
> > > i8042.c: 0e <- i8042 (interrupt, kbd, 1) [37143]
> > > i8042.c: 85 <- i8042 (interrupt, kbd, 1) [41289]
> > > atkbd.c: Unknown key (set 3, scancode 0x85, on isa0060/serio0) pressed.
> > > i8042.c: f0 <- i8042 (interrupt, kbd, 1) [41382]
> > > i8042.c: 85 <- i8042 (interrupt, kbd, 1) [41384]
> > > atkbd.c: Unknown key (set 3, scancode 0x85, on isa0060/serio0) released.
> > > i8042.c: 29 <- i8042 (interrupt, kbd, 1) [42385]
> > > i8042.c: f0 <- i8042 (interrupt, kbd, 1) [42478]
> > > i8042.c: 29 <- i8042 (interrupt, kbd, 1) [42480]
> > > i8042.c: 86 <- i8042 (interrupt, kbd, 1) [43519]
> > > atkbd.c: Unknown key (set 3, scancode 0x86, on isa0060/serio0) pressed.
> > > i8042.c: f0 <- i8042 (interrupt, kbd, 1) [43596]
> > > i8042.c: 86 <- i8042 (interrupt, kbd, 1) [43598]
> > > atkbd.c: Unknown key (set 3, scancode 0x86, on isa0060/serio0) released.
> > > i8042.c: 87 <- i8042 (interrupt, kbd, 1) [45273]
> > > atkbd.c: Unknown key (set 3, scancode 0x87, on isa0060/serio0) pressed.
> > > i8042.c: f0 <- i8042 (interrupt, kbd, 1) [45366]
> > > i8042.c: 87 <- i8042 (interrupt, kbd, 1) [45367]
> > > atkbd.c: Unknown key (set 3, scancode 0x87, on isa0060/serio0) released.
> > 
> > And it is happy in Set 3.
> 
> Seems like it, yes.
> 
> > Do you by any chance know the names of the unknown keys so that I could
> > add them to the Set 3 default scancode map?
> 
> All I can tell you is a translation of what is written on the scancode 0x87 key on this particular keyboard:
> 
> 'Hiragana/Roma_characters'
> 
> I can't translate the characters on the other keys.
> 
> However, somebody else might be able to - I found this diagram of the keyboard:
> 
> http://www.pfu.co.jp/hhkeyboard/kb_collection/ibm5576-002.gif
> 
> The legends on the bottom row of keys are exactly the same as on my keyboard, and from left to right, they have the following functions:
> 
> Control
> ALT, (it says, 'Kanji/Katakana/Kanji???', but works as ALT)
> Scancode 0x85
> Space bar
> Scancode 0x86
> Scancode 0x87, (it says, 'Hiragana/Roma characters')
> ALT GR
> Control
> 
> Sorry I can't be more help than that :-).

Well, I maybe just will use the keycodes KEY_INTL1,2,... or KEY_LANG1,2,.. :)

Thanks!

> > > Interestingly, I wasn't able to reproduce the bashing multiple keys
> > > error, using i8042_direct or atkbd_set=3.
> > 
> > Yes, it can only happen without i8042_direct.
> 
> Ah, OK, cool.

-- 
Vojtech Pavlik
SuSE Labs

^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: 2.5.40: AT keyboard input problem
  2002-10-03 12:43               ` Vojtech Pavlik
@ 2002-10-03 13:20                 ` jbradford
  2002-10-03 13:17                   ` Vojtech Pavlik
                                     ` (3 more replies)
  0 siblings, 4 replies; 23+ messages in thread
From: jbradford @ 2002-10-03 13:20 UTC (permalink / raw)
  To: Vojtech Pavlik; +Cc: tori, linux-kernel

> > i8042.c: 00 <- i8042 (interrupt, kbd, 1) [138631]
> > atkbd.c: Unknown key (set 2, scancode 0x0, on isa0060/serio0) pressed.
> > i8042.c: 29 <- i8042 (interrupt, kbd, 1) [199889]
> > i8042.c: f0 <- i8042 (interrupt, kbd, 1) [199972]
> > i8042.c: 29 <- i8042 (interrupt, kbd, 1) [199974]
> > i8042.c: 29 <- i8042 (interrupt, kbd, 1) [200469]
> > i8042.c: f0 <- i8042 (interrupt, kbd, 1) [200554]
> > i8042.c: 29 <- i8042 (interrupt, kbd, 1) [200555]
> > i8042.c: 29 <- i8042 (interrupt, kbd, 1) [200922]
> > i8042.c: f0 <- i8042 (interrupt, kbd, 1) [201024]
> > i8042.c: 29 <- i8042 (interrupt, kbd, 1) [201025]
> > i8042.c: 29 <- i8042 (interrupt, kbd, 1) [201415]
> > i8042.c: f0 <- i8042 (interrupt, kbd, 1) [201516]
> > i8042.c: 29 <- i8042 (interrupt, kbd, 1) [201518]
> 
> Obviously, the keyboard doesn't know how to send these keys in Set 2.

Ah, OK, so I need to force it to use Set 3 by default.  Passing atkbd_set=3 on it's own didn't seem to work, (only works with i8042_direct).

> > i8042.c: 0e <- i8042 (interrupt, kbd, 1) [37041]
> > i8042.c: f0 <- i8042 (interrupt, kbd, 1) [37142]
> > i8042.c: 0e <- i8042 (interrupt, kbd, 1) [37143]
> > i8042.c: 85 <- i8042 (interrupt, kbd, 1) [41289]
> > atkbd.c: Unknown key (set 3, scancode 0x85, on isa0060/serio0) pressed.
> > i8042.c: f0 <- i8042 (interrupt, kbd, 1) [41382]
> > i8042.c: 85 <- i8042 (interrupt, kbd, 1) [41384]
> > atkbd.c: Unknown key (set 3, scancode 0x85, on isa0060/serio0) released.
> > i8042.c: 29 <- i8042 (interrupt, kbd, 1) [42385]
> > i8042.c: f0 <- i8042 (interrupt, kbd, 1) [42478]
> > i8042.c: 29 <- i8042 (interrupt, kbd, 1) [42480]
> > i8042.c: 86 <- i8042 (interrupt, kbd, 1) [43519]
> > atkbd.c: Unknown key (set 3, scancode 0x86, on isa0060/serio0) pressed.
> > i8042.c: f0 <- i8042 (interrupt, kbd, 1) [43596]
> > i8042.c: 86 <- i8042 (interrupt, kbd, 1) [43598]
> > atkbd.c: Unknown key (set 3, scancode 0x86, on isa0060/serio0) released.
> > i8042.c: 87 <- i8042 (interrupt, kbd, 1) [45273]
> > atkbd.c: Unknown key (set 3, scancode 0x87, on isa0060/serio0) pressed.
> > i8042.c: f0 <- i8042 (interrupt, kbd, 1) [45366]
> > i8042.c: 87 <- i8042 (interrupt, kbd, 1) [45367]
> > atkbd.c: Unknown key (set 3, scancode 0x87, on isa0060/serio0) released.
> 
> And it is happy in Set 3.

Seems like it, yes.

> Do you by any chance know the names of the unknown keys so that I could
> add them to the Set 3 default scancode map?

All I can tell you is a translation of what is written on the scancode 0x87 key on this particular keyboard:

'Hiragana/Roma_characters'

I can't translate the characters on the other keys.

However, somebody else might be able to - I found this diagram of the keyboard:

http://www.pfu.co.jp/hhkeyboard/kb_collection/ibm5576-002.gif

The legends on the bottom row of keys are exactly the same as on my keyboard, and from left to right, they have the following functions:

Control
ALT, (it says, 'Kanji/Katakana/Kanji???', but works as ALT)
Scancode 0x85
Space bar
Scancode 0x86
Scancode 0x87, (it says, 'Hiragana/Roma characters')
ALT GR
Control

Sorry I can't be more help than that :-).

> > Interestingly, I wasn't able to reproduce the bashing multiple keys
> > error, using i8042_direct or atkbd_set=3.
> 
> Yes, it can only happen without i8042_direct.

Ah, OK, cool.

John.

^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: 2.5.40: AT keyboard input problem
  2002-10-03 13:20                 ` jbradford
  2002-10-03 13:17                   ` Vojtech Pavlik
@ 2002-10-03 13:40                   ` Vojtech Pavlik
  2002-10-03 13:44                   ` Bruce Harada
  2002-10-03 17:43                   ` Andries Brouwer
  3 siblings, 0 replies; 23+ messages in thread
From: Vojtech Pavlik @ 2002-10-03 13:40 UTC (permalink / raw)
  To: jbradford; +Cc: Vojtech Pavlik, tori, linux-kernel

On Thu, Oct 03, 2002 at 02:20:48PM +0100, jbradford@dial.pipex.com wrote:

> Control
> ALT, (it says, 'Kanji/Katakana/Kanji???', but works as ALT)
> Scancode 0x85 
> Space bar
> Scancode 0x86
> Scancode 0x87, (it says, 'Hiragana/Roma characters')
> ALT GR
> Control

0x85 - Intl5 - Muhenkan
0x86 - Intl4 - Henkan
0x87 - Intl2 - Hiragana/Katakana

Added, patch:

diff -Nru a/drivers/input/keyboard/atkbd.c b/drivers/input/keyboard/atkbd.c
--- a/drivers/input/keyboard/atkbd.c	Thu Oct  3 15:38:22 2002
+++ b/drivers/input/keyboard/atkbd.c	Thu Oct  3 15:38:22 2002
@@ -73,7 +73,7 @@
 	113,114, 40, 84, 26, 13, 87, 99,100, 54, 28, 27, 43, 84, 88, 70,
 	108,105,119,103,111,107, 14,110,  0, 79,106, 75, 71,109,102,104,
 	 82, 83, 80, 76, 77, 72, 69, 98,  0, 96, 81,  0, 78, 73, 55, 85,
-	 89, 90, 91, 92, 74,  0,  0,  0,  0,  0,  0,125,126,127,112,  0,
+	 89, 90, 91, 92, 74,185,184,182,  0,  0,  0,125,126,127,112,  0,
 	  0,139,150,163,165,115,152,150,166,140,160,154,113,114,167,168,
 	148,149,147,140,  0,  0,  0,  0,  0,  0,251,  0,  0,  0,  0,  0,
 	  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,

-- 
Vojtech Pavlik
SuSE Labs

^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: 2.5.40: AT keyboard input problem
  2002-10-03 13:20                 ` jbradford
  2002-10-03 13:17                   ` Vojtech Pavlik
  2002-10-03 13:40                   ` Vojtech Pavlik
@ 2002-10-03 13:44                   ` Bruce Harada
  2002-10-03 17:43                   ` Andries Brouwer
  3 siblings, 0 replies; 23+ messages in thread
From: Bruce Harada @ 2002-10-03 13:44 UTC (permalink / raw)
  To: jbradford; +Cc: vojtech, tori, linux-kernel

On Thu, 3 Oct 2002 14:20:48 +0100 (BST)
jbradford@dial.pipex.com wrote:

> > Do you by any chance know the names of the unknown keys so that I could
> > add them to the Set 3 default scancode map?
> 
> All I can tell you is a translation of what is written on the scancode 0x87
> key on this particular keyboard:
> 
> 'Hiragana/Roma_characters'
> 
> I can't translate the characters on the other keys.
> 
> However, somebody else might be able to - I found this diagram of the
> keyboard:
> 
> http://www.pfu.co.jp/hhkeyboard/kb_collection/ibm5576-002.gif
> 
> The legends on the bottom row of keys are exactly the same as on my
> keyboard, and from left to right, they have the following functions:
> 
> Control
> ALT, (it says, 'Kanji/Katakana/Kanji???', but works as ALT)
> Scancode 0x85
> Space bar
> Scancode 0x86
> Scancode 0x87, (it says, 'Hiragana/Roma characters')
> ALT GR
> Control

In the order you gave above, they are:

- Control

- Kanji/Hiragana (The smaller characters underneath are 'Kanji bango' [=
 "Kanji number"])

- Muhenkan [="No conversion"]  (The smaller characters underneath are
 'Bunsetsu yomi' [="Sentence fragment reading"])

- Space

- Zenkoho [="Previous candidate"] / Henkan (Jikoho) [="Conversion (Next
 candidate)"] / Zenkoho [="All candidates"]

- Hiragana (Underneath is 'Romaji', i.e. English characters)

- Zenmen ki [="Next screen key"]

- Control


Hope that helps,

Bruce

^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: 2.5.40: AT keyboard input problem
  2002-10-03 13:20                 ` jbradford
                                     ` (2 preceding siblings ...)
  2002-10-03 13:44                   ` Bruce Harada
@ 2002-10-03 17:43                   ` Andries Brouwer
  3 siblings, 0 replies; 23+ messages in thread
From: Andries Brouwer @ 2002-10-03 17:43 UTC (permalink / raw)
  To: jbradford; +Cc: Vojtech Pavlik, tori, linux-kernel

On Thu, Oct 03, 2002 at 02:20:48PM +0100, jbradford@dial.pipex.com wrote:

> > Do you by any chance know the names of the unknown keys so that I could
> > add them to the Set 3 default scancode map?
> 
> All I can tell you is a translation of what is written on the scancode 0x87 key
> on this particular keyboard:
> 
> 'Hiragana/Roma_characters'
> 
> I can't translate the characters on the other keys.
> 
> However, somebody else might be able to - I found this diagram of the keyboard:
> 
> http://www.pfu.co.jp/hhkeyboard/kb_collection/ibm5576-002.gif
> 
> The legends on the bottom row of keys are exactly the same as on my keyboard,
> and from left to right, they have the following functions:
> 
> Control
> ALT, (it says, 'Kanji/Katakana/Kanji???', but works as ALT)
> Scancode 0x85
> Space bar
> Scancode 0x86
> Scancode 0x87, (it says, 'Hiragana/Roma characters')
> ALT GR
> Control

For an explanation of the other keys, see

http://www.win.tue.nl/~aeb/linux/kbd/scancodes-3.html

(muhenkan / henkan).

Andries


^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: 2.5.40: AT keyboard input problem
       [not found]           ` <Pine.LNX.4.44.0210031442500.14559-100000@boris.prodako.se>
@ 2002-10-07 12:31             ` Vojtech Pavlik
  0 siblings, 0 replies; 23+ messages in thread
From: Vojtech Pavlik @ 2002-10-07 12:31 UTC (permalink / raw)
  To: Tobias Ringstrom; +Cc: linux-kernel

On Thu, Oct 03, 2002 at 02:43:04PM +0200, Tobias Ringstrom wrote:
> On Thu, 3 Oct 2002, Vojtech Pavlik wrote:
> 
> > Good. You can use that for now, and I'll make a fix so that it works
> > even without it.
> 
> Great, thanks!

Ok, here is the promised fix. I'll send it to Linus soon.

===================================================================

diff -Nru a/drivers/input/serio/i8042.c b/drivers/input/serio/i8042.c
--- a/drivers/input/serio/i8042.c	Mon Oct  7 14:30:14 2002
+++ b/drivers/input/serio/i8042.c	Mon Oct  7 14:30:14 2002
@@ -63,7 +63,7 @@
 
 extern struct pt_regs *kbd_pt_regs;
 
-static unsigned long i8042_unxlate_seen[128 / BITS_PER_LONG];
+static unsigned long i8042_unxlate_seen[256 / BITS_PER_LONG];
 static unsigned char i8042_unxlate_table[128] = {
 	  0,118, 22, 30, 38, 37, 46, 54, 61, 62, 70, 69, 78, 85,102, 13,
 	 21, 29, 36, 45, 44, 53, 60, 67, 68, 77, 84, 91, 90, 20, 28, 27,
@@ -407,14 +407,14 @@
 		}
 
 		if (data > 0x7f) {
-			if (test_and_clear_bit(data & 0x7f, i8042_unxlate_seen)) {
+			if (test_and_clear_bit((data & 0x7f) | (i8042_last_e0 << 7), i8042_unxlate_seen)) {
 				serio_interrupt(&i8042_kbd_port, 0xf0, dfl);
 				if (i8042_last_e0 && (data == 0xaa || data == 0xb6))
-					set_bit(data & 0x7f, i8042_unxlate_seen);
+					set_bit((data & 0x7f) | (i8042_last_e0 << 7), i8042_unxlate_seen);
 				data = i8042_unxlate_table[data & 0x7f];
 			}
 		} else {
-			set_bit(data, i8042_unxlate_seen);
+			set_bit(data | (i8042_last_e0 << 7), i8042_unxlate_seen);
 			data = i8042_unxlate_table[data];
 		}
 

===================================================================

-- 
Vojtech Pavlik
SuSE Labs

^ permalink raw reply	[flat|nested] 23+ messages in thread

end of thread, other threads:[~2002-10-07 12:26 UTC | newest]

Thread overview: 23+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2002-10-03  6:59 2.5.40: AT keyboard input problem Tobias Ringstrom
2002-10-03  7:15 ` DevilKin
2002-10-03  8:36 ` jbradford
2002-10-03  8:48   ` Vojtech Pavlik
2002-10-03 10:14     ` jbradford
2002-10-03 10:13       ` Vojtech Pavlik
2002-10-03 11:34         ` jbradford
2002-10-03 11:31           ` Vojtech Pavlik
2002-10-03 12:42             ` jbradford
2002-10-03 12:43               ` Vojtech Pavlik
2002-10-03 13:20                 ` jbradford
2002-10-03 13:17                   ` Vojtech Pavlik
2002-10-03 13:40                   ` Vojtech Pavlik
2002-10-03 13:44                   ` Bruce Harada
2002-10-03 17:43                   ` Andries Brouwer
2002-10-03  8:47 ` Vojtech Pavlik
2002-10-03 12:08   ` Tobias Ringstrom
2002-10-03 12:10     ` Vojtech Pavlik
2002-10-03 12:28       ` Tobias Ringstrom
2002-10-03 12:31         ` Vojtech Pavlik
     [not found]           ` <Pine.LNX.4.44.0210031442500.14559-100000@boris.prodako.se>
2002-10-07 12:31             ` Vojtech Pavlik
2002-10-03 12:48 ` Jon Portnoy
2002-10-03 12:51   ` Vojtech Pavlik

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).