Currently, this parameter does nothing.
* Exactly one bit must be set in \a aspect.
*/
enum isl_format
-anv_get_isl_format(VkFormat format, VkImageAspectFlags aspect)
+anv_get_isl_format(VkFormat format, VkImageAspectFlags aspect,
+ VkImageTiling tiling)
{
const struct anv_format *anv_fmt = &anv_formats[format];
ok = isl_surf_init(&dev->isl_dev, &anv_surf->isl,
.dim = vk_to_isl_surf_dim[vk_info->imageType],
- .format = anv_get_isl_format(vk_info->format, aspect),
+ .format = anv_get_isl_format(vk_info->format, aspect, vk_info->tiling),
.width = vk_info->extent.width,
.height = vk_info->extent.height,
.depth = vk_info->extent.depth,
* an RGB format here even if the tiled image is RGBA. XXX: This doesn't
* work if the buffer is the destination.
*/
- enum isl_format linear_format = anv_get_isl_format(image->vk_format, aspect);
+ enum isl_format linear_format = anv_get_isl_format(image->vk_format, aspect,
+ VK_IMAGE_TILING_LINEAR);
return vk_format_for_size(isl_format_layouts[linear_format].bs);
}
anv_format_for_vk_format(VkFormat format);
enum isl_format
-anv_get_isl_format(VkFormat format, VkImageAspectFlags aspect);
+anv_get_isl_format(VkFormat format, VkImageAspectFlags aspect,
+ VkImageTiling tiling);
static inline bool
anv_format_is_color(const struct anv_format *format)
const VkVertexInputAttributeDescription *desc =
&info->pVertexAttributeDescriptions[i];
enum isl_format format = anv_get_isl_format(desc->format,
- VK_IMAGE_ASPECT_COLOR_BIT);
+ VK_IMAGE_ASPECT_COLOR_BIT,
+ VK_IMAGE_TILING_LINEAR);
assert(desc->binding < 32);
const VkVertexInputAttributeDescription *desc =
&info->pVertexAttributeDescriptions[i];
enum isl_format format = anv_get_isl_format(desc->format,
- VK_IMAGE_ASPECT_COLOR_BIT);
+ VK_IMAGE_ASPECT_COLOR_BIT,
+ VK_IMAGE_TILING_LINEAR);
assert(desc->binding < 32);