From: Jason Ekstrand Date: Fri, 7 Oct 2016 18:23:35 +0000 (-0700) Subject: anv/blorp: Don't hand-roll flush_pipeline_select_3d X-Git-Tag: upstream/17.1.0~5522 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=146ee31159744941685a3ad04839b125dc0acce4;p=platform%2Fupstream%2Fmesa.git anv/blorp: Don't hand-roll flush_pipeline_select_3d When I initially brought up Vulkan blorp, I completely missed that this was already factored out. There's no good reason for us to hand-roll it. Signed-off-by: Jason Ekstrand Reviewed-by: Topi Pohjolainen --- diff --git a/src/intel/vulkan/genX_blorp_exec.c b/src/intel/vulkan/genX_blorp_exec.c index 5ddbb7d..d43de91 100644 --- a/src/intel/vulkan/genX_blorp_exec.c +++ b/src/intel/vulkan/genX_blorp_exec.c @@ -162,44 +162,7 @@ genX(blorp_exec)(struct blorp_batch *batch, genX(cmd_buffer_apply_pipe_flushes)(cmd_buffer); - if (cmd_buffer->state.current_pipeline != _3D) { -#if GEN_GEN <= 7 - /* From "BXML » GT » MI » vol1a GPU Overview » [Instruction] - * PIPELINE_SELECT [DevBWR+]": - * - * Project: DEVSNB+ - * - * Software must ensure all the write caches are flushed through a - * stalling PIPE_CONTROL command followed by another PIPE_CONTROL - * command to invalidate read only caches prior to programming - * MI_PIPELINE_SELECT command to change the Pipeline Select Mode. - */ - blorp_emit(batch, GENX(PIPE_CONTROL), pc) { - pc.RenderTargetCacheFlushEnable = true; - pc.DepthCacheFlushEnable = true; - pc.DCFlushEnable = true; - pc.PostSyncOperation = NoWrite; - pc.CommandStreamerStallEnable = true; - } - - blorp_emit(batch, GENX(PIPE_CONTROL), pc) { - pc.TextureCacheInvalidationEnable = true; - pc.ConstantCacheInvalidationEnable = true; - pc.StateCacheInvalidationEnable = true; - pc.InstructionCacheInvalidateEnable = true; - pc.PostSyncOperation = NoWrite; - } -#endif - - blorp_emit(batch, GENX(PIPELINE_SELECT), ps) { -#if GEN_GEN >= 9 - ps.MaskBits = 3; -#endif - ps.PipelineSelection = _3D; - } - - cmd_buffer->state.current_pipeline = _3D; - } + genX(flush_pipeline_select_3d)(cmd_buffer); blorp_exec(batch, params);