The Design and Implementation of the FreeBSD Operating System, Second Edition
Now available: The Design and Implementation of the FreeBSD Operating System (Second Edition)


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]

FreeBSD/Linux Kernel Cross Reference
sys/contrib/device-tree/Bindings/media/amlogic,gx-vdec.yaml

Version: -  FREEBSD  -  FREEBSD-13-STABLE  -  FREEBSD-13-0  -  FREEBSD-12-STABLE  -  FREEBSD-12-0  -  FREEBSD-11-STABLE  -  FREEBSD-11-0  -  FREEBSD-10-STABLE  -  FREEBSD-10-0  -  FREEBSD-9-STABLE  -  FREEBSD-9-0  -  FREEBSD-8-STABLE  -  FREEBSD-8-0  -  FREEBSD-7-STABLE  -  FREEBSD-7-0  -  FREEBSD-6-STABLE  -  FREEBSD-6-0  -  FREEBSD-5-STABLE  -  FREEBSD-5-0  -  FREEBSD-4-STABLE  -  FREEBSD-3-STABLE  -  FREEBSD22  -  l41  -  OPENBSD  -  linux-2.6  -  MK84  -  PLAN9  -  xnu-8792 
SearchContext: -  none  -  3  -  10 

    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 
    8 title: Amlogic Video Decoder
    9 
   10 maintainers:
   11   - Neil Armstrong <neil.armstrong@linaro.org>
   12   - Maxime Jourdan <mjourdan@baylibre.com>
   13 
   14 description: |
   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 
   28 properties:
   29   compatible:
   30     oneOf:
   31       - items:
   32           - enum:
   33               - amlogic,gxbb-vdec # GXBB (S905)
   34               - amlogic,gxl-vdec # GXL (S905X, S905D)
   35               - amlogic,gxm-vdec # GXM (S912)
   36           - const: amlogic,gx-vdec
   37       - enum:
   38           - amlogic,g12a-vdec # G12A (S905X2, S905D2)
   39           - amlogic,sm1-vdec # SM1 (S905X3, S905D3)
   40 
   41   interrupts:
   42     minItems: 2
   43 
   44   interrupt-names:
   45     items:
   46       - const: vdec
   47       - const: esparser
   48 
   49   reg:
   50     minItems: 2
   51 
   52   reg-names:
   53     items:
   54       - const: dos
   55       - const: esparser
   56 
   57   resets:
   58     maxItems: 1
   59 
   60   reset-names:
   61     items:
   62       - const: esparser
   63 
   64   clocks:
   65     minItems: 4
   66     maxItems: 5
   67 
   68   clock-names:
   69     minItems: 4
   70     items:
   71       - const: dos_parser
   72       - const: dos
   73       - const: vdec_1
   74       - const: vdec_hevc
   75       - const: vdec_hevcf
   76 
   77   amlogic,ao-sysctrl:
   78     description: should point to the AOBUS sysctrl node
   79     $ref: /schemas/types.yaml#/definitions/phandle
   80 
   81   amlogic,canvas:
   82     description: should point to a canvas provider node
   83     $ref: /schemas/types.yaml#/definitions/phandle
   84 
   85 allOf:
   86   - if:
   87       properties:
   88         compatible:
   89           contains:
   90             enum:
   91               - amlogic,gx-vdec
   92 
   93     then:
   94       properties:
   95         clock-names:
   96           maxItems: 4
   97 
   98   - if:
   99       properties:
  100         compatible:
  101           contains:
  102             enum:
  103               - amlogic,g12a-vdec
  104               - amlogic,sm1-vdec
  105 
  106     then:
  107       properties:
  108         clock-names:
  109           minItems: 5
  110 
  111 required:
  112   - compatible
  113   - reg
  114   - reg-names
  115   - interrupts
  116   - interrupt-names
  117   - clocks
  118   - clock-names
  119   - resets
  120   - reset-names
  121   - amlogic,ao-sysctrl
  122   - amlogic,canvas
  123 
  124 additionalProperties: false
  125 
  126 examples:
  127   - |
  128     vdec: video-decoder@c8820000 {
  129           compatible = "amlogic,gxl-vdec", "amlogic,gx-vdec";
  130           reg = <0xc8820000 0x10000>, <0xc110a580 0xe4>;
  131           reg-names = "dos", "esparser";
  132           interrupts = <44>, <32>;
  133           interrupt-names = "vdec", "esparser";
  134           clocks = <&clk_dos_parser> ,<&clk_dos>, <&clk_vdec_1>, <&clk_vdec_hevc>;
  135           clock-names = "dos_parser", "dos", "vdec_1", "vdec_hevc";
  136           resets = <&reset_parser>;
  137           reset-names = "esparser";
  138           amlogic,ao-sysctrl = <&sysctrl_AO>;
  139           amlogic,canvas = <&canvas>;
  140     };

Cache object: bd2c4a423ad3b505b747d850485cd12c


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]


This page is part of the FreeBSD/Linux Linux Kernel Cross-Reference, and was automatically generated using a modified version of the LXR engine.