1*c66ec88fSEmmanuel Vadot// SPDX-License-Identifier: (GPL-2.0+ OR MIT) 2*c66ec88fSEmmanuel Vadot/* 3*c66ec88fSEmmanuel Vadot * Copyright (c) 2017 Fuzhou Rockchip Electronics Co., Ltd. 4*c66ec88fSEmmanuel Vadot * Copyright (c) 2018 Akash Gajjar <Akash_Gajjar@mentor.com> 5*c66ec88fSEmmanuel Vadot */ 6*c66ec88fSEmmanuel Vadot 7*c66ec88fSEmmanuel Vadot#include <dt-bindings/input/linux-event-codes.h> 8*c66ec88fSEmmanuel Vadot#include <dt-bindings/pwm/pwm.h> 9*c66ec88fSEmmanuel Vadot#include "rk3399.dtsi" 10*c66ec88fSEmmanuel Vadot#include "rk3399-opp.dtsi" 11*c66ec88fSEmmanuel Vadot 12*c66ec88fSEmmanuel Vadot/ { 13*c66ec88fSEmmanuel Vadot chosen { 14*c66ec88fSEmmanuel Vadot stdout-path = "serial2:1500000n8"; 15*c66ec88fSEmmanuel Vadot }; 16*c66ec88fSEmmanuel Vadot 17*c66ec88fSEmmanuel Vadot clkin_gmac: external-gmac-clock { 18*c66ec88fSEmmanuel Vadot compatible = "fixed-clock"; 19*c66ec88fSEmmanuel Vadot clock-frequency = <125000000>; 20*c66ec88fSEmmanuel Vadot clock-output-names = "clkin_gmac"; 21*c66ec88fSEmmanuel Vadot #clock-cells = <0>; 22*c66ec88fSEmmanuel Vadot }; 23*c66ec88fSEmmanuel Vadot 24*c66ec88fSEmmanuel Vadot gpio-keys { 25*c66ec88fSEmmanuel Vadot compatible = "gpio-keys"; 26*c66ec88fSEmmanuel Vadot autorepeat; 27*c66ec88fSEmmanuel Vadot pinctrl-names = "default"; 28*c66ec88fSEmmanuel Vadot pinctrl-0 = <&pwrbtn>; 29*c66ec88fSEmmanuel Vadot 30*c66ec88fSEmmanuel Vadot power { 31*c66ec88fSEmmanuel Vadot debounce-interval = <100>; 32*c66ec88fSEmmanuel Vadot gpios = <&gpio0 RK_PA5 GPIO_ACTIVE_LOW>; 33*c66ec88fSEmmanuel Vadot label = "GPIO Key Power"; 34*c66ec88fSEmmanuel Vadot linux,code = <KEY_POWER>; 35*c66ec88fSEmmanuel Vadot wakeup-source; 36*c66ec88fSEmmanuel Vadot }; 37*c66ec88fSEmmanuel Vadot }; 38*c66ec88fSEmmanuel Vadot 39*c66ec88fSEmmanuel Vadot leds { 40*c66ec88fSEmmanuel Vadot compatible = "gpio-leds"; 41*c66ec88fSEmmanuel Vadot pinctrl-names = "default"; 42*c66ec88fSEmmanuel Vadot pinctrl-0 = <&work_led_pin>, <&diy_led_pin>; 43*c66ec88fSEmmanuel Vadot 44*c66ec88fSEmmanuel Vadot work_led: led-0 { 45*c66ec88fSEmmanuel Vadot label = "work"; 46*c66ec88fSEmmanuel Vadot default-state = "on"; 47*c66ec88fSEmmanuel Vadot gpios = <&gpio0 RK_PB3 GPIO_ACTIVE_HIGH>; 48*c66ec88fSEmmanuel Vadot }; 49*c66ec88fSEmmanuel Vadot 50*c66ec88fSEmmanuel Vadot diy_led: led-1 { 51*c66ec88fSEmmanuel Vadot label = "diy"; 52*c66ec88fSEmmanuel Vadot default-state = "off"; 53*c66ec88fSEmmanuel Vadot gpios = <&gpio0 RK_PA2 GPIO_ACTIVE_HIGH>; 54*c66ec88fSEmmanuel Vadot }; 55*c66ec88fSEmmanuel Vadot }; 56*c66ec88fSEmmanuel Vadot 57*c66ec88fSEmmanuel Vadot fan: pwm-fan { 58*c66ec88fSEmmanuel Vadot compatible = "pwm-fan"; 59*c66ec88fSEmmanuel Vadot #cooling-cells = <2>; 60*c66ec88fSEmmanuel Vadot fan-supply = <&vcc12v_dcin>; 61*c66ec88fSEmmanuel Vadot pwms = <&pwm1 0 50000 0>; 62*c66ec88fSEmmanuel Vadot }; 63*c66ec88fSEmmanuel Vadot 64*c66ec88fSEmmanuel Vadot sdio_pwrseq: sdio-pwrseq { 65*c66ec88fSEmmanuel Vadot compatible = "mmc-pwrseq-simple"; 66*c66ec88fSEmmanuel Vadot clocks = <&rk808 1>; 67*c66ec88fSEmmanuel Vadot clock-names = "ext_clock"; 68*c66ec88fSEmmanuel Vadot pinctrl-names = "default"; 69*c66ec88fSEmmanuel Vadot pinctrl-0 = <&wifi_enable_h>; 70*c66ec88fSEmmanuel Vadot reset-gpios = <&gpio0 RK_PB2 GPIO_ACTIVE_LOW>; 71*c66ec88fSEmmanuel Vadot }; 72*c66ec88fSEmmanuel Vadot 73*c66ec88fSEmmanuel Vadot sound { 74*c66ec88fSEmmanuel Vadot compatible = "audio-graph-card"; 75*c66ec88fSEmmanuel Vadot label = "rockchip,rk3399"; 76*c66ec88fSEmmanuel Vadot dais = <&i2s1_p0>; 77*c66ec88fSEmmanuel Vadot }; 78*c66ec88fSEmmanuel Vadot 79*c66ec88fSEmmanuel Vadot vcc12v_dcin: vcc12v-dcin { 80*c66ec88fSEmmanuel Vadot compatible = "regulator-fixed"; 81*c66ec88fSEmmanuel Vadot regulator-name = "vcc12v_dcin"; 82*c66ec88fSEmmanuel Vadot regulator-always-on; 83*c66ec88fSEmmanuel Vadot regulator-boot-on; 84*c66ec88fSEmmanuel Vadot regulator-min-microvolt = <12000000>; 85*c66ec88fSEmmanuel Vadot regulator-max-microvolt = <12000000>; 86*c66ec88fSEmmanuel Vadot }; 87*c66ec88fSEmmanuel Vadot 88*c66ec88fSEmmanuel Vadot /* switched by pmic_sleep */ 89*c66ec88fSEmmanuel Vadot vcc1v8_s3: vcca1v8_s3: vcc1v8-s3 { 90*c66ec88fSEmmanuel Vadot compatible = "regulator-fixed"; 91*c66ec88fSEmmanuel Vadot regulator-name = "vcc1v8_s3"; 92*c66ec88fSEmmanuel Vadot regulator-always-on; 93*c66ec88fSEmmanuel Vadot regulator-boot-on; 94*c66ec88fSEmmanuel Vadot regulator-min-microvolt = <1800000>; 95*c66ec88fSEmmanuel Vadot regulator-max-microvolt = <1800000>; 96*c66ec88fSEmmanuel Vadot vin-supply = <&vcc_1v8>; 97*c66ec88fSEmmanuel Vadot }; 98*c66ec88fSEmmanuel Vadot 99*c66ec88fSEmmanuel Vadot /* micro SD card power */ 100*c66ec88fSEmmanuel Vadot vcc3v0_sd: vcc3v0-sd { 101*c66ec88fSEmmanuel Vadot compatible = "regulator-fixed"; 102*c66ec88fSEmmanuel Vadot enable-active-high; 103*c66ec88fSEmmanuel Vadot gpio = <&gpio0 RK_PA1 GPIO_ACTIVE_HIGH>; 104*c66ec88fSEmmanuel Vadot pinctrl-names = "default"; 105*c66ec88fSEmmanuel Vadot pinctrl-0 = <&sdmmc0_pwr_h>; 106*c66ec88fSEmmanuel Vadot regulator-name = "vcc3v0_sd"; 107*c66ec88fSEmmanuel Vadot regulator-always-on; 108*c66ec88fSEmmanuel Vadot regulator-min-microvolt = <3000000>; 109*c66ec88fSEmmanuel Vadot regulator-max-microvolt = <3000000>; 110*c66ec88fSEmmanuel Vadot vin-supply = <&vcc3v3_sys>; 111*c66ec88fSEmmanuel Vadot 112*c66ec88fSEmmanuel Vadot regulator-state-mem { 113*c66ec88fSEmmanuel Vadot regulator-off-in-suspend; 114*c66ec88fSEmmanuel Vadot }; 115*c66ec88fSEmmanuel Vadot }; 116*c66ec88fSEmmanuel Vadot 117*c66ec88fSEmmanuel Vadot vcc3v3_pcie: vcc3v3-pcie-regulator { 118*c66ec88fSEmmanuel Vadot compatible = "regulator-fixed"; 119*c66ec88fSEmmanuel Vadot enable-active-high; 120*c66ec88fSEmmanuel Vadot gpio = <&gpio1 RK_PD0 GPIO_ACTIVE_HIGH>; 121*c66ec88fSEmmanuel Vadot pinctrl-names = "default"; 122*c66ec88fSEmmanuel Vadot pinctrl-0 = <&pcie_pwr_en>; 123*c66ec88fSEmmanuel Vadot regulator-name = "vcc3v3_pcie"; 124*c66ec88fSEmmanuel Vadot regulator-always-on; 125*c66ec88fSEmmanuel Vadot regulator-boot-on; 126*c66ec88fSEmmanuel Vadot vin-supply = <&vcc12v_dcin>; 127*c66ec88fSEmmanuel Vadot }; 128*c66ec88fSEmmanuel Vadot 129*c66ec88fSEmmanuel Vadot vcc3v3_sys: vcc3v3-sys { 130*c66ec88fSEmmanuel Vadot compatible = "regulator-fixed"; 131*c66ec88fSEmmanuel Vadot regulator-name = "vcc3v3_sys"; 132*c66ec88fSEmmanuel Vadot regulator-always-on; 133*c66ec88fSEmmanuel Vadot regulator-boot-on; 134*c66ec88fSEmmanuel Vadot regulator-min-microvolt = <3300000>; 135*c66ec88fSEmmanuel Vadot regulator-max-microvolt = <3300000>; 136*c66ec88fSEmmanuel Vadot vin-supply = <&vcc5v0_sys>; 137*c66ec88fSEmmanuel Vadot }; 138*c66ec88fSEmmanuel Vadot 139*c66ec88fSEmmanuel Vadot /* Actually 3 regulators (host0, 1, 2) controlled by the same gpio */ 140*c66ec88fSEmmanuel Vadot vcc5v0_host: vcc5v0-host-regulator { 141*c66ec88fSEmmanuel Vadot compatible = "regulator-fixed"; 142*c66ec88fSEmmanuel Vadot enable-active-high; 143*c66ec88fSEmmanuel Vadot gpio = <&gpio4 RK_PD2 GPIO_ACTIVE_HIGH>; 144*c66ec88fSEmmanuel Vadot pinctrl-names = "default"; 145*c66ec88fSEmmanuel Vadot pinctrl-0 = <&vcc5v0_host_en>; 146*c66ec88fSEmmanuel Vadot regulator-name = "vcc5v0_host"; 147*c66ec88fSEmmanuel Vadot regulator-always-on; 148*c66ec88fSEmmanuel Vadot vin-supply = <&vcc5v0_usb>; 149*c66ec88fSEmmanuel Vadot }; 150*c66ec88fSEmmanuel Vadot 151*c66ec88fSEmmanuel Vadot vcc5v0_typec: vcc5v0-typec-regulator { 152*c66ec88fSEmmanuel Vadot compatible = "regulator-fixed"; 153*c66ec88fSEmmanuel Vadot enable-active-high; 154*c66ec88fSEmmanuel Vadot gpio = <&gpio1 RK_PA3 GPIO_ACTIVE_HIGH>; 155*c66ec88fSEmmanuel Vadot pinctrl-names = "default"; 156*c66ec88fSEmmanuel Vadot pinctrl-0 = <&vcc5v0_typec_en>; 157*c66ec88fSEmmanuel Vadot regulator-name = "vcc5v0_typec"; 158*c66ec88fSEmmanuel Vadot regulator-always-on; 159*c66ec88fSEmmanuel Vadot vin-supply = <&vcc5v0_usb>; 160*c66ec88fSEmmanuel Vadot }; 161*c66ec88fSEmmanuel Vadot 162*c66ec88fSEmmanuel Vadot vcc5v0_sys: vcc5v0-sys { 163*c66ec88fSEmmanuel Vadot compatible = "regulator-fixed"; 164*c66ec88fSEmmanuel Vadot regulator-name = "vcc5v0_sys"; 165*c66ec88fSEmmanuel Vadot regulator-always-on; 166*c66ec88fSEmmanuel Vadot regulator-boot-on; 167*c66ec88fSEmmanuel Vadot regulator-min-microvolt = <5000000>; 168*c66ec88fSEmmanuel Vadot regulator-max-microvolt = <5000000>; 169*c66ec88fSEmmanuel Vadot vin-supply = <&vcc12v_dcin>; 170*c66ec88fSEmmanuel Vadot }; 171*c66ec88fSEmmanuel Vadot 172*c66ec88fSEmmanuel Vadot vcc5v0_usb: vcc5v0-usb { 173*c66ec88fSEmmanuel Vadot compatible = "regulator-fixed"; 174*c66ec88fSEmmanuel Vadot regulator-name = "vcc5v0_usb"; 175*c66ec88fSEmmanuel Vadot regulator-always-on; 176*c66ec88fSEmmanuel Vadot regulator-boot-on; 177*c66ec88fSEmmanuel Vadot regulator-min-microvolt = <5000000>; 178*c66ec88fSEmmanuel Vadot regulator-max-microvolt = <5000000>; 179*c66ec88fSEmmanuel Vadot vin-supply = <&vcc12v_dcin>; 180*c66ec88fSEmmanuel Vadot }; 181*c66ec88fSEmmanuel Vadot 182*c66ec88fSEmmanuel Vadot vdd_log: vdd-log { 183*c66ec88fSEmmanuel Vadot compatible = "pwm-regulator"; 184*c66ec88fSEmmanuel Vadot pwms = <&pwm2 0 25000 1>; 185*c66ec88fSEmmanuel Vadot regulator-name = "vdd_log"; 186*c66ec88fSEmmanuel Vadot regulator-always-on; 187*c66ec88fSEmmanuel Vadot regulator-boot-on; 188*c66ec88fSEmmanuel Vadot regulator-min-microvolt = <800000>; 189*c66ec88fSEmmanuel Vadot regulator-max-microvolt = <1700000>; 190*c66ec88fSEmmanuel Vadot vin-supply = <&vcc5v0_sys>; 191*c66ec88fSEmmanuel Vadot }; 192*c66ec88fSEmmanuel Vadot}; 193*c66ec88fSEmmanuel Vadot 194*c66ec88fSEmmanuel Vadot&cpu_l0 { 195*c66ec88fSEmmanuel Vadot cpu-supply = <&vdd_cpu_l>; 196*c66ec88fSEmmanuel Vadot}; 197*c66ec88fSEmmanuel Vadot 198*c66ec88fSEmmanuel Vadot&cpu_l1 { 199*c66ec88fSEmmanuel Vadot cpu-supply = <&vdd_cpu_l>; 200*c66ec88fSEmmanuel Vadot}; 201*c66ec88fSEmmanuel Vadot 202*c66ec88fSEmmanuel Vadot&cpu_l2 { 203*c66ec88fSEmmanuel Vadot cpu-supply = <&vdd_cpu_l>; 204*c66ec88fSEmmanuel Vadot}; 205*c66ec88fSEmmanuel Vadot 206*c66ec88fSEmmanuel Vadot&cpu_l3 { 207*c66ec88fSEmmanuel Vadot cpu-supply = <&vdd_cpu_l>; 208*c66ec88fSEmmanuel Vadot}; 209*c66ec88fSEmmanuel Vadot 210*c66ec88fSEmmanuel Vadot&cpu_b0 { 211*c66ec88fSEmmanuel Vadot cpu-supply = <&vdd_cpu_b>; 212*c66ec88fSEmmanuel Vadot}; 213*c66ec88fSEmmanuel Vadot 214*c66ec88fSEmmanuel Vadot&cpu_b1 { 215*c66ec88fSEmmanuel Vadot cpu-supply = <&vdd_cpu_b>; 216*c66ec88fSEmmanuel Vadot}; 217*c66ec88fSEmmanuel Vadot 218*c66ec88fSEmmanuel Vadot&emmc_phy { 219*c66ec88fSEmmanuel Vadot status = "okay"; 220*c66ec88fSEmmanuel Vadot}; 221*c66ec88fSEmmanuel Vadot 222*c66ec88fSEmmanuel Vadot&gmac { 223*c66ec88fSEmmanuel Vadot assigned-clocks = <&cru SCLK_RMII_SRC>; 224*c66ec88fSEmmanuel Vadot assigned-clock-parents = <&clkin_gmac>; 225*c66ec88fSEmmanuel Vadot clock_in_out = "input"; 226*c66ec88fSEmmanuel Vadot phy-supply = <&vcc_lan>; 227*c66ec88fSEmmanuel Vadot phy-mode = "rgmii"; 228*c66ec88fSEmmanuel Vadot pinctrl-names = "default"; 229*c66ec88fSEmmanuel Vadot pinctrl-0 = <&rgmii_pins>; 230*c66ec88fSEmmanuel Vadot snps,reset-gpio = <&gpio3 RK_PB7 GPIO_ACTIVE_LOW>; 231*c66ec88fSEmmanuel Vadot snps,reset-active-low; 232*c66ec88fSEmmanuel Vadot snps,reset-delays-us = <0 10000 50000>; 233*c66ec88fSEmmanuel Vadot tx_delay = <0x28>; 234*c66ec88fSEmmanuel Vadot rx_delay = <0x11>; 235*c66ec88fSEmmanuel Vadot status = "okay"; 236*c66ec88fSEmmanuel Vadot}; 237*c66ec88fSEmmanuel Vadot 238*c66ec88fSEmmanuel Vadot&hdmi { 239*c66ec88fSEmmanuel Vadot ddc-i2c-bus = <&i2c3>; 240*c66ec88fSEmmanuel Vadot pinctrl-names = "default"; 241*c66ec88fSEmmanuel Vadot pinctrl-0 = <&hdmi_cec>; 242*c66ec88fSEmmanuel Vadot status = "okay"; 243*c66ec88fSEmmanuel Vadot}; 244*c66ec88fSEmmanuel Vadot 245*c66ec88fSEmmanuel Vadot&hdmi_sound { 246*c66ec88fSEmmanuel Vadot status = "okay"; 247*c66ec88fSEmmanuel Vadot}; 248*c66ec88fSEmmanuel Vadot 249*c66ec88fSEmmanuel Vadot&gpu { 250*c66ec88fSEmmanuel Vadot mali-supply = <&vdd_gpu>; 251*c66ec88fSEmmanuel Vadot status = "okay"; 252*c66ec88fSEmmanuel Vadot}; 253*c66ec88fSEmmanuel Vadot 254*c66ec88fSEmmanuel Vadot&i2c0 { 255*c66ec88fSEmmanuel Vadot clock-frequency = <400000>; 256*c66ec88fSEmmanuel Vadot i2c-scl-rising-time-ns = <168>; 257*c66ec88fSEmmanuel Vadot i2c-scl-falling-time-ns = <4>; 258*c66ec88fSEmmanuel Vadot status = "okay"; 259*c66ec88fSEmmanuel Vadot 260*c66ec88fSEmmanuel Vadot rk808: pmic@1b { 261*c66ec88fSEmmanuel Vadot compatible = "rockchip,rk808"; 262*c66ec88fSEmmanuel Vadot reg = <0x1b>; 263*c66ec88fSEmmanuel Vadot interrupt-parent = <&gpio3>; 264*c66ec88fSEmmanuel Vadot interrupts = <10 IRQ_TYPE_LEVEL_LOW>; 265*c66ec88fSEmmanuel Vadot #clock-cells = <1>; 266*c66ec88fSEmmanuel Vadot clock-output-names = "xin32k", "rk808-clkout2"; 267*c66ec88fSEmmanuel Vadot pinctrl-names = "default"; 268*c66ec88fSEmmanuel Vadot pinctrl-0 = <&pmic_int_l>; 269*c66ec88fSEmmanuel Vadot rockchip,system-power-controller; 270*c66ec88fSEmmanuel Vadot wakeup-source; 271*c66ec88fSEmmanuel Vadot 272*c66ec88fSEmmanuel Vadot vcc1-supply = <&vcc5v0_sys>; 273*c66ec88fSEmmanuel Vadot vcc2-supply = <&vcc5v0_sys>; 274*c66ec88fSEmmanuel Vadot vcc3-supply = <&vcc5v0_sys>; 275*c66ec88fSEmmanuel Vadot vcc4-supply = <&vcc5v0_sys>; 276*c66ec88fSEmmanuel Vadot vcc6-supply = <&vcc5v0_sys>; 277*c66ec88fSEmmanuel Vadot vcc7-supply = <&vcc5v0_sys>; 278*c66ec88fSEmmanuel Vadot vcc8-supply = <&vcc3v3_sys>; 279*c66ec88fSEmmanuel Vadot vcc9-supply = <&vcc5v0_sys>; 280*c66ec88fSEmmanuel Vadot vcc10-supply = <&vcc5v0_sys>; 281*c66ec88fSEmmanuel Vadot vcc11-supply = <&vcc5v0_sys>; 282*c66ec88fSEmmanuel Vadot vcc12-supply = <&vcc3v3_sys>; 283*c66ec88fSEmmanuel Vadot vddio-supply = <&vcca_1v8>; 284*c66ec88fSEmmanuel Vadot 285*c66ec88fSEmmanuel Vadot regulators { 286*c66ec88fSEmmanuel Vadot vdd_center: DCDC_REG1 { 287*c66ec88fSEmmanuel Vadot regulator-name = "vdd_center"; 288*c66ec88fSEmmanuel Vadot regulator-always-on; 289*c66ec88fSEmmanuel Vadot regulator-boot-on; 290*c66ec88fSEmmanuel Vadot regulator-min-microvolt = <750000>; 291*c66ec88fSEmmanuel Vadot regulator-max-microvolt = <1350000>; 292*c66ec88fSEmmanuel Vadot regulator-ramp-delay = <6001>; 293*c66ec88fSEmmanuel Vadot regulator-state-mem { 294*c66ec88fSEmmanuel Vadot regulator-off-in-suspend; 295*c66ec88fSEmmanuel Vadot }; 296*c66ec88fSEmmanuel Vadot }; 297*c66ec88fSEmmanuel Vadot 298*c66ec88fSEmmanuel Vadot vdd_cpu_l: DCDC_REG2 { 299*c66ec88fSEmmanuel Vadot regulator-name = "vdd_cpu_l"; 300*c66ec88fSEmmanuel Vadot regulator-always-on; 301*c66ec88fSEmmanuel Vadot regulator-boot-on; 302*c66ec88fSEmmanuel Vadot regulator-min-microvolt = <750000>; 303*c66ec88fSEmmanuel Vadot regulator-max-microvolt = <1350000>; 304*c66ec88fSEmmanuel Vadot regulator-ramp-delay = <6001>; 305*c66ec88fSEmmanuel Vadot regulator-state-mem { 306*c66ec88fSEmmanuel Vadot regulator-off-in-suspend; 307*c66ec88fSEmmanuel Vadot }; 308*c66ec88fSEmmanuel Vadot }; 309*c66ec88fSEmmanuel Vadot 310*c66ec88fSEmmanuel Vadot vcc_ddr: DCDC_REG3 { 311*c66ec88fSEmmanuel Vadot regulator-name = "vcc_ddr"; 312*c66ec88fSEmmanuel Vadot regulator-always-on; 313*c66ec88fSEmmanuel Vadot regulator-boot-on; 314*c66ec88fSEmmanuel Vadot regulator-state-mem { 315*c66ec88fSEmmanuel Vadot regulator-on-in-suspend; 316*c66ec88fSEmmanuel Vadot }; 317*c66ec88fSEmmanuel Vadot }; 318*c66ec88fSEmmanuel Vadot 319*c66ec88fSEmmanuel Vadot vcc_1v8: DCDC_REG4 { 320*c66ec88fSEmmanuel Vadot regulator-name = "vcc_1v8"; 321*c66ec88fSEmmanuel Vadot regulator-always-on; 322*c66ec88fSEmmanuel Vadot regulator-boot-on; 323*c66ec88fSEmmanuel Vadot regulator-min-microvolt = <1800000>; 324*c66ec88fSEmmanuel Vadot regulator-max-microvolt = <1800000>; 325*c66ec88fSEmmanuel Vadot regulator-state-mem { 326*c66ec88fSEmmanuel Vadot regulator-on-in-suspend; 327*c66ec88fSEmmanuel Vadot regulator-suspend-microvolt = <1800000>; 328*c66ec88fSEmmanuel Vadot }; 329*c66ec88fSEmmanuel Vadot }; 330*c66ec88fSEmmanuel Vadot 331*c66ec88fSEmmanuel Vadot vcc1v8_dvp: LDO_REG1 { 332*c66ec88fSEmmanuel Vadot regulator-name = "vcc1v8_dvp"; 333*c66ec88fSEmmanuel Vadot regulator-always-on; 334*c66ec88fSEmmanuel Vadot regulator-boot-on; 335*c66ec88fSEmmanuel Vadot regulator-min-microvolt = <1800000>; 336*c66ec88fSEmmanuel Vadot regulator-max-microvolt = <1800000>; 337*c66ec88fSEmmanuel Vadot regulator-state-mem { 338*c66ec88fSEmmanuel Vadot regulator-off-in-suspend; 339*c66ec88fSEmmanuel Vadot }; 340*c66ec88fSEmmanuel Vadot }; 341*c66ec88fSEmmanuel Vadot 342*c66ec88fSEmmanuel Vadot vcc3v0_touch: LDO_REG2 { 343*c66ec88fSEmmanuel Vadot regulator-name = "vcc3v0_touch"; 344*c66ec88fSEmmanuel Vadot regulator-always-on; 345*c66ec88fSEmmanuel Vadot regulator-boot-on; 346*c66ec88fSEmmanuel Vadot regulator-min-microvolt = <3000000>; 347*c66ec88fSEmmanuel Vadot regulator-max-microvolt = <3000000>; 348*c66ec88fSEmmanuel Vadot regulator-state-mem { 349*c66ec88fSEmmanuel Vadot regulator-off-in-suspend; 350*c66ec88fSEmmanuel Vadot }; 351*c66ec88fSEmmanuel Vadot }; 352*c66ec88fSEmmanuel Vadot 353*c66ec88fSEmmanuel Vadot vcca_1v8: LDO_REG3 { 354*c66ec88fSEmmanuel Vadot regulator-name = "vcca_1v8"; 355*c66ec88fSEmmanuel Vadot regulator-always-on; 356*c66ec88fSEmmanuel Vadot regulator-boot-on; 357*c66ec88fSEmmanuel Vadot regulator-min-microvolt = <1800000>; 358*c66ec88fSEmmanuel Vadot regulator-max-microvolt = <1800000>; 359*c66ec88fSEmmanuel Vadot regulator-state-mem { 360*c66ec88fSEmmanuel Vadot regulator-on-in-suspend; 361*c66ec88fSEmmanuel Vadot regulator-suspend-microvolt = <1800000>; 362*c66ec88fSEmmanuel Vadot }; 363*c66ec88fSEmmanuel Vadot }; 364*c66ec88fSEmmanuel Vadot 365*c66ec88fSEmmanuel Vadot vcc_sdio: LDO_REG4 { 366*c66ec88fSEmmanuel Vadot regulator-name = "vcc_sdio"; 367*c66ec88fSEmmanuel Vadot regulator-always-on; 368*c66ec88fSEmmanuel Vadot regulator-boot-on; 369*c66ec88fSEmmanuel Vadot regulator-min-microvolt = <1800000>; 370*c66ec88fSEmmanuel Vadot regulator-max-microvolt = <3000000>; 371*c66ec88fSEmmanuel Vadot regulator-state-mem { 372*c66ec88fSEmmanuel Vadot regulator-on-in-suspend; 373*c66ec88fSEmmanuel Vadot regulator-suspend-microvolt = <3000000>; 374*c66ec88fSEmmanuel Vadot }; 375*c66ec88fSEmmanuel Vadot }; 376*c66ec88fSEmmanuel Vadot 377*c66ec88fSEmmanuel Vadot vcca3v0_codec: LDO_REG5 { 378*c66ec88fSEmmanuel Vadot regulator-name = "vcca3v0_codec"; 379*c66ec88fSEmmanuel Vadot regulator-always-on; 380*c66ec88fSEmmanuel Vadot regulator-boot-on; 381*c66ec88fSEmmanuel Vadot regulator-min-microvolt = <3000000>; 382*c66ec88fSEmmanuel Vadot regulator-max-microvolt = <3000000>; 383*c66ec88fSEmmanuel Vadot regulator-state-mem { 384*c66ec88fSEmmanuel Vadot regulator-off-in-suspend; 385*c66ec88fSEmmanuel Vadot }; 386*c66ec88fSEmmanuel Vadot }; 387*c66ec88fSEmmanuel Vadot 388*c66ec88fSEmmanuel Vadot vcc_1v5: LDO_REG6 { 389*c66ec88fSEmmanuel Vadot regulator-name = "vcc_1v5"; 390*c66ec88fSEmmanuel Vadot regulator-always-on; 391*c66ec88fSEmmanuel Vadot regulator-boot-on; 392*c66ec88fSEmmanuel Vadot regulator-min-microvolt = <1500000>; 393*c66ec88fSEmmanuel Vadot regulator-max-microvolt = <1500000>; 394*c66ec88fSEmmanuel Vadot regulator-state-mem { 395*c66ec88fSEmmanuel Vadot regulator-on-in-suspend; 396*c66ec88fSEmmanuel Vadot regulator-suspend-microvolt = <1500000>; 397*c66ec88fSEmmanuel Vadot }; 398*c66ec88fSEmmanuel Vadot }; 399*c66ec88fSEmmanuel Vadot 400*c66ec88fSEmmanuel Vadot vcca1v8_codec: LDO_REG7 { 401*c66ec88fSEmmanuel Vadot regulator-name = "vcca1v8_codec"; 402*c66ec88fSEmmanuel Vadot regulator-always-on; 403*c66ec88fSEmmanuel Vadot regulator-boot-on; 404*c66ec88fSEmmanuel Vadot regulator-min-microvolt = <1800000>; 405*c66ec88fSEmmanuel Vadot regulator-max-microvolt = <1800000>; 406*c66ec88fSEmmanuel Vadot regulator-state-mem { 407*c66ec88fSEmmanuel Vadot regulator-off-in-suspend; 408*c66ec88fSEmmanuel Vadot }; 409*c66ec88fSEmmanuel Vadot }; 410*c66ec88fSEmmanuel Vadot 411*c66ec88fSEmmanuel Vadot vcc_3v0: LDO_REG8 { 412*c66ec88fSEmmanuel Vadot regulator-name = "vcc_3v0"; 413*c66ec88fSEmmanuel Vadot regulator-always-on; 414*c66ec88fSEmmanuel Vadot regulator-boot-on; 415*c66ec88fSEmmanuel Vadot regulator-min-microvolt = <3000000>; 416*c66ec88fSEmmanuel Vadot regulator-max-microvolt = <3000000>; 417*c66ec88fSEmmanuel Vadot regulator-state-mem { 418*c66ec88fSEmmanuel Vadot regulator-on-in-suspend; 419*c66ec88fSEmmanuel Vadot regulator-suspend-microvolt = <3000000>; 420*c66ec88fSEmmanuel Vadot }; 421*c66ec88fSEmmanuel Vadot }; 422*c66ec88fSEmmanuel Vadot 423*c66ec88fSEmmanuel Vadot vcc3v3_s3: vcc_lan: SWITCH_REG1 { 424*c66ec88fSEmmanuel Vadot regulator-name = "vcc3v3_s3"; 425*c66ec88fSEmmanuel Vadot regulator-always-on; 426*c66ec88fSEmmanuel Vadot regulator-boot-on; 427*c66ec88fSEmmanuel Vadot regulator-state-mem { 428*c66ec88fSEmmanuel Vadot regulator-off-in-suspend; 429*c66ec88fSEmmanuel Vadot }; 430*c66ec88fSEmmanuel Vadot }; 431*c66ec88fSEmmanuel Vadot 432*c66ec88fSEmmanuel Vadot vcc3v3_s0: SWITCH_REG2 { 433*c66ec88fSEmmanuel Vadot regulator-name = "vcc3v3_s0"; 434*c66ec88fSEmmanuel Vadot regulator-always-on; 435*c66ec88fSEmmanuel Vadot regulator-boot-on; 436*c66ec88fSEmmanuel Vadot regulator-state-mem { 437*c66ec88fSEmmanuel Vadot regulator-off-in-suspend; 438*c66ec88fSEmmanuel Vadot }; 439*c66ec88fSEmmanuel Vadot }; 440*c66ec88fSEmmanuel Vadot }; 441*c66ec88fSEmmanuel Vadot }; 442*c66ec88fSEmmanuel Vadot 443*c66ec88fSEmmanuel Vadot vdd_cpu_b: regulator@40 { 444*c66ec88fSEmmanuel Vadot compatible = "silergy,syr827"; 445*c66ec88fSEmmanuel Vadot reg = <0x40>; 446*c66ec88fSEmmanuel Vadot fcs,suspend-voltage-selector = <1>; 447*c66ec88fSEmmanuel Vadot pinctrl-names = "default"; 448*c66ec88fSEmmanuel Vadot pinctrl-0 = <&vsel1_pin>; 449*c66ec88fSEmmanuel Vadot regulator-name = "vdd_cpu_b"; 450*c66ec88fSEmmanuel Vadot regulator-min-microvolt = <712500>; 451*c66ec88fSEmmanuel Vadot regulator-max-microvolt = <1500000>; 452*c66ec88fSEmmanuel Vadot regulator-ramp-delay = <1000>; 453*c66ec88fSEmmanuel Vadot regulator-always-on; 454*c66ec88fSEmmanuel Vadot regulator-boot-on; 455*c66ec88fSEmmanuel Vadot vin-supply = <&vcc5v0_sys>; 456*c66ec88fSEmmanuel Vadot 457*c66ec88fSEmmanuel Vadot regulator-state-mem { 458*c66ec88fSEmmanuel Vadot regulator-off-in-suspend; 459*c66ec88fSEmmanuel Vadot }; 460*c66ec88fSEmmanuel Vadot }; 461*c66ec88fSEmmanuel Vadot 462*c66ec88fSEmmanuel Vadot vdd_gpu: regulator@41 { 463*c66ec88fSEmmanuel Vadot compatible = "silergy,syr828"; 464*c66ec88fSEmmanuel Vadot reg = <0x41>; 465*c66ec88fSEmmanuel Vadot fcs,suspend-voltage-selector = <1>; 466*c66ec88fSEmmanuel Vadot pinctrl-names = "default"; 467*c66ec88fSEmmanuel Vadot pinctrl-0 = <&vsel2_pin>; 468*c66ec88fSEmmanuel Vadot regulator-name = "vdd_gpu"; 469*c66ec88fSEmmanuel Vadot regulator-min-microvolt = <712500>; 470*c66ec88fSEmmanuel Vadot regulator-max-microvolt = <1500000>; 471*c66ec88fSEmmanuel Vadot regulator-ramp-delay = <1000>; 472*c66ec88fSEmmanuel Vadot regulator-always-on; 473*c66ec88fSEmmanuel Vadot regulator-boot-on; 474*c66ec88fSEmmanuel Vadot vin-supply = <&vcc5v0_sys>; 475*c66ec88fSEmmanuel Vadot 476*c66ec88fSEmmanuel Vadot regulator-state-mem { 477*c66ec88fSEmmanuel Vadot regulator-off-in-suspend; 478*c66ec88fSEmmanuel Vadot }; 479*c66ec88fSEmmanuel Vadot }; 480*c66ec88fSEmmanuel Vadot}; 481*c66ec88fSEmmanuel Vadot 482*c66ec88fSEmmanuel Vadot&i2c1 { 483*c66ec88fSEmmanuel Vadot i2c-scl-rising-time-ns = <300>; 484*c66ec88fSEmmanuel Vadot i2c-scl-falling-time-ns = <15>; 485*c66ec88fSEmmanuel Vadot status = "okay"; 486*c66ec88fSEmmanuel Vadot}; 487*c66ec88fSEmmanuel Vadot 488*c66ec88fSEmmanuel Vadot&i2c3 { 489*c66ec88fSEmmanuel Vadot i2c-scl-rising-time-ns = <450>; 490*c66ec88fSEmmanuel Vadot i2c-scl-falling-time-ns = <15>; 491*c66ec88fSEmmanuel Vadot status = "okay"; 492*c66ec88fSEmmanuel Vadot}; 493*c66ec88fSEmmanuel Vadot 494*c66ec88fSEmmanuel Vadot&i2c4 { 495*c66ec88fSEmmanuel Vadot i2c-scl-rising-time-ns = <600>; 496*c66ec88fSEmmanuel Vadot i2c-scl-falling-time-ns = <20>; 497*c66ec88fSEmmanuel Vadot status = "okay"; 498*c66ec88fSEmmanuel Vadot 499*c66ec88fSEmmanuel Vadot fusb0: typec-portc@22 { 500*c66ec88fSEmmanuel Vadot compatible = "fcs,fusb302"; 501*c66ec88fSEmmanuel Vadot reg = <0x22>; 502*c66ec88fSEmmanuel Vadot interrupt-parent = <&gpio1>; 503*c66ec88fSEmmanuel Vadot interrupts = <RK_PA2 IRQ_TYPE_LEVEL_LOW>; 504*c66ec88fSEmmanuel Vadot pinctrl-names = "default"; 505*c66ec88fSEmmanuel Vadot pinctrl-0 = <&fusb0_int>; 506*c66ec88fSEmmanuel Vadot vbus-supply = <&vcc5v0_typec>; 507*c66ec88fSEmmanuel Vadot status = "okay"; 508*c66ec88fSEmmanuel Vadot }; 509*c66ec88fSEmmanuel Vadot}; 510*c66ec88fSEmmanuel Vadot 511*c66ec88fSEmmanuel Vadot&i2s0 { 512*c66ec88fSEmmanuel Vadot rockchip,playback-channels = <8>; 513*c66ec88fSEmmanuel Vadot rockchip,capture-channels = <8>; 514*c66ec88fSEmmanuel Vadot status = "okay"; 515*c66ec88fSEmmanuel Vadot}; 516*c66ec88fSEmmanuel Vadot 517*c66ec88fSEmmanuel Vadot&i2s1 { 518*c66ec88fSEmmanuel Vadot rockchip,playback-channels = <2>; 519*c66ec88fSEmmanuel Vadot rockchip,capture-channels = <2>; 520*c66ec88fSEmmanuel Vadot status = "okay"; 521*c66ec88fSEmmanuel Vadot 522*c66ec88fSEmmanuel Vadot i2s1_p0: port { 523*c66ec88fSEmmanuel Vadot i2s1_p0_0: endpoint { 524*c66ec88fSEmmanuel Vadot dai-format = "i2s"; 525*c66ec88fSEmmanuel Vadot mclk-fs = <256>; 526*c66ec88fSEmmanuel Vadot remote-endpoint = <&es8316_p0_0>; 527*c66ec88fSEmmanuel Vadot }; 528*c66ec88fSEmmanuel Vadot }; 529*c66ec88fSEmmanuel Vadot}; 530*c66ec88fSEmmanuel Vadot 531*c66ec88fSEmmanuel Vadot&i2s2 { 532*c66ec88fSEmmanuel Vadot status = "okay"; 533*c66ec88fSEmmanuel Vadot}; 534*c66ec88fSEmmanuel Vadot 535*c66ec88fSEmmanuel Vadot&io_domains { 536*c66ec88fSEmmanuel Vadot status = "okay"; 537*c66ec88fSEmmanuel Vadot 538*c66ec88fSEmmanuel Vadot bt656-supply = <&vcc1v8_dvp>; 539*c66ec88fSEmmanuel Vadot audio-supply = <&vcc_3v0>; 540*c66ec88fSEmmanuel Vadot sdmmc-supply = <&vcc_sdio>; 541*c66ec88fSEmmanuel Vadot gpio1830-supply = <&vcc_3v0>; 542*c66ec88fSEmmanuel Vadot}; 543*c66ec88fSEmmanuel Vadot 544*c66ec88fSEmmanuel Vadot&pcie0 { 545*c66ec88fSEmmanuel Vadot ep-gpios = <&gpio2 RK_PD4 GPIO_ACTIVE_HIGH>; 546*c66ec88fSEmmanuel Vadot num-lanes = <4>; 547*c66ec88fSEmmanuel Vadot pinctrl-names = "default"; 548*c66ec88fSEmmanuel Vadot pinctrl-0 = <&pcie_perst>; 549*c66ec88fSEmmanuel Vadot vpcie12v-supply = <&vcc12v_dcin>; 550*c66ec88fSEmmanuel Vadot vpcie3v3-supply = <&vcc3v3_pcie>; 551*c66ec88fSEmmanuel Vadot status = "okay"; 552*c66ec88fSEmmanuel Vadot}; 553*c66ec88fSEmmanuel Vadot 554*c66ec88fSEmmanuel Vadot&pcie_phy { 555*c66ec88fSEmmanuel Vadot status = "okay"; 556*c66ec88fSEmmanuel Vadot}; 557*c66ec88fSEmmanuel Vadot 558*c66ec88fSEmmanuel Vadot&pmu_io_domains { 559*c66ec88fSEmmanuel Vadot pmu1830-supply = <&vcc_3v0>; 560*c66ec88fSEmmanuel Vadot status = "okay"; 561*c66ec88fSEmmanuel Vadot}; 562*c66ec88fSEmmanuel Vadot 563*c66ec88fSEmmanuel Vadot&pinctrl { 564*c66ec88fSEmmanuel Vadot bt { 565*c66ec88fSEmmanuel Vadot bt_enable_h: bt-enable-h { 566*c66ec88fSEmmanuel Vadot rockchip,pins = <0 RK_PB1 RK_FUNC_GPIO &pcfg_pull_none>; 567*c66ec88fSEmmanuel Vadot }; 568*c66ec88fSEmmanuel Vadot 569*c66ec88fSEmmanuel Vadot bt_host_wake_l: bt-host-wake-l { 570*c66ec88fSEmmanuel Vadot rockchip,pins = <0 RK_PA4 RK_FUNC_GPIO &pcfg_pull_down>; 571*c66ec88fSEmmanuel Vadot }; 572*c66ec88fSEmmanuel Vadot 573*c66ec88fSEmmanuel Vadot bt_wake_l: bt-wake-l { 574*c66ec88fSEmmanuel Vadot rockchip,pins = <2 RK_PD3 RK_FUNC_GPIO &pcfg_pull_none>; 575*c66ec88fSEmmanuel Vadot }; 576*c66ec88fSEmmanuel Vadot }; 577*c66ec88fSEmmanuel Vadot 578*c66ec88fSEmmanuel Vadot buttons { 579*c66ec88fSEmmanuel Vadot pwrbtn: pwrbtn { 580*c66ec88fSEmmanuel Vadot rockchip,pins = <0 RK_PA5 RK_FUNC_GPIO &pcfg_pull_up>; 581*c66ec88fSEmmanuel Vadot }; 582*c66ec88fSEmmanuel Vadot }; 583*c66ec88fSEmmanuel Vadot 584*c66ec88fSEmmanuel Vadot fusb302x { 585*c66ec88fSEmmanuel Vadot fusb0_int: fusb0-int { 586*c66ec88fSEmmanuel Vadot rockchip,pins = <1 RK_PA2 RK_FUNC_GPIO &pcfg_pull_up>; 587*c66ec88fSEmmanuel Vadot }; 588*c66ec88fSEmmanuel Vadot }; 589*c66ec88fSEmmanuel Vadot 590*c66ec88fSEmmanuel Vadot leds { 591*c66ec88fSEmmanuel Vadot work_led_pin: work-led-pin { 592*c66ec88fSEmmanuel Vadot rockchip,pins = <0 RK_PB3 RK_FUNC_GPIO &pcfg_pull_none>; 593*c66ec88fSEmmanuel Vadot }; 594*c66ec88fSEmmanuel Vadot 595*c66ec88fSEmmanuel Vadot diy_led_pin: diy-led-pin { 596*c66ec88fSEmmanuel Vadot rockchip,pins = <0 RK_PA2 RK_FUNC_GPIO &pcfg_pull_none>; 597*c66ec88fSEmmanuel Vadot }; 598*c66ec88fSEmmanuel Vadot }; 599*c66ec88fSEmmanuel Vadot 600*c66ec88fSEmmanuel Vadot pcie { 601*c66ec88fSEmmanuel Vadot pcie_perst: pcie-perst { 602*c66ec88fSEmmanuel Vadot rockchip,pins = <2 RK_PD4 RK_FUNC_GPIO &pcfg_pull_none>; 603*c66ec88fSEmmanuel Vadot }; 604*c66ec88fSEmmanuel Vadot 605*c66ec88fSEmmanuel Vadot pcie_pwr_en: pcie-pwr-en { 606*c66ec88fSEmmanuel Vadot rockchip,pins = <1 RK_PD0 RK_FUNC_GPIO &pcfg_pull_none>; 607*c66ec88fSEmmanuel Vadot }; 608*c66ec88fSEmmanuel Vadot }; 609*c66ec88fSEmmanuel Vadot 610*c66ec88fSEmmanuel Vadot pmic { 611*c66ec88fSEmmanuel Vadot pmic_int_l: pmic-int-l { 612*c66ec88fSEmmanuel Vadot rockchip,pins = <3 RK_PB2 RK_FUNC_GPIO &pcfg_pull_up>; 613*c66ec88fSEmmanuel Vadot }; 614*c66ec88fSEmmanuel Vadot 615*c66ec88fSEmmanuel Vadot vsel1_pin: vsel1-pin { 616*c66ec88fSEmmanuel Vadot rockchip,pins = <1 RK_PC1 RK_FUNC_GPIO &pcfg_pull_down>; 617*c66ec88fSEmmanuel Vadot }; 618*c66ec88fSEmmanuel Vadot 619*c66ec88fSEmmanuel Vadot vsel2_pin: vsel2-pin { 620*c66ec88fSEmmanuel Vadot rockchip,pins = <1 RK_PB6 RK_FUNC_GPIO &pcfg_pull_down>; 621*c66ec88fSEmmanuel Vadot }; 622*c66ec88fSEmmanuel Vadot }; 623*c66ec88fSEmmanuel Vadot 624*c66ec88fSEmmanuel Vadot sdcard { 625*c66ec88fSEmmanuel Vadot sdmmc0_pwr_h: sdmmc0-pwr-h { 626*c66ec88fSEmmanuel Vadot rockchip,pins = <0 RK_PA1 RK_FUNC_GPIO &pcfg_pull_none>; 627*c66ec88fSEmmanuel Vadot }; 628*c66ec88fSEmmanuel Vadot 629*c66ec88fSEmmanuel Vadot }; 630*c66ec88fSEmmanuel Vadot 631*c66ec88fSEmmanuel Vadot sdio-pwrseq { 632*c66ec88fSEmmanuel Vadot wifi_enable_h: wifi-enable-h { 633*c66ec88fSEmmanuel Vadot rockchip,pins = <0 RK_PB2 RK_FUNC_GPIO &pcfg_pull_none>; 634*c66ec88fSEmmanuel Vadot }; 635*c66ec88fSEmmanuel Vadot }; 636*c66ec88fSEmmanuel Vadot 637*c66ec88fSEmmanuel Vadot usb-typec { 638*c66ec88fSEmmanuel Vadot vcc5v0_typec_en: vcc5v0_typec_en { 639*c66ec88fSEmmanuel Vadot rockchip,pins = <1 RK_PA3 RK_FUNC_GPIO &pcfg_pull_up>; 640*c66ec88fSEmmanuel Vadot }; 641*c66ec88fSEmmanuel Vadot }; 642*c66ec88fSEmmanuel Vadot 643*c66ec88fSEmmanuel Vadot usb2 { 644*c66ec88fSEmmanuel Vadot vcc5v0_host_en: vcc5v0-host-en { 645*c66ec88fSEmmanuel Vadot rockchip,pins = <4 RK_PD2 RK_FUNC_GPIO &pcfg_pull_none>; 646*c66ec88fSEmmanuel Vadot }; 647*c66ec88fSEmmanuel Vadot }; 648*c66ec88fSEmmanuel Vadot}; 649*c66ec88fSEmmanuel Vadot 650*c66ec88fSEmmanuel Vadot&pwm0 { 651*c66ec88fSEmmanuel Vadot status = "okay"; 652*c66ec88fSEmmanuel Vadot}; 653*c66ec88fSEmmanuel Vadot 654*c66ec88fSEmmanuel Vadot&pwm1 { 655*c66ec88fSEmmanuel Vadot status = "okay"; 656*c66ec88fSEmmanuel Vadot}; 657*c66ec88fSEmmanuel Vadot 658*c66ec88fSEmmanuel Vadot&pwm2 { 659*c66ec88fSEmmanuel Vadot status = "okay"; 660*c66ec88fSEmmanuel Vadot}; 661*c66ec88fSEmmanuel Vadot 662*c66ec88fSEmmanuel Vadot&saradc { 663*c66ec88fSEmmanuel Vadot vref-supply = <&vcca1v8_s3>; 664*c66ec88fSEmmanuel Vadot status = "okay"; 665*c66ec88fSEmmanuel Vadot}; 666*c66ec88fSEmmanuel Vadot 667*c66ec88fSEmmanuel Vadot&sdio0 { 668*c66ec88fSEmmanuel Vadot bus-width = <4>; 669*c66ec88fSEmmanuel Vadot cap-sd-highspeed; 670*c66ec88fSEmmanuel Vadot cap-sdio-irq; 671*c66ec88fSEmmanuel Vadot disable-wp; 672*c66ec88fSEmmanuel Vadot keep-power-in-suspend; 673*c66ec88fSEmmanuel Vadot mmc-pwrseq = <&sdio_pwrseq>; 674*c66ec88fSEmmanuel Vadot non-removable; 675*c66ec88fSEmmanuel Vadot pinctrl-names = "default"; 676*c66ec88fSEmmanuel Vadot pinctrl-0 = <&sdio0_bus4 &sdio0_cmd &sdio0_clk>; 677*c66ec88fSEmmanuel Vadot sd-uhs-sdr104; 678*c66ec88fSEmmanuel Vadot status = "okay"; 679*c66ec88fSEmmanuel Vadot}; 680*c66ec88fSEmmanuel Vadot 681*c66ec88fSEmmanuel Vadot&sdmmc { 682*c66ec88fSEmmanuel Vadot bus-width = <4>; 683*c66ec88fSEmmanuel Vadot cap-sd-highspeed; 684*c66ec88fSEmmanuel Vadot cd-gpios = <&gpio0 7 GPIO_ACTIVE_LOW>; 685*c66ec88fSEmmanuel Vadot disable-wp; 686*c66ec88fSEmmanuel Vadot max-frequency = <150000000>; 687*c66ec88fSEmmanuel Vadot pinctrl-names = "default"; 688*c66ec88fSEmmanuel Vadot pinctrl-0 = <&sdmmc_clk &sdmmc_cmd &sdmmc_bus4>; 689*c66ec88fSEmmanuel Vadot vmmc-supply = <&vcc3v0_sd>; 690*c66ec88fSEmmanuel Vadot vqmmc-supply = <&vcc_sdio>; 691*c66ec88fSEmmanuel Vadot status = "okay"; 692*c66ec88fSEmmanuel Vadot}; 693*c66ec88fSEmmanuel Vadot 694*c66ec88fSEmmanuel Vadot&sdhci { 695*c66ec88fSEmmanuel Vadot bus-width = <8>; 696*c66ec88fSEmmanuel Vadot mmc-hs200-1_8v; 697*c66ec88fSEmmanuel Vadot non-removable; 698*c66ec88fSEmmanuel Vadot status = "okay"; 699*c66ec88fSEmmanuel Vadot}; 700*c66ec88fSEmmanuel Vadot 701*c66ec88fSEmmanuel Vadot&spi1 { 702*c66ec88fSEmmanuel Vadot status = "okay"; 703*c66ec88fSEmmanuel Vadot 704*c66ec88fSEmmanuel Vadot flash@0 { 705*c66ec88fSEmmanuel Vadot compatible = "jedec,spi-nor"; 706*c66ec88fSEmmanuel Vadot reg = <0>; 707*c66ec88fSEmmanuel Vadot spi-max-frequency = <10000000>; 708*c66ec88fSEmmanuel Vadot }; 709*c66ec88fSEmmanuel Vadot}; 710*c66ec88fSEmmanuel Vadot 711*c66ec88fSEmmanuel Vadot&tcphy0 { 712*c66ec88fSEmmanuel Vadot status = "okay"; 713*c66ec88fSEmmanuel Vadot}; 714*c66ec88fSEmmanuel Vadot 715*c66ec88fSEmmanuel Vadot&tcphy1 { 716*c66ec88fSEmmanuel Vadot status = "okay"; 717*c66ec88fSEmmanuel Vadot}; 718*c66ec88fSEmmanuel Vadot 719*c66ec88fSEmmanuel Vadot&tsadc { 720*c66ec88fSEmmanuel Vadot /* tshut mode 0:CRU 1:GPIO */ 721*c66ec88fSEmmanuel Vadot rockchip,hw-tshut-mode = <1>; 722*c66ec88fSEmmanuel Vadot /* tshut polarity 0:LOW 1:HIGH */ 723*c66ec88fSEmmanuel Vadot rockchip,hw-tshut-polarity = <1>; 724*c66ec88fSEmmanuel Vadot status = "okay"; 725*c66ec88fSEmmanuel Vadot}; 726*c66ec88fSEmmanuel Vadot 727*c66ec88fSEmmanuel Vadot&u2phy0 { 728*c66ec88fSEmmanuel Vadot status = "okay"; 729*c66ec88fSEmmanuel Vadot 730*c66ec88fSEmmanuel Vadot u2phy0_otg: otg-port { 731*c66ec88fSEmmanuel Vadot status = "okay"; 732*c66ec88fSEmmanuel Vadot }; 733*c66ec88fSEmmanuel Vadot 734*c66ec88fSEmmanuel Vadot u2phy0_host: host-port { 735*c66ec88fSEmmanuel Vadot phy-supply = <&vcc5v0_host>; 736*c66ec88fSEmmanuel Vadot status = "okay"; 737*c66ec88fSEmmanuel Vadot }; 738*c66ec88fSEmmanuel Vadot}; 739*c66ec88fSEmmanuel Vadot 740*c66ec88fSEmmanuel Vadot&u2phy1 { 741*c66ec88fSEmmanuel Vadot status = "okay"; 742*c66ec88fSEmmanuel Vadot 743*c66ec88fSEmmanuel Vadot u2phy1_otg: otg-port { 744*c66ec88fSEmmanuel Vadot status = "okay"; 745*c66ec88fSEmmanuel Vadot }; 746*c66ec88fSEmmanuel Vadot 747*c66ec88fSEmmanuel Vadot u2phy1_host: host-port { 748*c66ec88fSEmmanuel Vadot phy-supply = <&vcc5v0_host>; 749*c66ec88fSEmmanuel Vadot status = "okay"; 750*c66ec88fSEmmanuel Vadot }; 751*c66ec88fSEmmanuel Vadot}; 752*c66ec88fSEmmanuel Vadot 753*c66ec88fSEmmanuel Vadot&uart0 { 754*c66ec88fSEmmanuel Vadot pinctrl-names = "default"; 755*c66ec88fSEmmanuel Vadot pinctrl-0 = <&uart0_xfer &uart0_cts &uart0_rts>; 756*c66ec88fSEmmanuel Vadot status = "okay"; 757*c66ec88fSEmmanuel Vadot 758*c66ec88fSEmmanuel Vadot bluetooth { 759*c66ec88fSEmmanuel Vadot compatible = "brcm,bcm43438-bt"; 760*c66ec88fSEmmanuel Vadot clocks = <&rk808 1>; 761*c66ec88fSEmmanuel Vadot clock-names = "lpo"; 762*c66ec88fSEmmanuel Vadot device-wakeup-gpios = <&gpio2 RK_PD3 GPIO_ACTIVE_HIGH>; 763*c66ec88fSEmmanuel Vadot host-wakeup-gpios = <&gpio0 RK_PA4 GPIO_ACTIVE_HIGH>; 764*c66ec88fSEmmanuel Vadot shutdown-gpios = <&gpio0 RK_PB1 GPIO_ACTIVE_HIGH>; 765*c66ec88fSEmmanuel Vadot pinctrl-names = "default"; 766*c66ec88fSEmmanuel Vadot pinctrl-0 = <&bt_host_wake_l &bt_wake_l &bt_enable_h>; 767*c66ec88fSEmmanuel Vadot vbat-supply = <&vcc3v3_sys>; 768*c66ec88fSEmmanuel Vadot vddio-supply = <&vcc_1v8>; 769*c66ec88fSEmmanuel Vadot }; 770*c66ec88fSEmmanuel Vadot}; 771*c66ec88fSEmmanuel Vadot 772*c66ec88fSEmmanuel Vadot&uart2 { 773*c66ec88fSEmmanuel Vadot status = "okay"; 774*c66ec88fSEmmanuel Vadot}; 775*c66ec88fSEmmanuel Vadot 776*c66ec88fSEmmanuel Vadot&usb_host0_ehci { 777*c66ec88fSEmmanuel Vadot status = "okay"; 778*c66ec88fSEmmanuel Vadot}; 779*c66ec88fSEmmanuel Vadot 780*c66ec88fSEmmanuel Vadot&usb_host0_ohci { 781*c66ec88fSEmmanuel Vadot status = "okay"; 782*c66ec88fSEmmanuel Vadot}; 783*c66ec88fSEmmanuel Vadot 784*c66ec88fSEmmanuel Vadot&usb_host1_ehci { 785*c66ec88fSEmmanuel Vadot status = "okay"; 786*c66ec88fSEmmanuel Vadot}; 787*c66ec88fSEmmanuel Vadot 788*c66ec88fSEmmanuel Vadot&usb_host1_ohci { 789*c66ec88fSEmmanuel Vadot status = "okay"; 790*c66ec88fSEmmanuel Vadot}; 791*c66ec88fSEmmanuel Vadot 792*c66ec88fSEmmanuel Vadot&usbdrd3_0 { 793*c66ec88fSEmmanuel Vadot status = "okay"; 794*c66ec88fSEmmanuel Vadot}; 795*c66ec88fSEmmanuel Vadot 796*c66ec88fSEmmanuel Vadot&usbdrd_dwc3_0 { 797*c66ec88fSEmmanuel Vadot status = "okay"; 798*c66ec88fSEmmanuel Vadot dr_mode = "host"; 799*c66ec88fSEmmanuel Vadot}; 800*c66ec88fSEmmanuel Vadot 801*c66ec88fSEmmanuel Vadot&usbdrd3_1 { 802*c66ec88fSEmmanuel Vadot status = "okay"; 803*c66ec88fSEmmanuel Vadot}; 804*c66ec88fSEmmanuel Vadot 805*c66ec88fSEmmanuel Vadot&usbdrd_dwc3_1 { 806*c66ec88fSEmmanuel Vadot status = "okay"; 807*c66ec88fSEmmanuel Vadot dr_mode = "host"; 808*c66ec88fSEmmanuel Vadot}; 809*c66ec88fSEmmanuel Vadot 810*c66ec88fSEmmanuel Vadot&vopb { 811*c66ec88fSEmmanuel Vadot status = "okay"; 812*c66ec88fSEmmanuel Vadot}; 813*c66ec88fSEmmanuel Vadot 814*c66ec88fSEmmanuel Vadot&vopb_mmu { 815*c66ec88fSEmmanuel Vadot status = "okay"; 816*c66ec88fSEmmanuel Vadot}; 817*c66ec88fSEmmanuel Vadot 818*c66ec88fSEmmanuel Vadot&vopl { 819*c66ec88fSEmmanuel Vadot status = "okay"; 820*c66ec88fSEmmanuel Vadot}; 821*c66ec88fSEmmanuel Vadot 822*c66ec88fSEmmanuel Vadot&vopl_mmu { 823*c66ec88fSEmmanuel Vadot status = "okay"; 824*c66ec88fSEmmanuel Vadot}; 825