1724ba675SRob Herring// SPDX-License-Identifier: GPL-2.0
2724ba675SRob Herring/*
3724ba675SRob Herring * Samsung's Exynos4412 based Trats 2 board device tree source
4724ba675SRob Herring *
5724ba675SRob Herring * Copyright (c) 2013 Samsung Electronics Co., Ltd.
6724ba675SRob Herring *		http://www.samsung.com
7724ba675SRob Herring *
8724ba675SRob Herring * Device tree source file for Samsung's Trats 2 board which is based on
9724ba675SRob Herring * Samsung's Exynos4412 SoC.
10724ba675SRob Herring */
11724ba675SRob Herring
12724ba675SRob Herring/dts-v1/;
13724ba675SRob Herring#include "exynos4412.dtsi"
14724ba675SRob Herring#include "exynos4412-ppmu-common.dtsi"
15724ba675SRob Herring
16724ba675SRob Herring#include <dt-bindings/gpio/gpio.h>
17724ba675SRob Herring#include <dt-bindings/input/input.h>
18724ba675SRob Herring#include <dt-bindings/interrupt-controller/irq.h>
19724ba675SRob Herring#include <dt-bindings/clock/maxim,max77686.h>
20724ba675SRob Herring#include "exynos-pinctrl.h"
21724ba675SRob Herring
22724ba675SRob Herring/ {
23724ba675SRob Herring	compatible = "samsung,midas", "samsung,exynos4412", "samsung,exynos4";
24724ba675SRob Herring
25724ba675SRob Herring	aliases {
26724ba675SRob Herring		i2c11 = &i2c_max77693;
27724ba675SRob Herring		i2c12 = &i2c_max77693_fuel;
28724ba675SRob Herring		mmc0 = &mshc_0;
29724ba675SRob Herring		mmc2 = &sdhci_2;
30724ba675SRob Herring		mmc3 = &sdhci_3;
31724ba675SRob Herring	};
32724ba675SRob Herring
33724ba675SRob Herring	chosen {
34724ba675SRob Herring		stdout-path = &serial_2;
35724ba675SRob Herring	};
36724ba675SRob Herring
37724ba675SRob Herring	firmware@204f000 {
38724ba675SRob Herring		compatible = "samsung,secure-firmware";
39724ba675SRob Herring		reg = <0x0204f000 0x1000>;
40724ba675SRob Herring	};
41724ba675SRob Herring
42724ba675SRob Herring	fixed-rate-clocks {
43724ba675SRob Herring		xxti {
44724ba675SRob Herring			compatible = "samsung,clock-xxti";
45724ba675SRob Herring			clock-frequency = <0>;
46724ba675SRob Herring		};
47724ba675SRob Herring
48724ba675SRob Herring		xusbxti {
49724ba675SRob Herring			compatible = "samsung,clock-xusbxti";
50724ba675SRob Herring			clock-frequency = <24000000>;
51724ba675SRob Herring		};
52724ba675SRob Herring	};
53724ba675SRob Herring
54724ba675SRob Herring	cam_io_reg: voltage-regulator-1 {
55724ba675SRob Herring		compatible = "regulator-fixed";
56724ba675SRob Herring		regulator-name = "CAM_SENSOR_A";
57724ba675SRob Herring		regulator-min-microvolt = <2800000>;
58724ba675SRob Herring		regulator-max-microvolt = <2800000>;
59724ba675SRob Herring		enable-active-high;
60724ba675SRob Herring		status = "disabled";
61724ba675SRob Herring	};
62724ba675SRob Herring
63724ba675SRob Herring	cam_af_reg: voltage-regulator-2 {
64724ba675SRob Herring		compatible = "regulator-fixed";
65724ba675SRob Herring		regulator-name = "CAM_AF";
66724ba675SRob Herring		regulator-min-microvolt = <2800000>;
67724ba675SRob Herring		regulator-max-microvolt = <2800000>;
68724ba675SRob Herring		enable-active-high;
69724ba675SRob Herring		status = "disabled";
70724ba675SRob Herring	};
71724ba675SRob Herring
72724ba675SRob Herring	vsil12: voltage-regulator-3 {
73724ba675SRob Herring		compatible = "regulator-fixed";
74724ba675SRob Herring		regulator-name = "VSIL_1.2V";
75724ba675SRob Herring		regulator-min-microvolt = <1200000>;
76724ba675SRob Herring		regulator-max-microvolt = <1200000>;
77724ba675SRob Herring		gpio = <&gpl0 4 GPIO_ACTIVE_HIGH>;
78724ba675SRob Herring		enable-active-high;
79724ba675SRob Herring		vin-supply = <&buck7_reg>;
80724ba675SRob Herring	};
81724ba675SRob Herring
82724ba675SRob Herring	vcc33mhl: voltage-regulator-4 {
83724ba675SRob Herring		compatible = "regulator-fixed";
84724ba675SRob Herring		regulator-name = "VCC_3.3_MHL";
85724ba675SRob Herring		regulator-min-microvolt = <3300000>;
86724ba675SRob Herring		regulator-max-microvolt = <3300000>;
87724ba675SRob Herring		gpio = <&gpl0 4 GPIO_ACTIVE_HIGH>;
88724ba675SRob Herring		enable-active-high;
89724ba675SRob Herring	};
90724ba675SRob Herring
91724ba675SRob Herring	vcc18mhl: voltage-regulator-5 {
92724ba675SRob Herring		compatible = "regulator-fixed";
93724ba675SRob Herring		regulator-name = "VCC_1.8_MHL";
94724ba675SRob Herring		regulator-min-microvolt = <1800000>;
95724ba675SRob Herring		regulator-max-microvolt = <1800000>;
96724ba675SRob Herring		gpio = <&gpl0 4 GPIO_ACTIVE_HIGH>;
97724ba675SRob Herring		enable-active-high;
98724ba675SRob Herring	};
99724ba675SRob Herring
100724ba675SRob Herring	touchkey_reg: voltage-regulator-6 {
101724ba675SRob Herring		compatible = "regulator-fixed";
102724ba675SRob Herring		regulator-name = "LED_VDD_3.3V";
103724ba675SRob Herring		regulator-min-microvolt = <3300000>;
104724ba675SRob Herring		regulator-max-microvolt = <3300000>;
105724ba675SRob Herring		enable-active-high;
106724ba675SRob Herring		status = "disabled";
107724ba675SRob Herring	};
108724ba675SRob Herring
109724ba675SRob Herring	vbatt_reg: voltage-regulator-7 {
110724ba675SRob Herring		compatible = "regulator-fixed";
111724ba675SRob Herring		regulator-name = "VBATT";
112724ba675SRob Herring		regulator-min-microvolt = <5000000>;
113724ba675SRob Herring		regulator-max-microvolt = <5000000>;
114724ba675SRob Herring		regulator-always-on;
115724ba675SRob Herring	};
116724ba675SRob Herring
117724ba675SRob Herring	mic_bias_reg: voltage-regulator-8 {
118724ba675SRob Herring		compatible = "regulator-fixed";
119724ba675SRob Herring		regulator-name = "MICBIAS_LDO_2.8V";
120724ba675SRob Herring		regulator-min-microvolt = <2800000>;
121724ba675SRob Herring		regulator-max-microvolt = <2800000>;
122724ba675SRob Herring		gpio = <&gpf1 7 GPIO_ACTIVE_HIGH>;
123724ba675SRob Herring		enable-active-high;
124724ba675SRob Herring	};
125724ba675SRob Herring
126724ba675SRob Herring	submic_bias_reg: voltage-regulator-9 {
127724ba675SRob Herring		compatible = "regulator-fixed";
128724ba675SRob Herring		regulator-name = "SUB_MICBIAS_LDO_2.8V";
129724ba675SRob Herring		regulator-min-microvolt = <2800000>;
130724ba675SRob Herring		regulator-max-microvolt = <2800000>;
131724ba675SRob Herring	};
132724ba675SRob Herring
133724ba675SRob Herring	gpio-keys {
134724ba675SRob Herring		compatible = "gpio-keys";
135724ba675SRob Herring		pinctrl-names = "default";
136724ba675SRob Herring		pinctrl-0 = <&gpio_keys>;
137724ba675SRob Herring
138724ba675SRob Herring		key-down {
139724ba675SRob Herring			gpios = <&gpx3 3 GPIO_ACTIVE_LOW>;
140724ba675SRob Herring			linux,code = <114>;
141724ba675SRob Herring			label = "volume down";
142724ba675SRob Herring			debounce-interval = <10>;
143724ba675SRob Herring		};
144724ba675SRob Herring
145724ba675SRob Herring		key-up {
146724ba675SRob Herring			gpios = <&gpx2 2 GPIO_ACTIVE_LOW>;
147724ba675SRob Herring			linux,code = <115>;
148724ba675SRob Herring			label = "volume up";
149724ba675SRob Herring			debounce-interval = <10>;
150724ba675SRob Herring		};
151724ba675SRob Herring
152724ba675SRob Herring		key-power {
153724ba675SRob Herring			gpios = <&gpx2 7 GPIO_ACTIVE_LOW>;
154724ba675SRob Herring			linux,code = <116>;
155724ba675SRob Herring			label = "power";
156724ba675SRob Herring			debounce-interval = <10>;
157724ba675SRob Herring			wakeup-source;
158724ba675SRob Herring		};
159724ba675SRob Herring
160724ba675SRob Herring		key-ok {
161724ba675SRob Herring			gpios = <&gpx0 1 GPIO_ACTIVE_LOW>;
162724ba675SRob Herring			linux,code = <139>;
163724ba675SRob Herring			label = "ok";
164724ba675SRob Herring			debounce-interval = <10>;
165724ba675SRob Herring			wakeup-source;
166724ba675SRob Herring		};
167724ba675SRob Herring	};
168724ba675SRob Herring
169724ba675SRob Herring	i2c_max77693: i2c-gpio-1 {
170724ba675SRob Herring		compatible = "i2c-gpio";
171724ba675SRob Herring		sda-gpios = <&gpm2 0 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
172724ba675SRob Herring		scl-gpios = <&gpm2 1 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
173724ba675SRob Herring		i2c-gpio,delay-us = <2>;
174724ba675SRob Herring		#address-cells = <1>;
175724ba675SRob Herring		#size-cells = <0>;
176724ba675SRob Herring
177724ba675SRob Herring		pmic@66 {
178724ba675SRob Herring			compatible = "maxim,max77693";
179724ba675SRob Herring			interrupt-parent = <&gpx1>;
180724ba675SRob Herring			interrupts = <5 IRQ_TYPE_LEVEL_LOW>;
181724ba675SRob Herring			pinctrl-names = "default";
182724ba675SRob Herring			pinctrl-0 = <&max77693_irq>;
183724ba675SRob Herring			reg = <0x66>;
184724ba675SRob Herring
185*57f706bfSKrzysztof Kozlowski			muic {
186*57f706bfSKrzysztof Kozlowski				compatible = "maxim,max77693-muic";
187*57f706bfSKrzysztof Kozlowski
188*57f706bfSKrzysztof Kozlowski				connector {
189*57f706bfSKrzysztof Kozlowski					compatible = "samsung,usb-connector-11pin",
190*57f706bfSKrzysztof Kozlowski						     "usb-b-connector";
191*57f706bfSKrzysztof Kozlowski					label = "micro-USB";
192*57f706bfSKrzysztof Kozlowski					type = "micro";
193*57f706bfSKrzysztof Kozlowski
194*57f706bfSKrzysztof Kozlowski					ports {
195*57f706bfSKrzysztof Kozlowski						#address-cells = <1>;
196*57f706bfSKrzysztof Kozlowski						#size-cells = <0>;
197*57f706bfSKrzysztof Kozlowski
198*57f706bfSKrzysztof Kozlowski						port@0 {
199*57f706bfSKrzysztof Kozlowski							reg = <0>;
200*57f706bfSKrzysztof Kozlowski
201*57f706bfSKrzysztof Kozlowski							muic_to_usb: endpoint {
202*57f706bfSKrzysztof Kozlowski								remote-endpoint = <&usb_to_muic>;
203*57f706bfSKrzysztof Kozlowski							};
204*57f706bfSKrzysztof Kozlowski						};
205*57f706bfSKrzysztof Kozlowski
206*57f706bfSKrzysztof Kozlowski						port@3 {
207*57f706bfSKrzysztof Kozlowski							reg = <3>;
208*57f706bfSKrzysztof Kozlowski
209*57f706bfSKrzysztof Kozlowski							muic_to_mhl: endpoint {
210*57f706bfSKrzysztof Kozlowski								remote-endpoint = <&mhl_to_muic>;
211*57f706bfSKrzysztof Kozlowski							};
212*57f706bfSKrzysztof Kozlowski						};
213*57f706bfSKrzysztof Kozlowski					};
214*57f706bfSKrzysztof Kozlowski				};
215*57f706bfSKrzysztof Kozlowski			};
216*57f706bfSKrzysztof Kozlowski
217724ba675SRob Herring			regulators {
218724ba675SRob Herring				esafeout1_reg: ESAFEOUT1 {
219724ba675SRob Herring					regulator-name = "ESAFEOUT1";
220724ba675SRob Herring				};
221724ba675SRob Herring				esafeout2_reg: ESAFEOUT2 {
222724ba675SRob Herring					regulator-name = "ESAFEOUT2";
223724ba675SRob Herring				};
224724ba675SRob Herring				charger_reg: CHARGER {
225724ba675SRob Herring					regulator-name = "CHARGER";
226724ba675SRob Herring					regulator-min-microamp = <60000>;
227724ba675SRob Herring					regulator-max-microamp = <2580000>;
228724ba675SRob Herring				};
229724ba675SRob Herring			};
230724ba675SRob Herring
231724ba675SRob Herring			motor-driver {
232724ba675SRob Herring				compatible = "maxim,max77693-haptic";
233724ba675SRob Herring				haptic-supply = <&ldo26_reg>;
234724ba675SRob Herring				pwms = <&pwm 0 38022 0>;
235724ba675SRob Herring			};
236724ba675SRob Herring
237724ba675SRob Herring			charger {
238724ba675SRob Herring				compatible = "maxim,max77693-charger";
239724ba675SRob Herring
240724ba675SRob Herring				maxim,constant-microvolt = <4350000>;
241724ba675SRob Herring				maxim,min-system-microvolt = <3600000>;
242724ba675SRob Herring				maxim,thermal-regulation-celsius = <100>;
243724ba675SRob Herring				maxim,battery-overcurrent-microamp = <3500000>;
244724ba675SRob Herring				maxim,charge-input-threshold-microvolt = <4300000>;
245724ba675SRob Herring			};
246724ba675SRob Herring		};
247724ba675SRob Herring	};
248724ba675SRob Herring
249724ba675SRob Herring	i2c_max77693_fuel: i2c-gpio-3 {
250724ba675SRob Herring		compatible = "i2c-gpio";
251724ba675SRob Herring		sda-gpios = <&gpf1 5 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
252724ba675SRob Herring		scl-gpios = <&gpf1 4 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
253724ba675SRob Herring		i2c-gpio,delay-us = <2>;
254724ba675SRob Herring		#address-cells = <1>;
255724ba675SRob Herring		#size-cells = <0>;
256724ba675SRob Herring
257724ba675SRob Herring		fuel-gauge@36 {
258724ba675SRob Herring			compatible = "maxim,max17047";
259724ba675SRob Herring			interrupt-parent = <&gpx2>;
260724ba675SRob Herring			interrupts = <3 IRQ_TYPE_LEVEL_LOW>;
261724ba675SRob Herring			pinctrl-names = "default";
262724ba675SRob Herring			pinctrl-0 = <&max77693_fuel_irq>;
263724ba675SRob Herring			reg = <0x36>;
264724ba675SRob Herring
265724ba675SRob Herring			maxim,over-heat-temp = <700>;
266724ba675SRob Herring			maxim,over-volt = <4500>;
267724ba675SRob Herring		};
268724ba675SRob Herring	};
269724ba675SRob Herring
270724ba675SRob Herring	i2c-gpio-4 {
271724ba675SRob Herring		compatible = "i2c-gpio";
272724ba675SRob Herring		sda-gpios = <&gpl0 2 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
273724ba675SRob Herring		scl-gpios = <&gpl0 1 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
274724ba675SRob Herring		i2c-gpio,delay-us = <2>;
275724ba675SRob Herring		#address-cells = <1>;
276724ba675SRob Herring		#size-cells = <0>;
277724ba675SRob Herring
278724ba675SRob Herring		touchkey@20 {
279724ba675SRob Herring			compatible = "cypress,midas-touchkey";
280724ba675SRob Herring			reg = <0x20>;
281724ba675SRob Herring			vdd-supply = <&touchkey_reg>;
282724ba675SRob Herring			vcc-supply = <&ldo5_reg>;
283724ba675SRob Herring			interrupt-parent = <&gpj0>;
284724ba675SRob Herring			interrupts = <3 IRQ_TYPE_EDGE_FALLING>;
285724ba675SRob Herring			linux,keycodes = <KEY_BACK KEY_MENU>;
286724ba675SRob Herring		};
287724ba675SRob Herring	};
288724ba675SRob Herring
289724ba675SRob Herring	i2c-mhl {
290724ba675SRob Herring		compatible = "i2c-gpio";
291724ba675SRob Herring		sda-gpios = <&gpf0 4 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
292724ba675SRob Herring		scl-gpios = <&gpf0 6 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
293724ba675SRob Herring		i2c-gpio,delay-us = <100>;
294724ba675SRob Herring		#address-cells = <1>;
295724ba675SRob Herring		#size-cells = <0>;
296724ba675SRob Herring
297724ba675SRob Herring		pinctrl-0 = <&i2c_mhl_bus>;
298724ba675SRob Herring		pinctrl-names = "default";
299724ba675SRob Herring
300724ba675SRob Herring		sii9234: hdmi-bridge@39 {
301724ba675SRob Herring			compatible = "sil,sii9234";
302724ba675SRob Herring			avcc33-supply = <&vcc33mhl>;
303724ba675SRob Herring			iovcc18-supply = <&vcc18mhl>;
304724ba675SRob Herring			avcc12-supply = <&vsil12>;
305724ba675SRob Herring			cvcc12-supply = <&vsil12>;
306724ba675SRob Herring			reset-gpios = <&gpf3 4 GPIO_ACTIVE_LOW>;
307724ba675SRob Herring			interrupt-parent = <&gpf3>;
308724ba675SRob Herring			interrupts = <5 IRQ_TYPE_LEVEL_HIGH>;
309724ba675SRob Herring			reg = <0x39>;
310724ba675SRob Herring
311724ba675SRob Herring			ports {
312724ba675SRob Herring				#address-cells = <1>;
313724ba675SRob Herring				#size-cells = <0>;
314724ba675SRob Herring
315724ba675SRob Herring				port@0 {
316724ba675SRob Herring					reg = <0>;
317724ba675SRob Herring
318724ba675SRob Herring					mhl_to_hdmi: endpoint {
319724ba675SRob Herring						remote-endpoint = <&hdmi_to_mhl>;
320724ba675SRob Herring					};
321724ba675SRob Herring				};
322*57f706bfSKrzysztof Kozlowski
323*57f706bfSKrzysztof Kozlowski				port@1 {
324*57f706bfSKrzysztof Kozlowski					reg = <1>;
325*57f706bfSKrzysztof Kozlowski
326*57f706bfSKrzysztof Kozlowski					mhl_to_muic: endpoint {
327*57f706bfSKrzysztof Kozlowski						remote-endpoint = <&muic_to_mhl>;
328*57f706bfSKrzysztof Kozlowski					};
329*57f706bfSKrzysztof Kozlowski				};
330724ba675SRob Herring			};
331724ba675SRob Herring		};
332724ba675SRob Herring	};
333724ba675SRob Herring
334724ba675SRob Herring	wlan_pwrseq: sdhci3-pwrseq {
335724ba675SRob Herring		compatible = "mmc-pwrseq-simple";
336724ba675SRob Herring		reset-gpios = <&gpj0 0 GPIO_ACTIVE_LOW>;
337724ba675SRob Herring		clocks = <&max77686 MAX77686_CLK_PMIC>;
338724ba675SRob Herring		clock-names = "ext_clock";
339724ba675SRob Herring	};
340724ba675SRob Herring
341724ba675SRob Herring	sound: sound {
342724ba675SRob Herring		compatible = "samsung,midas-audio";
343724ba675SRob Herring		model = "Midas";
344724ba675SRob Herring		mic-bias-supply = <&mic_bias_reg>;
345724ba675SRob Herring		submic-bias-supply = <&submic_bias_reg>;
346724ba675SRob Herring
347724ba675SRob Herring		cpu {
348724ba675SRob Herring			sound-dai = <&i2s0 0>;
349724ba675SRob Herring		};
350724ba675SRob Herring		codec {
351724ba675SRob Herring			sound-dai = <&wm1811>;
352724ba675SRob Herring		};
353724ba675SRob Herring	};
354724ba675SRob Herring
355724ba675SRob Herring	thermistor-ap {
356724ba675SRob Herring		compatible = "murata,ncp15wb473";
357724ba675SRob Herring		pullup-uv = <1800000>;	 /* VCC_1.8V_AP */
358724ba675SRob Herring		pullup-ohm = <100000>;	 /* 100K */
359724ba675SRob Herring		pulldown-ohm = <100000>; /* 100K */
360724ba675SRob Herring		io-channels = <&adc 1>;  /* AP temperature */
361724ba675SRob Herring	};
362724ba675SRob Herring
363724ba675SRob Herring	thermistor-battery {
364724ba675SRob Herring		compatible = "murata,ncp15wb473";
365724ba675SRob Herring		pullup-uv = <1800000>;	 /* VCC_1.8V_AP */
366724ba675SRob Herring		pullup-ohm = <100000>;	 /* 100K */
367724ba675SRob Herring		pulldown-ohm = <100000>; /* 100K */
368724ba675SRob Herring		io-channels = <&adc 2>;  /* Battery temperature */
369724ba675SRob Herring	};
370724ba675SRob Herring};
371724ba675SRob Herring
372724ba675SRob Herring&adc {
373724ba675SRob Herring	vdd-supply = <&ldo3_reg>;
374724ba675SRob Herring	status = "okay";
375724ba675SRob Herring};
376724ba675SRob Herring
377724ba675SRob Herring&bus_dmc {
378724ba675SRob Herring	devfreq-events = <&ppmu_dmc0_3>, <&ppmu_dmc1_3>;
379724ba675SRob Herring	vdd-supply = <&buck1_reg>;
380724ba675SRob Herring	status = "okay";
381724ba675SRob Herring};
382724ba675SRob Herring
383724ba675SRob Herring&bus_acp {
384724ba675SRob Herring	devfreq = <&bus_dmc>;
385724ba675SRob Herring	status = "okay";
386724ba675SRob Herring};
387724ba675SRob Herring
388724ba675SRob Herring&bus_c2c {
389724ba675SRob Herring	devfreq = <&bus_dmc>;
390724ba675SRob Herring	status = "okay";
391724ba675SRob Herring};
392724ba675SRob Herring
393724ba675SRob Herring&bus_leftbus {
394724ba675SRob Herring	devfreq-events = <&ppmu_leftbus_3>, <&ppmu_rightbus_3>;
395724ba675SRob Herring	vdd-supply = <&buck3_reg>;
396724ba675SRob Herring	status = "okay";
397724ba675SRob Herring};
398724ba675SRob Herring
399724ba675SRob Herring&bus_rightbus {
400724ba675SRob Herring	devfreq = <&bus_leftbus>;
401724ba675SRob Herring	status = "okay";
402724ba675SRob Herring};
403724ba675SRob Herring
404724ba675SRob Herring&bus_display {
405724ba675SRob Herring	devfreq = <&bus_leftbus>;
406724ba675SRob Herring	status = "okay";
407724ba675SRob Herring};
408724ba675SRob Herring
409724ba675SRob Herring&bus_fsys {
410724ba675SRob Herring	devfreq = <&bus_leftbus>;
411724ba675SRob Herring	status = "okay";
412724ba675SRob Herring};
413724ba675SRob Herring
414724ba675SRob Herring&bus_peri {
415724ba675SRob Herring	devfreq = <&bus_leftbus>;
416724ba675SRob Herring	status = "okay";
417724ba675SRob Herring};
418724ba675SRob Herring
419724ba675SRob Herring&bus_mfc {
420724ba675SRob Herring	devfreq = <&bus_leftbus>;
421724ba675SRob Herring	status = "okay";
422724ba675SRob Herring};
423724ba675SRob Herring
424724ba675SRob Herring&camera {
425724ba675SRob Herring	pinctrl-0 = <&cam_port_a_clk_active &cam_port_b_clk_active>;
426724ba675SRob Herring	pinctrl-names = "default";
427724ba675SRob Herring	status = "okay";
428724ba675SRob Herring	assigned-clocks = <&clock CLK_MOUT_CAM0>,
429724ba675SRob Herring		<&clock CLK_MOUT_CAM1>;
430724ba675SRob Herring	assigned-clock-parents = <&clock CLK_XUSBXTI>,
431724ba675SRob Herring		<&clock CLK_XUSBXTI>;
432724ba675SRob Herring};
433724ba675SRob Herring
434724ba675SRob Herring&cpu0 {
435724ba675SRob Herring	cpu0-supply = <&buck2_reg>;
436724ba675SRob Herring};
437724ba675SRob Herring
438724ba675SRob Herring&cpu_thermal {
439724ba675SRob Herring	cooling-maps {
440724ba675SRob Herring		map0 {
441724ba675SRob Herring			/* Corresponds to 800MHz at freq_table */
442724ba675SRob Herring			cooling-device = <&cpu0 7 7>, <&cpu1 7 7>,
443724ba675SRob Herring					 <&cpu2 7 7>, <&cpu3 7 7>;
444724ba675SRob Herring		};
445724ba675SRob Herring		map1 {
446724ba675SRob Herring			/* Corresponds to 200MHz at freq_table */
447724ba675SRob Herring			cooling-device = <&cpu0 13 13>, <&cpu1 13 13>,
448724ba675SRob Herring					 <&cpu2 13 13>, <&cpu3 13 13>;
449724ba675SRob Herring		};
450724ba675SRob Herring	};
451724ba675SRob Herring};
452724ba675SRob Herring
453724ba675SRob Herring&csis_0 {
454724ba675SRob Herring	status = "okay";
455724ba675SRob Herring	vddcore-supply = <&ldo8_reg>;
456724ba675SRob Herring	vddio-supply = <&ldo10_reg>;
457724ba675SRob Herring	assigned-clocks = <&clock CLK_MOUT_CSIS0>,
458724ba675SRob Herring			<&clock CLK_SCLK_CSIS0>;
459724ba675SRob Herring	assigned-clock-parents = <&clock CLK_MOUT_MPLL_USER_T>;
460724ba675SRob Herring	assigned-clock-rates = <0>, <176000000>;
461724ba675SRob Herring
462724ba675SRob Herring	/* Camera C (3) MIPI CSI-2 (CSIS0) */
463724ba675SRob Herring	port@3 {
464724ba675SRob Herring		reg = <3>;
465724ba675SRob Herring		csis0_ep: endpoint {
466724ba675SRob Herring			remote-endpoint = <&s5c73m3_ep>;
467724ba675SRob Herring			data-lanes = <1 2 3 4>;
468724ba675SRob Herring			samsung,csis-hs-settle = <12>;
469724ba675SRob Herring		};
470724ba675SRob Herring	};
471724ba675SRob Herring};
472724ba675SRob Herring
473724ba675SRob Herring&csis_1 {
474724ba675SRob Herring	status = "okay";
475724ba675SRob Herring	vddcore-supply = <&ldo8_reg>;
476724ba675SRob Herring	vddio-supply = <&ldo10_reg>;
477724ba675SRob Herring	assigned-clocks = <&clock CLK_MOUT_CSIS1>,
478724ba675SRob Herring			<&clock CLK_SCLK_CSIS1>;
479724ba675SRob Herring	assigned-clock-parents = <&clock CLK_MOUT_MPLL_USER_T>;
480724ba675SRob Herring	assigned-clock-rates = <0>, <176000000>;
481724ba675SRob Herring
482724ba675SRob Herring	/* Camera D (4) MIPI CSI-2 (CSIS1) */
483724ba675SRob Herring	port@4 {
484724ba675SRob Herring		reg = <4>;
485724ba675SRob Herring		csis1_ep: endpoint {
486724ba675SRob Herring			remote-endpoint = <&is_s5k6a3_ep>;
487724ba675SRob Herring			data-lanes = <1>;
488724ba675SRob Herring			samsung,csis-hs-settle = <18>;
489724ba675SRob Herring			samsung,csis-wclk;
490724ba675SRob Herring		};
491724ba675SRob Herring	};
492724ba675SRob Herring};
493724ba675SRob Herring
494724ba675SRob Herring&dsi_0 {
495724ba675SRob Herring	vddcore-supply = <&ldo8_reg>;
496724ba675SRob Herring	vddio-supply = <&ldo10_reg>;
497724ba675SRob Herring	samsung,burst-clock-frequency = <500000000>;
498724ba675SRob Herring	samsung,esc-clock-frequency = <20000000>;
499724ba675SRob Herring	samsung,pll-clock-frequency = <24000000>;
500724ba675SRob Herring};
501724ba675SRob Herring
502724ba675SRob Herring&exynos_usbphy {
503724ba675SRob Herring	vbus-supply = <&esafeout1_reg>;
504724ba675SRob Herring	status = "okay";
505724ba675SRob Herring};
506724ba675SRob Herring
507724ba675SRob Herring&fimc_0 {
508724ba675SRob Herring	status = "okay";
509724ba675SRob Herring	assigned-clocks = <&clock CLK_MOUT_FIMC0>,
510724ba675SRob Herring			<&clock CLK_SCLK_FIMC0>;
511724ba675SRob Herring	assigned-clock-parents = <&clock CLK_MOUT_MPLL_USER_T>;
512724ba675SRob Herring	assigned-clock-rates = <0>, <176000000>;
513724ba675SRob Herring};
514724ba675SRob Herring
515724ba675SRob Herring&fimc_1 {
516724ba675SRob Herring	status = "okay";
517724ba675SRob Herring	assigned-clocks = <&clock CLK_MOUT_FIMC1>,
518724ba675SRob Herring			<&clock CLK_SCLK_FIMC1>;
519724ba675SRob Herring	assigned-clock-parents = <&clock CLK_MOUT_MPLL_USER_T>;
520724ba675SRob Herring	assigned-clock-rates = <0>, <176000000>;
521724ba675SRob Herring};
522724ba675SRob Herring
523724ba675SRob Herring&fimc_2 {
524724ba675SRob Herring	status = "okay";
525724ba675SRob Herring	assigned-clocks = <&clock CLK_MOUT_FIMC2>,
526724ba675SRob Herring			<&clock CLK_SCLK_FIMC2>;
527724ba675SRob Herring	assigned-clock-parents = <&clock CLK_MOUT_MPLL_USER_T>;
528724ba675SRob Herring	assigned-clock-rates = <0>, <176000000>;
529724ba675SRob Herring};
530724ba675SRob Herring
531724ba675SRob Herring&fimc_3 {
532724ba675SRob Herring	status = "okay";
533724ba675SRob Herring	assigned-clocks = <&clock CLK_MOUT_FIMC3>,
534724ba675SRob Herring			<&clock CLK_SCLK_FIMC3>;
535724ba675SRob Herring	assigned-clock-parents = <&clock CLK_MOUT_MPLL_USER_T>;
536724ba675SRob Herring	assigned-clock-rates = <0>, <176000000>;
537724ba675SRob Herring};
538724ba675SRob Herring
539724ba675SRob Herring&fimc_is {
540724ba675SRob Herring	pinctrl-0 = <&fimc_is_uart>;
541724ba675SRob Herring	pinctrl-names = "default";
542724ba675SRob Herring	status = "okay";
543724ba675SRob Herring};
544724ba675SRob Herring
545724ba675SRob Herring&fimc_lite_0 {
546724ba675SRob Herring	status = "okay";
547724ba675SRob Herring};
548724ba675SRob Herring
549724ba675SRob Herring&fimc_lite_1 {
550724ba675SRob Herring	status = "okay";
551724ba675SRob Herring};
552724ba675SRob Herring
553724ba675SRob Herring&fimd {
554724ba675SRob Herring	status = "okay";
555724ba675SRob Herring};
556724ba675SRob Herring
557724ba675SRob Herring&gpu {
558724ba675SRob Herring	mali-supply = <&buck4_reg>;
559724ba675SRob Herring	status = "okay";
560724ba675SRob Herring};
561724ba675SRob Herring
562724ba675SRob Herring&hdmi {
563724ba675SRob Herring	hpd-gpios = <&gpx3 7 GPIO_ACTIVE_HIGH>;
564724ba675SRob Herring	pinctrl-names = "default";
565724ba675SRob Herring	pinctrl-0 = <&hdmi_hpd>;
566724ba675SRob Herring	vdd-supply = <&ldo3_reg>;
567724ba675SRob Herring	vdd_osc-supply = <&ldo4_reg>;
568724ba675SRob Herring	vdd_pll-supply = <&ldo3_reg>;
569724ba675SRob Herring	ddc = <&i2c_5>;
570724ba675SRob Herring	status = "okay";
571724ba675SRob Herring
572724ba675SRob Herring	ports {
573724ba675SRob Herring		#address-cells = <1>;
574724ba675SRob Herring		#size-cells = <0>;
575724ba675SRob Herring
576724ba675SRob Herring		port@1 {
577724ba675SRob Herring			reg = <1>;
578724ba675SRob Herring			hdmi_to_mhl: endpoint {
579724ba675SRob Herring				remote-endpoint = <&mhl_to_hdmi>;
580724ba675SRob Herring			};
581724ba675SRob Herring		};
582724ba675SRob Herring	};
583724ba675SRob Herring};
584724ba675SRob Herring
585724ba675SRob Herring&hsotg {
586724ba675SRob Herring	vusb_d-supply = <&ldo15_reg>;
587724ba675SRob Herring	vusb_a-supply = <&ldo12_reg>;
588*57f706bfSKrzysztof Kozlowski	dr_mode = "otg";
589*57f706bfSKrzysztof Kozlowski	role-switch-default-mode = "peripheral";
590*57f706bfSKrzysztof Kozlowski	usb-role-switch;
591724ba675SRob Herring	status = "okay";
592*57f706bfSKrzysztof Kozlowski
593*57f706bfSKrzysztof Kozlowski	port {
594*57f706bfSKrzysztof Kozlowski		usb_to_muic: endpoint {
595*57f706bfSKrzysztof Kozlowski			remote-endpoint = <&muic_to_usb>;
596*57f706bfSKrzysztof Kozlowski		};
597*57f706bfSKrzysztof Kozlowski	};
598724ba675SRob Herring};
599724ba675SRob Herring
600724ba675SRob Herring&i2c_0 {
601724ba675SRob Herring	samsung,i2c-sda-delay = <100>;
602724ba675SRob Herring	samsung,i2c-slave-addr = <0x10>;
603724ba675SRob Herring	samsung,i2c-max-bus-freq = <400000>;
604724ba675SRob Herring	pinctrl-0 = <&i2c0_bus>;
605724ba675SRob Herring	pinctrl-names = "default";
606724ba675SRob Herring	status = "okay";
607724ba675SRob Herring
608724ba675SRob Herring	s5c73m3: image-sensor@3c {
609724ba675SRob Herring		compatible = "samsung,s5c73m3";
610724ba675SRob Herring		reg = <0x3c>;
611724ba675SRob Herring		xshutdown-gpios = <&gpf1 3 GPIO_ACTIVE_LOW>; /* ISP_RESET */
612724ba675SRob Herring		vdd-int-supply = <&buck9_reg>;
613724ba675SRob Herring		vddio-cis-supply = <&ldo9_reg>;
614724ba675SRob Herring		vddio-host-supply = <&ldo18_reg>;
615724ba675SRob Herring		vdd-af-supply = <&cam_af_reg>;
616724ba675SRob Herring		vdd-reg-supply = <&cam_io_reg>;
617724ba675SRob Herring		clock-frequency = <24000000>;
618724ba675SRob Herring		/* CAM_A_CLKOUT */
619724ba675SRob Herring		clocks = <&camera 0>;
620724ba675SRob Herring		clock-names = "cis_extclk";
621724ba675SRob Herring		status = "disabled";
622724ba675SRob Herring		port {
623724ba675SRob Herring			s5c73m3_ep: endpoint {
624724ba675SRob Herring				remote-endpoint = <&csis0_ep>;
625724ba675SRob Herring				data-lanes = <1 2 3 4>;
626724ba675SRob Herring			};
627724ba675SRob Herring		};
628724ba675SRob Herring	};
629724ba675SRob Herring};
630724ba675SRob Herring
631724ba675SRob Herring&i2c1_isp {
632724ba675SRob Herring	pinctrl-0 = <&fimc_is_i2c1>;
633724ba675SRob Herring	pinctrl-names = "default";
634724ba675SRob Herring
635724ba675SRob Herring	image-sensor@10 {
636724ba675SRob Herring		compatible = "samsung,s5k6a3";
637724ba675SRob Herring		reg = <0x10>;
638724ba675SRob Herring		svdda-supply = <&cam_io_reg>;
639724ba675SRob Herring		svddio-supply = <&ldo19_reg>;
640724ba675SRob Herring		afvdd-supply = <&ldo19_reg>;
641724ba675SRob Herring		clock-frequency = <24000000>;
642724ba675SRob Herring		/* CAM_B_CLKOUT */
643724ba675SRob Herring		clocks = <&camera 1>;
644724ba675SRob Herring		clock-names = "extclk";
645724ba675SRob Herring		gpios = <&gpm1 6 GPIO_ACTIVE_LOW>;
646724ba675SRob Herring
647724ba675SRob Herring		port {
648724ba675SRob Herring			is_s5k6a3_ep: endpoint {
649724ba675SRob Herring				remote-endpoint = <&csis1_ep>;
650724ba675SRob Herring				data-lanes = <1>;
651724ba675SRob Herring			};
652724ba675SRob Herring		};
653724ba675SRob Herring	};
654724ba675SRob Herring};
655724ba675SRob Herring
656724ba675SRob Herring&i2c_3 {
657724ba675SRob Herring	samsung,i2c-sda-delay = <100>;
658724ba675SRob Herring	samsung,i2c-slave-addr = <0x10>;
659724ba675SRob Herring	samsung,i2c-max-bus-freq = <400000>;
660724ba675SRob Herring	pinctrl-0 = <&i2c3_bus>;
661724ba675SRob Herring	pinctrl-names = "default";
662724ba675SRob Herring	status = "okay";
663724ba675SRob Herring};
664724ba675SRob Herring
665724ba675SRob Herring&i2c_4 {
666724ba675SRob Herring	samsung,i2c-sda-delay = <100>;
667724ba675SRob Herring	samsung,i2c-slave-addr = <0x10>;
668724ba675SRob Herring	samsung,i2c-max-bus-freq = <100000>;
669724ba675SRob Herring	pinctrl-0 = <&i2c4_bus>;
670724ba675SRob Herring	pinctrl-names = "default";
671724ba675SRob Herring	status = "okay";
672724ba675SRob Herring
673724ba675SRob Herring	wm1811: audio-codec@1a {
674724ba675SRob Herring		compatible = "wlf,wm1811";
675724ba675SRob Herring		reg = <0x1a>;
676724ba675SRob Herring		clocks = <&pmu_system_controller 0>,
677724ba675SRob Herring			<&max77686 MAX77686_CLK_PMIC>;
678724ba675SRob Herring		clock-names = "MCLK1", "MCLK2";
679724ba675SRob Herring		interrupt-controller;
680724ba675SRob Herring		#interrupt-cells = <2>;
681724ba675SRob Herring		interrupt-parent = <&gpx3>;
682724ba675SRob Herring		interrupts = <6 IRQ_TYPE_LEVEL_HIGH>;
683724ba675SRob Herring
684724ba675SRob Herring		gpio-controller;
685724ba675SRob Herring		#gpio-cells = <2>;
686724ba675SRob Herring		#sound-dai-cells = <0>;
687724ba675SRob Herring
688724ba675SRob Herring		wlf,gpio-cfg = <0x3 0x0 0x0 0x0 0x0 0x0
689724ba675SRob Herring			0x0 0x8000 0x0 0x0 0x0>;
690724ba675SRob Herring		wlf,micbias-cfg = <0x2f 0x2b>;
691724ba675SRob Herring
692724ba675SRob Herring		wlf,lineout1-feedback;
693724ba675SRob Herring		wlf,lineout1-se;
694724ba675SRob Herring		wlf,lineout2-se;
695724ba675SRob Herring		wlf,ldoena-always-driven;
696724ba675SRob Herring
697724ba675SRob Herring		AVDD2-supply = <&vbatt_reg>;
698724ba675SRob Herring		DBVDD1-supply = <&ldo3_reg>;
699724ba675SRob Herring		DBVDD2-supply = <&vbatt_reg>;
700724ba675SRob Herring		DBVDD3-supply = <&vbatt_reg>;
701724ba675SRob Herring		DCVDD-supply = <&ldo3_reg>;
702724ba675SRob Herring		CPVDD-supply = <&vbatt_reg>;
703724ba675SRob Herring		SPKVDD1-supply = <&vbatt_reg>;
704724ba675SRob Herring		SPKVDD2-supply = <&vbatt_reg>;
705724ba675SRob Herring		wlf,ldo1ena-gpios = <&gpj0 4 GPIO_ACTIVE_HIGH>;
706724ba675SRob Herring		wlf,ldo2ena-gpios = <&gpj0 4 GPIO_ACTIVE_HIGH>;
707724ba675SRob Herring	};
708724ba675SRob Herring};
709724ba675SRob Herring
710724ba675SRob Herring&i2c_5 {
711724ba675SRob Herring	status = "okay";
712724ba675SRob Herring};
713724ba675SRob Herring
714724ba675SRob Herring&i2c_7 {
715724ba675SRob Herring	samsung,i2c-sda-delay = <100>;
716724ba675SRob Herring	samsung,i2c-slave-addr = <0x10>;
717724ba675SRob Herring	samsung,i2c-max-bus-freq = <100000>;
718724ba675SRob Herring	pinctrl-0 = <&i2c7_bus>;
719724ba675SRob Herring	pinctrl-names = "default";
720724ba675SRob Herring	status = "okay";
721724ba675SRob Herring
722724ba675SRob Herring	max77686: pmic@9 {
723724ba675SRob Herring		compatible = "maxim,max77686";
724724ba675SRob Herring		interrupt-parent = <&gpx0>;
725724ba675SRob Herring		interrupts = <7 IRQ_TYPE_LEVEL_LOW>;
726724ba675SRob Herring		pinctrl-0 = <&max77686_irq>;
727724ba675SRob Herring		pinctrl-names = "default";
728724ba675SRob Herring		wakeup-source;
729724ba675SRob Herring		reg = <0x09>;
730724ba675SRob Herring		#clock-cells = <1>;
731724ba675SRob Herring
732724ba675SRob Herring		voltage-regulators {
733724ba675SRob Herring			ldo1_reg: LDO1 {
734724ba675SRob Herring				regulator-name = "VALIVE_1.0V_AP";
735724ba675SRob Herring				regulator-min-microvolt = <1000000>;
736724ba675SRob Herring				regulator-max-microvolt = <1000000>;
737724ba675SRob Herring				regulator-always-on;
738724ba675SRob Herring			};
739724ba675SRob Herring
740724ba675SRob Herring			ldo2_reg: LDO2 {
741724ba675SRob Herring				regulator-name = "VM1M2_1.2V_AP";
742724ba675SRob Herring				regulator-min-microvolt = <1200000>;
743724ba675SRob Herring				regulator-max-microvolt = <1200000>;
744724ba675SRob Herring				regulator-always-on;
745724ba675SRob Herring				regulator-state-mem {
746724ba675SRob Herring					regulator-on-in-suspend;
747724ba675SRob Herring				};
748724ba675SRob Herring			};
749724ba675SRob Herring
750724ba675SRob Herring			ldo3_reg: LDO3 {
751724ba675SRob Herring				regulator-name = "VCC_1.8V_AP";
752724ba675SRob Herring				regulator-min-microvolt = <1800000>;
753724ba675SRob Herring				regulator-max-microvolt = <1800000>;
754724ba675SRob Herring				regulator-always-on;
755724ba675SRob Herring			};
756724ba675SRob Herring
757724ba675SRob Herring			ldo4_reg: LDO4 {
758724ba675SRob Herring				regulator-name = "VCC_2.8V_AP";
759724ba675SRob Herring				regulator-min-microvolt = <2800000>;
760724ba675SRob Herring				regulator-max-microvolt = <2800000>;
761724ba675SRob Herring				regulator-always-on;
762724ba675SRob Herring			};
763724ba675SRob Herring
764724ba675SRob Herring			ldo5_reg: LDO5 {
765724ba675SRob Herring				regulator-name = "VCC_1.8V_IO";
766724ba675SRob Herring				regulator-min-microvolt = <1800000>;
767724ba675SRob Herring				regulator-max-microvolt = <1800000>;
768724ba675SRob Herring				regulator-always-on;
769724ba675SRob Herring			};
770724ba675SRob Herring
771724ba675SRob Herring			ldo6_reg: LDO6 {
772724ba675SRob Herring				regulator-name = "VMPLL_1.0V_AP";
773724ba675SRob Herring				regulator-min-microvolt = <1000000>;
774724ba675SRob Herring				regulator-max-microvolt = <1000000>;
775724ba675SRob Herring				regulator-always-on;
776724ba675SRob Herring				regulator-state-mem {
777724ba675SRob Herring					regulator-on-in-suspend;
778724ba675SRob Herring				};
779724ba675SRob Herring			};
780724ba675SRob Herring
781724ba675SRob Herring			ldo7_reg: LDO7 {
782724ba675SRob Herring				regulator-name = "VPLL_1.0V_AP";
783724ba675SRob Herring				regulator-min-microvolt = <1000000>;
784724ba675SRob Herring				regulator-max-microvolt = <1000000>;
785724ba675SRob Herring				regulator-always-on;
786724ba675SRob Herring				regulator-state-mem {
787724ba675SRob Herring					regulator-on-in-suspend;
788724ba675SRob Herring				};
789724ba675SRob Herring			};
790724ba675SRob Herring
791724ba675SRob Herring			ldo8_reg: LDO8 {
792724ba675SRob Herring				regulator-name = "VMIPI_1.0V";
793724ba675SRob Herring				regulator-min-microvolt = <1000000>;
794724ba675SRob Herring				regulator-max-microvolt = <1000000>;
795724ba675SRob Herring				regulator-state-mem {
796724ba675SRob Herring					regulator-off-in-suspend;
797724ba675SRob Herring				};
798724ba675SRob Herring			};
799724ba675SRob Herring
800724ba675SRob Herring			ldo9_reg: LDO9 {
801724ba675SRob Herring				regulator-name = "CAM_ISP_MIPI_1.2V";
802724ba675SRob Herring				regulator-min-microvolt = <1200000>;
803724ba675SRob Herring				regulator-max-microvolt = <1200000>;
804724ba675SRob Herring			};
805724ba675SRob Herring
806724ba675SRob Herring			ldo10_reg: LDO10 {
807724ba675SRob Herring				regulator-name = "VMIPI_1.8V";
808724ba675SRob Herring				regulator-min-microvolt = <1800000>;
809724ba675SRob Herring				regulator-max-microvolt = <1800000>;
810724ba675SRob Herring				regulator-state-mem {
811724ba675SRob Herring					regulator-off-in-suspend;
812724ba675SRob Herring				};
813724ba675SRob Herring			};
814724ba675SRob Herring
815724ba675SRob Herring			ldo11_reg: LDO11 {
816724ba675SRob Herring				regulator-name = "VABB1_1.95V";
817724ba675SRob Herring				regulator-min-microvolt = <1950000>;
818724ba675SRob Herring				regulator-max-microvolt = <1950000>;
819724ba675SRob Herring				regulator-always-on;
820724ba675SRob Herring				regulator-state-mem {
821724ba675SRob Herring					regulator-off-in-suspend;
822724ba675SRob Herring				};
823724ba675SRob Herring			};
824724ba675SRob Herring
825724ba675SRob Herring			ldo12_reg: LDO12 {
826724ba675SRob Herring				regulator-name = "VUOTG_3.0V";
827724ba675SRob Herring				regulator-min-microvolt = <3000000>;
828724ba675SRob Herring				regulator-max-microvolt = <3000000>;
829724ba675SRob Herring				regulator-state-mem {
830724ba675SRob Herring					regulator-off-in-suspend;
831724ba675SRob Herring				};
832724ba675SRob Herring			};
833724ba675SRob Herring
834724ba675SRob Herring			ldo13_reg: LDO13 {
835724ba675SRob Herring				regulator-name = "NFC_AVDD_1.8V";
836724ba675SRob Herring				regulator-min-microvolt = <1800000>;
837724ba675SRob Herring				regulator-max-microvolt = <1800000>;
838724ba675SRob Herring			};
839724ba675SRob Herring
840724ba675SRob Herring			ldo14_reg: LDO14 {
841724ba675SRob Herring				regulator-name = "VABB2_1.95V";
842724ba675SRob Herring				regulator-min-microvolt = <1950000>;
843724ba675SRob Herring				regulator-max-microvolt = <1950000>;
844724ba675SRob Herring				regulator-always-on;
845724ba675SRob Herring				regulator-state-mem {
846724ba675SRob Herring					regulator-off-in-suspend;
847724ba675SRob Herring				};
848724ba675SRob Herring			};
849724ba675SRob Herring
850724ba675SRob Herring			ldo15_reg: LDO15 {
851724ba675SRob Herring				regulator-name = "VHSIC_1.0V";
852724ba675SRob Herring				regulator-min-microvolt = <1000000>;
853724ba675SRob Herring				regulator-max-microvolt = <1000000>;
854724ba675SRob Herring				regulator-state-mem {
855724ba675SRob Herring					regulator-on-in-suspend;
856724ba675SRob Herring				};
857724ba675SRob Herring			};
858724ba675SRob Herring
859724ba675SRob Herring			ldo16_reg: LDO16 {
860724ba675SRob Herring				regulator-name = "VHSIC_1.8V";
861724ba675SRob Herring				regulator-min-microvolt = <1800000>;
862724ba675SRob Herring				regulator-max-microvolt = <1800000>;
863724ba675SRob Herring				regulator-state-mem {
864724ba675SRob Herring					regulator-on-in-suspend;
865724ba675SRob Herring				};
866724ba675SRob Herring			};
867724ba675SRob Herring
868724ba675SRob Herring			ldo17_reg: LDO17 {
869724ba675SRob Herring				regulator-name = "CAM_SENSOR_CORE_1.2V";
870724ba675SRob Herring				regulator-min-microvolt = <1200000>;
871724ba675SRob Herring				regulator-max-microvolt = <1200000>;
872724ba675SRob Herring			};
873724ba675SRob Herring
874724ba675SRob Herring			ldo18_reg: LDO18 {
875724ba675SRob Herring				regulator-name = "CAM_ISP_SEN_IO_1.8V";
876724ba675SRob Herring				regulator-min-microvolt = <1800000>;
877724ba675SRob Herring				regulator-max-microvolt = <1800000>;
878724ba675SRob Herring			};
879724ba675SRob Herring
880724ba675SRob Herring			ldo19_reg: LDO19 {
881724ba675SRob Herring				regulator-name = "VT_CAM_1.8V";
882724ba675SRob Herring				regulator-min-microvolt = <1800000>;
883724ba675SRob Herring				regulator-max-microvolt = <1800000>;
884724ba675SRob Herring			};
885724ba675SRob Herring
886724ba675SRob Herring			ldo20_reg: LDO20 {
887724ba675SRob Herring				regulator-name = "VDDQ_PRE_1.8V";
888724ba675SRob Herring				regulator-min-microvolt = <1800000>;
889724ba675SRob Herring				regulator-max-microvolt = <1800000>;
890724ba675SRob Herring			};
891724ba675SRob Herring
892724ba675SRob Herring			ldo21_reg: LDO21 {
893724ba675SRob Herring				regulator-name = "VTF_2.8V";
894724ba675SRob Herring				regulator-min-microvolt = <2800000>;
895724ba675SRob Herring				regulator-max-microvolt = <2800000>;
896724ba675SRob Herring				maxim,ena-gpios = <&gpy2 0 GPIO_ACTIVE_HIGH>;
897724ba675SRob Herring			};
898724ba675SRob Herring
899724ba675SRob Herring			ldo22_reg: LDO22 {
900724ba675SRob Herring				regulator-name = "VMEM_VDD_2.8V";
901724ba675SRob Herring				regulator-min-microvolt = <2800000>;
902724ba675SRob Herring				regulator-max-microvolt = <2800000>;
903724ba675SRob Herring				maxim,ena-gpios = <&gpk0 2 GPIO_ACTIVE_HIGH>;
904724ba675SRob Herring			};
905724ba675SRob Herring
906724ba675SRob Herring			ldo23_reg: LDO23 {
907724ba675SRob Herring				regulator-name = "TSP_AVDD_3.3V";
908724ba675SRob Herring				regulator-min-microvolt = <3300000>;
909724ba675SRob Herring				regulator-max-microvolt = <3300000>;
910724ba675SRob Herring			};
911724ba675SRob Herring
912724ba675SRob Herring			ldo24_reg: LDO24 {
913724ba675SRob Herring				regulator-name = "TSP_VDD_1.8V";
914724ba675SRob Herring				regulator-min-microvolt = <1800000>;
915724ba675SRob Herring				regulator-max-microvolt = <1800000>;
916724ba675SRob Herring			};
917724ba675SRob Herring
918724ba675SRob Herring			ldo25_reg: LDO25 {
919724ba675SRob Herring				regulator-name = "LDO25";
920724ba675SRob Herring			};
921724ba675SRob Herring
922724ba675SRob Herring			ldo26_reg: LDO26 {
923724ba675SRob Herring				regulator-name = "MOTOR_VCC_3.0V";
924724ba675SRob Herring				regulator-min-microvolt = <3000000>;
925724ba675SRob Herring				regulator-max-microvolt = <3000000>;
926724ba675SRob Herring			};
927724ba675SRob Herring
928724ba675SRob Herring			buck1_reg: BUCK1 {
929724ba675SRob Herring				regulator-name = "VDD_MIF";
930724ba675SRob Herring				regulator-min-microvolt = <850000>;
931724ba675SRob Herring				regulator-max-microvolt = <1100000>;
932724ba675SRob Herring				regulator-always-on;
933724ba675SRob Herring				regulator-boot-on;
934724ba675SRob Herring				regulator-state-mem {
935724ba675SRob Herring					regulator-off-in-suspend;
936724ba675SRob Herring				};
937724ba675SRob Herring			};
938724ba675SRob Herring
939724ba675SRob Herring			buck2_reg: BUCK2 {
940724ba675SRob Herring				regulator-name = "VDD_ARM";
941724ba675SRob Herring				regulator-min-microvolt = <850000>;
942724ba675SRob Herring				regulator-max-microvolt = <1500000>;
943724ba675SRob Herring				regulator-always-on;
944724ba675SRob Herring				regulator-boot-on;
945724ba675SRob Herring				regulator-state-mem {
946724ba675SRob Herring					regulator-on-in-suspend;
947724ba675SRob Herring				};
948724ba675SRob Herring			};
949724ba675SRob Herring
950724ba675SRob Herring			buck3_reg: BUCK3 {
951724ba675SRob Herring				regulator-name = "VDD_INT";
952724ba675SRob Herring				regulator-min-microvolt = <850000>;
953724ba675SRob Herring				regulator-max-microvolt = <1150000>;
954724ba675SRob Herring				regulator-always-on;
955724ba675SRob Herring				regulator-boot-on;
956724ba675SRob Herring				regulator-state-mem {
957724ba675SRob Herring					regulator-off-in-suspend;
958724ba675SRob Herring				};
959724ba675SRob Herring			};
960724ba675SRob Herring
961724ba675SRob Herring			buck4_reg: BUCK4 {
962724ba675SRob Herring				regulator-name = "VDD_G3D";
963724ba675SRob Herring				regulator-min-microvolt = <850000>;
964724ba675SRob Herring				regulator-max-microvolt = <1150000>;
965724ba675SRob Herring				regulator-boot-on;
966724ba675SRob Herring				regulator-state-mem {
967724ba675SRob Herring					regulator-off-in-suspend;
968724ba675SRob Herring				};
969724ba675SRob Herring			};
970724ba675SRob Herring
971724ba675SRob Herring			buck5_reg: BUCK5 {
972724ba675SRob Herring				regulator-name = "VMEM_1.2V_AP";
973724ba675SRob Herring				regulator-min-microvolt = <1200000>;
974724ba675SRob Herring				regulator-max-microvolt = <1200000>;
975724ba675SRob Herring				regulator-always-on;
976724ba675SRob Herring			};
977724ba675SRob Herring
978724ba675SRob Herring			buck6_reg: BUCK6 {
979724ba675SRob Herring				regulator-name = "VCC_SUB_1.35V";
980724ba675SRob Herring				regulator-min-microvolt = <1350000>;
981724ba675SRob Herring				regulator-max-microvolt = <1350000>;
982724ba675SRob Herring				regulator-always-on;
983724ba675SRob Herring			};
984724ba675SRob Herring
985724ba675SRob Herring			buck7_reg: BUCK7 {
986724ba675SRob Herring				regulator-name = "VCC_SUB_2.0V";
987724ba675SRob Herring				regulator-min-microvolt = <2000000>;
988724ba675SRob Herring				regulator-max-microvolt = <2000000>;
989724ba675SRob Herring				regulator-always-on;
990724ba675SRob Herring			};
991724ba675SRob Herring
992724ba675SRob Herring			buck8_reg: BUCK8 {
993724ba675SRob Herring				regulator-name = "VMEM_VDDF_3.0V";
994724ba675SRob Herring				regulator-min-microvolt = <2850000>;
995724ba675SRob Herring				regulator-max-microvolt = <2850000>;
996724ba675SRob Herring				maxim,ena-gpios = <&gpk0 2 GPIO_ACTIVE_HIGH>;
997724ba675SRob Herring			};
998724ba675SRob Herring
999724ba675SRob Herring			buck9_reg: BUCK9 {
1000724ba675SRob Herring				regulator-name = "CAM_ISP_CORE_1.2V";
1001724ba675SRob Herring				regulator-min-microvolt = <1000000>;
1002724ba675SRob Herring				regulator-max-microvolt = <1200000>;
1003724ba675SRob Herring			};
1004724ba675SRob Herring		};
1005724ba675SRob Herring	};
1006724ba675SRob Herring};
1007724ba675SRob Herring
1008724ba675SRob Herring&i2c_8 {
1009724ba675SRob Herring	status = "okay";
1010724ba675SRob Herring};
1011724ba675SRob Herring
1012724ba675SRob Herring&i2s0 {
1013724ba675SRob Herring	pinctrl-0 = <&i2s0_bus>;
1014724ba675SRob Herring	pinctrl-names = "default";
1015724ba675SRob Herring	status = "okay";
1016724ba675SRob Herring};
1017724ba675SRob Herring
1018724ba675SRob Herring&mixer {
1019724ba675SRob Herring	status = "okay";
1020724ba675SRob Herring};
1021724ba675SRob Herring
1022724ba675SRob Herring&mshc_0 {
1023724ba675SRob Herring	broken-cd;
1024724ba675SRob Herring	non-removable;
1025724ba675SRob Herring	card-detect-delay = <200>;
1026724ba675SRob Herring	vmmc-supply = <&ldo22_reg>;
1027724ba675SRob Herring	clock-frequency = <400000000>;
1028724ba675SRob Herring	samsung,dw-mshc-ciu-div = <0>;
1029724ba675SRob Herring	samsung,dw-mshc-sdr-timing = <2 3>;
1030724ba675SRob Herring	samsung,dw-mshc-ddr-timing = <1 2>;
1031724ba675SRob Herring	mmc-ddr-1_8v;
1032724ba675SRob Herring	pinctrl-0 = <&sd4_clk &sd4_cmd &sd4_bus4 &sd4_bus8>;
1033724ba675SRob Herring	pinctrl-names = "default";
1034724ba675SRob Herring	status = "okay";
1035724ba675SRob Herring	bus-width = <8>;
1036724ba675SRob Herring	cap-mmc-highspeed;
1037724ba675SRob Herring};
1038724ba675SRob Herring
1039724ba675SRob Herring&pmu_system_controller {
1040724ba675SRob Herring	assigned-clocks = <&pmu_system_controller 0>;
1041724ba675SRob Herring	assigned-clock-parents = <&clock CLK_XUSBXTI>;
1042724ba675SRob Herring};
1043724ba675SRob Herring
1044724ba675SRob Herring&pinctrl_0 {
1045724ba675SRob Herring	pinctrl-names = "default";
1046724ba675SRob Herring	pinctrl-0 = <&sleep0>;
1047724ba675SRob Herring
1048724ba675SRob Herring	mhl_int: mhl-int-pins {
1049724ba675SRob Herring		samsung,pins = "gpf3-5";
1050724ba675SRob Herring		samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
1051724ba675SRob Herring	};
1052724ba675SRob Herring
1053724ba675SRob Herring	i2c_mhl_bus: i2c-mhl-bus-pins {
1054724ba675SRob Herring		samsung,pins = "gpf0-4", "gpf0-6";
1055724ba675SRob Herring		samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
1056724ba675SRob Herring		samsung,pin-pud = <EXYNOS_PIN_PULL_DOWN>;
1057724ba675SRob Herring		samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
1058724ba675SRob Herring	};
1059724ba675SRob Herring
1060724ba675SRob Herring	sleep0: sleep-state {
1061724ba675SRob Herring		PIN_SLP(gpa0-0, INPUT, NONE);
1062724ba675SRob Herring		PIN_SLP(gpa0-1, OUT0, NONE);
1063724ba675SRob Herring		PIN_SLP(gpa0-2, INPUT, NONE);
1064724ba675SRob Herring		PIN_SLP(gpa0-3, INPUT, UP);
1065724ba675SRob Herring		PIN_SLP(gpa0-4, INPUT, NONE);
1066724ba675SRob Herring		PIN_SLP(gpa0-5, INPUT, DOWN);
1067724ba675SRob Herring		PIN_SLP(gpa0-6, INPUT, DOWN);
1068724ba675SRob Herring		PIN_SLP(gpa0-7, INPUT, UP);
1069724ba675SRob Herring
1070724ba675SRob Herring		PIN_SLP(gpa1-0, INPUT, DOWN);
1071724ba675SRob Herring		PIN_SLP(gpa1-1, INPUT, DOWN);
1072724ba675SRob Herring		PIN_SLP(gpa1-2, INPUT, DOWN);
1073724ba675SRob Herring		PIN_SLP(gpa1-3, INPUT, DOWN);
1074724ba675SRob Herring		PIN_SLP(gpa1-4, INPUT, DOWN);
1075724ba675SRob Herring		PIN_SLP(gpa1-5, INPUT, DOWN);
1076724ba675SRob Herring
1077724ba675SRob Herring		PIN_SLP(gpb-0, INPUT, NONE);
1078724ba675SRob Herring		PIN_SLP(gpb-1, INPUT, NONE);
1079724ba675SRob Herring		PIN_SLP(gpb-2, INPUT, NONE);
1080724ba675SRob Herring		PIN_SLP(gpb-3, INPUT, NONE);
1081724ba675SRob Herring		PIN_SLP(gpb-4, INPUT, DOWN);
1082724ba675SRob Herring		PIN_SLP(gpb-5, INPUT, UP);
1083724ba675SRob Herring		PIN_SLP(gpb-6, INPUT, DOWN);
1084724ba675SRob Herring		PIN_SLP(gpb-7, INPUT, DOWN);
1085724ba675SRob Herring
1086724ba675SRob Herring		PIN_SLP(gpc0-0, INPUT, DOWN);
1087724ba675SRob Herring		PIN_SLP(gpc0-1, INPUT, DOWN);
1088724ba675SRob Herring		PIN_SLP(gpc0-2, INPUT, DOWN);
1089724ba675SRob Herring		PIN_SLP(gpc0-3, INPUT, DOWN);
1090724ba675SRob Herring		PIN_SLP(gpc0-4, INPUT, DOWN);
1091724ba675SRob Herring
1092724ba675SRob Herring		PIN_SLP(gpc1-0, INPUT, NONE);
1093724ba675SRob Herring		PIN_SLP(gpc1-1, PREV, NONE);
1094724ba675SRob Herring		PIN_SLP(gpc1-2, INPUT, NONE);
1095724ba675SRob Herring		PIN_SLP(gpc1-3, INPUT, NONE);
1096724ba675SRob Herring		PIN_SLP(gpc1-4, INPUT, NONE);
1097724ba675SRob Herring
1098724ba675SRob Herring		PIN_SLP(gpd0-0, INPUT, DOWN);
1099724ba675SRob Herring		PIN_SLP(gpd0-1, INPUT, DOWN);
1100724ba675SRob Herring		PIN_SLP(gpd0-2, INPUT, NONE);
1101724ba675SRob Herring		PIN_SLP(gpd0-3, INPUT, NONE);
1102724ba675SRob Herring
1103724ba675SRob Herring		PIN_SLP(gpd1-0, INPUT, DOWN);
1104724ba675SRob Herring		PIN_SLP(gpd1-1, INPUT, DOWN);
1105724ba675SRob Herring		PIN_SLP(gpd1-2, INPUT, NONE);
1106724ba675SRob Herring		PIN_SLP(gpd1-3, INPUT, NONE);
1107724ba675SRob Herring
1108724ba675SRob Herring		PIN_SLP(gpf0-0, INPUT, NONE);
1109724ba675SRob Herring		PIN_SLP(gpf0-1, INPUT, NONE);
1110724ba675SRob Herring		PIN_SLP(gpf0-2, INPUT, DOWN);
1111724ba675SRob Herring		PIN_SLP(gpf0-3, INPUT, DOWN);
1112724ba675SRob Herring		PIN_SLP(gpf0-4, INPUT, NONE);
1113724ba675SRob Herring		PIN_SLP(gpf0-5, INPUT, DOWN);
1114724ba675SRob Herring		PIN_SLP(gpf0-6, INPUT, NONE);
1115724ba675SRob Herring		PIN_SLP(gpf0-7, INPUT, DOWN);
1116724ba675SRob Herring
1117724ba675SRob Herring		PIN_SLP(gpf1-0, INPUT, DOWN);
1118724ba675SRob Herring		PIN_SLP(gpf1-1, INPUT, DOWN);
1119724ba675SRob Herring		PIN_SLP(gpf1-2, INPUT, DOWN);
1120724ba675SRob Herring		PIN_SLP(gpf1-3, INPUT, DOWN);
1121724ba675SRob Herring		PIN_SLP(gpf1-4, INPUT, NONE);
1122724ba675SRob Herring		PIN_SLP(gpf1-5, INPUT, NONE);
1123724ba675SRob Herring		PIN_SLP(gpf1-6, INPUT, DOWN);
1124724ba675SRob Herring		PIN_SLP(gpf1-7, PREV, NONE);
1125724ba675SRob Herring
1126724ba675SRob Herring		PIN_SLP(gpf2-0, PREV, NONE);
1127724ba675SRob Herring		PIN_SLP(gpf2-1, INPUT, DOWN);
1128724ba675SRob Herring		PIN_SLP(gpf2-2, INPUT, DOWN);
1129724ba675SRob Herring		PIN_SLP(gpf2-3, INPUT, DOWN);
1130724ba675SRob Herring		PIN_SLP(gpf2-4, INPUT, DOWN);
1131724ba675SRob Herring		PIN_SLP(gpf2-5, INPUT, DOWN);
1132724ba675SRob Herring		PIN_SLP(gpf2-6, INPUT, NONE);
1133724ba675SRob Herring		PIN_SLP(gpf2-7, INPUT, NONE);
1134724ba675SRob Herring
1135724ba675SRob Herring		PIN_SLP(gpf3-0, INPUT, NONE);
1136724ba675SRob Herring		PIN_SLP(gpf3-1, PREV, NONE);
1137724ba675SRob Herring		PIN_SLP(gpf3-2, PREV, NONE);
1138724ba675SRob Herring		PIN_SLP(gpf3-3, PREV, NONE);
1139724ba675SRob Herring		PIN_SLP(gpf3-4, OUT1, NONE);
1140724ba675SRob Herring		PIN_SLP(gpf3-5, INPUT, DOWN);
1141724ba675SRob Herring
1142724ba675SRob Herring		PIN_SLP(gpj0-0, PREV, NONE);
1143724ba675SRob Herring		PIN_SLP(gpj0-1, PREV, NONE);
1144724ba675SRob Herring		PIN_SLP(gpj0-2, PREV, NONE);
1145724ba675SRob Herring		PIN_SLP(gpj0-3, INPUT, DOWN);
1146724ba675SRob Herring		PIN_SLP(gpj0-4, PREV, NONE);
1147724ba675SRob Herring		PIN_SLP(gpj0-5, PREV, NONE);
1148724ba675SRob Herring		PIN_SLP(gpj0-6, INPUT, DOWN);
1149724ba675SRob Herring		PIN_SLP(gpj0-7, INPUT, DOWN);
1150724ba675SRob Herring
1151724ba675SRob Herring		PIN_SLP(gpj1-0, INPUT, DOWN);
1152724ba675SRob Herring		PIN_SLP(gpj1-1, PREV, NONE);
1153724ba675SRob Herring		PIN_SLP(gpj1-2, PREV, NONE);
1154724ba675SRob Herring		PIN_SLP(gpj1-3, INPUT, DOWN);
1155724ba675SRob Herring		PIN_SLP(gpj1-4, INPUT, DOWN);
1156724ba675SRob Herring	};
1157724ba675SRob Herring};
1158724ba675SRob Herring
1159724ba675SRob Herring&pinctrl_1 {
1160724ba675SRob Herring	pinctrl-names = "default";
1161724ba675SRob Herring	pinctrl-0 = <&sleep1>;
1162724ba675SRob Herring
1163724ba675SRob Herring	gpio_keys: gpio-keys-pins {
1164724ba675SRob Herring		samsung,pins = "gpx0-1", "gpx2-2", "gpx2-7", "gpx3-3";
1165724ba675SRob Herring		samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
1166724ba675SRob Herring	};
1167724ba675SRob Herring
1168724ba675SRob Herring	bt_shutdown: bt-shutdown-pins {
1169724ba675SRob Herring		samsung,pins = "gpl0-6";
1170724ba675SRob Herring		samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
1171724ba675SRob Herring	};
1172724ba675SRob Herring
1173724ba675SRob Herring	bt_host_wakeup: bt-host-wakeup-pins {
1174724ba675SRob Herring		samsung,pins = "gpx2-6";
1175724ba675SRob Herring		samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
1176724ba675SRob Herring	};
1177724ba675SRob Herring
1178724ba675SRob Herring	bt_device_wakeup: bt-device-wakeup-pins {
1179724ba675SRob Herring		samsung,pins = "gpx3-1";
1180724ba675SRob Herring		samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
1181724ba675SRob Herring	};
1182724ba675SRob Herring
1183724ba675SRob Herring	max77686_irq: max77686-irq-pins {
1184724ba675SRob Herring		samsung,pins = "gpx0-7";
1185724ba675SRob Herring		samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
1186724ba675SRob Herring	};
1187724ba675SRob Herring
1188724ba675SRob Herring	max77693_irq: max77693-irq-pins {
1189724ba675SRob Herring		samsung,pins = "gpx1-5";
1190724ba675SRob Herring		samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
1191724ba675SRob Herring	};
1192724ba675SRob Herring
1193724ba675SRob Herring	max77693_fuel_irq: max77693-fuel-irq-pins {
1194724ba675SRob Herring		samsung,pins = "gpx2-3";
1195724ba675SRob Herring		samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
1196724ba675SRob Herring	};
1197724ba675SRob Herring
1198724ba675SRob Herring	sdhci2_cd: sdhci2-cd-irq-pins {
1199724ba675SRob Herring		samsung,pins = "gpx3-4";
1200724ba675SRob Herring		samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
1201724ba675SRob Herring	};
1202724ba675SRob Herring
1203724ba675SRob Herring	hdmi_hpd: hdmi-hpd-pins {
1204724ba675SRob Herring		samsung,pins = "gpx3-7";
1205724ba675SRob Herring		samsung,pin-pud = <EXYNOS_PIN_PULL_DOWN>;
1206724ba675SRob Herring	};
1207724ba675SRob Herring
1208724ba675SRob Herring	sleep1: sleep-state {
1209724ba675SRob Herring		PIN_SLP(gpk0-0, PREV, NONE);
1210724ba675SRob Herring		PIN_SLP(gpk0-1, PREV, NONE);
1211724ba675SRob Herring		PIN_SLP(gpk0-2, OUT0, NONE);
1212724ba675SRob Herring		PIN_SLP(gpk0-3, PREV, NONE);
1213724ba675SRob Herring		PIN_SLP(gpk0-4, PREV, NONE);
1214724ba675SRob Herring		PIN_SLP(gpk0-5, PREV, NONE);
1215724ba675SRob Herring		PIN_SLP(gpk0-6, PREV, NONE);
1216724ba675SRob Herring
1217724ba675SRob Herring		PIN_SLP(gpk1-0, INPUT, DOWN);
1218724ba675SRob Herring		PIN_SLP(gpk1-1, INPUT, DOWN);
1219724ba675SRob Herring		PIN_SLP(gpk1-2, INPUT, DOWN);
1220724ba675SRob Herring		PIN_SLP(gpk1-3, PREV, NONE);
1221724ba675SRob Herring		PIN_SLP(gpk1-4, PREV, NONE);
1222724ba675SRob Herring		PIN_SLP(gpk1-5, PREV, NONE);
1223724ba675SRob Herring		PIN_SLP(gpk1-6, PREV, NONE);
1224724ba675SRob Herring
1225724ba675SRob Herring		PIN_SLP(gpk2-0, INPUT, DOWN);
1226724ba675SRob Herring		PIN_SLP(gpk2-1, INPUT, DOWN);
1227724ba675SRob Herring		PIN_SLP(gpk2-2, INPUT, DOWN);
1228724ba675SRob Herring		PIN_SLP(gpk2-3, INPUT, DOWN);
1229724ba675SRob Herring		PIN_SLP(gpk2-4, INPUT, DOWN);
1230724ba675SRob Herring		PIN_SLP(gpk2-5, INPUT, DOWN);
1231724ba675SRob Herring		PIN_SLP(gpk2-6, INPUT, DOWN);
1232724ba675SRob Herring
1233724ba675SRob Herring		PIN_SLP(gpk3-0, OUT0, NONE);
1234724ba675SRob Herring		PIN_SLP(gpk3-1, INPUT, NONE);
1235724ba675SRob Herring		PIN_SLP(gpk3-2, INPUT, DOWN);
1236724ba675SRob Herring		PIN_SLP(gpk3-3, INPUT, NONE);
1237724ba675SRob Herring		PIN_SLP(gpk3-4, INPUT, NONE);
1238724ba675SRob Herring		PIN_SLP(gpk3-5, INPUT, NONE);
1239724ba675SRob Herring		PIN_SLP(gpk3-6, INPUT, NONE);
1240724ba675SRob Herring
1241724ba675SRob Herring		PIN_SLP(gpl0-0, INPUT, DOWN);
1242724ba675SRob Herring		PIN_SLP(gpl0-1, INPUT, DOWN);
1243724ba675SRob Herring		PIN_SLP(gpl0-2, INPUT, DOWN);
1244724ba675SRob Herring		PIN_SLP(gpl0-3, INPUT, DOWN);
1245724ba675SRob Herring		PIN_SLP(gpl0-4, PREV, NONE);
1246724ba675SRob Herring		PIN_SLP(gpl0-6, PREV, NONE);
1247724ba675SRob Herring
1248724ba675SRob Herring		PIN_SLP(gpl1-0, INPUT, DOWN);
1249724ba675SRob Herring		PIN_SLP(gpl1-1, INPUT, DOWN);
1250724ba675SRob Herring		PIN_SLP(gpl2-0, INPUT, DOWN);
1251724ba675SRob Herring		PIN_SLP(gpl2-1, INPUT, DOWN);
1252724ba675SRob Herring		PIN_SLP(gpl2-2, INPUT, DOWN);
1253724ba675SRob Herring		PIN_SLP(gpl2-3, INPUT, DOWN);
1254724ba675SRob Herring		PIN_SLP(gpl2-4, INPUT, DOWN);
1255724ba675SRob Herring		PIN_SLP(gpl2-5, INPUT, DOWN);
1256724ba675SRob Herring		PIN_SLP(gpl2-6, PREV, NONE);
1257724ba675SRob Herring		PIN_SLP(gpl2-7, INPUT, DOWN);
1258724ba675SRob Herring
1259724ba675SRob Herring		PIN_SLP(gpm0-0, INPUT, DOWN);
1260724ba675SRob Herring		PIN_SLP(gpm0-1, INPUT, DOWN);
1261724ba675SRob Herring		PIN_SLP(gpm0-2, INPUT, DOWN);
1262724ba675SRob Herring		PIN_SLP(gpm0-3, INPUT, DOWN);
1263724ba675SRob Herring		PIN_SLP(gpm0-4, INPUT, DOWN);
1264724ba675SRob Herring		PIN_SLP(gpm0-5, INPUT, DOWN);
1265724ba675SRob Herring		PIN_SLP(gpm0-6, INPUT, DOWN);
1266724ba675SRob Herring		PIN_SLP(gpm0-7, INPUT, DOWN);
1267724ba675SRob Herring
1268724ba675SRob Herring		PIN_SLP(gpm1-0, INPUT, DOWN);
1269724ba675SRob Herring		PIN_SLP(gpm1-1, INPUT, DOWN);
1270724ba675SRob Herring		PIN_SLP(gpm1-2, INPUT, NONE);
1271724ba675SRob Herring		PIN_SLP(gpm1-3, INPUT, NONE);
1272724ba675SRob Herring		PIN_SLP(gpm1-4, INPUT, NONE);
1273724ba675SRob Herring		PIN_SLP(gpm1-5, INPUT, NONE);
1274724ba675SRob Herring		PIN_SLP(gpm1-6, INPUT, DOWN);
1275724ba675SRob Herring
1276724ba675SRob Herring		PIN_SLP(gpm2-0, INPUT, NONE);
1277724ba675SRob Herring		PIN_SLP(gpm2-1, INPUT, NONE);
1278724ba675SRob Herring		PIN_SLP(gpm2-2, INPUT, DOWN);
1279724ba675SRob Herring		PIN_SLP(gpm2-3, INPUT, DOWN);
1280724ba675SRob Herring		PIN_SLP(gpm2-4, INPUT, DOWN);
1281724ba675SRob Herring
1282724ba675SRob Herring		PIN_SLP(gpm3-0, PREV, NONE);
1283724ba675SRob Herring		PIN_SLP(gpm3-1, PREV, NONE);
1284724ba675SRob Herring		PIN_SLP(gpm3-2, PREV, NONE);
1285724ba675SRob Herring		PIN_SLP(gpm3-3, OUT1, NONE);
1286724ba675SRob Herring		PIN_SLP(gpm3-4, INPUT, DOWN);
1287724ba675SRob Herring		PIN_SLP(gpm3-5, INPUT, DOWN);
1288724ba675SRob Herring		PIN_SLP(gpm3-6, INPUT, DOWN);
1289724ba675SRob Herring		PIN_SLP(gpm3-7, INPUT, DOWN);
1290724ba675SRob Herring
1291724ba675SRob Herring		PIN_SLP(gpm4-0, INPUT, DOWN);
1292724ba675SRob Herring		PIN_SLP(gpm4-1, INPUT, DOWN);
1293724ba675SRob Herring		PIN_SLP(gpm4-2, INPUT, DOWN);
1294724ba675SRob Herring		PIN_SLP(gpm4-3, INPUT, DOWN);
1295724ba675SRob Herring		PIN_SLP(gpm4-4, INPUT, DOWN);
1296724ba675SRob Herring		PIN_SLP(gpm4-5, INPUT, DOWN);
1297724ba675SRob Herring		PIN_SLP(gpm4-6, INPUT, DOWN);
1298724ba675SRob Herring		PIN_SLP(gpm4-7, INPUT, DOWN);
1299724ba675SRob Herring
1300724ba675SRob Herring		PIN_SLP(gpy0-0, INPUT, DOWN);
1301724ba675SRob Herring		PIN_SLP(gpy0-1, INPUT, DOWN);
1302724ba675SRob Herring		PIN_SLP(gpy0-2, INPUT, DOWN);
1303724ba675SRob Herring		PIN_SLP(gpy0-3, INPUT, DOWN);
1304724ba675SRob Herring		PIN_SLP(gpy0-4, INPUT, DOWN);
1305724ba675SRob Herring		PIN_SLP(gpy0-5, INPUT, DOWN);
1306724ba675SRob Herring
1307724ba675SRob Herring		PIN_SLP(gpy1-0, INPUT, DOWN);
1308724ba675SRob Herring		PIN_SLP(gpy1-1, INPUT, DOWN);
1309724ba675SRob Herring		PIN_SLP(gpy1-2, INPUT, DOWN);
1310724ba675SRob Herring		PIN_SLP(gpy1-3, INPUT, DOWN);
1311724ba675SRob Herring
1312724ba675SRob Herring		PIN_SLP(gpy2-0, PREV, NONE);
1313724ba675SRob Herring		PIN_SLP(gpy2-1, INPUT, DOWN);
1314724ba675SRob Herring		PIN_SLP(gpy2-2, INPUT, NONE);
1315724ba675SRob Herring		PIN_SLP(gpy2-3, INPUT, NONE);
1316724ba675SRob Herring		PIN_SLP(gpy2-4, INPUT, NONE);
1317724ba675SRob Herring		PIN_SLP(gpy2-5, INPUT, NONE);
1318724ba675SRob Herring
1319724ba675SRob Herring		PIN_SLP(gpy3-0, INPUT, DOWN);
1320724ba675SRob Herring		PIN_SLP(gpy3-1, INPUT, DOWN);
1321724ba675SRob Herring		PIN_SLP(gpy3-2, INPUT, DOWN);
1322724ba675SRob Herring		PIN_SLP(gpy3-3, INPUT, DOWN);
1323724ba675SRob Herring		PIN_SLP(gpy3-4, INPUT, DOWN);
1324724ba675SRob Herring		PIN_SLP(gpy3-5, INPUT, DOWN);
1325724ba675SRob Herring		PIN_SLP(gpy3-6, INPUT, DOWN);
1326724ba675SRob Herring		PIN_SLP(gpy3-7, INPUT, DOWN);
1327724ba675SRob Herring
1328724ba675SRob Herring		PIN_SLP(gpy4-0, INPUT, DOWN);
1329724ba675SRob Herring		PIN_SLP(gpy4-1, INPUT, DOWN);
1330724ba675SRob Herring		PIN_SLP(gpy4-2, INPUT, DOWN);
1331724ba675SRob Herring		PIN_SLP(gpy4-3, INPUT, DOWN);
1332724ba675SRob Herring		PIN_SLP(gpy4-4, INPUT, DOWN);
1333724ba675SRob Herring		PIN_SLP(gpy4-5, INPUT, DOWN);
1334724ba675SRob Herring		PIN_SLP(gpy4-6, INPUT, DOWN);
1335724ba675SRob Herring		PIN_SLP(gpy4-7, INPUT, DOWN);
1336724ba675SRob Herring
1337724ba675SRob Herring		PIN_SLP(gpy5-0, INPUT, DOWN);
1338724ba675SRob Herring		PIN_SLP(gpy5-1, INPUT, DOWN);
1339724ba675SRob Herring		PIN_SLP(gpy5-2, INPUT, DOWN);
1340724ba675SRob Herring		PIN_SLP(gpy5-3, INPUT, DOWN);
1341724ba675SRob Herring		PIN_SLP(gpy5-4, INPUT, DOWN);
1342724ba675SRob Herring		PIN_SLP(gpy5-5, INPUT, DOWN);
1343724ba675SRob Herring		PIN_SLP(gpy5-6, INPUT, DOWN);
1344724ba675SRob Herring		PIN_SLP(gpy5-7, INPUT, DOWN);
1345724ba675SRob Herring
1346724ba675SRob Herring		PIN_SLP(gpy6-0, INPUT, DOWN);
1347724ba675SRob Herring		PIN_SLP(gpy6-1, INPUT, DOWN);
1348724ba675SRob Herring		PIN_SLP(gpy6-2, INPUT, DOWN);
1349724ba675SRob Herring		PIN_SLP(gpy6-3, INPUT, DOWN);
1350724ba675SRob Herring		PIN_SLP(gpy6-4, INPUT, DOWN);
1351724ba675SRob Herring		PIN_SLP(gpy6-5, INPUT, DOWN);
1352724ba675SRob Herring		PIN_SLP(gpy6-6, INPUT, DOWN);
1353724ba675SRob Herring		PIN_SLP(gpy6-7, INPUT, DOWN);
1354724ba675SRob Herring	};
1355724ba675SRob Herring};
1356724ba675SRob Herring
1357724ba675SRob Herring&pinctrl_2 {
1358724ba675SRob Herring	pinctrl-names = "default";
1359724ba675SRob Herring	pinctrl-0 = <&sleep2>;
1360724ba675SRob Herring
1361724ba675SRob Herring	sleep2: sleep-state {
1362724ba675SRob Herring		PIN_SLP(gpz-0, INPUT, DOWN);
1363724ba675SRob Herring		PIN_SLP(gpz-1, INPUT, DOWN);
1364724ba675SRob Herring		PIN_SLP(gpz-2, INPUT, DOWN);
1365724ba675SRob Herring		PIN_SLP(gpz-3, INPUT, DOWN);
1366724ba675SRob Herring		PIN_SLP(gpz-4, INPUT, DOWN);
1367724ba675SRob Herring		PIN_SLP(gpz-5, INPUT, DOWN);
1368724ba675SRob Herring		PIN_SLP(gpz-6, INPUT, DOWN);
1369724ba675SRob Herring	};
1370724ba675SRob Herring};
1371724ba675SRob Herring
1372724ba675SRob Herring&pinctrl_3 {
1373724ba675SRob Herring	pinctrl-names = "default";
1374724ba675SRob Herring	pinctrl-0 = <&sleep3>;
1375724ba675SRob Herring
1376724ba675SRob Herring	sleep3: sleep-state {
1377724ba675SRob Herring		PIN_SLP(gpv0-0, INPUT, DOWN);
1378724ba675SRob Herring		PIN_SLP(gpv0-1, INPUT, DOWN);
1379724ba675SRob Herring		PIN_SLP(gpv0-2, INPUT, DOWN);
1380724ba675SRob Herring		PIN_SLP(gpv0-3, INPUT, DOWN);
1381724ba675SRob Herring		PIN_SLP(gpv0-4, INPUT, DOWN);
1382724ba675SRob Herring		PIN_SLP(gpv0-5, INPUT, DOWN);
1383724ba675SRob Herring		PIN_SLP(gpv0-6, INPUT, DOWN);
1384724ba675SRob Herring		PIN_SLP(gpv0-7, INPUT, DOWN);
1385724ba675SRob Herring
1386724ba675SRob Herring		PIN_SLP(gpv1-0, INPUT, DOWN);
1387724ba675SRob Herring		PIN_SLP(gpv1-1, INPUT, DOWN);
1388724ba675SRob Herring		PIN_SLP(gpv1-2, INPUT, DOWN);
1389724ba675SRob Herring		PIN_SLP(gpv1-3, INPUT, DOWN);
1390724ba675SRob Herring		PIN_SLP(gpv1-4, INPUT, DOWN);
1391724ba675SRob Herring		PIN_SLP(gpv1-5, INPUT, DOWN);
1392724ba675SRob Herring		PIN_SLP(gpv1-6, INPUT, DOWN);
1393724ba675SRob Herring		PIN_SLP(gpv1-7, INPUT, DOWN);
1394724ba675SRob Herring
1395724ba675SRob Herring		PIN_SLP(gpv2-0, INPUT, DOWN);
1396724ba675SRob Herring		PIN_SLP(gpv2-1, INPUT, DOWN);
1397724ba675SRob Herring		PIN_SLP(gpv2-2, INPUT, DOWN);
1398724ba675SRob Herring		PIN_SLP(gpv2-3, INPUT, DOWN);
1399724ba675SRob Herring		PIN_SLP(gpv2-4, INPUT, DOWN);
1400724ba675SRob Herring		PIN_SLP(gpv2-5, INPUT, DOWN);
1401724ba675SRob Herring		PIN_SLP(gpv2-6, INPUT, DOWN);
1402724ba675SRob Herring		PIN_SLP(gpv2-7, INPUT, DOWN);
1403724ba675SRob Herring
1404724ba675SRob Herring		PIN_SLP(gpv3-0, INPUT, DOWN);
1405724ba675SRob Herring		PIN_SLP(gpv3-1, INPUT, DOWN);
1406724ba675SRob Herring		PIN_SLP(gpv3-2, INPUT, DOWN);
1407724ba675SRob Herring		PIN_SLP(gpv3-3, INPUT, DOWN);
1408724ba675SRob Herring		PIN_SLP(gpv3-4, INPUT, DOWN);
1409724ba675SRob Herring		PIN_SLP(gpv3-5, INPUT, DOWN);
1410724ba675SRob Herring		PIN_SLP(gpv3-6, INPUT, DOWN);
1411724ba675SRob Herring		PIN_SLP(gpv3-7, INPUT, DOWN);
1412724ba675SRob Herring
1413724ba675SRob Herring		PIN_SLP(gpv4-0, INPUT, DOWN);
1414724ba675SRob Herring	};
1415724ba675SRob Herring};
1416724ba675SRob Herring
1417724ba675SRob Herring&pwm {
1418724ba675SRob Herring	pinctrl-0 = <&pwm0_out>;
1419724ba675SRob Herring	pinctrl-names = "default";
1420724ba675SRob Herring	samsung,pwm-outputs = <0>;
1421724ba675SRob Herring	status = "okay";
1422724ba675SRob Herring};
1423724ba675SRob Herring
1424724ba675SRob Herring&rtc {
1425724ba675SRob Herring	status = "okay";
1426724ba675SRob Herring	clocks = <&clock CLK_RTC>, <&max77686 MAX77686_CLK_AP>;
1427724ba675SRob Herring	clock-names = "rtc", "rtc_src";
1428724ba675SRob Herring};
1429724ba675SRob Herring
1430724ba675SRob Herring&sdhci_2 {
1431724ba675SRob Herring	bus-width = <4>;
1432724ba675SRob Herring	cd-gpios = <&gpx3 4 GPIO_ACTIVE_LOW>;
1433724ba675SRob Herring	pinctrl-0 = <&sd2_clk &sd2_cmd &sd2_bus4 &sdhci2_cd>;
1434724ba675SRob Herring	pinctrl-names = "default";
1435724ba675SRob Herring	vmmc-supply = <&ldo21_reg>;
1436724ba675SRob Herring	status = "okay";
1437724ba675SRob Herring};
1438724ba675SRob Herring
1439724ba675SRob Herring&sdhci_3 {
1440724ba675SRob Herring	#address-cells = <1>;
1441724ba675SRob Herring	#size-cells = <0>;
1442724ba675SRob Herring	non-removable;
1443724ba675SRob Herring	bus-width = <4>;
1444724ba675SRob Herring
1445724ba675SRob Herring	mmc-pwrseq = <&wlan_pwrseq>;
1446724ba675SRob Herring	pinctrl-names = "default";
1447724ba675SRob Herring	pinctrl-0 = <&sd3_clk &sd3_cmd &sd3_bus4>;
1448724ba675SRob Herring	status = "okay";
1449724ba675SRob Herring
1450724ba675SRob Herring	brcmf: wifi@1 {
1451724ba675SRob Herring		reg = <1>;
1452724ba675SRob Herring		compatible = "brcm,bcm4329-fmac";
1453724ba675SRob Herring		interrupt-parent = <&gpx2>;
1454724ba675SRob Herring		interrupts = <5 IRQ_TYPE_NONE>;
1455724ba675SRob Herring		interrupt-names = "host-wake";
1456724ba675SRob Herring	};
1457724ba675SRob Herring};
1458724ba675SRob Herring
1459724ba675SRob Herring&serial_0 {
1460724ba675SRob Herring	pinctrl-0 = <&uart0_data &uart0_fctl>;
1461724ba675SRob Herring	pinctrl-names = "default";
1462724ba675SRob Herring	status = "okay";
1463724ba675SRob Herring
1464724ba675SRob Herring	bluetooth {
1465724ba675SRob Herring		compatible = "brcm,bcm4330-bt";
1466724ba675SRob Herring		pinctrl-0 = <&bt_shutdown &bt_device_wakeup &bt_host_wakeup>;
1467724ba675SRob Herring		pinctrl-names = "default";
1468724ba675SRob Herring		max-speed = <3000000>;
1469724ba675SRob Herring		shutdown-gpios = <&gpl0 6 GPIO_ACTIVE_HIGH>;
1470724ba675SRob Herring		device-wakeup-gpios = <&gpx3 1 GPIO_ACTIVE_HIGH>;
1471724ba675SRob Herring		host-wakeup-gpios = <&gpx2 6 GPIO_ACTIVE_HIGH>;
1472724ba675SRob Herring		clocks = <&max77686 MAX77686_CLK_PMIC>;
1473724ba675SRob Herring	};
1474724ba675SRob Herring};
1475724ba675SRob Herring
1476724ba675SRob Herring&serial_1 {
1477724ba675SRob Herring	status = "okay";
1478724ba675SRob Herring};
1479724ba675SRob Herring
1480724ba675SRob Herring&serial_2 {
1481724ba675SRob Herring	status = "okay";
1482724ba675SRob Herring};
1483724ba675SRob Herring
1484724ba675SRob Herring&serial_3 {
1485724ba675SRob Herring	status = "okay";
1486724ba675SRob Herring};
1487724ba675SRob Herring
1488724ba675SRob Herring&spi_1 {
1489724ba675SRob Herring	pinctrl-names = "default";
1490724ba675SRob Herring	pinctrl-0 = <&spi1_bus>;
1491724ba675SRob Herring	cs-gpios = <&gpb 5 GPIO_ACTIVE_HIGH>;
1492724ba675SRob Herring	status = "okay";
1493724ba675SRob Herring
1494724ba675SRob Herring	s5c73m3_spi: image-sensor@0 {
1495724ba675SRob Herring		compatible = "samsung,s5c73m3";
1496724ba675SRob Herring		spi-max-frequency = <50000000>;
1497724ba675SRob Herring		reg = <0>;
1498724ba675SRob Herring		controller-data {
1499724ba675SRob Herring			samsung,spi-feedback-delay = <2>;
1500724ba675SRob Herring		};
1501724ba675SRob Herring	};
1502724ba675SRob Herring};
1503724ba675SRob Herring
1504724ba675SRob Herring&tmu {
1505724ba675SRob Herring	vtmu-supply = <&ldo10_reg>;
1506724ba675SRob Herring	status = "okay";
1507724ba675SRob Herring};
1508