101950c46SEmmanuel Vadot// SPDX-License-Identifier: (GPL-2.0+ OR MIT) 201950c46SEmmanuel Vadot/* 301950c46SEmmanuel Vadot * Copyright (c) 2021 Rockchip Electronics Co., Ltd. 401950c46SEmmanuel Vadot * Copyright (c) 2024 Uwe Kleine-König 501950c46SEmmanuel Vadot */ 601950c46SEmmanuel Vadot 701950c46SEmmanuel Vadot/dts-v1/; 801950c46SEmmanuel Vadot 9*b2d2a78aSEmmanuel Vadot#include <dt-bindings/input/input.h> 10*b2d2a78aSEmmanuel Vadot#include <dt-bindings/leds/common.h> 1101950c46SEmmanuel Vadot#include <dt-bindings/gpio/gpio.h> 1201950c46SEmmanuel Vadot#include "rk3568.dtsi" 1301950c46SEmmanuel Vadot 1401950c46SEmmanuel Vadot/ { 1501950c46SEmmanuel Vadot model = "Qnap TS-433-4G NAS System 4-Bay"; 1601950c46SEmmanuel Vadot compatible = "qnap,ts433", "rockchip,rk3568"; 17*b2d2a78aSEmmanuel Vadot 18*b2d2a78aSEmmanuel Vadot aliases { 19*b2d2a78aSEmmanuel Vadot ethernet0 = &gmac0; 20*b2d2a78aSEmmanuel Vadot mmc0 = &sdhci; 21*b2d2a78aSEmmanuel Vadot rtc0 = &rtc_rv8263; 22*b2d2a78aSEmmanuel Vadot }; 23*b2d2a78aSEmmanuel Vadot 24*b2d2a78aSEmmanuel Vadot chosen { 25*b2d2a78aSEmmanuel Vadot stdout-path = "serial2:115200n8"; 26*b2d2a78aSEmmanuel Vadot }; 27*b2d2a78aSEmmanuel Vadot 28*b2d2a78aSEmmanuel Vadot keys { 29*b2d2a78aSEmmanuel Vadot compatible = "gpio-keys"; 30*b2d2a78aSEmmanuel Vadot pinctrl-0 = <©_button_pin>, <&reset_button_pin>; 31*b2d2a78aSEmmanuel Vadot pinctrl-names = "default"; 32*b2d2a78aSEmmanuel Vadot 33*b2d2a78aSEmmanuel Vadot key-copy { 34*b2d2a78aSEmmanuel Vadot label = "copy"; 35*b2d2a78aSEmmanuel Vadot gpios = <&gpio0 RK_PB6 GPIO_ACTIVE_LOW>; 36*b2d2a78aSEmmanuel Vadot linux,code = <KEY_COPY>; 37*b2d2a78aSEmmanuel Vadot }; 38*b2d2a78aSEmmanuel Vadot 39*b2d2a78aSEmmanuel Vadot key-reset { 40*b2d2a78aSEmmanuel Vadot label = "reset"; 41*b2d2a78aSEmmanuel Vadot gpios = <&gpio0 RK_PB5 GPIO_ACTIVE_LOW>; 42*b2d2a78aSEmmanuel Vadot linux,code = <KEY_RESTART>; 43*b2d2a78aSEmmanuel Vadot }; 44*b2d2a78aSEmmanuel Vadot }; 45*b2d2a78aSEmmanuel Vadot 46*b2d2a78aSEmmanuel Vadot leds { 47*b2d2a78aSEmmanuel Vadot compatible = "gpio-leds"; 48*b2d2a78aSEmmanuel Vadot 49*b2d2a78aSEmmanuel Vadot led-0 { 50*b2d2a78aSEmmanuel Vadot color = <LED_COLOR_ID_GREEN>; 51*b2d2a78aSEmmanuel Vadot function = LED_FUNCTION_DISK; 52*b2d2a78aSEmmanuel Vadot gpios = <&gpio1 RK_PD5 GPIO_ACTIVE_LOW>; 53*b2d2a78aSEmmanuel Vadot linux,default-trigger = "disk-activity"; 54*b2d2a78aSEmmanuel Vadot pinctrl-names = "default"; 55*b2d2a78aSEmmanuel Vadot pinctrl-0 = <&hdd1_led_pin>; 56*b2d2a78aSEmmanuel Vadot }; 57*b2d2a78aSEmmanuel Vadot 58*b2d2a78aSEmmanuel Vadot led-1 { 59*b2d2a78aSEmmanuel Vadot color = <LED_COLOR_ID_GREEN>; 60*b2d2a78aSEmmanuel Vadot function = LED_FUNCTION_DISK; 61*b2d2a78aSEmmanuel Vadot gpios = <&gpio1 RK_PD6 GPIO_ACTIVE_LOW>; 62*b2d2a78aSEmmanuel Vadot linux,default-trigger = "disk-activity"; 63*b2d2a78aSEmmanuel Vadot pinctrl-names = "default"; 64*b2d2a78aSEmmanuel Vadot pinctrl-0 = <&hdd2_led_pin>; 65*b2d2a78aSEmmanuel Vadot }; 66*b2d2a78aSEmmanuel Vadot 67*b2d2a78aSEmmanuel Vadot led-2 { 68*b2d2a78aSEmmanuel Vadot color = <LED_COLOR_ID_GREEN>; 69*b2d2a78aSEmmanuel Vadot function = LED_FUNCTION_DISK; 70*b2d2a78aSEmmanuel Vadot gpios = <&gpio1 RK_PD7 GPIO_ACTIVE_LOW>; 71*b2d2a78aSEmmanuel Vadot linux,default-trigger = "disk-activity"; 72*b2d2a78aSEmmanuel Vadot pinctrl-names = "default"; 73*b2d2a78aSEmmanuel Vadot pinctrl-0 = <&hdd3_led_pin>; 74*b2d2a78aSEmmanuel Vadot }; 75*b2d2a78aSEmmanuel Vadot 76*b2d2a78aSEmmanuel Vadot led-3 { 77*b2d2a78aSEmmanuel Vadot color = <LED_COLOR_ID_GREEN>; 78*b2d2a78aSEmmanuel Vadot function = LED_FUNCTION_DISK; 79*b2d2a78aSEmmanuel Vadot gpios = <&gpio2 RK_PA0 GPIO_ACTIVE_LOW>; 80*b2d2a78aSEmmanuel Vadot linux,default-trigger = "disk-activity"; 81*b2d2a78aSEmmanuel Vadot pinctrl-names = "default"; 82*b2d2a78aSEmmanuel Vadot pinctrl-0 = <&hdd4_led_pin>; 83*b2d2a78aSEmmanuel Vadot }; 84*b2d2a78aSEmmanuel Vadot }; 85*b2d2a78aSEmmanuel Vadot 86*b2d2a78aSEmmanuel Vadot dc_12v: regulator-dc-12v { 87*b2d2a78aSEmmanuel Vadot compatible = "regulator-fixed"; 88*b2d2a78aSEmmanuel Vadot regulator-name = "dc_12v"; 89*b2d2a78aSEmmanuel Vadot regulator-always-on; 90*b2d2a78aSEmmanuel Vadot regulator-boot-on; 91*b2d2a78aSEmmanuel Vadot regulator-min-microvolt = <12000000>; 92*b2d2a78aSEmmanuel Vadot regulator-max-microvolt = <12000000>; 93*b2d2a78aSEmmanuel Vadot }; 94*b2d2a78aSEmmanuel Vadot 95*b2d2a78aSEmmanuel Vadot vcc3v3_pcie: regulator-vcc3v3-pcie { 96*b2d2a78aSEmmanuel Vadot compatible = "regulator-fixed"; 97*b2d2a78aSEmmanuel Vadot regulator-name = "vcc3v3_pcie"; 98*b2d2a78aSEmmanuel Vadot regulator-min-microvolt = <3300000>; 99*b2d2a78aSEmmanuel Vadot regulator-max-microvolt = <3300000>; 100*b2d2a78aSEmmanuel Vadot enable-active-high; 101*b2d2a78aSEmmanuel Vadot gpios = <&gpio0 RK_PD4 GPIO_ACTIVE_HIGH>; 102*b2d2a78aSEmmanuel Vadot vin-supply = <&dc_12v>; 103*b2d2a78aSEmmanuel Vadot }; 104*b2d2a78aSEmmanuel Vadot 105*b2d2a78aSEmmanuel Vadot vcc3v3_sys: regulator-vcc3v3-sys { 106*b2d2a78aSEmmanuel Vadot compatible = "regulator-fixed"; 107*b2d2a78aSEmmanuel Vadot regulator-name = "vcc3v3_sys"; 108*b2d2a78aSEmmanuel Vadot regulator-always-on; 109*b2d2a78aSEmmanuel Vadot regulator-boot-on; 110*b2d2a78aSEmmanuel Vadot regulator-min-microvolt = <3300000>; 111*b2d2a78aSEmmanuel Vadot regulator-max-microvolt = <3300000>; 112*b2d2a78aSEmmanuel Vadot vin-supply = <&dc_12v>; 113*b2d2a78aSEmmanuel Vadot }; 114*b2d2a78aSEmmanuel Vadot 115*b2d2a78aSEmmanuel Vadot vcc5v0_host: regulator-vcc5v0-host { 116*b2d2a78aSEmmanuel Vadot compatible = "regulator-fixed"; 117*b2d2a78aSEmmanuel Vadot enable-active-high; 118*b2d2a78aSEmmanuel Vadot pinctrl-names = "default"; 119*b2d2a78aSEmmanuel Vadot pinctrl-0 = <&vcc5v0_host_en>; 120*b2d2a78aSEmmanuel Vadot gpio = <&gpio0 RK_PA6 GPIO_ACTIVE_HIGH>; 121*b2d2a78aSEmmanuel Vadot regulator-name = "vcc5v0_host"; 122*b2d2a78aSEmmanuel Vadot regulator-always-on; 123*b2d2a78aSEmmanuel Vadot regulator-boot-on; 124*b2d2a78aSEmmanuel Vadot regulator-min-microvolt = <5000000>; 125*b2d2a78aSEmmanuel Vadot regulator-max-microvolt = <5000000>; 126*b2d2a78aSEmmanuel Vadot vin-supply = <&vcc5v0_usb>; 127*b2d2a78aSEmmanuel Vadot }; 128*b2d2a78aSEmmanuel Vadot 129*b2d2a78aSEmmanuel Vadot vcc5v0_otg: regulator-vcc5v0-otg { 130*b2d2a78aSEmmanuel Vadot compatible = "regulator-fixed"; 131*b2d2a78aSEmmanuel Vadot enable-active-high; 132*b2d2a78aSEmmanuel Vadot gpio = <&gpio0 RK_PA5 GPIO_ACTIVE_HIGH>; 133*b2d2a78aSEmmanuel Vadot pinctrl-names = "default"; 134*b2d2a78aSEmmanuel Vadot pinctrl-0 = <&vcc5v0_otg_en>; 135*b2d2a78aSEmmanuel Vadot regulator-name = "vcc5v0_otg"; 136*b2d2a78aSEmmanuel Vadot regulator-always-on; 137*b2d2a78aSEmmanuel Vadot regulator-boot-on; 138*b2d2a78aSEmmanuel Vadot regulator-min-microvolt = <5000000>; 139*b2d2a78aSEmmanuel Vadot regulator-max-microvolt = <5000000>; 140*b2d2a78aSEmmanuel Vadot vin-supply = <&vcc5v0_usb>; 141*b2d2a78aSEmmanuel Vadot }; 142*b2d2a78aSEmmanuel Vadot 143*b2d2a78aSEmmanuel Vadot vcc5v0_sys: regulator-vcc5v0-sys { 144*b2d2a78aSEmmanuel Vadot compatible = "regulator-fixed"; 145*b2d2a78aSEmmanuel Vadot regulator-name = "vcc5v0_sys"; 146*b2d2a78aSEmmanuel Vadot regulator-always-on; 147*b2d2a78aSEmmanuel Vadot regulator-boot-on; 148*b2d2a78aSEmmanuel Vadot regulator-min-microvolt = <5000000>; 149*b2d2a78aSEmmanuel Vadot regulator-max-microvolt = <5000000>; 150*b2d2a78aSEmmanuel Vadot vin-supply = <&dc_12v>; 151*b2d2a78aSEmmanuel Vadot }; 152*b2d2a78aSEmmanuel Vadot 153*b2d2a78aSEmmanuel Vadot vcc5v0_usb: regulator-vcc5v0-usb { 154*b2d2a78aSEmmanuel Vadot compatible = "regulator-fixed"; 155*b2d2a78aSEmmanuel Vadot regulator-name = "vcc5v0_usb"; 156*b2d2a78aSEmmanuel Vadot regulator-always-on; 157*b2d2a78aSEmmanuel Vadot regulator-boot-on; 158*b2d2a78aSEmmanuel Vadot regulator-min-microvolt = <5000000>; 159*b2d2a78aSEmmanuel Vadot regulator-max-microvolt = <5000000>; 160*b2d2a78aSEmmanuel Vadot vin-supply = <&dc_12v>; 161*b2d2a78aSEmmanuel Vadot }; 162*b2d2a78aSEmmanuel Vadot}; 163*b2d2a78aSEmmanuel Vadot 164*b2d2a78aSEmmanuel Vadot/* connected to usb_host0_xhci */ 165*b2d2a78aSEmmanuel Vadot&combphy0 { 166*b2d2a78aSEmmanuel Vadot status = "okay"; 167*b2d2a78aSEmmanuel Vadot}; 168*b2d2a78aSEmmanuel Vadot 169*b2d2a78aSEmmanuel Vadot/* connected to sata1 */ 170*b2d2a78aSEmmanuel Vadot&combphy1 { 171*b2d2a78aSEmmanuel Vadot status = "okay"; 172*b2d2a78aSEmmanuel Vadot}; 173*b2d2a78aSEmmanuel Vadot 174*b2d2a78aSEmmanuel Vadot/* connected to sata2 */ 175*b2d2a78aSEmmanuel Vadot&combphy2 { 176*b2d2a78aSEmmanuel Vadot status = "okay"; 177*b2d2a78aSEmmanuel Vadot}; 178*b2d2a78aSEmmanuel Vadot 179*b2d2a78aSEmmanuel Vadot&cpu0 { 180*b2d2a78aSEmmanuel Vadot cpu-supply = <&vdd_cpu>; 181*b2d2a78aSEmmanuel Vadot}; 182*b2d2a78aSEmmanuel Vadot 183*b2d2a78aSEmmanuel Vadot&cpu1 { 184*b2d2a78aSEmmanuel Vadot cpu-supply = <&vdd_cpu>; 185*b2d2a78aSEmmanuel Vadot}; 186*b2d2a78aSEmmanuel Vadot 187*b2d2a78aSEmmanuel Vadot&cpu2 { 188*b2d2a78aSEmmanuel Vadot cpu-supply = <&vdd_cpu>; 189*b2d2a78aSEmmanuel Vadot}; 190*b2d2a78aSEmmanuel Vadot 191*b2d2a78aSEmmanuel Vadot&cpu3 { 192*b2d2a78aSEmmanuel Vadot cpu-supply = <&vdd_cpu>; 19301950c46SEmmanuel Vadot}; 19401950c46SEmmanuel Vadot 19501950c46SEmmanuel Vadot&gmac0 { 19601950c46SEmmanuel Vadot assigned-clocks = <&cru SCLK_GMAC0_RX_TX>, <&cru SCLK_GMAC0>; 19701950c46SEmmanuel Vadot assigned-clock-parents = <&cru SCLK_GMAC0_RGMII_SPEED>, <&cru CLK_MAC0_2TOP>; 19801950c46SEmmanuel Vadot assigned-clock-rates = <0>, <125000000>; 19901950c46SEmmanuel Vadot clock_in_out = "output"; 20001950c46SEmmanuel Vadot phy-handle = <&rgmii_phy0>; 201*b2d2a78aSEmmanuel Vadot phy-mode = "rgmii-id"; 20201950c46SEmmanuel Vadot pinctrl-names = "default"; 20301950c46SEmmanuel Vadot pinctrl-0 = <&gmac0_miim 20401950c46SEmmanuel Vadot &gmac0_tx_bus2 20501950c46SEmmanuel Vadot &gmac0_rx_bus2 20601950c46SEmmanuel Vadot &gmac0_rgmii_clk 20701950c46SEmmanuel Vadot &gmac0_rgmii_bus>; 208*b2d2a78aSEmmanuel Vadot status = "okay"; 209*b2d2a78aSEmmanuel Vadot}; 210*b2d2a78aSEmmanuel Vadot 211*b2d2a78aSEmmanuel Vadot&gpu { 212*b2d2a78aSEmmanuel Vadot mali-supply = <&vdd_gpu>; 21301950c46SEmmanuel Vadot status = "okay"; 21401950c46SEmmanuel Vadot}; 21501950c46SEmmanuel Vadot 21601950c46SEmmanuel Vadot&i2c0 { 217*b2d2a78aSEmmanuel Vadot status = "okay"; 218*b2d2a78aSEmmanuel Vadot 21901950c46SEmmanuel Vadot pmic@20 { 22001950c46SEmmanuel Vadot compatible = "rockchip,rk809"; 22101950c46SEmmanuel Vadot reg = <0x20>; 22201950c46SEmmanuel Vadot interrupt-parent = <&gpio0>; 223*b2d2a78aSEmmanuel Vadot interrupts = <RK_PA3 IRQ_TYPE_LEVEL_LOW>; 224*b2d2a78aSEmmanuel Vadot #clock-cells = <1>; 225*b2d2a78aSEmmanuel Vadot pinctrl-names = "default"; 226*b2d2a78aSEmmanuel Vadot pinctrl-0 = <&pmic_int_l>; 227*b2d2a78aSEmmanuel Vadot system-power-controller; 228*b2d2a78aSEmmanuel Vadot vcc1-supply = <&vcc3v3_sys>; 229*b2d2a78aSEmmanuel Vadot vcc2-supply = <&vcc3v3_sys>; 230*b2d2a78aSEmmanuel Vadot vcc3-supply = <&vcc3v3_sys>; 231*b2d2a78aSEmmanuel Vadot vcc4-supply = <&vcc3v3_sys>; 232*b2d2a78aSEmmanuel Vadot vcc5-supply = <&vcc3v3_sys>; 233*b2d2a78aSEmmanuel Vadot vcc6-supply = <&vcc3v3_sys>; 234*b2d2a78aSEmmanuel Vadot vcc7-supply = <&vcc3v3_sys>; 235*b2d2a78aSEmmanuel Vadot vcc8-supply = <&vcc3v3_sys>; 236*b2d2a78aSEmmanuel Vadot vcc9-supply = <&vcc3v3_sys>; 237*b2d2a78aSEmmanuel Vadot wakeup-source; 238*b2d2a78aSEmmanuel Vadot 239*b2d2a78aSEmmanuel Vadot regulators { 240*b2d2a78aSEmmanuel Vadot vdd_logic: DCDC_REG1 { 241*b2d2a78aSEmmanuel Vadot regulator-name = "vdd_logic"; 242*b2d2a78aSEmmanuel Vadot regulator-always-on; 243*b2d2a78aSEmmanuel Vadot regulator-boot-on; 244*b2d2a78aSEmmanuel Vadot regulator-initial-mode = <0x2>; 245*b2d2a78aSEmmanuel Vadot regulator-min-microvolt = <500000>; 246*b2d2a78aSEmmanuel Vadot regulator-max-microvolt = <1350000>; 247*b2d2a78aSEmmanuel Vadot regulator-ramp-delay = <6001>; 248*b2d2a78aSEmmanuel Vadot 249*b2d2a78aSEmmanuel Vadot regulator-state-mem { 250*b2d2a78aSEmmanuel Vadot regulator-off-in-suspend; 251*b2d2a78aSEmmanuel Vadot }; 252*b2d2a78aSEmmanuel Vadot }; 253*b2d2a78aSEmmanuel Vadot 254*b2d2a78aSEmmanuel Vadot vdd_gpu: DCDC_REG2 { 255*b2d2a78aSEmmanuel Vadot regulator-name = "vdd_gpu"; 256*b2d2a78aSEmmanuel Vadot regulator-always-on; 257*b2d2a78aSEmmanuel Vadot regulator-initial-mode = <0x2>; 258*b2d2a78aSEmmanuel Vadot regulator-min-microvolt = <500000>; 259*b2d2a78aSEmmanuel Vadot regulator-max-microvolt = <1350000>; 260*b2d2a78aSEmmanuel Vadot regulator-ramp-delay = <6001>; 261*b2d2a78aSEmmanuel Vadot 262*b2d2a78aSEmmanuel Vadot regulator-state-mem { 263*b2d2a78aSEmmanuel Vadot regulator-off-in-suspend; 264*b2d2a78aSEmmanuel Vadot }; 265*b2d2a78aSEmmanuel Vadot }; 266*b2d2a78aSEmmanuel Vadot 267*b2d2a78aSEmmanuel Vadot vcc_ddr: DCDC_REG3 { 268*b2d2a78aSEmmanuel Vadot regulator-name = "vcc_ddr"; 269*b2d2a78aSEmmanuel Vadot regulator-always-on; 270*b2d2a78aSEmmanuel Vadot regulator-boot-on; 271*b2d2a78aSEmmanuel Vadot regulator-initial-mode = <0x2>; 272*b2d2a78aSEmmanuel Vadot 273*b2d2a78aSEmmanuel Vadot regulator-state-mem { 274*b2d2a78aSEmmanuel Vadot regulator-on-in-suspend; 275*b2d2a78aSEmmanuel Vadot }; 276*b2d2a78aSEmmanuel Vadot }; 277*b2d2a78aSEmmanuel Vadot 278*b2d2a78aSEmmanuel Vadot vdd_npu: DCDC_REG4 { 279*b2d2a78aSEmmanuel Vadot regulator-name = "vdd_npu"; 280*b2d2a78aSEmmanuel Vadot regulator-initial-mode = <0x2>; 281*b2d2a78aSEmmanuel Vadot regulator-min-microvolt = <500000>; 282*b2d2a78aSEmmanuel Vadot regulator-max-microvolt = <1350000>; 283*b2d2a78aSEmmanuel Vadot regulator-ramp-delay = <6001>; 284*b2d2a78aSEmmanuel Vadot 285*b2d2a78aSEmmanuel Vadot regulator-state-mem { 286*b2d2a78aSEmmanuel Vadot regulator-off-in-suspend; 287*b2d2a78aSEmmanuel Vadot }; 288*b2d2a78aSEmmanuel Vadot }; 289*b2d2a78aSEmmanuel Vadot 290*b2d2a78aSEmmanuel Vadot vcc_1v8: DCDC_REG5 { 291*b2d2a78aSEmmanuel Vadot regulator-name = "vcc_1v8"; 292*b2d2a78aSEmmanuel Vadot regulator-always-on; 293*b2d2a78aSEmmanuel Vadot regulator-boot-on; 294*b2d2a78aSEmmanuel Vadot regulator-min-microvolt = <1800000>; 295*b2d2a78aSEmmanuel Vadot regulator-max-microvolt = <1800000>; 296*b2d2a78aSEmmanuel Vadot 297*b2d2a78aSEmmanuel Vadot regulator-state-mem { 298*b2d2a78aSEmmanuel Vadot regulator-off-in-suspend; 299*b2d2a78aSEmmanuel Vadot }; 300*b2d2a78aSEmmanuel Vadot }; 301*b2d2a78aSEmmanuel Vadot 302*b2d2a78aSEmmanuel Vadot vdda0v9_image: LDO_REG1 { 303*b2d2a78aSEmmanuel Vadot regulator-name = "vdda0v9_image"; 304*b2d2a78aSEmmanuel Vadot regulator-always-on; 305*b2d2a78aSEmmanuel Vadot regulator-min-microvolt = <900000>; 306*b2d2a78aSEmmanuel Vadot regulator-max-microvolt = <900000>; 307*b2d2a78aSEmmanuel Vadot 308*b2d2a78aSEmmanuel Vadot regulator-state-mem { 309*b2d2a78aSEmmanuel Vadot regulator-off-in-suspend; 310*b2d2a78aSEmmanuel Vadot }; 311*b2d2a78aSEmmanuel Vadot }; 312*b2d2a78aSEmmanuel Vadot 313*b2d2a78aSEmmanuel Vadot vdda_0v9: LDO_REG2 { 314*b2d2a78aSEmmanuel Vadot regulator-name = "vdda_0v9"; 315*b2d2a78aSEmmanuel Vadot regulator-always-on; 316*b2d2a78aSEmmanuel Vadot regulator-boot-on; 317*b2d2a78aSEmmanuel Vadot regulator-min-microvolt = <900000>; 318*b2d2a78aSEmmanuel Vadot regulator-max-microvolt = <900000>; 319*b2d2a78aSEmmanuel Vadot 320*b2d2a78aSEmmanuel Vadot regulator-state-mem { 321*b2d2a78aSEmmanuel Vadot regulator-off-in-suspend; 322*b2d2a78aSEmmanuel Vadot }; 323*b2d2a78aSEmmanuel Vadot }; 324*b2d2a78aSEmmanuel Vadot 325*b2d2a78aSEmmanuel Vadot vdda0v9_pmu: LDO_REG3 { 326*b2d2a78aSEmmanuel Vadot regulator-name = "vdda0v9_pmu"; 327*b2d2a78aSEmmanuel Vadot regulator-always-on; 328*b2d2a78aSEmmanuel Vadot regulator-boot-on; 329*b2d2a78aSEmmanuel Vadot regulator-min-microvolt = <900000>; 330*b2d2a78aSEmmanuel Vadot regulator-max-microvolt = <900000>; 331*b2d2a78aSEmmanuel Vadot 332*b2d2a78aSEmmanuel Vadot regulator-state-mem { 333*b2d2a78aSEmmanuel Vadot regulator-on-in-suspend; 334*b2d2a78aSEmmanuel Vadot regulator-suspend-microvolt = <900000>; 335*b2d2a78aSEmmanuel Vadot }; 336*b2d2a78aSEmmanuel Vadot }; 337*b2d2a78aSEmmanuel Vadot 338*b2d2a78aSEmmanuel Vadot vccio_acodec: LDO_REG4 { 339*b2d2a78aSEmmanuel Vadot regulator-name = "vccio_acodec"; 340*b2d2a78aSEmmanuel Vadot regulator-always-on; 341*b2d2a78aSEmmanuel Vadot regulator-boot-on; 342*b2d2a78aSEmmanuel Vadot regulator-min-microvolt = <3300000>; 343*b2d2a78aSEmmanuel Vadot regulator-max-microvolt = <3300000>; 344*b2d2a78aSEmmanuel Vadot 345*b2d2a78aSEmmanuel Vadot regulator-state-mem { 346*b2d2a78aSEmmanuel Vadot regulator-off-in-suspend; 347*b2d2a78aSEmmanuel Vadot }; 348*b2d2a78aSEmmanuel Vadot }; 349*b2d2a78aSEmmanuel Vadot 350*b2d2a78aSEmmanuel Vadot vccio_sd: LDO_REG5 { 351*b2d2a78aSEmmanuel Vadot regulator-name = "vccio_sd"; 352*b2d2a78aSEmmanuel Vadot regulator-min-microvolt = <1800000>; 353*b2d2a78aSEmmanuel Vadot regulator-max-microvolt = <3300000>; 354*b2d2a78aSEmmanuel Vadot 355*b2d2a78aSEmmanuel Vadot regulator-state-mem { 356*b2d2a78aSEmmanuel Vadot regulator-off-in-suspend; 357*b2d2a78aSEmmanuel Vadot }; 358*b2d2a78aSEmmanuel Vadot }; 359*b2d2a78aSEmmanuel Vadot 360*b2d2a78aSEmmanuel Vadot vcc3v3_pmu: LDO_REG6 { 361*b2d2a78aSEmmanuel Vadot regulator-name = "vcc3v3_pmu"; 362*b2d2a78aSEmmanuel Vadot regulator-always-on; 363*b2d2a78aSEmmanuel Vadot regulator-boot-on; 364*b2d2a78aSEmmanuel Vadot regulator-min-microvolt = <3300000>; 365*b2d2a78aSEmmanuel Vadot regulator-max-microvolt = <3300000>; 366*b2d2a78aSEmmanuel Vadot 367*b2d2a78aSEmmanuel Vadot regulator-state-mem { 368*b2d2a78aSEmmanuel Vadot regulator-on-in-suspend; 369*b2d2a78aSEmmanuel Vadot regulator-suspend-microvolt = <3300000>; 370*b2d2a78aSEmmanuel Vadot }; 371*b2d2a78aSEmmanuel Vadot }; 372*b2d2a78aSEmmanuel Vadot 373*b2d2a78aSEmmanuel Vadot vcca_1v8: LDO_REG7 { 374*b2d2a78aSEmmanuel Vadot regulator-name = "vcca_1v8"; 375*b2d2a78aSEmmanuel Vadot regulator-always-on; 376*b2d2a78aSEmmanuel Vadot regulator-boot-on; 377*b2d2a78aSEmmanuel Vadot regulator-min-microvolt = <1800000>; 378*b2d2a78aSEmmanuel Vadot regulator-max-microvolt = <1800000>; 379*b2d2a78aSEmmanuel Vadot 380*b2d2a78aSEmmanuel Vadot regulator-state-mem { 381*b2d2a78aSEmmanuel Vadot regulator-off-in-suspend; 382*b2d2a78aSEmmanuel Vadot }; 383*b2d2a78aSEmmanuel Vadot }; 384*b2d2a78aSEmmanuel Vadot 385*b2d2a78aSEmmanuel Vadot vcca1v8_pmu: LDO_REG8 { 386*b2d2a78aSEmmanuel Vadot regulator-name = "vcca1v8_pmu"; 387*b2d2a78aSEmmanuel Vadot regulator-always-on; 388*b2d2a78aSEmmanuel Vadot regulator-boot-on; 389*b2d2a78aSEmmanuel Vadot regulator-min-microvolt = <1800000>; 390*b2d2a78aSEmmanuel Vadot regulator-max-microvolt = <1800000>; 391*b2d2a78aSEmmanuel Vadot 392*b2d2a78aSEmmanuel Vadot regulator-state-mem { 393*b2d2a78aSEmmanuel Vadot regulator-on-in-suspend; 394*b2d2a78aSEmmanuel Vadot regulator-suspend-microvolt = <1800000>; 395*b2d2a78aSEmmanuel Vadot }; 396*b2d2a78aSEmmanuel Vadot }; 397*b2d2a78aSEmmanuel Vadot 398*b2d2a78aSEmmanuel Vadot vcca1v8_image: LDO_REG9 { 399*b2d2a78aSEmmanuel Vadot regulator-name = "vcca1v8_image"; 400*b2d2a78aSEmmanuel Vadot regulator-always-on; 401*b2d2a78aSEmmanuel Vadot regulator-min-microvolt = <1800000>; 402*b2d2a78aSEmmanuel Vadot regulator-max-microvolt = <1800000>; 403*b2d2a78aSEmmanuel Vadot 404*b2d2a78aSEmmanuel Vadot regulator-state-mem { 405*b2d2a78aSEmmanuel Vadot regulator-off-in-suspend; 406*b2d2a78aSEmmanuel Vadot }; 407*b2d2a78aSEmmanuel Vadot }; 408*b2d2a78aSEmmanuel Vadot 409*b2d2a78aSEmmanuel Vadot vcc_3v3: SWITCH_REG1 { 410*b2d2a78aSEmmanuel Vadot regulator-name = "vcc_3v3"; 411*b2d2a78aSEmmanuel Vadot regulator-always-on; 412*b2d2a78aSEmmanuel Vadot regulator-boot-on; 413*b2d2a78aSEmmanuel Vadot 414*b2d2a78aSEmmanuel Vadot regulator-state-mem { 415*b2d2a78aSEmmanuel Vadot regulator-off-in-suspend; 416*b2d2a78aSEmmanuel Vadot }; 417*b2d2a78aSEmmanuel Vadot }; 418*b2d2a78aSEmmanuel Vadot 419*b2d2a78aSEmmanuel Vadot vcc3v3_sd: SWITCH_REG2 { 420*b2d2a78aSEmmanuel Vadot regulator-name = "vcc3v3_sd"; 421*b2d2a78aSEmmanuel Vadot /* 422*b2d2a78aSEmmanuel Vadot * turning this off, breaks access to both 423*b2d2a78aSEmmanuel Vadot * PCIe controllers, refclk generator perhaps 424*b2d2a78aSEmmanuel Vadot */ 425*b2d2a78aSEmmanuel Vadot regulator-always-on; 426*b2d2a78aSEmmanuel Vadot regulator-boot-on; 427*b2d2a78aSEmmanuel Vadot 428*b2d2a78aSEmmanuel Vadot regulator-state-mem { 429*b2d2a78aSEmmanuel Vadot regulator-off-in-suspend; 430*b2d2a78aSEmmanuel Vadot }; 431*b2d2a78aSEmmanuel Vadot }; 432*b2d2a78aSEmmanuel Vadot }; 433*b2d2a78aSEmmanuel Vadot }; 434*b2d2a78aSEmmanuel Vadot 435*b2d2a78aSEmmanuel Vadot vdd_cpu: regulator@40 { 436*b2d2a78aSEmmanuel Vadot compatible = "silergy,syr827"; 437*b2d2a78aSEmmanuel Vadot reg = <0x40>; 438*b2d2a78aSEmmanuel Vadot fcs,suspend-voltage-selector = <1>; 439*b2d2a78aSEmmanuel Vadot regulator-name = "vdd_cpu"; 440*b2d2a78aSEmmanuel Vadot regulator-always-on; 441*b2d2a78aSEmmanuel Vadot regulator-boot-on; 442*b2d2a78aSEmmanuel Vadot regulator-min-microvolt = <712500>; 443*b2d2a78aSEmmanuel Vadot regulator-max-microvolt = <1390000>; 444*b2d2a78aSEmmanuel Vadot regulator-ramp-delay = <2300>; 445*b2d2a78aSEmmanuel Vadot vin-supply = <&vcc5v0_sys>; 44601950c46SEmmanuel Vadot }; 44701950c46SEmmanuel Vadot}; 44801950c46SEmmanuel Vadot 44901950c46SEmmanuel Vadot&i2c1 { 45001950c46SEmmanuel Vadot status = "okay"; 45101950c46SEmmanuel Vadot 452*b2d2a78aSEmmanuel Vadot rtc_rv8263: rtc@51 { 45301950c46SEmmanuel Vadot compatible = "microcrystal,rv8263"; 45401950c46SEmmanuel Vadot reg = <0x51>; 45501950c46SEmmanuel Vadot wakeup-source; 45601950c46SEmmanuel Vadot }; 457*b2d2a78aSEmmanuel Vadot 458*b2d2a78aSEmmanuel Vadot /* eeprom for vital-product-data on the mainboard */ 459*b2d2a78aSEmmanuel Vadot eeprom@54 { 460*b2d2a78aSEmmanuel Vadot compatible = "giantec,gt24c04a", "atmel,24c04"; 461*b2d2a78aSEmmanuel Vadot reg = <0x54>; 462*b2d2a78aSEmmanuel Vadot label = "VPD_MB"; 463*b2d2a78aSEmmanuel Vadot num-addresses = <2>; 464*b2d2a78aSEmmanuel Vadot pagesize = <16>; 465*b2d2a78aSEmmanuel Vadot read-only; 466*b2d2a78aSEmmanuel Vadot }; 467*b2d2a78aSEmmanuel Vadot 468*b2d2a78aSEmmanuel Vadot /* eeprom for vital-product-data on the backplane */ 469*b2d2a78aSEmmanuel Vadot eeprom@56 { 470*b2d2a78aSEmmanuel Vadot compatible = "giantec,gt24c04a", "atmel,24c04"; 471*b2d2a78aSEmmanuel Vadot reg = <0x56>; 472*b2d2a78aSEmmanuel Vadot label = "VPD_BP"; 473*b2d2a78aSEmmanuel Vadot num-addresses = <2>; 474*b2d2a78aSEmmanuel Vadot pagesize = <16>; 475*b2d2a78aSEmmanuel Vadot read-only; 476*b2d2a78aSEmmanuel Vadot }; 47701950c46SEmmanuel Vadot}; 47801950c46SEmmanuel Vadot 47901950c46SEmmanuel Vadot&mdio0 { 48001950c46SEmmanuel Vadot rgmii_phy0: ethernet-phy@0 { 48101950c46SEmmanuel Vadot compatible = "ethernet-phy-ieee802.3-c22"; 48201950c46SEmmanuel Vadot reg = <0x0>; 48301950c46SEmmanuel Vadot }; 48401950c46SEmmanuel Vadot}; 48501950c46SEmmanuel Vadot 48601950c46SEmmanuel Vadot&pcie30phy { 487*b2d2a78aSEmmanuel Vadot data-lanes = <1 2>; 48801950c46SEmmanuel Vadot status = "okay"; 48901950c46SEmmanuel Vadot}; 49001950c46SEmmanuel Vadot 491*b2d2a78aSEmmanuel Vadot/* Connected to a JMicron AHCI SATA controller */ 49201950c46SEmmanuel Vadot&pcie3x1 { 49301950c46SEmmanuel Vadot reset-gpios = <&gpio0 RK_PC7 GPIO_ACTIVE_HIGH>; 494*b2d2a78aSEmmanuel Vadot vpcie3v3-supply = <&vcc3v3_pcie>; 495*b2d2a78aSEmmanuel Vadot status = "okay"; 496*b2d2a78aSEmmanuel Vadot}; 497*b2d2a78aSEmmanuel Vadot 498*b2d2a78aSEmmanuel Vadot/* Connected to the 2.5G NIC for the upper network jack */ 499*b2d2a78aSEmmanuel Vadot&pcie3x2 { 500*b2d2a78aSEmmanuel Vadot num-lanes = <1>; 501*b2d2a78aSEmmanuel Vadot reset-gpios = <&gpio2 RK_PD6 GPIO_ACTIVE_HIGH>; 502*b2d2a78aSEmmanuel Vadot vpcie3v3-supply = <&vcc3v3_pcie>; 503*b2d2a78aSEmmanuel Vadot status = "okay"; 504*b2d2a78aSEmmanuel Vadot}; 505*b2d2a78aSEmmanuel Vadot 506*b2d2a78aSEmmanuel Vadot&pinctrl { 507*b2d2a78aSEmmanuel Vadot keys { 508*b2d2a78aSEmmanuel Vadot copy_button_pin: copy-button-pin { 509*b2d2a78aSEmmanuel Vadot rockchip,pins = <0 RK_PB6 RK_FUNC_GPIO &pcfg_pull_up>; 510*b2d2a78aSEmmanuel Vadot }; 511*b2d2a78aSEmmanuel Vadot 512*b2d2a78aSEmmanuel Vadot reset_button_pin: reset-button-pin { 513*b2d2a78aSEmmanuel Vadot rockchip,pins = <0 RK_PB5 RK_FUNC_GPIO &pcfg_pull_up>; 514*b2d2a78aSEmmanuel Vadot }; 515*b2d2a78aSEmmanuel Vadot }; 516*b2d2a78aSEmmanuel Vadot 517*b2d2a78aSEmmanuel Vadot leds { 518*b2d2a78aSEmmanuel Vadot hdd1_led_pin: hdd1-led-pin { 519*b2d2a78aSEmmanuel Vadot rockchip,pins = <1 RK_PD5 RK_FUNC_GPIO &pcfg_pull_up>; 520*b2d2a78aSEmmanuel Vadot }; 521*b2d2a78aSEmmanuel Vadot 522*b2d2a78aSEmmanuel Vadot hdd2_led_pin: hdd2-led-pin { 523*b2d2a78aSEmmanuel Vadot rockchip,pins = <1 RK_PD6 RK_FUNC_GPIO &pcfg_pull_up>; 524*b2d2a78aSEmmanuel Vadot }; 525*b2d2a78aSEmmanuel Vadot 526*b2d2a78aSEmmanuel Vadot hdd3_led_pin: hdd3-led-pin { 527*b2d2a78aSEmmanuel Vadot rockchip,pins = <1 RK_PD7 RK_FUNC_GPIO &pcfg_pull_up>; 528*b2d2a78aSEmmanuel Vadot }; 529*b2d2a78aSEmmanuel Vadot 530*b2d2a78aSEmmanuel Vadot hdd4_led_pin: hdd4_led-pin { 531*b2d2a78aSEmmanuel Vadot rockchip,pins = <2 RK_PA0 RK_FUNC_GPIO &pcfg_pull_up>; 532*b2d2a78aSEmmanuel Vadot }; 533*b2d2a78aSEmmanuel Vadot }; 534*b2d2a78aSEmmanuel Vadot 535*b2d2a78aSEmmanuel Vadot pmic { 536*b2d2a78aSEmmanuel Vadot pmic_int_l: pmic-int-l { 537*b2d2a78aSEmmanuel Vadot rockchip,pins = <0 RK_PA3 RK_FUNC_GPIO &pcfg_pull_up>; 538*b2d2a78aSEmmanuel Vadot }; 539*b2d2a78aSEmmanuel Vadot }; 540*b2d2a78aSEmmanuel Vadot 541*b2d2a78aSEmmanuel Vadot usb { 542*b2d2a78aSEmmanuel Vadot vcc5v0_host_en: vcc5v0-host-en { 543*b2d2a78aSEmmanuel Vadot rockchip,pins = <0 RK_PA6 RK_FUNC_GPIO &pcfg_pull_none>; 544*b2d2a78aSEmmanuel Vadot }; 545*b2d2a78aSEmmanuel Vadot 546*b2d2a78aSEmmanuel Vadot vcc5v0_otg_en: vcc5v0-otg-en { 547*b2d2a78aSEmmanuel Vadot rockchip,pins = <0 RK_PA5 RK_FUNC_GPIO &pcfg_pull_none>; 548*b2d2a78aSEmmanuel Vadot }; 549*b2d2a78aSEmmanuel Vadot }; 550*b2d2a78aSEmmanuel Vadot}; 551*b2d2a78aSEmmanuel Vadot 552*b2d2a78aSEmmanuel Vadot&pmu_io_domains { 553*b2d2a78aSEmmanuel Vadot vccio4-supply = <&vcc_1v8>; 554*b2d2a78aSEmmanuel Vadot vccio6-supply = <&vcc_1v8>; 555*b2d2a78aSEmmanuel Vadot status = "okay"; 556*b2d2a78aSEmmanuel Vadot}; 557*b2d2a78aSEmmanuel Vadot 558*b2d2a78aSEmmanuel Vadot&sata1 { 559*b2d2a78aSEmmanuel Vadot status = "okay"; 560*b2d2a78aSEmmanuel Vadot}; 561*b2d2a78aSEmmanuel Vadot 562*b2d2a78aSEmmanuel Vadot&sata2 { 56301950c46SEmmanuel Vadot status = "okay"; 56401950c46SEmmanuel Vadot}; 56501950c46SEmmanuel Vadot 56601950c46SEmmanuel Vadot&sdhci { 56701950c46SEmmanuel Vadot bus-width = <8>; 56801950c46SEmmanuel Vadot max-frequency = <200000000>; 56901950c46SEmmanuel Vadot non-removable; 57001950c46SEmmanuel Vadot status = "okay"; 57101950c46SEmmanuel Vadot}; 57201950c46SEmmanuel Vadot 573*b2d2a78aSEmmanuel Vadot&tsadc { 574*b2d2a78aSEmmanuel Vadot rockchip,hw-tshut-mode = <1>; 575*b2d2a78aSEmmanuel Vadot rockchip,hw-tshut-polarity = <0>; 576*b2d2a78aSEmmanuel Vadot status = "okay"; 577*b2d2a78aSEmmanuel Vadot}; 578*b2d2a78aSEmmanuel Vadot 579*b2d2a78aSEmmanuel Vadot/* 580*b2d2a78aSEmmanuel Vadot * Connected to an MCU, that provides access to more LEDs, 581*b2d2a78aSEmmanuel Vadot * buzzer, fan control and more. 582*b2d2a78aSEmmanuel Vadot */ 583*b2d2a78aSEmmanuel Vadot&uart0 { 584*b2d2a78aSEmmanuel Vadot status = "okay"; 585*b2d2a78aSEmmanuel Vadot}; 586*b2d2a78aSEmmanuel Vadot 58701950c46SEmmanuel Vadot/* 58801950c46SEmmanuel Vadot * Pins available on CN3 connector at TTL voltage level (3V3). 58901950c46SEmmanuel Vadot * ,_ _. 59001950c46SEmmanuel Vadot * |1234| 1=TX 2=VCC 59101950c46SEmmanuel Vadot * `----' 3=RX 4=GND 59201950c46SEmmanuel Vadot */ 59301950c46SEmmanuel Vadot&uart2 { 59401950c46SEmmanuel Vadot status = "okay"; 59501950c46SEmmanuel Vadot}; 596*b2d2a78aSEmmanuel Vadot 597*b2d2a78aSEmmanuel Vadot&usb2phy0 { 598*b2d2a78aSEmmanuel Vadot status = "okay"; 599*b2d2a78aSEmmanuel Vadot}; 600*b2d2a78aSEmmanuel Vadot 601*b2d2a78aSEmmanuel Vadot/* connected to usb_host0_xhci */ 602*b2d2a78aSEmmanuel Vadot&usb2phy0_otg { 603*b2d2a78aSEmmanuel Vadot phy-supply = <&vcc5v0_otg>; 604*b2d2a78aSEmmanuel Vadot status = "okay"; 605*b2d2a78aSEmmanuel Vadot}; 606*b2d2a78aSEmmanuel Vadot 607*b2d2a78aSEmmanuel Vadot&usb2phy1 { 608*b2d2a78aSEmmanuel Vadot status = "okay"; 609*b2d2a78aSEmmanuel Vadot}; 610*b2d2a78aSEmmanuel Vadot 611*b2d2a78aSEmmanuel Vadot/* connected to usb_host1_ehci/ohci */ 612*b2d2a78aSEmmanuel Vadot&usb2phy1_host { 613*b2d2a78aSEmmanuel Vadot phy-supply = <&vcc5v0_host>; 614*b2d2a78aSEmmanuel Vadot status = "okay"; 615*b2d2a78aSEmmanuel Vadot}; 616*b2d2a78aSEmmanuel Vadot 617*b2d2a78aSEmmanuel Vadot/* connected to usb_host0_ehci/ohci */ 618*b2d2a78aSEmmanuel Vadot&usb2phy1_otg { 619*b2d2a78aSEmmanuel Vadot phy-supply = <&vcc5v0_host>; 620*b2d2a78aSEmmanuel Vadot status = "okay"; 621*b2d2a78aSEmmanuel Vadot}; 622*b2d2a78aSEmmanuel Vadot 623*b2d2a78aSEmmanuel Vadot/* right port backside */ 624*b2d2a78aSEmmanuel Vadot&usb_host0_ehci { 625*b2d2a78aSEmmanuel Vadot status = "okay"; 626*b2d2a78aSEmmanuel Vadot}; 627*b2d2a78aSEmmanuel Vadot 628*b2d2a78aSEmmanuel Vadot&usb_host0_ohci { 629*b2d2a78aSEmmanuel Vadot status = "okay"; 630*b2d2a78aSEmmanuel Vadot}; 631*b2d2a78aSEmmanuel Vadot 632*b2d2a78aSEmmanuel Vadot/* front port */ 633*b2d2a78aSEmmanuel Vadot&usb_host0_xhci { 634*b2d2a78aSEmmanuel Vadot dr_mode = "host"; 635*b2d2a78aSEmmanuel Vadot status = "okay"; 636*b2d2a78aSEmmanuel Vadot}; 637*b2d2a78aSEmmanuel Vadot 638*b2d2a78aSEmmanuel Vadot/* left port backside */ 639*b2d2a78aSEmmanuel Vadot&usb_host1_ehci { 640*b2d2a78aSEmmanuel Vadot status = "okay"; 641*b2d2a78aSEmmanuel Vadot}; 642*b2d2a78aSEmmanuel Vadot 643*b2d2a78aSEmmanuel Vadot&usb_host1_ohci { 644*b2d2a78aSEmmanuel Vadot status = "okay"; 645*b2d2a78aSEmmanuel Vadot}; 646