Buildroot Archive on lore.kernel.org
 help / color / mirror / Atom feed
From: Gary Bisson <gary.bisson@boundarydevices.com>
To: buildroot@busybox.net
Subject: [Buildroot] [v6, 10/15] qt5base: fix "Unable to find an X11 visual" error
Date: Thu, 30 Apr 2015 10:55:26 +0200	[thread overview]
Message-ID: <20150430085526.GJ24549@t450s.lan> (raw)
In-Reply-To: <1421451251-23366-11-git-send-email-jezz@sysmic.org>

Hi all,

On Sat, Jan 17, 2015 at 12:34:06AM +0100, J?r?me Pouiller wrote:
> Fix "Unable to find an X11 visual" bug that produce at runtime with Vivante
> drivers. Add a conditionnal patch and add variable QT5BASE_EXTRA_CFLAGS in
> order to enable workaround.
> 
> Signed-off-by: J?r?me Pouiller <jezz@sysmic.org>
> ---
>  .../qt5/qt5base/0001-Force_egl_visual_ID_33.patch  | 26 ++++++++++++++++++++++
>  package/qt5/qt5base/qt5base.mk                     |  6 +++--
>  2 files changed, 30 insertions(+), 2 deletions(-)
>  create mode 100644 package/qt5/qt5base/0001-Force_egl_visual_ID_33.patch
> 
> diff --git a/package/qt5/qt5base/0001-Force_egl_visual_ID_33.patch b/package/qt5/qt5base/0001-Force_egl_visual_ID_33.patch
> new file mode 100644
> index 0000000..e7e6c5e
> --- /dev/null
> +++ b/package/qt5/qt5base/0001-Force_egl_visual_ID_33.patch
> @@ -0,0 +1,26 @@
> +Workaround EGL initialization failure due visual mismatch
> +
> +Error:
> +
> +Warning: EGL suggested using X Visual ID 33 (RGB888) for EGL config 28 (RGB444), but this is incompatable
> +Unable to find an X11 visual which matches EGL config 28
> +Could not initialize EGL
> +Aborted
> +
> +Upstream-Status: Inappropriate [workaround]
> +
> +Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
> +
> +diff -Naur qtbase-opensource-src-5.1.1_original/src/platformsupport/eglconvenience/qxlibeglintegration.cpp qtbase-opensource-src-5.1.1/src/platformsupport/eglconvenience/qxlibeglintegration.cpp
> +--- qtbase-opensource-src-5.1.1_original/src/platformsupport/eglconvenience/qxlibeglintegration.cpp	2013-12-25 19:08:42.163895341 -0800
> ++++ qtbase-opensource-src-5.1.1/src/platformsupport/eglconvenience/qxlibeglintegration.cpp	2013-12-25 19:09:37.207893799 -0800
> +@@ -180,5 +180,9 @@
> +     }
> + 
> +     qWarning("Unable to find an X11 visual which matches EGL config %d", configId);
> ++#ifdef ENABLE_MX6_WORKAROUND
> ++    return (VisualID)33;
> ++#else
> +     return (VisualID)0;
> ++#endif
> + }
> diff --git a/package/qt5/qt5base/qt5base.mk b/package/qt5/qt5base/qt5base.mk
> index a36359d..4796785 100644
> --- a/package/qt5/qt5base/qt5base.mk
> +++ b/package/qt5/qt5base/qt5base.mk
> @@ -172,6 +172,8 @@ QT5BASE_INSTALL_LIBS_$(BR2_PACKAGE_QT5BASE_PRINTSUPPORT) += Qt5PrintSupport
>  
>  QT5BASE_INSTALL_LIBS_$(BR2_PACKAGE_QT5BASE_DBUS) += Qt5DBus
>  
> +QT5BASE_EXTRA_CFLAGS = $(if $(BR2_PACKAGE_GPU_VIV_BIN_MX6Q),-DENABLE_MX6_WORKAROUND)
> +
>  define QT5BASE_CONFIGURE_CMDS
>  	(cd $(@D); \
>  		PKG_CONFIG="$(PKG_CONFIG_HOST_BINARY)" \
> @@ -192,8 +194,8 @@ define QT5BASE_CONFIGURE_CMDS
>  		-device buildroot \
>  		-device-option CROSS_COMPILE="$(TARGET_CROSS)" \
>  		-device-option BR_CCACHE="$(CCACHE)" \
> -		-device-option BR_COMPILER_CFLAGS="$(TARGET_CFLAGS)" \
> -		-device-option BR_COMPILER_CXXFLAGS="$(TARGET_CXXFLAGS)" \
> +		-device-option BR_COMPILER_CFLAGS="$(TARGET_CFLAGS)$(QT5BASE_EXTRA_CFLAGS)" \
> +		-device-option BR_COMPILER_CXXFLAGS="$(TARGET_CXXFLAGS)$(QT5BASE_EXTRA_CFLAGS)" \
>  		-device-option EGLFS_PLATFORM_HOOKS_SOURCES="$(QT5BASE_EGLFS_PLATFORM_HOOKS_SOURCES)" \
>  		-no-c++11 \
>  		$(QT5BASE_CONFIGURE_OPTS) \

As explained in my answer to the cover letter, this series of patch has
been successfully tested on a Nitrogen6x board.
http://lists.busybox.net/pipermail/buildroot/2015-April/124739.html

Tested-by: Gary Bisson <gary.bisson@boundarydevices.com>

This patch is actually an improvement over the fix available in Yocto:
https://github.com/Freescale/meta-fsl-arm/blob/dizzy/qt5-layer/recipes-qt/qt5/qtbase/Force_egl_visual_ID_33.patch

Reviewed-by: Gary Bisson <gary.bisson@boundarydevices.com>

Regards,
Gary

  reply	other threads:[~2015-04-30  8:55 UTC|newest]

Thread overview: 37+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-01-16 23:33 [Buildroot] [PATCH v6 00/15] Add Xorg support for iMX6 Jérôme Pouiller
2015-01-16 23:33 ` [Buildroot] [PATCH v6 01/15] mesa3d: Give possibility to external backends to enable DRI/Gallium Jérôme Pouiller
2015-01-17 17:02   ` Bernd Kuhls
2015-04-30  8:16   ` [Buildroot] [v6, " Gary Bisson
2015-04-30  8:26     ` Thomas Petazzoni
2015-01-16 23:33 ` [Buildroot] [PATCH v6 02/15] gpu-viv-bin-mx6q: fix compiling issues with EGL_API_FB Jérôme Pouiller
2015-04-30  8:21   ` [Buildroot] [v6, " Gary Bisson
2015-04-30  8:30   ` [Buildroot] [PATCH v6 " Thomas Petazzoni
2015-01-16 23:33 ` [Buildroot] [PATCH v6 03/15] gpu-viv-bin-mx6q: make fb/x11 choice explicit Jérôme Pouiller
2015-04-30  8:29   ` [Buildroot] [v6, " Gary Bisson
2015-04-30  8:31   ` [Buildroot] [PATCH v6 " Thomas Petazzoni
2015-01-16 23:34 ` [Buildroot] [PATCH v6 04/15] gpu-viv-bin-mx6q: remove useless build time deps Jérôme Pouiller
2015-04-30  8:32   ` [Buildroot] [v6, " Gary Bisson
2015-01-16 23:34 ` [Buildroot] [PATCH v6 05/15] gpu-viv-bin-mx6q: add version in libraries symlinks Jérôme Pouiller
2015-04-30  8:37   ` [Buildroot] [v6, " Gary Bisson
2015-01-16 23:34 ` [Buildroot] [PATCH v6 06/15] gpu-viv-bin-mx6q: change output selection mechanism Jérôme Pouiller
2015-04-30  8:40   ` [Buildroot] [v6, " Gary Bisson
2015-01-16 23:34 ` [Buildroot] [PATCH v6 07/15] xdriver_xf86-video-imx-viv: new package Jérôme Pouiller
2015-04-30  8:46   ` [Buildroot] [v6,07/15] " Gary Bisson
2015-01-16 23:34 ` [Buildroot] [PATCH v6 08/15] qt5base: apply new patch naming policy Jérôme Pouiller
2015-04-30  8:47   ` [Buildroot] [v6,08/15] " Gary Bisson
2015-01-16 23:34 ` [Buildroot] [PATCH v6 09/15] qt5base: fix compilation with Vivante headers Jérôme Pouiller
2015-04-30  8:52   ` [Buildroot] [v6, " Gary Bisson
2015-01-16 23:34 ` [Buildroot] [PATCH v6 10/15] qt5base: fix "Unable to find an X11 visual" error Jérôme Pouiller
2015-04-30  8:55   ` Gary Bisson [this message]
2015-01-16 23:34 ` [Buildroot] [PATCH v6 11/15] Vivante drivers: bump to version 3.10.17-1.0.1 Jérôme Pouiller
2015-04-30  8:57   ` [Buildroot] [v6, " Gary Bisson
2015-01-16 23:34 ` [Buildroot] [PATCH v6 12/15] nitrogen6x_defconfig: bump kernel to 3.10.17_1.0.1_ga Jérôme Pouiller
2015-04-30  8:58   ` [Buildroot] [v6, " Gary Bisson
2015-01-16 23:34 ` [Buildroot] [PATCH v6 13/15] freescale_imx6*_defconfig: " Jérôme Pouiller
2015-04-30  9:00   ` [Buildroot] [v6, " Gary Bisson
2015-01-16 23:34 ` [Buildroot] [PATCH v6 14/15] qmx6_defconfig: update Jérôme Pouiller
2015-04-30  9:02   ` [Buildroot] [v6,14/15] " Gary Bisson
2015-01-16 23:34 ` [Buildroot] [PATCH v6 15/15] qmx6_qt5_demo_defconfig: new defconfig Jérôme Pouiller
2015-04-30  9:03   ` [Buildroot] [v6,15/15] " Gary Bisson
2015-01-22  6:47 ` [Buildroot] [PATCH v6 00/15] Add Xorg support for iMX6 Gary Bisson
2015-04-09 16:03   ` Gary Bisson

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20150430085526.GJ24549@t450s.lan \
    --to=gary.bisson@boundarydevices.com \
    --cc=buildroot@busybox.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox