Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial
[sfrench/cifs-2.6.git] / arch / arm / boot / dts / s3c64xx.dtsi
1 /*
2  * Samsung's S3C64xx SoC series common device tree source
3  *
4  * Copyright (c) 2013 Tomasz Figa <tomasz.figa@gmail.com>
5  *
6  * Samsung's S3C64xx SoC series device nodes are listed in this file.
7  * Particular SoCs from S3C64xx series can include this file and provide
8  * values for SoCs specfic bindings.
9  *
10  * Note: This file does not include device nodes for all the controllers in
11  * S3C64xx SoCs. As device tree coverage for S3C64xx increases, additional
12  * nodes can be added to this file.
13  *
14  * This program is free software; you can redistribute it and/or modify
15  * it under the terms of the GNU General Public License version 2 as
16  * published by the Free Software Foundation.
17  */
18
19 #include "skeleton.dtsi"
20 #include <dt-bindings/clock/samsung,s3c64xx-clock.h>
21
22 / {
23         aliases {
24                 i2c0 = &i2c0;
25                 pinctrl0 = &pinctrl0;
26                 serial0 = &uart0;
27                 serial1 = &uart1;
28                 serial2 = &uart2;
29                 serial3 = &uart3;
30         };
31
32         cpus {
33                 #address-cells = <1>;
34                 #size-cells = <0>;
35
36                 cpu@0 {
37                         device_type = "cpu";
38                         compatible = "arm,arm1176jzf-s", "arm,arm1176";
39                         reg = <0x0>;
40                 };
41         };
42
43         soc: soc {
44                 compatible = "simple-bus";
45                 #address-cells = <1>;
46                 #size-cells = <1>;
47                 ranges;
48
49                 vic0: interrupt-controller@71200000 {
50                         compatible = "arm,pl192-vic";
51                         interrupt-controller;
52                         reg = <0x71200000 0x1000>;
53                         #interrupt-cells = <1>;
54                 };
55
56                 vic1: interrupt-controller@71300000 {
57                         compatible = "arm,pl192-vic";
58                         interrupt-controller;
59                         reg = <0x71300000 0x1000>;
60                         #interrupt-cells = <1>;
61                 };
62
63                 sdhci0: sdhci@7c200000 {
64                         compatible = "samsung,s3c6410-sdhci";
65                         reg = <0x7c200000 0x100>;
66                         interrupt-parent = <&vic1>;
67                         interrupts = <24>;
68                         clock-names = "hsmmc", "mmc_busclk.0", "mmc_busclk.2";
69                         clocks = <&clocks HCLK_HSMMC0>, <&clocks HCLK_HSMMC0>,
70                                         <&clocks SCLK_MMC0>;
71                         status = "disabled";
72                 };
73
74                 sdhci1: sdhci@7c300000 {
75                         compatible = "samsung,s3c6410-sdhci";
76                         reg = <0x7c300000 0x100>;
77                         interrupt-parent = <&vic1>;
78                         interrupts = <25>;
79                         clock-names = "hsmmc", "mmc_busclk.0", "mmc_busclk.2";
80                         clocks = <&clocks HCLK_HSMMC1>, <&clocks HCLK_HSMMC1>,
81                                         <&clocks SCLK_MMC1>;
82                         status = "disabled";
83                 };
84
85                 sdhci2: sdhci@7c400000 {
86                         compatible = "samsung,s3c6410-sdhci";
87                         reg = <0x7c400000 0x100>;
88                         interrupt-parent = <&vic1>;
89                         interrupts = <17>;
90                         clock-names = "hsmmc", "mmc_busclk.0", "mmc_busclk.2";
91                         clocks = <&clocks HCLK_HSMMC2>, <&clocks HCLK_HSMMC2>,
92                                         <&clocks SCLK_MMC2>;
93                         status = "disabled";
94                 };
95
96                 watchdog: watchdog@7e004000 {
97                         compatible = "samsung,s3c2410-wdt";
98                         reg = <0x7e004000 0x1000>;
99                         interrupt-parent = <&vic0>;
100                         interrupts = <26>;
101                         clock-names = "watchdog";
102                         clocks = <&clocks PCLK_WDT>;
103                         status = "disabled";
104                 };
105
106                 i2c0: i2c@7f004000 {
107                         compatible = "samsung,s3c2440-i2c";
108                         reg = <0x7f004000 0x1000>;
109                         interrupt-parent = <&vic1>;
110                         interrupts = <18>;
111                         clock-names = "i2c";
112                         clocks = <&clocks PCLK_IIC0>;
113                         status = "disabled";
114                         #address-cells = <1>;
115                         #size-cells = <0>;
116                 };
117
118                 uart0: serial@7f005000 {
119                         compatible = "samsung,s3c6400-uart";
120                         reg = <0x7f005000 0x100>;
121                         interrupt-parent = <&vic1>;
122                         interrupts = <5>;
123                         clock-names = "uart", "clk_uart_baud2",
124                                         "clk_uart_baud3";
125                         clocks = <&clocks PCLK_UART0>, <&clocks PCLK_UART0>,
126                                         <&clocks SCLK_UART>;
127                         status = "disabled";
128                 };
129
130                 uart1: serial@7f005400 {
131                         compatible = "samsung,s3c6400-uart";
132                         reg = <0x7f005400 0x100>;
133                         interrupt-parent = <&vic1>;
134                         interrupts = <6>;
135                         clock-names = "uart", "clk_uart_baud2",
136                                         "clk_uart_baud3";
137                         clocks = <&clocks PCLK_UART1>, <&clocks PCLK_UART1>,
138                                         <&clocks SCLK_UART>;
139                         status = "disabled";
140                 };
141
142                 uart2: serial@7f005800 {
143                         compatible = "samsung,s3c6400-uart";
144                         reg = <0x7f005800 0x100>;
145                         interrupt-parent = <&vic1>;
146                         interrupts = <7>;
147                         clock-names = "uart", "clk_uart_baud2",
148                                         "clk_uart_baud3";
149                         clocks = <&clocks PCLK_UART2>, <&clocks PCLK_UART2>,
150                                         <&clocks SCLK_UART>;
151                         status = "disabled";
152                 };
153
154                 uart3: serial@7f005c00 {
155                         compatible = "samsung,s3c6400-uart";
156                         reg = <0x7f005c00 0x100>;
157                         interrupt-parent = <&vic1>;
158                         interrupts = <8>;
159                         clock-names = "uart", "clk_uart_baud2",
160                                         "clk_uart_baud3";
161                         clocks = <&clocks PCLK_UART3>, <&clocks PCLK_UART3>,
162                                         <&clocks SCLK_UART>;
163                         status = "disabled";
164                 };
165
166                 pwm: pwm@7f006000 {
167                         compatible = "samsung,s3c6400-pwm";
168                         reg = <0x7f006000 0x1000>;
169                         interrupt-parent = <&vic0>;
170                         interrupts = <23>, <24>, <25>, <27>, <28>;
171                         clock-names = "timers";
172                         clocks = <&clocks PCLK_PWM>;
173                         samsung,pwm-outputs = <0>, <1>;
174                         #pwm-cells = <3>;
175                         status = "disabled";
176                 };
177
178                 pinctrl0: pinctrl@7f008000 {
179                         compatible = "samsung,s3c64xx-pinctrl";
180                         reg = <0x7f008000 0x1000>;
181                         interrupt-parent = <&vic1>;
182                         interrupts = <21>;
183
184                         pctrl_int_map: pinctrl-interrupt-map {
185                                 interrupt-map = <0 &vic0 0>,
186                                                 <1 &vic0 1>,
187                                                 <2 &vic1 0>,
188                                                 <3 &vic1 1>;
189                                 #address-cells = <0>;
190                                 #size-cells = <0>;
191                                 #interrupt-cells = <1>;
192                         };
193
194                         wakeup-interrupt-controller {
195                                 compatible = "samsung,s3c64xx-wakeup-eint";
196                                 interrupts = <0>, <1>, <2>, <3>;
197                                 interrupt-parent = <&pctrl_int_map>;
198                         };
199                 };
200         };
201 };
202
203 #include "s3c64xx-pinctrl.dtsi"