| Message ID | 20250618-virglrenderer-upstream-v1-3-57525ac8406e@gmail.com |
|---|---|
| State | Superseded, archived |
| Headers | show |
| Series | package/virglrenderer: new package | expand |
Hello Joseph, All, Le 19/06/2025 à 02:59, Joseph Kogut a écrit : > Add optional virglrenderer support. > > This feature isn't very useful with opengl disabled, so enable that > too. > > https://www.qemu.org/docs/master/system/devices/virtio-gpu.html#virtio-gpu-virglrenderer Is host-qemu package could use virglrenderer (host-virglrenderer)? (probably not due to host-mesa) > > Signed-off-by: Joseph Kogut <joseph.kogut@gmail.com> > --- > package/qemu/Config.in | 12 ++++++++++++ > package/qemu/qemu.mk | 8 +++++++- > 2 files changed, 19 insertions(+), 1 deletion(-) > > diff --git a/package/qemu/Config.in b/package/qemu/Config.in > index 2d15ab1ea9c7889939e3fa4c532f3403c26edaed..334f1dcf5f68a2b3c5e72b4e67e68f94ac665e33 100644 > --- a/package/qemu/Config.in > +++ b/package/qemu/Config.in > @@ -100,6 +100,18 @@ config BR2_PACKAGE_QEMU_SDL > Say 'y' to enable the SDL frontend, that is, a graphical > window presenting the VM's display. > > +comment "OpenGL and virglrenderer need an OpenGL and/or OpenGL EGL backend" > + depends on !(BR2_PACKAGE_HAS_LIBEGL || BR2_PACKAGE_HASLIBGL) s/BR2_PACKAGE_HASLIBGL/BR2_PACKAGE_HAS_LIBGL/ > + > +config BR2_PACKAGE_QEMU_VIRGLRENDERER > + bool "Enable virglrenderer" > + depends on BR2_PACKAGE_HAS_LIBEGL || BR2_PACKAGE_HAS_LIBGL # virglrenderer > + select BR2_PACKAGE_VIRGLRENDERER > + help > + Say 'y' to enable virglrenderer, enabling GL and > + Vulkan passthrough from the host to the guest > + through virtio-gpu. > + > config BR2_PACKAGE_QEMU_FDT > bool "Enable FDT" > select BR2_PACKAGE_DTC > diff --git a/package/qemu/qemu.mk b/package/qemu/qemu.mk > index fdc8591e546ab6b96fdb02b3742b75f587be239f..4221e027c07924f681359179692743420ffaa38e 100644 > --- a/package/qemu/qemu.mk > +++ b/package/qemu/qemu.mk > @@ -261,6 +261,13 @@ else > QEMU_OPTS += --disable-usb-redir > endif > > +ifeq ($(BR2_PACKAGE_QEMU_VIRGLRENDERER),y) > +QEMU_OPTS += --enable-virglrenderer --enable-opengl I'm wondering (I would prefer) if we need a separate option to enable opengl support in Qemu. Best regards, Romain > +QEMU_DEPENDENCIES += virglrenderer libepoxy > +else > +QEMU_OPTS += --disable-virglrenderer --disable-opengl > +endif > + > ifeq ($(BR2_STATIC_LIBS),y) > QEMU_OPTS += --static > endif > @@ -310,7 +317,6 @@ define QEMU_CONFIGURE_CMDS > --disable-membarrier \ > --disable-mpath \ > --disable-netmap \ > - --disable-opengl \ > --disable-oss \ > --disable-pa \ > --disable-plugins \
Hello Romain, On Sun, Jul 6, 2025 at 4:41 AM Romain Naour <romain.naour@smile.fr> wrote: > > Hello Joseph, All, > > Le 19/06/2025 à 02:59, Joseph Kogut a écrit : > > Add optional virglrenderer support. > > > > This feature isn't very useful with opengl disabled, so enable that > > too. > > > > https://www.qemu.org/docs/master/system/devices/virtio-gpu.html#virtio-gpu-virglrenderer > > Is host-qemu package could use virglrenderer (host-virglrenderer)? > (probably not due to host-mesa) > I think I looked into this when developing this patch series, and while it's technically feasible (and useful for testing!), there were blockers. It's something that could be explored in later patches. As you mention, we'd have to have libgl on the host, libepoxy, libegl, etc. > > > > Signed-off-by: Joseph Kogut <joseph.kogut@gmail.com> > > --- > > package/qemu/Config.in | 12 ++++++++++++ > > package/qemu/qemu.mk | 8 +++++++- > > 2 files changed, 19 insertions(+), 1 deletion(-) > > > > diff --git a/package/qemu/Config.in b/package/qemu/Config.in > > index 2d15ab1ea9c7889939e3fa4c532f3403c26edaed..334f1dcf5f68a2b3c5e72b4e67e68f94ac665e33 100644 > > --- a/package/qemu/Config.in > > +++ b/package/qemu/Config.in > > @@ -100,6 +100,18 @@ config BR2_PACKAGE_QEMU_SDL > > Say 'y' to enable the SDL frontend, that is, a graphical > > window presenting the VM's display. > > > > +comment "OpenGL and virglrenderer need an OpenGL and/or OpenGL EGL backend" > > + depends on !(BR2_PACKAGE_HAS_LIBEGL || BR2_PACKAGE_HASLIBGL) > > s/BR2_PACKAGE_HASLIBGL/BR2_PACKAGE_HAS_LIBGL/ > Thanks, I'll fix this. > > + > > +config BR2_PACKAGE_QEMU_VIRGLRENDERER > > + bool "Enable virglrenderer" > > + depends on BR2_PACKAGE_HAS_LIBEGL || BR2_PACKAGE_HAS_LIBGL # virglrenderer > > + select BR2_PACKAGE_VIRGLRENDERER > > + help > > + Say 'y' to enable virglrenderer, enabling GL and > > + Vulkan passthrough from the host to the guest > > + through virtio-gpu. > > + > > config BR2_PACKAGE_QEMU_FDT > > bool "Enable FDT" > > select BR2_PACKAGE_DTC > > diff --git a/package/qemu/qemu.mk b/package/qemu/qemu.mk > > index fdc8591e546ab6b96fdb02b3742b75f587be239f..4221e027c07924f681359179692743420ffaa38e 100644 > > --- a/package/qemu/qemu.mk > > +++ b/package/qemu/qemu.mk > > @@ -261,6 +261,13 @@ else > > QEMU_OPTS += --disable-usb-redir > > endif > > > > +ifeq ($(BR2_PACKAGE_QEMU_VIRGLRENDERER),y) > > +QEMU_OPTS += --enable-virglrenderer --enable-opengl > > I'm wondering (I would prefer) if we need a separate option to enable opengl > support in Qemu. > I think this makes sense. The virglrenderer config could just select this. Best, Joseph
diff --git a/package/qemu/Config.in b/package/qemu/Config.in index 2d15ab1ea9c7889939e3fa4c532f3403c26edaed..334f1dcf5f68a2b3c5e72b4e67e68f94ac665e33 100644 --- a/package/qemu/Config.in +++ b/package/qemu/Config.in @@ -100,6 +100,18 @@ config BR2_PACKAGE_QEMU_SDL Say 'y' to enable the SDL frontend, that is, a graphical window presenting the VM's display. +comment "OpenGL and virglrenderer need an OpenGL and/or OpenGL EGL backend" + depends on !(BR2_PACKAGE_HAS_LIBEGL || BR2_PACKAGE_HASLIBGL) + +config BR2_PACKAGE_QEMU_VIRGLRENDERER + bool "Enable virglrenderer" + depends on BR2_PACKAGE_HAS_LIBEGL || BR2_PACKAGE_HAS_LIBGL # virglrenderer + select BR2_PACKAGE_VIRGLRENDERER + help + Say 'y' to enable virglrenderer, enabling GL and + Vulkan passthrough from the host to the guest + through virtio-gpu. + config BR2_PACKAGE_QEMU_FDT bool "Enable FDT" select BR2_PACKAGE_DTC diff --git a/package/qemu/qemu.mk b/package/qemu/qemu.mk index fdc8591e546ab6b96fdb02b3742b75f587be239f..4221e027c07924f681359179692743420ffaa38e 100644 --- a/package/qemu/qemu.mk +++ b/package/qemu/qemu.mk @@ -261,6 +261,13 @@ else QEMU_OPTS += --disable-usb-redir endif +ifeq ($(BR2_PACKAGE_QEMU_VIRGLRENDERER),y) +QEMU_OPTS += --enable-virglrenderer --enable-opengl +QEMU_DEPENDENCIES += virglrenderer libepoxy +else +QEMU_OPTS += --disable-virglrenderer --disable-opengl +endif + ifeq ($(BR2_STATIC_LIBS),y) QEMU_OPTS += --static endif @@ -310,7 +317,6 @@ define QEMU_CONFIGURE_CMDS --disable-membarrier \ --disable-mpath \ --disable-netmap \ - --disable-opengl \ --disable-oss \ --disable-pa \ --disable-plugins \
Add optional virglrenderer support. This feature isn't very useful with opengl disabled, so enable that too. https://www.qemu.org/docs/master/system/devices/virtio-gpu.html#virtio-gpu-virglrenderer Signed-off-by: Joseph Kogut <joseph.kogut@gmail.com> --- package/qemu/Config.in | 12 ++++++++++++ package/qemu/qemu.mk | 8 +++++++- 2 files changed, 19 insertions(+), 1 deletion(-)