summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJason Ekstrand <jason.ekstrand@intel.com>2016-11-10 14:09:08 -0800
committerEmil Velikov <emil.l.velikov@gmail.com>2016-11-11 22:19:51 +0000
commit1a47251da48adee162be752b9a7ca2699f98a30b (patch)
tree1790d3fa0a0cb9bdc79b9ac844ed74fb9b436bdb
parent77dc3a5b7ca51e8f93b7f3e2f6db81f549d43199 (diff)
downloadexternal_mesa3d-1a47251da48adee162be752b9a7ca2699f98a30b.zip
external_mesa3d-1a47251da48adee162be752b9a7ca2699f98a30b.tar.gz
external_mesa3d-1a47251da48adee162be752b9a7ca2699f98a30b.tar.bz2
anv/cmd_buffer: Enable a CS stall workaround for Sky Lake gt4
This fixes hangs in Dota2 Reviewed-by: Kenneth Graunke <kenneth@whitecape.org> Cc: "12.0 13.0" <mesa-stable@lists.freedesktop.org> (cherry picked from commit a6c3d0f92b754e11e74cea9d6bd5ac329c73a8ba)
-rw-r--r--src/intel/vulkan/genX_cmd_buffer.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/intel/vulkan/genX_cmd_buffer.c b/src/intel/vulkan/genX_cmd_buffer.c
index 35f5dd6..2bc7e74 100644
--- a/src/intel/vulkan/genX_cmd_buffer.c
+++ b/src/intel/vulkan/genX_cmd_buffer.c
@@ -1880,6 +1880,9 @@ emit_ps_depth_count(struct anv_cmd_buffer *cmd_buffer,
pc.PostSyncOperation = WritePSDepthCount;
pc.DepthStallEnable = true;
pc.Address = (struct anv_address) { bo, offset };
+
+ if (GEN_GEN == 9 && cmd_buffer->device->info.gt == 4)
+ pc.CommandStreamerStallEnable = true;
}
}
@@ -1985,6 +1988,9 @@ void genX(CmdWriteTimestamp)(
pc.DestinationAddressType = DAT_PPGTT;
pc.PostSyncOperation = WriteTimestamp;
pc.Address = (struct anv_address) { &pool->bo, offset };
+
+ if (GEN_GEN == 9 && cmd_buffer->device->info.gt == 4)
+ pc.CommandStreamerStallEnable = true;
}
break;
}