149a3797aSStanimir Varbanov# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 249a3797aSStanimir Varbanov%YAML 1.2 349a3797aSStanimir Varbanov--- 4af2270e0SKrzysztof Kozlowski$id: http://devicetree.org/schemas/media/qcom,sdm845-venus.yaml# 5af2270e0SKrzysztof Kozlowski$schema: http://devicetree.org/meta-schemas/core.yaml# 649a3797aSStanimir Varbanov 7af2270e0SKrzysztof Kozlowskititle: Qualcomm SDM845 Venus video encode and decode accelerators 849a3797aSStanimir Varbanov 949a3797aSStanimir Varbanovmaintainers: 1049a3797aSStanimir Varbanov - Stanimir Varbanov <stanimir.varbanov@linaro.org> 1149a3797aSStanimir Varbanov 1249a3797aSStanimir Varbanovdescription: | 1349a3797aSStanimir Varbanov The Venus IP is a video encode and decode accelerator present 1449a3797aSStanimir Varbanov on Qualcomm platforms 1549a3797aSStanimir Varbanov 16*f8cc21d4SKrzysztof KozlowskiallOf: 17*f8cc21d4SKrzysztof Kozlowski - $ref: qcom,venus-common.yaml# 18*f8cc21d4SKrzysztof Kozlowski 1949a3797aSStanimir Varbanovproperties: 2049a3797aSStanimir Varbanov compatible: 2149a3797aSStanimir Varbanov const: qcom,sdm845-venus 2249a3797aSStanimir Varbanov 2349a3797aSStanimir Varbanov power-domains: 2449a3797aSStanimir Varbanov maxItems: 1 2549a3797aSStanimir Varbanov 2649a3797aSStanimir Varbanov clocks: 2749a3797aSStanimir Varbanov maxItems: 3 2849a3797aSStanimir Varbanov 2949a3797aSStanimir Varbanov clock-names: 3049a3797aSStanimir Varbanov items: 3149a3797aSStanimir Varbanov - const: core 3249a3797aSStanimir Varbanov - const: iface 3349a3797aSStanimir Varbanov - const: bus 3449a3797aSStanimir Varbanov 3549a3797aSStanimir Varbanov iommus: 3649a3797aSStanimir Varbanov maxItems: 2 3749a3797aSStanimir Varbanov 3849a3797aSStanimir Varbanov video-core0: 3949a3797aSStanimir Varbanov type: object 4049a3797aSStanimir Varbanov 4149a3797aSStanimir Varbanov properties: 4249a3797aSStanimir Varbanov compatible: 4349a3797aSStanimir Varbanov const: venus-decoder 4449a3797aSStanimir Varbanov 4549a3797aSStanimir Varbanov clocks: 4649a3797aSStanimir Varbanov maxItems: 2 4749a3797aSStanimir Varbanov 4849a3797aSStanimir Varbanov clock-names: 4949a3797aSStanimir Varbanov items: 5049a3797aSStanimir Varbanov - const: core 5149a3797aSStanimir Varbanov - const: bus 5249a3797aSStanimir Varbanov 5349a3797aSStanimir Varbanov power-domains: 5449a3797aSStanimir Varbanov maxItems: 1 5549a3797aSStanimir Varbanov 5649a3797aSStanimir Varbanov required: 5749a3797aSStanimir Varbanov - compatible 5849a3797aSStanimir Varbanov - clocks 5949a3797aSStanimir Varbanov - clock-names 6049a3797aSStanimir Varbanov - power-domains 6149a3797aSStanimir Varbanov 6249a3797aSStanimir Varbanov additionalProperties: false 6349a3797aSStanimir Varbanov 6449a3797aSStanimir Varbanov video-core1: 6549a3797aSStanimir Varbanov type: object 6649a3797aSStanimir Varbanov 6749a3797aSStanimir Varbanov properties: 6849a3797aSStanimir Varbanov compatible: 6949a3797aSStanimir Varbanov const: venus-encoder 7049a3797aSStanimir Varbanov 7149a3797aSStanimir Varbanov clocks: 7249a3797aSStanimir Varbanov maxItems: 2 7349a3797aSStanimir Varbanov 7449a3797aSStanimir Varbanov clock-names: 7549a3797aSStanimir Varbanov items: 7649a3797aSStanimir Varbanov - const: core 7749a3797aSStanimir Varbanov - const: bus 7849a3797aSStanimir Varbanov 7949a3797aSStanimir Varbanov power-domains: 8049a3797aSStanimir Varbanov maxItems: 1 8149a3797aSStanimir Varbanov 8249a3797aSStanimir Varbanov required: 8349a3797aSStanimir Varbanov - compatible 8449a3797aSStanimir Varbanov - clocks 8549a3797aSStanimir Varbanov - clock-names 8649a3797aSStanimir Varbanov - power-domains 8749a3797aSStanimir Varbanov 8849a3797aSStanimir Varbanov additionalProperties: false 8949a3797aSStanimir Varbanov 9049a3797aSStanimir Varbanovrequired: 9149a3797aSStanimir Varbanov - compatible 9249a3797aSStanimir Varbanov - iommus 9349a3797aSStanimir Varbanov - video-core0 9449a3797aSStanimir Varbanov - video-core1 9549a3797aSStanimir Varbanov 96*f8cc21d4SKrzysztof KozlowskiunevaluatedProperties: false 975be478f9SRob Herring 9849a3797aSStanimir Varbanovexamples: 9949a3797aSStanimir Varbanov - | 10049a3797aSStanimir Varbanov #include <dt-bindings/interrupt-controller/arm-gic.h> 10149a3797aSStanimir Varbanov #include <dt-bindings/clock/qcom,videocc-sdm845.h> 10249a3797aSStanimir Varbanov 10349a3797aSStanimir Varbanov video-codec@aa00000 { 10449a3797aSStanimir Varbanov compatible = "qcom,sdm845-venus"; 105fba56184SRob Herring reg = <0x0aa00000 0xff000>; 10649a3797aSStanimir Varbanov interrupts = <GIC_SPI 174 IRQ_TYPE_LEVEL_HIGH>; 10749a3797aSStanimir Varbanov clocks = <&videocc VIDEO_CC_VENUS_CTL_CORE_CLK>, 10849a3797aSStanimir Varbanov <&videocc VIDEO_CC_VENUS_AHB_CLK>, 10949a3797aSStanimir Varbanov <&videocc VIDEO_CC_VENUS_CTL_AXI_CLK>; 11049a3797aSStanimir Varbanov clock-names = "core", "iface", "bus"; 11149a3797aSStanimir Varbanov power-domains = <&videocc VENUS_GDSC>; 11249a3797aSStanimir Varbanov iommus = <&apps_smmu 0x10a0 0x8>, 11349a3797aSStanimir Varbanov <&apps_smmu 0x10b0 0x0>; 11449a3797aSStanimir Varbanov memory-region = <&venus_mem>; 11549a3797aSStanimir Varbanov 11649a3797aSStanimir Varbanov video-core0 { 11749a3797aSStanimir Varbanov compatible = "venus-decoder"; 11849a3797aSStanimir Varbanov clocks = <&videocc VIDEO_CC_VCODEC0_CORE_CLK>, 11949a3797aSStanimir Varbanov <&videocc VIDEO_CC_VCODEC0_AXI_CLK>; 12049a3797aSStanimir Varbanov clock-names = "core", "bus"; 12149a3797aSStanimir Varbanov power-domains = <&videocc VCODEC0_GDSC>; 12249a3797aSStanimir Varbanov }; 12349a3797aSStanimir Varbanov 12449a3797aSStanimir Varbanov video-core1 { 12549a3797aSStanimir Varbanov compatible = "venus-encoder"; 12649a3797aSStanimir Varbanov clocks = <&videocc VIDEO_CC_VCODEC1_CORE_CLK>, 12749a3797aSStanimir Varbanov <&videocc VIDEO_CC_VCODEC1_AXI_CLK>; 12849a3797aSStanimir Varbanov clock-names = "core", "bus"; 12949a3797aSStanimir Varbanov power-domains = <&videocc VCODEC1_GDSC>; 13049a3797aSStanimir Varbanov }; 13149a3797aSStanimir Varbanov }; 132