DTS: Add dts support for SMDK5420
authorRajeshwari Birje <rajeshwari.s@samsung.com>
Thu, 26 Dec 2013 04:14:25 +0000 (09:44 +0530)
committerMinkyu Kang <mk7.kang@samsung.com>
Mon, 30 Dec 2013 07:50:35 +0000 (16:50 +0900)
This patch adds dts support for SMDK5420.
exynos5.dtsi created is a common file which has the nodes common
to both 5420 and 5250.

Signed-off-by: Akshay Saraswat <akshay.s@samsung.com>
Signed-off-by: Rajeshwari S Shinde <rajeshwari.s@samsung.com>
Acked-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Minkyu Kang <mk7.kang@samsung.com>
arch/arm/dts/exynos5.dtsi [new file with mode: 0644]
arch/arm/dts/exynos5250.dtsi
arch/arm/dts/exynos5420.dtsi [new file with mode: 0644]
board/samsung/dts/exynos5420-smdk5420.dts [new file with mode: 0644]

diff --git a/arch/arm/dts/exynos5.dtsi b/arch/arm/dts/exynos5.dtsi
new file mode 100644 (file)
index 0000000..f8c8741
--- /dev/null
@@ -0,0 +1,198 @@
+/*
+ * Copyright (c) 2013 The Chromium OS Authors
+ * SAMSUNG EXYNOS5 SoC device tree source
+ *
+ * SPDX-License-Identifier:    GPL-2.0+
+ */
+
+/include/ "skeleton.dtsi"
+
+/ {
+       compatible = "samsung,exynos5";
+
+       sromc@12250000 {
+               compatible = "samsung,exynos-sromc";
+               reg = <0x12250000 0x20>;
+               #address-cells = <1>;
+               #size-cells = <0>;
+       };
+
+       i2c@12c60000 {
+               #address-cells = <1>;
+               #size-cells = <0>;
+               compatible = "samsung,s3c2440-i2c";
+               reg = <0x12C60000 0x100>;
+               interrupts = <0 56 0>;
+       };
+
+       i2c@12c70000 {
+               #address-cells = <1>;
+               #size-cells = <0>;
+               compatible = "samsung,s3c2440-i2c";
+               reg = <0x12C70000 0x100>;
+               interrupts = <0 57 0>;
+       };
+
+       i2c@12c80000 {
+               #address-cells = <1>;
+               #size-cells = <0>;
+               compatible = "samsung,s3c2440-i2c";
+               reg = <0x12C80000 0x100>;
+               interrupts = <0 58 0>;
+       };
+
+       i2c@12c90000 {
+               #address-cells = <1>;
+               #size-cells = <0>;
+               compatible = "samsung,s3c2440-i2c";
+               reg = <0x12C90000 0x100>;
+               interrupts = <0 59 0>;
+       };
+
+       spi@12d20000 {
+               #address-cells = <1>;
+               #size-cells = <0>;
+               compatible = "samsung,exynos-spi";
+               reg = <0x12d20000 0x30>;
+               interrupts = <0 68 0>;
+       };
+
+       spi@12d30000 {
+               #address-cells = <1>;
+               #size-cells = <0>;
+               compatible = "samsung,exynos-spi";
+               reg = <0x12d30000 0x30>;
+               interrupts = <0 69 0>;
+       };
+
+       spi@12d40000 {
+               #address-cells = <1>;
+               #size-cells = <0>;
+               compatible = "samsung,exynos-spi";
+               reg = <0x12d40000 0x30>;
+               clock-frequency = <50000000>;
+               interrupts = <0 70 0>;
+        };
+
+       spi@131a0000 {
+               #address-cells = <1>;
+               #size-cells = <0>;
+               compatible = "samsung,exynos-spi";
+               reg = <0x131a0000 0x30>;
+               interrupts = <0 129 0>;
+       };
+
+       spi@131b0000 {
+               #address-cells = <1>;
+               #size-cells = <0>;
+               compatible = "samsung,exynos-spi";
+               reg = <0x131b0000 0x30>;
+               interrupts = <0 130 0>;
+       };
+
+       ehci@12110000 {
+               compatible = "samsung,exynos-ehci";
+               reg = <0x12110000 0x100>;
+               #address-cells = <1>;
+               #size-cells = <1>;
+
+               phy {
+                       compatible = "samsung,exynos-usb-phy";
+                       reg = <0x12130000 0x100>;
+               };
+       };
+
+       tmu@10060000 {
+               compatible = "samsung,exynos-tmu";
+               reg = <0x10060000 0x10000>;
+       };
+
+       fimd@14400000 {
+               compatible = "samsung,exynos-fimd";
+               reg = <0x14400000 0x10000>;
+               #address-cells = <1>;
+               #size-cells = <1>;
+       };
+
+       dp@145b0000 {
+               compatible = "samsung,exynos5-dp";
+               reg = <0x145b0000 0x1000>;
+               #address-cells = <1>;
+               #size-cells = <1>;
+       };
+
+       xhci0: xhci@12000000 {
+               compatible = "samsung,exynos5250-xhci";
+               reg = <0x12000000 0x10000>;
+               #address-cells = <1>;
+               #size-cells = <1>;
+
+               phy {
+                       compatible = "samsung,exynos5250-usb3-phy";
+                       reg = <0x12100000 0x100>;
+               };
+       };
+
+       mmc@12200000 {
+               #address-cells = <1>;
+               #size-cells = <0>;
+               compatible = "samsung,exynos5250-dwmmc";
+               reg = <0x12200000 0x1000>;
+               interrupts = <0 75 0>;
+       };
+
+       mmc@12210000 {
+               #address-cells = <1>;
+               #size-cells = <0>;
+               compatible = "samsung,exynos5250-dwmmc";
+               reg = <0x12210000 0x1000>;
+               interrupts = <0 76 0>;
+       };
+
+       mmc@12220000 {
+               #address-cells = <1>;
+               #size-cells = <0>;
+               compatible = "samsung,exynos5250-dwmmc";
+               reg = <0x12220000 0x1000>;
+               interrupts = <0 77 0>;
+       };
+
+       mmc@12230000 {
+               #address-cells = <1>;
+               #size-cells = <0>;
+               compatible = "samsung,exynos5250-dwmmc";
+               reg = <0x12230000 0x1000>;
+               interrupts = <0 78 0>;
+       };
+
+       serial@12C00000 {
+               compatible = "samsung,exynos4210-uart";
+               reg = <0x12C00000 0x100>;
+               interrupts = <0 51 0>;
+               id = <0>;
+       };
+
+       serial@12C10000 {
+               compatible = "samsung,exynos4210-uart";
+               reg = <0x12C10000 0x100>;
+               interrupts = <0 52 0>;
+               id = <1>;
+       };
+
+       serial@12C20000 {
+               compatible = "samsung,exynos4210-uart";
+               reg = <0x12C20000 0x100>;
+               interrupts = <0 53 0>;
+               id = <2>;
+       };
+
+       serial@12C30000 {
+               compatible = "samsung,exynos4210-uart";
+               reg = <0x12C30000 0x100>;
+               interrupts = <0 54 0>;
+               id = <3>;
+       };
+
+       gpio: gpio {
+       };
+};
index 31880eb2305817a64600321785770032a91d005a..0c644e7cac8ce563af433f726ece26abaf8922bc 100644 (file)
@@ -1,66 +1,13 @@
 /*
+ * (C) Copyright 2012 SAMSUNG Electronics
  * SAMSUNG EXYNOS5250 SoC device tree source
  *
- * Copyright (c) 2012 Samsung Electronics Co., Ltd.
- *             http://www.samsung.com
- *
- * SAMSUNG EXYNOS5250 SoC device nodes are listed in this file.
- * EXYNOS5250 based board files can include this file and provide
- * values for board specfic bindings.
- *
- * Note: This file does not include device nodes for all the controllers in
- * EXYNOS5250 SoC. As device tree coverage for EXYNOS5250 increases,
- * additional nodes can be added to this file.
- *
- * 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.
-*/
+ * SPDX-License-Identifier:    GPL-2.0+
+ */
 
