Skip to content

Arm backend: Only fetch what is used #11853

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
Jun 24, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
From 03e33214c52fd98b2adf87b2ff1c01ff91eceb52 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?M=C3=A5ns=20Nilsson?= <mans.nilsson@arm.com>
Date: Fri, 13 Jun 2025 20:12:28 +0200
Subject: [PATCH] Do not include tflite micro and rtos projects as they are not
needed

---
CMakeLists.txt | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/CMakeLists.txt b/CMakeLists.txt
index c6faad8..7c205e0 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -76,10 +76,10 @@ if (CORE_SOFTWARE_ACCELERATOR STREQUAL "NPU")
endif()

# Build Tensorflow Lite Micro library
-include(tflite_micro.cmake)
+#include(tflite_micro.cmake)

# Build RTOS
-add_subdirectory(rtos)
+#add_subdirectory(rtos)

# Build EventRecorder
include(event_recorder.cmake)
--
2.34.1

Original file line number Diff line number Diff line change
@@ -0,0 +1,65 @@
From 31a3be0c97093dbd70777c644d47ce8a7a9f57b3 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?M=C3=A5ns=20Nilsson?= <mans.nilsson@arm.com>
Date: Fri, 13 Jun 2025 18:25:37 +0200
Subject: [PATCH] Remove unused projects from 25.05 manifest

---
25.05.json | 42 ------------------------------------------
1 file changed, 42 deletions(-)

diff --git a/25.05.json b/25.05.json
index 6a2697a..d248548 100644
--- a/25.05.json
+++ b/25.05.json
@@ -38,48 +38,6 @@
"path": "core_software/cmsis-view",
"fetchurl": "https://github.com/ARM-software/CMSIS-View.git",
"revision": "486ca2726d4a5de4895c9d3c273781d141b4a5b3"
- },
- {
- "path": "core_software/openamp/libmetal",
- "fetchurl": "https://github.com/OpenAMP/libmetal",
- "revision": "36f87f9335f5afc3ce3a56c1069346df591094e1"
- },
- {
- "path": "core_software/openamp/openamp",
- "fetchurl": "https://github.com/OpenAMP/open-amp",
- "revision": "3737f8b18ad24a3b091a11cc6ea320d8b0576da5"
- },
- {
- "path": "core_software/rtos/freertos/freertos_kernel",
- "fetchurl": "https://github.com/FreeRTOS/FreeRTOS-Kernel.git",
- "revision": "2615dcde13d953dbe60ae1ee0cf9312458984c3a"
- },
- {
- "path": "core_software/rtos/threadx",
- "fetchurl": "https://github.com/eclipse-threadx/threadx",
- "revision": "7ad78c40e9702917264a9b722890110fdb909ebc"
- },
- {
- "path": "core_software/tflite_micro",
- "fetchurl": "https://github.com/tensorflow/tflite-micro",
- "revision": "9d35a74b03fa313026982abb4d2c4ffe29de88bc"
- },
- {
- "path": "linux_driver_stack",
- "fetchurl": "https://git.gitlab.arm.com/artificial-intelligence/ethos-u/ethos-u-linux-driver-stack.git",
- "pushurl": "ssh://git@git.gitlab.arm.com/artificial-intelligence/ethos-u/ethos-u-linux-driver-stack.git",
- "revision": "25.05"
- },
- {
- "path": "linux_driver_stack/thirdparty/tensorflow",
- "fetchurl": "https://github.com/tensorflow/tensorflow.git",
- "revision": "v2.18.1"
- },
- {
- "path": "vela",
- "fetchurl": "https://git.gitlab.arm.com/artificial-intelligence/ethos-u/ethos-u-vela.git",
- "pushurl": "ssh://git@git.gitlab.arm.com/artificial-intelligence/ethos-u/ethos-u-vela.git",
- "revision": "4.3.0"
}
]
}
--
2.34.1

22 changes: 18 additions & 4 deletions examples/arm/executor_runner/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -52,11 +52,11 @@ if(FETCH_ETHOS_U_CONTENT)
file(MAKE_DIRECTORY ${ETHOS_SDK_PATH}/../ethos_u)

include(FetchContent)
set(ethos_u_base_rev "25.02")
set(ethos_u_base_tag "25.05")
FetchContent_Declare(
ethos_u
GIT_REPOSITORY https://git.gitlab.arm.com/artificial-intelligence/ethos-u/ethos-u.git
GIT_TAG ${ethos_u_base_rev}
GIT_TAG ${ethos_u_base_tag}
SOURCE_DIR ${ETHOS_SDK_PATH}
BINARY_DIR ${ETHOS_SDK_PATH}
SUBBUILD_DIR ${ETHOS_SDK_PATH}/../ethos_u-subbuild
Expand All @@ -65,17 +65,31 @@ if(FETCH_ETHOS_U_CONTENT)

FetchContent_MakeAvailable(ethos_u)

# Patch manifest to remove unused projects.
set(patch_dir "${ET_DIR_PATH}/examples/arm/ethos-u-setup")
set(ethos_u_base_rev "24950bd4381b6c51db0349a229f8ba86b8e1093f")
execute_process(COMMAND bash -c "pwd && source backends/arm/scripts/utils.sh && patch_repo ${ETHOS_SDK_PATH} ${ethos_u_base_rev} ${patch_dir}"
WORKING_DIRECTORY ${ET_DIR_PATH}
COMMAND_ECHO STDOUT
)

# Get ethos_u externals only if core_platform folder does not already exist.
if(NOT EXISTS "${ETHOS_SDK_PATH}/core_platform")
execute_process(COMMAND ${PYTHON_EXECUTABLE} fetch_externals.py -c ${ethos_u_base_rev}.json fetch
execute_process(COMMAND ${PYTHON_EXECUTABLE} fetch_externals.py -c ${ethos_u_base_tag}.json fetch
WORKING_DIRECTORY ${ETHOS_SDK_PATH}
COMMAND_ECHO STDOUT
)
endif()

# Patch core_software to remove unused projects.
set(core_software_base_rev "55904c3da73c876c6d6c58290938ae217a8b94bd")
execute_process(COMMAND bash -c "pwd && source backends/arm/scripts/utils.sh && patch_repo ${ETHOS_SDK_PATH}/core_software ${core_software_base_rev} ${patch_dir}"
WORKING_DIRECTORY ${ET_DIR_PATH}
COMMAND_ECHO STDOUT
)

# Always patch the core_platform repo since this is fast enough.
set(core_platform_base_rev "1916a9c984819c35b19c9e5c4c80d47e4e866420")
set(patch_dir "${ET_DIR_PATH}/examples/arm/ethos-u-setup")
execute_process(COMMAND bash -c "pwd && source backends/arm/scripts/utils.sh && patch_repo ${ETHOS_SDK_PATH}/core_platform ${core_platform_base_rev} ${patch_dir}"
WORKING_DIRECTORY ${ET_DIR_PATH}
COMMAND_ECHO STDOUT
Expand Down
Loading