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