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