[Mesa-dev] [PATCH] anv: FORMAT_FEATURE_TRANSFER_SRC/DST_BIT_KHR not used with VkFormatProperties.bufferFeatures

Lionel Landwerlin lionel.g.landwerlin at intel.com
Thu Jun 15 00:13:03 UTC 2017


Out of curiosity, does this fix a test (maybe upcoming one)?

Otherwise sounds fair :

Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin at intel.com>

Thanks!

On 14/06/17 17:55, Andres Gomez wrote:
> VK_FORMAT_FEATURE_TRANSFER_[SRC|DST]_BIT_KHR is a flag value of the
> VkFormatFeatureFlagBits enum that can only be hold and checked against
> the linearTilingFeatures or optimalTilingFeatures members of the
> VkFormatProperties struct but not the bufferFeatures member.
>
> >From the VulkanĀ® 1.0.51, with the VK_KHR_maintenance1 extension,
> section 32.3.2 docs for VkFormatProperties:
>
>     "* linearTilingFeatures is a bitmask of VkFormatFeatureFlagBits
>        specifying features supported by images created with a tiling
>        parameter of VK_IMAGE_TILING_LINEAR.
>
>      * optimalTilingFeatures is a bitmask of VkFormatFeatureFlagBits
>        specifying features supported by images created with a tiling
>        parameter of VK_IMAGE_TILING_OPTIMAL.
>
>      * bufferFeatures is a bitmask of VkFormatFeatureFlagBits
>        specifying features supported by buffers."
>
>      ...
>
>      Bits which can be set in the VkFormatProperties features
>      linearTilingFeatures, optimalTilingFeatures, and bufferFeatures
>      are:
>
>      typedef enum VkFormatFeatureFlagBits {
>
>      ...
>
>        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR = 0x00004000,
>        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR = 0x00008000,
>
>      ...
>
>      } VkFormatFeatureFlagBits;
>
>      ...
>
>      The following bits may be set in linearTilingFeatures and
>      optimalTilingFeatures, specifying that the features are supported
>      by images or image views created with the queried
>      vkGetPhysicalDeviceFormatProperties::format:
>
>      ...
>
>      * VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR specifies that an image
>        can be used as a source image for copy commands.
>
>      * VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR specifies that an image
>        can be used as a destination image for copy commands and clear
>        commands."
>
> Cc: Jason Ekstrand <jason.ekstrand at intel.com>
> Cc: Iago Toral Quiroga <itoral at igalia.com>
> Cc: Lionel Landwerlin <lionel.g.landwerlin at intel.com>
> Signed-off-by: Andres Gomez <agomez at igalia.com>
> ---
>   src/intel/vulkan/anv_formats.c | 5 -----
>   1 file changed, 5 deletions(-)
>
> diff --git a/src/intel/vulkan/anv_formats.c b/src/intel/vulkan/anv_formats.c
> index 104d4f7a5fe..0bc81d12dab 100644
> --- a/src/intel/vulkan/anv_formats.c
> +++ b/src/intel/vulkan/anv_formats.c
> @@ -378,11 +378,6 @@ get_buffer_format_properties(const struct gen_device_info *devinfo,
>      if (format == ISL_FORMAT_R32_SINT || format == ISL_FORMAT_R32_UINT)
>         flags |= VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_ATOMIC_BIT;
>   
> -   if (flags) {
> -      flags |= VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR |
> -               VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR;
> -   }
> -
>      return flags;
>   }
>   




More information about the mesa-dev mailing list