[PATCH 0/2][A/B/OEM] HID:Fix RayD touchscreen failure to resume from S3
Aaron Ma
aaron.ma at canonical.com
Thu Jan 4 06:06:06 UTC 2018
[Impact]
Resume of S3 cause system hang on Lenovo laptops with RayD touchscreen.
[Fix]
RayD touchscreen issued corrupted data after it resume from suspend.
Then HID driver didn't handle the data well,
because of the data overflow then it made a call trace and hang.
Keep memset safe from corrupted data and add command to make RayD
touchscreen back to normal.
Then touchscreen works fine.
[Test Case]
Tested on ThinkPad L380, works fine with fixes.
[Regression Potential]
Low, keep the data in hid-core and i2c-hid more strictly.
Add specific device quirk in i2c-hid.
Aaron Ma (2):
HID: core: i2c-hid: fix size check and type usage
HID: i2c-hid: Fix resume issue on Raydium touchscreen device
drivers/hid/hid-core.c | 4 ++--
drivers/hid/hid-ids.h | 3 +++
drivers/hid/i2c-hid/i2c-hid.c | 23 ++++++++++++++++++-----
3 files changed, 23 insertions(+), 7 deletions(-)
--
2.14.3
More information about the kernel-team
mailing list