From: Ville Syrjälä Date: Thu, 27 Aug 2015 20:56:08 +0000 (+0300) Subject: drm/i915: Reinitialize HPD after runtime D3 X-Git-Url: https://git.karo-electronics.de/?a=commitdiff_plain;h=08d8a232aa5e145f995a98ac7f3de55e2fe6832b;p=linux-beck.git drm/i915: Reinitialize HPD after runtime D3 Runtime suspends disabled all interrupts, so in order to get them back fully we need to also do the HPD irq setup on runtime resume. Except on VLV/CHV where the display interrupt initialization is part of the display power well powerup. Reviewed-by: Paulo Zanoni Signed-off-by: Ville Syrjälä Signed-off-by: Daniel Vetter --- diff --git a/drivers/gpu/drm/i915/i915_drv.c b/drivers/gpu/drm/i915/i915_drv.c index 4737d15de5f0..bdec64ca6f13 100644 --- a/drivers/gpu/drm/i915/i915_drv.c +++ b/drivers/gpu/drm/i915/i915_drv.c @@ -1555,6 +1555,15 @@ static int intel_runtime_resume(struct device *device) gen6_update_ring_freq(dev); intel_runtime_pm_enable_interrupts(dev_priv); + + /* + * On VLV/CHV display interrupts are part of the display + * power well, so hpd is reinitialized from there. For + * everyone else do it here. + */ + if (!IS_VALLEYVIEW(dev_priv)) + intel_hpd_init(dev_priv); + intel_enable_gt_powersave(dev); if (ret)