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/qcom,sc7180-venus.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 
    3 %YAML 1.2
    4 ---
    5 $id: "http://devicetree.org/schemas/media/qcom,sc7180-venus.yaml#"
    6 $schema: "http://devicetree.org/meta-schemas/core.yaml#"
    7 
    8 title: Qualcomm Venus video encode and decode accelerators
    9 
   10 maintainers:
   11   - Stanimir Varbanov <stanimir.varbanov@linaro.org>
   12 
   13 description: |
   14   The Venus IP is a video encode and decode accelerator present
   15   on Qualcomm platforms
   16 
   17 properties:
   18   compatible:
   19     const: qcom,sc7180-venus
   20 
   21   reg:
   22     maxItems: 1
   23 
   24   interrupts:
   25     maxItems: 1
   26 
   27   power-domains:
   28     minItems: 2
   29     maxItems: 3
   30 
   31   power-domain-names:
   32     minItems: 2
   33     items:
   34       - const: venus
   35       - const: vcodec0
   36       - const: cx
   37 
   38   clocks:
   39     maxItems: 5
   40 
   41   clock-names:
   42     items:
   43       - const: core
   44       - const: iface
   45       - const: bus
   46       - const: vcodec0_core
   47       - const: vcodec0_bus
   48 
   49   iommus:
   50     maxItems: 1
   51 
   52   memory-region:
   53     maxItems: 1
   54 
   55   interconnects:
   56     maxItems: 2
   57 
   58   interconnect-names:
   59     items:
   60       - const: video-mem
   61       - const: cpu-cfg
   62 
   63   video-decoder:
   64     type: object
   65 
   66     properties:
   67       compatible:
   68         const: venus-decoder
   69 
   70     required:
   71       - compatible
   72 
   73     additionalProperties: false
   74 
   75   video-encoder:
   76     type: object
   77 
   78     properties:
   79       compatible:
   80         const: venus-encoder
   81 
   82     required:
   83       - compatible
   84 
   85     additionalProperties: false
   86 
   87   video-firmware:
   88     type: object
   89 
   90     description: |
   91       Firmware subnode is needed when the platform does not
   92       have TrustZone.
   93 
   94     properties:
   95       iommus:
   96         maxItems: 1
   97 
   98     required:
   99       - iommus
  100 
  101 required:
  102   - compatible
  103   - reg
  104   - interrupts
  105   - power-domains
  106   - power-domain-names
  107   - clocks
  108   - clock-names
  109   - iommus
  110   - memory-region
  111   - video-decoder
  112   - video-encoder
  113 
  114 additionalProperties: false
  115 
  116 examples:
  117   - |
  118         #include <dt-bindings/interrupt-controller/arm-gic.h>
  119         #include <dt-bindings/clock/qcom,videocc-sc7180.h>
  120 
  121         venus: video-codec@aa00000 {
  122                 compatible = "qcom,sc7180-venus";
  123                 reg = <0x0aa00000 0xff000>;
  124                 interrupts = <GIC_SPI 174 IRQ_TYPE_LEVEL_HIGH>;
  125                 power-domains = <&videocc VENUS_GDSC>,
  126                                 <&videocc VCODEC0_GDSC>;
  127                 power-domain-names = "venus", "vcodec0";
  128                 clocks = <&videocc VIDEO_CC_VENUS_CTL_CORE_CLK>,
  129                          <&videocc VIDEO_CC_VENUS_AHB_CLK>,
  130                          <&videocc VIDEO_CC_VENUS_CTL_AXI_CLK>,
  131                          <&videocc VIDEO_CC_VCODEC0_CORE_CLK>,
  132                          <&videocc VIDEO_CC_VCODEC0_AXI_CLK>;
  133                 clock-names = "core", "iface", "bus",
  134                               "vcodec0_core", "vcodec0_bus";
  135                 iommus = <&apps_smmu 0x0c00 0x60>;
  136                 memory-region = <&venus_mem>;
  137 
  138                 video-decoder {
  139                         compatible = "venus-decoder";
  140                 };
  141 
  142                 video-encoder {
  143                         compatible = "venus-encoder";
  144                 };
  145         };

Cache object: 024e0d01085f7b2c0679fd58cb1514b5


[ 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.