[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <200703072314.25316.dtor@insightbb.com>
Date: Wed, 7 Mar 2007 23:14:24 -0500
From: Dmitry Torokhov <dtor@...ightbb.com>
To: Ash Milsted <thatistosayiseenem@...ab.com>
Cc: linux-kernel@...r.kernel.org, linux-acpi@...r.kernel.org,
torvalds@...ux-foundation.org
Subject: Re: 2.6.21-rc2 regression vs. 2.6.20: AT keyboard only works with pci=noacpi
On Wednesday 07 March 2007 16:50, Dmitry Torokhov wrote:
> On 3/7/07, Ash Milsted <thatistosayiseenem@...ab.com> wrote:
> >
> > So, I tracked this down to 2.6.21-git7, the first snapshot that gives me
> > this problem. Tellingly it does contain an input tree merge. I would git bisect
> > but I don't have a local copy of the tree - I tried to get one, but it stopped
> > halfway through the clone, probably because I had to use http... So, I hope that
> > helps.
> >
>
> Hm, that is strange... 2.6.20-rc7 has i8042 AUX IRQ delivery test fix
> and fix for panic blink, both shoudl not really affect your keyboard.
> Can I please get full dmesg of boot with "i8042.debug
> log_buf_len=131072"?
>
Argh, I can't believe I forgot to get this into my tree. Could you please
tell me if the patch below fixes ytour issue?
--
Dmitry
Input: i8042 - another attempt to fix AUX delivery checks
Do not assume that AUX_LOOP command is broken unless it
completes successfully but returns wrong (unexpected) data.
Signed-off-by: Dmitry Torokhov <dtor@...l.ru>
---
drivers/input/serio/i8042.c | 10 ++++++++--
1 file changed, 8 insertions(+), 2 deletions(-)
Index: linux/drivers/input/serio/i8042.c
===================================================================
--- linux.orig/drivers/input/serio/i8042.c
+++ linux/drivers/input/serio/i8042.c
@@ -553,7 +553,8 @@ static int __devinit i8042_check_aux(voi
*/
param = 0x5a;
- if (i8042_command(¶m, I8042_CMD_AUX_LOOP) || param != 0x5a) {
+ retval = i8042_command(¶m, I8042_CMD_AUX_LOOP);
+ if (retval || param != 0x5a) {
/*
* External connection test - filters out AT-soldered PS/2 i8042's
@@ -567,7 +568,12 @@ static int __devinit i8042_check_aux(voi
(param && param != 0xfa && param != 0xff))
return -1;
- aux_loop_broken = 1;
+/*
+ * If AUX_LOOP completed without error but returned unexpected data
+ * mark it as broken
+ */
+ if (!retval)
+ aux_loop_broken = 1;
}
/*
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists