2004-01-11 18:47:40

by Murilo Pontes

[permalink] [raw]
Subject: BUG: The key "/ ?" on my abtn2 keyboard is dead with kernel 2.6.1


15:34:36 [root@murilo:/MRX/drivers]#diff -urN linux-2.6.0/drivers/input/keyboard/atkbd.c linux-2.6.1/drivers/input/keyboard/atkbd.c > test.diff
15:35:12 [root@murilo:/MRX/drivers]#wc -l test.diff
387 test.diff
-------------> May be wrong?!

15:30:13 [root@murilo:/MRX/drivers]#dmesg | grep serio
serio: i8042 AUX port at 0x60,0x64 irq 12
input: ImPS/2 Generic Wheel Mouse on isa0060/serio1
serio: i8042 KBD port at 0x60,0x64 irq 1
input: AT Translated Set 2 keyboard on isa0060/serio0
atkbd.c: Unknown key released (translated set 2, code 0x7a on isa0060/serio0).
atkbd.c: Unknown key released (translated set 2, code 0x7a on isa0060/serio0).
----------> Last two lines, is apper each startx startup!!!!



2004-01-11 20:35:37

by Frédéric L. W. Meunier

[permalink] [raw]
Subject: Re: BUG: The key "/ ?" on my abtn2 keyboard is dead with kernel 2.6.1

On Sun, 11 Jan 2004, Murilo Pontes wrote:

>
> 15:34:36 [root@murilo:/MRX/drivers]#diff -urN linux-2.6.0/drivers/input/keyboard/atkbd.c linux-2.6.1/drivers/input/keyboard/atkbd.c > test.diff
> 15:35:12 [root@murilo:/MRX/drivers]#wc -l test.diff
> 387 test.diff
> -------------> May be wrong?!
>
> 15:30:13 [root@murilo:/MRX/drivers]#dmesg | grep serio
> serio: i8042 AUX port at 0x60,0x64 irq 12
> input: ImPS/2 Generic Wheel Mouse on isa0060/serio1
> serio: i8042 KBD port at 0x60,0x64 irq 1
> input: AT Translated Set 2 keyboard on isa0060/serio0
> atkbd.c: Unknown key released (translated set 2, code 0x7a on isa0060/serio0).
> atkbd.c: Unknown key released (translated set 2, code 0x7a on isa0060/serio0).
> ----------> Last two lines, is apper each startx startup!!!!

Also reported by me - see
http://marc.theaimsgroup.com/?l=linux-kernel&m=107376128814606&w=2

showkey under 2.4: keycode 89

But I didn't use startx, only the frame buffer. Maybe why I
didn't get such "atkbd.c: Unknown key released (translated set
2, code 0x7a on isa0060/serio0)." messages ?

Vojtech: Does "[PATCH] Re: bad scancode for USB keyboard" -
http://marc.theaimsgroup.com/?l=linux-kernel&m=107384731209938&w=2
also fix it ?

--
http://www.pervalidus.net/contact.html

2004-01-11 23:47:23

by Vojtech Pavlik

[permalink] [raw]
Subject: Re: BUG: The key "/ ?" on my abtn2 keyboard is dead with kernel 2.6.1

On Sun, Jan 11, 2004 at 06:35:21PM -0200, Fr?d?ric L. W. Meunier wrote:
> On Sun, 11 Jan 2004, Murilo Pontes wrote:
>
> >
> > 15:34:36 [root@murilo:/MRX/drivers]#diff -urN linux-2.6.0/drivers/input/keyboard/atkbd.c linux-2.6.1/drivers/input/keyboard/atkbd.c > test.diff
> > 15:35:12 [root@murilo:/MRX/drivers]#wc -l test.diff
> > 387 test.diff
> > -------------> May be wrong?!
> >
> > 15:30:13 [root@murilo:/MRX/drivers]#dmesg | grep serio
> > serio: i8042 AUX port at 0x60,0x64 irq 12
> > input: ImPS/2 Generic Wheel Mouse on isa0060/serio1
> > serio: i8042 KBD port at 0x60,0x64 irq 1
> > input: AT Translated Set 2 keyboard on isa0060/serio0
> > atkbd.c: Unknown key released (translated set 2, code 0x7a on isa0060/serio0).
> > atkbd.c: Unknown key released (translated set 2, code 0x7a on isa0060/serio0).
> > ----------> Last two lines, is apper each startx startup!!!!
>
> Also reported by me - see
> http://marc.theaimsgroup.com/?l=linux-kernel&m=107376128814606&w=2
>
> showkey under 2.4: keycode 89
>
> But I didn't use startx, only the frame buffer. Maybe why I
> didn't get such "atkbd.c: Unknown key released (translated set
> 2, code 0x7a on isa0060/serio0)." messages ?
>
> Vojtech: Does "[PATCH] Re: bad scancode for USB keyboard" -
> http://marc.theaimsgroup.com/?l=linux-kernel&m=107384731209938&w=2
> also fix it ?

The scancode 0x7a and backslash problems are completely unrelated.

--
Vojtech Pavlik
SuSE Labs, SuSE CR

2004-01-11 23:50:29

by Vojtech Pavlik

[permalink] [raw]
Subject: Re: BUG: The key "/ ?" on my abtn2 keyboard is dead with kernel 2.6.1

On Sun, Jan 11, 2004 at 03:45:59PM +0000, Murilo Pontes wrote:

> 15:34:36 [root@murilo:/MRX/drivers]#diff -urN linux-2.6.0/drivers/input/keyboard/atkbd.c linux-2.6.1/drivers/input/keyboard/atkbd.c > test.diff
> 15:35:12 [root@murilo:/MRX/drivers]#wc -l test.diff
> 387 test.diff
> -------------> May be wrong?!

Yes, there was a mistake by me in a related patch.

This should fix it.

diff -Nru a/drivers/char/keyboard.c b/drivers/char/keyboard.c
--- a/drivers/char/keyboard.c Sun Jan 11 19:42:55 2004
+++ b/drivers/char/keyboard.c Sun Jan 11 19:42:55 2004
@@ -941,8 +941,8 @@
32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47,
48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63,
64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79,
- 80, 81, 82, 83, 84, 93, 86, 87, 88, 94, 95, 85,259,375,260, 90,
- 284,285,309,311,312, 91,327,328,329,331,333,335,336,337,338,339,
+ 80, 81, 82, 83, 43, 93, 86, 87, 88, 94, 95, 85,259,375,260, 90,
+ 284,285,309,298,312, 91,327,328,329,331,333,335,336,337,338,339,
367,288,302,304,350, 89,334,326,116,377,109,111,126,347,348,349,
360,261,262,263,298,376,100,101,321,316,373,286,289,102,351,355,
103,104,105,275,287,279,306,106,274,107,294,364,358,363,362,361,

> 15:30:13 [root@murilo:/MRX/drivers]#dmesg | grep serio
> serio: i8042 AUX port at 0x60,0x64 irq 12
> input: ImPS/2 Generic Wheel Mouse on isa0060/serio1
> serio: i8042 KBD port at 0x60,0x64 irq 1
> input: AT Translated Set 2 keyboard on isa0060/serio0
> atkbd.c: Unknown key released (translated set 2, code 0x7a on isa0060/serio0).
> atkbd.c: Unknown key released (translated set 2, code 0x7a on isa0060/serio0).
> ----------> Last two lines, is apper each startx startup!!!!

This is an XFree86 bug.

--
Vojtech Pavlik
SuSE Labs, SuSE CR

2004-01-12 02:17:13

by Frédéric L. W. Meunier

[permalink] [raw]
Subject: Re: BUG: The key "/ ?" on my abtn2 keyboard is dead with kernel 2.6.1

Vojtech, he reported the same problem I have. The "/ ?" key not
working anymore with ABNT2 keyboards.

I tested with the patch and it didn't fix it on the console.
I'm using kbd 1.10.

showkey under 2.4:

keycode 89

showkey under 2.6.1:

keycode 0 press
keycode 1 release
keycode 53 release
keycode 0 release
keycode 1 release
keycode 53 release

It works with XFree86.

Since 2.6.0 worked, I assume something broke it.

Mon, 12 Jan 2004, Vojtech Pavlik wrote:

