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 7*4882a593Smuzhiyun#include <dt-bindings/gpio/gpio.h> 8*4882a593Smuzhiyun#include <dt-bindings/pwm/pwm.h> 9*4882a593Smuzhiyun#include <dt-bindings/pinctrl/rockchip.h> 10*4882a593Smuzhiyun#include <dt-bindings/input/rk-input.h> 11*4882a593Smuzhiyun#include <dt-bindings/display/drm_mipi_dsi.h> 12*4882a593Smuzhiyun#include <dt-bindings/display/rockchip_vop.h> 13*4882a593Smuzhiyun#include <dt-bindings/sensor-dev.h> 14*4882a593Smuzhiyun#include "rk3588-cpu-swap.dtsi" 15*4882a593Smuzhiyun 16*4882a593Smuzhiyun/ { 17*4882a593Smuzhiyun adc_keys: adc-keys { 18*4882a593Smuzhiyun compatible = "adc-keys"; 19*4882a593Smuzhiyun io-channels = <&saradc 1>; 20*4882a593Smuzhiyun io-channel-names = "buttons"; 21*4882a593Smuzhiyun keyup-threshold-microvolt = <1800000>; 22*4882a593Smuzhiyun poll-interval = <100>; 23*4882a593Smuzhiyun 24*4882a593Smuzhiyun vol-up-key { 25*4882a593Smuzhiyun label = "volume up"; 26*4882a593Smuzhiyun linux,code = <KEY_VOLUMEUP>; 27*4882a593Smuzhiyun press-threshold-microvolt = <1750>; 28*4882a593Smuzhiyun }; 29*4882a593Smuzhiyun }; 30*4882a593Smuzhiyun 31*4882a593Smuzhiyun dp0_sound: dp0-sound { 32*4882a593Smuzhiyun status = "disabled"; 33*4882a593Smuzhiyun compatible = "rockchip,hdmi"; 34*4882a593Smuzhiyun rockchip,card-name= "rockchip-dp0"; 35*4882a593Smuzhiyun rockchip,mclk-fs = <512>; 36*4882a593Smuzhiyun rockchip,cpu = <&spdif_tx2>; 37*4882a593Smuzhiyun rockchip,codec = <&dp0 1>; 38*4882a593Smuzhiyun rockchip,jack-det; 39*4882a593Smuzhiyun }; 40*4882a593Smuzhiyun 41*4882a593Smuzhiyun dp1_sound: dp1-sound { 42*4882a593Smuzhiyun status = "disabled"; 43*4882a593Smuzhiyun compatible = "rockchip,hdmi"; 44*4882a593Smuzhiyun rockchip,card-name= "rockchip-dp1"; 45*4882a593Smuzhiyun rockchip,mclk-fs = <512>; 46*4882a593Smuzhiyun rockchip,cpu = <&spdif_tx5>; 47*4882a593Smuzhiyun rockchip,codec = <&dp1 1>; 48*4882a593Smuzhiyun rockchip,jack-det; 49*4882a593Smuzhiyun }; 50*4882a593Smuzhiyun 51*4882a593Smuzhiyun hdmi0_sound: hdmi0-sound { 52*4882a593Smuzhiyun status = "disabled"; 53*4882a593Smuzhiyun compatible = "rockchip,hdmi"; 54*4882a593Smuzhiyun rockchip,mclk-fs = <128>; 55*4882a593Smuzhiyun rockchip,card-name = "rockchip-hdmi0"; 56*4882a593Smuzhiyun rockchip,cpu = <&i2s5_8ch>; 57*4882a593Smuzhiyun rockchip,codec = <&hdmi0>; 58*4882a593Smuzhiyun rockchip,jack-det; 59*4882a593Smuzhiyun }; 60*4882a593Smuzhiyun 61*4882a593Smuzhiyun hdmi1_sound: hdmi1-sound { 62*4882a593Smuzhiyun status = "disabled"; 63*4882a593Smuzhiyun compatible = "rockchip,hdmi"; 64*4882a593Smuzhiyun rockchip,mclk-fs = <128>; 65*4882a593Smuzhiyun rockchip,card-name = "rockchip-hdmi1"; 66*4882a593Smuzhiyun rockchip,cpu = <&i2s6_8ch>; 67*4882a593Smuzhiyun rockchip,codec = <&hdmi1>; 68*4882a593Smuzhiyun rockchip,jack-det; 69*4882a593Smuzhiyun }; 70*4882a593Smuzhiyun 71*4882a593Smuzhiyun test-power { 72*4882a593Smuzhiyun status = "okay"; 73*4882a593Smuzhiyun }; 74*4882a593Smuzhiyun}; 75*4882a593Smuzhiyun 76*4882a593Smuzhiyun&av1d_mmu { 77*4882a593Smuzhiyun status = "okay"; 78*4882a593Smuzhiyun}; 79*4882a593Smuzhiyun 80*4882a593Smuzhiyun&CPU_SLEEP { 81*4882a593Smuzhiyun status = "disabled"; 82*4882a593Smuzhiyun}; 83*4882a593Smuzhiyun 84*4882a593Smuzhiyun&cluster0_opp_table { 85*4882a593Smuzhiyun /delete-node/ opp-408000000; 86*4882a593Smuzhiyun /delete-node/ opp-600000000; 87*4882a593Smuzhiyun /delete-node/ opp-816000000; 88*4882a593Smuzhiyun /delete-node/ opp-1008000000; 89*4882a593Smuzhiyun}; 90*4882a593Smuzhiyun 91*4882a593Smuzhiyun&cluster1_opp_table { 92*4882a593Smuzhiyun /delete-node/ opp-408000000; 93*4882a593Smuzhiyun /delete-node/ opp-600000000; 94*4882a593Smuzhiyun /delete-node/ opp-816000000; 95*4882a593Smuzhiyun /delete-node/ opp-1008000000; 96*4882a593Smuzhiyun /delete-node/ opp-2256000000; 97*4882a593Smuzhiyun /delete-node/ opp-2304000000; 98*4882a593Smuzhiyun /delete-node/ opp-2352000000; 99*4882a593Smuzhiyun /delete-node/ opp-2400000000; 100*4882a593Smuzhiyun}; 101*4882a593Smuzhiyun 102*4882a593Smuzhiyun&cluster2_opp_table { 103*4882a593Smuzhiyun /delete-node/ opp-408000000; 104*4882a593Smuzhiyun /delete-node/ opp-600000000; 105*4882a593Smuzhiyun /delete-node/ opp-816000000; 106*4882a593Smuzhiyun /delete-node/ opp-1008000000; 107*4882a593Smuzhiyun /delete-node/ opp-2256000000; 108*4882a593Smuzhiyun /delete-node/ opp-2304000000; 109*4882a593Smuzhiyun /delete-node/ opp-2352000000; 110*4882a593Smuzhiyun /delete-node/ opp-2400000000; 111*4882a593Smuzhiyun}; 112*4882a593Smuzhiyun 113*4882a593Smuzhiyun&cpu_l0 { 114*4882a593Smuzhiyun cpu-supply = <&vdd_cpu_lit_s0>; 115*4882a593Smuzhiyun mem-supply = <&vdd_cpu_lit_mem_s0>; 116*4882a593Smuzhiyun}; 117*4882a593Smuzhiyun 118*4882a593Smuzhiyun&cpu_b0 { 119*4882a593Smuzhiyun cpu-supply = <&vdd_cpu_big0_s0>; 120*4882a593Smuzhiyun mem-supply = <&vdd_cpu_big0_mem_s0>; 121*4882a593Smuzhiyun}; 122*4882a593Smuzhiyun 123*4882a593Smuzhiyun&cpu_b2 { 124*4882a593Smuzhiyun cpu-supply = <&vdd_cpu_big1_s0>; 125*4882a593Smuzhiyun mem-supply = <&vdd_cpu_big1_mem_s0>; 126*4882a593Smuzhiyun}; 127*4882a593Smuzhiyun 128*4882a593Smuzhiyun&display_subsystem { 129*4882a593Smuzhiyun clocks = <&hdptxphy_hdmi_clk0>, <&hdptxphy_hdmi_clk1>; 130*4882a593Smuzhiyun clock-names = "hdmi0_phy_pll", "hdmi1_phy_pll"; 131*4882a593Smuzhiyun}; 132*4882a593Smuzhiyun 133*4882a593Smuzhiyun&gpu_opp_table { 134*4882a593Smuzhiyun /delete-node/ opp-198000000; 135*4882a593Smuzhiyun /delete-node/ opp-297000000; 136*4882a593Smuzhiyun /delete-node/ opp-396000000; 137*4882a593Smuzhiyun /delete-node/ opp-500000000; 138*4882a593Smuzhiyun /delete-node/ opp-1000000000; 139*4882a593Smuzhiyun 140*4882a593Smuzhiyun}; 141*4882a593Smuzhiyun 142*4882a593Smuzhiyun&gpu { 143*4882a593Smuzhiyun mali-supply = <&vdd_gpu_s0>; 144*4882a593Smuzhiyun mem-supply = <&vdd_gpu_mem_s0>; 145*4882a593Smuzhiyun status = "okay"; 146*4882a593Smuzhiyun}; 147*4882a593Smuzhiyun 148*4882a593Smuzhiyun&hdptxphy_hdmi_clk0 { 149*4882a593Smuzhiyun status = "okay"; 150*4882a593Smuzhiyun}; 151*4882a593Smuzhiyun 152*4882a593Smuzhiyun&hdptxphy_hdmi_clk1 { 153*4882a593Smuzhiyun status = "okay"; 154*4882a593Smuzhiyun}; 155*4882a593Smuzhiyun 156*4882a593Smuzhiyun&iep { 157*4882a593Smuzhiyun status = "okay"; 158*4882a593Smuzhiyun}; 159*4882a593Smuzhiyun 160*4882a593Smuzhiyun&iep_mmu { 161*4882a593Smuzhiyun status = "okay"; 162*4882a593Smuzhiyun}; 163*4882a593Smuzhiyun 164*4882a593Smuzhiyun&jpegd { 165*4882a593Smuzhiyun status = "okay"; 166*4882a593Smuzhiyun}; 167*4882a593Smuzhiyun 168*4882a593Smuzhiyun&jpegd_mmu { 169*4882a593Smuzhiyun status = "okay"; 170*4882a593Smuzhiyun}; 171*4882a593Smuzhiyun 172*4882a593Smuzhiyun&jpege_ccu { 173*4882a593Smuzhiyun status = "okay"; 174*4882a593Smuzhiyun}; 175*4882a593Smuzhiyun 176*4882a593Smuzhiyun&jpege0 { 177*4882a593Smuzhiyun status = "okay"; 178*4882a593Smuzhiyun}; 179*4882a593Smuzhiyun 180*4882a593Smuzhiyun&jpege0_mmu { 181*4882a593Smuzhiyun status = "okay"; 182*4882a593Smuzhiyun}; 183*4882a593Smuzhiyun 184*4882a593Smuzhiyun&jpege1 { 185*4882a593Smuzhiyun status = "okay"; 186*4882a593Smuzhiyun}; 187*4882a593Smuzhiyun 188*4882a593Smuzhiyun&jpege1_mmu { 189*4882a593Smuzhiyun status = "okay"; 190*4882a593Smuzhiyun}; 191*4882a593Smuzhiyun 192*4882a593Smuzhiyun&jpege2 { 193*4882a593Smuzhiyun status = "okay"; 194*4882a593Smuzhiyun}; 195*4882a593Smuzhiyun 196*4882a593Smuzhiyun&jpege2_mmu { 197*4882a593Smuzhiyun status = "okay"; 198*4882a593Smuzhiyun}; 199*4882a593Smuzhiyun 200*4882a593Smuzhiyun&jpege3 { 201*4882a593Smuzhiyun status = "okay"; 202*4882a593Smuzhiyun}; 203*4882a593Smuzhiyun 204*4882a593Smuzhiyun&jpege3_mmu { 205*4882a593Smuzhiyun status = "okay"; 206*4882a593Smuzhiyun}; 207*4882a593Smuzhiyun 208*4882a593Smuzhiyun&mpp_srv { 209*4882a593Smuzhiyun status = "okay"; 210*4882a593Smuzhiyun}; 211*4882a593Smuzhiyun 212*4882a593Smuzhiyun&rga3_core0 { 213*4882a593Smuzhiyun status = "okay"; 214*4882a593Smuzhiyun}; 215*4882a593Smuzhiyun 216*4882a593Smuzhiyun&rga3_0_mmu { 217*4882a593Smuzhiyun status = "okay"; 218*4882a593Smuzhiyun}; 219*4882a593Smuzhiyun 220*4882a593Smuzhiyun&rga3_core1 { 221*4882a593Smuzhiyun status = "okay"; 222*4882a593Smuzhiyun}; 223*4882a593Smuzhiyun 224*4882a593Smuzhiyun&rga3_1_mmu { 225*4882a593Smuzhiyun status = "okay"; 226*4882a593Smuzhiyun}; 227*4882a593Smuzhiyun 228*4882a593Smuzhiyun&rga2 { 229*4882a593Smuzhiyun status = "okay"; 230*4882a593Smuzhiyun}; 231*4882a593Smuzhiyun 232*4882a593Smuzhiyun&rknpu { 233*4882a593Smuzhiyun rknpu-supply = <&vdd_npu_s0>; 234*4882a593Smuzhiyun mem-supply = <&vdd_npu_mem_s0>; 235*4882a593Smuzhiyun status = "okay"; 236*4882a593Smuzhiyun}; 237*4882a593Smuzhiyun 238*4882a593Smuzhiyun&rknpu_mmu { 239*4882a593Smuzhiyun status = "okay"; 240*4882a593Smuzhiyun}; 241*4882a593Smuzhiyun 242*4882a593Smuzhiyun&rkvdec_ccu { 243*4882a593Smuzhiyun status = "okay"; 244*4882a593Smuzhiyun}; 245*4882a593Smuzhiyun 246*4882a593Smuzhiyun&rkvdec0 { 247*4882a593Smuzhiyun status = "okay"; 248*4882a593Smuzhiyun}; 249*4882a593Smuzhiyun 250*4882a593Smuzhiyun&rkvdec0_mmu { 251*4882a593Smuzhiyun status = "okay"; 252*4882a593Smuzhiyun}; 253*4882a593Smuzhiyun 254*4882a593Smuzhiyun&rkvdec1 { 255*4882a593Smuzhiyun status = "okay"; 256*4882a593Smuzhiyun}; 257*4882a593Smuzhiyun 258*4882a593Smuzhiyun&rkvdec1_mmu { 259*4882a593Smuzhiyun status = "okay"; 260*4882a593Smuzhiyun}; 261*4882a593Smuzhiyun 262*4882a593Smuzhiyun&rkvenc_ccu { 263*4882a593Smuzhiyun status = "okay"; 264*4882a593Smuzhiyun}; 265*4882a593Smuzhiyun 266*4882a593Smuzhiyun&rkvenc0 { 267*4882a593Smuzhiyun venc-supply = <&vdd_vdenc_s0>; 268*4882a593Smuzhiyun mem-supply = <&vdd_vdenc_mem_s0>; 269*4882a593Smuzhiyun status = "okay"; 270*4882a593Smuzhiyun}; 271*4882a593Smuzhiyun 272*4882a593Smuzhiyun&rkvenc0_mmu { 273*4882a593Smuzhiyun status = "okay"; 274*4882a593Smuzhiyun}; 275*4882a593Smuzhiyun 276*4882a593Smuzhiyun&rkvenc1 { 277*4882a593Smuzhiyun venc-supply = <&vdd_vdenc_s0>; 278*4882a593Smuzhiyun mem-supply = <&vdd_vdenc_mem_s0>; 279*4882a593Smuzhiyun status = "okay"; 280*4882a593Smuzhiyun}; 281*4882a593Smuzhiyun 282*4882a593Smuzhiyun&rkvenc1_mmu { 283*4882a593Smuzhiyun status = "okay"; 284*4882a593Smuzhiyun}; 285*4882a593Smuzhiyun 286*4882a593Smuzhiyun&saradc { 287*4882a593Smuzhiyun status = "okay"; 288*4882a593Smuzhiyun vref-supply = <&avcc_1v8_s0>; 289*4882a593Smuzhiyun}; 290*4882a593Smuzhiyun 291*4882a593Smuzhiyun&tsadc { 292*4882a593Smuzhiyun status = "okay"; 293*4882a593Smuzhiyun}; 294*4882a593Smuzhiyun 295*4882a593Smuzhiyun&vdpu { 296*4882a593Smuzhiyun status = "okay"; 297*4882a593Smuzhiyun}; 298*4882a593Smuzhiyun 299*4882a593Smuzhiyun&vdpu_mmu { 300*4882a593Smuzhiyun status = "okay"; 301*4882a593Smuzhiyun}; 302*4882a593Smuzhiyun 303*4882a593Smuzhiyun&vepu { 304*4882a593Smuzhiyun status = "okay"; 305*4882a593Smuzhiyun}; 306*4882a593Smuzhiyun 307*4882a593Smuzhiyun&vop { 308*4882a593Smuzhiyun assigned-clocks = <&cru ACLK_VOP>; 309*4882a593Smuzhiyun assigned-clock-rates = <800000000>; 310*4882a593Smuzhiyun status = "okay"; 311*4882a593Smuzhiyun}; 312*4882a593Smuzhiyun 313*4882a593Smuzhiyun&vop_mmu { 314*4882a593Smuzhiyun status = "okay"; 315*4882a593Smuzhiyun}; 316*4882a593Smuzhiyun 317*4882a593Smuzhiyun/* vp0 & vp1 splice for 8K output */ 318*4882a593Smuzhiyun&vp0 { 319*4882a593Smuzhiyun rockchip,plane-mask = <(1 << ROCKCHIP_VOP2_CLUSTER0 | 1 << ROCKCHIP_VOP2_ESMART0)>; 320*4882a593Smuzhiyun rockchip,primary-plane = <ROCKCHIP_VOP2_ESMART0>; 321*4882a593Smuzhiyun}; 322*4882a593Smuzhiyun 323*4882a593Smuzhiyun&vp1 { 324*4882a593Smuzhiyun rockchip,plane-mask = <(1 << ROCKCHIP_VOP2_CLUSTER1 | 1 << ROCKCHIP_VOP2_ESMART1)>; 325*4882a593Smuzhiyun rockchip,primary-plane = <ROCKCHIP_VOP2_ESMART1>; 326*4882a593Smuzhiyun}; 327*4882a593Smuzhiyun 328*4882a593Smuzhiyun&vp2 { 329*4882a593Smuzhiyun rockchip,plane-mask = <(1 << ROCKCHIP_VOP2_CLUSTER2 | 1 << ROCKCHIP_VOP2_ESMART2)>; 330*4882a593Smuzhiyun rockchip,primary-plane = <ROCKCHIP_VOP2_ESMART2>; 331*4882a593Smuzhiyun}; 332*4882a593Smuzhiyun 333*4882a593Smuzhiyun&vp3 { 334*4882a593Smuzhiyun rockchip,plane-mask = <(1 << ROCKCHIP_VOP2_CLUSTER3 | 1 << ROCKCHIP_VOP2_ESMART3)>; 335*4882a593Smuzhiyun rockchip,primary-plane = <ROCKCHIP_VOP2_ESMART3>; 336*4882a593Smuzhiyun}; 337