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