-/include/ "skeleton.dtsi"
+/include/ "exynos5.dtsi"
 
 / {
-       compatible = "samsung,exynos5250";
-
-       sromc@12250000 {
-               compatible = "samsung,exynos-sromc";
-               reg = <0x12250000 0x20>;
-               #address-cells = <1>;
-               #size-cells = <0>;
-       };
-
-       i2c@12c60000 {
-               #address-cells = <1>;
-               #size-cells = <0>;
-               compatible = "samsung,s3c2440-i2c";
-               reg = <0x12C60000 0x100>;
-               interrupts = <0 56 0>;
-       };
-
-       i2c@12c70000 {
-               #address-cells = <1>;
-               #size-cells = <0>;
-               compatible = "samsung,s3c2440-i2c";
-               reg = <0x12C70000 0x100>;
-               interrupts = <0 57 0>;
-       };
-
-       i2c@12c80000 {
-               #address-cells = <1>;
-               #size-cells = <0>;
-               compatible = "samsung,s3c2440-i2c";
-               reg = <0x12C80000 0x100>;
-               interrupts = <0 58 0>;
-       };
-
-       i2c@12c90000 {
-               #address-cells = <1>;
-               #size-cells = <0>;
-               compatible = "samsung,s3c2440-i2c";
-               reg = <0x12C90000 0x100>;
-               interrupts = <0 59 0>;
-       };
-
        i2c@12ca0000 {
                #address-cells = <1>;
                #size-cells = <0>;
                samsung,i2s-id = <1>;
        };
 
-       spi@12d20000 {
-               #address-cells = <1>;
-               #size-cells = <0>;
-               compatible = "samsung,exynos-spi";
-               reg = <0x12d20000 0x30>;
-               interrupts = <0 68 0>;
-       };
-
-       spi@12d30000 {
-               #address-cells = <1>;
-               #size-cells = <0>;
-               compatible = "samsung,exynos-spi";
-               reg = <0x12d30000 0x30>;
-               interrupts = <0 69 0>;
-       };
-
-       spi@12d40000 {
-               #address-cells = <1>;
-               #size-cells = <0>;
-               compatible = "samsung,exynos-spi";
-               reg = <0x12d40000 0x30>;
-               clock-frequency = <50000000>;
-               interrupts = <0 70 0>;
-       };
-
-       spi@131a0000 {
-               #address-cells = <1>;
-               #size-cells = <0>;
-               compatible = "samsung,exynos-spi";
-               reg = <0x131a0000 0x30>;
-               interrupts = <0 129 0>;
-       };
-
-       spi@131b0000 {
-               #address-cells = <1>;
-               #size-cells = <0>;
-               compatible = "samsung,exynos-spi";
-               reg = <0x131b0000 0x30>;
-               interrupts = <0 130 0>;
-       };
 
        xhci@12000000 {
                compatible = "samsung,exynos5250-xhci";
                };
        };
 
