Thread (8 messages) 8 messages, 3 authors, 2019-01-21

Re: [PATCH] HID: i2c-hid: Disable runtime PM on Goodix touchpad

From: Kai-Heng Feng <hidden>
Date: 2019-01-17 05:02:57
Also in: lkml

On Jan 16, 2019, at 16:21, Kai Heng Feng [off-list ref] wrote:


quoted
On Jan 14, 2019, at 19:18, Jiri Kosina [off-list ref] wrote:

On Mon, 14 Jan 2019, Kai-Heng Feng wrote:
quoted
A Goodix touchpad doesn't work. Touching the touchpad can trigger IRQ
but there's no input event from HID subsystem.

Turns out it reports some invalid data:
[   22.136630] i2c_hid i2c-DELL091F:00: input: 0b 00 01 00 00 00 00 00 00 00 00

After some trial and error, it's another device that doesn't work well
with ON/SLEEP commands. Disable runtime PM to fix the issue.
Thanks, I've now applied the patch to for-5.0/upstream-fixes. I am 
wondering though we are we seeing these at all - do other OSes not do the 
runtime PM on i2c at all?
According to the vendor, Windows does use ON/SLEEP, but infrequently.

We can use pm_runtime_use_autosuspend() to reduce the frequency of
ON/SLEEP commands, but it’s just papering over the touchpad firmware
bug.
Goodix says the firmware needs at least 60ms to fully respond ON and
SLEEP command.

I’ll see if an 200ms autosuspend can solve all Goodix, LG and Raydium
touchpanels.

Kai-Heng
Kai-Heng
quoted
-- 
Jiri Kosina
SUSE Labs
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help