Skip to content
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

Implement uarte suspend test #20035

Closed
Closed
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,13 @@
#
# Copyright (c) 2024 Nordic Semiconductor ASA
#
# SPDX-License-Identifier: LicenseRef-Nordic-5-Clause
#

cmake_minimum_required(VERSION 3.20.0)

find_package(Zephyr REQUIRED HINTS $ENV{ZEPHYR_BASE})

project(uarte_suspend)

target_sources(app PRIVATE src/main.c)
Original file line number Diff line number Diff line change
@@ -0,0 +1,73 @@
/*
* Copyright (c) 2025 Nordic Semiconductor ASA
*
* SPDX-License-Identifier: LicenseRef-Nordic-5-Clause
*/

/ {
aliases {
led = &led0;
/delete-property/ led1;
};
};

/delete-node/ &led1;

&pinctrl {
uart1_default_alt: uart1_default_alt {
group1 {
psels = <NRF_PSEL(UART_TX, 0, 6)>,
<NRF_PSEL(UART_RX, 0, 8)>;
};
};

uart1_sleep_alt: uart1_sleep_alt {
group1 {
psels = <NRF_PSEL(UART_TX, 0, 6)>,
<NRF_PSEL(UART_RX, 0, 8)>;
low-power-enable;
};
};

uart0_default_alt: uart0_default_alt {
group1 {
psels = <NRF_PSEL(UART_TX, 1, 1)>,
<NRF_PSEL(UART_RX, 1, 2)>,
<NRF_PSEL(UART_RTS, 1, 3)>,
<NRF_PSEL(UART_CTS, 1, 4)>;
};
};

uart0_sleep_alt: uart0_sleep_alt {
group1 {
psels = <NRF_PSEL(UART_TX, 1, 1)>,
<NRF_PSEL(UART_RX, 1, 2)>,
<NRF_PSEL(UART_RTS, 1, 3)>,
<NRF_PSEL(UART_CTS, 1, 4)>;
low-power-enable;
};
};
};

/ {
chosen {
zephyr,console = &uart1;
};
};

&uart1 {
current-speed = <115200>;
status = "okay";
pinctrl-0 = <&uart1_default_alt>;
pinctrl-1 = <&uart1_sleep_alt>;
pinctrl-names = "default", "sleep";
};

dut: &uart0 {
compatible = "nordic,nrf-uarte";
current-speed = <115200>;
status = "okay";
pinctrl-0 = <&uart0_default_alt>;
pinctrl-1 = <&uart0_sleep_alt>;
pinctrl-names = "default", "sleep";
};
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
/* SPDX-License-Identifier: Apache-2.0 */

Check failure on line 1 in tests/benchmarks/current_consumption/uarte_suspend/boards/nrf5340dk_nrf5340_cpuapp.overlay

GitHub Actions / call-workflow / Run license checks on patch series (PR)

License Problem

"APACHE-2.0" license is not allowed for this file.

/ {
aliases {
led = &led0;
/delete-property/ led1;
};
};

/delete-node/ &led1;

&pinctrl {
uart1_default_alt: uart1_default_alt {
group1 {
psels = <NRF_PSEL(UART_TX, 0, 4)>,
<NRF_PSEL(UART_RX, 0, 5)>,
<NRF_PSEL(UART_RTS, 0, 6)>,
<NRF_PSEL(UART_CTS, 0, 7)>;
};
};

uart1_sleep_alt: uart1_sleep_alt {
group1 {
psels = <NRF_PSEL(UART_TX, 0, 4)>,
<NRF_PSEL(UART_RX, 0, 5)>,
<NRF_PSEL(UART_RTS, 0, 6)>,
<NRF_PSEL(UART_CTS, 0, 7)>;
low-power-enable;
};
};
};

dut: &uart1 {
current-speed = <115200>;
compatible = "nordic,nrf-uarte";
status = "okay";
pinctrl-0 = <&uart1_default_alt>;
pinctrl-1 = <&uart1_sleep_alt>;
pinctrl-names = "default", "sleep";
hw-flow-control;
};
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
/*
* Copyright (c) 2025 Nordic Semiconductor ASA
*
* SPDX-License-Identifier: LicenseRef-Nordic-5-Clause
*/

