diff options
author | Bas Nieuwenhuizen <[email protected]> | 2010-05-19 18:46:45 +0200 |
---|---|---|
committer | Jerome Glisse <[email protected]> | 2010-05-27 23:24:22 +0200 |
commit | 9e8a6f801d360f85cc7bb53b85f15129b07b26da (patch) | |
tree | 12d5d3bd39ece8e88fa4016bfe815e09607583ff /src/gallium/drivers/r600/r600_context.c | |
parent | e68b4e50536b3438a3bb8c3d12acebc6845461a8 (diff) |
r600g: various fixes
- enabled flushing a buffer more than once
- enabled the blitter for r600_clear
- added some more colors to r600_is_format_supported (copied from r600_conv_pipe_format)
- r600_set_framebuffer_state now sets rctx->fb_state
- more states are saved before a blit (had to add some accounting for the viewport and the vertex elements state)
- fixed a few errors with reference counting
Diffstat (limited to 'src/gallium/drivers/r600/r600_context.c')
-rw-r--r-- | src/gallium/drivers/r600/r600_context.c | 8 |
1 files changed, 3 insertions, 5 deletions
diff --git a/src/gallium/drivers/r600/r600_context.c b/src/gallium/drivers/r600/r600_context.c index f4d4ed0d3ef..0d36641a8e2 100644 --- a/src/gallium/drivers/r600/r600_context.c +++ b/src/gallium/drivers/r600/r600_context.c @@ -50,9 +50,8 @@ static int dc = 0; if (radeon_ctx_pm4(rctx->ctx)) return; - if (dc) - return; - radeon_ctx_dump_bof(rctx->ctx, "gallium.bof"); + if (!dc) + radeon_ctx_dump_bof(rctx->ctx, "gallium.bof"); radeon_ctx_submit(rctx->ctx); rctx->ctx = radeon_ctx_decref(rctx->ctx); rctx->ctx = radeon_ctx(rscreen->rw); @@ -78,13 +77,12 @@ struct pipe_context *r600_create_context(struct pipe_screen *screen, void *priv) r600_init_query_functions(rctx); r600_init_state_functions(rctx); r600_init_context_resource_functions(rctx); -#if 0 + rctx->blitter = util_blitter_create(&rctx->context); if (rctx->blitter == NULL) { FREE(rctx); return NULL; } -#endif rctx->cb_cntl = radeon_state(rscreen->rw, R600_CB_CNTL_TYPE, R600_CB_CNTL); rctx->cb_cntl->states[R600_CB_CNTL__CB_SHADER_MASK] = 0x0000000F; |