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