[Mesa-dev] [PATCH 1/6] gallium/radeon: implement set_debug_callback

Marek Olšák maraeo at gmail.com
Fri Jan 1 03:21:52 PST 2016


If the context pointer is replaced by struct pipe_debug_callback* in
the shader translation code (as I noted at patch 2), patches 1-5 are:

Reviewed-by: Marek Olšák <marek.olsak at amd.com>

Marek

On Thu, Dec 31, 2015 at 3:30 AM, Nicolai Hähnle <nhaehnle at gmail.com> wrote:
> From: Nicolai Hähnle <nicolai.haehnle at amd.com>
>
> ---
>  src/gallium/drivers/radeon/r600_pipe_common.c | 12 ++++++++++++
>  src/gallium/drivers/radeon/r600_pipe_common.h |  2 ++
>  2 files changed, 14 insertions(+)
>
> diff --git a/src/gallium/drivers/radeon/r600_pipe_common.c b/src/gallium/drivers/radeon/r600_pipe_common.c
> index 9a5e987..41c7aa5 100644
> --- a/src/gallium/drivers/radeon/r600_pipe_common.c
> +++ b/src/gallium/drivers/radeon/r600_pipe_common.c
> @@ -227,6 +227,17 @@ static enum pipe_reset_status r600_get_reset_status(struct pipe_context *ctx)
>         return PIPE_UNKNOWN_CONTEXT_RESET;
>  }
>
> +static void r600_set_debug_callback(struct pipe_context *ctx,
> +                                   const struct pipe_debug_callback *cb)
> +{
> +       struct r600_common_context *rctx = (struct r600_common_context *)ctx;
> +
> +       if (cb)
> +               rctx->debug = *cb;
> +       else
> +               memset(&rctx->debug, 0, sizeof(rctx->debug));
> +}
> +
>  bool r600_common_context_init(struct r600_common_context *rctx,
>                               struct r600_common_screen *rscreen)
>  {
> @@ -252,6 +263,7 @@ bool r600_common_context_init(struct r600_common_context *rctx,
>         rctx->b.transfer_inline_write = u_default_transfer_inline_write;
>          rctx->b.memory_barrier = r600_memory_barrier;
>         rctx->b.flush = r600_flush_from_st;
> +       rctx->b.set_debug_callback = r600_set_debug_callback;
>
>         if (rscreen->info.drm_major == 2 && rscreen->info.drm_minor >= 43) {
>                 rctx->b.get_device_reset_status = r600_get_reset_status;
> diff --git a/src/gallium/drivers/radeon/r600_pipe_common.h b/src/gallium/drivers/radeon/r600_pipe_common.h
> index c3933b1d..a69e627 100644
> --- a/src/gallium/drivers/radeon/r600_pipe_common.h
> +++ b/src/gallium/drivers/radeon/r600_pipe_common.h
> @@ -440,6 +440,8 @@ struct r600_common_context {
>          * the GPU addresses are updated. */
>         struct list_head                texture_buffers;
>
> +       struct pipe_debug_callback      debug;
> +
>         /* Copy one resource to another using async DMA. */
>         void (*dma_copy)(struct pipe_context *ctx,
>                          struct pipe_resource *dst,
> --
> 2.5.0
>
> _______________________________________________
> mesa-dev mailing list
> mesa-dev at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/mesa-dev


More information about the mesa-dev mailing list