Skip to content

Commit df1a879

Browse files
committed
[nrf fromlist] boards: nrf54h20dk: Add common files for iron board variants
Upstream PR #: 88937 Define `ipc_conf_iron.dtsi` and `memory_map_iron.dtsi`. In the future, they will be merged with the base `ipc_conf.dtsi` and `memory_map.dtsi` respectively. For now, they are used to replace a few devicetree nodes when building for `nrf54h20dk/nrf54h20/*/iron` board targets. Additional changes are included: * The IPC configuration includes new "nordic,ipc-ironside" nodes. * The memory map includes a new RAM20 layout. Its subregions are placed under the `/reserved-memory` node like before. * The MRAM partitions are moved to the common memory map, while the MCUboot-specific node labels are applied in `cpuapp.dts`. Signed-off-by: Grzegorz Swiderski <[email protected]> (cherry picked from commit aaaf30f5620656e60c99b17b5927e0b5136d1cf3)
1 parent 6e46581 commit df1a879

File tree

3 files changed

+137
-33
lines changed

3 files changed

+137
-33
lines changed
Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
/*
2+
* Copyright (c) 2025 Nordic Semiconductor ASA
3+
*
4+
* SPDX-License-Identifier: Apache-2.0
5+
*/
6+
7+
/* This file is to be merged with the original ipc_conf.dtsi in the future. */
8+
9+
/ {
10+
ipc {
11+
/delete-node/ ipc-1-2;
12+
/delete-node/ ipc-1-3;
13+
14+
cpusec_cpuapp_ipc: ipc-1-2 {
15+
compatible = "nordic,ipc-ironside";
16+
memory-region = <&cpusec_cpuapp_ipc_shm>;
17+
mboxes = <&cpusec_bellboard 12>,
18+
<&cpuapp_bellboard 0>;
19+
status = "disabled";
20+
};
21+
22+
cpusec_cpurad_ipc: ipc-1-3 {
23+
compatible = "nordic,ipc-ironside";
24+
memory-region = <&cpusec_cpurad_ipc_shm>;
25+
mboxes = <&cpusec_bellboard 18>,
26+
<&cpurad_bellboard 0>;
27+
status = "disabled";
28+
};
29+
};
30+
};
Lines changed: 92 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,92 @@
1+
/*
2+
* Copyright (c) 2025 Nordic Semiconductor ASA
3+
*
4+
* SPDX-License-Identifier: Apache-2.0
5+
*/
6+
7+
/* This file is to be merged with the original memory_map.dtsi in the future.
8+
* The following nodes will be replaced:
9+
*/
10+
/delete-node/ &cpuapp_cpusec_ipc_shm;
11+
/delete-node/ &cpuapp_cpusys_ipc_shm;
12+
/delete-node/ &cpurad_cpusec_ipc_shm;
13+
/delete-node/ &cpurad_cpusys_ipc_shm;
14+
/delete-node/ &cpusec_cpuapp_ipc_shm;
15+
/delete-node/ &cpusec_cpurad_ipc_shm;
16+
/delete-node/ &cpusys_cpuapp_ipc_shm;
17+
/delete-node/ &cpusys_cpurad_ipc_shm;
18+
/delete-node/ &cpuapp_rx_partitions;
19+
/delete-node/ &cpurad_rx_partitions;
20+
21+
/ {
22+
reserved-memory {
23+
cpuapp_cpusys_ipc_shm: memory@2f88f600 {
24+
reg = <0x2f88f600 0x80>;
25+
};
26+
27+
cpusys_cpuapp_ipc_shm: memory@2f88f680 {
28+
reg = <0x2f88f680 0x80>;
29+
};
30+
31+
cpurad_cpusys_ipc_shm: memory@2f88f700 {
32+
reg = <0x2f88f700 0x80>;
33+
};
34+
35+
cpusys_cpurad_ipc_shm: memory@2f88f780 {
36+
reg = <0x2f88f780 0x80>;
37+
};
38+
39+
cpusec_cpurad_ipc_shm: memory@2f88f800 {
40+
reg = <0x2f88f800 0x80>;
41+
};
42+
43+
cpurad_event_report: memory@2f88f880 {
44+
reg = <0x2f88f880 0x100>;
45+
};
46+
47+
cpurad_boot_report: memory@2f88f980 {
48+
reg = <0x2f88f980 0x200>;
49+
};
50+
51+
cpusec_cpuapp_ipc_shm: memory@2f88fb80 {
52+
reg = <0x2f88fb80 0x80>;
53+
};
54+
55+
cpuapp_event_report: memory@2f88fc00 {
56+
reg = <0x2f88fc00 0x100>;
57+
};
58+
59+
cpuapp_boot_report: memory@2f88fd00 {
60+
reg = <0x2f88fd00 0x200>;
61+
};
62+
};
63+
};
64+
65+
&mram1x {
66+
cpuapp_rx_partitions: cpuapp-rx-partitions {
67+
compatible = "nordic,owned-partitions", "fixed-partitions";
68+
nordic,access = <NRF_OWNER_ID_APPLICATION NRF_PERM_RXS>;
69+
#address-cells = <1>;
70+
#size-cells = <1>;
71+
72+
cpuapp_boot_partition: partition@2c000 {
73+
reg = <0x2c000 DT_SIZE_K(64)>;
74+
};
75+
76+
cpuapp_slot0_partition: partition@3c000 {
77+
reg = <0x3c000 DT_SIZE_K(200)>;
78+
};
79+
80+
cpuapp_slot1_partition: partition@6e000 {
81+
reg = <0x6e000 DT_SIZE_K(200)>;
82+
};
83+
84+
cpuppr_code_partition: partition@a4000 {
85+
reg = <0xa4000 DT_SIZE_K(64)>;
86+
};
87+
88+
cpuflpr_code_partition: partition@b4000 {
89+
reg = <0xb4000 DT_SIZE_K(48)>;
90+
};
91+
};
92+
};

