1*e2b0330cSDmitry Baryshkov# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
2*e2b0330cSDmitry Baryshkov%YAML 1.2
3*e2b0330cSDmitry Baryshkov---
4*e2b0330cSDmitry Baryshkov$id: "http://devicetree.org/schemas/soc/qcom/qcom,smem.yaml#"
5*e2b0330cSDmitry Baryshkov$schema: "http://devicetree.org/meta-schemas/core.yaml#"
6*e2b0330cSDmitry Baryshkov
7*e2b0330cSDmitry Baryshkovtitle: Qualcomm Shared Memory Manager binding
8*e2b0330cSDmitry Baryshkov
9*e2b0330cSDmitry Baryshkovmaintainers:
10*e2b0330cSDmitry Baryshkov  - Andy Gross <agross@kernel.org>
11*e2b0330cSDmitry Baryshkov  - Bjorn Andersson <bjorn.andersson@linaro.org>
12*e2b0330cSDmitry Baryshkov
13*e2b0330cSDmitry Baryshkovdescription: |
14*e2b0330cSDmitry Baryshkov  This binding describes the Qualcomm Shared Memory Manager, used to share data
15*e2b0330cSDmitry Baryshkov  between various subsystems and OSes in Qualcomm platforms.
16*e2b0330cSDmitry Baryshkov
17*e2b0330cSDmitry Baryshkovproperties:
18*e2b0330cSDmitry Baryshkov  compatible:
19*e2b0330cSDmitry Baryshkov    const: qcom,smem
20*e2b0330cSDmitry Baryshkov
21*e2b0330cSDmitry Baryshkov  memory-region:
22*e2b0330cSDmitry Baryshkov    maxItems: 1
23*e2b0330cSDmitry Baryshkov    description: handle to memory reservation for main SMEM memory region.
24*e2b0330cSDmitry Baryshkov
25*e2b0330cSDmitry Baryshkov  hwlocks:
26*e2b0330cSDmitry Baryshkov    maxItems: 1
27*e2b0330cSDmitry Baryshkov
28*e2b0330cSDmitry Baryshkov  qcom,rpm-msg-ram:
29*e2b0330cSDmitry Baryshkov    $ref: /schemas/types.yaml#/definitions/phandle
30*e2b0330cSDmitry Baryshkov    description: handle to RPM message memory resource
31*e2b0330cSDmitry Baryshkov
32*e2b0330cSDmitry Baryshkovrequired:
33*e2b0330cSDmitry Baryshkov  - compatible
34*e2b0330cSDmitry Baryshkov  - memory-region
35*e2b0330cSDmitry Baryshkov  - hwlocks
36*e2b0330cSDmitry Baryshkov
37*e2b0330cSDmitry BaryshkovadditionalProperties: false
38*e2b0330cSDmitry Baryshkov
39*e2b0330cSDmitry Baryshkovexamples:
40*e2b0330cSDmitry Baryshkov  - |
41*e2b0330cSDmitry Baryshkov    reserved-memory {
42*e2b0330cSDmitry Baryshkov        #address-cells = <1>;
43*e2b0330cSDmitry Baryshkov        #size-cells = <1>;
44*e2b0330cSDmitry Baryshkov        ranges;
45*e2b0330cSDmitry Baryshkov
46*e2b0330cSDmitry Baryshkov        smem_region: smem@fa00000 {
47*e2b0330cSDmitry Baryshkov            reg = <0xfa00000 0x200000>;
48*e2b0330cSDmitry Baryshkov            no-map;
49*e2b0330cSDmitry Baryshkov        };
50*e2b0330cSDmitry Baryshkov    };
51*e2b0330cSDmitry Baryshkov
52*e2b0330cSDmitry Baryshkov    smem {
53*e2b0330cSDmitry Baryshkov        compatible = "qcom,smem";
54*e2b0330cSDmitry Baryshkov
55*e2b0330cSDmitry Baryshkov        memory-region = <&smem_region>;
56*e2b0330cSDmitry Baryshkov        qcom,rpm-msg-ram = <&rpm_msg_ram>;
57*e2b0330cSDmitry Baryshkov
58*e2b0330cSDmitry Baryshkov        hwlocks = <&tcsr_mutex 3>;
59*e2b0330cSDmitry Baryshkov    };
60*e2b0330cSDmitry Baryshkov
61*e2b0330cSDmitry Baryshkov    soc {
62*e2b0330cSDmitry Baryshkov        #address-cells = <1>;
63*e2b0330cSDmitry Baryshkov        #size-cells = <1>;
64*e2b0330cSDmitry Baryshkov        ranges;
65*e2b0330cSDmitry Baryshkov
66*e2b0330cSDmitry Baryshkov        rpm_msg_ram: sram@fc428000 {
67*e2b0330cSDmitry Baryshkov            compatible = "qcom,rpm-msg-ram";
68*e2b0330cSDmitry Baryshkov            reg = <0xfc428000 0x4000>;
69*e2b0330cSDmitry Baryshkov        };
70*e2b0330cSDmitry Baryshkov    };
71*e2b0330cSDmitry Baryshkov
72*e2b0330cSDmitry Baryshkov...
73