1c66ec88fSEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 2c66ec88fSEmmanuel Vadot 3c66ec88fSEmmanuel Vadot%YAML 1.2 4c66ec88fSEmmanuel Vadot--- 5c66ec88fSEmmanuel Vadot$id: "http://devicetree.org/schemas/media/rockchip-vpu.yaml#" 6c66ec88fSEmmanuel Vadot$schema: "http://devicetree.org/meta-schemas/core.yaml#" 7c66ec88fSEmmanuel Vadot 8c66ec88fSEmmanuel Vadottitle: Hantro G1 VPU codecs implemented on Rockchip SoCs 9c66ec88fSEmmanuel Vadot 10c66ec88fSEmmanuel Vadotmaintainers: 11c66ec88fSEmmanuel Vadot - Ezequiel Garcia <ezequiel@collabora.com> 12c66ec88fSEmmanuel Vadot 13c66ec88fSEmmanuel Vadotdescription: 14c66ec88fSEmmanuel Vadot Hantro G1 video encode and decode accelerators present on Rockchip SoCs. 15c66ec88fSEmmanuel Vadot 16c66ec88fSEmmanuel Vadotproperties: 17c66ec88fSEmmanuel Vadot compatible: 18*5956d97fSEmmanuel Vadot oneOf: 19*5956d97fSEmmanuel Vadot - enum: 20*5956d97fSEmmanuel Vadot - rockchip,rk3036-vpu 21*5956d97fSEmmanuel Vadot - rockchip,rk3066-vpu 22c66ec88fSEmmanuel Vadot - rockchip,rk3288-vpu 23c66ec88fSEmmanuel Vadot - rockchip,rk3328-vpu 24c66ec88fSEmmanuel Vadot - rockchip,rk3399-vpu 25*5956d97fSEmmanuel Vadot - items: 26*5956d97fSEmmanuel Vadot - const: rockchip,rk3188-vpu 27*5956d97fSEmmanuel Vadot - const: rockchip,rk3066-vpu 28*5956d97fSEmmanuel Vadot - items: 29*5956d97fSEmmanuel Vadot - const: rockchip,rk3228-vpu 30*5956d97fSEmmanuel Vadot - const: rockchip,rk3399-vpu 31c66ec88fSEmmanuel Vadot 32c66ec88fSEmmanuel Vadot reg: 33c66ec88fSEmmanuel Vadot maxItems: 1 34c66ec88fSEmmanuel Vadot 35c66ec88fSEmmanuel Vadot interrupts: 36c66ec88fSEmmanuel Vadot minItems: 1 37c66ec88fSEmmanuel Vadot maxItems: 2 38c66ec88fSEmmanuel Vadot 39c66ec88fSEmmanuel Vadot interrupt-names: 40c66ec88fSEmmanuel Vadot oneOf: 41c66ec88fSEmmanuel Vadot - const: vdpu 42c66ec88fSEmmanuel Vadot - items: 43c66ec88fSEmmanuel Vadot - const: vepu 44c66ec88fSEmmanuel Vadot - const: vdpu 45c66ec88fSEmmanuel Vadot 46c66ec88fSEmmanuel Vadot clocks: 47*5956d97fSEmmanuel Vadot oneOf: 48*5956d97fSEmmanuel Vadot - maxItems: 2 49*5956d97fSEmmanuel Vadot - maxItems: 4 50c66ec88fSEmmanuel Vadot 51c66ec88fSEmmanuel Vadot clock-names: 52*5956d97fSEmmanuel Vadot oneOf: 53*5956d97fSEmmanuel Vadot - items: 54c66ec88fSEmmanuel Vadot - const: aclk 55c66ec88fSEmmanuel Vadot - const: hclk 56*5956d97fSEmmanuel Vadot - items: 57*5956d97fSEmmanuel Vadot - const: aclk_vdpu 58*5956d97fSEmmanuel Vadot - const: hclk_vdpu 59*5956d97fSEmmanuel Vadot - const: aclk_vepu 60*5956d97fSEmmanuel Vadot - const: hclk_vepu 61c66ec88fSEmmanuel Vadot 62c66ec88fSEmmanuel Vadot power-domains: 63c66ec88fSEmmanuel Vadot maxItems: 1 64c66ec88fSEmmanuel Vadot 65c66ec88fSEmmanuel Vadot iommus: 66c66ec88fSEmmanuel Vadot maxItems: 1 67c66ec88fSEmmanuel Vadot 68c66ec88fSEmmanuel Vadotrequired: 69c66ec88fSEmmanuel Vadot - compatible 70c66ec88fSEmmanuel Vadot - reg 71c66ec88fSEmmanuel Vadot - interrupts 72c66ec88fSEmmanuel Vadot - interrupt-names 73c66ec88fSEmmanuel Vadot - clocks 74c66ec88fSEmmanuel Vadot - clock-names 75c66ec88fSEmmanuel Vadot 76c66ec88fSEmmanuel VadotadditionalProperties: false 77c66ec88fSEmmanuel Vadot 78c66ec88fSEmmanuel Vadotexamples: 79c66ec88fSEmmanuel Vadot - | 80c66ec88fSEmmanuel Vadot #include <dt-bindings/clock/rk3288-cru.h> 81c66ec88fSEmmanuel Vadot #include <dt-bindings/interrupt-controller/arm-gic.h> 82c66ec88fSEmmanuel Vadot #include <dt-bindings/power/rk3288-power.h> 83c66ec88fSEmmanuel Vadot 84c66ec88fSEmmanuel Vadot vpu: video-codec@ff9a0000 { 85c66ec88fSEmmanuel Vadot compatible = "rockchip,rk3288-vpu"; 86c66ec88fSEmmanuel Vadot reg = <0xff9a0000 0x800>; 87c66ec88fSEmmanuel Vadot interrupts = <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>, 88c66ec88fSEmmanuel Vadot <GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>; 89c66ec88fSEmmanuel Vadot interrupt-names = "vepu", "vdpu"; 90c66ec88fSEmmanuel Vadot clocks = <&cru ACLK_VCODEC>, <&cru HCLK_VCODEC>; 91c66ec88fSEmmanuel Vadot clock-names = "aclk", "hclk"; 92c66ec88fSEmmanuel Vadot power-domains = <&power RK3288_PD_VIDEO>; 93c66ec88fSEmmanuel Vadot iommus = <&vpu_mmu>; 94c66ec88fSEmmanuel Vadot }; 95