summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichel Dänzer <michel@tungstengraphics.com>2007-06-15 10:25:50 +0200
committerMichel Dänzer <michel@tungstengraphics.com>2007-06-15 10:25:50 +0200
commit82e2c3304d3f1697537b73a2c888c8c6b1b6cdc8 (patch)
tree35ac4019b776499da31220d295dd4607a56c3284
parent914a810a82af6f82e69a94448570772f20a94953 (diff)
Wake up vblank waitqueue in drm_handle_vblank().
-rw-r--r--linux-core/drm_irq.c1
-rw-r--r--shared-core/i915_irq.c2
2 files changed, 1 insertions, 2 deletions
diff --git a/linux-core/drm_irq.c b/linux-core/drm_irq.c
index b4e3c10f9..3dcde9a5b 100644
--- a/linux-core/drm_irq.c
+++ b/linux-core/drm_irq.c
@@ -617,6 +617,7 @@ static void drm_vbl_send_signals(drm_device_t * dev, int crtc)
void drm_handle_vblank(drm_device_t *dev, int crtc)
{
drm_update_vblank_count(dev, crtc);
+ DRM_WAKEUP(&dev->vbl_queue);
drm_vbl_send_signals(dev, crtc);
}
EXPORT_SYMBOL(drm_handle_vblank);
diff --git a/shared-core/i915_irq.c b/shared-core/i915_irq.c
index 9861af978..00400fa2f 100644
--- a/shared-core/i915_irq.c
+++ b/shared-core/i915_irq.c
@@ -345,8 +345,6 @@ irqreturn_t i915_driver_irq_handler(DRM_IRQ_ARGS)
drm_handle_vblank(dev, 1);
if (temp & (VSYNC_PIPEA_FLAG | VSYNC_PIPEB_FLAG)) {
- DRM_WAKEUP(&dev->vbl_queue);
-
if (dev_priv->swaps_pending > 0)
drm_locked_tasklet(dev, i915_vblank_tasklet);
I915_WRITE(I915REG_PIPEASTAT,