summaryrefslogtreecommitdiff
path: root/arch/arm64/boot/dts/freescale/fsl-imx8qm.dtsi
diff options
context:
space:
mode:
authorRichard Zhu <hongxing.zhu@nxp.com>2018-05-15 15:24:40 +0800
committerJason Liu <jason.hui.liu@nxp.com>2019-02-12 10:31:47 +0800
commitba4664f4c0704c3b9346ce10275ca337b75e710c (patch)
treeedbc1cd8a4df4572b989836861d25fdfb2f71969 /arch/arm64/boot/dts/freescale/fsl-imx8qm.dtsi
parent70dbc8c14e6d01cf28dd853f562284d2476b79a4 (diff)
MLK-18320 ARM64: dts: imx8qm: align the reserved ddr memory
In order to enlarge the CMA easily, change the rpmsg reserved memory region from 0xb800_0000 to 0x9000_0000. And refine the layout of the reserved memory. - RPMSG buffers are allocated from CMA dynamically, and have to be accessed by M4 side. But M4 can only access the 1.5Gbytes DDR memory from 0x8000_0000. So, the finial reserved memory layout is just like the one below. Thus, the largest size of the DDR memory left for CMA, is about 1212Mbytes in theory, since 32Mbytes alignment is required by CMA allocation. reserved-memory layout 0x8800_0000 ~ 0x8FFF_FFFF M4 + RTOS(128M) 0x9000_0000 ~ 0x903F_FFFF RPMSG Vring(4M) 0x9440_0000 ~ 0xDFFF_FFFF(MAX) CMA(1212M)(MAX) Signed-off-by: Richard Zhu <hongxing.zhu@nxp.com>
Diffstat (limited to 'arch/arm64/boot/dts/freescale/fsl-imx8qm.dtsi')
-rw-r--r--arch/arm64/boot/dts/freescale/fsl-imx8qm.dtsi13
1 files changed, 10 insertions, 3 deletions
diff --git a/arch/arm64/boot/dts/freescale/fsl-imx8qm.dtsi b/arch/arm64/boot/dts/freescale/fsl-imx8qm.dtsi
index ff63290e1ffa..72d7290f0b41 100644
--- a/arch/arm64/boot/dts/freescale/fsl-imx8qm.dtsi
+++ b/arch/arm64/boot/dts/freescale/fsl-imx8qm.dtsi
@@ -74,18 +74,25 @@
#size-cells = <2>;
ranges;
+ /*
+ * reserved-memory layout
+ * 0x8800_0000 ~ 0x8FFF_FFFF is reserved for M4
+ * Shouldn't be used at A core and Linux side.
+ *
+ */
+
/* global autoconfigured region for contiguous allocations */
linux,cma {
compatible = "shared-dma-pool";
reusable;
size = <0 0x28000000>;
- alloc-ranges = <0 0x90000000 0 0x28000000>;
+ alloc-ranges = <0 0x96000000 0 0x28000000>;
linux,cma-default;
};
- rpmsg_reserved: rpmsg@0xb8000000 {
+ rpmsg_reserved: rpmsg@0x90000000 {
no-map;
- reg = <0 0xb8000000 0 0x400000>;
+ reg = <0 0x90000000 0 0x400000>;
};
};