because that's what it does.
/* The vertex instructions in the compute shaders use the texture cache,
* so we need to invalidate it. */
- rctx->flags |= R600_CONTEXT_GPU_FLUSH;
+ rctx->flags |= R600_CONTEXT_INVAL_READ_CACHES;
state->enabled_mask |= 1 << vb_index;
state->dirty_mask |= 1 << vb_index;
state->atom.dirty = true;
/* XXX evergreen_flush_emit() hardcodes the CP_COHER_SIZE to 0xffffffff
*/
- ctx->flags |= R600_CONTEXT_GPU_FLUSH;
+ ctx->flags |= R600_CONTEXT_INVAL_READ_CACHES;
r600_flush_emit(ctx);
#if 0
r600_write_value(cs, r600_context_bo_reloc(rctx, kernel->code_bo,
RADEON_USAGE_READ));
- rctx->flags |= R600_CONTEXT_GPU_FLUSH;
+ rctx->flags |= R600_CONTEXT_INVAL_READ_CACHES;
}
static void evergreen_launch_grid(
util_format_get_blockwidth(tmp->resource.b.b.format) *
view->base.texture->width0*height*depth;
- pipe->ctx->flags |= R600_CONTEXT_GPU_FLUSH;
+ pipe->ctx->flags |= R600_CONTEXT_INVAL_READ_CACHES;
evergreen_emit_force_reloc(res);
evergreen_emit_force_reloc(res);
res->usage = RADEON_USAGE_READ;
res->coher_bo_size = size;
- pipe->ctx->flags |= R600_CONTEXT_GPU_FLUSH;
+ pipe->ctx->flags |= R600_CONTEXT_INVAL_READ_CACHES;
}
struct r600_resource* r600_compute_buffer_alloc_vram(
unsigned so_index;
};
-#define R600_CONTEXT_GPU_FLUSH (1 << 0)
+#define R600_CONTEXT_INVAL_READ_CACHES (1 << 0)
#define R600_CONTEXT_STREAMOUT_FLUSH (1 << 1)
#define R600_CONTEXT_WAIT_IDLE (1 << 2)
#define R600_CONTEXT_FLUSH_AND_INV (1 << 3)
}
}
- if (rctx->flags & R600_CONTEXT_GPU_FLUSH) {
+ if (rctx->flags & R600_CONTEXT_INVAL_READ_CACHES) {
cp_coher_cntl |= S_0085F0_VC_ACTION_ENA(1) |
S_0085F0_TC_ACTION_ENA(1) |
S_0085F0_FULL_CACHE_ENA(1);
struct r600_context *rctx = (struct r600_context *)ctx;
rctx->flags |= R600_CONTEXT_WAIT_IDLE;
- rctx->flags |= R600_CONTEXT_GPU_FLUSH;
+ rctx->flags |= R600_CONTEXT_INVAL_READ_CACHES;
rctx->flags |= R600_CONTEXT_FLUSH_AND_INV;
}
void r600_vertex_buffers_dirty(struct r600_context *rctx)
{
if (rctx->vertex_buffer_state.dirty_mask) {
- rctx->flags |= R600_CONTEXT_GPU_FLUSH;
+ rctx->flags |= R600_CONTEXT_INVAL_READ_CACHES;
rctx->vertex_buffer_state.atom.num_dw = (rctx->chip_class >= EVERGREEN ? 12 : 11) *
util_bitcount(rctx->vertex_buffer_state.dirty_mask);
rctx->vertex_buffer_state.atom.dirty = true;
struct r600_samplerview_state *state)
{
if (state->dirty_mask) {
- rctx->flags |= R600_CONTEXT_GPU_FLUSH;
+ rctx->flags |= R600_CONTEXT_INVAL_READ_CACHES;
state->atom.num_dw = (rctx->chip_class >= EVERGREEN ? 14 : 13) *
util_bitcount(state->dirty_mask);
state->atom.dirty = true;
void r600_constant_buffers_dirty(struct r600_context *rctx, struct r600_constbuf_state *state)
{
if (state->dirty_mask) {
- rctx->flags |= R600_CONTEXT_GPU_FLUSH;
+ rctx->flags |= R600_CONTEXT_INVAL_READ_CACHES;
state->atom.num_dw = rctx->chip_class >= EVERGREEN ? util_bitcount(state->dirty_mask)*20
: util_bitcount(state->dirty_mask)*19;
state->atom.dirty = true;