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