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