boards/nordic/nrf54h20dk/nrf54h20dk_nrf54h20_cpuapp_iron.dts

Lines changed: 15 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -5,13 +5,10 @@
55
*/
66

77
#include "nrf54h20dk_nrf54h20_cpuapp.dts"
8+
#include "nrf54h20dk_nrf54h20-ipc_conf_iron.dtsi"
9+
#include "nrf54h20dk_nrf54h20-memory_map_iron.dtsi"
810

9-
/delete-node/&cpurad_rx_partitions;
10-
/delete-node/&cpuapp_rx_partitions;
11-
12-
/* This is not yet an exhaustive memory map, and contain only a minimum required to boot
13-
* the application core.
14-
*/
11+
/delete-node/ &cpusec_cpurad_ipc;
1512

1613
/ {
1714
chosen {
@@ -20,34 +17,19 @@
2017
};
2118
};
2219

23-
&mram1x {
24-
cpuapp_rx_partitions: cpuapp-rx-partitions {
25-
compatible = "nordic,owned-partitions", "fixed-partitions";
26-
nordic,access = <NRF_OWNER_ID_APPLICATION NRF_PERM_RXS>;
27-
#address-cells = <1>;
28-
#size-cells = <1>;
29-
30-
boot_partition: partition@2c000 {
31-
label = "mcuboot";
32-
reg = <0x2c000 DT_SIZE_K(64)>;
33-
};
34-
35-
slot0_partition: partition@3c000 {
36-
label = "image-0";
37-
reg = <0x3c000 DT_SIZE_K(200)>;
38-
};
20+
&cpusec_cpuapp_ipc {
21+
mbox-names = "tx", "rx";
22+
status = "okay";
23+
};
3924

40-
slot1_partition: partition@6E000 {
41-
label = "image-1";
42-
reg = <0x6E000 DT_SIZE_K(200)>;
43-
};
25+
boot_partition: &cpuapp_boot_partition {
26+
label = "mcuboot";
27+
};
4428

45-
cpuppr_code_partition: partition@a4000 {
46-
reg = <0xa4000 DT_SIZE_K(64)>;
47-
};
29+
slot0_partition: &cpuapp_slot0_partition {
30+
label = "image-0";
31+
};
4832

49-
cpuflpr_code_partition: partition@b4000 {
50-
reg = <0xb4000 DT_SIZE_K(48)>;
51-
};
52-
};
33+
slot1_partition: &cpuapp_slot1_partition {
34+
label = "image-1";
5335
};

0 commit comments

Comments
 (0)