1c2753d15SKatsuhiro Suzuki// SPDX-License-Identifier: (GPL-2.0+ OR MIT) 2c2753d15SKatsuhiro Suzuki/* 3c2753d15SKatsuhiro Suzuki * Copyright (c) 2017 Fuzhou Rockchip Electronics Co., Ltd. 4c2753d15SKatsuhiro Suzuki * Copyright (c) 2018 Akash Gajjar <Akash_Gajjar@mentor.com> 5c2753d15SKatsuhiro Suzuki */ 6c2753d15SKatsuhiro Suzuki 7c2753d15SKatsuhiro Suzuki#include <dt-bindings/input/linux-event-codes.h> 8c2753d15SKatsuhiro Suzuki#include <dt-bindings/pwm/pwm.h> 9c2753d15SKatsuhiro Suzuki#include "rk3399.dtsi" 10c2753d15SKatsuhiro Suzuki 11c2753d15SKatsuhiro Suzuki/ { 125dcbe7e3SHeiko Stuebner aliases { 135d90cb1eSDragan Simic ethernet0 = &gmac; 145dcbe7e3SHeiko Stuebner mmc0 = &sdio0; 155dcbe7e3SHeiko Stuebner mmc1 = &sdmmc; 165dcbe7e3SHeiko Stuebner mmc2 = &sdhci; 175dcbe7e3SHeiko Stuebner }; 185dcbe7e3SHeiko Stuebner 19c2753d15SKatsuhiro Suzuki chosen { 20c2753d15SKatsuhiro Suzuki stdout-path = "serial2:1500000n8"; 21c2753d15SKatsuhiro Suzuki }; 22c2753d15SKatsuhiro Suzuki 23c2753d15SKatsuhiro Suzuki clkin_gmac: external-gmac-clock { 24c2753d15SKatsuhiro Suzuki compatible = "fixed-clock"; 25c2753d15SKatsuhiro Suzuki clock-frequency = <125000000>; 26c2753d15SKatsuhiro Suzuki clock-output-names = "clkin_gmac"; 27c2753d15SKatsuhiro Suzuki #clock-cells = <0>; 28c2753d15SKatsuhiro Suzuki }; 29c2753d15SKatsuhiro Suzuki 30c2753d15SKatsuhiro Suzuki gpio-keys { 31c2753d15SKatsuhiro Suzuki compatible = "gpio-keys"; 32c2753d15SKatsuhiro Suzuki autorepeat; 33c2753d15SKatsuhiro Suzuki pinctrl-names = "default"; 34c2753d15SKatsuhiro Suzuki pinctrl-0 = <&pwrbtn>; 35c2753d15SKatsuhiro Suzuki 36517ed0ffSKrzysztof Kozlowski key-power { 37c2753d15SKatsuhiro Suzuki debounce-interval = <100>; 38c2753d15SKatsuhiro Suzuki gpios = <&gpio0 RK_PA5 GPIO_ACTIVE_LOW>; 39c2753d15SKatsuhiro Suzuki label = "GPIO Key Power"; 40c2753d15SKatsuhiro Suzuki linux,code = <KEY_POWER>; 41c2753d15SKatsuhiro Suzuki wakeup-source; 42c2753d15SKatsuhiro Suzuki }; 43c2753d15SKatsuhiro Suzuki }; 44c2753d15SKatsuhiro Suzuki 457c7f0413SThomas Schneider ir-receiver { 467c7f0413SThomas Schneider compatible = "gpio-ir-receiver"; 477c7f0413SThomas Schneider gpios = <&gpio0 RK_PA6 GPIO_ACTIVE_LOW>; 487c7f0413SThomas Schneider pinctrl-0 = <&ir_int>; 497c7f0413SThomas Schneider pinctrl-names = "default"; 507c7f0413SThomas Schneider }; 517c7f0413SThomas Schneider 52c2753d15SKatsuhiro Suzuki leds { 53c2753d15SKatsuhiro Suzuki compatible = "gpio-leds"; 54c2753d15SKatsuhiro Suzuki pinctrl-names = "default"; 556dd5e12cSJohan Jonker pinctrl-0 = <&work_led_pin>, <&diy_led_pin>; 56c2753d15SKatsuhiro Suzuki 576dd5e12cSJohan Jonker work_led: led-0 { 58c2753d15SKatsuhiro Suzuki label = "work"; 59c2753d15SKatsuhiro Suzuki default-state = "on"; 60c2753d15SKatsuhiro Suzuki gpios = <&gpio0 RK_PB3 GPIO_ACTIVE_HIGH>; 61c2753d15SKatsuhiro Suzuki }; 62c2753d15SKatsuhiro Suzuki 636dd5e12cSJohan Jonker diy_led: led-1 { 64c2753d15SKatsuhiro Suzuki label = "diy"; 65c2753d15SKatsuhiro Suzuki default-state = "off"; 66c2753d15SKatsuhiro Suzuki gpios = <&gpio0 RK_PA2 GPIO_ACTIVE_HIGH>; 67c2753d15SKatsuhiro Suzuki }; 68c2753d15SKatsuhiro Suzuki }; 69c2753d15SKatsuhiro Suzuki 70c2753d15SKatsuhiro Suzuki fan: pwm-fan { 71c2753d15SKatsuhiro Suzuki compatible = "pwm-fan"; 72d09ebc6bSPeter Geis cooling-levels = <0 100 150 200 255>; 73c2753d15SKatsuhiro Suzuki #cooling-cells = <2>; 74c2753d15SKatsuhiro Suzuki fan-supply = <&vcc12v_dcin>; 75c2753d15SKatsuhiro Suzuki pwms = <&pwm1 0 50000 0>; 76c2753d15SKatsuhiro Suzuki }; 77c2753d15SKatsuhiro Suzuki 78c2753d15SKatsuhiro Suzuki sdio_pwrseq: sdio-pwrseq { 79c2753d15SKatsuhiro Suzuki compatible = "mmc-pwrseq-simple"; 80c2753d15SKatsuhiro Suzuki clocks = <&rk808 1>; 81c2753d15SKatsuhiro Suzuki clock-names = "ext_clock"; 82c2753d15SKatsuhiro Suzuki pinctrl-names = "default"; 83c2753d15SKatsuhiro Suzuki pinctrl-0 = <&wifi_enable_h>; 84c2753d15SKatsuhiro Suzuki reset-gpios = <&gpio0 RK_PB2 GPIO_ACTIVE_LOW>; 85c2753d15SKatsuhiro Suzuki }; 86c2753d15SKatsuhiro Suzuki 87c2753d15SKatsuhiro Suzuki sound { 88c2753d15SKatsuhiro Suzuki compatible = "audio-graph-card"; 897582ad63SKatsuhiro Suzuki label = "Analog"; 90c2753d15SKatsuhiro Suzuki dais = <&i2s1_p0>; 91c2753d15SKatsuhiro Suzuki }; 92c2753d15SKatsuhiro Suzuki 937f02feb5SKatsuhiro Suzuki sound-dit { 947f02feb5SKatsuhiro Suzuki compatible = "audio-graph-card"; 957582ad63SKatsuhiro Suzuki label = "SPDIF"; 967f02feb5SKatsuhiro Suzuki dais = <&spdif_p0>; 977f02feb5SKatsuhiro Suzuki }; 987f02feb5SKatsuhiro Suzuki 997f02feb5SKatsuhiro Suzuki spdif-dit { 1007f02feb5SKatsuhiro Suzuki compatible = "linux,spdif-dit"; 1017f02feb5SKatsuhiro Suzuki #sound-dai-cells = <0>; 1027f02feb5SKatsuhiro Suzuki 1037f02feb5SKatsuhiro Suzuki port { 1047f02feb5SKatsuhiro Suzuki dit_p0_0: endpoint { 1057f02feb5SKatsuhiro Suzuki remote-endpoint = <&spdif_p0_0>; 1067f02feb5SKatsuhiro Suzuki }; 1077f02feb5SKatsuhiro Suzuki }; 1087f02feb5SKatsuhiro Suzuki }; 1097f02feb5SKatsuhiro Suzuki 1105c96e633SJohan Jonker vcc12v_dcin: regulator-vcc12v-dcin { 111c2753d15SKatsuhiro Suzuki compatible = "regulator-fixed"; 112c2753d15SKatsuhiro Suzuki regulator-name = "vcc12v_dcin"; 113c2753d15SKatsuhiro Suzuki regulator-always-on; 114c2753d15SKatsuhiro Suzuki regulator-boot-on; 115c2753d15SKatsuhiro Suzuki regulator-min-microvolt = <12000000>; 116c2753d15SKatsuhiro Suzuki regulator-max-microvolt = <12000000>; 117c2753d15SKatsuhiro Suzuki }; 118c2753d15SKatsuhiro Suzuki 119c2753d15SKatsuhiro Suzuki /* switched by pmic_sleep */ 1205c96e633SJohan Jonker vcc1v8_s3: vcca1v8_s3: regulator-vcc1v8-s3 { 121c2753d15SKatsuhiro Suzuki compatible = "regulator-fixed"; 122c2753d15SKatsuhiro Suzuki regulator-name = "vcc1v8_s3"; 123c2753d15SKatsuhiro Suzuki regulator-always-on; 124c2753d15SKatsuhiro Suzuki regulator-boot-on; 125c2753d15SKatsuhiro Suzuki regulator-min-microvolt = <1800000>; 126c2753d15SKatsuhiro Suzuki regulator-max-microvolt = <1800000>; 127c2753d15SKatsuhiro Suzuki vin-supply = <&vcc_1v8>; 128c2753d15SKatsuhiro Suzuki }; 129c2753d15SKatsuhiro Suzuki 1301f5a3e16STobias Schramm /* micro SD card power */ 1315c96e633SJohan Jonker vcc3v0_sd: regulator-vcc3v0-sd { 1321f5a3e16STobias Schramm compatible = "regulator-fixed"; 1331f5a3e16STobias Schramm enable-active-high; 1341f5a3e16STobias Schramm gpio = <&gpio0 RK_PA1 GPIO_ACTIVE_HIGH>; 1351f5a3e16STobias Schramm pinctrl-names = "default"; 1361f5a3e16STobias Schramm pinctrl-0 = <&sdmmc0_pwr_h>; 1371f5a3e16STobias Schramm regulator-name = "vcc3v0_sd"; 1381f5a3e16STobias Schramm regulator-always-on; 1391f5a3e16STobias Schramm regulator-min-microvolt = <3000000>; 1401f5a3e16STobias Schramm regulator-max-microvolt = <3000000>; 1411f5a3e16STobias Schramm vin-supply = <&vcc3v3_sys>; 1421f5a3e16STobias Schramm 1431f5a3e16STobias Schramm regulator-state-mem { 1441f5a3e16STobias Schramm regulator-off-in-suspend; 1451f5a3e16STobias Schramm }; 1461f5a3e16STobias Schramm }; 1471f5a3e16STobias Schramm 1485c96e633SJohan Jonker vcc3v3_pcie: regulator-vcc3v3-pcie { 149c2753d15SKatsuhiro Suzuki compatible = "regulator-fixed"; 150c2753d15SKatsuhiro Suzuki enable-active-high; 151c2753d15SKatsuhiro Suzuki gpio = <&gpio1 RK_PD0 GPIO_ACTIVE_HIGH>; 152c2753d15SKatsuhiro Suzuki pinctrl-names = "default"; 153c2753d15SKatsuhiro Suzuki pinctrl-0 = <&pcie_pwr_en>; 154c2753d15SKatsuhiro Suzuki regulator-name = "vcc3v3_pcie"; 155c2753d15SKatsuhiro Suzuki regulator-always-on; 156c2753d15SKatsuhiro Suzuki regulator-boot-on; 157c2753d15SKatsuhiro Suzuki vin-supply = <&vcc12v_dcin>; 158c2753d15SKatsuhiro Suzuki }; 159c2753d15SKatsuhiro Suzuki 1605c96e633SJohan Jonker vcc3v3_sys: regulator-vcc3v3-sys { 161c2753d15SKatsuhiro Suzuki compatible = "regulator-fixed"; 162c2753d15SKatsuhiro Suzuki regulator-name = "vcc3v3_sys"; 163c2753d15SKatsuhiro Suzuki regulator-always-on; 164c2753d15SKatsuhiro Suzuki regulator-boot-on; 165c2753d15SKatsuhiro Suzuki regulator-min-microvolt = <3300000>; 166c2753d15SKatsuhiro Suzuki regulator-max-microvolt = <3300000>; 167c2753d15SKatsuhiro Suzuki vin-supply = <&vcc5v0_sys>; 168c2753d15SKatsuhiro Suzuki }; 169c2753d15SKatsuhiro Suzuki 170c2753d15SKatsuhiro Suzuki /* Actually 3 regulators (host0, 1, 2) controlled by the same gpio */ 1715c96e633SJohan Jonker vcc5v0_host: regulator-vcc5v0-host { 172c2753d15SKatsuhiro Suzuki compatible = "regulator-fixed"; 173c2753d15SKatsuhiro Suzuki enable-active-high; 174c2753d15SKatsuhiro Suzuki gpio = <&gpio4 RK_PD2 GPIO_ACTIVE_HIGH>; 175c2753d15SKatsuhiro Suzuki pinctrl-names = "default"; 176c2753d15SKatsuhiro Suzuki pinctrl-0 = <&vcc5v0_host_en>; 177c2753d15SKatsuhiro Suzuki regulator-name = "vcc5v0_host"; 178c2753d15SKatsuhiro Suzuki regulator-always-on; 179c2753d15SKatsuhiro Suzuki vin-supply = <&vcc5v0_usb>; 180c2753d15SKatsuhiro Suzuki }; 181c2753d15SKatsuhiro Suzuki 1825c96e633SJohan Jonker vcc5v0_typec: regulator-vcc5v0-typec { 183c2753d15SKatsuhiro Suzuki compatible = "regulator-fixed"; 184c2753d15SKatsuhiro Suzuki enable-active-high; 185c2753d15SKatsuhiro Suzuki gpio = <&gpio1 RK_PA3 GPIO_ACTIVE_HIGH>; 186c2753d15SKatsuhiro Suzuki pinctrl-names = "default"; 187c2753d15SKatsuhiro Suzuki pinctrl-0 = <&vcc5v0_typec_en>; 188c2753d15SKatsuhiro Suzuki regulator-name = "vcc5v0_typec"; 189c2753d15SKatsuhiro Suzuki regulator-always-on; 190c2753d15SKatsuhiro Suzuki vin-supply = <&vcc5v0_usb>; 191c2753d15SKatsuhiro Suzuki }; 192c2753d15SKatsuhiro Suzuki 1935c96e633SJohan Jonker vcc5v0_sys: regulator-vcc5v0-sys { 194c2753d15SKatsuhiro Suzuki compatible = "regulator-fixed"; 195c2753d15SKatsuhiro Suzuki regulator-name = "vcc5v0_sys"; 196c2753d15SKatsuhiro Suzuki regulator-always-on; 197c2753d15SKatsuhiro Suzuki regulator-boot-on; 198c2753d15SKatsuhiro Suzuki regulator-min-microvolt = <5000000>; 199c2753d15SKatsuhiro Suzuki regulator-max-microvolt = <5000000>; 200c2753d15SKatsuhiro Suzuki vin-supply = <&vcc12v_dcin>; 201c2753d15SKatsuhiro Suzuki }; 202c2753d15SKatsuhiro Suzuki 2035c96e633SJohan Jonker vcc5v0_usb: regulator-vcc5v0-usb { 204c2753d15SKatsuhiro Suzuki compatible = "regulator-fixed"; 205c2753d15SKatsuhiro Suzuki regulator-name = "vcc5v0_usb"; 206c2753d15SKatsuhiro Suzuki regulator-always-on; 207c2753d15SKatsuhiro Suzuki regulator-boot-on; 208c2753d15SKatsuhiro Suzuki regulator-min-microvolt = <5000000>; 209c2753d15SKatsuhiro Suzuki regulator-max-microvolt = <5000000>; 210c2753d15SKatsuhiro Suzuki vin-supply = <&vcc12v_dcin>; 211c2753d15SKatsuhiro Suzuki }; 212c2753d15SKatsuhiro Suzuki 213bd1c959fSDragan Simic vcca_0v9: regulator-vcca-0v9 { 214bd1c959fSDragan Simic compatible = "regulator-fixed"; 215bd1c959fSDragan Simic regulator-name = "vcca_0v9"; 216bd1c959fSDragan Simic regulator-always-on; 217bd1c959fSDragan Simic regulator-boot-on; 218bd1c959fSDragan Simic regulator-min-microvolt = <900000>; 219bd1c959fSDragan Simic regulator-max-microvolt = <900000>; 220bd1c959fSDragan Simic vin-supply = <&vcc3v3_sys>; 221bd1c959fSDragan Simic }; 222bd1c959fSDragan Simic 2235c96e633SJohan Jonker vdd_log: regulator-vdd-log { 224c2753d15SKatsuhiro Suzuki compatible = "pwm-regulator"; 225c2753d15SKatsuhiro Suzuki pwms = <&pwm2 0 25000 1>; 226dc570e8eSHeiko Stuebner pwm-supply = <&vcc5v0_sys>; 227c2753d15SKatsuhiro Suzuki regulator-name = "vdd_log"; 228c2753d15SKatsuhiro Suzuki regulator-always-on; 229c2753d15SKatsuhiro Suzuki regulator-boot-on; 230c2753d15SKatsuhiro Suzuki regulator-min-microvolt = <800000>; 231c2753d15SKatsuhiro Suzuki regulator-max-microvolt = <1700000>; 232c2753d15SKatsuhiro Suzuki }; 233c2753d15SKatsuhiro Suzuki}; 234c2753d15SKatsuhiro Suzuki 235c2753d15SKatsuhiro Suzuki&cpu_l0 { 236c2753d15SKatsuhiro Suzuki cpu-supply = <&vdd_cpu_l>; 237c2753d15SKatsuhiro Suzuki}; 238c2753d15SKatsuhiro Suzuki 239c2753d15SKatsuhiro Suzuki&cpu_l1 { 240c2753d15SKatsuhiro Suzuki cpu-supply = <&vdd_cpu_l>; 241c2753d15SKatsuhiro Suzuki}; 242c2753d15SKatsuhiro Suzuki 243c2753d15SKatsuhiro Suzuki&cpu_l2 { 244c2753d15SKatsuhiro Suzuki cpu-supply = <&vdd_cpu_l>; 245c2753d15SKatsuhiro Suzuki}; 246c2753d15SKatsuhiro Suzuki 247c2753d15SKatsuhiro Suzuki&cpu_l3 { 248c2753d15SKatsuhiro Suzuki cpu-supply = <&vdd_cpu_l>; 249c2753d15SKatsuhiro Suzuki}; 250c2753d15SKatsuhiro Suzuki 251c2753d15SKatsuhiro Suzuki&cpu_b0 { 252c2753d15SKatsuhiro Suzuki cpu-supply = <&vdd_cpu_b>; 253c2753d15SKatsuhiro Suzuki}; 254c2753d15SKatsuhiro Suzuki 255c2753d15SKatsuhiro Suzuki&cpu_b1 { 256c2753d15SKatsuhiro Suzuki cpu-supply = <&vdd_cpu_b>; 257c2753d15SKatsuhiro Suzuki}; 258c2753d15SKatsuhiro Suzuki 259d09ebc6bSPeter Geis&cpu_thermal { 260d09ebc6bSPeter Geis trips { 261d09ebc6bSPeter Geis cpu_warm: cpu_warm { 262d09ebc6bSPeter Geis temperature = <55000>; 263d09ebc6bSPeter Geis hysteresis = <2000>; 264d09ebc6bSPeter Geis type = "active"; 265d09ebc6bSPeter Geis }; 266d09ebc6bSPeter Geis 267d09ebc6bSPeter Geis cpu_hot: cpu_hot { 268d09ebc6bSPeter Geis temperature = <65000>; 269d09ebc6bSPeter Geis hysteresis = <2000>; 270d09ebc6bSPeter Geis type = "active"; 271d09ebc6bSPeter Geis }; 272d09ebc6bSPeter Geis }; 273d09ebc6bSPeter Geis 274d09ebc6bSPeter Geis cooling-maps { 275d09ebc6bSPeter Geis map2 { 276d09ebc6bSPeter Geis trip = <&cpu_warm>; 277d09ebc6bSPeter Geis cooling-device = <&fan THERMAL_NO_LIMIT 1>; 278d09ebc6bSPeter Geis }; 279d09ebc6bSPeter Geis 280d09ebc6bSPeter Geis map3 { 281d09ebc6bSPeter Geis trip = <&cpu_hot>; 282d09ebc6bSPeter Geis cooling-device = <&fan 2 THERMAL_NO_LIMIT>; 283d09ebc6bSPeter Geis }; 284d09ebc6bSPeter Geis }; 285d09ebc6bSPeter Geis}; 286d09ebc6bSPeter Geis 287c2753d15SKatsuhiro Suzuki&emmc_phy { 288c2753d15SKatsuhiro Suzuki status = "okay"; 289c2753d15SKatsuhiro Suzuki}; 290c2753d15SKatsuhiro Suzuki 291c2753d15SKatsuhiro Suzuki&gmac { 292c2753d15SKatsuhiro Suzuki assigned-clocks = <&cru SCLK_RMII_SRC>; 293c2753d15SKatsuhiro Suzuki assigned-clock-parents = <&clkin_gmac>; 294c2753d15SKatsuhiro Suzuki clock_in_out = "input"; 295c2753d15SKatsuhiro Suzuki phy-supply = <&vcc_lan>; 296c2753d15SKatsuhiro Suzuki phy-mode = "rgmii"; 297c2753d15SKatsuhiro Suzuki pinctrl-names = "default"; 298c2753d15SKatsuhiro Suzuki pinctrl-0 = <&rgmii_pins>; 299c2753d15SKatsuhiro Suzuki snps,reset-gpio = <&gpio3 RK_PB7 GPIO_ACTIVE_LOW>; 300c2753d15SKatsuhiro Suzuki snps,reset-active-low; 301c2753d15SKatsuhiro Suzuki snps,reset-delays-us = <0 10000 50000>; 302c2753d15SKatsuhiro Suzuki tx_delay = <0x28>; 303c2753d15SKatsuhiro Suzuki rx_delay = <0x11>; 304c2753d15SKatsuhiro Suzuki status = "okay"; 305c2753d15SKatsuhiro Suzuki}; 306c2753d15SKatsuhiro Suzuki 307c2753d15SKatsuhiro Suzuki&hdmi { 308bd1c959fSDragan Simic avdd-0v9-supply = <&vcca_0v9>; 309bd1c959fSDragan Simic avdd-1v8-supply = <&vcc1v8_dvp>; 310c2753d15SKatsuhiro Suzuki ddc-i2c-bus = <&i2c3>; 311c2753d15SKatsuhiro Suzuki pinctrl-names = "default"; 312c2753d15SKatsuhiro Suzuki pinctrl-0 = <&hdmi_cec>; 313c2753d15SKatsuhiro Suzuki status = "okay"; 314c2753d15SKatsuhiro Suzuki}; 315c2753d15SKatsuhiro Suzuki 316c2753d15SKatsuhiro Suzuki&hdmi_sound { 317c2753d15SKatsuhiro Suzuki status = "okay"; 318c2753d15SKatsuhiro Suzuki}; 319c2753d15SKatsuhiro Suzuki 320c2753d15SKatsuhiro Suzuki&gpu { 321c2753d15SKatsuhiro Suzuki mali-supply = <&vdd_gpu>; 322c2753d15SKatsuhiro Suzuki status = "okay"; 323c2753d15SKatsuhiro Suzuki}; 324c2753d15SKatsuhiro Suzuki 325c2753d15SKatsuhiro Suzuki&i2c0 { 326c2753d15SKatsuhiro Suzuki clock-frequency = <400000>; 327c2753d15SKatsuhiro Suzuki i2c-scl-rising-time-ns = <168>; 328c2753d15SKatsuhiro Suzuki i2c-scl-falling-time-ns = <4>; 329c2753d15SKatsuhiro Suzuki status = "okay"; 330c2753d15SKatsuhiro Suzuki 331c2753d15SKatsuhiro Suzuki rk808: pmic@1b { 332c2753d15SKatsuhiro Suzuki compatible = "rockchip,rk808"; 333c2753d15SKatsuhiro Suzuki reg = <0x1b>; 334c2753d15SKatsuhiro Suzuki interrupt-parent = <&gpio3>; 335c2753d15SKatsuhiro Suzuki interrupts = <10 IRQ_TYPE_LEVEL_LOW>; 336c2753d15SKatsuhiro Suzuki #clock-cells = <1>; 337c2753d15SKatsuhiro Suzuki clock-output-names = "xin32k", "rk808-clkout2"; 338c2753d15SKatsuhiro Suzuki pinctrl-names = "default"; 339c2753d15SKatsuhiro Suzuki pinctrl-0 = <&pmic_int_l>; 3405a49e05bSDiederik de Haas system-power-controller; 341c2753d15SKatsuhiro Suzuki wakeup-source; 342c2753d15SKatsuhiro Suzuki 343c2753d15SKatsuhiro Suzuki vcc1-supply = <&vcc5v0_sys>; 344c2753d15SKatsuhiro Suzuki vcc2-supply = <&vcc5v0_sys>; 345c2753d15SKatsuhiro Suzuki vcc3-supply = <&vcc5v0_sys>; 346c2753d15SKatsuhiro Suzuki vcc4-supply = <&vcc5v0_sys>; 347c2753d15SKatsuhiro Suzuki vcc6-supply = <&vcc5v0_sys>; 348c2753d15SKatsuhiro Suzuki vcc7-supply = <&vcc5v0_sys>; 349c2753d15SKatsuhiro Suzuki vcc8-supply = <&vcc3v3_sys>; 350c2753d15SKatsuhiro Suzuki vcc9-supply = <&vcc5v0_sys>; 351c2753d15SKatsuhiro Suzuki vcc10-supply = <&vcc5v0_sys>; 352c2753d15SKatsuhiro Suzuki vcc11-supply = <&vcc5v0_sys>; 353c2753d15SKatsuhiro Suzuki vcc12-supply = <&vcc3v3_sys>; 354c2753d15SKatsuhiro Suzuki vddio-supply = <&vcca_1v8>; 355c2753d15SKatsuhiro Suzuki 356c2753d15SKatsuhiro Suzuki regulators { 357c2753d15SKatsuhiro Suzuki vdd_center: DCDC_REG1 { 358c2753d15SKatsuhiro Suzuki regulator-name = "vdd_center"; 359c2753d15SKatsuhiro Suzuki regulator-always-on; 360c2753d15SKatsuhiro Suzuki regulator-boot-on; 361c2753d15SKatsuhiro Suzuki regulator-min-microvolt = <750000>; 362c2753d15SKatsuhiro Suzuki regulator-max-microvolt = <1350000>; 363c2753d15SKatsuhiro Suzuki regulator-ramp-delay = <6001>; 364c2753d15SKatsuhiro Suzuki regulator-state-mem { 365c2753d15SKatsuhiro Suzuki regulator-off-in-suspend; 366c2753d15SKatsuhiro Suzuki }; 367c2753d15SKatsuhiro Suzuki }; 368c2753d15SKatsuhiro Suzuki 369c2753d15SKatsuhiro Suzuki vdd_cpu_l: DCDC_REG2 { 370c2753d15SKatsuhiro Suzuki regulator-name = "vdd_cpu_l"; 371c2753d15SKatsuhiro Suzuki regulator-always-on; 372c2753d15SKatsuhiro Suzuki regulator-boot-on; 373c2753d15SKatsuhiro Suzuki regulator-min-microvolt = <750000>; 374c2753d15SKatsuhiro Suzuki regulator-max-microvolt = <1350000>; 375c2753d15SKatsuhiro Suzuki regulator-ramp-delay = <6001>; 376c2753d15SKatsuhiro Suzuki regulator-state-mem { 377c2753d15SKatsuhiro Suzuki regulator-off-in-suspend; 378c2753d15SKatsuhiro Suzuki }; 379c2753d15SKatsuhiro Suzuki }; 380c2753d15SKatsuhiro Suzuki 381c2753d15SKatsuhiro Suzuki vcc_ddr: DCDC_REG3 { 382c2753d15SKatsuhiro Suzuki regulator-name = "vcc_ddr"; 383c2753d15SKatsuhiro Suzuki regulator-always-on; 384c2753d15SKatsuhiro Suzuki regulator-boot-on; 385c2753d15SKatsuhiro Suzuki regulator-state-mem { 386c2753d15SKatsuhiro Suzuki regulator-on-in-suspend; 387c2753d15SKatsuhiro Suzuki }; 388c2753d15SKatsuhiro Suzuki }; 389c2753d15SKatsuhiro Suzuki 390c2753d15SKatsuhiro Suzuki vcc_1v8: DCDC_REG4 { 391c2753d15SKatsuhiro Suzuki regulator-name = "vcc_1v8"; 392c2753d15SKatsuhiro Suzuki regulator-always-on; 393c2753d15SKatsuhiro Suzuki regulator-boot-on; 394c2753d15SKatsuhiro Suzuki regulator-min-microvolt = <1800000>; 395c2753d15SKatsuhiro Suzuki regulator-max-microvolt = <1800000>; 396c2753d15SKatsuhiro Suzuki regulator-state-mem { 397c2753d15SKatsuhiro Suzuki regulator-on-in-suspend; 398c2753d15SKatsuhiro Suzuki regulator-suspend-microvolt = <1800000>; 399c2753d15SKatsuhiro Suzuki }; 400c2753d15SKatsuhiro Suzuki }; 401c2753d15SKatsuhiro Suzuki 402c2753d15SKatsuhiro Suzuki vcc1v8_dvp: LDO_REG1 { 403c2753d15SKatsuhiro Suzuki regulator-name = "vcc1v8_dvp"; 404c2753d15SKatsuhiro Suzuki regulator-always-on; 405c2753d15SKatsuhiro Suzuki regulator-boot-on; 406c2753d15SKatsuhiro Suzuki regulator-min-microvolt = <1800000>; 407c2753d15SKatsuhiro Suzuki regulator-max-microvolt = <1800000>; 408c2753d15SKatsuhiro Suzuki regulator-state-mem { 409c2753d15SKatsuhiro Suzuki regulator-off-in-suspend; 410c2753d15SKatsuhiro Suzuki }; 411c2753d15SKatsuhiro Suzuki }; 412c2753d15SKatsuhiro Suzuki 413c2753d15SKatsuhiro Suzuki vcc3v0_touch: LDO_REG2 { 414c2753d15SKatsuhiro Suzuki regulator-name = "vcc3v0_touch"; 415c2753d15SKatsuhiro Suzuki regulator-min-microvolt = <3000000>; 416c2753d15SKatsuhiro Suzuki regulator-max-microvolt = <3000000>; 417c2753d15SKatsuhiro Suzuki regulator-state-mem { 418c2753d15SKatsuhiro Suzuki regulator-off-in-suspend; 419c2753d15SKatsuhiro Suzuki }; 420c2753d15SKatsuhiro Suzuki }; 421c2753d15SKatsuhiro Suzuki 422c2753d15SKatsuhiro Suzuki vcca_1v8: LDO_REG3 { 423c2753d15SKatsuhiro Suzuki regulator-name = "vcca_1v8"; 424c2753d15SKatsuhiro Suzuki regulator-always-on; 425c2753d15SKatsuhiro Suzuki regulator-boot-on; 426c2753d15SKatsuhiro Suzuki regulator-min-microvolt = <1800000>; 427c2753d15SKatsuhiro Suzuki regulator-max-microvolt = <1800000>; 428c2753d15SKatsuhiro Suzuki regulator-state-mem { 429c2753d15SKatsuhiro Suzuki regulator-on-in-suspend; 430c2753d15SKatsuhiro Suzuki regulator-suspend-microvolt = <1800000>; 431c2753d15SKatsuhiro Suzuki }; 432c2753d15SKatsuhiro Suzuki }; 433c2753d15SKatsuhiro Suzuki 434c2753d15SKatsuhiro Suzuki vcc_sdio: LDO_REG4 { 435c2753d15SKatsuhiro Suzuki regulator-name = "vcc_sdio"; 436c2753d15SKatsuhiro Suzuki regulator-always-on; 437c2753d15SKatsuhiro Suzuki regulator-boot-on; 438c2753d15SKatsuhiro Suzuki regulator-min-microvolt = <1800000>; 439c2753d15SKatsuhiro Suzuki regulator-max-microvolt = <3000000>; 440c2753d15SKatsuhiro Suzuki regulator-state-mem { 441c2753d15SKatsuhiro Suzuki regulator-on-in-suspend; 442c2753d15SKatsuhiro Suzuki regulator-suspend-microvolt = <3000000>; 443c2753d15SKatsuhiro Suzuki }; 444c2753d15SKatsuhiro Suzuki }; 445c2753d15SKatsuhiro Suzuki 446c2753d15SKatsuhiro Suzuki vcca3v0_codec: LDO_REG5 { 447c2753d15SKatsuhiro Suzuki regulator-name = "vcca3v0_codec"; 448c2753d15SKatsuhiro Suzuki regulator-always-on; 449c2753d15SKatsuhiro Suzuki regulator-boot-on; 450c2753d15SKatsuhiro Suzuki regulator-min-microvolt = <3000000>; 451c2753d15SKatsuhiro Suzuki regulator-max-microvolt = <3000000>; 452c2753d15SKatsuhiro Suzuki regulator-state-mem { 453c2753d15SKatsuhiro Suzuki regulator-off-in-suspend; 454c2753d15SKatsuhiro Suzuki }; 455c2753d15SKatsuhiro Suzuki }; 456c2753d15SKatsuhiro Suzuki 457c2753d15SKatsuhiro Suzuki vcc_1v5: LDO_REG6 { 458c2753d15SKatsuhiro Suzuki regulator-name = "vcc_1v5"; 459c2753d15SKatsuhiro Suzuki regulator-always-on; 460c2753d15SKatsuhiro Suzuki regulator-boot-on; 461c2753d15SKatsuhiro Suzuki regulator-min-microvolt = <1500000>; 462c2753d15SKatsuhiro Suzuki regulator-max-microvolt = <1500000>; 463c2753d15SKatsuhiro Suzuki regulator-state-mem { 464c2753d15SKatsuhiro Suzuki regulator-on-in-suspend; 465c2753d15SKatsuhiro Suzuki regulator-suspend-microvolt = <1500000>; 466c2753d15SKatsuhiro Suzuki }; 467c2753d15SKatsuhiro Suzuki }; 468c2753d15SKatsuhiro Suzuki 469c2753d15SKatsuhiro Suzuki vcca1v8_codec: LDO_REG7 { 470c2753d15SKatsuhiro Suzuki regulator-name = "vcca1v8_codec"; 471c2753d15SKatsuhiro Suzuki regulator-always-on; 472c2753d15SKatsuhiro Suzuki regulator-boot-on; 473c2753d15SKatsuhiro Suzuki regulator-min-microvolt = <1800000>; 474c2753d15SKatsuhiro Suzuki regulator-max-microvolt = <1800000>; 475c2753d15SKatsuhiro Suzuki regulator-state-mem { 476c2753d15SKatsuhiro Suzuki regulator-off-in-suspend; 477c2753d15SKatsuhiro Suzuki }; 478c2753d15SKatsuhiro Suzuki }; 479c2753d15SKatsuhiro Suzuki 480c2753d15SKatsuhiro Suzuki vcc_3v0: LDO_REG8 { 481c2753d15SKatsuhiro Suzuki regulator-name = "vcc_3v0"; 482c2753d15SKatsuhiro Suzuki regulator-always-on; 483c2753d15SKatsuhiro Suzuki regulator-boot-on; 484c2753d15SKatsuhiro Suzuki regulator-min-microvolt = <3000000>; 485c2753d15SKatsuhiro Suzuki regulator-max-microvolt = <3000000>; 486c2753d15SKatsuhiro Suzuki regulator-state-mem { 487c2753d15SKatsuhiro Suzuki regulator-on-in-suspend; 488c2753d15SKatsuhiro Suzuki regulator-suspend-microvolt = <3000000>; 489c2753d15SKatsuhiro Suzuki }; 490c2753d15SKatsuhiro Suzuki }; 491c2753d15SKatsuhiro Suzuki 492c2753d15SKatsuhiro Suzuki vcc3v3_s3: vcc_lan: SWITCH_REG1 { 493c2753d15SKatsuhiro Suzuki regulator-name = "vcc3v3_s3"; 494c2753d15SKatsuhiro Suzuki regulator-always-on; 495c2753d15SKatsuhiro Suzuki regulator-boot-on; 496c2753d15SKatsuhiro Suzuki regulator-state-mem { 497c2753d15SKatsuhiro Suzuki regulator-off-in-suspend; 498c2753d15SKatsuhiro Suzuki }; 499c2753d15SKatsuhiro Suzuki }; 500c2753d15SKatsuhiro Suzuki 501c2753d15SKatsuhiro Suzuki vcc3v3_s0: SWITCH_REG2 { 502c2753d15SKatsuhiro Suzuki regulator-name = "vcc3v3_s0"; 503c2753d15SKatsuhiro Suzuki regulator-state-mem { 504c2753d15SKatsuhiro Suzuki regulator-off-in-suspend; 505c2753d15SKatsuhiro Suzuki }; 506c2753d15SKatsuhiro Suzuki }; 507c2753d15SKatsuhiro Suzuki }; 508c2753d15SKatsuhiro Suzuki }; 509c2753d15SKatsuhiro Suzuki 510c2753d15SKatsuhiro Suzuki vdd_cpu_b: regulator@40 { 511c2753d15SKatsuhiro Suzuki compatible = "silergy,syr827"; 512c2753d15SKatsuhiro Suzuki reg = <0x40>; 513c2753d15SKatsuhiro Suzuki fcs,suspend-voltage-selector = <1>; 514c2753d15SKatsuhiro Suzuki pinctrl-names = "default"; 5152bc65fefSJohan Jonker pinctrl-0 = <&vsel1_pin>; 516c2753d15SKatsuhiro Suzuki regulator-name = "vdd_cpu_b"; 517c2753d15SKatsuhiro Suzuki regulator-min-microvolt = <712500>; 518c2753d15SKatsuhiro Suzuki regulator-max-microvolt = <1500000>; 519c2753d15SKatsuhiro Suzuki regulator-ramp-delay = <1000>; 520c2753d15SKatsuhiro Suzuki regulator-always-on; 521c2753d15SKatsuhiro Suzuki regulator-boot-on; 522c2753d15SKatsuhiro Suzuki vin-supply = <&vcc5v0_sys>; 523c2753d15SKatsuhiro Suzuki 524c2753d15SKatsuhiro Suzuki regulator-state-mem { 525c2753d15SKatsuhiro Suzuki regulator-off-in-suspend; 526c2753d15SKatsuhiro Suzuki }; 527c2753d15SKatsuhiro Suzuki }; 528c2753d15SKatsuhiro Suzuki 529c2753d15SKatsuhiro Suzuki vdd_gpu: regulator@41 { 530c2753d15SKatsuhiro Suzuki compatible = "silergy,syr828"; 531c2753d15SKatsuhiro Suzuki reg = <0x41>; 532c2753d15SKatsuhiro Suzuki fcs,suspend-voltage-selector = <1>; 533c2753d15SKatsuhiro Suzuki pinctrl-names = "default"; 5342bc65fefSJohan Jonker pinctrl-0 = <&vsel2_pin>; 535c2753d15SKatsuhiro Suzuki regulator-name = "vdd_gpu"; 536c2753d15SKatsuhiro Suzuki regulator-min-microvolt = <712500>; 537c2753d15SKatsuhiro Suzuki regulator-max-microvolt = <1500000>; 538c2753d15SKatsuhiro Suzuki regulator-ramp-delay = <1000>; 539c2753d15SKatsuhiro Suzuki regulator-always-on; 540c2753d15SKatsuhiro Suzuki regulator-boot-on; 541c2753d15SKatsuhiro Suzuki vin-supply = <&vcc5v0_sys>; 542c2753d15SKatsuhiro Suzuki 543c2753d15SKatsuhiro Suzuki regulator-state-mem { 544c2753d15SKatsuhiro Suzuki regulator-off-in-suspend; 545c2753d15SKatsuhiro Suzuki }; 546c2753d15SKatsuhiro Suzuki }; 547c2753d15SKatsuhiro Suzuki}; 548c2753d15SKatsuhiro Suzuki 549c2753d15SKatsuhiro Suzuki&i2c1 { 550c2753d15SKatsuhiro Suzuki i2c-scl-rising-time-ns = <300>; 551c2753d15SKatsuhiro Suzuki i2c-scl-falling-time-ns = <15>; 552c2753d15SKatsuhiro Suzuki status = "okay"; 553c2753d15SKatsuhiro Suzuki}; 554c2753d15SKatsuhiro Suzuki 555c2753d15SKatsuhiro Suzuki&i2c3 { 556c2753d15SKatsuhiro Suzuki i2c-scl-rising-time-ns = <450>; 557c2753d15SKatsuhiro Suzuki i2c-scl-falling-time-ns = <15>; 558c2753d15SKatsuhiro Suzuki status = "okay"; 559c2753d15SKatsuhiro Suzuki}; 560c2753d15SKatsuhiro Suzuki 561c2753d15SKatsuhiro Suzuki&i2c4 { 562c2753d15SKatsuhiro Suzuki i2c-scl-rising-time-ns = <600>; 563c2753d15SKatsuhiro Suzuki i2c-scl-falling-time-ns = <20>; 564c2753d15SKatsuhiro Suzuki status = "okay"; 565c2753d15SKatsuhiro Suzuki 566c2753d15SKatsuhiro Suzuki fusb0: typec-portc@22 { 567c2753d15SKatsuhiro Suzuki compatible = "fcs,fusb302"; 568c2753d15SKatsuhiro Suzuki reg = <0x22>; 569c2753d15SKatsuhiro Suzuki interrupt-parent = <&gpio1>; 570c2753d15SKatsuhiro Suzuki interrupts = <RK_PA2 IRQ_TYPE_LEVEL_LOW>; 571c2753d15SKatsuhiro Suzuki pinctrl-names = "default"; 572c2753d15SKatsuhiro Suzuki pinctrl-0 = <&fusb0_int>; 573c2753d15SKatsuhiro Suzuki vbus-supply = <&vcc5v0_typec>; 574c2753d15SKatsuhiro Suzuki status = "okay"; 575c2753d15SKatsuhiro Suzuki }; 576c2753d15SKatsuhiro Suzuki}; 577c2753d15SKatsuhiro Suzuki 578c2753d15SKatsuhiro Suzuki&i2s0 { 579c2753d15SKatsuhiro Suzuki rockchip,playback-channels = <8>; 580c2753d15SKatsuhiro Suzuki rockchip,capture-channels = <8>; 581c2753d15SKatsuhiro Suzuki status = "okay"; 582c2753d15SKatsuhiro Suzuki}; 583c2753d15SKatsuhiro Suzuki 584c2753d15SKatsuhiro Suzuki&i2s1 { 585c2753d15SKatsuhiro Suzuki rockchip,playback-channels = <2>; 586c2753d15SKatsuhiro Suzuki rockchip,capture-channels = <2>; 587c2753d15SKatsuhiro Suzuki status = "okay"; 588c2753d15SKatsuhiro Suzuki 589c2753d15SKatsuhiro Suzuki i2s1_p0: port { 590c2753d15SKatsuhiro Suzuki i2s1_p0_0: endpoint { 591c2753d15SKatsuhiro Suzuki dai-format = "i2s"; 592c2753d15SKatsuhiro Suzuki mclk-fs = <256>; 593c2753d15SKatsuhiro Suzuki remote-endpoint = <&es8316_p0_0>; 594c2753d15SKatsuhiro Suzuki }; 595c2753d15SKatsuhiro Suzuki }; 596c2753d15SKatsuhiro Suzuki}; 597c2753d15SKatsuhiro Suzuki 598c2753d15SKatsuhiro Suzuki&i2s2 { 599c2753d15SKatsuhiro Suzuki status = "okay"; 600c2753d15SKatsuhiro Suzuki}; 601c2753d15SKatsuhiro Suzuki 602c2753d15SKatsuhiro Suzuki&io_domains { 603c2753d15SKatsuhiro Suzuki status = "okay"; 604c2753d15SKatsuhiro Suzuki 605c2753d15SKatsuhiro Suzuki bt656-supply = <&vcc1v8_dvp>; 606c2753d15SKatsuhiro Suzuki audio-supply = <&vcc_3v0>; 607c2753d15SKatsuhiro Suzuki sdmmc-supply = <&vcc_sdio>; 608c2753d15SKatsuhiro Suzuki gpio1830-supply = <&vcc_3v0>; 609c2753d15SKatsuhiro Suzuki}; 610c2753d15SKatsuhiro Suzuki 611c2753d15SKatsuhiro Suzuki&pcie0 { 612c2753d15SKatsuhiro Suzuki ep-gpios = <&gpio2 RK_PD4 GPIO_ACTIVE_HIGH>; 613c2753d15SKatsuhiro Suzuki num-lanes = <4>; 614c2753d15SKatsuhiro Suzuki pinctrl-names = "default"; 615c2753d15SKatsuhiro Suzuki pinctrl-0 = <&pcie_perst>; 616ffcef3dfSDragan Simic vpcie0v9-supply = <&vcca_0v9>; 617ffcef3dfSDragan Simic vpcie1v8-supply = <&vcca_1v8>; 618c2753d15SKatsuhiro Suzuki vpcie12v-supply = <&vcc12v_dcin>; 619c2753d15SKatsuhiro Suzuki vpcie3v3-supply = <&vcc3v3_pcie>; 620c2753d15SKatsuhiro Suzuki status = "okay"; 621c2753d15SKatsuhiro Suzuki}; 622c2753d15SKatsuhiro Suzuki 623c2753d15SKatsuhiro Suzuki&pcie_phy { 624c2753d15SKatsuhiro Suzuki status = "okay"; 625c2753d15SKatsuhiro Suzuki}; 626c2753d15SKatsuhiro Suzuki 627c2753d15SKatsuhiro Suzuki&pmu_io_domains { 628c2753d15SKatsuhiro Suzuki pmu1830-supply = <&vcc_3v0>; 629c2753d15SKatsuhiro Suzuki status = "okay"; 630c2753d15SKatsuhiro Suzuki}; 631c2753d15SKatsuhiro Suzuki 632c2753d15SKatsuhiro Suzuki&pinctrl { 633e09dabe4SSoeren Moch bt { 634e09dabe4SSoeren Moch bt_enable_h: bt-enable-h { 635e09dabe4SSoeren Moch rockchip,pins = <0 RK_PB1 RK_FUNC_GPIO &pcfg_pull_none>; 636e09dabe4SSoeren Moch }; 637e09dabe4SSoeren Moch 638e09dabe4SSoeren Moch bt_host_wake_l: bt-host-wake-l { 639e09dabe4SSoeren Moch rockchip,pins = <0 RK_PA4 RK_FUNC_GPIO &pcfg_pull_down>; 640e09dabe4SSoeren Moch }; 641e09dabe4SSoeren Moch 642e09dabe4SSoeren Moch bt_wake_l: bt-wake-l { 643e09dabe4SSoeren Moch rockchip,pins = <2 RK_PD3 RK_FUNC_GPIO &pcfg_pull_none>; 644e09dabe4SSoeren Moch }; 645e09dabe4SSoeren Moch }; 646e09dabe4SSoeren Moch 647c2753d15SKatsuhiro Suzuki buttons { 648c2753d15SKatsuhiro Suzuki pwrbtn: pwrbtn { 649c2753d15SKatsuhiro Suzuki rockchip,pins = <0 RK_PA5 RK_FUNC_GPIO &pcfg_pull_up>; 650c2753d15SKatsuhiro Suzuki }; 651c2753d15SKatsuhiro Suzuki }; 652c2753d15SKatsuhiro Suzuki 653c2753d15SKatsuhiro Suzuki fusb302x { 654c2753d15SKatsuhiro Suzuki fusb0_int: fusb0-int { 655c2753d15SKatsuhiro Suzuki rockchip,pins = <1 RK_PA2 RK_FUNC_GPIO &pcfg_pull_up>; 656c2753d15SKatsuhiro Suzuki }; 657c2753d15SKatsuhiro Suzuki }; 658c2753d15SKatsuhiro Suzuki 6597c7f0413SThomas Schneider ir { 6607c7f0413SThomas Schneider ir_int: ir-int { 6617c7f0413SThomas Schneider rockchip,pins = <0 RK_PA6 RK_FUNC_GPIO &pcfg_pull_none>; 6627c7f0413SThomas Schneider }; 6637c7f0413SThomas Schneider }; 6647c7f0413SThomas Schneider 665c2753d15SKatsuhiro Suzuki leds { 6666dd5e12cSJohan Jonker work_led_pin: work-led-pin { 667c2753d15SKatsuhiro Suzuki rockchip,pins = <0 RK_PB3 RK_FUNC_GPIO &pcfg_pull_none>; 668c2753d15SKatsuhiro Suzuki }; 669c2753d15SKatsuhiro Suzuki 6706dd5e12cSJohan Jonker diy_led_pin: diy-led-pin { 671c2753d15SKatsuhiro Suzuki rockchip,pins = <0 RK_PA2 RK_FUNC_GPIO &pcfg_pull_none>; 672c2753d15SKatsuhiro Suzuki }; 673c2753d15SKatsuhiro Suzuki }; 674c2753d15SKatsuhiro Suzuki 675c2753d15SKatsuhiro Suzuki pcie { 676c2753d15SKatsuhiro Suzuki pcie_perst: pcie-perst { 677c2753d15SKatsuhiro Suzuki rockchip,pins = <2 RK_PD4 RK_FUNC_GPIO &pcfg_pull_none>; 678c2753d15SKatsuhiro Suzuki }; 679c2753d15SKatsuhiro Suzuki 680c2753d15SKatsuhiro Suzuki pcie_pwr_en: pcie-pwr-en { 681c2753d15SKatsuhiro Suzuki rockchip,pins = <1 RK_PD0 RK_FUNC_GPIO &pcfg_pull_none>; 682c2753d15SKatsuhiro Suzuki }; 683c2753d15SKatsuhiro Suzuki }; 684c2753d15SKatsuhiro Suzuki 685c2753d15SKatsuhiro Suzuki pmic { 686c2753d15SKatsuhiro Suzuki pmic_int_l: pmic-int-l { 687c2753d15SKatsuhiro Suzuki rockchip,pins = <3 RK_PB2 RK_FUNC_GPIO &pcfg_pull_up>; 688c2753d15SKatsuhiro Suzuki }; 689c2753d15SKatsuhiro Suzuki 6902bc65fefSJohan Jonker vsel1_pin: vsel1-pin { 691c2753d15SKatsuhiro Suzuki rockchip,pins = <1 RK_PC1 RK_FUNC_GPIO &pcfg_pull_down>; 692c2753d15SKatsuhiro Suzuki }; 693c2753d15SKatsuhiro Suzuki 6942bc65fefSJohan Jonker vsel2_pin: vsel2-pin { 695c2753d15SKatsuhiro Suzuki rockchip,pins = <1 RK_PB6 RK_FUNC_GPIO &pcfg_pull_down>; 696c2753d15SKatsuhiro Suzuki }; 697c2753d15SKatsuhiro Suzuki }; 698c2753d15SKatsuhiro Suzuki 6991f5a3e16STobias Schramm sdcard { 7001f5a3e16STobias Schramm sdmmc0_pwr_h: sdmmc0-pwr-h { 7011f5a3e16STobias Schramm rockchip,pins = <0 RK_PA1 RK_FUNC_GPIO &pcfg_pull_none>; 7021f5a3e16STobias Schramm }; 7031f5a3e16STobias Schramm 7041f5a3e16STobias Schramm }; 7051f5a3e16STobias Schramm 706c2753d15SKatsuhiro Suzuki sdio-pwrseq { 707c2753d15SKatsuhiro Suzuki wifi_enable_h: wifi-enable-h { 708c2753d15SKatsuhiro Suzuki rockchip,pins = <0 RK_PB2 RK_FUNC_GPIO &pcfg_pull_none>; 709c2753d15SKatsuhiro Suzuki }; 710c2753d15SKatsuhiro Suzuki }; 711c2753d15SKatsuhiro Suzuki 712c2753d15SKatsuhiro Suzuki usb-typec { 713c2753d15SKatsuhiro Suzuki vcc5v0_typec_en: vcc5v0_typec_en { 714c2753d15SKatsuhiro Suzuki rockchip,pins = <1 RK_PA3 RK_FUNC_GPIO &pcfg_pull_up>; 715c2753d15SKatsuhiro Suzuki }; 716c2753d15SKatsuhiro Suzuki }; 717c2753d15SKatsuhiro Suzuki 718c2753d15SKatsuhiro Suzuki usb2 { 719c2753d15SKatsuhiro Suzuki vcc5v0_host_en: vcc5v0-host-en { 720c2753d15SKatsuhiro Suzuki rockchip,pins = <4 RK_PD2 RK_FUNC_GPIO &pcfg_pull_none>; 721c2753d15SKatsuhiro Suzuki }; 722c2753d15SKatsuhiro Suzuki }; 723c2753d15SKatsuhiro Suzuki}; 724c2753d15SKatsuhiro Suzuki 725c2753d15SKatsuhiro Suzuki&pwm1 { 726c2753d15SKatsuhiro Suzuki status = "okay"; 727c2753d15SKatsuhiro Suzuki}; 728c2753d15SKatsuhiro Suzuki 729c2753d15SKatsuhiro Suzuki&pwm2 { 730c2753d15SKatsuhiro Suzuki status = "okay"; 731c2753d15SKatsuhiro Suzuki}; 732c2753d15SKatsuhiro Suzuki 733c2753d15SKatsuhiro Suzuki&saradc { 734c2753d15SKatsuhiro Suzuki vref-supply = <&vcca1v8_s3>; 735c2753d15SKatsuhiro Suzuki status = "okay"; 736c2753d15SKatsuhiro Suzuki}; 737c2753d15SKatsuhiro Suzuki 7387c5b6bfbSSoeren Moch&sdio0 { 7397c5b6bfbSSoeren Moch bus-width = <4>; 7407c5b6bfbSSoeren Moch cap-sd-highspeed; 7417c5b6bfbSSoeren Moch cap-sdio-irq; 7427c5b6bfbSSoeren Moch disable-wp; 7437c5b6bfbSSoeren Moch keep-power-in-suspend; 7447c5b6bfbSSoeren Moch mmc-pwrseq = <&sdio_pwrseq>; 7457c5b6bfbSSoeren Moch non-removable; 7467c5b6bfbSSoeren Moch pinctrl-names = "default"; 7477c5b6bfbSSoeren Moch pinctrl-0 = <&sdio0_bus4 &sdio0_cmd &sdio0_clk>; 7487c5b6bfbSSoeren Moch sd-uhs-sdr104; 7497c5b6bfbSSoeren Moch status = "okay"; 7507c5b6bfbSSoeren Moch}; 7517c5b6bfbSSoeren Moch 752c2753d15SKatsuhiro Suzuki&sdmmc { 753c2753d15SKatsuhiro Suzuki bus-width = <4>; 754c2753d15SKatsuhiro Suzuki cap-sd-highspeed; 755c2753d15SKatsuhiro Suzuki cd-gpios = <&gpio0 7 GPIO_ACTIVE_LOW>; 756c2753d15SKatsuhiro Suzuki disable-wp; 757c2753d15SKatsuhiro Suzuki max-frequency = <150000000>; 758c2753d15SKatsuhiro Suzuki pinctrl-names = "default"; 759c2753d15SKatsuhiro Suzuki pinctrl-0 = <&sdmmc_clk &sdmmc_cmd &sdmmc_bus4>; 7601f5a3e16STobias Schramm vmmc-supply = <&vcc3v0_sd>; 7611f5a3e16STobias Schramm vqmmc-supply = <&vcc_sdio>; 762c2753d15SKatsuhiro Suzuki status = "okay"; 763c2753d15SKatsuhiro Suzuki}; 764c2753d15SKatsuhiro Suzuki 765c2753d15SKatsuhiro Suzuki&sdhci { 766c2753d15SKatsuhiro Suzuki bus-width = <8>; 767c2753d15SKatsuhiro Suzuki mmc-hs200-1_8v; 768c2753d15SKatsuhiro Suzuki non-removable; 769c2753d15SKatsuhiro Suzuki status = "okay"; 770c2753d15SKatsuhiro Suzuki}; 771c2753d15SKatsuhiro Suzuki 7727f02feb5SKatsuhiro Suzuki&spdif { 7737f02feb5SKatsuhiro Suzuki pinctrl-0 = <&spdif_bus_1>; 7747f02feb5SKatsuhiro Suzuki 7757f02feb5SKatsuhiro Suzuki spdif_p0: port { 7767f02feb5SKatsuhiro Suzuki spdif_p0_0: endpoint { 7777f02feb5SKatsuhiro Suzuki remote-endpoint = <&dit_p0_0>; 7787f02feb5SKatsuhiro Suzuki }; 7797f02feb5SKatsuhiro Suzuki }; 7807f02feb5SKatsuhiro Suzuki}; 7817f02feb5SKatsuhiro Suzuki 782c2753d15SKatsuhiro Suzuki&spi1 { 783c2753d15SKatsuhiro Suzuki status = "okay"; 784c2753d15SKatsuhiro Suzuki 785c2753d15SKatsuhiro Suzuki flash@0 { 786c2753d15SKatsuhiro Suzuki compatible = "jedec,spi-nor"; 787c2753d15SKatsuhiro Suzuki reg = <0>; 788c2753d15SKatsuhiro Suzuki spi-max-frequency = <10000000>; 789*b7b045deSDiederik de Haas vcc-supply = <&vcc_3v0>; 790c2753d15SKatsuhiro Suzuki }; 791c2753d15SKatsuhiro Suzuki}; 792c2753d15SKatsuhiro Suzuki 793c2753d15SKatsuhiro Suzuki&tcphy0 { 794c2753d15SKatsuhiro Suzuki status = "okay"; 795c2753d15SKatsuhiro Suzuki}; 796c2753d15SKatsuhiro Suzuki 797c2753d15SKatsuhiro Suzuki&tcphy1 { 798c2753d15SKatsuhiro Suzuki status = "okay"; 799c2753d15SKatsuhiro Suzuki}; 800c2753d15SKatsuhiro Suzuki 801c2753d15SKatsuhiro Suzuki&tsadc { 802c2753d15SKatsuhiro Suzuki /* tshut mode 0:CRU 1:GPIO */ 803c2753d15SKatsuhiro Suzuki rockchip,hw-tshut-mode = <1>; 804c2753d15SKatsuhiro Suzuki /* tshut polarity 0:LOW 1:HIGH */ 805c2753d15SKatsuhiro Suzuki rockchip,hw-tshut-polarity = <1>; 806c2753d15SKatsuhiro Suzuki status = "okay"; 807c2753d15SKatsuhiro Suzuki}; 808c2753d15SKatsuhiro Suzuki 809c2753d15SKatsuhiro Suzuki&u2phy0 { 810c2753d15SKatsuhiro Suzuki status = "okay"; 811c2753d15SKatsuhiro Suzuki 812c2753d15SKatsuhiro Suzuki u2phy0_otg: otg-port { 813c2753d15SKatsuhiro Suzuki status = "okay"; 814c2753d15SKatsuhiro Suzuki }; 815c2753d15SKatsuhiro Suzuki 816c2753d15SKatsuhiro Suzuki u2phy0_host: host-port { 817c2753d15SKatsuhiro Suzuki phy-supply = <&vcc5v0_host>; 818c2753d15SKatsuhiro Suzuki status = "okay"; 819c2753d15SKatsuhiro Suzuki }; 820c2753d15SKatsuhiro Suzuki}; 821c2753d15SKatsuhiro Suzuki 822c2753d15SKatsuhiro Suzuki&u2phy1 { 823c2753d15SKatsuhiro Suzuki status = "okay"; 824c2753d15SKatsuhiro Suzuki 825c2753d15SKatsuhiro Suzuki u2phy1_otg: otg-port { 826c2753d15SKatsuhiro Suzuki status = "okay"; 827c2753d15SKatsuhiro Suzuki }; 828c2753d15SKatsuhiro Suzuki 829c2753d15SKatsuhiro Suzuki u2phy1_host: host-port { 830c2753d15SKatsuhiro Suzuki phy-supply = <&vcc5v0_host>; 831c2753d15SKatsuhiro Suzuki status = "okay"; 832c2753d15SKatsuhiro Suzuki }; 833c2753d15SKatsuhiro Suzuki}; 834c2753d15SKatsuhiro Suzuki 835c2753d15SKatsuhiro Suzuki&uart0 { 836c2753d15SKatsuhiro Suzuki pinctrl-names = "default"; 837e09dabe4SSoeren Moch pinctrl-0 = <&uart0_xfer &uart0_cts &uart0_rts>; 838c2753d15SKatsuhiro Suzuki status = "okay"; 839e09dabe4SSoeren Moch 840e09dabe4SSoeren Moch bluetooth { 841e09dabe4SSoeren Moch compatible = "brcm,bcm43438-bt"; 842e09dabe4SSoeren Moch clocks = <&rk808 1>; 843e09dabe4SSoeren Moch clock-names = "lpo"; 844e09dabe4SSoeren Moch device-wakeup-gpios = <&gpio2 RK_PD3 GPIO_ACTIVE_HIGH>; 845e09dabe4SSoeren Moch host-wakeup-gpios = <&gpio0 RK_PA4 GPIO_ACTIVE_HIGH>; 846e09dabe4SSoeren Moch shutdown-gpios = <&gpio0 RK_PB1 GPIO_ACTIVE_HIGH>; 847e09dabe4SSoeren Moch pinctrl-names = "default"; 848e09dabe4SSoeren Moch pinctrl-0 = <&bt_host_wake_l &bt_wake_l &bt_enable_h>; 849e09dabe4SSoeren Moch vbat-supply = <&vcc3v3_sys>; 850e09dabe4SSoeren Moch vddio-supply = <&vcc_1v8>; 851e09dabe4SSoeren Moch }; 852c2753d15SKatsuhiro Suzuki}; 853c2753d15SKatsuhiro Suzuki 854c2753d15SKatsuhiro Suzuki&uart2 { 855c2753d15SKatsuhiro Suzuki status = "okay"; 856c2753d15SKatsuhiro Suzuki}; 857c2753d15SKatsuhiro Suzuki 858c2753d15SKatsuhiro Suzuki&usb_host0_ehci { 859c2753d15SKatsuhiro Suzuki status = "okay"; 860c2753d15SKatsuhiro Suzuki}; 861c2753d15SKatsuhiro Suzuki 862c2753d15SKatsuhiro Suzuki&usb_host0_ohci { 863c2753d15SKatsuhiro Suzuki status = "okay"; 864c2753d15SKatsuhiro Suzuki}; 865c2753d15SKatsuhiro Suzuki 866c2753d15SKatsuhiro Suzuki&usb_host1_ehci { 867c2753d15SKatsuhiro Suzuki status = "okay"; 868c2753d15SKatsuhiro Suzuki}; 869c2753d15SKatsuhiro Suzuki 870c2753d15SKatsuhiro Suzuki&usb_host1_ohci { 871c2753d15SKatsuhiro Suzuki status = "okay"; 872c2753d15SKatsuhiro Suzuki}; 873c2753d15SKatsuhiro Suzuki 874c2753d15SKatsuhiro Suzuki&usbdrd3_0 { 875c2753d15SKatsuhiro Suzuki status = "okay"; 876c2753d15SKatsuhiro Suzuki}; 877c2753d15SKatsuhiro Suzuki 878c2753d15SKatsuhiro Suzuki&usbdrd_dwc3_0 { 879c2753d15SKatsuhiro Suzuki status = "okay"; 88075152d66SPeter Geis dr_mode = "host"; 881c2753d15SKatsuhiro Suzuki}; 882c2753d15SKatsuhiro Suzuki 883c2753d15SKatsuhiro Suzuki&usbdrd3_1 { 884c2753d15SKatsuhiro Suzuki status = "okay"; 885c2753d15SKatsuhiro Suzuki}; 886c2753d15SKatsuhiro Suzuki 887c2753d15SKatsuhiro Suzuki&usbdrd_dwc3_1 { 888c2753d15SKatsuhiro Suzuki status = "okay"; 889c2753d15SKatsuhiro Suzuki dr_mode = "host"; 890c2753d15SKatsuhiro Suzuki}; 891c2753d15SKatsuhiro Suzuki 892c2753d15SKatsuhiro Suzuki&vopb { 893c2753d15SKatsuhiro Suzuki status = "okay"; 894c2753d15SKatsuhiro Suzuki}; 895c2753d15SKatsuhiro Suzuki 896c2753d15SKatsuhiro Suzuki&vopb_mmu { 897c2753d15SKatsuhiro Suzuki status = "okay"; 898c2753d15SKatsuhiro Suzuki}; 899c2753d15SKatsuhiro Suzuki 900c2753d15SKatsuhiro Suzuki&vopl { 901c2753d15SKatsuhiro Suzuki status = "okay"; 902c2753d15SKatsuhiro Suzuki}; 903c2753d15SKatsuhiro Suzuki 904c2753d15SKatsuhiro Suzuki&vopl_mmu { 905c2753d15SKatsuhiro Suzuki status = "okay"; 906c2753d15SKatsuhiro Suzuki}; 907