All of lore.kernel.org
 help / color / mirror / Atom feed
From: Stanimir Varbanov <stanimir.varbanov@linaro.org>
To: linux-arm-msm@vger.kernel.org, linux-kernel@vger.kernel.org,
	linux-media@vger.kernel.org, devicetree@vger.kernel.org
Cc: Vikash Garodia <vgarodia@codeaurora.org>,
	dikshita@codeaurora.org,
	Stanimir Varbanov <stanimir.varbanov@linaro.org>
Subject: [PATCH v4 07/12] dt-bindings: media: venus: Convert msm8996 to DT schema
Date: Mon,  6 Jan 2020 17:49:24 +0200	[thread overview]
Message-ID: <20200106154929.4331-8-stanimir.varbanov@linaro.org> (raw)
In-Reply-To: <20200106154929.4331-1-stanimir.varbanov@linaro.org>

Convert qcom,msm8996-venus Venus binding to DT schema.

Signed-off-by: Stanimir Varbanov <stanimir.varbanov@linaro.org>
---
 .../bindings/media/qcom,msm8996-venus.yaml    | 153 ++++++++++++++++++
 1 file changed, 153 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/media/qcom,msm8996-venus.yaml

diff --git a/Documentation/devicetree/bindings/media/qcom,msm8996-venus.yaml b/Documentation/devicetree/bindings/media/qcom,msm8996-venus.yaml
new file mode 100644
index 000000000000..3d42fa83d31b
--- /dev/null
+++ b/Documentation/devicetree/bindings/media/qcom,msm8996-venus.yaml
@@ -0,0 +1,153 @@
+# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
+
+%YAML 1.2
+---
+$id: "http://devicetree.org/schemas/media/qcom,msm8996-venus.yaml#"
+$schema: "http://devicetree.org/meta-schemas/core.yaml#"
+
+title: Qualcomm Venus video encode and decode accelerators
+
+maintainers:
+  - Stanimir Varbanov <stanimir.varbanov@linaro.org>
+
+description: |
+  The Venus IP is a video encode and decode accelerator present
+  on Qualcomm platforms
+
+properties:
+  compatible:
+    const: qcom,msm8996-venus
+
+  reg:
+    maxItems: 1
+
+  interrupts:
+    maxItems: 1
+
+  power-domains:
+    maxItems: 1
+
+  clocks:
+    maxItems: 4
+
+  clock-names:
+    items:
+      - const: core
+      - const: iface
+      - const: bus
+      - const: mbus
+
+  iommus:
+    maxItems: 20
+
+  memory-region:
+    maxItems: 1
+
+  video-decoder:
+    type: object
+
+    properties:
+      compatible:
+        const: venus-decoder
+
+      clocks:
+        maxItems: 1
+
+      clock-names:
+        items:
+          - const: core
+
+      power-domains:
+        maxItems: 1
+
+    required:
+      - compatible
+      - clocks
+      - clock-names
+      - power-domains
+
+    additionalProperties: false
+
+  video-encoder:
+    type: object
+
+    properties:
+      compatible:
+        const: venus-encoder
+
+      clocks:
+        maxItems: 1
+
+      clock-names:
+        items:
+          - const: core
+
+      power-domains:
+        maxItems: 1
+
+    required:
+      - compatible
+      - clocks
+      - clock-names
+      - power-domains
+
+    additionalProperties: false
+
+  video-firmware:
+    type: object
+
+    description: |
+      Firmware subnode is needed when the platform does not
+      have TrustZone.
+
+    properties:
+      iommus:
+        maxItems: 1
+
+    required:
+      - iommus
+
+required:
+  - compatible
+  - reg
+  - interrupts
+  - power-domains
+  - clocks
+  - clock-names
+  - iommus
+  - memory-region
+  - video-decoder
+  - video-encoder
+
+examples:
+  - |
+        #include <dt-bindings/interrupt-controller/arm-gic.h>
+        #include <dt-bindings/clock/qcom,mmcc-msm8996.h>
+
+        video-codec@c00000 {
+                compatible = "qcom,msm8996-venus";
+                reg = <0x00c00000 0xff000>;
+                interrupts = <GIC_SPI 287 IRQ_TYPE_LEVEL_HIGH>;
+                clocks = <&mmcc VIDEO_CORE_CLK>,
+                         <&mmcc VIDEO_AHB_CLK>,
+                         <&mmcc VIDEO_AXI_CLK>,
+                         <&mmcc VIDEO_MAXI_CLK>;
+                clock-names = "core", "iface", "bus", "mbus";
+                power-domains = <&mmcc VENUS_GDSC>;
+                iommus = <&iommu 0>;
+                memory-region = <&venus_mem>;
+
+                video-decoder {
+                        compatible = "venus-decoder";
+                        clocks = <&mmcc VIDEO_SUBCORE0_CLK>;
+                        clock-names = "core";
+                        power-domains = <&mmcc VENUS_CORE0_GDSC>;
+                };
+
+                video-encoder {
+                        compatible = "venus-encoder";
+                        clocks = <&mmcc VIDEO_SUBCORE1_CLK>;
+                        clock-names = "core";
+                        power-domains = <&mmcc VENUS_CORE1_GDSC>;
+                };
+        };
-- 
2.17.1


  parent reply	other threads:[~2020-01-06 15:50 UTC|newest]

