Message ID | 20221028235933.934850-2-miquel.raynal@bootlin.com (mailing list archive) |
---|---|
State | Not Applicable |
Headers | show |
Series | Improve MTD bindings | expand |
On Sat, Oct 29, 2022 at 01:59:22AM +0200, Miquel Raynal wrote: > Over time the various ways to define MTD partitions has evolved. Most of > the controllers support several different bindings. Let's define all > possible choices in one file and mark the legacy ones deprecated. This > way, we can just reference this file and avoid dupplicating these > definitions. > > Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com> > --- > Documentation/devicetree/bindings/mtd/mtd.yaml | 18 ++++++++++++++++++ > 1 file changed, 18 insertions(+) > > diff --git a/Documentation/devicetree/bindings/mtd/mtd.yaml b/Documentation/devicetree/bindings/mtd/mtd.yaml > index 25b91f25fcf4..9fcaa61b046c 100644 > --- a/Documentation/devicetree/bindings/mtd/mtd.yaml > +++ b/Documentation/devicetree/bindings/mtd/mtd.yaml > @@ -21,7 +21,25 @@ properties: > based name) in order to ease flash device identification and/or > describe what they are used for. > > + partitions: > + type: object > + properties: > + '#address-cells': true > + '#size-cells': true These should only be 1 or 2 which I don't think is defined anywhere else. > + > + patternProperties: > + "partition@[0-9a-f]+": > + $ref: partitions/partition.yaml > + > patternProperties: > + "@[0-9a-f]+$": > + $ref: partitions/partition.yaml > + deprecated: true > + > + "^partition@[0-9a-f]+": > + $ref: partitions/partition.yaml > + deprecated: true > + > "^otp(-[0-9]+)?$": > type: object > $ref: ../nvmem/nvmem.yaml# > -- > 2.34.1 > >
On Sat, Oct 29, 2022 at 01:59:22AM +0200, Miquel Raynal wrote: > Over time the various ways to define MTD partitions has evolved. Most of > the controllers support several different bindings. Let's define all > possible choices in one file and mark the legacy ones deprecated. This > way, we can just reference this file and avoid dupplicating these > definitions. > > Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com> > --- > Documentation/devicetree/bindings/mtd/mtd.yaml | 18 ++++++++++++++++++ > 1 file changed, 18 insertions(+) > > diff --git a/Documentation/devicetree/bindings/mtd/mtd.yaml b/Documentation/devicetree/bindings/mtd/mtd.yaml > index 25b91f25fcf4..9fcaa61b046c 100644 > --- a/Documentation/devicetree/bindings/mtd/mtd.yaml > +++ b/Documentation/devicetree/bindings/mtd/mtd.yaml > @@ -21,7 +21,25 @@ properties: > based name) in order to ease flash device identification and/or > describe what they are used for. > > + partitions: > + type: object Also, this node needs 'additionalProperties: false'. Unless there cases of custom properties here. If so, then it gets more complicated and we'll need a partitions.yaml schema instead so we can do: $ref: partitions.yaml properties: my-extra-custom-property: true unevaluatedProperties: false (Multiple node levels doesn't work for that as child nodes from 2 different schemas can't 'see' each other.) > + properties: > + '#address-cells': true > + '#size-cells': true > + > + patternProperties: > + "partition@[0-9a-f]+": > + $ref: partitions/partition.yaml > + > patternProperties: > + "@[0-9a-f]+$": > + $ref: partitions/partition.yaml > + deprecated: true > + > + "^partition@[0-9a-f]+": > + $ref: partitions/partition.yaml > + deprecated: true > + > "^otp(-[0-9]+)?$": > type: object > $ref: ../nvmem/nvmem.yaml# > -- > 2.34.1 > >
diff --git a/Documentation/devicetree/bindings/mtd/mtd.yaml b/Documentation/devicetree/bindings/mtd/mtd.yaml index 25b91f25fcf4..9fcaa61b046c 100644 --- a/Documentation/devicetree/bindings/mtd/mtd.yaml +++ b/Documentation/devicetree/bindings/mtd/mtd.yaml @@ -21,7 +21,25 @@ properties: based name) in order to ease flash device identification and/or describe what they are used for. + partitions: + type: object + properties: + '#address-cells': true + '#size-cells': true + + patternProperties: + "partition@[0-9a-f]+": + $ref: partitions/partition.yaml + patternProperties: + "@[0-9a-f]+$": + $ref: partitions/partition.yaml + deprecated: true + + "^partition@[0-9a-f]+": + $ref: partitions/partition.yaml + deprecated: true + "^otp(-[0-9]+)?$": type: object $ref: ../nvmem/nvmem.yaml#
Over time the various ways to define MTD partitions has evolved. Most of the controllers support several different bindings. Let's define all possible choices in one file and mark the legacy ones deprecated. This way, we can just reference this file and avoid dupplicating these definitions. Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com> --- Documentation/devicetree/bindings/mtd/mtd.yaml | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+)