Merge tag 'drivers-3.15' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc
[linux.git] / arch / arm / boot / dts / exynos5250-arndale.dts
1 /*
2  * Samsung's Exynos5250 based Arndale 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 "exynos5250.dtsi"
14 #include <dt-bindings/interrupt-controller/irq.h>
15
16 / {
17         model = "Insignal Arndale evaluation board based on EXYNOS5250";
18         compatible = "insignal,arndale", "samsung,exynos5250";
19
20         memory {
21                 reg = <0x40000000 0x80000000>;
22         };
23
24         chosen {
25                 bootargs = "console=ttySAC2,115200";
26         };
27
28         rtc@101E0000 {
29                 status = "okay";
30         };
31
32         codec@11000000 {
33                 samsung,mfc-r = <0x43000000 0x800000>;
34                 samsung,mfc-l = <0x51000000 0x800000>;
35         };
36
37         i2c@12C60000 {
38                 samsung,i2c-sda-delay = <100>;
39                 samsung,i2c-max-bus-freq = <20000>;
40                 samsung,i2c-slave-addr = <0x66>;
41                 status = "okay";
42
43                 s5m8767_pmic@66 {
44                         compatible = "samsung,s5m8767-pmic";
45                         reg = <0x66>;
46                         interrupt-parent = <&gpx3>;
47                         interrupts = <2 IRQ_TYPE_LEVEL_LOW>;
48
49                         vinb1-supply = <&main_dc_reg>;
50                         vinb2-supply = <&main_dc_reg>;
51                         vinb3-supply = <&main_dc_reg>;
52                         vinb4-supply = <&main_dc_reg>;
53                         vinb5-supply = <&main_dc_reg>;
54                         vinb6-supply = <&main_dc_reg>;
55                         vinb7-supply = <&main_dc_reg>;
56                         vinb8-supply = <&main_dc_reg>;
57                         vinb9-supply = <&main_dc_reg>;
58
59                         vinl1-supply = <&buck7_reg>;
60                         vinl2-supply = <&buck7_reg>;
61                         vinl3-supply = <&buck7_reg>;
62                         vinl4-supply = <&main_dc_reg>;
63                         vinl5-supply = <&main_dc_reg>;
64                         vinl6-supply = <&main_dc_reg>;
65                         vinl7-supply = <&main_dc_reg>;
66                         vinl8-supply = <&buck8_reg>;
67                         vinl9-supply = <&buck8_reg>;
68
69                         s5m8767,pmic-buck2-dvs-voltage = <1300000>;
70                         s5m8767,pmic-buck3-dvs-voltage = <1100000>;
71                         s5m8767,pmic-buck4-dvs-voltage = <1200000>;
72                         s5m8767,pmic-buck-dvs-gpios = <&gpd1 0 0>,
73                                                         <&gpd1 1 0>,
74                                                         <&gpd1 2 0>;
75                         s5m8767,pmic-buck-ds-gpios = <&gpx2 3 0>,
76                                                         <&gpx2 4 0>,
77                                                         <&gpx2 5 0>;
78                         regulators {
79                                 ldo1_reg: LDO1 {
80                                         regulator-name = "VDD_ALIVE_1.0V";
81                                         regulator-min-microvolt = <1100000>;
82                                         regulator-max-microvolt = <1100000>;
83                                         regulator-always-on;
84                                         regulator-boot-on;
85                                         op_mode = <1>;
86                                 };
87
88                                 ldo2_reg: LDO2 {
89                                         regulator-name = "VDD_28IO_DP_1.35V";
90                                         regulator-min-microvolt = <1200000>;
91                                         regulator-max-microvolt = <1200000>;
92                                         regulator-always-on;
93                                         regulator-boot-on;
94                                         op_mode = <1>;
95                                 };
96
97                                 ldo3_reg: LDO3 {
98                                         regulator-name = "VDD_COMMON1_1.8V";
99                                         regulator-min-microvolt = <1800000>;
100                                         regulator-max-microvolt = <1800000>;
101                                         regulator-always-on;
102                                         regulator-boot-on;
103                                         op_mode = <1>;
104                                 };
105
106                                 ldo4_reg: LDO4 {
107                                         regulator-name = "VDD_IOPERI_1.8V";
108                                         regulator-min-microvolt = <1800000>;
109                                         regulator-max-microvolt = <1800000>;
110                                         op_mode = <1>;
111                                 };
112
113                                 ldo5_reg: LDO5 {
114                                         regulator-name = "VDD_EXT_1.8V";
115                                         regulator-min-microvolt = <1800000>;
116                                         regulator-max-microvolt = <1800000>;
117                                         regulator-always-on;
118                                         regulator-boot-on;
119                                         op_mode = <1>;
120                                 };
121
122                                 ldo6_reg: LDO6 {
123                                         regulator-name = "VDD_MPLL_1.1V";
124                                         regulator-min-microvolt = <1100000>;
125                                         regulator-max-microvolt = <1100000>;
126                                         regulator-always-on;
127                                         regulator-boot-on;
128                                         op_mode = <1>;
129                                 };
130
131                                 ldo7_reg: LDO7 {
132                                         regulator-name = "VDD_XPLL_1.1V";
133                                         regulator-min-microvolt = <1100000>;
134                                         regulator-max-microvolt = <1100000>;
135                                         regulator-always-on;
136                                         regulator-boot-on;
137                                         op_mode = <1>;
138                                 };
139
140                                 ldo8_reg: LDO8 {
141                                         regulator-name = "VDD_COMMON2_1.0V";
142                                         regulator-min-microvolt = <1000000>;
143                                         regulator-max-microvolt = <1000000>;
144                                         regulator-always-on;
145                                         regulator-boot-on;
146                                         op_mode = <1>;
147                                 };
148
149                                 ldo9_reg: LDO9 {
150                                         regulator-name = "VDD_33ON_3.0V";
151                                         regulator-min-microvolt = <3000000>;
152                                         regulator-max-microvolt = <3000000>;
153                                         op_mode = <1>;
154                                 };
155
156                                 ldo10_reg: LDO10 {
157                                         regulator-name = "VDD_COMMON3_1.8V";
158                                         regulator-min-microvolt = <1800000>;
159                                         regulator-max-microvolt = <1800000>;
160                                         regulator-always-on;
161                                         regulator-boot-on;
162                                         op_mode = <1>;
163                                 };
164
165                                 ldo11_reg: LDO11 {
166                                         regulator-name = "VDD_ABB2_1.8V";
167                                         regulator-min-microvolt = <1800000>;
168                                         regulator-max-microvolt = <1800000>;
169                                         regulator-always-on;
170                                         regulator-boot-on;
171                                         op_mode = <1>;
172                                 };
173
174                                 ldo12_reg: LDO12 {
175                                         regulator-name = "VDD_USB_3.0V";
176                                         regulator-min-microvolt = <3000000>;
177                                         regulator-max-microvolt = <3000000>;
178                                         regulator-always-on;
179                                         regulator-boot-on;
180                                         op_mode = <1>;
181                                 };
182
183                                 ldo13_reg: LDO13 {
184                                         regulator-name = "VDDQ_C2C_W_1.8V";
185                                         regulator-min-microvolt = <1800000>;
186                                         regulator-max-microvolt = <1800000>;
187                                         regulator-always-on;
188                                         regulator-boot-on;
189                                         op_mode = <1>;
190                                 };
191
192                                 ldo14_reg: LDO14 {
193                                         regulator-name = "VDD18_ABB0_3_1.8V";
194                                         regulator-min-microvolt = <1800000>;
195                                         regulator-max-microvolt = <1800000>;
196                                         regulator-always-on;
197                                         regulator-boot-on;
198                                         op_mode = <1>;
199                                 };
200
201                                 ldo15_reg: LDO15 {
202                                         regulator-name = "VDD10_COMMON4_1.0V";
203                                         regulator-min-microvolt = <1000000>;
204                                         regulator-max-microvolt = <1000000>;
205                                         regulator-always-on;
206                                         regulator-boot-on;
207                                         op_mode = <1>;
208                                 };
209
210                                 ldo16_reg: LDO16 {
211                                         regulator-name = "VDD18_HSIC_1.8V";
212                                         regulator-min-microvolt = <1800000>;
213                                         regulator-max-microvolt = <1800000>;
214                                         regulator-always-on;
215                                         regulator-boot-on;
216                                         op_mode = <1>;
217                                 };
218
219                                 ldo17_reg: LDO17 {
220                                         regulator-name = "VDDQ_MMC2_3_2.8V";
221                                         regulator-min-microvolt = <2800000>;
222                                         regulator-max-microvolt = <2800000>;
223                                         regulator-always-on;
224                                         regulator-boot-on;
225                                         op_mode = <1>;
226                                 };
227
228                                 ldo18_reg: LDO18 {
229                                         regulator-name = "VDD_33ON_2.8V";
230                                         regulator-min-microvolt = <2800000>;
231                                         regulator-max-microvolt = <2800000>;
232                                         op_mode = <1>;
233                                 };
234
235                                 ldo22_reg: LDO22 {
236                                         regulator-name = "EXT_33_OFF";
237                                         regulator-min-microvolt = <3300000>;
238                                         regulator-max-microvolt = <3300000>;
239                                         op_mode = <1>;
240                                 };
241
242                                 ldo23_reg: LDO23 {
243                                         regulator-name = "EXT_28_OFF";
244                                         regulator-min-microvolt = <2800000>;
245                                         regulator-max-microvolt = <2800000>;
246                                         op_mode = <1>;
247                                 };
248
249                                 ldo25_reg: LDO25 {
250                                         regulator-name = "PVDD_LDO25";
251                                         regulator-min-microvolt = <1200000>;
252                                         regulator-max-microvolt = <1200000>;
253                                         op_mode = <1>;
254                                 };
255
256                                 ldo26_reg: LDO26 {
257                                         regulator-name = "EXT_18_OFF";
258                                         regulator-min-microvolt = <1800000>;
259                                         regulator-max-microvolt = <1800000>;
260                                         op_mode = <1>;
261                                 };
262
263                                 buck1_reg: BUCK1 {
264                                         regulator-name = "vdd_mif";
265                                         regulator-min-microvolt = <950000>;
266                                         regulator-max-microvolt = <1200000>;
267                                         regulator-always-on;
268                                         regulator-boot-on;
269                                         op_mode = <1>;
270                                 };
271
272                                 buck2_reg: BUCK2 {
273                                         regulator-name = "vdd_arm";
274                                         regulator-min-microvolt = <912500>;
275                                         regulator-max-microvolt = <1300000>;
276                                         regulator-always-on;
277                                         regulator-boot-on;
278                                         op_mode = <1>;
279                                 };
280
281                                 buck3_reg: BUCK3 {
282                                         regulator-name = "vdd_int";
283                                         regulator-min-microvolt = <900000>;
284                                         regulator-max-microvolt = <1200000>;
285                                         regulator-always-on;
286                                         regulator-boot-on;
287                                         op_mode = <1>;
288                                 };
289
290                                 buck4_reg: BUCK4 {
291                                         regulator-name = "vdd_g3d";
292                                         regulator-min-microvolt = <1000000>;
293                                         regulator-max-microvolt = <1000000>;
294                                         regulator-always-on;
295                                         regulator-boot-on;
296                                         op_mode = <1>;
297                                 };
298
299                                 buck5_reg: BUCK5 {
300                                         regulator-name = "VDD_MEM_1.35V";
301                                         regulator-min-microvolt = <750000>;
302                                         regulator-max-microvolt = <1355000>;
303                                         regulator-always-on;
304                                         regulator-boot-on;
305                                         op_mode = <1>;
306                                 };
307
308                                 buck7_reg: BUCK7 {
309                                         regulator-name = "PVDD_BUCK7";
310                                         regulator-always-on;
311                                         op_mode = <1>;
312                                 };
313
314                                 buck8_reg: BUCK8 {
315                                         regulator-name = "PVDD_BUCK8";
316                                         regulator-always-on;
317                                         op_mode = <1>;
318                                 };
319
320                                 buck9_reg: BUCK9 {
321                                         regulator-name = "VDD_33_OFF_EXT1";
322                                         regulator-min-microvolt = <750000>;
323                                         regulator-max-microvolt = <3000000>;
324                                         op_mode = <1>;
325                                 };
326                         };
327                 };
328         };
329
330         i2c@12C80000 {
331                 status = "okay";
332
333                 samsung,i2c-sda-delay = <100>;
334                 samsung,i2c-max-bus-freq = <66000>;
335                 samsung,i2c-slave-addr = <0x50>;
336
337                 hdmiddc@50 {
338                         compatible = "samsung,exynos4210-hdmiddc";
339                         reg = <0x50>;
340                 };
341         };
342
343         i2c@12C90000 {
344                 status = "okay";
345
346                 wm1811a@1a {
347
348                         compatible = "wlf,wm1811";
349                         reg = <0x1a>;
350
351                         AVDD2-supply = <&main_dc_reg>;
352                         CPVDD-supply = <&main_dc_reg>;
353                         DBVDD1-supply = <&main_dc_reg>;
354                         DBVDD2-supply = <&main_dc_reg>;
355                         DBVDD3-supply = <&main_dc_reg>;
356                         LDO1VDD-supply = <&main_dc_reg>;
357                         SPKVDD1-supply = <&main_dc_reg>;
358                         SPKVDD2-supply = <&main_dc_reg>;
359
360                         wlf,ldo1ena = <&gpb0 0 0>;
361                         wlf,ldo2ena = <&gpb0 1 0>;
362                 };
363         };
364
365         i2c@12CE0000 {
366                 status = "okay";
367
368                 samsung,i2c-sda-delay = <100>;
369                 samsung,i2c-max-bus-freq = <66000>;
370                 samsung,i2c-slave-addr = <0x38>;
371
372                 hdmiphy@38 {
373                         compatible = "samsung,exynos4212-hdmiphy";
374                         reg = <0x38>;
375                 };
376         };
377
378         mmc_0: mmc@12200000 {
379                 status = "okay";
380                 num-slots = <1>;
381                 supports-highspeed;
382                 broken-cd;
383                 card-detect-delay = <200>;
384                 samsung,dw-mshc-ciu-div = <3>;
385                 samsung,dw-mshc-sdr-timing = <2 3>;
386                 samsung,dw-mshc-ddr-timing = <1 2>;
387                 vmmc-supply = <&mmc_reg>;
388                 pinctrl-names = "default";
389                 pinctrl-0 = <&sd0_clk &sd0_cmd &sd0_bus4 &sd0_bus8>;
390
391                 slot@0 {
392                         reg = <0>;
393                         bus-width = <8>;
394                 };
395         };
396
397         mmc_2: mmc@12220000 {
398                 status = "okay";
399                 num-slots = <1>;
400                 supports-highspeed;
401                 card-detect-delay = <200>;
402                 samsung,dw-mshc-ciu-div = <3>;
403                 samsung,dw-mshc-sdr-timing = <2 3>;
404                 samsung,dw-mshc-ddr-timing = <1 2>;
405                 vmmc-supply = <&mmc_reg>;
406                 pinctrl-names = "default";
407                 pinctrl-0 = <&sd2_clk &sd2_cmd &sd2_cd &sd2_bus4>;
408
409                 slot@0 {
410                         reg = <0>;
411                         bus-width = <4>;
412                         disable-wp;
413                 };
414         };
415
416         i2s0: i2s@03830000 {
417                 status = "okay";
418         };
419
420         gpio_keys {
421                 compatible = "gpio-keys";
422
423                 menu {
424                         label = "SW-TACT2";
425                         gpios = <&gpx1 4 1>;
426                         linux,code = <139>;
427                         gpio-key,wakeup;
428                 };
429
430                 home {
431                         label = "SW-TACT3";
432                         gpios = <&gpx1 5 1>;
433                         linux,code = <102>;
434                         gpio-key,wakeup;
435                 };
436
437                 up {
438                         label = "SW-TACT4";
439                         gpios = <&gpx1 6 1>;
440                         linux,code = <103>;
441                         gpio-key,wakeup;
442                 };
443
444                 down {
445                         label = "SW-TACT5";
446                         gpios = <&gpx1 7 1>;
447                         linux,code = <108>;
448                         gpio-key,wakeup;
449                 };
450
451                 back {
452                         label = "SW-TACT6";
453                         gpios = <&gpx2 0 1>;
454                         linux,code = <158>;
455                         gpio-key,wakeup;
456                 };
457
458                 wakeup {
459                         label = "SW-TACT7";
460                         gpios = <&gpx2 1 1>;
461                         linux,code = <143>;
462                         gpio-key,wakeup;
463                 };
464         };
465
466         hdmi {
467                 hpd-gpio = <&gpx3 7 2>;
468                 vdd_osc-supply = <&ldo10_reg>;
469                 vdd_pll-supply = <&ldo8_reg>;
470                 vdd-supply = <&ldo8_reg>;
471         };
472
473         regulators {
474                 compatible = "simple-bus";
475                 #address-cells = <1>;
476                 #size-cells = <0>;
477
478                 main_dc_reg: regulator@0 {
479                         compatible = "regulator-fixed";
480                         reg = <0>;
481                         regulator-name = "MAIN_DC";
482                 };
483
484                 mmc_reg: regulator@1 {
485                         compatible = "regulator-fixed";
486                         reg = <1>;
487                         regulator-name = "VDD_33ON_2.8V";
488                         regulator-min-microvolt = <2800000>;
489                         regulator-max-microvolt = <2800000>;
490                         gpio = <&gpx1 1 1>;
491                         enable-active-high;
492                 };
493
494                 reg_hdmi_en: regulator@2 {
495                         compatible = "regulator-fixed";
496                         reg = <2>;
497                         regulator-name = "hdmi-en";
498                 };
499         };
500
501         fixed-rate-clocks {
502                 xxti {
503                         compatible = "samsung,clock-xxti";
504                         clock-frequency = <24000000>;
505                 };
506         };
507
508         dp-controller@145B0000 {
509                 samsung,color-space = <0>;
510                 samsung,dynamic-range = <0>;
511                 samsung,ycbcr-coeff = <0>;
512                 samsung,color-depth = <1>;
513                 samsung,link-rate = <0x0a>;
514                 samsung,lane-count = <4>;
515                 status = "okay";
516         };
517
518         fimd: fimd@14400000 {
519                 status = "okay";
520                 display-timings {
521                         native-mode = <&timing0>;
522                         timing0: timing@0 {
523                                 /* 2560x1600 DP panel */
524                                 clock-frequency = <50000>;
525                                 hactive = <2560>;
526                                 vactive = <1600>;
527                                 hfront-porch = <48>;
528                                 hback-porch = <80>;
529                                 hsync-len = <32>;
530                                 vback-porch = <16>;
531                                 vfront-porch = <8>;
532                                 vsync-len = <6>;
533                         };
534                 };
535         };
536
537         usb_hub_bus {
538                 compatible = "simple-bus";
539                 #address-cells = <1>;
540                 #size-cells = <0>;
541
542                 // SMSC USB3503 connected in hardware only mode as a PHY
543                 usb_hub: usb_hub {
544                         compatible = "smsc,usb3503a";
545
546                         reset-gpios = <&gpx3 5 1>;
547                         connect-gpios = <&gpd1 7 1>;
548                 };
549         };
550
551         usb@12110000 {
552                 usb-phy = <&usb2_phy>;
553         };
554 };