diff options
author | Jason Ekstrand <[email protected]> | 2020-01-16 13:38:55 -0600 |
---|---|---|
committer | Marge Bot <[email protected]> | 2020-01-17 18:27:29 +0000 |
commit | 6790397346ccafbe1baa2ef03ce33d6bef5f257c (patch) | |
tree | 42294d77795ba40237e13b1023327613febacc5b /src/intel/vulkan/anv_private.h | |
parent | 44f5a92c0b16c18d7e0f5b73c243a68c94d97ad4 (diff) |
anv: Support modifiers in GetImageFormatProperties2
Images with modifiers come with restrictions:
1. They have to be simple 2D images right now
2. They need to have a sensible format (not compressed, multi-plane, or
non-power-of-two)
3. If a CCS modifier is being requested, they have to actually support
CCS_E and be CCS-compatible with any other formats the client may
wish to use for image views.
Reviewed-by: Lionel Landwerlin <[email protected]>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3434>
Diffstat (limited to 'src/intel/vulkan/anv_private.h')
-rw-r--r-- | src/intel/vulkan/anv_private.h | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/intel/vulkan/anv_private.h b/src/intel/vulkan/anv_private.h index dd47df9a09d..b41e1a2ddbd 100644 --- a/src/intel/vulkan/anv_private.h +++ b/src/intel/vulkan/anv_private.h @@ -3287,6 +3287,12 @@ anv_get_isl_format(const struct gen_device_info *devinfo, VkFormat vk_format, return anv_get_format_plane(devinfo, vk_format, aspect, tiling).isl_format; } +bool anv_formats_ccs_e_compatible(const struct gen_device_info *devinfo, + VkImageCreateFlags create_flags, + VkFormat vk_format, + VkImageTiling vk_tiling, + const VkImageFormatListCreateInfoKHR *fmt_list); + static inline struct isl_swizzle anv_swizzle_for_render(struct isl_swizzle swizzle) { |