1*724ba675SRob Herring// SPDX-License-Identifier: GPL-2.0
2*724ba675SRob Herring/*
3*724ba675SRob Herring * Hardkernel Odroid XU board device tree source
4*724ba675SRob Herring *
5*724ba675SRob Herring * Copyright (c) 2013 Samsung Electronics Co., Ltd.
6*724ba675SRob Herring *		http://www.samsung.com
7*724ba675SRob Herring * Copyright (c) 2016 Krzysztof Kozlowski
8*724ba675SRob Herring */
9*724ba675SRob Herring
10*724ba675SRob Herring/dts-v1/;
11*724ba675SRob Herring#include "exynos5410.dtsi"
12*724ba675SRob Herring#include <dt-bindings/clock/maxim,max77802.h>
13*724ba675SRob Herring#include <dt-bindings/gpio/gpio.h>
14*724ba675SRob Herring#include <dt-bindings/interrupt-controller/irq.h>
15*724ba675SRob Herring#include <dt-bindings/sound/samsung-i2s.h>
16*724ba675SRob Herring#include "exynos54xx-odroidxu-leds.dtsi"
17*724ba675SRob Herring
18*724ba675SRob Herring/ {
19*724ba675SRob Herring	model = "Hardkernel Odroid XU";
20*724ba675SRob Herring	compatible = "hardkernel,odroid-xu", "samsung,exynos5410", "samsung,exynos5";
21*724ba675SRob Herring
22*724ba675SRob Herring	aliases {
23*724ba675SRob Herring		ethernet = &ethernet;
24*724ba675SRob Herring		mmc0 = &mmc_0;
25*724ba675SRob Herring		mmc1 = &mmc_2;
26*724ba675SRob Herring	};
27*724ba675SRob Herring
28*724ba675SRob Herring	memory@40000000 {
29*724ba675SRob Herring		device_type = "memory";
30*724ba675SRob Herring		reg = <0x40000000 0x7ea00000>;
31*724ba675SRob Herring	};
32*724ba675SRob Herring
33*724ba675SRob Herring	chosen {
34*724ba675SRob Herring		stdout-path = "serial2:115200n8";
35*724ba675SRob Herring	};
36*724ba675SRob Herring
37*724ba675SRob Herring	emmc_pwrseq: pwrseq {
38*724ba675SRob Herring		pinctrl-0 = <&emmc_nrst_pin>;
39*724ba675SRob Herring		pinctrl-names = "default";
40*724ba675SRob Herring		compatible = "mmc-pwrseq-emmc";
41*724ba675SRob Herring		reset-gpios = <&gpd1 0 GPIO_ACTIVE_LOW>;
42*724ba675SRob Herring	};
43*724ba675SRob Herring
44*724ba675SRob Herring	fan0: pwm-fan {
45*724ba675SRob Herring		compatible = "pwm-fan";
46*724ba675SRob Herring		pwms = <&pwm 0 20972 0>;
47*724ba675SRob Herring		#cooling-cells = <2>;
48*724ba675SRob Herring		cooling-levels = <0 130 170 230>;
49*724ba675SRob Herring	};
50*724ba675SRob Herring
51*724ba675SRob Herring	fin_pll: xxti {
52*724ba675SRob Herring		compatible = "fixed-clock";
53*724ba675SRob Herring		clock-frequency = <24000000>;
54*724ba675SRob Herring		clock-output-names = "fin_pll";
55*724ba675SRob Herring		#clock-cells = <0>;
56*724ba675SRob Herring	};
57*724ba675SRob Herring
58*724ba675SRob Herring	firmware@2073000 {
59*724ba675SRob Herring		compatible = "samsung,secure-firmware";
60*724ba675SRob Herring		reg = <0x02073000 0x1000>;
61*724ba675SRob Herring	};
62*724ba675SRob Herring
63*724ba675SRob Herring	sound: sound {
64*724ba675SRob Herring		compatible = "simple-audio-card";
65*724ba675SRob Herring
66*724ba675SRob Herring		simple-audio-card,name = "Odroid-XU";
67*724ba675SRob Herring		simple-audio-card,widgets =
68*724ba675SRob Herring			"Headphone", "Headphone Jack",
69*724ba675SRob Herring			"Speakers", "Speakers";
70*724ba675SRob Herring		simple-audio-card,routing =
71*724ba675SRob Herring			"Headphone Jack", "HPL",
72*724ba675SRob Herring			"Headphone Jack", "HPR",
73*724ba675SRob Herring			"Headphone Jack", "MICBIAS",
74*724ba675SRob Herring			"IN1", "Headphone Jack",
75*724ba675SRob Herring			"Speakers", "SPKL",
76*724ba675SRob Herring			"Speakers", "SPKR";
77*724ba675SRob Herring
78*724ba675SRob Herring		simple-audio-card,format = "i2s";
79*724ba675SRob Herring		simple-audio-card,bitclock-master = <&link0_codec>;
80*724ba675SRob Herring		simple-audio-card,frame-master = <&link0_codec>;
81*724ba675SRob Herring
82*724ba675SRob Herring		simple-audio-card,cpu {
83*724ba675SRob Herring			sound-dai = <&audi2s0 0>;
84*724ba675SRob Herring			system-clock-frequency = <19200000>;
85*724ba675SRob Herring		};
86*724ba675SRob Herring
87*724ba675SRob Herring		link0_codec: simple-audio-card,codec {
88*724ba675SRob Herring			sound-dai = <&max98090>;
89*724ba675SRob Herring			clocks = <&audi2s0 CLK_I2S_CDCLK>;
90*724ba675SRob Herring		};
91*724ba675SRob Herring	};
92*724ba675SRob Herring};
93*724ba675SRob Herring
94*724ba675SRob Herring&adc {
95*724ba675SRob Herring	vdd-supply = <&ldo10_reg>;
96*724ba675SRob Herring	status = "okay";
97*724ba675SRob Herring};
98*724ba675SRob Herring
99*724ba675SRob Herring&audi2s0 {
100*724ba675SRob Herring	status = "okay";
101*724ba675SRob Herring};
102*724ba675SRob Herring
103*724ba675SRob Herring&clock {
104*724ba675SRob Herring	clocks = <&fin_pll>;
105*724ba675SRob Herring	assigned-clocks = <&clock CLK_FOUT_EPLL>;
106*724ba675SRob Herring	assigned-clock-rates = <192000000>;
107*724ba675SRob Herring};
108*724ba675SRob Herring
109*724ba675SRob Herring&clock_audss {
110*724ba675SRob Herring	assigned-clocks = <&clock_audss EXYNOS_MOUT_AUDSS>,
111*724ba675SRob Herring			<&clock_audss EXYNOS_MOUT_I2S>,
112*724ba675SRob Herring			<&clock_audss EXYNOS_DOUT_SRP>,
113*724ba675SRob Herring			<&clock_audss EXYNOS_DOUT_AUD_BUS>;
114*724ba675SRob Herring
115*724ba675SRob Herring	assigned-clock-parents = <&clock CLK_FOUT_EPLL>,
116*724ba675SRob Herring			<&clock_audss EXYNOS_MOUT_AUDSS>;
117*724ba675SRob Herring
118*724ba675SRob Herring	assigned-clock-rates = <0>,
119*724ba675SRob Herring			       <0>,
120*724ba675SRob Herring			       <96000000>,
121*724ba675SRob Herring			       <19200000>;
122*724ba675SRob Herring};
123*724ba675SRob Herring
124*724ba675SRob Herring&cpu0_thermal {
125*724ba675SRob Herring	polling-delay-passive = <0>;
126*724ba675SRob Herring	polling-delay = <0>;
127*724ba675SRob Herring
128*724ba675SRob Herring	trips {
129*724ba675SRob Herring		cpu_alert0: cpu-alert-0 {
130*724ba675SRob Herring			temperature = <50000>; /* millicelsius */
131*724ba675SRob Herring			hysteresis = <5000>; /* millicelsius */
132*724ba675SRob Herring			type = "active";
133*724ba675SRob Herring		};
134*724ba675SRob Herring		cpu_alert1: cpu-alert-1 {
135*724ba675SRob Herring			temperature = <60000>; /* millicelsius */
136*724ba675SRob Herring			hysteresis = <5000>; /* millicelsius */
137*724ba675SRob Herring			type = "active";
138*724ba675SRob Herring		};
139*724ba675SRob Herring		cpu_alert2: cpu-alert-2 {
140*724ba675SRob Herring			temperature = <70000>; /* millicelsius */
141*724ba675SRob Herring			hysteresis = <5000>; /* millicelsius */
142*724ba675SRob Herring			type = "active";
143*724ba675SRob Herring		};
144*724ba675SRob Herring		cpu_crit0: cpu-crit-0 {
145*724ba675SRob Herring			temperature = <120000>; /* millicelsius */
146*724ba675SRob Herring			hysteresis = <0>; /* millicelsius */
147*724ba675SRob Herring			type = "critical";
148*724ba675SRob Herring		};
149*724ba675SRob Herring	};
150*724ba675SRob Herring
151*724ba675SRob Herring	cooling-maps {
152*724ba675SRob Herring		map0 {
153*724ba675SRob Herring			trip = <&cpu_alert0>;
154*724ba675SRob Herring			cooling-device = <&fan0 0 1>;
155*724ba675SRob Herring		};
156*724ba675SRob Herring		map1 {
157*724ba675SRob Herring			trip = <&cpu_alert1>;
158*724ba675SRob Herring			cooling-device = <&fan0 1 2>;
159*724ba675SRob Herring		};
160*724ba675SRob Herring		map2 {
161*724ba675SRob Herring			trip = <&cpu_alert2>;
162*724ba675SRob Herring			cooling-device = <&fan0 2 3>;
163*724ba675SRob Herring		};
164*724ba675SRob Herring	};
165*724ba675SRob Herring};
166*724ba675SRob Herring
167*724ba675SRob Herring&hsi2c_4 {
168*724ba675SRob Herring	clock-frequency = <400000>;
169*724ba675SRob Herring	status = "okay";
170*724ba675SRob Herring
171*724ba675SRob Herring	usb3503: usb-hub@8 {
172*724ba675SRob Herring		compatible = "smsc,usb3503";
173*724ba675SRob Herring		reg = <0x08>;
174*724ba675SRob Herring
175*724ba675SRob Herring		intn-gpios = <&gpx0 7 GPIO_ACTIVE_HIGH>;
176*724ba675SRob Herring		connect-gpios = <&gpx0 6 GPIO_ACTIVE_HIGH>;
177*724ba675SRob Herring		reset-gpios = <&gpx1 4 GPIO_ACTIVE_LOW>;
178*724ba675SRob Herring		initial-mode = <1>;
179*724ba675SRob Herring
180*724ba675SRob Herring		clock-names = "refclk";
181*724ba675SRob Herring		clocks = <&pmu_system_controller 0>;
182*724ba675SRob Herring		refclk-frequency = <24000000>;
183*724ba675SRob Herring	};
184*724ba675SRob Herring
185*724ba675SRob Herring	max77802: pmic@9 {
186*724ba675SRob Herring		compatible = "maxim,max77802";
187*724ba675SRob Herring		reg = <0x9>;
188*724ba675SRob Herring		interrupt-parent = <&gpx0>;
189*724ba675SRob Herring		interrupts = <4 IRQ_TYPE_NONE>;
190*724ba675SRob Herring		pinctrl-names = "default";
191*724ba675SRob Herring		pinctrl-0 = <&max77802_irq>, <&pmic_dvs_1>, <&pmic_dvs_2>;
192*724ba675SRob Herring		wakeup-source;
193*724ba675SRob Herring		#clock-cells = <1>;
194*724ba675SRob Herring
195*724ba675SRob Herring		inl1-supply = <&buck5_reg>;
196*724ba675SRob Herring		inl2-supply = <&buck7_reg>;
197*724ba675SRob Herring		inl3-supply = <&buck9_reg>;
198*724ba675SRob Herring		inl4-supply = <&buck9_reg>;
199*724ba675SRob Herring		inl5-supply = <&buck9_reg>;
200*724ba675SRob Herring		inl6-supply = <&buck10_reg>;
201*724ba675SRob Herring		inl7-supply = <&buck9_reg>;
202*724ba675SRob Herring		/* inl9 supply is BOOST, not configured here */
203*724ba675SRob Herring		inl10-supply = <&buck7_reg>;
204*724ba675SRob Herring
205*724ba675SRob Herring		regulators {
206*724ba675SRob Herring			buck1_reg: BUCK1 {
207*724ba675SRob Herring				regulator-name = "vdd_mif";
208*724ba675SRob Herring				regulator-min-microvolt = <800000>;
209*724ba675SRob Herring				regulator-max-microvolt = <1300000>;
210*724ba675SRob Herring				regulator-always-on;
211*724ba675SRob Herring				regulator-boot-on;
212*724ba675SRob Herring			};
213*724ba675SRob Herring
214*724ba675SRob Herring			buck2_reg: BUCK2 {
215*724ba675SRob Herring				regulator-name = "vdd_arm";
216*724ba675SRob Herring				regulator-min-microvolt = <800000>;
217*724ba675SRob Herring				regulator-max-microvolt = <1500000>;
218*724ba675SRob Herring				regulator-always-on;
219*724ba675SRob Herring				regulator-boot-on;
220*724ba675SRob Herring			};
221*724ba675SRob Herring
222*724ba675SRob Herring			buck3_reg: BUCK3 {
223*724ba675SRob Herring				regulator-name = "vdd_int";
224*724ba675SRob Herring				regulator-min-microvolt = <800000>;
225*724ba675SRob Herring				regulator-max-microvolt = <1400000>;
226*724ba675SRob Herring				regulator-always-on;
227*724ba675SRob Herring				regulator-boot-on;
228*724ba675SRob Herring			};
229*724ba675SRob Herring
230*724ba675SRob Herring			buck4_reg: BUCK4 {
231*724ba675SRob Herring				regulator-name = "vdd_g3d";
232*724ba675SRob Herring				regulator-min-microvolt = <800000>;
233*724ba675SRob Herring				regulator-max-microvolt = <1400000>;
234*724ba675SRob Herring				regulator-always-on;
235*724ba675SRob Herring				regulator-boot-on;
236*724ba675SRob Herring			};
237*724ba675SRob Herring
238*724ba675SRob Herring			buck5_reg: BUCK5 {
239*724ba675SRob Herring				regulator-name = "vdd_mem";
240*724ba675SRob Herring				regulator-min-microvolt = <800000>;
241*724ba675SRob Herring				regulator-max-microvolt = <1500000>;
242*724ba675SRob Herring				regulator-always-on;
243*724ba675SRob Herring				regulator-boot-on;
244*724ba675SRob Herring			};
245*724ba675SRob Herring
246*724ba675SRob Herring			buck6_reg: BUCK6 {
247*724ba675SRob Herring				regulator-name = "vdd_kfc";
248*724ba675SRob Herring				regulator-min-microvolt = <800000>;
249*724ba675SRob Herring				regulator-max-microvolt = <1500000>;
250*724ba675SRob Herring				regulator-always-on;
251*724ba675SRob Herring				regulator-boot-on;
252*724ba675SRob Herring			};
253*724ba675SRob Herring
254*724ba675SRob Herring			buck7_reg: BUCK7 {
255*724ba675SRob Herring				regulator-name = "buck7";
256*724ba675SRob Herring				regulator-min-microvolt = <1300000>;
257*724ba675SRob Herring				regulator-max-microvolt = <1300000>;
258*724ba675SRob Herring				regulator-always-on;
259*724ba675SRob Herring				regulator-boot-on;
260*724ba675SRob Herring			};
261*724ba675SRob Herring
262*724ba675SRob Herring			buck8_reg: BUCK8 {
263*724ba675SRob Herring				/* vdd_mmc0 */
264*724ba675SRob Herring				regulator-name = "vddf_2v85";
265*724ba675SRob Herring				regulator-min-microvolt = <2850000>;
266*724ba675SRob Herring				regulator-max-microvolt = <2850000>;
267*724ba675SRob Herring				regulator-always-on;
268*724ba675SRob Herring				regulator-boot-on;
269*724ba675SRob Herring			};
270*724ba675SRob Herring
271*724ba675SRob Herring			buck9_reg: BUCK9 {
272*724ba675SRob Herring				regulator-name = "buck9";
273*724ba675SRob Herring				regulator-min-microvolt = <3000000>;
274*724ba675SRob Herring				regulator-max-microvolt = <3000000>;
275*724ba675SRob Herring				regulator-always-on;
276*724ba675SRob Herring				regulator-boot-on;
277*724ba675SRob Herring			};
278*724ba675SRob Herring
279*724ba675SRob Herring			buck10_reg: BUCK10 {
280*724ba675SRob Herring				regulator-name = "buck10";
281*724ba675SRob Herring				regulator-min-microvolt = <2950000>;
282*724ba675SRob Herring				regulator-max-microvolt = <2950000>;
283*724ba675SRob Herring				regulator-always-on;
284*724ba675SRob Herring				regulator-boot-on;
285*724ba675SRob Herring			};
286*724ba675SRob Herring
287*724ba675SRob Herring			ldo1_reg: LDO1 {
288*724ba675SRob Herring				regulator-name = "vdd_alive";
289*724ba675SRob Herring				regulator-min-microvolt = <1000000>;
290*724ba675SRob Herring				regulator-max-microvolt = <1000000>;
291*724ba675SRob Herring				regulator-always-on;
292*724ba675SRob Herring			};
293*724ba675SRob Herring
294*724ba675SRob Herring			ldo2_reg: LDO2 {
295*724ba675SRob Herring				regulator-name = "vddq_m1_m2";
296*724ba675SRob Herring				regulator-min-microvolt = <1200000>;
297*724ba675SRob Herring				regulator-max-microvolt = <1200000>;
298*724ba675SRob Herring				regulator-always-on;
299*724ba675SRob Herring			};
300*724ba675SRob Herring
301*724ba675SRob Herring			ldo3_reg: LDO3 {
302*724ba675SRob Herring				regulator-name = "vddq_gpio";
303*724ba675SRob Herring				regulator-min-microvolt = <1800000>;
304*724ba675SRob Herring				regulator-max-microvolt = <1800000>;
305*724ba675SRob Herring				regulator-always-on;
306*724ba675SRob Herring			};
307*724ba675SRob Herring
308*724ba675SRob Herring			ldo4_reg: LDO4 {
309*724ba675SRob Herring				regulator-name = "vddq_mmc2";
310*724ba675SRob Herring				regulator-min-microvolt = <1800000>;
311*724ba675SRob Herring				regulator-max-microvolt = <3000000>;
312*724ba675SRob Herring				/* Having it off prevents reboot */
313*724ba675SRob Herring				regulator-always-on;
314*724ba675SRob Herring			};
315*724ba675SRob Herring
316*724ba675SRob Herring			ldo5_reg: LDO5 {
317*724ba675SRob Herring				regulator-name = "vdd18_hsic";
318*724ba675SRob Herring				regulator-min-microvolt = <1800000>;
319*724ba675SRob Herring				regulator-max-microvolt = <1800000>;
320*724ba675SRob Herring				regulator-always-on;
321*724ba675SRob Herring			};
322*724ba675SRob Herring
323*724ba675SRob Herring			ldo6_reg: LDO6 {
324*724ba675SRob Herring				regulator-name = "vdd18_bpll";
325*724ba675SRob Herring				regulator-min-microvolt = <1800000>;
326*724ba675SRob Herring				regulator-max-microvolt = <1800000>;
327*724ba675SRob Herring				regulator-always-on;
328*724ba675SRob Herring			};
329*724ba675SRob Herring
330*724ba675SRob Herring			ldo7_reg: LDO7 {
331*724ba675SRob Herring				regulator-name = "vddq_lcd";
332*724ba675SRob Herring				regulator-min-microvolt = <1800000>;
333*724ba675SRob Herring				regulator-max-microvolt = <1800000>;
334*724ba675SRob Herring				/* Supplies also GPK and GPJ */
335*724ba675SRob Herring				regulator-always-on;
336*724ba675SRob Herring			};
337*724ba675SRob Herring
338*724ba675SRob Herring			ldo8_reg: LDO8 {
339*724ba675SRob Herring				regulator-name = "vdd10_hdmi";
340*724ba675SRob Herring				regulator-min-microvolt = <1000000>;
341*724ba675SRob Herring				regulator-max-microvolt = <1000000>;
342*724ba675SRob Herring				regulator-always-on;
343*724ba675SRob Herring			};
344*724ba675SRob Herring
345*724ba675SRob Herring			ldo9_reg: LDO9 {
346*724ba675SRob Herring				regulator-name = "ldo9";
347*724ba675SRob Herring			};
348*724ba675SRob Herring
349*724ba675SRob Herring			ldo10_reg: LDO10 {
350*724ba675SRob Herring				regulator-name = "vdd18_mipi";
351*724ba675SRob Herring				regulator-min-microvolt = <1800000>;
352*724ba675SRob Herring				regulator-max-microvolt = <1800000>;
353*724ba675SRob Herring				regulator-always-on;
354*724ba675SRob Herring			};
355*724ba675SRob Herring
356*724ba675SRob Herring			ldo11_reg: LDO11 {
357*724ba675SRob Herring				regulator-name = "vddq_mmc01";
358*724ba675SRob Herring				regulator-min-microvolt = <1800000>;
359*724ba675SRob Herring				regulator-max-microvolt = <1800000>;
360*724ba675SRob Herring				/*
361*724ba675SRob Herring				 * Having it off prevents accessing MMC after
362*724ba675SRob Herring				 * reboot with error:
363*724ba675SRob Herring				 * MMC Device 1: Clock OFF has been failed.
364*724ba675SRob Herring				 */
365*724ba675SRob Herring				regulator-always-on;
366*724ba675SRob Herring			};
367*724ba675SRob Herring
368*724ba675SRob Herring			ldo12_reg: LDO12 {
369*724ba675SRob Herring				regulator-name = "vdd33_usb3";
370*724ba675SRob Herring				regulator-min-microvolt = <3300000>;
371*724ba675SRob Herring				regulator-max-microvolt = <3300000>;
372*724ba675SRob Herring				regulator-always-on;
373*724ba675SRob Herring			};
374*724ba675SRob Herring
375*724ba675SRob Herring			ldo13_reg: LDO13 {
376*724ba675SRob Herring				regulator-name = "vddq_abbg0";
377*724ba675SRob Herring				regulator-min-microvolt = <1800000>;
378*724ba675SRob Herring				regulator-max-microvolt = <1800000>;
379*724ba675SRob Herring				regulator-always-on;
380*724ba675SRob Herring			};
381*724ba675SRob Herring
382*724ba675SRob Herring			ldo14_reg: LDO14 {
383*724ba675SRob Herring				regulator-name = "vddq_abbg1";
384*724ba675SRob Herring				regulator-min-microvolt = <1800000>;
385*724ba675SRob Herring				regulator-max-microvolt = <1800000>;
386*724ba675SRob Herring				regulator-always-on;
387*724ba675SRob Herring			};
388*724ba675SRob Herring
389*724ba675SRob Herring			ldo15_reg: LDO15 {
390*724ba675SRob Herring				regulator-name = "vdd10_usb3";
391*724ba675SRob Herring				regulator-min-microvolt = <1000000>;
392*724ba675SRob Herring				regulator-max-microvolt = <1000000>;
393*724ba675SRob Herring				regulator-always-on;
394*724ba675SRob Herring			};
395*724ba675SRob Herring
396*724ba675SRob Herring			ldo17_reg: LDO17 {
397*724ba675SRob Herring				regulator-name = "cam_sensor_core";
398*724ba675SRob Herring				regulator-min-microvolt = <1200000>;
399*724ba675SRob Herring				regulator-max-microvolt = <1200000>;
400*724ba675SRob Herring			};
401*724ba675SRob Herring
402*724ba675SRob Herring			ldo18_reg: LDO18 {
403*724ba675SRob Herring				regulator-name = "ldo18";
404*724ba675SRob Herring				regulator-min-microvolt = <1800000>;
405*724ba675SRob Herring				regulator-max-microvolt = <1800000>;
406*724ba675SRob Herring			};
407*724ba675SRob Herring
408*724ba675SRob Herring			ldo19_reg: LDO19 {
409*724ba675SRob Herring				regulator-name = "ldo19";
410*724ba675SRob Herring			};
411*724ba675SRob Herring
412*724ba675SRob Herring			ldo20_reg: LDO20 {
413*724ba675SRob Herring				regulator-name = "vdd_mmc0";
414*724ba675SRob Herring				regulator-min-microvolt = <1800000>;
415*724ba675SRob Herring				regulator-max-microvolt = <1800000>;
416*724ba675SRob Herring			};
417*724ba675SRob Herring
418*724ba675SRob Herring			ldo21_reg: LDO21 {
419*724ba675SRob Herring				/* vdd_mmc2 */
420*724ba675SRob Herring				regulator-name = "vddf_2v8";
421*724ba675SRob Herring				regulator-min-microvolt = <2850000>;
422*724ba675SRob Herring				regulator-max-microvolt = <2850000>;
423*724ba675SRob Herring			};
424*724ba675SRob Herring
425*724ba675SRob Herring			ldo23_reg: LDO23 {
426*724ba675SRob Herring				regulator-name = "dp_p3v3";
427*724ba675SRob Herring				regulator-min-microvolt = <3300000>;
428*724ba675SRob Herring				regulator-max-microvolt = <3300000>;
429*724ba675SRob Herring				regulator-always-on;
430*724ba675SRob Herring			};
431*724ba675SRob Herring
432*724ba675SRob Herring			ldo24_reg: LDO24 {
433*724ba675SRob Herring				regulator-name = "cam_af";
434*724ba675SRob Herring				regulator-min-microvolt = <2800000>;
435*724ba675SRob Herring				regulator-max-microvolt = <2800000>;
436*724ba675SRob Herring			};
437*724ba675SRob Herring
438*724ba675SRob Herring			ldo25_reg: LDO25 {
439*724ba675SRob Herring				regulator-name = "eth_p3v3";
440*724ba675SRob Herring				regulator-min-microvolt = <3300000>;
441*724ba675SRob Herring				regulator-max-microvolt = <3300000>;
442*724ba675SRob Herring				regulator-always-on;
443*724ba675SRob Herring			};
444*724ba675SRob Herring
445*724ba675SRob Herring			ldo26_reg: LDO26 {
446*724ba675SRob Herring				regulator-name = "usb30_extclk";
447*724ba675SRob Herring				regulator-min-microvolt = <3300000>;
448*724ba675SRob Herring				regulator-max-microvolt = <3300000>;
449*724ba675SRob Herring				regulator-always-on;
450*724ba675SRob Herring			};
451*724ba675SRob Herring
452*724ba675SRob Herring			ldo27_reg: LDO27 {
453*724ba675SRob Herring				regulator-name = "ldo27";
454*724ba675SRob Herring			};
455*724ba675SRob Herring
456*724ba675SRob Herring			ldo28_reg: LDO28 {
457*724ba675SRob Herring				regulator-name = "ldo28";
458*724ba675SRob Herring			};
459*724ba675SRob Herring
460*724ba675SRob Herring			ldo29_reg: LDO29 {
461*724ba675SRob Herring				regulator-name = "ldo29";
462*724ba675SRob Herring			};
463*724ba675SRob Herring
464*724ba675SRob Herring			ldo30_reg: LDO30 {
465*724ba675SRob Herring				regulator-name = "vddq_e1_e2";
466*724ba675SRob Herring				regulator-min-microvolt = <1200000>;
467*724ba675SRob Herring				regulator-max-microvolt = <1200000>;
468*724ba675SRob Herring				regulator-always-on;
469*724ba675SRob Herring			};
470*724ba675SRob Herring
471*724ba675SRob Herring			/* On revisions with ti,ina231 this is sensor VS */
472*724ba675SRob Herring			ldo32_reg: LDO32 {
473*724ba675SRob Herring				regulator-name = "vs_power_meter";
474*724ba675SRob Herring				regulator-min-microvolt = <3300000>;
475*724ba675SRob Herring				regulator-max-microvolt = <3300000>;
476*724ba675SRob Herring			};
477*724ba675SRob Herring
478*724ba675SRob Herring			ldo33_reg: LDO33 {
479*724ba675SRob Herring				regulator-name = "ldo33";
480*724ba675SRob Herring			};
481*724ba675SRob Herring
482*724ba675SRob Herring			ldo34_reg: LDO34 {
483*724ba675SRob Herring				regulator-name = "ldo34";
484*724ba675SRob Herring			};
485*724ba675SRob Herring
486*724ba675SRob Herring			ldo35_reg: LDO35 {
487*724ba675SRob Herring				regulator-name = "ldo35";
488*724ba675SRob Herring			};
489*724ba675SRob Herring		};
490*724ba675SRob Herring	};
491*724ba675SRob Herring};
492*724ba675SRob Herring
493*724ba675SRob Herring&i2c_1 {
494*724ba675SRob Herring	status = "okay";
495*724ba675SRob Herring	max98090: audio-codec@10 {
496*724ba675SRob Herring		compatible = "maxim,max98090";
497*724ba675SRob Herring		reg = <0x10>;
498*724ba675SRob Herring		interrupt-parent = <&gpj3>;
499*724ba675SRob Herring		interrupts = <0 IRQ_TYPE_NONE>;
500*724ba675SRob Herring		clocks = <&audi2s0 CLK_I2S_CDCLK>;
501*724ba675SRob Herring		clock-names = "mclk";
502*724ba675SRob Herring		#sound-dai-cells = <0>;
503*724ba675SRob Herring	};
504*724ba675SRob Herring};
505*724ba675SRob Herring
506*724ba675SRob Herring&mmc_0 {
507*724ba675SRob Herring	status = "okay";
508*724ba675SRob Herring	mmc-pwrseq = <&emmc_pwrseq>;
509*724ba675SRob Herring	cd-gpios = <&gpc0 2 GPIO_ACTIVE_LOW>;
510*724ba675SRob Herring	card-detect-delay = <200>;
511*724ba675SRob Herring	samsung,dw-mshc-ciu-div = <3>;
512*724ba675SRob Herring	samsung,dw-mshc-sdr-timing = <0 4>;
513*724ba675SRob Herring	samsung,dw-mshc-ddr-timing = <0 2>;
514*724ba675SRob Herring	pinctrl-names = "default";
515*724ba675SRob Herring	pinctrl-0 = <&sd0_clk &sd0_cmd &sd0_bus1 &sd0_bus4 &sd0_bus8 &sd0_cd>;
516*724ba675SRob Herring	bus-width = <8>;
517*724ba675SRob Herring	cap-mmc-highspeed;
518*724ba675SRob Herring	mmc-ddr-1_8v;
519*724ba675SRob Herring	mmc-hs200-1_8v;
520*724ba675SRob Herring	vmmc-supply = <&ldo20_reg>;
521*724ba675SRob Herring	vqmmc-supply = <&ldo11_reg>;
522*724ba675SRob Herring};
523*724ba675SRob Herring
524*724ba675SRob Herring&mmc_2 {
525*724ba675SRob Herring	status = "okay";
526*724ba675SRob Herring	card-detect-delay = <200>;
527*724ba675SRob Herring	samsung,dw-mshc-ciu-div = <3>;
528*724ba675SRob Herring	samsung,dw-mshc-sdr-timing = <0 4>;
529*724ba675SRob Herring	samsung,dw-mshc-ddr-timing = <0 2>;
530*724ba675SRob Herring	pinctrl-names = "default";
531*724ba675SRob Herring	pinctrl-0 = <&sd2_clk &sd2_cmd &sd2_cd &sd2_bus1 &sd2_bus4 &sd2_wp>;
532*724ba675SRob Herring	bus-width = <4>;
533*724ba675SRob Herring	cap-sd-highspeed;
534*724ba675SRob Herring	vmmc-supply = <&ldo21_reg>;
535*724ba675SRob Herring	vqmmc-supply = <&ldo4_reg>;
536*724ba675SRob Herring};
537*724ba675SRob Herring
538*724ba675SRob Herring&pinctrl_0 {
539*724ba675SRob Herring	emmc_nrst_pin: emmc-nrst-pins {
540*724ba675SRob Herring		samsung,pins = "gpd1-0";
541*724ba675SRob Herring		samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
542*724ba675SRob Herring		samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
543*724ba675SRob Herring		samsung,pin-drv = <EXYNOS5420_PIN_DRV_LV1>;
544*724ba675SRob Herring	};
545*724ba675SRob Herring
546*724ba675SRob Herring	sd2_wp: sd2-wp-pins {
547*724ba675SRob Herring		samsung,pins = "gpm5-0";
548*724ba675SRob Herring		samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
549*724ba675SRob Herring		/* Pin is floating so be sure to disable write-protect */
550*724ba675SRob Herring		samsung,pin-pud = <EXYNOS_PIN_PULL_DOWN>;
551*724ba675SRob Herring		samsung,pin-drv = <EXYNOS5420_PIN_DRV_LV4>;
552*724ba675SRob Herring	};
553*724ba675SRob Herring
554*724ba675SRob Herring	pmic_dvs_2: pmic-dvs-2-pins {
555*724ba675SRob Herring		samsung,pins = "gpx0-0", "gpx0-1";
556*724ba675SRob Herring		samsung,pin-function = <EXYNOS_PIN_FUNC_OUTPUT>;
557*724ba675SRob Herring		samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
558*724ba675SRob Herring		samsung,pin-drv = <EXYNOS5420_PIN_DRV_LV1>;
559*724ba675SRob Herring	};
560*724ba675SRob Herring
561*724ba675SRob Herring	pmic_dvs_1: pmic-dvs-1-pins {
562*724ba675SRob Herring		samsung,pins = "gpx0-2";
563*724ba675SRob Herring		samsung,pin-function = <EXYNOS_PIN_FUNC_OUTPUT>;
564*724ba675SRob Herring		samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
565*724ba675SRob Herring		samsung,pin-drv = <EXYNOS5420_PIN_DRV_LV1>;
566*724ba675SRob Herring		samsung,pin-val = <1>;
567*724ba675SRob Herring	};
568*724ba675SRob Herring
569*724ba675SRob Herring	max77802_irq: max77802-irq-pins {
570*724ba675SRob Herring		samsung,pins = "gpx0-4";
571*724ba675SRob Herring		samsung,pin-function = <EXYNOS_PIN_FUNC_F>;
572*724ba675SRob Herring		samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
573*724ba675SRob Herring		samsung,pin-drv = <EXYNOS5420_PIN_DRV_LV1>;
574*724ba675SRob Herring	};
575*724ba675SRob Herring};
576*724ba675SRob Herring
577*724ba675SRob Herring&pwm {
578*724ba675SRob Herring	/*
579*724ba675SRob Herring	 * PWM 0 -- fan
580*724ba675SRob Herring	 * PWM 1 -- Green LED
581*724ba675SRob Herring	 * PWM 2 -- Blue LED
582*724ba675SRob Herring	 * PWM 3 -- on MIPI connector for backlight
583*724ba675SRob Herring	 */
584*724ba675SRob Herring	pinctrl-0 = <&pwm0_out &pwm1_out &pwm2_out &pwm3_out>;
585*724ba675SRob Herring	pinctrl-names = "default";
586*724ba675SRob Herring	status = "okay";
587*724ba675SRob Herring};
588*724ba675SRob Herring
589*724ba675SRob Herring&rtc {
590*724ba675SRob Herring	status = "okay";
591*724ba675SRob Herring	clocks = <&clock CLK_RTC>, <&max77802 MAX77802_CLK_32K_AP>;
592*724ba675SRob Herring	clock-names = "rtc", "rtc_src";
593*724ba675SRob Herring};
594*724ba675SRob Herring
595*724ba675SRob Herring&serial_0 {
596*724ba675SRob Herring	status = "okay";
597*724ba675SRob Herring};
598*724ba675SRob Herring
599*724ba675SRob Herring&serial_1 {
600*724ba675SRob Herring	status = "okay";
601*724ba675SRob Herring};
602*724ba675SRob Herring
603*724ba675SRob Herring&serial_2 {
604*724ba675SRob Herring	status = "okay";
605*724ba675SRob Herring};
606*724ba675SRob Herring
607*724ba675SRob Herring&serial_3 {
608*724ba675SRob Herring	status = "okay";
609*724ba675SRob Herring};
610*724ba675SRob Herring
611*724ba675SRob Herring&tmu_cpu0 {
612*724ba675SRob Herring	vtmu-supply = <&ldo10_reg>;
613*724ba675SRob Herring};
614*724ba675SRob Herring
615*724ba675SRob Herring&tmu_cpu1 {
616*724ba675SRob Herring	vtmu-supply = <&ldo10_reg>;
617*724ba675SRob Herring};
618*724ba675SRob Herring
619*724ba675SRob Herring&tmu_cpu2 {
620*724ba675SRob Herring	vtmu-supply = <&ldo10_reg>;
621*724ba675SRob Herring};
622*724ba675SRob Herring
623*724ba675SRob Herring&tmu_cpu3 {
624*724ba675SRob Herring	vtmu-supply = <&ldo10_reg>;
625*724ba675SRob Herring};
626*724ba675SRob Herring
627*724ba675SRob Herring&usb3_0_oc {
628*724ba675SRob Herring	/* External pull up */
629*724ba675SRob Herring	samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
630*724ba675SRob Herring};
631*724ba675SRob Herring
632*724ba675SRob Herring&usb3_1_oc {
633*724ba675SRob Herring	/* External pull up */
634*724ba675SRob Herring	samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
635*724ba675SRob Herring};
636*724ba675SRob Herring
637*724ba675SRob Herring&usbdrd_dwc3_0 {
638*724ba675SRob Herring	dr_mode = "peripheral";
639*724ba675SRob Herring};
640*724ba675SRob Herring
641*724ba675SRob Herring&usbdrd_dwc3_1 {
642*724ba675SRob Herring	dr_mode = "host";
643*724ba675SRob Herring};
644*724ba675SRob Herring
645*724ba675SRob Herring&usbdrd3_0 {
646*724ba675SRob Herring	vdd33-supply = <&ldo12_reg>;
647*724ba675SRob Herring	vdd10-supply = <&ldo15_reg>;
648*724ba675SRob Herring};
649*724ba675SRob Herring
650*724ba675SRob Herring&usbdrd3_1 {
651*724ba675SRob Herring	vdd33-supply = <&ldo12_reg>;
652*724ba675SRob Herring	vdd10-supply = <&ldo15_reg>;
653*724ba675SRob Herring};
654*724ba675SRob Herring
655*724ba675SRob Herring&usbhost2 {
656*724ba675SRob Herring	#address-cells = <1>;
657*724ba675SRob Herring	#size-cells = <0>;
658*724ba675SRob Herring
659*724ba675SRob Herring	ethernet: ethernet@2 {
660*724ba675SRob Herring		compatible = "usb424,9730";
661*724ba675SRob Herring		reg = <2>;
662*724ba675SRob Herring		local-mac-address = [00 00 00 00 00 00]; /* Filled in by a bootloader */
663*724ba675SRob Herring	};
664*724ba675SRob Herring};
665