On Thu, Nov 16, 2023 at 10:28:50AM -0700, Simon Glass wrote: > Add a compatible string for binman, so we can extend fixed-partitions > in various ways. > > Signed-off-by: Simon Glass <sjg@xxxxxxxxxxxx> > --- > > (no changes since v5) > > Changes in v5: > - Add #address/size-cells and parternProperties > - Drop $ref to fixed-partitions.yaml > - Drop 'select: false' > > Changes in v4: > - Change subject line > > Changes in v3: > - Drop fixed-partition additional compatible string > - Drop fixed-partitions from the example > - Mention use of compatible instead of label > > Changes in v2: > - Drop mention of 'enhanced features' in fixed-partitions.yaml > - Mention Binman input and output properties > - Use plain partition@xxx for the node name > > .../bindings/mtd/partitions/binman.yaml | 68 +++++++++++++++++++ > .../bindings/mtd/partitions/partitions.yaml | 1 + > MAINTAINERS | 5 ++ > 3 files changed, 74 insertions(+) > create mode 100644 Documentation/devicetree/bindings/mtd/partitions/binman.yaml > > diff --git a/Documentation/devicetree/bindings/mtd/partitions/binman.yaml b/Documentation/devicetree/bindings/mtd/partitions/binman.yaml > new file mode 100644 > index 000000000000..329217550a98 > --- /dev/null > +++ b/Documentation/devicetree/bindings/mtd/partitions/binman.yaml > @@ -0,0 +1,68 @@ > +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) > +# Copyright 2023 Google LLC > + > +%YAML 1.2 > +--- > +$id: http://devicetree.org/schemas/mtd/partitions/binman.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: Binman firmware layout > + > +maintainers: > + - Simon Glass <sjg@xxxxxxxxxxxx> > + > +description: | > + The binman node provides a layout for firmware, used when packaging firmware > + from multiple projects. It is based on fixed-partitions, with some > + extensions, but uses 'compatible' to indicate the contents of the node, to > + avoid perturbing or confusing existing installations which use 'label' for a > + particular purpose. > + > + Binman supports properties used as inputs to the firmware-packaging process, > + such as those which control alignment of partitions. This binding addresses > + these 'input' properties. For example, it is common for the 'reg' property > + (an 'output' property) to be set by Binman, based on the alignment requested > + in the input. > + > + Once processing is complete, input properties have mostly served their > + purpose, at least until the firmware is repacked later, e.g. due to a > + firmware update. The 'fixed-partitions' binding should provide enough > + information to read the firmware at runtime, including decompression if > + needed. How is this going to work exactly? binman reads these nodes and then writes out 'fixed-partitions' nodes. But then you've lost the binman specifc parts needed for repacking. Rob