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 -- 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