1From c4d479fab0179681b493717b5dfc9294cbe91ad3 Mon Sep 17 00:00:00 2001
2From: Jeffy Chen <jeffy.chen@rock-chips.com>
3Date: Fri, 22 Nov 2019 12:06:35 +0800
4Subject: [PATCH 22/93] gl-renderer: Support NV16 shmem format
5
6Signed-off-by: Jeffy Chen <jeffy.chen@rock-chips.com>
7---
8 libweston/renderer-gl/gl-renderer.c | 12 ++++++++++++
9 1 file changed, 12 insertions(+)
10
11diff --git a/libweston/renderer-gl/gl-renderer.c b/libweston/renderer-gl/gl-renderer.c
12index 3437bf2..bbd1cd4 100644
13--- a/libweston/renderer-gl/gl-renderer.c
14+++ b/libweston/renderer-gl/gl-renderer.c
15@@ -271,6 +271,17 @@ struct yuv_format_descriptor yuv_formats[] = {
16 			.format = DRM_FORMAT_GR88,
17 			.plane_index = 1
18 		}}
19+	}, {
20+		.format = DRM_FORMAT_NV16,
21+		.output_planes = 2,
22+		.shader_variant = SHADER_VARIANT_Y_UV,
23+		{{
24+			.format = DRM_FORMAT_R8,
25+			.plane_index = 0
26+		}, {
27+			.format = DRM_FORMAT_GR88,
28+			.plane_index = 1
29+		}}
30 	}, {
31 		.format = DRM_FORMAT_YUV420,
32 		.output_planes = 3,
33@@ -3804,6 +3815,7 @@ gl_renderer_display_create(struct weston_compositor *ec,
34 	wl_display_add_shm_format(ec->wl_display, WL_SHM_FORMAT_YUV420);
35 	wl_display_add_shm_format(ec->wl_display, WL_SHM_FORMAT_YUV444);
36 	wl_display_add_shm_format(ec->wl_display, WL_SHM_FORMAT_NV12);
37+	wl_display_add_shm_format(ec->wl_display, WL_SHM_FORMAT_NV16);
38 	wl_display_add_shm_format(ec->wl_display, WL_SHM_FORMAT_YUYV);
39 	wl_display_add_shm_format(ec->wl_display, WL_SHM_FORMAT_XYUV8888);
40 #if __BYTE_ORDER == __LITTLE_ENDIAN
41--
422.20.1
43
44