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