blob: 646677edcaaeea64caf373c2d180ad0cc9b386f8 [file] [log] [blame]
Kukjin Kim1355bbc2012-10-24 13:41:15 +09001/*
2 * SAMSUNG EXYNOS5440 SoC device tree source
3 *
4 * Copyright (c) 2012 Samsung Electronics Co., Ltd.
5 * http://www.samsung.com
6 *
7 * This program is free software; you can redistribute it and/or modify
8 * it under the terms of the GNU General Public License version 2 as
9 * published by the Free Software Foundation.
10*/
11
12/include/ "skeleton.dtsi"
13
14/ {
15 compatible = "samsung,exynos5440";
16
17 interrupt-parent = <&gic>;
18
Thomas Abrahamd8bafc82013-03-09 17:11:33 +090019 clock: clock-controller@0x160000 {
20 compatible = "samsung,exynos5440-clock";
21 reg = <0x160000 0x1000>;
22 #clock-cells = <1>;
23 };
24
Kukjin Kim1355bbc2012-10-24 13:41:15 +090025 gic:interrupt-controller@2E0000 {
26 compatible = "arm,cortex-a15-gic";
27 #interrupt-cells = <3>;
28 interrupt-controller;
Giridhar Maruthy3279dd32013-04-04 15:25:00 +090029 reg = <0x2E1000 0x1000>,
30 <0x2E2000 0x1000>,
31 <0x2E4000 0x2000>,
32 <0x2E6000 0x2000>;
33 interrupts = <1 9 0xf04>;
Kukjin Kim1355bbc2012-10-24 13:41:15 +090034 };
35
36 cpus {
Kukjin Kimf5108e12012-12-06 16:54:10 +090037 #address-cells = <1>;
38 #size-cells = <0>;
39
Kukjin Kim1355bbc2012-10-24 13:41:15 +090040 cpu@0 {
Lorenzo Pieralisi88e41842013-04-18 18:32:40 +010041 device_type = "cpu";
Kukjin Kim1355bbc2012-10-24 13:41:15 +090042 compatible = "arm,cortex-a15";
Kukjin Kimf5108e12012-12-06 16:54:10 +090043 reg = <0>;
Kukjin Kim1355bbc2012-10-24 13:41:15 +090044 };
45 cpu@1 {
Lorenzo Pieralisi88e41842013-04-18 18:32:40 +010046 device_type = "cpu";
Kukjin Kim1355bbc2012-10-24 13:41:15 +090047 compatible = "arm,cortex-a15";
Kukjin Kimf5108e12012-12-06 16:54:10 +090048 reg = <1>;
Kukjin Kim1355bbc2012-10-24 13:41:15 +090049 };
50 cpu@2 {
Lorenzo Pieralisi88e41842013-04-18 18:32:40 +010051 device_type = "cpu";
Kukjin Kim1355bbc2012-10-24 13:41:15 +090052 compatible = "arm,cortex-a15";
Kukjin Kimf5108e12012-12-06 16:54:10 +090053 reg = <2>;
Kukjin Kim1355bbc2012-10-24 13:41:15 +090054 };
55 cpu@3 {
Lorenzo Pieralisi88e41842013-04-18 18:32:40 +010056 device_type = "cpu";
Kukjin Kim1355bbc2012-10-24 13:41:15 +090057 compatible = "arm,cortex-a15";
Kukjin Kimf5108e12012-12-06 16:54:10 +090058 reg = <3>;
Kukjin Kim1355bbc2012-10-24 13:41:15 +090059 };
60 };
61
Subash Patel4c46f512013-04-05 15:22:59 +090062 arm-pmu {
63 compatible = "arm,cortex-a15-pmu", "arm,cortex-a9-pmu";
64 interrupts = <0 52 4>,
65 <0 53 4>,
66 <0 54 4>,
67 <0 55 4>;
68 };
69
Kukjin Kimf5108e12012-12-06 16:54:10 +090070 timer {
71 compatible = "arm,cortex-a15-timer",
72 "arm,armv7-timer";
73 interrupts = <1 13 0xf08>,
74 <1 14 0xf08>,
75 <1 11 0xf08>,
76 <1 10 0xf08>;
77 clock-frequency = <50000000>;
78 };
79
Amit Daniel Kachhap7f7b8ed2013-04-08 21:48:17 +090080 cpufreq@160000 {
81 compatible = "samsung,exynos5440-cpufreq";
82 reg = <0x160000 0x1000>;
83 interrupts = <0 57 0>;
84 operating-points = <
85 /* KHz uV */
86 1200000 1025000
87 1000000 975000
88 800000 925000
89 >;
90 };
91
Kukjin Kim1355bbc2012-10-24 13:41:15 +090092 serial@B0000 {
93 compatible = "samsung,exynos4210-uart";
94 reg = <0xB0000 0x1000>;
95 interrupts = <0 2 0>;
Thomas Abraham6a0338c2013-03-09 17:19:17 +090096 clocks = <&clock 21>, <&clock 21>;
97 clock-names = "uart", "clk_uart_baud0";
Kukjin Kim1355bbc2012-10-24 13:41:15 +090098 };
99
100 serial@C0000 {
101 compatible = "samsung,exynos4210-uart";
102 reg = <0xC0000 0x1000>;
103 interrupts = <0 3 0>;
Thomas Abraham6a0338c2013-03-09 17:19:17 +0900104 clocks = <&clock 21>, <&clock 21>;
105 clock-names = "uart", "clk_uart_baud0";
Kukjin Kim1355bbc2012-10-24 13:41:15 +0900106 };
107
108 spi {
109 compatible = "samsung,exynos4210-spi";
110 reg = <0xD0000 0x1000>;
111 interrupts = <0 4 0>;
112 tx-dma-channel = <&pdma0 5>; /* preliminary */
113 rx-dma-channel = <&pdma0 4>; /* preliminary */
114 #address-cells = <1>;
115 #size-cells = <0>;
Thomas Abraham6a0338c2013-03-09 17:19:17 +0900116 clocks = <&clock 21>, <&clock 16>;
117 clock-names = "spi", "spi_busclk0";
Kukjin Kim1355bbc2012-10-24 13:41:15 +0900118 };
119
120 pinctrl {
Thomas Abrahamf6925432012-12-27 13:25:02 -0800121 compatible = "samsung,exynos5440-pinctrl";
Kukjin Kim1355bbc2012-10-24 13:41:15 +0900122 reg = <0xE0000 0x1000>;
Thomas Abraham71d87da2013-04-05 15:20:03 +0900123 interrupts = <0 37 0>, <0 38 0>, <0 39 0>, <0 40 0>,
124 <0 41 0>, <0 42 0>, <0 43 0>, <0 44 0>;
Kukjin Kim1355bbc2012-10-24 13:41:15 +0900125 interrupt-controller;
126 #interrupt-cells = <2>;
Thomas Abrahamb1ce1012012-10-24 17:18:52 +0900127 #gpio-cells = <2>;
128
129 fan: fan {
130 samsung,exynos5440-pin-function = <1>;
131 };
132
133 hdd_led0: hdd_led0 {
134 samsung,exynos5440-pin-function = <2>;
135 };
136
137 hdd_led1: hdd_led1 {
138 samsung,exynos5440-pin-function = <3>;
139 };
140
141 uart1: uart1 {
142 samsung,exynos5440-pin-function = <4>;
143 };
Kukjin Kim1355bbc2012-10-24 13:41:15 +0900144 };
145
146 i2c@F0000 {
Giridhar Maruthy49498c52012-12-28 09:33:58 -0800147 compatible = "samsung,exynos5440-i2c";
Kukjin Kim1355bbc2012-10-24 13:41:15 +0900148 reg = <0xF0000 0x1000>;
149 interrupts = <0 5 0>;
150 #address-cells = <1>;
151 #size-cells = <0>;
Thomas Abraham6a0338c2013-03-09 17:19:17 +0900152 clocks = <&clock 21>;
153 clock-names = "i2c";
Kukjin Kim1355bbc2012-10-24 13:41:15 +0900154 };
155
156 i2c@100000 {
Giridhar Maruthy49498c52012-12-28 09:33:58 -0800157 compatible = "samsung,exynos5440-i2c";
Kukjin Kim1355bbc2012-10-24 13:41:15 +0900158 reg = <0x100000 0x1000>;
159 interrupts = <0 6 0>;
160 #address-cells = <1>;
161 #size-cells = <0>;
Thomas Abraham6a0338c2013-03-09 17:19:17 +0900162 clocks = <&clock 21>;
163 clock-names = "i2c";
Kukjin Kim1355bbc2012-10-24 13:41:15 +0900164 };
165
166 watchdog {
167 compatible = "samsung,s3c2410-wdt";
168 reg = <0x110000 0x1000>;
169 interrupts = <0 1 0>;
Thomas Abraham6a0338c2013-03-09 17:19:17 +0900170 clocks = <&clock 21>;
171 clock-names = "watchdog";
Kukjin Kim1355bbc2012-10-24 13:41:15 +0900172 };
173
Byungho Anc038c4d2013-04-05 15:22:58 +0900174 gmac: ethernet@00230000 {
175 compatible = "snps,dwmac-3.70a";
176 reg = <0x00230000 0x8000>;
177 interrupt-parent = <&gic>;
178 interrupts = <0 31 4>;
179 interrupt-names = "macirq";
180 phy-mode = "sgmii";
Thomas Abrahamdce3b8e2013-04-08 21:47:02 +0900181 clocks = <&clock 25>;
Byungho Anc038c4d2013-04-05 15:22:58 +0900182 clock-names = "stmmaceth";
183 };
184
Kukjin Kim1355bbc2012-10-24 13:41:15 +0900185 amba {
186 #address-cells = <1>;
187 #size-cells = <1>;
188 compatible = "arm,amba-bus";
189 interrupt-parent = <&gic>;
190 ranges;
191
Subash Patel58a7bbf2013-04-05 15:22:58 +0900192 pdma0: pdma@00121000 {
Kukjin Kim1355bbc2012-10-24 13:41:15 +0900193 compatible = "arm,pl330", "arm,primecell";
Subash Patel58a7bbf2013-04-05 15:22:58 +0900194 reg = <0x121000 0x1000>;
195 interrupts = <0 46 0>;
196 clocks = <&clock 8>;
Thomas Abraham6a0338c2013-03-09 17:19:17 +0900197 clock-names = "apb_pclk";
Padmavathi Venna0a96d4d2013-03-07 10:33:07 +0900198 #dma-cells = <1>;
199 #dma-channels = <8>;
200 #dma-requests = <32>;
Kukjin Kim1355bbc2012-10-24 13:41:15 +0900201 };
202
Subash Patel58a7bbf2013-04-05 15:22:58 +0900203 pdma1: pdma@00120000 {
Kukjin Kim1355bbc2012-10-24 13:41:15 +0900204 compatible = "arm,pl330", "arm,primecell";
Subash Patel58a7bbf2013-04-05 15:22:58 +0900205 reg = <0x120000 0x1000>;
206 interrupts = <0 47 0>;
207 clocks = <&clock 8>;
Thomas Abraham6a0338c2013-03-09 17:19:17 +0900208 clock-names = "apb_pclk";
Padmavathi Venna0a96d4d2013-03-07 10:33:07 +0900209 #dma-cells = <1>;
210 #dma-channels = <8>;
211 #dma-requests = <32>;
Kukjin Kim1355bbc2012-10-24 13:41:15 +0900212 };
213 };
214
215 rtc {
216 compatible = "samsung,s3c6410-rtc";
217 reg = <0x130000 0x1000>;
Giridhar Maruthye877a5a2012-12-27 18:02:58 -0800218 interrupts = <0 17 0>, <0 16 0>;
Thomas Abraham6a0338c2013-03-09 17:19:17 +0900219 clocks = <&clock 21>;
220 clock-names = "rtc";
Doug Anderson522ccdb2013-04-09 03:26:32 +0900221 status = "disabled";
Kukjin Kim1355bbc2012-10-24 13:41:15 +0900222 };
223};