summaryrefslogtreecommitdiff
path: root/src/gallium/drivers/r300/r300_blit.c
diff options
context:
space:
mode:
authorCorbin Simpson <MostAwesomeDude@gmail.com>2009-01-09 14:54:08 -0800
committerCorbin Simpson <MostAwesomeDude@gmail.com>2009-02-01 23:30:21 -0800
commit78b599fb4cac469f4208ae3057b2a33e3e9913c6 (patch)
treea27239f3b4a49b291355d1885bd5c040d93fb541 /src/gallium/drivers/r300/r300_blit.c
parentad14271425185c3535c389ca5bcd2d30c3368c32 (diff)
gallium-r300: Add primitive CS.
Enough to get us up and running, I suppose. This needs to be pushed down into winsys!
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;
}