diff options
author | Dave Airlie <airlied@gmail.com> | 2012-09-21 06:50:40 +1000 |
---|---|---|
committer | Dave Airlie <airlied@gmail.com> | 2012-09-21 06:50:40 +1000 |
commit | 8e910d08a2fd61e3c0baf82042c6f0e0a9773df4 (patch) | |
tree | 6a2ee3eac1a370bdc776eab0eca60750612533a3 | |
parent | 18d4dbd8866a34507d52495207ef5fcec6d41049 (diff) | |
parent | 16c58081eb95e35f284421176f355eccfc773bbe (diff) |
Merge branch 'drm-fixes-3.6' of git://people.freedesktop.org/~agd5f/linux into drm-fixes
fixes a resume regression on pre-r6xx asics.
* 'drm-fixes-3.6' of git://people.freedesktop.org/~agd5f/linux:
drm/radeon: Prevent leak of scratch register on resume from suspend
-rw-r--r-- | drivers/gpu/drm/radeon/r100.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/gpu/drm/radeon/r100.c b/drivers/gpu/drm/radeon/r100.c index 8acb34fd3fd5..8d7e33a0b243 100644 --- a/drivers/gpu/drm/radeon/r100.c +++ b/drivers/gpu/drm/radeon/r100.c @@ -1182,7 +1182,8 @@ int r100_cp_init(struct radeon_device *rdev, unsigned ring_size) ring->ready = true; radeon_ttm_set_active_vram_size(rdev, rdev->mc.real_vram_size); - if (radeon_ring_supports_scratch_reg(rdev, ring)) { + if (!ring->rptr_save_reg /* not resuming from suspend */ + && radeon_ring_supports_scratch_reg(rdev, ring)) { r = radeon_scratch_get(rdev, &ring->rptr_save_reg); if (r) { DRM_ERROR("failed to get scratch reg for rptr save (%d).\n", r); |