aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/omapdrm/omap_irq.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/gpu/drm/omapdrm/omap_irq.c')
-rw-r--r--drivers/gpu/drm/omapdrm/omap_irq.c14
1 files changed, 0 insertions, 14 deletions
diff --git a/drivers/gpu/drm/omapdrm/omap_irq.c b/drivers/gpu/drm/omapdrm/omap_irq.c
index 26a3c06aa14d..115104cdcc59 100644
--- a/drivers/gpu/drm/omapdrm/omap_irq.c
+++ b/drivers/gpu/drm/omapdrm/omap_irq.c
@@ -285,25 +285,11 @@ int omap_drm_irq_install(struct drm_device *dev)
285void omap_drm_irq_uninstall(struct drm_device *dev) 285void omap_drm_irq_uninstall(struct drm_device *dev)
286{ 286{
287 struct omap_drm_private *priv = dev->dev_private; 287 struct omap_drm_private *priv = dev->dev_private;
288 unsigned long irqflags;
289 int i;
290 288
291 if (!dev->irq_enabled) 289 if (!dev->irq_enabled)
292 return; 290 return;
293 291
294 dev->irq_enabled = false; 292 dev->irq_enabled = false;
295 293
296 /* Wake up any waiters so they don't hang. */
297 if (dev->num_crtcs) {
298 spin_lock_irqsave(&dev->vbl_lock, irqflags);
299 for (i = 0; i < dev->num_crtcs; i++) {
300 wake_up(&dev->vblank[i].queue);
301 dev->vblank[i].enabled = false;
302 dev->vblank[i].last =
303 dev->driver->get_vblank_counter(dev, i);
304 }
305 spin_unlock_irqrestore(&dev->vbl_lock, irqflags);
306 }
307
308 priv->dispc_ops->free_irq(dev); 294 priv->dispc_ops->free_irq(dev);
309} 295}