boards: nordic: nrf54h20dk: Add IPC configuration for SysCtrl
Add the default `zephyr,ipc-icmsg` nodes for communication with
Application and Radiocore.
Signed-off-by: Grzegorz Swiderski <grzegorz.swiderski@nordicsemi.no>
diff --git a/boards/nordic/nrf54h20dk/nrf54h20dk_nrf54h20-ipc_conf.dtsi b/boards/nordic/nrf54h20dk/nrf54h20dk_nrf54h20-ipc_conf.dtsi
index 9c3d971..abe93b3 100644
--- a/boards/nordic/nrf54h20dk/nrf54h20dk_nrf54h20-ipc_conf.dtsi
+++ b/boards/nordic/nrf54h20dk/nrf54h20dk_nrf54h20-ipc_conf.dtsi
@@ -26,11 +26,25 @@
<&cpurad_bellboard 12>;
};
+ cpuapp_cpusys_ipc: ipc-2-12 {
+ compatible = "zephyr,ipc-icmsg";
+ status = "disabled";
+ mboxes = <&cpuapp_bellboard 6>,
+ <&cpusys_vevif 12>;
+ };
+
cpuapp_cpuppr_ipc: ipc-2-13 {
compatible = "zephyr,ipc-icmsg";
status = "disabled";
mboxes = <&cpuapp_bellboard 13>,
<&cpuppr_vevif 12>;
};
+
+ cpurad_cpusys_ipc: ipc-3-12 {
+ compatible = "zephyr,ipc-icmsg";
+ status = "disabled";
+ mboxes = <&cpurad_bellboard 6>,
+ <&cpusys_vevif 18>;
+ };
};
};
diff --git a/boards/nordic/nrf54h20dk/nrf54h20dk_nrf54h20_cpuapp.dts b/boards/nordic/nrf54h20dk/nrf54h20dk_nrf54h20_cpuapp.dts
index 21a7b9c..60e8721 100644
--- a/boards/nordic/nrf54h20dk/nrf54h20dk_nrf54h20_cpuapp.dts
+++ b/boards/nordic/nrf54h20dk/nrf54h20dk_nrf54h20_cpuapp.dts
@@ -11,6 +11,7 @@
#include "nrf54h20dk_nrf54h20-ipc_conf.dtsi"
#include "nrf54h20dk_nrf54h20-pinctrl.dtsi"
+/delete-node/ &cpurad_cpusys_ipc;
/delete-node/ &cpusec_cpurad_ipc;
/ {
@@ -100,8 +101,8 @@
&cpuapp_bellboard {
interrupts = <96 NRF_DEFAULT_IRQ_PRIORITY>;
interrupt-names = "irq0";
- /* irq0: 0: cpuapp-cpusec, 13: cpuapp-cpuppr, 18: cpuapp-cpurad */
- nordic,interrupt-mapping = <0x00042001 0>;
+ /* irq0: 0: cpuapp-cpusec, 6: cpuapp-cpusys, 13: cpuapp-cpuppr, 18: cpuapp-cpurad */
+ nordic,interrupt-mapping = <0x00042041 0>;
};
&cpusec_cpuapp_ipc {
@@ -117,6 +118,12 @@
rx-region = <&cpurad_cpuapp_ipc_shm>;
};
+&cpuapp_cpusys_ipc {
+ mbox-names = "rx", "tx";
+ tx-region = <&cpuapp_cpusys_ipc_shm>;
+ rx-region = <&cpusys_cpuapp_ipc_shm>;
+};
+
&cpuapp_cpuppr_ipc {
mbox-names = "rx", "tx";
tx-region = <&cpuapp_cpuppr_ipc_shm>;
diff --git a/boards/nordic/nrf54h20dk/nrf54h20dk_nrf54h20_cpuppr.dts b/boards/nordic/nrf54h20dk/nrf54h20dk_nrf54h20_cpuppr.dts
index 4cfad97..80b6908 100644
--- a/boards/nordic/nrf54h20dk/nrf54h20dk_nrf54h20_cpuppr.dts
+++ b/boards/nordic/nrf54h20dk/nrf54h20dk_nrf54h20_cpuppr.dts
@@ -12,6 +12,8 @@
#include "nrf54h20dk_nrf54h20-pinctrl.dtsi"
/delete-node/ &cpuapp_cpurad_ipc;
+/delete-node/ &cpuapp_cpusys_ipc;
+/delete-node/ &cpurad_cpusys_ipc;
/delete-node/ &cpusec_cpuapp_ipc;
/delete-node/ &cpusec_cpurad_ipc;
diff --git a/boards/nordic/nrf54h20dk/nrf54h20dk_nrf54h20_cpurad.dts b/boards/nordic/nrf54h20dk/nrf54h20dk_nrf54h20_cpurad.dts
index a3d3736..4cfeb3d 100644
--- a/boards/nordic/nrf54h20dk/nrf54h20dk_nrf54h20_cpurad.dts
+++ b/boards/nordic/nrf54h20dk/nrf54h20dk_nrf54h20_cpurad.dts
@@ -12,6 +12,7 @@
#include "nrf54h20dk_nrf54h20-pinctrl.dtsi"
/delete-node/ &cpuapp_cpuppr_ipc;
+/delete-node/ &cpuapp_cpusys_ipc;
/delete-node/ &cpusec_cpuapp_ipc;
/ {
@@ -34,8 +35,8 @@
&cpurad_bellboard {
interrupts = <96 NRF_DEFAULT_IRQ_PRIORITY>;
interrupt-names = "irq0";
- /* irq0: 0: cpurad-cpusec, 12: cpurad-cpuapp */
- nordic,interrupt-mapping = <0x00001001 0>;
+ /* irq0: 0: cpurad-cpusec, 6: cpurad-cpusys, 12: cpurad-cpuapp */
+ nordic,interrupt-mapping = <0x00001041 0>;
};
&cpusec_cpurad_ipc {
@@ -51,6 +52,12 @@
rx-region = <&cpuapp_cpurad_ipc_shm>;
};
+&cpurad_cpusys_ipc {
+ mbox-names = "rx", "tx";
+ tx-region = <&cpurad_cpusys_ipc_shm>;
+ rx-region = <&cpusys_cpurad_ipc_shm>;
+};
+
&cpurad_dma_region {
status = "okay";
};