Re: BUG FIX: atkbd.c keyboard driver bug [Was: keyboard problem with 2.6.6]
From: Sau Dan Lee
Date: Tue Jun 01 2004 - 05:04:04 EST
>>>>> "Vojtech" == Vojtech Pavlik <vojtech@xxxxxxx> writes:
>> Isn't the keyboard driver supposed to iron out such
>> differences?
Vojtech> The atkbd.c driver does exactly that. It hides the fact
Vojtech> that there is a special scancode for the PrintScreen key,
Vojtech> if you press it together with some other keys.
No, it doesn't do that. I press PrintScreen (without Alt) and it
tells the input system that it is a KEY_SYSRQ.
Vojtech> It's a hack by IBM engineers, the PC/XT keyboard had a
Vojtech> SysRq key, the PC/AT keyboard did not, yet some old DOS
Vojtech> programs needed it, so they made the AT keyboard generate
Vojtech> the keycode for alt-sysrq when running in XT
Vojtech> compatibility mode.
It's a simple SysRq (0x54), not Alt-SysRq (0x38 0x54) in my notebook.
Vojtech> Unfortunately, the XT compatibility mode stuck, and
Vojtech> that's what we're using now.
I know this part of the history, and hence why PrintScreen is emulated
by Alt-KPAsterisk.
Vojtech> The kernel works with real keys. There is no real sysrq
Vojtech> key.
On my notebook, there IS a real SysRq. (The [Fn] part is not visible
to the kernel. So, that's irrelevant.)
Vojtech> Ok, it's probably a bad name for it, it should have been
Vojtech> named KEY_PRTSCR, but it wasn't, and it'd only cause
Vojtech> breakage now to change it.
Deprecate the old one.
Vojtech> and is used for the PrtScr/SysRq key.
>> So, why not have seperate keycodes for the two?
Vojtech> Because there is only one key.
On some keyboards (e.g. my notebook), they're separate. Is that
enough a reason to have 2 different keycodes, then?
--
Sau Dan LEE ???(Big5) ~{@nJX6X~}(HZ)
E-mail: danlee@xxxxxxxxxxxxxxxxxxxxxxxxxx
Home page: http://www.informatik.uni-freiburg.de/~danlee
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/