[Mesa-dev] [PATCH] radeonsi: disable SDMA on Carrizo

Michel Dänzer michel at daenzer.net
Thu Aug 25 08:00:41 UTC 2016


On 25/08/16 06:39 AM, Marek Olšák wrote:
> From: Marek Olšák <marek.olsak at amd.com>
> 
> Cc: 12.0 <mesa-stable at lists.freedesktop.org>
> ---
>  src/gallium/drivers/radeonsi/cik_sdma.c | 6 ++++++
>  1 file changed, 6 insertions(+)
> 
> diff --git a/src/gallium/drivers/radeonsi/cik_sdma.c b/src/gallium/drivers/radeonsi/cik_sdma.c
> index 2eade50..e1fd050 100644
> --- a/src/gallium/drivers/radeonsi/cik_sdma.c
> +++ b/src/gallium/drivers/radeonsi/cik_sdma.c
> @@ -509,20 +509,26 @@ static void cik_sdma_copy(struct pipe_context *ctx,
>  	struct si_context *sctx = (struct si_context *)ctx;
>  
>  	if (!sctx->b.dma.cs)
>  		goto fallback;
>  
>  	if (dst->target == PIPE_BUFFER && src->target == PIPE_BUFFER) {
>  		cik_sdma_copy_buffer(sctx, dst, src, dstx, src_box->x, src_box->width);
>  		return;
>  	}
>  
> +	/* Carrizo SDMA texture copying is very broken for some users.
> +	 * https://bugs.freedesktop.org/show_bug.cgi?id=97029
> +	 */
> +	if (sctx->b.family == CHIP_CARRIZO)
> +		goto fallback;
> +
>  	if (cik_sdma_copy_texture(sctx, dst, dst_level, dstx, dsty, dstz,
>  				  src, src_level, src_box))
>  		return;
>  
>  fallback:
>  	si_resource_copy_region(ctx, dst, dst_level, dstx, dsty, dstz,
>  				src, src_level, src_box);
>  }
>  
>  void cik_init_sdma_functions(struct si_context *sctx)
> 

Reviewed-by: Michel Dänzer <michel.daenzer at amd.com>


-- 
Earthling Michel Dänzer               |               http://www.amd.com
Libre software enthusiast             |             Mesa and X developer


More information about the mesa-dev mailing list