Browse Source

drm/radeon/kms: fix rc410 suspend/resume.

This fixes suspend/resume on my rc410 motherboard, it restores
the memory controller setup before posting the GPU, since it seems
to need the MC_FB_LOCATION setup correctly.

Signed-off-by: Dave Airlie <airlied@redhat.com>
Dave Airlie 15 years ago
parent
commit
ea1495a627
1 changed files with 2 additions and 0 deletions
  1. 2 0
      drivers/gpu/drm/radeon/rs400.c

+ 2 - 0
drivers/gpu/drm/radeon/rs400.c

@@ -418,6 +418,8 @@ int rs400_resume(struct radeon_device *rdev)
 	rs400_gart_disable(rdev);
 	rs400_gart_disable(rdev);
 	/* Resume clock before doing reset */
 	/* Resume clock before doing reset */
 	r300_clock_startup(rdev);
 	r300_clock_startup(rdev);
+	/* setup MC before calling post tables */
+	rs400_mc_program(rdev);
 	/* Reset gpu before posting otherwise ATOM will enter infinite loop */
 	/* Reset gpu before posting otherwise ATOM will enter infinite loop */
 	if (radeon_gpu_reset(rdev)) {
 	if (radeon_gpu_reset(rdev)) {
 		dev_warn(rdev->dev, "GPU reset failed ! (0xE40=0x%08X, 0x7C0=0x%08X)\n",
 		dev_warn(rdev->dev, "GPU reset failed ! (0xE40=0x%08X, 0x7C0=0x%08X)\n",