Mesa (master): util/format: translate 422_UNORM and 420_UNORM vulkan formats
GitLab Mirror
gitlab-mirror at kemper.freedesktop.org
Wed May 20 13:45:48 UTC 2020
Module: Mesa
Branch: master
Commit: 75d7ee80291d6693ca2611bf8ad2bb14a34588db
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=75d7ee80291d6693ca2611bf8ad2bb14a34588db
Author: Jonathan Marek <jonathan at marek.ca>
Date: Tue Apr 7 23:40:37 2020 -0400
util/format: translate 422_UNORM and 420_UNORM vulkan formats
Signed-off-by: Jonathan Marek <jonathan at marek.ca>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4590>
---
src/vulkan/util/vk_format.c | 16 ++++++++++++++--
1 file changed, 14 insertions(+), 2 deletions(-)
diff --git a/src/vulkan/util/vk_format.c b/src/vulkan/util/vk_format.c
index f23575958b3..9afe89f7f20 100644
--- a/src/vulkan/util/vk_format.c
+++ b/src/vulkan/util/vk_format.c
@@ -244,8 +244,20 @@ static const enum pipe_format vk_format_map[] = {
enum pipe_format
vk_format_to_pipe_format(enum VkFormat vkformat)
{
- if (vkformat >= ARRAY_SIZE(vk_format_map))
- return PIPE_FORMAT_NONE;
+ if (vkformat >= ARRAY_SIZE(vk_format_map)) {
+ switch (vkformat) {
+ case VK_FORMAT_G8B8G8R8_422_UNORM:
+ return PIPE_FORMAT_YUYV;
+ case VK_FORMAT_B8G8R8G8_422_UNORM:
+ return PIPE_FORMAT_UYVY;
+ case VK_FORMAT_G8_B8_R8_3PLANE_420_UNORM:
+ return PIPE_FORMAT_YV12;
+ case VK_FORMAT_G8_B8R8_2PLANE_420_UNORM:
+ return PIPE_FORMAT_NV12;
+ default:
+ return PIPE_FORMAT_NONE;
+ }
+ }
/* Unpopulated entries in the table must be PIPE_FORMAT_NONE */
STATIC_ASSERT(PIPE_FORMAT_NONE == 0);
More information about the mesa-commit
mailing list