From e55a7bc83a6440a4933f348d4d4e780908845028 Mon Sep 17 00:00:00 2001 From: Rohan Garg Date: Thu, 26 Sep 2024 20:41:52 +0200 Subject: [PATCH] anv: program STATE_COMPUTE_MODE to flush the L1 cache This is required for upcoming resource barrier work to implement HDC flush's. Signed-off-by: Rohan Garg Reviewed-by: Lionel Landwerlin Part-of: --- src/intel/vulkan/genX_init_state.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/intel/vulkan/genX_init_state.c b/src/intel/vulkan/genX_init_state.c index 5e64ca69687..f7799121700 100644 --- a/src/intel/vulkan/genX_init_state.c +++ b/src/intel/vulkan/genX_init_state.c @@ -666,6 +666,7 @@ init_render_queue_state(struct anv_queue *queue, bool is_companion_rcs_batch) cm.Mask1 = 0xffff; #if GFX_VERx10 >= 200 cm.Mask2 = 0xffff; + cm.UAVCoherencyMode = FlushDataportL1; #endif } anv_batch_emit(batch, GENX(3DSTATE_MESH_CONTROL), zero); @@ -808,6 +809,8 @@ init_compute_queue_state(struct anv_queue *queue) cm.AsyncComputeThreadLimitMask = 0x7; cm.ZPassAsyncComputeThreadLimitMask = 0x7; cm.ZAsyncThrottlesettingsMask = 0x3; + cm.Mask2 = 0xffff; + cm.UAVCoherencyMode = FlushDataportL1; #else cm.PixelAsyncComputeThreadLimit = PACTL_Max24; cm.ZPassAsyncComputeThreadLimit = ZPACTL_Max60;