1*4882a593Smuzhiyun// SPDX-License-Identifier: (GPL-2.0+ OR MIT) 2*4882a593Smuzhiyun/* 3*4882a593Smuzhiyun * Copyright (c) 2021 Rockchip Electronics Co., Ltd. 4*4882a593Smuzhiyun */ 5*4882a593Smuzhiyun 6*4882a593Smuzhiyun#include <dt-bindings/clock/rk3588-cru.h> 7*4882a593Smuzhiyun#include <dt-bindings/interrupt-controller/arm-gic.h> 8*4882a593Smuzhiyun#include <dt-bindings/interrupt-controller/irq.h> 9*4882a593Smuzhiyun#include <dt-bindings/phy/phy.h> 10*4882a593Smuzhiyun#include <dt-bindings/power/rk3588-power.h> 11*4882a593Smuzhiyun#include <dt-bindings/soc/rockchip,boot-mode.h> 12*4882a593Smuzhiyun#include <dt-bindings/soc/rockchip-system-status.h> 13*4882a593Smuzhiyun#include <dt-bindings/suspend/rockchip-rk3588.h> 14*4882a593Smuzhiyun#include <dt-bindings/thermal/thermal.h> 15*4882a593Smuzhiyun 16*4882a593Smuzhiyun/ { 17*4882a593Smuzhiyun compatible = "rockchip,rk3588"; 18*4882a593Smuzhiyun 19*4882a593Smuzhiyun interrupt-parent = <&gic>; 20*4882a593Smuzhiyun #address-cells = <2>; 21*4882a593Smuzhiyun #size-cells = <2>; 22*4882a593Smuzhiyun 23*4882a593Smuzhiyun aliases { 24*4882a593Smuzhiyun csi2dcphy0 = &csi2_dcphy0; 25*4882a593Smuzhiyun csi2dcphy1 = &csi2_dcphy1; 26*4882a593Smuzhiyun csi2dphy0 = &csi2_dphy0; 27*4882a593Smuzhiyun csi2dphy1 = &csi2_dphy1; 28*4882a593Smuzhiyun csi2dphy2 = &csi2_dphy2; 29*4882a593Smuzhiyun csi2dphy3 = &csi2_dphy3; 30*4882a593Smuzhiyun csi2dphy4 = &csi2_dphy4; 31*4882a593Smuzhiyun csi2dphy5 = &csi2_dphy5; 32*4882a593Smuzhiyun dsi0 = &dsi0; 33*4882a593Smuzhiyun dsi1 = &dsi1; 34*4882a593Smuzhiyun ethernet1 = &gmac1; 35*4882a593Smuzhiyun gpio0 = &gpio0; 36*4882a593Smuzhiyun gpio1 = &gpio1; 37*4882a593Smuzhiyun gpio2 = &gpio2; 38*4882a593Smuzhiyun gpio3 = &gpio3; 39*4882a593Smuzhiyun gpio4 = &gpio4; 40*4882a593Smuzhiyun i2c0 = &i2c0; 41*4882a593Smuzhiyun i2c1 = &i2c1; 42*4882a593Smuzhiyun i2c2 = &i2c2; 43*4882a593Smuzhiyun i2c3 = &i2c3; 44*4882a593Smuzhiyun i2c4 = &i2c4; 45*4882a593Smuzhiyun i2c5 = &i2c5; 46*4882a593Smuzhiyun i2c6 = &i2c6; 47*4882a593Smuzhiyun i2c7 = &i2c7; 48*4882a593Smuzhiyun i2c8 = &i2c8; 49*4882a593Smuzhiyun rkcif_mipi_lvds0= &rkcif_mipi_lvds; 50*4882a593Smuzhiyun rkcif_mipi_lvds1= &rkcif_mipi_lvds1; 51*4882a593Smuzhiyun rkcif_mipi_lvds2= &rkcif_mipi_lvds2; 52*4882a593Smuzhiyun rkcif_mipi_lvds3= &rkcif_mipi_lvds3; 53*4882a593Smuzhiyun rkvdec0 = &rkvdec0; 54*4882a593Smuzhiyun rkvdec1 = &rkvdec1; 55*4882a593Smuzhiyun rkvenc0 = &rkvenc0; 56*4882a593Smuzhiyun rkvenc1 = &rkvenc1; 57*4882a593Smuzhiyun jpege0 = &jpege0; 58*4882a593Smuzhiyun jpege1 = &jpege1; 59*4882a593Smuzhiyun jpege2 = &jpege2; 60*4882a593Smuzhiyun jpege3 = &jpege3; 61*4882a593Smuzhiyun serial0 = &uart0; 62*4882a593Smuzhiyun serial1 = &uart1; 63*4882a593Smuzhiyun serial2 = &uart2; 64*4882a593Smuzhiyun serial3 = &uart3; 65*4882a593Smuzhiyun serial4 = &uart4; 66*4882a593Smuzhiyun serial5 = &uart5; 67*4882a593Smuzhiyun serial6 = &uart6; 68*4882a593Smuzhiyun serial7 = &uart7; 69*4882a593Smuzhiyun serial8 = &uart8; 70*4882a593Smuzhiyun serial9 = &uart9; 71*4882a593Smuzhiyun spi0 = &spi0; 72*4882a593Smuzhiyun spi1 = &spi1; 73*4882a593Smuzhiyun spi2 = &spi2; 74*4882a593Smuzhiyun spi3 = &spi3; 75*4882a593Smuzhiyun spi4 = &spi4; 76*4882a593Smuzhiyun spi5 = &sfc; 77*4882a593Smuzhiyun hdcp0 = &hdcp0; 78*4882a593Smuzhiyun hdcp1 = &hdcp1; 79*4882a593Smuzhiyun }; 80*4882a593Smuzhiyun 81*4882a593Smuzhiyun clocks { 82*4882a593Smuzhiyun compatible = "simple-bus"; 83*4882a593Smuzhiyun #address-cells = <2>; 84*4882a593Smuzhiyun #size-cells = <2>; 85*4882a593Smuzhiyun ranges; 86*4882a593Smuzhiyun 87*4882a593Smuzhiyun spll: spll { 88*4882a593Smuzhiyun compatible = "fixed-clock"; 89*4882a593Smuzhiyun #clock-cells = <0>; 90*4882a593Smuzhiyun clock-frequency = <702000000>; 91*4882a593Smuzhiyun clock-output-names = "spll"; 92*4882a593Smuzhiyun }; 93*4882a593Smuzhiyun 94*4882a593Smuzhiyun xin32k: xin32k { 95*4882a593Smuzhiyun compatible = "fixed-clock"; 96*4882a593Smuzhiyun #clock-cells = <0>; 97*4882a593Smuzhiyun clock-frequency = <32768>; 98*4882a593Smuzhiyun clock-output-names = "xin32k"; 99*4882a593Smuzhiyun }; 100*4882a593Smuzhiyun 101*4882a593Smuzhiyun xin24m: xin24m { 102*4882a593Smuzhiyun compatible = "fixed-clock"; 103*4882a593Smuzhiyun #clock-cells = <0>; 104*4882a593Smuzhiyun clock-frequency = <24000000>; 105*4882a593Smuzhiyun clock-output-names = "xin24m"; 106*4882a593Smuzhiyun }; 107*4882a593Smuzhiyun 108*4882a593Smuzhiyun hclk_vo1: hclk_vo1@fd7c08ec { 109*4882a593Smuzhiyun compatible = "rockchip,rk3588-clock-gate-link"; 110*4882a593Smuzhiyun reg = <0 0xfd7c08ec 0 0x10>; 111*4882a593Smuzhiyun clock-names = "link"; 112*4882a593Smuzhiyun clocks = <&cru HCLK_VO1USB_TOP_ROOT>; 113*4882a593Smuzhiyun #power-domain-cells = <1>; 114*4882a593Smuzhiyun #clock-cells = <0>; 115*4882a593Smuzhiyun }; 116*4882a593Smuzhiyun 117*4882a593Smuzhiyun aclk_vdpu_low_pre: aclk_vdpu_low_pre@fd7c08b0 { 118*4882a593Smuzhiyun compatible = "rockchip,rk3588-clock-gate-link"; 119*4882a593Smuzhiyun reg = <0 0xfd7c08b0 0 0x10>; 120*4882a593Smuzhiyun clock-names = "link"; 121*4882a593Smuzhiyun clocks = <&cru ACLK_VDPU_ROOT>; 122*4882a593Smuzhiyun #power-domain-cells = <1>; 123*4882a593Smuzhiyun #clock-cells = <0>; 124*4882a593Smuzhiyun }; 125*4882a593Smuzhiyun 126*4882a593Smuzhiyun hclk_vo0: hclk_vo0@fd7c08dc { 127*4882a593Smuzhiyun compatible = "rockchip,rk3588-clock-gate-link"; 128*4882a593Smuzhiyun reg = <0 0xfd7c08dc 0 0x10>; 129*4882a593Smuzhiyun clock-names = "link"; 130*4882a593Smuzhiyun clocks = <&cru HCLK_VOP_ROOT>; 131*4882a593Smuzhiyun #power-domain-cells = <1>; 132*4882a593Smuzhiyun #clock-cells = <0>; 133*4882a593Smuzhiyun }; 134*4882a593Smuzhiyun 135*4882a593Smuzhiyun hclk_usb: hclk_usb@fd7c08a8 { 136*4882a593Smuzhiyun compatible = "rockchip,rk3588-clock-gate-link"; 137*4882a593Smuzhiyun reg = <0 0xfd7c08a8 0 0x10>; 138*4882a593Smuzhiyun clock-names = "link"; 139*4882a593Smuzhiyun clocks = <&cru HCLK_VO1USB_TOP_ROOT>; 140*4882a593Smuzhiyun #power-domain-cells = <1>; 141*4882a593Smuzhiyun #clock-cells = <0>; 142*4882a593Smuzhiyun }; 143*4882a593Smuzhiyun 144*4882a593Smuzhiyun hclk_nvm: hclk_nvm@fd7c087c { 145*4882a593Smuzhiyun compatible = "rockchip,rk3588-clock-gate-link"; 146*4882a593Smuzhiyun reg = <0 0xfd7c087c 0 0x10>; 147*4882a593Smuzhiyun clock-names = "link"; 148*4882a593Smuzhiyun clocks = <&cru ACLK_NVM_ROOT>; 149*4882a593Smuzhiyun #power-domain-cells = <1>; 150*4882a593Smuzhiyun #clock-cells = <0>; 151*4882a593Smuzhiyun }; 152*4882a593Smuzhiyun 153*4882a593Smuzhiyun aclk_usb: aclk_usb@fd7c08a8 { 154*4882a593Smuzhiyun compatible = "rockchip,rk3588-clock-gate-link"; 155*4882a593Smuzhiyun reg = <0 0xfd7c08a8 0 0x10>; 156*4882a593Smuzhiyun clock-names = "link"; 157*4882a593Smuzhiyun clocks = <&cru ACLK_VO1USB_TOP_ROOT>; 158*4882a593Smuzhiyun #power-domain-cells = <1>; 159*4882a593Smuzhiyun #clock-cells = <0>; 160*4882a593Smuzhiyun }; 161*4882a593Smuzhiyun 162*4882a593Smuzhiyun hclk_isp1_pre: hclk_isp1_pre@fd7c0868 { 163*4882a593Smuzhiyun compatible = "rockchip,rk3588-clock-gate-link"; 164*4882a593Smuzhiyun reg = <0 0xfd7c0868 0 0x10>; 165*4882a593Smuzhiyun clock-names = "link"; 166*4882a593Smuzhiyun clocks = <&cru HCLK_VI_ROOT>; 167*4882a593Smuzhiyun #power-domain-cells = <1>; 168*4882a593Smuzhiyun #clock-cells = <0>; 169*4882a593Smuzhiyun }; 170*4882a593Smuzhiyun 171*4882a593Smuzhiyun aclk_isp1_pre: aclk_isp1_pre@fd7c0868 { 172*4882a593Smuzhiyun compatible = "rockchip,rk3588-clock-gate-link"; 173*4882a593Smuzhiyun reg = <0 0xfd7c0868 0 0x10>; 174*4882a593Smuzhiyun clock-names = "link"; 175*4882a593Smuzhiyun clocks = <&cru ACLK_VI_ROOT>; 176*4882a593Smuzhiyun #power-domain-cells = <1>; 177*4882a593Smuzhiyun #clock-cells = <0>; 178*4882a593Smuzhiyun }; 179*4882a593Smuzhiyun 180*4882a593Smuzhiyun aclk_rkvdec0_pre: aclk_rkvdec0_pre@fd7c08a0 { 181*4882a593Smuzhiyun compatible = "rockchip,rk3588-clock-gate-link"; 182*4882a593Smuzhiyun reg = <0 0xfd7c08a0 0 0x10>; 183*4882a593Smuzhiyun clock-names = "link"; 184*4882a593Smuzhiyun clocks = <&cru ACLK_VDPU_ROOT>; 185*4882a593Smuzhiyun #power-domain-cells = <1>; 186*4882a593Smuzhiyun #clock-cells = <0>; 187*4882a593Smuzhiyun }; 188*4882a593Smuzhiyun 189*4882a593Smuzhiyun hclk_rkvdec0_pre: hclk_rkvdec0_pre@fd7c08a0 { 190*4882a593Smuzhiyun compatible = "rockchip,rk3588-clock-gate-link"; 191*4882a593Smuzhiyun reg = <0 0xfd7c08a0 0 0x10>; 192*4882a593Smuzhiyun clock-names = "link"; 193*4882a593Smuzhiyun clocks = <&cru HCLK_VDPU_ROOT>; 194*4882a593Smuzhiyun #power-domain-cells = <1>; 195*4882a593Smuzhiyun #clock-cells = <0>; 196*4882a593Smuzhiyun }; 197*4882a593Smuzhiyun 198*4882a593Smuzhiyun aclk_rkvdec1_pre: aclk_rkvdec1_pre@fd7c08a4 { 199*4882a593Smuzhiyun compatible = "rockchip,rk3588-clock-gate-link"; 200*4882a593Smuzhiyun reg = <0 0xfd7c08a4 0 0x10>; 201*4882a593Smuzhiyun clock-names = "link"; 202*4882a593Smuzhiyun clocks = <&cru ACLK_VDPU_ROOT>; 203*4882a593Smuzhiyun #power-domain-cells = <1>; 204*4882a593Smuzhiyun #clock-cells = <0>; 205*4882a593Smuzhiyun }; 206*4882a593Smuzhiyun 207*4882a593Smuzhiyun hclk_rkvdec1_pre: hclk_rkvdec1_pre@fd7c08a4 { 208*4882a593Smuzhiyun compatible = "rockchip,rk3588-clock-gate-link"; 209*4882a593Smuzhiyun reg = <0 0xfd7c08a4 0 0x10>; 210*4882a593Smuzhiyun clock-names = "link"; 211*4882a593Smuzhiyun clocks = <&cru HCLK_VDPU_ROOT>; 212*4882a593Smuzhiyun #power-domain-cells = <1>; 213*4882a593Smuzhiyun #clock-cells = <0>; 214*4882a593Smuzhiyun }; 215*4882a593Smuzhiyun 216*4882a593Smuzhiyun aclk_jpeg_decoder_pre: aclk_jpeg_decoder_pre@fd7c08b0 { 217*4882a593Smuzhiyun compatible = "rockchip,rk3588-clock-gate-link"; 218*4882a593Smuzhiyun reg = <0 0xfd7c08b0 0 0x10>; 219*4882a593Smuzhiyun clock-names = "link"; 220*4882a593Smuzhiyun clocks = <&cru ACLK_VDPU_ROOT>; 221*4882a593Smuzhiyun #power-domain-cells = <1>; 222*4882a593Smuzhiyun #clock-cells = <0>; 223*4882a593Smuzhiyun }; 224*4882a593Smuzhiyun 225*4882a593Smuzhiyun aclk_rkvenc1_pre: aclk_rkvenc1_pre@fd7c08c0 { 226*4882a593Smuzhiyun compatible = "rockchip,rk3588-clock-gate-link"; 227*4882a593Smuzhiyun reg = <0 0xfd7c08c0 0 0x10>; 228*4882a593Smuzhiyun clock-names = "link"; 229*4882a593Smuzhiyun clocks = <&cru ACLK_RKVENC0>; 230*4882a593Smuzhiyun #power-domain-cells = <1>; 231*4882a593Smuzhiyun #clock-cells = <0>; 232*4882a593Smuzhiyun }; 233*4882a593Smuzhiyun 234*4882a593Smuzhiyun hclk_rkvenc1_pre: hclk_rkvenc1_pre@fd7c08c0 { 235*4882a593Smuzhiyun compatible = "rockchip,rk3588-clock-gate-link"; 236*4882a593Smuzhiyun reg = <0 0xfd7c08c0 0 0x10>; 237*4882a593Smuzhiyun clock-names = "link"; 238*4882a593Smuzhiyun clocks = <&cru HCLK_RKVENC0>; 239*4882a593Smuzhiyun #power-domain-cells = <1>; 240*4882a593Smuzhiyun #clock-cells = <0>; 241*4882a593Smuzhiyun }; 242*4882a593Smuzhiyun 243*4882a593Smuzhiyun aclk_hdcp0_pre: aclk_hdcp0_pre@fd7c08dc { 244*4882a593Smuzhiyun compatible = "rockchip,rk3588-clock-gate-link"; 245*4882a593Smuzhiyun reg = <0 0xfd7c08dc 0 0x10>; 246*4882a593Smuzhiyun clock-names = "link"; 247*4882a593Smuzhiyun clocks = <&cru ACLK_VOP_LOW_ROOT>; 248*4882a593Smuzhiyun #power-domain-cells = <1>; 249*4882a593Smuzhiyun #clock-cells = <0>; 250*4882a593Smuzhiyun }; 251*4882a593Smuzhiyun 252*4882a593Smuzhiyun aclk_hdcp1_pre: aclk_hdcp1_pre@fd7c08ec { 253*4882a593Smuzhiyun compatible = "rockchip,rk3588-clock-gate-link"; 254*4882a593Smuzhiyun reg = <0 0xfd7c08ec 0 0x10>; 255*4882a593Smuzhiyun clock-names = "link"; 256*4882a593Smuzhiyun clocks = <&cru ACLK_VO1USB_TOP_ROOT>; 257*4882a593Smuzhiyun #power-domain-cells = <1>; 258*4882a593Smuzhiyun #clock-cells = <0>; 259*4882a593Smuzhiyun }; 260*4882a593Smuzhiyun 261*4882a593Smuzhiyun pclk_av1_pre: pclk_av1_pre@fd7c0910 { 262*4882a593Smuzhiyun compatible = "rockchip,rk3588-clock-gate-link"; 263*4882a593Smuzhiyun reg = <0 0xfd7c0910 0 0x10>; 264*4882a593Smuzhiyun clock-names = "link"; 265*4882a593Smuzhiyun clocks = <&cru HCLK_VDPU_ROOT>; 266*4882a593Smuzhiyun #power-domain-cells = <1>; 267*4882a593Smuzhiyun #clock-cells = <0>; 268*4882a593Smuzhiyun }; 269*4882a593Smuzhiyun 270*4882a593Smuzhiyun aclk_av1_pre: aclk_av1_pre@fd7c0910 { 271*4882a593Smuzhiyun compatible = "rockchip,rk3588-clock-gate-link"; 272*4882a593Smuzhiyun reg = <0 0xfd7c0910 0 0x10>; 273*4882a593Smuzhiyun clock-names = "link"; 274*4882a593Smuzhiyun clocks = <&cru ACLK_VDPU_ROOT>; 275*4882a593Smuzhiyun #power-domain-cells = <1>; 276*4882a593Smuzhiyun #clock-cells = <0>; 277*4882a593Smuzhiyun }; 278*4882a593Smuzhiyun 279*4882a593Smuzhiyun hclk_sdio_pre: hclk_sdio_pre@fd7c092c { 280*4882a593Smuzhiyun compatible = "rockchip,rk3588-clock-gate-link"; 281*4882a593Smuzhiyun reg = <0 0xfd7c092c 0 0x10>; 282*4882a593Smuzhiyun clock-names = "link"; 283*4882a593Smuzhiyun clocks = <&hclk_nvm>; 284*4882a593Smuzhiyun #power-domain-cells = <1>; 285*4882a593Smuzhiyun #clock-cells = <0>; 286*4882a593Smuzhiyun }; 287*4882a593Smuzhiyun 288*4882a593Smuzhiyun pclk_vo0_grf: pclk_vo0_grf@fd7c08dc { 289*4882a593Smuzhiyun compatible = "rockchip,rk3588-clock-gate-link"; 290*4882a593Smuzhiyun reg = <0x0 0xfd7c08dc 0x0 0x4>; 291*4882a593Smuzhiyun clocks = <&hclk_vo0>; 292*4882a593Smuzhiyun clock-names = "link"; 293*4882a593Smuzhiyun #clock-cells = <0>; 294*4882a593Smuzhiyun }; 295*4882a593Smuzhiyun 296*4882a593Smuzhiyun pclk_vo1_grf: pclk_vo1_grf@fd7c08ec { 297*4882a593Smuzhiyun compatible = "rockchip,rk3588-clock-gate-link"; 298*4882a593Smuzhiyun reg = <0x0 0xfd7c08ec 0x0 0x4>; 299*4882a593Smuzhiyun clocks = <&hclk_vo1>; 300*4882a593Smuzhiyun clock-names = "link"; 301*4882a593Smuzhiyun #clock-cells = <0>; 302*4882a593Smuzhiyun }; 303*4882a593Smuzhiyun 304*4882a593Smuzhiyun mclkin_i2s0: mclkin-i2s0 { 305*4882a593Smuzhiyun compatible = "fixed-clock"; 306*4882a593Smuzhiyun #clock-cells = <0>; 307*4882a593Smuzhiyun clock-frequency = <0>; 308*4882a593Smuzhiyun clock-output-names = "i2s0_mclkin"; 309*4882a593Smuzhiyun }; 310*4882a593Smuzhiyun 311*4882a593Smuzhiyun mclkin_i2s1: mclkin-i2s1 { 312*4882a593Smuzhiyun compatible = "fixed-clock"; 313*4882a593Smuzhiyun #clock-cells = <0>; 314*4882a593Smuzhiyun clock-frequency = <0>; 315*4882a593Smuzhiyun clock-output-names = "i2s1_mclkin"; 316*4882a593Smuzhiyun }; 317*4882a593Smuzhiyun 318*4882a593Smuzhiyun mclkin_i2s2: mclkin-i2s2 { 319*4882a593Smuzhiyun compatible = "fixed-clock"; 320*4882a593Smuzhiyun #clock-cells = <0>; 321*4882a593Smuzhiyun clock-frequency = <0>; 322*4882a593Smuzhiyun clock-output-names = "i2s2_mclkin"; 323*4882a593Smuzhiyun }; 324*4882a593Smuzhiyun 325*4882a593Smuzhiyun mclkin_i2s3: mclkin-i2s3 { 326*4882a593Smuzhiyun compatible = "fixed-clock"; 327*4882a593Smuzhiyun #clock-cells = <0>; 328*4882a593Smuzhiyun clock-frequency = <0>; 329*4882a593Smuzhiyun clock-output-names = "i2s3_mclkin"; 330*4882a593Smuzhiyun }; 331*4882a593Smuzhiyun 332*4882a593Smuzhiyun mclkout_i2s0: mclkout-i2s0@fd58c318 { 333*4882a593Smuzhiyun compatible = "rockchip,clk-out"; 334*4882a593Smuzhiyun reg = <0 0xfd58c318 0 0x4>; 335*4882a593Smuzhiyun clocks = <&cru I2S0_8CH_MCLKOUT>; 336*4882a593Smuzhiyun #clock-cells = <0>; 337*4882a593Smuzhiyun clock-output-names = "i2s0_mclkout_to_io"; 338*4882a593Smuzhiyun rockchip,bit-shift = <0>; 339*4882a593Smuzhiyun rockchip,bit-set-to-disable; 340*4882a593Smuzhiyun }; 341*4882a593Smuzhiyun 342*4882a593Smuzhiyun mclkout_i2s1: mclkout-i2s1@fd58c318 { 343*4882a593Smuzhiyun compatible = "rockchip,clk-out"; 344*4882a593Smuzhiyun reg = <0 0xfd58c318 0 0x4>; 345*4882a593Smuzhiyun clocks = <&cru I2S1_8CH_MCLKOUT>; 346*4882a593Smuzhiyun #clock-cells = <0>; 347*4882a593Smuzhiyun clock-output-names = "i2s1_mclkout_to_io"; 348*4882a593Smuzhiyun rockchip,bit-shift = <1>; 349*4882a593Smuzhiyun rockchip,bit-set-to-disable; 350*4882a593Smuzhiyun }; 351*4882a593Smuzhiyun 352*4882a593Smuzhiyun mclkout_i2s1m1: mclkout-i2s1@fd58a000 { 353*4882a593Smuzhiyun compatible = "rockchip,clk-out"; 354*4882a593Smuzhiyun reg = <0 0xfd58a000 0 0x4>; 355*4882a593Smuzhiyun clocks = <&cru I2S1_8CH_MCLKOUT>; 356*4882a593Smuzhiyun #clock-cells = <0>; 357*4882a593Smuzhiyun clock-output-names = "i2s1m1_mclkout_to_io"; 358*4882a593Smuzhiyun rockchip,bit-shift = <6>; 359*4882a593Smuzhiyun }; 360*4882a593Smuzhiyun 361*4882a593Smuzhiyun mclkout_i2s2: mclkout-i2s2@fd58c318 { 362*4882a593Smuzhiyun compatible = "rockchip,clk-out"; 363*4882a593Smuzhiyun reg = <0 0xfd58c318 0 0x4>; 364*4882a593Smuzhiyun clocks = <&cru I2S2_2CH_MCLKOUT>; 365*4882a593Smuzhiyun #clock-cells = <0>; 366*4882a593Smuzhiyun clock-output-names = "i2s2_mclkout_to_io"; 367*4882a593Smuzhiyun rockchip,bit-shift = <2>; 368*4882a593Smuzhiyun rockchip,bit-set-to-disable; 369*4882a593Smuzhiyun }; 370*4882a593Smuzhiyun 371*4882a593Smuzhiyun mclkout_i2s3: mclkout-i2s3@fd58c318 { 372*4882a593Smuzhiyun compatible = "rockchip,clk-out"; 373*4882a593Smuzhiyun reg = <0 0xfd58c318 0 0x4>; 374*4882a593Smuzhiyun clocks = <&cru I2S3_2CH_MCLKOUT>; 375*4882a593Smuzhiyun #clock-cells = <0>; 376*4882a593Smuzhiyun clock-output-names = "i2s3_mclkout_to_io"; 377*4882a593Smuzhiyun rockchip,bit-shift = <7>; 378*4882a593Smuzhiyun rockchip,bit-set-to-disable; 379*4882a593Smuzhiyun }; 380*4882a593Smuzhiyun }; 381*4882a593Smuzhiyun 382*4882a593Smuzhiyun cpus { 383*4882a593Smuzhiyun #address-cells = <1>; 384*4882a593Smuzhiyun #size-cells = <0>; 385*4882a593Smuzhiyun 386*4882a593Smuzhiyun cpu-map { 387*4882a593Smuzhiyun cluster0 { 388*4882a593Smuzhiyun core0 { 389*4882a593Smuzhiyun cpu = <&cpu_l0>; 390*4882a593Smuzhiyun }; 391*4882a593Smuzhiyun core1 { 392*4882a593Smuzhiyun cpu = <&cpu_l1>; 393*4882a593Smuzhiyun }; 394*4882a593Smuzhiyun core2 { 395*4882a593Smuzhiyun cpu = <&cpu_l2>; 396*4882a593Smuzhiyun }; 397*4882a593Smuzhiyun core3 { 398*4882a593Smuzhiyun cpu = <&cpu_l3>; 399*4882a593Smuzhiyun }; 400*4882a593Smuzhiyun }; 401*4882a593Smuzhiyun cluster1 { 402*4882a593Smuzhiyun core0 { 403*4882a593Smuzhiyun cpu = <&cpu_b0>; 404*4882a593Smuzhiyun }; 405*4882a593Smuzhiyun core1 { 406*4882a593Smuzhiyun cpu = <&cpu_b1>; 407*4882a593Smuzhiyun }; 408*4882a593Smuzhiyun }; 409*4882a593Smuzhiyun cluster2 { 410*4882a593Smuzhiyun core0 { 411*4882a593Smuzhiyun cpu = <&cpu_b2>; 412*4882a593Smuzhiyun }; 413*4882a593Smuzhiyun core1 { 414*4882a593Smuzhiyun cpu = <&cpu_b3>; 415*4882a593Smuzhiyun }; 416*4882a593Smuzhiyun }; 417*4882a593Smuzhiyun }; 418*4882a593Smuzhiyun 419*4882a593Smuzhiyun cpu_l0: cpu@0 { 420*4882a593Smuzhiyun device_type = "cpu"; 421*4882a593Smuzhiyun compatible = "arm,cortex-a55"; 422*4882a593Smuzhiyun reg = <0x0>; 423*4882a593Smuzhiyun enable-method = "psci"; 424*4882a593Smuzhiyun capacity-dmips-mhz = <530>; 425*4882a593Smuzhiyun clocks = <&scmi_clk SCMI_CLK_CPUL>; 426*4882a593Smuzhiyun operating-points-v2 = <&cluster0_opp_table>; 427*4882a593Smuzhiyun cpu-idle-states = <&CPU_SLEEP>; 428*4882a593Smuzhiyun i-cache-size = <32768>; 429*4882a593Smuzhiyun i-cache-line-size = <64>; 430*4882a593Smuzhiyun i-cache-sets = <128>; 431*4882a593Smuzhiyun d-cache-size = <32768>; 432*4882a593Smuzhiyun d-cache-line-size = <64>; 433*4882a593Smuzhiyun d-cache-sets = <128>; 434*4882a593Smuzhiyun next-level-cache = <&l2_cache_l0>; 435*4882a593Smuzhiyun #cooling-cells = <2>; 436*4882a593Smuzhiyun dynamic-power-coefficient = <100>; 437*4882a593Smuzhiyun }; 438*4882a593Smuzhiyun 439*4882a593Smuzhiyun cpu_l1: cpu@100 { 440*4882a593Smuzhiyun device_type = "cpu"; 441*4882a593Smuzhiyun compatible = "arm,cortex-a55"; 442*4882a593Smuzhiyun reg = <0x100>; 443*4882a593Smuzhiyun enable-method = "psci"; 444*4882a593Smuzhiyun capacity-dmips-mhz = <530>; 445*4882a593Smuzhiyun clocks = <&scmi_clk SCMI_CLK_CPUL>; 446*4882a593Smuzhiyun operating-points-v2 = <&cluster0_opp_table>; 447*4882a593Smuzhiyun cpu-idle-states = <&CPU_SLEEP>; 448*4882a593Smuzhiyun i-cache-size = <32768>; 449*4882a593Smuzhiyun i-cache-line-size = <64>; 450*4882a593Smuzhiyun i-cache-sets = <128>; 451*4882a593Smuzhiyun d-cache-size = <32768>; 452*4882a593Smuzhiyun d-cache-line-size = <64>; 453*4882a593Smuzhiyun d-cache-sets = <128>; 454*4882a593Smuzhiyun next-level-cache = <&l2_cache_l1>; 455*4882a593Smuzhiyun }; 456*4882a593Smuzhiyun 457*4882a593Smuzhiyun cpu_l2: cpu@200 { 458*4882a593Smuzhiyun device_type = "cpu"; 459*4882a593Smuzhiyun compatible = "arm,cortex-a55"; 460*4882a593Smuzhiyun reg = <0x200>; 461*4882a593Smuzhiyun enable-method = "psci"; 462*4882a593Smuzhiyun capacity-dmips-mhz = <530>; 463*4882a593Smuzhiyun clocks = <&scmi_clk SCMI_CLK_CPUL>; 464*4882a593Smuzhiyun operating-points-v2 = <&cluster0_opp_table>; 465*4882a593Smuzhiyun cpu-idle-states = <&CPU_SLEEP>; 466*4882a593Smuzhiyun i-cache-size = <32768>; 467*4882a593Smuzhiyun i-cache-line-size = <64>; 468*4882a593Smuzhiyun i-cache-sets = <128>; 469*4882a593Smuzhiyun d-cache-size = <32768>; 470*4882a593Smuzhiyun d-cache-line-size = <64>; 471*4882a593Smuzhiyun d-cache-sets = <128>; 472*4882a593Smuzhiyun next-level-cache = <&l2_cache_l2>; 473*4882a593Smuzhiyun }; 474*4882a593Smuzhiyun 475*4882a593Smuzhiyun cpu_l3: cpu@300 { 476*4882a593Smuzhiyun device_type = "cpu"; 477*4882a593Smuzhiyun compatible = "arm,cortex-a55"; 478*4882a593Smuzhiyun reg = <0x300>; 479*4882a593Smuzhiyun enable-method = "psci"; 480*4882a593Smuzhiyun capacity-dmips-mhz = <530>; 481*4882a593Smuzhiyun clocks = <&scmi_clk SCMI_CLK_CPUL>; 482*4882a593Smuzhiyun operating-points-v2 = <&cluster0_opp_table>; 483*4882a593Smuzhiyun cpu-idle-states = <&CPU_SLEEP>; 484*4882a593Smuzhiyun i-cache-size = <32768>; 485*4882a593Smuzhiyun i-cache-line-size = <64>; 486*4882a593Smuzhiyun i-cache-sets = <128>; 487*4882a593Smuzhiyun d-cache-size = <32768>; 488*4882a593Smuzhiyun d-cache-line-size = <64>; 489*4882a593Smuzhiyun d-cache-sets = <128>; 490*4882a593Smuzhiyun next-level-cache = <&l2_cache_l3>; 491*4882a593Smuzhiyun }; 492*4882a593Smuzhiyun 493*4882a593Smuzhiyun cpu_b0: cpu@400 { 494*4882a593Smuzhiyun device_type = "cpu"; 495*4882a593Smuzhiyun compatible = "arm,cortex-a76"; 496*4882a593Smuzhiyun reg = <0x400>; 497*4882a593Smuzhiyun enable-method = "psci"; 498*4882a593Smuzhiyun capacity-dmips-mhz = <1024>; 499*4882a593Smuzhiyun clocks = <&scmi_clk SCMI_CLK_CPUB01>; 500*4882a593Smuzhiyun operating-points-v2 = <&cluster1_opp_table>; 501*4882a593Smuzhiyun cpu-idle-states = <&CPU_SLEEP>; 502*4882a593Smuzhiyun i-cache-size = <65536>; 503*4882a593Smuzhiyun i-cache-line-size = <64>; 504*4882a593Smuzhiyun i-cache-sets = <256>; 505*4882a593Smuzhiyun d-cache-size = <65536>; 506*4882a593Smuzhiyun d-cache-line-size = <64>; 507*4882a593Smuzhiyun d-cache-sets = <256>; 508*4882a593Smuzhiyun next-level-cache = <&l2_cache_b0>; 509*4882a593Smuzhiyun #cooling-cells = <2>; 510*4882a593Smuzhiyun dynamic-power-coefficient = <300>; 511*4882a593Smuzhiyun }; 512*4882a593Smuzhiyun 513*4882a593Smuzhiyun cpu_b1: cpu@500 { 514*4882a593Smuzhiyun device_type = "cpu"; 515*4882a593Smuzhiyun compatible = "arm,cortex-a76"; 516*4882a593Smuzhiyun reg = <0x500>; 517*4882a593Smuzhiyun enable-method = "psci"; 518*4882a593Smuzhiyun capacity-dmips-mhz = <1024>; 519*4882a593Smuzhiyun clocks = <&scmi_clk SCMI_CLK_CPUB01>; 520*4882a593Smuzhiyun operating-points-v2 = <&cluster1_opp_table>; 521*4882a593Smuzhiyun cpu-idle-states = <&CPU_SLEEP>; 522*4882a593Smuzhiyun i-cache-size = <65536>; 523*4882a593Smuzhiyun i-cache-line-size = <64>; 524*4882a593Smuzhiyun i-cache-sets = <256>; 525*4882a593Smuzhiyun d-cache-size = <65536>; 526*4882a593Smuzhiyun d-cache-line-size = <64>; 527*4882a593Smuzhiyun d-cache-sets = <256>; 528*4882a593Smuzhiyun next-level-cache = <&l2_cache_b1>; 529*4882a593Smuzhiyun }; 530*4882a593Smuzhiyun 531*4882a593Smuzhiyun cpu_b2: cpu@600 { 532*4882a593Smuzhiyun device_type = "cpu"; 533*4882a593Smuzhiyun compatible = "arm,cortex-a76"; 534*4882a593Smuzhiyun reg = <0x600>; 535*4882a593Smuzhiyun enable-method = "psci"; 536*4882a593Smuzhiyun capacity-dmips-mhz = <1024>; 537*4882a593Smuzhiyun clocks = <&scmi_clk SCMI_CLK_CPUB23>; 538*4882a593Smuzhiyun operating-points-v2 = <&cluster2_opp_table>; 539*4882a593Smuzhiyun cpu-idle-states = <&CPU_SLEEP>; 540*4882a593Smuzhiyun i-cache-size = <65536>; 541*4882a593Smuzhiyun i-cache-line-size = <64>; 542*4882a593Smuzhiyun i-cache-sets = <256>; 543*4882a593Smuzhiyun d-cache-size = <65536>; 544*4882a593Smuzhiyun d-cache-line-size = <64>; 545*4882a593Smuzhiyun d-cache-sets = <256>; 546*4882a593Smuzhiyun next-level-cache = <&l2_cache_b2>; 547*4882a593Smuzhiyun #cooling-cells = <2>; 548*4882a593Smuzhiyun dynamic-power-coefficient = <300>; 549*4882a593Smuzhiyun }; 550*4882a593Smuzhiyun 551*4882a593Smuzhiyun cpu_b3: cpu@700 { 552*4882a593Smuzhiyun device_type = "cpu"; 553*4882a593Smuzhiyun compatible = "arm,cortex-a76"; 554*4882a593Smuzhiyun reg = <0x700>; 555*4882a593Smuzhiyun enable-method = "psci"; 556*4882a593Smuzhiyun capacity-dmips-mhz = <1024>; 557*4882a593Smuzhiyun clocks = <&scmi_clk SCMI_CLK_CPUB23>; 558*4882a593Smuzhiyun operating-points-v2 = <&cluster2_opp_table>; 559*4882a593Smuzhiyun cpu-idle-states = <&CPU_SLEEP>; 560*4882a593Smuzhiyun i-cache-size = <65536>; 561*4882a593Smuzhiyun i-cache-line-size = <64>; 562*4882a593Smuzhiyun i-cache-sets = <256>; 563*4882a593Smuzhiyun d-cache-size = <65536>; 564*4882a593Smuzhiyun d-cache-line-size = <64>; 565*4882a593Smuzhiyun d-cache-sets = <256>; 566*4882a593Smuzhiyun next-level-cache = <&l2_cache_b3>; 567*4882a593Smuzhiyun }; 568*4882a593Smuzhiyun 569*4882a593Smuzhiyun idle-states { 570*4882a593Smuzhiyun entry-method = "psci"; 571*4882a593Smuzhiyun CPU_SLEEP: cpu-sleep { 572*4882a593Smuzhiyun compatible = "arm,idle-state"; 573*4882a593Smuzhiyun local-timer-stop; 574*4882a593Smuzhiyun arm,psci-suspend-param = <0x0010000>; 575*4882a593Smuzhiyun entry-latency-us = <100>; 576*4882a593Smuzhiyun exit-latency-us = <120>; 577*4882a593Smuzhiyun min-residency-us = <1000>; 578*4882a593Smuzhiyun }; 579*4882a593Smuzhiyun }; 580*4882a593Smuzhiyun 581*4882a593Smuzhiyun l2_cache_l0: l2-cache-l0 { 582*4882a593Smuzhiyun compatible = "cache"; 583*4882a593Smuzhiyun cache-size = <131072>; 584*4882a593Smuzhiyun cache-line-size = <64>; 585*4882a593Smuzhiyun cache-sets = <512>; 586*4882a593Smuzhiyun next-level-cache = <&l3_cache>; 587*4882a593Smuzhiyun }; 588*4882a593Smuzhiyun 589*4882a593Smuzhiyun l2_cache_l1: l2-cache-l1 { 590*4882a593Smuzhiyun compatible = "cache"; 591*4882a593Smuzhiyun cache-size = <131072>; 592*4882a593Smuzhiyun cache-line-size = <64>; 593*4882a593Smuzhiyun cache-sets = <512>; 594*4882a593Smuzhiyun next-level-cache = <&l3_cache>; 595*4882a593Smuzhiyun }; 596*4882a593Smuzhiyun 597*4882a593Smuzhiyun l2_cache_l2: l2-cache-l2 { 598*4882a593Smuzhiyun compatible = "cache"; 599*4882a593Smuzhiyun cache-size = <131072>; 600*4882a593Smuzhiyun cache-line-size = <64>; 601*4882a593Smuzhiyun cache-sets = <512>; 602*4882a593Smuzhiyun next-level-cache = <&l3_cache>; 603*4882a593Smuzhiyun }; 604*4882a593Smuzhiyun 605*4882a593Smuzhiyun l2_cache_l3: l2-cache-l3 { 606*4882a593Smuzhiyun compatible = "cache"; 607*4882a593Smuzhiyun cache-size = <131072>; 608*4882a593Smuzhiyun cache-line-size = <64>; 609*4882a593Smuzhiyun cache-sets = <512>; 610*4882a593Smuzhiyun next-level-cache = <&l3_cache>; 611*4882a593Smuzhiyun }; 612*4882a593Smuzhiyun 613*4882a593Smuzhiyun l2_cache_b0: l2-cache-b0 { 614*4882a593Smuzhiyun compatible = "cache"; 615*4882a593Smuzhiyun cache-size = <524288>; 616*4882a593Smuzhiyun cache-line-size = <64>; 617*4882a593Smuzhiyun cache-sets = <1024>; 618*4882a593Smuzhiyun next-level-cache = <&l3_cache>; 619*4882a593Smuzhiyun }; 620*4882a593Smuzhiyun 621*4882a593Smuzhiyun l2_cache_b1: l2-cache-b1 { 622*4882a593Smuzhiyun compatible = "cache"; 623*4882a593Smuzhiyun cache-size = <524288>; 624*4882a593Smuzhiyun cache-line-size = <64>; 625*4882a593Smuzhiyun cache-sets = <1024>; 626*4882a593Smuzhiyun next-level-cache = <&l3_cache>; 627*4882a593Smuzhiyun }; 628*4882a593Smuzhiyun 629*4882a593Smuzhiyun l2_cache_b2: l2-cache-b2 { 630*4882a593Smuzhiyun compatible = "cache"; 631*4882a593Smuzhiyun cache-size = <524288>; 632*4882a593Smuzhiyun cache-line-size = <64>; 633*4882a593Smuzhiyun cache-sets = <1024>; 634*4882a593Smuzhiyun next-level-cache = <&l3_cache>; 635*4882a593Smuzhiyun }; 636*4882a593Smuzhiyun 637*4882a593Smuzhiyun l2_cache_b3: l2-cache-b3 { 638*4882a593Smuzhiyun compatible = "cache"; 639*4882a593Smuzhiyun cache-size = <524288>; 640*4882a593Smuzhiyun cache-line-size = <64>; 641*4882a593Smuzhiyun cache-sets = <1024>; 642*4882a593Smuzhiyun next-level-cache = <&l3_cache>; 643*4882a593Smuzhiyun }; 644*4882a593Smuzhiyun 645*4882a593Smuzhiyun l3_cache: l3-cache { 646*4882a593Smuzhiyun compatible = "cache"; 647*4882a593Smuzhiyun cache-size = <3145728>; 648*4882a593Smuzhiyun cache-line-size = <64>; 649*4882a593Smuzhiyun cache-sets = <4096>; 650*4882a593Smuzhiyun }; 651*4882a593Smuzhiyun }; 652*4882a593Smuzhiyun 653*4882a593Smuzhiyun cluster0_opp_table: cluster0-opp-table { 654*4882a593Smuzhiyun compatible = "operating-points-v2"; 655*4882a593Smuzhiyun opp-shared; 656*4882a593Smuzhiyun 657*4882a593Smuzhiyun nvmem-cells = <&cpul_leakage>, <&cpul_opp_info>, <&specification_serial_number>; 658*4882a593Smuzhiyun nvmem-cell-names = "leakage", "opp-info", "specification_serial_number"; 659*4882a593Smuzhiyun rockchip,supported-hw; 660*4882a593Smuzhiyun rockchip,opp-shared-dsu; 661*4882a593Smuzhiyun 662*4882a593Smuzhiyun rockchip,pvtm-hw = <0x06>; 663*4882a593Smuzhiyun rockchip,pvtm-voltage-sel-hw = < 664*4882a593Smuzhiyun 0 1365 0 665*4882a593Smuzhiyun 1366 1387 1 666*4882a593Smuzhiyun 1388 1409 2 667*4882a593Smuzhiyun 1410 1431 3 668*4882a593Smuzhiyun 1432 1453 4 669*4882a593Smuzhiyun 1454 1475 5 670*4882a593Smuzhiyun 1476 9999 6 671*4882a593Smuzhiyun >; 672*4882a593Smuzhiyun rockchip,pvtm-voltage-sel = < 673*4882a593Smuzhiyun 0 1410 0 674*4882a593Smuzhiyun 1411 1434 1 675*4882a593Smuzhiyun 1435 1458 2 676*4882a593Smuzhiyun 1459 1482 3 677*4882a593Smuzhiyun 1483 1506 4 678*4882a593Smuzhiyun 1507 1530 5 679*4882a593Smuzhiyun 1531 9999 6 680*4882a593Smuzhiyun >; 681*4882a593Smuzhiyun rockchip,pvtm-pvtpll; 682*4882a593Smuzhiyun rockchip,pvtm-offset = <0x64>; 683*4882a593Smuzhiyun rockchip,pvtm-sample-time = <1100>; 684*4882a593Smuzhiyun rockchip,pvtm-freq = <1416000>; 685*4882a593Smuzhiyun rockchip,pvtm-volt = <750000>; 686*4882a593Smuzhiyun rockchip,pvtm-ref-temp = <25>; 687*4882a593Smuzhiyun rockchip,pvtm-temp-prop = <244 244>; 688*4882a593Smuzhiyun rockchip,pvtm-thermal-zone = "soc-thermal"; 689*4882a593Smuzhiyun 690*4882a593Smuzhiyun rockchip,grf = <&litcore_grf>; 691*4882a593Smuzhiyun rockchip,dsu-grf = <&dsu_grf>; 692*4882a593Smuzhiyun volt-mem-read-margin = < 693*4882a593Smuzhiyun 855000 1 694*4882a593Smuzhiyun 765000 2 695*4882a593Smuzhiyun 675000 3 696*4882a593Smuzhiyun 495000 4 697*4882a593Smuzhiyun >; 698*4882a593Smuzhiyun low-volt-mem-read-margin = <4>; 699*4882a593Smuzhiyun intermediate-threshold-freq = <1008000>; /* KHz */ 700*4882a593Smuzhiyun rockchip,reboot-freq = <1416000>; /* KHz */ 701*4882a593Smuzhiyun 702*4882a593Smuzhiyun rockchip,temp-hysteresis = <5000>; 703*4882a593Smuzhiyun rockchip,low-temp = <10000>; 704*4882a593Smuzhiyun rockchip,low-temp-min-volt = <750000>; 705*4882a593Smuzhiyun rockchip,high-temp = <85000>; 706*4882a593Smuzhiyun rockchip,high-temp-max-freq = <1608000>; 707*4882a593Smuzhiyun 708*4882a593Smuzhiyun /* RK3588 cluster0 OPPs */ 709*4882a593Smuzhiyun opp-408000000 { 710*4882a593Smuzhiyun opp-supported-hw = <0xf9 0xffff>; 711*4882a593Smuzhiyun opp-hz = /bits/ 64 <408000000>; 712*4882a593Smuzhiyun opp-microvolt = <675000 675000 950000>, 713*4882a593Smuzhiyun <675000 675000 950000>; 714*4882a593Smuzhiyun clock-latency-ns = <40000>; 715*4882a593Smuzhiyun }; 716*4882a593Smuzhiyun opp-600000000 { 717*4882a593Smuzhiyun opp-supported-hw = <0xf9 0xffff>; 718*4882a593Smuzhiyun opp-hz = /bits/ 64 <600000000>; 719*4882a593Smuzhiyun opp-microvolt = <675000 675000 950000>, 720*4882a593Smuzhiyun <675000 675000 950000>; 721*4882a593Smuzhiyun clock-latency-ns = <40000>; 722*4882a593Smuzhiyun }; 723*4882a593Smuzhiyun opp-816000000 { 724*4882a593Smuzhiyun opp-supported-hw = <0xf9 0xffff>; 725*4882a593Smuzhiyun opp-hz = /bits/ 64 <816000000>; 726*4882a593Smuzhiyun opp-microvolt = <675000 675000 950000>, 727*4882a593Smuzhiyun <675000 675000 950000>; 728*4882a593Smuzhiyun clock-latency-ns = <40000>; 729*4882a593Smuzhiyun }; 730*4882a593Smuzhiyun opp-1008000000 { 731*4882a593Smuzhiyun opp-supported-hw = <0xf9 0xffff>; 732*4882a593Smuzhiyun opp-hz = /bits/ 64 <1008000000>; 733*4882a593Smuzhiyun opp-microvolt = <675000 675000 950000>, 734*4882a593Smuzhiyun <675000 675000 950000>; 735*4882a593Smuzhiyun clock-latency-ns = <40000>; 736*4882a593Smuzhiyun }; 737*4882a593Smuzhiyun opp-1200000000 { 738*4882a593Smuzhiyun opp-supported-hw = <0xf9 0xffff>; 739*4882a593Smuzhiyun opp-hz = /bits/ 64 <1200000000>; 740*4882a593Smuzhiyun opp-microvolt = <712500 712500 950000>, 741*4882a593Smuzhiyun <712500 712500 950000>; 742*4882a593Smuzhiyun opp-microvolt-L1 = <700000 700000 950000>, 743*4882a593Smuzhiyun <700000 700000 950000>; 744*4882a593Smuzhiyun opp-microvolt-L2 = <700000 700000 950000>, 745*4882a593Smuzhiyun <700000 700000 950000>; 746*4882a593Smuzhiyun opp-microvolt-L3 = <687500 687500 950000>, 747*4882a593Smuzhiyun <687500 687500 950000>; 748*4882a593Smuzhiyun opp-microvolt-L4 = <675000 675000 950000>, 749*4882a593Smuzhiyun <675000 675000 950000>; 750*4882a593Smuzhiyun opp-microvolt-L5 = <675000 675000 950000>, 751*4882a593Smuzhiyun <675000 675000 950000>; 752*4882a593Smuzhiyun opp-microvolt-L6 = <675000 675000 950000>, 753*4882a593Smuzhiyun <675000 675000 950000>; 754*4882a593Smuzhiyun clock-latency-ns = <40000>; 755*4882a593Smuzhiyun }; 756*4882a593Smuzhiyun opp-1416000000 { 757*4882a593Smuzhiyun opp-supported-hw = <0xf9 0xffff>; 758*4882a593Smuzhiyun opp-hz = /bits/ 64 <1416000000>; 759*4882a593Smuzhiyun opp-microvolt = <762500 762500 950000>, 760*4882a593Smuzhiyun <762500 762500 950000>; 761*4882a593Smuzhiyun opp-microvolt-L1 = <750000 750000 950000>, 762*4882a593Smuzhiyun <750000 750000 950000>; 763*4882a593Smuzhiyun opp-microvolt-L2 = <737500 737500 950000>, 764*4882a593Smuzhiyun <737500 737500 950000>; 765*4882a593Smuzhiyun opp-microvolt-L3 = <725000 725000 950000>, 766*4882a593Smuzhiyun <725000 725000 950000>; 767*4882a593Smuzhiyun opp-microvolt-L4 = <725000 725000 950000>, 768*4882a593Smuzhiyun <725000 725000 950000>; 769*4882a593Smuzhiyun opp-microvolt-L5 = <712500 712500 950000>, 770*4882a593Smuzhiyun <712500 712500 950000>; 771*4882a593Smuzhiyun opp-microvolt-L6 = <712500 712500 950000>, 772*4882a593Smuzhiyun <712500 712500 950000>; 773*4882a593Smuzhiyun clock-latency-ns = <40000>; 774*4882a593Smuzhiyun opp-suspend; 775*4882a593Smuzhiyun }; 776*4882a593Smuzhiyun opp-1608000000 { 777*4882a593Smuzhiyun opp-supported-hw = <0xf9 0xffff>; 778*4882a593Smuzhiyun opp-hz = /bits/ 64 <1608000000>; 779*4882a593Smuzhiyun opp-microvolt = <850000 850000 950000>, 780*4882a593Smuzhiyun <850000 850000 950000>; 781*4882a593Smuzhiyun opp-microvolt-L1 = <837500 837500 950000>, 782*4882a593Smuzhiyun <837500 837500 950000>; 783*4882a593Smuzhiyun opp-microvolt-L2 = <825000 825000 950000>, 784*4882a593Smuzhiyun <825000 825000 950000>; 785*4882a593Smuzhiyun opp-microvolt-L3 = <812500 812500 950000>, 786*4882a593Smuzhiyun <812500 812500 950000>; 787*4882a593Smuzhiyun opp-microvolt-L4 = <800000 800000 950000>, 788*4882a593Smuzhiyun <800000 800000 950000>; 789*4882a593Smuzhiyun opp-microvolt-L5 = <800000 800000 950000>, 790*4882a593Smuzhiyun <800000 800000 950000>; 791*4882a593Smuzhiyun opp-microvolt-L6 = <787500 787500 950000>, 792*4882a593Smuzhiyun <787500 787500 950000>; 793*4882a593Smuzhiyun clock-latency-ns = <40000>; 794*4882a593Smuzhiyun }; 795*4882a593Smuzhiyun opp-1800000000 { 796*4882a593Smuzhiyun opp-supported-hw = <0xf9 0xffff>; 797*4882a593Smuzhiyun opp-hz = /bits/ 64 <1800000000>; 798*4882a593Smuzhiyun opp-microvolt = <950000 950000 950000>, 799*4882a593Smuzhiyun <950000 950000 950000>; 800*4882a593Smuzhiyun opp-microvolt-L1 = <937500 937500 950000>, 801*4882a593Smuzhiyun <937500 937500 950000>; 802*4882a593Smuzhiyun opp-microvolt-L2 = <925000 925000 950000>, 803*4882a593Smuzhiyun <925000 925000 950000>; 804*4882a593Smuzhiyun opp-microvolt-L3 = <912500 912500 950000>, 805*4882a593Smuzhiyun <912500 912500 950000>; 806*4882a593Smuzhiyun opp-microvolt-L4 = <900000 900000 950000>, 807*4882a593Smuzhiyun <900000 900000 950000>; 808*4882a593Smuzhiyun opp-microvolt-L5 = <887500 887500 950000>, 809*4882a593Smuzhiyun <887500 887500 950000>; 810*4882a593Smuzhiyun opp-microvolt-L6 = <875000 875000 950000>, 811*4882a593Smuzhiyun <875000 875000 950000>; 812*4882a593Smuzhiyun clock-latency-ns = <40000>; 813*4882a593Smuzhiyun }; 814*4882a593Smuzhiyun 815*4882a593Smuzhiyun /* RK3588J/M cluster0 OPPs */ 816*4882a593Smuzhiyun opp-j-m-408000000 { 817*4882a593Smuzhiyun opp-supported-hw = <0x06 0xffff>; 818*4882a593Smuzhiyun opp-hz = /bits/ 64 <408000000>; 819*4882a593Smuzhiyun opp-microvolt = <750000 750000 950000>, 820*4882a593Smuzhiyun <750000 750000 950000>; 821*4882a593Smuzhiyun clock-latency-ns = <40000>; 822*4882a593Smuzhiyun }; 823*4882a593Smuzhiyun opp-j-m-600000000 { 824*4882a593Smuzhiyun opp-supported-hw = <0x06 0xffff>; 825*4882a593Smuzhiyun opp-hz = /bits/ 64 <600000000>; 826*4882a593Smuzhiyun opp-microvolt = <750000 750000 950000>, 827*4882a593Smuzhiyun <750000 750000 950000>; 828*4882a593Smuzhiyun clock-latency-ns = <40000>; 829*4882a593Smuzhiyun }; 830*4882a593Smuzhiyun opp-j-m-816000000 { 831*4882a593Smuzhiyun opp-supported-hw = <0x06 0xffff>; 832*4882a593Smuzhiyun opp-hz = /bits/ 64 <816000000>; 833*4882a593Smuzhiyun opp-microvolt = <750000 750000 950000>, 834*4882a593Smuzhiyun <750000 750000 950000>; 835*4882a593Smuzhiyun clock-latency-ns = <40000>; 836*4882a593Smuzhiyun }; 837*4882a593Smuzhiyun opp-j-m-1008000000 { 838*4882a593Smuzhiyun opp-supported-hw = <0x06 0xffff>; 839*4882a593Smuzhiyun opp-hz = /bits/ 64 <1008000000>; 840*4882a593Smuzhiyun opp-microvolt = <750000 750000 950000>, 841*4882a593Smuzhiyun <750000 750000 950000>; 842*4882a593Smuzhiyun clock-latency-ns = <40000>; 843*4882a593Smuzhiyun }; 844*4882a593Smuzhiyun opp-j-m-1200000000 { 845*4882a593Smuzhiyun opp-supported-hw = <0x06 0xffff>; 846*4882a593Smuzhiyun opp-hz = /bits/ 64 <1200000000>; 847*4882a593Smuzhiyun opp-microvolt = <750000 750000 950000>, 848*4882a593Smuzhiyun <750000 750000 950000>; 849*4882a593Smuzhiyun clock-latency-ns = <40000>; 850*4882a593Smuzhiyun }; 851*4882a593Smuzhiyun opp-j-1296000000 { 852*4882a593Smuzhiyun opp-supported-hw = <0x04 0xffff>; 853*4882a593Smuzhiyun opp-hz = /bits/ 64 <1296000000>; 854*4882a593Smuzhiyun opp-microvolt = <750000 750000 950000>, 855*4882a593Smuzhiyun <750000 750000 950000>; 856*4882a593Smuzhiyun opp-microvolt-L0 = <775000 775000 950000>, 857*4882a593Smuzhiyun <775000 775000 950000>; 858*4882a593Smuzhiyun opp-microvolt-L1 = <762500 762500 950000>, 859*4882a593Smuzhiyun <762500 762500 950000>; 860*4882a593Smuzhiyun clock-latency-ns = <40000>; 861*4882a593Smuzhiyun }; 862*4882a593Smuzhiyun opp-j-m-1416000000 { 863*4882a593Smuzhiyun opp-supported-hw = <0x06 0xffff>; 864*4882a593Smuzhiyun opp-hz = /bits/ 64 <1416000000>; 865*4882a593Smuzhiyun opp-microvolt = <750000 750000 950000>, 866*4882a593Smuzhiyun <750000 750000 950000>; 867*4882a593Smuzhiyun opp-microvolt-L0 = <787500 787500 950000>, 868*4882a593Smuzhiyun <787500 787500 950000>; 869*4882a593Smuzhiyun opp-microvolt-L1 = <775000 775000 950000>, 870*4882a593Smuzhiyun <775000 775000 950000>; 871*4882a593Smuzhiyun opp-microvolt-L2 = <762500 762500 950000>, 872*4882a593Smuzhiyun <762500 762500 950000>; 873*4882a593Smuzhiyun clock-latency-ns = <40000>; 874*4882a593Smuzhiyun opp-suspend; 875*4882a593Smuzhiyun }; 876*4882a593Smuzhiyun opp-j-m-1608000000 { 877*4882a593Smuzhiyun opp-supported-hw = <0x06 0xffff>; 878*4882a593Smuzhiyun opp-hz = /bits/ 64 <1608000000>; 879*4882a593Smuzhiyun opp-microvolt = <887500 887500 950000>, 880*4882a593Smuzhiyun <887500 887500 950000>; 881*4882a593Smuzhiyun opp-microvolt-L1 = <875000 875000 950000>, 882*4882a593Smuzhiyun <875000 875000 950000>; 883*4882a593Smuzhiyun opp-microvolt-L2 = <862500 862500 950000>, 884*4882a593Smuzhiyun <862500 862500 950000>; 885*4882a593Smuzhiyun opp-microvolt-L3 = <850000 850000 950000>, 886*4882a593Smuzhiyun <850000 850000 950000>; 887*4882a593Smuzhiyun opp-microvolt-L4 = <837500 837500 950000>, 888*4882a593Smuzhiyun <837500 837500 950000>; 889*4882a593Smuzhiyun opp-microvolt-L5 = <825000 825000 950000>, 890*4882a593Smuzhiyun <825000 825000 950000>; 891*4882a593Smuzhiyun opp-microvolt-L6 = <812500 812500 950000>, 892*4882a593Smuzhiyun <812500 812500 950000>; 893*4882a593Smuzhiyun clock-latency-ns = <40000>; 894*4882a593Smuzhiyun }; 895*4882a593Smuzhiyun opp-j-m-1704000000 { 896*4882a593Smuzhiyun opp-supported-hw = <0x06 0xffff>; 897*4882a593Smuzhiyun opp-hz = /bits/ 64 <1704000000>; 898*4882a593Smuzhiyun opp-microvolt = <937500 937500 950000>, 899*4882a593Smuzhiyun <937500 937500 950000>; 900*4882a593Smuzhiyun opp-microvolt-L1 = <925000 925000 950000>, 901*4882a593Smuzhiyun <925000 925000 950000>; 902*4882a593Smuzhiyun opp-microvolt-L2 = <912500 912500 950000>, 903*4882a593Smuzhiyun <912500 912500 950000>; 904*4882a593Smuzhiyun opp-microvolt-L3 = <900000 900000 950000>, 905*4882a593Smuzhiyun <900000 900000 950000>; 906*4882a593Smuzhiyun opp-microvolt-L4 = <887500 887500 950000>, 907*4882a593Smuzhiyun <887500 887500 950000>; 908*4882a593Smuzhiyun opp-microvolt-L5 = <875000 875000 950000>, 909*4882a593Smuzhiyun <875000 875000 950000>; 910*4882a593Smuzhiyun opp-microvolt-L6 = <862500 862500 950000>, 911*4882a593Smuzhiyun <862500 862500 950000>; 912*4882a593Smuzhiyun clock-latency-ns = <40000>; 913*4882a593Smuzhiyun }; 914*4882a593Smuzhiyun }; 915*4882a593Smuzhiyun 916*4882a593Smuzhiyun cluster1_opp_table: cluster1-opp-table { 917*4882a593Smuzhiyun compatible = "operating-points-v2"; 918*4882a593Smuzhiyun opp-shared; 919*4882a593Smuzhiyun 920*4882a593Smuzhiyun nvmem-cells = <&cpub0_leakage>, <&cpub01_opp_info>, <&specification_serial_number>; 921*4882a593Smuzhiyun nvmem-cell-names = "leakage", "opp-info", "specification_serial_number"; 922*4882a593Smuzhiyun rockchip,supported-hw; 923*4882a593Smuzhiyun 924*4882a593Smuzhiyun rockchip,pvtm-hw = <0x06>; 925*4882a593Smuzhiyun rockchip,pvtm-voltage-sel-hw = < 926*4882a593Smuzhiyun 0 1539 0 927*4882a593Smuzhiyun 1540 1564 1 928*4882a593Smuzhiyun 1565 1589 2 929*4882a593Smuzhiyun 1590 1614 3 930*4882a593Smuzhiyun 1615 1644 4 931*4882a593Smuzhiyun 1645 1674 5 932*4882a593Smuzhiyun 1675 1704 6 933*4882a593Smuzhiyun 1705 9999 7 934*4882a593Smuzhiyun >; 935*4882a593Smuzhiyun rockchip,pvtm-voltage-sel = < 936*4882a593Smuzhiyun 0 1595 0 937*4882a593Smuzhiyun 1596 1615 1 938*4882a593Smuzhiyun 1616 1640 2 939*4882a593Smuzhiyun 1641 1675 3 940*4882a593Smuzhiyun 1676 1710 4 941*4882a593Smuzhiyun 1711 1743 5 942*4882a593Smuzhiyun 1744 1776 6 943*4882a593Smuzhiyun 1777 9999 7 944*4882a593Smuzhiyun >; 945*4882a593Smuzhiyun rockchip,pvtm-pvtpll; 946*4882a593Smuzhiyun rockchip,pvtm-offset = <0x18>; 947*4882a593Smuzhiyun rockchip,pvtm-sample-time = <1100>; 948*4882a593Smuzhiyun rockchip,pvtm-freq = <1608000>; 949*4882a593Smuzhiyun rockchip,pvtm-volt = <750000>; 950*4882a593Smuzhiyun rockchip,pvtm-ref-temp = <25>; 951*4882a593Smuzhiyun rockchip,pvtm-temp-prop = <270 270>; 952*4882a593Smuzhiyun rockchip,pvtm-thermal-zone = "soc-thermal"; 953*4882a593Smuzhiyun rockchip,pvtm-low-len-sel = <3>; 954*4882a593Smuzhiyun 955*4882a593Smuzhiyun rockchip,grf = <&bigcore0_grf>; 956*4882a593Smuzhiyun volt-mem-read-margin = < 957*4882a593Smuzhiyun 855000 1 958*4882a593Smuzhiyun 765000 2 959*4882a593Smuzhiyun 675000 3 960*4882a593Smuzhiyun 495000 4 961*4882a593Smuzhiyun >; 962*4882a593Smuzhiyun low-volt-mem-read-margin = <4>; 963*4882a593Smuzhiyun intermediate-threshold-freq = <1008000>; /* KHz */ 964*4882a593Smuzhiyun rockchip,idle-threshold-freq = <2208000>; /* KHz */ 965*4882a593Smuzhiyun rockchip,reboot-freq = <1800000>; /* KHz */ 966*4882a593Smuzhiyun 967*4882a593Smuzhiyun rockchip,temp-hysteresis = <5000>; 968*4882a593Smuzhiyun rockchip,low-temp = <10000>; 969*4882a593Smuzhiyun rockchip,low-temp-min-volt = <750000>; 970*4882a593Smuzhiyun rockchip,high-temp = <85000>; 971*4882a593Smuzhiyun rockchip,high-temp-max-freq = <2208000>; 972*4882a593Smuzhiyun 973*4882a593Smuzhiyun /* RK3588 cluster1 OPPs */ 974*4882a593Smuzhiyun opp-408000000 { 975*4882a593Smuzhiyun opp-supported-hw = <0xf9 0xffff>; 976*4882a593Smuzhiyun opp-hz = /bits/ 64 <408000000>; 977*4882a593Smuzhiyun opp-microvolt = <675000 675000 1000000>, 978*4882a593Smuzhiyun <675000 675000 1000000>; 979*4882a593Smuzhiyun clock-latency-ns = <40000>; 980*4882a593Smuzhiyun opp-suspend; 981*4882a593Smuzhiyun }; 982*4882a593Smuzhiyun opp-600000000 { 983*4882a593Smuzhiyun opp-supported-hw = <0xf9 0xffff>; 984*4882a593Smuzhiyun opp-hz = /bits/ 64 <600000000>; 985*4882a593Smuzhiyun opp-microvolt = <675000 675000 1000000>, 986*4882a593Smuzhiyun <675000 675000 1000000>; 987*4882a593Smuzhiyun clock-latency-ns = <40000>; 988*4882a593Smuzhiyun }; 989*4882a593Smuzhiyun opp-816000000 { 990*4882a593Smuzhiyun opp-supported-hw = <0xf9 0xffff>; 991*4882a593Smuzhiyun opp-hz = /bits/ 64 <816000000>; 992*4882a593Smuzhiyun opp-microvolt = <675000 675000 1000000>, 993*4882a593Smuzhiyun <675000 675000 1000000>; 994*4882a593Smuzhiyun clock-latency-ns = <40000>; 995*4882a593Smuzhiyun }; 996*4882a593Smuzhiyun opp-1008000000 { 997*4882a593Smuzhiyun opp-supported-hw = <0xf9 0xffff>; 998*4882a593Smuzhiyun opp-hz = /bits/ 64 <1008000000>; 999*4882a593Smuzhiyun opp-microvolt = <675000 675000 1000000>, 1000*4882a593Smuzhiyun <675000 675000 1000000>; 1001*4882a593Smuzhiyun clock-latency-ns = <40000>; 1002*4882a593Smuzhiyun }; 1003*4882a593Smuzhiyun opp-1200000000 { 1004*4882a593Smuzhiyun opp-supported-hw = <0xf9 0xffff>; 1005*4882a593Smuzhiyun opp-hz = /bits/ 64 <1200000000>; 1006*4882a593Smuzhiyun opp-microvolt = <675000 675000 1000000>, 1007*4882a593Smuzhiyun <675000 675000 1000000>; 1008*4882a593Smuzhiyun clock-latency-ns = <40000>; 1009*4882a593Smuzhiyun }; 1010*4882a593Smuzhiyun opp-1416000000 { 1011*4882a593Smuzhiyun opp-supported-hw = <0xf9 0xffff>; 1012*4882a593Smuzhiyun opp-hz = /bits/ 64 <1416000000>; 1013*4882a593Smuzhiyun opp-microvolt = <725000 725000 1000000>, 1014*4882a593Smuzhiyun <725000 725000 1000000>; 1015*4882a593Smuzhiyun opp-microvolt-L2 = <712500 712500 1000000>, 1016*4882a593Smuzhiyun <712500 712500 1000000>; 1017*4882a593Smuzhiyun opp-microvolt-L3 = <700000 700000 1000000>, 1018*4882a593Smuzhiyun <700000 700000 1000000>; 1019*4882a593Smuzhiyun opp-microvolt-L4 = <700000 700000 1000000>, 1020*4882a593Smuzhiyun <700000 700000 1000000>; 1021*4882a593Smuzhiyun opp-microvolt-L5 = <687500 687500 1000000>, 1022*4882a593Smuzhiyun <687500 687500 1000000>; 1023*4882a593Smuzhiyun opp-microvolt-L6 = <675000 675000 1000000>, 1024*4882a593Smuzhiyun <675000 675000 1000000>; 1025*4882a593Smuzhiyun opp-microvolt-L7 = <675000 675000 1000000>, 1026*4882a593Smuzhiyun <675000 675000 1000000>; 1027*4882a593Smuzhiyun clock-latency-ns = <40000>; 1028*4882a593Smuzhiyun }; 1029*4882a593Smuzhiyun opp-1608000000 { 1030*4882a593Smuzhiyun opp-supported-hw = <0xf9 0xffff>; 1031*4882a593Smuzhiyun opp-hz = /bits/ 64 <1608000000>; 1032*4882a593Smuzhiyun opp-microvolt = <762500 762500 1000000>, 1033*4882a593Smuzhiyun <762500 762500 1000000>; 1034*4882a593Smuzhiyun opp-microvolt-L2 = <750000 750000 1000000>, 1035*4882a593Smuzhiyun <750000 750000 1000000>; 1036*4882a593Smuzhiyun opp-microvolt-L3 = <737500 737500 1000000>, 1037*4882a593Smuzhiyun <737500 737500 1000000>; 1038*4882a593Smuzhiyun opp-microvolt-L4 = <725000 725000 1000000>, 1039*4882a593Smuzhiyun <725000 725000 1000000>; 1040*4882a593Smuzhiyun opp-microvolt-L5 = <712500 712500 1000000>, 1041*4882a593Smuzhiyun <712500 712500 1000000>; 1042*4882a593Smuzhiyun opp-microvolt-L6 = <700000 700000 1000000>, 1043*4882a593Smuzhiyun <700000 700000 1000000>; 1044*4882a593Smuzhiyun opp-microvolt-L7 = <700000 700000 1000000>, 1045*4882a593Smuzhiyun <700000 700000 1000000>; 1046*4882a593Smuzhiyun clock-latency-ns = <40000>; 1047*4882a593Smuzhiyun }; 1048*4882a593Smuzhiyun opp-1800000000 { 1049*4882a593Smuzhiyun opp-supported-hw = <0xf9 0xffff>; 1050*4882a593Smuzhiyun opp-hz = /bits/ 64 <1800000000>; 1051*4882a593Smuzhiyun opp-microvolt = <850000 850000 1000000>, 1052*4882a593Smuzhiyun <850000 850000 1000000>; 1053*4882a593Smuzhiyun opp-microvolt-L1 = <837500 837500 1000000>, 1054*4882a593Smuzhiyun <837500 837500 1000000>; 1055*4882a593Smuzhiyun opp-microvolt-L2 = <825000 825000 1000000>, 1056*4882a593Smuzhiyun <825000 825000 1000000>; 1057*4882a593Smuzhiyun opp-microvolt-L3 = <812500 812500 1000000>, 1058*4882a593Smuzhiyun <812500 812500 1000000>; 1059*4882a593Smuzhiyun opp-microvolt-L4 = <800000 800000 1000000>, 1060*4882a593Smuzhiyun <800000 800000 1000000>; 1061*4882a593Smuzhiyun opp-microvolt-L5 = <787500 787500 1000000>, 1062*4882a593Smuzhiyun <787500 787500 1000000>; 1063*4882a593Smuzhiyun opp-microvolt-L6 = <775000 775000 1000000>, 1064*4882a593Smuzhiyun <775000 775000 1000000>; 1065*4882a593Smuzhiyun opp-microvolt-L7 = <762500 762500 1000000>, 1066*4882a593Smuzhiyun <762500 762500 1000000>; 1067*4882a593Smuzhiyun clock-latency-ns = <40000>; 1068*4882a593Smuzhiyun }; 1069*4882a593Smuzhiyun opp-2016000000 { 1070*4882a593Smuzhiyun opp-supported-hw = <0xf9 0xffff>; 1071*4882a593Smuzhiyun opp-hz = /bits/ 64 <2016000000>; 1072*4882a593Smuzhiyun opp-microvolt = <925000 925000 1000000>, 1073*4882a593Smuzhiyun <925000 925000 1000000>; 1074*4882a593Smuzhiyun opp-microvolt-L1 = <912500 912500 1000000>, 1075*4882a593Smuzhiyun <912500 912500 1000000>; 1076*4882a593Smuzhiyun opp-microvolt-L2 = <900000 900000 1000000>, 1077*4882a593Smuzhiyun <900000 900000 1000000>; 1078*4882a593Smuzhiyun opp-microvolt-L3 = <887500 887500 1000000>, 1079*4882a593Smuzhiyun <887500 887500 1000000>; 1080*4882a593Smuzhiyun opp-microvolt-L4 = <875000 875000 1000000>, 1081*4882a593Smuzhiyun <875000 875000 1000000>; 1082*4882a593Smuzhiyun opp-microvolt-L5 = <862500 862500 1000000>, 1083*4882a593Smuzhiyun <862500 862500 1000000>; 1084*4882a593Smuzhiyun opp-microvolt-L6 = <850000 850000 1000000>, 1085*4882a593Smuzhiyun <850000 850000 1000000>; 1086*4882a593Smuzhiyun opp-microvolt-L7 = <837500 837500 1000000>, 1087*4882a593Smuzhiyun <837500 837500 1000000>; 1088*4882a593Smuzhiyun clock-latency-ns = <40000>; 1089*4882a593Smuzhiyun }; 1090*4882a593Smuzhiyun opp-2208000000 { 1091*4882a593Smuzhiyun opp-supported-hw = <0xf9 0xffff>; 1092*4882a593Smuzhiyun opp-hz = /bits/ 64 <2208000000>; 1093*4882a593Smuzhiyun opp-microvolt = <987500 987500 1000000>, 1094*4882a593Smuzhiyun <987500 987500 1000000>; 1095*4882a593Smuzhiyun opp-microvolt-L1 = <975000 975000 1000000>, 1096*4882a593Smuzhiyun <975000 975000 1000000>; 1097*4882a593Smuzhiyun opp-microvolt-L2 = <962500 962500 1000000>, 1098*4882a593Smuzhiyun <962500 962500 1000000>; 1099*4882a593Smuzhiyun opp-microvolt-L3 = <950000 950000 1000000>, 1100*4882a593Smuzhiyun <950000 950000 1000000>; 1101*4882a593Smuzhiyun opp-microvolt-L4 = <962500 962500 1000000>, 1102*4882a593Smuzhiyun <962500 962500 1000000>; 1103*4882a593Smuzhiyun opp-microvolt-L5 = <950000 950000 1000000>, 1104*4882a593Smuzhiyun <950000 950000 1000000>; 1105*4882a593Smuzhiyun opp-microvolt-L6 = <925000 925000 1000000>, 1106*4882a593Smuzhiyun <925000 925000 1000000>; 1107*4882a593Smuzhiyun opp-microvolt-L7 = <912500 912500 1000000>, 1108*4882a593Smuzhiyun <912500 912500 1000000>; 1109*4882a593Smuzhiyun clock-latency-ns = <40000>; 1110*4882a593Smuzhiyun }; 1111*4882a593Smuzhiyun opp-2256000000 { 1112*4882a593Smuzhiyun opp-supported-hw = <0xf9 0x13>; 1113*4882a593Smuzhiyun opp-hz = /bits/ 64 <2256000000>; 1114*4882a593Smuzhiyun opp-microvolt = <1000000 1000000 1000000>, 1115*4882a593Smuzhiyun <1000000 1000000 1000000>; 1116*4882a593Smuzhiyun clock-latency-ns = <40000>; 1117*4882a593Smuzhiyun }; 1118*4882a593Smuzhiyun opp-2304000000 { 1119*4882a593Smuzhiyun opp-supported-hw = <0xf9 0x24>; 1120*4882a593Smuzhiyun opp-hz = /bits/ 64 <2304000000>; 1121*4882a593Smuzhiyun opp-microvolt = <1000000 1000000 1000000>, 1122*4882a593Smuzhiyun <1000000 1000000 1000000>; 1123*4882a593Smuzhiyun clock-latency-ns = <40000>; 1124*4882a593Smuzhiyun }; 1125*4882a593Smuzhiyun opp-2352000000 { 1126*4882a593Smuzhiyun opp-supported-hw = <0xf9 0x48>; 1127*4882a593Smuzhiyun opp-hz = /bits/ 64 <2352000000>; 1128*4882a593Smuzhiyun opp-microvolt = <1000000 1000000 1000000>, 1129*4882a593Smuzhiyun <1000000 1000000 1000000>; 1130*4882a593Smuzhiyun clock-latency-ns = <40000>; 1131*4882a593Smuzhiyun }; 1132*4882a593Smuzhiyun opp-2400000000 { 1133*4882a593Smuzhiyun opp-supported-hw = <0xf9 0x80>; 1134*4882a593Smuzhiyun opp-hz = /bits/ 64 <2400000000>; 1135*4882a593Smuzhiyun opp-microvolt = <1000000 1000000 1000000>, 1136*4882a593Smuzhiyun <1000000 1000000 1000000>; 1137*4882a593Smuzhiyun clock-latency-ns = <40000>; 1138*4882a593Smuzhiyun }; 1139*4882a593Smuzhiyun 1140*4882a593Smuzhiyun /* RK3588J/M cluster1 OPPs */ 1141*4882a593Smuzhiyun opp-j-m-408000000 { 1142*4882a593Smuzhiyun opp-supported-hw = <0x06 0xffff>; 1143*4882a593Smuzhiyun opp-hz = /bits/ 64 <408000000>; 1144*4882a593Smuzhiyun opp-microvolt = <750000 750000 950000>, 1145*4882a593Smuzhiyun <750000 750000 950000>; 1146*4882a593Smuzhiyun clock-latency-ns = <40000>; 1147*4882a593Smuzhiyun }; 1148*4882a593Smuzhiyun opp-j-m-600000000 { 1149*4882a593Smuzhiyun opp-supported-hw = <0x06 0xffff>; 1150*4882a593Smuzhiyun opp-hz = /bits/ 64 <600000000>; 1151*4882a593Smuzhiyun opp-microvolt = <750000 750000 950000>, 1152*4882a593Smuzhiyun <750000 750000 950000>; 1153*4882a593Smuzhiyun clock-latency-ns = <40000>; 1154*4882a593Smuzhiyun }; 1155*4882a593Smuzhiyun opp-j-m-816000000 { 1156*4882a593Smuzhiyun opp-supported-hw = <0x06 0xffff>; 1157*4882a593Smuzhiyun opp-hz = /bits/ 64 <816000000>; 1158*4882a593Smuzhiyun opp-microvolt = <750000 750000 950000>, 1159*4882a593Smuzhiyun <750000 750000 950000>; 1160*4882a593Smuzhiyun clock-latency-ns = <40000>; 1161*4882a593Smuzhiyun }; 1162*4882a593Smuzhiyun opp-j-m-1008000000 { 1163*4882a593Smuzhiyun opp-supported-hw = <0x06 0xffff>; 1164*4882a593Smuzhiyun opp-hz = /bits/ 64 <1008000000>; 1165*4882a593Smuzhiyun opp-microvolt = <750000 750000 950000>, 1166*4882a593Smuzhiyun <750000 750000 950000>; 1167*4882a593Smuzhiyun clock-latency-ns = <40000>; 1168*4882a593Smuzhiyun }; 1169*4882a593Smuzhiyun opp-j-m-1200000000 { 1170*4882a593Smuzhiyun opp-supported-hw = <0x06 0xffff>; 1171*4882a593Smuzhiyun opp-hz = /bits/ 64 <1200000000>; 1172*4882a593Smuzhiyun opp-microvolt = <750000 750000 950000>, 1173*4882a593Smuzhiyun <750000 750000 950000>; 1174*4882a593Smuzhiyun clock-latency-ns = <40000>; 1175*4882a593Smuzhiyun }; 1176*4882a593Smuzhiyun opp-j-m-1416000000 { 1177*4882a593Smuzhiyun opp-supported-hw = <0x06 0xffff>; 1178*4882a593Smuzhiyun opp-hz = /bits/ 64 <1416000000>; 1179*4882a593Smuzhiyun opp-microvolt = <750000 750000 950000>, 1180*4882a593Smuzhiyun <750000 750000 950000>; 1181*4882a593Smuzhiyun opp-microvolt-L0 = <762500 762500 950000>, 1182*4882a593Smuzhiyun <762500 762500 950000>; 1183*4882a593Smuzhiyun clock-latency-ns = <40000>; 1184*4882a593Smuzhiyun opp-suspend; 1185*4882a593Smuzhiyun }; 1186*4882a593Smuzhiyun opp-j-m-1608000000 { 1187*4882a593Smuzhiyun opp-supported-hw = <0x06 0xffff>; 1188*4882a593Smuzhiyun opp-hz = /bits/ 64 <1608000000>; 1189*4882a593Smuzhiyun opp-microvolt = <787500 787500 950000>, 1190*4882a593Smuzhiyun <787500 787500 950000>; 1191*4882a593Smuzhiyun opp-microvolt-L2 = <775000 775000 950000>, 1192*4882a593Smuzhiyun <775000 775000 950000>; 1193*4882a593Smuzhiyun opp-microvolt-L3 = <762500 762500 950000>, 1194*4882a593Smuzhiyun <762500 762500 950000>; 1195*4882a593Smuzhiyun opp-microvolt-L4 = <750000 750000 950000>, 1196*4882a593Smuzhiyun <750000 750000 950000>; 1197*4882a593Smuzhiyun opp-microvolt-L5 = <750000 750000 950000>, 1198*4882a593Smuzhiyun <750000 750000 950000>; 1199*4882a593Smuzhiyun opp-microvolt-L6 = <750000 750000 950000>, 1200*4882a593Smuzhiyun <750000 750000 950000>; 1201*4882a593Smuzhiyun opp-microvolt-L7 = <750000 750000 950000>, 1202*4882a593Smuzhiyun <750000 750000 950000>; 1203*4882a593Smuzhiyun clock-latency-ns = <40000>; 1204*4882a593Smuzhiyun }; 1205*4882a593Smuzhiyun opp-j-m-1800000000 { 1206*4882a593Smuzhiyun opp-supported-hw = <0x06 0xffff>; 1207*4882a593Smuzhiyun opp-hz = /bits/ 64 <1800000000>; 1208*4882a593Smuzhiyun opp-microvolt = <875000 875000 950000>, 1209*4882a593Smuzhiyun <875000 875000 950000>; 1210*4882a593Smuzhiyun opp-microvolt-L1 = <862500 862500 950000>, 1211*4882a593Smuzhiyun <862500 862500 950000>; 1212*4882a593Smuzhiyun opp-microvolt-L2 = <850000 850000 950000>, 1213*4882a593Smuzhiyun <850000 850000 950000>; 1214*4882a593Smuzhiyun opp-microvolt-L3 = <837500 837500 950000>, 1215*4882a593Smuzhiyun <837500 837500 950000>; 1216*4882a593Smuzhiyun opp-microvolt-L4 = <825000 825000 950000>, 1217*4882a593Smuzhiyun <825000 825000 950000>; 1218*4882a593Smuzhiyun opp-microvolt-L5 = <812500 812500 950000>, 1219*4882a593Smuzhiyun <812500 812500 950000>; 1220*4882a593Smuzhiyun opp-microvolt-L6 = <800000 800000 950000>, 1221*4882a593Smuzhiyun <800000 800000 950000>; 1222*4882a593Smuzhiyun opp-microvolt-L7 = <787500 787500 950000>, 1223*4882a593Smuzhiyun <787500 787500 950000>; 1224*4882a593Smuzhiyun clock-latency-ns = <40000>; 1225*4882a593Smuzhiyun }; 1226*4882a593Smuzhiyun opp-j-m-2016000000 { 1227*4882a593Smuzhiyun opp-supported-hw = <0x06 0xffff>; 1228*4882a593Smuzhiyun opp-hz = /bits/ 64 <2016000000>; 1229*4882a593Smuzhiyun opp-microvolt = <950000 950000 950000>, 1230*4882a593Smuzhiyun <950000 950000 950000>; 1231*4882a593Smuzhiyun opp-microvolt-L1 = <950000 950000 950000>, 1232*4882a593Smuzhiyun <950000 950000 950000>; 1233*4882a593Smuzhiyun opp-microvolt-L2 = <937500 937500 950000>, 1234*4882a593Smuzhiyun <937500 937500 950000>; 1235*4882a593Smuzhiyun opp-microvolt-L3 = <925000 925000 950000>, 1236*4882a593Smuzhiyun <925000 925000 950000>; 1237*4882a593Smuzhiyun opp-microvolt-L4 = <912500 912500 950000>, 1238*4882a593Smuzhiyun <912500 912500 950000>; 1239*4882a593Smuzhiyun opp-microvolt-L5 = <900000 900000 950000>, 1240*4882a593Smuzhiyun <900000 900000 950000>; 1241*4882a593Smuzhiyun opp-microvolt-L6 = <887500 887500 950000>, 1242*4882a593Smuzhiyun <887500 887500 950000>; 1243*4882a593Smuzhiyun opp-microvolt-L7 = <875000 875000 950000>, 1244*4882a593Smuzhiyun <875000 875000 950000>; 1245*4882a593Smuzhiyun clock-latency-ns = <40000>; 1246*4882a593Smuzhiyun }; 1247*4882a593Smuzhiyun }; 1248*4882a593Smuzhiyun 1249*4882a593Smuzhiyun cluster2_opp_table: cluster2-opp-table { 1250*4882a593Smuzhiyun compatible = "operating-points-v2"; 1251*4882a593Smuzhiyun opp-shared; 1252*4882a593Smuzhiyun 1253*4882a593Smuzhiyun nvmem-cells = <&cpub1_leakage>, <&cpub23_opp_info>, <&specification_serial_number>; 1254*4882a593Smuzhiyun nvmem-cell-names = "leakage", "opp-info", "specification_serial_number"; 1255*4882a593Smuzhiyun rockchip,supported-hw; 1256*4882a593Smuzhiyun 1257*4882a593Smuzhiyun rockchip,pvtm-hw = <0x06>; 1258*4882a593Smuzhiyun rockchip,pvtm-voltage-sel-hw = < 1259*4882a593Smuzhiyun 0 1539 0 1260*4882a593Smuzhiyun 1540 1564 1 1261*4882a593Smuzhiyun 1565 1589 2 1262*4882a593Smuzhiyun 1590 1614 3 1263*4882a593Smuzhiyun 1615 1644 4 1264*4882a593Smuzhiyun 1645 1674 5 1265*4882a593Smuzhiyun 1675 1704 6 1266*4882a593Smuzhiyun 1705 9999 7 1267*4882a593Smuzhiyun >; 1268*4882a593Smuzhiyun rockchip,pvtm-voltage-sel = < 1269*4882a593Smuzhiyun 0 1595 0 1270*4882a593Smuzhiyun 1596 1615 1 1271*4882a593Smuzhiyun 1616 1640 2 1272*4882a593Smuzhiyun 1641 1675 3 1273*4882a593Smuzhiyun 1676 1710 4 1274*4882a593Smuzhiyun 1711 1743 5 1275*4882a593Smuzhiyun 1744 1776 6 1276*4882a593Smuzhiyun 1777 9999 7 1277*4882a593Smuzhiyun >; 1278*4882a593Smuzhiyun rockchip,pvtm-pvtpll; 1279*4882a593Smuzhiyun rockchip,pvtm-offset = <0x18>; 1280*4882a593Smuzhiyun rockchip,pvtm-sample-time = <1100>; 1281*4882a593Smuzhiyun rockchip,pvtm-freq = <1608000>; 1282*4882a593Smuzhiyun rockchip,pvtm-volt = <750000>; 1283*4882a593Smuzhiyun rockchip,pvtm-ref-temp = <25>; 1284*4882a593Smuzhiyun rockchip,pvtm-temp-prop = <270 270>; 1285*4882a593Smuzhiyun rockchip,pvtm-thermal-zone = "soc-thermal"; 1286*4882a593Smuzhiyun rockchip,pvtm-low-len-sel = <3>; 1287*4882a593Smuzhiyun 1288*4882a593Smuzhiyun rockchip,grf = <&bigcore1_grf>; 1289*4882a593Smuzhiyun volt-mem-read-margin = < 1290*4882a593Smuzhiyun 855000 1 1291*4882a593Smuzhiyun 765000 2 1292*4882a593Smuzhiyun 675000 3 1293*4882a593Smuzhiyun 495000 4 1294*4882a593Smuzhiyun >; 1295*4882a593Smuzhiyun low-volt-mem-read-margin = <4>; 1296*4882a593Smuzhiyun intermediate-threshold-freq = <1008000>; /* KHz */ 1297*4882a593Smuzhiyun rockchip,idle-threshold-freq = <2208000>; /* KHz */ 1298*4882a593Smuzhiyun rockchip,reboot-freq = <1800000>; /* KHz */ 1299*4882a593Smuzhiyun 1300*4882a593Smuzhiyun rockchip,temp-hysteresis = <5000>; 1301*4882a593Smuzhiyun rockchip,low-temp = <10000>; 1302*4882a593Smuzhiyun rockchip,low-temp-min-volt = <750000>; 1303*4882a593Smuzhiyun rockchip,high-temp = <85000>; 1304*4882a593Smuzhiyun rockchip,high-temp-max-freq = <2208000>; 1305*4882a593Smuzhiyun 1306*4882a593Smuzhiyun /* RK3588 cluster2 OPPs */ 1307*4882a593Smuzhiyun opp-408000000 { 1308*4882a593Smuzhiyun opp-supported-hw = <0xf9 0x0ffff>; 1309*4882a593Smuzhiyun opp-hz = /bits/ 64 <408000000>; 1310*4882a593Smuzhiyun opp-microvolt = <675000 675000 1000000>, 1311*4882a593Smuzhiyun <675000 675000 1000000>; 1312*4882a593Smuzhiyun clock-latency-ns = <40000>; 1313*4882a593Smuzhiyun opp-suspend; 1314*4882a593Smuzhiyun }; 1315*4882a593Smuzhiyun opp-600000000 { 1316*4882a593Smuzhiyun opp-supported-hw = <0xf9 0xffff>; 1317*4882a593Smuzhiyun opp-hz = /bits/ 64 <600000000>; 1318*4882a593Smuzhiyun opp-microvolt = <675000 675000 1000000>, 1319*4882a593Smuzhiyun <675000 675000 1000000>; 1320*4882a593Smuzhiyun clock-latency-ns = <40000>; 1321*4882a593Smuzhiyun }; 1322*4882a593Smuzhiyun opp-816000000 { 1323*4882a593Smuzhiyun opp-supported-hw = <0xf9 0xffff>; 1324*4882a593Smuzhiyun opp-hz = /bits/ 64 <816000000>; 1325*4882a593Smuzhiyun opp-microvolt = <675000 675000 1000000>, 1326*4882a593Smuzhiyun <675000 675000 1000000>; 1327*4882a593Smuzhiyun clock-latency-ns = <40000>; 1328*4882a593Smuzhiyun }; 1329*4882a593Smuzhiyun opp-1008000000 { 1330*4882a593Smuzhiyun opp-supported-hw = <0xf9 0xffff>; 1331*4882a593Smuzhiyun opp-hz = /bits/ 64 <1008000000>; 1332*4882a593Smuzhiyun opp-microvolt = <675000 675000 1000000>, 1333*4882a593Smuzhiyun <675000 675000 1000000>; 1334*4882a593Smuzhiyun clock-latency-ns = <40000>; 1335*4882a593Smuzhiyun }; 1336*4882a593Smuzhiyun opp-1200000000 { 1337*4882a593Smuzhiyun opp-supported-hw = <0xf9 0xffff>; 1338*4882a593Smuzhiyun opp-hz = /bits/ 64 <1200000000>; 1339*4882a593Smuzhiyun opp-microvolt = <675000 675000 1000000>, 1340*4882a593Smuzhiyun <675000 675000 1000000>; 1341*4882a593Smuzhiyun clock-latency-ns = <40000>; 1342*4882a593Smuzhiyun }; 1343*4882a593Smuzhiyun opp-1416000000 { 1344*4882a593Smuzhiyun opp-supported-hw = <0xf9 0xffff>; 1345*4882a593Smuzhiyun opp-hz = /bits/ 64 <1416000000>; 1346*4882a593Smuzhiyun opp-microvolt = <725000 725000 1000000>, 1347*4882a593Smuzhiyun <725000 725000 1000000>; 1348*4882a593Smuzhiyun opp-microvolt-L2 = <712500 712500 1000000>, 1349*4882a593Smuzhiyun <712500 712500 1000000>; 1350*4882a593Smuzhiyun opp-microvolt-L3 = <700000 700000 1000000>, 1351*4882a593Smuzhiyun <700000 700000 1000000>; 1352*4882a593Smuzhiyun opp-microvolt-L4 = <700000 700000 1000000>, 1353*4882a593Smuzhiyun <700000 700000 1000000>; 1354*4882a593Smuzhiyun opp-microvolt-L5 = <687500 687500 1000000>, 1355*4882a593Smuzhiyun <687500 687500 1000000>; 1356*4882a593Smuzhiyun opp-microvolt-L6 = <675000 675000 1000000>, 1357*4882a593Smuzhiyun <675000 675000 1000000>; 1358*4882a593Smuzhiyun opp-microvolt-L7 = <675000 675000 1000000>, 1359*4882a593Smuzhiyun <675000 675000 1000000>; 1360*4882a593Smuzhiyun clock-latency-ns = <40000>; 1361*4882a593Smuzhiyun }; 1362*4882a593Smuzhiyun opp-1608000000 { 1363*4882a593Smuzhiyun opp-supported-hw = <0xf9 0xffff>; 1364*4882a593Smuzhiyun opp-hz = /bits/ 64 <1608000000>; 1365*4882a593Smuzhiyun opp-microvolt = <762500 762500 1000000>, 1366*4882a593Smuzhiyun <762500 762500 1000000>; 1367*4882a593Smuzhiyun opp-microvolt-L2 = <750000 750000 1000000>, 1368*4882a593Smuzhiyun <750000 750000 1000000>; 1369*4882a593Smuzhiyun opp-microvolt-L3 = <737500 737500 1000000>, 1370*4882a593Smuzhiyun <737500 737500 1000000>; 1371*4882a593Smuzhiyun opp-microvolt-L4 = <725000 725000 1000000>, 1372*4882a593Smuzhiyun <725000 725000 1000000>; 1373*4882a593Smuzhiyun opp-microvolt-L5 = <712500 712500 1000000>, 1374*4882a593Smuzhiyun <712500 712500 1000000>; 1375*4882a593Smuzhiyun opp-microvolt-L6 = <700000 700000 1000000>, 1376*4882a593Smuzhiyun <700000 700000 1000000>; 1377*4882a593Smuzhiyun opp-microvolt-L7 = <700000 700000 1000000>, 1378*4882a593Smuzhiyun <700000 700000 1000000>; 1379*4882a593Smuzhiyun clock-latency-ns = <40000>; 1380*4882a593Smuzhiyun }; 1381*4882a593Smuzhiyun opp-1800000000 { 1382*4882a593Smuzhiyun opp-supported-hw = <0xf9 0xffff>; 1383*4882a593Smuzhiyun opp-hz = /bits/ 64 <1800000000>; 1384*4882a593Smuzhiyun opp-microvolt = <850000 850000 1000000>, 1385*4882a593Smuzhiyun <850000 850000 1000000>; 1386*4882a593Smuzhiyun opp-microvolt-L1 = <837500 837500 1000000>, 1387*4882a593Smuzhiyun <837500 837500 1000000>; 1388*4882a593Smuzhiyun opp-microvolt-L2 = <825000 825000 1000000>, 1389*4882a593Smuzhiyun <825000 825000 1000000>; 1390*4882a593Smuzhiyun opp-microvolt-L3 = <812500 812500 1000000>, 1391*4882a593Smuzhiyun <812500 812500 1000000>; 1392*4882a593Smuzhiyun opp-microvolt-L4 = <800000 800000 1000000>, 1393*4882a593Smuzhiyun <800000 800000 1000000>; 1394*4882a593Smuzhiyun opp-microvolt-L5 = <787500 787500 1000000>, 1395*4882a593Smuzhiyun <787500 787500 1000000>; 1396*4882a593Smuzhiyun opp-microvolt-L6 = <775000 775000 1000000>, 1397*4882a593Smuzhiyun <775000 775000 1000000>; 1398*4882a593Smuzhiyun opp-microvolt-L7 = <762500 762500 1000000>, 1399*4882a593Smuzhiyun <762500 762500 1000000>; 1400*4882a593Smuzhiyun clock-latency-ns = <40000>; 1401*4882a593Smuzhiyun }; 1402*4882a593Smuzhiyun opp-2016000000 { 1403*4882a593Smuzhiyun opp-supported-hw = <0xf9 0xffff>; 1404*4882a593Smuzhiyun opp-hz = /bits/ 64 <2016000000>; 1405*4882a593Smuzhiyun opp-microvolt = <925000 925000 1000000>, 1406*4882a593Smuzhiyun <925000 925000 1000000>; 1407*4882a593Smuzhiyun opp-microvolt-L1 = <912500 912500 1000000>, 1408*4882a593Smuzhiyun <912500 912500 1000000>; 1409*4882a593Smuzhiyun opp-microvolt-L2 = <900000 900000 1000000>, 1410*4882a593Smuzhiyun <900000 900000 1000000>; 1411*4882a593Smuzhiyun opp-microvolt-L3 = <887500 887500 1000000>, 1412*4882a593Smuzhiyun <887500 887500 1000000>; 1413*4882a593Smuzhiyun opp-microvolt-L4 = <875000 875000 1000000>, 1414*4882a593Smuzhiyun <875000 875000 1000000>; 1415*4882a593Smuzhiyun opp-microvolt-L5 = <862500 862500 1000000>, 1416*4882a593Smuzhiyun <862500 862500 1000000>; 1417*4882a593Smuzhiyun opp-microvolt-L6 = <850000 850000 1000000>, 1418*4882a593Smuzhiyun <850000 850000 1000000>; 1419*4882a593Smuzhiyun opp-microvolt-L7 = <837500 837500 1000000>, 1420*4882a593Smuzhiyun <837500 837500 1000000>; 1421*4882a593Smuzhiyun clock-latency-ns = <40000>; 1422*4882a593Smuzhiyun }; 1423*4882a593Smuzhiyun opp-2208000000 { 1424*4882a593Smuzhiyun opp-supported-hw = <0xf9 0xffff>; 1425*4882a593Smuzhiyun opp-hz = /bits/ 64 <2208000000>; 1426*4882a593Smuzhiyun opp-microvolt = <987500 987500 1000000>, 1427*4882a593Smuzhiyun <987500 987500 1000000>; 1428*4882a593Smuzhiyun opp-microvolt-L3 = <975000 975000 1000000>, 1429*4882a593Smuzhiyun <975000 975000 1000000>; 1430*4882a593Smuzhiyun opp-microvolt-L4 = <962500 962500 1000000>, 1431*4882a593Smuzhiyun <962500 962500 1000000>; 1432*4882a593Smuzhiyun opp-microvolt-L5 = <950000 950000 1000000>, 1433*4882a593Smuzhiyun <950000 950000 1000000>; 1434*4882a593Smuzhiyun opp-microvolt-L6 = <925000 925000 1000000>, 1435*4882a593Smuzhiyun <925000 925000 1000000>; 1436*4882a593Smuzhiyun opp-microvolt-L7 = <912500 912500 1000000>, 1437*4882a593Smuzhiyun <912500 912500 1000000>; 1438*4882a593Smuzhiyun clock-latency-ns = <40000>; 1439*4882a593Smuzhiyun }; 1440*4882a593Smuzhiyun opp-2256000000 { 1441*4882a593Smuzhiyun opp-supported-hw = <0xf9 0x13>; 1442*4882a593Smuzhiyun opp-hz = /bits/ 64 <2256000000>; 1443*4882a593Smuzhiyun opp-microvolt = <1000000 1000000 1000000>, 1444*4882a593Smuzhiyun <1000000 1000000 1000000>; 1445*4882a593Smuzhiyun clock-latency-ns = <40000>; 1446*4882a593Smuzhiyun }; 1447*4882a593Smuzhiyun opp-2304000000 { 1448*4882a593Smuzhiyun opp-supported-hw = <0xf9 0x24>; 1449*4882a593Smuzhiyun opp-hz = /bits/ 64 <2304000000>; 1450*4882a593Smuzhiyun opp-microvolt = <1000000 1000000 1000000>, 1451*4882a593Smuzhiyun <1000000 1000000 1000000>; 1452*4882a593Smuzhiyun clock-latency-ns = <40000>; 1453*4882a593Smuzhiyun }; 1454*4882a593Smuzhiyun opp-2352000000 { 1455*4882a593Smuzhiyun opp-supported-hw = <0xf9 0x48>; 1456*4882a593Smuzhiyun opp-hz = /bits/ 64 <2352000000>; 1457*4882a593Smuzhiyun opp-microvolt = <1000000 1000000 1000000>, 1458*4882a593Smuzhiyun <1000000 1000000 1000000>; 1459*4882a593Smuzhiyun clock-latency-ns = <40000>; 1460*4882a593Smuzhiyun }; 1461*4882a593Smuzhiyun opp-2400000000 { 1462*4882a593Smuzhiyun opp-supported-hw = <0xf9 0x80>; 1463*4882a593Smuzhiyun opp-hz = /bits/ 64 <2400000000>; 1464*4882a593Smuzhiyun opp-microvolt = <1000000 1000000 1000000>, 1465*4882a593Smuzhiyun <1000000 1000000 1000000>; 1466*4882a593Smuzhiyun clock-latency-ns = <40000>; 1467*4882a593Smuzhiyun }; 1468*4882a593Smuzhiyun 1469*4882a593Smuzhiyun /* RK3588J/M cluster2 OPPs */ 1470*4882a593Smuzhiyun opp-j-m-408000000 { 1471*4882a593Smuzhiyun opp-supported-hw = <0x06 0xffff>; 1472*4882a593Smuzhiyun opp-hz = /bits/ 64 <408000000>; 1473*4882a593Smuzhiyun opp-microvolt = <750000 750000 950000>, 1474*4882a593Smuzhiyun <750000 750000 950000>; 1475*4882a593Smuzhiyun clock-latency-ns = <40000>; 1476*4882a593Smuzhiyun }; 1477*4882a593Smuzhiyun opp-j-m-600000000 { 1478*4882a593Smuzhiyun opp-supported-hw = <0x06 0xffff>; 1479*4882a593Smuzhiyun opp-hz = /bits/ 64 <600000000>; 1480*4882a593Smuzhiyun opp-microvolt = <750000 750000 950000>, 1481*4882a593Smuzhiyun <750000 750000 950000>; 1482*4882a593Smuzhiyun clock-latency-ns = <40000>; 1483*4882a593Smuzhiyun }; 1484*4882a593Smuzhiyun opp-j-m-816000000 { 1485*4882a593Smuzhiyun opp-supported-hw = <0x06 0xffff>; 1486*4882a593Smuzhiyun opp-hz = /bits/ 64 <816000000>; 1487*4882a593Smuzhiyun opp-microvolt = <750000 750000 950000>, 1488*4882a593Smuzhiyun <750000 750000 950000>; 1489*4882a593Smuzhiyun clock-latency-ns = <40000>; 1490*4882a593Smuzhiyun }; 1491*4882a593Smuzhiyun opp-j-m-1008000000 { 1492*4882a593Smuzhiyun opp-supported-hw = <0x06 0xffff>; 1493*4882a593Smuzhiyun opp-hz = /bits/ 64 <1008000000>; 1494*4882a593Smuzhiyun opp-microvolt = <750000 750000 950000>, 1495*4882a593Smuzhiyun <750000 750000 950000>; 1496*4882a593Smuzhiyun clock-latency-ns = <40000>; 1497*4882a593Smuzhiyun }; 1498*4882a593Smuzhiyun opp-j-m-1200000000 { 1499*4882a593Smuzhiyun opp-supported-hw = <0x06 0xffff>; 1500*4882a593Smuzhiyun opp-hz = /bits/ 64 <1200000000>; 1501*4882a593Smuzhiyun opp-microvolt = <750000 750000 950000>, 1502*4882a593Smuzhiyun <750000 750000 950000>; 1503*4882a593Smuzhiyun clock-latency-ns = <40000>; 1504*4882a593Smuzhiyun }; 1505*4882a593Smuzhiyun opp-j-m-1416000000 { 1506*4882a593Smuzhiyun opp-supported-hw = <0x06 0xffff>; 1507*4882a593Smuzhiyun opp-hz = /bits/ 64 <1416000000>; 1508*4882a593Smuzhiyun opp-microvolt = <750000 750000 950000>, 1509*4882a593Smuzhiyun <750000 750000 950000>; 1510*4882a593Smuzhiyun opp-microvolt-L0 = <762500 762500 950000>, 1511*4882a593Smuzhiyun <762500 762500 950000>; 1512*4882a593Smuzhiyun clock-latency-ns = <40000>; 1513*4882a593Smuzhiyun opp-suspend; 1514*4882a593Smuzhiyun }; 1515*4882a593Smuzhiyun opp-j-m-1608000000 { 1516*4882a593Smuzhiyun opp-supported-hw = <0x06 0xffff>; 1517*4882a593Smuzhiyun opp-hz = /bits/ 64 <1608000000>; 1518*4882a593Smuzhiyun opp-microvolt = <787500 787500 950000>, 1519*4882a593Smuzhiyun <787500 787500 950000>; 1520*4882a593Smuzhiyun opp-microvolt-L2 = <775000 775000 950000>, 1521*4882a593Smuzhiyun <775000 775000 950000>; 1522*4882a593Smuzhiyun opp-microvolt-L3 = <762500 762500 950000>, 1523*4882a593Smuzhiyun <762500 762500 950000>; 1524*4882a593Smuzhiyun opp-microvolt-L4 = <750000 750000 950000>, 1525*4882a593Smuzhiyun <750000 750000 950000>; 1526*4882a593Smuzhiyun opp-microvolt-L5 = <750000 750000 950000>, 1527*4882a593Smuzhiyun <750000 750000 950000>; 1528*4882a593Smuzhiyun opp-microvolt-L6 = <750000 750000 950000>, 1529*4882a593Smuzhiyun <750000 750000 950000>; 1530*4882a593Smuzhiyun opp-microvolt-L7 = <750000 750000 950000>, 1531*4882a593Smuzhiyun <750000 750000 950000>; 1532*4882a593Smuzhiyun clock-latency-ns = <40000>; 1533*4882a593Smuzhiyun }; 1534*4882a593Smuzhiyun opp-j-m-1800000000 { 1535*4882a593Smuzhiyun opp-supported-hw = <0x06 0xffff>; 1536*4882a593Smuzhiyun opp-hz = /bits/ 64 <1800000000>; 1537*4882a593Smuzhiyun opp-microvolt = <875000 875000 950000>, 1538*4882a593Smuzhiyun <875000 875000 950000>; 1539*4882a593Smuzhiyun opp-microvolt-L1 = <862500 862500 950000>, 1540*4882a593Smuzhiyun <862500 862500 950000>; 1541*4882a593Smuzhiyun opp-microvolt-L2 = <850000 850000 950000>, 1542*4882a593Smuzhiyun <850000 850000 950000>; 1543*4882a593Smuzhiyun opp-microvolt-L3 = <837500 837500 950000>, 1544*4882a593Smuzhiyun <837500 837500 950000>; 1545*4882a593Smuzhiyun opp-microvolt-L4 = <825000 825000 950000>, 1546*4882a593Smuzhiyun <825000 825000 950000>; 1547*4882a593Smuzhiyun opp-microvolt-L5 = <812500 812500 950000>, 1548*4882a593Smuzhiyun <812500 812500 950000>; 1549*4882a593Smuzhiyun opp-microvolt-L6 = <800000 800000 950000>, 1550*4882a593Smuzhiyun <800000 800000 950000>; 1551*4882a593Smuzhiyun opp-microvolt-L7 = <787500 787500 950000>, 1552*4882a593Smuzhiyun <787500 787500 950000>; 1553*4882a593Smuzhiyun clock-latency-ns = <40000>; 1554*4882a593Smuzhiyun }; 1555*4882a593Smuzhiyun opp-j-m-2016000000 { 1556*4882a593Smuzhiyun opp-supported-hw = <0x06 0xffff>; 1557*4882a593Smuzhiyun opp-hz = /bits/ 64 <2016000000>; 1558*4882a593Smuzhiyun opp-microvolt = <950000 950000 950000>, 1559*4882a593Smuzhiyun <950000 950000 950000>; 1560*4882a593Smuzhiyun opp-microvolt-L1 = <950000 950000 950000>, 1561*4882a593Smuzhiyun <950000 950000 950000>; 1562*4882a593Smuzhiyun opp-microvolt-L2 = <937500 937500 950000>, 1563*4882a593Smuzhiyun <937500 937500 950000>; 1564*4882a593Smuzhiyun opp-microvolt-L3 = <925000 925000 950000>, 1565*4882a593Smuzhiyun <925000 925000 950000>; 1566*4882a593Smuzhiyun opp-microvolt-L4 = <912500 912500 950000>, 1567*4882a593Smuzhiyun <912500 912500 950000>; 1568*4882a593Smuzhiyun opp-microvolt-L5 = <900000 900000 950000>, 1569*4882a593Smuzhiyun <900000 900000 950000>; 1570*4882a593Smuzhiyun opp-microvolt-L6 = <887500 887500 950000>, 1571*4882a593Smuzhiyun <887500 887500 950000>; 1572*4882a593Smuzhiyun opp-microvolt-L7 = <875000 875000 950000>, 1573*4882a593Smuzhiyun <875000 875000 950000>; 1574*4882a593Smuzhiyun clock-latency-ns = <40000>; 1575*4882a593Smuzhiyun }; 1576*4882a593Smuzhiyun }; 1577*4882a593Smuzhiyun 1578*4882a593Smuzhiyun arm_pmu: arm-pmu { 1579*4882a593Smuzhiyun compatible = "arm,armv8-pmuv3"; 1580*4882a593Smuzhiyun interrupts = <GIC_PPI 7 IRQ_TYPE_LEVEL_LOW>; 1581*4882a593Smuzhiyun interrupt-affinity = <&cpu_l0>, <&cpu_l1>, <&cpu_l2>, <&cpu_l3>, 1582*4882a593Smuzhiyun <&cpu_b0>, <&cpu_b1>, <&cpu_b2>, <&cpu_b3>; 1583*4882a593Smuzhiyun }; 1584*4882a593Smuzhiyun 1585*4882a593Smuzhiyun cpuinfo { 1586*4882a593Smuzhiyun compatible = "rockchip,cpuinfo"; 1587*4882a593Smuzhiyun nvmem-cells = <&otp_id>, <&otp_cpu_version>, <&cpu_code>; 1588*4882a593Smuzhiyun nvmem-cell-names = "id", "cpu-version", "cpu-code"; 1589*4882a593Smuzhiyun }; 1590*4882a593Smuzhiyun 1591*4882a593Smuzhiyun csi2_dcphy0: csi2-dcphy0 { 1592*4882a593Smuzhiyun compatible = "rockchip,rk3588-csi2-dphy"; 1593*4882a593Smuzhiyun rockchip,hw = <&csi2_dphy0_hw>, <&csi2_dphy1_hw>; 1594*4882a593Smuzhiyun phys = <&mipidcphy0>, <&mipidcphy1>; 1595*4882a593Smuzhiyun phy-names = "dcphy0", "dcphy1"; 1596*4882a593Smuzhiyun status = "disabled"; 1597*4882a593Smuzhiyun }; 1598*4882a593Smuzhiyun 1599*4882a593Smuzhiyun csi2_dcphy1: csi2-dcphy1 { 1600*4882a593Smuzhiyun compatible = "rockchip,rk3588-csi2-dphy"; 1601*4882a593Smuzhiyun rockchip,hw = <&csi2_dphy0_hw>, <&csi2_dphy1_hw>; 1602*4882a593Smuzhiyun phys = <&mipidcphy0>, <&mipidcphy1>; 1603*4882a593Smuzhiyun phy-names = "dcphy0", "dcphy1"; 1604*4882a593Smuzhiyun status = "disabled"; 1605*4882a593Smuzhiyun }; 1606*4882a593Smuzhiyun 1607*4882a593Smuzhiyun csi2_dphy0: csi2-dphy0 { 1608*4882a593Smuzhiyun compatible = "rockchip,rk3588-csi2-dphy"; 1609*4882a593Smuzhiyun rockchip,hw = <&csi2_dphy0_hw>, <&csi2_dphy1_hw>; 1610*4882a593Smuzhiyun phys = <&mipidcphy0>, <&mipidcphy1>; 1611*4882a593Smuzhiyun phy-names = "dcphy0", "dcphy1"; 1612*4882a593Smuzhiyun status = "disabled"; 1613*4882a593Smuzhiyun }; 1614*4882a593Smuzhiyun 1615*4882a593Smuzhiyun csi2_dphy1: csi2-dphy1 { 1616*4882a593Smuzhiyun compatible = "rockchip,rk3588-csi2-dphy"; 1617*4882a593Smuzhiyun rockchip,hw = <&csi2_dphy0_hw>, <&csi2_dphy1_hw>; 1618*4882a593Smuzhiyun phys = <&mipidcphy0>, <&mipidcphy1>; 1619*4882a593Smuzhiyun phy-names = "dcphy0", "dcphy1"; 1620*4882a593Smuzhiyun status = "disabled"; 1621*4882a593Smuzhiyun }; 1622*4882a593Smuzhiyun 1623*4882a593Smuzhiyun csi2_dphy2: csi2-dphy2 { 1624*4882a593Smuzhiyun compatible = "rockchip,rk3588-csi2-dphy"; 1625*4882a593Smuzhiyun rockchip,hw = <&csi2_dphy0_hw>, <&csi2_dphy1_hw>; 1626*4882a593Smuzhiyun phys = <&mipidcphy0>, <&mipidcphy1>; 1627*4882a593Smuzhiyun phy-names = "dcphy0", "dcphy1"; 1628*4882a593Smuzhiyun status = "disabled"; 1629*4882a593Smuzhiyun }; 1630*4882a593Smuzhiyun 1631*4882a593Smuzhiyun csi2_dphy3: csi2-dphy3 { 1632*4882a593Smuzhiyun compatible = "rockchip,rk3588-csi2-dphy"; 1633*4882a593Smuzhiyun rockchip,hw = <&csi2_dphy0_hw>, <&csi2_dphy1_hw>; 1634*4882a593Smuzhiyun phys = <&mipidcphy0>, <&mipidcphy1>; 1635*4882a593Smuzhiyun phy-names = "dcphy0", "dcphy1"; 1636*4882a593Smuzhiyun status = "disabled"; 1637*4882a593Smuzhiyun }; 1638*4882a593Smuzhiyun 1639*4882a593Smuzhiyun csi2_dphy4: csi2-dphy4 { 1640*4882a593Smuzhiyun compatible = "rockchip,rk3588-csi2-dphy"; 1641*4882a593Smuzhiyun rockchip,hw = <&csi2_dphy0_hw>, <&csi2_dphy1_hw>; 1642*4882a593Smuzhiyun phys = <&mipidcphy0>, <&mipidcphy1>; 1643*4882a593Smuzhiyun phy-names = "dcphy0", "dcphy1"; 1644*4882a593Smuzhiyun status = "disabled"; 1645*4882a593Smuzhiyun }; 1646*4882a593Smuzhiyun 1647*4882a593Smuzhiyun csi2_dphy5: csi2-dphy5 { 1648*4882a593Smuzhiyun compatible = "rockchip,rk3588-csi2-dphy"; 1649*4882a593Smuzhiyun rockchip,hw = <&csi2_dphy0_hw>, <&csi2_dphy1_hw>; 1650*4882a593Smuzhiyun phys = <&mipidcphy0>, <&mipidcphy1>; 1651*4882a593Smuzhiyun phy-names = "dcphy0", "dcphy1"; 1652*4882a593Smuzhiyun status = "disabled"; 1653*4882a593Smuzhiyun }; 1654*4882a593Smuzhiyun 1655*4882a593Smuzhiyun display_subsystem: display-subsystem { 1656*4882a593Smuzhiyun compatible = "rockchip,display-subsystem"; 1657*4882a593Smuzhiyun ports = <&vop_out>; 1658*4882a593Smuzhiyun 1659*4882a593Smuzhiyun route { 1660*4882a593Smuzhiyun route_dp0: route-dp0 { 1661*4882a593Smuzhiyun status = "disabled"; 1662*4882a593Smuzhiyun logo,uboot = "logo.bmp"; 1663*4882a593Smuzhiyun logo,kernel = "logo_kernel.bmp"; 1664*4882a593Smuzhiyun logo,mode = "center"; 1665*4882a593Smuzhiyun charge_logo,mode = "center"; 1666*4882a593Smuzhiyun connect = <&vp1_out_dp0>; 1667*4882a593Smuzhiyun }; 1668*4882a593Smuzhiyun 1669*4882a593Smuzhiyun route_dsi0: route-dsi0 { 1670*4882a593Smuzhiyun status = "disabled"; 1671*4882a593Smuzhiyun logo,uboot = "logo.bmp"; 1672*4882a593Smuzhiyun logo,kernel = "logo_kernel.bmp"; 1673*4882a593Smuzhiyun logo,mode = "center"; 1674*4882a593Smuzhiyun charge_logo,mode = "center"; 1675*4882a593Smuzhiyun connect = <&vp3_out_dsi0>; 1676*4882a593Smuzhiyun }; 1677*4882a593Smuzhiyun 1678*4882a593Smuzhiyun route_dsi1: route-dsi1 { 1679*4882a593Smuzhiyun status = "disabled"; 1680*4882a593Smuzhiyun logo,uboot = "logo.bmp"; 1681*4882a593Smuzhiyun logo,kernel = "logo_kernel.bmp"; 1682*4882a593Smuzhiyun logo,mode = "center"; 1683*4882a593Smuzhiyun charge_logo,mode = "center"; 1684*4882a593Smuzhiyun connect = <&vp3_out_dsi1>; 1685*4882a593Smuzhiyun }; 1686*4882a593Smuzhiyun 1687*4882a593Smuzhiyun route_edp0: route-edp0 { 1688*4882a593Smuzhiyun status = "disabled"; 1689*4882a593Smuzhiyun logo,uboot = "logo.bmp"; 1690*4882a593Smuzhiyun logo,kernel = "logo_kernel.bmp"; 1691*4882a593Smuzhiyun logo,mode = "center"; 1692*4882a593Smuzhiyun charge_logo,mode = "center"; 1693*4882a593Smuzhiyun connect = <&vp2_out_edp0>; 1694*4882a593Smuzhiyun }; 1695*4882a593Smuzhiyun 1696*4882a593Smuzhiyun route_edp1: route-edp1 { 1697*4882a593Smuzhiyun status = "disabled"; 1698*4882a593Smuzhiyun logo,uboot = "logo.bmp"; 1699*4882a593Smuzhiyun logo,kernel = "logo_kernel.bmp"; 1700*4882a593Smuzhiyun logo,mode = "center"; 1701*4882a593Smuzhiyun charge_logo,mode = "center"; 1702*4882a593Smuzhiyun }; 1703*4882a593Smuzhiyun 1704*4882a593Smuzhiyun route_hdmi0: route-hdmi0 { 1705*4882a593Smuzhiyun status = "disabled"; 1706*4882a593Smuzhiyun logo,uboot = "logo.bmp"; 1707*4882a593Smuzhiyun logo,kernel = "logo_kernel.bmp"; 1708*4882a593Smuzhiyun logo,mode = "center"; 1709*4882a593Smuzhiyun charge_logo,mode = "center"; 1710*4882a593Smuzhiyun connect = <&vp0_out_hdmi0>; 1711*4882a593Smuzhiyun }; 1712*4882a593Smuzhiyun 1713*4882a593Smuzhiyun route_rgb: route-rgb { 1714*4882a593Smuzhiyun status = "disabled"; 1715*4882a593Smuzhiyun logo,uboot = "logo.bmp"; 1716*4882a593Smuzhiyun logo,kernel = "logo_kernel.bmp"; 1717*4882a593Smuzhiyun logo,mode = "center"; 1718*4882a593Smuzhiyun charge_logo,mode = "center"; 1719*4882a593Smuzhiyun connect = <&vp3_out_rgb>; 1720*4882a593Smuzhiyun }; 1721*4882a593Smuzhiyun }; 1722*4882a593Smuzhiyun }; 1723*4882a593Smuzhiyun 1724*4882a593Smuzhiyun dmc: dmc { 1725*4882a593Smuzhiyun compatible = "rockchip,rk3588-dmc"; 1726*4882a593Smuzhiyun interrupts = <GIC_SPI 73 IRQ_TYPE_LEVEL_HIGH>; 1727*4882a593Smuzhiyun interrupt-names = "complete"; 1728*4882a593Smuzhiyun devfreq-events = <&dfi>; 1729*4882a593Smuzhiyun clocks = <&scmi_clk 4>; 1730*4882a593Smuzhiyun clock-names = "dmc_clk"; 1731*4882a593Smuzhiyun operating-points-v2 = <&dmc_opp_table>; 1732*4882a593Smuzhiyun upthreshold = <40>; 1733*4882a593Smuzhiyun downdifferential = <20>; 1734*4882a593Smuzhiyun system-status-level = < 1735*4882a593Smuzhiyun /*system status freq level*/ 1736*4882a593Smuzhiyun SYS_STATUS_NORMAL DMC_FREQ_LEVEL_MID_HIGH 1737*4882a593Smuzhiyun SYS_STATUS_REBOOT DMC_FREQ_LEVEL_HIGH 1738*4882a593Smuzhiyun SYS_STATUS_SUSPEND DMC_FREQ_LEVEL_LOW 1739*4882a593Smuzhiyun SYS_STATUS_VIDEO_4K DMC_FREQ_LEVEL_MID_HIGH 1740*4882a593Smuzhiyun SYS_STATUS_VIDEO_4K_10B DMC_FREQ_LEVEL_MID_HIGH 1741*4882a593Smuzhiyun SYS_STATUS_VIDEO_SVEP DMC_FREQ_LEVEL_MID_HIGH 1742*4882a593Smuzhiyun SYS_STATUS_BOOST DMC_FREQ_LEVEL_HIGH 1743*4882a593Smuzhiyun SYS_STATUS_ISP DMC_FREQ_LEVEL_HIGH 1744*4882a593Smuzhiyun SYS_STATUS_PERFORMANCE DMC_FREQ_LEVEL_HIGH 1745*4882a593Smuzhiyun SYS_STATUS_DUALVIEW DMC_FREQ_LEVEL_HIGH 1746*4882a593Smuzhiyun SYS_STATUS_HDMIRX DMC_FREQ_LEVEL_HIGH 1747*4882a593Smuzhiyun >; 1748*4882a593Smuzhiyun auto-freq-en = <1>; 1749*4882a593Smuzhiyun status = "disabled"; 1750*4882a593Smuzhiyun }; 1751*4882a593Smuzhiyun 1752*4882a593Smuzhiyun dmc_opp_table: dmc-opp-table { 1753*4882a593Smuzhiyun compatible = "operating-points-v2"; 1754*4882a593Smuzhiyun 1755*4882a593Smuzhiyun nvmem-cells = <&log_leakage>, <&dmc_opp_info>, <&specification_serial_number>; 1756*4882a593Smuzhiyun nvmem-cell-names = "leakage", "opp-info", "specification_serial_number"; 1757*4882a593Smuzhiyun rockchip,supported-hw; 1758*4882a593Smuzhiyun 1759*4882a593Smuzhiyun rockchip,leakage-voltage-sel = < 1760*4882a593Smuzhiyun 1 31 0 1761*4882a593Smuzhiyun 32 44 1 1762*4882a593Smuzhiyun 45 57 2 1763*4882a593Smuzhiyun 58 254 3 1764*4882a593Smuzhiyun >; 1765*4882a593Smuzhiyun rockchip,temp-hysteresis = <5000>; 1766*4882a593Smuzhiyun rockchip,low-temp = <10000>; 1767*4882a593Smuzhiyun rockchip,low-temp-min-volt = <750000>; 1768*4882a593Smuzhiyun 1769*4882a593Smuzhiyun /* RK3588 dmc OPPs */ 1770*4882a593Smuzhiyun opp-528000000 { 1771*4882a593Smuzhiyun opp-supported-hw = <0xf9 0xffff>; 1772*4882a593Smuzhiyun opp-hz = /bits/ 64 <528000000>; 1773*4882a593Smuzhiyun opp-microvolt = <675000 675000 875000>, 1774*4882a593Smuzhiyun <725000 725000 750000>; 1775*4882a593Smuzhiyun opp-microvolt-L1 = <675000 675000 875000>, 1776*4882a593Smuzhiyun <700000 700000 750000>; 1777*4882a593Smuzhiyun opp-microvolt-L2 = <675000 675000 875000>, 1778*4882a593Smuzhiyun <687500 687500 750000>; 1779*4882a593Smuzhiyun opp-microvolt-L3 = <675000 675000 875000>, 1780*4882a593Smuzhiyun <675000 675000 750000>; 1781*4882a593Smuzhiyun }; 1782*4882a593Smuzhiyun opp-1068000000 { 1783*4882a593Smuzhiyun opp-supported-hw = <0xf9 0xffff>; 1784*4882a593Smuzhiyun opp-hz = /bits/ 64 <1068000000>; 1785*4882a593Smuzhiyun opp-microvolt = <725000 725000 875000>, 1786*4882a593Smuzhiyun <737500 737500 750000>; 1787*4882a593Smuzhiyun opp-microvolt-L1 = <700000 700000 875000>, 1788*4882a593Smuzhiyun <712500 712500 750000>; 1789*4882a593Smuzhiyun opp-microvolt-L2 = <675000 675000 875000>, 1790*4882a593Smuzhiyun <700000 700000 750000>; 1791*4882a593Smuzhiyun opp-microvolt-L3 = <675000 675000 875000>, 1792*4882a593Smuzhiyun <687500 687500 750000>; 1793*4882a593Smuzhiyun }; 1794*4882a593Smuzhiyun opp-1560000000 { 1795*4882a593Smuzhiyun opp-supported-hw = <0xf9 0xffff>; 1796*4882a593Smuzhiyun opp-hz = /bits/ 64 <1560000000>; 1797*4882a593Smuzhiyun opp-microvolt = <800000 800000 875000>, 1798*4882a593Smuzhiyun <750000 750000 750000>; 1799*4882a593Smuzhiyun opp-microvolt-L1 = <775000 775000 875000>, 1800*4882a593Smuzhiyun <725000 725000 750000>; 1801*4882a593Smuzhiyun opp-microvolt-L2 = <750000 750000 875000>, 1802*4882a593Smuzhiyun <712500 712500 750000>; 1803*4882a593Smuzhiyun opp-microvolt-L3 = <725000 725000 875000>, 1804*4882a593Smuzhiyun <700000 700000 750000>; 1805*4882a593Smuzhiyun }; 1806*4882a593Smuzhiyun opp-2750000000 { 1807*4882a593Smuzhiyun opp-supported-hw = <0xf9 0xffff>; 1808*4882a593Smuzhiyun opp-hz = /bits/ 64 <2750000000>; 1809*4882a593Smuzhiyun opp-microvolt = <875000 875000 875000>, 1810*4882a593Smuzhiyun <750000 750000 750000>; 1811*4882a593Smuzhiyun opp-microvolt-L1 = <850000 850000 875000>, 1812*4882a593Smuzhiyun <750000 750000 750000>; 1813*4882a593Smuzhiyun opp-microvolt-L2 = <837500 837500 875000>, 1814*4882a593Smuzhiyun <725000 725000 750000>; 1815*4882a593Smuzhiyun opp-microvolt-L3 = <825000 820000 875000>, 1816*4882a593Smuzhiyun <700000 700000 750000>; 1817*4882a593Smuzhiyun }; 1818*4882a593Smuzhiyun 1819*4882a593Smuzhiyun /* RK3588J/M dmc OPPs */ 1820*4882a593Smuzhiyun opp-j-m-528000000 { 1821*4882a593Smuzhiyun opp-supported-hw = <0x06 0xffff>; 1822*4882a593Smuzhiyun opp-hz = /bits/ 64 <528000000>; 1823*4882a593Smuzhiyun opp-microvolt = <750000 750000 875000>, 1824*4882a593Smuzhiyun <750000 750000 750000>; 1825*4882a593Smuzhiyun }; 1826*4882a593Smuzhiyun opp-j-m-1068000000 { 1827*4882a593Smuzhiyun opp-supported-hw = <0x06 0xffff>; 1828*4882a593Smuzhiyun opp-hz = /bits/ 64 <1068000000>; 1829*4882a593Smuzhiyun opp-microvolt = <750000 750000 875000>, 1830*4882a593Smuzhiyun <750000 750000 750000>; 1831*4882a593Smuzhiyun }; 1832*4882a593Smuzhiyun opp-j-m-1560000000 { 1833*4882a593Smuzhiyun opp-supported-hw = <0x06 0xffff>; 1834*4882a593Smuzhiyun opp-hz = /bits/ 64 <1560000000>; 1835*4882a593Smuzhiyun opp-microvolt = <800000 800000 875000>, 1836*4882a593Smuzhiyun <750000 750000 750000>; 1837*4882a593Smuzhiyun opp-microvolt-L1 = <775000 775000 875000>, 1838*4882a593Smuzhiyun <750000 750000 750000>; 1839*4882a593Smuzhiyun opp-microvolt-L2 = <750000 750000 875000>, 1840*4882a593Smuzhiyun <750000 750000 750000>; 1841*4882a593Smuzhiyun opp-microvolt-L3 = <750000 750000 875000>, 1842*4882a593Smuzhiyun <750000 750000 750000>; 1843*4882a593Smuzhiyun }; 1844*4882a593Smuzhiyun opp-j-m-2750000000 { 1845*4882a593Smuzhiyun opp-supported-hw = <0x06 0xffff>; 1846*4882a593Smuzhiyun opp-hz = /bits/ 64 <2750000000>; 1847*4882a593Smuzhiyun opp-microvolt = <875000 875000 875000>, 1848*4882a593Smuzhiyun <750000 750000 750000>; 1849*4882a593Smuzhiyun opp-microvolt-L1 = <850000 850000 875000>, 1850*4882a593Smuzhiyun <750000 750000 750000>; 1851*4882a593Smuzhiyun opp-microvolt-L2 = <837500 837500 875000>, 1852*4882a593Smuzhiyun <750000 750000 750000>; 1853*4882a593Smuzhiyun opp-microvolt-L3 = <825000 820000 875000>, 1854*4882a593Smuzhiyun <750000 750000 750000>; 1855*4882a593Smuzhiyun }; 1856*4882a593Smuzhiyun }; 1857*4882a593Smuzhiyun 1858*4882a593Smuzhiyun firmware { 1859*4882a593Smuzhiyun scmi: scmi { 1860*4882a593Smuzhiyun compatible = "arm,scmi-smc"; 1861*4882a593Smuzhiyun shmem = <&scmi_shmem>; 1862*4882a593Smuzhiyun arm,smc-id = <0x82000010>; 1863*4882a593Smuzhiyun #address-cells = <1>; 1864*4882a593Smuzhiyun #size-cells = <0>; 1865*4882a593Smuzhiyun 1866*4882a593Smuzhiyun scmi_clk: protocol@14 { 1867*4882a593Smuzhiyun reg = <0x14>; 1868*4882a593Smuzhiyun #clock-cells = <1>; 1869*4882a593Smuzhiyun 1870*4882a593Smuzhiyun assigned-clocks = <&scmi_clk SCMI_CLK_CPUL>, 1871*4882a593Smuzhiyun <&scmi_clk SCMI_CLK_CPUB01>, 1872*4882a593Smuzhiyun <&scmi_clk SCMI_CLK_CPUB23>; 1873*4882a593Smuzhiyun assigned-clock-rates = <816000000>, 1874*4882a593Smuzhiyun <816000000>, 1875*4882a593Smuzhiyun <816000000>; 1876*4882a593Smuzhiyun }; 1877*4882a593Smuzhiyun 1878*4882a593Smuzhiyun scmi_reset: protocol@16 { 1879*4882a593Smuzhiyun reg = <0x16>; 1880*4882a593Smuzhiyun #reset-cells = <1>; 1881*4882a593Smuzhiyun }; 1882*4882a593Smuzhiyun }; 1883*4882a593Smuzhiyun 1884*4882a593Smuzhiyun sdei: sdei { 1885*4882a593Smuzhiyun compatible = "arm,sdei-1.0"; 1886*4882a593Smuzhiyun method = "smc"; 1887*4882a593Smuzhiyun }; 1888*4882a593Smuzhiyun }; 1889*4882a593Smuzhiyun 1890*4882a593Smuzhiyun jpege_ccu: jpege-ccu { 1891*4882a593Smuzhiyun compatible = "rockchip,vpu-jpege-ccu"; 1892*4882a593Smuzhiyun status = "disabled"; 1893*4882a593Smuzhiyun }; 1894*4882a593Smuzhiyun 1895*4882a593Smuzhiyun /omit-if-no-ref/ 1896*4882a593Smuzhiyun mipi_dcphy1: mipi_dcphy0: mipi-dcphy-dummy { 1897*4882a593Smuzhiyun }; 1898*4882a593Smuzhiyun 1899*4882a593Smuzhiyun mipi0_csi2: mipi0-csi2 { 1900*4882a593Smuzhiyun compatible = "rockchip,rk3588-mipi-csi2"; 1901*4882a593Smuzhiyun rockchip,hw = <&mipi0_csi2_hw>, <&mipi1_csi2_hw>, 1902*4882a593Smuzhiyun <&mipi2_csi2_hw>, <&mipi3_csi2_hw>, 1903*4882a593Smuzhiyun <&mipi4_csi2_hw>, <&mipi5_csi2_hw>; 1904*4882a593Smuzhiyun status = "disabled"; 1905*4882a593Smuzhiyun }; 1906*4882a593Smuzhiyun 1907*4882a593Smuzhiyun mipi1_csi2: mipi1-csi2 { 1908*4882a593Smuzhiyun compatible = "rockchip,rk3588-mipi-csi2"; 1909*4882a593Smuzhiyun rockchip,hw = <&mipi0_csi2_hw>, <&mipi1_csi2_hw>, 1910*4882a593Smuzhiyun <&mipi2_csi2_hw>, <&mipi3_csi2_hw>, 1911*4882a593Smuzhiyun <&mipi4_csi2_hw>, <&mipi5_csi2_hw>; 1912*4882a593Smuzhiyun status = "disabled"; 1913*4882a593Smuzhiyun }; 1914*4882a593Smuzhiyun 1915*4882a593Smuzhiyun mipi2_csi2: mipi2-csi2 { 1916*4882a593Smuzhiyun compatible = "rockchip,rk3588-mipi-csi2"; 1917*4882a593Smuzhiyun rockchip,hw = <&mipi0_csi2_hw>, <&mipi1_csi2_hw>, 1918*4882a593Smuzhiyun <&mipi2_csi2_hw>, <&mipi3_csi2_hw>, 1919*4882a593Smuzhiyun <&mipi4_csi2_hw>, <&mipi5_csi2_hw>; 1920*4882a593Smuzhiyun status = "disabled"; 1921*4882a593Smuzhiyun }; 1922*4882a593Smuzhiyun 1923*4882a593Smuzhiyun mipi3_csi2: mipi3-csi2 { 1924*4882a593Smuzhiyun compatible = "rockchip,rk3588-mipi-csi2"; 1925*4882a593Smuzhiyun rockchip,hw = <&mipi0_csi2_hw>, <&mipi1_csi2_hw>, 1926*4882a593Smuzhiyun <&mipi2_csi2_hw>, <&mipi3_csi2_hw>, 1927*4882a593Smuzhiyun <&mipi4_csi2_hw>, <&mipi5_csi2_hw>; 1928*4882a593Smuzhiyun status = "disabled"; 1929*4882a593Smuzhiyun }; 1930*4882a593Smuzhiyun 1931*4882a593Smuzhiyun mipi4_csi2: mipi4-csi2 { 1932*4882a593Smuzhiyun compatible = "rockchip,rk3588-mipi-csi2"; 1933*4882a593Smuzhiyun rockchip,hw = <&mipi0_csi2_hw>, <&mipi1_csi2_hw>, 1934*4882a593Smuzhiyun <&mipi2_csi2_hw>, <&mipi3_csi2_hw>, 1935*4882a593Smuzhiyun <&mipi4_csi2_hw>, <&mipi5_csi2_hw>; 1936*4882a593Smuzhiyun status = "disabled"; 1937*4882a593Smuzhiyun }; 1938*4882a593Smuzhiyun 1939*4882a593Smuzhiyun mipi5_csi2: mipi5-csi2 { 1940*4882a593Smuzhiyun compatible = "rockchip,rk3588-mipi-csi2"; 1941*4882a593Smuzhiyun rockchip,hw = <&mipi0_csi2_hw>, <&mipi1_csi2_hw>, 1942*4882a593Smuzhiyun <&mipi2_csi2_hw>, <&mipi3_csi2_hw>, 1943*4882a593Smuzhiyun <&mipi4_csi2_hw>, <&mipi5_csi2_hw>; 1944*4882a593Smuzhiyun status = "disabled"; 1945*4882a593Smuzhiyun }; 1946*4882a593Smuzhiyun 1947*4882a593Smuzhiyun mpp_srv: mpp-srv { 1948*4882a593Smuzhiyun compatible = "rockchip,mpp-service"; 1949*4882a593Smuzhiyun rockchip,taskqueue-count = <12>; 1950*4882a593Smuzhiyun rockchip,resetgroup-count = <1>; 1951*4882a593Smuzhiyun status = "disabled"; 1952*4882a593Smuzhiyun }; 1953*4882a593Smuzhiyun 1954*4882a593Smuzhiyun psci { 1955*4882a593Smuzhiyun compatible = "arm,psci-1.0"; 1956*4882a593Smuzhiyun method = "smc"; 1957*4882a593Smuzhiyun }; 1958*4882a593Smuzhiyun 1959*4882a593Smuzhiyun rkcif_dvp: rkcif-dvp { 1960*4882a593Smuzhiyun compatible = "rockchip,rkcif-dvp"; 1961*4882a593Smuzhiyun rockchip,hw = <&rkcif>; 1962*4882a593Smuzhiyun iommus = <&rkcif_mmu>; 1963*4882a593Smuzhiyun status = "disabled"; 1964*4882a593Smuzhiyun }; 1965*4882a593Smuzhiyun 1966*4882a593Smuzhiyun rkcif_dvp_sditf: rkcif-dvp-sditf { 1967*4882a593Smuzhiyun compatible = "rockchip,rkcif-sditf"; 1968*4882a593Smuzhiyun rockchip,cif = <&rkcif_dvp>; 1969*4882a593Smuzhiyun status = "disabled"; 1970*4882a593Smuzhiyun }; 1971*4882a593Smuzhiyun 1972*4882a593Smuzhiyun rkcif_mipi_lvds: rkcif-mipi-lvds { 1973*4882a593Smuzhiyun compatible = "rockchip,rkcif-mipi-lvds"; 1974*4882a593Smuzhiyun rockchip,hw = <&rkcif>; 1975*4882a593Smuzhiyun iommus = <&rkcif_mmu>; 1976*4882a593Smuzhiyun status = "disabled"; 1977*4882a593Smuzhiyun }; 1978*4882a593Smuzhiyun 1979*4882a593Smuzhiyun rkcif_mipi_lvds_sditf: rkcif-mipi-lvds-sditf { 1980*4882a593Smuzhiyun compatible = "rockchip,rkcif-sditf"; 1981*4882a593Smuzhiyun rockchip,cif = <&rkcif_mipi_lvds>; 1982*4882a593Smuzhiyun status = "disabled"; 1983*4882a593Smuzhiyun }; 1984*4882a593Smuzhiyun 1985*4882a593Smuzhiyun rkcif_mipi_lvds_sditf_vir1: rkcif-mipi-lvds-sditf-vir1 { 1986*4882a593Smuzhiyun compatible = "rockchip,rkcif-sditf"; 1987*4882a593Smuzhiyun rockchip,cif = <&rkcif_mipi_lvds>; 1988*4882a593Smuzhiyun status = "disabled"; 1989*4882a593Smuzhiyun }; 1990*4882a593Smuzhiyun 1991*4882a593Smuzhiyun rkcif_mipi_lvds_sditf_vir2: rkcif-mipi-lvds-sditf-vir2 { 1992*4882a593Smuzhiyun compatible = "rockchip,rkcif-sditf"; 1993*4882a593Smuzhiyun rockchip,cif = <&rkcif_mipi_lvds>; 1994*4882a593Smuzhiyun status = "disabled"; 1995*4882a593Smuzhiyun }; 1996*4882a593Smuzhiyun 1997*4882a593Smuzhiyun rkcif_mipi_lvds_sditf_vir3: rkcif-mipi-lvds-sditf-vir3 { 1998*4882a593Smuzhiyun compatible = "rockchip,rkcif-sditf"; 1999*4882a593Smuzhiyun rockchip,cif = <&rkcif_mipi_lvds>; 2000*4882a593Smuzhiyun status = "disabled"; 2001*4882a593Smuzhiyun }; 2002*4882a593Smuzhiyun 2003*4882a593Smuzhiyun rkcif_mipi_lvds1: rkcif-mipi-lvds1 { 2004*4882a593Smuzhiyun compatible = "rockchip,rkcif-mipi-lvds"; 2005*4882a593Smuzhiyun rockchip,hw = <&rkcif>; 2006*4882a593Smuzhiyun iommus = <&rkcif_mmu>; 2007*4882a593Smuzhiyun status = "disabled"; 2008*4882a593Smuzhiyun }; 2009*4882a593Smuzhiyun 2010*4882a593Smuzhiyun rkcif_mipi_lvds1_sditf: rkcif-mipi-lvds1-sditf { 2011*4882a593Smuzhiyun compatible = "rockchip,rkcif-sditf"; 2012*4882a593Smuzhiyun rockchip,cif = <&rkcif_mipi_lvds1>; 2013*4882a593Smuzhiyun status = "disabled"; 2014*4882a593Smuzhiyun }; 2015*4882a593Smuzhiyun 2016*4882a593Smuzhiyun rkcif_mipi_lvds1_sditf_vir1: rkcif-mipi-lvds1-sditf-vir1 { 2017*4882a593Smuzhiyun compatible = "rockchip,rkcif-sditf"; 2018*4882a593Smuzhiyun rockchip,cif = <&rkcif_mipi_lvds1>; 2019*4882a593Smuzhiyun status = "disabled"; 2020*4882a593Smuzhiyun }; 2021*4882a593Smuzhiyun 2022*4882a593Smuzhiyun rkcif_mipi_lvds1_sditf_vir2: rkcif-mipi-lvds1-sditf-vir2 { 2023*4882a593Smuzhiyun compatible = "rockchip,rkcif-sditf"; 2024*4882a593Smuzhiyun rockchip,cif = <&rkcif_mipi_lvds1>; 2025*4882a593Smuzhiyun status = "disabled"; 2026*4882a593Smuzhiyun }; 2027*4882a593Smuzhiyun 2028*4882a593Smuzhiyun rkcif_mipi_lvds1_sditf_vir3: rkcif-mipi-lvds1-sditf-vir3 { 2029*4882a593Smuzhiyun compatible = "rockchip,rkcif-sditf"; 2030*4882a593Smuzhiyun rockchip,cif = <&rkcif_mipi_lvds1>; 2031*4882a593Smuzhiyun status = "disabled"; 2032*4882a593Smuzhiyun }; 2033*4882a593Smuzhiyun 2034*4882a593Smuzhiyun rkcif_mipi_lvds2: rkcif-mipi-lvds2 { 2035*4882a593Smuzhiyun compatible = "rockchip,rkcif-mipi-lvds"; 2036*4882a593Smuzhiyun rockchip,hw = <&rkcif>; 2037*4882a593Smuzhiyun iommus = <&rkcif_mmu>; 2038*4882a593Smuzhiyun status = "disabled"; 2039*4882a593Smuzhiyun }; 2040*4882a593Smuzhiyun 2041*4882a593Smuzhiyun rkcif_mipi_lvds2_sditf: rkcif-mipi-lvds2-sditf { 2042*4882a593Smuzhiyun compatible = "rockchip,rkcif-sditf"; 2043*4882a593Smuzhiyun rockchip,cif = <&rkcif_mipi_lvds2>; 2044*4882a593Smuzhiyun status = "disabled"; 2045*4882a593Smuzhiyun }; 2046*4882a593Smuzhiyun 2047*4882a593Smuzhiyun rkcif_mipi_lvds2_sditf_vir1: rkcif-mipi-lvds2-sditf-vir1 { 2048*4882a593Smuzhiyun compatible = "rockchip,rkcif-sditf"; 2049*4882a593Smuzhiyun rockchip,cif = <&rkcif_mipi_lvds2>; 2050*4882a593Smuzhiyun status = "disabled"; 2051*4882a593Smuzhiyun }; 2052*4882a593Smuzhiyun 2053*4882a593Smuzhiyun rkcif_mipi_lvds2_sditf_vir2: rkcif-mipi-lvds2-sditf-vir2 { 2054*4882a593Smuzhiyun compatible = "rockchip,rkcif-sditf"; 2055*4882a593Smuzhiyun rockchip,cif = <&rkcif_mipi_lvds2>; 2056*4882a593Smuzhiyun status = "disabled"; 2057*4882a593Smuzhiyun }; 2058*4882a593Smuzhiyun 2059*4882a593Smuzhiyun rkcif_mipi_lvds2_sditf_vir3: rkcif-mipi-lvds2-sditf-vir3 { 2060*4882a593Smuzhiyun compatible = "rockchip,rkcif-sditf"; 2061*4882a593Smuzhiyun rockchip,cif = <&rkcif_mipi_lvds2>; 2062*4882a593Smuzhiyun status = "disabled"; 2063*4882a593Smuzhiyun }; 2064*4882a593Smuzhiyun 2065*4882a593Smuzhiyun rkcif_mipi_lvds3: rkcif-mipi-lvds3 { 2066*4882a593Smuzhiyun compatible = "rockchip,rkcif-mipi-lvds"; 2067*4882a593Smuzhiyun rockchip,hw = <&rkcif>; 2068*4882a593Smuzhiyun iommus = <&rkcif_mmu>; 2069*4882a593Smuzhiyun status = "disabled"; 2070*4882a593Smuzhiyun }; 2071*4882a593Smuzhiyun 2072*4882a593Smuzhiyun rkcif_mipi_lvds3_sditf: rkcif-mipi-lvds3-sditf { 2073*4882a593Smuzhiyun compatible = "rockchip,rkcif-sditf"; 2074*4882a593Smuzhiyun rockchip,cif = <&rkcif_mipi_lvds3>; 2075*4882a593Smuzhiyun status = "disabled"; 2076*4882a593Smuzhiyun }; 2077*4882a593Smuzhiyun 2078*4882a593Smuzhiyun rkcif_mipi_lvds3_sditf_vir1: rkcif-mipi-lvds3-sditf-vir1 { 2079*4882a593Smuzhiyun compatible = "rockchip,rkcif-sditf"; 2080*4882a593Smuzhiyun rockchip,cif = <&rkcif_mipi_lvds3>; 2081*4882a593Smuzhiyun status = "disabled"; 2082*4882a593Smuzhiyun }; 2083*4882a593Smuzhiyun 2084*4882a593Smuzhiyun rkcif_mipi_lvds3_sditf_vir2: rkcif-mipi-lvds3-sditf-vir2 { 2085*4882a593Smuzhiyun compatible = "rockchip,rkcif-sditf"; 2086*4882a593Smuzhiyun rockchip,cif = <&rkcif_mipi_lvds3>; 2087*4882a593Smuzhiyun status = "disabled"; 2088*4882a593Smuzhiyun }; 2089*4882a593Smuzhiyun 2090*4882a593Smuzhiyun rkcif_mipi_lvds3_sditf_vir3: rkcif-mipi-lvds3-sditf-vir3 { 2091*4882a593Smuzhiyun compatible = "rockchip,rkcif-sditf"; 2092*4882a593Smuzhiyun rockchip,cif = <&rkcif_mipi_lvds3>; 2093*4882a593Smuzhiyun status = "disabled"; 2094*4882a593Smuzhiyun }; 2095*4882a593Smuzhiyun 2096*4882a593Smuzhiyun rkisp0_vir0: rkisp0-vir0 { 2097*4882a593Smuzhiyun compatible = "rockchip,rkisp-vir"; 2098*4882a593Smuzhiyun rockchip,hw = <&rkisp0>; 2099*4882a593Smuzhiyun /* 2100*4882a593Smuzhiyun * dual isp process image case 2101*4882a593Smuzhiyun * other rkisp hw and virtual nodes should disabled 2102*4882a593Smuzhiyun * rockchip,hw = <&rkisp_unite>; 2103*4882a593Smuzhiyun */ 2104*4882a593Smuzhiyun status = "disabled"; 2105*4882a593Smuzhiyun }; 2106*4882a593Smuzhiyun 2107*4882a593Smuzhiyun rkisp0_vir1: rkisp0-vir1 { 2108*4882a593Smuzhiyun compatible = "rockchip,rkisp-vir"; 2109*4882a593Smuzhiyun rockchip,hw = <&rkisp0>; 2110*4882a593Smuzhiyun status = "disabled"; 2111*4882a593Smuzhiyun }; 2112*4882a593Smuzhiyun 2113*4882a593Smuzhiyun rkisp0_vir2: rkisp0-vir2 { 2114*4882a593Smuzhiyun compatible = "rockchip,rkisp-vir"; 2115*4882a593Smuzhiyun rockchip,hw = <&rkisp0>; 2116*4882a593Smuzhiyun status = "disabled"; 2117*4882a593Smuzhiyun }; 2118*4882a593Smuzhiyun 2119*4882a593Smuzhiyun rkisp0_vir3: rkisp0-vir3 { 2120*4882a593Smuzhiyun compatible = "rockchip,rkisp-vir"; 2121*4882a593Smuzhiyun rockchip,hw = <&rkisp0>; 2122*4882a593Smuzhiyun status = "disabled"; 2123*4882a593Smuzhiyun }; 2124*4882a593Smuzhiyun 2125*4882a593Smuzhiyun rkisp1_vir0: rkisp1-vir0 { 2126*4882a593Smuzhiyun compatible = "rockchip,rkisp-vir"; 2127*4882a593Smuzhiyun rockchip,hw = <&rkisp1>; 2128*4882a593Smuzhiyun status = "disabled"; 2129*4882a593Smuzhiyun }; 2130*4882a593Smuzhiyun 2131*4882a593Smuzhiyun rkisp1_vir1: rkisp1-vir1 { 2132*4882a593Smuzhiyun compatible = "rockchip,rkisp-vir"; 2133*4882a593Smuzhiyun rockchip,hw = <&rkisp1>; 2134*4882a593Smuzhiyun status = "disabled"; 2135*4882a593Smuzhiyun }; 2136*4882a593Smuzhiyun 2137*4882a593Smuzhiyun rkisp1_vir2: rkisp1-vir2 { 2138*4882a593Smuzhiyun compatible = "rockchip,rkisp-vir"; 2139*4882a593Smuzhiyun rockchip,hw = <&rkisp1>; 2140*4882a593Smuzhiyun status = "disabled"; 2141*4882a593Smuzhiyun }; 2142*4882a593Smuzhiyun 2143*4882a593Smuzhiyun rkisp1_vir3: rkisp1-vir3 { 2144*4882a593Smuzhiyun compatible = "rockchip,rkisp-vir"; 2145*4882a593Smuzhiyun rockchip,hw = <&rkisp1>; 2146*4882a593Smuzhiyun status = "disabled"; 2147*4882a593Smuzhiyun }; 2148*4882a593Smuzhiyun 2149*4882a593Smuzhiyun rkispp0_vir0: rkispp0-vir0 { 2150*4882a593Smuzhiyun compatible = "rockchip,rk3588-rkispp-vir"; 2151*4882a593Smuzhiyun rockchip,hw = <&rkispp0>; 2152*4882a593Smuzhiyun status = "disabled"; 2153*4882a593Smuzhiyun }; 2154*4882a593Smuzhiyun 2155*4882a593Smuzhiyun rkispp1_vir0: rkispp1-vir0 { 2156*4882a593Smuzhiyun compatible = "rockchip,rk3588-rkispp-vir"; 2157*4882a593Smuzhiyun rockchip,hw = <&rkispp1>; 2158*4882a593Smuzhiyun status = "disabled"; 2159*4882a593Smuzhiyun }; 2160*4882a593Smuzhiyun 2161*4882a593Smuzhiyun rkvenc_ccu: rkvenc-ccu { 2162*4882a593Smuzhiyun compatible = "rockchip,rkv-encoder-v2-ccu"; 2163*4882a593Smuzhiyun status = "disabled"; 2164*4882a593Smuzhiyun }; 2165*4882a593Smuzhiyun 2166*4882a593Smuzhiyun rockchip_suspend: rockchip-suspend { 2167*4882a593Smuzhiyun compatible = "rockchip,pm-rk3588"; 2168*4882a593Smuzhiyun status = "disabled"; 2169*4882a593Smuzhiyun rockchip,sleep-debug-en = <0>; 2170*4882a593Smuzhiyun rockchip,sleep-mode-config = < 2171*4882a593Smuzhiyun (0 2172*4882a593Smuzhiyun | RKPM_SLP_ARMOFF_LOGOFF 2173*4882a593Smuzhiyun | RKPM_SLP_PMU_PMUALIVE_32K 2174*4882a593Smuzhiyun | RKPM_SLP_PMU_DIS_OSC 2175*4882a593Smuzhiyun | RKPM_SLP_32K_EXT 2176*4882a593Smuzhiyun ) 2177*4882a593Smuzhiyun >; 2178*4882a593Smuzhiyun rockchip,wakeup-config = < 2179*4882a593Smuzhiyun (0 2180*4882a593Smuzhiyun | RKPM_GPIO_WKUP_EN 2181*4882a593Smuzhiyun ) 2182*4882a593Smuzhiyun >; 2183*4882a593Smuzhiyun }; 2184*4882a593Smuzhiyun 2185*4882a593Smuzhiyun rockchip_system_monitor: rockchip-system-monitor { 2186*4882a593Smuzhiyun compatible = "rockchip,system-monitor"; 2187*4882a593Smuzhiyun 2188*4882a593Smuzhiyun rockchip,thermal-zone = "soc-thermal"; 2189*4882a593Smuzhiyun }; 2190*4882a593Smuzhiyun 2191*4882a593Smuzhiyun thermal_zones: thermal-zones { 2192*4882a593Smuzhiyun soc_thermal: soc-thermal { 2193*4882a593Smuzhiyun polling-delay-passive = <20>; /* milliseconds */ 2194*4882a593Smuzhiyun polling-delay = <1000>; /* milliseconds */ 2195*4882a593Smuzhiyun sustainable-power = <2100>; /* milliwatts */ 2196*4882a593Smuzhiyun 2197*4882a593Smuzhiyun thermal-sensors = <&tsadc 0>; 2198*4882a593Smuzhiyun trips { 2199*4882a593Smuzhiyun threshold: trip-point-0 { 2200*4882a593Smuzhiyun temperature = <75000>; 2201*4882a593Smuzhiyun hysteresis = <2000>; 2202*4882a593Smuzhiyun type = "passive"; 2203*4882a593Smuzhiyun }; 2204*4882a593Smuzhiyun target: trip-point-1 { 2205*4882a593Smuzhiyun temperature = <85000>; 2206*4882a593Smuzhiyun hysteresis = <2000>; 2207*4882a593Smuzhiyun type = "passive"; 2208*4882a593Smuzhiyun }; 2209*4882a593Smuzhiyun soc_crit: soc-crit { 2210*4882a593Smuzhiyun /* millicelsius */ 2211*4882a593Smuzhiyun temperature = <115000>; 2212*4882a593Smuzhiyun /* millicelsius */ 2213*4882a593Smuzhiyun hysteresis = <2000>; 2214*4882a593Smuzhiyun type = "critical"; 2215*4882a593Smuzhiyun }; 2216*4882a593Smuzhiyun }; 2217*4882a593Smuzhiyun cooling-maps { 2218*4882a593Smuzhiyun map0 { 2219*4882a593Smuzhiyun trip = <&target>; 2220*4882a593Smuzhiyun cooling-device = <&cpu_l0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 2221*4882a593Smuzhiyun contribution = <1024>; 2222*4882a593Smuzhiyun }; 2223*4882a593Smuzhiyun map1 { 2224*4882a593Smuzhiyun trip = <&target>; 2225*4882a593Smuzhiyun cooling-device = <&cpu_b0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 2226*4882a593Smuzhiyun contribution = <1024>; 2227*4882a593Smuzhiyun }; 2228*4882a593Smuzhiyun map2 { 2229*4882a593Smuzhiyun trip = <&target>; 2230*4882a593Smuzhiyun cooling-device = <&cpu_b2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 2231*4882a593Smuzhiyun contribution = <1024>; 2232*4882a593Smuzhiyun }; 2233*4882a593Smuzhiyun map3 { 2234*4882a593Smuzhiyun trip = <&target>; 2235*4882a593Smuzhiyun cooling-device = <&gpu THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 2236*4882a593Smuzhiyun contribution = <1024>; 2237*4882a593Smuzhiyun }; 2238*4882a593Smuzhiyun }; 2239*4882a593Smuzhiyun }; 2240*4882a593Smuzhiyun 2241*4882a593Smuzhiyun bigcore0_thermal: bigcore0-thermal { 2242*4882a593Smuzhiyun polling-delay-passive = <20>; /* milliseconds */ 2243*4882a593Smuzhiyun polling-delay = <1000>; /* milliseconds */ 2244*4882a593Smuzhiyun thermal-sensors = <&tsadc 1>; 2245*4882a593Smuzhiyun }; 2246*4882a593Smuzhiyun 2247*4882a593Smuzhiyun bigcore1_thermal: bigcore1-thermal { 2248*4882a593Smuzhiyun polling-delay-passive = <20>; /* milliseconds */ 2249*4882a593Smuzhiyun polling-delay = <1000>; /* milliseconds */ 2250*4882a593Smuzhiyun thermal-sensors = <&tsadc 2>; 2251*4882a593Smuzhiyun }; 2252*4882a593Smuzhiyun 2253*4882a593Smuzhiyun little_core_thermal: littlecore-thermal { 2254*4882a593Smuzhiyun polling-delay-passive = <20>; /* milliseconds */ 2255*4882a593Smuzhiyun polling-delay = <1000>; /* milliseconds */ 2256*4882a593Smuzhiyun thermal-sensors = <&tsadc 3>; 2257*4882a593Smuzhiyun }; 2258*4882a593Smuzhiyun 2259*4882a593Smuzhiyun center_thermal: center-thermal { 2260*4882a593Smuzhiyun polling-delay-passive = <20>; /* milliseconds */ 2261*4882a593Smuzhiyun polling-delay = <1000>; /* milliseconds */ 2262*4882a593Smuzhiyun thermal-sensors = <&tsadc 4>; 2263*4882a593Smuzhiyun }; 2264*4882a593Smuzhiyun 2265*4882a593Smuzhiyun gpu_thermal: gpu-thermal { 2266*4882a593Smuzhiyun polling-delay-passive = <20>; /* milliseconds */ 2267*4882a593Smuzhiyun polling-delay = <1000>; /* milliseconds */ 2268*4882a593Smuzhiyun thermal-sensors = <&tsadc 5>; 2269*4882a593Smuzhiyun }; 2270*4882a593Smuzhiyun 2271*4882a593Smuzhiyun npu_thermal: npu-thermal { 2272*4882a593Smuzhiyun polling-delay-passive = <20>; /* milliseconds */ 2273*4882a593Smuzhiyun polling-delay = <1000>; /* milliseconds */ 2274*4882a593Smuzhiyun thermal-sensors = <&tsadc 6>; 2275*4882a593Smuzhiyun }; 2276*4882a593Smuzhiyun }; 2277*4882a593Smuzhiyun 2278*4882a593Smuzhiyun timer { 2279*4882a593Smuzhiyun compatible = "arm,armv8-timer"; 2280*4882a593Smuzhiyun interrupts = <GIC_PPI 13 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>, 2281*4882a593Smuzhiyun <GIC_PPI 14 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>, 2282*4882a593Smuzhiyun <GIC_PPI 11 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>, 2283*4882a593Smuzhiyun <GIC_PPI 10 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>; 2284*4882a593Smuzhiyun }; 2285*4882a593Smuzhiyun 2286*4882a593Smuzhiyun sram@10f000 { 2287*4882a593Smuzhiyun compatible = "mmio-sram"; 2288*4882a593Smuzhiyun reg = <0x0 0x0010f000 0x0 0x100>; 2289*4882a593Smuzhiyun #address-cells = <1>; 2290*4882a593Smuzhiyun #size-cells = <1>; 2291*4882a593Smuzhiyun ranges = <0 0x0 0x0010f000 0x100>; 2292*4882a593Smuzhiyun 2293*4882a593Smuzhiyun scmi_shmem: sram@0 { 2294*4882a593Smuzhiyun compatible = "arm,scmi-shmem"; 2295*4882a593Smuzhiyun reg = <0x0 0x100>; 2296*4882a593Smuzhiyun }; 2297*4882a593Smuzhiyun }; 2298*4882a593Smuzhiyun 2299*4882a593Smuzhiyun gpu: gpu@fb000000 { 2300*4882a593Smuzhiyun compatible = "arm,mali-bifrost"; 2301*4882a593Smuzhiyun reg = <0x0 0xfb000000 0x0 0x200000>; 2302*4882a593Smuzhiyun interrupts = <GIC_SPI 94 IRQ_TYPE_LEVEL_HIGH>, 2303*4882a593Smuzhiyun <GIC_SPI 93 IRQ_TYPE_LEVEL_HIGH>, 2304*4882a593Smuzhiyun <GIC_SPI 92 IRQ_TYPE_LEVEL_HIGH>; 2305*4882a593Smuzhiyun interrupt-names = "GPU", "MMU", "JOB"; 2306*4882a593Smuzhiyun 2307*4882a593Smuzhiyun clocks = <&scmi_clk SCMI_CLK_GPU>, <&cru CLK_GPU_COREGROUP>, 2308*4882a593Smuzhiyun <&cru CLK_GPU_STACKS>, <&cru CLK_GPU>; 2309*4882a593Smuzhiyun clock-names = "clk_mali", "clk_gpu_coregroup", 2310*4882a593Smuzhiyun "clk_gpu_stacks", "clk_gpu"; 2311*4882a593Smuzhiyun assigned-clocks = <&scmi_clk SCMI_CLK_GPU>; 2312*4882a593Smuzhiyun assigned-clock-rates = <200000000>; 2313*4882a593Smuzhiyun power-domains = <&power RK3588_PD_GPU>; 2314*4882a593Smuzhiyun operating-points-v2 = <&gpu_opp_table>; 2315*4882a593Smuzhiyun #cooling-cells = <2>; 2316*4882a593Smuzhiyun dynamic-power-coefficient = <2982>; 2317*4882a593Smuzhiyun 2318*4882a593Smuzhiyun upthreshold = <30>; 2319*4882a593Smuzhiyun downdifferential = <10>; 2320*4882a593Smuzhiyun 2321*4882a593Smuzhiyun status = "disabled"; 2322*4882a593Smuzhiyun }; 2323*4882a593Smuzhiyun 2324*4882a593Smuzhiyun gpu_opp_table: gpu-opp-table { 2325*4882a593Smuzhiyun compatible = "operating-points-v2"; 2326*4882a593Smuzhiyun 2327*4882a593Smuzhiyun nvmem-cells = <&gpu_leakage>, <&gpu_opp_info>, <&specification_serial_number>; 2328*4882a593Smuzhiyun nvmem-cell-names = "leakage", "opp-info", "specification_serial_number"; 2329*4882a593Smuzhiyun rockchip,supported-hw; 2330*4882a593Smuzhiyun 2331*4882a593Smuzhiyun rockchip,pvtm-hw = <0x04>; 2332*4882a593Smuzhiyun rockchip,pvtm-voltage-sel-hw = < 2333*4882a593Smuzhiyun 0 799 0 2334*4882a593Smuzhiyun 800 819 1 2335*4882a593Smuzhiyun 820 844 2 2336*4882a593Smuzhiyun 845 869 3 2337*4882a593Smuzhiyun 870 894 4 2338*4882a593Smuzhiyun 895 9999 5 2339*4882a593Smuzhiyun >; 2340*4882a593Smuzhiyun rockchip,pvtm-voltage-sel = < 2341*4882a593Smuzhiyun 0 815 0 2342*4882a593Smuzhiyun 816 835 1 2343*4882a593Smuzhiyun 836 860 2 2344*4882a593Smuzhiyun 861 885 3 2345*4882a593Smuzhiyun 886 910 4 2346*4882a593Smuzhiyun 911 9999 5 2347*4882a593Smuzhiyun >; 2348*4882a593Smuzhiyun rockchip,pvtm-pvtpll; 2349*4882a593Smuzhiyun rockchip,pvtm-offset = <0x1c>; 2350*4882a593Smuzhiyun rockchip,pvtm-sample-time = <1100>; 2351*4882a593Smuzhiyun rockchip,pvtm-freq = <800000>; 2352*4882a593Smuzhiyun rockchip,pvtm-volt = <750000>; 2353*4882a593Smuzhiyun rockchip,pvtm-ref-temp = <25>; 2354*4882a593Smuzhiyun rockchip,pvtm-temp-prop = <(-135) (-135)>; 2355*4882a593Smuzhiyun rockchip,pvtm-thermal-zone = "gpu-thermal"; 2356*4882a593Smuzhiyun 2357*4882a593Smuzhiyun clocks = <&cru CLK_GPU>; 2358*4882a593Smuzhiyun clock-names = "clk"; 2359*4882a593Smuzhiyun rockchip,grf = <&gpu_grf>; 2360*4882a593Smuzhiyun volt-mem-read-margin = < 2361*4882a593Smuzhiyun 855000 1 2362*4882a593Smuzhiyun 765000 2 2363*4882a593Smuzhiyun 675000 3 2364*4882a593Smuzhiyun 495000 4 2365*4882a593Smuzhiyun >; 2366*4882a593Smuzhiyun low-volt-mem-read-margin = <4>; 2367*4882a593Smuzhiyun intermediate-threshold-freq = <400000>; /* KHz */ 2368*4882a593Smuzhiyun 2369*4882a593Smuzhiyun rockchip,temp-hysteresis = <5000>; 2370*4882a593Smuzhiyun rockchip,low-temp = <10000>; 2371*4882a593Smuzhiyun rockchip,low-temp-min-volt = <750000>; 2372*4882a593Smuzhiyun rockchip,high-temp = <85000>; 2373*4882a593Smuzhiyun rockchip,high-temp-max-freq = <800000>; 2374*4882a593Smuzhiyun 2375*4882a593Smuzhiyun /* RK3588 gpu OPPs */ 2376*4882a593Smuzhiyun opp-300000000 { 2377*4882a593Smuzhiyun opp-supported-hw = <0xf9 0xffff>; 2378*4882a593Smuzhiyun opp-hz = /bits/ 64 <300000000>; 2379*4882a593Smuzhiyun opp-microvolt = <675000 675000 850000>, 2380*4882a593Smuzhiyun <675000 675000 850000>; 2381*4882a593Smuzhiyun }; 2382*4882a593Smuzhiyun opp-400000000 { 2383*4882a593Smuzhiyun opp-supported-hw = <0xf9 0xffff>; 2384*4882a593Smuzhiyun opp-hz = /bits/ 64 <400000000>; 2385*4882a593Smuzhiyun opp-microvolt = <675000 675000 850000>, 2386*4882a593Smuzhiyun <675000 675000 850000>; 2387*4882a593Smuzhiyun }; 2388*4882a593Smuzhiyun opp-500000000 { 2389*4882a593Smuzhiyun opp-supported-hw = <0xf9 0xffff>; 2390*4882a593Smuzhiyun opp-hz = /bits/ 64 <500000000>; 2391*4882a593Smuzhiyun opp-microvolt = <675000 675000 850000>, 2392*4882a593Smuzhiyun <675000 675000 850000>; 2393*4882a593Smuzhiyun }; 2394*4882a593Smuzhiyun opp-600000000 { 2395*4882a593Smuzhiyun opp-supported-hw = <0xf9 0xffff>; 2396*4882a593Smuzhiyun opp-hz = /bits/ 64 <600000000>; 2397*4882a593Smuzhiyun opp-microvolt = <675000 675000 850000>, 2398*4882a593Smuzhiyun <675000 675000 850000>; 2399*4882a593Smuzhiyun }; 2400*4882a593Smuzhiyun opp-700000000 { 2401*4882a593Smuzhiyun opp-supported-hw = <0xf9 0xffff>; 2402*4882a593Smuzhiyun opp-hz = /bits/ 64 <700000000>; 2403*4882a593Smuzhiyun opp-microvolt = <700000 700000 850000>, 2404*4882a593Smuzhiyun <700000 700000 850000>; 2405*4882a593Smuzhiyun opp-microvolt-L2 = <687500 687500 850000>, 2406*4882a593Smuzhiyun <687500 687500 850000>; 2407*4882a593Smuzhiyun opp-microvolt-L3 = <675000 675000 850000>, 2408*4882a593Smuzhiyun <675000 675000 850000>; 2409*4882a593Smuzhiyun opp-microvolt-L4 = <675000 675000 850000>, 2410*4882a593Smuzhiyun <675000 675000 850000>; 2411*4882a593Smuzhiyun opp-microvolt-L5 = <675000 675000 850000>, 2412*4882a593Smuzhiyun <675000 675000 850000>; 2413*4882a593Smuzhiyun }; 2414*4882a593Smuzhiyun opp-800000000 { 2415*4882a593Smuzhiyun opp-supported-hw = <0xf9 0xffff>; 2416*4882a593Smuzhiyun opp-hz = /bits/ 64 <800000000>; 2417*4882a593Smuzhiyun opp-microvolt = <750000 750000 850000>, 2418*4882a593Smuzhiyun <750000 750000 850000>; 2419*4882a593Smuzhiyun opp-microvolt-L1 = <737500 737500 850000>, 2420*4882a593Smuzhiyun <737500 737500 850000>; 2421*4882a593Smuzhiyun opp-microvolt-L2 = <725000 725000 850000>, 2422*4882a593Smuzhiyun <725000 725000 850000>; 2423*4882a593Smuzhiyun opp-microvolt-L3 = <712500 712500 850000>, 2424*4882a593Smuzhiyun <712500 712500 850000>; 2425*4882a593Smuzhiyun opp-microvolt-L4 = <700000 700000 850000>, 2426*4882a593Smuzhiyun <700000 700000 850000>; 2427*4882a593Smuzhiyun opp-microvolt-L5 = <700000 700000 850000>, 2428*4882a593Smuzhiyun <700000 700000 850000>; 2429*4882a593Smuzhiyun }; 2430*4882a593Smuzhiyun opp-900000000 { 2431*4882a593Smuzhiyun opp-supported-hw = <0xf9 0xffff>; 2432*4882a593Smuzhiyun opp-hz = /bits/ 64 <900000000>; 2433*4882a593Smuzhiyun opp-microvolt = <800000 800000 850000>, 2434*4882a593Smuzhiyun <800000 800000 850000>; 2435*4882a593Smuzhiyun opp-microvolt-L1 = <787500 787500 850000>, 2436*4882a593Smuzhiyun <787500 787500 850000>; 2437*4882a593Smuzhiyun opp-microvolt-L2 = <775000 775000 850000>, 2438*4882a593Smuzhiyun <775000 775000 850000>; 2439*4882a593Smuzhiyun opp-microvolt-L3 = <762500 762500 850000>, 2440*4882a593Smuzhiyun <762500 762500 850000>; 2441*4882a593Smuzhiyun opp-microvolt-L4 = <750000 750000 850000>, 2442*4882a593Smuzhiyun <750000 750000 850000>; 2443*4882a593Smuzhiyun opp-microvolt-L5 = <737500 737500 850000>, 2444*4882a593Smuzhiyun <737500 737500 850000>; 2445*4882a593Smuzhiyun }; 2446*4882a593Smuzhiyun opp-1000000000 { 2447*4882a593Smuzhiyun opp-supported-hw = <0xf9 0xffff>; 2448*4882a593Smuzhiyun opp-hz = /bits/ 64 <1000000000>; 2449*4882a593Smuzhiyun opp-microvolt = <850000 850000 850000>, 2450*4882a593Smuzhiyun <850000 850000 850000>; 2451*4882a593Smuzhiyun opp-microvolt-L1 = <837500 837500 850000>, 2452*4882a593Smuzhiyun <837500 837500 850000>; 2453*4882a593Smuzhiyun opp-microvolt-L2 = <825000 825000 850000>, 2454*4882a593Smuzhiyun <825000 825000 850000>; 2455*4882a593Smuzhiyun opp-microvolt-L3 = <812500 812500 850000>, 2456*4882a593Smuzhiyun <812500 812500 850000>; 2457*4882a593Smuzhiyun opp-microvolt-L4 = <800000 800000 850000>, 2458*4882a593Smuzhiyun <800000 800000 850000>; 2459*4882a593Smuzhiyun opp-microvolt-L5 = <787500 787500 850000>, 2460*4882a593Smuzhiyun <787500 787500 850000>; 2461*4882a593Smuzhiyun }; 2462*4882a593Smuzhiyun 2463*4882a593Smuzhiyun /* RK3588J/M gpu OPPs */ 2464*4882a593Smuzhiyun opp-j-m-300000000 { 2465*4882a593Smuzhiyun opp-supported-hw = <0x06 0xffff>; 2466*4882a593Smuzhiyun opp-hz = /bits/ 64 <300000000>; 2467*4882a593Smuzhiyun opp-microvolt = <750000 750000 850000>, 2468*4882a593Smuzhiyun <750000 750000 850000>; 2469*4882a593Smuzhiyun }; 2470*4882a593Smuzhiyun opp-j-m-400000000 { 2471*4882a593Smuzhiyun opp-supported-hw = <0x06 0xffff>; 2472*4882a593Smuzhiyun opp-hz = /bits/ 64 <400000000>; 2473*4882a593Smuzhiyun opp-microvolt = <750000 750000 850000>, 2474*4882a593Smuzhiyun <750000 750000 850000>; 2475*4882a593Smuzhiyun }; 2476*4882a593Smuzhiyun opp-j-m-500000000 { 2477*4882a593Smuzhiyun opp-supported-hw = <0x06 0xffff>; 2478*4882a593Smuzhiyun opp-hz = /bits/ 64 <500000000>; 2479*4882a593Smuzhiyun opp-microvolt = <750000 750000 850000>, 2480*4882a593Smuzhiyun <750000 750000 850000>; 2481*4882a593Smuzhiyun }; 2482*4882a593Smuzhiyun opp-j-m-600000000 { 2483*4882a593Smuzhiyun opp-supported-hw = <0x06 0xffff>; 2484*4882a593Smuzhiyun opp-hz = /bits/ 64 <600000000>; 2485*4882a593Smuzhiyun opp-microvolt = <750000 750000 850000>, 2486*4882a593Smuzhiyun <750000 750000 850000>; 2487*4882a593Smuzhiyun }; 2488*4882a593Smuzhiyun opp-j-m-700000000 { 2489*4882a593Smuzhiyun opp-supported-hw = <0x06 0xffff>; 2490*4882a593Smuzhiyun opp-hz = /bits/ 64 <700000000>; 2491*4882a593Smuzhiyun opp-microvolt = <750000 750000 850000>, 2492*4882a593Smuzhiyun <750000 750000 850000>; 2493*4882a593Smuzhiyun }; 2494*4882a593Smuzhiyun /* RK3588J gpu OPPs */ 2495*4882a593Smuzhiyun opp-j-850000000 { 2496*4882a593Smuzhiyun opp-supported-hw = <0x04 0xffff>; 2497*4882a593Smuzhiyun opp-hz = /bits/ 64 <850000000>; 2498*4882a593Smuzhiyun opp-microvolt = <787500 787500 850000>, 2499*4882a593Smuzhiyun <787500 787500 850000>; 2500*4882a593Smuzhiyun opp-microvolt-L1 = <775000 775000 850000>, 2501*4882a593Smuzhiyun <775000 775000 850000>; 2502*4882a593Smuzhiyun opp-microvolt-L2 = <762500 762500 850000>, 2503*4882a593Smuzhiyun <762500 762500 850000>; 2504*4882a593Smuzhiyun opp-microvolt-L3 = <750000 750000 850000>, 2505*4882a593Smuzhiyun <750000 750000 850000>; 2506*4882a593Smuzhiyun opp-microvolt-L4 = <750000 750000 850000>, 2507*4882a593Smuzhiyun <750000 750000 850000>; 2508*4882a593Smuzhiyun opp-microvolt-L5 = <750000 750000 850000>, 2509*4882a593Smuzhiyun <750000 750000 850000>; 2510*4882a593Smuzhiyun }; 2511*4882a593Smuzhiyun /* RK3588M gpu OPPs */ 2512*4882a593Smuzhiyun opp-m-800000000 { 2513*4882a593Smuzhiyun opp-supported-hw = <0x02 0xffff>; 2514*4882a593Smuzhiyun opp-hz = /bits/ 64 <800000000>; 2515*4882a593Smuzhiyun opp-microvolt = <750000 750000 850000>, 2516*4882a593Smuzhiyun <750000 750000 850000>; 2517*4882a593Smuzhiyun }; 2518*4882a593Smuzhiyun opp-m-900000000 { 2519*4882a593Smuzhiyun opp-supported-hw = <0x02 0xffff>; 2520*4882a593Smuzhiyun opp-hz = /bits/ 64 <900000000>; 2521*4882a593Smuzhiyun opp-microvolt = <800000 800000 850000>, 2522*4882a593Smuzhiyun <800000 800000 850000>; 2523*4882a593Smuzhiyun opp-microvolt-L1 = <787500 787500 850000>, 2524*4882a593Smuzhiyun <787500 787500 850000>; 2525*4882a593Smuzhiyun opp-microvolt-L2 = <775000 775000 850000>, 2526*4882a593Smuzhiyun <775000 775000 850000>; 2527*4882a593Smuzhiyun opp-microvolt-L3 = <762500 762500 850000>, 2528*4882a593Smuzhiyun <762500 762500 850000>; 2529*4882a593Smuzhiyun opp-microvolt-L4 = <750000 750000 850000>, 2530*4882a593Smuzhiyun <750000 750000 850000>; 2531*4882a593Smuzhiyun opp-microvolt-L5 = <750000 750000 850000>, 2532*4882a593Smuzhiyun <750000 750000 850000>; 2533*4882a593Smuzhiyun }; 2534*4882a593Smuzhiyun opp-m-1000000000 { 2535*4882a593Smuzhiyun opp-supported-hw = <0x02 0xffff>; 2536*4882a593Smuzhiyun opp-hz = /bits/ 64 <1000000000>; 2537*4882a593Smuzhiyun opp-microvolt = <850000 850000 850000>, 2538*4882a593Smuzhiyun <850000 850000 850000>; 2539*4882a593Smuzhiyun opp-microvolt-L1 = <837500 837500 850000>, 2540*4882a593Smuzhiyun <837500 837500 850000>; 2541*4882a593Smuzhiyun opp-microvolt-L2 = <825000 825000 850000>, 2542*4882a593Smuzhiyun <825000 825000 850000>; 2543*4882a593Smuzhiyun opp-microvolt-L3 = <812500 812500 850000>, 2544*4882a593Smuzhiyun <812500 812500 850000>; 2545*4882a593Smuzhiyun opp-microvolt-L4 = <800000 800000 850000>, 2546*4882a593Smuzhiyun <800000 800000 850000>; 2547*4882a593Smuzhiyun opp-microvolt-L5 = <787500 787500 850000>, 2548*4882a593Smuzhiyun <787500 787500 850000>; 2549*4882a593Smuzhiyun }; 2550*4882a593Smuzhiyun }; 2551*4882a593Smuzhiyun 2552*4882a593Smuzhiyun usbdrd3_0: usbdrd3_0 { 2553*4882a593Smuzhiyun compatible = "rockchip,rk3588-dwc3", "rockchip,rk3399-dwc3"; 2554*4882a593Smuzhiyun clocks = <&cru REF_CLK_USB3OTG0>, <&cru SUSPEND_CLK_USB3OTG0>, 2555*4882a593Smuzhiyun <&cru ACLK_USB3OTG0>; 2556*4882a593Smuzhiyun clock-names = "ref", "suspend", "bus"; 2557*4882a593Smuzhiyun #address-cells = <2>; 2558*4882a593Smuzhiyun #size-cells = <2>; 2559*4882a593Smuzhiyun ranges; 2560*4882a593Smuzhiyun status = "disabled"; 2561*4882a593Smuzhiyun 2562*4882a593Smuzhiyun usbdrd_dwc3_0: usb@fc000000 { 2563*4882a593Smuzhiyun compatible = "snps,dwc3"; 2564*4882a593Smuzhiyun reg = <0x0 0xfc000000 0x0 0x400000>; 2565*4882a593Smuzhiyun interrupts = <GIC_SPI 220 IRQ_TYPE_LEVEL_HIGH>; 2566*4882a593Smuzhiyun power-domains = <&power RK3588_PD_USB>; 2567*4882a593Smuzhiyun resets = <&cru SRST_A_USB3OTG0>; 2568*4882a593Smuzhiyun reset-names = "usb3-otg"; 2569*4882a593Smuzhiyun dr_mode = "otg"; 2570*4882a593Smuzhiyun phys = <&u2phy0_otg>, <&usbdp_phy0_u3>; 2571*4882a593Smuzhiyun phy-names = "usb2-phy", "usb3-phy"; 2572*4882a593Smuzhiyun phy_type = "utmi_wide"; 2573*4882a593Smuzhiyun snps,dis_enblslpm_quirk; 2574*4882a593Smuzhiyun snps,dis-u1-entry-quirk; 2575*4882a593Smuzhiyun snps,dis-u2-entry-quirk; 2576*4882a593Smuzhiyun snps,dis-u2-freeclk-exists-quirk; 2577*4882a593Smuzhiyun snps,dis-del-phy-power-chg-quirk; 2578*4882a593Smuzhiyun snps,dis-tx-ipgap-linecheck-quirk; 2579*4882a593Smuzhiyun snps,parkmode-disable-ss-quirk; 2580*4882a593Smuzhiyun quirk-skip-phy-init; 2581*4882a593Smuzhiyun status = "disabled"; 2582*4882a593Smuzhiyun }; 2583*4882a593Smuzhiyun }; 2584*4882a593Smuzhiyun 2585*4882a593Smuzhiyun usb_host0_ehci: usb@fc800000 { 2586*4882a593Smuzhiyun compatible = "rockchip,rk3588-ehci", "generic-ehci"; 2587*4882a593Smuzhiyun reg = <0x0 0xfc800000 0x0 0x40000>; 2588*4882a593Smuzhiyun interrupts = <GIC_SPI 215 IRQ_TYPE_LEVEL_HIGH>; 2589*4882a593Smuzhiyun clocks = <&cru HCLK_HOST0>, <&cru HCLK_HOST_ARB0>, <&u2phy2>; 2590*4882a593Smuzhiyun clock-names = "usbhost", "arbiter", "utmi"; 2591*4882a593Smuzhiyun companion = <&usb_host0_ohci>; 2592*4882a593Smuzhiyun phys = <&u2phy2_host>; 2593*4882a593Smuzhiyun phy-names = "usb2-phy"; 2594*4882a593Smuzhiyun power-domains = <&power RK3588_PD_USB>; 2595*4882a593Smuzhiyun status = "disabled"; 2596*4882a593Smuzhiyun }; 2597*4882a593Smuzhiyun 2598*4882a593Smuzhiyun usb_host0_ohci: usb@fc840000 { 2599*4882a593Smuzhiyun compatible = "generic-ohci"; 2600*4882a593Smuzhiyun reg = <0x0 0xfc840000 0x0 0x40000>; 2601*4882a593Smuzhiyun interrupts = <GIC_SPI 216 IRQ_TYPE_LEVEL_HIGH>; 2602*4882a593Smuzhiyun clocks = <&cru HCLK_HOST0>, <&cru HCLK_HOST_ARB0>, <&u2phy2>; 2603*4882a593Smuzhiyun clock-names = "usbhost", "arbiter", "utmi"; 2604*4882a593Smuzhiyun phys = <&u2phy2_host>; 2605*4882a593Smuzhiyun phy-names = "usb2-phy"; 2606*4882a593Smuzhiyun power-domains = <&power RK3588_PD_USB>; 2607*4882a593Smuzhiyun status = "disabled"; 2608*4882a593Smuzhiyun }; 2609*4882a593Smuzhiyun 2610*4882a593Smuzhiyun usb_host1_ehci: usb@fc880000 { 2611*4882a593Smuzhiyun compatible = "rockchip,rk3588-ehci", "generic-ehci"; 2612*4882a593Smuzhiyun reg = <0x0 0xfc880000 0x0 0x40000>; 2613*4882a593Smuzhiyun interrupts = <GIC_SPI 218 IRQ_TYPE_LEVEL_HIGH>; 2614*4882a593Smuzhiyun clocks = <&cru HCLK_HOST1>, <&cru HCLK_HOST_ARB1>, <&u2phy3>; 2615*4882a593Smuzhiyun clock-names = "usbhost", "arbiter", "utmi"; 2616*4882a593Smuzhiyun companion = <&usb_host1_ohci>; 2617*4882a593Smuzhiyun phys = <&u2phy3_host>; 2618*4882a593Smuzhiyun phy-names = "usb2-phy"; 2619*4882a593Smuzhiyun power-domains = <&power RK3588_PD_USB>; 2620*4882a593Smuzhiyun status = "disabled"; 2621*4882a593Smuzhiyun }; 2622*4882a593Smuzhiyun 2623*4882a593Smuzhiyun usb_host1_ohci: usb@fc8c0000 { 2624*4882a593Smuzhiyun compatible = "generic-ohci"; 2625*4882a593Smuzhiyun reg = <0x0 0xfc8c0000 0x0 0x40000>; 2626*4882a593Smuzhiyun interrupts = <GIC_SPI 219 IRQ_TYPE_LEVEL_HIGH>; 2627*4882a593Smuzhiyun clocks = <&cru HCLK_HOST1>, <&cru HCLK_HOST_ARB1>, <&u2phy3>; 2628*4882a593Smuzhiyun clock-names = "usbhost", "arbiter", "utmi"; 2629*4882a593Smuzhiyun phys = <&u2phy3_host>; 2630*4882a593Smuzhiyun phy-names = "usb2-phy"; 2631*4882a593Smuzhiyun power-domains = <&power RK3588_PD_USB>; 2632*4882a593Smuzhiyun status = "disabled"; 2633*4882a593Smuzhiyun }; 2634*4882a593Smuzhiyun 2635*4882a593Smuzhiyun mmu600_pcie: iommu@fc900000 { 2636*4882a593Smuzhiyun compatible = "arm,smmu-v3"; 2637*4882a593Smuzhiyun reg = <0x0 0xfc900000 0x0 0x200000>; 2638*4882a593Smuzhiyun interrupts = <GIC_SPI 369 IRQ_TYPE_LEVEL_HIGH>, 2639*4882a593Smuzhiyun <GIC_SPI 371 IRQ_TYPE_LEVEL_HIGH>, 2640*4882a593Smuzhiyun <GIC_SPI 374 IRQ_TYPE_LEVEL_HIGH>, 2641*4882a593Smuzhiyun <GIC_SPI 367 IRQ_TYPE_LEVEL_HIGH>; 2642*4882a593Smuzhiyun interrupt-names = "eventq", "gerror", "priq", "cmdq-sync"; 2643*4882a593Smuzhiyun #iommu-cells = <1>; 2644*4882a593Smuzhiyun status = "disabled"; 2645*4882a593Smuzhiyun }; 2646*4882a593Smuzhiyun 2647*4882a593Smuzhiyun mmu600_php: iommu@fcb00000 { 2648*4882a593Smuzhiyun compatible = "arm,smmu-v3"; 2649*4882a593Smuzhiyun reg = <0x0 0xfcb00000 0x0 0x200000>; 2650*4882a593Smuzhiyun interrupts = <GIC_SPI 381 IRQ_TYPE_LEVEL_HIGH>, 2651*4882a593Smuzhiyun <GIC_SPI 383 IRQ_TYPE_LEVEL_HIGH>, 2652*4882a593Smuzhiyun <GIC_SPI 386 IRQ_TYPE_LEVEL_HIGH>, 2653*4882a593Smuzhiyun <GIC_SPI 379 IRQ_TYPE_LEVEL_HIGH>; 2654*4882a593Smuzhiyun interrupt-names = "eventq", "gerror", "priq", "cmdq-sync"; 2655*4882a593Smuzhiyun #iommu-cells = <1>; 2656*4882a593Smuzhiyun status = "disabled"; 2657*4882a593Smuzhiyun }; 2658*4882a593Smuzhiyun 2659*4882a593Smuzhiyun usbhost3_0: usbhost3_0 { 2660*4882a593Smuzhiyun compatible = "rockchip,rk3588-dwc3", "rockchip,rk3399-dwc3"; 2661*4882a593Smuzhiyun clocks = <&cru REF_CLK_USB3OTG2>, <&cru SUSPEND_CLK_USB3OTG2>, 2662*4882a593Smuzhiyun <&cru ACLK_USB3OTG2>, <&cru CLK_UTMI_OTG2>, 2663*4882a593Smuzhiyun <&cru PCLK_PHP_ROOT>, <&cru CLK_PIPEPHY2_PIPE_U3_G>; 2664*4882a593Smuzhiyun clock-names = "ref", "suspend", "bus", "utmi", "php", "pipe"; 2665*4882a593Smuzhiyun #address-cells = <2>; 2666*4882a593Smuzhiyun #size-cells = <2>; 2667*4882a593Smuzhiyun ranges; 2668*4882a593Smuzhiyun status = "disabled"; 2669*4882a593Smuzhiyun 2670*4882a593Smuzhiyun usbhost_dwc3_0: usb@fcd00000 { 2671*4882a593Smuzhiyun compatible = "snps,dwc3"; 2672*4882a593Smuzhiyun reg = <0x0 0xfcd00000 0x0 0x400000>; 2673*4882a593Smuzhiyun interrupts = <GIC_SPI 222 IRQ_TYPE_LEVEL_HIGH>; 2674*4882a593Smuzhiyun resets = <&cru SRST_A_USB3OTG2>; 2675*4882a593Smuzhiyun reset-names = "usb3-host"; 2676*4882a593Smuzhiyun dr_mode = "host"; 2677*4882a593Smuzhiyun phys = <&combphy2_psu PHY_TYPE_USB3>; 2678*4882a593Smuzhiyun phy-names = "usb3-phy"; 2679*4882a593Smuzhiyun phy_type = "utmi_wide"; 2680*4882a593Smuzhiyun snps,dis_enblslpm_quirk; 2681*4882a593Smuzhiyun snps,dis-u2-freeclk-exists-quirk; 2682*4882a593Smuzhiyun snps,dis-del-phy-power-chg-quirk; 2683*4882a593Smuzhiyun snps,dis-tx-ipgap-linecheck-quirk; 2684*4882a593Smuzhiyun snps,dis_rxdet_inp3_quirk; 2685*4882a593Smuzhiyun snps,parkmode-disable-ss-quirk; 2686*4882a593Smuzhiyun status = "disabled"; 2687*4882a593Smuzhiyun }; 2688*4882a593Smuzhiyun }; 2689*4882a593Smuzhiyun 2690*4882a593Smuzhiyun pmu0_grf: syscon@fd588000 { 2691*4882a593Smuzhiyun compatible = "rockchip,rk3588-pmu0-grf", "syscon", "simple-mfd"; 2692*4882a593Smuzhiyun reg = <0x0 0xfd588000 0x0 0x2000>; 2693*4882a593Smuzhiyun 2694*4882a593Smuzhiyun reboot_mode: reboot-mode { 2695*4882a593Smuzhiyun compatible = "syscon-reboot-mode"; 2696*4882a593Smuzhiyun offset = <0x80>; 2697*4882a593Smuzhiyun mode-bootloader = <BOOT_BL_DOWNLOAD>; 2698*4882a593Smuzhiyun mode-charge = <BOOT_CHARGING>; 2699*4882a593Smuzhiyun mode-fastboot = <BOOT_FASTBOOT>; 2700*4882a593Smuzhiyun mode-loader = <BOOT_BL_DOWNLOAD>; 2701*4882a593Smuzhiyun mode-normal = <BOOT_NORMAL>; 2702*4882a593Smuzhiyun mode-recovery = <BOOT_RECOVERY>; 2703*4882a593Smuzhiyun mode-ums = <BOOT_UMS>; 2704*4882a593Smuzhiyun mode-panic = <BOOT_PANIC>; 2705*4882a593Smuzhiyun mode-watchdog = <BOOT_WATCHDOG>; 2706*4882a593Smuzhiyun mode-quiescent = <BOOT_QUIESCENT>; 2707*4882a593Smuzhiyun }; 2708*4882a593Smuzhiyun }; 2709*4882a593Smuzhiyun 2710*4882a593Smuzhiyun pmu1_grf: syscon@fd58a000 { 2711*4882a593Smuzhiyun compatible = "rockchip,rk3588-pmu1-grf", "syscon"; 2712*4882a593Smuzhiyun reg = <0x0 0xfd58a000 0x0 0x2000>; 2713*4882a593Smuzhiyun }; 2714*4882a593Smuzhiyun 2715*4882a593Smuzhiyun sys_grf: syscon@fd58c000 { 2716*4882a593Smuzhiyun compatible = "rockchip,rk3588-sys-grf", "syscon", "simple-mfd"; 2717*4882a593Smuzhiyun reg = <0x0 0xfd58c000 0x0 0x1000>; 2718*4882a593Smuzhiyun 2719*4882a593Smuzhiyun rgb: rgb { 2720*4882a593Smuzhiyun compatible = "rockchip,rk3588-rgb"; 2721*4882a593Smuzhiyun pinctrl-names = "default"; 2722*4882a593Smuzhiyun pinctrl-0 = <&bt1120_pins>; 2723*4882a593Smuzhiyun status = "disabled"; 2724*4882a593Smuzhiyun 2725*4882a593Smuzhiyun ports { 2726*4882a593Smuzhiyun #address-cells = <1>; 2727*4882a593Smuzhiyun #size-cells = <0>; 2728*4882a593Smuzhiyun 2729*4882a593Smuzhiyun port@0 { 2730*4882a593Smuzhiyun reg = <0>; 2731*4882a593Smuzhiyun #address-cells = <1>; 2732*4882a593Smuzhiyun #size-cells = <0>; 2733*4882a593Smuzhiyun 2734*4882a593Smuzhiyun rgb_in_vp3: endpoint@2 { 2735*4882a593Smuzhiyun reg = <2>; 2736*4882a593Smuzhiyun remote-endpoint = <&vp3_out_rgb>; 2737*4882a593Smuzhiyun status = "disabled"; 2738*4882a593Smuzhiyun }; 2739*4882a593Smuzhiyun }; 2740*4882a593Smuzhiyun }; 2741*4882a593Smuzhiyun }; 2742*4882a593Smuzhiyun }; 2743*4882a593Smuzhiyun 2744*4882a593Smuzhiyun bigcore0_grf: syscon@fd590000 { 2745*4882a593Smuzhiyun compatible = "rockchip,rk3588-bigcore0-grf", "syscon"; 2746*4882a593Smuzhiyun reg = <0x0 0xfd590000 0x0 0x100>; 2747*4882a593Smuzhiyun }; 2748*4882a593Smuzhiyun 2749*4882a593Smuzhiyun bigcore1_grf: syscon@fd592000 { 2750*4882a593Smuzhiyun compatible = "rockchip,rk3588-bigcore1-grf", "syscon"; 2751*4882a593Smuzhiyun reg = <0x0 0xfd592000 0x0 0x100>; 2752*4882a593Smuzhiyun }; 2753*4882a593Smuzhiyun 2754*4882a593Smuzhiyun litcore_grf: syscon@fd594000 { 2755*4882a593Smuzhiyun compatible = "rockchip,rk3588-litcore-grf", "syscon"; 2756*4882a593Smuzhiyun reg = <0x0 0xfd594000 0x0 0x100>; 2757*4882a593Smuzhiyun }; 2758*4882a593Smuzhiyun 2759*4882a593Smuzhiyun dsu_grf: syscon@fd598000 { 2760*4882a593Smuzhiyun compatible = "rockchip,rk3588-dsu-grf", "syscon"; 2761*4882a593Smuzhiyun reg = <0x0 0xfd598000 0x0 0x100>; 2762*4882a593Smuzhiyun }; 2763*4882a593Smuzhiyun 2764*4882a593Smuzhiyun gpu_grf: syscon@fd5a0000 { 2765*4882a593Smuzhiyun compatible = "rockchip,rk3588-gpu-grf", "syscon"; 2766*4882a593Smuzhiyun reg = <0x0 0xfd5a0000 0x0 0x100>; 2767*4882a593Smuzhiyun }; 2768*4882a593Smuzhiyun 2769*4882a593Smuzhiyun npu_grf: syscon@fd5a2000 { 2770*4882a593Smuzhiyun compatible = "rockchip,rk3588-npu-grf", "syscon"; 2771*4882a593Smuzhiyun reg = <0x0 0xfd5a2000 0x0 0x100>; 2772*4882a593Smuzhiyun }; 2773*4882a593Smuzhiyun 2774*4882a593Smuzhiyun vop_grf: syscon@fd5a4000 { 2775*4882a593Smuzhiyun compatible = "rockchip,rk3588-vop-grf", "syscon"; 2776*4882a593Smuzhiyun reg = <0x0 0xfd5a4000 0x0 0x2000>; 2777*4882a593Smuzhiyun }; 2778*4882a593Smuzhiyun 2779*4882a593Smuzhiyun vo0_grf: syscon@fd5a6000 { 2780*4882a593Smuzhiyun compatible = "rockchip,rk3588-vo-grf", "syscon"; 2781*4882a593Smuzhiyun reg = <0x0 0xfd5a6000 0x0 0x2000>; 2782*4882a593Smuzhiyun clocks = <&pclk_vo0_grf>; 2783*4882a593Smuzhiyun }; 2784*4882a593Smuzhiyun 2785*4882a593Smuzhiyun vo1_grf: syscon@fd5a8000 { 2786*4882a593Smuzhiyun compatible = "rockchip,rk3588-vo-grf", "syscon"; 2787*4882a593Smuzhiyun reg = <0x0 0xfd5a8000 0x0 0x100>; 2788*4882a593Smuzhiyun clocks = <&pclk_vo1_grf>; 2789*4882a593Smuzhiyun }; 2790*4882a593Smuzhiyun 2791*4882a593Smuzhiyun usb_grf: syscon@fd5ac000 { 2792*4882a593Smuzhiyun compatible = "rockchip,rk3588-usb-grf", "syscon"; 2793*4882a593Smuzhiyun reg = <0x0 0xfd5ac000 0x0 0x4000>; 2794*4882a593Smuzhiyun }; 2795*4882a593Smuzhiyun 2796*4882a593Smuzhiyun php_grf: syscon@fd5b0000 { 2797*4882a593Smuzhiyun compatible = "rockchip,rk3588-php-grf", "syscon"; 2798*4882a593Smuzhiyun reg = <0x0 0xfd5b0000 0x0 0x1000>; 2799*4882a593Smuzhiyun }; 2800*4882a593Smuzhiyun 2801*4882a593Smuzhiyun mipidphy0_grf: syscon@fd5b4000 { 2802*4882a593Smuzhiyun compatible = "rockchip,mipi-dphy-grf", "syscon"; 2803*4882a593Smuzhiyun reg = <0x0 0xfd5b4000 0x0 0x1000>; 2804*4882a593Smuzhiyun }; 2805*4882a593Smuzhiyun 2806*4882a593Smuzhiyun mipidphy1_grf: syscon@fd5b5000 { 2807*4882a593Smuzhiyun compatible = "rockchip,mipi-dphy-grf", "syscon"; 2808*4882a593Smuzhiyun reg = <0x0 0xfd5b5000 0x0 0x1000>; 2809*4882a593Smuzhiyun }; 2810*4882a593Smuzhiyun 2811*4882a593Smuzhiyun pipe_phy0_grf: syscon@fd5bc000 { 2812*4882a593Smuzhiyun compatible = "rockchip,pipe-phy-grf", "syscon"; 2813*4882a593Smuzhiyun reg = <0x0 0xfd5bc000 0x0 0x100>; 2814*4882a593Smuzhiyun }; 2815*4882a593Smuzhiyun 2816*4882a593Smuzhiyun pipe_phy2_grf: syscon@fd5c4000 { 2817*4882a593Smuzhiyun compatible = "rockchip,pipe-phy-grf", "syscon"; 2818*4882a593Smuzhiyun reg = <0x0 0xfd5c4000 0x0 0x100>; 2819*4882a593Smuzhiyun }; 2820*4882a593Smuzhiyun 2821*4882a593Smuzhiyun usbdpphy0_grf: syscon@fd5c8000 { 2822*4882a593Smuzhiyun compatible = "rockchip,rk3588-usbdpphy-grf", "syscon"; 2823*4882a593Smuzhiyun reg = <0x0 0xfd5c8000 0x0 0x4000>; 2824*4882a593Smuzhiyun }; 2825*4882a593Smuzhiyun 2826*4882a593Smuzhiyun usb2phy0_grf: syscon@fd5d0000 { 2827*4882a593Smuzhiyun compatible = "rockchip,rk3588-usb2phy-grf", "syscon", 2828*4882a593Smuzhiyun "simple-mfd"; 2829*4882a593Smuzhiyun reg = <0x0 0xfd5d0000 0x0 0x4000>; 2830*4882a593Smuzhiyun #address-cells = <1>; 2831*4882a593Smuzhiyun #size-cells = <1>; 2832*4882a593Smuzhiyun 2833*4882a593Smuzhiyun u2phy0: usb2-phy@0 { 2834*4882a593Smuzhiyun compatible = "rockchip,rk3588-usb2phy"; 2835*4882a593Smuzhiyun reg = <0x0 0x10>; 2836*4882a593Smuzhiyun interrupts = <GIC_SPI 393 IRQ_TYPE_LEVEL_HIGH>; 2837*4882a593Smuzhiyun resets = <&cru SRST_OTGPHY_U3_0>, <&cru SRST_P_USB2PHY_U3_0_GRF0>; 2838*4882a593Smuzhiyun reset-names = "phy", "apb"; 2839*4882a593Smuzhiyun clocks = <&cru CLK_USB2PHY_HDPTXRXPHY_REF>; 2840*4882a593Smuzhiyun clock-names = "phyclk"; 2841*4882a593Smuzhiyun clock-output-names = "usb480m_phy0"; 2842*4882a593Smuzhiyun #clock-cells = <0>; 2843*4882a593Smuzhiyun rockchip,usbctrl-grf = <&usb_grf>; 2844*4882a593Smuzhiyun status = "disabled"; 2845*4882a593Smuzhiyun 2846*4882a593Smuzhiyun u2phy0_otg: otg-port { 2847*4882a593Smuzhiyun #phy-cells = <0>; 2848*4882a593Smuzhiyun status = "disabled"; 2849*4882a593Smuzhiyun }; 2850*4882a593Smuzhiyun }; 2851*4882a593Smuzhiyun }; 2852*4882a593Smuzhiyun 2853*4882a593Smuzhiyun usb2phy2_grf: syscon@fd5d8000 { 2854*4882a593Smuzhiyun compatible = "rockchip,rk3588-usb2phy-grf", "syscon", 2855*4882a593Smuzhiyun "simple-mfd"; 2856*4882a593Smuzhiyun reg = <0x0 0xfd5d8000 0x0 0x4000>; 2857*4882a593Smuzhiyun #address-cells = <1>; 2858*4882a593Smuzhiyun #size-cells = <1>; 2859*4882a593Smuzhiyun 2860*4882a593Smuzhiyun u2phy2: usb2-phy@8000 { 2861*4882a593Smuzhiyun compatible = "rockchip,rk3588-usb2phy"; 2862*4882a593Smuzhiyun reg = <0x8000 0x10>; 2863*4882a593Smuzhiyun interrupts = <GIC_SPI 391 IRQ_TYPE_LEVEL_HIGH>; 2864*4882a593Smuzhiyun resets = <&cru SRST_OTGPHY_U2_0>, <&cru SRST_P_USB2PHY_U2_0_GRF0>; 2865*4882a593Smuzhiyun reset-names = "phy", "apb"; 2866*4882a593Smuzhiyun clocks = <&cru CLK_USB2PHY_HDPTXRXPHY_REF>; 2867*4882a593Smuzhiyun clock-names = "phyclk"; 2868*4882a593Smuzhiyun clock-output-names = "usb480m_phy2"; 2869*4882a593Smuzhiyun #clock-cells = <0>; 2870*4882a593Smuzhiyun status = "disabled"; 2871*4882a593Smuzhiyun 2872*4882a593Smuzhiyun u2phy2_host: host-port { 2873*4882a593Smuzhiyun #phy-cells = <0>; 2874*4882a593Smuzhiyun status = "disabled"; 2875*4882a593Smuzhiyun }; 2876*4882a593Smuzhiyun }; 2877*4882a593Smuzhiyun }; 2878*4882a593Smuzhiyun 2879*4882a593Smuzhiyun usb2phy3_grf: syscon@fd5dc000 { 2880*4882a593Smuzhiyun compatible = "rockchip,rk3588-usb2phy-grf", "syscon", 2881*4882a593Smuzhiyun "simple-mfd"; 2882*4882a593Smuzhiyun reg = <0x0 0xfd5dc000 0x0 0x4000>; 2883*4882a593Smuzhiyun #address-cells = <1>; 2884*4882a593Smuzhiyun #size-cells = <1>; 2885*4882a593Smuzhiyun 2886*4882a593Smuzhiyun u2phy3: usb2-phy@c000 { 2887*4882a593Smuzhiyun compatible = "rockchip,rk3588-usb2phy"; 2888*4882a593Smuzhiyun reg = <0xc000 0x10>; 2889*4882a593Smuzhiyun interrupts = <GIC_SPI 392 IRQ_TYPE_LEVEL_HIGH>; 2890*4882a593Smuzhiyun resets = <&cru SRST_OTGPHY_U2_1>, <&cru SRST_P_USB2PHY_U2_1_GRF0>; 2891*4882a593Smuzhiyun reset-names = "phy", "apb"; 2892*4882a593Smuzhiyun clocks = <&cru CLK_USB2PHY_HDPTXRXPHY_REF>; 2893*4882a593Smuzhiyun clock-names = "phyclk"; 2894*4882a593Smuzhiyun clock-output-names = "usb480m_phy3"; 2895*4882a593Smuzhiyun #clock-cells = <0>; 2896*4882a593Smuzhiyun status = "disabled"; 2897*4882a593Smuzhiyun 2898*4882a593Smuzhiyun u2phy3_host: host-port { 2899*4882a593Smuzhiyun #phy-cells = <0>; 2900*4882a593Smuzhiyun status = "disabled"; 2901*4882a593Smuzhiyun }; 2902*4882a593Smuzhiyun }; 2903*4882a593Smuzhiyun }; 2904*4882a593Smuzhiyun 2905*4882a593Smuzhiyun hdptxphy0_grf: syscon@fd5e0000 { 2906*4882a593Smuzhiyun compatible = "rockchip,rk3588-hdptxphy-grf", "syscon"; 2907*4882a593Smuzhiyun reg = <0x0 0xfd5e0000 0x0 0x100>; 2908*4882a593Smuzhiyun }; 2909*4882a593Smuzhiyun 2910*4882a593Smuzhiyun mipidcphy0_grf: syscon@fd5e8000 { 2911*4882a593Smuzhiyun compatible = "rockchip,mipi-dcphy-grf", "syscon"; 2912*4882a593Smuzhiyun reg = <0x0 0xfd5e8000 0x0 0x4000>; 2913*4882a593Smuzhiyun }; 2914*4882a593Smuzhiyun 2915*4882a593Smuzhiyun mipidcphy1_grf: syscon@fd5ec000 { 2916*4882a593Smuzhiyun compatible = "rockchip,mipi-dcphy-grf", "syscon"; 2917*4882a593Smuzhiyun reg = <0x0 0xfd5ec000 0x0 0x4000>; 2918*4882a593Smuzhiyun }; 2919*4882a593Smuzhiyun 2920*4882a593Smuzhiyun ioc: syscon@fd5f0000 { 2921*4882a593Smuzhiyun compatible = "rockchip,rk3588-ioc", "syscon"; 2922*4882a593Smuzhiyun reg = <0x0 0xfd5f0000 0x0 0x10000>; 2923*4882a593Smuzhiyun }; 2924*4882a593Smuzhiyun 2925*4882a593Smuzhiyun cru: clock-controller@fd7c0000 { 2926*4882a593Smuzhiyun compatible = "rockchip,rk3588-cru"; 2927*4882a593Smuzhiyun rockchip,grf = <&php_grf>; 2928*4882a593Smuzhiyun reg = <0x0 0xfd7c0000 0x0 0x5c000>; 2929*4882a593Smuzhiyun #clock-cells = <1>; 2930*4882a593Smuzhiyun #reset-cells = <1>; 2931*4882a593Smuzhiyun 2932*4882a593Smuzhiyun assigned-clocks = 2933*4882a593Smuzhiyun <&cru PLL_PPLL>, <&cru PLL_AUPLL>, 2934*4882a593Smuzhiyun <&cru PLL_NPLL>, <&cru PLL_GPLL>, 2935*4882a593Smuzhiyun <&cru ACLK_CENTER_ROOT>, 2936*4882a593Smuzhiyun <&cru HCLK_CENTER_ROOT>, <&cru ACLK_CENTER_LOW_ROOT>, 2937*4882a593Smuzhiyun <&cru ACLK_TOP_ROOT>, <&cru PCLK_TOP_ROOT>, 2938*4882a593Smuzhiyun <&cru ACLK_LOW_TOP_ROOT>, <&cru PCLK_PMU0_ROOT>, 2939*4882a593Smuzhiyun <&cru HCLK_PMU_CM0_ROOT>, 2940*4882a593Smuzhiyun <&cru ACLK_BUS_ROOT>, <&cru CLK_150M_SRC>, 2941*4882a593Smuzhiyun <&cru CLK_GPU>, <&cru CLK_SPDIF2_DP0>, 2942*4882a593Smuzhiyun <&cru CLK_SPDIF5_DP1>, <&cru CLK_HDMIRX_AUD>, 2943*4882a593Smuzhiyun <&cru DCLK_DECOM>; 2944*4882a593Smuzhiyun assigned-clock-rates = 2945*4882a593Smuzhiyun <1100000000>, <786432000>, 2946*4882a593Smuzhiyun <850000000>, <1188000000>, 2947*4882a593Smuzhiyun <702000000>, 2948*4882a593Smuzhiyun <400000000>, <500000000>, 2949*4882a593Smuzhiyun <750000000>, <100000000>, 2950*4882a593Smuzhiyun <400000000>, <100000000>, 2951*4882a593Smuzhiyun <200000000>, 2952*4882a593Smuzhiyun <375000000>, <150000000>, 2953*4882a593Smuzhiyun <200000000>, <12000000>, 2954*4882a593Smuzhiyun <12000000>, <99000000>, 2955*4882a593Smuzhiyun <20000000>; 2956*4882a593Smuzhiyun }; 2957*4882a593Smuzhiyun 2958*4882a593Smuzhiyun i2c0: i2c@fd880000 { 2959*4882a593Smuzhiyun compatible = "rockchip,rk3588-i2c", "rockchip,rk3399-i2c"; 2960*4882a593Smuzhiyun reg = <0x0 0xfd880000 0x0 0x1000>; 2961*4882a593Smuzhiyun clocks = <&cru CLK_I2C0>, <&cru PCLK_I2C0>; 2962*4882a593Smuzhiyun clock-names = "i2c", "pclk"; 2963*4882a593Smuzhiyun interrupts = <GIC_SPI 317 IRQ_TYPE_LEVEL_HIGH>; 2964*4882a593Smuzhiyun pinctrl-names = "default"; 2965*4882a593Smuzhiyun pinctrl-0 = <&i2c0m0_xfer>; 2966*4882a593Smuzhiyun #address-cells = <1>; 2967*4882a593Smuzhiyun #size-cells = <0>; 2968*4882a593Smuzhiyun status = "disabled"; 2969*4882a593Smuzhiyun }; 2970*4882a593Smuzhiyun 2971*4882a593Smuzhiyun uart0: serial@fd890000 { 2972*4882a593Smuzhiyun compatible = "rockchip,rk3588-uart", "snps,dw-apb-uart"; 2973*4882a593Smuzhiyun reg = <0x0 0xfd890000 0x0 0x100>; 2974*4882a593Smuzhiyun interrupts = <GIC_SPI 331 IRQ_TYPE_LEVEL_HIGH>; 2975*4882a593Smuzhiyun clocks = <&cru SCLK_UART0>, <&cru PCLK_UART0>; 2976*4882a593Smuzhiyun clock-names = "baudclk", "apb_pclk"; 2977*4882a593Smuzhiyun reg-shift = <2>; 2978*4882a593Smuzhiyun reg-io-width = <4>; 2979*4882a593Smuzhiyun dmas = <&dmac0 6>, <&dmac0 7>; 2980*4882a593Smuzhiyun pinctrl-names = "default"; 2981*4882a593Smuzhiyun pinctrl-0 = <&uart0m1_xfer>; 2982*4882a593Smuzhiyun status = "disabled"; 2983*4882a593Smuzhiyun }; 2984*4882a593Smuzhiyun 2985*4882a593Smuzhiyun pwm0: pwm@fd8b0000 { 2986*4882a593Smuzhiyun compatible = "rockchip,rk3588-pwm", "rockchip,rk3328-pwm"; 2987*4882a593Smuzhiyun reg = <0x0 0xfd8b0000 0x0 0x10>; 2988*4882a593Smuzhiyun interrupts = <GIC_SPI 344 IRQ_TYPE_LEVEL_HIGH>; 2989*4882a593Smuzhiyun #pwm-cells = <3>; 2990*4882a593Smuzhiyun pinctrl-names = "active"; 2991*4882a593Smuzhiyun pinctrl-0 = <&pwm0m0_pins>; 2992*4882a593Smuzhiyun clocks = <&cru CLK_PMU1PWM>, <&cru PCLK_PMU1PWM>; 2993*4882a593Smuzhiyun clock-names = "pwm", "pclk"; 2994*4882a593Smuzhiyun status = "disabled"; 2995*4882a593Smuzhiyun }; 2996*4882a593Smuzhiyun 2997*4882a593Smuzhiyun pwm1: pwm@fd8b0010 { 2998*4882a593Smuzhiyun compatible = "rockchip,rk3588-pwm", "rockchip,rk3328-pwm"; 2999*4882a593Smuzhiyun reg = <0x0 0xfd8b0010 0x0 0x10>; 3000*4882a593Smuzhiyun interrupts = <GIC_SPI 344 IRQ_TYPE_LEVEL_HIGH>; 3001*4882a593Smuzhiyun #pwm-cells = <3>; 3002*4882a593Smuzhiyun pinctrl-names = "active"; 3003*4882a593Smuzhiyun pinctrl-0 = <&pwm1m0_pins>; 3004*4882a593Smuzhiyun clocks = <&cru CLK_PMU1PWM>, <&cru PCLK_PMU1PWM>; 3005*4882a593Smuzhiyun clock-names = "pwm", "pclk"; 3006*4882a593Smuzhiyun status = "disabled"; 3007*4882a593Smuzhiyun }; 3008*4882a593Smuzhiyun 3009*4882a593Smuzhiyun pwm2: pwm@fd8b0020 { 3010*4882a593Smuzhiyun compatible = "rockchip,rk3588-pwm", "rockchip,rk3328-pwm"; 3011*4882a593Smuzhiyun reg = <0x0 0xfd8b0020 0x0 0x10>; 3012*4882a593Smuzhiyun interrupts = <GIC_SPI 344 IRQ_TYPE_LEVEL_HIGH>; 3013*4882a593Smuzhiyun #pwm-cells = <3>; 3014*4882a593Smuzhiyun pinctrl-names = "active"; 3015*4882a593Smuzhiyun pinctrl-0 = <&pwm2m0_pins>; 3016*4882a593Smuzhiyun clocks = <&cru CLK_PMU1PWM>, <&cru PCLK_PMU1PWM>; 3017*4882a593Smuzhiyun clock-names = "pwm", "pclk"; 3018*4882a593Smuzhiyun status = "disabled"; 3019*4882a593Smuzhiyun }; 3020*4882a593Smuzhiyun 3021*4882a593Smuzhiyun pwm3: pwm@fd8b0030 { 3022*4882a593Smuzhiyun compatible = "rockchip,rk3588-pwm", "rockchip,rk3328-pwm"; 3023*4882a593Smuzhiyun reg = <0x0 0xfd8b0030 0x0 0x10>; 3024*4882a593Smuzhiyun interrupts = <GIC_SPI 344 IRQ_TYPE_LEVEL_HIGH>, 3025*4882a593Smuzhiyun <GIC_SPI 345 IRQ_TYPE_LEVEL_HIGH>; 3026*4882a593Smuzhiyun #pwm-cells = <3>; 3027*4882a593Smuzhiyun pinctrl-names = "active"; 3028*4882a593Smuzhiyun pinctrl-0 = <&pwm3m0_pins>; 3029*4882a593Smuzhiyun clocks = <&cru CLK_PMU1PWM>, <&cru PCLK_PMU1PWM>; 3030*4882a593Smuzhiyun clock-names = "pwm", "pclk"; 3031*4882a593Smuzhiyun status = "disabled"; 3032*4882a593Smuzhiyun }; 3033*4882a593Smuzhiyun 3034*4882a593Smuzhiyun pmu: power-management@fd8d8000 { 3035*4882a593Smuzhiyun compatible = "rockchip,rk3588-pmu", "syscon", "simple-mfd"; 3036*4882a593Smuzhiyun reg = <0x0 0xfd8d8000 0x0 0x400>; 3037*4882a593Smuzhiyun 3038*4882a593Smuzhiyun power: power-controller { 3039*4882a593Smuzhiyun compatible = "rockchip,rk3588-power-controller"; 3040*4882a593Smuzhiyun #power-domain-cells = <1>; 3041*4882a593Smuzhiyun #address-cells = <1>; 3042*4882a593Smuzhiyun #size-cells = <0>; 3043*4882a593Smuzhiyun status = "okay"; 3044*4882a593Smuzhiyun 3045*4882a593Smuzhiyun /* These power domains are grouped by VD_NPU */ 3046*4882a593Smuzhiyun power-domain@RK3588_PD_NPU { 3047*4882a593Smuzhiyun reg = <RK3588_PD_NPU>; 3048*4882a593Smuzhiyun #address-cells = <1>; 3049*4882a593Smuzhiyun #size-cells = <0>; 3050*4882a593Smuzhiyun 3051*4882a593Smuzhiyun power-domain@RK3588_PD_NPUTOP { 3052*4882a593Smuzhiyun reg = <RK3588_PD_NPUTOP>; 3053*4882a593Smuzhiyun #address-cells = <1>; 3054*4882a593Smuzhiyun #size-cells = <0>; 3055*4882a593Smuzhiyun clocks = <&cru HCLK_NPU_ROOT>, 3056*4882a593Smuzhiyun <&cru PCLK_NPU_ROOT>, 3057*4882a593Smuzhiyun <&cru CLK_NPU_DSU0>, 3058*4882a593Smuzhiyun <&cru HCLK_NPU_CM0_ROOT>; 3059*4882a593Smuzhiyun pm_qos = <&qos_npu0_mwr>, 3060*4882a593Smuzhiyun <&qos_npu0_mro>, 3061*4882a593Smuzhiyun <&qos_mcu_npu>; 3062*4882a593Smuzhiyun 3063*4882a593Smuzhiyun power-domain@RK3588_PD_NPU1 { 3064*4882a593Smuzhiyun reg = <RK3588_PD_NPU1>; 3065*4882a593Smuzhiyun clocks = <&cru HCLK_NPU_ROOT>, 3066*4882a593Smuzhiyun <&cru PCLK_NPU_ROOT>, 3067*4882a593Smuzhiyun <&cru CLK_NPU_DSU0>; 3068*4882a593Smuzhiyun pm_qos = <&qos_npu1>; 3069*4882a593Smuzhiyun }; 3070*4882a593Smuzhiyun power-domain@RK3588_PD_NPU2 { 3071*4882a593Smuzhiyun reg = <RK3588_PD_NPU2>; 3072*4882a593Smuzhiyun clocks = <&cru HCLK_NPU_ROOT>, 3073*4882a593Smuzhiyun <&cru PCLK_NPU_ROOT>, 3074*4882a593Smuzhiyun <&cru CLK_NPU_DSU0>; 3075*4882a593Smuzhiyun pm_qos = <&qos_npu2>; 3076*4882a593Smuzhiyun }; 3077*4882a593Smuzhiyun }; 3078*4882a593Smuzhiyun }; 3079*4882a593Smuzhiyun /* These power domains are grouped by VD_GPU */ 3080*4882a593Smuzhiyun power-domain@RK3588_PD_GPU { 3081*4882a593Smuzhiyun reg = <RK3588_PD_GPU>; 3082*4882a593Smuzhiyun clocks = <&cru CLK_GPU>, 3083*4882a593Smuzhiyun <&cru CLK_GPU_COREGROUP>, 3084*4882a593Smuzhiyun <&cru CLK_GPU_STACKS>; 3085*4882a593Smuzhiyun pm_qos = <&qos_gpu_m0>, 3086*4882a593Smuzhiyun <&qos_gpu_m1>, 3087*4882a593Smuzhiyun <&qos_gpu_m2>, 3088*4882a593Smuzhiyun <&qos_gpu_m3>; 3089*4882a593Smuzhiyun }; 3090*4882a593Smuzhiyun /* These power domains are grouped by VD_VCODEC */ 3091*4882a593Smuzhiyun power-domain@RK3588_PD_VCODEC { 3092*4882a593Smuzhiyun reg = <RK3588_PD_VCODEC>; 3093*4882a593Smuzhiyun #address-cells = <1>; 3094*4882a593Smuzhiyun #size-cells = <0>; 3095*4882a593Smuzhiyun 3096*4882a593Smuzhiyun power-domain@RK3588_PD_RKVDEC0 { 3097*4882a593Smuzhiyun reg = <RK3588_PD_RKVDEC0>; 3098*4882a593Smuzhiyun clocks = <&cru HCLK_RKVDEC0>, 3099*4882a593Smuzhiyun <&cru HCLK_VDPU_ROOT>, 3100*4882a593Smuzhiyun <&cru ACLK_VDPU_ROOT>, 3101*4882a593Smuzhiyun <&cru ACLK_RKVDEC0>, 3102*4882a593Smuzhiyun <&cru ACLK_RKVDEC_CCU>; 3103*4882a593Smuzhiyun pm_qos = <&qos_rkvdec0>; 3104*4882a593Smuzhiyun }; 3105*4882a593Smuzhiyun power-domain@RK3588_PD_RKVDEC1 { 3106*4882a593Smuzhiyun reg = <RK3588_PD_RKVDEC1>; 3107*4882a593Smuzhiyun clocks = <&cru HCLK_RKVDEC1>, 3108*4882a593Smuzhiyun <&cru HCLK_VDPU_ROOT>, 3109*4882a593Smuzhiyun <&cru ACLK_VDPU_ROOT>, 3110*4882a593Smuzhiyun <&cru ACLK_RKVDEC1>; 3111*4882a593Smuzhiyun pm_qos = <&qos_rkvdec1>; 3112*4882a593Smuzhiyun }; 3113*4882a593Smuzhiyun power-domain@RK3588_PD_VENC0 { 3114*4882a593Smuzhiyun reg = <RK3588_PD_VENC0>; 3115*4882a593Smuzhiyun #address-cells = <1>; 3116*4882a593Smuzhiyun #size-cells = <0>; 3117*4882a593Smuzhiyun clocks = <&cru HCLK_RKVENC0>, 3118*4882a593Smuzhiyun <&cru ACLK_RKVENC0>; 3119*4882a593Smuzhiyun pm_qos = <&qos_rkvenc0_m0ro>, 3120*4882a593Smuzhiyun <&qos_rkvenc0_m1ro>, 3121*4882a593Smuzhiyun <&qos_rkvenc0_m2wo>; 3122*4882a593Smuzhiyun 3123*4882a593Smuzhiyun power-domain@RK3588_PD_VENC1 { 3124*4882a593Smuzhiyun reg = <RK3588_PD_VENC1>; 3125*4882a593Smuzhiyun clocks = <&cru HCLK_RKVENC1>, 3126*4882a593Smuzhiyun <&cru HCLK_RKVENC0>, 3127*4882a593Smuzhiyun <&cru ACLK_RKVENC0>, 3128*4882a593Smuzhiyun <&cru ACLK_RKVENC1>; 3129*4882a593Smuzhiyun pm_qos = <&qos_rkvenc1_m0ro>, 3130*4882a593Smuzhiyun <&qos_rkvenc1_m1ro>, 3131*4882a593Smuzhiyun <&qos_rkvenc1_m2wo>; 3132*4882a593Smuzhiyun }; 3133*4882a593Smuzhiyun }; 3134*4882a593Smuzhiyun }; 3135*4882a593Smuzhiyun /* These power domains are grouped by VD_LOGIC */ 3136*4882a593Smuzhiyun power-domain@RK3588_PD_VDPU { 3137*4882a593Smuzhiyun reg = <RK3588_PD_VDPU>; 3138*4882a593Smuzhiyun #address-cells = <1>; 3139*4882a593Smuzhiyun #size-cells = <0>; 3140*4882a593Smuzhiyun clocks = <&cru HCLK_VDPU_ROOT>, 3141*4882a593Smuzhiyun <&cru ACLK_VDPU_LOW_ROOT>, 3142*4882a593Smuzhiyun <&cru ACLK_VDPU_ROOT>, 3143*4882a593Smuzhiyun <&cru ACLK_JPEG_DECODER_ROOT>, 3144*4882a593Smuzhiyun <&cru ACLK_IEP2P0>, 3145*4882a593Smuzhiyun <&cru HCLK_IEP2P0>, 3146*4882a593Smuzhiyun <&cru ACLK_JPEG_ENCODER0>, 3147*4882a593Smuzhiyun <&cru HCLK_JPEG_ENCODER0>, 3148*4882a593Smuzhiyun <&cru ACLK_JPEG_ENCODER1>, 3149*4882a593Smuzhiyun <&cru HCLK_JPEG_ENCODER1>, 3150*4882a593Smuzhiyun <&cru ACLK_JPEG_ENCODER2>, 3151*4882a593Smuzhiyun <&cru HCLK_JPEG_ENCODER2>, 3152*4882a593Smuzhiyun <&cru ACLK_JPEG_ENCODER3>, 3153*4882a593Smuzhiyun <&cru HCLK_JPEG_ENCODER3>, 3154*4882a593Smuzhiyun <&cru ACLK_JPEG_DECODER>, 3155*4882a593Smuzhiyun <&cru HCLK_JPEG_DECODER>, 3156*4882a593Smuzhiyun <&cru ACLK_RGA2>, 3157*4882a593Smuzhiyun <&cru HCLK_RGA2>; 3158*4882a593Smuzhiyun pm_qos = <&qos_iep>, 3159*4882a593Smuzhiyun <&qos_jpeg_dec>, 3160*4882a593Smuzhiyun <&qos_jpeg_enc0>, 3161*4882a593Smuzhiyun <&qos_jpeg_enc1>, 3162*4882a593Smuzhiyun <&qos_jpeg_enc2>, 3163*4882a593Smuzhiyun <&qos_jpeg_enc3>, 3164*4882a593Smuzhiyun <&qos_rga2_mro>, 3165*4882a593Smuzhiyun <&qos_rga2_mwo>; 3166*4882a593Smuzhiyun 3167*4882a593Smuzhiyun power-domain@RK3588_PD_AV1 { 3168*4882a593Smuzhiyun reg = <RK3588_PD_AV1>; 3169*4882a593Smuzhiyun clocks = <&cru PCLK_AV1>, 3170*4882a593Smuzhiyun <&cru ACLK_AV1>, 3171*4882a593Smuzhiyun <&cru HCLK_VDPU_ROOT>; 3172*4882a593Smuzhiyun pm_qos = <&qos_av1>; 3173*4882a593Smuzhiyun }; 3174*4882a593Smuzhiyun power-domain@RK3588_PD_RKVDEC0 { 3175*4882a593Smuzhiyun reg = <RK3588_PD_RKVDEC0>; 3176*4882a593Smuzhiyun clocks = <&cru HCLK_RKVDEC0>, 3177*4882a593Smuzhiyun <&cru HCLK_VDPU_ROOT>, 3178*4882a593Smuzhiyun <&cru ACLK_VDPU_ROOT>, 3179*4882a593Smuzhiyun <&cru ACLK_RKVDEC0>; 3180*4882a593Smuzhiyun pm_qos = <&qos_rkvdec0>; 3181*4882a593Smuzhiyun }; 3182*4882a593Smuzhiyun power-domain@RK3588_PD_RKVDEC1 { 3183*4882a593Smuzhiyun reg = <RK3588_PD_RKVDEC1>; 3184*4882a593Smuzhiyun clocks = <&cru HCLK_RKVDEC1>, 3185*4882a593Smuzhiyun <&cru HCLK_VDPU_ROOT>, 3186*4882a593Smuzhiyun <&cru ACLK_VDPU_ROOT>; 3187*4882a593Smuzhiyun pm_qos = <&qos_rkvdec1>; 3188*4882a593Smuzhiyun }; 3189*4882a593Smuzhiyun power-domain@RK3588_PD_RGA30 { 3190*4882a593Smuzhiyun reg = <RK3588_PD_RGA30>; 3191*4882a593Smuzhiyun clocks = <&cru ACLK_RGA3_0>, 3192*4882a593Smuzhiyun <&cru HCLK_RGA3_0>; 3193*4882a593Smuzhiyun pm_qos = <&qos_rga3_0>; 3194*4882a593Smuzhiyun }; 3195*4882a593Smuzhiyun }; 3196*4882a593Smuzhiyun power-domain@RK3588_PD_VOP { 3197*4882a593Smuzhiyun reg = <RK3588_PD_VOP>; 3198*4882a593Smuzhiyun #address-cells = <1>; 3199*4882a593Smuzhiyun #size-cells = <0>; 3200*4882a593Smuzhiyun clocks = <&cru PCLK_VOP_ROOT>, 3201*4882a593Smuzhiyun <&cru HCLK_VOP_ROOT>, 3202*4882a593Smuzhiyun <&cru ACLK_VOP>; 3203*4882a593Smuzhiyun pm_qos = <&qos_vop_m0>, 3204*4882a593Smuzhiyun <&qos_vop_m1>; 3205*4882a593Smuzhiyun 3206*4882a593Smuzhiyun power-domain@RK3588_PD_VO0 { 3207*4882a593Smuzhiyun reg = <RK3588_PD_VO0>; 3208*4882a593Smuzhiyun clocks = <&cru PCLK_VO0_ROOT>, 3209*4882a593Smuzhiyun <&cru PCLK_VO0_S_ROOT>, 3210*4882a593Smuzhiyun <&cru HCLK_VO0_S_ROOT>, 3211*4882a593Smuzhiyun <&cru ACLK_VO0_ROOT>, 3212*4882a593Smuzhiyun <&cru HCLK_HDCP0>, 3213*4882a593Smuzhiyun <&cru ACLK_HDCP0>, 3214*4882a593Smuzhiyun <&cru HCLK_VOP_ROOT>; 3215*4882a593Smuzhiyun pm_qos = <&qos_hdcp0>; 3216*4882a593Smuzhiyun }; 3217*4882a593Smuzhiyun }; 3218*4882a593Smuzhiyun power-domain@RK3588_PD_VO1 { 3219*4882a593Smuzhiyun reg = <RK3588_PD_VO1>; 3220*4882a593Smuzhiyun clocks = <&cru PCLK_VO1_ROOT>, 3221*4882a593Smuzhiyun <&cru PCLK_VO1_S_ROOT>, 3222*4882a593Smuzhiyun <&cru HCLK_VO1_S_ROOT>, 3223*4882a593Smuzhiyun <&cru HCLK_HDCP1>, 3224*4882a593Smuzhiyun <&cru ACLK_HDCP1>, 3225*4882a593Smuzhiyun <&cru ACLK_HDMIRX_ROOT>, 3226*4882a593Smuzhiyun <&cru HCLK_VO1USB_TOP_ROOT>; 3227*4882a593Smuzhiyun pm_qos = <&qos_hdcp1>, 3228*4882a593Smuzhiyun <&qos_hdmirx>; 3229*4882a593Smuzhiyun }; 3230*4882a593Smuzhiyun power-domain@RK3588_PD_VI { 3231*4882a593Smuzhiyun reg = <RK3588_PD_VI>; 3232*4882a593Smuzhiyun #address-cells = <1>; 3233*4882a593Smuzhiyun #size-cells = <0>; 3234*4882a593Smuzhiyun clocks = <&cru HCLK_VI_ROOT>, 3235*4882a593Smuzhiyun <&cru PCLK_VI_ROOT>, 3236*4882a593Smuzhiyun <&cru HCLK_ISP0>, 3237*4882a593Smuzhiyun <&cru ACLK_ISP0>, 3238*4882a593Smuzhiyun <&cru HCLK_VICAP>, 3239*4882a593Smuzhiyun <&cru ACLK_VICAP>; 3240*4882a593Smuzhiyun pm_qos = <&qos_isp0_mro>, 3241*4882a593Smuzhiyun <&qos_isp0_mwo>, 3242*4882a593Smuzhiyun <&qos_vicap_m0>, 3243*4882a593Smuzhiyun <&qos_vicap_m1>; 3244*4882a593Smuzhiyun 3245*4882a593Smuzhiyun power-domain@RK3588_PD_ISP1 { 3246*4882a593Smuzhiyun reg = <RK3588_PD_ISP1>; 3247*4882a593Smuzhiyun clocks = <&cru HCLK_ISP1>, 3248*4882a593Smuzhiyun <&cru ACLK_ISP1>, 3249*4882a593Smuzhiyun <&cru HCLK_VI_ROOT>, 3250*4882a593Smuzhiyun <&cru PCLK_VI_ROOT>; 3251*4882a593Smuzhiyun pm_qos = <&qos_isp1_mwo>, 3252*4882a593Smuzhiyun <&qos_isp1_mro>; 3253*4882a593Smuzhiyun }; 3254*4882a593Smuzhiyun power-domain@RK3588_PD_FEC { 3255*4882a593Smuzhiyun reg = <RK3588_PD_FEC>; 3256*4882a593Smuzhiyun clocks = <&cru HCLK_FISHEYE0>, 3257*4882a593Smuzhiyun <&cru ACLK_FISHEYE0>, 3258*4882a593Smuzhiyun <&cru HCLK_FISHEYE1>, 3259*4882a593Smuzhiyun <&cru ACLK_FISHEYE1>, 3260*4882a593Smuzhiyun <&cru PCLK_VI_ROOT>; 3261*4882a593Smuzhiyun pm_qos = <&qos_fisheye0>, 3262*4882a593Smuzhiyun <&qos_fisheye1>; 3263*4882a593Smuzhiyun }; 3264*4882a593Smuzhiyun }; 3265*4882a593Smuzhiyun power-domain@RK3588_PD_RGA31 { 3266*4882a593Smuzhiyun reg = <RK3588_PD_RGA31>; 3267*4882a593Smuzhiyun clocks = <&cru HCLK_RGA3_1>, 3268*4882a593Smuzhiyun <&cru ACLK_RGA3_1>; 3269*4882a593Smuzhiyun pm_qos = <&qos_rga3_1>; 3270*4882a593Smuzhiyun }; 3271*4882a593Smuzhiyun power-domain@RK3588_PD_USB { 3272*4882a593Smuzhiyun reg = <RK3588_PD_USB>; 3273*4882a593Smuzhiyun clocks = <&cru PCLK_PHP_ROOT>, 3274*4882a593Smuzhiyun <&cru ACLK_USB_ROOT>, 3275*4882a593Smuzhiyun <&cru HCLK_USB_ROOT>, 3276*4882a593Smuzhiyun <&cru HCLK_HOST0>, 3277*4882a593Smuzhiyun <&cru HCLK_HOST_ARB0>, 3278*4882a593Smuzhiyun <&cru HCLK_HOST1>, 3279*4882a593Smuzhiyun <&cru HCLK_HOST_ARB1>; 3280*4882a593Smuzhiyun pm_qos = <&qos_usb3_0>, 3281*4882a593Smuzhiyun <&qos_usb3_1>, 3282*4882a593Smuzhiyun <&qos_usb2host_0>, 3283*4882a593Smuzhiyun <&qos_usb2host_1>; 3284*4882a593Smuzhiyun }; 3285*4882a593Smuzhiyun power-domain@RK3588_PD_GMAC { 3286*4882a593Smuzhiyun reg = <RK3588_PD_GMAC>; 3287*4882a593Smuzhiyun clocks = <&cru PCLK_PHP_ROOT>, 3288*4882a593Smuzhiyun <&cru ACLK_PCIE_ROOT>, 3289*4882a593Smuzhiyun <&cru ACLK_PHP_ROOT>; 3290*4882a593Smuzhiyun }; 3291*4882a593Smuzhiyun power-domain@RK3588_PD_PCIE { 3292*4882a593Smuzhiyun reg = <RK3588_PD_PCIE>; 3293*4882a593Smuzhiyun clocks = <&cru PCLK_PHP_ROOT>, 3294*4882a593Smuzhiyun <&cru ACLK_PCIE_ROOT>, 3295*4882a593Smuzhiyun <&cru ACLK_PHP_ROOT>; 3296*4882a593Smuzhiyun }; 3297*4882a593Smuzhiyun power-domain@RK3588_PD_SDIO { 3298*4882a593Smuzhiyun reg = <RK3588_PD_SDIO>; 3299*4882a593Smuzhiyun clocks = <&cru HCLK_SDIO>, 3300*4882a593Smuzhiyun <&cru HCLK_NVM_ROOT>; 3301*4882a593Smuzhiyun pm_qos = <&qos_sdio>; 3302*4882a593Smuzhiyun }; 3303*4882a593Smuzhiyun power-domain@RK3588_PD_AUDIO { 3304*4882a593Smuzhiyun reg = <RK3588_PD_AUDIO>; 3305*4882a593Smuzhiyun clocks = <&cru HCLK_AUDIO_ROOT>, 3306*4882a593Smuzhiyun <&cru PCLK_AUDIO_ROOT>; 3307*4882a593Smuzhiyun }; 3308*4882a593Smuzhiyun power-domain@RK3588_PD_SDMMC { 3309*4882a593Smuzhiyun reg = <RK3588_PD_SDMMC>; 3310*4882a593Smuzhiyun pm_qos = <&qos_sdmmc>; 3311*4882a593Smuzhiyun }; 3312*4882a593Smuzhiyun }; 3313*4882a593Smuzhiyun }; 3314*4882a593Smuzhiyun 3315*4882a593Smuzhiyun pvtm@fda40000 { 3316*4882a593Smuzhiyun compatible = "rockchip,rk3588-bigcore0-pvtm"; 3317*4882a593Smuzhiyun reg = <0x0 0xfda40000 0x0 0x100>; 3318*4882a593Smuzhiyun #address-cells = <1>; 3319*4882a593Smuzhiyun #size-cells = <0>; 3320*4882a593Smuzhiyun pvtm@0 { 3321*4882a593Smuzhiyun reg = <0>; 3322*4882a593Smuzhiyun clocks = <&cru CLK_BIGCORE0_PVTM>, <&cru PCLK_BIGCORE0_PVTM>; 3323*4882a593Smuzhiyun clock-names = "clk", "pclk"; 3324*4882a593Smuzhiyun }; 3325*4882a593Smuzhiyun }; 3326*4882a593Smuzhiyun 3327*4882a593Smuzhiyun pvtm@fda50000 { 3328*4882a593Smuzhiyun compatible = "rockchip,rk3588-bigcore1-pvtm"; 3329*4882a593Smuzhiyun reg = <0x0 0xfda50000 0x0 0x100>; 3330*4882a593Smuzhiyun #address-cells = <1>; 3331*4882a593Smuzhiyun #size-cells = <0>; 3332*4882a593Smuzhiyun pvtm@1 { 3333*4882a593Smuzhiyun reg = <1>; 3334*4882a593Smuzhiyun clocks = <&cru CLK_BIGCORE1_PVTM>, <&cru PCLK_BIGCORE1_PVTM>; 3335*4882a593Smuzhiyun clock-names = "clk", "pclk"; 3336*4882a593Smuzhiyun }; 3337*4882a593Smuzhiyun }; 3338*4882a593Smuzhiyun 3339*4882a593Smuzhiyun pvtm@fda60000 { 3340*4882a593Smuzhiyun compatible = "rockchip,rk3588-litcore-pvtm"; 3341*4882a593Smuzhiyun reg = <0x0 0xfda60000 0x0 0x100>; 3342*4882a593Smuzhiyun #address-cells = <1>; 3343*4882a593Smuzhiyun #size-cells = <0>; 3344*4882a593Smuzhiyun pvtm@2 { 3345*4882a593Smuzhiyun reg = <2>; 3346*4882a593Smuzhiyun clocks = <&cru CLK_LITCORE_PVTM>, <&cru PCLK_LITCORE_PVTM>; 3347*4882a593Smuzhiyun clock-names = "clk", "pclk"; 3348*4882a593Smuzhiyun }; 3349*4882a593Smuzhiyun }; 3350*4882a593Smuzhiyun 3351*4882a593Smuzhiyun pvtm@fdaf0000 { 3352*4882a593Smuzhiyun compatible = "rockchip,rk3588-npu-pvtm"; 3353*4882a593Smuzhiyun reg = <0x0 0xfdaf0000 0x0 0x100>; 3354*4882a593Smuzhiyun #address-cells = <1>; 3355*4882a593Smuzhiyun #size-cells = <0>; 3356*4882a593Smuzhiyun pvtm@3 { 3357*4882a593Smuzhiyun reg = <3>; 3358*4882a593Smuzhiyun clocks = <&cru CLK_NPU_PVTM>, <&cru PCLK_NPU_PVTM>; 3359*4882a593Smuzhiyun clock-names = "clk", "pclk"; 3360*4882a593Smuzhiyun resets = <&cru SRST_NPU_PVTM>, <&cru SRST_P_NPU_PVTM>; 3361*4882a593Smuzhiyun reset-names = "rts", "rst-p"; 3362*4882a593Smuzhiyun }; 3363*4882a593Smuzhiyun }; 3364*4882a593Smuzhiyun 3365*4882a593Smuzhiyun pvtm@fdb30000 { 3366*4882a593Smuzhiyun compatible = "rockchip,rk3588-gpu-pvtm"; 3367*4882a593Smuzhiyun reg = <0x0 0xfdb30000 0x0 0x100>; 3368*4882a593Smuzhiyun #address-cells = <1>; 3369*4882a593Smuzhiyun #size-cells = <0>; 3370*4882a593Smuzhiyun pvtm@4 { 3371*4882a593Smuzhiyun reg = <4>; 3372*4882a593Smuzhiyun clocks = <&cru CLK_GPU_PVTM>; 3373*4882a593Smuzhiyun clock-names = "clk"; 3374*4882a593Smuzhiyun resets = <&cru SRST_GPU_PVTM>, <&cru SRST_P_GPU_PVTM>; 3375*4882a593Smuzhiyun reset-names = "rts", "rst-p"; 3376*4882a593Smuzhiyun }; 3377*4882a593Smuzhiyun }; 3378*4882a593Smuzhiyun 3379*4882a593Smuzhiyun rknpu: npu@fdab0000 { 3380*4882a593Smuzhiyun compatible = "rockchip,rk3588-rknpu"; 3381*4882a593Smuzhiyun reg = <0x0 0xfdab0000 0x0 0x10000>, 3382*4882a593Smuzhiyun <0x0 0xfdac0000 0x0 0x10000>, 3383*4882a593Smuzhiyun <0x0 0xfdad0000 0x0 0x10000>; 3384*4882a593Smuzhiyun interrupts = <GIC_SPI 110 IRQ_TYPE_LEVEL_HIGH>, 3385*4882a593Smuzhiyun <GIC_SPI 111 IRQ_TYPE_LEVEL_HIGH>, 3386*4882a593Smuzhiyun <GIC_SPI 112 IRQ_TYPE_LEVEL_HIGH>; 3387*4882a593Smuzhiyun interrupt-names = "npu0_irq", "npu1_irq", "npu2_irq"; 3388*4882a593Smuzhiyun clocks = <&scmi_clk SCMI_CLK_NPU>, <&cru ACLK_NPU0>, 3389*4882a593Smuzhiyun <&cru ACLK_NPU1>, <&cru ACLK_NPU2>, 3390*4882a593Smuzhiyun <&cru HCLK_NPU0>, <&cru HCLK_NPU1>, 3391*4882a593Smuzhiyun <&cru HCLK_NPU2>, <&cru PCLK_NPU_ROOT>; 3392*4882a593Smuzhiyun clock-names = "clk_npu", "aclk0", 3393*4882a593Smuzhiyun "aclk1", "aclk2", 3394*4882a593Smuzhiyun "hclk0", "hclk1", 3395*4882a593Smuzhiyun "hclk2", "pclk"; 3396*4882a593Smuzhiyun assigned-clocks = <&scmi_clk SCMI_CLK_NPU>; 3397*4882a593Smuzhiyun assigned-clock-rates = <200000000>; 3398*4882a593Smuzhiyun resets = <&cru SRST_A_RKNN0>, <&cru SRST_A_RKNN1>, <&cru SRST_A_RKNN2>, 3399*4882a593Smuzhiyun <&cru SRST_H_RKNN0>, <&cru SRST_H_RKNN1>, <&cru SRST_H_RKNN2>; 3400*4882a593Smuzhiyun reset-names = "srst_a0", "srst_a1", "srst_a2", 3401*4882a593Smuzhiyun "srst_h0", "srst_h1", "srst_h2"; 3402*4882a593Smuzhiyun power-domains = <&power RK3588_PD_NPUTOP>, 3403*4882a593Smuzhiyun <&power RK3588_PD_NPU1>, 3404*4882a593Smuzhiyun <&power RK3588_PD_NPU2>; 3405*4882a593Smuzhiyun power-domain-names = "npu0", "npu1", "npu2"; 3406*4882a593Smuzhiyun operating-points-v2 = <&npu_opp_table>; 3407*4882a593Smuzhiyun iommus = <&rknpu_mmu>; 3408*4882a593Smuzhiyun status = "disabled"; 3409*4882a593Smuzhiyun }; 3410*4882a593Smuzhiyun 3411*4882a593Smuzhiyun npu_opp_table: npu-opp-table { 3412*4882a593Smuzhiyun compatible = "operating-points-v2"; 3413*4882a593Smuzhiyun 3414*4882a593Smuzhiyun nvmem-cells = <&npu_leakage>, <&npu_opp_info>, <&specification_serial_number>; 3415*4882a593Smuzhiyun nvmem-cell-names = "leakage", "opp-info", "specification_serial_number"; 3416*4882a593Smuzhiyun rockchip,supported-hw; 3417*4882a593Smuzhiyun 3418*4882a593Smuzhiyun rockchip,pvtm-hw = <0x06>; 3419*4882a593Smuzhiyun rockchip,pvtm-voltage-sel-hw = < 3420*4882a593Smuzhiyun 0 799 0 3421*4882a593Smuzhiyun 800 819 1 3422*4882a593Smuzhiyun 820 844 2 3423*4882a593Smuzhiyun 845 869 3 3424*4882a593Smuzhiyun 870 894 4 3425*4882a593Smuzhiyun 895 9999 5 3426*4882a593Smuzhiyun >; 3427*4882a593Smuzhiyun rockchip,pvtm-voltage-sel = < 3428*4882a593Smuzhiyun 0 815 0 3429*4882a593Smuzhiyun 816 835 1 3430*4882a593Smuzhiyun 836 860 2 3431*4882a593Smuzhiyun 861 885 3 3432*4882a593Smuzhiyun 886 910 4 3433*4882a593Smuzhiyun 911 9999 5 3434*4882a593Smuzhiyun >; 3435*4882a593Smuzhiyun rockchip,pvtm-pvtpll; 3436*4882a593Smuzhiyun rockchip,pvtm-offset = <0x50>; 3437*4882a593Smuzhiyun rockchip,pvtm-sample-time = <1100>; 3438*4882a593Smuzhiyun rockchip,pvtm-freq = <800000>; 3439*4882a593Smuzhiyun rockchip,pvtm-volt = <750000>; 3440*4882a593Smuzhiyun rockchip,pvtm-ref-temp = <25>; 3441*4882a593Smuzhiyun rockchip,pvtm-temp-prop = <(-113) (-113)>; 3442*4882a593Smuzhiyun rockchip,pvtm-thermal-zone = "npu-thermal"; 3443*4882a593Smuzhiyun 3444*4882a593Smuzhiyun clocks = <&cru PCLK_NPU_GRF>; 3445*4882a593Smuzhiyun clock-names = "pclk"; 3446*4882a593Smuzhiyun rockchip,grf = <&npu_grf>; 3447*4882a593Smuzhiyun volt-mem-read-margin = < 3448*4882a593Smuzhiyun 855000 1 3449*4882a593Smuzhiyun 765000 2 3450*4882a593Smuzhiyun 675000 3 3451*4882a593Smuzhiyun 495000 4 3452*4882a593Smuzhiyun >; 3453*4882a593Smuzhiyun low-volt-mem-read-margin = <4>; 3454*4882a593Smuzhiyun intermediate-threshold-freq = <500000>; /* KHz*/ 3455*4882a593Smuzhiyun rockchip,init-freq = <1000000>; /* KHz */ 3456*4882a593Smuzhiyun 3457*4882a593Smuzhiyun rockchip,temp-hysteresis = <5000>; 3458*4882a593Smuzhiyun rockchip,low-temp = <10000>; 3459*4882a593Smuzhiyun rockchip,low-temp-min-volt = <750000>; 3460*4882a593Smuzhiyun rockchip,high-temp = <85000>; 3461*4882a593Smuzhiyun rockchip,high-temp-max-freq = <800000>; 3462*4882a593Smuzhiyun 3463*4882a593Smuzhiyun /* RK3588 npu OPPs */ 3464*4882a593Smuzhiyun opp-300000000 { 3465*4882a593Smuzhiyun opp-supported-hw = <0xf9 0xffff>; 3466*4882a593Smuzhiyun opp-hz = /bits/ 64 <300000000>; 3467*4882a593Smuzhiyun opp-microvolt = <700000 700000 850000>, 3468*4882a593Smuzhiyun <700000 700000 850000>; 3469*4882a593Smuzhiyun opp-microvolt-L1 = <687500 687500 850000>, 3470*4882a593Smuzhiyun <687500 687500 850000>; 3471*4882a593Smuzhiyun opp-microvolt-L2 = <675000 675000 850000>, 3472*4882a593Smuzhiyun <675000 675000 850000>; 3473*4882a593Smuzhiyun opp-microvolt-L3 = <675000 675000 850000>, 3474*4882a593Smuzhiyun <675000 675000 850000>; 3475*4882a593Smuzhiyun opp-microvolt-L4 = <675000 675000 850000>, 3476*4882a593Smuzhiyun <675000 675000 850000>; 3477*4882a593Smuzhiyun opp-microvolt-L5 = <675000 675000 850000>, 3478*4882a593Smuzhiyun <675000 675000 850000>; 3479*4882a593Smuzhiyun }; 3480*4882a593Smuzhiyun opp-400000000 { 3481*4882a593Smuzhiyun opp-supported-hw = <0xf9 0xffff>; 3482*4882a593Smuzhiyun opp-hz = /bits/ 64 <400000000>; 3483*4882a593Smuzhiyun opp-microvolt = <700000 700000 850000>, 3484*4882a593Smuzhiyun <700000 700000 850000>; 3485*4882a593Smuzhiyun opp-microvolt-L1 = <687500 687500 850000>, 3486*4882a593Smuzhiyun <687500 687500 850000>; 3487*4882a593Smuzhiyun opp-microvolt-L2 = <675000 675000 850000>, 3488*4882a593Smuzhiyun <675000 675000 850000>; 3489*4882a593Smuzhiyun opp-microvolt-L3 = <675000 675000 850000>, 3490*4882a593Smuzhiyun <675000 675000 850000>; 3491*4882a593Smuzhiyun opp-microvolt-L4 = <675000 675000 850000>, 3492*4882a593Smuzhiyun <675000 675000 850000>; 3493*4882a593Smuzhiyun opp-microvolt-L5 = <675000 675000 850000>, 3494*4882a593Smuzhiyun <675000 675000 850000>; 3495*4882a593Smuzhiyun }; 3496*4882a593Smuzhiyun opp-500000000 { 3497*4882a593Smuzhiyun opp-supported-hw = <0xf9 0xffff>; 3498*4882a593Smuzhiyun opp-hz = /bits/ 64 <500000000>; 3499*4882a593Smuzhiyun opp-microvolt = <700000 700000 850000>, 3500*4882a593Smuzhiyun <700000 700000 850000>; 3501*4882a593Smuzhiyun opp-microvolt-L1 = <687500 687500 850000>, 3502*4882a593Smuzhiyun <687500 687500 850000>; 3503*4882a593Smuzhiyun opp-microvolt-L2 = <675000 675000 850000>, 3504*4882a593Smuzhiyun <675000 675000 850000>; 3505*4882a593Smuzhiyun opp-microvolt-L3 = <675000 675000 850000>, 3506*4882a593Smuzhiyun <675000 675000 850000>; 3507*4882a593Smuzhiyun opp-microvolt-L4 = <675000 675000 850000>, 3508*4882a593Smuzhiyun <675000 675000 850000>; 3509*4882a593Smuzhiyun opp-microvolt-L5 = <675000 675000 850000>, 3510*4882a593Smuzhiyun <675000 675000 850000>; 3511*4882a593Smuzhiyun }; 3512*4882a593Smuzhiyun opp-600000000 { 3513*4882a593Smuzhiyun opp-supported-hw = <0xf9 0xffff>; 3514*4882a593Smuzhiyun opp-hz = /bits/ 64 <600000000>; 3515*4882a593Smuzhiyun opp-microvolt = <700000 700000 850000>, 3516*4882a593Smuzhiyun <700000 700000 850000>; 3517*4882a593Smuzhiyun opp-microvolt-L1 = <687500 687500 850000>, 3518*4882a593Smuzhiyun <687500 687500 850000>; 3519*4882a593Smuzhiyun opp-microvolt-L2 = <675000 675000 850000>, 3520*4882a593Smuzhiyun <675000 675000 850000>; 3521*4882a593Smuzhiyun opp-microvolt-L3 = <675000 675000 850000>, 3522*4882a593Smuzhiyun <675000 675000 850000>; 3523*4882a593Smuzhiyun opp-microvolt-L4 = <675000 675000 850000>, 3524*4882a593Smuzhiyun <675000 675000 850000>; 3525*4882a593Smuzhiyun opp-microvolt-L5 = <675000 675000 850000>, 3526*4882a593Smuzhiyun <675000 675000 850000>; 3527*4882a593Smuzhiyun }; 3528*4882a593Smuzhiyun opp-700000000 { 3529*4882a593Smuzhiyun opp-supported-hw = <0xf9 0xffff>; 3530*4882a593Smuzhiyun opp-hz = /bits/ 64 <700000000>; 3531*4882a593Smuzhiyun opp-microvolt = <700000 700000 850000>, 3532*4882a593Smuzhiyun <700000 700000 850000>; 3533*4882a593Smuzhiyun opp-microvolt-L3 = <687500 687500 850000>, 3534*4882a593Smuzhiyun <687500 687500 850000>; 3535*4882a593Smuzhiyun opp-microvolt-L4 = <675000 675000 850000>, 3536*4882a593Smuzhiyun <675000 675000 850000>; 3537*4882a593Smuzhiyun opp-microvolt-L5 = <675000 675000 850000>, 3538*4882a593Smuzhiyun <675000 675000 850000>; 3539*4882a593Smuzhiyun }; 3540*4882a593Smuzhiyun opp-800000000 { 3541*4882a593Smuzhiyun opp-supported-hw = <0xf9 0xffff>; 3542*4882a593Smuzhiyun opp-hz = /bits/ 64 <800000000>; 3543*4882a593Smuzhiyun opp-microvolt = <750000 750000 850000>, 3544*4882a593Smuzhiyun <750000 750000 850000>; 3545*4882a593Smuzhiyun opp-microvolt-L2 = <737500 737500 850000>, 3546*4882a593Smuzhiyun <737500 737500 850000>; 3547*4882a593Smuzhiyun opp-microvolt-L3 = <725000 725000 850000>, 3548*4882a593Smuzhiyun <725000 725000 850000>; 3549*4882a593Smuzhiyun opp-microvolt-L4 = <712500 712500 850000>, 3550*4882a593Smuzhiyun <712500 712500 850000>; 3551*4882a593Smuzhiyun opp-microvolt-L5 = <700000 700000 850000>, 3552*4882a593Smuzhiyun <700000 700000 850000>; 3553*4882a593Smuzhiyun }; 3554*4882a593Smuzhiyun opp-900000000 { 3555*4882a593Smuzhiyun opp-supported-hw = <0xf9 0xffff>; 3556*4882a593Smuzhiyun opp-hz = /bits/ 64 <900000000>; 3557*4882a593Smuzhiyun opp-microvolt = <800000 800000 850000>, 3558*4882a593Smuzhiyun <800000 800000 850000>; 3559*4882a593Smuzhiyun opp-microvolt-L1 = <787500 787500 850000>, 3560*4882a593Smuzhiyun <787500 787500 850000>; 3561*4882a593Smuzhiyun opp-microvolt-L2 = <775000 775000 850000>, 3562*4882a593Smuzhiyun <775000 775000 850000>; 3563*4882a593Smuzhiyun opp-microvolt-L3 = <762500 762500 850000>, 3564*4882a593Smuzhiyun <762500 762500 850000>; 3565*4882a593Smuzhiyun opp-microvolt-L4 = <750000 750000 850000>, 3566*4882a593Smuzhiyun <750000 750000 850000>; 3567*4882a593Smuzhiyun opp-microvolt-L5 = <737500 737500 850000>, 3568*4882a593Smuzhiyun <737500 737500 850000>; 3569*4882a593Smuzhiyun }; 3570*4882a593Smuzhiyun opp-1000000000 { 3571*4882a593Smuzhiyun opp-supported-hw = <0xf9 0xffff>; 3572*4882a593Smuzhiyun opp-hz = /bits/ 64 <1000000000>; 3573*4882a593Smuzhiyun opp-microvolt = <850000 850000 850000>, 3574*4882a593Smuzhiyun <850000 850000 850000>; 3575*4882a593Smuzhiyun opp-microvolt-L1 = <837500 837500 850000>, 3576*4882a593Smuzhiyun <837500 837500 850000>; 3577*4882a593Smuzhiyun opp-microvolt-L2 = <825000 825000 850000>, 3578*4882a593Smuzhiyun <825000 825000 850000>; 3579*4882a593Smuzhiyun opp-microvolt-L3 = <812500 812500 850000>, 3580*4882a593Smuzhiyun <812500 812500 850000>; 3581*4882a593Smuzhiyun opp-microvolt-L4 = <800000 800000 850000>, 3582*4882a593Smuzhiyun <800000 800000 850000>; 3583*4882a593Smuzhiyun opp-microvolt-L5 = <787500 787500 850000>, 3584*4882a593Smuzhiyun <787500 787500 850000>; 3585*4882a593Smuzhiyun }; 3586*4882a593Smuzhiyun 3587*4882a593Smuzhiyun /* RK3588J/M npu OPPs */ 3588*4882a593Smuzhiyun opp-j-m-300000000 { 3589*4882a593Smuzhiyun opp-supported-hw = <0x06 0xffff>; 3590*4882a593Smuzhiyun opp-hz = /bits/ 64 <300000000>; 3591*4882a593Smuzhiyun opp-microvolt = <750000 750000 850000>, 3592*4882a593Smuzhiyun <750000 750000 850000>; 3593*4882a593Smuzhiyun }; 3594*4882a593Smuzhiyun opp-j-m-400000000 { 3595*4882a593Smuzhiyun opp-supported-hw = <0x06 0xffff>; 3596*4882a593Smuzhiyun opp-hz = /bits/ 64 <400000000>; 3597*4882a593Smuzhiyun opp-microvolt = <750000 750000 850000>, 3598*4882a593Smuzhiyun <750000 750000 850000>; 3599*4882a593Smuzhiyun }; 3600*4882a593Smuzhiyun opp-j-m-500000000 { 3601*4882a593Smuzhiyun opp-supported-hw = <0x06 0xffff>; 3602*4882a593Smuzhiyun opp-hz = /bits/ 64 <500000000>; 3603*4882a593Smuzhiyun opp-microvolt = <750000 750000 850000>, 3604*4882a593Smuzhiyun <750000 750000 850000>; 3605*4882a593Smuzhiyun }; 3606*4882a593Smuzhiyun opp-j-m-600000000 { 3607*4882a593Smuzhiyun opp-supported-hw = <0x06 0xffff>; 3608*4882a593Smuzhiyun opp-hz = /bits/ 64 <600000000>; 3609*4882a593Smuzhiyun opp-microvolt = <750000 750000 850000>, 3610*4882a593Smuzhiyun <750000 750000 850000>; 3611*4882a593Smuzhiyun }; 3612*4882a593Smuzhiyun opp-j-m-700000000 { 3613*4882a593Smuzhiyun opp-supported-hw = <0x06 0xffff>; 3614*4882a593Smuzhiyun opp-hz = /bits/ 64 <700000000>; 3615*4882a593Smuzhiyun opp-microvolt = <750000 750000 850000>, 3616*4882a593Smuzhiyun <750000 750000 850000>; 3617*4882a593Smuzhiyun }; 3618*4882a593Smuzhiyun opp-j-m-800000000 { 3619*4882a593Smuzhiyun opp-supported-hw = <0x06 0xffff>; 3620*4882a593Smuzhiyun opp-hz = /bits/ 64 <800000000>; 3621*4882a593Smuzhiyun opp-microvolt = <750000 750000 850000>, 3622*4882a593Smuzhiyun <750000 750000 850000>; 3623*4882a593Smuzhiyun }; 3624*4882a593Smuzhiyun opp-j-m-950000000 { 3625*4882a593Smuzhiyun opp-supported-hw = <0x06 0xffff>; 3626*4882a593Smuzhiyun opp-hz = /bits/ 64 <950000000>; 3627*4882a593Smuzhiyun opp-microvolt = <837500 837500 850000>, 3628*4882a593Smuzhiyun <837500 837500 850000>; 3629*4882a593Smuzhiyun opp-microvolt-L1 = <825000 825000 850000>, 3630*4882a593Smuzhiyun <825000 825000 850000>; 3631*4882a593Smuzhiyun opp-microvolt-L2 = <812500 812500 850000>, 3632*4882a593Smuzhiyun <812500 812500 850000>; 3633*4882a593Smuzhiyun opp-microvolt-L3 = <800000 800000 850000>, 3634*4882a593Smuzhiyun <800000 800000 850000>; 3635*4882a593Smuzhiyun opp-microvolt-L4 = <787500 787500 850000>, 3636*4882a593Smuzhiyun <787500 787500 850000>; 3637*4882a593Smuzhiyun opp-microvolt-L5 = <775000 775000 850000>, 3638*4882a593Smuzhiyun <775000 775000 850000>; 3639*4882a593Smuzhiyun }; 3640*4882a593Smuzhiyun }; 3641*4882a593Smuzhiyun 3642*4882a593Smuzhiyun rknpu_mmu: iommu@fdab9000 { 3643*4882a593Smuzhiyun compatible = "rockchip,iommu-v2"; 3644*4882a593Smuzhiyun reg = <0x0 0xfdab9000 0x0 0x100>, 3645*4882a593Smuzhiyun <0x0 0xfdaba000 0x0 0x100>, 3646*4882a593Smuzhiyun <0x0 0xfdaca000 0x0 0x100>, 3647*4882a593Smuzhiyun <0x0 0xfdada000 0x0 0x100>; 3648*4882a593Smuzhiyun interrupts = <GIC_SPI 110 IRQ_TYPE_LEVEL_HIGH>, 3649*4882a593Smuzhiyun <GIC_SPI 111 IRQ_TYPE_LEVEL_HIGH>, 3650*4882a593Smuzhiyun <GIC_SPI 112 IRQ_TYPE_LEVEL_HIGH>; 3651*4882a593Smuzhiyun interrupt-names = "npu0_mmu", "npu1_mmu", "npu2_mmu"; 3652*4882a593Smuzhiyun clocks = <&cru ACLK_NPU0>, <&cru ACLK_NPU1>, <&cru ACLK_NPU2>, 3653*4882a593Smuzhiyun <&cru HCLK_NPU0>, <&cru HCLK_NPU1>, <&cru HCLK_NPU2>; 3654*4882a593Smuzhiyun clock-names = "aclk0", "aclk1", "aclk2", 3655*4882a593Smuzhiyun "iface0", "iface1", "iface2"; 3656*4882a593Smuzhiyun #iommu-cells = <0>; 3657*4882a593Smuzhiyun status = "disabled"; 3658*4882a593Smuzhiyun }; 3659*4882a593Smuzhiyun 3660*4882a593Smuzhiyun vepu: vepu@fdb50000 { 3661*4882a593Smuzhiyun compatible = "rockchip,vpu-encoder-v2"; 3662*4882a593Smuzhiyun reg = <0x0 0xfdb50000 0x0 0x400>; 3663*4882a593Smuzhiyun interrupts = <GIC_SPI 120 IRQ_TYPE_LEVEL_HIGH>; 3664*4882a593Smuzhiyun interrupt-names = "irq_vepu"; 3665*4882a593Smuzhiyun clocks = <&cru ACLK_VPU>, <&cru HCLK_VPU>; 3666*4882a593Smuzhiyun clock-names = "aclk_vcodec", "hclk_vcodec"; 3667*4882a593Smuzhiyun rockchip,normal-rates = <594000000>, <0>; 3668*4882a593Smuzhiyun assigned-clocks = <&cru ACLK_VPU>; 3669*4882a593Smuzhiyun assigned-clock-rates = <594000000>; 3670*4882a593Smuzhiyun resets = <&cru SRST_A_VPU>, <&cru SRST_H_VPU>; 3671*4882a593Smuzhiyun reset-names = "shared_video_a", "shared_video_h"; 3672*4882a593Smuzhiyun rockchip,skip-pmu-idle-request; 3673*4882a593Smuzhiyun rockchip,disable-auto-freq; 3674*4882a593Smuzhiyun iommus = <&vdpu_mmu>; 3675*4882a593Smuzhiyun rockchip,srv = <&mpp_srv>; 3676*4882a593Smuzhiyun rockchip,taskqueue-node = <0>; 3677*4882a593Smuzhiyun rockchip,resetgroup-node = <0>; 3678*4882a593Smuzhiyun power-domains = <&power RK3588_PD_VDPU>; 3679*4882a593Smuzhiyun status = "disabled"; 3680*4882a593Smuzhiyun }; 3681*4882a593Smuzhiyun 3682*4882a593Smuzhiyun vdpu: vdpu@fdb50400 { 3683*4882a593Smuzhiyun compatible = "rockchip,vpu-decoder-v2"; 3684*4882a593Smuzhiyun reg = <0x0 0xfdb50400 0x0 0x400>; 3685*4882a593Smuzhiyun interrupts = <GIC_SPI 119 IRQ_TYPE_LEVEL_HIGH>; 3686*4882a593Smuzhiyun interrupt-names = "irq_vdpu"; 3687*4882a593Smuzhiyun clocks = <&cru ACLK_VPU>, <&cru HCLK_VPU>; 3688*4882a593Smuzhiyun clock-names = "aclk_vcodec", "hclk_vcodec"; 3689*4882a593Smuzhiyun rockchip,normal-rates = <594000000>, <0>; 3690*4882a593Smuzhiyun assigned-clocks = <&cru ACLK_VPU>; 3691*4882a593Smuzhiyun assigned-clock-rates = <594000000>; 3692*4882a593Smuzhiyun resets = <&cru SRST_A_VPU>, <&cru SRST_H_VPU>; 3693*4882a593Smuzhiyun reset-names = "shared_video_a", "shared_video_h"; 3694*4882a593Smuzhiyun rockchip,skip-pmu-idle-request; 3695*4882a593Smuzhiyun rockchip,disable-auto-freq; 3696*4882a593Smuzhiyun iommus = <&vdpu_mmu>; 3697*4882a593Smuzhiyun rockchip,srv = <&mpp_srv>; 3698*4882a593Smuzhiyun rockchip,taskqueue-node = <0>; 3699*4882a593Smuzhiyun rockchip,resetgroup-node = <0>; 3700*4882a593Smuzhiyun power-domains = <&power RK3588_PD_VDPU>; 3701*4882a593Smuzhiyun status = "disabled"; 3702*4882a593Smuzhiyun }; 3703*4882a593Smuzhiyun 3704*4882a593Smuzhiyun vdpu_mmu: iommu@fdb50800 { 3705*4882a593Smuzhiyun compatible = "rockchip,iommu-v2"; 3706*4882a593Smuzhiyun reg = <0x0 0xfdb50800 0x0 0x40>; 3707*4882a593Smuzhiyun interrupts = <GIC_SPI 118 IRQ_TYPE_LEVEL_HIGH>; 3708*4882a593Smuzhiyun interrupt-names = "irq_vdpu_mmu"; 3709*4882a593Smuzhiyun clocks = <&cru ACLK_VPU>, <&cru HCLK_VPU>; 3710*4882a593Smuzhiyun clock-names = "aclk", "iface"; 3711*4882a593Smuzhiyun power-domains = <&power RK3588_PD_VDPU>; 3712*4882a593Smuzhiyun #iommu-cells = <0>; 3713*4882a593Smuzhiyun status = "disabled"; 3714*4882a593Smuzhiyun }; 3715*4882a593Smuzhiyun 3716*4882a593Smuzhiyun avsd: avsd-plus@fdb51000 { 3717*4882a593Smuzhiyun compatible = "rockchip,avs-plus-decoder"; 3718*4882a593Smuzhiyun reg = <0x0 0xfdb51000 0x0 0x200>; 3719*4882a593Smuzhiyun interrupts = <GIC_SPI 119 IRQ_TYPE_LEVEL_HIGH>; 3720*4882a593Smuzhiyun interrupt-names = "irq_avsd"; 3721*4882a593Smuzhiyun clocks = <&cru ACLK_VPU>, <&cru HCLK_VPU>; 3722*4882a593Smuzhiyun clock-names = "aclk_vcodec", "hclk_vcodec"; 3723*4882a593Smuzhiyun rockchip,normal-rates = <594000000>, <0>; 3724*4882a593Smuzhiyun assigned-clocks = <&cru ACLK_VPU>; 3725*4882a593Smuzhiyun assigned-clock-rates = <594000000>; 3726*4882a593Smuzhiyun resets = <&cru SRST_A_VPU>, <&cru SRST_H_VPU>; 3727*4882a593Smuzhiyun reset-names = "shared_video_a", "shared_video_h"; 3728*4882a593Smuzhiyun rockchip,skip-pmu-idle-request; 3729*4882a593Smuzhiyun rockchip,disable-auto-freq; 3730*4882a593Smuzhiyun iommus = <&vdpu_mmu>; 3731*4882a593Smuzhiyun power-domains = <&power RK3588_PD_VDPU>; 3732*4882a593Smuzhiyun rockchip,srv = <&mpp_srv>; 3733*4882a593Smuzhiyun rockchip,taskqueue-node = <0>; 3734*4882a593Smuzhiyun rockchip,resetgroup-node = <0>; 3735*4882a593Smuzhiyun status = "disabled"; 3736*4882a593Smuzhiyun }; 3737*4882a593Smuzhiyun 3738*4882a593Smuzhiyun rga3_core0: rga@fdb60000 { 3739*4882a593Smuzhiyun compatible = "rockchip,rga3_core0"; 3740*4882a593Smuzhiyun reg = <0x0 0xfdb60000 0x0 0x1000>; 3741*4882a593Smuzhiyun interrupts = <GIC_SPI 114 IRQ_TYPE_LEVEL_HIGH>; 3742*4882a593Smuzhiyun interrupt-names = "rga3_core0_irq"; 3743*4882a593Smuzhiyun clocks = <&cru ACLK_RGA3_0>, <&cru HCLK_RGA3_0>, <&cru CLK_RGA3_0_CORE>; 3744*4882a593Smuzhiyun clock-names = "aclk_rga3_0", "hclk_rga3_0", "clk_rga3_0"; 3745*4882a593Smuzhiyun power-domains = <&power RK3588_PD_RGA30>; 3746*4882a593Smuzhiyun iommus = <&rga3_0_mmu>; 3747*4882a593Smuzhiyun status = "disabled"; 3748*4882a593Smuzhiyun }; 3749*4882a593Smuzhiyun 3750*4882a593Smuzhiyun rga3_0_mmu: iommu@fdb60f00 { 3751*4882a593Smuzhiyun compatible = "rockchip,iommu-v2"; 3752*4882a593Smuzhiyun reg = <0x0 0xfdb60f00 0x0 0x100>; 3753*4882a593Smuzhiyun interrupts = <GIC_SPI 114 IRQ_TYPE_LEVEL_HIGH>; 3754*4882a593Smuzhiyun interrupt-names = "rga3_0_mmu"; 3755*4882a593Smuzhiyun clocks = <&cru ACLK_RGA3_0>, <&cru HCLK_RGA3_0>; 3756*4882a593Smuzhiyun clock-names = "aclk", "iface"; 3757*4882a593Smuzhiyun power-domains = <&power RK3588_PD_RGA30>; 3758*4882a593Smuzhiyun #iommu-cells = <0>; 3759*4882a593Smuzhiyun status = "disabled"; 3760*4882a593Smuzhiyun }; 3761*4882a593Smuzhiyun 3762*4882a593Smuzhiyun rga3_core1: rga@fdb70000 { 3763*4882a593Smuzhiyun compatible = "rockchip,rga3_core1"; 3764*4882a593Smuzhiyun reg = <0x0 0xfdb70000 0x0 0x1000>; 3765*4882a593Smuzhiyun interrupts = <GIC_SPI 115 IRQ_TYPE_LEVEL_HIGH>; 3766*4882a593Smuzhiyun interrupt-names = "rga3_core1_irq"; 3767*4882a593Smuzhiyun clocks = <&cru ACLK_RGA3_1>, <&cru HCLK_RGA3_1>, <&cru CLK_RGA3_1_CORE>; 3768*4882a593Smuzhiyun clock-names = "aclk_rga3_1", "hclk_rga3_1", "clk_rga3_1"; 3769*4882a593Smuzhiyun power-domains = <&power RK3588_PD_RGA31>; 3770*4882a593Smuzhiyun iommus = <&rga3_1_mmu>; 3771*4882a593Smuzhiyun status = "disabled"; 3772*4882a593Smuzhiyun }; 3773*4882a593Smuzhiyun 3774*4882a593Smuzhiyun rga3_1_mmu: iommu@fdb70f00 { 3775*4882a593Smuzhiyun compatible = "rockchip,iommu-v2"; 3776*4882a593Smuzhiyun reg = <0x0 0xfdb70f00 0x0 0x100>; 3777*4882a593Smuzhiyun interrupts = <GIC_SPI 115 IRQ_TYPE_LEVEL_HIGH>; 3778*4882a593Smuzhiyun interrupt-names = "rga3_1_mmu"; 3779*4882a593Smuzhiyun clocks = <&cru ACLK_RGA3_1>, <&cru HCLK_RGA3_1>; 3780*4882a593Smuzhiyun clock-names = "aclk", "iface"; 3781*4882a593Smuzhiyun power-domains = <&power RK3588_PD_RGA31>; 3782*4882a593Smuzhiyun #iommu-cells = <0>; 3783*4882a593Smuzhiyun status = "disabled"; 3784*4882a593Smuzhiyun }; 3785*4882a593Smuzhiyun 3786*4882a593Smuzhiyun rga2: rga@fdb80000 { 3787*4882a593Smuzhiyun compatible = "rockchip,rga2_core0"; 3788*4882a593Smuzhiyun reg = <0x0 0xfdb80000 0x0 0x1000>; 3789*4882a593Smuzhiyun interrupts = <GIC_SPI 116 IRQ_TYPE_LEVEL_HIGH>; 3790*4882a593Smuzhiyun interrupt-names = "rga2_irq"; 3791*4882a593Smuzhiyun clocks = <&cru ACLK_RGA2>, <&cru HCLK_RGA2>, <&cru CLK_RGA2_CORE>; 3792*4882a593Smuzhiyun clock-names = "aclk_rga2", "hclk_rga2", "clk_rga2"; 3793*4882a593Smuzhiyun power-domains = <&power RK3588_PD_VDPU>; 3794*4882a593Smuzhiyun status = "disabled"; 3795*4882a593Smuzhiyun }; 3796*4882a593Smuzhiyun 3797*4882a593Smuzhiyun jpegd: jpegd@fdb90000 { 3798*4882a593Smuzhiyun compatible = "rockchip,rkv-jpeg-decoder-v1"; 3799*4882a593Smuzhiyun reg = <0x0 0xfdb90000 0x0 0x400>; 3800*4882a593Smuzhiyun interrupts = <GIC_SPI 129 IRQ_TYPE_LEVEL_HIGH>; 3801*4882a593Smuzhiyun interrupt-names = "irq_jpegd"; 3802*4882a593Smuzhiyun clocks = <&cru ACLK_JPEG_DECODER>, <&cru HCLK_JPEG_DECODER>; 3803*4882a593Smuzhiyun clock-names = "aclk_vcodec", "hclk_vcodec"; 3804*4882a593Smuzhiyun rockchip,normal-rates = <600000000>, <0>; 3805*4882a593Smuzhiyun assigned-clocks = <&cru ACLK_JPEG_DECODER>; 3806*4882a593Smuzhiyun assigned-clock-rates = <600000000>; 3807*4882a593Smuzhiyun resets = <&cru SRST_A_JPEG_DECODER>, <&cru SRST_H_JPEG_DECODER>; 3808*4882a593Smuzhiyun reset-names = "video_a", "video_h"; 3809*4882a593Smuzhiyun rockchip,skip-pmu-idle-request; 3810*4882a593Smuzhiyun iommus = <&jpegd_mmu>; 3811*4882a593Smuzhiyun rockchip,srv = <&mpp_srv>; 3812*4882a593Smuzhiyun rockchip,taskqueue-node = <1>; 3813*4882a593Smuzhiyun power-domains = <&power RK3588_PD_VDPU>; 3814*4882a593Smuzhiyun status = "disabled"; 3815*4882a593Smuzhiyun }; 3816*4882a593Smuzhiyun 3817*4882a593Smuzhiyun jpegd_mmu: iommu@fdb90480 { 3818*4882a593Smuzhiyun compatible = "rockchip,iommu-v2"; 3819*4882a593Smuzhiyun reg = <0x0 0xfdb90480 0x0 0x40>; 3820*4882a593Smuzhiyun interrupts = <GIC_SPI 130 IRQ_TYPE_LEVEL_HIGH>; 3821*4882a593Smuzhiyun interrupt-names = "irq_jpegd_mmu"; 3822*4882a593Smuzhiyun clocks = <&cru ACLK_JPEG_DECODER>, <&cru HCLK_JPEG_DECODER>; 3823*4882a593Smuzhiyun clock-names = "aclk", "iface"; 3824*4882a593Smuzhiyun power-domains = <&power RK3588_PD_VDPU>; 3825*4882a593Smuzhiyun #iommu-cells = <0>; 3826*4882a593Smuzhiyun status = "disabled"; 3827*4882a593Smuzhiyun }; 3828*4882a593Smuzhiyun 3829*4882a593Smuzhiyun jpege0: jpege-core@fdba0000 { 3830*4882a593Smuzhiyun compatible = "rockchip,vpu-jpege-core"; 3831*4882a593Smuzhiyun reg = <0x0 0xfdba0000 0x0 0x400>; 3832*4882a593Smuzhiyun interrupts = <GIC_SPI 122 IRQ_TYPE_LEVEL_HIGH>; 3833*4882a593Smuzhiyun interrupt-names = "irq_jpege0"; 3834*4882a593Smuzhiyun clocks = <&cru ACLK_JPEG_ENCODER0>, <&cru HCLK_JPEG_ENCODER0>; 3835*4882a593Smuzhiyun clock-names = "aclk_vcodec", "hclk_vcodec"; 3836*4882a593Smuzhiyun rockchip,normal-rates = <594000000>, <0>; 3837*4882a593Smuzhiyun assigned-clocks = <&cru ACLK_JPEG_ENCODER0>; 3838*4882a593Smuzhiyun assigned-clock-rates = <594000000>; 3839*4882a593Smuzhiyun resets = <&cru SRST_A_JPEG_ENCODER0>, <&cru SRST_H_JPEG_ENCODER0>; 3840*4882a593Smuzhiyun reset-names = "video_a", "video_h"; 3841*4882a593Smuzhiyun rockchip,skip-pmu-idle-request; 3842*4882a593Smuzhiyun rockchip,disable-auto-freq; 3843*4882a593Smuzhiyun iommus = <&jpege0_mmu>; 3844*4882a593Smuzhiyun rockchip,srv = <&mpp_srv>; 3845*4882a593Smuzhiyun rockchip,taskqueue-node = <2>; 3846*4882a593Smuzhiyun rockchip,ccu = <&jpege_ccu>; 3847*4882a593Smuzhiyun power-domains = <&power RK3588_PD_VDPU>; 3848*4882a593Smuzhiyun status = "disabled"; 3849*4882a593Smuzhiyun }; 3850*4882a593Smuzhiyun 3851*4882a593Smuzhiyun jpege0_mmu: iommu@fdba0800 { 3852*4882a593Smuzhiyun compatible = "rockchip,iommu-v2"; 3853*4882a593Smuzhiyun reg = <0x0 0xfdba0800 0x0 0x40>; 3854*4882a593Smuzhiyun interrupts = <GIC_SPI 121 IRQ_TYPE_LEVEL_HIGH>; 3855*4882a593Smuzhiyun interrupt-names = "irq_jpege0_mmu"; 3856*4882a593Smuzhiyun clocks = <&cru ACLK_JPEG_ENCODER0>, <&cru HCLK_JPEG_ENCODER0>; 3857*4882a593Smuzhiyun clock-names = "aclk", "iface"; 3858*4882a593Smuzhiyun power-domains = <&power RK3588_PD_VDPU>; 3859*4882a593Smuzhiyun #iommu-cells = <0>; 3860*4882a593Smuzhiyun status = "disabled"; 3861*4882a593Smuzhiyun }; 3862*4882a593Smuzhiyun 3863*4882a593Smuzhiyun jpege1: jpege-core@fdba4000 { 3864*4882a593Smuzhiyun compatible = "rockchip,vpu-jpege-core"; 3865*4882a593Smuzhiyun reg = <0x0 0xfdba4000 0x0 0x400>; 3866*4882a593Smuzhiyun interrupts = <GIC_SPI 124 IRQ_TYPE_LEVEL_HIGH>; 3867*4882a593Smuzhiyun interrupt-names = "irq_jpege1"; 3868*4882a593Smuzhiyun clocks = <&cru ACLK_JPEG_ENCODER1>, <&cru HCLK_JPEG_ENCODER1>; 3869*4882a593Smuzhiyun clock-names = "aclk_vcodec", "hclk_vcodec"; 3870*4882a593Smuzhiyun rockchip,normal-rates = <594000000>, <0>; 3871*4882a593Smuzhiyun assigned-clocks = <&cru ACLK_JPEG_ENCODER1>; 3872*4882a593Smuzhiyun assigned-clock-rates = <594000000>; 3873*4882a593Smuzhiyun resets = <&cru SRST_A_JPEG_ENCODER1>, <&cru SRST_H_JPEG_ENCODER1>; 3874*4882a593Smuzhiyun reset-names = "video_a", "video_h"; 3875*4882a593Smuzhiyun rockchip,skip-pmu-idle-request; 3876*4882a593Smuzhiyun rockchip,disable-auto-freq; 3877*4882a593Smuzhiyun iommus = <&jpege1_mmu>; 3878*4882a593Smuzhiyun rockchip,srv = <&mpp_srv>; 3879*4882a593Smuzhiyun rockchip,taskqueue-node = <2>; 3880*4882a593Smuzhiyun rockchip,ccu = <&jpege_ccu>; 3881*4882a593Smuzhiyun power-domains = <&power RK3588_PD_VDPU>; 3882*4882a593Smuzhiyun status = "disabled"; 3883*4882a593Smuzhiyun }; 3884*4882a593Smuzhiyun 3885*4882a593Smuzhiyun jpege1_mmu: iommu@fdba4800 { 3886*4882a593Smuzhiyun compatible = "rockchip,iommu-v2"; 3887*4882a593Smuzhiyun reg = <0x0 0xfdba4800 0x0 0x40>; 3888*4882a593Smuzhiyun interrupts = <GIC_SPI 123 IRQ_TYPE_LEVEL_HIGH>; 3889*4882a593Smuzhiyun interrupt-names = "irq_jpege1_mmu"; 3890*4882a593Smuzhiyun clocks = <&cru ACLK_JPEG_ENCODER1>, <&cru HCLK_JPEG_ENCODER1>; 3891*4882a593Smuzhiyun clock-names = "aclk", "iface"; 3892*4882a593Smuzhiyun power-domains = <&power RK3588_PD_VDPU>; 3893*4882a593Smuzhiyun #iommu-cells = <0>; 3894*4882a593Smuzhiyun status = "disabled"; 3895*4882a593Smuzhiyun }; 3896*4882a593Smuzhiyun 3897*4882a593Smuzhiyun jpege2: jpege-core@fdba8000 { 3898*4882a593Smuzhiyun compatible = "rockchip,vpu-jpege-core"; 3899*4882a593Smuzhiyun reg = <0x0 0xfdba8000 0x0 0x400>; 3900*4882a593Smuzhiyun interrupts = <GIC_SPI 126 IRQ_TYPE_LEVEL_HIGH>; 3901*4882a593Smuzhiyun interrupt-names = "irq_jpege2"; 3902*4882a593Smuzhiyun clocks = <&cru ACLK_JPEG_ENCODER2>, <&cru HCLK_JPEG_ENCODER2>; 3903*4882a593Smuzhiyun clock-names = "aclk_vcodec", "hclk_vcodec"; 3904*4882a593Smuzhiyun rockchip,normal-rates = <594000000>, <0>; 3905*4882a593Smuzhiyun assigned-clocks = <&cru ACLK_JPEG_ENCODER2>; 3906*4882a593Smuzhiyun assigned-clock-rates = <594000000>; 3907*4882a593Smuzhiyun resets = <&cru SRST_A_JPEG_ENCODER2>, <&cru SRST_H_JPEG_ENCODER2>; 3908*4882a593Smuzhiyun reset-names = "video_a", "video_h"; 3909*4882a593Smuzhiyun rockchip,skip-pmu-idle-request; 3910*4882a593Smuzhiyun rockchip,disable-auto-freq; 3911*4882a593Smuzhiyun iommus = <&jpege2_mmu>; 3912*4882a593Smuzhiyun rockchip,srv = <&mpp_srv>; 3913*4882a593Smuzhiyun rockchip,taskqueue-node = <2>; 3914*4882a593Smuzhiyun rockchip,ccu = <&jpege_ccu>; 3915*4882a593Smuzhiyun power-domains = <&power RK3588_PD_VDPU>; 3916*4882a593Smuzhiyun status = "disabled"; 3917*4882a593Smuzhiyun }; 3918*4882a593Smuzhiyun 3919*4882a593Smuzhiyun jpege2_mmu: iommu@fdba8800 { 3920*4882a593Smuzhiyun compatible = "rockchip,iommu-v2"; 3921*4882a593Smuzhiyun reg = <0x0 0xfdba8800 0x0 0x40>; 3922*4882a593Smuzhiyun interrupts = <GIC_SPI 125 IRQ_TYPE_LEVEL_HIGH>; 3923*4882a593Smuzhiyun interrupt-names = "irq_jpege2_mmu"; 3924*4882a593Smuzhiyun clocks = <&cru ACLK_JPEG_ENCODER2>, <&cru HCLK_JPEG_ENCODER2>; 3925*4882a593Smuzhiyun clock-names = "aclk", "iface"; 3926*4882a593Smuzhiyun power-domains = <&power RK3588_PD_VDPU>; 3927*4882a593Smuzhiyun #iommu-cells = <0>; 3928*4882a593Smuzhiyun status = "disabled"; 3929*4882a593Smuzhiyun }; 3930*4882a593Smuzhiyun 3931*4882a593Smuzhiyun jpege3: jpege-core@fdbac000 { 3932*4882a593Smuzhiyun compatible = "rockchip,vpu-jpege-core"; 3933*4882a593Smuzhiyun reg = <0x0 0xfdbac000 0x0 0x400>; 3934*4882a593Smuzhiyun interrupts = <GIC_SPI 128 IRQ_TYPE_LEVEL_HIGH>; 3935*4882a593Smuzhiyun interrupt-names = "irq_jpege3"; 3936*4882a593Smuzhiyun clocks = <&cru ACLK_JPEG_ENCODER3>, <&cru HCLK_JPEG_ENCODER3>; 3937*4882a593Smuzhiyun clock-names = "aclk_vcodec", "hclk_vcodec"; 3938*4882a593Smuzhiyun rockchip,normal-rates = <594000000>, <0>; 3939*4882a593Smuzhiyun assigned-clocks = <&cru ACLK_JPEG_ENCODER3>; 3940*4882a593Smuzhiyun assigned-clock-rates = <594000000>; 3941*4882a593Smuzhiyun resets = <&cru SRST_A_JPEG_ENCODER3>, <&cru SRST_H_JPEG_ENCODER3>; 3942*4882a593Smuzhiyun reset-names = "video_a", "video_h"; 3943*4882a593Smuzhiyun rockchip,skip-pmu-idle-request; 3944*4882a593Smuzhiyun rockchip,disable-auto-freq; 3945*4882a593Smuzhiyun iommus = <&jpege3_mmu>; 3946*4882a593Smuzhiyun rockchip,srv = <&mpp_srv>; 3947*4882a593Smuzhiyun rockchip,taskqueue-node = <2>; 3948*4882a593Smuzhiyun rockchip,ccu = <&jpege_ccu>; 3949*4882a593Smuzhiyun power-domains = <&power RK3588_PD_VDPU>; 3950*4882a593Smuzhiyun status = "disabled"; 3951*4882a593Smuzhiyun }; 3952*4882a593Smuzhiyun 3953*4882a593Smuzhiyun jpege3_mmu: iommu@fdbac800 { 3954*4882a593Smuzhiyun compatible = "rockchip,iommu-v2"; 3955*4882a593Smuzhiyun reg = <0x0 0xfdbac800 0x0 0x40>; 3956*4882a593Smuzhiyun interrupts = <GIC_SPI 127 IRQ_TYPE_LEVEL_HIGH>; 3957*4882a593Smuzhiyun interrupt-names = "irq_jpege3_mmu"; 3958*4882a593Smuzhiyun clocks = <&cru ACLK_JPEG_ENCODER3>, <&cru HCLK_JPEG_ENCODER3>; 3959*4882a593Smuzhiyun clock-names = "aclk", "iface"; 3960*4882a593Smuzhiyun power-domains = <&power RK3588_PD_VDPU>; 3961*4882a593Smuzhiyun #iommu-cells = <0>; 3962*4882a593Smuzhiyun status = "disabled"; 3963*4882a593Smuzhiyun }; 3964*4882a593Smuzhiyun 3965*4882a593Smuzhiyun iep: iep@fdbb0000 { 3966*4882a593Smuzhiyun compatible = "rockchip,iep-v2"; 3967*4882a593Smuzhiyun reg = <0x0 0xfdbb0000 0x0 0x500>; 3968*4882a593Smuzhiyun interrupts = <GIC_SPI 117 IRQ_TYPE_LEVEL_HIGH>; 3969*4882a593Smuzhiyun interrupt-names = "irq_iep"; 3970*4882a593Smuzhiyun clocks = <&cru ACLK_IEP2P0>, <&cru HCLK_IEP2P0>, <&cru CLK_IEP2P0_CORE>; 3971*4882a593Smuzhiyun clock-names = "aclk", "hclk", "sclk"; 3972*4882a593Smuzhiyun rockchip,normal-rates = <594000000>, <0>; 3973*4882a593Smuzhiyun assigned-clocks = <&cru ACLK_IEP2P0>; 3974*4882a593Smuzhiyun assigned-clock-rates = <594000000>; 3975*4882a593Smuzhiyun resets = <&cru SRST_A_IEP2P0>, <&cru SRST_H_IEP2P0>, <&cru SRST_IEP2P0_CORE>; 3976*4882a593Smuzhiyun reset-names = "rst_a", "rst_h", "rst_s"; 3977*4882a593Smuzhiyun rockchip,skip-pmu-idle-request; 3978*4882a593Smuzhiyun rockchip,disable-auto-freq; 3979*4882a593Smuzhiyun power-domains = <&power RK3588_PD_VDPU>; 3980*4882a593Smuzhiyun rockchip,srv = <&mpp_srv>; 3981*4882a593Smuzhiyun rockchip,taskqueue-node = <6>; 3982*4882a593Smuzhiyun iommus = <&iep_mmu>; 3983*4882a593Smuzhiyun status = "disabled"; 3984*4882a593Smuzhiyun }; 3985*4882a593Smuzhiyun 3986*4882a593Smuzhiyun iep_mmu: iommu@fdbb0800 { 3987*4882a593Smuzhiyun compatible = "rockchip,iommu-v2"; 3988*4882a593Smuzhiyun reg = <0x0 0xfdbb0800 0x0 0x100>; 3989*4882a593Smuzhiyun interrupts = <GIC_SPI 117 IRQ_TYPE_LEVEL_HIGH>; 3990*4882a593Smuzhiyun interrupt-names = "irq_iep_mmu"; 3991*4882a593Smuzhiyun clocks = <&cru ACLK_IEP2P0>, <&cru HCLK_IEP2P0>; 3992*4882a593Smuzhiyun clock-names = "aclk", "iface"; 3993*4882a593Smuzhiyun #iommu-cells = <0>; 3994*4882a593Smuzhiyun power-domains = <&power RK3588_PD_VDPU>; 3995*4882a593Smuzhiyun status = "disabled"; 3996*4882a593Smuzhiyun }; 3997*4882a593Smuzhiyun 3998*4882a593Smuzhiyun rkvenc0: rkvenc-core@fdbd0000 { 3999*4882a593Smuzhiyun compatible = "rockchip,rkv-encoder-v2-core"; 4000*4882a593Smuzhiyun reg = <0x0 0xfdbd0000 0x0 0x6000>; 4001*4882a593Smuzhiyun interrupts = <GIC_SPI 101 IRQ_TYPE_LEVEL_HIGH>; 4002*4882a593Smuzhiyun interrupt-names = "irq_rkvenc0"; 4003*4882a593Smuzhiyun clocks = <&cru ACLK_RKVENC0>, <&cru HCLK_RKVENC0>, <&cru CLK_RKVENC0_CORE>; 4004*4882a593Smuzhiyun clock-names = "aclk_vcodec", "hclk_vcodec", "clk_core"; 4005*4882a593Smuzhiyun rockchip,normal-rates = <500000000>, <0>, <800000000>; 4006*4882a593Smuzhiyun assigned-clocks = <&cru ACLK_RKVENC0>, <&cru CLK_RKVENC0_CORE>; 4007*4882a593Smuzhiyun assigned-clock-rates = <500000000>, <800000000>; 4008*4882a593Smuzhiyun resets = <&cru SRST_A_RKVENC0>, <&cru SRST_H_RKVENC0>, <&cru SRST_RKVENC0_CORE>; 4009*4882a593Smuzhiyun reset-names = "video_a", "video_h", "video_core"; 4010*4882a593Smuzhiyun rockchip,skip-pmu-idle-request; 4011*4882a593Smuzhiyun iommus = <&rkvenc0_mmu>; 4012*4882a593Smuzhiyun rockchip,srv = <&mpp_srv>; 4013*4882a593Smuzhiyun rockchip,ccu = <&rkvenc_ccu>; 4014*4882a593Smuzhiyun rockchip,taskqueue-node = <7>; 4015*4882a593Smuzhiyun rockchip,task-capacity = <8>; 4016*4882a593Smuzhiyun power-domains = <&power RK3588_PD_VENC0>; 4017*4882a593Smuzhiyun operating-points-v2 = <&venc_opp_table>; 4018*4882a593Smuzhiyun status = "disabled"; 4019*4882a593Smuzhiyun }; 4020*4882a593Smuzhiyun 4021*4882a593Smuzhiyun rkvenc0_mmu: iommu@fdbdf000 { 4022*4882a593Smuzhiyun compatible = "rockchip,iommu-v2"; 4023*4882a593Smuzhiyun reg = <0x0 0xfdbdf000 0x0 0x40>, <0x0 0xfdbdf040 0x0 0x40>; 4024*4882a593Smuzhiyun interrupts = <GIC_SPI 99 IRQ_TYPE_LEVEL_HIGH>, 4025*4882a593Smuzhiyun <GIC_SPI 100 IRQ_TYPE_LEVEL_HIGH>; 4026*4882a593Smuzhiyun interrupt-names = "irq_rkvenc0_mmu0", "irq_rkvenc0_mmu1"; 4027*4882a593Smuzhiyun clocks = <&cru ACLK_RKVENC0>, <&cru HCLK_RKVENC0>; 4028*4882a593Smuzhiyun clock-names = "aclk", "iface"; 4029*4882a593Smuzhiyun rockchip,disable-mmu-reset; 4030*4882a593Smuzhiyun rockchip,enable-cmd-retry; 4031*4882a593Smuzhiyun rockchip,shootdown-entire; 4032*4882a593Smuzhiyun #iommu-cells = <0>; 4033*4882a593Smuzhiyun power-domains = <&power RK3588_PD_VENC0>; 4034*4882a593Smuzhiyun status = "disabled"; 4035*4882a593Smuzhiyun }; 4036*4882a593Smuzhiyun 4037*4882a593Smuzhiyun rkvenc1: rkvenc-core@fdbe0000 { 4038*4882a593Smuzhiyun compatible = "rockchip,rkv-encoder-v2-core"; 4039*4882a593Smuzhiyun reg = <0x0 0xfdbe0000 0x0 0x6000>; 4040*4882a593Smuzhiyun interrupts = <GIC_SPI 104 IRQ_TYPE_LEVEL_HIGH>; 4041*4882a593Smuzhiyun interrupt-names = "irq_rkvenc1"; 4042*4882a593Smuzhiyun clocks = <&cru ACLK_RKVENC1>, <&cru HCLK_RKVENC1>, <&cru CLK_RKVENC1_CORE>; 4043*4882a593Smuzhiyun clock-names = "aclk_vcodec", "hclk_vcodec", "clk_core"; 4044*4882a593Smuzhiyun rockchip,normal-rates = <500000000>, <0>, <800000000>; 4045*4882a593Smuzhiyun assigned-clocks = <&cru ACLK_RKVENC1>, <&cru CLK_RKVENC1_CORE>; 4046*4882a593Smuzhiyun assigned-clock-rates = <500000000>, <800000000>; 4047*4882a593Smuzhiyun resets = <&cru SRST_A_RKVENC1>, <&cru SRST_H_RKVENC1>, <&cru SRST_RKVENC1_CORE>; 4048*4882a593Smuzhiyun reset-names = "video_a", "video_h", "video_core"; 4049*4882a593Smuzhiyun rockchip,skip-pmu-idle-request; 4050*4882a593Smuzhiyun iommus = <&rkvenc1_mmu>; 4051*4882a593Smuzhiyun rockchip,srv = <&mpp_srv>; 4052*4882a593Smuzhiyun rockchip,ccu = <&rkvenc_ccu>; 4053*4882a593Smuzhiyun rockchip,taskqueue-node = <7>; 4054*4882a593Smuzhiyun rockchip,task-capacity = <8>; 4055*4882a593Smuzhiyun power-domains = <&power RK3588_PD_VENC1>; 4056*4882a593Smuzhiyun operating-points-v2 = <&venc_opp_table>; 4057*4882a593Smuzhiyun status = "disabled"; 4058*4882a593Smuzhiyun }; 4059*4882a593Smuzhiyun 4060*4882a593Smuzhiyun rkvenc1_mmu: iommu@fdbef000 { 4061*4882a593Smuzhiyun compatible = "rockchip,iommu-v2"; 4062*4882a593Smuzhiyun reg = <0x0 0xfdbef000 0x0 0x40>, <0x0 0xfdbef040 0x0 0x40>; 4063*4882a593Smuzhiyun interrupts = <GIC_SPI 102 IRQ_TYPE_LEVEL_HIGH>, 4064*4882a593Smuzhiyun <GIC_SPI 103 IRQ_TYPE_LEVEL_HIGH>; 4065*4882a593Smuzhiyun interrupt-names = "irq_rkvenc1_mmu0", "irq_rkvenc1_mmu1"; 4066*4882a593Smuzhiyun clocks = <&cru ACLK_RKVENC1>, <&cru HCLK_RKVENC1>; 4067*4882a593Smuzhiyun lock-names = "aclk", "iface"; 4068*4882a593Smuzhiyun rockchip,disable-mmu-reset; 4069*4882a593Smuzhiyun rockchip,enable-cmd-retry; 4070*4882a593Smuzhiyun rockchip,shootdown-entire; 4071*4882a593Smuzhiyun #iommu-cells = <0>; 4072*4882a593Smuzhiyun power-domains = <&power RK3588_PD_VENC1>; 4073*4882a593Smuzhiyun status = "disabled"; 4074*4882a593Smuzhiyun }; 4075*4882a593Smuzhiyun 4076*4882a593Smuzhiyun venc_opp_table: venc-opp-table { 4077*4882a593Smuzhiyun compatible = "operating-points-v2"; 4078*4882a593Smuzhiyun 4079*4882a593Smuzhiyun nvmem-cells = <&codec_leakage>, <&venc_opp_info>; 4080*4882a593Smuzhiyun nvmem-cell-names = "leakage", "opp-info"; 4081*4882a593Smuzhiyun rockchip,leakage-voltage-sel = < 4082*4882a593Smuzhiyun 1 8 0 4083*4882a593Smuzhiyun 9 20 1 4084*4882a593Smuzhiyun 21 254 2 4085*4882a593Smuzhiyun >; 4086*4882a593Smuzhiyun 4087*4882a593Smuzhiyun rockchip,grf = <&sys_grf>; 4088*4882a593Smuzhiyun volt-mem-read-margin = < 4089*4882a593Smuzhiyun 855000 1 4090*4882a593Smuzhiyun 765000 2 4091*4882a593Smuzhiyun 675000 3 4092*4882a593Smuzhiyun 495000 4 4093*4882a593Smuzhiyun >; 4094*4882a593Smuzhiyun 4095*4882a593Smuzhiyun opp-800000000 { 4096*4882a593Smuzhiyun opp-hz = /bits/ 64 <800000000>; 4097*4882a593Smuzhiyun opp-microvolt = <750000 750000 850000>, 4098*4882a593Smuzhiyun <750000 750000 850000>; 4099*4882a593Smuzhiyun opp-microvolt-L0 = <800000 800000 850000>, 4100*4882a593Smuzhiyun <800000 800000 850000>; 4101*4882a593Smuzhiyun opp-microvolt-L1 = <775000 775000 850000>, 4102*4882a593Smuzhiyun <775000 775000 850000>; 4103*4882a593Smuzhiyun opp-microvolt-L2 = <750000 750000 850000>, 4104*4882a593Smuzhiyun <750000 750000 850000>; 4105*4882a593Smuzhiyun }; 4106*4882a593Smuzhiyun }; 4107*4882a593Smuzhiyun 4108*4882a593Smuzhiyun rkvdec_ccu: rkvdec-ccu@fdc30000 { 4109*4882a593Smuzhiyun compatible = "rockchip,rkv-decoder-v2-ccu"; 4110*4882a593Smuzhiyun reg = <0x0 0xfdc30000 0x0 0x100>; 4111*4882a593Smuzhiyun reg-names = "ccu"; 4112*4882a593Smuzhiyun clocks = <&cru ACLK_RKVDEC_CCU>; 4113*4882a593Smuzhiyun clock-names = "aclk_ccu"; 4114*4882a593Smuzhiyun assigned-clocks = <&cru ACLK_RKVDEC_CCU>; 4115*4882a593Smuzhiyun assigned-clock-rates = <600000000>; 4116*4882a593Smuzhiyun resets = <&cru SRST_A_RKVDEC_CCU>; 4117*4882a593Smuzhiyun reset-names = "video_ccu"; 4118*4882a593Smuzhiyun rockchip,skip-pmu-idle-request; 4119*4882a593Smuzhiyun /* 1: soft ccu 2: hw ccu */ 4120*4882a593Smuzhiyun rockchip,ccu-mode = <1>; 4121*4882a593Smuzhiyun power-domains = <&power RK3588_PD_RKVDEC0>; 4122*4882a593Smuzhiyun status = "disabled"; 4123*4882a593Smuzhiyun }; 4124*4882a593Smuzhiyun 4125*4882a593Smuzhiyun rkvdec0: rkvdec-core@fdc38000 { 4126*4882a593Smuzhiyun compatible = "rockchip,rkv-decoder-v2"; 4127*4882a593Smuzhiyun reg = <0x0 0xfdc38100 0x0 0x400>, <0x0 0xfdc38000 0x0 0x100>; 4128*4882a593Smuzhiyun reg-names = "regs", "link"; 4129*4882a593Smuzhiyun interrupts = <GIC_SPI 95 IRQ_TYPE_LEVEL_HIGH>; 4130*4882a593Smuzhiyun interrupt-names = "irq_rkvdec0"; 4131*4882a593Smuzhiyun clocks = <&cru ACLK_RKVDEC0>, <&cru HCLK_RKVDEC0>, <&cru CLK_RKVDEC0_CORE>, 4132*4882a593Smuzhiyun <&cru CLK_RKVDEC0_CA>, <&cru CLK_RKVDEC0_HEVC_CA>; 4133*4882a593Smuzhiyun clock-names = "aclk_vcodec", "hclk_vcodec", "clk_core", 4134*4882a593Smuzhiyun "clk_cabac", "clk_hevc_cabac"; 4135*4882a593Smuzhiyun rockchip,normal-rates = <800000000>, <0>, <600000000>, 4136*4882a593Smuzhiyun <600000000>, <1000000000>; 4137*4882a593Smuzhiyun assigned-clocks = <&cru ACLK_RKVDEC0>, <&cru CLK_RKVDEC0_CORE>, 4138*4882a593Smuzhiyun <&cru CLK_RKVDEC0_CA>, <&cru CLK_RKVDEC0_HEVC_CA>; 4139*4882a593Smuzhiyun assigned-clock-rates = <800000000>, <600000000>, 4140*4882a593Smuzhiyun <600000000>, <1000000000>; 4141*4882a593Smuzhiyun resets = <&cru SRST_A_RKVDEC0>, <&cru SRST_H_RKVDEC0>, <&cru SRST_RKVDEC0_CORE>, 4142*4882a593Smuzhiyun <&cru SRST_RKVDEC0_CA>, <&cru SRST_RKVDEC0_HEVC_CA>; 4143*4882a593Smuzhiyun reset-names = "video_a", "video_h", "video_core", 4144*4882a593Smuzhiyun "video_cabac", "video_hevc_cabac"; 4145*4882a593Smuzhiyun rockchip,skip-pmu-idle-request; 4146*4882a593Smuzhiyun iommus = <&rkvdec0_mmu>; 4147*4882a593Smuzhiyun rockchip,srv = <&mpp_srv>; 4148*4882a593Smuzhiyun rockchip,ccu = <&rkvdec_ccu>; 4149*4882a593Smuzhiyun rockchip,core-mask = <0x00010001>; 4150*4882a593Smuzhiyun rockchip,task-capacity = <16>; 4151*4882a593Smuzhiyun rockchip,taskqueue-node = <9>; 4152*4882a593Smuzhiyun rockchip,sram = <&rkvdec0_sram>; 4153*4882a593Smuzhiyun /* rcb_iova: start and size 1M@4095M */ 4154*4882a593Smuzhiyun rockchip,rcb-iova = <0xFFF00000 0x100000>; 4155*4882a593Smuzhiyun rockchip,rcb-info = <136 24576>, <137 49152>, <141 90112>, <140 49152>, 4156*4882a593Smuzhiyun <139 180224>, <133 49152>, <134 8192>, <135 4352>, 4157*4882a593Smuzhiyun <138 13056>, <142 291584>; 4158*4882a593Smuzhiyun rockchip,rcb-min-width = <512>; 4159*4882a593Smuzhiyun power-domains = <&power RK3588_PD_RKVDEC0>; 4160*4882a593Smuzhiyun status = "disabled"; 4161*4882a593Smuzhiyun }; 4162*4882a593Smuzhiyun 4163*4882a593Smuzhiyun rkvdec0_mmu: iommu@fdc38700 { 4164*4882a593Smuzhiyun compatible = "rockchip,iommu-v2"; 4165*4882a593Smuzhiyun reg = <0x0 0xfdc38700 0x0 0x40>, <0x0 0xfdc38740 0x0 0x40>; 4166*4882a593Smuzhiyun interrupts = <GIC_SPI 96 IRQ_TYPE_LEVEL_HIGH>; 4167*4882a593Smuzhiyun interrupt-names = "irq_rkvdec0_mmu"; 4168*4882a593Smuzhiyun clocks = <&cru ACLK_RKVDEC0>, <&cru HCLK_RKVDEC0>; 4169*4882a593Smuzhiyun clock-names = "aclk", "iface"; 4170*4882a593Smuzhiyun rockchip,disable-mmu-reset; 4171*4882a593Smuzhiyun rockchip,enable-cmd-retry; 4172*4882a593Smuzhiyun rockchip,shootdown-entire; 4173*4882a593Smuzhiyun rockchip,master-handle-irq; 4174*4882a593Smuzhiyun #iommu-cells = <0>; 4175*4882a593Smuzhiyun power-domains = <&power RK3588_PD_RKVDEC0>; 4176*4882a593Smuzhiyun status = "disabled"; 4177*4882a593Smuzhiyun }; 4178*4882a593Smuzhiyun 4179*4882a593Smuzhiyun rkvdec1: rkvdec-core@fdc48000 { 4180*4882a593Smuzhiyun compatible = "rockchip,rkv-decoder-v2"; 4181*4882a593Smuzhiyun reg = <0x0 0xfdc48100 0x0 0x400>, <0x0 0xfdc48000 0x0 0x100>; 4182*4882a593Smuzhiyun reg-names = "regs", "link"; 4183*4882a593Smuzhiyun interrupts = <GIC_SPI 97 IRQ_TYPE_LEVEL_HIGH>; 4184*4882a593Smuzhiyun interrupt-names = "irq_rkvdec1"; 4185*4882a593Smuzhiyun clocks = <&cru ACLK_RKVDEC1>, <&cru HCLK_RKVDEC1>, <&cru CLK_RKVDEC1_CORE>, 4186*4882a593Smuzhiyun <&cru CLK_RKVDEC1_CA>, <&cru CLK_RKVDEC1_HEVC_CA>; 4187*4882a593Smuzhiyun clock-names = "aclk_vcodec", "hclk_vcodec", "clk_core", 4188*4882a593Smuzhiyun "clk_cabac", "clk_hevc_cabac"; 4189*4882a593Smuzhiyun rockchip,normal-rates = <800000000>, <0>, <600000000>, 4190*4882a593Smuzhiyun <600000000>, <1000000000>; 4191*4882a593Smuzhiyun assigned-clocks = <&cru ACLK_RKVDEC1>, <&cru CLK_RKVDEC1_CORE>, 4192*4882a593Smuzhiyun <&cru CLK_RKVDEC1_CA>, <&cru CLK_RKVDEC1_HEVC_CA>; 4193*4882a593Smuzhiyun assigned-clock-rates = <800000000>, <600000000>, 4194*4882a593Smuzhiyun <600000000>, <1000000000>; 4195*4882a593Smuzhiyun resets = <&cru SRST_A_RKVDEC1>, <&cru SRST_H_RKVDEC1>, <&cru SRST_RKVDEC1_CORE>, 4196*4882a593Smuzhiyun <&cru SRST_RKVDEC1_CA>, <&cru SRST_RKVDEC1_HEVC_CA>; 4197*4882a593Smuzhiyun reset-names = "video_a", "video_h", "video_core", 4198*4882a593Smuzhiyun "video_cabac", "video_hevc_cabac"; 4199*4882a593Smuzhiyun rockchip,skip-pmu-idle-request; 4200*4882a593Smuzhiyun iommus = <&rkvdec1_mmu>; 4201*4882a593Smuzhiyun rockchip,srv = <&mpp_srv>; 4202*4882a593Smuzhiyun rockchip,ccu = <&rkvdec_ccu>; 4203*4882a593Smuzhiyun rockchip,core-mask = <0x00020002>; 4204*4882a593Smuzhiyun rockchip,task-capacity = <16>; 4205*4882a593Smuzhiyun rockchip,taskqueue-node = <9>; 4206*4882a593Smuzhiyun rockchip,sram = <&rkvdec1_sram>; 4207*4882a593Smuzhiyun /* rcb_iova: start and size 1M@4094M */ 4208*4882a593Smuzhiyun rockchip,rcb-iova = <0xFFE00000 0x100000>; 4209*4882a593Smuzhiyun rockchip,rcb-info = <136 24576>, <137 49152>, <141 90112>, <140 49152>, 4210*4882a593Smuzhiyun <139 180224>, <133 49152>, <134 8192>, <135 4352>, 4211*4882a593Smuzhiyun <138 13056>, <142 291584>; 4212*4882a593Smuzhiyun rockchip,rcb-min-width = <512>; 4213*4882a593Smuzhiyun power-domains = <&power RK3588_PD_RKVDEC1>; 4214*4882a593Smuzhiyun status = "disabled"; 4215*4882a593Smuzhiyun }; 4216*4882a593Smuzhiyun 4217*4882a593Smuzhiyun rkvdec1_mmu: iommu@fdc48700 { 4218*4882a593Smuzhiyun compatible = "rockchip,iommu-v2"; 4219*4882a593Smuzhiyun reg = <0x0 0xfdc48700 0x0 0x40>, <0x0 0xfdc48740 0x0 0x40>; 4220*4882a593Smuzhiyun interrupts = <GIC_SPI 98 IRQ_TYPE_LEVEL_HIGH>; 4221*4882a593Smuzhiyun interrupt-names = "irq_rkvdec1_mmu"; 4222*4882a593Smuzhiyun clocks = <&cru ACLK_RKVDEC1>, <&cru HCLK_RKVDEC1>; 4223*4882a593Smuzhiyun clock-names = "aclk", "iface"; 4224*4882a593Smuzhiyun rockchip,disable-mmu-reset; 4225*4882a593Smuzhiyun rockchip,enable-cmd-retry; 4226*4882a593Smuzhiyun rockchip,shootdown-entire; 4227*4882a593Smuzhiyun rockchip,master-handle-irq; 4228*4882a593Smuzhiyun #iommu-cells = <0>; 4229*4882a593Smuzhiyun power-domains = <&power RK3588_PD_RKVDEC1>; 4230*4882a593Smuzhiyun status = "disabled"; 4231*4882a593Smuzhiyun }; 4232*4882a593Smuzhiyun 4233*4882a593Smuzhiyun av1d: av1d@fdc70000 { 4234*4882a593Smuzhiyun compatible = "rockchip,av1-decoder"; 4235*4882a593Smuzhiyun reg = <0x0 0xfdc70000 0x0 0x800>, <0x0 0xfdc80000 0x0 0x400>, 4236*4882a593Smuzhiyun <0x0 0xfdc90000 0x0 0x400>; 4237*4882a593Smuzhiyun reg-names = "vcd", "cache", "afbc"; 4238*4882a593Smuzhiyun interrupts = <GIC_SPI 108 IRQ_TYPE_LEVEL_HIGH>, <GIC_SPI 107 IRQ_TYPE_LEVEL_HIGH>, 4239*4882a593Smuzhiyun <GIC_SPI 106 IRQ_TYPE_LEVEL_HIGH>; 4240*4882a593Smuzhiyun interrupt-names = "irq_av1d", "irq_cache", "irq_afbc"; 4241*4882a593Smuzhiyun clocks = <&cru ACLK_AV1>, <&cru PCLK_AV1>; 4242*4882a593Smuzhiyun clock-names = "aclk_vcodec", "hclk_vcodec"; 4243*4882a593Smuzhiyun rockchip,normal-rates = <400000000>, <400000000>; 4244*4882a593Smuzhiyun assigned-clocks = <&cru ACLK_AV1>, <&cru PCLK_AV1>; 4245*4882a593Smuzhiyun assigned-clock-rates = <400000000>, <400000000>; 4246*4882a593Smuzhiyun resets = <&cru SRST_A_AV1>, <&cru SRST_P_AV1>; 4247*4882a593Smuzhiyun reset-names = "video_a", "video_h"; 4248*4882a593Smuzhiyun iommus = <&av1d_mmu>; 4249*4882a593Smuzhiyun rockchip,srv = <&mpp_srv>; 4250*4882a593Smuzhiyun rockchip,taskqueue-node = <11>; 4251*4882a593Smuzhiyun power-domains = <&power RK3588_PD_AV1>; 4252*4882a593Smuzhiyun status = "disabled"; 4253*4882a593Smuzhiyun }; 4254*4882a593Smuzhiyun 4255*4882a593Smuzhiyun av1d_mmu: iommu@fdca0000 { 4256*4882a593Smuzhiyun compatible = "rockchip,iommu-av1"; 4257*4882a593Smuzhiyun reg = <0x0 0xfdca0000 0x0 0x600>; 4258*4882a593Smuzhiyun interrupts = <GIC_SPI 109 IRQ_TYPE_LEVEL_HIGH>; 4259*4882a593Smuzhiyun interrupt-names = "irq_av1d_mmu"; 4260*4882a593Smuzhiyun clocks = <&cru ACLK_AV1>, <&cru PCLK_AV1>; 4261*4882a593Smuzhiyun clock-names = "aclk", "iface"; 4262*4882a593Smuzhiyun #iommu-cells = <0>; 4263*4882a593Smuzhiyun power-domains = <&power RK3588_PD_AV1>; 4264*4882a593Smuzhiyun status = "disabled"; 4265*4882a593Smuzhiyun }; 4266*4882a593Smuzhiyun 4267*4882a593Smuzhiyun rkisp_unite: rkisp-unite@fdcb0000 { 4268*4882a593Smuzhiyun compatible = "rockchip,rk3588-rkisp-unite"; 4269*4882a593Smuzhiyun reg = <0x0 0xfdcb0000 0x0 0x10000>, 4270*4882a593Smuzhiyun <0x0 0xfdcc0000 0x0 0x10000>; 4271*4882a593Smuzhiyun interrupts = <GIC_SPI 135 IRQ_TYPE_LEVEL_HIGH>, 4272*4882a593Smuzhiyun <GIC_SPI 137 IRQ_TYPE_LEVEL_HIGH>, 4273*4882a593Smuzhiyun <GIC_SPI 138 IRQ_TYPE_LEVEL_HIGH>; 4274*4882a593Smuzhiyun interrupt-names = "isp_irq", "mi_irq", "mipi_irq"; 4275*4882a593Smuzhiyun clocks = <&cru ACLK_ISP0>, <&cru HCLK_ISP0>, 4276*4882a593Smuzhiyun <&cru CLK_ISP0_CORE>, <&cru CLK_ISP0_CORE_MARVIN>, 4277*4882a593Smuzhiyun <&cru CLK_ISP0_CORE_VICAP>, <&cru ACLK_ISP1>, 4278*4882a593Smuzhiyun <&cru HCLK_ISP1>, <&cru CLK_ISP1_CORE>, 4279*4882a593Smuzhiyun <&cru CLK_ISP1_CORE_MARVIN>, <&cru CLK_ISP1_CORE_VICAP>; 4280*4882a593Smuzhiyun clock-names = "aclk_isp0", "hclk_isp0", "clk_isp_core0", 4281*4882a593Smuzhiyun "clk_isp_core_marvin0", "clk_isp_core_vicap0", 4282*4882a593Smuzhiyun "aclk_isp1", "hclk_isp1", "clk_isp_core1", 4283*4882a593Smuzhiyun "clk_isp_core_marvin1", "clk_isp_core_vicap1"; 4284*4882a593Smuzhiyun power-domains = <&power RK3588_PD_ISP1>; 4285*4882a593Smuzhiyun iommus = <&rkisp_unite_mmu>; 4286*4882a593Smuzhiyun status = "disabled"; 4287*4882a593Smuzhiyun }; 4288*4882a593Smuzhiyun 4289*4882a593Smuzhiyun rkisp0: rkisp@fdcb0000 { 4290*4882a593Smuzhiyun compatible = "rockchip,rk3588-rkisp"; 4291*4882a593Smuzhiyun reg = <0x0 0xfdcb0000 0x0 0x7f00>; 4292*4882a593Smuzhiyun interrupts = <GIC_SPI 131 IRQ_TYPE_LEVEL_HIGH>, 4293*4882a593Smuzhiyun <GIC_SPI 133 IRQ_TYPE_LEVEL_HIGH>, 4294*4882a593Smuzhiyun <GIC_SPI 134 IRQ_TYPE_LEVEL_HIGH>; 4295*4882a593Smuzhiyun interrupt-names = "isp_irq", "mi_irq", "mipi_irq"; 4296*4882a593Smuzhiyun clocks = <&cru ACLK_ISP0>, <&cru HCLK_ISP0>, 4297*4882a593Smuzhiyun <&cru CLK_ISP0_CORE>, <&cru CLK_ISP0_CORE_MARVIN>, 4298*4882a593Smuzhiyun <&cru CLK_ISP0_CORE_VICAP>; 4299*4882a593Smuzhiyun clock-names = "aclk_isp", "hclk_isp", "clk_isp_core", 4300*4882a593Smuzhiyun "clk_isp_core_marvin", "clk_isp_core_vicap"; 4301*4882a593Smuzhiyun power-domains = <&power RK3588_PD_VI>; 4302*4882a593Smuzhiyun iommus = <&isp0_mmu>; 4303*4882a593Smuzhiyun status = "disabled"; 4304*4882a593Smuzhiyun }; 4305*4882a593Smuzhiyun 4306*4882a593Smuzhiyun rkisp_unite_mmu: rkisp-unite-mmu@fdcb7f00 { 4307*4882a593Smuzhiyun compatible = "rockchip,iommu-v2"; 4308*4882a593Smuzhiyun reg = <0x0 0xfdcb7f00 0x0 0x100>, <0x0 0xfdcc7f00 0x0 0x100>; 4309*4882a593Smuzhiyun interrupts = <GIC_SPI 132 IRQ_TYPE_LEVEL_HIGH>, 4310*4882a593Smuzhiyun <GIC_SPI 136 IRQ_TYPE_LEVEL_HIGH>; 4311*4882a593Smuzhiyun interrupt-names = "isp0_mmu", "isp1_mmu"; 4312*4882a593Smuzhiyun clocks = <&cru ACLK_ISP0>, <&cru HCLK_ISP0>, 4313*4882a593Smuzhiyun <&cru ACLK_ISP1>, <&cru HCLK_ISP1>; 4314*4882a593Smuzhiyun clock-names = "aclk0", "iface0", "aclk1", "iface1"; 4315*4882a593Smuzhiyun power-domains = <&power RK3588_PD_ISP1>; 4316*4882a593Smuzhiyun #iommu-cells = <0>; 4317*4882a593Smuzhiyun rockchip,disable-mmu-reset; 4318*4882a593Smuzhiyun status = "disabled"; 4319*4882a593Smuzhiyun }; 4320*4882a593Smuzhiyun 4321*4882a593Smuzhiyun isp0_mmu: iommu@fdcb7f00 { 4322*4882a593Smuzhiyun compatible = "rockchip,iommu-v2"; 4323*4882a593Smuzhiyun reg = <0x0 0xfdcb7f00 0x0 0x100>; 4324*4882a593Smuzhiyun interrupts = <GIC_SPI 132 IRQ_TYPE_LEVEL_HIGH>; 4325*4882a593Smuzhiyun interrupt-names = "isp0_mmu"; 4326*4882a593Smuzhiyun clocks = <&cru ACLK_ISP0>, <&cru HCLK_ISP0>; 4327*4882a593Smuzhiyun clock-names = "aclk", "iface"; 4328*4882a593Smuzhiyun power-domains = <&power RK3588_PD_VI>; 4329*4882a593Smuzhiyun #iommu-cells = <0>; 4330*4882a593Smuzhiyun rockchip,disable-mmu-reset; 4331*4882a593Smuzhiyun status = "disabled"; 4332*4882a593Smuzhiyun }; 4333*4882a593Smuzhiyun 4334*4882a593Smuzhiyun rkisp1: rkisp@fdcc0000 { 4335*4882a593Smuzhiyun compatible = "rockchip,rk3588-rkisp"; 4336*4882a593Smuzhiyun reg = <0x0 0xfdcc0000 0x0 0x7f00>; 4337*4882a593Smuzhiyun interrupts = <GIC_SPI 135 IRQ_TYPE_LEVEL_HIGH>, 4338*4882a593Smuzhiyun <GIC_SPI 137 IRQ_TYPE_LEVEL_HIGH>, 4339*4882a593Smuzhiyun <GIC_SPI 138 IRQ_TYPE_LEVEL_HIGH>; 4340*4882a593Smuzhiyun interrupt-names = "isp_irq", "mi_irq", "mipi_irq"; 4341*4882a593Smuzhiyun clocks = <&cru ACLK_ISP1>, <&cru HCLK_ISP1>, 4342*4882a593Smuzhiyun <&cru CLK_ISP1_CORE>, <&cru CLK_ISP1_CORE_MARVIN>, 4343*4882a593Smuzhiyun <&cru CLK_ISP1_CORE_VICAP>; 4344*4882a593Smuzhiyun clock-names = "aclk_isp", "hclk_isp", "clk_isp_core", 4345*4882a593Smuzhiyun "clk_isp_core_marvin", "clk_isp_core_vicap"; 4346*4882a593Smuzhiyun power-domains = <&power RK3588_PD_ISP1>; 4347*4882a593Smuzhiyun iommus = <&isp1_mmu>; 4348*4882a593Smuzhiyun status = "disabled"; 4349*4882a593Smuzhiyun }; 4350*4882a593Smuzhiyun 4351*4882a593Smuzhiyun isp1_mmu: iommu@fdcc7f00 { 4352*4882a593Smuzhiyun compatible = "rockchip,iommu-v2"; 4353*4882a593Smuzhiyun reg = <0x0 0xfdcc7f00 0x0 0x100>; 4354*4882a593Smuzhiyun interrupts = <GIC_SPI 136 IRQ_TYPE_LEVEL_HIGH>; 4355*4882a593Smuzhiyun interrupt-names = "isp1_mmu"; 4356*4882a593Smuzhiyun clocks = <&cru ACLK_ISP1>, <&cru HCLK_ISP1>; 4357*4882a593Smuzhiyun clock-names = "aclk", "iface"; 4358*4882a593Smuzhiyun power-domains = <&power RK3588_PD_ISP1>; 4359*4882a593Smuzhiyun #iommu-cells = <0>; 4360*4882a593Smuzhiyun rockchip,disable-mmu-reset; 4361*4882a593Smuzhiyun status = "disabled"; 4362*4882a593Smuzhiyun }; 4363*4882a593Smuzhiyun 4364*4882a593Smuzhiyun rkispp0: rkispp@fdcd0000 { 4365*4882a593Smuzhiyun compatible = "rockchip,rk3588-rkispp"; 4366*4882a593Smuzhiyun reg = <0x0 0xfdcd0000 0x0 0x0f00>; 4367*4882a593Smuzhiyun interrupts = <GIC_SPI 139 IRQ_TYPE_LEVEL_HIGH>; 4368*4882a593Smuzhiyun interrupt-names = "fec_irq"; 4369*4882a593Smuzhiyun clocks = <&cru ACLK_FISHEYE0>, <&cru HCLK_FISHEYE0>, 4370*4882a593Smuzhiyun <&cru CLK_FISHEYE0_CORE>; 4371*4882a593Smuzhiyun clock-names = "aclk_ispp", "hclk_ispp", "clk_ispp"; 4372*4882a593Smuzhiyun assigned-clocks = <&cru HCLK_FISHEYE0>; 4373*4882a593Smuzhiyun assigned-clock-rates = <100000000>; 4374*4882a593Smuzhiyun power-domains = <&power RK3588_PD_FEC>; 4375*4882a593Smuzhiyun iommus = <&fec0_mmu>; 4376*4882a593Smuzhiyun status = "disabled"; 4377*4882a593Smuzhiyun }; 4378*4882a593Smuzhiyun 4379*4882a593Smuzhiyun fec0_mmu: iommu@fdcd0f00 { 4380*4882a593Smuzhiyun compatible = "rockchip,iommu-v2"; 4381*4882a593Smuzhiyun reg = <0x0 0xfdcd0f00 0x0 0x100>; 4382*4882a593Smuzhiyun interrupts = <GIC_SPI 140 IRQ_TYPE_LEVEL_HIGH>; 4383*4882a593Smuzhiyun interrupt-names = "fec0_mmu"; 4384*4882a593Smuzhiyun clocks = <&cru ACLK_FISHEYE0>, <&cru HCLK_FISHEYE0>, <&cru CLK_FISHEYE0_CORE>; 4385*4882a593Smuzhiyun clock-names = "aclk", "iface", "pclk"; 4386*4882a593Smuzhiyun power-domains = <&power RK3588_PD_FEC>; 4387*4882a593Smuzhiyun #iommu-cells = <0>; 4388*4882a593Smuzhiyun rockchip,disable-mmu-reset; 4389*4882a593Smuzhiyun status = "disabled"; 4390*4882a593Smuzhiyun }; 4391*4882a593Smuzhiyun 4392*4882a593Smuzhiyun rkispp1: rkispp@fdcd8000 { 4393*4882a593Smuzhiyun compatible = "rockchip,rk3588-rkispp"; 4394*4882a593Smuzhiyun reg = <0x0 0xfdcd8000 0x0 0x0f00>; 4395*4882a593Smuzhiyun interrupts = <GIC_SPI 141 IRQ_TYPE_LEVEL_HIGH>; 4396*4882a593Smuzhiyun interrupt-names = "fec_irq"; 4397*4882a593Smuzhiyun clocks = <&cru ACLK_FISHEYE1>, <&cru HCLK_FISHEYE1>, 4398*4882a593Smuzhiyun <&cru CLK_FISHEYE1_CORE>; 4399*4882a593Smuzhiyun clock-names = "aclk_ispp", "hclk_ispp", "clk_ispp"; 4400*4882a593Smuzhiyun assigned-clocks = <&cru HCLK_FISHEYE1>; 4401*4882a593Smuzhiyun assigned-clock-rates = <100000000>; 4402*4882a593Smuzhiyun power-domains = <&power RK3588_PD_FEC>; 4403*4882a593Smuzhiyun iommus = <&fec1_mmu>; 4404*4882a593Smuzhiyun status = "disabled"; 4405*4882a593Smuzhiyun }; 4406*4882a593Smuzhiyun 4407*4882a593Smuzhiyun fec1_mmu: iommu@fdcd8f00 { 4408*4882a593Smuzhiyun compatible = "rockchip,iommu-v2"; 4409*4882a593Smuzhiyun reg = <0x0 0xfdcd8f00 0x0 0x100>; 4410*4882a593Smuzhiyun interrupts = <GIC_SPI 142 IRQ_TYPE_LEVEL_HIGH>; 4411*4882a593Smuzhiyun interrupt-names = "fec1_mmu"; 4412*4882a593Smuzhiyun clocks = <&cru ACLK_FISHEYE1>, <&cru HCLK_FISHEYE1>, <&cru CLK_FISHEYE1_CORE>; 4413*4882a593Smuzhiyun clock-names = "aclk", "iface", "pclk"; 4414*4882a593Smuzhiyun power-domains = <&power RK3588_PD_FEC>; 4415*4882a593Smuzhiyun #iommu-cells = <0>; 4416*4882a593Smuzhiyun rockchip,disable-mmu-reset; 4417*4882a593Smuzhiyun status = "disabled"; 4418*4882a593Smuzhiyun }; 4419*4882a593Smuzhiyun 4420*4882a593Smuzhiyun rkcif: rkcif@fdce0000 { 4421*4882a593Smuzhiyun compatible = "rockchip,rk3588-cif"; 4422*4882a593Smuzhiyun reg = <0x0 0xfdce0000 0x0 0x800>; 4423*4882a593Smuzhiyun reg-names = "cif_regs"; 4424*4882a593Smuzhiyun interrupts = <GIC_SPI 155 IRQ_TYPE_LEVEL_HIGH>; 4425*4882a593Smuzhiyun interrupt-names = "cif-intr"; 4426*4882a593Smuzhiyun clocks = <&cru ACLK_VICAP>, <&cru HCLK_VICAP>, <&cru DCLK_VICAP>, 4427*4882a593Smuzhiyun <&cru ICLK_CSIHOST0>, <&cru ICLK_CSIHOST1>; 4428*4882a593Smuzhiyun clock-names = "aclk_cif", "hclk_cif", "dclk_cif", 4429*4882a593Smuzhiyun "iclk_host0", "iclk_host1"; 4430*4882a593Smuzhiyun resets = <&cru SRST_A_VICAP>, <&cru SRST_H_VICAP>, <&cru SRST_D_VICAP>, 4431*4882a593Smuzhiyun <&cru SRST_CSIHOST0_VICAP>, <&cru SRST_CSIHOST1_VICAP>, 4432*4882a593Smuzhiyun <&cru SRST_CSIHOST2_VICAP>, <&cru SRST_CSIHOST3_VICAP>, 4433*4882a593Smuzhiyun <&cru SRST_CSIHOST4_VICAP>, <&cru SRST_CSIHOST5_VICAP>; 4434*4882a593Smuzhiyun reset-names = "rst_cif_a", "rst_cif_h", "rst_cif_d", 4435*4882a593Smuzhiyun "rst_cif_host0", "rst_cif_host1", "rst_cif_host2", 4436*4882a593Smuzhiyun "rst_cif_host3", "rst_cif_host4", "rst_cif_host5"; 4437*4882a593Smuzhiyun assigned-clocks = <&cru DCLK_VICAP>; 4438*4882a593Smuzhiyun assigned-clock-rates = <600000000>; 4439*4882a593Smuzhiyun power-domains = <&power RK3588_PD_VI>; 4440*4882a593Smuzhiyun rockchip,grf = <&sys_grf>; 4441*4882a593Smuzhiyun iommus = <&rkcif_mmu>; 4442*4882a593Smuzhiyun nvmem-cells = <&specification_serial_number>, 4443*4882a593Smuzhiyun <&package_serial_number_low>, 4444*4882a593Smuzhiyun <&package_serial_number_high>; 4445*4882a593Smuzhiyun nvmem-cell-names = "specification", 4446*4882a593Smuzhiyun "package_low", 4447*4882a593Smuzhiyun "package_high"; 4448*4882a593Smuzhiyun status = "disabled"; 4449*4882a593Smuzhiyun }; 4450*4882a593Smuzhiyun 4451*4882a593Smuzhiyun rkcif_mmu: iommu@fdce0800 { 4452*4882a593Smuzhiyun compatible = "rockchip,iommu-v2"; 4453*4882a593Smuzhiyun reg = <0x0 0xfdce0800 0x0 0x100>, 4454*4882a593Smuzhiyun <0x0 0xfdce0900 0x0 0x100>; 4455*4882a593Smuzhiyun interrupts = <GIC_SPI 113 IRQ_TYPE_LEVEL_HIGH>; 4456*4882a593Smuzhiyun interrupt-names = "cif_mmu"; 4457*4882a593Smuzhiyun clocks = <&cru ACLK_VICAP>, <&cru HCLK_VICAP>; 4458*4882a593Smuzhiyun clock-names = "aclk", "iface"; 4459*4882a593Smuzhiyun power-domains = <&power RK3588_PD_VI>; 4460*4882a593Smuzhiyun rockchip,disable-mmu-reset; 4461*4882a593Smuzhiyun #iommu-cells = <0>; 4462*4882a593Smuzhiyun status = "disabled"; 4463*4882a593Smuzhiyun }; 4464*4882a593Smuzhiyun 4465*4882a593Smuzhiyun mipi0_csi2_hw: mipi0-csi2-hw@fdd10000 { 4466*4882a593Smuzhiyun compatible = "rockchip,rk3588-mipi-csi2-hw"; 4467*4882a593Smuzhiyun reg = <0x0 0xfdd10000 0x0 0x10000>; 4468*4882a593Smuzhiyun reg-names = "csihost_regs"; 4469*4882a593Smuzhiyun interrupts = <GIC_SPI 143 IRQ_TYPE_LEVEL_HIGH>, 4470*4882a593Smuzhiyun <GIC_SPI 144 IRQ_TYPE_LEVEL_HIGH>; 4471*4882a593Smuzhiyun interrupt-names = "csi-intr1", "csi-intr2"; 4472*4882a593Smuzhiyun clocks = <&cru PCLK_CSI_HOST_0>; 4473*4882a593Smuzhiyun clock-names = "pclk_csi2host"; 4474*4882a593Smuzhiyun resets = <&cru SRST_P_CSI_HOST_0>; 4475*4882a593Smuzhiyun reset-names = "srst_csihost_p"; 4476*4882a593Smuzhiyun status = "okay"; 4477*4882a593Smuzhiyun }; 4478*4882a593Smuzhiyun 4479*4882a593Smuzhiyun mipi1_csi2_hw: mipi1-csi2-hw@fdd20000 { 4480*4882a593Smuzhiyun compatible = "rockchip,rk3588-mipi-csi2-hw"; 4481*4882a593Smuzhiyun reg = <0x0 0xfdd20000 0x0 0x10000>; 4482*4882a593Smuzhiyun reg-names = "csihost_regs"; 4483*4882a593Smuzhiyun interrupts = <GIC_SPI 145 IRQ_TYPE_LEVEL_HIGH>, 4484*4882a593Smuzhiyun <GIC_SPI 146 IRQ_TYPE_LEVEL_HIGH>; 4485*4882a593Smuzhiyun interrupt-names = "csi-intr1", "csi-intr2"; 4486*4882a593Smuzhiyun clocks = <&cru PCLK_CSI_HOST_1>; 4487*4882a593Smuzhiyun clock-names = "pclk_csi2host"; 4488*4882a593Smuzhiyun resets = <&cru SRST_P_CSI_HOST_1>; 4489*4882a593Smuzhiyun reset-names = "srst_csihost_p"; 4490*4882a593Smuzhiyun status = "okay"; 4491*4882a593Smuzhiyun }; 4492*4882a593Smuzhiyun 4493*4882a593Smuzhiyun mipi2_csi2_hw: mipi2-csi2-hw@fdd30000 { 4494*4882a593Smuzhiyun compatible = "rockchip,rk3588-mipi-csi2-hw"; 4495*4882a593Smuzhiyun reg = <0x0 0xfdd30000 0x0 0x10000>; 4496*4882a593Smuzhiyun reg-names = "csihost_regs"; 4497*4882a593Smuzhiyun interrupts = <GIC_SPI 147 IRQ_TYPE_LEVEL_HIGH>, 4498*4882a593Smuzhiyun <GIC_SPI 148 IRQ_TYPE_LEVEL_HIGH>; 4499*4882a593Smuzhiyun interrupt-names = "csi-intr1", "csi-intr2"; 4500*4882a593Smuzhiyun clocks = <&cru PCLK_CSI_HOST_2>; 4501*4882a593Smuzhiyun clock-names = "pclk_csi2host"; 4502*4882a593Smuzhiyun resets = <&cru SRST_P_CSI_HOST_2>; 4503*4882a593Smuzhiyun reset-names = "srst_csihost_p"; 4504*4882a593Smuzhiyun status = "okay"; 4505*4882a593Smuzhiyun }; 4506*4882a593Smuzhiyun 4507*4882a593Smuzhiyun mipi3_csi2_hw: mipi3-csi2-hw@fdd40000 { 4508*4882a593Smuzhiyun compatible = "rockchip,rk3588-mipi-csi2-hw"; 4509*4882a593Smuzhiyun reg = <0x0 0xfdd40000 0x0 0x10000>; 4510*4882a593Smuzhiyun reg-names = "csihost_regs"; 4511*4882a593Smuzhiyun interrupts = <GIC_SPI 149 IRQ_TYPE_LEVEL_HIGH>, 4512*4882a593Smuzhiyun <GIC_SPI 150 IRQ_TYPE_LEVEL_HIGH>; 4513*4882a593Smuzhiyun interrupt-names = "csi-intr1", "csi-intr2"; 4514*4882a593Smuzhiyun clocks = <&cru PCLK_CSI_HOST_3>; 4515*4882a593Smuzhiyun clock-names = "pclk_csi2host"; 4516*4882a593Smuzhiyun resets = <&cru SRST_P_CSI_HOST_3>; 4517*4882a593Smuzhiyun reset-names = "srst_csihost_p"; 4518*4882a593Smuzhiyun status = "okay"; 4519*4882a593Smuzhiyun }; 4520*4882a593Smuzhiyun 4521*4882a593Smuzhiyun mipi4_csi2_hw: mipi4-csi2-hw@fdd50000 { 4522*4882a593Smuzhiyun compatible = "rockchip,rk3588-mipi-csi2-hw"; 4523*4882a593Smuzhiyun reg = <0x0 0xfdd50000 0x0 0x10000>; 4524*4882a593Smuzhiyun reg-names = "csihost_regs"; 4525*4882a593Smuzhiyun interrupts = <GIC_SPI 151 IRQ_TYPE_LEVEL_HIGH>, 4526*4882a593Smuzhiyun <GIC_SPI 152 IRQ_TYPE_LEVEL_HIGH>; 4527*4882a593Smuzhiyun interrupt-names = "csi-intr1", "csi-intr2"; 4528*4882a593Smuzhiyun clocks = <&cru PCLK_CSI_HOST_4>; 4529*4882a593Smuzhiyun clock-names = "pclk_csi2host"; 4530*4882a593Smuzhiyun resets = <&cru SRST_P_CSI_HOST_4>; 4531*4882a593Smuzhiyun reset-names = "srst_csihost_p"; 4532*4882a593Smuzhiyun status = "okay"; 4533*4882a593Smuzhiyun }; 4534*4882a593Smuzhiyun 4535*4882a593Smuzhiyun mipi5_csi2_hw: mipi5-csi2-hw@fdd60000 { 4536*4882a593Smuzhiyun compatible = "rockchip,rk3588-mipi-csi2-hw"; 4537*4882a593Smuzhiyun reg = <0x0 0xfdd60000 0x0 0x10000>; 4538*4882a593Smuzhiyun reg-names = "csihost_regs"; 4539*4882a593Smuzhiyun interrupts = <GIC_SPI 153 IRQ_TYPE_LEVEL_HIGH>, 4540*4882a593Smuzhiyun <GIC_SPI 154 IRQ_TYPE_LEVEL_HIGH>; 4541*4882a593Smuzhiyun interrupt-names = "csi-intr1", "csi-intr2"; 4542*4882a593Smuzhiyun clocks = <&cru PCLK_CSI_HOST_5>; 4543*4882a593Smuzhiyun clock-names = "pclk_csi2host"; 4544*4882a593Smuzhiyun resets = <&cru SRST_P_CSI_HOST_5>; 4545*4882a593Smuzhiyun reset-names = "srst_csihost_p"; 4546*4882a593Smuzhiyun status = "okay"; 4547*4882a593Smuzhiyun }; 4548*4882a593Smuzhiyun 4549*4882a593Smuzhiyun vop: vop@fdd90000 { 4550*4882a593Smuzhiyun compatible = "rockchip,rk3588-vop"; 4551*4882a593Smuzhiyun reg = <0x0 0xfdd90000 0x0 0x4200>, <0x0 0xfdd95000 0x0 0x1000>; 4552*4882a593Smuzhiyun reg-names = "regs", "gamma_lut"; 4553*4882a593Smuzhiyun interrupts = <GIC_SPI 156 IRQ_TYPE_LEVEL_HIGH>; 4554*4882a593Smuzhiyun clocks = <&cru ACLK_VOP>, 4555*4882a593Smuzhiyun <&cru HCLK_VOP>, 4556*4882a593Smuzhiyun <&cru DCLK_VOP0>, 4557*4882a593Smuzhiyun <&cru DCLK_VOP1>, 4558*4882a593Smuzhiyun <&cru DCLK_VOP2>, 4559*4882a593Smuzhiyun <&cru DCLK_VOP3>, 4560*4882a593Smuzhiyun <&cru PCLK_VOP_ROOT>, 4561*4882a593Smuzhiyun <&cru DCLK_VOP0_SRC>, 4562*4882a593Smuzhiyun <&cru DCLK_VOP1_SRC>, 4563*4882a593Smuzhiyun <&cru DCLK_VOP2_SRC>; 4564*4882a593Smuzhiyun clock-names = "aclk_vop", 4565*4882a593Smuzhiyun "hclk_vop", 4566*4882a593Smuzhiyun "dclk_vp0", 4567*4882a593Smuzhiyun "dclk_vp1", 4568*4882a593Smuzhiyun "dclk_vp2", 4569*4882a593Smuzhiyun "dclk_vp3", 4570*4882a593Smuzhiyun "pclk_vop", 4571*4882a593Smuzhiyun "dclk_src_vp0", 4572*4882a593Smuzhiyun "dclk_src_vp1", 4573*4882a593Smuzhiyun "dclk_src_vp2"; 4574*4882a593Smuzhiyun assigned-clocks = <&cru ACLK_VOP>; 4575*4882a593Smuzhiyun assigned-clock-rates = <750000000>; 4576*4882a593Smuzhiyun resets = <&cru SRST_A_VOP>, 4577*4882a593Smuzhiyun <&cru SRST_H_VOP>, 4578*4882a593Smuzhiyun <&cru SRST_D_VOP0>, 4579*4882a593Smuzhiyun <&cru SRST_D_VOP1>, 4580*4882a593Smuzhiyun <&cru SRST_D_VOP2>, 4581*4882a593Smuzhiyun <&cru SRST_D_VOP3>; 4582*4882a593Smuzhiyun reset-names = "axi", 4583*4882a593Smuzhiyun "ahb", 4584*4882a593Smuzhiyun "dclk_vp0", 4585*4882a593Smuzhiyun "dclk_vp1", 4586*4882a593Smuzhiyun "dclk_vp2", 4587*4882a593Smuzhiyun "dclk_vp3"; 4588*4882a593Smuzhiyun iommus = <&vop_mmu>; 4589*4882a593Smuzhiyun power-domains = <&power RK3588_PD_VOP>; 4590*4882a593Smuzhiyun rockchip,grf = <&sys_grf>; 4591*4882a593Smuzhiyun rockchip,vop-grf = <&vop_grf>; 4592*4882a593Smuzhiyun rockchip,vo1-grf = <&vo1_grf>; 4593*4882a593Smuzhiyun rockchip,pmu = <&pmu>; 4594*4882a593Smuzhiyun 4595*4882a593Smuzhiyun status = "disabled"; 4596*4882a593Smuzhiyun 4597*4882a593Smuzhiyun vop_out: ports { 4598*4882a593Smuzhiyun #address-cells = <1>; 4599*4882a593Smuzhiyun #size-cells = <0>; 4600*4882a593Smuzhiyun 4601*4882a593Smuzhiyun vp0: port@0 { 4602*4882a593Smuzhiyun #address-cells = <1>; 4603*4882a593Smuzhiyun #size-cells = <0>; 4604*4882a593Smuzhiyun reg = <0>; 4605*4882a593Smuzhiyun 4606*4882a593Smuzhiyun vp0_out_dp0: endpoint@0 { 4607*4882a593Smuzhiyun reg = <0>; 4608*4882a593Smuzhiyun remote-endpoint = <&dp0_in_vp0>; 4609*4882a593Smuzhiyun }; 4610*4882a593Smuzhiyun 4611*4882a593Smuzhiyun vp0_out_edp0: endpoint@1 { 4612*4882a593Smuzhiyun reg = <1>; 4613*4882a593Smuzhiyun remote-endpoint = <&edp0_in_vp0>; 4614*4882a593Smuzhiyun }; 4615*4882a593Smuzhiyun 4616*4882a593Smuzhiyun vp0_out_hdmi0: endpoint@2 { 4617*4882a593Smuzhiyun reg = <2>; 4618*4882a593Smuzhiyun remote-endpoint = <&hdmi0_in_vp0>; 4619*4882a593Smuzhiyun }; 4620*4882a593Smuzhiyun }; 4621*4882a593Smuzhiyun 4622*4882a593Smuzhiyun vp1: port@1 { 4623*4882a593Smuzhiyun #address-cells = <1>; 4624*4882a593Smuzhiyun #size-cells = <0>; 4625*4882a593Smuzhiyun reg = <1>; 4626*4882a593Smuzhiyun 4627*4882a593Smuzhiyun vp1_out_dp0: endpoint@0 { 4628*4882a593Smuzhiyun reg = <0>; 4629*4882a593Smuzhiyun remote-endpoint = <&dp0_in_vp1>; 4630*4882a593Smuzhiyun }; 4631*4882a593Smuzhiyun 4632*4882a593Smuzhiyun vp1_out_edp0: endpoint@1 { 4633*4882a593Smuzhiyun reg = <1>; 4634*4882a593Smuzhiyun remote-endpoint = <&edp0_in_vp1>; 4635*4882a593Smuzhiyun }; 4636*4882a593Smuzhiyun 4637*4882a593Smuzhiyun vp1_out_hdmi0: endpoint@2 { 4638*4882a593Smuzhiyun reg = <2>; 4639*4882a593Smuzhiyun remote-endpoint = <&hdmi0_in_vp1>; 4640*4882a593Smuzhiyun }; 4641*4882a593Smuzhiyun }; 4642*4882a593Smuzhiyun 4643*4882a593Smuzhiyun vp2: port@2 { 4644*4882a593Smuzhiyun #address-cells = <1>; 4645*4882a593Smuzhiyun #size-cells = <0>; 4646*4882a593Smuzhiyun reg = <2>; 4647*4882a593Smuzhiyun 4648*4882a593Smuzhiyun assigned-clocks = <&cru DCLK_VOP2_SRC>; 4649*4882a593Smuzhiyun assigned-clock-parents = <&cru PLL_V0PLL>; 4650*4882a593Smuzhiyun 4651*4882a593Smuzhiyun vp2_out_dp0: endpoint@0 { 4652*4882a593Smuzhiyun reg = <0>; 4653*4882a593Smuzhiyun remote-endpoint = <&dp0_in_vp2>; 4654*4882a593Smuzhiyun }; 4655*4882a593Smuzhiyun 4656*4882a593Smuzhiyun vp2_out_edp0: endpoint@1 { 4657*4882a593Smuzhiyun reg = <1>; 4658*4882a593Smuzhiyun remote-endpoint = <&edp0_in_vp2>; 4659*4882a593Smuzhiyun }; 4660*4882a593Smuzhiyun 4661*4882a593Smuzhiyun vp2_out_hdmi0: endpoint@2 { 4662*4882a593Smuzhiyun reg = <2>; 4663*4882a593Smuzhiyun remote-endpoint = <&hdmi0_in_vp2>; 4664*4882a593Smuzhiyun }; 4665*4882a593Smuzhiyun 4666*4882a593Smuzhiyun vp2_out_dsi0: endpoint@3 { 4667*4882a593Smuzhiyun reg = <3>; 4668*4882a593Smuzhiyun remote-endpoint = <&dsi0_in_vp2>; 4669*4882a593Smuzhiyun }; 4670*4882a593Smuzhiyun 4671*4882a593Smuzhiyun vp2_out_dsi1: endpoint@4 { 4672*4882a593Smuzhiyun reg = <4>; 4673*4882a593Smuzhiyun remote-endpoint = <&dsi1_in_vp2>; 4674*4882a593Smuzhiyun }; 4675*4882a593Smuzhiyun }; 4676*4882a593Smuzhiyun 4677*4882a593Smuzhiyun vp3: port@3 { 4678*4882a593Smuzhiyun #address-cells = <1>; 4679*4882a593Smuzhiyun #size-cells = <0>; 4680*4882a593Smuzhiyun reg = <3>; 4681*4882a593Smuzhiyun 4682*4882a593Smuzhiyun vp3_out_dsi0: endpoint@0 { 4683*4882a593Smuzhiyun reg = <0>; 4684*4882a593Smuzhiyun remote-endpoint = <&dsi0_in_vp3>; 4685*4882a593Smuzhiyun }; 4686*4882a593Smuzhiyun 4687*4882a593Smuzhiyun vp3_out_dsi1: endpoint@1 { 4688*4882a593Smuzhiyun reg = <1>; 4689*4882a593Smuzhiyun remote-endpoint = <&dsi1_in_vp3>; 4690*4882a593Smuzhiyun }; 4691*4882a593Smuzhiyun 4692*4882a593Smuzhiyun vp3_out_rgb: endpoint@2 { 4693*4882a593Smuzhiyun reg = <2>; 4694*4882a593Smuzhiyun remote-endpoint = <&rgb_in_vp3>; 4695*4882a593Smuzhiyun }; 4696*4882a593Smuzhiyun }; 4697*4882a593Smuzhiyun }; 4698*4882a593Smuzhiyun }; 4699*4882a593Smuzhiyun 4700*4882a593Smuzhiyun vop_mmu: iommu@fdd97e00 { 4701*4882a593Smuzhiyun compatible = "rockchip,iommu-v2"; 4702*4882a593Smuzhiyun reg = <0x0 0xfdd97e00 0x0 0x100>, <0x0 0xfdd97f00 0x0 0x100>; 4703*4882a593Smuzhiyun interrupts = <GIC_SPI 156 IRQ_TYPE_LEVEL_HIGH>; 4704*4882a593Smuzhiyun interrupt-names = "vop_mmu"; 4705*4882a593Smuzhiyun clocks = <&cru ACLK_VOP>, <&cru HCLK_VOP>; 4706*4882a593Smuzhiyun clock-names = "aclk", "iface"; 4707*4882a593Smuzhiyun #iommu-cells = <0>; 4708*4882a593Smuzhiyun rockchip,disable-device-link-resume; 4709*4882a593Smuzhiyun rockchip,shootdown-entire; 4710*4882a593Smuzhiyun status = "disabled"; 4711*4882a593Smuzhiyun }; 4712*4882a593Smuzhiyun 4713*4882a593Smuzhiyun spdif_tx2: spdif-tx@fddb0000 { 4714*4882a593Smuzhiyun compatible = "rockchip,rk3588-spdif", "rockchip,rk3568-spdif"; 4715*4882a593Smuzhiyun reg = <0x0 0xfddb0000 0x0 0x1000>; 4716*4882a593Smuzhiyun interrupts = <GIC_SPI 195 IRQ_TYPE_LEVEL_HIGH>; 4717*4882a593Smuzhiyun dmas = <&dmac1 6>; 4718*4882a593Smuzhiyun dma-names = "tx"; 4719*4882a593Smuzhiyun clock-names = "mclk", "hclk"; 4720*4882a593Smuzhiyun clocks = <&cru MCLK_SPDIF2>, <&cru HCLK_SPDIF2_DP0>; 4721*4882a593Smuzhiyun assigned-clocks = <&cru CLK_SPDIF2_DP0_SRC>; 4722*4882a593Smuzhiyun assigned-clock-parents = <&cru PLL_AUPLL>; 4723*4882a593Smuzhiyun power-domains = <&power RK3588_PD_VO0>; 4724*4882a593Smuzhiyun #sound-dai-cells = <0>; 4725*4882a593Smuzhiyun status = "disabled"; 4726*4882a593Smuzhiyun }; 4727*4882a593Smuzhiyun 4728*4882a593Smuzhiyun i2s4_8ch: i2s@fddc0000 { 4729*4882a593Smuzhiyun compatible = "rockchip,rk3588-i2s-tdm"; 4730*4882a593Smuzhiyun reg = <0x0 0xfddc0000 0x0 0x1000>; 4731*4882a593Smuzhiyun interrupts = <GIC_SPI 184 IRQ_TYPE_LEVEL_HIGH>; 4732*4882a593Smuzhiyun clocks = <&cru MCLK_I2S4_8CH_TX>, <&cru MCLK_I2S4_8CH_TX>, <&cru HCLK_I2S4_8CH>; 4733*4882a593Smuzhiyun clock-names = "mclk_tx", "mclk_rx", "hclk"; 4734*4882a593Smuzhiyun assigned-clocks = <&cru CLK_I2S4_8CH_TX_SRC>; 4735*4882a593Smuzhiyun assigned-clock-parents = <&cru PLL_AUPLL>; 4736*4882a593Smuzhiyun dmas = <&dmac2 0>; 4737*4882a593Smuzhiyun dma-names = "tx"; 4738*4882a593Smuzhiyun power-domains = <&power RK3588_PD_VO0>; 4739*4882a593Smuzhiyun resets = <&cru SRST_M_I2S4_8CH_TX>; 4740*4882a593Smuzhiyun reset-names = "tx-m"; 4741*4882a593Smuzhiyun rockchip,playback-only; 4742*4882a593Smuzhiyun #sound-dai-cells = <0>; 4743*4882a593Smuzhiyun status = "disabled"; 4744*4882a593Smuzhiyun }; 4745*4882a593Smuzhiyun 4746*4882a593Smuzhiyun spdif_tx3: spdif-tx@fdde0000 { 4747*4882a593Smuzhiyun compatible = "rockchip,rk3588-spdif", "rockchip,rk3568-spdif"; 4748*4882a593Smuzhiyun reg = <0x0 0xfdde0000 0x0 0x1000>; 4749*4882a593Smuzhiyun interrupts = <GIC_SPI 196 IRQ_TYPE_LEVEL_HIGH>; 4750*4882a593Smuzhiyun dmas = <&dmac1 7>; 4751*4882a593Smuzhiyun dma-names = "tx"; 4752*4882a593Smuzhiyun clock-names = "mclk", "hclk"; 4753*4882a593Smuzhiyun clocks = <&cru MCLK_SPDIF3>, <&cru HCLK_SPDIF3>; 4754*4882a593Smuzhiyun assigned-clocks = <&cru CLK_SPDIF3_SRC>; 4755*4882a593Smuzhiyun assigned-clock-parents = <&cru PLL_AUPLL>; 4756*4882a593Smuzhiyun power-domains = <&power RK3588_PD_VO1>; 4757*4882a593Smuzhiyun #sound-dai-cells = <0>; 4758*4882a593Smuzhiyun status = "disabled"; 4759*4882a593Smuzhiyun }; 4760*4882a593Smuzhiyun 4761*4882a593Smuzhiyun i2s5_8ch: i2s@fddf0000 { 4762*4882a593Smuzhiyun compatible = "rockchip,rk3588-i2s-tdm"; 4763*4882a593Smuzhiyun reg = <0x0 0xfddf0000 0x0 0x1000>; 4764*4882a593Smuzhiyun interrupts = <GIC_SPI 185 IRQ_TYPE_LEVEL_HIGH>; 4765*4882a593Smuzhiyun clocks = <&cru MCLK_I2S5_8CH_TX>, <&cru MCLK_I2S5_8CH_TX>, <&cru HCLK_I2S5_8CH>; 4766*4882a593Smuzhiyun clock-names = "mclk_tx", "mclk_rx", "hclk"; 4767*4882a593Smuzhiyun assigned-clocks = <&cru CLK_I2S5_8CH_TX_SRC>; 4768*4882a593Smuzhiyun assigned-clock-parents = <&cru PLL_GPLL>; 4769*4882a593Smuzhiyun dmas = <&dmac2 2>; 4770*4882a593Smuzhiyun dma-names = "tx"; 4771*4882a593Smuzhiyun power-domains = <&power RK3588_PD_VO1>; 4772*4882a593Smuzhiyun resets = <&cru SRST_M_I2S5_8CH_TX>; 4773*4882a593Smuzhiyun reset-names = "tx-m"; 4774*4882a593Smuzhiyun rockchip,always-on; 4775*4882a593Smuzhiyun rockchip,hdmi-path; 4776*4882a593Smuzhiyun rockchip,playback-only; 4777*4882a593Smuzhiyun #sound-dai-cells = <0>; 4778*4882a593Smuzhiyun status = "disabled"; 4779*4882a593Smuzhiyun }; 4780*4882a593Smuzhiyun 4781*4882a593Smuzhiyun i2s9_8ch: i2s@fddfc000 { 4782*4882a593Smuzhiyun compatible = "rockchip,rk3588-i2s-tdm"; 4783*4882a593Smuzhiyun reg = <0x0 0xfddfc000 0x0 0x1000>; 4784*4882a593Smuzhiyun interrupts = <GIC_SPI 189 IRQ_TYPE_LEVEL_HIGH>; 4785*4882a593Smuzhiyun clocks = <&cru MCLK_I2S9_8CH_RX>, <&cru MCLK_I2S9_8CH_RX>, <&cru HCLK_I2S9_8CH>; 4786*4882a593Smuzhiyun clock-names = "mclk_tx", "mclk_rx", "hclk"; 4787*4882a593Smuzhiyun assigned-clocks = <&cru CLK_I2S9_8CH_RX_SRC>; 4788*4882a593Smuzhiyun assigned-clock-parents = <&cru PLL_AUPLL>; 4789*4882a593Smuzhiyun dmas = <&dmac2 23>; 4790*4882a593Smuzhiyun dma-names = "rx"; 4791*4882a593Smuzhiyun power-domains = <&power RK3588_PD_VO1>; 4792*4882a593Smuzhiyun resets = <&cru SRST_M_I2S9_8CH_RX>; 4793*4882a593Smuzhiyun reset-names = "rx-m"; 4794*4882a593Smuzhiyun rockchip,capture-only; 4795*4882a593Smuzhiyun #sound-dai-cells = <0>; 4796*4882a593Smuzhiyun status = "disabled"; 4797*4882a593Smuzhiyun }; 4798*4882a593Smuzhiyun 4799*4882a593Smuzhiyun spdif_rx0: spdif-rx@fde08000 { 4800*4882a593Smuzhiyun compatible = "rockchip,rk3588-spdifrx", "rockchip,rk3308-spdifrx"; 4801*4882a593Smuzhiyun reg = <0x0 0xfde08000 0x0 0x1000>; 4802*4882a593Smuzhiyun interrupts = <GIC_SPI 199 IRQ_TYPE_LEVEL_HIGH>; 4803*4882a593Smuzhiyun clocks = <&cru MCLK_SPDIFRX0>, <&cru HCLK_SPDIFRX0>; 4804*4882a593Smuzhiyun clock-names = "mclk", "hclk"; 4805*4882a593Smuzhiyun assigned-clocks = <&cru MCLK_SPDIFRX0>; 4806*4882a593Smuzhiyun assigned-clock-parents = <&cru PLL_AUPLL>; 4807*4882a593Smuzhiyun dmas = <&dmac0 21>; 4808*4882a593Smuzhiyun dma-names = "rx"; 4809*4882a593Smuzhiyun power-domains = <&power RK3588_PD_VO1>; 4810*4882a593Smuzhiyun resets = <&cru SRST_M_SPDIFRX0>; 4811*4882a593Smuzhiyun reset-names = "spdifrx-m"; 4812*4882a593Smuzhiyun #sound-dai-cells = <0>; 4813*4882a593Smuzhiyun status = "disabled"; 4814*4882a593Smuzhiyun }; 4815*4882a593Smuzhiyun 4816*4882a593Smuzhiyun dsi0: dsi@fde20000 { 4817*4882a593Smuzhiyun compatible = "rockchip,rk3588-mipi-dsi2"; 4818*4882a593Smuzhiyun reg = <0x0 0xfde20000 0x0 0x10000>; 4819*4882a593Smuzhiyun interrupts = <GIC_SPI 167 IRQ_TYPE_LEVEL_HIGH>; 4820*4882a593Smuzhiyun clocks = <&cru PCLK_DSIHOST0>, <&cru CLK_DSIHOST0>; 4821*4882a593Smuzhiyun clock-names = "pclk", "sys_clk"; 4822*4882a593Smuzhiyun resets = <&cru SRST_P_DSIHOST0>; 4823*4882a593Smuzhiyun reset-names = "apb"; 4824*4882a593Smuzhiyun power-domains = <&power RK3588_PD_VOP>; 4825*4882a593Smuzhiyun phys = <&mipidcphy0>; 4826*4882a593Smuzhiyun phy-names = "dcphy"; 4827*4882a593Smuzhiyun rockchip,grf = <&vop_grf>; 4828*4882a593Smuzhiyun #address-cells = <1>; 4829*4882a593Smuzhiyun #size-cells = <0>; 4830*4882a593Smuzhiyun status = "disabled"; 4831*4882a593Smuzhiyun 4832*4882a593Smuzhiyun ports { 4833*4882a593Smuzhiyun #address-cells = <1>; 4834*4882a593Smuzhiyun #size-cells = <0>; 4835*4882a593Smuzhiyun 4836*4882a593Smuzhiyun dsi0_in: port@0 { 4837*4882a593Smuzhiyun reg = <0>; 4838*4882a593Smuzhiyun #address-cells = <1>; 4839*4882a593Smuzhiyun #size-cells = <0>; 4840*4882a593Smuzhiyun 4841*4882a593Smuzhiyun dsi0_in_vp2: endpoint@0 { 4842*4882a593Smuzhiyun reg = <0>; 4843*4882a593Smuzhiyun remote-endpoint = <&vp2_out_dsi0>; 4844*4882a593Smuzhiyun status = "disabled"; 4845*4882a593Smuzhiyun }; 4846*4882a593Smuzhiyun 4847*4882a593Smuzhiyun dsi0_in_vp3: endpoint@1 { 4848*4882a593Smuzhiyun reg = <1>; 4849*4882a593Smuzhiyun remote-endpoint = <&vp3_out_dsi0>; 4850*4882a593Smuzhiyun status = "disabled"; 4851*4882a593Smuzhiyun }; 4852*4882a593Smuzhiyun }; 4853*4882a593Smuzhiyun }; 4854*4882a593Smuzhiyun }; 4855*4882a593Smuzhiyun 4856*4882a593Smuzhiyun dsi1: dsi@fde30000 { 4857*4882a593Smuzhiyun compatible = "rockchip,rk3588-mipi-dsi2"; 4858*4882a593Smuzhiyun reg = <0x0 0xfde30000 0x0 0x10000>; 4859*4882a593Smuzhiyun interrupts = <GIC_SPI 168 IRQ_TYPE_LEVEL_HIGH>; 4860*4882a593Smuzhiyun clocks = <&cru PCLK_DSIHOST1>, <&cru CLK_DSIHOST1>; 4861*4882a593Smuzhiyun clock-names = "pclk", "sys_clk"; 4862*4882a593Smuzhiyun resets = <&cru SRST_P_DSIHOST1>; 4863*4882a593Smuzhiyun reset-names = "apb"; 4864*4882a593Smuzhiyun power-domains = <&power RK3588_PD_VOP>; 4865*4882a593Smuzhiyun phys = <&mipidcphy1>; 4866*4882a593Smuzhiyun phy-names = "dcphy"; 4867*4882a593Smuzhiyun rockchip,grf = <&vop_grf>; 4868*4882a593Smuzhiyun #address-cells = <1>; 4869*4882a593Smuzhiyun #size-cells = <0>; 4870*4882a593Smuzhiyun status = "disabled"; 4871*4882a593Smuzhiyun 4872*4882a593Smuzhiyun ports { 4873*4882a593Smuzhiyun #address-cells = <1>; 4874*4882a593Smuzhiyun #size-cells = <0>; 4875*4882a593Smuzhiyun 4876*4882a593Smuzhiyun dsi1_in: port@0 { 4877*4882a593Smuzhiyun reg = <0>; 4878*4882a593Smuzhiyun #address-cells = <1>; 4879*4882a593Smuzhiyun #size-cells = <0>; 4880*4882a593Smuzhiyun 4881*4882a593Smuzhiyun dsi1_in_vp2: endpoint@0 { 4882*4882a593Smuzhiyun reg = <0>; 4883*4882a593Smuzhiyun remote-endpoint = <&vp2_out_dsi1>; 4884*4882a593Smuzhiyun status = "disabled"; 4885*4882a593Smuzhiyun }; 4886*4882a593Smuzhiyun 4887*4882a593Smuzhiyun dsi1_in_vp3: endpoint@1 { 4888*4882a593Smuzhiyun reg = <1>; 4889*4882a593Smuzhiyun remote-endpoint = <&vp3_out_dsi1>; 4890*4882a593Smuzhiyun status = "disabled"; 4891*4882a593Smuzhiyun }; 4892*4882a593Smuzhiyun }; 4893*4882a593Smuzhiyun }; 4894*4882a593Smuzhiyun }; 4895*4882a593Smuzhiyun 4896*4882a593Smuzhiyun hdcp0: hdcp@fde40000 { 4897*4882a593Smuzhiyun compatible = "rockchip,rk3588-hdcp"; 4898*4882a593Smuzhiyun reg = <0x0 0xfde40000 0x0 0x80>; 4899*4882a593Smuzhiyun interrupts = <GIC_SPI 159 IRQ_TYPE_LEVEL_HIGH>; 4900*4882a593Smuzhiyun clocks = <&cru ACLK_HDCP0>, <&cru PCLK_HDCP0>, 4901*4882a593Smuzhiyun <&cru HCLK_HDCP0>, <&cru HCLK_HDCP_KEY0>, 4902*4882a593Smuzhiyun <&cru ACLK_TRNG0>, <&cru PCLK_TRNG0>; 4903*4882a593Smuzhiyun clock-names = "aclk", "pclk", "hclk", "hclk_key", "aclk_trng", "pclk_trng"; 4904*4882a593Smuzhiyun resets = <&cru SRST_HDCP0>, <&cru SRST_H_HDCP0>, 4905*4882a593Smuzhiyun <&cru SRST_A_HDCP0>, <&cru SRST_H_HDCP_KEY0>, 4906*4882a593Smuzhiyun <&cru SRST_P_TRNG0>; 4907*4882a593Smuzhiyun reset-names = "hdcp", "h_hdcp", "a_hdcp", "hdcp_key", "trng"; 4908*4882a593Smuzhiyun power-domains = <&power RK3588_PD_VO0>; 4909*4882a593Smuzhiyun rockchip,vo-grf = <&vo0_grf>; 4910*4882a593Smuzhiyun status = "disabled"; 4911*4882a593Smuzhiyun }; 4912*4882a593Smuzhiyun 4913*4882a593Smuzhiyun dp0: dp@fde50000 { 4914*4882a593Smuzhiyun compatible = "rockchip,rk3588-dp"; 4915*4882a593Smuzhiyun reg = <0x0 0xfde50000 0x0 0x4000>; 4916*4882a593Smuzhiyun interrupts = <GIC_SPI 161 IRQ_TYPE_LEVEL_HIGH>; 4917*4882a593Smuzhiyun clocks = <&cru PCLK_DP0>, <&cru CLK_AUX16M_0>, 4918*4882a593Smuzhiyun <&cru MCLK_I2S4_8CH_TX>, <&cru MCLK_SPDIF2_DP0>, 4919*4882a593Smuzhiyun <&hclk_vo0>, <&cru CLK_DP0>; 4920*4882a593Smuzhiyun clock-names = "apb", "aux", "i2s", "spdif", "hclk", "hdcp"; 4921*4882a593Smuzhiyun assigned-clocks = <&cru CLK_AUX16M_0>; 4922*4882a593Smuzhiyun assigned-clock-rates = <16000000>; 4923*4882a593Smuzhiyun resets = <&cru SRST_DP0>; 4924*4882a593Smuzhiyun phys = <&usbdp_phy0_dp>; 4925*4882a593Smuzhiyun power-domains = <&power RK3588_PD_VO0>; 4926*4882a593Smuzhiyun #sound-dai-cells = <1>; 4927*4882a593Smuzhiyun status = "disabled"; 4928*4882a593Smuzhiyun 4929*4882a593Smuzhiyun ports { 4930*4882a593Smuzhiyun #address-cells = <1>; 4931*4882a593Smuzhiyun #size-cells = <0>; 4932*4882a593Smuzhiyun 4933*4882a593Smuzhiyun port@0 { 4934*4882a593Smuzhiyun reg = <0>; 4935*4882a593Smuzhiyun #address-cells = <1>; 4936*4882a593Smuzhiyun #size-cells = <0>; 4937*4882a593Smuzhiyun 4938*4882a593Smuzhiyun dp0_in_vp0: endpoint@0 { 4939*4882a593Smuzhiyun reg = <0>; 4940*4882a593Smuzhiyun remote-endpoint = <&vp0_out_dp0>; 4941*4882a593Smuzhiyun status = "disabled"; 4942*4882a593Smuzhiyun }; 4943*4882a593Smuzhiyun 4944*4882a593Smuzhiyun dp0_in_vp1: endpoint@1 { 4945*4882a593Smuzhiyun reg = <1>; 4946*4882a593Smuzhiyun remote-endpoint = <&vp1_out_dp0>; 4947*4882a593Smuzhiyun status = "disabled"; 4948*4882a593Smuzhiyun }; 4949*4882a593Smuzhiyun 4950*4882a593Smuzhiyun dp0_in_vp2: endpoint@2 { 4951*4882a593Smuzhiyun reg = <2>; 4952*4882a593Smuzhiyun remote-endpoint = <&vp2_out_dp0>; 4953*4882a593Smuzhiyun status = "disabled"; 4954*4882a593Smuzhiyun }; 4955*4882a593Smuzhiyun }; 4956*4882a593Smuzhiyun 4957*4882a593Smuzhiyun port@1 { 4958*4882a593Smuzhiyun reg = <1>; 4959*4882a593Smuzhiyun 4960*4882a593Smuzhiyun dp0_out: endpoint { }; 4961*4882a593Smuzhiyun }; 4962*4882a593Smuzhiyun }; 4963*4882a593Smuzhiyun }; 4964*4882a593Smuzhiyun 4965*4882a593Smuzhiyun hdcp1: hdcp@fde70000 { 4966*4882a593Smuzhiyun compatible = "rockchip,rk3588-hdcp"; 4967*4882a593Smuzhiyun reg = <0x0 0xfde70000 0x0 0x80>; 4968*4882a593Smuzhiyun interrupts = <GIC_SPI 160 IRQ_TYPE_LEVEL_HIGH>; 4969*4882a593Smuzhiyun clocks = <&cru ACLK_HDCP1>, <&cru PCLK_HDCP1>, 4970*4882a593Smuzhiyun <&cru HCLK_HDCP1>, <&cru HCLK_HDCP_KEY1>, 4971*4882a593Smuzhiyun <&cru ACLK_TRNG1>, <&cru PCLK_TRNG1>; 4972*4882a593Smuzhiyun clock-names = "aclk", "pclk", "hclk", "hclk_key", "aclk_trng", "pclk_trng"; 4973*4882a593Smuzhiyun resets = <&cru SRST_HDCP1>, <&cru SRST_H_HDCP1>, 4974*4882a593Smuzhiyun <&cru SRST_A_HDCP1>, <&cru SRST_H_HDCP_KEY1>, 4975*4882a593Smuzhiyun <&cru SRST_P_TRNG1>; 4976*4882a593Smuzhiyun reset-names = "hdcp", "h_hdcp", "a_hdcp", "hdcp_key", "trng"; 4977*4882a593Smuzhiyun power-domains = <&power RK3588_PD_VO1>; 4978*4882a593Smuzhiyun rockchip,vo-grf = <&vo1_grf>; 4979*4882a593Smuzhiyun status = "disabled"; 4980*4882a593Smuzhiyun }; 4981*4882a593Smuzhiyun 4982*4882a593Smuzhiyun hdmi0: hdmi@fde80000 { 4983*4882a593Smuzhiyun compatible = "rockchip,rk3588-dw-hdmi"; 4984*4882a593Smuzhiyun reg = <0x0 0xfde80000 0x0 0x20000>; 4985*4882a593Smuzhiyun interrupts = <GIC_SPI 169 IRQ_TYPE_LEVEL_HIGH>, 4986*4882a593Smuzhiyun <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>, 4987*4882a593Smuzhiyun <GIC_SPI 171 IRQ_TYPE_LEVEL_HIGH>, 4988*4882a593Smuzhiyun <GIC_SPI 172 IRQ_TYPE_LEVEL_HIGH>, 4989*4882a593Smuzhiyun <GIC_SPI 360 IRQ_TYPE_LEVEL_HIGH>; 4990*4882a593Smuzhiyun clocks = <&cru PCLK_HDMITX0>, 4991*4882a593Smuzhiyun <&cru CLK_HDMIHDP0>, 4992*4882a593Smuzhiyun <&cru CLK_HDMITX0_EARC>, 4993*4882a593Smuzhiyun <&cru CLK_HDMITX0_REF>, 4994*4882a593Smuzhiyun <&cru MCLK_I2S5_8CH_TX>, 4995*4882a593Smuzhiyun <&cru DCLK_VOP0>, 4996*4882a593Smuzhiyun <&cru DCLK_VOP1>, 4997*4882a593Smuzhiyun <&cru DCLK_VOP2>, 4998*4882a593Smuzhiyun <&cru DCLK_VOP3>, 4999*4882a593Smuzhiyun <&hclk_vo1>, 5000*4882a593Smuzhiyun <&hdptxphy_hdmi_clk0>; 5001*4882a593Smuzhiyun clock-names = "pclk", 5002*4882a593Smuzhiyun "hpd", 5003*4882a593Smuzhiyun "earc", 5004*4882a593Smuzhiyun "hdmitx_ref", 5005*4882a593Smuzhiyun "aud", 5006*4882a593Smuzhiyun "dclk_vp0", 5007*4882a593Smuzhiyun "dclk_vp1", 5008*4882a593Smuzhiyun "dclk_vp2", 5009*4882a593Smuzhiyun "dclk_vp3", 5010*4882a593Smuzhiyun "hclk_vo1", 5011*4882a593Smuzhiyun "link_clk"; 5012*4882a593Smuzhiyun resets = <&cru SRST_HDMITX0_REF>, <&cru SRST_HDMIHDP0>; 5013*4882a593Smuzhiyun reset-names = "ref", "hdp"; 5014*4882a593Smuzhiyun power-domains = <&power RK3588_PD_VO1>; 5015*4882a593Smuzhiyun pinctrl-names = "default"; 5016*4882a593Smuzhiyun pinctrl-0 = <&hdmim0_tx0_cec &hdmim0_tx0_hpd &hdmim0_tx0_scl &hdmim0_tx0_sda>; 5017*4882a593Smuzhiyun reg-io-width = <4>; 5018*4882a593Smuzhiyun rockchip,grf = <&sys_grf>; 5019*4882a593Smuzhiyun rockchip,vo1_grf = <&vo1_grf>; 5020*4882a593Smuzhiyun phys = <&hdptxphy_hdmi0>; 5021*4882a593Smuzhiyun phy-names = "hdmi"; 5022*4882a593Smuzhiyun #sound-dai-cells = <0>; 5023*4882a593Smuzhiyun status = "disabled"; 5024*4882a593Smuzhiyun 5025*4882a593Smuzhiyun ports { 5026*4882a593Smuzhiyun #address-cells = <1>; 5027*4882a593Smuzhiyun #size-cells = <0>; 5028*4882a593Smuzhiyun 5029*4882a593Smuzhiyun hdmi0_in: port@0 { 5030*4882a593Smuzhiyun reg = <0>; 5031*4882a593Smuzhiyun #address-cells = <1>; 5032*4882a593Smuzhiyun #size-cells = <0>; 5033*4882a593Smuzhiyun 5034*4882a593Smuzhiyun hdmi0_in_vp0: endpoint@0 { 5035*4882a593Smuzhiyun reg = <0>; 5036*4882a593Smuzhiyun remote-endpoint = <&vp0_out_hdmi0>; 5037*4882a593Smuzhiyun status = "disabled"; 5038*4882a593Smuzhiyun }; 5039*4882a593Smuzhiyun 5040*4882a593Smuzhiyun hdmi0_in_vp1: endpoint@1 { 5041*4882a593Smuzhiyun reg = <1>; 5042*4882a593Smuzhiyun remote-endpoint = <&vp1_out_hdmi0>; 5043*4882a593Smuzhiyun status = "disabled"; 5044*4882a593Smuzhiyun }; 5045*4882a593Smuzhiyun 5046*4882a593Smuzhiyun hdmi0_in_vp2: endpoint@2 { 5047*4882a593Smuzhiyun reg = <2>; 5048*4882a593Smuzhiyun remote-endpoint = <&vp2_out_hdmi0>; 5049*4882a593Smuzhiyun status = "disabled"; 5050*4882a593Smuzhiyun }; 5051*4882a593Smuzhiyun }; 5052*4882a593Smuzhiyun }; 5053*4882a593Smuzhiyun }; 5054*4882a593Smuzhiyun 5055*4882a593Smuzhiyun edp0: edp@fdec0000 { 5056*4882a593Smuzhiyun compatible = "rockchip,rk3588-edp"; 5057*4882a593Smuzhiyun reg = <0x0 0xfdec0000 0x0 0x1000>; 5058*4882a593Smuzhiyun interrupts = <GIC_SPI 163 IRQ_TYPE_LEVEL_HIGH>; 5059*4882a593Smuzhiyun clocks = <&cru CLK_EDP0_24M>, <&cru PCLK_EDP0>, 5060*4882a593Smuzhiyun <&cru CLK_EDP0_200M>, <&hclk_vo1>; 5061*4882a593Smuzhiyun clock-names = "dp", "pclk", "spdif", "hclk"; 5062*4882a593Smuzhiyun resets = <&cru SRST_EDP0_24M>, <&cru SRST_P_EDP0>; 5063*4882a593Smuzhiyun reset-names = "dp", "apb"; 5064*4882a593Smuzhiyun phys = <&hdptxphy0>; 5065*4882a593Smuzhiyun phy-names = "dp"; 5066*4882a593Smuzhiyun power-domains = <&power RK3588_PD_VO1>; 5067*4882a593Smuzhiyun rockchip,grf = <&vo1_grf>; 5068*4882a593Smuzhiyun status = "disabled"; 5069*4882a593Smuzhiyun 5070*4882a593Smuzhiyun ports { 5071*4882a593Smuzhiyun #address-cells = <1>; 5072*4882a593Smuzhiyun #size-cells = <0>; 5073*4882a593Smuzhiyun 5074*4882a593Smuzhiyun port@0 { 5075*4882a593Smuzhiyun reg = <0>; 5076*4882a593Smuzhiyun #address-cells = <1>; 5077*4882a593Smuzhiyun #size-cells = <0>; 5078*4882a593Smuzhiyun 5079*4882a593Smuzhiyun edp0_in_vp0: endpoint@0 { 5080*4882a593Smuzhiyun reg = <0>; 5081*4882a593Smuzhiyun remote-endpoint = <&vp0_out_edp0>; 5082*4882a593Smuzhiyun status = "disabled"; 5083*4882a593Smuzhiyun }; 5084*4882a593Smuzhiyun 5085*4882a593Smuzhiyun edp0_in_vp1: endpoint@1 { 5086*4882a593Smuzhiyun reg = <1>; 5087*4882a593Smuzhiyun remote-endpoint = <&vp1_out_edp0>; 5088*4882a593Smuzhiyun status = "disabled"; 5089*4882a593Smuzhiyun }; 5090*4882a593Smuzhiyun 5091*4882a593Smuzhiyun edp0_in_vp2: endpoint@2 { 5092*4882a593Smuzhiyun reg = <2>; 5093*4882a593Smuzhiyun remote-endpoint = <&vp2_out_edp0>; 5094*4882a593Smuzhiyun status = "disabled"; 5095*4882a593Smuzhiyun }; 5096*4882a593Smuzhiyun }; 5097*4882a593Smuzhiyun 5098*4882a593Smuzhiyun port@1 { 5099*4882a593Smuzhiyun reg = <1>; 5100*4882a593Smuzhiyun 5101*4882a593Smuzhiyun edp0_out: endpoint { }; 5102*4882a593Smuzhiyun }; 5103*4882a593Smuzhiyun }; 5104*4882a593Smuzhiyun }; 5105*4882a593Smuzhiyun 5106*4882a593Smuzhiyun qos_gpu_m0: qos@fdf35000 { 5107*4882a593Smuzhiyun compatible = "syscon"; 5108*4882a593Smuzhiyun reg = <0x0 0xfdf35000 0x0 0x20>; 5109*4882a593Smuzhiyun }; 5110*4882a593Smuzhiyun 5111*4882a593Smuzhiyun qos_gpu_m1: qos@fdf35200 { 5112*4882a593Smuzhiyun compatible = "syscon"; 5113*4882a593Smuzhiyun reg = <0x0 0xfdf35200 0x0 0x20>; 5114*4882a593Smuzhiyun }; 5115*4882a593Smuzhiyun 5116*4882a593Smuzhiyun qos_gpu_m2: qos@fdf35400 { 5117*4882a593Smuzhiyun compatible = "syscon"; 5118*4882a593Smuzhiyun reg = <0x0 0xfdf35400 0x0 0x20>; 5119*4882a593Smuzhiyun }; 5120*4882a593Smuzhiyun 5121*4882a593Smuzhiyun qos_gpu_m3: qos@fdf35600 { 5122*4882a593Smuzhiyun compatible = "syscon"; 5123*4882a593Smuzhiyun reg = <0x0 0xfdf35600 0x0 0x20>; 5124*4882a593Smuzhiyun }; 5125*4882a593Smuzhiyun 5126*4882a593Smuzhiyun qos_rga3_1: qos@fdf36000 { 5127*4882a593Smuzhiyun compatible = "syscon"; 5128*4882a593Smuzhiyun reg = <0x0 0xfdf36000 0x0 0x20>; 5129*4882a593Smuzhiyun }; 5130*4882a593Smuzhiyun 5131*4882a593Smuzhiyun qos_sdio: qos@fdf39000 { 5132*4882a593Smuzhiyun compatible = "syscon"; 5133*4882a593Smuzhiyun reg = <0x0 0xfdf39000 0x0 0x20>; 5134*4882a593Smuzhiyun }; 5135*4882a593Smuzhiyun 5136*4882a593Smuzhiyun qos_sdmmc: qos@fdf3d800 { 5137*4882a593Smuzhiyun compatible = "syscon"; 5138*4882a593Smuzhiyun reg = <0x0 0xfdf3d800 0x0 0x20>; 5139*4882a593Smuzhiyun }; 5140*4882a593Smuzhiyun 5141*4882a593Smuzhiyun qos_usb3_1: qos@fdf3e000 { 5142*4882a593Smuzhiyun compatible = "syscon"; 5143*4882a593Smuzhiyun reg = <0x0 0xfdf3e000 0x0 0x20>; 5144*4882a593Smuzhiyun }; 5145*4882a593Smuzhiyun 5146*4882a593Smuzhiyun qos_usb3_0: qos@fdf3e200 { 5147*4882a593Smuzhiyun compatible = "syscon"; 5148*4882a593Smuzhiyun reg = <0x0 0xfdf3e200 0x0 0x20>; 5149*4882a593Smuzhiyun }; 5150*4882a593Smuzhiyun 5151*4882a593Smuzhiyun qos_usb2host_0: qos@fdf3e400 { 5152*4882a593Smuzhiyun compatible = "syscon"; 5153*4882a593Smuzhiyun reg = <0x0 0xfdf3e400 0x0 0x20>; 5154*4882a593Smuzhiyun }; 5155*4882a593Smuzhiyun 5156*4882a593Smuzhiyun qos_usb2host_1: qos@fdf3e600 { 5157*4882a593Smuzhiyun compatible = "syscon"; 5158*4882a593Smuzhiyun reg = <0x0 0xfdf3e600 0x0 0x20>; 5159*4882a593Smuzhiyun }; 5160*4882a593Smuzhiyun 5161*4882a593Smuzhiyun qos_fisheye0: qos@fdf40000 { 5162*4882a593Smuzhiyun compatible = "syscon"; 5163*4882a593Smuzhiyun reg = <0x0 0xfdf40000 0x0 0x20>; 5164*4882a593Smuzhiyun }; 5165*4882a593Smuzhiyun 5166*4882a593Smuzhiyun qos_fisheye1: qos@fdf40200 { 5167*4882a593Smuzhiyun compatible = "syscon"; 5168*4882a593Smuzhiyun reg = <0x0 0xfdf40200 0x0 0x20>; 5169*4882a593Smuzhiyun }; 5170*4882a593Smuzhiyun 5171*4882a593Smuzhiyun qos_isp0_mro: qos@fdf40400 { 5172*4882a593Smuzhiyun compatible = "syscon"; 5173*4882a593Smuzhiyun reg = <0x0 0xfdf40400 0x0 0x20>; 5174*4882a593Smuzhiyun }; 5175*4882a593Smuzhiyun 5176*4882a593Smuzhiyun qos_isp0_mwo: qos@fdf40500 { 5177*4882a593Smuzhiyun compatible = "syscon"; 5178*4882a593Smuzhiyun reg = <0x0 0xfdf40500 0x0 0x20>; 5179*4882a593Smuzhiyun }; 5180*4882a593Smuzhiyun 5181*4882a593Smuzhiyun qos_vicap_m0: qos@fdf40600 { 5182*4882a593Smuzhiyun compatible = "syscon"; 5183*4882a593Smuzhiyun reg = <0x0 0xfdf40600 0x0 0x20>; 5184*4882a593Smuzhiyun }; 5185*4882a593Smuzhiyun 5186*4882a593Smuzhiyun qos_vicap_m1: qos@fdf40800 { 5187*4882a593Smuzhiyun compatible = "syscon"; 5188*4882a593Smuzhiyun reg = <0x0 0xfdf40800 0x0 0x20>; 5189*4882a593Smuzhiyun }; 5190*4882a593Smuzhiyun 5191*4882a593Smuzhiyun qos_isp1_mwo: qos@fdf41000 { 5192*4882a593Smuzhiyun compatible = "syscon"; 5193*4882a593Smuzhiyun reg = <0x0 0xfdf41000 0x0 0x20>; 5194*4882a593Smuzhiyun }; 5195*4882a593Smuzhiyun 5196*4882a593Smuzhiyun qos_isp1_mro: qos@fdf41100 { 5197*4882a593Smuzhiyun compatible = "syscon"; 5198*4882a593Smuzhiyun reg = <0x0 0xfdf41100 0x0 0x20>; 5199*4882a593Smuzhiyun }; 5200*4882a593Smuzhiyun 5201*4882a593Smuzhiyun qos_rkvenc0_m0ro: qos@fdf60000 { 5202*4882a593Smuzhiyun compatible = "syscon"; 5203*4882a593Smuzhiyun reg = <0x0 0xfdf60000 0x0 0x20>; 5204*4882a593Smuzhiyun }; 5205*4882a593Smuzhiyun 5206*4882a593Smuzhiyun qos_rkvenc0_m1ro: qos@fdf60200 { 5207*4882a593Smuzhiyun compatible = "syscon"; 5208*4882a593Smuzhiyun reg = <0x0 0xfdf60200 0x0 0x20>; 5209*4882a593Smuzhiyun }; 5210*4882a593Smuzhiyun 5211*4882a593Smuzhiyun qos_rkvenc0_m2wo: qos@fdf60400 { 5212*4882a593Smuzhiyun compatible = "syscon"; 5213*4882a593Smuzhiyun reg = <0x0 0xfdf60400 0x0 0x20>; 5214*4882a593Smuzhiyun }; 5215*4882a593Smuzhiyun 5216*4882a593Smuzhiyun qos_rkvenc1_m0ro: qos@fdf61000 { 5217*4882a593Smuzhiyun compatible = "syscon"; 5218*4882a593Smuzhiyun reg = <0x0 0xfdf61000 0x0 0x20>; 5219*4882a593Smuzhiyun }; 5220*4882a593Smuzhiyun 5221*4882a593Smuzhiyun qos_rkvenc1_m1ro: qos@fdf61200 { 5222*4882a593Smuzhiyun compatible = "syscon"; 5223*4882a593Smuzhiyun reg = <0x0 0xfdf61200 0x0 0x20>; 5224*4882a593Smuzhiyun }; 5225*4882a593Smuzhiyun 5226*4882a593Smuzhiyun qos_rkvenc1_m2wo: qos@fdf61400 { 5227*4882a593Smuzhiyun compatible = "syscon"; 5228*4882a593Smuzhiyun reg = <0x0 0xfdf61400 0x0 0x20>; 5229*4882a593Smuzhiyun }; 5230*4882a593Smuzhiyun 5231*4882a593Smuzhiyun qos_rkvdec0: qos@fdf62000 { 5232*4882a593Smuzhiyun compatible = "syscon"; 5233*4882a593Smuzhiyun reg = <0x0 0xfdf62000 0x0 0x20>; 5234*4882a593Smuzhiyun }; 5235*4882a593Smuzhiyun 5236*4882a593Smuzhiyun qos_rkvdec1: qos@fdf63000 { 5237*4882a593Smuzhiyun compatible = "syscon"; 5238*4882a593Smuzhiyun reg = <0x0 0xfdf63000 0x0 0x20>; 5239*4882a593Smuzhiyun }; 5240*4882a593Smuzhiyun 5241*4882a593Smuzhiyun qos_av1: qos@fdf64000 { 5242*4882a593Smuzhiyun compatible = "syscon"; 5243*4882a593Smuzhiyun reg = <0x0 0xfdf64000 0x0 0x20>; 5244*4882a593Smuzhiyun }; 5245*4882a593Smuzhiyun 5246*4882a593Smuzhiyun qos_iep: qos@fdf66000 { 5247*4882a593Smuzhiyun compatible = "syscon"; 5248*4882a593Smuzhiyun reg = <0x0 0xfdf66000 0x0 0x20>; 5249*4882a593Smuzhiyun }; 5250*4882a593Smuzhiyun 5251*4882a593Smuzhiyun qos_jpeg_dec: qos@fdf66200 { 5252*4882a593Smuzhiyun compatible = "syscon"; 5253*4882a593Smuzhiyun reg = <0x0 0xfdf66200 0x0 0x20>; 5254*4882a593Smuzhiyun }; 5255*4882a593Smuzhiyun 5256*4882a593Smuzhiyun qos_jpeg_enc0: qos@fdf66400 { 5257*4882a593Smuzhiyun compatible = "syscon"; 5258*4882a593Smuzhiyun reg = <0x0 0xfdf66400 0x0 0x20>; 5259*4882a593Smuzhiyun }; 5260*4882a593Smuzhiyun 5261*4882a593Smuzhiyun qos_jpeg_enc1: qos@fdf66600 { 5262*4882a593Smuzhiyun compatible = "syscon"; 5263*4882a593Smuzhiyun reg = <0x0 0xfdf66600 0x0 0x20>; 5264*4882a593Smuzhiyun }; 5265*4882a593Smuzhiyun 5266*4882a593Smuzhiyun qos_jpeg_enc2: qos@fdf66800 { 5267*4882a593Smuzhiyun compatible = "syscon"; 5268*4882a593Smuzhiyun reg = <0x0 0xfdf66800 0x0 0x20>; 5269*4882a593Smuzhiyun }; 5270*4882a593Smuzhiyun 5271*4882a593Smuzhiyun qos_jpeg_enc3: qos@fdf66a00 { 5272*4882a593Smuzhiyun compatible = "syscon"; 5273*4882a593Smuzhiyun reg = <0x0 0xfdf66a00 0x0 0x20>; 5274*4882a593Smuzhiyun }; 5275*4882a593Smuzhiyun 5276*4882a593Smuzhiyun qos_rga2_mro: qos@fdf66c00 { 5277*4882a593Smuzhiyun compatible = "syscon"; 5278*4882a593Smuzhiyun reg = <0x0 0xfdf66c00 0x0 0x20>; 5279*4882a593Smuzhiyun }; 5280*4882a593Smuzhiyun 5281*4882a593Smuzhiyun qos_rga2_mwo: qos@fdf66e00 { 5282*4882a593Smuzhiyun compatible = "syscon"; 5283*4882a593Smuzhiyun reg = <0x0 0xfdf66e00 0x0 0x20>; 5284*4882a593Smuzhiyun }; 5285*4882a593Smuzhiyun 5286*4882a593Smuzhiyun qos_rga3_0: qos@fdf67000 { 5287*4882a593Smuzhiyun compatible = "syscon"; 5288*4882a593Smuzhiyun reg = <0x0 0xfdf67000 0x0 0x20>; 5289*4882a593Smuzhiyun }; 5290*4882a593Smuzhiyun 5291*4882a593Smuzhiyun qos_vdpu: qos@fdf67200 { 5292*4882a593Smuzhiyun compatible = "syscon"; 5293*4882a593Smuzhiyun reg = <0x0 0xfdf67200 0x0 0x20>; 5294*4882a593Smuzhiyun }; 5295*4882a593Smuzhiyun 5296*4882a593Smuzhiyun qos_npu1: qos@fdf70000 { 5297*4882a593Smuzhiyun compatible = "syscon"; 5298*4882a593Smuzhiyun reg = <0x0 0xfdf70000 0x0 0x20>; 5299*4882a593Smuzhiyun }; 5300*4882a593Smuzhiyun 5301*4882a593Smuzhiyun qos_npu2: qos@fdf71000 { 5302*4882a593Smuzhiyun compatible = "syscon"; 5303*4882a593Smuzhiyun reg = <0x0 0xfdf71000 0x0 0x20>; 5304*4882a593Smuzhiyun }; 5305*4882a593Smuzhiyun 5306*4882a593Smuzhiyun qos_npu0_mwr: qos@fdf72000 { 5307*4882a593Smuzhiyun compatible = "syscon"; 5308*4882a593Smuzhiyun reg = <0x0 0xfdf72000 0x0 0x20>; 5309*4882a593Smuzhiyun }; 5310*4882a593Smuzhiyun 5311*4882a593Smuzhiyun qos_npu0_mro: qos@fdf72200 { 5312*4882a593Smuzhiyun compatible = "syscon"; 5313*4882a593Smuzhiyun reg = <0x0 0xfdf72200 0x0 0x20>; 5314*4882a593Smuzhiyun }; 5315*4882a593Smuzhiyun 5316*4882a593Smuzhiyun qos_mcu_npu: qos@fdf72400 { 5317*4882a593Smuzhiyun compatible = "syscon"; 5318*4882a593Smuzhiyun reg = <0x0 0xfdf72400 0x0 0x20>; 5319*4882a593Smuzhiyun }; 5320*4882a593Smuzhiyun 5321*4882a593Smuzhiyun qos_hdcp0: qos@fdf80000 { 5322*4882a593Smuzhiyun compatible = "syscon"; 5323*4882a593Smuzhiyun reg = <0x0 0xfdf80000 0x0 0x20>; 5324*4882a593Smuzhiyun }; 5325*4882a593Smuzhiyun 5326*4882a593Smuzhiyun qos_hdcp1: qos@fdf81000 { 5327*4882a593Smuzhiyun compatible = "syscon"; 5328*4882a593Smuzhiyun reg = <0x0 0xfdf81000 0x0 0x20>; 5329*4882a593Smuzhiyun }; 5330*4882a593Smuzhiyun 5331*4882a593Smuzhiyun qos_hdmirx: qos@fdf81200 { 5332*4882a593Smuzhiyun compatible = "syscon"; 5333*4882a593Smuzhiyun reg = <0x0 0xfdf81200 0x0 0x20>; 5334*4882a593Smuzhiyun }; 5335*4882a593Smuzhiyun 5336*4882a593Smuzhiyun qos_vop_m0: qos@fdf82000 { 5337*4882a593Smuzhiyun compatible = "syscon"; 5338*4882a593Smuzhiyun reg = <0x0 0xfdf82000 0x0 0x20>; 5339*4882a593Smuzhiyun }; 5340*4882a593Smuzhiyun 5341*4882a593Smuzhiyun qos_vop_m1: qos@fdf82200 { 5342*4882a593Smuzhiyun compatible = "syscon"; 5343*4882a593Smuzhiyun reg = <0x0 0xfdf82200 0x0 0x20>; 5344*4882a593Smuzhiyun }; 5345*4882a593Smuzhiyun 5346*4882a593Smuzhiyun dfi: dfi@fe060000 { 5347*4882a593Smuzhiyun compatible = "rockchip,rk3588-dfi"; 5348*4882a593Smuzhiyun reg = <0x00 0xfe060000 0x00 0x10000>; 5349*4882a593Smuzhiyun rockchip,pmu_grf = <&pmu1_grf>; 5350*4882a593Smuzhiyun status = "disabled"; 5351*4882a593Smuzhiyun }; 5352*4882a593Smuzhiyun 5353*4882a593Smuzhiyun pcie2x1l1: pcie@fe180000 { 5354*4882a593Smuzhiyun compatible = "rockchip,rk3588-pcie", "snps,dw-pcie"; 5355*4882a593Smuzhiyun #address-cells = <3>; 5356*4882a593Smuzhiyun #size-cells = <2>; 5357*4882a593Smuzhiyun bus-range = <0x30 0x3f>; 5358*4882a593Smuzhiyun clocks = <&cru ACLK_PCIE_1L1_MSTR>, <&cru ACLK_PCIE_1L1_SLV>, 5359*4882a593Smuzhiyun <&cru ACLK_PCIE_1L1_DBI>, <&cru PCLK_PCIE_1L1>, 5360*4882a593Smuzhiyun <&cru CLK_PCIE_AUX3>, <&cru CLK_PCIE1L1_PIPE>; 5361*4882a593Smuzhiyun clock-names = "aclk_mst", "aclk_slv", 5362*4882a593Smuzhiyun "aclk_dbi", "pclk", 5363*4882a593Smuzhiyun "aux", "pipe"; 5364*4882a593Smuzhiyun device_type = "pci"; 5365*4882a593Smuzhiyun interrupts = <GIC_SPI 248 IRQ_TYPE_LEVEL_HIGH>, 5366*4882a593Smuzhiyun <GIC_SPI 247 IRQ_TYPE_LEVEL_HIGH>, 5367*4882a593Smuzhiyun <GIC_SPI 246 IRQ_TYPE_LEVEL_HIGH>, 5368*4882a593Smuzhiyun <GIC_SPI 245 IRQ_TYPE_LEVEL_HIGH>, 5369*4882a593Smuzhiyun <GIC_SPI 244 IRQ_TYPE_LEVEL_HIGH>; 5370*4882a593Smuzhiyun interrupt-names = "sys", "pmc", "msg", "legacy", "err"; 5371*4882a593Smuzhiyun #interrupt-cells = <1>; 5372*4882a593Smuzhiyun interrupt-map-mask = <0 0 0 7>; 5373*4882a593Smuzhiyun interrupt-map = <0 0 0 1 &pcie2x1l1_intc 0>, 5374*4882a593Smuzhiyun <0 0 0 2 &pcie2x1l1_intc 1>, 5375*4882a593Smuzhiyun <0 0 0 3 &pcie2x1l1_intc 2>, 5376*4882a593Smuzhiyun <0 0 0 4 &pcie2x1l1_intc 3>; 5377*4882a593Smuzhiyun linux,pci-domain = <3>; 5378*4882a593Smuzhiyun num-ib-windows = <8>; 5379*4882a593Smuzhiyun num-ob-windows = <8>; 5380*4882a593Smuzhiyun num-viewport = <4>; 5381*4882a593Smuzhiyun max-link-speed = <2>; 5382*4882a593Smuzhiyun msi-map = <0x3000 &its0 0x3000 0x1000>; 5383*4882a593Smuzhiyun num-lanes = <1>; 5384*4882a593Smuzhiyun phys = <&combphy2_psu PHY_TYPE_PCIE>; 5385*4882a593Smuzhiyun phy-names = "pcie-phy"; 5386*4882a593Smuzhiyun ranges = <0x00000800 0x0 0xf3000000 0x0 0xf3000000 0x0 0x100000 5387*4882a593Smuzhiyun 0x81000000 0x0 0xf3100000 0x0 0xf3100000 0x0 0x100000 5388*4882a593Smuzhiyun 0x82000000 0x0 0xf3200000 0x0 0xf3200000 0x0 0xe00000 5389*4882a593Smuzhiyun 0xc3000000 0x9 0xc0000000 0x9 0xc0000000 0x0 0x40000000>; 5390*4882a593Smuzhiyun reg = <0x0 0xfe180000 0x0 0x10000>, 5391*4882a593Smuzhiyun <0xa 0x40c00000 0x0 0x400000>; 5392*4882a593Smuzhiyun reg-names = "pcie-apb", "pcie-dbi"; 5393*4882a593Smuzhiyun resets = <&cru SRST_PCIE3_POWER_UP>, <&cru SRST_P_PCIE3>; 5394*4882a593Smuzhiyun reset-names = "pcie", "periph"; 5395*4882a593Smuzhiyun rockchip,pipe-grf = <&php_grf>; 5396*4882a593Smuzhiyun status = "disabled"; 5397*4882a593Smuzhiyun 5398*4882a593Smuzhiyun pcie2x1l1_intc: legacy-interrupt-controller { 5399*4882a593Smuzhiyun interrupt-controller; 5400*4882a593Smuzhiyun #address-cells = <0>; 5401*4882a593Smuzhiyun #interrupt-cells = <1>; 5402*4882a593Smuzhiyun interrupt-parent = <&gic>; 5403*4882a593Smuzhiyun interrupts = <GIC_SPI 245 IRQ_TYPE_EDGE_RISING>; 5404*4882a593Smuzhiyun }; 5405*4882a593Smuzhiyun }; 5406*4882a593Smuzhiyun 5407*4882a593Smuzhiyun pcie2x1l2: pcie@fe190000 { 5408*4882a593Smuzhiyun compatible = "rockchip,rk3588-pcie", "snps,dw-pcie"; 5409*4882a593Smuzhiyun #address-cells = <3>; 5410*4882a593Smuzhiyun #size-cells = <2>; 5411*4882a593Smuzhiyun bus-range = <0x40 0x4f>; 5412*4882a593Smuzhiyun clocks = <&cru ACLK_PCIE_1L2_MSTR>, <&cru ACLK_PCIE_1L2_SLV>, 5413*4882a593Smuzhiyun <&cru ACLK_PCIE_1L2_DBI>, <&cru PCLK_PCIE_1L2>, 5414*4882a593Smuzhiyun <&cru CLK_PCIE_AUX4>, <&cru CLK_PCIE1L2_PIPE>; 5415*4882a593Smuzhiyun clock-names = "aclk_mst", "aclk_slv", 5416*4882a593Smuzhiyun "aclk_dbi", "pclk", 5417*4882a593Smuzhiyun "aux", "pipe"; 5418*4882a593Smuzhiyun device_type = "pci"; 5419*4882a593Smuzhiyun interrupts = <GIC_SPI 253 IRQ_TYPE_LEVEL_HIGH>, 5420*4882a593Smuzhiyun <GIC_SPI 252 IRQ_TYPE_LEVEL_HIGH>, 5421*4882a593Smuzhiyun <GIC_SPI 251 IRQ_TYPE_LEVEL_HIGH>, 5422*4882a593Smuzhiyun <GIC_SPI 250 IRQ_TYPE_LEVEL_HIGH>, 5423*4882a593Smuzhiyun <GIC_SPI 249 IRQ_TYPE_LEVEL_HIGH>; 5424*4882a593Smuzhiyun interrupt-names = "sys", "pmc", "msg", "legacy", "err"; 5425*4882a593Smuzhiyun #interrupt-cells = <1>; 5426*4882a593Smuzhiyun interrupt-map-mask = <0 0 0 7>; 5427*4882a593Smuzhiyun interrupt-map = <0 0 0 1 &pcie2x1l2_intc 0>, 5428*4882a593Smuzhiyun <0 0 0 2 &pcie2x1l2_intc 1>, 5429*4882a593Smuzhiyun <0 0 0 3 &pcie2x1l2_intc 2>, 5430*4882a593Smuzhiyun <0 0 0 4 &pcie2x1l2_intc 3>; 5431*4882a593Smuzhiyun linux,pci-domain = <4>; 5432*4882a593Smuzhiyun num-ib-windows = <8>; 5433*4882a593Smuzhiyun num-ob-windows = <8>; 5434*4882a593Smuzhiyun num-viewport = <4>; 5435*4882a593Smuzhiyun max-link-speed = <2>; 5436*4882a593Smuzhiyun msi-map = <0x4000 &its0 0x4000 0x1000>; 5437*4882a593Smuzhiyun num-lanes = <1>; 5438*4882a593Smuzhiyun phys = <&combphy0_ps PHY_TYPE_PCIE>; 5439*4882a593Smuzhiyun phy-names = "pcie-phy"; 5440*4882a593Smuzhiyun ranges = <0x00000800 0x0 0xf4000000 0x0 0xf4000000 0x0 0x100000 5441*4882a593Smuzhiyun 0x81000000 0x0 0xf4100000 0x0 0xf4100000 0x0 0x100000 5442*4882a593Smuzhiyun 0x82000000 0x0 0xf4200000 0x0 0xf4200000 0x0 0xe00000 5443*4882a593Smuzhiyun 0xc3000000 0xa 0x00000000 0xa 0x00000000 0x0 0x40000000>; 5444*4882a593Smuzhiyun reg = <0x0 0xfe190000 0x0 0x10000>, 5445*4882a593Smuzhiyun <0xa 0x41000000 0x0 0x400000>; 5446*4882a593Smuzhiyun reg-names = "pcie-apb", "pcie-dbi"; 5447*4882a593Smuzhiyun resets = <&cru SRST_PCIE4_POWER_UP>, <&cru SRST_P_PCIE4>; 5448*4882a593Smuzhiyun reset-names = "pcie", "periph"; 5449*4882a593Smuzhiyun rockchip,pipe-grf = <&php_grf>; 5450*4882a593Smuzhiyun status = "disabled"; 5451*4882a593Smuzhiyun 5452*4882a593Smuzhiyun pcie2x1l2_intc: legacy-interrupt-controller { 5453*4882a593Smuzhiyun interrupt-controller; 5454*4882a593Smuzhiyun #address-cells = <0>; 5455*4882a593Smuzhiyun #interrupt-cells = <1>; 5456*4882a593Smuzhiyun interrupt-parent = <&gic>; 5457*4882a593Smuzhiyun interrupts = <GIC_SPI 250 IRQ_TYPE_EDGE_RISING>; 5458*4882a593Smuzhiyun }; 5459*4882a593Smuzhiyun }; 5460*4882a593Smuzhiyun 5461*4882a593Smuzhiyun gmac_uio1: uio@fe1c0000 { 5462*4882a593Smuzhiyun compatible = "rockchip,uio-gmac"; 5463*4882a593Smuzhiyun reg = <0x0 0xfe1c0000 0x0 0x10000>; 5464*4882a593Smuzhiyun rockchip,ethernet = <&gmac1>; 5465*4882a593Smuzhiyun status = "disabled"; 5466*4882a593Smuzhiyun }; 5467*4882a593Smuzhiyun 5468*4882a593Smuzhiyun gmac1: ethernet@fe1c0000 { 5469*4882a593Smuzhiyun compatible = "rockchip,rk3588-gmac", "snps,dwmac-4.20a"; 5470*4882a593Smuzhiyun reg = <0x0 0xfe1c0000 0x0 0x10000>; 5471*4882a593Smuzhiyun interrupts = <GIC_SPI 234 IRQ_TYPE_LEVEL_HIGH>, 5472*4882a593Smuzhiyun <GIC_SPI 233 IRQ_TYPE_LEVEL_HIGH>; 5473*4882a593Smuzhiyun interrupt-names = "macirq", "eth_wake_irq"; 5474*4882a593Smuzhiyun rockchip,grf = <&sys_grf>; 5475*4882a593Smuzhiyun rockchip,php_grf = <&php_grf>; 5476*4882a593Smuzhiyun clocks = <&cru CLK_GMAC_125M>, <&cru CLK_GMAC_50M>, 5477*4882a593Smuzhiyun <&cru PCLK_GMAC1>, <&cru ACLK_GMAC1>, 5478*4882a593Smuzhiyun <&cru CLK_GMAC1_PTP_REF>; 5479*4882a593Smuzhiyun clock-names = "stmmaceth", "clk_mac_ref", 5480*4882a593Smuzhiyun "pclk_mac", "aclk_mac", 5481*4882a593Smuzhiyun "ptp_ref"; 5482*4882a593Smuzhiyun resets = <&cru SRST_A_GMAC1>; 5483*4882a593Smuzhiyun reset-names = "stmmaceth"; 5484*4882a593Smuzhiyun power-domains = <&power RK3588_PD_GMAC>; 5485*4882a593Smuzhiyun 5486*4882a593Smuzhiyun snps,mixed-burst; 5487*4882a593Smuzhiyun snps,tso; 5488*4882a593Smuzhiyun 5489*4882a593Smuzhiyun snps,axi-config = <&gmac1_stmmac_axi_setup>; 5490*4882a593Smuzhiyun snps,mtl-rx-config = <&gmac1_mtl_rx_setup>; 5491*4882a593Smuzhiyun snps,mtl-tx-config = <&gmac1_mtl_tx_setup>; 5492*4882a593Smuzhiyun status = "disabled"; 5493*4882a593Smuzhiyun 5494*4882a593Smuzhiyun mdio1: mdio { 5495*4882a593Smuzhiyun compatible = "snps,dwmac-mdio"; 5496*4882a593Smuzhiyun #address-cells = <0x1>; 5497*4882a593Smuzhiyun #size-cells = <0x0>; 5498*4882a593Smuzhiyun }; 5499*4882a593Smuzhiyun 5500*4882a593Smuzhiyun gmac1_stmmac_axi_setup: stmmac-axi-config { 5501*4882a593Smuzhiyun snps,wr_osr_lmt = <4>; 5502*4882a593Smuzhiyun snps,rd_osr_lmt = <8>; 5503*4882a593Smuzhiyun snps,blen = <0 0 0 0 16 8 4>; 5504*4882a593Smuzhiyun }; 5505*4882a593Smuzhiyun 5506*4882a593Smuzhiyun gmac1_mtl_rx_setup: rx-queues-config { 5507*4882a593Smuzhiyun snps,rx-queues-to-use = <1>; 5508*4882a593Smuzhiyun queue0 {}; 5509*4882a593Smuzhiyun }; 5510*4882a593Smuzhiyun 5511*4882a593Smuzhiyun gmac1_mtl_tx_setup: tx-queues-config { 5512*4882a593Smuzhiyun snps,tx-queues-to-use = <1>; 5513*4882a593Smuzhiyun queue0 {}; 5514*4882a593Smuzhiyun }; 5515*4882a593Smuzhiyun }; 5516*4882a593Smuzhiyun 5517*4882a593Smuzhiyun sata0: sata@fe210000 { 5518*4882a593Smuzhiyun compatible = "rockchip,rk-ahci", "snps,dwc-ahci"; 5519*4882a593Smuzhiyun reg = <0 0xfe210000 0 0x1000>; 5520*4882a593Smuzhiyun clocks = <&cru ACLK_SATA0>, <&cru CLK_PMALIVE0>, 5521*4882a593Smuzhiyun <&cru CLK_RXOOB0>, <&cru CLK_PIPEPHY0_REF>, 5522*4882a593Smuzhiyun <&cru CLK_PIPEPHY0_PIPE_ASIC_G>; 5523*4882a593Smuzhiyun clock-names = "sata", "pmalive", "rxoob", "ref", "asic"; 5524*4882a593Smuzhiyun interrupts = <GIC_SPI 273 IRQ_TYPE_LEVEL_HIGH>; 5525*4882a593Smuzhiyun interrupt-names = "hostc"; 5526*4882a593Smuzhiyun phys = <&combphy0_ps PHY_TYPE_SATA>; 5527*4882a593Smuzhiyun phy-names = "sata-phy"; 5528*4882a593Smuzhiyun ports-implemented = <0x1>; 5529*4882a593Smuzhiyun status = "disabled"; 5530*4882a593Smuzhiyun }; 5531*4882a593Smuzhiyun 5532*4882a593Smuzhiyun sata2: sata@fe230000 { 5533*4882a593Smuzhiyun compatible = "rockchip,rk-ahci", "snps,dwc-ahci"; 5534*4882a593Smuzhiyun reg = <0 0xfe230000 0 0x1000>; 5535*4882a593Smuzhiyun clocks = <&cru ACLK_SATA2>, <&cru CLK_PMALIVE2>, 5536*4882a593Smuzhiyun <&cru CLK_RXOOB2>, <&cru CLK_PIPEPHY2_REF>, 5537*4882a593Smuzhiyun <&cru CLK_PIPEPHY2_PIPE_ASIC_G>; 5538*4882a593Smuzhiyun clock-names = "sata", "pmalive", "rxoob", "ref", "asic"; 5539*4882a593Smuzhiyun interrupts = <GIC_SPI 275 IRQ_TYPE_LEVEL_HIGH>; 5540*4882a593Smuzhiyun interrupt-names = "hostc"; 5541*4882a593Smuzhiyun phys = <&combphy2_psu PHY_TYPE_SATA>; 5542*4882a593Smuzhiyun phy-names = "sata-phy"; 5543*4882a593Smuzhiyun ports-implemented = <0x1>; 5544*4882a593Smuzhiyun status = "disabled"; 5545*4882a593Smuzhiyun }; 5546*4882a593Smuzhiyun 5547*4882a593Smuzhiyun sfc: spi@fe2b0000 { 5548*4882a593Smuzhiyun compatible = "rockchip,sfc"; 5549*4882a593Smuzhiyun reg = <0x0 0xfe2b0000 0x0 0x4000>; 5550*4882a593Smuzhiyun interrupts = <GIC_SPI 206 IRQ_TYPE_LEVEL_HIGH>; 5551*4882a593Smuzhiyun clocks = <&cru SCLK_SFC>, <&cru HCLK_SFC>; 5552*4882a593Smuzhiyun clock-names = "clk_sfc", "hclk_sfc"; 5553*4882a593Smuzhiyun assigned-clocks = <&cru SCLK_SFC>; 5554*4882a593Smuzhiyun assigned-clock-rates = <100000000>; 5555*4882a593Smuzhiyun #address-cells = <1>; 5556*4882a593Smuzhiyun #size-cells = <0>; 5557*4882a593Smuzhiyun status = "disabled"; 5558*4882a593Smuzhiyun }; 5559*4882a593Smuzhiyun 5560*4882a593Smuzhiyun sdmmc: mmc@fe2c0000 { 5561*4882a593Smuzhiyun compatible = "rockchip,rk3588-dw-mshc", "rockchip,rk3288-dw-mshc"; 5562*4882a593Smuzhiyun reg = <0x0 0xfe2c0000 0x0 0x4000>; 5563*4882a593Smuzhiyun interrupts = <GIC_SPI 203 IRQ_TYPE_LEVEL_HIGH>; 5564*4882a593Smuzhiyun clocks = <&scmi_clk SCMI_HCLK_SD>, <&scmi_clk SCMI_CCLK_SD>, 5565*4882a593Smuzhiyun <&cru SCLK_SDMMC_DRV>, <&cru SCLK_SDMMC_SAMPLE>; 5566*4882a593Smuzhiyun clock-names = "biu", "ciu", "ciu-drive", "ciu-sample"; 5567*4882a593Smuzhiyun fifo-depth = <0x100>; 5568*4882a593Smuzhiyun max-frequency = <200000000>; 5569*4882a593Smuzhiyun pinctrl-names = "default"; 5570*4882a593Smuzhiyun pinctrl-0 = <&sdmmc_clk &sdmmc_cmd &sdmmc_det &sdmmc_bus4>; 5571*4882a593Smuzhiyun power-domains = <&power RK3588_PD_SDMMC>; 5572*4882a593Smuzhiyun status = "disabled"; 5573*4882a593Smuzhiyun }; 5574*4882a593Smuzhiyun 5575*4882a593Smuzhiyun sdio: mmc@fe2d0000 { 5576*4882a593Smuzhiyun compatible = "rockchip,rk3588-dw-mshc", "rockchip,rk3288-dw-mshc"; 5577*4882a593Smuzhiyun reg = <0x0 0xfe2d0000 0x0 0x4000>; 5578*4882a593Smuzhiyun interrupts = <GIC_SPI 204 IRQ_TYPE_LEVEL_HIGH>; 5579*4882a593Smuzhiyun clocks = <&cru HCLK_SDIO>, <&cru CCLK_SRC_SDIO>, 5580*4882a593Smuzhiyun <&cru SCLK_SDIO_DRV>, <&cru SCLK_SDIO_SAMPLE>; 5581*4882a593Smuzhiyun clock-names = "biu", "ciu", "ciu-drive", "ciu-sample"; 5582*4882a593Smuzhiyun fifo-depth = <0x100>; 5583*4882a593Smuzhiyun max-frequency = <200000000>; 5584*4882a593Smuzhiyun pinctrl-names = "default"; 5585*4882a593Smuzhiyun pinctrl-0 = <&sdiom1_pins>; 5586*4882a593Smuzhiyun power-domains = <&power RK3588_PD_SDIO>; 5587*4882a593Smuzhiyun status = "disabled"; 5588*4882a593Smuzhiyun }; 5589*4882a593Smuzhiyun 5590*4882a593Smuzhiyun sdhci: mmc@fe2e0000 { 5591*4882a593Smuzhiyun compatible = "rockchip,rk3588-dwcmshc", "rockchip,dwcmshc-sdhci"; 5592*4882a593Smuzhiyun reg = <0x0 0xfe2e0000 0x0 0x10000>; 5593*4882a593Smuzhiyun interrupts = <GIC_SPI 205 IRQ_TYPE_LEVEL_HIGH>; 5594*4882a593Smuzhiyun assigned-clocks = <&cru BCLK_EMMC>, <&cru TMCLK_EMMC>, <&cru CCLK_EMMC>; 5595*4882a593Smuzhiyun assigned-clock-rates = <200000000>, <24000000>, <200000000>; 5596*4882a593Smuzhiyun clocks = <&cru CCLK_EMMC>, <&cru HCLK_EMMC>, 5597*4882a593Smuzhiyun <&cru ACLK_EMMC>, <&cru BCLK_EMMC>, 5598*4882a593Smuzhiyun <&cru TMCLK_EMMC>; 5599*4882a593Smuzhiyun clock-names = "core", "bus", "axi", "block", "timer"; 5600*4882a593Smuzhiyun resets = <&cru SRST_C_EMMC>, <&cru SRST_H_EMMC>, 5601*4882a593Smuzhiyun <&cru SRST_A_EMMC>, <&cru SRST_B_EMMC>, 5602*4882a593Smuzhiyun <&cru SRST_T_EMMC>; 5603*4882a593Smuzhiyun reset-names = "core", "bus", "axi", "block", "timer"; 5604*4882a593Smuzhiyun max-frequency = <200000000>; 5605*4882a593Smuzhiyun status = "disabled"; 5606*4882a593Smuzhiyun }; 5607*4882a593Smuzhiyun 5608*4882a593Smuzhiyun crypto: crypto@fe370000 { 5609*4882a593Smuzhiyun compatible = "rockchip,rk3588-crypto"; 5610*4882a593Smuzhiyun reg = <0x0 0xfe370000 0x0 0x2000>; 5611*4882a593Smuzhiyun interrupts = <GIC_SPI 209 IRQ_TYPE_LEVEL_HIGH>; 5612*4882a593Smuzhiyun clocks = <&scmi_clk SCMI_ACLK_SECURE_NS>, <&scmi_clk SCMI_HCLK_SECURE_NS>, 5613*4882a593Smuzhiyun <&scmi_clk SCMI_CRYPTO_CORE>, <&scmi_clk SCMI_CRYPTO_PKA>; 5614*4882a593Smuzhiyun clock-names = "aclk", "hclk", "sclk", "pka"; 5615*4882a593Smuzhiyun resets = <&scmi_reset SRST_CRYPTO_CORE>; 5616*4882a593Smuzhiyun reset-names = "crypto-rst"; 5617*4882a593Smuzhiyun status = "disabled"; 5618*4882a593Smuzhiyun }; 5619*4882a593Smuzhiyun 5620*4882a593Smuzhiyun rng: rng@fe378000 { 5621*4882a593Smuzhiyun compatible = "rockchip,trngv1"; 5622*4882a593Smuzhiyun reg = <0x0 0xfe378000 0x0 0x200>; 5623*4882a593Smuzhiyun interrupts = <GIC_SPI 400 IRQ_TYPE_LEVEL_HIGH>; 5624*4882a593Smuzhiyun clocks = <&scmi_clk SCMI_HCLK_SECURE_NS>; 5625*4882a593Smuzhiyun clock-names = "hclk_trng"; 5626*4882a593Smuzhiyun resets = <&scmi_reset SRST_H_TRNG_NS>; 5627*4882a593Smuzhiyun reset-names = "reset"; 5628*4882a593Smuzhiyun status = "disabled"; 5629*4882a593Smuzhiyun }; 5630*4882a593Smuzhiyun 5631*4882a593Smuzhiyun i2s0_8ch: i2s@fe470000 { 5632*4882a593Smuzhiyun compatible = "rockchip,rk3588-i2s-tdm"; 5633*4882a593Smuzhiyun reg = <0x0 0xfe470000 0x0 0x1000>; 5634*4882a593Smuzhiyun interrupts = <GIC_SPI 180 IRQ_TYPE_LEVEL_HIGH>; 5635*4882a593Smuzhiyun clocks = <&cru MCLK_I2S0_8CH_TX>, <&cru MCLK_I2S0_8CH_RX>, <&cru HCLK_I2S0_8CH>; 5636*4882a593Smuzhiyun clock-names = "mclk_tx", "mclk_rx", "hclk"; 5637*4882a593Smuzhiyun assigned-clocks = <&cru CLK_I2S0_8CH_TX_SRC>, <&cru CLK_I2S0_8CH_RX_SRC>; 5638*4882a593Smuzhiyun assigned-clock-parents = <&cru PLL_AUPLL>, <&cru PLL_AUPLL>; 5639*4882a593Smuzhiyun dmas = <&dmac0 0>, <&dmac0 1>; 5640*4882a593Smuzhiyun dma-names = "tx", "rx"; 5641*4882a593Smuzhiyun power-domains = <&power RK3588_PD_AUDIO>; 5642*4882a593Smuzhiyun resets = <&cru SRST_M_I2S0_8CH_TX>, <&cru SRST_M_I2S0_8CH_RX>; 5643*4882a593Smuzhiyun reset-names = "tx-m", "rx-m"; 5644*4882a593Smuzhiyun rockchip,clk-trcm = <1>; 5645*4882a593Smuzhiyun pinctrl-names = "default", "idle", "clk"; 5646*4882a593Smuzhiyun pinctrl-0 = <&i2s0_sdi0 5647*4882a593Smuzhiyun &i2s0_sdi1 5648*4882a593Smuzhiyun &i2s0_sdi2 5649*4882a593Smuzhiyun &i2s0_sdi3 5650*4882a593Smuzhiyun &i2s0_sdo0 5651*4882a593Smuzhiyun &i2s0_sdo1>; 5652*4882a593Smuzhiyun pinctrl-1 = <&i2s0_idle>; 5653*4882a593Smuzhiyun pinctrl-2 = <&i2s0_lrck 5654*4882a593Smuzhiyun &i2s0_sclk>; 5655*4882a593Smuzhiyun #sound-dai-cells = <0>; 5656*4882a593Smuzhiyun status = "disabled"; 5657*4882a593Smuzhiyun }; 5658*4882a593Smuzhiyun 5659*4882a593Smuzhiyun i2s1_8ch: i2s@fe480000 { 5660*4882a593Smuzhiyun compatible = "rockchip,rk3588-i2s-tdm"; 5661*4882a593Smuzhiyun reg = <0x0 0xfe480000 0x0 0x1000>; 5662*4882a593Smuzhiyun interrupts = <GIC_SPI 181 IRQ_TYPE_LEVEL_HIGH>; 5663*4882a593Smuzhiyun clocks = <&cru MCLK_I2S1_8CH_TX>, <&cru MCLK_I2S1_8CH_RX>, <&cru HCLK_I2S1_8CH>; 5664*4882a593Smuzhiyun clock-names = "mclk_tx", "mclk_rx", "hclk"; 5665*4882a593Smuzhiyun dmas = <&dmac0 2>, <&dmac0 3>; 5666*4882a593Smuzhiyun dma-names = "tx", "rx"; 5667*4882a593Smuzhiyun resets = <&cru SRST_M_I2S1_8CH_TX>, <&cru SRST_M_I2S1_8CH_RX>; 5668*4882a593Smuzhiyun reset-names = "tx-m", "rx-m"; 5669*4882a593Smuzhiyun rockchip,clk-trcm = <1>; 5670*4882a593Smuzhiyun pinctrl-names = "default"; 5671*4882a593Smuzhiyun pinctrl-0 = <&i2s1m0_lrck 5672*4882a593Smuzhiyun &i2s1m0_sclk 5673*4882a593Smuzhiyun &i2s1m0_sdi0 5674*4882a593Smuzhiyun &i2s1m0_sdi1 5675*4882a593Smuzhiyun &i2s1m0_sdi2 5676*4882a593Smuzhiyun &i2s1m0_sdi3 5677*4882a593Smuzhiyun &i2s1m0_sdo0 5678*4882a593Smuzhiyun &i2s1m0_sdo1 5679*4882a593Smuzhiyun &i2s1m0_sdo2 5680*4882a593Smuzhiyun &i2s1m0_sdo3>; 5681*4882a593Smuzhiyun #sound-dai-cells = <0>; 5682*4882a593Smuzhiyun status = "disabled"; 5683*4882a593Smuzhiyun }; 5684*4882a593Smuzhiyun 5685*4882a593Smuzhiyun i2s2_2ch: i2s@fe490000 { 5686*4882a593Smuzhiyun compatible = "rockchip,rk3588-i2s", "rockchip,rk3066-i2s"; 5687*4882a593Smuzhiyun reg = <0x0 0xfe490000 0x0 0x1000>; 5688*4882a593Smuzhiyun interrupts = <GIC_SPI 182 IRQ_TYPE_LEVEL_HIGH>; 5689*4882a593Smuzhiyun clocks = <&cru MCLK_I2S2_2CH>, <&cru HCLK_I2S2_2CH>; 5690*4882a593Smuzhiyun clock-names = "i2s_clk", "i2s_hclk"; 5691*4882a593Smuzhiyun assigned-clocks = <&cru CLK_I2S2_2CH_SRC>; 5692*4882a593Smuzhiyun assigned-clock-parents = <&cru PLL_AUPLL>; 5693*4882a593Smuzhiyun dmas = <&dmac1 0>, <&dmac1 1>; 5694*4882a593Smuzhiyun dma-names = "tx", "rx"; 5695*4882a593Smuzhiyun power-domains = <&power RK3588_PD_AUDIO>; 5696*4882a593Smuzhiyun rockchip,clk-trcm = <1>; 5697*4882a593Smuzhiyun pinctrl-names = "default", "idle", "clk"; 5698*4882a593Smuzhiyun pinctrl-0 = <&i2s2m1_sdi 5699*4882a593Smuzhiyun &i2s2m1_sdo>; 5700*4882a593Smuzhiyun pinctrl-1 = <&i2s2m1_idle>; 5701*4882a593Smuzhiyun pinctrl-2 = <&i2s2m1_lrck 5702*4882a593Smuzhiyun &i2s2m1_sclk>; 5703*4882a593Smuzhiyun #sound-dai-cells = <0>; 5704*4882a593Smuzhiyun status = "disabled"; 5705*4882a593Smuzhiyun }; 5706*4882a593Smuzhiyun 5707*4882a593Smuzhiyun i2s3_2ch: i2s@fe4a0000 { 5708*4882a593Smuzhiyun compatible = "rockchip,rk3588-i2s", "rockchip,rk3066-i2s"; 5709*4882a593Smuzhiyun reg = <0x0 0xfe4a0000 0x0 0x1000>; 5710*4882a593Smuzhiyun interrupts = <GIC_SPI 183 IRQ_TYPE_LEVEL_HIGH>; 5711*4882a593Smuzhiyun clocks = <&cru MCLK_I2S3_2CH>, <&cru HCLK_I2S3_2CH>; 5712*4882a593Smuzhiyun clock-names = "i2s_clk", "i2s_hclk"; 5713*4882a593Smuzhiyun assigned-clocks = <&cru CLK_I2S3_2CH_SRC>; 5714*4882a593Smuzhiyun assigned-clock-parents = <&cru PLL_AUPLL>; 5715*4882a593Smuzhiyun dmas = <&dmac1 2>, <&dmac1 3>; 5716*4882a593Smuzhiyun dma-names = "tx", "rx"; 5717*4882a593Smuzhiyun power-domains = <&power RK3588_PD_AUDIO>; 5718*4882a593Smuzhiyun rockchip,clk-trcm = <1>; 5719*4882a593Smuzhiyun pinctrl-names = "default", "idle", "clk"; 5720*4882a593Smuzhiyun pinctrl-0 = <&i2s3_sdi 5721*4882a593Smuzhiyun &i2s3_sdo>; 5722*4882a593Smuzhiyun pinctrl-1 = <&i2s3_idle>; 5723*4882a593Smuzhiyun pinctrl-2 = <&i2s3_lrck 5724*4882a593Smuzhiyun &i2s3_sclk>; 5725*4882a593Smuzhiyun #sound-dai-cells = <0>; 5726*4882a593Smuzhiyun status = "disabled"; 5727*4882a593Smuzhiyun }; 5728*4882a593Smuzhiyun 5729*4882a593Smuzhiyun pdm0: pdm@fe4b0000 { 5730*4882a593Smuzhiyun compatible = "rockchip,rk3588-pdm"; 5731*4882a593Smuzhiyun reg = <0x0 0xfe4b0000 0x0 0x1000>; 5732*4882a593Smuzhiyun clocks = <&cru MCLK_PDM0>, <&cru HCLK_PDM0>; 5733*4882a593Smuzhiyun clock-names = "pdm_clk", "pdm_hclk"; 5734*4882a593Smuzhiyun dmas = <&dmac0 4>; 5735*4882a593Smuzhiyun dma-names = "rx"; 5736*4882a593Smuzhiyun pinctrl-names = "default", "idle", "clk"; 5737*4882a593Smuzhiyun pinctrl-0 = <&pdm0m0_sdi0 5738*4882a593Smuzhiyun &pdm0m0_sdi1 5739*4882a593Smuzhiyun &pdm0m0_sdi2 5740*4882a593Smuzhiyun &pdm0m0_sdi3>; 5741*4882a593Smuzhiyun pinctrl-1 = <&pdm0m0_idle>; 5742*4882a593Smuzhiyun pinctrl-2 = <&pdm0m0_clk 5743*4882a593Smuzhiyun &pdm0m0_clk1>; 5744*4882a593Smuzhiyun #sound-dai-cells = <0>; 5745*4882a593Smuzhiyun status = "disabled"; 5746*4882a593Smuzhiyun }; 5747*4882a593Smuzhiyun 5748*4882a593Smuzhiyun pdm1: pdm@fe4c0000 { 5749*4882a593Smuzhiyun compatible = "rockchip,rk3588-pdm"; 5750*4882a593Smuzhiyun reg = <0x0 0xfe4c0000 0x0 0x1000>; 5751*4882a593Smuzhiyun clocks = <&cru MCLK_PDM1>, <&cru HCLK_PDM1>; 5752*4882a593Smuzhiyun clock-names = "pdm_clk", "pdm_hclk"; 5753*4882a593Smuzhiyun assigned-clocks = <&cru MCLK_PDM1>; 5754*4882a593Smuzhiyun assigned-clock-parents = <&cru PLL_AUPLL>; 5755*4882a593Smuzhiyun dmas = <&dmac1 4>; 5756*4882a593Smuzhiyun dma-names = "rx"; 5757*4882a593Smuzhiyun power-domains = <&power RK3588_PD_AUDIO>; 5758*4882a593Smuzhiyun pinctrl-names = "default", "idle", "clk"; 5759*4882a593Smuzhiyun pinctrl-0 = <&pdm1m0_sdi0 5760*4882a593Smuzhiyun &pdm1m0_sdi1 5761*4882a593Smuzhiyun &pdm1m0_sdi2 5762*4882a593Smuzhiyun &pdm1m0_sdi3>; 5763*4882a593Smuzhiyun pinctrl-1 = <&pdm1m0_idle>; 5764*4882a593Smuzhiyun pinctrl-2 = <&pdm1m0_clk 5765*4882a593Smuzhiyun &pdm1m0_clk1>; 5766*4882a593Smuzhiyun #sound-dai-cells = <0>; 5767*4882a593Smuzhiyun status = "disabled"; 5768*4882a593Smuzhiyun }; 5769*4882a593Smuzhiyun 5770*4882a593Smuzhiyun vad: vad@fe4d0000 { 5771*4882a593Smuzhiyun compatible = "rockchip,rk3588-vad"; 5772*4882a593Smuzhiyun reg = <0x0 0xfe4d0000 0x0 0x1000>; 5773*4882a593Smuzhiyun reg-names = "vad"; 5774*4882a593Smuzhiyun clocks = <&cru HCLK_VAD>; 5775*4882a593Smuzhiyun clock-names = "hclk"; 5776*4882a593Smuzhiyun interrupts = <GIC_SPI 202 IRQ_TYPE_LEVEL_HIGH>; 5777*4882a593Smuzhiyun rockchip,audio-src = <0>; 5778*4882a593Smuzhiyun rockchip,det-channel = <0>; 5779*4882a593Smuzhiyun rockchip,mode = <0>; 5780*4882a593Smuzhiyun #sound-dai-cells = <0>; 5781*4882a593Smuzhiyun status = "disabled"; 5782*4882a593Smuzhiyun }; 5783*4882a593Smuzhiyun 5784*4882a593Smuzhiyun spdif_tx0: spdif-tx@fe4e0000 { 5785*4882a593Smuzhiyun compatible = "rockchip,rk3588-spdif", "rockchip,rk3568-spdif"; 5786*4882a593Smuzhiyun reg = <0x0 0xfe4e0000 0x0 0x1000>; 5787*4882a593Smuzhiyun interrupts = <GIC_SPI 193 IRQ_TYPE_LEVEL_HIGH>; 5788*4882a593Smuzhiyun dmas = <&dmac0 5>; 5789*4882a593Smuzhiyun dma-names = "tx"; 5790*4882a593Smuzhiyun clock-names = "mclk", "hclk"; 5791*4882a593Smuzhiyun clocks = <&cru MCLK_SPDIF0>, <&cru HCLK_SPDIF0>; 5792*4882a593Smuzhiyun assigned-clocks = <&cru CLK_SPDIF0_SRC>; 5793*4882a593Smuzhiyun assigned-clock-parents = <&cru PLL_AUPLL>; 5794*4882a593Smuzhiyun power-domains = <&power RK3588_PD_AUDIO>; 5795*4882a593Smuzhiyun pinctrl-names = "default"; 5796*4882a593Smuzhiyun pinctrl-0 = <&spdif0m0_tx>; 5797*4882a593Smuzhiyun #sound-dai-cells = <0>; 5798*4882a593Smuzhiyun status = "disabled"; 5799*4882a593Smuzhiyun }; 5800*4882a593Smuzhiyun 5801*4882a593Smuzhiyun spdif_tx1: spdif-tx@fe4f0000 { 5802*4882a593Smuzhiyun compatible = "rockchip,rk3588-spdif", "rockchip,rk3568-spdif"; 5803*4882a593Smuzhiyun reg = <0x0 0xfe4f0000 0x0 0x1000>; 5804*4882a593Smuzhiyun interrupts = <GIC_SPI 194 IRQ_TYPE_LEVEL_HIGH>; 5805*4882a593Smuzhiyun dmas = <&dmac1 5>; 5806*4882a593Smuzhiyun dma-names = "tx"; 5807*4882a593Smuzhiyun clock-names = "mclk", "hclk"; 5808*4882a593Smuzhiyun clocks = <&cru MCLK_SPDIF1>, <&cru HCLK_SPDIF1>; 5809*4882a593Smuzhiyun assigned-clocks = <&cru CLK_SPDIF1_SRC>; 5810*4882a593Smuzhiyun assigned-clock-parents = <&cru PLL_AUPLL>; 5811*4882a593Smuzhiyun power-domains = <&power RK3588_PD_AUDIO>; 5812*4882a593Smuzhiyun pinctrl-names = "default"; 5813*4882a593Smuzhiyun pinctrl-0 = <&spdif1m0_tx>; 5814*4882a593Smuzhiyun #sound-dai-cells = <0>; 5815*4882a593Smuzhiyun status = "disabled"; 5816*4882a593Smuzhiyun }; 5817*4882a593Smuzhiyun 5818*4882a593Smuzhiyun acdcdig_dsm: codec-digital@fe500000 { 5819*4882a593Smuzhiyun compatible = "rockchip,rk3588-codec-digital", "rockchip,codec-digital-v1"; 5820*4882a593Smuzhiyun reg = <0x0 0xfe500000 0x0 0x1000>; 5821*4882a593Smuzhiyun clocks = <&cru CLK_DAC_ACDCDIG>, <&cru PCLK_ACDCDIG>; 5822*4882a593Smuzhiyun clock-names = "dac", "pclk"; 5823*4882a593Smuzhiyun power-domains = <&power RK3588_PD_AUDIO>; 5824*4882a593Smuzhiyun resets = <&cru SRST_DAC_ACDCDIG>; 5825*4882a593Smuzhiyun reset-names = "reset" ; 5826*4882a593Smuzhiyun rockchip,grf = <&sys_grf>; 5827*4882a593Smuzhiyun rockchip,pwm-output-mode; 5828*4882a593Smuzhiyun pinctrl-names = "default"; 5829*4882a593Smuzhiyun pinctrl-0 = <&auddsm_pins>; 5830*4882a593Smuzhiyun #sound-dai-cells = <0>; 5831*4882a593Smuzhiyun status = "disabled"; 5832*4882a593Smuzhiyun }; 5833*4882a593Smuzhiyun 5834*4882a593Smuzhiyun hwlock: hwspinlock@fe5a0000 { 5835*4882a593Smuzhiyun compatible = "rockchip,hwspinlock"; 5836*4882a593Smuzhiyun reg = <0 0xfe5a0000 0 0x100>; 5837*4882a593Smuzhiyun #hwlock-cells = <1>; 5838*4882a593Smuzhiyun }; 5839*4882a593Smuzhiyun 5840*4882a593Smuzhiyun gic: interrupt-controller@fe600000 { 5841*4882a593Smuzhiyun compatible = "arm,gic-v3"; 5842*4882a593Smuzhiyun #interrupt-cells = <3>; 5843*4882a593Smuzhiyun #address-cells = <2>; 5844*4882a593Smuzhiyun #size-cells = <2>; 5845*4882a593Smuzhiyun ranges; 5846*4882a593Smuzhiyun interrupt-controller; 5847*4882a593Smuzhiyun 5848*4882a593Smuzhiyun reg = <0x0 0xfe600000 0 0x10000>, /* GICD */ 5849*4882a593Smuzhiyun <0x0 0xfe680000 0 0x100000>; /* GICR */ 5850*4882a593Smuzhiyun interrupts = <GIC_PPI 9 IRQ_TYPE_LEVEL_HIGH>; 5851*4882a593Smuzhiyun its0: msi-controller@fe640000 { 5852*4882a593Smuzhiyun compatible = "arm,gic-v3-its"; 5853*4882a593Smuzhiyun msi-controller; 5854*4882a593Smuzhiyun #msi-cells = <1>; 5855*4882a593Smuzhiyun reg = <0x0 0xfe640000 0x0 0x20000>; 5856*4882a593Smuzhiyun }; 5857*4882a593Smuzhiyun its1: msi-controller@fe660000 { 5858*4882a593Smuzhiyun compatible = "arm,gic-v3-its"; 5859*4882a593Smuzhiyun msi-controller; 5860*4882a593Smuzhiyun #msi-cells = <1>; 5861*4882a593Smuzhiyun reg = <0x0 0xfe660000 0x0 0x20000>; 5862*4882a593Smuzhiyun }; 5863*4882a593Smuzhiyun }; 5864*4882a593Smuzhiyun 5865*4882a593Smuzhiyun dmac0: dma-controller@fea10000 { 5866*4882a593Smuzhiyun compatible = "arm,pl330", "arm,primecell"; 5867*4882a593Smuzhiyun reg = <0x0 0xfea10000 0x0 0x4000>; 5868*4882a593Smuzhiyun interrupts = <GIC_SPI 86 IRQ_TYPE_LEVEL_HIGH>, 5869*4882a593Smuzhiyun <GIC_SPI 87 IRQ_TYPE_LEVEL_HIGH>; 5870*4882a593Smuzhiyun clocks = <&cru ACLK_DMAC0>; 5871*4882a593Smuzhiyun clock-names = "apb_pclk"; 5872*4882a593Smuzhiyun #dma-cells = <1>; 5873*4882a593Smuzhiyun arm,pl330-periph-burst; 5874*4882a593Smuzhiyun }; 5875*4882a593Smuzhiyun 5876*4882a593Smuzhiyun dmac1: dma-controller@fea30000 { 5877*4882a593Smuzhiyun compatible = "arm,pl330", "arm,primecell"; 5878*4882a593Smuzhiyun reg = <0x0 0xfea30000 0x0 0x4000>; 5879*4882a593Smuzhiyun interrupts = <GIC_SPI 88 IRQ_TYPE_LEVEL_HIGH>, 5880*4882a593Smuzhiyun <GIC_SPI 89 IRQ_TYPE_LEVEL_HIGH>; 5881*4882a593Smuzhiyun clocks = <&cru ACLK_DMAC1>; 5882*4882a593Smuzhiyun clock-names = "apb_pclk"; 5883*4882a593Smuzhiyun #dma-cells = <1>; 5884*4882a593Smuzhiyun arm,pl330-periph-burst; 5885*4882a593Smuzhiyun }; 5886*4882a593Smuzhiyun 5887*4882a593Smuzhiyun can0: can@fea50000 { 5888*4882a593Smuzhiyun compatible = "rockchip,can-2.0"; 5889*4882a593Smuzhiyun reg = <0x0 0xfea50000 0x0 0x1000>; 5890*4882a593Smuzhiyun interrupts = <GIC_SPI 341 IRQ_TYPE_LEVEL_HIGH>; 5891*4882a593Smuzhiyun clocks = <&cru CLK_CAN0>, <&cru PCLK_CAN0>; 5892*4882a593Smuzhiyun clock-names = "baudclk", "apb_pclk"; 5893*4882a593Smuzhiyun resets = <&cru SRST_CAN0>, <&cru SRST_P_CAN0>; 5894*4882a593Smuzhiyun reset-names = "can", "can-apb"; 5895*4882a593Smuzhiyun pinctrl-names = "default"; 5896*4882a593Smuzhiyun pinctrl-0 = <&can0m0_pins>; 5897*4882a593Smuzhiyun tx-fifo-depth = <1>; 5898*4882a593Smuzhiyun rx-fifo-depth = <6>; 5899*4882a593Smuzhiyun status = "disabled"; 5900*4882a593Smuzhiyun }; 5901*4882a593Smuzhiyun 5902*4882a593Smuzhiyun can1: can@fea60000 { 5903*4882a593Smuzhiyun compatible = "rockchip,can-2.0"; 5904*4882a593Smuzhiyun reg = <0x0 0xfea60000 0x0 0x1000>; 5905*4882a593Smuzhiyun interrupts = <GIC_SPI 342 IRQ_TYPE_LEVEL_HIGH>; 5906*4882a593Smuzhiyun clocks = <&cru CLK_CAN1>, <&cru PCLK_CAN1>; 5907*4882a593Smuzhiyun clock-names = "baudclk", "apb_pclk"; 5908*4882a593Smuzhiyun resets = <&cru SRST_CAN1>, <&cru SRST_P_CAN1>; 5909*4882a593Smuzhiyun reset-names = "can", "can-apb"; 5910*4882a593Smuzhiyun pinctrl-names = "default"; 5911*4882a593Smuzhiyun pinctrl-0 = <&can1m0_pins>; 5912*4882a593Smuzhiyun tx-fifo-depth = <1>; 5913*4882a593Smuzhiyun rx-fifo-depth = <6>; 5914*4882a593Smuzhiyun status = "disabled"; 5915*4882a593Smuzhiyun }; 5916*4882a593Smuzhiyun 5917*4882a593Smuzhiyun can2: can@fea70000 { 5918*4882a593Smuzhiyun compatible = "rockchip,can-2.0"; 5919*4882a593Smuzhiyun reg = <0x0 0xfea70000 0x0 0x1000>; 5920*4882a593Smuzhiyun interrupts = <GIC_SPI 343 IRQ_TYPE_LEVEL_HIGH>; 5921*4882a593Smuzhiyun clocks = <&cru CLK_CAN2>, <&cru PCLK_CAN2>; 5922*4882a593Smuzhiyun clock-names = "baudclk", "apb_pclk"; 5923*4882a593Smuzhiyun resets = <&cru SRST_CAN2>, <&cru SRST_P_CAN2>; 5924*4882a593Smuzhiyun reset-names = "can", "can-apb"; 5925*4882a593Smuzhiyun pinctrl-names = "default"; 5926*4882a593Smuzhiyun pinctrl-0 = <&can2m0_pins>; 5927*4882a593Smuzhiyun tx-fifo-depth = <1>; 5928*4882a593Smuzhiyun rx-fifo-depth = <6>; 5929*4882a593Smuzhiyun status = "disabled"; 5930*4882a593Smuzhiyun }; 5931*4882a593Smuzhiyun 5932*4882a593Smuzhiyun hw_decompress: decompress@fea80000 { 5933*4882a593Smuzhiyun compatible = "rockchip,hw-decompress"; 5934*4882a593Smuzhiyun reg = <0x0 0xfea80000 0x0 0x1000>; 5935*4882a593Smuzhiyun interrupts = <GIC_SPI 85 IRQ_TYPE_LEVEL_HIGH>; 5936*4882a593Smuzhiyun clocks = <&cru ACLK_DECOM>, <&cru DCLK_DECOM>, <&cru PCLK_DECOM>; 5937*4882a593Smuzhiyun clock-names = "aclk", "dclk", "pclk"; 5938*4882a593Smuzhiyun resets = <&cru SRST_D_DECOM>; 5939*4882a593Smuzhiyun reset-names = "dresetn"; 5940*4882a593Smuzhiyun status = "disabled"; 5941*4882a593Smuzhiyun }; 5942*4882a593Smuzhiyun 5943*4882a593Smuzhiyun i2c1: i2c@fea90000 { 5944*4882a593Smuzhiyun compatible = "rockchip,rk3588-i2c", "rockchip,rk3399-i2c"; 5945*4882a593Smuzhiyun reg = <0x0 0xfea90000 0x0 0x1000>; 5946*4882a593Smuzhiyun clocks = <&cru CLK_I2C1>, <&cru PCLK_I2C1>; 5947*4882a593Smuzhiyun clock-names = "i2c", "pclk"; 5948*4882a593Smuzhiyun interrupts = <GIC_SPI 318 IRQ_TYPE_LEVEL_HIGH>; 5949*4882a593Smuzhiyun pinctrl-names = "default"; 5950*4882a593Smuzhiyun pinctrl-0 = <&i2c1m0_xfer>; 5951*4882a593Smuzhiyun #address-cells = <1>; 5952*4882a593Smuzhiyun #size-cells = <0>; 5953*4882a593Smuzhiyun status = "disabled"; 5954*4882a593Smuzhiyun }; 5955*4882a593Smuzhiyun 5956*4882a593Smuzhiyun i2c2: i2c@feaa0000 { 5957*4882a593Smuzhiyun compatible = "rockchip,rk3588-i2c", "rockchip,rk3399-i2c"; 5958*4882a593Smuzhiyun reg = <0x0 0xfeaa0000 0x0 0x1000>; 5959*4882a593Smuzhiyun clocks = <&cru CLK_I2C2>, <&cru PCLK_I2C2>; 5960*4882a593Smuzhiyun clock-names = "i2c", "pclk"; 5961*4882a593Smuzhiyun interrupts = <GIC_SPI 319 IRQ_TYPE_LEVEL_HIGH>; 5962*4882a593Smuzhiyun pinctrl-names = "default"; 5963*4882a593Smuzhiyun pinctrl-0 = <&i2c2m0_xfer>; 5964*4882a593Smuzhiyun #address-cells = <1>; 5965*4882a593Smuzhiyun #size-cells = <0>; 5966*4882a593Smuzhiyun status = "disabled"; 5967*4882a593Smuzhiyun }; 5968*4882a593Smuzhiyun 5969*4882a593Smuzhiyun i2c3: i2c@feab0000 { 5970*4882a593Smuzhiyun compatible = "rockchip,rk3588-i2c", "rockchip,rk3399-i2c"; 5971*4882a593Smuzhiyun reg = <0x0 0xfeab0000 0x0 0x1000>; 5972*4882a593Smuzhiyun clocks = <&cru CLK_I2C3>, <&cru PCLK_I2C3>; 5973*4882a593Smuzhiyun clock-names = "i2c", "pclk"; 5974*4882a593Smuzhiyun interrupts = <GIC_SPI 320 IRQ_TYPE_LEVEL_HIGH>; 5975*4882a593Smuzhiyun pinctrl-names = "default"; 5976*4882a593Smuzhiyun pinctrl-0 = <&i2c3m0_xfer>; 5977*4882a593Smuzhiyun #address-cells = <1>; 5978*4882a593Smuzhiyun #size-cells = <0>; 5979*4882a593Smuzhiyun status = "disabled"; 5980*4882a593Smuzhiyun }; 5981*4882a593Smuzhiyun 5982*4882a593Smuzhiyun i2c4: i2c@feac0000 { 5983*4882a593Smuzhiyun compatible = "rockchip,rk3588-i2c", "rockchip,rk3399-i2c"; 5984*4882a593Smuzhiyun reg = <0x0 0xfeac0000 0x0 0x1000>; 5985*4882a593Smuzhiyun clocks = <&cru CLK_I2C4>, <&cru PCLK_I2C4>; 5986*4882a593Smuzhiyun clock-names = "i2c", "pclk"; 5987*4882a593Smuzhiyun interrupts = <GIC_SPI 321 IRQ_TYPE_LEVEL_HIGH>; 5988*4882a593Smuzhiyun pinctrl-names = "default"; 5989*4882a593Smuzhiyun pinctrl-0 = <&i2c4m0_xfer>; 5990*4882a593Smuzhiyun #address-cells = <1>; 5991*4882a593Smuzhiyun #size-cells = <0>; 5992*4882a593Smuzhiyun status = "disabled"; 5993*4882a593Smuzhiyun }; 5994*4882a593Smuzhiyun 5995*4882a593Smuzhiyun i2c5: i2c@fead0000 { 5996*4882a593Smuzhiyun compatible = "rockchip,rk3588-i2c", "rockchip,rk3399-i2c"; 5997*4882a593Smuzhiyun reg = <0x0 0xfead0000 0x0 0x1000>; 5998*4882a593Smuzhiyun clocks = <&cru CLK_I2C5>, <&cru PCLK_I2C5>; 5999*4882a593Smuzhiyun clock-names = "i2c", "pclk"; 6000*4882a593Smuzhiyun interrupts = <GIC_SPI 322 IRQ_TYPE_LEVEL_HIGH>; 6001*4882a593Smuzhiyun pinctrl-names = "default"; 6002*4882a593Smuzhiyun pinctrl-0 = <&i2c5m0_xfer>; 6003*4882a593Smuzhiyun #address-cells = <1>; 6004*4882a593Smuzhiyun #size-cells = <0>; 6005*4882a593Smuzhiyun status = "disabled"; 6006*4882a593Smuzhiyun }; 6007*4882a593Smuzhiyun 6008*4882a593Smuzhiyun rktimer: timer@feae0000 { 6009*4882a593Smuzhiyun compatible = "rockchip,rk3588-timer", "rockchip,rk3288-timer"; 6010*4882a593Smuzhiyun reg = <0x0 0xfeae0000 0x0 0x20>; 6011*4882a593Smuzhiyun interrupts = <GIC_SPI 289 IRQ_TYPE_LEVEL_HIGH>; 6012*4882a593Smuzhiyun clocks = <&cru PCLK_BUSTIMER0>, <&cru CLK_BUSTIMER0>; 6013*4882a593Smuzhiyun clock-names = "pclk", "timer"; 6014*4882a593Smuzhiyun }; 6015*4882a593Smuzhiyun 6016*4882a593Smuzhiyun wdt: watchdog@feaf0000 { 6017*4882a593Smuzhiyun compatible = "snps,dw-wdt"; 6018*4882a593Smuzhiyun reg = <0x0 0xfeaf0000 0x0 0x100>; 6019*4882a593Smuzhiyun clocks = <&cru TCLK_WDT0>, <&cru PCLK_WDT0>; 6020*4882a593Smuzhiyun clock-names = "tclk", "pclk"; 6021*4882a593Smuzhiyun interrupts = <GIC_SPI 315 IRQ_TYPE_LEVEL_HIGH>; 6022*4882a593Smuzhiyun status = "disabled"; 6023*4882a593Smuzhiyun }; 6024*4882a593Smuzhiyun 6025*4882a593Smuzhiyun spi0: spi@feb00000 { 6026*4882a593Smuzhiyun compatible = "rockchip,rk3066-spi"; 6027*4882a593Smuzhiyun reg = <0x0 0xfeb00000 0x0 0x1000>; 6028*4882a593Smuzhiyun interrupts = <GIC_SPI 326 IRQ_TYPE_LEVEL_HIGH>; 6029*4882a593Smuzhiyun #address-cells = <1>; 6030*4882a593Smuzhiyun #size-cells = <0>; 6031*4882a593Smuzhiyun clocks = <&cru CLK_SPI0>, <&cru PCLK_SPI0>; 6032*4882a593Smuzhiyun clock-names = "spiclk", "apb_pclk"; 6033*4882a593Smuzhiyun dmas = <&dmac0 14>, <&dmac0 15>; 6034*4882a593Smuzhiyun dma-names = "tx", "rx"; 6035*4882a593Smuzhiyun pinctrl-names = "default"; 6036*4882a593Smuzhiyun pinctrl-0 = <&spi0m0_cs0 &spi0m0_cs1 &spi0m0_pins>; 6037*4882a593Smuzhiyun num-cs = <2>; 6038*4882a593Smuzhiyun status = "disabled"; 6039*4882a593Smuzhiyun }; 6040*4882a593Smuzhiyun 6041*4882a593Smuzhiyun spi1: spi@feb10000 { 6042*4882a593Smuzhiyun compatible = "rockchip,rk3066-spi"; 6043*4882a593Smuzhiyun reg = <0x0 0xfeb10000 0x0 0x1000>; 6044*4882a593Smuzhiyun interrupts = <GIC_SPI 327 IRQ_TYPE_LEVEL_HIGH>; 6045*4882a593Smuzhiyun #address-cells = <1>; 6046*4882a593Smuzhiyun #size-cells = <0>; 6047*4882a593Smuzhiyun clocks = <&cru CLK_SPI1>, <&cru PCLK_SPI1>; 6048*4882a593Smuzhiyun clock-names = "spiclk", "apb_pclk"; 6049*4882a593Smuzhiyun dmas = <&dmac0 16>, <&dmac0 17>; 6050*4882a593Smuzhiyun dma-names = "tx", "rx"; 6051*4882a593Smuzhiyun pinctrl-names = "default"; 6052*4882a593Smuzhiyun pinctrl-0 = <&spi1m1_cs0 &spi1m1_cs1 &spi1m1_pins>; 6053*4882a593Smuzhiyun num-cs = <2>; 6054*4882a593Smuzhiyun status = "disabled"; 6055*4882a593Smuzhiyun }; 6056*4882a593Smuzhiyun 6057*4882a593Smuzhiyun spi2: spi@feb20000 { 6058*4882a593Smuzhiyun compatible = "rockchip,rk3066-spi"; 6059*4882a593Smuzhiyun reg = <0x0 0xfeb20000 0x0 0x1000>; 6060*4882a593Smuzhiyun interrupts = <GIC_SPI 328 IRQ_TYPE_LEVEL_HIGH>; 6061*4882a593Smuzhiyun #address-cells = <1>; 6062*4882a593Smuzhiyun #size-cells = <0>; 6063*4882a593Smuzhiyun clocks = <&cru CLK_SPI2>, <&cru PCLK_SPI2>; 6064*4882a593Smuzhiyun clock-names = "spiclk", "apb_pclk"; 6065*4882a593Smuzhiyun dmas = <&dmac1 15>, <&dmac1 16>; 6066*4882a593Smuzhiyun dma-names = "tx", "rx"; 6067*4882a593Smuzhiyun pinctrl-names = "default"; 6068*4882a593Smuzhiyun pinctrl-0 = <&spi2m2_cs0 &spi2m2_cs1 &spi2m2_pins>; 6069*4882a593Smuzhiyun num-cs = <2>; 6070*4882a593Smuzhiyun status = "disabled"; 6071*4882a593Smuzhiyun }; 6072*4882a593Smuzhiyun 6073*4882a593Smuzhiyun spi3: spi@feb30000 { 6074*4882a593Smuzhiyun compatible = "rockchip,rk3066-spi"; 6075*4882a593Smuzhiyun reg = <0x0 0xfeb30000 0x0 0x1000>; 6076*4882a593Smuzhiyun interrupts = <GIC_SPI 329 IRQ_TYPE_LEVEL_HIGH>; 6077*4882a593Smuzhiyun #address-cells = <1>; 6078*4882a593Smuzhiyun #size-cells = <0>; 6079*4882a593Smuzhiyun clocks = <&cru CLK_SPI3>, <&cru PCLK_SPI3>; 6080*4882a593Smuzhiyun clock-names = "spiclk", "apb_pclk"; 6081*4882a593Smuzhiyun dmas = <&dmac1 17>, <&dmac1 18>; 6082*4882a593Smuzhiyun dma-names = "tx", "rx"; 6083*4882a593Smuzhiyun pinctrl-names = "default"; 6084*4882a593Smuzhiyun pinctrl-0 = <&spi3m1_cs0 &spi3m1_cs1 &spi3m1_pins>; 6085*4882a593Smuzhiyun num-cs = <2>; 6086*4882a593Smuzhiyun status = "disabled"; 6087*4882a593Smuzhiyun }; 6088*4882a593Smuzhiyun 6089*4882a593Smuzhiyun uart1: serial@feb40000 { 6090*4882a593Smuzhiyun compatible = "rockchip,rk3588-uart", "snps,dw-apb-uart"; 6091*4882a593Smuzhiyun reg = <0x0 0xfeb40000 0x0 0x100>; 6092*4882a593Smuzhiyun interrupts = <GIC_SPI 332 IRQ_TYPE_LEVEL_HIGH>; 6093*4882a593Smuzhiyun clocks = <&cru SCLK_UART1>, <&cru PCLK_UART1>; 6094*4882a593Smuzhiyun clock-names = "baudclk", "apb_pclk"; 6095*4882a593Smuzhiyun reg-shift = <2>; 6096*4882a593Smuzhiyun reg-io-width = <4>; 6097*4882a593Smuzhiyun dmas = <&dmac0 8>, <&dmac0 9>; 6098*4882a593Smuzhiyun pinctrl-names = "default"; 6099*4882a593Smuzhiyun pinctrl-0 = <&uart1m1_xfer>; 6100*4882a593Smuzhiyun status = "disabled"; 6101*4882a593Smuzhiyun }; 6102*4882a593Smuzhiyun 6103*4882a593Smuzhiyun uart2: serial@feb50000 { 6104*4882a593Smuzhiyun compatible = "rockchip,rk3588-uart", "snps,dw-apb-uart"; 6105*4882a593Smuzhiyun reg = <0x0 0xfeb50000 0x0 0x100>; 6106*4882a593Smuzhiyun interrupts = <GIC_SPI 333 IRQ_TYPE_LEVEL_HIGH>; 6107*4882a593Smuzhiyun clocks = <&cru SCLK_UART2>, <&cru PCLK_UART2>; 6108*4882a593Smuzhiyun clock-names = "baudclk", "apb_pclk"; 6109*4882a593Smuzhiyun reg-shift = <2>; 6110*4882a593Smuzhiyun reg-io-width = <4>; 6111*4882a593Smuzhiyun dmas = <&dmac0 10>, <&dmac0 11>; 6112*4882a593Smuzhiyun pinctrl-names = "default"; 6113*4882a593Smuzhiyun pinctrl-0 = <&uart2m1_xfer>; 6114*4882a593Smuzhiyun status = "disabled"; 6115*4882a593Smuzhiyun }; 6116*4882a593Smuzhiyun 6117*4882a593Smuzhiyun uart3: serial@feb60000 { 6118*4882a593Smuzhiyun compatible = "rockchip,rk3588-uart", "snps,dw-apb-uart"; 6119*4882a593Smuzhiyun reg = <0x0 0xfeb60000 0x0 0x100>; 6120*4882a593Smuzhiyun interrupts = <GIC_SPI 334 IRQ_TYPE_LEVEL_HIGH>; 6121*4882a593Smuzhiyun clocks = <&cru SCLK_UART3>, <&cru PCLK_UART3>; 6122*4882a593Smuzhiyun clock-names = "baudclk", "apb_pclk"; 6123*4882a593Smuzhiyun reg-shift = <2>; 6124*4882a593Smuzhiyun reg-io-width = <4>; 6125*4882a593Smuzhiyun dmas = <&dmac0 12>, <&dmac0 13>; 6126*4882a593Smuzhiyun pinctrl-names = "default"; 6127*4882a593Smuzhiyun pinctrl-0 = <&uart3m1_xfer>; 6128*4882a593Smuzhiyun status = "disabled"; 6129*4882a593Smuzhiyun }; 6130*4882a593Smuzhiyun 6131*4882a593Smuzhiyun uart4: serial@feb70000 { 6132*4882a593Smuzhiyun compatible = "rockchip,rk3588-uart", "snps,dw-apb-uart"; 6133*4882a593Smuzhiyun reg = <0x0 0xfeb70000 0x0 0x100>; 6134*4882a593Smuzhiyun interrupts = <GIC_SPI 335 IRQ_TYPE_LEVEL_HIGH>; 6135*4882a593Smuzhiyun clocks = <&cru SCLK_UART4>, <&cru PCLK_UART4>; 6136*4882a593Smuzhiyun clock-names = "baudclk", "apb_pclk"; 6137*4882a593Smuzhiyun reg-shift = <2>; 6138*4882a593Smuzhiyun reg-io-width = <4>; 6139*4882a593Smuzhiyun dmas = <&dmac1 9>, <&dmac1 10>; 6140*4882a593Smuzhiyun pinctrl-names = "default"; 6141*4882a593Smuzhiyun pinctrl-0 = <&uart4m1_xfer>; 6142*4882a593Smuzhiyun status = "disabled"; 6143*4882a593Smuzhiyun }; 6144*4882a593Smuzhiyun 6145*4882a593Smuzhiyun uart5: serial@feb80000 { 6146*4882a593Smuzhiyun compatible = "rockchip,rk3588-uart", "snps,dw-apb-uart"; 6147*4882a593Smuzhiyun reg = <0x0 0xfeb80000 0x0 0x100>; 6148*4882a593Smuzhiyun interrupts = <GIC_SPI 336 IRQ_TYPE_LEVEL_HIGH>; 6149*4882a593Smuzhiyun clocks = <&cru SCLK_UART5>, <&cru PCLK_UART5>; 6150*4882a593Smuzhiyun clock-names = "baudclk", "apb_pclk"; 6151*4882a593Smuzhiyun reg-shift = <2>; 6152*4882a593Smuzhiyun reg-io-width = <4>; 6153*4882a593Smuzhiyun dmas = <&dmac1 11>, <&dmac1 12>; 6154*4882a593Smuzhiyun pinctrl-names = "default"; 6155*4882a593Smuzhiyun pinctrl-0 = <&uart5m1_xfer>; 6156*4882a593Smuzhiyun status = "disabled"; 6157*4882a593Smuzhiyun }; 6158*4882a593Smuzhiyun 6159*4882a593Smuzhiyun uart6: serial@feb90000 { 6160*4882a593Smuzhiyun compatible = "rockchip,rk3588-uart", "snps,dw-apb-uart"; 6161*4882a593Smuzhiyun reg = <0x0 0xfeb90000 0x0 0x100>; 6162*4882a593Smuzhiyun interrupts = <GIC_SPI 337 IRQ_TYPE_LEVEL_HIGH>; 6163*4882a593Smuzhiyun clocks = <&cru SCLK_UART6>, <&cru PCLK_UART6>; 6164*4882a593Smuzhiyun clock-names = "baudclk", "apb_pclk"; 6165*4882a593Smuzhiyun reg-shift = <2>; 6166*4882a593Smuzhiyun reg-io-width = <4>; 6167*4882a593Smuzhiyun dmas = <&dmac1 13>, <&dmac1 14>; 6168*4882a593Smuzhiyun pinctrl-names = "default"; 6169*4882a593Smuzhiyun pinctrl-0 = <&uart6m1_xfer>; 6170*4882a593Smuzhiyun status = "disabled"; 6171*4882a593Smuzhiyun }; 6172*4882a593Smuzhiyun 6173*4882a593Smuzhiyun uart7: serial@feba0000 { 6174*4882a593Smuzhiyun compatible = "rockchip,rk3588-uart", "snps,dw-apb-uart"; 6175*4882a593Smuzhiyun reg = <0x0 0xfeba0000 0x0 0x100>; 6176*4882a593Smuzhiyun interrupts = <GIC_SPI 338 IRQ_TYPE_LEVEL_HIGH>; 6177*4882a593Smuzhiyun clocks = <&cru SCLK_UART7>, <&cru PCLK_UART7>; 6178*4882a593Smuzhiyun clock-names = "baudclk", "apb_pclk"; 6179*4882a593Smuzhiyun reg-shift = <2>; 6180*4882a593Smuzhiyun reg-io-width = <4>; 6181*4882a593Smuzhiyun dmas = <&dmac2 7>, <&dmac2 8>; 6182*4882a593Smuzhiyun pinctrl-names = "default"; 6183*4882a593Smuzhiyun pinctrl-0 = <&uart7m1_xfer>; 6184*4882a593Smuzhiyun status = "disabled"; 6185*4882a593Smuzhiyun }; 6186*4882a593Smuzhiyun 6187*4882a593Smuzhiyun uart8: serial@febb0000 { 6188*4882a593Smuzhiyun compatible = "rockchip,rk3588-uart", "snps,dw-apb-uart"; 6189*4882a593Smuzhiyun reg = <0x0 0xfebb0000 0x0 0x100>; 6190*4882a593Smuzhiyun interrupts = <GIC_SPI 339 IRQ_TYPE_LEVEL_HIGH>; 6191*4882a593Smuzhiyun clocks = <&cru SCLK_UART8>, <&cru PCLK_UART8>; 6192*4882a593Smuzhiyun clock-names = "baudclk", "apb_pclk"; 6193*4882a593Smuzhiyun reg-shift = <2>; 6194*4882a593Smuzhiyun reg-io-width = <4>; 6195*4882a593Smuzhiyun dmas = <&dmac2 9>, <&dmac2 10>; 6196*4882a593Smuzhiyun pinctrl-names = "default"; 6197*4882a593Smuzhiyun pinctrl-0 = <&uart8m1_xfer>; 6198*4882a593Smuzhiyun status = "disabled"; 6199*4882a593Smuzhiyun }; 6200*4882a593Smuzhiyun 6201*4882a593Smuzhiyun uart9: serial@febc0000 { 6202*4882a593Smuzhiyun compatible = "rockchip,rk3588-uart", "snps,dw-apb-uart"; 6203*4882a593Smuzhiyun reg = <0x0 0xfebc0000 0x0 0x100>; 6204*4882a593Smuzhiyun interrupts = <GIC_SPI 340 IRQ_TYPE_LEVEL_HIGH>; 6205*4882a593Smuzhiyun clocks = <&cru SCLK_UART9>, <&cru PCLK_UART9>; 6206*4882a593Smuzhiyun clock-names = "baudclk", "apb_pclk"; 6207*4882a593Smuzhiyun reg-shift = <2>; 6208*4882a593Smuzhiyun reg-io-width = <4>; 6209*4882a593Smuzhiyun dmas = <&dmac2 11>, <&dmac2 12>; 6210*4882a593Smuzhiyun pinctrl-names = "default"; 6211*4882a593Smuzhiyun pinctrl-0 = <&uart9m1_xfer>; 6212*4882a593Smuzhiyun status = "disabled"; 6213*4882a593Smuzhiyun }; 6214*4882a593Smuzhiyun 6215*4882a593Smuzhiyun pwm4: pwm@febd0000 { 6216*4882a593Smuzhiyun compatible = "rockchip,rk3588-pwm", "rockchip,rk3328-pwm"; 6217*4882a593Smuzhiyun reg = <0x0 0xfebd0000 0x0 0x10>; 6218*4882a593Smuzhiyun interrupts = <GIC_SPI 346 IRQ_TYPE_LEVEL_HIGH>; 6219*4882a593Smuzhiyun #pwm-cells = <3>; 6220*4882a593Smuzhiyun pinctrl-names = "active"; 6221*4882a593Smuzhiyun pinctrl-0 = <&pwm4m0_pins>; 6222*4882a593Smuzhiyun clocks = <&cru CLK_PWM1>, <&cru PCLK_PWM1>; 6223*4882a593Smuzhiyun clock-names = "pwm", "pclk"; 6224*4882a593Smuzhiyun status = "disabled"; 6225*4882a593Smuzhiyun }; 6226*4882a593Smuzhiyun 6227*4882a593Smuzhiyun pwm5: pwm@febd0010 { 6228*4882a593Smuzhiyun compatible = "rockchip,rk3588-pwm", "rockchip,rk3328-pwm"; 6229*4882a593Smuzhiyun reg = <0x0 0xfebd0010 0x0 0x10>; 6230*4882a593Smuzhiyun interrupts = <GIC_SPI 346 IRQ_TYPE_LEVEL_HIGH>; 6231*4882a593Smuzhiyun #pwm-cells = <3>; 6232*4882a593Smuzhiyun pinctrl-names = "active"; 6233*4882a593Smuzhiyun pinctrl-0 = <&pwm5m0_pins>; 6234*4882a593Smuzhiyun clocks = <&cru CLK_PWM1>, <&cru PCLK_PWM1>; 6235*4882a593Smuzhiyun clock-names = "pwm", "pclk"; 6236*4882a593Smuzhiyun status = "disabled"; 6237*4882a593Smuzhiyun }; 6238*4882a593Smuzhiyun 6239*4882a593Smuzhiyun pwm6: pwm@febd0020 { 6240*4882a593Smuzhiyun compatible = "rockchip,rk3588-pwm", "rockchip,rk3328-pwm"; 6241*4882a593Smuzhiyun reg = <0x0 0xfebd0020 0x0 0x10>; 6242*4882a593Smuzhiyun interrupts = <GIC_SPI 346 IRQ_TYPE_LEVEL_HIGH>; 6243*4882a593Smuzhiyun #pwm-cells = <3>; 6244*4882a593Smuzhiyun pinctrl-names = "active"; 6245*4882a593Smuzhiyun pinctrl-0 = <&pwm6m0_pins>; 6246*4882a593Smuzhiyun clocks = <&cru CLK_PWM1>, <&cru PCLK_PWM1>; 6247*4882a593Smuzhiyun clock-names = "pwm", "pclk"; 6248*4882a593Smuzhiyun status = "disabled"; 6249*4882a593Smuzhiyun }; 6250*4882a593Smuzhiyun 6251*4882a593Smuzhiyun pwm7: pwm@febd0030 { 6252*4882a593Smuzhiyun compatible = "rockchip,rk3588-pwm", "rockchip,rk3328-pwm"; 6253*4882a593Smuzhiyun reg = <0x0 0xfebd0030 0x0 0x10>; 6254*4882a593Smuzhiyun interrupts = <GIC_SPI 346 IRQ_TYPE_LEVEL_HIGH>, 6255*4882a593Smuzhiyun <GIC_SPI 347 IRQ_TYPE_LEVEL_HIGH>; 6256*4882a593Smuzhiyun #pwm-cells = <3>; 6257*4882a593Smuzhiyun pinctrl-names = "active"; 6258*4882a593Smuzhiyun pinctrl-0 = <&pwm7m0_pins>; 6259*4882a593Smuzhiyun clocks = <&cru CLK_PWM1>, <&cru PCLK_PWM1>; 6260*4882a593Smuzhiyun clock-names = "pwm", "pclk"; 6261*4882a593Smuzhiyun status = "disabled"; 6262*4882a593Smuzhiyun }; 6263*4882a593Smuzhiyun 6264*4882a593Smuzhiyun pwm8: pwm@febe0000 { 6265*4882a593Smuzhiyun compatible = "rockchip,rk3588-pwm", "rockchip,rk3328-pwm"; 6266*4882a593Smuzhiyun reg = <0x0 0xfebe0000 0x0 0x10>; 6267*4882a593Smuzhiyun interrupts = <GIC_SPI 348 IRQ_TYPE_LEVEL_HIGH>; 6268*4882a593Smuzhiyun #pwm-cells = <3>; 6269*4882a593Smuzhiyun pinctrl-names = "active"; 6270*4882a593Smuzhiyun pinctrl-0 = <&pwm8m0_pins>; 6271*4882a593Smuzhiyun clocks = <&cru CLK_PWM2>, <&cru PCLK_PWM2>; 6272*4882a593Smuzhiyun clock-names = "pwm", "pclk"; 6273*4882a593Smuzhiyun status = "disabled"; 6274*4882a593Smuzhiyun }; 6275*4882a593Smuzhiyun 6276*4882a593Smuzhiyun pwm9: pwm@febe0010 { 6277*4882a593Smuzhiyun compatible = "rockchip,rk3588-pwm", "rockchip,rk3328-pwm"; 6278*4882a593Smuzhiyun reg = <0x0 0xfebe0010 0x0 0x10>; 6279*4882a593Smuzhiyun interrupts = <GIC_SPI 348 IRQ_TYPE_LEVEL_HIGH>; 6280*4882a593Smuzhiyun #pwm-cells = <3>; 6281*4882a593Smuzhiyun pinctrl-names = "active"; 6282*4882a593Smuzhiyun pinctrl-0 = <&pwm9m0_pins>; 6283*4882a593Smuzhiyun clocks = <&cru CLK_PWM2>, <&cru PCLK_PWM2>; 6284*4882a593Smuzhiyun clock-names = "pwm", "pclk"; 6285*4882a593Smuzhiyun status = "disabled"; 6286*4882a593Smuzhiyun }; 6287*4882a593Smuzhiyun 6288*4882a593Smuzhiyun pwm10: pwm@febe0020 { 6289*4882a593Smuzhiyun compatible = "rockchip,rk3588-pwm", "rockchip,rk3328-pwm"; 6290*4882a593Smuzhiyun reg = <0x0 0xfebe0020 0x0 0x10>; 6291*4882a593Smuzhiyun interrupts = <GIC_SPI 348 IRQ_TYPE_LEVEL_HIGH>; 6292*4882a593Smuzhiyun #pwm-cells = <3>; 6293*4882a593Smuzhiyun pinctrl-names = "active"; 6294*4882a593Smuzhiyun pinctrl-0 = <&pwm10m0_pins>; 6295*4882a593Smuzhiyun clocks = <&cru CLK_PWM2>, <&cru PCLK_PWM2>; 6296*4882a593Smuzhiyun clock-names = "pwm", "pclk"; 6297*4882a593Smuzhiyun status = "disabled"; 6298*4882a593Smuzhiyun }; 6299*4882a593Smuzhiyun 6300*4882a593Smuzhiyun pwm11: pwm@febe0030 { 6301*4882a593Smuzhiyun compatible = "rockchip,rk3588-pwm", "rockchip,rk3328-pwm"; 6302*4882a593Smuzhiyun reg = <0x0 0xfebe0030 0x0 0x10>; 6303*4882a593Smuzhiyun interrupts = <GIC_SPI 348 IRQ_TYPE_LEVEL_HIGH>, 6304*4882a593Smuzhiyun <GIC_SPI 349 IRQ_TYPE_LEVEL_HIGH>; 6305*4882a593Smuzhiyun #pwm-cells = <3>; 6306*4882a593Smuzhiyun pinctrl-names = "active"; 6307*4882a593Smuzhiyun pinctrl-0 = <&pwm11m0_pins>; 6308*4882a593Smuzhiyun clocks = <&cru CLK_PWM2>, <&cru PCLK_PWM2>; 6309*4882a593Smuzhiyun clock-names = "pwm", "pclk"; 6310*4882a593Smuzhiyun status = "disabled"; 6311*4882a593Smuzhiyun }; 6312*4882a593Smuzhiyun 6313*4882a593Smuzhiyun pwm12: pwm@febf0000 { 6314*4882a593Smuzhiyun compatible = "rockchip,rk3588-pwm", "rockchip,rk3328-pwm"; 6315*4882a593Smuzhiyun reg = <0x0 0xfebf0000 0x0 0x10>; 6316*4882a593Smuzhiyun interrupts = <GIC_SPI 350 IRQ_TYPE_LEVEL_HIGH>; 6317*4882a593Smuzhiyun #pwm-cells = <3>; 6318*4882a593Smuzhiyun pinctrl-names = "active"; 6319*4882a593Smuzhiyun pinctrl-0 = <&pwm12m0_pins>; 6320*4882a593Smuzhiyun clocks = <&cru CLK_PWM3>, <&cru PCLK_PWM3>; 6321*4882a593Smuzhiyun clock-names = "pwm", "pclk"; 6322*4882a593Smuzhiyun status = "disabled"; 6323*4882a593Smuzhiyun }; 6324*4882a593Smuzhiyun 6325*4882a593Smuzhiyun pwm13: pwm@febf0010 { 6326*4882a593Smuzhiyun compatible = "rockchip,rk3588-pwm", "rockchip,rk3328-pwm"; 6327*4882a593Smuzhiyun reg = <0x0 0xfebf0010 0x0 0x10>; 6328*4882a593Smuzhiyun interrupts = <GIC_SPI 350 IRQ_TYPE_LEVEL_HIGH>; 6329*4882a593Smuzhiyun #pwm-cells = <3>; 6330*4882a593Smuzhiyun pinctrl-names = "active"; 6331*4882a593Smuzhiyun pinctrl-0 = <&pwm13m0_pins>; 6332*4882a593Smuzhiyun clocks = <&cru CLK_PWM3>, <&cru PCLK_PWM3>; 6333*4882a593Smuzhiyun clock-names = "pwm", "pclk"; 6334*4882a593Smuzhiyun status = "disabled"; 6335*4882a593Smuzhiyun }; 6336*4882a593Smuzhiyun 6337*4882a593Smuzhiyun pwm14: pwm@febf0020 { 6338*4882a593Smuzhiyun compatible = "rockchip,rk3588-pwm", "rockchip,rk3328-pwm"; 6339*4882a593Smuzhiyun reg = <0x0 0xfebf0020 0x0 0x10>; 6340*4882a593Smuzhiyun interrupts = <GIC_SPI 350 IRQ_TYPE_LEVEL_HIGH>; 6341*4882a593Smuzhiyun #pwm-cells = <3>; 6342*4882a593Smuzhiyun pinctrl-names = "active"; 6343*4882a593Smuzhiyun pinctrl-0 = <&pwm14m0_pins>; 6344*4882a593Smuzhiyun clocks = <&cru CLK_PWM3>, <&cru PCLK_PWM3>; 6345*4882a593Smuzhiyun clock-names = "pwm", "pclk"; 6346*4882a593Smuzhiyun status = "disabled"; 6347*4882a593Smuzhiyun }; 6348*4882a593Smuzhiyun 6349*4882a593Smuzhiyun pwm15: pwm@febf0030 { 6350*4882a593Smuzhiyun compatible = "rockchip,rk3588-pwm", "rockchip,rk3328-pwm"; 6351*4882a593Smuzhiyun reg = <0x0 0xfebf0030 0x0 0x10>; 6352*4882a593Smuzhiyun interrupts = <GIC_SPI 350 IRQ_TYPE_LEVEL_HIGH>, 6353*4882a593Smuzhiyun <GIC_SPI 351 IRQ_TYPE_LEVEL_HIGH>; 6354*4882a593Smuzhiyun #pwm-cells = <3>; 6355*4882a593Smuzhiyun pinctrl-names = "active"; 6356*4882a593Smuzhiyun pinctrl-0 = <&pwm15m0_pins>; 6357*4882a593Smuzhiyun clocks = <&cru CLK_PWM3>, <&cru PCLK_PWM3>; 6358*4882a593Smuzhiyun clock-names = "pwm", "pclk"; 6359*4882a593Smuzhiyun status = "disabled"; 6360*4882a593Smuzhiyun }; 6361*4882a593Smuzhiyun 6362*4882a593Smuzhiyun tsadc: tsadc@fec00000 { 6363*4882a593Smuzhiyun compatible = "rockchip,rk3588-tsadc"; 6364*4882a593Smuzhiyun reg = <0x0 0xfec00000 0x0 0x400>; 6365*4882a593Smuzhiyun interrupts = <GIC_SPI 397 IRQ_TYPE_LEVEL_HIGH>; 6366*4882a593Smuzhiyun clocks = <&cru CLK_TSADC>, <&cru PCLK_TSADC>; 6367*4882a593Smuzhiyun clock-names = "tsadc", "apb_pclk"; 6368*4882a593Smuzhiyun assigned-clocks = <&cru CLK_TSADC>; 6369*4882a593Smuzhiyun assigned-clock-rates = <2000000>; 6370*4882a593Smuzhiyun resets = <&cru SRST_TSADC>, <&cru SRST_P_TSADC>; 6371*4882a593Smuzhiyun reset-names = "tsadc", "tsadc-apb"; 6372*4882a593Smuzhiyun #thermal-sensor-cells = <1>; 6373*4882a593Smuzhiyun rockchip,hw-tshut-temp = <120000>; 6374*4882a593Smuzhiyun rockchip,hw-tshut-mode = <0>; /* tshut mode 0:CRU 1:GPIO */ 6375*4882a593Smuzhiyun rockchip,hw-tshut-polarity = <0>; /* tshut polarity 0:LOW 1:HIGH */ 6376*4882a593Smuzhiyun pinctrl-names = "gpio", "otpout"; 6377*4882a593Smuzhiyun pinctrl-0 = <&tsadc_gpio_func>; 6378*4882a593Smuzhiyun pinctrl-1 = <&tsadc_shut>; 6379*4882a593Smuzhiyun status = "disabled"; 6380*4882a593Smuzhiyun }; 6381*4882a593Smuzhiyun 6382*4882a593Smuzhiyun saradc: saradc@fec10000 { 6383*4882a593Smuzhiyun compatible = "rockchip,rk3588-saradc"; 6384*4882a593Smuzhiyun reg = <0x0 0xfec10000 0x0 0x10000>; 6385*4882a593Smuzhiyun interrupts = <GIC_SPI 398 IRQ_TYPE_LEVEL_HIGH>; 6386*4882a593Smuzhiyun #io-channel-cells = <1>; 6387*4882a593Smuzhiyun clocks = <&cru CLK_SARADC>, <&cru PCLK_SARADC>; 6388*4882a593Smuzhiyun clock-names = "saradc", "apb_pclk"; 6389*4882a593Smuzhiyun resets = <&cru SRST_P_SARADC>; 6390*4882a593Smuzhiyun reset-names = "saradc-apb"; 6391*4882a593Smuzhiyun status = "disabled"; 6392*4882a593Smuzhiyun }; 6393*4882a593Smuzhiyun 6394*4882a593Smuzhiyun mailbox0: mailbox@fec60000 { 6395*4882a593Smuzhiyun compatible = "rockchip,rk3588-mailbox", 6396*4882a593Smuzhiyun "rockchip,rk3368-mailbox"; 6397*4882a593Smuzhiyun reg = <0x0 0xfec60000 0x0 0x200>; 6398*4882a593Smuzhiyun interrupts = <GIC_SPI 61 IRQ_TYPE_LEVEL_HIGH>, 6399*4882a593Smuzhiyun <GIC_SPI 62 IRQ_TYPE_LEVEL_HIGH>, 6400*4882a593Smuzhiyun <GIC_SPI 63 IRQ_TYPE_LEVEL_HIGH>, 6401*4882a593Smuzhiyun <GIC_SPI 64 IRQ_TYPE_LEVEL_HIGH>; 6402*4882a593Smuzhiyun clocks = <&cru PCLK_MAILBOX0>; 6403*4882a593Smuzhiyun clock-names = "pclk_mailbox"; 6404*4882a593Smuzhiyun #mbox-cells = <1>; 6405*4882a593Smuzhiyun status = "disabled"; 6406*4882a593Smuzhiyun }; 6407*4882a593Smuzhiyun 6408*4882a593Smuzhiyun mailbox1: mailbox@fec70000 { 6409*4882a593Smuzhiyun compatible = "rockchip,rk3588-mailbox", 6410*4882a593Smuzhiyun "rockchip,rk3368-mailbox"; 6411*4882a593Smuzhiyun reg = <0x0 0xfec70000 0x0 0x200>; 6412*4882a593Smuzhiyun interrupts = <GIC_SPI 69 IRQ_TYPE_LEVEL_HIGH>, 6413*4882a593Smuzhiyun <GIC_SPI 70 IRQ_TYPE_LEVEL_HIGH>, 6414*4882a593Smuzhiyun <GIC_SPI 71 IRQ_TYPE_LEVEL_HIGH>, 6415*4882a593Smuzhiyun <GIC_SPI 72 IRQ_TYPE_LEVEL_HIGH>; 6416*4882a593Smuzhiyun clocks = <&cru PCLK_MAILBOX1>; 6417*4882a593Smuzhiyun clock-names = "pclk_mailbox"; 6418*4882a593Smuzhiyun #mbox-cells = <1>; 6419*4882a593Smuzhiyun status = "disabled"; 6420*4882a593Smuzhiyun }; 6421*4882a593Smuzhiyun 6422*4882a593Smuzhiyun i2c6: i2c@fec80000 { 6423*4882a593Smuzhiyun compatible = "rockchip,rk3588-i2c", "rockchip,rk3399-i2c"; 6424*4882a593Smuzhiyun reg = <0x0 0xfec80000 0x0 0x1000>; 6425*4882a593Smuzhiyun clocks = <&cru CLK_I2C6>, <&cru PCLK_I2C6>; 6426*4882a593Smuzhiyun clock-names = "i2c", "pclk"; 6427*4882a593Smuzhiyun interrupts = <GIC_SPI 323 IRQ_TYPE_LEVEL_HIGH>; 6428*4882a593Smuzhiyun pinctrl-names = "default"; 6429*4882a593Smuzhiyun pinctrl-0 = <&i2c6m0_xfer>; 6430*4882a593Smuzhiyun #address-cells = <1>; 6431*4882a593Smuzhiyun #size-cells = <0>; 6432*4882a593Smuzhiyun status = "disabled"; 6433*4882a593Smuzhiyun }; 6434*4882a593Smuzhiyun 6435*4882a593Smuzhiyun i2c7: i2c@fec90000 { 6436*4882a593Smuzhiyun compatible = "rockchip,rk3588-i2c", "rockchip,rk3399-i2c"; 6437*4882a593Smuzhiyun reg = <0x0 0xfec90000 0x0 0x1000>; 6438*4882a593Smuzhiyun clocks = <&cru CLK_I2C7>, <&cru PCLK_I2C7>; 6439*4882a593Smuzhiyun clock-names = "i2c", "pclk"; 6440*4882a593Smuzhiyun interrupts = <GIC_SPI 324 IRQ_TYPE_LEVEL_HIGH>; 6441*4882a593Smuzhiyun pinctrl-names = "default"; 6442*4882a593Smuzhiyun pinctrl-0 = <&i2c7m0_xfer>; 6443*4882a593Smuzhiyun #address-cells = <1>; 6444*4882a593Smuzhiyun #size-cells = <0>; 6445*4882a593Smuzhiyun status = "disabled"; 6446*4882a593Smuzhiyun }; 6447*4882a593Smuzhiyun 6448*4882a593Smuzhiyun i2c8: i2c@feca0000 { 6449*4882a593Smuzhiyun compatible = "rockchip,rk3588-i2c", "rockchip,rk3399-i2c"; 6450*4882a593Smuzhiyun reg = <0x0 0xfeca0000 0x0 0x1000>; 6451*4882a593Smuzhiyun clocks = <&cru CLK_I2C8>, <&cru PCLK_I2C8>; 6452*4882a593Smuzhiyun clock-names = "i2c", "pclk"; 6453*4882a593Smuzhiyun interrupts = <GIC_SPI 325 IRQ_TYPE_LEVEL_HIGH>; 6454*4882a593Smuzhiyun pinctrl-names = "default"; 6455*4882a593Smuzhiyun pinctrl-0 = <&i2c8m0_xfer>; 6456*4882a593Smuzhiyun #address-cells = <1>; 6457*4882a593Smuzhiyun #size-cells = <0>; 6458*4882a593Smuzhiyun status = "disabled"; 6459*4882a593Smuzhiyun }; 6460*4882a593Smuzhiyun 6461*4882a593Smuzhiyun spi4: spi@fecb0000 { 6462*4882a593Smuzhiyun compatible = "rockchip,rk3066-spi"; 6463*4882a593Smuzhiyun reg = <0x0 0xfecb0000 0x0 0x1000>; 6464*4882a593Smuzhiyun interrupts = <GIC_SPI 330 IRQ_TYPE_LEVEL_HIGH>; 6465*4882a593Smuzhiyun #address-cells = <1>; 6466*4882a593Smuzhiyun #size-cells = <0>; 6467*4882a593Smuzhiyun clocks = <&cru CLK_SPI4>, <&cru PCLK_SPI4>; 6468*4882a593Smuzhiyun clock-names = "spiclk", "apb_pclk"; 6469*4882a593Smuzhiyun dmas = <&dmac2 13>, <&dmac2 14>; 6470*4882a593Smuzhiyun dma-names = "tx", "rx"; 6471*4882a593Smuzhiyun pinctrl-names = "default"; 6472*4882a593Smuzhiyun pinctrl-0 = <&spi4m0_cs0 &spi4m0_cs1 &spi4m0_pins>; 6473*4882a593Smuzhiyun num-cs = <2>; 6474*4882a593Smuzhiyun status = "disabled"; 6475*4882a593Smuzhiyun }; 6476*4882a593Smuzhiyun 6477*4882a593Smuzhiyun otp: otp@fecc0000 { 6478*4882a593Smuzhiyun compatible = "rockchip,rk3588-otp"; 6479*4882a593Smuzhiyun reg = <0x0 0xfecc0000 0x0 0x400>; 6480*4882a593Smuzhiyun #address-cells = <1>; 6481*4882a593Smuzhiyun #size-cells = <1>; 6482*4882a593Smuzhiyun clocks = <&cru CLK_OTPC_NS>, <&cru PCLK_OTPC_NS>, 6483*4882a593Smuzhiyun <&cru CLK_OTPC_ARB>, <&cru CLK_OTP_PHY_G>; 6484*4882a593Smuzhiyun clock-names = "otpc", "apb", "arb", "phy"; 6485*4882a593Smuzhiyun resets = <&cru SRST_OTPC_NS>, <&cru SRST_P_OTPC_NS>, 6486*4882a593Smuzhiyun <&cru SRST_OTPC_ARB>; 6487*4882a593Smuzhiyun reset-names = "otpc", "apb", "arb"; 6488*4882a593Smuzhiyun 6489*4882a593Smuzhiyun /* Data cells */ 6490*4882a593Smuzhiyun cpu_code: cpu-code@2 { 6491*4882a593Smuzhiyun reg = <0x02 0x2>; 6492*4882a593Smuzhiyun }; 6493*4882a593Smuzhiyun package_serial_number_high: package-serial-number-high@5 { 6494*4882a593Smuzhiyun reg = <0x05 0x1>; 6495*4882a593Smuzhiyun bits = <0 1>; 6496*4882a593Smuzhiyun }; 6497*4882a593Smuzhiyun package_serial_number_low: package-serial-number-low@6 { 6498*4882a593Smuzhiyun reg = <0x06 0x1>; 6499*4882a593Smuzhiyun bits = <5 3>; 6500*4882a593Smuzhiyun }; 6501*4882a593Smuzhiyun specification_serial_number: specification-serial-number@6 { 6502*4882a593Smuzhiyun reg = <0x06 0x1>; 6503*4882a593Smuzhiyun bits = <0 5>; 6504*4882a593Smuzhiyun }; 6505*4882a593Smuzhiyun otp_id: id@7 { 6506*4882a593Smuzhiyun reg = <0x07 0x10>; 6507*4882a593Smuzhiyun }; 6508*4882a593Smuzhiyun otp_cpu_version: cpu-version@1c { 6509*4882a593Smuzhiyun reg = <0x1c 0x1>; 6510*4882a593Smuzhiyun bits = <3 3>; 6511*4882a593Smuzhiyun }; 6512*4882a593Smuzhiyun cpub0_leakage: cpub0-leakage@17 { 6513*4882a593Smuzhiyun reg = <0x17 0x1>; 6514*4882a593Smuzhiyun }; 6515*4882a593Smuzhiyun cpub1_leakage: cpub1-leakage@18 { 6516*4882a593Smuzhiyun reg = <0x18 0x1>; 6517*4882a593Smuzhiyun }; 6518*4882a593Smuzhiyun cpul_leakage: cpul-leakage@19 { 6519*4882a593Smuzhiyun reg = <0x19 0x1>; 6520*4882a593Smuzhiyun }; 6521*4882a593Smuzhiyun log_leakage: log-leakage@1a { 6522*4882a593Smuzhiyun reg = <0x1a 0x1>; 6523*4882a593Smuzhiyun }; 6524*4882a593Smuzhiyun gpu_leakage: gpu-leakage@1b { 6525*4882a593Smuzhiyun reg = <0x1b 0x1>; 6526*4882a593Smuzhiyun }; 6527*4882a593Smuzhiyun npu_leakage: npu-leakage@28 { 6528*4882a593Smuzhiyun reg = <0x28 0x1>; 6529*4882a593Smuzhiyun }; 6530*4882a593Smuzhiyun codec_leakage: codec-leakage@29 { 6531*4882a593Smuzhiyun reg = <0x29 0x1>; 6532*4882a593Smuzhiyun }; 6533*4882a593Smuzhiyun cpul_opp_info: cpul-opp-info@3d { 6534*4882a593Smuzhiyun reg = <0x3d 0x6>; 6535*4882a593Smuzhiyun }; 6536*4882a593Smuzhiyun cpub01_opp_info: cpub01-opp-info@43 { 6537*4882a593Smuzhiyun reg = <0x43 0x6>; 6538*4882a593Smuzhiyun }; 6539*4882a593Smuzhiyun cpub23_opp_info: cpub23-opp-info@49 { 6540*4882a593Smuzhiyun reg = <0x49 0x6>; 6541*4882a593Smuzhiyun }; 6542*4882a593Smuzhiyun gpu_opp_info: gpu-opp-info@4f { 6543*4882a593Smuzhiyun reg = <0x4f 0x6>; 6544*4882a593Smuzhiyun }; 6545*4882a593Smuzhiyun npu_opp_info: npu-opp-info@55 { 6546*4882a593Smuzhiyun reg = <0x55 0x6>; 6547*4882a593Smuzhiyun }; 6548*4882a593Smuzhiyun dmc_opp_info: dmc-opp-info@5b { 6549*4882a593Smuzhiyun reg = <0x5b 0x6>; 6550*4882a593Smuzhiyun }; 6551*4882a593Smuzhiyun vop_opp_info: vop-opp-info@61 { 6552*4882a593Smuzhiyun reg = <0x61 0x6>; 6553*4882a593Smuzhiyun }; 6554*4882a593Smuzhiyun venc_opp_info: venc-opp-info@67 { 6555*4882a593Smuzhiyun reg = <0x67 0x6>; 6556*4882a593Smuzhiyun }; 6557*4882a593Smuzhiyun }; 6558*4882a593Smuzhiyun 6559*4882a593Smuzhiyun mailbox2: mailbox@fece0000 { 6560*4882a593Smuzhiyun compatible = "rockchip,rk3588-mailbox", 6561*4882a593Smuzhiyun "rockchip,rk3368-mailbox"; 6562*4882a593Smuzhiyun reg = <0x0 0xfece0000 0x0 0x200>; 6563*4882a593Smuzhiyun interrupts = <GIC_SPI 77 IRQ_TYPE_LEVEL_HIGH>, 6564*4882a593Smuzhiyun <GIC_SPI 78 IRQ_TYPE_LEVEL_HIGH>, 6565*4882a593Smuzhiyun <GIC_SPI 79 IRQ_TYPE_LEVEL_HIGH>, 6566*4882a593Smuzhiyun <GIC_SPI 80 IRQ_TYPE_LEVEL_HIGH>; 6567*4882a593Smuzhiyun clocks = <&cru PCLK_MAILBOX2>; 6568*4882a593Smuzhiyun clock-names = "pclk_mailbox"; 6569*4882a593Smuzhiyun #mbox-cells = <1>; 6570*4882a593Smuzhiyun status = "disabled"; 6571*4882a593Smuzhiyun }; 6572*4882a593Smuzhiyun 6573*4882a593Smuzhiyun dmac2: dma-controller@fed10000 { 6574*4882a593Smuzhiyun compatible = "arm,pl330", "arm,primecell"; 6575*4882a593Smuzhiyun reg = <0x0 0xfed10000 0x0 0x4000>; 6576*4882a593Smuzhiyun interrupts = <GIC_SPI 90 IRQ_TYPE_LEVEL_HIGH>, 6577*4882a593Smuzhiyun <GIC_SPI 91 IRQ_TYPE_LEVEL_HIGH>; 6578*4882a593Smuzhiyun clocks = <&cru ACLK_DMAC2>; 6579*4882a593Smuzhiyun clock-names = "apb_pclk"; 6580*4882a593Smuzhiyun #dma-cells = <1>; 6581*4882a593Smuzhiyun arm,pl330-periph-burst; 6582*4882a593Smuzhiyun }; 6583*4882a593Smuzhiyun 6584*4882a593Smuzhiyun hdptxphy0: phy@fed60000 { 6585*4882a593Smuzhiyun compatible = "rockchip,rk3588-hdptx-phy"; 6586*4882a593Smuzhiyun reg = <0x0 0xfed60000 0x0 0x2000>; 6587*4882a593Smuzhiyun clocks = <&cru CLK_USB2PHY_HDPTXRXPHY_REF>, <&cru PCLK_HDPTX0>; 6588*4882a593Smuzhiyun clock-names = "ref", "apb"; 6589*4882a593Smuzhiyun resets = <&cru SRST_P_HDPTX0>, <&cru SRST_HDPTX0_INIT>, 6590*4882a593Smuzhiyun <&cru SRST_HDPTX0_CMN>, <&cru SRST_HDPTX0_LANE>; 6591*4882a593Smuzhiyun reset-names = "apb", "init", "cmn", "lane"; 6592*4882a593Smuzhiyun rockchip,grf = <&hdptxphy0_grf>; 6593*4882a593Smuzhiyun #phy-cells = <0>; 6594*4882a593Smuzhiyun status = "disabled"; 6595*4882a593Smuzhiyun }; 6596*4882a593Smuzhiyun 6597*4882a593Smuzhiyun hdptxphy_hdmi0: hdmiphy@fed60000 { 6598*4882a593Smuzhiyun compatible = "rockchip,rk3588-hdptx-phy-hdmi"; 6599*4882a593Smuzhiyun reg = <0x0 0xfed60000 0x0 0x2000>; 6600*4882a593Smuzhiyun clocks = <&cru CLK_USB2PHY_HDPTXRXPHY_REF>, <&cru PCLK_HDPTX0>; 6601*4882a593Smuzhiyun clock-names = "ref", "apb"; 6602*4882a593Smuzhiyun resets = <&cru SRST_HDPTX0>, <&cru SRST_P_HDPTX0>, 6603*4882a593Smuzhiyun <&cru SRST_HDPTX0_INIT>, <&cru SRST_HDPTX0_CMN>, 6604*4882a593Smuzhiyun <&cru SRST_HDPTX0_LANE>, <&cru SRST_HDPTX0_ROPLL>, 6605*4882a593Smuzhiyun <&cru SRST_HDPTX0_LCPLL>; 6606*4882a593Smuzhiyun reset-names = "phy", "apb", "init", "cmn", "lane", "ropll", 6607*4882a593Smuzhiyun "lcpll"; 6608*4882a593Smuzhiyun rockchip,grf = <&hdptxphy0_grf>; 6609*4882a593Smuzhiyun #phy-cells = <0>; 6610*4882a593Smuzhiyun status = "disabled"; 6611*4882a593Smuzhiyun 6612*4882a593Smuzhiyun hdptxphy_hdmi_clk0: clk-port { 6613*4882a593Smuzhiyun #clock-cells = <0>; 6614*4882a593Smuzhiyun status = "okay"; 6615*4882a593Smuzhiyun }; 6616*4882a593Smuzhiyun }; 6617*4882a593Smuzhiyun 6618*4882a593Smuzhiyun usbdp_phy0: phy@fed80000 { 6619*4882a593Smuzhiyun compatible = "rockchip,rk3588-usbdp-phy"; 6620*4882a593Smuzhiyun reg = <0x0 0xfed80000 0x0 0x10000>; 6621*4882a593Smuzhiyun rockchip,u2phy-grf = <&usb2phy0_grf>; 6622*4882a593Smuzhiyun rockchip,usb-grf = <&usb_grf>; 6623*4882a593Smuzhiyun rockchip,usbdpphy-grf = <&usbdpphy0_grf>; 6624*4882a593Smuzhiyun rockchip,vo-grf = <&vo0_grf>; 6625*4882a593Smuzhiyun clocks = <&cru CLK_USBDPPHY_MIPIDCPPHY_REF>, 6626*4882a593Smuzhiyun <&cru CLK_USBDP_PHY0_IMMORTAL>, 6627*4882a593Smuzhiyun <&cru PCLK_USBDPPHY0>, 6628*4882a593Smuzhiyun <&u2phy0>; 6629*4882a593Smuzhiyun clock-names = "refclk", "immortal", "pclk", "utmi"; 6630*4882a593Smuzhiyun resets = <&cru SRST_USBDP_COMBO_PHY0_INIT>, 6631*4882a593Smuzhiyun <&cru SRST_USBDP_COMBO_PHY0_CMN>, 6632*4882a593Smuzhiyun <&cru SRST_USBDP_COMBO_PHY0_LANE>, 6633*4882a593Smuzhiyun <&cru SRST_USBDP_COMBO_PHY0_PCS>, 6634*4882a593Smuzhiyun <&cru SRST_P_USBDPPHY0>; 6635*4882a593Smuzhiyun reset-names = "init", "cmn", "lane", "pcs_apb", "pma_apb"; 6636*4882a593Smuzhiyun status = "disabled"; 6637*4882a593Smuzhiyun 6638*4882a593Smuzhiyun usbdp_phy0_dp: dp-port { 6639*4882a593Smuzhiyun #phy-cells = <0>; 6640*4882a593Smuzhiyun status = "disabled"; 6641*4882a593Smuzhiyun }; 6642*4882a593Smuzhiyun 6643*4882a593Smuzhiyun usbdp_phy0_u3: u3-port { 6644*4882a593Smuzhiyun #phy-cells = <0>; 6645*4882a593Smuzhiyun status = "disabled"; 6646*4882a593Smuzhiyun }; 6647*4882a593Smuzhiyun }; 6648*4882a593Smuzhiyun 6649*4882a593Smuzhiyun mipidcphy0: phy@feda0000 { 6650*4882a593Smuzhiyun compatible = "rockchip,rk3588-mipi-dcphy"; 6651*4882a593Smuzhiyun reg = <0x0 0xfeda0000 0x0 0x10000>; 6652*4882a593Smuzhiyun rockchip,grf = <&mipidcphy0_grf>; 6653*4882a593Smuzhiyun clocks = <&cru PCLK_MIPI_DCPHY0>, 6654*4882a593Smuzhiyun <&cru CLK_USBDPPHY_MIPIDCPPHY_REF>; 6655*4882a593Smuzhiyun clock-names = "pclk", "ref"; 6656*4882a593Smuzhiyun resets = <&cru SRST_M_MIPI_DCPHY0>, 6657*4882a593Smuzhiyun <&cru SRST_P_MIPI_DCPHY0>, 6658*4882a593Smuzhiyun <&cru SRST_P_MIPI_DCPHY0_GRF>, 6659*4882a593Smuzhiyun <&cru SRST_S_MIPI_DCPHY0>; 6660*4882a593Smuzhiyun reset-names = "m_phy", "apb", "grf", "s_phy"; 6661*4882a593Smuzhiyun #phy-cells = <0>; 6662*4882a593Smuzhiyun status = "okay"; 6663*4882a593Smuzhiyun }; 6664*4882a593Smuzhiyun 6665*4882a593Smuzhiyun mipidcphy1: phy@fedb0000 { 6666*4882a593Smuzhiyun compatible = "rockchip,rk3588-mipi-dcphy"; 6667*4882a593Smuzhiyun reg = <0x0 0xfedb0000 0x0 0x10000>; 6668*4882a593Smuzhiyun rockchip,grf = <&mipidcphy1_grf>; 6669*4882a593Smuzhiyun clocks = <&cru PCLK_MIPI_DCPHY1>, 6670*4882a593Smuzhiyun <&cru CLK_USBDPPHY_MIPIDCPPHY_REF>; 6671*4882a593Smuzhiyun clock-names = "pclk", "ref"; 6672*4882a593Smuzhiyun resets = <&cru SRST_M_MIPI_DCPHY1>, 6673*4882a593Smuzhiyun <&cru SRST_P_MIPI_DCPHY1>, 6674*4882a593Smuzhiyun <&cru SRST_P_MIPI_DCPHY1_GRF>, 6675*4882a593Smuzhiyun <&cru SRST_S_MIPI_DCPHY1>; 6676*4882a593Smuzhiyun reset-names = "m_phy", "apb", "grf", "s_phy"; 6677*4882a593Smuzhiyun #phy-cells = <0>; 6678*4882a593Smuzhiyun status = "okay"; 6679*4882a593Smuzhiyun }; 6680*4882a593Smuzhiyun 6681*4882a593Smuzhiyun csi2_dphy0_hw: csi2-dphy0-hw@fedc0000 { 6682*4882a593Smuzhiyun compatible = "rockchip,rk3588-csi2-dphy-hw"; 6683*4882a593Smuzhiyun reg = <0x0 0xfedc0000 0x0 0x8000>; 6684*4882a593Smuzhiyun clocks = <&cru PCLK_CSIPHY0>; 6685*4882a593Smuzhiyun clock-names = "pclk"; 6686*4882a593Smuzhiyun resets = <&cru SRST_CSIPHY0>, <&cru SRST_P_CSIPHY0>; 6687*4882a593Smuzhiyun reset-names = "srst_csiphy0", "srst_p_csiphy0"; 6688*4882a593Smuzhiyun rockchip,grf = <&mipidphy0_grf>; 6689*4882a593Smuzhiyun rockchip,sys_grf = <&sys_grf>; 6690*4882a593Smuzhiyun status = "okay"; 6691*4882a593Smuzhiyun }; 6692*4882a593Smuzhiyun 6693*4882a593Smuzhiyun csi2_dphy1_hw: csi2-dphy1-hw@fedc8000 { 6694*4882a593Smuzhiyun compatible = "rockchip,rk3588-csi2-dphy-hw"; 6695*4882a593Smuzhiyun reg = <0x0 0xfedc8000 0x0 0x8000>; 6696*4882a593Smuzhiyun clocks = <&cru PCLK_CSIPHY1>; 6697*4882a593Smuzhiyun clock-names = "pclk"; 6698*4882a593Smuzhiyun resets = <&cru SRST_CSIPHY1>, <&cru SRST_P_CSIPHY1>; 6699*4882a593Smuzhiyun reset-names = "srst_csiphy1", "srst_p_csiphy1"; 6700*4882a593Smuzhiyun rockchip,grf = <&mipidphy1_grf>; 6701*4882a593Smuzhiyun rockchip,sys_grf = <&sys_grf>; 6702*4882a593Smuzhiyun status = "okay"; 6703*4882a593Smuzhiyun }; 6704*4882a593Smuzhiyun 6705*4882a593Smuzhiyun combphy0_ps: phy@fee00000 { 6706*4882a593Smuzhiyun compatible = "rockchip,rk3588-naneng-combphy"; 6707*4882a593Smuzhiyun reg = <0x0 0xfee00000 0x0 0x100>; 6708*4882a593Smuzhiyun #phy-cells = <1>; 6709*4882a593Smuzhiyun clocks = <&cru CLK_REF_PIPE_PHY0>, <&cru PCLK_PCIE_COMBO_PIPE_PHY0>, 6710*4882a593Smuzhiyun <&cru PCLK_PHP_ROOT>; 6711*4882a593Smuzhiyun clock-names = "refclk", "apbclk", "phpclk"; 6712*4882a593Smuzhiyun assigned-clocks = <&cru CLK_REF_PIPE_PHY0>; 6713*4882a593Smuzhiyun assigned-clock-rates = <100000000>; 6714*4882a593Smuzhiyun resets = <&cru SRST_P_PCIE2_PHY0>, <&cru SRST_REF_PIPE_PHY0>; 6715*4882a593Smuzhiyun reset-names = "combphy-apb", "combphy"; 6716*4882a593Smuzhiyun rockchip,pipe-grf = <&php_grf>; 6717*4882a593Smuzhiyun rockchip,pipe-phy-grf = <&pipe_phy0_grf>; 6718*4882a593Smuzhiyun status = "disabled"; 6719*4882a593Smuzhiyun }; 6720*4882a593Smuzhiyun 6721*4882a593Smuzhiyun combphy2_psu: phy@fee20000 { 6722*4882a593Smuzhiyun compatible = "rockchip,rk3588-naneng-combphy"; 6723*4882a593Smuzhiyun reg = <0x0 0xfee20000 0x0 0x100>; 6724*4882a593Smuzhiyun #phy-cells = <1>; 6725*4882a593Smuzhiyun clocks = <&cru CLK_REF_PIPE_PHY2>, <&cru PCLK_PCIE_COMBO_PIPE_PHY2>, 6726*4882a593Smuzhiyun <&cru PCLK_PHP_ROOT>; 6727*4882a593Smuzhiyun clock-names = "refclk", "apbclk", "phpclk"; 6728*4882a593Smuzhiyun assigned-clocks = <&cru CLK_REF_PIPE_PHY2>; 6729*4882a593Smuzhiyun assigned-clock-rates = <100000000>; 6730*4882a593Smuzhiyun resets = <&cru SRST_P_PCIE2_PHY2>, <&cru SRST_REF_PIPE_PHY2>; 6731*4882a593Smuzhiyun reset-names = "combphy-apb", "combphy"; 6732*4882a593Smuzhiyun rockchip,pipe-grf = <&php_grf>; 6733*4882a593Smuzhiyun rockchip,pipe-phy-grf = <&pipe_phy2_grf>; 6734*4882a593Smuzhiyun rockchip,pcie1ln-sel-bits = <0x100 1 1 0>; 6735*4882a593Smuzhiyun status = "disabled"; 6736*4882a593Smuzhiyun }; 6737*4882a593Smuzhiyun 6738*4882a593Smuzhiyun syssram: sram@ff001000 { 6739*4882a593Smuzhiyun compatible = "mmio-sram"; 6740*4882a593Smuzhiyun reg = <0x0 0xff001000 0x0 0xef000>; 6741*4882a593Smuzhiyun 6742*4882a593Smuzhiyun #address-cells = <1>; 6743*4882a593Smuzhiyun #size-cells = <1>; 6744*4882a593Smuzhiyun ranges = <0x0 0x0 0xff001000 0xef000>; 6745*4882a593Smuzhiyun /* start address and size should be 4k algin */ 6746*4882a593Smuzhiyun rkvdec0_sram: rkvdec-sram@0 { 6747*4882a593Smuzhiyun reg = <0x0 0x78000>; 6748*4882a593Smuzhiyun }; 6749*4882a593Smuzhiyun rkvdec1_sram: rkvdec-sram@78000 { 6750*4882a593Smuzhiyun reg = <0x78000 0x77000>; 6751*4882a593Smuzhiyun }; 6752*4882a593Smuzhiyun }; 6753*4882a593Smuzhiyun 6754*4882a593Smuzhiyun pinctrl: pinctrl { 6755*4882a593Smuzhiyun compatible = "rockchip,rk3588-pinctrl"; 6756*4882a593Smuzhiyun rockchip,grf = <&ioc>; 6757*4882a593Smuzhiyun #address-cells = <2>; 6758*4882a593Smuzhiyun #size-cells = <2>; 6759*4882a593Smuzhiyun ranges; 6760*4882a593Smuzhiyun 6761*4882a593Smuzhiyun gpio0: gpio@fd8a0000 { 6762*4882a593Smuzhiyun compatible = "rockchip,gpio-bank"; 6763*4882a593Smuzhiyun reg = <0x0 0xfd8a0000 0x0 0x100>; 6764*4882a593Smuzhiyun interrupts = <GIC_SPI 277 IRQ_TYPE_LEVEL_HIGH>; 6765*4882a593Smuzhiyun clocks = <&cru PCLK_GPIO0>, <&cru DBCLK_GPIO0>; 6766*4882a593Smuzhiyun 6767*4882a593Smuzhiyun gpio-controller; 6768*4882a593Smuzhiyun #gpio-cells = <2>; 6769*4882a593Smuzhiyun gpio-ranges = <&pinctrl 0 0 32>; 6770*4882a593Smuzhiyun interrupt-controller; 6771*4882a593Smuzhiyun #interrupt-cells = <2>; 6772*4882a593Smuzhiyun }; 6773*4882a593Smuzhiyun 6774*4882a593Smuzhiyun gpio1: gpio@fec20000 { 6775*4882a593Smuzhiyun compatible = "rockchip,gpio-bank"; 6776*4882a593Smuzhiyun reg = <0x0 0xfec20000 0x0 0x100>; 6777*4882a593Smuzhiyun interrupts = <GIC_SPI 278 IRQ_TYPE_LEVEL_HIGH>; 6778*4882a593Smuzhiyun clocks = <&cru PCLK_GPIO1>, <&cru DBCLK_GPIO1>; 6779*4882a593Smuzhiyun 6780*4882a593Smuzhiyun gpio-controller; 6781*4882a593Smuzhiyun #gpio-cells = <2>; 6782*4882a593Smuzhiyun gpio-ranges = <&pinctrl 0 32 32>; 6783*4882a593Smuzhiyun interrupt-controller; 6784*4882a593Smuzhiyun #interrupt-cells = <2>; 6785*4882a593Smuzhiyun }; 6786*4882a593Smuzhiyun 6787*4882a593Smuzhiyun gpio2: gpio@fec30000 { 6788*4882a593Smuzhiyun compatible = "rockchip,gpio-bank"; 6789*4882a593Smuzhiyun reg = <0x0 0xfec30000 0x0 0x100>; 6790*4882a593Smuzhiyun interrupts = <GIC_SPI 279 IRQ_TYPE_LEVEL_HIGH>; 6791*4882a593Smuzhiyun clocks = <&cru PCLK_GPIO2>, <&cru DBCLK_GPIO2>; 6792*4882a593Smuzhiyun 6793*4882a593Smuzhiyun gpio-controller; 6794*4882a593Smuzhiyun #gpio-cells = <2>; 6795*4882a593Smuzhiyun gpio-ranges = <&pinctrl 0 64 32>; 6796*4882a593Smuzhiyun interrupt-controller; 6797*4882a593Smuzhiyun #interrupt-cells = <2>; 6798*4882a593Smuzhiyun }; 6799*4882a593Smuzhiyun 6800*4882a593Smuzhiyun gpio3: gpio@fec40000 { 6801*4882a593Smuzhiyun compatible = "rockchip,gpio-bank"; 6802*4882a593Smuzhiyun reg = <0x0 0xfec40000 0x0 0x100>; 6803*4882a593Smuzhiyun interrupts = <GIC_SPI 280 IRQ_TYPE_LEVEL_HIGH>; 6804*4882a593Smuzhiyun clocks = <&cru PCLK_GPIO3>, <&cru DBCLK_GPIO3>; 6805*4882a593Smuzhiyun 6806*4882a593Smuzhiyun gpio-controller; 6807*4882a593Smuzhiyun #gpio-cells = <2>; 6808*4882a593Smuzhiyun gpio-ranges = <&pinctrl 0 96 32>; 6809*4882a593Smuzhiyun interrupt-controller; 6810*4882a593Smuzhiyun #interrupt-cells = <2>; 6811*4882a593Smuzhiyun }; 6812*4882a593Smuzhiyun 6813*4882a593Smuzhiyun gpio4: gpio@fec50000 { 6814*4882a593Smuzhiyun compatible = "rockchip,gpio-bank"; 6815*4882a593Smuzhiyun reg = <0x0 0xfec50000 0x0 0x100>; 6816*4882a593Smuzhiyun interrupts = <GIC_SPI 281 IRQ_TYPE_LEVEL_HIGH>; 6817*4882a593Smuzhiyun clocks = <&cru PCLK_GPIO4>, <&cru DBCLK_GPIO4>; 6818*4882a593Smuzhiyun 6819*4882a593Smuzhiyun gpio-controller; 6820*4882a593Smuzhiyun #gpio-cells = <2>; 6821*4882a593Smuzhiyun gpio-ranges = <&pinctrl 0 128 32>; 6822*4882a593Smuzhiyun interrupt-controller; 6823*4882a593Smuzhiyun #interrupt-cells = <2>; 6824*4882a593Smuzhiyun }; 6825*4882a593Smuzhiyun }; 6826*4882a593Smuzhiyun}; 6827*4882a593Smuzhiyun 6828*4882a593Smuzhiyun#include "rk3588s-pinctrl.dtsi" 6829