70 lines · yaml
1# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause2%YAML 1.23---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 Driver8 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 for16 sending data between the various subsystems in Qualcomm platforms.17 18 Using the top-level SMD node is deprecated. Instead, the SMD edges are defined19 directly below the device node representing the respective remote subsystem20 or remote processor.21 22deprecated: true23 24properties:25 compatible:26 const: qcom,smd27 28patternProperties:29 "^smd-edge|rpm$":30 $ref: /schemas/remoteproc/qcom,smd-edge.yaml#31 unevaluatedProperties: false32 description:33 Each subnode of the SMD node represents a remote subsystem or a remote34 processor of some sort - or in SMD language an "edge". The name of the35 edges are not important.36 37required:38 - compatible39 40additionalProperties: false41 42examples:43 # The following example represents a smd node, with one edge representing the44 # "rpm" subsystem. For the "rpm" subsystem we have a device tied to the45 # "rpm_request" channel.46 # NOTE: This is deprecated, represent the RPM using "qcom,rpm-proc" instead.47 - |48 #include <dt-bindings/interrupt-controller/arm-gic.h>49 50 shared-memory {51 compatible = "qcom,smd";52 53 rpm {54 interrupts = <GIC_SPI 168 IRQ_TYPE_EDGE_RISING>;55 qcom,ipc = <&apcs 8 0>;56 qcom,smd-edge = <15>;57 58 rpm-requests {59 compatible = "qcom,rpm-msm8974", "qcom,smd-rpm";60 qcom,smd-channels = "rpm_requests";61 62 clock-controller {63 compatible = "qcom,rpmcc-msm8974", "qcom,rpmcc";64 #clock-cells = <1>;65 };66 67 };68 };69 };70