Merge tag 'imx-dt-4.8' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo...
[cascardo/linux.git] / arch / arm / boot / dts / exynos4412-origen.dts
1 /*
2  * Insignal's Exynos4412 based Origen board device tree source
3  *
4  * Copyright (c) 2012-2013 Samsung Electronics Co., Ltd.
5  *              http://www.samsung.com
6  *
7  * Device tree source file for Insignal's Origen board which is based on
8  * Samsung's Exynos4412 SoC.
9  *
10  * This program is free software; you can redistribute it and/or modify
11  * it under the terms of the GNU General Public License version 2 as
12  * published by the Free Software Foundation.
13 */
14
15 /dts-v1/;
16 #include "exynos4412.dtsi"
17 #include <dt-bindings/gpio/gpio.h>
18 #include <dt-bindings/input/input.h>
19
20 / {
21         model = "Insignal Origen evaluation board based on Exynos4412";
22         compatible = "insignal,origen4412", "samsung,exynos4412", "samsung,exynos4";
23
24         memory {
25                 reg = <0x40000000 0x40000000>;
26         };
27
28         chosen {
29                 bootargs ="console=ttySAC2,115200";
30                 stdout-path = &serial_2;
31         };
32
33         firmware@0203F000 {
34                 compatible = "samsung,secure-firmware";
35                 reg = <0x0203F000 0x1000>;
36         };
37
38         regulators {
39                 compatible = "simple-bus";
40                 #address-cells = <1>;
41                 #size-cells = <0>;
42
43                 mmc_reg: regulator@0 {
44                         compatible = "regulator-fixed";
45                         reg = <0>;
46                         regulator-name = "VMEM_VDD_2.8V";
47                         regulator-min-microvolt = <2800000>;
48                         regulator-max-microvolt = <2800000>;
49                         gpio = <&gpx1 1 GPIO_ACTIVE_HIGH>;
50                         enable-active-high;
51                 };
52         };
53
54         display-timings {
55                 native-mode = <&timing0>;
56                 timing0: timing {
57                         clock-frequency = <47500000>;
58                         hactive = <1024>;
59                         vactive = <600>;
60                         hfront-porch = <64>;
61                         hback-porch = <16>;
62                         hsync-len = <48>;
63                         vback-porch = <64>;
64                         vfront-porch = <16>;
65                         vsync-len = <3>;
66                 };
67         };
68
69         fixed-rate-clocks {
70                 xxti {
71                         compatible = "samsung,clock-xxti";
72                         clock-frequency = <0>;
73                 };
74
75                 xusbxti {
76                         compatible = "samsung,clock-xusbxti";
77                         clock-frequency = <24000000>;
78                 };
79         };
80 };
81
82 &cpu0 {
83         cpu0-supply = <&buck2_reg>;
84 };
85
86 &exynos_usbphy {
87         status = "okay";
88 };
89
90 &ehci {
91         samsung,vbus-gpio = <&gpx3 5 1>;
92         status = "okay";
93
94         port@1{
95                 status = "okay";
96         };
97         port@2 {
98                 status = "okay";
99         };
100 };
101
102 &fimd {
103         pinctrl-0 = <&lcd_clk &lcd_data24 &pwm1_out>;
104         pinctrl-names = "default";
105         status = "okay";
106 };
107
108 &i2c_0 {
109         #address-cells = <1>;
110         #size-cells = <0>;
111         samsung,i2c-sda-delay = <100>;
112         samsung,i2c-max-bus-freq = <20000>;
113         pinctrl-0 = <&i2c0_bus>;
114         pinctrl-names = "default";
115         status = "okay";
116
117         s5m8767_pmic@66 {
118                 compatible = "samsung,s5m8767-pmic";
119                 reg = <0x66>;
120
121                 s5m8767,pmic-buck-default-dvs-idx = <3>;
122
123                 s5m8767,pmic-buck-dvs-gpios = <&gpx2 3 GPIO_ACTIVE_HIGH>,
124                                                  <&gpx2 4 GPIO_ACTIVE_HIGH>,
125                                                  <&gpx2 5 GPIO_ACTIVE_HIGH>;
126
127                 s5m8767,pmic-buck-ds-gpios = <&gpm3 5 GPIO_ACTIVE_HIGH>,
128                                                 <&gpm3 6 GPIO_ACTIVE_HIGH>,
129                                                 <&gpm3 7 GPIO_ACTIVE_HIGH>;
130
131                 s5m8767,pmic-buck2-dvs-voltage = <1250000>, <1200000>,
132                                                  <1200000>, <1200000>,
133                                                  <1200000>, <1200000>,
134                                                  <1200000>, <1200000>;
135
136                 s5m8767,pmic-buck3-dvs-voltage = <1100000>, <1100000>,
137                                                  <1100000>, <1100000>,
138                                                  <1100000>, <1100000>,
139                                                  <1100000>, <1100000>;
140
141                 s5m8767,pmic-buck4-dvs-voltage = <1200000>, <1200000>,
142                                                  <1200000>, <1200000>,
143                                                  <1200000>, <1200000>,
144                                                  <1200000>, <1200000>;
145
146                 regulators {
147                         ldo1_reg: LDO1 {
148                                 regulator-name = "VDD_ALIVE";
149                                 regulator-min-microvolt = <1100000>;
150                                 regulator-max-microvolt = <1100000>;
151                                 regulator-always-on;
152                                 regulator-boot-on;
153                                 op_mode = <1>; /* Normal Mode */
154                         };
155
156                         ldo2_reg: LDO2 {
157                                 regulator-name = "VDDQ_M12";
158                                 regulator-min-microvolt = <1200000>;
159                                 regulator-max-microvolt = <1200000>;
160                                 regulator-always-on;
161                                 op_mode = <1>; /* Normal Mode */
162                         };
163
164                         ldo3_reg: LDO3 {
165                                 regulator-name = "VDDIOAP_18";
166                                 regulator-min-microvolt = <1800000>;
167                                 regulator-max-microvolt = <1800000>;
168                                 regulator-always-on;
169                                 op_mode = <1>; /* Normal Mode */
170                         };
171
172                         ldo4_reg: LDO4 {
173                                 regulator-name = "VDDQ_PRE";
174                                 regulator-min-microvolt = <1800000>;
175                                 regulator-max-microvolt = <1800000>;
176                                 regulator-always-on;
177                                 op_mode = <1>; /* Normal Mode */
178                         };
179
180                         ldo5_reg: LDO5 {
181                                 regulator-name = "VDD18_2M";
182                                 regulator-min-microvolt = <1800000>;
183                                 regulator-max-microvolt = <1800000>;
184                                 regulator-always-on;
185                                 op_mode = <1>; /* Normal Mode */
186                         };
187
188                         ldo6_reg: LDO6 {
189                                 regulator-name = "VDD10_MPLL";
190                                 regulator-min-microvolt = <1000000>;
191                                 regulator-max-microvolt = <1000000>;
192                                 regulator-always-on;
193                                 op_mode = <1>; /* Normal Mode */
194                         };
195
196                         ldo7_reg: LDO7 {
197                                 regulator-name = "VDD10_XPLL";
198                                 regulator-min-microvolt = <1000000>;
199                                 regulator-max-microvolt = <1000000>;
200                                 regulator-always-on;
201                                 op_mode = <1>; /* Normal Mode */
202                         };
203
204                         ldo8_reg: LDO8 {
205                                 regulator-name = "VDD10_MIPI";
206                                 regulator-min-microvolt = <1000000>;
207                                 regulator-max-microvolt = <1000000>;
208                                 regulator-always-on;
209                                 op_mode = <1>; /* Normal Mode */
210                         };
211
212                         ldo9_reg: LDO9 {
213                                 regulator-name = "VDD33_LCD";
214                                 regulator-min-microvolt = <3300000>;
215                                 regulator-max-microvolt = <3300000>;
216                                 regulator-always-on;
217                                 op_mode = <1>; /* Normal Mode */
218                         };
219
220                         ldo10_reg: LDO10 {
221                                 regulator-name = "VDD18_MIPI";
222                                 regulator-min-microvolt = <1800000>;
223                                 regulator-max-microvolt = <1800000>;
224                                 regulator-always-on;
225                                 op_mode = <1>; /* Normal Mode */
226                         };
227
228                         ldo11_reg: LDO11 {
229                                 regulator-name = "VDD18_ABB1";
230                                 regulator-min-microvolt = <1800000>;
231                                 regulator-max-microvolt = <1800000>;
232                                 regulator-always-on;
233                                 op_mode = <1>; /* Normal Mode */
234                         };
235
236                         ldo12_reg: LDO12 {
237                                 regulator-name = "VDD33_UOTG";
238                                 regulator-min-microvolt = <3300000>;
239                                 regulator-max-microvolt = <3300000>;
240                                 regulator-always-on;
241                                 op_mode = <1>; /* Normal Mode */
242                         };
243
244                         ldo13_reg: LDO13 {
245                                 regulator-name = "VDDIOPERI_18";
246                                 regulator-min-microvolt = <1800000>;
247                                 regulator-max-microvolt = <1800000>;
248                                 regulator-always-on;
249                                 op_mode = <1>; /* Normal Mode */
250                         };
251
252                         ldo14_reg: LDO14 {
253                                 regulator-name = "VDD18_ABB02";
254                                 regulator-min-microvolt = <1800000>;
255                                 regulator-max-microvolt = <1800000>;
256                                 regulator-always-on;
257                                 op_mode = <1>; /* Normal Mode */
258                         };
259
260                         ldo15_reg: LDO15 {
261                                 regulator-name = "VDD10_USH";
262                                 regulator-min-microvolt = <1000000>;
263                                 regulator-max-microvolt = <1000000>;
264                                 regulator-always-on;
265                                 op_mode = <1>; /* Normal Mode */
266                         };
267
268                         ldo16_reg: LDO16 {
269                                 regulator-name = "VDD18_HSIC";
270                                 regulator-min-microvolt = <1800000>;
271                                 regulator-max-microvolt = <1800000>;
272                                 regulator-always-on;
273                                 op_mode = <1>; /* Normal Mode */
274                         };
275
276                         ldo17_reg: LDO17 {
277                                 regulator-name = "VDDIOAP_MMC012_28";
278                                 regulator-min-microvolt = <2800000>;
279                                 regulator-max-microvolt = <2800000>;
280                                 regulator-always-on;
281                                 op_mode = <1>; /* Normal Mode */
282                         };
283
284                         ldo18_reg: LDO18 {
285                                 regulator-name = "VDDIOPERI_28";
286                                 regulator-min-microvolt = <2800000>;
287                                 regulator-max-microvolt = <2800000>;
288                                 regulator-always-on;
289                                 op_mode = <1>; /* Normal Mode */
290                         };
291
292                         ldo19_reg: LDO19 {
293                                 regulator-name = "DVDD25";
294                                 regulator-min-microvolt = <2500000>;
295                                 regulator-max-microvolt = <2500000>;
296                                 regulator-always-on;
297                                 op_mode = <1>; /* Normal Mode */
298                         };
299
300                         ldo20_reg: LDO20 {
301                                 regulator-name = "VDD28_CAM";
302                                 regulator-min-microvolt = <2800000>;
303                                 regulator-max-microvolt = <2800000>;
304                                 regulator-always-on;
305                                 op_mode = <1>; /* Normal Mode */
306                         };
307
308                         ldo21_reg: LDO21 {
309                                 regulator-name = "VDD28_AF";
310                                 regulator-min-microvolt = <2800000>;
311                                 regulator-max-microvolt = <2800000>;
312                                 regulator-always-on;
313                                 op_mode = <1>; /* Normal Mode */
314                         };
315
316                         ldo22_reg: LDO22 {
317                                 regulator-name = "VDDA28_2M";
318                                 regulator-min-microvolt = <2800000>;
319                                 regulator-max-microvolt = <2800000>;
320                                 regulator-always-on;
321                                 op_mode = <1>; /* Normal Mode */
322                         };
323
324                         ldo23_reg: LDO23 {
325                                 regulator-name = "VDD28_TF";
326                                 regulator-min-microvolt = <2800000>;
327                                 regulator-max-microvolt = <2800000>;
328                                 regulator-always-on;
329                                 op_mode = <1>; /* Normal Mode */
330                         };
331
332                         ldo24_reg: LDO24 {
333                                 regulator-name = "VDD33_A31";
334                                 regulator-min-microvolt = <3300000>;
335                                 regulator-max-microvolt = <3300000>;
336                                 regulator-always-on;
337                                 op_mode = <1>; /* Normal Mode */
338                         };
339
340                         ldo25_reg: LDO25 {
341                                 regulator-name = "VDD18_CAM";
342                                 regulator-min-microvolt = <1800000>;
343                                 regulator-max-microvolt = <1800000>;
344                                 regulator-always-on;
345                                 op_mode = <1>; /* Normal Mode */
346                         };
347
348                         ldo26_reg: LDO26 {
349                                 regulator-name = "VDD18_A31";
350                                 regulator-min-microvolt = <1800000>;
351                                 regulator-max-microvolt = <1800000>;
352                                 regulator-always-on;
353                                 op_mode = <1>; /* Normal Mode */
354                         };
355
356                         ldo27_reg: LDO27 {
357                                 regulator-name = "GPS_1V8";
358                                 regulator-min-microvolt = <1800000>;
359                                 regulator-max-microvolt = <1800000>;
360                                 regulator-always-on;
361                                 op_mode = <1>; /* Normal Mode */
362                         };
363
364                         ldo28_reg: LDO28 {
365                                 regulator-name = "DVDD12";
366                                 regulator-min-microvolt = <1200000>;
367                                 regulator-max-microvolt = <1200000>;
368                                 regulator-always-on;
369                                 op_mode = <1>; /* Normal Mode */
370                         };
371
372                         buck1_reg: BUCK1 {
373                                 regulator-name = "vdd_mif";
374                                 regulator-min-microvolt = <950000>;
375                                 regulator-max-microvolt = <1100000>;
376                                 regulator-always-on;
377                                 regulator-boot-on;
378                                 op_mode = <1>; /* Normal Mode */
379                         };
380
381                         buck2_reg: BUCK2 {
382                                 regulator-name = "vdd_arm";
383                                 regulator-min-microvolt = <900000>;
384                                 regulator-max-microvolt = <1350000>;
385                                 regulator-always-on;
386                                 regulator-boot-on;
387                                 op_mode = <1>; /* Normal Mode */
388                         };
389
390                         buck3_reg: BUCK3 {
391                                 regulator-name = "vdd_int";
392                                 regulator-min-microvolt = <900000>;
393                                 regulator-max-microvolt = <1200000>;
394                                 regulator-always-on;
395                                 regulator-boot-on;
396                                 op_mode = <1>; /* Normal Mode */
397                         };
398
399                         buck4_reg: BUCK4 {
400                                 regulator-name = "vdd_g3d";
401                                 regulator-min-microvolt = <750000>;
402                                 regulator-max-microvolt = <1500000>;
403                                 regulator-always-on;
404                                 regulator-boot-on;
405                                 op_mode = <1>; /* Normal Mode */
406                         };
407
408                         buck5_reg: BUCK5 {
409                                 regulator-name = "vdd_m12";
410                                 regulator-min-microvolt = <750000>;
411                                 regulator-max-microvolt = <1500000>;
412                                 regulator-always-on;
413                                 regulator-boot-on;
414                                 op_mode = <1>; /* Normal Mode */
415                         };
416
417                         buck6_reg: BUCK6 {
418                                 regulator-name = "vdd12_5m";
419                                 regulator-min-microvolt = <750000>;
420                                 regulator-max-microvolt = <1500000>;
421                                 regulator-always-on;
422                                 regulator-boot-on;
423                                 op_mode = <1>; /* Normal Mode */
424                         };
425
426                         buck9_reg: BUCK9 {
427                                 regulator-name = "vddf28_emmc";
428                                 regulator-min-microvolt = <750000>;
429                                 regulator-max-microvolt = <3000000>;
430                                 regulator-always-on;
431                                 regulator-boot-on;
432                                 op_mode = <1>; /* Normal Mode */
433                         };
434                 };
435         };
436 };
437
438 &keypad {
439         samsung,keypad-num-rows = <3>;
440         samsung,keypad-num-columns = <2>;
441         linux,keypad-no-autorepeat;
442         wakeup-source;
443         pinctrl-0 = <&keypad_rows &keypad_cols>;
444         pinctrl-names = "default";
445         status = "okay";
446
447         key_home {
448                 keypad,row = <0>;
449                 keypad,column = <0>;
450                 linux,code = <KEY_HOME>;
451         };
452
453         key_down {
454                 keypad,row = <0>;
455                 keypad,column = <1>;
456                 linux,code = <KEY_DOWN>;
457         };
458
459         key_up {
460                 keypad,row = <1>;
461                 keypad,column = <0>;
462                 linux,code = <KEY_UP>;
463         };
464
465         key_menu {
466                 keypad,row = <1>;
467                 keypad,column = <1>;
468                 linux,code = <KEY_MENU>;
469         };
470
471         key_back {
472                 keypad,row = <2>;
473                 keypad,column = <0>;
474                 linux,code = <KEY_BACK>;
475         };
476
477         key_enter {
478                 keypad,row = <2>;
479                 keypad,column = <1>;
480                 linux,code = <KEY_ENTER>;
481         };
482 };
483
484 &mfc {
485         samsung,mfc-r = <0x43000000 0x800000>;
486         samsung,mfc-l = <0x51000000 0x800000>;
487         status = "okay";
488 };
489
490 &mshc_0 {
491         pinctrl-0 = <&sd4_clk &sd4_cmd &sd4_bus4 &sd4_bus8>;
492         pinctrl-names = "default";
493         status = "okay";
494
495         num-slots = <1>;
496         broken-cd;
497         card-detect-delay = <200>;
498         samsung,dw-mshc-ciu-div = <3>;
499         samsung,dw-mshc-sdr-timing = <2 3>;
500         samsung,dw-mshc-ddr-timing = <1 2>;
501         bus-width = <8>;
502         cap-mmc-highspeed;
503 };
504
505 &pinctrl_1 {
506         keypad_rows: keypad-rows {
507                 samsung,pins = "gpx2-0", "gpx2-1", "gpx2-2";
508                 samsung,pin-function = <3>;
509                 samsung,pin-pud = <3>;
510                 samsung,pin-drv = <0>;
511         };
512
513         keypad_cols: keypad-cols {
514                 samsung,pins = "gpx1-0", "gpx1-1";
515                 samsung,pin-function = <3>;
516                 samsung,pin-pud = <0>;
517                 samsung,pin-drv = <0>;
518         };
519 };
520
521 &rtc {
522         status = "okay";
523 };
524
525 &sdhci_2 {
526         bus-width = <4>;
527         pinctrl-0 = <&sd2_clk &sd2_cmd &sd2_bus4 &sd2_cd>;
528         pinctrl-names = "default";
529         vmmc-supply = <&mmc_reg>;
530         status = "okay";
531 };
532
533 &serial_0 {
534         status = "okay";
535 };
536
537 &serial_1 {
538         status = "okay";
539 };
540
541 &serial_2 {
542         status = "okay";
543 };
544
545 &serial_3 {
546         status = "okay";
547 };
548
549 &watchdog {
550         status = "okay";
551 };