aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNir Ekhauz <nir.ekhauz@arm.com>2021-09-13 16:56:39 +0300
committerNir Ekhauz <nir.ekhauz@arm.com>2021-09-14 18:23:05 +0300
commit1af67f74d1e11bea274abd197bcf4cb914dd6c9d (patch)
treebc5ca66d4db2e67b3159ec9c7f6fa8dd774a60ef
parentff2084bc16c91ec71820785ed4f5018886375549 (diff)
downloadethos-u-core-platform-1af67f74d1e11bea274abd197bcf4cb914dd6c9d.tar.gz
Enable the execution of run_platform.py when no values for pmu configuration are defined
Define default values Jira: MLBEDSW-5215 Change-Id: Ie498f7170804a2f1a6d3eb64fff4c859272efe2b
-rw-r--r--applications/baremetal/main.cpp8
-rwxr-xr-xscripts/run_platform.py12
-rw-r--r--targets/corstone-300/CMakeLists.txt8
3 files changed, 12 insertions, 16 deletions
diff --git a/applications/baremetal/main.cpp b/applications/baremetal/main.cpp
index af14e20..02c2471 100644
--- a/applications/baremetal/main.cpp
+++ b/applications/baremetal/main.cpp
@@ -54,16 +54,16 @@ InferenceProcess::InferenceProcess inferenceProcess(TFLuTensorArena, TENSOR_AREN
uint8_t outputData[sizeof(expectedOutputData)] __attribute__((aligned(16), section("output_data_sec")));
-#ifndef ETHOSU_PMU_EVENT_0
+#if !(defined(ETHOSU_PMU_EVENT_0) && ETOSU_PMU_EVENT_0 >= 0)
#define ETHOSU_PMU_EVENT_0 ETHOSU_PMU_CYCLE
#endif
-#ifndef ETHOSU_PMU_EVENT_1
+#if !(defined(ETHOSU_PMU_EVENT_1) && ETOSU_PMU_EVENT_1 >= 0)
#define ETHOSU_PMU_EVENT_1 ETHOSU_PMU_NPU_ACTIVE
#endif
-#ifndef ETHOSU_PMU_EVENT_2
+#if !(defined(ETHOSU_PMU_EVENT_2) && ETOSU_PMU_EVENT_2 >= 0)
#define ETHOSU_PMU_EVENT_2 ETHOSU_PMU_NO_EVENT
#endif
-#ifndef ETHOSU_PMU_EVENT_3
+#if !(defined(ETHOSU_PMU_EVENT_3) && ETOSU_PMU_EVENT_3 >= 0)
#define ETHOSU_PMU_EVENT_3 ETHOSU_PMU_NO_EVENT
#endif
diff --git a/scripts/run_platform.py b/scripts/run_platform.py
index c0ee822..a084faa 100755
--- a/scripts/run_platform.py
+++ b/scripts/run_platform.py
@@ -42,18 +42,14 @@ def run_cmd(cmd, **kwargs):
def build_core_platform(output_folder, target, toolchain, pmu):
build_folder = output_folder/"model"/"build"
- inner_pmu = [0, 0, 0, 0]
- for idx in range(len(pmu)):
- inner_pmu[idx] = pmu[idx]
cmake_cmd = ["cmake",
CORE_PLATFORM_PATH/"targets"/target,
f"-B{build_folder}",
f"-DCMAKE_TOOLCHAIN_FILE={CORE_PLATFORM_PATH/'cmake'/'toolchain'/(toolchain + '.cmake')}",
- f"-DBAREMETAL_PATH={output_folder}",
- f"-DETHOSU_PMU_EVENT_0={inner_pmu[0]}",
- f"-DETHOSU_PMU_EVENT_1={inner_pmu[1]}",
- f"-DETHOSU_PMU_EVENT_2={inner_pmu[2]}",
- f"-DETHOSU_PMU_EVENT_3={inner_pmu[3]}"]
+ f"-DBAREMETAL_PATH={output_folder}"]
+ if pmu:
+ for i in range(len(pmu)):
+ cmake_cmd += [f"-DETHOSU_PMU_EVENT_{i}={pmu[i]}"]
run_cmd(cmake_cmd)
diff --git a/targets/corstone-300/CMakeLists.txt b/targets/corstone-300/CMakeLists.txt
index 06469d8..e5276fe 100644
--- a/targets/corstone-300/CMakeLists.txt
+++ b/targets/corstone-300/CMakeLists.txt
@@ -58,10 +58,10 @@ set(ETHOSU_TARGET_NPU_CONFIG "ethos-u55-128" CACHE STRING "NPU configuration")
set(ETHOSU_TARGET_NPU_COUNT 1 CACHE INTERNAL "Number of NPUs")
set(ETHOSU_TARGET_NPU_TA_COUNT 2 CACHE INTERNAL "Number of timing adapters per NPU")
-set(ETHOSU_PMU_EVENT_0 0 CACHE STRING "PMU Event #0")
-set(ETHOSU_PMU_EVENT_1 0 CACHE STRING "PMU Event #1")
-set(ETHOSU_PMU_EVENT_2 0 CACHE STRING "PMU Event #2")
-set(ETHOSU_PMU_EVENT_3 0 CACHE STRING "PMU Event #3")
+set(ETHOSU_PMU_EVENT_0 -1 CACHE STRING "PMU Event #0")
+set(ETHOSU_PMU_EVENT_1 -1 CACHE STRING "PMU Event #1")
+set(ETHOSU_PMU_EVENT_2 -1 CACHE STRING "PMU Event #2")
+set(ETHOSU_PMU_EVENT_3 -1 CACHE STRING "PMU Event #3")
target_compile_definitions(ethosu_target_common INTERFACE
ETHOSU_PMU_EVENT_0=${ETHOSU_PMU_EVENT_0}