File Index
Files and directories
Sign in
FILE

amlogic,gx-vdec.yaml

File preview with syntax highlighting.

linux-6.19.14/Documentation/devicetree/bindings/media/amlogic,gx-vdec.yaml YAML
  1# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
  2# Copyright 2019 BayLibre, SAS
  3%YAML 1.2
  4---
  5$id: http://devicetree.org/schemas/media/amlogic,gx-vdec.yaml#
  6$schema: http://devicetree.org/meta-schemas/core.yaml#
  7
  8title: Amlogic Video Decoder
  9
 10maintainers:
 11  - Neil Armstrong <neil.armstrong@linaro.org>
 12  - Maxime Jourdan <mjourdan@baylibre.com>
 13
 14description: |
 15  The video decoding IP lies within the DOS memory region,
 16  except for the hardware bitstream parser that makes use of an undocumented
 17  region.
 18
 19  It makes use of the following blocks:
 20  - ESPARSER is a bitstream parser that outputs to a VIFIFO. Further VDEC blocks
 21    then feed from this VIFIFO.
 22  - VDEC_1 can decode MPEG-1, MPEG-2, MPEG-4 part 2, MJPEG, H.263, H.264, VC-1.
 23  - VDEC_HEVC can decode HEVC and VP9.
 24
 25  Both VDEC_1 and VDEC_HEVC share the "vdec" IRQ and as such cannot run
 26  concurrently.
 27
 28properties:
 29  compatible:
 30    oneOf:
 31      - items:
 32          - enum:
 33              - amlogic,gxbb-vdec # GXBB (S905)
 34              - amlogic,gxl-vdec # GXL (S905D, S905W, S905X, S905Y)
 35              - amlogic,gxlx-vdec # GXLX (S905L)
 36              - amlogic,gxm-vdec # GXM (S912)
 37          - const: amlogic,gx-vdec
 38      - enum:
 39          - amlogic,g12a-vdec # G12A (S905X2, S905D2)
 40          - amlogic,sm1-vdec # SM1 (S905X3, S905D3)
 41
 42  interrupts:
 43    minItems: 2
 44
 45  interrupt-names:
 46    items:
 47      - const: vdec
 48      - const: esparser
 49
 50  reg:
 51    minItems: 2
 52
 53  reg-names:
 54    items:
 55      - const: dos
 56      - const: esparser
 57
 58  resets:
 59    maxItems: 1
 60
 61  reset-names:
 62    items:
 63      - const: esparser
 64
 65  clocks:
 66    minItems: 4
 67    maxItems: 5
 68
 69  clock-names:
 70    minItems: 4
 71    items:
 72      - const: dos_parser
 73      - const: dos
 74      - const: vdec_1
 75      - const: vdec_hevc
 76      - const: vdec_hevcf
 77
 78  amlogic,ao-sysctrl:
 79    description: should point to the AOBUS sysctrl node
 80    $ref: /schemas/types.yaml#/definitions/phandle
 81
 82  amlogic,canvas:
 83    description: should point to a canvas provider node
 84    $ref: /schemas/types.yaml#/definitions/phandle
 85
 86allOf:
 87  - if:
 88      properties:
 89        compatible:
 90          contains:
 91            enum:
 92              - amlogic,gx-vdec
 93
 94    then:
 95      properties:
 96        clock-names:
 97          maxItems: 4
 98
 99  - if:
100      properties:
101        compatible:
102          contains:
103            enum:
104              - amlogic,g12a-vdec
105              - amlogic,sm1-vdec
106
107    then:
108      properties:
109        clock-names:
110          minItems: 5
111
112required:
113  - compatible
114  - reg
115  - reg-names
116  - interrupts
117  - interrupt-names
118  - clocks
119  - clock-names
120  - resets
121  - reset-names
122  - amlogic,ao-sysctrl
123  - amlogic,canvas
124
125additionalProperties: false
126
127examples:
128  - |
129    vdec: video-decoder@c8820000 {
130          compatible = "amlogic,gxl-vdec", "amlogic,gx-vdec";
131          reg = <0xc8820000 0x10000>, <0xc110a580 0xe4>;
132          reg-names = "dos", "esparser";
133          interrupts = <44>, <32>;
134          interrupt-names = "vdec", "esparser";
135          clocks = <&clk_dos_parser> ,<&clk_dos>, <&clk_vdec_1>, <&clk_vdec_hevc>;
136          clock-names = "dos_parser", "dos", "vdec_1", "vdec_hevc";
137          resets = <&reset_parser>;
138          reset-names = "esparser";
139          amlogic,ao-sysctrl = <&sysctrl_AO>;
140          amlogic,canvas = <&canvas>;
141    };
~/ Read-only file preview.