summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPhilippe Schenker <philippe.schenker@toradex.com>2022-08-11 13:53:14 +0200
committerPhilippe Schenker <philippe.schenker@toradex.com>2022-08-11 15:55:47 +0200
commitca7ac792f9bc6dfb83b40cbde6f40e5fc2bf9c15 (patch)
treed91af856121b7d89e436f134518ece77299f7b4e
parentee4bc9b0dc2426ba3aef50e2d0c254b4e8fbbb43 (diff)
verdin-imx8mm: add overlay to enable rpmsg
this commit adds an overlay which reserves memory for RPMSG communication as well as the driver to communicate with the M4. Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
-rw-r--r--overlays/Makefile1
-rw-r--r--overlays/verdin-imx8mm_hmp.dts63
2 files changed, 64 insertions, 0 deletions
diff --git a/overlays/Makefile b/overlays/Makefile
index dccb107..24de7bf 100644
--- a/overlays/Makefile
+++ b/overlays/Makefile
@@ -50,6 +50,7 @@ dtb-y += touch-atmel-mxt_overlay.dtbo
dtb-y += verdin-imx8mm_disable_can1.dtbo
dtb-y += verdin-imx8mm_lt8912_overlay.dtbo
dtb-y += verdin-imx8mm_ov5640_overlay.dtbo
+dtb-y += verdin-imx8mm_hmp.dtbo
dtb-y += verdin-imx8mm_sn65dsi84-lt170410_overlay.dtbo
dtb-y += verdin-imx8mm_sn65dsi84_overlay.dtbo
dtb-y += verdin-imx8mp_lt8912_overlay.dtbo
diff --git a/overlays/verdin-imx8mm_hmp.dts b/overlays/verdin-imx8mm_hmp.dts
new file mode 100644
index 0000000..c21c57c
--- /dev/null
+++ b/overlays/verdin-imx8mm_hmp.dts
@@ -0,0 +1,63 @@
+// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
+/*
+ * Copyright 2022 Toradex
+ */
+
+// Enable RPMSG and the M4 driver
+
+/dts-v1/;
+/plugin/;
+
+#include <dt-bindings/clock/imx8mm-clock.h>
+
+/ {
+ compatible = "toradex,verdin-imx8mm";
+
+ imx8mm-cm4 {
+ compatible = "fsl,imx8mm-cm4";
+ rsc-da = <0xb8000000>;
+ clocks = <&clk IMX8MM_CLK_M4_DIV>;
+ mbox-names = "tx", "rx", "rxdb";
+ mboxes = <&mu 0 1
+ &mu 1 1
+ &mu 3 1>;
+ memory-region = <&vdevbuffer>, <&vdev0vring0>, <&vdev0vring1>, <&rsc_table>;
+ syscon = <&src>;
+ };
+};
+
+&uart4 {
+ status = "disabled";
+};
+
+&resmem {
+ #address-cells = <2>;
+ #size-cells = <2>;
+
+ m4_reserved: m4@0x80000000 {
+ no-map;
+ reg = <0 0x80000000 0 0x1000000>;
+ };
+
+ vdev0vring0: vdev0vring0@b8000000 {
+ reg = <0 0xb8000000 0 0x8000>;
+ no-map;
+ };
+
+ vdev0vring1: vdev0vring1@b8008000 {
+ reg = <0 0xb8008000 0 0x8000>;
+ no-map;
+ };
+
+ rsc_table: rsc_table@b80ff000 {
+ reg = <0 0xb80ff000 0 0x1000>;
+ no-map;
+ };
+
+ vdevbuffer: vdevbuffer@b8400000 {
+ compatible = "shared-dma-pool";
+ reg = <0 0xb8400000 0 0x100000>;
+ no-map;
+ };
+
+};