As pointed out before we don't have a reliable way to read back ips
status on BDW without the risk to disable it when reading.
However now we are pretending that IPS on BDW is always on and getting
people confused about it.

So this patch allows people to know if ips was ever attempted to be enabled.
Even if the current status is impossible to be ascertain.

v2: (spotted by Paulo):
     * A version that at least compiles
     * with more clear messages
     * let Cheryview on the safe side until we aren't sure that checking ips
       state on ips won't disable it.

Cc: Paulo Zanoni <paulo.r.zan...@intel.com>
Signed-off-by: Rodrigo Vivi <rodrigo.v...@intel.com>
---
 drivers/gpu/drm/i915/i915_debugfs.c | 15 +++++++++++----
 1 file changed, 11 insertions(+), 4 deletions(-)

diff --git a/drivers/gpu/drm/i915/i915_debugfs.c 
b/drivers/gpu/drm/i915/i915_debugfs.c
index a93b3bf..380be89 100644
--- a/drivers/gpu/drm/i915/i915_debugfs.c
+++ b/drivers/gpu/drm/i915/i915_debugfs.c
@@ -1523,10 +1523,17 @@ static int i915_ips_status(struct seq_file *m, void 
*unused)
 
        intel_runtime_pm_get(dev_priv);
 
-       if (IS_BROADWELL(dev) || I915_READ(IPS_CTL) & IPS_ENABLE)
-               seq_puts(m, "enabled\n");
-       else
-               seq_puts(m, "disabled\n");
+       seq_printf(m, "Enabled by kernel parameter: %s\n",
+                  yesno(i915.enable_ips));
+
+       if (INTEL_INFO(dev)->gen >= 8) {
+               seq_puts(m, "Currently: unknown\n");
+       } else {
+               if (I915_READ(IPS_CTL) & IPS_ENABLE)
+                       seq_puts(m, "Currently: enabled\n");
+               else
+                       seq_puts(m, "Currently: disabled\n");
+       }
 
        intel_runtime_pm_put(dev_priv);
 
-- 
1.9.3

_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/intel-gfx

Reply via email to