mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-01-01 18:20:10 +01:00
aux/trace: add screen video methods
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24482>
This commit is contained in:
parent
9d1da9ec20
commit
ace894cff8
3 changed files with 58 additions and 1 deletions
|
|
@ -48,6 +48,9 @@ lst_enum_include = [
|
|||
"pipe_cap",
|
||||
"pipe_capf",
|
||||
"pipe_compute_cap",
|
||||
"pipe_video_cap",
|
||||
"pipe_video_profile",
|
||||
"pipe_video_entrypoint",
|
||||
"pipe_resource_param",
|
||||
"pipe_fd_type",
|
||||
"pipe_blendfactor",
|
||||
|
|
@ -211,6 +214,7 @@ def pkk_output_header(fh):
|
|||
|
||||
|
||||
#include "pipe/p_defines.h"
|
||||
#include "pipe/p_video_enums.h"
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
|
|
|
|||
|
|
@ -247,6 +247,31 @@ trace_screen_get_compute_param(struct pipe_screen *_screen,
|
|||
return result;
|
||||
}
|
||||
|
||||
static int
|
||||
trace_screen_get_video_param(struct pipe_screen *_screen,
|
||||
enum pipe_video_profile profile,
|
||||
enum pipe_video_entrypoint entrypoint,
|
||||
enum pipe_video_cap param)
|
||||
{
|
||||
struct trace_screen *tr_scr = trace_screen(_screen);
|
||||
struct pipe_screen *screen = tr_scr->screen;
|
||||
int result;
|
||||
|
||||
trace_dump_call_begin("pipe_screen", "get_video_param");
|
||||
|
||||
trace_dump_arg(ptr, screen);
|
||||
trace_dump_arg_enum(pipe_video_profile, profile);
|
||||
trace_dump_arg_enum(pipe_video_entrypoint, entrypoint);
|
||||
trace_dump_arg_enum(pipe_video_cap, param);
|
||||
|
||||
result = screen->get_video_param(screen, profile, entrypoint, param);
|
||||
|
||||
trace_dump_ret(int, result);
|
||||
|
||||
trace_dump_call_end();
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
static bool
|
||||
trace_screen_is_format_supported(struct pipe_screen *_screen,
|
||||
|
|
@ -279,6 +304,32 @@ trace_screen_is_format_supported(struct pipe_screen *_screen,
|
|||
return result;
|
||||
}
|
||||
|
||||
static bool
|
||||
trace_screen_is_video_format_supported(struct pipe_screen *_screen,
|
||||
enum pipe_format format,
|
||||
enum pipe_video_profile profile,
|
||||
enum pipe_video_entrypoint entrypoint)
|
||||
{
|
||||
struct trace_screen *tr_scr = trace_screen(_screen);
|
||||
struct pipe_screen *screen = tr_scr->screen;
|
||||
bool result;
|
||||
|
||||
trace_dump_call_begin("pipe_screen", "is_video_format_supported");
|
||||
|
||||
trace_dump_arg(ptr, screen);
|
||||
trace_dump_arg(format, format);
|
||||
trace_dump_arg_enum(pipe_video_profile, profile);
|
||||
trace_dump_arg_enum(pipe_video_entrypoint, entrypoint);
|
||||
|
||||
result = screen->is_video_format_supported(screen, format, profile, entrypoint);
|
||||
|
||||
trace_dump_ret(bool, result);
|
||||
|
||||
trace_dump_call_end();
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
static void
|
||||
trace_screen_driver_thread_add_job(struct pipe_screen *_screen,
|
||||
void *data, struct util_queue_fence *fence,
|
||||
|
|
@ -1429,7 +1480,9 @@ trace_screen_create(struct pipe_screen *screen)
|
|||
tr_scr->base.get_shader_param = trace_screen_get_shader_param;
|
||||
tr_scr->base.get_paramf = trace_screen_get_paramf;
|
||||
tr_scr->base.get_compute_param = trace_screen_get_compute_param;
|
||||
SCR_INIT(get_video_param);
|
||||
tr_scr->base.is_format_supported = trace_screen_is_format_supported;
|
||||
SCR_INIT(is_video_format_supported);
|
||||
assert(screen->context_create);
|
||||
tr_scr->base.context_create = trace_screen_context_create;
|
||||
tr_scr->base.resource_create = trace_screen_resource_create;
|
||||
|
|
|
|||
|
|
@ -467,7 +467,7 @@ endif
|
|||
prog_enums2names = files('driver_trace/enums2names.py')
|
||||
files_libgallium += custom_target(
|
||||
'tr_util.[ch]',
|
||||
input: ['../include/pipe/p_defines.h', '../../util/blend.h'],
|
||||
input: ['../include/pipe/p_defines.h', '../include/pipe/p_video_enums.h', '../../util/blend.h'],
|
||||
output: ['tr_util.c', 'tr_util.h'],
|
||||
command: [prog_python, prog_enums2names, '@INPUT@', '-C', '@OUTPUT0@', '-H', '@OUTPUT1@', '-I', 'tr_util.h'],
|
||||
depend_files: prog_enums2names,
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue