All of lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [PATCH v5 00/15] Add Xorg support for iMX6
@ 2014-12-09 13:46 Jérôme Pouiller
  2014-12-09 13:46 ` [Buildroot] [PATCH v5 01/15] mesa3d: Give possibility to external backends to enable DRI/Gallium Jérôme Pouiller
                   ` (15 more replies)
  0 siblings, 16 replies; 30+ messages in thread
From: Jérôme Pouiller @ 2014-12-09 13:46 UTC (permalink / raw)
  To: buildroot

Hello,

Main purpose of this serie is to add support of Vivante GPU (found on imx6) to
Xorg. This work is mainly adapted from Yocto.

v5:
  - Add references in commit log of xdriver_xf86-video-imx-viv
  - Split qmx6_defconfig in two defconfig: a minimal one and a demo one

v4:
  - Fix example config in commit log of xdriver_xf86-video-imx-viv
  - Add a note about OpenGL API in xdriver_xf86-video-imx-viv help

v3:
  - Respin on next
  - Add patch to use self-extractible helper function
  - Remove 'See freescale-imx.mk' comment
  - Reword patch "gpu-viv-bin-mx6q: change output selection mecanisms"
  - libdrm: Apply new patch naming policy
  - xdriver_xf86-video-imx-viv: Apply new patch naming policy
  - xdriver_xf86-video-imx-viv: Does not depends directly on glibc
  - qt5base: Apply new patch naming policy
  - qmx6_defconfig: Use internal toochain

v2:
  - Rebase on new version of mesa3d
  - Reorder some patches (in order to make examples I provide in commit message 
    functional)
  - Do not bump version of all freescale packages
  - Bump kernel version of imx6 boards


J?r?me Pouiller (15):
  mesa3d: Give possibility to external backends to enable DRI/Gallium
  gpu-viv-bin-mx6q: use self-extractible helper
  gpu-viv-bin-mx6q: fix compiling issues with EGL_API_FB
  gpu-viv-bin-mx6q: fix GLESv2 support
  gpu-viv-bin-mx6q: make fb/x11 choice explicit
  gpu-viv-bin-mx6q: change output selection mechanism
  xdriver_xf86-video-imx-viv: new package
  libdrm: fix support for xserver with Vivante drivers
  qt5base: apply new patch naming policy
  qt5base: fix Vivante x11/EGL configuration
  Vivante drivers: bump to version 3.10.17-1.0.1
  nitrogen6x_defconfig: bump kernel to 3.10.17_1.0.1_ga
  freescale_imx6*_defconfig: bump kernel to 3.10.17_1.0.1_ga
  qmx6_defconfig: update
  qmx6_qt5_demo_defconfig: new defconfig

 board/congatec/qmx6/6q_bootscript.txt              |  2 -
 board/congatec/qmx6/post-build.sh                  |  7 ---
 configs/freescale_imx6dlsabresd_defconfig          |  3 +-
 configs/freescale_imx6qsabresd_defconfig           |  3 +-
 configs/freescale_imx6sololiteevk_defconfig        |  3 +-
 configs/nitrogen6x_defconfig                       |  3 +-
 configs/qmx6_defconfig                             | 25 +++++++--
 configs/qmx6_qt5_demo_defconfig                    | 57 ++++++++++++++++++++
 package/freescale-imx/gpu-viv-bin-mx6q/Config.in   | 29 +++++++++-
 package/freescale-imx/gpu-viv-bin-mx6q/egl.pc      |  2 +-
 package/freescale-imx/gpu-viv-bin-mx6q/glesv2.pc   |  2 +-
 .../gpu-viv-bin-mx6q/gpu-viv-bin-mx6q.mk           | 56 ++++++++-----------
 package/freescale-imx/gpu-viv-bin-mx6q/vg.pc       |  2 +-
 package/libdrm/0001-update-arm.patch               | 37 +++++++++++++
 package/mesa3d/mesa3d.mk                           |  4 +-
 .../qt5/qt5base/0001-Force_egl_visual_ID_33.patch  | 23 ++++++++
 ...kspecs-files.patch => 0002-mkspecs-files.patch} |  0
 ...clibc-no-lfs.patch => 0003-uclibc-no-lfs.patch} |  0
 package/qt5/qt5base/0004-xcb-egl-fixes.patch       | 63 ++++++++++++++++++++++
 package/x11r7/Config.in                            |  1 +
 .../0001-Fix-LoadExtenions.patch                   | 15 ++++++
 package/x11r7/xdriver_xf86-video-imx-viv/Config.in | 31 +++++++++++
 .../xdriver_xf86-video-imx-viv.mk                  | 32 +++++++++++
 23 files changed, 343 insertions(+), 57 deletions(-)
 delete mode 100644 board/congatec/qmx6/6q_bootscript.txt
 delete mode 100755 board/congatec/qmx6/post-build.sh
 create mode 100644 configs/qmx6_qt5_demo_defconfig
 create mode 100644 package/libdrm/0001-update-arm.patch
 create mode 100644 package/qt5/qt5base/0001-Force_egl_visual_ID_33.patch
 rename package/qt5/qt5base/{qt5base-0002-mkspecs-files.patch => 0002-mkspecs-files.patch} (100%)
 rename package/qt5/qt5base/{qt5base-0003-uclibc-no-lfs.patch => 0003-uclibc-no-lfs.patch} (100%)
 create mode 100644 package/qt5/qt5base/0004-xcb-egl-fixes.patch
 create mode 100644 package/x11r7/xdriver_xf86-video-imx-viv/0001-Fix-LoadExtenions.patch
 create mode 100644 package/x11r7/xdriver_xf86-video-imx-viv/Config.in
 create mode 100644 package/x11r7/xdriver_xf86-video-imx-viv/xdriver_xf86-video-imx-viv.mk

-- 
1.9.1

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [Buildroot] [PATCH v5 01/15] mesa3d: Give possibility to external backends to enable DRI/Gallium
  2014-12-09 13:46 [Buildroot] [PATCH v5 00/15] Add Xorg support for iMX6 Jérôme Pouiller
@ 2014-12-09 13:46 ` Jérôme Pouiller
  2014-12-09 13:46 ` [Buildroot] [PATCH v5 02/15] gpu-viv-bin-mx6q: use self-extractible helper Jérôme Pouiller
                   ` (14 subsequent siblings)
  15 siblings, 0 replies; 30+ messages in thread
From: Jérôme Pouiller @ 2014-12-09 13:46 UTC (permalink / raw)
  To: buildroot

Signed-off-by: J?r?me Pouiller <jezz@sysmic.org>
---
 package/mesa3d/mesa3d.mk | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/package/mesa3d/mesa3d.mk b/package/mesa3d/mesa3d.mk
index 8dfad6c..898254d 100644
--- a/package/mesa3d/mesa3d.mk
+++ b/package/mesa3d/mesa3d.mk
@@ -64,7 +64,7 @@ MESA3D_DRI_DRIVERS-$(BR2_PACKAGE_MESA3D_DRI_DRIVER_I915)   += i915
 MESA3D_DRI_DRIVERS-$(BR2_PACKAGE_MESA3D_DRI_DRIVER_I965)   += i965
 MESA3D_DRI_DRIVERS-$(BR2_PACKAGE_MESA3D_DRI_DRIVER_RADEON) += radeon
 
-ifeq ($(MESA3D_GALLIUM_DRIVERS-y),)
+ifeq ($(BR2_PACKAGE_MESA3D_GALLIUM_DRIVER),)
 MESA3D_CONF_OPTS += \
 	--without-gallium-drivers
 else
@@ -73,7 +73,7 @@ MESA3D_CONF_OPTS += \
 	--with-gallium-drivers=$(subst $(space),$(comma),$(MESA3D_GALLIUM_DRIVERS-y))
 endif
 
-ifeq ($(MESA3D_DRI_DRIVERS-y),)
+ifeq ($(BR2_PACKAGE_MESA3D_DRI_DRIVER),)
 MESA3D_CONF_OPTS += \
 	--without-dri-drivers --without-dri --disable-dri3
 else
-- 
1.9.1

^ permalink raw reply related	[flat|nested] 30+ messages in thread

* [Buildroot] [PATCH v5 02/15] gpu-viv-bin-mx6q: use self-extractible helper
  2014-12-09 13:46 [Buildroot] [PATCH v5 00/15] Add Xorg support for iMX6 Jérôme Pouiller
  2014-12-09 13:46 ` [Buildroot] [PATCH v5 01/15] mesa3d: Give possibility to external backends to enable DRI/Gallium Jérôme Pouiller
@ 2014-12-09 13:46 ` Jérôme Pouiller
  2014-12-09 13:46 ` [Buildroot] [PATCH v5 03/15] gpu-viv-bin-mx6q: fix compiling issues with EGL_API_FB Jérôme Pouiller
                   ` (13 subsequent siblings)
  15 siblings, 0 replies; 30+ messages in thread
From: Jérôme Pouiller @ 2014-12-09 13:46 UTC (permalink / raw)
  To: buildroot

Signed-off-by: J?r?me Pouiller <jezz@sysmic.org>
---
 .../freescale-imx/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q.mk    | 15 ++-------------
 1 file changed, 2 insertions(+), 13 deletions(-)

diff --git a/package/freescale-imx/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q.mk b/package/freescale-imx/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q.mk
index aef16a3..bc44e38 100644
--- a/package/freescale-imx/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q.mk
+++ b/package/freescale-imx/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q.mk
@@ -15,12 +15,7 @@ GPU_VIV_BIN_MX6Q_SOURCE = gpu-viv-bin-mx6q-$(GPU_VIV_BIN_MX6Q_VERSION).bin
 GPU_VIV_BIN_MX6Q_INSTALL_STAGING = YES
 
 GPU_VIV_BIN_MX6Q_LICENSE = Freescale Semiconductor Software License Agreement
-
-# No license file is included in the archive; we could extract it from
-# the self-extractor, but that's just too much effort.
-# This is a legal minefield: the EULA specifies that
-# the Board Support Package includes software and hardware (sic!)
-# for which a separate license is needed...
+GPU_VIV_BIN_MX6Q_LICENSE_FILES = EULA
 GPU_VIV_BIN_MX6Q_REDISTRIBUTE = NO
 
 GPU_VIV_BIN_MX6Q_PROVIDES = libegl libgles libopenvg
@@ -33,14 +28,8 @@ else
 GPU_VIV_BIN_MX6Q_LIB_TARGET = fb
 endif
 
-# The archive is a shell-self-extractor of a bzipped tar. It happens
-# to extract in the correct directory (gpu-viv-bin-mx6q-x.y.z)
-# The --force makes sure it doesn't fail if the source dir already exists.
-# The --auto-accept skips the license check - not needed for us
-# because we have legal-info.
 define GPU_VIV_BIN_MX6Q_EXTRACT_CMDS
-	(cd $(BUILD_DIR); \
-		sh $(DL_DIR)/$(GPU_VIV_BIN_MX6Q_SOURCE) --force --auto-accept)
+	$(call FREESCALE_IMX_EXTRACT_HELPER,$(DL_DIR)/$(GPU_VIV_BIN_MX6Q_SOURCE))
 endef
 
 # Instead of building, we fix up the inconsistencies that exist
-- 
1.9.1

^ permalink raw reply related	[flat|nested] 30+ messages in thread

* [Buildroot] [PATCH v5 03/15] gpu-viv-bin-mx6q: fix compiling issues with EGL_API_FB
  2014-12-09 13:46 [Buildroot] [PATCH v5 00/15] Add Xorg support for iMX6 Jérôme Pouiller
  2014-12-09 13:46 ` [Buildroot] [PATCH v5 01/15] mesa3d: Give possibility to external backends to enable DRI/Gallium Jérôme Pouiller
  2014-12-09 13:46 ` [Buildroot] [PATCH v5 02/15] gpu-viv-bin-mx6q: use self-extractible helper Jérôme Pouiller
@ 2014-12-09 13:46 ` Jérôme Pouiller
  2014-12-09 13:46 ` [Buildroot] [PATCH v5 04/15] gpu-viv-bin-mx6q: fix GLESv2 support Jérôme Pouiller
                   ` (12 subsequent siblings)
  15 siblings, 0 replies; 30+ messages in thread
From: Jérôme Pouiller @ 2014-12-09 13:46 UTC (permalink / raw)
  To: buildroot

To compile with Vivante header and use framebuffer, it is necessary to
pass option -DEGL_API_FB. This option is declared in pkg-config file of
Vivante library. But many packages (especialy qt5 components) does not
consider these flags.

So instead of patching every packages that use EGL, it is more
convenient to patch Vivante headers.

This commit add #define EGL_API_FB on top of eglvivante.h when
necessary.

Signed-off-by: J?r?me Pouiller <jezz@sysmic.org>
---
 package/freescale-imx/gpu-viv-bin-mx6q/egl.pc              |  2 +-
 package/freescale-imx/gpu-viv-bin-mx6q/glesv2.pc           |  2 +-
 package/freescale-imx/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q.mk | 10 ++++++----
 package/freescale-imx/gpu-viv-bin-mx6q/vg.pc               |  2 +-
 4 files changed, 9 insertions(+), 7 deletions(-)

diff --git a/package/freescale-imx/gpu-viv-bin-mx6q/egl.pc b/package/freescale-imx/gpu-viv-bin-mx6q/egl.pc
index c984247..d1d09a0 100644
--- a/package/freescale-imx/gpu-viv-bin-mx6q/egl.pc
+++ b/package/freescale-imx/gpu-viv-bin-mx6q/egl.pc
@@ -7,4 +7,4 @@ Name: egl
 Description: Freescale gpu-viv-bin-mx6q implementation of EGL
 Version: 1.0
 Libs: -L${libdir} -lGAL -lEGL
