[9610][ERD] arm64: dts: Add reserveed mem device tree
authorJaehyoung Choi <jkkkkk.choi@samsung.com>
Sat, 12 May 2018 07:49:45 +0000 (16:49 +0900)
committerJaehyoung Choi <jkkkkk.choi@samsung.com>
Sat, 12 May 2018 08:24:38 +0000 (17:24 +0900)
Add reserved mem device tree & Remove memory node

Change-Id: I0108daa5ec23e88864856675b0add26fc0c773f3
Signed-off-by: Jaehyoung Choi <jkkkkk.choi@samsung.com>
arch/arm64/boot/dts/exynos/exynos9610-erd9610.dts
arch/arm64/boot/dts/exynos/exynos9610-rmem.dtsi [new file with mode: 0644]

index 242debf55d74fcc28ae2807e54f7a0ddb36474f0..4ea469fe34f73e264401c80e35b6a30a098810aa 100644 (file)
  */
 
 /dts-v1/;
+#include "exynos9610-rmem.dtsi"
 #include "exynos9610.dtsi"
 #include "exynos9610_battery_data.dtsi"
 
 / {
-       model = "Samsung MAESTRO-ERD9610 board based on EXYNOS9610";
+       model = "Samsung ERD9610 board based on EXYNOS9610";
        compatible = "samsung,exynos9610", "samsung,ERD9610";
 
-       memory@80000000 {
-               device_type = "memory";
-               reg = <0x0 0x80000000 0x80000000>;
-       };
-
-       memory@880000000 {
-               device_type = "memory";
-               reg = <0x00000008 0x80000000 0x80000000>;
-       };
-
        ect {
                parameter_address = <0x90000000>;
                parameter_size = <0x19000>;
diff --git a/arch/arm64/boot/dts/exynos/exynos9610-rmem.dtsi b/arch/arm64/boot/dts/exynos/exynos9610-rmem.dtsi
new file mode 100644 (file)
index 0000000..1a101cc
--- /dev/null
@@ -0,0 +1,111 @@
+/*
+ * SAMSUNG EXYNOS device tree source for reserved-memory
+ *
+ * Copyright (c) 2015 Samsung Electronics Co., Ltd.
+ *             http://www.samsung.com
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License version 2 as
+ * published by the Free Software Foundation.
+ */
+
+#include "../../../../../include/generated/autoconf.h"
+#include <dt-bindings/soc/samsung/exynos-ss-table.h>
+
+/memreserve/ 0xE0000000 0x1900000;
+/ {
+       reserved-memory {
+               #address-cells = <2>;
+               #size-cells = <1>;
+               ranges;
+
+               seclog_mem {
+                       compatible = "exynos,seclog";
+                       reg = <0x0 0xC0000000 0x80000>;
+               };
+
+               abox_rmem: abox_rmem@0xE9400000 {
+                        compatible = "exynos,abox_rmem";
+                        reg = <0x0 0xE9400000 0x2800000>;
+                };
+
+               video_stream {
+                       compatible = "exynos8890-ion,vstream";
+                       ion,secure;
+                       ion,reusable;
+                       size = <0x4800000>;
+                       alloc-ranges = <0x0 0x40000000 0xC0000000>;
+                       alignment = <0x0 0x00400000>;
+                       id = <3>;
+                       compat-id = <25 31>;
+               };
+
+               crypto {
+                       compatible = "exynos8890-ion,crypto";
+                       ion,reusable;
+                       size = <0x1800000>;
+                       alignment = <0x0 0x00400000>;
+                       id = <1>;
+               };
+
+               modem_if {
+                       compatible = "exynos,modem_if";
+                       reg = <0x0 0xF0000000 0x8600000>;
+               };
+
+               gnss_reserved: gnss_if {
+                       compatible = "exynos,gnss_if";
+                       reg = <0x0 0xF8600000 0x800000>;
+               };
+
+               chub_rmem: chub_rmem {
+                       compatible = "exynos,chub_rmem";
+                       /* To dump SHUB SRAM out upon shub firmware crash */
+                       reg = <0x0 0xFD000000 0x80000>;
+               };
+
+               exynos_ss {
+                       compatible = "exynos,exynos_ss";
+                       reg = <0x0 ESS_START_ADDR ESS_TOTAL_SIZE>;
+                       #address-cells = <2>;
+                       #size-cells = <1>;
+                       /* If this property exist, these are modified by bootloader. */
+                       //bootloader;
+
+                       header {
+                               compatible = "exynos_ss,header";
+                               reg = <0 ESS_HEADER_ADDR ESS_HEADER_SIZE>;
+                       };
+                       log_kernel {
+                               compatible = "exynos_ss,log_kernel";
+                               reg = <0 ESS_LOG_KERNEL_ADDR ESS_LOG_KERNEL_SIZE>;
+                       };
+                       log_platform {
+                               compatible = "exynos_ss,log_platform";
+                               reg = <0 ESS_LOG_PLATFORM_ADDR ESS_LOG_PLATFORM_SIZE>;
+                       };
+                       log_sfr {
+                               compatible = "exynos_ss,log_sfr";
+                               reg = <0 ESS_LOG_SFR_ADDR ESS_LOG_SFR_SIZE>;
+                       };
+                       log_pstore {
+                               compatible = "exynos_ss,log_pstore";
+                               reg = <0 ESS_LOG_PSTORE_ADDR ESS_LOG_PSTORE_SIZE>;
+                       };
+                       log_kevents {
+                               compatible = "exynos_ss,log_kevents";
+                               reg = <0 ESS_LOG_KEVENTS_ADDR ESS_LOG_KEVENTS_SIZE>;
+                       };
+               };
+
+               wifibt_if {
+                       compatible = "exynos,wifibt_if";
+                       size = <0x1000000>; /* 16MB */
+               };
+
+               vipx_fw_code_rmem: vipx_fw_rmem@0xB8000000 {
+                     compatible = "exynos,vipx_fw_code_rmem";
+                     reg = <0x0 0xb8000000 0x300000>;
+               };
+       };
+};