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