[PATCH 2/2] drm/radeon: Make sure the correct TA bit is used for R700

Lauri Kasanen cand at gmx.com
Sat Jul 7 04:09:31 PDT 2012


The declarations were moved around because of a GCC warning,
"ISO C90 forbids mixed declarations and code". (why so strict?)

Signed-off-by: Lauri Kasanen <cand at gmx.com>
---
 drivers/gpu/drm/radeon/r600.c |   16 ++++++++++++----
 1 files changed, 12 insertions(+), 4 deletions(-)

diff --git a/drivers/gpu/drm/radeon/r600.c b/drivers/gpu/drm/radeon/r600.c
index bff6272..c77cdba 100644
--- a/drivers/gpu/drm/radeon/r600.c
+++ b/drivers/gpu/drm/radeon/r600.c
@@ -1278,15 +1278,24 @@ void r600_vram_scratch_fini(struct radeon_device *rdev)
 int r600_gpu_soft_reset(struct radeon_device *rdev)
 {
 	struct rv515_mc_save save;
-	u32 grbm_busy_mask = S_008010_VC_BUSY(1) | S_008010_VGT_BUSY_NO_DMA(1) |
-				S_008010_VGT_BUSY(1) | S_008010_TA03_BUSY(1) |
+	u32 grbm_busy_mask;
+	u32 grbm2_busy_mask;
+	u32 tmp;
+
+	u32 ta_busy = S_008010_TA03_BUSY(1);
+
+	if (rdev->family >= CHIP_RV770)
+		ta_busy = S_008010_R700_TA03_BUSY(1);
+
+	grbm_busy_mask = S_008010_VC_BUSY(1) | S_008010_VGT_BUSY_NO_DMA(1) |
+				S_008010_VGT_BUSY(1) | ta_busy |
 				S_008010_TC_BUSY(1) | S_008010_SX_BUSY(1) |
 				S_008010_SH_BUSY(1) | S_008010_SPI03_BUSY(1) |
 				S_008010_SMX_BUSY(1) | S_008010_SC_BUSY(1) |
 				S_008010_PA_BUSY(1) | S_008010_DB03_BUSY(1) |
 				S_008010_CR_BUSY(1) | S_008010_CB03_BUSY(1) |
 				S_008010_GUI_ACTIVE(1);
-	u32 grbm2_busy_mask = S_008014_SPI0_BUSY(1) | S_008014_SPI1_BUSY(1) |
+	grbm2_busy_mask = S_008014_SPI0_BUSY(1) | S_008014_SPI1_BUSY(1) |
 			S_008014_SPI2_BUSY(1) | S_008014_SPI3_BUSY(1) |
 			S_008014_TA0_BUSY(1) | S_008014_TA1_BUSY(1) |
 			S_008014_TA2_BUSY(1) | S_008014_TA3_BUSY(1) |
@@ -1294,7 +1303,6 @@ int r600_gpu_soft_reset(struct radeon_device *rdev)
 			S_008014_DB2_BUSY(1) | S_008014_DB3_BUSY(1) |
 			S_008014_CB0_BUSY(1) | S_008014_CB1_BUSY(1) |
 			S_008014_CB2_BUSY(1) | S_008014_CB3_BUSY(1);
-	u32 tmp;
 
 	if (!(RREG32(GRBM_STATUS) & GUI_ACTIVE))
 		return 0;
-- 
1.7.2.1



More information about the dri-devel mailing list