-Cflags: -I${includedir}/ -DEGL_API_FB=1
+Cflags: -I${includedir}/
diff --git a/package/freescale-imx/gpu-viv-bin-mx6q/glesv2.pc b/package/freescale-imx/gpu-viv-bin-mx6q/glesv2.pc
index 7cfb5e7..74ce792 100644
--- a/package/freescale-imx/gpu-viv-bin-mx6q/glesv2.pc
+++ b/package/freescale-imx/gpu-viv-bin-mx6q/glesv2.pc
@@ -7,4 +7,4 @@ Name: glesv2
 Description: Freescale gpu-viv-bin-mx6q implementation of OpenGL ESv2
 Version: 2.0
 Libs: -L${libdir} -lGAL -lEGL -lGLESv2
-Cflags: -I${includedir}/ -DEGL_API_FB=1
+Cflags: -I${includedir}/
diff --git a/package/freescale-imx/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q.mk b/package/freescale-imx/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q.mk
index bc44e38..1158e42 100644
--- a/package/freescale-imx/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q.mk
+++ b/package/freescale-imx/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q.mk
@@ -47,14 +47,16 @@ endef
 
 define GPU_VIV_BIN_MX6Q_INSTALL_STAGING_CMDS
 	cp -r $(@D)/usr/* $(STAGING_DIR)/usr
+	if [ $(GPU_VIV_BIN_MX6Q_LIB_TARGET) == fb ]; then \
+		$(SED) '/#define EGLAPIENTRY/ a \
+			#if !defined(EGL_API_X11) && !defined(EGL_API_DFB) && !defined(EGL_API_FB) \n\
+			#define EGL_API_FB \n\
+			#endif' $(STAGING_DIR)/usr/include/EGL/eglvivante.h; \
+	fi
 	for lib in egl glesv2 vg; do \
 		$(INSTALL) -m 0644 -D \
 			package/freescale-imx/gpu-viv-bin-mx6q/$${lib}.pc \
 			$(STAGING_DIR)/usr/lib/pkgconfig/$${lib}.pc; \
-		if [ "$(GPU_VIV_BIN_MX6Q_LIB_TARGET)" != "fb" ]; then \
-			$(SED) "s/-DEGL_API_FB=1//" \
-				$(STAGING_DIR)/usr/lib/pkgconfig/$${lib}.pc; \
-		fi; \
 	done
 endef
 
diff --git a/package/freescale-imx/gpu-viv-bin-mx6q/vg.pc b/package/freescale-imx/gpu-viv-bin-mx6q/vg.pc
index fb14005..677a7ee 100644
--- a/package/freescale-imx/gpu-viv-bin-mx6q/vg.pc
+++ b/package/freescale-imx/gpu-viv-bin-mx6q/vg.pc
@@ -7,4 +7,4 @@ Name: vg
 Description: Freescale gpu-viv-bin-mx6q implementation of OpenVG
 Version: 1.1
 Libs: -L${libdir} -lGAL -lEGL -lOpenVG
-Cflags: -I${includedir}/ -DEGL_API_FB=1
+Cflags: -I${includedir}/
-- 
1.9.1

^ permalink raw reply related	[flat|nested] 30+ messages in thread

* [Buildroot] [PATCH v5 04/15] gpu-viv-bin-mx6q: fix GLESv2 support
  2014-12-09 13:46 [Buildroot] [PATCH v5 00/15] Add Xorg support for iMX6 Jérôme Pouiller
                   ` (2 preceding siblings ...)
  2014-12-09 13:46 ` [Buildroot] [PATCH v5 03/15] gpu-viv-bin-mx6q: fix compiling issues with EGL_API_FB Jérôme Pouiller
@ 2014-12-09 13:46 ` Jérôme Pouiller
  2014-12-27 20:34   ` Thomas Petazzoni
  2014-12-09 13:46 ` [Buildroot] [PATCH v5 05/15] gpu-viv-bin-mx6q: make fb/x11 choice explicit Jérôme Pouiller
                   ` (11 subsequent siblings)
  15 siblings, 1 reply; 30+ messages in thread
From: Jérôme Pouiller @ 2014-12-09 13:46 UTC (permalink / raw)
  To: buildroot

Tested with:
    QMX6 board +
    BR2_TOOLCHAIN_EXTERNAL=y
    BR2_TARGET_GENERIC_GETTY_PORT="ttymxc1"
    BR2_LINUX_KERNEL=y
    BR2_LINUX_KERNEL_CUSTOM_GIT=y
    BR2_LINUX_KERNEL_CUSTOM_REPO_URL="https://git.congatec.com/arm/qmx6_kernel.git"
    BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="9bafbcba67f7bb2a48a5e05998cecb1165aa444f"
    BR2_LINUX_KERNEL_DEFCONFIG="qmx6"
    BR2_LINUX_KERNEL_APPENDED_UIMAGE=y
    BR2_LINUX_KERNEL_UIMAGE_LOADADDR="0x10008000"
    BR2_LINUX_KERNEL_INTREE_DTS_NAME="imx6q-qmx6"
    BR2_PACKAGE_QT5=y
    BR2_PACKAGE_QT5BASE_LICENSE_APPROVED=y
    BR2_PACKAGE_QT5BASE_EXAMPLES=y
    BR2_PACKAGE_QT5BASE_OPENGL_LIB=y
    BR2_PACKAGE_QT5BASE_EGLFS=y
    BR2_PACKAGE_QT5BASE_DEFAULT_QPA="eglfs"
    BR2_PACKAGE_QT5BASE_GIF=y
    BR2_PACKAGE_QT5BASE_JPEG=y
    BR2_PACKAGE_QT5BASE_PNG=y
    BR2_PACKAGE_QT5QUICKCONTROLS=y
    BR2_PACKAGE_FREESCALE_IMX=y
    BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX6Q=y
    BR2_PACKAGE_GPU_VIV_BIN_MX6Q=y
    BR2_PACKAGE_GPU_VIV_BIN_MX6Q_EXAMPLES=y

Signed-off-by: J?r?me Pouiller <jezz@sysmic.org>
---
 package/freescale-imx/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q.mk | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/package/freescale-imx/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q.mk b/package/freescale-imx/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q.mk
index 1158e42..eb54b80 100644
--- a/package/freescale-imx/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q.mk
+++ b/package/freescale-imx/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q.mk
@@ -37,12 +37,13 @@ endef
 # Make sure these commands are idempotent.
 define GPU_VIV_BIN_MX6Q_BUILD_CMDS
 	$(SED) 's/defined(LINUX)/defined(__linux__)/g' $(@D)/usr/include/*/*.h
-	for lib in EGL GAL VIVANTE; do \
+	for lib in EGL GAL VIVANTE GLESv2; do \
 		ln -sf lib$${lib}-$(GPU_VIV_BIN_MX6Q_LIB_TARGET).so \
 			$(@D)/usr/lib/lib$${lib}.so; \
 	done
-	ln -sf libGL.so.1.2 $(@D)/usr/lib/libGL.so.1
 	ln -sf libGL.so.1.2 $(@D)/usr/lib/libGL.so
+	ln -sf libGL.so.1.2 $(@D)/usr/lib/libGL.so.1
+	ln -sf libGL.so.1.2 $(@D)/usr/lib/libGL.so.1.2.0
 endef
 
 define GPU_VIV_BIN_MX6Q_INSTALL_STAGING_CMDS
@@ -73,7 +74,7 @@ endif
 define GPU_VIV_BIN_MX6Q_INSTALL_TARGET_CMDS
 	$(GPU_VIV_BIN_MX6Q_INSTALL_EXAMPLES)
 	cp -a $(@D)/usr/lib $(TARGET_DIR)/usr
-	for lib in EGL GAL VIVANTE; do \
+	for lib in EGL GAL VIVANTE GLESv2; do \
 		for f in $(TARGET_DIR)/usr/lib/lib$${lib}-*.so; do \
 			case $$f in \
 				*-$(GPU_VIV_BIN_MX6Q_LIB_TARGET).so) : ;; \
-- 
1.9.1

^ permalink raw reply related	[flat|nested] 30+ messages in thread

* [Buildroot] [PATCH v5 05/15] gpu-viv-bin-mx6q: make fb/x11 choice explicit
  2014-12-09 13:46 [Buildroot] [PATCH v5 00/15] Add Xorg support for iMX6 Jérôme Pouiller
                   ` (3 preceding siblings ...)
  2014-12-09 13:46 ` [Buildroot] [PATCH v5 04/15] gpu-viv-bin-mx6q: fix GLESv2 support Jérôme Pouiller
@ 2014-12-09 13:46 ` Jérôme Pouiller
  2014-12-27 20:36   ` Thomas Petazzoni
  2014-12-09 13:46 ` [Buildroot] [PATCH v5 06/15] gpu-viv-bin-mx6q: change output selection mechanism Jérôme Pouiller
                   ` (10 subsequent siblings)
  15 siblings, 1 reply; 30+ messages in thread
From: Jérôme Pouiller @ 2014-12-09 13:46 UTC (permalink / raw)
  To: buildroot

Signed-off-by: J?r?me Pouiller <jezz@sysmic.org>
---
 package/freescale-imx/gpu-viv-bin-mx6q/Config.in   | 24 ++++++++++++++++++++--
 .../gpu-viv-bin-mx6q/gpu-viv-bin-mx6q.mk           |  2 +-
 2 files changed, 23 insertions(+), 3 deletions(-)

diff --git a/package/freescale-imx/gpu-viv-bin-mx6q/Config.in b/package/freescale-imx/gpu-viv-bin-mx6q/Config.in
index 4e83dd3..904b011 100644
--- a/package/freescale-imx/gpu-viv-bin-mx6q/Config.in
+++ b/package/freescale-imx/gpu-viv-bin-mx6q/Config.in
@@ -7,8 +7,6 @@ config BR2_PACKAGE_GPU_VIV_BIN_MX6Q
 	select BR2_PACKAGE_HAS_LIBEGL
 	select BR2_PACKAGE_HAS_LIBGLES
 	select BR2_PACKAGE_HAS_LIBOPENVG
-	select BR2_PACKAGE_XLIB_LIBXDAMAGE if BR2_PACKAGE_XORG7
-	select BR2_PACKAGE_XLIB_LIBXEXT if BR2_PACKAGE_XORG7
 	depends on BR2_arm # Only relevant for i.MX6
 	# Library binaries are linked against libc.so.6
 	depends on BR2_TOOLCHAIN_USES_GLIBC
@@ -25,6 +23,28 @@ config BR2_PACKAGE_GPU_VIV_BIN_MX6Q
 
 if BR2_PACKAGE_GPU_VIV_BIN_MX6Q
 
+choice
+	prompt "Output option"
+	help
+	  There are two versions of this library: one for
+	  direct framebuffer access, one for X11 rendering.
+	  Choose here which version to install.
+
+config BR2_PACKAGE_GPU_VIV_BIN_MX6Q_OUTPUT_X11
+	depends on BR2_PACKAGE_XORG7
+	select BR2_PACKAGE_XLIB_LIBXDAMAGE
+	select BR2_PACKAGE_XLIB_LIBXEXT
+	select BR2_PACKAGE_LIBDRM
+	bool "X11"
+
+comment "X11 backend needs Xorg package"
+	depends on !BR2_PACKAGE_XORG7
+
+config BR2_PACKAGE_GPU_VIV_BIN_MX6Q_OUTPUT_FB
+	bool "Framebuffer"
+
+endchoice
+
 config BR2_PACKAGE_PROVIDES_LIBEGL
 	default "gpu-viv-bin-mx6q"
 
diff --git a/package/freescale-imx/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q.mk b/package/freescale-imx/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q.mk
index eb54b80..7895023 100644
--- a/package/freescale-imx/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q.mk
+++ b/package/freescale-imx/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q.mk
@@ -21,7 +21,7 @@ GPU_VIV_BIN_MX6Q_REDISTRIBUTE = NO
 GPU_VIV_BIN_MX6Q_PROVIDES = libegl libgles libopenvg
 
 # DirectFB is not supported (wrong version)
-ifeq ($(BR2_PACKAGE_XORG7),y)
+ifeq ($(BR2_PACKAGE_GPU_VIV_BIN_MX6Q_OUTPUT_X11),y)
 GPU_VIV_BIN_MX6Q_DEPENDENCIES = xlib_libXdamage xlib_libXext
 GPU_VIV_BIN_MX6Q_LIB_TARGET = x11
 else
-- 
1.9.1

^ permalink raw reply related	[flat|nested] 30+ messages in thread

* [Buildroot] [PATCH v5 06/15] gpu-viv-bin-mx6q: change output selection mechanism
  2014-12-09 13:46 [Buildroot] [PATCH v5 00/15] Add Xorg support for iMX6 Jérôme Pouiller
                   ` (4 preceding siblings ...)
  2014-12-09 13:46 ` [Buildroot] [PATCH v5 05/15] gpu-viv-bin-mx6q: make fb/x11 choice explicit Jérôme Pouiller
@ 2014-12-09 13:46 ` Jérôme Pouiller
  2014-12-27 20:38   ` Thomas Petazzoni
  2014-12-09 13:46 ` [Buildroot] [PATCH v5 07/15] xdriver_xf86-video-imx-viv: new package Jérôme Pouiller
                   ` (9 subsequent siblings)
  15 siblings, 1 reply; 30+ messages in thread
From: Jérôme Pouiller @ 2014-12-09 13:46 UTC (permalink / raw)
  To: buildroot

  - Move output selection to Config.in. It easier to add new
    backends selection (wayland, directfb, ...).
  - Remove useless build time dependencies xlib_libXdamage
    and xlib_libXext (gpu-viv-bin-mx6q is provided as binary
    package)
  - Also create libraries symbolic links with version numbers.

Signed-off-by: J?r?me Pouiller <jezz@sysmic.org>
---
 package/freescale-imx/gpu-viv-bin-mx6q/Config.in    |  5 +++++
 .../gpu-viv-bin-mx6q/gpu-viv-bin-mx6q.mk            | 21 +++++++++------------
 2 files changed, 14 insertions(+), 12 deletions(-)

