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