]> git.hungrycats.org Git - linux/commitdiff
drm/radeon/evergreen+: wait for the MC to settle after MC blackout
authorAlex Deucher <alexander.deucher@amd.com>
Thu, 31 Jan 2013 14:00:52 +0000 (09:00 -0500)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 11 Feb 2013 16:47:17 +0000 (08:47 -0800)
commit ed39fadd6df01095378e499fac3674883f16b853 upstream.

Some chips seem to need a little delay after blacking out
the MC before the requests actually stop.

May fix:
https://bugs.freedesktop.org/show_bug.cgi?id=56139
https://bugs.freedesktop.org/show_bug.cgi?id=57567

Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/gpu/drm/radeon/evergreen.c

index 4a1d8f3457ccf84d3bdaa23a70bbc4b4033542e5..e664e0414c6f93d8beab759872b1260a56fb2cd7 100644 (file)
@@ -1179,6 +1179,8 @@ void evergreen_mc_stop(struct radeon_device *rdev, struct evergreen_mc_save *sav
                blackout &= ~BLACKOUT_MODE_MASK;
                WREG32(MC_SHARED_BLACKOUT_CNTL, blackout | 1);
        }
+       /* wait for the MC to settle */
+       udelay(100);
 }
 
 void evergreen_mc_resume(struct radeon_device *rdev, struct evergreen_mc_save *save)