projects
/
platform
/
upstream
/
mesa.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
e3cb67d
)
radeonsi/gfx9: don't compare src_va w/ dst_va for CP_DMA_CLEAR
author
Marek Olšák
<marek.olsak@amd.com>
Tue, 28 Mar 2017 17:06:31 +0000
(19:06 +0200)
committer
Marek Olšák
<marek.olsak@amd.com>
Fri, 31 Mar 2017 19:41:57 +0000
(21:41 +0200)
src_va contains the clear value in this case.
Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
src/gallium/drivers/radeonsi/si_cp_dma.c
patch
|
blob
|
history
diff --git
a/src/gallium/drivers/radeonsi/si_cp_dma.c
b/src/gallium/drivers/radeonsi/si_cp_dma.c
index
1381d8c
..
74e0b2d
100644
(file)
--- a/
src/gallium/drivers/radeonsi/si_cp_dma.c
+++ b/
src/gallium/drivers/radeonsi/si_cp_dma.c
@@
-84,7
+84,8
@@
static void si_emit_cp_dma(struct si_context *sctx, uint64_t dst_va,
command |= S_414_RAW_WAIT(1);
/* Src and dst flags. */
- if (sctx->b.chip_class >= GFX9 && src_va == dst_va)
+ if (sctx->b.chip_class >= GFX9 && !(flags & CP_DMA_CLEAR) &&
+ src_va == dst_va)
header |= S_411_DSL_SEL(V_411_NOWHERE); /* prefetch only */
else if (flags & CP_DMA_USE_L2)
header |= S_411_DSL_SEL(V_411_DST_ADDR_TC_L2);