> On Sun, Jan 11, 2004 at 03:45:59PM +0000, Murilo Pontes wrote:
>
> > 15:34:36 [root@murilo:/MRX/drivers]#diff -urN linux-2.6.0/drivers/input/keyboard/atkbd.c linux-2.6.1/drivers/input/keyboard/atkbd.c > test.diff
> > 15:35:12 [root@murilo:/MRX/drivers]#wc -l test.diff
> > 387 test.diff
> > -------------> May be wrong?!
>
> Yes, there was a mistake by me in a related patch.
>
> This should fix it.
>
> diff -Nru a/drivers/char/keyboard.c b/drivers/char/keyboard.c
> --- a/drivers/char/keyboard.c Sun Jan 11 19:42:55 2004
> +++ b/drivers/char/keyboard.c Sun Jan 11 19:42:55 2004
> @@ -941,8 +941,8 @@
> 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47,
> 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63,
> 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79,
> - 80, 81, 82, 83, 84, 93, 86, 87, 88, 94, 95, 85,259,375,260, 90,
> - 284,285,309,311,312, 91,327,328,329,331,333,335,336,337,338,339,
> + 80, 81, 82, 83, 43, 93, 86, 87, 88, 94, 95, 85,259,375,260, 90,
> + 284,285,309,298,312, 91,327,328,329,331,333,335,336,337,338,339,
> 367,288,302,304,350, 89,334,326,116,377,109,111,126,347,348,349,
> 360,261,262,263,298,376,100,101,321,316,373,286,289,102,351,355,
> 103,104,105,275,287,279,306,106,274,107,294,364,358,363,362,361,

--
http://www.pervalidus.net/contact.html

2004-01-12 08:36:59

by Vojtech Pavlik

[permalink] [raw]
Subject: Re: BUG: The key "/ ?" on my abtn2 keyboard is dead with kernel 2.6.1

On Mon, Jan 12, 2004 at 12:17:03AM -0200, Fr?d?ric L. W. Meunier wrote:

> Vojtech, he reported the same problem I have. The "/ ?" key not
> working anymore with ABNT2 keyboards.
>
> I tested with the patch and it didn't fix it on the console.

Yes, the patch didn't fix it for the console.

> I'm using kbd 1.10.
>
> showkey under 2.4:
>
> keycode 89

This, however, is VERY interesting, I didn't expect this keycode under
2.4 at all. Can you check with 'evtest' what it does send there?

> showkey under 2.6.1:
>
> keycode 0 press
> keycode 1 release
> keycode 53 release
> keycode 0 release
> keycode 1 release
> keycode 53 release
>
> It works with XFree86.
>
> Since 2.6.0 worked, I assume something broke it.

Can you check what it does under 2.6.0? Thanks.

--
Vojtech Pavlik
SuSE Labs, SuSE CR

2004-01-12 13:33:35

by Andries Brouwer

[permalink] [raw]
Subject: Re: BUG: The key "/ ?" on my abtn2 keyboard is dead with kernel 2.6.1

On Mon, Jan 12, 2004 at 09:36:47AM +0100, Vojtech Pavlik wrote:
> On Mon, Jan 12, 2004 at 12:17:03AM -0200, Fr?d?ric L. W. Meunier wrote:

> > I tested with the patch and it didn't fix it on the console.
>
> Yes, the patch didn't fix it for the console.

> > showkey under 2.4:
> >
> > keycode 89
>
> This, however, is VERY interesting, I didn't expect this keycode under
> 2.4 at all. Can you check with 'evtest' what it does send there?

See http://www.win.tue.nl/~aeb/linux/kbd/scancodes-5.html#ss5.17

---------------------------------------------------------------------
ABNT (Associao Brasileira de Normas Tecnicas) and ABNT2 are Brazilian
keyboard layout standards. The plain Brazilian keyboard has 103 keys.
The Brazilian ABNT keyboard has two unusual keys, with scancodes 73 (/?)
and 7e (Keypad-.). The former is located to the left of the RShift
(which key therefore is less wide than usually), the latter below the
Keypad-Plus (reducing the Keypad-Plus to single height).
Under Linux, the corresponding key codes are 89 and 121, respectively.
---------------------------------------------------------------------

In the 2.4 source, see the array high_keys[]. It will map 73, 7d
(seen on Japanese keyboards), 7e to keycodes 89, 124, 121.

The 2.6.1 kernel will first untranslate to 51, 6a, 6d and then map
to 181, 182, 124, changing the keycode for all three.

Andries

2004-01-12 14:30:49

by Murilo Pontes

[permalink] [raw]
Subject: Re: BUG: The key "/ ?" on my abtn2 keyboard is dead with kernel 2.6.1

Hi,

I try your patch:
> diff -Nru a/drivers/char/keyboard.c b/drivers/char/keyboard.c
> --- a/drivers/char/keyboard.c???Sun Jan 11 19:42:55 2004
> +++ b/drivers/char/keyboard.c???Sun Jan 11 19:42:55 2004
> @@ -941,8 +941,8 @@
> ???????? 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47,
> ???????? 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63,
> ???????? 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79,
> -??????? 80, 81, 82, 83, 84, 93, 86, 87, 88, 94, 95, 85,259,375,260, 90,
> -???????284,285,309,311,312, 91,327,328,329,331,333,335,336,337,338,339,
> +??????? 80, 81, 82, 83, 43, 93, 86, 87, 88, 94, 95, 85,259,375,260, 90,
> +???????284,285,309,298,312, 91,327,328,329,331,333,335,336,337,338,339,
> ????????367,288,302,304,350, 89,334,326,116,377,109,111,126,347,348,349,
> ????????360,261,262,263,298,376,100,101,321,316,373,286,289,102,351,355,
> ????????103,104,105,275,287,279,306,106,274,107,294,364,358,363,362,361,
but key not work!

I try showkey program under console-framebuffer and under xterm-console,
output in both modes:
keycode 53 release

If key is read on console-framebuffer, why it not printed in screen?


Thanks,
Murilo Pontes

2004-01-14 14:24:54

by Vojtech Pavlik

[permalink] [raw]
Subject: Re: BUG: The key "/ ?" on my abtn2 keyboard is dead with kernel 2.6.1

On Mon, Jan 12, 2004 at 01:56:55PM +0100, Andries Brouwer wrote:

> See http://www.win.tue.nl/~aeb/linux/kbd/scancodes-5.html#ss5.17
>
> ---------------------------------------------------------------------
> ABNT (Associao Brasileira de Normas Tecnicas) and ABNT2 are Brazilian
> keyboard layout standards. The plain Brazilian keyboard has 103 keys.
> The Brazilian ABNT keyboard has two unusual keys, with scancodes 73 (/?)
> and 7e (Keypad-.). The former is located to the left of the RShift
> (which key therefore is less wide than usually), the latter below the
> Keypad-Plus (reducing the Keypad-Plus to single height).
> Under Linux, the corresponding key codes are 89 and 121, respectively.
> ---------------------------------------------------------------------
>
> In the 2.4 source, see the array high_keys[]. It will map 73, 7d
> (seen on Japanese keyboards), 7e to keycodes 89, 124, 121.
>
> The 2.6.1 kernel will first untranslate to 51, 6a, 6d and then map
> to 181, 182, 124, changing the keycode for all three.

I've delved into the pc_keyb.c from 2.4, and now I have found the final
piece of the puzzle. Thanks for the clues.

Up to now, I really didn't know there actually _were_ standard keycodes
for Japanese, Korean and Brazil keys in 2.4, as those are named like
"FOCUS_PF10" and similar there. That's why I didn't take them into
account when making a list of "Linux keycodes" in drivers/input.h.

Now I've found out that the list is:

| Xlate | 2.4 | 2.4 | 2.6 | 2.6
Name | Set2 | Name | code | code | conflict
------------------------------------------------------------
Brazil KP, | 7e | PF10 | 121 | 124 | F22
Brazil /? | 73 | PF2 | 89 | 181 | F14
Jp Romanji | 73 | PF2 | 89 | 181 | F14
Jp Hiragana/Katakana | 70 | | | 182 |
Jp Yen | 7d | JAP86 | 124 | 183 | KPCOMMA
Jp Henkan | 79 | PF5 | 92 | 184 | F17
Jp Muhenkan | 7b | PF7 | 94 | 185 | F19
Jp KP, | 5c | RGN4 | 127 | 186 | COMPOSE
Korean Hanguel/English | f2 | | | 190 |
Korean Hanja | f1 | | | 191 |
Jp Katakana | 78 | PF4 | 91 | 192 | F16
Jp Hiragana | 77 | PF3 | 90 | 193 | F15
Jp Zenkaku/Hankaku | 76 | | | 194 |
Euro (GB,Fr) 103rd | | | 43 | 84 | BACKSLASH

