aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/radeon/r600.c
diff options
context:
space:
mode:
authorAlex Deucher <alexdeucher@gmail.com>2010-06-30 12:02:03 -0400
committerDave Airlie <airlied@redhat.com>2010-06-30 21:59:42 -0400
commitf892034a8ce80ed7098f667aae2eb6300e570603 (patch)
tree0726b5dfb12cf3adfea88c5e9949c21528ff4ff2 /drivers/gpu/drm/radeon/r600.c
parent580b4fffbbdc3c899ee1f8189ba321bd60b48840 (diff)
drm/radeon/kms/igp: fix possible divide by 0 in bandwidth code (v2)
Some IGP systems specify the system memory clock in the Firmware table rather than the IGP info table. Check both and make sure we have a value system memory clock value. v2: make sure rs690_pm_info is called on rs780/rs880 as well. fixes a regression since 07d4190327b02ab3aaad25a2d168f79d92e8f8c2. Reported-by: Markus Trippelsdorf <markus@trippelsdorf.de> Signed-off-by: Alex Deucher <alexdeucher@gmail.com> Tested-by: Markus Trippelsdorf <markus@trippelsdorf.de> Signed-off-by: Dave Airlie <airlied@redhat.com>
Diffstat (limited to 'drivers/gpu/drm/radeon/r600.c')
-rw-r--r--drivers/gpu/drm/radeon/r600.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/gpu/drm/radeon/r600.c b/drivers/gpu/drm/radeon/r600.c
index b32064dad95d..90f28175a7bc 100644
--- a/drivers/gpu/drm/radeon/r600.c
+++ b/drivers/gpu/drm/radeon/r600.c
@@ -1219,8 +1219,10 @@ int r600_mc_init(struct radeon_device *rdev)
1219 rdev->mc.visible_vram_size = rdev->mc.aper_size; 1219 rdev->mc.visible_vram_size = rdev->mc.aper_size;
1220 r600_vram_gtt_location(rdev, &rdev->mc); 1220 r600_vram_gtt_location(rdev, &rdev->mc);
1221 1221
1222 if (rdev->flags & RADEON_IS_IGP) 1222 if (rdev->flags & RADEON_IS_IGP) {
1223 rs690_pm_info(rdev);
1223 rdev->mc.igp_sideport_enabled = radeon_atombios_sideport_present(rdev); 1224 rdev->mc.igp_sideport_enabled = radeon_atombios_sideport_present(rdev);
1225 }
1224 radeon_update_bandwidth_info(rdev); 1226 radeon_update_bandwidth_info(rdev);
1225 return 0; 1227 return 0;
1226} 1228}