[patch] Input - Fix LAlt-RAlt and similar combinations in atkbd.c [19/23]

From: Vojtech Pavlik (vojtech@suse.cz)
Date: Tue Oct 08 2002 - 09:00:01 EST


You can import this changeset into BK by piping this whole message to:
'| bk receive [path to repository]' or apply the patch as usual.
'bk pull bk://linux-input.bkbits.net/linux-input' should work as well.

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

ChangeSet@1.573.1.53, 2002-10-07 14:29:57+02:00, vojtech@suse.cz
  Fix LAlt-RAlt combination on AT keyboards (generated "unknown scancode" message).

 i8042.c | 8 ++++----
 1 files changed, 4 insertions(+), 4 deletions(-)

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

diff -Nru a/drivers/input/serio/i8042.c b/drivers/input/serio/i8042.c
--- a/drivers/input/serio/i8042.c Tue Oct 8 15:25:31 2002
+++ b/drivers/input/serio/i8042.c Tue Oct 8 15:25:31 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];
                 }
 

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

This BitKeeper patch contains the following changesets:
1.573.1.53
## Wrapped with gzip_uu ##

begin 664 bkpatch17951
M'XL(`,O<HCT``[64;6_3,!#'7\>?XK1)J-5H8CM/;5G1'AD3$YNZ[15"E>M<
MF]#6F6)G[2`?'C<911HPM,$2RXD3YW__N_LIVW"ML>@[M_D7@S(EV_`^UZ;O
MZ%*C*[_:]3#/[=I+\P5Z][N\\<S+U$UIB'U_(8Q,X18+W7>8ZV^>F+L;[#O#
MXY/KL_TA(8,!'*9"3?$2#0P&Q.3%K9@G>D^8=)XKUQ1"Z04:X<I\46VV5IQ2
M;L^0Q3X-HXI%-(@KR1+&1,`PH3SH1@$1"1:H9;HWT:XI%VZ"#R08I3'M,9_3
MB@=1-R1'P-PP]ET[^T"YQZA'8V!!G_?Z8;Q#>9]2N,]W[[X:L,.@0\D!_%_S
MAT3"NVP%9_MSTQG:":S*.%/"9+D"._:O8(9WXUP4B8;6%!46PF`"6Z6:J7RI
M0$NA9)[@%BQ0:S'%MDL^@$VT%Y*+GW4GG2<>A%!!R=M-'<PRFV?3U+BE7-IZ
M5$F1K1O?P.!9D++<R[HTX*YL<H^ISW@8L:CR;0MX%=-UVH))I`&;T.1AA?^J
MN.XCX[P7\HKWNEU:@_7(1VO47LP]>89[QKH!8[&EL.<'-84L_(4__B?^`N@$
M+\+?E9@AF!0!*=P4.+$X9LKD(*3,2V5@F:(">[,.-+=@JBG@RJ!*+(:635WS
M5C?D'#K%LAZ6GXO'>O,,'(^B"!@YK6=MK`]I3>ELJJP-6X@IU-*C4JVL21QI
M1/7)=A`\.#B]NAQ='`]'9^<?3SZ_(4<!HVNIYN(X3C:!ED%M1D(E(SE'48S&
MF6FU$F$$O`*ZBB=MJ*#51)@+N]/6:G<7XO;KWX1MM^';.HC?!/&;((ZCT?R;
G;FT];E3C1O6'9BWY)*G-WUJF*&>Z7`SB\3@<,Z3D.TE1K!X:!@``
`
end
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Tue Oct 15 2002 - 22:00:25 EST