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

title: Qualcomm G-Link Edge communication channel nodes

maintainers:
  - Bjorn Andersson <bjorn.andersson@linaro.org>

description:
  Qualcomm G-Link subnode represents communication edge, channels and devices
  related to the remote processor.

properties:
  $nodename:
    const: "glink-edge"

  apr:
    $ref: /schemas/soc/qcom/qcom,apr.yaml#
    required:
      - qcom,glink-channels
    description:
      Qualcomm APR (Asynchronous Packet Router)

  fastrpc:
    $ref: /schemas/misc/qcom,fastrpc.yaml#
    required:
      - qcom,glink-channels
    description:
      Qualcomm FastRPC

  gpr:
    $ref: /schemas/soc/qcom/qcom,apr.yaml#
    required:
      - qcom,glink-channels
    description:
      Qualcomm GPR (Generic Packet Router)

  interrupts:
    maxItems: 1

  label:
    description:
      Name of the edge, used for debugging and identification purposes. The
      node name will be used if this is not present.

  mboxes:
    maxItems: 1

  qcom,remote-pid:
    $ref: /schemas/types.yaml#/definitions/uint32
    description:
      ID of the shared memory used by GLINK for communication with remote
      processor.

required:
  - interrupts
  - label
  - mboxes
  - qcom,remote-pid

allOf:
  - if:
      required:
        - apr
    then:
      properties:
        gpr: false

  - if:
      required:
        - gpr
    then:
      properties:
        apr: false

additionalProperties: false

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

    remoteproc@8a00000 {
        reg = <0x08a00000 0x10000>;
        // ...

        glink-edge {
            interrupts-extended = <&ipcc IPCC_CLIENT_WPSS
                                         IPCC_MPROC_SIGNAL_GLINK_QMP
                                         IRQ_TYPE_EDGE_RISING>;
            mboxes = <&ipcc IPCC_CLIENT_WPSS
                            IPCC_MPROC_SIGNAL_GLINK_QMP>;

            label = "wpss";
            qcom,remote-pid = <13>;
        };
    };
