diff options
-rw-r--r-- | src/gallium/drivers/v3d/v3d_context.c | 13 | ||||
-rw-r--r-- | src/gallium/drivers/v3d/v3d_context.h | 1 |
2 files changed, 14 insertions, 0 deletions
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 @@ -66,6 +66,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) { struct v3d_context *v3d = v3d_context(pctx); @@ -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; /** @} */ }; |