1d1de41d7SSimon Glass/* 2d1de41d7SSimon Glass * Google Spring board device tree source 3d1de41d7SSimon Glass * 4d1de41d7SSimon Glass * Copyright (c) 2013 Google, Inc 5d1de41d7SSimon Glass * Copyright (c) 2014 SUSE LINUX Products GmbH 6d1de41d7SSimon Glass * 7d1de41d7SSimon Glass * SPDX-License-Identifier: GPL-2.0 8d1de41d7SSimon Glass */ 9d1de41d7SSimon Glass 10d1de41d7SSimon Glass/dts-v1/; 11d1de41d7SSimon Glass#include <dt-bindings/gpio/gpio.h> 12d1de41d7SSimon Glass#include <dt-bindings/interrupt-controller/irq.h> 13d1de41d7SSimon Glass#include <dt-bindings/input/input.h> 14d1de41d7SSimon Glass#include "exynos5250.dtsi" 15d1de41d7SSimon Glass 16d1de41d7SSimon Glass/ { 17d1de41d7SSimon Glass model = "Google Spring"; 18d1de41d7SSimon Glass compatible = "google,spring", "samsung,exynos5250", "samsung,exynos5"; 19d1de41d7SSimon Glass 20d1de41d7SSimon Glass aliases { 21d1de41d7SSimon Glass i2c0 = "/i2c@12C60000"; 22d1de41d7SSimon Glass i2c1 = "/i2c@12C70000"; 23d1de41d7SSimon Glass i2c2 = "/i2c@12C80000"; 24d1de41d7SSimon Glass i2c3 = "/i2c@12C90000"; 25d1de41d7SSimon Glass i2c4 = "/i2c@12CA0000"; 26d1de41d7SSimon Glass i2c5 = "/i2c@12CB0000"; 27d1de41d7SSimon Glass i2c6 = "/i2c@12CC0000"; 28d1de41d7SSimon Glass i2c7 = "/i2c@12CD0000"; 29d1de41d7SSimon Glass i2c104 = &cros_ec_ldo_tunnel; 30d1de41d7SSimon Glass spi0 = "/spi@12d20000"; 31d1de41d7SSimon Glass spi1 = "/spi@12d30000"; 32d1de41d7SSimon Glass spi2 = "/spi@12d40000"; 33d1de41d7SSimon Glass spi3 = "/spi@131a0000"; 34d1de41d7SSimon Glass spi4 = "/spi@131b0000"; 35d1de41d7SSimon Glass mmc0 = "/mmc@12000000"; 36d1de41d7SSimon Glass serial0 = "/serial@12C30000"; 37d1de41d7SSimon Glass console = "/serial@12C30000"; 38d1de41d7SSimon Glass i2s = "/sound@3830000"; 39d1de41d7SSimon Glass }; 40d1de41d7SSimon Glass 41d1de41d7SSimon Glass memory { 42d1de41d7SSimon Glass reg = <0x40000000 0x80000000>; 43d1de41d7SSimon Glass }; 44d1de41d7SSimon Glass 45d1de41d7SSimon Glass flash@0 { 46d1de41d7SSimon Glass spl { /* spl size override */ 47d1de41d7SSimon Glass size = <0x8000>; 48d1de41d7SSimon Glass }; 49d1de41d7SSimon Glass }; 50d1de41d7SSimon Glass 51d1de41d7SSimon Glass chosen { 52d1de41d7SSimon Glass bootargs = "console=tty1"; 53d1de41d7SSimon Glass stdout-path = "serial3:115200n8"; 54d1de41d7SSimon Glass }; 55d1de41d7SSimon Glass 56d1de41d7SSimon Glass board-rev { 57d1de41d7SSimon Glass compatible = "google,board-revision"; 58d1de41d7SSimon Glass google,board-rev-gpios = <&gpy4 0 0>, <&gpy4 1 0>, 59d1de41d7SSimon Glass <&gpy4 2 0>; 60d1de41d7SSimon Glass }; 61d1de41d7SSimon Glass 626e474eabSSimon Glass i2c@12C90000 { 636e474eabSSimon Glass clock-frequency = <100000>; 646e474eabSSimon Glass tpm@20 { 656e474eabSSimon Glass reg = <0x20>; 666e474eabSSimon Glass compatible = "infineon,slb9645tt"; 676e474eabSSimon Glass }; 686e474eabSSimon Glass }; 696e474eabSSimon Glass 70d1de41d7SSimon Glass mmc@12200000 { 71d1de41d7SSimon Glass samsung,bus-width = <8>; 72d1de41d7SSimon Glass samsung,timing = <1 3 3>; 73d1de41d7SSimon Glass samsung,removable = <0>; 74d1de41d7SSimon Glass }; 75d1de41d7SSimon Glass 76d1de41d7SSimon Glass mmc@12210000 { 77d1de41d7SSimon Glass status = "disabled"; 78d1de41d7SSimon Glass }; 79d1de41d7SSimon Glass 80d1de41d7SSimon Glass mmc@12220000 { 81d1de41d7SSimon Glass /* MMC2 pins are used as GPIO for eDP bridge */ 82d1de41d7SSimon Glass status = "disabled"; 83d1de41d7SSimon Glass }; 84d1de41d7SSimon Glass 85d1de41d7SSimon Glass mmc@12230000 { 86d1de41d7SSimon Glass status = "disabled"; 87d1de41d7SSimon Glass }; 88d1de41d7SSimon Glass 89d1de41d7SSimon Glass ehci@12110000 { 90d1de41d7SSimon Glass samsung,vbus-gpio = <&gpx1 1 GPIO_ACTIVE_HIGH>; 91d1de41d7SSimon Glass status = "okay"; 92d1de41d7SSimon Glass }; 93d1de41d7SSimon Glass 94d1de41d7SSimon Glass xhci@12000000 { 95d1de41d7SSimon Glass samsung,vbus-gpio = <&gpx2 7 GPIO_ACTIVE_HIGH>; 96d1de41d7SSimon Glass }; 97d1de41d7SSimon Glass 98d1de41d7SSimon Glass spi@12d30000 { 99d1de41d7SSimon Glass spi-max-frequency = <50000000>; 100d1de41d7SSimon Glass firmware_storage_spi: flash@0 { 101d1de41d7SSimon Glass compatible = "spi-flash"; 102d1de41d7SSimon Glass reg = <0>; 103d1de41d7SSimon Glass }; 104d1de41d7SSimon Glass }; 105d1de41d7SSimon Glass 106d1de41d7SSimon Glass tmu@10060000 { 107d1de41d7SSimon Glass samsung,min-temp = <25>; 108d1de41d7SSimon Glass samsung,max-temp = <125>; 109d1de41d7SSimon Glass samsung,start-warning = <95>; 110d1de41d7SSimon Glass samsung,start-tripping = <105>; 111d1de41d7SSimon Glass samsung,hw-tripping = <110>; 112d1de41d7SSimon Glass samsung,efuse-min-value = <40>; 113d1de41d7SSimon Glass samsung,efuse-value = <55>; 114d1de41d7SSimon Glass samsung,efuse-max-value = <100>; 115d1de41d7SSimon Glass samsung,slope = <274761730>; 116d1de41d7SSimon Glass samsung,dc-value = <25>; 117d1de41d7SSimon Glass }; 118d1de41d7SSimon Glass 119d1de41d7SSimon Glass fimd@14400000 { 120d1de41d7SSimon Glass samsung,vl-freq = <60>; 121d1de41d7SSimon Glass samsung,vl-col = <1366>; 122d1de41d7SSimon Glass samsung,vl-row = <768>; 123d1de41d7SSimon Glass samsung,vl-width = <1366>; 124d1de41d7SSimon Glass samsung,vl-height = <768>; 125d1de41d7SSimon Glass 126d1de41d7SSimon Glass samsung,vl-clkp; 127d1de41d7SSimon Glass samsung,vl-dp; 128d1de41d7SSimon Glass samsung,vl-hsp; 129d1de41d7SSimon Glass samsung,vl-vsp; 130d1de41d7SSimon Glass 131d1de41d7SSimon Glass samsung,vl-bpix = <4>; 132d1de41d7SSimon Glass 133d1de41d7SSimon Glass samsung,vl-hspw = <32>; 134d1de41d7SSimon Glass samsung,vl-hbpd = <80>; 135d1de41d7SSimon Glass samsung,vl-hfpd = <48>; 136d1de41d7SSimon Glass samsung,vl-vspw = <5>; 137d1de41d7SSimon Glass samsung,vl-vbpd = <14>; 138d1de41d7SSimon Glass samsung,vl-vfpd = <3>; 139d1de41d7SSimon Glass samsung,vl-cmd-allow-len = <0xf>; 140d1de41d7SSimon Glass 141d1de41d7SSimon Glass samsung,winid = <0>; 142d1de41d7SSimon Glass samsung,interface-mode = <1>; 143d1de41d7SSimon Glass samsung,dp-enabled = <1>; 144d1de41d7SSimon Glass samsung,dual-lcd-enabled = <0>; 145d1de41d7SSimon Glass }; 146d1de41d7SSimon Glass 147d1de41d7SSimon Glass dp@145b0000 { 148d1de41d7SSimon Glass samsung,lt-status = <0>; 149d1de41d7SSimon Glass 150d1de41d7SSimon Glass samsung,master-mode = <0>; 151d1de41d7SSimon Glass samsung,bist-mode = <0>; 152d1de41d7SSimon Glass samsung,bist-pattern = <0>; 153d1de41d7SSimon Glass samsung,h-sync-polarity = <0>; 154d1de41d7SSimon Glass samsung,v-sync-polarity = <0>; 155d1de41d7SSimon Glass samsung,interlaced = <0>; 156d1de41d7SSimon Glass samsung,color-space = <0>; 157d1de41d7SSimon Glass samsung,dynamic-range = <0>; 158d1de41d7SSimon Glass samsung,ycbcr-coeff = <0>; 159d1de41d7SSimon Glass samsung,color-depth = <1>; 160d1de41d7SSimon Glass }; 161*f948f5deSSimon Glass 162*f948f5deSSimon Glass backlight: backlight { 163*f948f5deSSimon Glass compatible = "pwm-backlight"; 164*f948f5deSSimon Glass pwms = <&pwm 0 1000000 0>; 165*f948f5deSSimon Glass brightness-levels = <0 100 500 1000 1500 2000 2500 2800>; 166*f948f5deSSimon Glass default-brightness-level = <1>; 167*f948f5deSSimon Glass enable-gpios = <&gpx3 0 GPIO_ACTIVE_HIGH>; 168*f948f5deSSimon Glass power-supply = <&fet1>; 169*f948f5deSSimon Glass }; 170*f948f5deSSimon Glass 171*f948f5deSSimon Glass panel: panel { 172*f948f5deSSimon Glass compatible = "auo,b116xw03"; 173*f948f5deSSimon Glass power-supply = <&fet6>; 174*f948f5deSSimon Glass backlight = <&backlight>; 175*f948f5deSSimon Glass 176*f948f5deSSimon Glass port { 177*f948f5deSSimon Glass panel_in: endpoint { 178*f948f5deSSimon Glass remote-endpoint = <&bridge_out>; 179*f948f5deSSimon Glass }; 180*f948f5deSSimon Glass }; 181*f948f5deSSimon Glass }; 182d1de41d7SSimon Glass}; 183d1de41d7SSimon Glass 184d1de41d7SSimon Glass&i2c_0 { 185d1de41d7SSimon Glass status = "okay"; 186d1de41d7SSimon Glass samsung,i2c-sda-delay = <100>; 187d1de41d7SSimon Glass samsung,i2c-max-bus-freq = <378000>; 188d1de41d7SSimon Glass 189d1de41d7SSimon Glass s5m8767-pmic@66 { 190d1de41d7SSimon Glass compatible = "samsung,s5m8767-pmic"; 191d1de41d7SSimon Glass reg = <0x66>; 192d1de41d7SSimon Glass interrupt-parent = <&gpx3>; 193d1de41d7SSimon Glass wakeup-source; 194d1de41d7SSimon Glass 195d1de41d7SSimon Glass s5m8767,pmic-buck-dvs-gpios = <&gpd1 0 GPIO_ACTIVE_LOW>, /* DVS1 */ 196d1de41d7SSimon Glass <&gpd1 1 GPIO_ACTIVE_LOW>, /* DVS2 */ 197d1de41d7SSimon Glass <&gpd1 2 GPIO_ACTIVE_LOW>; /* DVS3 */ 198d1de41d7SSimon Glass 199d1de41d7SSimon Glass s5m8767,pmic-buck-ds-gpios = <&gpx2 3 GPIO_ACTIVE_LOW>, /* SET1 */ 200d1de41d7SSimon Glass <&gpx2 4 GPIO_ACTIVE_LOW>, /* SET2 */ 201d1de41d7SSimon Glass <&gpx2 5 GPIO_ACTIVE_LOW>; /* SET3 */ 202d1de41d7SSimon Glass 203d1de41d7SSimon Glass /* 204d1de41d7SSimon Glass * The following arrays of DVS voltages are not used, since we are 205d1de41d7SSimon Glass * not using GPIOs to control PMIC bucks, but they must be defined 206d1de41d7SSimon Glass * to please the driver. 207d1de41d7SSimon Glass */ 208d1de41d7SSimon Glass s5m8767,pmic-buck2-dvs-voltage = <1350000>, <1300000>, 209d1de41d7SSimon Glass <1250000>, <1200000>, 210d1de41d7SSimon Glass <1150000>, <1100000>, 211d1de41d7SSimon Glass <1000000>, <950000>; 212d1de41d7SSimon Glass 213d1de41d7SSimon Glass s5m8767,pmic-buck3-dvs-voltage = <1100000>, <1100000>, 214d1de41d7SSimon Glass <1100000>, <1100000>, 215d1de41d7SSimon Glass <1000000>, <1000000>, 216d1de41d7SSimon Glass <1000000>, <1000000>; 217d1de41d7SSimon Glass 218d1de41d7SSimon Glass s5m8767,pmic-buck4-dvs-voltage = <1200000>, <1200000>, 219d1de41d7SSimon Glass <1200000>, <1200000>, 220d1de41d7SSimon Glass <1200000>, <1200000>, 221d1de41d7SSimon Glass <1200000>, <1200000>; 222d1de41d7SSimon Glass 223d1de41d7SSimon Glass clocks { 224d1de41d7SSimon Glass compatible = "samsung,s5m8767-clk"; 225d1de41d7SSimon Glass #clock-cells = <1>; 226d1de41d7SSimon Glass clock-output-names = "en32khz_ap", 227d1de41d7SSimon Glass "en32khz_cp", 228d1de41d7SSimon Glass "en32khz_bt"; 229d1de41d7SSimon Glass }; 230d1de41d7SSimon Glass 231d1de41d7SSimon Glass regulators { 232d1de41d7SSimon Glass ldo4_reg: LDO4 { 233d1de41d7SSimon Glass regulator-name = "P1.0V_LDO_OUT4"; 234d1de41d7SSimon Glass regulator-min-microvolt = <1000000>; 235d1de41d7SSimon Glass regulator-max-microvolt = <1000000>; 236d1de41d7SSimon Glass regulator-always-on; 237d1de41d7SSimon Glass op_mode = <0>; 238d1de41d7SSimon Glass }; 239d1de41d7SSimon Glass 240d1de41d7SSimon Glass ldo5_reg: LDO5 { 241d1de41d7SSimon Glass regulator-name = "P1.8V_LDO_OUT5"; 242d1de41d7SSimon Glass regulator-min-microvolt = <1800000>; 243d1de41d7SSimon Glass regulator-max-microvolt = <1800000>; 244d1de41d7SSimon Glass regulator-always-on; 245d1de41d7SSimon Glass op_mode = <0>; 246d1de41d7SSimon Glass }; 247d1de41d7SSimon Glass 248d1de41d7SSimon Glass ldo6_reg: LDO6 { 249d1de41d7SSimon Glass regulator-name = "vdd_mydp"; 250d1de41d7SSimon Glass regulator-min-microvolt = <1200000>; 251d1de41d7SSimon Glass regulator-max-microvolt = <1200000>; 252d1de41d7SSimon Glass regulator-always-on; 253d1de41d7SSimon Glass op_mode = <3>; 254d1de41d7SSimon Glass }; 255d1de41d7SSimon Glass 256d1de41d7SSimon Glass ldo7_reg: LDO7 { 257d1de41d7SSimon Glass regulator-name = "P1.1V_LDO_OUT7"; 258d1de41d7SSimon Glass regulator-min-microvolt = <1100000>; 259d1de41d7SSimon Glass regulator-max-microvolt = <1100000>; 260d1de41d7SSimon Glass regulator-always-on; 261d1de41d7SSimon Glass op_mode = <3>; 262d1de41d7SSimon Glass }; 263d1de41d7SSimon Glass 264d1de41d7SSimon Glass ldo8_reg: LDO8 { 265d1de41d7SSimon Glass regulator-name = "P1.0V_LDO_OUT8"; 266d1de41d7SSimon Glass regulator-min-microvolt = <1000000>; 267d1de41d7SSimon Glass regulator-max-microvolt = <1000000>; 268d1de41d7SSimon Glass regulator-always-on; 269d1de41d7SSimon Glass op_mode = <3>; 270d1de41d7SSimon Glass }; 271d1de41d7SSimon Glass 272d1de41d7SSimon Glass ldo10_reg: LDO10 { 273d1de41d7SSimon Glass regulator-name = "P1.8V_LDO_OUT10"; 274d1de41d7SSimon Glass regulator-min-microvolt = <1800000>; 275d1de41d7SSimon Glass regulator-max-microvolt = <1800000>; 276d1de41d7SSimon Glass regulator-always-on; 277d1de41d7SSimon Glass op_mode = <3>; 278d1de41d7SSimon Glass }; 279d1de41d7SSimon Glass 280d1de41d7SSimon Glass ldo11_reg: LDO11 { 281d1de41d7SSimon Glass regulator-name = "P1.8V_LDO_OUT11"; 282d1de41d7SSimon Glass regulator-min-microvolt = <1800000>; 283d1de41d7SSimon Glass regulator-max-microvolt = <1800000>; 284d1de41d7SSimon Glass regulator-always-on; 285d1de41d7SSimon Glass op_mode = <0>; 286d1de41d7SSimon Glass }; 287d1de41d7SSimon Glass 288d1de41d7SSimon Glass ldo12_reg: LDO12 { 289d1de41d7SSimon Glass regulator-name = "P3.0V_LDO_OUT12"; 290d1de41d7SSimon Glass regulator-min-microvolt = <3000000>; 291d1de41d7SSimon Glass regulator-max-microvolt = <3000000>; 292d1de41d7SSimon Glass regulator-always-on; 293d1de41d7SSimon Glass op_mode = <3>; 294d1de41d7SSimon Glass }; 295d1de41d7SSimon Glass 296d1de41d7SSimon Glass ldo13_reg: LDO13 { 297d1de41d7SSimon Glass regulator-name = "P1.8V_LDO_OUT13"; 298d1de41d7SSimon Glass regulator-min-microvolt = <1800000>; 299d1de41d7SSimon Glass regulator-max-microvolt = <1800000>; 300d1de41d7SSimon Glass regulator-always-on; 301d1de41d7SSimon Glass op_mode = <0>; 302d1de41d7SSimon Glass }; 303d1de41d7SSimon Glass 304d1de41d7SSimon Glass ldo14_reg: LDO14 { 305d1de41d7SSimon Glass regulator-name = "P1.8V_LDO_OUT14"; 306d1de41d7SSimon Glass regulator-min-microvolt = <1800000>; 307d1de41d7SSimon Glass regulator-max-microvolt = <1800000>; 308d1de41d7SSimon Glass regulator-always-on; 309d1de41d7SSimon Glass op_mode = <3>; 310d1de41d7SSimon Glass }; 311d1de41d7SSimon Glass 312d1de41d7SSimon Glass ldo15_reg: LDO15 { 313d1de41d7SSimon Glass regulator-name = "P1.0V_LDO_OUT15"; 314d1de41d7SSimon Glass regulator-min-microvolt = <1000000>; 315d1de41d7SSimon Glass regulator-max-microvolt = <1000000>; 316d1de41d7SSimon Glass regulator-always-on; 317d1de41d7SSimon Glass op_mode = <3>; 318d1de41d7SSimon Glass }; 319d1de41d7SSimon Glass 320d1de41d7SSimon Glass ldo16_reg: LDO16 { 321d1de41d7SSimon Glass regulator-name = "P1.8V_LDO_OUT16"; 322d1de41d7SSimon Glass regulator-min-microvolt = <1800000>; 323d1de41d7SSimon Glass regulator-max-microvolt = <1800000>; 324d1de41d7SSimon Glass regulator-always-on; 325d1de41d7SSimon Glass op_mode = <3>; 326d1de41d7SSimon Glass }; 327d1de41d7SSimon Glass 328d1de41d7SSimon Glass ldo17_reg: LDO17 { 329d1de41d7SSimon Glass regulator-name = "P1.2V_LDO_OUT17"; 330d1de41d7SSimon Glass regulator-min-microvolt = <1200000>; 331d1de41d7SSimon Glass regulator-max-microvolt = <1200000>; 332d1de41d7SSimon Glass regulator-always-on; 333d1de41d7SSimon Glass op_mode = <0>; 334d1de41d7SSimon Glass }; 335d1de41d7SSimon Glass 336d1de41d7SSimon Glass ldo25_reg: LDO25 { 337d1de41d7SSimon Glass regulator-name = "vdd_bridge"; 338d1de41d7SSimon Glass regulator-min-microvolt = <1200000>; 339d1de41d7SSimon Glass regulator-max-microvolt = <1200000>; 340d1de41d7SSimon Glass regulator-always-on; 341d1de41d7SSimon Glass op_mode = <1>; 342d1de41d7SSimon Glass }; 343d1de41d7SSimon Glass 344d1de41d7SSimon Glass buck1_reg: BUCK1 { 345d1de41d7SSimon Glass regulator-name = "vdd_mif"; 346d1de41d7SSimon Glass regulator-min-microvolt = <950000>; 347d1de41d7SSimon Glass regulator-max-microvolt = <1300000>; 348d1de41d7SSimon Glass regulator-always-on; 349d1de41d7SSimon Glass regulator-boot-on; 350d1de41d7SSimon Glass op_mode = <3>; 351d1de41d7SSimon Glass }; 352d1de41d7SSimon Glass 353d1de41d7SSimon Glass buck2_reg: BUCK2 { 354d1de41d7SSimon Glass regulator-name = "vdd_arm"; 355d1de41d7SSimon Glass regulator-min-microvolt = <850000>; 356d1de41d7SSimon Glass regulator-max-microvolt = <1350000>; 357d1de41d7SSimon Glass regulator-always-on; 358d1de41d7SSimon Glass regulator-boot-on; 359d1de41d7SSimon Glass op_mode = <3>; 360d1de41d7SSimon Glass }; 361d1de41d7SSimon Glass 362d1de41d7SSimon Glass buck3_reg: BUCK3 { 363d1de41d7SSimon Glass regulator-name = "vdd_int"; 364d1de41d7SSimon Glass regulator-min-microvolt = <900000>; 365d1de41d7SSimon Glass regulator-max-microvolt = <1200000>; 366d1de41d7SSimon Glass regulator-always-on; 367d1de41d7SSimon Glass regulator-boot-on; 368d1de41d7SSimon Glass op_mode = <3>; 369d1de41d7SSimon Glass }; 370d1de41d7SSimon Glass 371d1de41d7SSimon Glass buck4_reg: BUCK4 { 372d1de41d7SSimon Glass regulator-name = "vdd_g3d"; 373d1de41d7SSimon Glass regulator-min-microvolt = <850000>; 374d1de41d7SSimon Glass regulator-max-microvolt = <1300000>; 375d1de41d7SSimon Glass regulator-boot-on; 376d1de41d7SSimon Glass op_mode = <3>; 377d1de41d7SSimon Glass }; 378d1de41d7SSimon Glass 379d1de41d7SSimon Glass buck5_reg: BUCK5 { 380d1de41d7SSimon Glass regulator-name = "P1.8V_BUCK_OUT5"; 381d1de41d7SSimon Glass regulator-min-microvolt = <1800000>; 382d1de41d7SSimon Glass regulator-max-microvolt = <1800000>; 383d1de41d7SSimon Glass regulator-always-on; 384d1de41d7SSimon Glass regulator-boot-on; 385d1de41d7SSimon Glass op_mode = <1>; 386d1de41d7SSimon Glass }; 387d1de41d7SSimon Glass 388d1de41d7SSimon Glass buck6_reg: BUCK6 { 389d1de41d7SSimon Glass regulator-name = "P1.2V_BUCK_OUT6"; 390d1de41d7SSimon Glass regulator-min-microvolt = <2050000>; 391d1de41d7SSimon Glass regulator-max-microvolt = <2050000>; 392d1de41d7SSimon Glass regulator-always-on; 393d1de41d7SSimon Glass regulator-boot-on; 394d1de41d7SSimon Glass op_mode = <0>; 395d1de41d7SSimon Glass }; 396d1de41d7SSimon Glass 397d1de41d7SSimon Glass buck9_reg: BUCK9 { 398d1de41d7SSimon Glass regulator-name = "vdd_ummc"; 399d1de41d7SSimon Glass regulator-min-microvolt = <950000>; 400d1de41d7SSimon Glass regulator-max-microvolt = <3000000>; 401d1de41d7SSimon Glass regulator-always-on; 402d1de41d7SSimon Glass regulator-boot-on; 403d1de41d7SSimon Glass op_mode = <3>; 404d1de41d7SSimon Glass }; 405d1de41d7SSimon Glass }; 406d1de41d7SSimon Glass }; 407d1de41d7SSimon Glass}; 408d1de41d7SSimon Glass 409*f948f5deSSimon Glass&dp { 410*f948f5deSSimon Glass status = "okay"; 411*f948f5deSSimon Glass samsung,color-space = <0>; 412*f948f5deSSimon Glass samsung,dynamic-range = <0>; 413*f948f5deSSimon Glass samsung,ycbcr-coeff = <0>; 414*f948f5deSSimon Glass samsung,color-depth = <1>; 415*f948f5deSSimon Glass samsung,link-rate = <0x0a>; 416*f948f5deSSimon Glass samsung,lane-count = <1>; 417*f948f5deSSimon Glass samsung,hpd-gpio = <&gpc3 0 GPIO_ACTIVE_HIGH>; 418*f948f5deSSimon Glass 419*f948f5deSSimon Glass ports { 420*f948f5deSSimon Glass port@0 { 421*f948f5deSSimon Glass dp_out: endpoint { 422*f948f5deSSimon Glass remote-endpoint = <&bridge_in>; 423*f948f5deSSimon Glass }; 424*f948f5deSSimon Glass }; 425*f948f5deSSimon Glass }; 426*f948f5deSSimon Glass}; 427*f948f5deSSimon Glass 428d1de41d7SSimon Glass&i2c_1 { 429d1de41d7SSimon Glass status = "okay"; 430d1de41d7SSimon Glass samsung,i2c-sda-delay = <100>; 431d1de41d7SSimon Glass samsung,i2c-max-bus-freq = <378000>; 432d1de41d7SSimon Glass}; 433d1de41d7SSimon Glass 434d1de41d7SSimon Glass&i2c_2 { 435d1de41d7SSimon Glass status = "okay"; 436d1de41d7SSimon Glass samsung,i2c-sda-delay = <100>; 437d1de41d7SSimon Glass samsung,i2c-max-bus-freq = <66000>; 438d1de41d7SSimon Glass}; 439d1de41d7SSimon Glass 440d1de41d7SSimon Glass&i2c_3 { 441d1de41d7SSimon Glass status = "okay"; 442d1de41d7SSimon Glass samsung,i2c-sda-delay = <100>; 443d1de41d7SSimon Glass samsung,i2c-max-bus-freq = <66000>; 444d1de41d7SSimon Glass}; 445d1de41d7SSimon Glass 446d1de41d7SSimon Glass&i2c_4 { 447d1de41d7SSimon Glass status = "okay"; 448d1de41d7SSimon Glass samsung,i2c-sda-delay = <100>; 449d1de41d7SSimon Glass samsung,i2c-max-bus-freq = <66000>; 450d1de41d7SSimon Glass clock-frequency = <66000>; 451d1de41d7SSimon Glass 452d1de41d7SSimon Glass cros_ec: embedded-controller { 453d1de41d7SSimon Glass compatible = "google,cros-ec-i2c"; 454d1de41d7SSimon Glass reg = <0x1e>; 455d1de41d7SSimon Glass interrupts = <6 IRQ_TYPE_NONE>; 456d1de41d7SSimon Glass interrupt-parent = <&gpx1>; 457d1de41d7SSimon Glass wakeup-source; 458d1de41d7SSimon Glass u-boot,i2c-offset-len = <0>; 459d1de41d7SSimon Glass ec-interrupt = <&gpx1 6 GPIO_ACTIVE_LOW>; 460d1de41d7SSimon Glass cros_ec_ldo_tunnel: cros-ec-ldo-tunnel { 461d1de41d7SSimon Glass compatible = "google,cros-ec-ldo-tunnel"; 462d1de41d7SSimon Glass #address-cells = <1>; 463d1de41d7SSimon Glass #size-cells = <0>; 464d1de41d7SSimon Glass power-regulator { 465d1de41d7SSimon Glass compatible = "ti,tps65090"; 466d1de41d7SSimon Glass reg = <0x48>; 467d1de41d7SSimon Glass 468d1de41d7SSimon Glass regulators { 469d1de41d7SSimon Glass dcdc1 { 470d1de41d7SSimon Glass ti,enable-ext-control; 471d1de41d7SSimon Glass }; 472d1de41d7SSimon Glass dcdc2 { 473d1de41d7SSimon Glass ti,enable-ext-control; 474d1de41d7SSimon Glass }; 475d1de41d7SSimon Glass dcdc3 { 476d1de41d7SSimon Glass ti,enable-ext-control; 477d1de41d7SSimon Glass }; 478d1de41d7SSimon Glass fet1: fet1 { 479d1de41d7SSimon Glass regulator-name = "vcd_led"; 480d1de41d7SSimon Glass ti,overcurrent-wait = <3>; 481d1de41d7SSimon Glass }; 482d1de41d7SSimon Glass tps65090_fet2: fet2 { 483d1de41d7SSimon Glass regulator-name = "video_mid"; 484d1de41d7SSimon Glass regulator-always-on; 485d1de41d7SSimon Glass ti,overcurrent-wait = <3>; 486d1de41d7SSimon Glass }; 487d1de41d7SSimon Glass fet3 { 488d1de41d7SSimon Glass regulator-name = "wwan_r"; 489d1de41d7SSimon Glass regulator-always-on; 490d1de41d7SSimon Glass ti,overcurrent-wait = <3>; 491d1de41d7SSimon Glass }; 492d1de41d7SSimon Glass fet4 { 493d1de41d7SSimon Glass regulator-name = "sdcard"; 494d1de41d7SSimon Glass ti,overcurrent-wait = <3>; 495d1de41d7SSimon Glass }; 496d1de41d7SSimon Glass fet5 { 497d1de41d7SSimon Glass regulator-name = "camout"; 498d1de41d7SSimon Glass regulator-always-on; 499d1de41d7SSimon Glass ti,overcurrent-wait = <3>; 500d1de41d7SSimon Glass }; 501d1de41d7SSimon Glass fet6: fet6 { 502d1de41d7SSimon Glass regulator-name = "lcd_vdd"; 503d1de41d7SSimon Glass ti,overcurrent-wait = <3>; 504d1de41d7SSimon Glass }; 505d1de41d7SSimon Glass tps65090_fet7: fet7 { 506d1de41d7SSimon Glass regulator-name = "video_mid_1a"; 507d1de41d7SSimon Glass regulator-always-on; 508d1de41d7SSimon Glass ti,overcurrent-wait = <3>; 509d1de41d7SSimon Glass }; 510d1de41d7SSimon Glass ldo1 { 511d1de41d7SSimon Glass }; 512d1de41d7SSimon Glass ldo2 { 513d1de41d7SSimon Glass }; 514d1de41d7SSimon Glass }; 515d1de41d7SSimon Glass }; 516d1de41d7SSimon Glass }; 517d1de41d7SSimon Glass }; 518d1de41d7SSimon Glass}; 519d1de41d7SSimon Glass 520d1de41d7SSimon Glass&i2c_5 { 521d1de41d7SSimon Glass status = "okay"; 522d1de41d7SSimon Glass samsung,i2c-sda-delay = <100>; 523d1de41d7SSimon Glass samsung,i2c-max-bus-freq = <66000>; 524d1de41d7SSimon Glass}; 525d1de41d7SSimon Glass 526d1de41d7SSimon Glass&i2c_7 { 527d1de41d7SSimon Glass status = "okay"; 528d1de41d7SSimon Glass samsung,i2c-sda-delay = <100>; 529d1de41d7SSimon Glass samsung,i2c-max-bus-freq = <66000>; 530d1de41d7SSimon Glass 531d1de41d7SSimon Glass ps8622-bridge@8 { 532d1de41d7SSimon Glass compatible = "parade,ps8622"; 533d1de41d7SSimon Glass reg = <0x8>; 534d1de41d7SSimon Glass sleep-gpios = <&gpc3 6 GPIO_ACTIVE_LOW>; 535d1de41d7SSimon Glass reset-gpios = <&gpc3 1 GPIO_ACTIVE_LOW>; 536d1de41d7SSimon Glass hotplug-gpios = <&gpc3 0 GPIO_ACTIVE_HIGH>; 537d1de41d7SSimon Glass power-supply = <&ldo6_reg>; 538d1de41d7SSimon Glass parade,regs = /bits/ 8 < 539d1de41d7SSimon Glass 0x02 0xa1 0x01 /* HPD low */ 540d1de41d7SSimon Glass /* 541d1de41d7SSimon Glass * SW setting: [1:0] SW output 1.2V voltage is 542d1de41d7SSimon Glass * lower to 96% 543d1de41d7SSimon Glass */ 544d1de41d7SSimon Glass 0x04 0x14 0x01 545d1de41d7SSimon Glass /* RCO SS setting: [5:4] = b01 0.5%, b10 1%, b11 1.5% */ 546d1de41d7SSimon Glass 0x04 0xe3 0x20 547d1de41d7SSimon Glass 0x04 0xe2 0x80 /* [7] RCO SS enable */ 548d1de41d7SSimon Glass /* 549d1de41d7SSimon Glass * RPHY Setting: [3:2] CDR tune wait cycle before 550d1de41d7SSimon Glass * measure for fine tune b00: 1us, 551d1de41d7SSimon Glass * 01: 0.5us, 10:2us, 11:4us 552d1de41d7SSimon Glass */ 553d1de41d7SSimon Glass 0x04 0x8a 0x0c 554d1de41d7SSimon Glass 0x04 0x89 0x08 /* [3] RFD always on */ 555d1de41d7SSimon Glass /* 556d1de41d7SSimon Glass * CTN lock in/out: 20000ppm/80000ppm. Lock out 2 times 557d1de41d7SSimon Glass */ 558d1de41d7SSimon Glass 0x04 0x71 0x2d 559d1de41d7SSimon Glass /* 2.7G CDR settings */ 560d1de41d7SSimon Glass 0x04 0x7d 0x07 /* NOF=40LSB for HBR CDR setting */ 561d1de41d7SSimon Glass 0x04 0x7b 0x00 /* [1:0] Fmin=+4bands */ 562d1de41d7SSimon Glass 0x04 0x7a 0xfd /* [7:5] DCO_FTRNG=+-40% */ 563d1de41d7SSimon Glass /* 564d1de41d7SSimon Glass * 1.62G CDR settings: 565d1de41d7SSimon Glass * [5:2]NOF=64LSB [1:0]DCO scale is 2/5 566d1de41d7SSimon Glass */ 567d1de41d7SSimon Glass 0x04 0xc0 0x12 568d1de41d7SSimon Glass 0x04 0xc1 0x92 /* Gitune=-37% */ 569d1de41d7SSimon Glass 0x04 0xc2 0x1c /* Fbstep=100% */ 570d1de41d7SSimon Glass 0x04 0x32 0x80 /* [7] LOS signal disable */ 571d1de41d7SSimon Glass /* RPIO Setting */ 572d1de41d7SSimon Glass /* [7:4] LVDS driver bias current 75% (250mV swing) */ 573d1de41d7SSimon Glass 0x04 0x00 0xb0 574d1de41d7SSimon Glass /* [7:6] Right-bar GPIO output strength is 8mA */ 575d1de41d7SSimon Glass 0x04 0x15 0x40 576d1de41d7SSimon Glass /* EQ Training State Machine Setting */ 577d1de41d7SSimon Glass 0x04 0x54 0x10 /* RCO calibration start */ 578d1de41d7SSimon Glass /* [4:0] MAX_LANE_COUNT set to one lane */ 579d1de41d7SSimon Glass 0x01 0x02 0x81 580d1de41d7SSimon Glass /* [4:0] LANE_COUNT_SET set to one lane */ 581d1de41d7SSimon Glass 0x01 0x21 0x81 582d1de41d7SSimon Glass 0x00 0x52 0x20 583d1de41d7SSimon Glass 0x00 0xf1 0x03 /* HPD CP toggle enable */ 584d1de41d7SSimon Glass 0x00 0x62 0x41 585d1de41d7SSimon Glass /* Counter number add 1ms counter delay */ 586d1de41d7SSimon Glass 0x00 0xf6 0x01 587d1de41d7SSimon Glass /* 588d1de41d7SSimon Glass * [6]PWM function control by DPCD0040f[7], default 589d1de41d7SSimon Glass * is PWM block always works 590d1de41d7SSimon Glass */ 591d1de41d7SSimon Glass 0x00 0x77 0x06 592d1de41d7SSimon Glass 0x00 0x4c 0x04 593d1de41d7SSimon Glass /* 594d1de41d7SSimon Glass * 04h Adjust VTotal tolerance to fix the 30Hz no- 595d1de41d7SSimon Glass * display issue 596d1de41d7SSimon Glass * DPCD00400='h00 Parade OUI = 'h001cf8 597d1de41d7SSimon Glass */ 598d1de41d7SSimon Glass 0x01 0xc0 0x00 599d1de41d7SSimon Glass 0x01 0xc1 0x1c /* DPCD00401='h1c */ 600d1de41d7SSimon Glass 0x01 0xc2 0xf8 /* DPCD00402='hf8 */ 601d1de41d7SSimon Glass /* DPCD403~408 = ASCII code D2SLV5='h4432534c5635 */ 602d1de41d7SSimon Glass 0x01 0xc3 0x44 603d1de41d7SSimon Glass 0x01 0xc4 0x32 /* DPCD404 */ 604d1de41d7SSimon Glass 0x01 0xc5 0x53 /* DPCD405 */ 605d1de41d7SSimon Glass 0x01 0xc6 0x4c /* DPCD406 */ 606d1de41d7SSimon Glass 0x01 0xc7 0x56 /* DPCD407 */ 607d1de41d7SSimon Glass 0x01 0xc8 0x35 /* DPCD408 */ 608d1de41d7SSimon Glass /* DPCD40A Initial Code major revision '01' */ 609d1de41d7SSimon Glass 0x01 0xca 0x01 610d1de41d7SSimon Glass /* DPCD40B Initial Code minor revision '05' */ 611d1de41d7SSimon Glass 0x01 0xcb 0x05 612d1de41d7SSimon Glass 0x01 0xa5 0xa0 /* DPCD720, Select internal PWM */ 613d1de41d7SSimon Glass /* 614d1de41d7SSimon Glass * 0xff for 100% PWM of brightness, 0h for 0% brightness 615d1de41d7SSimon Glass */ 616d1de41d7SSimon Glass 0x01 0xa7 0x00 617d1de41d7SSimon Glass /* 618d1de41d7SSimon Glass * Set LVDS output as 6bit-VESA mapping, single LVDS 619d1de41d7SSimon Glass * channel 620d1de41d7SSimon Glass */ 621d1de41d7SSimon Glass 0x01 0xcc 0x13 622d1de41d7SSimon Glass 0x02 0xb1 0x20 /* Enable SSC set by register */ 623d1de41d7SSimon Glass /* Set SSC enabled and +/-1% central spreading */ 624d1de41d7SSimon Glass 0x04 0x10 0x16 625d1de41d7SSimon Glass 0x04 0x59 0x60 /* MPU Clock source: LC => RCO */ 626d1de41d7SSimon Glass 0x04 0x54 0x14 /* LC -> RCO */ 627d1de41d7SSimon Glass 0x02 0xa1 0x91>; /* HPD high */ 628*f948f5deSSimon Glass ports { 629*f948f5deSSimon Glass port@0 { 630*f948f5deSSimon Glass bridge_out: endpoint { 631*f948f5deSSimon Glass remote-endpoint = <&panel_in>; 632*f948f5deSSimon Glass }; 633*f948f5deSSimon Glass }; 634*f948f5deSSimon Glass 635*f948f5deSSimon Glass port@1 { 636*f948f5deSSimon Glass bridge_in: endpoint { 637*f948f5deSSimon Glass remote-endpoint = <&dp_out>; 638*f948f5deSSimon Glass }; 639*f948f5deSSimon Glass }; 640*f948f5deSSimon Glass }; 641d1de41d7SSimon Glass }; 642d1de41d7SSimon Glass 643d1de41d7SSimon Glass soundcodec@20 { 644d1de41d7SSimon Glass reg = <0x20>; 645d1de41d7SSimon Glass compatible = "maxim,max98088-codec"; 646d1de41d7SSimon Glass }; 647d1de41d7SSimon Glass}; 648d1de41d7SSimon Glass 649d1de41d7SSimon Glass#include "cros-ec-keyboard.dtsi" 650