diff options
| author | Tom Hochstein <tom.hochstein@nxp.com> | 2025-08-20 08:58:06 -0500 |
|---|---|---|
| committer | Tom Hochstein <tom.hochstein@nxp.com> | 2025-08-26 10:10:21 -0500 |
| commit | 43b21c7e8782d3900c602c41b4c7791974668143 (patch) | |
| tree | a0d4fb93fc1850f9b683e535a031f3ddec8b47e9 | |
| parent | a3c087a3cbfb67240ac869a497f32f4f12877d3c (diff) | |
| download | meta-freescale-43b21c7e8782d3900c602c41b4c7791974668143.tar.gz | |
vulkan-loader: Update i.MX 9 to latest Vulkan
Vivante is limited to older Vulkan, but Mali is not. Adapt the bbappend
so i.MX 9 can use the latest Vulkan while i.MX 8 continues to be
limited to 1.3.275.0.imx.
Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com>
| -rw-r--r-- | recipes-graphics/vulkan/vulkan-loader/0001-LF-11869-change-mali-wsi-layer-activating-order.patch | 15 | ||||
| -rw-r--r-- | recipes-graphics/vulkan/vulkan-loader/mx8-nxp-bsp/0001-LF-11869-change-mali-wsi-layer-activating-order.patch | 52 | ||||
| -rw-r--r-- | recipes-graphics/vulkan/vulkan-loader_%.bbappend (renamed from recipes-graphics/vulkan/vulkan-loader_1.3.275.0.imx.bbappend) | 8 |
3 files changed, 63 insertions, 12 deletions
diff --git a/recipes-graphics/vulkan/vulkan-loader/0001-LF-11869-change-mali-wsi-layer-activating-order.patch b/recipes-graphics/vulkan/vulkan-loader/0001-LF-11869-change-mali-wsi-layer-activating-order.patch index da738aabe..f54919cd9 100644 --- a/recipes-graphics/vulkan/vulkan-loader/0001-LF-11869-change-mali-wsi-layer-activating-order.patch +++ b/recipes-graphics/vulkan/vulkan-loader/0001-LF-11869-change-mali-wsi-layer-activating-order.patch | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | From 3448c245b15928aa5a5a3695d9271fb201eb2e3b Mon Sep 17 00:00:00 2001 | 1 | From 91aff12a127428ff558d57d93b91b0b909321c35 Mon Sep 17 00:00:00 2001 |
| 2 | From: Yuan Tian <yuan.tian@nxp.com> | 2 | From: Yuan Tian <yuan.tian@nxp.com> |
| 3 | Date: Sat, 27 Apr 2024 06:06:54 +0800 | 3 | Date: Sat, 27 Apr 2024 06:06:54 +0800 |
| 4 | Subject: [PATCH] LF-11869 change mali wsi layer activating order | 4 | Subject: [PATCH] LF-11869 change mali wsi layer activating order |
| @@ -11,18 +11,18 @@ Signed-off-by: Yuan Tian <yuan.tian@nxp.com> | |||
| 11 | 1 file changed, 12 insertions(+) | 11 | 1 file changed, 12 insertions(+) |
| 12 | 12 | ||
| 13 | diff --git a/loader/loader.c b/loader/loader.c | 13 | diff --git a/loader/loader.c b/loader/loader.c |
| 14 | index e646b28b4..55912c178 100644 | 14 | index 9064cd633..5b00870a4 100644 |
| 15 | --- a/loader/loader.c | 15 | --- a/loader/loader.c |
| 16 | +++ b/loader/loader.c | 16 | +++ b/loader/loader.c |
| 17 | @@ -2906,6 +2906,7 @@ VkResult add_data_files(const struct loader_instance *inst, char *search_path, s | 17 | @@ -3034,6 +3034,7 @@ VkResult add_data_files(const struct loader_instance *inst, char *search_path, s |
| 18 | #if !defined(_WIN32) | 18 | #if !defined(_WIN32) |
| 19 | char temp_path[2048]; | 19 | char temp_path[2048]; |
| 20 | #endif | 20 | #endif |
| 21 | + bool has_wsi_layer = false; | 21 | + bool has_wsi_layer = false; |
| 22 | 22 | ||
| 23 | // Now, parse the paths | 23 | // Now, parse the paths |
| 24 | next_file = search_path; | 24 | char *next_file = search_path; |
| 25 | @@ -2965,6 +2966,10 @@ VkResult add_data_files(const struct loader_instance *inst, char *search_path, s | 25 | @@ -3100,6 +3101,10 @@ VkResult add_data_files(const struct loader_instance *inst, char *search_path, s |
| 26 | name = full_path; | 26 | name = full_path; |
| 27 | 27 | ||
| 28 | VkResult local_res; | 28 | VkResult local_res; |
| @@ -33,7 +33,7 @@ index e646b28b4..55912c178 100644 | |||
| 33 | local_res = add_if_manifest_file(inst, name, out_files); | 33 | local_res = add_if_manifest_file(inst, name, out_files); |
| 34 | 34 | ||
| 35 | // Incomplete means this was not a valid data file. | 35 | // Incomplete means this was not a valid data file. |
| 36 | @@ -2975,6 +2980,13 @@ VkResult add_data_files(const struct loader_instance *inst, char *search_path, s | 36 | @@ -3110,6 +3115,13 @@ VkResult add_data_files(const struct loader_instance *inst, char *search_path, s |
| 37 | break; | 37 | break; |
| 38 | } | 38 | } |
| 39 | } | 39 | } |
| @@ -47,6 +47,3 @@ index e646b28b4..55912c178 100644 | |||
| 47 | loader_closedir(inst, dir_stream); | 47 | loader_closedir(inst, dir_stream); |
| 48 | if (vk_result != VK_SUCCESS) { | 48 | if (vk_result != VK_SUCCESS) { |
| 49 | goto out; | 49 | goto out; |
| 50 | -- | ||
| 51 | 2.34.1 | ||
| 52 | |||
diff --git a/recipes-graphics/vulkan/vulkan-loader/mx8-nxp-bsp/0001-LF-11869-change-mali-wsi-layer-activating-order.patch b/recipes-graphics/vulkan/vulkan-loader/mx8-nxp-bsp/0001-LF-11869-change-mali-wsi-layer-activating-order.patch new file mode 100644 index 000000000..da738aabe --- /dev/null +++ b/recipes-graphics/vulkan/vulkan-loader/mx8-nxp-bsp/0001-LF-11869-change-mali-wsi-layer-activating-order.patch | |||
| @@ -0,0 +1,52 @@ | |||
| 1 | From 3448c245b15928aa5a5a3695d9271fb201eb2e3b Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Yuan Tian <yuan.tian@nxp.com> | ||
| 3 | Date: Sat, 27 Apr 2024 06:06:54 +0800 | ||
| 4 | Subject: [PATCH] LF-11869 change mali wsi layer activating order | ||
| 5 | |||
| 6 | Upstream-Status: Inappropriate [i.MX specific] | ||
| 7 | |||
| 8 | Signed-off-by: Yuan Tian <yuan.tian@nxp.com> | ||
| 9 | --- | ||
| 10 | loader/loader.c | 12 ++++++++++++ | ||
| 11 | 1 file changed, 12 insertions(+) | ||
| 12 | |||
| 13 | diff --git a/loader/loader.c b/loader/loader.c | ||
| 14 | index e646b28b4..55912c178 100644 | ||
| 15 | --- a/loader/loader.c | ||
| 16 | +++ b/loader/loader.c | ||
| 17 | @@ -2906,6 +2906,7 @@ VkResult add_data_files(const struct loader_instance *inst, char *search_path, s | ||
| 18 | #if !defined(_WIN32) | ||
| 19 | char temp_path[2048]; | ||
| 20 | #endif | ||
| 21 | + bool has_wsi_layer = false; | ||
| 22 | |||
| 23 | // Now, parse the paths | ||
| 24 | next_file = search_path; | ||
| 25 | @@ -2965,6 +2966,10 @@ VkResult add_data_files(const struct loader_instance *inst, char *search_path, s | ||
| 26 | name = full_path; | ||
| 27 | |||
| 28 | VkResult local_res; | ||
| 29 | + if(!strcmp(name,"/etc/vulkan/implicit_layer.d/VkLayer_window_system_integration.json")) { | ||
| 30 | + has_wsi_layer = true; | ||
| 31 | + continue; | ||
| 32 | + } | ||
| 33 | local_res = add_if_manifest_file(inst, name, out_files); | ||
| 34 | |||
| 35 | // Incomplete means this was not a valid data file. | ||
| 36 | @@ -2975,6 +2980,13 @@ VkResult add_data_files(const struct loader_instance *inst, char *search_path, s | ||
| 37 | break; | ||
| 38 | } | ||
| 39 | } | ||
| 40 | + | ||
| 41 | + if(has_wsi_layer) { | ||
| 42 | + name = "/etc/vulkan/implicit_layer.d/VkLayer_window_system_integration.json"; | ||
| 43 | + vk_result = add_if_manifest_file(inst, name, out_files); | ||
| 44 | + has_wsi_layer = false; | ||
| 45 | + } | ||
| 46 | + | ||
| 47 | loader_closedir(inst, dir_stream); | ||
| 48 | if (vk_result != VK_SUCCESS) { | ||
| 49 | goto out; | ||
| 50 | -- | ||
| 51 | 2.34.1 | ||
| 52 | |||
diff --git a/recipes-graphics/vulkan/vulkan-loader_1.3.275.0.imx.bbappend b/recipes-graphics/vulkan/vulkan-loader_%.bbappend index f46249215..f72f5b017 100644 --- a/recipes-graphics/vulkan/vulkan-loader_1.3.275.0.imx.bbappend +++ b/recipes-graphics/vulkan/vulkan-loader_%.bbappend | |||
| @@ -4,10 +4,12 @@ SRC_URI:append:imx-nxp-bsp = " \ | |||
| 4 | file://0001-LF-11869-change-mali-wsi-layer-activating-order.patch \ | 4 | file://0001-LF-11869-change-mali-wsi-layer-activating-order.patch \ |
| 5 | " | 5 | " |
| 6 | 6 | ||
| 7 | PACKAGE_ARCH:imx-nxp-bsp = "${MACHINE_SOCARCH}" | ||
| 8 | |||
| 7 | # libvulkan.so is loaded dynamically, so put it in the main package | 9 | # libvulkan.so is loaded dynamically, so put it in the main package |
| 8 | SOLIBS = ".so*" | 10 | SOLIBS:imx-nxp-bsp = ".so*" |
| 9 | FILES_SOLIBSDEV = "" | 11 | FILES_SOLIBSDEV:imx-nxp-bsp = "" |
| 10 | INSANE_SKIP:${PN} += "dev-so" | 12 | INSANE_SKIP:${PN}:imx-nxp-bsp += "dev-so" |
| 11 | 13 | ||
| 12 | # Override default mesa drivers with i.MX GPU drivers | 14 | # Override default mesa drivers with i.MX GPU drivers |
| 13 | RRECOMMENDS:${PN}:imxviv = "libvulkan-imx" | 15 | RRECOMMENDS:${PN}:imxviv = "libvulkan-imx" |
