# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/media/qcom,sc7280-venus.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Qualcomm SC7280 Venus video encode and decode accelerators

maintainers:
  - Stanimir Varbanov <stanimir.varbanov@linaro.org>

description: |
  The Venus Iris2 IP is a video encode and decode accelerator present
  on Qualcomm platforms

allOf:
  - $ref: qcom,venus-common.yaml#

properties:
  compatible:
    const: qcom,sc7280-venus

  power-domains:
    minItems: 2
    maxItems: 3

  power-domain-names:
    minItems: 2
    items:
      - const: venus
      - const: vcodec0
      - const: cx

  clocks:
    maxItems: 5

  clock-names:
    items:
      - const: core
      - const: bus
      - const: iface
      - const: vcodec_core
      - const: vcodec_bus

  iommus:
    minItems: 1
    maxItems: 2

  interconnects:
    maxItems: 2

  interconnect-names:
    items:
      - const: cpu-cfg
      - const: video-mem

  operating-points-v2: true
  opp-table:
    type: object

  video-decoder:
    type: object

    properties:
      compatible:
        const: venus-decoder

    required:
      - compatible

    additionalProperties: false

  video-encoder:
    type: object

    properties:
      compatible:
        const: venus-encoder

    required:
      - compatible

    additionalProperties: false

required:
  - compatible
  - power-domain-names
  - iommus
  - video-decoder
  - video-encoder

unevaluatedProperties: false

examples:
  - |
    #include <dt-bindings/interrupt-controller/arm-gic.h>
    #include <dt-bindings/clock/qcom,videocc-sc7280.h>
    #include <dt-bindings/interconnect/qcom,sc7280.h>
    #include <dt-bindings/power/qcom-rpmpd.h>

    venus: video-codec@aa00000 {
        compatible = "qcom,sc7280-venus";
        reg = <0x0aa00000 0xd0600>;
        interrupts = <GIC_SPI 174 IRQ_TYPE_LEVEL_HIGH>;

        clocks = <&videocc VIDEO_CC_MVSC_CORE_CLK>,
                 <&videocc VIDEO_CC_MVSC_CTL_AXI_CLK>,
                 <&videocc VIDEO_CC_VENUS_AHB_CLK>,
                 <&videocc VIDEO_CC_MVS0_CORE_CLK>,
                 <&videocc VIDEO_CC_MVS0_AXI_CLK>;
        clock-names = "core", "bus", "iface",
                      "vcodec_core", "vcodec_bus";

        power-domains = <&videocc MVSC_GDSC>,
                        <&videocc MVS0_GDSC>,
                        <&rpmhpd SC7280_CX>;
        power-domain-names = "venus", "vcodec0", "cx";

        interconnects = <&gem_noc MASTER_APPSS_PROC 0 &cnoc2 SLAVE_VENUS_CFG 0>,
                        <&mmss_noc MASTER_VIDEO_P0 0 &mc_virt SLAVE_EBI1 0>;
        interconnect-names = "cpu-cfg", "video-mem";

        iommus = <&apps_smmu 0x2180 0x20>,
                 <&apps_smmu 0x2184 0x20>;

        memory-region = <&video_mem>;

        video-decoder {
            compatible = "venus-decoder";
        };

        video-encoder {
            compatible = "venus-encoder";
        };

        video-firmware {
            iommus = <&apps_smmu 0x21a2 0x0>;
        };
    };
