1/* 2 * SAMSUNG Snow board device tree source 3 * 4 * Copyright (c) 2012 Samsung Electronics Co., Ltd. 5 * http://www.samsung.com 6 * 7 * This program is free software; you can redistribute it and/or modify 8 * it under the terms of the GNU General Public License version 2 as 9 * published by the Free Software Foundation. 10 */ 11 12/dts-v1/; 13#include <dt-bindings/gpio/gpio.h> 14#include <dt-bindings/interrupt-controller/irq.h> 15#include <dt-bindings/input/input.h> 16#include "exynos5250.dtsi" 17 18/ { 19 model = "Google Snow"; 20 compatible = "google,snow", "samsung,exynos5250", "samsung,exynos5"; 21 22 aliases { 23 i2c0 = "/i2c@12C60000"; 24 i2c1 = "/i2c@12C70000"; 25 i2c2 = "/i2c@12C80000"; 26 i2c3 = "/i2c@12C90000"; 27 i2c4 = "/i2c@12CA0000"; 28 i2c104 = &i2c_104; 29 i2c5 = "/i2c@12CB0000"; 30 i2c6 = "/i2c@12CC0000"; 31 i2c7 = "/i2c@12CD0000"; 32 spi0 = "/spi@12d20000"; 33 spi1 = "/spi@12d30000"; 34 spi2 = "/spi@12d40000"; 35 spi3 = "/spi@131a0000"; 36 spi4 = "/spi@131b0000"; 37 mmc0 = "/mmc@12200000"; 38 mmc1 = "/mmc@12210000"; 39 mmc2 = "/mmc@12220000"; 40 mmc3 = "/mmc@12230000"; 41 serial0 = "/serial@12C30000"; 42 console = "/serial@12C30000"; 43 i2s = "/sound@3830000"; 44 }; 45 46 i2c4: i2c@12CA0000 { 47 cros_ec_old: cros-ec@1e { 48 reg = <0x1e>; 49 compatible = "google,cros-ec-i2c"; 50 i2c-max-frequency = <100000>; 51 u-boot,i2c-offset-len = <0>; 52 ec-interrupt = <&gpx1 6 GPIO_ACTIVE_LOW>; 53 }; 54 55 power-regulator@48 { 56 compatible = "ti,tps65090"; 57 reg = <0x48>; 58 }; 59 }; 60 61 i2c-arbitrator { 62 compatible = "i2c-arb-gpio-challenge"; 63 #address-cells = <1>; 64 #size-cells = <0>; 65 66 i2c-parent = <&{/i2c@12CA0000}>; 67 68 our-claim-gpio = <&gpf0 3 GPIO_ACTIVE_LOW>; 69 their-claim-gpios = <&gpe0 4 GPIO_ACTIVE_LOW>; 70 slew-delay-us = <10>; 71 wait-retry-us = <3000>; 72 wait-free-us = <50000>; 73 74 /* Use ID 104 as a hint that we're on physical bus 4 */ 75 i2c_104: i2c@0 { 76 reg = <0>; 77 #address-cells = <1>; 78 #size-cells = <0>; 79 80 battery: sbs-battery@b { 81 compatible = "sbs,sbs-battery"; 82 reg = <0xb>; 83 sbs,poll-retry-count = <1>; 84 }; 85 86 cros_ec: embedded-controller { 87 compatible = "google,cros-ec-i2c"; 88 reg = <0x1e>; 89 interrupts = <6 IRQ_TYPE_NONE>; 90 interrupt-parent = <&gpx1>; 91 wakeup-source; 92 i2c-max-frequency = <100000>; 93 u-boot,i2c-offset-len = <0>; 94 ec-interrupt = <&gpx1 6 GPIO_ACTIVE_LOW>; 95 }; 96 97 power-regulator { 98 compatible = "ti,tps65090"; 99 reg = <0x48>; 100 101 regulators { 102 dcdc1 { 103 ti,enable-ext-control; 104 }; 105 dcdc2 { 106 ti,enable-ext-control; 107 }; 108 dcdc3 { 109 ti,enable-ext-control; 110 }; 111 fet1: fet1 { 112 regulator-name = "vcd_led"; 113 ti,overcurrent-wait = <3>; 114 }; 115 tps65090_fet2: fet2 { 116 regulator-name = "video_mid"; 117 regulator-always-on; 118 ti,overcurrent-wait = <3>; 119 }; 120 fet3 { 121 regulator-name = "wwan_r"; 122 regulator-always-on; 123 ti,overcurrent-wait = <3>; 124 }; 125 fet4 { 126 regulator-name = "sdcard"; 127 ti,overcurrent-wait = <3>; 128 }; 129 fet5 { 130 regulator-name = "camout"; 131 regulator-always-on; 132 ti,overcurrent-wait = <3>; 133 }; 134 fet6: fet6 { 135 regulator-name = "lcd_vdd"; 136 ti,overcurrent-wait = <3>; 137 }; 138 tps65090_fet7: fet7 { 139 regulator-name = "video_mid_1a"; 140 regulator-always-on; 141 ti,overcurrent-wait = <3>; 142 }; 143 ldo1 { 144 }; 145 ldo2 { 146 }; 147 }; 148 149 charger { 150 compatible = "ti,tps65090-charger"; 151 }; 152 }; 153 }; 154 }; 155 156 spi@12d30000 { 157 spi-max-frequency = <50000000>; 158 firmware_storage_spi: flash@0 { 159 compatible = "spi-flash"; 160 reg = <0>; 161 }; 162 }; 163 164 spi@131b0000 { 165 spi-max-frequency = <1000000>; 166 spi-deactivate-delay = <100>; 167 168 /* Snow did support SPI but the released version used I2C */ 169 embedded-controller { 170 compatible = "google,cros-ec-i2c"; 171 reg = <0x1e>; 172 spi-max-frequency = <5000000>; 173 ec-interrupt = <&gpx1 6 GPIO_ACTIVE_LOW>; 174 optimise-flash-write; 175 status = "disabled"; 176 }; 177 }; 178 179 sound@3830000 { 180 samsung,codec-type = "max98095"; 181 codec-enable-gpio = <&gpx1 7 GPIO_ACTIVE_HIGH>; 182 }; 183 184 sound@12d60000 { 185 status = "disabled"; 186 }; 187 188 i2c@12CD0000 { 189 soundcodec@22 { 190 reg = <0x22>; 191 compatible = "maxim,max98095-codec"; 192 }; 193 194 ptn3460-bridge@20 { 195 compatible = "nxp,ptn3460"; 196 reg = <0x20>; 197 /* 198 * TODO(sjg@chromium.org): Use GPIOs here 199 * powerdown-gpio = <&gpy2 5 0>; 200 * reset-gpio = <&gpx1 5 0>; 201 * edid-emulation = <5>; 202 * pinctrl-names = "default"; 203 * pinctrl-0 = <&ptn3460_gpios>; 204 */ 205 }; 206 }; 207 208 i2c@12C60000 { 209 max77686@09 { 210 reg = <0x9>; 211 compatible = "maxim,max77686"; 212 }; 213 }; 214 215 mmc@12200000 { 216 samsung,bus-width = <8>; 217 samsung,timing = <1 3 3>; 218 samsung,removable = <0>; 219 }; 220 221 mmc@12210000 { 222 status = "disabled"; 223 }; 224 225 mmc@12220000 { 226 samsung,bus-width = <4>; 227 samsung,timing = <1 2 3>; 228 samsung,removable = <1>; 229 }; 230 231 mmc@12230000 { 232 status = "disabled"; 233 }; 234 235 ehci@12110000 { 236 samsung,vbus-gpio = <&gpx1 1 GPIO_ACTIVE_HIGH>; 237 status = "okay"; 238 }; 239 240 xhci@12000000 { 241 samsung,vbus-gpio = <&gpx2 7 GPIO_ACTIVE_HIGH>; 242 }; 243 244 tmu@10060000 { 245 samsung,min-temp = <25>; 246 samsung,max-temp = <125>; 247 samsung,start-warning = <95>; 248 samsung,start-tripping = <105>; 249 samsung,hw-tripping = <110>; 250 samsung,efuse-min-value = <40>; 251 samsung,efuse-value = <55>; 252 samsung,efuse-max-value = <100>; 253 samsung,slope = <274761730>; 254 samsung,dc-value = <25>; 255 }; 256 257 fimd@14400000 { 258 samsung,vl-freq = <60>; 259 samsung,vl-col = <1366>; 260 samsung,vl-row = <768>; 261 samsung,vl-width = <1366>; 262 samsung,vl-height = <768>; 263 264 samsung,vl-clkp; 265 samsung,vl-dp; 266 samsung,vl-hsp; 267 samsung,vl-vsp; 268 269 samsung,vl-bpix = <4>; 270 271 samsung,vl-hspw = <32>; 272 samsung,vl-hbpd = <80>; 273 samsung,vl-hfpd = <48>; 274 samsung,vl-vspw = <5>; 275 samsung,vl-vbpd = <14>; 276 samsung,vl-vfpd = <3>; 277 samsung,vl-cmd-allow-len = <0xf>; 278 279 samsung,winid = <0>; 280 samsung,interface-mode = <1>; 281 samsung,dp-enabled = <1>; 282 samsung,dual-lcd-enabled = <0>; 283 }; 284 285 dp@145b0000 { 286 samsung,lt-status = <0>; 287 288 samsung,master-mode = <0>; 289 samsung,bist-mode = <0>; 290 samsung,bist-pattern = <0>; 291 samsung,h-sync-polarity = <0>; 292 samsung,v-sync-polarity = <0>; 293 samsung,interlaced = <0>; 294 samsung,color-space = <0>; 295 samsung,dynamic-range = <0>; 296 samsung,ycbcr-coeff = <0>; 297 samsung,color-depth = <1>; 298 }; 299 300}; 301 302&i2c_0 { 303 status = "okay"; 304 samsung,i2c-sda-delay = <100>; 305 samsung,i2c-max-bus-freq = <378000>; 306 307 max77686: max77686@09 { 308 compatible = "maxim,max77686"; 309 interrupt-parent = <&gpx3>; 310 interrupts = <2 IRQ_TYPE_NONE>; 311 wakeup-source; 312 reg = <0x09>; 313 #clock-cells = <1>; 314 315 voltage-regulators { 316 ldo1_reg: LDO1 { 317 regulator-name = "P1.0V_LDO_OUT1"; 318 regulator-min-microvolt = <1000000>; 319 regulator-max-microvolt = <1000000>; 320 regulator-always-on; 321 }; 322 323 ldo2_reg: LDO2 { 324 regulator-name = "P1.8V_LDO_OUT2"; 325 regulator-min-microvolt = <1800000>; 326 regulator-max-microvolt = <1800000>; 327 regulator-always-on; 328 }; 329 330 ldo3_reg: LDO3 { 331 regulator-name = "P1.8V_LDO_OUT3"; 332 regulator-min-microvolt = <1800000>; 333 regulator-max-microvolt = <1800000>; 334 regulator-always-on; 335 }; 336 337 ldo7_reg: LDO7 { 338 regulator-name = "P1.1V_LDO_OUT7"; 339 regulator-min-microvolt = <1100000>; 340 regulator-max-microvolt = <1100000>; 341 regulator-always-on; 342 }; 343 344 ldo8_reg: LDO8 { 345 regulator-name = "P1.0V_LDO_OUT8"; 346 regulator-min-microvolt = <1000000>; 347 regulator-max-microvolt = <1000000>; 348 regulator-always-on; 349 }; 350 351 ldo10_reg: LDO10 { 352 regulator-name = "P1.8V_LDO_OUT10"; 353 regulator-min-microvolt = <1800000>; 354 regulator-max-microvolt = <1800000>; 355 regulator-always-on; 356 }; 357 358 ldo12_reg: LDO12 { 359 regulator-name = "P3.0V_LDO_OUT12"; 360 regulator-min-microvolt = <3000000>; 361 regulator-max-microvolt = <3000000>; 362 regulator-always-on; 363 }; 364 365 ldo14_reg: LDO14 { 366 regulator-name = "P1.8V_LDO_OUT14"; 367 regulator-min-microvolt = <1800000>; 368 regulator-max-microvolt = <1800000>; 369 regulator-always-on; 370 }; 371 372 ldo15_reg: LDO15 { 373 regulator-name = "P1.0V_LDO_OUT15"; 374 regulator-min-microvolt = <1000000>; 375 regulator-max-microvolt = <1000000>; 376 regulator-always-on; 377 }; 378 379 ldo16_reg: LDO16 { 380 regulator-name = "P1.8V_LDO_OUT16"; 381 regulator-min-microvolt = <1800000>; 382 regulator-max-microvolt = <1800000>; 383 regulator-always-on; 384 }; 385 386 ldo17_reg: LDO17 { 387 regulator-name = "vdd_mydp"; 388 regulator-min-microvolt = <1200000>; 389 regulator-max-microvolt = <1200000>; 390 }; 391 392 buck1_reg: BUCK1 { 393 regulator-name = "vdd_mif"; 394 regulator-min-microvolt = <950000>; 395 regulator-max-microvolt = <1300000>; 396 regulator-always-on; 397 regulator-boot-on; 398 }; 399 400 buck2_reg: BUCK2 { 401 regulator-name = "vdd_arm"; 402 regulator-min-microvolt = <850000>; 403 regulator-max-microvolt = <1350000>; 404 regulator-always-on; 405 regulator-boot-on; 406 }; 407 408 buck3_reg: BUCK3 { 409 regulator-name = "vdd_int"; 410 regulator-min-microvolt = <900000>; 411 regulator-max-microvolt = <1200000>; 412 regulator-always-on; 413 regulator-boot-on; 414 }; 415 416 buck4_reg: BUCK4 { 417 regulator-name = "vdd_g3d"; 418 regulator-min-microvolt = <850000>; 419 regulator-max-microvolt = <1300000>; 420 regulator-always-on; 421 regulator-boot-on; 422 }; 423 424 buck5_reg: BUCK5 { 425 regulator-name = "P1.8V_BUCK_OUT5"; 426 regulator-min-microvolt = <1800000>; 427 regulator-max-microvolt = <1800000>; 428 regulator-always-on; 429 regulator-boot-on; 430 }; 431 432 buck6_reg: BUCK6 { 433 regulator-name = "P1.35V_BUCK_OUT6"; 434 regulator-min-microvolt = <1350000>; 435 regulator-max-microvolt = <1350000>; 436 regulator-always-on; 437 }; 438 439 buck7_reg: BUCK7 { 440 regulator-name = "P2.0V_BUCK_OUT7"; 441 regulator-min-microvolt = <2000000>; 442 regulator-max-microvolt = <2000000>; 443 regulator-always-on; 444 }; 445 446 buck8_reg: BUCK8 { 447 regulator-name = "P2.85V_BUCK_OUT8"; 448 regulator-min-microvolt = <2850000>; 449 regulator-max-microvolt = <2850000>; 450 regulator-always-on; 451 }; 452 }; 453 }; 454}; 455 456#include "cros-ec-keyboard.dtsi" 457