ACPI: EC: Rework flushing of pending work
[linux/fpc-iii.git] / Documentation / devicetree / bindings / media / amlogic,vdec.txt
blob9b6aace86ca7e185ba4b6a3428067a2cd7ab7e46
1 Amlogic Video Decoder
2 ================================
4 The video decoding IP lies within the DOS memory region,
5 except for the hardware bitstream parser that makes use of an undocumented
6 region.
8 It makes use of the following blocks:
10 - ESPARSER is a bitstream parser that outputs to a VIFIFO. Further VDEC blocks
11 then feed from this VIFIFO.
12 - VDEC_1 can decode MPEG-1, MPEG-2, MPEG-4 part 2, MJPEG, H.263, H.264, VC-1.
13 - VDEC_HEVC can decode HEVC and VP9.
15 Both VDEC_1 and VDEC_HEVC share the "vdec" IRQ and as such cannot run
16 concurrently.
18 Device Tree Bindings:
19 ---------------------
21 VDEC: Video Decoder
22 --------------------------
24 Required properties:
25 - compatible: value should be different for each SoC family as :
26         - GXBB (S905) : "amlogic,gxbb-vdec"
27         - GXL (S905X, S905D) : "amlogic,gxl-vdec"
28         - GXM (S912) : "amlogic,gxm-vdec"
29         followed by the common "amlogic,gx-vdec"
30 - reg: base address and size of he following memory-mapped regions :
31         - dos
32         - esparser
33 - reg-names: should contain the names of the previous memory regions
34 - interrupts: should contain the following IRQs:
35         - vdec
36         - esparser
37 - interrupt-names: should contain the names of the previous interrupts
38 - amlogic,ao-sysctrl: should point to the AOBUS sysctrl node
39 - amlogic,canvas: should point to a canvas provider node
40 - clocks: should contain the following clocks :
41         - dos_parser
42         - dos
43         - vdec_1
44         - vdec_hevc
45 - clock-names: should contain the names of the previous clocks
46 - resets: should contain the parser reset
47 - reset-names: should be "esparser"
49 Example:
51 vdec: video-codec@c8820000 {
52         compatible = "amlogic,gxbb-vdec", "amlogic,gx-vdec";
53         reg = <0x0 0xc8820000 0x0 0x10000>,
54               <0x0 0xc110a580 0x0 0xe4>;
55         reg-names = "dos", "esparser";
57         interrupts = <GIC_SPI 44 IRQ_TYPE_EDGE_RISING>,
58                      <GIC_SPI 32 IRQ_TYPE_EDGE_RISING>;
59         interrupt-names = "vdec", "esparser";
61         amlogic,ao-sysctrl = <&sysctrl_AO>;
62         amlogic,canvas = <&canvas>;
64         clocks = <&clkc CLKID_DOS_PARSER>,
65                  <&clkc CLKID_DOS>,
66                  <&clkc CLKID_VDEC_1>,
67                  <&clkc CLKID_VDEC_HEVC>;
68         clock-names = "dos_parser", "dos", "vdec_1", "vdec_hevc";
70         resets = <&reset RESET_PARSER>;
71         reset-names = "esparser";