1*4882a593Smuzhiyun// SPDX-License-Identifier: (GPL-2.0+ OR MIT) 2*4882a593Smuzhiyun/* 3*4882a593Smuzhiyun * Google Veyron Mickey Rev 0 board device tree source 4*4882a593Smuzhiyun * 5*4882a593Smuzhiyun * Copyright 2015 Google, Inc 6*4882a593Smuzhiyun */ 7*4882a593Smuzhiyun 8*4882a593Smuzhiyun/dts-v1/; 9*4882a593Smuzhiyun#include "rk3288-veyron.dtsi" 10*4882a593Smuzhiyun#include "rk3288-veyron-broadcom-bluetooth.dtsi" 11*4882a593Smuzhiyun 12*4882a593Smuzhiyun/ { 13*4882a593Smuzhiyun model = "Google Mickey"; 14*4882a593Smuzhiyun compatible = "google,veyron-mickey-rev8", "google,veyron-mickey-rev7", 15*4882a593Smuzhiyun "google,veyron-mickey-rev6", "google,veyron-mickey-rev5", 16*4882a593Smuzhiyun "google,veyron-mickey-rev4", "google,veyron-mickey-rev3", 17*4882a593Smuzhiyun "google,veyron-mickey-rev2", "google,veyron-mickey-rev1", 18*4882a593Smuzhiyun "google,veyron-mickey-rev0", "google,veyron-mickey", 19*4882a593Smuzhiyun "google,veyron", "rockchip,rk3288"; 20*4882a593Smuzhiyun 21*4882a593Smuzhiyun vcc_5v: vcc-5v { 22*4882a593Smuzhiyun vin-supply = <&vcc33_sys>; 23*4882a593Smuzhiyun }; 24*4882a593Smuzhiyun 25*4882a593Smuzhiyun vcc33_io: vcc33_io { 26*4882a593Smuzhiyun compatible = "regulator-fixed"; 27*4882a593Smuzhiyun regulator-name = "vcc33_io"; 28*4882a593Smuzhiyun regulator-always-on; 29*4882a593Smuzhiyun regulator-boot-on; 30*4882a593Smuzhiyun vin-supply = <&vcc33_sys>; 31*4882a593Smuzhiyun }; 32*4882a593Smuzhiyun 33*4882a593Smuzhiyun sound { 34*4882a593Smuzhiyun compatible = "rockchip,rockchip-audio-max98090"; 35*4882a593Smuzhiyun rockchip,model = "VEYRON-HDMI"; 36*4882a593Smuzhiyun rockchip,hdmi-codec = <&hdmi>; 37*4882a593Smuzhiyun rockchip,i2s-controller = <&i2s>; 38*4882a593Smuzhiyun }; 39*4882a593Smuzhiyun}; 40*4882a593Smuzhiyun 41*4882a593Smuzhiyun&cpu_thermal { 42*4882a593Smuzhiyun /delete-node/ trips; 43*4882a593Smuzhiyun /delete-node/ cooling-maps; 44*4882a593Smuzhiyun 45*4882a593Smuzhiyun trips { 46*4882a593Smuzhiyun cpu_alert_almost_warm: cpu_alert_almost_warm { 47*4882a593Smuzhiyun temperature = <63000>; /* millicelsius */ 48*4882a593Smuzhiyun hysteresis = <2000>; /* millicelsius */ 49*4882a593Smuzhiyun type = "passive"; 50*4882a593Smuzhiyun }; 51*4882a593Smuzhiyun cpu_alert_warm: cpu_alert_warm { 52*4882a593Smuzhiyun temperature = <65000>; /* millicelsius */ 53*4882a593Smuzhiyun hysteresis = <2000>; /* millicelsius */ 54*4882a593Smuzhiyun type = "passive"; 55*4882a593Smuzhiyun }; 56*4882a593Smuzhiyun cpu_alert_almost_hot: cpu_alert_almost_hot { 57*4882a593Smuzhiyun temperature = <80000>; /* millicelsius */ 58*4882a593Smuzhiyun hysteresis = <2000>; /* millicelsius */ 59*4882a593Smuzhiyun type = "passive"; 60*4882a593Smuzhiyun }; 61*4882a593Smuzhiyun cpu_alert_hot: cpu_alert_hot { 62*4882a593Smuzhiyun temperature = <82000>; /* millicelsius */ 63*4882a593Smuzhiyun hysteresis = <2000>; /* millicelsius */ 64*4882a593Smuzhiyun type = "passive"; 65*4882a593Smuzhiyun }; 66*4882a593Smuzhiyun cpu_alert_hotter: cpu_alert_hotter { 67*4882a593Smuzhiyun temperature = <84000>; /* millicelsius */ 68*4882a593Smuzhiyun hysteresis = <2000>; /* millicelsius */ 69*4882a593Smuzhiyun type = "passive"; 70*4882a593Smuzhiyun }; 71*4882a593Smuzhiyun cpu_alert_very_hot: cpu_alert_very_hot { 72*4882a593Smuzhiyun temperature = <85000>; /* millicelsius */ 73*4882a593Smuzhiyun hysteresis = <2000>; /* millicelsius */ 74*4882a593Smuzhiyun type = "passive"; 75*4882a593Smuzhiyun }; 76*4882a593Smuzhiyun cpu_crit: cpu_crit { 77*4882a593Smuzhiyun temperature = <90000>; /* millicelsius */ 78*4882a593Smuzhiyun hysteresis = <2000>; /* millicelsius */ 79*4882a593Smuzhiyun type = "critical"; 80*4882a593Smuzhiyun }; 81*4882a593Smuzhiyun }; 82*4882a593Smuzhiyun 83*4882a593Smuzhiyun cooling-maps { 84*4882a593Smuzhiyun /* 85*4882a593Smuzhiyun * After 1st level, throttle the CPU down to as low as 1.4 GHz 86*4882a593Smuzhiyun * and don't let the GPU go faster than 400 MHz. 87*4882a593Smuzhiyun */ 88*4882a593Smuzhiyun cpu_warm_limit_cpu { 89*4882a593Smuzhiyun trip = <&cpu_alert_warm>; 90*4882a593Smuzhiyun cooling-device = <&cpu0 THERMAL_NO_LIMIT 4>, 91*4882a593Smuzhiyun <&cpu1 THERMAL_NO_LIMIT 4>, 92*4882a593Smuzhiyun <&cpu2 THERMAL_NO_LIMIT 4>, 93*4882a593Smuzhiyun <&cpu3 THERMAL_NO_LIMIT 4>; 94*4882a593Smuzhiyun }; 95*4882a593Smuzhiyun cpu_warm_limit_gpu { 96*4882a593Smuzhiyun trip = <&cpu_alert_warm>; 97*4882a593Smuzhiyun cooling-device = <&gpu 1 1>; 98*4882a593Smuzhiyun }; 99*4882a593Smuzhiyun 100*4882a593Smuzhiyun /* 101*4882a593Smuzhiyun * Add some discrete steps to help throttling system deal 102*4882a593Smuzhiyun * with the fact that there are two passive cooling devices: 103*4882a593Smuzhiyun * the CPU and the GPU. 104*4882a593Smuzhiyun * 105*4882a593Smuzhiyun * - 1.2 GHz - 1.0 GHz (almost hot) 106*4882a593Smuzhiyun * - 800 MHz (hot) 107*4882a593Smuzhiyun * - 800 MHz - 696 MHz (hotter) 108*4882a593Smuzhiyun * - 696 MHz - min (very hot) 109*4882a593Smuzhiyun * 110*4882a593Smuzhiyun * Note: 111*4882a593Smuzhiyun * - 800 MHz appears to be a "sweet spot" for me. I can run 112*4882a593Smuzhiyun * some pretty serious workload here and be happy. 113*4882a593Smuzhiyun * - After 696 MHz we stop lowering voltage, so throttling 114*4882a593Smuzhiyun * past there is less effective. 115*4882a593Smuzhiyun */ 116*4882a593Smuzhiyun cpu_almost_hot_limit_cpu { 117*4882a593Smuzhiyun trip = <&cpu_alert_almost_hot>; 118*4882a593Smuzhiyun cooling-device = <&cpu0 5 6>, <&cpu1 5 6>, <&cpu2 5 6>, 119*4882a593Smuzhiyun <&cpu3 5 6>; 120*4882a593Smuzhiyun }; 121*4882a593Smuzhiyun cpu_hot_limit_cpu { 122*4882a593Smuzhiyun trip = <&cpu_alert_hot>; 123*4882a593Smuzhiyun cooling-device = <&cpu0 7 7>, <&cpu1 7 7>, <&cpu2 7 7>, 124*4882a593Smuzhiyun <&cpu3 7 7>; 125*4882a593Smuzhiyun }; 126*4882a593Smuzhiyun cpu_hotter_limit_cpu { 127*4882a593Smuzhiyun trip = <&cpu_alert_hotter>; 128*4882a593Smuzhiyun cooling-device = <&cpu0 7 8>, <&cpu1 7 8>, <&cpu2 7 8>, 129*4882a593Smuzhiyun <&cpu3 7 8>; 130*4882a593Smuzhiyun }; 131*4882a593Smuzhiyun cpu_very_hot_limit_cpu { 132*4882a593Smuzhiyun trip = <&cpu_alert_very_hot>; 133*4882a593Smuzhiyun cooling-device = <&cpu0 8 THERMAL_NO_LIMIT>, 134*4882a593Smuzhiyun <&cpu1 8 THERMAL_NO_LIMIT>, 135*4882a593Smuzhiyun <&cpu2 8 THERMAL_NO_LIMIT>, 136*4882a593Smuzhiyun <&cpu3 8 THERMAL_NO_LIMIT>; 137*4882a593Smuzhiyun }; 138*4882a593Smuzhiyun 139*4882a593Smuzhiyun /* At very hot, don't let GPU go over 300 MHz */ 140*4882a593Smuzhiyun cpu_very_hot_limit_gpu { 141*4882a593Smuzhiyun trip = <&cpu_alert_very_hot>; 142*4882a593Smuzhiyun cooling-device = <&gpu 2 2>; 143*4882a593Smuzhiyun }; 144*4882a593Smuzhiyun }; 145*4882a593Smuzhiyun}; 146*4882a593Smuzhiyun 147*4882a593Smuzhiyun&gpu_thermal { 148*4882a593Smuzhiyun /delete-node/ trips; 149*4882a593Smuzhiyun /delete-node/ cooling-maps; 150*4882a593Smuzhiyun 151*4882a593Smuzhiyun trips { 152*4882a593Smuzhiyun gpu_alert_warmish: gpu_alert_warmish { 153*4882a593Smuzhiyun temperature = <60000>; /* millicelsius */ 154*4882a593Smuzhiyun hysteresis = <2000>; /* millicelsius */ 155*4882a593Smuzhiyun type = "passive"; 156*4882a593Smuzhiyun }; 157*4882a593Smuzhiyun gpu_alert_warm: gpu_alert_warm { 158*4882a593Smuzhiyun temperature = <65000>; /* millicelsius */ 159*4882a593Smuzhiyun hysteresis = <2000>; /* millicelsius */ 160*4882a593Smuzhiyun type = "passive"; 161*4882a593Smuzhiyun }; 162*4882a593Smuzhiyun gpu_alert_hotter: gpu_alert_hotter { 163*4882a593Smuzhiyun temperature = <84000>; /* millicelsius */ 164*4882a593Smuzhiyun hysteresis = <2000>; /* millicelsius */ 165*4882a593Smuzhiyun type = "passive"; 166*4882a593Smuzhiyun }; 167*4882a593Smuzhiyun gpu_alert_very_very_hot: gpu_alert_very_very_hot { 168*4882a593Smuzhiyun temperature = <86000>; /* millicelsius */ 169*4882a593Smuzhiyun hysteresis = <2000>; /* millicelsius */ 170*4882a593Smuzhiyun type = "passive"; 171*4882a593Smuzhiyun }; 172*4882a593Smuzhiyun gpu_crit: gpu_crit { 173*4882a593Smuzhiyun temperature = <90000>; /* millicelsius */ 174*4882a593Smuzhiyun hysteresis = <2000>; /* millicelsius */ 175*4882a593Smuzhiyun type = "critical"; 176*4882a593Smuzhiyun }; 177*4882a593Smuzhiyun }; 178*4882a593Smuzhiyun 179*4882a593Smuzhiyun cooling-maps { 180*4882a593Smuzhiyun /* After 1st level throttle the GPU down to as low as 400 MHz */ 181*4882a593Smuzhiyun gpu_warmish_limit_gpu { 182*4882a593Smuzhiyun trip = <&gpu_alert_warmish>; 183*4882a593Smuzhiyun cooling-device = <&gpu THERMAL_NO_LIMIT 1>; 184*4882a593Smuzhiyun }; 185*4882a593Smuzhiyun 186*4882a593Smuzhiyun /* 187*4882a593Smuzhiyun * Slightly after we throttle the GPU, we'll also make sure that 188*4882a593Smuzhiyun * the CPU can't go faster than 1.4 GHz. Note that we won't 189*4882a593Smuzhiyun * throttle the CPU lower than 1.4 GHz due to GPU heat--we'll 190*4882a593Smuzhiyun * let the CPU do the rest itself. 191*4882a593Smuzhiyun */ 192*4882a593Smuzhiyun gpu_warm_limit_cpu { 193*4882a593Smuzhiyun trip = <&gpu_alert_warm>; 194*4882a593Smuzhiyun cooling-device = <&cpu0 4 4>, 195*4882a593Smuzhiyun <&cpu1 4 4>, 196*4882a593Smuzhiyun <&cpu2 4 4>, 197*4882a593Smuzhiyun <&cpu3 4 4>; 198*4882a593Smuzhiyun }; 199*4882a593Smuzhiyun 200*4882a593Smuzhiyun /* When hot, GPU goes down to 300 MHz */ 201*4882a593Smuzhiyun gpu_hotter_limit_gpu { 202*4882a593Smuzhiyun trip = <&gpu_alert_hotter>; 203*4882a593Smuzhiyun cooling-device = <&gpu 2 2>; 204*4882a593Smuzhiyun }; 205*4882a593Smuzhiyun 206*4882a593Smuzhiyun /* When really hot, don't let GPU go _above_ 300 MHz */ 207*4882a593Smuzhiyun gpu_very_very_hot_limit_gpu { 208*4882a593Smuzhiyun trip = <&gpu_alert_very_very_hot>; 209*4882a593Smuzhiyun cooling-device = <&gpu 2 THERMAL_NO_LIMIT>; 210*4882a593Smuzhiyun }; 211*4882a593Smuzhiyun }; 212*4882a593Smuzhiyun}; 213*4882a593Smuzhiyun 214*4882a593Smuzhiyun&i2c2 { 215*4882a593Smuzhiyun status = "disabled"; 216*4882a593Smuzhiyun}; 217*4882a593Smuzhiyun 218*4882a593Smuzhiyun&i2c4 { 219*4882a593Smuzhiyun status = "disabled"; 220*4882a593Smuzhiyun}; 221*4882a593Smuzhiyun 222*4882a593Smuzhiyun&i2s { 223*4882a593Smuzhiyun status = "okay"; 224*4882a593Smuzhiyun}; 225*4882a593Smuzhiyun 226*4882a593Smuzhiyun&rk808 { 227*4882a593Smuzhiyun pinctrl-names = "default"; 228*4882a593Smuzhiyun pinctrl-0 = <&pmic_int_l &dvs_1 &dvs_2>; 229*4882a593Smuzhiyun dvs-gpios = <&gpio7 RK_PB4 GPIO_ACTIVE_HIGH>, 230*4882a593Smuzhiyun <&gpio7 RK_PB7 GPIO_ACTIVE_HIGH>; 231*4882a593Smuzhiyun 232*4882a593Smuzhiyun /delete-property/ vcc6-supply; 233*4882a593Smuzhiyun /delete-property/ vcc12-supply; 234*4882a593Smuzhiyun 235*4882a593Smuzhiyun vcc11-supply = <&vcc33_sys>; 236*4882a593Smuzhiyun 237*4882a593Smuzhiyun regulators { 238*4882a593Smuzhiyun /* vcc33_io is sourced directly from vcc33_sys */ 239*4882a593Smuzhiyun /delete-node/ LDO_REG1; 240*4882a593Smuzhiyun /delete-node/ LDO_REG7; 241*4882a593Smuzhiyun 242*4882a593Smuzhiyun /* This is not a pwren anymore, but the real power supply */ 243*4882a593Smuzhiyun vdd10_lcd: LDO_REG7 { 244*4882a593Smuzhiyun regulator-always-on; 245*4882a593Smuzhiyun regulator-boot-on; 246*4882a593Smuzhiyun regulator-min-microvolt = <1000000>; 247*4882a593Smuzhiyun regulator-max-microvolt = <1000000>; 248*4882a593Smuzhiyun regulator-name = "vdd10_lcd"; 249*4882a593Smuzhiyun regulator-suspend-mem-disabled; 250*4882a593Smuzhiyun }; 251*4882a593Smuzhiyun 252*4882a593Smuzhiyun vcc18_lcd: LDO_REG8 { 253*4882a593Smuzhiyun regulator-always-on; 254*4882a593Smuzhiyun regulator-boot-on; 255*4882a593Smuzhiyun regulator-min-microvolt = <1800000>; 256*4882a593Smuzhiyun regulator-max-microvolt = <1800000>; 257*4882a593Smuzhiyun regulator-name = "vcc18_lcd"; 258*4882a593Smuzhiyun regulator-suspend-mem-disabled; 259*4882a593Smuzhiyun }; 260*4882a593Smuzhiyun }; 261*4882a593Smuzhiyun}; 262*4882a593Smuzhiyun 263*4882a593Smuzhiyun&gpio0 { 264*4882a593Smuzhiyun gpio-line-names = "PMIC_SLEEP_AP", 265*4882a593Smuzhiyun "", 266*4882a593Smuzhiyun "", 267*4882a593Smuzhiyun "", 268*4882a593Smuzhiyun "PMIC_INT_L", 269*4882a593Smuzhiyun "POWER_BUTTON_L", 270*4882a593Smuzhiyun "", 271*4882a593Smuzhiyun "", 272*4882a593Smuzhiyun 273*4882a593Smuzhiyun "", 274*4882a593Smuzhiyun /* 275*4882a593Smuzhiyun * RECOVERY_SW_L is Chrome OS ABI. Schematics call 276*4882a593Smuzhiyun * it REC_MODE_L. 277*4882a593Smuzhiyun */ 278*4882a593Smuzhiyun "RECOVERY_SW_L", 279*4882a593Smuzhiyun "OT_RESET", 280*4882a593Smuzhiyun "", 281*4882a593Smuzhiyun "", 282*4882a593Smuzhiyun "AP_WARM_RESET_H", 283*4882a593Smuzhiyun "", 284*4882a593Smuzhiyun "I2C0_SDA_PMIC", 285*4882a593Smuzhiyun 286*4882a593Smuzhiyun "I2C0_SCL_PMIC", 287*4882a593Smuzhiyun "", 288*4882a593Smuzhiyun "nFALUT"; 289*4882a593Smuzhiyun}; 290*4882a593Smuzhiyun 291*4882a593Smuzhiyun&gpio2 { 292*4882a593Smuzhiyun gpio-line-names = "CONFIG0", 293*4882a593Smuzhiyun "CONFIG1", 294*4882a593Smuzhiyun "CONFIG2", 295*4882a593Smuzhiyun "", 296*4882a593Smuzhiyun "", 297*4882a593Smuzhiyun "", 298*4882a593Smuzhiyun "", 299*4882a593Smuzhiyun "CONFIG3", 300*4882a593Smuzhiyun 301*4882a593Smuzhiyun "", 302*4882a593Smuzhiyun "EMMC_RST_L"; 303*4882a593Smuzhiyun}; 304*4882a593Smuzhiyun 305*4882a593Smuzhiyun&gpio3 { 306*4882a593Smuzhiyun gpio-line-names = "FLASH0_D0", 307*4882a593Smuzhiyun "FLASH0_D1", 308*4882a593Smuzhiyun "FLASH0_D2", 309*4882a593Smuzhiyun "FLASH0_D3", 310*4882a593Smuzhiyun "FLASH0_D4", 311*4882a593Smuzhiyun "FLASH0_D5", 312*4882a593Smuzhiyun "FLASH0_D6", 313*4882a593Smuzhiyun "FLASH0_D7", 314*4882a593Smuzhiyun 315*4882a593Smuzhiyun "", 316*4882a593Smuzhiyun "", 317*4882a593Smuzhiyun "", 318*4882a593Smuzhiyun "", 319*4882a593Smuzhiyun "", 320*4882a593Smuzhiyun "", 321*4882a593Smuzhiyun "", 322*4882a593Smuzhiyun "", 323*4882a593Smuzhiyun 324*4882a593Smuzhiyun "FLASH0_CS2/EMMC_CMD", 325*4882a593Smuzhiyun "", 326*4882a593Smuzhiyun "FLASH0_DQS/EMMC_CLKO"; 327*4882a593Smuzhiyun}; 328*4882a593Smuzhiyun 329*4882a593Smuzhiyun&gpio4 { 330*4882a593Smuzhiyun gpio-line-names = "", 331*4882a593Smuzhiyun "", 332*4882a593Smuzhiyun "", 333*4882a593Smuzhiyun "", 334*4882a593Smuzhiyun "", 335*4882a593Smuzhiyun "", 336*4882a593Smuzhiyun "", 337*4882a593Smuzhiyun "", 338*4882a593Smuzhiyun 339*4882a593Smuzhiyun "", 340*4882a593Smuzhiyun "", 341*4882a593Smuzhiyun "", 342*4882a593Smuzhiyun "", 343*4882a593Smuzhiyun "", 344*4882a593Smuzhiyun "", 345*4882a593Smuzhiyun "", 346*4882a593Smuzhiyun "", 347*4882a593Smuzhiyun 348*4882a593Smuzhiyun "UART0_RXD", 349*4882a593Smuzhiyun "UART0_TXD", 350*4882a593Smuzhiyun "UART0_CTS_L", 351*4882a593Smuzhiyun "UART0_RTS_L", 352*4882a593Smuzhiyun "SDIO0_D0", 353*4882a593Smuzhiyun "SDIO0_D1", 354*4882a593Smuzhiyun "SDIO0_D2", 355*4882a593Smuzhiyun "SDIO0_D3", 356*4882a593Smuzhiyun 357*4882a593Smuzhiyun "SDIO0_CMD", 358*4882a593Smuzhiyun "SDIO0_CLK", 359*4882a593Smuzhiyun "BT_DEV_WAKE", 360*4882a593Smuzhiyun "", 361*4882a593Smuzhiyun "WIFI_ENABLE_H", 362*4882a593Smuzhiyun "BT_ENABLE_L", 363*4882a593Smuzhiyun "WIFI_HOST_WAKE", 364*4882a593Smuzhiyun "BT_HOST_WAKE"; 365*4882a593Smuzhiyun}; 366*4882a593Smuzhiyun 367*4882a593Smuzhiyun&gpio7 { 368*4882a593Smuzhiyun gpio-line-names = "", 369*4882a593Smuzhiyun "PWM_LOG", 370*4882a593Smuzhiyun "", 371*4882a593Smuzhiyun "", 372*4882a593Smuzhiyun "TPM_INT_H", 373*4882a593Smuzhiyun "SDMMC_DET_L", 374*4882a593Smuzhiyun /* 375*4882a593Smuzhiyun * AP_FLASH_WP_L is Chrome OS ABI. Schematics call 376*4882a593Smuzhiyun * it FW_WP_AP. 377*4882a593Smuzhiyun */ 378*4882a593Smuzhiyun "AP_FLASH_WP_L", 379*4882a593Smuzhiyun "", 380*4882a593Smuzhiyun 381*4882a593Smuzhiyun "CPU_NMI", 382*4882a593Smuzhiyun "DVSOK", 383*4882a593Smuzhiyun "HDMI_WAKE", 384*4882a593Smuzhiyun "POWER_HDMI_ON", 385*4882a593Smuzhiyun "DVS1", 386*4882a593Smuzhiyun "", 387*4882a593Smuzhiyun "", 388*4882a593Smuzhiyun "DVS2", 389*4882a593Smuzhiyun 390*4882a593Smuzhiyun "HDMI_CEC", 391*4882a593Smuzhiyun "", 392*4882a593Smuzhiyun "", 393*4882a593Smuzhiyun "I2C5_SDA_HDMI", 394*4882a593Smuzhiyun "I2C5_SCL_HDMI", 395*4882a593Smuzhiyun "", 396*4882a593Smuzhiyun "UART2_RXD", 397*4882a593Smuzhiyun "UART2_TXD"; 398*4882a593Smuzhiyun}; 399*4882a593Smuzhiyun 400*4882a593Smuzhiyun&gpio8 { 401*4882a593Smuzhiyun gpio-line-names = "RAM_ID0", 402*4882a593Smuzhiyun "RAM_ID1", 403*4882a593Smuzhiyun "RAM_ID2", 404*4882a593Smuzhiyun "RAM_ID3", 405*4882a593Smuzhiyun "I2C1_SDA_TPM", 406*4882a593Smuzhiyun "I2C1_SCL_TPM", 407*4882a593Smuzhiyun "SPI2_CLK", 408*4882a593Smuzhiyun "SPI2_CS0", 409*4882a593Smuzhiyun 410*4882a593Smuzhiyun "SPI2_RXD", 411*4882a593Smuzhiyun "SPI2_TXD"; 412*4882a593Smuzhiyun}; 413*4882a593Smuzhiyun 414*4882a593Smuzhiyun&pinctrl { 415*4882a593Smuzhiyun pinctrl-names = "default"; 416*4882a593Smuzhiyun pinctrl-0 = < 417*4882a593Smuzhiyun /* Common for sleep and wake, but no owners */ 418*4882a593Smuzhiyun &ddr0_retention 419*4882a593Smuzhiyun &ddrio_pwroff 420*4882a593Smuzhiyun &global_pwroff 421*4882a593Smuzhiyun >; 422*4882a593Smuzhiyun 423*4882a593Smuzhiyun hdmi { 424*4882a593Smuzhiyun power_hdmi_on: power-hdmi-on { 425*4882a593Smuzhiyun rockchip,pins = <7 RK_PB3 RK_FUNC_GPIO &pcfg_pull_none>; 426*4882a593Smuzhiyun }; 427*4882a593Smuzhiyun }; 428*4882a593Smuzhiyun 429*4882a593Smuzhiyun pmic { 430*4882a593Smuzhiyun dvs_1: dvs-1 { 431*4882a593Smuzhiyun rockchip,pins = <7 RK_PB4 RK_FUNC_GPIO &pcfg_pull_down>; 432*4882a593Smuzhiyun }; 433*4882a593Smuzhiyun 434*4882a593Smuzhiyun dvs_2: dvs-2 { 435*4882a593Smuzhiyun rockchip,pins = <7 RK_PB7 RK_FUNC_GPIO &pcfg_pull_down>; 436*4882a593Smuzhiyun }; 437*4882a593Smuzhiyun }; 438*4882a593Smuzhiyun}; 439*4882a593Smuzhiyun 440*4882a593Smuzhiyun&usb_host0_ehci { 441*4882a593Smuzhiyun status = "disabled"; 442*4882a593Smuzhiyun}; 443*4882a593Smuzhiyun 444*4882a593Smuzhiyun&usb_host1 { 445*4882a593Smuzhiyun status = "disabled"; 446*4882a593Smuzhiyun}; 447*4882a593Smuzhiyun 448*4882a593Smuzhiyun&vcc50_hdmi { 449*4882a593Smuzhiyun enable-active-high; 450*4882a593Smuzhiyun gpio = <&gpio7 RK_PB3 GPIO_ACTIVE_HIGH>; 451*4882a593Smuzhiyun pinctrl-names = "default"; 452*4882a593Smuzhiyun pinctrl-0 = <&power_hdmi_on>; 453*4882a593Smuzhiyun}; 454