drm/i915: split irq handling into per-chipset functions
[pandora-kernel.git] / drivers / gpu / drm / i915 / i915_dma.c
index b1ddcdc..a3ee159 100644 (file)
@@ -1266,6 +1266,18 @@ static int i915_load_modeset_init(struct drm_device *dev)
 
        intel_modeset_gem_init(dev);
 
 
        intel_modeset_gem_init(dev);
 
+       if (HAS_PCH_SPLIT(dev)) {
+               dev->driver->irq_handler = ironlake_irq_handler;
+               dev->driver->irq_preinstall = ironlake_irq_preinstall;
+               dev->driver->irq_postinstall = ironlake_irq_postinstall;
+               dev->driver->irq_uninstall = ironlake_irq_uninstall;
+       } else {
+               dev->driver->irq_preinstall = i915_driver_irq_preinstall;
+               dev->driver->irq_postinstall = i915_driver_irq_postinstall;
+               dev->driver->irq_uninstall = i915_driver_irq_uninstall;
+               dev->driver->irq_handler = i915_driver_irq_handler;
+       }
+
        ret = drm_irq_install(dev);
        if (ret)
                goto cleanup_gem;
        ret = drm_irq_install(dev);
        if (ret)
                goto cleanup_gem;