diff options
| author | Deepak S <deepak.s@linux.intel.com> | 2015-03-28 15:23:34 +0530 |
|---|---|---|
| committer | Luis Henriques <luis.henriques@canonical.com> | 2015-04-27 16:16:36 +0100 |
| commit | 51d73171df477dc488e4db6388f56ccad5ad3702 (patch) | |
| tree | ad98d0a60c7bb8ef3e196aa3f4b701d98a44cd33 | |
| parent | c2c80a71fc4d071dbf8034d17b9522e5c1220017 (diff) | |
drm/i915/chv: Remove Wait for a previous gfx force-off
commit c9c52e24194a741f9fca96e7aa965f0fa36af504 upstream.
On CHV, PUNIT team confirmed that 'VLV_GFX_CLK_STATUS_BIT' is not a
sticky bit and it will always be set. So ignore Check for previous
Gfx force off during suspend and allow the force clk as part S0ix
Sequence
Signed-off-by: Deepak S <deepak.s@linux.intel.com>
Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Signed-off-by: Jani Nikula <jani.nikula@intel.com>
Signed-off-by: Luis Henriques <luis.henriques@canonical.com>
| -rw-r--r-- | drivers/gpu/drm/i915/i915_drv.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/drivers/gpu/drm/i915/i915_drv.c b/drivers/gpu/drm/i915/i915_drv.c index a458e8393378..7a0fc58d372e 100644 --- a/drivers/gpu/drm/i915/i915_drv.c +++ b/drivers/gpu/drm/i915/i915_drv.c @@ -1176,11 +1176,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", |
