Re: [PATCH] Input: ALPS - fix DualPoint flag for 74 03 28 devices

From: Pali RohÃr
Date: Wed Mar 28 2018 - 03:39:17 EST


Ideally this information should be put as a comment into the code. It is
really not obvious.

On Tuesday 27 March 2018 04:37:19 Masaki Ota wrote:
> Hi,
>
> We can get OTP page 0 value by EA EA E9 commands, but we cannot get it by EA EA EA E9.
> As far as I remember, Device initialization finish at EA command, then sends EA EA E9 commands.
> In this case we cannot get correct OTP page 0 value.
> So I changed this order. (We can get OTP page 1 value by both of EA F0 F0 E9 and F0 F0 E9.)
>
> Best Regards,
> Masaki Ota
> -----Original Message-----
> From: Pali RohÃr [mailto:pali.rohar@xxxxxxxxx]
> Sent: Monday, March 26, 2018 6:26 AM
> To: åç çå Masaki Ota <masaki.ota@xxxxxxxxxxx>
> Cc: Dmitry Torokhov <dmitry.torokhov@xxxxxxxxx>; linux-input@xxxxxxxxxxxxxxx; linux-kernel@xxxxxxxxxxxxxxx; Aaron Ma <aaron.ma@xxxxxxxxxxxxx>
> Subject: Re: [PATCH] Input: ALPS - fix DualPoint flag for 74 03 28 devices
>
> On Tuesday 20 March 2018 11:47:26 Dmitry Torokhov wrote:
> > On Mon, Jan 29, 2018 at 2:51 PM, dmitry.torokhov@xxxxxxxxx
> > <dmitry.torokhov@xxxxxxxxx> wrote:
> > > Hi,
> > >
> > > On Thu, Nov 16, 2017 at 07:27:02AM +0000, Masaki Ota wrote:
> > >> Hi, Pali, Aaron,
> > >>
> > >> Current code is correct device setting, previous code is wrong.
> > >> If the trackstick does not work(DUALPOINT flag disable), Device Firmware setting is wrong.
> > >>
> > >> But recently I received the same report from Thinkpad L570 user, and I checked this device and found this device Firmware setting is wrong. Sorry for our mistake.
> > >> Is your laptop L570 ?
> > >>
> > >> I will add code that supports the trackstick for this device.
> > >
> > > Sorry for resurrecting this old thread, I am just trying to
> > > understand what went wrong here. Is the sequence of "f0 f0 e9" and
> > > "ea ea e9" is important in getting the correct OTP data and we
> > > originally got this order wrong? It is not clear from the original
> > > patch and discussion that this change was intentional.
> >
> > Could I please get an answer to my question?
> >
> > Thanks!
>
> Masaki, this question is for you âââ
>
> > >
> > > Thanks.
> > >
> > >>
> > >> Best Regards,
> > >> Masaki Ota
> > >> -----Original Message-----
> > >> From: Pali RohÃr [mailto:pali.rohar@xxxxxxxxx]
> > >> Sent: Wednesday, November 15, 2017 5:35 PM
> > >> To: åç çå Masaki Ota <masaki.ota@xxxxxxxxxxx>
> > >> Cc: linux-input@xxxxxxxxxxxxxxx; linux-kernel@xxxxxxxxxxxxxxx;
> > >> dmitry.torokhov@xxxxxxxxx; Aaron Ma <aaron.ma@xxxxxxxxxxxxx>
> > >> Subject: Re: [PATCH] Input: ALPS - fix DualPoint flag for 74 03 28
> > >> devices
> > >>
> > >> On Wednesday 15 November 2017 14:34:04 Aaron Ma wrote:
> > >> > There is a regression of commit 4a646580f793 ("Input: ALPS - fix
> > >> > two-finger scroll breakage"), ALPS device fails with log:
> > >> >
> > >> > psmouse serio1: alps: Rejected trackstick packet from non
> > >> > DualPoint device
> > >> >
> > >> > ALPS device with id "74 03 28" report OTP[0] data 0xCE after
> > >> > commit 4a646580f793, after restore the OTP reading order, it
> > >> > becomes to 0x10 as before and reports the right flag.
> > >> >
> > >> > Fixes: 4a646580f793 ("Input: ALPS - fix two-finger scroll
> > >> > breakage")
> > >> > Cc: <stable@xxxxxxxxxxxxxxx>
> > >> > Signed-off-by: Aaron Ma <aaron.ma@xxxxxxxxxxxxx>
> > >> > ---
> > >> > drivers/input/mouse/alps.c | 4 ++--
> > >> > 1 file changed, 2 insertions(+), 2 deletions(-)
> > >> >
> > >> > diff --git a/drivers/input/mouse/alps.c
> > >> > b/drivers/input/mouse/alps.c index 579b899add26..c59b8f7ca2fc
> > >> > 100644
> > >> > --- a/drivers/input/mouse/alps.c
> > >> > +++ b/drivers/input/mouse/alps.c
> > >> > @@ -2562,8 +2562,8 @@ static int alps_set_defaults_ss4_v2(struct
> > >> > psmouse *psmouse,
> > >> >
> > >> > memset(otp, 0, sizeof(otp));
> > >> >
> > >> > - if (alps_get_otp_values_ss4_v2(psmouse, 1, &otp[1][0]) ||
> > >> > - alps_get_otp_values_ss4_v2(psmouse, 0, &otp[0][0]))
> > >> > + if (alps_get_otp_values_ss4_v2(psmouse, 0, &otp[0][0]) ||
> > >> > + alps_get_otp_values_ss4_v2(psmouse, 1, &otp[1][0]))
> > >> > return -1;
> > >> >
> > >> > alps_update_device_area_ss4_v2(otp, priv);
> > >>
> > >> Masaki Ota, please look at this patch as it partially revert your
> > >> commit
> > >> 4a646580f793 ("Input: ALPS - fix two-finger scroll breakage"). Something smells here.
> > >>
> > >> --
> > >> Pali RohÃr
> > >> pali.rohar@xxxxxxxxx
> > >
> > > --
> > > Dmitry
> >
> >
> >
>
> --
> Pali RohÃr
> pali.rohar@xxxxxxxxx

--
Pali RohÃr
pali.rohar@xxxxxxxxx