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