diff --git a/arch/arm/boot/dts/rk322x.dtsi b/arch/arm/boot/dts/rk322x.dtsi index cafbaaa71bda..d22c660a14f6 100644 --- a/arch/arm/boot/dts/rk322x.dtsi +++ b/arch/arm/boot/dts/rk322x.dtsi @@ -596,25 +596,61 @@ }; }; - vpu_mmu: iommu@20020800 { - compatible = "rockchip,iommu"; - reg = <0x20020800 0x100>; - interrupts = ; - interrupt-names = "vpu_mmu"; + vpu_service: vpu-service@20020000 { + compatible = "rockchip,vpu_service"; + reg = <0x20020000 0x800>; + interrupts = , + ; + interrupt-names = "irq_dec", "irq_enc"; + resets = <&cru SRST_VPU_A>, <&cru SRST_VPU_H>; + reset-names = "video_a", "video_h"; clocks = <&cru ACLK_VPU>, <&cru HCLK_VPU>; - clock-names = "aclk", "iface"; - iommu-cells = <0>; + clock-names = "aclk_vcodec", "hclk_vcodec"; + rockchip,grf = <&grf>; + iommus = <&vpu_mmu>; + allocator = <1>; status = "disabled"; }; - vdec_mmu: iommu@20030480 { + vpu_mmu: iommu@20020800 { + compatible = "rockchip,iommu"; + reg = <0x20020800 0x40>; + interrupts = ; + interrupt-names = "vpu_mmu"; + clock-names = "aclk", "hclk"; + clocks = <&cru ACLK_VPU>, <&cru HCLK_VPU>; + #iommu-cells = <0>; + status = "disabled"; + }; + + rkvdec: rkvdec@20030000 { + compatible = "rockchip,rkvdec"; + reg = <0x20030000 0x400>; + interrupts = ; + interrupt-names = "irq_dec"; + clocks = <&cru ACLK_RKVDEC>, <&cru HCLK_RKVDEC>, + <&cru SCLK_VDEC_CABAC>, <&cru SCLK_VDEC_CORE>; + clock-names = "aclk_vcodec", "hclk_vcodec", "clk_cabac", + "clk_core"; + resets = <&cru SRST_RKVDEC_A>, <&cru SRST_RKVDEC_H>, + <&cru SRST_RKVDEC_NOC_A>, <&cru SRST_RKVDEC_NOC_H>, + <&cru SRST_RKVDEC_CABAC>, <&cru SRST_RKVDEC_CORE>; + reset-names = "video_a", "video_h", "niu_a", "niu_h", + "video_cabac", "video_core"; + rockchip,grf = <&grf>; + iommus = <&rkvdec_mmu>; + allocator = <1>; + status = "disabled"; + }; + + rkvdec_mmu: iommu@20030480 { compatible = "rockchip,iommu"; reg = <0x20030480 0x40>, <0x200304c0 0x40>; interrupts = ; - interrupt-names = "vdec_mmu"; + interrupt-names = "rkvdec_mmu"; clocks = <&cru ACLK_RKVDEC>, <&cru HCLK_RKVDEC>; - clock-names = "aclk", "iface"; - iommu-cells = <0>; + clock-names = "aclk", "hclk"; + #iommu-cells = <0>; status = "disabled"; };