summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--package/x11r7/Config.in1
-rw-r--r--package/x11r7/xdriver_xf86-video-imx-viv/0001-Fix-LoadExtenions.patch15
-rw-r--r--package/x11r7/xdriver_xf86-video-imx-viv/Config.in31
-rw-r--r--package/x11r7/xdriver_xf86-video-imx-viv/xdriver_xf86-video-imx-viv.mk35
4 files changed, 82 insertions, 0 deletions
diff --git a/package/x11r7/Config.in b/package/x11r7/Config.in
index 40f01aefbe..24316a4997 100644
--- a/package/x11r7/Config.in
+++ b/package/x11r7/Config.in
@@ -167,6 +167,7 @@ if BR2_PACKAGE_XORG7
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/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 0000000000..3e2d47c88c
--- /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 0000000000..8926a5030a
--- /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_LIBDRM
+ 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 since quite some time.
+
+ 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 using
+ 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 0000000000..06ea8155bd
--- /dev/null
+++ b/package/x11r7/xdriver_xf86-video-imx-viv/xdriver_xf86-video-imx-viv.mk
@@ -0,0 +1,35 @@
+################################################################################
+#
+# 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 libdrm
+XDRIVER_XF86_VIDEO_IMX_VIV_LICENSE = GPLv2+
+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) -D -m 644 $(@D)/EXA/src/vivante_gal/vivante_priv.h \
+ $(STAGING_DIR)/usr/include/vivante_priv.h
+ $(INSTALL) -D -m 644 $(@D)/EXA/src/vivante_gal/vivante_gal.h \
+ $(STAGING_DIR)/usr/include/vivante_gal.h
+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))
+
OpenPOWER on IntegriCloud