mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-08 09:08:10 +02:00
panvk: fix to clear FPK with incompatible blend modes
When there's only blend mode updates (e.g. CB_BLEND_EQUATIONS not
covered by fs_user_dirty check), we have to set dcd0_dirty for the
relevant CB updates. Otherwise, we might miss to clear FPK. On the
other hand, this also optimizes to set FPK in the reverse mutation, so
that new draws no longer depending on the previous tile buffer can
benefit from FPK.
Cc: mesa-stable
Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37760>
(cherry picked from commit 98a6825d35)
This commit is contained in:
parent
7e6440ca6f
commit
6933939759
2 changed files with 5 additions and 1 deletions
|
|
@ -3024,7 +3024,7 @@
|
|||
"description": "panvk: fix to clear FPK with incompatible blend modes",
|
||||
"nominated": true,
|
||||
"nomination_type": 1,
|
||||
"resolution": 0,
|
||||
"resolution": 1,
|
||||
"main_sha": null,
|
||||
"because_sha": null,
|
||||
"notes": null
|
||||
|
|
|
|||
|
|
@ -1885,6 +1885,10 @@ prepare_dcd(struct panvk_cmd_buffer *cmdbuf,
|
|||
dyn_gfx_state_dirty(cmdbuf, DS_STENCIL_TEST_ENABLE) ||
|
||||
dyn_gfx_state_dirty(cmdbuf, DS_STENCIL_OP) ||
|
||||
dyn_gfx_state_dirty(cmdbuf, DS_STENCIL_WRITE_MASK) ||
|
||||
/* fpk enablement depends on vk_color_blend_attachment_state */
|
||||
dyn_gfx_state_dirty(cmdbuf, CB_BLEND_ENABLES) ||
|
||||
dyn_gfx_state_dirty(cmdbuf, CB_BLEND_EQUATIONS) ||
|
||||
dyn_gfx_state_dirty(cmdbuf, CB_WRITE_MASKS) ||
|
||||
/* line mode needs primitive topology */
|
||||
dyn_gfx_state_dirty(cmdbuf, IA_PRIMITIVE_TOPOLOGY) ||
|
||||
dyn_gfx_state_dirty(cmdbuf, INPUT_ATTACHMENT_MAP) ||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue