summaryrefslogtreecommitdiffstats
path: root/recipes-graphics/imx-gpu-viv/imx-gpu-viv-6.inc
diff options
context:
space:
mode:
Diffstat (limited to 'recipes-graphics/imx-gpu-viv/imx-gpu-viv-6.inc')
-rw-r--r--recipes-graphics/imx-gpu-viv/imx-gpu-viv-6.inc41
1 files changed, 27 insertions, 14 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 169606c2..0c6e3c81 100644
--- a/recipes-graphics/imx-gpu-viv/imx-gpu-viv-6.inc
+++ b/recipes-graphics/imx-gpu-viv/imx-gpu-viv-6.inc
@@ -1,12 +1,12 @@
1# Copyright (C) 2012-2016 Freescale Semiconductor 1# Copyright (C) 2012-2016 Freescale Semiconductor
2# Copyright (C) 2012-2018 O.S. Systems Software LTDA. 2# Copyright (C) 2012-2018 O.S. Systems Software LTDA.
3# Copyright 2017-2021 NXP 3# Copyright 2017-2023 NXP
4# Released under the MIT license (see COPYING.MIT for the terms) 4# Released under the MIT license (see COPYING.MIT for the terms)
5 5
6DESCRIPTION = "GPU driver and apps for i.MX" 6DESCRIPTION = "GPU driver and apps for i.MX"
7SECTION = "libs" 7SECTION = "libs"
8LICENSE = "Proprietary" 8LICENSE = "Proprietary"
9LIC_FILES_CHKSUM = "file://COPYING;md5=5a0bf11f745e68024f37b4724a5364fe" 9LIC_FILES_CHKSUM = "file://COPYING;md5=ea25d099982d035af85d193c88a1b479"
10 10
11DEPENDS += " \ 11DEPENDS += " \
12 ${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'wayland', \ 12 ${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'wayland', \
@@ -30,15 +30,12 @@ DEPENDS:append:libc-musl = " gcompat"
30PROVIDES += " \ 30PROVIDES += " \
31 imx-gpu-viv \ 31 imx-gpu-viv \
32 libgal-imx \ 32 libgal-imx \
33 opencl-headers \
34 opencl-clhpp \
35 opencl-icd-loader \
36 virtual/egl \ 33 virtual/egl \
37 virtual/libopenvg \ 34 virtual/libopenvg \
38 virtual/opencl-icd \
39 ${EXTRA_PROVIDES} \ 35 ${EXTRA_PROVIDES} \
40" 36"
41EXTRA_PROVIDES = " \ 37EXTRA_PROVIDES = " \
38 ${PROVIDES_OPENCL} \
42 ${PROVIDES_OPENGLES3} \ 39 ${PROVIDES_OPENGLES3} \
43 ${PROVIDES_OPENVX} \ 40 ${PROVIDES_OPENVX} \
44" 41"
@@ -51,6 +48,15 @@ EXTRA_PROVIDES:append:mx8-nxp-bsp = " \
51 virtual/libgbm \ 48 virtual/libgbm \
52" 49"
53 50
51PROVIDES_OPENCL = " \
52 opencl-headers \
53 opencl-clhpp \
54 opencl-icd-loader \
55 virtual/opencl-icd \
56"
57PROVIDES_OPENCL:mx7-nxp-bsp = ""
58PROVIDES_OPENCL:mx8mm-nxp-bsp = ""
59
54PROVIDES_OPENGLES3 = "" 60PROVIDES_OPENGLES3 = ""
55PROVIDES_OPENGLES3:mx8-nxp-bsp = "virtual/libgles3" 61PROVIDES_OPENGLES3:mx8-nxp-bsp = "virtual/libgles3"
56PROVIDES_OPENGLES3:mx8mm-nxp-bsp = "" 62PROVIDES_OPENGLES3:mx8mm-nxp-bsp = ""
@@ -95,13 +101,15 @@ PACKAGES =+ " \
95 ${PACKAGES_VULKAN} \ 101 ${PACKAGES_VULKAN} \
96 ${PACKAGES_OPENVX} \ 102 ${PACKAGES_OPENVX} \
97 libnn-imx \ 103 libnn-imx \
104 libspirv-imx \
98" 105"
99 106
100PACKAGES_GBM = "" 107PACKAGES_GBM = ""
101PACKAGES_GBM:mx8-nxp-bsp = "libgbm-imx libgbm-imx-dev" 108PACKAGES_GBM:mx8-nxp-bsp = "libgbm-imx libgbm-imx-dev"
102 109
103PACKAGES_OPENCL = "libopencl-imx libopencl-imx-dev libclc-imx libclc-imx-dev" 110PACKAGES_OPENCL = "libclc-imx libclc-imx-dev libopencl-imx libopencl-imx-dev"
104PACKAGES_OPENCL:mx7-nxp-bsp = "" 111PACKAGES_OPENCL:mx7-nxp-bsp = ""
112PACKAGES_OPENCL:mx8mm-nxp-bsp = ""
105 113
106PACKAGES_OPENVX = \ 114PACKAGES_OPENVX = \
107 "${@bb.utils.contains("PROVIDES_OPENVX", "virtual/libopenvx", \ 115 "${@bb.utils.contains("PROVIDES_OPENVX", "virtual/libopenvx", \
@@ -109,6 +117,7 @@ PACKAGES_OPENVX = \
109 117
110PACKAGES_VULKAN = "" 118PACKAGES_VULKAN = ""
111PACKAGES_VULKAN:imxvulkan = "libvulkan-imx libvulkan-imx-dev" 119PACKAGES_VULKAN:imxvulkan = "libvulkan-imx libvulkan-imx-dev"
120PACKAGES_VULKAN:mx8mm-nxp-bsp = "libvulkan-imx libvulkan-imx-dev"
112 121
113python __anonymous () { 122python __anonymous () {
114 has_vivante_kernel_driver_support = (d.getVar('MACHINE_HAS_VIVANTE_KERNEL_DRIVER_SUPPORT') or '0') 123 has_vivante_kernel_driver_support = (d.getVar('MACHINE_HAS_VIVANTE_KERNEL_DRIVER_SUPPORT') or '0')
@@ -209,6 +218,9 @@ do_install () {
209 # Install backend-specific drivers 218 # Install backend-specific drivers
210 if [ "${BACKEND}" = "wayland" ]; then 219 if [ "${BACKEND}" = "wayland" ]; then
211 # Wayland backend 220 # Wayland backend
221 if ! ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'true', 'false', d)}; then
222 install -m 0644 ${S}/gpu-core/usr/lib/pkgconfig/gl.pc ${D}${libdir}/pkgconfig/gl.pc
223 fi
212 install -m 0644 ${S}/gpu-core/usr/lib/pkgconfig/egl_wayland.pc ${D}${libdir}/pkgconfig/egl.pc 224 install -m 0644 ${S}/gpu-core/usr/lib/pkgconfig/egl_wayland.pc ${D}${libdir}/pkgconfig/egl.pc
213 cp -r ${S}/gpu-core/usr/lib/wayland/* ${D}${libdir} 225 cp -r ${S}/gpu-core/usr/lib/wayland/* ${D}${libdir}
214 elif [ "${IS_MX8}" != "1" ]; then 226 elif [ "${IS_MX8}" != "1" ]; then
@@ -316,7 +328,6 @@ do_install:append:libc-musl() {
316ALLOW_EMPTY:${PN} = "1" 328ALLOW_EMPTY:${PN} = "1"
317 329
318FILES:libclc-imx = "${libdir}/libCLC${SOLIBS} ${includedir}/CL/cl_viv_vx_ext.h" 330FILES:libclc-imx = "${libdir}/libCLC${SOLIBS} ${includedir}/CL/cl_viv_vx_ext.h"
319FILES:libclc-imx-dev = "${includedir}/CL ${libdir}/libCLC${SOLIBSDEV}"
320 331
321# libEGL.so is used by some demo apps from Freescale 332# libEGL.so is used by some demo apps from Freescale
322INSANE_SKIP:libegl-imx += "dev-so" 333INSANE_SKIP:libegl-imx += "dev-so"
@@ -324,7 +335,7 @@ FILES:libegl-imx = "${libdir}/libEGL${REALSOLIBS} ${libdir}/libEGL${SOLIBSDEV} "
324FILES:libegl-imx-dev = "${includedir}/EGL ${includedir}/KHR ${libdir}/pkgconfig/egl.pc" 335FILES:libegl-imx-dev = "${includedir}/EGL ${includedir}/KHR ${libdir}/pkgconfig/egl.pc"
325 336
326FILES:libgal-imx = "${libdir}/libGAL${SOLIBS} ${libdir}/libGAL_egl${SOLIBS}" 337FILES:libgal-imx = "${libdir}/libGAL${SOLIBS} ${libdir}/libGAL_egl${SOLIBS}"
327FILES:libgal-imx-dev = "${libdir}/libGAL${SOLIBSDEV} ${includedir}/HAL" 338FILES:libgal-imx-dev = "${includedir}/HAL"
328RDEPENDS:libgal-imx += "${@bb.utils.contains('PACKAGECONFIG', 'valgrind', 'valgrind', '', d)}" 339RDEPENDS:libgal-imx += "${@bb.utils.contains('PACKAGECONFIG', 'valgrind', 'valgrind', '', d)}"
329RPROVIDES:libgal-imx += "libgal-imx" 340RPROVIDES:libgal-imx += "libgal-imx"
330RRECOMMENDS:libgal-imx += "kernel-module-imx-gpu-viv" 341RRECOMMENDS:libgal-imx += "kernel-module-imx-gpu-viv"
@@ -339,10 +350,13 @@ INSANE_SKIP:libgbm-imx += "dev-so"
339 350
340FILES:libvulkan-imx = "\ 351FILES:libvulkan-imx = "\
341 ${libdir}/libvulkan_VSI${REALSOLIBS} \ 352 ${libdir}/libvulkan_VSI${REALSOLIBS} \
342 ${libdir}/libSPIRV_viv${SOLIBS} \
343 ${sysconfdir}/vulkan" 353 ${sysconfdir}/vulkan"
344FILES:libvulkan-imx-dev = "${includedir}/vulkan ${libdir}/libvulkan_VSI${SOLIBSDEV}" 354FILES:libvulkan-imx-dev = "${includedir}/vulkan ${libdir}/libvulkan_VSI${SOLIBSDEV}"
345 355
356FILES:libspirv-imx = " \
357 ${libdir}/libSPIRV_viv${SOLIBS} \
358"
359
346FILES:libopenvx-imx = " \ 360FILES:libopenvx-imx = " \
347 ${libdir}/libOpenVX${REALSOLIBS} \ 361 ${libdir}/libOpenVX${REALSOLIBS} \
348 ${libdir}/libOpenVXC${SOLIBS} \ 362 ${libdir}/libOpenVXC${SOLIBS} \
@@ -357,20 +371,20 @@ RDEPENDS:libopenvx-imx = "libnn-imx"
357# package QA complains on missing RDEPENDS, which are only available for X11. 371# package QA complains on missing RDEPENDS, which are only available for X11.
358# Skip "file-rdeps" QA for this package. 372# Skip "file-rdeps" QA for this package.
359FILES:libgl-imx = "${libdir}/libGL${REALSOLIBS}" 373FILES:libgl-imx = "${libdir}/libGL${REALSOLIBS}"
360FILES:libgl-imx-dev = "${libdir}/libGL${SOLIBSDEV} ${includedir}/GL" 374FILES:libgl-imx-dev = "${libdir}/libGL${SOLIBSDEV} ${includedir}/GL ${libdir}/pkgconfig/gl.pc"
361INSANE_SKIP:libgl-imx += "file-rdeps" 375INSANE_SKIP:libgl-imx += "file-rdeps"
362 376
363# libEGL needs to open libGLESv1.so 377# libEGL needs to open libGLESv1.so
364INSANE_SKIP:libgles1-imx += "dev-so" 378INSANE_SKIP:libgles1-imx += "dev-so"
365FILES:libgles1-imx = "${libdir}/libGLESv1*${REALSOLIBS} ${libdir}/libGLESv1*${SOLIBS} ${libdir}/libGLES_*${REALSOLIBS} ${libdir}/libGLES_*${SOLIBS}" 379FILES:libgles1-imx = "${libdir}/libGLESv1*${REALSOLIBS} ${libdir}/libGLESv1*${SOLIBS} ${libdir}/libGLES_*${REALSOLIBS} ${libdir}/libGLES_*${SOLIBS}"
366FILES:libgles1-imx-dev = "${includedir}/GLES ${libdir}/libGLESv1*${SOLIBS} ${libdir}/libGLES_*${SOLIBSDEV} ${libdir}/pkgconfig/glesv1_cm.pc" 380FILES:libgles1-imx-dev = "${includedir}/GLES ${libdir}/libGLESv1*${SOLIBS} ${libdir}/pkgconfig/glesv1_cm.pc"
367RPROVIDES:libgles1-imx = "libgles-imx" 381RPROVIDES:libgles1-imx = "libgles-imx"
368RPROVIDES:libgles1-imx-dev = "libgles-imx-dev" 382RPROVIDES:libgles1-imx-dev = "libgles-imx-dev"
369 383
370# libEGL needs to open libGLESv2.so 384# libEGL needs to open libGLESv2.so
371INSANE_SKIP:libgles2-imx += "dev-so" 385INSANE_SKIP:libgles2-imx += "dev-so"
372FILES:libgles2-imx = "${libdir}/libGLESv2${REALSOLIBS} ${libdir}/libGLESv2${SOLIBS}" 386FILES:libgles2-imx = "${libdir}/libGLESv2${REALSOLIBS} ${libdir}/libGLESv2${SOLIBS}"
373FILES:libgles2-imx-dev = "${includedir}/GLES2 ${libdir}/libGLESv2${SOLIBSDEV} ${libdir}/pkgconfig/glesv2.pc" 387FILES:libgles2-imx-dev = "${includedir}/GLES2 ${libdir}/pkgconfig/glesv2.pc"
374RDEPENDS:libgles2-imx = "libglslc-imx" 388RDEPENDS:libgles2-imx = "libglslc-imx"
375 389
376FILES:libgles3-imx-dev = "${includedir}/GLES3" 390FILES:libgles3-imx-dev = "${includedir}/GLES3"
@@ -379,7 +393,6 @@ FILES:libgles3-imx-dev = "${includedir}/GLES3"
379RDEPENDS:libgles2-imx-dev += "libgles3-imx-dev" 393RDEPENDS:libgles2-imx-dev += "libgles3-imx-dev"
380 394
381FILES:libglslc-imx = "${libdir}/libGLSLC${SOLIBS}" 395FILES:libglslc-imx = "${libdir}/libGLSLC${SOLIBS}"
382FILES:libglslc-imx-dev = "${includedir}/CL ${libdir}/libGLSLC${SOLIBSDEV}"
383 396
384FILES:libopencl-imx = "${libdir}/libOpenCL${REALSOLIBS} \ 397FILES:libopencl-imx = "${libdir}/libOpenCL${REALSOLIBS} \
385 ${libdir}/libVivanteOpenCL${SOLIBS} \ 398 ${libdir}/libVivanteOpenCL${SOLIBS} \