diff --git a/package/freescale-imx/gpu-viv-bin-mx6q/Config.in b/package/freescale-imx/gpu-viv-bin-mx6q/Config.in
index 904b011..489e68e 100644
--- a/package/freescale-imx/gpu-viv-bin-mx6q/Config.in
+++ b/package/freescale-imx/gpu-viv-bin-mx6q/Config.in
@@ -45,6 +45,11 @@ config BR2_PACKAGE_GPU_VIV_BIN_MX6Q_OUTPUT_FB
 
 endchoice
 
+config BR2_PACKAGE_GPU_VIV_BIN_MX6Q_OUTPUT
+	string
+	default "x11" if BR2_PACKAGE_GPU_VIV_BIN_MX6Q_OUTPUT_X11
+	default "fb" if BR2_PACKAGE_GPU_VIV_BIN_MX6Q_OUTPUT_FB
+
 config BR2_PACKAGE_PROVIDES_LIBEGL
 	default "gpu-viv-bin-mx6q"
 
diff --git a/package/freescale-imx/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q.mk b/package/freescale-imx/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q.mk
index 7895023..501b124 100644
--- a/package/freescale-imx/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q.mk
+++ b/package/freescale-imx/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q.mk
@@ -19,14 +19,7 @@ GPU_VIV_BIN_MX6Q_LICENSE_FILES = EULA
 GPU_VIV_BIN_MX6Q_REDISTRIBUTE = NO
 
 GPU_VIV_BIN_MX6Q_PROVIDES = libegl libgles libopenvg
-
-# DirectFB is not supported (wrong version)
-ifeq ($(BR2_PACKAGE_GPU_VIV_BIN_MX6Q_OUTPUT_X11),y)
-GPU_VIV_BIN_MX6Q_DEPENDENCIES = xlib_libXdamage xlib_libXext
-GPU_VIV_BIN_MX6Q_LIB_TARGET = x11
-else
-GPU_VIV_BIN_MX6Q_LIB_TARGET = fb
-endif
+GPU_VIV_BIN_MX6Q_LIB_TARGET = $(call qstrip,$(BR2_PACKAGE_GPU_VIV_BIN_MX6Q_OUTPUT))
 
 define GPU_VIV_BIN_MX6Q_EXTRACT_CMDS
 	$(call FREESCALE_IMX_EXTRACT_HELPER,$(DL_DIR)/$(GPU_VIV_BIN_MX6Q_SOURCE))
@@ -37,13 +30,17 @@ endef
 # Make sure these commands are idempotent.
 define GPU_VIV_BIN_MX6Q_BUILD_CMDS
 	$(SED) 's/defined(LINUX)/defined(__linux__)/g' $(@D)/usr/include/*/*.h
-	for lib in EGL GAL VIVANTE GLESv2; do \
-		ln -sf lib$${lib}-$(GPU_VIV_BIN_MX6Q_LIB_TARGET).so \
-			$(@D)/usr/lib/lib$${lib}.so; \
-	done
 	ln -sf libGL.so.1.2 $(@D)/usr/lib/libGL.so
 	ln -sf libGL.so.1.2 $(@D)/usr/lib/libGL.so.1
 	ln -sf libGL.so.1.2 $(@D)/usr/lib/libGL.so.1.2.0
+	ln -sf libEGL-$(GPU_VIV_BIN_MX6Q_LIB_TARGET).so $(@D)/usr/lib/libEGL.so
+	ln -sf libEGL-$(GPU_VIV_BIN_MX6Q_LIB_TARGET).so $(@D)/usr/lib/libEGL.so.1
+	ln -sf libEGL-$(GPU_VIV_BIN_MX6Q_LIB_TARGET).so $(@D)/usr/lib/libEGL.so.1.0
+	ln -sf libGLESv2-$(GPU_VIV_BIN_MX6Q_LIB_TARGET).so $(@D)/usr/lib/libGLESv2.so
+	ln -sf libGLESv2-$(GPU_VIV_BIN_MX6Q_LIB_TARGET).so $(@D)/usr/lib/libGLESv2.so.2
+	ln -sf libGLESv2-$(GPU_VIV_BIN_MX6Q_LIB_TARGET).so $(@D)/usr/lib/libGLESv2.so.2.0.0
+	ln -sf libVIVANTE-$(GPU_VIV_BIN_MX6Q_LIB_TARGET).so $(@D)/usr/lib/libVIVANTE.so
+	ln -sf libGAL-$(GPU_VIV_BIN_MX6Q_LIB_TARGET).so $(@D)/usr/lib/libGAL.so
 endef
 
 define GPU_VIV_BIN_MX6Q_INSTALL_STAGING_CMDS
-- 
1.9.1

^ permalink raw reply related	[flat|nested] 30+ messages in thread

* [Buildroot] [PATCH v5 07/15] xdriver_xf86-video-imx-viv: new package
  2014-12-09 13:46 [Buildroot] [PATCH v5 00/15] Add Xorg support for iMX6 Jérôme Pouiller
                   ` (5 preceding siblings ...)
  2014-12-09 13:46 ` [Buildroot] [PATCH v5 06/15] gpu-viv-bin-mx6q: change output selection mechanism Jérôme Pouiller
@ 2014-12-09 13:46 ` Jérôme Pouiller
  2014-12-27 20:43   ` Thomas Petazzoni
  2014-12-09 13:46 ` [Buildroot] [PATCH v5 08/15] libdrm: fix support for xserver with Vivante drivers Jérôme Pouiller
                   ` (8 subsequent siblings)
  15 siblings, 1 reply; 30+ messages in thread
From: Jérôme Pouiller @ 2014-12-09 13:46 UTC (permalink / raw)
  To: buildroot

Xorg driver for imx6. Inspired from Yocto project.

I did not find any problem, but notice Yocto project force Xorg xserver
1.14.4 while we use 1.16.

Notice Vivante driver should be able to provide Desktop OpenGL implementation.
However, this feature seems broken for a while[1]. Yocto use Mesa3D/swraster
to provide Desktop OpenGL API[2].

[1] http://comments.gmane.org/gmane.linux.embedded.yocto.meta-freescale/8253
[2] See recipes-graphics/xorg-driver/xf86-video-imxfb-vivante_3.10.17-1.0.1.bb
    in meta-fsl-arm layer

Tested with:
    subsequent qt5base and libdrm fixes +
    QMX6 board +
    BR2_ARM_EABIHF= both tested
    BR2_ARM_ENABLE_NEON=y
    BR2_ARM_FPU_NEON=y
    BR2_TOOLCHAIN_EXTERNAL=y
    BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_EUDEV=y
    BR2_TARGET_GENERIC_GETTY_PORT="ttymxc1"
    BR2_LINUX_KERNEL=y
    BR2_LINUX_KERNEL_CUSTOM_GIT=y
    BR2_LINUX_KERNEL_CUSTOM_REPO_URL="https://git.congatec.com/arm/qmx6_kernel.git"
    BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="9bafbcba67f7bb2a48a5e05998cecb1165aa444f"
    BR2_LINUX_KERNEL_DEFCONFIG="qmx6"
    BR2_LINUX_KERNEL_UIMAGE_LOADADDR="0x10008000"
    BR2_LINUX_KERNEL_DTS_SUPPORT=y
    BR2_LINUX_KERNEL_INTREE_DTS_NAME="imx6q-qmx6"
    BR2_PACKAGE_QT5=y
    BR2_PACKAGE_QT5BASE_LICENSE_APPROVED=y
    BR2_PACKAGE_QT5BASE_EXAMPLES=y
    BR2_PACKAGE_QT5BASE_OPENGL_ES2=y
    BR2_PACKAGE_QT5BASE_OPENGL_LIB=y
    BR2_PACKAGE_QT5BASE_XCB=y
    BR2_PACKAGE_QT5BASE_DEFAULT_QPA="xcb"
    BR2_PACKAGE_QT5BASE_GIF=y
    BR2_PACKAGE_QT5BASE_JPEG=y
    BR2_PACKAGE_QT5BASE_PNG=y
    BR2_PACKAGE_QT5QUICKCONTROLS=y
    BR2_PACKAGE_XORG7=y
    BR2_PACKAGE_XSERVER_XORG_SERVER=y
    BR2_PACKAGE_XSERVER_XORG_SERVER_MODULAR=y
    BR2_PACKAGE_XDRIVER_XF86_INPUT_EVDEV=y
    BR2_PACKAGE_XDRIVER_XF86_VIDEO_IMX_VIV=y
    BR2_PACKAGE_FREESCALE_IMX=y
    BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX6Q=y
    BR2_PACKAGE_GPU_VIV_BIN_MX6Q=y
    BR2_PACKAGE_GPU_VIV_BIN_MX6Q_EXAMPLES=y

Signed-off-by: J?r?me Pouiller <jezz@sysmic.org>
---
 package/x11r7/Config.in                            |  1 +
 .../0001-Fix-LoadExtenions.patch                   | 15 ++++++++++
 package/x11r7/xdriver_xf86-video-imx-viv/Config.in | 31 +++++++++++++++++++++
 .../xdriver_xf86-video-imx-viv.mk                  | 32 ++++++++++++++++++++++
 4 files changed, 79 insertions(+)
 create mode 100644 package/x11r7/xdriver_xf86-video-imx-viv/0001-Fix-LoadExtenions.patch
 create mode 100644 package/x11r7/xdriver_xf86-video-imx-viv/Config.in
 create mode 100644 package/x11r7/xdriver_xf86-video-imx-viv/xdriver_xf86-video-imx-viv.mk

diff --git a/package/x11r7/Config.in b/package/x11r7/Config.in
index 357d4b4..987f979 100644
--- a/package/x11r7/Config.in
+++ b/package/x11r7/Config.in
@@ -160,6 +160,7 @@ if BR2_PACKAGE_XORG7
 		source package/x11r7/xdriver_xf86-video-glide/Config.in
 		source package/x11r7/xdriver_xf86-video-glint/Config.in
 		source package/x11r7/xdriver_xf86-video-i128/Config.in
+		source package/x11r7/xdriver_xf86-video-imx-viv/Config.in
 		source package/x11r7/xdriver_xf86-video-intel/Config.in
 		source package/x11r7/xdriver_xf86-video-mach64/Config.in
 		source package/x11r7/xdriver_xf86-video-mga/Config.in
diff --git a/package/x11r7/xdriver_xf86-video-imx-viv/0001-Fix-LoadExtenions.patch b/package/x11r7/xdriver_xf86-video-imx-viv/0001-Fix-LoadExtenions.patch
new file mode 100644
index 0000000..3e2d47c
--- /dev/null
+++ b/package/x11r7/xdriver_xf86-video-imx-viv/0001-Fix-LoadExtenions.patch
@@ -0,0 +1,15 @@
+Fix compilation with Xorg xserver 1.16.
+
+Signed-off-by: J?r?me Pouiller <jezz@sysmic.org>
+
+--- a/EXA/src/vivante_fbdev/vivante_fbdev_driver.c	2014-07-25 15:38:24.000000000 +0200
++++ b/EXA/src/vivante_fbdev/vivante_fbdev_driver.c	2014-10-02 21:00:58.755409342 +0200
+@@ -261,7 +261,7 @@
+         setupDone = TRUE;
+         xf86AddDriver(&FBDEV, module, HaveDriverFuncs);
+         if(gVivFb)
+-            LoadExtension(&VIVExt, FALSE);
++            LoadExtensionList(&VIVExt, 1, FALSE);
+ 		return (pointer)1;
+     } else {
+         if (errmaj) *errmaj = LDR_ONCEONLY;
diff --git a/package/x11r7/xdriver_xf86-video-imx-viv/Config.in b/package/x11r7/xdriver_xf86-video-imx-viv/Config.in
new file mode 100644
index 0000000..d91ba79
--- /dev/null
+++ b/package/x11r7/xdriver_xf86-video-imx-viv/Config.in
@@ -0,0 +1,31 @@
+
+config BR2_PACKAGE_XDRIVER_XF86_VIDEO_IMX_VIV
+	bool "xf86-video-imx-viv"
+	depends on BR2_PACKAGE_GPU_VIV_BIN_MX6Q_OUTPUT_X11
+	select BR2_PACKAGE_MESA3D # Needed in order to compile xorg with glx/dri
+	select BR2_PACKAGE_MESA3D_DRI_DRIVER
+	select BR2_PACKAGE_XPROTO_XPROTO
+	select BR2_PACKAGE_XPROTO_XF86DRIPROTO
+	help
+	  X.Org driver for iMX6 GPU (Vivante)
+
+	  Notice EGL and GLes2 APIs are correctly supported. This driver should
+	  also be able to provide Desktop OpenGL implementation but, this 
+	  feature seems broken for a while.
+
+	  To use this driver, add correct configuration to your
+	  /etc/X11/xorg.conf:
+
+	  Section "Device"
+	    [...]
+	    Driver          "vivante"
+	    Option          "vivante_fbdev" "/dev/fbX"
+	  EndSection
+
+	  Don't forget to load galcore.ko and create /dev/galcore before to
+	  use this driver (else, Xorg will exit with an obscur message
+	  like "Segmentation fault at address 0xc").
+
+comment "xf86-video-imx-viv depends on gpu-viv-bin-mx6q with X11 output"
+	depends on BR2_arm
+	depends on (!BR2_PACKAGE_GPU_VIV_BIN_MX6Q_OUTPUT_X11)
diff --git a/package/x11r7/xdriver_xf86-video-imx-viv/xdriver_xf86-video-imx-viv.mk b/package/x11r7/xdriver_xf86-video-imx-viv/xdriver_xf86-video-imx-viv.mk
new file mode 100644
index 0000000..0a62110
--- /dev/null
+++ b/package/x11r7/xdriver_xf86-video-imx-viv/xdriver_xf86-video-imx-viv.mk
@@ -0,0 +1,32 @@
+################################################################################
+#
+# xdriver_xf86-video-imx-viv
+#
+################################################################################
+
+XDRIVER_XF86_VIDEO_IMX_VIV_VERSION = $(FREESCALE_IMX_VERSION)
+XDRIVER_XF86_VIDEO_IMX_VIV_SITE = $(FREESCALE_IMX_SITE)
+XDRIVER_XF86_VIDEO_IMX_VIV_SOURCE = xserver-xorg-video-imx-viv-$(XDRIVER_XF86_VIDEO_IMX_VIV_VERSION).tar.gz
+XDRIVER_XF86_VIDEO_IMX_VIV_DEPENDENCIES = gpu-viv-bin-mx6q xserver_xorg-server \
+	xproto_xproto xproto_xf86driproto
+XDRIVER_XF86_VIDEO_IMX_VIV_INSTALL_STAGING = YES
+XDRIVER_XF86_VIDEO_IMX_VIV_MAKE_CMD = $(TARGET_CONFIGURE_OPTS) $(MAKE1) -C $(@D)/EXA/src -f makefile.linux
+
+define XDRIVER_XF86_VIDEO_IMX_VIV_BUILD_CMDS
+	$(XDRIVER_XF86_VIDEO_IMX_VIV_MAKE_CMD) sysroot=$(STAGING_DIR) \
+		BUSID_HAS_NUMBER=1 BUILD_IN_YOCTO=1 XSERVER_GREATER_THAN_13=1 \
+		CFLAGS+="$(TARGET_CFLAGS) -I$(@D)/DRI_1.10.4/src"
+endef
+
+define XDRIVER_XF86_VIDEO_IMX_VIV_INSTALL_STAGING_CMDS
+	$(XDRIVER_XF86_VIDEO_IMX_VIV_MAKE_CMD) prefix=$(STAGING_DIR)/usr install
+	$(INSTALL) -m 644 $(@D)/EXA/src/vivante_gal/vivante_priv.h $(STAGING_DIR)/usr/include
+	$(INSTALL) -m 644 $(@D)/EXA/src/vivante_gal/vivante_gal.h $(STAGING_DIR)/usr/include
+endef
+
+define XDRIVER_XF86_VIDEO_IMX_VIV_INSTALL_TARGET_CMDS
+	$(XDRIVER_XF86_VIDEO_IMX_VIV_MAKE_CMD) prefix=$(TARGET_DIR)/usr install
+endef
+
+$(eval $(generic-package))
+
-- 
1.9.1

^ permalink raw reply related	[flat|nested] 30+ messages in thread

* [Buildroot] [PATCH v5 08/15] libdrm: fix support for xserver with Vivante drivers
  2014-12-09 13:46 [Buildroot] [PATCH v5 00/15] Add Xorg support for iMX6 Jérôme Pouiller
                   ` (6 preceding siblings ...)
  2014-12-09 13:46 ` [Buildroot] [PATCH v5 07/15] xdriver_xf86-video-imx-viv: new package Jérôme Pouiller
@ 2014-12-09 13:46 ` Jérôme Pouiller
  2014-12-27 20:49   ` Thomas Petazzoni
  2014-12-09 13:46 ` [Buildroot] [PATCH v5 09/15] qt5base: apply new patch naming policy Jérôme Pouiller
                   ` (7 subsequent siblings)
  15 siblings, 1 reply; 30+ messages in thread
From: Jérôme Pouiller @ 2014-12-09 13:46 UTC (permalink / raw)
  To: buildroot

Signed-off-by: J?r?me Pouiller <jezz@sysmic.org>
---
 package/libdrm/0001-update-arm.patch | 37 ++++++++++++++++++++++++++++++++++++
 1 file changed, 37 insertions(+)
 create mode 100644 package/libdrm/0001-update-arm.patch

diff --git a/package/libdrm/0001-update-arm.patch b/package/libdrm/0001-update-arm.patch
new file mode 100644
index 0000000..8c874bb
--- /dev/null
+++ b/package/libdrm/0001-update-arm.patch
@@ -0,0 +1,37 @@
+[Adapted from yocto project]
+
+Add ARM support into xf86arm.h.  This provides support for Xorg interface.
+Without this the vivante samples will hang during close requiring a reboot
+
+Upstream-Status: Pending
+
+Signed-off-by: Lauren Post <lauren.post@freescale.com>
+Signed-off-by: Evan Kotara <evan.kotara@freescale.com>
+
+diff --git a/xf86drm.h b/xf86drm.h
+--- a/xf86drm.h
++++ b/xf86drm.h
+@@ -461,6 +461,23 @@ do {	register unsigned int __old __asm("
+ 		: "cr0", "memory");			\
+ 	} while (0)
+ 
++#elif defined(__arm__)
++       #undef DRM_DEV_MODE
++       #define DRM_DEV_MODE     (S_IRUSR|S_IWUSR|S_IRGRP|S_IWGRP|S_IROTH|S_IWOTH)
++
++       #define DRM_CAS(lock,old,new,__ret)             \
++       do {                                            \
++               __asm__ __volatile__ (                  \
++                       "1: ldrex %0, [%1]\n"           \
++                       "   teq %0, %2\n"               \
++                       "   ite eq\n"                   \
++                       "   strexeq %0, %3, [%1]\n"     \
++                       "   movne   %0, #1\n"           \
++               : "=&r" (__ret)                         \
++               : "r" (lock), "r" (old), "r" (new)      \
++               : "cc","memory");                       \
++       } while (0)
++
+ #endif /* architecture */
+ #endif /* __GNUC__ >= 2 */
+ 
-- 
1.9.1

