Re: [PATCH] Fix ALPS sync loss

From: Joseph Pingenot
Date: Wed Feb 09 2005 - 12:37:13 EST


>From Dmitry Torokhov on Tuesday, 08 February, 2005:
>Hi,
>Here is the promised patch. It turns out protocol validation code was
>a bit (or rather a byte ;) ) off.
>Please let me know if it fixes your touchpad and I believe it would be
>nice to have it in 2.6.11.

This patch seems to be working for me too. Thanks a million, Dmitry!
I owe you a beer some time. :)

-Joseph

>===================================================================
>ChangeSet@xxxxxx, 2005-02-08 18:12:06-05:00, dtor_core@xxxxxxxxxxxxx
> Input: alps - fix protocol validation rules causing touchpad
> to lose sync if an absolute packet is received after
> a relative packet with negative Y displacement.
>
> Signed-off-by: Dmitry Torokhov <dtor@xxxxxxx>
> alps.c | 4 ++--
> 1 files changed, 2 insertions(+), 2 deletions(-)
>===================================================================
>diff -Nru a/drivers/input/mouse/alps.c b/drivers/input/mouse/alps.c
>--- a/drivers/input/mouse/alps.c 2005-02-08 18:16:27 -05:00
>+++ b/drivers/input/mouse/alps.c 2005-02-08 18:16:27 -05:00
>@@ -198,8 +198,8 @@
> return PSMOUSE_BAD_DATA;
>
> /* Bytes 2 - 6 should have 0 in the highest bit */
>- if (psmouse->pktcnt > 1 && psmouse->pktcnt <= 6 &&
>- (psmouse->packet[psmouse->pktcnt] & 0x80))
>+ if (psmouse->pktcnt >= 2 && psmouse->pktcnt <= 6 &&
>+ (psmouse->packet[psmouse->pktcnt - 1] & 0x80))
> return PSMOUSE_BAD_DATA;
>
> if (psmouse->pktcnt == 6) {

--
Joseph===============================================trelane@xxxxxxxxxxxxxx
Graduate Student in Physics, Freelance Free Software Developer
-
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/