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 >