~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/Documentation/devicetree/bindings/media/qcom,sdm660-venus.yaml

Version: ~ [ linux-6.12-rc7 ] ~ [ linux-6.11.7 ] ~ [ linux-6.10.14 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.60 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.116 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.171 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.229 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.285 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.323 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.336 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.337 ] ~ [ linux-4.4.302 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.12 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

  1 # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
  2 %YAML 1.2
  3 ---
  4 $id: http://devicetree.org/schemas/media/qcom,sdm660-venus.yaml#
  5 $schema: http://devicetree.org/meta-schemas/core.yaml#
  6 
  7 title: Qualcomm SDM660 Venus video encode and decode accelerators
  8 
  9 maintainers:
 10   - Stanimir Varbanov <stanimir.varbanov@linaro.org>
 11   - AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
 12 
 13 description: |
 14   The Venus IP is a video encode and decode accelerator present
 15   on Qualcomm platforms
 16 
 17 allOf:
 18   - $ref: qcom,venus-common.yaml#
 19 
 20 properties:
 21   compatible:
 22     const: qcom,sdm660-venus
 23 
 24   clocks:
 25     maxItems: 4
 26 
 27   clock-names:
 28     items:
 29       - const: core
 30       - const: iface
 31       - const: bus
 32       - const: bus_throttle
 33 
 34   interconnects:
 35     maxItems: 2
 36 
 37   interconnect-names:
 38     items:
 39       - const: cpu-cfg
 40       - const: video-mem
 41 
 42   iommus:
 43     maxItems: 20
 44 
 45   power-domains:
 46     maxItems: 1
 47 
 48   video-decoder:
 49     type: object
 50 
 51     properties:
 52       compatible:
 53         const: venus-decoder
 54 
 55       clocks:
 56         maxItems: 1
 57 
 58       clock-names:
 59         items:
 60           - const: vcodec0_core
 61 
 62       power-domains:
 63         maxItems: 1
 64 
 65     required:
 66       - compatible
 67       - clocks
 68       - clock-names
 69       - power-domains
 70 
 71     additionalProperties: false
 72 
 73   video-encoder:
 74     type: object
 75 
 76     properties:
 77       compatible:
 78         const: venus-encoder
 79 
 80       clocks:
 81         maxItems: 1
 82 
 83       clock-names:
 84         items:
 85           - const: vcodec0_core
 86 
 87       power-domains:
 88         maxItems: 1
 89 
 90     required:
 91       - compatible
 92       - clocks
 93       - clock-names
 94       - power-domains
 95 
 96     additionalProperties: false
 97 
 98 required:
 99   - compatible
100   - iommus
101   - video-decoder
102   - video-encoder
103 
104 unevaluatedProperties: false
105 
106 examples:
107   - |
108     #include <dt-bindings/clock/qcom,mmcc-sdm660.h>
109     #include <dt-bindings/interrupt-controller/arm-gic.h>
110 
111     video-codec@cc00000 {
112         compatible = "qcom,sdm660-venus";
113         reg = <0x0cc00000 0xff000>;
114         clocks = <&mmcc VIDEO_CORE_CLK>,
115                  <&mmcc VIDEO_AHB_CLK>,
116                  <&mmcc VIDEO_AXI_CLK>,
117                  <&mmcc THROTTLE_VIDEO_AXI_CLK>;
118         clock-names = "core", "iface", "bus", "bus_throttle";
119         interconnects = <&gnoc 0 &mnoc 13>,
120                         <&mnoc 4 &bimc 5>;
121         interconnect-names = "cpu-cfg", "video-mem";
122         interrupts = <GIC_SPI 287 IRQ_TYPE_LEVEL_HIGH>;
123         iommus = <&mmss_smmu 0x400>,
124                  <&mmss_smmu 0x401>,
125                  <&mmss_smmu 0x40a>,
126                  <&mmss_smmu 0x407>,
127                  <&mmss_smmu 0x40e>,
128                  <&mmss_smmu 0x40f>,
129                  <&mmss_smmu 0x408>,
130                  <&mmss_smmu 0x409>,
131                  <&mmss_smmu 0x40b>,
132                  <&mmss_smmu 0x40c>,
133                  <&mmss_smmu 0x40d>,
134                  <&mmss_smmu 0x410>,
135                  <&mmss_smmu 0x421>,
136                  <&mmss_smmu 0x428>,
137                  <&mmss_smmu 0x429>,
138                  <&mmss_smmu 0x42b>,
139                  <&mmss_smmu 0x42c>,
140                  <&mmss_smmu 0x42d>,
141                  <&mmss_smmu 0x411>,
142                  <&mmss_smmu 0x431>;
143         memory-region = <&venus_region>;
144         power-domains = <&mmcc VENUS_GDSC>;
145 
146         video-decoder {
147             compatible = "venus-decoder";
148             clocks = <&mmcc VIDEO_SUBCORE0_CLK>;
149             clock-names = "vcodec0_core";
150             power-domains = <&mmcc VENUS_CORE0_GDSC>;
151         };
152 
153         video-encoder {
154             compatible = "venus-encoder";
155             clocks = <&mmcc VIDEO_SUBCORE0_CLK>;
156             clock-names = "vcodec0_core";
157             power-domains = <&mmcc VENUS_CORE0_GDSC>;
158         };
159     };

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

sflogo.php