drm/i915: Improve PSR debugfs output
authorDaniel Vetter <daniel.vetter@ffwll.ch>
Fri, 11 Jul 2014 17:30:17 +0000 (10:30 -0700)
committerDaniel Vetter <daniel.vetter@ffwll.ch>
Wed, 23 Jul 2014 05:05:20 +0000 (07:05 +0200)
Add busy_frontbuffer_bits and locking.

Reviewed-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
drivers/gpu/drm/i915/i915_debugfs.c

index 62ea6198a0927409f32c02553b8c19b74bb9968d..fc39610fe12d9b7875d5e515ca85def616142214 100644 (file)
@@ -1892,10 +1892,15 @@ static int i915_edp_psr_status(struct seq_file *m, void *data)
 
        intel_runtime_pm_get(dev_priv);
 
+       mutex_lock(&dev_priv->psr.lock);
        seq_printf(m, "Sink_Support: %s\n", yesno(dev_priv->psr.sink_support));
        seq_printf(m, "Source_OK: %s\n", yesno(dev_priv->psr.source_ok));
        seq_printf(m, "Enabled: %s\n", yesno((bool)dev_priv->psr.enabled));
        seq_printf(m, "Active: %s\n", yesno(dev_priv->psr.active));
+       seq_printf(m, "Busy frontbuffer bits: 0x%03x\n",
+                  dev_priv->psr.busy_frontbuffer_bits);
+       seq_printf(m, "Re-enable work scheduled: %s\n",
+                  yesno(work_busy(&dev_priv->psr.work.work)));
 
        enabled = HAS_PSR(dev) &&
                I915_READ(EDP_PSR_CTL(dev)) & EDP_PSR_ENABLE;
@@ -1905,6 +1910,7 @@ static int i915_edp_psr_status(struct seq_file *m, void *data)
                psrperf = I915_READ(EDP_PSR_PERF_CNT(dev)) &
                        EDP_PSR_PERF_CNT_MASK;
        seq_printf(m, "Performance_Counter: %u\n", psrperf);
+       mutex_unlock(&dev_priv->psr.lock);
 
        intel_runtime_pm_put(dev_priv);
        return 0;