Input: ALPS - add interleaved protocol support (Dell E6x00 series)
commit3454b339ede358e99d1b96d4295d6e5952d65bb2
authorSebastian Kapfer <sebastian_kapfer@gmx.net>
Fri, 15 Jan 2010 18:11:22 +0000 (15 10:11 -0800)
committerGreg Kroah-Hartman <gregkh@suse.de>
Thu, 1 Apr 2010 22:55:40 +0000 (1 15:55 -0700)
tree3b54ed24c9da43e3962bb6fefdea197d5829562d
parent120f90d1e9fda2948117e93eefc5caa6a6209b3c
Input: ALPS - add interleaved protocol support (Dell E6x00 series)

commit 1d9f26262aef6d63ff65eba0fd5f1583f342b69b upstream

Properly handle version of the protocol where standard PS/2 packets
from trackpoint are stuffed into middle (byte 3-6) of the standard
ALPS packets when both the touchpad and trackpoint are used together.

The patch is based on work done by Matthew Chapman and additional
research done by David Kubicek and Erik Osterholm:

https://bugs.launchpad.net/ubuntu/+source/linux/+bug/296610

Many thanks to David Kubicek for his efforts in researching fine points
of this new version of the protocol, especially interaction between pad
and stick in these models.

Cc: Andy Isaacson <adi@hexapodia.org>
Signed-off-by: Sebastian Kapfer <sebastian_kapfer@gmx.net>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
drivers/input/mouse/alps.c
drivers/input/mouse/alps.h