drm/i915/vlv: remove wait for previous GFX clk disable request
authorDeepak S <deepak.s@linux.intel.com>
Sat, 28 Mar 2015 09:53:34 +0000 (15:23 +0530)
committerSasha Levin <sasha.levin@oracle.com>
Thu, 23 Apr 2015 18:58:22 +0000 (14:58 -0400)
[ Upstream commit 5df0582bf036bb5f9a8ad8db5884fe13a55347d1 ]

Looks like it was introduced in:

commit 650ad970a39f8b6164fe8613edc150f585315289
Author: Imre Deak <imre.deak@intel.com>
Date:   Fri Apr 18 16:35:02 2014 +0300

    drm/i915: vlv: factor out vlv_force_gfx_clock and check for pending force-of

but I'm not sure why.  It has caused problems for us in the past (see
85250ddff7a6 "drm/i915/chv: Remove Wait for a previous gfx force-off"
and 8d4eee9cd7a1 "drm/i915: vlv: increase timeout when forcing on the
GFX clock") and doesn't seem to be required, so let's just drop it.

References: https://bugs.freedesktop.org/show_bug.cgi?id=89611
Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
Tested-by: Darren Hart <dvhart@linux.intel.com>
Reviewed-by: Deepak S <deepak.s@linux.intel.com>
Cc: stable@vger.kernel.org # c9c52e24194a: drm/i915/chv: Remove Wait ...
Cc: stable@vger.kernel.org
Signed-off-by: Jani Nikula <jani.nikula@intel.com>
Signed-off-by: Sasha Levin <sasha.levin@oracle.com>
drivers/gpu/drm/i915/i915_drv.c

index 92569732094934fcdd5368ebdf22518fed9442b5..1787b1846f18cd1f851901975de7c544eac2242e 100644 (file)
@@ -1244,11 +1244,13 @@ int vlv_force_gfx_clock(struct drm_i915_private *dev_priv, bool force_on)
        int err;
 
        val = I915_READ(VLV_GTLC_SURVIVABILITY_REG);
-       WARN_ON(!!(val & VLV_GFX_CLK_FORCE_ON_BIT) == force_on);
 
 #define COND (I915_READ(VLV_GTLC_SURVIVABILITY_REG) & VLV_GFX_CLK_STATUS_BIT)
        /* Wait for a previous force-off to settle */
-       if (force_on) {
+       if (force_on && !IS_CHERRYVIEW(dev_priv->dev)) {
+               /* WARN_ON only for the Valleyview */
+               WARN_ON(!!(val & VLV_GFX_CLK_FORCE_ON_BIT) == force_on);
+
                err = wait_for(!COND, 20);
                if (err) {
                        DRM_ERROR("timeout waiting for GFX clock force-off (%08x)\n",