1ce48b8c9SJonas Karlman// SPDX-License-Identifier: (GPL-2.0+ OR MIT) 2ce48b8c9SJonas Karlman 3ce48b8c9SJonas Karlman/dts-v1/; 4ce48b8c9SJonas Karlman 5ce48b8c9SJonas Karlman#include <dt-bindings/gpio/gpio.h> 6ce48b8c9SJonas Karlman#include <dt-bindings/leds/common.h> 7ce48b8c9SJonas Karlman#include <dt-bindings/pinctrl/rockchip.h> 83c4278eaSJonas Karlman#include <dt-bindings/soc/rockchip,vop2.h> 9ce48b8c9SJonas Karlman#include <dt-bindings/usb/pd.h> 10ce48b8c9SJonas Karlman#include "rk3588s.dtsi" 11ce48b8c9SJonas Karlman 12ce48b8c9SJonas Karlman/ { 13ce48b8c9SJonas Karlman model = "Hardkernel ODROID-M2"; 14ce48b8c9SJonas Karlman compatible = "hardkernel,odroid-m2", "rockchip,rk3588s"; 15ce48b8c9SJonas Karlman 16ce48b8c9SJonas Karlman aliases { 17ce48b8c9SJonas Karlman ethernet0 = &gmac1; 18ce48b8c9SJonas Karlman mmc0 = &sdhci; 19ce48b8c9SJonas Karlman mmc1 = &sdmmc; 20ce48b8c9SJonas Karlman }; 21ce48b8c9SJonas Karlman 22ce48b8c9SJonas Karlman chosen { 23ce48b8c9SJonas Karlman stdout-path = "serial2:1500000n8"; 24ce48b8c9SJonas Karlman }; 25ce48b8c9SJonas Karlman 263c4278eaSJonas Karlman hdmi-con { 273c4278eaSJonas Karlman compatible = "hdmi-connector"; 283c4278eaSJonas Karlman type = "a"; 293c4278eaSJonas Karlman 303c4278eaSJonas Karlman port { 313c4278eaSJonas Karlman hdmi_con_in: endpoint { 323c4278eaSJonas Karlman remote-endpoint = <&hdmi0_out_con>; 333c4278eaSJonas Karlman }; 343c4278eaSJonas Karlman }; 353c4278eaSJonas Karlman }; 363c4278eaSJonas Karlman 37ce48b8c9SJonas Karlman leds { 38ce48b8c9SJonas Karlman compatible = "gpio-leds"; 39ce48b8c9SJonas Karlman pinctrl-names = "default"; 40ce48b8c9SJonas Karlman pinctrl-0 = <&pwr_led>, <&sys_led>; 41ce48b8c9SJonas Karlman 42ce48b8c9SJonas Karlman led_pwr: led-0 { 43ce48b8c9SJonas Karlman color = <LED_COLOR_ID_RED>; 44ce48b8c9SJonas Karlman default-state = "on"; 45ce48b8c9SJonas Karlman function = LED_FUNCTION_POWER; 46ce48b8c9SJonas Karlman gpios = <&gpio1 RK_PB5 GPIO_ACTIVE_HIGH>; 47ce48b8c9SJonas Karlman linux,default-trigger = "default-on"; 48ce48b8c9SJonas Karlman }; 49ce48b8c9SJonas Karlman 50ce48b8c9SJonas Karlman led_sys: led-1 { 51ce48b8c9SJonas Karlman color = <LED_COLOR_ID_BLUE>; 52ce48b8c9SJonas Karlman default-state = "on"; 53ce48b8c9SJonas Karlman function = LED_FUNCTION_HEARTBEAT; 54ce48b8c9SJonas Karlman gpios = <&gpio1 RK_PB1 GPIO_ACTIVE_HIGH>; 55ce48b8c9SJonas Karlman linux,default-trigger = "heartbeat"; 56ce48b8c9SJonas Karlman }; 57ce48b8c9SJonas Karlman }; 58ce48b8c9SJonas Karlman 59ce48b8c9SJonas Karlman fan: pwm-fan { 60ce48b8c9SJonas Karlman compatible = "pwm-fan"; 61ce48b8c9SJonas Karlman #cooling-cells = <2>; 62ce48b8c9SJonas Karlman cooling-levels = <0 192 224 255>; 63ce48b8c9SJonas Karlman fan-supply = <&vcc5v0_sys>; 64ce48b8c9SJonas Karlman pwms = <&pwm0 0 22222 0>; 65ce48b8c9SJonas Karlman }; 66ce48b8c9SJonas Karlman 67ce48b8c9SJonas Karlman vcc_1v1_nldo_s3: regulator-1v1-vcc-nldo-s3 { 68ce48b8c9SJonas Karlman compatible = "regulator-fixed"; 69ce48b8c9SJonas Karlman regulator-name = "vcc_1v1_nldo_s3"; 70ce48b8c9SJonas Karlman regulator-always-on; 71ce48b8c9SJonas Karlman regulator-boot-on; 72ce48b8c9SJonas Karlman regulator-min-microvolt = <1100000>; 73ce48b8c9SJonas Karlman regulator-max-microvolt = <1100000>; 74ce48b8c9SJonas Karlman vin-supply = <&vcc4v0_sys>; 75ce48b8c9SJonas Karlman }; 76ce48b8c9SJonas Karlman 77ce48b8c9SJonas Karlman vcc3v3_lcd: regulator-3v3-vcc-lcd { 78ce48b8c9SJonas Karlman compatible = "regulator-fixed"; 79ce48b8c9SJonas Karlman enable-active-high; 80ce48b8c9SJonas Karlman gpios = <&gpio4 RK_PA3 GPIO_ACTIVE_HIGH>; 81ce48b8c9SJonas Karlman pinctrl-names = "default"; 82ce48b8c9SJonas Karlman pinctrl-0 = <&lcd_pwren>; 83ce48b8c9SJonas Karlman regulator-name = "vcc3v3_lcd"; 84ce48b8c9SJonas Karlman regulator-min-microvolt = <3300000>; 85ce48b8c9SJonas Karlman regulator-max-microvolt = <3300000>; 86ce48b8c9SJonas Karlman vin-supply = <&vcc_3v3_s3>; 87ce48b8c9SJonas Karlman }; 88ce48b8c9SJonas Karlman 89ce48b8c9SJonas Karlman vcc3v3_pcie: regulator-3v3-vcc-pcie { 90ce48b8c9SJonas Karlman compatible = "regulator-fixed"; 91ce48b8c9SJonas Karlman enable-active-high; 92ce48b8c9SJonas Karlman gpios = <&gpio0 RK_PC6 GPIO_ACTIVE_HIGH>; 93ce48b8c9SJonas Karlman pinctrl-names = "default"; 94ce48b8c9SJonas Karlman pinctrl-0 = <&pcie_pwren>; 95ce48b8c9SJonas Karlman regulator-name = "vcc3v3_pcie"; 96ce48b8c9SJonas Karlman regulator-min-microvolt = <3300000>; 97ce48b8c9SJonas Karlman regulator-max-microvolt = <3300000>; 98ce48b8c9SJonas Karlman vin-supply = <&vcc_3v3_s3>; 99ce48b8c9SJonas Karlman }; 100ce48b8c9SJonas Karlman 101ce48b8c9SJonas Karlman vcc_3v3_s0: regulator-3v3-vcc-s0 { 102ce48b8c9SJonas Karlman compatible = "regulator-fixed"; 103ce48b8c9SJonas Karlman regulator-name = "vcc_3v3_s0"; 104ce48b8c9SJonas Karlman regulator-always-on; 105ce48b8c9SJonas Karlman regulator-boot-on; 106ce48b8c9SJonas Karlman regulator-min-microvolt = <3300000>; 107ce48b8c9SJonas Karlman regulator-max-microvolt = <3300000>; 108ce48b8c9SJonas Karlman vin-supply = <&vcc_3v3_s3>; 109ce48b8c9SJonas Karlman }; 110ce48b8c9SJonas Karlman 111ce48b8c9SJonas Karlman vcc4v0_sys: regulator-4v0-vcc-sys { 112ce48b8c9SJonas Karlman compatible = "regulator-fixed"; 113ce48b8c9SJonas Karlman regulator-name = "vcc4v0_sys"; 114ce48b8c9SJonas Karlman regulator-always-on; 115ce48b8c9SJonas Karlman regulator-boot-on; 116ce48b8c9SJonas Karlman regulator-min-microvolt = <4800000>; 117ce48b8c9SJonas Karlman regulator-max-microvolt = <4800000>; 118ce48b8c9SJonas Karlman vin-supply = <&vcc12v_dcin>; 119ce48b8c9SJonas Karlman }; 120ce48b8c9SJonas Karlman 121ce48b8c9SJonas Karlman vcc5v0_sys: regulator-5v0-vcc-sys { 122ce48b8c9SJonas Karlman compatible = "regulator-fixed"; 123ce48b8c9SJonas Karlman enable-active-high; 124ce48b8c9SJonas Karlman gpios = <&gpio0 RK_PD3 GPIO_ACTIVE_HIGH>; 125ce48b8c9SJonas Karlman pinctrl-names = "default"; 126ce48b8c9SJonas Karlman pinctrl-0 = <&vcc5v0_pwren>; 127ce48b8c9SJonas Karlman regulator-name = "vcc5v0_sys"; 128ce48b8c9SJonas Karlman regulator-always-on; 129ce48b8c9SJonas Karlman regulator-boot-on; 130ce48b8c9SJonas Karlman regulator-min-microvolt = <5000000>; 131ce48b8c9SJonas Karlman regulator-max-microvolt = <5000000>; 132ce48b8c9SJonas Karlman vin-supply = <&vcc12v_dcin>; 133ce48b8c9SJonas Karlman }; 134ce48b8c9SJonas Karlman 135ce48b8c9SJonas Karlman vcc5v0_usb2_host: regulator-5v0-vcc-usb2-host { 136ce48b8c9SJonas Karlman compatible = "regulator-fixed"; 137ce48b8c9SJonas Karlman enable-active-high; 138ce48b8c9SJonas Karlman gpios = <&gpio1 RK_PC6 GPIO_ACTIVE_HIGH>; 139ce48b8c9SJonas Karlman pinctrl-names = "default"; 140ce48b8c9SJonas Karlman pinctrl-0 = <&usb2_host_pwren>; 141ce48b8c9SJonas Karlman regulator-name = "vcc5v0_usb2_host"; 142ce48b8c9SJonas Karlman regulator-min-microvolt = <5000000>; 143ce48b8c9SJonas Karlman regulator-max-microvolt = <5000000>; 144ce48b8c9SJonas Karlman vin-supply = <&vcc5v0_sys>; 145ce48b8c9SJonas Karlman }; 146ce48b8c9SJonas Karlman 147ce48b8c9SJonas Karlman vcc5v0_usb3_host: regulator-5v0-vcc-usb3-host { 148ce48b8c9SJonas Karlman compatible = "regulator-fixed"; 149ce48b8c9SJonas Karlman enable-active-high; 150ce48b8c9SJonas Karlman gpios = <&gpio1 RK_PA6 GPIO_ACTIVE_HIGH>; 151ce48b8c9SJonas Karlman pinctrl-names = "default"; 152ce48b8c9SJonas Karlman pinctrl-0 = <&usb3_host_pwren>; 153ce48b8c9SJonas Karlman regulator-name = "vcc5v0_usb3_host"; 154ce48b8c9SJonas Karlman regulator-min-microvolt = <5000000>; 155ce48b8c9SJonas Karlman regulator-max-microvolt = <5000000>; 156ce48b8c9SJonas Karlman vin-supply = <&vcc5v0_sys>; 157ce48b8c9SJonas Karlman }; 158ce48b8c9SJonas Karlman 159ce48b8c9SJonas Karlman vcc5v0_usb3_typec: regulator-5v0-vcc-usb3-typec { 160ce48b8c9SJonas Karlman compatible = "regulator-fixed"; 161ce48b8c9SJonas Karlman enable-active-high; 162ce48b8c9SJonas Karlman gpios = <&gpio0 RK_PA0 GPIO_ACTIVE_HIGH>; 163ce48b8c9SJonas Karlman pinctrl-names = "default"; 164ce48b8c9SJonas Karlman pinctrl-0 = <&usb3_typec_pwren>; 165ce48b8c9SJonas Karlman regulator-name = "vcc5v0_usb3_typec"; 166ce48b8c9SJonas Karlman regulator-min-microvolt = <5000000>; 167ce48b8c9SJonas Karlman regulator-max-microvolt = <5000000>; 168ce48b8c9SJonas Karlman vin-supply = <&vcc5v0_sys>; 169ce48b8c9SJonas Karlman }; 170ce48b8c9SJonas Karlman 171ce48b8c9SJonas Karlman vcca: regulator-5v0-vcca { 172ce48b8c9SJonas Karlman compatible = "regulator-fixed"; 173ce48b8c9SJonas Karlman regulator-name = "vcca"; 174ce48b8c9SJonas Karlman regulator-always-on; 175ce48b8c9SJonas Karlman regulator-boot-on; 176ce48b8c9SJonas Karlman regulator-min-microvolt = <5000000>; 177ce48b8c9SJonas Karlman regulator-max-microvolt = <5000000>; 178ce48b8c9SJonas Karlman vin-supply = <&vcc12v_dcin>; 179ce48b8c9SJonas Karlman }; 180ce48b8c9SJonas Karlman 181ce48b8c9SJonas Karlman vcc12v_dcin: regulator-12v0-vcc-dcin { 182ce48b8c9SJonas Karlman compatible = "regulator-fixed"; 183ce48b8c9SJonas Karlman regulator-name = "vcc12v_dcin"; 184ce48b8c9SJonas Karlman regulator-always-on; 185ce48b8c9SJonas Karlman regulator-boot-on; 186ce48b8c9SJonas Karlman regulator-min-microvolt = <12000000>; 187ce48b8c9SJonas Karlman regulator-max-microvolt = <12000000>; 188ce48b8c9SJonas Karlman }; 189ce48b8c9SJonas Karlman}; 190ce48b8c9SJonas Karlman 191ce48b8c9SJonas Karlman&combphy0_ps { 192ce48b8c9SJonas Karlman status = "okay"; 193ce48b8c9SJonas Karlman}; 194ce48b8c9SJonas Karlman 195ce48b8c9SJonas Karlman&combphy2_psu { 196ce48b8c9SJonas Karlman status = "okay"; 197ce48b8c9SJonas Karlman}; 198ce48b8c9SJonas Karlman 199ce48b8c9SJonas Karlman&cpu_b0 { 200ce48b8c9SJonas Karlman cpu-supply = <&vdd_cpu_big0_s0>; 201ce48b8c9SJonas Karlman}; 202ce48b8c9SJonas Karlman 203ce48b8c9SJonas Karlman&cpu_b1 { 204ce48b8c9SJonas Karlman cpu-supply = <&vdd_cpu_big0_s0>; 205ce48b8c9SJonas Karlman}; 206ce48b8c9SJonas Karlman 207ce48b8c9SJonas Karlman&cpu_b2 { 208ce48b8c9SJonas Karlman cpu-supply = <&vdd_cpu_big1_s0>; 209ce48b8c9SJonas Karlman}; 210ce48b8c9SJonas Karlman 211ce48b8c9SJonas Karlman&cpu_b3 { 212ce48b8c9SJonas Karlman cpu-supply = <&vdd_cpu_big1_s0>; 213ce48b8c9SJonas Karlman}; 214ce48b8c9SJonas Karlman 215ce48b8c9SJonas Karlman&cpu_l0 { 216ce48b8c9SJonas Karlman cpu-supply = <&vdd_cpu_lit_s0>; 217ce48b8c9SJonas Karlman}; 218ce48b8c9SJonas Karlman 219ce48b8c9SJonas Karlman&cpu_l1 { 220ce48b8c9SJonas Karlman cpu-supply = <&vdd_cpu_lit_s0>; 221ce48b8c9SJonas Karlman}; 222ce48b8c9SJonas Karlman 223ce48b8c9SJonas Karlman&cpu_l2 { 224ce48b8c9SJonas Karlman cpu-supply = <&vdd_cpu_lit_s0>; 225ce48b8c9SJonas Karlman}; 226ce48b8c9SJonas Karlman 227ce48b8c9SJonas Karlman&cpu_l3 { 228ce48b8c9SJonas Karlman cpu-supply = <&vdd_cpu_lit_s0>; 229ce48b8c9SJonas Karlman}; 230ce48b8c9SJonas Karlman 231ce48b8c9SJonas Karlman&gmac1 { 232ce48b8c9SJonas Karlman clock_in_out = "output"; 233ce48b8c9SJonas Karlman phy-handle = <&rgmii_phy1>; 234ce48b8c9SJonas Karlman phy-mode = "rgmii-id"; 235ce48b8c9SJonas Karlman phy-supply = <&vcc_3v3_s0>; 236ce48b8c9SJonas Karlman pinctrl-names = "default"; 237ce48b8c9SJonas Karlman pinctrl-0 = <&gmac1_miim 238ce48b8c9SJonas Karlman &gmac1_tx_bus2 239ce48b8c9SJonas Karlman &gmac1_rx_bus2 240ce48b8c9SJonas Karlman &gmac1_rgmii_clk 241ce48b8c9SJonas Karlman &gmac1_rgmii_bus 242ce48b8c9SJonas Karlman &gmac1_clkinout>; 243ce48b8c9SJonas Karlman status = "okay"; 244ce48b8c9SJonas Karlman}; 245ce48b8c9SJonas Karlman 246ce48b8c9SJonas Karlman&gpu { 247ce48b8c9SJonas Karlman mali-supply = <&vdd_gpu_s0>; 248ce48b8c9SJonas Karlman status = "okay"; 249ce48b8c9SJonas Karlman}; 250ce48b8c9SJonas Karlman 2513c4278eaSJonas Karlman&hdmi0 { 2523c4278eaSJonas Karlman status = "okay"; 2533c4278eaSJonas Karlman}; 2543c4278eaSJonas Karlman 2553c4278eaSJonas Karlman&hdmi0_in { 2563c4278eaSJonas Karlman hdmi0_in_vp0: endpoint { 2573c4278eaSJonas Karlman remote-endpoint = <&vp0_out_hdmi0>; 2583c4278eaSJonas Karlman }; 2593c4278eaSJonas Karlman}; 2603c4278eaSJonas Karlman 2613c4278eaSJonas Karlman&hdmi0_out { 2623c4278eaSJonas Karlman hdmi0_out_con: endpoint { 2633c4278eaSJonas Karlman remote-endpoint = <&hdmi_con_in>; 2643c4278eaSJonas Karlman }; 2653c4278eaSJonas Karlman}; 2663c4278eaSJonas Karlman 2672efdb041SDamon Ding&hdptxphy0 { 2683c4278eaSJonas Karlman status = "okay"; 2693c4278eaSJonas Karlman}; 2703c4278eaSJonas Karlman 271ce48b8c9SJonas Karlman&i2c0 { 272ce48b8c9SJonas Karlman pinctrl-names = "default"; 273ce48b8c9SJonas Karlman pinctrl-0 = <&i2c0m2_xfer>; 274ce48b8c9SJonas Karlman status = "okay"; 275ce48b8c9SJonas Karlman 276ce48b8c9SJonas Karlman vdd_cpu_big0_s0: regulator@42 { 277ce48b8c9SJonas Karlman compatible = "rockchip,rk8602"; 278ce48b8c9SJonas Karlman reg = <0x42>; 279ce48b8c9SJonas Karlman fcs,suspend-voltage-selector = <1>; 280ce48b8c9SJonas Karlman regulator-name = "vdd_cpu_big0_s0"; 281ce48b8c9SJonas Karlman regulator-always-on; 282ce48b8c9SJonas Karlman regulator-boot-on; 283ce48b8c9SJonas Karlman regulator-min-microvolt = <550000>; 284ce48b8c9SJonas Karlman regulator-max-microvolt = <1050000>; 285ce48b8c9SJonas Karlman regulator-ramp-delay = <2300>; 286ce48b8c9SJonas Karlman vin-supply = <&vcc4v0_sys>; 287ce48b8c9SJonas Karlman 288ce48b8c9SJonas Karlman regulator-state-mem { 289ce48b8c9SJonas Karlman regulator-off-in-suspend; 290ce48b8c9SJonas Karlman }; 291ce48b8c9SJonas Karlman }; 292ce48b8c9SJonas Karlman 293ce48b8c9SJonas Karlman vdd_cpu_big1_s0: regulator@43 { 294ce48b8c9SJonas Karlman compatible = "rockchip,rk8603", "rockchip,rk8602"; 295ce48b8c9SJonas Karlman reg = <0x43>; 296ce48b8c9SJonas Karlman fcs,suspend-voltage-selector = <1>; 297ce48b8c9SJonas Karlman regulator-name = "vdd_cpu_big1_s0"; 298ce48b8c9SJonas Karlman regulator-always-on; 299ce48b8c9SJonas Karlman regulator-boot-on; 300ce48b8c9SJonas Karlman regulator-min-microvolt = <550000>; 301ce48b8c9SJonas Karlman regulator-max-microvolt = <1050000>; 302ce48b8c9SJonas Karlman regulator-ramp-delay = <2300>; 303ce48b8c9SJonas Karlman vin-supply = <&vcc4v0_sys>; 304ce48b8c9SJonas Karlman 305ce48b8c9SJonas Karlman regulator-state-mem { 306ce48b8c9SJonas Karlman regulator-off-in-suspend; 307ce48b8c9SJonas Karlman }; 308ce48b8c9SJonas Karlman }; 309ce48b8c9SJonas Karlman}; 310ce48b8c9SJonas Karlman 311ce48b8c9SJonas Karlman&i2c2 { 312ce48b8c9SJonas Karlman status = "okay"; 313ce48b8c9SJonas Karlman 314ce48b8c9SJonas Karlman vdd_npu_s0: regulator@42 { 315ce48b8c9SJonas Karlman compatible = "rockchip,rk8602"; 316ce48b8c9SJonas Karlman reg = <0x42>; 317ce48b8c9SJonas Karlman fcs,suspend-voltage-selector = <1>; 318ce48b8c9SJonas Karlman regulator-name = "vdd_npu_s0"; 319ce48b8c9SJonas Karlman regulator-always-on; 320ce48b8c9SJonas Karlman regulator-boot-on; 321ce48b8c9SJonas Karlman regulator-min-microvolt = <550000>; 322ce48b8c9SJonas Karlman regulator-max-microvolt = <950000>; 323ce48b8c9SJonas Karlman regulator-ramp-delay = <2300>; 324ce48b8c9SJonas Karlman vin-supply = <&vcc4v0_sys>; 325ce48b8c9SJonas Karlman 326ce48b8c9SJonas Karlman regulator-state-mem { 327ce48b8c9SJonas Karlman regulator-off-in-suspend; 328ce48b8c9SJonas Karlman }; 329ce48b8c9SJonas Karlman }; 330ce48b8c9SJonas Karlman}; 331ce48b8c9SJonas Karlman 332ce48b8c9SJonas Karlman&i2c8 { 333ce48b8c9SJonas Karlman clock-frequency = <400000>; 334ce48b8c9SJonas Karlman pinctrl-names = "default"; 335ce48b8c9SJonas Karlman pinctrl-0 = <&i2c8m2_xfer>; 336ce48b8c9SJonas Karlman status = "okay"; 337ce48b8c9SJonas Karlman 338ce48b8c9SJonas Karlman usbc0: usb-typec@22 { 339ce48b8c9SJonas Karlman compatible = "fcs,fusb302"; 340ce48b8c9SJonas Karlman reg = <0x22>; 341ce48b8c9SJonas Karlman interrupt-parent = <&gpio4>; 342ce48b8c9SJonas Karlman interrupts = <RK_PA5 IRQ_TYPE_LEVEL_LOW>; 343ce48b8c9SJonas Karlman pinctrl-names = "default"; 344ce48b8c9SJonas Karlman pinctrl-0 = <&usbc0_int>; 345ce48b8c9SJonas Karlman vbus-supply = <&vcc5v0_usb3_typec>; 346ce48b8c9SJonas Karlman 347ce48b8c9SJonas Karlman connector { 348ce48b8c9SJonas Karlman compatible = "usb-c-connector"; 349ce48b8c9SJonas Karlman data-role = "dual"; 350ce48b8c9SJonas Karlman label = "USB-C"; 351ce48b8c9SJonas Karlman op-sink-microwatt = <1000000>; 352ce48b8c9SJonas Karlman power-role = "dual"; 353ce48b8c9SJonas Karlman sink-pdos = <PDO_FIXED(5000, 1000, PDO_FIXED_USB_COMM)>; 354ce48b8c9SJonas Karlman source-pdos = <PDO_FIXED(5000, 3000, PDO_FIXED_USB_COMM)>; 355ce48b8c9SJonas Karlman try-power-role = "source"; 356ce48b8c9SJonas Karlman 357ce48b8c9SJonas Karlman ports { 358ce48b8c9SJonas Karlman #address-cells = <1>; 359ce48b8c9SJonas Karlman #size-cells = <0>; 360ce48b8c9SJonas Karlman 361ce48b8c9SJonas Karlman port@0 { 362ce48b8c9SJonas Karlman reg = <0>; 363ce48b8c9SJonas Karlman 364ce48b8c9SJonas Karlman usbc0_role_switch: endpoint { 365ce48b8c9SJonas Karlman remote-endpoint = <&usb_host0_xhci_role_switch>; 366ce48b8c9SJonas Karlman }; 367ce48b8c9SJonas Karlman }; 368ce48b8c9SJonas Karlman 369ce48b8c9SJonas Karlman port@1 { 370ce48b8c9SJonas Karlman reg = <1>; 371ce48b8c9SJonas Karlman 372ce48b8c9SJonas Karlman usbc0_orientation_switch: endpoint { 373ce48b8c9SJonas Karlman remote-endpoint = <&usbdp_phy0_orientation_switch>; 374ce48b8c9SJonas Karlman }; 375ce48b8c9SJonas Karlman }; 376ce48b8c9SJonas Karlman 377ce48b8c9SJonas Karlman port@2 { 378ce48b8c9SJonas Karlman reg = <2>; 379ce48b8c9SJonas Karlman 380ce48b8c9SJonas Karlman usbc0_dp_altmode_mux: endpoint { 381ce48b8c9SJonas Karlman remote-endpoint = <&usbdp_phy0_dp_altmode_mux>; 382ce48b8c9SJonas Karlman }; 383ce48b8c9SJonas Karlman }; 384ce48b8c9SJonas Karlman }; 385ce48b8c9SJonas Karlman }; 386ce48b8c9SJonas Karlman }; 387ce48b8c9SJonas Karlman 388ce48b8c9SJonas Karlman pcf8563: rtc@51 { 389ce48b8c9SJonas Karlman compatible = "nxp,pcf8563"; 390ce48b8c9SJonas Karlman reg = <0x51>; 391ce48b8c9SJonas Karlman interrupt-parent = <&gpio0>; 392ce48b8c9SJonas Karlman interrupts = <RK_PB0 IRQ_TYPE_LEVEL_LOW>; 393ce48b8c9SJonas Karlman pinctrl-names = "default"; 394ce48b8c9SJonas Karlman pinctrl-0 = <&pcf8563_int>; 395ce48b8c9SJonas Karlman wakeup-source; 396ce48b8c9SJonas Karlman }; 397ce48b8c9SJonas Karlman}; 398ce48b8c9SJonas Karlman 399ce48b8c9SJonas Karlman&mdio1 { 400ce48b8c9SJonas Karlman rgmii_phy1: ethernet-phy@1 { 401ce48b8c9SJonas Karlman compatible = "ethernet-phy-id001c.c916"; 402ce48b8c9SJonas Karlman reg = <1>; 403ce48b8c9SJonas Karlman reset-assert-us = <20000>; 404ce48b8c9SJonas Karlman reset-deassert-us = <100000>; 405ce48b8c9SJonas Karlman reset-gpios = <&gpio3 RK_PB7 GPIO_ACTIVE_LOW>; 406ce48b8c9SJonas Karlman }; 407ce48b8c9SJonas Karlman}; 408ce48b8c9SJonas Karlman 409ce48b8c9SJonas Karlman&package_thermal { 410ce48b8c9SJonas Karlman polling-delay = <1000>; 411ce48b8c9SJonas Karlman 412ce48b8c9SJonas Karlman trips { 413ce48b8c9SJonas Karlman package_fan0: package-fan0 { 414ce48b8c9SJonas Karlman hysteresis = <2000>; 415ce48b8c9SJonas Karlman temperature = <60000>; 416ce48b8c9SJonas Karlman type = "active"; 417ce48b8c9SJonas Karlman }; 418ce48b8c9SJonas Karlman }; 419ce48b8c9SJonas Karlman 420ce48b8c9SJonas Karlman cooling-maps { 421ce48b8c9SJonas Karlman map0 { 422ce48b8c9SJonas Karlman cooling-device = <&fan 1 THERMAL_NO_LIMIT>; 423ce48b8c9SJonas Karlman trip = <&package_fan0>; 424ce48b8c9SJonas Karlman }; 425ce48b8c9SJonas Karlman }; 426ce48b8c9SJonas Karlman}; 427ce48b8c9SJonas Karlman 428ce48b8c9SJonas Karlman&pcie2x1l2 { 429ce48b8c9SJonas Karlman pinctrl-names = "default"; 430ce48b8c9SJonas Karlman pinctrl-0 = <&pcie20x1_pins>; 431ce48b8c9SJonas Karlman reset-gpios = <&gpio1 RK_PA7 GPIO_ACTIVE_HIGH>; 432ce48b8c9SJonas Karlman vpcie3v3-supply = <&vcc3v3_pcie>; 433ce48b8c9SJonas Karlman status = "okay"; 434ce48b8c9SJonas Karlman}; 435ce48b8c9SJonas Karlman 436*f94500ebSSebastian Reichel&pd_gpu { 437*f94500ebSSebastian Reichel domain-supply = <&vdd_gpu_s0>; 438*f94500ebSSebastian Reichel}; 439*f94500ebSSebastian Reichel 440ce48b8c9SJonas Karlman&pinctrl { 441ce48b8c9SJonas Karlman lcd { 442ce48b8c9SJonas Karlman lcd_pwren: lcd-pwren { 443ce48b8c9SJonas Karlman rockchip,pins = <4 RK_PA3 RK_FUNC_GPIO &pcfg_pull_none>; 444ce48b8c9SJonas Karlman }; 445ce48b8c9SJonas Karlman }; 446ce48b8c9SJonas Karlman 447ce48b8c9SJonas Karlman leds { 448ce48b8c9SJonas Karlman pwr_led: pwr-led { 449ce48b8c9SJonas Karlman rockchip,pins = <1 RK_PB5 RK_FUNC_GPIO &pcfg_pull_none>; 450ce48b8c9SJonas Karlman }; 451ce48b8c9SJonas Karlman 452ce48b8c9SJonas Karlman sys_led: sys-led { 453ce48b8c9SJonas Karlman rockchip,pins = <1 RK_PB1 RK_FUNC_GPIO &pcfg_pull_none>; 454ce48b8c9SJonas Karlman }; 455ce48b8c9SJonas Karlman }; 456ce48b8c9SJonas Karlman 457ce48b8c9SJonas Karlman pcie { 458ce48b8c9SJonas Karlman pcie20x1_pins: pcie20x1-pins { 459ce48b8c9SJonas Karlman rockchip,pins = 460ce48b8c9SJonas Karlman <1 RK_PA0 4 &pcfg_pull_none>, 461ce48b8c9SJonas Karlman <1 RK_PA7 RK_FUNC_GPIO &pcfg_pull_none>, 462ce48b8c9SJonas Karlman <1 RK_PA1 4 &pcfg_pull_none>; 463ce48b8c9SJonas Karlman }; 464ce48b8c9SJonas Karlman 465ce48b8c9SJonas Karlman pcie_pwren: pcie-pwren { 466ce48b8c9SJonas Karlman rockchip,pins = <0 RK_PC6 RK_FUNC_GPIO &pcfg_pull_none>; 467ce48b8c9SJonas Karlman }; 468ce48b8c9SJonas Karlman }; 469ce48b8c9SJonas Karlman 470ce48b8c9SJonas Karlman regulator { 471ce48b8c9SJonas Karlman vcc5v0_pwren: vcc5v0-pwren { 472ce48b8c9SJonas Karlman rockchip,pins = <0 RK_PD3 RK_FUNC_GPIO &pcfg_pull_none>; 473ce48b8c9SJonas Karlman }; 474ce48b8c9SJonas Karlman }; 475ce48b8c9SJonas Karlman 476ce48b8c9SJonas Karlman rtc { 477ce48b8c9SJonas Karlman pcf8563_int: pcf8563-int { 478ce48b8c9SJonas Karlman rockchip,pins = <0 RK_PB0 RK_FUNC_GPIO &pcfg_pull_none>; 479ce48b8c9SJonas Karlman }; 480ce48b8c9SJonas Karlman }; 481ce48b8c9SJonas Karlman 482ce48b8c9SJonas Karlman usb { 483ce48b8c9SJonas Karlman usb2_host_pwren: usb2-host-pwren { 484ce48b8c9SJonas Karlman rockchip,pins = <1 RK_PC6 RK_FUNC_GPIO &pcfg_pull_none>; 485ce48b8c9SJonas Karlman }; 486ce48b8c9SJonas Karlman 487ce48b8c9SJonas Karlman usb3_host_pwren: usb3-host-pwren { 488ce48b8c9SJonas Karlman rockchip,pins = <1 RK_PA6 RK_FUNC_GPIO &pcfg_pull_none>; 489ce48b8c9SJonas Karlman }; 490ce48b8c9SJonas Karlman 491ce48b8c9SJonas Karlman usb3_typec_pwren: usb3-typec-pwren { 492ce48b8c9SJonas Karlman rockchip,pins = <0 RK_PA0 RK_FUNC_GPIO &pcfg_pull_none>; 493ce48b8c9SJonas Karlman }; 494ce48b8c9SJonas Karlman 495ce48b8c9SJonas Karlman usbc0_int: usbc0-int { 496ce48b8c9SJonas Karlman rockchip,pins = <4 RK_PA5 RK_FUNC_GPIO &pcfg_pull_none>; 497ce48b8c9SJonas Karlman }; 498ce48b8c9SJonas Karlman }; 499ce48b8c9SJonas Karlman}; 500ce48b8c9SJonas Karlman 501ce48b8c9SJonas Karlman&pwm0 { 502ce48b8c9SJonas Karlman pinctrl-names = "default"; 503ce48b8c9SJonas Karlman pinctrl-0 = <&pwm0m2_pins>; 504ce48b8c9SJonas Karlman status = "okay"; 505ce48b8c9SJonas Karlman}; 506ce48b8c9SJonas Karlman 507ce48b8c9SJonas Karlman&saradc { 508ce48b8c9SJonas Karlman vref-supply = <&vcca_1v8_s0>; 509ce48b8c9SJonas Karlman status = "okay"; 510ce48b8c9SJonas Karlman}; 511ce48b8c9SJonas Karlman 512ce48b8c9SJonas Karlman&sdhci { 513ce48b8c9SJonas Karlman bus-width = <8>; 514ce48b8c9SJonas Karlman mmc-hs400-1_8v; 515ce48b8c9SJonas Karlman mmc-hs400-enhanced-strobe; 516ce48b8c9SJonas Karlman no-sd; 517ce48b8c9SJonas Karlman no-sdio; 518ce48b8c9SJonas Karlman non-removable; 519ce48b8c9SJonas Karlman vmmc-supply = <&vcc_3v3_s0>; 520ce48b8c9SJonas Karlman vqmmc-supply = <&vcc_1v8_s0>; 521ce48b8c9SJonas Karlman status = "okay"; 522ce48b8c9SJonas Karlman}; 523ce48b8c9SJonas Karlman 524ce48b8c9SJonas Karlman&sdmmc { 525ce48b8c9SJonas Karlman bus-width = <4>; 526ce48b8c9SJonas Karlman cap-sd-highspeed; 527ce48b8c9SJonas Karlman cd-gpios = <&gpio0 RK_PA4 GPIO_ACTIVE_LOW>; 528ce48b8c9SJonas Karlman disable-wp; 529ce48b8c9SJonas Karlman max-frequency = <150000000>; 530ce48b8c9SJonas Karlman no-mmc; 531ce48b8c9SJonas Karlman no-sdio; 532ce48b8c9SJonas Karlman sd-uhs-sdr104; 533ce48b8c9SJonas Karlman vmmc-supply = <&vcc_3v3_s3>; 534ce48b8c9SJonas Karlman vqmmc-supply = <&vccio_sd_s0>; 535ce48b8c9SJonas Karlman status = "okay"; 536ce48b8c9SJonas Karlman}; 537ce48b8c9SJonas Karlman 538ce48b8c9SJonas Karlman&spi2 { 539ce48b8c9SJonas Karlman assigned-clocks = <&cru CLK_SPI2>; 540ce48b8c9SJonas Karlman assigned-clock-rates = <200000000>; 541ce48b8c9SJonas Karlman num-cs = <1>; 542ce48b8c9SJonas Karlman pinctrl-names = "default"; 543ce48b8c9SJonas Karlman pinctrl-0 = <&spi2m2_cs0>, <&spi2m2_pins>; 544ce48b8c9SJonas Karlman status = "okay"; 545ce48b8c9SJonas Karlman 546ce48b8c9SJonas Karlman pmic@0 { 547ce48b8c9SJonas Karlman compatible = "rockchip,rk806"; 548ce48b8c9SJonas Karlman reg = <0x0>; 549ce48b8c9SJonas Karlman #gpio-cells = <2>; 550ce48b8c9SJonas Karlman gpio-controller; 551ce48b8c9SJonas Karlman interrupt-parent = <&gpio0>; 552ce48b8c9SJonas Karlman interrupts = <RK_PA7 IRQ_TYPE_LEVEL_LOW>; 553ce48b8c9SJonas Karlman pinctrl-names = "default"; 554ce48b8c9SJonas Karlman pinctrl-0 = <&pmic_pins>, <&rk806_dvs1_null>, 555ce48b8c9SJonas Karlman <&rk806_dvs2_null>, <&rk806_dvs3_null>; 556ce48b8c9SJonas Karlman spi-max-frequency = <1000000>; 557ce48b8c9SJonas Karlman system-power-controller; 558ce48b8c9SJonas Karlman 559ce48b8c9SJonas Karlman vcc1-supply = <&vcc4v0_sys>; 560ce48b8c9SJonas Karlman vcc2-supply = <&vcc4v0_sys>; 561ce48b8c9SJonas Karlman vcc3-supply = <&vcc4v0_sys>; 562ce48b8c9SJonas Karlman vcc4-supply = <&vcc4v0_sys>; 563ce48b8c9SJonas Karlman vcc5-supply = <&vcc4v0_sys>; 564ce48b8c9SJonas Karlman vcc6-supply = <&vcc4v0_sys>; 565ce48b8c9SJonas Karlman vcc7-supply = <&vcc4v0_sys>; 566ce48b8c9SJonas Karlman vcc8-supply = <&vcc4v0_sys>; 567ce48b8c9SJonas Karlman vcc9-supply = <&vcc4v0_sys>; 568ce48b8c9SJonas Karlman vcc10-supply = <&vcc4v0_sys>; 569ce48b8c9SJonas Karlman vcc11-supply = <&vcc_2v0_pldo_s3>; 570ce48b8c9SJonas Karlman vcc12-supply = <&vcc4v0_sys>; 571ce48b8c9SJonas Karlman vcc13-supply = <&vcc_1v1_nldo_s3>; 572ce48b8c9SJonas Karlman vcc14-supply = <&vcc_1v1_nldo_s3>; 573ce48b8c9SJonas Karlman vcca-supply = <&vcca>; 574ce48b8c9SJonas Karlman 575ce48b8c9SJonas Karlman rk806_dvs1_null: dvs1-null-pins { 576ce48b8c9SJonas Karlman pins = "gpio_pwrctrl1"; 577ce48b8c9SJonas Karlman function = "pin_fun0"; 578ce48b8c9SJonas Karlman }; 579ce48b8c9SJonas Karlman 580ce48b8c9SJonas Karlman rk806_dvs2_null: dvs2-null-pins { 581ce48b8c9SJonas Karlman pins = "gpio_pwrctrl2"; 582ce48b8c9SJonas Karlman function = "pin_fun0"; 583ce48b8c9SJonas Karlman }; 584ce48b8c9SJonas Karlman 585ce48b8c9SJonas Karlman rk806_dvs3_null: dvs3-null-pins { 586ce48b8c9SJonas Karlman pins = "gpio_pwrctrl3"; 587ce48b8c9SJonas Karlman function = "pin_fun0"; 588ce48b8c9SJonas Karlman }; 589ce48b8c9SJonas Karlman 590ce48b8c9SJonas Karlman regulators { 591ce48b8c9SJonas Karlman vdd_gpu_s0: dcdc-reg1 { 592ce48b8c9SJonas Karlman regulator-name = "vdd_gpu_s0"; 593ce48b8c9SJonas Karlman regulator-boot-on; 594ce48b8c9SJonas Karlman regulator-min-microvolt = <550000>; 595ce48b8c9SJonas Karlman regulator-max-microvolt = <950000>; 596ce48b8c9SJonas Karlman regulator-ramp-delay = <12500>; 597ce48b8c9SJonas Karlman regulator-enable-ramp-delay = <400>; 598ce48b8c9SJonas Karlman 599ce48b8c9SJonas Karlman regulator-state-mem { 600ce48b8c9SJonas Karlman regulator-off-in-suspend; 601ce48b8c9SJonas Karlman }; 602ce48b8c9SJonas Karlman }; 603ce48b8c9SJonas Karlman 604ce48b8c9SJonas Karlman vdd_cpu_lit_s0: dcdc-reg2 { 605ce48b8c9SJonas Karlman regulator-name = "vdd_cpu_lit_s0"; 606ce48b8c9SJonas Karlman regulator-always-on; 607ce48b8c9SJonas Karlman regulator-boot-on; 608ce48b8c9SJonas Karlman regulator-min-microvolt = <550000>; 609ce48b8c9SJonas Karlman regulator-max-microvolt = <950000>; 610ce48b8c9SJonas Karlman regulator-ramp-delay = <12500>; 611ce48b8c9SJonas Karlman 612ce48b8c9SJonas Karlman regulator-state-mem { 613ce48b8c9SJonas Karlman regulator-off-in-suspend; 614ce48b8c9SJonas Karlman }; 615ce48b8c9SJonas Karlman }; 616ce48b8c9SJonas Karlman 617ce48b8c9SJonas Karlman vdd_logic_s0: dcdc-reg3 { 618ce48b8c9SJonas Karlman regulator-name = "vdd_logic_s0"; 619ce48b8c9SJonas Karlman regulator-always-on; 620ce48b8c9SJonas Karlman regulator-boot-on; 621ce48b8c9SJonas Karlman regulator-min-microvolt = <675000>; 622ce48b8c9SJonas Karlman regulator-max-microvolt = <750000>; 623ce48b8c9SJonas Karlman regulator-ramp-delay = <12500>; 624ce48b8c9SJonas Karlman 625ce48b8c9SJonas Karlman regulator-state-mem { 626ce48b8c9SJonas Karlman regulator-off-in-suspend; 627ce48b8c9SJonas Karlman regulator-suspend-microvolt = <750000>; 628ce48b8c9SJonas Karlman }; 629ce48b8c9SJonas Karlman }; 630ce48b8c9SJonas Karlman 631ce48b8c9SJonas Karlman vdd_vdenc_s0: dcdc-reg4 { 632ce48b8c9SJonas Karlman regulator-name = "vdd_vdenc_s0"; 633ce48b8c9SJonas Karlman regulator-always-on; 634ce48b8c9SJonas Karlman regulator-boot-on; 635ce48b8c9SJonas Karlman regulator-min-microvolt = <550000>; 636ce48b8c9SJonas Karlman regulator-max-microvolt = <950000>; 637ce48b8c9SJonas Karlman regulator-ramp-delay = <12500>; 638ce48b8c9SJonas Karlman 639ce48b8c9SJonas Karlman regulator-state-mem { 640ce48b8c9SJonas Karlman regulator-off-in-suspend; 641ce48b8c9SJonas Karlman }; 642ce48b8c9SJonas Karlman }; 643ce48b8c9SJonas Karlman 644ce48b8c9SJonas Karlman vdd_ddr_s0: dcdc-reg5 { 645ce48b8c9SJonas Karlman regulator-name = "vdd_ddr_s0"; 646ce48b8c9SJonas Karlman regulator-always-on; 647ce48b8c9SJonas Karlman regulator-boot-on; 648ce48b8c9SJonas Karlman regulator-min-microvolt = <675000>; 649ce48b8c9SJonas Karlman regulator-max-microvolt = <900000>; 650ce48b8c9SJonas Karlman regulator-ramp-delay = <12500>; 651ce48b8c9SJonas Karlman 652ce48b8c9SJonas Karlman regulator-state-mem { 653ce48b8c9SJonas Karlman regulator-off-in-suspend; 654ce48b8c9SJonas Karlman regulator-suspend-microvolt = <850000>; 655ce48b8c9SJonas Karlman }; 656ce48b8c9SJonas Karlman }; 657ce48b8c9SJonas Karlman 658ce48b8c9SJonas Karlman vdd2_ddr_s3: dcdc-reg6 { 659ce48b8c9SJonas Karlman regulator-name = "vdd2_ddr_s3"; 660ce48b8c9SJonas Karlman regulator-always-on; 661ce48b8c9SJonas Karlman regulator-boot-on; 662ce48b8c9SJonas Karlman 663ce48b8c9SJonas Karlman regulator-state-mem { 664ce48b8c9SJonas Karlman regulator-on-in-suspend; 665ce48b8c9SJonas Karlman }; 666ce48b8c9SJonas Karlman }; 667ce48b8c9SJonas Karlman 668ce48b8c9SJonas Karlman vcc_2v0_pldo_s3: dcdc-reg7 { 669ce48b8c9SJonas Karlman regulator-name = "vdd_2v0_pldo_s3"; 670ce48b8c9SJonas Karlman regulator-always-on; 671ce48b8c9SJonas Karlman regulator-boot-on; 672ce48b8c9SJonas Karlman regulator-min-microvolt = <2000000>; 673ce48b8c9SJonas Karlman regulator-max-microvolt = <2000000>; 674ce48b8c9SJonas Karlman regulator-ramp-delay = <12500>; 675ce48b8c9SJonas Karlman 676ce48b8c9SJonas Karlman regulator-state-mem { 677ce48b8c9SJonas Karlman regulator-on-in-suspend; 678ce48b8c9SJonas Karlman regulator-suspend-microvolt = <2000000>; 679ce48b8c9SJonas Karlman }; 680ce48b8c9SJonas Karlman }; 681ce48b8c9SJonas Karlman 682ce48b8c9SJonas Karlman vcc_3v3_s3: dcdc-reg8 { 683ce48b8c9SJonas Karlman regulator-name = "vcc_3v3_s3"; 684ce48b8c9SJonas Karlman regulator-always-on; 685ce48b8c9SJonas Karlman regulator-boot-on; 686ce48b8c9SJonas Karlman regulator-min-microvolt = <3300000>; 687ce48b8c9SJonas Karlman regulator-max-microvolt = <3300000>; 688ce48b8c9SJonas Karlman 689ce48b8c9SJonas Karlman regulator-state-mem { 690ce48b8c9SJonas Karlman regulator-on-in-suspend; 691ce48b8c9SJonas Karlman regulator-suspend-microvolt = <3300000>; 692ce48b8c9SJonas Karlman }; 693ce48b8c9SJonas Karlman }; 694ce48b8c9SJonas Karlman 695ce48b8c9SJonas Karlman vddq_ddr_s0: dcdc-reg9 { 696ce48b8c9SJonas Karlman regulator-name = "vddq_ddr_s0"; 697ce48b8c9SJonas Karlman regulator-always-on; 698ce48b8c9SJonas Karlman regulator-boot-on; 699ce48b8c9SJonas Karlman 700ce48b8c9SJonas Karlman regulator-state-mem { 701ce48b8c9SJonas Karlman regulator-off-in-suspend; 702ce48b8c9SJonas Karlman }; 703ce48b8c9SJonas Karlman }; 704ce48b8c9SJonas Karlman 705ce48b8c9SJonas Karlman vcc_1v8_s3: dcdc-reg10 { 706ce48b8c9SJonas Karlman regulator-name = "vcc_1v8_s3"; 707ce48b8c9SJonas Karlman regulator-always-on; 708ce48b8c9SJonas Karlman regulator-boot-on; 709ce48b8c9SJonas Karlman regulator-min-microvolt = <1800000>; 710ce48b8c9SJonas Karlman regulator-max-microvolt = <1800000>; 711ce48b8c9SJonas Karlman 712ce48b8c9SJonas Karlman regulator-state-mem { 713ce48b8c9SJonas Karlman regulator-on-in-suspend; 714ce48b8c9SJonas Karlman regulator-suspend-microvolt = <1800000>; 715ce48b8c9SJonas Karlman }; 716ce48b8c9SJonas Karlman }; 717ce48b8c9SJonas Karlman 718ce48b8c9SJonas Karlman vcc_1v8_s0: pldo-reg1 { 719ce48b8c9SJonas Karlman regulator-name = "vcc_1v8_s0"; 720ce48b8c9SJonas Karlman regulator-always-on; 721ce48b8c9SJonas Karlman regulator-boot-on; 722ce48b8c9SJonas Karlman regulator-min-microvolt = <1800000>; 723ce48b8c9SJonas Karlman regulator-max-microvolt = <1800000>; 724ce48b8c9SJonas Karlman 725ce48b8c9SJonas Karlman regulator-state-mem { 726ce48b8c9SJonas Karlman regulator-off-in-suspend; 727ce48b8c9SJonas Karlman }; 728ce48b8c9SJonas Karlman }; 729ce48b8c9SJonas Karlman 730ce48b8c9SJonas Karlman vcca_1v8_s0: pldo-reg2 { 731ce48b8c9SJonas Karlman regulator-name = "vcca_1v8_s0"; 732ce48b8c9SJonas Karlman regulator-always-on; 733ce48b8c9SJonas Karlman regulator-boot-on; 734ce48b8c9SJonas Karlman regulator-min-microvolt = <1800000>; 735ce48b8c9SJonas Karlman regulator-max-microvolt = <1800000>; 736ce48b8c9SJonas Karlman 737ce48b8c9SJonas Karlman regulator-state-mem { 738ce48b8c9SJonas Karlman regulator-off-in-suspend; 739ce48b8c9SJonas Karlman regulator-suspend-microvolt = <1800000>; 740ce48b8c9SJonas Karlman }; 741ce48b8c9SJonas Karlman }; 742ce48b8c9SJonas Karlman 743ce48b8c9SJonas Karlman vdda_1v2_s0: pldo-reg3 { 744ce48b8c9SJonas Karlman regulator-name = "vdda_1v2_s0"; 745ce48b8c9SJonas Karlman regulator-always-on; 746ce48b8c9SJonas Karlman regulator-boot-on; 747ce48b8c9SJonas Karlman regulator-min-microvolt = <1200000>; 748ce48b8c9SJonas Karlman regulator-max-microvolt = <1200000>; 749ce48b8c9SJonas Karlman 750ce48b8c9SJonas Karlman regulator-state-mem { 751ce48b8c9SJonas Karlman regulator-off-in-suspend; 752ce48b8c9SJonas Karlman }; 753ce48b8c9SJonas Karlman }; 754ce48b8c9SJonas Karlman 755ce48b8c9SJonas Karlman vcca_3v3_s0: pldo-reg4 { 756ce48b8c9SJonas Karlman regulator-name = "vcca_3v3_s0"; 757ce48b8c9SJonas Karlman regulator-always-on; 758ce48b8c9SJonas Karlman regulator-boot-on; 759ce48b8c9SJonas Karlman regulator-min-microvolt = <3300000>; 760ce48b8c9SJonas Karlman regulator-max-microvolt = <3300000>; 761ce48b8c9SJonas Karlman regulator-ramp-delay = <12500>; 762ce48b8c9SJonas Karlman 763ce48b8c9SJonas Karlman regulator-state-mem { 764ce48b8c9SJonas Karlman regulator-off-in-suspend; 765ce48b8c9SJonas Karlman }; 766ce48b8c9SJonas Karlman }; 767ce48b8c9SJonas Karlman 768ce48b8c9SJonas Karlman vccio_sd_s0: pldo-reg5 { 769ce48b8c9SJonas Karlman regulator-name = "vccio_sd_s0"; 770ce48b8c9SJonas Karlman regulator-always-on; 771ce48b8c9SJonas Karlman regulator-boot-on; 772ce48b8c9SJonas Karlman regulator-min-microvolt = <1800000>; 773ce48b8c9SJonas Karlman regulator-max-microvolt = <3300000>; 774ce48b8c9SJonas Karlman regulator-ramp-delay = <12500>; 775ce48b8c9SJonas Karlman 776ce48b8c9SJonas Karlman regulator-state-mem { 777ce48b8c9SJonas Karlman regulator-off-in-suspend; 778ce48b8c9SJonas Karlman }; 779ce48b8c9SJonas Karlman }; 780ce48b8c9SJonas Karlman 781ce48b8c9SJonas Karlman vcc_1v8_s3_pldo6: pldo-reg6 { 782ce48b8c9SJonas Karlman regulator-name = "vcc_1v8_s3_pldo6"; 783ce48b8c9SJonas Karlman regulator-always-on; 784ce48b8c9SJonas Karlman regulator-boot-on; 785ce48b8c9SJonas Karlman regulator-min-microvolt = <1800000>; 786ce48b8c9SJonas Karlman regulator-max-microvolt = <1800000>; 787ce48b8c9SJonas Karlman 788ce48b8c9SJonas Karlman regulator-state-mem { 789ce48b8c9SJonas Karlman regulator-on-in-suspend; 790ce48b8c9SJonas Karlman regulator-suspend-microvolt = <1800000>; 791ce48b8c9SJonas Karlman }; 792ce48b8c9SJonas Karlman }; 793ce48b8c9SJonas Karlman 794ce48b8c9SJonas Karlman vdd_0v75_s3: nldo-reg1 { 795ce48b8c9SJonas Karlman regulator-name = "vdd_0v75_s3"; 796ce48b8c9SJonas Karlman regulator-always-on; 797ce48b8c9SJonas Karlman regulator-boot-on; 798ce48b8c9SJonas Karlman regulator-min-microvolt = <750000>; 799ce48b8c9SJonas Karlman regulator-max-microvolt = <750000>; 800ce48b8c9SJonas Karlman 801ce48b8c9SJonas Karlman regulator-state-mem { 802ce48b8c9SJonas Karlman regulator-on-in-suspend; 803ce48b8c9SJonas Karlman regulator-suspend-microvolt = <750000>; 804ce48b8c9SJonas Karlman }; 805ce48b8c9SJonas Karlman }; 806ce48b8c9SJonas Karlman 807ce48b8c9SJonas Karlman vdda_ddr_pll_s0: nldo-reg2 { 808ce48b8c9SJonas Karlman regulator-name = "vdda_ddr_pll_s0"; 809ce48b8c9SJonas Karlman regulator-always-on; 810ce48b8c9SJonas Karlman regulator-boot-on; 811ce48b8c9SJonas Karlman regulator-min-microvolt = <900000>; 812ce48b8c9SJonas Karlman regulator-max-microvolt = <900000>; 813ce48b8c9SJonas Karlman 814ce48b8c9SJonas Karlman regulator-state-mem { 815ce48b8c9SJonas Karlman regulator-off-in-suspend; 816ce48b8c9SJonas Karlman regulator-suspend-microvolt = <850000>; 817ce48b8c9SJonas Karlman }; 818ce48b8c9SJonas Karlman }; 819ce48b8c9SJonas Karlman 820ce48b8c9SJonas Karlman vdda_0v75_s0: nldo-reg3 { 821ce48b8c9SJonas Karlman regulator-name = "vdda_0v75_s0"; 822ce48b8c9SJonas Karlman regulator-always-on; 823ce48b8c9SJonas Karlman regulator-boot-on; 824ce48b8c9SJonas Karlman regulator-min-microvolt = <837500>; 825ce48b8c9SJonas Karlman regulator-max-microvolt = <837500>; 826ce48b8c9SJonas Karlman 827ce48b8c9SJonas Karlman regulator-state-mem { 828ce48b8c9SJonas Karlman regulator-off-in-suspend; 829ce48b8c9SJonas Karlman }; 830ce48b8c9SJonas Karlman }; 831ce48b8c9SJonas Karlman 832ce48b8c9SJonas Karlman vdda_0v85_s0: nldo-reg4 { 833ce48b8c9SJonas Karlman regulator-name = "vdda_0v85_s0"; 834ce48b8c9SJonas Karlman regulator-always-on; 835ce48b8c9SJonas Karlman regulator-boot-on; 836ce48b8c9SJonas Karlman regulator-min-microvolt = <850000>; 837ce48b8c9SJonas Karlman regulator-max-microvolt = <850000>; 838ce48b8c9SJonas Karlman 839ce48b8c9SJonas Karlman regulator-state-mem { 840ce48b8c9SJonas Karlman regulator-off-in-suspend; 841ce48b8c9SJonas Karlman }; 842ce48b8c9SJonas Karlman }; 843ce48b8c9SJonas Karlman 844ce48b8c9SJonas Karlman /* Schematics show not in use */ 845ce48b8c9SJonas Karlman nldo-reg5 { 846ce48b8c9SJonas Karlman }; 847ce48b8c9SJonas Karlman }; 848ce48b8c9SJonas Karlman }; 849ce48b8c9SJonas Karlman}; 850ce48b8c9SJonas Karlman 851ce48b8c9SJonas Karlman&tsadc { 852ce48b8c9SJonas Karlman status = "okay"; 853ce48b8c9SJonas Karlman}; 854ce48b8c9SJonas Karlman 855ce48b8c9SJonas Karlman&u2phy0 { 856ce48b8c9SJonas Karlman status = "okay"; 857ce48b8c9SJonas Karlman}; 858ce48b8c9SJonas Karlman 859ce48b8c9SJonas Karlman&u2phy0_otg { 860ce48b8c9SJonas Karlman status = "okay"; 861ce48b8c9SJonas Karlman}; 862ce48b8c9SJonas Karlman 863ce48b8c9SJonas Karlman&u2phy2 { 864ce48b8c9SJonas Karlman status = "okay"; 865ce48b8c9SJonas Karlman}; 866ce48b8c9SJonas Karlman 867ce48b8c9SJonas Karlman&u2phy2_host { 868ce48b8c9SJonas Karlman phy-supply = <&vcc5v0_usb2_host>; 869ce48b8c9SJonas Karlman status = "okay"; 870ce48b8c9SJonas Karlman}; 871ce48b8c9SJonas Karlman 872ce48b8c9SJonas Karlman&u2phy3 { 873ce48b8c9SJonas Karlman status = "okay"; 874ce48b8c9SJonas Karlman}; 875ce48b8c9SJonas Karlman 876ce48b8c9SJonas Karlman&u2phy3_host { 877ce48b8c9SJonas Karlman phy-supply = <&vcc5v0_usb3_host>; 878ce48b8c9SJonas Karlman status = "okay"; 879ce48b8c9SJonas Karlman}; 880ce48b8c9SJonas Karlman 881ce48b8c9SJonas Karlman&uart2 { 882ce48b8c9SJonas Karlman pinctrl-names = "default"; 883ce48b8c9SJonas Karlman pinctrl-0 = <&uart2m0_xfer>; 884ce48b8c9SJonas Karlman status = "okay"; 885ce48b8c9SJonas Karlman}; 886ce48b8c9SJonas Karlman 887ce48b8c9SJonas Karlman&usb_host0_ehci { 888ce48b8c9SJonas Karlman status = "okay"; 889ce48b8c9SJonas Karlman}; 890ce48b8c9SJonas Karlman 891ce48b8c9SJonas Karlman&usb_host0_ohci { 892ce48b8c9SJonas Karlman status = "okay"; 893ce48b8c9SJonas Karlman}; 894ce48b8c9SJonas Karlman 895ce48b8c9SJonas Karlman&usb_host0_xhci { 896ce48b8c9SJonas Karlman usb-role-switch; 897ce48b8c9SJonas Karlman status = "okay"; 898ce48b8c9SJonas Karlman 899ce48b8c9SJonas Karlman port { 900ce48b8c9SJonas Karlman usb_host0_xhci_role_switch: endpoint { 901ce48b8c9SJonas Karlman remote-endpoint = <&usbc0_role_switch>; 902ce48b8c9SJonas Karlman }; 903ce48b8c9SJonas Karlman }; 904ce48b8c9SJonas Karlman}; 905ce48b8c9SJonas Karlman 906ce48b8c9SJonas Karlman&usb_host1_ehci { 907ce48b8c9SJonas Karlman status = "okay"; 908ce48b8c9SJonas Karlman}; 909ce48b8c9SJonas Karlman 910ce48b8c9SJonas Karlman&usb_host1_ohci { 911ce48b8c9SJonas Karlman status = "okay"; 912ce48b8c9SJonas Karlman}; 913ce48b8c9SJonas Karlman 914ce48b8c9SJonas Karlman&usb_host2_xhci { 915ce48b8c9SJonas Karlman status = "okay"; 916ce48b8c9SJonas Karlman}; 917ce48b8c9SJonas Karlman 918ce48b8c9SJonas Karlman&usbdp_phy0 { 919ce48b8c9SJonas Karlman mode-switch; 920ce48b8c9SJonas Karlman orientation-switch; 921ce48b8c9SJonas Karlman sbu1-dc-gpios = <&gpio4 RK_PA0 GPIO_ACTIVE_HIGH>; 922ce48b8c9SJonas Karlman sbu2-dc-gpios = <&gpio4 RK_PA1 GPIO_ACTIVE_HIGH>; 923ce48b8c9SJonas Karlman status = "okay"; 924ce48b8c9SJonas Karlman 925ce48b8c9SJonas Karlman port { 926ce48b8c9SJonas Karlman #address-cells = <1>; 927ce48b8c9SJonas Karlman #size-cells = <0>; 928ce48b8c9SJonas Karlman 929ce48b8c9SJonas Karlman usbdp_phy0_orientation_switch: endpoint@0 { 930ce48b8c9SJonas Karlman reg = <0>; 931ce48b8c9SJonas Karlman remote-endpoint = <&usbc0_orientation_switch>; 932ce48b8c9SJonas Karlman }; 933ce48b8c9SJonas Karlman 934ce48b8c9SJonas Karlman usbdp_phy0_dp_altmode_mux: endpoint@1 { 935ce48b8c9SJonas Karlman reg = <1>; 936ce48b8c9SJonas Karlman remote-endpoint = <&usbc0_dp_altmode_mux>; 937ce48b8c9SJonas Karlman }; 938ce48b8c9SJonas Karlman }; 939ce48b8c9SJonas Karlman}; 9403c4278eaSJonas Karlman 9413c4278eaSJonas Karlman&vop { 9423c4278eaSJonas Karlman status = "okay"; 9433c4278eaSJonas Karlman}; 9443c4278eaSJonas Karlman 9453c4278eaSJonas Karlman&vop_mmu { 9463c4278eaSJonas Karlman status = "okay"; 9473c4278eaSJonas Karlman}; 9483c4278eaSJonas Karlman 9493c4278eaSJonas Karlman&vp0 { 9503c4278eaSJonas Karlman vp0_out_hdmi0: endpoint@ROCKCHIP_VOP2_EP_HDMI0 { 9513c4278eaSJonas Karlman reg = <ROCKCHIP_VOP2_EP_HDMI0>; 9523c4278eaSJonas Karlman remote-endpoint = <&hdmi0_in_vp0>; 9533c4278eaSJonas Karlman }; 9543c4278eaSJonas Karlman}; 955