diff options
author | Rob Clark <[email protected]> | 2016-04-24 16:42:15 -0400 |
---|---|---|
committer | Rob Clark <[email protected]> | 2016-04-30 14:56:19 -0400 |
commit | 41d288c306db886d15e1fa32aa3bc677b8750321 (patch) | |
tree | 551fdb40ec4a3024ba51a20574a52f6096b4dda2 /src/gallium/drivers | |
parent | e04db879f8933915501bfb9cce0d1359d62766bd (diff) |
freedreno: wire up core pipe_debug_callback
Signed-off-by: Rob Clark <[email protected]>
Diffstat (limited to 'src/gallium/drivers')
-rw-r--r-- | src/gallium/drivers/freedreno/freedreno_context.c | 13 | ||||
-rw-r--r-- | src/gallium/drivers/freedreno/freedreno_context.h | 2 |
2 files changed, 15 insertions, 0 deletions
diff --git a/src/gallium/drivers/freedreno/freedreno_context.c b/src/gallium/drivers/freedreno/freedreno_context.c index c54bb1091f7..52557d16068 100644 --- a/src/gallium/drivers/freedreno/freedreno_context.c +++ b/src/gallium/drivers/freedreno/freedreno_context.c @@ -211,6 +211,18 @@ fd_context_destroy(struct pipe_context *pctx) FREE(ctx); } +static void +fd_set_debug_callback(struct pipe_context *pctx, + const struct pipe_debug_callback *cb) +{ + struct fd_context *ctx = fd_context(pctx); + + if (cb) + ctx->debug = *cb; + else + memset(&ctx->debug, 0, sizeof(ctx->debug)); +} + struct pipe_context * fd_context_init(struct fd_context *ctx, struct pipe_screen *pscreen, const uint8_t *primtypes, void *priv) @@ -237,6 +249,7 @@ fd_context_init(struct fd_context *ctx, struct pipe_screen *pscreen, pctx->priv = priv; pctx->flush = fd_context_flush; pctx->emit_string_marker = fd_emit_string_marker; + pctx->set_debug_callback = fd_set_debug_callback; for (i = 0; i < ARRAY_SIZE(ctx->rings); i++) { ctx->rings[i] = fd_ringbuffer_new(screen->pipe, 0x100000); diff --git a/src/gallium/drivers/freedreno/freedreno_context.h b/src/gallium/drivers/freedreno/freedreno_context.h index 86992960960..e65688e6c58 100644 --- a/src/gallium/drivers/freedreno/freedreno_context.h +++ b/src/gallium/drivers/freedreno/freedreno_context.h @@ -369,6 +369,8 @@ struct fd_context { bool cond_cond; /* inverted rendering condition */ uint cond_mode; + struct pipe_debug_callback debug; + /* GMEM/tile handling fxns: */ void (*emit_tile_init)(struct fd_context *ctx); void (*emit_tile_prep)(struct fd_context *ctx, struct fd_tile *tile); |