GNU Linux-libre 4.9.292-gnu1
[releases.git] / arch / arm / boot / dts / exynos5420-arndale-octa.dts
1 /*
2  * Samsung's Exynos5420 based Arndale Octa board device tree source
3  *
4  * Copyright (c) 2013 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 /dts-v1/;
13 #include "exynos5420.dtsi"
14 #include "exynos5420-cpus.dtsi"
15 #include <dt-bindings/gpio/gpio.h>
16 #include <dt-bindings/interrupt-controller/irq.h>
17 #include <dt-bindings/input/input.h>
18 #include <dt-bindings/clock/samsung,s2mps11.h>
19 #include "exynos-mfc-reserved-memory.dtsi"
20
21 / {
22         model = "Insignal Arndale Octa evaluation board based on EXYNOS5420";
23         compatible = "insignal,arndale-octa", "samsung,exynos5420", "samsung,exynos5";
24
25         memory@20000000 {
26                 device_type = "memory";
27                 reg = <0x20000000 0x80000000>;
28         };
29
30         chosen {
31                 bootargs = "console=ttySAC3,115200";
32         };
33
34         firmware@02073000 {
35                 compatible = "samsung,secure-firmware";
36                 reg = <0x02073000 0x1000>;
37         };
38
39         fixed-rate-clocks {
40                 oscclk {
41                         compatible = "samsung,exynos5420-oscclk";
42                         clock-frequency = <24000000>;
43                 };
44         };
45
46         gpio_keys {
47                 compatible = "gpio-keys";
48
49                 wakeup {
50                         label = "SW-TACT1";
51                         gpios = <&gpx2 7 GPIO_ACTIVE_LOW>;
52                         linux,code = <KEY_WAKEUP>;
53                         wakeup-source;
54                 };
55         };
56 };
57
58 &cpu0 {
59         cpu-supply = <&buck2_reg>;
60 };
61
62 &cpu4 {
63         cpu-supply = <&buck6_reg>;
64 };
65
66 &usbdrd_dwc3_1 {
67         dr_mode = "host";
68 };
69
70 &cci {
71         status = "disabled";
72 };
73
74 &hdmi {
75         hpd-gpios = <&gpx3 7 GPIO_ACTIVE_HIGH>;
76         vdd_osc-supply = <&ldo7_reg>;
77         vdd_pll-supply = <&ldo6_reg>;
78         vdd-supply = <&ldo6_reg>;
79         ddc = <&i2c_2>;
80         status = "okay";
81 };
82
83 &hsi2c_4 {
84         status = "okay";
85
86         s2mps11_pmic@66 {
87                 compatible = "samsung,s2mps11-pmic";
88                 reg = <0x66>;
89
90                 interrupt-parent = <&gpx3>;
91                 interrupts = <2 IRQ_TYPE_LEVEL_LOW>;
92                 pinctrl-names = "default";
93                 pinctrl-0 = <&s2mps11_irq>;
94
95                 s2mps11_osc: clocks {
96                         #clock-cells = <1>;
97                         clock-output-names = "s2mps11_ap",
98                                         "s2mps11_cp", "s2mps11_bt";
99                 };
100
101                 regulators {
102                         ldo1_reg: LDO1 {
103                                 regulator-name = "PVDD_ALIVE_1V0";
104                                 regulator-min-microvolt = <1000000>;
105                                 regulator-max-microvolt = <1000000>;
106                                 regulator-always-on;
107                         };
108
109                         ldo2_reg: LDO2 {
110                                 regulator-name = "PVDD_APIO_1V8";
111                                 regulator-min-microvolt = <1800000>;
112                                 regulator-max-microvolt = <1800000>;
113                                 regulator-always-on;
114                         };
115
116                         ldo3_reg: LDO3 {
117                                 regulator-name = "PVDD_APIO_MMCON_1V8";
118                                 regulator-min-microvolt = <1800000>;
119                                 regulator-max-microvolt = <1800000>;
120                                 regulator-always-on;
121                         };
122
123                         ldo4_reg: LDO4 {
124                                 regulator-name = "PVDD_ADC_1V8";
125                                 regulator-min-microvolt = <1800000>;
126                                 regulator-max-microvolt = <1800000>;
127                         };
128
129                         ldo5_reg: LDO5 {
130                                 regulator-name = "PVDD_PLL_1V8";
131                                 regulator-min-microvolt = <1800000>;
132                                 regulator-max-microvolt = <1800000>;
133                                 regulator-always-on;
134                         };
135
136                         ldo6_reg: LDO6 {
137                                 regulator-name = "PVDD_ANAIP_1V0";
138                                 regulator-min-microvolt = <1000000>;
139                                 regulator-max-microvolt = <1000000>;
140                         };
141
142                         ldo7_reg: LDO7 {
143                                 regulator-name = "PVDD_ANAIP_1V8";
144                                 regulator-min-microvolt = <1800000>;
145                                 regulator-max-microvolt = <1800000>;
146                         };
147
148                         ldo8_reg: LDO8 {
149                                 regulator-name = "PVDD_ABB_1V8";
150                                 regulator-min-microvolt = <1800000>;
151                                 regulator-max-microvolt = <1800000>;
152                                 regulator-always-on;
153                         };
154
155                         ldo9_reg: LDO9 {
156                                 regulator-name = "PVDD_USB_3V3";
157                                 regulator-min-microvolt = <3000000>;
158                                 regulator-max-microvolt = <3000000>;
159                                 regulator-always-on;
160                         };
161
162                         ldo10_reg: LDO10 {
163                                 regulator-name = "PVDD_PRE_1V8";
164                                 regulator-min-microvolt = <1800000>;
165                                 regulator-max-microvolt = <1800000>;
166                                 regulator-always-on;
167                         };
168
169                         ldo11_reg: LDO11 {
170                                 regulator-name = "PVDD_USB_1V0";
171                                 regulator-min-microvolt = <1000000>;
172                                 regulator-max-microvolt = <1000000>;
173                                 regulator-always-on;
174                         };
175
176                         ldo12_reg: LDO12 {
177                                 regulator-name = "PVDD_HSIC_1V8";
178                                 regulator-min-microvolt = <1800000>;
179                                 regulator-max-microvolt = <1800000>;
180                         };
181
182                         ldo13_reg: LDO13 {
183                                 regulator-name = "PVDD_APIO_MMCOFF_2V8";
184                                 regulator-min-microvolt = <2800000>;
185                                 regulator-max-microvolt = <2800000>;
186                         };
187
188                         ldo15_reg: LDO15 {
189                                 regulator-name = "PVDD_PERI_2V8";
190                                 regulator-min-microvolt = <3300000>;
191                                 regulator-max-microvolt = <3300000>;
192                         };
193
194                         ldo16_reg: LDO16 {
195                                 regulator-name = "PVDD_PERI_3V3";
196                                 regulator-min-microvolt = <2200000>;
197                                 regulator-max-microvolt = <2200000>;
198                         };
199
200                         ldo18_reg: LDO18 {
201                                 regulator-name = "PVDD_EMMC_1V8";
202                                 regulator-min-microvolt = <1800000>;
203                                 regulator-max-microvolt = <1800000>;
204                         };
205
206                         ldo19_reg: LDO19 {
207                                 regulator-name = "PVDD_TFLASH_2V8";
208                                 regulator-min-microvolt = <2800000>;
209                                 regulator-max-microvolt = <2800000>;
210                         };
211
212                         ldo20_reg: LDO20 {
213                                 regulator-name = "PVDD_BTWIFI_1V8";
214                                 regulator-min-microvolt = <1800000>;
215                                 regulator-max-microvolt = <1800000>;
216                         };
217
218                         ldo21_reg: LDO21 {
219                                 regulator-name = "PVDD_CAM1IO_1V8";
220                                 regulator-min-microvolt = <1800000>;
221                                 regulator-max-microvolt = <1800000>;
222                         };
223
224                         ldo23_reg: LDO23 {
225                                 regulator-name = "PVDD_MIFS_1V1";
226                                 regulator-min-microvolt = <1200000>;
227                                 regulator-max-microvolt = <1200000>;
228                                 regulator-always-on;
229                         };
230
231                         ldo24_reg: LDO24 {
232                                 regulator-name = "PVDD_CAM1_AVDD_2V8";
233                                 regulator-min-microvolt = <2800000>;
234                                 regulator-max-microvolt = <2800000>;
235                         };
236
237                         ldo26_reg: LDO26 {
238                                 regulator-name = "PVDD_CAM0_AF_2V8";
239                                 regulator-min-microvolt = <3000000>;
240                                 regulator-max-microvolt = <3000000>;
241                         };
242
243                         ldo27_reg: LDO27 {
244                                 regulator-name = "PVDD_G3DS_1V0";
245                                 regulator-min-microvolt = <1200000>;
246                                 regulator-max-microvolt = <1200000>;
247                         };
248
249                         ldo28_reg: LDO28 {
250                                 regulator-name = "PVDD_TSP_3V3";
251                                 regulator-min-microvolt = <3300000>;
252                                 regulator-max-microvolt = <3300000>;
253                         };
254
255                         ldo29_reg: LDO29 {
256                                 regulator-name = "PVDD_AUDIO_1V8";
257                                 regulator-min-microvolt = <1800000>;
258                                 regulator-max-microvolt = <1800000>;
259                         };
260
261                         ldo31_reg: LDO31 {
262                                 regulator-name = "PVDD_PERI_1V8";
263                                 regulator-min-microvolt = <1800000>;
264                                 regulator-max-microvolt = <1800000>;
265                         };
266
267                         ldo32_reg: LDO32 {
268                                 regulator-name = "PVDD_LCD_1V8";
269                                 regulator-min-microvolt = <1800000>;
270                                 regulator-max-microvolt = <1800000>;
271                         };
272
273                         ldo33_reg: LDO33 {
274                                 regulator-name = "PVDD_CAM0IO_1V8";
275                                 regulator-min-microvolt = <1800000>;
276                                 regulator-max-microvolt = <1800000>;
277                         };
278
279                         ldo35_reg: LDO35 {
280                                 regulator-name = "PVDD_CAM0_DVDD_1V2";
281                                 regulator-min-microvolt = <1200000>;
282                                 regulator-max-microvolt = <1200000>;
283                         };
284
285                         ldo38_reg: LDO38 {
286                                 regulator-name = "PVDD_CAM0_AVDD_2V8";
287                                 regulator-min-microvolt = <2800000>;
288                                 regulator-max-microvolt = <2800000>;
289                         };
290
291                         buck1_reg: BUCK1 {
292                                 regulator-name = "PVDD_MIF_1V1";
293                                 regulator-min-microvolt = <800000>;
294                                 regulator-max-microvolt = <1100000>;
295                                 regulator-always-on;
296                         };
297
298                         buck2_reg: BUCK2 {
299                                 regulator-name = "vdd_arm";
300                                 regulator-min-microvolt = <800000>;
301                                 regulator-max-microvolt = <1000000>;
302                                 regulator-always-on;
303                         };
304
305                         buck3_reg: BUCK3 {
306                                 regulator-name = "PVDD_INT_1V0";
307                                 regulator-min-microvolt = <800000>;
308                                 regulator-max-microvolt = <1000000>;
309                                 regulator-always-on;
310                         };
311
312                         buck4_reg: BUCK4 {
313                                 regulator-name = "PVDD_G3D_1V0";
314                                 regulator-min-microvolt = <800000>;
315                                 regulator-max-microvolt = <1000000>;
316                         };
317
318                         buck5_reg: BUCK5 {
319                                 regulator-name = "PVDD_LPDDR3_1V2";
320                                 regulator-min-microvolt = <800000>;
321                                 regulator-max-microvolt = <1200000>;
322                                 regulator-always-on;
323                         };
324
325                         buck6_reg: BUCK6 {
326                                 regulator-name = "PVDD_KFC_1V0";
327                                 regulator-min-microvolt = <800000>;
328                                 regulator-max-microvolt = <1000000>;
329                                 regulator-always-on;
330                         };
331
332                         buck7_reg: BUCK7 {
333                                 regulator-name = "VIN_LLDO_1V4";
334                                 regulator-min-microvolt = <800000>;
335                                 regulator-max-microvolt = <1400000>;
336                                 regulator-always-on;
337                         };
338
339                         buck8_reg: BUCK8 {
340                                 regulator-name = "VIN_MLDO_2V0";
341                                 regulator-min-microvolt = <800000>;
342                                 regulator-max-microvolt = <2000000>;
343                                 regulator-always-on;
344                         };
345
346                         buck9_reg: BUCK9 {
347                                 regulator-name = "VIN_HLDO_3V5";
348                                 regulator-min-microvolt = <3000000>;
349                                 regulator-max-microvolt = <3500000>;
350                                 regulator-always-on;
351                         };
352
353                         buck10_reg: BUCK10 {
354                                 regulator-name = "PVDD_EMMCF_2V8";
355                                 regulator-min-microvolt = <2800000>;
356                                 regulator-max-microvolt = <2800000>;
357                         };
358                 };
359         };
360 };
361
362 &i2c_2 {
363         status = "okay";
364 };
365
366 &mmc_0 {
367         status = "okay";
368         broken-cd;
369         card-detect-delay = <200>;
370         samsung,dw-mshc-ciu-div = <3>;
371         samsung,dw-mshc-sdr-timing = <0 4>;
372         samsung,dw-mshc-ddr-timing = <0 2>;
373         pinctrl-names = "default";
374         pinctrl-0 = <&sd0_clk &sd0_cmd &sd0_bus1 &sd0_bus4 &sd0_bus8>;
375         vmmc-supply = <&ldo10_reg>;
376         bus-width = <8>;
377         cap-mmc-highspeed;
378 };
379
380 &mmc_2 {
381         status = "okay";
382         card-detect-delay = <200>;
383         samsung,dw-mshc-ciu-div = <3>;
384         samsung,dw-mshc-sdr-timing = <2 3>;
385         samsung,dw-mshc-ddr-timing = <1 2>;
386         pinctrl-names = "default";
387         pinctrl-0 = <&sd2_clk &sd2_cmd &sd2_cd &sd2_bus1 &sd2_bus4>;
388         vmmc-supply = <&ldo19_reg>;
389         vqmmc-supply = <&ldo13_reg>;
390         bus-width = <4>;
391         cap-sd-highspeed;
392 };
393
394 &pinctrl_0 {
395         s2mps11_irq: s2mps11-irq {
396                 samsung,pins = "gpx3-2";
397                 samsung,pin-function = <EXYNOS_PIN_FUNC_F>;
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 };