Re: [PATCH v3 1/3] nvmem: Update the OF binding to use a subnode for the cells list

From: Alban
Date: Wed Apr 18 2018 - 07:41:55 EST


On Tue, 17 Apr 2018 18:00:40 +0200
Alban <albeu@xxxxxxx> wrote:

> On Tue, 17 Apr 2018 16:44:01 +0100
> Srinivas Kandagatla <srinivas.kandagatla@xxxxxxxxxx> wrote:
>
> > Thanks for explaining,
> >
> > On 17/04/18 15:54, Alban wrote:
> > > This will not only allow reading the calibration data from nvmem, but
> > > will also create a partition on the MTD device, which is not acceptable.
> > > With my proposed binding this would become:
> > >
> > > flash@0 {
> > > #address-cells = <1>;
> > > #size-cells = <1>;
> > > compatible = "s25sl064a";
> > > reg = <0>;
> > >
> > > nvmem-cells {
> > > compatible = "nvmem-cells";
> > > #address-cells = <1>;
> > > #address-cells = <1>;
> > >
> > > calibration: calib@404 {
> > > reg = <0x404 0x10>;
> > > };
> > > };
> >
> > Why can't we make nvmem-cells node a nvmem provider in this case?
> > Which should work!
>
> TBH I just copied what have been done to fix the same problem with the
> MTD partitions. But yes we could also just extend the current binding
> to require a compatible string on each nvmem-cell, which would not
> require any code change to support.

However this scheme will not work if the device node binding already
have subnodes with addresses. The addressing, as specified by
#address-cells and #size-cells, might be incompatible or might overlap.
Using the nvmem-cells subnode solve this problem.

Alban

Attachment: pgprksnMaZdfF.pgp
Description: OpenPGP digital signature