diff options
-rw-r--r-- | conf/machine/include/imx-base.inc | 9 | ||||
-rw-r--r-- | recipes-downgrade/vulkan/vulkan-headers_1.2.182.0.bb | 22 | ||||
-rw-r--r-- | recipes-downgrade/vulkan/vulkan-loader_1.2.182.0.bb | 41 | ||||
-rw-r--r-- | recipes-downgrade/vulkan/vulkan-tools_1.2.182.0.bb | 32 | ||||
-rw-r--r-- | recipes-graphics/imx-gpu-viv/imx-gpu-viv-6.inc | 15 | ||||
-rw-r--r-- | recipes-graphics/imx-gpu-viv/imx-gpu-viv/imx_icd.json | 7 | ||||
-rw-r--r-- | recipes-graphics/vulkan/vulkan-loader_%.bbappend | 3 | ||||
-rw-r--r-- | recipes-graphics/vulkan/vulkan-loader_1.2.182.0.bbappend | 6 |
8 files changed, 129 insertions, 6 deletions
diff --git a/conf/machine/include/imx-base.inc b/conf/machine/include/imx-base.inc index a0d6be13..e9b751e0 100644 --- a/conf/machine/include/imx-base.inc +++ b/conf/machine/include/imx-base.inc | |||
@@ -306,6 +306,11 @@ MACHINE_SOCARCH_FILTER:append:imxvpu = " \ | |||
306 | libimxvpuapi \ | 306 | libimxvpuapi \ |
307 | virtual/imxvpu \ | 307 | virtual/imxvpu \ |
308 | " | 308 | " |
309 | MACHINE_SOCARCH_FILTER:append:imxvulkan = " \ | ||
310 | vulkan-headers \ | ||
311 | vulkan-loader \ | ||
312 | vulkan-tools \ | ||
313 | " | ||
309 | MACHINE_SOCARCH_FILTER:append:imxgpu = " \ | 314 | MACHINE_SOCARCH_FILTER:append:imxgpu = " \ |
310 | virtual/egl \ | 315 | virtual/egl \ |
311 | virtual/mesa \ | 316 | virtual/mesa \ |
@@ -480,6 +485,10 @@ PREFERRED_VERSION_libdrm:mx6-nxp-bsp ??= "2.4.109.imx" | |||
480 | PREFERRED_VERSION_libdrm:mx7-nxp-bsp ??= "2.4.109.imx" | 485 | PREFERRED_VERSION_libdrm:mx7-nxp-bsp ??= "2.4.109.imx" |
481 | PREFERRED_VERSION_libdrm:mx8-nxp-bsp ??= "2.4.109.imx" | 486 | PREFERRED_VERSION_libdrm:mx8-nxp-bsp ??= "2.4.109.imx" |
482 | 487 | ||
488 | PREFERRED_VERSION_vulkan-headers:imxvulkan ??= "1.2.182.0" | ||
489 | PREFERRED_VERSION_vulkan-loader:imxvulkan ??= "1.2.182.0" | ||
490 | PREFERRED_VERSION_vulkan-tools:imxvulkan ??= "1.2.182.0" | ||
491 | |||
483 | # Use i.MX optee Version | 492 | # Use i.MX optee Version |
484 | PREFERRED_VERSION_optee-os:mx8-nxp-bsp ??= "3.17.0.imx" | 493 | PREFERRED_VERSION_optee-os:mx8-nxp-bsp ??= "3.17.0.imx" |
485 | PREFERRED_VERSION_optee-client:mx8-nxp-bsp ??= "3.17.0.imx" | 494 | PREFERRED_VERSION_optee-client:mx8-nxp-bsp ??= "3.17.0.imx" |
diff --git a/recipes-downgrade/vulkan/vulkan-headers_1.2.182.0.bb b/recipes-downgrade/vulkan/vulkan-headers_1.2.182.0.bb new file mode 100644 index 00000000..7c7d3e39 --- /dev/null +++ b/recipes-downgrade/vulkan/vulkan-headers_1.2.182.0.bb | |||
@@ -0,0 +1,22 @@ | |||
1 | SUMMARY = "Vulkan Header files and API registry" | ||
2 | DESCRIPTION = "Vulkan is a 3D graphics and compute API providing cross-platform access \ | ||
3 | to modern GPUs with low overhead and targeting realtime graphics applications such as \ | ||
4 | games and interactive media. This package contains the development headers \ | ||
5 | for packages wanting to make use of Vulkan." | ||
6 | HOMEPAGE = "https://www.khronos.org/vulkan/" | ||
7 | BUGTRACKER = "https://github.com/KhronosGroup/Vulkan-Headers" | ||
8 | SECTION = "libs" | ||
9 | |||
10 | LICENSE = "Apache-2.0" | ||
11 | LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=3b83ef96387f14655fc854ddc3c6bd57" | ||
12 | SRC_URI = "git://github.com/KhronosGroup/Vulkan-Headers.git;branch=master;protocol=https" | ||
13 | |||
14 | SRCREV = "37164a5726f7e6113810f9557903a117498421cf" | ||
15 | |||
16 | S = "${WORKDIR}/git" | ||
17 | |||
18 | inherit cmake | ||
19 | |||
20 | FILES:${PN} += "${datadir}/vulkan" | ||
21 | |||
22 | UPSTREAM_CHECK_GITTAGREGEX = "sdk-(?P<pver>\d+(\.\d+)+)" | ||
diff --git a/recipes-downgrade/vulkan/vulkan-loader_1.2.182.0.bb b/recipes-downgrade/vulkan/vulkan-loader_1.2.182.0.bb new file mode 100644 index 00000000..e7b38222 --- /dev/null +++ b/recipes-downgrade/vulkan/vulkan-loader_1.2.182.0.bb | |||
@@ -0,0 +1,41 @@ | |||
1 | SUMMARY = "3D graphics and compute API common loader" | ||
2 | DESCRIPTION = "Vulkan is a new generation graphics and compute API \ | ||
3 | that provides efficient access to modern GPUs. These packages \ | ||
4 | provide only the common vendor-agnostic library loader, headers and \ | ||
5 | the vulkaninfo utility." | ||
6 | HOMEPAGE = "https://www.khronos.org/vulkan/" | ||
7 | BUGTRACKER = "https://github.com/KhronosGroup/Vulkan-Loader" | ||
8 | SECTION = "libs" | ||
9 | |||
10 | LICENSE = "Apache-2.0" | ||
11 | LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=7dbefed23242760aa3475ee42801c5ac" | ||
12 | SRC_URI = "git://github.com/KhronosGroup/Vulkan-Loader.git;protocol=https;branch=master \ | ||
13 | " | ||
14 | SRCREV = "1896143df69d439b0933c1bb485f5a4587bdf2dc" | ||
15 | |||
16 | S = "${WORKDIR}/git" | ||
17 | |||
18 | REQUIRED_DISTRO_FEATURES = "vulkan" | ||
19 | |||
20 | inherit cmake features_check pkgconfig | ||
21 | ANY_OF_DISTRO_FEATURES = "x11 wayland" | ||
22 | |||
23 | DEPENDS += "vulkan-headers" | ||
24 | |||
25 | EXTRA_OECMAKE = "\ | ||
26 | -DBUILD_TESTS=OFF \ | ||
27 | -DPYTHON_EXECUTABLE=${HOSTTOOLS_DIR}/python3 \ | ||
28 | -DASSEMBLER_WORKS=FALSE \ | ||
29 | -DVulkanHeaders_INCLUDE_DIR=${STAGING_INCDIR} \ | ||
30 | -DVulkanRegistry_DIR=${RECIPE_SYSROOT}/${datadir} \ | ||
31 | " | ||
32 | |||
33 | # must choose x11 or wayland or both | ||
34 | PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'wayland x11', d)}" | ||
35 | |||
36 | PACKAGECONFIG[x11] = "-DBUILD_WSI_XLIB_SUPPORT=ON -DBUILD_WSI_XCB_SUPPORT=ON, -DBUILD_WSI_XLIB_SUPPORT=OFF -DBUILD_WSI_XCB_SUPPORT=OFF, libxcb libx11 libxrandr" | ||
37 | PACKAGECONFIG[wayland] = "-DBUILD_WSI_WAYLAND_SUPPORT=ON, -DBUILD_WSI_WAYLAND_SUPPORT=OFF, wayland" | ||
38 | |||
39 | RRECOMMENDS:${PN} = "mesa-vulkan-drivers" | ||
40 | |||
41 | UPSTREAM_CHECK_GITTAGREGEX = "sdk-(?P<pver>\d+(\.\d+)+)" | ||
diff --git a/recipes-downgrade/vulkan/vulkan-tools_1.2.182.0.bb b/recipes-downgrade/vulkan/vulkan-tools_1.2.182.0.bb new file mode 100644 index 00000000..242b8973 --- /dev/null +++ b/recipes-downgrade/vulkan/vulkan-tools_1.2.182.0.bb | |||
@@ -0,0 +1,32 @@ | |||
1 | SUMMARY = "Vulkan Utilities and Tools" | ||
2 | DESCRIPTION = "Assist development by enabling developers to verify their applications correct use of the Vulkan API." | ||
3 | HOMEPAGE = "https://www.khronos.org/vulkan/" | ||
4 | BUGTRACKER = "https://github.com/KhronosGroup/Vulkan-Tools" | ||
5 | SECTION = "libs" | ||
6 | |||
7 | LICENSE = "Apache-2.0" | ||
8 | LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=3b83ef96387f14655fc854ddc3c6bd57" | ||
9 | SRC_URI = "git://github.com/KhronosGroup/Vulkan-Tools.git;protocol=https;branch=sdk-1.2.182" | ||
10 | SRCREV = "9d3305731c3be8de05c9f223a79959d448506a37" | ||
11 | |||
12 | S = "${WORKDIR}/git" | ||
13 | |||
14 | inherit cmake features_check | ||
15 | ANY_OF_DISTRO_FEATURES = "x11 wayland" | ||
16 | REQUIRED_DISTRO_FEATURES = "vulkan" | ||
17 | |||
18 | DEPENDS += "vulkan-headers vulkan-loader" | ||
19 | |||
20 | EXTRA_OECMAKE = "\ | ||
21 | -DBUILD_TESTS=OFF \ | ||
22 | -DBUILD_CUBE=OFF \ | ||
23 | -DPYTHON_EXECUTABLE=${HOSTTOOLS_DIR}/python3 \ | ||
24 | " | ||
25 | |||
26 | # must choose x11 or wayland or both | ||
27 | PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'wayland x11', d)}" | ||
28 | |||
29 | PACKAGECONFIG[x11] = "-DBUILD_WSI_XLIB_SUPPORT=ON -DBUILD_WSI_XCB_SUPPORT=ON, -DBUILD_WSI_XLIB_SUPPORT=OFF -DBUILD_WSI_XCB_SUPPORT=OFF, libxcb libx11 libxrandr" | ||
30 | PACKAGECONFIG[wayland] = "-DBUILD_WSI_WAYLAND_SUPPORT=ON, -DBUILD_WSI_WAYLAND_SUPPORT=OFF, wayland" | ||
31 | |||
32 | UPSTREAM_CHECK_GITTAGREGEX = "sdk-(?P<pver>\d+(\.\d+)+)" | ||
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 4cbb7ba6..5c4b68cc 100644 --- a/recipes-graphics/imx-gpu-viv/imx-gpu-viv-6.inc +++ b/recipes-graphics/imx-gpu-viv/imx-gpu-viv-6.inc | |||
@@ -68,7 +68,8 @@ PE = "1" | |||
68 | 68 | ||
69 | inherit fsl-eula-unpack | 69 | inherit fsl-eula-unpack |
70 | 70 | ||
71 | SRC_URI = "${FSL_MIRROR}/${BPN}-${PV}.bin;fsl-eula=true" | 71 | SRC_URI = "${FSL_MIRROR}/${BPN}-${PV}.bin;fsl-eula=true \ |
72 | file://imx_icd.json" | ||
72 | 73 | ||
73 | PACKAGECONFIG ?= "" | 74 | PACKAGECONFIG ?= "" |
74 | 75 | ||
@@ -177,7 +178,8 @@ IMX_SOC:mx8mn-nxp-bsp = "mx8mn" | |||
177 | IMX_SOC:mx8ulp-nxp-bsp = "mx8ulp" | 178 | IMX_SOC:mx8ulp-nxp-bsp = "mx8ulp" |
178 | 179 | ||
179 | LIBVULKAN_VERSION_MAJOR = "1" | 180 | LIBVULKAN_VERSION_MAJOR = "1" |
180 | LIBVULKAN_VERSION = "${LIBVULKAN_VERSION_MAJOR}.2.1" | 181 | LIBVULKAN_VERSION = "${LIBVULKAN_VERSION_MAJOR}.2.1" |
182 | LIBVULKAN_API_VERSION = "${LIBVULKAN_VERSION_MAJOR}.2.182" | ||
181 | 183 | ||
182 | do_install () { | 184 | do_install () { |
183 | install -d ${D}${libdir} | 185 | install -d ${D}${libdir} |
@@ -271,6 +273,10 @@ do_install () { | |||
271 | set +f | 273 | set +f |
272 | rm -rf ${D}$f | 274 | rm -rf ${D}$f |
273 | done | 275 | done |
276 | else | ||
277 | install -Dm 0644 ${WORKDIR}/imx_icd.json ${D}${sysconfdir}/vulkan/icd.d/imx_icd.json | ||
278 | sed -i "s,%libdir%,${libdir}," ${D}${sysconfdir}/vulkan/icd.d/imx_icd.json | ||
279 | sed -i "s,%api_version%,${LIBVULKAN_API_VERSION}," ${D}${sysconfdir}/vulkan/icd.d/imx_icd.json | ||
274 | fi | 280 | fi |
275 | fi | 281 | fi |
276 | 282 | ||
@@ -342,7 +348,10 @@ FILES:libgbm-imx-dev = "${libdir}/pkgconfig/gbm.pc ${includedir}/gbm.h" | |||
342 | RDEPENDS:libgbm-imx:append = " libdrm" | 348 | RDEPENDS:libgbm-imx:append = " libdrm" |
343 | INSANE_SKIP:libgbm-imx += "dev-so" | 349 | INSANE_SKIP:libgbm-imx += "dev-so" |
344 | 350 | ||
345 | FILES:libvulkan-imx = "${libdir}/libvulkan_VSI${REALSOLIBS} ${libdir}/libSPIRV_viv${SOLIBS}" | 351 | FILES:libvulkan-imx = "\ |
352 | ${libdir}/libvulkan_VSI${REALSOLIBS} \ | ||
353 | ${libdir}/libSPIRV_viv${SOLIBS} \ | ||
354 | ${sysconfdir}/vulkan" | ||
346 | FILES:libvulkan-imx-dev = "${includedir}/vulkan ${libdir}/libvulkan_VSI${SOLIBSDEV}" | 355 | FILES:libvulkan-imx-dev = "${includedir}/vulkan ${libdir}/libvulkan_VSI${SOLIBSDEV}" |
347 | 356 | ||
348 | FILES:libopenvx-imx = " \ | 357 | FILES:libopenvx-imx = " \ |
diff --git a/recipes-graphics/imx-gpu-viv/imx-gpu-viv/imx_icd.json b/recipes-graphics/imx-gpu-viv/imx-gpu-viv/imx_icd.json new file mode 100644 index 00000000..1194a0fb --- /dev/null +++ b/recipes-graphics/imx-gpu-viv/imx-gpu-viv/imx_icd.json | |||
@@ -0,0 +1,7 @@ | |||
1 | { | ||
2 | "file_format_version": "1.0.0", | ||
3 | "ICD": { | ||
4 | "library_path": "%libdir%/libvulkan_VSI.so", | ||
5 | "api_version": "%api_version%" | ||
6 | } | ||
7 | } | ||
diff --git a/recipes-graphics/vulkan/vulkan-loader_%.bbappend b/recipes-graphics/vulkan/vulkan-loader_%.bbappend deleted file mode 100644 index 722896ff..00000000 --- a/recipes-graphics/vulkan/vulkan-loader_%.bbappend +++ /dev/null | |||
@@ -1,3 +0,0 @@ | |||
1 | # The i.MX implementation is dynamically loaded, so it requires an | ||
2 | # explicit runtime dependency. | ||
3 | RRECOMMENDS:${PN}:append:imxvulkan = " libvulkan-imx" | ||
diff --git a/recipes-graphics/vulkan/vulkan-loader_1.2.182.0.bbappend b/recipes-graphics/vulkan/vulkan-loader_1.2.182.0.bbappend new file mode 100644 index 00000000..857b0e01 --- /dev/null +++ b/recipes-graphics/vulkan/vulkan-loader_1.2.182.0.bbappend | |||
@@ -0,0 +1,6 @@ | |||
1 | # libvulkan.so is loaded dynamically, so put it in the main package | ||
2 | SOLIBS = ".so*" | ||
3 | SOLIBSDEV = "" | ||
4 | |||
5 | # Override default mesa drivers with i.MX GPU drivers | ||
6 | RRECOMMENDS:${PN}:imxvulkan = "libvulkan-imx" | ||