On Thursday 30 July 2015 16:17:23 Hans de Goede wrote: > Hi, > > On 28-07-15 01:38, Douglas Christman wrote: > >On Mon, Jul 27, 2015 at 12:40 PM, Hans de Goede <hdegoede@xxxxxxxxxx> wrote: > >> > >>OK, please let me know soon, I would like to get to the bottom > >>of this, and knowing the exact commit causing the problem will > >>help a lot. > >> > >>Regards, > >> > >>hans > > > >I've verified that reverting 92bac83d on a clean v4.1 kernel > >(b953c0d2) resolves the issue. > > Thanks, > > Can you please apply the attached patch on a clean v4.1 kernel, > and confirm that that fixes this ? > > Regards, > > Hans > From ee3d5d5a298b178ae5284b9766ca849665a37670 Mon Sep 17 00:00:00 2001 > From: Hans de Goede <hdegoede@xxxxxxxxxx> > Date: Thu, 30 Jul 2015 15:49:16 +0200 > Subject: [PATCH] alps: Only Dell laptops have separate button bits for v2 > dualpoint sticks > > It turns out that only Dell laptops have the separate button bits for > v2 dualpoint sticks and that commit 92bac83dd79e ("Input: alps - non > interleaved V2 dualpoint has separate stick button bits") causes > regressions on Toshiba laptops. > > This commit adds a check for Dell laptops to the code for handling these > extra button bits, fixing this regression. > > This patch has been tested on a Dell Latitude D620 to make sure that it > does not reintroduce the original problem. > > Reported-by: Douglas Christman <douglaschristman@xxxxxxxxx> > Cc: stable@xxxxxxxxxxxxxxx > Signed-off-by: Hans de Goede <hdegoede@xxxxxxxxxx> > --- > drivers/input/mouse/alps.c | 6 ++++-- > 1 file changed, 4 insertions(+), 2 deletions(-) > > diff --git a/drivers/input/mouse/alps.c b/drivers/input/mouse/alps.c > index 113d6f1..889aec1 100644 > --- a/drivers/input/mouse/alps.c > +++ b/drivers/input/mouse/alps.c > @@ -20,6 +20,7 @@ > #include <linux/input/mt.h> > #include <linux/serio.h> > #include <linux/libps2.h> > +#include <linux/dmi.h> > > #include "psmouse.h" > #include "alps.h" > @@ -251,8 +252,9 @@ static void alps_process_packet_v1_v2(struct psmouse *psmouse) > return; > } > > - /* Non interleaved V2 dualpoint has separate stick button bits */ > - if (priv->proto_version == ALPS_PROTO_V2 && > + /* Dell non interleaved V2 dualpoint has separate stick button bits */ > + if (dmi_name_in_vendors("Dell") && > + priv->proto_version == ALPS_PROTO_V2 && > priv->flags == (ALPS_PASS | ALPS_DUALPOINT)) { > left |= packet[0] & 1; > right |= packet[0] & 2; What about introducing new flag ALPS_<something> instead calling dmi_name_in_vendors() function every time when we need to process packet? -- Pali Rohár pali.rohar@xxxxxxxxx -- 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