• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1/*
2 * Samsung's Exynos3250 based ARTIK5 module device tree source
3 *
4 * Copyright (c) 2016 Samsung Electronics Co., Ltd.
5 *		http://www.samsung.com
6 *
7 * Device tree source file for Samsung's ARTIK5 module which is based on
8 * Samsung Exynos3250 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#include "exynos3250.dtsi"
16#include <dt-bindings/clock/samsung,s2mps11.h>
17#include <dt-bindings/gpio/gpio.h>
18#include <dt-bindings/interrupt-controller/irq.h>
19
20/ {
21	compatible = "samsung,artik5", "samsung,exynos3250", "samsung,exynos3";
22
23	chosen {
24		stdout-path = &serial_2;
25	};
26
27	memory@40000000 {
28		device_type = "memory";
29		reg = <0x40000000 0x1ff00000>;
30	};
31
32	firmware@0205f000 {
33		compatible = "samsung,secure-firmware";
34		reg = <0x0205f000 0x1000>;
35	};
36
37	thermal-zones {
38		cpu_thermal: cpu-thermal {
39			cooling-maps {
40				map0 {
41					/* Corresponds to 500MHz */
42					cooling-device = <&cpu0 5 5>;
43				};
44				map1 {
45					/* Corresponds to 200MHz */
46					cooling-device = <&cpu0 8 8>;
47				};
48			};
49		};
50	};
51};
52
53&adc {
54	vdd-supply = <&ldo7_reg>;
55	assigned-clocks = <&cmu CLK_SCLK_TSADC>;
56	assigned-clock-rates = <6000000>;
57};
58
59&cpu0 {
60	cpu0-supply = <&buck2_reg>;
61};
62
63&i2c_0 {
64	#address-cells = <1>;
65	#size-cells = <0>;
66	samsung,i2c-sda-delay = <100>;
67	samsung,i2c-slave-addr = <0x10>;
68	samsung,i2c-max-bus-freq = <100000>;
69	status = "okay";
70
71	s2mps14_pmic@66 {
72		compatible = "samsung,s2mps14-pmic";
73		interrupt-parent = <&gpx3>;
74		interrupts = <5 IRQ_TYPE_NONE>;
75		reg = <0x66>;
76
77		s2mps14_osc: clocks {
78			compatible = "samsung,s2mps14-clk";
79			#clock-cells = <1>;
80			clock-output-names = "s2mps14_ap", "unused",
81				"s2mps14_bt";
82		};
83
84		regulators {
85			ldo1_reg: LDO1 {
86				/* VDD_ALIVE15x */
87				regulator-name = "VLDO1_1.0V";
88				regulator-min-microvolt = <1000000>;
89				regulator-max-microvolt = <1000000>;
90				regulator-always-on;
91			};
92
93			ldo2_reg: LDO2 {
94				/* VDDQM176 ~ VDDQM185 */
95				regulator-name = "VLDO2_1.2V";
96				regulator-min-microvolt = <1200000>;
97				regulator-max-microvolt = <1200000>;
98				regulator-always-on;
99			};
100
101			ldo3_reg: LDO3 {
102				/*
103				 * VDD1_E106 ~ VDD1_E111
104				 * DVDD_RTC_AP, DVDD_MMC2_AP
105				 */
106				regulator-name = "VLDO3_1.8V";
107				regulator-min-microvolt = <1800000>;
108				regulator-max-microvolt = <1800000>;
109				regulator-always-on;
110			};
111
112			ldo4_reg: LDO4 {
113				/*  AVDD_PLL1120 ~ AVDD_PLL11201 */
114				regulator-name = "VLDO4_1.8V";
115				regulator-min-microvolt = <1800000>;
116				regulator-max-microvolt = <1800000>;
117				regulator-always-on;
118			};
119
120			ldo5_reg: LDO5 {
121				/* VDDI_PLL_ISO141 ~ VDDI_PLL_ISO142 */
122				regulator-name = "VLDO5_1.0V";
123				regulator-min-microvolt = <1000000>;
124				regulator-max-microvolt = <1000000>;
125				regulator-always-on;
126			};
127
128			ldo6_reg: LDO6 {
129				/* VDD_USB, VDD10_HSIC */
130				regulator-name = "VLDO6_1.0V";
131				regulator-min-microvolt = <1000000>;
132				regulator-max-microvolt = <1000000>;
133				regulator-always-on;
134			};
135
136			ldo7_reg: LDO7 {
137				/*
138				 * VDD18P, AVDD18_TS, AVDD18_HSIC, AVDD_PLL2,
139				 * AVDD_ADC, AVDD_ABB_0, M4S_VDD18
140				 */
141				regulator-name = "VLDO7_1.8V";
142				regulator-min-microvolt = <1800000>;
143				regulator-max-microvolt = <1800000>;
144				regulator-always-on;
145			};
146
147			ldo8_reg: LDO8 {
148				/* AVDD33_UOTG */
149				regulator-name = "VLDO8_3.0V";
150				regulator-min-microvolt = <3000000>;
151				regulator-max-microvolt = <3000000>;
152				regulator-always-on;
153			};
154
155			ldo9_reg: LDO9 {
156				/* VDDQ_E86 ~ VDDQ_E105*/
157				regulator-name = "VLDO9_1.2V";
158				regulator-min-microvolt = <1200000>;
159				regulator-max-microvolt = <1200000>;
160				regulator-always-on;
161			};
162
163			ldo10_reg: LDO10 {
164				regulator-name = "VLDO10_1.0V";
165				regulator-min-microvolt = <1000000>;
166				regulator-max-microvolt = <1000000>;
167			};
168
169			ldo11_reg: LDO11 {
170				/* VDD74 ~ VDD75 */
171				regulator-name = "VLDO11_1.8V";
172				regulator-min-microvolt = <1800000>;
173				regulator-max-microvolt = <1800000>;
174				samsung,ext-control-gpios = <&gpk0 2 GPIO_ACTIVE_HIGH>;
175			};
176
177			ldo12_reg: LDO12 {
178				/* VDD72 ~ VDD73 */
179				regulator-name = "VLDO12_2.8V";
180				regulator-min-microvolt = <2800000>;
181				regulator-max-microvolt = <2800000>;
182				samsung,ext-control-gpios = <&gpk0 2 GPIO_ACTIVE_HIGH>;
183			};
184
185			ldo13_reg: LDO13 {
186				regulator-name = "VLDO13_2.8V";
187				regulator-min-microvolt = <2800000>;
188				regulator-max-microvolt = <2800000>;
189			};
190
191			ldo14_reg: LDO14 {
192				regulator-name = "VLDO14_2.7V";
193				regulator-min-microvolt = <2700000>;
194				regulator-max-microvolt = <2700000>;
195			};
196
197			ldo15_reg: LDO15 {
198				regulator-name = "VLDO_3.3V";
199				regulator-min-microvolt = <3300000>;
200				regulator-max-microvolt = <3300000>;
201			};
202
203			ldo16_reg: LDO16 {
204				regulator-name = "VLDO16_3.3V";
205				regulator-min-microvolt = <3300000>;
206				regulator-max-microvolt = <3300000>;
207			};
208
209			ldo17_reg: LDO17 {
210				regulator-name = "VLDO17_3.0V";
211				regulator-min-microvolt = <3000000>;
212				regulator-max-microvolt = <3000000>;
213			};
214
215			ldo18_reg: LDO18 {
216				/* DVDD_MMC2_AP */
217				regulator-name = "VLDO18_2.8V";
218				regulator-min-microvolt = <2800000>;
219				regulator-max-microvolt = <2800000>;
220			};
221
222			ldo19_reg: LDO19 {
223				regulator-name = "VLDO19_1.8V";
224				regulator-min-microvolt = <1800000>;
225				regulator-max-microvolt = <1800000>;
226			};
227
228			ldo20_reg: LDO20 {
229				regulator-name = "VLDO20_1.8V";
230				regulator-min-microvolt = <1800000>;
231				regulator-max-microvolt = <1800000>;
232			};
233
234			ldo21_reg: LDO21 {
235				regulator-name = "VLDO21_1.25V";
236				regulator-min-microvolt = <1250000>;
237				regulator-max-microvolt = <1250000>;
238			};
239
240			ldo22_reg: LDO22 {
241				regulator-name = "VLDO22_1.2V";
242				regulator-min-microvolt = <1200000>;
243				regulator-max-microvolt = <1200000>;
244			};
245
246			ldo23_reg: LDO23 {
247				/* Xi2c3_SDA/SCL, Xi2c7_SDA/SCL, WLAN_SDIO */
248				regulator-name = "VLDO23_1.8V";
249				regulator-min-microvolt = <1800000>;
250				regulator-max-microvolt = <1800000>;
251			};
252
253			ldo24_reg: LDO24 {
254				regulator-name = "VLDO24_3.0V";
255				regulator-min-microvolt = <3000000>;
256				regulator-max-microvolt = <3000000>;
257			};
258
259			ldo25_reg: LDO25 {
260				regulator-name = "VLDO25_3.0V";
261				regulator-min-microvolt = <3000000>;
262				regulator-max-microvolt = <3000000>;
263			};
264
265			buck1_reg: BUCK1 {
266				/* VDD_MIF */
267				regulator-name = "VBUCK1_1.0V";
268				regulator-min-microvolt = <800000>;
269				regulator-max-microvolt = <1000000>;
270				regulator-always-on;
271			};
272
273			buck2_reg: BUCK2 {
274				/* VDD_CPU */
275				regulator-name = "VBUCK2_1.2V";
276				regulator-min-microvolt = <850000>;
277				regulator-max-microvolt = <1200000>;
278				regulator-always-on;
279			};
280
281			buck3_reg: BUCK3 {
282				/* VDD_G3D */
283				regulator-name = "VBUCK3_1.0V";
284				regulator-min-microvolt = <850000>;
285				regulator-max-microvolt = <1000000>;
286				regulator-always-on;
287			};
288
289			buck4_reg: BUCK4 {
290				regulator-name = "VBUCK4_1.95V";
291				regulator-min-microvolt = <1950000>;
292				regulator-max-microvolt = <1950000>;
293				regulator-always-on;
294			};
295
296			buck5_reg: BUCK5 {
297				regulator-name = "VBUCK5_1.35V";
298				regulator-min-microvolt = <1350000>;
299				regulator-max-microvolt = <1350000>;
300				regulator-always-on;
301			};
302		};
303	};
304};
305
306&mshc_0 {
307	num-slots = <1>;
308	non-removable;
309	cap-mmc-highspeed;
310	card-detect-delay = <200>;
311	vmmc-supply = <&ldo12_reg>;
312	clock-frequency = <100000000>;
313	clock-freq-min-max = <400000 100000000>;
314	samsung,dw-mshc-ciu-div = <1>;
315	samsung,dw-mshc-sdr-timing = <0 1>;
316	samsung,dw-mshc-ddr-timing = <1 2>;
317	pinctrl-names = "default";
318	pinctrl-0 = <&sd0_cmd &sd0_bus1 &sd0_bus4 &sd0_bus8>;
319	bus-width = <8>;
320	status = "okay";
321};
322
323&rtc {
324	clocks = <&cmu CLK_RTC>, <&s2mps14_osc S2MPS11_CLK_AP>;
325	clock-names = "rtc", "rtc_src";
326	status = "okay";
327};
328
329&tmu {
330	status = "okay";
331};
332
333&xusbxti {
334	clock-frequency = <24000000>;
335};
336