[meta-freescale] [meta-fsl-arm][PATCH 1/1] xf86-dri-vivante: Add patch to fix build with Xorg 1.13
Andrei Gherzan
andrei.gherzan at windriver.com
Sat Jan 12 08:16:34 PST 2013
Signed-off-by: Andrei Gherzan <andrei.gherzan at windriver.com>
---
.../xf86-dri-vivante/fix-with-xorg-1-13.patch | 141 ++++++++++++++++++++
.../xorg-driver/xf86-dri-vivante_12.09.01.bb | 7 +-
2 files changed, 146 insertions(+), 2 deletions(-)
create mode 100644 recipes-graphics/xorg-driver/xf86-dri-vivante/fix-with-xorg-1-13.patch
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_12.09.01.bb b/recipes-graphics/xorg-driver/xf86-dri-vivante_12.09.01.bb
index 1653029..0f14eb0 100644
--- a/recipes-graphics/xorg-driver/xf86-dri-vivante_12.09.01.bb
+++ b/recipes-graphics/xorg-driver/xf86-dri-vivante_12.09.01.bb
@@ -6,13 +6,16 @@ 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 = " \
+ ${FSL_MIRROR}/dri-xorg-graphic-imx-viv-${PV}.bin;fsl-eula=true \
+ file://file://fix-with-xorg-1-13.patch \
+ "
SRC_URI[md5sum] = "8c90045cd5f4dba81095856634ba5136"
SRC_URI[sha256sum] = "c844dc180e43901359bbdb4f797ab178b3821fbf63bdee9577e5a0afe5d7f6ad"
S = "${WORKDIR}/dri-xorg-graphic-imx-viv-${PV}"
-PR = "r2"
+PR = "r3"
inherit fsl-eula-unpack autotools pkgconfig
--
1.7.9.5
More information about the meta-freescale
mailing list