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

eocallaghan at alterapraxis.com eocallaghan at alterapraxis.com
Wed Dec 30 21:30:17 PST 2015


Fantastic thanks!

This series is,

Reviewed-by: Edward O'Callaghan <eocallaghan at alterapraxis.com>

On 2015-12-31 13:30, Nicolai Hähnle 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,



More information about the mesa-dev mailing list