diff --git a/src/gallium/auxiliary/driver_trace/tr_screen.c b/src/gallium/auxiliary/driver_trace/tr_screen.c index 71771ce1961..107847219e9 100644 --- a/src/gallium/auxiliary/driver_trace/tr_screen.c +++ b/src/gallium/auxiliary/driver_trace/tr_screen.c @@ -893,6 +893,30 @@ trace_screen_query_dmabuf_modifiers(struct pipe_screen *_screen, enum pipe_forma trace_dump_call_end(); } +static bool +trace_screen_is_dmabuf_modifier_supported(struct pipe_screen *_screen, uint64_t modifier, enum pipe_format format, bool *external_only) +{ + struct trace_screen *tr_scr = trace_screen(_screen); + struct pipe_screen *screen = tr_scr->screen; + + trace_dump_call_begin("pipe_screen", "is_dmabuf_modifier_supported"); + + trace_dump_arg(ptr, screen); + trace_dump_arg(uint, modifier); + trace_dump_arg(format, format); + + bool ret = screen->is_dmabuf_modifier_supported(screen, modifier, format, external_only); + + trace_dump_arg_begin("external_only"); + trace_dump_bool(external_only ? *external_only : false); + trace_dump_arg_end(); + + trace_dump_ret(bool, ret); + + trace_dump_call_end(); + return ret; +} + bool trace_enabled(void) { @@ -967,6 +991,7 @@ trace_screen_create(struct pipe_screen *screen) tr_scr->base.unmap_memory = trace_screen_unmap_memory; SCR_INIT(query_memory_info); SCR_INIT(query_dmabuf_modifiers); + SCR_INIT(is_dmabuf_modifier_supported); SCR_INIT(check_resource_capability); tr_scr->base.resource_get_handle = trace_screen_resource_get_handle; SCR_INIT(resource_get_param);