[Qemu-devel] [PATCH 1/3] qapi: Add "rendernode" display option for egl-headless

Erik Skultety posted 3 patches 6 years, 11 months ago
There is a newer version of this series
[Qemu-devel] [PATCH 1/3] qapi: Add "rendernode" display option for egl-headless
Posted by Erik Skultety 6 years, 11 months ago
Unlike SPICE, egl-headless doesn't offer a way of specifying the DRM
node used for OpenGL, hence QEMU always selecting the first one that is
available. Thus, add rendernode option to QAPI.

Signed-off-by: Erik Skultety <eskultet@redhat.com>
---
 qapi/ui.json | 16 +++++++++++++++-
 1 file changed, 15 insertions(+), 1 deletion(-)

diff --git a/qapi/ui.json b/qapi/ui.json
index bf9e157d5a..7ecc6eb67e 100644
--- a/qapi/ui.json
+++ b/qapi/ui.json
@@ -1037,6 +1037,19 @@
   'data'    : { '*grab-on-hover' : 'bool',
                 '*zoom-to-fit'   : 'bool'  } }
 
+##
+# @DisplayEGLHeadless:
+#
+# EGL headless display options.
+#
+# @rendernode: Which DRM render node should be used.
+#
+# Since: 3.2
+#
+##
+{ 'struct'  : 'DisplayEGLHeadless',
+  'data'    : { '*rendernode' : 'str' } }
+
  ##
  # @DisplayGLMode:
  #
@@ -1086,4 +1099,5 @@
                 '*window-close'  : 'bool',
                 '*gl'            : 'DisplayGLMode' },
   'discriminator' : 'type',
-  'data'    : { 'gtk'            : 'DisplayGTK' } }
+  'data'    : { 'gtk'            : 'DisplayGTK',
+                'egl-headless'   : 'DisplayEGLHeadless'} }
-- 
2.19.1


Re: [Qemu-devel] [PATCH 1/3] qapi: Add "rendernode" display option for egl-headless
Posted by Eric Blake 6 years, 11 months ago
On 11/15/18 9:15 AM, Erik Skultety wrote:
> Unlike SPICE, egl-headless doesn't offer a way of specifying the DRM
> node used for OpenGL, hence QEMU always selecting the first one that is
> available. Thus, add rendernode option to QAPI.
> 
> Signed-off-by: Erik Skultety <eskultet@redhat.com>
> ---
>   qapi/ui.json | 16 +++++++++++++++-
>   1 file changed, 15 insertions(+), 1 deletion(-)
> 
> diff --git a/qapi/ui.json b/qapi/ui.json
> index bf9e157d5a..7ecc6eb67e 100644
> --- a/qapi/ui.json
> +++ b/qapi/ui.json
> @@ -1037,6 +1037,19 @@
>     'data'    : { '*grab-on-hover' : 'bool',
>                   '*zoom-to-fit'   : 'bool'  } }
>   
> +##
> +# @DisplayEGLHeadless:
> +#
> +# EGL headless display options.
> +#
> +# @rendernode: Which DRM render node should be used.
> +#
> +# Since: 3.2

Either 3.1 or 4.0, depending on whether this is okay this late after 
soft freeze.  Worth mentioning that rendernode defaults to the first 
available node?

> +#
> +##
> +{ 'struct'  : 'DisplayEGLHeadless',
> +  'data'    : { '*rendernode' : 'str' } }
> +
>    ##
>    # @DisplayGLMode:
>    #
> @@ -1086,4 +1099,5 @@
>                   '*window-close'  : 'bool',
>                   '*gl'            : 'DisplayGLMode' },
>     'discriminator' : 'type',
> -  'data'    : { 'gtk'            : 'DisplayGTK' } }
> +  'data'    : { 'gtk'            : 'DisplayGTK',
> +                'egl-headless'   : 'DisplayEGLHeadless'} }
> 

-- 
Eric Blake, Principal Software Engineer
Red Hat, Inc.           +1-919-301-3266
Virtualization:  qemu.org | libvirt.org