Re: [PATCH 2/6] dt-bindings: reserved-memory: Support framebuffer reserved memory

2022-09-14 Thread Thierry Reding
On Tue, Sep 06, 2022 at 09:27:21AM -0500, Rob Herring wrote:
> On Mon, Sep 05, 2022 at 06:32:56PM +0200, Thierry Reding wrote:
> > From: Thierry Reding 
> > 
> > Document the "framebuffer" compatible string for reserved memory nodes
> > to annotate reserved memory regions used for framebuffer carveouts.
> > 
> > Signed-off-by: Thierry Reding 
> > ---
> >  .../bindings/reserved-memory/framebuffer.yaml | 46 +++
> >  1 file changed, 46 insertions(+)
> >  create mode 100644 
> > Documentation/devicetree/bindings/reserved-memory/framebuffer.yaml
> > 
> > diff --git 
> > a/Documentation/devicetree/bindings/reserved-memory/framebuffer.yaml 
> > b/Documentation/devicetree/bindings/reserved-memory/framebuffer.yaml
> > new file mode 100644
> > index ..80574854025d
> > --- /dev/null
> > +++ b/Documentation/devicetree/bindings/reserved-memory/framebuffer.yaml
> > @@ -0,0 +1,46 @@
> > +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
> > +%YAML 1.2
> > +---
> > +$id: http://devicetree.org/schemas/reserved-memory/framebuffer.yaml#
> > +$schema: http://devicetree.org/meta-schemas/core.yaml#
> > +
> > +title: /reserved-memory framebuffer node bindings
> > +
> > +maintainers:
> > +  - devicetree-s...@vger.kernel.org
> > +
> > +allOf:
> > +  - $ref: "reserved-memory.yaml"
> 
> Don't need quotes.
> 
> > +
> > +properties:
> > +  compatible:
> > +const: framebuffer
> > +description: >
> > +  This indicates a region of memory meant to be used as a framebuffer 
> > for
> > +  a set of display devices. It can be used by an operating system to 
> > keep
> > +  the framebuffer from being overwritten and use it as the backing 
> > memory
> > +  for a display device (such as simple-framebuffer).
> 
> I'm on the fence whether we need this. It doesn't really add anything 
> because 'simple-framebuffer' will reference this node and you can find 
> it that way. I guess a bootloader may not setup 'simple-framebuffer', 
> but then it should probably not have this node either.
> 
> On the flip side, better to have compatibles than not to identify nodes.

Yeah, I think given some of the comments that Robin Murphy had on the
iommu-addresses thread, having some compatible string to derive more
information from will be useful. I'm not sure if "framebuffer" is the
greatest choice, but it says exactly what this is, so if there are no
better suggestions, I'll stick with that.

Adding Robin in case he has anything to contribute on this side of the
discussion. In retrospect it might have been good to have more overlap
between the recipients of both series.

Thierry

> 
> > +
> > +unevaluatedProperties: false
> > +
> > +examples:
> > +  - |
> 
> Use '/ {' to skip the boilerplate causing the error.
> 
> > +  chosen {
> > +framebuffer {
> > +  compatible = "simple-framebuffer";
> > +  memory-region = <>;
> > +};
> > +  };
> > +
> > +  reserved-memory {
> > +  #address-cells = <1>;
> > +  #size-cells = <1>;
> > +  ranges;
> > +
> > +  fb: framebuffer@8000 {
> > +  compatible = "framebuffer";
> > +  reg = <0x8000 0x007e9000>;
> > +  };
> > +  };
> > +
> > +...
> > -- 
> > 2.37.2
> > 
> > 


signature.asc
Description: PGP signature


Re: [PATCH 2/6] dt-bindings: reserved-memory: Support framebuffer reserved memory

2022-09-06 Thread Rob Herring
On Mon, Sep 05, 2022 at 06:32:56PM +0200, Thierry Reding wrote:
> From: Thierry Reding 
> 
> Document the "framebuffer" compatible string for reserved memory nodes
> to annotate reserved memory regions used for framebuffer carveouts.
> 
> Signed-off-by: Thierry Reding 
> ---
>  .../bindings/reserved-memory/framebuffer.yaml | 46 +++
>  1 file changed, 46 insertions(+)
>  create mode 100644 
> Documentation/devicetree/bindings/reserved-memory/framebuffer.yaml
> 
> diff --git 
> a/Documentation/devicetree/bindings/reserved-memory/framebuffer.yaml 
> b/Documentation/devicetree/bindings/reserved-memory/framebuffer.yaml
> new file mode 100644
> index ..80574854025d
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/reserved-memory/framebuffer.yaml
> @@ -0,0 +1,46 @@
> +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/reserved-memory/framebuffer.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: /reserved-memory framebuffer node bindings
> +
> +maintainers:
> +  - devicetree-s...@vger.kernel.org
> +
> +allOf:
> +  - $ref: "reserved-memory.yaml"

