On Mon, Nov 13, 2017 at 02:50:28PM +0000, Ville Syrjala wrote:
From: Ville Syrjälä ville.syrjala@linux.intel.com
Moving the init_clock_gating() call from intel_modeset_init_hw() to intel_modeset_gem_init() had an unintended effect of not applying some workarounds on resume. This, for example, cause some kind of corruption to appear at the top of my IVB Thinkpad X1 Carbon LVDS screen after hibernation. Fix the problem by explicitly calling init_clock_gating() from the resume path.
I really hope this doesn't break something else again...
Cc: stable@vger.kernel.org Cc: Chris Wilson chris@chris-wilson.co.uk Fixes: 6ac43272768c ("drm/i915: Move init_clock_gating() back to where it was") Signed-off-by: Ville Syrjälä ville.syrjala@linux.intel.com
drivers/gpu/drm/i915/i915_drv.c | 1 + 1 file changed, 1 insertion(+)
diff --git a/drivers/gpu/drm/i915/i915_drv.c b/drivers/gpu/drm/i915/i915_drv.c index 9df7b5d59a94..0023fb17899f 100644 --- a/drivers/gpu/drm/i915/i915_drv.c +++ b/drivers/gpu/drm/i915/i915_drv.c @@ -1707,6 +1707,7 @@ static int i915_drm_resume(struct drm_device *dev) intel_guc_resume(dev_priv);
- intel_init_clock_gating(dev_priv); intel_modeset_init_hw(dev);
Few questions:
Any reason why here we have it before init_hw while on finish_reset we have it after init_hw?
Also, what about the case on modeset_init? Do we need there? If yes, shouldn't we move the call entirely to intel-modeset_init_hw?
Also, do we still need now the call on vlv_resume_prepare? and on i915_gem_init?
Thanks, Rodrigo.
spin_lock_irq(&dev_priv->irq_lock); -- 2.13.6
Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx