LF-1383-21 arm64: dts: freescale: Add cm4 rproc support for imx8dxl
authorJacky Bai <ping.bai@nxp.com>
Wed, 9 Sep 2020 02:02:47 +0000 (10:02 +0800)
committerDong Aisheng <aisheng.dong@nxp.com>
Mon, 14 Dec 2020 03:23:10 +0000 (11:23 +0800)
Add the cm4 rproc support for i.MX8DXL.

Signed-off-by: Jacky Bai <ping.bai@nxp.com>
Reviewed-by: Dong Aisheng <aisheng.dong@nxp.com>
arch/arm64/boot/dts/freescale/imx8dxl-evk.dts
arch/arm64/boot/dts/freescale/imx8dxl.dtsi

index 1c42858..3a01f50 100644 (file)
                #size-cells = <2>;
                ranges;
 
+               /*
+                * 0x8800_0000 ~ 0x8FFF_FFFF is reserved for M4
+                * Shouldn't be used at A core and Linux side.
+                *
+                */
+               m4_reserved: m4@0x88000000 {
+                       no-map;
+                       reg = <0 0x88000000 0 0x8000000>;
+               };
+
                rpmsg_reserved: rpmsg@0x90200000 {
                        no-map;
                        reg = <0 0x90200000 0 0x200000>;
                        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;
+               };
        };
 
        modem_reset: modem-reset {
        status = "okay";
 };
 
+&imx8dxl_cm4 {
+       memory-region = <&vdev0vring0>, <&vdev0vring1>, <&vdevbuffer>,
+                       <&vdev1vring0>, <&vdev1vring1>;
+       status = "disabled";
+};
+
 &i2c2 {
        #address-cells = <1>;
        #size-cells = <0>;
index 44e3aa6..e1bdb01 100644 (file)
                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>;
+       };
+
        gic: interrupt-controller@51a00000 {
                compatible = "arm,gic-v3";
                reg = <0x0 0x51a00000 0 0x10000>, /* GIC Dist */