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