summarylogtreecommitdiffstats
path: root/0003-gl-renderer-Add-EGL-client-support-for-EGLStream-fra.patch
diff options
context:
space:
mode:
authorMiguel A. Vico2019-08-26 14:21:31 -0700
committerMiguel A. Vico2019-08-26 14:29:48 -0700
commite734459dd41c81d42ee01a6ce2272107c605bba4 (patch)
tree69a5fe1659d277a4a1bcef613670342d82c5f02c /0003-gl-renderer-Add-EGL-client-support-for-EGLStream-fra.patch
parent5469d28233451ebb81bb54db871436c515c87384 (diff)
downloadaur-e734459dd41c81d42ee01a6ce2272107c605bba4.tar.gz
Update to weston 7.0.0
Diffstat (limited to '0003-gl-renderer-Add-EGL-client-support-for-EGLStream-fra.patch')
-rw-r--r--0003-gl-renderer-Add-EGL-client-support-for-EGLStream-fra.patch58
1 files changed, 29 insertions, 29 deletions
diff --git a/0003-gl-renderer-Add-EGL-client-support-for-EGLStream-fra.patch b/0003-gl-renderer-Add-EGL-client-support-for-EGLStream-fra.patch
index 387031d8e989..3b385346c138 100644
--- a/0003-gl-renderer-Add-EGL-client-support-for-EGLStream-fra.patch
+++ b/0003-gl-renderer-Add-EGL-client-support-for-EGLStream-fra.patch
@@ -1,4 +1,4 @@
-From 720e02507651efefe3a4a42077f719dd9f74b07c Mon Sep 17 00:00:00 2001
+From ef918a27b0134d44d680c2cd034a1b50a87edc3e Mon Sep 17 00:00:00 2001
From: "Miguel A. Vico" <mvicomoya@nvidia.com>
Date: Thu, 29 Mar 2018 00:15:49 -0700
Subject: [PATCH 3/6] gl-renderer: Add EGL client support for EGLStream frame
@@ -28,14 +28,14 @@ Signed-off-by: Erik Kurzinger <ekurzinger@nvidia.com>
Reviewed-by: Adam Cheney <acheney@nvidia.com>
Reviewed-by: James Jones <jajones@nvidia.com>
---
- libweston/gl-renderer.c | 184 ++++++++++++++++++++++++++++++++++++++++
- shared/weston-egl-ext.h | 5 ++
+ libweston/renderer-gl/gl-renderer.c | 184 ++++++++++++++++++++++++++++
+ shared/weston-egl-ext.h | 5 +
2 files changed, 189 insertions(+)
-diff --git a/libweston/gl-renderer.c b/libweston/gl-renderer.c
-index f3fb2c65..4bae6546 100644
---- a/libweston/gl-renderer.c
-+++ b/libweston/gl-renderer.c
+diff --git a/libweston/renderer-gl/gl-renderer.c b/libweston/renderer-gl/gl-renderer.c
+index 215ed9b3..22a64f81 100644
+--- a/libweston/renderer-gl/gl-renderer.c
++++ b/libweston/renderer-gl/gl-renderer.c
@@ -189,6 +189,9 @@ struct gl_surface_state {
int hsub[3]; /* horizontal subsampling per plane */
int vsub[3]; /* vertical subsampling per plane */
@@ -46,32 +46,32 @@ index f3fb2c65..4bae6546 100644
struct weston_surface *surface;
/* Whether this surface was used in the current output repaint.
-@@ -248,6 +251,7 @@ struct gl_renderer {
+@@ -253,6 +256,7 @@ struct gl_renderer {
PFNEGLCREATESTREAMKHRPROC create_stream;
PFNEGLDESTROYSTREAMKHRPROC destroy_stream;
+ PFNEGLQUERYSTREAMKHRPROC query_stream;
- int has_egl_stream;
+ bool has_egl_stream;
PFNEGLCREATESTREAMPRODUCERSURFACEKHRPROC create_stream_producer_surface;
-@@ -257,11 +261,16 @@ struct gl_renderer {
- int has_egl_stream_consumer_egloutput;
+@@ -262,11 +266,16 @@ struct gl_renderer {
+ bool has_egl_stream_consumer_egloutput;
#ifdef EGL_NV_stream_attrib
+ PFNEGLCREATESTREAMATTRIBNVPROC create_stream_attrib;
PFNEGLSTREAMCONSUMERACQUIREATTRIBNVPROC stream_consumer_acquire_attrib;
#endif
- int has_egl_stream_attrib;
- int has_egl_stream_acquire_mode;
+ bool has_egl_stream_attrib;
+ bool has_egl_stream_acquire_mode;
+ PFNEGLSTREAMCONSUMERGLTEXTUREEXTERNALKHRPROC stream_consumer_gltexture;
-+ int has_egl_stream_consumer_gltexture;
-+ int has_egl_wayland_eglstream;
++ bool has_egl_stream_consumer_gltexture;
++ bool has_egl_wayland_eglstream;
+
- int has_dmabuf_import;
- struct wl_list dmabuf_images;
+ bool has_gl_texture_rg;
-@@ -2528,6 +2537,145 @@ gl_renderer_attach_dmabuf(struct weston_surface *surface,
+ struct gl_shader texture_shader_rgba;
+@@ -2617,6 +2626,145 @@ gl_renderer_attach_dmabuf(struct weston_surface *surface,
surface->is_opaque = dmabuf_is_opaque(dmabuf);
}
@@ -217,9 +217,9 @@ index f3fb2c65..4bae6546 100644
static void
gl_renderer_attach(struct weston_surface *es, struct weston_buffer *buffer)
{
-@@ -2554,6 +2702,12 @@ gl_renderer_attach(struct weston_surface *es, struct weston_buffer *buffer)
+@@ -2643,6 +2791,12 @@ gl_renderer_attach(struct weston_surface *es, struct weston_buffer *buffer)
gs->buffer_type = BUFFER_TYPE_NULL;
- gs->y_inverted = 1;
+ gs->y_inverted = true;
es->is_opaque = false;
+
+ if (gs->egl_stream != EGL_NO_STREAM_KHR) {
@@ -230,7 +230,7 @@ index f3fb2c65..4bae6546 100644
return;
}
-@@ -2561,6 +2715,9 @@ gl_renderer_attach(struct weston_surface *es, struct weston_buffer *buffer)
+@@ -2650,6 +2804,9 @@ gl_renderer_attach(struct weston_surface *es, struct weston_buffer *buffer)
if (shm_buffer)
gl_renderer_attach_shm(es, buffer, shm_buffer);
@@ -240,7 +240,7 @@ index f3fb2c65..4bae6546 100644
else if (gr->has_bind_display &&
gr->query_buffer(gr->egl_display, (void *)buffer->resource,
EGL_TEXTURE_FORMAT, &format))
-@@ -2764,6 +2921,10 @@ surface_state_destroy(struct gl_surface_state *gs, struct gl_renderer *gr)
+@@ -2853,6 +3010,10 @@ surface_state_destroy(struct gl_surface_state *gs, struct gl_renderer *gr)
weston_buffer_reference(&gs->buffer_ref, NULL);
weston_buffer_release_reference(&gs->buffer_release_ref, NULL);
pixman_region32_fini(&gs->texture_damage);
@@ -251,7 +251,7 @@ index f3fb2c65..4bae6546 100644
free(gs);
}
-@@ -2814,6 +2975,8 @@ gl_renderer_create_surface(struct weston_surface *surface)
+@@ -2903,6 +3064,8 @@ gl_renderer_create_surface(struct weston_surface *surface)
gs->surface = surface;
@@ -260,7 +260,7 @@ index f3fb2c65..4bae6546 100644
pixman_region32_init(&gs->texture_damage);
surface->renderer_state = gs;
-@@ -3570,14 +3733,19 @@ gl_renderer_setup_egl_extensions(struct weston_compositor *ec)
+@@ -3661,14 +3824,19 @@ gl_renderer_setup_egl_extensions(struct weston_compositor *ec)
(void *) eglGetProcAddress("eglQueryOutputLayerAttribEXT");
gr->create_stream = (void *) eglGetProcAddress("eglCreateStreamKHR");
gr->destroy_stream = (void *) eglGetProcAddress("eglDestroyStreamKHR");
@@ -280,20 +280,20 @@ index f3fb2c65..4bae6546 100644
extensions =
(const char *) eglQueryString(gr->egl_display, EGL_EXTENSIONS);
-@@ -3676,6 +3844,12 @@ gl_renderer_setup_egl_extensions(struct weston_compositor *ec)
+@@ -3770,6 +3938,12 @@ gl_renderer_setup_egl_extensions(struct weston_compositor *ec)
if (weston_check_egl_extension(extensions, "EGL_EXT_stream_acquire_mode"))
- gr->has_egl_stream_acquire_mode = 1;
+ gr->has_egl_stream_acquire_mode = true;
+ if (weston_check_egl_extension(extensions, "EGL_KHR_stream_consumer_gltexture"))
-+ gr->has_egl_stream_consumer_gltexture = 1;
++ gr->has_egl_stream_consumer_gltexture = true;
+
+ if (weston_check_egl_extension(extensions, "EGL_WL_wayland_eglstream"))
-+ gr->has_egl_wayland_eglstream = 1;
++ gr->has_egl_wayland_eglstream = true;
+
renderer_setup_egl_client_extensions(gr);
return 0;
-@@ -3953,6 +4127,16 @@ gl_renderer_display_create(struct weston_compositor *ec, EGLenum platform,
+@@ -4047,6 +4221,16 @@ gl_renderer_display_create(struct weston_compositor *ec, EGLenum platform,
goto fail_terminate;
}