Lines Matching defs:image
1396 struct tu_image *image,
1415 image->iova + image->lrz_offset,
1416 image->lrz_pitch * 2, PIPE_FORMAT_Z16_UNORM);
1417 ops->coords(cs, &(VkOffset2D) {}, NULL, &(VkExtent2D) {image->lrz_pitch, image->lrz_height});
1432 struct tu_image *image)
1443 image->iova + image->lrz_fc_offset, 512,
1452 struct tu_image *image,
1467 &image->layout[tu6_plane_index(image->vk.format, aspect_mask)];
1470 .iova = image->iova,
1485 struct tu_image *image,
1490 tu_image_view_copy_blit(iview, image, format, subres, layer, false);
1495 struct tu_image *image,
1500 tu6_plane_format(image->vk.format, tu6_plane_index(image->vk.format,
1502 tu_image_view_copy_blit(iview, image, format, subres, layer, false);
1856 * components by reinterpreting the other image as the "correct" swapped
1857 * format, i.e. only when the other image is linear.
1873 image_is_r8g8(struct tu_image *image)
1875 return image->layout[0].cpp == 2 &&
1876 vk_format_get_nr_components(image->vk.format) == 2;
1901 * members represent the texel dimensions of the source image and not
1902 * the destination. When copying from a compressed image to an
1903 * uncompressed image the image texel dimensions written to the
1904 * uncompressed image will be source extent divided by the compressed
1905 * texel block dimensions. When copying from an uncompressed image to a
1906 * compressed image the image texel dimensions written to the compressed
1907 * image will be the source extent multiplied by the compressed texel
1910 * This means we only have to adjust the extent if the source image is
1932 /* If an image is linear, we can always safely reinterpret it with the
1933 * other image's format and then do a regular blit.
2310 assert(src->image->vk.format == dst->image->vk.format ||
2311 (vk_format_is_depth_or_stencil(src->image->vk.format) &&
2312 vk_format_is_depth_or_stencil(dst->image->vk.format)));
2314 bool src_separate_ds = src->image->vk.format == VK_FORMAT_D32_SFLOAT_S8_UINT;
2315 bool dst_separate_ds = dst->image->vk.format == VK_FORMAT_D32_SFLOAT_S8_UINT;
2325 resolve_sysmem(cmd, cs, src->image->vk.format, dst->image->vk.format,
2333 struct tu_image *image,
2338 uint32_t level_count = vk_image_subresource_level_count(&image->vk, range);
2339 uint32_t layer_count = vk_image_subresource_layer_count(&image->vk, range);
2342 if (image->vk.format == VK_FORMAT_E5B9G9R9_UFLOAT_PACK32) {
2345 format = tu6_plane_format(image->vk.format,
2346 tu6_plane_index(image->vk.format,
2350 if (image->layout[0].depth0 > 1) {
2355 const struct blit_ops *ops = image->layout[0].nr_samples > 1 ? &r3d_ops : &r2d_ops;
2357 ops->setup(cmd, cs, format, format, aspect_mask, 0, true, image->layout[0].ubwc,
2358 image->layout[0].nr_samples);
2359 if (image->vk.format == VK_FORMAT_E5B9G9R9_UFLOAT_PACK32)
2365 if (image->layout[0].depth0 > 1)
2366 layer_count = u_minify(image->layout[0].depth0, range->baseMipLevel + j);
2369 u_minify(image->layout[0].width0, range->baseMipLevel + j),
2370 u_minify(image->layout[0].height0, range->baseMipLevel + j)
2374 tu_image_view_copy_blit(&dst, image, format, &(VkImageSubresourceLayers) {
2399 TU_FROM_HANDLE(tu_image, image, image_h);
2402 clear_image(cmd, image, (const VkClearValue*) pColor, pRanges + i, VK_IMAGE_ASPECT_COLOR_BIT);
2414 TU_FROM_HANDLE(tu_image, image, image_h);
2419 if (image->vk.format == VK_FORMAT_D32_SFLOAT_S8_UINT) {
2422 clear_image(cmd, image, (const VkClearValue*) pDepthStencil, range, BIT(b));
2426 clear_image(cmd, image, (const VkClearValue*) pDepthStencil, range, range->aspectMask);
2429 tu_lrz_clear_depth_image(cmd, image, pDepthStencil, rangeCount, pRanges);
2967 if (iview->image->vk.format == VK_FORMAT_D32_SFLOAT_S8_UINT) {
3138 if (iview->image->vk.format == VK_FORMAT_D32_SFLOAT_S8_UINT) {
3211 if (iview->image->vk.format == VK_FORMAT_D32_SFLOAT_S8_UINT) {
3267 /* x2/y2 can be unaligned if equal to the size of the image, since it will
3282 * time because tu_attachment_store_unaligned() looks at the image views, which