egl-headless: use DisplayOptions
Switch egl-headless ui to use qapi DisplayOptions for configuration. Signed-off-by: Gerd Hoffmann <kraxel@redhat.com> Reviewed-by: Eric Blake <eblake@redhat.com> Message-id: 20180202111022.19269-8-kraxel@redhat.com Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
This commit is contained in:
parent
78782712a6
commit
0d2dd9f009
@ -505,6 +505,6 @@ static inline void early_gtk_display_init(DisplayOptions *opts)
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
/* egl-headless.c */
|
/* egl-headless.c */
|
||||||
void egl_headless_init(void);
|
void egl_headless_init(DisplayOptions *opts);
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
@ -1020,7 +1020,7 @@
|
|||||||
#
|
#
|
||||||
##
|
##
|
||||||
{ 'enum' : 'DisplayType',
|
{ 'enum' : 'DisplayType',
|
||||||
'data' : [ 'none', 'gtk', 'sdl' ] }
|
'data' : [ 'none', 'gtk', 'sdl', 'egl-headless' ] }
|
||||||
|
|
||||||
##
|
##
|
||||||
# @DisplayOptions:
|
# @DisplayOptions:
|
||||||
@ -1043,4 +1043,5 @@
|
|||||||
'discriminator' : 'type',
|
'discriminator' : 'type',
|
||||||
'data' : { 'none' : 'DisplayNoOpts',
|
'data' : { 'none' : 'DisplayNoOpts',
|
||||||
'gtk' : 'DisplayGTK',
|
'gtk' : 'DisplayGTK',
|
||||||
'sdl' : 'DisplayNoOpts' } }
|
'sdl' : 'DisplayNoOpts',
|
||||||
|
'egl-headless' : 'DisplayNoOpts' } }
|
||||||
|
@ -154,7 +154,7 @@ static const DisplayChangeListenerOps egl_ops = {
|
|||||||
.dpy_gl_update = egl_scanout_flush,
|
.dpy_gl_update = egl_scanout_flush,
|
||||||
};
|
};
|
||||||
|
|
||||||
void egl_headless_init(void)
|
void egl_headless_init(DisplayOptions *opts)
|
||||||
{
|
{
|
||||||
QemuConsole *con;
|
QemuConsole *con;
|
||||||
egl_dpy *edpy;
|
egl_dpy *edpy;
|
||||||
|
3
vl.c
3
vl.c
@ -2178,6 +2178,7 @@ static LegacyDisplayType select_display(const char *p)
|
|||||||
request_opengl = 1;
|
request_opengl = 1;
|
||||||
display_opengl = 1;
|
display_opengl = 1;
|
||||||
display = DT_EGL;
|
display = DT_EGL;
|
||||||
|
dpy.type = DISPLAY_TYPE_EGL_HEADLESS;
|
||||||
#else
|
#else
|
||||||
error_report("egl support is disabled");
|
error_report("egl support is disabled");
|
||||||
exit(1);
|
exit(1);
|
||||||
@ -4726,7 +4727,7 @@ int main(int argc, char **argv, char **envp)
|
|||||||
|
|
||||||
#ifdef CONFIG_OPENGL_DMABUF
|
#ifdef CONFIG_OPENGL_DMABUF
|
||||||
if (display_type == DT_EGL) {
|
if (display_type == DT_EGL) {
|
||||||
egl_headless_init();
|
egl_headless_init(&dpy);
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user