]> git.kernelconcepts.de Git - karo-tx-linux.git/blob - arch/arm/boot/dts/exynos4210-trats.dts
Merge remote-tracking branch 'omap/for-next'
[karo-tx-linux.git] / arch / arm / boot / dts / exynos4210-trats.dts
1 /*
2  * Samsung's Exynos4210 based Trats board device tree source
3  *
4  * Copyright (c) 2012 Samsung Electronics Co., Ltd.
5  *              http://www.samsung.com
6  *
7  * Device tree source file for Samsung's Trats board which is based on
8  * Samsung's Exynos4210 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 "exynos4210.dtsi"
17 #include <dt-bindings/gpio/gpio.h>
18
19 / {
20         model = "Samsung Trats based on Exynos4210";
21         compatible = "samsung,trats", "samsung,exynos4210", "samsung,exynos4";
22
23         memory {
24                 reg =  <0x40000000 0x10000000
25                         0x50000000 0x10000000
26                         0x60000000 0x10000000
27                         0x70000000 0x10000000>;
28         };
29
30         chosen {
31                 bootargs = "console=ttySAC2,115200N8 root=/dev/mmcblk0p5 rootwait earlyprintk panic=5";
32                 stdout-path = &serial_2;
33         };
34
35         regulators {
36                 compatible = "simple-bus";
37
38                 vemmc_reg: regulator-0 {
39                         compatible = "regulator-fixed";
40                         regulator-name = "VMEM_VDD_2.8V";
41                         regulator-min-microvolt = <2800000>;
42                         regulator-max-microvolt = <2800000>;
43                         gpio = <&gpk0 2 GPIO_ACTIVE_HIGH>;
44                         enable-active-high;
45                 };
46
47                 tsp_reg: regulator-1 {
48                         compatible = "regulator-fixed";
49                         regulator-name = "TSP_FIXED_VOLTAGES";
50                         regulator-min-microvolt = <2800000>;
51                         regulator-max-microvolt = <2800000>;
52                         gpio = <&gpl0 3 GPIO_ACTIVE_HIGH>;
53                         enable-active-high;
54                 };
55
56                 cam_af_28v_reg: regulator-2 {
57                         compatible = "regulator-fixed";
58                         regulator-name = "8M_AF_2.8V_EN";
59                         regulator-min-microvolt = <2800000>;
60                         regulator-max-microvolt = <2800000>;
61                         gpio = <&gpk1 1 GPIO_ACTIVE_HIGH>;
62                         enable-active-high;
63                 };
64
65                 cam_io_en_reg: regulator-3 {
66                         compatible = "regulator-fixed";
67                         regulator-name = "CAM_IO_EN";
68                         regulator-min-microvolt = <2800000>;
69                         regulator-max-microvolt = <2800000>;
70                         gpio = <&gpe2 1 GPIO_ACTIVE_HIGH>;
71                         enable-active-high;
72                 };
73
74                 cam_io_12v_reg: regulator-4 {
75                         compatible = "regulator-fixed";
76                         regulator-name = "8M_1.2V_EN";
77                         regulator-min-microvolt = <1200000>;
78                         regulator-max-microvolt = <1200000>;
79                         gpio = <&gpe2 5 GPIO_ACTIVE_HIGH>;
80                         enable-active-high;
81                 };
82
83                 vt_core_15v_reg: regulator-5 {
84                         compatible = "regulator-fixed";
85                         regulator-name = "VT_CORE_1.5V";
86                         regulator-min-microvolt = <1500000>;
87                         regulator-max-microvolt = <1500000>;
88                         gpio = <&gpe2 2 GPIO_ACTIVE_HIGH>;
89                         enable-active-high;
90                 };
91         };
92
93         gpio-keys {
94                 compatible = "gpio-keys";
95
96                 vol-down-key {
97                         gpios = <&gpx2 1 GPIO_ACTIVE_LOW>;
98                         linux,code = <114>;
99                         label = "volume down";
100                         debounce-interval = <10>;
101                 };
102
103                 vol-up-key {
104                         gpios = <&gpx2 0 GPIO_ACTIVE_LOW>;
105                         linux,code = <115>;
106                         label = "volume up";
107                         debounce-interval = <10>;
108                 };
109
110                 power-key {
111                         gpios = <&gpx2 7 GPIO_ACTIVE_LOW>;
112                         linux,code = <116>;
113                         label = "power";
114                         debounce-interval = <10>;
115                         gpio-key,wakeup;
116                 };
117
118                 ok-key {
119                         gpios = <&gpx3 5 GPIO_ACTIVE_LOW>;
120                         linux,code = <352>;
121                         label = "ok";
122                         debounce-interval = <10>;
123                 };
124         };
125
126         fixed-rate-clocks {
127                 xxti {
128                         compatible = "samsung,clock-xxti";
129                         clock-frequency = <0>;
130                 };
131
132                 xusbxti {
133                         compatible = "samsung,clock-xusbxti";
134                         clock-frequency = <24000000>;
135                 };
136         };
137
138         thermal-zones {
139                 cpu_thermal: cpu-thermal {
140                         cooling-maps {
141                                 map0 {
142                                      /* Corresponds to 800MHz at freq_table */
143                                      cooling-device = <&cpu0 2 2>;
144                                 };
145                                 map1 {
146                                      /* Corresponds to 200MHz at freq_table */
147                                      cooling-device = <&cpu0 4 4>;
148                                };
149                        };
150                 };
151         };
152
153         camera {
154                 pinctrl-names = "default";
155                 pinctrl-0 = <>;
156                 status = "okay";
157
158                 fimc_0: fimc@11800000 {
159                         status = "okay";
160                         assigned-clocks = <&clock CLK_MOUT_FIMC0>,
161                                         <&clock CLK_SCLK_FIMC0>;
162                         assigned-clock-parents = <&clock CLK_SCLK_MPLL>;
163                         assigned-clock-rates = <0>, <160000000>;
164                 };
165
166                 fimc_1: fimc@11810000 {
167                         status = "okay";
168                         assigned-clocks = <&clock CLK_MOUT_FIMC1>,
169                                         <&clock CLK_SCLK_FIMC1>;
170                         assigned-clock-parents = <&clock CLK_SCLK_MPLL>;
171                         assigned-clock-rates = <0>, <160000000>;
172                 };
173
174                 fimc_2: fimc@11820000 {
175                         status = "okay";
176                         assigned-clocks = <&clock CLK_MOUT_FIMC2>,
177                                         <&clock CLK_SCLK_FIMC2>;
178                         assigned-clock-parents = <&clock CLK_SCLK_MPLL>;
179                         assigned-clock-rates = <0>, <160000000>;
180                 };
181
182                 fimc_3: fimc@11830000 {
183                         status = "okay";
184                         assigned-clocks = <&clock CLK_MOUT_FIMC3>,
185                                         <&clock CLK_SCLK_FIMC3>;
186                         assigned-clock-parents = <&clock CLK_SCLK_MPLL>;
187                         assigned-clock-rates = <0>, <160000000>;
188                 };
189         };
190 };
191
192 &cpu0 {
193         cpu0-supply = <&varm_breg>;
194 };
195
196 &dsi_0 {
197         vddcore-supply = <&vusb_reg>;
198         vddio-supply = <&vmipi_reg>;
199         samsung,pll-clock-frequency = <24000000>;
200         status = "okay";
201
202         ports {
203                 #address-cells = <1>;
204                 #size-cells = <0>;
205
206                 port@1 {
207                         reg = <1>;
208
209                         dsi_out: endpoint {
210                                 remote-endpoint = <&dsi_in>;
211                                 samsung,burst-clock-frequency = <500000000>;
212                                 samsung,esc-clock-frequency = <20000000>;
213                         };
214                 };
215         };
216
217         panel@0 {
218                 reg = <0>;
219                 compatible = "samsung,s6e8aa0";
220                 vdd3-supply = <&vcclcd_reg>;
221                 vci-supply = <&vlcd_reg>;
222                 reset-gpios = <&gpy4 5 GPIO_ACTIVE_HIGH>;
223                 power-on-delay= <50>;
224                 reset-delay = <100>;
225                 init-delay = <100>;
226                 flip-horizontal;
227                 flip-vertical;
228                 panel-width-mm = <58>;
229                 panel-height-mm = <103>;
230
231                 display-timings {
232                         timing-0 {
233                                 clock-frequency = <57153600>;
234                                 hactive = <720>;
235                                 vactive = <1280>;
236                                 hfront-porch = <5>;
237                                 hback-porch = <5>;
238                                 hsync-len = <5>;
239                                 vfront-porch = <13>;
240                                 vback-porch = <1>;
241                                 vsync-len = <2>;
242                         };
243                 };
244
245                 port {
246                         dsi_in: endpoint {
247                                 remote-endpoint = <&dsi_out>;
248                         };
249                 };
250         };
251 };
252
253 &exynos_usbphy {
254         status = "okay";
255         vbus-supply = <&safe1_sreg>;
256 };
257
258 &fimd {
259         status = "okay";
260 };
261
262 &hsotg {
263         vusb_d-supply = <&vusb_reg>;
264         vusb_a-supply = <&vusbdac_reg>;
265         dr_mode = "peripheral";
266         status = "okay";
267 };
268
269 &i2c_3 {
270         samsung,i2c-sda-delay = <100>;
271         samsung,i2c-slave-addr = <0x10>;
272         samsung,i2c-max-bus-freq = <400000>;
273         pinctrl-0 = <&i2c3_bus>;
274         pinctrl-names = "default";
275         status = "okay";
276
277         mms114-touchscreen@48 {
278                 compatible = "melfas,mms114";
279                 reg = <0x48>;
280                 interrupt-parent = <&gpx0>;
281                 interrupts = <4 2>;
282                 x-size = <720>;
283                 y-size = <1280>;
284                 avdd-supply = <&tsp_reg>;
285                 vdd-supply = <&tsp_reg>;
286         };
287 };
288
289 &i2c_5 {
290         samsung,i2c-sda-delay = <100>;
291         samsung,i2c-slave-addr = <0x10>;
292         samsung,i2c-max-bus-freq = <100000>;
293         pinctrl-0 = <&i2c5_bus>;
294         pinctrl-names = "default";
295         status = "okay";
296
297         max8997_pmic@66 {
298                 compatible = "maxim,max8997-pmic";
299
300                 reg = <0x66>;
301
302                 max8997,pmic-buck1-uses-gpio-dvs;
303                 max8997,pmic-buck2-uses-gpio-dvs;
304                 max8997,pmic-buck5-uses-gpio-dvs;
305
306                 max8997,pmic-ignore-gpiodvs-side-effect;
307                 max8997,pmic-buck125-default-dvs-idx = <0>;
308
309                 max8997,pmic-buck125-dvs-gpios = <&gpx0 5 GPIO_ACTIVE_HIGH>,
310                                                  <&gpx0 6 GPIO_ACTIVE_HIGH>,
311                                                  <&gpl0 0 GPIO_ACTIVE_HIGH>;
312
313                 max8997,pmic-buck1-dvs-voltage = <1350000>, <1300000>,
314                                                  <1250000>, <1200000>,
315                                                  <1150000>, <1100000>,
316                                                  <1000000>, <950000>;
317
318                 max8997,pmic-buck2-dvs-voltage = <1100000>, <1000000>,
319                                                  <950000>,  <900000>,
320                                                  <1100000>, <1000000>,
321                                                  <950000>,  <900000>;
322
323                 max8997,pmic-buck5-dvs-voltage = <1200000>, <1200000>,
324                                                  <1200000>, <1200000>,
325                                                  <1200000>, <1200000>,
326                                                  <1200000>, <1200000>;
327
328                 regulators {
329                         valive_reg: LDO2 {
330                              regulator-name = "VALIVE_1.1V_C210";
331                              regulator-min-microvolt = <1100000>;
332                              regulator-max-microvolt = <1100000>;
333                              regulator-always-on;
334                         };
335
336                         vusb_reg: LDO3 {
337                              regulator-name = "VUSB_1.1V_C210";
338                              regulator-min-microvolt = <1100000>;
339                              regulator-max-microvolt = <1100000>;
340                         };
341
342                         vmipi_reg: LDO4 {
343                              regulator-name = "VMIPI_1.8V";
344                              regulator-min-microvolt = <1800000>;
345                              regulator-max-microvolt = <1800000>;
346                         };
347
348                         vpda_reg: LDO6 {
349                              regulator-name = "VCC_1.8V_PDA";
350                              regulator-min-microvolt = <1800000>;
351                              regulator-max-microvolt = <1800000>;
352                              regulator-always-on;
353                         };
354
355                         vcam_reg: LDO7 {
356                              regulator-name = "CAM_ISP_1.8V";
357                              regulator-min-microvolt = <1800000>;
358                              regulator-max-microvolt = <1800000>;
359                         };
360
361                         vusbdac_reg: LDO8 {
362                              regulator-name = "VUSB/VDAC_3.3V_C210";
363                              regulator-min-microvolt = <3300000>;
364                              regulator-max-microvolt = <3300000>;
365                         };
366
367                         vccpda_reg: LDO9 {
368                              regulator-name = "VCC_2.8V_PDA";
369                              regulator-min-microvolt = <2800000>;
370                              regulator-max-microvolt = <2800000>;
371                              regulator-always-on;
372                         };
373
374                         vpll_reg: LDO10 {
375                              regulator-name = "VPLL_1.1V_C210";
376                              regulator-min-microvolt = <1100000>;
377                              regulator-max-microvolt = <1100000>;
378                              regulator-always-on;
379                         };
380
381                         vtcam_reg: LDO12 {
382                              regulator-name = "VT_CAM_1.8V";
383                              regulator-min-microvolt = <1800000>;
384                              regulator-max-microvolt = <1800000>;
385                         };
386
387                         vcclcd_reg: LDO13 {
388                              regulator-name = "VCC_3.3V_LCD";
389                              regulator-min-microvolt = <3300000>;
390                              regulator-max-microvolt = <3300000>;
391                         };
392
393                         vlcd_reg: LDO15 {
394                              regulator-name = "VLCD_2.2V";
395                              regulator-min-microvolt = <2200000>;
396                              regulator-max-microvolt = <2200000>;
397                         };
398
399                         camsensor_reg: LDO16 {
400                              regulator-name = "CAM_SENSOR_IO_1.8V";
401                              regulator-min-microvolt = <1800000>;
402                              regulator-max-microvolt = <1800000>;
403                         };
404
405                         vddq_reg: LDO21 {
406                              regulator-name = "VDDQ_M1M2_1.2V";
407                              regulator-min-microvolt = <1200000>;
408                              regulator-max-microvolt = <1200000>;
409                              regulator-always-on;
410                         };
411
412                         varm_breg: BUCK1 {
413                              /*
414                               * HACK: The real name is VARM_1.2V_C210,
415                               * but exynos-cpufreq does not support
416                               * DT-based regulator lookup yet.
417                               */
418                              regulator-name = "vdd_arm";
419                              regulator-min-microvolt = <900000>;
420                              regulator-max-microvolt = <1350000>;
421                              regulator-always-on;
422                         };
423
424                         vint_breg: BUCK2 {
425                              regulator-name = "VINT_1.1V_C210";
426                              regulator-min-microvolt = <900000>;
427                              regulator-max-microvolt = <1100000>;
428                              regulator-always-on;
429                         };
430
431                         camisp_breg: BUCK4 {
432                              regulator-name = "CAM_ISP_CORE_1.2V";
433                              regulator-min-microvolt = <1200000>;
434                              regulator-max-microvolt = <1200000>;
435                         };
436
437                         vmem_breg: BUCK5 {
438                              regulator-name = "VMEM_1.2V_C210";
439                              regulator-min-microvolt = <1200000>;
440                              regulator-max-microvolt = <1200000>;
441                              regulator-always-on;
442                         };
443
444                         vccsub_breg: BUCK7 {
445                              regulator-name = "VCC_SUB_2.0V";
446                              regulator-min-microvolt = <2000000>;
447                              regulator-max-microvolt = <2000000>;
448                              regulator-always-on;
449                         };
450
451                         safe1_sreg: ESAFEOUT1 {
452                              regulator-name = "SAFEOUT1";
453                         };
454
455                         safe2_sreg: ESAFEOUT2 {
456                              regulator-name = "SAFEOUT2";
457                              regulator-boot-on;
458                         };
459                 };
460         };
461 };
462
463 &sdhci_0 {
464         bus-width = <8>;
465         non-removable;
466         pinctrl-0 = <&sd0_clk &sd0_cmd &sd0_bus8>;
467         pinctrl-names = "default";
468         vmmc-supply = <&vemmc_reg>;
469         status = "okay";
470 };
471
472 &serial_0 {
473         status = "okay";
474 };
475
476 &serial_1 {
477         status = "okay";
478 };
479
480 &serial_2 {
481         status = "okay";
482 };
483
484 &serial_3 {
485         status = "okay";
486 };
487
488 &tmu {
489         status = "okay";
490 };