[PATCH] drm/i915: Grab power domain in skl_pipe_wm_get_hw_state()

Maarten Lankhorst maarten.lankhorst at linux.intel.com
Tue Dec 12 10:38:59 UTC 2017


This should get rid of unclaimed register debug warnings, if
it still happens we should put this in a intel_crtc->active check..

Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=104172
Signed-off-by: Maarten Lankhorst <maarten.lankhorst at linux.intel.com>
---
 drivers/gpu/drm/i915/intel_pm.c | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

diff --git a/drivers/gpu/drm/i915/intel_pm.c b/drivers/gpu/drm/i915/intel_pm.c
index e3441a4d7380..dc4c31a28c85 100644
--- a/drivers/gpu/drm/i915/intel_pm.c
+++ b/drivers/gpu/drm/i915/intel_pm.c
@@ -5477,6 +5477,11 @@ void skl_pipe_wm_get_hw_state(struct drm_crtc *crtc,
 	int level, max_level;
 	enum plane_id plane_id;
 	uint32_t val;
+	enum intel_display_power_domain power_domain;
+
+	power_domain = POWER_DOMAIN_PIPE(pipe);
+	if (!intel_display_power_get_if_enabled(dev_priv, power_domain))
+		return;
 
 	max_level = ilk_wm_max_level(dev_priv);
 
@@ -5500,10 +5505,9 @@ void skl_pipe_wm_get_hw_state(struct drm_crtc *crtc,
 		skl_wm_level_from_reg_val(val, &wm->trans_wm);
 	}
 
-	if (!intel_crtc->active)
-		return;
-
 	out->linetime = I915_READ(PIPE_WM_LINETIME(pipe));
+
+	intel_display_power_put(dev_priv, power_domain);
 }
 
 void skl_wm_get_hw_state(struct drm_device *dev)
-- 
2.15.1



More information about the Intel-gfx-trybot mailing list