.../mtd/partitions/fixed-partitions.yaml | 29 +++++++------------ 1 file changed, 11 insertions(+), 18 deletions(-)
The schema for 'sercomm,scpart-id' is broken. The 'if' condition is
never true because 'compatible' is in the parent node, not the child
node the sub-schema applies to. The example passes as there are no
constraints on additional/unevaluated properties. That's a secondary
issue which is complicated due to nested partitions.
Drop the if/then schema and the unnecessary 'allOf' so that the
'sercomm,scpart-id' property is at least defined.
Cc: Mikhail Zhilkin <csharper2005@gmail.com>
Signed-off-by: Rob Herring <robh@kernel.org>
---
.../mtd/partitions/fixed-partitions.yaml | 29 +++++++------------
1 file changed, 11 insertions(+), 18 deletions(-)
diff --git a/Documentation/devicetree/bindings/mtd/partitions/fixed-partitions.yaml b/Documentation/devicetree/bindings/mtd/partitions/fixed-partitions.yaml
index ad3ccd250802..39b715aad2dc 100644
--- a/Documentation/devicetree/bindings/mtd/partitions/fixed-partitions.yaml
+++ b/Documentation/devicetree/bindings/mtd/partitions/fixed-partitions.yaml
@@ -31,24 +31,17 @@ properties:
patternProperties:
"@[0-9a-f]+$":
- allOf:
- - $ref: "partition.yaml#"
- - if:
- properties:
- compatible:
- contains:
- const: sercomm,sc-partitions
- then:
- properties:
- sercomm,scpart-id:
- description: Partition id in Sercomm partition map. Mtd
- parser uses this id to find a record in the partition map
- containing offset and size of the current partition. The
- values from partition map overrides partition offset and
- size defined in reg property of the dts. Frequently these
- values are the same, but may differ if device has bad
- eraseblocks on a flash.
- $ref: /schemas/types.yaml#/definitions/uint32
+ $ref: partition.yaml#
+
+ properties:
+ sercomm,scpart-id:
+ description: Partition id in Sercomm partition map. Mtd parser
+ uses this id to find a record in the partition map containing
+ offset and size of the current partition. The values from
+ partition map overrides partition offset and size defined in
+ reg property of the dts. Frequently these values are the same,
+ but may differ if device has bad eraseblocks on a flash.
+ $ref: /schemas/types.yaml#/definitions/uint32
required:
- "#address-cells"
--
2.35.1
On Fri, 2022-11-11 at 21:28:24 UTC, Rob Herring wrote: > The schema for 'sercomm,scpart-id' is broken. The 'if' condition is > never true because 'compatible' is in the parent node, not the child > node the sub-schema applies to. The example passes as there are no > constraints on additional/unevaluated properties. That's a secondary > issue which is complicated due to nested partitions. > > Drop the if/then schema and the unnecessary 'allOf' so that the > 'sercomm,scpart-id' property is at least defined. > > Cc: Mikhail Zhilkin <csharper2005@gmail.com> > Signed-off-by: Rob Herring <robh@kernel.org> Applied to https://git.kernel.org/pub/scm/linux/kernel/git/mtd/linux.git mtd/next, thanks. Miquel
Hi Rob, robh@kernel.org wrote on Fri, 11 Nov 2022 15:28:24 -0600: > The schema for 'sercomm,scpart-id' is broken. The 'if' condition is > never true because 'compatible' is in the parent node, not the child > node the sub-schema applies to. The example passes as there are no > constraints on additional/unevaluated properties. That's a secondary > issue which is complicated due to nested partitions. > > Drop the if/then schema and the unnecessary 'allOf' so that the > 'sercomm,scpart-id' property is at least defined. > > Cc: Mikhail Zhilkin <csharper2005@gmail.com> > Signed-off-by: Rob Herring <robh@kernel.org> Mmmh right, I've missed that in my little rework. I'll apply it with the big series "[PATCH v3 00/17] Improve MTD bindings" as soon as the last remaining patch gets reviewed. > --- > .../mtd/partitions/fixed-partitions.yaml | 29 +++++++------------ > 1 file changed, 11 insertions(+), 18 deletions(-) > > diff --git a/Documentation/devicetree/bindings/mtd/partitions/fixed-partitions.yaml b/Documentation/devicetree/bindings/mtd/partitions/fixed-partitions.yaml > index ad3ccd250802..39b715aad2dc 100644 > --- a/Documentation/devicetree/bindings/mtd/partitions/fixed-partitions.yaml > +++ b/Documentation/devicetree/bindings/mtd/partitions/fixed-partitions.yaml > @@ -31,24 +31,17 @@ properties: > > patternProperties: > "@[0-9a-f]+$": > - allOf: > - - $ref: "partition.yaml#" > - - if: > - properties: > - compatible: > - contains: > - const: sercomm,sc-partitions > - then: > - properties: > - sercomm,scpart-id: > - description: Partition id in Sercomm partition map. Mtd > - parser uses this id to find a record in the partition map > - containing offset and size of the current partition. The > - values from partition map overrides partition offset and > - size defined in reg property of the dts. Frequently these > - values are the same, but may differ if device has bad > - eraseblocks on a flash. > - $ref: /schemas/types.yaml#/definitions/uint32 > + $ref: partition.yaml# > + > + properties: > + sercomm,scpart-id: > + description: Partition id in Sercomm partition map. Mtd parser > + uses this id to find a record in the partition map containing > + offset and size of the current partition. The values from > + partition map overrides partition offset and size defined in > + reg property of the dts. Frequently these values are the same, > + but may differ if device has bad eraseblocks on a flash. > + $ref: /schemas/types.yaml#/definitions/uint32 > > required: > - "#address-cells" Thanks, Miquèl
© 2016 - 2026 Red Hat, Inc.