ac/surface: store CMASK pitch and height to radeon_surf

Only GFX9+ is currently supported.

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Acked-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12140>
This commit is contained in:
Samuel Pitoiset
2021-07-29 09:04:45 +02:00
committed by Marge Bot
parent 132b205566
commit 1f12c3ccc1
2 changed files with 4 additions and 0 deletions

View File

@@ -1903,6 +1903,8 @@ static int gfx9_compute_miptree(struct ac_addrlib *addrlib, const struct radeon_
surf->cmask_size = cout.cmaskBytes;
surf->cmask_alignment_log2 = util_logbase2(cout.baseAlign);
surf->cmask_slice_size = cout.sliceSize;
surf->cmask_pitch = cout.pitch;
surf->cmask_height = cout.height;
surf->u.gfx9.color.cmask_level0.offset = meta_mip_info[0].offset;
surf->u.gfx9.color.cmask_level0.size = meta_mip_info[0].sliceSize;
}

View File

@@ -368,6 +368,8 @@ struct radeon_surf {
uint32_t cmask_size;
uint32_t cmask_slice_size;
uint16_t cmask_pitch; /* GFX9+ */
uint16_t cmask_height; /* GFX9+ */
/* All buffers combined. */
uint64_t meta_offset; /* DCC or HTILE */