svga: add svga_winsys_context::pipe_debug_callback pointer

The svga winsys modules can use this to send debug messages to the
state tracker and Mesa.

Reviewed-by: Charmaine Lee <charmainel@vmware.com>
Reviewed-by: José Fonseca <jfonseca@vmware.com>
This commit is contained in:
Brian Paul 2016-02-23 18:02:11 -07:00
parent f8aaf0094d
commit 86caa67aef
2 changed files with 9 additions and 2 deletions

View File

@ -254,10 +254,13 @@ svga_set_debug_callback(struct pipe_context *pipe,
{
struct svga_context *svga = svga_context(pipe);
if (cb)
if (cb) {
svga->debug.callback = *cb;
else
svga->swc->debug_callback = &svga->debug.callback;
} else {
memset(&svga->debug.callback, 0, sizeof(svga->debug.callback));
svga->swc->debug_callback = NULL;
}
}

View File

@ -48,6 +48,7 @@ struct svga_winsys_screen;
struct svga_winsys_buffer;
struct pipe_screen;
struct pipe_context;
struct pipe_debug_callback;
struct pipe_fence_handle;
struct pipe_resource;
struct svga_region;
@ -286,6 +287,9 @@ struct svga_winsys_context
struct svga_winsys_surface *surface,
struct svga_winsys_gb_shader *shader,
unsigned flags);
/** To report perf/conformance/etc issues to the state tracker */
struct pipe_debug_callback *debug_callback;
};