aboutsummaryrefslogtreecommitdiffstats
path: root/arch
diff options
context:
space:
mode:
authorSuman Anna2018-02-22 11:49:32 -0600
committerSuman Anna2019-03-04 10:02:39 -0600
commitb4a2b39f3b58c89096545ea77aafb078adfdf463 (patch)
treea6314ab1083d21b141e9a96e03d1d5fa9b7fe18f /arch
parent1cc71af030c66ffde53cd67243bc7d55a65bdbfb (diff)
downloadremoteproc-b4a2b39f3b58c89096545ea77aafb078adfdf463.tar.gz
remoteproc-b4a2b39f3b58c89096545ea77aafb078adfdf463.tar.xz
remoteproc-b4a2b39f3b58c89096545ea77aafb078adfdf463.zip
ARM: dts: beagle-x15-common: Add CMA pools and enable IPU & DSP rprocs
The CMA reserved memory nodes have been added for all the IPU and DSP remoteproc devices on all the AM57xx BeagleBoard-X15 boards. These nodes are assigned to the respective rproc device nodes, and all the IPU and DSP remote processors are enabled for all these boards. The current CMA pools and sizes are defined statically for each device. The addresses chosen are the same as the respective processors on the DRA7 EVM board to maintain firmware compatibility between the two boards. The CMA pools and sizes are defined using 64-bit values to support LPAE. The starting addresses are fixed to meet current dependencies on the remote processor firmwares, and this will go away when the remote-side code has been improved to gather this information runtime during its initialization. An associated pair of the rproc node and its CMA node can be disabled later on if there is no use-case defined to use that remote processor. Signed-off-by: Suman Anna <s-anna@ti.com>
Diffstat (limited to 'arch')
-rw-r--r--arch/arm/boot/dts/am57xx-beagle-x15-common.dtsi54
1 files changed, 54 insertions, 0 deletions
diff --git a/arch/arm/boot/dts/am57xx-beagle-x15-common.dtsi b/arch/arm/boot/dts/am57xx-beagle-x15-common.dtsi
index 7228e442013e..cecc2f1e53e6 100644
--- a/arch/arm/boot/dts/am57xx-beagle-x15-common.dtsi
+++ b/arch/arm/boot/dts/am57xx-beagle-x15-common.dtsi
@@ -33,6 +33,40 @@
33 reg = <0x0 0x80000000 0x0 0x80000000>; 33 reg = <0x0 0x80000000 0x0 0x80000000>;
34 }; 34 };
35 35
36 reserved-memory {
37 #address-cells = <2>;
38 #size-cells = <2>;
39 ranges;
40
41 ipu2_memory_region: ipu2-memory@95800000 {
42 compatible = "shared-dma-pool";
43 reg = <0x0 0x95800000 0x0 0x3800000>;
44 reusable;
45 status = "okay";
46 };
47
48 dsp1_memory_region: dsp1-memory@99000000 {
49 compatible = "shared-dma-pool";
50 reg = <0x0 0x99000000 0x0 0x4000000>;
51 reusable;
52 status = "okay";
53 };
54
55 ipu1_memory_region: ipu1-memory@9d000000 {
56 compatible = "shared-dma-pool";
57 reg = <0x0 0x9d000000 0x0 0x2000000>;
58 reusable;
59 status = "okay";
60 };
61
62 dsp2_memory_region: dsp2-memory@9f000000 {
63 compatible = "shared-dma-pool";
64 reg = <0x0 0x9f000000 0x0 0x800000>;
65 reusable;
66 status = "okay";
67 };
68 };
69
36 vdd_3v3: fixedregulator-vdd_3v3 { 70 vdd_3v3: fixedregulator-vdd_3v3 {
37 compatible = "regulator-fixed"; 71 compatible = "regulator-fixed";
38 regulator-name = "vdd_3v3"; 72 regulator-name = "vdd_3v3";
@@ -585,3 +619,23 @@
585 status = "okay"; 619 status = "okay";
586 }; 620 };
587}; 621};
622
623&ipu2 {
624 status = "okay";
625 memory-region = <&ipu2_memory_region>;
626};
627
628&ipu1 {
629 status = "okay";
630 memory-region = <&ipu1_memory_region>;
631};
632
633&dsp1 {
634 status = "okay";
635 memory-region = <&dsp1_memory_region>;
636};
637
638&dsp2 {
639 status = "okay";
640 memory-region = <&dsp2_memory_region>;
641};