Loading...
Note: File does not exist in v4.17.
1// SPDX-License-Identifier: GPL-2.0
2/*
3 * Samsung's S5PV210 based Galaxy Aries board device tree source
4 */
5
6/dts-v1/;
7#include <dt-bindings/gpio/gpio.h>
8#include <dt-bindings/interrupt-controller/irq.h>
9#include "s5pv210.dtsi"
10
11/ {
12 compatible = "samsung,aries", "samsung,s5pv210";
13
14 aliases {
15 i2c6 = &i2c_pmic;
16 i2c9 = &i2c_fuel;
17 };
18
19 memory@30000000 {
20 device_type = "memory";
21 reg = <0x30000000 0x05000000
22 0x40000000 0x10000000
23 0x50000000 0x08000000>;
24 };
25
26 reserved-memory {
27 #address-cells = <1>;
28 #size-cells = <1>;
29 ranges;
30
31 mfc_left: region@43000000 {
32 compatible = "shared-dma-pool";
33 no-map;
34 reg = <0x43000000 0x2000000>;
35 };
36
37 mfc_right: region@51000000 {
38 compatible = "shared-dma-pool";
39 no-map;
40 reg = <0x51000000 0x2000000>;
41 };
42 };
43
44 vibrator_pwr: regulator-fixed-0 {
45 compatible = "regulator-fixed";
46 regulator-name = "vibrator-en";
47 enable-active-high;
48 gpio = <&gpj1 1 GPIO_ACTIVE_HIGH>;
49 };
50
51 wifi_pwrseq: wifi-pwrseq {
52 compatible = "mmc-pwrseq-simple";
53 reset-gpios = <&gpg1 2 GPIO_ACTIVE_LOW>;
54 pinctrl-names = "default";
55 pinctrl-0 = <&wlan_gpio_rst>;
56 post-power-on-delay-ms = <500>;
57 power-off-delay-us = <500>;
58 };
59
60 i2c_pmic: i2c-gpio-0 {
61 compatible = "i2c-gpio";
62 sda-gpios = <&gpj4 0 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
63 scl-gpios = <&gpj4 3 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
64 i2c-gpio,delay-us = <2>;
65 #address-cells = <1>;
66 #size-cells = <0>;
67
68 pmic@66 {
69 compatible = "maxim,max8998";
70 reg = <0x66>;
71 interrupt-parent = <&gph0>;
72 interrupts = <7 IRQ_TYPE_EDGE_FALLING>;
73
74 max8998,pmic-buck1-default-dvs-idx = <1>;
75 max8998,pmic-buck1-dvs-gpios = <&gph0 3 GPIO_ACTIVE_HIGH>,
76 <&gph0 4 GPIO_ACTIVE_HIGH>;
77 max8998,pmic-buck1-dvs-voltage = <1275000>, <1200000>,
78 <1050000>, <950000>;
79
80 max8998,pmic-buck2-default-dvs-idx = <0>;
81 max8998,pmic-buck2-dvs-gpio = <&gph0 5 GPIO_ACTIVE_HIGH>;
82 max8998,pmic-buck2-dvs-voltage = <1100000>, <1000000>;
83
84 regulators {
85 ldo2_reg: LDO2 {
86 regulator-name = "VALIVE_1.2V";
87 regulator-min-microvolt = <1200000>;
88 regulator-max-microvolt = <1200000>;
89 regulator-always-on;
90
91 regulator-state-mem {
92 regulator-on-in-suspend;
93 };
94 };
95
96 ldo3_reg: LDO3 {
97 regulator-name = "VUSB_1.1V";
98 regulator-min-microvolt = <1100000>;
99 regulator-max-microvolt = <1100000>;
100
101 regulator-state-mem {
102 regulator-off-in-suspend;
103 };
104 };
105
106 ldo4_reg: LDO4 {
107 regulator-name = "VADC_3.3V";
108 regulator-min-microvolt = <3300000>;
109 regulator-max-microvolt = <3300000>;
110 regulator-always-on;
111
112 regulator-state-mem {
113 regulator-off-in-suspend;
114 };
115 };
116
117 ldo5_reg: LDO5 {
118 regulator-name = "VTF_2.8V";
119 regulator-min-microvolt = <2800000>;
120 regulator-max-microvolt = <2800000>;
121
122 regulator-state-mem {
123 regulator-off-in-suspend;
124 };
125 };
126
127 ldo6_reg: LDO6 {
128 regulator-name = "LDO6";
129 regulator-min-microvolt = <1600000>;
130 regulator-max-microvolt = <3600000>;
131 };
132
133 ldo7_reg: LDO7 {
134 regulator-name = "VLCD_1.8V";
135 regulator-min-microvolt = <1800000>;
136 regulator-max-microvolt = <1800000>;
137 /* Till we get panel driver */
138 regulator-always-on;
139
140 regulator-state-mem {
141 regulator-off-in-suspend;
142 };
143 };
144
145 ldo8_reg: LDO8 {
146 regulator-name = "VUSB_3.3V";
147 regulator-min-microvolt = <3300000>;
148 regulator-max-microvolt = <3300000>;
149
150 regulator-state-mem {
151 regulator-off-in-suspend;
152 };
153 };
154
155 ldo9_reg: LDO9 {
156 regulator-name = "VCC_2.8V_PDA";
157 regulator-min-microvolt = <2800000>;
158 regulator-max-microvolt = <2800000>;
159 regulator-always-on;
160 };
161
162 ldo10_reg: LDO10 {
163 regulator-name = "VPLL_1.2V";
164 regulator-min-microvolt = <1200000>;
165 regulator-max-microvolt = <1200000>;
166 regulator-always-on;
167
168 regulator-state-mem {
169 regulator-on-in-suspend;
170 };
171 };
172
173 ldo11_reg: LDO11 {
174 regulator-name = "CAM_AF_3.0V";
175 regulator-min-microvolt = <3000000>;
176 regulator-max-microvolt = <3000000>;
177
178 regulator-state-mem {
179 regulator-off-in-suspend;
180 };
181 };
182
183 ldo12_reg: LDO12 {
184 regulator-name = "CAM_SENSOR_CORE_1.2V";
185 regulator-min-microvolt = <1200000>;
186 regulator-max-microvolt = <1200000>;
187
188 regulator-state-mem {
189 regulator-off-in-suspend;
190 };
191 };
192
193 ldo13_reg: LDO13 {
194 regulator-name = "VGA_VDDIO_2.8V";
195 regulator-min-microvolt = <2800000>;
196 regulator-max-microvolt = <2800000>;
197
198 regulator-state-mem {
199 regulator-off-in-suspend;
200 };
201 };
202
203 ldo14_reg: LDO14 {
204 regulator-name = "VGA_DVDD_1.8V";
205 regulator-min-microvolt = <1800000>;
206 regulator-max-microvolt = <1800000>;
207
208 regulator-state-mem {
209 regulator-off-in-suspend;
210 };
211 };
212
213 ldo15_reg: LDO15 {
214 regulator-name = "CAM_ISP_HOST_2.8V";
215 regulator-min-microvolt = <2800000>;
216 regulator-max-microvolt = <2800000>;
217
218 regulator-state-mem {
219 regulator-off-in-suspend;
220 };
221 };
222
223 ldo16_reg: LDO16 {
224 regulator-name = "VGA_AVDD_2.8V";
225 regulator-min-microvolt = <2800000>;
226 regulator-max-microvolt = <2800000>;
227
228 regulator-state-mem {
229 regulator-off-in-suspend;
230 };
231 };
232
233 ldo17_reg: LDO17 {
234 regulator-name = "VCC_3.0V_LCD";
235 regulator-min-microvolt = <3000000>;
236 regulator-max-microvolt = <3000000>;
237 /* Till we get panel driver */
238 regulator-always-on;
239
240 regulator-state-mem {
241 regulator-off-in-suspend;
242 };
243 };
244
245 buck1_reg: BUCK1 {
246 regulator-name = "vddarm";
247 regulator-min-microvolt = <750000>;
248 regulator-max-microvolt = <1500000>;
249
250 regulator-state-mem {
251 regulator-off-in-suspend;
252 regulator-suspend-microvolt = <1250000>;
253 };
254 };
255
256 buck2_reg: BUCK2 {
257 regulator-name = "vddint";
258 regulator-min-microvolt = <750000>;
259 regulator-max-microvolt = <1500000>;
260
261 regulator-state-mem {
262 regulator-off-in-suspend;
263 regulator-suspend-microvolt = <1100000>;
264 };
265 };
266
267 buck3_reg: BUCK3 {
268 regulator-name = "VCC_1.8V";
269 regulator-min-microvolt = <1800000>;
270 regulator-max-microvolt = <1800000>;
271 regulator-always-on;
272 };
273
274 buck4_reg: BUCK4 {
275 regulator-name = "CAM_ISP_CORE_1.2V";
276 regulator-min-microvolt = <1200000>;
277 regulator-max-microvolt = <1200000>;
278
279 regulator-state-mem {
280 regulator-off-in-suspend;
281 };
282 };
283
284 ap32khz_reg: EN32KHz-AP {
285 regulator-name = "32KHz AP";
286 regulator-always-on;
287 };
288
289 cp32khz_reg: EN32KHz-CP {
290 regulator-name = "32KHz CP";
291 };
292
293 vichg_reg: ENVICHG {
294 regulator-name = "VICHG";
295 regulator-always-on;
296 };
297
298 safe1_sreg: ESAFEOUT1 {
299 regulator-name = "SAFEOUT1";
300 };
301
302 safe2_sreg: ESAFEOUT2 {
303 regulator-name = "SAFEOUT2";
304 };
305 };
306 };
307 };
308
309 i2c_fuel: i2c-gpio-1 {
310 compatible = "i2c-gpio";
311 sda-gpios = <&mp05 1 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
312 scl-gpios = <&mp05 0 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
313 i2c-gpio,delay-us = <2>;
314 #address-cells = <1>;
315 #size-cells = <0>;
316
317 fuelgauge@36 {
318 compatible = "maxim,max17040";
319 interrupt-parent = <&vic0>;
320 interrupts = <7>;
321 reg = <0x36>;
322 };
323 };
324
325 vibrator: pwm-vibrator {
326 compatible = "pwm-vibrator";
327 pwms = <&pwm 1 44642 0>;
328 pwm-names = "enable";
329 vcc-supply = <&vibrator_pwr>;
330 pinctrl-names = "default";
331 pinctrl-0 = <&pwm1_out>;
332 };
333
334 poweroff: syscon-poweroff {
335 compatible = "syscon-poweroff";
336 regmap = <&pmu_syscon>;
337 offset = <0x681c>; /* PS_HOLD_CONTROL */
338 value = <0x5200>;
339 };
340};
341
342&fimd {
343 pinctrl-names = "default";
344 pinctrl-0 = <&lcd_clk &lcd_data24>;
345 status = "okay";
346
347 samsung,invert-vden;
348 samsung,invert-vclk;
349
350 display-timings {
351 timing-0 {
352 /* 480x800@60Hz */
353 clock-frequency = <25628040>;
354 hactive = <480>;
355 vactive = <800>;
356 hfront-porch = <16>;
357 hback-porch = <16>;
358 hsync-len = <2>;
359 vfront-porch = <28>;
360 vback-porch = <1>;
361 vsync-len = <2>;
362 };
363 };
364};
365
366&hsotg {
367 vusb_a-supply = <&ldo8_reg>;
368 vusb_d-supply = <&ldo3_reg>;
369 dr_mode = "peripheral";
370 status = "okay";
371};
372
373&i2c2 {
374 samsung,i2c-sda-delay = <100>;
375 samsung,i2c-max-bus-freq = <400000>;
376 samsung,i2c-slave-addr = <0x10>;
377 status = "okay";
378
379 touchscreen@4a {
380 compatible = "atmel,maxtouch";
381 reg = <0x4a>;
382 interrupt-parent = <&gpj0>;
383 interrupts = <5 IRQ_TYPE_EDGE_FALLING>;
384 pinctrl-names = "default";
385 pinctrl-0 = <&ts_irq>;
386 reset-gpios = <&gpj1 3 GPIO_ACTIVE_HIGH>;
387 };
388};
389
390&mfc {
391 memory-region = <&mfc_left>, <&mfc_right>;
392};
393
394&pinctrl0 {
395 wlan_bt_en: wlan-bt-en {
396 samsung,pins = "gpb-5";
397 samsung,pin-function = <EXYNOS_PIN_FUNC_OUTPUT>;
398 samsung,pin-pud = <S3C64XX_PIN_PULL_NONE>;
399 samsung,pin-val = <1>;
400 };
401
402 wlan_gpio_rst: wlan-gpio-rst {
403 samsung,pins = "gpg1-2";
404 samsung,pin-function = <EXYNOS_PIN_FUNC_OUTPUT>;
405 samsung,pin-pud = <S3C64XX_PIN_PULL_NONE>;
406 };
407
408 wifi_host_wake: wifi-host-wake {
409 samsung,pins = "gph2-4";
410 samsung,pin-function = <EXYNOS_PIN_FUNC_INPUT>;
411 samsung,pin-pud = <S3C64XX_PIN_PULL_DOWN>;
412 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
413 };
414
415 bt_host_wake: bt-host-wake {
416 samsung,pins = "gph2-5";
417 samsung,pin-function = <EXYNOS_PIN_FUNC_INPUT>;
418 samsung,pin-pud = <S3C64XX_PIN_PULL_DOWN>;
419 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
420 };
421
422 tf_detect: tf-detect {
423 samsung,pins = "gph3-4";
424 samsung,pin-function = <EXYNOS_PIN_FUNC_INPUT>;
425 samsung,pin-pud = <S3C64XX_PIN_PULL_DOWN>;
426 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
427 };
428
429 wifi_wake: wifi-wake {
430 samsung,pins = "gph3-5";
431 samsung,pin-function = <EXYNOS_PIN_FUNC_OUTPUT>;
432 samsung,pin-pud = <S3C64XX_PIN_PULL_NONE>;
433 };
434
435 ts_irq: ts-irq {
436 samsung,pins = "gpj0-5";
437 samsung,pin-function = <EXYNOS_PIN_FUNC_INPUT>;
438 samsung,pin-pud = <S3C64XX_PIN_PULL_NONE>;
439 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
440 };
441};
442
443&pwm {
444 samsung,pwm-outputs = <1>;
445};
446
447&sdhci1 {
448 #address-cells = <1>;
449 #size-cells = <0>;
450
451 bus-width = <4>;
452 max-frequency = <38400000>;
453 pinctrl-0 = <&sd1_clk &sd1_cmd &sd1_bus4 &wifi_wake &wifi_host_wake &wlan_bt_en>;
454 pinctrl-names = "default";
455 cap-sd-highspeed;
456 cap-mmc-highspeed;
457
458 mmc-pwrseq = <&wifi_pwrseq>;
459 non-removable;
460 status = "okay";
461
462 wlan@1 {
463 reg = <1>;
464 compatible = "brcm,bcm4329-fmac";
465 interrupt-parent = <&gph2>;
466 interrupts = <4 IRQ_TYPE_LEVEL_HIGH>;
467 interrupt-names = "host-wake";
468 };
469};
470
471&sdhci2 {
472 bus-width = <4>;
473 cd-gpios = <&gph3 4 GPIO_ACTIVE_LOW>;
474 vmmc-supply = <&ldo5_reg>;
475 pinctrl-0 = <&sd2_clk &sd2_cmd &sd2_bus4 &tf_detect>;
476 pinctrl-names = "default";
477 status = "okay";
478};
479
480&uart0 {
481 status = "okay";
482
483 bluetooth {
484 compatible = "brcm,bcm43438-bt";
485 max-speed = <115200>;
486 pinctrl-names = "default";
487 pinctrl-0 = <&uart0_data &uart0_fctl &bt_host_wake>;
488 shutdown-gpios = <&gpb 3 GPIO_ACTIVE_HIGH>;
489 device-wakeup-gpios = <&gpg3 4 GPIO_ACTIVE_HIGH>;
490 host-wakeup-gpios = <&gph2 5 GPIO_ACTIVE_HIGH>;
491 };
492};
493
494&uart1 {
495 status = "okay";
496};
497
498&uart2 {
499 status = "okay";
500};
501
502&usbphy {
503 status = "okay";
504 vbus-supply = <&safe1_sreg>;
505};
506
507&xusbxti {
508 clock-frequency = <24000000>;
509};