196fbc6c5SAngeloGioacchino Del Regno# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 296fbc6c5SAngeloGioacchino Del Regno%YAML 1.2 396fbc6c5SAngeloGioacchino Del Regno--- 4af2270e0SKrzysztof Kozlowski$id: http://devicetree.org/schemas/media/qcom,sdm660-venus.yaml# 5af2270e0SKrzysztof Kozlowski$schema: http://devicetree.org/meta-schemas/core.yaml# 696fbc6c5SAngeloGioacchino Del Regno 7af2270e0SKrzysztof Kozlowskititle: Qualcomm SDM660 Venus video encode and decode accelerators 896fbc6c5SAngeloGioacchino Del Regno 996fbc6c5SAngeloGioacchino Del Regnomaintainers: 1096fbc6c5SAngeloGioacchino Del Regno - Stanimir Varbanov <stanimir.varbanov@linaro.org> 1196fbc6c5SAngeloGioacchino Del Regno - AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com> 1296fbc6c5SAngeloGioacchino Del Regno 1396fbc6c5SAngeloGioacchino Del Regnodescription: | 1496fbc6c5SAngeloGioacchino Del Regno The Venus IP is a video encode and decode accelerator present 1596fbc6c5SAngeloGioacchino Del Regno on Qualcomm platforms 1696fbc6c5SAngeloGioacchino Del Regno 17*f8cc21d4SKrzysztof KozlowskiallOf: 18*f8cc21d4SKrzysztof Kozlowski - $ref: qcom,venus-common.yaml# 19*f8cc21d4SKrzysztof Kozlowski 2096fbc6c5SAngeloGioacchino Del Regnoproperties: 2196fbc6c5SAngeloGioacchino Del Regno compatible: 2296fbc6c5SAngeloGioacchino Del Regno const: qcom,sdm660-venus 2396fbc6c5SAngeloGioacchino Del Regno 2496fbc6c5SAngeloGioacchino Del Regno clocks: 2596fbc6c5SAngeloGioacchino Del Regno maxItems: 4 2696fbc6c5SAngeloGioacchino Del Regno 2796fbc6c5SAngeloGioacchino Del Regno clock-names: 2896fbc6c5SAngeloGioacchino Del Regno items: 2996fbc6c5SAngeloGioacchino Del Regno - const: core 3096fbc6c5SAngeloGioacchino Del Regno - const: iface 3196fbc6c5SAngeloGioacchino Del Regno - const: bus 3296fbc6c5SAngeloGioacchino Del Regno - const: bus_throttle 3396fbc6c5SAngeloGioacchino Del Regno 3496fbc6c5SAngeloGioacchino Del Regno interconnects: 3596fbc6c5SAngeloGioacchino Del Regno maxItems: 2 3696fbc6c5SAngeloGioacchino Del Regno 3796fbc6c5SAngeloGioacchino Del Regno interconnect-names: 3896fbc6c5SAngeloGioacchino Del Regno items: 3996fbc6c5SAngeloGioacchino Del Regno - const: cpu-cfg 4096fbc6c5SAngeloGioacchino Del Regno - const: video-mem 4196fbc6c5SAngeloGioacchino Del Regno 4296fbc6c5SAngeloGioacchino Del Regno iommus: 4396fbc6c5SAngeloGioacchino Del Regno maxItems: 20 4496fbc6c5SAngeloGioacchino Del Regno 4596fbc6c5SAngeloGioacchino Del Regno power-domains: 4696fbc6c5SAngeloGioacchino Del Regno maxItems: 1 4796fbc6c5SAngeloGioacchino Del Regno 4896fbc6c5SAngeloGioacchino Del Regno video-decoder: 4996fbc6c5SAngeloGioacchino Del Regno type: object 5096fbc6c5SAngeloGioacchino Del Regno 5196fbc6c5SAngeloGioacchino Del Regno properties: 5296fbc6c5SAngeloGioacchino Del Regno compatible: 5396fbc6c5SAngeloGioacchino Del Regno const: venus-decoder 5496fbc6c5SAngeloGioacchino Del Regno 5596fbc6c5SAngeloGioacchino Del Regno clocks: 5696fbc6c5SAngeloGioacchino Del Regno maxItems: 1 5796fbc6c5SAngeloGioacchino Del Regno 5896fbc6c5SAngeloGioacchino Del Regno clock-names: 5996fbc6c5SAngeloGioacchino Del Regno items: 6096fbc6c5SAngeloGioacchino Del Regno - const: vcodec0_core 6196fbc6c5SAngeloGioacchino Del Regno 6296fbc6c5SAngeloGioacchino Del Regno power-domains: 6396fbc6c5SAngeloGioacchino Del Regno maxItems: 1 6496fbc6c5SAngeloGioacchino Del Regno 6596fbc6c5SAngeloGioacchino Del Regno required: 6696fbc6c5SAngeloGioacchino Del Regno - compatible 6796fbc6c5SAngeloGioacchino Del Regno - clocks 6896fbc6c5SAngeloGioacchino Del Regno - clock-names 6996fbc6c5SAngeloGioacchino Del Regno - power-domains 7096fbc6c5SAngeloGioacchino Del Regno 7196fbc6c5SAngeloGioacchino Del Regno additionalProperties: false 7296fbc6c5SAngeloGioacchino Del Regno 7396fbc6c5SAngeloGioacchino Del Regno video-encoder: 7496fbc6c5SAngeloGioacchino Del Regno type: object 7596fbc6c5SAngeloGioacchino Del Regno 7696fbc6c5SAngeloGioacchino Del Regno properties: 7796fbc6c5SAngeloGioacchino Del Regno compatible: 7896fbc6c5SAngeloGioacchino Del Regno const: venus-encoder 7996fbc6c5SAngeloGioacchino Del Regno 8096fbc6c5SAngeloGioacchino Del Regno clocks: 8196fbc6c5SAngeloGioacchino Del Regno maxItems: 1 8296fbc6c5SAngeloGioacchino Del Regno 8396fbc6c5SAngeloGioacchino Del Regno clock-names: 8496fbc6c5SAngeloGioacchino Del Regno items: 8596fbc6c5SAngeloGioacchino Del Regno - const: vcodec0_core 8696fbc6c5SAngeloGioacchino Del Regno 8796fbc6c5SAngeloGioacchino Del Regno power-domains: 8896fbc6c5SAngeloGioacchino Del Regno maxItems: 1 8996fbc6c5SAngeloGioacchino Del Regno 9096fbc6c5SAngeloGioacchino Del Regno required: 9196fbc6c5SAngeloGioacchino Del Regno - compatible 9296fbc6c5SAngeloGioacchino Del Regno - clocks 9396fbc6c5SAngeloGioacchino Del Regno - clock-names 9496fbc6c5SAngeloGioacchino Del Regno - power-domains 9596fbc6c5SAngeloGioacchino Del Regno 9696fbc6c5SAngeloGioacchino Del Regno additionalProperties: false 9796fbc6c5SAngeloGioacchino Del Regno 9896fbc6c5SAngeloGioacchino Del Regnorequired: 9996fbc6c5SAngeloGioacchino Del Regno - compatible 10096fbc6c5SAngeloGioacchino Del Regno - iommus 10196fbc6c5SAngeloGioacchino Del Regno - video-decoder 10296fbc6c5SAngeloGioacchino Del Regno - video-encoder 10396fbc6c5SAngeloGioacchino Del Regno 104*f8cc21d4SKrzysztof KozlowskiunevaluatedProperties: false 10596fbc6c5SAngeloGioacchino Del Regno 10696fbc6c5SAngeloGioacchino Del Regnoexamples: 10796fbc6c5SAngeloGioacchino Del Regno - | 10896fbc6c5SAngeloGioacchino Del Regno #include <dt-bindings/clock/qcom,mmcc-sdm660.h> 10996fbc6c5SAngeloGioacchino Del Regno #include <dt-bindings/interrupt-controller/arm-gic.h> 11096fbc6c5SAngeloGioacchino Del Regno 11196fbc6c5SAngeloGioacchino Del Regno video-codec@cc00000 { 11296fbc6c5SAngeloGioacchino Del Regno compatible = "qcom,sdm660-venus"; 11396fbc6c5SAngeloGioacchino Del Regno reg = <0x0cc00000 0xff000>; 11496fbc6c5SAngeloGioacchino Del Regno clocks = <&mmcc VIDEO_CORE_CLK>, 11596fbc6c5SAngeloGioacchino Del Regno <&mmcc VIDEO_AHB_CLK>, 11696fbc6c5SAngeloGioacchino Del Regno <&mmcc VIDEO_AXI_CLK>, 11796fbc6c5SAngeloGioacchino Del Regno <&mmcc THROTTLE_VIDEO_AXI_CLK>; 11896fbc6c5SAngeloGioacchino Del Regno clock-names = "core", "iface", "bus", "bus_throttle"; 11996fbc6c5SAngeloGioacchino Del Regno interconnects = <&gnoc 0 &mnoc 13>, 12096fbc6c5SAngeloGioacchino Del Regno <&mnoc 4 &bimc 5>; 12196fbc6c5SAngeloGioacchino Del Regno interconnect-names = "cpu-cfg", "video-mem"; 12296fbc6c5SAngeloGioacchino Del Regno interrupts = <GIC_SPI 287 IRQ_TYPE_LEVEL_HIGH>; 12396fbc6c5SAngeloGioacchino Del Regno iommus = <&mmss_smmu 0x400>, 12496fbc6c5SAngeloGioacchino Del Regno <&mmss_smmu 0x401>, 12596fbc6c5SAngeloGioacchino Del Regno <&mmss_smmu 0x40a>, 12696fbc6c5SAngeloGioacchino Del Regno <&mmss_smmu 0x407>, 12796fbc6c5SAngeloGioacchino Del Regno <&mmss_smmu 0x40e>, 12896fbc6c5SAngeloGioacchino Del Regno <&mmss_smmu 0x40f>, 12996fbc6c5SAngeloGioacchino Del Regno <&mmss_smmu 0x408>, 13096fbc6c5SAngeloGioacchino Del Regno <&mmss_smmu 0x409>, 13196fbc6c5SAngeloGioacchino Del Regno <&mmss_smmu 0x40b>, 13296fbc6c5SAngeloGioacchino Del Regno <&mmss_smmu 0x40c>, 13396fbc6c5SAngeloGioacchino Del Regno <&mmss_smmu 0x40d>, 13496fbc6c5SAngeloGioacchino Del Regno <&mmss_smmu 0x410>, 13596fbc6c5SAngeloGioacchino Del Regno <&mmss_smmu 0x421>, 13696fbc6c5SAngeloGioacchino Del Regno <&mmss_smmu 0x428>, 13796fbc6c5SAngeloGioacchino Del Regno <&mmss_smmu 0x429>, 13896fbc6c5SAngeloGioacchino Del Regno <&mmss_smmu 0x42b>, 13996fbc6c5SAngeloGioacchino Del Regno <&mmss_smmu 0x42c>, 14096fbc6c5SAngeloGioacchino Del Regno <&mmss_smmu 0x42d>, 14196fbc6c5SAngeloGioacchino Del Regno <&mmss_smmu 0x411>, 14296fbc6c5SAngeloGioacchino Del Regno <&mmss_smmu 0x431>; 14396fbc6c5SAngeloGioacchino Del Regno memory-region = <&venus_region>; 14496fbc6c5SAngeloGioacchino Del Regno power-domains = <&mmcc VENUS_GDSC>; 14596fbc6c5SAngeloGioacchino Del Regno 14696fbc6c5SAngeloGioacchino Del Regno video-decoder { 14796fbc6c5SAngeloGioacchino Del Regno compatible = "venus-decoder"; 14896fbc6c5SAngeloGioacchino Del Regno clocks = <&mmcc VIDEO_SUBCORE0_CLK>; 14996fbc6c5SAngeloGioacchino Del Regno clock-names = "vcodec0_core"; 15096fbc6c5SAngeloGioacchino Del Regno power-domains = <&mmcc VENUS_CORE0_GDSC>; 15196fbc6c5SAngeloGioacchino Del Regno }; 15296fbc6c5SAngeloGioacchino Del Regno 15396fbc6c5SAngeloGioacchino Del Regno video-encoder { 15496fbc6c5SAngeloGioacchino Del Regno compatible = "venus-encoder"; 15596fbc6c5SAngeloGioacchino Del Regno clocks = <&mmcc VIDEO_SUBCORE0_CLK>; 15696fbc6c5SAngeloGioacchino Del Regno clock-names = "vcodec0_core"; 15796fbc6c5SAngeloGioacchino Del Regno power-domains = <&mmcc VENUS_CORE0_GDSC>; 15896fbc6c5SAngeloGioacchino Del Regno }; 15996fbc6c5SAngeloGioacchino Del Regno }; 160