panvk: track whether we are in a vk_meta command
This is needed to handle the provoking vertex mode correctly. vk_meta doesn't care which provoking vertex mode is used, but there is no way to express this directly in the vulkan api. Signed-off-by: Olivia Lee <olivia.lee@collabora.com> Tested-by: Mary Guillemard <mary.guillemard@collabora.com> Reviewed-by: Mary Guillemard <mary.guillemard@collabora.com> Reviewed-by: Ryan Mckeever <ryan.mckeever@collabora.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34974>
This commit is contained in:
@@ -171,6 +171,8 @@ struct panvk_cmd_graphics_state {
|
||||
|
||||
struct panvk_rendering_state render;
|
||||
|
||||
bool vk_meta;
|
||||
|
||||
#if PAN_ARCH <= 7
|
||||
uint64_t vpd;
|
||||
#endif
|
||||
|
||||
@@ -106,6 +106,8 @@ panvk_per_arch(cmd_meta_gfx_start)(
|
||||
cmdbuf->state.gfx.occlusion_query.ptr = 0;
|
||||
cmdbuf->state.gfx.occlusion_query.mode = MALI_OCCLUSION_MODE_DISABLED;
|
||||
gfx_state_set_dirty(cmdbuf, OQ);
|
||||
|
||||
cmdbuf->state.gfx.vk_meta = true;
|
||||
}
|
||||
|
||||
void
|
||||
@@ -156,6 +158,8 @@ panvk_per_arch(cmd_meta_gfx_end)(
|
||||
gfx_state_set_dirty(cmdbuf, OQ);
|
||||
gfx_state_set_dirty(cmdbuf, DESC_STATE);
|
||||
gfx_state_set_dirty(cmdbuf, RENDER_STATE);
|
||||
|
||||
cmdbuf->state.gfx.vk_meta = false;
|
||||
}
|
||||
|
||||
VKAPI_ATTR void VKAPI_CALL
|
||||
|
||||
Reference in New Issue
Block a user