From: Christian König Date: Mon, 11 Aug 2014 14:40:43 +0000 (+0200) Subject: radeon/uvd: fix gpu_address for video surfaces X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=83012b50854c795294b4b9e8b2766bb5258dafea;p=mesa.git radeon/uvd: fix gpu_address for video surfaces We need to get the new gpu_address as well when reallocating the cs buffer. Bug: https://bugs.freedesktop.org/show_bug.cgi?id=82428 Signed-off-by: Christian König Reviewed-by: Marek Olšák Tested-by: Kai Wasserbäch --- diff --git a/src/gallium/drivers/r600/r600_uvd.c b/src/gallium/drivers/r600/r600_uvd.c index f42384c12ee..ee5288f384d 100644 --- a/src/gallium/drivers/r600/r600_uvd.c +++ b/src/gallium/drivers/r600/r600_uvd.c @@ -121,6 +121,8 @@ struct pipe_video_buffer *r600_video_buffer_create(struct pipe_context *pipe, /* recreate the CS handle */ resources[i]->resource.cs_buf = ctx->b.ws->buffer_get_cs_handle( resources[i]->resource.buf); + resources[i]->resource.gpu_address = ctx->b.ws->buffer_get_virtual_address( + resources[i]->resource.cs_buf); } template.height *= array_size; diff --git a/src/gallium/drivers/radeonsi/si_uvd.c b/src/gallium/drivers/radeonsi/si_uvd.c index 9f25cd6b09a..0ba3b125351 100644 --- a/src/gallium/drivers/radeonsi/si_uvd.c +++ b/src/gallium/drivers/radeonsi/si_uvd.c @@ -106,6 +106,8 @@ struct pipe_video_buffer *si_video_buffer_create(struct pipe_context *pipe, /* recreate the CS handle */ resources[i]->resource.cs_buf = ctx->b.ws->buffer_get_cs_handle( resources[i]->resource.buf); + resources[i]->resource.gpu_address = ctx->b.ws->buffer_get_virtual_address( + resources[i]->resource.cs_buf); } template.height *= array_size;