17ef62cebSEmmanuel Vadot// SPDX-License-Identifier: (GPL-2.0+ OR MIT) 27ef62cebSEmmanuel Vadot/* 37ef62cebSEmmanuel Vadot * Copyright (c) 2022 Fuzhou Rockchip Electronics Co., Ltd. 47ef62cebSEmmanuel Vadot */ 57ef62cebSEmmanuel Vadot 67ef62cebSEmmanuel Vadot/dts-v1/; 77ef62cebSEmmanuel Vadot#include <dt-bindings/input/linux-event-codes.h> 87ef62cebSEmmanuel Vadot#include <dt-bindings/pwm/pwm.h> 97ef62cebSEmmanuel Vadot#include <dt-bindings/usb/pd.h> 107ef62cebSEmmanuel Vadot#include "rk3399.dtsi" 117ef62cebSEmmanuel Vadot#include "rk3399-opp.dtsi" 127ef62cebSEmmanuel Vadot 137ef62cebSEmmanuel Vadot/ { 147ef62cebSEmmanuel Vadot model = "OPEN AI LAB EAIDK-610"; 157ef62cebSEmmanuel Vadot compatible = "openailab,eaidk-610", "rockchip,rk3399"; 167ef62cebSEmmanuel Vadot 177ef62cebSEmmanuel Vadot aliases { 18*8d13bc63SEmmanuel Vadot ethernet0 = &gmac; 197ef62cebSEmmanuel Vadot mmc0 = &sdio0; 207ef62cebSEmmanuel Vadot mmc1 = &sdmmc; 217ef62cebSEmmanuel Vadot mmc2 = &sdhci; 227ef62cebSEmmanuel Vadot }; 237ef62cebSEmmanuel Vadot 247ef62cebSEmmanuel Vadot backlight: backlight { 257ef62cebSEmmanuel Vadot compatible = "pwm-backlight"; 267ef62cebSEmmanuel Vadot pwms = <&pwm0 0 25000 0>; 277ef62cebSEmmanuel Vadot brightness-levels = < 287ef62cebSEmmanuel Vadot 0 1 2 3 4 5 6 7 297ef62cebSEmmanuel Vadot 8 9 10 11 12 13 14 15 307ef62cebSEmmanuel Vadot 16 17 18 19 20 21 22 23 317ef62cebSEmmanuel Vadot 24 25 26 27 28 29 30 31 327ef62cebSEmmanuel Vadot 32 33 34 35 36 37 38 39 337ef62cebSEmmanuel Vadot 40 41 42 43 44 45 46 47 347ef62cebSEmmanuel Vadot 48 49 50 51 52 53 54 55 357ef62cebSEmmanuel Vadot 56 57 58 59 60 61 62 63 367ef62cebSEmmanuel Vadot 64 65 66 67 68 69 70 71 377ef62cebSEmmanuel Vadot 72 73 74 75 76 77 78 79 387ef62cebSEmmanuel Vadot 80 81 82 83 84 85 86 87 397ef62cebSEmmanuel Vadot 88 89 90 91 92 93 94 95 407ef62cebSEmmanuel Vadot 96 97 98 99 100 101 102 103 417ef62cebSEmmanuel Vadot 104 105 106 107 108 109 110 111 427ef62cebSEmmanuel Vadot 112 113 114 115 116 117 118 119 437ef62cebSEmmanuel Vadot 120 121 122 123 124 125 126 127 447ef62cebSEmmanuel Vadot 128 129 130 131 132 133 134 135 457ef62cebSEmmanuel Vadot 136 137 138 139 140 141 142 143 467ef62cebSEmmanuel Vadot 144 145 146 147 148 149 150 151 477ef62cebSEmmanuel Vadot 152 153 154 155 156 157 158 159 487ef62cebSEmmanuel Vadot 160 161 162 163 164 165 166 167 497ef62cebSEmmanuel Vadot 168 169 170 171 172 173 174 175 507ef62cebSEmmanuel Vadot 176 177 178 179 180 181 182 183 517ef62cebSEmmanuel Vadot 184 185 186 187 188 189 190 191 527ef62cebSEmmanuel Vadot 192 193 194 195 196 197 198 199 537ef62cebSEmmanuel Vadot 200 201 202 203 204 205 206 207 547ef62cebSEmmanuel Vadot 208 209 210 211 212 213 214 215 557ef62cebSEmmanuel Vadot 216 217 218 219 220 221 222 223 567ef62cebSEmmanuel Vadot 224 225 226 227 228 229 230 231 577ef62cebSEmmanuel Vadot 232 233 234 235 236 237 238 239 587ef62cebSEmmanuel Vadot 240 241 242 243 244 245 246 247 597ef62cebSEmmanuel Vadot 248 249 250 251 252 253 254 255>; 607ef62cebSEmmanuel Vadot default-brightness-level = <200>; 617ef62cebSEmmanuel Vadot }; 627ef62cebSEmmanuel Vadot 637ef62cebSEmmanuel Vadot clkin_gmac: external-gmac-clock { 647ef62cebSEmmanuel Vadot compatible = "fixed-clock"; 657ef62cebSEmmanuel Vadot clock-frequency = <125000000>; 667ef62cebSEmmanuel Vadot clock-output-names = "clkin_gmac"; 677ef62cebSEmmanuel Vadot #clock-cells = <0>; 687ef62cebSEmmanuel Vadot }; 697ef62cebSEmmanuel Vadot 707ef62cebSEmmanuel Vadot dc_12v: dc-12v { 717ef62cebSEmmanuel Vadot compatible = "regulator-fixed"; 727ef62cebSEmmanuel Vadot regulator-name = "dc_12v"; 737ef62cebSEmmanuel Vadot regulator-always-on; 747ef62cebSEmmanuel Vadot regulator-boot-on; 757ef62cebSEmmanuel Vadot regulator-min-microvolt = <12000000>; 767ef62cebSEmmanuel Vadot regulator-max-microvolt = <12000000>; 777ef62cebSEmmanuel Vadot }; 787ef62cebSEmmanuel Vadot 797ef62cebSEmmanuel Vadot gpio-keys { 807ef62cebSEmmanuel Vadot compatible = "gpio-keys"; 817ef62cebSEmmanuel Vadot autorepeat; 827ef62cebSEmmanuel Vadot pinctrl-names = "default"; 837ef62cebSEmmanuel Vadot pinctrl-0 = <&pwrbtn>; 847ef62cebSEmmanuel Vadot 857ef62cebSEmmanuel Vadot key-power { 867ef62cebSEmmanuel Vadot debounce-interval = <100>; 877ef62cebSEmmanuel Vadot gpios = <&gpio0 RK_PA5 GPIO_ACTIVE_LOW>; 887ef62cebSEmmanuel Vadot label = "GPIO Key Power"; 897ef62cebSEmmanuel Vadot linux,code = <KEY_POWER>; 907ef62cebSEmmanuel Vadot wakeup-source; 917ef62cebSEmmanuel Vadot }; 927ef62cebSEmmanuel Vadot }; 937ef62cebSEmmanuel Vadot 947ef62cebSEmmanuel Vadot leds { 957ef62cebSEmmanuel Vadot compatible = "gpio-leds"; 967ef62cebSEmmanuel Vadot pinctrl-names = "default"; 977ef62cebSEmmanuel Vadot pinctrl-0 = <&work_led_pin>, <&user_led_pin>, 987ef62cebSEmmanuel Vadot <&heartbeat_led_pin>, <&wlan_active_led_pin>, 997ef62cebSEmmanuel Vadot <&bt_active_led_pin>; 1007ef62cebSEmmanuel Vadot 1017ef62cebSEmmanuel Vadot work_led: led-0 { 1027ef62cebSEmmanuel Vadot label = "blue:work"; 1037ef62cebSEmmanuel Vadot default-state = "on"; 1047ef62cebSEmmanuel Vadot gpios = <&gpio0 RK_PA2 GPIO_ACTIVE_HIGH>; 1057ef62cebSEmmanuel Vadot }; 1067ef62cebSEmmanuel Vadot 1077ef62cebSEmmanuel Vadot user_led: led-1 { 1087ef62cebSEmmanuel Vadot label = "read:user"; 1097ef62cebSEmmanuel Vadot default-state = "off"; 1107ef62cebSEmmanuel Vadot gpios = <&gpio0 RK_PB4 GPIO_ACTIVE_HIGH>; 1117ef62cebSEmmanuel Vadot }; 1127ef62cebSEmmanuel Vadot 1137ef62cebSEmmanuel Vadot heartbeat_led: led-2 { 1147ef62cebSEmmanuel Vadot label = "green:heartbeat"; 1157ef62cebSEmmanuel Vadot linux,default-trigger = "heartbeat"; 1167ef62cebSEmmanuel Vadot gpios = <&gpio0 RK_PB5 GPIO_ACTIVE_HIGH>; 1177ef62cebSEmmanuel Vadot }; 1187ef62cebSEmmanuel Vadot 1197ef62cebSEmmanuel Vadot wlan_active_led: led-3 { 1207ef62cebSEmmanuel Vadot label = "yellow:wlan"; 1217ef62cebSEmmanuel Vadot gpios = <&gpio2 RK_PD3 GPIO_ACTIVE_HIGH>; 1227ef62cebSEmmanuel Vadot linux,default-trigger = "phy0tx"; 1237ef62cebSEmmanuel Vadot default-state = "off"; 1247ef62cebSEmmanuel Vadot }; 1257ef62cebSEmmanuel Vadot 1267ef62cebSEmmanuel Vadot bt_active_led: led-4 { 1277ef62cebSEmmanuel Vadot label = "blue:bt"; 1287ef62cebSEmmanuel Vadot gpios = <&gpio2 RK_PD4 GPIO_ACTIVE_HIGH>; 1297ef62cebSEmmanuel Vadot linux,default-trigger = "hci0-power"; 1307ef62cebSEmmanuel Vadot default-state = "off"; 1317ef62cebSEmmanuel Vadot }; 1327ef62cebSEmmanuel Vadot }; 1337ef62cebSEmmanuel Vadot 1347ef62cebSEmmanuel Vadot rt5651-sound { 1357ef62cebSEmmanuel Vadot compatible = "simple-audio-card"; 1367ef62cebSEmmanuel Vadot simple-audio-card,name = "realtek,rt5651-codec"; 1377ef62cebSEmmanuel Vadot simple-audio-card,format = "i2s"; 1387ef62cebSEmmanuel Vadot simple-audio-card,mclk-fs = <256>; 1397ef62cebSEmmanuel Vadot simple-audio-card,widgets = 1407ef62cebSEmmanuel Vadot "Microphone", "Mic Jack", 1417ef62cebSEmmanuel Vadot "Headphone", "Headphone Jack"; 1427ef62cebSEmmanuel Vadot simple-audio-card,routing = 1437ef62cebSEmmanuel Vadot "Mic Jack", "MICBIAS1", 1447ef62cebSEmmanuel Vadot "IN1P", "Mic Jack", 1457ef62cebSEmmanuel Vadot "Headphone Jack", "HPOL", 1467ef62cebSEmmanuel Vadot "Headphone Jack", "HPOR"; 1477ef62cebSEmmanuel Vadot simple-audio-card,cpu { 1487ef62cebSEmmanuel Vadot sound-dai = <&i2s1>; 1497ef62cebSEmmanuel Vadot }; 1507ef62cebSEmmanuel Vadot simple-audio-card,codec { 1517ef62cebSEmmanuel Vadot sound-dai = <&rt5651>; 1527ef62cebSEmmanuel Vadot }; 1537ef62cebSEmmanuel Vadot }; 1547ef62cebSEmmanuel Vadot 1557ef62cebSEmmanuel Vadot sdio_pwrseq: sdio-pwrseq { 1567ef62cebSEmmanuel Vadot compatible = "mmc-pwrseq-simple"; 1577ef62cebSEmmanuel Vadot clocks = <&rk808 1>; 1587ef62cebSEmmanuel Vadot clock-names = "ext_clock"; 1597ef62cebSEmmanuel Vadot pinctrl-names = "default"; 1607ef62cebSEmmanuel Vadot pinctrl-0 = <&wifi_enable_h>; 1617ef62cebSEmmanuel Vadot 1627ef62cebSEmmanuel Vadot /* 1637ef62cebSEmmanuel Vadot * On the module itself this is one of these (depending 1647ef62cebSEmmanuel Vadot * on the actual card populated): 1657ef62cebSEmmanuel Vadot * - SDIO_RESET_L_WL_REG_ON 1667ef62cebSEmmanuel Vadot * - PDN (power down when low) 1677ef62cebSEmmanuel Vadot */ 1687ef62cebSEmmanuel Vadot reset-gpios = <&gpio0 RK_PB2 GPIO_ACTIVE_LOW>; 1697ef62cebSEmmanuel Vadot }; 1707ef62cebSEmmanuel Vadot 1717ef62cebSEmmanuel Vadot /* switched by pmic_sleep */ 1727ef62cebSEmmanuel Vadot vcc1v8_s3: vcca1v8_s3: vcc1v8-s3 { 1737ef62cebSEmmanuel Vadot compatible = "regulator-fixed"; 1747ef62cebSEmmanuel Vadot regulator-name = "vcc1v8_s3"; 1757ef62cebSEmmanuel Vadot regulator-always-on; 1767ef62cebSEmmanuel Vadot regulator-boot-on; 1777ef62cebSEmmanuel Vadot regulator-min-microvolt = <1800000>; 1787ef62cebSEmmanuel Vadot regulator-max-microvolt = <1800000>; 1797ef62cebSEmmanuel Vadot vin-supply = <&vcc_1v8>; 1807ef62cebSEmmanuel Vadot }; 1817ef62cebSEmmanuel Vadot 1827ef62cebSEmmanuel Vadot vcc3v3_sys: vcc3v3-sys { 1837ef62cebSEmmanuel Vadot compatible = "regulator-fixed"; 1847ef62cebSEmmanuel Vadot regulator-name = "vcc3v3_sys"; 1857ef62cebSEmmanuel Vadot regulator-always-on; 1867ef62cebSEmmanuel Vadot regulator-boot-on; 1877ef62cebSEmmanuel Vadot regulator-min-microvolt = <3300000>; 1887ef62cebSEmmanuel Vadot regulator-max-microvolt = <3300000>; 1897ef62cebSEmmanuel Vadot vin-supply = <&dc_12v>; 1907ef62cebSEmmanuel Vadot }; 1917ef62cebSEmmanuel Vadot 1927ef62cebSEmmanuel Vadot vcc5v0_sys: vcc5v0-sys { 1937ef62cebSEmmanuel Vadot compatible = "regulator-fixed"; 1947ef62cebSEmmanuel Vadot regulator-name = "vcc5v0_sys"; 1957ef62cebSEmmanuel Vadot regulator-always-on; 1967ef62cebSEmmanuel Vadot regulator-boot-on; 1977ef62cebSEmmanuel Vadot regulator-min-microvolt = <5000000>; 1987ef62cebSEmmanuel Vadot regulator-max-microvolt = <5000000>; 1997ef62cebSEmmanuel Vadot vin-supply = <&dc_12v>; 2007ef62cebSEmmanuel Vadot }; 2017ef62cebSEmmanuel Vadot 2027ef62cebSEmmanuel Vadot /* For USB3.0 Port1/2 */ 2037ef62cebSEmmanuel Vadot vcc5v0_host1: vcc5v0-host1-regulator { 2047ef62cebSEmmanuel Vadot compatible = "regulator-fixed"; 2057ef62cebSEmmanuel Vadot enable-active-high; 2067ef62cebSEmmanuel Vadot gpio = <&gpio0 RK_PA6 GPIO_ACTIVE_HIGH>; 2077ef62cebSEmmanuel Vadot pinctrl-names = "default"; 2087ef62cebSEmmanuel Vadot pinctrl-0 = <&vcc5v0_host1_en>; 2097ef62cebSEmmanuel Vadot regulator-name = "vcc5v0_host1"; 2107ef62cebSEmmanuel Vadot regulator-always-on; 2117ef62cebSEmmanuel Vadot vin-supply = <&vcc5v0_sys>; 2127ef62cebSEmmanuel Vadot }; 2137ef62cebSEmmanuel Vadot 2147ef62cebSEmmanuel Vadot /* For USB2.0 Port1/2 */ 2157ef62cebSEmmanuel Vadot vcc5v0_host3: vcc5v0-host3-regulator { 2167ef62cebSEmmanuel Vadot compatible = "regulator-fixed"; 2177ef62cebSEmmanuel Vadot enable-active-high; 2187ef62cebSEmmanuel Vadot gpio = <&gpio0 RK_PB0 GPIO_ACTIVE_HIGH>; 2197ef62cebSEmmanuel Vadot pinctrl-names = "default"; 2207ef62cebSEmmanuel Vadot pinctrl-0 = <&vcc5v0_host3_en>; 2217ef62cebSEmmanuel Vadot regulator-name = "vcc5v0_host3"; 2227ef62cebSEmmanuel Vadot regulator-always-on; 2237ef62cebSEmmanuel Vadot vin-supply = <&vcc5v0_sys>; 2247ef62cebSEmmanuel Vadot }; 2257ef62cebSEmmanuel Vadot 2267ef62cebSEmmanuel Vadot vcc5v0_typec: vcc5v0-typec-regulator { 2277ef62cebSEmmanuel Vadot compatible = "regulator-fixed"; 2287ef62cebSEmmanuel Vadot enable-active-high; 2297ef62cebSEmmanuel Vadot gpio = <&gpio4 RK_PC5 GPIO_ACTIVE_HIGH>; 2307ef62cebSEmmanuel Vadot pinctrl-names = "default"; 2317ef62cebSEmmanuel Vadot pinctrl-0 = <&vcc5v0_typec_en>; 2327ef62cebSEmmanuel Vadot regulator-name = "vcc5v0_typec"; 2337ef62cebSEmmanuel Vadot regulator-always-on; 2347ef62cebSEmmanuel Vadot vin-supply = <&vcc3v3_sys>; 2357ef62cebSEmmanuel Vadot }; 2367ef62cebSEmmanuel Vadot 2377ef62cebSEmmanuel Vadot vdd_log: vdd-log { 2387ef62cebSEmmanuel Vadot compatible = "regulator-fixed"; 2397ef62cebSEmmanuel Vadot regulator-name = "vdd_log"; 2407ef62cebSEmmanuel Vadot regulator-always-on; 2417ef62cebSEmmanuel Vadot regulator-boot-on; 2427ef62cebSEmmanuel Vadot regulator-min-microvolt = <900000>; 2437ef62cebSEmmanuel Vadot regulator-max-microvolt = <900000>; 2447ef62cebSEmmanuel Vadot }; 2457ef62cebSEmmanuel Vadot}; 2467ef62cebSEmmanuel Vadot 2477ef62cebSEmmanuel Vadot&cpu_l0 { 2487ef62cebSEmmanuel Vadot cpu-supply = <&vdd_cpu_l>; 2497ef62cebSEmmanuel Vadot}; 2507ef62cebSEmmanuel Vadot 2517ef62cebSEmmanuel Vadot&cpu_l1 { 2527ef62cebSEmmanuel Vadot cpu-supply = <&vdd_cpu_l>; 2537ef62cebSEmmanuel Vadot}; 2547ef62cebSEmmanuel Vadot 2557ef62cebSEmmanuel Vadot&cpu_l2 { 2567ef62cebSEmmanuel Vadot cpu-supply = <&vdd_cpu_l>; 2577ef62cebSEmmanuel Vadot}; 2587ef62cebSEmmanuel Vadot 2597ef62cebSEmmanuel Vadot&cpu_l3 { 2607ef62cebSEmmanuel Vadot cpu-supply = <&vdd_cpu_l>; 2617ef62cebSEmmanuel Vadot}; 2627ef62cebSEmmanuel Vadot 2637ef62cebSEmmanuel Vadot&cpu_b0 { 2647ef62cebSEmmanuel Vadot cpu-supply = <&vdd_cpu_b>; 2657ef62cebSEmmanuel Vadot}; 2667ef62cebSEmmanuel Vadot 2677ef62cebSEmmanuel Vadot&cpu_b1 { 2687ef62cebSEmmanuel Vadot cpu-supply = <&vdd_cpu_b>; 2697ef62cebSEmmanuel Vadot}; 2707ef62cebSEmmanuel Vadot 2717ef62cebSEmmanuel Vadot&emmc_phy { 2727ef62cebSEmmanuel Vadot status = "okay"; 2737ef62cebSEmmanuel Vadot}; 2747ef62cebSEmmanuel Vadot 2757ef62cebSEmmanuel Vadot&gmac { 2767ef62cebSEmmanuel Vadot assigned-clocks = <&cru SCLK_RMII_SRC>; 2777ef62cebSEmmanuel Vadot assigned-clock-parents = <&clkin_gmac>; 2787ef62cebSEmmanuel Vadot clock_in_out = "input"; 2797ef62cebSEmmanuel Vadot phy-supply = <&vcc_lan>; 2807ef62cebSEmmanuel Vadot phy-mode = "rgmii"; 2817ef62cebSEmmanuel Vadot pinctrl-names = "default"; 2827ef62cebSEmmanuel Vadot pinctrl-0 = <&rgmii_pins>; 2837ef62cebSEmmanuel Vadot snps,reset-gpio = <&gpio3 RK_PB7 GPIO_ACTIVE_LOW>; 2847ef62cebSEmmanuel Vadot snps,reset-active-low; 2857ef62cebSEmmanuel Vadot snps,reset-delays-us = <0 10000 50000>; 2867ef62cebSEmmanuel Vadot tx_delay = <0x28>; 2877ef62cebSEmmanuel Vadot rx_delay = <0x11>; 2887ef62cebSEmmanuel Vadot status = "okay"; 2897ef62cebSEmmanuel Vadot}; 2907ef62cebSEmmanuel Vadot 2917ef62cebSEmmanuel Vadot&gpu { 2927ef62cebSEmmanuel Vadot mali-supply = <&vdd_gpu>; 2937ef62cebSEmmanuel Vadot status = "okay"; 2947ef62cebSEmmanuel Vadot}; 2957ef62cebSEmmanuel Vadot 2967ef62cebSEmmanuel Vadot&hdmi { 2977ef62cebSEmmanuel Vadot ddc-i2c-bus = <&i2c3>; 2987ef62cebSEmmanuel Vadot pinctrl-names = "default"; 2997ef62cebSEmmanuel Vadot pinctrl-0 = <&hdmi_cec>; 3007ef62cebSEmmanuel Vadot status = "okay"; 3017ef62cebSEmmanuel Vadot}; 3027ef62cebSEmmanuel Vadot 3037ef62cebSEmmanuel Vadot&i2c0 { 3047ef62cebSEmmanuel Vadot status = "okay"; 3057ef62cebSEmmanuel Vadot 3067ef62cebSEmmanuel Vadot rk808: pmic@1b { 3077ef62cebSEmmanuel Vadot compatible = "rockchip,rk808"; 3087ef62cebSEmmanuel Vadot reg = <0x1b>; 3097ef62cebSEmmanuel Vadot interrupt-parent = <&gpio1>; 3107ef62cebSEmmanuel Vadot interrupts = <21 IRQ_TYPE_LEVEL_LOW>; 3117ef62cebSEmmanuel Vadot pinctrl-names = "default"; 3127ef62cebSEmmanuel Vadot pinctrl-0 = <&pmic_int_l>; 3137ef62cebSEmmanuel Vadot rockchip,system-power-controller; 3147ef62cebSEmmanuel Vadot wakeup-source; 3157ef62cebSEmmanuel Vadot #clock-cells = <1>; 3167ef62cebSEmmanuel Vadot clock-output-names = "xin32k", "rk808-clkout2"; 3177ef62cebSEmmanuel Vadot 3187ef62cebSEmmanuel Vadot vcc1-supply = <&vcc3v3_sys>; 3197ef62cebSEmmanuel Vadot vcc2-supply = <&vcc3v3_sys>; 3207ef62cebSEmmanuel Vadot vcc3-supply = <&vcc3v3_sys>; 3217ef62cebSEmmanuel Vadot vcc4-supply = <&vcc3v3_sys>; 3227ef62cebSEmmanuel Vadot vcc6-supply = <&vcc3v3_sys>; 3237ef62cebSEmmanuel Vadot vcc7-supply = <&vcc3v3_sys>; 3247ef62cebSEmmanuel Vadot vcc8-supply = <&vcc3v3_sys>; 3257ef62cebSEmmanuel Vadot vcc9-supply = <&vcc3v3_sys>; 3267ef62cebSEmmanuel Vadot vcc10-supply = <&vcc3v3_sys>; 3277ef62cebSEmmanuel Vadot vcc11-supply = <&vcc3v3_sys>; 3287ef62cebSEmmanuel Vadot vcc12-supply = <&vcc3v3_sys>; 3297ef62cebSEmmanuel Vadot vddio-supply = <&vcc_3v0>; 3307ef62cebSEmmanuel Vadot 3317ef62cebSEmmanuel Vadot regulators { 3327ef62cebSEmmanuel Vadot vdd_center: DCDC_REG1 { 3337ef62cebSEmmanuel Vadot regulator-name = "vdd_center"; 3347ef62cebSEmmanuel Vadot regulator-min-microvolt = <750000>; 3357ef62cebSEmmanuel Vadot regulator-max-microvolt = <1350000>; 3367ef62cebSEmmanuel Vadot regulator-ramp-delay = <6001>; 3377ef62cebSEmmanuel Vadot regulator-always-on; 3387ef62cebSEmmanuel Vadot regulator-boot-on; 3397ef62cebSEmmanuel Vadot 3407ef62cebSEmmanuel Vadot regulator-state-mem { 3417ef62cebSEmmanuel Vadot regulator-off-in-suspend; 3427ef62cebSEmmanuel Vadot }; 3437ef62cebSEmmanuel Vadot }; 3447ef62cebSEmmanuel Vadot 3457ef62cebSEmmanuel Vadot vdd_cpu_l: DCDC_REG2 { 3467ef62cebSEmmanuel Vadot regulator-name = "vdd_cpu_l"; 3477ef62cebSEmmanuel Vadot regulator-min-microvolt = <750000>; 3487ef62cebSEmmanuel Vadot regulator-max-microvolt = <1350000>; 3497ef62cebSEmmanuel Vadot regulator-ramp-delay = <6001>; 3507ef62cebSEmmanuel Vadot regulator-always-on; 3517ef62cebSEmmanuel Vadot regulator-boot-on; 3527ef62cebSEmmanuel Vadot 3537ef62cebSEmmanuel Vadot regulator-state-mem { 3547ef62cebSEmmanuel Vadot regulator-off-in-suspend; 3557ef62cebSEmmanuel Vadot }; 3567ef62cebSEmmanuel Vadot }; 3577ef62cebSEmmanuel Vadot 3587ef62cebSEmmanuel Vadot vcc_ddr: DCDC_REG3 { 3597ef62cebSEmmanuel Vadot regulator-name = "vcc_ddr"; 3607ef62cebSEmmanuel Vadot regulator-always-on; 3617ef62cebSEmmanuel Vadot regulator-boot-on; 3627ef62cebSEmmanuel Vadot regulator-state-mem { 3637ef62cebSEmmanuel Vadot regulator-on-in-suspend; 3647ef62cebSEmmanuel Vadot }; 3657ef62cebSEmmanuel Vadot }; 3667ef62cebSEmmanuel Vadot 3677ef62cebSEmmanuel Vadot vcc_1v8: DCDC_REG4 { 3687ef62cebSEmmanuel Vadot regulator-name = "vcc_1v8"; 3697ef62cebSEmmanuel Vadot regulator-min-microvolt = <1800000>; 3707ef62cebSEmmanuel Vadot regulator-max-microvolt = <1800000>; 3717ef62cebSEmmanuel Vadot regulator-always-on; 3727ef62cebSEmmanuel Vadot regulator-boot-on; 3737ef62cebSEmmanuel Vadot 3747ef62cebSEmmanuel Vadot regulator-state-mem { 3757ef62cebSEmmanuel Vadot regulator-on-in-suspend; 3767ef62cebSEmmanuel Vadot regulator-suspend-microvolt = <1800000>; 3777ef62cebSEmmanuel Vadot }; 3787ef62cebSEmmanuel Vadot }; 3797ef62cebSEmmanuel Vadot 3807ef62cebSEmmanuel Vadot vcc1v8_dvp: LDO_REG1 { 3817ef62cebSEmmanuel Vadot regulator-name = "vcc1v8_dvp"; 3827ef62cebSEmmanuel Vadot regulator-min-microvolt = <1800000>; 3837ef62cebSEmmanuel Vadot regulator-max-microvolt = <1800000>; 3847ef62cebSEmmanuel Vadot regulator-always-on; 3857ef62cebSEmmanuel Vadot regulator-boot-on; 3867ef62cebSEmmanuel Vadot 3877ef62cebSEmmanuel Vadot regulator-state-mem { 3887ef62cebSEmmanuel Vadot regulator-off-in-suspend; 3897ef62cebSEmmanuel Vadot }; 3907ef62cebSEmmanuel Vadot }; 3917ef62cebSEmmanuel Vadot 3927ef62cebSEmmanuel Vadot vcc2v8_dvp: LDO_REG2 { 3937ef62cebSEmmanuel Vadot regulator-name = "vcc2v8_dvp"; 3947ef62cebSEmmanuel Vadot regulator-min-microvolt = <2800000>; 3957ef62cebSEmmanuel Vadot regulator-max-microvolt = <2800000>; 3967ef62cebSEmmanuel Vadot regulator-always-on; 3977ef62cebSEmmanuel Vadot regulator-boot-on; 3987ef62cebSEmmanuel Vadot 3997ef62cebSEmmanuel Vadot regulator-state-mem { 4007ef62cebSEmmanuel Vadot regulator-off-in-suspend; 4017ef62cebSEmmanuel Vadot }; 4027ef62cebSEmmanuel Vadot }; 4037ef62cebSEmmanuel Vadot 4047ef62cebSEmmanuel Vadot vcc1v8_pmu: LDO_REG3 { 4057ef62cebSEmmanuel Vadot regulator-name = "vcc1v8_pmu"; 4067ef62cebSEmmanuel Vadot regulator-min-microvolt = <1800000>; 4077ef62cebSEmmanuel Vadot regulator-max-microvolt = <1800000>; 4087ef62cebSEmmanuel Vadot regulator-always-on; 4097ef62cebSEmmanuel Vadot regulator-boot-on; 4107ef62cebSEmmanuel Vadot 4117ef62cebSEmmanuel Vadot regulator-state-mem { 4127ef62cebSEmmanuel Vadot regulator-on-in-suspend; 4137ef62cebSEmmanuel Vadot regulator-suspend-microvolt = <1800000>; 4147ef62cebSEmmanuel Vadot }; 4157ef62cebSEmmanuel Vadot }; 4167ef62cebSEmmanuel Vadot 4177ef62cebSEmmanuel Vadot vcc_sdio: LDO_REG4 { 4187ef62cebSEmmanuel Vadot regulator-name = "vcc_sdio"; 4197ef62cebSEmmanuel Vadot regulator-min-microvolt = <1800000>; 4207ef62cebSEmmanuel Vadot regulator-max-microvolt = <3000000>; 4217ef62cebSEmmanuel Vadot regulator-always-on; 4227ef62cebSEmmanuel Vadot regulator-boot-on; 4237ef62cebSEmmanuel Vadot 4247ef62cebSEmmanuel Vadot regulator-state-mem { 4257ef62cebSEmmanuel Vadot regulator-on-in-suspend; 4267ef62cebSEmmanuel Vadot regulator-suspend-microvolt = <3000000>; 4277ef62cebSEmmanuel Vadot }; 4287ef62cebSEmmanuel Vadot }; 4297ef62cebSEmmanuel Vadot 4307ef62cebSEmmanuel Vadot vcca3v0_codec: LDO_REG5 { 4317ef62cebSEmmanuel Vadot regulator-name = "vcca3v0_codec"; 4327ef62cebSEmmanuel Vadot regulator-min-microvolt = <3000000>; 4337ef62cebSEmmanuel Vadot regulator-max-microvolt = <3000000>; 4347ef62cebSEmmanuel Vadot regulator-always-on; 4357ef62cebSEmmanuel Vadot regulator-boot-on; 4367ef62cebSEmmanuel Vadot 4377ef62cebSEmmanuel Vadot regulator-state-mem { 4387ef62cebSEmmanuel Vadot regulator-off-in-suspend; 4397ef62cebSEmmanuel Vadot }; 4407ef62cebSEmmanuel Vadot }; 4417ef62cebSEmmanuel Vadot 4427ef62cebSEmmanuel Vadot vcc_1v5: LDO_REG6 { 4437ef62cebSEmmanuel Vadot regulator-name = "vcc_1v5"; 4447ef62cebSEmmanuel Vadot regulator-min-microvolt = <1500000>; 4457ef62cebSEmmanuel Vadot regulator-max-microvolt = <1500000>; 4467ef62cebSEmmanuel Vadot regulator-always-on; 4477ef62cebSEmmanuel Vadot regulator-boot-on; 4487ef62cebSEmmanuel Vadot 4497ef62cebSEmmanuel Vadot regulator-state-mem { 4507ef62cebSEmmanuel Vadot regulator-on-in-suspend; 4517ef62cebSEmmanuel Vadot regulator-suspend-microvolt = <1500000>; 4527ef62cebSEmmanuel Vadot }; 4537ef62cebSEmmanuel Vadot }; 4547ef62cebSEmmanuel Vadot 4557ef62cebSEmmanuel Vadot vcca1v8_codec: LDO_REG7 { 4567ef62cebSEmmanuel Vadot regulator-name = "vcca1v8_codec"; 4577ef62cebSEmmanuel Vadot regulator-min-microvolt = <1800000>; 4587ef62cebSEmmanuel Vadot regulator-max-microvolt = <1800000>; 4597ef62cebSEmmanuel Vadot regulator-always-on; 4607ef62cebSEmmanuel Vadot regulator-boot-on; 4617ef62cebSEmmanuel Vadot 4627ef62cebSEmmanuel Vadot regulator-state-mem { 4637ef62cebSEmmanuel Vadot regulator-off-in-suspend; 4647ef62cebSEmmanuel Vadot }; 4657ef62cebSEmmanuel Vadot }; 4667ef62cebSEmmanuel Vadot 4677ef62cebSEmmanuel Vadot vcc_3v0: LDO_REG8 { 4687ef62cebSEmmanuel Vadot regulator-name = "vcc_3v0"; 4697ef62cebSEmmanuel Vadot regulator-min-microvolt = <3000000>; 4707ef62cebSEmmanuel Vadot regulator-max-microvolt = <3000000>; 4717ef62cebSEmmanuel Vadot regulator-always-on; 4727ef62cebSEmmanuel Vadot regulator-boot-on; 4737ef62cebSEmmanuel Vadot 4747ef62cebSEmmanuel Vadot regulator-state-mem { 4757ef62cebSEmmanuel Vadot regulator-on-in-suspend; 4767ef62cebSEmmanuel Vadot regulator-suspend-microvolt = <3000000>; 4777ef62cebSEmmanuel Vadot }; 4787ef62cebSEmmanuel Vadot }; 4797ef62cebSEmmanuel Vadot 4807ef62cebSEmmanuel Vadot vcc3v3_s3: vcc_lan: SWITCH_REG1 { 4817ef62cebSEmmanuel Vadot regulator-name = "vcc3v3_s3"; 4827ef62cebSEmmanuel Vadot regulator-always-on; 4837ef62cebSEmmanuel Vadot regulator-boot-on; 4847ef62cebSEmmanuel Vadot regulator-state-mem { 4857ef62cebSEmmanuel Vadot regulator-off-in-suspend; 4867ef62cebSEmmanuel Vadot }; 4877ef62cebSEmmanuel Vadot }; 4887ef62cebSEmmanuel Vadot 4897ef62cebSEmmanuel Vadot vcc3v3_s0: SWITCH_REG2 { 4907ef62cebSEmmanuel Vadot regulator-name = "vcc3v3_s0"; 4917ef62cebSEmmanuel Vadot regulator-always-on; 4927ef62cebSEmmanuel Vadot regulator-boot-on; 4937ef62cebSEmmanuel Vadot regulator-state-mem { 4947ef62cebSEmmanuel Vadot regulator-off-in-suspend; 4957ef62cebSEmmanuel Vadot }; 4967ef62cebSEmmanuel Vadot }; 4977ef62cebSEmmanuel Vadot }; 4987ef62cebSEmmanuel Vadot }; 4997ef62cebSEmmanuel Vadot 5007ef62cebSEmmanuel Vadot vdd_cpu_b: regulator@40 { 5017ef62cebSEmmanuel Vadot compatible = "silergy,syr827"; 5027ef62cebSEmmanuel Vadot reg = <0x40>; 5037ef62cebSEmmanuel Vadot fcs,suspend-voltage-selector = <1>; 5047ef62cebSEmmanuel Vadot regulator-name = "vdd_cpu_b"; 5057ef62cebSEmmanuel Vadot pinctrl-names = "default"; 5067ef62cebSEmmanuel Vadot pinctrl-0 = <&vsel1_pin>; 5077ef62cebSEmmanuel Vadot regulator-min-microvolt = <712500>; 5087ef62cebSEmmanuel Vadot regulator-max-microvolt = <1500000>; 5097ef62cebSEmmanuel Vadot regulator-ramp-delay = <1000>; 5107ef62cebSEmmanuel Vadot regulator-always-on; 5117ef62cebSEmmanuel Vadot regulator-boot-on; 5127ef62cebSEmmanuel Vadot vin-supply = <&vcc3v3_sys>; 5137ef62cebSEmmanuel Vadot 5147ef62cebSEmmanuel Vadot regulator-state-mem { 5157ef62cebSEmmanuel Vadot regulator-off-in-suspend; 5167ef62cebSEmmanuel Vadot }; 5177ef62cebSEmmanuel Vadot }; 5187ef62cebSEmmanuel Vadot 5197ef62cebSEmmanuel Vadot vdd_gpu: regulator@41 { 5207ef62cebSEmmanuel Vadot compatible = "silergy,syr828"; 5217ef62cebSEmmanuel Vadot reg = <0x41>; 5227ef62cebSEmmanuel Vadot fcs,suspend-voltage-selector = <1>; 5237ef62cebSEmmanuel Vadot regulator-name = "vdd_gpu"; 5247ef62cebSEmmanuel Vadot pinctrl-names = "default"; 5257ef62cebSEmmanuel Vadot pinctrl-0 = <&vsel2_pin>; 5267ef62cebSEmmanuel Vadot regulator-min-microvolt = <712500>; 5277ef62cebSEmmanuel Vadot regulator-max-microvolt = <1500000>; 5287ef62cebSEmmanuel Vadot regulator-ramp-delay = <1000>; 5297ef62cebSEmmanuel Vadot regulator-always-on; 5307ef62cebSEmmanuel Vadot regulator-boot-on; 5317ef62cebSEmmanuel Vadot vin-supply = <&vcc3v3_sys>; 5327ef62cebSEmmanuel Vadot 5337ef62cebSEmmanuel Vadot regulator-state-mem { 5347ef62cebSEmmanuel Vadot regulator-off-in-suspend; 5357ef62cebSEmmanuel Vadot }; 5367ef62cebSEmmanuel Vadot }; 5377ef62cebSEmmanuel Vadot}; 5387ef62cebSEmmanuel Vadot 5397ef62cebSEmmanuel Vadot&i2c1 { 5407ef62cebSEmmanuel Vadot i2c-scl-rising-time-ns = <300>; 5417ef62cebSEmmanuel Vadot i2c-scl-falling-time-ns = <15>; 5427ef62cebSEmmanuel Vadot status = "okay"; 5437ef62cebSEmmanuel Vadot 5447ef62cebSEmmanuel Vadot rt5651: audio-codec@1a { 5457ef62cebSEmmanuel Vadot compatible = "rockchip,rt5651"; 5467ef62cebSEmmanuel Vadot reg = <0x1a>; 5477ef62cebSEmmanuel Vadot clocks = <&cru SCLK_I2S_8CH_OUT>; 5487ef62cebSEmmanuel Vadot clock-names = "mclk"; 5497ef62cebSEmmanuel Vadot hp-det-gpio = <&gpio4 RK_PD4 GPIO_ACTIVE_LOW>; 5507ef62cebSEmmanuel Vadot spk-con-gpio = <&gpio0 RK_PB3 GPIO_ACTIVE_HIGH>; 5517ef62cebSEmmanuel Vadot #sound-dai-cells = <0>; 5527ef62cebSEmmanuel Vadot }; 5537ef62cebSEmmanuel Vadot 5547ef62cebSEmmanuel Vadot}; 5557ef62cebSEmmanuel Vadot 5567ef62cebSEmmanuel Vadot&i2c3 { 5577ef62cebSEmmanuel Vadot i2c-scl-rising-time-ns = <450>; 5587ef62cebSEmmanuel Vadot i2c-scl-falling-time-ns = <15>; 5597ef62cebSEmmanuel Vadot status = "okay"; 5607ef62cebSEmmanuel Vadot}; 5617ef62cebSEmmanuel Vadot 5627ef62cebSEmmanuel Vadot&i2c4 { 5637ef62cebSEmmanuel Vadot i2c-scl-rising-time-ns = <600>; 5647ef62cebSEmmanuel Vadot i2c-scl-falling-time-ns = <20>; 5657ef62cebSEmmanuel Vadot status = "okay"; 5667ef62cebSEmmanuel Vadot 5677ef62cebSEmmanuel Vadot fusb0: typec-portc@22 { 5687ef62cebSEmmanuel Vadot compatible = "fcs,fusb302"; 5697ef62cebSEmmanuel Vadot reg = <0x22>; 5707ef62cebSEmmanuel Vadot interrupt-parent = <&gpio1>; 5717ef62cebSEmmanuel Vadot interrupts = <RK_PA2 IRQ_TYPE_LEVEL_LOW>; 5727ef62cebSEmmanuel Vadot pinctrl-names = "default"; 5737ef62cebSEmmanuel Vadot pinctrl-0 = <&fusb0_int>; 5747ef62cebSEmmanuel Vadot vbus-supply = <&vcc5v0_typec>; 5757ef62cebSEmmanuel Vadot 5767ef62cebSEmmanuel Vadot ports { 5777ef62cebSEmmanuel Vadot #address-cells = <1>; 5787ef62cebSEmmanuel Vadot #size-cells = <0>; 5797ef62cebSEmmanuel Vadot 5807ef62cebSEmmanuel Vadot port@0 { 5817ef62cebSEmmanuel Vadot reg = <0>; 5827ef62cebSEmmanuel Vadot usbc0_role_sw: endpoint@0 { 5837ef62cebSEmmanuel Vadot remote-endpoint = <&dwc3_0_role_switch>; 5847ef62cebSEmmanuel Vadot }; 5857ef62cebSEmmanuel Vadot }; 5867ef62cebSEmmanuel Vadot }; 5877ef62cebSEmmanuel Vadot 5887ef62cebSEmmanuel Vadot connector { 5897ef62cebSEmmanuel Vadot compatible = "usb-c-connector"; 5907ef62cebSEmmanuel Vadot data-role = "dual"; 5917ef62cebSEmmanuel Vadot label = "USB-C"; 5927ef62cebSEmmanuel Vadot 5937ef62cebSEmmanuel Vadot ports { 5947ef62cebSEmmanuel Vadot #address-cells = <1>; 5957ef62cebSEmmanuel Vadot #size-cells = <0>; 5967ef62cebSEmmanuel Vadot 5977ef62cebSEmmanuel Vadot port@0 { 5987ef62cebSEmmanuel Vadot reg = <0>; 5997ef62cebSEmmanuel Vadot 6007ef62cebSEmmanuel Vadot usbc_hs: endpoint { 6017ef62cebSEmmanuel Vadot remote-endpoint = <&u2phy0_typec_hs>; 6027ef62cebSEmmanuel Vadot }; 6037ef62cebSEmmanuel Vadot }; 6047ef62cebSEmmanuel Vadot 6057ef62cebSEmmanuel Vadot port@1 { 6067ef62cebSEmmanuel Vadot reg = <1>; 6077ef62cebSEmmanuel Vadot 6087ef62cebSEmmanuel Vadot usbc_ss: endpoint { 6097ef62cebSEmmanuel Vadot remote-endpoint = <&tcphy0_typec_ss>; 6107ef62cebSEmmanuel Vadot }; 6117ef62cebSEmmanuel Vadot }; 6127ef62cebSEmmanuel Vadot }; 6137ef62cebSEmmanuel Vadot }; 6147ef62cebSEmmanuel Vadot }; 6157ef62cebSEmmanuel Vadot}; 6167ef62cebSEmmanuel Vadot 6177ef62cebSEmmanuel Vadot&i2s1 { 6187ef62cebSEmmanuel Vadot rockchip,playback-channels = <2>; 6197ef62cebSEmmanuel Vadot rockchip,capture-channels = <2>; 6207ef62cebSEmmanuel Vadot status = "okay"; 6217ef62cebSEmmanuel Vadot}; 6227ef62cebSEmmanuel Vadot 6237ef62cebSEmmanuel Vadot&i2s2 { 6247ef62cebSEmmanuel Vadot status = "okay"; 6257ef62cebSEmmanuel Vadot}; 6267ef62cebSEmmanuel Vadot 6277ef62cebSEmmanuel Vadot&io_domains { 6287ef62cebSEmmanuel Vadot status = "okay"; 6297ef62cebSEmmanuel Vadot 6307ef62cebSEmmanuel Vadot audio-supply = <&vcca1v8_codec>; 6317ef62cebSEmmanuel Vadot bt656-supply = <&vcc_3v0>; 6327ef62cebSEmmanuel Vadot gpio1830-supply = <&vcc_3v0>; 6337ef62cebSEmmanuel Vadot sdmmc-supply = <&vcc_sdio>; 6347ef62cebSEmmanuel Vadot}; 6357ef62cebSEmmanuel Vadot 6367ef62cebSEmmanuel Vadot&pmu_io_domains { 6377ef62cebSEmmanuel Vadot status = "okay"; 6387ef62cebSEmmanuel Vadot 6397ef62cebSEmmanuel Vadot pmu1830-supply = <&vcc_3v0>; 6407ef62cebSEmmanuel Vadot}; 6417ef62cebSEmmanuel Vadot 6427ef62cebSEmmanuel Vadot&pinctrl { 6437ef62cebSEmmanuel Vadot buttons { 6447ef62cebSEmmanuel Vadot pwrbtn: pwrbtn { 6457ef62cebSEmmanuel Vadot rockchip,pins = <0 RK_PA5 RK_FUNC_GPIO &pcfg_pull_up>; 6467ef62cebSEmmanuel Vadot }; 6477ef62cebSEmmanuel Vadot }; 6487ef62cebSEmmanuel Vadot 6497ef62cebSEmmanuel Vadot bt { 6507ef62cebSEmmanuel Vadot bt_enable_h: bt-enable-h { 6517ef62cebSEmmanuel Vadot rockchip,pins = <0 RK_PB1 RK_FUNC_GPIO &pcfg_pull_none>; 6527ef62cebSEmmanuel Vadot }; 6537ef62cebSEmmanuel Vadot 6547ef62cebSEmmanuel Vadot bt_host_wake_l: bt-host-wake-l { 6557ef62cebSEmmanuel Vadot rockchip,pins = <0 RK_PA4 RK_FUNC_GPIO &pcfg_pull_none>; 6567ef62cebSEmmanuel Vadot }; 6577ef62cebSEmmanuel Vadot 6587ef62cebSEmmanuel Vadot bt_wake_l: bt-wake-l { 6597ef62cebSEmmanuel Vadot rockchip,pins = <2 RK_PD2 RK_FUNC_GPIO &pcfg_pull_none>; 6607ef62cebSEmmanuel Vadot }; 6617ef62cebSEmmanuel Vadot }; 6627ef62cebSEmmanuel Vadot 6637ef62cebSEmmanuel Vadot fusb302x { 6647ef62cebSEmmanuel Vadot fusb0_int: fusb0-int { 6657ef62cebSEmmanuel Vadot rockchip,pins = <1 RK_PA2 RK_FUNC_GPIO &pcfg_pull_up>; 6667ef62cebSEmmanuel Vadot }; 6677ef62cebSEmmanuel Vadot }; 6687ef62cebSEmmanuel Vadot 6697ef62cebSEmmanuel Vadot lcd-panel { 6707ef62cebSEmmanuel Vadot lcd_panel_reset: lcd-panel-reset { 6717ef62cebSEmmanuel Vadot rockchip,pins = <4 RK_PD6 RK_FUNC_GPIO &pcfg_pull_up>; 6727ef62cebSEmmanuel Vadot }; 6737ef62cebSEmmanuel Vadot }; 6747ef62cebSEmmanuel Vadot 6757ef62cebSEmmanuel Vadot leds { 6767ef62cebSEmmanuel Vadot work_led_pin: work-led-pin { 6777ef62cebSEmmanuel Vadot rockchip,pins = <0 RK_PA2 RK_FUNC_GPIO &pcfg_pull_none>; 6787ef62cebSEmmanuel Vadot }; 6797ef62cebSEmmanuel Vadot 6807ef62cebSEmmanuel Vadot user_led_pin: user-led-pin { 6817ef62cebSEmmanuel Vadot rockchip,pins = <0 RK_PB4 RK_FUNC_GPIO &pcfg_pull_none>; 6827ef62cebSEmmanuel Vadot }; 6837ef62cebSEmmanuel Vadot 6847ef62cebSEmmanuel Vadot heartbeat_led_pin: heartbeat-led-pin { 6857ef62cebSEmmanuel Vadot rockchip,pins = <0 RK_PB5 RK_FUNC_GPIO &pcfg_pull_none>; 6867ef62cebSEmmanuel Vadot }; 6877ef62cebSEmmanuel Vadot 6887ef62cebSEmmanuel Vadot wlan_active_led_pin: wlan-led-pin { 6897ef62cebSEmmanuel Vadot rockchip,pins = <2 RK_PD3 RK_FUNC_GPIO &pcfg_pull_none>; 6907ef62cebSEmmanuel Vadot }; 6917ef62cebSEmmanuel Vadot 6927ef62cebSEmmanuel Vadot bt_active_led_pin: bt-led-pin { 6937ef62cebSEmmanuel Vadot rockchip,pins = <2 RK_PD4 RK_FUNC_GPIO &pcfg_pull_none>; 6947ef62cebSEmmanuel Vadot }; 6957ef62cebSEmmanuel Vadot 6967ef62cebSEmmanuel Vadot 6977ef62cebSEmmanuel Vadot }; 6987ef62cebSEmmanuel Vadot 6997ef62cebSEmmanuel Vadot pmic { 7007ef62cebSEmmanuel Vadot pmic_int_l: pmic-int-l { 7017ef62cebSEmmanuel Vadot rockchip,pins = <1 RK_PC5 RK_FUNC_GPIO &pcfg_pull_up>; 7027ef62cebSEmmanuel Vadot }; 7037ef62cebSEmmanuel Vadot 7047ef62cebSEmmanuel Vadot vsel1_pin: vsel1-pin { 7057ef62cebSEmmanuel Vadot rockchip,pins = <1 RK_PC1 RK_FUNC_GPIO &pcfg_pull_down>; 7067ef62cebSEmmanuel Vadot }; 7077ef62cebSEmmanuel Vadot 7087ef62cebSEmmanuel Vadot vsel2_pin: vsel2-pin { 7097ef62cebSEmmanuel Vadot rockchip,pins = <1 RK_PB6 RK_FUNC_GPIO &pcfg_pull_down>; 7107ef62cebSEmmanuel Vadot }; 7117ef62cebSEmmanuel Vadot }; 7127ef62cebSEmmanuel Vadot 7137ef62cebSEmmanuel Vadot rt5651 { 7147ef62cebSEmmanuel Vadot rt5651_hpcon: rt5640-hpcon { 7157ef62cebSEmmanuel Vadot rockchip,pins = <4 RK_PD4 RK_FUNC_GPIO &pcfg_pull_none>; 7167ef62cebSEmmanuel Vadot }; 7177ef62cebSEmmanuel Vadot }; 7187ef62cebSEmmanuel Vadot 7197ef62cebSEmmanuel Vadot sdio-pwrseq { 7207ef62cebSEmmanuel Vadot wifi_enable_h: wifi-enable-h { 7217ef62cebSEmmanuel Vadot rockchip,pins = <0 RK_PB2 RK_FUNC_GPIO &pcfg_pull_none>; 7227ef62cebSEmmanuel Vadot }; 7237ef62cebSEmmanuel Vadot }; 7247ef62cebSEmmanuel Vadot 7257ef62cebSEmmanuel Vadot usb-typec { 7267ef62cebSEmmanuel Vadot vcc5v0_typec_en: vcc5v0_typec_en { 7277ef62cebSEmmanuel Vadot rockchip,pins = <4 RK_PC5 RK_FUNC_GPIO &pcfg_pull_up>; 7287ef62cebSEmmanuel Vadot }; 7297ef62cebSEmmanuel Vadot }; 7307ef62cebSEmmanuel Vadot 7317ef62cebSEmmanuel Vadot usb2 { 7327ef62cebSEmmanuel Vadot vcc5v0_host3_en: vcc5v0-host3-en { 7337ef62cebSEmmanuel Vadot rockchip,pins = <0 RK_PB0 RK_FUNC_GPIO &pcfg_pull_none>; 7347ef62cebSEmmanuel Vadot }; 7357ef62cebSEmmanuel Vadot 7367ef62cebSEmmanuel Vadot vcc5v0_host1_en: vcc5v0-host1-en { 7377ef62cebSEmmanuel Vadot rockchip,pins = <0 RK_PA6 RK_FUNC_GPIO &pcfg_pull_none>; 7387ef62cebSEmmanuel Vadot }; 7397ef62cebSEmmanuel Vadot }; 7407ef62cebSEmmanuel Vadot 7417ef62cebSEmmanuel Vadot wifi { 7427ef62cebSEmmanuel Vadot wifi_host_wake_l: wifi-host-wake-l { 7437ef62cebSEmmanuel Vadot rockchip,pins = <0 RK_PA3 RK_FUNC_GPIO &pcfg_pull_none>; 7447ef62cebSEmmanuel Vadot }; 7457ef62cebSEmmanuel Vadot }; 7467ef62cebSEmmanuel Vadot}; 7477ef62cebSEmmanuel Vadot 7487ef62cebSEmmanuel Vadot&pwm0 { 7497ef62cebSEmmanuel Vadot status = "okay"; 7507ef62cebSEmmanuel Vadot}; 7517ef62cebSEmmanuel Vadot 7527ef62cebSEmmanuel Vadot&saradc { 7537ef62cebSEmmanuel Vadot vref-supply = <&vcca1v8_s3>; 7547ef62cebSEmmanuel Vadot status = "okay"; 7557ef62cebSEmmanuel Vadot}; 7567ef62cebSEmmanuel Vadot 7577ef62cebSEmmanuel Vadot&sdio0 { 7587ef62cebSEmmanuel Vadot /* WiFi & BT combo module AMPAK AP6255 */ 7597ef62cebSEmmanuel Vadot #address-cells = <1>; 7607ef62cebSEmmanuel Vadot #size-cells = <0>; 7617ef62cebSEmmanuel Vadot bus-width = <4>; 7627ef62cebSEmmanuel Vadot clock-frequency = <50000000>; 7637ef62cebSEmmanuel Vadot cap-sdio-irq; 7647ef62cebSEmmanuel Vadot cap-sd-highspeed; 7657ef62cebSEmmanuel Vadot keep-power-in-suspend; 7667ef62cebSEmmanuel Vadot mmc-pwrseq = <&sdio_pwrseq>; 7677ef62cebSEmmanuel Vadot non-removable; 7687ef62cebSEmmanuel Vadot pinctrl-names = "default"; 7697ef62cebSEmmanuel Vadot pinctrl-0 = <&sdio0_bus4 &sdio0_cmd &sdio0_clk>; 7707ef62cebSEmmanuel Vadot sd-uhs-sdr104; 7717ef62cebSEmmanuel Vadot status = "okay"; 7727ef62cebSEmmanuel Vadot 7737ef62cebSEmmanuel Vadot brcmf: wifi@1 { 7747ef62cebSEmmanuel Vadot compatible = "brcm,bcm4329-fmac"; 7757ef62cebSEmmanuel Vadot reg = <1>; 7767ef62cebSEmmanuel Vadot interrupt-parent = <&gpio0>; 777f126890aSEmmanuel Vadot interrupts = <RK_PA3 IRQ_TYPE_LEVEL_HIGH>; 7787ef62cebSEmmanuel Vadot interrupt-names = "host-wake"; 7797ef62cebSEmmanuel Vadot pinctrl-names = "default"; 7807ef62cebSEmmanuel Vadot pinctrl-0 = <&wifi_host_wake_l>; 7817ef62cebSEmmanuel Vadot }; 7827ef62cebSEmmanuel Vadot}; 7837ef62cebSEmmanuel Vadot 7847ef62cebSEmmanuel Vadot&sdmmc { 7857ef62cebSEmmanuel Vadot bus-width = <4>; 7867ef62cebSEmmanuel Vadot cap-mmc-highspeed; 7877ef62cebSEmmanuel Vadot cap-sd-highspeed; 7887ef62cebSEmmanuel Vadot cd-gpios = <&gpio0 RK_PA7 GPIO_ACTIVE_LOW>; 7897ef62cebSEmmanuel Vadot disable-wp; 7907ef62cebSEmmanuel Vadot max-frequency = <150000000>; 7917ef62cebSEmmanuel Vadot pinctrl-names = "default"; 7927ef62cebSEmmanuel Vadot pinctrl-0 = <&sdmmc_clk &sdmmc_cmd &sdmmc_bus4>; 7937ef62cebSEmmanuel Vadot status = "okay"; 7947ef62cebSEmmanuel Vadot}; 7957ef62cebSEmmanuel Vadot 7967ef62cebSEmmanuel Vadot&sdhci { 7977ef62cebSEmmanuel Vadot bus-width = <8>; 7987ef62cebSEmmanuel Vadot non-removable; 7997ef62cebSEmmanuel Vadot status = "okay"; 8007ef62cebSEmmanuel Vadot}; 8017ef62cebSEmmanuel Vadot 8027ef62cebSEmmanuel Vadot&tcphy0 { 8037ef62cebSEmmanuel Vadot status = "okay"; 8047ef62cebSEmmanuel Vadot}; 8057ef62cebSEmmanuel Vadot 8067ef62cebSEmmanuel Vadot&tcphy0_usb3 { 8077ef62cebSEmmanuel Vadot orientation-switch; 8087ef62cebSEmmanuel Vadot port { 8097ef62cebSEmmanuel Vadot tcphy0_typec_ss: endpoint { 8107ef62cebSEmmanuel Vadot remote-endpoint = <&usbc_ss>; 8117ef62cebSEmmanuel Vadot }; 8127ef62cebSEmmanuel Vadot }; 8137ef62cebSEmmanuel Vadot}; 8147ef62cebSEmmanuel Vadot 8157ef62cebSEmmanuel Vadot&tcphy1 { 8167ef62cebSEmmanuel Vadot status = "okay"; 8177ef62cebSEmmanuel Vadot}; 8187ef62cebSEmmanuel Vadot 8197ef62cebSEmmanuel Vadot&tsadc { 8207ef62cebSEmmanuel Vadot /* tshut mode 0:CRU 1:GPIO */ 8217ef62cebSEmmanuel Vadot rockchip,hw-tshut-mode = <1>; 8227ef62cebSEmmanuel Vadot /* tshut polarity 0:LOW 1:HIGH */ 8237ef62cebSEmmanuel Vadot rockchip,hw-tshut-polarity = <1>; 8247ef62cebSEmmanuel Vadot status = "okay"; 8257ef62cebSEmmanuel Vadot}; 8267ef62cebSEmmanuel Vadot 8277ef62cebSEmmanuel Vadot&u2phy0 { 8287ef62cebSEmmanuel Vadot status = "okay"; 8297ef62cebSEmmanuel Vadot 8307ef62cebSEmmanuel Vadot u2phy0_otg: otg-port { 8317ef62cebSEmmanuel Vadot status = "okay"; 8327ef62cebSEmmanuel Vadot }; 8337ef62cebSEmmanuel Vadot 8347ef62cebSEmmanuel Vadot u2phy0_host: host-port { 8357ef62cebSEmmanuel Vadot phy-supply = <&vcc5v0_host3>; 8367ef62cebSEmmanuel Vadot status = "okay"; 8377ef62cebSEmmanuel Vadot }; 8387ef62cebSEmmanuel Vadot 8397ef62cebSEmmanuel Vadot port { 8407ef62cebSEmmanuel Vadot u2phy0_typec_hs: endpoint { 8417ef62cebSEmmanuel Vadot remote-endpoint = <&usbc_hs>; 8427ef62cebSEmmanuel Vadot }; 8437ef62cebSEmmanuel Vadot }; 8447ef62cebSEmmanuel Vadot}; 8457ef62cebSEmmanuel Vadot 8467ef62cebSEmmanuel Vadot&u2phy1 { 8477ef62cebSEmmanuel Vadot status = "okay"; 8487ef62cebSEmmanuel Vadot 8497ef62cebSEmmanuel Vadot u2phy1_otg: otg-port { 8507ef62cebSEmmanuel Vadot status = "okay"; 8517ef62cebSEmmanuel Vadot }; 8527ef62cebSEmmanuel Vadot 8537ef62cebSEmmanuel Vadot u2phy1_host: host-port { 8547ef62cebSEmmanuel Vadot phy-supply = <&vcc5v0_host3>; 8557ef62cebSEmmanuel Vadot status = "okay"; 8567ef62cebSEmmanuel Vadot }; 8577ef62cebSEmmanuel Vadot}; 8587ef62cebSEmmanuel Vadot 8597ef62cebSEmmanuel Vadot&uart0 { 8607ef62cebSEmmanuel Vadot pinctrl-names = "default"; 8617ef62cebSEmmanuel Vadot pinctrl-0 = <&uart0_xfer &uart0_cts &uart0_rts>; 8627ef62cebSEmmanuel Vadot status = "okay"; 8637ef62cebSEmmanuel Vadot 8647ef62cebSEmmanuel Vadot bluetooth { 8657ef62cebSEmmanuel Vadot compatible = "brcm,bcm4345c5"; 8667ef62cebSEmmanuel Vadot clocks = <&rk808 1>; 8677ef62cebSEmmanuel Vadot clock-names = "lpo"; 8687ef62cebSEmmanuel Vadot device-wakeup-gpios = <&gpio2 RK_PD2 GPIO_ACTIVE_HIGH>; 8697ef62cebSEmmanuel Vadot host-wakeup-gpios = <&gpio0 RK_PA4 GPIO_ACTIVE_HIGH>; 8707ef62cebSEmmanuel Vadot shutdown-gpios = <&gpio0 RK_PB1 GPIO_ACTIVE_HIGH>; 8717ef62cebSEmmanuel Vadot max-speed = <1500000>; 8727ef62cebSEmmanuel Vadot pinctrl-names = "default"; 8737ef62cebSEmmanuel Vadot pinctrl-0 = <&bt_host_wake_l &bt_wake_l &bt_enable_h>; 8747ef62cebSEmmanuel Vadot vbat-supply = <&vcc3v3_sys>; 8757ef62cebSEmmanuel Vadot vddio-supply = <&vcc_1v8>; 8767ef62cebSEmmanuel Vadot }; 8777ef62cebSEmmanuel Vadot}; 8787ef62cebSEmmanuel Vadot 8797ef62cebSEmmanuel Vadot&uart2 { 8807ef62cebSEmmanuel Vadot status = "okay"; 8817ef62cebSEmmanuel Vadot}; 8827ef62cebSEmmanuel Vadot 8837ef62cebSEmmanuel Vadot&usb_host0_ehci { 8847ef62cebSEmmanuel Vadot status = "okay"; 8857ef62cebSEmmanuel Vadot}; 8867ef62cebSEmmanuel Vadot 8877ef62cebSEmmanuel Vadot&usb_host0_ohci { 8887ef62cebSEmmanuel Vadot status = "okay"; 8897ef62cebSEmmanuel Vadot}; 8907ef62cebSEmmanuel Vadot 8917ef62cebSEmmanuel Vadot&usb_host1_ehci { 8927ef62cebSEmmanuel Vadot status = "okay"; 8937ef62cebSEmmanuel Vadot}; 8947ef62cebSEmmanuel Vadot 8957ef62cebSEmmanuel Vadot&usb_host1_ohci { 8967ef62cebSEmmanuel Vadot status = "okay"; 8977ef62cebSEmmanuel Vadot}; 8987ef62cebSEmmanuel Vadot 8997ef62cebSEmmanuel Vadot&usbdrd3_0 { 9007ef62cebSEmmanuel Vadot status = "okay"; 9017ef62cebSEmmanuel Vadot}; 9027ef62cebSEmmanuel Vadot 9037ef62cebSEmmanuel Vadot&usbdrd_dwc3_0 { 9047ef62cebSEmmanuel Vadot status = "okay"; 9057ef62cebSEmmanuel Vadot usb-role-switch; 9067ef62cebSEmmanuel Vadot 9077ef62cebSEmmanuel Vadot port { 9087ef62cebSEmmanuel Vadot #address-cells = <1>; 9097ef62cebSEmmanuel Vadot #size-cells = <0>; 9107ef62cebSEmmanuel Vadot dwc3_0_role_switch: endpoint@0 { 9117ef62cebSEmmanuel Vadot reg = <0>; 9127ef62cebSEmmanuel Vadot remote-endpoint = <&usbc0_role_sw>; 9137ef62cebSEmmanuel Vadot }; 9147ef62cebSEmmanuel Vadot }; 9157ef62cebSEmmanuel Vadot}; 9167ef62cebSEmmanuel Vadot 9177ef62cebSEmmanuel Vadot&usbdrd3_1 { 9187ef62cebSEmmanuel Vadot status = "okay"; 9197ef62cebSEmmanuel Vadot}; 9207ef62cebSEmmanuel Vadot 9217ef62cebSEmmanuel Vadot&usbdrd_dwc3_1 { 9227ef62cebSEmmanuel Vadot status = "okay"; 9237ef62cebSEmmanuel Vadot dr_mode = "host"; 9247ef62cebSEmmanuel Vadot}; 9257ef62cebSEmmanuel Vadot 9267ef62cebSEmmanuel Vadot&vopb { 9277ef62cebSEmmanuel Vadot status = "okay"; 9287ef62cebSEmmanuel Vadot}; 9297ef62cebSEmmanuel Vadot 9307ef62cebSEmmanuel Vadot&vopb_mmu { 9317ef62cebSEmmanuel Vadot status = "okay"; 9327ef62cebSEmmanuel Vadot}; 9337ef62cebSEmmanuel Vadot 9347ef62cebSEmmanuel Vadot&vopl { 9357ef62cebSEmmanuel Vadot status = "okay"; 9367ef62cebSEmmanuel Vadot}; 9377ef62cebSEmmanuel Vadot 9387ef62cebSEmmanuel Vadot&vopl_mmu { 9397ef62cebSEmmanuel Vadot status = "okay"; 9407ef62cebSEmmanuel Vadot}; 941