aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJesse Barnes <jbarnes@virtuousgeek.org>2010-08-24 14:31:16 -0400
committerLinus Torvalds <torvalds@linux-foundation.org>2010-08-24 14:41:08 -0400
commit9559fcdbff4f93d29af04478bbc48294519424f5 (patch)
tree708465ed6fdbe18d88fff781bc447de98ec85780
parentf4e385ccfc10f44364101b126d1ac52b4c806f1d (diff)
drm/i915: fix vblank wait test condition
When converting this to the new wait_for macro I inverted the wait condition, which causes all sorts of problems. So correct it to fix several failures caused by the bad wait (flickering, bad output detection, tearing, etc.). Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk> Tested-by: Sitsofe Wheeler <sitsofe@yahoo.com> Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
-rw-r--r--drivers/gpu/drm/i915/intel_display.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
index 23157e1de3be..11a3394f5fe1 100644
--- a/drivers/gpu/drm/i915/intel_display.c
+++ b/drivers/gpu/drm/i915/intel_display.c
@@ -992,7 +992,7 @@ void intel_wait_for_vblank(struct drm_device *dev, int pipe)
992 992
993 /* Wait for vblank interrupt bit to set */ 993 /* Wait for vblank interrupt bit to set */
994 if (wait_for((I915_READ(pipestat_reg) & 994 if (wait_for((I915_READ(pipestat_reg) &
995 PIPE_VBLANK_INTERRUPT_STATUS) == 0, 995 PIPE_VBLANK_INTERRUPT_STATUS),
996 50, 0)) 996 50, 0))
997 DRM_DEBUG_KMS("vblank wait timed out\n"); 997 DRM_DEBUG_KMS("vblank wait timed out\n");
998} 998}