1e2b0330cSDmitry Baryshkov# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
2e2b0330cSDmitry Baryshkov%YAML 1.2
3e2b0330cSDmitry Baryshkov---
4*2961ab05SRob Herring$id: http://devicetree.org/schemas/soc/qcom/qcom,smem.yaml#
5*2961ab05SRob Herring$schema: http://devicetree.org/meta-schemas/core.yaml#
6e2b0330cSDmitry Baryshkov
784e85359SKrzysztof Kozlowskititle: Qualcomm Shared Memory Manager
8e2b0330cSDmitry Baryshkov
9e2b0330cSDmitry Baryshkovmaintainers:
10e2b0330cSDmitry Baryshkov  - Andy Gross <agross@kernel.org>
11e2b0330cSDmitry Baryshkov  - Bjorn Andersson <bjorn.andersson@linaro.org>
12e2b0330cSDmitry Baryshkov
137a99e87eSBjorn Anderssondescription:
147a99e87eSBjorn Andersson  This binding describes the Qualcomm Shared Memory Manager, a region of
157a99e87eSBjorn Andersson  reserved-memory used to share data between various subsystems and OSes in
167a99e87eSBjorn Andersson  Qualcomm platforms.
17e2b0330cSDmitry Baryshkov
18e2b0330cSDmitry Baryshkovproperties:
19e2b0330cSDmitry Baryshkov  compatible:
20e2b0330cSDmitry Baryshkov    const: qcom,smem
21e2b0330cSDmitry Baryshkov
227a99e87eSBjorn Andersson  reg:
237a99e87eSBjorn Andersson    maxItems: 1
247a99e87eSBjorn Andersson
25e2b0330cSDmitry Baryshkov  memory-region:
26e2b0330cSDmitry Baryshkov    maxItems: 1
27e2b0330cSDmitry Baryshkov    description: handle to memory reservation for main SMEM memory region.
28e2b0330cSDmitry Baryshkov
29e2b0330cSDmitry Baryshkov  hwlocks:
30e2b0330cSDmitry Baryshkov    maxItems: 1
31e2b0330cSDmitry Baryshkov
32e2b0330cSDmitry Baryshkov  qcom,rpm-msg-ram:
33e2b0330cSDmitry Baryshkov    $ref: /schemas/types.yaml#/definitions/phandle
34e2b0330cSDmitry Baryshkov    description: handle to RPM message memory resource
35e2b0330cSDmitry Baryshkov
367a99e87eSBjorn Andersson  no-map: true
377a99e87eSBjorn Andersson
38e2b0330cSDmitry Baryshkovrequired:
39e2b0330cSDmitry Baryshkov  - compatible
40e2b0330cSDmitry Baryshkov  - hwlocks
41e2b0330cSDmitry Baryshkov
427a99e87eSBjorn AnderssononeOf:
437a99e87eSBjorn Andersson  - required:
447a99e87eSBjorn Andersson      - reg
457a99e87eSBjorn Andersson      - no-map
467a99e87eSBjorn Andersson  - required:
477a99e87eSBjorn Andersson      - memory-region
487a99e87eSBjorn Andersson
49e2b0330cSDmitry BaryshkovadditionalProperties: false
50e2b0330cSDmitry Baryshkov
51e2b0330cSDmitry Baryshkovexamples:
52e2b0330cSDmitry Baryshkov  - |
53e2b0330cSDmitry Baryshkov    reserved-memory {
54e2b0330cSDmitry Baryshkov        #address-cells = <1>;
55e2b0330cSDmitry Baryshkov        #size-cells = <1>;
56e2b0330cSDmitry Baryshkov        ranges;
57e2b0330cSDmitry Baryshkov
587a99e87eSBjorn Andersson        smem@fa00000 {
597a99e87eSBjorn Andersson            compatible = "qcom,smem";
607a99e87eSBjorn Andersson            reg = <0xfa00000 0x200000>;
617a99e87eSBjorn Andersson            no-map;
627a99e87eSBjorn Andersson
637a99e87eSBjorn Andersson            hwlocks = <&tcsr_mutex 3>;
647a99e87eSBjorn Andersson        };
657a99e87eSBjorn Andersson    };
667a99e87eSBjorn Andersson  - |
677a99e87eSBjorn Andersson    reserved-memory {
687a99e87eSBjorn Andersson        #address-cells = <1>;
697a99e87eSBjorn Andersson        #size-cells = <1>;
707a99e87eSBjorn Andersson        ranges;
717a99e87eSBjorn Andersson
72e2b0330cSDmitry Baryshkov        smem_region: smem@fa00000 {
73e2b0330cSDmitry Baryshkov            reg = <0xfa00000 0x200000>;
74e2b0330cSDmitry Baryshkov            no-map;
75e2b0330cSDmitry Baryshkov        };
76e2b0330cSDmitry Baryshkov    };
77e2b0330cSDmitry Baryshkov
78e2b0330cSDmitry Baryshkov    smem {
79e2b0330cSDmitry Baryshkov        compatible = "qcom,smem";
80e2b0330cSDmitry Baryshkov
81e2b0330cSDmitry Baryshkov        memory-region = <&smem_region>;
82e2b0330cSDmitry Baryshkov        qcom,rpm-msg-ram = <&rpm_msg_ram>;
83e2b0330cSDmitry Baryshkov
84e2b0330cSDmitry Baryshkov        hwlocks = <&tcsr_mutex 3>;
85e2b0330cSDmitry Baryshkov    };
86e2b0330cSDmitry Baryshkov
87e2b0330cSDmitry Baryshkov    soc {
88e2b0330cSDmitry Baryshkov        #address-cells = <1>;
89e2b0330cSDmitry Baryshkov        #size-cells = <1>;
90e2b0330cSDmitry Baryshkov        ranges;
91e2b0330cSDmitry Baryshkov
92e2b0330cSDmitry Baryshkov        rpm_msg_ram: sram@fc428000 {
93e2b0330cSDmitry Baryshkov            compatible = "qcom,rpm-msg-ram";
94e2b0330cSDmitry Baryshkov            reg = <0xfc428000 0x4000>;
95e2b0330cSDmitry Baryshkov        };
96e2b0330cSDmitry Baryshkov    };
97e2b0330cSDmitry Baryshkov
98e2b0330cSDmitry Baryshkov...
99