summaryrefslogtreecommitdiff
path: root/src/gallium/drivers/r300/r300_blit.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/gallium/drivers/r300/r300_blit.c')
-rw-r--r--src/gallium/drivers/r300/r300_blit.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/gallium/drivers/r300/r300_blit.c b/src/gallium/drivers/r300/r300_blit.c
index 415e6e0a16..c404a667b1 100644
--- a/src/gallium/drivers/r300/r300_blit.c
+++ b/src/gallium/drivers/r300/r300_blit.c
@@ -33,6 +33,7 @@ int r300_fill_blit(struct r300_context* r300,
short w, short h,
unsigned color)
{
+ CS_LOCALS(r300);
uint32_t dest_type;
/* Check for fallbacks. */
@@ -56,6 +57,8 @@ int r300_fill_blit(struct r300_context* r300,
/* XXX odds are *incredibly* good that we were in 3D just a bit ago,
* so flush here first. */
+ BEGIN_CS(10 + 2 + 2);
+
/* Set up the 2D engine. */
OUT_CS_REG(RADEON_DEFAULT_SC_BOTTOM_RIGHT,
RADEON_DEFAULT_SC_RIGHT_MAX | RADEON_DEFAULT_SC_BOTTOM_MAX);
@@ -86,5 +89,8 @@ int r300_fill_blit(struct r300_context* r300,
OUT_CS_REG(RADEON_DSTCACHE_CTLSTAT, RADEON_RB2D_DC_FLUSH_ALL);
OUT_CS_REG(RADEON_WAIT_UNTIL,
RADEON_WAIT_2D_IDLECLEAN | RADEON_WAIT_DMA_GUI_IDLE);
+
+ END_CS;
+
return 1;
}