linux/drivers/hid/intel-ish-hid
Even Xu bdab6c94bb HID: Intel-ish-hid: Ishtp: Fix sensor reads after ACPI S3 suspend
After legacy suspend/resume via ACPI S3, sensor read operation fails
with timeout. Also, it will cause delay in resume operation as there
will be retries on failure.

This is caused by commit f645a90e8f ("HID: intel-ish-hid:
ishtp-hid-client: use helper functions for connection"), which used
helper functions to simplify connect, reset and disconnect process.
Also avoid freeing and allocating client buffers again during reconnect
process.

But there is a case, when ISH firmware resets after ACPI S3 suspend,
ishtp bus driver frees client buffers. Since there is no realloc again
during reconnect, there are no client buffers available to send connection
requests to the firmware. Without successful connection to the firmware,
subsequent sensor reads will timeout.

To address this issue, ishtp bus driver does not free client buffers on
warm reset after S3 resume. Simply add the buffers from the read list
to free list of buffers.

Fixes: f645a90e8f ("HID: intel-ish-hid: ishtp-hid-client: use helper functions for connection")
Closes: https://bugzilla.kernel.org/show_bug.cgi?id=218442
Signed-off-by: Even Xu <even.xu@intel.com>
Acked-by: Srinivas Pandruvada <srinivas.pandruvada@linux.intel.com>
Signed-off-by: Jiri Kosina <jkosina@suse.com>
2024-02-13 11:31:08 +01:00
..
ipc HID: intel-ish-hid: ipc: Rework EHL OOB wakeup 2023-12-07 14:53:19 +01:00
ishtp HID: Intel-ish-hid: Ishtp: Fix sensor reads after ACPI S3 suspend 2024-02-13 11:31:08 +01:00
ishtp-fw-loader.c HID: intel-ish-hid: ishtp-fw-loader: use helper functions for connection 2023-12-06 11:33:45 +01:00
ishtp-hid-client.c HID: intel-ish-hid: ishtp-hid-client: use helper functions for connection 2023-12-06 11:33:45 +01:00
ishtp-hid.c HID: intel-ish-hid: Constify lowlevel HID driver 2023-02-06 15:08:44 +01:00
ishtp-hid.h HID: ishtp-hid-clientHID: ishtp-hid-client: Fix comment typo 2022-08-25 11:35:44 +02:00
Kconfig HID: stop drivers from selecting CONFIG_HID 2023-01-18 16:14:04 +01:00
Makefile treewide: prefix header search paths with $(srctree)/ 2019-05-18 11:49:57 +09:00