drm/i915: Reset the breadcrumbs IRQ more carefully
authorChris Wilson <chris@chris-wilson.co.uk>
Fri, 7 Oct 2016 06:53:26 +0000 (07:53 +0100)
committerChris Wilson <chris@chris-wilson.co.uk>
Fri, 7 Oct 2016 07:27:23 +0000 (08:27 +0100)
commitad07dfcddf1394e6fed094e7fb426b4242a6814e
tree60122b41d94bebe6120feaad0719abc9c85433cc
parentd7f7633557503bd231347d8896b9a6fb08f84e00
drm/i915: Reset the breadcrumbs IRQ more carefully

Along with the interrupt, we want to restore the fake-irq and
wait-timeout detection. If we use the breadcrumbs interface to setup the
interrupt as it wants, the auxiliary timers will also be restored.

v2: Cancel both timers as well, sanitize the IMR.

Fixes: 821ed7df6e2a ("drm/i915: Update reset path to fix incomplete requests")
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Mika Kuoppala <mika.kuoppala@intel.com>
Reviewed-by: Mika Kuoppala <mika.kuoppala@intel.com>
Link: http://patchwork.freedesktop.org/patch/msgid/20161007065327.24515-3-chris@chris-wilson.co.uk
drivers/gpu/drm/i915/intel_breadcrumbs.c
drivers/gpu/drm/i915/intel_engine_cs.c
drivers/gpu/drm/i915/intel_lrc.c
drivers/gpu/drm/i915/intel_ringbuffer.c
drivers/gpu/drm/i915/intel_ringbuffer.h