• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1/*
2 * Samsung's S5PV210 SoC device tree source
3 *
4 * Copyright (c) 2013-2014 Samsung Electronics, Co. Ltd.
5 *
6 * Mateusz Krawczuk <m.krawczuk@partner.samsung.com>
7 * Tomasz Figa <t.figa@samsung.com>
8 *
9 * Board device tree source for Samsung Aquila board.
10 *
11 * This program is free software; you can redistribute it and/or modify
12 * it under the terms of the GNU General Public License version 2 as
13 * published by the Free Software Foundation.
14 */
15
16/dts-v1/;
17#include <dt-bindings/input/input.h>
18#include "s5pv210.dtsi"
19
20/ {
21	model = "Samsung Aquila based on S5PC110";
22	compatible = "samsung,aquila", "samsung,s5pv210";
23
24	aliases {
25		i2c3 = &i2c_pmic;
26	};
27
28	chosen {
29		bootargs = "console=ttySAC2,115200n8 root=/dev/mmcblk1p5 rw rootwait ignore_loglevel earlyprintk";
30	};
31
32	memory {
33		device_type = "memory";
34		reg = <0x30000000 0x05000000
35			0x40000000 0x18000000>;
36	};
37
38	regulators {
39		compatible = "simple-bus";
40		#address-cells = <1>;
41		#size-cells = <0>;
42
43		vtf_reg: fixed-regulator@0 {
44			compatible = "regulator-fixed";
45			reg = <0>;
46			regulator-name = "V_TF_2.8V";
47			regulator-min-microvolt = <2800000>;
48			regulator-max-microvolt = <2800000>;
49			gpio = <&mp05 4 0>;
50			enable-active-high;
51		};
52
53		pda_reg: fixed-regulator@1 {
54			compatible = "regulator-fixed";
55			regulator-name = "VCC_1.8V_PDA";
56			regulator-min-microvolt = <1800000>;
57			regulator-max-microvolt = <1800000>;
58			reg = <1>;
59		};
60
61		bat_reg: fixed-regulator@2 {
62			compatible = "regulator-fixed";
63			regulator-name = "V_BAT";
64			regulator-min-microvolt = <3700000>;
65			regulator-max-microvolt = <3700000>;
66			reg = <2>;
67		};
68	};
69
70	i2c_pmic: i2c-pmic {
71		compatible = "i2c-gpio";
72		gpios = <&gpj4 0 0>, /* sda */
73			<&gpj4 3 0>; /* scl */
74		i2c-gpio,delay-us = <2>;        /* ~100 kHz */
75		#address-cells = <1>;
76		#size-cells = <0>;
77
78		pmic@66 {
79			compatible = "national,lp3974";
80			reg = <0x66>;
81
82			max8998,pmic-buck1-default-dvs-idx = <0>;
83			max8998,pmic-buck1-dvs-gpios = <&gph0 3 0>,
84							<&gph0 4 0>;
85			max8998,pmic-buck1-dvs-voltage = <1200000>, <1200000>,
86							<1200000>, <1200000>;
87
88			max8998,pmic-buck2-default-dvs-idx = <0>;
89			max8998,pmic-buck2-dvs-gpio = <&gph0 5 0>;
90			max8998,pmic-buck2-dvs-voltage = <1200000>, <1200000>;
91
92			regulators {
93				ldo2_reg: LDO2 {
94					regulator-name = "VALIVE_1.1V";
95					regulator-min-microvolt = <1100000>;
96					regulator-max-microvolt = <1100000>;
97					regulator-always-on;
98				};
99
100				ldo3_reg: LDO3 {
101					regulator-name = "VUSB+MIPI_1.1V";
102					regulator-min-microvolt = <1100000>;
103					regulator-max-microvolt = <1100000>;
104					regulator-always-on;
105				};
106
107				ldo4_reg: LDO4 {
108					regulator-name = "VADC_3.3V";
109					regulator-min-microvolt = <3300000>;
110					regulator-max-microvolt = <3300000>;
111				};
112
113				ldo5_reg: LDO5 {
114					regulator-name = "VTF_2.8V";
115					regulator-min-microvolt = <2800000>;
116					regulator-max-microvolt = <2800000>;
117					regulator-always-on;
118				};
119
120				ldo6_reg: LDO6 {
121					regulator-name = "VCC_3.3V";
122					regulator-min-microvolt = <3300000>;
123					regulator-max-microvolt = <3300000>;
124					regulator-always-on;
125				};
126
127				ldo7_reg: LDO7 {
128					regulator-name = "VCC_3.0V";
129					regulator-min-microvolt = <3000000>;
130					regulator-max-microvolt = <3000000>;
131					regulator-always-on;
132					regulator-boot-on;
133				};
134
135				ldo8_reg: LDO8 {
136					regulator-name = "VUSB+VDAC_3.3V";
137					regulator-min-microvolt = <3300000>;
138					regulator-max-microvolt = <3300000>;
139					regulator-always-on;
140				};
141
142				ldo9_reg: LDO9 {
143					regulator-name = "VCC+VCAM_2.8V";
144					regulator-min-microvolt = <2800000>;
145					regulator-max-microvolt = <2800000>;
146					regulator-always-on;
147				};
148
149				ldo10_reg: LDO10 {
150					regulator-name = "VPLL_1.1V";
151					regulator-min-microvolt = <1100000>;
152					regulator-max-microvolt = <1100000>;
153					regulator-always-on;
154					regulator-boot-on;
155				};
156
157				ldo11_reg: LDO11 {
158					regulator-name = "CAM_IO_2.8V";
159					regulator-min-microvolt = <2800000>;
160					regulator-max-microvolt = <2800000>;
161					regulator-always-on;
162				};
163
164				ldo12_reg: LDO12 {
165					regulator-name = "CAM_ISP_1.2V";
166					regulator-min-microvolt = <1200000>;
167					regulator-max-microvolt = <1200000>;
168					regulator-always-on;
169				};
170
171				ldo13_reg: LDO13 {
172					regulator-name = "CAM_A_2.8V";
173					regulator-min-microvolt = <2800000>;
174					regulator-max-microvolt = <2800000>;
175					regulator-always-on;
176				};
177
178				ldo14_reg: LDO14 {
179					regulator-name = "CAM_CIF_1.8V";
180					regulator-min-microvolt = <1800000>;
181					regulator-max-microvolt = <1800000>;
182					regulator-always-on;
183				};
184
185				ldo15_reg: LDO15 {
186					regulator-name = "CAM_AF_3.3V";
187					regulator-min-microvolt = <3300000>;
188					regulator-max-microvolt = <3300000>;
189					regulator-always-on;
190				};
191
192				ldo16_reg: LDO16 {
193					regulator-name = "VMIPI_1.8V";
194					regulator-min-microvolt = <1800000>;
195					regulator-max-microvolt = <1800000>;
196					regulator-always-on;
197				};
198
199				ldo17_reg: LDO17 {
200					regulator-name = "CAM_8M_1.8V";
201					regulator-min-microvolt = <1800000>;
202					regulator-max-microvolt = <1800000>;
203					regulator-always-on;
204				};
205
206				buck1_reg: BUCK1 {
207					regulator-name = "VARM_1.2V";
208					regulator-min-microvolt = <1200000>;
209					regulator-max-microvolt = <1200000>;
210					regulator-always-on;
211				};
212
213				buck2_reg: BUCK2 {
214					regulator-name = "VINT_1.2V";
215					regulator-min-microvolt = <1200000>;
216					regulator-max-microvolt = <1200000>;
217					regulator-always-on;
218				};
219
220				buck3_reg: BUCK3 {
221					regulator-name = "VCC_1.8V";
222					regulator-min-microvolt = <1800000>;
223					regulator-max-microvolt = <1800000>;
224					regulator-always-on;
225				};
226
227				buck4_reg: BUCK4 {
228					regulator-name = "CAM_CORE_1.2V";
229					regulator-min-microvolt = <1200000>;
230					regulator-max-microvolt = <1200000>;
231					regulator-always-on;
232				};
233
234				vichg_reg: ENVICHG {
235					regulator-name = "VICHG";
236				};
237
238				safeout1_reg: ESAFEOUT1 {
239					regulator-name = "SAFEOUT1";
240					regulator-always-on;
241				};
242
243				safeout2_reg: ESAFEOUT2 {
244					regulator-name = "SAFEOUT2";
245					regulator-boot-on;
246				};
247			};
248		};
249
250	};
251
252	gpio-keys {
253		compatible = "gpio-keys";
254
255		power-key {
256			gpios = <&gph2 6 1>;
257			linux,code = <KEY_POWER>;
258			label = "power";
259			debounce-interval = <1>;
260			gpio-key,wakeup;
261		};
262	};
263};
264
265&xusbxti {
266	clock-frequency = <24000000>;
267};
268
269&keypad {
270	linux,input-no-autorepeat;
271	linux,input-wakeup;
272	samsung,keypad-num-rows = <3>;
273	samsung,keypad-num-columns = <3>;
274	pinctrl-names = "default";
275	pinctrl-0 = <&keypad_row0>, <&keypad_row1>, <&keypad_row2>,
276			<&keypad_col0>, <&keypad_col1>, <&keypad_col2>;
277	status = "okay";
278
279	key_1 {
280		keypad,row = <0>;
281		keypad,column = <1>;
282		linux,code = <KEY_CONNECT>;
283	};
284
285	key_2 {
286		keypad,row = <0>;
287		keypad,column = <2>;
288		linux,code = <KEY_BACK>;
289	};
290
291	key_3 {
292		keypad,row = <1>;
293		keypad,column = <1>;
294		linux,code = <KEY_CAMERA_FOCUS>;
295	};
296
297	key_4 {
298		keypad,row = <1>;
299		keypad,column = <2>;
300		linux,code = <KEY_VOLUMEUP>;
301	};
302
303	key_5 {
304		keypad,row = <2>;
305		keypad,column = <1>;
306		linux,code = <KEY_CAMERA>;
307	};
308
309	key_6 {
310		keypad,row = <2>;
311		keypad,column = <2>;
312		linux,code = <KEY_VOLUMEDOWN>;
313	};
314};
315
316&uart0 {
317	status = "okay";
318};
319
320&uart1 {
321	status = "okay";
322};
323
324&uart2 {
325	status = "okay";
326};
327
328&uart3 {
329	status = "okay";
330};
331
332&sdhci0 {
333	bus-width = <4>;
334	non-removable;
335	status = "okay";
336	vmmc-supply = <&ldo5_reg>;
337	pinctrl-0 = <&sd0_clk &sd0_cmd &sd0_bus4>;
338	pinctrl-names = "default";
339};
340
341&sdhci2 {
342	bus-width = <4>;
343	cd-gpios = <&gph3 4 1>;
344	vmmc-supply = <&vtf_reg>;
345	cd-inverted;
346	pinctrl-0 = <&sd2_clk &sd2_cmd &sd2_bus4 &t_flash_detect>;
347	pinctrl-names = "default";
348	status = "okay";
349};
350
351&onenand {
352	status = "okay";
353};
354
355&hsotg {
356	vusb_a-supply = <&ldo3_reg>;
357	vusb_d-supply = <&ldo8_reg>;
358	dr_mode = "peripheral";
359	status = "okay";
360};
361
362&usbphy {
363	status = "okay";
364};
365
366&fimd {
367	pinctrl-0 = <&lcd_clk &lcd_data24 &pwm1_out>;
368	pinctrl-names = "default";
369	status = "okay";
370
371	display-timings {
372		native-mode = <&timing0>;
373		timing0: timing {
374			clock-frequency = <0>;
375			hactive = <800>;
376			vactive = <480>;
377			hfront-porch = <16>;
378			hback-porch = <16>;
379			hsync-len = <2>;
380			vback-porch = <3>;
381			vfront-porch = <28>;
382			vsync-len = <1>;
383		};
384	};
385};
386
387&pinctrl0 {
388	t_flash_detect: t-flash-detect {
389		samsung,pins = "gph3-4";
390		samsung,pin-function = <0>;
391		samsung,pin-pud = <0>;
392	};
393};
394