[Intel-gfx] [PATCH] drm/i915: Update forcewake ack register used in debugfs
Oscar Mateo
oscar.mateo at intel.com
Fri Dec 22 22:10:00 UTC 2017
Different GENs have a different ACK register. Use the correct
one for each case.
Suggested-by: Paulo Zanoni <paulo.r.zanoni at intel.com>
Signed-off-by: Oscar Mateo <oscar.mateo at intel.com>
Cc: Sagar Arun Kamble <sagar.a.kamble at intel.com>
---
drivers/gpu/drm/i915/i915_debugfs.c | 15 ++++++++++++++-
1 file changed, 14 insertions(+), 1 deletion(-)
diff --git a/drivers/gpu/drm/i915/i915_debugfs.c b/drivers/gpu/drm/i915/i915_debugfs.c
index e968aea..36f40ab 100644
--- a/drivers/gpu/drm/i915/i915_debugfs.c
+++ b/drivers/gpu/drm/i915/i915_debugfs.c
@@ -1465,8 +1465,21 @@ static int gen6_drpc_info(struct seq_file *m)
seq_puts(m, "RC information inaccurate because somebody "
"holds a forcewake reference \n");
} else {
+ i915_reg_t reg_ack;
+
+ if (INTEL_GEN(dev_priv) >= 9)
+ reg_ack = FORCEWAKE_ACK_RENDER_GEN9;
+ else if (IS_VALLEYVIEW(dev_priv) || IS_CHERRYVIEW(dev_priv))
+ reg_ack = FORCEWAKE_ACK_VLV;
+ else if (IS_HASWELL(dev_priv) || IS_BROADWELL(dev_priv))
+ reg_ack = FORCEWAKE_ACK_HSW;
+ else if (IS_IVYBRIDGE(dev_priv))
+ reg_ack = FORCEWAKE_MT_ACK;
+ else
+ reg_ack = FORCEWAKE_ACK;
+
/* NB: we cannot use forcewake, else we read the wrong values */
- while (count++ < 50 && (I915_READ_NOTRACE(FORCEWAKE_ACK) & 1))
+ while (count++ < 50 && (I915_READ_NOTRACE(reg_ack) & 1))
udelay(10);
seq_printf(m, "RC information accurate: %s\n", yesno(count < 51));
}
--
1.9.1
More information about the Intel-gfx
mailing list