[PATCH 1/8] drm/i915/guc: Disable rpm wakeref asserts in GuC irq handler

Michał Winiarski michal.winiarski at intel.com
Mon Mar 26 10:51:58 UTC 2018


We're seeing "RPM wakelock ref not held during HW access" warning
otherwise. Since IRQs are synced for runtime suspend we can just disable
the wakeref asserts.

v2: We need the forcewake, just disable asserts (Daniele)

Reported-by: Marta Löfstedt <marta.lofstedt at intel.com>
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=105710
Signed-off-by: Michał Winiarski <michal.winiarski at intel.com>
Cc: Chris Wilson <chris at chris-wilson.co.uk>
Cc: Marta Löfstedt <marta.lofstedt at intel.com>
Cc: Michal Wajdeczko <michal.wajdeczko at intel.com>
---
 drivers/gpu/drm/i915/i915_irq.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/i915/i915_irq.c b/drivers/gpu/drm/i915/i915_irq.c
index 27aee25429b7..434fd96f5599 100644
--- a/drivers/gpu/drm/i915/i915_irq.c
+++ b/drivers/gpu/drm/i915/i915_irq.c
@@ -1765,8 +1765,11 @@ static void gen6_rps_irq_handler(struct drm_i915_private *dev_priv, u32 pm_iir)
 
 static void gen9_guc_irq_handler(struct drm_i915_private *dev_priv, u32 gt_iir)
 {
-	if (gt_iir & GEN9_GUC_TO_HOST_INT_EVENT)
+	if (gt_iir & GEN9_GUC_TO_HOST_INT_EVENT) {
+		disable_rpm_wakeref_asserts(dev_priv);
 		intel_guc_to_host_event_handler(&dev_priv->guc);
+		enable_rpm_wakeref_asserts(dev_priv);
+	}
 }
 
 static void i9xx_pipestat_irq_reset(struct drm_i915_private *dev_priv)
-- 
2.14.3



More information about the Intel-gfx-trybot mailing list