From 3295cb9700de231926c02058afb7dc59cfe69494 Mon Sep 17 00:00:00 2001 From: Rebecca Mckeever Date: Wed, 23 Oct 2024 18:48:52 -0700 Subject: [PATCH] panvk: Use vk_image::drm_format_mod instead of pan_image::layout.modifier This will help prepare for multiplane, where panvk_image will have an array of pan_image structs to represent the planes. The format modifier is the same for all planes, so we can use vk_image::drm_format_mod. Signed-off-by: Rebecca Mckeever Reviewed-by: Boris Brezillon Reviewed-by: Chia-I Wu Part-of: --- src/panfrost/vulkan/panvk_image.c | 2 +- src/panfrost/vulkan/panvk_meta.h | 2 +- src/panfrost/vulkan/panvk_vX_cmd_draw.c | 2 +- src/panfrost/vulkan/panvk_vX_cmd_meta.c | 2 +- src/panfrost/vulkan/panvk_vX_image_view.c | 2 +- 5 files changed, 5 insertions(+), 5 deletions(-) diff --git a/src/panfrost/vulkan/panvk_image.c b/src/panfrost/vulkan/panvk_image.c index 020db549b34..89a9cb1061e 100644 --- a/src/panfrost/vulkan/panvk_image.c +++ b/src/panfrost/vulkan/panvk_image.c @@ -437,7 +437,7 @@ panvk_BindImageMemory2(VkDevice device, uint32_t bindInfoCount, } /* Reset the AFBC headers */ - if (drm_is_afbc(image->pimage.layout.modifier)) { + if (drm_is_afbc(image->vk.drm_format_mod)) { /* Transient CPU mapping */ void *base = pan_kmod_bo_mmap(image->bo, 0, pan_kmod_bo_size(image->bo), diff --git a/src/panfrost/vulkan/panvk_meta.h b/src/panfrost/vulkan/panvk_meta.h index 4237766e883..f7498a23bb6 100644 --- a/src/panfrost/vulkan/panvk_meta.h +++ b/src/panfrost/vulkan/panvk_meta.h @@ -48,7 +48,7 @@ panvk_meta_get_uint_format_for_blk_size(unsigned blk_sz) static inline struct vk_meta_copy_image_properties panvk_meta_copy_get_image_properties(struct panvk_image *img) { - uint64_t mod = img->pimage.layout.modifier; + uint64_t mod = img->vk.drm_format_mod; enum pipe_format pfmt = vk_format_to_pipe_format(img->vk.format); unsigned blk_sz = util_format_get_blocksize(pfmt); struct vk_meta_copy_image_properties props = {0}; diff --git a/src/panfrost/vulkan/panvk_vX_cmd_draw.c b/src/panfrost/vulkan/panvk_vX_cmd_draw.c index 528e05ad80b..eff9acef8ad 100644 --- a/src/panfrost/vulkan/panvk_vX_cmd_draw.c +++ b/src/panfrost/vulkan/panvk_vX_cmd_draw.c @@ -119,7 +119,7 @@ render_state_set_s_attachment(struct panvk_cmd_buffer *cmdbuf, state->render.s_attachment.fmt = iview->vk.format; state->render.bound_attachments |= MESA_VK_RP_ATTACHMENT_STENCIL_BIT; - if (drm_is_afbc(img->pimage.layout.modifier)) { + if (drm_is_afbc(img->vk.drm_format_mod)) { assert(fbinfo->zs.view.zs == &iview->pview || !fbinfo->zs.view.zs); fbinfo->zs.view.zs = &iview->pview; } else { diff --git a/src/panfrost/vulkan/panvk_vX_cmd_meta.c b/src/panfrost/vulkan/panvk_vX_cmd_meta.c index edb643ef478..7f5477b1059 100644 --- a/src/panfrost/vulkan/panvk_vX_cmd_meta.c +++ b/src/panfrost/vulkan/panvk_vX_cmd_meta.c @@ -17,7 +17,7 @@ copy_to_image_use_gfx_pipeline(struct panvk_device *dev, return true; /* Writes to AFBC images must go through the graphics pipeline. */ - if (drm_is_afbc(dst_img->pimage.layout.modifier)) + if (drm_is_afbc(dst_img->vk.drm_format_mod)) return true; return false; diff --git a/src/panfrost/vulkan/panvk_vX_image_view.c b/src/panfrost/vulkan/panvk_vX_image_view.c index 85d039e5714..fc60cafb13f 100644 --- a/src/panfrost/vulkan/panvk_vX_image_view.c +++ b/src/panfrost/vulkan/panvk_vX_image_view.c @@ -233,7 +233,7 @@ panvk_per_arch(CreateImageView)(VkDevice _device, assert(fmt_blksize < BITFIELD_MASK(10)); assert(hw_fmt < BITFIELD_MASK(22)); - cfg.type = image->pimage.layout.modifier == DRM_FORMAT_MOD_LINEAR + cfg.type = image->vk.drm_format_mod == DRM_FORMAT_MOD_LINEAR ? MALI_ATTRIBUTE_TYPE_3D_LINEAR : MALI_ATTRIBUTE_TYPE_3D_INTERLEAVED; cfg.pointer = image->pimage.data.base + offset;