I am willing to change the 2.6 codes to match the 2.4 ones. This will
mean that the keys listed in "2.6 conflict" column will need to have
their keycodes changed. Since most of those are rarely used keys, this
shouldn't have too big impact on users.

A few problematic cases still remain:

1) Keys that don't have a 2.4 keycode. This is Korean keys and some
Japanese keys. I'd suggest assigning another of the "Fxx" keycodes to
them, so that they're close to each other.

2) JP PC9800 KP,. This one conflicts with COMPOSE (or windows-key on AT
keyboards). Since it conflicts in 2.4 as well, there is no way to make
it work sanely. I'd suggest not making it the same as on 2.4 and use
some Fxx keycode for it so that it is below 128. This will hurt PC9800
users, but the PC9800 is rare and more or less experimental ...

3) Euro 103rd. This one didn't exist on 2.4 at all, because Set2
keyboards can't generate it. Set3 keyboards, USB keyboards and ADB
keyboards can. So far 2.6 will generate keycode 84 for it, and
compatible set2 sequence in emulated raw mode. I think this is as far as
we can get with compatibility without throwing away the distinction
between the key and backslash. It'll still hurt french and british users
a bit, since they'll have to change their keymaps on console. In XFree86
things will work as expected.

COMMENTS?

--
Vojtech Pavlik
SuSE Labs, SuSE CR

2004-01-14 14:37:01

by John Bradford

[permalink] [raw]
Subject: Re: BUG: The key "/ ?" on my abtn2 keyboard is dead with kernel 2.6.1

> COMMENTS?

What about keyboards which support USB and PS/2 connections - will
users be able to avoid changing keymaps depending on how they connect
their keyboard or are there keyboards out there which sufficiently
dissimilar codes using both connection methods that we can't easily do
this?

John.

2004-01-14 14:40:21

by Vojtech Pavlik

[permalink] [raw]
Subject: Re: BUG: The key "/ ?" on my abtn2 keyboard is dead with kernel 2.6.1

On Wed, Jan 14, 2004 at 02:44:37PM +0000, John Bradford wrote:

> > COMMENTS?
>
> What about keyboards which support USB and PS/2 connections - will
> users be able to avoid changing keymaps depending on how they connect
> their keyboard or are there keyboards out there which sufficiently
> dissimilar codes using both connection methods that we can't easily do
> this?

USB and PS/2 already work the same on both 2.4 and 2.6. There may be
problems with media and internet keys, as they're often non-standard,
but that can be fixed by using the 'setkeycodes' utility.

--
Vojtech Pavlik
SuSE Labs, SuSE CR

2004-01-14 18:23:13

by Vojtech Pavlik

[permalink] [raw]
Subject: Re: BUG: The key "/ ?" on my abtn2 keyboard is dead with kernel 2.6.1

On Wed, Jan 14, 2004 at 03:24:45PM +0100, Vojtech Pavlik wrote:
> On Mon, Jan 12, 2004 at 01:56:55PM +0100, Andries Brouwer wrote:
>
> > See http://www.win.tue.nl/~aeb/linux/kbd/scancodes-5.html#ss5.17
> >
> > ---------------------------------------------------------------------
> > ABNT (Associao Brasileira de Normas Tecnicas) and ABNT2 are Brazilian
> > keyboard layout standards. The plain Brazilian keyboard has 103 keys.
> > The Brazilian ABNT keyboard has two unusual keys, with scancodes 73 (/?)
> > and 7e (Keypad-.). The former is located to the left of the RShift
> > (which key therefore is less wide than usually), the latter below the
> > Keypad-Plus (reducing the Keypad-Plus to single height).
> > Under Linux, the corresponding key codes are 89 and 121, respectively.
> > ---------------------------------------------------------------------
> >
> > In the 2.4 source, see the array high_keys[]. It will map 73, 7d
> > (seen on Japanese keyboards), 7e to keycodes 89, 124, 121.
> >
> > The 2.6.1 kernel will first untranslate to 51, 6a, 6d and then map
> > to 181, 182, 124, changing the keycode for all three.

Thus I propose this patch to make the 2.6 keycodes for Brazillian,
Korean and Japanese keys compatible with 2.4.


[email protected], 2004-01-14 19:17:00+01:00, [email protected]
input: Move around Fxx and Japanese/Korean/Brazil keycode definitions
to be compatible with 2.4.


drivers/char/keyboard.c | 8 ++---
drivers/input/keyboard/98kbd.c | 6 +--
drivers/input/keyboard/atkbd.c | 14 ++++-----
drivers/input/keyboard/maple_keyb.c | 8 ++---
drivers/macintosh/adbhid.c | 4 +-
drivers/usb/input/hid-input.c | 8 ++---
drivers/usb/input/usbkbd.c | 8 ++---
include/linux/input.h | 56 ++++++++++++++++--------------------
8 files changed, 53 insertions(+), 59 deletions(-)


diff -Nru a/drivers/char/keyboard.c b/drivers/char/keyboard.c
--- a/drivers/char/keyboard.c Wed Jan 14 19:19:46 2004
+++ b/drivers/char/keyboard.c Wed Jan 14 19:19:46 2004
@@ -941,14 +941,14 @@
32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47,
48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63,
64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79,
- 80, 81, 82, 83, 84, 93, 86, 87, 88, 94, 95, 85,259,375,260, 90,
+ 80, 81, 82, 83, 84,273, 86, 87, 88,121,123, 92,265,266,267,268,
284,285,309,311,312, 91,327,328,329,331,333,335,336,337,338,339,
- 367,288,302,304,350, 89,334,326,116,377,109,111,126,347,348,349,
+ 367,288,302,304,350, 89,334,326,269,120,119,118,377,347,348,349,
360,261,262,263,298,376,100,101,321,316,373,286,289,102,351,355,
103,104,105,275,287,279,306,106,274,107,294,364,358,363,362,361,
291,108,381,281,290,272,292,305,280, 99,112,257,258,359,113,114,
- 264,117,271,374,379,115,125,273,121,123, 92,265,266,267,268,269,
- 120,119,118,277,278,282,283,295,296,297,299,300,301,293,303,307,
+ 264,117,271,374,379, 94,375,126,259,260, 90,115,125,116,109,111,
+ 95, 85, 93,277,278,282,283,295,296,297,299,300,301,293,303,307,
308,310,313,314,315,317,318,319,320,357,322,323,324,325,276,330,
332,340,365,342,343,344,345,346,356,270,341,368,369,370,371,372 };

