diff options
| author | Alex Deucher <alexdeucher@gmail.com> | 2009-09-25 10:06:39 -0400 |
|---|---|---|
| committer | Dave Airlie <airlied@linux.ie> | 2009-09-25 17:48:58 -0400 |
| commit | 974b16e33ea626c9854f0f34fa5455a18822e159 (patch) | |
| tree | b82c9598763a99a6499e1684520796c10b19dc9a | |
| parent | 8ef8678c8f6131ca5941fa387cd3939c68c4f36d (diff) | |
drm/radeon/kms/r600: clamp vram to aperture size
r6xx and r7xx was missing this. We don't support
non-CPU accessible vram yet.
Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
Signed-off-by: Dave Airlie <airlied@linux.ie>
| -rw-r--r-- | drivers/gpu/drm/radeon/r600.c | 7 | ||||
| -rw-r--r-- | drivers/gpu/drm/radeon/rv770.c | 7 |
2 files changed, 14 insertions, 0 deletions
diff --git a/drivers/gpu/drm/radeon/r600.c b/drivers/gpu/drm/radeon/r600.c index 5f42fad19190..c7233ad5dd94 100644 --- a/drivers/gpu/drm/radeon/r600.c +++ b/drivers/gpu/drm/radeon/r600.c | |||
| @@ -380,6 +380,13 @@ int r600_mc_init(struct radeon_device *rdev) | |||
| 380 | /* Setup GPU memory space */ | 380 | /* Setup GPU memory space */ |
| 381 | rdev->mc.mc_vram_size = RREG32(CONFIG_MEMSIZE); | 381 | rdev->mc.mc_vram_size = RREG32(CONFIG_MEMSIZE); |
| 382 | rdev->mc.real_vram_size = RREG32(CONFIG_MEMSIZE); | 382 | rdev->mc.real_vram_size = RREG32(CONFIG_MEMSIZE); |
| 383 | |||
| 384 | if (rdev->mc.mc_vram_size > rdev->mc.aper_size) | ||
| 385 | rdev->mc.mc_vram_size = rdev->mc.aper_size; | ||
| 386 | |||
| 387 | if (rdev->mc.real_vram_size > rdev->mc.aper_size) | ||
| 388 | rdev->mc.real_vram_size = rdev->mc.aper_size; | ||
| 389 | |||
| 383 | if (rdev->flags & RADEON_IS_AGP) { | 390 | if (rdev->flags & RADEON_IS_AGP) { |
| 384 | r = radeon_agp_init(rdev); | 391 | r = radeon_agp_init(rdev); |
| 385 | if (r) | 392 | if (r) |
diff --git a/drivers/gpu/drm/radeon/rv770.c b/drivers/gpu/drm/radeon/rv770.c index b574c73a5109..efca509b24f6 100644 --- a/drivers/gpu/drm/radeon/rv770.c +++ b/drivers/gpu/drm/radeon/rv770.c | |||
| @@ -801,6 +801,13 @@ int rv770_mc_init(struct radeon_device *rdev) | |||
| 801 | /* Setup GPU memory space */ | 801 | /* Setup GPU memory space */ |
| 802 | rdev->mc.mc_vram_size = RREG32(CONFIG_MEMSIZE); | 802 | rdev->mc.mc_vram_size = RREG32(CONFIG_MEMSIZE); |
| 803 | rdev->mc.real_vram_size = RREG32(CONFIG_MEMSIZE); | 803 | rdev->mc.real_vram_size = RREG32(CONFIG_MEMSIZE); |
| 804 | |||
| 805 | if (rdev->mc.mc_vram_size > rdev->mc.aper_size) | ||
| 806 | rdev->mc.mc_vram_size = rdev->mc.aper_size; | ||
| 807 | |||
| 808 | if (rdev->mc.real_vram_size > rdev->mc.aper_size) | ||
| 809 | rdev->mc.real_vram_size = rdev->mc.aper_size; | ||
| 810 | |||
| 804 | if (rdev->flags & RADEON_IS_AGP) { | 811 | if (rdev->flags & RADEON_IS_AGP) { |
| 805 | r = radeon_agp_init(rdev); | 812 | r = radeon_agp_init(rdev); |
| 806 | if (r) | 813 | if (r) |
