Merge tag 'exynos-cleanup' of git://git.kernel.org/pub/scm/linux/kernel/git/kgene...
[cascardo/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", "samsung,exynos5";
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-boot-on;
295                                         op_mode = <1>;
296                                 };
297
298                                 buck5_reg: BUCK5 {
299                                         regulator-name = "VDD_MEM_1.35V";
300                                         regulator-min-microvolt = <750000>;
301                                         regulator-max-microvolt = <1355000>;
302                                         regulator-always-on;
303                                         regulator-boot-on;
304                                         op_mode = <1>;
305                                 };
306
307                                 buck7_reg: BUCK7 {
308                                         regulator-name = "PVDD_BUCK7";
309                                         regulator-always-on;
310                                         op_mode = <1>;
311                                 };
312
313                                 buck8_reg: BUCK8 {
314                                         regulator-name = "PVDD_BUCK8";
315                                         regulator-always-on;
316                                         op_mode = <1>;
317                                 };
318
319                                 buck9_reg: BUCK9 {
320                                         regulator-name = "VDD_33_OFF_EXT1";
321                                         regulator-min-microvolt = <750000>;
322                                         regulator-max-microvolt = <3000000>;
323                                         op_mode = <1>;
324                                 };
325                         };
326                 };
327         };
328
329         i2c@12C80000 {
330                 status = "okay";
331
332                 samsung,i2c-sda-delay = <100>;
333                 samsung,i2c-max-bus-freq = <66000>;
334                 samsung,i2c-slave-addr = <0x50>;
335
336                 hdmiddc@50 {
337                         compatible = "samsung,exynos4210-hdmiddc";
338                         reg = <0x50>;
339                 };
340         };
341
342         i2c@12C90000 {
343                 status = "okay";
344
345                 wm1811a@1a {
346
347                         compatible = "wlf,wm1811";
348                         reg = <0x1a>;
349
350                         AVDD2-supply = <&main_dc_reg>;
351                         CPVDD-supply = <&main_dc_reg>;
352                         DBVDD1-supply = <&main_dc_reg>;
353                         DBVDD2-supply = <&main_dc_reg>;
354                         DBVDD3-supply = <&main_dc_reg>;
355                         LDO1VDD-supply = <&main_dc_reg>;
356                         SPKVDD1-supply = <&main_dc_reg>;
357                         SPKVDD2-supply = <&main_dc_reg>;
358
359                         wlf,ldo1ena = <&gpb0 0 0>;
360                         wlf,ldo2ena = <&gpb0 1 0>;
361                 };
362         };
363
364         i2c@12CE0000 {
365                 status = "okay";
366
367                 samsung,i2c-sda-delay = <100>;
368                 samsung,i2c-max-bus-freq = <66000>;
369                 samsung,i2c-slave-addr = <0x38>;
370
371                 hdmiphy@38 {
372                         compatible = "samsung,exynos4212-hdmiphy";
373                         reg = <0x38>;
374                 };
375         };
376
377         i2c@121D0000 {
378                 status = "okay";
379                 samsung,i2c-sda-delay = <100>;
380                 samsung,i2c-max-bus-freq = <40000>;
381                 samsung,i2c-slave-addr = <0x38>;
382
383                 sata_phy_i2c:sata-phy@38 {
384                         compatible = "samsung,exynos-sataphy-i2c";
385                         reg = <0x38>;
386                 };
387         };
388
389         sata@122F0000 {
390                 status = "okay";
391         };
392
393         sata-phy@12170000 {
394                 status = "okay";
395                 samsung,exynos-sataphy-i2c-phandle = <&sata_phy_i2c>;
396         };
397
398         mmc_0: mmc@12200000 {
399                 status = "okay";
400                 num-slots = <1>;
401                 supports-highspeed;
402                 broken-cd;
403                 card-detect-delay = <200>;
404                 samsung,dw-mshc-ciu-div = <3>;
405                 samsung,dw-mshc-sdr-timing = <2 3>;
406                 samsung,dw-mshc-ddr-timing = <1 2>;
407                 vmmc-supply = <&mmc_reg>;
408                 pinctrl-names = "default";
409                 pinctrl-0 = <&sd0_clk &sd0_cmd &sd0_bus4 &sd0_bus8>;
410
411                 slot@0 {
412                         reg = <0>;
413                         bus-width = <8>;
414                 };
415         };
416
417         mmc_2: mmc@12220000 {
418                 status = "okay";
419                 num-slots = <1>;
420                 supports-highspeed;
421                 card-detect-delay = <200>;
422                 samsung,dw-mshc-ciu-div = <3>;
423                 samsung,dw-mshc-sdr-timing = <2 3>;
424                 samsung,dw-mshc-ddr-timing = <1 2>;
425                 vmmc-supply = <&mmc_reg>;
426                 pinctrl-names = "default";
427                 pinctrl-0 = <&sd2_clk &sd2_cmd &sd2_cd &sd2_bus4>;
428
429                 slot@0 {
430                         reg = <0>;
431                         bus-width = <4>;
432                         disable-wp;
433                 };
434         };
435
436         i2s0: i2s@03830000 {
437                 status = "okay";
438         };
439
440         gpio_keys {
441                 compatible = "gpio-keys";
442
443                 menu {
444                         label = "SW-TACT2";
445                         gpios = <&gpx1 4 1>;
446                         linux,code = <139>;
447                         gpio-key,wakeup;
448                 };
449
450                 home {
451                         label = "SW-TACT3";
452                         gpios = <&gpx1 5 1>;
453                         linux,code = <102>;
454                         gpio-key,wakeup;
455                 };
456
457                 up {
458                         label = "SW-TACT4";
459                         gpios = <&gpx1 6 1>;
460                         linux,code = <103>;
461                         gpio-key,wakeup;
462                 };
463
464                 down {
465                         label = "SW-TACT5";
466                         gpios = <&gpx1 7 1>;
467                         linux,code = <108>;
468                         gpio-key,wakeup;
469                 };
470
471                 back {
472                         label = "SW-TACT6";
473                         gpios = <&gpx2 0 1>;
474                         linux,code = <158>;
475                         gpio-key,wakeup;
476                 };
477
478                 wakeup {
479                         label = "SW-TACT7";
480                         gpios = <&gpx2 1 1>;
481                         linux,code = <143>;
482                         gpio-key,wakeup;
483                 };
484         };
485
486         hdmi {
487                 hpd-gpio = <&gpx3 7 2>;
488                 vdd_osc-supply = <&ldo10_reg>;
489                 vdd_pll-supply = <&ldo8_reg>;
490                 vdd-supply = <&ldo8_reg>;
491         };
492
493         regulators {
494                 compatible = "simple-bus";
495                 #address-cells = <1>;
496                 #size-cells = <0>;
497
498                 main_dc_reg: regulator@0 {
499                         compatible = "regulator-fixed";
500                         reg = <0>;
501                         regulator-name = "MAIN_DC";
502                 };
503
504                 mmc_reg: regulator@1 {
505                         compatible = "regulator-fixed";
506                         reg = <1>;
507                         regulator-name = "VDD_33ON_2.8V";
508                         regulator-min-microvolt = <2800000>;
509                         regulator-max-microvolt = <2800000>;
510                         gpio = <&gpx1 1 1>;
511                         enable-active-high;
512                 };
513
514                 reg_hdmi_en: regulator@2 {
515                         compatible = "regulator-fixed";
516                         reg = <2>;
517                         regulator-name = "hdmi-en";
518                 };
519         };
520
521         fixed-rate-clocks {
522                 xxti {
523                         compatible = "samsung,clock-xxti";
524                         clock-frequency = <24000000>;
525                 };
526         };
527
528         dp-controller@145B0000 {
529                 samsung,color-space = <0>;
530                 samsung,dynamic-range = <0>;
531                 samsung,ycbcr-coeff = <0>;
532                 samsung,color-depth = <1>;
533                 samsung,link-rate = <0x0a>;
534                 samsung,lane-count = <4>;
535                 status = "okay";
536         };
537
538         fimd: fimd@14400000 {
539                 status = "okay";
540                 display-timings {
541                         native-mode = <&timing0>;
542                         timing0: timing@0 {
543                                 /* 2560x1600 DP panel */
544                                 clock-frequency = <50000>;
545                                 hactive = <2560>;
546                                 vactive = <1600>;
547                                 hfront-porch = <48>;
548                                 hback-porch = <80>;
549                                 hsync-len = <32>;
550                                 vback-porch = <16>;
551                                 vfront-porch = <8>;
552                                 vsync-len = <6>;
553                         };
554                 };
555         };
556
557         usb_hub_bus {
558                 compatible = "simple-bus";
559                 #address-cells = <1>;
560                 #size-cells = <0>;
561
562                 // SMSC USB3503 connected in hardware only mode as a PHY
563                 usb_hub: usb_hub {
564                         compatible = "smsc,usb3503a";
565
566                         reset-gpios = <&gpx3 5 1>;
567                         connect-gpios = <&gpd1 7 1>;
568                 };
569         };
570
571         usb@12110000 {
572                 usb-phy = <&usb2_phy>;
573         };
574 };