-       ehci@12110000 {
-               compatible = "samsung,exynos-ehci";
-               reg = <0x12110000 0x100>;
-               #address-cells = <1>;
-               #size-cells = <1>;
-
-               phy {
-                       compatible = "samsung,exynos-usb-phy";
-                       reg = <0x12130000 0x100>;
-               };
-       };
-
-       tmu@10060000 {
-               compatible = "samsung,exynos-tmu";
-               reg = <0x10060000 0x10000>;
-       };
-
-       fimd@14400000 {
-               compatible = "samsung,exynos-fimd";
-               reg = <0x14400000 0x10000>;
-               #address-cells = <1>;
-               #size-cells = <1>;
-       };
-
-       dp@145b0000 {
-               compatible = "samsung,exynos5-dp";
-               reg = <0x145b0000 0x1000>;
-               #address-cells = <1>;
-               #size-cells = <1>;
-       };
-
-       mmc@12200000 {
-               #address-cells = <1>;
-               #size-cells = <0>;
-               compatible = "samsung,exynos5250-dwmmc";
-               reg = <0x12200000 0x1000>;
-               interrupts = <0 75 0>;
-       };
-
-       mmc@12210000 {
-               #address-cells = <1>;
-               #size-cells = <0>;
-               compatible = "samsung,exynos5250-dwmmc";
-               reg = <0x12210000 0x1000>;
-               interrupts = <0 76 0>;
-       };
-
-       mmc@12220000 {
-               #address-cells = <1>;
-               #size-cells = <0>;
-               compatible = "samsung,exynos5250-dwmmc";
-               reg = <0x12220000 0x1000>;
-               interrupts = <0 77 0>;
-       };
-
-       mmc@12230000 {
-               #address-cells = <1>;
-               #size-cells = <0>;
-               compatible = "samsung,exynos5250-dwmmc";
-               reg = <0x12230000 0x1000>;
-               interrupts = <0 78 0>;
-       };
-
-       serial@12C00000 {
-               compatible = "samsung,exynos4210-uart";
-               reg = <0x12C00000 0x100>;
-               interrupts = <0 51 0>;
-               id = <0>;
-       };
-
-       serial@12C10000 {
-               compatible = "samsung,exynos4210-uart";
-               reg = <0x12C10000 0x100>;
-               interrupts = <0 52 0>;
-               id = <1>;
-       };
-
-       serial@12C20000 {
-               compatible = "samsung,exynos4210-uart";
-               reg = <0x12C20000 0x100>;
-               interrupts = <0 53 0>;
-               id = <2>;
-       };
-
-       serial@12C30000 {
-               compatible = "samsung,exynos4210-uart";
-               reg = <0x12C30000 0x100>;
-               interrupts = <0 54 0>;
-               id = <3>;
-       };
-
-       gpio: gpio {
-       };
 };
