[Bug 85920] [BYT-T] suspend/resume regression from 3.17 kernel version and beyond

bugzilla-daemon at freedesktop.org bugzilla-daemon at freedesktop.org
Tue Nov 18 08:38:26 PST 2014


https://bugs.freedesktop.org/show_bug.cgi?id=85920

--- Comment #5 from Imre Deak <imre.deak at intel.com> ---
Could you try the commit below on 3.18-rc5, that got rid of the problem for me.
Resetting simply to that commit in -nightly doesn't work, there seems to be
multiple issues fixed since then:

commit 950eabaf5a87257040e0c207be09487954113f54
Author: Imre Deak <imre.deak at intel.com>
Date:   Mon Sep 8 15:21:09 2014 +0300

    drm/i915: vlv: fix display IRQ enable/disable

    We want to enable/disable display IRQs only if global i915 IRQs are
    enabled. To check the latter it's not enough to consult the DRM
    dev->irq_enabled flag, since runtime PM can disable/enable IRQs
    and it won't adjust this flag only the i915 specific
    dev_priv->pm._irqs_disabled flag. Fix this by using the proper
    intel_irqs_enabled() helper instead.

    Fortunately this didn't cause an actual problem since even if we enabled
    display IRQs too early (before enabling global i915 IRQs) the
    VLV_MASTER_IER would still be clear masking all IRQs.

    This issue was caught by

    commit 920dd15a2b2fc60d054646a8a1ffd6aeb6090e05
    Author: Daniel Vetter <daniel.vetter at ffwll.ch>
    Date:   Wed Aug 27 10:43:37 2014 +0200

        drm/i915: WARN if interrupts aren't on in en/disable_pipestat

    Signed-off-by: Imre Deak <imre.deak at intel.com>
    Cc: Jesse Barnes <jbarnes at virtuousgeek.org>
    Signed-off-by: Daniel Vetter <daniel.vetter at ffwll.ch>

diff --git a/drivers/gpu/drm/i915/i915_irq.c b/drivers/gpu/drm/i915/i915_irq.c
index 4847ed5..d22f870 100644
--- a/drivers/gpu/drm/i915/i915_irq.c
+++ b/drivers/gpu/drm/i915/i915_irq.c
@@ -3723,7 +3723,7 @@ void valleyview_enable_display_irqs(struct
drm_i915_private *dev_priv)

     dev_priv->display_irqs_enabled = true;

-    if (dev_priv->dev->irq_enabled)
+    if (intel_irqs_enabled(dev_priv))
         valleyview_display_irqs_install(dev_priv);
 }

@@ -3736,7 +3736,7 @@ void valleyview_disable_display_irqs(struct
drm_i915_private *dev_priv)

     dev_priv->display_irqs_enabled = false;

-    if (dev_priv->dev->irq_enabled)
+    if (intel_irqs_enabled(dev_priv))
         valleyview_display_irqs_uninstall(dev_priv);
 }

-- 
You are receiving this mail because:
You are the QA Contact for the bug.
You are on the CC list for the bug.
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/intel-gfx-bugs/attachments/20141118/e0e5d28b/attachment.html>


More information about the intel-gfx-bugs mailing list