Thread overview: 27+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-01-06 15:49 [PATCH v4 00/12] Venus new features Stanimir Varbanov
2020-01-06 15:49 ` [PATCH v4 01/12] venus: redesign clocks and pm domains control Stanimir Varbanov
2020-01-06 15:49 ` [PATCH v4 02/12] media: venus: introduce core selection Stanimir Varbanov
2020-01-06 15:49 ` [PATCH v4 03/12] venus: venc: blacklist two encoder properties Stanimir Varbanov
2020-01-06 15:49 ` [PATCH v4 04/12] v4l: Add source event change for bit-depth Stanimir Varbanov
2020-01-08 16:09   ` Hans Verkuil
2020-01-08 16:43     ` Stanimir Varbanov
2020-01-09  7:41     ` Stanimir Varbanov
2020-01-09  8:57       ` Hans Verkuil
2020-01-10 10:54         ` Stanimir Varbanov
2020-01-15 15:03           ` Hans Verkuil
2020-04-15 14:34             ` Stanimir Varbanov
2020-01-06 15:49 ` [PATCH v4 05/12] media: venus: vdec: handle 10bit bitstreams Stanimir Varbanov
2020-01-06 15:49 ` [PATCH v4 06/12] dt-bindings: media: venus: Convert msm8916 to DT schema Stanimir Varbanov
2020-01-06 22:04   ` Rob Herring
2020-01-08 16:17     ` Stanimir Varbanov
2020-01-06 15:49 ` Stanimir Varbanov [this message]
2020-01-06 22:05   ` [PATCH v4 07/12] dt-bindings: media: venus: Convert msm8996 " Rob Herring
2020-01-06 15:49 ` [PATCH v4 08/12] dt-bindings: media: venus: Convert sdm845 " Stanimir Varbanov
2020-01-06 22:06   ` Rob Herring
2020-01-06 15:49 ` [PATCH v4 09/12] dt-bindings: media: venus: Add sdm845v2 " Stanimir Varbanov
2020-01-06 22:07   ` Rob Herring
2020-01-06 15:49 ` [PATCH v4 10/12] venus: core: add sdm845-v2 DT compatible and resource struct Stanimir Varbanov
2020-01-06 15:49 ` [PATCH v4 11/12] arm64: dts: sdm845: follow venus-sdm845v2 DT binding Stanimir Varbanov
2020-02-27 22:38   ` Stanimir Varbanov
2020-02-28  5:59     ` Bjorn Andersson
2020-01-06 15:49 ` [PATCH v4 12/12] dt-bindings: media: venus: delete old binding document Stanimir Varbanov

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20200106154929.4331-8-stanimir.varbanov@linaro.org \
    --to=stanimir.varbanov@linaro.org \
    --cc=devicetree@vger.kernel.org \
    --cc=dikshita@codeaurora.org \
    --cc=linux-arm-msm@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-media@vger.kernel.org \
    --cc=vgarodia@codeaurora.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.