1*b2d2a78aSEmmanuel Vadot// SPDX-License-Identifier: (GPL-2.0+ OR MIT) 2*b2d2a78aSEmmanuel Vadot/* 3*b2d2a78aSEmmanuel Vadot * Copyright (c) 2016 Fuzhou Rockchip Electronics Co., Ltd 4*b2d2a78aSEmmanuel Vadot */ 5*b2d2a78aSEmmanuel Vadot 6*b2d2a78aSEmmanuel Vadot#include <dt-bindings/clock/rk3399-cru.h> 7*b2d2a78aSEmmanuel Vadot#include <dt-bindings/gpio/gpio.h> 8*b2d2a78aSEmmanuel Vadot#include <dt-bindings/interrupt-controller/arm-gic.h> 9*b2d2a78aSEmmanuel Vadot#include <dt-bindings/interrupt-controller/irq.h> 10*b2d2a78aSEmmanuel Vadot#include <dt-bindings/pinctrl/rockchip.h> 11*b2d2a78aSEmmanuel Vadot#include <dt-bindings/power/rk3399-power.h> 12*b2d2a78aSEmmanuel Vadot#include <dt-bindings/thermal/thermal.h> 13*b2d2a78aSEmmanuel Vadot 14*b2d2a78aSEmmanuel Vadot/ { 15*b2d2a78aSEmmanuel Vadot compatible = "rockchip,rk3399"; 16*b2d2a78aSEmmanuel Vadot 17*b2d2a78aSEmmanuel Vadot interrupt-parent = <&gic>; 18*b2d2a78aSEmmanuel Vadot #address-cells = <2>; 19*b2d2a78aSEmmanuel Vadot #size-cells = <2>; 20*b2d2a78aSEmmanuel Vadot 21*b2d2a78aSEmmanuel Vadot aliases { 22*b2d2a78aSEmmanuel Vadot gpio0 = &gpio0; 23*b2d2a78aSEmmanuel Vadot gpio1 = &gpio1; 24*b2d2a78aSEmmanuel Vadot gpio2 = &gpio2; 25*b2d2a78aSEmmanuel Vadot gpio3 = &gpio3; 26*b2d2a78aSEmmanuel Vadot gpio4 = &gpio4; 27*b2d2a78aSEmmanuel Vadot i2c0 = &i2c0; 28*b2d2a78aSEmmanuel Vadot i2c1 = &i2c1; 29*b2d2a78aSEmmanuel Vadot i2c2 = &i2c2; 30*b2d2a78aSEmmanuel Vadot i2c3 = &i2c3; 31*b2d2a78aSEmmanuel Vadot i2c4 = &i2c4; 32*b2d2a78aSEmmanuel Vadot i2c5 = &i2c5; 33*b2d2a78aSEmmanuel Vadot i2c6 = &i2c6; 34*b2d2a78aSEmmanuel Vadot i2c7 = &i2c7; 35*b2d2a78aSEmmanuel Vadot i2c8 = &i2c8; 36*b2d2a78aSEmmanuel Vadot serial0 = &uart0; 37*b2d2a78aSEmmanuel Vadot serial1 = &uart1; 38*b2d2a78aSEmmanuel Vadot serial2 = &uart2; 39*b2d2a78aSEmmanuel Vadot serial3 = &uart3; 40*b2d2a78aSEmmanuel Vadot serial4 = &uart4; 41*b2d2a78aSEmmanuel Vadot spi0 = &spi0; 42*b2d2a78aSEmmanuel Vadot spi1 = &spi1; 43*b2d2a78aSEmmanuel Vadot spi2 = &spi2; 44*b2d2a78aSEmmanuel Vadot spi3 = &spi3; 45*b2d2a78aSEmmanuel Vadot spi4 = &spi4; 46*b2d2a78aSEmmanuel Vadot spi5 = &spi5; 47*b2d2a78aSEmmanuel Vadot }; 48*b2d2a78aSEmmanuel Vadot 49*b2d2a78aSEmmanuel Vadot cpus { 50*b2d2a78aSEmmanuel Vadot #address-cells = <2>; 51*b2d2a78aSEmmanuel Vadot #size-cells = <0>; 52*b2d2a78aSEmmanuel Vadot 53*b2d2a78aSEmmanuel Vadot cpu-map { 54*b2d2a78aSEmmanuel Vadot cluster0 { /* Cortex-A53 */ 55*b2d2a78aSEmmanuel Vadot core0 { 56*b2d2a78aSEmmanuel Vadot cpu = <&cpu_l0>; 57*b2d2a78aSEmmanuel Vadot }; 58*b2d2a78aSEmmanuel Vadot core1 { 59*b2d2a78aSEmmanuel Vadot cpu = <&cpu_l1>; 60*b2d2a78aSEmmanuel Vadot }; 61*b2d2a78aSEmmanuel Vadot core2 { 62*b2d2a78aSEmmanuel Vadot cpu = <&cpu_l2>; 63*b2d2a78aSEmmanuel Vadot }; 64*b2d2a78aSEmmanuel Vadot core3 { 65*b2d2a78aSEmmanuel Vadot cpu = <&cpu_l3>; 66*b2d2a78aSEmmanuel Vadot }; 67*b2d2a78aSEmmanuel Vadot }; 68*b2d2a78aSEmmanuel Vadot 69*b2d2a78aSEmmanuel Vadot cluster1 { /* Cortex-A72 */ 70*b2d2a78aSEmmanuel Vadot core0 { 71*b2d2a78aSEmmanuel Vadot cpu = <&cpu_b0>; 72*b2d2a78aSEmmanuel Vadot }; 73*b2d2a78aSEmmanuel Vadot core1 { 74*b2d2a78aSEmmanuel Vadot cpu = <&cpu_b1>; 75*b2d2a78aSEmmanuel Vadot }; 76*b2d2a78aSEmmanuel Vadot }; 77*b2d2a78aSEmmanuel Vadot }; 78*b2d2a78aSEmmanuel Vadot 79*b2d2a78aSEmmanuel Vadot cpu_l0: cpu@0 { 80*b2d2a78aSEmmanuel Vadot device_type = "cpu"; 81*b2d2a78aSEmmanuel Vadot compatible = "arm,cortex-a53"; 82*b2d2a78aSEmmanuel Vadot reg = <0x0 0x0>; 83*b2d2a78aSEmmanuel Vadot enable-method = "psci"; 84*b2d2a78aSEmmanuel Vadot capacity-dmips-mhz = <485>; 85*b2d2a78aSEmmanuel Vadot clocks = <&cru ARMCLKL>; 86*b2d2a78aSEmmanuel Vadot #cooling-cells = <2>; /* min followed by max */ 87*b2d2a78aSEmmanuel Vadot dynamic-power-coefficient = <100>; 88*b2d2a78aSEmmanuel Vadot cpu-idle-states = <&CPU_SLEEP &CLUSTER_SLEEP>; 89*b2d2a78aSEmmanuel Vadot i-cache-size = <0x8000>; 90*b2d2a78aSEmmanuel Vadot i-cache-line-size = <64>; 91*b2d2a78aSEmmanuel Vadot i-cache-sets = <256>; 92*b2d2a78aSEmmanuel Vadot d-cache-size = <0x8000>; 93*b2d2a78aSEmmanuel Vadot d-cache-line-size = <64>; 94*b2d2a78aSEmmanuel Vadot d-cache-sets = <128>; 95*b2d2a78aSEmmanuel Vadot next-level-cache = <&l2_cache_l>; 96*b2d2a78aSEmmanuel Vadot }; 97*b2d2a78aSEmmanuel Vadot 98*b2d2a78aSEmmanuel Vadot cpu_l1: cpu@1 { 99*b2d2a78aSEmmanuel Vadot device_type = "cpu"; 100*b2d2a78aSEmmanuel Vadot compatible = "arm,cortex-a53"; 101*b2d2a78aSEmmanuel Vadot reg = <0x0 0x1>; 102*b2d2a78aSEmmanuel Vadot enable-method = "psci"; 103*b2d2a78aSEmmanuel Vadot capacity-dmips-mhz = <485>; 104*b2d2a78aSEmmanuel Vadot clocks = <&cru ARMCLKL>; 105*b2d2a78aSEmmanuel Vadot #cooling-cells = <2>; /* min followed by max */ 106*b2d2a78aSEmmanuel Vadot dynamic-power-coefficient = <100>; 107*b2d2a78aSEmmanuel Vadot cpu-idle-states = <&CPU_SLEEP &CLUSTER_SLEEP>; 108*b2d2a78aSEmmanuel Vadot i-cache-size = <0x8000>; 109*b2d2a78aSEmmanuel Vadot i-cache-line-size = <64>; 110*b2d2a78aSEmmanuel Vadot i-cache-sets = <256>; 111*b2d2a78aSEmmanuel Vadot d-cache-size = <0x8000>; 112*b2d2a78aSEmmanuel Vadot d-cache-line-size = <64>; 113*b2d2a78aSEmmanuel Vadot d-cache-sets = <128>; 114*b2d2a78aSEmmanuel Vadot next-level-cache = <&l2_cache_l>; 115*b2d2a78aSEmmanuel Vadot }; 116*b2d2a78aSEmmanuel Vadot 117*b2d2a78aSEmmanuel Vadot cpu_l2: cpu@2 { 118*b2d2a78aSEmmanuel Vadot device_type = "cpu"; 119*b2d2a78aSEmmanuel Vadot compatible = "arm,cortex-a53"; 120*b2d2a78aSEmmanuel Vadot reg = <0x0 0x2>; 121*b2d2a78aSEmmanuel Vadot enable-method = "psci"; 122*b2d2a78aSEmmanuel Vadot capacity-dmips-mhz = <485>; 123*b2d2a78aSEmmanuel Vadot clocks = <&cru ARMCLKL>; 124*b2d2a78aSEmmanuel Vadot #cooling-cells = <2>; /* min followed by max */ 125*b2d2a78aSEmmanuel Vadot dynamic-power-coefficient = <100>; 126*b2d2a78aSEmmanuel Vadot cpu-idle-states = <&CPU_SLEEP &CLUSTER_SLEEP>; 127*b2d2a78aSEmmanuel Vadot i-cache-size = <0x8000>; 128*b2d2a78aSEmmanuel Vadot i-cache-line-size = <64>; 129*b2d2a78aSEmmanuel Vadot i-cache-sets = <256>; 130*b2d2a78aSEmmanuel Vadot d-cache-size = <0x8000>; 131*b2d2a78aSEmmanuel Vadot d-cache-line-size = <64>; 132*b2d2a78aSEmmanuel Vadot d-cache-sets = <128>; 133*b2d2a78aSEmmanuel Vadot next-level-cache = <&l2_cache_l>; 134*b2d2a78aSEmmanuel Vadot }; 135*b2d2a78aSEmmanuel Vadot 136*b2d2a78aSEmmanuel Vadot cpu_l3: cpu@3 { 137*b2d2a78aSEmmanuel Vadot device_type = "cpu"; 138*b2d2a78aSEmmanuel Vadot compatible = "arm,cortex-a53"; 139*b2d2a78aSEmmanuel Vadot reg = <0x0 0x3>; 140*b2d2a78aSEmmanuel Vadot enable-method = "psci"; 141*b2d2a78aSEmmanuel Vadot capacity-dmips-mhz = <485>; 142*b2d2a78aSEmmanuel Vadot clocks = <&cru ARMCLKL>; 143*b2d2a78aSEmmanuel Vadot #cooling-cells = <2>; /* min followed by max */ 144*b2d2a78aSEmmanuel Vadot dynamic-power-coefficient = <100>; 145*b2d2a78aSEmmanuel Vadot cpu-idle-states = <&CPU_SLEEP &CLUSTER_SLEEP>; 146*b2d2a78aSEmmanuel Vadot i-cache-size = <0x8000>; 147*b2d2a78aSEmmanuel Vadot i-cache-line-size = <64>; 148*b2d2a78aSEmmanuel Vadot i-cache-sets = <256>; 149*b2d2a78aSEmmanuel Vadot d-cache-size = <0x8000>; 150*b2d2a78aSEmmanuel Vadot d-cache-line-size = <64>; 151*b2d2a78aSEmmanuel Vadot d-cache-sets = <128>; 152*b2d2a78aSEmmanuel Vadot next-level-cache = <&l2_cache_l>; 153*b2d2a78aSEmmanuel Vadot }; 154*b2d2a78aSEmmanuel Vadot 155*b2d2a78aSEmmanuel Vadot cpu_b0: cpu@100 { 156*b2d2a78aSEmmanuel Vadot device_type = "cpu"; 157*b2d2a78aSEmmanuel Vadot compatible = "arm,cortex-a72"; 158*b2d2a78aSEmmanuel Vadot reg = <0x0 0x100>; 159*b2d2a78aSEmmanuel Vadot enable-method = "psci"; 160*b2d2a78aSEmmanuel Vadot capacity-dmips-mhz = <1024>; 161*b2d2a78aSEmmanuel Vadot clocks = <&cru ARMCLKB>; 162*b2d2a78aSEmmanuel Vadot #cooling-cells = <2>; /* min followed by max */ 163*b2d2a78aSEmmanuel Vadot dynamic-power-coefficient = <436>; 164*b2d2a78aSEmmanuel Vadot cpu-idle-states = <&CPU_SLEEP &CLUSTER_SLEEP>; 165*b2d2a78aSEmmanuel Vadot i-cache-size = <0xC000>; 166*b2d2a78aSEmmanuel Vadot i-cache-line-size = <64>; 167*b2d2a78aSEmmanuel Vadot i-cache-sets = <256>; 168*b2d2a78aSEmmanuel Vadot d-cache-size = <0x8000>; 169*b2d2a78aSEmmanuel Vadot d-cache-line-size = <64>; 170*b2d2a78aSEmmanuel Vadot d-cache-sets = <256>; 171*b2d2a78aSEmmanuel Vadot next-level-cache = <&l2_cache_b>; 172*b2d2a78aSEmmanuel Vadot 173*b2d2a78aSEmmanuel Vadot thermal-idle { 174*b2d2a78aSEmmanuel Vadot #cooling-cells = <2>; 175*b2d2a78aSEmmanuel Vadot duration-us = <10000>; 176*b2d2a78aSEmmanuel Vadot exit-latency-us = <500>; 177*b2d2a78aSEmmanuel Vadot }; 178*b2d2a78aSEmmanuel Vadot }; 179*b2d2a78aSEmmanuel Vadot 180*b2d2a78aSEmmanuel Vadot cpu_b1: cpu@101 { 181*b2d2a78aSEmmanuel Vadot device_type = "cpu"; 182*b2d2a78aSEmmanuel Vadot compatible = "arm,cortex-a72"; 183*b2d2a78aSEmmanuel Vadot reg = <0x0 0x101>; 184*b2d2a78aSEmmanuel Vadot enable-method = "psci"; 185*b2d2a78aSEmmanuel Vadot capacity-dmips-mhz = <1024>; 186*b2d2a78aSEmmanuel Vadot clocks = <&cru ARMCLKB>; 187*b2d2a78aSEmmanuel Vadot #cooling-cells = <2>; /* min followed by max */ 188*b2d2a78aSEmmanuel Vadot dynamic-power-coefficient = <436>; 189*b2d2a78aSEmmanuel Vadot cpu-idle-states = <&CPU_SLEEP &CLUSTER_SLEEP>; 190*b2d2a78aSEmmanuel Vadot i-cache-size = <0xC000>; 191*b2d2a78aSEmmanuel Vadot i-cache-line-size = <64>; 192*b2d2a78aSEmmanuel Vadot i-cache-sets = <256>; 193*b2d2a78aSEmmanuel Vadot d-cache-size = <0x8000>; 194*b2d2a78aSEmmanuel Vadot d-cache-line-size = <64>; 195*b2d2a78aSEmmanuel Vadot d-cache-sets = <256>; 196*b2d2a78aSEmmanuel Vadot next-level-cache = <&l2_cache_b>; 197*b2d2a78aSEmmanuel Vadot 198*b2d2a78aSEmmanuel Vadot thermal-idle { 199*b2d2a78aSEmmanuel Vadot #cooling-cells = <2>; 200*b2d2a78aSEmmanuel Vadot duration-us = <10000>; 201*b2d2a78aSEmmanuel Vadot exit-latency-us = <500>; 202*b2d2a78aSEmmanuel Vadot }; 203*b2d2a78aSEmmanuel Vadot }; 204*b2d2a78aSEmmanuel Vadot 205*b2d2a78aSEmmanuel Vadot l2_cache_l: l2-cache-cluster0 { 206*b2d2a78aSEmmanuel Vadot compatible = "cache"; 207*b2d2a78aSEmmanuel Vadot cache-level = <2>; 208*b2d2a78aSEmmanuel Vadot cache-unified; 209*b2d2a78aSEmmanuel Vadot cache-size = <0x80000>; 210*b2d2a78aSEmmanuel Vadot cache-line-size = <64>; 211*b2d2a78aSEmmanuel Vadot cache-sets = <512>; 212*b2d2a78aSEmmanuel Vadot }; 213*b2d2a78aSEmmanuel Vadot 214*b2d2a78aSEmmanuel Vadot l2_cache_b: l2-cache-cluster1 { 215*b2d2a78aSEmmanuel Vadot compatible = "cache"; 216*b2d2a78aSEmmanuel Vadot cache-level = <2>; 217*b2d2a78aSEmmanuel Vadot cache-unified; 218*b2d2a78aSEmmanuel Vadot cache-size = <0x100000>; 219*b2d2a78aSEmmanuel Vadot cache-line-size = <64>; 220*b2d2a78aSEmmanuel Vadot cache-sets = <1024>; 221*b2d2a78aSEmmanuel Vadot }; 222*b2d2a78aSEmmanuel Vadot 223*b2d2a78aSEmmanuel Vadot idle-states { 224*b2d2a78aSEmmanuel Vadot entry-method = "psci"; 225*b2d2a78aSEmmanuel Vadot 226*b2d2a78aSEmmanuel Vadot CPU_SLEEP: cpu-sleep { 227*b2d2a78aSEmmanuel Vadot compatible = "arm,idle-state"; 228*b2d2a78aSEmmanuel Vadot local-timer-stop; 229*b2d2a78aSEmmanuel Vadot arm,psci-suspend-param = <0x0010000>; 230*b2d2a78aSEmmanuel Vadot entry-latency-us = <120>; 231*b2d2a78aSEmmanuel Vadot exit-latency-us = <250>; 232*b2d2a78aSEmmanuel Vadot min-residency-us = <900>; 233*b2d2a78aSEmmanuel Vadot }; 234*b2d2a78aSEmmanuel Vadot 235*b2d2a78aSEmmanuel Vadot CLUSTER_SLEEP: cluster-sleep { 236*b2d2a78aSEmmanuel Vadot compatible = "arm,idle-state"; 237*b2d2a78aSEmmanuel Vadot local-timer-stop; 238*b2d2a78aSEmmanuel Vadot arm,psci-suspend-param = <0x1010000>; 239*b2d2a78aSEmmanuel Vadot entry-latency-us = <400>; 240*b2d2a78aSEmmanuel Vadot exit-latency-us = <500>; 241*b2d2a78aSEmmanuel Vadot min-residency-us = <2000>; 242*b2d2a78aSEmmanuel Vadot }; 243*b2d2a78aSEmmanuel Vadot }; 244*b2d2a78aSEmmanuel Vadot }; 245*b2d2a78aSEmmanuel Vadot 246*b2d2a78aSEmmanuel Vadot display-subsystem { 247*b2d2a78aSEmmanuel Vadot compatible = "rockchip,display-subsystem"; 248*b2d2a78aSEmmanuel Vadot ports = <&vopl_out>, <&vopb_out>; 249*b2d2a78aSEmmanuel Vadot }; 250*b2d2a78aSEmmanuel Vadot 251*b2d2a78aSEmmanuel Vadot dmc: memory-controller { 252*b2d2a78aSEmmanuel Vadot compatible = "rockchip,rk3399-dmc"; 253*b2d2a78aSEmmanuel Vadot rockchip,pmu = <&pmugrf>; 254*b2d2a78aSEmmanuel Vadot devfreq-events = <&dfi>; 255*b2d2a78aSEmmanuel Vadot clocks = <&cru SCLK_DDRC>; 256*b2d2a78aSEmmanuel Vadot clock-names = "dmc_clk"; 257*b2d2a78aSEmmanuel Vadot status = "disabled"; 258*b2d2a78aSEmmanuel Vadot }; 259*b2d2a78aSEmmanuel Vadot 260*b2d2a78aSEmmanuel Vadot pmu_a53 { 261*b2d2a78aSEmmanuel Vadot compatible = "arm,cortex-a53-pmu"; 262*b2d2a78aSEmmanuel Vadot interrupts = <GIC_PPI 7 IRQ_TYPE_LEVEL_LOW &ppi_cluster0>; 263*b2d2a78aSEmmanuel Vadot }; 264*b2d2a78aSEmmanuel Vadot 265*b2d2a78aSEmmanuel Vadot pmu_a72 { 266*b2d2a78aSEmmanuel Vadot compatible = "arm,cortex-a72-pmu"; 267*b2d2a78aSEmmanuel Vadot interrupts = <GIC_PPI 7 IRQ_TYPE_LEVEL_LOW &ppi_cluster1>; 268*b2d2a78aSEmmanuel Vadot }; 269*b2d2a78aSEmmanuel Vadot 270*b2d2a78aSEmmanuel Vadot psci { 271*b2d2a78aSEmmanuel Vadot compatible = "arm,psci-1.0"; 272*b2d2a78aSEmmanuel Vadot method = "smc"; 273*b2d2a78aSEmmanuel Vadot }; 274*b2d2a78aSEmmanuel Vadot 275*b2d2a78aSEmmanuel Vadot timer { 276*b2d2a78aSEmmanuel Vadot compatible = "arm,armv8-timer"; 277*b2d2a78aSEmmanuel Vadot interrupts = <GIC_PPI 13 IRQ_TYPE_LEVEL_LOW 0>, 278*b2d2a78aSEmmanuel Vadot <GIC_PPI 14 IRQ_TYPE_LEVEL_LOW 0>, 279*b2d2a78aSEmmanuel Vadot <GIC_PPI 11 IRQ_TYPE_LEVEL_LOW 0>, 280*b2d2a78aSEmmanuel Vadot <GIC_PPI 10 IRQ_TYPE_LEVEL_LOW 0>; 281*b2d2a78aSEmmanuel Vadot arm,no-tick-in-suspend; 282*b2d2a78aSEmmanuel Vadot }; 283*b2d2a78aSEmmanuel Vadot 284*b2d2a78aSEmmanuel Vadot xin24m: xin24m { 285*b2d2a78aSEmmanuel Vadot compatible = "fixed-clock"; 286*b2d2a78aSEmmanuel Vadot clock-frequency = <24000000>; 287*b2d2a78aSEmmanuel Vadot clock-output-names = "xin24m"; 288*b2d2a78aSEmmanuel Vadot #clock-cells = <0>; 289*b2d2a78aSEmmanuel Vadot }; 290*b2d2a78aSEmmanuel Vadot 291*b2d2a78aSEmmanuel Vadot pcie0: pcie@f8000000 { 292*b2d2a78aSEmmanuel Vadot compatible = "rockchip,rk3399-pcie"; 293*b2d2a78aSEmmanuel Vadot reg = <0x0 0xf8000000 0x0 0x2000000>, 294*b2d2a78aSEmmanuel Vadot <0x0 0xfd000000 0x0 0x1000000>; 295*b2d2a78aSEmmanuel Vadot reg-names = "axi-base", "apb-base"; 296*b2d2a78aSEmmanuel Vadot device_type = "pci"; 297*b2d2a78aSEmmanuel Vadot #address-cells = <3>; 298*b2d2a78aSEmmanuel Vadot #size-cells = <2>; 299*b2d2a78aSEmmanuel Vadot #interrupt-cells = <1>; 300*b2d2a78aSEmmanuel Vadot aspm-no-l0s; 301*b2d2a78aSEmmanuel Vadot bus-range = <0x0 0x1f>; 302*b2d2a78aSEmmanuel Vadot clocks = <&cru ACLK_PCIE>, <&cru ACLK_PERF_PCIE>, 303*b2d2a78aSEmmanuel Vadot <&cru PCLK_PCIE>, <&cru SCLK_PCIE_PM>; 304*b2d2a78aSEmmanuel Vadot clock-names = "aclk", "aclk-perf", 305*b2d2a78aSEmmanuel Vadot "hclk", "pm"; 306*b2d2a78aSEmmanuel Vadot interrupts = <GIC_SPI 49 IRQ_TYPE_LEVEL_HIGH 0>, 307*b2d2a78aSEmmanuel Vadot <GIC_SPI 50 IRQ_TYPE_LEVEL_HIGH 0>, 308*b2d2a78aSEmmanuel Vadot <GIC_SPI 51 IRQ_TYPE_LEVEL_HIGH 0>; 309*b2d2a78aSEmmanuel Vadot interrupt-names = "sys", "legacy", "client"; 310*b2d2a78aSEmmanuel Vadot interrupt-map-mask = <0 0 0 7>; 311*b2d2a78aSEmmanuel Vadot interrupt-map = <0 0 0 1 &pcie0_intc 0>, 312*b2d2a78aSEmmanuel Vadot <0 0 0 2 &pcie0_intc 1>, 313*b2d2a78aSEmmanuel Vadot <0 0 0 3 &pcie0_intc 2>, 314*b2d2a78aSEmmanuel Vadot <0 0 0 4 &pcie0_intc 3>; 315*b2d2a78aSEmmanuel Vadot max-link-speed = <1>; 316*b2d2a78aSEmmanuel Vadot msi-map = <0x0 &its 0x0 0x1000>; 317*b2d2a78aSEmmanuel Vadot phys = <&pcie_phy 0>, <&pcie_phy 1>, 318*b2d2a78aSEmmanuel Vadot <&pcie_phy 2>, <&pcie_phy 3>; 319*b2d2a78aSEmmanuel Vadot phy-names = "pcie-phy-0", "pcie-phy-1", 320*b2d2a78aSEmmanuel Vadot "pcie-phy-2", "pcie-phy-3"; 321*b2d2a78aSEmmanuel Vadot ranges = <0x82000000 0x0 0xfa000000 0x0 0xfa000000 0x0 0x1e00000>, 322*b2d2a78aSEmmanuel Vadot <0x81000000 0x0 0xfbe00000 0x0 0xfbe00000 0x0 0x100000>; 323*b2d2a78aSEmmanuel Vadot resets = <&cru SRST_PCIE_CORE>, <&cru SRST_PCIE_MGMT>, 324*b2d2a78aSEmmanuel Vadot <&cru SRST_PCIE_MGMT_STICKY>, <&cru SRST_PCIE_PIPE>, 325*b2d2a78aSEmmanuel Vadot <&cru SRST_PCIE_PM>, <&cru SRST_P_PCIE>, 326*b2d2a78aSEmmanuel Vadot <&cru SRST_A_PCIE>; 327*b2d2a78aSEmmanuel Vadot reset-names = "core", "mgmt", "mgmt-sticky", "pipe", 328*b2d2a78aSEmmanuel Vadot "pm", "pclk", "aclk"; 329*b2d2a78aSEmmanuel Vadot status = "disabled"; 330*b2d2a78aSEmmanuel Vadot 331*b2d2a78aSEmmanuel Vadot pcie0_intc: interrupt-controller { 332*b2d2a78aSEmmanuel Vadot interrupt-controller; 333*b2d2a78aSEmmanuel Vadot #address-cells = <0>; 334*b2d2a78aSEmmanuel Vadot #interrupt-cells = <1>; 335*b2d2a78aSEmmanuel Vadot }; 336*b2d2a78aSEmmanuel Vadot }; 337*b2d2a78aSEmmanuel Vadot 338*b2d2a78aSEmmanuel Vadot pcie0_ep: pcie-ep@f8000000 { 339*b2d2a78aSEmmanuel Vadot compatible = "rockchip,rk3399-pcie-ep"; 340*b2d2a78aSEmmanuel Vadot reg = <0x0 0xfd000000 0x0 0x1000000>, 341*b2d2a78aSEmmanuel Vadot <0x0 0xfa000000 0x0 0x2000000>; 342*b2d2a78aSEmmanuel Vadot reg-names = "apb-base", "mem-base"; 343*b2d2a78aSEmmanuel Vadot clocks = <&cru ACLK_PCIE>, <&cru ACLK_PERF_PCIE>, 344*b2d2a78aSEmmanuel Vadot <&cru PCLK_PCIE>, <&cru SCLK_PCIE_PM>; 345*b2d2a78aSEmmanuel Vadot clock-names = "aclk", "aclk-perf", 346*b2d2a78aSEmmanuel Vadot "hclk", "pm"; 347*b2d2a78aSEmmanuel Vadot max-functions = /bits/ 8 <8>; 348*b2d2a78aSEmmanuel Vadot num-lanes = <4>; 349*b2d2a78aSEmmanuel Vadot resets = <&cru SRST_PCIE_CORE>, <&cru SRST_PCIE_MGMT>, 350*b2d2a78aSEmmanuel Vadot <&cru SRST_PCIE_MGMT_STICKY>, <&cru SRST_PCIE_PIPE>, 351*b2d2a78aSEmmanuel Vadot <&cru SRST_PCIE_PM>, <&cru SRST_P_PCIE>, 352*b2d2a78aSEmmanuel Vadot <&cru SRST_A_PCIE>; 353*b2d2a78aSEmmanuel Vadot reset-names = "core", "mgmt", "mgmt-sticky", "pipe", 354*b2d2a78aSEmmanuel Vadot "pm", "pclk", "aclk"; 355*b2d2a78aSEmmanuel Vadot phys = <&pcie_phy 0>, <&pcie_phy 1>, 356*b2d2a78aSEmmanuel Vadot <&pcie_phy 2>, <&pcie_phy 3>; 357*b2d2a78aSEmmanuel Vadot phy-names = "pcie-phy-0", "pcie-phy-1", 358*b2d2a78aSEmmanuel Vadot "pcie-phy-2", "pcie-phy-3"; 359*b2d2a78aSEmmanuel Vadot rockchip,max-outbound-regions = <32>; 360*b2d2a78aSEmmanuel Vadot pinctrl-names = "default"; 361*b2d2a78aSEmmanuel Vadot pinctrl-0 = <&pcie_clkreqnb_cpm>; 362*b2d2a78aSEmmanuel Vadot status = "disabled"; 363*b2d2a78aSEmmanuel Vadot }; 364*b2d2a78aSEmmanuel Vadot 365*b2d2a78aSEmmanuel Vadot gmac: ethernet@fe300000 { 366*b2d2a78aSEmmanuel Vadot compatible = "rockchip,rk3399-gmac"; 367*b2d2a78aSEmmanuel Vadot reg = <0x0 0xfe300000 0x0 0x10000>; 368*b2d2a78aSEmmanuel Vadot interrupts = <GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH 0>; 369*b2d2a78aSEmmanuel Vadot interrupt-names = "macirq"; 370*b2d2a78aSEmmanuel Vadot clocks = <&cru SCLK_MAC>, <&cru SCLK_MAC_RX>, 371*b2d2a78aSEmmanuel Vadot <&cru SCLK_MAC_TX>, <&cru SCLK_MACREF>, 372*b2d2a78aSEmmanuel Vadot <&cru SCLK_MACREF_OUT>, <&cru ACLK_GMAC>, 373*b2d2a78aSEmmanuel Vadot <&cru PCLK_GMAC>; 374*b2d2a78aSEmmanuel Vadot clock-names = "stmmaceth", "mac_clk_rx", 375*b2d2a78aSEmmanuel Vadot "mac_clk_tx", "clk_mac_ref", 376*b2d2a78aSEmmanuel Vadot "clk_mac_refout", "aclk_mac", 377*b2d2a78aSEmmanuel Vadot "pclk_mac"; 378*b2d2a78aSEmmanuel Vadot power-domains = <&power RK3399_PD_GMAC>; 379*b2d2a78aSEmmanuel Vadot resets = <&cru SRST_A_GMAC>; 380*b2d2a78aSEmmanuel Vadot reset-names = "stmmaceth"; 381*b2d2a78aSEmmanuel Vadot rockchip,grf = <&grf>; 382*b2d2a78aSEmmanuel Vadot snps,txpbl = <0x4>; 383*b2d2a78aSEmmanuel Vadot status = "disabled"; 384*b2d2a78aSEmmanuel Vadot }; 385*b2d2a78aSEmmanuel Vadot 386*b2d2a78aSEmmanuel Vadot sdio0: mmc@fe310000 { 387*b2d2a78aSEmmanuel Vadot compatible = "rockchip,rk3399-dw-mshc", 388*b2d2a78aSEmmanuel Vadot "rockchip,rk3288-dw-mshc"; 389*b2d2a78aSEmmanuel Vadot reg = <0x0 0xfe310000 0x0 0x4000>; 390*b2d2a78aSEmmanuel Vadot interrupts = <GIC_SPI 64 IRQ_TYPE_LEVEL_HIGH 0>; 391*b2d2a78aSEmmanuel Vadot max-frequency = <150000000>; 392*b2d2a78aSEmmanuel Vadot clocks = <&cru HCLK_SDIO>, <&cru SCLK_SDIO>, 393*b2d2a78aSEmmanuel Vadot <&cru SCLK_SDIO_DRV>, <&cru SCLK_SDIO_SAMPLE>; 394*b2d2a78aSEmmanuel Vadot clock-names = "biu", "ciu", "ciu-drive", "ciu-sample"; 395*b2d2a78aSEmmanuel Vadot fifo-depth = <0x100>; 396*b2d2a78aSEmmanuel Vadot power-domains = <&power RK3399_PD_SDIOAUDIO>; 397*b2d2a78aSEmmanuel Vadot resets = <&cru SRST_SDIO0>; 398*b2d2a78aSEmmanuel Vadot reset-names = "reset"; 399*b2d2a78aSEmmanuel Vadot status = "disabled"; 400*b2d2a78aSEmmanuel Vadot }; 401*b2d2a78aSEmmanuel Vadot 402*b2d2a78aSEmmanuel Vadot sdmmc: mmc@fe320000 { 403*b2d2a78aSEmmanuel Vadot compatible = "rockchip,rk3399-dw-mshc", 404*b2d2a78aSEmmanuel Vadot "rockchip,rk3288-dw-mshc"; 405*b2d2a78aSEmmanuel Vadot reg = <0x0 0xfe320000 0x0 0x4000>; 406*b2d2a78aSEmmanuel Vadot interrupts = <GIC_SPI 65 IRQ_TYPE_LEVEL_HIGH 0>; 407*b2d2a78aSEmmanuel Vadot max-frequency = <150000000>; 408*b2d2a78aSEmmanuel Vadot assigned-clocks = <&cru HCLK_SD>; 409*b2d2a78aSEmmanuel Vadot assigned-clock-rates = <200000000>; 410*b2d2a78aSEmmanuel Vadot clocks = <&cru HCLK_SDMMC>, <&cru SCLK_SDMMC>, 411*b2d2a78aSEmmanuel Vadot <&cru SCLK_SDMMC_DRV>, <&cru SCLK_SDMMC_SAMPLE>; 412*b2d2a78aSEmmanuel Vadot clock-names = "biu", "ciu", "ciu-drive", "ciu-sample"; 413*b2d2a78aSEmmanuel Vadot fifo-depth = <0x100>; 414*b2d2a78aSEmmanuel Vadot power-domains = <&power RK3399_PD_SD>; 415*b2d2a78aSEmmanuel Vadot resets = <&cru SRST_SDMMC>; 416*b2d2a78aSEmmanuel Vadot reset-names = "reset"; 417*b2d2a78aSEmmanuel Vadot status = "disabled"; 418*b2d2a78aSEmmanuel Vadot }; 419*b2d2a78aSEmmanuel Vadot 420*b2d2a78aSEmmanuel Vadot sdhci: mmc@fe330000 { 421*b2d2a78aSEmmanuel Vadot compatible = "rockchip,rk3399-sdhci-5.1", "arasan,sdhci-5.1"; 422*b2d2a78aSEmmanuel Vadot reg = <0x0 0xfe330000 0x0 0x10000>; 423*b2d2a78aSEmmanuel Vadot interrupts = <GIC_SPI 11 IRQ_TYPE_LEVEL_HIGH 0>; 424*b2d2a78aSEmmanuel Vadot arasan,soc-ctl-syscon = <&grf>; 425*b2d2a78aSEmmanuel Vadot assigned-clocks = <&cru SCLK_EMMC>; 426*b2d2a78aSEmmanuel Vadot assigned-clock-rates = <200000000>; 427*b2d2a78aSEmmanuel Vadot clocks = <&cru SCLK_EMMC>, <&cru ACLK_EMMC>; 428*b2d2a78aSEmmanuel Vadot clock-names = "clk_xin", "clk_ahb"; 429*b2d2a78aSEmmanuel Vadot clock-output-names = "emmc_cardclock"; 430*b2d2a78aSEmmanuel Vadot #clock-cells = <0>; 431*b2d2a78aSEmmanuel Vadot phys = <&emmc_phy>; 432*b2d2a78aSEmmanuel Vadot phy-names = "phy_arasan"; 433*b2d2a78aSEmmanuel Vadot power-domains = <&power RK3399_PD_EMMC>; 434*b2d2a78aSEmmanuel Vadot disable-cqe-dcmd; 435*b2d2a78aSEmmanuel Vadot status = "disabled"; 436*b2d2a78aSEmmanuel Vadot }; 437*b2d2a78aSEmmanuel Vadot 438*b2d2a78aSEmmanuel Vadot usb_host0_ehci: usb@fe380000 { 439*b2d2a78aSEmmanuel Vadot compatible = "generic-ehci"; 440*b2d2a78aSEmmanuel Vadot reg = <0x0 0xfe380000 0x0 0x20000>; 441*b2d2a78aSEmmanuel Vadot interrupts = <GIC_SPI 26 IRQ_TYPE_LEVEL_HIGH 0>; 442*b2d2a78aSEmmanuel Vadot clocks = <&cru HCLK_HOST0>, <&cru HCLK_HOST0_ARB>, 443*b2d2a78aSEmmanuel Vadot <&u2phy0>; 444*b2d2a78aSEmmanuel Vadot phys = <&u2phy0_host>; 445*b2d2a78aSEmmanuel Vadot phy-names = "usb"; 446*b2d2a78aSEmmanuel Vadot status = "disabled"; 447*b2d2a78aSEmmanuel Vadot }; 448*b2d2a78aSEmmanuel Vadot 449*b2d2a78aSEmmanuel Vadot usb_host0_ohci: usb@fe3a0000 { 450*b2d2a78aSEmmanuel Vadot compatible = "generic-ohci"; 451*b2d2a78aSEmmanuel Vadot reg = <0x0 0xfe3a0000 0x0 0x20000>; 452*b2d2a78aSEmmanuel Vadot interrupts = <GIC_SPI 28 IRQ_TYPE_LEVEL_HIGH 0>; 453*b2d2a78aSEmmanuel Vadot clocks = <&cru HCLK_HOST0>, <&cru HCLK_HOST0_ARB>, 454*b2d2a78aSEmmanuel Vadot <&u2phy0>; 455*b2d2a78aSEmmanuel Vadot phys = <&u2phy0_host>; 456*b2d2a78aSEmmanuel Vadot phy-names = "usb"; 457*b2d2a78aSEmmanuel Vadot status = "disabled"; 458*b2d2a78aSEmmanuel Vadot }; 459*b2d2a78aSEmmanuel Vadot 460*b2d2a78aSEmmanuel Vadot usb_host1_ehci: usb@fe3c0000 { 461*b2d2a78aSEmmanuel Vadot compatible = "generic-ehci"; 462*b2d2a78aSEmmanuel Vadot reg = <0x0 0xfe3c0000 0x0 0x20000>; 463*b2d2a78aSEmmanuel Vadot interrupts = <GIC_SPI 30 IRQ_TYPE_LEVEL_HIGH 0>; 464*b2d2a78aSEmmanuel Vadot clocks = <&cru HCLK_HOST1>, <&cru HCLK_HOST1_ARB>, 465*b2d2a78aSEmmanuel Vadot <&u2phy1>; 466*b2d2a78aSEmmanuel Vadot phys = <&u2phy1_host>; 467*b2d2a78aSEmmanuel Vadot phy-names = "usb"; 468*b2d2a78aSEmmanuel Vadot status = "disabled"; 469*b2d2a78aSEmmanuel Vadot }; 470*b2d2a78aSEmmanuel Vadot 471*b2d2a78aSEmmanuel Vadot usb_host1_ohci: usb@fe3e0000 { 472*b2d2a78aSEmmanuel Vadot compatible = "generic-ohci"; 473*b2d2a78aSEmmanuel Vadot reg = <0x0 0xfe3e0000 0x0 0x20000>; 474*b2d2a78aSEmmanuel Vadot interrupts = <GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH 0>; 475*b2d2a78aSEmmanuel Vadot clocks = <&cru HCLK_HOST1>, <&cru HCLK_HOST1_ARB>, 476*b2d2a78aSEmmanuel Vadot <&u2phy1>; 477*b2d2a78aSEmmanuel Vadot phys = <&u2phy1_host>; 478*b2d2a78aSEmmanuel Vadot phy-names = "usb"; 479*b2d2a78aSEmmanuel Vadot status = "disabled"; 480*b2d2a78aSEmmanuel Vadot }; 481*b2d2a78aSEmmanuel Vadot 482*b2d2a78aSEmmanuel Vadot debug@fe430000 { 483*b2d2a78aSEmmanuel Vadot compatible = "arm,coresight-cpu-debug", "arm,primecell"; 484*b2d2a78aSEmmanuel Vadot reg = <0 0xfe430000 0 0x1000>; 485*b2d2a78aSEmmanuel Vadot clocks = <&cru PCLK_COREDBG_L>; 486*b2d2a78aSEmmanuel Vadot clock-names = "apb_pclk"; 487*b2d2a78aSEmmanuel Vadot cpu = <&cpu_l0>; 488*b2d2a78aSEmmanuel Vadot }; 489*b2d2a78aSEmmanuel Vadot 490*b2d2a78aSEmmanuel Vadot debug@fe432000 { 491*b2d2a78aSEmmanuel Vadot compatible = "arm,coresight-cpu-debug", "arm,primecell"; 492*b2d2a78aSEmmanuel Vadot reg = <0 0xfe432000 0 0x1000>; 493*b2d2a78aSEmmanuel Vadot clocks = <&cru PCLK_COREDBG_L>; 494*b2d2a78aSEmmanuel Vadot clock-names = "apb_pclk"; 495*b2d2a78aSEmmanuel Vadot cpu = <&cpu_l1>; 496*b2d2a78aSEmmanuel Vadot }; 497*b2d2a78aSEmmanuel Vadot 498*b2d2a78aSEmmanuel Vadot debug@fe434000 { 499*b2d2a78aSEmmanuel Vadot compatible = "arm,coresight-cpu-debug", "arm,primecell"; 500*b2d2a78aSEmmanuel Vadot reg = <0 0xfe434000 0 0x1000>; 501*b2d2a78aSEmmanuel Vadot clocks = <&cru PCLK_COREDBG_L>; 502*b2d2a78aSEmmanuel Vadot clock-names = "apb_pclk"; 503*b2d2a78aSEmmanuel Vadot cpu = <&cpu_l2>; 504*b2d2a78aSEmmanuel Vadot }; 505*b2d2a78aSEmmanuel Vadot 506*b2d2a78aSEmmanuel Vadot debug@fe436000 { 507*b2d2a78aSEmmanuel Vadot compatible = "arm,coresight-cpu-debug", "arm,primecell"; 508*b2d2a78aSEmmanuel Vadot reg = <0 0xfe436000 0 0x1000>; 509*b2d2a78aSEmmanuel Vadot clocks = <&cru PCLK_COREDBG_L>; 510*b2d2a78aSEmmanuel Vadot clock-names = "apb_pclk"; 511*b2d2a78aSEmmanuel Vadot cpu = <&cpu_l3>; 512*b2d2a78aSEmmanuel Vadot }; 513*b2d2a78aSEmmanuel Vadot 514*b2d2a78aSEmmanuel Vadot debug@fe610000 { 515*b2d2a78aSEmmanuel Vadot compatible = "arm,coresight-cpu-debug", "arm,primecell"; 516*b2d2a78aSEmmanuel Vadot reg = <0 0xfe610000 0 0x1000>; 517*b2d2a78aSEmmanuel Vadot clocks = <&cru PCLK_COREDBG_B>; 518*b2d2a78aSEmmanuel Vadot clock-names = "apb_pclk"; 519*b2d2a78aSEmmanuel Vadot cpu = <&cpu_b0>; 520*b2d2a78aSEmmanuel Vadot }; 521*b2d2a78aSEmmanuel Vadot 522*b2d2a78aSEmmanuel Vadot debug@fe710000 { 523*b2d2a78aSEmmanuel Vadot compatible = "arm,coresight-cpu-debug", "arm,primecell"; 524*b2d2a78aSEmmanuel Vadot reg = <0 0xfe710000 0 0x1000>; 525*b2d2a78aSEmmanuel Vadot clocks = <&cru PCLK_COREDBG_B>; 526*b2d2a78aSEmmanuel Vadot clock-names = "apb_pclk"; 527*b2d2a78aSEmmanuel Vadot cpu = <&cpu_b1>; 528*b2d2a78aSEmmanuel Vadot }; 529*b2d2a78aSEmmanuel Vadot 530*b2d2a78aSEmmanuel Vadot usbdrd3_0: usb@fe800000 { 531*b2d2a78aSEmmanuel Vadot compatible = "rockchip,rk3399-dwc3"; 532*b2d2a78aSEmmanuel Vadot #address-cells = <2>; 533*b2d2a78aSEmmanuel Vadot #size-cells = <2>; 534*b2d2a78aSEmmanuel Vadot ranges; 535*b2d2a78aSEmmanuel Vadot clocks = <&cru SCLK_USB3OTG0_REF>, <&cru SCLK_USB3OTG0_SUSPEND>, 536*b2d2a78aSEmmanuel Vadot <&cru ACLK_USB3OTG0>, <&cru ACLK_USB3_RKSOC_AXI_PERF>, 537*b2d2a78aSEmmanuel Vadot <&cru ACLK_USB3>, <&cru ACLK_USB3_GRF>; 538*b2d2a78aSEmmanuel Vadot clock-names = "ref_clk", "suspend_clk", 539*b2d2a78aSEmmanuel Vadot "bus_clk", "aclk_usb3_rksoc_axi_perf", 540*b2d2a78aSEmmanuel Vadot "aclk_usb3", "grf_clk"; 541*b2d2a78aSEmmanuel Vadot resets = <&cru SRST_A_USB3_OTG0>; 542*b2d2a78aSEmmanuel Vadot reset-names = "usb3-otg"; 543*b2d2a78aSEmmanuel Vadot status = "disabled"; 544*b2d2a78aSEmmanuel Vadot 545*b2d2a78aSEmmanuel Vadot usbdrd_dwc3_0: usb@fe800000 { 546*b2d2a78aSEmmanuel Vadot compatible = "snps,dwc3"; 547*b2d2a78aSEmmanuel Vadot reg = <0x0 0xfe800000 0x0 0x100000>; 548*b2d2a78aSEmmanuel Vadot interrupts = <GIC_SPI 105 IRQ_TYPE_LEVEL_HIGH 0>; 549*b2d2a78aSEmmanuel Vadot clocks = <&cru SCLK_USB3OTG0_REF>, <&cru ACLK_USB3OTG0>, 550*b2d2a78aSEmmanuel Vadot <&cru SCLK_USB3OTG0_SUSPEND>; 551*b2d2a78aSEmmanuel Vadot clock-names = "ref", "bus_early", "suspend"; 552*b2d2a78aSEmmanuel Vadot dr_mode = "otg"; 553*b2d2a78aSEmmanuel Vadot phys = <&u2phy0_otg>, <&tcphy0_usb3>; 554*b2d2a78aSEmmanuel Vadot phy-names = "usb2-phy", "usb3-phy"; 555*b2d2a78aSEmmanuel Vadot phy_type = "utmi_wide"; 556*b2d2a78aSEmmanuel Vadot snps,dis_enblslpm_quirk; 557*b2d2a78aSEmmanuel Vadot snps,dis-u2-freeclk-exists-quirk; 558*b2d2a78aSEmmanuel Vadot snps,dis_u2_susphy_quirk; 559*b2d2a78aSEmmanuel Vadot snps,dis-del-phy-power-chg-quirk; 560*b2d2a78aSEmmanuel Vadot snps,dis-tx-ipgap-linecheck-quirk; 561*b2d2a78aSEmmanuel Vadot power-domains = <&power RK3399_PD_USB3>; 562*b2d2a78aSEmmanuel Vadot status = "disabled"; 563*b2d2a78aSEmmanuel Vadot }; 564*b2d2a78aSEmmanuel Vadot }; 565*b2d2a78aSEmmanuel Vadot 566*b2d2a78aSEmmanuel Vadot usbdrd3_1: usb@fe900000 { 567*b2d2a78aSEmmanuel Vadot compatible = "rockchip,rk3399-dwc3"; 568*b2d2a78aSEmmanuel Vadot #address-cells = <2>; 569*b2d2a78aSEmmanuel Vadot #size-cells = <2>; 570*b2d2a78aSEmmanuel Vadot ranges; 571*b2d2a78aSEmmanuel Vadot clocks = <&cru SCLK_USB3OTG1_REF>, <&cru SCLK_USB3OTG1_SUSPEND>, 572*b2d2a78aSEmmanuel Vadot <&cru ACLK_USB3OTG1>, <&cru ACLK_USB3_RKSOC_AXI_PERF>, 573*b2d2a78aSEmmanuel Vadot <&cru ACLK_USB3>, <&cru ACLK_USB3_GRF>; 574*b2d2a78aSEmmanuel Vadot clock-names = "ref_clk", "suspend_clk", 575*b2d2a78aSEmmanuel Vadot "bus_clk", "aclk_usb3_rksoc_axi_perf", 576*b2d2a78aSEmmanuel Vadot "aclk_usb3", "grf_clk"; 577*b2d2a78aSEmmanuel Vadot resets = <&cru SRST_A_USB3_OTG1>; 578*b2d2a78aSEmmanuel Vadot reset-names = "usb3-otg"; 579*b2d2a78aSEmmanuel Vadot status = "disabled"; 580*b2d2a78aSEmmanuel Vadot 581*b2d2a78aSEmmanuel Vadot usbdrd_dwc3_1: usb@fe900000 { 582*b2d2a78aSEmmanuel Vadot compatible = "snps,dwc3"; 583*b2d2a78aSEmmanuel Vadot reg = <0x0 0xfe900000 0x0 0x100000>; 584*b2d2a78aSEmmanuel Vadot interrupts = <GIC_SPI 110 IRQ_TYPE_LEVEL_HIGH 0>; 585*b2d2a78aSEmmanuel Vadot clocks = <&cru SCLK_USB3OTG1_REF>, <&cru ACLK_USB3OTG1>, 586*b2d2a78aSEmmanuel Vadot <&cru SCLK_USB3OTG1_SUSPEND>; 587*b2d2a78aSEmmanuel Vadot clock-names = "ref", "bus_early", "suspend"; 588*b2d2a78aSEmmanuel Vadot dr_mode = "otg"; 589*b2d2a78aSEmmanuel Vadot phys = <&u2phy1_otg>, <&tcphy1_usb3>; 590*b2d2a78aSEmmanuel Vadot phy-names = "usb2-phy", "usb3-phy"; 591*b2d2a78aSEmmanuel Vadot phy_type = "utmi_wide"; 592*b2d2a78aSEmmanuel Vadot snps,dis_enblslpm_quirk; 593*b2d2a78aSEmmanuel Vadot snps,dis-u2-freeclk-exists-quirk; 594*b2d2a78aSEmmanuel Vadot snps,dis_u2_susphy_quirk; 595*b2d2a78aSEmmanuel Vadot snps,dis-del-phy-power-chg-quirk; 596*b2d2a78aSEmmanuel Vadot snps,dis-tx-ipgap-linecheck-quirk; 597*b2d2a78aSEmmanuel Vadot power-domains = <&power RK3399_PD_USB3>; 598*b2d2a78aSEmmanuel Vadot status = "disabled"; 599*b2d2a78aSEmmanuel Vadot }; 600*b2d2a78aSEmmanuel Vadot }; 601*b2d2a78aSEmmanuel Vadot 602*b2d2a78aSEmmanuel Vadot cdn_dp: dp@fec00000 { 603*b2d2a78aSEmmanuel Vadot compatible = "rockchip,rk3399-cdn-dp"; 604*b2d2a78aSEmmanuel Vadot reg = <0x0 0xfec00000 0x0 0x100000>; 605*b2d2a78aSEmmanuel Vadot interrupts = <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH 0>; 606*b2d2a78aSEmmanuel Vadot assigned-clocks = <&cru SCLK_DP_CORE>, <&cru SCLK_SPDIF_REC_DPTX>; 607*b2d2a78aSEmmanuel Vadot assigned-clock-rates = <100000000>, <200000000>; 608*b2d2a78aSEmmanuel Vadot clocks = <&cru SCLK_DP_CORE>, <&cru PCLK_DP_CTRL>, 609*b2d2a78aSEmmanuel Vadot <&cru SCLK_SPDIF_REC_DPTX>, <&cru PCLK_VIO_GRF>; 610*b2d2a78aSEmmanuel Vadot clock-names = "core-clk", "pclk", "spdif", "grf"; 611*b2d2a78aSEmmanuel Vadot phys = <&tcphy0_dp>, <&tcphy1_dp>; 612*b2d2a78aSEmmanuel Vadot power-domains = <&power RK3399_PD_HDCP>; 613*b2d2a78aSEmmanuel Vadot resets = <&cru SRST_DPTX_SPDIF_REC>, <&cru SRST_P_UPHY0_DPTX>, 614*b2d2a78aSEmmanuel Vadot <&cru SRST_P_UPHY0_APB>, <&cru SRST_DP_CORE>; 615*b2d2a78aSEmmanuel Vadot reset-names = "spdif", "dptx", "apb", "core"; 616*b2d2a78aSEmmanuel Vadot rockchip,grf = <&grf>; 617*b2d2a78aSEmmanuel Vadot #sound-dai-cells = <1>; 618*b2d2a78aSEmmanuel Vadot status = "disabled"; 619*b2d2a78aSEmmanuel Vadot 620*b2d2a78aSEmmanuel Vadot ports { 621*b2d2a78aSEmmanuel Vadot dp_in: port { 622*b2d2a78aSEmmanuel Vadot #address-cells = <1>; 623*b2d2a78aSEmmanuel Vadot #size-cells = <0>; 624*b2d2a78aSEmmanuel Vadot 625*b2d2a78aSEmmanuel Vadot dp_in_vopb: endpoint@0 { 626*b2d2a78aSEmmanuel Vadot reg = <0>; 627*b2d2a78aSEmmanuel Vadot remote-endpoint = <&vopb_out_dp>; 628*b2d2a78aSEmmanuel Vadot }; 629*b2d2a78aSEmmanuel Vadot 630*b2d2a78aSEmmanuel Vadot dp_in_vopl: endpoint@1 { 631*b2d2a78aSEmmanuel Vadot reg = <1>; 632*b2d2a78aSEmmanuel Vadot remote-endpoint = <&vopl_out_dp>; 633*b2d2a78aSEmmanuel Vadot }; 634*b2d2a78aSEmmanuel Vadot }; 635*b2d2a78aSEmmanuel Vadot }; 636*b2d2a78aSEmmanuel Vadot }; 637*b2d2a78aSEmmanuel Vadot 638*b2d2a78aSEmmanuel Vadot gic: interrupt-controller@fee00000 { 639*b2d2a78aSEmmanuel Vadot compatible = "arm,gic-v3"; 640*b2d2a78aSEmmanuel Vadot #interrupt-cells = <4>; 641*b2d2a78aSEmmanuel Vadot #address-cells = <2>; 642*b2d2a78aSEmmanuel Vadot #size-cells = <2>; 643*b2d2a78aSEmmanuel Vadot ranges; 644*b2d2a78aSEmmanuel Vadot interrupt-controller; 645*b2d2a78aSEmmanuel Vadot 646*b2d2a78aSEmmanuel Vadot reg = <0x0 0xfee00000 0 0x10000>, /* GICD */ 647*b2d2a78aSEmmanuel Vadot <0x0 0xfef00000 0 0xc0000>, /* GICR */ 648*b2d2a78aSEmmanuel Vadot <0x0 0xfff00000 0 0x10000>, /* GICC */ 649*b2d2a78aSEmmanuel Vadot <0x0 0xfff10000 0 0x10000>, /* GICH */ 650*b2d2a78aSEmmanuel Vadot <0x0 0xfff20000 0 0x10000>; /* GICV */ 651*b2d2a78aSEmmanuel Vadot interrupts = <GIC_PPI 9 IRQ_TYPE_LEVEL_HIGH 0>; 652*b2d2a78aSEmmanuel Vadot its: msi-controller@fee20000 { 653*b2d2a78aSEmmanuel Vadot compatible = "arm,gic-v3-its"; 654*b2d2a78aSEmmanuel Vadot msi-controller; 655*b2d2a78aSEmmanuel Vadot #msi-cells = <1>; 656*b2d2a78aSEmmanuel Vadot reg = <0x0 0xfee20000 0x0 0x20000>; 657*b2d2a78aSEmmanuel Vadot }; 658*b2d2a78aSEmmanuel Vadot 659*b2d2a78aSEmmanuel Vadot ppi-partitions { 660*b2d2a78aSEmmanuel Vadot ppi_cluster0: interrupt-partition-0 { 661*b2d2a78aSEmmanuel Vadot affinity = <&cpu_l0 &cpu_l1 &cpu_l2 &cpu_l3>; 662*b2d2a78aSEmmanuel Vadot }; 663*b2d2a78aSEmmanuel Vadot 664*b2d2a78aSEmmanuel Vadot ppi_cluster1: interrupt-partition-1 { 665*b2d2a78aSEmmanuel Vadot affinity = <&cpu_b0 &cpu_b1>; 666*b2d2a78aSEmmanuel Vadot }; 667*b2d2a78aSEmmanuel Vadot }; 668*b2d2a78aSEmmanuel Vadot }; 669*b2d2a78aSEmmanuel Vadot 670*b2d2a78aSEmmanuel Vadot saradc: saradc@ff100000 { 671*b2d2a78aSEmmanuel Vadot compatible = "rockchip,rk3399-saradc"; 672*b2d2a78aSEmmanuel Vadot reg = <0x0 0xff100000 0x0 0x100>; 673*b2d2a78aSEmmanuel Vadot interrupts = <GIC_SPI 62 IRQ_TYPE_LEVEL_HIGH 0>; 674*b2d2a78aSEmmanuel Vadot #io-channel-cells = <1>; 675*b2d2a78aSEmmanuel Vadot clocks = <&cru SCLK_SARADC>, <&cru PCLK_SARADC>; 676*b2d2a78aSEmmanuel Vadot clock-names = "saradc", "apb_pclk"; 677*b2d2a78aSEmmanuel Vadot resets = <&cru SRST_P_SARADC>; 678*b2d2a78aSEmmanuel Vadot reset-names = "saradc-apb"; 679*b2d2a78aSEmmanuel Vadot status = "disabled"; 680*b2d2a78aSEmmanuel Vadot }; 681*b2d2a78aSEmmanuel Vadot 682*b2d2a78aSEmmanuel Vadot crypto0: crypto@ff8b0000 { 683*b2d2a78aSEmmanuel Vadot compatible = "rockchip,rk3399-crypto"; 684*b2d2a78aSEmmanuel Vadot reg = <0x0 0xff8b0000 0x0 0x4000>; 685*b2d2a78aSEmmanuel Vadot interrupts = <GIC_SPI 0 IRQ_TYPE_LEVEL_HIGH 0>; 686*b2d2a78aSEmmanuel Vadot clocks = <&cru HCLK_M_CRYPTO0>, <&cru HCLK_S_CRYPTO0>, <&cru SCLK_CRYPTO0>; 687*b2d2a78aSEmmanuel Vadot clock-names = "hclk_master", "hclk_slave", "sclk"; 688*b2d2a78aSEmmanuel Vadot resets = <&cru SRST_CRYPTO0>, <&cru SRST_CRYPTO0_S>, <&cru SRST_CRYPTO0_M>; 689*b2d2a78aSEmmanuel Vadot reset-names = "master", "slave", "crypto-rst"; 690*b2d2a78aSEmmanuel Vadot }; 691*b2d2a78aSEmmanuel Vadot 692*b2d2a78aSEmmanuel Vadot crypto1: crypto@ff8b8000 { 693*b2d2a78aSEmmanuel Vadot compatible = "rockchip,rk3399-crypto"; 694*b2d2a78aSEmmanuel Vadot reg = <0x0 0xff8b8000 0x0 0x4000>; 695*b2d2a78aSEmmanuel Vadot interrupts = <GIC_SPI 135 IRQ_TYPE_LEVEL_HIGH 0>; 696*b2d2a78aSEmmanuel Vadot clocks = <&cru HCLK_M_CRYPTO1>, <&cru HCLK_S_CRYPTO1>, <&cru SCLK_CRYPTO1>; 697*b2d2a78aSEmmanuel Vadot clock-names = "hclk_master", "hclk_slave", "sclk"; 698*b2d2a78aSEmmanuel Vadot resets = <&cru SRST_CRYPTO1>, <&cru SRST_CRYPTO1_S>, <&cru SRST_CRYPTO1_M>; 699*b2d2a78aSEmmanuel Vadot reset-names = "master", "slave", "crypto-rst"; 700*b2d2a78aSEmmanuel Vadot }; 701*b2d2a78aSEmmanuel Vadot 702*b2d2a78aSEmmanuel Vadot i2c1: i2c@ff110000 { 703*b2d2a78aSEmmanuel Vadot compatible = "rockchip,rk3399-i2c"; 704*b2d2a78aSEmmanuel Vadot reg = <0x0 0xff110000 0x0 0x1000>; 705*b2d2a78aSEmmanuel Vadot assigned-clocks = <&cru SCLK_I2C1>; 706*b2d2a78aSEmmanuel Vadot assigned-clock-rates = <200000000>; 707*b2d2a78aSEmmanuel Vadot clocks = <&cru SCLK_I2C1>, <&cru PCLK_I2C1>; 708*b2d2a78aSEmmanuel Vadot clock-names = "i2c", "pclk"; 709*b2d2a78aSEmmanuel Vadot interrupts = <GIC_SPI 59 IRQ_TYPE_LEVEL_HIGH 0>; 710*b2d2a78aSEmmanuel Vadot pinctrl-names = "default"; 711*b2d2a78aSEmmanuel Vadot pinctrl-0 = <&i2c1_xfer>; 712*b2d2a78aSEmmanuel Vadot #address-cells = <1>; 713*b2d2a78aSEmmanuel Vadot #size-cells = <0>; 714*b2d2a78aSEmmanuel Vadot status = "disabled"; 715*b2d2a78aSEmmanuel Vadot }; 716*b2d2a78aSEmmanuel Vadot 717*b2d2a78aSEmmanuel Vadot i2c2: i2c@ff120000 { 718*b2d2a78aSEmmanuel Vadot compatible = "rockchip,rk3399-i2c"; 719*b2d2a78aSEmmanuel Vadot reg = <0x0 0xff120000 0x0 0x1000>; 720*b2d2a78aSEmmanuel Vadot assigned-clocks = <&cru SCLK_I2C2>; 721*b2d2a78aSEmmanuel Vadot assigned-clock-rates = <200000000>; 722*b2d2a78aSEmmanuel Vadot clocks = <&cru SCLK_I2C2>, <&cru PCLK_I2C2>; 723*b2d2a78aSEmmanuel Vadot clock-names = "i2c", "pclk"; 724*b2d2a78aSEmmanuel Vadot interrupts = <GIC_SPI 35 IRQ_TYPE_LEVEL_HIGH 0>; 725*b2d2a78aSEmmanuel Vadot pinctrl-names = "default"; 726*b2d2a78aSEmmanuel Vadot pinctrl-0 = <&i2c2_xfer>; 727*b2d2a78aSEmmanuel Vadot #address-cells = <1>; 728*b2d2a78aSEmmanuel Vadot #size-cells = <0>; 729*b2d2a78aSEmmanuel Vadot status = "disabled"; 730*b2d2a78aSEmmanuel Vadot }; 731*b2d2a78aSEmmanuel Vadot 732*b2d2a78aSEmmanuel Vadot i2c3: i2c@ff130000 { 733*b2d2a78aSEmmanuel Vadot compatible = "rockchip,rk3399-i2c"; 734*b2d2a78aSEmmanuel Vadot reg = <0x0 0xff130000 0x0 0x1000>; 735*b2d2a78aSEmmanuel Vadot assigned-clocks = <&cru SCLK_I2C3>; 736*b2d2a78aSEmmanuel Vadot assigned-clock-rates = <200000000>; 737*b2d2a78aSEmmanuel Vadot clocks = <&cru SCLK_I2C3>, <&cru PCLK_I2C3>; 738*b2d2a78aSEmmanuel Vadot clock-names = "i2c", "pclk"; 739*b2d2a78aSEmmanuel Vadot interrupts = <GIC_SPI 34 IRQ_TYPE_LEVEL_HIGH 0>; 740*b2d2a78aSEmmanuel Vadot pinctrl-names = "default"; 741*b2d2a78aSEmmanuel Vadot pinctrl-0 = <&i2c3_xfer>; 742*b2d2a78aSEmmanuel Vadot #address-cells = <1>; 743*b2d2a78aSEmmanuel Vadot #size-cells = <0>; 744*b2d2a78aSEmmanuel Vadot status = "disabled"; 745*b2d2a78aSEmmanuel Vadot }; 746*b2d2a78aSEmmanuel Vadot 747*b2d2a78aSEmmanuel Vadot i2c5: i2c@ff140000 { 748*b2d2a78aSEmmanuel Vadot compatible = "rockchip,rk3399-i2c"; 749*b2d2a78aSEmmanuel Vadot reg = <0x0 0xff140000 0x0 0x1000>; 750*b2d2a78aSEmmanuel Vadot assigned-clocks = <&cru SCLK_I2C5>; 751*b2d2a78aSEmmanuel Vadot assigned-clock-rates = <200000000>; 752*b2d2a78aSEmmanuel Vadot clocks = <&cru SCLK_I2C5>, <&cru PCLK_I2C5>; 753*b2d2a78aSEmmanuel Vadot clock-names = "i2c", "pclk"; 754*b2d2a78aSEmmanuel Vadot interrupts = <GIC_SPI 38 IRQ_TYPE_LEVEL_HIGH 0>; 755*b2d2a78aSEmmanuel Vadot pinctrl-names = "default"; 756*b2d2a78aSEmmanuel Vadot pinctrl-0 = <&i2c5_xfer>; 757*b2d2a78aSEmmanuel Vadot #address-cells = <1>; 758*b2d2a78aSEmmanuel Vadot #size-cells = <0>; 759*b2d2a78aSEmmanuel Vadot status = "disabled"; 760*b2d2a78aSEmmanuel Vadot }; 761*b2d2a78aSEmmanuel Vadot 762*b2d2a78aSEmmanuel Vadot i2c6: i2c@ff150000 { 763*b2d2a78aSEmmanuel Vadot compatible = "rockchip,rk3399-i2c"; 764*b2d2a78aSEmmanuel Vadot reg = <0x0 0xff150000 0x0 0x1000>; 765*b2d2a78aSEmmanuel Vadot assigned-clocks = <&cru SCLK_I2C6>; 766*b2d2a78aSEmmanuel Vadot assigned-clock-rates = <200000000>; 767*b2d2a78aSEmmanuel Vadot clocks = <&cru SCLK_I2C6>, <&cru PCLK_I2C6>; 768*b2d2a78aSEmmanuel Vadot clock-names = "i2c", "pclk"; 769*b2d2a78aSEmmanuel Vadot interrupts = <GIC_SPI 37 IRQ_TYPE_LEVEL_HIGH 0>; 770*b2d2a78aSEmmanuel Vadot pinctrl-names = "default"; 771*b2d2a78aSEmmanuel Vadot pinctrl-0 = <&i2c6_xfer>; 772*b2d2a78aSEmmanuel Vadot #address-cells = <1>; 773*b2d2a78aSEmmanuel Vadot #size-cells = <0>; 774*b2d2a78aSEmmanuel Vadot status = "disabled"; 775*b2d2a78aSEmmanuel Vadot }; 776*b2d2a78aSEmmanuel Vadot 777*b2d2a78aSEmmanuel Vadot i2c7: i2c@ff160000 { 778*b2d2a78aSEmmanuel Vadot compatible = "rockchip,rk3399-i2c"; 779*b2d2a78aSEmmanuel Vadot reg = <0x0 0xff160000 0x0 0x1000>; 780*b2d2a78aSEmmanuel Vadot assigned-clocks = <&cru SCLK_I2C7>; 781*b2d2a78aSEmmanuel Vadot assigned-clock-rates = <200000000>; 782*b2d2a78aSEmmanuel Vadot clocks = <&cru SCLK_I2C7>, <&cru PCLK_I2C7>; 783*b2d2a78aSEmmanuel Vadot clock-names = "i2c", "pclk"; 784*b2d2a78aSEmmanuel Vadot interrupts = <GIC_SPI 36 IRQ_TYPE_LEVEL_HIGH 0>; 785*b2d2a78aSEmmanuel Vadot pinctrl-names = "default"; 786*b2d2a78aSEmmanuel Vadot pinctrl-0 = <&i2c7_xfer>; 787*b2d2a78aSEmmanuel Vadot #address-cells = <1>; 788*b2d2a78aSEmmanuel Vadot #size-cells = <0>; 789*b2d2a78aSEmmanuel Vadot status = "disabled"; 790*b2d2a78aSEmmanuel Vadot }; 791*b2d2a78aSEmmanuel Vadot 792*b2d2a78aSEmmanuel Vadot uart0: serial@ff180000 { 793*b2d2a78aSEmmanuel Vadot compatible = "rockchip,rk3399-uart", "snps,dw-apb-uart"; 794*b2d2a78aSEmmanuel Vadot reg = <0x0 0xff180000 0x0 0x100>; 795*b2d2a78aSEmmanuel Vadot clocks = <&cru SCLK_UART0>, <&cru PCLK_UART0>; 796*b2d2a78aSEmmanuel Vadot clock-names = "baudclk", "apb_pclk"; 797*b2d2a78aSEmmanuel Vadot interrupts = <GIC_SPI 99 IRQ_TYPE_LEVEL_HIGH 0>; 798*b2d2a78aSEmmanuel Vadot reg-shift = <2>; 799*b2d2a78aSEmmanuel Vadot reg-io-width = <4>; 800*b2d2a78aSEmmanuel Vadot pinctrl-names = "default"; 801*b2d2a78aSEmmanuel Vadot pinctrl-0 = <&uart0_xfer>; 802*b2d2a78aSEmmanuel Vadot status = "disabled"; 803*b2d2a78aSEmmanuel Vadot }; 804*b2d2a78aSEmmanuel Vadot 805*b2d2a78aSEmmanuel Vadot uart1: serial@ff190000 { 806*b2d2a78aSEmmanuel Vadot compatible = "rockchip,rk3399-uart", "snps,dw-apb-uart"; 807*b2d2a78aSEmmanuel Vadot reg = <0x0 0xff190000 0x0 0x100>; 808*b2d2a78aSEmmanuel Vadot clocks = <&cru SCLK_UART1>, <&cru PCLK_UART1>; 809*b2d2a78aSEmmanuel Vadot clock-names = "baudclk", "apb_pclk"; 810*b2d2a78aSEmmanuel Vadot interrupts = <GIC_SPI 98 IRQ_TYPE_LEVEL_HIGH 0>; 811*b2d2a78aSEmmanuel Vadot reg-shift = <2>; 812*b2d2a78aSEmmanuel Vadot reg-io-width = <4>; 813*b2d2a78aSEmmanuel Vadot pinctrl-names = "default"; 814*b2d2a78aSEmmanuel Vadot pinctrl-0 = <&uart1_xfer>; 815*b2d2a78aSEmmanuel Vadot status = "disabled"; 816*b2d2a78aSEmmanuel Vadot }; 817*b2d2a78aSEmmanuel Vadot 818*b2d2a78aSEmmanuel Vadot uart2: serial@ff1a0000 { 819*b2d2a78aSEmmanuel Vadot compatible = "rockchip,rk3399-uart", "snps,dw-apb-uart"; 820*b2d2a78aSEmmanuel Vadot reg = <0x0 0xff1a0000 0x0 0x100>; 821*b2d2a78aSEmmanuel Vadot clocks = <&cru SCLK_UART2>, <&cru PCLK_UART2>; 822*b2d2a78aSEmmanuel Vadot clock-names = "baudclk", "apb_pclk"; 823*b2d2a78aSEmmanuel Vadot interrupts = <GIC_SPI 100 IRQ_TYPE_LEVEL_HIGH 0>; 824*b2d2a78aSEmmanuel Vadot reg-shift = <2>; 825*b2d2a78aSEmmanuel Vadot reg-io-width = <4>; 826*b2d2a78aSEmmanuel Vadot pinctrl-names = "default"; 827*b2d2a78aSEmmanuel Vadot pinctrl-0 = <&uart2c_xfer>; 828*b2d2a78aSEmmanuel Vadot status = "disabled"; 829*b2d2a78aSEmmanuel Vadot }; 830*b2d2a78aSEmmanuel Vadot 831*b2d2a78aSEmmanuel Vadot uart3: serial@ff1b0000 { 832*b2d2a78aSEmmanuel Vadot compatible = "rockchip,rk3399-uart", "snps,dw-apb-uart"; 833*b2d2a78aSEmmanuel Vadot reg = <0x0 0xff1b0000 0x0 0x100>; 834*b2d2a78aSEmmanuel Vadot clocks = <&cru SCLK_UART3>, <&cru PCLK_UART3>; 835*b2d2a78aSEmmanuel Vadot clock-names = "baudclk", "apb_pclk"; 836*b2d2a78aSEmmanuel Vadot interrupts = <GIC_SPI 101 IRQ_TYPE_LEVEL_HIGH 0>; 837*b2d2a78aSEmmanuel Vadot reg-shift = <2>; 838*b2d2a78aSEmmanuel Vadot reg-io-width = <4>; 839*b2d2a78aSEmmanuel Vadot pinctrl-names = "default"; 840*b2d2a78aSEmmanuel Vadot pinctrl-0 = <&uart3_xfer>; 841*b2d2a78aSEmmanuel Vadot status = "disabled"; 842*b2d2a78aSEmmanuel Vadot }; 843*b2d2a78aSEmmanuel Vadot 844*b2d2a78aSEmmanuel Vadot spi0: spi@ff1c0000 { 845*b2d2a78aSEmmanuel Vadot compatible = "rockchip,rk3399-spi", "rockchip,rk3066-spi"; 846*b2d2a78aSEmmanuel Vadot reg = <0x0 0xff1c0000 0x0 0x1000>; 847*b2d2a78aSEmmanuel Vadot clocks = <&cru SCLK_SPI0>, <&cru PCLK_SPI0>; 848*b2d2a78aSEmmanuel Vadot clock-names = "spiclk", "apb_pclk"; 849*b2d2a78aSEmmanuel Vadot interrupts = <GIC_SPI 68 IRQ_TYPE_LEVEL_HIGH 0>; 850*b2d2a78aSEmmanuel Vadot dmas = <&dmac_peri 10>, <&dmac_peri 11>; 851*b2d2a78aSEmmanuel Vadot dma-names = "tx", "rx"; 852*b2d2a78aSEmmanuel Vadot pinctrl-names = "default"; 853*b2d2a78aSEmmanuel Vadot pinctrl-0 = <&spi0_clk &spi0_tx &spi0_rx &spi0_cs0>; 854*b2d2a78aSEmmanuel Vadot #address-cells = <1>; 855*b2d2a78aSEmmanuel Vadot #size-cells = <0>; 856*b2d2a78aSEmmanuel Vadot status = "disabled"; 857*b2d2a78aSEmmanuel Vadot }; 858*b2d2a78aSEmmanuel Vadot 859*b2d2a78aSEmmanuel Vadot spi1: spi@ff1d0000 { 860*b2d2a78aSEmmanuel Vadot compatible = "rockchip,rk3399-spi", "rockchip,rk3066-spi"; 861*b2d2a78aSEmmanuel Vadot reg = <0x0 0xff1d0000 0x0 0x1000>; 862*b2d2a78aSEmmanuel Vadot clocks = <&cru SCLK_SPI1>, <&cru PCLK_SPI1>; 863*b2d2a78aSEmmanuel Vadot clock-names = "spiclk", "apb_pclk"; 864*b2d2a78aSEmmanuel Vadot interrupts = <GIC_SPI 53 IRQ_TYPE_LEVEL_HIGH 0>; 865*b2d2a78aSEmmanuel Vadot dmas = <&dmac_peri 12>, <&dmac_peri 13>; 866*b2d2a78aSEmmanuel Vadot dma-names = "tx", "rx"; 867*b2d2a78aSEmmanuel Vadot pinctrl-names = "default"; 868*b2d2a78aSEmmanuel Vadot pinctrl-0 = <&spi1_clk &spi1_tx &spi1_rx &spi1_cs0>; 869*b2d2a78aSEmmanuel Vadot #address-cells = <1>; 870*b2d2a78aSEmmanuel Vadot #size-cells = <0>; 871*b2d2a78aSEmmanuel Vadot status = "disabled"; 872*b2d2a78aSEmmanuel Vadot }; 873*b2d2a78aSEmmanuel Vadot 874*b2d2a78aSEmmanuel Vadot spi2: spi@ff1e0000 { 875*b2d2a78aSEmmanuel Vadot compatible = "rockchip,rk3399-spi", "rockchip,rk3066-spi"; 876*b2d2a78aSEmmanuel Vadot reg = <0x0 0xff1e0000 0x0 0x1000>; 877*b2d2a78aSEmmanuel Vadot clocks = <&cru SCLK_SPI2>, <&cru PCLK_SPI2>; 878*b2d2a78aSEmmanuel Vadot clock-names = "spiclk", "apb_pclk"; 879*b2d2a78aSEmmanuel Vadot interrupts = <GIC_SPI 52 IRQ_TYPE_LEVEL_HIGH 0>; 880*b2d2a78aSEmmanuel Vadot dmas = <&dmac_peri 14>, <&dmac_peri 15>; 881*b2d2a78aSEmmanuel Vadot dma-names = "tx", "rx"; 882*b2d2a78aSEmmanuel Vadot pinctrl-names = "default"; 883*b2d2a78aSEmmanuel Vadot pinctrl-0 = <&spi2_clk &spi2_tx &spi2_rx &spi2_cs0>; 884*b2d2a78aSEmmanuel Vadot #address-cells = <1>; 885*b2d2a78aSEmmanuel Vadot #size-cells = <0>; 886*b2d2a78aSEmmanuel Vadot status = "disabled"; 887*b2d2a78aSEmmanuel Vadot }; 888*b2d2a78aSEmmanuel Vadot 889*b2d2a78aSEmmanuel Vadot spi4: spi@ff1f0000 { 890*b2d2a78aSEmmanuel Vadot compatible = "rockchip,rk3399-spi", "rockchip,rk3066-spi"; 891*b2d2a78aSEmmanuel Vadot reg = <0x0 0xff1f0000 0x0 0x1000>; 892*b2d2a78aSEmmanuel Vadot clocks = <&cru SCLK_SPI4>, <&cru PCLK_SPI4>; 893*b2d2a78aSEmmanuel Vadot clock-names = "spiclk", "apb_pclk"; 894*b2d2a78aSEmmanuel Vadot interrupts = <GIC_SPI 67 IRQ_TYPE_LEVEL_HIGH 0>; 895*b2d2a78aSEmmanuel Vadot dmas = <&dmac_peri 18>, <&dmac_peri 19>; 896*b2d2a78aSEmmanuel Vadot dma-names = "tx", "rx"; 897*b2d2a78aSEmmanuel Vadot pinctrl-names = "default"; 898*b2d2a78aSEmmanuel Vadot pinctrl-0 = <&spi4_clk &spi4_tx &spi4_rx &spi4_cs0>; 899*b2d2a78aSEmmanuel Vadot #address-cells = <1>; 900*b2d2a78aSEmmanuel Vadot #size-cells = <0>; 901*b2d2a78aSEmmanuel Vadot status = "disabled"; 902*b2d2a78aSEmmanuel Vadot }; 903*b2d2a78aSEmmanuel Vadot 904*b2d2a78aSEmmanuel Vadot spi5: spi@ff200000 { 905*b2d2a78aSEmmanuel Vadot compatible = "rockchip,rk3399-spi", "rockchip,rk3066-spi"; 906*b2d2a78aSEmmanuel Vadot reg = <0x0 0xff200000 0x0 0x1000>; 907*b2d2a78aSEmmanuel Vadot clocks = <&cru SCLK_SPI5>, <&cru PCLK_SPI5>; 908*b2d2a78aSEmmanuel Vadot clock-names = "spiclk", "apb_pclk"; 909*b2d2a78aSEmmanuel Vadot interrupts = <GIC_SPI 132 IRQ_TYPE_LEVEL_HIGH 0>; 910*b2d2a78aSEmmanuel Vadot dmas = <&dmac_bus 8>, <&dmac_bus 9>; 911*b2d2a78aSEmmanuel Vadot dma-names = "tx", "rx"; 912*b2d2a78aSEmmanuel Vadot pinctrl-names = "default"; 913*b2d2a78aSEmmanuel Vadot pinctrl-0 = <&spi5_clk &spi5_tx &spi5_rx &spi5_cs0>; 914*b2d2a78aSEmmanuel Vadot power-domains = <&power RK3399_PD_SDIOAUDIO>; 915*b2d2a78aSEmmanuel Vadot #address-cells = <1>; 916*b2d2a78aSEmmanuel Vadot #size-cells = <0>; 917*b2d2a78aSEmmanuel Vadot status = "disabled"; 918*b2d2a78aSEmmanuel Vadot }; 919*b2d2a78aSEmmanuel Vadot 920*b2d2a78aSEmmanuel Vadot thermal_zones: thermal-zones { 921*b2d2a78aSEmmanuel Vadot cpu_thermal: cpu-thermal { 922*b2d2a78aSEmmanuel Vadot polling-delay-passive = <100>; 923*b2d2a78aSEmmanuel Vadot polling-delay = <1000>; 924*b2d2a78aSEmmanuel Vadot 925*b2d2a78aSEmmanuel Vadot thermal-sensors = <&tsadc 0>; 926*b2d2a78aSEmmanuel Vadot 927*b2d2a78aSEmmanuel Vadot trips { 928*b2d2a78aSEmmanuel Vadot cpu_alert0: cpu_alert0 { 929*b2d2a78aSEmmanuel Vadot temperature = <70000>; 930*b2d2a78aSEmmanuel Vadot hysteresis = <2000>; 931*b2d2a78aSEmmanuel Vadot type = "passive"; 932*b2d2a78aSEmmanuel Vadot }; 933*b2d2a78aSEmmanuel Vadot cpu_alert1: cpu_alert1 { 934*b2d2a78aSEmmanuel Vadot temperature = <75000>; 935*b2d2a78aSEmmanuel Vadot hysteresis = <2000>; 936*b2d2a78aSEmmanuel Vadot type = "passive"; 937*b2d2a78aSEmmanuel Vadot }; 938*b2d2a78aSEmmanuel Vadot cpu_crit: cpu_crit { 939*b2d2a78aSEmmanuel Vadot temperature = <95000>; 940*b2d2a78aSEmmanuel Vadot hysteresis = <2000>; 941*b2d2a78aSEmmanuel Vadot type = "critical"; 942*b2d2a78aSEmmanuel Vadot }; 943*b2d2a78aSEmmanuel Vadot }; 944*b2d2a78aSEmmanuel Vadot 945*b2d2a78aSEmmanuel Vadot cooling-maps { 946*b2d2a78aSEmmanuel Vadot map0 { 947*b2d2a78aSEmmanuel Vadot trip = <&cpu_alert0>; 948*b2d2a78aSEmmanuel Vadot cooling-device = 949*b2d2a78aSEmmanuel Vadot <&cpu_b0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 950*b2d2a78aSEmmanuel Vadot <&cpu_b1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 951*b2d2a78aSEmmanuel Vadot }; 952*b2d2a78aSEmmanuel Vadot map1 { 953*b2d2a78aSEmmanuel Vadot trip = <&cpu_alert1>; 954*b2d2a78aSEmmanuel Vadot cooling-device = 955*b2d2a78aSEmmanuel Vadot <&cpu_l0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 956*b2d2a78aSEmmanuel Vadot <&cpu_l1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 957*b2d2a78aSEmmanuel Vadot <&cpu_l2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 958*b2d2a78aSEmmanuel Vadot <&cpu_l3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 959*b2d2a78aSEmmanuel Vadot <&cpu_b0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 960*b2d2a78aSEmmanuel Vadot <&cpu_b1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 961*b2d2a78aSEmmanuel Vadot }; 962*b2d2a78aSEmmanuel Vadot }; 963*b2d2a78aSEmmanuel Vadot }; 964*b2d2a78aSEmmanuel Vadot 965*b2d2a78aSEmmanuel Vadot gpu_thermal: gpu-thermal { 966*b2d2a78aSEmmanuel Vadot polling-delay-passive = <100>; 967*b2d2a78aSEmmanuel Vadot polling-delay = <1000>; 968*b2d2a78aSEmmanuel Vadot 969*b2d2a78aSEmmanuel Vadot thermal-sensors = <&tsadc 1>; 970*b2d2a78aSEmmanuel Vadot 971*b2d2a78aSEmmanuel Vadot trips { 972*b2d2a78aSEmmanuel Vadot gpu_alert0: gpu_alert0 { 973*b2d2a78aSEmmanuel Vadot temperature = <75000>; 974*b2d2a78aSEmmanuel Vadot hysteresis = <2000>; 975*b2d2a78aSEmmanuel Vadot type = "passive"; 976*b2d2a78aSEmmanuel Vadot }; 977*b2d2a78aSEmmanuel Vadot gpu_crit: gpu_crit { 978*b2d2a78aSEmmanuel Vadot temperature = <95000>; 979*b2d2a78aSEmmanuel Vadot hysteresis = <2000>; 980*b2d2a78aSEmmanuel Vadot type = "critical"; 981*b2d2a78aSEmmanuel Vadot }; 982*b2d2a78aSEmmanuel Vadot }; 983*b2d2a78aSEmmanuel Vadot 984*b2d2a78aSEmmanuel Vadot cooling-maps { 985*b2d2a78aSEmmanuel Vadot map0 { 986*b2d2a78aSEmmanuel Vadot trip = <&gpu_alert0>; 987*b2d2a78aSEmmanuel Vadot cooling-device = 988*b2d2a78aSEmmanuel Vadot <&gpu THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 989*b2d2a78aSEmmanuel Vadot }; 990*b2d2a78aSEmmanuel Vadot }; 991*b2d2a78aSEmmanuel Vadot }; 992*b2d2a78aSEmmanuel Vadot }; 993*b2d2a78aSEmmanuel Vadot 994*b2d2a78aSEmmanuel Vadot tsadc: tsadc@ff260000 { 995*b2d2a78aSEmmanuel Vadot compatible = "rockchip,rk3399-tsadc"; 996*b2d2a78aSEmmanuel Vadot reg = <0x0 0xff260000 0x0 0x100>; 997*b2d2a78aSEmmanuel Vadot interrupts = <GIC_SPI 97 IRQ_TYPE_LEVEL_HIGH 0>; 998*b2d2a78aSEmmanuel Vadot assigned-clocks = <&cru SCLK_TSADC>; 999*b2d2a78aSEmmanuel Vadot assigned-clock-rates = <750000>; 1000*b2d2a78aSEmmanuel Vadot clocks = <&cru SCLK_TSADC>, <&cru PCLK_TSADC>; 1001*b2d2a78aSEmmanuel Vadot clock-names = "tsadc", "apb_pclk"; 1002*b2d2a78aSEmmanuel Vadot resets = <&cru SRST_TSADC>; 1003*b2d2a78aSEmmanuel Vadot reset-names = "tsadc-apb"; 1004*b2d2a78aSEmmanuel Vadot rockchip,grf = <&grf>; 1005*b2d2a78aSEmmanuel Vadot rockchip,hw-tshut-temp = <95000>; 1006*b2d2a78aSEmmanuel Vadot pinctrl-names = "init", "default", "sleep"; 1007*b2d2a78aSEmmanuel Vadot pinctrl-0 = <&otp_pin>; 1008*b2d2a78aSEmmanuel Vadot pinctrl-1 = <&otp_out>; 1009*b2d2a78aSEmmanuel Vadot pinctrl-2 = <&otp_pin>; 1010*b2d2a78aSEmmanuel Vadot #thermal-sensor-cells = <1>; 1011*b2d2a78aSEmmanuel Vadot status = "disabled"; 1012*b2d2a78aSEmmanuel Vadot }; 1013*b2d2a78aSEmmanuel Vadot 1014*b2d2a78aSEmmanuel Vadot qos_emmc: qos@ffa58000 { 1015*b2d2a78aSEmmanuel Vadot compatible = "rockchip,rk3399-qos", "syscon"; 1016*b2d2a78aSEmmanuel Vadot reg = <0x0 0xffa58000 0x0 0x20>; 1017*b2d2a78aSEmmanuel Vadot }; 1018*b2d2a78aSEmmanuel Vadot 1019*b2d2a78aSEmmanuel Vadot qos_gmac: qos@ffa5c000 { 1020*b2d2a78aSEmmanuel Vadot compatible = "rockchip,rk3399-qos", "syscon"; 1021*b2d2a78aSEmmanuel Vadot reg = <0x0 0xffa5c000 0x0 0x20>; 1022*b2d2a78aSEmmanuel Vadot }; 1023*b2d2a78aSEmmanuel Vadot 1024*b2d2a78aSEmmanuel Vadot qos_pcie: qos@ffa60080 { 1025*b2d2a78aSEmmanuel Vadot compatible = "rockchip,rk3399-qos", "syscon"; 1026*b2d2a78aSEmmanuel Vadot reg = <0x0 0xffa60080 0x0 0x20>; 1027*b2d2a78aSEmmanuel Vadot }; 1028*b2d2a78aSEmmanuel Vadot 1029*b2d2a78aSEmmanuel Vadot qos_usb_host0: qos@ffa60100 { 1030*b2d2a78aSEmmanuel Vadot compatible = "rockchip,rk3399-qos", "syscon"; 1031*b2d2a78aSEmmanuel Vadot reg = <0x0 0xffa60100 0x0 0x20>; 1032*b2d2a78aSEmmanuel Vadot }; 1033*b2d2a78aSEmmanuel Vadot 1034*b2d2a78aSEmmanuel Vadot qos_usb_host1: qos@ffa60180 { 1035*b2d2a78aSEmmanuel Vadot compatible = "rockchip,rk3399-qos", "syscon"; 1036*b2d2a78aSEmmanuel Vadot reg = <0x0 0xffa60180 0x0 0x20>; 1037*b2d2a78aSEmmanuel Vadot }; 1038*b2d2a78aSEmmanuel Vadot 1039*b2d2a78aSEmmanuel Vadot qos_usb_otg0: qos@ffa70000 { 1040*b2d2a78aSEmmanuel Vadot compatible = "rockchip,rk3399-qos", "syscon"; 1041*b2d2a78aSEmmanuel Vadot reg = <0x0 0xffa70000 0x0 0x20>; 1042*b2d2a78aSEmmanuel Vadot }; 1043*b2d2a78aSEmmanuel Vadot 1044*b2d2a78aSEmmanuel Vadot qos_usb_otg1: qos@ffa70080 { 1045*b2d2a78aSEmmanuel Vadot compatible = "rockchip,rk3399-qos", "syscon"; 1046*b2d2a78aSEmmanuel Vadot reg = <0x0 0xffa70080 0x0 0x20>; 1047*b2d2a78aSEmmanuel Vadot }; 1048*b2d2a78aSEmmanuel Vadot 1049*b2d2a78aSEmmanuel Vadot qos_sd: qos@ffa74000 { 1050*b2d2a78aSEmmanuel Vadot compatible = "rockchip,rk3399-qos", "syscon"; 1051*b2d2a78aSEmmanuel Vadot reg = <0x0 0xffa74000 0x0 0x20>; 1052*b2d2a78aSEmmanuel Vadot }; 1053*b2d2a78aSEmmanuel Vadot 1054*b2d2a78aSEmmanuel Vadot qos_sdioaudio: qos@ffa76000 { 1055*b2d2a78aSEmmanuel Vadot compatible = "rockchip,rk3399-qos", "syscon"; 1056*b2d2a78aSEmmanuel Vadot reg = <0x0 0xffa76000 0x0 0x20>; 1057*b2d2a78aSEmmanuel Vadot }; 1058*b2d2a78aSEmmanuel Vadot 1059*b2d2a78aSEmmanuel Vadot qos_hdcp: qos@ffa90000 { 1060*b2d2a78aSEmmanuel Vadot compatible = "rockchip,rk3399-qos", "syscon"; 1061*b2d2a78aSEmmanuel Vadot reg = <0x0 0xffa90000 0x0 0x20>; 1062*b2d2a78aSEmmanuel Vadot }; 1063*b2d2a78aSEmmanuel Vadot 1064*b2d2a78aSEmmanuel Vadot qos_iep: qos@ffa98000 { 1065*b2d2a78aSEmmanuel Vadot compatible = "rockchip,rk3399-qos", "syscon"; 1066*b2d2a78aSEmmanuel Vadot reg = <0x0 0xffa98000 0x0 0x20>; 1067*b2d2a78aSEmmanuel Vadot }; 1068*b2d2a78aSEmmanuel Vadot 1069*b2d2a78aSEmmanuel Vadot qos_isp0_m0: qos@ffaa0000 { 1070*b2d2a78aSEmmanuel Vadot compatible = "rockchip,rk3399-qos", "syscon"; 1071*b2d2a78aSEmmanuel Vadot reg = <0x0 0xffaa0000 0x0 0x20>; 1072*b2d2a78aSEmmanuel Vadot }; 1073*b2d2a78aSEmmanuel Vadot 1074*b2d2a78aSEmmanuel Vadot qos_isp0_m1: qos@ffaa0080 { 1075*b2d2a78aSEmmanuel Vadot compatible = "rockchip,rk3399-qos", "syscon"; 1076*b2d2a78aSEmmanuel Vadot reg = <0x0 0xffaa0080 0x0 0x20>; 1077*b2d2a78aSEmmanuel Vadot }; 1078*b2d2a78aSEmmanuel Vadot 1079*b2d2a78aSEmmanuel Vadot qos_isp1_m0: qos@ffaa8000 { 1080*b2d2a78aSEmmanuel Vadot compatible = "rockchip,rk3399-qos", "syscon"; 1081*b2d2a78aSEmmanuel Vadot reg = <0x0 0xffaa8000 0x0 0x20>; 1082*b2d2a78aSEmmanuel Vadot }; 1083*b2d2a78aSEmmanuel Vadot 1084*b2d2a78aSEmmanuel Vadot qos_isp1_m1: qos@ffaa8080 { 1085*b2d2a78aSEmmanuel Vadot compatible = "rockchip,rk3399-qos", "syscon"; 1086*b2d2a78aSEmmanuel Vadot reg = <0x0 0xffaa8080 0x0 0x20>; 1087*b2d2a78aSEmmanuel Vadot }; 1088*b2d2a78aSEmmanuel Vadot 1089*b2d2a78aSEmmanuel Vadot qos_rga_r: qos@ffab0000 { 1090*b2d2a78aSEmmanuel Vadot compatible = "rockchip,rk3399-qos", "syscon"; 1091*b2d2a78aSEmmanuel Vadot reg = <0x0 0xffab0000 0x0 0x20>; 1092*b2d2a78aSEmmanuel Vadot }; 1093*b2d2a78aSEmmanuel Vadot 1094*b2d2a78aSEmmanuel Vadot qos_rga_w: qos@ffab0080 { 1095*b2d2a78aSEmmanuel Vadot compatible = "rockchip,rk3399-qos", "syscon"; 1096*b2d2a78aSEmmanuel Vadot reg = <0x0 0xffab0080 0x0 0x20>; 1097*b2d2a78aSEmmanuel Vadot }; 1098*b2d2a78aSEmmanuel Vadot 1099*b2d2a78aSEmmanuel Vadot qos_video_m0: qos@ffab8000 { 1100*b2d2a78aSEmmanuel Vadot compatible = "rockchip,rk3399-qos", "syscon"; 1101*b2d2a78aSEmmanuel Vadot reg = <0x0 0xffab8000 0x0 0x20>; 1102*b2d2a78aSEmmanuel Vadot }; 1103*b2d2a78aSEmmanuel Vadot 1104*b2d2a78aSEmmanuel Vadot qos_video_m1_r: qos@ffac0000 { 1105*b2d2a78aSEmmanuel Vadot compatible = "rockchip,rk3399-qos", "syscon"; 1106*b2d2a78aSEmmanuel Vadot reg = <0x0 0xffac0000 0x0 0x20>; 1107*b2d2a78aSEmmanuel Vadot }; 1108*b2d2a78aSEmmanuel Vadot 1109*b2d2a78aSEmmanuel Vadot qos_video_m1_w: qos@ffac0080 { 1110*b2d2a78aSEmmanuel Vadot compatible = "rockchip,rk3399-qos", "syscon"; 1111*b2d2a78aSEmmanuel Vadot reg = <0x0 0xffac0080 0x0 0x20>; 1112*b2d2a78aSEmmanuel Vadot }; 1113*b2d2a78aSEmmanuel Vadot 1114*b2d2a78aSEmmanuel Vadot qos_vop_big_r: qos@ffac8000 { 1115*b2d2a78aSEmmanuel Vadot compatible = "rockchip,rk3399-qos", "syscon"; 1116*b2d2a78aSEmmanuel Vadot reg = <0x0 0xffac8000 0x0 0x20>; 1117*b2d2a78aSEmmanuel Vadot }; 1118*b2d2a78aSEmmanuel Vadot 1119*b2d2a78aSEmmanuel Vadot qos_vop_big_w: qos@ffac8080 { 1120*b2d2a78aSEmmanuel Vadot compatible = "rockchip,rk3399-qos", "syscon"; 1121*b2d2a78aSEmmanuel Vadot reg = <0x0 0xffac8080 0x0 0x20>; 1122*b2d2a78aSEmmanuel Vadot }; 1123*b2d2a78aSEmmanuel Vadot 1124*b2d2a78aSEmmanuel Vadot qos_vop_little: qos@ffad0000 { 1125*b2d2a78aSEmmanuel Vadot compatible = "rockchip,rk3399-qos", "syscon"; 1126*b2d2a78aSEmmanuel Vadot reg = <0x0 0xffad0000 0x0 0x20>; 1127*b2d2a78aSEmmanuel Vadot }; 1128*b2d2a78aSEmmanuel Vadot 1129*b2d2a78aSEmmanuel Vadot qos_perihp: qos@ffad8080 { 1130*b2d2a78aSEmmanuel Vadot compatible = "rockchip,rk3399-qos", "syscon"; 1131*b2d2a78aSEmmanuel Vadot reg = <0x0 0xffad8080 0x0 0x20>; 1132*b2d2a78aSEmmanuel Vadot }; 1133*b2d2a78aSEmmanuel Vadot 1134*b2d2a78aSEmmanuel Vadot qos_gpu: qos@ffae0000 { 1135*b2d2a78aSEmmanuel Vadot compatible = "rockchip,rk3399-qos", "syscon"; 1136*b2d2a78aSEmmanuel Vadot reg = <0x0 0xffae0000 0x0 0x20>; 1137*b2d2a78aSEmmanuel Vadot }; 1138*b2d2a78aSEmmanuel Vadot 1139*b2d2a78aSEmmanuel Vadot pmu: power-management@ff310000 { 1140*b2d2a78aSEmmanuel Vadot compatible = "rockchip,rk3399-pmu", "syscon", "simple-mfd"; 1141*b2d2a78aSEmmanuel Vadot reg = <0x0 0xff310000 0x0 0x1000>; 1142*b2d2a78aSEmmanuel Vadot 1143*b2d2a78aSEmmanuel Vadot /* 1144*b2d2a78aSEmmanuel Vadot * Note: RK3399 supports 6 voltage domains including VD_CORE_L, 1145*b2d2a78aSEmmanuel Vadot * VD_CORE_B, VD_CENTER, VD_GPU, VD_LOGIC and VD_PMU. 1146*b2d2a78aSEmmanuel Vadot * Some of the power domains are grouped together for every 1147*b2d2a78aSEmmanuel Vadot * voltage domain. 1148*b2d2a78aSEmmanuel Vadot * The detail contents as below. 1149*b2d2a78aSEmmanuel Vadot */ 1150*b2d2a78aSEmmanuel Vadot power: power-controller { 1151*b2d2a78aSEmmanuel Vadot compatible = "rockchip,rk3399-power-controller"; 1152*b2d2a78aSEmmanuel Vadot #power-domain-cells = <1>; 1153*b2d2a78aSEmmanuel Vadot #address-cells = <1>; 1154*b2d2a78aSEmmanuel Vadot #size-cells = <0>; 1155*b2d2a78aSEmmanuel Vadot 1156*b2d2a78aSEmmanuel Vadot /* These power domains are grouped by VD_CENTER */ 1157*b2d2a78aSEmmanuel Vadot power-domain@RK3399_PD_IEP { 1158*b2d2a78aSEmmanuel Vadot reg = <RK3399_PD_IEP>; 1159*b2d2a78aSEmmanuel Vadot clocks = <&cru ACLK_IEP>, 1160*b2d2a78aSEmmanuel Vadot <&cru HCLK_IEP>; 1161*b2d2a78aSEmmanuel Vadot pm_qos = <&qos_iep>; 1162*b2d2a78aSEmmanuel Vadot #power-domain-cells = <0>; 1163*b2d2a78aSEmmanuel Vadot }; 1164*b2d2a78aSEmmanuel Vadot power-domain@RK3399_PD_RGA { 1165*b2d2a78aSEmmanuel Vadot reg = <RK3399_PD_RGA>; 1166*b2d2a78aSEmmanuel Vadot clocks = <&cru ACLK_RGA>, 1167*b2d2a78aSEmmanuel Vadot <&cru HCLK_RGA>; 1168*b2d2a78aSEmmanuel Vadot pm_qos = <&qos_rga_r>, 1169*b2d2a78aSEmmanuel Vadot <&qos_rga_w>; 1170*b2d2a78aSEmmanuel Vadot #power-domain-cells = <0>; 1171*b2d2a78aSEmmanuel Vadot }; 1172*b2d2a78aSEmmanuel Vadot power-domain@RK3399_PD_VCODEC { 1173*b2d2a78aSEmmanuel Vadot reg = <RK3399_PD_VCODEC>; 1174*b2d2a78aSEmmanuel Vadot clocks = <&cru ACLK_VCODEC>, 1175*b2d2a78aSEmmanuel Vadot <&cru HCLK_VCODEC>; 1176*b2d2a78aSEmmanuel Vadot pm_qos = <&qos_video_m0>; 1177*b2d2a78aSEmmanuel Vadot #power-domain-cells = <0>; 1178*b2d2a78aSEmmanuel Vadot }; 1179*b2d2a78aSEmmanuel Vadot power-domain@RK3399_PD_VDU { 1180*b2d2a78aSEmmanuel Vadot reg = <RK3399_PD_VDU>; 1181*b2d2a78aSEmmanuel Vadot clocks = <&cru ACLK_VDU>, 1182*b2d2a78aSEmmanuel Vadot <&cru HCLK_VDU>, 1183*b2d2a78aSEmmanuel Vadot <&cru SCLK_VDU_CA>, 1184*b2d2a78aSEmmanuel Vadot <&cru SCLK_VDU_CORE>; 1185*b2d2a78aSEmmanuel Vadot pm_qos = <&qos_video_m1_r>, 1186*b2d2a78aSEmmanuel Vadot <&qos_video_m1_w>; 1187*b2d2a78aSEmmanuel Vadot #power-domain-cells = <0>; 1188*b2d2a78aSEmmanuel Vadot }; 1189*b2d2a78aSEmmanuel Vadot 1190*b2d2a78aSEmmanuel Vadot /* These power domains are grouped by VD_GPU */ 1191*b2d2a78aSEmmanuel Vadot power-domain@RK3399_PD_GPU { 1192*b2d2a78aSEmmanuel Vadot reg = <RK3399_PD_GPU>; 1193*b2d2a78aSEmmanuel Vadot clocks = <&cru ACLK_GPU>; 1194*b2d2a78aSEmmanuel Vadot pm_qos = <&qos_gpu>; 1195*b2d2a78aSEmmanuel Vadot #power-domain-cells = <0>; 1196*b2d2a78aSEmmanuel Vadot }; 1197*b2d2a78aSEmmanuel Vadot 1198*b2d2a78aSEmmanuel Vadot /* These power domains are grouped by VD_LOGIC */ 1199*b2d2a78aSEmmanuel Vadot power-domain@RK3399_PD_EDP { 1200*b2d2a78aSEmmanuel Vadot reg = <RK3399_PD_EDP>; 1201*b2d2a78aSEmmanuel Vadot clocks = <&cru PCLK_EDP_CTRL>; 1202*b2d2a78aSEmmanuel Vadot #power-domain-cells = <0>; 1203*b2d2a78aSEmmanuel Vadot }; 1204*b2d2a78aSEmmanuel Vadot power-domain@RK3399_PD_EMMC { 1205*b2d2a78aSEmmanuel Vadot reg = <RK3399_PD_EMMC>; 1206*b2d2a78aSEmmanuel Vadot clocks = <&cru ACLK_EMMC>; 1207*b2d2a78aSEmmanuel Vadot pm_qos = <&qos_emmc>; 1208*b2d2a78aSEmmanuel Vadot #power-domain-cells = <0>; 1209*b2d2a78aSEmmanuel Vadot }; 1210*b2d2a78aSEmmanuel Vadot power-domain@RK3399_PD_GMAC { 1211*b2d2a78aSEmmanuel Vadot reg = <RK3399_PD_GMAC>; 1212*b2d2a78aSEmmanuel Vadot clocks = <&cru ACLK_GMAC>, 1213*b2d2a78aSEmmanuel Vadot <&cru PCLK_GMAC>; 1214*b2d2a78aSEmmanuel Vadot pm_qos = <&qos_gmac>; 1215*b2d2a78aSEmmanuel Vadot #power-domain-cells = <0>; 1216*b2d2a78aSEmmanuel Vadot }; 1217*b2d2a78aSEmmanuel Vadot power-domain@RK3399_PD_SD { 1218*b2d2a78aSEmmanuel Vadot reg = <RK3399_PD_SD>; 1219*b2d2a78aSEmmanuel Vadot clocks = <&cru HCLK_SDMMC>, 1220*b2d2a78aSEmmanuel Vadot <&cru SCLK_SDMMC>; 1221*b2d2a78aSEmmanuel Vadot pm_qos = <&qos_sd>; 1222*b2d2a78aSEmmanuel Vadot #power-domain-cells = <0>; 1223*b2d2a78aSEmmanuel Vadot }; 1224*b2d2a78aSEmmanuel Vadot power-domain@RK3399_PD_SDIOAUDIO { 1225*b2d2a78aSEmmanuel Vadot reg = <RK3399_PD_SDIOAUDIO>; 1226*b2d2a78aSEmmanuel Vadot clocks = <&cru HCLK_SDIO>; 1227*b2d2a78aSEmmanuel Vadot pm_qos = <&qos_sdioaudio>; 1228*b2d2a78aSEmmanuel Vadot #power-domain-cells = <0>; 1229*b2d2a78aSEmmanuel Vadot }; 1230*b2d2a78aSEmmanuel Vadot power-domain@RK3399_PD_TCPD0 { 1231*b2d2a78aSEmmanuel Vadot reg = <RK3399_PD_TCPD0>; 1232*b2d2a78aSEmmanuel Vadot clocks = <&cru SCLK_UPHY0_TCPDCORE>, 1233*b2d2a78aSEmmanuel Vadot <&cru SCLK_UPHY0_TCPDPHY_REF>; 1234*b2d2a78aSEmmanuel Vadot #power-domain-cells = <0>; 1235*b2d2a78aSEmmanuel Vadot }; 1236*b2d2a78aSEmmanuel Vadot power-domain@RK3399_PD_TCPD1 { 1237*b2d2a78aSEmmanuel Vadot reg = <RK3399_PD_TCPD1>; 1238*b2d2a78aSEmmanuel Vadot clocks = <&cru SCLK_UPHY1_TCPDCORE>, 1239*b2d2a78aSEmmanuel Vadot <&cru SCLK_UPHY1_TCPDPHY_REF>; 1240*b2d2a78aSEmmanuel Vadot #power-domain-cells = <0>; 1241*b2d2a78aSEmmanuel Vadot }; 1242*b2d2a78aSEmmanuel Vadot power-domain@RK3399_PD_USB3 { 1243*b2d2a78aSEmmanuel Vadot reg = <RK3399_PD_USB3>; 1244*b2d2a78aSEmmanuel Vadot clocks = <&cru ACLK_USB3>; 1245*b2d2a78aSEmmanuel Vadot pm_qos = <&qos_usb_otg0>, 1246*b2d2a78aSEmmanuel Vadot <&qos_usb_otg1>; 1247*b2d2a78aSEmmanuel Vadot #power-domain-cells = <0>; 1248*b2d2a78aSEmmanuel Vadot }; 1249*b2d2a78aSEmmanuel Vadot power-domain@RK3399_PD_VIO { 1250*b2d2a78aSEmmanuel Vadot reg = <RK3399_PD_VIO>; 1251*b2d2a78aSEmmanuel Vadot #power-domain-cells = <1>; 1252*b2d2a78aSEmmanuel Vadot #address-cells = <1>; 1253*b2d2a78aSEmmanuel Vadot #size-cells = <0>; 1254*b2d2a78aSEmmanuel Vadot 1255*b2d2a78aSEmmanuel Vadot power-domain@RK3399_PD_HDCP { 1256*b2d2a78aSEmmanuel Vadot reg = <RK3399_PD_HDCP>; 1257*b2d2a78aSEmmanuel Vadot clocks = <&cru ACLK_HDCP>, 1258*b2d2a78aSEmmanuel Vadot <&cru HCLK_HDCP>, 1259*b2d2a78aSEmmanuel Vadot <&cru PCLK_HDCP>; 1260*b2d2a78aSEmmanuel Vadot pm_qos = <&qos_hdcp>; 1261*b2d2a78aSEmmanuel Vadot #power-domain-cells = <0>; 1262*b2d2a78aSEmmanuel Vadot }; 1263*b2d2a78aSEmmanuel Vadot power-domain@RK3399_PD_ISP0 { 1264*b2d2a78aSEmmanuel Vadot reg = <RK3399_PD_ISP0>; 1265*b2d2a78aSEmmanuel Vadot clocks = <&cru ACLK_ISP0>, 1266*b2d2a78aSEmmanuel Vadot <&cru HCLK_ISP0>; 1267*b2d2a78aSEmmanuel Vadot pm_qos = <&qos_isp0_m0>, 1268*b2d2a78aSEmmanuel Vadot <&qos_isp0_m1>; 1269*b2d2a78aSEmmanuel Vadot #power-domain-cells = <0>; 1270*b2d2a78aSEmmanuel Vadot }; 1271*b2d2a78aSEmmanuel Vadot power-domain@RK3399_PD_ISP1 { 1272*b2d2a78aSEmmanuel Vadot reg = <RK3399_PD_ISP1>; 1273*b2d2a78aSEmmanuel Vadot clocks = <&cru ACLK_ISP1>, 1274*b2d2a78aSEmmanuel Vadot <&cru HCLK_ISP1>; 1275*b2d2a78aSEmmanuel Vadot pm_qos = <&qos_isp1_m0>, 1276*b2d2a78aSEmmanuel Vadot <&qos_isp1_m1>; 1277*b2d2a78aSEmmanuel Vadot #power-domain-cells = <0>; 1278*b2d2a78aSEmmanuel Vadot }; 1279*b2d2a78aSEmmanuel Vadot power-domain@RK3399_PD_VO { 1280*b2d2a78aSEmmanuel Vadot reg = <RK3399_PD_VO>; 1281*b2d2a78aSEmmanuel Vadot #power-domain-cells = <1>; 1282*b2d2a78aSEmmanuel Vadot #address-cells = <1>; 1283*b2d2a78aSEmmanuel Vadot #size-cells = <0>; 1284*b2d2a78aSEmmanuel Vadot 1285*b2d2a78aSEmmanuel Vadot power-domain@RK3399_PD_VOPB { 1286*b2d2a78aSEmmanuel Vadot reg = <RK3399_PD_VOPB>; 1287*b2d2a78aSEmmanuel Vadot clocks = <&cru ACLK_VOP0>, 1288*b2d2a78aSEmmanuel Vadot <&cru HCLK_VOP0>; 1289*b2d2a78aSEmmanuel Vadot pm_qos = <&qos_vop_big_r>, 1290*b2d2a78aSEmmanuel Vadot <&qos_vop_big_w>; 1291*b2d2a78aSEmmanuel Vadot #power-domain-cells = <0>; 1292*b2d2a78aSEmmanuel Vadot }; 1293*b2d2a78aSEmmanuel Vadot power-domain@RK3399_PD_VOPL { 1294*b2d2a78aSEmmanuel Vadot reg = <RK3399_PD_VOPL>; 1295*b2d2a78aSEmmanuel Vadot clocks = <&cru ACLK_VOP1>, 1296*b2d2a78aSEmmanuel Vadot <&cru HCLK_VOP1>; 1297*b2d2a78aSEmmanuel Vadot pm_qos = <&qos_vop_little>; 1298*b2d2a78aSEmmanuel Vadot #power-domain-cells = <0>; 1299*b2d2a78aSEmmanuel Vadot }; 1300*b2d2a78aSEmmanuel Vadot }; 1301*b2d2a78aSEmmanuel Vadot }; 1302*b2d2a78aSEmmanuel Vadot }; 1303*b2d2a78aSEmmanuel Vadot }; 1304*b2d2a78aSEmmanuel Vadot 1305*b2d2a78aSEmmanuel Vadot pmugrf: syscon@ff320000 { 1306*b2d2a78aSEmmanuel Vadot compatible = "rockchip,rk3399-pmugrf", "syscon", "simple-mfd"; 1307*b2d2a78aSEmmanuel Vadot reg = <0x0 0xff320000 0x0 0x1000>; 1308*b2d2a78aSEmmanuel Vadot 1309*b2d2a78aSEmmanuel Vadot pmu_io_domains: io-domains { 1310*b2d2a78aSEmmanuel Vadot compatible = "rockchip,rk3399-pmu-io-voltage-domain"; 1311*b2d2a78aSEmmanuel Vadot status = "disabled"; 1312*b2d2a78aSEmmanuel Vadot }; 1313*b2d2a78aSEmmanuel Vadot }; 1314*b2d2a78aSEmmanuel Vadot 1315*b2d2a78aSEmmanuel Vadot spi3: spi@ff350000 { 1316*b2d2a78aSEmmanuel Vadot compatible = "rockchip,rk3399-spi", "rockchip,rk3066-spi"; 1317*b2d2a78aSEmmanuel Vadot reg = <0x0 0xff350000 0x0 0x1000>; 1318*b2d2a78aSEmmanuel Vadot clocks = <&pmucru SCLK_SPI3_PMU>, <&pmucru PCLK_SPI3_PMU>; 1319*b2d2a78aSEmmanuel Vadot clock-names = "spiclk", "apb_pclk"; 1320*b2d2a78aSEmmanuel Vadot interrupts = <GIC_SPI 60 IRQ_TYPE_LEVEL_HIGH 0>; 1321*b2d2a78aSEmmanuel Vadot pinctrl-names = "default"; 1322*b2d2a78aSEmmanuel Vadot pinctrl-0 = <&spi3_clk &spi3_tx &spi3_rx &spi3_cs0>; 1323*b2d2a78aSEmmanuel Vadot #address-cells = <1>; 1324*b2d2a78aSEmmanuel Vadot #size-cells = <0>; 1325*b2d2a78aSEmmanuel Vadot status = "disabled"; 1326*b2d2a78aSEmmanuel Vadot }; 1327*b2d2a78aSEmmanuel Vadot 1328*b2d2a78aSEmmanuel Vadot uart4: serial@ff370000 { 1329*b2d2a78aSEmmanuel Vadot compatible = "rockchip,rk3399-uart", "snps,dw-apb-uart"; 1330*b2d2a78aSEmmanuel Vadot reg = <0x0 0xff370000 0x0 0x100>; 1331*b2d2a78aSEmmanuel Vadot clocks = <&pmucru SCLK_UART4_PMU>, <&pmucru PCLK_UART4_PMU>; 1332*b2d2a78aSEmmanuel Vadot clock-names = "baudclk", "apb_pclk"; 1333*b2d2a78aSEmmanuel Vadot interrupts = <GIC_SPI 102 IRQ_TYPE_LEVEL_HIGH 0>; 1334*b2d2a78aSEmmanuel Vadot reg-shift = <2>; 1335*b2d2a78aSEmmanuel Vadot reg-io-width = <4>; 1336*b2d2a78aSEmmanuel Vadot pinctrl-names = "default"; 1337*b2d2a78aSEmmanuel Vadot pinctrl-0 = <&uart4_xfer>; 1338*b2d2a78aSEmmanuel Vadot status = "disabled"; 1339*b2d2a78aSEmmanuel Vadot }; 1340*b2d2a78aSEmmanuel Vadot 1341*b2d2a78aSEmmanuel Vadot i2c0: i2c@ff3c0000 { 1342*b2d2a78aSEmmanuel Vadot compatible = "rockchip,rk3399-i2c"; 1343*b2d2a78aSEmmanuel Vadot reg = <0x0 0xff3c0000 0x0 0x1000>; 1344*b2d2a78aSEmmanuel Vadot assigned-clocks = <&pmucru SCLK_I2C0_PMU>; 1345*b2d2a78aSEmmanuel Vadot assigned-clock-rates = <200000000>; 1346*b2d2a78aSEmmanuel Vadot clocks = <&pmucru SCLK_I2C0_PMU>, <&pmucru PCLK_I2C0_PMU>; 1347*b2d2a78aSEmmanuel Vadot clock-names = "i2c", "pclk"; 1348*b2d2a78aSEmmanuel Vadot interrupts = <GIC_SPI 57 IRQ_TYPE_LEVEL_HIGH 0>; 1349*b2d2a78aSEmmanuel Vadot pinctrl-names = "default"; 1350*b2d2a78aSEmmanuel Vadot pinctrl-0 = <&i2c0_xfer>; 1351*b2d2a78aSEmmanuel Vadot #address-cells = <1>; 1352*b2d2a78aSEmmanuel Vadot #size-cells = <0>; 1353*b2d2a78aSEmmanuel Vadot status = "disabled"; 1354*b2d2a78aSEmmanuel Vadot }; 1355*b2d2a78aSEmmanuel Vadot 1356*b2d2a78aSEmmanuel Vadot i2c4: i2c@ff3d0000 { 1357*b2d2a78aSEmmanuel Vadot compatible = "rockchip,rk3399-i2c"; 1358*b2d2a78aSEmmanuel Vadot reg = <0x0 0xff3d0000 0x0 0x1000>; 1359*b2d2a78aSEmmanuel Vadot assigned-clocks = <&pmucru SCLK_I2C4_PMU>; 1360*b2d2a78aSEmmanuel Vadot assigned-clock-rates = <200000000>; 1361*b2d2a78aSEmmanuel Vadot clocks = <&pmucru SCLK_I2C4_PMU>, <&pmucru PCLK_I2C4_PMU>; 1362*b2d2a78aSEmmanuel Vadot clock-names = "i2c", "pclk"; 1363*b2d2a78aSEmmanuel Vadot interrupts = <GIC_SPI 56 IRQ_TYPE_LEVEL_HIGH 0>; 1364*b2d2a78aSEmmanuel Vadot pinctrl-names = "default"; 1365*b2d2a78aSEmmanuel Vadot pinctrl-0 = <&i2c4_xfer>; 1366*b2d2a78aSEmmanuel Vadot #address-cells = <1>; 1367*b2d2a78aSEmmanuel Vadot #size-cells = <0>; 1368*b2d2a78aSEmmanuel Vadot status = "disabled"; 1369*b2d2a78aSEmmanuel Vadot }; 1370*b2d2a78aSEmmanuel Vadot 1371*b2d2a78aSEmmanuel Vadot i2c8: i2c@ff3e0000 { 1372*b2d2a78aSEmmanuel Vadot compatible = "rockchip,rk3399-i2c"; 1373*b2d2a78aSEmmanuel Vadot reg = <0x0 0xff3e0000 0x0 0x1000>; 1374*b2d2a78aSEmmanuel Vadot assigned-clocks = <&pmucru SCLK_I2C8_PMU>; 1375*b2d2a78aSEmmanuel Vadot assigned-clock-rates = <200000000>; 1376*b2d2a78aSEmmanuel Vadot clocks = <&pmucru SCLK_I2C8_PMU>, <&pmucru PCLK_I2C8_PMU>; 1377*b2d2a78aSEmmanuel Vadot clock-names = "i2c", "pclk"; 1378*b2d2a78aSEmmanuel Vadot interrupts = <GIC_SPI 58 IRQ_TYPE_LEVEL_HIGH 0>; 1379*b2d2a78aSEmmanuel Vadot pinctrl-names = "default"; 1380*b2d2a78aSEmmanuel Vadot pinctrl-0 = <&i2c8_xfer>; 1381*b2d2a78aSEmmanuel Vadot #address-cells = <1>; 1382*b2d2a78aSEmmanuel Vadot #size-cells = <0>; 1383*b2d2a78aSEmmanuel Vadot status = "disabled"; 1384*b2d2a78aSEmmanuel Vadot }; 1385*b2d2a78aSEmmanuel Vadot 1386*b2d2a78aSEmmanuel Vadot pwm0: pwm@ff420000 { 1387*b2d2a78aSEmmanuel Vadot compatible = "rockchip,rk3399-pwm", "rockchip,rk3288-pwm"; 1388*b2d2a78aSEmmanuel Vadot reg = <0x0 0xff420000 0x0 0x10>; 1389*b2d2a78aSEmmanuel Vadot #pwm-cells = <3>; 1390*b2d2a78aSEmmanuel Vadot pinctrl-names = "default"; 1391*b2d2a78aSEmmanuel Vadot pinctrl-0 = <&pwm0_pin>; 1392*b2d2a78aSEmmanuel Vadot clocks = <&pmucru PCLK_RKPWM_PMU>; 1393*b2d2a78aSEmmanuel Vadot status = "disabled"; 1394*b2d2a78aSEmmanuel Vadot }; 1395*b2d2a78aSEmmanuel Vadot 1396*b2d2a78aSEmmanuel Vadot pwm1: pwm@ff420010 { 1397*b2d2a78aSEmmanuel Vadot compatible = "rockchip,rk3399-pwm", "rockchip,rk3288-pwm"; 1398*b2d2a78aSEmmanuel Vadot reg = <0x0 0xff420010 0x0 0x10>; 1399*b2d2a78aSEmmanuel Vadot #pwm-cells = <3>; 1400*b2d2a78aSEmmanuel Vadot pinctrl-names = "default"; 1401*b2d2a78aSEmmanuel Vadot pinctrl-0 = <&pwm1_pin>; 1402*b2d2a78aSEmmanuel Vadot clocks = <&pmucru PCLK_RKPWM_PMU>; 1403*b2d2a78aSEmmanuel Vadot status = "disabled"; 1404*b2d2a78aSEmmanuel Vadot }; 1405*b2d2a78aSEmmanuel Vadot 1406*b2d2a78aSEmmanuel Vadot pwm2: pwm@ff420020 { 1407*b2d2a78aSEmmanuel Vadot compatible = "rockchip,rk3399-pwm", "rockchip,rk3288-pwm"; 1408*b2d2a78aSEmmanuel Vadot reg = <0x0 0xff420020 0x0 0x10>; 1409*b2d2a78aSEmmanuel Vadot #pwm-cells = <3>; 1410*b2d2a78aSEmmanuel Vadot pinctrl-names = "default"; 1411*b2d2a78aSEmmanuel Vadot pinctrl-0 = <&pwm2_pin>; 1412*b2d2a78aSEmmanuel Vadot clocks = <&pmucru PCLK_RKPWM_PMU>; 1413*b2d2a78aSEmmanuel Vadot status = "disabled"; 1414*b2d2a78aSEmmanuel Vadot }; 1415*b2d2a78aSEmmanuel Vadot 1416*b2d2a78aSEmmanuel Vadot pwm3: pwm@ff420030 { 1417*b2d2a78aSEmmanuel Vadot compatible = "rockchip,rk3399-pwm", "rockchip,rk3288-pwm"; 1418*b2d2a78aSEmmanuel Vadot reg = <0x0 0xff420030 0x0 0x10>; 1419*b2d2a78aSEmmanuel Vadot #pwm-cells = <3>; 1420*b2d2a78aSEmmanuel Vadot pinctrl-names = "default"; 1421*b2d2a78aSEmmanuel Vadot pinctrl-0 = <&pwm3a_pin>; 1422*b2d2a78aSEmmanuel Vadot clocks = <&pmucru PCLK_RKPWM_PMU>; 1423*b2d2a78aSEmmanuel Vadot status = "disabled"; 1424*b2d2a78aSEmmanuel Vadot }; 1425*b2d2a78aSEmmanuel Vadot 1426*b2d2a78aSEmmanuel Vadot dfi: dfi@ff630000 { 1427*b2d2a78aSEmmanuel Vadot reg = <0x00 0xff630000 0x00 0x4000>; 1428*b2d2a78aSEmmanuel Vadot compatible = "rockchip,rk3399-dfi"; 1429*b2d2a78aSEmmanuel Vadot rockchip,pmu = <&pmugrf>; 1430*b2d2a78aSEmmanuel Vadot interrupts = <GIC_SPI 131 IRQ_TYPE_LEVEL_HIGH 0>; 1431*b2d2a78aSEmmanuel Vadot clocks = <&cru PCLK_DDR_MON>; 1432*b2d2a78aSEmmanuel Vadot clock-names = "pclk_ddr_mon"; 1433*b2d2a78aSEmmanuel Vadot }; 1434*b2d2a78aSEmmanuel Vadot 1435*b2d2a78aSEmmanuel Vadot vpu: video-codec@ff650000 { 1436*b2d2a78aSEmmanuel Vadot compatible = "rockchip,rk3399-vpu"; 1437*b2d2a78aSEmmanuel Vadot reg = <0x0 0xff650000 0x0 0x800>; 1438*b2d2a78aSEmmanuel Vadot interrupts = <GIC_SPI 114 IRQ_TYPE_LEVEL_HIGH 0>, 1439*b2d2a78aSEmmanuel Vadot <GIC_SPI 113 IRQ_TYPE_LEVEL_HIGH 0>; 1440*b2d2a78aSEmmanuel Vadot interrupt-names = "vepu", "vdpu"; 1441*b2d2a78aSEmmanuel Vadot clocks = <&cru ACLK_VCODEC>, <&cru HCLK_VCODEC>; 1442*b2d2a78aSEmmanuel Vadot clock-names = "aclk", "hclk"; 1443*b2d2a78aSEmmanuel Vadot iommus = <&vpu_mmu>; 1444*b2d2a78aSEmmanuel Vadot power-domains = <&power RK3399_PD_VCODEC>; 1445*b2d2a78aSEmmanuel Vadot }; 1446*b2d2a78aSEmmanuel Vadot 1447*b2d2a78aSEmmanuel Vadot vpu_mmu: iommu@ff650800 { 1448*b2d2a78aSEmmanuel Vadot compatible = "rockchip,iommu"; 1449*b2d2a78aSEmmanuel Vadot reg = <0x0 0xff650800 0x0 0x40>; 1450*b2d2a78aSEmmanuel Vadot interrupts = <GIC_SPI 115 IRQ_TYPE_LEVEL_HIGH 0>; 1451*b2d2a78aSEmmanuel Vadot clocks = <&cru ACLK_VCODEC>, <&cru HCLK_VCODEC>; 1452*b2d2a78aSEmmanuel Vadot clock-names = "aclk", "iface"; 1453*b2d2a78aSEmmanuel Vadot #iommu-cells = <0>; 1454*b2d2a78aSEmmanuel Vadot power-domains = <&power RK3399_PD_VCODEC>; 1455*b2d2a78aSEmmanuel Vadot }; 1456*b2d2a78aSEmmanuel Vadot 1457*b2d2a78aSEmmanuel Vadot vdec: video-codec@ff660000 { 1458*b2d2a78aSEmmanuel Vadot compatible = "rockchip,rk3399-vdec"; 1459*b2d2a78aSEmmanuel Vadot reg = <0x0 0xff660000 0x0 0x480>; 1460*b2d2a78aSEmmanuel Vadot interrupts = <GIC_SPI 116 IRQ_TYPE_LEVEL_HIGH 0>; 1461*b2d2a78aSEmmanuel Vadot clocks = <&cru ACLK_VDU>, <&cru HCLK_VDU>, 1462*b2d2a78aSEmmanuel Vadot <&cru SCLK_VDU_CA>, <&cru SCLK_VDU_CORE>; 1463*b2d2a78aSEmmanuel Vadot clock-names = "axi", "ahb", "cabac", "core"; 1464*b2d2a78aSEmmanuel Vadot iommus = <&vdec_mmu>; 1465*b2d2a78aSEmmanuel Vadot power-domains = <&power RK3399_PD_VDU>; 1466*b2d2a78aSEmmanuel Vadot }; 1467*b2d2a78aSEmmanuel Vadot 1468*b2d2a78aSEmmanuel Vadot vdec_mmu: iommu@ff660480 { 1469*b2d2a78aSEmmanuel Vadot compatible = "rockchip,iommu"; 1470*b2d2a78aSEmmanuel Vadot reg = <0x0 0xff660480 0x0 0x40>, <0x0 0xff6604c0 0x0 0x40>; 1471*b2d2a78aSEmmanuel Vadot interrupts = <GIC_SPI 117 IRQ_TYPE_LEVEL_HIGH 0>; 1472*b2d2a78aSEmmanuel Vadot clocks = <&cru ACLK_VDU>, <&cru HCLK_VDU>; 1473*b2d2a78aSEmmanuel Vadot clock-names = "aclk", "iface"; 1474*b2d2a78aSEmmanuel Vadot power-domains = <&power RK3399_PD_VDU>; 1475*b2d2a78aSEmmanuel Vadot #iommu-cells = <0>; 1476*b2d2a78aSEmmanuel Vadot }; 1477*b2d2a78aSEmmanuel Vadot 1478*b2d2a78aSEmmanuel Vadot iep_mmu: iommu@ff670800 { 1479*b2d2a78aSEmmanuel Vadot compatible = "rockchip,iommu"; 1480*b2d2a78aSEmmanuel Vadot reg = <0x0 0xff670800 0x0 0x40>; 1481*b2d2a78aSEmmanuel Vadot interrupts = <GIC_SPI 42 IRQ_TYPE_LEVEL_HIGH 0>; 1482*b2d2a78aSEmmanuel Vadot clocks = <&cru ACLK_IEP>, <&cru HCLK_IEP>; 1483*b2d2a78aSEmmanuel Vadot clock-names = "aclk", "iface"; 1484*b2d2a78aSEmmanuel Vadot #iommu-cells = <0>; 1485*b2d2a78aSEmmanuel Vadot status = "disabled"; 1486*b2d2a78aSEmmanuel Vadot }; 1487*b2d2a78aSEmmanuel Vadot 1488*b2d2a78aSEmmanuel Vadot rga: rga@ff680000 { 1489*b2d2a78aSEmmanuel Vadot compatible = "rockchip,rk3399-rga"; 1490*b2d2a78aSEmmanuel Vadot reg = <0x0 0xff680000 0x0 0x10000>; 1491*b2d2a78aSEmmanuel Vadot interrupts = <GIC_SPI 55 IRQ_TYPE_LEVEL_HIGH 0>; 1492*b2d2a78aSEmmanuel Vadot clocks = <&cru ACLK_RGA>, <&cru HCLK_RGA>, <&cru SCLK_RGA_CORE>; 1493*b2d2a78aSEmmanuel Vadot clock-names = "aclk", "hclk", "sclk"; 1494*b2d2a78aSEmmanuel Vadot resets = <&cru SRST_RGA_CORE>, <&cru SRST_A_RGA>, <&cru SRST_H_RGA>; 1495*b2d2a78aSEmmanuel Vadot reset-names = "core", "axi", "ahb"; 1496*b2d2a78aSEmmanuel Vadot power-domains = <&power RK3399_PD_RGA>; 1497*b2d2a78aSEmmanuel Vadot }; 1498*b2d2a78aSEmmanuel Vadot 1499*b2d2a78aSEmmanuel Vadot efuse0: efuse@ff690000 { 1500*b2d2a78aSEmmanuel Vadot compatible = "rockchip,rk3399-efuse"; 1501*b2d2a78aSEmmanuel Vadot reg = <0x0 0xff690000 0x0 0x80>; 1502*b2d2a78aSEmmanuel Vadot #address-cells = <1>; 1503*b2d2a78aSEmmanuel Vadot #size-cells = <1>; 1504*b2d2a78aSEmmanuel Vadot clocks = <&cru PCLK_EFUSE1024NS>; 1505*b2d2a78aSEmmanuel Vadot clock-names = "pclk_efuse"; 1506*b2d2a78aSEmmanuel Vadot 1507*b2d2a78aSEmmanuel Vadot /* Data cells */ 1508*b2d2a78aSEmmanuel Vadot cpu_id: cpu-id@7 { 1509*b2d2a78aSEmmanuel Vadot reg = <0x07 0x10>; 1510*b2d2a78aSEmmanuel Vadot }; 1511*b2d2a78aSEmmanuel Vadot cpub_leakage: cpu-leakage@17 { 1512*b2d2a78aSEmmanuel Vadot reg = <0x17 0x1>; 1513*b2d2a78aSEmmanuel Vadot }; 1514*b2d2a78aSEmmanuel Vadot gpu_leakage: gpu-leakage@18 { 1515*b2d2a78aSEmmanuel Vadot reg = <0x18 0x1>; 1516*b2d2a78aSEmmanuel Vadot }; 1517*b2d2a78aSEmmanuel Vadot center_leakage: center-leakage@19 { 1518*b2d2a78aSEmmanuel Vadot reg = <0x19 0x1>; 1519*b2d2a78aSEmmanuel Vadot }; 1520*b2d2a78aSEmmanuel Vadot cpul_leakage: cpu-leakage@1a { 1521*b2d2a78aSEmmanuel Vadot reg = <0x1a 0x1>; 1522*b2d2a78aSEmmanuel Vadot }; 1523*b2d2a78aSEmmanuel Vadot logic_leakage: logic-leakage@1b { 1524*b2d2a78aSEmmanuel Vadot reg = <0x1b 0x1>; 1525*b2d2a78aSEmmanuel Vadot }; 1526*b2d2a78aSEmmanuel Vadot wafer_info: wafer-info@1c { 1527*b2d2a78aSEmmanuel Vadot reg = <0x1c 0x1>; 1528*b2d2a78aSEmmanuel Vadot }; 1529*b2d2a78aSEmmanuel Vadot }; 1530*b2d2a78aSEmmanuel Vadot 1531*b2d2a78aSEmmanuel Vadot dmac_bus: dma-controller@ff6d0000 { 1532*b2d2a78aSEmmanuel Vadot compatible = "arm,pl330", "arm,primecell"; 1533*b2d2a78aSEmmanuel Vadot reg = <0x0 0xff6d0000 0x0 0x4000>; 1534*b2d2a78aSEmmanuel Vadot interrupts = <GIC_SPI 5 IRQ_TYPE_LEVEL_HIGH 0>, 1535*b2d2a78aSEmmanuel Vadot <GIC_SPI 6 IRQ_TYPE_LEVEL_HIGH 0>; 1536*b2d2a78aSEmmanuel Vadot #dma-cells = <1>; 1537*b2d2a78aSEmmanuel Vadot arm,pl330-periph-burst; 1538*b2d2a78aSEmmanuel Vadot clocks = <&cru ACLK_DMAC0_PERILP>; 1539*b2d2a78aSEmmanuel Vadot clock-names = "apb_pclk"; 1540*b2d2a78aSEmmanuel Vadot }; 1541*b2d2a78aSEmmanuel Vadot 1542*b2d2a78aSEmmanuel Vadot dmac_peri: dma-controller@ff6e0000 { 1543*b2d2a78aSEmmanuel Vadot compatible = "arm,pl330", "arm,primecell"; 1544*b2d2a78aSEmmanuel Vadot reg = <0x0 0xff6e0000 0x0 0x4000>; 1545*b2d2a78aSEmmanuel Vadot interrupts = <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH 0>, 1546*b2d2a78aSEmmanuel Vadot <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH 0>; 1547*b2d2a78aSEmmanuel Vadot #dma-cells = <1>; 1548*b2d2a78aSEmmanuel Vadot arm,pl330-periph-burst; 1549*b2d2a78aSEmmanuel Vadot clocks = <&cru ACLK_DMAC1_PERILP>; 1550*b2d2a78aSEmmanuel Vadot clock-names = "apb_pclk"; 1551*b2d2a78aSEmmanuel Vadot }; 1552*b2d2a78aSEmmanuel Vadot 1553*b2d2a78aSEmmanuel Vadot pmucru: clock-controller@ff750000 { 1554*b2d2a78aSEmmanuel Vadot compatible = "rockchip,rk3399-pmucru"; 1555*b2d2a78aSEmmanuel Vadot reg = <0x0 0xff750000 0x0 0x1000>; 1556*b2d2a78aSEmmanuel Vadot clocks = <&xin24m>; 1557*b2d2a78aSEmmanuel Vadot clock-names = "xin24m"; 1558*b2d2a78aSEmmanuel Vadot rockchip,grf = <&pmugrf>; 1559*b2d2a78aSEmmanuel Vadot #clock-cells = <1>; 1560*b2d2a78aSEmmanuel Vadot #reset-cells = <1>; 1561*b2d2a78aSEmmanuel Vadot assigned-clocks = <&pmucru PLL_PPLL>; 1562*b2d2a78aSEmmanuel Vadot assigned-clock-rates = <676000000>; 1563*b2d2a78aSEmmanuel Vadot }; 1564*b2d2a78aSEmmanuel Vadot 1565*b2d2a78aSEmmanuel Vadot cru: clock-controller@ff760000 { 1566*b2d2a78aSEmmanuel Vadot compatible = "rockchip,rk3399-cru"; 1567*b2d2a78aSEmmanuel Vadot reg = <0x0 0xff760000 0x0 0x1000>; 1568*b2d2a78aSEmmanuel Vadot clocks = <&xin24m>; 1569*b2d2a78aSEmmanuel Vadot clock-names = "xin24m"; 1570*b2d2a78aSEmmanuel Vadot rockchip,grf = <&grf>; 1571*b2d2a78aSEmmanuel Vadot #clock-cells = <1>; 1572*b2d2a78aSEmmanuel Vadot #reset-cells = <1>; 1573*b2d2a78aSEmmanuel Vadot assigned-clocks = 1574*b2d2a78aSEmmanuel Vadot <&cru PLL_GPLL>, <&cru PLL_CPLL>, 1575*b2d2a78aSEmmanuel Vadot <&cru PLL_NPLL>, 1576*b2d2a78aSEmmanuel Vadot <&cru ACLK_PERIHP>, <&cru HCLK_PERIHP>, 1577*b2d2a78aSEmmanuel Vadot <&cru PCLK_PERIHP>, 1578*b2d2a78aSEmmanuel Vadot <&cru ACLK_PERILP0>, <&cru HCLK_PERILP0>, 1579*b2d2a78aSEmmanuel Vadot <&cru PCLK_PERILP0>, <&cru ACLK_CCI>, 1580*b2d2a78aSEmmanuel Vadot <&cru HCLK_PERILP1>, <&cru PCLK_PERILP1>, 1581*b2d2a78aSEmmanuel Vadot <&cru ACLK_VIO>, <&cru ACLK_HDCP>, 1582*b2d2a78aSEmmanuel Vadot <&cru ACLK_GIC_PRE>, 1583*b2d2a78aSEmmanuel Vadot <&cru PCLK_DDR>, 1584*b2d2a78aSEmmanuel Vadot <&cru ACLK_VDU>; 1585*b2d2a78aSEmmanuel Vadot assigned-clock-rates = 1586*b2d2a78aSEmmanuel Vadot <594000000>, <800000000>, 1587*b2d2a78aSEmmanuel Vadot <1000000000>, 1588*b2d2a78aSEmmanuel Vadot <150000000>, <75000000>, 1589*b2d2a78aSEmmanuel Vadot <37500000>, 1590*b2d2a78aSEmmanuel Vadot <100000000>, <100000000>, 1591*b2d2a78aSEmmanuel Vadot <50000000>, <600000000>, 1592*b2d2a78aSEmmanuel Vadot <100000000>, <50000000>, 1593*b2d2a78aSEmmanuel Vadot <400000000>, <400000000>, 1594*b2d2a78aSEmmanuel Vadot <200000000>, 1595*b2d2a78aSEmmanuel Vadot <200000000>, 1596*b2d2a78aSEmmanuel Vadot <400000000>; 1597*b2d2a78aSEmmanuel Vadot }; 1598*b2d2a78aSEmmanuel Vadot 1599*b2d2a78aSEmmanuel Vadot grf: syscon@ff770000 { 1600*b2d2a78aSEmmanuel Vadot compatible = "rockchip,rk3399-grf", "syscon", "simple-mfd"; 1601*b2d2a78aSEmmanuel Vadot reg = <0x0 0xff770000 0x0 0x10000>; 1602*b2d2a78aSEmmanuel Vadot #address-cells = <1>; 1603*b2d2a78aSEmmanuel Vadot #size-cells = <1>; 1604*b2d2a78aSEmmanuel Vadot 1605*b2d2a78aSEmmanuel Vadot io_domains: io-domains { 1606*b2d2a78aSEmmanuel Vadot compatible = "rockchip,rk3399-io-voltage-domain"; 1607*b2d2a78aSEmmanuel Vadot status = "disabled"; 1608*b2d2a78aSEmmanuel Vadot }; 1609*b2d2a78aSEmmanuel Vadot 1610*b2d2a78aSEmmanuel Vadot mipi_dphy_rx0: mipi-dphy-rx0 { 1611*b2d2a78aSEmmanuel Vadot compatible = "rockchip,rk3399-mipi-dphy-rx0"; 1612*b2d2a78aSEmmanuel Vadot clocks = <&cru SCLK_MIPIDPHY_REF>, 1613*b2d2a78aSEmmanuel Vadot <&cru SCLK_DPHY_RX0_CFG>, 1614*b2d2a78aSEmmanuel Vadot <&cru PCLK_VIO_GRF>; 1615*b2d2a78aSEmmanuel Vadot clock-names = "dphy-ref", "dphy-cfg", "grf"; 1616*b2d2a78aSEmmanuel Vadot power-domains = <&power RK3399_PD_VIO>; 1617*b2d2a78aSEmmanuel Vadot #phy-cells = <0>; 1618*b2d2a78aSEmmanuel Vadot status = "disabled"; 1619*b2d2a78aSEmmanuel Vadot }; 1620*b2d2a78aSEmmanuel Vadot 1621*b2d2a78aSEmmanuel Vadot u2phy0: usb2phy@e450 { 1622*b2d2a78aSEmmanuel Vadot compatible = "rockchip,rk3399-usb2phy"; 1623*b2d2a78aSEmmanuel Vadot reg = <0xe450 0x10>; 1624*b2d2a78aSEmmanuel Vadot clocks = <&cru SCLK_USB2PHY0_REF>; 1625*b2d2a78aSEmmanuel Vadot clock-names = "phyclk"; 1626*b2d2a78aSEmmanuel Vadot #clock-cells = <0>; 1627*b2d2a78aSEmmanuel Vadot clock-output-names = "clk_usbphy0_480m"; 1628*b2d2a78aSEmmanuel Vadot status = "disabled"; 1629*b2d2a78aSEmmanuel Vadot 1630*b2d2a78aSEmmanuel Vadot u2phy0_host: host-port { 1631*b2d2a78aSEmmanuel Vadot #phy-cells = <0>; 1632*b2d2a78aSEmmanuel Vadot interrupts = <GIC_SPI 27 IRQ_TYPE_LEVEL_HIGH 0>; 1633*b2d2a78aSEmmanuel Vadot interrupt-names = "linestate"; 1634*b2d2a78aSEmmanuel Vadot status = "disabled"; 1635*b2d2a78aSEmmanuel Vadot }; 1636*b2d2a78aSEmmanuel Vadot 1637*b2d2a78aSEmmanuel Vadot u2phy0_otg: otg-port { 1638*b2d2a78aSEmmanuel Vadot #phy-cells = <0>; 1639*b2d2a78aSEmmanuel Vadot interrupts = <GIC_SPI 103 IRQ_TYPE_LEVEL_HIGH 0>, 1640*b2d2a78aSEmmanuel Vadot <GIC_SPI 104 IRQ_TYPE_LEVEL_HIGH 0>, 1641*b2d2a78aSEmmanuel Vadot <GIC_SPI 106 IRQ_TYPE_LEVEL_HIGH 0>; 1642*b2d2a78aSEmmanuel Vadot interrupt-names = "otg-bvalid", "otg-id", 1643*b2d2a78aSEmmanuel Vadot "linestate"; 1644*b2d2a78aSEmmanuel Vadot status = "disabled"; 1645*b2d2a78aSEmmanuel Vadot }; 1646*b2d2a78aSEmmanuel Vadot }; 1647*b2d2a78aSEmmanuel Vadot 1648*b2d2a78aSEmmanuel Vadot u2phy1: usb2phy@e460 { 1649*b2d2a78aSEmmanuel Vadot compatible = "rockchip,rk3399-usb2phy"; 1650*b2d2a78aSEmmanuel Vadot reg = <0xe460 0x10>; 1651*b2d2a78aSEmmanuel Vadot clocks = <&cru SCLK_USB2PHY1_REF>; 1652*b2d2a78aSEmmanuel Vadot clock-names = "phyclk"; 1653*b2d2a78aSEmmanuel Vadot #clock-cells = <0>; 1654*b2d2a78aSEmmanuel Vadot clock-output-names = "clk_usbphy1_480m"; 1655*b2d2a78aSEmmanuel Vadot status = "disabled"; 1656*b2d2a78aSEmmanuel Vadot 1657*b2d2a78aSEmmanuel Vadot u2phy1_host: host-port { 1658*b2d2a78aSEmmanuel Vadot #phy-cells = <0>; 1659*b2d2a78aSEmmanuel Vadot interrupts = <GIC_SPI 31 IRQ_TYPE_LEVEL_HIGH 0>; 1660*b2d2a78aSEmmanuel Vadot interrupt-names = "linestate"; 1661*b2d2a78aSEmmanuel Vadot status = "disabled"; 1662*b2d2a78aSEmmanuel Vadot }; 1663*b2d2a78aSEmmanuel Vadot 1664*b2d2a78aSEmmanuel Vadot u2phy1_otg: otg-port { 1665*b2d2a78aSEmmanuel Vadot #phy-cells = <0>; 1666*b2d2a78aSEmmanuel Vadot interrupts = <GIC_SPI 108 IRQ_TYPE_LEVEL_HIGH 0>, 1667*b2d2a78aSEmmanuel Vadot <GIC_SPI 109 IRQ_TYPE_LEVEL_HIGH 0>, 1668*b2d2a78aSEmmanuel Vadot <GIC_SPI 111 IRQ_TYPE_LEVEL_HIGH 0>; 1669*b2d2a78aSEmmanuel Vadot interrupt-names = "otg-bvalid", "otg-id", 1670*b2d2a78aSEmmanuel Vadot "linestate"; 1671*b2d2a78aSEmmanuel Vadot status = "disabled"; 1672*b2d2a78aSEmmanuel Vadot }; 1673*b2d2a78aSEmmanuel Vadot }; 1674*b2d2a78aSEmmanuel Vadot 1675*b2d2a78aSEmmanuel Vadot emmc_phy: phy@f780 { 1676*b2d2a78aSEmmanuel Vadot compatible = "rockchip,rk3399-emmc-phy"; 1677*b2d2a78aSEmmanuel Vadot reg = <0xf780 0x24>; 1678*b2d2a78aSEmmanuel Vadot clocks = <&sdhci>; 1679*b2d2a78aSEmmanuel Vadot clock-names = "emmcclk"; 1680*b2d2a78aSEmmanuel Vadot drive-impedance-ohm = <50>; 1681*b2d2a78aSEmmanuel Vadot #phy-cells = <0>; 1682*b2d2a78aSEmmanuel Vadot status = "disabled"; 1683*b2d2a78aSEmmanuel Vadot }; 1684*b2d2a78aSEmmanuel Vadot 1685*b2d2a78aSEmmanuel Vadot pcie_phy: pcie-phy { 1686*b2d2a78aSEmmanuel Vadot compatible = "rockchip,rk3399-pcie-phy"; 1687*b2d2a78aSEmmanuel Vadot clocks = <&cru SCLK_PCIEPHY_REF>; 1688*b2d2a78aSEmmanuel Vadot clock-names = "refclk"; 1689*b2d2a78aSEmmanuel Vadot #phy-cells = <1>; 1690*b2d2a78aSEmmanuel Vadot resets = <&cru SRST_PCIEPHY>; 1691*b2d2a78aSEmmanuel Vadot reset-names = "phy"; 1692*b2d2a78aSEmmanuel Vadot status = "disabled"; 1693*b2d2a78aSEmmanuel Vadot }; 1694*b2d2a78aSEmmanuel Vadot }; 1695*b2d2a78aSEmmanuel Vadot 1696*b2d2a78aSEmmanuel Vadot tcphy0: phy@ff7c0000 { 1697*b2d2a78aSEmmanuel Vadot compatible = "rockchip,rk3399-typec-phy"; 1698*b2d2a78aSEmmanuel Vadot reg = <0x0 0xff7c0000 0x0 0x40000>; 1699*b2d2a78aSEmmanuel Vadot clocks = <&cru SCLK_UPHY0_TCPDCORE>, 1700*b2d2a78aSEmmanuel Vadot <&cru SCLK_UPHY0_TCPDPHY_REF>; 1701*b2d2a78aSEmmanuel Vadot clock-names = "tcpdcore", "tcpdphy-ref"; 1702*b2d2a78aSEmmanuel Vadot assigned-clocks = <&cru SCLK_UPHY0_TCPDCORE>; 1703*b2d2a78aSEmmanuel Vadot assigned-clock-rates = <50000000>; 1704*b2d2a78aSEmmanuel Vadot power-domains = <&power RK3399_PD_TCPD0>; 1705*b2d2a78aSEmmanuel Vadot resets = <&cru SRST_UPHY0>, 1706*b2d2a78aSEmmanuel Vadot <&cru SRST_UPHY0_PIPE_L00>, 1707*b2d2a78aSEmmanuel Vadot <&cru SRST_P_UPHY0_TCPHY>; 1708*b2d2a78aSEmmanuel Vadot reset-names = "uphy", "uphy-pipe", "uphy-tcphy"; 1709*b2d2a78aSEmmanuel Vadot rockchip,grf = <&grf>; 1710*b2d2a78aSEmmanuel Vadot status = "disabled"; 1711*b2d2a78aSEmmanuel Vadot 1712*b2d2a78aSEmmanuel Vadot tcphy0_dp: dp-port { 1713*b2d2a78aSEmmanuel Vadot #phy-cells = <0>; 1714*b2d2a78aSEmmanuel Vadot }; 1715*b2d2a78aSEmmanuel Vadot 1716*b2d2a78aSEmmanuel Vadot tcphy0_usb3: usb3-port { 1717*b2d2a78aSEmmanuel Vadot #phy-cells = <0>; 1718*b2d2a78aSEmmanuel Vadot }; 1719*b2d2a78aSEmmanuel Vadot }; 1720*b2d2a78aSEmmanuel Vadot 1721*b2d2a78aSEmmanuel Vadot tcphy1: phy@ff800000 { 1722*b2d2a78aSEmmanuel Vadot compatible = "rockchip,rk3399-typec-phy"; 1723*b2d2a78aSEmmanuel Vadot reg = <0x0 0xff800000 0x0 0x40000>; 1724*b2d2a78aSEmmanuel Vadot clocks = <&cru SCLK_UPHY1_TCPDCORE>, 1725*b2d2a78aSEmmanuel Vadot <&cru SCLK_UPHY1_TCPDPHY_REF>; 1726*b2d2a78aSEmmanuel Vadot clock-names = "tcpdcore", "tcpdphy-ref"; 1727*b2d2a78aSEmmanuel Vadot assigned-clocks = <&cru SCLK_UPHY1_TCPDCORE>; 1728*b2d2a78aSEmmanuel Vadot assigned-clock-rates = <50000000>; 1729*b2d2a78aSEmmanuel Vadot power-domains = <&power RK3399_PD_TCPD1>; 1730*b2d2a78aSEmmanuel Vadot resets = <&cru SRST_UPHY1>, 1731*b2d2a78aSEmmanuel Vadot <&cru SRST_UPHY1_PIPE_L00>, 1732*b2d2a78aSEmmanuel Vadot <&cru SRST_P_UPHY1_TCPHY>; 1733*b2d2a78aSEmmanuel Vadot reset-names = "uphy", "uphy-pipe", "uphy-tcphy"; 1734*b2d2a78aSEmmanuel Vadot rockchip,grf = <&grf>; 1735*b2d2a78aSEmmanuel Vadot status = "disabled"; 1736*b2d2a78aSEmmanuel Vadot 1737*b2d2a78aSEmmanuel Vadot tcphy1_dp: dp-port { 1738*b2d2a78aSEmmanuel Vadot #phy-cells = <0>; 1739*b2d2a78aSEmmanuel Vadot }; 1740*b2d2a78aSEmmanuel Vadot 1741*b2d2a78aSEmmanuel Vadot tcphy1_usb3: usb3-port { 1742*b2d2a78aSEmmanuel Vadot #phy-cells = <0>; 1743*b2d2a78aSEmmanuel Vadot }; 1744*b2d2a78aSEmmanuel Vadot }; 1745*b2d2a78aSEmmanuel Vadot 1746*b2d2a78aSEmmanuel Vadot watchdog@ff848000 { 1747*b2d2a78aSEmmanuel Vadot compatible = "rockchip,rk3399-wdt", "snps,dw-wdt"; 1748*b2d2a78aSEmmanuel Vadot reg = <0x0 0xff848000 0x0 0x100>; 1749*b2d2a78aSEmmanuel Vadot clocks = <&cru PCLK_WDT>; 1750*b2d2a78aSEmmanuel Vadot interrupts = <GIC_SPI 120 IRQ_TYPE_LEVEL_HIGH 0>; 1751*b2d2a78aSEmmanuel Vadot }; 1752*b2d2a78aSEmmanuel Vadot 1753*b2d2a78aSEmmanuel Vadot rktimer: rktimer@ff850000 { 1754*b2d2a78aSEmmanuel Vadot compatible = "rockchip,rk3399-timer"; 1755*b2d2a78aSEmmanuel Vadot reg = <0x0 0xff850000 0x0 0x1000>; 1756*b2d2a78aSEmmanuel Vadot interrupts = <GIC_SPI 81 IRQ_TYPE_LEVEL_HIGH 0>; 1757*b2d2a78aSEmmanuel Vadot clocks = <&cru PCLK_TIMER0>, <&cru SCLK_TIMER00>; 1758*b2d2a78aSEmmanuel Vadot clock-names = "pclk", "timer"; 1759*b2d2a78aSEmmanuel Vadot }; 1760*b2d2a78aSEmmanuel Vadot 1761*b2d2a78aSEmmanuel Vadot spdif: spdif@ff870000 { 1762*b2d2a78aSEmmanuel Vadot compatible = "rockchip,rk3399-spdif"; 1763*b2d2a78aSEmmanuel Vadot reg = <0x0 0xff870000 0x0 0x1000>; 1764*b2d2a78aSEmmanuel Vadot interrupts = <GIC_SPI 66 IRQ_TYPE_LEVEL_HIGH 0>; 1765*b2d2a78aSEmmanuel Vadot dmas = <&dmac_bus 7>; 1766*b2d2a78aSEmmanuel Vadot dma-names = "tx"; 1767*b2d2a78aSEmmanuel Vadot clock-names = "mclk", "hclk"; 1768*b2d2a78aSEmmanuel Vadot clocks = <&cru SCLK_SPDIF_8CH>, <&cru HCLK_SPDIF>; 1769*b2d2a78aSEmmanuel Vadot pinctrl-names = "default"; 1770*b2d2a78aSEmmanuel Vadot pinctrl-0 = <&spdif_bus>; 1771*b2d2a78aSEmmanuel Vadot power-domains = <&power RK3399_PD_SDIOAUDIO>; 1772*b2d2a78aSEmmanuel Vadot #sound-dai-cells = <0>; 1773*b2d2a78aSEmmanuel Vadot status = "disabled"; 1774*b2d2a78aSEmmanuel Vadot }; 1775*b2d2a78aSEmmanuel Vadot 1776*b2d2a78aSEmmanuel Vadot i2s0: i2s@ff880000 { 1777*b2d2a78aSEmmanuel Vadot compatible = "rockchip,rk3399-i2s", "rockchip,rk3066-i2s"; 1778*b2d2a78aSEmmanuel Vadot reg = <0x0 0xff880000 0x0 0x1000>; 1779*b2d2a78aSEmmanuel Vadot rockchip,grf = <&grf>; 1780*b2d2a78aSEmmanuel Vadot interrupts = <GIC_SPI 39 IRQ_TYPE_LEVEL_HIGH 0>; 1781*b2d2a78aSEmmanuel Vadot dmas = <&dmac_bus 0>, <&dmac_bus 1>; 1782*b2d2a78aSEmmanuel Vadot dma-names = "tx", "rx"; 1783*b2d2a78aSEmmanuel Vadot clock-names = "i2s_clk", "i2s_hclk"; 1784*b2d2a78aSEmmanuel Vadot clocks = <&cru SCLK_I2S0_8CH>, <&cru HCLK_I2S0_8CH>; 1785*b2d2a78aSEmmanuel Vadot pinctrl-names = "bclk_on", "bclk_off"; 1786*b2d2a78aSEmmanuel Vadot pinctrl-0 = <&i2s0_8ch_bus>; 1787*b2d2a78aSEmmanuel Vadot pinctrl-1 = <&i2s0_8ch_bus_bclk_off>; 1788*b2d2a78aSEmmanuel Vadot power-domains = <&power RK3399_PD_SDIOAUDIO>; 1789*b2d2a78aSEmmanuel Vadot #sound-dai-cells = <0>; 1790*b2d2a78aSEmmanuel Vadot status = "disabled"; 1791*b2d2a78aSEmmanuel Vadot }; 1792*b2d2a78aSEmmanuel Vadot 1793*b2d2a78aSEmmanuel Vadot i2s1: i2s@ff890000 { 1794*b2d2a78aSEmmanuel Vadot compatible = "rockchip,rk3399-i2s", "rockchip,rk3066-i2s"; 1795*b2d2a78aSEmmanuel Vadot reg = <0x0 0xff890000 0x0 0x1000>; 1796*b2d2a78aSEmmanuel Vadot interrupts = <GIC_SPI 40 IRQ_TYPE_LEVEL_HIGH 0>; 1797*b2d2a78aSEmmanuel Vadot dmas = <&dmac_bus 2>, <&dmac_bus 3>; 1798*b2d2a78aSEmmanuel Vadot dma-names = "tx", "rx"; 1799*b2d2a78aSEmmanuel Vadot clock-names = "i2s_clk", "i2s_hclk"; 1800*b2d2a78aSEmmanuel Vadot clocks = <&cru SCLK_I2S1_8CH>, <&cru HCLK_I2S1_8CH>; 1801*b2d2a78aSEmmanuel Vadot pinctrl-names = "default"; 1802*b2d2a78aSEmmanuel Vadot pinctrl-0 = <&i2s1_2ch_bus>; 1803*b2d2a78aSEmmanuel Vadot power-domains = <&power RK3399_PD_SDIOAUDIO>; 1804*b2d2a78aSEmmanuel Vadot #sound-dai-cells = <0>; 1805*b2d2a78aSEmmanuel Vadot status = "disabled"; 1806*b2d2a78aSEmmanuel Vadot }; 1807*b2d2a78aSEmmanuel Vadot 1808*b2d2a78aSEmmanuel Vadot i2s2: i2s@ff8a0000 { 1809*b2d2a78aSEmmanuel Vadot compatible = "rockchip,rk3399-i2s", "rockchip,rk3066-i2s"; 1810*b2d2a78aSEmmanuel Vadot reg = <0x0 0xff8a0000 0x0 0x1000>; 1811*b2d2a78aSEmmanuel Vadot interrupts = <GIC_SPI 41 IRQ_TYPE_LEVEL_HIGH 0>; 1812*b2d2a78aSEmmanuel Vadot dmas = <&dmac_bus 4>, <&dmac_bus 5>; 1813*b2d2a78aSEmmanuel Vadot dma-names = "tx", "rx"; 1814*b2d2a78aSEmmanuel Vadot clock-names = "i2s_clk", "i2s_hclk"; 1815*b2d2a78aSEmmanuel Vadot clocks = <&cru SCLK_I2S2_8CH>, <&cru HCLK_I2S2_8CH>; 1816*b2d2a78aSEmmanuel Vadot power-domains = <&power RK3399_PD_SDIOAUDIO>; 1817*b2d2a78aSEmmanuel Vadot #sound-dai-cells = <0>; 1818*b2d2a78aSEmmanuel Vadot status = "disabled"; 1819*b2d2a78aSEmmanuel Vadot }; 1820*b2d2a78aSEmmanuel Vadot 1821*b2d2a78aSEmmanuel Vadot vopl: vop@ff8f0000 { 1822*b2d2a78aSEmmanuel Vadot compatible = "rockchip,rk3399-vop-lit"; 1823*b2d2a78aSEmmanuel Vadot reg = <0x0 0xff8f0000 0x0 0x2000>, <0x0 0xff8f2000 0x0 0x400>; 1824*b2d2a78aSEmmanuel Vadot interrupts = <GIC_SPI 119 IRQ_TYPE_LEVEL_HIGH 0>; 1825*b2d2a78aSEmmanuel Vadot assigned-clocks = <&cru ACLK_VOP1>, <&cru HCLK_VOP1>; 1826*b2d2a78aSEmmanuel Vadot assigned-clock-rates = <400000000>, <100000000>; 1827*b2d2a78aSEmmanuel Vadot clocks = <&cru ACLK_VOP1>, <&cru DCLK_VOP1>, <&cru HCLK_VOP1>; 1828*b2d2a78aSEmmanuel Vadot clock-names = "aclk_vop", "dclk_vop", "hclk_vop"; 1829*b2d2a78aSEmmanuel Vadot iommus = <&vopl_mmu>; 1830*b2d2a78aSEmmanuel Vadot power-domains = <&power RK3399_PD_VOPL>; 1831*b2d2a78aSEmmanuel Vadot resets = <&cru SRST_A_VOP1>, <&cru SRST_H_VOP1>, <&cru SRST_D_VOP1>; 1832*b2d2a78aSEmmanuel Vadot reset-names = "axi", "ahb", "dclk"; 1833*b2d2a78aSEmmanuel Vadot status = "disabled"; 1834*b2d2a78aSEmmanuel Vadot 1835*b2d2a78aSEmmanuel Vadot vopl_out: port { 1836*b2d2a78aSEmmanuel Vadot #address-cells = <1>; 1837*b2d2a78aSEmmanuel Vadot #size-cells = <0>; 1838*b2d2a78aSEmmanuel Vadot 1839*b2d2a78aSEmmanuel Vadot vopl_out_mipi: endpoint@0 { 1840*b2d2a78aSEmmanuel Vadot reg = <0>; 1841*b2d2a78aSEmmanuel Vadot remote-endpoint = <&mipi_in_vopl>; 1842*b2d2a78aSEmmanuel Vadot }; 1843*b2d2a78aSEmmanuel Vadot 1844*b2d2a78aSEmmanuel Vadot vopl_out_edp: endpoint@1 { 1845*b2d2a78aSEmmanuel Vadot reg = <1>; 1846*b2d2a78aSEmmanuel Vadot remote-endpoint = <&edp_in_vopl>; 1847*b2d2a78aSEmmanuel Vadot }; 1848*b2d2a78aSEmmanuel Vadot 1849*b2d2a78aSEmmanuel Vadot vopl_out_hdmi: endpoint@2 { 1850*b2d2a78aSEmmanuel Vadot reg = <2>; 1851*b2d2a78aSEmmanuel Vadot remote-endpoint = <&hdmi_in_vopl>; 1852*b2d2a78aSEmmanuel Vadot }; 1853*b2d2a78aSEmmanuel Vadot 1854*b2d2a78aSEmmanuel Vadot vopl_out_mipi1: endpoint@3 { 1855*b2d2a78aSEmmanuel Vadot reg = <3>; 1856*b2d2a78aSEmmanuel Vadot remote-endpoint = <&mipi1_in_vopl>; 1857*b2d2a78aSEmmanuel Vadot }; 1858*b2d2a78aSEmmanuel Vadot 1859*b2d2a78aSEmmanuel Vadot vopl_out_dp: endpoint@4 { 1860*b2d2a78aSEmmanuel Vadot reg = <4>; 1861*b2d2a78aSEmmanuel Vadot remote-endpoint = <&dp_in_vopl>; 1862*b2d2a78aSEmmanuel Vadot }; 1863*b2d2a78aSEmmanuel Vadot }; 1864*b2d2a78aSEmmanuel Vadot }; 1865*b2d2a78aSEmmanuel Vadot 1866*b2d2a78aSEmmanuel Vadot vopl_mmu: iommu@ff8f3f00 { 1867*b2d2a78aSEmmanuel Vadot compatible = "rockchip,iommu"; 1868*b2d2a78aSEmmanuel Vadot reg = <0x0 0xff8f3f00 0x0 0x100>; 1869*b2d2a78aSEmmanuel Vadot interrupts = <GIC_SPI 119 IRQ_TYPE_LEVEL_HIGH 0>; 1870*b2d2a78aSEmmanuel Vadot clocks = <&cru ACLK_VOP1>, <&cru HCLK_VOP1>; 1871*b2d2a78aSEmmanuel Vadot clock-names = "aclk", "iface"; 1872*b2d2a78aSEmmanuel Vadot power-domains = <&power RK3399_PD_VOPL>; 1873*b2d2a78aSEmmanuel Vadot #iommu-cells = <0>; 1874*b2d2a78aSEmmanuel Vadot status = "disabled"; 1875*b2d2a78aSEmmanuel Vadot }; 1876*b2d2a78aSEmmanuel Vadot 1877*b2d2a78aSEmmanuel Vadot vopb: vop@ff900000 { 1878*b2d2a78aSEmmanuel Vadot compatible = "rockchip,rk3399-vop-big"; 1879*b2d2a78aSEmmanuel Vadot reg = <0x0 0xff900000 0x0 0x2000>, <0x0 0xff902000 0x0 0x1000>; 1880*b2d2a78aSEmmanuel Vadot interrupts = <GIC_SPI 118 IRQ_TYPE_LEVEL_HIGH 0>; 1881*b2d2a78aSEmmanuel Vadot assigned-clocks = <&cru ACLK_VOP0>, <&cru HCLK_VOP0>; 1882*b2d2a78aSEmmanuel Vadot assigned-clock-rates = <400000000>, <100000000>; 1883*b2d2a78aSEmmanuel Vadot clocks = <&cru ACLK_VOP0>, <&cru DCLK_VOP0>, <&cru HCLK_VOP0>; 1884*b2d2a78aSEmmanuel Vadot clock-names = "aclk_vop", "dclk_vop", "hclk_vop"; 1885*b2d2a78aSEmmanuel Vadot iommus = <&vopb_mmu>; 1886*b2d2a78aSEmmanuel Vadot power-domains = <&power RK3399_PD_VOPB>; 1887*b2d2a78aSEmmanuel Vadot resets = <&cru SRST_A_VOP0>, <&cru SRST_H_VOP0>, <&cru SRST_D_VOP0>; 1888*b2d2a78aSEmmanuel Vadot reset-names = "axi", "ahb", "dclk"; 1889*b2d2a78aSEmmanuel Vadot status = "disabled"; 1890*b2d2a78aSEmmanuel Vadot 1891*b2d2a78aSEmmanuel Vadot vopb_out: port { 1892*b2d2a78aSEmmanuel Vadot #address-cells = <1>; 1893*b2d2a78aSEmmanuel Vadot #size-cells = <0>; 1894*b2d2a78aSEmmanuel Vadot 1895*b2d2a78aSEmmanuel Vadot vopb_out_edp: endpoint@0 { 1896*b2d2a78aSEmmanuel Vadot reg = <0>; 1897*b2d2a78aSEmmanuel Vadot remote-endpoint = <&edp_in_vopb>; 1898*b2d2a78aSEmmanuel Vadot }; 1899*b2d2a78aSEmmanuel Vadot 1900*b2d2a78aSEmmanuel Vadot vopb_out_mipi: endpoint@1 { 1901*b2d2a78aSEmmanuel Vadot reg = <1>; 1902*b2d2a78aSEmmanuel Vadot remote-endpoint = <&mipi_in_vopb>; 1903*b2d2a78aSEmmanuel Vadot }; 1904*b2d2a78aSEmmanuel Vadot 1905*b2d2a78aSEmmanuel Vadot vopb_out_hdmi: endpoint@2 { 1906*b2d2a78aSEmmanuel Vadot reg = <2>; 1907*b2d2a78aSEmmanuel Vadot remote-endpoint = <&hdmi_in_vopb>; 1908*b2d2a78aSEmmanuel Vadot }; 1909*b2d2a78aSEmmanuel Vadot 1910*b2d2a78aSEmmanuel Vadot vopb_out_mipi1: endpoint@3 { 1911*b2d2a78aSEmmanuel Vadot reg = <3>; 1912*b2d2a78aSEmmanuel Vadot remote-endpoint = <&mipi1_in_vopb>; 1913*b2d2a78aSEmmanuel Vadot }; 1914*b2d2a78aSEmmanuel Vadot 1915*b2d2a78aSEmmanuel Vadot vopb_out_dp: endpoint@4 { 1916*b2d2a78aSEmmanuel Vadot reg = <4>; 1917*b2d2a78aSEmmanuel Vadot remote-endpoint = <&dp_in_vopb>; 1918*b2d2a78aSEmmanuel Vadot }; 1919*b2d2a78aSEmmanuel Vadot }; 1920*b2d2a78aSEmmanuel Vadot }; 1921*b2d2a78aSEmmanuel Vadot 1922*b2d2a78aSEmmanuel Vadot vopb_mmu: iommu@ff903f00 { 1923*b2d2a78aSEmmanuel Vadot compatible = "rockchip,iommu"; 1924*b2d2a78aSEmmanuel Vadot reg = <0x0 0xff903f00 0x0 0x100>; 1925*b2d2a78aSEmmanuel Vadot interrupts = <GIC_SPI 118 IRQ_TYPE_LEVEL_HIGH 0>; 1926*b2d2a78aSEmmanuel Vadot clocks = <&cru ACLK_VOP0>, <&cru HCLK_VOP0>; 1927*b2d2a78aSEmmanuel Vadot clock-names = "aclk", "iface"; 1928*b2d2a78aSEmmanuel Vadot power-domains = <&power RK3399_PD_VOPB>; 1929*b2d2a78aSEmmanuel Vadot #iommu-cells = <0>; 1930*b2d2a78aSEmmanuel Vadot status = "disabled"; 1931*b2d2a78aSEmmanuel Vadot }; 1932*b2d2a78aSEmmanuel Vadot 1933*b2d2a78aSEmmanuel Vadot isp0: isp0@ff910000 { 1934*b2d2a78aSEmmanuel Vadot compatible = "rockchip,rk3399-cif-isp"; 1935*b2d2a78aSEmmanuel Vadot reg = <0x0 0xff910000 0x0 0x4000>; 1936*b2d2a78aSEmmanuel Vadot interrupts = <GIC_SPI 43 IRQ_TYPE_LEVEL_HIGH 0>; 1937*b2d2a78aSEmmanuel Vadot clocks = <&cru SCLK_ISP0>, 1938*b2d2a78aSEmmanuel Vadot <&cru ACLK_ISP0_WRAPPER>, 1939*b2d2a78aSEmmanuel Vadot <&cru HCLK_ISP0_WRAPPER>; 1940*b2d2a78aSEmmanuel Vadot clock-names = "isp", "aclk", "hclk"; 1941*b2d2a78aSEmmanuel Vadot iommus = <&isp0_mmu>; 1942*b2d2a78aSEmmanuel Vadot phys = <&mipi_dphy_rx0>; 1943*b2d2a78aSEmmanuel Vadot phy-names = "dphy"; 1944*b2d2a78aSEmmanuel Vadot power-domains = <&power RK3399_PD_ISP0>; 1945*b2d2a78aSEmmanuel Vadot status = "disabled"; 1946*b2d2a78aSEmmanuel Vadot 1947*b2d2a78aSEmmanuel Vadot ports { 1948*b2d2a78aSEmmanuel Vadot #address-cells = <1>; 1949*b2d2a78aSEmmanuel Vadot #size-cells = <0>; 1950*b2d2a78aSEmmanuel Vadot 1951*b2d2a78aSEmmanuel Vadot port@0 { 1952*b2d2a78aSEmmanuel Vadot reg = <0>; 1953*b2d2a78aSEmmanuel Vadot #address-cells = <1>; 1954*b2d2a78aSEmmanuel Vadot #size-cells = <0>; 1955*b2d2a78aSEmmanuel Vadot }; 1956*b2d2a78aSEmmanuel Vadot }; 1957*b2d2a78aSEmmanuel Vadot }; 1958*b2d2a78aSEmmanuel Vadot 1959*b2d2a78aSEmmanuel Vadot isp0_mmu: iommu@ff914000 { 1960*b2d2a78aSEmmanuel Vadot compatible = "rockchip,iommu"; 1961*b2d2a78aSEmmanuel Vadot reg = <0x0 0xff914000 0x0 0x100>, <0x0 0xff915000 0x0 0x100>; 1962*b2d2a78aSEmmanuel Vadot interrupts = <GIC_SPI 43 IRQ_TYPE_LEVEL_HIGH 0>; 1963*b2d2a78aSEmmanuel Vadot clocks = <&cru ACLK_ISP0_WRAPPER>, <&cru HCLK_ISP0_WRAPPER>; 1964*b2d2a78aSEmmanuel Vadot clock-names = "aclk", "iface"; 1965*b2d2a78aSEmmanuel Vadot #iommu-cells = <0>; 1966*b2d2a78aSEmmanuel Vadot power-domains = <&power RK3399_PD_ISP0>; 1967*b2d2a78aSEmmanuel Vadot rockchip,disable-mmu-reset; 1968*b2d2a78aSEmmanuel Vadot }; 1969*b2d2a78aSEmmanuel Vadot 1970*b2d2a78aSEmmanuel Vadot isp1: isp1@ff920000 { 1971*b2d2a78aSEmmanuel Vadot compatible = "rockchip,rk3399-cif-isp"; 1972*b2d2a78aSEmmanuel Vadot reg = <0x0 0xff920000 0x0 0x4000>; 1973*b2d2a78aSEmmanuel Vadot interrupts = <GIC_SPI 44 IRQ_TYPE_LEVEL_HIGH 0>; 1974*b2d2a78aSEmmanuel Vadot clocks = <&cru SCLK_ISP1>, 1975*b2d2a78aSEmmanuel Vadot <&cru ACLK_ISP1_WRAPPER>, 1976*b2d2a78aSEmmanuel Vadot <&cru HCLK_ISP1_WRAPPER>; 1977*b2d2a78aSEmmanuel Vadot clock-names = "isp", "aclk", "hclk"; 1978*b2d2a78aSEmmanuel Vadot iommus = <&isp1_mmu>; 1979*b2d2a78aSEmmanuel Vadot phys = <&mipi_dsi1>; 1980*b2d2a78aSEmmanuel Vadot phy-names = "dphy"; 1981*b2d2a78aSEmmanuel Vadot power-domains = <&power RK3399_PD_ISP1>; 1982*b2d2a78aSEmmanuel Vadot status = "disabled"; 1983*b2d2a78aSEmmanuel Vadot 1984*b2d2a78aSEmmanuel Vadot ports { 1985*b2d2a78aSEmmanuel Vadot #address-cells = <1>; 1986*b2d2a78aSEmmanuel Vadot #size-cells = <0>; 1987*b2d2a78aSEmmanuel Vadot 1988*b2d2a78aSEmmanuel Vadot port@0 { 1989*b2d2a78aSEmmanuel Vadot reg = <0>; 1990*b2d2a78aSEmmanuel Vadot #address-cells = <1>; 1991*b2d2a78aSEmmanuel Vadot #size-cells = <0>; 1992*b2d2a78aSEmmanuel Vadot }; 1993*b2d2a78aSEmmanuel Vadot }; 1994*b2d2a78aSEmmanuel Vadot }; 1995*b2d2a78aSEmmanuel Vadot 1996*b2d2a78aSEmmanuel Vadot isp1_mmu: iommu@ff924000 { 1997*b2d2a78aSEmmanuel Vadot compatible = "rockchip,iommu"; 1998*b2d2a78aSEmmanuel Vadot reg = <0x0 0xff924000 0x0 0x100>, <0x0 0xff925000 0x0 0x100>; 1999*b2d2a78aSEmmanuel Vadot interrupts = <GIC_SPI 44 IRQ_TYPE_LEVEL_HIGH 0>; 2000*b2d2a78aSEmmanuel Vadot clocks = <&cru ACLK_ISP1_WRAPPER>, <&cru HCLK_ISP1_WRAPPER>; 2001*b2d2a78aSEmmanuel Vadot clock-names = "aclk", "iface"; 2002*b2d2a78aSEmmanuel Vadot #iommu-cells = <0>; 2003*b2d2a78aSEmmanuel Vadot power-domains = <&power RK3399_PD_ISP1>; 2004*b2d2a78aSEmmanuel Vadot rockchip,disable-mmu-reset; 2005*b2d2a78aSEmmanuel Vadot }; 2006*b2d2a78aSEmmanuel Vadot 2007*b2d2a78aSEmmanuel Vadot hdmi_sound: hdmi-sound { 2008*b2d2a78aSEmmanuel Vadot compatible = "simple-audio-card"; 2009*b2d2a78aSEmmanuel Vadot simple-audio-card,format = "i2s"; 2010*b2d2a78aSEmmanuel Vadot simple-audio-card,mclk-fs = <256>; 2011*b2d2a78aSEmmanuel Vadot simple-audio-card,name = "hdmi-sound"; 2012*b2d2a78aSEmmanuel Vadot status = "disabled"; 2013*b2d2a78aSEmmanuel Vadot 2014*b2d2a78aSEmmanuel Vadot simple-audio-card,cpu { 2015*b2d2a78aSEmmanuel Vadot sound-dai = <&i2s2>; 2016*b2d2a78aSEmmanuel Vadot }; 2017*b2d2a78aSEmmanuel Vadot simple-audio-card,codec { 2018*b2d2a78aSEmmanuel Vadot sound-dai = <&hdmi>; 2019*b2d2a78aSEmmanuel Vadot }; 2020*b2d2a78aSEmmanuel Vadot }; 2021*b2d2a78aSEmmanuel Vadot 2022*b2d2a78aSEmmanuel Vadot hdmi: hdmi@ff940000 { 2023*b2d2a78aSEmmanuel Vadot compatible = "rockchip,rk3399-dw-hdmi"; 2024*b2d2a78aSEmmanuel Vadot reg = <0x0 0xff940000 0x0 0x20000>; 2025*b2d2a78aSEmmanuel Vadot reg-io-width = <4>; 2026*b2d2a78aSEmmanuel Vadot interrupts = <GIC_SPI 23 IRQ_TYPE_LEVEL_HIGH 0>; 2027*b2d2a78aSEmmanuel Vadot clocks = <&cru PCLK_HDMI_CTRL>, 2028*b2d2a78aSEmmanuel Vadot <&cru SCLK_HDMI_SFR>, 2029*b2d2a78aSEmmanuel Vadot <&cru SCLK_HDMI_CEC>, 2030*b2d2a78aSEmmanuel Vadot <&cru PCLK_VIO_GRF>, 2031*b2d2a78aSEmmanuel Vadot <&cru PLL_VPLL>; 2032*b2d2a78aSEmmanuel Vadot clock-names = "iahb", "isfr", "cec", "grf", "ref"; 2033*b2d2a78aSEmmanuel Vadot power-domains = <&power RK3399_PD_HDCP>; 2034*b2d2a78aSEmmanuel Vadot rockchip,grf = <&grf>; 2035*b2d2a78aSEmmanuel Vadot #sound-dai-cells = <0>; 2036*b2d2a78aSEmmanuel Vadot status = "disabled"; 2037*b2d2a78aSEmmanuel Vadot 2038*b2d2a78aSEmmanuel Vadot ports { 2039*b2d2a78aSEmmanuel Vadot #address-cells = <1>; 2040*b2d2a78aSEmmanuel Vadot #size-cells = <0>; 2041*b2d2a78aSEmmanuel Vadot 2042*b2d2a78aSEmmanuel Vadot hdmi_in: port@0 { 2043*b2d2a78aSEmmanuel Vadot reg = <0>; 2044*b2d2a78aSEmmanuel Vadot #address-cells = <1>; 2045*b2d2a78aSEmmanuel Vadot #size-cells = <0>; 2046*b2d2a78aSEmmanuel Vadot 2047*b2d2a78aSEmmanuel Vadot hdmi_in_vopb: endpoint@0 { 2048*b2d2a78aSEmmanuel Vadot reg = <0>; 2049*b2d2a78aSEmmanuel Vadot remote-endpoint = <&vopb_out_hdmi>; 2050*b2d2a78aSEmmanuel Vadot }; 2051*b2d2a78aSEmmanuel Vadot hdmi_in_vopl: endpoint@1 { 2052*b2d2a78aSEmmanuel Vadot reg = <1>; 2053*b2d2a78aSEmmanuel Vadot remote-endpoint = <&vopl_out_hdmi>; 2054*b2d2a78aSEmmanuel Vadot }; 2055*b2d2a78aSEmmanuel Vadot }; 2056*b2d2a78aSEmmanuel Vadot 2057*b2d2a78aSEmmanuel Vadot hdmi_out: port@1 { 2058*b2d2a78aSEmmanuel Vadot reg = <1>; 2059*b2d2a78aSEmmanuel Vadot }; 2060*b2d2a78aSEmmanuel Vadot }; 2061*b2d2a78aSEmmanuel Vadot }; 2062*b2d2a78aSEmmanuel Vadot 2063*b2d2a78aSEmmanuel Vadot mipi_dsi: dsi@ff960000 { 2064*b2d2a78aSEmmanuel Vadot compatible = "rockchip,rk3399-mipi-dsi", "snps,dw-mipi-dsi"; 2065*b2d2a78aSEmmanuel Vadot reg = <0x0 0xff960000 0x0 0x8000>; 2066*b2d2a78aSEmmanuel Vadot interrupts = <GIC_SPI 45 IRQ_TYPE_LEVEL_HIGH 0>; 2067*b2d2a78aSEmmanuel Vadot clocks = <&cru SCLK_DPHY_PLL>, <&cru PCLK_MIPI_DSI0>, 2068*b2d2a78aSEmmanuel Vadot <&cru SCLK_DPHY_TX0_CFG>, <&cru PCLK_VIO_GRF>; 2069*b2d2a78aSEmmanuel Vadot clock-names = "ref", "pclk", "phy_cfg", "grf"; 2070*b2d2a78aSEmmanuel Vadot power-domains = <&power RK3399_PD_VIO>; 2071*b2d2a78aSEmmanuel Vadot resets = <&cru SRST_P_MIPI_DSI0>; 2072*b2d2a78aSEmmanuel Vadot reset-names = "apb"; 2073*b2d2a78aSEmmanuel Vadot rockchip,grf = <&grf>; 2074*b2d2a78aSEmmanuel Vadot #address-cells = <1>; 2075*b2d2a78aSEmmanuel Vadot #size-cells = <0>; 2076*b2d2a78aSEmmanuel Vadot status = "disabled"; 2077*b2d2a78aSEmmanuel Vadot 2078*b2d2a78aSEmmanuel Vadot ports { 2079*b2d2a78aSEmmanuel Vadot #address-cells = <1>; 2080*b2d2a78aSEmmanuel Vadot #size-cells = <0>; 2081*b2d2a78aSEmmanuel Vadot 2082*b2d2a78aSEmmanuel Vadot mipi_in: port@0 { 2083*b2d2a78aSEmmanuel Vadot reg = <0>; 2084*b2d2a78aSEmmanuel Vadot #address-cells = <1>; 2085*b2d2a78aSEmmanuel Vadot #size-cells = <0>; 2086*b2d2a78aSEmmanuel Vadot 2087*b2d2a78aSEmmanuel Vadot mipi_in_vopb: endpoint@0 { 2088*b2d2a78aSEmmanuel Vadot reg = <0>; 2089*b2d2a78aSEmmanuel Vadot remote-endpoint = <&vopb_out_mipi>; 2090*b2d2a78aSEmmanuel Vadot }; 2091*b2d2a78aSEmmanuel Vadot 2092*b2d2a78aSEmmanuel Vadot mipi_in_vopl: endpoint@1 { 2093*b2d2a78aSEmmanuel Vadot reg = <1>; 2094*b2d2a78aSEmmanuel Vadot remote-endpoint = <&vopl_out_mipi>; 2095*b2d2a78aSEmmanuel Vadot }; 2096*b2d2a78aSEmmanuel Vadot }; 2097*b2d2a78aSEmmanuel Vadot 2098*b2d2a78aSEmmanuel Vadot mipi_out: port@1 { 2099*b2d2a78aSEmmanuel Vadot reg = <1>; 2100*b2d2a78aSEmmanuel Vadot }; 2101*b2d2a78aSEmmanuel Vadot }; 2102*b2d2a78aSEmmanuel Vadot }; 2103*b2d2a78aSEmmanuel Vadot 2104*b2d2a78aSEmmanuel Vadot mipi_dsi1: dsi@ff968000 { 2105*b2d2a78aSEmmanuel Vadot compatible = "rockchip,rk3399-mipi-dsi", "snps,dw-mipi-dsi"; 2106*b2d2a78aSEmmanuel Vadot reg = <0x0 0xff968000 0x0 0x8000>; 2107*b2d2a78aSEmmanuel Vadot interrupts = <GIC_SPI 46 IRQ_TYPE_LEVEL_HIGH 0>; 2108*b2d2a78aSEmmanuel Vadot clocks = <&cru SCLK_DPHY_PLL>, <&cru PCLK_MIPI_DSI1>, 2109*b2d2a78aSEmmanuel Vadot <&cru SCLK_DPHY_TX1RX1_CFG>, <&cru PCLK_VIO_GRF>; 2110*b2d2a78aSEmmanuel Vadot clock-names = "ref", "pclk", "phy_cfg", "grf"; 2111*b2d2a78aSEmmanuel Vadot power-domains = <&power RK3399_PD_VIO>; 2112*b2d2a78aSEmmanuel Vadot resets = <&cru SRST_P_MIPI_DSI1>; 2113*b2d2a78aSEmmanuel Vadot reset-names = "apb"; 2114*b2d2a78aSEmmanuel Vadot rockchip,grf = <&grf>; 2115*b2d2a78aSEmmanuel Vadot #address-cells = <1>; 2116*b2d2a78aSEmmanuel Vadot #size-cells = <0>; 2117*b2d2a78aSEmmanuel Vadot #phy-cells = <0>; 2118*b2d2a78aSEmmanuel Vadot status = "disabled"; 2119*b2d2a78aSEmmanuel Vadot 2120*b2d2a78aSEmmanuel Vadot ports { 2121*b2d2a78aSEmmanuel Vadot #address-cells = <1>; 2122*b2d2a78aSEmmanuel Vadot #size-cells = <0>; 2123*b2d2a78aSEmmanuel Vadot 2124*b2d2a78aSEmmanuel Vadot mipi1_in: port@0 { 2125*b2d2a78aSEmmanuel Vadot reg = <0>; 2126*b2d2a78aSEmmanuel Vadot #address-cells = <1>; 2127*b2d2a78aSEmmanuel Vadot #size-cells = <0>; 2128*b2d2a78aSEmmanuel Vadot 2129*b2d2a78aSEmmanuel Vadot mipi1_in_vopb: endpoint@0 { 2130*b2d2a78aSEmmanuel Vadot reg = <0>; 2131*b2d2a78aSEmmanuel Vadot remote-endpoint = <&vopb_out_mipi1>; 2132*b2d2a78aSEmmanuel Vadot }; 2133*b2d2a78aSEmmanuel Vadot 2134*b2d2a78aSEmmanuel Vadot mipi1_in_vopl: endpoint@1 { 2135*b2d2a78aSEmmanuel Vadot reg = <1>; 2136*b2d2a78aSEmmanuel Vadot remote-endpoint = <&vopl_out_mipi1>; 2137*b2d2a78aSEmmanuel Vadot }; 2138*b2d2a78aSEmmanuel Vadot }; 2139*b2d2a78aSEmmanuel Vadot 2140*b2d2a78aSEmmanuel Vadot mipi1_out: port@1 { 2141*b2d2a78aSEmmanuel Vadot reg = <1>; 2142*b2d2a78aSEmmanuel Vadot }; 2143*b2d2a78aSEmmanuel Vadot }; 2144*b2d2a78aSEmmanuel Vadot }; 2145*b2d2a78aSEmmanuel Vadot 2146*b2d2a78aSEmmanuel Vadot edp: dp@ff970000 { 2147*b2d2a78aSEmmanuel Vadot compatible = "rockchip,rk3399-edp"; 2148*b2d2a78aSEmmanuel Vadot reg = <0x0 0xff970000 0x0 0x8000>; 2149*b2d2a78aSEmmanuel Vadot interrupts = <GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH 0>; 2150*b2d2a78aSEmmanuel Vadot clocks = <&cru PCLK_EDP>, <&cru PCLK_EDP_CTRL>, <&cru PCLK_VIO_GRF>; 2151*b2d2a78aSEmmanuel Vadot clock-names = "dp", "pclk", "grf"; 2152*b2d2a78aSEmmanuel Vadot pinctrl-names = "default"; 2153*b2d2a78aSEmmanuel Vadot pinctrl-0 = <&edp_hpd>; 2154*b2d2a78aSEmmanuel Vadot power-domains = <&power RK3399_PD_EDP>; 2155*b2d2a78aSEmmanuel Vadot resets = <&cru SRST_P_EDP_CTRL>; 2156*b2d2a78aSEmmanuel Vadot reset-names = "dp"; 2157*b2d2a78aSEmmanuel Vadot rockchip,grf = <&grf>; 2158*b2d2a78aSEmmanuel Vadot status = "disabled"; 2159*b2d2a78aSEmmanuel Vadot 2160*b2d2a78aSEmmanuel Vadot ports { 2161*b2d2a78aSEmmanuel Vadot #address-cells = <1>; 2162*b2d2a78aSEmmanuel Vadot #size-cells = <0>; 2163*b2d2a78aSEmmanuel Vadot 2164*b2d2a78aSEmmanuel Vadot edp_in: port@0 { 2165*b2d2a78aSEmmanuel Vadot reg = <0>; 2166*b2d2a78aSEmmanuel Vadot #address-cells = <1>; 2167*b2d2a78aSEmmanuel Vadot #size-cells = <0>; 2168*b2d2a78aSEmmanuel Vadot 2169*b2d2a78aSEmmanuel Vadot edp_in_vopb: endpoint@0 { 2170*b2d2a78aSEmmanuel Vadot reg = <0>; 2171*b2d2a78aSEmmanuel Vadot remote-endpoint = <&vopb_out_edp>; 2172*b2d2a78aSEmmanuel Vadot }; 2173*b2d2a78aSEmmanuel Vadot 2174*b2d2a78aSEmmanuel Vadot edp_in_vopl: endpoint@1 { 2175*b2d2a78aSEmmanuel Vadot reg = <1>; 2176*b2d2a78aSEmmanuel Vadot remote-endpoint = <&vopl_out_edp>; 2177*b2d2a78aSEmmanuel Vadot }; 2178*b2d2a78aSEmmanuel Vadot }; 2179*b2d2a78aSEmmanuel Vadot 2180*b2d2a78aSEmmanuel Vadot edp_out: port@1 { 2181*b2d2a78aSEmmanuel Vadot reg = <1>; 2182*b2d2a78aSEmmanuel Vadot }; 2183*b2d2a78aSEmmanuel Vadot }; 2184*b2d2a78aSEmmanuel Vadot }; 2185*b2d2a78aSEmmanuel Vadot 2186*b2d2a78aSEmmanuel Vadot gpu: gpu@ff9a0000 { 2187*b2d2a78aSEmmanuel Vadot compatible = "rockchip,rk3399-mali", "arm,mali-t860"; 2188*b2d2a78aSEmmanuel Vadot reg = <0x0 0xff9a0000 0x0 0x10000>; 2189*b2d2a78aSEmmanuel Vadot interrupts = <GIC_SPI 20 IRQ_TYPE_LEVEL_HIGH 0>, 2190*b2d2a78aSEmmanuel Vadot <GIC_SPI 21 IRQ_TYPE_LEVEL_HIGH 0>, 2191*b2d2a78aSEmmanuel Vadot <GIC_SPI 19 IRQ_TYPE_LEVEL_HIGH 0>; 2192*b2d2a78aSEmmanuel Vadot interrupt-names = "job", "mmu", "gpu"; 2193*b2d2a78aSEmmanuel Vadot clocks = <&cru ACLK_GPU>; 2194*b2d2a78aSEmmanuel Vadot #cooling-cells = <2>; 2195*b2d2a78aSEmmanuel Vadot dynamic-power-coefficient = <2640>; 2196*b2d2a78aSEmmanuel Vadot power-domains = <&power RK3399_PD_GPU>; 2197*b2d2a78aSEmmanuel Vadot status = "disabled"; 2198*b2d2a78aSEmmanuel Vadot }; 2199*b2d2a78aSEmmanuel Vadot 2200*b2d2a78aSEmmanuel Vadot pinctrl: pinctrl { 2201*b2d2a78aSEmmanuel Vadot compatible = "rockchip,rk3399-pinctrl"; 2202*b2d2a78aSEmmanuel Vadot rockchip,grf = <&grf>; 2203*b2d2a78aSEmmanuel Vadot rockchip,pmu = <&pmugrf>; 2204*b2d2a78aSEmmanuel Vadot #address-cells = <2>; 2205*b2d2a78aSEmmanuel Vadot #size-cells = <2>; 2206*b2d2a78aSEmmanuel Vadot ranges; 2207*b2d2a78aSEmmanuel Vadot 2208*b2d2a78aSEmmanuel Vadot gpio0: gpio@ff720000 { 2209*b2d2a78aSEmmanuel Vadot compatible = "rockchip,gpio-bank"; 2210*b2d2a78aSEmmanuel Vadot reg = <0x0 0xff720000 0x0 0x100>; 2211*b2d2a78aSEmmanuel Vadot clocks = <&pmucru PCLK_GPIO0_PMU>; 2212*b2d2a78aSEmmanuel Vadot interrupts = <GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH 0>; 2213*b2d2a78aSEmmanuel Vadot 2214*b2d2a78aSEmmanuel Vadot gpio-controller; 2215*b2d2a78aSEmmanuel Vadot #gpio-cells = <0x2>; 2216*b2d2a78aSEmmanuel Vadot 2217*b2d2a78aSEmmanuel Vadot interrupt-controller; 2218*b2d2a78aSEmmanuel Vadot #interrupt-cells = <0x2>; 2219*b2d2a78aSEmmanuel Vadot }; 2220*b2d2a78aSEmmanuel Vadot 2221*b2d2a78aSEmmanuel Vadot gpio1: gpio@ff730000 { 2222*b2d2a78aSEmmanuel Vadot compatible = "rockchip,gpio-bank"; 2223*b2d2a78aSEmmanuel Vadot reg = <0x0 0xff730000 0x0 0x100>; 2224*b2d2a78aSEmmanuel Vadot clocks = <&pmucru PCLK_GPIO1_PMU>; 2225*b2d2a78aSEmmanuel Vadot interrupts = <GIC_SPI 15 IRQ_TYPE_LEVEL_HIGH 0>; 2226*b2d2a78aSEmmanuel Vadot 2227*b2d2a78aSEmmanuel Vadot gpio-controller; 2228*b2d2a78aSEmmanuel Vadot #gpio-cells = <0x2>; 2229*b2d2a78aSEmmanuel Vadot 2230*b2d2a78aSEmmanuel Vadot interrupt-controller; 2231*b2d2a78aSEmmanuel Vadot #interrupt-cells = <0x2>; 2232*b2d2a78aSEmmanuel Vadot }; 2233*b2d2a78aSEmmanuel Vadot 2234*b2d2a78aSEmmanuel Vadot gpio2: gpio@ff780000 { 2235*b2d2a78aSEmmanuel Vadot compatible = "rockchip,gpio-bank"; 2236*b2d2a78aSEmmanuel Vadot reg = <0x0 0xff780000 0x0 0x100>; 2237*b2d2a78aSEmmanuel Vadot clocks = <&cru PCLK_GPIO2>; 2238*b2d2a78aSEmmanuel Vadot interrupts = <GIC_SPI 16 IRQ_TYPE_LEVEL_HIGH 0>; 2239*b2d2a78aSEmmanuel Vadot 2240*b2d2a78aSEmmanuel Vadot gpio-controller; 2241*b2d2a78aSEmmanuel Vadot #gpio-cells = <0x2>; 2242*b2d2a78aSEmmanuel Vadot 2243*b2d2a78aSEmmanuel Vadot interrupt-controller; 2244*b2d2a78aSEmmanuel Vadot #interrupt-cells = <0x2>; 2245*b2d2a78aSEmmanuel Vadot }; 2246*b2d2a78aSEmmanuel Vadot 2247*b2d2a78aSEmmanuel Vadot gpio3: gpio@ff788000 { 2248*b2d2a78aSEmmanuel Vadot compatible = "rockchip,gpio-bank"; 2249*b2d2a78aSEmmanuel Vadot reg = <0x0 0xff788000 0x0 0x100>; 2250*b2d2a78aSEmmanuel Vadot clocks = <&cru PCLK_GPIO3>; 2251*b2d2a78aSEmmanuel Vadot interrupts = <GIC_SPI 17 IRQ_TYPE_LEVEL_HIGH 0>; 2252*b2d2a78aSEmmanuel Vadot 2253*b2d2a78aSEmmanuel Vadot gpio-controller; 2254*b2d2a78aSEmmanuel Vadot #gpio-cells = <0x2>; 2255*b2d2a78aSEmmanuel Vadot 2256*b2d2a78aSEmmanuel Vadot interrupt-controller; 2257*b2d2a78aSEmmanuel Vadot #interrupt-cells = <0x2>; 2258*b2d2a78aSEmmanuel Vadot }; 2259*b2d2a78aSEmmanuel Vadot 2260*b2d2a78aSEmmanuel Vadot gpio4: gpio@ff790000 { 2261*b2d2a78aSEmmanuel Vadot compatible = "rockchip,gpio-bank"; 2262*b2d2a78aSEmmanuel Vadot reg = <0x0 0xff790000 0x0 0x100>; 2263*b2d2a78aSEmmanuel Vadot clocks = <&cru PCLK_GPIO4>; 2264*b2d2a78aSEmmanuel Vadot interrupts = <GIC_SPI 18 IRQ_TYPE_LEVEL_HIGH 0>; 2265*b2d2a78aSEmmanuel Vadot 2266*b2d2a78aSEmmanuel Vadot gpio-controller; 2267*b2d2a78aSEmmanuel Vadot #gpio-cells = <0x2>; 2268*b2d2a78aSEmmanuel Vadot 2269*b2d2a78aSEmmanuel Vadot interrupt-controller; 2270*b2d2a78aSEmmanuel Vadot #interrupt-cells = <0x2>; 2271*b2d2a78aSEmmanuel Vadot }; 2272*b2d2a78aSEmmanuel Vadot 2273*b2d2a78aSEmmanuel Vadot pcfg_pull_up: pcfg-pull-up { 2274*b2d2a78aSEmmanuel Vadot bias-pull-up; 2275*b2d2a78aSEmmanuel Vadot }; 2276*b2d2a78aSEmmanuel Vadot 2277*b2d2a78aSEmmanuel Vadot pcfg_pull_down: pcfg-pull-down { 2278*b2d2a78aSEmmanuel Vadot bias-pull-down; 2279*b2d2a78aSEmmanuel Vadot }; 2280*b2d2a78aSEmmanuel Vadot 2281*b2d2a78aSEmmanuel Vadot pcfg_pull_none: pcfg-pull-none { 2282*b2d2a78aSEmmanuel Vadot bias-disable; 2283*b2d2a78aSEmmanuel Vadot }; 2284*b2d2a78aSEmmanuel Vadot 2285*b2d2a78aSEmmanuel Vadot pcfg_pull_none_12ma: pcfg-pull-none-12ma { 2286*b2d2a78aSEmmanuel Vadot bias-disable; 2287*b2d2a78aSEmmanuel Vadot drive-strength = <12>; 2288*b2d2a78aSEmmanuel Vadot }; 2289*b2d2a78aSEmmanuel Vadot 2290*b2d2a78aSEmmanuel Vadot pcfg_pull_none_13ma: pcfg-pull-none-13ma { 2291*b2d2a78aSEmmanuel Vadot bias-disable; 2292*b2d2a78aSEmmanuel Vadot drive-strength = <13>; 2293*b2d2a78aSEmmanuel Vadot }; 2294*b2d2a78aSEmmanuel Vadot 2295*b2d2a78aSEmmanuel Vadot pcfg_pull_none_18ma: pcfg-pull-none-18ma { 2296*b2d2a78aSEmmanuel Vadot bias-disable; 2297*b2d2a78aSEmmanuel Vadot drive-strength = <18>; 2298*b2d2a78aSEmmanuel Vadot }; 2299*b2d2a78aSEmmanuel Vadot 2300*b2d2a78aSEmmanuel Vadot pcfg_pull_none_20ma: pcfg-pull-none-20ma { 2301*b2d2a78aSEmmanuel Vadot bias-disable; 2302*b2d2a78aSEmmanuel Vadot drive-strength = <20>; 2303*b2d2a78aSEmmanuel Vadot }; 2304*b2d2a78aSEmmanuel Vadot 2305*b2d2a78aSEmmanuel Vadot pcfg_pull_up_2ma: pcfg-pull-up-2ma { 2306*b2d2a78aSEmmanuel Vadot bias-pull-up; 2307*b2d2a78aSEmmanuel Vadot drive-strength = <2>; 2308*b2d2a78aSEmmanuel Vadot }; 2309*b2d2a78aSEmmanuel Vadot 2310*b2d2a78aSEmmanuel Vadot pcfg_pull_up_8ma: pcfg-pull-up-8ma { 2311*b2d2a78aSEmmanuel Vadot bias-pull-up; 2312*b2d2a78aSEmmanuel Vadot drive-strength = <8>; 2313*b2d2a78aSEmmanuel Vadot }; 2314*b2d2a78aSEmmanuel Vadot 2315*b2d2a78aSEmmanuel Vadot pcfg_pull_up_18ma: pcfg-pull-up-18ma { 2316*b2d2a78aSEmmanuel Vadot bias-pull-up; 2317*b2d2a78aSEmmanuel Vadot drive-strength = <18>; 2318*b2d2a78aSEmmanuel Vadot }; 2319*b2d2a78aSEmmanuel Vadot 2320*b2d2a78aSEmmanuel Vadot pcfg_pull_up_20ma: pcfg-pull-up-20ma { 2321*b2d2a78aSEmmanuel Vadot bias-pull-up; 2322*b2d2a78aSEmmanuel Vadot drive-strength = <20>; 2323*b2d2a78aSEmmanuel Vadot }; 2324*b2d2a78aSEmmanuel Vadot 2325*b2d2a78aSEmmanuel Vadot pcfg_pull_down_4ma: pcfg-pull-down-4ma { 2326*b2d2a78aSEmmanuel Vadot bias-pull-down; 2327*b2d2a78aSEmmanuel Vadot drive-strength = <4>; 2328*b2d2a78aSEmmanuel Vadot }; 2329*b2d2a78aSEmmanuel Vadot 2330*b2d2a78aSEmmanuel Vadot pcfg_pull_down_8ma: pcfg-pull-down-8ma { 2331*b2d2a78aSEmmanuel Vadot bias-pull-down; 2332*b2d2a78aSEmmanuel Vadot drive-strength = <8>; 2333*b2d2a78aSEmmanuel Vadot }; 2334*b2d2a78aSEmmanuel Vadot 2335*b2d2a78aSEmmanuel Vadot pcfg_pull_down_12ma: pcfg-pull-down-12ma { 2336*b2d2a78aSEmmanuel Vadot bias-pull-down; 2337*b2d2a78aSEmmanuel Vadot drive-strength = <12>; 2338*b2d2a78aSEmmanuel Vadot }; 2339*b2d2a78aSEmmanuel Vadot 2340*b2d2a78aSEmmanuel Vadot pcfg_pull_down_18ma: pcfg-pull-down-18ma { 2341*b2d2a78aSEmmanuel Vadot bias-pull-down; 2342*b2d2a78aSEmmanuel Vadot drive-strength = <18>; 2343*b2d2a78aSEmmanuel Vadot }; 2344*b2d2a78aSEmmanuel Vadot 2345*b2d2a78aSEmmanuel Vadot pcfg_pull_down_20ma: pcfg-pull-down-20ma { 2346*b2d2a78aSEmmanuel Vadot bias-pull-down; 2347*b2d2a78aSEmmanuel Vadot drive-strength = <20>; 2348*b2d2a78aSEmmanuel Vadot }; 2349*b2d2a78aSEmmanuel Vadot 2350*b2d2a78aSEmmanuel Vadot pcfg_output_high: pcfg-output-high { 2351*b2d2a78aSEmmanuel Vadot output-high; 2352*b2d2a78aSEmmanuel Vadot }; 2353*b2d2a78aSEmmanuel Vadot 2354*b2d2a78aSEmmanuel Vadot pcfg_output_low: pcfg-output-low { 2355*b2d2a78aSEmmanuel Vadot output-low; 2356*b2d2a78aSEmmanuel Vadot }; 2357*b2d2a78aSEmmanuel Vadot 2358*b2d2a78aSEmmanuel Vadot pcfg_input_enable: pcfg-input-enable { 2359*b2d2a78aSEmmanuel Vadot input-enable; 2360*b2d2a78aSEmmanuel Vadot }; 2361*b2d2a78aSEmmanuel Vadot 2362*b2d2a78aSEmmanuel Vadot pcfg_input_pull_up: pcfg-input-pull-up { 2363*b2d2a78aSEmmanuel Vadot input-enable; 2364*b2d2a78aSEmmanuel Vadot bias-pull-up; 2365*b2d2a78aSEmmanuel Vadot }; 2366*b2d2a78aSEmmanuel Vadot 2367*b2d2a78aSEmmanuel Vadot pcfg_input_pull_down: pcfg-input-pull-down { 2368*b2d2a78aSEmmanuel Vadot input-enable; 2369*b2d2a78aSEmmanuel Vadot bias-pull-down; 2370*b2d2a78aSEmmanuel Vadot }; 2371*b2d2a78aSEmmanuel Vadot 2372*b2d2a78aSEmmanuel Vadot clock { 2373*b2d2a78aSEmmanuel Vadot clk_32k: clk-32k { 2374*b2d2a78aSEmmanuel Vadot rockchip,pins = <0 RK_PA0 2 &pcfg_pull_none>; 2375*b2d2a78aSEmmanuel Vadot }; 2376*b2d2a78aSEmmanuel Vadot }; 2377*b2d2a78aSEmmanuel Vadot 2378*b2d2a78aSEmmanuel Vadot cif { 2379*b2d2a78aSEmmanuel Vadot cif_clkin: cif-clkin { 2380*b2d2a78aSEmmanuel Vadot rockchip,pins = 2381*b2d2a78aSEmmanuel Vadot <2 RK_PB2 3 &pcfg_pull_none>; 2382*b2d2a78aSEmmanuel Vadot }; 2383*b2d2a78aSEmmanuel Vadot 2384*b2d2a78aSEmmanuel Vadot cif_clkouta: cif-clkouta { 2385*b2d2a78aSEmmanuel Vadot rockchip,pins = 2386*b2d2a78aSEmmanuel Vadot <2 RK_PB3 3 &pcfg_pull_none>; 2387*b2d2a78aSEmmanuel Vadot }; 2388*b2d2a78aSEmmanuel Vadot }; 2389*b2d2a78aSEmmanuel Vadot 2390*b2d2a78aSEmmanuel Vadot edp { 2391*b2d2a78aSEmmanuel Vadot edp_hpd: edp-hpd { 2392*b2d2a78aSEmmanuel Vadot rockchip,pins = 2393*b2d2a78aSEmmanuel Vadot <4 RK_PC7 2 &pcfg_pull_none>; 2394*b2d2a78aSEmmanuel Vadot }; 2395*b2d2a78aSEmmanuel Vadot }; 2396*b2d2a78aSEmmanuel Vadot 2397*b2d2a78aSEmmanuel Vadot gmac { 2398*b2d2a78aSEmmanuel Vadot rgmii_pins: rgmii-pins { 2399*b2d2a78aSEmmanuel Vadot rockchip,pins = 2400*b2d2a78aSEmmanuel Vadot /* mac_txclk */ 2401*b2d2a78aSEmmanuel Vadot <3 RK_PC1 1 &pcfg_pull_none_13ma>, 2402*b2d2a78aSEmmanuel Vadot /* mac_rxclk */ 2403*b2d2a78aSEmmanuel Vadot <3 RK_PB6 1 &pcfg_pull_none>, 2404*b2d2a78aSEmmanuel Vadot /* mac_mdio */ 2405*b2d2a78aSEmmanuel Vadot <3 RK_PB5 1 &pcfg_pull_none>, 2406*b2d2a78aSEmmanuel Vadot /* mac_txen */ 2407*b2d2a78aSEmmanuel Vadot <3 RK_PB4 1 &pcfg_pull_none_13ma>, 2408*b2d2a78aSEmmanuel Vadot /* mac_clk */ 2409*b2d2a78aSEmmanuel Vadot <3 RK_PB3 1 &pcfg_pull_none>, 2410*b2d2a78aSEmmanuel Vadot /* mac_rxdv */ 2411*b2d2a78aSEmmanuel Vadot <3 RK_PB1 1 &pcfg_pull_none>, 2412*b2d2a78aSEmmanuel Vadot /* mac_mdc */ 2413*b2d2a78aSEmmanuel Vadot <3 RK_PB0 1 &pcfg_pull_none>, 2414*b2d2a78aSEmmanuel Vadot /* mac_rxd1 */ 2415*b2d2a78aSEmmanuel Vadot <3 RK_PA7 1 &pcfg_pull_none>, 2416*b2d2a78aSEmmanuel Vadot /* mac_rxd0 */ 2417*b2d2a78aSEmmanuel Vadot <3 RK_PA6 1 &pcfg_pull_none>, 2418*b2d2a78aSEmmanuel Vadot /* mac_txd1 */ 2419*b2d2a78aSEmmanuel Vadot <3 RK_PA5 1 &pcfg_pull_none_13ma>, 2420*b2d2a78aSEmmanuel Vadot /* mac_txd0 */ 2421*b2d2a78aSEmmanuel Vadot <3 RK_PA4 1 &pcfg_pull_none_13ma>, 2422*b2d2a78aSEmmanuel Vadot /* mac_rxd3 */ 2423*b2d2a78aSEmmanuel Vadot <3 RK_PA3 1 &pcfg_pull_none>, 2424*b2d2a78aSEmmanuel Vadot /* mac_rxd2 */ 2425*b2d2a78aSEmmanuel Vadot <3 RK_PA2 1 &pcfg_pull_none>, 2426*b2d2a78aSEmmanuel Vadot /* mac_txd3 */ 2427*b2d2a78aSEmmanuel Vadot <3 RK_PA1 1 &pcfg_pull_none_13ma>, 2428*b2d2a78aSEmmanuel Vadot /* mac_txd2 */ 2429*b2d2a78aSEmmanuel Vadot <3 RK_PA0 1 &pcfg_pull_none_13ma>; 2430*b2d2a78aSEmmanuel Vadot }; 2431*b2d2a78aSEmmanuel Vadot 2432*b2d2a78aSEmmanuel Vadot rmii_pins: rmii-pins { 2433*b2d2a78aSEmmanuel Vadot rockchip,pins = 2434*b2d2a78aSEmmanuel Vadot /* mac_mdio */ 2435*b2d2a78aSEmmanuel Vadot <3 RK_PB5 1 &pcfg_pull_none>, 2436*b2d2a78aSEmmanuel Vadot /* mac_txen */ 2437*b2d2a78aSEmmanuel Vadot <3 RK_PB4 1 &pcfg_pull_none_13ma>, 2438*b2d2a78aSEmmanuel Vadot /* mac_clk */ 2439*b2d2a78aSEmmanuel Vadot <3 RK_PB3 1 &pcfg_pull_none>, 2440*b2d2a78aSEmmanuel Vadot /* mac_rxer */ 2441*b2d2a78aSEmmanuel Vadot <3 RK_PB2 1 &pcfg_pull_none>, 2442*b2d2a78aSEmmanuel Vadot /* mac_rxdv */ 2443*b2d2a78aSEmmanuel Vadot <3 RK_PB1 1 &pcfg_pull_none>, 2444*b2d2a78aSEmmanuel Vadot /* mac_mdc */ 2445*b2d2a78aSEmmanuel Vadot <3 RK_PB0 1 &pcfg_pull_none>, 2446*b2d2a78aSEmmanuel Vadot /* mac_rxd1 */ 2447*b2d2a78aSEmmanuel Vadot <3 RK_PA7 1 &pcfg_pull_none>, 2448*b2d2a78aSEmmanuel Vadot /* mac_rxd0 */ 2449*b2d2a78aSEmmanuel Vadot <3 RK_PA6 1 &pcfg_pull_none>, 2450*b2d2a78aSEmmanuel Vadot /* mac_txd1 */ 2451*b2d2a78aSEmmanuel Vadot <3 RK_PA5 1 &pcfg_pull_none_13ma>, 2452*b2d2a78aSEmmanuel Vadot /* mac_txd0 */ 2453*b2d2a78aSEmmanuel Vadot <3 RK_PA4 1 &pcfg_pull_none_13ma>; 2454*b2d2a78aSEmmanuel Vadot }; 2455*b2d2a78aSEmmanuel Vadot }; 2456*b2d2a78aSEmmanuel Vadot 2457*b2d2a78aSEmmanuel Vadot i2c0 { 2458*b2d2a78aSEmmanuel Vadot i2c0_xfer: i2c0-xfer { 2459*b2d2a78aSEmmanuel Vadot rockchip,pins = 2460*b2d2a78aSEmmanuel Vadot <1 RK_PB7 2 &pcfg_pull_none>, 2461*b2d2a78aSEmmanuel Vadot <1 RK_PC0 2 &pcfg_pull_none>; 2462*b2d2a78aSEmmanuel Vadot }; 2463*b2d2a78aSEmmanuel Vadot }; 2464*b2d2a78aSEmmanuel Vadot 2465*b2d2a78aSEmmanuel Vadot i2c1 { 2466*b2d2a78aSEmmanuel Vadot i2c1_xfer: i2c1-xfer { 2467*b2d2a78aSEmmanuel Vadot rockchip,pins = 2468*b2d2a78aSEmmanuel Vadot <4 RK_PA2 1 &pcfg_pull_none>, 2469*b2d2a78aSEmmanuel Vadot <4 RK_PA1 1 &pcfg_pull_none>; 2470*b2d2a78aSEmmanuel Vadot }; 2471*b2d2a78aSEmmanuel Vadot }; 2472*b2d2a78aSEmmanuel Vadot 2473*b2d2a78aSEmmanuel Vadot i2c2 { 2474*b2d2a78aSEmmanuel Vadot i2c2_xfer: i2c2-xfer { 2475*b2d2a78aSEmmanuel Vadot rockchip,pins = 2476*b2d2a78aSEmmanuel Vadot <2 RK_PA1 2 &pcfg_pull_none_12ma>, 2477*b2d2a78aSEmmanuel Vadot <2 RK_PA0 2 &pcfg_pull_none_12ma>; 2478*b2d2a78aSEmmanuel Vadot }; 2479*b2d2a78aSEmmanuel Vadot }; 2480*b2d2a78aSEmmanuel Vadot 2481*b2d2a78aSEmmanuel Vadot i2c3 { 2482*b2d2a78aSEmmanuel Vadot i2c3_xfer: i2c3-xfer { 2483*b2d2a78aSEmmanuel Vadot rockchip,pins = 2484*b2d2a78aSEmmanuel Vadot <4 RK_PC1 1 &pcfg_pull_none>, 2485*b2d2a78aSEmmanuel Vadot <4 RK_PC0 1 &pcfg_pull_none>; 2486*b2d2a78aSEmmanuel Vadot }; 2487*b2d2a78aSEmmanuel Vadot }; 2488*b2d2a78aSEmmanuel Vadot 2489*b2d2a78aSEmmanuel Vadot i2c4 { 2490*b2d2a78aSEmmanuel Vadot i2c4_xfer: i2c4-xfer { 2491*b2d2a78aSEmmanuel Vadot rockchip,pins = 2492*b2d2a78aSEmmanuel Vadot <1 RK_PB4 1 &pcfg_pull_none>, 2493*b2d2a78aSEmmanuel Vadot <1 RK_PB3 1 &pcfg_pull_none>; 2494*b2d2a78aSEmmanuel Vadot }; 2495*b2d2a78aSEmmanuel Vadot }; 2496*b2d2a78aSEmmanuel Vadot 2497*b2d2a78aSEmmanuel Vadot i2c5 { 2498*b2d2a78aSEmmanuel Vadot i2c5_xfer: i2c5-xfer { 2499*b2d2a78aSEmmanuel Vadot rockchip,pins = 2500*b2d2a78aSEmmanuel Vadot <3 RK_PB3 2 &pcfg_pull_none>, 2501*b2d2a78aSEmmanuel Vadot <3 RK_PB2 2 &pcfg_pull_none>; 2502*b2d2a78aSEmmanuel Vadot }; 2503*b2d2a78aSEmmanuel Vadot }; 2504*b2d2a78aSEmmanuel Vadot 2505*b2d2a78aSEmmanuel Vadot i2c6 { 2506*b2d2a78aSEmmanuel Vadot i2c6_xfer: i2c6-xfer { 2507*b2d2a78aSEmmanuel Vadot rockchip,pins = 2508*b2d2a78aSEmmanuel Vadot <2 RK_PB2 2 &pcfg_pull_none>, 2509*b2d2a78aSEmmanuel Vadot <2 RK_PB1 2 &pcfg_pull_none>; 2510*b2d2a78aSEmmanuel Vadot }; 2511*b2d2a78aSEmmanuel Vadot }; 2512*b2d2a78aSEmmanuel Vadot 2513*b2d2a78aSEmmanuel Vadot i2c7 { 2514*b2d2a78aSEmmanuel Vadot i2c7_xfer: i2c7-xfer { 2515*b2d2a78aSEmmanuel Vadot rockchip,pins = 2516*b2d2a78aSEmmanuel Vadot <2 RK_PB0 2 &pcfg_pull_none>, 2517*b2d2a78aSEmmanuel Vadot <2 RK_PA7 2 &pcfg_pull_none>; 2518*b2d2a78aSEmmanuel Vadot }; 2519*b2d2a78aSEmmanuel Vadot }; 2520*b2d2a78aSEmmanuel Vadot 2521*b2d2a78aSEmmanuel Vadot i2c8 { 2522*b2d2a78aSEmmanuel Vadot i2c8_xfer: i2c8-xfer { 2523*b2d2a78aSEmmanuel Vadot rockchip,pins = 2524*b2d2a78aSEmmanuel Vadot <1 RK_PC5 1 &pcfg_pull_none>, 2525*b2d2a78aSEmmanuel Vadot <1 RK_PC4 1 &pcfg_pull_none>; 2526*b2d2a78aSEmmanuel Vadot }; 2527*b2d2a78aSEmmanuel Vadot }; 2528*b2d2a78aSEmmanuel Vadot 2529*b2d2a78aSEmmanuel Vadot i2s0 { 2530*b2d2a78aSEmmanuel Vadot i2s0_2ch_bus: i2s0-2ch-bus { 2531*b2d2a78aSEmmanuel Vadot rockchip,pins = 2532*b2d2a78aSEmmanuel Vadot <3 RK_PD0 1 &pcfg_pull_none>, 2533*b2d2a78aSEmmanuel Vadot <3 RK_PD1 1 &pcfg_pull_none>, 2534*b2d2a78aSEmmanuel Vadot <3 RK_PD2 1 &pcfg_pull_none>, 2535*b2d2a78aSEmmanuel Vadot <3 RK_PD3 1 &pcfg_pull_none>, 2536*b2d2a78aSEmmanuel Vadot <3 RK_PD7 1 &pcfg_pull_none>, 2537*b2d2a78aSEmmanuel Vadot <4 RK_PA0 1 &pcfg_pull_none>; 2538*b2d2a78aSEmmanuel Vadot }; 2539*b2d2a78aSEmmanuel Vadot 2540*b2d2a78aSEmmanuel Vadot i2s0_2ch_bus_bclk_off: i2s0-2ch-bus-bclk-off { 2541*b2d2a78aSEmmanuel Vadot rockchip,pins = 2542*b2d2a78aSEmmanuel Vadot <3 RK_PD0 RK_FUNC_GPIO &pcfg_pull_none>, 2543*b2d2a78aSEmmanuel Vadot <3 RK_PD1 1 &pcfg_pull_none>, 2544*b2d2a78aSEmmanuel Vadot <3 RK_PD2 1 &pcfg_pull_none>, 2545*b2d2a78aSEmmanuel Vadot <3 RK_PD3 1 &pcfg_pull_none>, 2546*b2d2a78aSEmmanuel Vadot <3 RK_PD7 1 &pcfg_pull_none>, 2547*b2d2a78aSEmmanuel Vadot <4 RK_PA0 1 &pcfg_pull_none>; 2548*b2d2a78aSEmmanuel Vadot }; 2549*b2d2a78aSEmmanuel Vadot 2550*b2d2a78aSEmmanuel Vadot i2s0_8ch_bus: i2s0-8ch-bus { 2551*b2d2a78aSEmmanuel Vadot rockchip,pins = 2552*b2d2a78aSEmmanuel Vadot <3 RK_PD0 1 &pcfg_pull_none>, 2553*b2d2a78aSEmmanuel Vadot <3 RK_PD1 1 &pcfg_pull_none>, 2554*b2d2a78aSEmmanuel Vadot <3 RK_PD2 1 &pcfg_pull_none>, 2555*b2d2a78aSEmmanuel Vadot <3 RK_PD3 1 &pcfg_pull_none>, 2556*b2d2a78aSEmmanuel Vadot <3 RK_PD4 1 &pcfg_pull_none>, 2557*b2d2a78aSEmmanuel Vadot <3 RK_PD5 1 &pcfg_pull_none>, 2558*b2d2a78aSEmmanuel Vadot <3 RK_PD6 1 &pcfg_pull_none>, 2559*b2d2a78aSEmmanuel Vadot <3 RK_PD7 1 &pcfg_pull_none>, 2560*b2d2a78aSEmmanuel Vadot <4 RK_PA0 1 &pcfg_pull_none>; 2561*b2d2a78aSEmmanuel Vadot }; 2562*b2d2a78aSEmmanuel Vadot 2563*b2d2a78aSEmmanuel Vadot i2s0_8ch_bus_bclk_off: i2s0-8ch-bus-bclk-off { 2564*b2d2a78aSEmmanuel Vadot rockchip,pins = 2565*b2d2a78aSEmmanuel Vadot <3 RK_PD0 RK_FUNC_GPIO &pcfg_pull_none>, 2566*b2d2a78aSEmmanuel Vadot <3 RK_PD1 1 &pcfg_pull_none>, 2567*b2d2a78aSEmmanuel Vadot <3 RK_PD2 1 &pcfg_pull_none>, 2568*b2d2a78aSEmmanuel Vadot <3 RK_PD3 1 &pcfg_pull_none>, 2569*b2d2a78aSEmmanuel Vadot <3 RK_PD4 1 &pcfg_pull_none>, 2570*b2d2a78aSEmmanuel Vadot <3 RK_PD5 1 &pcfg_pull_none>, 2571*b2d2a78aSEmmanuel Vadot <3 RK_PD6 1 &pcfg_pull_none>, 2572*b2d2a78aSEmmanuel Vadot <3 RK_PD7 1 &pcfg_pull_none>, 2573*b2d2a78aSEmmanuel Vadot <4 RK_PA0 1 &pcfg_pull_none>; 2574*b2d2a78aSEmmanuel Vadot }; 2575*b2d2a78aSEmmanuel Vadot }; 2576*b2d2a78aSEmmanuel Vadot 2577*b2d2a78aSEmmanuel Vadot i2s1 { 2578*b2d2a78aSEmmanuel Vadot i2s1_2ch_bus: i2s1-2ch-bus { 2579*b2d2a78aSEmmanuel Vadot rockchip,pins = 2580*b2d2a78aSEmmanuel Vadot <4 RK_PA3 1 &pcfg_pull_none>, 2581*b2d2a78aSEmmanuel Vadot <4 RK_PA4 1 &pcfg_pull_none>, 2582*b2d2a78aSEmmanuel Vadot <4 RK_PA5 1 &pcfg_pull_none>, 2583*b2d2a78aSEmmanuel Vadot <4 RK_PA6 1 &pcfg_pull_none>, 2584*b2d2a78aSEmmanuel Vadot <4 RK_PA7 1 &pcfg_pull_none>; 2585*b2d2a78aSEmmanuel Vadot }; 2586*b2d2a78aSEmmanuel Vadot 2587*b2d2a78aSEmmanuel Vadot i2s1_2ch_bus_bclk_off: i2s1-2ch-bus-bclk-off { 2588*b2d2a78aSEmmanuel Vadot rockchip,pins = 2589*b2d2a78aSEmmanuel Vadot <4 RK_PA3 RK_FUNC_GPIO &pcfg_pull_none>, 2590*b2d2a78aSEmmanuel Vadot <4 RK_PA4 1 &pcfg_pull_none>, 2591*b2d2a78aSEmmanuel Vadot <4 RK_PA5 1 &pcfg_pull_none>, 2592*b2d2a78aSEmmanuel Vadot <4 RK_PA6 1 &pcfg_pull_none>, 2593*b2d2a78aSEmmanuel Vadot <4 RK_PA7 1 &pcfg_pull_none>; 2594*b2d2a78aSEmmanuel Vadot }; 2595*b2d2a78aSEmmanuel Vadot }; 2596*b2d2a78aSEmmanuel Vadot 2597*b2d2a78aSEmmanuel Vadot sdio0 { 2598*b2d2a78aSEmmanuel Vadot sdio0_bus1: sdio0-bus1 { 2599*b2d2a78aSEmmanuel Vadot rockchip,pins = 2600*b2d2a78aSEmmanuel Vadot <2 RK_PC4 1 &pcfg_pull_up>; 2601*b2d2a78aSEmmanuel Vadot }; 2602*b2d2a78aSEmmanuel Vadot 2603*b2d2a78aSEmmanuel Vadot sdio0_bus4: sdio0-bus4 { 2604*b2d2a78aSEmmanuel Vadot rockchip,pins = 2605*b2d2a78aSEmmanuel Vadot <2 RK_PC4 1 &pcfg_pull_up>, 2606*b2d2a78aSEmmanuel Vadot <2 RK_PC5 1 &pcfg_pull_up>, 2607*b2d2a78aSEmmanuel Vadot <2 RK_PC6 1 &pcfg_pull_up>, 2608*b2d2a78aSEmmanuel Vadot <2 RK_PC7 1 &pcfg_pull_up>; 2609*b2d2a78aSEmmanuel Vadot }; 2610*b2d2a78aSEmmanuel Vadot 2611*b2d2a78aSEmmanuel Vadot sdio0_cmd: sdio0-cmd { 2612*b2d2a78aSEmmanuel Vadot rockchip,pins = 2613*b2d2a78aSEmmanuel Vadot <2 RK_PD0 1 &pcfg_pull_up>; 2614*b2d2a78aSEmmanuel Vadot }; 2615*b2d2a78aSEmmanuel Vadot 2616*b2d2a78aSEmmanuel Vadot sdio0_clk: sdio0-clk { 2617*b2d2a78aSEmmanuel Vadot rockchip,pins = 2618*b2d2a78aSEmmanuel Vadot <2 RK_PD1 1 &pcfg_pull_none>; 2619*b2d2a78aSEmmanuel Vadot }; 2620*b2d2a78aSEmmanuel Vadot 2621*b2d2a78aSEmmanuel Vadot sdio0_cd: sdio0-cd { 2622*b2d2a78aSEmmanuel Vadot rockchip,pins = 2623*b2d2a78aSEmmanuel Vadot <2 RK_PD2 1 &pcfg_pull_up>; 2624*b2d2a78aSEmmanuel Vadot }; 2625*b2d2a78aSEmmanuel Vadot 2626*b2d2a78aSEmmanuel Vadot sdio0_pwr: sdio0-pwr { 2627*b2d2a78aSEmmanuel Vadot rockchip,pins = 2628*b2d2a78aSEmmanuel Vadot <2 RK_PD3 1 &pcfg_pull_up>; 2629*b2d2a78aSEmmanuel Vadot }; 2630*b2d2a78aSEmmanuel Vadot 2631*b2d2a78aSEmmanuel Vadot sdio0_bkpwr: sdio0-bkpwr { 2632*b2d2a78aSEmmanuel Vadot rockchip,pins = 2633*b2d2a78aSEmmanuel Vadot <2 RK_PD4 1 &pcfg_pull_up>; 2634*b2d2a78aSEmmanuel Vadot }; 2635*b2d2a78aSEmmanuel Vadot 2636*b2d2a78aSEmmanuel Vadot sdio0_wp: sdio0-wp { 2637*b2d2a78aSEmmanuel Vadot rockchip,pins = 2638*b2d2a78aSEmmanuel Vadot <0 RK_PA3 1 &pcfg_pull_up>; 2639*b2d2a78aSEmmanuel Vadot }; 2640*b2d2a78aSEmmanuel Vadot 2641*b2d2a78aSEmmanuel Vadot sdio0_int: sdio0-int { 2642*b2d2a78aSEmmanuel Vadot rockchip,pins = 2643*b2d2a78aSEmmanuel Vadot <0 RK_PA4 1 &pcfg_pull_up>; 2644*b2d2a78aSEmmanuel Vadot }; 2645*b2d2a78aSEmmanuel Vadot }; 2646*b2d2a78aSEmmanuel Vadot 2647*b2d2a78aSEmmanuel Vadot sdmmc { 2648*b2d2a78aSEmmanuel Vadot sdmmc_bus1: sdmmc-bus1 { 2649*b2d2a78aSEmmanuel Vadot rockchip,pins = 2650*b2d2a78aSEmmanuel Vadot <4 RK_PB0 1 &pcfg_pull_up>; 2651*b2d2a78aSEmmanuel Vadot }; 2652*b2d2a78aSEmmanuel Vadot 2653*b2d2a78aSEmmanuel Vadot sdmmc_bus4: sdmmc-bus4 { 2654*b2d2a78aSEmmanuel Vadot rockchip,pins = 2655*b2d2a78aSEmmanuel Vadot <4 RK_PB0 1 &pcfg_pull_up>, 2656*b2d2a78aSEmmanuel Vadot <4 RK_PB1 1 &pcfg_pull_up>, 2657*b2d2a78aSEmmanuel Vadot <4 RK_PB2 1 &pcfg_pull_up>, 2658*b2d2a78aSEmmanuel Vadot <4 RK_PB3 1 &pcfg_pull_up>; 2659*b2d2a78aSEmmanuel Vadot }; 2660*b2d2a78aSEmmanuel Vadot 2661*b2d2a78aSEmmanuel Vadot sdmmc_clk: sdmmc-clk { 2662*b2d2a78aSEmmanuel Vadot rockchip,pins = 2663*b2d2a78aSEmmanuel Vadot <4 RK_PB4 1 &pcfg_pull_none>; 2664*b2d2a78aSEmmanuel Vadot }; 2665*b2d2a78aSEmmanuel Vadot 2666*b2d2a78aSEmmanuel Vadot sdmmc_cmd: sdmmc-cmd { 2667*b2d2a78aSEmmanuel Vadot rockchip,pins = 2668*b2d2a78aSEmmanuel Vadot <4 RK_PB5 1 &pcfg_pull_up>; 2669*b2d2a78aSEmmanuel Vadot }; 2670*b2d2a78aSEmmanuel Vadot 2671*b2d2a78aSEmmanuel Vadot sdmmc_cd: sdmmc-cd { 2672*b2d2a78aSEmmanuel Vadot rockchip,pins = 2673*b2d2a78aSEmmanuel Vadot <0 RK_PA7 1 &pcfg_pull_up>; 2674*b2d2a78aSEmmanuel Vadot }; 2675*b2d2a78aSEmmanuel Vadot 2676*b2d2a78aSEmmanuel Vadot sdmmc_wp: sdmmc-wp { 2677*b2d2a78aSEmmanuel Vadot rockchip,pins = 2678*b2d2a78aSEmmanuel Vadot <0 RK_PB0 1 &pcfg_pull_up>; 2679*b2d2a78aSEmmanuel Vadot }; 2680*b2d2a78aSEmmanuel Vadot }; 2681*b2d2a78aSEmmanuel Vadot 2682*b2d2a78aSEmmanuel Vadot suspend { 2683*b2d2a78aSEmmanuel Vadot ap_pwroff: ap-pwroff { 2684*b2d2a78aSEmmanuel Vadot rockchip,pins = <1 RK_PA5 1 &pcfg_pull_none>; 2685*b2d2a78aSEmmanuel Vadot }; 2686*b2d2a78aSEmmanuel Vadot 2687*b2d2a78aSEmmanuel Vadot ddrio_pwroff: ddrio-pwroff { 2688*b2d2a78aSEmmanuel Vadot rockchip,pins = <0 RK_PA1 1 &pcfg_pull_none>; 2689*b2d2a78aSEmmanuel Vadot }; 2690*b2d2a78aSEmmanuel Vadot }; 2691*b2d2a78aSEmmanuel Vadot 2692*b2d2a78aSEmmanuel Vadot spdif { 2693*b2d2a78aSEmmanuel Vadot spdif_bus: spdif-bus { 2694*b2d2a78aSEmmanuel Vadot rockchip,pins = 2695*b2d2a78aSEmmanuel Vadot <4 RK_PC5 1 &pcfg_pull_none>; 2696*b2d2a78aSEmmanuel Vadot }; 2697*b2d2a78aSEmmanuel Vadot 2698*b2d2a78aSEmmanuel Vadot spdif_bus_1: spdif-bus-1 { 2699*b2d2a78aSEmmanuel Vadot rockchip,pins = 2700*b2d2a78aSEmmanuel Vadot <3 RK_PC0 3 &pcfg_pull_none>; 2701*b2d2a78aSEmmanuel Vadot }; 2702*b2d2a78aSEmmanuel Vadot }; 2703*b2d2a78aSEmmanuel Vadot 2704*b2d2a78aSEmmanuel Vadot spi0 { 2705*b2d2a78aSEmmanuel Vadot spi0_clk: spi0-clk { 2706*b2d2a78aSEmmanuel Vadot rockchip,pins = 2707*b2d2a78aSEmmanuel Vadot <3 RK_PA6 2 &pcfg_pull_up>; 2708*b2d2a78aSEmmanuel Vadot }; 2709*b2d2a78aSEmmanuel Vadot spi0_cs0: spi0-cs0 { 2710*b2d2a78aSEmmanuel Vadot rockchip,pins = 2711*b2d2a78aSEmmanuel Vadot <3 RK_PA7 2 &pcfg_pull_up>; 2712*b2d2a78aSEmmanuel Vadot }; 2713*b2d2a78aSEmmanuel Vadot spi0_cs1: spi0-cs1 { 2714*b2d2a78aSEmmanuel Vadot rockchip,pins = 2715*b2d2a78aSEmmanuel Vadot <3 RK_PB0 2 &pcfg_pull_up>; 2716*b2d2a78aSEmmanuel Vadot }; 2717*b2d2a78aSEmmanuel Vadot spi0_tx: spi0-tx { 2718*b2d2a78aSEmmanuel Vadot rockchip,pins = 2719*b2d2a78aSEmmanuel Vadot <3 RK_PA5 2 &pcfg_pull_up>; 2720*b2d2a78aSEmmanuel Vadot }; 2721*b2d2a78aSEmmanuel Vadot spi0_rx: spi0-rx { 2722*b2d2a78aSEmmanuel Vadot rockchip,pins = 2723*b2d2a78aSEmmanuel Vadot <3 RK_PA4 2 &pcfg_pull_up>; 2724*b2d2a78aSEmmanuel Vadot }; 2725*b2d2a78aSEmmanuel Vadot }; 2726*b2d2a78aSEmmanuel Vadot 2727*b2d2a78aSEmmanuel Vadot spi1 { 2728*b2d2a78aSEmmanuel Vadot spi1_clk: spi1-clk { 2729*b2d2a78aSEmmanuel Vadot rockchip,pins = 2730*b2d2a78aSEmmanuel Vadot <1 RK_PB1 2 &pcfg_pull_up>; 2731*b2d2a78aSEmmanuel Vadot }; 2732*b2d2a78aSEmmanuel Vadot spi1_cs0: spi1-cs0 { 2733*b2d2a78aSEmmanuel Vadot rockchip,pins = 2734*b2d2a78aSEmmanuel Vadot <1 RK_PB2 2 &pcfg_pull_up>; 2735*b2d2a78aSEmmanuel Vadot }; 2736*b2d2a78aSEmmanuel Vadot spi1_rx: spi1-rx { 2737*b2d2a78aSEmmanuel Vadot rockchip,pins = 2738*b2d2a78aSEmmanuel Vadot <1 RK_PA7 2 &pcfg_pull_up>; 2739*b2d2a78aSEmmanuel Vadot }; 2740*b2d2a78aSEmmanuel Vadot spi1_tx: spi1-tx { 2741*b2d2a78aSEmmanuel Vadot rockchip,pins = 2742*b2d2a78aSEmmanuel Vadot <1 RK_PB0 2 &pcfg_pull_up>; 2743*b2d2a78aSEmmanuel Vadot }; 2744*b2d2a78aSEmmanuel Vadot }; 2745*b2d2a78aSEmmanuel Vadot 2746*b2d2a78aSEmmanuel Vadot spi2 { 2747*b2d2a78aSEmmanuel Vadot spi2_clk: spi2-clk { 2748*b2d2a78aSEmmanuel Vadot rockchip,pins = 2749*b2d2a78aSEmmanuel Vadot <2 RK_PB3 1 &pcfg_pull_up>; 2750*b2d2a78aSEmmanuel Vadot }; 2751*b2d2a78aSEmmanuel Vadot spi2_cs0: spi2-cs0 { 2752*b2d2a78aSEmmanuel Vadot rockchip,pins = 2753*b2d2a78aSEmmanuel Vadot <2 RK_PB4 1 &pcfg_pull_up>; 2754*b2d2a78aSEmmanuel Vadot }; 2755*b2d2a78aSEmmanuel Vadot spi2_rx: spi2-rx { 2756*b2d2a78aSEmmanuel Vadot rockchip,pins = 2757*b2d2a78aSEmmanuel Vadot <2 RK_PB1 1 &pcfg_pull_up>; 2758*b2d2a78aSEmmanuel Vadot }; 2759*b2d2a78aSEmmanuel Vadot spi2_tx: spi2-tx { 2760*b2d2a78aSEmmanuel Vadot rockchip,pins = 2761*b2d2a78aSEmmanuel Vadot <2 RK_PB2 1 &pcfg_pull_up>; 2762*b2d2a78aSEmmanuel Vadot }; 2763*b2d2a78aSEmmanuel Vadot }; 2764*b2d2a78aSEmmanuel Vadot 2765*b2d2a78aSEmmanuel Vadot spi3 { 2766*b2d2a78aSEmmanuel Vadot spi3_clk: spi3-clk { 2767*b2d2a78aSEmmanuel Vadot rockchip,pins = 2768*b2d2a78aSEmmanuel Vadot <1 RK_PC1 1 &pcfg_pull_up>; 2769*b2d2a78aSEmmanuel Vadot }; 2770*b2d2a78aSEmmanuel Vadot spi3_cs0: spi3-cs0 { 2771*b2d2a78aSEmmanuel Vadot rockchip,pins = 2772*b2d2a78aSEmmanuel Vadot <1 RK_PC2 1 &pcfg_pull_up>; 2773*b2d2a78aSEmmanuel Vadot }; 2774*b2d2a78aSEmmanuel Vadot spi3_rx: spi3-rx { 2775*b2d2a78aSEmmanuel Vadot rockchip,pins = 2776*b2d2a78aSEmmanuel Vadot <1 RK_PB7 1 &pcfg_pull_up>; 2777*b2d2a78aSEmmanuel Vadot }; 2778*b2d2a78aSEmmanuel Vadot spi3_tx: spi3-tx { 2779*b2d2a78aSEmmanuel Vadot rockchip,pins = 2780*b2d2a78aSEmmanuel Vadot <1 RK_PC0 1 &pcfg_pull_up>; 2781*b2d2a78aSEmmanuel Vadot }; 2782*b2d2a78aSEmmanuel Vadot }; 2783*b2d2a78aSEmmanuel Vadot 2784*b2d2a78aSEmmanuel Vadot spi4 { 2785*b2d2a78aSEmmanuel Vadot spi4_clk: spi4-clk { 2786*b2d2a78aSEmmanuel Vadot rockchip,pins = 2787*b2d2a78aSEmmanuel Vadot <3 RK_PA2 2 &pcfg_pull_up>; 2788*b2d2a78aSEmmanuel Vadot }; 2789*b2d2a78aSEmmanuel Vadot spi4_cs0: spi4-cs0 { 2790*b2d2a78aSEmmanuel Vadot rockchip,pins = 2791*b2d2a78aSEmmanuel Vadot <3 RK_PA3 2 &pcfg_pull_up>; 2792*b2d2a78aSEmmanuel Vadot }; 2793*b2d2a78aSEmmanuel Vadot spi4_rx: spi4-rx { 2794*b2d2a78aSEmmanuel Vadot rockchip,pins = 2795*b2d2a78aSEmmanuel Vadot <3 RK_PA0 2 &pcfg_pull_up>; 2796*b2d2a78aSEmmanuel Vadot }; 2797*b2d2a78aSEmmanuel Vadot spi4_tx: spi4-tx { 2798*b2d2a78aSEmmanuel Vadot rockchip,pins = 2799*b2d2a78aSEmmanuel Vadot <3 RK_PA1 2 &pcfg_pull_up>; 2800*b2d2a78aSEmmanuel Vadot }; 2801*b2d2a78aSEmmanuel Vadot }; 2802*b2d2a78aSEmmanuel Vadot 2803*b2d2a78aSEmmanuel Vadot spi5 { 2804*b2d2a78aSEmmanuel Vadot spi5_clk: spi5-clk { 2805*b2d2a78aSEmmanuel Vadot rockchip,pins = 2806*b2d2a78aSEmmanuel Vadot <2 RK_PC6 2 &pcfg_pull_up>; 2807*b2d2a78aSEmmanuel Vadot }; 2808*b2d2a78aSEmmanuel Vadot spi5_cs0: spi5-cs0 { 2809*b2d2a78aSEmmanuel Vadot rockchip,pins = 2810*b2d2a78aSEmmanuel Vadot <2 RK_PC7 2 &pcfg_pull_up>; 2811*b2d2a78aSEmmanuel Vadot }; 2812*b2d2a78aSEmmanuel Vadot spi5_rx: spi5-rx { 2813*b2d2a78aSEmmanuel Vadot rockchip,pins = 2814*b2d2a78aSEmmanuel Vadot <2 RK_PC4 2 &pcfg_pull_up>; 2815*b2d2a78aSEmmanuel Vadot }; 2816*b2d2a78aSEmmanuel Vadot spi5_tx: spi5-tx { 2817*b2d2a78aSEmmanuel Vadot rockchip,pins = 2818*b2d2a78aSEmmanuel Vadot <2 RK_PC5 2 &pcfg_pull_up>; 2819*b2d2a78aSEmmanuel Vadot }; 2820*b2d2a78aSEmmanuel Vadot }; 2821*b2d2a78aSEmmanuel Vadot 2822*b2d2a78aSEmmanuel Vadot testclk { 2823*b2d2a78aSEmmanuel Vadot test_clkout0: test-clkout0 { 2824*b2d2a78aSEmmanuel Vadot rockchip,pins = 2825*b2d2a78aSEmmanuel Vadot <0 RK_PA0 1 &pcfg_pull_none>; 2826*b2d2a78aSEmmanuel Vadot }; 2827*b2d2a78aSEmmanuel Vadot 2828*b2d2a78aSEmmanuel Vadot test_clkout1: test-clkout1 { 2829*b2d2a78aSEmmanuel Vadot rockchip,pins = 2830*b2d2a78aSEmmanuel Vadot <2 RK_PD1 2 &pcfg_pull_none>; 2831*b2d2a78aSEmmanuel Vadot }; 2832*b2d2a78aSEmmanuel Vadot 2833*b2d2a78aSEmmanuel Vadot test_clkout2: test-clkout2 { 2834*b2d2a78aSEmmanuel Vadot rockchip,pins = 2835*b2d2a78aSEmmanuel Vadot <0 RK_PB0 3 &pcfg_pull_none>; 2836*b2d2a78aSEmmanuel Vadot }; 2837*b2d2a78aSEmmanuel Vadot }; 2838*b2d2a78aSEmmanuel Vadot 2839*b2d2a78aSEmmanuel Vadot tsadc { 2840*b2d2a78aSEmmanuel Vadot otp_pin: otp-pin { 2841*b2d2a78aSEmmanuel Vadot rockchip,pins = <1 RK_PA6 RK_FUNC_GPIO &pcfg_pull_none>; 2842*b2d2a78aSEmmanuel Vadot }; 2843*b2d2a78aSEmmanuel Vadot 2844*b2d2a78aSEmmanuel Vadot otp_out: otp-out { 2845*b2d2a78aSEmmanuel Vadot rockchip,pins = <1 RK_PA6 1 &pcfg_pull_none>; 2846*b2d2a78aSEmmanuel Vadot }; 2847*b2d2a78aSEmmanuel Vadot }; 2848*b2d2a78aSEmmanuel Vadot 2849*b2d2a78aSEmmanuel Vadot uart0 { 2850*b2d2a78aSEmmanuel Vadot uart0_xfer: uart0-xfer { 2851*b2d2a78aSEmmanuel Vadot rockchip,pins = 2852*b2d2a78aSEmmanuel Vadot <2 RK_PC0 1 &pcfg_pull_up>, 2853*b2d2a78aSEmmanuel Vadot <2 RK_PC1 1 &pcfg_pull_none>; 2854*b2d2a78aSEmmanuel Vadot }; 2855*b2d2a78aSEmmanuel Vadot 2856*b2d2a78aSEmmanuel Vadot uart0_cts: uart0-cts { 2857*b2d2a78aSEmmanuel Vadot rockchip,pins = 2858*b2d2a78aSEmmanuel Vadot <2 RK_PC2 1 &pcfg_pull_none>; 2859*b2d2a78aSEmmanuel Vadot }; 2860*b2d2a78aSEmmanuel Vadot 2861*b2d2a78aSEmmanuel Vadot uart0_rts: uart0-rts { 2862*b2d2a78aSEmmanuel Vadot rockchip,pins = 2863*b2d2a78aSEmmanuel Vadot <2 RK_PC3 1 &pcfg_pull_none>; 2864*b2d2a78aSEmmanuel Vadot }; 2865*b2d2a78aSEmmanuel Vadot }; 2866*b2d2a78aSEmmanuel Vadot 2867*b2d2a78aSEmmanuel Vadot uart1 { 2868*b2d2a78aSEmmanuel Vadot uart1_xfer: uart1-xfer { 2869*b2d2a78aSEmmanuel Vadot rockchip,pins = 2870*b2d2a78aSEmmanuel Vadot <3 RK_PB4 2 &pcfg_pull_up>, 2871*b2d2a78aSEmmanuel Vadot <3 RK_PB5 2 &pcfg_pull_none>; 2872*b2d2a78aSEmmanuel Vadot }; 2873*b2d2a78aSEmmanuel Vadot }; 2874*b2d2a78aSEmmanuel Vadot 2875*b2d2a78aSEmmanuel Vadot uart2a { 2876*b2d2a78aSEmmanuel Vadot uart2a_xfer: uart2a-xfer { 2877*b2d2a78aSEmmanuel Vadot rockchip,pins = 2878*b2d2a78aSEmmanuel Vadot <4 RK_PB0 2 &pcfg_pull_up>, 2879*b2d2a78aSEmmanuel Vadot <4 RK_PB1 2 &pcfg_pull_none>; 2880*b2d2a78aSEmmanuel Vadot }; 2881*b2d2a78aSEmmanuel Vadot }; 2882*b2d2a78aSEmmanuel Vadot 2883*b2d2a78aSEmmanuel Vadot uart2b { 2884*b2d2a78aSEmmanuel Vadot uart2b_xfer: uart2b-xfer { 2885*b2d2a78aSEmmanuel Vadot rockchip,pins = 2886*b2d2a78aSEmmanuel Vadot <4 RK_PC0 2 &pcfg_pull_up>, 2887*b2d2a78aSEmmanuel Vadot <4 RK_PC1 2 &pcfg_pull_none>; 2888*b2d2a78aSEmmanuel Vadot }; 2889*b2d2a78aSEmmanuel Vadot }; 2890*b2d2a78aSEmmanuel Vadot 2891*b2d2a78aSEmmanuel Vadot uart2c { 2892*b2d2a78aSEmmanuel Vadot uart2c_xfer: uart2c-xfer { 2893*b2d2a78aSEmmanuel Vadot rockchip,pins = 2894*b2d2a78aSEmmanuel Vadot <4 RK_PC3 1 &pcfg_pull_up>, 2895*b2d2a78aSEmmanuel Vadot <4 RK_PC4 1 &pcfg_pull_none>; 2896*b2d2a78aSEmmanuel Vadot }; 2897*b2d2a78aSEmmanuel Vadot }; 2898*b2d2a78aSEmmanuel Vadot 2899*b2d2a78aSEmmanuel Vadot uart3 { 2900*b2d2a78aSEmmanuel Vadot uart3_xfer: uart3-xfer { 2901*b2d2a78aSEmmanuel Vadot rockchip,pins = 2902*b2d2a78aSEmmanuel Vadot <3 RK_PB6 2 &pcfg_pull_up>, 2903*b2d2a78aSEmmanuel Vadot <3 RK_PB7 2 &pcfg_pull_none>; 2904*b2d2a78aSEmmanuel Vadot }; 2905*b2d2a78aSEmmanuel Vadot 2906*b2d2a78aSEmmanuel Vadot uart3_cts: uart3-cts { 2907*b2d2a78aSEmmanuel Vadot rockchip,pins = 2908*b2d2a78aSEmmanuel Vadot <3 RK_PC0 2 &pcfg_pull_none>; 2909*b2d2a78aSEmmanuel Vadot }; 2910*b2d2a78aSEmmanuel Vadot 2911*b2d2a78aSEmmanuel Vadot uart3_rts: uart3-rts { 2912*b2d2a78aSEmmanuel Vadot rockchip,pins = 2913*b2d2a78aSEmmanuel Vadot <3 RK_PC1 2 &pcfg_pull_none>; 2914*b2d2a78aSEmmanuel Vadot }; 2915*b2d2a78aSEmmanuel Vadot }; 2916*b2d2a78aSEmmanuel Vadot 2917*b2d2a78aSEmmanuel Vadot uart4 { 2918*b2d2a78aSEmmanuel Vadot uart4_xfer: uart4-xfer { 2919*b2d2a78aSEmmanuel Vadot rockchip,pins = 2920*b2d2a78aSEmmanuel Vadot <1 RK_PA7 1 &pcfg_pull_up>, 2921*b2d2a78aSEmmanuel Vadot <1 RK_PB0 1 &pcfg_pull_none>; 2922*b2d2a78aSEmmanuel Vadot }; 2923*b2d2a78aSEmmanuel Vadot }; 2924*b2d2a78aSEmmanuel Vadot 2925*b2d2a78aSEmmanuel Vadot uarthdcp { 2926*b2d2a78aSEmmanuel Vadot uarthdcp_xfer: uarthdcp-xfer { 2927*b2d2a78aSEmmanuel Vadot rockchip,pins = 2928*b2d2a78aSEmmanuel Vadot <4 RK_PC5 2 &pcfg_pull_up>, 2929*b2d2a78aSEmmanuel Vadot <4 RK_PC6 2 &pcfg_pull_none>; 2930*b2d2a78aSEmmanuel Vadot }; 2931*b2d2a78aSEmmanuel Vadot }; 2932*b2d2a78aSEmmanuel Vadot 2933*b2d2a78aSEmmanuel Vadot pwm0 { 2934*b2d2a78aSEmmanuel Vadot pwm0_pin: pwm0-pin { 2935*b2d2a78aSEmmanuel Vadot rockchip,pins = 2936*b2d2a78aSEmmanuel Vadot <4 RK_PC2 1 &pcfg_pull_none>; 2937*b2d2a78aSEmmanuel Vadot }; 2938*b2d2a78aSEmmanuel Vadot 2939*b2d2a78aSEmmanuel Vadot pwm0_pin_pull_down: pwm0-pin-pull-down { 2940*b2d2a78aSEmmanuel Vadot rockchip,pins = 2941*b2d2a78aSEmmanuel Vadot <4 RK_PC2 1 &pcfg_pull_down>; 2942*b2d2a78aSEmmanuel Vadot }; 2943*b2d2a78aSEmmanuel Vadot 2944*b2d2a78aSEmmanuel Vadot vop0_pwm_pin: vop0-pwm-pin { 2945*b2d2a78aSEmmanuel Vadot rockchip,pins = 2946*b2d2a78aSEmmanuel Vadot <4 RK_PC2 2 &pcfg_pull_none>; 2947*b2d2a78aSEmmanuel Vadot }; 2948*b2d2a78aSEmmanuel Vadot 2949*b2d2a78aSEmmanuel Vadot vop1_pwm_pin: vop1-pwm-pin { 2950*b2d2a78aSEmmanuel Vadot rockchip,pins = 2951*b2d2a78aSEmmanuel Vadot <4 RK_PC2 3 &pcfg_pull_none>; 2952*b2d2a78aSEmmanuel Vadot }; 2953*b2d2a78aSEmmanuel Vadot }; 2954*b2d2a78aSEmmanuel Vadot 2955*b2d2a78aSEmmanuel Vadot pwm1 { 2956*b2d2a78aSEmmanuel Vadot pwm1_pin: pwm1-pin { 2957*b2d2a78aSEmmanuel Vadot rockchip,pins = 2958*b2d2a78aSEmmanuel Vadot <4 RK_PC6 1 &pcfg_pull_none>; 2959*b2d2a78aSEmmanuel Vadot }; 2960*b2d2a78aSEmmanuel Vadot 2961*b2d2a78aSEmmanuel Vadot pwm1_pin_pull_down: pwm1-pin-pull-down { 2962*b2d2a78aSEmmanuel Vadot rockchip,pins = 2963*b2d2a78aSEmmanuel Vadot <4 RK_PC6 1 &pcfg_pull_down>; 2964*b2d2a78aSEmmanuel Vadot }; 2965*b2d2a78aSEmmanuel Vadot }; 2966*b2d2a78aSEmmanuel Vadot 2967*b2d2a78aSEmmanuel Vadot pwm2 { 2968*b2d2a78aSEmmanuel Vadot pwm2_pin: pwm2-pin { 2969*b2d2a78aSEmmanuel Vadot rockchip,pins = 2970*b2d2a78aSEmmanuel Vadot <1 RK_PC3 1 &pcfg_pull_none>; 2971*b2d2a78aSEmmanuel Vadot }; 2972*b2d2a78aSEmmanuel Vadot 2973*b2d2a78aSEmmanuel Vadot pwm2_pin_pull_down: pwm2-pin-pull-down { 2974*b2d2a78aSEmmanuel Vadot rockchip,pins = 2975*b2d2a78aSEmmanuel Vadot <1 RK_PC3 1 &pcfg_pull_down>; 2976*b2d2a78aSEmmanuel Vadot }; 2977*b2d2a78aSEmmanuel Vadot }; 2978*b2d2a78aSEmmanuel Vadot 2979*b2d2a78aSEmmanuel Vadot pwm3a { 2980*b2d2a78aSEmmanuel Vadot pwm3a_pin: pwm3a-pin { 2981*b2d2a78aSEmmanuel Vadot rockchip,pins = 2982*b2d2a78aSEmmanuel Vadot <0 RK_PA6 1 &pcfg_pull_none>; 2983*b2d2a78aSEmmanuel Vadot }; 2984*b2d2a78aSEmmanuel Vadot }; 2985*b2d2a78aSEmmanuel Vadot 2986*b2d2a78aSEmmanuel Vadot pwm3b { 2987*b2d2a78aSEmmanuel Vadot pwm3b_pin: pwm3b-pin { 2988*b2d2a78aSEmmanuel Vadot rockchip,pins = 2989*b2d2a78aSEmmanuel Vadot <1 RK_PB6 1 &pcfg_pull_none>; 2990*b2d2a78aSEmmanuel Vadot }; 2991*b2d2a78aSEmmanuel Vadot }; 2992*b2d2a78aSEmmanuel Vadot 2993*b2d2a78aSEmmanuel Vadot hdmi { 2994*b2d2a78aSEmmanuel Vadot hdmi_i2c_xfer: hdmi-i2c-xfer { 2995*b2d2a78aSEmmanuel Vadot rockchip,pins = 2996*b2d2a78aSEmmanuel Vadot <4 RK_PC1 3 &pcfg_pull_none>, 2997*b2d2a78aSEmmanuel Vadot <4 RK_PC0 3 &pcfg_pull_none>; 2998*b2d2a78aSEmmanuel Vadot }; 2999*b2d2a78aSEmmanuel Vadot 3000*b2d2a78aSEmmanuel Vadot hdmi_cec: hdmi-cec { 3001*b2d2a78aSEmmanuel Vadot rockchip,pins = 3002*b2d2a78aSEmmanuel Vadot <4 RK_PC7 1 &pcfg_pull_none>; 3003*b2d2a78aSEmmanuel Vadot }; 3004*b2d2a78aSEmmanuel Vadot }; 3005*b2d2a78aSEmmanuel Vadot 3006*b2d2a78aSEmmanuel Vadot pcie { 3007*b2d2a78aSEmmanuel Vadot pcie_clkreqn_cpm: pci-clkreqn-cpm { 3008*b2d2a78aSEmmanuel Vadot rockchip,pins = 3009*b2d2a78aSEmmanuel Vadot <2 RK_PD2 RK_FUNC_GPIO &pcfg_pull_none>; 3010*b2d2a78aSEmmanuel Vadot }; 3011*b2d2a78aSEmmanuel Vadot 3012*b2d2a78aSEmmanuel Vadot pcie_clkreqnb_cpm: pci-clkreqnb-cpm { 3013*b2d2a78aSEmmanuel Vadot rockchip,pins = 3014*b2d2a78aSEmmanuel Vadot <4 RK_PD0 RK_FUNC_GPIO &pcfg_pull_none>; 3015*b2d2a78aSEmmanuel Vadot }; 3016*b2d2a78aSEmmanuel Vadot }; 3017*b2d2a78aSEmmanuel Vadot 3018*b2d2a78aSEmmanuel Vadot }; 3019*b2d2a78aSEmmanuel Vadot}; 3020