On Mon, Mar 08, 2021 at 02:18:45AM +0100, Ansuel Smith wrote: > Document nvmem-cells compatible used to treat mtd partitions as a > nvmem provider. > > Signed-off-by: Ansuel Smith <ansuelsmth@xxxxxxxxx> > --- > .../bindings/mtd/partitions/nvmem-cells.yaml | 105 ++++++++++++++++++ > 1 file changed, 105 insertions(+) > create mode 100644 Documentation/devicetree/bindings/mtd/partitions/nvmem-cells.yaml > > diff --git a/Documentation/devicetree/bindings/mtd/partitions/nvmem-cells.yaml b/Documentation/devicetree/bindings/mtd/partitions/nvmem-cells.yaml > new file mode 100644 > index 000000000000..4ed246b27985 > --- /dev/null > +++ b/Documentation/devicetree/bindings/mtd/partitions/nvmem-cells.yaml > @@ -0,0 +1,105 @@ > +# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause > +%YAML 1.2 > +--- > +$id: http://devicetree.org/schemas/mtd/partitions/nvmem-cells.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: Nvmem cells > + > +description: | > + This binding can be used to treat the specific partition as a nvmem provider. > + Each direct subnodes represents the nvmem cells and won't be parsed as fixed-partitions. > + Fixed-partitions bindings described in fixed-partitions.yaml apply to the nvmem provider node. > + > +maintainers: > + - Ansuel Smith <ansuelsmth@xxxxxxxxx> > + I think this should reference nvmem.yaml. We can drop the $nodename restrictions in it. > +properties: > + compatible: > + const: nvmem-cells > + > + "#address-cells": true > + > + "#size-cells": true > + > + reg: > + description: partition offset and size within the flash > + maxItems: 1 > + > +required: > + - compatible > + - "#address-cells" > + - "#size-cells" > + - reg > + > +additionalProperties: true > + > +examples: > + - | > + partitions { > + compatible = "fixed-partitions"; > + #address-cells = <1>; > + #size-cells = <1>; > + > + /* ... */ > + > + }; > + art: art@1200000 { > + compatible = "nvmem-cells"; > + reg = <0x1200000 0x0140000>; > + label = "art"; > + read-only; > + #address-cells = <1>; > + #size-cells = <1>; > + > + macaddr_gmac1: macaddr_gmac1@0 { > + reg = <0x0 0x6>; > + }; > + > + macaddr_gmac2: macaddr_gmac2@6 { > + reg = <0x6 0x6>; > + }; > + > + pre_cal_24g: pre_cal_24g@1000 { > + reg = <0x1000 0x2f20>; > + }; > + > + pre_cal_5g: pre_cal_5g@5000{ > + reg = <0x5000 0x2f20>; > + }; > + }; > + - | > + partitions { > + compatible = "fixed-partitions"; > + #address-cells = <1>; > + #size-cells = <1>; > + > + partition@0 { > + label = "bootloader"; > + reg = <0x000000 0x100000>; > + read-only; > + }; > + > + firmware@100000 { > + compatible = "brcm,trx"; > + label = "firmware"; > + reg = <0x100000 0xe00000>; > + }; > + > + calibration@f00000 { > + compatible = "nvmem-cells"; > + label = "calibration"; > + reg = <0xf00000 0x100000>; > + ranges = <0 0xf00000 0x100000>; > + #address-cells = <1>; > + #size-cells = <1>; > + > + wifi0@0 { > + reg = <0x000000 0x080000>; > + }; > + > + wifi1@80000 { > + reg = <0x080000 0x080000>; > + }; > + }; > + }; > -- > 2.30.0 >