Re: [PATCH v3 1/3] dt-bindings: media: add Amlogic Video Decoder Bindings

From: Maxime Jourdan
Date: Fri Sep 28 2018 - 10:32:25 EST


Errata: I forgot the following tag:

Reviewed-by: Rob Herring <robh@xxxxxxxxxx>

(The patch is unchanged from v2)
Le ven. 28 sept. 2018 Ã 16:29, Maxime Jourdan <mjourdan@xxxxxxxxxxxx> a Ãcrit :
>
> Add documentation for the meson vdec dts node.
>
> Signed-off-by: Maxime Jourdan <mjourdan@xxxxxxxxxxxx>
> ---
> .../bindings/media/amlogic,vdec.txt | 71 +++++++++++++++++++
> 1 file changed, 71 insertions(+)
> create mode 100644 Documentation/devicetree/bindings/media/amlogic,vdec.txt
>
> diff --git a/Documentation/devicetree/bindings/media/amlogic,vdec.txt b/Documentation/devicetree/bindings/media/amlogic,vdec.txt
> new file mode 100644
> index 000000000000..aabdd01bcf32
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/media/amlogic,vdec.txt
> @@ -0,0 +1,71 @@
> +Amlogic Video Decoder
> +================================
> +
> +The video decoding IP lies within the DOS memory region,
> +except for the hardware bitstream parser that makes use of an undocumented
> +region.
> +
> +It makes use of the following blocks:
> +
> +- ESPARSER is a bitstream parser that outputs to a VIFIFO. Further VDEC blocks
> +then feed from this VIFIFO.
> +- VDEC_1 can decode MPEG-1, MPEG-2, MPEG-4 part 2, MJPEG, H.263, H.264, VC-1.
> +- VDEC_HEVC can decode HEVC and VP9.
> +
> +Both VDEC_1 and VDEC_HEVC share the "vdec" IRQ and as such cannot run
> +concurrently.
> +
> +Device Tree Bindings:
> +---------------------
> +
> +VDEC: Video Decoder
> +--------------------------
> +
> +Required properties:
> +- compatible: value should be different for each SoC family as :
> + - GXBB (S905) : "amlogic,gxbb-vdec"
> + - GXL (S905X, S905D) : "amlogic,gxl-vdec"
> + - GXM (S912) : "amlogic,gxm-vdec"
> +- reg: base address and size of he following memory-mapped regions :
> + - dos
> + - esparser
> +- reg-names: should contain the names of the previous memory regions
> +- interrupts: should contain the following IRQs:
> + - vdec
> + - esparser
> +- interrupt-names: should contain the names of the previous interrupts
> +- amlogic,ao-sysctrl: should point to the AOBUS sysctrl node
> +- amlogic,canvas: should point to a canvas provider node
> +- clocks: should contain the following clocks :
> + - dos_parser
> + - dos
> + - vdec_1
> + - vdec_hevc
> +- clock-names: should contain the names of the previous clocks
> +- resets: should contain the parser reset
> +- reset-names: should be "esparser"
> +
> +Example:
> +
> +vdec: video-decoder@c8820000 {
> + compatible = "amlogic,gxbb-vdec";
> + reg = <0x0 0xc8820000 0x0 0x10000>,
> + <0x0 0xc110a580 0x0 0xe4>;
> + reg-names = "dos", "esparser";
> +
> + interrupts = <GIC_SPI 44 IRQ_TYPE_EDGE_RISING>,
> + <GIC_SPI 32 IRQ_TYPE_EDGE_RISING>;
> + interrupt-names = "vdec", "esparser";
> +
> + amlogic,ao-sysctrl = <&sysctrl_AO>;
> + amlogic,canvas = <&canvas>;
> +
> + clocks = <&clkc CLKID_DOS_PARSER>,
> + <&clkc CLKID_DOS>,
> + <&clkc CLKID_VDEC_1>,
> + <&clkc CLKID_VDEC_HEVC>;
> + clock-names = "dos_parser", "dos", "vdec_1", "vdec_hevc";
> +
> + resets = <&reset RESET_PARSER>;
> + reset-names = "esparser";
> +};
> --
> 2.19.0
>