^ permalink raw reply related	[flat|nested] 30+ messages in thread

* [Buildroot] [PATCH v5 09/15] qt5base: apply new patch naming policy
  2014-12-09 13:46 [Buildroot] [PATCH v5 00/15] Add Xorg support for iMX6 Jérôme Pouiller
                   ` (7 preceding siblings ...)
  2014-12-09 13:46 ` [Buildroot] [PATCH v5 08/15] libdrm: fix support for xserver with Vivante drivers Jérôme Pouiller
@ 2014-12-09 13:46 ` Jérôme Pouiller
  2014-12-09 13:46 ` [Buildroot] [PATCH v5 10/15] qt5base: fix Vivante x11/EGL configuration Jérôme Pouiller
                   ` (6 subsequent siblings)
  15 siblings, 0 replies; 30+ messages in thread
From: Jérôme Pouiller @ 2014-12-09 13:46 UTC (permalink / raw)
  To: buildroot

Signed-off-by: J?r?me Pouiller <jezz@sysmic.org>
---
 .../{qt5base-0002-mkspecs-files.patch => 0002-mkspecs-files.patch}        | 0
 .../{qt5base-0003-uclibc-no-lfs.patch => 0003-uclibc-no-lfs.patch}        | 0
 2 files changed, 0 insertions(+), 0 deletions(-)
 rename package/qt5/qt5base/{qt5base-0002-mkspecs-files.patch => 0002-mkspecs-files.patch} (100%)
 rename package/qt5/qt5base/{qt5base-0003-uclibc-no-lfs.patch => 0003-uclibc-no-lfs.patch} (100%)

diff --git a/package/qt5/qt5base/qt5base-0002-mkspecs-files.patch b/package/qt5/qt5base/0002-mkspecs-files.patch
similarity index 100%
rename from package/qt5/qt5base/qt5base-0002-mkspecs-files.patch
rename to package/qt5/qt5base/0002-mkspecs-files.patch
diff --git a/package/qt5/qt5base/qt5base-0003-uclibc-no-lfs.patch b/package/qt5/qt5base/0003-uclibc-no-lfs.patch
similarity index 100%
rename from package/qt5/qt5base/qt5base-0003-uclibc-no-lfs.patch
rename to package/qt5/qt5base/0003-uclibc-no-lfs.patch
-- 
1.9.1

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [Buildroot] [PATCH v5 10/15] qt5base: fix Vivante x11/EGL configuration
  2014-12-09 13:46 [Buildroot] [PATCH v5 00/15] Add Xorg support for iMX6 Jérôme Pouiller
                   ` (8 preceding siblings ...)
  2014-12-09 13:46 ` [Buildroot] [PATCH v5 09/15] qt5base: apply new patch naming policy Jérôme Pouiller
@ 2014-12-09 13:46 ` Jérôme Pouiller
  2014-12-09 13:58   ` Thomas Petazzoni
  2014-12-09 13:46 ` [Buildroot] [PATCH v5 11/15] Vivante drivers: bump to version 3.10.17-1.0.1 Jérôme Pouiller
                   ` (5 subsequent siblings)
  15 siblings, 1 reply; 30+ messages in thread
From: Jérôme Pouiller @ 2014-12-09 13:46 UTC (permalink / raw)
  To: buildroot

Fix compilation with Vivante headers and bug at runtime.

Signed-off-by: J?r?me Pouiller <jezz@sysmic.org>
---
 .../qt5/qt5base/0001-Force_egl_visual_ID_33.patch  | 23 ++++++++
 package/qt5/qt5base/0004-xcb-egl-fixes.patch       | 63 ++++++++++++++++++++++
 2 files changed, 86 insertions(+)
 create mode 100644 package/qt5/qt5base/0001-Force_egl_visual_ID_33.patch
 create mode 100644 package/qt5/qt5base/0004-xcb-egl-fixes.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..b0be292
--- /dev/null
+++ b/package/qt5/qt5base/0001-Force_egl_visual_ID_33.patch
@@ -0,0 +1,23 @@
+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,5 @@
+     }
+ 
+     qWarning("Unable to find an X11 visual which matches EGL config %d", configId);
+-    return (VisualID)0;
++    return (VisualID)33;
+ }
diff --git a/package/qt5/qt5base/0004-xcb-egl-fixes.patch b/package/qt5/qt5base/0004-xcb-egl-fixes.patch
new file mode 100644
index 0000000..2bbd849
--- /dev/null
+++ b/package/qt5/qt5base/0004-xcb-egl-fixes.patch
@@ -0,0 +1,63 @@
+The vivante headers pull in X11 defines which break eglconvenience
+
+* Adds a missing include to qeglplatformcontext.cpp
+* Fix namespace collision on CursorShape, pulled in from X11/X.h
+* Do not pass MESA_EGL_NO_X11_HEADERS when xcb is use
+
+[based on patch from Yocto project]
+Signed-off-by: J?r?me Pouiller <jezz@sysmic.org>
+
+
+diff -Nuar a/src/platformsupport/eglconvenience/eglconvenience.pri b/src/platformsupport/eglconvenience/eglconvenience.pri
+--- a/src/platformsupport/eglconvenience/eglconvenience.pri	2014-08-07 16:53:50.038277168 -0400
++++ b/src/platformsupport/eglconvenience/eglconvenience.pri	2014-08-07 16:54:52.874278651 -0400
+@@ -30,8 +30,10 @@
+         }
+     }
+ 
+-    # Avoid X11 header collision
+-    DEFINES += MESA_EGL_NO_X11_HEADERS
++    !contains(QT_CONFIG,xcb) {
++        # Avoid X11 header collision
++        DEFINES += MESA_EGL_NO_X11_HEADERS
++    }
+ 
+     contains(QT_CONFIG,xlib) {
+         HEADERS += \
+diff -Nuar a/src/platformsupport/eglconvenience/qeglplatformcontext.cpp b/src/platformsupport/eglconvenience/qeglplatformcontext.cpp
+--- a/src/platformsupport/eglconvenience/qeglplatformcontext.cpp	2014-08-07 16:53:50.038277168 -0400
++++ b/src/platformsupport/eglconvenience/qeglplatformcontext.cpp	2014-08-07 16:56:00.630280249 -0400
+@@ -39,6 +39,7 @@
+ **
+ ****************************************************************************/
+ 
++#include <qtextstream.h>
+ #include "qeglplatformcontext_p.h"
+ #include "qeglconvenience_p.h"
+ #include "qeglpbuffer_p.h"
+--- a/src/platformsupport/eglconvenience/qeglplatformcursor_p.h	2014-08-07 16:53:50.038277168 -0400
++++ b/src/platformsupport/eglconvenience/qeglplatformcursor_p.h	2014-08-07 16:58:49.014284222 -0400
+@@ -42,6 +42,11 @@
+ #ifndef QEGLPLATFORMCURSOR_H
+ #define QEGLPLATFORMCURSOR_H
+ 
++// avoid namespace collision with X11/X.h
++#ifdef CursorShape
++#undef CursorShape
++#endif
++
+ #include <qpa/qplatformcursor.h>
+ #include <qpa/qplatformscreen.h>
+ 
+--- a/src/platformsupport/eglconvenience/qeglplatformcursor.cpp	2014-08-07 16:53:50.038277168 -0400
++++ b/src/platformsupport/eglconvenience/qeglplatformcursor.cpp	2014-08-07 17:00:36.806286766 -0400
+@@ -49,8 +49,8 @@
+ 
+ #include <QtPlatformSupport/private/qdevicediscovery_p.h>
+ 
+-#include "qeglplatformcursor_p.h"
+ #include "qeglplatformintegration_p.h"
++#include "qeglplatformcursor_p.h"
+ 
+ QT_BEGIN_NAMESPACE
+ 
-- 
1.9.1

^ permalink raw reply related	[flat|nested] 30+ messages in thread

* [Buildroot] [PATCH v5 11/15] Vivante drivers: bump to version 3.10.17-1.0.1
  2014-12-09 13:46 [Buildroot] [PATCH v5 00/15] Add Xorg support for iMX6 Jérôme Pouiller
                   ` (9 preceding siblings ...)
  2014-12-09 13:46 ` [Buildroot] [PATCH v5 10/15] qt5base: fix Vivante x11/EGL configuration Jérôme Pouiller
@ 2014-12-09 13:46 ` Jérôme Pouiller
  2014-12-09 13:46 ` [Buildroot] [PATCH v5 12/15] nitrogen6x_defconfig: bump kernel to 3.10.17_1.0.1_ga Jérôme Pouiller
                   ` (4 subsequent siblings)
  15 siblings, 0 replies; 30+ messages in thread
