In preparation for follow-on changes to support frame presentation
through EGLDevice+EGLOutput, this change adds <platform_attribs>
parameter to gl_renderer_display_create().

Signed-off-by: Miguel A Vico Moya <[email protected]>
Reviewed-by: Andy Ritger <[email protected]>
Reviewed-by: James Jones <[email protected]>
---
 src/compositor-drm.c     | 1 +
 src/compositor-fbdev.c   | 1 +
 src/compositor-wayland.c | 1 +
 src/compositor-x11.c     | 2 +-
 src/gl-renderer.c        | 6 +++---
 src/gl-renderer.h        | 1 +
 6 files changed, 8 insertions(+), 4 deletions(-)

diff --git a/src/compositor-drm.c b/src/compositor-drm.c
index 3c13dc8..44b6d2a 100644
--- a/src/compositor-drm.c
+++ b/src/compositor-drm.c
@@ -1580,6 +1580,7 @@ drm_backend_create_gl_renderer(struct drm_backend *b)
        if (gl_renderer->display_create(b->compositor,
                                        EGL_PLATFORM_GBM_KHR,
                                        (void *)b->gbm,
+                                       NULL,
                                        gl_renderer->opaque_attribs,
                                        format,
                                        n_formats) < 0) {
diff --git a/src/compositor-fbdev.c b/src/compositor-fbdev.c
index 8e87c98..eb81c3f 100644
--- a/src/compositor-fbdev.c
+++ b/src/compositor-fbdev.c
@@ -788,6 +788,7 @@ fbdev_backend_create(struct weston_compositor *compositor, 
int *argc, char *argv
 
                if (gl_renderer->display_create(compositor, NO_EGL_PLATFORM,
                                                EGL_DEFAULT_DISPLAY,
+                                               NULL,
                                                gl_renderer->opaque_attribs,
                                                NULL, 0) < 0) {
                        weston_log("gl_renderer_create failed.\n");
diff --git a/src/compositor-wayland.c b/src/compositor-wayland.c
index 1e8d2ce..82ed5fe 100644
--- a/src/compositor-wayland.c
+++ b/src/compositor-wayland.c
@@ -2211,6 +2211,7 @@ wayland_backend_create(struct weston_compositor 
*compositor,
                if (gl_renderer->display_create(compositor,
                                                EGL_PLATFORM_WAYLAND_KHR,
                                                b->parent.wl_display,
+                                               NULL,
                                                gl_renderer->alpha_attribs,
                                                NULL,
                                                0) < 0) {
diff --git a/src/compositor-x11.c b/src/compositor-x11.c
index 069b321..3080484 100644
--- a/src/compositor-x11.c
+++ b/src/compositor-x11.c
@@ -1559,7 +1559,7 @@ init_gl_renderer(struct x11_backend *b)
                return -1;
 
        ret = gl_renderer->display_create(b->compositor, EGL_PLATFORM_X11_KHR,
-                                         (void *) b->dpy,
+                                         (void *) b->dpy, NULL,
                                          gl_renderer->opaque_attribs, NULL, 0);
 
        return ret;
diff --git a/src/gl-renderer.c b/src/gl-renderer.c
index 51f1eec..2e24271 100644
--- a/src/gl-renderer.c
+++ b/src/gl-renderer.c
@@ -2874,8 +2874,8 @@ platform_to_extension(EGLenum platform)
 
 static int
 gl_renderer_display_create(struct weston_compositor *ec, EGLenum platform,
-       void *native_window, const EGLint *config_attribs,
-       const EGLint *visual_id, int n_ids)
+       void *native_window, const EGLint *platform_attribs,
+       const EGLint *config_attribs, const EGLint *visual_id, int n_ids)
 {
        struct gl_renderer *gr;
        EGLint major, minor;
@@ -2917,7 +2917,7 @@ gl_renderer_display_create(struct weston_compositor *ec, 
EGLenum platform,
                if (get_platform_display && platform) {
                        gr->egl_display = get_platform_display(platform,
                                                               native_window,
-                                                              NULL);
+                                                              
platform_attribs);
                }
        }
 
diff --git a/src/gl-renderer.h b/src/gl-renderer.h
index 750a909..ecd2168 100644
--- a/src/gl-renderer.h
+++ b/src/gl-renderer.h
@@ -78,6 +78,7 @@ struct gl_renderer_interface {
        int (*display_create)(struct weston_compositor *ec,
                              EGLenum platform,
                              void *native_window,
+                             const EGLint *platform_attribs,
                              const EGLint *config_attribs,
                              const EGLint *visual_id,
                              const int n_ids);
-- 
2.8.0

_______________________________________________
wayland-devel mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/wayland-devel

Reply via email to