From 56493d0c5fc8592d0d751d3eefb7d7afe3cfd378 Mon Sep 17 00:00:00 2001 From: Tom Hochstein Date: Tue, 4 Oct 2022 13:06:32 -0500 Subject: vulkan: Downgrade to 1.2.182.0 for i.MX GPU i.MX GPU drivers work with an older version of vulkan, so add the older recipes. Signed-off-by: Tom Hochstein (cherry picked from commit 705d5ca01245e1b0aa42d7380ad79ff1c3db8fcb) --- conf/machine/include/imx-base.inc | 9 +++++ .../vulkan/vulkan-headers_1.2.182.0.bb | 22 ++++++++++++ .../vulkan/vulkan-loader_1.2.182.0.bb | 41 ++++++++++++++++++++++ recipes-downgrade/vulkan/vulkan-tools_1.2.182.0.bb | 32 +++++++++++++++++ recipes-graphics/vulkan/vulkan-loader_%.bbappend | 3 -- .../vulkan/vulkan-loader_1.2.182.0.bbappend | 3 ++ 6 files changed, 107 insertions(+), 3 deletions(-) create mode 100644 recipes-downgrade/vulkan/vulkan-headers_1.2.182.0.bb create mode 100644 recipes-downgrade/vulkan/vulkan-loader_1.2.182.0.bb create mode 100644 recipes-downgrade/vulkan/vulkan-tools_1.2.182.0.bb delete mode 100644 recipes-graphics/vulkan/vulkan-loader_%.bbappend create mode 100644 recipes-graphics/vulkan/vulkan-loader_1.2.182.0.bbappend diff --git a/conf/machine/include/imx-base.inc b/conf/machine/include/imx-base.inc index 9c7b6d29..80027072 100644 --- a/conf/machine/include/imx-base.inc +++ b/conf/machine/include/imx-base.inc @@ -306,6 +306,11 @@ MACHINE_SOCARCH_FILTER:append:imxvpu = " \ libimxvpuapi \ virtual/imxvpu \ " +MACHINE_SOCARCH_FILTER:append:imxvulkan = " \ + vulkan-headers \ + vulkan-loader \ + vulkan-tools \ +" MACHINE_SOCARCH_FILTER:append:imxgpu = " \ virtual/egl \ virtual/mesa \ @@ -480,6 +485,10 @@ PREFERRED_VERSION_libdrm:mx6-nxp-bsp ??= "2.4.109.imx" PREFERRED_VERSION_libdrm:mx7-nxp-bsp ??= "2.4.109.imx" PREFERRED_VERSION_libdrm:mx8-nxp-bsp ??= "2.4.109.imx" +PREFERRED_VERSION_vulkan-headers:imxvulkan ??= "1.2.182.0" +PREFERRED_VERSION_vulkan-loader:imxvulkan ??= "1.2.182.0" +PREFERRED_VERSION_vulkan-tools:imxvulkan ??= "1.2.182.0" + # Use i.MX optee Version PREFERRED_VERSION_optee-os:mx8-nxp-bsp ??= "3.15.0.imx" PREFERRED_VERSION_optee-client:mx8-nxp-bsp ??= "3.15.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 @@ +SUMMARY = "Vulkan Header files and API registry" +DESCRIPTION = "Vulkan is a 3D graphics and compute API providing cross-platform access \ +to modern GPUs with low overhead and targeting realtime graphics applications such as \ +games and interactive media. This package contains the development headers \ +for packages wanting to make use of Vulkan." +HOMEPAGE = "https://www.khronos.org/vulkan/" +BUGTRACKER = "https://github.com/KhronosGroup/Vulkan-Headers" +SECTION = "libs" + +LICENSE = "Apache-2.0" +LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=3b83ef96387f14655fc854ddc3c6bd57" +SRC_URI = "git://github.com/KhronosGroup/Vulkan-Headers.git;branch=master;protocol=https" + +SRCREV = "37164a5726f7e6113810f9557903a117498421cf" + +S = "${WORKDIR}/git" + +inherit cmake + +FILES:${PN} += "${datadir}/vulkan" + +UPSTREAM_CHECK_GITTAGREGEX = "sdk-(?P\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 @@ +SUMMARY = "3D graphics and compute API common loader" +DESCRIPTION = "Vulkan is a new generation graphics and compute API \ +that provides efficient access to modern GPUs. These packages \ +provide only the common vendor-agnostic library loader, headers and \ +the vulkaninfo utility." +HOMEPAGE = "https://www.khronos.org/vulkan/" +BUGTRACKER = "https://github.com/KhronosGroup/Vulkan-Loader" +SECTION = "libs" + +LICENSE = "Apache-2.0" +LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=7dbefed23242760aa3475ee42801c5ac" +SRC_URI = "git://github.com/KhronosGroup/Vulkan-Loader.git;protocol=https;branch=master \ + " +SRCREV = "1896143df69d439b0933c1bb485f5a4587bdf2dc" + +S = "${WORKDIR}/git" + +REQUIRED_DISTRO_FEATURES = "vulkan" + +inherit cmake features_check pkgconfig +ANY_OF_DISTRO_FEATURES = "x11 wayland" + +DEPENDS += "vulkan-headers" + +EXTRA_OECMAKE = "\ + -DBUILD_TESTS=OFF \ + -DPYTHON_EXECUTABLE=${HOSTTOOLS_DIR}/python3 \ + -DASSEMBLER_WORKS=FALSE \ + -DVulkanHeaders_INCLUDE_DIR=${STAGING_INCDIR} \ + -DVulkanRegistry_DIR=${RECIPE_SYSROOT}/${datadir} \ + " + +# must choose x11 or wayland or both +PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'wayland x11', d)}" + +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" +PACKAGECONFIG[wayland] = "-DBUILD_WSI_WAYLAND_SUPPORT=ON, -DBUILD_WSI_WAYLAND_SUPPORT=OFF, wayland" + +RRECOMMENDS:${PN} = "mesa-vulkan-drivers" + +UPSTREAM_CHECK_GITTAGREGEX = "sdk-(?P\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 @@ +SUMMARY = "Vulkan Utilities and Tools" +DESCRIPTION = "Assist development by enabling developers to verify their applications correct use of the Vulkan API." +HOMEPAGE = "https://www.khronos.org/vulkan/" +BUGTRACKER = "https://github.com/KhronosGroup/Vulkan-Tools" +SECTION = "libs" + +LICENSE = "Apache-2.0" +LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=3b83ef96387f14655fc854ddc3c6bd57" +SRC_URI = "git://github.com/KhronosGroup/Vulkan-Tools.git;protocol=https;branch=sdk-1.2.182" +SRCREV = "9d3305731c3be8de05c9f223a79959d448506a37" + +S = "${WORKDIR}/git" + +inherit cmake features_check +ANY_OF_DISTRO_FEATURES = "x11 wayland" +REQUIRED_DISTRO_FEATURES = "vulkan" + +DEPENDS += "vulkan-headers vulkan-loader" + +EXTRA_OECMAKE = "\ + -DBUILD_TESTS=OFF \ + -DBUILD_CUBE=OFF \ + -DPYTHON_EXECUTABLE=${HOSTTOOLS_DIR}/python3 \ + " + +# must choose x11 or wayland or both +PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'wayland x11', d)}" + +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" +PACKAGECONFIG[wayland] = "-DBUILD_WSI_WAYLAND_SUPPORT=ON, -DBUILD_WSI_WAYLAND_SUPPORT=OFF, wayland" + +UPSTREAM_CHECK_GITTAGREGEX = "sdk-(?P\d+(\.\d+)+)" 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 @@ -# The i.MX implementation is dynamically loaded, so it requires an -# explicit runtime dependency. -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..722896ff --- /dev/null +++ b/recipes-graphics/vulkan/vulkan-loader_1.2.182.0.bbappend @@ -0,0 +1,3 @@ +# The i.MX implementation is dynamically loaded, so it requires an +# explicit runtime dependency. +RRECOMMENDS:${PN}:append:imxvulkan = " libvulkan-imx" -- cgit v1.2.3-54-g00ecf