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