Files
linux/Documentation/devicetree/bindings/remoteproc/qcom,glink-rpm-edge.yaml
Stephan Gerhold b3a12c2996 dt-bindings: remoteproc: glink-rpm-edge: Use "glink-edge" as node name
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>
2023-07-13 22:18:56 -07:00

100 lines
2.5 KiB
YAML

# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/remoteproc/qcom,glink-rpm-edge.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#
title: Qualcomm G-Link RPM edge
description: |
Qualcomm G-Link edge, a FIFO based mechanism for communication with Resource
Power Manager (RPM) on various Qualcomm platforms.
maintainers:
- Bjorn Andersson <andersson@kernel.org>
properties:
compatible:
const: qcom,glink-rpm
label:
$ref: /schemas/types.yaml#/definitions/string
description:
Name of the edge, used for debugging and identification purposes. The
node name will be used if this is not present.
interrupts:
maxItems: 1
mboxes:
items:
- description: rpm_hlos mailbox in APCS
qcom,remote-pid:
$ref: /schemas/types.yaml#/definitions/uint32
description:
The identifier for the remote processor as known by the rest of the
system.
qcom,rpm-msg-ram:
$ref: /schemas/types.yaml#/definitions/phandle
description: |
RPM message memory resource (compatible: qcom,rpm-msg-ram).
rpm-requests:
type: object
$ref: /schemas/soc/qcom/qcom,smd-rpm.yaml#
unevaluatedProperties: false
description:
Qualcomm Resource Power Manager (RPM) over G-Link
properties:
qcom,intents:
$ref: /schemas/types.yaml#/definitions/uint32-matrix
minItems: 1
maxItems: 32
items:
items:
- description: size of each intent to preallocate
- description: amount of intents to preallocate
minimum: 1
description:
List of (size, amount) pairs describing what intents should be
preallocated for this virtual channel. This can be used to tweak the
default intents available for the channel to meet expectations of the
remote.
required:
- qcom,glink-channels
required:
- compatible
- interrupts
- mboxes
anyOf:
- required:
- qcom,remote-pid
- required:
- qcom,rpm-msg-ram
additionalProperties: false
examples:
- |
#include <dt-bindings/interrupt-controller/arm-gic.h>
glink-edge {
compatible = "qcom,glink-rpm";
interrupts = <GIC_SPI 168 IRQ_TYPE_EDGE_RISING>;
mboxes = <&apcs_glb 0>;
qcom,rpm-msg-ram = <&rpm_msg_ram>;
rpm-requests {
compatible = "qcom,rpm-msm8996";
qcom,glink-channels = "rpm_requests";
/* ... */
};
};