diff options
2 files changed, 84 insertions, 1 deletions
diff --git a/meta-fsl-arm/recipes-graphics/xorg-driver/xf86-video-imxfb-vivante/ENGR00333447-Fix-EXA-driver-for-Xserver-1.16.patch b/meta-fsl-arm/recipes-graphics/xorg-driver/xf86-video-imxfb-vivante/ENGR00333447-Fix-EXA-driver-for-Xserver-1.16.patch new file mode 100644 index 000000000..0010123a2 --- /dev/null +++ b/meta-fsl-arm/recipes-graphics/xorg-driver/xf86-video-imxfb-vivante/ENGR00333447-Fix-EXA-driver-for-Xserver-1.16.patch | |||
| @@ -0,0 +1,82 @@ | |||
| 1 | From 1bfebbaf840d987aa0e5d4143b6658bad5a21a0b Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Prabhu Sundararaj <prabhu.sundararaj@freescale.com> | ||
| 3 | Date: Tue, 30 Sep 2014 12:09:54 -0500 | ||
| 4 | Subject: [PATCH] ENGR00333447 : Fix EXA driver for Xserver 1.16 | ||
| 5 | |||
| 6 | Fix const char error occurs with Xserver 1.16 and loadextension change | ||
| 7 | |||
| 8 | Upstream-Status: Pending | ||
| 9 | |||
| 10 | Signed-off-by: Prabhu Sundararaj <prabhu.sundararaj@freescale.com> | ||
| 11 | --- | ||
| 12 | EXA/src/vivante_fbdev/imx_display.c | 2 +- | ||
| 13 | EXA/src/vivante_fbdev/vivante_fbdev_driver.c | 18 +++++++++++++++--- | ||
| 14 | 2 files changed, 16 insertions(+), 4 deletions(-) | ||
| 15 | |||
| 16 | diff --git a/EXA/src/vivante_fbdev/imx_display.c b/EXA/src/vivante_fbdev/imx_display.c | ||
| 17 | index 94f561a..d5303f9 100644 | ||
| 18 | --- a/EXA/src/vivante_fbdev/imx_display.c | ||
| 19 | +++ b/EXA/src/vivante_fbdev/imx_display.c | ||
| 20 | @@ -956,7 +956,7 @@ imxDisplayDeleteModes(DisplayModePtr modesList) | ||
| 21 | } | ||
| 22 | |||
| 23 | if (NULL != mode->name) { | ||
| 24 | - free(mode->name); | ||
| 25 | + free((char*)mode->name); | ||
| 26 | } | ||
| 27 | free(mode); | ||
| 28 | } | ||
| 29 | diff --git a/EXA/src/vivante_fbdev/vivante_fbdev_driver.c b/EXA/src/vivante_fbdev/vivante_fbdev_driver.c | ||
| 30 | index 63996b1..3e289ce 100644 | ||
| 31 | --- a/EXA/src/vivante_fbdev/vivante_fbdev_driver.c | ||
| 32 | +++ b/EXA/src/vivante_fbdev/vivante_fbdev_driver.c | ||
| 33 | @@ -120,8 +120,9 @@ static Bool tearingWrapSurfaces(ScrnInfoPtr pScrn); | ||
| 34 | |||
| 35 | static Bool noVIVExtension; | ||
| 36 | |||
| 37 | -static ExtensionModule VIVExt = | ||
| 38 | +static ExtensionModule VIVExt[] = | ||
| 39 | { | ||
| 40 | + { | ||
| 41 | VIVExtensionInit, | ||
| 42 | VIVEXTNAME, | ||
| 43 | &noVIVExtension | ||
| 44 | @@ -130,6 +131,7 @@ static ExtensionModule VIVExt = | ||
| 45 | NULL, | ||
| 46 | NULL | ||
| 47 | #endif | ||
| 48 | + } | ||
| 49 | }; | ||
| 50 | |||
| 51 | Bool vivEnableCacheMemory = TRUE; | ||
| 52 | @@ -266,7 +268,17 @@ FBDevSetup(pointer module, pointer opts, int *errmaj, int *errmin) | ||
| 53 | setupDone = TRUE; | ||
| 54 | xf86AddDriver(&FBDEV, module, HaveDriverFuncs); | ||
| 55 | if(gVivFb) | ||
| 56 | - LoadExtension(&VIVExt, FALSE); | ||
| 57 | + { | ||
| 58 | +#if XORG_VERSION_CURRENT < (((1) * 10000000) + ((16) * 100000) + ((0) * 1000) + 0) | ||
| 59 | + int i; | ||
| 60 | + for(i=0; i<ARRAY_SIZE(VIVExt); i++) | ||
| 61 | + LoadExtension(&VIVExt[i], FALSE); | ||
| 62 | + | ||
| 63 | +#else | ||
| 64 | + LoadExtensionList(VIVExt, 1, FALSE); | ||
| 65 | +#endif | ||
| 66 | + } | ||
| 67 | + | ||
| 68 | return (pointer)1; | ||
| 69 | } else { | ||
| 70 | if (errmaj) *errmaj = LDR_ONCEONLY; | ||
| 71 | @@ -1638,7 +1650,7 @@ RestoreSyncFlags(ScrnInfoPtr pScrn) | ||
| 72 | char *modeName = "current"; | ||
| 73 | unsigned int fbSync = 0; | ||
| 74 | if(pScrn->currentMode) | ||
| 75 | - modeName = pScrn->currentMode->name; | ||
| 76 | + modeName = (char*)pScrn->currentMode->name; | ||
| 77 | |||
| 78 | if(!imxLoadSyncFlags(pScrn, modeName, &fbSync)) { | ||
| 79 | xf86DrvMsg(pScrn->scrnIndex, X_WARNING, | ||
| 80 | -- | ||
| 81 | 2.1.1 | ||
| 82 | |||
diff --git a/meta-fsl-arm/recipes-graphics/xorg-driver/xf86-video-imxfb-vivante_3.10.31-1.1.0.bb b/meta-fsl-arm/recipes-graphics/xorg-driver/xf86-video-imxfb-vivante_3.10.31-1.1.0.bb index 0d6bb0beb..9fc41cd7f 100644 --- a/meta-fsl-arm/recipes-graphics/xorg-driver/xf86-video-imxfb-vivante_3.10.31-1.1.0.bb +++ b/meta-fsl-arm/recipes-graphics/xorg-driver/xf86-video-imxfb-vivante_3.10.31-1.1.0.bb | |||
| @@ -12,7 +12,8 @@ DEPENDS += "virtual/xserver virtual/libx11 virtual/libgal-x11 gpu-viv-bin-mx6q p | |||
| 12 | 12 | ||
| 13 | LIC_FILES_CHKSUM = "file://EXA/src/vivante_fbdev/vivante.h;endline=19;md5=95cf961a2ceacdf7cf43caef25766779" | 13 | LIC_FILES_CHKSUM = "file://EXA/src/vivante_fbdev/vivante.h;endline=19;md5=95cf961a2ceacdf7cf43caef25766779" |
| 14 | 14 | ||
| 15 | SRC_URI = "${FSL_MIRROR}/xserver-xorg-video-imx-viv-${PV}-beta.tar.gz" | 15 | SRC_URI = "${FSL_MIRROR}/xserver-xorg-video-imx-viv-${PV}-beta.tar.gz \ |
| 16 | file://ENGR00333447-Fix-EXA-driver-for-Xserver-1.16.patch" | ||
| 16 | SRC_URI[md5sum] = "5695e9a3ddc37da0e783862e4108fbae" | 17 | SRC_URI[md5sum] = "5695e9a3ddc37da0e783862e4108fbae" |
| 17 | SRC_URI[sha256sum] = "c08def7fb98c11cba08bc21522bfb2785576b77db4b36954b15926401ac31c0e" | 18 | SRC_URI[sha256sum] = "c08def7fb98c11cba08bc21522bfb2785576b77db4b36954b15926401ac31c0e" |
| 18 | 19 | ||
