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

TOMOYO Linux Cross Reference
Linux/Documentation/devicetree/bindings/media/qcom,sm8250-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,sm8250-venus.yaml#
  5 $schema: http://devicetree.org/meta-schemas/core.yaml#
  6 
  7 title: Qualcomm SM8250 Venus video encode and decode accelerators
  8 
  9 maintainers:
 10   - Stanimir Varbanov <stanimir.varbanov@linaro.org>
 11 
 12 description: |
 13   The Venus IP is a video encode and decode accelerator present
 14   on Qualcomm platforms
 15 
 16 allOf:
 17   - $ref: qcom,venus-common.yaml#
 18 
 19 properties:
 20   compatible:
 21     const: qcom,sm8250-venus
 22 
 23   power-domains:
 24     minItems: 2
 25     maxItems: 3
 26 
 27   power-domain-names:
 28     minItems: 2
 29     items:
 30       - const: venus
 31       - const: vcodec0
 32       - const: mx
 33 
 34   clocks:
 35     maxItems: 3
 36 
 37   clock-names:
 38     items:
 39       - const: iface
 40       - const: core
 41       - const: vcodec0_core
 42 
 43   iommus:
 44     maxItems: 1
 45 
 46   interconnects:
 47     maxItems: 2
 48 
 49   interconnect-names:
 50     items:
 51       - const: cpu-cfg
 52       - const: video-mem
 53 
 54   operating-points-v2: true
 55   opp-table:
 56     type: object
 57 
 58   resets:
 59     maxItems: 2
 60 
 61   reset-names:
 62     items:
 63       - const: bus
 64       - const: core
 65 
 66   video-decoder:
 67     type: object
 68 
 69     properties:
 70       compatible:
 71         const: venus-decoder
 72 
 73     required:
 74       - compatible
 75 
 76     additionalProperties: false
 77 
 78   video-encoder:
 79     type: object
 80 
 81     properties:
 82       compatible:
 83         const: venus-encoder
 84 
 85     required:
 86       - compatible
 87 
 88     additionalProperties: false
 89 
 90 required:
 91   - compatible
 92   - power-domain-names
 93   - interconnects
 94   - interconnect-names
 95   - iommus
 96   - resets
 97   - reset-names
 98   - video-decoder
 99   - video-encoder
100 
101 unevaluatedProperties: false
102 
103 examples:
104   - |
105     #include <dt-bindings/interrupt-controller/arm-gic.h>
106     #include <dt-bindings/clock/qcom,videocc-sm8250.h>
107     #include <dt-bindings/interconnect/qcom,sm8250.h>
108     #include <dt-bindings/clock/qcom,gcc-sm8250.h>
109     #include <dt-bindings/power/qcom,rpmhpd.h>
110 
111     venus: video-codec@aa00000 {
112         compatible = "qcom,sm8250-venus";
113         reg = <0x0aa00000 0xff000>;
114         interrupts = <GIC_SPI 174 IRQ_TYPE_LEVEL_HIGH>;
115         power-domains = <&videocc MVS0C_GDSC>,
116                         <&videocc MVS0_GDSC>,
117                         <&rpmhpd RPMHPD_MX>;
118         power-domain-names = "venus", "vcodec0", "mx";
119 
120         clocks = <&gcc GCC_VIDEO_AXI0_CLK>,
121                  <&videocc VIDEO_CC_MVS0C_CLK>,
122                  <&videocc VIDEO_CC_MVS0_CLK>;
123         clock-names = "iface", "core", "vcodec0_core";
124 
125         interconnects = <&gem_noc MASTER_AMPSS_M0 &config_noc SLAVE_VENUS_CFG>,
126                         <&mmss_noc MASTER_VIDEO_P0 &mc_virt SLAVE_EBI_CH0>;
127         interconnect-names = "cpu-cfg", "video-mem";
128 
129         iommus = <&apps_smmu 0x2100 0x0400>;
130         memory-region = <&video_mem>;
131 
132         resets = <&gcc GCC_VIDEO_AXI0_CLK_ARES>,
133                  <&videocc VIDEO_CC_MVS0C_CLK_ARES>;
134         reset-names = "bus", "core";
135 
136         video-decoder {
137             compatible = "venus-decoder";
138         };
139 
140         video-encoder {
141             compatible = "venus-encoder";
142         };
143     };

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