HID: i2c-hid: disable runtime PM operations on hantick touchpad
authorAnisse Astier <anisse@astier.eu>
Wed, 12 Sep 2018 13:07:05 +0000 (15:07 +0200)
committerJiri Kosina <jkosina@suse.cz>
Fri, 14 Sep 2018 08:00:22 +0000 (10:00 +0200)
commit807588ac92018bde88a1958f546438e840eb0158
treea8250676c15a7c074495292f5f270b9921da81d0
parent52cf93e63ee672a92f349edc6ddad86ec8808fd8
HID: i2c-hid: disable runtime PM operations on hantick touchpad

This hantick HTIX5288 touchpad can quickly fall in a wrong state if
there are too many open/close operations. This will either make it stop
reporting any input, or will shift all the input reads by a few bytes,
making it impossible to decode.

Here, we never release the probed touchpad runtime pm while the driver
is loaded, which should disable all runtime pm suspend/resumes.

This fast repetition of sleep/wakeup is also more likely to happen when
using runtime PM, which is why the quirk is done there, and not for all
power downs, which would include suspend or module removal.

Signed-off-by: Anisse Astier <anisse@astier.eu>
Cc: stable@vger.kernel.org
Acked-by: Benjamin Tissoires <benjamin.tissoires@redhat.com>
Reviewed-by: Hans de Goede <hdegoede@redhat.com>
Tested-by: Philip Müller <philm@manjaro.org>
Signed-off-by: Jiri Kosina <jkosina@suse.cz>
drivers/hid/i2c-hid/i2c-hid.c