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,sdm845-venus-v2.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,sdm845-venus-v2.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,sdm845-venus-v2
   20 
   21   reg:
   22     maxItems: 1
   23 
   24   interrupts:
   25     maxItems: 1
   26 
   27   power-domains:
   28     minItems: 3
   29     maxItems: 4
   30 
   31   power-domain-names:
   32     minItems: 3
   33     items:
   34       - const: venus
   35       - const: vcodec0
   36       - const: vcodec1
   37       - const: cx
   38 
   39   clocks:
   40     maxItems: 7
   41 
   42   clock-names:
   43     items:
   44       - const: core
   45       - const: iface
   46       - const: bus
   47       - const: vcodec0_core
   48       - const: vcodec0_bus
   49       - const: vcodec1_core
   50       - const: vcodec1_bus
   51 
   52   iommus:
   53     maxItems: 2
   54 
   55   memory-region:
   56     maxItems: 1
   57 
   58   video-core0:
   59     type: object
   60 
   61     properties:
   62       compatible:
   63         const: venus-decoder
   64 
   65     required:
   66       - compatible
   67 
   68     additionalProperties: false
   69 
   70   video-core1:
   71     type: object
   72 
   73     properties:
   74       compatible:
   75         const: venus-encoder
   76 
   77     required:
   78       - compatible
   79 
   80     additionalProperties: false
   81 
   82   video-firmware:
   83     type: object
   84 
   85     description: |
   86       Firmware subnode is needed when the platform does not
   87       have TrustZone.
   88 
   89     properties:
   90       iommus:
   91         maxItems: 1
   92 
   93     required:
   94       - iommus
   95 
   96 required:
   97   - compatible
   98   - reg
   99   - interrupts
  100   - power-domains
  101   - power-domain-names
  102   - clocks
  103   - clock-names
  104   - iommus
  105   - memory-region
  106   - video-core0
  107   - video-core1
  108 
  109 additionalProperties: false
  110 
  111 examples:
  112   - |
  113         #include <dt-bindings/interrupt-controller/arm-gic.h>
  114         #include <dt-bindings/clock/qcom,videocc-sdm845.h>
  115 
  116         video-codec@aa00000 {
  117                 compatible = "qcom,sdm845-venus-v2";
  118                 reg = <0x0aa00000 0xff000>;
  119                 interrupts = <GIC_SPI 174 IRQ_TYPE_LEVEL_HIGH>;
  120                 clocks = <&videocc VIDEO_CC_VENUS_CTL_CORE_CLK>,
  121                          <&videocc VIDEO_CC_VENUS_AHB_CLK>,
  122                          <&videocc VIDEO_CC_VENUS_CTL_AXI_CLK>,
  123                          <&videocc VIDEO_CC_VCODEC0_CORE_CLK>,
  124                          <&videocc VIDEO_CC_VCODEC0_AXI_CLK>,
  125                          <&videocc VIDEO_CC_VCODEC1_CORE_CLK>,
  126                          <&videocc VIDEO_CC_VCODEC1_AXI_CLK>;
  127                 clock-names = "core", "iface", "bus",
  128                               "vcodec0_core", "vcodec0_bus",
  129                               "vcodec1_core", "vcodec1_bus";
  130                 power-domains = <&videocc VENUS_GDSC>,
  131                                 <&videocc VCODEC0_GDSC>,
  132                                 <&videocc VCODEC1_GDSC>;
  133                 power-domain-names = "venus", "vcodec0", "vcodec1";
  134                 iommus = <&apps_smmu 0x10a0 0x8>,
  135                          <&apps_smmu 0x10b0 0x0>;
  136                 memory-region = <&venus_mem>;
  137 
  138                 video-core0 {
  139                         compatible = "venus-decoder";
  140                 };
  141 
  142                 video-core1 {
  143                         compatible = "venus-encoder";
  144                 };
  145         };

Cache object: eba4da8f4c696979011db359e6452d74


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