From: Jérôme Pouiller @ 2014-12-09 13:46 UTC (permalink / raw)
  To: buildroot

Signed-off-by: J?r?me Pouiller <jezz@sysmic.org>
---
 package/freescale-imx/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q.mk           | 5 +++--
 .../x11r7/xdriver_xf86-video-imx-viv/xdriver_xf86-video-imx-viv.mk   | 2 +-
 2 files changed, 4 insertions(+), 3 deletions(-)

diff --git a/package/freescale-imx/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q.mk b/package/freescale-imx/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q.mk
index 501b124..e07e5ca 100644
--- a/package/freescale-imx/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q.mk
+++ b/package/freescale-imx/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q.mk
@@ -4,10 +4,11 @@
 #
 ################################################################################
 
+GPU_VIV_BIN_MX6Q_BASE_VERSION = 3.10.17-1.0.1
 ifeq ($(BR2_ARM_EABIHF),y)
-GPU_VIV_BIN_MX6Q_VERSION = $(FREESCALE_IMX_VERSION)-hfp
+GPU_VIV_BIN_MX6Q_VERSION = $(GPU_VIV_BIN_MX6Q_BASE_VERSION)-hfp
 else
-GPU_VIV_BIN_MX6Q_VERSION = $(FREESCALE_IMX_VERSION)-sfp
+GPU_VIV_BIN_MX6Q_VERSION = $(GPU_VIV_BIN_MX6Q_BASE_VERSION)-sfp
 endif
 GPU_VIV_BIN_MX6Q_SITE = $(FREESCALE_IMX_SITE)
 GPU_VIV_BIN_MX6Q_SOURCE = gpu-viv-bin-mx6q-$(GPU_VIV_BIN_MX6Q_VERSION).bin
diff --git a/package/x11r7/xdriver_xf86-video-imx-viv/xdriver_xf86-video-imx-viv.mk b/package/x11r7/xdriver_xf86-video-imx-viv/xdriver_xf86-video-imx-viv.mk
index 0a62110..f5a5477 100644
--- a/package/x11r7/xdriver_xf86-video-imx-viv/xdriver_xf86-video-imx-viv.mk
+++ b/package/x11r7/xdriver_xf86-video-imx-viv/xdriver_xf86-video-imx-viv.mk
@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-XDRIVER_XF86_VIDEO_IMX_VIV_VERSION = $(FREESCALE_IMX_VERSION)
+XDRIVER_XF86_VIDEO_IMX_VIV_VERSION = 3.10.17-1.0.1
 XDRIVER_XF86_VIDEO_IMX_VIV_SITE = $(FREESCALE_IMX_SITE)
 XDRIVER_XF86_VIDEO_IMX_VIV_SOURCE = xserver-xorg-video-imx-viv-$(XDRIVER_XF86_VIDEO_IMX_VIV_VERSION).tar.gz
 XDRIVER_XF86_VIDEO_IMX_VIV_DEPENDENCIES = gpu-viv-bin-mx6q xserver_xorg-server \
-- 
1.9.1

^ permalink raw reply related	[flat|nested] 30+ messages in thread

* [Buildroot] [PATCH v5 12/15] nitrogen6x_defconfig: bump kernel to 3.10.17_1.0.1_ga
  2014-12-09 13:46 [Buildroot] [PATCH v5 00/15] Add Xorg support for iMX6 Jérôme Pouiller
                   ` (10 preceding siblings ...)
  2014-12-09 13:46 ` [Buildroot] [PATCH v5 11/15] Vivante drivers: bump to version 3.10.17-1.0.1 Jérôme Pouiller
@ 2014-12-09 13:46 ` Jérôme Pouiller
  2014-12-09 13:46 ` [Buildroot] [PATCH v5 13/15] freescale_imx6*_defconfig: " Jérôme Pouiller
                   ` (3 subsequent siblings)
  15 siblings, 0 replies; 30+ messages in thread
From: Jérôme Pouiller @ 2014-12-09 13:46 UTC (permalink / raw)
  To: buildroot

Signed-off-by: J?r?me Pouiller <jezz@sysmic.org>
---
 configs/nitrogen6x_defconfig | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/configs/nitrogen6x_defconfig b/configs/nitrogen6x_defconfig
index e56bd60..d75f780 100644
--- a/configs/nitrogen6x_defconfig
+++ b/configs/nitrogen6x_defconfig
@@ -26,7 +26,8 @@ BR2_TARGET_UBOOT_CUSTOM_TARBALL_LOCATION="http://github.com/boundarydevices/u-bo
 # kernel
 BR2_LINUX_KERNEL=y
 BR2_LINUX_KERNEL_CUSTOM_TARBALL=y
-BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="http://github.com/boundarydevices/linux-imx6/tarball/898627a/linux-imx6-898627a.tar.gz"
+# Last version of branch boundary-imx_3.10.17_1.0.1_ga
+BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="https://github.com/boundarydevices/linux-imx6/tarball/ea957c5/linux-imx6-ea957c5.tar.gz"
 BR2_LINUX_KERNEL_DEFCONFIG="nitrogen6x"
 BR2_LINUX_KERNEL_INSTALL_TARGET=y
 BR2_LINUX_KERNEL_UIMAGE_LOADADDR="0x10008000"
-- 
1.9.1

^ permalink raw reply related	[flat|nested] 30+ messages in thread

* [Buildroot] [PATCH v5 13/15] freescale_imx6*_defconfig: bump kernel to 3.10.17_1.0.1_ga
  2014-12-09 13:46 [Buildroot] [PATCH v5 00/15] Add Xorg support for iMX6 Jérôme Pouiller
                   ` (11 preceding siblings ...)
  2014-12-09 13:46 ` [Buildroot] [PATCH v5 12/15] nitrogen6x_defconfig: bump kernel to 3.10.17_1.0.1_ga Jérôme Pouiller
@ 2014-12-09 13:46 ` Jérôme Pouiller
  2014-12-09 13:46 ` [Buildroot] [PATCH v5 14/15] qmx6_defconfig: update Jérôme Pouiller
                   ` (2 subsequent siblings)
  15 siblings, 0 replies; 30+ messages in thread
From: Jérôme Pouiller @ 2014-12-09 13:46 UTC (permalink / raw)
  To: buildroot

Signed-off-by: J?r?me Pouiller <jezz@sysmic.org>
---
 configs/freescale_imx6dlsabresd_defconfig   | 3 ++-
 configs/freescale_imx6qsabresd_defconfig    | 3 ++-
 configs/freescale_imx6sololiteevk_defconfig | 3 ++-
 3 files changed, 6 insertions(+), 3 deletions(-)

diff --git a/configs/freescale_imx6dlsabresd_defconfig b/configs/freescale_imx6dlsabresd_defconfig
index 680031d..b4f0d74 100644
--- a/configs/freescale_imx6dlsabresd_defconfig
+++ b/configs/freescale_imx6dlsabresd_defconfig
@@ -17,7 +17,8 @@ BR2_TARGET_GENERIC_GETTY_PORT="ttymxc0"
 BR2_LINUX_KERNEL=y
 BR2_LINUX_KERNEL_CUSTOM_GIT=y
 BR2_LINUX_KERNEL_CUSTOM_REPO_URL="git://git.freescale.com/imx/linux-2.6-imx.git"
-BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="rel_imx_3.10.17_1.0.0_ga"
+# Last version of branch imx_3.10.17_1.0.1_ga
+BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="dac46dcf913585956a0e7a838e6f4b7465f00f57"
 BR2_LINUX_KERNEL_DEFCONFIG="imx_v7"
 BR2_LINUX_KERNEL_UIMAGE_LOADADDR="0x10008000"
 BR2_LINUX_KERNEL_DTS_SUPPORT=y
diff --git a/configs/freescale_imx6qsabresd_defconfig b/configs/freescale_imx6qsabresd_defconfig
index f2f702e..9ca89cb 100644
--- a/configs/freescale_imx6qsabresd_defconfig
+++ b/configs/freescale_imx6qsabresd_defconfig
@@ -17,7 +17,8 @@ BR2_TARGET_GENERIC_GETTY_PORT="ttymxc0"
 BR2_LINUX_KERNEL=y
 BR2_LINUX_KERNEL_CUSTOM_GIT=y
 BR2_LINUX_KERNEL_CUSTOM_REPO_URL="git://git.freescale.com/imx/linux-2.6-imx.git"
-BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="rel_imx_3.10.17_1.0.0_ga"
+# Last version of branch imx_3.10.17_1.0.1_ga
+BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="dac46dcf913585956a0e7a838e6f4b7465f00f57"
 BR2_LINUX_KERNEL_DEFCONFIG="imx_v7"
 BR2_LINUX_KERNEL_UIMAGE_LOADADDR="0x10008000"
 BR2_LINUX_KERNEL_DTS_SUPPORT=y
diff --git a/configs/freescale_imx6sololiteevk_defconfig b/configs/freescale_imx6sololiteevk_defconfig
index f8ecc7b..f501fc3 100644
--- a/configs/freescale_imx6sololiteevk_defconfig
+++ b/configs/freescale_imx6sololiteevk_defconfig
@@ -9,7 +9,8 @@ BR2_TARGET_GENERIC_GETTY_PORT="ttymxc0"
 BR2_LINUX_KERNEL=y
 BR2_LINUX_KERNEL_CUSTOM_GIT=y
 BR2_LINUX_KERNEL_CUSTOM_REPO_URL="git://git.freescale.com/imx/linux-2.6-imx.git"
-BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="rel_imx_3.10.17_1.0.0_ga"
+# Last version of branch imx_3.10.17_1.0.1_ga
+BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="dac46dcf913585956a0e7a838e6f4b7465f00f57"
 BR2_LINUX_KERNEL_DEFCONFIG="imx_v7"
 BR2_LINUX_KERNEL_UIMAGE_LOADADDR="0x10008000"
 BR2_LINUX_KERNEL_DTS_SUPPORT=y
-- 
1.9.1

^ permalink raw reply related	[flat|nested] 30+ messages in thread

* [Buildroot] [PATCH v5 14/15] qmx6_defconfig: update
  2014-12-09 13:46 [Buildroot] [PATCH v5 00/15] Add Xorg support for iMX6 Jérôme Pouiller
                   ` (12 preceding siblings ...)
  2014-12-09 13:46 ` [Buildroot] [PATCH v5 13/15] freescale_imx6*_defconfig: " Jérôme Pouiller
