@@ -2515,11 +2515,13 @@ static int i915_dmc_info(struct seq_file *m, void *unused)
seq_printf(m, "DC3CO count: %d\n", I915_READ(DMC_DEBUG3));
seq_printf(m, "DC3 -> DC5 count: %d\n",
- I915_READ(IS_BROXTON(dev_priv) ? BXT_CSR_DC3_DC5_COUNT :
- SKL_CSR_DC3_DC5_COUNT));
+ I915_READ(IS_TIGERLAKE(dev_priv) ? DMC_DEBUG1 :
+ (IS_BROXTON(dev_priv) ? BXT_CSR_DC3_DC5_COUNT :
+ SKL_CSR_DC3_DC5_COUNT)));
if (!IS_GEN9_LP(dev_priv))
seq_printf(m, "DC5 -> DC6 count: %d\n",
- I915_READ(SKL_CSR_DC5_DC6_COUNT));
+ I915_READ(IS_TIGERLAKE(dev_priv) ? DMC_DEBUG2 :
+ SKL_CSR_DC5_DC6_COUNT));
out:
seq_printf(m, "program base: 0x%08x\n", I915_READ(CSR_PROGRAM(0)));
@@ -7266,6 +7266,8 @@ enum {
#define BXT_CSR_DC3_DC5_COUNT _MMIO(0x80038)
/* DMC DEBUG COUNTERS for TGL*/
+#define DMC_DEBUG1 _MMIO(0x101084)
+#define DMC_DEBUG2 _MMIO(0x101088)
#define DMC_DEBUG3 _MMIO(0x101090) /*DC3CO debug counter*/
/* interrupts */
TGL onwards we have new DC5 and DC6 counter DMC_DEBUG1 and DMC_DEBUG2, these counter will retain there values upon DMC reset. Cc: jani.nikula@intel.com Cc: imre.deak@intel.com Cc: animesh.manna@intel.com Signed-off-by: Anshuman Gupta <anshuman.gupta@intel.com> --- drivers/gpu/drm/i915/i915_debugfs.c | 8 +++++--- drivers/gpu/drm/i915/i915_reg.h | 2 ++ 2 files changed, 7 insertions(+), 3 deletions(-)