/ {

Check warning on line 7 in tests/benchmarks/current_consumption/uarte_suspend/boards/nrf54l15dk_nrf54l15_cpuapp.overlay

GitHub Actions / Run compliance checks on patch series (PR)

LEADING_SPACE

tests/benchmarks/current_consumption/uarte_suspend/boards/nrf54l15dk_nrf54l15_cpuapp.overlay:7 please, no spaces at the start of a line
aliases {
led = &led0;
/delete-property/ led1;
};
};

/delete-node/ &led1;

&pinctrl {
uart21_default: uart21_default {
group1 {
psels = <NRF_PSEL(UART_TX, 1, 10)>,
<NRF_PSEL(UART_RX, 1, 11)>,
<NRF_PSEL(UART_RTS, 1, 8)>,
<NRF_PSEL(UART_CTS, 1, 9)>;
};
};

uart21_sleep: uart21_sleep {
group1 {
psels = <NRF_PSEL(UART_TX, 1, 10)>,
<NRF_PSEL(UART_RX, 1, 11)>,
<NRF_PSEL(UART_RTS, 1, 8)>,
<NRF_PSEL(UART_CTS, 1, 9)>;
low-power-enable;
};
};
};

dut: &uart21 {
status = "okay";
current-speed = <115200>;
pinctrl-0 = <&uart21_default>;
pinctrl-1 = <&uart21_sleep>;
pinctrl-names = "default", "sleep";
hw-flow-control;
};
17 changes: 17 additions & 0 deletions tests/benchmarks/current_consumption/uarte_suspend/prj.conf
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
CONFIG_SERIAL=y
CONFIG_MAIN_STACK_SIZE=2048
CONFIG_UART_ASYNC_API=y

CONFIG_PM=y
CONFIG_PM_DEVICE=y
CONFIG_PM_DEVICE_RUNTIME=y
CONFIG_POWEROFF=y

CONFIG_BOOT_BANNER=n
CONFIG_ASSERT=y

# Enable for debugging purposes only
CONFIG_PRINTK=n
CONFIG_LOG=n
CONFIG_CONSOLE=n
CONFIG_UART_CONSOLE=n
151 changes: 151 additions & 0 deletions tests/benchmarks/current_consumption/uarte_suspend/src/main.c
Original file line number Diff line number Diff line change
@@ -0,0 +1,151 @@
/*
* Copyright (c) 2025 Nordic Semiconductor ASA
*
* SPDX-License-Identifier: LicenseRef-Nordic-5-Clause
*/

#include <zephyr/drivers/uart.h>
#include <zephyr/pm/device_runtime.h>
#include <zephyr/pm/device.h>
#include <zephyr/kernel.h>
#include <zephyr/logging/log.h>
#include <zephyr/drivers/gpio.h>

/* Note: logging is normally disabled for this test
* Enable only for debugging purposes
*/
LOG_MODULE_REGISTER(uarte_suspend);

static const struct gpio_dt_spec led = GPIO_DT_SPEC_GET(DT_ALIAS(led), gpios);
static const struct device *const console_dev = DEVICE_DT_GET(DT_CHOSEN(zephyr_console));

#if DT_NODE_EXISTS(DT_NODELABEL(dut))
#define UART_NODE DT_NODELABEL(dut)
#else
#error Improper device tree configuration, UARTE test node not available
#endif

#define UART_ACTION_BASE_TIMEOUT_US 1000
#define TEST_BUFFER_LEN 10

static const struct device *const uart_dev = DEVICE_DT_GET(UART_NODE);

const uint8_t test_pattern[TEST_BUFFER_LEN] = {0x11, 0x12, 0x13, 0x14, 0x15,
0x16, 0x17, 0x18, 0x19, 0x20};
static uint8_t test_buffer[TEST_BUFFER_LEN];
static volatile uint8_t uart_error_counter;

/*
* Callback function for UART async transmission
*/
static void async_uart_callback(const struct device *dev, struct uart_event *evt, void *user_data)
{
printk("Callback !\n");
switch (evt->type) {
case UART_TX_DONE:
printk("UART_TX_DONE\n");
break;
case UART_TX_ABORTED:
printk("UART_TX_ABORTED\n");
printk("Callback should not enter here\n");
__ASSERT_NO_MSG(1 == 0);
break;
case UART_RX_RDY:
printk("UART_RX_RDY\n");
for (int index = 0; index < TEST_BUFFER_LEN; index++) {
printk("test_pattern[%d]=%d\n", index, test_pattern[index]);
printk("test_buffer[%d]=%d\n", index, test_buffer[index]);
if (test_buffer[index] != test_pattern[index]) {
printk("Recieived data byte %d does not match pattern 0x%x != "
"0x%x\n",
index, test_buffer[index], test_pattern[index]);
__ASSERT_NO_MSG(test_buffer[index] == test_pattern[index]);
}
}
break;
case UART_RX_BUF_RELEASED:
printk("UART_RX_BUF_RELEASED\n");
break;
case UART_RX_BUF_REQUEST:
printk("UART_RX_BUF_REQUEST\n");
break;
case UART_RX_DISABLED:
printk("UART_RX_DISABLED\n");
break;
default:
break;
}
}

