drm/radeon/cik: properly set sdma ring status on disable
authorAlex Deucher <alexander.deucher@amd.com>
Wed, 12 Mar 2014 19:15:58 +0000 (15:15 -0400)
committerJiri Slaby <jslaby@suse.cz>
Sat, 22 Mar 2014 21:02:00 +0000 (22:02 +0100)
commit 7b1bbe883b3ed962ca2be4daf321f318f5091340 upstream.

When we disable the rings, set the status properly.  If
not other code pathes may try and use the rings which are
not functional at this point.

Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Signed-off-by: Jiri Slaby <jslaby@suse.cz>
drivers/gpu/drm/radeon/cik_sdma.c

index aaf7ffc..c0c9b1b 100644 (file)
@@ -174,6 +174,8 @@ static void cik_sdma_gfx_stop(struct radeon_device *rdev)
                WREG32(SDMA0_GFX_RB_CNTL + reg_offset, rb_cntl);
                WREG32(SDMA0_GFX_IB_CNTL + reg_offset, 0);
        }
+       rdev->ring[R600_RING_TYPE_DMA_INDEX].ready = false;
+       rdev->ring[CAYMAN_RING_TYPE_DMA1_INDEX].ready = false;
 }
 
 /**