aboutsummaryrefslogtreecommitdiffstats
path: root/src/broadcom/compiler/qpu_schedule.c
diff options
context:
space:
mode:
authorEric Anholt <[email protected]>2017-10-11 17:40:35 -0700
committerEric Anholt <[email protected]>2017-10-12 10:41:09 -0700
commit20b91cd568d82057c4fcf4f864c41896de85c024 (patch)
tree2de548485cad0672bd0ffff6ecad6325f67d73c8 /src/broadcom/compiler/qpu_schedule.c
parentdc9fa4bfb37c2598180bfc52ec0ec868e4c3b337 (diff)
broadcom/vc5: Don't pair VPMSETUP with other peripheral access.
The specs don't say you can't, but pairing it with an SFU write on the 7268 breaks all our simple shader tests using gl_MVP * gl_Vertex.
Diffstat (limited to 'src/broadcom/compiler/qpu_schedule.c')
-rw-r--r--src/broadcom/compiler/qpu_schedule.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/broadcom/compiler/qpu_schedule.c b/src/broadcom/compiler/qpu_schedule.c
index b5a0aa9a34a..dd221e027ec 100644
--- a/src/broadcom/compiler/qpu_schedule.c
+++ b/src/broadcom/compiler/qpu_schedule.c
@@ -590,6 +590,9 @@ qpu_accesses_peripheral(const struct v3d_qpu_instr *inst)
return true;
}
+ if (inst->alu.add.op == V3D_QPU_A_VPMSETUP)
+ return true;
+
if (inst->alu.mul.op != V3D_QPU_M_NOP &&
inst->alu.mul.magic_write &&
qpu_magic_waddr_is_periph(inst->alu.mul.waddr)) {