• Todd Poynor's avatar
    [PATCH] Leave runtime suspended devices off at system resume · b8ff3f6b
    Todd Poynor authored
    Currently all devices are resumed at system resume time, including any
    that were individually powered off ("at runtime") prior to the system
    suspend.  In certain cases it can be nice to force back on individually
    suspended devices, such as the display, but hopefully this policy can be
    left up to userspace power managers; the kernel should probably honor
    the settings previously made by userspace/drivers.  This seems
    preferable to requiring a power-conscious system to re-suspend devices
    after a system resume; furthermore, for certain platforms (such as
    XScale PXA27X) there can be disastrous consequences of powering up
    devices when the system is in a state incompatible with operation of the
    device.
    
    Suggested patch does this:
    
    (1) At system resume, checks power_state to see if the device was
    suspended prior to system suspend, and skips powering on the device if
    so.
    
    (2) Does not re-suspend an already-suspended device at system suspend
    (using a different method than is currently employed, which reorders the
    list, see #3).
    
    (3) Preserves the active/off device list order despite the above changes
    to suspend/resume behavior, to avoid dependency problems that tend to
    occur when the list is reordered.
    Signed-off-by: default avatarGreg Kroah-Hartman <greg@kroah.com>
    b8ff3f6b
suspend.c 3.23 KB