diff -Nru a/drivers/input/keyboard/98kbd.c b/drivers/input/keyboard/98kbd.c
--- a/drivers/input/keyboard/98kbd.c Wed Jan 14 19:19:46 2004
+++ b/drivers/input/keyboard/98kbd.c Wed Jan 14 19:19:46 2004
@@ -47,9 +47,9 @@
1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 43, 14, 15,
16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 41, 26, 28, 30, 31, 32,
33, 34, 35, 36, 37, 38, 39, 40, 27, 44, 45, 46, 47, 48, 49, 50,
- 51, 52, 53, 12, 57,184,109,104,110,111,103,105,106,108,102,107,
- 74, 98, 71, 72, 73, 55, 75, 76, 77, 78, 79, 80, 81,117, 82,124,
- 83,185, 87, 88, 85, 89, 90, 0, 0, 0, 0, 0, 0, 0,102, 0,
+ 51, 52, 53, 12, 57, 92,109,104,110,111,103,105,106,108,102,107,
+ 74, 98, 71, 72, 73, 55, 75, 76, 77, 78, 79, 80, 81,117, 82,121,
+ 83, 94, 87, 88,183,184,185, 0, 0, 0, 0, 0, 0, 0,102, 0,
99,133, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 0, 0, 0, 0,
54, 58, 42, 56, 29
};
diff -Nru a/drivers/input/keyboard/atkbd.c b/drivers/input/keyboard/atkbd.c
--- a/drivers/input/keyboard/atkbd.c Wed Jan 14 19:19:46 2004
+++ b/drivers/input/keyboard/atkbd.c Wed Jan 14 19:19:46 2004
@@ -50,12 +50,12 @@
static unsigned char atkbd_set2_keycode[512] = {

0, 67, 65, 63, 61, 59, 60, 88, 0, 68, 66, 64, 62, 15, 41,117,
- 0, 56, 42,182, 29, 16, 2, 0, 0, 0, 44, 31, 30, 17, 3, 0,
- 0, 46, 45, 32, 18, 5, 4,186, 0, 57, 47, 33, 20, 19, 6, 85,
- 0, 49, 48, 35, 34, 21, 7, 89, 0, 0, 50, 36, 22, 8, 9, 90,
+ 0, 56, 42, 93, 29, 16, 2, 0, 0, 0, 44, 31, 30, 17, 3, 0,
+ 0, 46, 45, 32, 18, 5, 4, 95, 0, 57, 47, 33, 20, 19, 6,183,
+ 0, 49, 48, 35, 34, 21, 7,184, 0, 0, 50, 36, 22, 8, 9,185,
0, 51, 37, 23, 24, 11, 10, 0, 0, 52, 53, 38, 39, 25, 12, 0,
- 0,181, 40, 0, 26, 13, 0, 0, 58, 54, 28, 27, 0, 43, 0,194,
- 0, 86,193,192,184, 0, 14,185, 0, 79,182, 75, 71,124, 0, 0,
+ 0, 89, 40, 0, 26, 13, 0, 0, 58, 54, 28, 27, 0, 43, 0, 85,
+ 0, 86, 91, 90, 92, 0, 14, 94, 0, 79, 93, 75, 71,121, 0, 0,
82, 83, 80, 76, 77, 72, 1, 69, 87, 78, 81, 74, 55, 73, 70, 99,

0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
@@ -79,9 +79,9 @@
125, 51, 37, 23, 24, 11, 10, 67,126, 52, 53, 38, 39, 25, 12, 68,
113,114, 40, 84, 26, 13, 87, 99, 97, 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,
+ 82, 83, 80, 76, 77, 72, 69, 98, 0, 96, 81, 0, 78, 73, 55,183,

- 89, 90, 91, 92, 74,185,184,182, 0, 0, 0,125,126,127,112, 0,
+ 184,185,186,187, 74, 94, 92, 93, 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
};
diff -Nru a/drivers/input/keyboard/maple_keyb.c b/drivers/input/keyboard/maple_keyb.c
--- a/drivers/input/keyboard/maple_keyb.c Wed Jan 14 19:19:46 2004
+++ b/drivers/input/keyboard/maple_keyb.c Wed Jan 14 19:19:46 2004
@@ -22,10 +22,10 @@
27, 43, 84, 39, 40, 41, 51, 52, 53, 58, 59, 60, 61, 62, 63, 64,
65, 66, 67, 68, 87, 88, 99, 70,119,110,102,104,111,107,109,106,
105,108,103, 69, 98, 55, 74, 78, 96, 79, 80, 81, 75, 76, 77, 71,
- 72, 73, 82, 83, 86,127,116,117, 85, 89, 90, 91, 92, 93, 94, 95,
- 120,121,122,123,134,138,130,132,128,129,131,137,133,135,136,113,
- 115,114, 0, 0, 0,124, 0,181,182,183,184,185,186,187,188,189,
- 190,191,192,193,194,195,196,197,198, 0, 0, 0, 0, 0, 0, 0,
+ 72, 73, 82, 83, 86,127,116,117,183,184,185,186,187,188,189,190,
+ 191,192,193,194,134,138,130,132,128,129,131,137,133,135,136,113,
+ 115,114, 0, 0, 0,121, 0, 89, 93,124, 92, 94, 95, 0, 0, 0,
+ 122,123, 90, 91, 85, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
diff -Nru a/drivers/macintosh/adbhid.c b/drivers/macintosh/adbhid.c
--- a/drivers/macintosh/adbhid.c Wed Jan 14 19:19:46 2004
+++ b/drivers/macintosh/adbhid.c Wed Jan 14 19:19:46 2004
@@ -69,8 +69,8 @@
22, 26, 23, 25, 28, 38, 36, 40, 37, 39, 43, 51, 53, 49, 50, 52,
15, 57, 41, 14, 96, 1, 29,125, 42, 58, 56,105,106,108,103, 0,
0, 83, 0, 55, 0, 78, 0, 69, 0, 0, 0, 98, 96, 0, 74, 0,
- 0,117, 82, 79, 80, 81, 75, 76, 77, 71, 0, 72, 73,183,181,124,
- 63, 64, 65, 61, 66, 67,191, 87,190, 99, 0, 70, 0, 68,101, 88,
+ 0,117, 82, 79, 80, 81, 75, 76, 77, 71, 0, 72, 73,124, 89,121,
+ 63, 64, 65, 61, 66, 67,123, 87,122, 99, 0, 70, 0, 68,101, 88,
0,119,110,102,104,111, 62,107, 60,109, 59, 54,100, 97,126,116
};

diff -Nru a/drivers/usb/input/hid-input.c b/drivers/usb/input/hid-input.c
--- a/drivers/usb/input/hid-input.c Wed Jan 14 19:19:46 2004
+++ b/drivers/usb/input/hid-input.c Wed Jan 14 19:19:46 2004
@@ -43,10 +43,10 @@
27, 43, 84, 39, 40, 41, 51, 52, 53, 58, 59, 60, 61, 62, 63, 64,
65, 66, 67, 68, 87, 88, 99, 70,119,110,102,104,111,107,109,106,
105,108,103, 69, 98, 55, 74, 78, 96, 79, 80, 81, 75, 76, 77, 71,
- 72, 73, 82, 83, 86,127,116,117, 85, 89, 90, 91, 92, 93, 94, 95,
- 120,121,122,123,134,138,130,132,128,129,131,137,133,135,136,113,
- 115,114,unk,unk,unk,124,unk,181,182,183,184,185,186,187,188,189,
- 190,191,192,193,194,195,196,197,198,unk,unk,unk,unk,unk,unk,unk,
+ 72, 73, 82, 83, 86,127,116,117,183,184,185,186,187,188,189,190,
+ 191,192,193,194,134,138,130,132,128,129,131,137,133,135,136,113,
+ 115,114,unk,unk,unk,121,unk, 89, 93,124, 92, 94, 95,unk,unk,unk,
+ 122,123, 90, 91, 85,unk,unk,unk,unk,unk,unk,unk,unk,unk,unk,unk,
unk,unk,unk,unk,unk,unk,unk,unk,unk,unk,unk,unk,unk,unk,unk,unk,
unk,unk,unk,unk,unk,unk,unk,unk,unk,unk,unk,unk,unk,unk,unk,unk,
unk,unk,unk,unk,unk,unk,unk,unk,unk,unk,unk,unk,unk,unk,unk,unk,
diff -Nru a/drivers/usb/input/usbkbd.c b/drivers/usb/input/usbkbd.c
--- a/drivers/usb/input/usbkbd.c Wed Jan 14 19:19:46 2004
+++ b/drivers/usb/input/usbkbd.c Wed Jan 14 19:19:46 2004
@@ -52,10 +52,10 @@
27, 43, 84, 39, 40, 41, 51, 52, 53, 58, 59, 60, 61, 62, 63, 64,
65, 66, 67, 68, 87, 88, 99, 70,119,110,102,104,111,107,109,106,
105,108,103, 69, 98, 55, 74, 78, 96, 79, 80, 81, 75, 76, 77, 71,
- 72, 73, 82, 83, 86,127,116,117, 85, 89, 90, 91, 92, 93, 94, 95,
- 120,121,122,123,134,138,130,132,128,129,131,137,133,135,136,113,
- 115,114, 0, 0, 0,124, 0,181,182,183,184,185,186,187,188,189,
- 190,191,192,193,194,195,196,197,198, 0, 0, 0, 0, 0, 0, 0,
+ 72, 73, 82, 83, 86,127,116,117,183,184,185,186,187,188,189,190,
+ 191,192,193,194,134,138,130,132,128,129,131,137,133,135,136,113,
+ 115,114, 0, 0, 0,121, 0, 89, 93,124, 92, 94, 95, 0, 0, 0,
+ 122,123, 90, 91, 85, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
diff -Nru a/include/linux/input.h b/include/linux/input.h
--- a/include/linux/input.h Wed Jan 14 19:19:46 2004
+++ b/include/linux/input.h Wed Jan 14 19:19:46 2004
@@ -190,17 +190,17 @@
#define KEY_KP0 82
#define KEY_KPDOT 83
#define KEY_103RD 84
-#define KEY_F13 85
+#define KEY_ZENKAKUHANKAKU 85
#define KEY_102ND 86
#define KEY_F11 87
#define KEY_F12 88
-#define KEY_F14 89
-#define KEY_F15 90
-#define KEY_F16 91
-#define KEY_F17 92
-#define KEY_F18 93
-#define KEY_F19 94
-#define KEY_F20 95
+#define KEY_ROMANJI 89
+#define KEY_KATAKANA 90
+#define KEY_HIRAGANA 91
+#define KEY_HENKAN 92
+#define KEY_KATAKANAHIRAGANA 93
+#define KEY_MUHENKAN 94
+#define KEY_KPJPCOMMA 95
#define KEY_KPENTER 96
#define KEY_RIGHTCTRL 97
#define KEY_KPSLASH 98
@@ -225,11 +225,11 @@
#define KEY_KPEQUAL 117
#define KEY_KPPLUSMINUS 118
#define KEY_PAUSE 119
-#define KEY_F21 120
-#define KEY_F22 121
-#define KEY_F23 122
-#define KEY_F24 123
-#define KEY_KPCOMMA 124
+
+#define KEY_KPCOMMA 121
+#define KEY_HANGUEL 122
+#define KEY_HANJA 123
+#define KEY_YEN 124
#define KEY_LEFTMETA 125
#define KEY_RIGHTMETA 126
#define KEY_COMPOSE 127
@@ -288,24 +288,18 @@
#define KEY_KPLEFTPAREN 179
#define KEY_KPRIGHTPAREN 180

