GNU Linux-libre 6.1.90-gnu
[releases.git] / Documentation / devicetree / bindings / media / rockchip,vdec.yaml
1 # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
2 %YAML 1.2
3 ---
4 $id: http://devicetree.org/schemas/media/rockchip,vdec.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
6
7 title: Rockchip Video Decoder (VDec)
8
9 maintainers:
10   - Heiko Stuebner <heiko@sntech.de>
11
12 description: |-
13   The Rockchip rk3399 has a stateless Video Decoder that can decodes H.264,
14   HEVC an VP9 streams.
15
16 properties:
17   compatible:
18     oneOf:
19       - const: rockchip,rk3399-vdec
20       - items:
21           - enum:
22               - rockchip,rk3228-vdec
23               - rockchip,rk3328-vdec
24           - const: rockchip,rk3399-vdec
25
26   reg:
27     maxItems: 1
28
29   interrupts:
30     maxItems: 1
31
32   clocks:
33     items:
34       - description: The Video Decoder AXI interface clock
35       - description: The Video Decoder AHB interface clock
36       - description: The Video Decoded CABAC clock
37       - description: The Video Decoder core clock
38
39   clock-names:
40     items:
41       - const: axi
42       - const: ahb
43       - const: cabac
44       - const: core
45
46   assigned-clocks: true
47
48   assigned-clock-rates: true
49
50   power-domains:
51     maxItems: 1
52
53   iommus:
54     maxItems: 1
55
56 required:
57   - compatible
58   - reg
59   - interrupts
60   - clocks
61   - clock-names
62   - power-domains
63
64 additionalProperties: false
65
66 examples:
67   - |
68     #include <dt-bindings/interrupt-controller/arm-gic.h>
69     #include <dt-bindings/clock/rk3399-cru.h>
70     #include <dt-bindings/power/rk3399-power.h>
71
72     vdec: video-codec@ff660000 {
73         compatible = "rockchip,rk3399-vdec";
74         reg = <0xff660000 0x400>;
75         interrupts = <GIC_SPI 116 IRQ_TYPE_LEVEL_HIGH 0>;
76         clocks = <&cru ACLK_VDU>, <&cru HCLK_VDU>,
77                  <&cru SCLK_VDU_CA>, <&cru SCLK_VDU_CORE>;
78         clock-names = "axi", "ahb", "cabac", "core";
79         power-domains = <&power RK3399_PD_VDU>;
80         iommus = <&vdec_mmu>;
81     };
82
83 ...