From fb42b8ed430e2bfa01c4c08e4952378697e3cb11 Mon Sep 17 00:00:00 2001 From: Tom Hochstein Date: Thu, 22 Sep 2022 12:47:57 -0500 Subject: imx-gpu-viv: Use FILES variable for VDK and Vulkan removal The removal of the libvdk-imx and libvulkan-imx components is properly handled with the existing FILES variables instead of with an incomplete hard-coded list. Signed-off-by: Tom Hochstein (cherry picked from commit 4e2846e9cce900697f850fa092bc41a1cc5b9d4a) --- recipes-graphics/imx-gpu-viv/imx-gpu-viv-6.inc | 29 ++++++++++++++------------ 1 file changed, 16 insertions(+), 13 deletions(-) diff --git a/recipes-graphics/imx-gpu-viv/imx-gpu-viv-6.inc b/recipes-graphics/imx-gpu-viv/imx-gpu-viv-6.inc index 055ce2632..0d90397ef 100644 --- a/recipes-graphics/imx-gpu-viv/imx-gpu-viv-6.inc +++ b/recipes-graphics/imx-gpu-viv/imx-gpu-viv-6.inc @@ -205,8 +205,10 @@ do_install () { # Framebuffer backend for i.MX 8 and beyond install -m 0644 ${S}/gpu-core/usr/lib/pkgconfig/egl.pc ${D}${libdir}/pkgconfig/egl.pc cp -r ${S}/gpu-core/usr/lib/wayland/* ${D}${libdir} + for f in ${FILES:libvdk-imx} ${FILES:libvdk-imx-dev}; do + rm -rf ${D}/$f + done rm -rf \ - ${D}${libdir}/libVDK.so* \ ${D}/opt/viv_samples/es20 \ ${D}/opt/viv_samples/tiger \ ${D}/opt/viv_samples/vdk @@ -221,18 +223,19 @@ do_install () { install -m 0644 ${S}/gpu-core/etc/Vivante.icd ${D}${sysconfdir}/OpenCL/vendors/Vivante.icd if [ "${IS_MX8}" = "1" ]; then - if [ -n "${PACKAGES_VULKAN}" ]; then - # Rename the vulkan implementation library which is wrapped by the vulkan-loader - # library of the same name - MAJOR=${LIBVULKAN_VERSION_MAJOR} - FULL=${LIBVULKAN_VERSION} - mv ${D}${libdir}/libvulkan.so.$FULL ${D}${libdir}/libvulkan_VSI.so.$FULL - patchelf --set-soname libvulkan_VSI.so.$MAJOR ${D}${libdir}/libvulkan_VSI.so.$FULL - rm ${D}${libdir}/libvulkan.so.$MAJOR ${D}${libdir}/libvulkan.so - ln -s libvulkan_VSI.so.$FULL ${D}${libdir}/libvulkan_VSI.so.$MAJOR - ln -s libvulkan_VSI.so.$FULL ${D}${libdir}/libvulkan_VSI.so - else - rm -f ${D}${libdir}/libvulkan.so* ${D}${libdir}/libSPIRV_viv${SOLIBS}* + # Rename the vulkan implementation library which is wrapped by the vulkan-loader + # library of the same name + MAJOR=${LIBVULKAN_VERSION_MAJOR} + FULL=${LIBVULKAN_VERSION} + mv ${D}${libdir}/libvulkan.so.$FULL ${D}${libdir}/libvulkan_VSI.so.$FULL + patchelf --set-soname libvulkan_VSI.so.$MAJOR ${D}${libdir}/libvulkan_VSI.so.$FULL + rm ${D}${libdir}/libvulkan.so.$MAJOR ${D}${libdir}/libvulkan.so + ln -s libvulkan_VSI.so.$FULL ${D}${libdir}/libvulkan_VSI.so.$MAJOR + ln -s libvulkan_VSI.so.$FULL ${D}${libdir}/libvulkan_VSI.so + if [ -z "${PACKAGES_VULKAN}" ]; then + for f in ${FILES:libvulkan-imx} ${FILES:libvulkan-imx-dev}; do + rm -rf ${D}$f + done fi fi -- cgit v1.2.3-54-g00ecf From 86030a339e6c09f3d08828de757841e5dd25c9e7 Mon Sep 17 00:00:00 2001 From: Tom Hochstein Date: Thu, 22 Sep 2022 12:53:01 -0500 Subject: imx-gpu-viv: Drop SOC condition on FILES:libgbm-imx* The FILES variable should always specify the components regardless of whether those components work for the SOC. Signed-off-by: Tom Hochstein (cherry picked from commit 6ea6800903c149b9c6297a40896ca206f74fa1cd) --- recipes-graphics/imx-gpu-viv/imx-gpu-viv-6.inc | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/recipes-graphics/imx-gpu-viv/imx-gpu-viv-6.inc b/recipes-graphics/imx-gpu-viv/imx-gpu-viv-6.inc index 0d90397ef..6cc636f0a 100644 --- a/recipes-graphics/imx-gpu-viv/imx-gpu-viv-6.inc +++ b/recipes-graphics/imx-gpu-viv/imx-gpu-viv-6.inc @@ -302,9 +302,9 @@ INSANE_SKIP:libgal-imx += "build-deps" FILES:libvsc-imx = "${libdir}/libVSC${SOLIBS}" -FILES:libgbm-imx:mx8-nxp-bsp = "${libdir}/libgbm*${REALSOLIBS} ${libdir}/libgbm${SOLIBSDEV} ${libdir}/libgbm_viv${SOLIBSDEV}" -FILES:libgbm-imx-dev:mx8-nxp-bsp = "${libdir}/pkgconfig/gbm.pc ${includedir}/gbm.h" -RDEPENDS:libgbm-imx:append:mx8-nxp-bsp = " libdrm" +FILES:libgbm-imx = "${libdir}/libgbm*${REALSOLIBS} ${libdir}/libgbm${SOLIBSDEV} ${libdir}/libgbm_viv${SOLIBSDEV}" +FILES:libgbm-imx-dev = "${libdir}/pkgconfig/gbm.pc ${includedir}/gbm.h" +RDEPENDS:libgbm-imx:append = " libdrm" INSANE_SKIP:libgbm-imx += "dev-so" FILES:libvulkan-imx = "${libdir}/libvulkan_VSI${REALSOLIBS} ${libdir}/libSPIRV_viv${SOLIBS}" -- cgit v1.2.3-54-g00ecf From 19cab66e69a2e95728d18bce0949eed885e16071 Mon Sep 17 00:00:00 2001 From: Tom Hochstein Date: Thu, 22 Sep 2022 13:16:18 -0500 Subject: imx-gpu-viv: Remove OpenCL and OpenVX from unsupported SOCs OpenCL and OpenVX components are provided for SOCs that are not supported. Fix this by removing them from the PACKAGES variable and from the install. Signed-off-by: Tom Hochstein (cherry picked from commit 09e2ce31195867024d271eefea9891b94b7d20dd) --- recipes-graphics/imx-gpu-viv/imx-gpu-viv-6.inc | 38 ++++++++++++++++++++------ 1 file changed, 30 insertions(+), 8 deletions(-) diff --git a/recipes-graphics/imx-gpu-viv/imx-gpu-viv-6.inc b/recipes-graphics/imx-gpu-viv/imx-gpu-viv-6.inc index 6cc636f0a..474ddf359 100644 --- a/recipes-graphics/imx-gpu-viv/imx-gpu-viv-6.inc +++ b/recipes-graphics/imx-gpu-viv/imx-gpu-viv-6.inc @@ -71,13 +71,13 @@ PACKAGECONFIG ?= "" PACKAGECONFIG[valgrind] = "" # Note : If you add a package here, to prevent a naming conflict see the python_anonymous() futher below -PACKAGES =+ "libclc-imx libclc-imx-dev \ +PACKAGES =+ " \ 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 \ + ${PACKAGES_OPENCL} \ libopenvg-imx libopenvg-imx-dev \ libvdk-imx libvdk-imx-dev \ libegl-imx libegl-imx-dev \ @@ -87,11 +87,20 @@ PACKAGES =+ "libclc-imx libclc-imx-dev \ imx-gpu-viv-tools \ imx-gpu-viv-demos \ ${PACKAGES_VULKAN} \ - libopenvx-imx libopenvx-imx-dev \ + ${PACKAGES_OPENVX} \ libnn-imx \ " -PACKAGES_GBM = "" -PACKAGES_GBM:mx8-nxp-bsp = "libgbm-imx libgbm-imx-dev" + +PACKAGES_GBM = "" +PACKAGES_GBM:mx8-nxp-bsp = "libgbm-imx libgbm-imx-dev" + +PACKAGES_OPENCL = "libopencl-imx libopencl-imx-dev libclc-imx libclc-imx-dev" +PACKAGES_OPENCL:mx7-nxp-bsp = "" +PACKAGES_OPENCL:mx8mm-nxp-bsp = "" + +PACKAGES_OPENVX = "" +PACKAGES_OPENVX:mx8qm-nxp-bsp = "libopenvx-imx libopenvx-imx-dev" + PACKAGES_VULKAN = "" PACKAGES_VULKAN:aarch64 = "libvulkan-imx libvulkan-imx-dev" PACKAGES_VULKAN:mx8mm-nxp-bsp = "" @@ -218,9 +227,22 @@ do_install () { cp ${S}/gpu-core/usr/lib/fb/libVDK.so.1.2.0 ${D}${libdir}/libVDK-fb.so.1.2.0 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 + if [ -z "${PACKAGES_OPENCL}" ]; then + for f in ${FILES:libopencl-imx} ${FILES:libopencl-imx-dev} ${FILES:libclc-imx} ${FILES:libclc-imx-dev}; do + rm -rf ${D}$f + done + rm -rf ${D}/opt/viv_samples/cl11 + else + # 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 + fi + + if [ -z "${PACKAGES_OPENVX}" ]; then + for f in ${FILES:libopenvx-imx} ${FILES:libopenvx-imx-dev}; do + rm -rf ${D}$f + done + fi if [ "${IS_MX8}" = "1" ]; then # Rename the vulkan implementation library which is wrapped by the vulkan-loader -- cgit v1.2.3-54-g00ecf