diff options
author | Daniel Vetter <daniel.vetter@ffwll.ch> | 2012-12-01 15:03:21 -0500 |
---|---|---|
committer | Daniel Vetter <daniel.vetter@ffwll.ch> | 2012-12-06 07:14:35 -0500 |
commit | 61bac78e03d4385e225cb2837e33974feda489c2 (patch) | |
tree | ddd61e8727996cef5b33cb26d8277ae88a3b31e2 /drivers/gpu/drm/i915/i915_irq.c | |
parent | d83779a9cb9374977c1c05364b4d7dfe9ec68ef3 (diff) |
drm/i915: setup the hangcheck timer early
... together with all the other irq related resources in
intel_irq_init. I've managed to oops in the notify_ring function on my
ilk, presumably because of the powerctx setup call to i915_gpu_idle.
Note that this is only a problem with the reorder irq setup sequence
for irq-driver gmbus/dp aux.
Reviewed-by: Imre Deak <imre.deak@intel.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Diffstat (limited to 'drivers/gpu/drm/i915/i915_irq.c')
-rw-r--r-- | drivers/gpu/drm/i915/i915_irq.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/gpu/drm/i915/i915_irq.c b/drivers/gpu/drm/i915/i915_irq.c index 935b6b7bae73..568820bf4587 100644 --- a/drivers/gpu/drm/i915/i915_irq.c +++ b/drivers/gpu/drm/i915/i915_irq.c | |||
@@ -2687,6 +2687,9 @@ void intel_irq_init(struct drm_device *dev) | |||
2687 | INIT_WORK(&dev_priv->rps.work, gen6_pm_rps_work); | 2687 | INIT_WORK(&dev_priv->rps.work, gen6_pm_rps_work); |
2688 | INIT_WORK(&dev_priv->l3_parity.error_work, ivybridge_parity_work); | 2688 | INIT_WORK(&dev_priv->l3_parity.error_work, ivybridge_parity_work); |
2689 | 2689 | ||
2690 | setup_timer(&dev_priv->hangcheck_timer, i915_hangcheck_elapsed, | ||
2691 | (unsigned long) dev); | ||
2692 | |||
2690 | dev->driver->get_vblank_counter = i915_get_vblank_counter; | 2693 | dev->driver->get_vblank_counter = i915_get_vblank_counter; |
2691 | dev->max_vblank_count = 0xffffff; /* only 24 bits of frame count */ | 2694 | dev->max_vblank_count = 0xffffff; /* only 24 bits of frame count */ |
2692 | if (IS_G4X(dev) || INTEL_INFO(dev)->gen >= 5) { | 2695 | if (IS_G4X(dev) || INTEL_INFO(dev)->gen >= 5) { |