18d3a1cb3SBryan O'Donoghue# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 28d3a1cb3SBryan O'Donoghue%YAML 1.2 38d3a1cb3SBryan O'Donoghue--- 4af2270e0SKrzysztof Kozlowski$id: http://devicetree.org/schemas/media/qcom,sm8250-venus.yaml# 5af2270e0SKrzysztof Kozlowski$schema: http://devicetree.org/meta-schemas/core.yaml# 68d3a1cb3SBryan O'Donoghue 7af2270e0SKrzysztof Kozlowskititle: Qualcomm SM8250 Venus video encode and decode accelerators 88d3a1cb3SBryan O'Donoghue 98d3a1cb3SBryan O'Donoghuemaintainers: 108d3a1cb3SBryan O'Donoghue - Stanimir Varbanov <stanimir.varbanov@linaro.org> 118d3a1cb3SBryan O'Donoghue 128d3a1cb3SBryan O'Donoghuedescription: | 138d3a1cb3SBryan O'Donoghue The Venus IP is a video encode and decode accelerator present 148d3a1cb3SBryan O'Donoghue on Qualcomm platforms 158d3a1cb3SBryan O'Donoghue 16f8cc21d4SKrzysztof KozlowskiallOf: 17f8cc21d4SKrzysztof Kozlowski - $ref: qcom,venus-common.yaml# 18f8cc21d4SKrzysztof Kozlowski 198d3a1cb3SBryan O'Donoghueproperties: 208d3a1cb3SBryan O'Donoghue compatible: 218d3a1cb3SBryan O'Donoghue const: qcom,sm8250-venus 228d3a1cb3SBryan O'Donoghue 238d3a1cb3SBryan O'Donoghue power-domains: 248d3a1cb3SBryan O'Donoghue minItems: 2 258d3a1cb3SBryan O'Donoghue maxItems: 3 268d3a1cb3SBryan O'Donoghue 278d3a1cb3SBryan O'Donoghue power-domain-names: 288d3a1cb3SBryan O'Donoghue minItems: 2 298d3a1cb3SBryan O'Donoghue items: 308d3a1cb3SBryan O'Donoghue - const: venus 318d3a1cb3SBryan O'Donoghue - const: vcodec0 328d3a1cb3SBryan O'Donoghue - const: mx 338d3a1cb3SBryan O'Donoghue 348d3a1cb3SBryan O'Donoghue clocks: 358d3a1cb3SBryan O'Donoghue maxItems: 3 368d3a1cb3SBryan O'Donoghue 378d3a1cb3SBryan O'Donoghue clock-names: 388d3a1cb3SBryan O'Donoghue items: 398d3a1cb3SBryan O'Donoghue - const: iface 408d3a1cb3SBryan O'Donoghue - const: core 418d3a1cb3SBryan O'Donoghue - const: vcodec0_core 428d3a1cb3SBryan O'Donoghue 438d3a1cb3SBryan O'Donoghue iommus: 448d3a1cb3SBryan O'Donoghue maxItems: 1 458d3a1cb3SBryan O'Donoghue 468d3a1cb3SBryan O'Donoghue interconnects: 478d3a1cb3SBryan O'Donoghue maxItems: 2 488d3a1cb3SBryan O'Donoghue 498d3a1cb3SBryan O'Donoghue interconnect-names: 508d3a1cb3SBryan O'Donoghue items: 518d3a1cb3SBryan O'Donoghue - const: cpu-cfg 528d3a1cb3SBryan O'Donoghue - const: video-mem 538d3a1cb3SBryan O'Donoghue 54a9dd982cSKrzysztof Kozlowski operating-points-v2: true 55a9dd982cSKrzysztof Kozlowski opp-table: 56a9dd982cSKrzysztof Kozlowski type: object 57a9dd982cSKrzysztof Kozlowski 588d3a1cb3SBryan O'Donoghue resets: 598d3a1cb3SBryan O'Donoghue maxItems: 2 608d3a1cb3SBryan O'Donoghue 618d3a1cb3SBryan O'Donoghue reset-names: 628d3a1cb3SBryan O'Donoghue items: 638d3a1cb3SBryan O'Donoghue - const: bus 648d3a1cb3SBryan O'Donoghue - const: core 658d3a1cb3SBryan O'Donoghue 668d3a1cb3SBryan O'Donoghue video-decoder: 678d3a1cb3SBryan O'Donoghue type: object 688d3a1cb3SBryan O'Donoghue 698d3a1cb3SBryan O'Donoghue properties: 708d3a1cb3SBryan O'Donoghue compatible: 718d3a1cb3SBryan O'Donoghue const: venus-decoder 728d3a1cb3SBryan O'Donoghue 738d3a1cb3SBryan O'Donoghue required: 748d3a1cb3SBryan O'Donoghue - compatible 758d3a1cb3SBryan O'Donoghue 768d3a1cb3SBryan O'Donoghue additionalProperties: false 778d3a1cb3SBryan O'Donoghue 788d3a1cb3SBryan O'Donoghue video-encoder: 798d3a1cb3SBryan O'Donoghue type: object 808d3a1cb3SBryan O'Donoghue 818d3a1cb3SBryan O'Donoghue properties: 828d3a1cb3SBryan O'Donoghue compatible: 838d3a1cb3SBryan O'Donoghue const: venus-encoder 848d3a1cb3SBryan O'Donoghue 858d3a1cb3SBryan O'Donoghue required: 868d3a1cb3SBryan O'Donoghue - compatible 878d3a1cb3SBryan O'Donoghue 888d3a1cb3SBryan O'Donoghue additionalProperties: false 898d3a1cb3SBryan O'Donoghue 908d3a1cb3SBryan O'Donoghuerequired: 918d3a1cb3SBryan O'Donoghue - compatible 928d3a1cb3SBryan O'Donoghue - power-domain-names 938d3a1cb3SBryan O'Donoghue - interconnects 948d3a1cb3SBryan O'Donoghue - interconnect-names 958d3a1cb3SBryan O'Donoghue - iommus 968d3a1cb3SBryan O'Donoghue - resets 978d3a1cb3SBryan O'Donoghue - reset-names 988d3a1cb3SBryan O'Donoghue - video-decoder 998d3a1cb3SBryan O'Donoghue - video-encoder 1008d3a1cb3SBryan O'Donoghue 101f8cc21d4SKrzysztof KozlowskiunevaluatedProperties: false 1028d3a1cb3SBryan O'Donoghue 1038d3a1cb3SBryan O'Donoghueexamples: 1048d3a1cb3SBryan O'Donoghue - | 1058d3a1cb3SBryan O'Donoghue #include <dt-bindings/interrupt-controller/arm-gic.h> 1068d3a1cb3SBryan O'Donoghue #include <dt-bindings/clock/qcom,videocc-sm8250.h> 1078d3a1cb3SBryan O'Donoghue #include <dt-bindings/interconnect/qcom,sm8250.h> 1088d3a1cb3SBryan O'Donoghue #include <dt-bindings/clock/qcom,gcc-sm8250.h> 109*014f3272SRohit Agarwal #include <dt-bindings/power/qcom,rpmhpd.h> 1108d3a1cb3SBryan O'Donoghue 1118d3a1cb3SBryan O'Donoghue venus: video-codec@aa00000 { 1128d3a1cb3SBryan O'Donoghue compatible = "qcom,sm8250-venus"; 1138d3a1cb3SBryan O'Donoghue reg = <0x0aa00000 0xff000>; 1148d3a1cb3SBryan O'Donoghue interrupts = <GIC_SPI 174 IRQ_TYPE_LEVEL_HIGH>; 1158d3a1cb3SBryan O'Donoghue power-domains = <&videocc MVS0C_GDSC>, 1168d3a1cb3SBryan O'Donoghue <&videocc MVS0_GDSC>, 117*014f3272SRohit Agarwal <&rpmhpd RPMHPD_MX>; 1188d3a1cb3SBryan O'Donoghue power-domain-names = "venus", "vcodec0", "mx"; 1198d3a1cb3SBryan O'Donoghue 1208d3a1cb3SBryan O'Donoghue clocks = <&gcc GCC_VIDEO_AXI0_CLK>, 1218d3a1cb3SBryan O'Donoghue <&videocc VIDEO_CC_MVS0C_CLK>, 1228d3a1cb3SBryan O'Donoghue <&videocc VIDEO_CC_MVS0_CLK>; 1238d3a1cb3SBryan O'Donoghue clock-names = "iface", "core", "vcodec0_core"; 1248d3a1cb3SBryan O'Donoghue 1258d3a1cb3SBryan O'Donoghue interconnects = <&gem_noc MASTER_AMPSS_M0 &config_noc SLAVE_VENUS_CFG>, 1268d3a1cb3SBryan O'Donoghue <&mmss_noc MASTER_VIDEO_P0 &mc_virt SLAVE_EBI_CH0>; 1278d3a1cb3SBryan O'Donoghue interconnect-names = "cpu-cfg", "video-mem"; 1288d3a1cb3SBryan O'Donoghue 1298d3a1cb3SBryan O'Donoghue iommus = <&apps_smmu 0x2100 0x0400>; 1308d3a1cb3SBryan O'Donoghue memory-region = <&video_mem>; 1318d3a1cb3SBryan O'Donoghue 1328d3a1cb3SBryan O'Donoghue resets = <&gcc GCC_VIDEO_AXI0_CLK_ARES>, 1338d3a1cb3SBryan O'Donoghue <&videocc VIDEO_CC_MVS0C_CLK_ARES>; 1348d3a1cb3SBryan O'Donoghue reset-names = "bus", "core"; 1358d3a1cb3SBryan O'Donoghue 1368d3a1cb3SBryan O'Donoghue video-decoder { 1378d3a1cb3SBryan O'Donoghue compatible = "venus-decoder"; 1388d3a1cb3SBryan O'Donoghue }; 1398d3a1cb3SBryan O'Donoghue 1408d3a1cb3SBryan O'Donoghue video-encoder { 1418d3a1cb3SBryan O'Donoghue compatible = "venus-encoder"; 1428d3a1cb3SBryan O'Donoghue }; 1438d3a1cb3SBryan O'Donoghue }; 144