aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDave Airlie <airlied@redhat.com>2014-07-23 00:25:24 -0400
committerDave Airlie <airlied@redhat.com>2014-07-23 20:26:58 -0400
commit09b64267c1f72f2670fcde9f11e5453ce365ca23 (patch)
tree69dcdcac667335182d864f064c1cdcf013a9ca26
parent78660d5fb03f5d0e6a880dcd704702fd364d93f3 (diff)
drm/i915: don't suspend gt until after we disable irqs and display (v2)
When I moved the irq disable down to after display disable, I didn't realise the gt suspend also required irqs off, so move it down as well. Fixes WARNs seen at suspend/resume time. v2: moved the rps flush down as well. Tested-by: Paulo Zanoni <paulo.r.zanoni@intel.com> Signed-off-by: Dave Airlie <airlied@redhat.com>
-rw-r--r--drivers/gpu/drm/i915/i915_drv.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/drivers/gpu/drm/i915/i915_drv.c b/drivers/gpu/drm/i915/i915_drv.c
index a361bb9bc243..2a83833207b1 100644
--- a/drivers/gpu/drm/i915/i915_drv.c
+++ b/drivers/gpu/drm/i915/i915_drv.c
@@ -516,11 +516,6 @@ static int i915_drm_freeze(struct drm_device *dev)
516 return error; 516 return error;
517 } 517 }
518 518
519 flush_delayed_work(&dev_priv->rps.delayed_resume_work);
520
521
522 intel_suspend_gt_powersave(dev);
523
524 /* 519 /*
525 * Disable CRTCs directly since we want to preserve sw state 520 * Disable CRTCs directly since we want to preserve sw state
526 * for _thaw. 521 * for _thaw.
@@ -532,8 +527,13 @@ static int i915_drm_freeze(struct drm_device *dev)
532 drm_modeset_unlock_all(dev); 527 drm_modeset_unlock_all(dev);
533 528
534 intel_dp_mst_suspend(dev); 529 intel_dp_mst_suspend(dev);
530
531 flush_delayed_work(&dev_priv->rps.delayed_resume_work);
532
535 intel_runtime_pm_disable_interrupts(dev); 533 intel_runtime_pm_disable_interrupts(dev);
536 534
535 intel_suspend_gt_powersave(dev);
536
537 intel_modeset_suspend_hw(dev); 537 intel_modeset_suspend_hw(dev);
538 } 538 }
539 539