[PATCH v5 28/28] drm/i915/slpc: Debug prints

Sagar Arun Kamble sagar.a.kamble at intel.com
Sun Jul 3 06:00:40 UTC 2016


From: "Kamble, Sagar A" <sagar.a.kamble at intel.com>

Signed-off-by: Kamble, Sagar A <sagar.a.kamble at intel.com>
---
 drivers/gpu/drm/i915/intel_drv.h  |  4 +++-
 drivers/gpu/drm/i915/intel_slpc.c | 13 +++++++++++++
 2 files changed, 16 insertions(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/i915/intel_drv.h b/drivers/gpu/drm/i915/intel_drv.h
index ddc9518..13417ea 100644
--- a/drivers/gpu/drm/i915/intel_drv.h
+++ b/drivers/gpu/drm/i915/intel_drv.h
@@ -1592,7 +1592,7 @@ assert_rpm_wakelock_held(struct drm_i915_private *dev_priv)
 	assert_rpm_device_not_suspended(dev_priv);
 	/* FIXME: Needs to be converted back to WARN_ONCE, but currently causes
 	 * too much noise. */
-	if (!atomic_read(&dev_priv->pm.wakeref_count))
+	if (WARN_ON(!atomic_read(&dev_priv->pm.wakeref_count)))
 		DRM_DEBUG_DRIVER("RPM wakelock ref not held during HW access");
 }
 
@@ -1684,6 +1684,8 @@ static inline int intel_slpc_active(struct drm_i915_private *dev_priv)
 	if (dev_priv->guc.slpc.shared_data_obj)
 		ret = 1;
 
+	WARN_ON(HAS_SLPC(dev_priv));
+
 	return ret;
 }
 
diff --git a/drivers/gpu/drm/i915/intel_slpc.c b/drivers/gpu/drm/i915/intel_slpc.c
index 5b5c0d9..1f58511 100644
--- a/drivers/gpu/drm/i915/intel_slpc.c
+++ b/drivers/gpu/drm/i915/intel_slpc.c
@@ -29,6 +29,11 @@
 static void host2guc_slpc(struct drm_i915_private *dev_priv, u32 *data, u32 len)
 {
 	int ret = i915_guc_action(&dev_priv->guc, data, len);
+	int i = 0;
+
+	for (i = 0; i < len; i++)
+		DRM_DEBUG_DRIVER("%8x ", data[i]);
+	DRM_DEBUG_DRIVER("\n");
 
 	if (!ret) {
 		ret = I915_READ(SOFT_SCRATCH(1));
@@ -181,6 +186,7 @@ static void slpc_shared_data_init(struct drm_i915_gem_object *obj)
 		data->platform_info.package_rapl_limit_low = (u32) msr_value;
 
 		kunmap_atomic(data);
+		DRM_DEBUG_DRIVER("SLPC shared data initialized\n");
 	}
 }
 
@@ -215,6 +221,7 @@ void intel_slpc_cleanup(struct drm_i915_private *dev_priv)
 	i915_guc_release_gem_obj(dev_priv->guc.slpc.shared_data_obj);
 	mutex_unlock(&dev->struct_mutex);
 	dev_priv->guc.slpc.shared_data_obj = NULL;
+	DRM_DEBUG_DRIVER("SLPC shared data released\n");
 }
 
 void intel_slpc_suspend(struct drm_i915_private *dev_priv)
@@ -320,6 +327,8 @@ void intel_slpc_update_display_mode_info(struct drm_i915_private *dev_priv)
 	if (cur_params->global_data != old_params.global_data)
 		notify = true;
 
+	DRM_DEBUG_DRIVER("\n");
+
 	if (notify)
 		host2guc_slpc_display_mode_change(dev_priv);
 
@@ -396,6 +405,8 @@ void intel_slpc_update_atomic_commit_info(struct drm_i915_private *dev_priv,
 	if (cur_params->global_data != old_params.global_data)
 		notify = true;
 
+	DRM_DEBUG_DRIVER("\n");
+
 	if (notify)
 		host2guc_slpc_display_mode_change(dev_priv);
 }
@@ -419,6 +430,8 @@ void intel_slpc_update_display_rr_info(struct drm_i915_private *dev_priv, u32 re
 	per_pipe_info->refresh_rate = refresh_rate;
 	per_pipe_info->vsync_ft_usec = 1000000 / refresh_rate;
 
+	DRM_DEBUG_DRIVER("\n");
+
 	host2guc_slpc_display_mode_change(dev_priv);
 }
 
-- 
1.9.1



More information about the Intel-gfx-trybot mailing list