1*4882a593Smuzhiyun// SPDX-License-Identifier: GPL-2.0 2*4882a593Smuzhiyun/* 3*4882a593Smuzhiyun * Samsung's Exynos4412 based Trats 2 board device tree source 4*4882a593Smuzhiyun * 5*4882a593Smuzhiyun * Copyright (c) 2013 Samsung Electronics Co., Ltd. 6*4882a593Smuzhiyun * http://www.samsung.com 7*4882a593Smuzhiyun * 8*4882a593Smuzhiyun * Device tree source file for Samsung's Trats 2 board which is based on 9*4882a593Smuzhiyun * Samsung's Exynos4412 SoC. 10*4882a593Smuzhiyun */ 11*4882a593Smuzhiyun 12*4882a593Smuzhiyun/dts-v1/; 13*4882a593Smuzhiyun#include "exynos4412.dtsi" 14*4882a593Smuzhiyun#include "exynos4412-ppmu-common.dtsi" 15*4882a593Smuzhiyun#include <dt-bindings/gpio/gpio.h> 16*4882a593Smuzhiyun#include <dt-bindings/input/input.h> 17*4882a593Smuzhiyun#include <dt-bindings/interrupt-controller/irq.h> 18*4882a593Smuzhiyun#include <dt-bindings/clock/maxim,max77686.h> 19*4882a593Smuzhiyun#include <dt-bindings/pinctrl/samsung.h> 20*4882a593Smuzhiyun 21*4882a593Smuzhiyun/ { 22*4882a593Smuzhiyun compatible = "samsung,midas", "samsung,exynos4412", "samsung,exynos4"; 23*4882a593Smuzhiyun 24*4882a593Smuzhiyun aliases { 25*4882a593Smuzhiyun i2c11 = &i2c_max77693; 26*4882a593Smuzhiyun i2c12 = &i2c_max77693_fuel; 27*4882a593Smuzhiyun }; 28*4882a593Smuzhiyun 29*4882a593Smuzhiyun chosen { 30*4882a593Smuzhiyun stdout-path = &serial_2; 31*4882a593Smuzhiyun }; 32*4882a593Smuzhiyun 33*4882a593Smuzhiyun firmware@204f000 { 34*4882a593Smuzhiyun compatible = "samsung,secure-firmware"; 35*4882a593Smuzhiyun reg = <0x0204F000 0x1000>; 36*4882a593Smuzhiyun }; 37*4882a593Smuzhiyun 38*4882a593Smuzhiyun fixed-rate-clocks { 39*4882a593Smuzhiyun xxti { 40*4882a593Smuzhiyun compatible = "samsung,clock-xxti"; 41*4882a593Smuzhiyun clock-frequency = <0>; 42*4882a593Smuzhiyun }; 43*4882a593Smuzhiyun 44*4882a593Smuzhiyun xusbxti { 45*4882a593Smuzhiyun compatible = "samsung,clock-xusbxti"; 46*4882a593Smuzhiyun clock-frequency = <24000000>; 47*4882a593Smuzhiyun }; 48*4882a593Smuzhiyun }; 49*4882a593Smuzhiyun 50*4882a593Smuzhiyun cam_io_reg: voltage-regulator-1 { 51*4882a593Smuzhiyun compatible = "regulator-fixed"; 52*4882a593Smuzhiyun regulator-name = "CAM_SENSOR_A"; 53*4882a593Smuzhiyun regulator-min-microvolt = <2800000>; 54*4882a593Smuzhiyun regulator-max-microvolt = <2800000>; 55*4882a593Smuzhiyun enable-active-high; 56*4882a593Smuzhiyun status = "disabled"; 57*4882a593Smuzhiyun }; 58*4882a593Smuzhiyun 59*4882a593Smuzhiyun cam_af_reg: voltage-regulator-2 { 60*4882a593Smuzhiyun compatible = "regulator-fixed"; 61*4882a593Smuzhiyun regulator-name = "CAM_AF"; 62*4882a593Smuzhiyun regulator-min-microvolt = <2800000>; 63*4882a593Smuzhiyun regulator-max-microvolt = <2800000>; 64*4882a593Smuzhiyun enable-active-high; 65*4882a593Smuzhiyun status = "disabled"; 66*4882a593Smuzhiyun }; 67*4882a593Smuzhiyun 68*4882a593Smuzhiyun vsil12: voltage-regulator-3 { 69*4882a593Smuzhiyun compatible = "regulator-fixed"; 70*4882a593Smuzhiyun regulator-name = "VSIL_1.2V"; 71*4882a593Smuzhiyun regulator-min-microvolt = <1200000>; 72*4882a593Smuzhiyun regulator-max-microvolt = <1200000>; 73*4882a593Smuzhiyun gpio = <&gpl0 4 GPIO_ACTIVE_HIGH>; 74*4882a593Smuzhiyun enable-active-high; 75*4882a593Smuzhiyun vin-supply = <&buck7_reg>; 76*4882a593Smuzhiyun }; 77*4882a593Smuzhiyun 78*4882a593Smuzhiyun vcc33mhl: voltage-regulator-4 { 79*4882a593Smuzhiyun compatible = "regulator-fixed"; 80*4882a593Smuzhiyun regulator-name = "VCC_3.3_MHL"; 81*4882a593Smuzhiyun regulator-min-microvolt = <3300000>; 82*4882a593Smuzhiyun regulator-max-microvolt = <3300000>; 83*4882a593Smuzhiyun gpio = <&gpl0 4 GPIO_ACTIVE_HIGH>; 84*4882a593Smuzhiyun enable-active-high; 85*4882a593Smuzhiyun }; 86*4882a593Smuzhiyun 87*4882a593Smuzhiyun vcc18mhl: voltage-regulator-5 { 88*4882a593Smuzhiyun compatible = "regulator-fixed"; 89*4882a593Smuzhiyun regulator-name = "VCC_1.8_MHL"; 90*4882a593Smuzhiyun regulator-min-microvolt = <1800000>; 91*4882a593Smuzhiyun regulator-max-microvolt = <1800000>; 92*4882a593Smuzhiyun gpio = <&gpl0 4 GPIO_ACTIVE_HIGH>; 93*4882a593Smuzhiyun enable-active-high; 94*4882a593Smuzhiyun }; 95*4882a593Smuzhiyun 96*4882a593Smuzhiyun touchkey_reg: voltage-regulator-6 { 97*4882a593Smuzhiyun compatible = "regulator-fixed"; 98*4882a593Smuzhiyun regulator-name = "LED_VDD_3.3V"; 99*4882a593Smuzhiyun regulator-min-microvolt = <3300000>; 100*4882a593Smuzhiyun regulator-max-microvolt = <3300000>; 101*4882a593Smuzhiyun enable-active-high; 102*4882a593Smuzhiyun status = "disabled"; 103*4882a593Smuzhiyun }; 104*4882a593Smuzhiyun 105*4882a593Smuzhiyun vbatt_reg: voltage-regulator-7 { 106*4882a593Smuzhiyun compatible = "regulator-fixed"; 107*4882a593Smuzhiyun regulator-name = "VBATT"; 108*4882a593Smuzhiyun regulator-min-microvolt = <5000000>; 109*4882a593Smuzhiyun regulator-max-microvolt = <5000000>; 110*4882a593Smuzhiyun regulator-always-on; 111*4882a593Smuzhiyun }; 112*4882a593Smuzhiyun 113*4882a593Smuzhiyun mic_bias_reg: voltage-regulator-8 { 114*4882a593Smuzhiyun compatible = "regulator-fixed"; 115*4882a593Smuzhiyun regulator-name = "MICBIAS_LDO_2.8V"; 116*4882a593Smuzhiyun regulator-min-microvolt = <2800000>; 117*4882a593Smuzhiyun regulator-max-microvolt = <2800000>; 118*4882a593Smuzhiyun gpio = <&gpf1 7 GPIO_ACTIVE_HIGH>; 119*4882a593Smuzhiyun enable-active-high; 120*4882a593Smuzhiyun }; 121*4882a593Smuzhiyun 122*4882a593Smuzhiyun submic_bias_reg: voltage-regulator-9 { 123*4882a593Smuzhiyun compatible = "regulator-fixed"; 124*4882a593Smuzhiyun regulator-name = "SUB_MICBIAS_LDO_2.8V"; 125*4882a593Smuzhiyun regulator-min-microvolt = <2800000>; 126*4882a593Smuzhiyun regulator-max-microvolt = <2800000>; 127*4882a593Smuzhiyun }; 128*4882a593Smuzhiyun 129*4882a593Smuzhiyun gpio-keys { 130*4882a593Smuzhiyun compatible = "gpio-keys"; 131*4882a593Smuzhiyun pinctrl-names = "default"; 132*4882a593Smuzhiyun pinctrl-0 = <&gpio_keys>; 133*4882a593Smuzhiyun 134*4882a593Smuzhiyun key-down { 135*4882a593Smuzhiyun gpios = <&gpx3 3 GPIO_ACTIVE_LOW>; 136*4882a593Smuzhiyun linux,code = <114>; 137*4882a593Smuzhiyun label = "volume down"; 138*4882a593Smuzhiyun debounce-interval = <10>; 139*4882a593Smuzhiyun }; 140*4882a593Smuzhiyun 141*4882a593Smuzhiyun key-up { 142*4882a593Smuzhiyun gpios = <&gpx2 2 GPIO_ACTIVE_LOW>; 143*4882a593Smuzhiyun linux,code = <115>; 144*4882a593Smuzhiyun label = "volume up"; 145*4882a593Smuzhiyun debounce-interval = <10>; 146*4882a593Smuzhiyun }; 147*4882a593Smuzhiyun 148*4882a593Smuzhiyun key-power { 149*4882a593Smuzhiyun gpios = <&gpx2 7 GPIO_ACTIVE_LOW>; 150*4882a593Smuzhiyun linux,code = <116>; 151*4882a593Smuzhiyun label = "power"; 152*4882a593Smuzhiyun debounce-interval = <10>; 153*4882a593Smuzhiyun wakeup-source; 154*4882a593Smuzhiyun }; 155*4882a593Smuzhiyun 156*4882a593Smuzhiyun key-ok { 157*4882a593Smuzhiyun gpios = <&gpx0 1 GPIO_ACTIVE_LOW>; 158*4882a593Smuzhiyun linux,code = <139>; 159*4882a593Smuzhiyun label = "ok"; 160*4882a593Smuzhiyun debounce-interval = <10>; 161*4882a593Smuzhiyun wakeup-source; 162*4882a593Smuzhiyun }; 163*4882a593Smuzhiyun }; 164*4882a593Smuzhiyun 165*4882a593Smuzhiyun i2c_max77693: i2c-gpio-1 { 166*4882a593Smuzhiyun compatible = "i2c-gpio"; 167*4882a593Smuzhiyun sda-gpios = <&gpm2 0 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 168*4882a593Smuzhiyun scl-gpios = <&gpm2 1 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 169*4882a593Smuzhiyun i2c-gpio,delay-us = <2>; 170*4882a593Smuzhiyun #address-cells = <1>; 171*4882a593Smuzhiyun #size-cells = <0>; 172*4882a593Smuzhiyun status = "okay"; 173*4882a593Smuzhiyun 174*4882a593Smuzhiyun max77693@66 { 175*4882a593Smuzhiyun compatible = "maxim,max77693"; 176*4882a593Smuzhiyun interrupt-parent = <&gpx1>; 177*4882a593Smuzhiyun interrupts = <5 IRQ_TYPE_LEVEL_LOW>; 178*4882a593Smuzhiyun pinctrl-names = "default"; 179*4882a593Smuzhiyun pinctrl-0 = <&max77693_irq>; 180*4882a593Smuzhiyun reg = <0x66>; 181*4882a593Smuzhiyun 182*4882a593Smuzhiyun regulators { 183*4882a593Smuzhiyun esafeout1_reg: ESAFEOUT1 { 184*4882a593Smuzhiyun regulator-name = "ESAFEOUT1"; 185*4882a593Smuzhiyun }; 186*4882a593Smuzhiyun esafeout2_reg: ESAFEOUT2 { 187*4882a593Smuzhiyun regulator-name = "ESAFEOUT2"; 188*4882a593Smuzhiyun }; 189*4882a593Smuzhiyun charger_reg: CHARGER { 190*4882a593Smuzhiyun regulator-name = "CHARGER"; 191*4882a593Smuzhiyun regulator-min-microamp = <60000>; 192*4882a593Smuzhiyun regulator-max-microamp = <2580000>; 193*4882a593Smuzhiyun }; 194*4882a593Smuzhiyun }; 195*4882a593Smuzhiyun 196*4882a593Smuzhiyun max77693_haptic { 197*4882a593Smuzhiyun compatible = "maxim,max77693-haptic"; 198*4882a593Smuzhiyun haptic-supply = <&ldo26_reg>; 199*4882a593Smuzhiyun pwms = <&pwm 0 38022 0>; 200*4882a593Smuzhiyun }; 201*4882a593Smuzhiyun 202*4882a593Smuzhiyun charger { 203*4882a593Smuzhiyun compatible = "maxim,max77693-charger"; 204*4882a593Smuzhiyun 205*4882a593Smuzhiyun maxim,constant-microvolt = <4350000>; 206*4882a593Smuzhiyun maxim,min-system-microvolt = <3600000>; 207*4882a593Smuzhiyun maxim,thermal-regulation-celsius = <100>; 208*4882a593Smuzhiyun maxim,battery-overcurrent-microamp = <3500000>; 209*4882a593Smuzhiyun maxim,charge-input-threshold-microvolt = <4300000>; 210*4882a593Smuzhiyun }; 211*4882a593Smuzhiyun }; 212*4882a593Smuzhiyun }; 213*4882a593Smuzhiyun 214*4882a593Smuzhiyun i2c_max77693_fuel: i2c-gpio-3 { 215*4882a593Smuzhiyun compatible = "i2c-gpio"; 216*4882a593Smuzhiyun sda-gpios = <&gpf1 5 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 217*4882a593Smuzhiyun scl-gpios = <&gpf1 4 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 218*4882a593Smuzhiyun i2c-gpio,delay-us = <2>; 219*4882a593Smuzhiyun #address-cells = <1>; 220*4882a593Smuzhiyun #size-cells = <0>; 221*4882a593Smuzhiyun status = "okay"; 222*4882a593Smuzhiyun 223*4882a593Smuzhiyun max77693-fuel-gauge@36 { 224*4882a593Smuzhiyun compatible = "maxim,max17047"; 225*4882a593Smuzhiyun interrupt-parent = <&gpx2>; 226*4882a593Smuzhiyun interrupts = <3 IRQ_TYPE_LEVEL_LOW>; 227*4882a593Smuzhiyun pinctrl-names = "default"; 228*4882a593Smuzhiyun pinctrl-0 = <&max77693_fuel_irq>; 229*4882a593Smuzhiyun reg = <0x36>; 230*4882a593Smuzhiyun 231*4882a593Smuzhiyun maxim,over-heat-temp = <700>; 232*4882a593Smuzhiyun maxim,over-volt = <4500>; 233*4882a593Smuzhiyun }; 234*4882a593Smuzhiyun }; 235*4882a593Smuzhiyun 236*4882a593Smuzhiyun i2c-gpio-4 { 237*4882a593Smuzhiyun compatible = "i2c-gpio"; 238*4882a593Smuzhiyun sda-gpios = <&gpl0 2 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 239*4882a593Smuzhiyun scl-gpios = <&gpl0 1 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 240*4882a593Smuzhiyun i2c-gpio,delay-us = <2>; 241*4882a593Smuzhiyun #address-cells = <1>; 242*4882a593Smuzhiyun #size-cells = <0>; 243*4882a593Smuzhiyun 244*4882a593Smuzhiyun touchkey@20 { 245*4882a593Smuzhiyun compatible = "cypress,midas-touchkey"; 246*4882a593Smuzhiyun reg = <0x20>; 247*4882a593Smuzhiyun vdd-supply = <&touchkey_reg>; 248*4882a593Smuzhiyun vcc-supply = <&ldo5_reg>; 249*4882a593Smuzhiyun interrupt-parent = <&gpj0>; 250*4882a593Smuzhiyun interrupts = <3 IRQ_TYPE_EDGE_FALLING>; 251*4882a593Smuzhiyun linux,keycodes = <KEY_BACK KEY_MENU>; 252*4882a593Smuzhiyun }; 253*4882a593Smuzhiyun }; 254*4882a593Smuzhiyun 255*4882a593Smuzhiyun i2c-mhl { 256*4882a593Smuzhiyun compatible = "i2c-gpio"; 257*4882a593Smuzhiyun sda-gpios = <&gpf0 4 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 258*4882a593Smuzhiyun scl-gpios = <&gpf0 6 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 259*4882a593Smuzhiyun i2c-gpio,delay-us = <100>; 260*4882a593Smuzhiyun #address-cells = <1>; 261*4882a593Smuzhiyun #size-cells = <0>; 262*4882a593Smuzhiyun 263*4882a593Smuzhiyun pinctrl-0 = <&i2c_mhl_bus>; 264*4882a593Smuzhiyun pinctrl-names = "default"; 265*4882a593Smuzhiyun status = "okay"; 266*4882a593Smuzhiyun 267*4882a593Smuzhiyun sii9234: hdmi-bridge@39 { 268*4882a593Smuzhiyun compatible = "sil,sii9234"; 269*4882a593Smuzhiyun avcc33-supply = <&vcc33mhl>; 270*4882a593Smuzhiyun iovcc18-supply = <&vcc18mhl>; 271*4882a593Smuzhiyun avcc12-supply = <&vsil12>; 272*4882a593Smuzhiyun cvcc12-supply = <&vsil12>; 273*4882a593Smuzhiyun reset-gpios = <&gpf3 4 GPIO_ACTIVE_LOW>; 274*4882a593Smuzhiyun interrupt-parent = <&gpf3>; 275*4882a593Smuzhiyun interrupts = <5 IRQ_TYPE_LEVEL_HIGH>; 276*4882a593Smuzhiyun reg = <0x39>; 277*4882a593Smuzhiyun 278*4882a593Smuzhiyun port { 279*4882a593Smuzhiyun mhl_to_hdmi: endpoint { 280*4882a593Smuzhiyun remote-endpoint = <&hdmi_to_mhl>; 281*4882a593Smuzhiyun }; 282*4882a593Smuzhiyun }; 283*4882a593Smuzhiyun }; 284*4882a593Smuzhiyun }; 285*4882a593Smuzhiyun 286*4882a593Smuzhiyun wlan_pwrseq: sdhci3-pwrseq { 287*4882a593Smuzhiyun compatible = "mmc-pwrseq-simple"; 288*4882a593Smuzhiyun reset-gpios = <&gpj0 0 GPIO_ACTIVE_LOW>; 289*4882a593Smuzhiyun clocks = <&max77686 MAX77686_CLK_PMIC>; 290*4882a593Smuzhiyun clock-names = "ext_clock"; 291*4882a593Smuzhiyun }; 292*4882a593Smuzhiyun 293*4882a593Smuzhiyun sound: sound { 294*4882a593Smuzhiyun compatible = "samsung,midas-audio"; 295*4882a593Smuzhiyun model = "Midas"; 296*4882a593Smuzhiyun mic-bias-supply = <&mic_bias_reg>; 297*4882a593Smuzhiyun submic-bias-supply = <&submic_bias_reg>; 298*4882a593Smuzhiyun 299*4882a593Smuzhiyun cpu { 300*4882a593Smuzhiyun sound-dai = <&i2s0 0>; 301*4882a593Smuzhiyun }; 302*4882a593Smuzhiyun codec { 303*4882a593Smuzhiyun sound-dai = <&wm1811>; 304*4882a593Smuzhiyun }; 305*4882a593Smuzhiyun }; 306*4882a593Smuzhiyun 307*4882a593Smuzhiyun thermistor-ap { 308*4882a593Smuzhiyun compatible = "murata,ncp15wb473"; 309*4882a593Smuzhiyun pullup-uv = <1800000>; /* VCC_1.8V_AP */ 310*4882a593Smuzhiyun pullup-ohm = <100000>; /* 100K */ 311*4882a593Smuzhiyun pulldown-ohm = <100000>; /* 100K */ 312*4882a593Smuzhiyun io-channels = <&adc 1>; /* AP temperature */ 313*4882a593Smuzhiyun }; 314*4882a593Smuzhiyun 315*4882a593Smuzhiyun thermistor-battery { 316*4882a593Smuzhiyun compatible = "murata,ncp15wb473"; 317*4882a593Smuzhiyun pullup-uv = <1800000>; /* VCC_1.8V_AP */ 318*4882a593Smuzhiyun pullup-ohm = <100000>; /* 100K */ 319*4882a593Smuzhiyun pulldown-ohm = <100000>; /* 100K */ 320*4882a593Smuzhiyun io-channels = <&adc 2>; /* Battery temperature */ 321*4882a593Smuzhiyun }; 322*4882a593Smuzhiyun}; 323*4882a593Smuzhiyun 324*4882a593Smuzhiyun&adc { 325*4882a593Smuzhiyun vdd-supply = <&ldo3_reg>; 326*4882a593Smuzhiyun status = "okay"; 327*4882a593Smuzhiyun}; 328*4882a593Smuzhiyun 329*4882a593Smuzhiyun&bus_dmc { 330*4882a593Smuzhiyun devfreq-events = <&ppmu_dmc0_3>, <&ppmu_dmc1_3>; 331*4882a593Smuzhiyun vdd-supply = <&buck1_reg>; 332*4882a593Smuzhiyun status = "okay"; 333*4882a593Smuzhiyun}; 334*4882a593Smuzhiyun 335*4882a593Smuzhiyun&bus_acp { 336*4882a593Smuzhiyun devfreq = <&bus_dmc>; 337*4882a593Smuzhiyun status = "okay"; 338*4882a593Smuzhiyun}; 339*4882a593Smuzhiyun 340*4882a593Smuzhiyun&bus_c2c { 341*4882a593Smuzhiyun devfreq = <&bus_dmc>; 342*4882a593Smuzhiyun status = "okay"; 343*4882a593Smuzhiyun}; 344*4882a593Smuzhiyun 345*4882a593Smuzhiyun&bus_leftbus { 346*4882a593Smuzhiyun devfreq-events = <&ppmu_leftbus_3>, <&ppmu_rightbus_3>; 347*4882a593Smuzhiyun vdd-supply = <&buck3_reg>; 348*4882a593Smuzhiyun status = "okay"; 349*4882a593Smuzhiyun}; 350*4882a593Smuzhiyun 351*4882a593Smuzhiyun&bus_rightbus { 352*4882a593Smuzhiyun devfreq = <&bus_leftbus>; 353*4882a593Smuzhiyun status = "okay"; 354*4882a593Smuzhiyun}; 355*4882a593Smuzhiyun 356*4882a593Smuzhiyun&bus_display { 357*4882a593Smuzhiyun devfreq = <&bus_leftbus>; 358*4882a593Smuzhiyun status = "okay"; 359*4882a593Smuzhiyun}; 360*4882a593Smuzhiyun 361*4882a593Smuzhiyun&bus_fsys { 362*4882a593Smuzhiyun devfreq = <&bus_leftbus>; 363*4882a593Smuzhiyun status = "okay"; 364*4882a593Smuzhiyun}; 365*4882a593Smuzhiyun 366*4882a593Smuzhiyun&bus_peri { 367*4882a593Smuzhiyun devfreq = <&bus_leftbus>; 368*4882a593Smuzhiyun status = "okay"; 369*4882a593Smuzhiyun}; 370*4882a593Smuzhiyun 371*4882a593Smuzhiyun&bus_mfc { 372*4882a593Smuzhiyun devfreq = <&bus_leftbus>; 373*4882a593Smuzhiyun status = "okay"; 374*4882a593Smuzhiyun}; 375*4882a593Smuzhiyun 376*4882a593Smuzhiyun&camera { 377*4882a593Smuzhiyun pinctrl-0 = <&cam_port_a_clk_active &cam_port_b_clk_active>; 378*4882a593Smuzhiyun pinctrl-names = "default"; 379*4882a593Smuzhiyun status = "okay"; 380*4882a593Smuzhiyun assigned-clocks = <&clock CLK_MOUT_CAM0>, 381*4882a593Smuzhiyun <&clock CLK_MOUT_CAM1>; 382*4882a593Smuzhiyun assigned-clock-parents = <&clock CLK_XUSBXTI>, 383*4882a593Smuzhiyun <&clock CLK_XUSBXTI>; 384*4882a593Smuzhiyun}; 385*4882a593Smuzhiyun 386*4882a593Smuzhiyun&cpu0 { 387*4882a593Smuzhiyun cpu0-supply = <&buck2_reg>; 388*4882a593Smuzhiyun}; 389*4882a593Smuzhiyun 390*4882a593Smuzhiyun&cpu_thermal { 391*4882a593Smuzhiyun cooling-maps { 392*4882a593Smuzhiyun map0 { 393*4882a593Smuzhiyun /* Corresponds to 800MHz at freq_table */ 394*4882a593Smuzhiyun cooling-device = <&cpu0 7 7>, <&cpu1 7 7>, 395*4882a593Smuzhiyun <&cpu2 7 7>, <&cpu3 7 7>; 396*4882a593Smuzhiyun }; 397*4882a593Smuzhiyun map1 { 398*4882a593Smuzhiyun /* Corresponds to 200MHz at freq_table */ 399*4882a593Smuzhiyun cooling-device = <&cpu0 13 13>, <&cpu1 13 13>, 400*4882a593Smuzhiyun <&cpu2 13 13>, <&cpu3 13 13>; 401*4882a593Smuzhiyun }; 402*4882a593Smuzhiyun }; 403*4882a593Smuzhiyun}; 404*4882a593Smuzhiyun 405*4882a593Smuzhiyun&csis_0 { 406*4882a593Smuzhiyun status = "okay"; 407*4882a593Smuzhiyun vddcore-supply = <&ldo8_reg>; 408*4882a593Smuzhiyun vddio-supply = <&ldo10_reg>; 409*4882a593Smuzhiyun assigned-clocks = <&clock CLK_MOUT_CSIS0>, 410*4882a593Smuzhiyun <&clock CLK_SCLK_CSIS0>; 411*4882a593Smuzhiyun assigned-clock-parents = <&clock CLK_MOUT_MPLL_USER_T>; 412*4882a593Smuzhiyun assigned-clock-rates = <0>, <176000000>; 413*4882a593Smuzhiyun 414*4882a593Smuzhiyun /* Camera C (3) MIPI CSI-2 (CSIS0) */ 415*4882a593Smuzhiyun port@3 { 416*4882a593Smuzhiyun reg = <3>; 417*4882a593Smuzhiyun csis0_ep: endpoint { 418*4882a593Smuzhiyun remote-endpoint = <&s5c73m3_ep>; 419*4882a593Smuzhiyun data-lanes = <1 2 3 4>; 420*4882a593Smuzhiyun samsung,csis-hs-settle = <12>; 421*4882a593Smuzhiyun }; 422*4882a593Smuzhiyun }; 423*4882a593Smuzhiyun}; 424*4882a593Smuzhiyun 425*4882a593Smuzhiyun&csis_1 { 426*4882a593Smuzhiyun status = "okay"; 427*4882a593Smuzhiyun vddcore-supply = <&ldo8_reg>; 428*4882a593Smuzhiyun vddio-supply = <&ldo10_reg>; 429*4882a593Smuzhiyun assigned-clocks = <&clock CLK_MOUT_CSIS1>, 430*4882a593Smuzhiyun <&clock CLK_SCLK_CSIS1>; 431*4882a593Smuzhiyun assigned-clock-parents = <&clock CLK_MOUT_MPLL_USER_T>; 432*4882a593Smuzhiyun assigned-clock-rates = <0>, <176000000>; 433*4882a593Smuzhiyun 434*4882a593Smuzhiyun /* Camera D (4) MIPI CSI-2 (CSIS1) */ 435*4882a593Smuzhiyun port@4 { 436*4882a593Smuzhiyun reg = <4>; 437*4882a593Smuzhiyun csis1_ep: endpoint { 438*4882a593Smuzhiyun remote-endpoint = <&is_s5k6a3_ep>; 439*4882a593Smuzhiyun data-lanes = <1>; 440*4882a593Smuzhiyun samsung,csis-hs-settle = <18>; 441*4882a593Smuzhiyun samsung,csis-wclk; 442*4882a593Smuzhiyun }; 443*4882a593Smuzhiyun }; 444*4882a593Smuzhiyun}; 445*4882a593Smuzhiyun 446*4882a593Smuzhiyun&dsi_0 { 447*4882a593Smuzhiyun vddcore-supply = <&ldo8_reg>; 448*4882a593Smuzhiyun vddio-supply = <&ldo10_reg>; 449*4882a593Smuzhiyun samsung,burst-clock-frequency = <500000000>; 450*4882a593Smuzhiyun samsung,esc-clock-frequency = <20000000>; 451*4882a593Smuzhiyun samsung,pll-clock-frequency = <24000000>; 452*4882a593Smuzhiyun}; 453*4882a593Smuzhiyun 454*4882a593Smuzhiyun&exynos_usbphy { 455*4882a593Smuzhiyun vbus-supply = <&esafeout1_reg>; 456*4882a593Smuzhiyun status = "okay"; 457*4882a593Smuzhiyun}; 458*4882a593Smuzhiyun 459*4882a593Smuzhiyun&fimc_0 { 460*4882a593Smuzhiyun status = "okay"; 461*4882a593Smuzhiyun assigned-clocks = <&clock CLK_MOUT_FIMC0>, 462*4882a593Smuzhiyun <&clock CLK_SCLK_FIMC0>; 463*4882a593Smuzhiyun assigned-clock-parents = <&clock CLK_MOUT_MPLL_USER_T>; 464*4882a593Smuzhiyun assigned-clock-rates = <0>, <176000000>; 465*4882a593Smuzhiyun}; 466*4882a593Smuzhiyun 467*4882a593Smuzhiyun&fimc_1 { 468*4882a593Smuzhiyun status = "okay"; 469*4882a593Smuzhiyun assigned-clocks = <&clock CLK_MOUT_FIMC1>, 470*4882a593Smuzhiyun <&clock CLK_SCLK_FIMC1>; 471*4882a593Smuzhiyun assigned-clock-parents = <&clock CLK_MOUT_MPLL_USER_T>; 472*4882a593Smuzhiyun assigned-clock-rates = <0>, <176000000>; 473*4882a593Smuzhiyun}; 474*4882a593Smuzhiyun 475*4882a593Smuzhiyun&fimc_2 { 476*4882a593Smuzhiyun status = "okay"; 477*4882a593Smuzhiyun assigned-clocks = <&clock CLK_MOUT_FIMC2>, 478*4882a593Smuzhiyun <&clock CLK_SCLK_FIMC2>; 479*4882a593Smuzhiyun assigned-clock-parents = <&clock CLK_MOUT_MPLL_USER_T>; 480*4882a593Smuzhiyun assigned-clock-rates = <0>, <176000000>; 481*4882a593Smuzhiyun}; 482*4882a593Smuzhiyun 483*4882a593Smuzhiyun&fimc_3 { 484*4882a593Smuzhiyun status = "okay"; 485*4882a593Smuzhiyun assigned-clocks = <&clock CLK_MOUT_FIMC3>, 486*4882a593Smuzhiyun <&clock CLK_SCLK_FIMC3>; 487*4882a593Smuzhiyun assigned-clock-parents = <&clock CLK_MOUT_MPLL_USER_T>; 488*4882a593Smuzhiyun assigned-clock-rates = <0>, <176000000>; 489*4882a593Smuzhiyun}; 490*4882a593Smuzhiyun 491*4882a593Smuzhiyun&fimc_is { 492*4882a593Smuzhiyun pinctrl-0 = <&fimc_is_uart>; 493*4882a593Smuzhiyun pinctrl-names = "default"; 494*4882a593Smuzhiyun status = "okay"; 495*4882a593Smuzhiyun 496*4882a593Smuzhiyun }; 497*4882a593Smuzhiyun 498*4882a593Smuzhiyun&fimc_lite_0 { 499*4882a593Smuzhiyun status = "okay"; 500*4882a593Smuzhiyun}; 501*4882a593Smuzhiyun 502*4882a593Smuzhiyun&fimc_lite_1 { 503*4882a593Smuzhiyun status = "okay"; 504*4882a593Smuzhiyun}; 505*4882a593Smuzhiyun 506*4882a593Smuzhiyun&fimd { 507*4882a593Smuzhiyun status = "okay"; 508*4882a593Smuzhiyun}; 509*4882a593Smuzhiyun 510*4882a593Smuzhiyun&gpu { 511*4882a593Smuzhiyun mali-supply = <&buck4_reg>; 512*4882a593Smuzhiyun status = "okay"; 513*4882a593Smuzhiyun}; 514*4882a593Smuzhiyun 515*4882a593Smuzhiyun&hdmi { 516*4882a593Smuzhiyun hpd-gpios = <&gpx3 7 GPIO_ACTIVE_HIGH>; 517*4882a593Smuzhiyun pinctrl-names = "default"; 518*4882a593Smuzhiyun pinctrl-0 = <&hdmi_hpd>; 519*4882a593Smuzhiyun vdd-supply = <&ldo3_reg>; 520*4882a593Smuzhiyun vdd_osc-supply = <&ldo4_reg>; 521*4882a593Smuzhiyun vdd_pll-supply = <&ldo3_reg>; 522*4882a593Smuzhiyun ddc = <&i2c_5>; 523*4882a593Smuzhiyun status = "okay"; 524*4882a593Smuzhiyun 525*4882a593Smuzhiyun ports { 526*4882a593Smuzhiyun #address-cells = <1>; 527*4882a593Smuzhiyun #size-cells = <0>; 528*4882a593Smuzhiyun 529*4882a593Smuzhiyun port@1 { 530*4882a593Smuzhiyun reg = <1>; 531*4882a593Smuzhiyun hdmi_to_mhl: endpoint { 532*4882a593Smuzhiyun remote-endpoint = <&mhl_to_hdmi>; 533*4882a593Smuzhiyun }; 534*4882a593Smuzhiyun }; 535*4882a593Smuzhiyun }; 536*4882a593Smuzhiyun}; 537*4882a593Smuzhiyun 538*4882a593Smuzhiyun&hsotg { 539*4882a593Smuzhiyun vusb_d-supply = <&ldo15_reg>; 540*4882a593Smuzhiyun vusb_a-supply = <&ldo12_reg>; 541*4882a593Smuzhiyun dr_mode = "peripheral"; 542*4882a593Smuzhiyun status = "okay"; 543*4882a593Smuzhiyun}; 544*4882a593Smuzhiyun 545*4882a593Smuzhiyun&i2c_0 { 546*4882a593Smuzhiyun samsung,i2c-sda-delay = <100>; 547*4882a593Smuzhiyun samsung,i2c-slave-addr = <0x10>; 548*4882a593Smuzhiyun samsung,i2c-max-bus-freq = <400000>; 549*4882a593Smuzhiyun pinctrl-0 = <&i2c0_bus>; 550*4882a593Smuzhiyun pinctrl-names = "default"; 551*4882a593Smuzhiyun status = "okay"; 552*4882a593Smuzhiyun 553*4882a593Smuzhiyun s5c73m3: s5c73m3@3c { 554*4882a593Smuzhiyun compatible = "samsung,s5c73m3"; 555*4882a593Smuzhiyun reg = <0x3c>; 556*4882a593Smuzhiyun xshutdown-gpios = <&gpf1 3 GPIO_ACTIVE_LOW>; /* ISP_RESET */ 557*4882a593Smuzhiyun vdd-int-supply = <&buck9_reg>; 558*4882a593Smuzhiyun vddio-cis-supply = <&ldo9_reg>; 559*4882a593Smuzhiyun vddio-host-supply = <&ldo18_reg>; 560*4882a593Smuzhiyun vdd-af-supply = <&cam_af_reg>; 561*4882a593Smuzhiyun vdd-reg-supply = <&cam_io_reg>; 562*4882a593Smuzhiyun clock-frequency = <24000000>; 563*4882a593Smuzhiyun /* CAM_A_CLKOUT */ 564*4882a593Smuzhiyun clocks = <&camera 0>; 565*4882a593Smuzhiyun clock-names = "cis_extclk"; 566*4882a593Smuzhiyun status = "disabled"; 567*4882a593Smuzhiyun port { 568*4882a593Smuzhiyun s5c73m3_ep: endpoint { 569*4882a593Smuzhiyun remote-endpoint = <&csis0_ep>; 570*4882a593Smuzhiyun data-lanes = <1 2 3 4>; 571*4882a593Smuzhiyun }; 572*4882a593Smuzhiyun }; 573*4882a593Smuzhiyun }; 574*4882a593Smuzhiyun}; 575*4882a593Smuzhiyun 576*4882a593Smuzhiyun&i2c1_isp { 577*4882a593Smuzhiyun pinctrl-0 = <&fimc_is_i2c1>; 578*4882a593Smuzhiyun pinctrl-names = "default"; 579*4882a593Smuzhiyun 580*4882a593Smuzhiyun s5k6a3@10 { 581*4882a593Smuzhiyun compatible = "samsung,s5k6a3"; 582*4882a593Smuzhiyun reg = <0x10>; 583*4882a593Smuzhiyun svdda-supply = <&cam_io_reg>; 584*4882a593Smuzhiyun svddio-supply = <&ldo19_reg>; 585*4882a593Smuzhiyun afvdd-supply = <&ldo19_reg>; 586*4882a593Smuzhiyun clock-frequency = <24000000>; 587*4882a593Smuzhiyun /* CAM_B_CLKOUT */ 588*4882a593Smuzhiyun clocks = <&camera 1>; 589*4882a593Smuzhiyun clock-names = "extclk"; 590*4882a593Smuzhiyun samsung,camclk-out = <1>; 591*4882a593Smuzhiyun gpios = <&gpm1 6 GPIO_ACTIVE_LOW>; 592*4882a593Smuzhiyun 593*4882a593Smuzhiyun port { 594*4882a593Smuzhiyun is_s5k6a3_ep: endpoint { 595*4882a593Smuzhiyun remote-endpoint = <&csis1_ep>; 596*4882a593Smuzhiyun data-lanes = <1>; 597*4882a593Smuzhiyun }; 598*4882a593Smuzhiyun }; 599*4882a593Smuzhiyun }; 600*4882a593Smuzhiyun}; 601*4882a593Smuzhiyun 602*4882a593Smuzhiyun&i2c_3 { 603*4882a593Smuzhiyun samsung,i2c-sda-delay = <100>; 604*4882a593Smuzhiyun samsung,i2c-slave-addr = <0x10>; 605*4882a593Smuzhiyun samsung,i2c-max-bus-freq = <400000>; 606*4882a593Smuzhiyun pinctrl-0 = <&i2c3_bus>; 607*4882a593Smuzhiyun pinctrl-names = "default"; 608*4882a593Smuzhiyun status = "okay"; 609*4882a593Smuzhiyun}; 610*4882a593Smuzhiyun 611*4882a593Smuzhiyun&i2c_4 { 612*4882a593Smuzhiyun samsung,i2c-sda-delay = <100>; 613*4882a593Smuzhiyun samsung,i2c-slave-addr = <0x10>; 614*4882a593Smuzhiyun samsung,i2c-max-bus-freq = <100000>; 615*4882a593Smuzhiyun pinctrl-0 = <&i2c4_bus>; 616*4882a593Smuzhiyun pinctrl-names = "default"; 617*4882a593Smuzhiyun status = "okay"; 618*4882a593Smuzhiyun 619*4882a593Smuzhiyun wm1811: wm1811@1a { 620*4882a593Smuzhiyun compatible = "wlf,wm1811"; 621*4882a593Smuzhiyun reg = <0x1a>; 622*4882a593Smuzhiyun clocks = <&pmu_system_controller 0>, 623*4882a593Smuzhiyun <&max77686 MAX77686_CLK_PMIC>; 624*4882a593Smuzhiyun clock-names = "MCLK1", "MCLK2"; 625*4882a593Smuzhiyun interrupt-controller; 626*4882a593Smuzhiyun #interrupt-cells = <2>; 627*4882a593Smuzhiyun interrupt-parent = <&gpx3>; 628*4882a593Smuzhiyun interrupts = <6 IRQ_TYPE_LEVEL_HIGH>; 629*4882a593Smuzhiyun 630*4882a593Smuzhiyun gpio-controller; 631*4882a593Smuzhiyun #gpio-cells = <2>; 632*4882a593Smuzhiyun #sound-dai-cells = <0>; 633*4882a593Smuzhiyun 634*4882a593Smuzhiyun wlf,gpio-cfg = <0x3 0x0 0x0 0x0 0x0 0x0 635*4882a593Smuzhiyun 0x0 0x8000 0x0 0x0 0x0>; 636*4882a593Smuzhiyun wlf,micbias-cfg = <0x2f 0x2b>; 637*4882a593Smuzhiyun 638*4882a593Smuzhiyun wlf,lineout1-feedback; 639*4882a593Smuzhiyun wlf,lineout1-se; 640*4882a593Smuzhiyun wlf,lineout2-se; 641*4882a593Smuzhiyun wlf,ldoena-always-driven; 642*4882a593Smuzhiyun 643*4882a593Smuzhiyun AVDD2-supply = <&vbatt_reg>; 644*4882a593Smuzhiyun DBVDD1-supply = <&ldo3_reg>; 645*4882a593Smuzhiyun DBVDD2-supply = <&vbatt_reg>; 646*4882a593Smuzhiyun DBVDD3-supply = <&vbatt_reg>; 647*4882a593Smuzhiyun DCVDD-supply = <&ldo3_reg>; 648*4882a593Smuzhiyun CPVDD-supply = <&vbatt_reg>; 649*4882a593Smuzhiyun SPKVDD1-supply = <&vbatt_reg>; 650*4882a593Smuzhiyun SPKVDD2-supply = <&vbatt_reg>; 651*4882a593Smuzhiyun wlf,ldo1ena = <&gpj0 4 0>; 652*4882a593Smuzhiyun wlf,ldo2ena = <&gpj0 4 0>; 653*4882a593Smuzhiyun }; 654*4882a593Smuzhiyun}; 655*4882a593Smuzhiyun 656*4882a593Smuzhiyun&i2c_5 { 657*4882a593Smuzhiyun status = "okay"; 658*4882a593Smuzhiyun}; 659*4882a593Smuzhiyun 660*4882a593Smuzhiyun&i2c_7 { 661*4882a593Smuzhiyun samsung,i2c-sda-delay = <100>; 662*4882a593Smuzhiyun samsung,i2c-slave-addr = <0x10>; 663*4882a593Smuzhiyun samsung,i2c-max-bus-freq = <100000>; 664*4882a593Smuzhiyun pinctrl-0 = <&i2c7_bus>; 665*4882a593Smuzhiyun pinctrl-names = "default"; 666*4882a593Smuzhiyun status = "okay"; 667*4882a593Smuzhiyun 668*4882a593Smuzhiyun max77686: max77686_pmic@9 { 669*4882a593Smuzhiyun compatible = "maxim,max77686"; 670*4882a593Smuzhiyun interrupt-parent = <&gpx0>; 671*4882a593Smuzhiyun interrupts = <7 IRQ_TYPE_LEVEL_LOW>; 672*4882a593Smuzhiyun pinctrl-0 = <&max77686_irq>; 673*4882a593Smuzhiyun pinctrl-names = "default"; 674*4882a593Smuzhiyun reg = <0x09>; 675*4882a593Smuzhiyun #clock-cells = <1>; 676*4882a593Smuzhiyun 677*4882a593Smuzhiyun voltage-regulators { 678*4882a593Smuzhiyun ldo1_reg: LDO1 { 679*4882a593Smuzhiyun regulator-name = "VALIVE_1.0V_AP"; 680*4882a593Smuzhiyun regulator-min-microvolt = <1000000>; 681*4882a593Smuzhiyun regulator-max-microvolt = <1000000>; 682*4882a593Smuzhiyun regulator-always-on; 683*4882a593Smuzhiyun }; 684*4882a593Smuzhiyun 685*4882a593Smuzhiyun ldo2_reg: LDO2 { 686*4882a593Smuzhiyun regulator-name = "VM1M2_1.2V_AP"; 687*4882a593Smuzhiyun regulator-min-microvolt = <1200000>; 688*4882a593Smuzhiyun regulator-max-microvolt = <1200000>; 689*4882a593Smuzhiyun regulator-always-on; 690*4882a593Smuzhiyun regulator-state-mem { 691*4882a593Smuzhiyun regulator-on-in-suspend; 692*4882a593Smuzhiyun }; 693*4882a593Smuzhiyun }; 694*4882a593Smuzhiyun 695*4882a593Smuzhiyun ldo3_reg: LDO3 { 696*4882a593Smuzhiyun regulator-name = "VCC_1.8V_AP"; 697*4882a593Smuzhiyun regulator-min-microvolt = <1800000>; 698*4882a593Smuzhiyun regulator-max-microvolt = <1800000>; 699*4882a593Smuzhiyun regulator-always-on; 700*4882a593Smuzhiyun }; 701*4882a593Smuzhiyun 702*4882a593Smuzhiyun ldo4_reg: LDO4 { 703*4882a593Smuzhiyun regulator-name = "VCC_2.8V_AP"; 704*4882a593Smuzhiyun regulator-min-microvolt = <2800000>; 705*4882a593Smuzhiyun regulator-max-microvolt = <2800000>; 706*4882a593Smuzhiyun regulator-always-on; 707*4882a593Smuzhiyun }; 708*4882a593Smuzhiyun 709*4882a593Smuzhiyun ldo5_reg: LDO5 { 710*4882a593Smuzhiyun regulator-name = "VCC_1.8V_IO"; 711*4882a593Smuzhiyun regulator-min-microvolt = <1800000>; 712*4882a593Smuzhiyun regulator-max-microvolt = <1800000>; 713*4882a593Smuzhiyun regulator-always-on; 714*4882a593Smuzhiyun }; 715*4882a593Smuzhiyun 716*4882a593Smuzhiyun ldo6_reg: LDO6 { 717*4882a593Smuzhiyun regulator-name = "VMPLL_1.0V_AP"; 718*4882a593Smuzhiyun regulator-min-microvolt = <1000000>; 719*4882a593Smuzhiyun regulator-max-microvolt = <1000000>; 720*4882a593Smuzhiyun regulator-always-on; 721*4882a593Smuzhiyun regulator-state-mem { 722*4882a593Smuzhiyun regulator-on-in-suspend; 723*4882a593Smuzhiyun }; 724*4882a593Smuzhiyun }; 725*4882a593Smuzhiyun 726*4882a593Smuzhiyun ldo7_reg: LDO7 { 727*4882a593Smuzhiyun regulator-name = "VPLL_1.0V_AP"; 728*4882a593Smuzhiyun regulator-min-microvolt = <1000000>; 729*4882a593Smuzhiyun regulator-max-microvolt = <1000000>; 730*4882a593Smuzhiyun regulator-always-on; 731*4882a593Smuzhiyun regulator-state-mem { 732*4882a593Smuzhiyun regulator-on-in-suspend; 733*4882a593Smuzhiyun }; 734*4882a593Smuzhiyun }; 735*4882a593Smuzhiyun 736*4882a593Smuzhiyun ldo8_reg: LDO8 { 737*4882a593Smuzhiyun regulator-name = "VMIPI_1.0V"; 738*4882a593Smuzhiyun regulator-min-microvolt = <1000000>; 739*4882a593Smuzhiyun regulator-max-microvolt = <1000000>; 740*4882a593Smuzhiyun regulator-state-mem { 741*4882a593Smuzhiyun regulator-off-in-suspend; 742*4882a593Smuzhiyun }; 743*4882a593Smuzhiyun }; 744*4882a593Smuzhiyun 745*4882a593Smuzhiyun ldo9_reg: LDO9 { 746*4882a593Smuzhiyun regulator-name = "CAM_ISP_MIPI_1.2V"; 747*4882a593Smuzhiyun regulator-min-microvolt = <1200000>; 748*4882a593Smuzhiyun regulator-max-microvolt = <1200000>; 749*4882a593Smuzhiyun }; 750*4882a593Smuzhiyun 751*4882a593Smuzhiyun ldo10_reg: LDO10 { 752*4882a593Smuzhiyun regulator-name = "VMIPI_1.8V"; 753*4882a593Smuzhiyun regulator-min-microvolt = <1800000>; 754*4882a593Smuzhiyun regulator-max-microvolt = <1800000>; 755*4882a593Smuzhiyun regulator-state-mem { 756*4882a593Smuzhiyun regulator-off-in-suspend; 757*4882a593Smuzhiyun }; 758*4882a593Smuzhiyun }; 759*4882a593Smuzhiyun 760*4882a593Smuzhiyun ldo11_reg: LDO11 { 761*4882a593Smuzhiyun regulator-name = "VABB1_1.95V"; 762*4882a593Smuzhiyun regulator-min-microvolt = <1950000>; 763*4882a593Smuzhiyun regulator-max-microvolt = <1950000>; 764*4882a593Smuzhiyun regulator-always-on; 765*4882a593Smuzhiyun regulator-state-mem { 766*4882a593Smuzhiyun regulator-off-in-suspend; 767*4882a593Smuzhiyun }; 768*4882a593Smuzhiyun }; 769*4882a593Smuzhiyun 770*4882a593Smuzhiyun ldo12_reg: LDO12 { 771*4882a593Smuzhiyun regulator-name = "VUOTG_3.0V"; 772*4882a593Smuzhiyun regulator-min-microvolt = <3000000>; 773*4882a593Smuzhiyun regulator-max-microvolt = <3000000>; 774*4882a593Smuzhiyun regulator-state-mem { 775*4882a593Smuzhiyun regulator-off-in-suspend; 776*4882a593Smuzhiyun }; 777*4882a593Smuzhiyun }; 778*4882a593Smuzhiyun 779*4882a593Smuzhiyun ldo13_reg: LDO13 { 780*4882a593Smuzhiyun regulator-name = "NFC_AVDD_1.8V"; 781*4882a593Smuzhiyun regulator-min-microvolt = <1800000>; 782*4882a593Smuzhiyun regulator-max-microvolt = <1800000>; 783*4882a593Smuzhiyun }; 784*4882a593Smuzhiyun 785*4882a593Smuzhiyun ldo14_reg: LDO14 { 786*4882a593Smuzhiyun regulator-name = "VABB2_1.95V"; 787*4882a593Smuzhiyun regulator-min-microvolt = <1950000>; 788*4882a593Smuzhiyun regulator-max-microvolt = <1950000>; 789*4882a593Smuzhiyun regulator-always-on; 790*4882a593Smuzhiyun regulator-state-mem { 791*4882a593Smuzhiyun regulator-off-in-suspend; 792*4882a593Smuzhiyun }; 793*4882a593Smuzhiyun }; 794*4882a593Smuzhiyun 795*4882a593Smuzhiyun ldo15_reg: LDO15 { 796*4882a593Smuzhiyun regulator-name = "VHSIC_1.0V"; 797*4882a593Smuzhiyun regulator-min-microvolt = <1000000>; 798*4882a593Smuzhiyun regulator-max-microvolt = <1000000>; 799*4882a593Smuzhiyun regulator-state-mem { 800*4882a593Smuzhiyun regulator-on-in-suspend; 801*4882a593Smuzhiyun }; 802*4882a593Smuzhiyun }; 803*4882a593Smuzhiyun 804*4882a593Smuzhiyun ldo16_reg: LDO16 { 805*4882a593Smuzhiyun regulator-name = "VHSIC_1.8V"; 806*4882a593Smuzhiyun regulator-min-microvolt = <1800000>; 807*4882a593Smuzhiyun regulator-max-microvolt = <1800000>; 808*4882a593Smuzhiyun regulator-state-mem { 809*4882a593Smuzhiyun regulator-on-in-suspend; 810*4882a593Smuzhiyun }; 811*4882a593Smuzhiyun }; 812*4882a593Smuzhiyun 813*4882a593Smuzhiyun ldo17_reg: LDO17 { 814*4882a593Smuzhiyun regulator-name = "CAM_SENSOR_CORE_1.2V"; 815*4882a593Smuzhiyun regulator-min-microvolt = <1200000>; 816*4882a593Smuzhiyun regulator-max-microvolt = <1200000>; 817*4882a593Smuzhiyun }; 818*4882a593Smuzhiyun 819*4882a593Smuzhiyun ldo18_reg: LDO18 { 820*4882a593Smuzhiyun regulator-name = "CAM_ISP_SEN_IO_1.8V"; 821*4882a593Smuzhiyun regulator-min-microvolt = <1800000>; 822*4882a593Smuzhiyun regulator-max-microvolt = <1800000>; 823*4882a593Smuzhiyun }; 824*4882a593Smuzhiyun 825*4882a593Smuzhiyun ldo19_reg: LDO19 { 826*4882a593Smuzhiyun regulator-name = "VT_CAM_1.8V"; 827*4882a593Smuzhiyun regulator-min-microvolt = <1800000>; 828*4882a593Smuzhiyun regulator-max-microvolt = <1800000>; 829*4882a593Smuzhiyun }; 830*4882a593Smuzhiyun 831*4882a593Smuzhiyun ldo20_reg: LDO20 { 832*4882a593Smuzhiyun regulator-name = "VDDQ_PRE_1.8V"; 833*4882a593Smuzhiyun regulator-min-microvolt = <1800000>; 834*4882a593Smuzhiyun regulator-max-microvolt = <1800000>; 835*4882a593Smuzhiyun }; 836*4882a593Smuzhiyun 837*4882a593Smuzhiyun ldo21_reg: LDO21 { 838*4882a593Smuzhiyun regulator-name = "VTF_2.8V"; 839*4882a593Smuzhiyun regulator-min-microvolt = <2800000>; 840*4882a593Smuzhiyun regulator-max-microvolt = <2800000>; 841*4882a593Smuzhiyun maxim,ena-gpios = <&gpy2 0 GPIO_ACTIVE_HIGH>; 842*4882a593Smuzhiyun }; 843*4882a593Smuzhiyun 844*4882a593Smuzhiyun ldo22_reg: LDO22 { 845*4882a593Smuzhiyun regulator-name = "VMEM_VDD_2.8V"; 846*4882a593Smuzhiyun regulator-min-microvolt = <2800000>; 847*4882a593Smuzhiyun regulator-max-microvolt = <2800000>; 848*4882a593Smuzhiyun maxim,ena-gpios = <&gpk0 2 GPIO_ACTIVE_HIGH>; 849*4882a593Smuzhiyun }; 850*4882a593Smuzhiyun 851*4882a593Smuzhiyun ldo23_reg: LDO23 { 852*4882a593Smuzhiyun regulator-name = "TSP_AVDD_3.3V"; 853*4882a593Smuzhiyun regulator-min-microvolt = <3300000>; 854*4882a593Smuzhiyun regulator-max-microvolt = <3300000>; 855*4882a593Smuzhiyun }; 856*4882a593Smuzhiyun 857*4882a593Smuzhiyun ldo24_reg: LDO24 { 858*4882a593Smuzhiyun regulator-name = "TSP_VDD_1.8V"; 859*4882a593Smuzhiyun regulator-min-microvolt = <1800000>; 860*4882a593Smuzhiyun regulator-max-microvolt = <1800000>; 861*4882a593Smuzhiyun }; 862*4882a593Smuzhiyun 863*4882a593Smuzhiyun ldo25_reg: LDO25 { 864*4882a593Smuzhiyun regulator-name = "LDO25"; 865*4882a593Smuzhiyun }; 866*4882a593Smuzhiyun 867*4882a593Smuzhiyun ldo26_reg: LDO26 { 868*4882a593Smuzhiyun regulator-name = "MOTOR_VCC_3.0V"; 869*4882a593Smuzhiyun regulator-min-microvolt = <3000000>; 870*4882a593Smuzhiyun regulator-max-microvolt = <3000000>; 871*4882a593Smuzhiyun }; 872*4882a593Smuzhiyun 873*4882a593Smuzhiyun buck1_reg: BUCK1 { 874*4882a593Smuzhiyun regulator-name = "VDD_MIF"; 875*4882a593Smuzhiyun regulator-min-microvolt = <850000>; 876*4882a593Smuzhiyun regulator-max-microvolt = <1100000>; 877*4882a593Smuzhiyun regulator-always-on; 878*4882a593Smuzhiyun regulator-boot-on; 879*4882a593Smuzhiyun regulator-state-mem { 880*4882a593Smuzhiyun regulator-off-in-suspend; 881*4882a593Smuzhiyun }; 882*4882a593Smuzhiyun }; 883*4882a593Smuzhiyun 884*4882a593Smuzhiyun buck2_reg: BUCK2 { 885*4882a593Smuzhiyun regulator-name = "VDD_ARM"; 886*4882a593Smuzhiyun regulator-min-microvolt = <850000>; 887*4882a593Smuzhiyun regulator-max-microvolt = <1500000>; 888*4882a593Smuzhiyun regulator-always-on; 889*4882a593Smuzhiyun regulator-boot-on; 890*4882a593Smuzhiyun regulator-state-mem { 891*4882a593Smuzhiyun regulator-on-in-suspend; 892*4882a593Smuzhiyun }; 893*4882a593Smuzhiyun }; 894*4882a593Smuzhiyun 895*4882a593Smuzhiyun buck3_reg: BUCK3 { 896*4882a593Smuzhiyun regulator-name = "VDD_INT"; 897*4882a593Smuzhiyun regulator-min-microvolt = <850000>; 898*4882a593Smuzhiyun regulator-max-microvolt = <1150000>; 899*4882a593Smuzhiyun regulator-always-on; 900*4882a593Smuzhiyun regulator-boot-on; 901*4882a593Smuzhiyun regulator-state-mem { 902*4882a593Smuzhiyun regulator-off-in-suspend; 903*4882a593Smuzhiyun }; 904*4882a593Smuzhiyun }; 905*4882a593Smuzhiyun 906*4882a593Smuzhiyun buck4_reg: BUCK4 { 907*4882a593Smuzhiyun regulator-name = "VDD_G3D"; 908*4882a593Smuzhiyun regulator-min-microvolt = <850000>; 909*4882a593Smuzhiyun regulator-max-microvolt = <1150000>; 910*4882a593Smuzhiyun regulator-boot-on; 911*4882a593Smuzhiyun regulator-state-mem { 912*4882a593Smuzhiyun regulator-off-in-suspend; 913*4882a593Smuzhiyun }; 914*4882a593Smuzhiyun }; 915*4882a593Smuzhiyun 916*4882a593Smuzhiyun buck5_reg: BUCK5 { 917*4882a593Smuzhiyun regulator-name = "VMEM_1.2V_AP"; 918*4882a593Smuzhiyun regulator-min-microvolt = <1200000>; 919*4882a593Smuzhiyun regulator-max-microvolt = <1200000>; 920*4882a593Smuzhiyun regulator-always-on; 921*4882a593Smuzhiyun }; 922*4882a593Smuzhiyun 923*4882a593Smuzhiyun buck6_reg: BUCK6 { 924*4882a593Smuzhiyun regulator-name = "VCC_SUB_1.35V"; 925*4882a593Smuzhiyun regulator-min-microvolt = <1350000>; 926*4882a593Smuzhiyun regulator-max-microvolt = <1350000>; 927*4882a593Smuzhiyun regulator-always-on; 928*4882a593Smuzhiyun }; 929*4882a593Smuzhiyun 930*4882a593Smuzhiyun buck7_reg: BUCK7 { 931*4882a593Smuzhiyun regulator-name = "VCC_SUB_2.0V"; 932*4882a593Smuzhiyun regulator-min-microvolt = <2000000>; 933*4882a593Smuzhiyun regulator-max-microvolt = <2000000>; 934*4882a593Smuzhiyun regulator-always-on; 935*4882a593Smuzhiyun }; 936*4882a593Smuzhiyun 937*4882a593Smuzhiyun buck8_reg: BUCK8 { 938*4882a593Smuzhiyun regulator-name = "VMEM_VDDF_3.0V"; 939*4882a593Smuzhiyun regulator-min-microvolt = <2850000>; 940*4882a593Smuzhiyun regulator-max-microvolt = <2850000>; 941*4882a593Smuzhiyun maxim,ena-gpios = <&gpk0 2 GPIO_ACTIVE_HIGH>; 942*4882a593Smuzhiyun }; 943*4882a593Smuzhiyun 944*4882a593Smuzhiyun buck9_reg: BUCK9 { 945*4882a593Smuzhiyun regulator-name = "CAM_ISP_CORE_1.2V"; 946*4882a593Smuzhiyun regulator-min-microvolt = <1000000>; 947*4882a593Smuzhiyun regulator-max-microvolt = <1200000>; 948*4882a593Smuzhiyun }; 949*4882a593Smuzhiyun }; 950*4882a593Smuzhiyun }; 951*4882a593Smuzhiyun}; 952*4882a593Smuzhiyun 953*4882a593Smuzhiyun&i2c_8 { 954*4882a593Smuzhiyun status = "okay"; 955*4882a593Smuzhiyun}; 956*4882a593Smuzhiyun 957*4882a593Smuzhiyun&i2s0 { 958*4882a593Smuzhiyun pinctrl-0 = <&i2s0_bus>; 959*4882a593Smuzhiyun pinctrl-names = "default"; 960*4882a593Smuzhiyun status = "okay"; 961*4882a593Smuzhiyun}; 962*4882a593Smuzhiyun 963*4882a593Smuzhiyun&mixer { 964*4882a593Smuzhiyun status = "okay"; 965*4882a593Smuzhiyun}; 966*4882a593Smuzhiyun 967*4882a593Smuzhiyun&mshc_0 { 968*4882a593Smuzhiyun broken-cd; 969*4882a593Smuzhiyun non-removable; 970*4882a593Smuzhiyun card-detect-delay = <200>; 971*4882a593Smuzhiyun vmmc-supply = <&ldo22_reg>; 972*4882a593Smuzhiyun clock-frequency = <400000000>; 973*4882a593Smuzhiyun samsung,dw-mshc-ciu-div = <0>; 974*4882a593Smuzhiyun samsung,dw-mshc-sdr-timing = <2 3>; 975*4882a593Smuzhiyun samsung,dw-mshc-ddr-timing = <1 2>; 976*4882a593Smuzhiyun pinctrl-0 = <&sd4_clk &sd4_cmd &sd4_bus4 &sd4_bus8>; 977*4882a593Smuzhiyun pinctrl-names = "default"; 978*4882a593Smuzhiyun status = "okay"; 979*4882a593Smuzhiyun bus-width = <8>; 980*4882a593Smuzhiyun cap-mmc-highspeed; 981*4882a593Smuzhiyun}; 982*4882a593Smuzhiyun 983*4882a593Smuzhiyun&pmu_system_controller { 984*4882a593Smuzhiyun assigned-clocks = <&pmu_system_controller 0>; 985*4882a593Smuzhiyun assigned-clock-parents = <&clock CLK_XUSBXTI>; 986*4882a593Smuzhiyun}; 987*4882a593Smuzhiyun 988*4882a593Smuzhiyun&pinctrl_0 { 989*4882a593Smuzhiyun pinctrl-names = "default"; 990*4882a593Smuzhiyun pinctrl-0 = <&sleep0>; 991*4882a593Smuzhiyun 992*4882a593Smuzhiyun mhl_int: mhl-int { 993*4882a593Smuzhiyun samsung,pins = "gpf3-5"; 994*4882a593Smuzhiyun samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; 995*4882a593Smuzhiyun }; 996*4882a593Smuzhiyun 997*4882a593Smuzhiyun i2c_mhl_bus: i2c-mhl-bus { 998*4882a593Smuzhiyun samsung,pins = "gpf0-4", "gpf0-6"; 999*4882a593Smuzhiyun samsung,pin-function = <EXYNOS_PIN_FUNC_2>; 1000*4882a593Smuzhiyun samsung,pin-pud = <EXYNOS_PIN_PULL_DOWN>; 1001*4882a593Smuzhiyun samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>; 1002*4882a593Smuzhiyun }; 1003*4882a593Smuzhiyun 1004*4882a593Smuzhiyun sleep0: sleep-states { 1005*4882a593Smuzhiyun PIN_SLP(gpa0-0, INPUT, NONE); 1006*4882a593Smuzhiyun PIN_SLP(gpa0-1, OUT0, NONE); 1007*4882a593Smuzhiyun PIN_SLP(gpa0-2, INPUT, NONE); 1008*4882a593Smuzhiyun PIN_SLP(gpa0-3, INPUT, UP); 1009*4882a593Smuzhiyun PIN_SLP(gpa0-4, INPUT, NONE); 1010*4882a593Smuzhiyun PIN_SLP(gpa0-5, INPUT, DOWN); 1011*4882a593Smuzhiyun PIN_SLP(gpa0-6, INPUT, DOWN); 1012*4882a593Smuzhiyun PIN_SLP(gpa0-7, INPUT, UP); 1013*4882a593Smuzhiyun 1014*4882a593Smuzhiyun PIN_SLP(gpa1-0, INPUT, DOWN); 1015*4882a593Smuzhiyun PIN_SLP(gpa1-1, INPUT, DOWN); 1016*4882a593Smuzhiyun PIN_SLP(gpa1-2, INPUT, DOWN); 1017*4882a593Smuzhiyun PIN_SLP(gpa1-3, INPUT, DOWN); 1018*4882a593Smuzhiyun PIN_SLP(gpa1-4, INPUT, DOWN); 1019*4882a593Smuzhiyun PIN_SLP(gpa1-5, INPUT, DOWN); 1020*4882a593Smuzhiyun 1021*4882a593Smuzhiyun PIN_SLP(gpb-0, INPUT, NONE); 1022*4882a593Smuzhiyun PIN_SLP(gpb-1, INPUT, NONE); 1023*4882a593Smuzhiyun PIN_SLP(gpb-2, INPUT, NONE); 1024*4882a593Smuzhiyun PIN_SLP(gpb-3, INPUT, NONE); 1025*4882a593Smuzhiyun PIN_SLP(gpb-4, INPUT, DOWN); 1026*4882a593Smuzhiyun PIN_SLP(gpb-5, INPUT, UP); 1027*4882a593Smuzhiyun PIN_SLP(gpb-6, INPUT, DOWN); 1028*4882a593Smuzhiyun PIN_SLP(gpb-7, INPUT, DOWN); 1029*4882a593Smuzhiyun 1030*4882a593Smuzhiyun PIN_SLP(gpc0-0, INPUT, DOWN); 1031*4882a593Smuzhiyun PIN_SLP(gpc0-1, INPUT, DOWN); 1032*4882a593Smuzhiyun PIN_SLP(gpc0-2, INPUT, DOWN); 1033*4882a593Smuzhiyun PIN_SLP(gpc0-3, INPUT, DOWN); 1034*4882a593Smuzhiyun PIN_SLP(gpc0-4, INPUT, DOWN); 1035*4882a593Smuzhiyun 1036*4882a593Smuzhiyun PIN_SLP(gpc1-0, INPUT, NONE); 1037*4882a593Smuzhiyun PIN_SLP(gpc1-1, PREV, NONE); 1038*4882a593Smuzhiyun PIN_SLP(gpc1-2, INPUT, NONE); 1039*4882a593Smuzhiyun PIN_SLP(gpc1-3, INPUT, NONE); 1040*4882a593Smuzhiyun PIN_SLP(gpc1-4, INPUT, NONE); 1041*4882a593Smuzhiyun 1042*4882a593Smuzhiyun PIN_SLP(gpd0-0, INPUT, DOWN); 1043*4882a593Smuzhiyun PIN_SLP(gpd0-1, INPUT, DOWN); 1044*4882a593Smuzhiyun PIN_SLP(gpd0-2, INPUT, NONE); 1045*4882a593Smuzhiyun PIN_SLP(gpd0-3, INPUT, NONE); 1046*4882a593Smuzhiyun 1047*4882a593Smuzhiyun PIN_SLP(gpd1-0, INPUT, DOWN); 1048*4882a593Smuzhiyun PIN_SLP(gpd1-1, INPUT, DOWN); 1049*4882a593Smuzhiyun PIN_SLP(gpd1-2, INPUT, NONE); 1050*4882a593Smuzhiyun PIN_SLP(gpd1-3, INPUT, NONE); 1051*4882a593Smuzhiyun 1052*4882a593Smuzhiyun PIN_SLP(gpf0-0, INPUT, NONE); 1053*4882a593Smuzhiyun PIN_SLP(gpf0-1, INPUT, NONE); 1054*4882a593Smuzhiyun PIN_SLP(gpf0-2, INPUT, DOWN); 1055*4882a593Smuzhiyun PIN_SLP(gpf0-3, INPUT, DOWN); 1056*4882a593Smuzhiyun PIN_SLP(gpf0-4, INPUT, NONE); 1057*4882a593Smuzhiyun PIN_SLP(gpf0-5, INPUT, DOWN); 1058*4882a593Smuzhiyun PIN_SLP(gpf0-6, INPUT, NONE); 1059*4882a593Smuzhiyun PIN_SLP(gpf0-7, INPUT, DOWN); 1060*4882a593Smuzhiyun 1061*4882a593Smuzhiyun PIN_SLP(gpf1-0, INPUT, DOWN); 1062*4882a593Smuzhiyun PIN_SLP(gpf1-1, INPUT, DOWN); 1063*4882a593Smuzhiyun PIN_SLP(gpf1-2, INPUT, DOWN); 1064*4882a593Smuzhiyun PIN_SLP(gpf1-3, INPUT, DOWN); 1065*4882a593Smuzhiyun PIN_SLP(gpf1-4, INPUT, NONE); 1066*4882a593Smuzhiyun PIN_SLP(gpf1-5, INPUT, NONE); 1067*4882a593Smuzhiyun PIN_SLP(gpf1-6, INPUT, DOWN); 1068*4882a593Smuzhiyun PIN_SLP(gpf1-7, PREV, NONE); 1069*4882a593Smuzhiyun 1070*4882a593Smuzhiyun PIN_SLP(gpf2-0, PREV, NONE); 1071*4882a593Smuzhiyun PIN_SLP(gpf2-1, INPUT, DOWN); 1072*4882a593Smuzhiyun PIN_SLP(gpf2-2, INPUT, DOWN); 1073*4882a593Smuzhiyun PIN_SLP(gpf2-3, INPUT, DOWN); 1074*4882a593Smuzhiyun PIN_SLP(gpf2-4, INPUT, DOWN); 1075*4882a593Smuzhiyun PIN_SLP(gpf2-5, INPUT, DOWN); 1076*4882a593Smuzhiyun PIN_SLP(gpf2-6, INPUT, NONE); 1077*4882a593Smuzhiyun PIN_SLP(gpf2-7, INPUT, NONE); 1078*4882a593Smuzhiyun 1079*4882a593Smuzhiyun PIN_SLP(gpf3-0, INPUT, NONE); 1080*4882a593Smuzhiyun PIN_SLP(gpf3-1, PREV, NONE); 1081*4882a593Smuzhiyun PIN_SLP(gpf3-2, PREV, NONE); 1082*4882a593Smuzhiyun PIN_SLP(gpf3-3, PREV, NONE); 1083*4882a593Smuzhiyun PIN_SLP(gpf3-4, OUT1, NONE); 1084*4882a593Smuzhiyun PIN_SLP(gpf3-5, INPUT, DOWN); 1085*4882a593Smuzhiyun 1086*4882a593Smuzhiyun PIN_SLP(gpj0-0, PREV, NONE); 1087*4882a593Smuzhiyun PIN_SLP(gpj0-1, PREV, NONE); 1088*4882a593Smuzhiyun PIN_SLP(gpj0-2, PREV, NONE); 1089*4882a593Smuzhiyun PIN_SLP(gpj0-3, INPUT, DOWN); 1090*4882a593Smuzhiyun PIN_SLP(gpj0-4, PREV, NONE); 1091*4882a593Smuzhiyun PIN_SLP(gpj0-5, PREV, NONE); 1092*4882a593Smuzhiyun PIN_SLP(gpj0-6, INPUT, DOWN); 1093*4882a593Smuzhiyun PIN_SLP(gpj0-7, INPUT, DOWN); 1094*4882a593Smuzhiyun 1095*4882a593Smuzhiyun PIN_SLP(gpj1-0, INPUT, DOWN); 1096*4882a593Smuzhiyun PIN_SLP(gpj1-1, PREV, NONE); 1097*4882a593Smuzhiyun PIN_SLP(gpj1-2, PREV, NONE); 1098*4882a593Smuzhiyun PIN_SLP(gpj1-3, INPUT, DOWN); 1099*4882a593Smuzhiyun PIN_SLP(gpj1-4, INPUT, DOWN); 1100*4882a593Smuzhiyun }; 1101*4882a593Smuzhiyun}; 1102*4882a593Smuzhiyun 1103*4882a593Smuzhiyun&pinctrl_1 { 1104*4882a593Smuzhiyun pinctrl-names = "default"; 1105*4882a593Smuzhiyun pinctrl-0 = <&sleep1>; 1106*4882a593Smuzhiyun 1107*4882a593Smuzhiyun gpio_keys: gpio-keys { 1108*4882a593Smuzhiyun samsung,pins = "gpx0-1", "gpx2-2", "gpx2-7", "gpx3-3"; 1109*4882a593Smuzhiyun samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; 1110*4882a593Smuzhiyun }; 1111*4882a593Smuzhiyun 1112*4882a593Smuzhiyun max77686_irq: max77686-irq { 1113*4882a593Smuzhiyun samsung,pins = "gpx0-7"; 1114*4882a593Smuzhiyun samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; 1115*4882a593Smuzhiyun }; 1116*4882a593Smuzhiyun 1117*4882a593Smuzhiyun max77693_irq: max77693-irq { 1118*4882a593Smuzhiyun samsung,pins = "gpx1-5"; 1119*4882a593Smuzhiyun samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; 1120*4882a593Smuzhiyun }; 1121*4882a593Smuzhiyun 1122*4882a593Smuzhiyun max77693_fuel_irq: max77693-fuel-irq { 1123*4882a593Smuzhiyun samsung,pins = "gpx2-3"; 1124*4882a593Smuzhiyun samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; 1125*4882a593Smuzhiyun }; 1126*4882a593Smuzhiyun 1127*4882a593Smuzhiyun sdhci2_cd: sdhci2-cd-irq { 1128*4882a593Smuzhiyun samsung,pins = "gpx3-4"; 1129*4882a593Smuzhiyun samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; 1130*4882a593Smuzhiyun }; 1131*4882a593Smuzhiyun 1132*4882a593Smuzhiyun hdmi_hpd: hdmi-hpd { 1133*4882a593Smuzhiyun samsung,pins = "gpx3-7"; 1134*4882a593Smuzhiyun samsung,pin-pud = <EXYNOS_PIN_PULL_DOWN>; 1135*4882a593Smuzhiyun }; 1136*4882a593Smuzhiyun 1137*4882a593Smuzhiyun sleep1: sleep-states { 1138*4882a593Smuzhiyun PIN_SLP(gpk0-0, PREV, NONE); 1139*4882a593Smuzhiyun PIN_SLP(gpk0-1, PREV, NONE); 1140*4882a593Smuzhiyun PIN_SLP(gpk0-2, OUT0, NONE); 1141*4882a593Smuzhiyun PIN_SLP(gpk0-3, PREV, NONE); 1142*4882a593Smuzhiyun PIN_SLP(gpk0-4, PREV, NONE); 1143*4882a593Smuzhiyun PIN_SLP(gpk0-5, PREV, NONE); 1144*4882a593Smuzhiyun PIN_SLP(gpk0-6, PREV, NONE); 1145*4882a593Smuzhiyun 1146*4882a593Smuzhiyun PIN_SLP(gpk1-0, INPUT, DOWN); 1147*4882a593Smuzhiyun PIN_SLP(gpk1-1, INPUT, DOWN); 1148*4882a593Smuzhiyun PIN_SLP(gpk1-2, INPUT, DOWN); 1149*4882a593Smuzhiyun PIN_SLP(gpk1-3, PREV, NONE); 1150*4882a593Smuzhiyun PIN_SLP(gpk1-4, PREV, NONE); 1151*4882a593Smuzhiyun PIN_SLP(gpk1-5, PREV, NONE); 1152*4882a593Smuzhiyun PIN_SLP(gpk1-6, PREV, NONE); 1153*4882a593Smuzhiyun 1154*4882a593Smuzhiyun PIN_SLP(gpk2-0, INPUT, DOWN); 1155*4882a593Smuzhiyun PIN_SLP(gpk2-1, INPUT, DOWN); 1156*4882a593Smuzhiyun PIN_SLP(gpk2-2, INPUT, DOWN); 1157*4882a593Smuzhiyun PIN_SLP(gpk2-3, INPUT, DOWN); 1158*4882a593Smuzhiyun PIN_SLP(gpk2-4, INPUT, DOWN); 1159*4882a593Smuzhiyun PIN_SLP(gpk2-5, INPUT, DOWN); 1160*4882a593Smuzhiyun PIN_SLP(gpk2-6, INPUT, DOWN); 1161*4882a593Smuzhiyun 1162*4882a593Smuzhiyun PIN_SLP(gpk3-0, OUT0, NONE); 1163*4882a593Smuzhiyun PIN_SLP(gpk3-1, INPUT, NONE); 1164*4882a593Smuzhiyun PIN_SLP(gpk3-2, INPUT, DOWN); 1165*4882a593Smuzhiyun PIN_SLP(gpk3-3, INPUT, NONE); 1166*4882a593Smuzhiyun PIN_SLP(gpk3-4, INPUT, NONE); 1167*4882a593Smuzhiyun PIN_SLP(gpk3-5, INPUT, NONE); 1168*4882a593Smuzhiyun PIN_SLP(gpk3-6, INPUT, NONE); 1169*4882a593Smuzhiyun 1170*4882a593Smuzhiyun PIN_SLP(gpl0-0, INPUT, DOWN); 1171*4882a593Smuzhiyun PIN_SLP(gpl0-1, INPUT, DOWN); 1172*4882a593Smuzhiyun PIN_SLP(gpl0-2, INPUT, DOWN); 1173*4882a593Smuzhiyun PIN_SLP(gpl0-3, INPUT, DOWN); 1174*4882a593Smuzhiyun PIN_SLP(gpl0-4, PREV, NONE); 1175*4882a593Smuzhiyun PIN_SLP(gpl0-6, PREV, NONE); 1176*4882a593Smuzhiyun 1177*4882a593Smuzhiyun PIN_SLP(gpl1-0, INPUT, DOWN); 1178*4882a593Smuzhiyun PIN_SLP(gpl1-1, INPUT, DOWN); 1179*4882a593Smuzhiyun PIN_SLP(gpl2-0, INPUT, DOWN); 1180*4882a593Smuzhiyun PIN_SLP(gpl2-1, INPUT, DOWN); 1181*4882a593Smuzhiyun PIN_SLP(gpl2-2, INPUT, DOWN); 1182*4882a593Smuzhiyun PIN_SLP(gpl2-3, INPUT, DOWN); 1183*4882a593Smuzhiyun PIN_SLP(gpl2-4, INPUT, DOWN); 1184*4882a593Smuzhiyun PIN_SLP(gpl2-5, INPUT, DOWN); 1185*4882a593Smuzhiyun PIN_SLP(gpl2-6, PREV, NONE); 1186*4882a593Smuzhiyun PIN_SLP(gpl2-7, INPUT, DOWN); 1187*4882a593Smuzhiyun 1188*4882a593Smuzhiyun PIN_SLP(gpm0-0, INPUT, DOWN); 1189*4882a593Smuzhiyun PIN_SLP(gpm0-1, INPUT, DOWN); 1190*4882a593Smuzhiyun PIN_SLP(gpm0-2, INPUT, DOWN); 1191*4882a593Smuzhiyun PIN_SLP(gpm0-3, INPUT, DOWN); 1192*4882a593Smuzhiyun PIN_SLP(gpm0-4, INPUT, DOWN); 1193*4882a593Smuzhiyun PIN_SLP(gpm0-5, INPUT, DOWN); 1194*4882a593Smuzhiyun PIN_SLP(gpm0-6, INPUT, DOWN); 1195*4882a593Smuzhiyun PIN_SLP(gpm0-7, INPUT, DOWN); 1196*4882a593Smuzhiyun 1197*4882a593Smuzhiyun PIN_SLP(gpm1-0, INPUT, DOWN); 1198*4882a593Smuzhiyun PIN_SLP(gpm1-1, INPUT, DOWN); 1199*4882a593Smuzhiyun PIN_SLP(gpm1-2, INPUT, NONE); 1200*4882a593Smuzhiyun PIN_SLP(gpm1-3, INPUT, NONE); 1201*4882a593Smuzhiyun PIN_SLP(gpm1-4, INPUT, NONE); 1202*4882a593Smuzhiyun PIN_SLP(gpm1-5, INPUT, NONE); 1203*4882a593Smuzhiyun PIN_SLP(gpm1-6, INPUT, DOWN); 1204*4882a593Smuzhiyun 1205*4882a593Smuzhiyun PIN_SLP(gpm2-0, INPUT, NONE); 1206*4882a593Smuzhiyun PIN_SLP(gpm2-1, INPUT, NONE); 1207*4882a593Smuzhiyun PIN_SLP(gpm2-2, INPUT, DOWN); 1208*4882a593Smuzhiyun PIN_SLP(gpm2-3, INPUT, DOWN); 1209*4882a593Smuzhiyun PIN_SLP(gpm2-4, INPUT, DOWN); 1210*4882a593Smuzhiyun 1211*4882a593Smuzhiyun PIN_SLP(gpm3-0, PREV, NONE); 1212*4882a593Smuzhiyun PIN_SLP(gpm3-1, PREV, NONE); 1213*4882a593Smuzhiyun PIN_SLP(gpm3-2, PREV, NONE); 1214*4882a593Smuzhiyun PIN_SLP(gpm3-3, OUT1, NONE); 1215*4882a593Smuzhiyun PIN_SLP(gpm3-4, INPUT, DOWN); 1216*4882a593Smuzhiyun PIN_SLP(gpm3-5, INPUT, DOWN); 1217*4882a593Smuzhiyun PIN_SLP(gpm3-6, INPUT, DOWN); 1218*4882a593Smuzhiyun PIN_SLP(gpm3-7, INPUT, DOWN); 1219*4882a593Smuzhiyun 1220*4882a593Smuzhiyun PIN_SLP(gpm4-0, INPUT, DOWN); 1221*4882a593Smuzhiyun PIN_SLP(gpm4-1, INPUT, DOWN); 1222*4882a593Smuzhiyun PIN_SLP(gpm4-2, INPUT, DOWN); 1223*4882a593Smuzhiyun PIN_SLP(gpm4-3, INPUT, DOWN); 1224*4882a593Smuzhiyun PIN_SLP(gpm4-4, INPUT, DOWN); 1225*4882a593Smuzhiyun PIN_SLP(gpm4-5, INPUT, DOWN); 1226*4882a593Smuzhiyun PIN_SLP(gpm4-6, INPUT, DOWN); 1227*4882a593Smuzhiyun PIN_SLP(gpm4-7, INPUT, DOWN); 1228*4882a593Smuzhiyun 1229*4882a593Smuzhiyun PIN_SLP(gpy0-0, INPUT, DOWN); 1230*4882a593Smuzhiyun PIN_SLP(gpy0-1, INPUT, DOWN); 1231*4882a593Smuzhiyun PIN_SLP(gpy0-2, INPUT, DOWN); 1232*4882a593Smuzhiyun PIN_SLP(gpy0-3, INPUT, DOWN); 1233*4882a593Smuzhiyun PIN_SLP(gpy0-4, INPUT, DOWN); 1234*4882a593Smuzhiyun PIN_SLP(gpy0-5, INPUT, DOWN); 1235*4882a593Smuzhiyun 1236*4882a593Smuzhiyun PIN_SLP(gpy1-0, INPUT, DOWN); 1237*4882a593Smuzhiyun PIN_SLP(gpy1-1, INPUT, DOWN); 1238*4882a593Smuzhiyun PIN_SLP(gpy1-2, INPUT, DOWN); 1239*4882a593Smuzhiyun PIN_SLP(gpy1-3, INPUT, DOWN); 1240*4882a593Smuzhiyun 1241*4882a593Smuzhiyun PIN_SLP(gpy2-0, PREV, NONE); 1242*4882a593Smuzhiyun PIN_SLP(gpy2-1, INPUT, DOWN); 1243*4882a593Smuzhiyun PIN_SLP(gpy2-2, INPUT, NONE); 1244*4882a593Smuzhiyun PIN_SLP(gpy2-3, INPUT, NONE); 1245*4882a593Smuzhiyun PIN_SLP(gpy2-4, INPUT, NONE); 1246*4882a593Smuzhiyun PIN_SLP(gpy2-5, INPUT, NONE); 1247*4882a593Smuzhiyun 1248*4882a593Smuzhiyun PIN_SLP(gpy3-0, INPUT, DOWN); 1249*4882a593Smuzhiyun PIN_SLP(gpy3-1, INPUT, DOWN); 1250*4882a593Smuzhiyun PIN_SLP(gpy3-2, INPUT, DOWN); 1251*4882a593Smuzhiyun PIN_SLP(gpy3-3, INPUT, DOWN); 1252*4882a593Smuzhiyun PIN_SLP(gpy3-4, INPUT, DOWN); 1253*4882a593Smuzhiyun PIN_SLP(gpy3-5, INPUT, DOWN); 1254*4882a593Smuzhiyun PIN_SLP(gpy3-6, INPUT, DOWN); 1255*4882a593Smuzhiyun PIN_SLP(gpy3-7, INPUT, DOWN); 1256*4882a593Smuzhiyun 1257*4882a593Smuzhiyun PIN_SLP(gpy4-0, INPUT, DOWN); 1258*4882a593Smuzhiyun PIN_SLP(gpy4-1, INPUT, DOWN); 1259*4882a593Smuzhiyun PIN_SLP(gpy4-2, INPUT, DOWN); 1260*4882a593Smuzhiyun PIN_SLP(gpy4-3, INPUT, DOWN); 1261*4882a593Smuzhiyun PIN_SLP(gpy4-4, INPUT, DOWN); 1262*4882a593Smuzhiyun PIN_SLP(gpy4-5, INPUT, DOWN); 1263*4882a593Smuzhiyun PIN_SLP(gpy4-6, INPUT, DOWN); 1264*4882a593Smuzhiyun PIN_SLP(gpy4-7, INPUT, DOWN); 1265*4882a593Smuzhiyun 1266*4882a593Smuzhiyun PIN_SLP(gpy5-0, INPUT, DOWN); 1267*4882a593Smuzhiyun PIN_SLP(gpy5-1, INPUT, DOWN); 1268*4882a593Smuzhiyun PIN_SLP(gpy5-2, INPUT, DOWN); 1269*4882a593Smuzhiyun PIN_SLP(gpy5-3, INPUT, DOWN); 1270*4882a593Smuzhiyun PIN_SLP(gpy5-4, INPUT, DOWN); 1271*4882a593Smuzhiyun PIN_SLP(gpy5-5, INPUT, DOWN); 1272*4882a593Smuzhiyun PIN_SLP(gpy5-6, INPUT, DOWN); 1273*4882a593Smuzhiyun PIN_SLP(gpy5-7, INPUT, DOWN); 1274*4882a593Smuzhiyun 1275*4882a593Smuzhiyun PIN_SLP(gpy6-0, INPUT, DOWN); 1276*4882a593Smuzhiyun PIN_SLP(gpy6-1, INPUT, DOWN); 1277*4882a593Smuzhiyun PIN_SLP(gpy6-2, INPUT, DOWN); 1278*4882a593Smuzhiyun PIN_SLP(gpy6-3, INPUT, DOWN); 1279*4882a593Smuzhiyun PIN_SLP(gpy6-4, INPUT, DOWN); 1280*4882a593Smuzhiyun PIN_SLP(gpy6-5, INPUT, DOWN); 1281*4882a593Smuzhiyun PIN_SLP(gpy6-6, INPUT, DOWN); 1282*4882a593Smuzhiyun PIN_SLP(gpy6-7, INPUT, DOWN); 1283*4882a593Smuzhiyun }; 1284*4882a593Smuzhiyun}; 1285*4882a593Smuzhiyun 1286*4882a593Smuzhiyun&pinctrl_2 { 1287*4882a593Smuzhiyun pinctrl-names = "default"; 1288*4882a593Smuzhiyun pinctrl-0 = <&sleep2>; 1289*4882a593Smuzhiyun 1290*4882a593Smuzhiyun sleep2: sleep-states { 1291*4882a593Smuzhiyun PIN_SLP(gpz-0, INPUT, DOWN); 1292*4882a593Smuzhiyun PIN_SLP(gpz-1, INPUT, DOWN); 1293*4882a593Smuzhiyun PIN_SLP(gpz-2, INPUT, DOWN); 1294*4882a593Smuzhiyun PIN_SLP(gpz-3, INPUT, DOWN); 1295*4882a593Smuzhiyun PIN_SLP(gpz-4, INPUT, DOWN); 1296*4882a593Smuzhiyun PIN_SLP(gpz-5, INPUT, DOWN); 1297*4882a593Smuzhiyun PIN_SLP(gpz-6, INPUT, DOWN); 1298*4882a593Smuzhiyun }; 1299*4882a593Smuzhiyun}; 1300*4882a593Smuzhiyun 1301*4882a593Smuzhiyun&pinctrl_3 { 1302*4882a593Smuzhiyun pinctrl-names = "default"; 1303*4882a593Smuzhiyun pinctrl-0 = <&sleep3>; 1304*4882a593Smuzhiyun 1305*4882a593Smuzhiyun sleep3: sleep-states { 1306*4882a593Smuzhiyun PIN_SLP(gpv0-0, INPUT, DOWN); 1307*4882a593Smuzhiyun PIN_SLP(gpv0-1, INPUT, DOWN); 1308*4882a593Smuzhiyun PIN_SLP(gpv0-2, INPUT, DOWN); 1309*4882a593Smuzhiyun PIN_SLP(gpv0-3, INPUT, DOWN); 1310*4882a593Smuzhiyun PIN_SLP(gpv0-4, INPUT, DOWN); 1311*4882a593Smuzhiyun PIN_SLP(gpv0-5, INPUT, DOWN); 1312*4882a593Smuzhiyun PIN_SLP(gpv0-6, INPUT, DOWN); 1313*4882a593Smuzhiyun PIN_SLP(gpv0-7, INPUT, DOWN); 1314*4882a593Smuzhiyun 1315*4882a593Smuzhiyun PIN_SLP(gpv1-0, INPUT, DOWN); 1316*4882a593Smuzhiyun PIN_SLP(gpv1-1, INPUT, DOWN); 1317*4882a593Smuzhiyun PIN_SLP(gpv1-2, INPUT, DOWN); 1318*4882a593Smuzhiyun PIN_SLP(gpv1-3, INPUT, DOWN); 1319*4882a593Smuzhiyun PIN_SLP(gpv1-4, INPUT, DOWN); 1320*4882a593Smuzhiyun PIN_SLP(gpv1-5, INPUT, DOWN); 1321*4882a593Smuzhiyun PIN_SLP(gpv1-6, INPUT, DOWN); 1322*4882a593Smuzhiyun PIN_SLP(gpv1-7, INPUT, DOWN); 1323*4882a593Smuzhiyun 1324*4882a593Smuzhiyun PIN_SLP(gpv2-0, INPUT, DOWN); 1325*4882a593Smuzhiyun PIN_SLP(gpv2-1, INPUT, DOWN); 1326*4882a593Smuzhiyun PIN_SLP(gpv2-2, INPUT, DOWN); 1327*4882a593Smuzhiyun PIN_SLP(gpv2-3, INPUT, DOWN); 1328*4882a593Smuzhiyun PIN_SLP(gpv2-4, INPUT, DOWN); 1329*4882a593Smuzhiyun PIN_SLP(gpv2-5, INPUT, DOWN); 1330*4882a593Smuzhiyun PIN_SLP(gpv2-6, INPUT, DOWN); 1331*4882a593Smuzhiyun PIN_SLP(gpv2-7, INPUT, DOWN); 1332*4882a593Smuzhiyun 1333*4882a593Smuzhiyun PIN_SLP(gpv3-0, INPUT, DOWN); 1334*4882a593Smuzhiyun PIN_SLP(gpv3-1, INPUT, DOWN); 1335*4882a593Smuzhiyun PIN_SLP(gpv3-2, INPUT, DOWN); 1336*4882a593Smuzhiyun PIN_SLP(gpv3-3, INPUT, DOWN); 1337*4882a593Smuzhiyun PIN_SLP(gpv3-4, INPUT, DOWN); 1338*4882a593Smuzhiyun PIN_SLP(gpv3-5, INPUT, DOWN); 1339*4882a593Smuzhiyun PIN_SLP(gpv3-6, INPUT, DOWN); 1340*4882a593Smuzhiyun PIN_SLP(gpv3-7, INPUT, DOWN); 1341*4882a593Smuzhiyun 1342*4882a593Smuzhiyun PIN_SLP(gpv4-0, INPUT, DOWN); 1343*4882a593Smuzhiyun }; 1344*4882a593Smuzhiyun}; 1345*4882a593Smuzhiyun 1346*4882a593Smuzhiyun&pwm { 1347*4882a593Smuzhiyun pinctrl-0 = <&pwm0_out>; 1348*4882a593Smuzhiyun pinctrl-names = "default"; 1349*4882a593Smuzhiyun samsung,pwm-outputs = <0>; 1350*4882a593Smuzhiyun status = "okay"; 1351*4882a593Smuzhiyun}; 1352*4882a593Smuzhiyun 1353*4882a593Smuzhiyun&rtc { 1354*4882a593Smuzhiyun status = "okay"; 1355*4882a593Smuzhiyun clocks = <&clock CLK_RTC>, <&max77686 MAX77686_CLK_AP>; 1356*4882a593Smuzhiyun clock-names = "rtc", "rtc_src"; 1357*4882a593Smuzhiyun}; 1358*4882a593Smuzhiyun 1359*4882a593Smuzhiyun&sdhci_2 { 1360*4882a593Smuzhiyun bus-width = <4>; 1361*4882a593Smuzhiyun cd-gpios = <&gpx3 4 GPIO_ACTIVE_LOW>; 1362*4882a593Smuzhiyun pinctrl-0 = <&sd2_clk &sd2_cmd &sd2_bus4 &sdhci2_cd>; 1363*4882a593Smuzhiyun pinctrl-names = "default"; 1364*4882a593Smuzhiyun vmmc-supply = <&ldo21_reg>; 1365*4882a593Smuzhiyun status = "okay"; 1366*4882a593Smuzhiyun}; 1367*4882a593Smuzhiyun 1368*4882a593Smuzhiyun&sdhci_3 { 1369*4882a593Smuzhiyun #address-cells = <1>; 1370*4882a593Smuzhiyun #size-cells = <0>; 1371*4882a593Smuzhiyun non-removable; 1372*4882a593Smuzhiyun bus-width = <4>; 1373*4882a593Smuzhiyun 1374*4882a593Smuzhiyun mmc-pwrseq = <&wlan_pwrseq>; 1375*4882a593Smuzhiyun pinctrl-names = "default"; 1376*4882a593Smuzhiyun pinctrl-0 = <&sd3_clk &sd3_cmd &sd3_bus4>; 1377*4882a593Smuzhiyun status = "okay"; 1378*4882a593Smuzhiyun 1379*4882a593Smuzhiyun brcmf: wifi@1 { 1380*4882a593Smuzhiyun reg = <1>; 1381*4882a593Smuzhiyun compatible = "brcm,bcm4329-fmac"; 1382*4882a593Smuzhiyun interrupt-parent = <&gpx2>; 1383*4882a593Smuzhiyun interrupts = <5 IRQ_TYPE_NONE>; 1384*4882a593Smuzhiyun interrupt-names = "host-wake"; 1385*4882a593Smuzhiyun }; 1386*4882a593Smuzhiyun}; 1387*4882a593Smuzhiyun 1388*4882a593Smuzhiyun&serial_0 { 1389*4882a593Smuzhiyun status = "okay"; 1390*4882a593Smuzhiyun}; 1391*4882a593Smuzhiyun 1392*4882a593Smuzhiyun&serial_1 { 1393*4882a593Smuzhiyun status = "okay"; 1394*4882a593Smuzhiyun}; 1395*4882a593Smuzhiyun 1396*4882a593Smuzhiyun&serial_2 { 1397*4882a593Smuzhiyun status = "okay"; 1398*4882a593Smuzhiyun}; 1399*4882a593Smuzhiyun 1400*4882a593Smuzhiyun&serial_3 { 1401*4882a593Smuzhiyun status = "okay"; 1402*4882a593Smuzhiyun}; 1403*4882a593Smuzhiyun 1404*4882a593Smuzhiyun&spi_1 { 1405*4882a593Smuzhiyun pinctrl-names = "default"; 1406*4882a593Smuzhiyun pinctrl-0 = <&spi1_bus>; 1407*4882a593Smuzhiyun cs-gpios = <&gpb 5 GPIO_ACTIVE_HIGH>; 1408*4882a593Smuzhiyun status = "okay"; 1409*4882a593Smuzhiyun 1410*4882a593Smuzhiyun s5c73m3_spi: s5c73m3@0 { 1411*4882a593Smuzhiyun compatible = "samsung,s5c73m3"; 1412*4882a593Smuzhiyun spi-max-frequency = <50000000>; 1413*4882a593Smuzhiyun reg = <0>; 1414*4882a593Smuzhiyun controller-data { 1415*4882a593Smuzhiyun samsung,spi-feedback-delay = <2>; 1416*4882a593Smuzhiyun }; 1417*4882a593Smuzhiyun }; 1418*4882a593Smuzhiyun}; 1419*4882a593Smuzhiyun 1420*4882a593Smuzhiyun&tmu { 1421*4882a593Smuzhiyun vtmu-supply = <&ldo10_reg>; 1422*4882a593Smuzhiyun status = "okay"; 1423*4882a593Smuzhiyun}; 1424