Re: [PATCH 16/21] dt-bindings: reserved-memory: introduce designated-movable-block

From: Doug Berger
Date: Wed Sep 14 2022 - 13:14:01 EST


On 9/14/2022 7:55 AM, Rob Herring wrote:
On Tue, Sep 13, 2022 at 12:55:03PM -0700, Doug Berger wrote:
Introduce designated-movable-block.yaml to document the
devicetree binding for Designated Movable Block children of the
reserved-memory node.

What is a Designated Movable Block? This patch needs to stand on its
own.
As noted in my reply to your [PATCH 00/21] comment, my intention in submitting the entire patch set (and specifically PATCH 00/21]) was to communicate this context. Now that I believe I understand that only this patch should have been submitted to the devicetree-spec mailing list, I will strive harder to make it more self contained.


Why does this belong or need to be in DT?
While my preferred method of declaring Designated Movable Blocks is through the movablecore kernel parameter, I can conceive that others may wish to take advantage of the reserved-memory DT nodes. In particular, it has the advantage that a device can claim ownership of the reserved-memory via device tree, which is something that has yet to be implemented for DMBs defined with movablecore.



Signed-off-by: Doug Berger <opendmb@xxxxxxxxx>
---
.../designated-movable-block.yaml | 51 +++++++++++++++++++
1 file changed, 51 insertions(+)
create mode 100644 Documentation/devicetree/bindings/reserved-memory/designated-movable-block.yaml

diff --git a/Documentation/devicetree/bindings/reserved-memory/designated-movable-block.yaml b/Documentation/devicetree/bindings/reserved-memory/designated-movable-block.yaml
new file mode 100644
index 000000000000..42f846069a2e
--- /dev/null
+++ b/Documentation/devicetree/bindings/reserved-memory/designated-movable-block.yaml
@@ -0,0 +1,51 @@
+# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/reserved-memory/designated-movable-block.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: /reserved-memory Designated Movable Block node binding
+
+maintainers:
+ - devicetree-spec@xxxxxxxxxxxxxxx
+
+allOf:
+ - $ref: "reserved-memory.yaml"
+
+properties:
+ compatible:
+ const: designated-movable-block
+ description:
+ This indicates a region of memory meant to be placed into
+ ZONE_MOVABLE.

Don't put Linuxisms into bindings.
I will avoid ZONE_MOVABLE if this commit is included in V2 of this patch set.

+
+unevaluatedProperties: false
+
+required:
+ - compatible
+ - reusable
+
+examples:
+ - |
+ reserved-memory {
+ #address-cells = <0x2>;
+ #size-cells = <0x2>;
+
+ DMB0@10800000 {
+ compatible = "designated-movable-block";
+ reusable;
+ reg = <0x0 0x10800000 0x0 0x2d800000>;
+ };
+
+ DMB1@40000000 {
+ compatible = "designated-movable-block";
+ reusable;
+ reg = <0x0 0x40000000 0x0 0x30000000>;
+ };
+
+ DMB2@80000000 {
+ compatible = "designated-movable-block";
+ reusable;
+ reg = <0x0 0x80000000 0x0 0x2fc00000>;
+ };
+ };
--
2.25.1


Thank you for the review!
-Doug