diff mbox series

drm/i915: Restore interrupt enabling after a reset

Message ID 20190218091056.21989-1-chris@chris-wilson.co.uk (mailing list archive)
State New, archived
Headers show
Series drm/i915: Restore interrupt enabling after a reset | expand

Commit Message

Chris Wilson Feb. 18, 2019, 9:10 a.m. UTC
At least on i965g and i965gm, performing a device reset clobbers the IER
resulting in loss of interrupts thereafter. So, run the irq_postinstall
hook to restore them.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
---
 drivers/gpu/drm/i915/i915_reset.c | 3 +++
 1 file changed, 3 insertions(+)
diff mbox series

Patch

diff --git a/drivers/gpu/drm/i915/i915_reset.c b/drivers/gpu/drm/i915/i915_reset.c
index 5a067a4b3d5d..f3b756d2b61b 100644
--- a/drivers/gpu/drm/i915/i915_reset.c
+++ b/drivers/gpu/drm/i915/i915_reset.c
@@ -685,6 +685,9 @@  static int gt_reset(struct drm_i915_private *i915, unsigned int stalled_mask)
 	if (err)
 		return err;
 
+	if (INTEL_INFO(i915)->gpu_reset_clobbers_display)
+		i915->drm.driver->irq_postinstall(&i915->drm);
+
 	for_each_engine(engine, i915, id)
 		intel_engine_reset(engine, stalled_mask & ENGINE_MASK(id));