recipes-graphics: imx-gpu-viv: Update recipes to new BSP release imx_5.4.47_2.2.0

Includes:
imx-gpu-viv-6.inc: Update files in libopencl-imx package

    Fix issue:
    ERROR: imx-dpu-g2d-1.8.9-r0 do_package_qa: QA Issue: /usr/lib/libg2d-dpu.so
    contained in package imx-dpu-g2d requires libOpenCL.so.1()(64bit), but no
    providers found in RDEPENDS_imx-dpu-g2d? [file-rdeps]

    Signed-off-by: Yuqing Zhu <carol.zhu@nxp.com>
imx-gpu-viv: Update library installation

    The packaging model has been reworked so now we can simply
    copy the libraries.

    Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com>
imx-gpu-viv: Integrate recipe updates

    Integrate our local recipe updates into the
    copied include file.

    Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com>
imx-gpu-viv: Copy include file from meta-freescale

    Changes are extensive enough now that it makes sense to
    simply copy what is upstream.

    Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com>

kernel-module-imx-gpu-viv: Switch branch to imx_5.4.47_2.2.0

    Signed-off-by: i.MX Yocto Project Build <imx.build@nxp.com>
imx-gpu-viv: remove wayland as a requirement for i.MX8 platforms

    Based on commit ed2c4974 ("imx-gpu-viv: remove wayland as a requirement for
    i.MX8 platforms"), this commit removes the requeriment of wayland as a backend
    for the i.MX8 platforms to build framebuffer images.

    https://jira.digi.com/browse/DEL-7013

    Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>

imx-gpu-viv-v6: remove kernel-module-imx-gpu-viv dependency

    This dependency was originally removed in commit
    eafa8684a3, but it was erroneously put back in
    commit 793e901678 when updating the recipe using
    the one in meta-fsl-bsp-release as reference.

    Instead of removing the line containing the dependency, in order to avoid the
    same situation from happening in the future,  comment it out and add an
    explanation about why we're removing it.

    Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>

Signed-off-by: Hector Bujanda <Hector.Bujanda@digi.com>
This commit is contained in:
Hector Bujanda 2020-11-02 13:19:23 +01:00
parent 2d4e75f277
commit 2b5dd7ec14
6 changed files with 387 additions and 87 deletions

View File

@ -0,0 +1,371 @@
# Copyright (C) 2012-2016 Freescale Semiconductor
# Copyright (C) 2012-2018 O.S. Systems Software LTDA.
# Copyright 2017-2019 NXP
# Released under the MIT license (see COPYING.MIT for the terms)
DESCRIPTION = "GPU driver and apps for i.MX"
SECTION = "libs"
LICENSE = "Proprietary"
LIC_FILES_CHKSUM = "file://COPYING;md5=80c0478f4339af024519b3723023fe28"
DEPENDS += " \
${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'wayland', \
bb.utils.contains('DISTRO_FEATURES', 'x11', 'virtual/libx11 libxdamage libxext libxfixes', \
'', d), d)} \
"
DEPENDS += " \
${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'libxcb libxshmfence libxxf86vm', \
'', d)} \
"
DEPENDS_append_imxdrm = " libdrm wayland"
DEPENDS_append_mx8 = " patchelf-native"
# imx-gpu-viv does not provide everything it needs to for virtual/libgl
# on x11 backend or on Wayland backend with XWayland support.
# We depend on mesa to fill in what is missing.
DEPENDS += "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'mesa', '', d)}"
EXTRA_PROVIDES = ""
EXTRA_PROVIDES_append_imxgpu3d = " \
virtual/libgl \
virtual/libgles1 \
virtual/libgles2 \
"
EXTRA_PROVIDES_append_mx8 = " \
virtual/libgbm \
"
EXTRA_PROVIDES_append_mx8qm = " \
virtual/libopenvx \
"
PROVIDES_OPENVX = ""
PROVIDES_OPENVX_mx8 = "virtual/libopenvx"
PROVIDES_OPENVX_mx8mm = ""
PROVIDES += " \
imx-gpu-viv \
libgal-imx \
opencl-headers \
virtual/egl \
virtual/libopenvg \
virtual/opencl-headers \
virtual/opencl-icd \
${EXTRA_PROVIDES} \
${PROVIDES_OPENVX} \
"
RPROVIDES_${PN}_imxgpu3d += "imx-gpu-viv"
PE = "1"
inherit fsl-eula-unpack distro_features_check
REQUIRED_DISTRO_FEATURES_mx8 = "wayland"
SRC_URI = "${FSL_MIRROR}/${BPN}-${PV}.bin;fsl-eula=true"
# Note : If you add a package here, to prevent a naming conflict see the python_anonymous() futher below
IMX_PACKAGES_GBM = ""
IMX_PACKAGES_GBM_mx8 = "libgbm-imx libgbm-imx-dev"
PACKAGES =+ "libclc-imx libclc-imx-dev \
libgl-imx libgl-imx-dev \
libgles1-imx libgles1-imx-dev \
libgles2-imx libgles2-imx-dev \
libgles3-imx-dev \
libglslc-imx libglslc-imx-dev \
libopencl-imx libopencl-imx-dev \
libopenvg-imx libopenvg-imx-dev \
libvdk-imx libvdk-imx-dev \
libegl-imx libegl-imx-dev \
libgal-imx libgal-imx-dev \
libvivante-dri-imx \
libvsc-imx \
${IMX_PACKAGES_GBM} \
libwayland-viv-imx libwayland-viv-imx-dev \
libgc-wayland-protocol-imx libgc-wayland-protocol-imx-dev \
imx-gpu-viv-tools \
imx-gpu-viv-demos \
libvulkan-imx libvulkan-imx-dev \
libopenvx-imx libopenvx-imx-dev \
libnn-imx \
"
python __anonymous () {
has_vivante_kernel_driver_support = (d.getVar('MACHINE_HAS_VIVANTE_KERNEL_DRIVER_SUPPORT') or '0')
if has_vivante_kernel_driver_support != '1':
raise bb.parse.SkipPackage('The kernel of machine needs to have Vivante kernel driver support for this recipe to be used.')
}
USE_X11 = "${@bb.utils.contains("DISTRO_FEATURES", "x11", "yes", "no", d)}"
USE_WL = "${@bb.utils.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}"
python __anonymous() {
# 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.
packages = d.getVar('PACKAGES').split()
for p in packages:
d.appendVar("INSANE_SKIP_%s" % p, " ldflags")
# For the packages that make up the OpenGL interfaces, inject variables so that
# they don't get Debian-renamed (which would remove the -imx suffix).
for p in (("libegl", "libegl1"), ("libgl", "libgl1"),
("libgles1", "libglesv1-cm1"), ("libgles2", "libglesv2-2"),
("libgles3",), ("libgbm",)):
fullp = p[0] + "-imx"
pkgs = "".join(' %s' % i for i in 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)
}
IS_MX6SL = "0"
IS_MX6SL_mx6sl = "1"
IS_MX8 = "0"
IS_MX8_mx8 = "1"
PACKAGE_FP_TYPE = "hardfp"
HAS_GBM = "false"
HAS_GBM_mx8 = "true"
GLES3_HEADER_REMOVALS = "gl31.h gl32.h"
GLES3_HEADER_REMOVALS_mx8mq = "gl32.h"
GLES3_HEADER_REMOVALS_mx8mn = "gl32.h"
GLES3_HEADER_REMOVALS_mx8mp = "gl32.h"
GLES3_HEADER_REMOVALS_mx8qxp = ""
GLES3_HEADER_REMOVALS_mx8qm = ""
do_install () {
install -d ${D}${libdir}
install -d ${D}${includedir}
install -d ${D}${bindir}
cp -P ${S}/gpu-core/usr/lib/*.so* ${D}${libdir}
cp -r ${S}/gpu-core/usr/include/* ${D}${includedir}
cp -r ${S}/gpu-demos/opt ${D}
cp -r ${S}/gpu-tools/gmem-info/usr/bin/* ${D}${bindir}
# Use vulkan header from vulkan-headers recipe to support vkmark
rm -rf ${D}${includedir}/vulkan/
install -d ${D}${libdir}/pkgconfig
if ${HAS_GBM}; then
install -m 0644 ${S}/gpu-core/usr/lib/pkgconfig/gbm.pc ${D}${libdir}/pkgconfig/gbm.pc
fi
# The preference order, based in DISTRO_FEATURES, is Wayland (with or without X11), X11 and fb
if [ "${USE_WL}" = "yes" ]; then
backend=wayland
install -m 0644 ${S}/gpu-core/usr/lib/pkgconfig/egl_wayland.pc ${D}${libdir}/pkgconfig/egl.pc
install -m 0644 ${S}/gpu-core/usr/lib/pkgconfig/glesv1_cm.pc ${D}${libdir}/pkgconfig/glesv1_cm.pc
install -m 0644 ${S}/gpu-core/usr/lib/pkgconfig/glesv2.pc ${D}${libdir}/pkgconfig/glesv2.pc
install -m 0644 ${S}/gpu-core/usr/lib/pkgconfig/vg.pc ${D}${libdir}/pkgconfig/vg.pc
if [ "${USE_X11}" = "yes" ]; then
cp -r ${S}/gpu-core/usr/lib/dri ${D}${libdir}
fi
elif [ "${USE_X11}" = "yes" ]; then
cp -r ${S}/gpu-core/usr/lib/dri ${D}${libdir}
backend=x11
install -m 0644 ${S}/gpu-core/usr/lib/pkgconfig/gl_x11.pc ${D}${libdir}/pkgconfig/gl.pc
install -m 0644 ${S}/gpu-core/usr/lib/pkgconfig/egl_x11.pc ${D}${libdir}/pkgconfig/egl.pc
install -m 0644 ${S}/gpu-core/usr/lib/pkgconfig/glesv1_cm_x11.pc ${D}${libdir}/pkgconfig/glesv1_cm.pc
install -m 0644 ${S}/gpu-core/usr/lib/pkgconfig/glesv2_x11.pc ${D}${libdir}/pkgconfig/glesv2.pc
install -m 0644 ${S}/gpu-core/usr/lib/pkgconfig/vg_x11.pc ${D}${libdir}/pkgconfig/vg.pc
else
install -m 0644 ${S}/gpu-core/usr/lib/pkgconfig/glesv1_cm.pc ${D}${libdir}/pkgconfig/glesv1_cm.pc
install -m 0644 ${S}/gpu-core/usr/lib/pkgconfig/glesv2.pc ${D}${libdir}/pkgconfig/glesv2.pc
install -m 0644 ${S}/gpu-core/usr/lib/pkgconfig/vg.pc ${D}${libdir}/pkgconfig/vg.pc
# Regular framebuffer
install -m 0644 ${S}/gpu-core/usr/lib/pkgconfig/egl_linuxfb.pc ${D}${libdir}/pkgconfig/egl.pc
backend=fb
fi
# Install Vendor ICDs for OpenCL's installable client driver loader (ICDs Loader)
install -d ${D}${sysconfdir}/OpenCL/vendors/
install -m 0644 ${S}/gpu-core/etc/Vivante.icd ${D}${sysconfdir}/OpenCL/vendors/Vivante.icd
# Handle backend specific drivers
cp -r ${S}/gpu-core/usr/lib/${backend}/* ${D}${libdir}
if [ "${USE_WL}" = "yes" ]; then
# Special case for libVDK on Wayland backend, deliver fb library as well.
cp ${S}/gpu-core/usr/lib/fb/libVDK.so.1.2.0 ${D}${libdir}/libVDK-fb.so.1.2.0
fi
if [ "${IS_MX8}" = "1" ]; then
# Rename our libvulkan.so so it doesn't clash with vulkan-loader libvulkan.so
mv ${D}${libdir}/libvulkan.so.1.1.6 ${D}${libdir}/libvulkan_VSI.so.1.1.6
patchelf --set-soname libvulkan_VSI.so.1 ${D}${libdir}/libvulkan_VSI.so.1.1.6
ln -sf libvulkan_VSI.so.1.1.6 ${D}${libdir}/libvulkan_VSI.so.1
ln -sf libvulkan_VSI.so.1.1.6 ${D}${libdir}/libvulkan_VSI.so
rm ${D}${libdir}/libvulkan.so*
fi
for header in ${GLES3_HEADER_REMOVALS}; do
rm -f ${D}${includedir}/GLES3/${header}
done
# skip packaging wayland libraries if no support is requested
if [ "${USE_WL}" = "no" ]; then
find ${D}${libdir} -name "libgc_wayland_protocol.*" -exec rm '{}' ';'
find ${D}${libdir} -name "libwayland-viv.*" -exec rm '{}' ';'
fi
# FIXME: MX6SL does not have 3D support; hack it for now
if [ "${IS_MX6SL}" = "1" ]; then
rm -rf ${D}${libdir}/libCLC* ${D}${includedir}/CL \
\
${D}${libdir}/libGL* ${D}${includedir}/GL* ${D}${libdir}/pkgconfig/gl.pc \
\
${D}${libdir}/libGLES* ${D}${libdir}/pkgconfig/gles*.pc \
\
${D}${libdir}/libOpenCL* ${D}${includedir}/CL \
\
${D}${libdir}/libOpenVG.3d.so \
\
${D}${libdir}/libVivanteOpenCL.so \
\
${D}/opt/viv_samples/vdk \
${D}/opt/viv_samples/es20 ${D}/opt/viv_samples/cl11
ln -sf libOpenVG.2d.so ${D}${libdir}/libOpenVG.so
fi
find ${D}${libdir} -type f -exec chmod 644 {} \;
find ${D}${includedir} -type f -exec chmod 644 {} \;
chown -R root:root "${D}"
}
ALLOW_EMPTY_${PN} = "1"
# FIXME: Remove the following lines after adding libopenvx package
INSANE_SKIP_imx-gpu-viv-dev += "dev-elf"
INSANE_SKIP_libclc-imx += "dev-deps"
FILES_libclc-imx = "${libdir}/libCLC${SOLIBS}"
FILES_libclc-imx-dev = "${includedir}/CL ${libdir}/libCLC${SOLIBSDEV}"
# libEGL.so is used by some demo apps from Freescale
INSANE_SKIP_libegl-imx += "dev-so"
FILES_libegl-imx = "${libdir}/libEGL${REALSOLIBS} ${libdir}/libEGL${SOLIBSDEV} "
FILES_libegl-imx-dev = "${includedir}/EGL ${includedir}/KHR ${libdir}/pkgconfig/egl.pc"
FILES_libgal-imx = "${libdir}/libGAL${SOLIBS} ${libdir}/libGAL_egl${SOLIBS}"
FILES_libgal-imx-dev = "${libdir}/libGAL${SOLIBSDEV} ${includedir}/HAL"
RDEPENDS_libgal-imx += "${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'valgrind', '', d)}"
RPROVIDES_libgal-imx += "libgal-imx"
INSANE_SKIP_libgal-imx += "build-deps"
FILES_libvsc-imx = "${libdir}/libVSC${SOLIBS}"
FILES_libgbm-imx_mx8 = "${libdir}/libgbm*${SOLIBS}"
FILES_libgbm-imx-dev_mx8 = "${libdir}/pkgconfig/gbm.pc ${includedir}/gbm.h ${libdir}/libgbm${SOLIBSDEV}"
RDEPENDS_libgbm-imx_append_mx8 = " libdrm"
FILES_libvulkan-imx = "${libdir}/libvulkan_VSI${SOLIBS} ${libdir}/libvulkan_VSI${REALSOLIBS} ${libdir}/libSPIRV_viv${SOLIBS}"
FILES_libvulkan-imx-dev = "${includedir}/vulkan ${libdir}/libvulkan_VSI${SOLIBSDEV}"
INSANE_SKIP_libvulkan-imx += "dev-so"
FILES_libopenvx-imx = "${libdir}/libOpenVX${SOLIBS} ${libdir}/libOpenVX${REALSOLIBS} ${libdir}/libOvx*${SOLIBS} ${libdir}/libOpenVXC${SOLIBS} ${libdir}/libOpenVXU${SOLIBS}"
FILES_libopenvx-imx-dev = "${includedir}/VX ${libdir}/libOpenVX${SOLIBSDEV}"
RDEPENDS_libopenvx-imx = "libnn-imx"
INSANE_SKIP_libopenvx-imx += "dev-so dev-deps"
FILES_libgl-imx = "${libdir}/libGL${REALSOLIBS}"
FILES_libgl-imx-dev = "${libdir}/libGL${SOLIBSDEV} ${includedir}/GL"
INSANE_SKIP_libgl-imx += "file-rdeps"
# libEGL needs to open libGLESv1.so
INSANE_SKIP_libgles1-imx += "dev-so"
FILES_libgles1-imx = "${libdir}/libGLESv1*${REALSOLIBS} ${libdir}/libGLESv1*${SOLIBS} ${libdir}/libGLES_*${REALSOLIBS} ${libdir}/libGLES_*${SOLIBS}"
FILES_libgles1-imx-dev = "${includedir}/GLES ${libdir}/libGLESv1*${SOLIBS} ${libdir}/libGLES_*${SOLIBSDEV} ${libdir}/pkgconfig/glesv1_cm.pc"
RPROVIDES_libgles1-imx = "libgles-imx"
RPROVIDES_libgles1-imx-dev = "libgles-imx-dev"
# libEGL needs to open libGLESv2.so
INSANE_SKIP_libgles2-imx += "dev-so"
FILES_libgles2-imx = "${libdir}/libGLESv2${REALSOLIBS} ${libdir}/libGLESv2${SOLIBS}"
FILES_libgles2-imx-dev = "${includedir}/GLES2 ${libdir}/libGLESv2${SOLIBSDEV} ${libdir}/pkgconfig/glesv2.pc"
RDEPENDS_libgles2-imx = "libglslc-imx"
FILES_libgles3-imx-dev = "${includedir}/GLES3"
# as long as there is no libgles3: ship libgles3-dev along with
# libgles2-dev - otherwise GLES3 headers have to be added manually
RDEPENDS_libgles2-imx-dev += "libgles3-imx-dev"
FILES_libglslc-imx = "${libdir}/libGLSLC${SOLIBS}"
FILES_libglslc-imx-dev = "${includedir}/CL ${libdir}/libGLSLC${SOLIBSDEV}"
FILES_libopencl-imx = "${libdir}/libOpenCL${SOLIBS} \
${libdir}/libOpenCL${REALSOLIBS} \
${libdir}/libVivanteOpenCL${SOLIBS} \
${libdir}/libLLVM_viv${SOLIBS} \
${sysconfdir}/OpenCL/vendors/Vivante.icd"
FILES_libopencl-imx-dev = "${includedir}/CL ${libdir}/libOpenCL${SOLIBSDEV}"
RDEPENDS_libopencl-imx= "libclc-imx"
INSANE_SKIP_libopencl-imx += "dev-so dev-deps"
FILES_libnn-imx = "${libdir}/libNN*${SOLIBS}"
INSANE_SKIP_libopenvg-imx += "dev-so"
FILES_libopenvg-imx = "${libdir}/libOpenVG*${REALSOLIBS}"
FILES_libopenvg-imx-dev = "${includedir}/VG ${libdir}/libOpenVG*${SOLIBSDEV} ${libdir}/pkgconfig/vg.pc"
RDEPENDS_libopenvg-imx += "${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'systemd-gpuconfig', '', d)}"
FILES_libvdk-imx = "${libdir}/libVDK*${REALSOLIBS}"
FILES_libvdk-imx-dev = "${includedir}/*vdk*.h ${libdir}/libVDK${SOLIBSDEV}"
INSANE_SKIP_libvdk-imx += "dev-so"
FILES_libvivante-dri-imx = "${libdir}/dri/vivante_dri.so"
RDEPENDS_libvivante-dri-imx = "libdrm"
INSANE_SKIP_libwayland-viv-imx += "dev-so"
FILES_libwayland-viv-imx = "${libdir}/libwayland-viv${REALSOLIBS} ${libdir}/libwayland-viv${SOLIBS}"
FILES_libwayland-viv-imx-dev = "${includedir}/wayland-viv ${libdir})/libwayland-viv${SOLIBSDEV} ${libdir}/pkgconfig/wayland-viv.pc"
RPROVIDES_libwayland-viv-imx += "${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'xf86-video-imx-vivante', '', d)}"
INSANE_SKIP_libgc-wayland-protocol-imx += "dev-so"
FILES_libgc-wayland-protocol-imx = "${libdir}/libgc_wayland_protocol${REALSOLIBS} ${libdir}/libgc_wayland_protocol${SOLIBS}"
FILES_libgc-wayland-protocol-imx-dev = "${libdir}/libgc_wayland_protocol${SOLIBSDEV} ${libdir}/pkgconfig/gc_wayland_protocol.pc"
FILES_imx-gpu-viv-tools = "${bindir}/gmem_info"
FILES_imx-gpu-viv-demos = "/opt"
INSANE_SKIP_imx-gpu-viv-demos += "rpaths dev-deps"
# COMPATIBLE_MACHINE = "(mx6q|mx6dl|mx6sx|mx6sl|mx8)"
# Digi custom change: we include the imx-gpu-viv driver as built-in in the
# kernel, so this dependency isn't necessary
RDEPENDS_libgal-imx_remove = "kernel-module-imx-gpu-viv"
# Remove wayland as a requirement to build framebuffer images
REQUIRED_DISTRO_FEATURES_mx8_remove = "wayland"

View File

@ -1,37 +0,0 @@
require recipes-graphics/imx-gpu-viv/imx-gpu-viv-6.inc
EXTRA_PROVIDES_remove = "virtual/libopenvx"
PROVIDES_OPENVX = ""
PROVIDES_OPENVX_mx8 = "virtual/libopenvx"
PROVIDES_OPENVX_mx8mm = ""
PROVIDES += "${PROVIDES_OPENVX}"
PACKAGES =+ "libnn-imx"
GLES3_HEADER_REMOVALS_mx8mn = "gl32.h"
GLES3_HEADER_REMOVALS_mx8mp = "gl32.h"
FILES_libgbm-imx_mx8 = "${libdir}/libgbm*${SOLIBS}"
FILES_libvulkan-imx_append = " ${libdir}/libvulkan_VSI${REALSOLIBS}"
INSANE_SKIP_libvulkan-imx += "dev-so"
FILES_libopenvx-imx_append = " ${libdir}/libOpenVX${REALSOLIBS} ${libdir}/libOvx*${SOLIBS}"
RDEPENDS_libopenvx-imx = "libnn-imx"
INSANE_SKIP_libopenvx-imx += "dev-so"
FILES_libopencl-imx_append = " ${libdir}/libOpenCL${REALSOLIBS}"
INSANE_SKIP_libopencl-imx += "dev-so"
FILES_libnn-imx = "${libdir}/libNN*${SOLIBS}"
RDEPENDS_libgal-imx += "${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'valgrind', '', d)}"
RDEPENDS_libopenvg-imx += "${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'systemd-gpuconfig', '', d)}"
# Digi custom change: we include the imx-gpu-viv driver as built-in in the
# kernel, so this dependency isn't necessary
RDEPENDS_libgal-imx_remove = "kernel-module-imx-gpu-viv"
# Remove wayland as a requirement to build framebuffer images
REQUIRED_DISTRO_FEATURES_mx8_remove = "wayland"

View File

@ -1,19 +0,0 @@
require imx-gpu-viv-v6.inc
LIC_FILES_CHKSUM = "file://COPYING;md5=228c72f2a91452b8a03c4cab30f30ef9"
# FIXME: Remove this patch when upstream handles backend-specific libGL
SRC_URI += "file://Add-dummy-libgl.patch"
SRC_URI[md5sum] = "cd5e9ba9247aa0da5d97b0f030e2ede1"
SRC_URI[sha256sum] = "9cc4c6594083f5970bc394a698a0a8ed0c7f2a1a753dfbf25cb0be5ab8bdcbd5"
do_install_append() {
if [ "${IS_MX6SL}" != "1" ]; then
if [ "${USE_WL}" = "yes" -o "${USE_X11}" = "yes" ]; then
cp ${S}/gpu-core/usr/lib/libGL-${backend}.so ${D}${libdir}/libGL.so.1.2.0
fi
fi
}
COMPATIBLE_MACHINE = "(mx6q|mx6dl|mx6sx|mx6sl|mx7ulp)"

View File

@ -1,31 +0,0 @@
require imx-gpu-viv-v6.inc
LIC_FILES_CHKSUM = "file://COPYING;md5=228c72f2a91452b8a03c4cab30f30ef9"
SRC_URI[md5sum] = "633029434f0ccc0e8a6b01d92cae95b2"
SRC_URI[sha256sum] = "a295f41a6346c507fc8a677c26ecf9b2f416735e32e6d0734516ef5363027720"
do_install_append() {
if [ "${USE_WL}" = "yes" -o "${USE_X11}" = "yes" ]; then
cp ${S}/gpu-core/usr/lib/libGL-${backend}.so ${D}${libdir}/libGL.so.1.2.0
fi
# Remove the work done by the upstream install for libvulkan so
# we can install the newly versioned library files
rm ${D}${libdir}/libvulkan_VSI.so
# Copy backend-specific library and rename it for use by vulkan-loader
# library of the same name
for i in fb wl x11; do
if [ "$i" = "${backend}" ]; then
mv ${D}${libdir}/libvulkan-${backend}.so.1.1.3 ${D}${libdir}/libvulkan_VSI.so.1.1.3
else
rm ${D}${libdir}/libvulkan-${i}.so.1.1.3
fi
done
patchelf --set-soname libvulkan_VSI.so.1 ${D}${libdir}/libvulkan_VSI.so.1.1.3
rm ${D}${libdir}/libvulkan.so.1 ${D}${libdir}/libvulkan.so
ln -s libvulkan_VSI.so.1.1.3 ${D}${libdir}/libvulkan_VSI.so.1
ln -s libvulkan_VSI.so.1.1.3 ${D}${libdir}/libvulkan_VSI.so
}
COMPATIBLE_MACHINE = "(mx8)"

View File

@ -0,0 +1,8 @@
require imx-gpu-viv-6.inc
LIC_FILES_CHKSUM = "file://COPYING;md5=983e4c77621568488dd902b27e0c2143"
SRC_URI[md5sum] = "163167d49e1667bab3a8a37ea33b7624"
SRC_URI[sha256sum] = "cdec43e45e840fe30e188e3b6f07c44b4a1ceafc315e605c8d278564db5fcbe9"
COMPATIBLE_MACHINE = "(mx6q|mx6dl|mx6sx|mx6sl|mx7ulp)"

View File

@ -0,0 +1,8 @@
require imx-gpu-viv-6.inc
LIC_FILES_CHKSUM = "file://COPYING;md5=983e4c77621568488dd902b27e0c2143"
SRC_URI[md5sum] = "db4c88a19d0c1f7ec2788531822f9144"
SRC_URI[sha256sum] = "b3bd03288106daf3a62d2301d09569292ef6a5c74c761cfa4e41dad85e4bf547"
COMPATIBLE_MACHINE = "(mx8)"