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

title: Qualcomm FastRPC Driver

maintainers:
  - Srinivas Kandagatla <srinivas.kandagatla@linaro.org>

description: |
  The FastRPC implements an IPC (Inter-Processor Communication)
  mechanism that allows for clients to transparently make remote method
  invocations across DSP and APPS boundaries. This enables developers
  to offload tasks to the DSP and free up the application processor for
  other tasks.

properties:
  compatible:
    const: qcom,fastrpc

  label:
    enum:
      - adsp
      - mdsp
      - sdsp
      - cdsp

  memory-region:
    maxItems: 1
    description:
      Phandle to a node describing memory to be used for remote heap CMA.

  qcom,glink-channels:
    description:
      A list of channels tied to this function, used for matching
      the function to a set of virtual channels.
    $ref: /schemas/types.yaml#/definitions/string-array
    items:
      - const: fastrpcglink-apps-dsp

  qcom,non-secure-domain:
    description:
      Used to mark the current domain as non-secure.
    type: boolean

  qcom,smd-channels:
    description:
      Channel name used for the RPM communication
    $ref: /schemas/types.yaml#/definitions/string-array
    items:
      - const: fastrpcsmd-apps-dsp

  qcom,vmids:
    description:
      Virtual machine IDs for remote processor.
    $ref: /schemas/types.yaml#/definitions/uint32-array

  "#address-cells":
    const: 1

  "#size-cells":
    const: 0

patternProperties:
  "(compute-)?cb@[0-9]*$":
    type: object

    description: >
      Each subnode of the Fastrpc represents compute context banks available on the dsp.

    properties:
      compatible:
        const: qcom,fastrpc-compute-cb

      reg:
        maxItems: 1

      dma-coherent: true

      iommus:
        minItems: 1
        maxItems: 3

      qcom,nsessions:
        $ref: /schemas/types.yaml#/definitions/uint32
        default: 1
        description: >
          A value indicating how many sessions can share this context bank.

    required:
      - compatible
      - reg

    additionalProperties: false

required:
  - compatible
  - label
  - "#address-cells"
  - "#size-cells"

additionalProperties: false

examples:
  - |
    #include <dt-bindings/interrupt-controller/arm-gic.h>
    #include <dt-bindings/mailbox/qcom-ipcc.h>

    glink-edge {
        interrupts-extended = <&ipcc IPCC_CLIENT_LPASS
                                     IPCC_MPROC_SIGNAL_GLINK_QMP
                                     IRQ_TYPE_EDGE_RISING>;
        mboxes = <&ipcc IPCC_CLIENT_LPASS
                        IPCC_MPROC_SIGNAL_GLINK_QMP>;
        label = "lpass";
        qcom,remote-pid = <2>;

        fastrpc {
            compatible = "qcom,fastrpc";
            qcom,glink-channels = "fastrpcglink-apps-dsp";
            label = "sdsp";
            qcom,non-secure-domain;
            #address-cells = <1>;
            #size-cells = <0>;

            compute-cb@1 {
                compatible = "qcom,fastrpc-compute-cb";
                reg = <1>;
                iommus = <&apps_smmu 0x0541 0x0>;
            };

            compute-cb@2 {
                compatible = "qcom,fastrpc-compute-cb";
                reg = <2>;
                iommus = <&apps_smmu 0x0542 0x0>;
            };

            compute-cb@3 {
                compatible = "qcom,fastrpc-compute-cb";
                reg = <3>;
                iommus = <&apps_smmu 0x0543 0x0>;
            };
        };
    };
