1ba445b7fSEzequiel Garcia# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
2ba445b7fSEzequiel Garcia
3ba445b7fSEzequiel Garcia%YAML 1.2
4ba445b7fSEzequiel Garcia---
5ba445b7fSEzequiel Garcia$id: "http://devicetree.org/schemas/media/rockchip-vpu.yaml#"
6ba445b7fSEzequiel Garcia$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
25*9d05c1e0SPaul Kocialkowski          - rockchip,px30-vpu
26b32178e7SAlex Bee      - items:
27b32178e7SAlex Bee          - const: rockchip,rk3188-vpu
28b32178e7SAlex Bee          - const: rockchip,rk3066-vpu
29b32178e7SAlex Bee      - items:
30b32178e7SAlex Bee          - const: rockchip,rk3228-vpu
31b32178e7SAlex Bee          - const: rockchip,rk3399-vpu
32ba445b7fSEzequiel Garcia
33ba445b7fSEzequiel Garcia  reg:
34ba445b7fSEzequiel Garcia    maxItems: 1
35ba445b7fSEzequiel Garcia
36ba445b7fSEzequiel Garcia  interrupts:
37e01bc6cbSJohan Jonker    minItems: 1
38ba445b7fSEzequiel Garcia    maxItems: 2
39ba445b7fSEzequiel Garcia
40ba445b7fSEzequiel Garcia  interrupt-names:
41e01bc6cbSJohan Jonker    oneOf:
42e01bc6cbSJohan Jonker      - const: vdpu
43e01bc6cbSJohan Jonker      - items:
44ba445b7fSEzequiel Garcia          - const: vepu
45ba445b7fSEzequiel Garcia          - const: vdpu
46ba445b7fSEzequiel Garcia
47ba445b7fSEzequiel Garcia  clocks:
48b32178e7SAlex Bee    oneOf:
49b32178e7SAlex Bee      - maxItems: 2
50b32178e7SAlex Bee      - maxItems: 4
51ba445b7fSEzequiel Garcia
52ba445b7fSEzequiel Garcia  clock-names:
53b32178e7SAlex Bee    oneOf:
54b32178e7SAlex Bee      - items:
55ba445b7fSEzequiel Garcia          - const: aclk
56ba445b7fSEzequiel Garcia          - const: hclk
57b32178e7SAlex Bee      - items:
58b32178e7SAlex Bee          - const: aclk_vdpu
59b32178e7SAlex Bee          - const: hclk_vdpu
60b32178e7SAlex Bee          - const: aclk_vepu
61b32178e7SAlex Bee          - const: hclk_vepu
62ba445b7fSEzequiel Garcia
63ba445b7fSEzequiel Garcia  power-domains:
64ba445b7fSEzequiel Garcia    maxItems: 1
65ba445b7fSEzequiel Garcia
66ba445b7fSEzequiel Garcia  iommus:
67ba445b7fSEzequiel Garcia    maxItems: 1
68ba445b7fSEzequiel Garcia
69ba445b7fSEzequiel Garciarequired:
70ba445b7fSEzequiel Garcia  - compatible
71ba445b7fSEzequiel Garcia  - reg
72ba445b7fSEzequiel Garcia  - interrupts
73ba445b7fSEzequiel Garcia  - interrupt-names
74ba445b7fSEzequiel Garcia  - clocks
75ba445b7fSEzequiel Garcia  - clock-names
76ba445b7fSEzequiel Garcia
77ba445b7fSEzequiel GarciaadditionalProperties: false
78ba445b7fSEzequiel Garcia
79ba445b7fSEzequiel Garciaexamples:
80ba445b7fSEzequiel Garcia  - |
81ba445b7fSEzequiel Garcia        #include <dt-bindings/clock/rk3288-cru.h>
82ba445b7fSEzequiel Garcia        #include <dt-bindings/interrupt-controller/arm-gic.h>
83ba445b7fSEzequiel Garcia        #include <dt-bindings/power/rk3288-power.h>
84ba445b7fSEzequiel Garcia
85ba445b7fSEzequiel Garcia        vpu: video-codec@ff9a0000 {
86ba445b7fSEzequiel Garcia                compatible = "rockchip,rk3288-vpu";
870db958b6SRob Herring                reg = <0xff9a0000 0x800>;
88ba445b7fSEzequiel Garcia                interrupts = <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>,
89ba445b7fSEzequiel Garcia                             <GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>;
90ba445b7fSEzequiel Garcia                interrupt-names = "vepu", "vdpu";
91ba445b7fSEzequiel Garcia                clocks = <&cru ACLK_VCODEC>, <&cru HCLK_VCODEC>;
92ba445b7fSEzequiel Garcia                clock-names = "aclk", "hclk";
93ba445b7fSEzequiel Garcia                power-domains = <&power RK3288_PD_VIDEO>;
94ba445b7fSEzequiel Garcia                iommus = <&vpu_mmu>;
95ba445b7fSEzequiel Garcia        };
96