Don't need quotes.

> +
> +properties:
> +  compatible:
> +const: framebuffer
> +description: >
> +  This indicates a region of memory meant to be used as a framebuffer for
> +  a set of display devices. It can be used by an operating system to keep
> +  the framebuffer from being overwritten and use it as the backing memory
> +  for a display device (such as simple-framebuffer).

I'm on the fence whether we need this. It doesn't really add anything 
because 'simple-framebuffer' will reference this node and you can find 
it that way. I guess a bootloader may not setup 'simple-framebuffer', 
but then it should probably not have this node either.

On the flip side, better to have compatibles than not to identify nodes.

> +
> +unevaluatedProperties: false
> +
> +examples:
> +  - |

Use '/ {' to skip the boilerplate causing the error.

> +  chosen {
> +framebuffer {
> +  compatible = "simple-framebuffer";
> +  memory-region = <>;
> +};
> +  };
> +
> +  reserved-memory {
> +  #address-cells = <1>;
> +  #size-cells = <1>;
> +  ranges;
> +
> +  fb: framebuffer@8000 {
> +  compatible = "framebuffer";
> +  reg = <0x8000 0x007e9000>;
> +  };
> +  };
> +
> +...
> -- 
> 2.37.2
> 
> 


Re: [PATCH 2/6] dt-bindings: reserved-memory: Support framebuffer reserved memory

2022-09-05 Thread Rob Herring
On Mon, 05 Sep 2022 18:32:56 +0200, Thierry Reding wrote:
> From: Thierry Reding 
> 
> Document the "framebuffer" compatible string for reserved memory nodes
> to annotate reserved memory regions used for framebuffer carveouts.
> 
> Signed-off-by: Thierry Reding 
> ---
>  .../bindings/reserved-memory/framebuffer.yaml | 46 +++
>  1 file changed, 46 insertions(+)
>  create mode 100644 
> Documentation/devicetree/bindings/reserved-memory/framebuffer.yaml
> 

My bot found errors running 'make DT_CHECKER_FLAGS=-m dt_binding_check'
on your patch (DT_CHECKER_FLAGS is new in v5.13):

yamllint warnings/errors:

dtschema/dtc warnings/errors:
Documentation/devicetree/bindings/reserved-memory/framebuffer.example.dts:18.16-23.11:
 Warning (chosen_node_is_root): /example-0/chosen: chosen node must be at root 
node

doc reference errors (make refcheckdocs):

See https://patchwork.ozlabs.org/patch/

This check can fail if there are any dependencies. The base for a patch
series is generally the most recent rc1.

If you already ran 'make dt_binding_check' and didn't see the above
error(s), then make sure 'yamllint' is installed and dt-schema is up to
date:

pip3 install dtschema --upgrade

Please check and re-submit.



[PATCH 2/6] dt-bindings: reserved-memory: Support framebuffer reserved memory

2022-09-05 Thread Thierry Reding
From: Thierry Reding 

Document the "framebuffer" compatible string for reserved memory nodes
to annotate reserved memory regions used for framebuffer carveouts.

Signed-off-by: Thierry Reding 
---
 .../bindings/reserved-memory/framebuffer.yaml | 46 +++
 1 file changed, 46 insertions(+)
 create mode 100644 
Documentation/devicetree/bindings/reserved-memory/framebuffer.yaml

diff --git a/Documentation/devicetree/bindings/reserved-memory/framebuffer.yaml 
b/Documentation/devicetree/bindings/reserved-memory/framebuffer.yaml
new file mode 100644
index ..80574854025d
--- /dev/null
+++ b/Documentation/devicetree/bindings/reserved-memory/framebuffer.yaml
@@ -0,0 +1,46 @@
+# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/reserved-memory/framebuffer.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: /reserved-memory framebuffer node bindings
+
+maintainers:
+  - devicetree-s...@vger.kernel.org
+
+allOf:
+  - $ref: "reserved-memory.yaml"
+
+properties:
+  compatible:
+const: framebuffer
+description: >
+  This indicates a region of memory meant to be used as a framebuffer for
+  a set of display devices. It can be used by an operating system to keep
+  the framebuffer from being overwritten and use it as the backing memory
+  for a display device (such as simple-framebuffer).
+
+unevaluatedProperties: false
+
+examples:
+  - |
+  chosen {
+framebuffer {
+  compatible = "simple-framebuffer";
+  memory-region = <>;
+};
+  };
+
+  reserved-memory {
+  #address-cells = <1>;
+  #size-cells = <1>;
+  ranges;
+
+  fb: framebuffer@8000 {
+  compatible = "framebuffer";
+  reg = <0x8000 0x007e9000>;
+  };
+  };
+
+...
-- 
2.37.2