From 168757ea854b7dd8eac3962753ed75a542ebca92 Mon Sep 17 00:00:00 2001 From: Alex Deucher Date: Fri, 18 Jan 2013 19:17:22 -0500 Subject: drm/radeon: use status regs to determine what to reset (cayman) When we attempt the reset the GPU, look at the status registers to determine what blocks need to be reset. Signed-off-by: Alex Deucher --- drivers/gpu/drm/radeon/evergreen.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'drivers/gpu/drm/radeon/evergreen.c') diff --git a/drivers/gpu/drm/radeon/evergreen.c b/drivers/gpu/drm/radeon/evergreen.c index 8b73743b0b3..fd5e0025b65 100644 --- a/drivers/gpu/drm/radeon/evergreen.c +++ b/drivers/gpu/drm/radeon/evergreen.c @@ -2349,9 +2349,13 @@ void evergreen_print_gpu_status_regs(struct radeon_device *rdev) RREG32(CP_STAT)); dev_info(rdev->dev, " R_00D034_DMA_STATUS_REG = 0x%08X\n", RREG32(DMA_STATUS_REG)); + if (rdev->family >= CHIP_CAYMAN) { + dev_info(rdev->dev, " R_00D834_DMA_STATUS_REG = 0x%08X\n", + RREG32(DMA_STATUS_REG + 0x800)); + } } -static bool evergreen_is_display_hung(struct radeon_device *rdev) +bool evergreen_is_display_hung(struct radeon_device *rdev) { u32 crtc_hung = 0; u32 crtc_status[6]; -- cgit v1.2.3-70-g09d2