# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
%YAML 1.2
---
$id: "http://devicetree.org/schemas/soc/qcom/qcom,smem.yaml#"
$schema: "http://devicetree.org/meta-schemas/core.yaml#"

title: Qualcomm Shared Memory Manager binding

maintainers:
  - Andy Gross <agross@kernel.org>
  - Bjorn Andersson <bjorn.andersson@linaro.org>

description:
  This binding describes the Qualcomm Shared Memory Manager, a region of
  reserved-memory used to share data between various subsystems and OSes in
  Qualcomm platforms.

properties:
  compatible:
    const: qcom,smem

  reg:
    maxItems: 1

  memory-region:
    maxItems: 1
    description: handle to memory reservation for main SMEM memory region.

  hwlocks:
    maxItems: 1

  qcom,rpm-msg-ram:
    $ref: /schemas/types.yaml#/definitions/phandle
    description: handle to RPM message memory resource

  no-map: true

required:
  - compatible
  - hwlocks

oneOf:
  - required:
      - reg
      - no-map
  - required:
      - memory-region

additionalProperties: false

examples:
  - |
    reserved-memory {
        #address-cells = <1>;
        #size-cells = <1>;
        ranges;

        smem@fa00000 {
            compatible = "qcom,smem";
            reg = <0xfa00000 0x200000>;
            no-map;

            hwlocks = <&tcsr_mutex 3>;
        };
    };
  - |
    reserved-memory {
        #address-cells = <1>;
        #size-cells = <1>;
        ranges;

        smem_region: smem@fa00000 {
            reg = <0xfa00000 0x200000>;
            no-map;
        };
    };

    smem {
        compatible = "qcom,smem";

        memory-region = <&smem_region>;
        qcom,rpm-msg-ram = <&rpm_msg_ram>;

        hwlocks = <&tcsr_mutex 3>;
    };

    soc {
        #address-cells = <1>;
        #size-cells = <1>;
        ranges;

        rpm_msg_ram: sram@fc428000 {
            compatible = "qcom,rpm-msg-ram";
            reg = <0xfc428000 0x4000>;
        };
    };

...
