[PATCH 1/3] doc: bindings: Add bindings documentation for mtd nvmem

Alban albeu at free.fr
Fri Mar 3 05:12:37 PST 2017


On Fri, 3 Mar 2017 13:37:44 +0100
Boris Brezillon <boris.brezillon at free-electrons.com> wrote:

> On Fri, 3 Mar 2017 13:17:05 +0100
> Alban <albeu at free.fr> wrote:
> 
> > On Thu, 2 Mar 2017 21:22:20 +0100
> > Boris Brezillon <boris.brezillon at free-electrons.com> wrote:
> >   
> > > On Thu,  2 Mar 2017 20:50:21 +0100
> > > Alban <albeu at free.fr> wrote:
> > >     
> > > > Add the binding to expose MTD partitions as nvmem providers.      
> > > 
> > > Looks good. Maybe you should take the case you describe in your
> > > cover-letter into account and add an extra layer: add an nvmem sub-node
> > > containing the nvmem cells, so that you can expose nvmem cells directly
> > > under master MTD devices (and not only partitions).     
> > 
> > I think that would be the better solution. This can be done
> > independently, once we agree on a binding we just have to fix
> > of_nvmem_cell_get(). My suggestion would be to have the new binding
> > looking like this:
> > 
> > nvmem-device at 10 {
> > 	...
> > 	nvmem-provider;
> > 	nvmem-cells {
> > 		compatible = "nvmem-cells";
> > 		#address-cells = <1>;
> > 		#size-cells = <1>;
> > 
> > 		nvmem-cell at 100 {
> > 			label = "mac-address";
> > 			reg = <0x100 0x200>;
> > 		}
> > 
> > 		...
> > 	}
> > }
> > 
> > I would also suggest making the "nvmem-provider" property mandatory
> > to indicate that the device provides this capability. Up to now all
> > nvmem providers only support this API but I think there might be more
> > multi function devices in the future.  
> 
> If you enforce the name of the child node (here nvmem-cells), you don't
> need this extra nvmem-provider property. Am I missing something?

That property would define the capability to be used as nvmem-provider,
furthermore it would cover the case where no cell is defined. Also in
the case of MTD devices it would avoid an ambiguity when there is no
'partitions' sub node, as then the nvmem-cells node could be interpreted
as a partition following the old binding.

From what I understand most of such "implicit" binding have sooner or
later proved to be too limited, or worth, clashing with another one.
They then had to be deprecated and replaced by explicit ones. The MTD
partitions binding is a good example of such evolution.

Alban
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 819 bytes
Desc: OpenPGP digital signature
URL: <http://lists.infradead.org/pipermail/linux-mtd/attachments/20170303/e9331b02/attachment.sig>


More information about the linux-mtd mailing list