2026-01-29 22:25:33 +08:00

103 lines
2.3 KiB
YAML

# 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 <heiko@sntech.de>
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
resets:
maxItems: 6
reset-names:
items:
- const: video_h
- const: video_a
- const: video_core
- const: video_cabac
- const: niu_a
- const: niu_h
required:
- compatible
- reg
- interrupts
- clocks
- clock-names
- power-domains
- resets
- reset-names
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>;
resets = <&cru SRST_H_VDU>, <&cru SRST_A_VDU>,
<&cru SRST_VDU_CORE>, <&cru SRST_VDU_CA>,
<&cru SRST_A_VDU_NOC>, <&cru SRST_H_VDU_NOC>;
reset-names = "video_h", "video_a", "video_core", "video_cabac",
"niu_a", "niu_h";
};
...