1*4882a593Smuzhiyun// SPDX-License-Identifier: (GPL-2.0+ OR MIT) 2*4882a593Smuzhiyun// Copyright (c) 2018 Fuzhou Rockchip Electronics Co., Ltd. 3*4882a593Smuzhiyun 4*4882a593Smuzhiyun#include <dt-bindings/clock/rk1808-cru.h> 5*4882a593Smuzhiyun#include <dt-bindings/interrupt-controller/arm-gic.h> 6*4882a593Smuzhiyun#include <dt-bindings/interrupt-controller/irq.h> 7*4882a593Smuzhiyun#include <dt-bindings/pinctrl/rockchip.h> 8*4882a593Smuzhiyun#include <dt-bindings/power/rk1808-power.h> 9*4882a593Smuzhiyun#include <dt-bindings/phy/phy.h> 10*4882a593Smuzhiyun#include <dt-bindings/thermal/thermal.h> 11*4882a593Smuzhiyun 12*4882a593Smuzhiyun/ { 13*4882a593Smuzhiyun compatible = "rockchip,rk3399pro-npu"; 14*4882a593Smuzhiyun 15*4882a593Smuzhiyun interrupt-parent = <&gic>; 16*4882a593Smuzhiyun #address-cells = <2>; 17*4882a593Smuzhiyun #size-cells = <2>; 18*4882a593Smuzhiyun 19*4882a593Smuzhiyun aliases { 20*4882a593Smuzhiyun i2c0 = &i2c0; 21*4882a593Smuzhiyun i2c1 = &i2c1; 22*4882a593Smuzhiyun serial2 = &uart2; 23*4882a593Smuzhiyun }; 24*4882a593Smuzhiyun 25*4882a593Smuzhiyun cpus { 26*4882a593Smuzhiyun #address-cells = <2>; 27*4882a593Smuzhiyun #size-cells = <0>; 28*4882a593Smuzhiyun 29*4882a593Smuzhiyun cpu0: cpu@0 { 30*4882a593Smuzhiyun device_type = "cpu"; 31*4882a593Smuzhiyun compatible = "arm,cortex-a35", "arm,armv8"; 32*4882a593Smuzhiyun reg = <0x0 0x0>; 33*4882a593Smuzhiyun enable-method = "psci"; 34*4882a593Smuzhiyun clocks = <&cru ARMCLK>; 35*4882a593Smuzhiyun operating-points-v2 = <&cpu0_opp_table>; 36*4882a593Smuzhiyun dynamic-power-coefficient = <74>; 37*4882a593Smuzhiyun #cooling-cells = <2>; 38*4882a593Smuzhiyun power-model { 39*4882a593Smuzhiyun compatible = "simple-power-model"; 40*4882a593Smuzhiyun ref-leakage = <31>; 41*4882a593Smuzhiyun static-coefficient = <100000>; 42*4882a593Smuzhiyun ts = <597400 241050 (-2450) 70>; 43*4882a593Smuzhiyun thermal-zone = "soc-thermal"; 44*4882a593Smuzhiyun }; 45*4882a593Smuzhiyun }; 46*4882a593Smuzhiyun 47*4882a593Smuzhiyun cpu1: cpu@1 { 48*4882a593Smuzhiyun device_type = "cpu"; 49*4882a593Smuzhiyun compatible = "arm,cortex-a35", "arm,armv8"; 50*4882a593Smuzhiyun reg = <0x0 0x1>; 51*4882a593Smuzhiyun enable-method = "psci"; 52*4882a593Smuzhiyun clocks = <&cru ARMCLK>; 53*4882a593Smuzhiyun operating-points-v2 = <&cpu0_opp_table>; 54*4882a593Smuzhiyun dynamic-power-coefficient = <74>; 55*4882a593Smuzhiyun }; 56*4882a593Smuzhiyun }; 57*4882a593Smuzhiyun 58*4882a593Smuzhiyun cpu0_opp_table: cpu0-opp-table { 59*4882a593Smuzhiyun compatible = "operating-points-v2"; 60*4882a593Smuzhiyun opp-shared; 61*4882a593Smuzhiyun 62*4882a593Smuzhiyun opp-408000000 { 63*4882a593Smuzhiyun opp-hz = /bits/ 64 <408000000>; 64*4882a593Smuzhiyun opp-microvolt = <750000 750000 950000>; 65*4882a593Smuzhiyun clock-latency-ns = <40000>; 66*4882a593Smuzhiyun opp-suspend; 67*4882a593Smuzhiyun }; 68*4882a593Smuzhiyun opp-600000000 { 69*4882a593Smuzhiyun opp-hz = /bits/ 64 <600000000>; 70*4882a593Smuzhiyun opp-microvolt = <750000 750000 950000>; 71*4882a593Smuzhiyun clock-latency-ns = <40000>; 72*4882a593Smuzhiyun }; 73*4882a593Smuzhiyun opp-816000000 { 74*4882a593Smuzhiyun opp-hz = /bits/ 64 <816000000>; 75*4882a593Smuzhiyun opp-microvolt = <750000 750000 950000>; 76*4882a593Smuzhiyun clock-latency-ns = <40000>; 77*4882a593Smuzhiyun }; 78*4882a593Smuzhiyun opp-1008000000 { 79*4882a593Smuzhiyun opp-hz = /bits/ 64 <1008000000>; 80*4882a593Smuzhiyun opp-microvolt = <750000 750000 950000>; 81*4882a593Smuzhiyun clock-latency-ns = <40000>; 82*4882a593Smuzhiyun }; 83*4882a593Smuzhiyun opp-1200000000 { 84*4882a593Smuzhiyun opp-hz = /bits/ 64 <1200000000>; 85*4882a593Smuzhiyun opp-microvolt = <750000 750000 950000>; 86*4882a593Smuzhiyun clock-latency-ns = <40000>; 87*4882a593Smuzhiyun }; 88*4882a593Smuzhiyun }; 89*4882a593Smuzhiyun 90*4882a593Smuzhiyun arm-pmu { 91*4882a593Smuzhiyun compatible = "arm,cortex-a53-pmu"; 92*4882a593Smuzhiyun interrupts = <GIC_SPI 228 IRQ_TYPE_LEVEL_HIGH>, 93*4882a593Smuzhiyun <GIC_SPI 229 IRQ_TYPE_LEVEL_HIGH>; 94*4882a593Smuzhiyun interrupt-affinity = <&cpu0>, <&cpu1>; 95*4882a593Smuzhiyun }; 96*4882a593Smuzhiyun 97*4882a593Smuzhiyun psci { 98*4882a593Smuzhiyun compatible = "arm,psci-1.0"; 99*4882a593Smuzhiyun method = "smc"; 100*4882a593Smuzhiyun }; 101*4882a593Smuzhiyun 102*4882a593Smuzhiyun timer { 103*4882a593Smuzhiyun compatible = "arm,armv8-timer"; 104*4882a593Smuzhiyun interrupts = <GIC_PPI 13 IRQ_TYPE_LEVEL_LOW>, 105*4882a593Smuzhiyun <GIC_PPI 14 IRQ_TYPE_LEVEL_LOW>, 106*4882a593Smuzhiyun <GIC_PPI 11 IRQ_TYPE_LEVEL_LOW>, 107*4882a593Smuzhiyun <GIC_PPI 10 IRQ_TYPE_LEVEL_LOW>; 108*4882a593Smuzhiyun arm,no-tick-in-suspend; 109*4882a593Smuzhiyun }; 110*4882a593Smuzhiyun 111*4882a593Smuzhiyun xin24m: xin24m { 112*4882a593Smuzhiyun compatible = "fixed-clock"; 113*4882a593Smuzhiyun clock-frequency = <24000000>; 114*4882a593Smuzhiyun clock-output-names = "xin24m"; 115*4882a593Smuzhiyun #clock-cells = <0>; 116*4882a593Smuzhiyun }; 117*4882a593Smuzhiyun 118*4882a593Smuzhiyun xin32k: xin32k { 119*4882a593Smuzhiyun compatible = "fixed-clock"; 120*4882a593Smuzhiyun clock-frequency = <32768>; 121*4882a593Smuzhiyun clock-output-names = "xin32k"; 122*4882a593Smuzhiyun #clock-cells = <0>; 123*4882a593Smuzhiyun pinctrl-names = "default"; 124*4882a593Smuzhiyun pinctrl-0 = <&clkin_32k>; 125*4882a593Smuzhiyun }; 126*4882a593Smuzhiyun 127*4882a593Smuzhiyun usbdrd3: usb { 128*4882a593Smuzhiyun compatible = "rockchip,rk1808-dwc3", "rockchip,rk3399-dwc3"; 129*4882a593Smuzhiyun clocks = <&cru SCLK_USB3_OTG0_REF>, <&cru ACLK_USB3OTG>, 130*4882a593Smuzhiyun <&cru SCLK_USB3_OTG0_SUSPEND>; 131*4882a593Smuzhiyun clock-names = "ref_clk", "bus_clk", 132*4882a593Smuzhiyun "suspend_clk"; 133*4882a593Smuzhiyun assigned-clocks = <&cru SCLK_USB3_OTG0_SUSPEND>; 134*4882a593Smuzhiyun assigned-clock-rates = <24000000>; 135*4882a593Smuzhiyun power-domains = <&power RK1808_PD_PCIE>; 136*4882a593Smuzhiyun resets = <&cru SRST_USB3_OTG_A>; 137*4882a593Smuzhiyun reset-names = "usb3-otg"; 138*4882a593Smuzhiyun #address-cells = <2>; 139*4882a593Smuzhiyun #size-cells = <2>; 140*4882a593Smuzhiyun ranges; 141*4882a593Smuzhiyun status = "disabled"; 142*4882a593Smuzhiyun 143*4882a593Smuzhiyun usbdrd_dwc3: dwc3@fd000000 { 144*4882a593Smuzhiyun compatible = "snps,dwc3"; 145*4882a593Smuzhiyun reg = <0x0 0xfd000000 0x0 0x200000>; 146*4882a593Smuzhiyun interrupts = <GIC_SPI 75 IRQ_TYPE_LEVEL_HIGH>; 147*4882a593Smuzhiyun dr_mode = "peripheral"; 148*4882a593Smuzhiyun phys = <&u2phy_otg>, <&combphy PHY_TYPE_USB3>; 149*4882a593Smuzhiyun phy-names = "usb2-phy", "usb3-phy"; 150*4882a593Smuzhiyun phy_type = "utmi_wide"; 151*4882a593Smuzhiyun snps,dis_enblslpm_quirk; 152*4882a593Smuzhiyun snps,dis-u1u2-quirk; 153*4882a593Smuzhiyun snps,dis-u2-freeclk-exists-quirk; 154*4882a593Smuzhiyun snps,dis_u2_susphy_quirk; 155*4882a593Smuzhiyun snps,dis_u3_susphy_quirk; 156*4882a593Smuzhiyun snps,dis-del-phy-power-chg-quirk; 157*4882a593Smuzhiyun snps,tx-ipgap-linecheck-dis-quirk; 158*4882a593Smuzhiyun snps,xhci-trb-ent-quirk; 159*4882a593Smuzhiyun status = "disabled"; 160*4882a593Smuzhiyun }; 161*4882a593Smuzhiyun }; 162*4882a593Smuzhiyun 163*4882a593Smuzhiyun grf: syscon@fe000000 { 164*4882a593Smuzhiyun compatible = "rockchip,rk1808-grf", "syscon", "simple-mfd"; 165*4882a593Smuzhiyun reg = <0x0 0xfe000000 0x0 0x1000>; 166*4882a593Smuzhiyun #address-cells = <1>; 167*4882a593Smuzhiyun #size-cells = <1>; 168*4882a593Smuzhiyun 169*4882a593Smuzhiyun npu_pvtm: npu-pvtm { 170*4882a593Smuzhiyun compatible = "rockchip,rk1808-npu-pvtm"; 171*4882a593Smuzhiyun clocks = <&cru SCLK_PVTM_NPU>; 172*4882a593Smuzhiyun clock-names = "npu"; 173*4882a593Smuzhiyun status = "okay"; 174*4882a593Smuzhiyun }; 175*4882a593Smuzhiyun }; 176*4882a593Smuzhiyun 177*4882a593Smuzhiyun usb2phy_grf: syscon@fe010000 { 178*4882a593Smuzhiyun compatible = "rockchip,rk1808-usb2phy-grf", "syscon", 179*4882a593Smuzhiyun "simple-mfd"; 180*4882a593Smuzhiyun reg = <0x0 0xfe010000 0x0 0x8000>; 181*4882a593Smuzhiyun #address-cells = <1>; 182*4882a593Smuzhiyun #size-cells = <1>; 183*4882a593Smuzhiyun 184*4882a593Smuzhiyun u2phy: usb2-phy@100 { 185*4882a593Smuzhiyun compatible = "rockchip,rk1808-usb2phy"; 186*4882a593Smuzhiyun reg = <0x100 0x10>; 187*4882a593Smuzhiyun clocks = <&cru SCLK_USBPHY_REF>; 188*4882a593Smuzhiyun clock-names = "phyclk"; 189*4882a593Smuzhiyun #clock-cells = <0>; 190*4882a593Smuzhiyun assigned-clocks = <&cru USB480M>; 191*4882a593Smuzhiyun assigned-clock-parents = <&u2phy>; 192*4882a593Smuzhiyun clock-output-names = "usb480m_phy"; 193*4882a593Smuzhiyun status = "disabled"; 194*4882a593Smuzhiyun 195*4882a593Smuzhiyun u2phy_host: host-port { 196*4882a593Smuzhiyun #phy-cells = <0>; 197*4882a593Smuzhiyun interrupts = <GIC_SPI 79 IRQ_TYPE_LEVEL_HIGH>; 198*4882a593Smuzhiyun interrupt-names = "linestate"; 199*4882a593Smuzhiyun status = "disabled"; 200*4882a593Smuzhiyun }; 201*4882a593Smuzhiyun 202*4882a593Smuzhiyun u2phy_otg: otg-port { 203*4882a593Smuzhiyun #phy-cells = <0>; 204*4882a593Smuzhiyun interrupts = <GIC_SPI 78 IRQ_TYPE_LEVEL_HIGH>, 205*4882a593Smuzhiyun <GIC_SPI 77 IRQ_TYPE_LEVEL_HIGH>, 206*4882a593Smuzhiyun <GIC_SPI 76 IRQ_TYPE_LEVEL_HIGH>; 207*4882a593Smuzhiyun interrupt-names = "otg-bvalid", "otg-id", 208*4882a593Smuzhiyun "linestate"; 209*4882a593Smuzhiyun status = "disabled"; 210*4882a593Smuzhiyun }; 211*4882a593Smuzhiyun }; 212*4882a593Smuzhiyun }; 213*4882a593Smuzhiyun 214*4882a593Smuzhiyun combphy_grf: syscon@fe018000 { 215*4882a593Smuzhiyun compatible = "rockchip,usb3phy-grf", "syscon"; 216*4882a593Smuzhiyun reg = <0x0 0xfe018000 0x0 0x8000>; 217*4882a593Smuzhiyun }; 218*4882a593Smuzhiyun 219*4882a593Smuzhiyun pmugrf: syscon@fe020000 { 220*4882a593Smuzhiyun compatible = "rockchip,rk1808-pmugrf", "syscon", "simple-mfd"; 221*4882a593Smuzhiyun reg = <0x0 0xfe020000 0x0 0x1000>; 222*4882a593Smuzhiyun #address-cells = <1>; 223*4882a593Smuzhiyun #size-cells = <1>; 224*4882a593Smuzhiyun 225*4882a593Smuzhiyun pmu_pvtm: pmu-pvtm { 226*4882a593Smuzhiyun compatible = "rockchip,rk1808-pmu-pvtm"; 227*4882a593Smuzhiyun clocks = <&cru SCLK_PVTM_PMU>; 228*4882a593Smuzhiyun clock-names = "pmu"; 229*4882a593Smuzhiyun status = "okay"; 230*4882a593Smuzhiyun }; 231*4882a593Smuzhiyun }; 232*4882a593Smuzhiyun 233*4882a593Smuzhiyun usb_pcie_grf: syscon@fe040000 { 234*4882a593Smuzhiyun compatible = "rockchip,usb-pcie-grf", "syscon"; 235*4882a593Smuzhiyun reg = <0x0 0xfe040000 0x0 0x1000>; 236*4882a593Smuzhiyun }; 237*4882a593Smuzhiyun 238*4882a593Smuzhiyun coregrf: syscon@fe050000 { 239*4882a593Smuzhiyun compatible = "rockchip,rk1808-coregrf", "syscon", "simple-mfd"; 240*4882a593Smuzhiyun reg = <0x0 0xfe050000 0x0 0x1000>; 241*4882a593Smuzhiyun #address-cells = <1>; 242*4882a593Smuzhiyun #size-cells = <1>; 243*4882a593Smuzhiyun 244*4882a593Smuzhiyun pvtm: pvtm { 245*4882a593Smuzhiyun compatible = "rockchip,rk1808-pvtm"; 246*4882a593Smuzhiyun clocks = <&cru SCLK_PVTM_CORE>; 247*4882a593Smuzhiyun clock-names = "core"; 248*4882a593Smuzhiyun status = "okay"; 249*4882a593Smuzhiyun }; 250*4882a593Smuzhiyun }; 251*4882a593Smuzhiyun 252*4882a593Smuzhiyun qos_npu: qos@fe850000 { 253*4882a593Smuzhiyun compatible = "syscon"; 254*4882a593Smuzhiyun reg = <0x0 0xfe850000 0x0 0x20>; 255*4882a593Smuzhiyun }; 256*4882a593Smuzhiyun 257*4882a593Smuzhiyun qos_pcie: qos@fe880000 { 258*4882a593Smuzhiyun compatible = "syscon"; 259*4882a593Smuzhiyun reg = <0x0 0xfe880000 0x0 0x20>; 260*4882a593Smuzhiyun status = "disabled"; 261*4882a593Smuzhiyun }; 262*4882a593Smuzhiyun 263*4882a593Smuzhiyun qos_usb2: qos@fe890000 { 264*4882a593Smuzhiyun compatible = "syscon"; 265*4882a593Smuzhiyun reg = <0x0 0xfe890000 0x0 0x20>; 266*4882a593Smuzhiyun status = "disabled"; 267*4882a593Smuzhiyun }; 268*4882a593Smuzhiyun 269*4882a593Smuzhiyun qos_usb3: qos@fe890080 { 270*4882a593Smuzhiyun compatible = "syscon"; 271*4882a593Smuzhiyun reg = <0x0 0xfe890080 0x0 0x20>; 272*4882a593Smuzhiyun status = "disabled"; 273*4882a593Smuzhiyun }; 274*4882a593Smuzhiyun 275*4882a593Smuzhiyun qos_isp: qos@fe8a0000 { 276*4882a593Smuzhiyun compatible = "syscon"; 277*4882a593Smuzhiyun reg = <0x0 0xfe8a0000 0x0 0x20>; 278*4882a593Smuzhiyun }; 279*4882a593Smuzhiyun 280*4882a593Smuzhiyun qos_rga_rd: qos@fe8a0080 { 281*4882a593Smuzhiyun compatible = "syscon"; 282*4882a593Smuzhiyun reg = <0x0 0xfe8a0080 0x0 0x20>; 283*4882a593Smuzhiyun }; 284*4882a593Smuzhiyun 285*4882a593Smuzhiyun qos_rga_wr: qos@fe8a0100 { 286*4882a593Smuzhiyun compatible = "syscon"; 287*4882a593Smuzhiyun reg = <0x0 0xfe8a0100 0x0 0x20>; 288*4882a593Smuzhiyun }; 289*4882a593Smuzhiyun 290*4882a593Smuzhiyun qos_cif: qos@fe8a0180 { 291*4882a593Smuzhiyun compatible = "syscon"; 292*4882a593Smuzhiyun reg = <0x0 0xfe8a0180 0x0 0x20>; 293*4882a593Smuzhiyun }; 294*4882a593Smuzhiyun 295*4882a593Smuzhiyun qos_vop_raw: qos@fe8b0000 { 296*4882a593Smuzhiyun compatible = "syscon"; 297*4882a593Smuzhiyun reg = <0x0 0xfe8b0000 0x0 0x20>; 298*4882a593Smuzhiyun }; 299*4882a593Smuzhiyun 300*4882a593Smuzhiyun qos_vop_lite: qos@fe8b0080 { 301*4882a593Smuzhiyun compatible = "syscon"; 302*4882a593Smuzhiyun reg = <0x0 0xfe8b0080 0x0 0x20>; 303*4882a593Smuzhiyun }; 304*4882a593Smuzhiyun 305*4882a593Smuzhiyun qos_vpu: qos@fe8c0000 { 306*4882a593Smuzhiyun compatible = "syscon"; 307*4882a593Smuzhiyun reg = <0x0 0xfe8c0000 0x0 0x20>; 308*4882a593Smuzhiyun }; 309*4882a593Smuzhiyun 310*4882a593Smuzhiyun gic: interrupt-controller@ff100000 { 311*4882a593Smuzhiyun compatible = "arm,gic-v3"; 312*4882a593Smuzhiyun #interrupt-cells = <3>; 313*4882a593Smuzhiyun #address-cells = <2>; 314*4882a593Smuzhiyun #size-cells = <2>; 315*4882a593Smuzhiyun ranges; 316*4882a593Smuzhiyun interrupt-controller; 317*4882a593Smuzhiyun 318*4882a593Smuzhiyun reg = <0x0 0xff100000 0 0x10000>, /* GICD */ 319*4882a593Smuzhiyun <0x0 0xff140000 0 0xc0000>, /* GICR */ 320*4882a593Smuzhiyun <0x0 0xff300000 0 0x10000>, /* GICC */ 321*4882a593Smuzhiyun <0x0 0xff310000 0 0x10000>, /* GICH */ 322*4882a593Smuzhiyun <0x0 0xff320000 0 0x10000>; /* GICV */ 323*4882a593Smuzhiyun interrupts = <GIC_PPI 9 IRQ_TYPE_LEVEL_HIGH>; 324*4882a593Smuzhiyun its: interrupt-controller@ff120000 { 325*4882a593Smuzhiyun compatible = "arm,gic-v3-its"; 326*4882a593Smuzhiyun msi-controller; 327*4882a593Smuzhiyun reg = <0x0 0xff120000 0x0 0x20000>; 328*4882a593Smuzhiyun }; 329*4882a593Smuzhiyun }; 330*4882a593Smuzhiyun 331*4882a593Smuzhiyun cru: clock-controller@ff350000 { 332*4882a593Smuzhiyun compatible = "rockchip,rk1808-cru"; 333*4882a593Smuzhiyun reg = <0x0 0xff350000 0x0 0x5000>; 334*4882a593Smuzhiyun rockchip,grf = <&grf>; 335*4882a593Smuzhiyun #clock-cells = <1>; 336*4882a593Smuzhiyun #reset-cells = <1>; 337*4882a593Smuzhiyun 338*4882a593Smuzhiyun assigned-clocks = 339*4882a593Smuzhiyun <&cru PLL_GPLL>, <&cru PLL_CPLL>, 340*4882a593Smuzhiyun <&cru PLL_PPLL>, <&cru ARMCLK>, 341*4882a593Smuzhiyun <&cru MSCLK_PERI>, <&cru LSCLK_PERI>, 342*4882a593Smuzhiyun <&cru HSCLK_BUS_PRE>, <&cru MSCLK_BUS_PRE>, 343*4882a593Smuzhiyun <&cru LSCLK_BUS_PRE>; 344*4882a593Smuzhiyun assigned-clock-rates = 345*4882a593Smuzhiyun <1188000000>, <1000000000>, 346*4882a593Smuzhiyun <100000000>, <1200000000>, 347*4882a593Smuzhiyun <200000000>, <100000000>, 348*4882a593Smuzhiyun <300000000>, <200000000>, 349*4882a593Smuzhiyun <100000000>; 350*4882a593Smuzhiyun }; 351*4882a593Smuzhiyun 352*4882a593Smuzhiyun combphy: phy@ff380000 { 353*4882a593Smuzhiyun compatible = "rockchip,rk1808-combphy"; 354*4882a593Smuzhiyun reg = <0x0 0xff380000 0x0 0x10000>; 355*4882a593Smuzhiyun #phy-cells = <1>; 356*4882a593Smuzhiyun clocks = <&cru SCLK_PCIEPHY_REF>; 357*4882a593Smuzhiyun clock-names = "refclk"; 358*4882a593Smuzhiyun assigned-clocks = <&cru SCLK_PCIEPHY_REF>; 359*4882a593Smuzhiyun assigned-clock-rates = <25000000>; 360*4882a593Smuzhiyun resets = <&cru SRST_USB3_OTG_A>, <&cru SRST_PCIEPHY_POR>, 361*4882a593Smuzhiyun <&cru SRST_PCIEPHY_P>, <&cru SRST_PCIEPHY_PIPE>; 362*4882a593Smuzhiyun reset-names = "otg-rst", "combphy-por", 363*4882a593Smuzhiyun "combphy-apb", "combphy-pipe"; 364*4882a593Smuzhiyun rockchip,combphygrf = <&combphy_grf>; 365*4882a593Smuzhiyun rockchip,usbpciegrf = <&usb_pcie_grf>; 366*4882a593Smuzhiyun status = "disabled"; 367*4882a593Smuzhiyun }; 368*4882a593Smuzhiyun 369*4882a593Smuzhiyun thermal_zones: thermal-zones { 370*4882a593Smuzhiyun soc_thermal: soc-thermal { 371*4882a593Smuzhiyun polling-delay-passive = <20>; /* milliseconds */ 372*4882a593Smuzhiyun polling-delay = <1000>; /* milliseconds */ 373*4882a593Smuzhiyun sustainable-power = <977>; /* milliwatts */ 374*4882a593Smuzhiyun 375*4882a593Smuzhiyun thermal-sensors = <&tsadc 0>; 376*4882a593Smuzhiyun 377*4882a593Smuzhiyun trips { 378*4882a593Smuzhiyun threshold: trip-point-0 { 379*4882a593Smuzhiyun /* millicelsius */ 380*4882a593Smuzhiyun temperature = <75000>; 381*4882a593Smuzhiyun /* millicelsius */ 382*4882a593Smuzhiyun hysteresis = <2000>; 383*4882a593Smuzhiyun type = "passive"; 384*4882a593Smuzhiyun }; 385*4882a593Smuzhiyun target: trip-point-1 { 386*4882a593Smuzhiyun /* millicelsius */ 387*4882a593Smuzhiyun temperature = <85000>; 388*4882a593Smuzhiyun /* millicelsius */ 389*4882a593Smuzhiyun hysteresis = <2000>; 390*4882a593Smuzhiyun type = "passive"; 391*4882a593Smuzhiyun }; 392*4882a593Smuzhiyun soc_crit: soc-crit { 393*4882a593Smuzhiyun /* millicelsius */ 394*4882a593Smuzhiyun temperature = <115000>; 395*4882a593Smuzhiyun /* millicelsius */ 396*4882a593Smuzhiyun hysteresis = <2000>; 397*4882a593Smuzhiyun type = "critical"; 398*4882a593Smuzhiyun }; 399*4882a593Smuzhiyun }; 400*4882a593Smuzhiyun 401*4882a593Smuzhiyun cooling-maps { 402*4882a593Smuzhiyun map0 { 403*4882a593Smuzhiyun trip = <&target>; 404*4882a593Smuzhiyun cooling-device = 405*4882a593Smuzhiyun <&cpu0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 406*4882a593Smuzhiyun contribution = <4096>; 407*4882a593Smuzhiyun }; 408*4882a593Smuzhiyun map1 { 409*4882a593Smuzhiyun trip = <&target>; 410*4882a593Smuzhiyun cooling-device = 411*4882a593Smuzhiyun <&npu THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 412*4882a593Smuzhiyun contribution = <1024>; 413*4882a593Smuzhiyun }; 414*4882a593Smuzhiyun }; 415*4882a593Smuzhiyun }; 416*4882a593Smuzhiyun }; 417*4882a593Smuzhiyun 418*4882a593Smuzhiyun tsadc: tsadc@ff3a0000 { 419*4882a593Smuzhiyun compatible = "rockchip,rk1808-tsadc"; 420*4882a593Smuzhiyun reg = <0x0 0xff3a0000 0x0 0x100>; 421*4882a593Smuzhiyun interrupts = <GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>; 422*4882a593Smuzhiyun rockchip,grf = <&grf>; 423*4882a593Smuzhiyun clocks = <&cru SCLK_TSADC>, <&cru PCLK_TSADC>; 424*4882a593Smuzhiyun clock-names = "tsadc", "apb_pclk"; 425*4882a593Smuzhiyun assigned-clocks = <&cru SCLK_TSADC>; 426*4882a593Smuzhiyun assigned-clock-rates = <650000>; 427*4882a593Smuzhiyun resets = <&cru SRST_TSADC>; 428*4882a593Smuzhiyun reset-names = "tsadc-apb"; 429*4882a593Smuzhiyun #thermal-sensor-cells = <1>; 430*4882a593Smuzhiyun rockchip,hw-tshut-temp = <120000>; 431*4882a593Smuzhiyun status = "disabled"; 432*4882a593Smuzhiyun }; 433*4882a593Smuzhiyun 434*4882a593Smuzhiyun pmu: power-management@ff3e0000 { 435*4882a593Smuzhiyun compatible = "rockchip,rk1808-pmu", "syscon", "simple-mfd"; 436*4882a593Smuzhiyun reg = <0x0 0xff3e0000 0x0 0x1000>; 437*4882a593Smuzhiyun 438*4882a593Smuzhiyun power: power-controller { 439*4882a593Smuzhiyun compatible = "rockchip,rk1808-power-controller"; 440*4882a593Smuzhiyun #power-domain-cells = <1>; 441*4882a593Smuzhiyun #address-cells = <1>; 442*4882a593Smuzhiyun #size-cells = <0>; 443*4882a593Smuzhiyun status = "okay"; 444*4882a593Smuzhiyun 445*4882a593Smuzhiyun /* These power domains are grouped by VD_NPU */ 446*4882a593Smuzhiyun pd_npu@RK1808_VD_NPU { 447*4882a593Smuzhiyun reg = <RK1808_VD_NPU>; 448*4882a593Smuzhiyun clocks = <&cru SCLK_NPU>, 449*4882a593Smuzhiyun <&cru ACLK_NPU>, 450*4882a593Smuzhiyun <&cru HCLK_NPU>; 451*4882a593Smuzhiyun pm_qos = <&qos_npu>; 452*4882a593Smuzhiyun }; 453*4882a593Smuzhiyun 454*4882a593Smuzhiyun /* These power domains are grouped by VD_LOGIC */ 455*4882a593Smuzhiyun pd_pcie@RK1808_PD_PCIE { 456*4882a593Smuzhiyun reg = <RK1808_PD_PCIE>; 457*4882a593Smuzhiyun clocks = <&cru HSCLK_PCIE>, 458*4882a593Smuzhiyun <&cru LSCLK_PCIE>, 459*4882a593Smuzhiyun <&cru ACLK_PCIE>, 460*4882a593Smuzhiyun <&cru ACLK_PCIE_MST>, 461*4882a593Smuzhiyun <&cru ACLK_PCIE_SLV>, 462*4882a593Smuzhiyun <&cru PCLK_PCIE>, 463*4882a593Smuzhiyun <&cru SCLK_PCIE_AUX>, 464*4882a593Smuzhiyun <&cru SCLK_PCIE_AUX>, 465*4882a593Smuzhiyun <&cru ACLK_USB3OTG>, 466*4882a593Smuzhiyun <&cru HCLK_HOST>, 467*4882a593Smuzhiyun <&cru HCLK_HOST_ARB>, 468*4882a593Smuzhiyun <&cru SCLK_USB3_OTG0_REF>, 469*4882a593Smuzhiyun <&cru SCLK_USB3_OTG0_SUSPEND>; 470*4882a593Smuzhiyun pm_qos = <&qos_pcie>, 471*4882a593Smuzhiyun <&qos_usb2>, 472*4882a593Smuzhiyun <&qos_usb3>; 473*4882a593Smuzhiyun }; 474*4882a593Smuzhiyun pd_vpu@RK1808_PD_VPU { 475*4882a593Smuzhiyun reg = <RK1808_PD_VPU>; 476*4882a593Smuzhiyun clocks = <&cru ACLK_VPU>, 477*4882a593Smuzhiyun <&cru HCLK_VPU>; 478*4882a593Smuzhiyun pm_qos = <&qos_vpu>; 479*4882a593Smuzhiyun }; 480*4882a593Smuzhiyun pd_vio@RK1808_PD_VIO { 481*4882a593Smuzhiyun reg = <RK1808_PD_VIO>; 482*4882a593Smuzhiyun clocks = <&cru HSCLK_VIO>, 483*4882a593Smuzhiyun <&cru LSCLK_VIO>, 484*4882a593Smuzhiyun <&cru ACLK_VOPRAW>, 485*4882a593Smuzhiyun <&cru HCLK_VOPRAW>, 486*4882a593Smuzhiyun <&cru ACLK_VOPLITE>, 487*4882a593Smuzhiyun <&cru HCLK_VOPLITE>, 488*4882a593Smuzhiyun <&cru PCLK_DSI_TX>, 489*4882a593Smuzhiyun <&cru PCLK_CSI_TX>, 490*4882a593Smuzhiyun <&cru ACLK_RGA>, 491*4882a593Smuzhiyun <&cru HCLK_RGA>, 492*4882a593Smuzhiyun <&cru ACLK_ISP>, 493*4882a593Smuzhiyun <&cru HCLK_ISP>, 494*4882a593Smuzhiyun <&cru ACLK_CIF>, 495*4882a593Smuzhiyun <&cru HCLK_CIF>, 496*4882a593Smuzhiyun <&cru PCLK_CSI2HOST>, 497*4882a593Smuzhiyun <&cru DCLK_VOPRAW>, 498*4882a593Smuzhiyun <&cru DCLK_VOPLITE>; 499*4882a593Smuzhiyun pm_qos = <&qos_rga_rd>, <&qos_rga_wr>, 500*4882a593Smuzhiyun <&qos_isp>, <&qos_cif>, 501*4882a593Smuzhiyun <&qos_vop_raw>, <&qos_vop_lite>; 502*4882a593Smuzhiyun }; 503*4882a593Smuzhiyun }; 504*4882a593Smuzhiyun }; 505*4882a593Smuzhiyun 506*4882a593Smuzhiyun i2c0: i2c@ff410000 { 507*4882a593Smuzhiyun compatible = "rockchip,rk3399-i2c"; 508*4882a593Smuzhiyun reg = <0x0 0xff410000 0x0 0x1000>; 509*4882a593Smuzhiyun clocks = <&cru SCLK_PMU_I2C0>, <&cru PCLK_I2C0_PMU>; 510*4882a593Smuzhiyun clock-names = "i2c", "pclk"; 511*4882a593Smuzhiyun interrupts = <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>; 512*4882a593Smuzhiyun pinctrl-names = "default"; 513*4882a593Smuzhiyun pinctrl-0 = <&i2c0_xfer>; 514*4882a593Smuzhiyun #address-cells = <1>; 515*4882a593Smuzhiyun #size-cells = <0>; 516*4882a593Smuzhiyun status = "disabled"; 517*4882a593Smuzhiyun }; 518*4882a593Smuzhiyun 519*4882a593Smuzhiyun dmac: dmac@ff4e0000 { 520*4882a593Smuzhiyun compatible = "arm,pl330", "arm,primecell"; 521*4882a593Smuzhiyun reg = <0x0 0xff4e0000 0x0 0x4000>; 522*4882a593Smuzhiyun interrupts = <GIC_SPI 1 IRQ_TYPE_LEVEL_HIGH>; 523*4882a593Smuzhiyun clocks = <&cru ACLK_DMAC>; 524*4882a593Smuzhiyun clock-names = "apb_pclk"; 525*4882a593Smuzhiyun #dma-cells = <1>; 526*4882a593Smuzhiyun arm,pl330-periph-burst; 527*4882a593Smuzhiyun }; 528*4882a593Smuzhiyun 529*4882a593Smuzhiyun i2c1: i2c@ff500000 { 530*4882a593Smuzhiyun compatible = "rockchip,rk3399-i2c"; 531*4882a593Smuzhiyun reg = <0x0 0xff500000 0x0 0x1000>; 532*4882a593Smuzhiyun clocks = <&cru SCLK_I2C1>, <&cru PCLK_I2C1>; 533*4882a593Smuzhiyun clock-names = "i2c", "pclk"; 534*4882a593Smuzhiyun interrupts = <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>; 535*4882a593Smuzhiyun pinctrl-names = "default"; 536*4882a593Smuzhiyun pinctrl-0 = <&i2c1_xfer>; 537*4882a593Smuzhiyun #address-cells = <1>; 538*4882a593Smuzhiyun #size-cells = <0>; 539*4882a593Smuzhiyun status = "disabled"; 540*4882a593Smuzhiyun }; 541*4882a593Smuzhiyun 542*4882a593Smuzhiyun uart2: serial@ff550000 { 543*4882a593Smuzhiyun compatible = "rockchip,rk1808-uart", "snps,dw-apb-uart"; 544*4882a593Smuzhiyun reg = <0x0 0xff550000 0x0 0x100>; 545*4882a593Smuzhiyun interrupts = <GIC_SPI 15 IRQ_TYPE_LEVEL_HIGH>; 546*4882a593Smuzhiyun clocks = <&cru SCLK_UART2>, <&cru PCLK_UART2>; 547*4882a593Smuzhiyun clock-names = "baudclk", "apb_pclk"; 548*4882a593Smuzhiyun reg-shift = <2>; 549*4882a593Smuzhiyun reg-io-width = <4>; 550*4882a593Smuzhiyun dmas = <&dmac 4>, <&dmac 5>; 551*4882a593Smuzhiyun pinctrl-names = "default"; 552*4882a593Smuzhiyun pinctrl-0 = <&uart2m0_xfer>; 553*4882a593Smuzhiyun status = "disabled"; 554*4882a593Smuzhiyun }; 555*4882a593Smuzhiyun 556*4882a593Smuzhiyun rktimer: rktimer@ff700000 { 557*4882a593Smuzhiyun compatible = "rockchip,rk3288-timer"; 558*4882a593Smuzhiyun reg = <0x0 0xff700000 0x0 0x1000>; 559*4882a593Smuzhiyun interrupts = <GIC_SPI 26 IRQ_TYPE_LEVEL_HIGH>; 560*4882a593Smuzhiyun clocks = <&cru PCLK_TIMER>, <&cru SCLK_TIMER0>; 561*4882a593Smuzhiyun clock-names = "pclk", "timer"; 562*4882a593Smuzhiyun }; 563*4882a593Smuzhiyun 564*4882a593Smuzhiyun npu: npu@ffbc0000 { 565*4882a593Smuzhiyun compatible = "rockchip,npu"; 566*4882a593Smuzhiyun reg = <0x0 0xffbc0000 0x0 0x1000>; 567*4882a593Smuzhiyun clocks = <&cru SCLK_NPU>, <&cru ACLK_NPU>, <&cru HCLK_NPU>; 568*4882a593Smuzhiyun clock-names = "sclk_npu", "aclk_npu", "hclk_npu"; 569*4882a593Smuzhiyun assigned-clocks = <&cru SCLK_NPU>; 570*4882a593Smuzhiyun assigned-clock-rates = <800000000>; 571*4882a593Smuzhiyun interrupts = <GIC_SPI 43 IRQ_TYPE_LEVEL_HIGH>; 572*4882a593Smuzhiyun power-domains = <&power RK1808_VD_NPU>; 573*4882a593Smuzhiyun operating-points-v2 = <&npu_opp_table>; 574*4882a593Smuzhiyun #cooling-cells = <2>; 575*4882a593Smuzhiyun status = "disabled"; 576*4882a593Smuzhiyun 577*4882a593Smuzhiyun npu_power_model: power-model { 578*4882a593Smuzhiyun compatible = "simple-power-model"; 579*4882a593Smuzhiyun ref-leakage = <31>; 580*4882a593Smuzhiyun static-coefficient = <100000>; 581*4882a593Smuzhiyun dynamic-coefficient = <3080>; 582*4882a593Smuzhiyun ts = <88610 303120 (-5000) 100>; 583*4882a593Smuzhiyun thermal-zone = "soc-thermal"; 584*4882a593Smuzhiyun }; 585*4882a593Smuzhiyun }; 586*4882a593Smuzhiyun 587*4882a593Smuzhiyun npu_opp_table: npu-opp-table { 588*4882a593Smuzhiyun compatible = "operating-points-v2"; 589*4882a593Smuzhiyun 590*4882a593Smuzhiyun rockchip,max-volt = <880000>; 591*4882a593Smuzhiyun rockchip,evb-irdrop = <37500>; 592*4882a593Smuzhiyun 593*4882a593Smuzhiyun rockchip,pvtm-voltage-sel = < 594*4882a593Smuzhiyun 0 69000 0 595*4882a593Smuzhiyun 69001 74000 1 596*4882a593Smuzhiyun 74001 99999 2 597*4882a593Smuzhiyun >; 598*4882a593Smuzhiyun rockchip,pvtm-freq = <200000>; 599*4882a593Smuzhiyun rockchip,pvtm-volt = <800000>; 600*4882a593Smuzhiyun rockchip,pvtm-ch = <0 0>; 601*4882a593Smuzhiyun rockchip,pvtm-sample-time = <1000>; 602*4882a593Smuzhiyun rockchip,pvtm-number = <10>; 603*4882a593Smuzhiyun rockchip,pvtm-error = <1000>; 604*4882a593Smuzhiyun rockchip,pvtm-ref-temp = <25>; 605*4882a593Smuzhiyun rockchip,pvtm-temp-prop = <(-20) (-26)>; 606*4882a593Smuzhiyun rockchip,thermal-zone = "soc-thermal"; 607*4882a593Smuzhiyun 608*4882a593Smuzhiyun opp-200000000 { 609*4882a593Smuzhiyun opp-hz = /bits/ 64 <200000000>; 610*4882a593Smuzhiyun opp-microvolt = <750000 750000 880000>; 611*4882a593Smuzhiyun }; 612*4882a593Smuzhiyun opp-297000000 { 613*4882a593Smuzhiyun opp-hz = /bits/ 64 <297000000>; 614*4882a593Smuzhiyun opp-microvolt = <750000 750000 880000>; 615*4882a593Smuzhiyun }; 616*4882a593Smuzhiyun opp-400000000 { 617*4882a593Smuzhiyun opp-hz = /bits/ 64 <400000000>; 618*4882a593Smuzhiyun opp-microvolt = <750000 750000 880000>; 619*4882a593Smuzhiyun }; 620*4882a593Smuzhiyun opp-594000000 { 621*4882a593Smuzhiyun opp-hz = /bits/ 64 <594000000>; 622*4882a593Smuzhiyun opp-microvolt = <750000 750000 880000>; 623*4882a593Smuzhiyun }; 624*4882a593Smuzhiyun opp-792000000 { 625*4882a593Smuzhiyun opp-hz = /bits/ 64 <792000000>; 626*4882a593Smuzhiyun opp-microvolt = <850000 850000 880000>; 627*4882a593Smuzhiyun opp-microvolt-L0 = <850000 850000 880000>; 628*4882a593Smuzhiyun opp-microvolt-L1 = <825000 825000 880000>; 629*4882a593Smuzhiyun opp-microvolt-L2 = <800000 800000 880000>; 630*4882a593Smuzhiyun }; 631*4882a593Smuzhiyun }; 632*4882a593Smuzhiyun 633*4882a593Smuzhiyun pinctrl: pinctrl { 634*4882a593Smuzhiyun compatible = "rockchip,rk1808-pinctrl"; 635*4882a593Smuzhiyun rockchip,grf = <&grf>; 636*4882a593Smuzhiyun rockchip,pmu = <&pmugrf>; 637*4882a593Smuzhiyun #address-cells = <2>; 638*4882a593Smuzhiyun #size-cells = <2>; 639*4882a593Smuzhiyun ranges; 640*4882a593Smuzhiyun 641*4882a593Smuzhiyun gpio0: gpio0@ff4c0000 { 642*4882a593Smuzhiyun compatible = "rockchip,gpio-bank"; 643*4882a593Smuzhiyun reg = <0x0 0xff4c0000 0x0 0x100>; 644*4882a593Smuzhiyun interrupts = <GIC_SPI 3 IRQ_TYPE_LEVEL_HIGH>; 645*4882a593Smuzhiyun clocks = <&cru PCLK_GPIO0_PMU>, <&cru DBCLK_PMU_GPIO0>; 646*4882a593Smuzhiyun gpio-controller; 647*4882a593Smuzhiyun #gpio-cells = <2>; 648*4882a593Smuzhiyun 649*4882a593Smuzhiyun interrupt-controller; 650*4882a593Smuzhiyun #interrupt-cells = <2>; 651*4882a593Smuzhiyun }; 652*4882a593Smuzhiyun 653*4882a593Smuzhiyun gpio1: gpio1@ff690000 { 654*4882a593Smuzhiyun compatible = "rockchip,gpio-bank"; 655*4882a593Smuzhiyun reg = <0x0 0xff690000 0x0 0x100>; 656*4882a593Smuzhiyun interrupts = <GIC_SPI 4 IRQ_TYPE_LEVEL_HIGH>; 657*4882a593Smuzhiyun clocks = <&cru PCLK_GPIO1>, <&cru DBCLK_GPIO1>; 658*4882a593Smuzhiyun gpio-controller; 659*4882a593Smuzhiyun #gpio-cells = <2>; 660*4882a593Smuzhiyun 661*4882a593Smuzhiyun interrupt-controller; 662*4882a593Smuzhiyun #interrupt-cells = <2>; 663*4882a593Smuzhiyun }; 664*4882a593Smuzhiyun 665*4882a593Smuzhiyun gpio2: gpio2@ff6a0000 { 666*4882a593Smuzhiyun compatible = "rockchip,gpio-bank"; 667*4882a593Smuzhiyun reg = <0x0 0xff6a0000 0x0 0x100>; 668*4882a593Smuzhiyun interrupts = <GIC_SPI 5 IRQ_TYPE_LEVEL_HIGH>; 669*4882a593Smuzhiyun clocks = <&cru PCLK_GPIO2>, <&cru DBCLK_GPIO2>; 670*4882a593Smuzhiyun gpio-controller; 671*4882a593Smuzhiyun #gpio-cells = <2>; 672*4882a593Smuzhiyun 673*4882a593Smuzhiyun interrupt-controller; 674*4882a593Smuzhiyun #interrupt-cells = <2>; 675*4882a593Smuzhiyun }; 676*4882a593Smuzhiyun 677*4882a593Smuzhiyun gpio3: gpio3@ff6b0000 { 678*4882a593Smuzhiyun compatible = "rockchip,gpio-bank"; 679*4882a593Smuzhiyun reg = <0x0 0xff6b0000 0x0 0x100>; 680*4882a593Smuzhiyun interrupts = <GIC_SPI 6 IRQ_TYPE_LEVEL_HIGH>; 681*4882a593Smuzhiyun clocks = <&cru PCLK_GPIO3>, <&cru DBCLK_GPIO3>; 682*4882a593Smuzhiyun gpio-controller; 683*4882a593Smuzhiyun #gpio-cells = <2>; 684*4882a593Smuzhiyun 685*4882a593Smuzhiyun interrupt-controller; 686*4882a593Smuzhiyun #interrupt-cells = <2>; 687*4882a593Smuzhiyun }; 688*4882a593Smuzhiyun 689*4882a593Smuzhiyun gpio4: gpio4@ff6c0000 { 690*4882a593Smuzhiyun compatible = "rockchip,gpio-bank"; 691*4882a593Smuzhiyun reg = <0x0 0xff6c0000 0x0 0x100>; 692*4882a593Smuzhiyun interrupts = <GIC_SPI 82 IRQ_TYPE_LEVEL_HIGH>; 693*4882a593Smuzhiyun clocks = <&cru PCLK_GPIO4>, <&cru DBCLK_GPIO4>; 694*4882a593Smuzhiyun gpio-controller; 695*4882a593Smuzhiyun #gpio-cells = <2>; 696*4882a593Smuzhiyun 697*4882a593Smuzhiyun interrupt-controller; 698*4882a593Smuzhiyun #interrupt-cells = <2>; 699*4882a593Smuzhiyun }; 700*4882a593Smuzhiyun 701*4882a593Smuzhiyun pcfg_pull_down: pcfg-pull-down { 702*4882a593Smuzhiyun bias-pull-down; 703*4882a593Smuzhiyun }; 704*4882a593Smuzhiyun 705*4882a593Smuzhiyun pcfg_pull_none: pcfg-pull-none { 706*4882a593Smuzhiyun bias-disable; 707*4882a593Smuzhiyun }; 708*4882a593Smuzhiyun 709*4882a593Smuzhiyun pcfg_pull_up_2ma: pcfg-pull-up-2ma { 710*4882a593Smuzhiyun bias-pull-up; 711*4882a593Smuzhiyun drive-strength = <2>; 712*4882a593Smuzhiyun }; 713*4882a593Smuzhiyun 714*4882a593Smuzhiyun pcfg_pull_none_smt: pcfg-pull-none-smt { 715*4882a593Smuzhiyun bias-disable; 716*4882a593Smuzhiyun input-schmitt-enable; 717*4882a593Smuzhiyun }; 718*4882a593Smuzhiyun 719*4882a593Smuzhiyun pcfg_pull_none_2ma_smt: pcfg-pull-none-2ma-smt { 720*4882a593Smuzhiyun bias-disable; 721*4882a593Smuzhiyun drive-strength = <2>; 722*4882a593Smuzhiyun input-schmitt-enable; 723*4882a593Smuzhiyun }; 724*4882a593Smuzhiyun 725*4882a593Smuzhiyun pcfg_output_high: pcfg-output-high { 726*4882a593Smuzhiyun output-high; 727*4882a593Smuzhiyun }; 728*4882a593Smuzhiyun 729*4882a593Smuzhiyun pcfg_input_smt: pcfg-input-smt { 730*4882a593Smuzhiyun input-enable; 731*4882a593Smuzhiyun input-schmitt-enable; 732*4882a593Smuzhiyun }; 733*4882a593Smuzhiyun 734*4882a593Smuzhiyun i2c0 { 735*4882a593Smuzhiyun i2c0_xfer: i2c0-xfer { 736*4882a593Smuzhiyun rockchip,pins = 737*4882a593Smuzhiyun /* i2c0_sda */ 738*4882a593Smuzhiyun <0 RK_PB1 1 &pcfg_pull_none_2ma_smt>, 739*4882a593Smuzhiyun /* i2c0_scl */ 740*4882a593Smuzhiyun <0 RK_PB0 1 &pcfg_pull_none_2ma_smt>; 741*4882a593Smuzhiyun }; 742*4882a593Smuzhiyun }; 743*4882a593Smuzhiyun 744*4882a593Smuzhiyun i2c1 { 745*4882a593Smuzhiyun i2c1_xfer: i2c1-xfer { 746*4882a593Smuzhiyun rockchip,pins = 747*4882a593Smuzhiyun /* i2c1_sda */ 748*4882a593Smuzhiyun <0 RK_PC1 1 &pcfg_pull_none_2ma_smt>, 749*4882a593Smuzhiyun /* i2c1_scl */ 750*4882a593Smuzhiyun <0 RK_PC0 1 &pcfg_pull_none_2ma_smt>; 751*4882a593Smuzhiyun }; 752*4882a593Smuzhiyun }; 753*4882a593Smuzhiyun 754*4882a593Smuzhiyun pciusb { 755*4882a593Smuzhiyun pciusb_pins: pciusb-pins { 756*4882a593Smuzhiyun rockchip,pins = 757*4882a593Smuzhiyun /* pciusb_debug0 */ 758*4882a593Smuzhiyun <4 RK_PB4 3 &pcfg_pull_none>, 759*4882a593Smuzhiyun /* pciusb_debug1 */ 760*4882a593Smuzhiyun <4 RK_PB5 3 &pcfg_pull_none>, 761*4882a593Smuzhiyun /* pciusb_debug2 */ 762*4882a593Smuzhiyun <4 RK_PB6 3 &pcfg_pull_none>, 763*4882a593Smuzhiyun /* pciusb_debug3 */ 764*4882a593Smuzhiyun <4 RK_PB7 3 &pcfg_pull_none>, 765*4882a593Smuzhiyun /* pciusb_debug4 */ 766*4882a593Smuzhiyun <4 RK_PC0 3 &pcfg_pull_none>, 767*4882a593Smuzhiyun /* pciusb_debug5 */ 768*4882a593Smuzhiyun <4 RK_PC1 3 &pcfg_pull_none>, 769*4882a593Smuzhiyun /* pciusb_debug6 */ 770*4882a593Smuzhiyun <4 RK_PC2 3 &pcfg_pull_none>, 771*4882a593Smuzhiyun /* pciusb_debug7 */ 772*4882a593Smuzhiyun <4 RK_PC3 3 &pcfg_pull_none>; 773*4882a593Smuzhiyun }; 774*4882a593Smuzhiyun }; 775*4882a593Smuzhiyun 776*4882a593Smuzhiyun uart2 { 777*4882a593Smuzhiyun uart2m0_xfer: uart2m0-xfer { 778*4882a593Smuzhiyun rockchip,pins = 779*4882a593Smuzhiyun /* uart2_rxm0 */ 780*4882a593Smuzhiyun <4 RK_PA3 2 &pcfg_pull_up_2ma>, 781*4882a593Smuzhiyun /* uart2_txm0 */ 782*4882a593Smuzhiyun <4 RK_PA2 2 &pcfg_pull_up_2ma>; 783*4882a593Smuzhiyun }; 784*4882a593Smuzhiyun 785*4882a593Smuzhiyun uart2m1_xfer: uart2m1-xfer { 786*4882a593Smuzhiyun rockchip,pins = 787*4882a593Smuzhiyun /* uart2_rxm1 */ 788*4882a593Smuzhiyun <2 RK_PD1 2 &pcfg_pull_up_2ma>, 789*4882a593Smuzhiyun /* uart2_txm1 */ 790*4882a593Smuzhiyun <2 RK_PD0 2 &pcfg_pull_up_2ma>; 791*4882a593Smuzhiyun }; 792*4882a593Smuzhiyun 793*4882a593Smuzhiyun uart2m2_xfer: uart2m2-xfer { 794*4882a593Smuzhiyun rockchip,pins = 795*4882a593Smuzhiyun /* uart2_rxm2 */ 796*4882a593Smuzhiyun <3 RK_PA4 2 &pcfg_pull_up_2ma>, 797*4882a593Smuzhiyun /* uart2_txm2 */ 798*4882a593Smuzhiyun <3 RK_PA3 2 &pcfg_pull_up_2ma>; 799*4882a593Smuzhiyun }; 800*4882a593Smuzhiyun }; 801*4882a593Smuzhiyun 802*4882a593Smuzhiyun tsadc { 803*4882a593Smuzhiyun tsadc_otp_gpio: tsadc-otp-gpio { 804*4882a593Smuzhiyun rockchip,pins = 805*4882a593Smuzhiyun <0 RK_PA6 RK_FUNC_GPIO &pcfg_pull_none>; 806*4882a593Smuzhiyun }; 807*4882a593Smuzhiyun 808*4882a593Smuzhiyun tsadc_otp_out: tsadc-otp-out { 809*4882a593Smuzhiyun rockchip,pins = 810*4882a593Smuzhiyun <0 RK_PA6 2 &pcfg_pull_none>; 811*4882a593Smuzhiyun }; 812*4882a593Smuzhiyun }; 813*4882a593Smuzhiyun 814*4882a593Smuzhiyun xin32k { 815*4882a593Smuzhiyun clkin_32k: clkin-32k { 816*4882a593Smuzhiyun rockchip,pins = 817*4882a593Smuzhiyun <0 RK_PC2 1 &pcfg_input_smt>; 818*4882a593Smuzhiyun }; 819*4882a593Smuzhiyun 820*4882a593Smuzhiyun clkout_32k: clkout-32k { 821*4882a593Smuzhiyun rockchip,pins = 822*4882a593Smuzhiyun <0 RK_PC2 1 &pcfg_output_high>; 823*4882a593Smuzhiyun }; 824*4882a593Smuzhiyun }; 825*4882a593Smuzhiyun }; 826*4882a593Smuzhiyun}; 827