Linux/linux ebeaa36drivers/hid/intel-ish-hid/ipc pci-ish.c

HID: intel_ish-hid: ipc: register more pm callbacks to support hibernation

Current ISH driver only registers suspend/resume PM callbacks which don't
support hibernation (suspend to disk). Basically after hiberation, the ISH
can't resume properly and user may not see sensor events (for example: screen
                rotation may not work).

User will not see a crash or panic or anything except the following message
in log:

        hid-sensor-hub 001F:8086:22D8.0001: timeout waiting for response from ISHTP device

So this patch adds support for S4/hiberbation to ISH by using the
SIMPLE_DEV_PM_OPS() MACRO instead of struct dev_pm_ops directly. The suspend
and resume functions will now be used for both suspend to RAM and hibernation.

If power management is disabled, SIMPLE_DEV_PM_OPS will do nothing, the suspend
and resume related functions won't be used, so mark them as __maybe_unused to
clarify that this is the intended behavior, and remove #ifdefs for power
management.

Cc: stable at vger.kernel.org
Signed-off-by: Even Xu <even.xu at intel.com>
Acked-by: Srinivas Pandruvada <srinivas.pandruvada at linux.intel.com>
Signed-off-by: Jiri Kosina <jkosina at suse.cz>
DeltaFile
+7-15drivers/hid/intel-ish-hid/ipc/pci-ish.c
+7-151 files

UnifiedSplitRaw