2 * Google Snow board device tree source
4 * Copyright (c) 2012 Google, Inc
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License version 2 as
8 * published by the Free Software Foundation.
12 #include <dt-bindings/gpio/gpio.h>
13 #include <dt-bindings/clock/maxim,max77686.h>
14 #include <dt-bindings/interrupt-controller/irq.h>
15 #include <dt-bindings/input/input.h>
16 #include "exynos5250.dtsi"
19 model = "Google Snow";
20 compatible = "google,snow", "samsung,exynos5250", "samsung,exynos5";
27 reg = <0x40000000 0x80000000>;
31 bootargs = "console=tty1";
35 compatible = "gpio-keys";
39 gpios = <&gpx1 3 GPIO_ACTIVE_LOW>;
40 linux,code = <KEY_POWER>;
46 gpios = <&gpx3 5 GPIO_ACTIVE_LOW>;
47 linux,input-type = <5>; /* EV_SW */
48 linux,code = <0>; /* SW_LID */
49 debounce-interval = <1>;
54 vbat: vbat-fixed-regulator {
55 compatible = "regulator-fixed";
56 regulator-name = "vbat-supply";
61 compatible = "i2c-arb-gpio-challenge";
65 i2c-parent = <&{/i2c@12CA0000}>;
67 our-claim-gpio = <&gpf0 3 GPIO_ACTIVE_LOW>;
68 their-claim-gpios = <&gpe0 4 GPIO_ACTIVE_LOW>;
70 wait-retry-us = <3000>;
71 wait-free-us = <50000>;
73 pinctrl-names = "default";
74 pinctrl-0 = <&arb_our_claim &arb_their_claim>;
76 /* Use ID 104 as a hint that we're on physical bus 4 */
82 battery: sbs-battery@b {
83 compatible = "sbs,sbs-battery";
85 sbs,poll-retry-count = <1>;
88 cros_ec: embedded-controller {
89 compatible = "google,cros-ec-i2c";
91 interrupts = <6 IRQ_TYPE_NONE>;
92 interrupt-parent = <&gpx1>;
93 pinctrl-names = "default";
94 pinctrl-0 = <&ec_irq>;
99 compatible = "ti,tps65090";
103 * Config irq to disable internal pulls
104 * even though we run in polling mode.
106 pinctrl-names = "default";
107 pinctrl-0 = <&tps65090_irq>;
109 vsys1-supply = <&vbat>;
110 vsys2-supply = <&vbat>;
111 vsys3-supply = <&vbat>;
112 infet1-supply = <&vbat>;
113 infet2-supply = <&vbat>;
114 infet3-supply = <&vbat>;
115 infet4-supply = <&vbat>;
116 infet5-supply = <&vbat>;
117 infet6-supply = <&vbat>;
118 infet7-supply = <&vbat>;
119 vsys-l1-supply = <&vbat>;
120 vsys-l2-supply = <&vbat>;
124 ti,enable-ext-control;
127 ti,enable-ext-control;
130 ti,enable-ext-control;
133 regulator-name = "vcd_led";
134 ti,overcurrent-wait = <3>;
136 tps65090_fet2: fet2 {
137 regulator-name = "video_mid";
139 ti,overcurrent-wait = <3>;
142 regulator-name = "wwan_r";
144 ti,overcurrent-wait = <3>;
147 regulator-name = "sdcard";
148 ti,overcurrent-wait = <3>;
151 regulator-name = "camout";
153 ti,overcurrent-wait = <3>;
156 regulator-name = "lcd_vdd";
157 ti,overcurrent-wait = <3>;
159 tps65090_fet7: fet7 {
160 regulator-name = "video_mid_1a";
162 ti,overcurrent-wait = <3>;
171 compatible = "ti,tps65090-charger";
178 ptn3460: lvds-bridge@20 {
179 compatible = "nxp,ptn3460";
181 powerdown-gpios = <&gpy2 5 GPIO_ACTIVE_HIGH>;
182 reset-gpios = <&gpx1 5 GPIO_ACTIVE_HIGH>;
183 edid-emulation = <5>;
189 compatible = "google,snow-audio-max98095";
191 samsung,model = "Snow-I2S-MAX98095";
192 samsung,i2s-controller = <&i2s0>;
193 samsung,audio-codec = <&max98095>;
196 usb3_vbus_reg: regulator-usb3 {
197 compatible = "regulator-fixed";
198 regulator-name = "P5.0V_USB3CON";
199 regulator-min-microvolt = <5000000>;
200 regulator-max-microvolt = <5000000>;
201 gpio = <&gpx2 7 GPIO_ACTIVE_HIGH>;
202 pinctrl-names = "default";
203 pinctrl-0 = <&usb3_vbus_en>;
209 compatible = "samsung,clock-xxti";
210 clock-frequency = <24000000>;
214 backlight: backlight {
215 compatible = "pwm-backlight";
216 pwms = <&pwm 0 1000000 0>;
217 brightness-levels = <0 100 500 1000 1500 2000 2500 2800>;
218 default-brightness-level = <7>;
219 enable-gpios = <&gpx3 0 GPIO_ACTIVE_HIGH>;
220 power-supply = <&fet1>;
221 pinctrl-0 = <&pwm0_out>;
222 pinctrl-names = "default";
226 compatible = "auo,b116xw03";
227 power-supply = <&fet6>;
228 backlight = <&backlight>;
234 pinctrl-names = "default";
235 pinctrl-0 = <&dp_hpd>;
236 samsung,color-space = <0>;
237 samsung,dynamic-range = <0>;
238 samsung,ycbcr-coeff = <0>;
239 samsung,color-depth = <1>;
240 samsung,link-rate = <0x0a>;
241 samsung,lane-count = <2>;
242 samsung,hpd-gpio = <&gpx0 7 GPIO_ACTIVE_HIGH>;
247 samsung,vbus-gpio = <&gpx1 1 GPIO_ACTIVE_HIGH>;
256 hpd-gpio = <&gpx3 7 GPIO_ACTIVE_HIGH>;
257 pinctrl-names = "default";
258 pinctrl-0 = <&hdmi_hpd_irq>;
261 hdmi-en-supply = <&tps65090_fet7>;
262 vdd-supply = <&ldo8_reg>;
263 vdd_osc-supply = <&ldo10_reg>;
264 vdd_pll-supply = <&ldo8_reg>;
269 samsung,i2c-sda-delay = <100>;
270 samsung,i2c-max-bus-freq = <378000>;
272 max77686: max77686@09 {
273 compatible = "maxim,max77686";
274 interrupt-parent = <&gpx3>;
275 interrupts = <2 IRQ_TYPE_NONE>;
276 pinctrl-names = "default";
277 pinctrl-0 = <&max77686_irq>;
284 regulator-name = "P1.0V_LDO_OUT1";
285 regulator-min-microvolt = <1000000>;
286 regulator-max-microvolt = <1000000>;
291 regulator-name = "P1.8V_LDO_OUT2";
292 regulator-min-microvolt = <1800000>;
293 regulator-max-microvolt = <1800000>;
298 regulator-name = "P1.8V_LDO_OUT3";
299 regulator-min-microvolt = <1800000>;
300 regulator-max-microvolt = <1800000>;
305 regulator-name = "P1.1V_LDO_OUT7";
306 regulator-min-microvolt = <1100000>;
307 regulator-max-microvolt = <1100000>;
312 regulator-name = "P1.0V_LDO_OUT8";
313 regulator-min-microvolt = <1000000>;
314 regulator-max-microvolt = <1000000>;
319 regulator-name = "P1.8V_LDO_OUT10";
320 regulator-min-microvolt = <1800000>;
321 regulator-max-microvolt = <1800000>;
326 regulator-name = "P3.0V_LDO_OUT12";
327 regulator-min-microvolt = <3000000>;
328 regulator-max-microvolt = <3000000>;
333 regulator-name = "P1.8V_LDO_OUT14";
334 regulator-min-microvolt = <1800000>;
335 regulator-max-microvolt = <1800000>;
340 regulator-name = "P1.0V_LDO_OUT15";
341 regulator-min-microvolt = <1000000>;
342 regulator-max-microvolt = <1000000>;
347 regulator-name = "P1.8V_LDO_OUT16";
348 regulator-min-microvolt = <1800000>;
349 regulator-max-microvolt = <1800000>;
354 regulator-name = "vdd_mif";
355 regulator-min-microvolt = <950000>;
356 regulator-max-microvolt = <1300000>;
362 regulator-name = "vdd_arm";
363 regulator-min-microvolt = <850000>;
364 regulator-max-microvolt = <1350000>;
370 regulator-name = "vdd_int";
371 regulator-min-microvolt = <900000>;
372 regulator-max-microvolt = <1200000>;
378 regulator-name = "vdd_g3d";
379 regulator-min-microvolt = <850000>;
380 regulator-max-microvolt = <1300000>;
386 regulator-name = "P1.8V_BUCK_OUT5";
387 regulator-min-microvolt = <1800000>;
388 regulator-max-microvolt = <1800000>;
394 regulator-name = "P1.35V_BUCK_OUT6";
395 regulator-min-microvolt = <1350000>;
396 regulator-max-microvolt = <1350000>;
401 regulator-name = "P2.0V_BUCK_OUT7";
402 regulator-min-microvolt = <2000000>;
403 regulator-max-microvolt = <2000000>;
408 regulator-name = "P2.85V_BUCK_OUT8";
409 regulator-min-microvolt = <2850000>;
410 regulator-max-microvolt = <2850000>;
419 samsung,i2c-sda-delay = <100>;
420 samsung,i2c-max-bus-freq = <378000>;
424 compatible = "cypress,cyapa";
425 interrupts = <2 IRQ_TYPE_NONE>;
426 interrupt-parent = <&gpx1>;
432 * Disabled pullups since external part has its own pullups and
433 * double-pulling gets us out of spec in some cases.
436 samsung,pin-pud = <0>;
441 samsung,i2c-sda-delay = <100>;
442 samsung,i2c-max-bus-freq = <66000>;
445 compatible = "samsung,exynos4210-hdmiddc";
452 samsung,i2c-sda-delay = <100>;
453 samsung,i2c-max-bus-freq = <66000>;
458 samsung,i2c-sda-delay = <100>;
459 samsung,i2c-max-bus-freq = <66000>;
464 samsung,i2c-sda-delay = <100>;
465 samsung,i2c-max-bus-freq = <66000>;
470 samsung,i2c-sda-delay = <100>;
471 samsung,i2c-max-bus-freq = <66000>;
474 compatible = "maxim,max98095";
476 pinctrl-0 = <&max98095_en>;
477 pinctrl-names = "default";
483 samsung,i2c-sda-delay = <100>;
484 samsung,i2c-max-bus-freq = <378000>;
486 hdmiphy: hdmiphy@38 {
487 compatible = "samsung,exynos4212-hdmiphy";
500 card-detect-delay = <200>;
501 samsung,dw-mshc-ciu-div = <3>;
502 samsung,dw-mshc-sdr-timing = <2 3>;
503 samsung,dw-mshc-ddr-timing = <1 2>;
504 pinctrl-names = "default";
505 pinctrl-0 = <&sd0_clk &sd0_cmd &sd0_cd &sd0_bus4 &sd0_bus8>;
513 card-detect-delay = <200>;
514 samsung,dw-mshc-ciu-div = <3>;
515 samsung,dw-mshc-sdr-timing = <2 3>;
516 samsung,dw-mshc-ddr-timing = <1 2>;
517 pinctrl-names = "default";
518 pinctrl-0 = <&sd2_clk &sd2_cmd &sd2_cd &sd2_bus4>;
520 wp-gpios = <&gpc2 1 GPIO_ACTIVE_HIGH>;
525 * On Snow we've got SIP WiFi and so can keep drive strengths low to
532 card-detect-delay = <200>;
533 samsung,dw-mshc-ciu-div = <3>;
534 samsung,dw-mshc-sdr-timing = <2 3>;
535 samsung,dw-mshc-ddr-timing = <1 2>;
536 pinctrl-names = "default";
537 pinctrl-0 = <&sd3_clk &sd3_cmd &sd3_bus4>;
544 samsung,pins = "gpx1-6";
545 samsung,pin-function = <0>;
546 samsung,pin-pud = <0>;
547 samsung,pin-drv = <0>;
550 max98095_en: max98095-en {
551 samsung,pins = "gpx1-7";
552 samsung,pin-function = <0>;
553 samsung,pin-pud = <3>;
554 samsung,pin-drv = <0>;
557 tps65090_irq: tps65090-irq {
558 samsung,pins = "gpx2-6";
559 samsung,pin-function = <0>;
560 samsung,pin-pud = <0>;
561 samsung,pin-drv = <0>;
564 usb3_vbus_en: usb3-vbus-en {
565 samsung,pins = "gpx2-7";
566 samsung,pin-function = <1>;
567 samsung,pin-pud = <0>;
568 samsung,pin-drv = <0>;
571 max77686_irq: max77686-irq {
572 samsung,pins = "gpx3-2";
573 samsung,pin-function = <0>;
574 samsung,pin-pud = <0>;
575 samsung,pin-drv = <0>;
578 hdmi_hpd_irq: hdmi-hpd-irq {
579 samsung,pins = "gpx3-7";
580 samsung,pin-function = <0>;
581 samsung,pin-pud = <1>;
582 samsung,pin-drv = <0>;
587 arb_their_claim: arb-their-claim {
588 samsung,pins = "gpe0-4";
589 samsung,pin-function = <0>;
590 samsung,pin-pud = <3>;
591 samsung,pin-drv = <0>;
594 arb_our_claim: arb-our-claim {
595 samsung,pins = "gpf0-3";
596 samsung,pin-function = <1>;
597 samsung,pin-pud = <0>;
598 samsung,pin-drv = <0>;
604 clocks = <&clock CLK_RTC>, <&max77686 MAX77686_CLK_AP>;
605 clock-names = "rtc", "rtc_src";
609 samsung,pin-drv = <0>;
613 samsung,pin-drv = <0>;
617 samsung,pin-pud = <3>;
618 samsung,pin-drv = <0>;
623 samsung,spi-src-clk = <0>;
632 vbus-supply = <&usb3_vbus_reg>;
635 #include "cros-ec-keyboard.dtsi"