# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/media/rockchip,vdec.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#
title: Rockchip Video Decoder (VDec)
maintainers:
- Heiko Stuebner <[email protected]>
description: |-
The Rockchip rk3399 has a stateless Video Decoder that can decodes H.264,
HEVC an VP9 streams.
properties:
compatible:
oneOf:
- const: rockchip,rk3399-vdec
- items:
- enum:
- rockchip,rk3228-vdec
- rockchip,rk3328-vdec
- const: rockchip,rk3399-vdec
reg:
maxItems: 1
interrupts:
maxItems: 1
clocks:
items:
- description: The Video Decoder AXI interface clock
- description: The Video Decoder AHB interface clock
- description: The Video Decoded CABAC clock
- description: The Video Decoder core clock
clock-names:
items:
- const: axi
- const: ahb
- const: cabac
- const: core
assigned-clocks: true
assigned-clock-rates: true
power-domains:
maxItems: 1
iommus:
maxItems: 1
required:
- compatible
- reg
- interrupts
- clocks
- clock-names
- power-domains
additionalProperties: false
examples:
- |
#include <dt-bindings/interrupt-controller/arm-gic.h>
#include <dt-bindings/clock/rk3399-cru.h>
#include <dt-bindings/power/rk3399-power.h>
vdec: video-codec@ff660000 {
compatible = "rockchip,rk3399-vdec";
reg = <0xff660000 0x400>;
interrupts = <GIC_SPI 116 IRQ_TYPE_LEVEL_HIGH 0>;
clocks = <&cru ACLK_VDU>, <&cru HCLK_VDU>,
<&cru SCLK_VDU_CA>, <&cru SCLK_VDU_CORE>;
clock-names = "axi", "ahb", "cabac", "core";
power-domains = <&power RK3399_PD_VDU>;
iommus = <&vdec_mmu>;
};
...