Skip to contentSkip to conversation

Patch "drm/i915: Fix mismatched INIT power domain disabling during suspend" has been added to the 4.8-stable tree

PATCH [email protected] 1 participant 1 message Nov 17, 2016

Subsystems (3)
lore
Share & tools
lore

[email protected]

author maintainer Applied
#0 lore raw

This is a note to let you know that I've just added the patch titled

drm/i915: Fix mismatched INIT power domain disabling during suspend

to the 4.8-stable tree which can be found at:
http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary

The filename of the patch is:
drm-i915-fix-mismatched-init-power-domain-disabling-during-suspend.patch
and it can be found in the queue-4.8 subdirectory.

If you, or anyone else, feels it should not be added to the stable tree, please let <[email protected]> know about it.

Quoted 1 line

From fd58753ead86ee289ea89fe26e1842f36e54b36c Mon Sep 17 00:00:00 2001

From: Imre Deak <[email protected]>
Date: Thu, 13 Oct 2016 14:34:06 +0300
Subject: drm/i915: Fix mismatched INIT power domain disabling during suspend
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

From: Imre Deak <[email protected]>

commit fd58753ead86ee289ea89fe26e1842f36e54b36c upstream.

Currently the display INIT power domain disabling/enabling happens in a mismatched way in the suspend/resume_early hooks respectively. This can leave display power wells incorrectly disabled in the resume hook if the suspend sequence is aborted for some reason resulting in the suspend/resume hooks getting called but the suspend_late/resume_early hooks being skipped. In particular this change fixes "Unclaimed read from register 0x1e1204" on BYT/BSW triggered from i915_drm_resume()-> intel_pps_unlock_regs_wa() when suspending with /sys/power/pm_test set to devices.

Fixes 85e90679335f ("drm/i915: disable power wells on suspend")
Cc Ville Syrjälä <[email protected]>
Cc David Weinehall <[email protected]>
(cherry picked from commit 4c494a5769cd0de92638b25960ba0158c36088a6)
---
 drivers/gpu/drm/i915/i915_drv.c |    4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)
drivers/gpu/drm/i915/i915_drv.c +2 -2
@@ -1490,8 +1490,6 @@ static int i915_drm_suspend(struct drm_d
 
 	dev_priv->suspend_count++;
 
-	intel_display_set_init_power(dev_priv, false);
-
 	intel_csr_ucode_suspend(dev_priv);
 
 out:
@@ -1508,6 +1506,8 @@ static int i915_drm_suspend_late(struct
 
 	disable_rpm_wakeref_asserts(dev_priv);
 
+	intel_display_set_init_power(dev_priv, false);
+
 	fw_csr = !IS_BROXTON(dev_priv) &&
 		suspend_to_idle(dev_priv) && dev_priv->csr.dmc_payload;
 	/*

Patches currently in stable-queue which might be from [email protected] are

queue-4.8/drm-i915-fix-mismatched-init-power-domain-disabling-during-suspend.patch