From: Olivier Masse <olivier.masse@nxp.com>
DMABUF reserved memory definition for OP-TEE secure data path feature.
Signed-off-by: Olivier Masse <olivier.masse@nxp.com>
Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org>
---
.../linaro,restricted-heap.yaml | 56 +++++++++++++++++++
1 file changed, 56 insertions(+)
create mode 100644 Documentation/devicetree/bindings/reserved-memory/linaro,restricted-heap.yaml
diff --git a/Documentation/devicetree/bindings/reserved-memory/linaro,restricted-heap.yaml b/Documentation/devicetree/bindings/reserved-memory/linaro,restricted-heap.yaml
new file mode 100644
index 000000000000..0ab87cf02775
--- /dev/null
+++ b/Documentation/devicetree/bindings/reserved-memory/linaro,restricted-heap.yaml
@@ -0,0 +1,56 @@
+# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/reserved-memory/linaro,restricted-heap.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Linaro Secure DMABUF Heap
+
+maintainers:
+ - Olivier Masse <olivier.masse@nxp.com>
+
+description:
+ Linaro OP-TEE firmware needs a reserved memory for the
+ Secure Data Path feature (aka SDP).
+ The purpose is to provide a restricted memory heap which allow
+ the normal world OS (REE) to allocate/free restricted buffers.
+ The TEE is reponsible for protecting the SDP memory buffers.
+ TEE Trusted Application can access restricted memory references
+ provided as parameters (DMABUF file descriptor).
+
+allOf:
+ - $ref: "reserved-memory.yaml"
+
+properties:
+ compatible:
+ const: linaro,restricted-heap
+
+ reg:
+ description:
+ Region of memory reserved for OP-TEE SDP feature
+
+ no-map:
+ $ref: /schemas/types.yaml#/definitions/flag
+ description:
+ Avoid creating a virtual mapping of the region as part of the OS'
+ standard mapping of system memory.
+
+unevaluatedProperties: false
+
+required:
+ - compatible
+ - reg
+ - no-map
+
+examples:
+ - |
+ reserved-memory {
+ #address-cells = <2>;
+ #size-cells = <2>;
+
+ sdp@3e800000 {
+ compatible = "linaro,restricted-heap";
+ no-map;
+ reg = <0 0x3E800000 0 0x00400000>;
+ };
+ };
--
2.34.1
On Fri, Aug 30, 2024 at 09:03:50AM +0200, Jens Wiklander wrote: > From: Olivier Masse <olivier.masse@nxp.com> > > DMABUF reserved memory definition for OP-TEE secure data path feature. > > Signed-off-by: Olivier Masse <olivier.masse@nxp.com> > Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org> > --- > .../linaro,restricted-heap.yaml | 56 +++++++++++++++++++ > 1 file changed, 56 insertions(+) > create mode 100644 Documentation/devicetree/bindings/reserved-memory/linaro,restricted-heap.yaml > > diff --git a/Documentation/devicetree/bindings/reserved-memory/linaro,restricted-heap.yaml b/Documentation/devicetree/bindings/reserved-memory/linaro,restricted-heap.yaml > new file mode 100644 > index 000000000000..0ab87cf02775 > --- /dev/null > +++ b/Documentation/devicetree/bindings/reserved-memory/linaro,restricted-heap.yaml > @@ -0,0 +1,56 @@ > +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) > +%YAML 1.2 > +--- > +$id: http://devicetree.org/schemas/reserved-memory/linaro,restricted-heap.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: Linaro Secure DMABUF Heap > + > +maintainers: > + - Olivier Masse <olivier.masse@nxp.com> > + > +description: > + Linaro OP-TEE firmware needs a reserved memory for the > + Secure Data Path feature (aka SDP). > + The purpose is to provide a restricted memory heap which allow > + the normal world OS (REE) to allocate/free restricted buffers. > + The TEE is reponsible for protecting the SDP memory buffers. > + TEE Trusted Application can access restricted memory references > + provided as parameters (DMABUF file descriptor). And what is the difference from regular reserved memory? Why it cannot be used? > + > +allOf: > + - $ref: "reserved-memory.yaml" It does not look like you tested the bindings, at least after quick look. Please run (see Documentation/devicetree/bindings/writing-schema.rst for instructions). Maybe you need to update your dtschema and yamllint. > + > +properties: > + compatible: > + const: linaro,restricted-heap > + > + reg: > + description: > + Region of memory reserved for OP-TEE SDP feature > + > + no-map: > + $ref: /schemas/types.yaml#/definitions/flag > + description: > + Avoid creating a virtual mapping of the region as part of the OS' > + standard mapping of system memory. > + > +unevaluatedProperties: false This goes after "required:" block. > + > +required: > + - compatible > + - reg > + - no-map > + > +examples: > + - | > + reserved-memory { > + #address-cells = <2>; > + #size-cells = <2>; > + > + sdp@3e800000 { > + compatible = "linaro,restricted-heap"; > + no-map; > + reg = <0 0x3E800000 0 0x00400000>; lowercase hex Best regards, Krzysztof
On Fri, Aug 30, 2024 at 10:20 AM Krzysztof Kozlowski <krzk@kernel.org> wrote: > > On Fri, Aug 30, 2024 at 09:03:50AM +0200, Jens Wiklander wrote: > > From: Olivier Masse <olivier.masse@nxp.com> > > > > DMABUF reserved memory definition for OP-TEE secure data path feature. > > > > Signed-off-by: Olivier Masse <olivier.masse@nxp.com> > > Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org> > > --- > > .../linaro,restricted-heap.yaml | 56 +++++++++++++++++++ > > 1 file changed, 56 insertions(+) > > create mode 100644 Documentation/devicetree/bindings/reserved-memory/linaro,restricted-heap.yaml > > > > diff --git a/Documentation/devicetree/bindings/reserved-memory/linaro,restricted-heap.yaml b/Documentation/devicetree/bindings/reserved-memory/linaro,restricted-heap.yaml > > new file mode 100644 > > index 000000000000..0ab87cf02775 > > --- /dev/null > > +++ b/Documentation/devicetree/bindings/reserved-memory/linaro,restricted-heap.yaml > > @@ -0,0 +1,56 @@ > > +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) > > +%YAML 1.2 > > +--- > > +$id: http://devicetree.org/schemas/reserved-memory/linaro,restricted-heap.yaml# > > +$schema: http://devicetree.org/meta-schemas/core.yaml# > > + > > +title: Linaro Secure DMABUF Heap > > + > > +maintainers: > > + - Olivier Masse <olivier.masse@nxp.com> > > + > > +description: > > + Linaro OP-TEE firmware needs a reserved memory for the > > + Secure Data Path feature (aka SDP). > > + The purpose is to provide a restricted memory heap which allow > > + the normal world OS (REE) to allocate/free restricted buffers. > > + The TEE is reponsible for protecting the SDP memory buffers. > > + TEE Trusted Application can access restricted memory references > > + provided as parameters (DMABUF file descriptor). > > And what is the difference from regular reserved memory? Why it cannot > be used? Good question. I need a compatible = "linaro,restricted-heap" to find it, but it appears that's permitted with regular reserved memory. Let's drop this patch. Thanks for pointing me in the right direction. > > > + > > +allOf: > > + - $ref: "reserved-memory.yaml" > > It does not look like you tested the bindings, at least after quick > look. Please run (see > Documentation/devicetree/bindings/writing-schema.rst for instructions). > Maybe you need to update your dtschema and yamllint. You're right, sorry. > > > + > > +properties: > > + compatible: > > + const: linaro,restricted-heap > > + > > + reg: > > + description: > > + Region of memory reserved for OP-TEE SDP feature > > + > > + no-map: > > + $ref: /schemas/types.yaml#/definitions/flag > > + description: > > + Avoid creating a virtual mapping of the region as part of the OS' > > + standard mapping of system memory. > > + > > +unevaluatedProperties: false > > This goes after "required:" block. OK > > > + > > +required: > > + - compatible > > + - reg > > + - no-map > > + > > +examples: > > + - | > > + reserved-memory { > > + #address-cells = <2>; > > + #size-cells = <2>; > > + > > + sdp@3e800000 { > > + compatible = "linaro,restricted-heap"; > > + no-map; > > + reg = <0 0x3E800000 0 0x00400000>; > > lowercase hex > OK Thanks, Jens > Best regards, > Krzysztof >
© 2016 - 2024 Red Hat, Inc.