1375eed5fSKrzysztof Kozlowski# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause 2375eed5fSKrzysztof Kozlowski%YAML 1.2 3375eed5fSKrzysztof Kozlowski--- 4375eed5fSKrzysztof Kozlowski$id: http://devicetree.org/schemas/soc/qcom/qcom,smd.yaml# 5375eed5fSKrzysztof Kozlowski$schema: http://devicetree.org/meta-schemas/core.yaml# 6375eed5fSKrzysztof Kozlowski 7375eed5fSKrzysztof Kozlowskititle: Qualcomm Shared Memory Driver 8375eed5fSKrzysztof Kozlowski 9375eed5fSKrzysztof Kozlowskimaintainers: 10375eed5fSKrzysztof Kozlowski - Andy Gross <agross@kernel.org> 11375eed5fSKrzysztof Kozlowski - Bjorn Andersson <bjorn.andersson@linaro.org> 12375eed5fSKrzysztof Kozlowski - Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> 13375eed5fSKrzysztof Kozlowski 14375eed5fSKrzysztof Kozlowskidescription: 15375eed5fSKrzysztof Kozlowski The Qualcomm Shared Memory Driver is a FIFO based communication channel for 16375eed5fSKrzysztof Kozlowski sending data between the various subsystems in Qualcomm platforms. 17375eed5fSKrzysztof Kozlowski 18*9a2c674eSStephan Gerhold Using the top-level SMD node is deprecated. Instead, the SMD edges are defined 19*9a2c674eSStephan Gerhold directly below the device node representing the respective remote subsystem 20*9a2c674eSStephan Gerhold or remote processor. 21*9a2c674eSStephan Gerhold 22*9a2c674eSStephan Gerholddeprecated: true 23*9a2c674eSStephan Gerhold 24375eed5fSKrzysztof Kozlowskiproperties: 25375eed5fSKrzysztof Kozlowski compatible: 26375eed5fSKrzysztof Kozlowski const: qcom,smd 27375eed5fSKrzysztof Kozlowski 28375eed5fSKrzysztof KozlowskipatternProperties: 296dae25e4SKrzysztof Kozlowski "^smd-edge|rpm$": 30568f83ffSKrzysztof Kozlowski $ref: /schemas/remoteproc/qcom,smd-edge.yaml# 31547bed81SKrzysztof Kozlowski unevaluatedProperties: false 32375eed5fSKrzysztof Kozlowski description: 33375eed5fSKrzysztof Kozlowski Each subnode of the SMD node represents a remote subsystem or a remote 34375eed5fSKrzysztof Kozlowski processor of some sort - or in SMD language an "edge". The name of the 35375eed5fSKrzysztof Kozlowski edges are not important. 36375eed5fSKrzysztof Kozlowski 37375eed5fSKrzysztof Kozlowskirequired: 38375eed5fSKrzysztof Kozlowski - compatible 39375eed5fSKrzysztof Kozlowski 40375eed5fSKrzysztof KozlowskiadditionalProperties: false 41375eed5fSKrzysztof Kozlowski 42375eed5fSKrzysztof Kozlowskiexamples: 43375eed5fSKrzysztof Kozlowski # The following example represents a smd node, with one edge representing the 44375eed5fSKrzysztof Kozlowski # "rpm" subsystem. For the "rpm" subsystem we have a device tied to the 45375eed5fSKrzysztof Kozlowski # "rpm_request" channel. 46*9a2c674eSStephan Gerhold # NOTE: This is deprecated, represent the RPM using "qcom,rpm-proc" instead. 47375eed5fSKrzysztof Kozlowski - | 48375eed5fSKrzysztof Kozlowski #include <dt-bindings/interrupt-controller/arm-gic.h> 49375eed5fSKrzysztof Kozlowski 50375eed5fSKrzysztof Kozlowski shared-memory { 51375eed5fSKrzysztof Kozlowski compatible = "qcom,smd"; 52375eed5fSKrzysztof Kozlowski 53375eed5fSKrzysztof Kozlowski rpm { 54375eed5fSKrzysztof Kozlowski interrupts = <GIC_SPI 168 IRQ_TYPE_EDGE_RISING>; 55375eed5fSKrzysztof Kozlowski qcom,ipc = <&apcs 8 0>; 56375eed5fSKrzysztof Kozlowski qcom,smd-edge = <15>; 57375eed5fSKrzysztof Kozlowski 58375eed5fSKrzysztof Kozlowski rpm-requests { 59375eed5fSKrzysztof Kozlowski compatible = "qcom,rpm-msm8974"; 60375eed5fSKrzysztof Kozlowski qcom,smd-channels = "rpm_requests"; 61375eed5fSKrzysztof Kozlowski 62375eed5fSKrzysztof Kozlowski clock-controller { 63375eed5fSKrzysztof Kozlowski compatible = "qcom,rpmcc-msm8974", "qcom,rpmcc"; 64375eed5fSKrzysztof Kozlowski #clock-cells = <1>; 65375eed5fSKrzysztof Kozlowski }; 66375eed5fSKrzysztof Kozlowski 67375eed5fSKrzysztof Kozlowski }; 68375eed5fSKrzysztof Kozlowski }; 69375eed5fSKrzysztof Kozlowski }; 70