From d3991d247222122bdfba730cf76628374ac95668 Mon Sep 17 00:00:00 2001 From: Rhys Kidd Date: Fri, 10 Aug 2018 12:40:10 -0400 Subject: v3d: Wire up core pipe_debug_callback This lets the driver use pipe_debug_message() for GL_ARB_debug_output. Signed-off-by: Rhys Kidd Reviewed-by: Eric Anholt --- src/gallium/drivers/v3d/v3d_context.c | 13 +++++++++++++ src/gallium/drivers/v3d/v3d_context.h | 1 + 2 files changed, 14 insertions(+) (limited to 'src/gallium/drivers/v3d') diff --git a/src/gallium/drivers/v3d/v3d_context.c b/src/gallium/drivers/v3d/v3d_context.c index 36c8f497824..1b148ecda2a 100644 --- a/src/gallium/drivers/v3d/v3d_context.c +++ b/src/gallium/drivers/v3d/v3d_context.c @@ -65,6 +65,18 @@ v3d_pipe_flush(struct pipe_context *pctx, struct pipe_fence_handle **fence, } } +static void +v3d_set_debug_callback(struct pipe_context *pctx, + const struct pipe_debug_callback *cb) +{ + struct v3d_context *v3d = v3d_context(pctx); + + if (cb) + v3d->debug = *cb; + else + memset(&v3d->debug, 0, sizeof(v3d->debug)); +} + static void v3d_invalidate_resource(struct pipe_context *pctx, struct pipe_resource *prsc) { @@ -139,6 +151,7 @@ v3d_context_create(struct pipe_screen *pscreen, void *priv, unsigned flags) pctx->priv = priv; pctx->destroy = v3d_context_destroy; pctx->flush = v3d_pipe_flush; + pctx->set_debug_callback = v3d_set_debug_callback; pctx->invalidate_resource = v3d_invalidate_resource; if (screen->devinfo.ver >= 41) { diff --git a/src/gallium/drivers/v3d/v3d_context.h b/src/gallium/drivers/v3d/v3d_context.h index 575b74f4940..7f03836d9ce 100644 --- a/src/gallium/drivers/v3d/v3d_context.h +++ b/src/gallium/drivers/v3d/v3d_context.h @@ -433,6 +433,7 @@ struct v3d_context { struct v3d_vertexbuf_stateobj vertexbuf; struct v3d_streamout_stateobj streamout; struct v3d_bo *current_oq; + struct pipe_debug_callback debug; /** @} */ }; -- cgit v1.2.3