@ 2014-12-09 13:46 ` Jérôme Pouiller
  2014-12-09 13:46 ` [Buildroot] [PATCH v5 15/15] qmx6_qt5_demo_defconfig: new defconfig Jérôme Pouiller
  2014-12-20  1:41 ` [Buildroot] [PATCH v5 00/15] Add Xorg support for iMX6 Gary Bisson
  15 siblings, 0 replies; 30+ messages in thread
From: Jérôme Pouiller @ 2014-12-09 13:46 UTC (permalink / raw)
  To: buildroot

- Update kernel
- Add u-boot configuration
- 6q_bootscript.txt is no more needed by new version of u-boot

Signed-off-by: J?r?me Pouiller <jezz@sysmic.org>
---
 board/congatec/qmx6/6q_bootscript.txt |  2 --
 board/congatec/qmx6/post-build.sh     |  7 -------
 configs/qmx6_defconfig                | 25 +++++++++++++++++++++----
 3 files changed, 21 insertions(+), 13 deletions(-)
 delete mode 100644 board/congatec/qmx6/6q_bootscript.txt
 delete mode 100755 board/congatec/qmx6/post-build.sh

diff --git a/board/congatec/qmx6/6q_bootscript.txt b/board/congatec/qmx6/6q_bootscript.txt
deleted file mode 100644
index 1382220..0000000
--- a/board/congatec/qmx6/6q_bootscript.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-set bootargs console=ttymxc1,115200 root=/dev/mmcblk0p1 rootwait consoleblank=0
-${fs}load mmc ${disk}:1 10800000 /boot/uImage && bootm 10800000 ; echo "Error loading kernel image"
diff --git a/board/congatec/qmx6/post-build.sh b/board/congatec/qmx6/post-build.sh
deleted file mode 100755
index 92251a5..0000000
--- a/board/congatec/qmx6/post-build.sh
+++ /dev/null
@@ -1,7 +0,0 @@
-#!/bin/sh
-
-TARGET_DIR=$1
-BOARD_DIR="$(dirname $0)"
-
-mkimage -A arm -O linux -T script -C none -a 0 -e 0 -n "boot script" \
-    -d $BOARD_DIR/6q_bootscript.txt $TARGET_DIR/6q_bootscript
diff --git a/configs/qmx6_defconfig b/configs/qmx6_defconfig
index 143e058..ff035a9 100644
--- a/configs/qmx6_defconfig
+++ b/configs/qmx6_defconfig
@@ -1,16 +1,33 @@
 BR2_arm=y
 BR2_cortex_a9=y
 BR2_KERNEL_HEADERS_VERSION=y
-BR2_DEFAULT_KERNEL_VERSION="3.0.101"
-BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_3_0=y
+BR2_DEFAULT_KERNEL_VERSION="3.10.17"
+BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_3_10=y
 BR2_TARGET_GENERIC_GETTY_PORT="ttymxc1"
-BR2_ROOTFS_POST_BUILD_SCRIPT="board/congatec/qmx6/post-build.sh"
+
+# Notice you need a recent version of u-boot (with DT support) to be able
+# to boot this kernel
 BR2_LINUX_KERNEL=y
 BR2_LINUX_KERNEL_CUSTOM_GIT=y
 BR2_LINUX_KERNEL_CUSTOM_REPO_URL="https://git.congatec.com/arm/qmx6_kernel.git"
-BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="rel_imx_3.0.35_4.1.0_QMX6_R1.1.2"
+# Last version of branch cgt_imx_3.10.17_1.0.0
+BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="9bafbcba67f7bb2a48a5e05998cecb1165aa444f"
 BR2_LINUX_KERNEL_DEFCONFIG="qmx6"
+BR2_LINUX_KERNEL_UIMAGE_LOADADDR="0x10008000"
+BR2_LINUX_KERNEL_DTS_SUPPORT=y
+BR2_LINUX_KERNEL_INTREE_DTS_NAME="imx6q-qmx6"
 BR2_LINUX_KERNEL_INSTALL_TARGET=y
+
+# Change boardname depending of your product number
+BR2_TARGET_UBOOT=y
+BR2_TARGET_UBOOT_BOARDNAME="cgt_qmx6_pn016103"
+BR2_TARGET_UBOOT_CUSTOM_GIT=y
+BR2_TARGET_UBOOT_CUSTOM_REPO_URL="https://git.congatec.com/arm/qmx6_uboot.git"
+BR2_TARGET_UBOOT_CUSTOM_REPO_VERSION="6388c474189b42c07bb865dd604c74483da099f3"
+BR2_TARGET_UBOOT_FORMAT_CUSTOM=y
+BR2_TARGET_UBOOT_FORMAT_CUSTOM_NAME="u-boot.pn016103.imx"
+
 BR2_TARGET_ROOTFS_EXT2=y
 BR2_TARGET_ROOTFS_EXT2_3=y
+
 BR2_PACKAGE_HOST_UBOOT_TOOLS=y
-- 
1.9.1

^ permalink raw reply related	[flat|nested] 30+ messages in thread

* [Buildroot] [PATCH v5 15/15] qmx6_qt5_demo_defconfig: new defconfig
  2014-12-09 13:46 [Buildroot] [PATCH v5 00/15] Add Xorg support for iMX6 Jérôme Pouiller
                   ` (13 preceding siblings ...)
  2014-12-09 13:46 ` [Buildroot] [PATCH v5 14/15] qmx6_defconfig: update Jérôme Pouiller
@ 2014-12-09 13:46 ` Jérôme Pouiller
  2014-12-20  1:41 ` [Buildroot] [PATCH v5 00/15] Add Xorg support for iMX6 Gary Bisson
  15 siblings, 0 replies; 30+ messages in thread
From: Jérôme Pouiller @ 2014-12-09 13:46 UTC (permalink / raw)
  To: buildroot

This new defconfig is based on qmx6_defconfig. In add:
- it enable support for graphical drivers
- it enable Qt5 (eglfs)

Signed-off-by: J?r?me Pouiller <jezz@sysmic.org>
---
 configs/qmx6_qt5_demo_defconfig | 57 +++++++++++++++++++++++++++++++++++++++++
 1 file changed, 57 insertions(+)
 create mode 100644 configs/qmx6_qt5_demo_defconfig

diff --git a/configs/qmx6_qt5_demo_defconfig b/configs/qmx6_qt5_demo_defconfig
new file mode 100644
index 0000000..22c6e15
--- /dev/null
+++ b/configs/qmx6_qt5_demo_defconfig
@@ -0,0 +1,57 @@
+# architecture
+BR2_arm=y
+BR2_cortex_a9=y
+BR2_KERNEL_HEADERS_VERSION=y
+BR2_DEFAULT_KERNEL_VERSION="3.10.17"
+BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_3_10=y
+BR2_TOOLCHAIN_BUILDROOT_EGLIBC=y
+BR2_TOOLCHAIN_BUILDROOT_CXX=y
+
+# system
+BR2_TARGET_GENERIC_GETTY_PORT="ttymxc1"
+
+# kernel
+# Notice you need a recent version of u-boot (with DT support) to be able
+# to boot this kernel
+BR2_LINUX_KERNEL=y
+BR2_LINUX_KERNEL_CUSTOM_GIT=y
+BR2_LINUX_KERNEL_CUSTOM_REPO_URL="https://git.congatec.com/arm/qmx6_kernel.git"
+# Last version of branch cgt_imx_3.10.17_1.0.0
+BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="9bafbcba67f7bb2a48a5e05998cecb1165aa444f"
+BR2_LINUX_KERNEL_DEFCONFIG="qmx6"
+BR2_LINUX_KERNEL_UIMAGE_LOADADDR="0x10008000"
+BR2_LINUX_KERNEL_DTS_SUPPORT=y
+BR2_LINUX_KERNEL_INTREE_DTS_NAME="imx6q-qmx6"
+BR2_LINUX_KERNEL_INSTALL_TARGET=y
+
+# Graphics drivers
+BR2_PACKAGE_FREESCALE_IMX=y
+BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX6Q=y
+BR2_PACKAGE_GPU_VIV_BIN_MX6Q=y
+BR2_PACKAGE_GPU_VIV_BIN_MX6Q_OUTPUT_FB=y
+
+# Enable Qt5
+BR2_PACKAGE_QT5=y
+BR2_PACKAGE_QT5BASE_LICENSE_APPROVED=y
+BR2_PACKAGE_QT5BASE_GUI=y
+BR2_PACKAGE_QT5BASE_EGLFS=y
+BR2_PACKAGE_QT5BASE_OPENGL_LIB=y
+BR2_PACKAGE_QT5BASE_DEFAULT_QPA="eglfs"
+BR2_PACKAGE_QT5BASE_PNG=y
+
+# u-boot
+# Change boardname depending of your product number
+BR2_TARGET_UBOOT=y
+BR2_TARGET_UBOOT_BOARDNAME="cgt_qmx6_pn016103"
+BR2_TARGET_UBOOT_CUSTOM_GIT=y
+BR2_TARGET_UBOOT_CUSTOM_REPO_URL="https://git.congatec.com/arm/qmx6_uboot.git"
+BR2_TARGET_UBOOT_CUSTOM_REPO_VERSION="6388c474189b42c07bb865dd604c74483da099f3"
+BR2_TARGET_UBOOT_FORMAT_CUSTOM=y
+BR2_TARGET_UBOOT_FORMAT_CUSTOM_NAME="u-boot.pn016103.imx"
+
+# Images
+BR2_TARGET_ROOTFS_EXT2=y
+BR2_TARGET_ROOTFS_EXT2_3=y
+
+# Usefull host packages
+BR2_PACKAGE_HOST_UBOOT_TOOLS=y
-- 
1.9.1

^ permalink raw reply related	[flat|nested] 30+ messages in thread

* [Buildroot] [PATCH v5 10/15] qt5base: fix Vivante x11/EGL configuration
  2014-12-09 13:46 ` [Buildroot] [PATCH v5 10/15] qt5base: fix Vivante x11/EGL configuration Jérôme Pouiller
@ 2014-12-09 13:58   ` Thomas Petazzoni
  0 siblings, 0 replies; 30+ messages in thread
From: Thomas Petazzoni @ 2014-12-09 13:58 UTC (permalink / raw)
  To: buildroot

Dear J?r?me Pouiller,

On Tue,  9 Dec 2014 14:46:48 +0100, J?r?me Pouiller wrote:
> Fix compilation with Vivante headers and bug at runtime.
> 
> Signed-off-by: J?r?me Pouiller <jezz@sysmic.org>

Could you add some justification as to why those patches touching
non-platform specific parts of Qt will continue to work on non-i.MX
platforms once those patches are applied? I'm especially thinking about
the 0001 patch.

Thanks a lot!

Thomas
-- 
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [Buildroot] [PATCH v5 00/15] Add Xorg support for iMX6
  2014-12-09 13:46 [Buildroot] [PATCH v5 00/15] Add Xorg support for iMX6 Jérôme Pouiller
                   ` (14 preceding siblings ...)
  2014-12-09 13:46 ` [Buildroot] [PATCH v5 15/15] qmx6_qt5_demo_defconfig: new defconfig Jérôme Pouiller
@ 2014-12-20  1:41 ` Gary Bisson
  2014-12-20 14:27   ` Jérôme Pouiller
  15 siblings, 1 reply; 30+ messages in thread
From: Gary Bisson @ 2014-12-20  1:41 UTC (permalink / raw)
  To: buildroot

Jerome, All,

On 12/09/2014 05:46 AM, J?r?me Pouiller wrote:
> Hello,
>
> Main purpose of this serie is to add support of Vivante GPU (found on imx6) to
> Xorg. This work is mainly adapted from Yocto.
>
> v5:
>    - Add references in commit log of xdriver_xf86-video-imx-viv
>    - Split qmx6_defconfig in two defconfig: a minimal one and a demo one
>
> v4:
>    - Fix example config in commit log of xdriver_xf86-video-imx-viv
>    - Add a note about OpenGL API in xdriver_xf86-video-imx-viv help
>
> v3:
>    - Respin on next
>    - Add patch to use self-extractible helper function
>    - Remove 'See freescale-imx.mk' comment
>    - Reword patch "gpu-viv-bin-mx6q: change output selection mecanisms"
>    - libdrm: Apply new patch naming policy
>    - xdriver_xf86-video-imx-viv: Apply new patch naming policy
>    - xdriver_xf86-video-imx-viv: Does not depends directly on glibc
>    - qt5base: Apply new patch naming policy
>    - qmx6_defconfig: Use internal toochain
>
> v2:
>    - Rebase on new version of mesa3d
>    - Reorder some patches (in order to make examples I provide in commit message
>      functional)
>    - Do not bump version of all freescale packages
>    - Bump kernel version of imx6 boards
> [snip]

I haven't tested this series of patch as Thomas had some remarks. Let me 
know if I should test it anyway or if I should wait for a v6.

Thanks,
Gary

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [Buildroot] [PATCH v5 00/15] Add Xorg support for iMX6
  2014-12-20  1:41 ` [Buildroot] [PATCH v5 00/15] Add Xorg support for iMX6 Gary Bisson
@ 2014-12-20 14:27   ` Jérôme Pouiller
  2014-12-26 18:39     ` Gary Bisson
  0 siblings, 1 reply; 30+ messages in thread
From: Jérôme Pouiller @ 2014-12-20 14:27 UTC (permalink / raw)
  To: buildroot

Hello Garry,

On Friday 19 December 2014 17:41:26 Gary Bisson wrote:
> Jerome, All,
> 
> On 12/09/2014 05:46 AM, J?r?me Pouiller wrote:
> > Hello,
> >
> > Main purpose of this serie is to add support of Vivante GPU (found on 
imx6) to
> > Xorg. This work is mainly adapted from Yocto.
> >
> > v5:
> >    - Add references in commit log of xdriver_xf86-video-imx-viv
> >    - Split qmx6_defconfig in two defconfig: a minimal one and a demo one
[...] 
> I haven't tested this series of patch as Thomas had some remarks. Let me 
> know if I should test it anyway or if I should wait for a v6.
Thomas remarks are only related to Qt5 modifications. I have not yet totally 
answered these remarks, but apart from Qt5 patch, there is no opened issues on 
this series. 

-- 
J?r?me Pouiller, Sysmic
Embedded Linux specialist
http://www.sysmic.fr

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [Buildroot] [PATCH v5 00/15] Add Xorg support for iMX6
  2014-12-20 14:27   ` Jérôme Pouiller
@ 2014-12-26 18:39     ` Gary Bisson
  0 siblings, 0 replies; 30+ messages in thread
From: Gary Bisson @ 2014-12-26 18:39 UTC (permalink / raw)
  To: buildroot

Jerome, All,

On Sat, Dec 20, 2014 at 03:27:34PM +0100, J?r?me Pouiller wrote:
> Hello Garry,
> 
> On Friday 19 December 2014 17:41:26 Gary Bisson wrote:
> > Jerome, All,
> > 
> > On 12/09/2014 05:46 AM, J?r?me Pouiller wrote:
> > > Hello,
> > >
> > > Main purpose of this serie is to add support of Vivante GPU (found on 
> imx6) to
> > > Xorg. This work is mainly adapted from Yocto.
> > >
> > > v5:
> > >    - Add references in commit log of xdriver_xf86-video-imx-viv
> > >    - Split qmx6_defconfig in two defconfig: a minimal one and a demo one
> [...] 
> > I haven't tested this series of patch as Thomas had some remarks. Let me 
> > know if I should test it anyway or if I should wait for a v6.
> Thomas remarks are only related to Qt5 modifications. I have not yet totally 
> answered these remarks, but apart from Qt5 patch, there is no opened issues on 
> this series. 

I confirm this series works as expected with the following setup:
- SabreLite board (nitrogen6x defconfig)
- https://github.com/Freescale/meta-fsl-arm/blob/master/recipes-graphics/xorg-xserver/xserver-xf86-config/mx6/xorg.conf
- Xterm test
- Vivante 3D examples for X
- Also rebuilt the iMX6-specific libraries without X support and
  everything is still working in fb mode
- Checked that qmx defconfigs build fine but couldn't try on actual
  hardware as I don't have the board.

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

Gary

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [Buildroot] [PATCH v5 04/15] gpu-viv-bin-mx6q: fix GLESv2 support
  2014-12-09 13:46 ` [Buildroot] [PATCH v5 04/15] gpu-viv-bin-mx6q: fix GLESv2 support Jérôme Pouiller
@ 2014-12-27 20:34   ` Thomas Petazzoni
  0 siblings, 0 replies; 30+ messages in thread
From: Thomas Petazzoni @ 2014-12-27 20:34 UTC (permalink / raw)
  To: buildroot

Dear J?r?me Pouiller,

