156f7d184SJoseph Chen// SPDX-License-Identifier: (GPL-2.0+ OR MIT) 256f7d184SJoseph Chen/* 356f7d184SJoseph Chen * Copyright (c) 2022 Rockchip Electronics Co., Ltd. 456f7d184SJoseph Chen */ 556f7d184SJoseph Chen 656f7d184SJoseph Chen#include <dt-bindings/clock/rk3562-cru.h> 756f7d184SJoseph Chen#include <dt-bindings/interrupt-controller/arm-gic.h> 856f7d184SJoseph Chen#include <dt-bindings/interrupt-controller/irq.h> 956f7d184SJoseph Chen#include <dt-bindings/phy/phy.h> 1056f7d184SJoseph Chen#include <dt-bindings/power/rk3562-power.h> 1156f7d184SJoseph Chen#include <dt-bindings/pinctrl/rockchip.h> 1256f7d184SJoseph Chen#include <dt-bindings/soc/rockchip,boot-mode.h> 1356f7d184SJoseph Chen#include <dt-bindings/soc/rockchip-system-status.h> 1456f7d184SJoseph Chen#include <dt-bindings/thermal/thermal.h> 1556f7d184SJoseph Chen 1656f7d184SJoseph Chen/ { 1756f7d184SJoseph Chen compatible = "rockchip,rk3562"; 1856f7d184SJoseph Chen 1956f7d184SJoseph Chen interrupt-parent = <&gic>; 2056f7d184SJoseph Chen #address-cells = <2>; 2156f7d184SJoseph Chen #size-cells = <2>; 2256f7d184SJoseph Chen 2356f7d184SJoseph Chen aliases { 2456f7d184SJoseph Chen csi2dphy0 = &csi2_dphy0; 2556f7d184SJoseph Chen csi2dphy1 = &csi2_dphy1; 2656f7d184SJoseph Chen csi2dphy2 = &csi2_dphy2; 2756f7d184SJoseph Chen csi2dphy3 = &csi2_dphy3; 2856f7d184SJoseph Chen csi2dphy4 = &csi2_dphy4; 2956f7d184SJoseph Chen csi2dphy5 = &csi2_dphy5; 3056f7d184SJoseph Chen ethernet0 = &gmac0; 3156f7d184SJoseph Chen ethernet1 = &gmac1; 3256f7d184SJoseph Chen gpio0 = &gpio0; 3356f7d184SJoseph Chen gpio1 = &gpio1; 3456f7d184SJoseph Chen gpio2 = &gpio2; 3556f7d184SJoseph Chen gpio3 = &gpio3; 3656f7d184SJoseph Chen gpio4 = &gpio4; 3756f7d184SJoseph Chen i2c0 = &i2c0; 3856f7d184SJoseph Chen i2c1 = &i2c1; 3956f7d184SJoseph Chen i2c2 = &i2c2; 4056f7d184SJoseph Chen i2c3 = &i2c3; 4156f7d184SJoseph Chen i2c4 = &i2c4; 4256f7d184SJoseph Chen i2c5 = &i2c5; 4356f7d184SJoseph Chen rkcif_mipi_lvds0= &rkcif_mipi_lvds; 4456f7d184SJoseph Chen rkcif_mipi_lvds1= &rkcif_mipi_lvds1; 4556f7d184SJoseph Chen rkcif_mipi_lvds2= &rkcif_mipi_lvds2; 4656f7d184SJoseph Chen rkcif_mipi_lvds3= &rkcif_mipi_lvds3; 4756f7d184SJoseph Chen serial0 = &uart0; 4856f7d184SJoseph Chen serial1 = &uart1; 4956f7d184SJoseph Chen serial2 = &uart2; 5056f7d184SJoseph Chen serial3 = &uart3; 5156f7d184SJoseph Chen serial4 = &uart4; 5256f7d184SJoseph Chen serial5 = &uart5; 5356f7d184SJoseph Chen serial6 = &uart6; 5456f7d184SJoseph Chen serial7 = &uart7; 5556f7d184SJoseph Chen serial8 = &uart8; 5656f7d184SJoseph Chen serial9 = &uart9; 5756f7d184SJoseph Chen spi0 = &spi0; 5856f7d184SJoseph Chen spi1 = &spi1; 5956f7d184SJoseph Chen spi2 = &spi2; 6056f7d184SJoseph Chen spi3 = &sfc; 6156f7d184SJoseph Chen }; 6256f7d184SJoseph Chen 6356f7d184SJoseph Chen clocks { 6456f7d184SJoseph Chen compatible = "simple-bus"; 6556f7d184SJoseph Chen #address-cells = <2>; 6656f7d184SJoseph Chen #size-cells = <2>; 6756f7d184SJoseph Chen ranges; 6856f7d184SJoseph Chen 6956f7d184SJoseph Chen xin32k: xin32k { 7056f7d184SJoseph Chen compatible = "fixed-clock"; 7156f7d184SJoseph Chen #clock-cells = <0>; 7256f7d184SJoseph Chen clock-frequency = <32768>; 7356f7d184SJoseph Chen clock-output-names = "xin32k"; 7456f7d184SJoseph Chen }; 7556f7d184SJoseph Chen 7656f7d184SJoseph Chen xin24m: xin24m { 7756f7d184SJoseph Chen compatible = "fixed-clock"; 7856f7d184SJoseph Chen #clock-cells = <0>; 7956f7d184SJoseph Chen clock-frequency = <24000000>; 8056f7d184SJoseph Chen clock-output-names = "xin24m"; 8156f7d184SJoseph Chen }; 8256f7d184SJoseph Chen 8356f7d184SJoseph Chen aclk_vepu: aclk_vepu@ff100324 { 8456f7d184SJoseph Chen compatible = "rockchip,rk3562-clock-gate-link"; 8556f7d184SJoseph Chen reg = <0 0xff100324 0 0x10>; 8656f7d184SJoseph Chen clock-names = "link"; 8756f7d184SJoseph Chen clocks = <&cru ACLK_ISP>; 8856f7d184SJoseph Chen #power-domain-cells = <1>; 8956f7d184SJoseph Chen #clock-cells = <0>; 9056f7d184SJoseph Chen }; 9156f7d184SJoseph Chen 9256f7d184SJoseph Chen aclk_vdpu: aclk_vdpu@ff100328 { 9356f7d184SJoseph Chen compatible = "rockchip,rk3562-clock-gate-link"; 9456f7d184SJoseph Chen reg = <0 0xff100328 0 0x10>; 9556f7d184SJoseph Chen clock-names = "link"; 9656f7d184SJoseph Chen clocks = <&cru ACLK_TOP_VIO>; 9756f7d184SJoseph Chen #power-domain-cells = <1>; 9856f7d184SJoseph Chen #clock-cells = <0>; 9956f7d184SJoseph Chen }; 10056f7d184SJoseph Chen 10156f7d184SJoseph Chen aclk_vi_isp: aclk_vi_isp@ff10032c { 10256f7d184SJoseph Chen compatible = "rockchip,rk3562-clock-gate-link"; 10356f7d184SJoseph Chen reg = <0 0xff10032c 0 0x10>; 10456f7d184SJoseph Chen clock-names = "link"; 10556f7d184SJoseph Chen clocks = <&cru ACLK_TOP_VIO>; 10656f7d184SJoseph Chen #power-domain-cells = <1>; 10756f7d184SJoseph Chen #clock-cells = <0>; 10856f7d184SJoseph Chen }; 10956f7d184SJoseph Chen 11056f7d184SJoseph Chen aclk_vo: aclk_vo@ff100334 { 11156f7d184SJoseph Chen compatible = "rockchip,rk3562-clock-gate-link"; 11256f7d184SJoseph Chen reg = <0 0xff100334 0 0x10>; 11356f7d184SJoseph Chen clock-names = "link"; 11456f7d184SJoseph Chen clocks = <&cru ACLK_TOP_VIO>; 11556f7d184SJoseph Chen #power-domain-cells = <1>; 11656f7d184SJoseph Chen #clock-cells = <0>; 11756f7d184SJoseph Chen }; 11856f7d184SJoseph Chen 11956f7d184SJoseph Chen aclk_rga_jdec: aclk_rga_jdec@ff100338 { 12056f7d184SJoseph Chen compatible = "rockchip,rk3562-clock-gate-link"; 12156f7d184SJoseph Chen reg = <0 0xff100338 0 0x10>; 12256f7d184SJoseph Chen clock-names = "link"; 12356f7d184SJoseph Chen clocks = <&cru ACLK_VOP>; 12456f7d184SJoseph Chen #power-domain-cells = <1>; 12556f7d184SJoseph Chen #clock-cells = <0>; 12656f7d184SJoseph Chen }; 12756f7d184SJoseph Chen }; 12856f7d184SJoseph Chen 12956f7d184SJoseph Chen cpus { 13056f7d184SJoseph Chen #address-cells = <2>; 13156f7d184SJoseph Chen #size-cells = <0>; 13256f7d184SJoseph Chen 13356f7d184SJoseph Chen cpu0: cpu@0 { 13456f7d184SJoseph Chen device_type = "cpu"; 13556f7d184SJoseph Chen compatible = "arm,cortex-a53"; 13656f7d184SJoseph Chen reg = <0x0 0x0>; 13756f7d184SJoseph Chen enable-method = "psci"; 13856f7d184SJoseph Chen clocks = <&cru ARMCLK>; 13956f7d184SJoseph Chen operating-points-v2 = <&cpu0_opp_table>; 14056f7d184SJoseph Chen }; 14156f7d184SJoseph Chen cpu1: cpu@1 { 14256f7d184SJoseph Chen device_type = "cpu"; 14356f7d184SJoseph Chen compatible = "arm,cortex-a53"; 14456f7d184SJoseph Chen reg = <0x0 0x1>; 14556f7d184SJoseph Chen enable-method = "psci"; 14656f7d184SJoseph Chen clocks = <&cru ARMCLK>; 14756f7d184SJoseph Chen operating-points-v2 = <&cpu0_opp_table>; 14856f7d184SJoseph Chen }; 14956f7d184SJoseph Chen cpu2: cpu@2 { 15056f7d184SJoseph Chen device_type = "cpu"; 15156f7d184SJoseph Chen compatible = "arm,cortex-a53"; 15256f7d184SJoseph Chen reg = <0x0 0x2>; 15356f7d184SJoseph Chen enable-method = "psci"; 15456f7d184SJoseph Chen clocks = <&cru ARMCLK>; 15556f7d184SJoseph Chen operating-points-v2 = <&cpu0_opp_table>; 15656f7d184SJoseph Chen }; 15756f7d184SJoseph Chen cpu3: cpu@3 { 15856f7d184SJoseph Chen device_type = "cpu"; 15956f7d184SJoseph Chen compatible = "arm,cortex-a53"; 16056f7d184SJoseph Chen reg = <0x0 0x3>; 16156f7d184SJoseph Chen enable-method = "psci"; 16256f7d184SJoseph Chen clocks = <&cru ARMCLK>; 16356f7d184SJoseph Chen operating-points-v2 = <&cpu0_opp_table>; 16456f7d184SJoseph Chen }; 16556f7d184SJoseph Chen }; 16656f7d184SJoseph Chen 16756f7d184SJoseph Chen cpu0_opp_table: cpu0-opp-table { 16856f7d184SJoseph Chen compatible = "operating-points-v2"; 16956f7d184SJoseph Chen opp-shared; 17056f7d184SJoseph Chen 17156f7d184SJoseph Chen nvmem-cells = <&cpu_leakage>; 17256f7d184SJoseph Chen nvmem-cell-names = "leakage"; 17356f7d184SJoseph Chen 17456f7d184SJoseph Chen opp-408000000 { 17556f7d184SJoseph Chen opp-hz = /bits/ 64 <408000000>; 17656f7d184SJoseph Chen opp-microvolt = <900000 900000 1100000>; 17756f7d184SJoseph Chen clock-latency-ns = <40000>; 17856f7d184SJoseph Chen opp-suspend; 17956f7d184SJoseph Chen }; 18056f7d184SJoseph Chen opp-600000000 { 18156f7d184SJoseph Chen opp-hz = /bits/ 64 <600000000>; 18256f7d184SJoseph Chen opp-microvolt = <900000 900000 1100000>; 18356f7d184SJoseph Chen clock-latency-ns = <40000>; 18456f7d184SJoseph Chen }; 18556f7d184SJoseph Chen opp-816000000 { 18656f7d184SJoseph Chen opp-hz = /bits/ 64 <816000000>; 18756f7d184SJoseph Chen opp-microvolt = <900000 900000 1100000>; 18856f7d184SJoseph Chen clock-latency-ns = <40000>; 18956f7d184SJoseph Chen }; 19056f7d184SJoseph Chen opp-1008000000 { 19156f7d184SJoseph Chen opp-hz = /bits/ 64 <1008000000>; 19256f7d184SJoseph Chen opp-microvolt = <900000 900000 1100000>; 19356f7d184SJoseph Chen clock-latency-ns = <40000>; 19456f7d184SJoseph Chen }; 19556f7d184SJoseph Chen opp-1200000000 { 19656f7d184SJoseph Chen opp-hz = /bits/ 64 <1200000000>; 19756f7d184SJoseph Chen opp-microvolt = <900000 900000 1100000>; 19856f7d184SJoseph Chen clock-latency-ns = <40000>; 19956f7d184SJoseph Chen }; 20056f7d184SJoseph Chen }; 20156f7d184SJoseph Chen 20256f7d184SJoseph Chen arm-pmu { 20356f7d184SJoseph Chen compatible = "arm,cortex-a53-pmu"; 20456f7d184SJoseph Chen interrupts = <GIC_SPI 228 IRQ_TYPE_LEVEL_HIGH>, 20556f7d184SJoseph Chen <GIC_SPI 229 IRQ_TYPE_LEVEL_HIGH>, 20656f7d184SJoseph Chen <GIC_SPI 230 IRQ_TYPE_LEVEL_HIGH>, 20756f7d184SJoseph Chen <GIC_SPI 231 IRQ_TYPE_LEVEL_HIGH>; 20856f7d184SJoseph Chen interrupt-affinity = <&cpu0>, <&cpu1>, <&cpu2>, <&cpu3>; 20956f7d184SJoseph Chen }; 21056f7d184SJoseph Chen 21156f7d184SJoseph Chen cpuinfo { 21256f7d184SJoseph Chen compatible = "rockchip,cpuinfo"; 21356f7d184SJoseph Chen nvmem-cells = <&otp_id>, <&otp_cpu_version>, <&cpu_code>; 21456f7d184SJoseph Chen nvmem-cell-names = "id", "cpu-version", "cpu-code"; 21556f7d184SJoseph Chen }; 21656f7d184SJoseph Chen 21756f7d184SJoseph Chen /* dphy0 full mode */ 21856f7d184SJoseph Chen csi2_dphy0: csi2-dphy0 { 21956f7d184SJoseph Chen compatible = "rockchip,rk3562-csi2-dphy"; 22056f7d184SJoseph Chen rockchip,hw = <&csi2_dphy0_hw>; 22156f7d184SJoseph Chen status = "disabled"; 22256f7d184SJoseph Chen }; 22356f7d184SJoseph Chen 22456f7d184SJoseph Chen /* dphy0 split mode 01 */ 22556f7d184SJoseph Chen csi2_dphy1: csi2-dphy1 { 22656f7d184SJoseph Chen compatible = "rockchip,rk3562-csi2-dphy"; 22756f7d184SJoseph Chen rockchip,hw = <&csi2_dphy0_hw>; 22856f7d184SJoseph Chen status = "disabled"; 22956f7d184SJoseph Chen }; 23056f7d184SJoseph Chen 23156f7d184SJoseph Chen /* dphy0 split mode 23 */ 23256f7d184SJoseph Chen csi2_dphy2: csi2-dphy2 { 23356f7d184SJoseph Chen compatible = "rockchip,rk3562-csi2-dphy"; 23456f7d184SJoseph Chen rockchip,hw = <&csi2_dphy0_hw>; 23556f7d184SJoseph Chen status = "disabled"; 23656f7d184SJoseph Chen }; 23756f7d184SJoseph Chen 23856f7d184SJoseph Chen /* dphy1 full mode */ 23956f7d184SJoseph Chen csi2_dphy3: csi2-dphy3 { 24056f7d184SJoseph Chen compatible = "rockchip,rk3562-csi2-dphy"; 24156f7d184SJoseph Chen rockchip,hw = <&csi2_dphy1_hw>; 24256f7d184SJoseph Chen status = "disabled"; 24356f7d184SJoseph Chen }; 24456f7d184SJoseph Chen 24556f7d184SJoseph Chen /* dphy1 split mode 01 */ 24656f7d184SJoseph Chen csi2_dphy4: csi2-dphy4 { 24756f7d184SJoseph Chen compatible = "rockchip,rk3562-csi2-dphy"; 24856f7d184SJoseph Chen rockchip,hw = <&csi2_dphy1_hw>; 24956f7d184SJoseph Chen status = "disabled"; 25056f7d184SJoseph Chen }; 25156f7d184SJoseph Chen 25256f7d184SJoseph Chen /* dphy1 split mode 23 */ 25356f7d184SJoseph Chen csi2_dphy5: csi2-dphy5 { 25456f7d184SJoseph Chen compatible = "rockchip,rk3562-csi2-dphy"; 25556f7d184SJoseph Chen rockchip,hw = <&csi2_dphy1_hw>; 25656f7d184SJoseph Chen status = "disabled"; 25756f7d184SJoseph Chen }; 25856f7d184SJoseph Chen 25956f7d184SJoseph Chen display_subsystem: display-subsystem { 26056f7d184SJoseph Chen compatible = "rockchip,display-subsystem"; 26156f7d184SJoseph Chen ports = <&vop_out>; 26256f7d184SJoseph Chen status = "disabled"; 26356f7d184SJoseph Chen }; 26456f7d184SJoseph Chen 26556f7d184SJoseph Chen firmware: firmware { 26656f7d184SJoseph Chen scmi: scmi { 26756f7d184SJoseph Chen compatible = "arm,scmi-smc"; 26856f7d184SJoseph Chen shmem = <&scmi_shmem>; 26956f7d184SJoseph Chen arm,smc-id = <0x82000010>; 27056f7d184SJoseph Chen #address-cells = <1>; 27156f7d184SJoseph Chen #size-cells = <0>; 27256f7d184SJoseph Chen 27356f7d184SJoseph Chen scmi_clk: protocol@14 { 27456f7d184SJoseph Chen reg = <0x14>; 27556f7d184SJoseph Chen #clock-cells = <1>; 27656f7d184SJoseph Chen }; 27756f7d184SJoseph Chen }; 27856f7d184SJoseph Chen }; 27956f7d184SJoseph Chen 28056f7d184SJoseph Chen mpp_srv: mpp-srv { 28156f7d184SJoseph Chen compatible = "rockchip,mpp-service"; 28256f7d184SJoseph Chen rockchip,taskqueue-count = <3>; 28356f7d184SJoseph Chen rockchip,resetgroup-count = <3>; 28456f7d184SJoseph Chen status = "disabled"; 28556f7d184SJoseph Chen }; 28656f7d184SJoseph Chen 28756f7d184SJoseph Chen psci: psci { 28856f7d184SJoseph Chen compatible = "arm,psci-1.0"; 28956f7d184SJoseph Chen method = "smc"; 29056f7d184SJoseph Chen }; 29156f7d184SJoseph Chen 29256f7d184SJoseph Chen rkcif_mipi_lvds: rkcif-mipi-lvds { 29356f7d184SJoseph Chen compatible = "rockchip,rkcif-mipi-lvds"; 29456f7d184SJoseph Chen rockchip,hw = <&rkcif>; 29556f7d184SJoseph Chen iommus = <&rkcif_mmu>; 29656f7d184SJoseph Chen status = "disabled"; 29756f7d184SJoseph Chen }; 29856f7d184SJoseph Chen 29956f7d184SJoseph Chen rkcif_mipi_lvds_sditf: rkcif-mipi-lvds-sditf { 30056f7d184SJoseph Chen compatible = "rockchip,rkcif-sditf"; 30156f7d184SJoseph Chen rockchip,cif = <&rkcif_mipi_lvds>; 30256f7d184SJoseph Chen status = "disabled"; 30356f7d184SJoseph Chen }; 30456f7d184SJoseph Chen 30556f7d184SJoseph Chen rkcif_mipi_lvds_sditf_vir1: rkcif-mipi-lvds-sditf-vir1 { 30656f7d184SJoseph Chen compatible = "rockchip,rkcif-sditf"; 30756f7d184SJoseph Chen rockchip,cif = <&rkcif_mipi_lvds>; 30856f7d184SJoseph Chen status = "disabled"; 30956f7d184SJoseph Chen }; 31056f7d184SJoseph Chen 31156f7d184SJoseph Chen rkcif_mipi_lvds_sditf_vir2: rkcif-mipi-lvds-sditf-vir2 { 31256f7d184SJoseph Chen compatible = "rockchip,rkcif-sditf"; 31356f7d184SJoseph Chen rockchip,cif = <&rkcif_mipi_lvds>; 31456f7d184SJoseph Chen status = "disabled"; 31556f7d184SJoseph Chen }; 31656f7d184SJoseph Chen 31756f7d184SJoseph Chen rkcif_mipi_lvds_sditf_vir3: rkcif-mipi-lvds-sditf-vir3 { 31856f7d184SJoseph Chen compatible = "rockchip,rkcif-sditf"; 31956f7d184SJoseph Chen rockchip,cif = <&rkcif_mipi_lvds>; 32056f7d184SJoseph Chen status = "disabled"; 32156f7d184SJoseph Chen }; 32256f7d184SJoseph Chen 32356f7d184SJoseph Chen rkcif_mipi_lvds1: rkcif-mipi-lvds1 { 32456f7d184SJoseph Chen compatible = "rockchip,rkcif-mipi-lvds"; 32556f7d184SJoseph Chen rockchip,hw = <&rkcif>; 32656f7d184SJoseph Chen iommus = <&rkcif_mmu>; 32756f7d184SJoseph Chen status = "disabled"; 32856f7d184SJoseph Chen }; 32956f7d184SJoseph Chen 33056f7d184SJoseph Chen rkcif_mipi_lvds1_sditf: rkcif-mipi-lvds1-sditf { 33156f7d184SJoseph Chen compatible = "rockchip,rkcif-sditf"; 33256f7d184SJoseph Chen rockchip,cif = <&rkcif_mipi_lvds1>; 33356f7d184SJoseph Chen status = "disabled"; 33456f7d184SJoseph Chen }; 33556f7d184SJoseph Chen 33656f7d184SJoseph Chen rkcif_mipi_lvds1_sditf_vir1: rkcif-mipi-lvds1-sditf-vir1 { 33756f7d184SJoseph Chen compatible = "rockchip,rkcif-sditf"; 33856f7d184SJoseph Chen rockchip,cif = <&rkcif_mipi_lvds1>; 33956f7d184SJoseph Chen status = "disabled"; 34056f7d184SJoseph Chen }; 34156f7d184SJoseph Chen 34256f7d184SJoseph Chen rkcif_mipi_lvds1_sditf_vir2: rkcif-mipi-lvds1-sditf-vir2 { 34356f7d184SJoseph Chen compatible = "rockchip,rkcif-sditf"; 34456f7d184SJoseph Chen rockchip,cif = <&rkcif_mipi_lvds1>; 34556f7d184SJoseph Chen status = "disabled"; 34656f7d184SJoseph Chen }; 34756f7d184SJoseph Chen 34856f7d184SJoseph Chen rkcif_mipi_lvds1_sditf_vir3: rkcif-mipi-lvds1-sditf-vir3 { 34956f7d184SJoseph Chen compatible = "rockchip,rkcif-sditf"; 35056f7d184SJoseph Chen rockchip,cif = <&rkcif_mipi_lvds1>; 35156f7d184SJoseph Chen status = "disabled"; 35256f7d184SJoseph Chen }; 35356f7d184SJoseph Chen 35456f7d184SJoseph Chen rkcif_mipi_lvds2: rkcif-mipi-lvds2 { 35556f7d184SJoseph Chen compatible = "rockchip,rkcif-mipi-lvds"; 35656f7d184SJoseph Chen rockchip,hw = <&rkcif>; 35756f7d184SJoseph Chen iommus = <&rkcif_mmu>; 35856f7d184SJoseph Chen status = "disabled"; 35956f7d184SJoseph Chen }; 36056f7d184SJoseph Chen 36156f7d184SJoseph Chen rkcif_mipi_lvds2_sditf: rkcif-mipi-lvds2-sditf { 36256f7d184SJoseph Chen compatible = "rockchip,rkcif-sditf"; 36356f7d184SJoseph Chen rockchip,cif = <&rkcif_mipi_lvds2>; 36456f7d184SJoseph Chen status = "disabled"; 36556f7d184SJoseph Chen }; 36656f7d184SJoseph Chen 36756f7d184SJoseph Chen rkcif_mipi_lvds2_sditf_vir1: rkcif-mipi-lvds2-sditf-vir1 { 36856f7d184SJoseph Chen compatible = "rockchip,rkcif-sditf"; 36956f7d184SJoseph Chen rockchip,cif = <&rkcif_mipi_lvds2>; 37056f7d184SJoseph Chen status = "disabled"; 37156f7d184SJoseph Chen }; 37256f7d184SJoseph Chen 37356f7d184SJoseph Chen rkcif_mipi_lvds2_sditf_vir2: rkcif-mipi-lvds2-sditf-vir2 { 37456f7d184SJoseph Chen compatible = "rockchip,rkcif-sditf"; 37556f7d184SJoseph Chen rockchip,cif = <&rkcif_mipi_lvds2>; 37656f7d184SJoseph Chen status = "disabled"; 37756f7d184SJoseph Chen }; 37856f7d184SJoseph Chen 37956f7d184SJoseph Chen rkcif_mipi_lvds2_sditf_vir3: rkcif-mipi-lvds2-sditf-vir3 { 38056f7d184SJoseph Chen compatible = "rockchip,rkcif-sditf"; 38156f7d184SJoseph Chen rockchip,cif = <&rkcif_mipi_lvds2>; 38256f7d184SJoseph Chen status = "disabled"; 38356f7d184SJoseph Chen }; 38456f7d184SJoseph Chen 38556f7d184SJoseph Chen rkcif_mipi_lvds3: rkcif-mipi-lvds3 { 38656f7d184SJoseph Chen compatible = "rockchip,rkcif-mipi-lvds"; 38756f7d184SJoseph Chen rockchip,hw = <&rkcif>; 38856f7d184SJoseph Chen iommus = <&rkcif_mmu>; 38956f7d184SJoseph Chen status = "disabled"; 39056f7d184SJoseph Chen }; 39156f7d184SJoseph Chen 39256f7d184SJoseph Chen rkcif_mipi_lvds3_sditf: rkcif-mipi-lvds3-sditf { 39356f7d184SJoseph Chen compatible = "rockchip,rkcif-sditf"; 39456f7d184SJoseph Chen rockchip,cif = <&rkcif_mipi_lvds3>; 39556f7d184SJoseph Chen status = "disabled"; 39656f7d184SJoseph Chen }; 39756f7d184SJoseph Chen 39856f7d184SJoseph Chen rkcif_mipi_lvds3_sditf_vir1: rkcif-mipi-lvds3-sditf-vir1 { 39956f7d184SJoseph Chen compatible = "rockchip,rkcif-sditf"; 40056f7d184SJoseph Chen rockchip,cif = <&rkcif_mipi_lvds3>; 40156f7d184SJoseph Chen status = "disabled"; 40256f7d184SJoseph Chen }; 40356f7d184SJoseph Chen 40456f7d184SJoseph Chen rkcif_mipi_lvds3_sditf_vir2: rkcif-mipi-lvds3-sditf-vir2 { 40556f7d184SJoseph Chen compatible = "rockchip,rkcif-sditf"; 40656f7d184SJoseph Chen rockchip,cif = <&rkcif_mipi_lvds3>; 40756f7d184SJoseph Chen status = "disabled"; 40856f7d184SJoseph Chen }; 40956f7d184SJoseph Chen 41056f7d184SJoseph Chen rkcif_mipi_lvds3_sditf_vir3: rkcif-mipi-lvds3-sditf-vir3 { 41156f7d184SJoseph Chen compatible = "rockchip,rkcif-sditf"; 41256f7d184SJoseph Chen rockchip,cif = <&rkcif_mipi_lvds3>; 41356f7d184SJoseph Chen status = "disabled"; 41456f7d184SJoseph Chen }; 41556f7d184SJoseph Chen 41656f7d184SJoseph Chen rkisp_vir0: rkisp-vir0 { 41756f7d184SJoseph Chen compatible = "rockchip,rkisp-vir"; 41856f7d184SJoseph Chen rockchip,hw = <&rkisp>; 41956f7d184SJoseph Chen status = "disabled"; 42056f7d184SJoseph Chen }; 42156f7d184SJoseph Chen 42256f7d184SJoseph Chen rkisp_vir1: rkisp-vir1 { 42356f7d184SJoseph Chen compatible = "rockchip,rkisp-vir"; 42456f7d184SJoseph Chen rockchip,hw = <&rkisp>; 42556f7d184SJoseph Chen status = "disabled"; 42656f7d184SJoseph Chen }; 42756f7d184SJoseph Chen 42856f7d184SJoseph Chen rkisp_vir2: rkisp-vir2 { 42956f7d184SJoseph Chen compatible = "rockchip,rkisp-vir"; 43056f7d184SJoseph Chen rockchip,hw = <&rkisp>; 43156f7d184SJoseph Chen status = "disabled"; 43256f7d184SJoseph Chen }; 43356f7d184SJoseph Chen 43456f7d184SJoseph Chen rkisp_vir3: rkisp-vir3 { 43556f7d184SJoseph Chen compatible = "rockchip,rkisp-vir"; 43656f7d184SJoseph Chen rockchip,hw = <&rkisp>; 43756f7d184SJoseph Chen status = "disabled"; 43856f7d184SJoseph Chen }; 43956f7d184SJoseph Chen 44056f7d184SJoseph Chen thermal_zones: thermal-zones { 44156f7d184SJoseph Chen soc_thermal: soc-thermal { 44256f7d184SJoseph Chen polling-delay-passive = <20>; /* milliseconds */ 44356f7d184SJoseph Chen polling-delay = <1000>; /* milliseconds */ 44456f7d184SJoseph Chen 44556f7d184SJoseph Chen thermal-sensors = <&tsadc 0>; 44656f7d184SJoseph Chen trips { 44756f7d184SJoseph Chen soc_crit: soc-crit { 44856f7d184SJoseph Chen /* millicelsius */ 44956f7d184SJoseph Chen temperature = <115000>; 45056f7d184SJoseph Chen /* millicelsius */ 45156f7d184SJoseph Chen hysteresis = <2000>; 45256f7d184SJoseph Chen type = "critical"; 45356f7d184SJoseph Chen }; 45456f7d184SJoseph Chen }; 45556f7d184SJoseph Chen }; 45656f7d184SJoseph Chen }; 45756f7d184SJoseph Chen 45856f7d184SJoseph Chen timer { 45956f7d184SJoseph Chen compatible = "arm,armv8-timer"; 46056f7d184SJoseph Chen interrupts = <GIC_PPI 13 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>, 46156f7d184SJoseph Chen <GIC_PPI 14 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>, 46256f7d184SJoseph Chen <GIC_PPI 11 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>, 46356f7d184SJoseph Chen <GIC_PPI 10 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>; 46456f7d184SJoseph Chen }; 46556f7d184SJoseph Chen 46656f7d184SJoseph Chen scmi_shmem: scmi-shmem@10f000 { 46756f7d184SJoseph Chen compatible = "arm,scmi-shmem"; 46856f7d184SJoseph Chen reg = <0x0 0x0010f000 0x0 0x100>; 46956f7d184SJoseph Chen }; 47056f7d184SJoseph Chen 47156f7d184SJoseph Chen usbdrd30: usbdrd { 47256f7d184SJoseph Chen compatible = "rockchip,rk3562-dwc3", "rockchip,rk3399-dwc3"; 47356f7d184SJoseph Chen clocks = <&cru CLK_USB3OTG_REF>, <&cru CLK_USB3OTG_SUSPEND>, 47456f7d184SJoseph Chen <&cru ACLK_USB3OTG>, <&cru PCLK_PHP>; 47556f7d184SJoseph Chen clock-names = "ref", "suspend", "bus", "pipe_clk"; 47656f7d184SJoseph Chen #address-cells = <2>; 47756f7d184SJoseph Chen #size-cells = <2>; 47856f7d184SJoseph Chen ranges; 47956f7d184SJoseph Chen status = "disabled"; 48056f7d184SJoseph Chen 48156f7d184SJoseph Chen usbdrd_dwc3: usb@fe500000 { 48256f7d184SJoseph Chen compatible = "snps,dwc3"; 48356f7d184SJoseph Chen reg = <0x0 0xfe500000 0x0 0x400000>; 48456f7d184SJoseph Chen interrupts = <GIC_SPI 149 IRQ_TYPE_LEVEL_HIGH>; 48556f7d184SJoseph Chen dr_mode = "otg"; 48656f7d184SJoseph Chen phys = <&u2phy_otg>, <&combphy_pu PHY_TYPE_USB3>; 48756f7d184SJoseph Chen phy-names = "usb2-phy", "usb3-phy"; 48856f7d184SJoseph Chen phy_type = "utmi_wide"; 48956f7d184SJoseph Chen power-domains = <&power RK3562_PD_PHP>; 49056f7d184SJoseph Chen resets = <&cru SRST_USB3OTG>; 49156f7d184SJoseph Chen reset-names = "usb3-otg"; 49256f7d184SJoseph Chen snps,dis_enblslpm_quirk; 49356f7d184SJoseph Chen snps,dis-u1-entry-quirk; 49456f7d184SJoseph Chen snps,dis-u2-entry-quirk; 49556f7d184SJoseph Chen snps,dis-u2-freeclk-exists-quirk; 49656f7d184SJoseph Chen snps,dis-del-phy-power-chg-quirk; 49756f7d184SJoseph Chen snps,dis-tx-ipgap-linecheck-quirk; 49856f7d184SJoseph Chen snps,dis_rxdet_inp3_quirk; 49956f7d184SJoseph Chen quirk-skip-phy-init; 50056f7d184SJoseph Chen status = "disabled"; 50156f7d184SJoseph Chen }; 50256f7d184SJoseph Chen }; 50356f7d184SJoseph Chen 50456f7d184SJoseph Chen gic: interrupt-controller@fe901000 { 50556f7d184SJoseph Chen compatible = "arm,gic-400"; 50656f7d184SJoseph Chen #interrupt-cells = <3>; 50756f7d184SJoseph Chen #address-cells = <0>; 50856f7d184SJoseph Chen interrupt-controller; 50956f7d184SJoseph Chen reg = <0x0 0xfe901000 0 0x1000>, 51056f7d184SJoseph Chen <0x0 0xfe902000 0 0x2000>, 51156f7d184SJoseph Chen <0x0 0xfe904000 0 0x2000>, 51256f7d184SJoseph Chen <0x0 0xfe906000 0 0x2000>; 51356f7d184SJoseph Chen interrupts = <GIC_PPI 9 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>; 51456f7d184SJoseph Chen }; 51556f7d184SJoseph Chen 51656f7d184SJoseph Chen usb_host0_ehci: usb@fed00000 { 51756f7d184SJoseph Chen compatible = "generic-ehci"; 51856f7d184SJoseph Chen reg = <0x0 0xfed00000 0x0 0x40000>; 51956f7d184SJoseph Chen interrupts = <GIC_SPI 150 IRQ_TYPE_LEVEL_HIGH>; 52056f7d184SJoseph Chen clocks = <&cru HCLK_USB2HOST>, <&cru HCLK_USB2HOST_ARB>, 52156f7d184SJoseph Chen <&u2phy>; 52256f7d184SJoseph Chen clock-names = "usbhost", "arbiter", "utmi"; 52356f7d184SJoseph Chen phys = <&u2phy_host>; 52456f7d184SJoseph Chen phy-names = "usb2-phy"; 52556f7d184SJoseph Chen status = "disabled"; 52656f7d184SJoseph Chen }; 52756f7d184SJoseph Chen 52856f7d184SJoseph Chen usb_host0_ohci: usb@fed40000 { 52956f7d184SJoseph Chen compatible = "generic-ohci"; 53056f7d184SJoseph Chen reg = <0x0 0xfed40000 0x0 0x40000>; 53156f7d184SJoseph Chen interrupts = <GIC_SPI 151 IRQ_TYPE_LEVEL_HIGH>; 53256f7d184SJoseph Chen clocks = <&cru HCLK_USB2HOST>, <&cru HCLK_USB2HOST_ARB>, 53356f7d184SJoseph Chen <&u2phy>; 53456f7d184SJoseph Chen clock-names = "usbhost", "arbiter", "utmi"; 53556f7d184SJoseph Chen phys = <&u2phy_host>; 53656f7d184SJoseph Chen phy-names = "usb2-phy"; 53756f7d184SJoseph Chen status = "disabled"; 53856f7d184SJoseph Chen }; 53956f7d184SJoseph Chen 54056f7d184SJoseph Chen qos_dma2ddr: qos@fee03800 { 54156f7d184SJoseph Chen compatible = "syscon"; 54256f7d184SJoseph Chen reg = <0x0 0xfee03800 0x0 0x20>; 54356f7d184SJoseph Chen }; 54456f7d184SJoseph Chen 54556f7d184SJoseph Chen qos_mcu: qos@fee10000 { 54656f7d184SJoseph Chen compatible = "syscon"; 54756f7d184SJoseph Chen reg = <0x0 0xfee10000 0x0 0x20>; 54856f7d184SJoseph Chen }; 54956f7d184SJoseph Chen 55056f7d184SJoseph Chen qos_dft_apb: qos@fee10100 { 55156f7d184SJoseph Chen compatible = "syscon"; 55256f7d184SJoseph Chen reg = <0x0 0xfee10100 0x0 0x20>; 55356f7d184SJoseph Chen }; 55456f7d184SJoseph Chen 55556f7d184SJoseph Chen qos_gmac: qos@fee10200 { 55656f7d184SJoseph Chen compatible = "syscon"; 55756f7d184SJoseph Chen reg = <0x0 0xfee10200 0x0 0x20>; 55856f7d184SJoseph Chen }; 55956f7d184SJoseph Chen 56056f7d184SJoseph Chen qos_mac100: qos@fee10300 { 56156f7d184SJoseph Chen compatible = "syscon"; 56256f7d184SJoseph Chen reg = <0x0 0xfee10300 0x0 0x20>; 56356f7d184SJoseph Chen }; 56456f7d184SJoseph Chen 56556f7d184SJoseph Chen qos_dcf: qos@fee10400 { 56656f7d184SJoseph Chen compatible = "syscon"; 56756f7d184SJoseph Chen reg = <0x0 0xfee10400 0x0 0x20>; 56856f7d184SJoseph Chen }; 56956f7d184SJoseph Chen 57056f7d184SJoseph Chen qos_cpu: qos@fee20000 { 57156f7d184SJoseph Chen compatible = "syscon"; 57256f7d184SJoseph Chen reg = <0x0 0xfee20000 0x0 0x20>; 57356f7d184SJoseph Chen }; 57456f7d184SJoseph Chen 57556f7d184SJoseph Chen qos_daplite_apb: qos@fee20100 { 57656f7d184SJoseph Chen compatible = "syscon"; 57756f7d184SJoseph Chen reg = <0x0 0xfee20100 0x0 0x20>; 57856f7d184SJoseph Chen }; 57956f7d184SJoseph Chen 58056f7d184SJoseph Chen qos_gpu: qos@fee30000 { 58156f7d184SJoseph Chen compatible = "syscon"; 58256f7d184SJoseph Chen reg = <0x0 0xfee30000 0x0 0x20>; 58356f7d184SJoseph Chen }; 58456f7d184SJoseph Chen 58556f7d184SJoseph Chen qos_npu: qos@fee40000 { 58656f7d184SJoseph Chen compatible = "syscon"; 58756f7d184SJoseph Chen reg = <0x0 0xfee40000 0x0 0x20>; 58856f7d184SJoseph Chen }; 58956f7d184SJoseph Chen 59056f7d184SJoseph Chen qos_rkvdec: qos@fee50000 { 59156f7d184SJoseph Chen compatible = "syscon"; 59256f7d184SJoseph Chen reg = <0x0 0xfee50000 0x0 0x20>; 59356f7d184SJoseph Chen }; 59456f7d184SJoseph Chen 59556f7d184SJoseph Chen qos_vepu: qos@fee60000 { 59656f7d184SJoseph Chen compatible = "syscon"; 59756f7d184SJoseph Chen reg = <0x0 0xfee60000 0x0 0x20>; 59856f7d184SJoseph Chen }; 59956f7d184SJoseph Chen 60056f7d184SJoseph Chen qos_isp: qos@fee70000 { 60156f7d184SJoseph Chen compatible = "syscon"; 60256f7d184SJoseph Chen reg = <0x0 0xfee70000 0x0 0x20>; 60356f7d184SJoseph Chen }; 60456f7d184SJoseph Chen 60556f7d184SJoseph Chen qos_vicap: qos@fee70100 { 60656f7d184SJoseph Chen compatible = "syscon"; 60756f7d184SJoseph Chen reg = <0x0 0xfee70100 0x0 0x20>; 60856f7d184SJoseph Chen }; 60956f7d184SJoseph Chen 61056f7d184SJoseph Chen qos_vop: qos@fee80000 { 61156f7d184SJoseph Chen compatible = "syscon"; 61256f7d184SJoseph Chen reg = <0x0 0xfee80000 0x0 0x20>; 61356f7d184SJoseph Chen }; 61456f7d184SJoseph Chen 61556f7d184SJoseph Chen qos_jpeg: qos@fee90000 { 61656f7d184SJoseph Chen compatible = "syscon"; 61756f7d184SJoseph Chen reg = <0x0 0xfee90000 0x0 0x20>; 61856f7d184SJoseph Chen }; 61956f7d184SJoseph Chen 62056f7d184SJoseph Chen qos_rga_rd: qos@fee90100 { 62156f7d184SJoseph Chen compatible = "syscon"; 62256f7d184SJoseph Chen reg = <0x0 0xfee90100 0x0 0x20>; 62356f7d184SJoseph Chen }; 62456f7d184SJoseph Chen 62556f7d184SJoseph Chen qos_rga_wr: qos@fee90200 { 62656f7d184SJoseph Chen compatible = "syscon"; 62756f7d184SJoseph Chen reg = <0x0 0xfee90200 0x0 0x20>; 62856f7d184SJoseph Chen }; 62956f7d184SJoseph Chen 63056f7d184SJoseph Chen qos_pcie: qos@feea0000 { 63156f7d184SJoseph Chen compatible = "syscon"; 63256f7d184SJoseph Chen reg = <0x0 0xfeea0000 0x0 0x20>; 63356f7d184SJoseph Chen }; 63456f7d184SJoseph Chen 63556f7d184SJoseph Chen qos_usb3: qos@feea0100 { 63656f7d184SJoseph Chen compatible = "syscon"; 63756f7d184SJoseph Chen reg = <0x0 0xfeea0100 0x0 0x20>; 63856f7d184SJoseph Chen }; 63956f7d184SJoseph Chen 64056f7d184SJoseph Chen qos_crypto_apb: qos@feeb0000 { 64156f7d184SJoseph Chen compatible = "syscon"; 64256f7d184SJoseph Chen reg = <0x0 0xfeeb0000 0x0 0x20>; 64356f7d184SJoseph Chen }; 64456f7d184SJoseph Chen 64556f7d184SJoseph Chen qos_crypto: qos@feeb0100 { 64656f7d184SJoseph Chen compatible = "syscon"; 64756f7d184SJoseph Chen reg = <0x0 0xfeeb0100 0x0 0x20>; 64856f7d184SJoseph Chen }; 64956f7d184SJoseph Chen 65056f7d184SJoseph Chen qos_dmac: qos@feeb0200 { 65156f7d184SJoseph Chen compatible = "syscon"; 65256f7d184SJoseph Chen reg = <0x0 0xfeeb0200 0x0 0x20>; 65356f7d184SJoseph Chen }; 65456f7d184SJoseph Chen 65556f7d184SJoseph Chen qos_emmc: qos@feeb0300 { 65656f7d184SJoseph Chen compatible = "syscon"; 65756f7d184SJoseph Chen reg = <0x0 0xfeeb0300 0x0 0x20>; 65856f7d184SJoseph Chen }; 65956f7d184SJoseph Chen 66056f7d184SJoseph Chen qos_fspi: qos@feeb0400 { 66156f7d184SJoseph Chen compatible = "syscon"; 66256f7d184SJoseph Chen reg = <0x0 0xfeeb0400 0x0 0x20>; 66356f7d184SJoseph Chen }; 66456f7d184SJoseph Chen 66556f7d184SJoseph Chen qos_rkdma: qos@feeb0500 { 66656f7d184SJoseph Chen compatible = "syscon"; 66756f7d184SJoseph Chen reg = <0x0 0xfeeb0500 0x0 0x20>; 66856f7d184SJoseph Chen }; 66956f7d184SJoseph Chen 67056f7d184SJoseph Chen qos_sdmmc0: qos@feeb0600 { 67156f7d184SJoseph Chen compatible = "syscon"; 67256f7d184SJoseph Chen reg = <0x0 0xfeeb0600 0x0 0x20>; 67356f7d184SJoseph Chen }; 67456f7d184SJoseph Chen 67556f7d184SJoseph Chen qos_sdmmc1: qos@feeb0700 { 67656f7d184SJoseph Chen compatible = "syscon"; 67756f7d184SJoseph Chen reg = <0x0 0xfeeb0700 0x0 0x20>; 67856f7d184SJoseph Chen }; 67956f7d184SJoseph Chen 68056f7d184SJoseph Chen qos_usb2: qos@feeb0800 { 68156f7d184SJoseph Chen compatible = "syscon"; 68256f7d184SJoseph Chen reg = <0x0 0xfeeb0800 0x0 0x20>; 68356f7d184SJoseph Chen }; 68456f7d184SJoseph Chen 68556f7d184SJoseph Chen pmu_grf: syscon@ff010000 { 68656f7d184SJoseph Chen compatible = "rockchip,rk3562-pmu-grf", "syscon", "simple-mfd"; 68756f7d184SJoseph Chen reg = <0x0 0xff010000 0x0 0x10000>; 68856f7d184SJoseph Chen 68956f7d184SJoseph Chen reboot_mode: reboot-mode { 69056f7d184SJoseph Chen compatible = "syscon-reboot-mode"; 69156f7d184SJoseph Chen offset = <0x200>; 69256f7d184SJoseph Chen mode-bootloader = <BOOT_BL_DOWNLOAD>; 69356f7d184SJoseph Chen mode-charge = <BOOT_CHARGING>; 69456f7d184SJoseph Chen mode-fastboot = <BOOT_FASTBOOT>; 69556f7d184SJoseph Chen mode-loader = <BOOT_BL_DOWNLOAD>; 69656f7d184SJoseph Chen mode-normal = <BOOT_NORMAL>; 69756f7d184SJoseph Chen mode-recovery = <BOOT_RECOVERY>; 69856f7d184SJoseph Chen mode-ums = <BOOT_UMS>; 69956f7d184SJoseph Chen mode-panic = <BOOT_PANIC>; 70056f7d184SJoseph Chen mode-watchdog = <BOOT_WATCHDOG>; 70156f7d184SJoseph Chen }; 70256f7d184SJoseph Chen }; 70356f7d184SJoseph Chen 70456f7d184SJoseph Chen sys_grf: syscon@ff030000 { 70556f7d184SJoseph Chen compatible = "rockchip,rk3562-sys-grf", "syscon", "simple-mfd"; 70656f7d184SJoseph Chen reg = <0x0 0xff030000 0x0 0x10000>; 70756f7d184SJoseph Chen 70856f7d184SJoseph Chen lvds: lvds { 70956f7d184SJoseph Chen compatible = "rockchip,rk3562-lvds"; 71056f7d184SJoseph Chen phys = <&video_phy>; 71156f7d184SJoseph Chen phy-names = "phy"; 71256f7d184SJoseph Chen status = "disabled"; 71356f7d184SJoseph Chen 71456f7d184SJoseph Chen ports { 71556f7d184SJoseph Chen #address-cells = <1>; 71656f7d184SJoseph Chen #size-cells = <0>; 71756f7d184SJoseph Chen 71856f7d184SJoseph Chen port@0 { 71956f7d184SJoseph Chen reg = <0>; 72056f7d184SJoseph Chen #address-cells = <1>; 72156f7d184SJoseph Chen #size-cells = <0>; 72256f7d184SJoseph Chen 72356f7d184SJoseph Chen lvds_in_vp0: endpoint@0 { 72456f7d184SJoseph Chen reg = <0>; 72556f7d184SJoseph Chen remote-endpoint = <&vp0_out_lvds>; 72656f7d184SJoseph Chen status = "disabled"; 72756f7d184SJoseph Chen }; 72856f7d184SJoseph Chen 72956f7d184SJoseph Chen lvds_in_vp1: endpoint@1 { 73056f7d184SJoseph Chen reg = <1>; 73156f7d184SJoseph Chen remote-endpoint = <&vp1_out_lvds>; 73256f7d184SJoseph Chen status = "disabled"; 73356f7d184SJoseph Chen }; 73456f7d184SJoseph Chen }; 73556f7d184SJoseph Chen }; 73656f7d184SJoseph Chen }; 73756f7d184SJoseph Chen 73856f7d184SJoseph Chen rgb: rgb { 73956f7d184SJoseph Chen compatible = "rockchip,rk3562-rgb"; 74056f7d184SJoseph Chen pinctrl-names = "default"; 74156f7d184SJoseph Chen pinctrl-0 = <&vo_pins>; 74256f7d184SJoseph Chen status = "disabled"; 74356f7d184SJoseph Chen 74456f7d184SJoseph Chen ports { 74556f7d184SJoseph Chen #address-cells = <1>; 74656f7d184SJoseph Chen #size-cells = <0>; 74756f7d184SJoseph Chen 74856f7d184SJoseph Chen port@0 { 74956f7d184SJoseph Chen reg = <0>; 75056f7d184SJoseph Chen #address-cells = <1>; 75156f7d184SJoseph Chen #size-cells = <0>; 75256f7d184SJoseph Chen 75356f7d184SJoseph Chen rgb_in_vp0: endpoint@0 { 75456f7d184SJoseph Chen reg = <0>; 75556f7d184SJoseph Chen remote-endpoint = <&vp0_out_rgb>; 75656f7d184SJoseph Chen status = "disabled"; 75756f7d184SJoseph Chen }; 75856f7d184SJoseph Chen 75956f7d184SJoseph Chen rgb_in_vp1: endpoint@1 { 76056f7d184SJoseph Chen reg = <1>; 76156f7d184SJoseph Chen remote-endpoint = <&vp1_out_rgb>; 76256f7d184SJoseph Chen status = "disabled"; 76356f7d184SJoseph Chen }; 76456f7d184SJoseph Chen }; 76556f7d184SJoseph Chen }; 76656f7d184SJoseph Chen }; 76756f7d184SJoseph Chen }; 76856f7d184SJoseph Chen 76956f7d184SJoseph Chen peri_grf: syscon@ff040000 { 77056f7d184SJoseph Chen compatible = "rockchip,rk3562-peri-grf", "syscon"; 77156f7d184SJoseph Chen reg = <0x0 0xff040000 0x0 0x10000>; 77256f7d184SJoseph Chen }; 77356f7d184SJoseph Chen 77456f7d184SJoseph Chen ioc_grf: syscon@ff060000 { 77556f7d184SJoseph Chen compatible = "rockchip,rk3562-ioc-grf", "syscon"; 77656f7d184SJoseph Chen reg = <0x0 0xff060000 0x0 0x30000>; 77756f7d184SJoseph Chen }; 77856f7d184SJoseph Chen 77956f7d184SJoseph Chen usbphy_grf: syscon@ff090000 { 78056f7d184SJoseph Chen compatible = "rockchip,rk3562-usbphy-grf", "syscon"; 78156f7d184SJoseph Chen reg = <0x0 0xff090000 0x0 0x8000>; 78256f7d184SJoseph Chen }; 78356f7d184SJoseph Chen 78456f7d184SJoseph Chen pipephy_grf: syscon@ff098000 { 78556f7d184SJoseph Chen compatible = "rockchip,rk3562-pipephy-grf", "syscon"; 78656f7d184SJoseph Chen reg = <0x0 0xff098000 0x0 0x8000>; 78756f7d184SJoseph Chen }; 78856f7d184SJoseph Chen 78956f7d184SJoseph Chen cru: clock-controller@ff100000 { 79056f7d184SJoseph Chen compatible = "rockchip,rk3562-cru"; 79156f7d184SJoseph Chen reg = <0x0 0xff100000 0x0 0x40000>; 79256f7d184SJoseph Chen rockchip,grf = <&sys_grf>; 79356f7d184SJoseph Chen #clock-cells = <1>; 79456f7d184SJoseph Chen #reset-cells = <1>; 79556f7d184SJoseph Chen 79656f7d184SJoseph Chen assigned-clocks = 79756f7d184SJoseph Chen <&cru PLL_GPLL>, <&cru PLL_CPLL>, 79856f7d184SJoseph Chen <&cru ARMCLK>; 79956f7d184SJoseph Chen assigned-clock-rates = 80056f7d184SJoseph Chen <1188000000>, <1000000000>, 80156f7d184SJoseph Chen <600000000>; 80256f7d184SJoseph Chen }; 80356f7d184SJoseph Chen 80456f7d184SJoseph Chen i2c0: i2c@ff200000 { 80556f7d184SJoseph Chen compatible = "rockchip,rk3562-i2c", "rockchip,rk3399-i2c"; 80656f7d184SJoseph Chen reg = <0x0 0xff200000 0x0 0x1000>; 80756f7d184SJoseph Chen clocks = <&cru CLK_PMU0_I2C0>, <&cru PCLK_PMU0_I2C0>; 80856f7d184SJoseph Chen clock-names = "i2c", "pclk"; 80956f7d184SJoseph Chen interrupts = <GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>; 81056f7d184SJoseph Chen pinctrl-names = "default"; 81156f7d184SJoseph Chen pinctrl-0 = <&i2c0_xfer>; 81256f7d184SJoseph Chen #address-cells = <1>; 81356f7d184SJoseph Chen #size-cells = <0>; 81456f7d184SJoseph Chen status = "disabled"; 81556f7d184SJoseph Chen }; 81656f7d184SJoseph Chen 81756f7d184SJoseph Chen uart0: serial@ff210000 { 81856f7d184SJoseph Chen compatible = "rockchip,rk3562-uart", "snps,dw-apb-uart"; 81956f7d184SJoseph Chen reg = <0x0 0xff210000 0x0 0x100>; 82056f7d184SJoseph Chen interrupts = <GIC_SPI 30 IRQ_TYPE_LEVEL_HIGH>; 82156f7d184SJoseph Chen clocks = <&cru SCLK_PMU1_UART0>, <&cru PCLK_PMU1_UART0>; 82256f7d184SJoseph Chen clock-names = "baudclk", "apb_pclk"; 82356f7d184SJoseph Chen reg-shift = <2>; 82456f7d184SJoseph Chen reg-io-width = <4>; 82556f7d184SJoseph Chen dmas = <&dmac 0>; 82656f7d184SJoseph Chen status = "disabled"; 82756f7d184SJoseph Chen }; 82856f7d184SJoseph Chen 82956f7d184SJoseph Chen spi0: spi@ff220000 { 83056f7d184SJoseph Chen compatible = "rockchip,rk3066-spi"; 83156f7d184SJoseph Chen reg = <0x0 0xff220000 0x0 0x1000>; 83256f7d184SJoseph Chen interrupts = <GIC_SPI 52 IRQ_TYPE_LEVEL_HIGH>; 83356f7d184SJoseph Chen #address-cells = <1>; 83456f7d184SJoseph Chen #size-cells = <0>; 83556f7d184SJoseph Chen clocks = <&cru CLK_PMU1_SPI0>, <&cru PCLK_PMU1_SPI0>, <&cru PCLK_PMU1_SPI0>; 83656f7d184SJoseph Chen clock-names = "spiclk", "apb_pclk", "sclk_in"; 83756f7d184SJoseph Chen dmas = <&dmac 13>, <&dmac 12>; 83856f7d184SJoseph Chen dma-names = "tx", "rx"; 83956f7d184SJoseph Chen pinctrl-names = "default"; 84056f7d184SJoseph Chen pinctrl-0 = <&spi0m0_csn0 &spi0m0_csn1 &spi0m0_pins>; 84156f7d184SJoseph Chen num-cs = <2>; 84256f7d184SJoseph Chen status = "disabled"; 84356f7d184SJoseph Chen }; 84456f7d184SJoseph Chen 84556f7d184SJoseph Chen pwm0: pwm@ff230000 { 84656f7d184SJoseph Chen compatible = "rockchip,rk3562-pwm", "rockchip,rk3328-pwm"; 84756f7d184SJoseph Chen reg = <0x0 0xff230000 0x0 0x10>; 84856f7d184SJoseph Chen #pwm-cells = <3>; 84956f7d184SJoseph Chen pinctrl-names = "active"; 85056f7d184SJoseph Chen pinctrl-0 = <&pwm0m0_pins>; 85156f7d184SJoseph Chen clocks = <&cru CLK_PMU1_PWM0>, <&cru PCLK_PMU1_PWM0>; 85256f7d184SJoseph Chen clock-names = "pwm", "pclk"; 85356f7d184SJoseph Chen status = "disabled"; 85456f7d184SJoseph Chen }; 85556f7d184SJoseph Chen 85656f7d184SJoseph Chen pwm1: pwm@ff230010 { 85756f7d184SJoseph Chen compatible = "rockchip,rk3562-pwm", "rockchip,rk3328-pwm"; 85856f7d184SJoseph Chen reg = <0x0 0xff230010 0x0 0x10>; 85956f7d184SJoseph Chen #pwm-cells = <3>; 86056f7d184SJoseph Chen pinctrl-names = "active"; 86156f7d184SJoseph Chen pinctrl-0 = <&pwm1m0_pins>; 86256f7d184SJoseph Chen clocks = <&cru CLK_PMU1_PWM0>, <&cru PCLK_PMU1_PWM0>; 86356f7d184SJoseph Chen clock-names = "pwm", "pclk"; 86456f7d184SJoseph Chen status = "disabled"; 86556f7d184SJoseph Chen }; 86656f7d184SJoseph Chen 86756f7d184SJoseph Chen pwm2: pwm@ff230020 { 86856f7d184SJoseph Chen compatible = "rockchip,rk3562-pwm", "rockchip,rk3328-pwm"; 86956f7d184SJoseph Chen reg = <0x0 0xff230020 0x0 0x10>; 87056f7d184SJoseph Chen #pwm-cells = <3>; 87156f7d184SJoseph Chen pinctrl-names = "active"; 87256f7d184SJoseph Chen pinctrl-0 = <&pwm2m0_pins>; 87356f7d184SJoseph Chen clocks = <&cru CLK_PMU1_PWM0>, <&cru PCLK_PMU1_PWM0>; 87456f7d184SJoseph Chen clock-names = "pwm", "pclk"; 87556f7d184SJoseph Chen status = "disabled"; 87656f7d184SJoseph Chen }; 87756f7d184SJoseph Chen 87856f7d184SJoseph Chen pwm3: pwm@ff230030 { 87956f7d184SJoseph Chen compatible = "rockchip,rk3562-pwm", "rockchip,rk3328-pwm"; 88056f7d184SJoseph Chen reg = <0x0 0xff230030 0x0 0x10>; 88156f7d184SJoseph Chen interrupts = <GIC_SPI 20 IRQ_TYPE_LEVEL_HIGH>, 88256f7d184SJoseph Chen <GIC_SPI 21 IRQ_TYPE_LEVEL_HIGH>; 88356f7d184SJoseph Chen #pwm-cells = <3>; 88456f7d184SJoseph Chen pinctrl-names = "active"; 88556f7d184SJoseph Chen pinctrl-0 = <&pwm3m0_pins>; 88656f7d184SJoseph Chen clocks = <&cru CLK_PMU1_PWM0>, <&cru PCLK_PMU1_PWM0>; 88756f7d184SJoseph Chen clock-names = "pwm", "pclk"; 88856f7d184SJoseph Chen status = "disabled"; 88956f7d184SJoseph Chen }; 89056f7d184SJoseph Chen 89156f7d184SJoseph Chen pmu: power-management@ff258000 { 89256f7d184SJoseph Chen compatible = "rockchip,rk3562-pmu", "syscon", "simple-mfd"; 89356f7d184SJoseph Chen reg = <0x0 0xff258000 0x0 0x1000>; 89456f7d184SJoseph Chen 89556f7d184SJoseph Chen power: power-controller { 89656f7d184SJoseph Chen compatible = "rockchip,rk3562-power-controller"; 89756f7d184SJoseph Chen #power-domain-cells = <1>; 89856f7d184SJoseph Chen #address-cells = <1>; 89956f7d184SJoseph Chen #size-cells = <0>; 90056f7d184SJoseph Chen status = "okay"; 90156f7d184SJoseph Chen 90256f7d184SJoseph Chen /* These power domains are grouped by VD_GPU */ 90356f7d184SJoseph Chen pd_gpu@RK3562_PD_GPU { 90456f7d184SJoseph Chen reg = <RK3562_PD_GPU>; 90556f7d184SJoseph Chen pm_qos = <&qos_gpu>; 90656f7d184SJoseph Chen }; 90756f7d184SJoseph Chen /* These power domains are grouped by VD_NPU */ 90856f7d184SJoseph Chen pd_npu@RK3562_PD_NPU { 90956f7d184SJoseph Chen reg = <RK3562_PD_NPU>; 91056f7d184SJoseph Chen pm_qos = <&qos_npu>; 91156f7d184SJoseph Chen }; 91256f7d184SJoseph Chen /* These power domains are grouped by VD_LOGIC */ 91356f7d184SJoseph Chen pd_vdpu@RK3562_PD_VDPU { 91456f7d184SJoseph Chen reg = <RK3562_PD_VDPU>; 91556f7d184SJoseph Chen pm_qos = <&qos_rkvdec>; 91656f7d184SJoseph Chen }; 91756f7d184SJoseph Chen pd_vi@RK3562_PD_VI { 91856f7d184SJoseph Chen reg = <RK3562_PD_VI>; 91956f7d184SJoseph Chen #address-cells = <1>; 92056f7d184SJoseph Chen #size-cells = <0>; 92156f7d184SJoseph Chen pm_qos = <&qos_isp>, 92256f7d184SJoseph Chen <&qos_vicap>; 92356f7d184SJoseph Chen 92456f7d184SJoseph Chen pd_vepu@RK3562_PD_VEPU { 92556f7d184SJoseph Chen reg = <RK3562_PD_VEPU>; 92656f7d184SJoseph Chen pm_qos = <&qos_vepu>; 92756f7d184SJoseph Chen }; 92856f7d184SJoseph Chen }; 92956f7d184SJoseph Chen pd_vo@RK3562_PD_VO { 93056f7d184SJoseph Chen reg = <RK3562_PD_VO>; 93156f7d184SJoseph Chen #address-cells = <1>; 93256f7d184SJoseph Chen #size-cells = <0>; 93356f7d184SJoseph Chen pm_qos = <&qos_vop>; 93456f7d184SJoseph Chen 93556f7d184SJoseph Chen pd_rga@RK3562_PD_RGA { 93656f7d184SJoseph Chen reg = <RK3562_PD_RGA>; 93756f7d184SJoseph Chen pm_qos = <&qos_rga_rd>, 93856f7d184SJoseph Chen <&qos_rga_wr>, 93956f7d184SJoseph Chen <&qos_jpeg>; 94056f7d184SJoseph Chen }; 94156f7d184SJoseph Chen }; 94256f7d184SJoseph Chen pd_php@RK3562_PD_PHP { 94356f7d184SJoseph Chen reg = <RK3562_PD_PHP>; 94456f7d184SJoseph Chen pm_qos = <&qos_pcie>, 94556f7d184SJoseph Chen <&qos_usb3>; 94656f7d184SJoseph Chen }; 94756f7d184SJoseph Chen }; 94856f7d184SJoseph Chen }; 94956f7d184SJoseph Chen 95056f7d184SJoseph Chen pmu_mailbox: mailbox@ff290000 { 95156f7d184SJoseph Chen compatible = "rockchip,rk3562-mailbox", 95256f7d184SJoseph Chen "rockchip,rk3368-mailbox"; 95356f7d184SJoseph Chen reg = <0x0 0xff290000 0x0 0x200>; 95456f7d184SJoseph Chen interrupts = <GIC_SPI 18 IRQ_TYPE_LEVEL_HIGH>; 95556f7d184SJoseph Chen clocks = <&cru PCLK_PMU1_MAILBOX>; 95656f7d184SJoseph Chen clock-names = "pclk_mailbox"; 95756f7d184SJoseph Chen #mbox-cells = <1>; 95856f7d184SJoseph Chen status = "disabled"; 95956f7d184SJoseph Chen }; 96056f7d184SJoseph Chen 96156f7d184SJoseph Chen rknpu: npu@ff300000 { 96256f7d184SJoseph Chen compatible = "rockchip,rk3562-rknpu"; 96356f7d184SJoseph Chen reg = <0x0 0xff300000 0x0 0x10000>; 96456f7d184SJoseph Chen interrupts = <GIC_SPI 119 IRQ_TYPE_LEVEL_HIGH>; 96556f7d184SJoseph Chen clocks = <&cru ACLK_RKNN>, <&cru HCLK_RKNN>; 96656f7d184SJoseph Chen clock-names = "aclk", "hclk"; 96756f7d184SJoseph Chen assigned-clocks = <&cru ACLK_RKNN>; 96856f7d184SJoseph Chen assigned-clock-rates = <600000000>; 96956f7d184SJoseph Chen resets = <&cru SRST_A_RKNN>, <&cru SRST_H_RKNN>; 97056f7d184SJoseph Chen reset-names = "srst_a", "srst_h"; 97156f7d184SJoseph Chen power-domains = <&power RK3562_PD_NPU>; 97256f7d184SJoseph Chen iommus = <&rknpu_mmu>; 97356f7d184SJoseph Chen status = "disabled"; 97456f7d184SJoseph Chen }; 97556f7d184SJoseph Chen 97656f7d184SJoseph Chen rknpu_mmu: iommu@ff30b000 { 97756f7d184SJoseph Chen compatible = "rockchip,iommu-v2"; 97856f7d184SJoseph Chen reg = <0x0 0xff30b000 0x0 0x40>; 97956f7d184SJoseph Chen interrupts = <GIC_SPI 119 IRQ_TYPE_LEVEL_HIGH>; 98056f7d184SJoseph Chen interrupt-names = "rknpu_mmu"; 98156f7d184SJoseph Chen clocks = <&cru ACLK_RKNN>, <&cru HCLK_RKNN>; 98256f7d184SJoseph Chen clock-names = "aclk", "iface"; 98356f7d184SJoseph Chen power-domains = <&power RK3562_PD_NPU>; 98456f7d184SJoseph Chen #iommu-cells = <0>; 98556f7d184SJoseph Chen status = "disabled"; 98656f7d184SJoseph Chen }; 98756f7d184SJoseph Chen 98856f7d184SJoseph Chen gpu: gpu@ff320000 { 98956f7d184SJoseph Chen compatible = "arm,mali-bifrost"; 99056f7d184SJoseph Chen reg = <0x0 0xff320000 0x0 0x4000>; 99156f7d184SJoseph Chen 99256f7d184SJoseph Chen interrupts = <GIC_SPI 75 IRQ_TYPE_LEVEL_HIGH>, 99356f7d184SJoseph Chen <GIC_SPI 77 IRQ_TYPE_LEVEL_HIGH>, 99456f7d184SJoseph Chen <GIC_SPI 76 IRQ_TYPE_LEVEL_HIGH>; 99556f7d184SJoseph Chen interrupt-names = "GPU", "MMU", "JOB"; 99656f7d184SJoseph Chen 99756f7d184SJoseph Chen upthreshold = <40>; 99856f7d184SJoseph Chen downdifferential = <10>; 99956f7d184SJoseph Chen 100056f7d184SJoseph Chen clocks = <&cru CLK_GPU>, <&cru CLK_GPU_BRG>; 100156f7d184SJoseph Chen clock-names = "clk_gpu", "clk_gpu_brg"; 100256f7d184SJoseph Chen power-domains = <&power RK3562_PD_GPU>; 100356f7d184SJoseph Chen operating-points-v2 = <&gpu_opp_table>; 100456f7d184SJoseph Chen #cooling-cells = <2>; 100556f7d184SJoseph Chen 100656f7d184SJoseph Chen status = "disabled"; 100756f7d184SJoseph Chen }; 100856f7d184SJoseph Chen 100956f7d184SJoseph Chen gpu_opp_table: gpu-opp-table { 101056f7d184SJoseph Chen compatible = "operating-points-v2"; 101156f7d184SJoseph Chen 101256f7d184SJoseph Chen nvmem-cells = <&gpu_leakage>; 101356f7d184SJoseph Chen nvmem-cell-names = "leakage"; 101456f7d184SJoseph Chen 101556f7d184SJoseph Chen opp-300000000 { 101656f7d184SJoseph Chen opp-hz = /bits/ 64 <300000000>; 101756f7d184SJoseph Chen opp-microvolt = <900000 900000 1000000>; 101856f7d184SJoseph Chen }; 101956f7d184SJoseph Chen opp-400000000 { 102056f7d184SJoseph Chen opp-hz = /bits/ 64 <400000000>; 102156f7d184SJoseph Chen opp-microvolt = <900000 900000 1000000>; 102256f7d184SJoseph Chen }; 102356f7d184SJoseph Chen }; 102456f7d184SJoseph Chen 102556f7d184SJoseph Chen rkvdec: rkvdec@ff340100 { 102656f7d184SJoseph Chen compatible = "rockchip,rkv-decoder-vdpu382", "rockchip,rkv-decoder-v2"; 102756f7d184SJoseph Chen reg = <0x0 0xff340100 0x0 0x400>, <0x0 0xff340000 0x0 0x100>; 102856f7d184SJoseph Chen reg-names = "regs", "link"; 102956f7d184SJoseph Chen interrupts = <GIC_SPI 122 IRQ_TYPE_LEVEL_HIGH>; 103056f7d184SJoseph Chen interrupt-names = "irq_dec"; 103156f7d184SJoseph Chen clocks = <&cru ACLK_RKVDEC>, <&cru HCLK_RKVDEC>, <&cru CLK_RKVDEC_HEVC_CA>; 103256f7d184SJoseph Chen clock-names = "aclk_vcodec", "hclk_vcodec","clk_hevc_cabac"; 103356f7d184SJoseph Chen rockchip,normal-rates = <198000000>, <0>, <396000000>; 103456f7d184SJoseph Chen assigned-clocks = <&cru ACLK_RKVDEC>, <&cru CLK_RKVDEC_HEVC_CA>; 103556f7d184SJoseph Chen assigned-clock-rates = <198000000>, <396000000>; 103656f7d184SJoseph Chen resets = <&cru SRST_A_RKVDEC>, <&cru SRST_H_RKVDEC>, 103756f7d184SJoseph Chen <&cru SRST_RKVDEC_HEVC_CA>; 103856f7d184SJoseph Chen reset-names = "video_a", "video_h", "video_hevc_cabac"; 103956f7d184SJoseph Chen power-domains = <&power RK3562_PD_VDPU>; 104056f7d184SJoseph Chen iommus = <&rkvdec_mmu>; 104156f7d184SJoseph Chen rockchip,srv = <&mpp_srv>; 104256f7d184SJoseph Chen rockchip,taskqueue-node = <0>; 104356f7d184SJoseph Chen rockchip,resetgroup-node = <0>; 104456f7d184SJoseph Chen rockchip,task-capacity = <16>; 104556f7d184SJoseph Chen status = "disabled"; 104656f7d184SJoseph Chen }; 104756f7d184SJoseph Chen 104856f7d184SJoseph Chen rkvdec_mmu: iommu@ff340800 { 104956f7d184SJoseph Chen compatible = "rockchip,iommu-v2"; 105056f7d184SJoseph Chen reg = <0x0 0xff340800 0x0 0x40>, <0x0 0xff340900 0x0 0x40>; 105156f7d184SJoseph Chen interrupts = <GIC_SPI 123 IRQ_TYPE_LEVEL_HIGH>; 105256f7d184SJoseph Chen interrupt-names = "rkvdec_mmu"; 105356f7d184SJoseph Chen clocks = <&cru ACLK_RKVDEC>, <&cru HCLK_RKVDEC>; 105456f7d184SJoseph Chen clock-names = "aclk", "iface"; 105556f7d184SJoseph Chen power-domains = <&power RK3562_PD_VDPU>; 105656f7d184SJoseph Chen #iommu-cells = <0>; 105756f7d184SJoseph Chen status = "disabled"; 105856f7d184SJoseph Chen }; 105956f7d184SJoseph Chen 106056f7d184SJoseph Chen rkvenc: rkvenc@ff360000 { 106156f7d184SJoseph Chen compatible = "rockchip,rkv-encoder-vepu540c", "rockchip,rkv-encoder-v2"; 106256f7d184SJoseph Chen reg = <0x0 0xff360000 0x0 0x6000>; 106356f7d184SJoseph Chen interrupts = <GIC_SPI 136 IRQ_TYPE_LEVEL_HIGH>; 106456f7d184SJoseph Chen interrupt-names = "irq_rkvenc"; 106556f7d184SJoseph Chen clocks = <&cru ACLK_RKVENC>, <&cru HCLK_RKVENC>, <&cru CLK_RKVENC_CORE>; 106656f7d184SJoseph Chen clock-names = "aclk_vcodec", "hclk_vcodec", "clk_core"; 106756f7d184SJoseph Chen rockchip,normal-rates = <297000000>, <0>, <297000000>; 106856f7d184SJoseph Chen resets = <&cru SRST_A_RKVENC>, <&cru SRST_H_RKVENC>, 106956f7d184SJoseph Chen <&cru SRST_RKVENC_CORE>; 107056f7d184SJoseph Chen reset-names = "video_a", "video_h", "video_core"; 107156f7d184SJoseph Chen assigned-clocks = <&cru ACLK_RKVENC>, <&cru CLK_RKVENC_CORE>; 107256f7d184SJoseph Chen assigned-clock-rates = <297000000>, <297000000>; 107356f7d184SJoseph Chen power-domains = <&power RK3562_PD_VEPU>; 107456f7d184SJoseph Chen iommus = <&rkvenc_mmu>; 107556f7d184SJoseph Chen rockchip,srv = <&mpp_srv>; 107656f7d184SJoseph Chen rockchip,taskqueue-node = <1>; 107756f7d184SJoseph Chen rockchip,resetgroup-node = <1>; 107856f7d184SJoseph Chen status = "disabled"; 107956f7d184SJoseph Chen }; 108056f7d184SJoseph Chen 108156f7d184SJoseph Chen rkvenc_mmu: iommu@ff36f000 { 108256f7d184SJoseph Chen compatible = "rockchip,iommu-v2"; 108356f7d184SJoseph Chen reg = <0x0 0xff36f000 0x0 0x40>; 108456f7d184SJoseph Chen interrupts = <GIC_SPI 137 IRQ_TYPE_LEVEL_HIGH>; 108556f7d184SJoseph Chen interrupt-names = "rkvenc_mmu"; 108656f7d184SJoseph Chen clocks = <&cru ACLK_RKVENC>, <&cru HCLK_RKVENC>; 108756f7d184SJoseph Chen clock-names = "aclk", "iface"; 108856f7d184SJoseph Chen power-domains = <&power RK3562_PD_VEPU>; 108956f7d184SJoseph Chen #iommu-cells = <0>; 109056f7d184SJoseph Chen status = "disabled"; 109156f7d184SJoseph Chen }; 109256f7d184SJoseph Chen 109356f7d184SJoseph Chen mipi0_csi2: mipi0-csi2@ff380000 { 109456f7d184SJoseph Chen compatible = "rockchip,rk3562-mipi-csi2"; 109556f7d184SJoseph Chen reg = <0x0 0xff380000 0x0 0x10000>; 109656f7d184SJoseph Chen reg-names = "csihost_regs"; 109756f7d184SJoseph Chen interrupts = <GIC_SPI 82 IRQ_TYPE_LEVEL_HIGH>, 109856f7d184SJoseph Chen <GIC_SPI 83 IRQ_TYPE_LEVEL_HIGH>; 109956f7d184SJoseph Chen interrupt-names = "csi-intr1", "csi-intr2"; 110056f7d184SJoseph Chen clocks = <&cru PCLK_CSIHOST0>; 110156f7d184SJoseph Chen clock-names = "pclk_csi2host"; 110256f7d184SJoseph Chen resets = <&cru SRST_P_CSIHOST0>; 110356f7d184SJoseph Chen reset-names = "srst_csihost_p"; 110456f7d184SJoseph Chen status = "disabled"; 110556f7d184SJoseph Chen }; 110656f7d184SJoseph Chen 110756f7d184SJoseph Chen mipi1_csi2: mipi1-csi2@ff390000 { 110856f7d184SJoseph Chen compatible = "rockchip,rk3562-mipi-csi2"; 110956f7d184SJoseph Chen reg = <0x0 0xff390000 0x0 0x10000>; 111056f7d184SJoseph Chen reg-names = "csihost_regs"; 111156f7d184SJoseph Chen interrupts = <GIC_SPI 84 IRQ_TYPE_LEVEL_HIGH>, 111256f7d184SJoseph Chen <GIC_SPI 85 IRQ_TYPE_LEVEL_HIGH>; 111356f7d184SJoseph Chen interrupt-names = "csi-intr1", "csi-intr2"; 111456f7d184SJoseph Chen clocks = <&cru PCLK_CSIHOST1>; 111556f7d184SJoseph Chen clock-names = "pclk_csi2host"; 111656f7d184SJoseph Chen resets = <&cru SRST_P_CSIHOST1>; 111756f7d184SJoseph Chen reset-names = "srst_csihost_p"; 111856f7d184SJoseph Chen status = "disabled"; 111956f7d184SJoseph Chen }; 112056f7d184SJoseph Chen 112156f7d184SJoseph Chen mipi2_csi2: mipi2-csi2@ff3a0000 { 112256f7d184SJoseph Chen compatible = "rockchip,rk3562-mipi-csi2"; 112356f7d184SJoseph Chen reg = <0x0 0xff3a0000 0x0 0x10000>; 112456f7d184SJoseph Chen reg-names = "csihost_regs"; 112556f7d184SJoseph Chen interrupts = <GIC_SPI 86 IRQ_TYPE_LEVEL_HIGH>, 112656f7d184SJoseph Chen <GIC_SPI 87 IRQ_TYPE_LEVEL_HIGH>; 112756f7d184SJoseph Chen interrupt-names = "csi-intr1", "csi-intr2"; 112856f7d184SJoseph Chen clocks = <&cru PCLK_CSIHOST2>; 112956f7d184SJoseph Chen clock-names = "pclk_csi2host"; 113056f7d184SJoseph Chen resets = <&cru SRST_P_CSIHOST2>; 113156f7d184SJoseph Chen reset-names = "srst_csihost_p"; 113256f7d184SJoseph Chen status = "disabled"; 113356f7d184SJoseph Chen }; 113456f7d184SJoseph Chen 113556f7d184SJoseph Chen mipi3_csi2: mipi3-csi2@ff3b0000 { 113656f7d184SJoseph Chen compatible = "rockchip,rk3562-mipi-csi2"; 113756f7d184SJoseph Chen reg = <0x0 0xff3b0000 0x0 0x10000>; 113856f7d184SJoseph Chen reg-names = "csihost_regs"; 113956f7d184SJoseph Chen interrupts = <GIC_SPI 28 IRQ_TYPE_LEVEL_HIGH>, 114056f7d184SJoseph Chen <GIC_SPI 29 IRQ_TYPE_LEVEL_HIGH>; 114156f7d184SJoseph Chen interrupt-names = "csi-intr1", "csi-intr2"; 114256f7d184SJoseph Chen clocks = <&cru PCLK_CSIHOST3>; 114356f7d184SJoseph Chen clock-names = "pclk_csi2host"; 114456f7d184SJoseph Chen resets = <&cru SRST_P_CSIHOST3>; 114556f7d184SJoseph Chen reset-names = "srst_csihost_p"; 114656f7d184SJoseph Chen status = "disabled"; 114756f7d184SJoseph Chen }; 114856f7d184SJoseph Chen 114956f7d184SJoseph Chen csi2_dphy0_hw: csi2-dphy0-hw@ff3c0000 { 115056f7d184SJoseph Chen compatible = "rockchip,rk3562-csi2-dphy-hw"; 115156f7d184SJoseph Chen reg = <0x0 0xff3c0000 0x0 0x10000>; 115256f7d184SJoseph Chen clocks = <&cru PCLK_CSIPHY0>; 115356f7d184SJoseph Chen clock-names = "pclk"; 115456f7d184SJoseph Chen resets = <&cru SRST_P_CSIPHY0>; 115556f7d184SJoseph Chen reset-names = "srst_p_csiphy0"; 115656f7d184SJoseph Chen rockchip,grf = <&sys_grf>; 115756f7d184SJoseph Chen status = "disabled"; 115856f7d184SJoseph Chen }; 115956f7d184SJoseph Chen 116056f7d184SJoseph Chen csi2_dphy1_hw: csi2-dphy1-hw@ff3d0000 { 116156f7d184SJoseph Chen compatible = "rockchip,rk3562-csi2-dphy-hw"; 116256f7d184SJoseph Chen reg = <0x0 0xff3d0000 0x0 0x10000>; 116356f7d184SJoseph Chen clocks = <&cru PCLK_CSIPHY1>; 116456f7d184SJoseph Chen clock-names = "pclk"; 116556f7d184SJoseph Chen resets = <&cru SRST_P_CSIPHY1>; 116656f7d184SJoseph Chen reset-names = "srst_p_csiphy1"; 116756f7d184SJoseph Chen rockchip,grf = <&sys_grf>; 116856f7d184SJoseph Chen status = "disabled"; 116956f7d184SJoseph Chen }; 117056f7d184SJoseph Chen 117156f7d184SJoseph Chen rkcif: rkcif@ff3e0000 { 117256f7d184SJoseph Chen compatible = "rockchip,rk3562-cif"; 117356f7d184SJoseph Chen reg = <0x0 0xff3e0000 0x0 0x800>; 117456f7d184SJoseph Chen reg-names = "cif_regs"; 117556f7d184SJoseph Chen interrupts = <GIC_SPI 99 IRQ_TYPE_LEVEL_HIGH>; 117656f7d184SJoseph Chen interrupt-names = "cif-intr"; 117756f7d184SJoseph Chen clocks = <&cru ACLK_VICAP>, <&cru HCLK_VICAP>, <&cru DCLK_VICAP>; 117856f7d184SJoseph Chen clock-names = "aclk_cif", "hclk_cif", "dclk_cif"; 117956f7d184SJoseph Chen resets = <&cru SRST_A_VICAP>, <&cru SRST_H_VICAP>, <&cru SRST_D_VICAP>, 118056f7d184SJoseph Chen <&cru SRST_I0_VICAP>, <&cru SRST_I1_VICAP>, <&cru SRST_I2_VICAP>, 118156f7d184SJoseph Chen <&cru SRST_I3_VICAP>; 118256f7d184SJoseph Chen reset-names = "rst_cif_a", "rst_cif_h", "rst_cif_d", 118356f7d184SJoseph Chen "rst_cif_i0", "rst_cif_i1", "rst_cif_i2", 118456f7d184SJoseph Chen "rst_cif_i3"; 118556f7d184SJoseph Chen power-domains = <&power RK3562_PD_VI>; 118656f7d184SJoseph Chen rockchip,grf = <&sys_grf>; 118756f7d184SJoseph Chen iommus = <&rkcif_mmu>; 118856f7d184SJoseph Chen status = "disabled"; 118956f7d184SJoseph Chen }; 119056f7d184SJoseph Chen 119156f7d184SJoseph Chen rkcif_mmu: iommu@ff3e0800 { 119256f7d184SJoseph Chen compatible = "rockchip,iommu-v2"; 119356f7d184SJoseph Chen reg = <0x0 0xff3e0800 0x0 0x100>; 119456f7d184SJoseph Chen interrupts = <GIC_SPI 100 IRQ_TYPE_LEVEL_HIGH>; 119556f7d184SJoseph Chen interrupt-names = "cif_mmu"; 119656f7d184SJoseph Chen clocks = <&cru ACLK_VICAP>, <&cru HCLK_VICAP>; 119756f7d184SJoseph Chen clock-names = "aclk", "iface"; 119856f7d184SJoseph Chen power-domains = <&power RK3562_PD_VI>; 119956f7d184SJoseph Chen rockchip,disable-mmu-reset; 120056f7d184SJoseph Chen #iommu-cells = <0>; 120156f7d184SJoseph Chen status = "disabled"; 120256f7d184SJoseph Chen }; 120356f7d184SJoseph Chen 120456f7d184SJoseph Chen rkisp: isp@ff3f0000 { 120556f7d184SJoseph Chen compatible = "rockchip,rk3562-rkisp"; 120656f7d184SJoseph Chen reg = <0x0 0xff3f0000 0x0 0x7f00>; 120756f7d184SJoseph Chen interrupts = <GIC_SPI 88 IRQ_TYPE_LEVEL_HIGH>, 120856f7d184SJoseph Chen <GIC_SPI 89 IRQ_TYPE_LEVEL_HIGH>, 120956f7d184SJoseph Chen <GIC_SPI 90 IRQ_TYPE_LEVEL_HIGH>; 121056f7d184SJoseph Chen interrupt-names = "mipi_irq", "mi_irq", "isp_irq"; 121156f7d184SJoseph Chen clocks = <&cru ACLK_ISP>, <&cru HCLK_ISP>, <&cru CLK_ISP>; 121256f7d184SJoseph Chen clock-names = "aclk_isp", "hclk_isp", "clk_isp_core"; 121356f7d184SJoseph Chen power-domains = <&power RK3562_PD_VI>; 121456f7d184SJoseph Chen iommus = <&rkisp_mmu>; 121556f7d184SJoseph Chen status = "disabled"; 121656f7d184SJoseph Chen }; 121756f7d184SJoseph Chen 121856f7d184SJoseph Chen rkisp_mmu: iommu@ff3f7f00 { 121956f7d184SJoseph Chen compatible = "rockchip,iommu-v2"; 122056f7d184SJoseph Chen reg = <0x0 0xff3f7f00 0x0 0x100>; 122156f7d184SJoseph Chen interrupts = <GIC_SPI 91 IRQ_TYPE_LEVEL_HIGH>; 122256f7d184SJoseph Chen interrupt-names = "isp_mmu"; 122356f7d184SJoseph Chen clocks = <&cru ACLK_RGA>, <&cru HCLK_RGA>; 122456f7d184SJoseph Chen clock-names = "aclk", "iface"; 122556f7d184SJoseph Chen rockchip,disable-mmu-reset; 122656f7d184SJoseph Chen #iommu-cells = <0>; 122756f7d184SJoseph Chen power-domains = <&power RK3562_PD_VI>; 122856f7d184SJoseph Chen status = "disabled"; 122956f7d184SJoseph Chen }; 123056f7d184SJoseph Chen 123156f7d184SJoseph Chen vop: vop@ff400000 { 123256f7d184SJoseph Chen compatible = "rockchip,rk3562-vop"; 123356f7d184SJoseph Chen reg = <0x0 0xff400000 0x0 0x2000>, <0x0 0xff405000 0x0 0x1000>; 123456f7d184SJoseph Chen reg-names = "regs", "gamma_lut"; 123556f7d184SJoseph Chen interrupts = <GIC_SPI 135 IRQ_TYPE_LEVEL_HIGH>; 123656f7d184SJoseph Chen clocks = <&cru ACLK_VOP>, 123756f7d184SJoseph Chen <&cru HCLK_VOP>, 123856f7d184SJoseph Chen <&cru DCLK_VOP>, 123956f7d184SJoseph Chen <&cru DCLK_VOP1>; 124056f7d184SJoseph Chen clock-names = "aclk_vop", 124156f7d184SJoseph Chen "hclk_vop", 124256f7d184SJoseph Chen "dclk_vp0", 124356f7d184SJoseph Chen "dclk_vp1"; 124456f7d184SJoseph Chen resets = <&cru SRST_A_VOP>, 124556f7d184SJoseph Chen <&cru SRST_H_VOP>, 124656f7d184SJoseph Chen <&cru SRST_D_VOP>, 124756f7d184SJoseph Chen <&cru SRST_D_VOP1>; 124856f7d184SJoseph Chen reset-names = "axi", 124956f7d184SJoseph Chen "ahb", 125056f7d184SJoseph Chen "dclk_vp0", 125156f7d184SJoseph Chen "dclk_vp1"; 125256f7d184SJoseph Chen iommus = <&vop_mmu>; 125356f7d184SJoseph Chen power-domains = <&power RK3562_PD_VO>; 125456f7d184SJoseph Chen rockchip,grf = <&sys_grf>; 125556f7d184SJoseph Chen status = "disabled"; 125656f7d184SJoseph Chen 125756f7d184SJoseph Chen vop_out: ports { 125856f7d184SJoseph Chen #address-cells = <1>; 125956f7d184SJoseph Chen #size-cells = <0>; 126056f7d184SJoseph Chen 126156f7d184SJoseph Chen port@0 { 126256f7d184SJoseph Chen #address-cells = <1>; 126356f7d184SJoseph Chen #size-cells = <0>; 126456f7d184SJoseph Chen reg = <0>; 126556f7d184SJoseph Chen 126656f7d184SJoseph Chen vp0_out_rgb: endpoint@0 { 126756f7d184SJoseph Chen reg = <0>; 126856f7d184SJoseph Chen remote-endpoint = <&rgb_in_vp0>; 126956f7d184SJoseph Chen }; 127056f7d184SJoseph Chen 127156f7d184SJoseph Chen vp0_out_dsi: endpoint@1 { 127256f7d184SJoseph Chen reg = <1>; 127356f7d184SJoseph Chen remote-endpoint = <&dsi_in_vp0>; 127456f7d184SJoseph Chen }; 127556f7d184SJoseph Chen 127656f7d184SJoseph Chen vp0_out_lvds: endpoint@2 { 127756f7d184SJoseph Chen reg = <2>; 127856f7d184SJoseph Chen remote-endpoint = <&lvds_in_vp0>; 127956f7d184SJoseph Chen }; 128056f7d184SJoseph Chen }; 128156f7d184SJoseph Chen 128256f7d184SJoseph Chen port@1 { 128356f7d184SJoseph Chen #address-cells = <1>; 128456f7d184SJoseph Chen #size-cells = <0>; 128556f7d184SJoseph Chen reg = <1>; 128656f7d184SJoseph Chen 128756f7d184SJoseph Chen vp1_out_rgb: endpoint@0 { 128856f7d184SJoseph Chen reg = <0>; 128956f7d184SJoseph Chen remote-endpoint = <&rgb_in_vp1>; 129056f7d184SJoseph Chen }; 129156f7d184SJoseph Chen 129256f7d184SJoseph Chen vp1_out_dsi: endpoint@1 { 129356f7d184SJoseph Chen reg = <1>; 129456f7d184SJoseph Chen remote-endpoint = <&dsi_in_vp1>; 129556f7d184SJoseph Chen }; 129656f7d184SJoseph Chen 129756f7d184SJoseph Chen vp1_out_lvds: endpoint@2 { 129856f7d184SJoseph Chen reg = <2>; 129956f7d184SJoseph Chen remote-endpoint = <&lvds_in_vp1>; 130056f7d184SJoseph Chen }; 130156f7d184SJoseph Chen }; 130256f7d184SJoseph Chen }; 130356f7d184SJoseph Chen }; 130456f7d184SJoseph Chen 130556f7d184SJoseph Chen vop_mmu: iommu@ff407e00 { 130656f7d184SJoseph Chen compatible = "rockchip,iommu-v2"; 130756f7d184SJoseph Chen reg = <0x0 0xff407e00 0x0 0x100>; 130856f7d184SJoseph Chen interrupts = <GIC_SPI 135 IRQ_TYPE_LEVEL_HIGH>; 130956f7d184SJoseph Chen interrupt-names = "vop_mmu"; 131056f7d184SJoseph Chen clocks = <&cru ACLK_VOP>, <&cru HCLK_VOP>; 131156f7d184SJoseph Chen clock-names = "aclk", "iface"; 131256f7d184SJoseph Chen #iommu-cells = <0>; 131356f7d184SJoseph Chen rockchip,disable-device-link-resume; 131456f7d184SJoseph Chen rockchip,shootdown-entire; 131556f7d184SJoseph Chen status = "disabled"; 131656f7d184SJoseph Chen }; 131756f7d184SJoseph Chen 131856f7d184SJoseph Chen rga2: rga@ff440000 { 131956f7d184SJoseph Chen compatible = "rockchip,rga2_core0"; 132056f7d184SJoseph Chen reg = <0x0 0xff440000 0x0 0x1000>; 132156f7d184SJoseph Chen interrupts = <GIC_SPI 126 IRQ_TYPE_LEVEL_HIGH>; 132256f7d184SJoseph Chen interrupt-names = "rga2_irq"; 132356f7d184SJoseph Chen clocks = <&cru ACLK_RGA>, <&cru HCLK_RGA>, <&cru CLK_RGA_CORE>; 132456f7d184SJoseph Chen clock-names = "aclk_rga2", "hclk_rga2", "clk_rga2"; 132556f7d184SJoseph Chen iommus = <&rga2_mmu>; 132656f7d184SJoseph Chen power-domains = <&power RK3562_PD_RGA>; 132756f7d184SJoseph Chen status = "disabled"; 132856f7d184SJoseph Chen }; 132956f7d184SJoseph Chen 133056f7d184SJoseph Chen rga2_mmu: iommu@ff440f00 { 133156f7d184SJoseph Chen compatible = "rockchip,iommu-v2"; 133256f7d184SJoseph Chen reg = <0x0 0xff440f00 0x0 0x100>; 133356f7d184SJoseph Chen interrupts = <GIC_SPI 126 IRQ_TYPE_LEVEL_HIGH>; 133456f7d184SJoseph Chen interrupt-names = "rga2_mmu"; 133556f7d184SJoseph Chen clocks = <&cru ACLK_RGA>, <&cru HCLK_RGA>; 133656f7d184SJoseph Chen clock-names = "aclk", "iface"; 133756f7d184SJoseph Chen #iommu-cells = <0>; 133856f7d184SJoseph Chen power-domains = <&power RK3562_PD_RGA>; 133956f7d184SJoseph Chen status = "disabled"; 134056f7d184SJoseph Chen }; 134156f7d184SJoseph Chen 134256f7d184SJoseph Chen jpegd: jpegd@ff450000 { 134356f7d184SJoseph Chen compatible = "rockchip,rkv-jpeg-decoder-v1"; 134456f7d184SJoseph Chen reg = <0x0 0xff450000 0x0 0x400>; 134556f7d184SJoseph Chen interrupts = <GIC_SPI 121 IRQ_TYPE_LEVEL_HIGH>; 134656f7d184SJoseph Chen clocks = <&cru ACLK_JDEC>, <&cru HCLK_JDEC>; 134756f7d184SJoseph Chen clock-names = "aclk_vcodec", "hclk_vcodec"; 134856f7d184SJoseph Chen rockchip,disable-auto-freq; 134956f7d184SJoseph Chen resets = <&cru SRST_A_JDEC>, <&cru SRST_H_JDEC>; 135056f7d184SJoseph Chen reset-names = "video_a", "video_h"; 135156f7d184SJoseph Chen power-domains = <&power RK3562_PD_RGA>; 135256f7d184SJoseph Chen iommus = <&jpegd_mmu>; 135356f7d184SJoseph Chen rockchip,srv = <&mpp_srv>; 135456f7d184SJoseph Chen rockchip,taskqueue-node = <2>; 135556f7d184SJoseph Chen rockchip,resetgroup-node = <2>; 135656f7d184SJoseph Chen status = "disabled"; 135756f7d184SJoseph Chen }; 135856f7d184SJoseph Chen 135956f7d184SJoseph Chen jpegd_mmu: iommu@ff450480 { 136056f7d184SJoseph Chen compatible = "rockchip,iommu-v2"; 136156f7d184SJoseph Chen reg = <0x0 0xff450480 0x0 0x40>; 136256f7d184SJoseph Chen interrupts = <GIC_SPI 120 IRQ_TYPE_LEVEL_HIGH>; 136356f7d184SJoseph Chen interrupt-names = "jpegd_mmu"; 136456f7d184SJoseph Chen clock-names = "aclk", "iface"; 136556f7d184SJoseph Chen clocks = <&cru ACLK_JDEC>, <&cru HCLK_JDEC>; 136656f7d184SJoseph Chen power-domains = <&power RK3562_PD_RGA>; 136756f7d184SJoseph Chen #iommu-cells = <0>; 136856f7d184SJoseph Chen status = "disabled"; 136956f7d184SJoseph Chen }; 137056f7d184SJoseph Chen 137156f7d184SJoseph Chen pcie2x1: pcie@ff500000 { 137256f7d184SJoseph Chen compatible = "rockchip,rk3562-pcie", "snps,dw-pcie"; 137356f7d184SJoseph Chen #address-cells = <3>; 137456f7d184SJoseph Chen #size-cells = <2>; 137556f7d184SJoseph Chen bus-range = <0x0 0xff>; 137656f7d184SJoseph Chen clocks = <&cru ACLK_PCIE20_MST>, <&cru ACLK_PCIE20_SLV>, 137756f7d184SJoseph Chen <&cru ACLK_PCIE20_DBI>, <&cru PCLK_PCIE20>, 137856f7d184SJoseph Chen <&cru CLK_PCIE20_AUX>; 137956f7d184SJoseph Chen clock-names = "aclk_mst", "aclk_slv", 138056f7d184SJoseph Chen "aclk_dbi", "pclk", "aux"; 138156f7d184SJoseph Chen device_type = "pci"; 138256f7d184SJoseph Chen interrupts = <GIC_SPI 146 IRQ_TYPE_LEVEL_HIGH>, 138356f7d184SJoseph Chen <GIC_SPI 145 IRQ_TYPE_LEVEL_HIGH>, 138456f7d184SJoseph Chen <GIC_SPI 144 IRQ_TYPE_LEVEL_HIGH>, 138556f7d184SJoseph Chen <GIC_SPI 143 IRQ_TYPE_LEVEL_HIGH>, 138656f7d184SJoseph Chen <GIC_SPI 142 IRQ_TYPE_LEVEL_HIGH>, 138756f7d184SJoseph Chen <GIC_SPI 141 IRQ_TYPE_LEVEL_HIGH>; 138856f7d184SJoseph Chen interrupt-names = "msi", "pmc", "sys", "legacy", "msg", "err"; 138956f7d184SJoseph Chen #interrupt-cells = <1>; 139056f7d184SJoseph Chen interrupt-map-mask = <0 0 0 7>; 139156f7d184SJoseph Chen interrupt-map = <0 0 0 1 &pcie2x1_intc 0>, 139256f7d184SJoseph Chen <0 0 0 2 &pcie2x1_intc 1>, 139356f7d184SJoseph Chen <0 0 0 3 &pcie2x1_intc 2>, 139456f7d184SJoseph Chen <0 0 0 4 &pcie2x1_intc 3>; 139556f7d184SJoseph Chen linux,pci-domain = <0>; 139656f7d184SJoseph Chen num-ib-windows = <8>; 139756f7d184SJoseph Chen num-viewport = <8>; 139856f7d184SJoseph Chen num-ob-windows = <2>; 139956f7d184SJoseph Chen max-link-speed = <2>; 140056f7d184SJoseph Chen num-lanes = <1>; 140156f7d184SJoseph Chen phys = <&combphy_pu PHY_TYPE_PCIE>; 140256f7d184SJoseph Chen phy-names = "pcie-phy"; 140356f7d184SJoseph Chen ranges = <0x00000800 0x0 0xfc000000 0x0 0xfc000000 0x0 0x100000 140456f7d184SJoseph Chen 0x81000000 0x0 0xfc100000 0x0 0xfc100000 0x0 0x100000 140556f7d184SJoseph Chen 0x82000000 0x0 0xfc200000 0x0 0xfc200000 0x0 0x1e00000 140656f7d184SJoseph Chen 0xc3000000 0x3 0x00000000 0x3 0x00000000 0x0 0x40000000>; 140756f7d184SJoseph Chen reg = <0x0 0xfe000000 0x0 0x400000>, 140856f7d184SJoseph Chen <0x0 0xff500000 0x0 0x10000>; 140956f7d184SJoseph Chen reg-names = "pcie-dbi", "pcie-apb"; 141056f7d184SJoseph Chen resets = <&cru SRST_PCIE20_POWERUP>; 141156f7d184SJoseph Chen reset-names = "pipe"; 141256f7d184SJoseph Chen status = "disabled"; 141356f7d184SJoseph Chen 141456f7d184SJoseph Chen pcie2x1_intc: legacy-interrupt-controller { 141556f7d184SJoseph Chen interrupt-controller; 141656f7d184SJoseph Chen #address-cells = <0>; 141756f7d184SJoseph Chen #interrupt-cells = <1>; 141856f7d184SJoseph Chen interrupt-parent = <&gic>; 141956f7d184SJoseph Chen }; 142056f7d184SJoseph Chen }; 142156f7d184SJoseph Chen 142256f7d184SJoseph Chen spi1: spi@ff640000 { 142356f7d184SJoseph Chen compatible = "rockchip,rk3066-spi"; 142456f7d184SJoseph Chen reg = <0x0 0xff640000 0x0 0x1000>; 142556f7d184SJoseph Chen interrupts = <GIC_SPI 53 IRQ_TYPE_LEVEL_HIGH>; 142656f7d184SJoseph Chen #address-cells = <1>; 142756f7d184SJoseph Chen #size-cells = <0>; 142856f7d184SJoseph Chen clocks = <&cru CLK_SPI1>, <&cru PCLK_SPI1>; 142956f7d184SJoseph Chen clock-names = "spiclk", "apb_pclk"; 143056f7d184SJoseph Chen dmas = <&dmac 15>, <&dmac 14>; 143156f7d184SJoseph Chen dma-names = "tx", "rx"; 143256f7d184SJoseph Chen pinctrl-names = "default"; 143356f7d184SJoseph Chen pinctrl-0 = <&spi1m0_csn0 &spi1m0_csn1 &spi1m0_pins>; 143456f7d184SJoseph Chen num-cs = <2>; 143556f7d184SJoseph Chen status = "disabled"; 143656f7d184SJoseph Chen }; 143756f7d184SJoseph Chen 143856f7d184SJoseph Chen spi2: spi@ff650000 { 143956f7d184SJoseph Chen compatible = "rockchip,rk3066-spi"; 144056f7d184SJoseph Chen reg = <0x0 0xff650000 0x0 0x1000>; 144156f7d184SJoseph Chen interrupts = <GIC_SPI 54 IRQ_TYPE_LEVEL_HIGH>; 144256f7d184SJoseph Chen #address-cells = <1>; 144356f7d184SJoseph Chen #size-cells = <0>; 144456f7d184SJoseph Chen clocks = <&cru CLK_SPI2>, <&cru PCLK_SPI2>; 144556f7d184SJoseph Chen clock-names = "spiclk", "apb_pclk"; 144656f7d184SJoseph Chen dmas = <&dmac 17>, <&dmac 16>; 144756f7d184SJoseph Chen dma-names = "tx", "rx"; 144856f7d184SJoseph Chen pinctrl-names = "default"; 144956f7d184SJoseph Chen pinctrl-0 = <&spi2m0_csn0 &spi2m0_csn1 &spi2m0_pins>; 145056f7d184SJoseph Chen num-cs = <2>; 145156f7d184SJoseph Chen status = "disabled"; 145256f7d184SJoseph Chen }; 145356f7d184SJoseph Chen 145456f7d184SJoseph Chen uart1: serial@ff670000 { 145556f7d184SJoseph Chen compatible = "rockchip,rk3562-uart", "snps,dw-apb-uart"; 145656f7d184SJoseph Chen reg = <0x0 0xff670000 0x0 0x100>; 145756f7d184SJoseph Chen interrupts = <GIC_SPI 31 IRQ_TYPE_LEVEL_HIGH>; 145856f7d184SJoseph Chen clocks = <&cru SCLK_UART1>, <&cru PCLK_UART1>; 145956f7d184SJoseph Chen clock-names = "baudclk", "apb_pclk"; 146056f7d184SJoseph Chen reg-shift = <2>; 146156f7d184SJoseph Chen reg-io-width = <4>; 146256f7d184SJoseph Chen dmas = <&dmac 1>, <&dmac 10>; 146356f7d184SJoseph Chen status = "disabled"; 146456f7d184SJoseph Chen }; 146556f7d184SJoseph Chen 146656f7d184SJoseph Chen uart2: serial@ff680000 { 146756f7d184SJoseph Chen compatible = "rockchip,rk3562-uart", "snps,dw-apb-uart"; 146856f7d184SJoseph Chen reg = <0x0 0xff680000 0x0 0x100>; 146956f7d184SJoseph Chen interrupts = <GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>; 147056f7d184SJoseph Chen clocks = <&cru SCLK_UART2>, <&cru PCLK_UART2>; 147156f7d184SJoseph Chen clock-names = "baudclk", "apb_pclk"; 147256f7d184SJoseph Chen reg-shift = <2>; 147356f7d184SJoseph Chen reg-io-width = <4>; 147456f7d184SJoseph Chen dmas = <&dmac 2>; 147556f7d184SJoseph Chen status = "disabled"; 147656f7d184SJoseph Chen }; 147756f7d184SJoseph Chen 147856f7d184SJoseph Chen uart3: serial@ff690000 { 147956f7d184SJoseph Chen compatible = "rockchip,rk3562-uart", "snps,dw-apb-uart"; 148056f7d184SJoseph Chen reg = <0x0 0xff690000 0x0 0x100>; 148156f7d184SJoseph Chen interrupts = <GIC_SPI 33 IRQ_TYPE_LEVEL_HIGH>; 148256f7d184SJoseph Chen clocks = <&cru SCLK_UART3>, <&cru PCLK_UART3>; 148356f7d184SJoseph Chen clock-names = "baudclk", "apb_pclk"; 148456f7d184SJoseph Chen reg-shift = <2>; 148556f7d184SJoseph Chen reg-io-width = <4>; 148656f7d184SJoseph Chen dmas = <&dmac 3>; 148756f7d184SJoseph Chen status = "disabled"; 148856f7d184SJoseph Chen }; 148956f7d184SJoseph Chen 149056f7d184SJoseph Chen uart4: serial@ff6a0000 { 149156f7d184SJoseph Chen compatible = "rockchip,rk3562-uart", "snps,dw-apb-uart"; 149256f7d184SJoseph Chen reg = <0x0 0xff6a0000 0x0 0x100>; 149356f7d184SJoseph Chen interrupts = <GIC_SPI 34 IRQ_TYPE_LEVEL_HIGH>; 149456f7d184SJoseph Chen clocks = <&cru SCLK_UART4>, <&cru PCLK_UART4>; 149556f7d184SJoseph Chen clock-names = "baudclk", "apb_pclk"; 149656f7d184SJoseph Chen reg-shift = <2>; 149756f7d184SJoseph Chen reg-io-width = <4>; 149856f7d184SJoseph Chen dmas = <&dmac 4>; 149956f7d184SJoseph Chen status = "disabled"; 150056f7d184SJoseph Chen }; 150156f7d184SJoseph Chen 150256f7d184SJoseph Chen uart5: serial@ff6b0000 { 150356f7d184SJoseph Chen compatible = "rockchip,rk3562-uart", "snps,dw-apb-uart"; 150456f7d184SJoseph Chen reg = <0x0 0xff6b0000 0x0 0x100>; 150556f7d184SJoseph Chen interrupts = <GIC_SPI 35 IRQ_TYPE_LEVEL_HIGH>; 150656f7d184SJoseph Chen clocks = <&cru SCLK_UART5>, <&cru PCLK_UART5>; 150756f7d184SJoseph Chen clock-names = "baudclk", "apb_pclk"; 150856f7d184SJoseph Chen reg-shift = <2>; 150956f7d184SJoseph Chen reg-io-width = <4>; 151056f7d184SJoseph Chen dmas = <&dmac 5>, <&dmac 11>; 151156f7d184SJoseph Chen status = "disabled"; 151256f7d184SJoseph Chen }; 151356f7d184SJoseph Chen 151456f7d184SJoseph Chen uart6: serial@ff6c0000 { 151556f7d184SJoseph Chen compatible = "rockchip,rk3562-uart", "snps,dw-apb-uart"; 151656f7d184SJoseph Chen reg = <0x0 0xff6c0000 0x0 0x100>; 151756f7d184SJoseph Chen interrupts = <GIC_SPI 36 IRQ_TYPE_LEVEL_HIGH>; 151856f7d184SJoseph Chen clocks = <&cru SCLK_UART6>, <&cru PCLK_UART6>; 151956f7d184SJoseph Chen clock-names = "baudclk", "apb_pclk"; 152056f7d184SJoseph Chen reg-shift = <2>; 152156f7d184SJoseph Chen reg-io-width = <4>; 152256f7d184SJoseph Chen dmas = <&dmac 6>; 152356f7d184SJoseph Chen status = "disabled"; 152456f7d184SJoseph Chen }; 152556f7d184SJoseph Chen 152656f7d184SJoseph Chen uart7: serial@ff6d0000 { 152756f7d184SJoseph Chen compatible = "rockchip,rk3562-uart", "snps,dw-apb-uart"; 152856f7d184SJoseph Chen reg = <0x0 0xff6d0000 0x0 0x100>; 152956f7d184SJoseph Chen interrupts = <GIC_SPI 37 IRQ_TYPE_LEVEL_HIGH>; 153056f7d184SJoseph Chen clocks = <&cru SCLK_UART7>, <&cru PCLK_UART7>; 153156f7d184SJoseph Chen clock-names = "baudclk", "apb_pclk"; 153256f7d184SJoseph Chen reg-shift = <2>; 153356f7d184SJoseph Chen reg-io-width = <4>; 153456f7d184SJoseph Chen dmas = <&dmac 7>; 153556f7d184SJoseph Chen status = "disabled"; 153656f7d184SJoseph Chen }; 153756f7d184SJoseph Chen 153856f7d184SJoseph Chen uart8: serial@ff6e0000 { 153956f7d184SJoseph Chen compatible = "rockchip,rk3562-uart", "snps,dw-apb-uart"; 154056f7d184SJoseph Chen reg = <0x0 0xff6e0000 0x0 0x100>; 154156f7d184SJoseph Chen interrupts = <GIC_SPI 38 IRQ_TYPE_LEVEL_HIGH>; 154256f7d184SJoseph Chen clocks = <&cru SCLK_UART8>, <&cru PCLK_UART8>; 154356f7d184SJoseph Chen clock-names = "baudclk", "apb_pclk"; 154456f7d184SJoseph Chen reg-shift = <2>; 154556f7d184SJoseph Chen reg-io-width = <4>; 154656f7d184SJoseph Chen dmas = <&dmac 8>; 154756f7d184SJoseph Chen status = "disabled"; 154856f7d184SJoseph Chen }; 154956f7d184SJoseph Chen 155056f7d184SJoseph Chen uart9: serial@ff6f0000 { 155156f7d184SJoseph Chen compatible = "rockchip,rk3562-uart", "snps,dw-apb-uart"; 155256f7d184SJoseph Chen reg = <0x0 0xff6f0000 0x0 0x100>; 155356f7d184SJoseph Chen interrupts = <GIC_SPI 39 IRQ_TYPE_LEVEL_HIGH>; 155456f7d184SJoseph Chen clocks = <&cru SCLK_UART9>, <&cru PCLK_UART9>; 155556f7d184SJoseph Chen clock-names = "baudclk", "apb_pclk"; 155656f7d184SJoseph Chen reg-shift = <2>; 155756f7d184SJoseph Chen reg-io-width = <4>; 155856f7d184SJoseph Chen dmas = <&dmac 9>; 155956f7d184SJoseph Chen status = "disabled"; 156056f7d184SJoseph Chen }; 156156f7d184SJoseph Chen 156256f7d184SJoseph Chen pwm4: pwm@ff700000 { 156356f7d184SJoseph Chen compatible = "rockchip,rk3562-pwm", "rockchip,rk3328-pwm"; 156456f7d184SJoseph Chen reg = <0x0 0xff700000 0x0 0x10>; 156556f7d184SJoseph Chen #pwm-cells = <3>; 156656f7d184SJoseph Chen pinctrl-names = "active"; 156756f7d184SJoseph Chen pinctrl-0 = <&pwm4m0_pins>; 156856f7d184SJoseph Chen clocks = <&cru CLK_PWM1_PERI>, <&cru PCLK_PWM1_PERI>; 156956f7d184SJoseph Chen clock-names = "pwm", "pclk"; 157056f7d184SJoseph Chen status = "disabled"; 157156f7d184SJoseph Chen }; 157256f7d184SJoseph Chen 157356f7d184SJoseph Chen pwm5: pwm@ff700010 { 157456f7d184SJoseph Chen compatible = "rockchip,rk3562-pwm", "rockchip,rk3328-pwm"; 157556f7d184SJoseph Chen reg = <0x0 0xff700010 0x0 0x10>; 157656f7d184SJoseph Chen #pwm-cells = <3>; 157756f7d184SJoseph Chen pinctrl-names = "active"; 157856f7d184SJoseph Chen pinctrl-0 = <&pwm5m0_pins>; 157956f7d184SJoseph Chen clocks = <&cru CLK_PWM1_PERI>, <&cru PCLK_PWM1_PERI>; 158056f7d184SJoseph Chen clock-names = "pwm", "pclk"; 158156f7d184SJoseph Chen status = "disabled"; 158256f7d184SJoseph Chen }; 158356f7d184SJoseph Chen 158456f7d184SJoseph Chen pwm6: pwm@ff700020 { 158556f7d184SJoseph Chen compatible = "rockchip,rk3562-pwm", "rockchip,rk3328-pwm"; 158656f7d184SJoseph Chen reg = <0x0 0xff700020 0x0 0x10>; 158756f7d184SJoseph Chen #pwm-cells = <3>; 158856f7d184SJoseph Chen pinctrl-names = "active"; 158956f7d184SJoseph Chen pinctrl-0 = <&pwm6m0_pins>; 159056f7d184SJoseph Chen clocks = <&cru CLK_PWM1_PERI>, <&cru PCLK_PWM1_PERI>; 159156f7d184SJoseph Chen clock-names = "pwm", "pclk"; 159256f7d184SJoseph Chen status = "disabled"; 159356f7d184SJoseph Chen }; 159456f7d184SJoseph Chen 159556f7d184SJoseph Chen pwm7: pwm@ff700030 { 159656f7d184SJoseph Chen compatible = "rockchip,rk3562-pwm", "rockchip,rk3328-pwm"; 159756f7d184SJoseph Chen reg = <0x0 0xff700030 0x0 0x10>; 159856f7d184SJoseph Chen interrupts = <GIC_SPI 22 IRQ_TYPE_LEVEL_HIGH>, 159956f7d184SJoseph Chen <GIC_SPI 23 IRQ_TYPE_LEVEL_HIGH>; 160056f7d184SJoseph Chen #pwm-cells = <3>; 160156f7d184SJoseph Chen pinctrl-names = "active"; 160256f7d184SJoseph Chen pinctrl-0 = <&pwm7m0_pins>; 160356f7d184SJoseph Chen clocks = <&cru CLK_PWM1_PERI>, <&cru PCLK_PWM1_PERI>; 160456f7d184SJoseph Chen clock-names = "pwm", "pclk"; 160556f7d184SJoseph Chen status = "disabled"; 160656f7d184SJoseph Chen }; 160756f7d184SJoseph Chen 160856f7d184SJoseph Chen pwm8: pwm@ff710000 { 160956f7d184SJoseph Chen compatible = "rockchip,rk3562-pwm", "rockchip,rk3328-pwm"; 161056f7d184SJoseph Chen reg = <0x0 0xff710000 0x0 0x10>; 161156f7d184SJoseph Chen #pwm-cells = <3>; 161256f7d184SJoseph Chen pinctrl-names = "active"; 161356f7d184SJoseph Chen pinctrl-0 = <&pwm8m0_pins>; 161456f7d184SJoseph Chen clocks = <&cru CLK_PWM2_PERI>, <&cru PCLK_PWM2_PERI>; 161556f7d184SJoseph Chen clock-names = "pwm", "pclk"; 161656f7d184SJoseph Chen status = "disabled"; 161756f7d184SJoseph Chen }; 161856f7d184SJoseph Chen 161956f7d184SJoseph Chen pwm9: pwm@ff710010 { 162056f7d184SJoseph Chen compatible = "rockchip,rk3562-pwm", "rockchip,rk3328-pwm"; 162156f7d184SJoseph Chen reg = <0x0 0xff710010 0x0 0x10>; 162256f7d184SJoseph Chen #pwm-cells = <3>; 162356f7d184SJoseph Chen pinctrl-names = "active"; 162456f7d184SJoseph Chen pinctrl-0 = <&pwm9m0_pins>; 162556f7d184SJoseph Chen clocks = <&cru CLK_PWM2_PERI>, <&cru PCLK_PWM2_PERI>; 162656f7d184SJoseph Chen clock-names = "pwm", "pclk"; 162756f7d184SJoseph Chen status = "disabled"; 162856f7d184SJoseph Chen }; 162956f7d184SJoseph Chen 163056f7d184SJoseph Chen pwm10: pwm@ff710020 { 163156f7d184SJoseph Chen compatible = "rockchip,rk3562-pwm", "rockchip,rk3328-pwm"; 163256f7d184SJoseph Chen reg = <0x0 0xff710020 0x0 0x10>; 163356f7d184SJoseph Chen #pwm-cells = <3>; 163456f7d184SJoseph Chen pinctrl-names = "active"; 163556f7d184SJoseph Chen pinctrl-0 = <&pwm10m0_pins>; 163656f7d184SJoseph Chen clocks = <&cru CLK_PWM2_PERI>, <&cru PCLK_PWM2_PERI>; 163756f7d184SJoseph Chen clock-names = "pwm", "pclk"; 163856f7d184SJoseph Chen status = "disabled"; 163956f7d184SJoseph Chen }; 164056f7d184SJoseph Chen 164156f7d184SJoseph Chen pwm11: pwm@ff710030 { 164256f7d184SJoseph Chen compatible = "rockchip,rk3562-pwm", "rockchip,rk3328-pwm"; 164356f7d184SJoseph Chen reg = <0x0 0xff710030 0x0 0x10>; 164456f7d184SJoseph Chen interrupts = <GIC_SPI 24 IRQ_TYPE_LEVEL_HIGH>, 164556f7d184SJoseph Chen <GIC_SPI 25 IRQ_TYPE_LEVEL_HIGH>; 164656f7d184SJoseph Chen #pwm-cells = <3>; 164756f7d184SJoseph Chen pinctrl-names = "active"; 164856f7d184SJoseph Chen pinctrl-0 = <&pwm11m0_pins>; 164956f7d184SJoseph Chen clocks = <&cru CLK_PWM2_PERI>, <&cru PCLK_PWM2_PERI>; 165056f7d184SJoseph Chen clock-names = "pwm", "pclk"; 165156f7d184SJoseph Chen status = "disabled"; 165256f7d184SJoseph Chen }; 165356f7d184SJoseph Chen 165456f7d184SJoseph Chen pwm12: pwm@ff720000 { 165556f7d184SJoseph Chen compatible = "rockchip,rk3562-pwm", "rockchip,rk3328-pwm"; 165656f7d184SJoseph Chen reg = <0x0 0xff720000 0x0 0x10>; 165756f7d184SJoseph Chen #pwm-cells = <3>; 165856f7d184SJoseph Chen pinctrl-names = "active"; 165956f7d184SJoseph Chen pinctrl-0 = <&pwm12m0_pins>; 166056f7d184SJoseph Chen clocks = <&cru CLK_PWM3_PERI>, <&cru PCLK_PWM3_PERI>; 166156f7d184SJoseph Chen clock-names = "pwm", "pclk"; 166256f7d184SJoseph Chen status = "disabled"; 166356f7d184SJoseph Chen }; 166456f7d184SJoseph Chen 166556f7d184SJoseph Chen pwm13: pwm@ff720010 { 166656f7d184SJoseph Chen compatible = "rockchip,rk3562-pwm", "rockchip,rk3328-pwm"; 166756f7d184SJoseph Chen reg = <0x0 0xff720010 0x0 0x10>; 166856f7d184SJoseph Chen #pwm-cells = <3>; 166956f7d184SJoseph Chen pinctrl-names = "active"; 167056f7d184SJoseph Chen pinctrl-0 = <&pwm13m0_pins>; 167156f7d184SJoseph Chen clocks = <&cru CLK_PWM3_PERI>, <&cru PCLK_PWM3_PERI>; 167256f7d184SJoseph Chen clock-names = "pwm", "pclk"; 167356f7d184SJoseph Chen status = "disabled"; 167456f7d184SJoseph Chen }; 167556f7d184SJoseph Chen 167656f7d184SJoseph Chen pwm14: pwm@ff720020 { 167756f7d184SJoseph Chen compatible = "rockchip,rk3562-pwm", "rockchip,rk3328-pwm"; 167856f7d184SJoseph Chen reg = <0x0 0xff720020 0x0 0x10>; 167956f7d184SJoseph Chen #pwm-cells = <3>; 168056f7d184SJoseph Chen pinctrl-names = "active"; 168156f7d184SJoseph Chen pinctrl-0 = <&pwm14m0_pins>; 168256f7d184SJoseph Chen clocks = <&cru CLK_PWM3_PERI>, <&cru PCLK_PWM3_PERI>; 168356f7d184SJoseph Chen clock-names = "pwm", "pclk"; 168456f7d184SJoseph Chen status = "disabled"; 168556f7d184SJoseph Chen }; 168656f7d184SJoseph Chen 168756f7d184SJoseph Chen pwm15: pwm@ff720030 { 168856f7d184SJoseph Chen compatible = "rockchip,rk3562-pwm", "rockchip,rk3328-pwm"; 168956f7d184SJoseph Chen reg = <0x0 0xff720030 0x0 0x10>; 169056f7d184SJoseph Chen interrupts = <GIC_SPI 26 IRQ_TYPE_LEVEL_HIGH>, 169156f7d184SJoseph Chen <GIC_SPI 27 IRQ_TYPE_LEVEL_HIGH>; 169256f7d184SJoseph Chen #pwm-cells = <3>; 169356f7d184SJoseph Chen pinctrl-names = "active"; 169456f7d184SJoseph Chen pinctrl-0 = <&pwm15m0_pins>; 169556f7d184SJoseph Chen clocks = <&cru CLK_PWM3_PERI>, <&cru PCLK_PWM3_PERI>; 169656f7d184SJoseph Chen clock-names = "pwm", "pclk"; 169756f7d184SJoseph Chen status = "disabled"; 169856f7d184SJoseph Chen }; 169956f7d184SJoseph Chen 170056f7d184SJoseph Chen saradc0: saradc@ff730000 { 170156f7d184SJoseph Chen compatible = "rockchip,rk3562-saradc"; 170256f7d184SJoseph Chen reg = <0x0 0xff730000 0x0 0x100>; 170356f7d184SJoseph Chen interrupts = <GIC_SPI 40 IRQ_TYPE_LEVEL_HIGH>; 170456f7d184SJoseph Chen #io-channel-cells = <1>; 170556f7d184SJoseph Chen clocks = <&cru CLK_SARADC>, <&cru PCLK_SARADC>; 170656f7d184SJoseph Chen clock-names = "saradc", "apb_pclk"; 170756f7d184SJoseph Chen resets = <&cru SRST_P_SARADC>; 170856f7d184SJoseph Chen reset-names = "saradc-apb"; 170956f7d184SJoseph Chen status = "disabled"; 171056f7d184SJoseph Chen }; 171156f7d184SJoseph Chen 171256f7d184SJoseph Chen u2phy: usb2-phy@ff740000 { 171356f7d184SJoseph Chen compatible = "rockchip,rk3562-usb2phy"; 171456f7d184SJoseph Chen reg = <0x0 0xff740000 0x0 0x10000>; 171556f7d184SJoseph Chen clocks = <&cru CLK_USB2PHY_REF>, <&cru PCLK_USB2PHY>; 171656f7d184SJoseph Chen clock-names = "phyclk", "pclk"; 171756f7d184SJoseph Chen #clock-cells = <0>; 171856f7d184SJoseph Chen clock-output-names = "usb480m_phy"; 171956f7d184SJoseph Chen rockchip,usbgrf = <&usbphy_grf>; 172056f7d184SJoseph Chen status = "disabled"; 172156f7d184SJoseph Chen 172256f7d184SJoseph Chen u2phy_otg: otg-port { 172356f7d184SJoseph Chen #phy-cells = <0>; 172456f7d184SJoseph Chen interrupts = <GIC_SPI 153 IRQ_TYPE_LEVEL_HIGH>, 172556f7d184SJoseph Chen <GIC_SPI 154 IRQ_TYPE_LEVEL_HIGH>, 172656f7d184SJoseph Chen <GIC_SPI 155 IRQ_TYPE_LEVEL_HIGH>; 172756f7d184SJoseph Chen interrupt-names = "otg-bvalid", "otg-id", "linestate"; 172856f7d184SJoseph Chen status = "disabled"; 172956f7d184SJoseph Chen }; 173056f7d184SJoseph Chen 173156f7d184SJoseph Chen u2phy_host: host-port { 173256f7d184SJoseph Chen #phy-cells = <0>; 173356f7d184SJoseph Chen interrupts = <GIC_SPI 156 IRQ_TYPE_LEVEL_HIGH>; 173456f7d184SJoseph Chen interrupt-names = "linestate"; 173556f7d184SJoseph Chen status = "disabled"; 173656f7d184SJoseph Chen }; 173756f7d184SJoseph Chen }; 173856f7d184SJoseph Chen 173956f7d184SJoseph Chen combphy_pu: phy@ff750000 { 174056f7d184SJoseph Chen compatible = "rockchip,rk3562-naneng-combphy"; 174156f7d184SJoseph Chen reg = <0x0 0xff750000 0x0 0x100>; 174256f7d184SJoseph Chen #phy-cells = <1>; 174356f7d184SJoseph Chen clocks = <&cru CLK_PIPEPHY_REF>, <&cru PCLK_PIPEPHY>, 174456f7d184SJoseph Chen <&cru PCLK_PHP>; 174556f7d184SJoseph Chen clock-names = "refclk", "apbclk", "pipe_clk"; 174656f7d184SJoseph Chen assigned-clocks = <&cru CLK_PIPEPHY_REF>; 174756f7d184SJoseph Chen assigned-clock-rates = <100000000>; 174856f7d184SJoseph Chen resets = <&cru SRST_P_PIPEPHY>, <&cru SRST_PIPEPHY>; 174956f7d184SJoseph Chen reset-names = "combphy-apb", "combphy"; 175056f7d184SJoseph Chen rockchip,pipe-grf = <&peri_grf>; 175156f7d184SJoseph Chen rockchip,pipe-phy-grf = <&pipephy_grf>; 175256f7d184SJoseph Chen status = "disabled"; 175356f7d184SJoseph Chen }; 175456f7d184SJoseph Chen 175556f7d184SJoseph Chen sai0: sai@ff800000 { 175656f7d184SJoseph Chen compatible = "rockchip,rk3562-sai", "rockchip,sai-v1"; 175756f7d184SJoseph Chen reg = <0x0 0xff800000 0x0 0x1000>; 175856f7d184SJoseph Chen interrupts = <GIC_SPI 78 IRQ_TYPE_LEVEL_HIGH>; 175956f7d184SJoseph Chen clocks = <&cru MCLK_SAI0>, <&cru HCLK_SAI0>; 176056f7d184SJoseph Chen clock-names = "mclk", "hclk"; 176156f7d184SJoseph Chen dmas = <&dmac 19>, <&dmac 18>; 176256f7d184SJoseph Chen dma-names = "tx", "rx"; 176356f7d184SJoseph Chen resets = <&cru SRST_M_SAI0_8CH>, <&cru SRST_H_SAI0_8CH>; 176456f7d184SJoseph Chen reset-names = "m", "h"; 176556f7d184SJoseph Chen pinctrl-names = "default"; 176656f7d184SJoseph Chen pinctrl-0 = <&i2s0m0_lrck 176756f7d184SJoseph Chen &i2s0m0_sclk 176856f7d184SJoseph Chen &i2s0m0_sdi0 176956f7d184SJoseph Chen &i2s0m0_sdo0 177056f7d184SJoseph Chen &i2s0m0_sdo1 177156f7d184SJoseph Chen &i2s0m0_sdo2 177256f7d184SJoseph Chen &i2s0m0_sdo3>; 177356f7d184SJoseph Chen #sound-dai-cells = <0>; 177456f7d184SJoseph Chen status = "disabled"; 177556f7d184SJoseph Chen }; 177656f7d184SJoseph Chen 177756f7d184SJoseph Chen sai1: sai@ff810000 { 177856f7d184SJoseph Chen compatible = "rockchip,rk3562-sai", "rockchip,sai-v1"; 177956f7d184SJoseph Chen reg = <0x0 0xff810000 0x0 0x1000>; 178056f7d184SJoseph Chen interrupts = <GIC_SPI 79 IRQ_TYPE_LEVEL_HIGH>; 178156f7d184SJoseph Chen clocks = <&cru MCLK_SAI1>, <&cru HCLK_SAI1>; 178256f7d184SJoseph Chen clock-names = "mclk", "hclk"; 178356f7d184SJoseph Chen dmas = <&dmac 21>, <&dmac 20>; 178456f7d184SJoseph Chen dma-names = "tx", "rx"; 178556f7d184SJoseph Chen resets = <&cru SRST_M_SAI1_8CH>, <&cru SRST_H_SAI1_8CH>; 178656f7d184SJoseph Chen reset-names = "m", "h"; 178756f7d184SJoseph Chen pinctrl-names = "default"; 178856f7d184SJoseph Chen pinctrl-0 = <&i2s1m0_lrck 178956f7d184SJoseph Chen &i2s1m0_sclk 179056f7d184SJoseph Chen &i2s1m0_sdi0 179156f7d184SJoseph Chen &i2s1m0_sdi1 179256f7d184SJoseph Chen &i2s1m0_sdi2 179356f7d184SJoseph Chen &i2s1m0_sdi3 179456f7d184SJoseph Chen &i2s1m0_sdo0 179556f7d184SJoseph Chen &i2s1m0_sdo1 179656f7d184SJoseph Chen &i2s1m0_sdo2 179756f7d184SJoseph Chen &i2s1m0_sdo3>; 179856f7d184SJoseph Chen #sound-dai-cells = <0>; 179956f7d184SJoseph Chen status = "disabled"; 180056f7d184SJoseph Chen }; 180156f7d184SJoseph Chen 180256f7d184SJoseph Chen sai2: sai@ff820000 { 180356f7d184SJoseph Chen compatible = "rockchip,rk3562-sai", "rockchip,sai-v1"; 180456f7d184SJoseph Chen reg = <0x0 0xff820000 0x0 0x1000>; 180556f7d184SJoseph Chen interrupts = <GIC_SPI 80 IRQ_TYPE_LEVEL_HIGH>; 180656f7d184SJoseph Chen clocks = <&cru MCLK_SAI2>, <&cru HCLK_SAI2>; 180756f7d184SJoseph Chen clock-names = "mclk", "hclk"; 180856f7d184SJoseph Chen dmas = <&dmac 23>, <&dmac 22>; 180956f7d184SJoseph Chen dma-names = "tx", "rx"; 181056f7d184SJoseph Chen resets = <&cru SRST_M_SAI2_2CH>, <&cru SRST_H_SAI2_2CH>; 181156f7d184SJoseph Chen reset-names = "m", "h"; 181256f7d184SJoseph Chen pinctrl-names = "default"; 181356f7d184SJoseph Chen pinctrl-0 = <&i2s2m0_lrck 181456f7d184SJoseph Chen &i2s2m0_sclk 181556f7d184SJoseph Chen &i2s2m0_sdi 181656f7d184SJoseph Chen &i2s2m0_sdo>; 181756f7d184SJoseph Chen #sound-dai-cells = <0>; 181856f7d184SJoseph Chen status = "disabled"; 181956f7d184SJoseph Chen }; 182056f7d184SJoseph Chen 182156f7d184SJoseph Chen pdm: pdm@ff830000 { 182256f7d184SJoseph Chen compatible = "rockchip,rk3562-pdm", "rockchip,pdm"; 182356f7d184SJoseph Chen reg = <0x0 0xff830000 0x0 0x1000>; 182456f7d184SJoseph Chen clocks = <&cru MCLK_PDM>, <&cru HCLK_PDM>; 182556f7d184SJoseph Chen clock-names = "pdm_clk", "pdm_hclk"; 182656f7d184SJoseph Chen dmas = <&dmac 31>; 182756f7d184SJoseph Chen dma-names = "rx"; 182856f7d184SJoseph Chen pinctrl-names = "default"; 182956f7d184SJoseph Chen pinctrl-0 = <&pdmm0_clk0 183056f7d184SJoseph Chen &pdmm0_clk1 183156f7d184SJoseph Chen &pdmm0_sdi0 183256f7d184SJoseph Chen &pdmm0_sdi1 183356f7d184SJoseph Chen &pdmm0_sdi2 183456f7d184SJoseph Chen &pdmm0_sdi3>; 183556f7d184SJoseph Chen #sound-dai-cells = <0>; 183656f7d184SJoseph Chen status = "disabled"; 183756f7d184SJoseph Chen }; 183856f7d184SJoseph Chen 183956f7d184SJoseph Chen spdif_8ch: spdif@ff840000 { 184056f7d184SJoseph Chen compatible = "rockchip,rk3562-spdif", "rockchip,rk3568-spdif"; 184156f7d184SJoseph Chen reg = <0x0 0xff840000 0x0 0x1000>; 184256f7d184SJoseph Chen interrupts = <GIC_SPI 127 IRQ_TYPE_LEVEL_HIGH>; 184356f7d184SJoseph Chen dmas = <&dmac 30>; 184456f7d184SJoseph Chen dma-names = "tx"; 184556f7d184SJoseph Chen clock-names = "mclk", "hclk"; 184656f7d184SJoseph Chen clocks = <&cru MCLK_SPDIF>, <&cru HCLK_SPDIF>; 184756f7d184SJoseph Chen #sound-dai-cells = <0>; 184856f7d184SJoseph Chen pinctrl-names = "default"; 184956f7d184SJoseph Chen pinctrl-0 = <&spdifm0_pins>; 185056f7d184SJoseph Chen status = "disabled"; 185156f7d184SJoseph Chen }; 185256f7d184SJoseph Chen 185356f7d184SJoseph Chen acdcdig_dsm: codec-digital@ff850000 { 185456f7d184SJoseph Chen compatible = "rockchip,rk3562-codec-digital", "rockchip,codec-digital-v1"; 185556f7d184SJoseph Chen reg = <0x0 0xff850000 0x0 0x1000>; 185656f7d184SJoseph Chen clocks = <&cru CLK_DSM>, <&cru HCLK_DSM>; 185756f7d184SJoseph Chen clock-names = "dac", "pclk"; 185856f7d184SJoseph Chen resets = <&cru SRST_DSM>; 185956f7d184SJoseph Chen reset-names = "reset" ; 186056f7d184SJoseph Chen rockchip,grf = <&sys_grf>; 186156f7d184SJoseph Chen rockchip,pwm-output-mode; 186256f7d184SJoseph Chen pinctrl-names = "default"; 186356f7d184SJoseph Chen pinctrl-0 = <&dsm_pins>; 186456f7d184SJoseph Chen #sound-dai-cells = <0>; 186556f7d184SJoseph Chen status = "disabled"; 186656f7d184SJoseph Chen }; 186756f7d184SJoseph Chen 186856f7d184SJoseph Chen sfc: spi@ff860000 { 186956f7d184SJoseph Chen compatible = "rockchip,sfc"; 187056f7d184SJoseph Chen reg = <0x0 0xff860000 0x0 0x10000>; 187156f7d184SJoseph Chen interrupts = <GIC_SPI 128 IRQ_TYPE_LEVEL_HIGH>; 187256f7d184SJoseph Chen clocks = <&cru SCLK_SFC>, <&cru HCLK_SFC>; 187356f7d184SJoseph Chen clock-names = "clk_sfc", "hclk_sfc"; 187456f7d184SJoseph Chen assigned-clocks = <&cru SCLK_SFC>; 187556f7d184SJoseph Chen assigned-clock-rates = <100000000>; 187656f7d184SJoseph Chen #address-cells = <1>; 187756f7d184SJoseph Chen #size-cells = <0>; 187856f7d184SJoseph Chen status = "disabled"; 187956f7d184SJoseph Chen }; 188056f7d184SJoseph Chen 188156f7d184SJoseph Chen sdhci: mmc@ff870000 { 188256f7d184SJoseph Chen compatible = "rockchip,rk3562-dwcmshc", "rockchip,rk3528-dwcmshc"; 188356f7d184SJoseph Chen reg = <0x0 0xff870000 0x0 0x10000>; 188456f7d184SJoseph Chen interrupts = <GIC_SPI 63 IRQ_TYPE_LEVEL_HIGH>; 188556f7d184SJoseph Chen assigned-clocks = <&cru BCLK_EMMC>, <&cru CCLK_EMMC>; 188656f7d184SJoseph Chen assigned-clock-rates = <200000000>, <200000000>; 188756f7d184SJoseph Chen clocks = <&cru CCLK_EMMC>, <&cru HCLK_EMMC>, 188856f7d184SJoseph Chen <&cru ACLK_EMMC>, <&cru BCLK_EMMC>, 188956f7d184SJoseph Chen <&cru TMCLK_EMMC>; 189056f7d184SJoseph Chen clock-names = "core", "bus", "axi", "block", "timer"; 189156f7d184SJoseph Chen resets = <&cru SRST_C_EMMC>, <&cru SRST_H_EMMC>, 189256f7d184SJoseph Chen <&cru SRST_A_EMMC>, <&cru SRST_B_EMMC>, 189356f7d184SJoseph Chen <&cru SRST_T_EMMC>; 189456f7d184SJoseph Chen reset-names = "core", "bus", "axi", "block", "timer"; 189556f7d184SJoseph Chen max-frequency = <200000000>; 189656f7d184SJoseph Chen status = "disabled"; 189756f7d184SJoseph Chen }; 189856f7d184SJoseph Chen 189956f7d184SJoseph Chen sdmmc0: mmc@ff880000 { 190056f7d184SJoseph Chen compatible = "rockchip,rk3562-dw-mshc", 190156f7d184SJoseph Chen "rockchip,rk3288-dw-mshc"; 190256f7d184SJoseph Chen reg = <0x0 0xff880000 0x0 0x10000>; 190356f7d184SJoseph Chen interrupts = <GIC_SPI 56 IRQ_TYPE_LEVEL_HIGH>; 190456f7d184SJoseph Chen max-frequency = <150000000>; 190556f7d184SJoseph Chen clocks = <&cru HCLK_SDMMC0>, <&cru CCLK_SDMMC0>, 190656f7d184SJoseph Chen <&cru SCLK_SDMMC0_DRV>, <&cru SCLK_SDMMC0_SAMPLE>; 190756f7d184SJoseph Chen clock-names = "biu", "ciu", "ciu-drive", "ciu-sample"; 190856f7d184SJoseph Chen resets = <&cru SRST_H_SDMMC0>; 190956f7d184SJoseph Chen reset-names = "reset"; 191056f7d184SJoseph Chen fifo-depth = <0x100>; 191156f7d184SJoseph Chen status = "disabled"; 191256f7d184SJoseph Chen }; 191356f7d184SJoseph Chen 191456f7d184SJoseph Chen sdmmc1: mmc@ff890000 { 191556f7d184SJoseph Chen compatible = "rockchip,rk3562-dw-mshc", 191656f7d184SJoseph Chen "rockchip,rk3288-dw-mshc"; 191756f7d184SJoseph Chen reg = <0x0 0xff890000 0x0 0x10000>; 191856f7d184SJoseph Chen interrupts = <GIC_SPI 57 IRQ_TYPE_LEVEL_HIGH>; 191956f7d184SJoseph Chen max-frequency = <150000000>; 192056f7d184SJoseph Chen clocks = <&cru HCLK_SDMMC1>, <&cru CCLK_SDMMC1>, 192156f7d184SJoseph Chen <&cru SCLK_SDMMC1_DRV>, <&cru SCLK_SDMMC1_SAMPLE>; 192256f7d184SJoseph Chen clock-names = "biu", "ciu", "ciu-drive", "ciu-sample"; 192356f7d184SJoseph Chen resets = <&cru SRST_H_SDMMC1>; 192456f7d184SJoseph Chen reset-names = "reset"; 192556f7d184SJoseph Chen fifo-depth = <0x100>; 192656f7d184SJoseph Chen status = "disabled"; 192756f7d184SJoseph Chen }; 192856f7d184SJoseph Chen 192956f7d184SJoseph Chen crypto: crypto@ff8a0000 { 193056f7d184SJoseph Chen compatible = "rockchip,crypto-v4"; 193156f7d184SJoseph Chen reg = <0x0 0xff8a0000 0x0 0x2000>; 193256f7d184SJoseph Chen interrupts = <GIC_SPI 116 IRQ_TYPE_LEVEL_HIGH>; 19331b5b2109SFinley Xiao clocks = <&scmi_clk CLK_CORE_CRYPTO>, <&scmi_clk CLK_PKA_CRYPTO>, 19341b5b2109SFinley Xiao <&scmi_clk ACLK_CRYPTO>, <&scmi_clk HCLK_CRYPTO>, 19351b5b2109SFinley Xiao <&scmi_clk PCLK_CRYPTO>; 19361b5b2109SFinley Xiao clock-names = "sclk", "pka", "aclk", "pclk", "pclk"; 19371b5b2109SFinley Xiao assigned-clocks = <&scmi_clk CLK_CORE_CRYPTO>, <&scmi_clk CLK_PKA_CRYPTO>; 193856f7d184SJoseph Chen assigned-clock-rates = <200000000>, <300000000>; 193956f7d184SJoseph Chen resets = <&cru SRST_CORE_CRYPTO>; 194056f7d184SJoseph Chen reset-names = "crypto-rst"; 194156f7d184SJoseph Chen status = "disabled"; 194256f7d184SJoseph Chen }; 194356f7d184SJoseph Chen 194456f7d184SJoseph Chen rng: rng@ff8e0000 { 194556f7d184SJoseph Chen compatible = "rockchip,rkrng"; 194656f7d184SJoseph Chen reg = <0x0 0xff8e0000 0x0 0x200>; 194756f7d184SJoseph Chen interrupts = <GIC_SPI 93 IRQ_TYPE_LEVEL_HIGH>; 1948*db2891abSJoseph Chen clocks = <&scmi_clk HCLK_RK_RNG_NS>; 194956f7d184SJoseph Chen clock-names = "hclk_trng"; 195056f7d184SJoseph Chen resets = <&cru SRST_H_RK_RNG_NS>; 195156f7d184SJoseph Chen reset-names = "reset"; 195256f7d184SJoseph Chen status = "disabled"; 195356f7d184SJoseph Chen }; 195456f7d184SJoseph Chen 195556f7d184SJoseph Chen otp: otp@ff930000 { 195656f7d184SJoseph Chen compatible = "rockchip,rk3562-otp"; 195756f7d184SJoseph Chen reg = <0x0 0xff930000 0x0 0x4000>; 195856f7d184SJoseph Chen #address-cells = <1>; 195956f7d184SJoseph Chen #size-cells = <1>; 196056f7d184SJoseph Chen clocks = <&cru CLK_USER_OTPC_NS>, <&cru CLK_SBPI_OTPC_NS>, 196156f7d184SJoseph Chen <&cru PCLK_OTPC_NS>, <&cru CLK_OTPC_ARB>, 196256f7d184SJoseph Chen <&cru PCLK_OTPPHY>; 196356f7d184SJoseph Chen clock-names = "usr", "sbpi", "apb", "arb", "phy"; 196456f7d184SJoseph Chen resets = <&cru SRST_USER_OTPC_NS>, <&cru SRST_SBPI_OTPC_NS>, 196556f7d184SJoseph Chen <&cru SRST_P_OTPC_NS>, <&cru SRST_OTPC_ARB>, 196656f7d184SJoseph Chen <&cru SRST_P_OTPPHY>; 196756f7d184SJoseph Chen reset-names = "usr", "sbpi", "apb", "arb", "phy"; 196856f7d184SJoseph Chen 196956f7d184SJoseph Chen /* Data cells */ 197056f7d184SJoseph Chen cpu_code: cpu-code@2 { 197156f7d184SJoseph Chen reg = <0x02 0x2>; 197256f7d184SJoseph Chen }; 197356f7d184SJoseph Chen otp_cpu_version: cpu-version@8 { 197456f7d184SJoseph Chen reg = <0x08 0x1>; 197556f7d184SJoseph Chen bits = <3 3>; 197656f7d184SJoseph Chen }; 197756f7d184SJoseph Chen otp_id: id@a { 197856f7d184SJoseph Chen reg = <0x0a 0x10>; 197956f7d184SJoseph Chen }; 198056f7d184SJoseph Chen cpu_leakage: cpu-leakage@1a { 198156f7d184SJoseph Chen reg = <0x1a 0x1>; 198256f7d184SJoseph Chen }; 198356f7d184SJoseph Chen log_leakage: log-leakage@1b { 198456f7d184SJoseph Chen reg = <0x1b 0x1>; 198556f7d184SJoseph Chen }; 198656f7d184SJoseph Chen npu_leakage: npu-leakage@1c { 198756f7d184SJoseph Chen reg = <0x1c 0x1>; 198856f7d184SJoseph Chen }; 198956f7d184SJoseph Chen gpu_leakage: gpu-leakage@1d { 199056f7d184SJoseph Chen reg = <0x1d 0x1>; 199156f7d184SJoseph Chen }; 199256f7d184SJoseph Chen }; 199356f7d184SJoseph Chen 199456f7d184SJoseph Chen dmac: dma-controller@ff990000 { 199556f7d184SJoseph Chen compatible = "arm,pl330", "arm,primecell"; 199656f7d184SJoseph Chen reg = <0x0 0xff990000 0x0 0x4000>; 199756f7d184SJoseph Chen interrupts = <GIC_SPI 111 IRQ_TYPE_LEVEL_HIGH>, 199856f7d184SJoseph Chen <GIC_SPI 110 IRQ_TYPE_LEVEL_HIGH>; 199956f7d184SJoseph Chen clocks = <&cru ACLK_DMAC>; 200056f7d184SJoseph Chen clock-names = "apb_pclk"; 200156f7d184SJoseph Chen #dma-cells = <1>; 200256f7d184SJoseph Chen arm,pl330-periph-burst; 200356f7d184SJoseph Chen }; 200456f7d184SJoseph Chen 200556f7d184SJoseph Chen hwlock: hwspinlock@ff9e0000 { 200656f7d184SJoseph Chen compatible = "rockchip,hwspinlock"; 200756f7d184SJoseph Chen reg = <0x0 0xff9e0000 0x0 0x100>; 200856f7d184SJoseph Chen #hwlock-cells = <1>; 200956f7d184SJoseph Chen status = "disabled"; 201056f7d184SJoseph Chen }; 201156f7d184SJoseph Chen 201256f7d184SJoseph Chen i2c1: i2c@ffa00000 { 201356f7d184SJoseph Chen compatible = "rockchip,rk3562-i2c", "rockchip,rk3399-i2c"; 201456f7d184SJoseph Chen reg = <0x0 0xffa00000 0x0 0x1000>; 201556f7d184SJoseph Chen clocks = <&cru CLK_I2C1>, <&cru PCLK_I2C1>; 201656f7d184SJoseph Chen clock-names = "i2c", "pclk"; 201756f7d184SJoseph Chen interrupts = <GIC_SPI 13 IRQ_TYPE_LEVEL_HIGH>; 201856f7d184SJoseph Chen pinctrl-names = "default"; 201956f7d184SJoseph Chen pinctrl-0 = <&i2c1m0_xfer>; 202056f7d184SJoseph Chen #address-cells = <1>; 202156f7d184SJoseph Chen #size-cells = <0>; 202256f7d184SJoseph Chen status = "disabled"; 202356f7d184SJoseph Chen }; 202456f7d184SJoseph Chen 202556f7d184SJoseph Chen i2c2: i2c@ffa10000 { 202656f7d184SJoseph Chen compatible = "rockchip,rk3562-i2c", "rockchip,rk3399-i2c"; 202756f7d184SJoseph Chen reg = <0x0 0xffa10000 0x0 0x1000>; 202856f7d184SJoseph Chen clocks = <&cru CLK_I2C2>, <&cru PCLK_I2C2>; 202956f7d184SJoseph Chen clock-names = "i2c", "pclk"; 203056f7d184SJoseph Chen interrupts = <GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH>; 203156f7d184SJoseph Chen pinctrl-names = "default"; 203256f7d184SJoseph Chen pinctrl-0 = <&i2c2m0_xfer>; 203356f7d184SJoseph Chen #address-cells = <1>; 203456f7d184SJoseph Chen #size-cells = <0>; 203556f7d184SJoseph Chen status = "disabled"; 203656f7d184SJoseph Chen }; 203756f7d184SJoseph Chen 203856f7d184SJoseph Chen i2c3: i2c@ffa20000 { 203956f7d184SJoseph Chen compatible = "rockchip,rk3562-i2c", "rockchip,rk3399-i2c"; 204056f7d184SJoseph Chen reg = <0x0 0xffa20000 0x0 0x1000>; 204156f7d184SJoseph Chen clocks = <&cru CLK_I2C3>, <&cru PCLK_I2C3>; 204256f7d184SJoseph Chen clock-names = "i2c", "pclk"; 204356f7d184SJoseph Chen interrupts = <GIC_SPI 15 IRQ_TYPE_LEVEL_HIGH>; 204456f7d184SJoseph Chen pinctrl-names = "default"; 204556f7d184SJoseph Chen pinctrl-0 = <&i2c3m0_xfer>; 204656f7d184SJoseph Chen #address-cells = <1>; 204756f7d184SJoseph Chen #size-cells = <0>; 204856f7d184SJoseph Chen status = "disabled"; 204956f7d184SJoseph Chen }; 205056f7d184SJoseph Chen 205156f7d184SJoseph Chen i2c4: i2c@ffa30000 { 205256f7d184SJoseph Chen compatible = "rockchip,rk3562-i2c", "rockchip,rk3399-i2c"; 205356f7d184SJoseph Chen reg = <0x0 0xffa30000 0x0 0x1000>; 205456f7d184SJoseph Chen clocks = <&cru CLK_I2C4>, <&cru PCLK_I2C4>; 205556f7d184SJoseph Chen clock-names = "i2c", "pclk"; 205656f7d184SJoseph Chen interrupts = <GIC_SPI 16 IRQ_TYPE_LEVEL_HIGH>; 205756f7d184SJoseph Chen pinctrl-names = "default"; 205856f7d184SJoseph Chen pinctrl-0 = <&i2c4m0_xfer>; 205956f7d184SJoseph Chen #address-cells = <1>; 206056f7d184SJoseph Chen #size-cells = <0>; 206156f7d184SJoseph Chen status = "disabled"; 206256f7d184SJoseph Chen }; 206356f7d184SJoseph Chen 206456f7d184SJoseph Chen i2c5: i2c@ffa40000 { 206556f7d184SJoseph Chen compatible = "rockchip,rk3562-i2c", "rockchip,rk3399-i2c"; 206656f7d184SJoseph Chen reg = <0x0 0xffa40000 0x0 0x1000>; 206756f7d184SJoseph Chen clocks = <&cru CLK_I2C5>, <&cru PCLK_I2C5>; 206856f7d184SJoseph Chen clock-names = "i2c", "pclk"; 206956f7d184SJoseph Chen interrupts = <GIC_SPI 17 IRQ_TYPE_LEVEL_HIGH>; 207056f7d184SJoseph Chen pinctrl-names = "default"; 207156f7d184SJoseph Chen pinctrl-0 = <&i2c5m0_xfer>; 207256f7d184SJoseph Chen #address-cells = <1>; 207356f7d184SJoseph Chen #size-cells = <0>; 207456f7d184SJoseph Chen status = "disabled"; 207556f7d184SJoseph Chen }; 207656f7d184SJoseph Chen 207756f7d184SJoseph Chen wdt: watchdog@ffa60000 { 207856f7d184SJoseph Chen compatible = "snps,dw-wdt"; 207956f7d184SJoseph Chen reg = <0x0 0xffa60000 0x0 0x100>; 208056f7d184SJoseph Chen clocks = <&cru CLK_WDTNS>, <&cru PCLK_WDTNS>; 208156f7d184SJoseph Chen clock-names = "tclk", "pclk"; 208256f7d184SJoseph Chen interrupts = <GIC_SPI 102 IRQ_TYPE_LEVEL_HIGH>; 208356f7d184SJoseph Chen status = "disabled"; 208456f7d184SJoseph Chen }; 208556f7d184SJoseph Chen 208656f7d184SJoseph Chen tsadc: tsadc@ffa70000 { 208756f7d184SJoseph Chen compatible = "rockchip,rk3562-tsadc"; 208856f7d184SJoseph Chen reg = <0x0 0xffa70000 0x0 0x400>; 208956f7d184SJoseph Chen rockchip,grf = <&sys_grf>; 209056f7d184SJoseph Chen interrupts = <GIC_SPI 125 IRQ_TYPE_LEVEL_HIGH>; 209156f7d184SJoseph Chen clocks = <&cru CLK_TSADC>, <&cru CLK_TSADC_TSEN>, <&cru PCLK_TSADC>; 209256f7d184SJoseph Chen clock-names = "tsadc", "tsadc_tsen", "apb_pclk"; 209356f7d184SJoseph Chen assigned-clocks = <&cru CLK_TSADC>, <&cru CLK_TSADC_TSEN>; 209456f7d184SJoseph Chen assigned-clock-rates = <1200000>, <12000000>; 209556f7d184SJoseph Chen resets = <&cru SRST_TSADC>, <&cru SRST_P_TSADC>, <&cru SRST_TSADCPHY>; 209656f7d184SJoseph Chen reset-names = "tsadc", "tsadc-apb", "tsadc-phy"; 209756f7d184SJoseph Chen #thermal-sensor-cells = <1>; 209856f7d184SJoseph Chen rockchip,hw-tshut-temp = <120000>; 209956f7d184SJoseph Chen rockchip,hw-tshut-mode = <0>; /* tshut mode 0:CRU 1:GPIO */ 210056f7d184SJoseph Chen rockchip,hw-tshut-polarity = <0>; /* tshut polarity 0:LOW 1:HIGH */ 210156f7d184SJoseph Chen status = "disabled"; 210256f7d184SJoseph Chen }; 210356f7d184SJoseph Chen 210456f7d184SJoseph Chen gmac0: ethernet@ffa80000 { 210556f7d184SJoseph Chen compatible = "rockchip,rk3562-gmac", "snps,dwmac-4.20a"; 210656f7d184SJoseph Chen reg = <0x0 0xffa80000 0x0 0x10000>; 210756f7d184SJoseph Chen interrupts = <GIC_SPI 73 IRQ_TYPE_LEVEL_HIGH>, 210856f7d184SJoseph Chen <GIC_SPI 70 IRQ_TYPE_LEVEL_HIGH>; 210956f7d184SJoseph Chen interrupt-names = "macirq", "eth_wake_irq"; 211056f7d184SJoseph Chen rockchip,grf = <&sys_grf>; 211156f7d184SJoseph Chen rockchip,php_grf = <&ioc_grf>; 211256f7d184SJoseph Chen clocks = <&cru CLK_GMAC_125M_CRU_I>, <&cru CLK_GMAC_50M_CRU_I>, 211356f7d184SJoseph Chen <&cru PCLK_GMAC>, <&cru ACLK_GMAC>; 211456f7d184SJoseph Chen clock-names = "stmmaceth", "clk_mac_ref", 211556f7d184SJoseph Chen "pclk_mac", "aclk_mac"; 211656f7d184SJoseph Chen resets = <&cru SRST_A_GMAC>; 211756f7d184SJoseph Chen reset-names = "stmmaceth"; 211856f7d184SJoseph Chen 211956f7d184SJoseph Chen snps,mixed-burst; 212056f7d184SJoseph Chen snps,tso; 212156f7d184SJoseph Chen 212256f7d184SJoseph Chen snps,axi-config = <&gmac0_stmmac_axi_setup>; 212356f7d184SJoseph Chen snps,mtl-rx-config = <&gmac0_mtl_rx_setup>; 212456f7d184SJoseph Chen snps,mtl-tx-config = <&gmac0_mtl_tx_setup>; 212556f7d184SJoseph Chen status = "disabled"; 212656f7d184SJoseph Chen 212756f7d184SJoseph Chen mdio0: mdio { 212856f7d184SJoseph Chen compatible = "snps,dwmac-mdio"; 212956f7d184SJoseph Chen #address-cells = <0x1>; 213056f7d184SJoseph Chen #size-cells = <0x0>; 213156f7d184SJoseph Chen }; 213256f7d184SJoseph Chen 213356f7d184SJoseph Chen gmac0_stmmac_axi_setup: stmmac-axi-config { 213456f7d184SJoseph Chen snps,wr_osr_lmt = <4>; 213556f7d184SJoseph Chen snps,rd_osr_lmt = <8>; 213656f7d184SJoseph Chen snps,blen = <0 0 0 0 16 8 4>; 213756f7d184SJoseph Chen }; 213856f7d184SJoseph Chen 213956f7d184SJoseph Chen gmac0_mtl_rx_setup: rx-queues-config { 214056f7d184SJoseph Chen snps,rx-queues-to-use = <1>; 214156f7d184SJoseph Chen queue0 {}; 214256f7d184SJoseph Chen }; 214356f7d184SJoseph Chen 214456f7d184SJoseph Chen gmac0_mtl_tx_setup: tx-queues-config { 214556f7d184SJoseph Chen snps,tx-queues-to-use = <1>; 214656f7d184SJoseph Chen queue0 {}; 214756f7d184SJoseph Chen }; 214856f7d184SJoseph Chen }; 214956f7d184SJoseph Chen 215056f7d184SJoseph Chen saradc1: saradc@ffaa0000 { 215156f7d184SJoseph Chen compatible = "rockchip,rk3562-saradc"; 215256f7d184SJoseph Chen reg = <0x0 0xffaa0000 0x0 0x100>; 215356f7d184SJoseph Chen interrupts = <GIC_SPI 124 IRQ_TYPE_LEVEL_HIGH>; 215456f7d184SJoseph Chen #io-channel-cells = <1>; 215556f7d184SJoseph Chen clocks = <&cru CLK_SARADC_VCCIO156>, <&cru PCLK_SARADC_VCCIO156>; 215656f7d184SJoseph Chen clock-names = "saradc", "apb_pclk"; 215756f7d184SJoseph Chen resets = <&cru SRST_P_SARADC_VCCIO156>; 215856f7d184SJoseph Chen reset-names = "saradc-apb"; 215956f7d184SJoseph Chen status = "disabled"; 216056f7d184SJoseph Chen }; 216156f7d184SJoseph Chen 216256f7d184SJoseph Chen mailbox: mailbox@ffae0000 { 216356f7d184SJoseph Chen compatible = "rockchip,rk3562-mailbox", 216456f7d184SJoseph Chen "rockchip,rk3368-mailbox"; 216556f7d184SJoseph Chen reg = <0x0 0xffae0000 0x0 0x200>; 216656f7d184SJoseph Chen interrupts = <GIC_SPI 114 IRQ_TYPE_LEVEL_HIGH>; 216756f7d184SJoseph Chen clocks = <&cru PCLK_MAILBOX>; 216856f7d184SJoseph Chen clock-names = "pclk_mailbox"; 216956f7d184SJoseph Chen #mbox-cells = <1>; 217056f7d184SJoseph Chen status = "disabled"; 217156f7d184SJoseph Chen }; 217256f7d184SJoseph Chen 217356f7d184SJoseph Chen dsi: dsi@ffb10000 { 217456f7d184SJoseph Chen compatible = "rockchip,rk3562-mipi-dsi"; 217556f7d184SJoseph Chen reg = <0x0 0xffb10000 0x0 0x10000>; 217656f7d184SJoseph Chen interrupts = <GIC_SPI 132 IRQ_TYPE_LEVEL_HIGH>; 217756f7d184SJoseph Chen clocks = <&cru PCLK_DSITX>; 217856f7d184SJoseph Chen clock-names = "pclk"; 217956f7d184SJoseph Chen resets = <&cru SRST_P_DSITX>; 218056f7d184SJoseph Chen reset-names = "apb"; 218156f7d184SJoseph Chen phys = <&video_phy>; 218256f7d184SJoseph Chen phy-names = "dphy"; 218356f7d184SJoseph Chen rockchip,grf = <&sys_grf>; 218456f7d184SJoseph Chen #address-cells = <1>; 218556f7d184SJoseph Chen #size-cells = <0>; 218656f7d184SJoseph Chen status = "disabled"; 218756f7d184SJoseph Chen 218856f7d184SJoseph Chen ports { 218956f7d184SJoseph Chen #address-cells = <1>; 219056f7d184SJoseph Chen #size-cells = <0>; 219156f7d184SJoseph Chen 219256f7d184SJoseph Chen dsi_in: port@0 { 219356f7d184SJoseph Chen reg = <0>; 219456f7d184SJoseph Chen #address-cells = <1>; 219556f7d184SJoseph Chen #size-cells = <0>; 219656f7d184SJoseph Chen 219756f7d184SJoseph Chen dsi_in_vp0: endpoint@0 { 219856f7d184SJoseph Chen reg = <0>; 219956f7d184SJoseph Chen remote-endpoint = <&vp0_out_dsi>; 220056f7d184SJoseph Chen status = "disabled"; 220156f7d184SJoseph Chen }; 220256f7d184SJoseph Chen 220356f7d184SJoseph Chen dsi_in_vp1: endpoint@1 { 220456f7d184SJoseph Chen reg = <1>; 220556f7d184SJoseph Chen remote-endpoint = <&vp1_out_dsi>; 220656f7d184SJoseph Chen status = "disabled"; 220756f7d184SJoseph Chen }; 220856f7d184SJoseph Chen }; 220956f7d184SJoseph Chen }; 221056f7d184SJoseph Chen }; 221156f7d184SJoseph Chen 221256f7d184SJoseph Chen video_phy: phy@ffb20000 { 221356f7d184SJoseph Chen compatible = "rockchip,rk3562-dsi-dphy", "rockchip,rk3562-video-phy", 221456f7d184SJoseph Chen "rockchip,rk3568-dsi-dphy", "rockchip,rk3568-video-phy"; 221556f7d184SJoseph Chen reg = <0x0 0xffb20000 0x0 0x10000>, 221656f7d184SJoseph Chen <0x0 0xffb10000 0x0 0x10000>; 221756f7d184SJoseph Chen reg-names = "phy", "host"; 221856f7d184SJoseph Chen clocks = <&cru CLK_MIPIDSIPHY_REF>, 221956f7d184SJoseph Chen <&cru PCLK_DSIPHY>, <&cru PCLK_DSITX>; 222056f7d184SJoseph Chen clock-names = "ref", "pclk", "pclk_host"; 222156f7d184SJoseph Chen #clock-cells = <0>; 222256f7d184SJoseph Chen resets = <&cru SRST_P_DSIPHY>; 222356f7d184SJoseph Chen reset-names = "apb"; 222456f7d184SJoseph Chen #phy-cells = <0>; 222556f7d184SJoseph Chen status = "disabled"; 222656f7d184SJoseph Chen }; 222756f7d184SJoseph Chen 222856f7d184SJoseph Chen gmac1: ethernet@ffb30000 { 222956f7d184SJoseph Chen compatible = "rockchip,rk3562-gmac"; 223056f7d184SJoseph Chen reg = <0x0 0xffb30000 0x0 0x10000>; 223156f7d184SJoseph Chen interrupts = <GIC_SPI 67 IRQ_TYPE_LEVEL_HIGH>, 223256f7d184SJoseph Chen <GIC_SPI 68 IRQ_TYPE_LEVEL_HIGH>; 223356f7d184SJoseph Chen interrupt-names = "macirq", "eth_wake_irq"; 223456f7d184SJoseph Chen rockchip,grf = <&sys_grf>; 223556f7d184SJoseph Chen rockchip,php_grf = <&ioc_grf>; 223656f7d184SJoseph Chen clocks = <&cru CLK_GMAC_50M_CRU_I>, <&cru CLK_GMAC_50M_CRU_I>, 223756f7d184SJoseph Chen <&cru PCLK_GMAC>, <&cru ACLK_GMAC>; 223856f7d184SJoseph Chen clock-names = "stmmaceth", "clk_mac_ref", 223956f7d184SJoseph Chen "pclk_mac", "aclk_mac"; 224056f7d184SJoseph Chen resets = <&cru SRST_A_MAC100>; 224156f7d184SJoseph Chen reset-names = "stmmaceth"; 224256f7d184SJoseph Chen status = "disabled"; 224356f7d184SJoseph Chen 224456f7d184SJoseph Chen mdio1: mdio { 224556f7d184SJoseph Chen compatible = "snps,dwmac-mdio"; 224656f7d184SJoseph Chen #address-cells = <0x1>; 224756f7d184SJoseph Chen #size-cells = <0x0>; 224856f7d184SJoseph Chen }; 224956f7d184SJoseph Chen }; 225056f7d184SJoseph Chen 225156f7d184SJoseph Chen pinctrl: pinctrl { 225256f7d184SJoseph Chen compatible = "rockchip,rk3562-pinctrl"; 225356f7d184SJoseph Chen rockchip,grf = <&ioc_grf>; 225456f7d184SJoseph Chen #address-cells = <2>; 225556f7d184SJoseph Chen #size-cells = <2>; 225656f7d184SJoseph Chen ranges; 225756f7d184SJoseph Chen 225856f7d184SJoseph Chen gpio0: gpio@ff260000 { 225956f7d184SJoseph Chen compatible = "rockchip,gpio-bank"; 226056f7d184SJoseph Chen reg = <0x0 0xff260000 0x0 0x100>; 226156f7d184SJoseph Chen interrupts = <GIC_SPI 0 IRQ_TYPE_LEVEL_HIGH>; 226256f7d184SJoseph Chen clocks = <&cru PCLK_PMU0_GPIO0>, <&cru DBCLK_PMU0_GPIO0>; 226356f7d184SJoseph Chen 226456f7d184SJoseph Chen gpio-controller; 226556f7d184SJoseph Chen #gpio-cells = <2>; 226656f7d184SJoseph Chen gpio-ranges = <&pinctrl 0 0 32>; 226756f7d184SJoseph Chen interrupt-controller; 226856f7d184SJoseph Chen #interrupt-cells = <2>; 226956f7d184SJoseph Chen }; 227056f7d184SJoseph Chen 227156f7d184SJoseph Chen gpio1: gpio@ff620000 { 227256f7d184SJoseph Chen compatible = "rockchip,gpio-bank"; 227356f7d184SJoseph Chen reg = <0x0 0xff620000 0x0 0x100>; 227456f7d184SJoseph Chen interrupts = <GIC_SPI 2 IRQ_TYPE_LEVEL_HIGH>; 227556f7d184SJoseph Chen clocks = <&cru PCLK_PERI_GPIO1>, <&cru DCLK_PERI_GPIO1>; 227656f7d184SJoseph Chen 227756f7d184SJoseph Chen gpio-controller; 227856f7d184SJoseph Chen #gpio-cells = <2>; 227956f7d184SJoseph Chen gpio-ranges = <&pinctrl 0 32 32>; 228056f7d184SJoseph Chen interrupt-controller; 228156f7d184SJoseph Chen #interrupt-cells = <2>; 228256f7d184SJoseph Chen }; 228356f7d184SJoseph Chen 228456f7d184SJoseph Chen gpio2: gpio@ff630000 { 228556f7d184SJoseph Chen compatible = "rockchip,gpio-bank"; 228656f7d184SJoseph Chen reg = <0x0 0xff630000 0x0 0x100>; 228756f7d184SJoseph Chen interrupts = <GIC_SPI 4 IRQ_TYPE_LEVEL_HIGH>; 228856f7d184SJoseph Chen clocks = <&cru PCLK_PERI_GPIO2>, <&cru DCLK_PERI_GPIO2>; 228956f7d184SJoseph Chen 229056f7d184SJoseph Chen gpio-controller; 229156f7d184SJoseph Chen #gpio-cells = <2>; 229256f7d184SJoseph Chen gpio-ranges = <&pinctrl 0 64 32>; 229356f7d184SJoseph Chen interrupt-controller; 229456f7d184SJoseph Chen #interrupt-cells = <2>; 229556f7d184SJoseph Chen }; 229656f7d184SJoseph Chen 229756f7d184SJoseph Chen gpio3: gpio@ffac0000 { 229856f7d184SJoseph Chen compatible = "rockchip,gpio-bank"; 229956f7d184SJoseph Chen reg = <0x0 0xffac0000 0x0 0x100>; 230056f7d184SJoseph Chen interrupts = <GIC_SPI 6 IRQ_TYPE_LEVEL_HIGH>; 230156f7d184SJoseph Chen clocks = <&cru PCLK_GPIO3_VCCIO156>, <&cru DCLK_BUS_GPIO3>; 230256f7d184SJoseph Chen 230356f7d184SJoseph Chen gpio-controller; 230456f7d184SJoseph Chen #gpio-cells = <2>; 230556f7d184SJoseph Chen gpio-ranges = <&pinctrl 0 96 32>; 230656f7d184SJoseph Chen interrupt-controller; 230756f7d184SJoseph Chen #interrupt-cells = <2>; 230856f7d184SJoseph Chen }; 230956f7d184SJoseph Chen 231056f7d184SJoseph Chen gpio4: gpio@ffad0000 { 231156f7d184SJoseph Chen compatible = "rockchip,gpio-bank"; 231256f7d184SJoseph Chen reg = <0x0 0xffad0000 0x0 0x100>; 231356f7d184SJoseph Chen interrupts = <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>; 231456f7d184SJoseph Chen clocks = <&cru PCLK_GPIO4_VCCIO156>, <&cru DCLK_BUS_GPIO4>; 231556f7d184SJoseph Chen 231656f7d184SJoseph Chen gpio-controller; 231756f7d184SJoseph Chen #gpio-cells = <2>; 231856f7d184SJoseph Chen gpio-ranges = <&pinctrl 0 128 32>; 231956f7d184SJoseph Chen interrupt-controller; 232056f7d184SJoseph Chen #interrupt-cells = <2>; 232156f7d184SJoseph Chen }; 232256f7d184SJoseph Chen }; 232356f7d184SJoseph Chen}; 232456f7d184SJoseph Chen 232556f7d184SJoseph Chen#include "rk3562-pinctrl.dtsi" 2326