b3a12c2996
Semantically glink-edge and glink-rpm-edge are similar: Both describe the communication channels to a remote processor. The RPM glink-edge is a special case that needs slightly different properties but otherwise it is used exactly the same. To improve consistency use the same "glink-edge" node name also for glink-rpm-edge. Drop the $nodename from qcom,glink-edge.yaml to avoid matching the wrong schema. qcom,glink-edge.yaml is always referenced explicitly from other schemas. This will already ensure that the nodes are being checked, so it's not necessary to bind to all nodes named "glink-edge". Signed-off-by: Stephan Gerhold <stephan@gerhold.net> Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Link: https://lore.kernel.org/r/20230531-rpm-rproc-v3-5-a07dcdefd918@gerhold.net Signed-off-by: Bjorn Andersson <andersson@kernel.org>
98 lines
2.1 KiB
YAML
98 lines
2.1 KiB
YAML
# 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:
|
|
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>;
|
|
};
|
|
};
|