ARM: dts: mvebu: Convert mvebu device tree files to 64 bits
authorGregory CLEMENT <gregory.clement@free-electrons.com>
Fri, 12 Apr 2013 14:29:10 +0000 (16:29 +0200)
committerJason Cooper <jason@lakedaemon.net>
Mon, 15 Apr 2013 15:00:29 +0000 (15:00 +0000)
In order to be able to use more than 4GB of RAM when the LPAE is
activated, the dts must be converted in 64 bits.

Only Armada XP is LPAE capable, but as it shares a common dtsi file
with Armada 370, then the common file include the skeleton64. Thanks
to the use of the overload capability of the device tree format,
armada-370 include the 32 bit skeleton and all the armada 370 based
dts can remain the same.

This was heavily based on the work of Lior Amsalem.

Signed-off-by: Gregory CLEMENT <gregory.clement@free-electrons.com>
Signed-off-by: Jason Cooper <jason@lakedaemon.net>
arch/arm/boot/dts/armada-370-xp.dtsi
arch/arm/boot/dts/armada-370.dtsi
arch/arm/boot/dts/armada-xp-db.dts
arch/arm/boot/dts/armada-xp-gp.dts
arch/arm/boot/dts/armada-xp-openblocks-ax3-4.dts

index bf8f91113625c7a16cf63cfa9fbc88f0feebab4a..272bbc65fab05b809b9df0a57497c14d37eac302 100644 (file)
@@ -16,7 +16,7 @@
  * 370 and Armada XP SoC.
  */
 
-/include/ "skeleton.dtsi"
+/include/ "skeleton64.dtsi"
 
 / {
        model = "Marvell Armada 370 and XP SoC";
@@ -33,7 +33,7 @@
                #size-cells = <1>;
                compatible = "simple-bus";
                interrupt-parent = <&mpic>;
-               ranges = <0 0xd0000000 0x100000>;
+               ranges = <0 0 0xd0000000 0x100000>;
 
                internal-regs {
                        compatible = "simple-bus";
index 6ef95dd218ae21230a3931042629de84d0fd0f5e..b2c1b5af9749cd0f0b358d32dfbb159c7deab280 100644 (file)
@@ -16,6 +16,7 @@
  */
 
 /include/ "armada-370-xp.dtsi"
+/include/ "skeleton.dtsi"
 
 / {
        model = "Marvell Armada 370 family SoC";
@@ -28,6 +29,7 @@
        };
 
        soc {
+               ranges = <0 0xd0000000 0x100000>;
                internal-regs {
                        system-controller@18200 {
                                compatible = "marvell,armada-370-xp-system-controller";
index 6c8b032ddbbbf3e6547cca7bb37ac7224e5adf27..d6cc8bf8272e387281c30a0130914c1e961fa69f 100644 (file)
@@ -26,7 +26,7 @@
 
        memory {
                device_type = "memory";
-               reg = <0x00000000 0x80000000>; /* 2 GB */
+               reg = <0 0x00000000 0 0x80000000>; /* 2 GB */
        };
 
        soc {
index d9972c9a9279ef79cfb4f41b58b4bd5ff83d45c5..26ad06fc147ed78f9446bb5119a1e6e001867dba 100644 (file)
 
        memory {
                device_type = "memory";
-
                /*
-                * 4 GB of plug-in RAM modules by default but only 3GB
-                * are visible, the amount of memory available can be
-                * changed by the bootloader according the size of the
-                * module actually plugged
+                 * 8 GB of plug-in RAM modules by default.The amount
+                 * of memory available can be changed by the
+                 * bootloader according the size of the module
+                 * actually plugged. Only 7GB are usable because
+                 * addresses from 0xC0000000 to 0xffffffff are used by
+                 * the internal registers of the SoC.
                 */
-               reg = <0x00000000 0xC0000000>;
+               reg = <0x00000000 0x00000000 0x00000000 0xC0000000>,
+                     <0x00000001 0x00000000 0x00000001 0x00000000>;
        };
 
        soc {
index 15a66a8bb2380b9d602df79a5afad474db674701..f14d36c4615984399b71c36e920ed84be96fcb74 100644 (file)
@@ -23,7 +23,7 @@
 
        memory {
                device_type = "memory";
-               reg = <0x00000000 0xC0000000>; /* 3 GB */
+               reg = <0 0x00000000 0 0xC0000000>; /* 3 GB */
        };
 
        soc {