xref: /freebsd-src/sys/contrib/device-tree/src/arm/samsung/exynos3250-monk.dts (revision f126890ac5386406dadf7c4cfa9566cbb56537c5)
1*f126890aSEmmanuel Vadot// SPDX-License-Identifier: GPL-2.0
2*f126890aSEmmanuel Vadot/*
3*f126890aSEmmanuel Vadot * Samsung's Exynos3250 based Monk board device tree source
4*f126890aSEmmanuel Vadot *
5*f126890aSEmmanuel Vadot * Copyright (c) 2014 Samsung Electronics Co., Ltd.
6*f126890aSEmmanuel Vadot *		http://www.samsung.com
7*f126890aSEmmanuel Vadot *
8*f126890aSEmmanuel Vadot * Device tree source file for Samsung's Monk board which is based on
9*f126890aSEmmanuel Vadot * Samsung Exynos3250 SoC.
10*f126890aSEmmanuel Vadot */
11*f126890aSEmmanuel Vadot
12*f126890aSEmmanuel Vadot/dts-v1/;
13*f126890aSEmmanuel Vadot#include "exynos3250.dtsi"
14*f126890aSEmmanuel Vadot#include "exynos4412-ppmu-common.dtsi"
15*f126890aSEmmanuel Vadot#include <dt-bindings/input/input.h>
16*f126890aSEmmanuel Vadot#include <dt-bindings/gpio/gpio.h>
17*f126890aSEmmanuel Vadot#include <dt-bindings/clock/samsung,s2mps11.h>
18*f126890aSEmmanuel Vadot
19*f126890aSEmmanuel Vadot/ {
20*f126890aSEmmanuel Vadot	model = "Samsung Monk board";
21*f126890aSEmmanuel Vadot	compatible = "samsung,monk", "samsung,exynos3250", "samsung,exynos3";
22*f126890aSEmmanuel Vadot
23*f126890aSEmmanuel Vadot	aliases {
24*f126890aSEmmanuel Vadot		i2c7 = &i2c_max77836;
25*f126890aSEmmanuel Vadot		mmc0 = &mshc_0;
26*f126890aSEmmanuel Vadot	};
27*f126890aSEmmanuel Vadot
28*f126890aSEmmanuel Vadot	memory@40000000 {
29*f126890aSEmmanuel Vadot		device_type = "memory";
30*f126890aSEmmanuel Vadot		reg = <0x40000000 0x1ff00000>;
31*f126890aSEmmanuel Vadot	};
32*f126890aSEmmanuel Vadot
33*f126890aSEmmanuel Vadot	firmware@205f000 {
34*f126890aSEmmanuel Vadot		compatible = "samsung,secure-firmware";
35*f126890aSEmmanuel Vadot		reg = <0x0205f000 0x1000>;
36*f126890aSEmmanuel Vadot	};
37*f126890aSEmmanuel Vadot
38*f126890aSEmmanuel Vadot	gpio-keys {
39*f126890aSEmmanuel Vadot		compatible = "gpio-keys";
40*f126890aSEmmanuel Vadot
41*f126890aSEmmanuel Vadot		power-key {
42*f126890aSEmmanuel Vadot			gpios = <&gpx2 7 GPIO_ACTIVE_LOW>;
43*f126890aSEmmanuel Vadot			linux,code = <KEY_POWER>;
44*f126890aSEmmanuel Vadot			label = "power key";
45*f126890aSEmmanuel Vadot			debounce-interval = <10>;
46*f126890aSEmmanuel Vadot			wakeup-source;
47*f126890aSEmmanuel Vadot		};
48*f126890aSEmmanuel Vadot	};
49*f126890aSEmmanuel Vadot
50*f126890aSEmmanuel Vadot	vemmc_reg: voltage-regulator-0 {
51*f126890aSEmmanuel Vadot		compatible = "regulator-fixed";
52*f126890aSEmmanuel Vadot		regulator-name = "V_EMMC_2.8V-fixed";
53*f126890aSEmmanuel Vadot		regulator-min-microvolt = <2800000>;
54*f126890aSEmmanuel Vadot		regulator-max-microvolt = <2800000>;
55*f126890aSEmmanuel Vadot		gpio = <&gpk0 2 GPIO_ACTIVE_HIGH>;
56*f126890aSEmmanuel Vadot		enable-active-high;
57*f126890aSEmmanuel Vadot	};
58*f126890aSEmmanuel Vadot
59*f126890aSEmmanuel Vadot	i2c_max77836: i2c-gpio-0 {
60*f126890aSEmmanuel Vadot		compatible = "i2c-gpio";
61*f126890aSEmmanuel Vadot		sda-gpios = <&gpd0 2 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
62*f126890aSEmmanuel Vadot		scl-gpios = <&gpd0 3 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
63*f126890aSEmmanuel Vadot		#address-cells = <1>;
64*f126890aSEmmanuel Vadot		#size-cells = <0>;
65*f126890aSEmmanuel Vadot
66*f126890aSEmmanuel Vadot		max77836: pmic@25 {
67*f126890aSEmmanuel Vadot			compatible = "maxim,max77836";
68*f126890aSEmmanuel Vadot			interrupt-parent = <&gpx1>;
69*f126890aSEmmanuel Vadot			interrupts = <5 IRQ_TYPE_NONE>;
70*f126890aSEmmanuel Vadot			reg = <0x25>;
71*f126890aSEmmanuel Vadot			wakeup-source;
72*f126890aSEmmanuel Vadot
73*f126890aSEmmanuel Vadot			extcon {
74*f126890aSEmmanuel Vadot				compatible = "maxim,max77836-muic";
75*f126890aSEmmanuel Vadot			};
76*f126890aSEmmanuel Vadot
77*f126890aSEmmanuel Vadot			regulators {
78*f126890aSEmmanuel Vadot				compatible = "maxim,max77836-regulator";
79*f126890aSEmmanuel Vadot				safeout_reg: SAFEOUT {
80*f126890aSEmmanuel Vadot					regulator-name = "SAFEOUT";
81*f126890aSEmmanuel Vadot				};
82*f126890aSEmmanuel Vadot
83*f126890aSEmmanuel Vadot				charger_reg: CHARGER {
84*f126890aSEmmanuel Vadot					regulator-name = "CHARGER";
85*f126890aSEmmanuel Vadot					regulator-min-microamp = <45000>;
86*f126890aSEmmanuel Vadot					regulator-max-microamp = <475000>;
87*f126890aSEmmanuel Vadot					regulator-boot-on;
88*f126890aSEmmanuel Vadot				};
89*f126890aSEmmanuel Vadot
90*f126890aSEmmanuel Vadot				motor_reg: LDO1 {
91*f126890aSEmmanuel Vadot					regulator-name = "MOT_2.7V";
92*f126890aSEmmanuel Vadot					regulator-min-microvolt = <1100000>;
93*f126890aSEmmanuel Vadot					regulator-max-microvolt = <2700000>;
94*f126890aSEmmanuel Vadot				};
95*f126890aSEmmanuel Vadot
96*f126890aSEmmanuel Vadot				LDO2 {
97*f126890aSEmmanuel Vadot					regulator-name = "UNUSED_LDO2";
98*f126890aSEmmanuel Vadot					regulator-min-microvolt = <800000>;
99*f126890aSEmmanuel Vadot					regulator-max-microvolt = <3950000>;
100*f126890aSEmmanuel Vadot				};
101*f126890aSEmmanuel Vadot			};
102*f126890aSEmmanuel Vadot
103*f126890aSEmmanuel Vadot			charger {
104*f126890aSEmmanuel Vadot				compatible = "maxim,max77836-charger";
105*f126890aSEmmanuel Vadot
106*f126890aSEmmanuel Vadot				maxim,constant-uvolt = <4350000>;
107*f126890aSEmmanuel Vadot				maxim,fast-charge-uamp = <225000>;
108*f126890aSEmmanuel Vadot				maxim,eoc-uamp = <7500>;
109*f126890aSEmmanuel Vadot				maxim,ovp-uvolt = <6500000>;
110*f126890aSEmmanuel Vadot			};
111*f126890aSEmmanuel Vadot		};
112*f126890aSEmmanuel Vadot	};
113*f126890aSEmmanuel Vadot
114*f126890aSEmmanuel Vadot	haptics {
115*f126890aSEmmanuel Vadot		compatible = "regulator-haptic";
116*f126890aSEmmanuel Vadot		haptic-supply = <&motor_reg>;
117*f126890aSEmmanuel Vadot		min-microvolt = <1100000>;
118*f126890aSEmmanuel Vadot		max-microvolt = <2700000>;
119*f126890aSEmmanuel Vadot	};
120*f126890aSEmmanuel Vadot
121*f126890aSEmmanuel Vadot	thermal-zones {
122*f126890aSEmmanuel Vadot		cpu_thermal: cpu-thermal {
123*f126890aSEmmanuel Vadot			cooling-maps {
124*f126890aSEmmanuel Vadot				map0 {
125*f126890aSEmmanuel Vadot					/* Correspond to 500MHz at freq_table */
126*f126890aSEmmanuel Vadot					cooling-device = <&cpu0 5 5>,
127*f126890aSEmmanuel Vadot							 <&cpu1 5 5>;
128*f126890aSEmmanuel Vadot				};
129*f126890aSEmmanuel Vadot				map1 {
130*f126890aSEmmanuel Vadot					/* Correspond to 200MHz at freq_table */
131*f126890aSEmmanuel Vadot					cooling-device = <&cpu0 8 8>,
132*f126890aSEmmanuel Vadot							 <&cpu1 8 8>;
133*f126890aSEmmanuel Vadot				};
134*f126890aSEmmanuel Vadot			};
135*f126890aSEmmanuel Vadot		};
136*f126890aSEmmanuel Vadot	};
137*f126890aSEmmanuel Vadot};
138*f126890aSEmmanuel Vadot
139*f126890aSEmmanuel Vadot&adc {
140*f126890aSEmmanuel Vadot	vdd-supply = <&ldo3_reg>;
141*f126890aSEmmanuel Vadot	status = "okay";
142*f126890aSEmmanuel Vadot	assigned-clocks = <&cmu CLK_SCLK_TSADC>;
143*f126890aSEmmanuel Vadot	assigned-clock-rates = <6000000>;
144*f126890aSEmmanuel Vadot
145*f126890aSEmmanuel Vadot	thermistor-ap {
146*f126890aSEmmanuel Vadot		compatible = "murata,ncp15wb473";
147*f126890aSEmmanuel Vadot		pullup-uv = <1800000>;
148*f126890aSEmmanuel Vadot		pullup-ohm = <100000>;
149*f126890aSEmmanuel Vadot		pulldown-ohm = <100000>;
150*f126890aSEmmanuel Vadot		io-channels = <&adc 0>;
151*f126890aSEmmanuel Vadot	};
152*f126890aSEmmanuel Vadot
153*f126890aSEmmanuel Vadot	thermistor-battery {
154*f126890aSEmmanuel Vadot		compatible = "murata,ncp15wb473";
155*f126890aSEmmanuel Vadot		pullup-uv = <1800000>;
156*f126890aSEmmanuel Vadot		pullup-ohm = <100000>;
157*f126890aSEmmanuel Vadot		pulldown-ohm = <100000>;
158*f126890aSEmmanuel Vadot		io-channels = <&adc 1>;
159*f126890aSEmmanuel Vadot	};
160*f126890aSEmmanuel Vadot};
161*f126890aSEmmanuel Vadot
162*f126890aSEmmanuel Vadot&bus_dmc {
163*f126890aSEmmanuel Vadot	devfreq-events = <&ppmu_dmc0_3>, <&ppmu_dmc1_3>;
164*f126890aSEmmanuel Vadot	vdd-supply = <&buck1_reg>;
165*f126890aSEmmanuel Vadot	status = "okay";
166*f126890aSEmmanuel Vadot};
167*f126890aSEmmanuel Vadot
168*f126890aSEmmanuel Vadot&cmu {
169*f126890aSEmmanuel Vadot	clocks = <&xusbxti>;
170*f126890aSEmmanuel Vadot};
171*f126890aSEmmanuel Vadot
172*f126890aSEmmanuel Vadot&cpu0 {
173*f126890aSEmmanuel Vadot	cpu0-supply = <&buck2_reg>;
174*f126890aSEmmanuel Vadot};
175*f126890aSEmmanuel Vadot
176*f126890aSEmmanuel Vadot&exynos_usbphy {
177*f126890aSEmmanuel Vadot	vbus-supply = <&safeout_reg>;
178*f126890aSEmmanuel Vadot	status = "okay";
179*f126890aSEmmanuel Vadot};
180*f126890aSEmmanuel Vadot
181*f126890aSEmmanuel Vadot&gpu {
182*f126890aSEmmanuel Vadot	mali-supply = <&buck3_reg>;
183*f126890aSEmmanuel Vadot	status = "okay";
184*f126890aSEmmanuel Vadot};
185*f126890aSEmmanuel Vadot
186*f126890aSEmmanuel Vadot&hsotg {
187*f126890aSEmmanuel Vadot	vusb_d-supply = <&ldo15_reg>;
188*f126890aSEmmanuel Vadot	vusb_a-supply = <&ldo12_reg>;
189*f126890aSEmmanuel Vadot	dr_mode = "peripheral";
190*f126890aSEmmanuel Vadot	status = "okay";
191*f126890aSEmmanuel Vadot};
192*f126890aSEmmanuel Vadot
193*f126890aSEmmanuel Vadot&i2c_0 {
194*f126890aSEmmanuel Vadot	#address-cells = <1>;
195*f126890aSEmmanuel Vadot	#size-cells = <0>;
196*f126890aSEmmanuel Vadot	samsung,i2c-sda-delay = <100>;
197*f126890aSEmmanuel Vadot	samsung,i2c-slave-addr = <0x10>;
198*f126890aSEmmanuel Vadot	samsung,i2c-max-bus-freq = <100000>;
199*f126890aSEmmanuel Vadot	status = "okay";
200*f126890aSEmmanuel Vadot
201*f126890aSEmmanuel Vadot	pmic@66 {
202*f126890aSEmmanuel Vadot		compatible = "samsung,s2mps14-pmic";
203*f126890aSEmmanuel Vadot		interrupt-parent = <&gpx0>;
204*f126890aSEmmanuel Vadot		interrupts = <7 IRQ_TYPE_LEVEL_LOW>;
205*f126890aSEmmanuel Vadot		reg = <0x66>;
206*f126890aSEmmanuel Vadot		wakeup-source;
207*f126890aSEmmanuel Vadot
208*f126890aSEmmanuel Vadot		s2mps14_osc: clocks {
209*f126890aSEmmanuel Vadot			compatible = "samsung,s2mps14-clk";
210*f126890aSEmmanuel Vadot			#clock-cells = <1>;
211*f126890aSEmmanuel Vadot			clock-output-names = "s2mps14_ap", "unused",
212*f126890aSEmmanuel Vadot				"s2mps14_bt";
213*f126890aSEmmanuel Vadot		};
214*f126890aSEmmanuel Vadot
215*f126890aSEmmanuel Vadot		regulators {
216*f126890aSEmmanuel Vadot			ldo1_reg: LDO1 {
217*f126890aSEmmanuel Vadot				regulator-name = "VAP_ALIVE_1.0V";
218*f126890aSEmmanuel Vadot				regulator-min-microvolt = <1000000>;
219*f126890aSEmmanuel Vadot				regulator-max-microvolt = <1000000>;
220*f126890aSEmmanuel Vadot				regulator-always-on;
221*f126890aSEmmanuel Vadot			};
222*f126890aSEmmanuel Vadot
223*f126890aSEmmanuel Vadot			ldo2_reg: LDO2 {
224*f126890aSEmmanuel Vadot				regulator-name = "VAP_M1_1.2V";
225*f126890aSEmmanuel Vadot				regulator-min-microvolt = <1200000>;
226*f126890aSEmmanuel Vadot				regulator-max-microvolt = <1200000>;
227*f126890aSEmmanuel Vadot				regulator-always-on;
228*f126890aSEmmanuel Vadot			};
229*f126890aSEmmanuel Vadot
230*f126890aSEmmanuel Vadot			ldo3_reg: LDO3 {
231*f126890aSEmmanuel Vadot				regulator-name = "VCC_AP_1.8V";
232*f126890aSEmmanuel Vadot				regulator-min-microvolt = <1800000>;
233*f126890aSEmmanuel Vadot				regulator-max-microvolt = <1800000>;
234*f126890aSEmmanuel Vadot				regulator-always-on;
235*f126890aSEmmanuel Vadot			};
236*f126890aSEmmanuel Vadot
237*f126890aSEmmanuel Vadot			ldo4_reg: LDO4 {
238*f126890aSEmmanuel Vadot				regulator-name = "VAP_AVDD_PLL1";
239*f126890aSEmmanuel Vadot				regulator-min-microvolt = <1800000>;
240*f126890aSEmmanuel Vadot				regulator-max-microvolt = <1800000>;
241*f126890aSEmmanuel Vadot				regulator-always-on;
242*f126890aSEmmanuel Vadot			};
243*f126890aSEmmanuel Vadot
244*f126890aSEmmanuel Vadot			ldo5_reg: LDO5 {
245*f126890aSEmmanuel Vadot				regulator-name = "VAP_PLL_ISO_1.0V";
246*f126890aSEmmanuel Vadot				regulator-min-microvolt = <1000000>;
247*f126890aSEmmanuel Vadot				regulator-max-microvolt = <1000000>;
248*f126890aSEmmanuel Vadot				regulator-always-on;
249*f126890aSEmmanuel Vadot			};
250*f126890aSEmmanuel Vadot
251*f126890aSEmmanuel Vadot			ldo6_reg: LDO6 {
252*f126890aSEmmanuel Vadot				regulator-name = "VAP_MIPI_1.0V";
253*f126890aSEmmanuel Vadot				regulator-min-microvolt = <1000000>;
254*f126890aSEmmanuel Vadot				regulator-max-microvolt = <1000000>;
255*f126890aSEmmanuel Vadot			};
256*f126890aSEmmanuel Vadot
257*f126890aSEmmanuel Vadot			ldo7_reg: LDO7 {
258*f126890aSEmmanuel Vadot				regulator-name = "VAP_AVDD_1.8V";
259*f126890aSEmmanuel Vadot				regulator-min-microvolt = <1800000>;
260*f126890aSEmmanuel Vadot				regulator-max-microvolt = <1800000>;
261*f126890aSEmmanuel Vadot				regulator-always-on;
262*f126890aSEmmanuel Vadot			};
263*f126890aSEmmanuel Vadot
264*f126890aSEmmanuel Vadot			ldo8_reg: LDO8 {
265*f126890aSEmmanuel Vadot				regulator-name = "VAP_USB_3.0V";
266*f126890aSEmmanuel Vadot				regulator-min-microvolt = <3000000>;
267*f126890aSEmmanuel Vadot				regulator-max-microvolt = <3000000>;
268*f126890aSEmmanuel Vadot				regulator-always-on;
269*f126890aSEmmanuel Vadot			};
270*f126890aSEmmanuel Vadot
271*f126890aSEmmanuel Vadot			ldo9_reg: LDO9 {
272*f126890aSEmmanuel Vadot				regulator-name = "V_LPDDR_1.2V";
273*f126890aSEmmanuel Vadot				regulator-min-microvolt = <1200000>;
274*f126890aSEmmanuel Vadot				regulator-max-microvolt = <1200000>;
275*f126890aSEmmanuel Vadot				regulator-always-on;
276*f126890aSEmmanuel Vadot			};
277*f126890aSEmmanuel Vadot
278*f126890aSEmmanuel Vadot			ldo10_reg: LDO10 {
279*f126890aSEmmanuel Vadot				regulator-name = "UNUSED_LDO10";
280*f126890aSEmmanuel Vadot				regulator-min-microvolt = <1000000>;
281*f126890aSEmmanuel Vadot				regulator-max-microvolt = <1000000>;
282*f126890aSEmmanuel Vadot			};
283*f126890aSEmmanuel Vadot
284*f126890aSEmmanuel Vadot			ldo11_reg: LDO11 {
285*f126890aSEmmanuel Vadot				regulator-name = "V_EMMC_1.8V";
286*f126890aSEmmanuel Vadot				regulator-min-microvolt = <1800000>;
287*f126890aSEmmanuel Vadot				regulator-max-microvolt = <1800000>;
288*f126890aSEmmanuel Vadot				samsung,ext-control-gpios = <&gpk0 2 GPIO_ACTIVE_HIGH>;
289*f126890aSEmmanuel Vadot			};
290*f126890aSEmmanuel Vadot
291*f126890aSEmmanuel Vadot			ldo12_reg: LDO12 {
292*f126890aSEmmanuel Vadot				regulator-name = "V_EMMC_2.8V";
293*f126890aSEmmanuel Vadot				regulator-min-microvolt = <2800000>;
294*f126890aSEmmanuel Vadot				regulator-max-microvolt = <2800000>;
295*f126890aSEmmanuel Vadot				samsung,ext-control-gpios = <&gpk0 2 GPIO_ACTIVE_HIGH>;
296*f126890aSEmmanuel Vadot			};
297*f126890aSEmmanuel Vadot
298*f126890aSEmmanuel Vadot			ldo13_reg: LDO13 {
299*f126890aSEmmanuel Vadot				regulator-name = "VSENSOR_2.85V";
300*f126890aSEmmanuel Vadot				regulator-min-microvolt = <2850000>;
301*f126890aSEmmanuel Vadot				regulator-max-microvolt = <2850000>;
302*f126890aSEmmanuel Vadot				regulator-always-on;
303*f126890aSEmmanuel Vadot			};
304*f126890aSEmmanuel Vadot
305*f126890aSEmmanuel Vadot			ldo14_reg: LDO14 {
306*f126890aSEmmanuel Vadot				regulator-name = "UNUSED_LDO14";
307*f126890aSEmmanuel Vadot				regulator-min-microvolt = <1800000>;
308*f126890aSEmmanuel Vadot				regulator-max-microvolt = <1800000>;
309*f126890aSEmmanuel Vadot			};
310*f126890aSEmmanuel Vadot
311*f126890aSEmmanuel Vadot			ldo15_reg: LDO15 {
312*f126890aSEmmanuel Vadot				regulator-name = "TSP_AVDD_3.3V";
313*f126890aSEmmanuel Vadot				regulator-min-microvolt = <3300000>;
314*f126890aSEmmanuel Vadot				regulator-max-microvolt = <3300000>;
315*f126890aSEmmanuel Vadot			};
316*f126890aSEmmanuel Vadot
317*f126890aSEmmanuel Vadot			ldo16_reg: LDO16 {
318*f126890aSEmmanuel Vadot				regulator-name = "LCD_VDD_3.3V";
319*f126890aSEmmanuel Vadot				regulator-min-microvolt = <3300000>;
320*f126890aSEmmanuel Vadot				regulator-max-microvolt = <3300000>;
321*f126890aSEmmanuel Vadot			};
322*f126890aSEmmanuel Vadot
323*f126890aSEmmanuel Vadot			ldo17_reg: LDO17 {
324*f126890aSEmmanuel Vadot				regulator-name = "UNUSED_LDO17";
325*f126890aSEmmanuel Vadot				regulator-min-microvolt = <1800000>;
326*f126890aSEmmanuel Vadot				regulator-max-microvolt = <1800000>;
327*f126890aSEmmanuel Vadot			};
328*f126890aSEmmanuel Vadot
329*f126890aSEmmanuel Vadot			ldo18_reg: LDO18 {
330*f126890aSEmmanuel Vadot				regulator-name = "UNUSED_LDO18";
331*f126890aSEmmanuel Vadot				regulator-min-microvolt = <1800000>;
332*f126890aSEmmanuel Vadot				regulator-max-microvolt = <1800000>;
333*f126890aSEmmanuel Vadot			};
334*f126890aSEmmanuel Vadot
335*f126890aSEmmanuel Vadot			ldo19_reg: LDO19 {
336*f126890aSEmmanuel Vadot				regulator-name = "TSP_VDD_1.8V";
337*f126890aSEmmanuel Vadot				regulator-min-microvolt = <1800000>;
338*f126890aSEmmanuel Vadot				regulator-max-microvolt = <1800000>;
339*f126890aSEmmanuel Vadot			};
340*f126890aSEmmanuel Vadot
341*f126890aSEmmanuel Vadot			ldo20_reg: LDO20 {
342*f126890aSEmmanuel Vadot				regulator-name = "LCD_VDD_1.8V";
343*f126890aSEmmanuel Vadot				regulator-min-microvolt = <1800000>;
344*f126890aSEmmanuel Vadot				regulator-max-microvolt = <1800000>;
345*f126890aSEmmanuel Vadot			};
346*f126890aSEmmanuel Vadot
347*f126890aSEmmanuel Vadot			ldo21_reg: LDO21 {
348*f126890aSEmmanuel Vadot				regulator-name = "UNUSED_LDO21";
349*f126890aSEmmanuel Vadot				regulator-min-microvolt = <1000000>;
350*f126890aSEmmanuel Vadot				regulator-max-microvolt = <1000000>;
351*f126890aSEmmanuel Vadot			};
352*f126890aSEmmanuel Vadot
353*f126890aSEmmanuel Vadot			ldo22_reg: LDO22 {
354*f126890aSEmmanuel Vadot				regulator-name = "UNUSED_LDO22";
355*f126890aSEmmanuel Vadot				regulator-min-microvolt = <1000000>;
356*f126890aSEmmanuel Vadot				regulator-max-microvolt = <1000000>;
357*f126890aSEmmanuel Vadot			};
358*f126890aSEmmanuel Vadot
359*f126890aSEmmanuel Vadot			ldo23_reg: LDO23 {
360*f126890aSEmmanuel Vadot				regulator-name = "UNUSED_LDO23";
361*f126890aSEmmanuel Vadot				regulator-min-microvolt = <1000000>;
362*f126890aSEmmanuel Vadot				regulator-max-microvolt = <1000000>;
363*f126890aSEmmanuel Vadot				regulator-always-on;
364*f126890aSEmmanuel Vadot			};
365*f126890aSEmmanuel Vadot
366*f126890aSEmmanuel Vadot			ldo24_reg: LDO24 {
367*f126890aSEmmanuel Vadot				regulator-name = "UNUSED_LDO24";
368*f126890aSEmmanuel Vadot				regulator-min-microvolt = <1800000>;
369*f126890aSEmmanuel Vadot				regulator-max-microvolt = <1800000>;
370*f126890aSEmmanuel Vadot			};
371*f126890aSEmmanuel Vadot
372*f126890aSEmmanuel Vadot			ldo25_reg: LDO25 {
373*f126890aSEmmanuel Vadot				regulator-name = "UNUSED_LDO25";
374*f126890aSEmmanuel Vadot				regulator-min-microvolt = <1800000>;
375*f126890aSEmmanuel Vadot				regulator-max-microvolt = <1800000>;
376*f126890aSEmmanuel Vadot			};
377*f126890aSEmmanuel Vadot
378*f126890aSEmmanuel Vadot			buck1_reg: BUCK1 {
379*f126890aSEmmanuel Vadot				regulator-name = "VAP_MIF_1.0V";
380*f126890aSEmmanuel Vadot				regulator-min-microvolt = <800000>;
381*f126890aSEmmanuel Vadot				regulator-max-microvolt = <900000>;
382*f126890aSEmmanuel Vadot				regulator-always-on;
383*f126890aSEmmanuel Vadot			};
384*f126890aSEmmanuel Vadot
385*f126890aSEmmanuel Vadot			buck2_reg: BUCK2 {
386*f126890aSEmmanuel Vadot				regulator-name = "VAP_ARM_1.0V";
387*f126890aSEmmanuel Vadot				regulator-min-microvolt = <850000>;
388*f126890aSEmmanuel Vadot				regulator-max-microvolt = <1150000>;
389*f126890aSEmmanuel Vadot				regulator-always-on;
390*f126890aSEmmanuel Vadot			};
391*f126890aSEmmanuel Vadot
392*f126890aSEmmanuel Vadot			buck3_reg: BUCK3 {
393*f126890aSEmmanuel Vadot				regulator-name = "VAP_INT3D_1.0V";
394*f126890aSEmmanuel Vadot				regulator-min-microvolt = <850000>;
395*f126890aSEmmanuel Vadot				regulator-max-microvolt = <1000000>;
396*f126890aSEmmanuel Vadot				regulator-always-on;
397*f126890aSEmmanuel Vadot			};
398*f126890aSEmmanuel Vadot
399*f126890aSEmmanuel Vadot			buck4_reg: BUCK4 {
400*f126890aSEmmanuel Vadot				regulator-name = "VCC_SUB_1.95V";
401*f126890aSEmmanuel Vadot				regulator-min-microvolt = <1950000>;
402*f126890aSEmmanuel Vadot				regulator-max-microvolt = <1950000>;
403*f126890aSEmmanuel Vadot				regulator-always-on;
404*f126890aSEmmanuel Vadot			};
405*f126890aSEmmanuel Vadot
406*f126890aSEmmanuel Vadot			buck5_reg: BUCK5 {
407*f126890aSEmmanuel Vadot				regulator-name = "VCC_SUB_1.35V";
408*f126890aSEmmanuel Vadot				regulator-min-microvolt = <1350000>;
409*f126890aSEmmanuel Vadot				regulator-max-microvolt = <1350000>;
410*f126890aSEmmanuel Vadot				regulator-always-on;
411*f126890aSEmmanuel Vadot			};
412*f126890aSEmmanuel Vadot		};
413*f126890aSEmmanuel Vadot	};
414*f126890aSEmmanuel Vadot};
415*f126890aSEmmanuel Vadot
416*f126890aSEmmanuel Vadot&i2c_1 {
417*f126890aSEmmanuel Vadot	#address-cells = <1>;
418*f126890aSEmmanuel Vadot	#size-cells = <0>;
419*f126890aSEmmanuel Vadot	samsung,i2c-sda-delay = <100>;
420*f126890aSEmmanuel Vadot	samsung,i2c-slave-addr = <0x10>;
421*f126890aSEmmanuel Vadot	samsung,i2c-max-bus-freq = <400000>;
422*f126890aSEmmanuel Vadot	status = "okay";
423*f126890aSEmmanuel Vadot
424*f126890aSEmmanuel Vadot	fuelgauge@36 {
425*f126890aSEmmanuel Vadot		compatible = "maxim,max77836-battery";
426*f126890aSEmmanuel Vadot		interrupt-parent = <&gpx1>;
427*f126890aSEmmanuel Vadot		interrupts = <2 IRQ_TYPE_LEVEL_LOW>;
428*f126890aSEmmanuel Vadot		reg = <0x36>;
429*f126890aSEmmanuel Vadot	};
430*f126890aSEmmanuel Vadot};
431*f126890aSEmmanuel Vadot
432*f126890aSEmmanuel Vadot&i2s2 {
433*f126890aSEmmanuel Vadot	status = "okay";
434*f126890aSEmmanuel Vadot};
435*f126890aSEmmanuel Vadot
436*f126890aSEmmanuel Vadot&mshc_0 {
437*f126890aSEmmanuel Vadot	#address-cells = <1>;
438*f126890aSEmmanuel Vadot	#size-cells = <0>;
439*f126890aSEmmanuel Vadot	broken-cd;
440*f126890aSEmmanuel Vadot	non-removable;
441*f126890aSEmmanuel Vadot	cap-mmc-highspeed;
442*f126890aSEmmanuel Vadot	mmc-hs200-1_8v;
443*f126890aSEmmanuel Vadot	card-detect-delay = <200>;
444*f126890aSEmmanuel Vadot	vmmc-supply = <&vemmc_reg>;
445*f126890aSEmmanuel Vadot	clock-frequency = <100000000>;
446*f126890aSEmmanuel Vadot	max-frequency = <100000000>;
447*f126890aSEmmanuel Vadot	mmc-ddr-1_8v;
448*f126890aSEmmanuel Vadot	samsung,dw-mshc-ciu-div = <1>;
449*f126890aSEmmanuel Vadot	samsung,dw-mshc-sdr-timing = <0 1>;
450*f126890aSEmmanuel Vadot	samsung,dw-mshc-ddr-timing = <1 2>;
451*f126890aSEmmanuel Vadot	pinctrl-names = "default";
452*f126890aSEmmanuel Vadot	pinctrl-0 = <&sd0_cmd &sd0_bus1 &sd0_bus4 &sd0_bus8>;
453*f126890aSEmmanuel Vadot	bus-width = <8>;
454*f126890aSEmmanuel Vadot	status = "okay";
455*f126890aSEmmanuel Vadot};
456*f126890aSEmmanuel Vadot
457*f126890aSEmmanuel Vadot&serial_0 {
458*f126890aSEmmanuel Vadot	assigned-clocks = <&cmu CLK_SCLK_UART0>;
459*f126890aSEmmanuel Vadot	assigned-clock-rates = <100000000>;
460*f126890aSEmmanuel Vadot	status = "okay";
461*f126890aSEmmanuel Vadot};
462*f126890aSEmmanuel Vadot
463*f126890aSEmmanuel Vadot&serial_1 {
464*f126890aSEmmanuel Vadot	status = "okay";
465*f126890aSEmmanuel Vadot};
466*f126890aSEmmanuel Vadot
467*f126890aSEmmanuel Vadot&tmu {
468*f126890aSEmmanuel Vadot	vtmu-supply = <&ldo7_reg>;
469*f126890aSEmmanuel Vadot	status = "okay";
470*f126890aSEmmanuel Vadot};
471*f126890aSEmmanuel Vadot
472*f126890aSEmmanuel Vadot&rtc {
473*f126890aSEmmanuel Vadot	clocks = <&cmu CLK_RTC>, <&s2mps14_osc S2MPS11_CLK_AP>;
474*f126890aSEmmanuel Vadot	clock-names = "rtc", "rtc_src";
475*f126890aSEmmanuel Vadot	status = "okay";
476*f126890aSEmmanuel Vadot};
477*f126890aSEmmanuel Vadot
478*f126890aSEmmanuel Vadot&xusbxti {
479*f126890aSEmmanuel Vadot	clock-frequency = <24000000>;
480*f126890aSEmmanuel Vadot};
481*f126890aSEmmanuel Vadot
482*f126890aSEmmanuel Vadot&pinctrl_0 {
483*f126890aSEmmanuel Vadot	pinctrl-names = "default";
484*f126890aSEmmanuel Vadot	pinctrl-0 = <&sleep0>;
485*f126890aSEmmanuel Vadot
486*f126890aSEmmanuel Vadot	sleep0: sleep-state {
487*f126890aSEmmanuel Vadot		PIN_SLP(gpa0-0, INPUT, DOWN);
488*f126890aSEmmanuel Vadot		PIN_SLP(gpa0-1, INPUT, DOWN);
489*f126890aSEmmanuel Vadot		PIN_SLP(gpa0-2, INPUT, DOWN);
490*f126890aSEmmanuel Vadot		PIN_SLP(gpa0-3, INPUT, DOWN);
491*f126890aSEmmanuel Vadot		PIN_SLP(gpa0-4, INPUT, DOWN);
492*f126890aSEmmanuel Vadot		PIN_SLP(gpa0-5, INPUT, DOWN);
493*f126890aSEmmanuel Vadot		PIN_SLP(gpa0-6, INPUT, DOWN);
494*f126890aSEmmanuel Vadot		PIN_SLP(gpa0-7, INPUT, DOWN);
495*f126890aSEmmanuel Vadot
496*f126890aSEmmanuel Vadot		PIN_SLP(gpa1-0, INPUT, DOWN);
497*f126890aSEmmanuel Vadot		PIN_SLP(gpa1-1, INPUT, DOWN);
498*f126890aSEmmanuel Vadot		PIN_SLP(gpa1-2, INPUT, DOWN);
499*f126890aSEmmanuel Vadot		PIN_SLP(gpa1-3, INPUT, DOWN);
500*f126890aSEmmanuel Vadot		PIN_SLP(gpa1-4, INPUT, DOWN);
501*f126890aSEmmanuel Vadot		PIN_SLP(gpa1-5, INPUT, DOWN);
502*f126890aSEmmanuel Vadot
503*f126890aSEmmanuel Vadot		PIN_SLP(gpb-0, PREV, NONE);
504*f126890aSEmmanuel Vadot		PIN_SLP(gpb-1, PREV, NONE);
505*f126890aSEmmanuel Vadot		PIN_SLP(gpb-2, PREV, NONE);
506*f126890aSEmmanuel Vadot		PIN_SLP(gpb-3, PREV, NONE);
507*f126890aSEmmanuel Vadot		PIN_SLP(gpb-4, INPUT, DOWN);
508*f126890aSEmmanuel Vadot		PIN_SLP(gpb-5, INPUT, DOWN);
509*f126890aSEmmanuel Vadot		PIN_SLP(gpb-6, INPUT, DOWN);
510*f126890aSEmmanuel Vadot		PIN_SLP(gpb-7, INPUT, DOWN);
511*f126890aSEmmanuel Vadot
512*f126890aSEmmanuel Vadot		PIN_SLP(gpc0-0, INPUT, DOWN);
513*f126890aSEmmanuel Vadot		PIN_SLP(gpc0-1, INPUT, DOWN);
514*f126890aSEmmanuel Vadot		PIN_SLP(gpc0-2, INPUT, DOWN);
515*f126890aSEmmanuel Vadot		PIN_SLP(gpc0-3, INPUT, DOWN);
516*f126890aSEmmanuel Vadot		PIN_SLP(gpc0-4, INPUT, DOWN);
517*f126890aSEmmanuel Vadot
518*f126890aSEmmanuel Vadot		PIN_SLP(gpc1-0, INPUT, DOWN);
519*f126890aSEmmanuel Vadot		PIN_SLP(gpc1-1, INPUT, DOWN);
520*f126890aSEmmanuel Vadot		PIN_SLP(gpc1-2, INPUT, DOWN);
521*f126890aSEmmanuel Vadot		PIN_SLP(gpc1-3, INPUT, DOWN);
522*f126890aSEmmanuel Vadot		PIN_SLP(gpc1-4, INPUT, DOWN);
523*f126890aSEmmanuel Vadot
524*f126890aSEmmanuel Vadot		PIN_SLP(gpd0-0, INPUT, DOWN);
525*f126890aSEmmanuel Vadot		PIN_SLP(gpd0-1, INPUT, DOWN);
526*f126890aSEmmanuel Vadot		PIN_SLP(gpd0-2, INPUT, NONE);
527*f126890aSEmmanuel Vadot		PIN_SLP(gpd0-3, INPUT, NONE);
528*f126890aSEmmanuel Vadot
529*f126890aSEmmanuel Vadot		PIN_SLP(gpd1-0, INPUT, NONE);
530*f126890aSEmmanuel Vadot		PIN_SLP(gpd1-1, INPUT, NONE);
531*f126890aSEmmanuel Vadot		PIN_SLP(gpd1-2, INPUT, NONE);
532*f126890aSEmmanuel Vadot		PIN_SLP(gpd1-3, INPUT, NONE);
533*f126890aSEmmanuel Vadot	};
534*f126890aSEmmanuel Vadot};
535*f126890aSEmmanuel Vadot
536*f126890aSEmmanuel Vadot&pinctrl_1 {
537*f126890aSEmmanuel Vadot	pinctrl-names = "default";
538*f126890aSEmmanuel Vadot	pinctrl-0 = <&initial1 &sleep1>;
539*f126890aSEmmanuel Vadot
540*f126890aSEmmanuel Vadot	initial1: initial-state {
541*f126890aSEmmanuel Vadot		PIN_IN(gpk2-0, DOWN, LV1);
542*f126890aSEmmanuel Vadot		PIN_IN(gpk2-1, DOWN, LV1);
543*f126890aSEmmanuel Vadot		PIN_IN(gpk2-2, DOWN, LV1);
544*f126890aSEmmanuel Vadot		PIN_IN(gpk2-3, DOWN, LV1);
545*f126890aSEmmanuel Vadot		PIN_IN(gpk2-4, DOWN, LV1);
546*f126890aSEmmanuel Vadot		PIN_IN(gpk2-5, DOWN, LV1);
547*f126890aSEmmanuel Vadot		PIN_IN(gpk2-6, DOWN, LV1);
548*f126890aSEmmanuel Vadot	};
549*f126890aSEmmanuel Vadot
550*f126890aSEmmanuel Vadot	sleep1: sleep-state {
551*f126890aSEmmanuel Vadot		PIN_SLP(gpe0-0, PREV, NONE);
552*f126890aSEmmanuel Vadot		PIN_SLP(gpe0-1, PREV, NONE);
553*f126890aSEmmanuel Vadot		PIN_SLP(gpe0-2, INPUT, DOWN);
554*f126890aSEmmanuel Vadot		PIN_SLP(gpe0-3, INPUT, DOWN);
555*f126890aSEmmanuel Vadot		PIN_SLP(gpe0-4, PREV, NONE);
556*f126890aSEmmanuel Vadot		PIN_SLP(gpe0-5, INPUT, DOWN);
557*f126890aSEmmanuel Vadot		PIN_SLP(gpe0-6, INPUT, DOWN);
558*f126890aSEmmanuel Vadot		PIN_SLP(gpe0-7, INPUT, DOWN);
559*f126890aSEmmanuel Vadot
560*f126890aSEmmanuel Vadot		PIN_SLP(gpe1-0, INPUT, DOWN);
561*f126890aSEmmanuel Vadot		PIN_SLP(gpe1-1, PREV, NONE);
562*f126890aSEmmanuel Vadot		PIN_SLP(gpe1-2, INPUT, DOWN);
563*f126890aSEmmanuel Vadot		PIN_SLP(gpe1-3, INPUT, DOWN);
564*f126890aSEmmanuel Vadot		PIN_SLP(gpe1-4, INPUT, DOWN);
565*f126890aSEmmanuel Vadot		PIN_SLP(gpe1-5, INPUT, DOWN);
566*f126890aSEmmanuel Vadot		PIN_SLP(gpe1-6, INPUT, DOWN);
567*f126890aSEmmanuel Vadot		PIN_SLP(gpe1-7, INPUT, NONE);
568*f126890aSEmmanuel Vadot
569*f126890aSEmmanuel Vadot		PIN_SLP(gpe2-0, INPUT, NONE);
570*f126890aSEmmanuel Vadot		PIN_SLP(gpe2-1, INPUT, NONE);
571*f126890aSEmmanuel Vadot		PIN_SLP(gpe2-2, INPUT, NONE);
572*f126890aSEmmanuel Vadot
573*f126890aSEmmanuel Vadot		PIN_SLP(gpk0-0, INPUT, DOWN);
574*f126890aSEmmanuel Vadot		PIN_SLP(gpk0-1, INPUT, DOWN);
575*f126890aSEmmanuel Vadot		PIN_SLP(gpk0-2, OUT0, NONE);
576*f126890aSEmmanuel Vadot		PIN_SLP(gpk0-3, INPUT, DOWN);
577*f126890aSEmmanuel Vadot		PIN_SLP(gpk0-4, INPUT, DOWN);
578*f126890aSEmmanuel Vadot		PIN_SLP(gpk0-5, INPUT, DOWN);
579*f126890aSEmmanuel Vadot		PIN_SLP(gpk0-6, INPUT, DOWN);
580*f126890aSEmmanuel Vadot		PIN_SLP(gpk0-7, INPUT, DOWN);
581*f126890aSEmmanuel Vadot
582*f126890aSEmmanuel Vadot		PIN_SLP(gpk1-0, PREV, NONE);
583*f126890aSEmmanuel Vadot		PIN_SLP(gpk1-1, PREV, NONE);
584*f126890aSEmmanuel Vadot		PIN_SLP(gpk1-2, INPUT, DOWN);
585*f126890aSEmmanuel Vadot		PIN_SLP(gpk1-3, PREV, NONE);
586*f126890aSEmmanuel Vadot		PIN_SLP(gpk1-4, PREV, NONE);
587*f126890aSEmmanuel Vadot		PIN_SLP(gpk1-5, PREV, NONE);
588*f126890aSEmmanuel Vadot		PIN_SLP(gpk1-6, PREV, NONE);
589*f126890aSEmmanuel Vadot
590*f126890aSEmmanuel Vadot		PIN_SLP(gpk2-0, INPUT, DOWN);
591*f126890aSEmmanuel Vadot		PIN_SLP(gpk2-1, INPUT, DOWN);
592*f126890aSEmmanuel Vadot		PIN_SLP(gpk2-2, INPUT, DOWN);
593*f126890aSEmmanuel Vadot		PIN_SLP(gpk2-3, INPUT, DOWN);
594*f126890aSEmmanuel Vadot		PIN_SLP(gpk2-4, INPUT, DOWN);
595*f126890aSEmmanuel Vadot		PIN_SLP(gpk2-5, INPUT, DOWN);
596*f126890aSEmmanuel Vadot		PIN_SLP(gpk2-6, INPUT, DOWN);
597*f126890aSEmmanuel Vadot
598*f126890aSEmmanuel Vadot		PIN_SLP(gpl0-0, INPUT, DOWN);
599*f126890aSEmmanuel Vadot		PIN_SLP(gpl0-1, INPUT, DOWN);
600*f126890aSEmmanuel Vadot		PIN_SLP(gpl0-2, INPUT, DOWN);
601*f126890aSEmmanuel Vadot		PIN_SLP(gpl0-3, INPUT, DOWN);
602*f126890aSEmmanuel Vadot
603*f126890aSEmmanuel Vadot		PIN_SLP(gpm0-0, INPUT, DOWN);
604*f126890aSEmmanuel Vadot		PIN_SLP(gpm0-1, INPUT, DOWN);
605*f126890aSEmmanuel Vadot		PIN_SLP(gpm0-2, INPUT, DOWN);
606*f126890aSEmmanuel Vadot		PIN_SLP(gpm0-3, INPUT, DOWN);
607*f126890aSEmmanuel Vadot		PIN_SLP(gpm0-4, INPUT, DOWN);
608*f126890aSEmmanuel Vadot		PIN_SLP(gpm0-5, INPUT, DOWN);
609*f126890aSEmmanuel Vadot		PIN_SLP(gpm0-6, INPUT, DOWN);
610*f126890aSEmmanuel Vadot		PIN_SLP(gpm0-7, INPUT, DOWN);
611*f126890aSEmmanuel Vadot
612*f126890aSEmmanuel Vadot		PIN_SLP(gpm1-0, INPUT, DOWN);
613*f126890aSEmmanuel Vadot		PIN_SLP(gpm1-1, INPUT, DOWN);
614*f126890aSEmmanuel Vadot		PIN_SLP(gpm1-2, INPUT, DOWN);
615*f126890aSEmmanuel Vadot		PIN_SLP(gpm1-3, INPUT, DOWN);
616*f126890aSEmmanuel Vadot		PIN_SLP(gpm1-4, INPUT, DOWN);
617*f126890aSEmmanuel Vadot		PIN_SLP(gpm1-5, INPUT, DOWN);
618*f126890aSEmmanuel Vadot		PIN_SLP(gpm1-6, INPUT, DOWN);
619*f126890aSEmmanuel Vadot
620*f126890aSEmmanuel Vadot		PIN_SLP(gpm2-0, INPUT, DOWN);
621*f126890aSEmmanuel Vadot		PIN_SLP(gpm2-1, INPUT, DOWN);
622*f126890aSEmmanuel Vadot		PIN_SLP(gpm2-2, INPUT, DOWN);
623*f126890aSEmmanuel Vadot		PIN_SLP(gpm2-3, INPUT, DOWN);
624*f126890aSEmmanuel Vadot		PIN_SLP(gpm2-4, INPUT, DOWN);
625*f126890aSEmmanuel Vadot
626*f126890aSEmmanuel Vadot		PIN_SLP(gpm3-0, INPUT, DOWN);
627*f126890aSEmmanuel Vadot		PIN_SLP(gpm3-1, INPUT, DOWN);
628*f126890aSEmmanuel Vadot		PIN_SLP(gpm3-2, INPUT, DOWN);
629*f126890aSEmmanuel Vadot		PIN_SLP(gpm3-3, INPUT, DOWN);
630*f126890aSEmmanuel Vadot		PIN_SLP(gpm3-4, INPUT, DOWN);
631*f126890aSEmmanuel Vadot		PIN_SLP(gpm3-5, INPUT, DOWN);
632*f126890aSEmmanuel Vadot		PIN_SLP(gpm3-6, INPUT, DOWN);
633*f126890aSEmmanuel Vadot		PIN_SLP(gpm3-7, INPUT, DOWN);
634*f126890aSEmmanuel Vadot
635*f126890aSEmmanuel Vadot		PIN_SLP(gpm4-0, INPUT, DOWN);
636*f126890aSEmmanuel Vadot		PIN_SLP(gpm4-1, INPUT, DOWN);
637*f126890aSEmmanuel Vadot		PIN_SLP(gpm4-2, INPUT, DOWN);
638*f126890aSEmmanuel Vadot		PIN_SLP(gpm4-3, INPUT, DOWN);
639*f126890aSEmmanuel Vadot		PIN_SLP(gpm4-4, INPUT, DOWN);
640*f126890aSEmmanuel Vadot		PIN_SLP(gpm4-5, INPUT, DOWN);
641*f126890aSEmmanuel Vadot		PIN_SLP(gpm4-6, INPUT, DOWN);
642*f126890aSEmmanuel Vadot		PIN_SLP(gpm4-7, INPUT, DOWN);
643*f126890aSEmmanuel Vadot	};
644*f126890aSEmmanuel Vadot};
645