1*724ba675SRob Herring// SPDX-License-Identifier: GPL-2.0
2*724ba675SRob Herring/*
3*724ba675SRob Herring * Google Snow board device tree source
4*724ba675SRob Herring *
5*724ba675SRob Herring * Copyright (c) 2012 Google, Inc
6*724ba675SRob Herring */
7*724ba675SRob Herring
8*724ba675SRob Herring#include <dt-bindings/gpio/gpio.h>
9*724ba675SRob Herring#include <dt-bindings/clock/maxim,max77686.h>
10*724ba675SRob Herring#include <dt-bindings/interrupt-controller/irq.h>
11*724ba675SRob Herring#include <dt-bindings/input/input.h>
12*724ba675SRob Herring#include <dt-bindings/sound/samsung-i2s.h>
13*724ba675SRob Herring#include "exynos5250.dtsi"
14*724ba675SRob Herring
15*724ba675SRob Herring/ {
16*724ba675SRob Herring	aliases {
17*724ba675SRob Herring		i2c104 = &i2c_104;
18*724ba675SRob Herring		mmc0 = &mmc_0; /* eMMC */
19*724ba675SRob Herring		mmc1 = &mmc_2; /* SD */
20*724ba675SRob Herring		mmc2 = &mmc_3; /* WiFi */
21*724ba675SRob Herring	};
22*724ba675SRob Herring
23*724ba675SRob Herring	memory@40000000 {
24*724ba675SRob Herring		device_type = "memory";
25*724ba675SRob Herring		reg = <0x40000000 0x80000000>;
26*724ba675SRob Herring	};
27*724ba675SRob Herring
28*724ba675SRob Herring	chosen {
29*724ba675SRob Herring		bootargs = "console=tty1";
30*724ba675SRob Herring		stdout-path = "serial3:115200n8";
31*724ba675SRob Herring	};
32*724ba675SRob Herring
33*724ba675SRob Herring	gpio-keys {
34*724ba675SRob Herring		compatible = "gpio-keys";
35*724ba675SRob Herring		pinctrl-names = "default";
36*724ba675SRob Herring		pinctrl-0 = <&power_key_irq &lid_irq>;
37*724ba675SRob Herring
38*724ba675SRob Herring		power-key {
39*724ba675SRob Herring			label = "Power";
40*724ba675SRob Herring			gpios = <&gpx1 3 GPIO_ACTIVE_LOW>;
41*724ba675SRob Herring			linux,code = <KEY_POWER>;
42*724ba675SRob Herring			wakeup-source;
43*724ba675SRob Herring		};
44*724ba675SRob Herring
45*724ba675SRob Herring		lid-switch {
46*724ba675SRob Herring			label = "Lid";
47*724ba675SRob Herring			gpios = <&gpx3 5 GPIO_ACTIVE_LOW>;
48*724ba675SRob Herring			linux,input-type = <5>; /* EV_SW */
49*724ba675SRob Herring			linux,code = <0>; /* SW_LID */
50*724ba675SRob Herring			debounce-interval = <1>;
51*724ba675SRob Herring			wakeup-source;
52*724ba675SRob Herring		};
53*724ba675SRob Herring	};
54*724ba675SRob Herring
55*724ba675SRob Herring	vbat: vbat-fixed-regulator {
56*724ba675SRob Herring		compatible = "regulator-fixed";
57*724ba675SRob Herring		regulator-name = "vbat-supply";
58*724ba675SRob Herring		regulator-boot-on;
59*724ba675SRob Herring	};
60*724ba675SRob Herring
61*724ba675SRob Herring	i2c-arbitrator {
62*724ba675SRob Herring		compatible = "i2c-arb-gpio-challenge";
63*724ba675SRob Herring		#address-cells = <1>;
64*724ba675SRob Herring		#size-cells = <0>;
65*724ba675SRob Herring
66*724ba675SRob Herring		i2c-parent = <&i2c_4>;
67*724ba675SRob Herring
68*724ba675SRob Herring		our-claim-gpio = <&gpf0 3 GPIO_ACTIVE_LOW>;
69*724ba675SRob Herring		their-claim-gpios = <&gpe0 4 GPIO_ACTIVE_LOW>;
70*724ba675SRob Herring		slew-delay-us = <10>;
71*724ba675SRob Herring		wait-retry-us = <3000>;
72*724ba675SRob Herring		wait-free-us = <50000>;
73*724ba675SRob Herring
74*724ba675SRob Herring		pinctrl-names = "default";
75*724ba675SRob Herring		pinctrl-0 = <&arb_our_claim &arb_their_claim>;
76*724ba675SRob Herring
77*724ba675SRob Herring		/* Use ID 104 as a hint that we're on physical bus 4 */
78*724ba675SRob Herring		i2c_104: i2c@0 {
79*724ba675SRob Herring			reg = <0>;
80*724ba675SRob Herring			#address-cells = <1>;
81*724ba675SRob Herring			#size-cells = <0>;
82*724ba675SRob Herring
83*724ba675SRob Herring			battery: sbs-battery@b {
84*724ba675SRob Herring				compatible = "sbs,sbs-battery";
85*724ba675SRob Herring				reg = <0xb>;
86*724ba675SRob Herring				sbs,poll-retry-count = <1>;
87*724ba675SRob Herring			};
88*724ba675SRob Herring
89*724ba675SRob Herring			cros_ec: embedded-controller@1e {
90*724ba675SRob Herring				compatible = "google,cros-ec-i2c";
91*724ba675SRob Herring				reg = <0x1e>;
92*724ba675SRob Herring				interrupts = <6 IRQ_TYPE_NONE>;
93*724ba675SRob Herring				interrupt-parent = <&gpx1>;
94*724ba675SRob Herring				pinctrl-names = "default";
95*724ba675SRob Herring				pinctrl-0 = <&ec_irq>;
96*724ba675SRob Herring				wakeup-source;
97*724ba675SRob Herring			};
98*724ba675SRob Herring
99*724ba675SRob Herring			power-regulator@48 {
100*724ba675SRob Herring				compatible = "ti,tps65090";
101*724ba675SRob Herring				reg = <0x48>;
102*724ba675SRob Herring
103*724ba675SRob Herring				/*
104*724ba675SRob Herring				 * Config irq to disable internal pulls
105*724ba675SRob Herring				 * even though we run in polling mode.
106*724ba675SRob Herring				 */
107*724ba675SRob Herring				pinctrl-names = "default";
108*724ba675SRob Herring				pinctrl-0 = <&tps65090_irq>;
109*724ba675SRob Herring
110*724ba675SRob Herring				vsys1-supply = <&vbat>;
111*724ba675SRob Herring				vsys2-supply = <&vbat>;
112*724ba675SRob Herring				vsys3-supply = <&vbat>;
113*724ba675SRob Herring				infet1-supply = <&vbat>;
114*724ba675SRob Herring				infet2-supply = <&vbat>;
115*724ba675SRob Herring				infet3-supply = <&vbat>;
116*724ba675SRob Herring				infet4-supply = <&vbat>;
117*724ba675SRob Herring				infet5-supply = <&vbat>;
118*724ba675SRob Herring				infet6-supply = <&vbat>;
119*724ba675SRob Herring				infet7-supply = <&vbat>;
120*724ba675SRob Herring				vsys-l1-supply = <&vbat>;
121*724ba675SRob Herring				vsys-l2-supply = <&vbat>;
122*724ba675SRob Herring
123*724ba675SRob Herring				regulators {
124*724ba675SRob Herring					dcdc1 {
125*724ba675SRob Herring						ti,enable-ext-control;
126*724ba675SRob Herring					};
127*724ba675SRob Herring					dcdc2 {
128*724ba675SRob Herring						ti,enable-ext-control;
129*724ba675SRob Herring					};
130*724ba675SRob Herring					dcdc3 {
131*724ba675SRob Herring						ti,enable-ext-control;
132*724ba675SRob Herring					};
133*724ba675SRob Herring					fet1: fet1 {
134*724ba675SRob Herring						regulator-name = "vcd_led";
135*724ba675SRob Herring						ti,overcurrent-wait = <3>;
136*724ba675SRob Herring					};
137*724ba675SRob Herring					tps65090_fet2: fet2 {
138*724ba675SRob Herring						regulator-name = "video_mid";
139*724ba675SRob Herring						regulator-always-on;
140*724ba675SRob Herring						ti,overcurrent-wait = <3>;
141*724ba675SRob Herring					};
142*724ba675SRob Herring					fet3 {
143*724ba675SRob Herring						regulator-name = "wwan_r";
144*724ba675SRob Herring						regulator-always-on;
145*724ba675SRob Herring						ti,overcurrent-wait = <3>;
146*724ba675SRob Herring					};
147*724ba675SRob Herring					fet4 {
148*724ba675SRob Herring						regulator-name = "sdcard";
149*724ba675SRob Herring						ti,overcurrent-wait = <3>;
150*724ba675SRob Herring					};
151*724ba675SRob Herring					fet5 {
152*724ba675SRob Herring						regulator-name = "camout";
153*724ba675SRob Herring						regulator-always-on;
154*724ba675SRob Herring						ti,overcurrent-wait = <3>;
155*724ba675SRob Herring					};
156*724ba675SRob Herring					fet6: fet6 {
157*724ba675SRob Herring						regulator-name = "lcd_vdd";
158*724ba675SRob Herring						ti,overcurrent-wait = <3>;
159*724ba675SRob Herring					};
160*724ba675SRob Herring					tps65090_fet7: fet7 {
161*724ba675SRob Herring						regulator-name = "video_mid_1a";
162*724ba675SRob Herring						regulator-always-on;
163*724ba675SRob Herring						ti,overcurrent-wait = <3>;
164*724ba675SRob Herring					};
165*724ba675SRob Herring					ldo1 {
166*724ba675SRob Herring					};
167*724ba675SRob Herring					ldo2 {
168*724ba675SRob Herring					};
169*724ba675SRob Herring				};
170*724ba675SRob Herring
171*724ba675SRob Herring				charger {
172*724ba675SRob Herring					compatible = "ti,tps65090-charger";
173*724ba675SRob Herring				};
174*724ba675SRob Herring			};
175*724ba675SRob Herring		};
176*724ba675SRob Herring	};
177*724ba675SRob Herring
178*724ba675SRob Herring	sound {
179*724ba675SRob Herring		samsung,i2s-controller = <&i2s0>;
180*724ba675SRob Herring	};
181*724ba675SRob Herring
182*724ba675SRob Herring	usb3_vbus_reg: regulator-usb3 {
183*724ba675SRob Herring		compatible = "regulator-fixed";
184*724ba675SRob Herring		regulator-name = "P5.0V_USB3CON";
185*724ba675SRob Herring		regulator-min-microvolt = <5000000>;
186*724ba675SRob Herring		regulator-max-microvolt = <5000000>;
187*724ba675SRob Herring		gpio = <&gpx2 7 GPIO_ACTIVE_HIGH>;
188*724ba675SRob Herring		pinctrl-names = "default";
189*724ba675SRob Herring		pinctrl-0 = <&usb3_vbus_en>;
190*724ba675SRob Herring		enable-active-high;
191*724ba675SRob Herring	};
192*724ba675SRob Herring
193*724ba675SRob Herring	fixed-rate-clocks {
194*724ba675SRob Herring		xxti {
195*724ba675SRob Herring			compatible = "samsung,clock-xxti";
196*724ba675SRob Herring			clock-frequency = <24000000>;
197*724ba675SRob Herring		};
198*724ba675SRob Herring	};
199*724ba675SRob Herring
200*724ba675SRob Herring	backlight: backlight {
201*724ba675SRob Herring		compatible = "pwm-backlight";
202*724ba675SRob Herring		pwms = <&pwm 0 1000000 0>;
203*724ba675SRob Herring		brightness-levels = <0 100 500 1000 1500 2000 2500 2800>;
204*724ba675SRob Herring		default-brightness-level = <7>;
205*724ba675SRob Herring		enable-gpios = <&gpx3 0 GPIO_ACTIVE_HIGH>;
206*724ba675SRob Herring		power-supply = <&fet1>;
207*724ba675SRob Herring		pinctrl-0 = <&pwm0_out>;
208*724ba675SRob Herring		pinctrl-names = "default";
209*724ba675SRob Herring	};
210*724ba675SRob Herring
211*724ba675SRob Herring	panel: panel {
212*724ba675SRob Herring		compatible = "auo,b116xw03";
213*724ba675SRob Herring		power-supply = <&fet6>;
214*724ba675SRob Herring		backlight = <&backlight>;
215*724ba675SRob Herring
216*724ba675SRob Herring		port {
217*724ba675SRob Herring			panel_in: endpoint {
218*724ba675SRob Herring				remote-endpoint = <&bridge_out>;
219*724ba675SRob Herring			};
220*724ba675SRob Herring		};
221*724ba675SRob Herring	};
222*724ba675SRob Herring
223*724ba675SRob Herring	mmc3_pwrseq: mmc3-pwrseq {
224*724ba675SRob Herring		compatible = "mmc-pwrseq-simple";
225*724ba675SRob Herring		reset-gpios = <&gpx0 2 GPIO_ACTIVE_LOW>, /* WIFI_RSTn */
226*724ba675SRob Herring			      <&gpx0 1 GPIO_ACTIVE_LOW>; /* WIFI_EN */
227*724ba675SRob Herring		clocks = <&max77686 MAX77686_CLK_PMIC>;
228*724ba675SRob Herring		clock-names = "ext_clock";
229*724ba675SRob Herring	};
230*724ba675SRob Herring};
231*724ba675SRob Herring
232*724ba675SRob Herring&clock {
233*724ba675SRob Herring	assigned-clocks = <&clock CLK_FOUT_EPLL>;
234*724ba675SRob Herring	assigned-clock-rates = <49152000>;
235*724ba675SRob Herring};
236*724ba675SRob Herring
237*724ba675SRob Herring&clock_audss {
238*724ba675SRob Herring	assigned-clocks = <&clock_audss EXYNOS_MOUT_AUDSS>;
239*724ba675SRob Herring	assigned-clock-parents = <&clock CLK_FOUT_EPLL>;
240*724ba675SRob Herring};
241*724ba675SRob Herring
242*724ba675SRob Herring&cpu0 {
243*724ba675SRob Herring	cpu0-supply = <&buck2_reg>;
244*724ba675SRob Herring};
245*724ba675SRob Herring
246*724ba675SRob Herring&dp {
247*724ba675SRob Herring	status = "okay";
248*724ba675SRob Herring	pinctrl-names = "default";
249*724ba675SRob Herring	pinctrl-0 = <&dp_hpd>;
250*724ba675SRob Herring	samsung,color-space = <0>;
251*724ba675SRob Herring	samsung,color-depth = <1>;
252*724ba675SRob Herring	samsung,link-rate = <0x0a>;
253*724ba675SRob Herring	samsung,lane-count = <2>;
254*724ba675SRob Herring	hpd-gpios = <&gpx0 7 GPIO_ACTIVE_HIGH>;
255*724ba675SRob Herring
256*724ba675SRob Herring	ports {
257*724ba675SRob Herring		port {
258*724ba675SRob Herring			dp_out: endpoint {
259*724ba675SRob Herring				remote-endpoint = <&bridge_in>;
260*724ba675SRob Herring			};
261*724ba675SRob Herring		};
262*724ba675SRob Herring	};
263*724ba675SRob Herring};
264*724ba675SRob Herring
265*724ba675SRob Herring&ehci {
266*724ba675SRob Herring	samsung,vbus-gpio = <&gpx1 1 GPIO_ACTIVE_HIGH>;
267*724ba675SRob Herring};
268*724ba675SRob Herring
269*724ba675SRob Herring&fimd {
270*724ba675SRob Herring	status = "okay";
271*724ba675SRob Herring	samsung,invert-vclk;
272*724ba675SRob Herring};
273*724ba675SRob Herring
274*724ba675SRob Herring&hdmi {
275*724ba675SRob Herring	status = "okay";
276*724ba675SRob Herring	hpd-gpios = <&gpx3 7 GPIO_ACTIVE_HIGH>;
277*724ba675SRob Herring	pinctrl-names = "default";
278*724ba675SRob Herring	pinctrl-0 = <&hdmi_hpd_irq>;
279*724ba675SRob Herring	ddc = <&i2c_2>;
280*724ba675SRob Herring	hdmi-en-supply = <&tps65090_fet7>;
281*724ba675SRob Herring	vdd-supply = <&ldo8_reg>;
282*724ba675SRob Herring	vdd_osc-supply = <&ldo10_reg>;
283*724ba675SRob Herring	vdd_pll-supply = <&ldo8_reg>;
284*724ba675SRob Herring};
285*724ba675SRob Herring
286*724ba675SRob Herring&hdmicec {
287*724ba675SRob Herring	status = "okay";
288*724ba675SRob Herring};
289*724ba675SRob Herring
290*724ba675SRob Herring&i2c_0 {
291*724ba675SRob Herring	status = "okay";
292*724ba675SRob Herring	samsung,i2c-sda-delay = <100>;
293*724ba675SRob Herring	samsung,i2c-max-bus-freq = <378000>;
294*724ba675SRob Herring
295*724ba675SRob Herring	max77686: pmic@9 {
296*724ba675SRob Herring		compatible = "maxim,max77686";
297*724ba675SRob Herring		interrupt-parent = <&gpx3>;
298*724ba675SRob Herring		interrupts = <2 IRQ_TYPE_LEVEL_LOW>;
299*724ba675SRob Herring		pinctrl-names = "default";
300*724ba675SRob Herring		pinctrl-0 = <&max77686_irq>;
301*724ba675SRob Herring		wakeup-source;
302*724ba675SRob Herring		reg = <0x09>;
303*724ba675SRob Herring		#clock-cells = <1>;
304*724ba675SRob Herring
305*724ba675SRob Herring		voltage-regulators {
306*724ba675SRob Herring			ldo1_reg: LDO1 {
307*724ba675SRob Herring				regulator-name = "P1.0V_LDO_OUT1";
308*724ba675SRob Herring				regulator-min-microvolt = <1000000>;
309*724ba675SRob Herring				regulator-max-microvolt = <1000000>;
310*724ba675SRob Herring				regulator-always-on;
311*724ba675SRob Herring			};
312*724ba675SRob Herring
313*724ba675SRob Herring			ldo2_reg: LDO2 {
314*724ba675SRob Herring				regulator-name = "P1.8V_LDO_OUT2";
315*724ba675SRob Herring				regulator-min-microvolt = <1800000>;
316*724ba675SRob Herring				regulator-max-microvolt = <1800000>;
317*724ba675SRob Herring				regulator-always-on;
318*724ba675SRob Herring			};
319*724ba675SRob Herring
320*724ba675SRob Herring			ldo3_reg: LDO3 {
321*724ba675SRob Herring				regulator-name = "P1.8V_LDO_OUT3";
322*724ba675SRob Herring				regulator-min-microvolt = <1800000>;
323*724ba675SRob Herring				regulator-max-microvolt = <1800000>;
324*724ba675SRob Herring				regulator-always-on;
325*724ba675SRob Herring			};
326*724ba675SRob Herring
327*724ba675SRob Herring			ldo7_reg: LDO7 {
328*724ba675SRob Herring				regulator-name = "P1.1V_LDO_OUT7";
329*724ba675SRob Herring				regulator-min-microvolt = <1100000>;
330*724ba675SRob Herring				regulator-max-microvolt = <1100000>;
331*724ba675SRob Herring				regulator-always-on;
332*724ba675SRob Herring			};
333*724ba675SRob Herring
334*724ba675SRob Herring			ldo8_reg: LDO8 {
335*724ba675SRob Herring				regulator-name = "P1.0V_LDO_OUT8";
336*724ba675SRob Herring				regulator-min-microvolt = <1000000>;
337*724ba675SRob Herring				regulator-max-microvolt = <1000000>;
338*724ba675SRob Herring				regulator-always-on;
339*724ba675SRob Herring			};
340*724ba675SRob Herring
341*724ba675SRob Herring			ldo10_reg: LDO10 {
342*724ba675SRob Herring				regulator-name = "P1.8V_LDO_OUT10";
343*724ba675SRob Herring				regulator-min-microvolt = <1800000>;
344*724ba675SRob Herring				regulator-max-microvolt = <1800000>;
345*724ba675SRob Herring				regulator-always-on;
346*724ba675SRob Herring			};
347*724ba675SRob Herring
348*724ba675SRob Herring			ldo12_reg: LDO12 {
349*724ba675SRob Herring				regulator-name = "P3.0V_LDO_OUT12";
350*724ba675SRob Herring				regulator-min-microvolt = <3000000>;
351*724ba675SRob Herring				regulator-max-microvolt = <3000000>;
352*724ba675SRob Herring				regulator-always-on;
353*724ba675SRob Herring			};
354*724ba675SRob Herring
355*724ba675SRob Herring			ldo14_reg: LDO14 {
356*724ba675SRob Herring				regulator-name = "P1.8V_LDO_OUT14";
357*724ba675SRob Herring				regulator-min-microvolt = <1800000>;
358*724ba675SRob Herring				regulator-max-microvolt = <1800000>;
359*724ba675SRob Herring				regulator-always-on;
360*724ba675SRob Herring			};
361*724ba675SRob Herring
362*724ba675SRob Herring			ldo15_reg: LDO15 {
363*724ba675SRob Herring				regulator-name = "P1.0V_LDO_OUT15";
364*724ba675SRob Herring				regulator-min-microvolt = <1000000>;
365*724ba675SRob Herring				regulator-max-microvolt = <1000000>;
366*724ba675SRob Herring				regulator-always-on;
367*724ba675SRob Herring			};
368*724ba675SRob Herring
369*724ba675SRob Herring			ldo16_reg: LDO16 {
370*724ba675SRob Herring				regulator-name = "P1.8V_LDO_OUT16";
371*724ba675SRob Herring				regulator-min-microvolt = <1800000>;
372*724ba675SRob Herring				regulator-max-microvolt = <1800000>;
373*724ba675SRob Herring				regulator-always-on;
374*724ba675SRob Herring			};
375*724ba675SRob Herring
376*724ba675SRob Herring			buck1_reg: BUCK1 {
377*724ba675SRob Herring				regulator-name = "vdd_mif";
378*724ba675SRob Herring				regulator-min-microvolt = <950000>;
379*724ba675SRob Herring				regulator-max-microvolt = <1300000>;
380*724ba675SRob Herring				regulator-always-on;
381*724ba675SRob Herring				regulator-boot-on;
382*724ba675SRob Herring			};
383*724ba675SRob Herring
384*724ba675SRob Herring			buck2_reg: BUCK2 {
385*724ba675SRob Herring				regulator-name = "vdd_arm";
386*724ba675SRob Herring				regulator-min-microvolt = <850000>;
387*724ba675SRob Herring				regulator-max-microvolt = <1350000>;
388*724ba675SRob Herring				regulator-always-on;
389*724ba675SRob Herring				regulator-boot-on;
390*724ba675SRob Herring			};
391*724ba675SRob Herring
392*724ba675SRob Herring			buck3_reg: BUCK3 {
393*724ba675SRob Herring				regulator-name = "vdd_int";
394*724ba675SRob Herring				regulator-min-microvolt = <900000>;
395*724ba675SRob Herring				regulator-max-microvolt = <1200000>;
396*724ba675SRob Herring				regulator-always-on;
397*724ba675SRob Herring				regulator-boot-on;
398*724ba675SRob Herring			};
399*724ba675SRob Herring
400*724ba675SRob Herring			buck4_reg: BUCK4 {
401*724ba675SRob Herring				regulator-name = "vdd_g3d";
402*724ba675SRob Herring				regulator-min-microvolt = <850000>;
403*724ba675SRob Herring				regulator-max-microvolt = <1300000>;
404*724ba675SRob Herring				regulator-always-on;
405*724ba675SRob Herring				regulator-boot-on;
406*724ba675SRob Herring			};
407*724ba675SRob Herring
408*724ba675SRob Herring			buck5_reg: BUCK5 {
409*724ba675SRob Herring				regulator-name = "P1.8V_BUCK_OUT5";
410*724ba675SRob Herring				regulator-min-microvolt = <1800000>;
411*724ba675SRob Herring				regulator-max-microvolt = <1800000>;
412*724ba675SRob Herring				regulator-always-on;
413*724ba675SRob Herring				regulator-boot-on;
414*724ba675SRob Herring			};
415*724ba675SRob Herring
416*724ba675SRob Herring			buck6_reg: BUCK6 {
417*724ba675SRob Herring				regulator-name = "P1.35V_BUCK_OUT6";
418*724ba675SRob Herring				regulator-min-microvolt = <1350000>;
419*724ba675SRob Herring				regulator-max-microvolt = <1350000>;
420*724ba675SRob Herring				regulator-always-on;
421*724ba675SRob Herring			};
422*724ba675SRob Herring
423*724ba675SRob Herring			buck7_reg: BUCK7 {
424*724ba675SRob Herring				regulator-name = "P2.0V_BUCK_OUT7";
425*724ba675SRob Herring				regulator-min-microvolt = <2000000>;
426*724ba675SRob Herring				regulator-max-microvolt = <2000000>;
427*724ba675SRob Herring				regulator-always-on;
428*724ba675SRob Herring			};
429*724ba675SRob Herring
430*724ba675SRob Herring			buck8_reg: BUCK8 {
431*724ba675SRob Herring				regulator-name = "P2.85V_BUCK_OUT8";
432*724ba675SRob Herring				regulator-min-microvolt = <2850000>;
433*724ba675SRob Herring				regulator-max-microvolt = <2850000>;
434*724ba675SRob Herring				regulator-always-on;
435*724ba675SRob Herring			};
436*724ba675SRob Herring		};
437*724ba675SRob Herring	};
438*724ba675SRob Herring};
439*724ba675SRob Herring
440*724ba675SRob Herring&i2c_1 {
441*724ba675SRob Herring	status = "okay";
442*724ba675SRob Herring	samsung,i2c-sda-delay = <100>;
443*724ba675SRob Herring	samsung,i2c-max-bus-freq = <378000>;
444*724ba675SRob Herring
445*724ba675SRob Herring	trackpad@67 {
446*724ba675SRob Herring		reg = <0x67>;
447*724ba675SRob Herring		compatible = "cypress,cyapa";
448*724ba675SRob Herring		interrupts = <2 IRQ_TYPE_NONE>;
449*724ba675SRob Herring		interrupt-parent = <&gpx1>;
450*724ba675SRob Herring		wakeup-source;
451*724ba675SRob Herring	};
452*724ba675SRob Herring};
453*724ba675SRob Herring
454*724ba675SRob Herring/*
455*724ba675SRob Herring * Disabled pullups since external part has its own pullups and
456*724ba675SRob Herring * double-pulling gets us out of spec in some cases.
457*724ba675SRob Herring */
458*724ba675SRob Herring&i2c2_bus {
459*724ba675SRob Herring	samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
460*724ba675SRob Herring};
461*724ba675SRob Herring
462*724ba675SRob Herring&i2c_2 {
463*724ba675SRob Herring	status = "okay";
464*724ba675SRob Herring	/* used by HDMI DDC */
465*724ba675SRob Herring	samsung,i2c-sda-delay = <100>;
466*724ba675SRob Herring	samsung,i2c-max-bus-freq = <66000>;
467*724ba675SRob Herring};
468*724ba675SRob Herring
469*724ba675SRob Herring&i2c_3 {
470*724ba675SRob Herring	status = "okay";
471*724ba675SRob Herring	samsung,i2c-sda-delay = <100>;
472*724ba675SRob Herring	samsung,i2c-max-bus-freq = <66000>;
473*724ba675SRob Herring};
474*724ba675SRob Herring
475*724ba675SRob Herring&i2c_4 {
476*724ba675SRob Herring	status = "okay";
477*724ba675SRob Herring	samsung,i2c-sda-delay = <100>;
478*724ba675SRob Herring	samsung,i2c-max-bus-freq = <66000>;
479*724ba675SRob Herring};
480*724ba675SRob Herring
481*724ba675SRob Herring&i2c_5 {
482*724ba675SRob Herring	status = "okay";
483*724ba675SRob Herring	samsung,i2c-sda-delay = <100>;
484*724ba675SRob Herring	samsung,i2c-max-bus-freq = <66000>;
485*724ba675SRob Herring};
486*724ba675SRob Herring
487*724ba675SRob Herring&i2c_7 {
488*724ba675SRob Herring	status = "okay";
489*724ba675SRob Herring	samsung,i2c-sda-delay = <100>;
490*724ba675SRob Herring	samsung,i2c-max-bus-freq = <66000>;
491*724ba675SRob Herring
492*724ba675SRob Herring	ptn3460: lvds-bridge@20 {
493*724ba675SRob Herring		compatible = "nxp,ptn3460";
494*724ba675SRob Herring		reg = <0x20>;
495*724ba675SRob Herring		powerdown-gpios = <&gpy2 5 GPIO_ACTIVE_HIGH>;
496*724ba675SRob Herring		reset-gpios = <&gpx1 5 GPIO_ACTIVE_HIGH>;
497*724ba675SRob Herring		edid-emulation = <5>;
498*724ba675SRob Herring
499*724ba675SRob Herring		ports {
500*724ba675SRob Herring			#address-cells = <1>;
501*724ba675SRob Herring			#size-cells = <0>;
502*724ba675SRob Herring
503*724ba675SRob Herring			port@0 {
504*724ba675SRob Herring				reg = <0>;
505*724ba675SRob Herring
506*724ba675SRob Herring				bridge_out: endpoint {
507*724ba675SRob Herring					remote-endpoint = <&panel_in>;
508*724ba675SRob Herring				};
509*724ba675SRob Herring			};
510*724ba675SRob Herring
511*724ba675SRob Herring			port@1 {
512*724ba675SRob Herring				reg = <1>;
513*724ba675SRob Herring
514*724ba675SRob Herring				bridge_in: endpoint {
515*724ba675SRob Herring					remote-endpoint = <&dp_out>;
516*724ba675SRob Herring				};
517*724ba675SRob Herring			};
518*724ba675SRob Herring		};
519*724ba675SRob Herring	};
520*724ba675SRob Herring};
521*724ba675SRob Herring
522*724ba675SRob Herring&i2c_8 {
523*724ba675SRob Herring	status = "okay";
524*724ba675SRob Herring	/* used by HDMI PHY */
525*724ba675SRob Herring	samsung,i2c-sda-delay = <100>;
526*724ba675SRob Herring	samsung,i2c-max-bus-freq = <378000>;
527*724ba675SRob Herring};
528*724ba675SRob Herring
529*724ba675SRob Herring&i2s0 {
530*724ba675SRob Herring	assigned-clocks = <&i2s0 CLK_I2S_RCLK_SRC>;
531*724ba675SRob Herring	assigned-clock-parents = <&clock_audss EXYNOS_I2S_BUS>;
532*724ba675SRob Herring	status = "okay";
533*724ba675SRob Herring};
534*724ba675SRob Herring
535*724ba675SRob Herring&mali {
536*724ba675SRob Herring	mali-supply = <&buck4_reg>;
537*724ba675SRob Herring	status = "okay";
538*724ba675SRob Herring};
539*724ba675SRob Herring
540*724ba675SRob Herring&mixer {
541*724ba675SRob Herring	status = "okay";
542*724ba675SRob Herring};
543*724ba675SRob Herring
544*724ba675SRob Herring/* eMMC flash */
545*724ba675SRob Herring&mmc_0 {
546*724ba675SRob Herring	status = "okay";
547*724ba675SRob Herring	non-removable;
548*724ba675SRob Herring	samsung,dw-mshc-ciu-div = <3>;
549*724ba675SRob Herring	samsung,dw-mshc-sdr-timing = <2 3>;
550*724ba675SRob Herring	samsung,dw-mshc-ddr-timing = <1 2>;
551*724ba675SRob Herring	pinctrl-names = "default";
552*724ba675SRob Herring	pinctrl-0 = <&sd0_clk &sd0_cmd &sd0_cd &sd0_bus4 &sd0_bus8>;
553*724ba675SRob Herring	bus-width = <8>;
554*724ba675SRob Herring	cap-mmc-highspeed;
555*724ba675SRob Herring	mmc-ddr-1_8v;
556*724ba675SRob Herring};
557*724ba675SRob Herring
558*724ba675SRob Herring/* uSD card */
559*724ba675SRob Herring&mmc_2 {
560*724ba675SRob Herring	status = "okay";
561*724ba675SRob Herring	card-detect-delay = <200>;
562*724ba675SRob Herring	samsung,dw-mshc-ciu-div = <3>;
563*724ba675SRob Herring	samsung,dw-mshc-sdr-timing = <2 3>;
564*724ba675SRob Herring	samsung,dw-mshc-ddr-timing = <1 2>;
565*724ba675SRob Herring	pinctrl-names = "default";
566*724ba675SRob Herring	pinctrl-0 = <&sd2_clk &sd2_cmd &sd2_cd &sd2_bus4>;
567*724ba675SRob Herring	bus-width = <4>;
568*724ba675SRob Herring	wp-gpios = <&gpc2 1 GPIO_ACTIVE_HIGH>;
569*724ba675SRob Herring	cap-sd-highspeed;
570*724ba675SRob Herring};
571*724ba675SRob Herring
572*724ba675SRob Herring/*
573*724ba675SRob Herring * On Snow we've got SIP WiFi and so can keep drive strengths low to
574*724ba675SRob Herring * reduce EMI.
575*724ba675SRob Herring *
576*724ba675SRob Herring * WiFi SDIO module
577*724ba675SRob Herring */
578*724ba675SRob Herring&mmc_3 {
579*724ba675SRob Herring	status = "okay";
580*724ba675SRob Herring	non-removable;
581*724ba675SRob Herring	cap-sdio-irq;
582*724ba675SRob Herring	keep-power-in-suspend;
583*724ba675SRob Herring	samsung,dw-mshc-ciu-div = <3>;
584*724ba675SRob Herring	samsung,dw-mshc-sdr-timing = <2 3>;
585*724ba675SRob Herring	samsung,dw-mshc-ddr-timing = <1 2>;
586*724ba675SRob Herring	pinctrl-names = "default";
587*724ba675SRob Herring	pinctrl-0 = <&sd3_clk &sd3_cmd &sd3_bus4 &wifi_en &wifi_rst>;
588*724ba675SRob Herring	bus-width = <4>;
589*724ba675SRob Herring	cap-sd-highspeed;
590*724ba675SRob Herring	mmc-pwrseq = <&mmc3_pwrseq>;
591*724ba675SRob Herring};
592*724ba675SRob Herring
593*724ba675SRob Herring&pinctrl_0 {
594*724ba675SRob Herring	wifi_en: wifi-en-pins {
595*724ba675SRob Herring		samsung,pins = "gpx0-1";
596*724ba675SRob Herring		samsung,pin-function = <EXYNOS_PIN_FUNC_OUTPUT>;
597*724ba675SRob Herring		samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
598*724ba675SRob Herring		samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
599*724ba675SRob Herring	};
600*724ba675SRob Herring
601*724ba675SRob Herring	wifi_rst: wifi-rst-pins {
602*724ba675SRob Herring		samsung,pins = "gpx0-2";
603*724ba675SRob Herring		samsung,pin-function = <EXYNOS_PIN_FUNC_OUTPUT>;
604*724ba675SRob Herring		samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
605*724ba675SRob Herring		samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
606*724ba675SRob Herring	};
607*724ba675SRob Herring
608*724ba675SRob Herring	power_key_irq: power-key-irq-pins {
609*724ba675SRob Herring		samsung,pins = "gpx1-3";
610*724ba675SRob Herring		samsung,pin-function = <EXYNOS_PIN_FUNC_F>;
611*724ba675SRob Herring		samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
612*724ba675SRob Herring		samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
613*724ba675SRob Herring	};
614*724ba675SRob Herring
615*724ba675SRob Herring	ec_irq: ec-irq-pins {
616*724ba675SRob Herring		samsung,pins = "gpx1-6";
617*724ba675SRob Herring		samsung,pin-function = <EXYNOS_PIN_FUNC_INPUT>;
618*724ba675SRob Herring		samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
619*724ba675SRob Herring		samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
620*724ba675SRob Herring	};
621*724ba675SRob Herring
622*724ba675SRob Herring	tps65090_irq: tps65090-irq-pins {
623*724ba675SRob Herring		samsung,pins = "gpx2-6";
624*724ba675SRob Herring		samsung,pin-function = <EXYNOS_PIN_FUNC_INPUT>;
625*724ba675SRob Herring		samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
626*724ba675SRob Herring		samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
627*724ba675SRob Herring	};
628*724ba675SRob Herring
629*724ba675SRob Herring	usb3_vbus_en: usb3-vbus-en-pins {
630*724ba675SRob Herring		samsung,pins = "gpx2-7";
631*724ba675SRob Herring		samsung,pin-function = <EXYNOS_PIN_FUNC_OUTPUT>;
632*724ba675SRob Herring		samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
633*724ba675SRob Herring		samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
634*724ba675SRob Herring	};
635*724ba675SRob Herring
636*724ba675SRob Herring	max77686_irq: max77686-irq-pins {
637*724ba675SRob Herring		samsung,pins = "gpx3-2";
638*724ba675SRob Herring		samsung,pin-function = <EXYNOS_PIN_FUNC_INPUT>;
639*724ba675SRob Herring		samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
640*724ba675SRob Herring		samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
641*724ba675SRob Herring	};
642*724ba675SRob Herring
643*724ba675SRob Herring	lid_irq: lid-irq-pins {
644*724ba675SRob Herring		samsung,pins = "gpx3-5";
645*724ba675SRob Herring		samsung,pin-function = <EXYNOS_PIN_FUNC_F>;
646*724ba675SRob Herring		samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
647*724ba675SRob Herring		samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
648*724ba675SRob Herring	};
649*724ba675SRob Herring
650*724ba675SRob Herring	hdmi_hpd_irq: hdmi-hpd-irq-pins {
651*724ba675SRob Herring		samsung,pins = "gpx3-7";
652*724ba675SRob Herring		samsung,pin-function = <EXYNOS_PIN_FUNC_INPUT>;
653*724ba675SRob Herring		samsung,pin-pud = <EXYNOS_PIN_PULL_DOWN>;
654*724ba675SRob Herring		samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
655*724ba675SRob Herring	};
656*724ba675SRob Herring};
657*724ba675SRob Herring
658*724ba675SRob Herring&pinctrl_1 {
659*724ba675SRob Herring	arb_their_claim: arb-their-claim-pins {
660*724ba675SRob Herring		samsung,pins = "gpe0-4";
661*724ba675SRob Herring		samsung,pin-function = <EXYNOS_PIN_FUNC_INPUT>;
662*724ba675SRob Herring		samsung,pin-pud = <EXYNOS_PIN_PULL_UP>;
663*724ba675SRob Herring		samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
664*724ba675SRob Herring	};
665*724ba675SRob Herring
666*724ba675SRob Herring	arb_our_claim: arb-our-claim-pins {
667*724ba675SRob Herring		samsung,pins = "gpf0-3";
668*724ba675SRob Herring		samsung,pin-function = <EXYNOS_PIN_FUNC_OUTPUT>;
669*724ba675SRob Herring		samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
670*724ba675SRob Herring		samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
671*724ba675SRob Herring	};
672*724ba675SRob Herring};
673*724ba675SRob Herring
674*724ba675SRob Herring&pmu_system_controller {
675*724ba675SRob Herring	assigned-clocks = <&pmu_system_controller 0>;
676*724ba675SRob Herring	assigned-clock-parents = <&clock CLK_FIN_PLL>;
677*724ba675SRob Herring};
678*724ba675SRob Herring
679*724ba675SRob Herring&rtc {
680*724ba675SRob Herring	status = "okay";
681*724ba675SRob Herring	clocks = <&clock CLK_RTC>, <&max77686 MAX77686_CLK_AP>;
682*724ba675SRob Herring	clock-names = "rtc", "rtc_src";
683*724ba675SRob Herring};
684*724ba675SRob Herring
685*724ba675SRob Herring&sd3_bus4 {
686*724ba675SRob Herring	samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
687*724ba675SRob Herring};
688*724ba675SRob Herring
689*724ba675SRob Herring&sd3_clk {
690*724ba675SRob Herring	samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
691*724ba675SRob Herring};
692*724ba675SRob Herring
693*724ba675SRob Herring&sd3_cmd {
694*724ba675SRob Herring	samsung,pin-pud = <EXYNOS_PIN_PULL_UP>;
695*724ba675SRob Herring	samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>;
696*724ba675SRob Herring};
697*724ba675SRob Herring
698*724ba675SRob Herring&spi_1 {
699*724ba675SRob Herring	status = "okay";
700*724ba675SRob Herring	samsung,spi-src-clk = <0>;
701*724ba675SRob Herring	num-cs = <1>;
702*724ba675SRob Herring	cs-gpios = <&gpa2 5 GPIO_ACTIVE_HIGH>;
703*724ba675SRob Herring};
704*724ba675SRob Herring
705*724ba675SRob Herring&usbdrd {
706*724ba675SRob Herring	vdd10-supply = <&ldo15_reg>;
707*724ba675SRob Herring	vdd33-supply = <&ldo12_reg>;
708*724ba675SRob Herring};
709*724ba675SRob Herring
710*724ba675SRob Herring&usbdrd_dwc3 {
711*724ba675SRob Herring	dr_mode = "host";
712*724ba675SRob Herring};
713*724ba675SRob Herring
714*724ba675SRob Herring&usbdrd_phy {
715*724ba675SRob Herring	vbus-supply = <&usb3_vbus_reg>;
716*724ba675SRob Herring};
717*724ba675SRob Herring
718*724ba675SRob Herring#include "../cros-ec-keyboard.dtsi"
719