From 78a64e862fa140712ca7265afcd76f6f9d66ada5 Mon Sep 17 00:00:00 2001 From: Sviatoslav Peleshko Date: Mon, 20 Jun 2022 12:47:25 +0300 Subject: [PATCH] intel/blorp/gen6: Set BLEND_STATEChange only if emitting the blend state This change is pretty straightforward: if set this field when we don't emit the blend state, then the garbage at offset=0 will be set as a blend state, and this will cause artifacts until the proper blend state will be given. Cc: mesa-stable Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/6544 Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/6232 Signed-off-by: Sviatoslav Peleshko Reviewed-by: Nanley Chery Part-of: (cherry picked from commit 318473eaf133e8ec332591c8eb234278b025f7e0) --- .pick_status.json | 2 +- src/intel/blorp/blorp_genX_exec.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.pick_status.json b/.pick_status.json index 7171a3f992b..9e699d99277 100644 --- a/.pick_status.json +++ b/.pick_status.json @@ -58,7 +58,7 @@ "description": "intel/blorp/gen6: Set BLEND_STATEChange only if emitting the blend state", "nominated": true, "nomination_type": 0, - "resolution": 0, + "resolution": 1, "main_sha": null, "because_sha": null }, diff --git a/src/intel/blorp/blorp_genX_exec.h b/src/intel/blorp/blorp_genX_exec.h index 7085b51e51f..d63bea31f8a 100644 --- a/src/intel/blorp/blorp_genX_exec.h +++ b/src/intel/blorp/blorp_genX_exec.h @@ -1323,7 +1323,7 @@ blorp_emit_pipeline(struct blorp_batch *batch, * one CC_STATE_POINTERS packet so we have to emit that here. */ blorp_emit(batch, GENX(3DSTATE_CC_STATE_POINTERS), cc) { - cc.BLEND_STATEChange = true; + cc.BLEND_STATEChange = params->wm_prog_data ? true : false; cc.ColorCalcStatePointerValid = true; cc.DEPTH_STENCIL_STATEChange = true; cc.PointertoBLEND_STATE = blend_state_offset;