From: Nicolai Hähnle Date: Wed, 10 May 2017 20:05:52 +0000 (+0200) Subject: radv: add surface helper variable in radv_GetImageSubresourceLayout X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=a12d288bff2277c9343fa22dd138f49447a8e258;p=mesa.git radv: add surface helper variable in radv_GetImageSubresourceLayout Reviewed-by: Dave Airlie --- diff --git a/src/amd/vulkan/radv_image.c b/src/amd/vulkan/radv_image.c index 22bc6b41da8..d138988f56f 100644 --- a/src/amd/vulkan/radv_image.c +++ b/src/amd/vulkan/radv_image.c @@ -853,14 +853,15 @@ void radv_GetImageSubresourceLayout( RADV_FROM_HANDLE(radv_image, image, _image); int level = pSubresource->mipLevel; int layer = pSubresource->arrayLayer; + struct radeon_surf *surface = &image->surface; - pLayout->offset = image->surface.level[level].offset + image->surface.level[level].slice_size * layer; - pLayout->rowPitch = image->surface.level[level].pitch_bytes; - pLayout->arrayPitch = image->surface.level[level].slice_size; - pLayout->depthPitch = image->surface.level[level].slice_size; - pLayout->size = image->surface.level[level].slice_size; + pLayout->offset = surface->level[level].offset + surface->level[level].slice_size * layer; + pLayout->rowPitch = surface->level[level].pitch_bytes; + pLayout->arrayPitch = surface->level[level].slice_size; + pLayout->depthPitch = surface->level[level].slice_size; + pLayout->size = surface->level[level].slice_size; if (image->type == VK_IMAGE_TYPE_3D) - pLayout->size *= image->surface.level[level].nblk_z; + pLayout->size *= surface->level[level].nblk_z; }