aboutsummaryrefslogtreecommitdiffstats
path: root/meta-crownbay/recipes-graphics
diff options
context:
space:
mode:
authorTom Zanussi <tom.zanussi@intel.com>2010-12-13 22:40:15 -0600
committerSaul Wold <sgw@linux.intel.com>2011-01-03 16:45:27 -0800
commit7059fe6442b0cf480261fbcdea3e5ba404afef27 (patch)
tree229efc2453e72560d5d89551753d388f36fb2c61 /meta-crownbay/recipes-graphics
parentc14f24a2e9aebaaf2edb005f9480b395a8618acf (diff)
downloadmeta-intel-7059fe6442b0cf480261fbcdea3e5ba404afef27.tar.gz
meta-intel-7059fe6442b0cf480261fbcdea3e5ba404afef27.tar.bz2
meta-intel-7059fe6442b0cf480261fbcdea3e5ba404afef27.zip
meta-crownbay: new layer for E6xx/EG20T systems
This layer provides support for Tunnel Creek + Topcliff Intel systems to laverne (0.90). It supports the E6xx embedded on-chip graphics via the Intel Embedded Media and Graphics Driver (EMGD) 1.5 Gold Driver. The EMGD and EG20T PCH kernel drivers are of course GPL'ed and are submitted in a separate patchset for the 2.6.34 yocto kernel. The userspace X drivers and supporting libraries however are closed and need to be manually copied into the layer before building. The details on how to do this can be found in the README doc in meta-crownbay/. Signed-off-by: Tom Zanussi <tom.zanussi@intel.com>
Diffstat (limited to 'meta-crownbay/recipes-graphics')
-rw-r--r--meta-crownbay/recipes-graphics/xorg-xserver/xserver-xf86-config/crownbay/xorg.conf47
-rw-r--r--meta-crownbay/recipes-graphics/xorg-xserver/xserver-xf86-config_0.1.bbappend3
-rw-r--r--meta-crownbay/recipes-graphics/xorg-xserver/xserver-xf86-emgd-bin/.gitignore0
-rw-r--r--meta-crownbay/recipes-graphics/xorg-xserver/xserver-xf86-emgd-bin_1.7.99.2.bb90
-rw-r--r--meta-crownbay/recipes-graphics/xorg-xserver/xserver-xf86-emgd/crosscompile.patch19
-rw-r--r--meta-crownbay/recipes-graphics/xorg-xserver/xserver-xf86-emgd/fix_open_max_preprocessor_error.patch13
-rw-r--r--meta-crownbay/recipes-graphics/xorg-xserver/xserver-xf86-emgd/macro_tweak.patch18
-rw-r--r--meta-crownbay/recipes-graphics/xorg-xserver/xserver-xf86-emgd/nodolt.patch12
-rw-r--r--meta-crownbay/recipes-graphics/xorg-xserver/xserver-xf86-emgd_1.7.99.2.bb25
9 files changed, 227 insertions, 0 deletions
diff --git a/meta-crownbay/recipes-graphics/xorg-xserver/xserver-xf86-config/crownbay/xorg.conf b/meta-crownbay/recipes-graphics/xorg-xserver/xserver-xf86-config/crownbay/xorg.conf
new file mode 100644
index 00000000..f78a538a
--- /dev/null
+++ b/meta-crownbay/recipes-graphics/xorg-xserver/xserver-xf86-config/crownbay/xorg.conf
@@ -0,0 +1,47 @@
+##
+## X Config options generated from CED
+## x11 conf skeleton
+## DriverVer=
+##
+
+Section "Screen"
+ Identifier "Screen0"
+ Device "IntelEMGD-0"
+ Monitor "Monitor0"
+ SubSection "Display"
+ EndSubSection
+EndSection
+
+# Primary (First/only) display
+Section "Device"
+ Identifier "IntelEMGD-0"
+ Driver "emgd"
+ VendorName "Intel(R) DEG"
+ BoardName "Embedded Graphics"
+ BusID "0:2:0"
+ Screen 0
+ Option "PcfVersion" "1792"
+ Option "ConfigId" "1"
+ Option "ALL/1/name" "e6xx"
+ Option "ALL/1/General/PortOrder" "40000"
+ Option "ALL/1/General/DisplayConfig" "1"
+ Option "ALL/1/General/DisplayDetect" "1"
+ Option "ALL/1/Port/4/General/name" "lvds"
+ Option "ALL/1/Port/4/General/EdidAvail" "3"
+ Option "ALL/1/Port/4/General/EdidNotAvail" "1"
+ Option "ALL/1/Port/4/General/Rotation" "0"
+ Option "ALL/1/Port/4/General/Edid" "1"
+EndSection
+
+Section "ServerLayout"
+ Identifier "Default Layout"
+ Screen 0 "Screen0" 0 0
+ # InputDevice "Mouse0" "CorePointer"
+ # InputDevice "Keyboard0" "CoreKeyboard"
+ # InputDevice "DevInputMice" "SendCoreEvents"
+EndSection
+
+Section "ServerFlags"
+ Option "DontZap" "0"
+ Option "AutoAddDevices" "False"
+EndSection
diff --git a/meta-crownbay/recipes-graphics/xorg-xserver/xserver-xf86-config_0.1.bbappend b/meta-crownbay/recipes-graphics/xorg-xserver/xserver-xf86-config_0.1.bbappend
new file mode 100644
index 00000000..4b8d0e65
--- /dev/null
+++ b/meta-crownbay/recipes-graphics/xorg-xserver/xserver-xf86-config_0.1.bbappend
@@ -0,0 +1,3 @@
+THISDIR := "${@os.path.dirname(bb.data.getVar('FILE', d, True))}"
+FILESPATH =. "${@base_set_filespath(["${THISDIR}/${PN}"], d)}:"
+
diff --git a/meta-crownbay/recipes-graphics/xorg-xserver/xserver-xf86-emgd-bin/.gitignore b/meta-crownbay/recipes-graphics/xorg-xserver/xserver-xf86-emgd-bin/.gitignore
new file mode 100644
index 00000000..e69de29b
--- /dev/null
+++ b/meta-crownbay/recipes-graphics/xorg-xserver/xserver-xf86-emgd-bin/.gitignore
diff --git a/meta-crownbay/recipes-graphics/xorg-xserver/xserver-xf86-emgd-bin_1.7.99.2.bb b/meta-crownbay/recipes-graphics/xorg-xserver/xserver-xf86-emgd-bin_1.7.99.2.bb
new file mode 100644
index 00000000..95068722
--- /dev/null
+++ b/meta-crownbay/recipes-graphics/xorg-xserver/xserver-xf86-emgd-bin_1.7.99.2.bb
@@ -0,0 +1,90 @@
+SUMMARY = "EMGD 1.5 xserver binaries"
+DESCRIPTION = "EMGD 1.5 includes some userspace binaries that use non-free licensing. Intel Open Source Technology Center unfortunately has no power to change that, but tries to make their use as painless as possible. Please see the README.before.building in meta-crownbay/recipes/xorg-xerver for instructions on the (simple) manual steps necessary to make the necessary binaries available to this recipe. Please do that before building an image."
+
+LICENSE = "Intel-binary-only"
+LIC_FILES_CHKSUM = "file://${WORKDIR}/License.txt;md5=95c4d031b83ab803f3f2401b04ecfbcd"
+PR = "r0"
+
+FILESPATH = "${FILE_DIRNAME}/xserver-xf86-emgd-bin"
+
+FILES_${PN} = "${libdir}/*.so.* ${libdir}/dri ${libdir}/xorg/modules/drivers"
+
+SRC_URI = "file://emgd_dri.so \
+ file://emgd_drv.so \
+ file://emgd_drv_video.so \
+ file://libEGL.so \
+ file://libGLES_CM.so \
+ file://libGLESv2.so \
+ file://libIMGegl.so \
+ file://libOpenVG.so \
+ file://libOpenVGU.so \
+ file://libPVROGL.so \
+ file://libPVRScopeServices.so \
+ file://libXegd_escape.so.2.0.0 \
+ file://libglslcompiler.so \
+ file://libpvr2d.so \
+ file://libpvrPVR2D_DRIWSEGL.so \
+ file://libsrv_init.so \
+ file://libsrv_um.so \
+ file://libva-x11.so.1.0.1 \
+ file://libva.so.1.0.1 \
+ file://License.txt"
+
+S = "${WORKDIR}"
+
+do_install () {
+ install -d -m 0755 ${D}/${libdir}/dri ${D}/${libdir}/xorg/modules/drivers
+
+ install -m 0755 ${S}/emgd_dri.so ${D}${libdir}/dri/emgd_dri.so.1.1.15.3082
+ ln -sf emgd_dri.so.1.1.15.3082 ${D}${libdir}/dri/emgd_dri.so
+
+ install -m 0755 ${S}/emgd_drv.so ${D}${libdir}/xorg/modules/drivers/emgd_drv.so
+ install -m 0755 ${S}/emgd_drv_video.so ${D}${libdir}/xorg/modules/drivers/emgd_drv_video.so
+
+ install -m 0755 ${S}/libEGL.so ${D}${libdir}/libEGL.so.1.1.15.3082
+ ln -sf libEGL.so.1.1.15.3082 ${D}${libdir}/libEGL.so
+
+ install -m 0755 ${S}/libGLES_CM.so ${D}${libdir}/libGLES_CM.so.1.1.15.3082
+ ln -sf libGLES_CM.so.1.1.15.3082 ${D}${libdir}/libGLES_CM.so
+
+ install -m 0755 ${S}/libGLESv2.so ${D}${libdir}/libGLESv2.so.1.1.15.3082
+ ln -sf libGLESv2.so.1.1.15.3082 ${D}${libdir}/libGLESv2.so
+
+ install -m 0755 ${S}/libIMGegl.so ${D}${libdir}/libIMGegl.so.1.1.15.3082
+ ln -sf libIMGegl.so.1.1.15.3082 ${D}${libdir}/libIMGegl.so
+
+ install -m 0755 ${S}/libOpenVG.so ${D}${libdir}/libOpenVG.so.1.1.15.3082
+ ln -sf libOpenVG.so.1.1.15.3082 ${D}${libdir}/libOpenVG.so
+
+ install -m 0755 ${S}/libOpenVGU.so ${D}${libdir}/libOpenVGU.so.1.1.15.3082
+ ln -sf libOpenVG.so.1.1.15.3082 ${D}${libdir}/libOpenVGU.so
+
+ install -m 0755 ${S}/libPVROGL.so ${D}${libdir}/libPVROGL.so.1.1.15.3082
+ ln -sf libPVROGL.so.1.1.15.3082 ${D}${libdir}/libPVROGL.so
+
+ install -m 0755 ${S}/libPVRScopeServices.so ${D}${libdir}/libPVRScopeServices.so.1.1.15.3082
+ ln -sf libPVRScopeServices.so.1.1.15.3082 ${D}${libdir}/libPVRScopeServices.so
+
+ install -m 0755 ${S}/libXegd_escape.so.2.0.0 ${D}${libdir}/libXegd_escape.so.2.0.0
+
+ install -m 0755 ${S}/libglslcompiler.so ${D}${libdir}/libglslcompiler.so.1.1.15.3082
+ ln -sf libglslcompiler.so.1.1.15.3082 ${D}${libdir}/libglslcompiler.so
+
+ install -m 0755 ${S}/libpvr2d.so ${D}${libdir}/libpvr2d.so.1.1.15.3082
+ ln -sf libpvr2d.so.1.1.15.3082 ${D}${libdir}/libpvr2d.so
+
+ install -m 0755 ${S}/libpvrPVR2D_DRIWSEGL.so ${D}${libdir}/libpvrPVR2D_DRIWSEGL.so.1.1.15.3082
+ ln -sf libpvrPVR2D_DRIWSEGL.so.1.1.15.3082 ${D}${libdir}/libpvrPVR2D_DRIWSEGL.so
+
+ install -m 0755 ${S}/libsrv_init.so ${D}${libdir}/libsrv_init.so.1.1.15.3082
+ ln -sf libsrv_init.so.1.1.15.3082 ${D}${libdir}/libsrv_init.so
+
+ install -m 0755 ${S}/libsrv_um.so ${D}${libdir}/libsrv_um.so.1.1.15.3082
+ ln -sf libsrv_um.so.1.1.15.3082 ${D}${libdir}/libsrv_um.so
+
+ install -m 0755 ${S}/libva-x11.so.1.0.1 ${D}${libdir}/libva-x11.so.1.0.1
+
+ install -m 0755 ${S}/libva.so.1.0.1 ${D}${libdir}/libva.so.1.0.1
+}
+
+LEAD_SONAME = "libEGL.so"
diff --git a/meta-crownbay/recipes-graphics/xorg-xserver/xserver-xf86-emgd/crosscompile.patch b/meta-crownbay/recipes-graphics/xorg-xserver/xserver-xf86-emgd/crosscompile.patch
new file mode 100644
index 00000000..2341e40b
--- /dev/null
+++ b/meta-crownbay/recipes-graphics/xorg-xserver/xserver-xf86-emgd/crosscompile.patch
@@ -0,0 +1,19 @@
+Index: xorg-server-1.7.99.2/configure.ac
+===================================================================
+--- xorg-server-1.7.99.2.orig/configure.ac 2010-01-29 16:38:49.000000000 +0000
++++ xorg-server-1.7.99.2/configure.ac 2010-01-29 16:42:39.000000000 +0000
+@@ -503,14 +503,10 @@
+
+ dnl Uses --default-font-path if set, otherwise checks for /etc/X11/fontpath.d,
+ dnl otherwise uses standard subdirectories of FONTROOTDIR
+-AC_CHECK_FILE([${sysconfdir}/X11/fontpath.d],
+- [DEFAULT_FONT_PATH='catalogue:${sysconfdir}/X11/fontpath.d'],
+- [
+ DEFAULT_FONT_PATH="${FONTMISCDIR}/,${FONTTTFDIR}/,${FONTOTFDIR}/,${FONTTYPE1DIR}/,${FONT100DPIDIR}/,${FONT75DPIDIR}/"
+ case $host_os in
+ darwin*) DEFAULT_FONT_PATH="${DEFAULT_FONT_PATH},/Library/Fonts,/System/Library/Fonts" ;;
+ esac
+- ])
+ AC_ARG_WITH(default-font-path, AS_HELP_STRING([--with-default-font-path=PATH], [Comma separated list of font dirs]),
+ [ FONTPATH="$withval" ],
+ [ FONTPATH="${DEFAULT_FONT_PATH}" ])
diff --git a/meta-crownbay/recipes-graphics/xorg-xserver/xserver-xf86-emgd/fix_open_max_preprocessor_error.patch b/meta-crownbay/recipes-graphics/xorg-xserver/xserver-xf86-emgd/fix_open_max_preprocessor_error.patch
new file mode 100644
index 00000000..565832ee
--- /dev/null
+++ b/meta-crownbay/recipes-graphics/xorg-xserver/xserver-xf86-emgd/fix_open_max_preprocessor_error.patch
@@ -0,0 +1,13 @@
+Index: git/os/osdep.h
+===================================================================
+--- git.orig/os/osdep.h 2008-10-07 18:38:21.000000000 +0100
++++ git/os/osdep.h 2008-10-07 18:39:36.000000000 +0100
+@@ -92,7 +92,7 @@
+ * like sysconf(_SC_OPEN_MAX) is not supported.
+ */
+
+-#if OPEN_MAX <= 256
++#if 0
+ #define MAXSOCKS (OPEN_MAX - 1)
+ #else
+ #define MAXSOCKS 256
diff --git a/meta-crownbay/recipes-graphics/xorg-xserver/xserver-xf86-emgd/macro_tweak.patch b/meta-crownbay/recipes-graphics/xorg-xserver/xserver-xf86-emgd/macro_tweak.patch
new file mode 100644
index 00000000..6998adff
--- /dev/null
+++ b/meta-crownbay/recipes-graphics/xorg-xserver/xserver-xf86-emgd/macro_tweak.patch
@@ -0,0 +1,18 @@
+Index: xorg-server-1.5.0/xorg-server.m4
+===================================================================
+--- xorg-server-1.5.0.orig/xorg-server.m4 2007-05-29 20:36:51.000000000 +0100
++++ xorg-server-1.5.0/xorg-server.m4 2008-11-04 23:56:55.000000000 +0000
+@@ -28,9 +28,12 @@
+ # Checks for the $1 define in xorg-server.h (from the sdk). If it
+ # is defined, then add $1 to $REQUIRED_MODULES.
+
++m4_pattern_allow(PKG_CONFIG_SYSROOT_DIR)
++
+ AC_DEFUN([XORG_DRIVER_CHECK_EXT],[
++ PKG_PROG_PKG_CONFIG
+ SAVE_CFLAGS="$CFLAGS"
+- CFLAGS="$CFLAGS -I`pkg-config --variable=sdkdir xorg-server`"
++ CFLAGS="$CFLAGS -I$PKG_CONFIG_SYSROOT_DIR`pkg-config --variable=sdkdir xorg-server`"
+ AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
+ #include "xorg-server.h"
+ #if !defined $1
diff --git a/meta-crownbay/recipes-graphics/xorg-xserver/xserver-xf86-emgd/nodolt.patch b/meta-crownbay/recipes-graphics/xorg-xserver/xserver-xf86-emgd/nodolt.patch
new file mode 100644
index 00000000..6b34032a
--- /dev/null
+++ b/meta-crownbay/recipes-graphics/xorg-xserver/xserver-xf86-emgd/nodolt.patch
@@ -0,0 +1,12 @@
+Index: git/configure.ac
+===================================================================
+--- git.orig/configure.ac 2009-01-15 20:35:31.000000000 +0000
++++ git/configure.ac 2009-01-15 20:35:38.000000000 +0000
+@@ -62,7 +62,6 @@
+ AC_LIBTOOL_WIN32_DLL
+ AC_DISABLE_STATIC
+ AC_PROG_LIBTOOL
+-DOLT
+ AC_PROG_MAKE_SET
+ PKG_PROG_PKG_CONFIG
+ AC_PROG_LEX
diff --git a/meta-crownbay/recipes-graphics/xorg-xserver/xserver-xf86-emgd_1.7.99.2.bb b/meta-crownbay/recipes-graphics/xorg-xserver/xserver-xf86-emgd_1.7.99.2.bb
new file mode 100644
index 00000000..5f22213a
--- /dev/null
+++ b/meta-crownbay/recipes-graphics/xorg-xserver/xserver-xf86-emgd_1.7.99.2.bb
@@ -0,0 +1,25 @@
+require recipes-graphics/xorg-xserver/xserver-xf86-dri-lite.inc
+
+LIC_FILES_CHKSUM = "file://COPYING;md5=3dd2bbe3563837f80ed8926b06c1c353"
+
+PROTO_DEPS += "xf86driproto dri2proto"
+
+DEPENDS += "font-util"
+
+PE = "1"
+PR = "r0"
+
+SRC_URI += "file://nodolt.patch \
+ file://crosscompile.patch"
+
+# Misc build failure for master HEAD
+SRC_URI += "file://fix_open_max_preprocessor_error.patch"
+
+SRC_URI[md5sum] = "5c8773499a6a8c1ddaedf33577ec9634"
+SRC_URI[sha256sum] = "8b30800004c98fc7a8e6ff31a339f28451be5132e774443be22bf226e1791e34"
+
+RDEPENDS_${PN} += "xserver-xf86-emgd-bin mesa-dri"
+
+COMPATIBLE_MACHINE = "crownbay"
+
+EXTRA_OECONF += "--enable-dga --enable-dri --enable-dri2"