Skip to content

Commit 180977e

Browse files
57300hakonfam
authored andcommitted
[nrf noup] boards: nrf54h20dk: Add common files for iron board variants
Applied as noup because of conflicts with: 246cb42 [nrf fromlist] soc: add ironside boot report 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,ironside-call" nodes. * The memory map includes an updated RAM20 layout. Its subregions are placed under the `/reserved-memory` node like before. * The memory map also includes an updated MRAM layout. Partitions are now placed under a plain "fixed-partitions" node. MCUboot-specific node labels are applied in `cpuapp.dts`. Signed-off-by: Grzegorz Swiderski <[email protected]>
1 parent c85b23a commit 180977e

File tree

3 files changed

+148
-66
lines changed

3 files changed

+148
-66
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,ironside-call";
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,ironside-call";
24+
memory-region = <&cpusec_cpurad_ipc_shm>;
25+
mboxes = <&cpusec_bellboard 18>,
26+
<&cpurad_bellboard 0>;
27+
status = "disabled";
28+
};
29+
};
30+
};
Lines changed: 104 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,104 @@
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_rw_partitions;
19+
/delete-node/ &cpuapp_rx_partitions;
20+
/delete-node/ &cpurad_rx_partitions;
21+
22+
/ {
23+
reserved-memory {
24+
cpuapp_cpusys_ipc_shm: memory@2f88f600 {
25+
reg = <0x2f88f600 0x80>;
26+
};
27+
28+
cpusys_cpuapp_ipc_shm: memory@2f88f680 {
29+
reg = <0x2f88f680 0x80>;
30+
};
31+
32+
cpurad_cpusys_ipc_shm: memory@2f88f700 {
33+
reg = <0x2f88f700 0x80>;
34+
};
35+
36+
cpusys_cpurad_ipc_shm: memory@2f88f780 {
37+
reg = <0x2f88f780 0x80>;
38+
};
39+
40+
cpusec_cpurad_ipc_shm: memory@2f88f800 {
41+
reg = <0x2f88f800 0x80>;
42+
};
43+
44+
cpurad_ironside_se_event_report: memory@2f88f880 {
45+
reg = <0x2f88f880 0x100>;
46+
};
47+
48+
cpurad_ironside_se_boot_report: memory@2f88f980 {
49+
reg = <0x2f88f980 0x200>;
50+
};
51+
52+
cpusec_cpuapp_ipc_shm: memory@2f88fb80 {
53+
reg = <0x2f88fb80 0x80>;
54+
};
55+
56+
cpuapp_ironside_se_event_report: memory@2f88fc00 {
57+
reg = <0x2f88fc00 0x100>;
58+
};
59+
60+
cpuapp_ironside_se_boot_report: memory@2f88fd00 {
61+
reg = <0x2f88fd00 0x200>;
62+
};
63+
};
64+
};
65+
66+
&mram1x {
67+
partitions {
68+
compatible = "fixed-partitions";
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(336)>;
78+
};
79+
80+
cpurad_slot0_partition: partition@90000 {
81+
reg = <0x90000 DT_SIZE_K(336)>;
82+
};
83+
84+
cpuppr_code_partition: partition@e4000 {
85+
reg = <0xe4000 DT_SIZE_K(64)>;
86+
};
87+
88+
cpuflpr_code_partition: partition@f4000 {
89+
reg = <0xf4000 DT_SIZE_K(48)>;
90+
};
91+
92+
cpuapp_slot1_partition: partition@100000 {
93+
reg = <0x100000 DT_SIZE_K(336)>;
94+
};
95+
96+
cpurad_slot1_partition: partition@154000 {
97+
reg = <0x154000 DT_SIZE_K(336)>;
98+
};
99+
100+
storage_partition: partition@1a8000 {
101+
reg = <0x1a8000 DT_SIZE_K(40)>;
102+
};
103+
};
104+
};

boards/nordic/nrf54h20dk/nrf54h20dk_nrf54h20_cpuapp_iron.dts

Lines changed: 14 additions & 66 deletions
Original file line numberDiff line numberDiff line change
@@ -5,19 +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-
/* Update the location of cpusys IPC shared memory */
13-
/delete-node/&cpuapp_cpusys_ipc_shm;
14-
/delete-node/&cpusys_cpuapp_ipc_shm;
15-
/delete-node/&cpurad_cpusys_ipc_shm;
16-
/delete-node/&cpusys_cpurad_ipc_shm;
17-
18-
/* This is not yet an exhaustive memory map, and contain only a minimum required to boot
19-
* the application core.
20-
*/
11+
/delete-node/ &cpusec_cpurad_ipc;
2112

2213
/ {
2314
chosen {
@@ -26,62 +17,19 @@
2617
};
2718
};
2819

29-
&mram1x {
30-
cpuapp_rx_partitions: cpuapp-rx-partitions {
31-
compatible = "nordic,owned-partitions", "fixed-partitions";
32-
nordic,access = <NRF_OWNER_ID_APPLICATION NRF_PERM_RXS>;
33-
#address-cells = <1>;
34-
#size-cells = <1>;
35-
36-
boot_partition: partition@2c000 {
37-
label = "mcuboot";
38-
reg = <0x2c000 DT_SIZE_K(64)>;
39-
};
40-
41-
slot0_partition: partition@3c000 {
42-
label = "image-0";
43-
reg = <0x3c000 DT_SIZE_K(336)>;
44-
};
45-
46-
slot1_partition: partition@90000 {
47-
label = "image-1";
48-
reg = <0x90000 DT_SIZE_K(336)>;
49-
};
50-
51-
cpuppr_code_partition: partition@e4000 {
52-
reg = <0xe4000 DT_SIZE_K(64)>;
53-
};
54-
55-
cpuflpr_code_partition: partition@f4000 {
56-
reg = <0xf4000 DT_SIZE_K(48)>;
57-
};
58-
};
20+
&cpusec_cpuapp_ipc {
21+
mbox-names = "tx", "rx";
22+
status = "okay";
5923
};
6024

61-
/ {
62-
reserved-memory {
63-
sysctrl_rom_report: memory@2f88ff00 {
64-
reg = <0x2f88ff00 0x100>;
65-
};
66-
67-
cpuapp_ironside_se_boot_report: memory@2f88fd00 {
68-
reg = <0x2f88fd00 0x200>;
69-
};
70-
71-
cpusys_cpurad_ipc_shm: memory@2f88f780 {
72-
reg = <0x2f88f780 0x80>;
73-
};
74-
75-
cpurad_cpusys_ipc_shm: memory@2f88f700 {
76-
reg = <0x2f88f700 0x80>;
77-
};
25+
boot_partition: &cpuapp_boot_partition {
26+
label = "mcuboot";
27+
};
7828

79-
cpusys_cpuapp_ipc_shm: memory@2f88f680 {
80-
reg = <0x2f88f680 0x80>;
81-
};
29+
slot0_partition: &cpuapp_slot0_partition {
30+
label = "image-0";
31+
};
8232

83-
cpuapp_cpusys_ipc_shm: memory@2f88f600 {
84-
reg = <0x2f88f600 0x80>;
85-
};
86-
};
33+
slot1_partition: &cpuapp_slot1_partition {
34+
label = "image-1";
8735
};

0 commit comments

Comments
 (0)