• Imre Deak's avatar
    drm/i915: unify legacy S3 suspend and S4 freeze handlers · f2888fab
    Imre Deak authored
    i915_suspend() is called from the DRM legacy S3 suspend/S4 freeze paths
    and the switcheroo suspend path. For switcheroo we only ever need to
    perform a full suspend (PM_EVENT_SUSPEND) and for the DRM legacy path
    we can handle the S4 freeze (PM_EVENT_FREEZE) the same way as S3
    suspend. The only difference atm between suspend and freeze is that
    during freeze we don't disable the PCI device, but there is no reason
    why we can't do so. So unify the two cases to reduce complexity.
    
    Note that for the DRM legacy case the thaw event is not handled, so
    we disable the display before creating the hibernation image and it
    won't get re-enabled until reboot. We could fix this leaving the
    display enabled for the image creation/writing (if we care enough
    about UMS), but this can be done as a follow-up.
    Signed-off-by: default avatarImre Deak <imre.deak@intel.com>
    Reviewed-by: default avatarVille Syrjälä <ville.syrjala@linux.intel.com>
    Signed-off-by: default avatarDaniel Vetter <daniel.vetter@ffwll.ch>
    f2888fab
i915_drv.c 47.8 KB