xref: /freebsd/sys/contrib/device-tree/src/arm/samsung/exynos5250-arndale.dts (revision f126890ac5386406dadf7c4cfa9566cbb56537c5)
1*f126890aSEmmanuel Vadot// SPDX-License-Identifier: GPL-2.0
2*f126890aSEmmanuel Vadot/*
3*f126890aSEmmanuel Vadot * Samsung's Exynos5250 based Arndale board device tree source
4*f126890aSEmmanuel Vadot *
5*f126890aSEmmanuel Vadot * Copyright (c) 2013 Samsung Electronics Co., Ltd.
6*f126890aSEmmanuel Vadot *		http://www.samsung.com
7*f126890aSEmmanuel Vadot */
8*f126890aSEmmanuel Vadot
9*f126890aSEmmanuel Vadot/dts-v1/;
10*f126890aSEmmanuel Vadot#include <dt-bindings/gpio/gpio.h>
11*f126890aSEmmanuel Vadot#include <dt-bindings/interrupt-controller/irq.h>
12*f126890aSEmmanuel Vadot#include <dt-bindings/input/input.h>
13*f126890aSEmmanuel Vadot#include <dt-bindings/clock/samsung,s2mps11.h>
14*f126890aSEmmanuel Vadot#include <dt-bindings/sound/samsung-i2s.h>
15*f126890aSEmmanuel Vadot#include "exynos5250.dtsi"
16*f126890aSEmmanuel Vadot
17*f126890aSEmmanuel Vadot/ {
18*f126890aSEmmanuel Vadot	model = "Insignal Arndale evaluation board based on Exynos5250";
19*f126890aSEmmanuel Vadot	compatible = "insignal,arndale", "samsung,exynos5250", "samsung,exynos5";
20*f126890aSEmmanuel Vadot
21*f126890aSEmmanuel Vadot	memory@40000000 {
22*f126890aSEmmanuel Vadot		device_type = "memory";
23*f126890aSEmmanuel Vadot		reg = <0x40000000 0x80000000>;
24*f126890aSEmmanuel Vadot	};
25*f126890aSEmmanuel Vadot
26*f126890aSEmmanuel Vadot	aliases {
27*f126890aSEmmanuel Vadot		mmc0 = &mmc_0;
28*f126890aSEmmanuel Vadot		mmc1 = &mmc_2;
29*f126890aSEmmanuel Vadot	};
30*f126890aSEmmanuel Vadot
31*f126890aSEmmanuel Vadot	chosen {
32*f126890aSEmmanuel Vadot		stdout-path = "serial2:115200n8";
33*f126890aSEmmanuel Vadot	};
34*f126890aSEmmanuel Vadot
35*f126890aSEmmanuel Vadot	gpio-keys {
36*f126890aSEmmanuel Vadot		compatible = "gpio-keys";
37*f126890aSEmmanuel Vadot
38*f126890aSEmmanuel Vadot		key-menu {
39*f126890aSEmmanuel Vadot			label = "SW-TACT2";
40*f126890aSEmmanuel Vadot			gpios = <&gpx1 4 GPIO_ACTIVE_LOW>;
41*f126890aSEmmanuel Vadot			linux,code = <KEY_MENU>;
42*f126890aSEmmanuel Vadot			wakeup-source;
43*f126890aSEmmanuel Vadot		};
44*f126890aSEmmanuel Vadot
45*f126890aSEmmanuel Vadot		key-home {
46*f126890aSEmmanuel Vadot			label = "SW-TACT3";
47*f126890aSEmmanuel Vadot			gpios = <&gpx1 5 GPIO_ACTIVE_LOW>;
48*f126890aSEmmanuel Vadot			linux,code = <KEY_HOME>;
49*f126890aSEmmanuel Vadot			wakeup-source;
50*f126890aSEmmanuel Vadot		};
51*f126890aSEmmanuel Vadot
52*f126890aSEmmanuel Vadot		key-up {
53*f126890aSEmmanuel Vadot			label = "SW-TACT4";
54*f126890aSEmmanuel Vadot			gpios = <&gpx1 6 GPIO_ACTIVE_LOW>;
55*f126890aSEmmanuel Vadot			linux,code = <KEY_UP>;
56*f126890aSEmmanuel Vadot			wakeup-source;
57*f126890aSEmmanuel Vadot		};
58*f126890aSEmmanuel Vadot
59*f126890aSEmmanuel Vadot		key-down {
60*f126890aSEmmanuel Vadot			label = "SW-TACT5";
61*f126890aSEmmanuel Vadot			gpios = <&gpx1 7 GPIO_ACTIVE_LOW>;
62*f126890aSEmmanuel Vadot			linux,code = <KEY_DOWN>;
63*f126890aSEmmanuel Vadot			wakeup-source;
64*f126890aSEmmanuel Vadot		};
65*f126890aSEmmanuel Vadot
66*f126890aSEmmanuel Vadot		key-back {
67*f126890aSEmmanuel Vadot			label = "SW-TACT6";
68*f126890aSEmmanuel Vadot			gpios = <&gpx2 0 GPIO_ACTIVE_LOW>;
69*f126890aSEmmanuel Vadot			linux,code = <KEY_BACK>;
70*f126890aSEmmanuel Vadot			wakeup-source;
71*f126890aSEmmanuel Vadot		};
72*f126890aSEmmanuel Vadot
73*f126890aSEmmanuel Vadot		key-wakeup {
74*f126890aSEmmanuel Vadot			label = "SW-TACT7";
75*f126890aSEmmanuel Vadot			gpios = <&gpx2 1 GPIO_ACTIVE_LOW>;
76*f126890aSEmmanuel Vadot			linux,code = <KEY_WAKEUP>;
77*f126890aSEmmanuel Vadot			wakeup-source;
78*f126890aSEmmanuel Vadot		};
79*f126890aSEmmanuel Vadot	};
80*f126890aSEmmanuel Vadot
81*f126890aSEmmanuel Vadot	/*
82*f126890aSEmmanuel Vadot	 * For unknown reasons HDMI-DDC does not work with Exynos I2C
83*f126890aSEmmanuel Vadot	 * controllers. Lets use software I2C over GPIO pins as a workaround.
84*f126890aSEmmanuel Vadot	 */
85*f126890aSEmmanuel Vadot	i2c_ddc: i2c-10 {
86*f126890aSEmmanuel Vadot		compatible = "i2c-gpio";
87*f126890aSEmmanuel Vadot		pinctrl-names = "default";
88*f126890aSEmmanuel Vadot		pinctrl-0 = <&i2c2_gpio_bus>;
89*f126890aSEmmanuel Vadot		sda-gpios = <&gpa0 6 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
90*f126890aSEmmanuel Vadot		scl-gpios = <&gpa0 7 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
91*f126890aSEmmanuel Vadot		i2c-gpio,delay-us = <2>;
92*f126890aSEmmanuel Vadot	};
93*f126890aSEmmanuel Vadot
94*f126890aSEmmanuel Vadot	panel: panel {
95*f126890aSEmmanuel Vadot		compatible = "boe,hv070wsa-100";
96*f126890aSEmmanuel Vadot		power-supply = <&vcc_3v3_reg>;
97*f126890aSEmmanuel Vadot		enable-gpios = <&gpd1 3 GPIO_ACTIVE_HIGH>;
98*f126890aSEmmanuel Vadot		port {
99*f126890aSEmmanuel Vadot			panel_ep: endpoint {
100*f126890aSEmmanuel Vadot				remote-endpoint = <&bridge_out_ep>;
101*f126890aSEmmanuel Vadot			};
102*f126890aSEmmanuel Vadot		};
103*f126890aSEmmanuel Vadot	};
104*f126890aSEmmanuel Vadot
105*f126890aSEmmanuel Vadot	main_dc_reg: regulator-0 {
106*f126890aSEmmanuel Vadot		compatible = "regulator-fixed";
107*f126890aSEmmanuel Vadot		regulator-name = "MAIN_DC";
108*f126890aSEmmanuel Vadot		regulator-always-on;
109*f126890aSEmmanuel Vadot	};
110*f126890aSEmmanuel Vadot
111*f126890aSEmmanuel Vadot	mmc_reg: regulator-1 {
112*f126890aSEmmanuel Vadot		compatible = "regulator-fixed";
113*f126890aSEmmanuel Vadot		regulator-name = "VDD_MMC";
114*f126890aSEmmanuel Vadot		regulator-min-microvolt = <2800000>;
115*f126890aSEmmanuel Vadot		regulator-max-microvolt = <2800000>;
116*f126890aSEmmanuel Vadot		regulator-always-on;
117*f126890aSEmmanuel Vadot	};
118*f126890aSEmmanuel Vadot
119*f126890aSEmmanuel Vadot	reg_hdmi_en: regulator-2 {
120*f126890aSEmmanuel Vadot		compatible = "regulator-fixed";
121*f126890aSEmmanuel Vadot		regulator-name = "hdmi-en";
122*f126890aSEmmanuel Vadot		regulator-always-on;
123*f126890aSEmmanuel Vadot	};
124*f126890aSEmmanuel Vadot
125*f126890aSEmmanuel Vadot	vcc_1v2_reg: regulator-3 {
126*f126890aSEmmanuel Vadot		compatible = "regulator-fixed";
127*f126890aSEmmanuel Vadot		regulator-name = "VCC_1V2";
128*f126890aSEmmanuel Vadot		regulator-min-microvolt = <1200000>;
129*f126890aSEmmanuel Vadot		regulator-max-microvolt = <1200000>;
130*f126890aSEmmanuel Vadot		regulator-always-on;
131*f126890aSEmmanuel Vadot	};
132*f126890aSEmmanuel Vadot
133*f126890aSEmmanuel Vadot	vcc_1v8_reg: regulator-4 {
134*f126890aSEmmanuel Vadot		compatible = "regulator-fixed";
135*f126890aSEmmanuel Vadot		regulator-name = "VCC_1V8";
136*f126890aSEmmanuel Vadot		regulator-min-microvolt = <1800000>;
137*f126890aSEmmanuel Vadot		regulator-max-microvolt = <1800000>;
138*f126890aSEmmanuel Vadot		regulator-always-on;
139*f126890aSEmmanuel Vadot	};
140*f126890aSEmmanuel Vadot
141*f126890aSEmmanuel Vadot	vcc_3v3_reg: regulator-5 {
142*f126890aSEmmanuel Vadot		compatible = "regulator-fixed";
143*f126890aSEmmanuel Vadot		regulator-name = "VCC_3V3";
144*f126890aSEmmanuel Vadot		regulator-min-microvolt = <3300000>;
145*f126890aSEmmanuel Vadot		regulator-max-microvolt = <3300000>;
146*f126890aSEmmanuel Vadot		regulator-always-on;
147*f126890aSEmmanuel Vadot	};
148*f126890aSEmmanuel Vadot
149*f126890aSEmmanuel Vadot	sound {
150*f126890aSEmmanuel Vadot		compatible = "samsung,arndale-wm1811";
151*f126890aSEmmanuel Vadot		samsung,audio-cpu = <&i2s0>;
152*f126890aSEmmanuel Vadot		samsung,audio-codec = <&wm1811>;
153*f126890aSEmmanuel Vadot	};
154*f126890aSEmmanuel Vadot
155*f126890aSEmmanuel Vadot	fixed-rate-clocks {
156*f126890aSEmmanuel Vadot		xxti {
157*f126890aSEmmanuel Vadot			compatible = "samsung,clock-xxti";
158*f126890aSEmmanuel Vadot			clock-frequency = <24000000>;
159*f126890aSEmmanuel Vadot		};
160*f126890aSEmmanuel Vadot	};
161*f126890aSEmmanuel Vadot
162*f126890aSEmmanuel Vadot	// SMSC USB3503 connected in hardware only mode as a PHY
163*f126890aSEmmanuel Vadot	usb_hub: usb-hub {
164*f126890aSEmmanuel Vadot		compatible = "smsc,usb3503a";
165*f126890aSEmmanuel Vadot
166*f126890aSEmmanuel Vadot		reset-gpios = <&gpx3 5 GPIO_ACTIVE_LOW>;
167*f126890aSEmmanuel Vadot		connect-gpios = <&gpd1 7 GPIO_ACTIVE_HIGH>;
168*f126890aSEmmanuel Vadot	};
169*f126890aSEmmanuel Vadot};
170*f126890aSEmmanuel Vadot
171*f126890aSEmmanuel Vadot&clock {
172*f126890aSEmmanuel Vadot	assigned-clocks = <&clock CLK_FOUT_EPLL>;
173*f126890aSEmmanuel Vadot	assigned-clock-rates = <49152000>;
174*f126890aSEmmanuel Vadot};
175*f126890aSEmmanuel Vadot
176*f126890aSEmmanuel Vadot&clock_audss {
177*f126890aSEmmanuel Vadot	assigned-clocks = <&clock_audss EXYNOS_MOUT_AUDSS>;
178*f126890aSEmmanuel Vadot	assigned-clock-parents = <&clock CLK_FOUT_EPLL>;
179*f126890aSEmmanuel Vadot};
180*f126890aSEmmanuel Vadot
181*f126890aSEmmanuel Vadot&cpu0 {
182*f126890aSEmmanuel Vadot	cpu0-supply = <&buck2_reg>;
183*f126890aSEmmanuel Vadot};
184*f126890aSEmmanuel Vadot
185*f126890aSEmmanuel Vadot&dsi_0 {
186*f126890aSEmmanuel Vadot	vddcore-supply = <&ldo8_reg>;
187*f126890aSEmmanuel Vadot	vddio-supply = <&ldo10_reg>;
188*f126890aSEmmanuel Vadot	samsung,pll-clock-frequency = <24000000>;
189*f126890aSEmmanuel Vadot	samsung,burst-clock-frequency = <320000000>;
190*f126890aSEmmanuel Vadot	samsung,esc-clock-frequency = <10000000>;
191*f126890aSEmmanuel Vadot	status = "okay";
192*f126890aSEmmanuel Vadot
193*f126890aSEmmanuel Vadot	bridge@0 {
194*f126890aSEmmanuel Vadot		reg = <0>;
195*f126890aSEmmanuel Vadot		compatible = "toshiba,tc358764";
196*f126890aSEmmanuel Vadot		vddc-supply = <&vcc_1v2_reg>;
197*f126890aSEmmanuel Vadot		vddio-supply = <&vcc_1v8_reg>;
198*f126890aSEmmanuel Vadot		vddlvds-supply = <&vcc_3v3_reg>;
199*f126890aSEmmanuel Vadot		reset-gpios = <&gpd1 6 GPIO_ACTIVE_LOW>;
200*f126890aSEmmanuel Vadot
201*f126890aSEmmanuel Vadot		ports {
202*f126890aSEmmanuel Vadot			#address-cells = <1>;
203*f126890aSEmmanuel Vadot			#size-cells = <0>;
204*f126890aSEmmanuel Vadot			port@1 {
205*f126890aSEmmanuel Vadot				reg = <1>;
206*f126890aSEmmanuel Vadot				bridge_out_ep: endpoint {
207*f126890aSEmmanuel Vadot					remote-endpoint = <&panel_ep>;
208*f126890aSEmmanuel Vadot				};
209*f126890aSEmmanuel Vadot			};
210*f126890aSEmmanuel Vadot		};
211*f126890aSEmmanuel Vadot	};
212*f126890aSEmmanuel Vadot};
213*f126890aSEmmanuel Vadot
214*f126890aSEmmanuel Vadot&fimd {
215*f126890aSEmmanuel Vadot	status = "okay";
216*f126890aSEmmanuel Vadot};
217*f126890aSEmmanuel Vadot
218*f126890aSEmmanuel Vadot&hdmi {
219*f126890aSEmmanuel Vadot	pinctrl-names = "default";
220*f126890aSEmmanuel Vadot	pinctrl-0 = <&hdmi_hpd>;
221*f126890aSEmmanuel Vadot	status = "okay";
222*f126890aSEmmanuel Vadot	ddc = <&i2c_ddc>;
223*f126890aSEmmanuel Vadot	hpd-gpios = <&gpx3 7 GPIO_ACTIVE_HIGH>;
224*f126890aSEmmanuel Vadot	vdd_osc-supply = <&ldo10_reg>;
225*f126890aSEmmanuel Vadot	vdd_pll-supply = <&ldo8_reg>;
226*f126890aSEmmanuel Vadot	vdd-supply = <&ldo8_reg>;
227*f126890aSEmmanuel Vadot};
228*f126890aSEmmanuel Vadot
229*f126890aSEmmanuel Vadot&i2c_0 {
230*f126890aSEmmanuel Vadot	status = "okay";
231*f126890aSEmmanuel Vadot	samsung,i2c-sda-delay = <100>;
232*f126890aSEmmanuel Vadot	samsung,i2c-max-bus-freq = <20000>;
233*f126890aSEmmanuel Vadot	samsung,i2c-slave-addr = <0x66>;
234*f126890aSEmmanuel Vadot
235*f126890aSEmmanuel Vadot	pmic@66 {
236*f126890aSEmmanuel Vadot		compatible = "samsung,s5m8767-pmic";
237*f126890aSEmmanuel Vadot		reg = <0x66>;
238*f126890aSEmmanuel Vadot		interrupt-parent = <&gpx3>;
239*f126890aSEmmanuel Vadot		interrupts = <2 IRQ_TYPE_LEVEL_LOW>;
240*f126890aSEmmanuel Vadot		pinctrl-names = "default";
241*f126890aSEmmanuel Vadot		pinctrl-0 = <&s5m8767_irq>;
242*f126890aSEmmanuel Vadot		wakeup-source;
243*f126890aSEmmanuel Vadot
244*f126890aSEmmanuel Vadot		vinb1-supply = <&main_dc_reg>;
245*f126890aSEmmanuel Vadot		vinb2-supply = <&main_dc_reg>;
246*f126890aSEmmanuel Vadot		vinb3-supply = <&main_dc_reg>;
247*f126890aSEmmanuel Vadot		vinb4-supply = <&main_dc_reg>;
248*f126890aSEmmanuel Vadot		vinb5-supply = <&main_dc_reg>;
249*f126890aSEmmanuel Vadot		vinb6-supply = <&main_dc_reg>;
250*f126890aSEmmanuel Vadot		vinb7-supply = <&main_dc_reg>;
251*f126890aSEmmanuel Vadot		vinb8-supply = <&main_dc_reg>;
252*f126890aSEmmanuel Vadot		vinb9-supply = <&main_dc_reg>;
253*f126890aSEmmanuel Vadot
254*f126890aSEmmanuel Vadot		vinl1-supply = <&buck7_reg>;
255*f126890aSEmmanuel Vadot		vinl2-supply = <&buck7_reg>;
256*f126890aSEmmanuel Vadot		vinl3-supply = <&buck7_reg>;
257*f126890aSEmmanuel Vadot		vinl4-supply = <&main_dc_reg>;
258*f126890aSEmmanuel Vadot		vinl5-supply = <&main_dc_reg>;
259*f126890aSEmmanuel Vadot		vinl6-supply = <&main_dc_reg>;
260*f126890aSEmmanuel Vadot		vinl7-supply = <&main_dc_reg>;
261*f126890aSEmmanuel Vadot		vinl8-supply = <&buck8_reg>;
262*f126890aSEmmanuel Vadot		vinl9-supply = <&buck8_reg>;
263*f126890aSEmmanuel Vadot
264*f126890aSEmmanuel Vadot		s5m8767,pmic-buck-dvs-gpios = <&gpd1 0 GPIO_ACTIVE_HIGH>,
265*f126890aSEmmanuel Vadot					      <&gpd1 1 GPIO_ACTIVE_HIGH>,
266*f126890aSEmmanuel Vadot					      <&gpd1 2 GPIO_ACTIVE_HIGH>;
267*f126890aSEmmanuel Vadot		s5m8767,pmic-buck-ds-gpios = <&gpx2 3 GPIO_ACTIVE_HIGH>,
268*f126890aSEmmanuel Vadot					     <&gpx2 4 GPIO_ACTIVE_HIGH>,
269*f126890aSEmmanuel Vadot					     <&gpx2 5 GPIO_ACTIVE_HIGH>;
270*f126890aSEmmanuel Vadot
271*f126890aSEmmanuel Vadot		s5m8767_osc: clocks {
272*f126890aSEmmanuel Vadot			compatible = "samsung,s5m8767-clk";
273*f126890aSEmmanuel Vadot			#clock-cells = <1>;
274*f126890aSEmmanuel Vadot			clock-output-names = "s5m8767_ap", "unused1", "unused2";
275*f126890aSEmmanuel Vadot		};
276*f126890aSEmmanuel Vadot
277*f126890aSEmmanuel Vadot		regulators {
278*f126890aSEmmanuel Vadot			ldo1_reg: LDO1 {
279*f126890aSEmmanuel Vadot				regulator-name = "VDD_ALIVE_1.0V";
280*f126890aSEmmanuel Vadot				regulator-min-microvolt = <1100000>;
281*f126890aSEmmanuel Vadot				regulator-max-microvolt = <1100000>;
282*f126890aSEmmanuel Vadot				regulator-always-on;
283*f126890aSEmmanuel Vadot				regulator-boot-on;
284*f126890aSEmmanuel Vadot				op_mode = <1>;
285*f126890aSEmmanuel Vadot			};
286*f126890aSEmmanuel Vadot
287*f126890aSEmmanuel Vadot			ldo2_reg: LDO2 {
288*f126890aSEmmanuel Vadot				regulator-name = "VDD_28IO_DP_1.35V";
289*f126890aSEmmanuel Vadot				regulator-min-microvolt = <1200000>;
290*f126890aSEmmanuel Vadot				regulator-max-microvolt = <1200000>;
291*f126890aSEmmanuel Vadot				regulator-always-on;
292*f126890aSEmmanuel Vadot				regulator-boot-on;
293*f126890aSEmmanuel Vadot				op_mode = <1>;
294*f126890aSEmmanuel Vadot			};
295*f126890aSEmmanuel Vadot
296*f126890aSEmmanuel Vadot			ldo3_reg: LDO3 {
297*f126890aSEmmanuel Vadot				regulator-name = "VDD_COMMON1_1.8V";
298*f126890aSEmmanuel Vadot				regulator-min-microvolt = <1800000>;
299*f126890aSEmmanuel Vadot				regulator-max-microvolt = <1800000>;
300*f126890aSEmmanuel Vadot				regulator-always-on;
301*f126890aSEmmanuel Vadot				regulator-boot-on;
302*f126890aSEmmanuel Vadot				op_mode = <1>;
303*f126890aSEmmanuel Vadot			};
304*f126890aSEmmanuel Vadot
305*f126890aSEmmanuel Vadot			ldo4_reg: LDO4 {
306*f126890aSEmmanuel Vadot				regulator-name = "VDD_IOPERI_1.8V";
307*f126890aSEmmanuel Vadot				regulator-min-microvolt = <1800000>;
308*f126890aSEmmanuel Vadot				regulator-max-microvolt = <1800000>;
309*f126890aSEmmanuel Vadot				regulator-always-on;
310*f126890aSEmmanuel Vadot				op_mode = <1>;
311*f126890aSEmmanuel Vadot			};
312*f126890aSEmmanuel Vadot
313*f126890aSEmmanuel Vadot			ldo5_reg: LDO5 {
314*f126890aSEmmanuel Vadot				regulator-name = "VDD_EXT_1.8V";
315*f126890aSEmmanuel Vadot				regulator-min-microvolt = <1800000>;
316*f126890aSEmmanuel Vadot				regulator-max-microvolt = <1800000>;
317*f126890aSEmmanuel Vadot				regulator-always-on;
318*f126890aSEmmanuel Vadot				regulator-boot-on;
319*f126890aSEmmanuel Vadot				op_mode = <1>;
320*f126890aSEmmanuel Vadot			};
321*f126890aSEmmanuel Vadot
322*f126890aSEmmanuel Vadot			ldo6_reg: LDO6 {
323*f126890aSEmmanuel Vadot				regulator-name = "VDD_MPLL_1.1V";
324*f126890aSEmmanuel Vadot				regulator-min-microvolt = <1100000>;
325*f126890aSEmmanuel Vadot				regulator-max-microvolt = <1100000>;
326*f126890aSEmmanuel Vadot				regulator-always-on;
327*f126890aSEmmanuel Vadot				regulator-boot-on;
328*f126890aSEmmanuel Vadot				op_mode = <1>;
329*f126890aSEmmanuel Vadot			};
330*f126890aSEmmanuel Vadot
331*f126890aSEmmanuel Vadot			ldo7_reg: LDO7 {
332*f126890aSEmmanuel Vadot				regulator-name = "VDD_XPLL_1.1V";
333*f126890aSEmmanuel Vadot				regulator-min-microvolt = <1100000>;
334*f126890aSEmmanuel Vadot				regulator-max-microvolt = <1100000>;
335*f126890aSEmmanuel Vadot				regulator-always-on;
336*f126890aSEmmanuel Vadot				regulator-boot-on;
337*f126890aSEmmanuel Vadot				op_mode = <1>;
338*f126890aSEmmanuel Vadot			};
339*f126890aSEmmanuel Vadot
340*f126890aSEmmanuel Vadot			ldo8_reg: LDO8 {
341*f126890aSEmmanuel Vadot				regulator-name = "VDD_COMMON2_1.0V";
342*f126890aSEmmanuel Vadot				regulator-min-microvolt = <1000000>;
343*f126890aSEmmanuel Vadot				regulator-max-microvolt = <1000000>;
344*f126890aSEmmanuel Vadot				regulator-always-on;
345*f126890aSEmmanuel Vadot				regulator-boot-on;
346*f126890aSEmmanuel Vadot				op_mode = <1>;
347*f126890aSEmmanuel Vadot			};
348*f126890aSEmmanuel Vadot
349*f126890aSEmmanuel Vadot			ldo9_reg: LDO9 {
350*f126890aSEmmanuel Vadot				regulator-name = "VDD_33ON_3.0V";
351*f126890aSEmmanuel Vadot				regulator-min-microvolt = <3000000>;
352*f126890aSEmmanuel Vadot				regulator-max-microvolt = <3000000>;
353*f126890aSEmmanuel Vadot				op_mode = <1>;
354*f126890aSEmmanuel Vadot			};
355*f126890aSEmmanuel Vadot
356*f126890aSEmmanuel Vadot			ldo10_reg: LDO10 {
357*f126890aSEmmanuel Vadot				regulator-name = "VDD_COMMON3_1.8V";
358*f126890aSEmmanuel Vadot				regulator-min-microvolt = <1800000>;
359*f126890aSEmmanuel Vadot				regulator-max-microvolt = <1800000>;
360*f126890aSEmmanuel Vadot				regulator-always-on;
361*f126890aSEmmanuel Vadot				regulator-boot-on;
362*f126890aSEmmanuel Vadot				op_mode = <1>;
363*f126890aSEmmanuel Vadot			};
364*f126890aSEmmanuel Vadot
365*f126890aSEmmanuel Vadot			ldo11_reg: LDO11 {
366*f126890aSEmmanuel Vadot				regulator-name = "VDD_ABB2_1.8V";
367*f126890aSEmmanuel Vadot				regulator-min-microvolt = <1800000>;
368*f126890aSEmmanuel Vadot				regulator-max-microvolt = <1800000>;
369*f126890aSEmmanuel Vadot				regulator-always-on;
370*f126890aSEmmanuel Vadot				regulator-boot-on;
371*f126890aSEmmanuel Vadot				op_mode = <1>;
372*f126890aSEmmanuel Vadot			};
373*f126890aSEmmanuel Vadot
374*f126890aSEmmanuel Vadot			ldo12_reg: LDO12 {
375*f126890aSEmmanuel Vadot				regulator-name = "VDD_USB_3.0V";
376*f126890aSEmmanuel Vadot				regulator-min-microvolt = <3000000>;
377*f126890aSEmmanuel Vadot				regulator-max-microvolt = <3000000>;
378*f126890aSEmmanuel Vadot				regulator-always-on;
379*f126890aSEmmanuel Vadot				regulator-boot-on;
380*f126890aSEmmanuel Vadot				op_mode = <1>;
381*f126890aSEmmanuel Vadot			};
382*f126890aSEmmanuel Vadot
383*f126890aSEmmanuel Vadot			ldo13_reg: LDO13 {
384*f126890aSEmmanuel Vadot				regulator-name = "VDDQ_C2C_W_1.8V";
385*f126890aSEmmanuel Vadot				regulator-min-microvolt = <1800000>;
386*f126890aSEmmanuel Vadot				regulator-max-microvolt = <1800000>;
387*f126890aSEmmanuel Vadot				regulator-always-on;
388*f126890aSEmmanuel Vadot				regulator-boot-on;
389*f126890aSEmmanuel Vadot				op_mode = <1>;
390*f126890aSEmmanuel Vadot			};
391*f126890aSEmmanuel Vadot
392*f126890aSEmmanuel Vadot			ldo14_reg: LDO14 {
393*f126890aSEmmanuel Vadot				regulator-name = "VDD18_ABB0_3_1.8V";
394*f126890aSEmmanuel Vadot				regulator-min-microvolt = <1800000>;
395*f126890aSEmmanuel Vadot				regulator-max-microvolt = <1800000>;
396*f126890aSEmmanuel Vadot				regulator-always-on;
397*f126890aSEmmanuel Vadot				regulator-boot-on;
398*f126890aSEmmanuel Vadot				op_mode = <1>;
399*f126890aSEmmanuel Vadot			};
400*f126890aSEmmanuel Vadot
401*f126890aSEmmanuel Vadot			ldo15_reg: LDO15 {
402*f126890aSEmmanuel Vadot				regulator-name = "VDD10_COMMON4_1.0V";
403*f126890aSEmmanuel Vadot				regulator-min-microvolt = <1000000>;
404*f126890aSEmmanuel Vadot				regulator-max-microvolt = <1000000>;
405*f126890aSEmmanuel Vadot				regulator-always-on;
406*f126890aSEmmanuel Vadot				regulator-boot-on;
407*f126890aSEmmanuel Vadot				op_mode = <1>;
408*f126890aSEmmanuel Vadot			};
409*f126890aSEmmanuel Vadot
410*f126890aSEmmanuel Vadot			ldo16_reg: LDO16 {
411*f126890aSEmmanuel Vadot				regulator-name = "VDD18_HSIC_1.8V";
412*f126890aSEmmanuel Vadot				regulator-min-microvolt = <1800000>;
413*f126890aSEmmanuel Vadot				regulator-max-microvolt = <1800000>;
414*f126890aSEmmanuel Vadot				regulator-always-on;
415*f126890aSEmmanuel Vadot				regulator-boot-on;
416*f126890aSEmmanuel Vadot				op_mode = <1>;
417*f126890aSEmmanuel Vadot			};
418*f126890aSEmmanuel Vadot
419*f126890aSEmmanuel Vadot			ldo17_reg: LDO17 {
420*f126890aSEmmanuel Vadot				regulator-name = "VDDQ_MMC2_3_2.8V";
421*f126890aSEmmanuel Vadot				regulator-min-microvolt = <2800000>;
422*f126890aSEmmanuel Vadot				regulator-max-microvolt = <2800000>;
423*f126890aSEmmanuel Vadot				regulator-always-on;
424*f126890aSEmmanuel Vadot				regulator-boot-on;
425*f126890aSEmmanuel Vadot				op_mode = <1>;
426*f126890aSEmmanuel Vadot			};
427*f126890aSEmmanuel Vadot
428*f126890aSEmmanuel Vadot			ldo18_reg: LDO18 {
429*f126890aSEmmanuel Vadot				regulator-name = "VDD_33ON_2.8V";
430*f126890aSEmmanuel Vadot				regulator-min-microvolt = <2800000>;
431*f126890aSEmmanuel Vadot				regulator-max-microvolt = <2800000>;
432*f126890aSEmmanuel Vadot				op_mode = <1>;
433*f126890aSEmmanuel Vadot			};
434*f126890aSEmmanuel Vadot
435*f126890aSEmmanuel Vadot			ldo22_reg: LDO22 {
436*f126890aSEmmanuel Vadot				regulator-name = "EXT_33_OFF";
437*f126890aSEmmanuel Vadot				regulator-min-microvolt = <3300000>;
438*f126890aSEmmanuel Vadot				regulator-max-microvolt = <3300000>;
439*f126890aSEmmanuel Vadot				op_mode = <1>;
440*f126890aSEmmanuel Vadot			};
441*f126890aSEmmanuel Vadot
442*f126890aSEmmanuel Vadot			ldo23_reg: LDO23 {
443*f126890aSEmmanuel Vadot				regulator-name = "EXT_28_OFF";
444*f126890aSEmmanuel Vadot				regulator-min-microvolt = <2800000>;
445*f126890aSEmmanuel Vadot				regulator-max-microvolt = <2800000>;
446*f126890aSEmmanuel Vadot				op_mode = <1>;
447*f126890aSEmmanuel Vadot			};
448*f126890aSEmmanuel Vadot
449*f126890aSEmmanuel Vadot			ldo25_reg: LDO25 {
450*f126890aSEmmanuel Vadot				regulator-name = "PVDD_LDO25";
451*f126890aSEmmanuel Vadot				regulator-min-microvolt = <1200000>;
452*f126890aSEmmanuel Vadot				regulator-max-microvolt = <1200000>;
453*f126890aSEmmanuel Vadot				op_mode = <1>;
454*f126890aSEmmanuel Vadot			};
455*f126890aSEmmanuel Vadot
456*f126890aSEmmanuel Vadot			ldo26_reg: LDO26 {
457*f126890aSEmmanuel Vadot				regulator-name = "EXT_18_OFF";
458*f126890aSEmmanuel Vadot				regulator-min-microvolt = <1800000>;
459*f126890aSEmmanuel Vadot				regulator-max-microvolt = <1800000>;
460*f126890aSEmmanuel Vadot				op_mode = <1>;
461*f126890aSEmmanuel Vadot			};
462*f126890aSEmmanuel Vadot
463*f126890aSEmmanuel Vadot			buck1_reg: BUCK1 {
464*f126890aSEmmanuel Vadot				regulator-name = "VDD_MIF";
465*f126890aSEmmanuel Vadot				regulator-min-microvolt = <950000>;
466*f126890aSEmmanuel Vadot				regulator-max-microvolt = <1200000>;
467*f126890aSEmmanuel Vadot				regulator-always-on;
468*f126890aSEmmanuel Vadot				regulator-boot-on;
469*f126890aSEmmanuel Vadot				op_mode = <1>;
470*f126890aSEmmanuel Vadot			};
471*f126890aSEmmanuel Vadot
472*f126890aSEmmanuel Vadot			buck2_reg: BUCK2 {
473*f126890aSEmmanuel Vadot				regulator-name = "VDD_ARM";
474*f126890aSEmmanuel Vadot				regulator-min-microvolt = <912500>;
475*f126890aSEmmanuel Vadot				regulator-max-microvolt = <1300000>;
476*f126890aSEmmanuel Vadot				regulator-always-on;
477*f126890aSEmmanuel Vadot				regulator-boot-on;
478*f126890aSEmmanuel Vadot				op_mode = <1>;
479*f126890aSEmmanuel Vadot			};
480*f126890aSEmmanuel Vadot
481*f126890aSEmmanuel Vadot			buck3_reg: BUCK3 {
482*f126890aSEmmanuel Vadot				regulator-name = "VDD_INT";
483*f126890aSEmmanuel Vadot				regulator-min-microvolt = <900000>;
484*f126890aSEmmanuel Vadot				regulator-max-microvolt = <1200000>;
485*f126890aSEmmanuel Vadot				regulator-always-on;
486*f126890aSEmmanuel Vadot				regulator-boot-on;
487*f126890aSEmmanuel Vadot				op_mode = <1>;
488*f126890aSEmmanuel Vadot			};
489*f126890aSEmmanuel Vadot
490*f126890aSEmmanuel Vadot			buck4_reg: BUCK4 {
491*f126890aSEmmanuel Vadot				regulator-name = "VDD_G3D";
492*f126890aSEmmanuel Vadot				regulator-min-microvolt = <850000>;
493*f126890aSEmmanuel Vadot				regulator-max-microvolt = <1300000>;
494*f126890aSEmmanuel Vadot				regulator-always-on;
495*f126890aSEmmanuel Vadot				regulator-boot-on;
496*f126890aSEmmanuel Vadot				op_mode = <1>;
497*f126890aSEmmanuel Vadot			};
498*f126890aSEmmanuel Vadot
499*f126890aSEmmanuel Vadot			buck5_reg: BUCK5 {
500*f126890aSEmmanuel Vadot				regulator-name = "VDD_MEM_1.35V";
501*f126890aSEmmanuel Vadot				regulator-min-microvolt = <750000>;
502*f126890aSEmmanuel Vadot				regulator-max-microvolt = <1355000>;
503*f126890aSEmmanuel Vadot				regulator-always-on;
504*f126890aSEmmanuel Vadot				regulator-boot-on;
505*f126890aSEmmanuel Vadot				op_mode = <1>;
506*f126890aSEmmanuel Vadot			};
507*f126890aSEmmanuel Vadot
508*f126890aSEmmanuel Vadot			buck7_reg: BUCK7 {
509*f126890aSEmmanuel Vadot				regulator-name = "PVDD_BUCK7";
510*f126890aSEmmanuel Vadot				regulator-always-on;
511*f126890aSEmmanuel Vadot				op_mode = <1>;
512*f126890aSEmmanuel Vadot			};
513*f126890aSEmmanuel Vadot
514*f126890aSEmmanuel Vadot			buck8_reg: BUCK8 {
515*f126890aSEmmanuel Vadot				regulator-name = "PVDD_BUCK8";
516*f126890aSEmmanuel Vadot				regulator-always-on;
517*f126890aSEmmanuel Vadot				op_mode = <1>;
518*f126890aSEmmanuel Vadot			};
519*f126890aSEmmanuel Vadot
520*f126890aSEmmanuel Vadot			buck9_reg: BUCK9 {
521*f126890aSEmmanuel Vadot				regulator-name = "VDD_33_OFF_EXT1";
522*f126890aSEmmanuel Vadot				regulator-min-microvolt = <750000>;
523*f126890aSEmmanuel Vadot				regulator-max-microvolt = <3000000>;
524*f126890aSEmmanuel Vadot				op_mode = <1>;
525*f126890aSEmmanuel Vadot			};
526*f126890aSEmmanuel Vadot		};
527*f126890aSEmmanuel Vadot	};
528*f126890aSEmmanuel Vadot};
529*f126890aSEmmanuel Vadot
530*f126890aSEmmanuel Vadot&i2c_3 {
531*f126890aSEmmanuel Vadot	status = "okay";
532*f126890aSEmmanuel Vadot
533*f126890aSEmmanuel Vadot	wm1811: audio-codec@1a {
534*f126890aSEmmanuel Vadot		compatible = "wlf,wm1811";
535*f126890aSEmmanuel Vadot		reg = <0x1a>;
536*f126890aSEmmanuel Vadot		clocks = <&i2s0 CLK_I2S_CDCLK>;
537*f126890aSEmmanuel Vadot		clock-names = "MCLK1";
538*f126890aSEmmanuel Vadot
539*f126890aSEmmanuel Vadot		AVDD2-supply = <&main_dc_reg>;
540*f126890aSEmmanuel Vadot		CPVDD-supply = <&main_dc_reg>;
541*f126890aSEmmanuel Vadot		DBVDD1-supply = <&main_dc_reg>;
542*f126890aSEmmanuel Vadot		DBVDD2-supply = <&main_dc_reg>;
543*f126890aSEmmanuel Vadot		DBVDD3-supply = <&main_dc_reg>;
544*f126890aSEmmanuel Vadot		LDO1VDD-supply = <&main_dc_reg>;
545*f126890aSEmmanuel Vadot		SPKVDD1-supply = <&main_dc_reg>;
546*f126890aSEmmanuel Vadot		SPKVDD2-supply = <&main_dc_reg>;
547*f126890aSEmmanuel Vadot
548*f126890aSEmmanuel Vadot		wlf,ldo1ena-gpios = <&gpb0 0 GPIO_ACTIVE_HIGH>;
549*f126890aSEmmanuel Vadot		wlf,ldo2ena-gpios = <&gpb0 1 GPIO_ACTIVE_HIGH>;
550*f126890aSEmmanuel Vadot	};
551*f126890aSEmmanuel Vadot};
552*f126890aSEmmanuel Vadot
553*f126890aSEmmanuel Vadot&i2c_8 {
554*f126890aSEmmanuel Vadot	status = "okay";
555*f126890aSEmmanuel Vadot	/* used by HDMI PHY */
556*f126890aSEmmanuel Vadot	samsung,i2c-sda-delay = <100>;
557*f126890aSEmmanuel Vadot	samsung,i2c-max-bus-freq = <66000>;
558*f126890aSEmmanuel Vadot};
559*f126890aSEmmanuel Vadot
560*f126890aSEmmanuel Vadot&i2c_9 {
561*f126890aSEmmanuel Vadot	status = "okay";
562*f126890aSEmmanuel Vadot	samsung,i2c-sda-delay = <100>;
563*f126890aSEmmanuel Vadot	samsung,i2c-max-bus-freq = <40000>;
564*f126890aSEmmanuel Vadot};
565*f126890aSEmmanuel Vadot
566*f126890aSEmmanuel Vadot&i2s0 {
567*f126890aSEmmanuel Vadot	assigned-clocks = <&i2s0 CLK_I2S_RCLK_SRC>;
568*f126890aSEmmanuel Vadot	assigned-clock-parents = <&clock_audss EXYNOS_I2S_BUS>;
569*f126890aSEmmanuel Vadot	status = "okay";
570*f126890aSEmmanuel Vadot};
571*f126890aSEmmanuel Vadot
572*f126890aSEmmanuel Vadot&i2s0_bus {
573*f126890aSEmmanuel Vadot	samsung,pin-drv = <EXYNOS4_PIN_DRV_LV2>;
574*f126890aSEmmanuel Vadot};
575*f126890aSEmmanuel Vadot
576*f126890aSEmmanuel Vadot&mali {
577*f126890aSEmmanuel Vadot	mali-supply = <&buck4_reg>;
578*f126890aSEmmanuel Vadot	status = "okay";
579*f126890aSEmmanuel Vadot};
580*f126890aSEmmanuel Vadot
581*f126890aSEmmanuel Vadot&mixer {
582*f126890aSEmmanuel Vadot	status = "okay";
583*f126890aSEmmanuel Vadot};
584*f126890aSEmmanuel Vadot
585*f126890aSEmmanuel Vadot&mmc_0 {
586*f126890aSEmmanuel Vadot	status = "okay";
587*f126890aSEmmanuel Vadot	broken-cd;
588*f126890aSEmmanuel Vadot	card-detect-delay = <200>;
589*f126890aSEmmanuel Vadot	samsung,dw-mshc-ciu-div = <3>;
590*f126890aSEmmanuel Vadot	samsung,dw-mshc-sdr-timing = <2 3>;
591*f126890aSEmmanuel Vadot	samsung,dw-mshc-ddr-timing = <1 2>;
592*f126890aSEmmanuel Vadot	vmmc-supply = <&mmc_reg>;
593*f126890aSEmmanuel Vadot	pinctrl-names = "default";
594*f126890aSEmmanuel Vadot	pinctrl-0 = <&sd0_clk &sd0_cmd &sd0_bus4 &sd0_bus8>;
595*f126890aSEmmanuel Vadot	bus-width = <8>;
596*f126890aSEmmanuel Vadot	cap-mmc-highspeed;
597*f126890aSEmmanuel Vadot	mmc-ddr-1_8v;
598*f126890aSEmmanuel Vadot};
599*f126890aSEmmanuel Vadot
600*f126890aSEmmanuel Vadot&mmc_2 {
601*f126890aSEmmanuel Vadot	status = "okay";
602*f126890aSEmmanuel Vadot	card-detect-delay = <200>;
603*f126890aSEmmanuel Vadot	samsung,dw-mshc-ciu-div = <3>;
604*f126890aSEmmanuel Vadot	samsung,dw-mshc-sdr-timing = <2 3>;
605*f126890aSEmmanuel Vadot	samsung,dw-mshc-ddr-timing = <1 2>;
606*f126890aSEmmanuel Vadot	vmmc-supply = <&mmc_reg>;
607*f126890aSEmmanuel Vadot	pinctrl-names = "default";
608*f126890aSEmmanuel Vadot	pinctrl-0 = <&sd2_clk &sd2_cmd &sd2_cd &sd2_bus4>;
609*f126890aSEmmanuel Vadot	bus-width = <4>;
610*f126890aSEmmanuel Vadot	disable-wp;
611*f126890aSEmmanuel Vadot	cap-sd-highspeed;
612*f126890aSEmmanuel Vadot};
613*f126890aSEmmanuel Vadot
614*f126890aSEmmanuel Vadot&pinctrl_0 {
615*f126890aSEmmanuel Vadot	s5m8767_irq: s5m8767-irq-pins {
616*f126890aSEmmanuel Vadot		samsung,pins = "gpx3-2";
617*f126890aSEmmanuel Vadot		samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
618*f126890aSEmmanuel Vadot	};
619*f126890aSEmmanuel Vadot};
620*f126890aSEmmanuel Vadot
621*f126890aSEmmanuel Vadot&rtc {
622*f126890aSEmmanuel Vadot	clocks = <&clock CLK_RTC>, <&s5m8767_osc S2MPS11_CLK_AP>;
623*f126890aSEmmanuel Vadot	clock-names = "rtc", "rtc_src";
624*f126890aSEmmanuel Vadot	status = "okay";
625*f126890aSEmmanuel Vadot};
626*f126890aSEmmanuel Vadot
627*f126890aSEmmanuel Vadot&sata {
628*f126890aSEmmanuel Vadot	status = "okay";
629*f126890aSEmmanuel Vadot};
630*f126890aSEmmanuel Vadot
631*f126890aSEmmanuel Vadot&sata_phy {
632*f126890aSEmmanuel Vadot	status = "okay";
633*f126890aSEmmanuel Vadot	samsung,exynos-sataphy-i2c-phandle = <&sata_phy_i2c>;
634*f126890aSEmmanuel Vadot};
635*f126890aSEmmanuel Vadot
636*f126890aSEmmanuel Vadot&sata_phy_i2c {
637*f126890aSEmmanuel Vadot	status = "okay";
638*f126890aSEmmanuel Vadot};
639*f126890aSEmmanuel Vadot
640*f126890aSEmmanuel Vadot&usbdrd {
641*f126890aSEmmanuel Vadot	vdd10-supply = <&ldo15_reg>;
642*f126890aSEmmanuel Vadot	vdd33-supply = <&ldo12_reg>;
643*f126890aSEmmanuel Vadot};
644