From: Otavio Salvador Date: Fri, 15 Mar 2013 22:31:38 +0000 (-0300) Subject: xf86-video-imxfb-vivante: Revert patch to update to newer Xorg Video API X-Git-Tag: 2.1~1451 X-Git-Url: https://code.ossystems.io/gitweb?a=commitdiff_plain;h=e533f4806815ce648f2dce99117b74cb6986dfe7;p=meta-freescale.git xf86-video-imxfb-vivante: Revert patch to update to newer Xorg Video API As we're adding a Xorg backport we don't need to patch the driver code to support newer Xorg Video API. Change-Id: I268613a4123525db4d13964431bab41bc2b042f8 Signed-off-by: Otavio Salvador --- diff --git a/meta-fsl-arm/recipes-graphics/xorg-driver/xf86-video-imxfb-vivante/fix-vivante-compile.patch b/meta-fsl-arm/recipes-graphics/xorg-driver/xf86-video-imxfb-vivante/fix-vivante-compile.patch deleted file mode 100644 index bdbd2ebf..00000000 --- a/meta-fsl-arm/recipes-graphics/xorg-driver/xf86-video-imxfb-vivante/fix-vivante-compile.patch +++ /dev/null @@ -1,373 +0,0 @@ -This patch handles changes in the X server API which appeared in version 1.13 -The changes should be backwards compatible so this driver still works in earlier -versions of the X server. - -Upstream-Status: Pending - -Index: xserver-xorg-video-imx-viv-1.1.0/src/vivante_fbdev/vivante_dri.h -=================================================================== ---- xserver-xorg-video-imx-viv-1.1.0.orig/src/vivante_fbdev/vivante_dri.h -+++ xserver-xorg-video-imx-viv-1.1.0/src/vivante_fbdev/vivante_dri.h -@@ -67,7 +67,7 @@ typedef struct _vvtDeviceInfoRec { - } vvtDeviceInfo; - - Bool VivDRIScreenInit(ScreenPtr pScreen); --void VivDRICloseScreen(ScreenPtr pScreen); -+void VivDRICloseScreen(CLOSE_SCREEN_ARGS_DECL); - Bool VivDRIFinishScreenInit(ScreenPtr pScreen); - - #endif /* _VIVANTE_DRI_H_ */ -Index: xserver-xorg-video-imx-viv-1.1.0/src/vivante_fbdev/vivante_fbdev_driver.c -=================================================================== ---- xserver-xorg-video-imx-viv-1.1.0.orig/src/vivante_fbdev/vivante_fbdev_driver.c -+++ xserver-xorg-video-imx-viv-1.1.0/src/vivante_fbdev/vivante_fbdev_driver.c -@@ -53,9 +53,8 @@ static const OptionInfoRec *VivAvailable - static void VivIdentify(int flags); - static Bool VivProbe(DriverPtr drv, int flags); - static Bool VivPreInit(ScrnInfoPtr pScrn, int flags); --static Bool VivScreenInit(int Index, ScreenPtr pScreen, int argc, -- char **argv); --static Bool VivCloseScreen(int scrnIndex, ScreenPtr pScreen); -+static Bool VivScreenInit(SCREEN_INIT_ARGS_DECL); -+static Bool VivCloseScreen(CLOSE_SCREEN_ARGS_DECL); - static Bool VivDriverFunc(ScrnInfoPtr pScrn, xorgDriverFuncOp op, - pointer ptr); - -@@ -175,7 +174,7 @@ VivSetup(pointer module, pointer opts, i - - static Bool InitExaLayer(ScreenPtr pScreen) { - ExaDriverPtr pExa; -- ScrnInfoPtr pScrn = xf86Screens[pScreen->myNum]; -+ ScrnInfoPtr pScrn = xf86ScreenToScrn(pScreen); - VivPtr pViv = GET_VIV_PTR(pScrn); - - TRACE_ENTER(); -@@ -258,7 +257,7 @@ static Bool InitExaLayer(ScreenPtr pScre - } - - static Bool DestroyExaLayer(ScreenPtr pScreen) { -- ScrnInfoPtr pScrn = xf86Screens[pScreen->myNum]; -+ ScrnInfoPtr pScrn = xf86ScreenToScrn(pScreen); - VivPtr pViv = GET_VIV_PTR(pScrn); - TRACE_ENTER(); - xf86DrvMsg(pScreen->myNum, X_INFO, "Shutdown EXA\n"); -@@ -570,7 +569,7 @@ VivPreInit(ScrnInfoPtr pScrn, int flags) - static Bool - VivCreateScreenResources(ScreenPtr pScreen) { - PixmapPtr pPixmap; -- ScrnInfoPtr pScrn = xf86Screens[pScreen->myNum]; -+ ScrnInfoPtr pScrn = xf86ScreenToScrn(pScreen); - VivPtr fPtr = GET_VIV_PTR(pScrn); - Bool ret; - -@@ -592,8 +591,8 @@ VivCreateScreenResources(ScreenPtr pScre - } - - static Bool --VivScreenInit(int scrnIndex, ScreenPtr pScreen, int argc, char **argv) { -- ScrnInfoPtr pScrn = xf86Screens[pScreen->myNum]; -+VivScreenInit(SCREEN_INIT_ARGS_DECL) { -+ ScrnInfoPtr pScrn = xf86ScreenToScrn(pScreen); - VivPtr fPtr = GET_VIV_PTR(pScrn); - VisualPtr visual; - int init_picture = 0; -@@ -611,7 +610,7 @@ VivScreenInit(int scrnIndex, ScreenPtr p - - /*Mapping the Video memory*/ - if (NULL == (fPtr->mFB.mFBMemory = fbdevHWMapVidmem(pScrn))) { -- xf86DrvMsg(scrnIndex, X_ERROR, "mapping of video memory" -+ xf86DrvMsg(pScrn->scrnIndex, X_ERROR, "mapping of video memory" - " failed\n"); - TRACE_EXIT(FALSE); - } -@@ -626,17 +625,17 @@ VivScreenInit(int scrnIndex, ScreenPtr p - - /*Init the hardware in current mode*/ - if (!fbdevHWModeInit(pScrn, pScrn->currentMode)) { -- xf86DrvMsg(scrnIndex, X_ERROR, "mode initialization failed\n"); -+ xf86DrvMsg(pScrn->scrnIndex, X_ERROR, "mode initialization failed\n"); - TRACE_EXIT(FALSE); - } - fbdevHWSaveScreen(pScreen, SCREEN_SAVER_ON); -- fbdevHWAdjustFrame(scrnIndex, 0, 0, 0); -+ fbdevHWAdjustFrame(FBDEVHWADJUSTFRAME_ARGS(0, 0)); - - /* mi layer */ - miClearVisualTypes(); - if (pScrn->bitsPerPixel > 8) { - if (!miSetVisualTypes(pScrn->depth, TrueColorMask, pScrn->rgbBits, TrueColor)) { -- xf86DrvMsg(scrnIndex, X_ERROR, "visual type setup failed" -+ xf86DrvMsg(pScrn->scrnIndex, X_ERROR, "visual type setup failed" - " for %d bits per pixel [1]\n", - pScrn->bitsPerPixel); - TRACE_EXIT(FALSE); -@@ -645,14 +644,14 @@ VivScreenInit(int scrnIndex, ScreenPtr p - if (!miSetVisualTypes(pScrn->depth, - miGetDefaultVisualMask(pScrn->depth), - pScrn->rgbBits, pScrn->defaultVisual)) { -- xf86DrvMsg(scrnIndex, X_ERROR, "visual type setup failed" -+ xf86DrvMsg(pScrn->scrnIndex, X_ERROR, "visual type setup failed" - " for %d bits per pixel [2]\n", - pScrn->bitsPerPixel); - TRACE_EXIT(FALSE); - } - } - if (!miSetPixmapDepths()) { -- xf86DrvMsg(scrnIndex, X_ERROR, "pixmap depth setup failed\n"); -+ xf86DrvMsg(pScrn->scrnIndex, X_ERROR, "pixmap depth setup failed\n"); - return FALSE; - } - -@@ -660,14 +659,14 @@ VivScreenInit(int scrnIndex, ScreenPtr p - pScrn->displayWidth = fbdevHWGetLineLength(pScrn) / - (pScrn->bitsPerPixel / 8); - if (pScrn->displayWidth != pScrn->virtualX) { -- xf86DrvMsg(scrnIndex, X_INFO, -+ xf86DrvMsg(pScrn->scrnIndex, X_INFO, - "Pitch updated to %d after ModeInit\n", - pScrn->displayWidth); - } - /*Logical start address*/ - fPtr->mFB.mFBStart = fPtr->mFB.mFBMemory + fPtr->mFB.mFBOffset; - -- xf86DrvMsg(scrnIndex, X_INFO, -+ xf86DrvMsg(pScrn->scrnIndex, X_INFO, - "FB Start = %p FB Base = %p FB Offset = %p\n", - fPtr->mFB.mFBStart, fPtr->mFB.mFBMemory, fPtr->mFB.mFBOffset); - -@@ -684,7 +683,7 @@ VivScreenInit(int scrnIndex, ScreenPtr p - init_picture = 1; - break; - default: -- xf86DrvMsg(scrnIndex, X_ERROR, -+ xf86DrvMsg(pScrn->scrnIndex, X_ERROR, - "internal error: invalid number of bits per" - " pixel (%d) encountered in" - " VivScreenInit()\n", pScrn->bitsPerPixel); -@@ -716,7 +715,7 @@ VivScreenInit(int scrnIndex, ScreenPtr p - if (fPtr->mFakeExa.mUseExaFlag) { - TRACE_INFO("Loading EXA"); - if (!InitExaLayer(pScreen)) { -- xf86DrvMsg(scrnIndex, X_ERROR, -+ xf86DrvMsg(pScrn->scrnIndex, X_ERROR, - "internal error: initExaLayer failed " - "in VivScreenInit()\n"); - } -@@ -733,7 +732,7 @@ VivScreenInit(int scrnIndex, ScreenPtr p - - /* colormap */ - if (!miCreateDefColormap(pScreen)) { -- xf86DrvMsg(scrnIndex, X_ERROR, -+ xf86DrvMsg(pScrn->scrnIndex, X_ERROR, - "internal error: miCreateDefColormap failed " - "in VivScreenInit()\n"); - TRACE_EXIT(FALSE); -@@ -775,20 +774,20 @@ VivScreenInit(int scrnIndex, ScreenPtr p - } - - static Bool --VivCloseScreen(int scrnIndex, ScreenPtr pScreen) { -- ScrnInfoPtr pScrn = xf86Screens[scrnIndex]; -+VivCloseScreen(CLOSE_SCREEN_ARGS_DECL) { -+ CLOSE_SCREEN_DECL_ScrnInfoPtr; - VivPtr fPtr = GET_VIV_PTR(pScrn); - Bool ret = FALSE; - TRACE_ENTER(); - - #ifndef DISABLE_VIVANTE_DRI -- VivDRICloseScreen(pScreen); -+ VivDRICloseScreen(CLOSE_SCREEN_ARGS); - #endif - - if (fPtr->mFakeExa.mUseExaFlag) { - DEBUGP("UnLoading EXA"); - if (fPtr->mFakeExa.mIsInited && !DestroyExaLayer(pScreen)) { -- xf86DrvMsg(scrnIndex, X_ERROR, -+ xf86DrvMsg(pScrn->scrnIndex, X_ERROR, - "internal error: DestroyExaLayer failed " - "in VivCloseScreen()\n"); - } -@@ -801,7 +800,7 @@ VivCloseScreen(int scrnIndex, ScreenPtr - - pScreen->CreateScreenResources = fPtr->CreateScreenResources; - pScreen->CloseScreen = fPtr->CloseScreen; -- ret = (*pScreen->CloseScreen)(scrnIndex, pScreen); -+ ret = (*pScreen->CloseScreen)(CLOSE_SCREEN_ARGS); - TRACE_EXIT(ret); - } - -Index: xserver-xorg-video-imx-viv-1.1.0/src/vivante_util/compat-api.h -=================================================================== ---- /dev/null -+++ xserver-xorg-video-imx-viv-1.1.0/src/vivante_util/compat-api.h -@@ -0,0 +1,106 @@ -+/* -+ * Copyright 2012 Red Hat, Inc. -+ * -+ * Permission is hereby granted, free of charge, to any person obtaining a -+ * copy of this software and associated documentation files (the "Software"), -+ * to deal in the Software without restriction, including without limitation -+ * the rights to use, copy, modify, merge, publish, distribute, sublicense, -+ * and/or sell copies of the Software, and to permit persons to whom the -+ * Software is furnished to do so, subject to the following conditions: -+ * -+ * The above copyright notice and this permission notice (including the next -+ * paragraph) shall be included in all copies or substantial portions of the -+ * Software. -+ * -+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL -+ * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING -+ * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER -+ * DEALINGS IN THE SOFTWARE. -+ * -+ * Author: Dave Airlie -+ */ -+ -+/* this file provides API compat between server post 1.13 and pre it, -+ it should be reused inside as many drivers as possible */ -+#ifndef COMPAT_API_H -+#define COMPAT_API_H -+ -+#ifndef GLYPH_HAS_GLYPH_PICTURE_ACCESSOR -+#define GetGlyphPicture(g, s) GlyphPicture((g))[(s)->myNum] -+#define SetGlyphPicture(g, s, p) GlyphPicture((g))[(s)->myNum] = p -+#endif -+ -+#ifndef XF86_HAS_SCRN_CONV -+#define xf86ScreenToScrn(s) xf86Screens[(s)->myNum] -+#define xf86ScrnToScreen(s) screenInfo.screens[(s)->scrnIndex] -+#endif -+ -+#ifndef XF86_SCRN_INTERFACE -+ -+#define SCRN_ARG_TYPE int -+#define SCRN_INFO_PTR(arg1) ScrnInfoPtr pScrn = xf86Screens[(arg1)] -+ -+#define SCREEN_ARG_TYPE int -+#define SCREEN_PTR(arg1) ScreenPtr pScreen = screenInfo.screens[(arg1)] -+ -+#define SCREEN_INIT_ARGS_DECL int index, ScreenPtr pScreen, int argc, char **argv -+ -+#define BLOCKHANDLER_ARGS_DECL int arg, pointer blockData, pointer pTimeout, pointer pReadmask -+#define BLOCKHANDLER_ARGS arg, blockData, pTimeout, pReadmask -+ -+#define CLOSE_SCREEN_ARGS_DECL int scrnIndex, ScreenPtr pScreen -+#define CLOSE_SCREEN_ARGS scrnIndex, pScreen -+#define CLOSE_SCREEN_DECL_ScrnInfoPtr ScrnInfoPtr pScrn = xf86Screens[scrnIndex]; -+ -+#define FBDEVHWADJUSTFRAME_ARGS(x, y) scrnIndex, (x), (y), 0 -+ -+#define ADJUST_FRAME_ARGS_DECL int arg, int x, int y, int flags -+ -+#define SWITCH_MODE_ARGS_DECL int arg, DisplayModePtr mode, int flags -+ -+#define FREE_SCREEN_ARGS_DECL int arg, int flags -+#define FREE_SCREEN_ARGS(x) (x)->scrnIndex, 0 -+ -+#define VT_FUNC_ARGS_DECL int arg, int flags -+#define VT_FUNC_ARGS(flags) pScrn->scrnIndex, (flags) -+ -+#define ENABLE_DISABLE_FB_ACCESS_ARGS(pScrn, b) pScrn->scrnIndex, b -+ -+#define XF86_ENABLEDISABLEFB_ARG(x) ((x)->scrnIndex) -+#else -+#define SCRN_ARG_TYPE ScrnInfoPtr -+#define SCRN_INFO_PTR(arg1) ScrnInfoPtr pScrn = (arg1) -+ -+#define SCREEN_ARG_TYPE ScreenPtr -+#define SCREEN_PTR(arg1) ScreenPtr pScreen = (arg1) -+ -+#define SCREEN_INIT_ARGS_DECL ScreenPtr pScreen, int argc, char **argv -+ -+#define BLOCKHANDLER_ARGS_DECL ScreenPtr arg, pointer pTimeout, pointer pReadmask -+#define BLOCKHANDLER_ARGS arg, pTimeout, pReadmask -+ -+#define CLOSE_SCREEN_ARGS_DECL ScreenPtr pScreen -+#define CLOSE_SCREEN_ARGS pScreen -+#define CLOSE_SCREEN_DECL_ScrnInfoPtr ScrnInfoPtr pScrn = xf86Screens[pScreen->myNum]; -+ -+#define FBDEVHWADJUSTFRAME_ARGS(x, y) pScrn, (x), (y) -+ -+#define ADJUST_FRAME_ARGS_DECL ScrnInfoPtr arg, int x, int y -+#define SWITCH_MODE_ARGS_DECL ScrnInfoPtr arg, DisplayModePtr mode -+ -+#define FREE_SCREEN_ARGS_DECL ScrnInfoPtr arg -+#define FREE_SCREEN_ARGS(x) (x) -+ -+#define VT_FUNC_ARGS_DECL ScrnInfoPtr arg -+#define VT_FUNC_ARGS(flags) pScrn -+ -+#define ENABLE_DISABLE_FB_ACCESS_ARGS(pScrn, b) pScrn, b -+ -+#define XF86_ENABLEDISABLEFB_ARG(x) (x) -+ -+#endif -+ -+#endif -Index: xserver-xorg-video-imx-viv-1.1.0/src/vivante_util/vivante_common.h -=================================================================== ---- xserver-xorg-video-imx-viv-1.1.0.orig/src/vivante_util/vivante_common.h -+++ xserver-xorg-video-imx-viv-1.1.0/src/vivante_util/vivante_common.h -@@ -69,6 +69,9 @@ extern "C" { - #include "xf86Crtc.h" - #include "cursorstr.h" - -+ /* System API compatability */ -+#include "compat-api.h" -+ - /*Debug*/ - #include "vivante_debug.h" - -Index: xserver-xorg-video-imx-viv-1.1.0/src/vivante_fbdev/vivante.h -=================================================================== ---- xserver-xorg-video-imx-viv-1.1.0.orig/src/vivante_fbdev/vivante.h -+++ xserver-xorg-video-imx-viv-1.1.0/src/vivante_fbdev/vivante.h -@@ -92,11 +92,11 @@ extern "C" { - #define GET_VIV_PTR(p) ((VivPtr)((p)->driverPrivate)) - - #define VIVPTR_FROM_PIXMAP(x) \ -- GET_VIV_PTR(xf86Screens[(x)->drawable.pScreen->myNum]) -+ GET_VIV_PTR(xf86ScreenToScrn((x)->drawable.pScreen)) - #define VIVPTR_FROM_SCREEN(x) \ -- GET_VIV_PTR(xf86Screens[(x)->myNum]) -+ GET_VIV_PTR(xf86ScreenToScrn((x))) - #define VIVPTR_FROM_PICTURE(x) \ -- GET_VIV_PTR(xf86Screens[(x)->pDrawable->pScreen->myNum]) -+ GET_VIV_PTR(xf86ScreenToScrn((x)->pDrawable->pScreen)) - - /******************************************************************************** - * -Index: xserver-xorg-video-imx-viv-1.1.0/src/vivante_fbdev/vivante_dri.c -=================================================================== ---- xserver-xorg-video-imx-viv-1.1.0.orig/src/vivante_fbdev/vivante_dri.c -+++ xserver-xorg-video-imx-viv-1.1.0/src/vivante_fbdev/vivante_dri.c -@@ -51,7 +51,7 @@ VivDestroyContext(ScreenPtr pScreen, drm - - Bool - VivDRIFinishScreenInit(ScreenPtr pScreen) { -- ScrnInfoPtr pScrn = xf86Screens[pScreen->myNum]; -+ ScrnInfoPtr pScrn = xf86ScreenToScrn(pScreen); - VivPtr pViv = GET_VIV_PTR(pScrn); - DRIInfoPtr pDRIInfo = (DRIInfoPtr) pViv->pDRIInfo; - -@@ -81,7 +81,7 @@ VivDRIMoveBuffers(WindowPtr pParent, DDX - } - - Bool VivDRIScreenInit(ScreenPtr pScreen) { -- ScrnInfoPtr pScrn = xf86Screens[pScreen->myNum]; -+ ScrnInfoPtr pScrn = xf86ScreenToScrn(pScreen); - DRIInfoPtr pDRIInfo; - VivPtr pViv = GET_VIV_PTR(pScrn); - -@@ -187,7 +187,7 @@ Bool VivDRIScreenInit(ScreenPtr pScreen) - } - - void VivDRICloseScreen(ScreenPtr pScreen) { -- ScrnInfoPtr pScrn = xf86Screens[pScreen->myNum]; -+ ScrnInfoPtr pScrn = xf86ScreenToScrn(pScreen); - VivPtr pViv = GET_VIV_PTR(pScrn); - - if (pViv->pDRIInfo) { diff --git a/meta-fsl-arm/recipes-graphics/xorg-driver/xf86-video-imxfb-vivante/remove-mibstore.patch b/meta-fsl-arm/recipes-graphics/xorg-driver/xf86-video-imxfb-vivante/remove-mibstore.patch deleted file mode 100644 index 1bdfaf9d..00000000 --- a/meta-fsl-arm/recipes-graphics/xorg-driver/xf86-video-imxfb-vivante/remove-mibstore.patch +++ /dev/null @@ -1,36 +0,0 @@ -mibstore functions are no longer supported in the X server. -This patch removes them from this driver, following the pattern in - http://patches.openembedded.org/patch/46133/ - -This checkin shows when/where the changes to the X server were made -that deleted the header mibstore.h and mentions the reasons. - http://lists.x.org/archives/xorg-devel/2012-September/033575.html - -Upstream-Status: Pending -Signed-off-by: Gary Thomas --- - -Index: xserver-xorg-video-imx-viv-12.09.01/src/vivante_util/vivante_common.h -=================================================================== ---- xserver-xorg-video-imx-viv-12.09.01.orig/src/vivante_util/vivante_common.h -+++ xserver-xorg-video-imx-viv-12.09.01/src/vivante_util/vivante_common.h -@@ -48,7 +48,6 @@ extern "C" { - - - #include "mipointer.h" --#include "mibstore.h" - #include "micmap.h" - #include "mipointrst.h" - #include "inputstr.h" -Index: xserver-xorg-video-imx-viv-12.09.01/src/vivante_fbdev/vivante_fbdev_driver.c -=================================================================== ---- xserver-xorg-video-imx-viv-12.09.01.orig/src/vivante_fbdev/vivante_fbdev_driver.c -+++ xserver-xorg-video-imx-viv-12.09.01/src/vivante_fbdev/vivante_fbdev_driver.c -@@ -746,7 +746,6 @@ VivScreenInit(SCREEN_INIT_ARGS_DECL) { - - - xf86SetBlackWhitePixels(pScreen); -- miInitializeBackingStore(pScreen); - xf86SetBackingStore(pScreen); - - pScrn->vtSema = TRUE; diff --git a/meta-fsl-arm/recipes-graphics/xorg-driver/xf86-video-imxfb-vivante_1.1.0.bb b/meta-fsl-arm/recipes-graphics/xorg-driver/xf86-video-imxfb-vivante_1.1.0.bb index 1ebe333d..28491c9d 100644 --- a/meta-fsl-arm/recipes-graphics/xorg-driver/xf86-video-imxfb-vivante_1.1.0.bb +++ b/meta-fsl-arm/recipes-graphics/xorg-driver/xf86-video-imxfb-vivante_1.1.0.bb @@ -5,15 +5,13 @@ require recipes-graphics/xorg-driver/xorg-driver-video.inc PE = "3" -PR = "${INC_PR}.0" +PR = "${INC_PR}.2" DEPENDS += "virtual/libx11 virtual/libgal-x11 gpu-viv-bin-mx6q" LIC_FILES_CHKSUM = "file://src/vivante_fbdev/vivante.h;endline=19;md5=93a322f91ec495569dcbcfbb2a95454a" SRC_URI = "${FSL_MIRROR}/xserver-xorg-video-imx-viv-${PV}.tar.gz \ - file://fix-vivante-compile.patch \ - file://remove-mibstore.patch \ file://Makefile.am-remove-prefixed-include-path.patch" SRC_URI[md5sum] = "d872365c046738628a7016343ffdb79a" SRC_URI[sha256sum] = "d53216d5f9e3f7803983ac1577d83985dfda33145e4711300f4ad5cbbe28e32d" @@ -38,7 +36,16 @@ do_install_append () { find ${D}${includedir} -type f -exec chmod 660 {} \; } -RDEPENDS_${PN} += "xserver-xorg-module-exa" +RDEPENDS_${PN} += "xserver-xorg-module-exa xf86-dri-vivante" + +# Add the ABI dependency at package generation time, as otherwise bitbake will +# attempt to find a provider for it (and fail) when it does the parse. +# +# This version *must* be kept correct. +python populate_packages_prepend() { + pn = d.getVar("PN", True) + d.appendVar("RDEPENDS_" + pn, " xorg-abi-video-11") +} PACKAGE_ARCH = "${MACHINE_ARCH}" COMPATIBLE_MACHINE = "(mx6)"