diff options
author | Jason Ekstrand <[email protected]> | 2016-11-10 14:09:08 -0800 |
---|---|---|
committer | Jason Ekstrand <[email protected]> | 2016-11-10 15:21:18 -0800 |
commit | a6c3d0f92b754e11e74cea9d6bd5ac329c73a8ba (patch) | |
tree | d699dacd617ca74dac6b8eb813b32f2efe46b9f8 | |
parent | 1e3e347fd5d1d55cdb36c39442def31d121ebae5 (diff) |
anv/cmd_buffer: Enable a CS stall workaround for Sky Lake gt4
This fixes hangs in Dota2
Reviewed-by: Kenneth Graunke <[email protected]>
Cc: "12.0 13.0" <[email protected]>
-rw-r--r-- | src/intel/vulkan/genX_cmd_buffer.c | 6 |
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 35f5dd6e003..2bc7e7473a3 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; } |