Message ID | 20210424110608.15748-4-michael@walle.cc |
---|---|
State | Accepted |
Commit | 74ae3663b110d8d3e5d41dd4b05f4fa6bd79d49d |
Headers | show |
Series | mtd: core: OTP nvmem provider support | expand |
On Sat, 24 Apr 2021 13:06:06 +0200, Michael Walle wrote: > Flash devices can have one-time-programmable regions. Add a nvmem > binding so they can be used as a nvmem provider. > > Signed-off-by: Michael Walle <michael@walle.cc> > --- > Changes since v1: > - drop "mtd-" prefix for the compatible strings > > Changes since RFC: > - added missing "$" > - dropped first example > - use real device compatibles > > Please note, that this will lead to an error without patch 4/5, which > introduces that property for the jedec,spi-nor. Should I keep it > seperate or should I squash that patch into this one? > > .../devicetree/bindings/mtd/mtd.yaml | 50 +++++++++++++++++++ > 1 file changed, 50 insertions(+) > Reviewed-by: Rob Herring <robh@kernel.org>
On Sat, 2021-04-24 at 11:06:06 UTC, Michael Walle wrote: > Flash devices can have one-time-programmable regions. Add a nvmem > binding so they can be used as a nvmem provider. > > Signed-off-by: Michael Walle <michael@walle.cc> > Reviewed-by: Rob Herring <robh@kernel.org> Applied to https://git.kernel.org/pub/scm/linux/kernel/git/mtd/linux.git mtd/next, thanks. Miquel
diff --git a/Documentation/devicetree/bindings/mtd/mtd.yaml b/Documentation/devicetree/bindings/mtd/mtd.yaml index 086b0ecd1604..376b679cfc70 100644 --- a/Documentation/devicetree/bindings/mtd/mtd.yaml +++ b/Documentation/devicetree/bindings/mtd/mtd.yaml @@ -21,6 +21,25 @@ properties: based name) in order to ease flash device identification and/or describe what they are used for. +patternProperties: + "^otp(-[0-9]+)?$": + type: object + $ref: ../nvmem/nvmem.yaml# + + description: | + An OTP memory region. Some flashes provide a one-time-programmable + memory whose content can either be programmed by a user or is already + pre-programmed by the factory. Some flashes might provide both. + + properties: + compatible: + enum: + - user-otp + - factory-otp + + required: + - compatible + additionalProperties: true examples: @@ -36,4 +55,35 @@ examples: }; }; + - | + spi { + #address-cells = <1>; + #size-cells = <0>; + + flash@0 { + reg = <0>; + compatible = "jedec,spi-nor"; + + otp-1 { + compatible = "factory-otp"; + #address-cells = <1>; + #size-cells = <1>; + + electronic-serial-number@0 { + reg = <0 8>; + }; + }; + + otp-2 { + compatible = "user-otp"; + #address-cells = <1>; + #size-cells = <1>; + + mac-address@0 { + reg = <0 6>; + }; + }; + }; + }; + ...
Flash devices can have one-time-programmable regions. Add a nvmem binding so they can be used as a nvmem provider. Signed-off-by: Michael Walle <michael@walle.cc> --- Changes since v1: - drop "mtd-" prefix for the compatible strings Changes since RFC: - added missing "$" - dropped first example - use real device compatibles Please note, that this will lead to an error without patch 4/5, which introduces that property for the jedec,spi-nor. Should I keep it seperate or should I squash that patch into this one? .../devicetree/bindings/mtd/mtd.yaml | 50 +++++++++++++++++++ 1 file changed, 50 insertions(+)