[oe-commits] Koen Kooi : xf86-video-s3c64xx: add accelerated (XAA + Xv) driver for s3c64xx SoCs

git version control git at git.openembedded.org
Sat Apr 17 11:59:21 UTC 2010


Module: openembedded.git
Branch: org.openembedded.dev
Commit: 597e86c28ebd92f673d31c627ca54ceecf4f07a5
URL:    http://gitweb.openembedded.net/?p=openembedded.git&a=commit;h=597e86c28ebd92f673d31c627ca54ceecf4f07a5

Author: Koen Kooi <koen at openembedded.org>
Date:   Sat Apr 17 11:01:04 2010 +0200

xf86-video-s3c64xx: add accelerated (XAA + Xv) driver for s3c64xx SoCs

---

 ...64xx-update-for-resources-RAC-API-removal.patch |   54 ++++++++++++++++++++
 ...-was-split-into-dpms.h-client-and-dpmscon.patch |   45 ++++++++++++++++
 ...-include-cursorstr.h-to-get-CursorRec-and.patch |   25 +++++++++
 recipes/xorg-driver/xf86-video-s3c64xx_git.bb      |   20 +++++++
 4 files changed, 144 insertions(+), 0 deletions(-)

diff --git a/recipes/xorg-driver/xf86-video-s3c64xx/0001-s3c64xx-update-for-resources-RAC-API-removal.patch b/recipes/xorg-driver/xf86-video-s3c64xx/0001-s3c64xx-update-for-resources-RAC-API-removal.patch
new file mode 100644
index 0000000..638de08
--- /dev/null
+++ b/recipes/xorg-driver/xf86-video-s3c64xx/0001-s3c64xx-update-for-resources-RAC-API-removal.patch
@@ -0,0 +1,54 @@
+From d09a6fb491439814f5b746d0e749e956f6563a80 Mon Sep 17 00:00:00 2001
+From: Koen Kooi <koen at dominion.thruhere.net>
+Date: Sat, 17 Apr 2010 10:46:10 +0200
+Subject: [PATCH 1/3] s3c64xx: update for resources/RAC API removal
+
+---
+ src/s3c64xx_driver.c |    4 ++++
+ src/s3c64xx_xaa.c    |    2 ++
+ 2 files changed, 6 insertions(+), 0 deletions(-)
+
+diff --git a/src/s3c64xx_driver.c b/src/s3c64xx_driver.c
+index 4455b14..f31776b 100644
+--- a/src/s3c64xx_driver.c
++++ b/src/s3c64xx_driver.c
+@@ -59,8 +59,10 @@
+ #include "xf86cmap.h"
+ #include "dgaproc.h"
+ 
++#ifndef XSERVER_LIBPCIACCESS
+ #include "xf86Resources.h"
+ #include "xf86RAC.h"
++#endif
+ 
+ /* RandR rotate */
+ #include "X11/extensions/randr.h"
+@@ -420,9 +422,11 @@ S3CDevPreInit(ScrnInfoPtr pScrn, int flags)
+ 
+    pS3CDEV->pEnt = xf86GetEntityInfo(pScrn->entityList[0]);
+ 
++#ifndef XSERVER_LIBPCIACCESS
+    pScrn->racMemFlags = RAC_FB | RAC_COLORMAP | RAC_CURSOR | RAC_VIEWPORT;
+    /* XXX Is this right?  Can probably remove RAC_FB */
+    pScrn->racIoFlags = RAC_FB | RAC_COLORMAP | RAC_CURSOR | RAC_VIEWPORT;
++#endif
+ 
+    /* open device */
+    if (!fbdevHWInit(pScrn,NULL,xf86FindOptionValue(pS3CDEV->pEnt->device->options,"s3c64xx")))
+diff --git a/src/s3c64xx_xaa.c b/src/s3c64xx_xaa.c
+index 16cb476..e62c37c 100644
+--- a/src/s3c64xx_xaa.c
++++ b/src/s3c64xx_xaa.c
+@@ -57,7 +57,9 @@
+ #include "xaa.h"
+ #include "xaarop.h"
+ 
++#ifndef XSERVER_LIBPCIACCESS
+ #include "xf86Resources.h"
++#endif
+ 
+ /*
+ ** suspend/resume fails unless you have a correctly restoring register state
+-- 
+1.6.6.1
+
diff --git a/recipes/xorg-driver/xf86-video-s3c64xx/0002-DPMS-header-was-split-into-dpms.h-client-and-dpmscon.patch b/recipes/xorg-driver/xf86-video-s3c64xx/0002-DPMS-header-was-split-into-dpms.h-client-and-dpmscon.patch
new file mode 100644
index 0000000..bcd24e8
--- /dev/null
+++ b/recipes/xorg-driver/xf86-video-s3c64xx/0002-DPMS-header-was-split-into-dpms.h-client-and-dpmscon.patch
@@ -0,0 +1,45 @@
+From 1311ff65283ed306bcac4b4b971e02144d65da6b Mon Sep 17 00:00:00 2001
+From: Koen Kooi <koen at dominion.thruhere.net>
+Date: Sat, 17 Apr 2010 10:50:38 +0200
+Subject: [PATCH 2/3] DPMS header was split into dpms.h (client) and dpmsconst.h (server). Drivers need to include dpmsconst.h if xextproto 7.1 is available.
+
+---
+ configure.ac      |    4 ++++
+ src/s3c64xx_lcd.c |    4 ++++
+ 2 files changed, 8 insertions(+), 0 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index c69218f..a9ec2f0 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -58,6 +58,10 @@ XORG_DRIVER_CHECK_EXT(XV, videoproto)
+ # Checks for pkg-config packages
+ PKG_CHECK_MODULES(XORG, [xorg-server >= 1.0.99.901 xproto fontsproto $REQUIRED_MODULES])
+ sdkdir=$(pkg-config --variable=sdkdir xorg-server)
++PKG_CHECK_MODULES(XEXT, [xextproto >= 7.0.99.1],
++                  HAVE_XEXTPROTO_71="yes"; AC_DEFINE(HAVE_XEXTPROTO_71, 1, [xextproto 7.1 available]),
++                  HAVE_XEXTPROTO_71="no")
++AM_CONDITIONAL(HAVE_XEXTPROTO_71, [ test "$HAVE_XEXTPROTO_71" = "yes" ])
+ 
+ AM_CONDITIONAL(PCIACCESS, [test "x$PCIACCESS" = xyes])
+ if test "x$PCIACCESS" = xyes; then
+diff --git a/src/s3c64xx_lcd.c b/src/s3c64xx_lcd.c
+index 5200f60..02627ae 100644
+--- a/src/s3c64xx_lcd.c
++++ b/src/s3c64xx_lcd.c
+@@ -53,8 +53,12 @@
+ 
+ #include "s3c64xx.h" 
+ 
++#ifdef HAVE_XEXTPROTO_71
++#include <X11/extensions/dpmsconst.h>
++#else
+ #define DPMS_SERVER
+ #include "X11/extensions/dpms.h"
++#endif
+ 
+ enum OutputTypes  {
+    S3C_OUTPUT_LCD,
+-- 
+1.6.6.1
+
diff --git a/recipes/xorg-driver/xf86-video-s3c64xx/0003-s3c64xx-lcd-include-cursorstr.h-to-get-CursorRec-and.patch b/recipes/xorg-driver/xf86-video-s3c64xx/0003-s3c64xx-lcd-include-cursorstr.h-to-get-CursorRec-and.patch
new file mode 100644
index 0000000..f8bb33d
--- /dev/null
+++ b/recipes/xorg-driver/xf86-video-s3c64xx/0003-s3c64xx-lcd-include-cursorstr.h-to-get-CursorRec-and.patch
@@ -0,0 +1,25 @@
+From d004fb3e90acffdf800f3d07642fac364dd20f2d Mon Sep 17 00:00:00 2001
+From: Koen Kooi <koen at dominion.thruhere.net>
+Date: Sat, 17 Apr 2010 10:55:47 +0200
+Subject: [PATCH 3/3] s3c64xx lcd: include "cursorstr.h to get CursorRec and AllocCursorARGB definitions
+
+---
+ src/s3c64xx_lcd.c |    2 ++
+ 1 files changed, 2 insertions(+), 0 deletions(-)
+
+diff --git a/src/s3c64xx_lcd.c b/src/s3c64xx_lcd.c
+index 02627ae..3005d2e 100644
+--- a/src/s3c64xx_lcd.c
++++ b/src/s3c64xx_lcd.c
+@@ -60,6 +60,8 @@
+ #include "X11/extensions/dpms.h"
+ #endif
+ 
++#include "cursorstr.h"
++
+ enum OutputTypes  {
+    S3C_OUTPUT_LCD,
+    S3C_OUTPUT_TV,  /* add another Output if TV out is desired */
+-- 
+1.6.6.1
+
diff --git a/recipes/xorg-driver/xf86-video-s3c64xx_git.bb b/recipes/xorg-driver/xf86-video-s3c64xx_git.bb
new file mode 100644
index 0000000..934c219
--- /dev/null
+++ b/recipes/xorg-driver/xf86-video-s3c64xx_git.bb
@@ -0,0 +1,20 @@
+require xorg-driver-video.inc
+
+PR_append = "a"
+
+DESCRIPTION = "X.Org X server -- driver for the Samsung s3c64xx SoC family"
+
+SRCREV = "79c2402ba26e57f4c9fd27f75f8a0324c72c13be"
+PV = "0.0.2+${PR}+gitr${SRCREV}"
+
+SRC_URI = "git://git.gitorious.org/xf86-video-s3c64xx/xf86-video-s3c64xx.git;protocol=http \
+           file://0001-s3c64xx-update-for-resources-RAC-API-removal.patch;patch=1 \
+           file://0002-DPMS-header-was-split-into-dpms.h-client-and-dpmscon.patch;patch=1 \
+           file://0003-s3c64xx-lcd-include-cursorstr.h-to-get-CursorRec-and.patch;patch=1 \
+          "
+
+S = "${WORKDIR}/git"
+
+CFLAGS += " -I${STAGING_INCDIR}/xorg "
+
+





More information about the Openembedded-commits mailing list