Switch egl-headless ui to use qapi DisplayOptions for configuration. Signed-off-by: Gerd Hoffmann <kra...@redhat.com> --- include/ui/console.h | 2 +- ui/egl-headless.c | 2 +- vl.c | 3 ++- qapi/ui.json | 5 +++-- 4 files changed, 7 insertions(+), 5 deletions(-)
diff --git a/include/ui/console.h b/include/ui/console.h index deee5bb606..4cb623112e 100644 --- a/include/ui/console.h +++ b/include/ui/console.h @@ -530,6 +530,6 @@ static inline void early_gtk_display_init(DisplayOptions *opts) #endif /* egl-headless.c */ -void egl_headless_init(void); +void egl_headless_init(DisplayOptions *opts); #endif diff --git a/ui/egl-headless.c b/ui/egl-headless.c index 5d50226869..38b3766548 100644 --- a/ui/egl-headless.c +++ b/ui/egl-headless.c @@ -154,7 +154,7 @@ static const DisplayChangeListenerOps egl_ops = { .dpy_gl_update = egl_scanout_flush, }; -void egl_headless_init(void) +void egl_headless_init(DisplayOptions *opts) { QemuConsole *con; egl_dpy *edpy; diff --git a/vl.c b/vl.c index c17dedfa4e..1d801dd96d 100644 --- a/vl.c +++ b/vl.c @@ -2181,6 +2181,7 @@ static LegacyDisplayType select_display(const char *p) request_opengl = 1; display_opengl = 1; display = DT_EGL; + dpy.type = DISPLAY_TYPE_EGL_HEADLESS; #else fprintf(stderr, "egl support is disabled\n"); exit(1); @@ -4737,7 +4738,7 @@ int main(int argc, char **argv, char **envp) #ifdef CONFIG_OPENGL_DMABUF if (display_type == DT_EGL) { - egl_headless_init(); + egl_headless_init(&dpy); } #endif diff --git a/qapi/ui.json b/qapi/ui.json index 52220ed373..cc489b7856 100644 --- a/qapi/ui.json +++ b/qapi/ui.json @@ -1017,7 +1017,7 @@ # ## { 'enum' : 'DisplayType', - 'data' : [ 'none', 'gtk', 'sdl' ] } + 'data' : [ 'none', 'gtk', 'sdl', 'egl-headless' ] } ## # @DisplayOptions: @@ -1040,4 +1040,5 @@ 'discriminator' : 'type', 'data' : { 'none' : 'DisplayNoOpts', 'gtk' : 'DisplayGTK', - 'sdl' : 'DisplayNoOpts' } } + 'sdl' : 'DisplayNoOpts', + 'egl-headless' : 'DisplayNoOpts' } } -- 2.9.3