On Tue,  9 Dec 2014 14:46:42 +0100, J?r?me Pouiller wrote:
> Tested with:
>     QMX6 board +
>     BR2_TOOLCHAIN_EXTERNAL=y
>     BR2_TARGET_GENERIC_GETTY_PORT="ttymxc1"
>     BR2_LINUX_KERNEL=y
>     BR2_LINUX_KERNEL_CUSTOM_GIT=y
>     BR2_LINUX_KERNEL_CUSTOM_REPO_URL="https://git.congatec.com/arm/qmx6_kernel.git"
>     BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="9bafbcba67f7bb2a48a5e05998cecb1165aa444f"
>     BR2_LINUX_KERNEL_DEFCONFIG="qmx6"
>     BR2_LINUX_KERNEL_APPENDED_UIMAGE=y
>     BR2_LINUX_KERNEL_UIMAGE_LOADADDR="0x10008000"
>     BR2_LINUX_KERNEL_INTREE_DTS_NAME="imx6q-qmx6"
>     BR2_PACKAGE_QT5=y
>     BR2_PACKAGE_QT5BASE_LICENSE_APPROVED=y
>     BR2_PACKAGE_QT5BASE_EXAMPLES=y
>     BR2_PACKAGE_QT5BASE_OPENGL_LIB=y
>     BR2_PACKAGE_QT5BASE_EGLFS=y
>     BR2_PACKAGE_QT5BASE_DEFAULT_QPA="eglfs"
>     BR2_PACKAGE_QT5BASE_GIF=y
>     BR2_PACKAGE_QT5BASE_JPEG=y
>     BR2_PACKAGE_QT5BASE_PNG=y
>     BR2_PACKAGE_QT5QUICKCONTROLS=y
>     BR2_PACKAGE_FREESCALE_IMX=y
>     BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX6Q=y
>     BR2_PACKAGE_GPU_VIV_BIN_MX6Q=y
>     BR2_PACKAGE_GPU_VIV_BIN_MX6Q_EXAMPLES=y
> 
> Signed-off-by: J?r?me Pouiller <jezz@sysmic.org>

I've applied your patch. However next time, please add a real commit
log that explains what is going on. Saying how it was tested is
definitely good, but giving some explanation about what is going on
helps to understand the patch, and therefore increases the chance of
getting your patch applied quickly.

Thanks!

Thomas
-- 
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [Buildroot] [PATCH v5 05/15] gpu-viv-bin-mx6q: make fb/x11 choice explicit
  2014-12-09 13:46 ` [Buildroot] [PATCH v5 05/15] gpu-viv-bin-mx6q: make fb/x11 choice explicit Jérôme Pouiller
@ 2014-12-27 20:36   ` Thomas Petazzoni
  0 siblings, 0 replies; 30+ messages in thread
From: Thomas Petazzoni @ 2014-12-27 20:36 UTC (permalink / raw)
  To: buildroot

Dear J?r?me Pouiller,

On Tue,  9 Dec 2014 14:46:43 +0100, J?r?me Pouiller wrote:
> Signed-off-by: J?r?me Pouiller <jezz@sysmic.org>
> ---
>  package/freescale-imx/gpu-viv-bin-mx6q/Config.in   | 24 ++++++++++++++++++++--
>  .../gpu-viv-bin-mx6q/gpu-viv-bin-mx6q.mk           |  2 +-
>  2 files changed, 23 insertions(+), 3 deletions(-)
> 
> diff --git a/package/freescale-imx/gpu-viv-bin-mx6q/Config.in b/package/freescale-imx/gpu-viv-bin-mx6q/Config.in
> index 4e83dd3..904b011 100644
> --- a/package/freescale-imx/gpu-viv-bin-mx6q/Config.in
> +++ b/package/freescale-imx/gpu-viv-bin-mx6q/Config.in
> @@ -7,8 +7,6 @@ config BR2_PACKAGE_GPU_VIV_BIN_MX6Q
>  	select BR2_PACKAGE_HAS_LIBEGL
>  	select BR2_PACKAGE_HAS_LIBGLES
>  	select BR2_PACKAGE_HAS_LIBOPENVG
> -	select BR2_PACKAGE_XLIB_LIBXDAMAGE if BR2_PACKAGE_XORG7
> -	select BR2_PACKAGE_XLIB_LIBXEXT if BR2_PACKAGE_XORG7

So we used to select libxdamage and libxext...

>  	depends on BR2_arm # Only relevant for i.MX6
>  	# Library binaries are linked against libc.so.6
>  	depends on BR2_TOOLCHAIN_USES_GLIBC
> @@ -25,6 +23,28 @@ config BR2_PACKAGE_GPU_VIV_BIN_MX6Q
>  
>  if BR2_PACKAGE_GPU_VIV_BIN_MX6Q
>  
> +choice
> +	prompt "Output option"
> +	help
> +	  There are two versions of this library: one for
> +	  direct framebuffer access, one for X11 rendering.
> +	  Choose here which version to install.
> +
> +config BR2_PACKAGE_GPU_VIV_BIN_MX6Q_OUTPUT_X11
> +	depends on BR2_PACKAGE_XORG7
> +	select BR2_PACKAGE_XLIB_LIBXDAMAGE
> +	select BR2_PACKAGE_XLIB_LIBXEXT
> +	select BR2_PACKAGE_LIBDRM

... and now we're also selecting libdrm. Is this intended? Why isn't
this explained in the commit log?

>  # DirectFB is not supported (wrong version)
> -ifeq ($(BR2_PACKAGE_XORG7),y)
> +ifeq ($(BR2_PACKAGE_GPU_VIV_BIN_MX6Q_OUTPUT_X11),y)
>  GPU_VIV_BIN_MX6Q_DEPENDENCIES = xlib_libXdamage xlib_libXext

And libdrm is not part of the dependencies?

Best regards,

Thomas
-- 
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [Buildroot] [PATCH v5 06/15] gpu-viv-bin-mx6q: change output selection mechanism
  2014-12-09 13:46 ` [Buildroot] [PATCH v5 06/15] gpu-viv-bin-mx6q: change output selection mechanism Jérôme Pouiller
@ 2014-12-27 20:38   ` Thomas Petazzoni
  0 siblings, 0 replies; 30+ messages in thread
From: Thomas Petazzoni @ 2014-12-27 20:38 UTC (permalink / raw)
  To: buildroot

Dear J?r?me Pouiller,

On Tue,  9 Dec 2014 14:46:44 +0100, J?r?me Pouiller wrote:
>   - Move output selection to Config.in. It easier to add new
>     backends selection (wayland, directfb, ...).
>   - Remove useless build time dependencies xlib_libXdamage
>     and xlib_libXext (gpu-viv-bin-mx6q is provided as binary
>     package)

Then please adjust the Config.in file to indicate that those are
runtime dependencies only.

>   - Also create libraries symbolic links with version numbers.

Another thing I could suggest is to further split such a patch: you
have three items in your commit log, that are independent from each
other, so it is a good indication that the patch could be split.

Thanks,

Thomas
-- 
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [Buildroot] [PATCH v5 07/15] xdriver_xf86-video-imx-viv: new package
  2014-12-09 13:46 ` [Buildroot] [PATCH v5 07/15] xdriver_xf86-video-imx-viv: new package Jérôme Pouiller
@ 2014-12-27 20:43   ` Thomas Petazzoni
  2015-01-16 16:04     ` Jérôme Pouiller
  0 siblings, 1 reply; 30+ messages in thread
From: Thomas Petazzoni @ 2014-12-27 20:43 UTC (permalink / raw)
  To: buildroot

Dear J?r?me Pouiller,

On Tue,  9 Dec 2014 14:46:45 +0100, J?r?me Pouiller wrote:

> diff --git a/package/x11r7/xdriver_xf86-video-imx-viv/Config.in b/package/x11r7/xdriver_xf86-video-imx-viv/Config.in
> new file mode 100644
> index 0000000..d91ba79
> --- /dev/null
> +++ b/package/x11r7/xdriver_xf86-video-imx-viv/Config.in
> @@ -0,0 +1,31 @@
> +

Unneeded empty line.

> +config BR2_PACKAGE_XDRIVER_XF86_VIDEO_IMX_VIV
> +	bool "xf86-video-imx-viv"
> +	depends on BR2_PACKAGE_GPU_VIV_BIN_MX6Q_OUTPUT_X11
> +	select BR2_PACKAGE_MESA3D # Needed in order to compile xorg with glx/dri
> +	select BR2_PACKAGE_MESA3D_DRI_DRIVER

The world of OpenGL stuff will always surprise me. Why on earth does a
X.org driver that uses a proprietary OpenGL implementation needs
Mesa3D ?!?

> +	  Notice EGL and GLes2 APIs are correctly supported. This driver should
> +	  also be able to provide Desktop OpenGL implementation but, this 
> +	  feature seems broken for a while.

"for a while" -> "since quite some time".

> +	  Don't forget to load galcore.ko and create /dev/galcore before to
> +	  use this driver (else, Xorg will exit with an obscur message

"to use" -> using.

obscur -> obscure.

> +	  like "Segmentation fault at address 0xc").
> +
> +comment "xf86-video-imx-viv depends on gpu-viv-bin-mx6q with X11 output"
> +	depends on BR2_arm
> +	depends on (!BR2_PACKAGE_GPU_VIV_BIN_MX6Q_OUTPUT_X11)

Unneeded parenthesis.

> +XDRIVER_XF86_VIDEO_IMX_VIV_INSTALL_STAGING = YES
> +XDRIVER_XF86_VIDEO_IMX_VIV_MAKE_CMD = $(TARGET_CONFIGURE_OPTS) $(MAKE1) -C $(@D)/EXA/src -f makefile.linux
> +
> +define XDRIVER_XF86_VIDEO_IMX_VIV_BUILD_CMDS
> +	$(XDRIVER_XF86_VIDEO_IMX_VIV_MAKE_CMD) sysroot=$(STAGING_DIR) \
> +		BUSID_HAS_NUMBER=1 BUILD_IN_YOCTO=1 XSERVER_GREATER_THAN_13=1 \
> +		CFLAGS+="$(TARGET_CFLAGS) -I$(@D)/DRI_1.10.4/src"

Why += here? I don't think it has any effect.

Also, can you add _LICENSE and _LICENSE_FILES information?

Care to fixup those minor issues and resend?

Thanks!

Thomas
-- 
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [Buildroot] [PATCH v5 08/15] libdrm: fix support for xserver with Vivante drivers
  2014-12-09 13:46 ` [Buildroot] [PATCH v5 08/15] libdrm: fix support for xserver with Vivante drivers Jérôme Pouiller
@ 2014-12-27 20:49   ` Thomas Petazzoni
  0 siblings, 0 replies; 30+ messages in thread
From: Thomas Petazzoni @ 2014-12-27 20:49 UTC (permalink / raw)
  To: buildroot

Dear J?r?me Pouiller,

On Tue,  9 Dec 2014 14:46:46 +0100, J?r?me Pouiller wrote:
> Signed-off-by: J?r?me Pouiller <jezz@sysmic.org>
> ---
>  package/libdrm/0001-update-arm.patch | 37 ++++++++++++++++++++++++++++++++++++
>  1 file changed, 37 insertions(+)
>  create mode 100644 package/libdrm/0001-update-arm.patch
> 
> diff --git a/package/libdrm/0001-update-arm.patch b/package/libdrm/0001-update-arm.patch
> new file mode 100644
> index 0000000..8c874bb
> --- /dev/null
> +++ b/package/libdrm/0001-update-arm.patch
> @@ -0,0 +1,37 @@
> +[Adapted from yocto project]
> +
> +Add ARM support into xf86arm.h.  This provides support for Xorg interface.

xf86arm -> xf86drm.

Committed with this fixed.

If you've successfully tested this, can you send a Tested-by to
upstream libdrm to ensure the patch gets merged at some point?

Thanks,

Thomas
-- 
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [Buildroot] [PATCH v5 07/15] xdriver_xf86-video-imx-viv: new package
  2014-12-27 20:43   ` Thomas Petazzoni
@ 2015-01-16 16:04     ` Jérôme Pouiller
  2015-01-16 16:15       ` Thomas Petazzoni
  0 siblings, 1 reply; 30+ messages in thread
From: Jérôme Pouiller @ 2015-01-16 16:04 UTC (permalink / raw)
  To: buildroot

Hello Thomas,

On Saturday 27 December 2014 21:43:25 Thomas Petazzoni wrote:
> Dear J?r?me Pouiller,
> 
> On Tue,  9 Dec 2014 14:46:45 +0100, J?r?me Pouiller wrote:
> 
> > diff --git a/package/x11r7/xdriver_xf86-video-imx-viv/Config.in 
b/package/x11r7/xdriver_xf86-video-imx-viv/Config.in
> > new file mode 100644
> > index 0000000..d91ba79
> > --- /dev/null
> > +++ b/package/x11r7/xdriver_xf86-video-imx-viv/Config.in
> > @@ -0,0 +1,31 @@
> > +
> 
> Unneeded empty line.
> 
> > +config BR2_PACKAGE_XDRIVER_XF86_VIDEO_IMX_VIV
> > +	bool "xf86-video-imx-viv"
> > +	depends on BR2_PACKAGE_GPU_VIV_BIN_MX6Q_OUTPUT_X11
> > +	select BR2_PACKAGE_MESA3D # Needed in order to compile xorg with 
glx/dri
> > +	select BR2_PACKAGE_MESA3D_DRI_DRIVER
> 
> The world of OpenGL stuff will always surprise me. Why on earth does a
> X.org driver that uses a proprietary OpenGL implementation needs
> Mesa3D ?!?

In fact, xf86-video-imx-viv does not depends directly on mesa3d. However, it 
depend on xorg server compiled with --enable-dri --enable-glx. But, these 
options are enabled only if BR2_PACKAGE_MESA3D_DRI_DRIVER is enabled.



Else, I am going to send an updated version of this patch this evening.

