Message ID | 20230127175831.26753-1-zajec5@gmail.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | [1/2] dt-bindings: nvmem: io: new binding for IO accessible NVMEM devices | expand |
On Fri, Jan 27, 2023 at 06:58:30PM +0100, Rafał Miłecki wrote: > From: Rafał Miłecki <rafal@milecki.pl> > > With the NVMEM layouts binding in place we should now use: > 1. NVMEM device access bindings > 2. NVMEM content description bindings > > This binding allows describing NVMEM devices that can be accessed using > IO mappings. > > Signed-off-by: Rafał Miłecki <rafal@milecki.pl> > --- > .../devicetree/bindings/nvmem/io.yaml | 37 +++++++++++++++++++ What do we call nvmem using ISA/PCI IO space? That was my first thought seeing "IO". Probably unlikely, but still. "MMIO" instead? > 1 file changed, 37 insertions(+) > create mode 100644 Documentation/devicetree/bindings/nvmem/io.yaml > > diff --git a/Documentation/devicetree/bindings/nvmem/io.yaml b/Documentation/devicetree/bindings/nvmem/io.yaml > new file mode 100644 > index 000000000000..67e0aae9cd94 > --- /dev/null > +++ b/Documentation/devicetree/bindings/nvmem/io.yaml > @@ -0,0 +1,37 @@ > +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) > +%YAML 1.2 > +--- > +$id: http://devicetree.org/schemas/nvmem/io.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: IO access based NVMEM > + > +description: | > + This binding describes simple NVMEM devices that can be accessed by simply > + mapping a predefined IO address. > + > + It's a generic solution for providing NVMEM content access. The way of > + handling actual content may be device specific and can be described using a > + proper layout. As the accesses are memory-mapped, the child nodes should also have memory-mapped addresses. IOW, you need 'ranges', '#address-cells', '#size-cells'. > + > +maintainers: > + - Rafał Miłecki <rafal@milecki.pl> > + > +allOf: > + - $ref: nvmem.yaml# > + > +properties: > + compatible: > + const: io-nvmem > + > + reg: > + maxItems: 1 The first addition here will be access size restrictions. Perhaps add that now (reg-io-width). > + > +unevaluatedProperties: false > + > +examples: > + - | > + nvmem@10000 { > + compatible = "io-nvmem"; > + reg = <0x10000000 0x10000>; > + }; > -- > 2.34.1 >
diff --git a/Documentation/devicetree/bindings/nvmem/io.yaml b/Documentation/devicetree/bindings/nvmem/io.yaml new file mode 100644 index 000000000000..67e0aae9cd94 --- /dev/null +++ b/Documentation/devicetree/bindings/nvmem/io.yaml @@ -0,0 +1,37 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/nvmem/io.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: IO access based NVMEM + +description: | + This binding describes simple NVMEM devices that can be accessed by simply + mapping a predefined IO address. + + It's a generic solution for providing NVMEM content access. The way of + handling actual content may be device specific and can be described using a + proper layout. + +maintainers: + - Rafał Miłecki <rafal@milecki.pl> + +allOf: + - $ref: nvmem.yaml# + +properties: + compatible: + const: io-nvmem + + reg: + maxItems: 1 + +unevaluatedProperties: false + +examples: + - | + nvmem@10000 { + compatible = "io-nvmem"; + reg = <0x10000000 0x10000>; + };