diff options
Diffstat (limited to 'src/radeon.h')
-rw-r--r-- | src/radeon.h | 17 |
1 files changed, 12 insertions, 5 deletions
diff --git a/src/radeon.h b/src/radeon.h index aba3c0f2..9c83a4fb 100644 --- a/src/radeon.h +++ b/src/radeon.h @@ -998,11 +998,18 @@ do { \ info->needCacheFlush = FALSE; \ } \ RADEON_WAIT_UNTIL_IDLE(); \ - BEGIN_RING(6); \ - OUT_RING_REG(RADEON_RE_TOP_LEFT, info->re_top_left); \ - OUT_RING_REG(RADEON_RE_WIDTH_HEIGHT, info->re_width_height); \ - OUT_RING_REG(RADEON_AUX_SC_CNTL, info->aux_sc_cntl); \ - ADVANCE_RING(); \ + if (info->ChipFamily <= CHIP_FAMILY_RV280) { \ + BEGIN_RING(6); \ + OUT_RING_REG(RADEON_RE_TOP_LEFT, info->re_top_left); \ + OUT_RING_REG(RADEON_RE_WIDTH_HEIGHT, info->re_width_height); \ + OUT_RING_REG(RADEON_AUX_SC_CNTL, info->aux_sc_cntl); \ + ADVANCE_RING(); \ + } else { \ + BEGIN_RING(4); \ + OUT_RING_REG(R300_SC_SCISSOR0, info->re_top_left); \ + OUT_RING_REG(R300_SC_SCISSOR1, info->re_width_height); \ + ADVANCE_RING(); \ + } \ info->CPInUse = TRUE; \ } \ } while (0) |