• Even Xu's avatar
    HID: intel_ish-hid: ipc: register more pm callbacks to support hibernation · ab17de60
    Even Xu authored
    commit ebeaa367 upstream.
    
    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@vger.kernel.org
    Signed-off-by: default avatarEven Xu <even.xu@intel.com>
    Acked-by: default avatarSrinivas Pandruvada <srinivas.pandruvada@linux.intel.com>
    Signed-off-by: default avatarJiri Kosina <jkosina@suse.cz>
    Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
    ab17de60
pci-ish.c 8.1 KB