xref: /freebsd/sys/contrib/device-tree/Bindings/reserved-memory/qcom,rmtfs-mem.yaml (revision 84943d6f38e936ac3b7a3947ca26eeb27a39f938)
1e67e8565SEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2e67e8565SEmmanuel Vadot%YAML 1.2
3e67e8565SEmmanuel Vadot---
4fac71e4eSEmmanuel Vadot$id: http://devicetree.org/schemas/reserved-memory/qcom,rmtfs-mem.yaml#
5fac71e4eSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml#
6e67e8565SEmmanuel Vadot
7e67e8565SEmmanuel Vadottitle: Qualcomm Remote File System Memory
8e67e8565SEmmanuel Vadot
9e67e8565SEmmanuel Vadotdescription: |
10e67e8565SEmmanuel Vadot  This binding describes the Qualcomm remote filesystem memory, which serves the
11e67e8565SEmmanuel Vadot  purpose of describing the shared memory region used for remote processors to
12e67e8565SEmmanuel Vadot  access block device data using the Remote Filesystem protocol.
13e67e8565SEmmanuel Vadot
14e67e8565SEmmanuel Vadotmaintainers:
15e67e8565SEmmanuel Vadot  - Bjorn Andersson <bjorn.andersson@linaro.org>
16e67e8565SEmmanuel Vadot
17e67e8565SEmmanuel VadotallOf:
18fac71e4eSEmmanuel Vadot  - $ref: reserved-memory.yaml
19e67e8565SEmmanuel Vadot
20e67e8565SEmmanuel Vadotproperties:
21e67e8565SEmmanuel Vadot  compatible:
22e67e8565SEmmanuel Vadot    const: qcom,rmtfs-mem
23e67e8565SEmmanuel Vadot
24e67e8565SEmmanuel Vadot  qcom,client-id:
25e67e8565SEmmanuel Vadot    $ref: /schemas/types.yaml#/definitions/uint32
26e67e8565SEmmanuel Vadot    description: >
27e67e8565SEmmanuel Vadot      identifier of the client to use this region for buffers
28e67e8565SEmmanuel Vadot
29*84943d6fSEmmanuel Vadot  qcom,use-guard-pages:
30*84943d6fSEmmanuel Vadot    type: boolean
31*84943d6fSEmmanuel Vadot    description: >
32*84943d6fSEmmanuel Vadot      Indicates that the firmware, or hardware, does not gracefully handle
33*84943d6fSEmmanuel Vadot      memory protection of this region when placed adjacent to other protected
34*84943d6fSEmmanuel Vadot      memory regions, and that padding around the used portion of the memory
35*84943d6fSEmmanuel Vadot      region is necessary.
36*84943d6fSEmmanuel Vadot
37*84943d6fSEmmanuel Vadot      When this is set, the first and last page should be left unused, and the
38*84943d6fSEmmanuel Vadot      effective size of the region will thereby shrink with two pages.
39*84943d6fSEmmanuel Vadot
40e67e8565SEmmanuel Vadot  qcom,vmid:
41cb7aa33aSEmmanuel Vadot    $ref: /schemas/types.yaml#/definitions/uint32-array
42e67e8565SEmmanuel Vadot    description: >
43cb7aa33aSEmmanuel Vadot      Array of vmids of the remote processors, to set up memory protection
44cb7aa33aSEmmanuel Vadot    minItems: 1
45cb7aa33aSEmmanuel Vadot    maxItems: 2
46e67e8565SEmmanuel Vadot
47e67e8565SEmmanuel Vadotrequired:
48e67e8565SEmmanuel Vadot  - qcom,client-id
49e67e8565SEmmanuel Vadot
50e67e8565SEmmanuel VadotunevaluatedProperties: false
51e67e8565SEmmanuel Vadot
52e67e8565SEmmanuel Vadotexamples:
53e67e8565SEmmanuel Vadot  - |
54e67e8565SEmmanuel Vadot    reserved-memory {
55e67e8565SEmmanuel Vadot        #address-cells = <1>;
56e67e8565SEmmanuel Vadot        #size-cells = <1>;
57e67e8565SEmmanuel Vadot        ranges;
58e67e8565SEmmanuel Vadot
59e67e8565SEmmanuel Vadot        rmtfs@86700000 {
60e67e8565SEmmanuel Vadot            compatible = "qcom,rmtfs-mem";
61e67e8565SEmmanuel Vadot            reg = <0x86700000 0xe0000>;
62e67e8565SEmmanuel Vadot            no-map;
63e67e8565SEmmanuel Vadot
64e67e8565SEmmanuel Vadot            qcom,client-id = <1>;
65e67e8565SEmmanuel Vadot        };
66e67e8565SEmmanuel Vadot    };
67