# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
%YAML 1.2
---
$id: http://devicetree.org/schemas/soc/qcom/qcom,smd.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Qualcomm Shared Memory Driver

maintainers:
  - Andy Gross <agross@kernel.org>
  - Bjorn Andersson <bjorn.andersson@linaro.org>
  - Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>

description:
  The Qualcomm Shared Memory Driver is a FIFO based communication channel for
  sending data between the various subsystems in Qualcomm platforms.

properties:
  compatible:
    const: qcom,smd

patternProperties:
  "^.*-edge|rpm$":
    $ref: /schemas/remoteproc/qcom,smd-edge.yaml#
    description:
      Each subnode of the SMD node represents a remote subsystem or a remote
      processor of some sort - or in SMD language an "edge". The name of the
      edges are not important.

    properties:
      rpm-requests:
        type: object
        description:
          In turn, subnodes of the "edges" represent devices tied to SMD
          channels on that "edge". The names of the devices are not
          important. The properties of these nodes are defined by the
          individual bindings for the SMD devices.

        properties:
          qcom,smd-channels:
            $ref: /schemas/types.yaml#/definitions/string-array
            minItems: 1
            maxItems: 32
            description:
              A list of channels tied to this device, used for matching the
              device to channels.

        required:
          - compatible
          - qcom,smd-channels

        additionalProperties: true

    unevaluatedProperties: false

required:
  - compatible

additionalProperties: false

examples:
  # The following example represents a smd node, with one edge representing the
  # "rpm" subsystem. For the "rpm" subsystem we have a device tied to the
  # "rpm_request" channel.
  - |
    #include <dt-bindings/interrupt-controller/arm-gic.h>

    shared-memory {
        compatible = "qcom,smd";

        rpm {
            interrupts = <GIC_SPI 168 IRQ_TYPE_EDGE_RISING>;
            qcom,ipc = <&apcs 8 0>;
            qcom,smd-edge = <15>;

            rpm-requests {
                compatible = "qcom,rpm-msm8974";
                qcom,smd-channels = "rpm_requests";

                clock-controller {
                    compatible = "qcom,rpmcc-msm8974", "qcom,rpmcc";
                    #clock-cells = <1>;
                };

            };
        };
    };
