Add properties in the DTSI file which is required for S-BOOT when used
an external device tree when booting into U-Boot. S-BOOT is Samsung's
proprietary bootloader, which chainloads U-Boot.

Since this device has multiple bank nodes, add memory nodes for each RAM
bank. This is the format S-BOOT recognizes, and (re)populates it with
the correct bank sizes.

Signed-off-by: Kaustabh Chakraborty <[email protected]>
---
 arch/arm/dts/exynos7870-j6lte-u-boot.dtsi | 25 +++++++++++++++++++++++++
 1 file changed, 25 insertions(+)

diff --git a/arch/arm/dts/exynos7870-j6lte-u-boot.dtsi 
b/arch/arm/dts/exynos7870-j6lte-u-boot.dtsi
index 9d944b127ee..aa499ecf479 100644
--- a/arch/arm/dts/exynos7870-j6lte-u-boot.dtsi
+++ b/arch/arm/dts/exynos7870-j6lte-u-boot.dtsi
@@ -4,6 +4,11 @@
  */
 
 / {
+       /* These properties are required by S-BOOT. */
+       model_info-chip = <7870>;
+       model_info-hw_rev = <0>;
+       model_info-hw_rev_end = <255>;
+
        chosen {
                #address-cells = <2>;
                #size-cells = <1>;
@@ -18,4 +23,24 @@
                        format = "a8r8g8b8";
                };
        };
+
+       /*
+        * S-BOOT will populate the memory nodes stated below. Existing
+        * values redefine the safe memory requirements as stated in upstream
+        * device tree, in separate nodes for each bank.
+        */
+       memory@40000000 {
+               device_type = "memory";
+               reg = <0x0 0x40000000 0x3d800000>;
+       };
+
+       memory@80000000 {
+               device_type = "memory";
+               reg = <0x0 0x80000000 0x40000000>;
+       };
+
+       memory@100000000 {
+               device_type = "memory";
+               reg = <0x1 0x00000000 0x00000000>;
+       };
 };

-- 
2.52.0

Reply via email to