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