-- 
J?r?me Pouiller, Sysmic
Embedded Linux specialist
http://www.sysmic.fr

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [Buildroot] [PATCH v5 07/15] xdriver_xf86-video-imx-viv: new package
  2015-01-16 16:04     ` Jérôme Pouiller
@ 2015-01-16 16:15       ` Thomas Petazzoni
  2015-01-17  0:11         ` Jérôme Pouiller
  0 siblings, 1 reply; 30+ messages in thread
From: Thomas Petazzoni @ 2015-01-16 16:15 UTC (permalink / raw)
  To: buildroot

Dear J?r?me Pouiller,

On Fri, 16 Jan 2015 17:04:20 +0100, J?r?me Pouiller wrote:

> > The world of OpenGL stuff will always surprise me. Why on earth does a
> > X.org driver that uses a proprietary OpenGL implementation needs
> > Mesa3D ?!?
> 
> In fact, xf86-video-imx-viv does not depends directly on mesa3d. However, it 
> depend on xorg server compiled with --enable-dri --enable-glx. But, these 
> options are enabled only if BR2_PACKAGE_MESA3D_DRI_DRIVER is enabled.

Maybe this should be changed, so that other drivers can enable it,
without referencing Mesa related options, no?

Also, the code in the xserver package does:

ifeq ($(BR2_PACKAGE_MESA3D_DRI_DRIVER),y)
XSERVER_XORG_SERVER_CONF_OPTS += --enable-dri --enable-glx
XSERVER_XORG_SERVER_DEPENDENCIES += mesa3d xproto_xf86driproto
else
XSERVER_XORG_SERVER_CONF_OPTS += --disable-dri --disable-glx
endif

So it really builds mesa as well. Is this needed ?

Can you clarify this, maybe talking with Bernd?

Thanks,

Thomas
-- 
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [Buildroot] [PATCH v5 07/15] xdriver_xf86-video-imx-viv: new package
  2015-01-16 16:15       ` Thomas Petazzoni
@ 2015-01-17  0:11         ` Jérôme Pouiller
  2015-01-19 22:20           ` Yann E. MORIN
  0 siblings, 1 reply; 30+ messages in thread
From: Jérôme Pouiller @ 2015-01-17  0:11 UTC (permalink / raw)
  To: buildroot

On Friday 16 January 2015 17:15:33 Thomas Petazzoni wrote:
> Dear J?r?me Pouiller,
> 
> On Fri, 16 Jan 2015 17:04:20 +0100, J?r?me Pouiller wrote:
> 
> > > The world of OpenGL stuff will always surprise me. Why on earth does a
> > > X.org driver that uses a proprietary OpenGL implementation needs
> > > Mesa3D ?!?
> > 
> > In fact, xf86-video-imx-viv does not depends directly on mesa3d. However, it 
> > depend on xorg server compiled with --enable-dri --enable-glx. But, these 
> > options are enabled only if BR2_PACKAGE_MESA3D_DRI_DRIVER is enabled.
> 
> Maybe this should be changed, so that other drivers can enable it,
> without referencing Mesa related options, no?
> 
> Also, the code in the xserver package does:
> 
> ifeq ($(BR2_PACKAGE_MESA3D_DRI_DRIVER),y)
> XSERVER_XORG_SERVER_CONF_OPTS += --enable-dri --enable-glx
> XSERVER_XORG_SERVER_DEPENDENCIES += mesa3d xproto_xf86driproto
> else
> XSERVER_XORG_SERVER_CONF_OPTS += --disable-dri --disable-glx
> endif
> 
> So it really builds mesa as well. Is this needed ?
We cannot use gpu-viv-bin-mx6q to compile Xorg with DRI and GLX since 
it does not provide all necessary files. Especially, OpenGL headers 
(GL/gl.h, GL/glx.h, ...) are missing[1]. We may solve this issue using
"opengl-registry" posted by Yann a few months ago. It may be 
sufficient.

Note that the current implementation is same than the one used in Yocto
and it is officially supported by Freescale. (I do not say it is the
right way, but it is a sufficient justification for many users)


[1] https://community.freescale.com/thread/312546

-- 
J?r?me Pouiller, Sysmic
Embedded Linux specialist
http://www.sysmic.fr

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [Buildroot] [PATCH v5 07/15] xdriver_xf86-video-imx-viv: new package
  2015-01-17  0:11         ` Jérôme Pouiller
@ 2015-01-19 22:20           ` Yann E. MORIN
  2015-01-21  8:41             ` Jérôme Pouiller
  0 siblings, 1 reply; 30+ messages in thread
From: Yann E. MORIN @ 2015-01-19 22:20 UTC (permalink / raw)
  To: buildroot

J?r?me, All,

On 2015-01-17 01:11 +0100, J?r?me Pouiller spake thusly:
> On Friday 16 January 2015 17:15:33 Thomas Petazzoni wrote:
> > Dear J?r?me Pouiller,
> > 
> > On Fri, 16 Jan 2015 17:04:20 +0100, J?r?me Pouiller wrote:
> > 
> > > > The world of OpenGL stuff will always surprise me. Why on earth does a
> > > > X.org driver that uses a proprietary OpenGL implementation needs
> > > > Mesa3D ?!?
> > > 
> > > In fact, xf86-video-imx-viv does not depends directly on mesa3d. However, it 
> > > depend on xorg server compiled with --enable-dri --enable-glx. But, these 
> > > options are enabled only if BR2_PACKAGE_MESA3D_DRI_DRIVER is enabled.
> > 
> > Maybe this should be changed, so that other drivers can enable it,
> > without referencing Mesa related options, no?
> > 
> > Also, the code in the xserver package does:
> > 
> > ifeq ($(BR2_PACKAGE_MESA3D_DRI_DRIVER),y)
> > XSERVER_XORG_SERVER_CONF_OPTS += --enable-dri --enable-glx
> > XSERVER_XORG_SERVER_DEPENDENCIES += mesa3d xproto_xf86driproto
> > else
> > XSERVER_XORG_SERVER_CONF_OPTS += --disable-dri --disable-glx
> > endif
> > 
> > So it really builds mesa as well. Is this needed ?
> We cannot use gpu-viv-bin-mx6q to compile Xorg with DRI and GLX since 
> it does not provide all necessary files. Especially, OpenGL headers 
> (GL/gl.h, GL/glx.h, ...) are missing[1]. We may solve this issue using
> "opengl-registry" posted by Yann a few months ago. It may be 
> sufficient.

For the records, I've posted an updated series:
    http://lists.busybox.net/pipermail/buildroot/2015-January/117642.html

Care to see if it is posible to update your series to use the Khronos
registry/ies? If so, it would great if you could review/ack the patches
so they get applied soon, so you can in turn repost an updated series of
yours! ;-)

/me is trying to get some reviewers interested! Muhahaha! ;-)

Regards,
Yann E. MORIN.

> Note that the current implementation is same than the one used in Yocto
> and it is officially supported by Freescale. (I do not say it is the
> right way, but it is a sufficient justification for many users)
> 
> 
> [1] https://community.freescale.com/thread/312546
> 
> -- 
> J?r?me Pouiller, Sysmic
> Embedded Linux specialist
> http://www.sysmic.fr
> _______________________________________________
> buildroot mailing list
> buildroot at busybox.net
> http://lists.busybox.net/mailman/listinfo/buildroot

-- 
.-----------------.--------------------.------------------.--------------------.
|  Yann E. MORIN  | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software  Designer | \ / CAMPAIGN     |  ___               |
| +33 223 225 172 `------------.-------:  X  AGAINST      |  \e/  There is no  |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL    |   v   conspiracy.  |
'------------------------------^-------^------------------^--------------------'

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [Buildroot] [PATCH v5 07/15] xdriver_xf86-video-imx-viv: new package
  2015-01-19 22:20           ` Yann E. MORIN
@ 2015-01-21  8:41             ` Jérôme Pouiller
  0 siblings, 0 replies; 30+ messages in thread
From: Jérôme Pouiller @ 2015-01-21  8:41 UTC (permalink / raw)
  To: buildroot

Hello All,

On Monday 19 January 2015 23:20:43 Yann E. MORIN wrote:
> J?r?me, All,
> 
> On 2015-01-17 01:11 +0100, J?r?me Pouiller spake thusly:
> > On Friday 16 January 2015 17:15:33 Thomas Petazzoni wrote:
> > > Dear J?r?me Pouiller,
> > > 
> > > On Fri, 16 Jan 2015 17:04:20 +0100, J?r?me Pouiller wrote:
> > > 
> > > > > The world of OpenGL stuff will always surprise me. Why on earth does a
> > > > > X.org driver that uses a proprietary OpenGL implementation needs
> > > > > Mesa3D ?!?
> > > > 
> > > > In fact, xf86-video-imx-viv does not depends directly on mesa3d. However, it 
> > > > depend on xorg server compiled with --enable-dri --enable-glx. But, these 
> > > > options are enabled only if BR2_PACKAGE_MESA3D_DRI_DRIVER is enabled.
> > > 
> > > Maybe this should be changed, so that other drivers can enable it,
> > > without referencing Mesa related options, no?
> > > 
> > > Also, the code in the xserver package does:
> > > 
> > > ifeq ($(BR2_PACKAGE_MESA3D_DRI_DRIVER),y)
> > > XSERVER_XORG_SERVER_CONF_OPTS += --enable-dri --enable-glx
> > > XSERVER_XORG_SERVER_DEPENDENCIES += mesa3d xproto_xf86driproto
> > > else
> > > XSERVER_XORG_SERVER_CONF_OPTS += --disable-dri --disable-glx
> > > endif
> > > 
> > > So it really builds mesa as well. Is this needed ?
> > We cannot use gpu-viv-bin-mx6q to compile Xorg with DRI and GLX since 
> > it does not provide all necessary files. Especially, OpenGL headers 
> > (GL/gl.h, GL/glx.h, ...) are missing[1]. We may solve this issue using
> > "opengl-registry" posted by Yann a few months ago. It may be 
> > sufficient.
> 
> For the records, I've posted an updated series:
>     http://lists.busybox.net/pipermail/buildroot/2015-January/117642.html
> 
> Care to see if it is posible to update your series to use the Khronos
> registry/ies? If so, it would great if you could review/ack the patches
> so they get applied soon, so you can in turn repost an updated series of
> yours! ;-)

I am able to build xorg-xserver w/ --enable-dri --enable-glx and 
without mesa3d. Instead of mesa3d, I built opengl-registry and a libGL
provider (I used gpu-viv-bin-mx6q, but it should also work with 
nvidia-driver).

In add, I need to manually add gl.pc, dri.pc and GL/internal/dri_interface.h
(picked from mesa3d)

I will try to generate a cleaner patch in order to begin a discussion 
about this issue.

However, I think this work is an improvement of dri/glx support and is
not really related to "Xorg support for iMX6" series.

[...]
-- 
J?r?me Pouiller, Sysmic
Embedded Linux specialist
http://www.sysmic.fr

^ permalink raw reply	[flat|nested] 30+ messages in thread

end of thread, other threads:[~2015-01-21  8:41 UTC | newest]

Thread overview: 30+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-12-09 13:46 [Buildroot] [PATCH v5 00/15] Add Xorg support for iMX6 Jérôme Pouiller
2014-12-09 13:46 ` [Buildroot] [PATCH v5 01/15] mesa3d: Give possibility to external backends to enable DRI/Gallium Jérôme Pouiller
2014-12-09 13:46 ` [Buildroot] [PATCH v5 02/15] gpu-viv-bin-mx6q: use self-extractible helper Jérôme Pouiller
2014-12-09 13:46 ` [Buildroot] [PATCH v5 03/15] gpu-viv-bin-mx6q: fix compiling issues with EGL_API_FB Jérôme Pouiller
2014-12-09 13:46 ` [Buildroot] [PATCH v5 04/15] gpu-viv-bin-mx6q: fix GLESv2 support Jérôme Pouiller
2014-12-27 20:34   ` Thomas Petazzoni
2014-12-09 13:46 ` [Buildroot] [PATCH v5 05/15] gpu-viv-bin-mx6q: make fb/x11 choice explicit Jérôme Pouiller
2014-12-27 20:36   ` Thomas Petazzoni
2014-12-09 13:46 ` [Buildroot] [PATCH v5 06/15] gpu-viv-bin-mx6q: change output selection mechanism Jérôme Pouiller
2014-12-27 20:38   ` Thomas Petazzoni
2014-12-09 13:46 ` [Buildroot] [PATCH v5 07/15] xdriver_xf86-video-imx-viv: new package Jérôme Pouiller
2014-12-27 20:43   ` Thomas Petazzoni
2015-01-16 16:04     ` Jérôme Pouiller
2015-01-16 16:15       ` Thomas Petazzoni
2015-01-17  0:11         ` Jérôme Pouiller
2015-01-19 22:20           ` Yann E. MORIN
2015-01-21  8:41             ` Jérôme Pouiller
2014-12-09 13:46 ` [Buildroot] [PATCH v5 08/15] libdrm: fix support for xserver with Vivante drivers Jérôme Pouiller
2014-12-27 20:49   ` Thomas Petazzoni
2014-12-09 13:46 ` [Buildroot] [PATCH v5 09/15] qt5base: apply new patch naming policy Jérôme Pouiller
2014-12-09 13:46 ` [Buildroot] [PATCH v5 10/15] qt5base: fix Vivante x11/EGL configuration Jérôme Pouiller
2014-12-09 13:58   ` Thomas Petazzoni
2014-12-09 13:46 ` [Buildroot] [PATCH v5 11/15] Vivante drivers: bump to version 3.10.17-1.0.1 Jérôme Pouiller
2014-12-09 13:46 ` [Buildroot] [PATCH v5 12/15] nitrogen6x_defconfig: bump kernel to 3.10.17_1.0.1_ga Jérôme Pouiller
2014-12-09 13:46 ` [Buildroot] [PATCH v5 13/15] freescale_imx6*_defconfig: " Jérôme Pouiller
2014-12-09 13:46 ` [Buildroot] [PATCH v5 14/15] qmx6_defconfig: update Jérôme Pouiller
2014-12-09 13:46 ` [Buildroot] [PATCH v5 15/15] qmx6_qt5_demo_defconfig: new defconfig Jérôme Pouiller
2014-12-20  1:41 ` [Buildroot] [PATCH v5 00/15] Add Xorg support for iMX6 Gary Bisson
2014-12-20 14:27   ` Jérôme Pouiller
2014-12-26 18:39     ` Gary Bisson

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.