/* Helper function for enabling UART RX */
void enable_uart_rx(void)
{
int err;

printk("Enable UART RX\n");
err = uart_rx_enable(uart_dev, test_buffer, TEST_BUFFER_LEN,
5 * UART_ACTION_BASE_TIMEOUT_US);
if (err != 0) {
printk("Unexpected error when enabling UART RX: %d\n", err);
}
}

/* Helper function for disabling UART RX */
void disable_uart_rx(void)
{
int err;

k_msleep(250);
printk("Disable UART RX\n");
err = uart_rx_disable(uart_dev);
if (err != 0) {
printk("Unexpected error when disabling RX: %d\n", err);
}
k_msleep(250);
}

int main(void)
{
int err;

err = gpio_is_ready_dt(&led);
__ASSERT(err, "Error: GPIO Device not ready");

err = gpio_pin_configure_dt(&led, GPIO_OUTPUT_ACTIVE);
__ASSERT(err == 0, "Could not configure led GPIO");

printk("Hello World! %s\n", CONFIG_BOARD_TARGET);
printk("UART instance: %s\n", uart_dev->name);
k_msleep(250);

err = uart_callback_set(uart_dev, async_uart_callback, NULL);
if (err != 0) {
printk("Unexpected error when setting callback %d\n", err);
__ASSERT_NO_MSG(err == 0);
}

if (IS_ENABLED(CONFIG_PM_DEVICE_RUNTIME)) {
pm_device_runtime_enable(console_dev);
}

while (1) {
printk("Hello\n");
enable_uart_rx();

printk("UART test transmission\n");
err = uart_tx(uart_dev, test_pattern, TEST_BUFFER_LEN, UART_ACTION_BASE_TIMEOUT_US);
if (err != 0) {
printk("Unexpected error when sending UART TX data: %d\n", err);
__ASSERT_NO_MSG(err == 0);
}
disable_uart_rx();
err = pm_device_action_run(uart_dev, PM_DEVICE_ACTION_SUSPEND);
printk("Good night\n");
gpio_pin_set_dt(&led, 0);
k_msleep(1000);
gpio_pin_set_dt(&led, 1);
err = pm_device_action_run(uart_dev, PM_DEVICE_ACTION_RESUME);
}

return 0;
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
common:
sysbuild: true
depends_on: gpio

tests:
benchmarks.current_consumption.uarte_suspend:
tags:
- ci_build
- ci_tests_benchmarks_multicore
- uarte
- ppk_power_measure
platform_allow:
- nrf52840dk/nrf52840
- nrf5340dk/nrf5340/cpuapp
- nrf54l15dk/nrf54l15/cpuapp
integration_platforms:
- nrf52840dk/nrf52840
- nrf5340dk/nrf5340/cpuapp
- nrf54l15dk/nrf54l15/cpuapp
harness: pytest
harness_config:
fixture: gpio_loopback
pytest_root:
- "${CUSTOM_ROOT_TEST_DIR}/test_measure_power_consumption.py::test_measure_and_data_dump_power_consumption_uarte"

Check warning on line 24 in tests/benchmarks/current_consumption/uarte_suspend/testcase.yaml

GitHub Actions / Run compliance checks on patch series (PR)

YAMLLint (new-line-at-end-of-file)

tests/benchmarks/current_consumption/uarte_suspend/testcase.yaml:24 no new line character at the end of file
14 changes: 9 additions & 5 deletions tests/benchmarks/multicore/idle_adc/testcase.yaml
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
common:
sysbuild: true
depends_on: adc
tags:
- ci_build
- ci_tests_benchmarks_multicore
- adc
- ppk_power_measure

tests:
benchmarks.multicore.idle_adc.nrf54h20dk_cpuapp_cpurad.s2ram:
tags:
- ci_build
- ci_tests_benchmarks_multicore
- adc
- ppk_power_measure
filter: not CONFIG_COVERAGE
harness: pytest
platform_allow:
@@ -23,6 +23,10 @@ tests:
- "${CUSTOM_ROOT_TEST_DIR}/test_measure_power_consumption.py::test_measure_and_data_dump_power_consumption_adc"

benchmarks.multicore.idle_adc.nrf54h20dk_cpuapp_cpurad.coverage:
tags:
- ci_build
- ci_tests_benchmarks_multicore
- adc
filter: CONFIG_COVERAGE
platform_allow:
- nrf54h20dk/nrf54h20/cpuapp
15 changes: 11 additions & 4 deletions tests/benchmarks/multicore/idle_clock_control/testcase.yaml
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
common:
sysbuild: true
tags:
- ci_build
- ci_tests_benchmarks_multicore
- ppk_power_measure

tests:
benchmarks.multicore.idle_clock_control.app:
tags:
- ci_build
- ci_tests_benchmarks_multicore
- ppk_power_measure
filter: not CONFIG_COVERAGE
harness: pytest
platform_allow:
@@ -21,6 +21,10 @@ tests:

# note: in this scenario cpuapp is the 'remote'
benchmarks.multicore.idle_clock_control.rad:
tags:
- ci_build
- ci_tests_benchmarks_multicore
- ppk_power_measure
filter: not CONFIG_COVERAGE
harness: pytest
platform_allow:
@@ -44,6 +48,9 @@ tests:
timeout: 90

benchmarks.multicore.idle_clock_control.coverage:
tags:
- ci_build
- ci_tests_benchmarks_multicore
filter: CONFIG_COVERAGE
harness: console
harness_config:
16 changes: 12 additions & 4 deletions tests/benchmarks/multicore/idle_comp/testcase.yaml
Original file line number Diff line number Diff line change
@@ -1,11 +1,12 @@
common:
sysbuild: true
tags:
- ci_build
- ci_tests_benchmarks_multicore
- ppk_power_measure

tests:
benchmarks.multicore.idle_comp.nrf54h20dk_cpuapp_cpurad.s2ram:
tags:
- ci_build
- ci_tests_benchmarks_multicore
- ppk_power_measure
filter: not CONFIG_COVERAGE
harness: pytest
platform_allow:
@@ -21,6 +22,10 @@ tests:
- "${CUSTOM_ROOT_TEST_DIR}/test_measure_power_consumption.py::test_measure_and_data_dump_power_consumption_comp"

benchmarks.multicore.idle_lpcomp.nrf54h20dk_cpuapp_cpurad.s2ram:
tags:
- ci_build
- ci_tests_benchmarks_multicore
- ppk_power_measure
filter: not CONFIG_COVERAGE
harness: pytest
platform_allow:
@@ -36,6 +41,9 @@ tests:
- "${CUSTOM_ROOT_TEST_DIR}/test_measure_power_consumption.py::test_measure_and_data_dump_power_consumption_lpcomp"

benchmarks.multicore.idle_lpcomp.nrf54h20dk_cpuapp_cpurad.coverage:
tags:
- ci_build
- ci_tests_benchmarks_multicore
filter: CONFIG_COVERAGE
platform_allow:
- nrf54h20dk/nrf54h20/cpuapp
16 changes: 10 additions & 6 deletions tests/benchmarks/multicore/idle_exmif/testcase.yaml
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
common:
sysbuild: true
depends_on: gpio
tags:
- ci_build
- ci_tests_benchmarks_multicore
- exmif
- ppk_power_measure
depends_on: spi

tests:
benchmarks.multicore.idle_exmif.nrf54h20dk_cpuapp_cpurad:
tags:
- ci_build
- ci_tests_benchmarks_multicore
- exmif
- ppk_power_measure
filter: not CONFIG_COVERAGE
platform_allow:
- nrf54h20dk/nrf54h20/cpuapp
@@ -21,6 +21,10 @@ tests:
- "${CUSTOM_ROOT_TEST_DIR}/test_measure_power_consumption.py::test_measure_and_data_dump_exmif_and_s2ram"

benchmarks.multicore.idle_exmif.nrf54h20dk_cpuapp_cpurad.coverage:
tags:
- ci_build
- ci_tests_benchmarks_multicore
- exmif
filter: CONFIG_COVERAGE
platform_allow:
- nrf54h20dk/nrf54h20/cpuapp
20 changes: 15 additions & 5 deletions tests/benchmarks/multicore/idle_ipc/testcase.yaml
Original file line number Diff line number Diff line change
@@ -1,12 +1,13 @@
common:
sysbuild: true
tags:
- ci_build
- ci_tests_benchmarks_multicore
- ipc
- ppk_power_measure

tests:
benchmarks.multicore.idle_ipc.nrf54h20dk_cpuapp_cpurad.s2ram:
tags:
- ci_build
- ci_tests_benchmarks_multicore
- ipc
- ppk_power_measure
filter: not CONFIG_COVERAGE
harness: pytest
platform_allow:
@@ -19,6 +20,11 @@ tests:
- "${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
- ci_tests_benchmarks_multicore
- ipc
- ppk_power_measure
filter: not CONFIG_COVERAGE
harness: pytest
platform_allow:
@@ -33,6 +39,10 @@ tests:
- "${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.coverage:
tags:
- ci_build
- ci_tests_benchmarks_multicore
- ipc
filter: CONFIG_COVERAGE
platform_allow:
- nrf54h20dk/nrf54h20/cpuapp
28 changes: 14 additions & 14 deletions tests/benchmarks/multicore/idle_pwm_led/testcase.yaml
Original file line number Diff line number Diff line change
@@ -46,20 +46,6 @@ 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.coverage:
filter: CONFIG_COVERAGE
extra_args:
- idle_pwm_led_CONF_FILE=coverage.conf
- SHIELD=coverage_support
harness: console
harness_config:
type: multi_line
ordered: true
regex:
- ".*Coverage analysis enabled.*"
- ".*Coverage analysis start.*"
timeout: 90

benchmarks.multicore.idle_pwm_led.nrf54h20dk_cpuapp_cpurad.idle_fast:
filter: not CONFIG_COVERAGE
tags: ppk_power_measure
@@ -87,3 +73,17 @@ tests:
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.coverage:
filter: CONFIG_COVERAGE
extra_args:
- idle_pwm_led_CONF_FILE=coverage.conf
- SHIELD=coverage_support
harness: console
harness_config:
type: multi_line
ordered: true
regex:
- ".*Coverage analysis enabled.*"
- ".*Coverage analysis start.*"
timeout: 90
28 changes: 14 additions & 14 deletions tests/benchmarks/multicore/idle_pwm_loopback/testcase.yaml
Original file line number Diff line number Diff line change
@@ -47,20 +47,6 @@ tests:
pytest_root:
- "${CUSTOM_ROOT_TEST_DIR}/test_measure_power_consumption.py::test_measure_and_data_dump_pwm_and_s2ram"

benchmarks.multicore.idle_pwm_loopback.nrf54h20dk_cpuapp_cpurad.coverage:
filter: CONFIG_COVERAGE
extra_args:
- idle_pwm_loopback_CONF_FILE=coverage.conf
- SHIELD=coverage_support
harness: console
harness_config:
fixture: spi_loopback
type: multi_line
ordered: true
regex:
- ".*Coverage analysis enabled.*"
- ".*Coverage analysis start.*"

benchmarks.multicore.idle_pwm_loopback.nrf54h20dk_cpuapp_cpurad.no_sleep_fast:
filter: not CONFIG_COVERAGE
extra_args:
@@ -161,3 +147,17 @@ tests:
fixture: spi_loopback
pytest_root:
- "${CUSTOM_ROOT_TEST_DIR}/test_measure_power_consumption.py::test_measure_and_data_dump_pwm_and_s2ram_with_clock_control"

benchmarks.multicore.idle_pwm_loopback.nrf54h20dk_cpuapp_cpurad.coverage:
filter: CONFIG_COVERAGE
extra_args:
- idle_pwm_loopback_CONF_FILE=coverage.conf
- SHIELD=coverage_support
harness: console
harness_config:
fixture: spi_loopback
type: multi_line
ordered: true
regex:
- ".*Coverage analysis enabled.*"
- ".*Coverage analysis start.*"
17 changes: 11 additions & 6 deletions tests/benchmarks/multicore/idle_spim/testcase.yaml
Original file line number Diff line number Diff line change
@@ -1,13 +1,14 @@
common:
sysbuild: true
depends_on: spi
tags:
- ci_build
- ci_tests_benchmarks_multicore
- spim
- ppk_power_measure

tests:
benchmarks.multicore.idle_spim.nrf54h20dk_cpuapp_cpurad.s2ram:
tags:
- ci_build
- ci_tests_benchmarks_multicore
- spim
- ppk_power_measure
filter: not CONFIG_COVERAGE
harness: pytest
platform_allow:
@@ -21,7 +22,11 @@ tests:
pytest_root:
- "${CUSTOM_ROOT_TEST_DIR}/test_measure_power_consumption.py::test_measure_and_data_dump_power_consumption_spim"

benchmarks.multicore.idle_spim.nrf54h20dk_cpuapp_cpurad.coverge:
benchmarks.multicore.idle_spim.nrf54h20dk_cpuapp_cpurad.coverage:
tags:
- ci_build
- ci_tests_benchmarks_multicore
- spim
filter: CONFIG_COVERAGE
platform_allow:
- nrf54h20dk/nrf54h20/cpuapp
28 changes: 14 additions & 14 deletions tests/benchmarks/multicore/idle_spim_loopback/testcase.yaml
Original file line number Diff line number Diff line change
@@ -50,20 +50,6 @@ tests:
pytest_root:
- "${CUSTOM_ROOT_TEST_DIR}/test_measure_power_consumption.py::test_measure_and_data_dump_spim_and_s2ram"

benchmarks.multicore.idle_spim_loopback.coverage:
filter: CONFIG_COVERAGE
extra_args:
- SHIELD=coverage_support
- CONF_FILE=coverage.conf
harness: console
harness_config:
fixture: spi_loopback
type: multi_line
ordered: true
regex:
- ".*Coverage analysis enabled.*"
- ".*Coverage analysis start.*"

benchmarks.multicore.idle_spim_loopback.4_bytes.no_sleep_fast:
filter: not CONFIG_COVERAGE
extra_args:
@@ -513,3 +499,17 @@ tests:
fixture: spi_loopback
pytest_root:
- "${CUSTOM_ROOT_TEST_DIR}/test_measure_power_consumption.py::test_measure_and_data_dump_spim_and_s2ram"

benchmarks.multicore.idle_spim_loopback.coverage:
filter: CONFIG_COVERAGE
extra_args:
- SHIELD=coverage_support
- CONF_FILE=coverage.conf
harness: console
harness_config:
fixture: spi_loopback
type: multi_line
ordered: true
regex:
- ".*Coverage analysis enabled.*"
- ".*Coverage analysis start.*"
17 changes: 11 additions & 6 deletions tests/benchmarks/multicore/idle_twim/testcase.yaml
Original file line number Diff line number Diff line change
@@ -1,13 +1,14 @@
common:
sysbuild: true
depends_on: i2c
tags:
- ci_build
- ci_tests_benchmarks_multicore
- twim
- ppk_power_measure

tests:
benchmarks.multicore.idle_twim.nrf54h20dk_cpuapp_cpurad.s2ram:
tags:
- ci_build
- ci_tests_benchmarks_multicore
- twim
- ppk_power_measure
filter: not CONFIG_COVERAGE
harness: pytest
platform_allow:
@@ -21,7 +22,11 @@ tests:
pytest_root:
- "${CUSTOM_ROOT_TEST_DIR}/test_measure_power_consumption.py::test_measure_and_data_dump_power_consumption_twim"

benchmarks.multicore.idle_twim.nrf54h20dk_cpuapp_cpurad.coverge:
benchmarks.multicore.idle_twim.nrf54h20dk_cpuapp_cpurad.coverage:
tags:
- ci_build
- ci_tests_benchmarks_multicore
- twim
filter: CONFIG_COVERAGE
platform_allow:
- nrf54h20dk/nrf54h20/cpuapp
78 changes: 54 additions & 24 deletions tests/benchmarks/multicore/idle_uarte/testcase.yaml
Original file line number Diff line number Diff line change
@@ -1,13 +1,14 @@
common:
sysbuild: true
depends_on: gpio
tags:
- ci_build
- ci_tests_benchmarks_multicore
- uarte
- ppk_power_measure

tests:
benchmarks.multicore.idle_uarte.nrf54h20dk_cpuapp_cpurad.s2ram:
tags:
- ci_build
- ci_tests_benchmarks_multicore
- uarte
- ppk_power_measure
filter: not CONFIG_COVERAGE
harness: pytest
platform_allow:
@@ -21,26 +22,12 @@ tests:
pytest_root:
- "${CUSTOM_ROOT_TEST_DIR}/test_measure_power_consumption.py::test_measure_and_data_dump_power_consumption_uarte"

benchmarks.multicore.idle_uarte.nrf54h20dk_cpuapp_cpurad.coverage:
filter: CONFIG_COVERAGE
platform_allow:
- nrf54h20dk/nrf54h20/cpuapp
integration_platforms:
- nrf54h20dk/nrf54h20/cpuapp
extra_args:
- DTC_OVERLAY_FILE="boards/nrf54h20dk_nrf54h20_cpuapp_normal.overlay"
- CONF_FILE=coverage.conf
- SHIELD=coverage_support
harness: console
harness_config:
fixture: gpio_loopback
type: multi_line
ordered: true
regex:
- ".*Coverage analysis enabled.*"
- ".*Coverage analysis start.*"

benchmarks.multicore.idle_uarte.fast.nrf54h20dk_cpuapp_cpurad.s2ram:
tags:
- ci_build
- ci_tests_benchmarks_multicore
- uarte
- ppk_power_measure
filter: not CONFIG_COVERAGE
harness: pytest
platform_allow:
@@ -55,6 +42,11 @@ tests:
- "${CUSTOM_ROOT_TEST_DIR}/test_measure_power_consumption.py::test_measure_and_data_dump_power_consumption_uarte"

benchmarks.multicore.idle_uarte.fast.gd_freq_256MHz.nrf54h20dk_cpuapp_cpurad.s2ram:
tags:
- ci_build
- ci_tests_benchmarks_multicore
- uarte
- ppk_power_measure
filter: not CONFIG_COVERAGE
harness: pytest
platform_allow:
@@ -71,6 +63,11 @@ tests:
- "${CUSTOM_ROOT_TEST_DIR}/test_measure_power_consumption.py::test_measure_and_data_dump_power_consumption_uarte"

benchmarks.multicore.idle_uarte.fast.gd_freq_128MHz.nrf54h20dk_cpuapp_cpurad.s2ram:
tags:
- ci_build
- ci_tests_benchmarks_multicore
- uarte
- ppk_power_measure
filter: not CONFIG_COVERAGE
harness: pytest
platform_allow:
@@ -87,6 +84,11 @@ tests:
- "${CUSTOM_ROOT_TEST_DIR}/test_measure_power_consumption.py::test_measure_and_data_dump_power_consumption_uarte"

benchmarks.multicore.idle_uarte.fast.gd_freq_64MHz.nrf54h20dk_cpuapp_cpurad.s2ram:
tags:
- ci_build
- ci_tests_benchmarks_multicore
- uarte
- ppk_power_measure
filter: not CONFIG_COVERAGE
harness: pytest
platform_allow:
@@ -103,6 +105,11 @@ tests:
- "${CUSTOM_ROOT_TEST_DIR}/test_measure_power_consumption.py::test_measure_and_data_dump_power_consumption_uarte"

benchmarks.multicore.idle_uarte.automatic_pm.nrf54h20dk_cpuapp_cpurad.s2ram:
tags:
- ci_build
- ci_tests_benchmarks_multicore
- uarte
- ppk_power_measure
filter: not CONFIG_COVERAGE
harness: pytest
platform_allow:
@@ -119,3 +126,26 @@ tests:
fixture: gpio_loopback
pytest_root:
- "${CUSTOM_ROOT_TEST_DIR}/test_measure_power_consumption.py::test_measure_and_data_dump_power_consumption_uarte"

benchmarks.multicore.idle_uarte.nrf54h20dk_cpuapp_cpurad.coverage:
tags:
- ci_build
- ci_tests_benchmarks_multicore
- uarte
filter: CONFIG_COVERAGE
platform_allow:
- nrf54h20dk/nrf54h20/cpuapp
integration_platforms:
- nrf54h20dk/nrf54h20/cpuapp
extra_args:
- DTC_OVERLAY_FILE="boards/nrf54h20dk_nrf54h20_cpuapp_normal.overlay"
- CONF_FILE=coverage.conf
- SHIELD=coverage_support
harness: console
harness_config:
fixture: gpio_loopback
type: multi_line
ordered: true
regex:
- ".*Coverage analysis enabled.*"
- ".*Coverage analysis start.*"