-#define KEY_INTL1 181
-#define KEY_INTL2 182
-#define KEY_INTL3 183
-#define KEY_INTL4 184
-#define KEY_INTL5 185
-#define KEY_INTL6 186
-#define KEY_INTL7 187
-#define KEY_INTL8 188
-#define KEY_INTL9 189
-#define KEY_LANG1 190
-#define KEY_LANG2 191
-#define KEY_LANG3 192
-#define KEY_LANG4 193
-#define KEY_LANG5 194
-#define KEY_LANG6 195
-#define KEY_LANG7 196
-#define KEY_LANG8 197
-#define KEY_LANG9 198
+#define KEY_F13 183
+#define KEY_F14 184
+#define KEY_F15 185
+#define KEY_F16 186
+#define KEY_F17 187
+#define KEY_F18 188
+#define KEY_F19 189
+#define KEY_F20 190
+#define KEY_F21 191
+#define KEY_F22 192
+#define KEY_F23 193
+#define KEY_F24 194

#define KEY_PLAYCD 200
#define KEY_PAUSECD 201

--
Vojtech Pavlik
SuSE Labs, SuSE CR

2004-01-14 19:43:52

by Vojtech Pavlik

[permalink] [raw]
Subject: Re: BUG: The key "/ ?" on my abtn2 keyboard is dead with kernel 2.6.1

On Wed, Jan 14, 2004 at 08:29:29PM +0100, Mariusz Zielinski wrote:

> Small adjustment:
>
> diff -Nru a/drivers/char/input.h b/drivers/char/input.h
> --- a/drivers/char/input.h 2004-01-14 20:23:03.000000000 +0100
> +++ b/drivers/char/input.h2 2004-01-14 20:22:37.000000000 +0100
> @@ -194,7 +194,7 @@
> #define KEY_102ND 86
> #define KEY_F11 87
> #define KEY_F12 88
> -#define KEY_ROMANJI 89
> +#define KEY_ROMAJI 89
> #define KEY_KATAKANA 90
> #define KEY_HIRAGANA 91
> #define KEY_HENKAN 92

Thanks, applied.

--
Vojtech Pavlik
SuSE Labs, SuSE CR

2004-01-14 19:32:33

by Mariusz Zielinski

[permalink] [raw]
Subject: Re: BUG: The key "/ ?" on my abtn2 keyboard is dead with kernel 2.6.1

Small adjustment:

diff -Nru a/drivers/char/input.h b/drivers/char/input.h
--- a/drivers/char/input.h 2004-01-14 20:23:03.000000000 +0100
+++ b/drivers/char/input.h2 2004-01-14 20:22:37.000000000 +0100
@@ -194,7 +194,7 @@
#define KEY_102ND 86
#define KEY_F11 87
#define KEY_F12 88
-#define KEY_ROMANJI 89
+#define KEY_ROMAJI 89
#define KEY_KATAKANA 90
#define KEY_HIRAGANA 91
#define KEY_HENKAN 92

--
Mariusz Zielinski

2004-01-14 20:01:33

by Andrew Morton

[permalink] [raw]
Subject: Re: BUG: The key "/ ?" on my abtn2 keyboard is dead with kernel 2.6.1

Vojtech Pavlik <[email protected]> wrote:
>
> Thus I propose this patch to make the 2.6 keycodes for Brazillian,
> Korean and Japanese keys compatible with 2.4.
>
>
> [email protected], 2004-01-14 19:17:00+01:00, [email protected]
> input: Move around Fxx and Japanese/Korean/Brazil keycode definitions
> to be compatible with 2.4.

This changes the table in drivers/char/keyboard.c in ways which conflict
with the below patch. It changes the same keycodes, but differently.

Should the below patch be dropped, or is further resolution needed?


From: OGAWA Hirofumi <[email protected]>

Vojtech Pavlik <[email protected]> writes:

> KEY_INTL2 182 /* Hiragana / Katakana */
> KEY_INTL3 183 /* Yen */
>
> These keycodes are translated back to the PS/2 scancodes in raw mode.

Sounds like 2.6.1 has the bug.

Currently does,

HIRAGANA INTL2(182) 7d
YEN INTL2(182) 7d

But, these should be

HIRAGANA INTL2(182) 70
YEN INTL3(183) 7d



---

25-akpm/drivers/char/keyboard.c | 2 +-
25-akpm/drivers/input/keyboard/atkbd.c | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)

