diff options
author | Marek Olšák <[email protected]> | 2016-10-13 12:09:36 +0200 |
---|---|---|
committer | Marek Olšák <[email protected]> | 2017-01-06 21:05:48 +0100 |
commit | a131dacb1443039b284aef3ba0a47e2ba20a13a6 (patch) | |
tree | 2dd01a7ee20bb387a9bc209567f4291ee7803982 /src/gallium/drivers/radeonsi/si_pipe.h | |
parent | 8ac1715d02e0fc77e379a4544bddb5e4a6bacd72 (diff) |
radeonsi: add CP DMA flags for greater control over synchronization
for L2 prefetch
Reviewed-by: Edward O'Callaghan <[email protected]>
Reviewed-by: Nicolai Hähnle <[email protected]>
Diffstat (limited to 'src/gallium/drivers/radeonsi/si_pipe.h')
-rw-r--r-- | src/gallium/drivers/radeonsi/si_pipe.h | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/src/gallium/drivers/radeonsi/si_pipe.h b/src/gallium/drivers/radeonsi/si_pipe.h index 9f79c2aa804..dc37c8d28f3 100644 --- a/src/gallium/drivers/radeonsi/si_pipe.h +++ b/src/gallium/drivers/radeonsi/si_pipe.h @@ -372,9 +372,15 @@ void si_resource_copy_region(struct pipe_context *ctx, const struct pipe_box *src_box); /* si_cp_dma.c */ +#define SI_CPDMA_SKIP_CHECK_CS_SPACE (1 << 0) /* don't call need_cs_space */ +#define SI_CPDMA_SKIP_SYNC_AFTER (1 << 1) /* don't wait for DMA after the copy */ +#define SI_CPDMA_SKIP_SYNC_BEFORE (1 << 2) /* don't wait for DMA before the copy (RAW hazards) */ +#define SI_CPDMA_SKIP_GFX_SYNC (1 << 3) /* don't flush caches and don't wait for PS/CS */ + void si_copy_buffer(struct si_context *sctx, struct pipe_resource *dst, struct pipe_resource *src, - uint64_t dst_offset, uint64_t src_offset, unsigned size); + uint64_t dst_offset, uint64_t src_offset, unsigned size, + unsigned user_flags); void si_init_cp_dma_functions(struct si_context *sctx); /* si_debug.c */ |