drm/i915/gen9: flush DMC fw loading work during system suspend
authorImre Deak <imre.deak@intel.com>
Wed, 28 Oct 2015 21:59:06 +0000 (23:59 +0200)
committerJani Nikula <jani.nikula@intel.com>
Thu, 12 Nov 2015 15:31:10 +0000 (17:31 +0200)
Currently during system s/r we enable/disable DC6, so before we do so
make sure that the firmware loading is complete.

Note that whether we need to enable DC6 for S3/S4 is still open.  At
least the firmware program is lost during S3 and we need to reprogram it
after resuming. Until this is clarified we keep the current behavior and
enable/disable DC6.

Signed-off-by: Imre Deak <imre.deak@intel.com>
Reviewed-by: Animesh Manna <animesh.manna@intel.com>
Tested-by: Daniel Stone <daniels@collabora.com> # SKL
Signed-off-by: Jani Nikula <jani.nikula@intel.com>
Link: http://patchwork.freedesktop.org/patch/msgid/1446069547-24760-13-git-send-email-imre.deak@intel.com
drivers/gpu/drm/i915/i915_drv.c

index 37319b0..858d58c 100644 (file)
@@ -693,6 +693,9 @@ static int i915_drm_suspend(struct drm_device *dev)
 
        intel_display_set_init_power(dev_priv, false);
 
+       if (HAS_CSR(dev_priv))
+               flush_work(&dev_priv->csr.work);
+
        return 0;
 }