From: Dave Airlie Date: Sat, 18 Feb 2006 04:17:04 +0000 (+1100) Subject: drm: fixup i915 interrupt on X server exit X-Git-Tag: v2.6.16-rc5~69^2~2 X-Git-Url: http://pilppa.com/gitweb/?a=commitdiff_plain;h=91e3738ebc6d858e784090382e02afeae5a93b08;p=linux-2.6-omap-h63xx.git drm: fixup i915 interrupt on X server exit Fixes: IRQ disabled (i915?) when switchig between gnome themes (gnome-theme-manager) Signed-off-by: Dave Airlie --- diff --git a/drivers/char/drm/i915_irq.c b/drivers/char/drm/i915_irq.c index a1381c61aa6..d3879ac9970 100644 --- a/drivers/char/drm/i915_irq.c +++ b/drivers/char/drm/i915_irq.c @@ -202,10 +202,15 @@ void i915_driver_irq_postinstall(drm_device_t * dev) void i915_driver_irq_uninstall(drm_device_t * dev) { drm_i915_private_t *dev_priv = (drm_i915_private_t *) dev->dev_private; + u16 temp; + if (!dev_priv) return; I915_WRITE16(I915REG_HWSTAM, 0xffff); I915_WRITE16(I915REG_INT_MASK_R, 0xffff); I915_WRITE16(I915REG_INT_ENABLE_R, 0x0); + + temp = I915_READ16(I915REG_INT_IDENTITY_R); + I915_WRITE16(I915REG_INT_IDENTITY_R, temp); }