Merge tag 'ext4_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso...
[linux-2.6-microblaze.git] / arch / arm / boot / dts / exynos5420-smdk5420.dts
1 // SPDX-License-Identifier: GPL-2.0
2 /*
3  * Samsung SMDK5420 board device tree source
4  *
5  * Copyright (c) 2013 Samsung Electronics Co., Ltd.
6  *              http://www.samsung.com
7  */
8
9 /dts-v1/;
10 #include "exynos5420.dtsi"
11 #include "exynos5420-cpus.dtsi"
12 #include <dt-bindings/clock/samsung,s2mps11.h>
13 #include <dt-bindings/gpio/gpio.h>
14
15 / {
16         model = "Samsung SMDK5420 board based on Exynos5420";
17         compatible = "samsung,smdk5420", "samsung,exynos5420", "samsung,exynos5";
18
19         memory@20000000 {
20                 device_type = "memory";
21                 reg = <0x20000000 0x80000000>;
22         };
23
24         chosen {
25                 bootargs = "init=/linuxrc";
26                 stdout-path = "serial2:115200n8";
27         };
28
29         fixed-rate-clocks {
30                 oscclk {
31                         compatible = "samsung,exynos5420-oscclk";
32                         clock-frequency = <24000000>;
33                 };
34         };
35
36         vdd: regulator-0 {
37                 compatible = "regulator-fixed";
38                 regulator-name = "vdd-supply";
39                 regulator-min-microvolt = <1800000>;
40                 regulator-max-microvolt = <1800000>;
41                 regulator-always-on;
42         };
43
44         dbvdd: regulator-1 {
45                 compatible = "regulator-fixed";
46                 regulator-name = "dbvdd-supply";
47                 regulator-min-microvolt = <3300000>;
48                 regulator-max-microvolt = <3300000>;
49                 regulator-always-on;
50         };
51
52         spkvdd: regulator-2 {
53                 compatible = "regulator-fixed";
54                 regulator-name = "spkvdd-supply";
55                 regulator-min-microvolt = <5000000>;
56                 regulator-max-microvolt = <5000000>;
57                 regulator-always-on;
58         };
59
60         usb300_vbus_reg: regulator-3 {
61                 compatible = "regulator-fixed";
62                 regulator-name = "VBUS0";
63                 regulator-min-microvolt = <5000000>;
64                 regulator-max-microvolt = <5000000>;
65                 gpio = <&gpg0 5 GPIO_ACTIVE_HIGH>;
66                 pinctrl-names = "default";
67                 pinctrl-0 = <&usb300_vbus_en>;
68                 enable-active-high;
69         };
70
71         usb301_vbus_reg: regulator-4 {
72                 compatible = "regulator-fixed";
73                 regulator-name = "VBUS1";
74                 regulator-min-microvolt = <5000000>;
75                 regulator-max-microvolt = <5000000>;
76                 gpio = <&gpg1 4 GPIO_ACTIVE_HIGH>;
77                 pinctrl-names = "default";
78                 pinctrl-0 = <&usb301_vbus_en>;
79                 enable-active-high;
80         };
81
82 };
83
84 &cpu0 {
85         cpu-supply = <&buck2_reg>;
86 };
87
88 &cpu4 {
89         cpu-supply = <&buck6_reg>;
90 };
91
92 &dp {
93         pinctrl-names = "default";
94         pinctrl-0 = <&dp_hpd>;
95         samsung,color-space = <0>;
96         samsung,color-depth = <1>;
97         samsung,link-rate = <0x0a>;
98         samsung,lane-count = <4>;
99         status = "okay";
100
101         display-timings {
102                 native-mode = <&timing0>;
103                 timing0: timing {
104                         clock-frequency = <50000>;
105                         hactive = <2560>;
106                         vactive = <1600>;
107                         hfront-porch = <48>;
108                         hback-porch = <80>;
109                         hsync-len = <32>;
110                         vback-porch = <16>;
111                         vfront-porch = <8>;
112                         vsync-len = <6>;
113                 };
114         };
115 };
116
117 &fimd {
118         status = "okay";
119 };
120
121 &hdmi {
122         status = "okay";
123         ddc = <&i2c_2>;
124         hpd-gpios = <&gpx3 7 GPIO_ACTIVE_HIGH>;
125         pinctrl-names = "default";
126         pinctrl-0 = <&hdmi_hpd_irq>;
127 };
128
129 &hsi2c_4 {
130         status = "okay";
131
132         pmic@66 {
133                 compatible = "samsung,s2mps11-pmic";
134                 reg = <0x66>;
135
136                 s2mps11_osc: clocks {
137                         compatible = "samsung,s2mps11-clk";
138                         #clock-cells = <1>;
139                         clock-output-names = "s2mps11_ap",
140                                         "s2mps11_cp", "s2mps11_bt";
141                 };
142
143                 regulators {
144                         ldo1_reg: LDO1 {
145                                 regulator-name = "vdd_ldo1";
146                                 regulator-min-microvolt = <1000000>;
147                                 regulator-max-microvolt = <1000000>;
148                                 regulator-always-on;
149                         };
150
151                         ldo3_reg: LDO3 {
152                                 regulator-name = "vdd_ldo3";
153                                 regulator-min-microvolt = <1800000>;
154                                 regulator-max-microvolt = <1800000>;
155                                 regulator-always-on;
156                         };
157
158                         ldo5_reg: LDO5 {
159                                 regulator-name = "vdd_ldo5";
160                                 regulator-min-microvolt = <1800000>;
161                                 regulator-max-microvolt = <1800000>;
162                                 regulator-always-on;
163                         };
164
165                         ldo6_reg: LDO6 {
166                                 regulator-name = "vdd_ldo6";
167                                 regulator-min-microvolt = <1000000>;
168                                 regulator-max-microvolt = <1000000>;
169                                 regulator-always-on;
170                         };
171
172                         ldo7_reg: LDO7 {
173                                 regulator-name = "vdd_ldo7";
174                                 regulator-min-microvolt = <1800000>;
175                                 regulator-max-microvolt = <1800000>;
176                                 regulator-always-on;
177                         };
178
179                         ldo8_reg: LDO8 {
180                                 regulator-name = "vdd_ldo8";
181                                 regulator-min-microvolt = <1800000>;
182                                 regulator-max-microvolt = <1800000>;
183                                 regulator-always-on;
184                         };
185
186                         ldo9_reg: LDO9 {
187                                 regulator-name = "vdd_ldo9";
188                                 regulator-min-microvolt = <3000000>;
189                                 regulator-max-microvolt = <3000000>;
190                                 regulator-always-on;
191                         };
192
193                         ldo10_reg: LDO10 {
194                                 regulator-name = "vdd_ldo10";
195                                 regulator-min-microvolt = <1800000>;
196                                 regulator-max-microvolt = <1800000>;
197                                 regulator-always-on;
198                         };
199
200                         ldo11_reg: LDO11 {
201                                 regulator-name = "vdd_ldo11";
202                                 regulator-min-microvolt = <1000000>;
203                                 regulator-max-microvolt = <1000000>;
204                                 regulator-always-on;
205                         };
206
207                         ldo12_reg: LDO12 {
208                                 regulator-name = "vdd_ldo12";
209                                 regulator-min-microvolt = <1800000>;
210                                 regulator-max-microvolt = <1800000>;
211                                 regulator-always-on;
212                         };
213
214                         ldo13_reg: LDO13 {
215                                 regulator-name = "vdd_ldo13";
216                                 regulator-min-microvolt = <2800000>;
217                                 regulator-max-microvolt = <2800000>;
218                                 regulator-always-on;
219                         };
220
221                         ldo15_reg: LDO15 {
222                                 regulator-name = "vdd_ldo15";
223                                 regulator-min-microvolt = <3100000>;
224                                 regulator-max-microvolt = <3100000>;
225                                 regulator-always-on;
226                         };
227
228                         ldo16_reg: LDO16 {
229                                 regulator-name = "vdd_ldo16";
230                                 regulator-min-microvolt = <2200000>;
231                                 regulator-max-microvolt = <2200000>;
232                                 regulator-always-on;
233                         };
234
235                         ldo17_reg: LDO17 {
236                                 regulator-name = "tsp_avdd";
237                                 regulator-min-microvolt = <3300000>;
238                                 regulator-max-microvolt = <3300000>;
239                                 regulator-always-on;
240                         };
241
242                         ldo19_reg: LDO19 {
243                                 regulator-name = "vdd_sd";
244                                 regulator-min-microvolt = <2800000>;
245                                 regulator-max-microvolt = <2800000>;
246                                 regulator-always-on;
247                         };
248
249                         ldo24_reg: LDO24 {
250                                 regulator-name = "tsp_io";
251                                 regulator-min-microvolt = <2800000>;
252                                 regulator-max-microvolt = <2800000>;
253                                 regulator-always-on;
254                         };
255
256                         buck1_reg: BUCK1 {
257                                 regulator-name = "vdd_mif";
258                                 regulator-min-microvolt = <800000>;
259                                 regulator-max-microvolt = <1300000>;
260                                 regulator-always-on;
261                                 regulator-boot-on;
262                         };
263
264                         buck2_reg: BUCK2 {
265                                 regulator-name = "vdd_arm";
266                                 regulator-min-microvolt = <800000>;
267                                 regulator-max-microvolt = <1500000>;
268                                 regulator-always-on;
269                                 regulator-boot-on;
270                         };
271
272                         buck3_reg: BUCK3 {
273                                 regulator-name = "vdd_int";
274                                 regulator-min-microvolt = <800000>;
275                                 regulator-max-microvolt = <1400000>;
276                                 regulator-always-on;
277                                 regulator-boot-on;
278                         };
279
280                         buck4_reg: BUCK4 {
281                                 regulator-name = "vdd_g3d";
282                                 regulator-min-microvolt = <800000>;
283                                 regulator-max-microvolt = <1400000>;
284                                 regulator-always-on;
285                                 regulator-boot-on;
286                         };
287
288                         buck5_reg: BUCK5 {
289                                 regulator-name = "vdd_mem";
290                                 regulator-min-microvolt = <800000>;
291                                 regulator-max-microvolt = <1400000>;
292                                 regulator-always-on;
293                                 regulator-boot-on;
294                         };
295
296                         buck6_reg: BUCK6 {
297                                 regulator-name = "vdd_kfc";
298                                 regulator-min-microvolt = <800000>;
299                                 regulator-max-microvolt = <1500000>;
300                                 regulator-always-on;
301                                 regulator-boot-on;
302                         };
303
304                         buck7_reg: BUCK7 {
305                                 regulator-name = "vdd_1.0v_ldo";
306                                 regulator-min-microvolt = <800000>;
307                                 regulator-max-microvolt = <1500000>;
308                                 regulator-always-on;
309                                 regulator-boot-on;
310                         };
311
312                         buck8_reg: BUCK8 {
313                                 regulator-name = "vdd_1.8v_ldo";
314                                 regulator-min-microvolt = <800000>;
315                                 regulator-max-microvolt = <1500000>;
316                                 regulator-always-on;
317                                 regulator-boot-on;
318                         };
319
320                         buck9_reg: BUCK9 {
321                                 regulator-name = "vdd_2.8v_ldo";
322                                 regulator-min-microvolt = <3000000>;
323                                 regulator-max-microvolt = <3750000>;
324                                 regulator-always-on;
325                                 regulator-boot-on;
326                         };
327
328                         buck10_reg: BUCK10 {
329                                 regulator-name = "vdd_vmem";
330                                 regulator-min-microvolt = <2850000>;
331                                 regulator-max-microvolt = <2850000>;
332                                 regulator-always-on;
333                                 regulator-boot-on;
334                         };
335                 };
336         };
337 };
338
339 &i2c_2 {
340         samsung,i2c-sda-delay = <100>;
341         samsung,i2c-max-bus-freq = <66000>;
342         /* used by HDMI DDC */
343         status = "okay";
344 };
345
346 &mixer {
347         status = "okay";
348 };
349
350 &mmc_0 {
351         status = "okay";
352         broken-cd;
353         card-detect-delay = <200>;
354         samsung,dw-mshc-ciu-div = <3>;
355         samsung,dw-mshc-sdr-timing = <0 4>;
356         samsung,dw-mshc-ddr-timing = <0 2>;
357         samsung,dw-mshc-hs400-timing = <0 2>;
358         samsung,read-strobe-delay = <90>;
359         pinctrl-names = "default";
360         pinctrl-0 = <&sd0_clk &sd0_cmd &sd0_bus1 &sd0_bus4 &sd0_bus8
361                      &sd0_rclk>;
362         bus-width = <8>;
363         cap-mmc-highspeed;
364 };
365
366 &mmc_2 {
367         status = "okay";
368         card-detect-delay = <200>;
369         samsung,dw-mshc-ciu-div = <3>;
370         samsung,dw-mshc-sdr-timing = <2 3>;
371         samsung,dw-mshc-ddr-timing = <1 2>;
372         pinctrl-names = "default";
373         pinctrl-0 = <&sd2_clk &sd2_cmd &sd2_cd &sd2_bus1 &sd2_bus4>;
374         bus-width = <4>;
375         cap-sd-highspeed;
376 };
377
378 &pinctrl_0 {
379         hdmi_hpd_irq: hdmi-hpd-irq {
380                 samsung,pins = "gpx3-7";
381                 samsung,pin-function = <EXYNOS_PIN_FUNC_INPUT>;
382                 samsung,pin-pud = <EXYNOS_PIN_PULL_DOWN>;
383                 samsung,pin-drv = <EXYNOS5420_PIN_DRV_LV1>;
384         };
385 };
386
387 &pinctrl_2 {
388         usb300_vbus_en: usb300-vbus-en {
389                 samsung,pins = "gpg0-5";
390                 samsung,pin-function = <EXYNOS_PIN_FUNC_OUTPUT>;
391                 samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
392                 samsung,pin-drv = <EXYNOS5420_PIN_DRV_LV1>;
393         };
394
395         usb301_vbus_en: usb301-vbus-en {
396                 samsung,pins = "gpg1-4";
397                 samsung,pin-function = <EXYNOS_PIN_FUNC_OUTPUT>;
398                 samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
399                 samsung,pin-drv = <EXYNOS5420_PIN_DRV_LV1>;
400         };
401 };
402
403 &rtc {
404         status = "okay";
405         clocks = <&clock CLK_RTC>, <&s2mps11_osc S2MPS11_CLK_AP>;
406         clock-names = "rtc", "rtc_src";
407 };
408
409 &usbdrd_phy0 {
410         vbus-supply = <&usb300_vbus_reg>;
411 };
412
413 &usbdrd_phy1 {
414         vbus-supply = <&usb301_vbus_reg>;
415 };