OSDN Git Service

drm/i915/vlv: use PIPE_START_VBLANK interrupts on VLV
authorJesse Barnes <jbarnes@virtuousgeek.org>
Tue, 5 Nov 2013 23:48:01 +0000 (15:48 -0800)
committerDaniel Vetter <daniel.vetter@ffwll.ch>
Wed, 6 Nov 2013 07:37:07 +0000 (08:37 +0100)
This fixes a mismatch between our vblank enable code and our IRQ
handler.  Also, since vblank start events come in before page flips
reliably, it also fixes the kms_flip plain-flip test on my BYT system.

Spotted-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
drivers/gpu/drm/i915/i915_irq.c

index a228176..1b3f060 100644 (file)
@@ -1353,7 +1353,7 @@ static irqreturn_t valleyview_irq_handler(int irq, void *arg)
                spin_unlock_irqrestore(&dev_priv->irq_lock, irqflags);
 
                for_each_pipe(pipe) {
-                       if (pipe_stats[pipe] & PIPE_VBLANK_INTERRUPT_STATUS)
+                       if (pipe_stats[pipe] & PIPE_START_VBLANK_INTERRUPT_STATUS)
                                drm_handle_vblank(dev, pipe);
 
                        if (pipe_stats[pipe] & PLANE_FLIPDONE_INT_STATUS_VLV) {