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