[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH] egl-helpers: Support newer MESA versions
From: |
Hans de Goede |
Subject: |
Re: [Qemu-devel] [PATCH] egl-helpers: Support newer MESA versions |
Date: |
Mon, 13 Mar 2017 10:27:33 +0100 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.7.0 |
<resend with some more people added to the Cc>
Hi,
On 20-02-17 10:50, Frediano Ziglio wrote:
According to
https://www.khronos.org/registry/EGL/extensions/MESA/EGL_MESA_platform_gbm.txt
if MESA_platform_gbm is supported display should be initialized
from a GBM handle using eglGetPlatformDisplayEXT.
Signed-off-by: Frediano Ziglio <address@hidden>
---
This should fix
http://www.spinics.net/linux/fedora/libvir/msg142837.html
Tested on Fedora rawhide.
---
ui/egl-helpers.c | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/ui/egl-helpers.c b/ui/egl-helpers.c
index cd24568..964c5a5 100644
--- a/ui/egl-helpers.c
+++ b/ui/egl-helpers.c
@@ -219,7 +219,11 @@ int qemu_egl_init_dpy(EGLNativeDisplayType dpy, bool gles,
bool debug)
}
egl_dbg("eglGetDisplay (dpy %p) ...\n", dpy);
+#ifdef EGL_MESA_platform_gbm
+ qemu_egl_display = eglGetPlatformDisplayEXT(EGL_PLATFORM_GBM_MESA, dpy,
NULL);
+#else
qemu_egl_display = eglGetDisplay(dpy);
+#endif
if (qemu_egl_display == EGL_NO_DISPLAY) {
error_report("egl: eglGetDisplay failed");
return -1;
That fix is incomplete, you need some magic to work properly on older libGL
versions.
Attached is a (compile tested only) proper patch. I do not have a qemu git clone
handy atm, so this is not a git format-patch patch, it is against the Fedora
Rawhide
srpm. I've a test build with these patches here:
https://fedorapeople.org/~jwrdegoede/qemu-glvnd/
I was planning on doing a git clone qemu and send a proper patch after I got
some
testing feedback. Feel free to use this as a base for a v2 of your patch.
Regards,
Hans
qemu-2.8.0-glvnd.patch
Description: Text Data