mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2025-12-20 05:10:11 +01:00
tu: Add custom resolve tracepoints
Signed-off-by: Danylo Piliaiev <dpiliaiev@igalia.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38451>
This commit is contained in:
parent
520e3f3a47
commit
40b21f115d
3 changed files with 9 additions and 0 deletions
|
|
@ -6650,6 +6650,8 @@ tu_emit_subpass_custom_resolve(struct tu_cmd_buffer *cmd)
|
|||
if (!subpass->custom_resolve)
|
||||
return;
|
||||
|
||||
trace_start_custom_resolve(&cmd->rp_trace, cs, cmd);
|
||||
|
||||
/* Since a7xx, buffer location can be controlled per-buffer. We also have
|
||||
* to update the steering register so that generic clears use sysmem.
|
||||
*/
|
||||
|
|
@ -6712,6 +6714,8 @@ tu_emit_custom_resolve_end(struct tu_cmd_buffer *cmd)
|
|||
tu_emit_event_write<CHIP>(cmd, cs, FD_CCU_CLEAN_COLOR);
|
||||
if (subpass->depth_stencil_attachment.attachment != VK_ATTACHMENT_UNUSED)
|
||||
tu_emit_event_write<CHIP>(cmd, cs, FD_CCU_CLEAN_DEPTH);
|
||||
|
||||
trace_end_custom_resolve(&cmd->rp_trace, cs);
|
||||
}
|
||||
|
||||
/* emit loads, clears, and mrt/zs/msaa/ubwc state for the subpass that is
|
||||
|
|
|
|||
|
|
@ -82,6 +82,7 @@ enum tu_stage_id {
|
|||
GMEM_LOAD_STAGE_ID,
|
||||
GMEM_STORE_STAGE_ID,
|
||||
SYSMEM_RESOLVE_STAGE_ID,
|
||||
CUSTOM_RESOLVE_STAGE_ID,
|
||||
// TODO add the rest from fd_stage_id
|
||||
};
|
||||
|
||||
|
|
@ -117,6 +118,7 @@ static const struct {
|
|||
[GMEM_LOAD_STAGE_ID] = { "GMEM Load", "Per tile system memory to GMEM load" },
|
||||
[GMEM_STORE_STAGE_ID] = { "GMEM Store", "Per tile GMEM to system memory store" },
|
||||
[SYSMEM_RESOLVE_STAGE_ID] = { "SysMem Resolve", "System memory MSAA resolve" },
|
||||
[CUSTOM_RESOLVE_STAGE_ID] = { "Custom Resolve", "Custom resolve via shader" },
|
||||
// TODO add the rest
|
||||
};
|
||||
|
||||
|
|
@ -605,6 +607,7 @@ CREATE_EVENT_CALLBACK(sysmem_clear_all, CLEAR_SYSMEM_STAGE_ID)
|
|||
CREATE_EVENT_CALLBACK(gmem_load, GMEM_LOAD_STAGE_ID)
|
||||
CREATE_EVENT_CALLBACK(gmem_store, GMEM_STORE_STAGE_ID)
|
||||
CREATE_EVENT_CALLBACK(sysmem_resolve, SYSMEM_RESOLVE_STAGE_ID)
|
||||
CREATE_EVENT_CALLBACK(custom_resolve, CUSTOM_RESOLVE_STAGE_ID)
|
||||
|
||||
void
|
||||
tu_perfetto_start_cmd_buffer_annotation(
|
||||
|
|
|
|||
|
|
@ -171,6 +171,8 @@ begin_end_tp('gmem_store',
|
|||
begin_end_tp('sysmem_resolve',
|
||||
args=[Arg(type='enum VkFormat', var='format', c_format='%s', to_prim_type='vk_format_description({})->short_name')])
|
||||
|
||||
begin_end_tp('custom_resolve')
|
||||
|
||||
begin_end_tp('blit',
|
||||
# TODO: add source megapixels count and target megapixels count arguments
|
||||
args=[Arg(type='uint8_t', var='uses_3d_blit', c_format='%u'),
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue