1/*
2 * SAMSUNG Exynos7 Espresso board device tree source
3 *
4 * Copyright (c) 2014 Samsung Electronics Co., Ltd.
5 *		http://www.samsung.com
6 *
7 * This program is free software; you can redistribute it and/or modify
8 * it under the terms of the GNU General Public License version 2 as
9 * published by the Free Software Foundation.
10*/
11
12/dts-v1/;
13#include "exynos7.dtsi"
14#include <dt-bindings/interrupt-controller/irq.h>
15#include <dt-bindings/clock/samsung,s2mps11.h>
16#include <dt-bindings/gpio/gpio.h>
17
18/ {
19	model = "Samsung Exynos7 Espresso board based on EXYNOS7";
20	compatible = "samsung,exynos7-espresso", "samsung,exynos7";
21
22	aliases {
23		serial0 = &serial_2;
24		mshc0 = &mmc_0;
25		mshc2 = &mmc_2;
26	};
27
28	chosen {
29		linux,stdout-path = &serial_2;
30	};
31
32	memory@40000000 {
33		device_type = "memory";
34		reg = <0x0 0x40000000 0x0 0xC0000000>;
35	};
36
37	usb30_vbus_reg: regulator-usb30 {
38		compatible = "regulator-fixed";
39		regulator-name = "VBUS_5V";
40		regulator-min-microvolt = <5000000>;
41		regulator-max-microvolt = <5000000>;
42		gpio = <&gph1 1 GPIO_ACTIVE_HIGH>;
43		pinctrl-names = "default";
44		pinctrl-0 = <&usb30_vbus_en>;
45		enable-active-high;
46	};
47
48	usb3drd_boost_5v: regulator-usb3drd-boost {
49		compatible = "regulator-fixed";
50		regulator-name = "VUSB_VBUS_5V";
51		regulator-min-microvolt = <5000000>;
52		regulator-max-microvolt = <5000000>;
53		gpio = <&gpf4 1 GPIO_ACTIVE_HIGH>;
54		pinctrl-names = "default";
55		pinctrl-0 = <&usb3drd_boost_en>;
56		enable-active-high;
57	};
58
59};
60
61&fin_pll {
62	clock-frequency = <24000000>;
63};
64
65&serial_2 {
66	status = "okay";
67};
68
69&rtc {
70	status = "okay";
71	clocks = <&clock_ccore PCLK_RTC>, <&s2mps15_osc S2MPS11_CLK_AP>;
72	clock-names = "rtc", "rtc_src";
73};
74
75&watchdog {
76	status = "okay";
77};
78
79&adc {
80	status = "okay";
81};
82
83&hsi2c_4 {
84	samsung,i2c-sda-delay = <100>;
85	samsung,i2c-max-bus-freq = <200000>;
86	status = "okay";
87
88	s2mps15_pmic@66 {
89		compatible = "samsung,s2mps15-pmic";
90		reg = <0x66>;
91		interrupts = <2 IRQ_TYPE_NONE>;
92		interrupt-parent = <&gpa0>;
93		pinctrl-names = "default";
94		pinctrl-0 = <&pmic_irq>;
95		wakeup-source;
96
97		s2mps15_osc: clocks {
98			compatible = "samsung,s2mps13-clk";
99			#clock-cells = <1>;
100			clock-output-names = "s2mps13_ap", "s2mps13_cp",
101				"s2mps13_bt";
102		};
103
104		regulators {
105			ldo1_reg: LDO1 {
106				regulator-name = "vdd_ldo1";
107				regulator-min-microvolt = <500000>;
108				regulator-max-microvolt = <900000>;
109				regulator-always-on;
110				regulator-enable-ramp-delay = <125>;
111			};
112
113			ldo2_reg: LDO2 {
114				regulator-name = "vqmmc-sdcard";
115				regulator-min-microvolt = <1620000>;
116				regulator-max-microvolt = <3300000>;
117				regulator-always-on;
118				regulator-enable-ramp-delay = <125>;
119			};
120
121			ldo3_reg: LDO3 {
122				regulator-name = "vdd_ldo3";
123				regulator-min-microvolt = <1620000>;
124				regulator-max-microvolt = <1980000>;
125				regulator-always-on;
126				regulator-boot-on;
127				regulator-enable-ramp-delay = <125>;
128			};
129
130			ldo4_reg: LDO4 {
131				regulator-name = "vdd_ldo4";
132				regulator-min-microvolt = <800000>;
133				regulator-max-microvolt = <1110000>;
134				regulator-always-on;
135				regulator-enable-ramp-delay = <125>;
136			};
137
138			ldo5_reg: LDO5 {
139				regulator-name = "vdd_ldo5";
140				regulator-min-microvolt = <1620000>;
141				regulator-max-microvolt = <1980000>;
142				regulator-always-on;
143				regulator-enable-ramp-delay = <125>;
144			};
145
146			ldo6_reg: LDO6 {
147				regulator-name = "vdd_ldo6";
148				regulator-min-microvolt = <2250000>;
149				regulator-max-microvolt = <3300000>;
150				regulator-enable-ramp-delay = <125>;
151			};
152
153			ldo7_reg: LDO7 {
154				regulator-name = "vdd_ldo7";
155				regulator-min-microvolt = <700000>;
156				regulator-max-microvolt = <1150000>;
157				regulator-enable-ramp-delay = <125>;
158			};
159
160			ldo8_reg: LDO8 {
161				regulator-name = "vdd_ldo8";
162				regulator-min-microvolt = <700000>;
163				regulator-max-microvolt = <1000000>;
164				regulator-enable-ramp-delay = <125>;
165			};
166
167			ldo9_reg: LDO9 {
168				regulator-name = "vdd_ldo9";
169				regulator-min-microvolt = <700000>;
170				regulator-max-microvolt = <1000000>;
171				regulator-enable-ramp-delay = <125>;
172			};
173
174			ldo10_reg: LDO10 {
175				regulator-name = "vdd_ldo10";
176				regulator-min-microvolt = <700000>;
177				regulator-max-microvolt = <1000000>;
178				regulator-enable-ramp-delay = <125>;
179			};
180
181			ldo11_reg: LDO11 {
182				regulator-name = "vdd_ldo11";
183				regulator-min-microvolt = <1000000>;
184				regulator-max-microvolt = <1300000>;
185				regulator-always-on;
186				regulator-enable-ramp-delay = <125>;
187			};
188
189			ldo12_reg: LDO12 {
190				regulator-name = "vdd_ldo12";
191				regulator-min-microvolt = <1000000>;
192				regulator-max-microvolt = <1300000>;
193				regulator-enable-ramp-delay = <125>;
194			};
195
196			ldo13_reg: LDO13 {
197				regulator-name = "vdd_ldo13";
198				regulator-min-microvolt = <1000000>;
199				regulator-max-microvolt = <1300000>;
200				regulator-always-on;
201				regulator-enable-ramp-delay = <125>;
202			};
203
204			ldo14_reg: LDO14 {
205				regulator-name = "vdd_ldo14";
206				regulator-min-microvolt = <1800000>;
207				regulator-max-microvolt = <3375000>;
208				regulator-enable-ramp-delay = <125>;
209			};
210
211			ldo17_reg: LDO17 {
212				regulator-name = "vmmc-sdcard";
213				regulator-min-microvolt = <1800000>;
214				regulator-max-microvolt = <3375000>;
215				regulator-enable-ramp-delay = <125>;
216			};
217
218			ldo18_reg: LDO18 {
219				regulator-name = "vdd_ldo18";
220				regulator-min-microvolt = <1500000>;
221				regulator-max-microvolt = <2275000>;
222				regulator-enable-ramp-delay = <125>;
223			};
224
225			ldo19_reg: LDO19 {
226				regulator-name = "vdd_ldo19";
227				regulator-min-microvolt = <1800000>;
228				regulator-max-microvolt = <3375000>;
229				regulator-enable-ramp-delay = <125>;
230			};
231
232			ldo21_reg: LDO21 {
233				regulator-name = "vdd_ldo21";
234				regulator-min-microvolt = <1800000>;
235				regulator-max-microvolt = <3375000>;
236				regulator-enable-ramp-delay = <125>;
237			};
238
239			ldo23_reg: LDO23 {
240				regulator-name = "vdd_ldo23";
241				regulator-min-microvolt = <1500000>;
242				regulator-max-microvolt = <2275000>;
243				regulator-enable-ramp-delay = <125>;
244			};
245
246			ldo25_reg: LDO25 {
247				regulator-name = "vdd_ldo25";
248				regulator-min-microvolt = <1800000>;
249				regulator-max-microvolt = <3375000>;
250				regulator-enable-ramp-delay = <125>;
251			};
252
253			ldo26_reg: LDO26 {
254				regulator-name = "vdd_ldo26";
255				regulator-min-microvolt = <700000>;
256				regulator-max-microvolt = <1470000>;
257				regulator-enable-ramp-delay = <125>;
258			};
259
260			ldo27_reg: LDO27 {
261				regulator-name = "vdd_ldo27";
262				regulator-min-microvolt = <1500000>;
263				regulator-max-microvolt = <2275000>;
264				regulator-enable-ramp-delay = <125>;
265			};
266
267			buck1_reg: BUCK1 {
268				regulator-name = "vdd_mif";
269				regulator-min-microvolt = <500000>;
270				regulator-max-microvolt = <1200000>;
271				regulator-always-on;
272				regulator-boot-on;
273				regulator-ramp-delay = <25000>;
274				regulator-enable-ramp-delay = <250>;
275			};
276
277			buck2_reg: BUCK2 {
278				regulator-name = "vdd_atlas";
279				regulator-min-microvolt = <500000>;
280				regulator-max-microvolt = <1200000>;
281				regulator-always-on;
282				regulator-boot-on;
283				regulator-ramp-delay = <12500>;
284				regulator-enable-ramp-delay = <250>;
285			};
286
287			buck4_reg: BUCK4 {
288				regulator-name = "vdd_int";
289				regulator-min-microvolt = <500000>;
290				regulator-max-microvolt = <1200000>;
291				regulator-always-on;
292				regulator-boot-on;
293				regulator-ramp-delay = <12500>;
294				regulator-enable-ramp-delay = <250>;
295			};
296
297			buck5_reg: BUCK5 {
298				regulator-name = "vdd_buck5";
299				regulator-min-microvolt = <500000>;
300				regulator-max-microvolt = <1300000>;
301				regulator-ramp-delay = <25000>;
302				regulator-enable-ramp-delay = <250>;
303			};
304
305			buck6_reg: BUCK6 {
306				regulator-name = "vdd_g3d";
307				regulator-min-microvolt = <500000>;
308				regulator-max-microvolt = <1400000>;
309				regulator-ramp-delay = <12500>;
310				regulator-enable-ramp-delay = <250>;
311			};
312
313			buck7_reg: BUCK7 {
314				regulator-name = "vdd_buck7";
315				regulator-min-microvolt = <1000000>;
316				regulator-max-microvolt = <1500000>;
317				regulator-always-on;
318				regulator-ramp-delay = <25000>;
319				regulator-enable-ramp-delay = <250>;
320			};
321
322			buck8_reg: BUCK8 {
323				regulator-name = "vdd_buck8";
324				regulator-min-microvolt = <1000000>;
325				regulator-max-microvolt = <1500000>;
326				regulator-always-on;
327				regulator-ramp-delay = <25000>;
328				regulator-enable-ramp-delay = <250>;
329			};
330
331			buck9_reg: BUCK9 {
332				regulator-name = "vdd_buck9";
333				regulator-min-microvolt = <1800000>;
334				regulator-max-microvolt = <2100000>;
335				regulator-always-on;
336				regulator-ramp-delay = <25000>;
337				regulator-enable-ramp-delay = <250>;
338			};
339
340			buck10_reg: BUCK10 {
341				regulator-name = "vdd_buck10";
342				regulator-min-microvolt = <1000000>;
343				regulator-max-microvolt = <3000000>;
344				regulator-always-on;
345				regulator-ramp-delay = <25000>;
346				regulator-enable-ramp-delay = <250>;
347			};
348		};
349	};
350};
351
352&pinctrl_alive {
353	pmic_irq: pmic-irq {
354		samsung,pins = "gpa0-2";
355		samsung,pin-pud = <EXYNOS_PIN_PULL_UP>;
356		samsung,pin-drv = <EXYNOS4_PIN_DRV_LV4>;
357	};
358};
359
360&mmc_0 {
361	status = "okay";
362	num-slots = <1>;
363	cap-mmc-highspeed;
364	mmc-hs200-1_8v;
365	non-removable;
366	card-detect-delay = <200>;
367	clock-frequency = <800000000>;
368	samsung,dw-mshc-ciu-div = <3>;
369	samsung,dw-mshc-sdr-timing = <0 4>;
370	samsung,dw-mshc-ddr-timing = <0 2>;
371	pinctrl-names = "default";
372	pinctrl-0 = <&sd0_clk &sd0_cmd &sd0_qrdy &sd0_bus1 &sd0_bus4 &sd0_bus8>;
373	bus-width = <8>;
374};
375
376&mmc_2 {
377	status = "okay";
378	num-slots = <1>;
379	cap-sd-highspeed;
380	card-detect-delay = <200>;
381	clock-frequency = <400000000>;
382	samsung,dw-mshc-ciu-div = <3>;
383	samsung,dw-mshc-sdr-timing = <2 3>;
384	samsung,dw-mshc-ddr-timing = <1 2>;
385	pinctrl-names = "default";
386	pinctrl-0 = <&sd2_clk &sd2_cmd &sd2_cd &sd2_bus1 &sd2_bus4>;
387	bus-width = <4>;
388	vmmc-supply = <&ldo17_reg>;
389	vqmmc-supply = <&ldo2_reg>;
390	disable-wp;
391};
392
393&pinctrl_bus1 {
394	usb30_vbus_en: usb30-vbus-en {
395		samsung,pins = "gph1-1";
396		samsung,pin-function = <EXYNOS_PIN_FUNC_OUTPUT>;
397		samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
398		samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
399	};
400
401	usb3drd_boost_en: usb3drd-boost-en {
402		samsung,pins = "gpf4-1";
403		samsung,pin-function = <EXYNOS_PIN_FUNC_OUTPUT>;
404		samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
405		samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
406	};
407};
408
409&usbdrd_phy {
410	vbus-supply = <&usb30_vbus_reg>;
411	vbus-boost-supply = <&usb3drd_boost_5v>;
412};
413