diff --git a/tests/benchmarks/multicore/idle/Kconfig.sysbuild b/tests/benchmarks/multicore/idle/Kconfig.sysbuild index 2a56f57a1cdb..749b713747f0 100644 --- a/tests/benchmarks/multicore/idle/Kconfig.sysbuild +++ b/tests/benchmarks/multicore/idle/Kconfig.sysbuild @@ -8,3 +8,21 @@ source "share/sysbuild/Kconfig" config REMOTE_BOARD string "The board used for remote target" + +if SOC_NRF54H20 +choice NETCORE + default NETCORE_CUSTOM + +config NETCORE_CUSTOM + bool "Custom netcore FW" +endchoice + +config NETCORE_IMAGE_NAME + string + default "remote" if NETCORE_CUSTOM + +config NETCORE_IMAGE_PATH + string + default "${ZEPHYR_NRF_MODULE_DIR}/tests/benchmarks/multicore/idle/remote" if NETCORE_CUSTOM + +endif # SOC_NRF54H20 diff --git a/tests/benchmarks/multicore/idle/sysbuild.cmake b/tests/benchmarks/multicore/idle/sysbuild.cmake index d2b7f799eaac..3a9544f89d2c 100644 --- a/tests/benchmarks/multicore/idle/sysbuild.cmake +++ b/tests/benchmarks/multicore/idle/sysbuild.cmake @@ -8,17 +8,19 @@ if("${SB_CONFIG_REMOTE_BOARD}" STREQUAL "") message(FATAL_ERROR "REMOTE_BOARD must be set to a valid board name") endif() -# Add remote project -ExternalZephyrProject_Add( - APPLICATION remote - SOURCE_DIR ${APP_DIR}/remote - BOARD ${SB_CONFIG_REMOTE_BOARD} - BOARD_REVISION ${BOARD_REVISION} - ) -set_property(GLOBAL APPEND PROPERTY PM_DOMAINS CPUNET) -set_property(GLOBAL APPEND PROPERTY PM_CPUNET_IMAGES remote) -set_property(GLOBAL PROPERTY DOMAIN_APP_CPUNET remote) -set(CPUNET_PM_DOMAIN_DYNAMIC_PARTITION remote CACHE INTERNAL "") +if(NOT SB_CONFIG_SOC_NRF54H20) + # Add remote project + ExternalZephyrProject_Add( + APPLICATION remote + SOURCE_DIR ${APP_DIR}/remote + BOARD ${SB_CONFIG_REMOTE_BOARD} + BOARD_REVISION ${BOARD_REVISION} + ) + set_property(GLOBAL APPEND PROPERTY PM_DOMAINS CPUNET) + set_property(GLOBAL APPEND PROPERTY PM_CPUNET_IMAGES remote) + set_property(GLOBAL PROPERTY DOMAIN_APP_CPUNET remote) + set(CPUNET_PM_DOMAIN_DYNAMIC_PARTITION remote CACHE INTERNAL "") +endif() # Add a dependency so that the remote image will be built and flashed first add_dependencies(${DEFAULT_IMAGE} remote) diff --git a/tests/benchmarks/multicore/idle/sysbuild/mcuboot.conf b/tests/benchmarks/multicore/idle/sysbuild/mcuboot.conf new file mode 100644 index 000000000000..6f88cf7325da --- /dev/null +++ b/tests/benchmarks/multicore/idle/sysbuild/mcuboot.conf @@ -0,0 +1,4 @@ +CONFIG_LOG=n +CONFIG_SERIAL=n + +CONFIG_PM_S2RAM_RESUME_INTERMEDIARY=y diff --git a/tests/benchmarks/multicore/idle/testcase.yaml b/tests/benchmarks/multicore/idle/testcase.yaml index 5e48bde7b1a3..edf91d542bda 100644 --- a/tests/benchmarks/multicore/idle/testcase.yaml +++ b/tests/benchmarks/multicore/idle/testcase.yaml @@ -124,6 +124,39 @@ tests: - "${CUSTOM_ROOT_TEST_DIR}/test_measure_power_consumption.py::test_measure_and_data_dump_power_consumption" tags: ppk_power_measure + benchmarks.multicore.idle.nrf54h20dk_cpuapp_cpurad.s2ram.mcuboot: + platform_allow: + - nrf54h20dk/nrf54h20/cpuapp + integration_platforms: + - nrf54h20dk/nrf54h20/cpuapp + extra_args: + - SB_CONF_FILE=sysbuild/nrf54h20dk_nrf54h20_cpurad.conf + - CONFIG_SOC_NRF54H20_CPURAD_ENABLE=y + - CONFIG_FIRST_SLEEP_OFFSET=y + - CONFIG_PM=y + - CONFIG_PM_S2RAM=y + - CONFIG_POWEROFF=y + - CONFIG_PM_S2RAM_CUSTOM_MARKING=y + - CONFIG_CONSOLE=n + - CONFIG_UART_CONSOLE=n + - CONFIG_SERIAL=n + - CONFIG_GPIO=n + - CONFIG_BOOT_BANNER=n + - remote_CONFIG_PM=y + - remote_CONFIG_POWEROFF=y + - remote_CONFIG_CONSOLE=n + - remote_CONFIG_UART_CONSOLE=n + - remote_CONFIG_SERIAL=n + - remote_CONFIG_GPIO=n + - remote_CONFIG_BOOT_BANNER=n + - SB_CONFIG_BOOTLOADER_MCUBOOT=y + harness: pytest + harness_config: + fixture: lfclk_at_lfxo + pytest_root: + - "${CUSTOM_ROOT_TEST_DIR}/test_measure_power_consumption.py::test_measure_and_data_dump_power_consumption" + tags: ppk_power_measure + benchmarks.multicore.idle.nrf54h20dk_cpuapp_cpurad.s2ram.fpu: platform_allow: - nrf54h20dk/nrf54h20/cpuapp diff --git a/tests/benchmarks/multicore/idle_adc/Kconfig.sysbuild b/tests/benchmarks/multicore/idle_adc/Kconfig.sysbuild index d5238c072470..21e6f9cbb661 100644 --- a/tests/benchmarks/multicore/idle_adc/Kconfig.sysbuild +++ b/tests/benchmarks/multicore/idle_adc/Kconfig.sysbuild @@ -6,6 +6,17 @@ source "share/sysbuild/Kconfig" -config REMOTE_BOARD - string - default "$(BOARD)/nrf54h20/cpurad" if SOC_NRF54H20_CPUAPP +choice NETCORE + default NETCORE_CUSTOM + +config NETCORE_CUSTOM + bool "Custom netcore FW" +endchoice + +config NETCORE_IMAGE_NAME + string + default "remote" if NETCORE_CUSTOM + +config NETCORE_IMAGE_PATH + string + default "${ZEPHYR_NRF_MODULE_DIR}/tests/benchmarks/power_consumption/common/remote_sleep_forever" diff --git a/tests/benchmarks/multicore/idle_adc/boards/nrf54h20dk_mcuboot.overlay b/tests/benchmarks/multicore/idle_adc/boards/nrf54h20dk_mcuboot.overlay new file mode 100644 index 000000000000..fb72272fab46 --- /dev/null +++ b/tests/benchmarks/multicore/idle_adc/boards/nrf54h20dk_mcuboot.overlay @@ -0,0 +1,13 @@ +/* + * Copyright (c) 2025 Nordic Semiconductor ASA + * + * SPDX-License-Identifier: LicenseRef-Nordic-5-Clause + */ + +/ { + aliases { + /delete-property/ led1; + }; +}; + +/delete-node/ &led1; diff --git a/tests/benchmarks/multicore/idle_adc/sysbuild.cmake b/tests/benchmarks/multicore/idle_adc/sysbuild.cmake deleted file mode 100644 index ac9007eb2b89..000000000000 --- a/tests/benchmarks/multicore/idle_adc/sysbuild.cmake +++ /dev/null @@ -1,22 +0,0 @@ -# -# Copyright (c) 2024 Nordic Semiconductor ASA -# -# SPDX-License-Identifier: LicenseRef-Nordic-5-Clause -# - -if("${SB_CONFIG_REMOTE_BOARD}" STREQUAL "") - message(FATAL_ERROR "REMOTE_BOARD must be set to a valid board name") -endif() - -# Add remote project -ExternalZephyrProject_Add( - APPLICATION remote - SOURCE_DIR ${ZEPHYR_NRF_MODULE_DIR}/tests/benchmarks/power_consumption/common/remote_sleep_forever - BOARD ${SB_CONFIG_REMOTE_BOARD} - BOARD_REVISION ${BOARD_REVISION} - ) - -# Add a dependency so that the remote image will be built and flashed first -add_dependencies(idle_adc remote) -# Add dependency so that the remote image is flashed first. -sysbuild_add_dependencies(FLASH idle_adc remote) diff --git a/tests/benchmarks/multicore/idle_adc/sysbuild/mcuboot.conf b/tests/benchmarks/multicore/idle_adc/sysbuild/mcuboot.conf new file mode 100644 index 000000000000..6f88cf7325da --- /dev/null +++ b/tests/benchmarks/multicore/idle_adc/sysbuild/mcuboot.conf @@ -0,0 +1,4 @@ +CONFIG_LOG=n +CONFIG_SERIAL=n + +CONFIG_PM_S2RAM_RESUME_INTERMEDIARY=y diff --git a/tests/benchmarks/multicore/idle_adc/testcase.yaml b/tests/benchmarks/multicore/idle_adc/testcase.yaml index 5a17efb6baa0..2020cb0bbba1 100644 --- a/tests/benchmarks/multicore/idle_adc/testcase.yaml +++ b/tests/benchmarks/multicore/idle_adc/testcase.yaml @@ -6,6 +6,22 @@ common: tests: benchmarks.multicore.idle_adc.nrf54h20dk_cpuapp_cpurad.s2ram: + tags: + - ci_build + - ci_tests_benchmarks_multicore + - ppk_power_measure + filter: not CONFIG_COVERAGE + harness: pytest + platform_allow: + - nrf54h20dk/nrf54h20/cpuapp + integration_platforms: + - nrf54h20dk/nrf54h20/cpuapp + harness_config: + fixture: gpio_loopback + pytest_root: + - "${CUSTOM_ROOT_TEST_DIR}/test_measure_power_consumption.py::test_measure_and_data_dump_power_consumption_adc" + + benchmarks.multicore.idle_adc.nrf54h20dk_cpuapp_cpurad.s2ram.mcuboot: tags: - ci_build - ci_tests_benchmarks_multicore @@ -17,7 +33,8 @@ tests: integration_platforms: - nrf54h20dk/nrf54h20/cpuapp extra_args: - - FILE_SUFFIX=s2ram + - SB_CONFIG_BOOTLOADER_MCUBOOT=y + - mcuboot_EXTRA_DTC_OVERLAY_FILE="${ZEPHYR_NRF_MODULE_DIR}/tests/benchmarks/multicore/idle_adc/boards/nrf54h20dk_mcuboot.overlay" harness_config: fixture: gpio_loopback pytest_root: diff --git a/tests/benchmarks/multicore/idle_comp/Kconfig.sysbuild b/tests/benchmarks/multicore/idle_comp/Kconfig.sysbuild index d5238c072470..21e6f9cbb661 100644 --- a/tests/benchmarks/multicore/idle_comp/Kconfig.sysbuild +++ b/tests/benchmarks/multicore/idle_comp/Kconfig.sysbuild @@ -6,6 +6,17 @@ source "share/sysbuild/Kconfig" -config REMOTE_BOARD - string - default "$(BOARD)/nrf54h20/cpurad" if SOC_NRF54H20_CPUAPP +choice NETCORE + default NETCORE_CUSTOM + +config NETCORE_CUSTOM + bool "Custom netcore FW" +endchoice + +config NETCORE_IMAGE_NAME + string + default "remote" if NETCORE_CUSTOM + +config NETCORE_IMAGE_PATH + string + default "${ZEPHYR_NRF_MODULE_DIR}/tests/benchmarks/power_consumption/common/remote_sleep_forever" diff --git a/tests/benchmarks/multicore/idle_comp/sysbuild.cmake b/tests/benchmarks/multicore/idle_comp/sysbuild.cmake deleted file mode 100644 index 7b09b5bb6cbb..000000000000 --- a/tests/benchmarks/multicore/idle_comp/sysbuild.cmake +++ /dev/null @@ -1,22 +0,0 @@ -# -# Copyright (c) 2024 Nordic Semiconductor ASA -# -# SPDX-License-Identifier: LicenseRef-Nordic-5-Clause -# - -if("${SB_CONFIG_REMOTE_BOARD}" STREQUAL "") - message(FATAL_ERROR "REMOTE_BOARD must be set to a valid board name") -endif() - -# Add remote project -ExternalZephyrProject_Add( - APPLICATION remote - SOURCE_DIR ${ZEPHYR_NRF_MODULE_DIR}/tests/benchmarks/power_consumption/common/remote_sleep_forever - BOARD ${SB_CONFIG_REMOTE_BOARD} - BOARD_REVISION ${BOARD_REVISION} - ) - -# Add a dependency so that the remote image will be built and flashed first -add_dependencies(idle_comp remote) -# Add dependency so that the remote image is flashed first. -sysbuild_add_dependencies(FLASH idle_comp remote) diff --git a/tests/benchmarks/multicore/idle_comp/sysbuild/mcuboot.conf b/tests/benchmarks/multicore/idle_comp/sysbuild/mcuboot.conf new file mode 100644 index 000000000000..6f88cf7325da --- /dev/null +++ b/tests/benchmarks/multicore/idle_comp/sysbuild/mcuboot.conf @@ -0,0 +1,4 @@ +CONFIG_LOG=n +CONFIG_SERIAL=n + +CONFIG_PM_S2RAM_RESUME_INTERMEDIARY=y diff --git a/tests/benchmarks/multicore/idle_comp/testcase.yaml b/tests/benchmarks/multicore/idle_comp/testcase.yaml index 49a14b67ee1d..f07460e6ffba 100644 --- a/tests/benchmarks/multicore/idle_comp/testcase.yaml +++ b/tests/benchmarks/multicore/idle_comp/testcase.yaml @@ -16,7 +16,26 @@ tests: integration_platforms: - nrf54h20dk/nrf54h20/cpuapp extra_args: - - FILE_SUFFIX=s2ram + - EXTRA_DTC_OVERLAY_FILE="boards/comp.overlay" + harness_config: + fixture: gpio_loopback + pytest_root: + - "${CUSTOM_ROOT_TEST_DIR}/test_measure_power_consumption.py::test_measure_and_data_dump_power_consumption_comp" + + benchmarks.multicore.idle_comp.nrf54h20dk_cpuapp_cpurad.s2ram.mcuboot: + tags: + - ci_build + - ci_tests_benchmarks_multicore + - ppk_power_measure + filter: not CONFIG_COVERAGE + harness: pytest + platform_allow: + - nrf54h20dk/nrf54h20/cpuapp + integration_platforms: + - nrf54h20dk/nrf54h20/cpuapp + extra_args: + - SB_CONFIG_BOOTLOADER_MCUBOOT=y + - mcuboot_EXTRA_DTC_OVERLAY_FILE="${ZEPHYR_NRF_MODULE_DIR}/tests/benchmarks/multicore/idle_comp/boards/nrf54h20dk_nrf54h20_cpuapp.overlay" - EXTRA_DTC_OVERLAY_FILE="boards/comp.overlay" harness_config: fixture: gpio_loopback @@ -35,7 +54,6 @@ tests: integration_platforms: - nrf54h20dk/nrf54h20/cpuapp extra_args: - - FILE_SUFFIX=s2ram - EXTRA_DTC_OVERLAY_FILE="boards/lpcomp.overlay" harness_config: fixture: gpio_loopback diff --git a/tests/benchmarks/multicore/idle_counter/Kconfig.sysbuild b/tests/benchmarks/multicore/idle_counter/Kconfig.sysbuild new file mode 100644 index 000000000000..37d6f236b965 --- /dev/null +++ b/tests/benchmarks/multicore/idle_counter/Kconfig.sysbuild @@ -0,0 +1,22 @@ +# +# Copyright (c) 2024 Nordic Semiconductor ASA +# +# SPDX-License-Identifier: LicenseRef-Nordic-5-Clause +# + +source "share/sysbuild/Kconfig" + +choice NETCORE + default NETCORE_CUSTOM + +config NETCORE_CUSTOM + bool "Custom netcore FW" +endchoice + +config NETCORE_IMAGE_NAME + string + default "remote" if NETCORE_CUSTOM + +config NETCORE_IMAGE_PATH + string + default "${ZEPHYR_NRF_MODULE_DIR}/tests/benchmarks/multicore/idle_counter/remote" diff --git a/tests/benchmarks/multicore/idle_counter/remote/prj.conf b/tests/benchmarks/multicore/idle_counter/remote/prj.conf index f2815be41868..66776c4cf482 100644 --- a/tests/benchmarks/multicore/idle_counter/remote/prj.conf +++ b/tests/benchmarks/multicore/idle_counter/remote/prj.conf @@ -7,8 +7,6 @@ CONFIG_PM_DEVICE=y CONFIG_PM_DEVICE_RUNTIME=y CONFIG_PM=y -CONFIG_PM_S2RAM=y -CONFIG_PM_S2RAM_CUSTOM_MARKING=y CONFIG_POWEROFF=y CONFIG_CONSOLE=n CONFIG_UART_CONSOLE=n diff --git a/tests/benchmarks/multicore/idle_counter/sysbuild.cmake b/tests/benchmarks/multicore/idle_counter/sysbuild.cmake deleted file mode 100644 index 05945a327cb4..000000000000 --- a/tests/benchmarks/multicore/idle_counter/sysbuild.cmake +++ /dev/null @@ -1,15 +0,0 @@ -# -# Copyright (c) 2025 Nordic Semiconductor ASA -# -# SPDX-License-Identifier: LicenseRef-Nordic-5-Clause -# - -if(SB_CONFIG_SOC_NRF54H20) - # Add remote project - ExternalZephyrProject_Add( - APPLICATION remote - SOURCE_DIR ${APP_DIR}/remote - BOARD ${SB_CONFIG_BOARD}/${SB_CONFIG_SOC}/cpurad - BOARD_REVISION ${BOARD_REVISION} - ) -endif() diff --git a/tests/benchmarks/multicore/idle_counter/sysbuild/mcuboot.conf b/tests/benchmarks/multicore/idle_counter/sysbuild/mcuboot.conf new file mode 100644 index 000000000000..6f88cf7325da --- /dev/null +++ b/tests/benchmarks/multicore/idle_counter/sysbuild/mcuboot.conf @@ -0,0 +1,4 @@ +CONFIG_LOG=n +CONFIG_SERIAL=n + +CONFIG_PM_S2RAM_RESUME_INTERMEDIARY=y diff --git a/tests/benchmarks/multicore/idle_counter/testcase.yaml b/tests/benchmarks/multicore/idle_counter/testcase.yaml index fd25463c9d0d..ef8f1cef552e 100644 --- a/tests/benchmarks/multicore/idle_counter/testcase.yaml +++ b/tests/benchmarks/multicore/idle_counter/testcase.yaml @@ -25,3 +25,14 @@ tests: fixture: ppk_power_measure pytest_root: - "${CUSTOM_ROOT_TEST_DIR}/test_measure_power_consumption.py::test_measure_and_data_dump_fast_counter_and_s2ram_with_clock_control" + + benchmarks.power_consumption.counter.mcuboot: + extra_args: + - SB_CONFIG_BOOTLOADER_MCUBOOT=y + - mcuboot_EXTRA_DTC_OVERLAY_FILE="${ZEPHYR_NRF_MODULE_DIR}/tests/benchmarks/multicore/idle_counter/boards/nrf54h20dk_nrf54h20_cpuapp.overlay" + harness: pytest + harness_config: + fixture: ppk_power_measure + pytest_root: + - "${CUSTOM_ROOT_TEST_DIR}/test_measure_power_consumption.py::test_measure_and_data_dump_fast_counter_and_s2ram_with_clock_control" + diff --git a/tests/benchmarks/multicore/idle_exmif/Kconfig.sysbuild b/tests/benchmarks/multicore/idle_exmif/Kconfig.sysbuild index d5238c072470..21e6f9cbb661 100644 --- a/tests/benchmarks/multicore/idle_exmif/Kconfig.sysbuild +++ b/tests/benchmarks/multicore/idle_exmif/Kconfig.sysbuild @@ -6,6 +6,17 @@ source "share/sysbuild/Kconfig" -config REMOTE_BOARD - string - default "$(BOARD)/nrf54h20/cpurad" if SOC_NRF54H20_CPUAPP +choice NETCORE + default NETCORE_CUSTOM + +config NETCORE_CUSTOM + bool "Custom netcore FW" +endchoice + +config NETCORE_IMAGE_NAME + string + default "remote" if NETCORE_CUSTOM + +config NETCORE_IMAGE_PATH + string + default "${ZEPHYR_NRF_MODULE_DIR}/tests/benchmarks/power_consumption/common/remote_sleep_forever" diff --git a/tests/benchmarks/multicore/idle_exmif/boards/nrf54h20dk_mcuboot.overlay b/tests/benchmarks/multicore/idle_exmif/boards/nrf54h20dk_mcuboot.overlay new file mode 100644 index 000000000000..fb72272fab46 --- /dev/null +++ b/tests/benchmarks/multicore/idle_exmif/boards/nrf54h20dk_mcuboot.overlay @@ -0,0 +1,13 @@ +/* + * Copyright (c) 2025 Nordic Semiconductor ASA + * + * SPDX-License-Identifier: LicenseRef-Nordic-5-Clause + */ + +/ { + aliases { + /delete-property/ led1; + }; +}; + +/delete-node/ &led1; diff --git a/tests/benchmarks/multicore/idle_exmif/sysbuild.cmake b/tests/benchmarks/multicore/idle_exmif/sysbuild.cmake deleted file mode 100644 index 0a417a65e776..000000000000 --- a/tests/benchmarks/multicore/idle_exmif/sysbuild.cmake +++ /dev/null @@ -1,22 +0,0 @@ -# -# Copyright (c) 2025 Nordic Semiconductor ASA -# -# SPDX-License-Identifier: LicenseRef-Nordic-5-Clause -# - -if("${SB_CONFIG_REMOTE_BOARD}" STREQUAL "") - message(FATAL_ERROR "REMOTE_BOARD must be set to a valid board name") -endif() - -# Add remote project -ExternalZephyrProject_Add( - APPLICATION remote - SOURCE_DIR ${SYSBUILD_NRF_MODULE_DIR}/tests/benchmarks/power_consumption/common/remote_sleep_forever - BOARD ${SB_CONFIG_REMOTE_BOARD} - BOARD_REVISION ${BOARD_REVISION} - ) - -# Add a dependency so that the remote image will be built and flashed first -add_dependencies(idle_exmif remote) -# Add dependency so that the remote image is flashed first. -sysbuild_add_dependencies(FLASH idle_exmif remote) diff --git a/tests/benchmarks/multicore/idle_exmif/sysbuild/mcuboot.conf b/tests/benchmarks/multicore/idle_exmif/sysbuild/mcuboot.conf new file mode 100644 index 000000000000..1ddf02c0c816 --- /dev/null +++ b/tests/benchmarks/multicore/idle_exmif/sysbuild/mcuboot.conf @@ -0,0 +1,6 @@ +CONFIG_LOG=n +CONFIG_SERIAL=n + +CONFIG_PM=y +CONFIG_PM_S2RAM=y +CONFIG_PM_S2RAM_CUSTOM_MARKING=y diff --git a/tests/benchmarks/multicore/idle_exmif/testcase.yaml b/tests/benchmarks/multicore/idle_exmif/testcase.yaml index cba68052bc03..7de9ed6f0ea4 100644 --- a/tests/benchmarks/multicore/idle_exmif/testcase.yaml +++ b/tests/benchmarks/multicore/idle_exmif/testcase.yaml @@ -23,6 +23,27 @@ tests: - "${CUSTOM_ROOT_TEST_DIR}/test_measure_power_consumption.py::test_measure_and_data_dump_exmif_and_s2ram" timeout: 90 + benchmarks.multicore.idle_exmif.nrf54h20dk_cpuapp_cpurad.mcuboot: + tags: + - ci_build + - ci_tests_benchmarks_multicore + - exmif + - ppk_power_measure + filter: not CONFIG_COVERAGE + platform_allow: + - nrf54h20dk/nrf54h20/cpuapp + integration_platforms: + - nrf54h20dk/nrf54h20/cpuapp + extra_args: + - SB_CONFIG_BOOTLOADER_MCUBOOT=y + - mcuboot_EXTRA_DTC_OVERLAY_FILE="${ZEPHYR_NRF_MODULE_DIR}/tests/benchmarks/multicore/idle_exmif/boards/nrf54h20dk_mcuboot.overlay" + harness: pytest + harness_config: + fixture: ppk_power_measure + pytest_root: + - "${CUSTOM_ROOT_TEST_DIR}/test_measure_power_consumption.py::test_measure_and_data_dump_exmif_and_s2ram" + timeout: 90 + benchmarks.multicore.idle_exmif.nrf54h20dk_cpuapp_cpurad.coverage: tags: - ci_build diff --git a/tests/benchmarks/multicore/idle_gpio/Kconfig.sysbuild b/tests/benchmarks/multicore/idle_gpio/Kconfig.sysbuild index 876e8168203e..e3c500fb588f 100644 --- a/tests/benchmarks/multicore/idle_gpio/Kconfig.sysbuild +++ b/tests/benchmarks/multicore/idle_gpio/Kconfig.sysbuild @@ -6,5 +6,17 @@ source "share/sysbuild/Kconfig" -config REMOTE_BOARD - string "The board used for remote target" +choice NETCORE + default NETCORE_CUSTOM + +config NETCORE_CUSTOM + bool "Custom netcore FW" +endchoice + +config NETCORE_IMAGE_NAME + string + default "remote" if NETCORE_CUSTOM + +config NETCORE_IMAGE_PATH + string + default "${ZEPHYR_NRF_MODULE_DIR}/tests/benchmarks/multicore/idle_gpio/remote" diff --git a/tests/benchmarks/multicore/idle_gpio/sysbuild.cmake b/tests/benchmarks/multicore/idle_gpio/sysbuild.cmake deleted file mode 100644 index 0db0478d9524..000000000000 --- a/tests/benchmarks/multicore/idle_gpio/sysbuild.cmake +++ /dev/null @@ -1,22 +0,0 @@ -# -# Copyright (c) 2024 Nordic Semiconductor ASA -# -# SPDX-License-Identifier: LicenseRef-Nordic-5-Clause -# - -if("${SB_CONFIG_REMOTE_BOARD}" STREQUAL "") - message(FATAL_ERROR "REMOTE_BOARD must be set to a valid board name") -endif() - -# Add remote project -ExternalZephyrProject_Add( - APPLICATION remote - SOURCE_DIR ${APP_DIR}/remote - BOARD ${SB_CONFIG_REMOTE_BOARD} - BOARD_REVISION ${BOARD_REVISION} - ) - -# Add a dependency so that the remote image will be built and flashed first -add_dependencies(idle_gpio remote) -# Add dependency so that the remote image is flashed first. -sysbuild_add_dependencies(FLASH idle_gpio remote) diff --git a/tests/benchmarks/multicore/idle_gpio/sysbuild/mcuboot.conf b/tests/benchmarks/multicore/idle_gpio/sysbuild/mcuboot.conf new file mode 100644 index 000000000000..1ddf02c0c816 --- /dev/null +++ b/tests/benchmarks/multicore/idle_gpio/sysbuild/mcuboot.conf @@ -0,0 +1,6 @@ +CONFIG_LOG=n +CONFIG_SERIAL=n + +CONFIG_PM=y +CONFIG_PM_S2RAM=y +CONFIG_PM_S2RAM_CUSTOM_MARKING=y diff --git a/tests/benchmarks/multicore/idle_gpio/sysbuild/nrf54h20dk_nrf54h20_cpurad.conf b/tests/benchmarks/multicore/idle_gpio/sysbuild/nrf54h20dk_nrf54h20_cpurad.conf deleted file mode 100644 index dd863e78d993..000000000000 --- a/tests/benchmarks/multicore/idle_gpio/sysbuild/nrf54h20dk_nrf54h20_cpurad.conf +++ /dev/null @@ -1 +0,0 @@ -SB_CONFIG_REMOTE_BOARD="nrf54h20dk/nrf54h20/cpurad" diff --git a/tests/benchmarks/multicore/idle_gpio/testcase.yaml b/tests/benchmarks/multicore/idle_gpio/testcase.yaml index f503da5ad7d7..126107353bad 100644 --- a/tests/benchmarks/multicore/idle_gpio/testcase.yaml +++ b/tests/benchmarks/multicore/idle_gpio/testcase.yaml @@ -20,7 +20,6 @@ tests: - nrf54h20dk/nrf54h20/cpuapp extra_args: - FILE_SUFFIX=s2ram - - SB_CONF_FILE=sysbuild/nrf54h20dk_nrf54h20_cpurad.conf - DTC_OVERLAY_FILE="boards/nrf54h20dk_nrf54h20_cpuapp_s2ram.overlay" - remote_DTC_OVERLAY_FILE="boards/nrf54h20dk_nrf54h20_cpurad_s2ram.overlay" harness: pytest @@ -30,6 +29,24 @@ tests: - "${CUSTOM_ROOT_TEST_DIR}/test_measure_power_consumption.py::test_measure_and_data_dump_power_consumption_simple" tags: ppk_power_measure + benchmarks.multicore.idle_gpio.nrf54h20dk_cpuapp_cpurad.s2ram.mcuboot: + platform_allow: + - nrf54h20dk/nrf54h20/cpuapp + integration_platforms: + - nrf54h20dk/nrf54h20/cpuapp + extra_args: + - SB_CONFIG_BOOTLOADER_MCUBOOT=y + - FILE_SUFFIX=s2ram + - DTC_OVERLAY_FILE="boards/nrf54h20dk_nrf54h20_cpuapp_s2ram.overlay" + - remote_DTC_OVERLAY_FILE="boards/nrf54h20dk_nrf54h20_cpurad_s2ram.overlay" + - mcuboot_EXTRA_DTC_OVERLAY_FILE="${ZEPHYR_NRF_MODULE_DIR}/tests/benchmarks/multicore/idle_gpio/boards/nrf54h20dk_nrf54h20_cpuapp_s2ram.overlay" + harness: pytest + harness_config: + fixture: ppk_power_measure + pytest_root: + - "${CUSTOM_ROOT_TEST_DIR}/test_measure_power_consumption.py::test_measure_and_data_dump_power_consumption_simple" + tags: ppk_power_measure + benchmarks.multicore.idle_gpio.nrf54h20dk_cpuapp_cpurad.s2ram.wakeup_from_uart_pins: platform_allow: - nrf54h20dk/nrf54h20/cpuapp @@ -37,7 +54,6 @@ tests: - nrf54h20dk/nrf54h20/cpuapp extra_args: - FILE_SUFFIX=s2ram - - SB_CONF_FILE=sysbuild/nrf54h20dk_nrf54h20_cpurad.conf - DTC_OVERLAY_FILE="boards/nrf54h20dk_nrf54h20_cpuapp_s2ram.overlay;boards/wakeup_from_uart_pins.overlay" - remote_DTC_OVERLAY_FILE="boards/nrf54h20dk_nrf54h20_cpurad_s2ram.overlay;boards/wakeup_from_uart_pins.overlay" harness: pytest diff --git a/tests/benchmarks/multicore/idle_ipc/Kconfig.sysbuild b/tests/benchmarks/multicore/idle_ipc/Kconfig.sysbuild index d5238c072470..e9c79eeac969 100644 --- a/tests/benchmarks/multicore/idle_ipc/Kconfig.sysbuild +++ b/tests/benchmarks/multicore/idle_ipc/Kconfig.sysbuild @@ -6,6 +6,17 @@ source "share/sysbuild/Kconfig" -config REMOTE_BOARD - string - default "$(BOARD)/nrf54h20/cpurad" if SOC_NRF54H20_CPUAPP +choice NETCORE + default NETCORE_CUSTOM + +config NETCORE_CUSTOM + bool "Custom netcore FW" +endchoice + +config NETCORE_IMAGE_NAME + string + default "remote" if NETCORE_CUSTOM + +config NETCORE_IMAGE_PATH + string + default "${ZEPHYR_NRF_MODULE_DIR}/tests/benchmarks/multicore/idle_ipc/remote" diff --git a/tests/benchmarks/multicore/idle_ipc/sysbuild.cmake b/tests/benchmarks/multicore/idle_ipc/sysbuild.cmake deleted file mode 100644 index b0e17533b9c9..000000000000 --- a/tests/benchmarks/multicore/idle_ipc/sysbuild.cmake +++ /dev/null @@ -1,22 +0,0 @@ -# -# Copyright (c) 2024 Nordic Semiconductor ASA -# -# SPDX-License-Identifier: LicenseRef-Nordic-5-Clause -# - -if("${SB_CONFIG_REMOTE_BOARD}" STREQUAL "") - message(FATAL_ERROR "REMOTE_BOARD must be set to a valid board name") -endif() - -# Add remote project -ExternalZephyrProject_Add( - APPLICATION remote - SOURCE_DIR ${APP_DIR}/remote - BOARD ${SB_CONFIG_REMOTE_BOARD} - BOARD_REVISION ${BOARD_REVISION} - ) - -# Add a dependency so that the remote image will be built and flashed first -add_dependencies(idle_ipc remote) -# Add dependency so that the remote image is flashed first. -sysbuild_add_dependencies(FLASH idle_ipc remote) diff --git a/tests/benchmarks/multicore/idle_ipc/sysbuild/mcuboot.conf b/tests/benchmarks/multicore/idle_ipc/sysbuild/mcuboot.conf new file mode 100644 index 000000000000..51d9462ff821 --- /dev/null +++ b/tests/benchmarks/multicore/idle_ipc/sysbuild/mcuboot.conf @@ -0,0 +1 @@ +CONFIG_PM_S2RAM_RESUME_INTERMEDIARY=y diff --git a/tests/benchmarks/multicore/idle_ipc/testcase.yaml b/tests/benchmarks/multicore/idle_ipc/testcase.yaml index ac0ea69aec83..70b4f4e985f6 100644 --- a/tests/benchmarks/multicore/idle_ipc/testcase.yaml +++ b/tests/benchmarks/multicore/idle_ipc/testcase.yaml @@ -21,6 +21,26 @@ tests: pytest_root: - "${CUSTOM_ROOT_TEST_DIR}/test_measure_power_consumption.py::test_measure_and_data_dump_power_consumption_ipc" + benchmarks.multicore.idle_ipc.nrf54h20dk_cpuapp_cpurad.s2ram.mcuboot: + tags: + - ci_build + - ci_tests_benchmarks_multicore + - ipc + - ppk_power_measure + filter: not CONFIG_COVERAGE + harness: pytest + platform_allow: + - nrf54h20dk/nrf54h20/cpuapp + integration_platforms: + - nrf54h20dk/nrf54h20/cpuapp + extra_args: + - SB_CONFIG_BOOTLOADER_MCUBOOT=y + - mcuboot_EXTRA_DTC_OVERLAY_FILE="${ZEPHYR_NRF_MODULE_DIR}/tests/benchmarks/multicore/idle_ipc/boards/nrf54h20dk_nrf54h20_cpuapp.overlay" + harness_config: + fixture: ppk_power_measure + pytest_root: + - "${CUSTOM_ROOT_TEST_DIR}/test_measure_power_consumption.py::test_measure_and_data_dump_power_consumption_ipc" + benchmarks.multicore.idle_ipc.shifted.nrf54h20dk_cpuapp_cpurad.s2ram: tags: - ci_build diff --git a/tests/benchmarks/multicore/idle_outside_of_main/Kconfig.sysbuild b/tests/benchmarks/multicore/idle_outside_of_main/Kconfig.sysbuild index 876e8168203e..c18b832904ef 100644 --- a/tests/benchmarks/multicore/idle_outside_of_main/Kconfig.sysbuild +++ b/tests/benchmarks/multicore/idle_outside_of_main/Kconfig.sysbuild @@ -6,5 +6,19 @@ source "share/sysbuild/Kconfig" -config REMOTE_BOARD - string "The board used for remote target" +source "share/sysbuild/Kconfig" + +choice NETCORE + default NETCORE_CUSTOM + +config NETCORE_CUSTOM + bool "Custom netcore FW" +endchoice + +config NETCORE_IMAGE_NAME + string + default "remote" if NETCORE_CUSTOM + +config NETCORE_IMAGE_PATH + string + default "${ZEPHYR_NRF_MODULE_DIR}/tests/benchmarks/multicore/idle_outside_of_main/remote" diff --git a/tests/benchmarks/multicore/idle_outside_of_main/sysbuild.cmake b/tests/benchmarks/multicore/idle_outside_of_main/sysbuild.cmake deleted file mode 100644 index 8367c6b93765..000000000000 --- a/tests/benchmarks/multicore/idle_outside_of_main/sysbuild.cmake +++ /dev/null @@ -1,22 +0,0 @@ -# -# Copyright (c) 2023 Nordic Semiconductor ASA -# -# SPDX-License-Identifier: LicenseRef-Nordic-5-Clause -# - -if("${SB_CONFIG_REMOTE_BOARD}" STREQUAL "") - message(FATAL_ERROR "REMOTE_BOARD must be set to a valid board name") -endif() - -# Add remote project -ExternalZephyrProject_Add( - APPLICATION remote - SOURCE_DIR ${APP_DIR}/remote - BOARD ${SB_CONFIG_REMOTE_BOARD} - BOARD_REVISION ${BOARD_REVISION} - ) - -# Add a dependency so that the remote image will be built and flashed first -add_dependencies(idle_outside_of_main remote) -# Add dependency so that the remote image is flashed first. -sysbuild_add_dependencies(FLASH idle_outside_of_main remote) diff --git a/tests/benchmarks/multicore/idle_outside_of_main/sysbuild/mcuboot.conf b/tests/benchmarks/multicore/idle_outside_of_main/sysbuild/mcuboot.conf new file mode 100644 index 000000000000..6f88cf7325da --- /dev/null +++ b/tests/benchmarks/multicore/idle_outside_of_main/sysbuild/mcuboot.conf @@ -0,0 +1,4 @@ +CONFIG_LOG=n +CONFIG_SERIAL=n + +CONFIG_PM_S2RAM_RESUME_INTERMEDIARY=y diff --git a/tests/benchmarks/multicore/idle_outside_of_main/sysbuild/nrf54h20dk_nrf54h20_cpurad.conf b/tests/benchmarks/multicore/idle_outside_of_main/sysbuild/nrf54h20dk_nrf54h20_cpurad.conf deleted file mode 100644 index dd863e78d993..000000000000 --- a/tests/benchmarks/multicore/idle_outside_of_main/sysbuild/nrf54h20dk_nrf54h20_cpurad.conf +++ /dev/null @@ -1 +0,0 @@ -SB_CONFIG_REMOTE_BOARD="nrf54h20dk/nrf54h20/cpurad" diff --git a/tests/benchmarks/multicore/idle_outside_of_main/testcase.yaml b/tests/benchmarks/multicore/idle_outside_of_main/testcase.yaml index 12973b8aa94c..118c18c0f8c8 100644 --- a/tests/benchmarks/multicore/idle_outside_of_main/testcase.yaml +++ b/tests/benchmarks/multicore/idle_outside_of_main/testcase.yaml @@ -9,13 +9,26 @@ common: tests: benchmarks.multicore.idle_outside_of_main.nrf54h20dk_cpuapp_cpurad.s2ram: + harness: pytest + platform_allow: + - nrf54h20dk/nrf54h20/cpuapp + integration_platforms: + - nrf54h20dk/nrf54h20/cpuapp + harness_config: + fixture: ppk_power_measure + pytest_root: + - "${CUSTOM_ROOT_TEST_DIR}/test_measure_power_consumption.py::test_measure_and_data_dump_power_consumption_s2ram_outside_of_main" + timeout: 120 + + benchmarks.multicore.idle_outside_of_main.nrf54h20dk_cpuapp_cpurad.s2ram.mcuboot: harness: pytest platform_allow: - nrf54h20dk/nrf54h20/cpuapp integration_platforms: - nrf54h20dk/nrf54h20/cpuapp extra_args: - - SB_CONF_FILE=sysbuild/nrf54h20dk_nrf54h20_cpurad.conf + - SB_CONFIG_BOOTLOADER_MCUBOOT=y + - mcuboot_EXTRA_DTC_OVERLAY_FILE="${ZEPHYR_NRF_MODULE_DIR}/tests/benchmarks/multicore/idle_outside_of_main/boards/nrf54h20dk_nrf54h20_cpuapp.overlay" harness_config: fixture: ppk_power_measure pytest_root: @@ -29,7 +42,6 @@ tests: integration_platforms: - nrf54h20dk/nrf54h20/cpuapp extra_args: - - SB_CONF_FILE=sysbuild/nrf54h20dk_nrf54h20_cpurad.conf - CONFIG_MAIN_THREAD_PRIORITY=-1 - remote_CONFIG_MAIN_THREAD_PRIORITY=-1 harness_config: diff --git a/tests/benchmarks/multicore/idle_ppr/Kconfig.sysbuild b/tests/benchmarks/multicore/idle_ppr/Kconfig.sysbuild new file mode 100644 index 000000000000..5c1bd50f3604 --- /dev/null +++ b/tests/benchmarks/multicore/idle_ppr/Kconfig.sysbuild @@ -0,0 +1,22 @@ +# +# Copyright (c) 2024 Nordic Semiconductor ASA +# +# SPDX-License-Identifier: LicenseRef-Nordic-5-Clause +# + +source "share/sysbuild/Kconfig" + +choice NETCORE + default NETCORE_CUSTOM + +config NETCORE_CUSTOM + bool "Custom netcore FW" +endchoice + +config NETCORE_IMAGE_NAME + string + default "remote" if NETCORE_CUSTOM + +config NETCORE_IMAGE_PATH + string + default "${ZEPHYR_NRF_MODULE_DIR}/tests/benchmarks/multicore/idle_ppr/remote" diff --git a/tests/benchmarks/multicore/idle_ppr/boards/nrf54h20dk_mcuboot.overlay b/tests/benchmarks/multicore/idle_ppr/boards/nrf54h20dk_mcuboot.overlay new file mode 100644 index 000000000000..dd37fe353aeb --- /dev/null +++ b/tests/benchmarks/multicore/idle_ppr/boards/nrf54h20dk_mcuboot.overlay @@ -0,0 +1,18 @@ +/* + * Copyright (c) 2025 Nordic Semiconductor ASA + * + * SPDX-License-Identifier: LicenseRef-Nordic-5-Clause + */ + +/ { + aliases { + /delete-property/ led1; + }; +}; + +/delete-node/ &led1; + +&gpiote130 { + status = "okay"; + owned-channels = <0>; +}; diff --git a/tests/benchmarks/multicore/idle_ppr/sysbuild.cmake b/tests/benchmarks/multicore/idle_ppr/sysbuild.cmake index 3b8fcf5ecd38..5d3278fc4ec7 100644 --- a/tests/benchmarks/multicore/idle_ppr/sysbuild.cmake +++ b/tests/benchmarks/multicore/idle_ppr/sysbuild.cmake @@ -4,14 +4,6 @@ # SPDX-License-Identifier: LicenseRef-Nordic-5-Clause # -# Add remote project -ExternalZephyrProject_Add( - APPLICATION remote_rad - SOURCE_DIR ${APP_DIR}/remote - BOARD ${SB_CONFIG_BOARD}/${SB_CONFIG_SOC}/cpurad - BOARD_REVISION ${BOARD_REVISION} -) - ExternalZephyrProject_Add( APPLICATION remote_ppr SOURCE_DIR ${APP_DIR}/remote diff --git a/tests/benchmarks/multicore/idle_ppr/sysbuild/mcuboot.conf b/tests/benchmarks/multicore/idle_ppr/sysbuild/mcuboot.conf new file mode 100644 index 000000000000..6f88cf7325da --- /dev/null +++ b/tests/benchmarks/multicore/idle_ppr/sysbuild/mcuboot.conf @@ -0,0 +1,4 @@ +CONFIG_LOG=n +CONFIG_SERIAL=n + +CONFIG_PM_S2RAM_RESUME_INTERMEDIARY=y diff --git a/tests/benchmarks/multicore/idle_ppr/testcase.yaml b/tests/benchmarks/multicore/idle_ppr/testcase.yaml index bfb283cc84bf..fd8056f520fc 100644 --- a/tests/benchmarks/multicore/idle_ppr/testcase.yaml +++ b/tests/benchmarks/multicore/idle_ppr/testcase.yaml @@ -48,3 +48,18 @@ tests: fixture: ppk_power_measure pytest_root: - "${CUSTOM_ROOT_TEST_DIR}/test_measure_power_consumption.py::test_measure_and_data_dump_ppr_and_s2ram" + + benchmarks.multicore.idle_ppr.s2ram.mcuboot: + tags: ppk_power_measure + extra_args: + - CONFIG_SOC_NRF54H20_CPURAD_ENABLE=y + - idle_ppr_CONF_FILE=prj_s2ram.conf + - remote_rad_CONF_FILE=prj_s2ram.conf + - remote_ppr_CONF_FILE=prj_s2ram.conf + - SB_CONFIG_BOOTLOADER_MCUBOOT=y + - mcuboot_EXTRA_DTC_OVERLAY_FILE="${ZEPHYR_NRF_MODULE_DIR}/tests/benchmarks/multicore/idle_ppr/boards/nrf54h20dk_mcuboot.overlay" + harness: pytest + harness_config: + fixture: ppk_power_measure + pytest_root: + - "${CUSTOM_ROOT_TEST_DIR}/test_measure_power_consumption.py::test_measure_and_data_dump_ppr_and_s2ram" diff --git a/tests/benchmarks/multicore/idle_pwm_led/Kconfig.sysbuild b/tests/benchmarks/multicore/idle_pwm_led/Kconfig.sysbuild index d5238c072470..781e62bfc164 100644 --- a/tests/benchmarks/multicore/idle_pwm_led/Kconfig.sysbuild +++ b/tests/benchmarks/multicore/idle_pwm_led/Kconfig.sysbuild @@ -6,6 +6,17 @@ source "share/sysbuild/Kconfig" -config REMOTE_BOARD - string - default "$(BOARD)/nrf54h20/cpurad" if SOC_NRF54H20_CPUAPP +choice NETCORE + default NETCORE_CUSTOM + +config NETCORE_CUSTOM + bool "Custom netcore FW" +endchoice + +config NETCORE_IMAGE_NAME + string + default "remote" if NETCORE_CUSTOM + +config NETCORE_IMAGE_PATH + string + default "${ZEPHYR_NRF_MODULE_DIR}/tests/benchmarks/multicore/idle_pwm_led/remote" \ No newline at end of file diff --git a/tests/benchmarks/multicore/idle_pwm_led/sysbuild.cmake b/tests/benchmarks/multicore/idle_pwm_led/sysbuild.cmake deleted file mode 100644 index 80f51bddea6d..000000000000 --- a/tests/benchmarks/multicore/idle_pwm_led/sysbuild.cmake +++ /dev/null @@ -1,17 +0,0 @@ -# -# Copyright (c) 2024 Nordic Semiconductor ASA -# -# SPDX-License-Identifier: LicenseRef-Nordic-5-Clause -# - -if("${SB_CONFIG_REMOTE_BOARD}" STREQUAL "") - message(FATAL_ERROR "REMOTE_BOARD must be set to a valid board name") -endif() - -# Add remote project -ExternalZephyrProject_Add( - APPLICATION remote - SOURCE_DIR ${APP_DIR}/remote - BOARD ${SB_CONFIG_REMOTE_BOARD} - BOARD_REVISION ${BOARD_REVISION} -) diff --git a/tests/benchmarks/multicore/idle_pwm_led/sysbuild/mcuboot.conf b/tests/benchmarks/multicore/idle_pwm_led/sysbuild/mcuboot.conf new file mode 100644 index 000000000000..1ddf02c0c816 --- /dev/null +++ b/tests/benchmarks/multicore/idle_pwm_led/sysbuild/mcuboot.conf @@ -0,0 +1,6 @@ +CONFIG_LOG=n +CONFIG_SERIAL=n + +CONFIG_PM=y +CONFIG_PM_S2RAM=y +CONFIG_PM_S2RAM_CUSTOM_MARKING=y diff --git a/tests/benchmarks/multicore/idle_pwm_led/testcase.yaml b/tests/benchmarks/multicore/idle_pwm_led/testcase.yaml index b3e290a3c3fd..c8f0a037f337 100644 --- a/tests/benchmarks/multicore/idle_pwm_led/testcase.yaml +++ b/tests/benchmarks/multicore/idle_pwm_led/testcase.yaml @@ -49,6 +49,20 @@ tests: pytest_root: - "${CUSTOM_ROOT_TEST_DIR}/test_measure_power_consumption.py::test_measure_and_data_dump_pwm_and_s2ram" + benchmarks.multicore.idle_pwm_led.nrf54h20dk_cpuapp_cpurad.s2ram.mcuboot: + filter: not CONFIG_COVERAGE + tags: ppk_power_measure + extra_args: + - idle_pwm_led_CONF_FILE=prj_s2ram.conf + - remote_CONF_FILE=prj_s2ram.conf + - SB_CONFIG_BOOTLOADER_MCUBOOT=y + - mcuboot_EXTRA_DTC_OVERLAY_FILE="${ZEPHYR_NRF_MODULE_DIR}/tests/benchmarks/multicore/idle_pwm_led/boards/nrf54h20dk_nrf54h20_cpuapp.overlay" + harness: pytest + harness_config: + fixture: ppk_power_measure + pytest_root: + - "${CUSTOM_ROOT_TEST_DIR}/test_measure_power_consumption.py::test_measure_and_data_dump_pwm_and_s2ram" + benchmarks.multicore.idle_pwm_led.nrf54h20dk_cpuapp_cpurad.idle_fast: filter: not CONFIG_COVERAGE tags: ppk_power_measure diff --git a/tests/benchmarks/multicore/idle_spim/Kconfig.sysbuild b/tests/benchmarks/multicore/idle_spim/Kconfig.sysbuild new file mode 100644 index 000000000000..af5491cac01d --- /dev/null +++ b/tests/benchmarks/multicore/idle_spim/Kconfig.sysbuild @@ -0,0 +1,22 @@ +# +# Copyright (c) 2025 Nordic Semiconductor ASA +# +# SPDX-License-Identifier: LicenseRef-Nordic-5-Clause +# + +source "share/sysbuild/Kconfig" + +choice NETCORE + default NETCORE_CUSTOM + +config NETCORE_CUSTOM + bool "Custom netcore FW" +endchoice + +config NETCORE_IMAGE_NAME + string + default "remote" if NETCORE_CUSTOM + +config NETCORE_IMAGE_PATH + string + default "${ZEPHYR_NRF_MODULE_DIR}/tests/benchmarks/power_consumption/common/remote_sleep_forever" diff --git a/tests/benchmarks/multicore/idle_spim/sysbuild.cmake b/tests/benchmarks/multicore/idle_spim/sysbuild.cmake deleted file mode 100644 index bf4119b6a338..000000000000 --- a/tests/benchmarks/multicore/idle_spim/sysbuild.cmake +++ /dev/null @@ -1,15 +0,0 @@ -# -# Copyright (c) 2024 Nordic Semiconductor ASA -# -# SPDX-License-Identifier: LicenseRef-Nordic-5-Clause -# - -if(SB_CONFIG_SOC_NRF54H20) - # Add remote project - ExternalZephyrProject_Add( - APPLICATION remote - SOURCE_DIR ${ZEPHYR_NRF_MODULE_DIR}/tests/benchmarks/power_consumption/common/remote_sleep_forever - BOARD ${SB_CONFIG_BOARD}/${SB_CONFIG_SOC}/cpurad - BOARD_REVISION ${BOARD_REVISION} - ) -endif() diff --git a/tests/benchmarks/multicore/idle_spim/sysbuild/mcuboot.conf b/tests/benchmarks/multicore/idle_spim/sysbuild/mcuboot.conf new file mode 100644 index 000000000000..6f88cf7325da --- /dev/null +++ b/tests/benchmarks/multicore/idle_spim/sysbuild/mcuboot.conf @@ -0,0 +1,4 @@ +CONFIG_LOG=n +CONFIG_SERIAL=n + +CONFIG_PM_S2RAM_RESUME_INTERMEDIARY=y diff --git a/tests/benchmarks/multicore/idle_spim/testcase.yaml b/tests/benchmarks/multicore/idle_spim/testcase.yaml index d18d2f92697f..46b52c982732 100644 --- a/tests/benchmarks/multicore/idle_spim/testcase.yaml +++ b/tests/benchmarks/multicore/idle_spim/testcase.yaml @@ -23,6 +23,28 @@ tests: - "${CUSTOM_ROOT_TEST_DIR}/test_measure_power_consumption.py::test_measure_and_data_dump_power_consumption_spim" timeout: 90 + benchmarks.multicore.idle_spim.nrf54h20dk_cpuapp_cpurad.s2ram.mcuboot: + tags: + - ci_build + - ci_tests_benchmarks_multicore + - spim + - ppk_power_measure + filter: not CONFIG_COVERAGE + harness: pytest + platform_allow: + - nrf54h20dk/nrf54h20/cpuapp + integration_platforms: + - nrf54h20dk/nrf54h20/cpuapp + extra_args: + - SHIELD=pca63566 + - SB_CONFIG_BOOTLOADER_MCUBOOT=y + - mcuboot_EXTRA_DTC_OVERLAY_FILE="${ZEPHYR_NRF_MODULE_DIR}/tests/benchmarks/multicore/idle_spim/boards/nrf54h20dk_nrf54h20_cpuapp.overlay" + harness_config: + fixture: pca63566 + pytest_root: + - "${CUSTOM_ROOT_TEST_DIR}/test_measure_power_consumption.py::test_measure_and_data_dump_power_consumption_spim" + timeout: 90 + benchmarks.multicore.idle_spim.nrf54h20dk_cpuapp_cpurad.coverage: tags: - ci_build diff --git a/tests/benchmarks/multicore/idle_twim/Kconfig.sysbuild b/tests/benchmarks/multicore/idle_twim/Kconfig.sysbuild index 743827412843..af5491cac01d 100644 --- a/tests/benchmarks/multicore/idle_twim/Kconfig.sysbuild +++ b/tests/benchmarks/multicore/idle_twim/Kconfig.sysbuild @@ -6,6 +6,17 @@ source "share/sysbuild/Kconfig" -config REMOTE_BOARD - string - default "$(BOARD)/nrf54h20/cpurad" if SOC_NRF54H20_CPUAPP +choice NETCORE + default NETCORE_CUSTOM + +config NETCORE_CUSTOM + bool "Custom netcore FW" +endchoice + +config NETCORE_IMAGE_NAME + string + default "remote" if NETCORE_CUSTOM + +config NETCORE_IMAGE_PATH + string + default "${ZEPHYR_NRF_MODULE_DIR}/tests/benchmarks/power_consumption/common/remote_sleep_forever" diff --git a/tests/benchmarks/multicore/idle_twim/sysbuild.cmake b/tests/benchmarks/multicore/idle_twim/sysbuild.cmake deleted file mode 100644 index dec24c4fd11f..000000000000 --- a/tests/benchmarks/multicore/idle_twim/sysbuild.cmake +++ /dev/null @@ -1,22 +0,0 @@ -# -# Copyright (c) 2023 Nordic Semiconductor ASA -# -# SPDX-License-Identifier: LicenseRef-Nordic-5-Clause -# - -if("${SB_CONFIG_REMOTE_BOARD}" STREQUAL "") - message(FATAL_ERROR "REMOTE_BOARD must be set to a valid board name") -endif() - -# Add remote project -ExternalZephyrProject_Add( - APPLICATION remote - SOURCE_DIR ${ZEPHYR_NRF_MODULE_DIR}/tests/benchmarks/power_consumption/common/remote_sleep_forever - BOARD ${SB_CONFIG_REMOTE_BOARD} - BOARD_REVISION ${BOARD_REVISION} - ) - -# Add a dependency so that the remote image will be built and flashed first -add_dependencies(idle_twim remote) -# Add dependency so that the remote image is flashed first. -sysbuild_add_dependencies(FLASH idle_twim remote) diff --git a/tests/benchmarks/multicore/idle_twim/sysbuild/mcuboot.conf b/tests/benchmarks/multicore/idle_twim/sysbuild/mcuboot.conf new file mode 100644 index 000000000000..6f88cf7325da --- /dev/null +++ b/tests/benchmarks/multicore/idle_twim/sysbuild/mcuboot.conf @@ -0,0 +1,4 @@ +CONFIG_LOG=n +CONFIG_SERIAL=n + +CONFIG_PM_S2RAM_RESUME_INTERMEDIARY=y diff --git a/tests/benchmarks/multicore/idle_twim/testcase.yaml b/tests/benchmarks/multicore/idle_twim/testcase.yaml index 2eca1a6d4f97..5aa548b79d05 100644 --- a/tests/benchmarks/multicore/idle_twim/testcase.yaml +++ b/tests/benchmarks/multicore/idle_twim/testcase.yaml @@ -25,6 +25,28 @@ tests: - "${CUSTOM_ROOT_TEST_DIR}/test_measure_power_consumption.py::test_measure_and_data_dump_power_consumption_twim_gated" timeout: 90 + benchmarks.multicore.idle_twim.nrf54h20dk_cpuapp_cpurad.s2ram.mcuboot: + tags: + - ci_build + - ci_tests_benchmarks_multicore + - twim + - ppk_power_measure + filter: not CONFIG_COVERAGE + harness: pytest + platform_allow: + - nrf54h20dk/nrf54h20/cpuapp + integration_platforms: + - nrf54h20dk/nrf54h20/cpuapp + extra_args: + - SHIELD=pca63566 + - SB_CONFIG_BOOTLOADER_MCUBOOT=y + - mcuboot_EXTRA_DTC_OVERLAY_FILE="${ZEPHYR_NRF_MODULE_DIR}/tests/benchmarks/multicore/idle_twim/boards/nrf54h20dk_nrf54h20_cpuapp.overlay" + harness_config: + fixture: pca63566 + pytest_root: + - "${CUSTOM_ROOT_TEST_DIR}/test_measure_power_consumption.py::test_measure_and_data_dump_power_consumption_twim_gated" + timeout: 90 + benchmarks.multicore.idle_twim.nrf54h20dk_cpuapp_cpurad.coverage: tags: - ci_build diff --git a/tests/benchmarks/multicore/idle_uarte/Kconfig.sysbuild b/tests/benchmarks/multicore/idle_uarte/Kconfig.sysbuild index 75b1c3431818..e121c34278ce 100644 --- a/tests/benchmarks/multicore/idle_uarte/Kconfig.sysbuild +++ b/tests/benchmarks/multicore/idle_uarte/Kconfig.sysbuild @@ -8,3 +8,19 @@ source "share/sysbuild/Kconfig" config REMOTE_GLOBAL_DOMAIN_CLOCK_FREQUENCY_SWITCHING bool "Enable global domain frequency changing from remote" + +choice NETCORE + default NETCORE_CUSTOM + +config NETCORE_CUSTOM + bool "Custom netcore FW" +endchoice + +config NETCORE_IMAGE_NAME + string + default "remote" + +config NETCORE_IMAGE_PATH + string + default "${ZEPHYR_NRF_MODULE_DIR}/tests/benchmarks/multicore/common/remote_gdf_switching" if REMOTE_GLOBAL_DOMAIN_CLOCK_FREQUENCY_SWITCHING + default "${ZEPHYR_NRF_MODULE_DIR}/tests/benchmarks/power_consumption/common/remote_sleep_forever" diff --git a/tests/benchmarks/multicore/idle_uarte/sysbuild.cmake b/tests/benchmarks/multicore/idle_uarte/sysbuild.cmake deleted file mode 100644 index 12f2e1b6871b..000000000000 --- a/tests/benchmarks/multicore/idle_uarte/sysbuild.cmake +++ /dev/null @@ -1,21 +0,0 @@ -# -# Copyright (c) 2023 Nordic Semiconductor ASA -# -# SPDX-License-Identifier: LicenseRef-Nordic-5-Clause -# - -if(SB_CONFIG_SOC_NRF54H20) - if(SB_CONFIG_REMOTE_GLOBAL_DOMAIN_CLOCK_FREQUENCY_SWITCHING) - set(REMOTE_SOURCE_DIR ${ZEPHYR_NRF_MODULE_DIR}/tests/benchmarks/multicore/common/remote_gdf_switching) - else() - set(REMOTE_SOURCE_DIR ${ZEPHYR_NRF_MODULE_DIR}/tests/benchmarks/power_consumption/common/remote_sleep_forever) - endif() - - # Add remote project - ExternalZephyrProject_Add( - APPLICATION remote - SOURCE_DIR ${REMOTE_SOURCE_DIR} - BOARD ${SB_CONFIG_BOARD}/${SB_CONFIG_SOC}/cpurad - BOARD_REVISION ${BOARD_REVISION} - ) -endif() diff --git a/tests/benchmarks/multicore/idle_uarte/sysbuild/mcuboot.conf b/tests/benchmarks/multicore/idle_uarte/sysbuild/mcuboot.conf new file mode 100644 index 000000000000..6f88cf7325da --- /dev/null +++ b/tests/benchmarks/multicore/idle_uarte/sysbuild/mcuboot.conf @@ -0,0 +1,4 @@ +CONFIG_LOG=n +CONFIG_SERIAL=n + +CONFIG_PM_S2RAM_RESUME_INTERMEDIARY=y diff --git a/tests/benchmarks/multicore/idle_uarte/testcase.yaml b/tests/benchmarks/multicore/idle_uarte/testcase.yaml index 767d0d057182..58a9bf0df29c 100644 --- a/tests/benchmarks/multicore/idle_uarte/testcase.yaml +++ b/tests/benchmarks/multicore/idle_uarte/testcase.yaml @@ -25,6 +25,28 @@ tests: - "${CUSTOM_ROOT_TEST_DIR}/test_measure_power_consumption.py::test_measure_and_data_dump_power_consumption_gated_uarte" timeout: 90 + benchmarks.multicore.idle_uarte.nrf54h20dk_cpuapp_cpurad.s2ram.mcuboot: + tags: + - ci_build + - ci_tests_benchmarks_multicore + - uarte + - ppk_power_measure + filter: not CONFIG_COVERAGE + harness: pytest + platform_allow: + - nrf54h20dk/nrf54h20/cpuapp + integration_platforms: + - nrf54h20dk/nrf54h20/cpuapp + extra_args: + - DTC_OVERLAY_FILE="boards/nrf54h20dk_nrf54h20_cpuapp_normal.overlay" + - SB_CONFIG_BOOTLOADER_MCUBOOT=y + - mcuboot_EXTRA_DTC_OVERLAY_FILE="${ZEPHYR_NRF_MODULE_DIR}/tests/benchmarks/multicore/idle_uarte/boards/nrf54h20dk_nrf54h20_cpuapp_normal.overlay" + harness_config: + fixture: gpio_loopback + pytest_root: + - "${CUSTOM_ROOT_TEST_DIR}/test_measure_power_consumption.py::test_measure_and_data_dump_power_consumption_gated_uarte" + timeout: 90 + benchmarks.multicore.idle_uarte.fast.nrf54h20dk_cpuapp_cpurad.s2ram: tags: - ci_build @@ -45,7 +67,6 @@ tests: - "${CUSTOM_ROOT_TEST_DIR}/test_measure_power_consumption.py::test_measure_and_data_dump_power_consumption_gated_uarte" timeout: 90 - benchmarks.multicore.idle_uarte.fast.nrf54h20dk_cpuapp_cpurad.s2ram.slow_pins: tags: - ci_build diff --git a/west.yml b/west.yml index c49545689859..424c4e5faa01 100644 --- a/west.yml +++ b/west.yml @@ -65,7 +65,7 @@ manifest: # https://developer.nordicsemi.com/nRF_Connect_SDK/doc/latest/zephyr/guides/modules.html - name: zephyr repo-path: sdk-zephyr - revision: d32b79417c5a4c70f16cbbb579d3610daab5f88f + revision: pull/3285/head import: # In addition to the zephyr repository itself, NCS also # imports the contents of zephyr/west.yml at the above @@ -128,7 +128,7 @@ manifest: compare-by-default: true - name: mcuboot repo-path: sdk-mcuboot - revision: c39029507179e3e1707eb46ca002a0780bb5b5b4 + revision: pull/536/head path: bootloader/mcuboot - name: qcbor url: https://github.com/laurencelundblade/QCBOR