Linux kernel mirror (for testing)
git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel
os
linux
1# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/soc/qcom/qcom,smd.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: Qualcomm Shared Memory Driver
8
9maintainers:
10 - Andy Gross <agross@kernel.org>
11 - Bjorn Andersson <bjorn.andersson@linaro.org>
12 - Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
13
14description:
15 The Qualcomm Shared Memory Driver is a FIFO based communication channel for
16 sending data between the various subsystems in Qualcomm platforms.
17
18properties:
19 compatible:
20 const: qcom,smd
21
22patternProperties:
23 "^smd-edge|rpm$":
24 $ref: /schemas/remoteproc/qcom,smd-edge.yaml#
25 unevaluatedProperties: false
26 description:
27 Each subnode of the SMD node represents a remote subsystem or a remote
28 processor of some sort - or in SMD language an "edge". The name of the
29 edges are not important.
30
31required:
32 - compatible
33
34additionalProperties: false
35
36examples:
37 # The following example represents a smd node, with one edge representing the
38 # "rpm" subsystem. For the "rpm" subsystem we have a device tied to the
39 # "rpm_request" channel.
40 - |
41 #include <dt-bindings/interrupt-controller/arm-gic.h>
42
43 shared-memory {
44 compatible = "qcom,smd";
45
46 rpm {
47 interrupts = <GIC_SPI 168 IRQ_TYPE_EDGE_RISING>;
48 qcom,ipc = <&apcs 8 0>;
49 qcom,smd-edge = <15>;
50
51 rpm-requests {
52 compatible = "qcom,rpm-msm8974";
53 qcom,smd-channels = "rpm_requests";
54
55 clock-controller {
56 compatible = "qcom,rpmcc-msm8974", "qcom,rpmcc";
57 #clock-cells = <1>;
58 };
59
60 };
61 };
62 };