summaryrefslogtreecommitdiffstats
path: root/drivers/gpu
diff options
context:
space:
mode:
authorDave Airlie <airlied@redhat.com>2009-10-27 11:57:53 +1100
committerDave Airlie <airlied@redhat.com>2009-10-28 16:01:58 +1000
commitea1495a6274c9542a168337536f8ce74d1173f23 (patch)
treed4d6e627ec4df562428ef90bc7e8e515a2fde570 /drivers/gpu
parentfc7f7119d2ed97fff1aaddad6bf7d61ed446cf37 (diff)
downloadop-kernel-dev-ea1495a6274c9542a168337536f8ce74d1173f23.zip
op-kernel-dev-ea1495a6274c9542a168337536f8ce74d1173f23.tar.gz
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>
Diffstat (limited to 'drivers/gpu')
-rw-r--r--drivers/gpu/drm/radeon/rs400.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/gpu/drm/radeon/rs400.c b/drivers/gpu/drm/radeon/rs400.c
index a769c29..ca03716 100644
--- a/drivers/gpu/drm/radeon/rs400.c
+++ b/drivers/gpu/drm/radeon/rs400.c
@@ -418,6 +418,8 @@ int rs400_resume(struct radeon_device *rdev)
rs400_gart_disable(rdev);
/* Resume clock before doing reset */
r300_clock_startup(rdev);
+ /* setup MC before calling post tables */
+ rs400_mc_program(rdev);
/* Reset gpu before posting otherwise ATOM will enter infinite loop */
if (radeon_gpu_reset(rdev)) {
dev_warn(rdev->dev, "GPU reset failed ! (0xE40=0x%08X, 0x7C0=0x%08X)\n",
OpenPOWER on IntegriCloud