[igt-dev] [PATCH i-g-t] lib/veboxcopy: Add packed 64bpp 16b per channel yuv support

Juha-Pekka Heikkila juhapekka.heikkila at gmail.com
Tue May 30 12:04:40 UTC 2023


Enable Vebox engine to copy packed 64bpp yuv surfaces.

Signed-off-by: Juha-Pekka Heikkila <juhapekka.heikkila at gmail.com>
---
 lib/veboxcopy_gen12.c | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/lib/veboxcopy_gen12.c b/lib/veboxcopy_gen12.c
index 4ab6ced3..44c914e7 100644
--- a/lib/veboxcopy_gen12.c
+++ b/lib/veboxcopy_gen12.c
@@ -30,6 +30,7 @@
 #define PLANAR_420_8	4
 #define PACKED_444A_8	5
 #define R8G8B8A8_UNORM	8
+#define PACKED_444_16	9
 #define PLANAR_420_16	12
 
 struct vebox_surface_state {
@@ -342,6 +343,10 @@ void gen12_vebox_copyfunc(struct intel_bb *ibb,
 		format = src->format_is_yuv ? PACKED_444A_8 :
 					      R8G8B8A8_UNORM;
 		break;
+	case 64:
+		igt_assert(!src->format_is_yuv_semiplanar && src->format_is_yuv);
+		format = PACKED_444_16;
+		break;
 	default:
 		igt_assert_f(0, "Unsupported bpp: %u\n", src->bpp);
 	}
-- 
2.25.1



More information about the igt-dev mailing list