Re: [PATCH 0/8] Input: support for latest Lenovo thinkpads (series 80)

From: Benjamin Tissoires
Date: Tue Apr 10 2018 - 03:35:24 EST


Hi KT,

On Tue, Apr 10, 2018 at 7:45 AM, ååæ <kt.liao@xxxxxxxxxx> wrote:
> Hi Benjamin,
>
> Thanks so much for your patch.
>
> I have tested them for Elan Gen5/Gen6(new) touchpad with SMbus/PS2.
> It works fine in my thinkpad so far but I find an issue today after lid-close/open.
>
> I am not sure if you can see it in T480S , I "guess" it may be relative to i2c_i801.
>
> The lid-close will enter deep sleep and cut touchpad power.
> I can see the resume flow after lid-open and SMbus-initial try to request hello package but fail.
> Strangely, I can't see any SMbus host signal on LA scope after power-on.

That's weird. I do not see this, by either closing the lid or directly
calling 'systemctl suspend'.
On my system, i2c-i801 is also compiled as a module but psmouse is not
(directly in vmlinuz).

>
> I can't switch to SMbus after rmmod/modprobe psmouse because error happen in elantech_create_smbus.

If the SMBus adapter is failing, it is somewhat expected. Reloading
psmouse will force a re-trigger of the SMBus probe function, but if
the underlying communication fails, there is no way for psmouse to
know it failed, so the PS/2 node will disappear. And the SMBus device
will not be there.

> It will be recovered only if I rmmod/modprobe i2c_i801 first.

Just to be sure, what happens if you rmmod/modprobe elan_i2c instead
of i2c_i801?

And which kernel are you running? On a vanilla 4.16 + Dmitry's next
branch I do not see such issues.

>
> Do you have any idea about it?

If reloading elan_i2c doesn't fix the situation, it must be in
i2c_i801. But this is weird that this happens on your platform but not
on my t480s going into S3.

Cheers,
Benjamin

>
> Thanks
> KT
> -----Original Message-----
> From: Benjamin Tissoires [mailto:benjamin.tissoires@xxxxxxxxxx]
> Sent: Friday, April 06, 2018 2:51 PM
> To: Dmitry Torokhov
> Cc: ååæ; Oliver Haessler; Benjamin Berg; open list:HID CORE LAYER; lkml
> Subject: Re: [PATCH 0/8] Input: support for latest Lenovo thinkpads (series 80)
>
> Hi Dmitry,
>
> On Fri, Apr 6, 2018 at 1:51 AM, Dmitry Torokhov <dmitry.torokhov@xxxxxxxxx> wrote:
>> Hi Benjamin,
>>
>> On Thu, Apr 05, 2018 at 03:25:29PM +0200, Benjamin Tissoires wrote:
>>> Hi Dmitry,
>>>
>>> well, this year, Lenovo gave us a surprise and decided to not use the
>>> same touchpad/trackstick in all its model. And by default, the
>>> support under Linux is less than ideal.
>>>
>>> Please find a series that should fix those issues. Compared to the 60
>>> series, there do not seem to e BIOS table issues this time, and
>>> suspend/resume works fine thanks to your latest trackstick fixes.
>>>
>>> The T480s is a different beast, as it uses an Elan touchpad.
>>> I have been carrying the patches 3-6 for a while and tested previous
>>> versions on various Elan PS/2 hardware without an issue as far as I
>>> could tell. I was lacking tests from users with SMBus as all the
>>> laptops I tried where puer PS/2.
>>>
>>> Anyway, it would be cool if you could have a look at the series.
>>
>> I am mostly happy with the series, but I would love to hear KT's take
>> on it.
>
> thanks for the quick review.
> I worked closely with KT for this series. He helped me a lot for the tiny firmware changes that were required. However, quoting his email from Tuesday:
> "There will be a spring vacation in Taiwan from tomorrow." I guess we won't hear from him until the end of next week as we always have a backlog of urgent things to do after holidays...
>
> Cheers,
> Benjamin
>