Hello, During a yaml conversion review, Krzysztof opened the discussion about the links and references made between the different files in the mtd bindings. I figured out some minimal changes might be needed to properly reference everything correctly and ensure we constrain as much as possible the existing bindings. That is what I tried to do here. The idea is: * partition.yaml defines one MTD partition * parsers/*.yaml define partition parsers (mainly compatibles) * mtd.yaml contains the generic definition of any mtd device (nand, spi-nand, spi-nor, nor, sram, etc), in particular, it defines the various partition formats (legacy and current) and references partition.yaml as well as a list of all the possible parsers within a "partitions" node. * nand-chip.yaml, jedec,spi-nor, mtd-physmap.yaml all describe real instances of mtd device, each of them with a different underlying technology, they reference mtd.yaml * nand-controller.yaml has subnodes which reference nand-chip.yaml. * Specific NAND controller bindings reference nand-controller.yaml. I've tested with the following command and it worked okay: $ make dt_binding_check -j10 DT_CHECKER_FLAG=-m DT_SCHEMA_FILES=mtd/ Comments welcome of course :-) Cheers, Miquèl Miquel Raynal (12): dt-bindings: mtd: Clarify all partition subnodes dt-bindings: mtd: Mention basic properties dt-bindings: mtd: Remove useless file about partitions dt-bindings: mtd: ingenic: Mark partitions in the controller node as deprecated dt-bindings: mtd: onenand: Mention the expected node name dt-bindings: mtd: nand-chip: Reference mtd.yaml dt-bindings: mtd: Drop common properties from NAND controllers dt-bindings: mtd: spi-nor: Drop common properties dt-bindings: mtd: phymap: Reuse the generic definitions dt-bindings: mtd: Drop object types when referencing other files dt-bindings: mtd: Argue in favor of keeping additionalProperties set to true dt-bindings: mtd: Constrain the list of parsers .../mtd/allwinner,sun4i-a10-nand.yaml | 3 -- .../bindings/mtd/arasan,nand-controller.yaml | 3 -- .../devicetree/bindings/mtd/ingenic,nand.yaml | 13 +----- .../bindings/mtd/intel,lgm-ebunand.yaml | 10 +---- .../bindings/mtd/jedec,spi-nor.yaml | 14 ------- .../devicetree/bindings/mtd/mtd-physmap.yaml | 7 ++-- .../devicetree/bindings/mtd/mtd.yaml | 41 ++++++++++++++++++- .../devicetree/bindings/mtd/nand-chip.yaml | 4 ++ .../bindings/mtd/nand-controller.yaml | 1 - .../devicetree/bindings/mtd/partition.txt | 33 --------------- .../bindings/mtd/partitions/partition.yaml | 1 + .../devicetree/bindings/mtd/qcom,nandc.yaml | 3 -- .../bindings/mtd/ti,gpmc-onenand.yaml | 3 ++ 13 files changed, 52 insertions(+), 84 deletions(-) delete mode 100644 Documentation/devicetree/bindings/mtd/partition.txt -- 2.34.1