diff --git a/arch/arm/dts/exynos5420.dtsi b/arch/arm/dts/exynos5420.dtsi
new file mode 100644 (file)
index 0000000..02ead61
--- /dev/null
@@ -0,0 +1,70 @@
+/*
+ * (C) Copyright 2013 SAMSUNG Electronics
+ * SAMSUNG EXYNOS5420 SoC device tree source
+ *
+ * SPDX-License-Identifier:    GPL-2.0+
+ */
+
+/include/ "exynos5.dtsi"
+
+/ {
+       config {
+               machine-arch-id = <4151>;
+       };
+
+       i2c@12ca0000 {
+               #address-cells = <1>;
+               #size-cells = <0>;
+               compatible = "samsung,exynos5-hsi2c";
+               reg = <0x12CA0000 0x100>;
+               interrupts = <0 60 0>;
+       };
+
+       i2c@12cb0000 {
+               #address-cells = <1>;
+               #size-cells = <0>;
+               compatible = "samsung,exynos5-hsi2c";
+               reg = <0x12CB0000 0x100>;
+               interrupts = <0 61 0>;
+       };
+
+       i2c@12cc0000 {
+               #address-cells = <1>;
+               #size-cells = <0>;
+               compatible = "samsung,exynos5-hsi2c";
+               reg = <0x12CC0000 0x100>;
+               interrupts = <0 62 0>;
+       };
+
+       i2c@12cd0000 {
+               #address-cells = <1>;
+               #size-cells = <0>;
+               compatible = "samsung,exynos5-hsi2c";
+               reg = <0x12CD0000 0x100>;
+               interrupts = <0 63 0>;
+       };
+
+       i2c@12e00000 {
+               #address-cells = <1>;
+               #size-cells = <0>;
+               compatible = "samsung,exynos5-hsi2c";
+               reg = <0x12E00000 0x100>;
+               interrupts = <0 87 0>;
+       };
+
+       i2c@12e10000 {
+               #address-cells = <1>;
+               #size-cells = <0>;
+               compatible = "samsung,exynos5-hsi2c";
+               reg = <0x12E10000 0x100>;
+               interrupts = <0 88 0>;
+       };
+
+       i2c@12e20000 {
+               #address-cells = <1>;
+               #size-cells = <0>;
+               compatible = "samsung,exynos5-hsi2c";
+               reg = <0x12E20000 0x100>;
+               interrupts = <0 203 0>;
+       };
+};
diff --git a/board/samsung/dts/exynos5420-smdk5420.dts b/board/samsung/dts/exynos5420-smdk5420.dts
new file mode 100644 (file)
index 0000000..d739763
--- /dev/null
@@ -0,0 +1,169 @@
+/*
+ * SAMSUNG SMDK5420 board device tree source
+ *
+ * Copyright (c) 2013 Samsung Electronics Co., Ltd.
+ *             http://www.samsung.com
+ *
+ * SPDX-License-Identifier:    GPL-2.0+
+ */
+
+/dts-v1/;
+/include/ "exynos5420.dtsi"
+
+/ {
+       model = "SAMSUNG SMDK5420 board based on EXYNOS5420";
+       compatible = "samsung,smdk5420", "samsung,exynos5";
+
+       config {
+               hwid = "smdk5420 TEST A-A 9382";
+       };
+
+       aliases {
+               i2c0 = "/i2c@12c60000";
+               i2c1 = "/i2c@12c70000";
+               i2c2 = "/i2c@12c80000";
+               i2c3 = "/i2c@12c90000";
+               i2c4 = "/i2c@12ca0000";
+               i2c5 = "/i2c@12cb0000";
+               i2c6 = "/i2c@12cc0000";
+               i2c7 = "/i2c@12cd0000";
+               i2c8 = "/i2c@12e00000";
+               i2c9 = "/i2c@12e10000";
+               i2c10 = "/i2c@12e20000";
+               spi0 = "/spi@12d20000";
+               spi1 = "/spi@12d30000";
+               spi2 = "/spi@12d40000";
+               spi3 = "/spi@131a0000";
+               spi4 = "/spi@131b0000";
+               mmc0 = "/mmc@12200000";
+               mmc1 = "/mmc@12210000";
+               mmc2 = "/mmc@12220000";
+               xhci0 = "/xhci@12000000";
+               xhci1 = "/xhci@12400000";
+               serial0 = "/serial@12C30000";
+               console = "/serial@12C30000";
+       };
+
+       tmu@10060000 {
+               samsung,min-temp        = <25>;
+               samsung,max-temp        = <125>;
+               samsung,start-warning   = <95>;
+               samsung,start-tripping  = <105>;
+               samsung,hw-tripping     = <110>;
+               samsung,efuse-min-value = <40>;
+               samsung,efuse-value     = <55>;
+               samsung,efuse-max-value = <100>;
+               samsung,slope           = <274761730>;
+               samsung,dc-value        = <25>;
+       };
+
+       /* s2mps11 is on i2c bus 4 */
+       i2c@12ca0000 {
+               #address-cells = <1>;
+               #size-cells = <0>;
+               pmic@66 {
+                       reg = <0x66>;
+                       compatible = "samsung,s2mps11-pmic";
+               };
+       };
+
+       spi@12d20000 { /* spi0 */
+               spi-max-frequency = <50000000>;
+               firmware_storage_spi: flash@0 {
+                       reg = <0>;
+               };
+       };
+
+       fimd@14400000 {
+               samsung,vl-freq = <60>;
+               samsung,vl-col = <2560>;
+               samsung,vl-row = <1600>;
+               samsung,vl-width = <2560>;
+               samsung,vl-height = <1600>;
+
+               samsung,vl-clkp;
+               samsung,vl-dp;
+               samsung,vl-bpix = <4>;
+
+               samsung,vl-hspw = <32>;
+               samsung,vl-hbpd = <80>;
+               samsung,vl-hfpd = <48>;
+               samsung,vl-vspw = <6>;
+               samsung,vl-vbpd = <37>;
+               samsung,vl-vfpd = <3>;
+               samsung,vl-cmd-allow-len = <0xf>;
+
+               samsung,winid = <3>;
+               samsung,interface-mode = <1>;
+               samsung,dp-enabled = <1>;
+               samsung,dual-lcd-enabled = <0>;
+       };
+
+       sound@3830000 {
+               samsung,codec-type = "wm8994";
+       };
+
+       i2c@12c70000 {
+               soundcodec@1a {
+                       reg = <0x1a>;
+                       compatible = "wolfson,wm8994-codec";
+               };
+       };
+
+       mmc@12200000 {
+               samsung,bus-width = <8>;
+               samsung,timing = <1 3 3>;
+               samsung,removable = <0>;
+               samsung,pre-init;
+       };
+
+       mmc@12210000 {
+               status = "disabled";
+       };
+
+       mmc@12220000 {
+               samsung,bus-width = <4>;
+               samsung,timing = <1 2 3>;
+               samsung,removable = <1>;
+       };
+
+       mmc@12230000 {
+               status = "disabled";
+       };
+
+       fimd@14400000 {
+               /* sysmmu is not used in U-Boot */
+               samsung,disable-sysmmu;
+       };
+
+       dp@145b0000 {
+               samsung,lt-status = <0>;
+
+               samsung,master-mode = <0>;
+               samsung,bist-mode = <0>;
+               samsung,bist-pattern = <0>;
+               samsung,h-sync-polarity = <0>;
+               samsung,v-sync-polarity = <0>;
+               samsung,interlaced = <0>;
+               samsung,color-space = <0>;
+               samsung,dynamic-range = <0>;
+               samsung,ycbcr-coeff = <0>;
+               samsung,color-depth = <1>;
+       };
+
+       dmc {
+               mem-type = "ddr3";
+       };
+
+       xhci1: xhci@12400000 {
+               compatible = "samsung,exynos5250-xhci";
+               reg = <0x12400000 0x10000>;
+               #address-cells = <1>;
+               #size-cells = <1>;
+
+               phy {
+                       compatible = "samsung,exynos5250-usb3-phy";
+                       reg = <0x12500000 0x100>;
+               };
+       };
+};