On Sun, Nov 02, 2014 at 12:25:08AM +0100, Pali Rohár wrote: > On some Dell Latitude laptops ALPS device or Dell EC send one invalid byte in > 6 bytes ALPS packet. In this case psmouse driver enter out of sync state. It > looks like that all other bytes in packets are valid and also device working > properly. So there is no need to do full device reset, just need to wait > for byte which match condition for first byte (start of packet). Because ALPS > packets are bigger (6 or 8 bytes) default limit is small. > > This patch increase number of invalid bytes to size of 2 ALPS packets which > psmouse driver can drop before do full reset. > > Resetting ALPS devices take some time and when doing reset on some Dell laptops > touchpad, trackstick and also keyboard do not respond. So it is better to do it > only if really necessary. > > Signed-off-by: Pali Rohár <pali.rohar@xxxxxxxxx> > Tested-by: Pali Rohár <pali.rohar@xxxxxxxxx> > Cc: stable@xxxxxxxxxxxxxxx Applied, thank you. > --- > drivers/input/mouse/alps.c | 3 +++ > 1 file changed, 3 insertions(+) > > diff --git a/drivers/input/mouse/alps.c b/drivers/input/mouse/alps.c > index a772745..7c47e97 100644 > --- a/drivers/input/mouse/alps.c > +++ b/drivers/input/mouse/alps.c > @@ -2391,6 +2391,9 @@ int alps_init(struct psmouse *psmouse) > /* We are having trouble resyncing ALPS touchpads so disable it for now */ > psmouse->resync_time = 0; > > + /* Allow 2 invalid packets without resetting device */ > + psmouse->resetafter = psmouse->pktsize * 2; > + > return 0; > > init_fail: > -- > 1.7.9.5 > -- Dmitry -- To unsubscribe from this list: send the line "unsubscribe linux-input" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html