[meta-freescale] [meta-fsl-arm][PATCH v4 7/9] xf86-dri-vivante: Upgrade to 1.1.0
Otavio Salvador
otavio at ossystems.com.br
Tue Feb 12 13:58:48 PST 2013
This upgrades to the 1.1.0 version and also include the build fix for
newer Xorg API done by Andrei Gherzan.
Change-Id: I8935341e3513bcf845478a5a54a723b96c8cdcbf
Signed-off-by: Andrei Gherzan <andrei.gherzan at windriver.com>
Signed-off-by: Otavio Salvador <otavio at ossystems.com.br>
---
.../xf86-dri-vivante/fix-with-xorg-1-13.patch | 141 +++++++++++++++++++++
.../xorg-driver/xf86-dri-vivante_1.1.0.bb | 45 +++++++
.../xorg-driver/xf86-dri-vivante_12.09.01.bb | 36 ------
3 files changed, 186 insertions(+), 36 deletions(-)
create mode 100644 recipes-graphics/xorg-driver/xf86-dri-vivante/fix-with-xorg-1-13.patch
create mode 100644 recipes-graphics/xorg-driver/xf86-dri-vivante_1.1.0.bb
delete mode 100644 recipes-graphics/xorg-driver/xf86-dri-vivante_12.09.01.bb
diff --git a/recipes-graphics/xorg-driver/xf86-dri-vivante/fix-with-xorg-1-13.patch b/recipes-graphics/xorg-driver/xf86-dri-vivante/fix-with-xorg-1-13.patch
new file mode 100644
index 0000000..0f138e9
--- /dev/null
+++ b/recipes-graphics/xorg-driver/xf86-dri-vivante/fix-with-xorg-1-13.patch
@@ -0,0 +1,141 @@
+Fix module for Xorg 1.13.
+
+Upstream-Status: Pending
+Signed-off-by: Andrei Gherzan <andrei.gherzan at windriver.com>
+
+Index: dri-xorg-graphic-imx-viv-12.09.01/src/dri.c
+===================================================================
+--- dri-xorg-graphic-imx-viv-12.09.01.orig/src/dri.c 2012-07-02 05:25:06.000000000 +0300
++++ dri-xorg-graphic-imx-viv-12.09.01/src/dri.c 2012-12-21 11:42:09.000000000 +0200
+@@ -1675,7 +1675,7 @@
+
+ if (pDRIPriv &&
+ pDRIPriv->pDriverInfo->wrap.WakeupHandler)
+- (*pDRIPriv->pDriverInfo->wrap.WakeupHandler)(i, wakeupData,
++ (*pDRIPriv->pDriverInfo->wrap.WakeupHandler)(pScreen,
+ result, pReadmask);
+ }
+ }
+@@ -1691,16 +1691,15 @@
+
+ if (pDRIPriv &&
+ pDRIPriv->pDriverInfo->wrap.BlockHandler)
+- (*pDRIPriv->pDriverInfo->wrap.BlockHandler)(i, blockData,
++ (*pDRIPriv->pDriverInfo->wrap.BlockHandler)(pScreen,
+ pTimeout, pReadmask);
+ }
+ }
+
+ void
+-DRIDoWakeupHandler(int screenNum, pointer wakeupData,
++DRIDoWakeupHandler(ScreenPtr pScreen,
+ unsigned long result, pointer pReadmask)
+ {
+- ScreenPtr pScreen = screenInfo.screens[screenNum];
+ DRIScreenPrivPtr pDRIPriv = DRI_SCREEN_PRIV(pScreen);
+
+ DRILock(pScreen, 0);
+@@ -2383,7 +2382,7 @@
+ /* unwrap */
+ pScrn->AdjustFrame = pDRIPriv->wrap.AdjustFrame;
+ /* call lower layers */
+- (*pScrn->AdjustFrame)(scrnIndex, x, y, flags);
++ (*pScrn->AdjustFrame)(pScrn, x, y);
+ /* rewrap */
+ pDRIPriv->wrap.AdjustFrame = pScrn->AdjustFrame;
+ pScrn->AdjustFrame = DRIAdjustFrame;
+Index: dri-xorg-graphic-imx-viv-12.09.01/src/dri.h
+===================================================================
+--- dri-xorg-graphic-imx-viv-12.09.01.orig/src/dri.h 2012-07-02 05:25:06.000000000 +0300
++++ dri-xorg-graphic-imx-viv-12.09.01/src/dri.h 2012-12-21 11:42:15.000000000 +0200
+@@ -372,16 +372,14 @@
+
+ extern _X_EXPORT Bool DRIFinishScreenInit(ScreenPtr pScreen);
+
+-extern _X_EXPORT void DRIWakeupHandler(pointer wakeupData,
+- int result,
++extern _X_EXPORT void DRIWakeupHandler(pointer wakeupData, int result,
+ pointer pReadmask);
+
+ extern _X_EXPORT void DRIBlockHandler(pointer blockData,
+ OSTimePtr pTimeout,
+ pointer pReadmask);
+
+-extern _X_EXPORT void DRIDoWakeupHandler(int screenNum,
+- pointer wakeupData,
++extern _X_EXPORT void DRIDoWakeupHandler(ScreenPtr pScreen,
+ unsigned long result,
+ pointer pReadmask);
+
+Index: dri-xorg-graphic-imx-viv-12.09.01/src/xf86dri.c
+===================================================================
+--- dri-xorg-graphic-imx-viv-12.09.01.orig/src/xf86dri.c 2012-07-02 05:25:06.000000000 +0300
++++ dri-xorg-graphic-imx-viv-12.09.01/src/xf86dri.c 2012-12-21 10:27:32.000000000 +0200
+@@ -102,7 +102,6 @@
+ )
+ {
+ xXF86DRIQueryVersionReply rep;
+- register int n;
+
+ REQUEST_SIZE_MATCH(xXF86DRIQueryVersionReq);
+ rep.type = X_Reply;
+@@ -112,11 +111,11 @@
+ rep.minorVersion = SERVER_XF86DRI_MINOR_VERSION;
+ rep.patchVersion = SERVER_XF86DRI_PATCH_VERSION;
+ if (client->swapped) {
+- swaps(&rep.sequenceNumber, n);
+- swapl(&rep.length, n);
+- swaps(&rep.majorVersion, n);
+- swaps(&rep.minorVersion, n);
+- swapl(&rep.patchVersion, n);
++ swaps(&rep.sequenceNumber);
++ swapl(&rep.length);
++ swaps(&rep.majorVersion);
++ swaps(&rep.minorVersion);
++ swapl(&rep.patchVersion);
+ }
+ WriteToClient(client, sizeof(xXF86DRIQueryVersionReply), (char *)&rep);
+ return Success;
+@@ -129,7 +128,6 @@
+ {
+ xXF86DRIQueryDirectRenderingCapableReply rep;
+ Bool isCapable;
+- register int n;
+
+ REQUEST(xXF86DRIQueryDirectRenderingCapableReq);
+ REQUEST_SIZE_MATCH(xXF86DRIQueryDirectRenderingCapableReq);
+@@ -152,8 +150,8 @@
+ rep.isCapable = 0;
+
+ if (client->swapped) {
+- swaps(&rep.sequenceNumber, n);
+- swapl(&rep.length, n);
++ swaps(&rep.sequenceNumber);
++ swapl(&rep.length);
+ }
+
+ WriteToClient(client,
+@@ -611,9 +609,8 @@
+ register ClientPtr client
+ )
+ {
+- register int n;
+ REQUEST(xXF86DRIQueryVersionReq);
+- swaps(&stuff->length, n);
++ swaps(&stuff->length);
+ return ProcXF86DRIQueryVersion(client);
+ }
+
+@@ -622,10 +619,9 @@
+ register ClientPtr client
+ )
+ {
+- register int n;
+ REQUEST(xXF86DRIQueryDirectRenderingCapableReq);
+- swaps(&stuff->length, n);
+- swapl(&stuff->screen, n);
++ swaps(&stuff->length);
++ swapl(&stuff->screen);
+ return ProcXF86DRIQueryDirectRenderingCapable(client);
+ }
+
diff --git a/recipes-graphics/xorg-driver/xf86-dri-vivante_1.1.0.bb b/recipes-graphics/xorg-driver/xf86-dri-vivante_1.1.0.bb
new file mode 100644
index 0000000..aaab593
--- /dev/null
+++ b/recipes-graphics/xorg-driver/xf86-dri-vivante_1.1.0.bb
@@ -0,0 +1,45 @@
+# Copyright (C) 2012-2013 Freescale Semiconductor
+# Copyright (C) 2012-2013 O.S. Systems Software LTDA.
+# Released under the MIT license (see COPYING.MIT for the terms)
+
+LICENSE = "MIT"
+SECTION = "x11/base"
+DEPENDS = "virtual/libx11 virtual/xserver xf86-video-imxfb-vivante"
+LIC_FILES_CHKSUM = "file://src/dri.h;enline=27;md5=c0a9f5e55df7fb9d8c7445890e52e859"
+
+SRC_URI = "${FSL_MIRROR}/xserver-xorg-video-imx-viv-${PV}.tar.gz \
+ file://fix-with-xorg-1-13.patch"
+SRC_URI[md5sum] = "d872365c046738628a7016343ffdb79a"
+SRC_URI[sha256sum] = "d53216d5f9e3f7803983ac1577d83985dfda33145e4711300f4ad5cbbe28e32d"
+
+PE = "1"
+PR = "r0"
+
+S = "${WORKDIR}/xserver-xorg-video-imx-viv-${PV}/DRI_1.10.4"
+
+inherit fsl-eula-unpack autotools pkgconfig
+
+EXTRA_OECONF_armv7a = " --enable-neon "
+CFLAGS += " -I${STAGING_INCDIR}/xorg -DXSERVER_LIBPCIACCESS"
+
+do_install_append () {
+ # Install header files
+ install -d ${D}${includedir}/xorg
+ cp -axr ${S}/src/*.h ${D}${includedir}/xorg
+ find ${D}${includedir} -type f -exec chmod 660 {} \;
+
+ # don't install libtool (*.la) archive not usefull, fix Makefile.am
+ find ${D}${libdir}/xorg/modules -regex ".*\.la$" | xargs rm -f --
+
+ # Remove files provided by xserver-xorg
+ rm ${D}${includedir}/xorg/dri.h
+ rm ${D}${includedir}/xorg/dristruct.h
+ rm ${D}${includedir}/xorg/sarea.h
+}
+
+FILES_${PN}-dev += "${includedir}/xorg/*.h"
+FILES_${PN} += " ${libdir}/xorg/modules/extensions/*.so"
+FILES_${PN}-dbg += " ${libdir}/xorg/modules/extensions/.debug"
+
+PACKAGE_ARCH = "${MACHINE_ARCH}"
+COMPATIBLE_MACHINE = "(mx6)"
diff --git a/recipes-graphics/xorg-driver/xf86-dri-vivante_12.09.01.bb b/recipes-graphics/xorg-driver/xf86-dri-vivante_12.09.01.bb
deleted file mode 100644
index 1653029..0000000
--- a/recipes-graphics/xorg-driver/xf86-dri-vivante_12.09.01.bb
+++ /dev/null
@@ -1,36 +0,0 @@
-# Copyright (C) 2012 Freescale Semiconductor
-# Released under the MIT license (see COPYING.MIT for the terms)
-
-LICENSE = "MIT"
-SECTION = "x11/base"
-DEPENDS = "virtual/libx11 util-macros xf86-video-imxfb-vivante"
-LIC_FILES_CHKSUM = "file://src/dri.h;enline=27;md5=1d0d59e1dc96f5197ea3a8b101bf1fcc"
-
-SRC_URI = "${FSL_MIRROR}/dri-xorg-graphic-imx-viv-${PV}.bin;fsl-eula=true"
-SRC_URI[md5sum] = "8c90045cd5f4dba81095856634ba5136"
-SRC_URI[sha256sum] = "c844dc180e43901359bbdb4f797ab178b3821fbf63bdee9577e5a0afe5d7f6ad"
-
-S = "${WORKDIR}/dri-xorg-graphic-imx-viv-${PV}"
-
-PR = "r2"
-
-inherit fsl-eula-unpack autotools pkgconfig
-
-EXTRA_OECONF_armv7a = " --enable-neon "
-CFLAGS += " -I${STAGING_INCDIR}/xorg"
-
-do_install_append () {
-# Install header files
- install -d ${D}${includedir}/xorg
- cp -axr ${S}/src/*.h ${D}${includedir}/xorg
- find ${D}${includedir} -type f -exec chmod 660 {} \;
-# don't install libtool (*.la) archive not usefull, fix Makefile.am
- find ${D}${libdir}/xorg/modules -regex ".*\.la$" | xargs rm -f --
-}
-
-FILES_${PN}-dev += "${includedir}/xorg/*.h"
-FILES_${PN} += " ${libdir}/xorg/modules/extensions/*.so"
-FILES_${PN}-dbg += " ${libdir}/xorg/modules/extensions/.debug"
-
-PACKAGE_ARCH = "${MACHINE_ARCH}"
-COMPATIBLE_MACHINE = "(mx6)"
--
1.8.1
More information about the meta-freescale
mailing list