etnaviv: wire up core pipe_debug_callback
authorChristian Gmeiner <christian.gmeiner@gmail.com>
Tue, 3 Jan 2017 14:06:24 +0000 (15:06 +0100)
committerChristian Gmeiner <christian.gmeiner@gmail.com>
Sat, 11 Feb 2017 20:22:42 +0000 (21:22 +0100)
Signed-off-by: Christian Gmeiner <christian.gmeiner@gmail.com>
Reviewed-by: Lucas Stach <l.stach@pengutronix.de>
src/gallium/drivers/etnaviv/etnaviv_context.c
src/gallium/drivers/etnaviv/etnaviv_context.h

index d767cd1f38e86e01066052cdba59aca8a5764642..ce2d8719e452fabf90a4c4dfe6d7aa167e58bbed 100644 (file)
@@ -246,6 +246,18 @@ etna_cmd_stream_reset_notify(struct etna_cmd_stream *stream, void *priv)
    assert(LIST_IS_EMPTY(&ctx->used_resources));
 }
 
+static void
+etna_set_debug_callback(struct pipe_context *pctx,
+                        const struct pipe_debug_callback *cb)
+{
+   struct etna_context *ctx = etna_context(pctx);
+
+   if (cb)
+      ctx->debug = *cb;
+   else
+      memset(&ctx->debug, 0, sizeof(ctx->debug));
+}
+
 struct pipe_context *
 etna_context_create(struct pipe_screen *pscreen, void *priv, unsigned flags)
 {
@@ -279,6 +291,7 @@ etna_context_create(struct pipe_screen *pscreen, void *priv, unsigned flags)
    pctx->destroy = etna_context_destroy;
    pctx->draw_vbo = etna_draw_vbo;
    pctx->flush = etna_flush;
+   pctx->set_debug_callback = etna_set_debug_callback;
 
    /* creation of compile states */
    pctx->create_blend_state = etna_blend_state_create;
index 74e93e1631a14c687ce306e18896abc411e01d80..a9214034af0cb37535fe85ef08e068455873b9f7 100644 (file)
@@ -174,6 +174,8 @@ struct etna_context {
       uint64_t prims_emitted;
       uint64_t draw_calls;
    } stats;
+
+   struct pipe_debug_callback debug;
 };
 
 static inline struct etna_context *