From 030847c63a11c71b427c83efcd57c5aeca2ac9f7 Mon Sep 17 00:00:00 2001 From: Samuli Piippo Date: Tue, 3 Jun 2014 09:58:02 +0300 Subject: Include older Vivante drivers for Apalis iMX6 Apalis iMX6 is using older vivante GPU drivers that are available in the daisy branch of meta-fsl-arm. These files are copied over from meta-fsl-arm dora branch. Change-Id: I1a771a21b90ec2b064e3bdb3197302f3696e6aaf Reviewed-by: Andy Nichols --- recipes/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q.inc | 246 +++++++++++++++++++++ .../0001-change-header-path-to-HAL.patch | 30 +++ recipes/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q/egl.pc | 12 + .../gpu-viv-bin-mx6q/gpu-viv-bin-mx6q/egl_x11.pc | 12 + .../fix-conflicting-TLS-definition.patch | 31 +++ .../gc_hal_eglplatform-remove-xlib-undefs.patch | 34 +++ .../gpu-viv-bin-mx6q/gc_wayland_protocol.pc | 10 + .../gpu-viv-bin-mx6q/gpu-viv-bin-mx6q/glesv1_cm.pc | 12 + .../gpu-viv-bin-mx6q/glesv1_cm_x11.pc | 12 + .../gpu-viv-bin-mx6q/gpu-viv-bin-mx6q/glesv2.pc | 12 + .../gpu-viv-bin-mx6q/glesv2_x11.pc | 12 + recipes/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q/vg.pc | 12 + .../gpu-viv-bin-mx6q/gpu-viv-bin-mx6q/vg_x11.pc | 12 + .../gpu-viv-bin-mx6q/wayland-egl.pc | 10 + .../gpu-viv-bin-mx6q/wayland-viv.pc | 10 + .../gpu-viv-bin-mx6q_3.10.9-1.0.0-hfp.bb | 11 + 16 files changed, 478 insertions(+) create mode 100644 recipes/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q.inc create mode 100644 recipes/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q/0001-change-header-path-to-HAL.patch create mode 100644 recipes/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q/egl.pc create mode 100644 recipes/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q/egl_x11.pc create mode 100644 recipes/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q/fix-conflicting-TLS-definition.patch create mode 100644 recipes/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q/gc_hal_eglplatform-remove-xlib-undefs.patch create mode 100644 recipes/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q/gc_wayland_protocol.pc create mode 100644 recipes/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q/glesv1_cm.pc create mode 100644 recipes/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q/glesv1_cm_x11.pc create mode 100644 recipes/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q/glesv2.pc create mode 100644 recipes/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q/glesv2_x11.pc create mode 100644 recipes/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q/vg.pc create mode 100644 recipes/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q/vg_x11.pc create mode 100644 recipes/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q/wayland-egl.pc create mode 100644 recipes/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q/wayland-viv.pc create mode 100644 recipes/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q_3.10.9-1.0.0-hfp.bb diff --git a/recipes/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q.inc b/recipes/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q.inc new file mode 100644 index 0000000..f661539 --- /dev/null +++ b/recipes/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q.inc @@ -0,0 +1,246 @@ +# Copyright (C) 2012-2013 Freescale Semiconductor +# Copyright (C) 2012-2013 O.S. Systems Software LTDA. +# Released under the MIT license (see COPYING.MIT for the terms) + +DESCRIPTION = "GPU driver and apps for imx6" +SECTION = "libs" +LICENSE = "Proprietary" +LIC_FILES_CHKSUM = "file://usr/include/gc_vdk.h;endline=11;md5=19f5925343fa3da65596eeaa4ddb5fd3" +DEPENDS += "${@base_contains('DISTRO_FEATURES', 'x11', 'virtual/libx11 libxdamage libxext libxfixes mesa', '', d)}" +PROVIDES += "virtual/wayland-egl virtual/libgl virtual/libgal-x11 virtual/egl virtual/libgles1 virtual/libgles2 virtual/libopenvg" + +PE = "1" + +inherit fsl-eula-unpack + +SRC_URI = "${FSL_MIRROR}/${PN}-${PV}.bin;fsl-eula=true \ + file://egl.pc \ + file://egl_x11.pc \ + file://glesv1_cm.pc \ + file://glesv1_cm_x11.pc \ + file://glesv2.pc \ + file://glesv2_x11.pc \ + file://vg.pc \ + file://vg_x11.pc \ + file://gc_wayland_protocol.pc \ + file://wayland-egl.pc \ + file://wayland-viv.pc \ + " + +PACKAGES =+ "libclc-mx6 libclc-mx6-dev libclc-mx6-dbg \ + libgl-mx6 libgl-mx6-dev libgl-mx6-dbg \ + libgles-mx6 libgles-mx6-dev libgles-mx6-dbg \ + libgles2-mx6 libgles2-mx6-dev libgles2-mx6-dbg \ + libglslc-mx6 libglslc-mx6-dev libglslc-mx6-dbg \ + libopencl-mx6 libopencl-mx6-dev libopencl-mx6-dbg \ + libopenvg-mx6 libopenvg-mx6-dev libopenvg-mx6-dbg \ + libvdk-mx6 libvdk-mx6-dev libvdk-mx6-dbg \ + libegl-mx6 libegl-mx6-dev libegl-mx6-dbg \ + libgal-mx6 libgal-mx6-dev libgal-mx6-dbg \ + libvivante-mx6 libvivante-mx6-dev libvivante-mx6-dbg \ + libvivante-dri-mx6 \ + libvivante-dfb-mx6 \ + libwayland-viv-mx6 libwayland-viv-mx6-dev libwayland-viv-mx6-dbg \ + libgc-wayland-protocol-mx6 libgc-wayland-protocol-mx6-dev libgc-wayland-protocol-mx6-dbg \ + libwayland-egl-mx6-dev \ +" + +# Skip package if it does not match the machine float-point type in use +python __anonymous () { + is_machine_hardfp = base_contains("TUNE_FEATURES", "callconvention-hard", True, False, d) + is_package_hardfp = d.getVar("PACKAGE_FP_TYPE", True) == "hardfp" + + if is_package_hardfp != is_machine_hardfp: + PN = d.getVar("PN", True) + PV = d.getVar("PV", True) + bb.debug(1, "Skipping %s (%s) as machine and package float-point does not match" % (PN, PV)) + raise bb.parse.SkipPackage("Package Float-Point is not compatible with the machine") +} + +USE_X11 = "${@base_contains("DISTRO_FEATURES", "x11", "yes", "no", d)}" +USE_DFB = "${@base_contains("DISTRO_FEATURES", "directfb", "yes", "no", d)}" +USE_WL = "${@base_contains("DISTRO_FEATURES", "wayland", "yes", "no", d)}" + +# Inhibit warnings about files being stripped. +INHIBIT_PACKAGE_STRIP = "1" +INHIBIT_PACKAGE_DEBUG_SPLIT = "1" + +# FIXME: The provided binary doesn't provide soname. If in future BSP +# release the libraries are fixed, we can drop this hack. +REALSOLIBS := "${SOLIBS}" +SOLIBS = "${SOLIBSDEV}" + +# For the packages that make up the OpenGL interfaces, inject variables so that +# they don't get Debian-renamed (which would remove the -mx6 suffix). +# +# FIXME: All binaries lack GNU_HASH in elf binary but as we don't have +# the source we cannot fix it. Disable the insane check for now. +python __anonymous() { + packages = d.getVar('PACKAGES', True).split() + for p in packages: + d.appendVar("INSANE_SKIP_%s" % p, " ldflags") + + for p in (("libegl", "libegl1"), ("libgl", "libgl1"), + ("libgles1", "libglesv1-cm1"), ("libgles2", "libglesv2-2"), + ("libgles3",)): + fullp = p[0] + "-mx6" + pkgs = " ".join(p) + d.setVar("DEBIAN_NOAUTONAME_" + fullp, "1") + d.appendVar("RREPLACES_" + fullp, pkgs) + d.appendVar("RPROVIDES_" + fullp, pkgs) + d.appendVar("RCONFLICTS_" + fullp, pkgs) + + # For -dev, the first element is both the Debian and original name + fullp += "-dev" + pkgs = p[0] + "-dev" + d.setVar("DEBIAN_NOAUTONAME_" + fullp, "1") + d.appendVar("RREPLACES_" + fullp, pkgs) + d.appendVar("RPROVIDES_" + fullp, pkgs) + d.appendVar("RCONFLICTS_" + fullp, pkgs) +} + +do_install () { + install -d ${D}${libdir} + install -d ${D}${includedir} + + cp -a ${S}/usr/lib/*.so* ${D}${libdir} + cp -axr ${S}/usr/include/* ${D}${includedir} + cp -axr ${S}/opt ${D} + + install -d ${D}${libdir}/pkgconfig + + # The preference order, based in DISTRO_FEATURES, is x11, wayland, directfb and fb + if [ "${USE_X11}" = "yes" ]; then + cp -r ${S}/usr/lib/dri ${D}${libdir} + backend=x11 + + install -m 0644 ${WORKDIR}/egl_x11.pc ${D}${libdir}/pkgconfig/egl.pc + install -m 0644 ${WORKDIR}/glesv1_cm_x11.pc ${D}${libdir}/pkgconfig/glesv1_cm.pc + install -m 0644 ${WORKDIR}/glesv2_x11.pc ${D}${libdir}/pkgconfig/glesv2.pc + install -m 0644 ${WORKDIR}/vg_x11.pc ${D}${libdir}/pkgconfig/vg.pc + #FIXME: WL & X11 is not currently functional + #if [ "${USE_WL}" = "yes" ]; then + # install -m 0644 ${WORKDIR}/gc_wayland_protocol.pc ${D}${libdir}/pkgconfig/gc_wayland_protocol.pc + # install -m 0644 ${WORKDIR}/wayland-egl.pc ${D}${libdir}/pkgconfig/wayland-egl.pc + # install -m 0644 ${WORKDIR}/wayland-viv.pc ${D}${libdir}/pkgconfig/wayland-viv.pc + #fi + elif [ "${USE_WL}" = "yes" ]; then + backend=wl + + install -m 0644 ${WORKDIR}/egl.pc ${D}${libdir}/pkgconfig/egl.pc + install -m 0644 ${WORKDIR}/glesv1_cm.pc ${D}${libdir}/pkgconfig/glesv1_cm.pc + install -m 0644 ${WORKDIR}/glesv2.pc ${D}${libdir}/pkgconfig/glesv2.pc + install -m 0644 ${WORKDIR}/vg.pc ${D}${libdir}/pkgconfig/vg.pc + install -m 0644 ${WORKDIR}/gc_wayland_protocol.pc ${D}${libdir}/pkgconfig/gc_wayland_protocol.pc + install -m 0644 ${WORKDIR}/wayland-egl.pc ${D}${libdir}/pkgconfig/wayland-egl.pc + install -m 0644 ${WORKDIR}/wayland-viv.pc ${D}${libdir}/pkgconfig/wayland-viv.pc + else + install -m 0644 ${WORKDIR}/egl.pc ${D}${libdir}/pkgconfig/egl.pc + install -m 0644 ${WORKDIR}/glesv1_cm.pc ${D}${libdir}/pkgconfig/glesv1_cm.pc + install -m 0644 ${WORKDIR}/glesv2.pc ${D}${libdir}/pkgconfig/glesv2.pc + install -m 0644 ${WORKDIR}/vg.pc ${D}${libdir}/pkgconfig/vg.pc + + if [ "${USE_DFB}" = "yes" ]; then + cp -r ${S}/usr/lib/directfb-1.6-0 ${D}${libdir} + backend=dfb + else + # Regular framebuffer + backend=fb + fi + fi + + # We'll only have one backend here so we rename it to generic name + # and avoid rework in other packages, when possible + mv ${D}${libdir}/libGL.so.1.2 ${D}${libdir}/libGL.so.1.2.0 + ln -sf libGL.so.1.2.0 ${D}${libdir}/libGL.so.1.2 + ln -sf libGL.so.1.2.0 ${D}${libdir}/libGL.so + mv ${D}${libdir}/libEGL-${backend}.so ${D}${libdir}/libEGL.so.1.0 + ln -sf libEGL.so.1.0 ${D}${libdir}/libEGL.so.1 + ln -sf libEGL.so.1.0 ${D}${libdir}/libEGL.so + mv ${D}${libdir}/libGAL-${backend}.so ${D}${libdir}/libGAL.so + mv ${D}${libdir}/libVIVANTE-${backend}.so ${D}${libdir}/libVIVANTE.so + + for backend in wl x11 fb dfb; do + find ${D}${libdir} -name "*-$backend.so" -exec rm '{}' ';' + done + + find ${D}${libdir} -type f -exec chmod 644 {} \; + find ${D}${includedir} -type f -exec chmod 644 {} \; +} + +S = "${WORKDIR}/${PN}-${PV}" + +FILES_${PN} += "/opt" +FILES_${PN}-dev = "${includedir}" +FILES_${PN}-dbg = "${libdir}/.debug /opt/viv_samples/*/*/.debug" + +FILES_libclc-mx6 = "${libdir}/libCLC${SOLIBS}" +FILES_libclc-mx6-dev = "${includedir}/CL ${libdir}/libCLC${SOLIBSDEV}" +FILES_libclc-mx6-dbg = "${libdir}/.debug/libCLC${SOLIBS}" + +# libEGL.so is used by some demo apps from Freescale +INSANE_SKIP_libegl-mx6 += "dev-so" +FILES_libegl-mx6 = "${libdir}/libEGL${REALSOLIBS} ${libdir}/libEGL${SOLIBSDEV} " +FILES_libegl-mx6-dev = "${includedir}/EGL ${includedir}/KHR ${libdir}/pkgconfig/egl.pc" +FILES_libegl-mx6-dbg = "${libdir}/.debug/libEGL${SOLIBS}" + +FILES_libgal-mx6 = "${libdir}/libGAL${SOLIBS}" +FILES_libgal-mx6-dev = "${libdir}/libGAL${SOLIBSDEV}" +FILES_libgal-mx6-dbg = "${libdir}/.debug/libGAL${SOLIBS}" + +FILES_libgl-mx6 = "${libdir}/libGL${REALSOLIBS}" +FILES_libgl-mx6-dev = "${libdir}/libGL${SOLIBSDEV}" +FILES_libgl-mx6-dbg = "${libdir}/.debug/libGL.${SOLIBS}" +RDEPENDS_libgl-mx6-dev = "libgl-mesa-dev" + +# libEGL needs to open libGLESv1.so +INSANE_SKIP_libgles-mx6 += "dev-so" +FILES_libgles-mx6 = "${libdir}/libGLESv1*${REALSOLIBS} ${libdir}/libGLESv1*${SOLIBS} ${libdir}/libGLES_*${SOLIBS}" +FILES_libgles-mx6-dev = "${includedir}/GLES ${libdir}/libGLESv1*${SOLIBS} ${libdir}/libGLES_*${SOLIBSDEV} ${libdir}/pkgconfig/glesv1_cm.pc" +FILES_libgles-mx6-dbg = "${libdir}/.debug/libGLESv1*${SOLIBS} ${libdir}/.debug/libGLES_*${SOLIBS}" + +# libEGL needs to open libGLESv2.so +INSANE_SKIP_libgles2-mx6 += "dev-so" +FILES_libgles2-mx6 = "${libdir}/libGLESv2${REALSOLIBS} ${libdir}/libGLESv2${SOLIBS}" +FILES_libgles2-mx6-dev = "${includedir}/GLES2 ${libdir}/libGLESv2${SOLIBSDEV} ${libdir}/pkgconfig/glesv2.pc" +FILES_libgles2-mx6-dbg = "${libdir}/.debug/libGLESv2${SOLIBS}" +RDEPENDS_libgles2-mx6 = "libglslc-mx6" + +FILES_libglslc-mx6 = "${libdir}/libGLSLC${SOLIBS}" +FILES_libglslc-mx6-dev = "${includedir}/CL ${libdir}/libGLSLC${SOLIBSDEV}" +FILES_libglslc-mx6-dbg = "${libdir}/.debug/libGLSLC${SOLIBS}" + +FILES_libopencl-mx6 = "${libdir}/libOpenCL${SOLIBS}" +FILES_libopencl-mx6-dev = "${includedir}/CL ${libdir}/libOpenCL${SOLIBSDEV}" +FILES_libopencl-mx6-dbg = "${libdir}/.debug/libOpenCL${SOLIBS}" +RDEPENDS_libopencl-mx6 = "libclc-mx6" + +FILES_libopenvg-mx6 = "${libdir}/libOpenVG*${SOLIBS}" +FILES_libopenvg-mx6-dev = "${includedir}/VG ${libdir}/libOpenVG*${SOLIBSDEV} ${libdir}/pkgconfig/vg.pc" +FILES_libopenvg-mx6-dbg = "${libdir}/.debug/libOpenVG*${SOLIBS}" + +FILES_libvdk-mx6 = "${libdir}/libVDK${SOLIBS}" +FILES_libvdk-mx6-dev = "${includedir}/*vdk.h ${libdir}/libVDK${SOLIBSDEV}" +FILES_libvdk-mx6-dbg = "${libdir}/.debug/libVDK${SOLIBS}" + +FILES_libvivante-mx6 = "${libdir}/libVIVANTE${SOLIBS}" +FILES_libvivante-mx6-dev = "${libdir}/libVIVANTE${SOLIBSDEV}" +FILES_libvivante-mx6-dbg = "${libdir}/.debug/libVIVANTE${SOLIBS}" + +FILES_libvivante-dri-mx6 = "${libdir}/dri/vivante_dri.so" + +FILES_libvivante-dfb-mx6 = "${libdir}/directfb-1.6-0/gfxdrivers/libdirectfb_gal.so" + +INSANE_SKIP_libwayland-viv-mx6 += "dev-so" +FILES_libwayland-viv-mx6 = "${libdir}/libwayland-viv${REALSOLIBS} ${libdir}/libwayland-viv${SOLIBS}" +FILES_libwayland-viv-mx6-dev = "${libdir})/libwayland-viv${SOLIBSDEV} ${libdir}/pkgconfig/wayland-viv.pc" +FILES_libwayland-viv-mx6-dbg = "${libdir}/.debug/libwayland-viv${SOLIBS}" + +INSANE_SKIP_libgc-wayland-protocol-mx6 += "dev-so" +FILES_libgc-wayland-protocol-mx6 = "${libdir}/libgc_wayland_protocol${REALSOLIBS} ${libdir}/libgc_wayland_protocol${SOLIBS}" +FILES_libgc-wayland-protocol-mx6-dev = "${libdir}/libgc_wayland_protocol${SOLIBSDEV} ${libdir}/pkgconfig/gc_wayland_protocol.pc" +FILES_libgc-wayland-protocol-mx6-dbg = "${libdir}/libgc_wayland_protocol${SOLIBS}" + +FILES_libwayland-egl-mx6-dev = "${libdir}/pkgconfig/wayland-egl.pc" + +COMPATIBLE_MACHINE = "(mx6)" diff --git a/recipes/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q/0001-change-header-path-to-HAL.patch b/recipes/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q/0001-change-header-path-to-HAL.patch new file mode 100644 index 0000000..dc91d7c --- /dev/null +++ b/recipes/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q/0001-change-header-path-to-HAL.patch @@ -0,0 +1,30 @@ +From 1a4a35678ef70283d1a31835deecd39711a9db86 Mon Sep 17 00:00:00 2001 +From: Jeremy Stashluk +Date: Wed, 30 Jan 2013 13:16:53 -0500 +Subject: [PATCH] change header path to HAL + +The gpu-viv-bin-mx6q package from Freescale puts this header in the HAL +directory under the system. I think this is a problem in the LTIB release as +well. + +Upstream-Status: Pending + +Signed-off-by: Jeremy Stashluk + +--- + usr/include/gc_vdk_types.h | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +Index: gpu-viv-bin-mx6q-1.1.0/usr/include/gc_vdk_types.h +=================================================================== +--- gpu-viv-bin-mx6q-1.1.0.orig/usr/include/gc_vdk_types.h ++++ gpu-viv-bin-mx6q-1.1.0/usr/include/gc_vdk_types.h +@@ -39,7 +39,7 @@ extern "C" { + #endif + + #include +-#include "gc_hal_eglplatform_type.h" ++#include + + + /******************************************************************************* diff --git a/recipes/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q/egl.pc b/recipes/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q/egl.pc new file mode 100644 index 0000000..a21922d --- /dev/null +++ b/recipes/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q/egl.pc @@ -0,0 +1,12 @@ +prefix=/usr +exec_prefix=${prefix} +libdir=/usr/lib +includedir=/usr/include + +Name: egl +Description: Vivante EGL library +Requires.private: +Version: 8.0 +Libs: -L${libdir} -lEGL +Libs.private: -lm -lpthread -ldl +Cflags: -I${includedir} -DLINUX diff --git a/recipes/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q/egl_x11.pc b/recipes/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q/egl_x11.pc new file mode 100644 index 0000000..5921583 --- /dev/null +++ b/recipes/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q/egl_x11.pc @@ -0,0 +1,12 @@ +prefix=/usr +exec_prefix=${prefix} +libdir=/usr/lib +includedir=/usr/include + +Name: egl +Description: Vivante EGL library +Requires.private: libdrm x11 xext xdamage xfixes xcb +Version: 8.0 +Libs: -L${libdir} -lEGL +Libs.private: -lm -lpthread -ldl +Cflags: -I${includedir} -DLINUX diff --git a/recipes/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q/fix-conflicting-TLS-definition.patch b/recipes/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q/fix-conflicting-TLS-definition.patch new file mode 100644 index 0000000..3eac116 --- /dev/null +++ b/recipes/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q/fix-conflicting-TLS-definition.patch @@ -0,0 +1,31 @@ +Avoid conflicting types with Xorg newer code + +Upstream-Status: Pending +Signed-off-by: Otavio Salvador + +Index: gpu-viv-bin-mx6q-1.1.0/usr/include/HAL/gc_hal_base.h +=================================================================== +--- gpu-viv-bin-mx6q-1.1.0.orig/usr/include/HAL/gc_hal_base.h ++++ gpu-viv-bin-mx6q-1.1.0/usr/include/HAL/gc_hal_base.h +@@ -101,7 +101,7 @@ extern gcsPLS gcPLS; + typedef struct _gcsTLS * gcsTLS_PTR; + + typedef void (* gctTLS_DESTRUCTOR) ( +- gcsTLS_PTR TLS ++ gcsTLS_PTR pTLS + ); + + typedef struct _gcsTLS +@@ -648,10 +648,10 @@ gcoOS_SetPLSValue( + /* Get access to the thread local storage. */ + gceSTATUS + gcoOS_GetTLS( +- OUT gcsTLS_PTR * TLS ++ OUT gcsTLS_PTR * pTLS + ); + +- /* Copy the TLS from a source thread. */ ++ /* Copy the pTLS from a source thread. */ + gceSTATUS gcoOS_CopyTLS(IN gcsTLS_PTR Source); + + /* Destroy the objects associated with the current thread. */ diff --git a/recipes/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q/gc_hal_eglplatform-remove-xlib-undefs.patch b/recipes/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q/gc_hal_eglplatform-remove-xlib-undefs.patch new file mode 100644 index 0000000..732a073 --- /dev/null +++ b/recipes/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q/gc_hal_eglplatform-remove-xlib-undefs.patch @@ -0,0 +1,34 @@ +From c59f9640d185759208f9d55a93b6602936dcb5e8 Mon Sep 17 00:00:00 2001 +From: Adrian Alonso +Date: Sat, 26 Jan 2013 17:52:04 -0600 +Subject: [PATCH 2/2] gc_hal_eglplatform: remove xlib undefs + +* Remove header undefs for Always and Status definitions + +Signed-off-by: Adrian Alonso +--- + usr/include/HAL/gc_hal_eglplatform.h | 3 --- + 1 file changed, 3 deletions(-) + +diff --git a/usr/include/HAL/gc_hal_eglplatform.h b/usr/include/HAL/gc_hal_eglplatform.h +index a968fe7..e80c65a 100644 +--- a/usr/include/HAL/gc_hal_eglplatform.h ++++ b/usr/include/HAL/gc_hal_eglplatform.h +@@ -341,14 +341,11 @@ typedef Pixmap HALNativePixmapType; + /* Rename some badly named X defines. */ + #ifdef Status + # define XStatus int +-# undef Status + #endif + #ifdef Always + # define XAlways 2 +-# undef Always + #endif + #ifdef CurrentTime +-# undef CurrentTime + # define XCurrentTime 0 + #endif + +-- +1.8.1 + diff --git a/recipes/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q/gc_wayland_protocol.pc b/recipes/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q/gc_wayland_protocol.pc new file mode 100644 index 0000000..f4610ea --- /dev/null +++ b/recipes/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q/gc_wayland_protocol.pc @@ -0,0 +1,10 @@ +prefix=/usr +exec_prefix=${prefix} +libdir=${exec_prefix}/lib +includedir=${prefix}/include + +Name: gc_wayland_protocol +Description: Vivante Wayland Protocol Extension Library +Version: 0.1 +Cflags: -I${includedir} +Libs: -L${libdir} -lgc_wayland_protocol diff --git a/recipes/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q/glesv1_cm.pc b/recipes/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q/glesv1_cm.pc new file mode 100644 index 0000000..d97b067 --- /dev/null +++ b/recipes/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q/glesv1_cm.pc @@ -0,0 +1,12 @@ +prefix=/usr +exec_prefix=${prefix} +libdir=/usr/lib +includedir=/usr/include + +Name: glesv1_cm +Description: Vivante OpenGL ES 1.1 CM library +Requires.private: +Version: 8.0 +Libs: -L${libdir} -lGLESv1_CM -lEGL -lGAL +Libs.private: -lm -lpthread -ldl +Cflags: -I${includedir} diff --git a/recipes/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q/glesv1_cm_x11.pc b/recipes/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q/glesv1_cm_x11.pc new file mode 100644 index 0000000..e801633 --- /dev/null +++ b/recipes/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q/glesv1_cm_x11.pc @@ -0,0 +1,12 @@ +prefix=/usr +exec_prefix=${prefix} +libdir=/usr/lib +includedir=/usr/include + +Name: glesv1_cm +Description: Vivante OpenGL ES 1.1 CM library +Requires.private: libdrm x11 xext xdamage xfixes xcb +Version: 8.0 +Libs: -L${libdir} -lGLESv1_CM -lEGL -lGAL +Libs.private: -lm -lpthread -ldl +Cflags: -I${includedir} diff --git a/recipes/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q/glesv2.pc b/recipes/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q/glesv2.pc new file mode 100644 index 0000000..9be46f2 --- /dev/null +++ b/recipes/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q/glesv2.pc @@ -0,0 +1,12 @@ +prefix=/usr +exec_prefix=${prefix} +libdir=/usr/lib +includedir=/usr/include + +Name: glesv2 +Description: Vivante OpenGL ES 2.0 library +Requires.private: +Version: 8.0 +Libs: -L${libdir} -lGLESv2 -lEGL -lGAL +Libs.private: -lpthread -lrt +Cflags: -I${includedir} diff --git a/recipes/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q/glesv2_x11.pc b/recipes/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q/glesv2_x11.pc new file mode 100644 index 0000000..57ad807 --- /dev/null +++ b/recipes/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q/glesv2_x11.pc @@ -0,0 +1,12 @@ +prefix=/usr +exec_prefix=${prefix} +libdir=/usr/lib +includedir=/usr/include + +Name: glesv2 +Description: Vivante OpenGL ES 2.0 library +Requires.private: libdrm x11 xext xdamage xfixes xcb +Version: 8.0 +Libs: -L${libdir} -lGLESv2 -lEGL -lGAL +Libs.private: -lpthread -lrt +Cflags: -I${includedir} diff --git a/recipes/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q/vg.pc b/recipes/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q/vg.pc new file mode 100644 index 0000000..7c00def --- /dev/null +++ b/recipes/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q/vg.pc @@ -0,0 +1,12 @@ +prefix=/usr +exec_prefix=${prefix} +libdir=/usr/lib +includedir=/usr/include + +Name: vg +Description: Vivante OpenVG 1.1 library +Requires.private: +Version: 8.0 +Libs: -L${libdir} -lOpenVG -lEGL -lGAL +Libs.private: -lpthread -lrt +Cflags: -I${includedir} diff --git a/recipes/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q/vg_x11.pc b/recipes/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q/vg_x11.pc new file mode 100644 index 0000000..94fb91e --- /dev/null +++ b/recipes/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q/vg_x11.pc @@ -0,0 +1,12 @@ +prefix=/usr +exec_prefix=${prefix} +libdir=/usr/lib +includedir=/usr/include + +Name: vg +Description: Vivante OpenVG 1.1 library +Requires.private: libdrm x11 xext xdamage xfixes xcb +Version: 8.0 +Libs: -L${libdir} -lOpenVG -lEGL -lGAL +Libs.private: -lpthread -lrt +Cflags: -I${includedir} diff --git a/recipes/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q/wayland-egl.pc b/recipes/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q/wayland-egl.pc new file mode 100644 index 0000000..ba1b898 --- /dev/null +++ b/recipes/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q/wayland-egl.pc @@ -0,0 +1,10 @@ +prefix=/usr +exec_prefix=${prefix} +libdir=${exec_prefix}/lib +includedir=${prefix}/include + +Name: wayland-egl +Description: Bind the driver EGL to the Wayland API +Version: 1.0.0 +Libs: -L${libdir} -lEGL +Cflags: -I${includedir} diff --git a/recipes/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q/wayland-viv.pc b/recipes/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q/wayland-viv.pc new file mode 100644 index 0000000..3fdedd0 --- /dev/null +++ b/recipes/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q/wayland-viv.pc @@ -0,0 +1,10 @@ +prefix=/usr +exec_prefix=${prefix} +libdir=${exec_prefix}/lib +includedir=${prefix}/include + +Name: Wayland Vivante Lib +Description: Wayland server side library for Vivante's EGL driver +Version: 0.1 +Cflags: -I${includedir}/wayland-viv +Libs: -L${libdir} -lwayland-viv diff --git a/recipes/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q_3.10.9-1.0.0-hfp.bb b/recipes/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q_3.10.9-1.0.0-hfp.bb new file mode 100644 index 0000000..5c7727b --- /dev/null +++ b/recipes/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q_3.10.9-1.0.0-hfp.bb @@ -0,0 +1,11 @@ +# Copyright (C) 2013 Freescale Semiconductor +# Released under the MIT license (see COPYING.MIT for the terms) + +require gpu-viv-bin-mx6q.inc + +SRC_URI[md5sum] = "52f5ebbb6a9b5d0eafdb952246de584e" +SRC_URI[sha256sum] = "8b0386e13d4a7c770f8bc8e7a6119629c5ed379488dd5ef635bc92353f906003" + +PACKAGE_FP_TYPE = "hardfp" + +RDEPENDS_libgl-mx6-dev = "" -- cgit v1.2.3-54-g00ecf