diff -puN drivers/char/keyboard.c~keyboard-scancode-fix drivers/char/keyboard.c
--- 25/drivers/char/keyboard.c~keyboard-scancode-fix Tue Jan 13 09:55:54 2004
+++ 25-akpm/drivers/char/keyboard.c Tue Jan 13 09:55:54 2004
@@ -957,7 +957,7 @@ static unsigned short x86_keycodes[256]
360,261,262,263,298,376,100,101,321,316,373,286,289,102,351,355,
103,104,105,275,287,279,306,106,274,107,294,364,358,363,362,361,
291,108,381,281,290,272,292,305,280, 99,112,257,258,359,113,114,
- 264,117,271,374,379,115,125,273,121,123, 92,265,266,267,268,269,
+ 264,117,271,374,379,115,112,125,121,123, 92,265,266,267,268,269,
120,119,118,277,278,282,283,295,296,297,299,300,301,293,303,307,
308,310,313,314,315,317,318,319,320,357,322,323,324,325,276,330,
332,340,365,342,343,344,345,346,356,270,341,368,369,370,371,372 };
diff -puN drivers/input/keyboard/atkbd.c~keyboard-scancode-fix drivers/input/keyboard/atkbd.c
--- 25/drivers/input/keyboard/atkbd.c~keyboard-scancode-fix Tue Jan 13 09:55:54 2004
+++ 25-akpm/drivers/input/keyboard/atkbd.c Tue Jan 13 09:55:54 2004
@@ -61,7 +61,7 @@ static unsigned char atkbd_set2_keycode[
0, 49, 48, 35, 34, 21, 7, 89, 0, 0, 50, 36, 22, 8, 9, 90,
0, 51, 37, 23, 24, 11, 10, 0, 0, 52, 53, 38, 39, 25, 12, 0,
0,181, 40, 0, 26, 13, 0, 0, 58, 54, 28, 27, 0, 43, 0,194,
- 0, 86,193,192,184, 0, 14,185, 0, 79,182, 75, 71,124, 0, 0,
+ 0, 86,193,192,184, 0, 14,185, 0, 79,183, 75, 71,124, 0, 0,
82, 83, 80, 76, 77, 72, 1, 69, 87, 78, 81, 74, 55, 73, 70, 99,

0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,

_

2004-01-14 21:42:20

by Vojtech Pavlik

[permalink] [raw]
Subject: Re: BUG: The key "/ ?" on my abtn2 keyboard is dead with kernel 2.6.1

On Wed, Jan 14, 2004 at 12:01:36PM -0800, Andrew Morton wrote:
>
> Vojtech Pavlik <[email protected]> wrote:
> >
> > Thus I propose this patch to make the 2.6 keycodes for Brazillian,
> > Korean and Japanese keys compatible with 2.4.
> >
> >
> > [email protected], 2004-01-14 19:17:00+01:00, [email protected]
> > input: Move around Fxx and Japanese/Korean/Brazil keycode definitions
> > to be compatible with 2.4.
>
> This changes the table in drivers/char/keyboard.c in ways which conflict
> with the below patch. It changes the same keycodes, but differently.
>
> Should the below patch be dropped, or is further resolution needed?

The patch below needs to be redone. I'll do it.

> From: OGAWA Hirofumi <[email protected]>
>
> Vojtech Pavlik <[email protected]> writes:
>
> > KEY_INTL2 182 /* Hiragana / Katakana */
> > KEY_INTL3 183 /* Yen */
> >
> > These keycodes are translated back to the PS/2 scancodes in raw mode.
>
> Sounds like 2.6.1 has the bug.
>
> Currently does,
>
> HIRAGANA INTL2(182) 7d
> YEN INTL2(182) 7d
>
> But, these should be
>
> HIRAGANA INTL2(182) 70
> YEN INTL3(183) 7d
>
>
>
> ---
>
> 25-akpm/drivers/char/keyboard.c | 2 +-
> 25-akpm/drivers/input/keyboard/atkbd.c | 2 +-
> 2 files changed, 2 insertions(+), 2 deletions(-)
>
> diff -puN drivers/char/keyboard.c~keyboard-scancode-fix drivers/char/keyboard.c
> --- 25/drivers/char/keyboard.c~keyboard-scancode-fix Tue Jan 13 09:55:54 2004
> +++ 25-akpm/drivers/char/keyboard.c Tue Jan 13 09:55:54 2004
> @@ -957,7 +957,7 @@ static unsigned short x86_keycodes[256]
> 360,261,262,263,298,376,100,101,321,316,373,286,289,102,351,355,
> 103,104,105,275,287,279,306,106,274,107,294,364,358,363,362,361,
> 291,108,381,281,290,272,292,305,280, 99,112,257,258,359,113,114,
> - 264,117,271,374,379,115,125,273,121,123, 92,265,266,267,268,269,
> + 264,117,271,374,379,115,112,125,121,123, 92,265,266,267,268,269,
> 120,119,118,277,278,282,283,295,296,297,299,300,301,293,303,307,
> 308,310,313,314,315,317,318,319,320,357,322,323,324,325,276,330,
> 332,340,365,342,343,344,345,346,356,270,341,368,369,370,371,372 };
> diff -puN drivers/input/keyboard/atkbd.c~keyboard-scancode-fix drivers/input/keyboard/atkbd.c
> --- 25/drivers/input/keyboard/atkbd.c~keyboard-scancode-fix Tue Jan 13 09:55:54 2004
> +++ 25-akpm/drivers/input/keyboard/atkbd.c Tue Jan 13 09:55:54 2004
> @@ -61,7 +61,7 @@ static unsigned char atkbd_set2_keycode[
> 0, 49, 48, 35, 34, 21, 7, 89, 0, 0, 50, 36, 22, 8, 9, 90,
> 0, 51, 37, 23, 24, 11, 10, 0, 0, 52, 53, 38, 39, 25, 12, 0,
> 0,181, 40, 0, 26, 13, 0, 0, 58, 54, 28, 27, 0, 43, 0,194,
> - 0, 86,193,192,184, 0, 14,185, 0, 79,182, 75, 71,124, 0, 0,
> + 0, 86,193,192,184, 0, 14,185, 0, 79,183, 75, 71,124, 0, 0,
> 82, 83, 80, 76, 77, 72, 1, 69, 87, 78, 81, 74, 55, 73, 70, 99,
>
> 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
>
> _
>

--
Vojtech Pavlik
SuSE Labs, SuSE CR

2004-01-14 22:05:50

by Andrew Morton

[permalink] [raw]
Subject: Re: BUG: The key "/ ?" on my abtn2 keyboard is dead with kernel 2.6.1

Vojtech Pavlik <[email protected]> wrote:
>
> > Should the below patch be dropped, or is further resolution needed?
>
> The patch below needs to be redone. I'll do it.

OK. I'm also showing clashes with the below patch, so please incorporate
that too.


From: Vojtech Pavlik <[email protected]>

Fix emulation of PrintScreen key and 103rd Euro key for XFree86.



---

drivers/char/keyboard.c | 4 ++--
1 files changed, 2 insertions(+), 2 deletions(-)

diff -puN drivers/char/keyboard.c~input-print-screen-emulation-fix drivers/char/keyboard.c
--- 25/drivers/char/keyboard.c~input-print-screen-emulation-fix 2004-01-11 13:48:41.000000000 -0800
+++ 25-akpm/drivers/char/keyboard.c 2004-01-11 13:48:41.000000000 -0800
@@ -941,8 +941,8 @@ static unsigned short x86_keycodes[256]
32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47,
48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63,
64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79,
- 80, 81, 82, 83, 84, 93, 86, 87, 88, 94, 95, 85,259,375,260, 90,
- 284,285,309,311,312, 91,327,328,329,331,333,335,336,337,338,339,
+ 80, 81, 82, 83, 43, 93, 86, 87, 88, 94, 95, 85,259,375,260, 90,
+ 284,285,309,298,312, 91,327,328,329,331,333,335,336,337,338,339,
367,288,302,304,350, 89,334,326,116,377,109,111,126,347,348,349,
360,261,262,263,298,376,100,101,321,316,373,286,289,102,351,355,
103,104,105,275,287,279,306,106,274,107,294,364,358,363,362,361,

_

2004-01-14 22:14:09

by Vojtech Pavlik

[permalink] [raw]
Subject: Re: BUG: The key "/ ?" on my abtn2 keyboard is dead with kernel 2.6.1

On Wed, Jan 14, 2004 at 02:06:57PM -0800, Andrew Morton wrote:

> Vojtech Pavlik <[email protected]> wrote:
> >
> > > Should the below patch be dropped, or is further resolution needed?
> >
> > The patch below needs to be redone. I'll do it.
>
> OK. I'm also showing clashes with the below patch, so please incorporate
> that too.

That one is already incorporated.

> From: Vojtech Pavlik <[email protected]>
>
> Fix emulation of PrintScreen key and 103rd Euro key for XFree86.
>
>
>
> ---
>
> drivers/char/keyboard.c | 4 ++--
> 1 files changed, 2 insertions(+), 2 deletions(-)
>
> diff -puN drivers/char/keyboard.c~input-print-screen-emulation-fix drivers/char/keyboard.c
> --- 25/drivers/char/keyboard.c~input-print-screen-emulation-fix 2004-01-11 13:48:41.000000000 -0800
> +++ 25-akpm/drivers/char/keyboard.c 2004-01-11 13:48:41.000000000 -0800
> @@ -941,8 +941,8 @@ static unsigned short x86_keycodes[256]
> 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47,
> 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63,
> 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79,
> - 80, 81, 82, 83, 84, 93, 86, 87, 88, 94, 95, 85,259,375,260, 90,
> - 284,285,309,311,312, 91,327,328,329,331,333,335,336,337,338,339,
> + 80, 81, 82, 83, 43, 93, 86, 87, 88, 94, 95, 85,259,375,260, 90,
> + 284,285,309,298,312, 91,327,328,329,331,333,335,336,337,338,339,
> 367,288,302,304,350, 89,334,326,116,377,109,111,126,347,348,349,
> 360,261,262,263,298,376,100,101,321,316,373,286,289,102,351,355,
> 103,104,105,275,287,279,306,106,274,107,294,364,358,363,362,361,
>
> _
>

--
Vojtech Pavlik
SuSE Labs, SuSE CR

2004-01-19 11:05:58

by Go Taniguchi

[permalink] [raw]
Subject: Re: BUG: The key "/ ?" on my abtn2 keyboard is dead with kernel 2.6.1

Hi,

Vojtech Pavlik wrote:
> On Wed, Jan 14, 2004 at 03:24:45PM +0100, Vojtech Pavlik wrote:
> Thus I propose this patch to make the 2.6 keycodes for Brazillian,
> Korean and Japanese keys compatible with 2.4.

It was able to be used with Japanese PS2/USB JP106 perfectly.
Of course, Japanese input method and print-screen key could work too.

Thanks!

>
>
> [email protected], 2004-01-14 19:17:00+01:00, [email protected]
> input: Move around Fxx and Japanese/Korean/Brazil keycode definitions
> to be compatible with 2.4.
>
>
> drivers/char/keyboard.c | 8 ++---
> drivers/input/keyboard/98kbd.c | 6 +--
> drivers/input/keyboard/atkbd.c | 14 ++++-----
> drivers/input/keyboard/maple_keyb.c | 8 ++---
> drivers/macintosh/adbhid.c | 4 +-
> drivers/usb/input/hid-input.c | 8 ++---
> drivers/usb/input/usbkbd.c | 8 ++---
> include/linux/input.h | 56 ++++++++++++++++--------------------
> 8 files changed, 53 insertions(+), 59 deletions(-)
>
>
> diff -Nru a/drivers/char/keyboard.c b/drivers/char/keyboard.c
> --- a/drivers/char/keyboard.c Wed Jan 14 19:19:46 2004
> +++ b/drivers/char/keyboard.c Wed Jan 14 19:19:46 2004
> @@ -941,14 +941,14 @@
> 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47,
> 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63,
> 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79,
> - 80, 81, 82, 83, 84, 93, 86, 87, 88, 94, 95, 85,259,375,260, 90,
> + 80, 81, 82, 83, 84,273, 86, 87, 88,121,123, 92,265,266,267,268,
> 284,285,309,311,312, 91,327,328,329,331,333,335,336,337,338,339,
> - 367,288,302,304,350, 89,334,326,116,377,109,111,126,347,348,349,
> + 367,288,302,304,350, 89,334,326,269,120,119,118,377,347,348,349,
> 360,261,262,263,298,376,100,101,321,316,373,286,289,102,351,355,
> 103,104,105,275,287,279,306,106,274,107,294,364,358,363,362,361,
> 291,108,381,281,290,272,292,305,280, 99,112,257,258,359,113,114,
> - 264,117,271,374,379,115,125,273,121,123, 92,265,266,267,268,269,
> - 120,119,118,277,278,282,283,295,296,297,299,300,301,293,303,307,
> + 264,117,271,374,379, 94,375,126,259,260, 90,115,125,116,109,111,
> + 95, 85, 93,277,278,282,283,295,296,297,299,300,301,293,303,307,
> 308,310,313,314,315,317,318,319,320,357,322,323,324,325,276,330,
> 332,340,365,342,343,344,345,346,356,270,341,368,369,370,371,372 };
>
> diff -Nru a/drivers/input/keyboard/98kbd.c b/drivers/input/keyboard/98kbd.c
> --- a/drivers/input/keyboard/98kbd.c Wed Jan 14 19:19:46 2004
> +++ b/drivers/input/keyboard/98kbd.c Wed Jan 14 19:19:46 2004
> @@ -47,9 +47,9 @@
> 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 43, 14, 15,
> 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 41, 26, 28, 30, 31, 32,
> 33, 34, 35, 36, 37, 38, 39, 40, 27, 44, 45, 46, 47, 48, 49, 50,
> - 51, 52, 53, 12, 57,184,109,104,110,111,103,105,106,108,102,107,
> - 74, 98, 71, 72, 73, 55, 75, 76, 77, 78, 79, 80, 81,117, 82,124,
> - 83,185, 87, 88, 85, 89, 90, 0, 0, 0, 0, 0, 0, 0,102, 0,
> + 51, 52, 53, 12, 57, 92,109,104,110,111,103,105,106,108,102,107,
> + 74, 98, 71, 72, 73, 55, 75, 76, 77, 78, 79, 80, 81,117, 82,121,
> + 83, 94, 87, 88,183,184,185, 0, 0, 0, 0, 0, 0, 0,102, 0,
> 99,133, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 0, 0, 0, 0,
> 54, 58, 42, 56, 29
> };
> diff -Nru a/drivers/input/keyboard/atkbd.c b/drivers/input/keyboard/atkbd.c
> --- a/drivers/input/keyboard/atkbd.c Wed Jan 14 19:19:46 2004
> +++ b/drivers/input/keyboard/atkbd.c Wed Jan 14 19:19:46 2004
> @@ -50,12 +50,12 @@
> static unsigned char atkbd_set2_keycode[512] = {
>
> 0, 67, 65, 63, 61, 59, 60, 88, 0, 68, 66, 64, 62, 15, 41,117,
> - 0, 56, 42,182, 29, 16, 2, 0, 0, 0, 44, 31, 30, 17, 3, 0,
> - 0, 46, 45, 32, 18, 5, 4,186, 0, 57, 47, 33, 20, 19, 6, 85,
> - 0, 49, 48, 35, 34, 21, 7, 89, 0, 0, 50, 36, 22, 8, 9, 90,
> + 0, 56, 42, 93, 29, 16, 2, 0, 0, 0, 44, 31, 30, 17, 3, 0,
> + 0, 46, 45, 32, 18, 5, 4, 95, 0, 57, 47, 33, 20, 19, 6,183,
> + 0, 49, 48, 35, 34, 21, 7,184, 0, 0, 50, 36, 22, 8, 9,185,
> 0, 51, 37, 23, 24, 11, 10, 0, 0, 52, 53, 38, 39, 25, 12, 0,
> - 0,181, 40, 0, 26, 13, 0, 0, 58, 54, 28, 27, 0, 43, 0,194,
> - 0, 86,193,192,184, 0, 14,185, 0, 79,182, 75, 71,124, 0, 0,
> + 0, 89, 40, 0, 26, 13, 0, 0, 58, 54, 28, 27, 0, 43, 0, 85,
> + 0, 86, 91, 90, 92, 0, 14, 94, 0, 79, 93, 75, 71,121, 0, 0,
> 82, 83, 80, 76, 77, 72, 1, 69, 87, 78, 81, 74, 55, 73, 70, 99,
>
> 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
> @@ -79,9 +79,9 @@
> 125, 51, 37, 23, 24, 11, 10, 67,126, 52, 53, 38, 39, 25, 12, 68,
> 113,114, 40, 84, 26, 13, 87, 99, 97, 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,
> + 82, 83, 80, 76, 77, 72, 69, 98, 0, 96, 81, 0, 78, 73, 55,183,
>
> - 89, 90, 91, 92, 74,185,184,182, 0, 0, 0,125,126,127,112, 0,
> + 184,185,186,187, 74, 94, 92, 93, 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
> };
> diff -Nru a/drivers/input/keyboard/maple_keyb.c b/drivers/input/keyboard/maple_keyb.c
> --- a/drivers/input/keyboard/maple_keyb.c Wed Jan 14 19:19:46 2004
> +++ b/drivers/input/keyboard/maple_keyb.c Wed Jan 14 19:19:46 2004
> @@ -22,10 +22,10 @@
> 27, 43, 84, 39, 40, 41, 51, 52, 53, 58, 59, 60, 61, 62, 63, 64,
> 65, 66, 67, 68, 87, 88, 99, 70,119,110,102,104,111,107,109,106,
> 105,108,103, 69, 98, 55, 74, 78, 96, 79, 80, 81, 75, 76, 77, 71,
> - 72, 73, 82, 83, 86,127,116,117, 85, 89, 90, 91, 92, 93, 94, 95,
> - 120,121,122,123,134,138,130,132,128,129,131,137,133,135,136,113,
> - 115,114, 0, 0, 0,124, 0,181,182,183,184,185,186,187,188,189,
> - 190,191,192,193,194,195,196,197,198, 0, 0, 0, 0, 0, 0, 0,
> + 72, 73, 82, 83, 86,127,116,117,183,184,185,186,187,188,189,190,
> + 191,192,193,194,134,138,130,132,128,129,131,137,133,135,136,113,
> + 115,114, 0, 0, 0,121, 0, 89, 93,124, 92, 94, 95, 0, 0, 0,
> + 122,123, 90, 91, 85, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
> 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
> 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
> 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
> diff -Nru a/drivers/macintosh/adbhid.c b/drivers/macintosh/adbhid.c
> --- a/drivers/macintosh/adbhid.c Wed Jan 14 19:19:46 2004
> +++ b/drivers/macintosh/adbhid.c Wed Jan 14 19:19:46 2004
> @@ -69,8 +69,8 @@
> 22, 26, 23, 25, 28, 38, 36, 40, 37, 39, 43, 51, 53, 49, 50, 52,
> 15, 57, 41, 14, 96, 1, 29,125, 42, 58, 56,105,106,108,103, 0,
> 0, 83, 0, 55, 0, 78, 0, 69, 0, 0, 0, 98, 96, 0, 74, 0,
> - 0,117, 82, 79, 80, 81, 75, 76, 77, 71, 0, 72, 73,183,181,124,
> - 63, 64, 65, 61, 66, 67,191, 87,190, 99, 0, 70, 0, 68,101, 88,
> + 0,117, 82, 79, 80, 81, 75, 76, 77, 71, 0, 72, 73,124, 89,121,
> + 63, 64, 65, 61, 66, 67,123, 87,122, 99, 0, 70, 0, 68,101, 88,
> 0,119,110,102,104,111, 62,107, 60,109, 59, 54,100, 97,126,116
> };
>
> diff -Nru a/drivers/usb/input/hid-input.c b/drivers/usb/input/hid-input.c
> --- a/drivers/usb/input/hid-input.c Wed Jan 14 19:19:46 2004
> +++ b/drivers/usb/input/hid-input.c Wed Jan 14 19:19:46 2004
> @@ -43,10 +43,10 @@
> 27, 43, 84, 39, 40, 41, 51, 52, 53, 58, 59, 60, 61, 62, 63, 64,
> 65, 66, 67, 68, 87, 88, 99, 70,119,110,102,104,111,107,109,106,
> 105,108,103, 69, 98, 55, 74, 78, 96, 79, 80, 81, 75, 76, 77, 71,
> - 72, 73, 82, 83, 86,127,116,117, 85, 89, 90, 91, 92, 93, 94, 95,
> - 120,121,122,123,134,138,130,132,128,129,131,137,133,135,136,113,
> - 115,114,unk,unk,unk,124,unk,181,182,183,184,185,186,187,188,189,
> - 190,191,192,193,194,195,196,197,198,unk,unk,unk,unk,unk,unk,unk,
> + 72, 73, 82, 83, 86,127,116,117,183,184,185,186,187,188,189,190,
> + 191,192,193,194,134,138,130,132,128,129,131,137,133,135,136,113,
> + 115,114,unk,unk,unk,121,unk, 89, 93,124, 92, 94, 95,unk,unk,unk,
> + 122,123, 90, 91, 85,unk,unk,unk,unk,unk,unk,unk,unk,unk,unk,unk,
> unk,unk,unk,unk,unk,unk,unk,unk,unk,unk,unk,unk,unk,unk,unk,unk,
> unk,unk,unk,unk,unk,unk,unk,unk,unk,unk,unk,unk,unk,unk,unk,unk,
> unk,unk,unk,unk,unk,unk,unk,unk,unk,unk,unk,unk,unk,unk,unk,unk,
> diff -Nru a/drivers/usb/input/usbkbd.c b/drivers/usb/input/usbkbd.c
> --- a/drivers/usb/input/usbkbd.c Wed Jan 14 19:19:46 2004
> +++ b/drivers/usb/input/usbkbd.c Wed Jan 14 19:19:46 2004
> @@ -52,10 +52,10 @@
> 27, 43, 84, 39, 40, 41, 51, 52, 53, 58, 59, 60, 61, 62, 63, 64,
> 65, 66, 67, 68, 87, 88, 99, 70,119,110,102,104,111,107,109,106,
> 105,108,103, 69, 98, 55, 74, 78, 96, 79, 80, 81, 75, 76, 77, 71,
> - 72, 73, 82, 83, 86,127,116,117, 85, 89, 90, 91, 92, 93, 94, 95,
> - 120,121,122,123,134,138,130,132,128,129,131,137,133,135,136,113,
> - 115,114, 0, 0, 0,124, 0,181,182,183,184,185,186,187,188,189,
> - 190,191,192,193,194,195,196,197,198, 0, 0, 0, 0, 0, 0, 0,
> + 72, 73, 82, 83, 86,127,116,117,183,184,185,186,187,188,189,190,
> + 191,192,193,194,134,138,130,132,128,129,131,137,133,135,136,113,
> + 115,114, 0, 0, 0,121, 0, 89, 93,124, 92, 94, 95, 0, 0, 0,
> + 122,123, 90, 91, 85, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
> 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
> 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
> 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
> diff -Nru a/include/linux/input.h b/include/linux/input.h
> --- a/include/linux/input.h Wed Jan 14 19:19:46 2004
> +++ b/include/linux/input.h Wed Jan 14 19:19:46 2004
> @@ -190,17 +190,17 @@
> #define KEY_KP0 82
> #define KEY_KPDOT 83
> #define KEY_103RD 84
> -#define KEY_F13 85
> +#define KEY_ZENKAKUHANKAKU 85
> #define KEY_102ND 86
> #define KEY_F11 87
> #define KEY_F12 88
> -#define KEY_F14 89
> -#define KEY_F15 90
> -#define KEY_F16 91
> -#define KEY_F17 92
> -#define KEY_F18 93
> -#define KEY_F19 94
> -#define KEY_F20 95
> +#define KEY_ROMANJI 89
> +#define KEY_KATAKANA 90
> +#define KEY_HIRAGANA 91
> +#define KEY_HENKAN 92
> +#define KEY_KATAKANAHIRAGANA 93
> +#define KEY_MUHENKAN 94
> +#define KEY_KPJPCOMMA 95
> #define KEY_KPENTER 96
> #define KEY_RIGHTCTRL 97
> #define KEY_KPSLASH 98
> @@ -225,11 +225,11 @@
> #define KEY_KPEQUAL 117
> #define KEY_KPPLUSMINUS 118
> #define KEY_PAUSE 119
> -#define KEY_F21 120
> -#define KEY_F22 121
> -#define KEY_F23 122
> -#define KEY_F24 123
> -#define KEY_KPCOMMA 124
> +
> +#define KEY_KPCOMMA 121
> +#define KEY_HANGUEL 122
> +#define KEY_HANJA 123
> +#define KEY_YEN 124
> #define KEY_LEFTMETA 125
> #define KEY_RIGHTMETA 126
> #define KEY_COMPOSE 127
> @@ -288,24 +288,18 @@
> #define KEY_KPLEFTPAREN 179
> #define KEY_KPRIGHTPAREN 180
>
> -#define KEY_INTL1 181
> -#define KEY_INTL2 182
> -#define KEY_INTL3 183
> -#define KEY_INTL4 184
> -#define KEY_INTL5 185
> -#define KEY_INTL6 186
> -#define KEY_INTL7 187
> -#define KEY_INTL8 188
> -#define KEY_INTL9 189
> -#define KEY_LANG1 190
> -#define KEY_LANG2 191
> -#define KEY_LANG3 192
> -#define KEY_LANG4 193
> -#define KEY_LANG5 194
> -#define KEY_LANG6 195
> -#define KEY_LANG7 196
> -#define KEY_LANG8 197
> -#define KEY_LANG9 198
> +#define KEY_F13 183
> +#define KEY_F14 184
> +#define KEY_F15 185
> +#define KEY_F16 186
> +#define KEY_F17 187
> +#define KEY_F18 188
> +#define KEY_F19 189
> +#define KEY_F20 190
> +#define KEY_F21 191
> +#define KEY_F22 192
> +#define KEY_F23 193
> +#define KEY_F24 194
>
> #define KEY_PLAYCD 200
> #define KEY_PAUSECD 201
>