drm/radeon: record what is next valid wptr for each ring v4
[linux-2.6-block.git] / drivers / gpu / drm / radeon / rv770.c
index b4b1256fb15b44f8b10e1f040a67eed7f1910c43..eb4704e72bdbb33b519774aa899153cc977f95f4 100644 (file)
@@ -358,8 +358,10 @@ static int rv770_cp_load_microcode(struct radeon_device *rdev)
 
 void r700_cp_fini(struct radeon_device *rdev)
 {
+       struct radeon_ring *ring = &rdev->ring[RADEON_RING_TYPE_GFX_INDEX];
        r700_cp_stop(rdev);
-       radeon_ring_fini(rdev, &rdev->ring[RADEON_RING_TYPE_GFX_INDEX]);
+       radeon_ring_fini(rdev, ring);
+       radeon_scratch_free(rdev, ring->rptr_save_reg);
 }
 
 /*