From e2fdf559bc744ef34dadd8e4394a1400a36edb0c Mon Sep 17 00:00:00 2001 From: Alex Deucher Date: Tue, 9 Apr 2013 19:05:31 -0400 Subject: [PATCH] drm/radeon: fix frame wait in evergreen_mc_stop We weren't waiting long enough for the next frame to hit. May fix: https://bugs.freedesktop.org/show_bug.cgi?id=57567 https://bugs.freedesktop.org/show_bug.cgi?id=43655 https://bugzilla.kernel.org/show_bug.cgi?id=56441 Signed-off-by: Alex Deucher Cc: stable@vger.kernel.org --- drivers/gpu/drm/radeon/evergreen.c | 6 ++++-- 1 files changed, 4 insertions(+), 2 deletions(-) diff --git a/drivers/gpu/drm/radeon/evergreen.c b/drivers/gpu/drm/radeon/evergreen.c index 91aebc7..377c20e 100644 --- a/drivers/gpu/drm/radeon/evergreen.c +++ b/drivers/gpu/drm/radeon/evergreen.c @@ -2439,11 +2439,13 @@ void evergreen_mc_stop(struct radeon_device *rdev, struct evergreen_mc_save *sav } /* wait for the next frame */ frame_count = radeon_get_vblank_counter(rdev, i); - for (j = 0; j < rdev->usec_timeout; j++) { + for (j = 0; j < 1000; j++) { if (radeon_get_vblank_counter(rdev, i) != frame_count) break; - udelay(1); + mdelay(1); } + if (j == 1000) + DRM_ERROR("frame never updated!"); } else { save->crtc_enabled[i] = false; } -- 1.7.7.5