From 79b8787e3b3ee7d333e9b7eb7f49cfb92a9d0ffd Mon Sep 17 00:00:00 2001 From: "Andries E. Brouwer" Date: Sat, 6 Sep 2003 00:38:43 -0700 Subject: [PATCH] [PATCH] more keyboard stuff I looked a bit more at the keyboard code and find a bug and a probable bug. (i) In case a synaptics touchpad has been detected, the comment says "disable AUX". But we do not set the disable bit, but instead .and. with the bit - no doubt getting zero. This must be a bug. (ii) Directly above this is the suspicious comment "keyboard translation seems to be always off". But every machine comes always up in translated scancode 2. Translation is never off. But wait! by mistake the above .and. cleared the XLATE bit. So, I think bug (i) explains mystery (ii). However, note that this is code reading only. I do not have the hardware, so cannot test. --- drivers/input/serio/i8042.c | 8 +------- 1 file changed, 1 insertion(+), 7 deletions(-) diff --git a/drivers/input/serio/i8042.c b/drivers/input/serio/i8042.c index c7e6774242c34..5111c74c9bc29 100644 --- a/drivers/input/serio/i8042.c +++ b/drivers/input/serio/i8042.c @@ -619,17 +619,11 @@ static int __init i8042_check_mux(struct i8042_values *values) printk(KERN_INFO "i8042.c: Detected active multiplexing controller, rev %d.%d.\n", (~param >> 4) & 0xf, ~param & 0xf); -/* - * In MUX mode the keyboard translation seems to be always off. - */ - - i8042_direct = 1; - /* * Disable all muxed ports by disabling AUX. */ - i8042_ctr &= I8042_CTR_AUXDIS; + i8042_ctr |= I8042_CTR_AUXDIS; i8042_ctr &= ~I8042_CTR_AUXINT; if (i8042_command(&i8042_ctr, I8042_CMD_CTL_WCTR)) -- 2.53.0