Skip to content

Commit 439d064

Browse files
nordic-baminordic-piks
authored andcommitted
tests: benchmarks: Add UARTE suspend test with current measurement
PM suspend have not been tested with power measurement so far. Signed-off-by: Bartosz Miller <[email protected]>
1 parent 3bca5b8 commit 439d064

File tree

10 files changed

+455
-0
lines changed

10 files changed

+455
-0
lines changed
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
#
2+
# Copyright (c) 2025 Nordic Semiconductor ASA
3+
#
4+
# SPDX-License-Identifier: LicenseRef-Nordic-5-Clause
5+
#
6+
7+
cmake_minimum_required(VERSION 3.20.0)
8+
9+
find_package(Zephyr REQUIRED HINTS $ENV{ZEPHYR_BASE})
10+
11+
project(uarte_suspend)
12+
13+
target_sources(app PRIVATE src/main.c)
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
#
2+
# Copyright (c) 2025 Nordic Semiconductor ASA
3+
#
4+
# SPDX-License-Identifier: LicenseRef-Nordic-5-Clause
5+
#
6+
7+
source "${ZEPHYR_BASE}/share/sysbuild/Kconfig"
8+
9+
config REMOTE_BOARD
10+
string
11+
default "$(BOARD)/nrf54h20/cpurad" if SOC_NRF54H20_CPUAPP
Lines changed: 73 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,73 @@
1+
/*
2+
* Copyright (c) 2025 Nordic Semiconductor ASA
3+
*
4+
* SPDX-License-Identifier: LicenseRef-Nordic-5-Clause
5+
*/
6+
7+
/ {
8+
aliases {
9+
led = &led0;
10+
/delete-property/ led1;
11+
};
12+
};
13+
14+
/delete-node/ &led1;
15+
16+
&pinctrl {
17+
uart1_default_alt: uart1_default_alt {
18+
group1 {
19+
psels = <NRF_PSEL(UART_TX, 0, 6)>,
20+
<NRF_PSEL(UART_RX, 0, 8)>;
21+
};
22+
};
23+
24+
uart1_sleep_alt: uart1_sleep_alt {
25+
group1 {
26+
psels = <NRF_PSEL(UART_TX, 0, 6)>,
27+
<NRF_PSEL(UART_RX, 0, 8)>;
28+
low-power-enable;
29+
};
30+
};
31+
32+
uart0_default_alt: uart0_default_alt {
33+
group1 {
34+
psels = <NRF_PSEL(UART_TX, 1, 1)>,
35+
<NRF_PSEL(UART_RX, 1, 2)>,
36+
<NRF_PSEL(UART_RTS, 1, 3)>,
37+
<NRF_PSEL(UART_CTS, 1, 4)>;
38+
};
39+
};
40+
41+
uart0_sleep_alt: uart0_sleep_alt {
42+
group1 {
43+
psels = <NRF_PSEL(UART_TX, 1, 1)>,
44+
<NRF_PSEL(UART_RX, 1, 2)>,
45+
<NRF_PSEL(UART_RTS, 1, 3)>,
46+
<NRF_PSEL(UART_CTS, 1, 4)>;
47+
low-power-enable;
48+
};
49+
};
50+
};
51+
52+
/ {
53+
chosen {
54+
zephyr,console = &uart1;
55+
};
56+
};
57+
58+
&uart1 {
59+
current-speed = <115200>;
60+
status = "okay";
61+
pinctrl-0 = <&uart1_default_alt>;
62+
pinctrl-1 = <&uart1_sleep_alt>;
63+
pinctrl-names = "default", "sleep";
64+
};
65+
66+
dut: &uart0 {
67+
compatible = "nordic,nrf-uarte";
68+
current-speed = <115200>;
69+
status = "okay";
70+
pinctrl-0 = <&uart0_default_alt>;
71+
pinctrl-1 = <&uart0_sleep_alt>;
72+
pinctrl-names = "default", "sleep";
73+
};
Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,45 @@
1+
/*
2+
* Copyright (c) 2025 Nordic Semiconductor ASA
3+
*
4+
* SPDX-License-Identifier: LicenseRef-Nordic-5-Clause
5+
*/
6+
7+
/ {
8+
aliases {
9+
led = &led0;
10+
/delete-property/ led1;
11+
};
12+
};
13+
14+
/delete-node/ &led1;
15+
16+
&pinctrl {
17+
uart1_default_alt: uart1_default_alt {
18+
group1 {
19+
psels = <NRF_PSEL(UART_TX, 0, 4)>,
20+
<NRF_PSEL(UART_RX, 0, 5)>,
21+
<NRF_PSEL(UART_RTS, 0, 6)>,
22+
<NRF_PSEL(UART_CTS, 0, 7)>;
23+
};
24+
};
25+
26+
uart1_sleep_alt: uart1_sleep_alt {
27+
group1 {
28+
psels = <NRF_PSEL(UART_TX, 0, 4)>,
29+
<NRF_PSEL(UART_RX, 0, 5)>,
30+
<NRF_PSEL(UART_RTS, 0, 6)>,
31+
<NRF_PSEL(UART_CTS, 0, 7)>;
32+
low-power-enable;
33+
};
34+
};
35+
};
36+
37+
dut: &uart1 {
38+
current-speed = <115200>;
39+
compatible = "nordic,nrf-uarte";
40+
status = "okay";
41+
pinctrl-0 = <&uart1_default_alt>;
42+
pinctrl-1 = <&uart1_sleep_alt>;
43+
pinctrl-names = "default", "sleep";
44+
hw-flow-control;
45+
};
Lines changed: 52 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,52 @@
1+
/*
2+
* Copyright (c) 2025 Nordic Semiconductor ASA
3+
*
4+
* SPDX-License-Identifier: LicenseRef-Nordic-5-Clause
5+
*/
6+
7+
/ {
8+
aliases {
9+
led = &led0;
10+
/delete-property/ led1;
11+
};
12+
};
13+
14+
/delete-node/ &led1;
15+
16+
&cpuapp_dma_region {
17+
status="okay";
18+
};
19+
20+
/* UART device used for test
21+
* not the default UART assignment for the LD
22+
*/
23+
&pinctrl {
24+
uart135_default_alt: uart135_default_alt {
25+
group1 {
26+
psels = <NRF_PSEL(UART_TX, 0, 6)>,
27+
<NRF_PSEL(UART_RX, 0, 7)>,
28+
<NRF_PSEL(UART_RTS, 0, 8)>,
29+
<NRF_PSEL(UART_CTS, 0, 9)>;
30+
};
31+
};
32+
33+
uart135_sleep_alt: uart135_sleep_alt {
34+
group1 {
35+
psels = <NRF_PSEL(UART_TX, 0, 6)>,
36+
<NRF_PSEL(UART_RX, 0, 7)>,
37+
<NRF_PSEL(UART_RTS, 0, 8)>,
38+
<NRF_PSEL(UART_CTS, 0, 9)>;
39+
low-power-enable;
40+
};
41+
};
42+
};
43+
44+
dut: &uart135 {
45+
status = "okay";
46+
memory-regions = <&cpuapp_dma_region>;
47+
pinctrl-0 = <&uart135_default_alt>;
48+
pinctrl-1 = <&uart135_sleep_alt>;
49+
pinctrl-names = "default", "sleep";
50+
current-speed = <115200>;
51+
hw-flow-control;
52+
};
Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
/*
2+
* Copyright (c) 2025 Nordic Semiconductor ASA
3+
*
4+
* SPDX-License-Identifier: LicenseRef-Nordic-5-Clause
5+
*/
6+
7+
/ {
8+
aliases {
9+
led = &led0;
10+
/delete-property/ led1;
11+
};
12+
};
13+
14+
/delete-node/ &led1;
15+
16+
&pinctrl {
17+
uart21_default: uart21_default {
18+
group1 {
19+
psels = <NRF_PSEL(UART_TX, 1, 10)>,
20+
<NRF_PSEL(UART_RX, 1, 11)>,
21+
<NRF_PSEL(UART_RTS, 1, 8)>,
22+
<NRF_PSEL(UART_CTS, 1, 9)>;
23+
};
24+
};
25+
26+
uart21_sleep: uart21_sleep {
27+
group1 {
28+
psels = <NRF_PSEL(UART_TX, 1, 10)>,
29+
<NRF_PSEL(UART_RX, 1, 11)>,
30+
<NRF_PSEL(UART_RTS, 1, 8)>,
31+
<NRF_PSEL(UART_CTS, 1, 9)>;
32+
low-power-enable;
33+
};
34+
};
35+
};
36+
37+
dut: &uart21 {
38+
status = "okay";
39+
current-speed = <115200>;
40+
pinctrl-0 = <&uart21_default>;
41+
pinctrl-1 = <&uart21_sleep>;
42+
pinctrl-names = "default", "sleep";
43+
hw-flow-control;
44+
};
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
CONFIG_SERIAL=y
2+
CONFIG_MAIN_STACK_SIZE=2048
3+
CONFIG_UART_ASYNC_API=y
4+
5+
CONFIG_PM=y
6+
CONFIG_PM_DEVICE=y
7+
CONFIG_PM_DEVICE_RUNTIME=y
8+
CONFIG_POWEROFF=y
9+
10+
# For nrf54h only, will be ingored for other platforms
11+
CONFIG_PM_S2RAM=y
12+
CONFIG_PM_S2RAM_CUSTOM_MARKING=y
13+
14+
CONFIG_BOOT_BANNER=n
15+
CONFIG_ASSERT=y
16+
17+
# Enable for debugging purposes only
18+
CONFIG_PRINTK=n
19+
CONFIG_LOG=n
20+
CONFIG_CONSOLE=n
21+
CONFIG_UART_CONSOLE=n

0 commit comments

Comments
 (0)