From a6c3d0f92b754e11e74cea9d6bd5ac329c73a8ba Mon Sep 17 00:00:00 2001 From: Jason Ekstrand Date: Thu, 10 Nov 2016 14:09:08 -0800 Subject: [PATCH] anv/cmd_buffer: Enable a CS stall workaround for Sky Lake gt4 This fixes hangs in Dota2 Reviewed-by: Kenneth Graunke Cc: "12.0 13.0" --- src/intel/vulkan/genX_cmd_buffer.c | 6 ++++++ 1 file changed, 6 insertions(+) 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; } -- 2.30.2