mbox series

[00/12] Improve MTD bindings

Message ID 20221028235933.934850-1-miquel.raynal@bootlin.com (mailing list archive)
Headers show
Series Improve MTD bindings | expand

Message

Miquel Raynal Oct. 28, 2022, 11:59 p.m. UTC
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