118 lines
3.0 KiB
YAML
118 lines
3.0 KiB
YAML
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
|
|
%YAML 1.2
|
|
---
|
|
$id: http://devicetree.org/schemas/remoteproc/qcom,smd-edge.yaml#
|
|
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
|
|
|
title: Qualcomm SMD Edge communication channel nodes
|
|
|
|
maintainers:
|
|
- Bjorn Andersson <bjorn.andersson@linaro.org>
|
|
|
|
description:
|
|
Qualcomm SMD subnode 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.
|
|
|
|
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.
|
|
See also Documentation/devicetree/bindings/soc/qcom/qcom,smd.yaml
|
|
|
|
properties:
|
|
$nodename:
|
|
const: "smd-edge"
|
|
|
|
apr:
|
|
$ref: /schemas/soc/qcom/qcom,apr.yaml#
|
|
required:
|
|
- qcom,smd-channels
|
|
description:
|
|
Qualcomm APR/GPR (Asynchronous/Generic Packet Router)
|
|
|
|
fastrpc:
|
|
$ref: /schemas/misc/qcom,fastrpc.yaml#
|
|
required:
|
|
- qcom,smd-channels
|
|
description:
|
|
Qualcomm FastRPC
|
|
|
|
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
|
|
description:
|
|
Reference to the mailbox representing the outgoing doorbell in APCS for
|
|
this client.
|
|
|
|
qcom,ipc:
|
|
$ref: /schemas/types.yaml#/definitions/phandle-array
|
|
items:
|
|
- items:
|
|
- description: phandle to a syscon node representing the APCS registers
|
|
- description: u32 representing offset to the register within the syscon
|
|
- description: u32 representing the ipc bit within the register
|
|
description:
|
|
Three entries specifying the outgoing ipc bit used for signaling the
|
|
remote processor.
|
|
|
|
qcom,smd-edge:
|
|
$ref: /schemas/types.yaml#/definitions/uint32
|
|
description:
|
|
The identifier of the remote processor in the smd channel allocation
|
|
table.
|
|
|
|
qcom,remote-pid:
|
|
$ref: /schemas/types.yaml#/definitions/uint32
|
|
description:
|
|
The identifier for the remote processor as known by the rest of the
|
|
system.
|
|
|
|
rpm-requests:
|
|
$ref: /schemas/soc/qcom/qcom,smd-rpm.yaml#
|
|
required:
|
|
- qcom,smd-channels
|
|
description:
|
|
Qualcomm Resource Power Manager (RPM) over SMD.
|
|
|
|
wcnss:
|
|
$ref: /schemas/soc/qcom/qcom,wcnss.yaml
|
|
required:
|
|
- qcom,smd-channels
|
|
description:
|
|
Qualcomm WCNSS for Bluetooth, WiFi and FM radio.
|
|
|
|
required:
|
|
- interrupts
|
|
- qcom,smd-edge
|
|
|
|
oneOf:
|
|
- required:
|
|
- mboxes
|
|
- required:
|
|
- qcom,ipc
|
|
|
|
additionalProperties: false
|
|
|
|
examples:
|
|
- |
|
|
#include <dt-bindings/interrupt-controller/arm-gic.h>
|
|
#include <dt-bindings/mailbox/qcom-ipcc.h>
|
|
|
|
remoteproc {
|
|
// ...
|
|
|
|
smd-edge {
|
|
interrupts = <GIC_SPI 156 IRQ_TYPE_EDGE_RISING>;
|
|
|
|
qcom,ipc = <&apcs 8 8>;
|
|
qcom,smd-edge = <1>;
|
|
};
|
|
};
|