diff options
Diffstat (limited to 'scripts')
13 files changed, 52 insertions, 46 deletions
diff --git a/scripts/cmake/cmsis-pack-gen/use-case-api.yml b/scripts/cmake/cmsis-pack-gen/use-case-api.yml index c526566..4aa6095 100644 --- a/scripts/cmake/cmsis-pack-gen/use-case-api.yml +++ b/scripts/cmake/cmsis-pack-gen/use-case-api.yml @@ -1,7 +1,7 @@ # yaml-language-server: $schema=https://raw.githubusercontent.com/Open-CMSIS-Pack/devtools/main/tools/packgen/schema/manifest.schema.json #---------------------------------------------------------------------------- -# SPDX-FileCopyrightText: Copyright 2022-2023 Arm Limited and/or its affiliates <open-source-office@arm.com> +# SPDX-FileCopyrightText: Copyright 2022-2024 Arm Limited and/or its affiliates <open-source-office@arm.com> # SPDX-License-Identifier: Apache-2.0 # # Licensed under the Apache License, Version 2.0 (the "License"); @@ -33,7 +33,7 @@ # packgen and packchk must be installed. See https://github.com/Open-CMSIS-Pack/devtools # on how to build these tools. # -# yaml-language-server: $schema=https://github.com/Open-CMSIS-Pack/devtools/blob/tools/toolbox/1.0.0/tools/packgen/schema/manifest.schema.json +# yaml-language-server: $schema=https://raw.githubusercontent.com/Open-CMSIS-Pack/devtools/tools/projmgr/2.4.0/tools/packgen/schema/manifest.schema.json # build: - name: "build-dir" @@ -44,22 +44,20 @@ packs: description: "ML sample use case APIs derived from ml-embedded-eval-kit" vendor: "ARM" license: "LICENSE_APACHE_2.0.txt" - url: "https://git.mlplatform.org/ml/ethos-u/ml-embedded-evaluation-kit.git/plain/source/application/api/use_case/readme.md" + url: "https://git.mlplatform.org/ml/ethos-u/ml-embedded-evaluation-kit.git/plain/resources/cmsis-packs/" requirements: packages: - - attributes: {vendor: "tensorflow", name: "tensorflow-lite-micro", version: "1.22.8"} + - attributes: {vendor: "tensorflow", name: "tensorflow-lite-micro", version: "1.23.2"} - attributes: {vendor: "ARM", name: "CMSIS", version: "5.9.0"} - - attributes: {vendor: "ARM", name: "CMSIS-DSP", version: "1.14.4"} + - attributes: {vendor: "ARM", name: "CMSIS-DSP", version: "1.15.0"} - attributes: {vendor: "ARM", name: "CMSIS-NN", version: "4.0.0"} releases: - version: "23.2.0" - date: "2023-03-23" + date: "2024-05-21" description: "23.02.0 release package" - - version: "22.11.0" - date: "2022-11-09" - description: "22.11.0 release package" + url: "https://git.mlplatform.org/ml/ethos-u/ml-embedded-evaluation-kit.git/plain/resources/cmsis-packs/ARM.ml-embedded-eval-kit-uc-api.23.2.0.pack?h=refs/heads/main" - version: "22.8.0-Beta" date: "2022-09-29" description: "Beta release package" @@ -75,8 +73,8 @@ packs: attributes: { Cclass: "ML Eval Kit", Cgroup: "Common", Csub: "Log", Cversion: "1.0.0" } description: "Logging header-only utility" files: - - name: "source/log/include/" - attributes: {category: include} + - name: "source/log/include/log_macros.h" + attributes: {category: header} - name: arm_math target: arm_math diff --git a/scripts/cmake/configuration_options/cmsis_opts.cmake b/scripts/cmake/configuration_options/cmsis_opts.cmake index 86eedbc..8da8c05 100644 --- a/scripts/cmake/configuration_options/cmsis_opts.cmake +++ b/scripts/cmake/configuration_options/cmsis_opts.cmake @@ -27,15 +27,15 @@ message(STATUS "Assessing CMSIS configuration options...") USER_OPTION(CMSIS_SRC_PATH "Path to CMSIS-5 sources" - "${DEPENDENCY_ROOT_DIR}/cmsis" + "${MLEK_DEPENDENCY_ROOT_DIR}/cmsis" PATH) USER_OPTION(CMSIS_DSP_SRC_PATH "Path to CMSIS-5 DSP sources" - "${DEPENDENCY_ROOT_DIR}/cmsis-dsp" + "${MLEK_DEPENDENCY_ROOT_DIR}/cmsis-dsp" PATH) USER_OPTION(CMSIS_NN_SRC_PATH "Path to CMSIS-5 NN sources" - "${DEPENDENCY_ROOT_DIR}/cmsis-nn" + "${MLEK_DEPENDENCY_ROOT_DIR}/cmsis-nn" PATH) diff --git a/scripts/cmake/configuration_options/common_opts.cmake b/scripts/cmake/configuration_options/common_opts.cmake index 52c254e..2c620c2 100644 --- a/scripts/cmake/configuration_options/common_opts.cmake +++ b/scripts/cmake/configuration_options/common_opts.cmake @@ -33,7 +33,7 @@ USER_OPTION(LOG_LEVEL "Log level for the application" ## TensorFlow options USER_OPTION(TENSORFLOW_SRC_PATH "Path to the root of the TensorFlow Lite Micro sources" - "${DEPENDENCY_ROOT_DIR}/tensorflow" + "${MLEK_DEPENDENCY_ROOT_DIR}/tensorflow" PATH) USER_OPTION(TENSORFLOW_LITE_MICRO_BUILD_TYPE "TensorFlow Lite Mirco build type (release/debug etc.)" diff --git a/scripts/cmake/configuration_options/npu_opts.cmake b/scripts/cmake/configuration_options/npu_opts.cmake index dc0123b..c947ac9 100644 --- a/scripts/cmake/configuration_options/npu_opts.cmake +++ b/scripts/cmake/configuration_options/npu_opts.cmake @@ -35,13 +35,13 @@ message(STATUS "Assessing NPU configuration options...") USER_OPTION(ETHOS_U_NPU_TIMING_ADAPTER_SRC_PATH "Path to Ethos-U NPU timing adapter sources" - "${DEPENDENCY_ROOT_DIR}/core-platform/drivers/timing_adapter" + "${MLEK_DEPENDENCY_ROOT_DIR}/core-platform/drivers/timing_adapter" PATH ) USER_OPTION(ETHOS_U_NPU_DRIVER_SRC_PATH "Path to Ethos-U NPU core driver sources" - "${DEPENDENCY_ROOT_DIR}/core-driver" + "${MLEK_DEPENDENCY_ROOT_DIR}/core-driver" PATH ) diff --git a/scripts/cmake/platforms/mps3/build_configuration.cmake b/scripts/cmake/platforms/mps3/build_configuration.cmake index 8613f50..c29531f 100644 --- a/scripts/cmake/platforms/mps3/build_configuration.cmake +++ b/scripts/cmake/platforms/mps3/build_configuration.cmake @@ -43,7 +43,7 @@ function(set_platform_global_defaults) endif() if (NOT DEFINED CMAKE_TOOLCHAIN_FILE) - set(CMAKE_TOOLCHAIN_FILE ${CMAKE_TOOLCHAIN_DIR}/bare-metal-gcc.cmake + set(CMAKE_TOOLCHAIN_FILE ${MLEK_CMAKE_TOOLCHAIN_DIR}/bare-metal-gcc.cmake CACHE FILEPATH "Toolchain file") endif() @@ -56,7 +56,7 @@ function(set_platform_global_defaults) endif() set(LINKER_SCRIPT_NAME "mps3-${TARGET_SUBSYSTEM}" PARENT_SCOPE) - set(PLATFORM_DRIVERS_DIR "${HAL_PLATFORM_DIR}/mps3" PARENT_SCOPE) + set(PLATFORM_DRIVERS_DIR "${MLEK_HAL_PLATFORM_DIR}/mps3" PARENT_SCOPE) endfunction() diff --git a/scripts/cmake/platforms/mps3/sse-300/mps3-sse-300-debug.ld b/scripts/cmake/platforms/mps3/sse-300/mps3-sse-300-debug.ld index 35f59f6..8a3c672 100644 --- a/scripts/cmake/platforms/mps3/sse-300/mps3-sse-300-debug.ld +++ b/scripts/cmake/platforms/mps3/sse-300/mps3-sse-300-debug.ld @@ -1,5 +1,6 @@ /* - * SPDX-FileCopyrightText: Copyright 2021, 2023 Arm Limited and/or its affiliates <open-source-office@arm.com> + * SPDX-FileCopyrightText: Copyright 2021, 2023-2024 Arm Limited and/or its + * affiliates <open-source-office@arm.com> * SPDX-License-Identifier: Apache-2.0 * * Licensed under the Apache License, Version 2.0 (the "License"); @@ -85,7 +86,8 @@ SECTIONS *Profiler*.obj *lcd*.obj *timing_adapter.c.obj - *s4*.o) + *s4*.o + *cp-demangle.o) .text*) KEEP(*(.init)) @@ -211,6 +213,8 @@ SECTIONS . = ALIGN(4); *s4*.o (*.text*) /* Temporary solution to move s4 operations to DDR. */ . = ALIGN(4); + *cp-demangle.o (*.text*) /* from stdc++ lib */ + . = ALIGN(4); } > DDR AT > DDR /** diff --git a/scripts/cmake/platforms/mps4/build_configuration.cmake b/scripts/cmake/platforms/mps4/build_configuration.cmake index 8230c1f..6ea34ef 100644 --- a/scripts/cmake/platforms/mps4/build_configuration.cmake +++ b/scripts/cmake/platforms/mps4/build_configuration.cmake @@ -43,7 +43,7 @@ function(set_platform_global_defaults) endif() if (NOT DEFINED CMAKE_TOOLCHAIN_FILE) - set(CMAKE_TOOLCHAIN_FILE ${CMAKE_TOOLCHAIN_DIR}/bare-metal-gcc.cmake + set(CMAKE_TOOLCHAIN_FILE ${MLEK_CMAKE_TOOLCHAIN_DIR}/bare-metal-gcc.cmake CACHE FILEPATH "Toolchain file") endif() @@ -56,7 +56,7 @@ function(set_platform_global_defaults) endif() set(LINKER_SCRIPT_NAME "mps4-${TARGET_SUBSYSTEM}" PARENT_SCOPE) - set(PLATFORM_DRIVERS_DIR "${HAL_PLATFORM_DIR}/mps4" PARENT_SCOPE) + set(PLATFORM_DRIVERS_DIR "${MLEK_HAL_PLATFORM_DIR}/mps4" PARENT_SCOPE) endfunction() diff --git a/scripts/cmake/platforms/native/build_configuration.cmake b/scripts/cmake/platforms/native/build_configuration.cmake index 0519ec1..81e572e 100644 --- a/scripts/cmake/platforms/native/build_configuration.cmake +++ b/scripts/cmake/platforms/native/build_configuration.cmake @@ -18,11 +18,11 @@ function(set_platform_global_defaults) message(STATUS "Platform: Native (Linux based x86_64/aarch64 system)") if (NOT DEFINED CMAKE_TOOLCHAIN_FILE) - set(CMAKE_TOOLCHAIN_FILE ${CMAKE_TOOLCHAIN_DIR}/native-gcc.cmake + set(CMAKE_TOOLCHAIN_FILE ${MLEK_CMAKE_TOOLCHAIN_DIR}/native-gcc.cmake CACHE FILEPATH "Toolchain file") endif() - set(PLATFORM_DRIVERS_DIR "${HAL_PLATFORM_DIR}/native" PARENT_SCOPE) - set(TEST_TPIP ${DOWNLOAD_DEP_DIR}/test) + set(PLATFORM_DRIVERS_DIR "${MLEK_HAL_PLATFORM_DIR}/native" PARENT_SCOPE) + set(TEST_TPIP ${MLEK_DOWNLOAD_DEP_DIR}/test) file(MAKE_DIRECTORY ${TEST_TPIP}) set(TEST_TPIP_INCLUDE ${TEST_TPIP}/include) diff --git a/scripts/cmake/platforms/simple_platform/build_configuration.cmake b/scripts/cmake/platforms/simple_platform/build_configuration.cmake index 07c9e05..72e1260 100644 --- a/scripts/cmake/platforms/simple_platform/build_configuration.cmake +++ b/scripts/cmake/platforms/simple_platform/build_configuration.cmake @@ -24,12 +24,12 @@ function(set_platform_global_defaults) include(cmsis_opts) if (NOT DEFINED CMAKE_TOOLCHAIN_FILE) - set(CMAKE_TOOLCHAIN_FILE ${CMAKE_TOOLCHAIN_DIR}/bare-metal-gcc.cmake + set(CMAKE_TOOLCHAIN_FILE ${MLEK_CMAKE_TOOLCHAIN_DIR}/bare-metal-gcc.cmake CACHE FILEPATH "Toolchain file") endif() set(LINKER_SCRIPT_NAME "simple_platform" PARENT_SCOPE) - set(PLATFORM_DRIVERS_DIR "${HAL_PLATFORM_DIR}/simple" PARENT_SCOPE) + set(PLATFORM_DRIVERS_DIR "${MLEK_HAL_PLATFORM_DIR}/simple" PARENT_SCOPE) endfunction() function(platform_custom_post_build) diff --git a/scripts/cmake/platforms/simple_platform/simple_platform_debug.ld b/scripts/cmake/platforms/simple_platform/simple_platform_debug.ld index dbedb8e..d3364f0 100644 --- a/scripts/cmake/platforms/simple_platform/simple_platform_debug.ld +++ b/scripts/cmake/platforms/simple_platform/simple_platform_debug.ld @@ -1,5 +1,6 @@ /* - * SPDX-FileCopyrightText: Copyright 2021,2023 Arm Limited and/or its affiliates <open-source-office@arm.com> + * SPDX-FileCopyrightText: Copyright 2021,2023-2024 Arm Limited and/or its + * affiliates <open-source-office@arm.com> * SPDX-License-Identifier: Apache-2.0 * * Licensed under the Apache License, Version 2.0 (the "License"); @@ -78,7 +79,8 @@ SECTIONS *lcd*.obj *Profiler*.obj *timing_adapter.c.obj - *s4*.o) + *s4*.o + *cp-demangle.o) .text*) KEEP(*(.init)) @@ -204,6 +206,8 @@ SECTIONS . = ALIGN(4); *s4*.o (*.text*) /* Temporary solution to move s4 operations to DDR. */ . = ALIGN(4); + *cp-demangle.o (*.text*) /* from stdc++ lib */ + . = ALIGN(4); } > DDR AT > DDR /** diff --git a/scripts/cmake/source_gen_utils.cmake b/scripts/cmake/source_gen_utils.cmake index 3406615..b60c85e 100644 --- a/scripts/cmake/source_gen_utils.cmake +++ b/scripts/cmake/source_gen_utils.cmake @@ -32,7 +32,7 @@ function(generate_images_code input_dir src_out hdr_out img_size) message(STATUS "Generating image files from ${input_dir_abs}") execute_process( - COMMAND ${PYTHON} ${SCRIPTS_DIR}/py/gen_rgb_cpp.py + COMMAND ${PYTHON} ${MLEK_SCRIPTS_DIR}/py/gen_rgb_cpp.py --image_path ${input_dir_abs} --source_folder_path ${src_out_abs} --header_folder_path ${hdr_out_abs} @@ -60,7 +60,7 @@ function(generate_audio_code input_dir src_out hdr_out s_rate_opt mono_opt off_o message(STATUS "Generating audio files from ${input_dir_abs}") execute_process( - COMMAND ${PYTHON} ${SCRIPTS_DIR}/py/gen_audio_cpp.py + COMMAND ${PYTHON} ${MLEK_SCRIPTS_DIR}/py/gen_audio_cpp.py --audio_path ${input_dir_abs} --source_folder_path ${src_out_abs} --header_folder_path ${hdr_out_abs} @@ -89,7 +89,7 @@ function(generate_default_input_code hdr_out) message(STATUS "Generating default input files") execute_process( - COMMAND ${PYTHON} ${SCRIPTS_DIR}/py/gen_default_input_cpp.py + COMMAND ${PYTHON} ${MLEK_SCRIPTS_DIR}/py/gen_default_input_cpp.py --header_folder_path ${hdr_out_abs} RESULT_VARIABLE return_code ) @@ -133,7 +133,7 @@ function(generate_tflite_code) endforeach() execute_process( - COMMAND ${PYTHON} ${SCRIPTS_DIR}/py/gen_model_cpp.py + COMMAND ${PYTHON} ${MLEK_SCRIPTS_DIR}/py/gen_model_cpp.py --tflite_path ${ABS_MODEL_PATH} --output_dir ${ABS_DESTINATION} ${py_arg_exp} RESULT_VARIABLE return_code @@ -176,7 +176,7 @@ function(generate_labels_code) message(STATUS "writing to ${hdr_out_abs}/${PARSED_OUTPUT_FILENAME}.hpp and ${src_out_abs}/${PARSED_OUTPUT_FILENAME}.cc") execute_process( - COMMAND ${PYTHON} ${SCRIPTS_DIR}/py/gen_labels_cpp.py + COMMAND ${PYTHON} ${MLEK_SCRIPTS_DIR}/py/gen_labels_cpp.py --labels_file ${input_abs} --source_folder_path ${src_out_abs} --header_folder_path ${hdr_out_abs} @@ -241,7 +241,7 @@ function(generate_test_data_code) message(STATUS "Generating test ifm and ofm files from ${input_dir_abs}") execute_process( - COMMAND ${PYTHON} ${SCRIPTS_DIR}/py/gen_test_data_cpp.py + COMMAND ${PYTHON} ${MLEK_SCRIPTS_DIR}/py/gen_test_data_cpp.py --data_folder_path ${input_dir_abs} --source_folder_path ${src_out_abs} --header_folder_path ${hdr_out_abs} @@ -265,8 +265,8 @@ function(setup_source_generator) # If a virtual env has been created in the resources_downloaded directory, # use it for source generator. Else, fall back to creating a virtual env # in the current build directory. - if (EXISTS ${RESOURCES_DIR}/env) - set(DEFAULT_VENV_DIR ${RESOURCES_DIR}/env) + if (EXISTS ${MLEK_RESOURCES_DIR}/env) + set(DEFAULT_VENV_DIR ${MLEK_RESOURCES_DIR}/env) else() set(DEFAULT_VENV_DIR ${CMAKE_BINARY_DIR}/venv) endif() @@ -326,7 +326,7 @@ function(setup_source_generator) endif () execute_process( - COMMAND ${PYTHON} -m pip install -r ${SCRIPTS_DIR}/py/requirements.txt + COMMAND ${PYTHON} -m pip install -r ${MLEK_SCRIPTS_DIR}/py/requirements.txt RESULT_VARIABLE return_code ) if (NOT return_code EQUAL "0") diff --git a/scripts/cmake/toolchains/bare-metal-armclang.cmake b/scripts/cmake/toolchains/bare-metal-armclang.cmake index fcea118..a7d4a37 100644 --- a/scripts/cmake/toolchains/bare-metal-armclang.cmake +++ b/scripts/cmake/toolchains/bare-metal-armclang.cmake @@ -1,5 +1,6 @@ #---------------------------------------------------------------------------- -# SPDX-FileCopyrightText: Copyright 2021 - 2023 Arm Limited and/or its affiliates <open-source-office@arm.com> +# SPDX-FileCopyrightText: Copyright 2021 - 2024 Arm Limited and/or its +# affiliates <open-source-office@arm.com> # SPDX-License-Identifier: Apache-2.0 # # Licensed under the Apache License, Version 2.0 (the "License"); @@ -86,7 +87,7 @@ add_compile_options( # Arch compile options: add_compile_options( -mthumb - --target=arm-arm-non-eabi + --target=arm-arm-none-eabi -mlittle-endian -MD ${CPU_COMPILE_OPTION} diff --git a/scripts/cmake/util_functions.cmake b/scripts/cmake/util_functions.cmake index 6966963..102c598 100644 --- a/scripts/cmake/util_functions.cmake +++ b/scripts/cmake/util_functions.cmake @@ -183,12 +183,11 @@ function(add_platform_build_configuration) set(oneValueArgs TARGET_PLATFORM) cmake_parse_arguments(PARSED "" "${oneValueArgs}" "" ${ARGN} ) message(STATUS "Searching for ${PARSED_TARGET_PLATFORM} build configuration") - list(APPEND PLATFORM_BUILD_CONFIG_DIRS ${SCRIPTS_DIR}/cmake/platforms) FIND_PATH(PLATFORM_BUILD_CONFIG NAMES build_configuration.cmake PATH_SUFFIXES ${PARSED_TARGET_PLATFORM} - PATHS ${PLATFORM_BUILD_CONFIG_DIRS} + PATHS ${MLEK_PLATFORM_BUILD_CONFIG_DIRS} ) message(STATUS "Found build configuration: ${PLATFORM_BUILD_CONFIG}") @@ -199,9 +198,9 @@ function(check_update_public_resources resource_downloaded_dir) string(JOIN "/" FILE_URL ${resource_downloaded_dir}) execute_process( - COMMAND python3 ${SCRIPTS_DIR}/py/check_update_resources_downloaded.py + COMMAND python3 ${MLEK_SCRIPTS_DIR}/py/check_update_resources_downloaded.py --resource_downloaded_dir ${resource_downloaded_dir} - --setup_script_path ${SCRIPTS_DIR}/../set_up_default_resources.py + --setup_script_path ${MLEK_SCRIPTS_DIR}/../set_up_default_resources.py RESULT_VARIABLE return_code ) if (NOT return_code EQUAL "0") @@ -228,4 +227,4 @@ function(set_input_file_path_user_option file_extension use_case) ${FIRST_INPUT_FILE} PATH_OR_FILE) endif() -endfunction()
\ No newline at end of file +endfunction() |