summaryrefslogtreecommitdiff
path: root/arch/arm64/boot
diff options
context:
space:
mode:
authorPeng Fan <peng.fan@nxp.com>2020-04-02 13:36:03 +0800
committerPeng Fan <peng.fan@nxp.com>2020-04-09 10:35:43 +0800
commitc2be5262f0b2a2ee271c5b8dea1c0cc8afa1c74b (patch)
tree8dafe2c47a7dca91a831c4f25d945365b5214807 /arch/arm64/boot
parenta642d40a06abe99ef8562ad26344f70464ce4687 (diff)
MLK-23754-36 arm64: dts: imx8dxl: add cm4 node
Add cm4 node for remoteproc usage. Reviewed-by: Richard Zhu <hongxing.zhu@nxp.com> Signed-off-by: Peng Fan <peng.fan@nxp.com>
Diffstat (limited to 'arch/arm64/boot')
-rw-r--r--arch/arm64/boot/dts/freescale/imx8dxl-evk-rpmsg.dts8
-rw-r--r--arch/arm64/boot/dts/freescale/imx8dxl-evk.dts46
-rw-r--r--arch/arm64/boot/dts/freescale/imx8dxl.dtsi16
3 files changed, 61 insertions, 9 deletions
diff --git a/arch/arm64/boot/dts/freescale/imx8dxl-evk-rpmsg.dts b/arch/arm64/boot/dts/freescale/imx8dxl-evk-rpmsg.dts
index fca2ff2c2b6c..914cdd302476 100644
--- a/arch/arm64/boot/dts/freescale/imx8dxl-evk-rpmsg.dts
+++ b/arch/arm64/boot/dts/freescale/imx8dxl-evk-rpmsg.dts
@@ -13,7 +13,13 @@
*/
vdev-nums = <2>;
reg = <0x0 0x90000000 0x0 0x20000>;
- memory-region = <&rpmsg_dma_reserved>;
+ memory-region = <&vdevbuffer>;
+ status = "disabled";
+};
+
+&imx8dxl_cm4 {
+ /* Assume you have partitioned M4, so M4 is ont controled by Linux */
+ /delete-property/ power-domains;
status = "okay";
};
diff --git a/arch/arm64/boot/dts/freescale/imx8dxl-evk.dts b/arch/arm64/boot/dts/freescale/imx8dxl-evk.dts
index 2288892e87fd..fa1ba07a623e 100644
--- a/arch/arm64/boot/dts/freescale/imx8dxl-evk.dts
+++ b/arch/arm64/boot/dts/freescale/imx8dxl-evk.dts
@@ -35,15 +35,9 @@
reg = <0 0x88000000 0 0x8000000>;
};
- rpmsg_reserved: rpmsg@0x90000000 {
+ rpmsg_reserved: rpmsg@0x90200000 {
no-map;
- reg = <0 0x90000000 0 0x400000>;
- };
-
- rpmsg_dma_reserved:rpmsg_dma@0x90400000 {
- compatible = "shared-dma-pool";
- no-map;
- reg = <0 0x90400000 0 0x100000>;
+ reg = <0 0x90200000 0 0x200000>;
};
/*
@@ -62,6 +56,36 @@
alloc-ranges = <0 0x98000000 0 0x14000000>;
linux,cma-default;
};
+
+ vdev0vring0: vdev0vring0@90000000 {
+ compatible = "shared-dma-pool";
+ reg = <0 0x90000000 0 0x8000>;
+ no-map;
+ };
+
+ vdev0vring1: vdev0vring1@90008000 {
+ compatible = "shared-dma-pool";
+ reg = <0 0x90008000 0 0x8000>;
+ no-map;
+ };
+
+ vdev1vring0: vdev1vring0@90010000 {
+ compatible = "shared-dma-pool";
+ reg = <0 0x90010000 0 0x8000>;
+ no-map;
+ };
+
+ vdev1vring1: vdev1vring1@90018000 {
+ compatible = "shared-dma-pool";
+ reg = <0 0x90018000 0 0x8000>;
+ no-map;
+ };
+
+ vdevbuffer: vdevbuffer {
+ compatible = "shared-dma-pool";
+ reg = <0 0x90400000 0 0x100000>;
+ no-map;
+ };
};
reg_can0_stby: regulator-can0-stby {
@@ -278,6 +302,12 @@
};
};
+&imx8dxl_cm4 {
+ memory-region = <&vdev0vring0>, <&vdev0vring1>, <&vdevbuffer>,
+ <&vdev1vring0>, <&vdev1vring1>;
+ status = "disabled";
+};
+
&lpspi3 {
fsl,spi-num-chipselects = <1>;
pinctrl-names = "default";
diff --git a/arch/arm64/boot/dts/freescale/imx8dxl.dtsi b/arch/arm64/boot/dts/freescale/imx8dxl.dtsi
index b2067184e6ed..b90f983a36c3 100644
--- a/arch/arm64/boot/dts/freescale/imx8dxl.dtsi
+++ b/arch/arm64/boot/dts/freescale/imx8dxl.dtsi
@@ -136,6 +136,22 @@
status = "disabled";
};
+ imx8dxl_cm4: imx8dxl_cm4@0 {
+ compatible = "fsl,imx8qxp-cm4";
+ rsc-da = <0x90000000>;
+ mbox-names = "tx", "rx", "rxdb";
+ mboxes = <&lsio_mu5 0 1
+ &lsio_mu5 1 1
+ &lsio_mu5 3 1>;
+ mub-partition = <3>;
+ core-index = <0>;
+ core-id = <IMX_SC_R_M4_0_PID0>;
+ status = "disabled";
+ power-domains = <&pd IMX_SC_R_M4_0_PID0>,
+ <&pd IMX_SC_R_M4_0_MU_1A>;
+ };
+
+
scu {
compatible = "fsl,imx-scu";
mbox-names = "tx0", "tx1", "tx2", "tx3",