Re: [PATCH] input: cyapa: fix the report events may lost issue during set power mode

From: Jeremiah Mahler
Date: Fri Jan 15 2016 - 00:34:16 EST


Dudley,

On Thu, Jan 14, 2016 at 01:40:33PM +0800, Dudley Du wrote:
> When driver set the power mode to change the scan rate in auto suspend
> process, some events may be lost because
> 1) for gen3 trackpad, the driver must msleep() some time to avoid issuing
> next command encounter error;
> 2) for gen5 and later trackpads, the queue dumping function will simply
> ignore the events when waiting for the set power mode command response.
> so, when auto resume process will be executed, the set power mode command
> will be issued can cause the events may be lost.
> The solution is kept polling and report those valid events when the set
> power mode command is in progress.
>
> TEST=test on Acer C720P Chromebook
>
> Signed-off-by: Dudley Du <dudl@xxxxxxxxxxx>
> ---
> drivers/input/mouse/cyapa.c | 22 ++++----
> drivers/input/mouse/cyapa.h | 14 ++++-
> drivers/input/mouse/cyapa_gen3.c | 108 ++++++++++++++++++++++++++++-----------
> drivers/input/mouse/cyapa_gen5.c | 99 +++++++++++++++++++++++++++++------
> drivers/input/mouse/cyapa_gen6.c | 4 +-
> 5 files changed, 188 insertions(+), 59 deletions(-)
>
[...]

I tested this on my Acer C720 and it appears to work properly.

Tested-by: Jeremiah Mahler <jmmahler@xxxxxxxxx>

--
- Jeremiah Mahler