2012-11-21 13:32:21 +09:00
/*
* Google Snow board device tree source
*
* Copyright (c) 2012 Google, Inc
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 as
* published by the Free Software Foundation.
*/
/dts-v1/;
2013-06-18 00:02:08 +09:00
#include "exynos5250.dtsi"
2013-12-21 10:09:25 +09:00
#include "exynos5250-cros-common.dtsi"
2012-11-21 13:32:21 +09:00
/ {
model = "Google Snow";
2014-03-21 02:17:22 +09:00
compatible = "google,snow", "samsung,exynos5250", "samsung,exynos5";
2012-11-21 13:32:21 +09:00
2013-04-16 16:29:01 +00:00
aliases {
i2c104 = &i2c_104;
};
2014-02-24 08:47:28 +09:00
rtc@101E0000 {
status = "okay";
};
2013-04-04 14:16:11 +09:00
pinctrl@11400000 {
2014-05-16 05:16:11 +09:00
ec_irq: ec-irq {
samsung,pins = "gpx1-6";
samsung,pin-function = <0>;
samsung,pin-pud = <0>;
samsung,pin-drv = <0>;
};
2013-04-04 14:16:11 +09:00
sd3_clk: sd3-clk {
samsung,pin-drv = <0>;
};
sd3_cmd: sd3-cmd {
samsung,pin-pud = <3>;
samsung,pin-drv = <0>;
};
sd3_bus4: sd3-bus-width4 {
samsung,pin-drv = <0>;
};
2014-05-16 05:16:14 +09:00
tps65090_irq: tps65090-irq {
samsung,pins = "gpx2-6";
samsung,pin-function = <0>;
samsung,pin-pud = <0>;
samsung,pin-drv = <0>;
};
2014-05-16 05:22:41 +09:00
hdmi_hpd_irq: hdmi-hpd-irq {
samsung,pins = "gpx3-7";
samsung,pin-function = <0>;
samsung,pin-pud = <1>;
samsung,pin-drv = <0>;
};
2013-04-04 14:16:11 +09:00
};
2014-05-16 05:16:07 +09:00
pinctrl@13400000 {
arb_their_claim: arb-their-claim {
samsung,pins = "gpe0-4";
samsung,pin-function = <0>;
samsung,pin-pud = <3>;
samsung,pin-drv = <0>;
};
arb_our_claim: arb-our-claim {
samsung,pins = "gpf0-3";
samsung,pin-function = <1>;
samsung,pin-pud = <0>;
samsung,pin-drv = <0>;
};
};
2012-11-21 13:32:21 +09:00
gpio-keys {
compatible = "gpio-keys";
lid-switch {
label = "Lid";
2013-04-04 14:16:11 +09:00
gpios = <&gpx3 5 1>;
2012-11-21 13:32:21 +09:00
linux,input-type = <5>; /* EV_SW */
linux,code = <0>; /* SW_LID */
debounce-interval = <1>;
gpio-key,wakeup;
};
};
2014-05-16 05:16:14 +09:00
vbat: vbat-fixed-regulator {
compatible = "regulator-fixed";
regulator-name = "vbat-supply";
regulator-boot-on;
};
2013-04-16 16:29:01 +00:00
i2c-arbitrator {
compatible = "i2c-arb-gpio-challenge";
#address-cells = <1>;
#size-cells = <0>;
i2c-parent = <&{/i2c@12CA0000}>;
our-claim-gpio = <&gpf0 3 1>;
their-claim-gpios = <&gpe0 4 1>;
slew-delay-us = <10>;
wait-retry-us = <3000>;
wait-free-us = <50000>;
2014-05-16 05:16:07 +09:00
pinctrl-names = "default";
pinctrl-0 = <&arb_our_claim &arb_their_claim>;
2013-04-16 16:29:01 +00:00
/* Use ID 104 as a hint that we're on physical bus 4 */
i2c_104: i2c@0 {
reg = <0>;
#address-cells = <1>;
#size-cells = <0>;
2013-04-16 16:29:02 +00:00
battery: sbs-battery@b {
compatible = "sbs,sbs-battery";
reg = <0xb>;
sbs,poll-retry-count = <1>;
};
2013-04-27 15:14:10 -07:00
ec: embedded-controller {
compatible = "google,cros-ec-i2c";
reg = <0x1e>;
interrupts = <6 0>;
interrupt-parent = <&gpx1>;
2014-05-16 05:16:11 +09:00
pinctrl-names = "default";
pinctrl-0 = <&ec_irq>;
2013-04-27 15:14:10 -07:00
wakeup-source;
keyboard-controller {
compatible = "google,cros-ec-keyb";
keypad,num-rows = <8>;
keypad,num-columns = <13>;
google,needs-ghost-filter;
2013-12-21 06:08:20 +09:00
linux,keymap = <0x0001007d /* L_META */
2013-04-27 15:14:10 -07:00
0x0002003b /* F1 */
0x00030030 /* B */
0x00040044 /* F10 */
0x00060031 /* N */
0x0008000d /* = */
0x000a0064 /* R_ALT */
0x01010001 /* ESC */
0x0102003e /* F4 */
0x01030022 /* G */
0x01040041 /* F7 */
0x01060023 /* H */
0x01080028 /* ' */
0x01090043 /* F9 */
0x010b000e /* BKSPACE */
0x0200001d /* L_CTRL */
0x0201000f /* TAB */
0x0202003d /* F3 */
0x02030014 /* T */
0x02040040 /* F6 */
0x0205001b /* ] */
0x02060015 /* Y */
0x02070056 /* 102ND */
0x0208001a /* [ */
0x02090042 /* F8 */
0x03010029 /* GRAVE */
0x0302003c /* F2 */
0x03030006 /* 5 */
0x0304003f /* F5 */
0x03060007 /* 6 */
0x0308000c /* - */
0x030b002b /* \ */
0x04000061 /* R_CTRL */
0x0401001e /* A */
0x04020020 /* D */
0x04030021 /* F */
0x0404001f /* S */
0x04050025 /* K */
0x04060024 /* J */
0x04080027 /* ; */
0x04090026 /* L */
2013-12-21 06:08:15 +09:00
0x040a002b /* \ */
2013-04-27 15:14:10 -07:00
0x040b001c /* ENTER */
0x0501002c /* Z */
0x0502002e /* C */
0x0503002f /* V */
0x0504002d /* X */
0x05050033 /* , */
0x05060032 /* M */
0x0507002a /* L_SHIFT */
0x05080035 /* / */
0x05090034 /* . */
0x050B0039 /* SPACE */
0x06010002 /* 1 */
0x06020004 /* 3 */
0x06030005 /* 4 */
0x06040003 /* 2 */
0x06050009 /* 8 */
0x06060008 /* 7 */
0x0608000b /* 0 */
0x0609000a /* 9 */
0x060a0038 /* L_ALT */
0x060b006c /* DOWN */
0x060c006a /* RIGHT */
0x07010010 /* Q */
0x07020012 /* E */
0x07030013 /* R */
0x07040011 /* W */
0x07050017 /* I */
0x07060016 /* U */
0x07070036 /* R_SHIFT */
0x07080019 /* P */
0x07090018 /* O */
0x070b0067 /* UP */
0x070c0069>; /* LEFT */
};
};
2014-05-16 05:16:14 +09:00
power-regulator {
compatible = "ti,tps65090";
reg = <0x48>;
/*
* Config irq to disable internal pulls
* even though we run in polling mode.
*/
pinctrl-names = "default";
pinctrl-0 = <&tps65090_irq>;
vsys1-supply = <&vbat>;
vsys2-supply = <&vbat>;
vsys3-supply = <&vbat>;
infet1-supply = <&vbat>;
infet2-supply = <&vbat>;
infet3-supply = <&vbat>;
infet4-supply = <&vbat>;
infet5-supply = <&vbat>;
infet6-supply = <&vbat>;
infet7-supply = <&vbat>;
vsys-l1-supply = <&vbat>;
vsys-l2-supply = <&vbat>;
regulators {
dcdc1 {
ti,enable-ext-control;
};
dcdc2 {
ti,enable-ext-control;
};
dcdc3 {
ti,enable-ext-control;
};
fet1 {
regulator-name = "vcd_led";
ti,overcurrent-wait = <3>;
};
tps65090_fet2: fet2 {
regulator-name = "video_mid";
regulator-always-on;
ti,overcurrent-wait = <3>;
};
fet3 {
regulator-name = "wwan_r";
regulator-always-on;
ti,overcurrent-wait = <3>;
};
fet4 {
regulator-name = "sdcard";
ti,overcurrent-wait = <3>;
};
fet5 {
regulator-name = "camout";
regulator-always-on;
ti,overcurrent-wait = <3>;
};
fet6 {
regulator-name = "lcd_vdd";
ti,overcurrent-wait = <3>;
};
tps65090_fet7: fet7 {
regulator-name = "video_mid_1a";
regulator-always-on;
ti,overcurrent-wait = <3>;
};
ldo1 {
};
ldo2 {
};
};
charger {
compatible = "ti,tps65090-charger";
};
};
2013-04-16 16:29:01 +00:00
};
};
2013-12-19 04:31:19 +09:00
mmc@12200000 {
status = "okay";
};
mmc@12220000 {
status = "okay";
};
2012-11-21 13:32:21 +09:00
/*
* On Snow we've got SIP WiFi and so can keep drive strengths low to
* reduce EMI.
*/
2013-10-21 05:48:16 +09:00
mmc@12230000 {
2013-12-19 04:31:19 +09:00
status = "okay";
2012-11-21 13:32:21 +09:00
slot@0 {
2013-04-04 14:16:11 +09:00
pinctrl-names = "default";
pinctrl-0 = <&sd3_clk &sd3_cmd &sd3_bus4>;
2012-11-21 13:32:21 +09:00
};
};
2013-02-12 15:24:15 -08:00
usb@12110000 {
2013-05-08 10:37:16 -07:00
samsung,vbus-gpio = <&gpx1 1 0>;
2013-02-12 15:24:15 -08:00
};
2013-03-09 17:19:22 +09:00
fixed-rate-clocks {
xxti {
compatible = "samsung,clock-xxti";
clock-frequency = <24000000>;
};
};
2014-05-16 05:22:41 +09:00
hdmi {
hdmi-en-supply = <&tps65090_fet7>;
vdd-supply = <&ldo8_reg>;
vdd_osc-supply = <&ldo10_reg>;
vdd_pll-supply = <&ldo8_reg>;
};
2012-11-21 13:32:21 +09:00
};